PageSourceSearch

https://portal.commoninterest.com/assets/collections-DzVXcYEU.js

js commoninterest.com collected 2026-09-24 13:27:39 UTC 14,605 bytes, 1 lines download raw bytes

1import{u as y,j as t,B as E,bC as oe,F as p,aT as ne,aa as ie,z as le,bJ as re,r as n,aR as V,bf as M,k as b,S as k,bK as ce,a_ as de,bL as me}from"./elements-DVh2jUIM.js";import{M as ue}from"./ModernPortalPage-C8UaH3aE.js";import{B as pe}from"./BoardListDetailOutlet-Bl3ZVN15.js";import{M as xe}from"./MobileCardButton-CebfhP3v.js";import{u as fe,a as he,g as be}from"./useMobileRedesignActive-BZoYJS32.js";import{M as ge}from"./MobilePillTabs-g5wAZjb0.js";import{M as je}from"./MobileSearchSortList-DhhkO3rr.js";import{M as Ce}from"./MobileTable-3_DrS7X0.js";import{G as we}from"./GridSettings-CRFyN887.js";import{u as Ne}from"./useAttachmentViewer-CxkfXrEj.js";import{x as Ie,G as ve,j as De,am as Fe}from"./index-DeQvL4I7.js";import{u as Me,a as ye,C as Ae}from"./CollectionDecisionModal-BjmBmGZR.js";import"./NoteContent-T4pgf4E0.js";import{S as Se}from"./SendMessageModal-CN5Qqgxv.js";import{B as L,a as Pe}from"./BoardTabPills-BNINpPaI.js";import{u as Be}from"./useBoardFrustrationEnabled-DO3xOrwY.js";import{B as R}from"./BoardStatusIndicator-K082lhyB.js";import{c as ke}from"./clickableCardProps-D_7666nR.js";import{g as Le}from"./boardDetailItemIds-CezeTAyo.js";import{A as Re}from"./authorization-CE7gncHO.js";import"./useAuthorization-D7B2eQha.js";import"./useIsMobile-Davbtvz5.js";import"./useMobileRedesignBoardPages-CLS9im5M.js";import"./useRedesign-DVyq07A4.js";import"./grids-DXrfAsUA.js";import"./startOfDay-AazlW55I.js";import"./useMutation-CfDMVIpo.js";import"./index-DWdRGcKw.js";import"./MessageForm-BADqpkoZ.js";import"./index.esm-BsOhZrKM.js";import"./useMessageComposer-DeQiPBu-.js";import"./board-portal-requests-BfgGLja0.js";import"./FilterableGridFilters-FmWNR7j1.js";const H=({collection:s,onDecision:l,onSendMessage:d})=>{const{t:i}=y();return t.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[s.isDecision&&s.decision===1&&t.jsxs(t.Fragment,{children:[t.jsx(L,{action:"approve",onClick:o=>{o.stopPropagation(),l(s,!0)},children:i("board.collections.actions.approve")}),t.jsx(L,{action:"decline",onClick:o=>{o.stopPropagation(),l(s,!1)},children:i("board.collections.actions.decline")})]}),t.jsx(L,{action:"message","aria-label":i("board.collections.actions.sendMessage"),onClick:o=>{o.stopPropagation(),d(s)},children:i("board.collections.actions.message")})]})},Te=({collection:s,onDecision:l,onSendMessage:d})=>{const{t:i}=y();return t.jsx(oe,{text:t.jsxs(t.Fragment,{children:[t.jsx(p,{icon:re}),t.jsx("span",{className:"sr-only",children:i("board.collections.columns.action")})]}),variant:"passiveOutline",size:"xs",expand:"left",items:[...s.isDecision&&s.decision===1?[t.jsxs("button",{className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),l(s,!0)},children:[t.jsx(p,{className:"text-success",icon:ne}),t.jsx("span",{children:i("board.collections.actions.approve")})]},"approve-button"),t.jsxs("button",{className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),l(s,!1)},children:[t.jsx(p,{className:"text-error",icon:ie}),t.jsx("span",{children:i("board.collections.actions.decline")})]},"decline-button")]:[],t.jsxs("button",{className:"px-3 py-2 text-sm flex flex-row items-center gap-2 w-full",onClick:o=>{o.stopPropagation(),d(s)},children:[t.jsx(p,{className:"text-base-icon",icon:le}),t.jsx("span",{children:i("board.collections.actions.sendMessage")})]},"send-message-button")]})},Ee=({collection:s,isAdmin:l,onView:d,onDecision:i,onSendMessage:o})=>{const{t:v}=y();return t.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[t.jsx(E,{variant:"passiveOutline",size:"xs",onClick:x=>{x.stopPropagation(),d(s)},children:v("board.collections.view")}),l&&t.jsx(Te,{collection:s,onDecision:i,onSendMessage:o})]})},X=["myItems","open","closed"],q=[0,1,2],T="board-collections-grid",Oe=["actionItemId","stepDescription","ownerBalance","itemDetails","followUpDate","hasAttachments"],We=()=>{const{t:s}=y(),{showAttachments:l}=Ne(),d=Ie(),i=ve(),o=(i==null?void 0:i.id)??0,{isMobile:v,isMobileRedesignActive:x}=fe(),r=n.useRef(null),O=n.useRef(""),W=De(e=>e.gridsColumnState),_=n.useMemo(()=>W[T],[W]),{data:g,isLoading:J}=Me(o),[f,A]=n.useState(null);n.useEffect(()=>{A(null)},[o]),n.useEffect(()=>{g&&f===null&&A(g.defaultToMyItems?0:1)},[g,f]);const{data:S,isLoading:P}=ye({associationId:o,mode:f??0,showAll:!0}),c=(S==null?void 0:S.member)??[],U=f!==null?q.indexOf(f):-1,$=n.useCallback(e=>{A(q[e])},[]),u=n.useCallback(e=>{const a=Le(r.current,c,({actionItemId:I})=>I),N=new URLSearchParams({associationId:o.toString()});d(`/board/collections/${e.actionItemId}?${N.toString()}`,{state:{itemIds:a}})},[d,o,c]),w=n.useCallback(e=>{l({actionItemId:e.actionItemId,title:s("board.collections.collection")})},[l,s]),h=((g==null?void 0:g.canEdit)??!1)&&f===0,m=Be(),[B,z]=n.useState({open:!1,collection:null,isApproval:!0}),j=n.useCallback((e,a)=>{z({open:!0,collection:e,isApproval:a})},[]),Y=n.useCallback(()=>{z({open:!1,collection:null,isApproval:!0})},[]),[K,G]=n.useState({open:!1,actionItemId:0}),C=n.useCallback(e=>{G({open:!0,actionItemId:e.actionItemId})},[]),Q=n.useCallback(()=>{G({open:!1,actionItemId:0})},[]),Z=n.useCallback(e=>t.jsxs("div",{className:`flex flex-col gap-2 py-3 w-full border-b border-base-border ${m?"curs
1or-pointer":""}`,...m?ke(()=>u(e)):{},children:[t.jsxs("div",{className:"flex items-center justify-between",children:[t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(R,{value:e.statusIndicator}),t.jsx("span",{className:"font-medium text-base-header",children:e.stepDescription})]}),e.hasAttachments&&t.jsx("button",{type:"button","aria-label":s("board.collections.viewAttachment"),className:"text-base-link hover:underline text-sm font-medium flex items-center gap-1",onClick:a=>{a.stopPropagation(),w(e)},children:t.jsx(p,{icon:V,className:"w-3 h-3"})})]}),t.jsx("div",{className:"flex items-center justify-between",children:t.jsx("span",{className:"font-semibold text-base-header text-sm",children:e.ownerBalance!=null?M(e.ownerBalance):""})}),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:b(new Date(e.followUpDate),{format:"numeric"})})}),t.jsxs("div",{className:"flex items-center gap-2",children:[!m&&t.jsx(E,{variant:"passiveOutline",size:"xs",onClick:a=>{a.stopPropagation(),u(e)},children:s("board.collections.view")}),h&&t.jsx(H,{collection:e,onDecision:j,onSendMessage:C})]})]})]}),[u,w,h,j,C,m,s]),ee=n.useCallback(e=>t.jsx("div",{className:`p-3 w-full flex flex-col gap-2 text-sm ${he}`,children:t.jsx(xe,{onClick:()=>u(e),"aria-label":`${s("board.collections.view")} XN ${e.actionItemId}`,children:t.jsxs("div",{className:"flex-1 flex flex-col gap-2 min-w-0",children:[t.jsx("div",{className:"flex items-center justify-between",children:t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(R,{value:e.statusIndicator}),t.jsx("span",{className:"font-medium text-base-header",children:e.stepDescription})]})}),t.jsx("div",{className:"flex items-center justify-between",children:t.jsx("span",{className:"font-semibold text-base-header text-sm",children:e.ownerBalance!=null?M(e.ownerBalance):""})}),t.jsx("div",{className:"text-base-fg text-xs whitespace-pre-line",children:e.itemDetails}),e.followUpDate&&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:t.jsx("span",{children:b(new Date(e.followUpDate),{format:"numeric"})})})})]})})}),[u,w,h,j,C,s]),D=n.useCallback(e=>[e.actionItemId.toString(),e.stepDescription,e.ownerName,e.itemDetails,e.typeDescription,e.subject],[]),te=n.useCallback(e=>{O.current=e},[]),se=n.useCallback(()=>{if(r.current)if(v){const e=O.current.trim().toLowerCase(),a=e?c.filter(N=>D(N).some(I=>I==null?void 0:I.toLowerCase().includes(e))):c;r.current.setRowData(a),r.current.exportExcel({fileName:s("board.collections.exportFileName"),exportedRows:"all",exportAsExcelTable:!0,columnKeys:Oe}),r.current.setRowData(c)}else{const e=r.current.getColumnState().map(a=>a.colId).filter(a=>a!=="actions");r.current.exportExcel({fileName:s("board.collections.exportFileName"),exportedRows:"filteredAndSorted",exportAsExcelTable:!0,columnKeys:e})}},[v,c,D,s]),ae=n.useMemo(()=>[{field:"actionItemId",headerName:s("board.collections.columns.xn"),hide:!0,minWidth:100,filter:"agTextColumnFilter",floatingFilter:!0},{field:"stepDescription",headerName:s("board.collections.columns.step"),minWidth:140,filter:"agTextColumnFilter",floatingFilter:!0,cellRenderer:e=>{const a=e.data;return a?t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(R,{value:a.statusIndicator}),t.jsx("span",{children:a.stepDescription})]}):null}},{field:"ownerBalance",headerName:s("board.collections.columns.balance"),minWidth:120,filter:"agNumberColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e!=null?M(e):""},{field:"itemDetails",headerName:s("board.collections.columns.itemDetails"),minWidth:250,filter:"agTextColumnFilter",floatingFilter:!0,wrapText:!0,autoHeight:!0,cellRenderer:e=>{const a=e.data;return a?t.jsx("div",{className:"flex flex-col py-2",children:t.jsx("span",{className:"text-base-fg text-sm whitespace-pre-line",children:a.itemDetails})}):null}},{field:"ownerName",headerName:"Homeowner",hide:!0,minWidth:180,filter:"agTextColumnFilter",floatingFilter:!0},{field:"propertyAddress",headerName:"Property Address",hide:!0,minWidth:220,filter:"agTextColumnFilter",floatingFilter:!0},{field:"typeDescription",headerName:"Type",hide:!0,minWidth:160,filter:"agTextColumnFilter",floatingFilter:!0},{field:"subject",headerName:"Subject",hide:!0,minWidth:220,filter:"agTextColumnFilter",floatingFilter:!0},{field:"followUpDate",headerName:s("board.collections.columns.followUpDate"),hide:!0,minWidth:140,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>
1e?b(new Date(e),{format:"numeric"}):""},{field:"dueDate",headerName:"Due Date",hide:!0,minWidth:160,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?b(new Date(e),{format:"numeric"}):""},{field:"createdUtc",headerName:"Created Date",hide:!0,minWidth:170,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?b(new Date(e),{format:"numeric"}):""},{field:"lastNoteDateUtc",headerName:"Last Note Date",hide:!0,minWidth:180,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?b(new Date(e),{format:"numeric"}):""},{field:"ownerLastPayDate",headerName:"Last Payment",hide:!0,minWidth:140,filter:"agDateColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e?b(new Date(e),{format:"numeric"}):""},{field:"ownerLastPayAmount",headerName:"Last Pay Amount",hide:!0,minWidth:140,filter:"agNumberColumnFilter",floatingFilter:!0,valueFormatter:({value:e})=>e!=null?M(e):""},{field:"hasAttachments",headerName:s("board.collections.columns.attachment"),sortable:!1,minWidth:120,filter:!1,cellRenderer:e=>{const a=e.data;return a!=null&&a.hasAttachments?t.jsxs("button",{type:"button",className:"text-base-link hover:underline text-sm font-medium flex items-center gap-1",onClick:N=>{N.stopPropagation(),w(a)},children:[s("board.collections.viewAttachment"),t.jsx(p,{icon:V,className:"w-3 h-3"})]}):null}},{colId:"actions",headerName:s("board.collections.columns.action"),sortable:!1,resizable:!1,...(()=>{const e=m?350:h?200:140;return{width:e,minWidth:e,maxWidth:e}})(),filter:!1,suppressMenu:!0,cellRenderer:e=>e.data?m?t.jsx(H,{collection:e.data,onDecision:j,onSendMessage:C}):t.jsx(Ee,{collection:e.data,isAdmin:h,onView:u,onDecision:j,onSendMessage:C}):null}].filter(e=>e.colId!=="actions"||h||!m),[s,h,m,u,w,j,C]);if(J||f===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(k,{})});let F;return x&&P&&c.length===0?F=t.jsx("div",{className:"flex items-center justify-center py-12",children:t.jsx(k,{})}):x?F=t.jsx(_e,{collections:c,getSearchableFields:D,renderCard:ee}):F=t.jsx(Ce,{items:c,renderItem:Z,getSearchableFields:D,sortFn:(e,a)=>e.actionItemId-a.actionItemId,onFilterChange:te}),t.jsxs("div",{...be(x,"w-full bg-base-fill rounded-xl px-9 py-6 max-mobile:px-4 space-y-4 relative"),children:[x?t.jsx(ge,{options:X,selectedIndex:U,onChange:$,getLabel:e=>s(`board.collections.tabs.${e}`),"data-qa":"board-collections-mobile-tabs"}):t.jsx(Pe,{options:X,selectedIndex:U,onChange:$,getLabel:e=>s(`board.collections.tabs.${e}`),"data-qa":"board-collections-tabs"}),t.jsxs("div",{className:"flex justify-end gap-4",children:[!x&&t.jsx(E,{size:"sm",variant:"passive",onClick:se,endIcon:t.jsx(p,{icon:ce}),children:s("main.common.export")}),t.jsx("div",{className:"max-mobile:hidden",children:t.jsx(we,{gridId:T,gridRef:r})})]}),t.jsx("div",{className:"max-mobile:hidden",children:t.jsx(n.Suspense,{fallback:t.jsx("div",{className:"flex items-center justify-center py-12",children:t.jsx(p,{icon:me,className:"w-8 h-8 text-primary animate-spin"})}),children:t.jsx(de,{ref:r,gridId:T,rowData:c,columnDefs:ae,enableClipboard:!0,columnMenu:"new",pageSizeFromParent:10,resetPaginationOnDataChange:!0,getRowId:({data:e})=>e.actionItemId.toString(),suppressLoadingOverlay:!P,overlayNoRowsTemplate:`<span class="text-base-fg">${s("board.collections.noCollections")}</span>`,onRowClicked:m?({data:e})=>{e&&u(e)}:void 0,onFirstDataRendered:()=>{r.current&&_&&r.current.applyColumnState({state:_,applyOrder:!0})}})})}),t.jsx("div",{className:"mobile:hidden",children:F}),P&&c.length>0&&t.jsx("div",{className:"absolute inset-0 bg-base-fill/50 flex items-center justify-center rounded-xl",children:t.jsx(k,{})}),t.jsx(Ae,{open:B.open,onClose:Y,collection:B.collection,associationId:o,isApproval:B.isApproval}),t.jsx(Se,{open:K.open,onClose:Q,actionItemId:K.actionItemId})]})},_e=({collections:s,getSearchableFields:l,renderCard:d})=>t.jsx(je,{items:s,getSearchableFields:l,sortFn:(i,o)=>i.actionItemId-o.actionItemId,getItemKey:i=>i.actionItemId,renderItem:d}),wt={title:"Collections",showPropertySelector:!0,showAi:!0,redesignPage:"collectionsPage",redesignHandle:{customContentId:["ActionItems_Collections","Board_v2"]}};function Nt(){const s=Fe("collectionsPage");return t.jsx(Re,{controller:"Board_v2",action:"ActionItems_Collections",children:s?t.jsx(pe,{children:t.jsx(We,{})}):t.jsx(ue,{action:"ActionItems_Collections",controller:"Board_v2"})})}export{Nt as Component,wt 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.