1import{u as P,j as t,B as H,bC as Ce,F as h,aT as Oe,aa as De,z as Se,cm as ye,r as a,aR as de,k as f,S as _,cn as Fe,a_ as ce,co as Me}from"./elements-5kxJS_4j.js";import{M as Re}from"./ModernPortalPage-ZOfMD2FX.js";import{B as Ae}from"./BoardListDetailOutlet-BLfTYBPG.js";import{u as We}from"./useSavedGridPageSize-iR3hnzqU.js";import{B as z,a as Pe}from"./BoardTabPills-k6mLXMRn.js";import{M as Te}from"./MobileCardButton-D6bsn729.js";import{u as Ee,a as Be,g as qe}from"./useMobileRedesignActive-7HkeUmjL.js";import{M as $e}from"./MobilePillTabs-CEvHclwf.js";import{M as Le}from"./MobileSearchSortList-SnRnltaF.js";import{M as Ue}from"./MobileTable-C7aibx3F.js";import{G as _e}from"./GridSettings-BQybxGtG.js";import{r as ze,u as Ge,R as He}from"./useRequestHistoryTelemetry-BplUFfRL.js";import{u as Ke}from"./useAttachmentViewer-BQoPBwhJ.js";import{u as Ve,c as Xe,e as Qe}from"./board-requests-01BmDrLN.js";import{x as Ye,G as Je,j as Ze,A as et,am as tt}from"./index-CtCeyryw.js";import{u as rt,a as st,W as at,m as me}from"./WorkOrderDecisionModal-BKRkejas.js";import{a as ot}from"./portal-requests-pSSQdVkY.js";import"./NoteContent-BKv-Srb-.js";import{S as nt}from"./SendMessageModal-r-MvvBTt.js";import{u as it}from"./useBoardFrustrationEnabled-D-vRo-Pq.js";import{B as G}from"./BoardStatusIndicator-DIMjCsE9.js";import{c as lt}from"./clickableCardProps-H_WzBPvj.js";import{g as dt}from"./boardDetailItemIds-CezeTAyo.js";import{A as ct}from"./authorization-DRCBMAi9.js";import"./useAuthorization-XS6cSJ0I.js";import"./FilterableGridFilters-BSwkYGCZ.js";import"./useIsMobile-DE0QDUth.js";import"./useMobileRedesignBoardPages-BgUjR8UU.js";import"./useRedesign-xeayEwR4.js";import"./subDays-BmZFCyDz.js";import"./addMonths-BU5XNL5s.js";import"./startOfDay-AazlW55I.js";import"./addDays-Le9Cqm9z.js";import"./subMonths-BEZpMnR7.js";import"./grids-DGmfp9GI.js";import"./boardDecisionActions-BmpNgjt4.js";import"./useMutation-jkV-6MpM.js";import"./index-BSR_b3JY.js";import"./MessageForm-CoPnETZi.js";import"./index.esm-GMeyTKQp.js";import"./useMessageComposer-BQ7Z4YY2.js";import"./board-portal-requests-Dhj4UIYh.js";const ue=({workOrder:r,onDecision:i,onSendMessage:m})=>{const{t:n}=P();return t.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[r.isDecision&&t.jsxs(t.Fragment,{children:[t.jsx(z,{action:"approve","data-qa":`work-orders-row-approve-${r.actionItemId}`,onClick:o=>{o.stopPropagation(),i(r,!0)},children:n("board.workOrders.actions.approve")}),t.jsx(z,{action:"decline","data-qa":`work-orders-row-decline-${r.actionItemId}`,onClick:o=>{o.stopPropagation(),i(r,!1)},children:n("board.workOrders.actions.decline")})]}),t.jsx(z,{action:"message","aria-label":n("board.workOrders.actions.sendMessage"),"data-qa":`work-orders-row-send-message-${r.actionItemId}`,onClick:o=>{o.stopPropagation(),m(r)},children:n("board.workOrders.actions.message")})]})},mt=({workOrder:r,onDecision:i,onSendMessage:m})=>{const{t:n}=P();return t.jsx(Ce,{text:t.jsxs(t.Fragment,{children:[t.jsx(h,{icon:ye}),t.jsx("span",{className:"sr-only",children:n("board.workOrders.columns.action")})]}),variant:"passiveOutline",size:"xs",expand:"left",items:[...r.isDecision?[t.jsxs("button",{"data-qa":`work-orders-row-approve-${r.actionItemId}`,className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),i(r,!0)},children:[t.jsx(h,{className:"text-success",icon:Oe}),t.jsx("span",{children:n("board.workOrders.actions.approve")})]},"approve-button"),t.jsxs("button",{"data-qa":`work-orders-row-decline-${r.actionItemId}`,className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),i(r,!1)},children:[t.jsx(h,{className:"text-error",icon:De}),t.jsx("span",{children:n("board.workOrders.actions.decline")})]},"decline-button")]:[],t.jsxs("button",{"data-qa":`work-orders-row-send-message-${r.actionItemId}`,className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),m(r)},children:[t.jsx(h,{className:"text-base-icon",icon:Se}),t.jsx("span",{children:n("board.workOrders.actions.sendMessage")})]},"send-message-button")],"data-qa":`work-orders-row-actions-menu-${r.actionItemId}`})},ut=({workOrder:r,showActions:i,onView:m,onDecision:n,onSendMessage:o})=>{const{t:w}=P();return t.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[t.jsx(H,{variant:"passiveOutline",size:"xs","data-qa":`work-orders-row-view-${r.actionItemId}`,onClick:j=>{j.stopPropagation(),m(r)},children:w("board.workOrders.view")}),i&&t.jsx(mt,{workOrder:r,onDecision:n,onSendMessage:o})]})},W=["myItems","open","closed"],K=[0,1,2],xe="scope",y="board-work-orders-grid",pt=["stepDescription","providerName","itemDetails","followUpDate","hasAttachments"];function xt(r){const i=r.value?f(new Date(r.value),{format:"numeric"}):"";return t.jsx("span",{"data-qa-value":i,children:i})}const pe=r=>{const i=W.indexOf(r.get(xe));return i>=0?K[i]:null},ft=()=>{const{t:r}
1=P(),{showAttachments:i}=Ke(),m=Ye(),n=Je(),o=(n==null?void 0:n.id)??0,{isMobile:w,isMobileRedesignActive:j}=Ee(),T=Ve(),C=T&&!w,[O,fe]=a.useState("all"),F=a.useMemo(()=>ze(O).submittedAfter,[O]),l=a.useRef(null),[D,he]=a.useState(null),E=a.useRef(null),V=a.useRef(""),X=Ze(e=>e.gridsColumnState),k=a.useMemo(()=>X[y],[X]),Q=We(y),{data:I,isLoading:be}=rt(o),[Y,J]=et(),[d,B]=a.useState(()=>pe(Y));a.useEffect(()=>{B(pe(Y))},[o]),a.useEffect(()=>{I&&d===null&&B(I.defaultToMyItems?0:1)},[I,d]);const{data:q,isLoading:$}=st({associationId:o,mode:d??0,showAll:!0},!C),c=(q==null?void 0:q.member)??[],{onDataSettled:Z,onFilterChanged:ee}=Ge({page:"work-orders",persona:"board",getDimensions:()=>({range:O,associationId:o,pageSize:10})});a.useEffect(()=>{ee()},[O,ee]);const ge=a.useMemo(()=>Xe(()=>({category:"workOrders",associationId:o,mode:d??0,submittedAfter:F}),me,({resultCount:e})=>Z({resultCount:e})),[o,d,F,Z]),te=d!==null?K.indexOf(d):-1,re=a.useCallback(e=>{var s;E.current=((s=l.current)==null?void 0:s.getColumnState())??null,B(K[e]),J(g=>{const x=new URLSearchParams(g);return x.set(xe,W[e]),x},{replace:!0})},[J]),{mutate:se}=ot(),p=a.useCallback(e=>{const s=dt(l.current,c,({actionItemId:x})=>x);e.statusIndicator===4&&e.actionItemId>0&&se({actionItemId:e.actionItemId,actionItemNoteId:null});const g=new URLSearchParams({associationId:o.toString()});m(`/board/work-orders/${e.actionItemId}?${g.toString()}`,{state:{itemIds:s}})},[se,m,o,c]),S=a.useCallback(e=>{i({actionItemId:e.actionItemId,title:r("board.workOrders.workOrder")})},[i,r]),b=((I==null?void 0:I.canEdit)??!1)&&d===0,u=it(),M=a.useCallback(e=>[e.actionItemId.toString(),e.stepDescription,e.providerName,e.itemDetails,e.typeDescription,e.ownerName,e.propertyAddress],[]),we=a.useCallback(e=>{V.current=e},[]),je=a.useCallback(()=>{if(l.current)if(w){const e=V.current.trim().toLowerCase(),s=e?c.filter(g=>M(g).some(x=>x==null?void 0:x.toLowerCase().includes(e))):c;l.current.setRowData(s),l.current.exportExcel({fileName:r("board.workOrders.exportFileName"),exportedRows:"all",exportAsExcelTable:!0,columnKeys:pt}),l.current.setRowData(c)}else if(C){if(!(D!=null&&D.api))return;Qe({api:D.api,baseParams:{category:"workOrders",associationId:o,mode:d??0,submittedAfter:F},mapRow:me,fileName:r("board.workOrders.exportFileName")})}else{const e=l.current.getColumnState().filter(s=>!s.hide&&s.colId!=="actions").map(s=>s.colId);l.current.exportExcel({fileName:r("board.workOrders.exportFileName"),exportedRows:"filteredAndSorted",exportAsExcelTable:!0,columnKeys:e})}},[r,w,c,M,C,D,o,d,F]);a.useEffect(()=>{var s;if(d===null)return;const e=E.current??k;E.current=null,e&&((s=l.current)==null||s.applyColumnState({state:e,applyOrder:!0}))},[d,k]);const[L,ae]=a.useState({open:!1,workOrder:null,isApproval:!0}),v=a.useCallback((e,s)=>{ae({open:!0,workOrder:e,isApproval:s})},[]),ke=a.useCallback(()=>{ae({open:!1,workOrder:null,isApproval:!0})},[]),[oe,ne]=a.useState({open:!1,actionItemId:0}),N=a.useCallback(e=>{ne({open:!0,actionItemId:e.actionItemId})},[]),Ie=a.useCallback(()=>{ne({open:!1,actionItemId:0})},[]),ve=a.useCallback(e=>t.jsxs("div",{className:`p-3 w-full rounded-md border border-base-border flex flex-col gap-2 text-sm ${u?"cursor-pointer":""}`,...u?lt(()=>p(e)):{},children:[t.jsxs("div",{className:"flex items-center justify-between",children:[t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(G,{value:e.statusIndicator}),t.jsx("span",{className:"font-medium text-base-header",children:e.stepDescription})]}),e.hasAttachments&&t.jsx("button",{type:"button","data-qa":"work-orders-mobile-view-attachment","aria-label":r("board.workOrders.viewAttachment"),className:"text-base-link hover:underline text-sm font-medium flex items-center gap-1",onClick:s=>{s.stopPropagation(),S(e)},children:t.jsx(h,{icon:de,className:"w-3 h-3"})})]}),e.providerName&&t.jsx("div",{className:"flex items-center justify-between",children:t.jsx("span",{className:"font-semibold text-base-header text-sm",children:e.providerName})}),t.jsx("div",{className:"text-base-fg text-xs whitespace-pre-line",children:e.itemDetails}),t.jsxs("div",{className:"flex items-center justify-between",children:[t.jsx("div",{className:"flex items-center gap-3 text-xs text-input-fg",children:e.followUpDate&&t.jsx("span",{children:f(new Date(e.followUpDate),{format:"numeric",naive:!0})})}),t.jsxs("div",{className:"flex items-center gap-2",children:[!u&&t.jsx(H,{variant:"passiveOutline",size:"xs","data-qa":"work-orders-mobile-view",onClick:s=>{s.stopPropagation(),p(e)},children:r("board.workOrders.view")}),b&&t.jsx(ue,{workOrder:e,onDecision:v,onSendMessage:N})]})]})]}),[p,S,b,v,N,u,r]),Ne=a.useCallback(e=>t.jsxs("div",{className:`p-3 w-full flex flex-col gap-2 text-sm ${Be}`,children:[t.jsx("div",{className:"flex items-center justify-between",children:t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(G,{value:e.statusIndicator}),t.jsx("span",{className:"font-medium text-base-header",children:e.stepDescription})]})}),t.jsx(Te,{onClick:()=>p(e),"aria-label":`${r("board.workOrders.view")} XN ${e.actionItemId}`,children:t.jsxs("div",{className:"flex-1 flex flex-col gap-2 min-w-0",children:[e.providerName&&t.jsx("div",{className:"flex items-center justify-between",children:t.jsx("span",{className:"font-semibold text-base-header text-sm",children:e.providerName})}),t.jsx("div",{className:"text-base-fg text-xs whitespace-pre-line",children:e.itemDetails})]})}),t.jsx("div",{className:"flex items-center justify-between",children:t.jsx("div",{className:"flex items-center gap-3 text-xs text-input-fg",children:e.followUpDate&&t.jsx("span",{children:f(new Date(e.followUpDate),{format:"numeric",naive:!0})})})})]}),[p,S,b,v,N,r]),ie=a.useMemo(()=>[...T?[{colId:"dateSubmitted",field:"createdUtc",headerName:r("board.workOrders.columns.dateSubmitted"),minWidth:150,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>
1e?f(new Date(e),{format:"numeric"}):"",cellRenderer:xt}]:[],{field:"actionItemId",headerName:r("board.workOrders.columns.xn"),hide:!0,minWidth:100,filter:"agTextColumnFilter",floatingFilter:!0},{field:"stepDescription",headerName:r("board.workOrders.columns.step"),minWidth:140,filter:"agTextColumnFilter",floatingFilter:!0,cellRenderer:e=>{const s=e.data;return s?t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(G,{value:s.statusIndicator}),t.jsx("span",{children:s.stepDescription})]}):null}},{field:"providerName",headerName:r("board.workOrders.columns.providerName"),minWidth:160,filter:"agTextColumnFilter",floatingFilter:!0},{field:"itemDetails",headerName:r("board.workOrders.columns.itemDetails"),minWidth:250,filter:"agTextColumnFilter",floatingFilter:!0,wrapText:!0,autoHeight:!0,cellRenderer:e=>{const s=e.data;return s?t.jsx("div",{className:"flex flex-col py-2",children:t.jsx("span",{className:"text-base-fg text-sm whitespace-pre-line",children:s.itemDetails})}):null}},{field:"description",headerName:r("board.workOrders.columns.description"),minWidth:220,filter:"agTextColumnFilter",floatingFilter:!0,wrapText:!0,autoHeight:!0,cellClass:"!leading-snug py-2 text-sm"},{field:"ownerName",headerName:r("board.workOrders.columns.homeowner"),hide:!0,minWidth:180,filter:"agTextColumnFilter",floatingFilter:!0},{field:"propertyAddress",headerName:r("board.workOrders.columns.propertyAddress"),hide:!0,minWidth:220,filter:"agTextColumnFilter",floatingFilter:!0},{field:"typeDescription",headerName:r("board.workOrders.columns.type"),hide:!0,minWidth:160,filter:"agTextColumnFilter",floatingFilter:!0},{field:"subject",headerName:r("board.workOrders.columns.subject"),hide:!0,minWidth:220,filter:"agTextColumnFilter",floatingFilter:!0},{field:"followUpDate",headerName:r("board.workOrders.columns.followUpDate"),hide:!0,minWidth:140,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?f(new Date(e),{format:"numeric",naive:!0}):""},{field:"dueDate",headerName:r("board.workOrders.columns.dueDate"),hide:!0,minWidth:160,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?f(new Date(e),{format:"numeric",naive:!0}):""},{field:"createdUtc",headerName:r("board.workOrders.columns.createdDate"),hide:!0,minWidth:170,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?f(new Date(e),{format:"numeric"}):""},{field:"lastNoteDateUtc",headerName:r("board.workOrders.columns.lastNoteDate"),hide:!0,minWidth:180,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?f(new Date(e),{format:"numeric"}):""},{field:"hasAttachments",headerName:r("board.workOrders.columns.attachment"),sortable:!1,minWidth:120,filter:!1,cellRenderer:e=>{const s=e.data;return s!=null&&s.hasAttachments?t.jsxs("button",{type:"button","data-qa":"work-orders-row-view-attachment",className:"text-base-link hover:underline text-sm font-medium flex items-center gap-1",onClick:g=>{g.stopPropagation(),S(s)},children:[r("board.workOrders.viewAttachment"),t.jsx(h,{icon:de,className:"w-3 h-3"})]}):null}},{colId:"actions",headerName:r("board.workOrders.columns.action"),sortable:!1,resizable:!1,...(()=>{const e=u?350:b?200:140;return{width:e,minWidth:e,maxWidth:e}})(),filter:!1,suppressMenu:!0,cellRenderer:e=>e.data?u?t.jsx(ue,{workOrder:e.data,onDecision:v,onSendMessage:N}):t.jsx(ut,{workOrder:e.data,showActions:b,onView:p,onDecision:v,onSendMessage:N}):null}].filter(e=>e.colId!=="actions"||b||!u),[r,T,b,u,p,S,v,N]);if(be||d===null)return t.jsx("div",{className:"w-full bg-base-fill rounded-xl px-6 py-12 flex items-center justify-center",children:t.jsx(_,{})});const R=w?"mobile":"desktop",le=t.jsxs("div",{className:"flex items-center gap-4",children:[C&&t.jsx(He,{value:O,onChange:fe,className:"w-[200px]"}),!j&&t.jsxs(t.Fragment,{children:[t.jsx(H,{size:"sm",variant:"passive","data-qa":"work-orders-export",onClick:je,endIcon:t.jsx(h,{icon:Fe}),children:r("main.common.export")}),t.jsx(_e,{gridId:y,gridRef:l})]})]});let U;j?U=t.jsxs("div",{className:"flex justify-between items-center gap-4 flex-wrap",children:[t.jsx($e,{options:W,selectedIndex:te,onChange:re,getLabel:e=>r(`board.workOrders.tabs.${e}`),"data-qa":"board-work-orders-mobile-tabs"}),le]}):U=t.jsxs("div",{className:"flex justify-between items-center gap-4 flex-wrap",children:[t.jsx(Pe,{options:W,selectedIndex:te,onChange:re,getLabel:e=>r(`board.workOrders.tabs.${e}`),"data-qa":"board-work-orders-tabs"}),le]});let A;return $&&c.length===0?A=t.jsx("div",{className:"flex justify-center py-12",children:t.jsx(_,{})}):j?A=t.jsx(ht,{workOrders:c,getSearchableFields:M,renderCard:Ne},`wo-mobile-list-${R}`):A=t.jsx(Ue,{items:c,renderItem:ve,getSearchableFields:M,sortFn:(e,s)=>e.actionItemId-s.actionItemId,onFilterChange:we},`wo-mobile-list-${R}`),t.jsxs("div",{...qe(j,"w-full bg-base-fill rounded-xl px-9 py-6 max-mobile:px-4 space-y-4 relative"),children:[U,t.jsx("div",{className:"max-mobile:hidden",children:t.jsx(a.Suspense,{fallback:t.jsx("div",{className:"flex items-center justify-center py-12",children:t.jsx(h,{icon:Me,className:"w-8 h-8 text-primary animate-spin"})}),children:C?t.jsx(ce,{"data-qa":"work-orders-table",ref:l,gridId:y,serverSideDatasource:ge,columnDefs:ie,enableClipboard:!0,columnMenu:"new",pageSizeFromParent:Q,loadingRowHeight:84,getGridRef:he,getRowId:({data:e})=>e.actionItemId.toString(),overlayNoRowsTemplate:`<span class="text-base-fg">${r("board.workOrders.noWorkOrders")}</span>`,onRowClicked:u?({data:e})=>{e&&p(e)}:void 0,onFirstDataRendered:()=>{l.current&&k&&l.current.applyColumnState({state:k,applyOrder:!0})}},`wo-grid-${R}`):t.jsx(ce,{"data-qa":"work-orders-table",ref:l,gridId:y,rowData:c,columnDefs:ie,enableClipboard:!0,columnMenu:"new",pageSizeFromParent:Q,resetPaginationOnDataChange:!0,getRowId:({data:e})=>e.actionItemId.toString(),suppressLoadingOverlay:!$,overlayNoRowsTemplate:`<span class="text-base-fg">${r("board.workOrders.noWorkOrders")}</span>`,onRowClicked:u?({data:e})=>{e&&p(e)}:void 0,onFirstDataRendered:()=>{l.current&&k&&l.current.applyColumnState({state:k,applyOrder:!0})}},`wo-grid-${R}`)}
1)}),t.jsx("div",{className:"mobile:hidden",children:A}),$&&c.length>0&&t.jsx("div",{className:"absolute inset-0 bg-base-fill/50 flex items-center justify-center rounded-xl",children:t.jsx(_,{})}),t.jsx(at,{open:L.open,onClose:ke,workOrder:L.workOrder,associationId:o,isApproval:L.isApproval}),t.jsx(nt,{open:oe.open,onClose:Ie,actionItemId:oe.actionItemId})]})},ht=({workOrders:r,getSearchableFields:i,renderCard:m})=>t.jsx(Le,{items:r,getSearchableFields:i,sortFn:(n,o)=>n.actionItemId-o.actionItemId,getItemKey:n=>n.actionItemId,renderItem:m}),nr={title:"Work Orders",showPropertySelector:!0,showAi:!0};function ir(){const r=tt("workOrdersPage");return t.jsx(ct,{controller:"Board_v2",action:"ActionItems_WorkOrders",children:r?t.jsx(Ae,{children:t.jsx(ft,{})}):t.jsx(Re,{action:"ActionItems_WorkOrders",controller:"Board_v2"})})}export{ir as Component,nr as handle};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.