PageSourceSearch

https://biznas.com/chunk-DYCNO5MS.js

js biznas.com collected 2026-10-03 22:23:46 UTC 116,471 bytes, 507 lines download raw bytes

vendor: 16,153 bytes, line 1
1import{a as gi}from"./chunk-CFALFD4N.js";import{a as mi}from"./chunk-AT6KDTNF.js";import{a as $e,b as Je,c as Nt,d as Lt,e as Pt,f as pi,m as ci,n as hi,o as ui}from"./chunk-I43TBCCP.js";import{e as si,f as di}from"./chunk-2YJDS7I7.js";import"./chunk-N7HCJULI.js";import"./chunk-IP3PUWFP.js";import{b as Ze}from"./chunk-AB427IMW.js";import"./chunk-GC4IZX5C.js";import{a as ni}from"./chunk-AD5TJUXP.js";import{b as ti,c as ii}from"./chunk-K2JPOUCJ.js";import{B as Me}from"./chunk-WXCCC4Z4.js";import"./chunk-D4TCOIRS.js";import{a as oi,b as li}from"./chunk-MRHPGF4Z.js";import{c as Yt,d as ei}from"./chunk-RD6CMMYT.js";import{a as Xe,c as et}from"./chunk-43QSOUEJ.js";import{a as Gt,b as qt,c as $t,d as Jt}from"./chunk-EYQMV3B5.js";import{a as Te,b as Qt}from"./chunk-IRF7SSK4.js";import"./chunk-RJTNPJVP.js";import"./chunk-ZEKO3T4C.js";import{a as Ut,b as Wt}from"./chunk-CMNKNHZM.js";import{a as Ot,b as Rt}from"./chunk-KGLUFYAO.js";import"./chunk-PHU7DBHH.js";import{a as Ht,b as Bt}from"./chunk-V5KNXL3X.js";import{a as Kt,b as At}from"./chunk-DP2Z6ZZS.js";import"./chunk-SXHDWJCP.js";import{a as Dt}from"./chunk-ZV4QY222.js";import{e as ri,f as ai}from"./chunk-N6A7VSM7.js";import{a as jt}from"./chunk-XGGGEBNP.js";import"./chunk-DVCUWZW7.js";import{a as Xt,b as Zt}from"./chunk-JQRWBCXI.js";import"./chunk-FM6R6SQV.js";import"./chunk-YT3SJKED.js";import"./chunk-TBYF2LDC.js";import{a as kt}from"./chunk-LIN4B557.js";import{c as xt,d as me,f as Ie,g as vt,j as ke,k as Ct,n as wt,q as St,y as Et,z as It}from"./chunk-K6JXWQGF.js";import{b as zt,e as Ft,f as Vt}from"./chunk-K6TR4ND5.js";import{a as qe,k as Ye}from"./chunk-LBKYIKKB.js";import"./chunk-DVBSY2HJ.js";import"./chunk-HTVQYICE.js";import"./chunk-GYMQPV7B.js";import{Ba as ge,Ca as Mt,F as gt,G as We,H as ft,K as ue,L as N,M as Se,N as je,R as bt,S as _t,T as _e,V as ye,a as Be,d as ut,e as V,f as Ke,n as mt,p as Ae,pa as yt,q as Qe,qa as Ee,s as Ue,ua as ne,va as Ge,ya as Tt}from"./chunk-355THWVV.js";import"./chunk-UYEVN2YS.js";import"./chunk-HMPDWT3T.js";import"./chunk-UD64SC5Q.js";import{B as ht,F as we,j as be,l as ct,m as ee,q as He,r as he}from"./chunk-LXYQMMEZ.js";import{$b as h,Ac as X,Ba as Fe,Bc as Z,Cb as de,Cc as R,Dc as A,Fc as pt,Jb as a,Kb as d,Lb as p,Mb as y,Pc as Ce,Qb as B,Rb as K,Sb as S,Tb as O,Ub as dt,Yb as E,_a as s,aa as Le,ad as Re,ba as lt,cc as v,db as D,dc as F,ec as f,ed as I,f as re,fa as U,fc as b,fd as Y,ic as Ve,jc as pe,kc as ce,la as L,lb as j,lc as te,ma as P,mb as at,mc as T,na as ae,nb as st,nc as _,oc as ie,pb as se,pc as G,qc as Oe,rb as c,tb as z,ub as fe,uc as q,vc as $,wc as J,ya as rt,za as Pe}from"./chunk-E4JUGTIV.js";import{a as le,b as ot}from"./chunk-WWX6BADO.js";var ki=["colgroup"],Mi=["caption"],zi=["header"],Di=["body"],Ni=["footer"],Li=["summary"],Pi=["emptymessage"],Fi=["paginatorleft"],Vi=["paginatorright"],Oi=["paginatordropdownitem"],Ri=["frozenheader"],Hi=["frozenbody"],Bi=["frozenfooter"],Ki=["frozencolgroup"],Ai=["loadingicon"],Qi=["reorderindicatorupicon"],Ui=["reorderindicatordownicon"],Wi=["sorticon"],ji=["checkboxicon"],Gi=["headercheckboxicon"],qi=["togglericon"],$i=["paginatorfirstpagelinkicon"],Ji=["paginatorlastpagelinkicon"],Xi=["paginatorpreviouspagelinkicon"],Zi=["paginatornextpagelinkicon"],Yi=["loader"],en=["resizeHelper"],tn=["reorderIndicatorUp"],nn=["reorderIndicatorDown"],on=["table"],ln=["scrollableView"],rn=["scrollableFrozenView"],W=i=>({$implicit:i}),an=(i,o)=>({left:i,width:o}),sn=(i,o)=>[i,o],dn=i=>({width:i});function pn(i,o){if(i&1&&y(0,"i"),i&2){let e=h(2);T(e.cn(e.cx("loadingIcon"),"pi-spin"+e.loadingIcon))}}function cn(i,o){if(i&1&&(ae(),y(0,"svg",11)),i&2){let e=h(3);T(e.cx("loadingIcon")),a("spin",!0)}}function hn(i,o){}function un(i,o){i&1&&c(0,hn,0,0,"ng-template")}function mn(i,o){if(i&1&&(d(0,"span"),c(1,un,1,0,null,12),p()),i&2){let e=h(3);T(e.cx("loadingIcon")),s(),a("ngTemplateOutlet",e.loadingIconTemplate||e._loadingIconTemplate)}}function gn(i,o){if(i&1&&(B(0),c(1,cn,1,3,"svg",10)(2,mn,2,3,"span",6),K()),i&2){let e=h(2);s(),a("ngIf",!e.loadingIconTemplate&&!e._loadingIconTemplate),s(),a("ngIf",e.loadingIconTemplate||e._loadingIconTemplate)}}function fn(i,o){if(i&1&&(d(0,"div")(1,"div"),c(2,pn,1,2,"i",6)(3,gn,3,2,"ng-container",9),p()()),i&2){let e=h();T(e.cx("loading")),s(),T(e.cx("mask")),s(),a("ngIf",e.loadingIcon),s(),a("ngIf",!e.loadingIcon)}}function bn(i,o){i&1&&S(0)}function _n(i,o){if(i&1&&(d(0,"div"),c(1,bn,1,0,"ng-container",12),p()),i&2){let e=h();T(e.cx("header")),s(),a("ngTemplateOutlet",e.captionTemplate||e._captionTemplate)}}function yn(i,o){i&1&&S(0)}function Tn(i,o){if(i&1&&c(0,yn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorFirstPageLinkIconTemplate||e._paginatorFirstPageLinkIconTemplate)}}function xn(i,o){i&1&&c(0,Tn,1,1,"ng-template",14)}function vn(i,o){i&1&&S(0)}function Cn(i,o){if(i&1&&c(0,vn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorPreviousPageLinkIconTemplate||e._paginatorPreviousPageLinkIconTemplate)}}function wn(i,o){i&1&&c(0,Cn,1,1,"ng-template",15)}function Sn(i,o){i&1&&S(0)}function En(i,o){if(i&1&&c(0,Sn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorLastPageLinkIconTemplate||e._paginatorLastPageLinkIconTemplate)}}function In(i,o){i&1&&c(0,En,1,1,"ng-template",16)}function kn(i,o){i&1&&S(0)}function Mn(i,o){if(i&1&&c(0,kn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorNextPageLinkIconTemplate||e._paginatorNextPageLinkIconTemplate)}}function zn(i,o){i&1&&c(0,Mn,1,1,"ng-template",17)}function Dn(i,o){if(i&1){let e=O();d(0,"p-paginator",13),E("onPageChange",function(n){L(e);let l=h();return P(l.onPageChange(n))}),c(1,xn,1,0,null,9)(2,wn,1,0,null,9)(3,In,1,0,null,9)(4,zn,1,0,null,9),p()}if(i&2){let e=h();a("rows",e.rows)("first",e.first)("totalRecords",e.totalRecords)("pageLinkSize",e.pageLinks)("styleClass",e.cx("pcPaginator"))("alwaysShow",e.alwaysShowPaginator)("rowsPerPageOptions",e.rowsPerPageOptions)("templateLeft",e.paginatorLeftTemplate??e._paginatorLeftTemplate)("templateRight",e.paginatorRightTemplate??e._paginatorRightTemplate)("appendTo",e.paginatorDropdownAppendTo)("currentPageReportTemplate",e.currentPageReportTemplate)("showFirstLastIcon",e.showFirstLastIcon)("dropdownItemTemplate",e.paginatorDropdownItemTemplate??e._paginatorDropdownItemTemplate)("showCurrentPageReport",e.showCurrentPageReport)("showJumpToPageDropdown",e.showJumpToPageDropdown)("showPageLinks",e.showPageLinks)("locale",e.paginatorLocale),s(),a("ngIf",e.paginatorFirstPageLinkIconTemplate||e._paginatorFirstPageLinkIconTemplate),s(),a("ngIf",e.paginatorPreviousPageLinkIconTemplate||e._paginatorPreviousPageLinkIconTemplate),s(),a("ngIf",e.paginatorLastPageLinkIconTemplate||e._paginatorLastPageLinkIconTemplate),s(),a("ngIf",e.paginatorNextPageLinkIconTemplate||e._paginatorNextPageLinkIconTemplate)}}function Nn(i,o){i&1&&S(0)}function Ln(i,o){i&1&&S(0)}function Pn(i,o){i&1&&S(0)}function Fn(i,o){if(i&1&&(d(0,"div")(1,"table",18,0),c(3,Nn,1,0,"ng-container",19),d(4,"thead",20),c(5,Ln,1,0,"ng-container",19),p(),y(6,"tbody",21),d(7,"tfoot",20),c(8,Pn,1,0,"ng-container",19),p()()()),i&2){let e=h();T(e.cx("wrapper")),s(),a("ngClass",e.tableStyleClass)("ngStyle",e.tableStyle),s(2),a("ngTemplateOutlet",e.colGroupTemplate||e._colGroupTemplate)("ngTemplateOutletContext",R(18,W,e.columns)),s(),T(e.cx("thead")),s(),a("ngTemplateOutlet",e.headerTemplate||e._headerTemplate)("ngTemplateOutletContext",R(20,W,e.columns)),s(),T(e.cx("tbody")),a("pTreeTableBody",e.columns)("pTreeTableBodyTemplate",e.bodyTemplate??e._bodyTemplate),s(),T(e.cx("tfoot")),s(),a("ngTemplateOutlet",e.footerTemplate||e._footerTemplate)("ngTemplateOutletContext",R(22,W,e.columns))}}function Vn(i,o){if(i&1&&y(0,"div",24,2),i&2){let e=h(2);a("ngClass",A(5,sn,e.cx("scrollableView"),e.cx("frozenView")))("ttScrollableView",e.frozenColumns)("frozen",!0)("ngStyle",R(8,dn,e.frozenWidth))("scrollHeight",e.scrollHeight)}}function On(i,o){if(i&1&&(d(0,"div"),c(1,Vn,2,10,"div",22),y(2,"div",23,1),p()),i&2){let e=h();T(e.cx("scrollableWrapper")),s(),a("ngIf",e.frozenColumns||e.frozenBodyTemplate||e._frozenBodyTemplate),s(),T(e.cx("scrollableView")),a("ttScrollableView",e.columns)("frozen",!1)("scrollHeight",e.scrollHeight)("ngStyle",A(9,an,e.frozenWidth,"calc(100% - "+e.frozenWidth+")"))}}function Rn(i,o){i&1&&S(0)}function Hn(i,o){if(i&1&&c(0,Rn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorFirstPageLinkIconTemplate||e._paginatorFirstPageLinkIconTemplate)}}function Bn(i,o){i&1&&c(0,Hn,1,1,"ng-template",14)}function Kn(i,o){i&1&&S(0)}function An(i,o){if(i&1&&c(0,Kn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorPreviousPageLinkIconTemplate||e._paginatorPreviousPageLinkIconTemplate)}}function Qn(i,o){i&1&&c(0,An,1,1,"ng-template",15)}function Un(i,o){i&1&&S(0)}function Wn(i,o){if(i&1&&c(0,Un,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorLastPageLinkIconTemplate||e._paginatorLastPageLinkIconTemplate)}}function jn(i,o){i&1&&c(0,Wn,1,1,"ng-template",16)}function Gn(i,o){i&1&&S(0)}function qn(i,o){if(i&1&&c(0,Gn,1,0,"ng-container",12),i&2){let e=h(3);a("ngTemplateOutlet",e.paginatorNextPageLinkIconTemplate||e._paginatorNextPageLinkIconTemplate)}}function $n(i,o){i&1&&c(0,qn,1,1,"ng-template",17)}function Jn(i,o){if(i&1){let e=O();d(0,"p-paginator",13),E("onPageChange",function(n){L(e);let l=h();return P(l.onPageChange(n))}),c(1,Bn,1,0,null,9)(2,Qn,1,0,null,9)(3,jn,1,0,null,9)(4,$n,1,0,null,9),p()}if(i&2){let e=h();a("rows",e.rows)("first",e.first)("totalRecords",e.totalRecords)("pageLinkSize",e.pageLinks)("styleClass",e.cx("pcPaginator"))("alwaysShow",e.alwaysShowPaginator)("rowsPerPageOptions",e.rowsPerPageOptions)("templateLeft",e.paginatorLeftTemplate??e._paginatorLeftTemplate)("templateRight",e.paginatorRightTemplate??e._paginatorRightTemplate)("appendTo",e.paginatorDropdownAppendTo)("currentPageReportTemplate",e.currentPageReportTemplate)("showFirstLastIcon",e.showFirstLastIcon)("dropdownItemTemplate",e.paginatorDropdownItemTemplate??e._paginatorDropdownItemTemplate)("showCurrentPageReport",e.showCurrentPageReport)("showJumpToPageDropdown",e.showJumpToPageDropdown)("showPageLinks",e.showPageLinks)("locale",e.paginatorLocale),s(),a("ngIf",e.paginatorFirstPageLinkIconTemplate||e._paginatorFirstPageLinkIconTemplate),s(),a("ngIf",e.paginatorPreviousPageLinkIconTemplate||e._paginatorPreviousPageLinkIconTemplate),s(),a("ngIf",e.paginatorLastPageLinkIconTemplate||e._paginatorLastPageLinkIconTemplate),s(),a("ngIf",e.paginatorNextPageLinkIconTemplate||e._paginatorNextPageLinkIconTemplate)}}function Xn(i,o){i&1&&S(0)}function Zn(i,o){if(i&1&&(d(0,"div"),c(1,Xn,1,0,"ng-container",12),p()),i&2){let e=h();T(e.cx("footer")),s(),a("ngTemplateOutlet",e.summaryTemplate||e._summaryTemplate)}}function Yn(i,o){if(i&1&&y(0,"div",null,3),i&2){let e=h();T(e.cx("columnResizerHelper")),pe("display","none")}}function eo(i,o){i&1&&(ae(),y(0,"svg",26))}function to(i,o){}function io(i,o){i&1&&c(0,to,0,0,"ng-template")}function no(i,o){if(i&1&&(d(0,"span",null,4),c(2,eo,1,0,"svg",25)(3,io,1,0,null,12),p()),i&2){let e=h();T(e.cx("reorderIndicatorUp")),pe("display","none"),s(2),a("ngIf",!e.reorderIndicatorUpIconTemplate&&!e._reorderIndicatorUpIconTemplate),s(),a("ngTemplateOutlet",e.reorderIndicatorUpIconTemplate||e._reorderIndicatorUpIconTemplate)}}function oo(i,o){i&1&&(ae(),y(0,"svg",28))}function lo(i,o){}function ro(i,o){i&1&&c(0,lo,0,0,"ng-template")}function ao(i,o){if(i&1&&(d(0,"span",null,5),c(2,oo,1,0,"svg",27)(3,ro,1,0,null,12),p()),i&2){let e=h();T(e.cx("reorderIndicatorDown")),pe("display","none"),s(2),a("ngIf",!e.reorderIndicatorDownIconTemplate&&!e._reorderIndicatorDownIconTemplate),s(),a("ngTemplateOutlet",e.reorderIndicatorDownIconTemplate||e._reorderIndicatorDownIconTemplate)}}var so=["pTreeTableBody",""],po=(i,o,e,t)=>({$implicit:i,node:o,rowData:e,columns:t}),co=(i,o)=>({$implicit:i,frozen:o});function ho(i,o){i&1&&S(0)}function uo(i,o){if(i&1&&(B(0),c(1,ho,1,0,"ng-container",2),K()),i&2){let e=h().$implicit,t=h();s(),a("ngTemplateOutlet",t.template)("ngTemplateOutletContext",pt(2,po,e,e.node,e.node.data,t.columns))}}function mo(i,o){if(i&1&&c(0,uo,2,7,"ng-container",1),i&2){let e=o.$implicit;a("ngIf",e.visible)}}function go(i,o){i&1&&S(0)}function fo(i,o){if(i&1&&(B(0),c(1,go,1,0,"ng-container",2),K()),i&2){let e=h();s(),a("ngTemplateOutlet",e.tt.emptyMessageTemplate)("ngTemplateOutletContext",A(2,co,e.columns,e.frozen))}}var bo=["scrollHeader"],_o=["scrollHeaderBox"],yo=["scrollBody"],To=["scrollTable"],xo=["loadingTable"],vo=["scrollFooter"],Co=["scrollFooterBox"],wo=["scrollableAligner"],So=["scroller"],Eo=["ttScrollableView",""],Io=i=>({height:i}),fi=(i,o)=>({$implicit:i,options:o}),ko=i=>({options:i}),Mo=(i,o)=>({"max-height":i,"overflow-y":o}),zo=()=>({});function Do(i,o){i&1&&S(0)}function No(i,o){i&1&&S(0)}function Lo(i,o){i&1&&S(0)}function Po(i,o){if(i&1&&c(0,Lo,1,0,"ng-container",12),i&2){let e=o.$implicit,t=o.options;h(2);let n=Ve(11);a("ngTemplateOutlet",n)("ngTemplateOutletContext",A(2,fi,e,t))}}function Fo(i,o){i&1&&S(0)}function Vo(i,o){if(i&1&&c(0,Fo,1,0,"ng-container",12),i&2){let e=o.options,t=h(3);a("ngTemplateOutlet",t.tt.loaderTemplate||t.tt._loaderTemplate)("ngTemplateOutletContext",R(2,ko,e))}}function Oo(i,o){i&1&&(B(0),c(1,Vo,1,4,"ng-template",null,5,Ce),K())}function Ro(i,o){if(i&1){let e=O();d(0,"p-scroller",17,3),E("onLazyLoad",function(n){L(e);let l=h();return P(l.tt.onLazyItemLoad(n))}),c(2,Po,1,5,"ng-template",null,4,Ce)(4,Oo,3,0,"ng-container",15),p()}if(i&2){let e=h();te(R(9,Io,e.tt.scrollHeight!=="flex"?e.tt.scrollHeight:void 0)),a("items",e.tt.serializedValue)("styleClass",e.cx("scrollableBody"))("scrollHeight",e.scrollHeight!=="flex"?void 0:"100%")("itemSize",e.tt.virtualScrollItemSize||e.tt._virtualRowHeight)("lazy",e.tt.lazy)("options",e.tt.virtualScrollOptions),s(4),a("ngIf",e.tt.loaderTemplate||e.tt._loaderTemplate)}}function Ho(i,o){i&1&&S(0)}function Bo(i,o){if(i&1&&(B(0),d(1,"div",11,6),c(3,Ho,1,0,"ng-container",12),p(),K()),i&2){let e=h(),t=Ve(11);s(),T(e.cx("scrollableBody")),a("ngStyle",A(5,Mo,e.tt.scrollHeight!=="flex"?e.scrollHeight:void 0,!e.frozen&&e.tt.scrollHeight?"scroll":void 0)),s(2),a("ngTemplateOutlet",t)("ngTemplateOutletContext",A(9,fi,e.serializedValue,Z(8,zo)))}}function Ko(i,o){i&1&&S(0)}function Ao(i,o){i&1&&y(0,"div",null,8),i&2&&pe("background-color","transparent")}function Qo(i,o){if(i&1&&(d(0,"table",18,7),c(2,Ko,1,0,"ng-container",12),y(3,"tbody",19),p(),c(4,Ao,2,2,"div",20)),i&2){let e=o.$implicit,t=o.options,n=h();te(t.contentStyle),T(n.tt.tableStyleClass),a("ngClass",t.contentStyleClass)("ngStyle",n.tt.tableStyle),s(2),a("ngTemplateOutlet",n.frozen?n.tt.frozenColGroupTemplate||n.tt._frozenColGroupTemplate||n.tt.colGroupTemplate||n.tt._colGroupTemplate:n.tt.colGroupTemplate||n.tt._colGroupTemplate)("ngTemplateOutletContext",R(15,W,n.columns)),s(),T(n.cx("tbody")),a("pTreeTableBody",n.columns)("pTreeTableBodyTemplate",n.frozen?n.tt.frozenBodyTemplate||n.tt._frozenBodyTemplate||n.tt.bodyTemplate||n.tt._bodyTemplate:n.tt.bodyTemplate||n.tt._bodyTemplate)("serializedNodes",e)("frozen",n.frozen),s(),a("ngIf",n.frozen)}}function Uo(i,o){i&1&&S(0)}function Wo(i,o){i&1&&S(0)}function jo(i,o){if(i&1&&(d(0,"div",null,9)(2,"div",null,10)(4,"table",21),c(5,Uo,1,0,"ng-container",12),d(6,"tfoot",13),c(7,Wo,1,0,"ng-container",12),p()()()()),i&2){let e=h();T(e.cx("scrollableFooter")),s(2),T(e.cx("scrollableFooterBox")),s(2),T(e.cx("scrollableFooterTable")),a("ngClass",e.tt.tableStyleClass)("ngStyle",e.tt.tableStyle),s(),a("ngTemplateOutlet",e.frozen?e.tt.frozenColGroupTemplate||e.tt._frozenColGroupTemplate||e.tt.colGroupTemplate||e.tt._colGroupTemplate:e.tt.colGroupTemplate||e.tt._colGroupTemplate)("ngTemplateOutletContext",R(14,W,e.columns)),s(),T(e.cx("tfoot")),s(),a("ngTemplateOutlet",e.frozen?e.tt.frozenFooterTemplate||e.tt._frozenFooterTemplate||e.tt.footerTemplate||e.tt._footerTemplate:e.tt.footerTemplate||e.tt._footerTemplate)("ngTemplateOutletContext",R(16,W,e.columns))}}var Go=(i,o)=>({$implicit:i,partialSelected:o});function qo(i,o){}
1function $o(i,o){i&1&&c(0,qo,0,0,"ng-template")}function Jo(i,o){if(i&1&&c(0,$o,1,0,null,3),i&2){let e=h(2);a("ngTemplateOutlet",e.tt.checkboxIconTemplate||e.tt._checkboxIconTemplate)("ngTemplateOutletContext",A(2,Go,e.checked,e.partialChecked))}}function Xo(i,o){i&1&&(B(0),c(1,Jo,1,5,"ng-template",2),K())}function Zo(i,o){i&1&&(ae(),y(0,"svg",5)),i&2&&de("aria-hidden",!0)}function Yo(i,o){i&1&&(ae(),y(0,"svg",6)),i&2&&de("aria-hidden",!0)}function el(i,o){if(i&1&&(B(0),c(1,Zo,1,1,"svg",3)(2,Yo,1,1,"svg",4),K()),i&2){let e=h();s(),a("ngIf",e.rowNode.node.expanded),s(),a("ngIf",!e.rowNode.node.expanded)}}function tl(i,o){}function il(i,o){i&1&&c(0,tl,0,0,"ng-template")}var nl=`
2/* For PrimeNG */
3.p-treetable {
4    position: relative;
5}
6
7.p-treetable table {
8    border-collapse: collapse;
9    width: 100%;
10    table-layout: fixed;
11}
12
13.p-treetable .p-sortable-column {
14    cursor: pointer;
15    user-select: none;
16}
17
18.p-treetable .p-sortable-column .p-column-title,
19.p-treetable .p-sortable-column .p-sortable-column-icon,
20.p-treetable .p-sortable-column .p-sortable-column-badge {
21    vertical-align: middle;
22}
23
24.p-treetable-sort-icon {
25    color: dt('treetable.sort.icon.color');
26    font-size: dt('treetable.sort.icon.size');
27    width: dt('treetable.sort.icon.size');
28    height: dt('treetable.sort.icon.size');
29    transition: color dt('treetable.transition.duration');
30}
31
32.p-treetable .p-sortable-column .p-sortable-column-badge {
33    display: inline-flex;
34    align-items: center;
35    justify-content: center;
36}
37
38.p-treetable-auto-layout>.p-treetable-wrapper {
39    overflow-x: auto;
40}
41
42.p-treetable-auto-layout>.p-treetable-wrapper>table {
43    table-layout: auto;
44}
45
46.p-treetable-hoverable-rows .p-treetable-tbody>tr {
47    cursor: pointer;
48}
49
50.p-treetable-toggler {
51    cursor: pointer;
52    user-select: none;
53    display: inline-flex;
54    align-items: center;
55    justify-content: center;
56    vertical-align: middle;
57    overflow: hidden;
58    position: relative;
59}
60
61
62/* Scrollable */
63.p-treetable-scrollable-wrapper {
64    position: relative;
65}
66
67.p-treetable-scrollable-header,
68.p-treetable-scrollable-footer {
69    overflow: hidden;
70    flex-shrink: 0;
71}
72
73.p-treetable-scrollable-body {
74    overflow: auto;
75    position: relative;
76}
77
78.p-treetable-virtual-table {
79    position: absolute;
80}
81
82/* Frozen Columns */
83.p-treetable-frozen-view .p-treetable-scrollable-body {
84    overflow: hidden;
85}
86
87.p-treetable-frozen-view>.p-treetable-scrollable-body>table>.p-treetable-tbody>tr>td:last-child {
88    border-right: 0 none;
89}
90
91.p-treetable-unfrozen-view {
92    position: absolute;
93    top: 0;
94}
95
96/* Flex Scrollable */
97.p-treetable-flex-scrollable {
98    display: flex;
99    flex-direction: column;
100    flex: 1;
101    height: 100%;
102}
103
104.p-treetable-flex-scrollable .p-treetable-scrollable-wrapper,
105.p-treetable-flex-scrollable .p-treetable-scrollable-view {
106    display: flex;
107    flex-direction: column;
108    flex: 1;
109    height: 100%;
110}
111
112.p-treetable-flex-scrollable .p-treetable-virtual-scrollable-body {
113    flex: 1;
114}
115
116/* Resizable */
117.p-treetable-resizable>.p-treetable-wrapper {
118    overflow-x: auto;
119}
120
121.p-treetable-resizable .p-treetable-thead>tr>th,
122.p-treetable-resizable .p-treetable-tfoot>tr>td,
123.p-treetable-resizable .p-treetable-tbody>tr>td {
124    overflow: hidden;
125}
126
127.p-treetable-resizable .p-resizable-column {
128    background-clip: padding-box;
129    position: relative;
130}
131
132.p-treetable-resizable-fit .p-resizable-column:last-child .p-column-resizer {
133    display: none;
134}
135
136.p-treetable .p-column-resizer {
137    display: block;
138    position: absolute;
139    top: 0;
140    right: 0;
141    margin: 0;
142    width: dt('treetable.column.resizer.width');
143    height: 100%;
144    padding: 0px;
145    cursor: col-resize;
146    border: 1px solid transparent;
147}
148
149.p-treetable .p-column-resizer-helper {
150    width: dt('treetable.resize.indicator.width');
151    position: absolute;
152    z-index: 10;
153    display: none;
154    background: dt('treetable.resize.indicator.color');
155}
156
157.p-treetable .p-row-editor-init,
158.p-treetable .p-row-editor-save,
159.p-treetable .p-row-editor-cancel {
160    display: inline-flex;
161    align-items: center;
162    justify-content: center;
163    overflow: hidden;
164    position: relative;
165}
166
167
168/* Reorder */
169.p-treetable-reorder-indicator-up,
170.p-treetable-reorder-indicator-down {
171    position: absolute;
172    display: none;
173}
174
175[ttReorderableColumn] {
176    cursor: move;
177}
178
179/* Loader */
180.p-treetable-mask {
181    position: absolute !important;
182    display: flex;
183    align-items: center;
184    justify-content: center;
185    z-index: 2;
186}
187
188.p-treetable-loading-icon {
189    font-size: dt('treetable.loading.icon.size');
190    width: dt('treetable.loading.icon.size');
191    height: dt('treetable.loading.icon.size');
192}
193
194/* Virtual Scroll */
195.p-treetable .p-scroller-loading {
196    transform: none !important;
197    min-height: 0;
198    position: sticky;
199    top: 0;
200    left: 0;
201}
202
203.p-treetable .p-paginator-top {
204    border-color: dt('treetable.paginator.top.border.color');
205    border-style: solid;
206    border-width: dt('treetable.paginator.top.border.width');
207}
208
209.p-treetable .p-paginator-bottom {
210    border-color: dt('treetable.paginator.bottom.border.color');
211    border-style: solid;
212    border-width: dt('treetable.paginator.bottom.border.width');
213}
214
215.p-treetable .p-treetable-header {
216    background: dt('treetable.header.background');
217    color: dt('treetable.header.color');
218    border-color: dt('treetable.header.border.color');
219    border-style: solid;
220    border-width: dt('treetable.header.border.width');
221    padding: dt('treetable.header.padding');
222    font-weight: dt('treetable.column.title.font.weight');
223}
224
225.p-treetable .p-treetable-footer {
226    background: dt('treetable.footer.background');
227    color: dt('treetable.footer.color');
228    border-color: dt('treetable.footer.border.color');
229    border-style: solid;
230    border-width: dt('treetable.footer.border.width');
231    padding: dt('treetable.footer.padding');
232    font-weight: dt('treetable.column.footer.font.weight');
233}
234
235.p-treetable .p-treetable-thead>tr>th {
236    padding: dt('treetable.header.cell.padding');
237    background: dt('treetable.header.cell.background');
238    border-color: dt('treetable.header.cell.border.color');
239    border-style: solid;
240    border-width: 0 0 1px 0;
241    color: dt('treetable.header.cell.color');
242    font-weight: dt('treetable.column.title.font.weight');
243    text-align: start;
244    transition: background dt('treetable.transition.duration'), color dt('treetable.transition.duration'), border-color dt('treetable.transition.duration'),
245            outline-color dt('treetable.transition.duration'), box-shadow dt('treetable.transition.duration');
246}
247
248.p-treetable .p-treetable-tfoot>tr>td {
249    text-align: start;
250    padding: dt('treetable.footer.cell.padding');
251    border-color: dt('treetable.footer.cell.border.color');
252    border-style: solid;
253    border-width: 0 0 1px 0;
254    color: dt('treetable.footer.cell.color');
255    background: dt('treetable.footer.cell.background');
256    font-weight: dt('treetable.column.footer.font.weight');
257}
258
259.p-treetable .p-sortable-column {
260    cursor: pointer;
261    user-select: none;
262    outline-color: transparent;
263    vertical-align: middle;
264}
265
266.p-treetable .p-sortable-column .p-sortable-column-icon {
267    color: dt('treetable.sort.icon.color');
268    transition: color dt('treetable.transition.duration');
269}
270
271
272.p-treetable .p-sortable-column:not(.p-treetable-column-sorted):hover {
273    background: dt('treetable.header.cell.hover.background');
274    color: dt('treetable.header.cell.hover.color');
275}
276
277.p-treetable .p-sortable-column:not(.p-treetable-column-sorted):hover .p-sortable-column-icon {
278    color: dt('treetable.sort.icon.hover.color');
279}
280
281.p-treetable .p-sortable-column.p-treetable-column-sorted {
282    background: dt('treetable.header.cell.selected.background');
283    color: dt('treetable.header.cell.selected.color');
284}
285
286.p-treetable .p-sortable-column.p-treetable-column-sorted .p-sortable-column-icon {
287    color: dt('treetable.header.cell.selected.color');
288}
289
290.p-treetable .p-sortable-column:focus-visible {
291    box-shadow: dt('treetable.header.cell.focus.ring.shadow');
292    outline: dt('treetable.header.cell.focus.ring.width') dt('treetable.header.cell.focus.ring.style') dt('treetable.header.cell.focus.ring.color');
293    outline-offset: dt('treetable.header.cell.focus.ring.offset');
294}
295
296.p-treetable-hoverable .p-treetable-selectable-row {
297    cursor: pointer;
298}
299
300.p-treetable .p-treetable-tbody > tr {
301    outline-color: transparent;
302    background: dt('treetable.row.background');
303    color: dt('treetable.row.color');
304    transition: background dt('treetable.transition.duration'), color dt('treetable.transition.duration'), border-color dt('treetable.transition.duration'),
305            outline-color dt('treetable.transition.duration'), box-shadow dt('treetable.transition.duration');
306}
307
308.p-treetable .p-treetable-tbody>tr>td {
309    text-align: start;
310    border-color: dt('treetable.body.cell.border.color');
311    border-style: solid;
312    border-width: 0 0 1px 0;
313    padding: dt('treetable.body.cell.padding');
314}
315
316.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler {
317    display: inline-flex;
318    align-items: center;
319    justify-content: center;
320    overflow: hidden;
321    position: relative;
322    width: dt('treetable.node.toggle.button.size');
323    height: dt('treetable.node.toggle.button.size');
324    color: dt('treetable.node.toggle.button.color');
325    border: 0 none;
326    background: transparent;
327    cursor: pointer;
328    border-radius: dt('treetable.node.toggle.button.border.radiu
328s');
329    transition: background dt('treetable.transition.duration'), color dt('treetable.transition.duration'), border-color dt('treetable.transition.duration'),
330            outline-color dt('treetable.transition.duration'), box-shadow dt('treetable.transition.duration');
331    outline-color: transparent;
332    user-select: none;
333}
334
335.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler:enabled:hover {
336    color: dt('treetable.node.toggle.button.hover.color');
337    background: dt('treetable.node.toggle.button.hover.background');
338}
339
340.p-treetable .p-treetable-tbody>tr>tr.treetable-row-selected .p-treetable-toggler:hover {
341    background: dt('treetable.node.toggle.button.selected.hover.background');
342    color: dt('treetable.node.toggle.button.selected.hover.color');
343}
344
345.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler:focus-visible {
346    box-shadow: dt('treetable.node.toggle.button.focus.ring.shadow');
347    outline: dt('treetable.node.toggle.button.focus.ring.width') dt('treetable.node.toggle.button.focus.ring.style') dt('treetable.node.toggle.button.focus.ring.color');
348    outline-offset: dt('treetable.node.toggle.button.focus.ring.offset');
349}
350
351
352.p-treetable .p-treetable-tbody>tr.p-treetable-row-selected {
353    background: dt('treetable.row.selected.background');
354    color: dt('treetable.row.selected.color');
355}
356
357.p-treetable-tbody > tr:focus-visible,
358.p-treetable-tbody > tr.p-treetable-contextmenu-row-selected {
359    box-shadow: dt('treetable.row.focus.ring.shadow');
360    outline: dt('treetable.row.focus.ring.width') dt('treetable.row.focus.ring.style') dt('treetable.row.focus.ring.color');
361    outline-offset: dt('treetable.row.focus.ring.offset');
362}
363
364.p-treetable .p-treetable-tbody>tr.p-treetable-row-selected .p-treetable-toggler {
365    color: inherit;
366}
367
368.p-treetable .p-treetable-tbody>tr.p-treetable-row-selected .p-treetable-toggler:hover {
369    background: dt('treetable.node.toggle.button.selected.hover.background');
370    color: dt('treetable.node.toggle.button.selected.hover.color');
371}
372
373.p-treetable.p-treetable-hoverable-rows .p-treetable-tbody>tr:not(.p-treetable-row-selected):hover {
374    background: dt('treetable.row.hover.background');
375    color: dt('treetable.row.hover.color');
376}
377
378.p-treetable-gridlines .p-treetable-header {
379    border-width: 1px 1px 0 1px;
380}
381
382.p-treetable-gridlines .p-treetable-footer {
383    border-width: 0 1px 1px 1px;
384}
385
386.p-treetable-gridlines .p-treetable-paginator-top {
387    border-width: 1px 1px 0 1px;
388}
389
390.p-treetable-gridlines .p-treetable-paginator-bottom {
391    border-width: 0 1px 1px 1px;
392}
393
394.p-treetable-gridlines .p-treetable-thead > tr > th {
395    border-width: 1px 0 1px 1px;
396}
397
398.p-treetable-gridlines .p-treetable-thead > tr > th:last-child {
399    border-width: 1px;
400}
401
402.p-treetable-gridlines .p-treetable-tbody > tr > td {
403    border-width: 1px 0 0 1px;
404}
405
406.p-treetable-gridlines .p-treetable-tbody > tr > td:last-child {
407    border-width: 1px 1px 0 1px;
408}
409
410.p-treetable-gridlines .p-treetable-tbody > tr:last-child > td {
411    border-width: 1px 0 1px 1px;
412}
413
414.p-treetable-gridlines .p-treetable-tbody > tr:last-child > td:last-child {
415    border-width: 1px;
416}
417
418.p-treetable-gridlines .p-treetable-tfoot > tr > td {
419    border-width: 1px 0 1px 1px;
420}
421
422.p-treetable-gridlines .p-treetable-tfoot > tr > td:last-child {
423    border-width: 1px 1px 1px 1px;
424}
425
426.p-treetable.p-treetable-gridlines .p-treetable-thead + .p-treetable-tfoot > tr > td {
427    border-width: 0 0 1px 1px;
428}
429
430.p-treetable.p-treetable-gridlines .p-treetable-thead + .p-treetable-tfoot > tr > td:last-child {
431    border-width: 0 1px 1px 1px;
432}
433
434.p-treetable.p-treetable-gridlines:has(.p-treetable-thead):has(.p-treetable-tbody) .p-treetable-tbody > tr > td {
435    border-width: 0 0 1px 1px;
436}
437
438.p-treetable.p-treetable-gridlines:has(.p-treetable-thead):has(.p-treetable-tbody) .p-treetable-tbody > tr > td:last-child {
439    border-width: 0 1px 1px 1px;
440}
441
442.p-treetable.p-treetable-gridlines:has(.p-treetable-tbody):has(.p-treetable-tfoot) .p-treetable-tbody > tr:last-child > td {
443    border-width: 0 0 0 1px;
444}
445
446.p-treetable.p-treetable-gridlines:has(.p-treetable-tbody):has(.p-treetable-tfoot) .p-treetable-tbody > tr:last-child > td:last-child {
447    border-width: 0 1px 0 1px;
448}
449
450.p-treetable.p-treetable-sm .p-treetable-header {
451    padding: 0.65625rem 0.875rem;
452}
453
454.p-treetable.p-treetable-sm .p-treetable-thead>tr>th {
455    padding: 0.375rem 0.5rem;
456}
457
458.p-treetable.p-treetable-sm .p-treetable-tbody>tr>td {
459    padding: 0.375rem 0.5rem;
460}
461
462.p-treetable.p-treetable-sm .p-treetable-tfoot>tr>td {
463    padding: 0.375rem 0.5rem;
464}
465
466.p-treetable.p-treetable-sm .p-treetable-footer {
467    padding: 0.375rem 0.5rem;
468}
469
470.p-treetable.p-treetable-lg .p-treetable-header {
471    padding: 0.9375rem 1.25rem;
472}
473
474.p-treetable.p-treetable-lg .p-treetable-thead>tr>th {
475    padding: 0.9375rem 1.25rem;
476}
477
478.p-treetable.p-treetable-lg .p-treetable-tbody>tr>td {
479    padding: 0.9375rem 1.25rem;
480}
481
482.p-treetable.p-treetable-lg .p-treetable-tfoot>tr>td {
483    padding: 0.9375rem 1.25rem;
484}
485
486.p-treetable.p-treetable-lg .p-treetable-footer {
487    padding: 0.9375rem 1.25rem;
488}
489
490p-treetabletoggler + p-treetablecheckbox .p-checkbox,
491p-treetable-toggler + p-treetable-checkbox .p-checkbox,
492p-tree-table-toggler + p-tree-table-checkbox .p-checkbox {
493    vertical-align: middle;
494}
495
496p-treetabletoggler + p-treetablecheckbox + span,
497p-treetable-toggler + p-treetable-checkbox + span,
498p-tree-table-toggler + p-tree-table-checkbox + span {
499    vertical-align: middle;
500}
501
502p-treetable-sort-icon {
503    display: inline-flex;
504    align-items: center;
505    gap: dt('treetable.header.cell.gap');
506}
507`,ol={root:({instance:i})=>["p-treetable p-component",{"p-treetable-gridlines":i.showGridlines,"p-treetable-hoverable-rows":i.rowHover||i.selectionMode==="single"||i.selectionMode==="multiple","p-treetable-auto-layout":i.autoLayout,"p-treetable-resizable":i.resizableColumns,"p-treetable-resizable-fit":i.resizableColumns&&i.columnResizeMode==="fit","p-treetable-flex-scrollable":i.scrollable&&i.scrollHeight==="flex"}],loading:"p-treetable-loading",mask:"p-treetable-mask p-overlay-mask",loadingIcon:"p-treetable-loading-icon",header:"p-treetable-header",pcPaginator:({instance:i})=>["p-treetable-paginator-"+i.paginatorPosition,i.paginatorStyleClass],tableContainer:"p-treetable-table-container",table:({instance:i})=>({"p-treetable-table":!0,"p-treetable-scrollable-table":i.scrollable,"p-treetable-resizable-table":i.resizableColumns,"p-treetable-resizable-table-fit":i.resizableColumns&&i.columnResizeMode==="fit"}),thead:"p-treetable-thead",sortableColumn:({instance:i})=>({"p-sortable-column":i.isEnabled(),"p-treetable-column-sorted":i.sorted}),sortableColumnIcon:"p-treetable-sort-icon",sortableColumnBadge:"p-sortable-column-badge",columnResizer:"p-treetable-column-resizer",columnHeaderContent:"p-treetable-column-header-content",columnTitle:"p-treetable-column-title",sortIcon:"p-treetable-sort-icon",pcSortBadge:"p-treetable-sort-badge",tbody:"p-treetable-tbody",row:({instance:i})=>({"p-treetable-row-selected":i.selected}),contextMenuRow:({instance:i})=>({"p-treetable-contextmenu-row-selected":i.selected}),toggler:"p-treetable-toggler",nodeToggleButton:"p-treetable-node-toggle-button",nodeToggleIcon:"p-treetable-node-toggle-icon",pcNodeCheckbox:"p-treetable-node-checkbox",tfoot:"p-treetable-tfoot",footerCell:({instance:i})=>({"p-treetable-frozen-column":i.columnProp("frozen")}),footer:"p-treetable-footer",columnResizeIndicator:"p-treetable-column-resize-indicator",wrapper:"p-treetable-wrapper",scrollableWrapper:"p-treetable-scrollable-wrapper",scrollableView:"p-treetable-scrollable-view",frozenView:"p-treetable-frozen-view",columnResizerHelper:"p-column-resizer-helper",reorderIndicatorUp:"p-treetable-reorder-indicator-up",reorderIndicatorDown:"p-treetable-reorder-indicator-down",scrollableHeader:"p-treetable-scrollable-header",scrollableHeaderBox:"p-treetable-scrollable-header-box",scrollableHeaderTable:"p-treetable-scrollable-header-table",scrollableBody:"p-treetable-scrollable-body",scrollableFooter:"p-treetable-scrollable-footer",scrollableFooterBox:"p-treetable-scrollable-footer-box",scrollableFooterTable:"p-treetable-scrollable-footer-table"},Q=(()=>{class i extends Tt{name="treetable";theme=nl;classes=ol;static \u0275fac=(()=>{let e;return function(n){return(e||(e=Pe(i)))(n||i)}})();static \u0275prov=Le({token:i,factory:i.\u0275fac})}return i})();var ze=(()=>
vendor: 45,540 bytes, line 507
507{class i{sortSource=new re;selectionSource=new re;contextMenuSource=new re;uiUpdateSource=new re;totalRecordsSource=new re;sortSource$=this.sortSource.asObservable();selectionSource$=this.selectionSource.asObservable();contextMenuSource$=this.contextMenuSource.asObservable();uiUpdateSource$=this.uiUpdateSource.asObservable();totalRecordsSource$=this.totalRecordsSource.asObservable();onSort(e){this.sortSource.next(e)}onSelectionChange(){this.selectionSource.next(null)}onContextMenu(e){this.contextMenuSource.next(e)}onUIUpdate(e){this.uiUpdateSource.next(e)}onTotalRecordsChange(e){this.totalRecordsSource.next(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=Le({token:i,factory:i.\u0275fac})}return i})(),oe=(()=>{class i extends ge{_componentStyle=U(Q);columns;styleClass;tableStyle;tableStyleClass;autoLayout;lazy=!1;lazyLoadOnInit=!0;paginator;rows;first=0;pageLinks=5;rowsPerPageOptions;alwaysShowPaginator=!0;paginatorPosition="bottom";paginatorStyleClass;paginatorDropdownAppendTo;currentPageReportTemplate="{currentPage} of {totalPages}";showCurrentPageReport;showJumpToPageDropdown;showFirstLastIcon=!0;showPageLinks=!0;defaultSortOrder=1;sortMode="single";resetPageOnSort=!0;customSort;selectionMode;contextMenuSelection;contextMenuSelectionMode="separate";dataKey;metaKeySelection=!1;compareSelectionBy="deepEquals";rowHover;loading;loadingIcon;showLoader=!0;scrollable;scrollHeight;virtualScroll;virtualScrollItemSize;virtualScrollOptions;virtualScrollDelay=150;frozenWidth;frozenColumns;resizableColumns;columnResizeMode="fit";reorderableColumns;contextMenu;rowTrackBy=(e,t)=>t;filters={};globalFilterFields;filterDelay=300;filterMode="lenient";filterLocale;paginatorLocale;get totalRecords(){return this._totalRecords}set totalRecords(e){this._totalRecords=e,this.tableService.onTotalRecordsChange(this._totalRecords)}get sortField(){return this._sortField}set sortField(e){this._sortField=e}get sortOrder(){return this._sortOrder}set sortOrder(e){this._sortOrder=e}get multiSortMeta(){return this._multiSortMeta}set multiSortMeta(e){this._multiSortMeta=e}get selection(){return this._selection}set selection(e){this._selection=e}get value(){return this._value}set value(e){this._value=e}get virtualRowHeight(){return this._virtualRowHeight}set virtualRowHeight(e){this._virtualRowHeight=e,console.log("The virtualRowHeight property is deprecated, use virtualScrollItemSize property instead.")}get selectionKeys(){return this._selectionKeys}set selectionKeys(e){this._selectionKeys=e,this.selectionKeysChange.emit(this._selectionKeys)}showGridlines=!1;selectionChange=new z;contextMenuSelectionChange=new z;onFilter=new z;onNodeExpand=new z;onNodeCollapse=new z;onPage=new z;onSort=new z;onLazyLoad=new z;sortFunction=new z;onColResize=new z;onColReorder=new z;onNodeSelect=new z;onNodeUnselect=new z;onContextMenuSelect=new z;onHeaderCheckboxToggle=new z;onEditInit=new z;onEditComplete=new z;onEditCancel=new z;selectionKeysChange=new z;resizeHelperViewChild;reorderIndicatorUpViewChild;reorderIndicatorDownViewChild;tableViewChild;scrollableViewChild;scrollableFrozenViewChild;_value=[];_virtualRowHeight=28;_selectionKeys;serializedValue;_totalRecords=0;_multiSortMeta;_sortField;_sortOrder=1;filteredNodes;filterTimeout;_colGroupTemplate;colGroupTemplate;_captionTemplate;captionTemplate;_headerTemplate;headerTemplate;_bodyTemplate;bodyTemplate;_footerTemplate;footerTemplate;_summaryTemplate;summaryTemplate;_emptyMessageTemplate;emptyMessageTemplate;_paginatorLeftTemplate;paginatorLeftTemplate;_paginatorRightTemplate;paginatorRightTemplate;_paginatorDropdownItemTemplate;paginatorDropdownItemTemplate;_frozenHeaderTemplate;frozenHeaderTemplate;_frozenBodyTemplate;frozenBodyTemplate;_frozenFooterTemplate;frozenFooterTemplate;_frozenColGroupTemplate;frozenColGroupTemplate;_loadingIconTemplate;loadingIconTemplate;_reorderIndicatorUpIconTemplate;reorderIndicatorUpIconTemplate;_reorderIndicatorDownIconTemplate;reorderIndicatorDownIconTemplate;_sortIconTemplate;sortIconTemplate;_checkboxIconTemplate;checkboxIconTemplate;_headerCheckboxIconTemplate;headerCheckboxIconTemplate;_togglerIconTemplate;togglerIconTemplate;_paginatorFirstPageLinkIconTemplate;paginatorFirstPageLinkIconTemplate;_paginatorLastPageLinkIconTemplate;paginatorLastPageLinkIconTemplate;_paginatorPreviousPageLinkIconTemplate;paginatorPreviousPageLinkIconTemplate;_paginatorNextPageLinkIconTemplate;paginatorNextPageLinkIconTemplate;_loaderTemplate;loaderTemplate;lastResizerHelperX;reorderIconWidth;reorderIconHeight;draggedColumn;dropPosition;preventSelectionSetterPropagation;_selection;selectedKeys={};rowTouched;editingCell;editingCellData;editingCellField;editingCellClick;documentEditListener;initialized;toggleRowIndex;ngOnInit(){super.ngOnInit(),this.lazy&&this.lazyLoadOnInit&&!this.virtualScroll&&this.onLazyLoad.emit(this.createLazyLoadMetadata()),this.initialized=!0}templates;ngAfterContentInit(){this.templates.forEach(e=>{switch(e.getType()){case"caption":this.captionTemplate=e.template;break;case"header":this.headerTemplate=e.template;break;case"body":this.bodyTemplate=e.template;break;case"footer":this.footerTemplate=e.template;break;case"summary":this.summaryTemplate=e.template;break;case"colgroup":this.colGroupTemplate=e.template;break;case"emptymessage":this.emptyMessageTemplate=e.template;break;case"paginatorleft":this.paginatorLeftTemplate=e.template;break;case"paginatorright":this.paginatorRightTemplate=e.template;break;case"paginatordropdownitem":this.paginatorDropdownItemTemplate=e.template;break;case"frozenheader":this.frozenHeaderTemplate=e.template;break;case"frozenbody":this.frozenBodyTemplate=e.template;break;case"frozenfooter":this.frozenFooterTemplate=e.template;break;case"frozencolgroup":this.frozenColGroupTemplate=e.template;break;case"loadingicon":this.loadingIconTemplate=e.template;break;case"reorderindicatorupicon":this.reorderIndicatorUpIconTemplate=e.template;break;case"reorderindicatordownicon":this.reorderIndicatorDownIconTemplate=e.template;break;case"sorticon":this.sortIconTemplate=e.template;break;case"checkboxicon":this.checkboxIconTemplate=e.template;break;case"headercheckboxicon":this.headerCheckboxIconTemplate=e.template;break;case"togglericon":this.togglerIconTemplate=e.template;break;case"paginatorfirstpagelinkicon":this.paginatorFirstPageLinkIconTemplate=e.template;break;case"paginatorlastpagelinkicon":this.paginatorLastPageLinkIconTemplate=e.template;break;case"paginatorpreviouspagelinkicon":this.paginatorPreviousPageLinkIconTemplate=e.template;break;case"paginatornextpagelinkicon":this.paginatorNextPageLinkIconTemplate=e.template;break;case"loader":this.loaderTemplate=e.template;break}})}filterService=U(yt);tableService=U(ze);zone=U(fe);ngOnChanges(e){super.ngOnChanges(e),e.value&&(this._value=e.value.currentValue,this.lazy||(this.totalRecords=this._value?this._value.length:0,this.sortMode=="single"&&this.sortField?this.sortSingle():this.sortMode=="multiple"&&this.multiSortMeta?this.sortMultiple():this.hasFilter()&&this._filter()),this.updateSerializedValue(),this.tableService.onUIUpdate(this.value)),e.sortField&&(this._sortField=e.sortField.currentValue,(!this.lazy||this.initialized)&&this.sortMode==="single"&&this.sortSingle()),e.sortOrder&&(this._sortOrder=e.sortOrder.currentValue,(!this.lazy||this.initialized)&&this.sortMode==="single"&&this.sortSingle()),e.multiSortMeta&&(this._multiSortMeta=e.multiSortMeta.currentValue,this.sortMode==="multiple"&&this.sortMultiple()),e.selection&&(this._selection=e.selection.currentValue,this.preventSelectionSetterPropagation||(this.updateselectedKeys(),this.tableService.onSelectionChange()),this.preventSelectionSetterPropagation=!1)}updateSerializedValue(){this.serializedValue=[],this.paginator?this.serializePageNodes():this.serializeNodes(null,this.filteredNodes||this.value,0,!0)}serializeNodes(e,t,n,l){if(t&&t.length)for(let r of t){r.parent=e;let u={node:r,parent:e,level:n,visible:l&&(e?e.expanded:!0)};this.serializedValue.push(u),u.visible&&r.expanded&&this.serializeNodes(r,r.children,n+1,u.visible)}}serializePageNodes(){let e=this.filteredNodes||this.value;if(this.serializedValue=[],e&&e.length){let t=this.lazy?0:this.first;for(let n=t;n<t+this.rows;n++){let l=e[n];l&&(this.serializedValue.push({node:l,parent:null,level:0,visible:!0}),this.serializeNodes(l,l.children,1,!0))}}}updateselectedKeys(){if(this.dataKey&&this._selection)if(this.selectedKeys={},Array.isArray(this._selection))for(let e of this._selection)this.selectedKeys[String(V(e.data,this.dataKey))]=1;else this.selectedKeys[String(V(this._selection.data,this.dataKey))]=1}onPageChange(e){this.first=e.first,this.rows=e.rows,this.lazy?this.onLazyLoad.emit(this.createLazyLoadMetadata()):this.serializePageNodes(),this.onPage.emit({first:this.first,rows:this.rows}),this.tableService.onUIUpdate(this.value),this.scrollable&&this.resetScrollTop()}sort(e){let t=e.originalEvent;if(this.sortMode==="single"&&(this._sortOrder=this.sortField===e.field?this.sortOrder*-1:this.defaultSortOrder,this._sortField=e.field,this.sortSingle(),this.resetPageOnSort&&this.scrollable&&this.resetScrollTop()),this.sortMode==="multiple"){let n=t.metaKey||t.ctrlKey,l=this.getSortMeta(e.field);l?n?l.order=l.order*-1:(this._multiSortMeta=[{field:e.field,order:l.order*-1}],this.resetPageOnSort&&this.scrollable&&this.resetScrollTop()):((!n||!this.multiSortMeta)&&(this._multiSortMeta=[],this.resetPageOnSort&&this.scrollable&&this.resetScrollTop()),this.multiSortMeta.push({field:e.field,order:this.defaultSortOrder})),this.sortMultiple()}}sortSingle(){if(this.sortField&&this.sortOrder){this.lazy?this.onLazyLoad.emit(this.createLazyLoadMetadata()):this.value&&(this.sortNodes(this.value),this.hasFilter()&&this._filter());let e={field:this.sortField,order:this.sortOrder};this.onSort.emit(e),this.tableService.onSort(e),this.updateSerializedValue()}}sortNodes(e){if(!(!e||e.length===0)){this.customSort?this.sortFunction.emit({data:e,mode:this.sortMode,field:this.sortField,order:this.sortOrder}):e.sort((t,n)=>{let l=V(t.data,this.sortField),r=V(n.data,this.sortField),u=null;return l==null&&r!=null?u=-1:l!=null&&r==null?u=1:l==null&&r==null?u=0:typeof l=="string"&&typeof r=="string"?u=l.localeCompare(r,void 0,{numeric:!0}):u=l<r?-1:l>r?1:0,this.sortOrder*u});for(let t of e)this.sortNodes(t.children)}}sortMultiple(){this.multiSortMeta&&(this.lazy?this.onLazyLoad.emit(this.createLazyLoadMetadata()):this.value&&(this.sortMultipleNodes(this.value),this.hasFilter()&&this._filter()),this.onSort.emit({multisortmeta:this.multiSortMeta}),this.updateSerializedValue(),this.tableService.onSort(this.multiSortMeta))}sortMultipleNodes(e){if(!(!e||e.length===0)){this.customSort?this.sortFunction.emit({data:this.value,mode:this.sortMode,multiSortMeta:this.multiSortMeta}):e.sort((t,n)=>this.multisortField(t,n,this.multiSortMeta,0));for(let t of e)this.sortMultipleNodes(t.children)}}multisortField(e,t,n,l){if(Be(this.multiSortMeta)||Be(n[l]))return 0;let r=V(e.data,n[l].field),u=V(t.data,n[l].field),m=null;if(r==null&&u!=null?m=-1:r!=null&&u==null?m=1:r==null&&u==null&&(m=0),typeof r=="string"||r instanceof String){if(r.localeCompare&&r!=u)return n[l].order*r.localeCompare(u,void 0,{numeric:!0})}else m=r<u?-1:1;return r==u?n.length-1>l?this.multisortField(e,t,n,l+1):0:n[l].order*m}getSortMeta(e){if(this.multiSortMeta&&this.multiSortMeta.length){for(let t=0;t<this.multiSortMeta.length;t++)if(this.multiSortMeta[t].field===e)return this.multiSortMeta[t]}return null}isSorted(e){if(this.sortMode==="single")return this.sortField&&this.sortField===e;if(this.sortMode==="multiple"){let t=!1;if(this.multiSortMeta){for(let n=0;n<this.multiSortMeta.length;n++)if(this.multiSortMeta[n].field==e){t=!0;break}}return t}}createLazyLoadMetadata(){return{first:this.first,rows:this.rows,sortField:this.sortField,sortOrder:this.sortOrder,filters:this.filters,globalFilter:this.filters&&this.filters.global?this.filters.global.value:null,multiSortMeta:this.multiSortMeta,forceUpdate:()=>this.cd.detectChanges()}}onLazyItemLoad(e){this.onLazyLoad.emit(ot(le(le({},this.createLazyLoadMetadata()),e),{rows:e.last-e.first}))}resetScrollTop(){this.virtualScroll?this.scrollToVirtualIndex(0):this.scrollTo({top:0})}scrollToVirtualIndex(e){this.scrollableViewChild&&this.scrollableViewChild.scrollToVirtualIndex(e),this.scrollableFrozenViewChild&&this.scrollableViewChild.scrollToVirtualIndex(e)}scrollTo(e){this.scrollableViewChild&&this.scrollableViewChild.scrollTo(e),this.scrollableFrozenViewChild&&this.scrollableViewChild.scrollTo(e)}isEmpty(){let e=this.filteredNodes||this.value;return e==null||e.length==0}getBlockableElement(){return this.el.nativeElement.children[0]}onColumnResizeBegin(e){let t=ye(this.el?.nativeElement).left;this.lastResizerHelperX=e.pageX-t+this.el?.nativeElement.scrollLeft,e.preventDefault()}onColumnResize(e){let t=ye(this.el?.nativeElement).left;Qe(this.el?.nativeElement,"p-unselectable-text"),this.resizeHelperViewChild.nativeElement.style.height=this.el?.nativeElement.offsetHeight+"px",this.resizeHelperViewChild.nativeElement.style.top="0px",this.resizeHelperViewChild.nativeElement.style.left=e.pageX-t+this.el?.nativeElement.scrollLeft+"px",this.resizeHelperViewChild.nativeElement.style.display="block"}onColumnResizeEnd(e,t){let n=this.resizeHelperViewChild.nativeElement.offsetLeft-this.lastResizerHelperX,l=t.offsetWidth,r=l+n,u=t.style.minWidth||15;if(l+n>parseInt(u)){if(this.columnResizeMode==="fit"){let m=t.nextElementSibling;for(;!m.offsetParent;)m=m.nextElementSibling;if(m){let x=m.offsetWidth-n,C=m.style.minWidth||15;if(r>15&&x>parseInt(C))if(this.scrollable){let k=this.findParentScrollableView(t),g=N(k,".p-treetable-scrollable-body table")||N(k,".p-scroller-viewport table"),w=N(k,"table.p-treetable-scrollable-header-table"),M=N(k,"table.p-treetable-scrollable-footer-table"),H=_e(t);this.resizeColGroup(w,H,r,x),this.resizeColGroup(g,H,r,x),this.resizeColGroup(M,H,r,x)}else t.style.width=r+"px",m&&(m.style.width=x+"px")}}else if(this.columnResizeMode==="expand")if(this.scrollable){let m=this.findParentScrollableView(t),x=N(m,".p-treetable-scrollable-body")||N(m,".p-scroller-viewport"),C=N(m,".p-treetable-scrollable-header"),k=N(m,".p-treetable-scrollable-footer"),g=N(m,".p-treetable-scrollable-body table")||N(m,".p-scroller-viewport table"),w=N(m,"table.p-treetable-scrollable-header-table"),M=N(m,"table.p-treetable-scrollable-footer-table");g.style.width=g.offsetWidth+n+"px",w.style.width=w.offsetWidth+n+"px",M&&(M.style.width=M.offsetWidth+n+"px");let H=_e(t),xe=t?g.offsetWidth+n:r,ve=t?w.offsetWidth+n:r,De=this.el?.nativeElement.offsetWidth>=xe,Ne=(tt,it,nt,Ci)=>{tt&&it&&(tt.style.width=Ci?nt+We(x)+"px":"auto",it.style.width=nt+"px")};Ne(x,g,xe,De),Ne(C,w,ve,De),Ne(k,M,ve,De),this.resizeColGroup(w,H,r,null),this.resizeColGroup(g,H,r,null),this.resizeColGroup(M,H,r,null)}else{this.tableViewChild.nativeElement.style.width=this.tableViewChild?.nativeElement.offsetWidth+n+"px",t.style.width=r+"px";let m=this.tableViewChild?.nativeElement.style.width;this.el.nativeElement.style.width=m+"px"}this.onColResize.emit({element:t,delta:n})}this.resizeHelperViewChild.nativeElement.style.display="none",Ue(this.el?.nativeElement,"p-unselectable-text")}findParentScrollableView(e){if(e){let t=e.parentElement;for(;t&&!Ae(t,"p-treetable-scrollable-view");)t=t.parentElement;return t}else return null}resizeColGroup(e,t,n,l){if(e){let r=e.children[0].nodeName==="COLGROUP"?e.children[0]:null;if(r){let u=r.children[t],m=u.nextElementSibling;u.style.width=n+"px",m&&l&&(m.style.width=l+"px")}else throw"Scrollable tables require a colgroup to support resizable columns"}}onColumnDragStart(e,t){this.reorderIconWidth=_t(this.reorderIndicatorUpViewChild?.nativeElement),this.reorderIconHeight=bt(this.reorderIndicatorDownViewChild?.nativeElement),this.draggedColumn=t,e.dataTransfer.setData("text","b")}onColumnDragEnter(e,t){if(this.reorderableColumns&&this.draggedColumn&&t){e.preventDefault();let n=ye(this.el?.nativeElement),l=ye(t);if(this.draggedColumn!=t){let r=l.left-n.left,u=n.top-l.top,m=l.left+t.offsetWidth/2;this.reorderIndicatorUpViewChild.nativeElement.style.top=l.top-n.top-(this.reorderIconHeight-1)+"px",this.reorderIndicatorDownViewChild.nativeElement.style.top=l.top-n.top+t.offsetHeight+"px",e.pageX>m?(this.reorderIndicatorUpViewChild.nativeElement.style.left=r+t.offsetWidth-Math.ceil(this.reorderIconWidth/2)+"px",this.reorderIndicatorDownViewChild.nativeElement.style.left=r+t.offsetWidth-Math.ceil(this.reorderIconWidth/2)+"px",this.dropPosition=1):(this.reorderIndicatorUpViewChild.nativeElement.style.left=r-Math.ceil(this.reorderIconWidth/2)+"px",this.reorderIndicatorDownViewChild.nativeElement.style.left=r-Math.ceil(this.reorderIconWidth/2)+"px",this.dropPosition=-1),this.reorderIndicatorUpViewChild.nativeElement.style.display="block",this.reorderIndicatorDownViewChild.nativeElement.style.display="block"}else e.dataTransfer.dropEffect="none"}}onColumnDragLeave(e){this.reorderableColumns&&this.draggedColumn&&(e.preventDefault(),this.reorderIndicatorUpViewChild.nativeElement.style.display="none",this.reorderIndicatorDownViewChild.nativeElement.style.display="none")}onColumnDrop(e,t){if(e.preventDefault(),this.draggedColumn){let n=qe.indexWithinGroup(this.draggedColumn,"ttreorderablecolumn"),l=qe.indexWithinGroup(t,"ttreorderablecolumn"),r=n!=l;r&&(l-n==1&&this.dropPosition===-1||n-l==1&&this.dropPosition===1)&&(r=!1),r&&l<n&&this.dropPosition===1&&(l=l+1),r&&l>n&&this.dropPosition===-1&&(l=l-1),r&&(mt(this.columns,n,l),this.onColReorder.emit({dragIndex:n,dropIndex:l,columns:this.columns})),this.reorderIndicatorUpViewChild.nativeElement.style.display="none",this.reorderIndicatorDownViewChild.nativeElement.style.display="none",this.draggedColumn.draggable=!1,this.draggedColumn=null,this.dropPosition=null}}handleRowClick(e){let t=e.originalEvent.target.nodeName;if(!(t=="INPUT"||t=="BUTTON"||t=="A"||Ae(e.originalEvent.target,"p-clickable"))){if(this.selectionMode){this.preventSelectionSetterPropagation=!0;let n=e.rowNode,l=this.isSelected(n.node),r=this.rowTouched?!1:this.metaKeySelection,u=this.dataKey?String(V(n.node.data,this.dataKey)):null;if(r){let m=e.originalEvent,x=m.metaKey||m.ctrlKey;if(l&&x){if(this.isSingleSelectionMode())this._selection=null,this.selectedKeys={},this.selectionChange.emit(null);else{let C=this.findIndexInSelection(n.node);this._selection=this.selection.filter((k,g)=>g!=C),this.selectionChange.emit(this.selection),u&&delete this.selectedKeys[u]}this.onNodeUnselect.emit({originalEvent:e.originalEvent,node:n.node,type:"row"})}else this.isSingleSelectionMode()?(this._selection=n.node,this.selectionChange.emit(n.node),u&&(this.selectedKeys={},this.selectedKeys[u]=1)):this.isMultipleSelectionMode()&&(x?this._selection=this.selection||[]:(this._selection=[],this.selectedKeys={}),this._selection=[...this.selection,n.node],this.selectionChange.emit(this.selection),u&&(this.selectedKeys[u]=1)),this.onNodeSelect.emit({originalEvent:e.originalEvent,node:n.node,type:"row",index:e.rowIndex})}else if(this.selectionMode==="single")l?(this._selection=null,this.selectedKeys={},this.selectionChange.emit(this.selection),this.onNodeUnselect.emit({originalEvent:e.originalEvent,node:n.node,type:"row"})):(this._selection=n.node,this.selectionChange.emit(this.selection),this.onNodeSelect.emit({originalEvent:e.originalEvent,node:n.node,type:"row",index:e.rowIndex}),u&&(this.selectedKeys={},this.selectedKeys[u]=1));else if(this.selectionMode==="multiple")if(l){let m=this.findIndexInSelection(n.node);this._selection=this.selection.filter((x,C)=>C!=m),this.selectionChange.emit(this.selection),this.onNodeUnselect.emit({originalEvent:e.originalEvent,node:n.node,type:"row"}),u&&delete this.selectedKeys[u]}else this._selection=this.selection?[...this.selection,n.node]:[n.node],this.selectionChange.emit(this.selection),this.onNodeSelect.emit({originalEvent:e.originalEvent,node:n.node,type:"row",index:e.rowIndex}),u&&(this.selectedKeys[u]=1);this.tableService.onSelectionChange()}this.rowTouched=!1}}handleRowTouchEnd(e){this.rowTouched=!0}handleRowRightClick(e){if(this.contextMenu){let t=e.rowNode.node;if(this.contextMenuSelectionMode==="separate")this.contextMenuSelection=t,this.contextMenuSelectionChange.emit(t),this.onContextMenuSelect.emit({originalEvent:e.originalEvent,node:t}),this.contextMenu.show(e.originalEvent),this.tableService.onContextMenu(t);else if(this.contextMenuSelectionMode==="joint"){this.preventSelectionSetterPropagation=!0;let n=this.isSelected(t),l=this.dataKey?String(V(t.data,this.dataKey)):null;n||(this.isSingleSelectionMode()?(this.selection=t,this.selectionChange.emit(t)):this.isMultipleSelectionMode()&&(this.selection=[t],this.selectionChange.emit(this.selection)),l&&(this.selectedKeys[l]=1)),this.contextMenu.show(e.originalEvent),this.onContextMenuSelect.emit({originalEvent:e.originalEvent,node:t})}}}toggleNodeWithCheckbox(e){this.selection=this.selection||[],this.preventSelectionSetterPropagation=!0;let t=e.rowNode.node;this.isSelected(t)?(this.propagateSelectionDown(t,!1),e.rowNode.parent&&this.propagateSelectionUp(t.parent,!1),this.selectionChange.emit(this.selection),this.onNodeUnselect.emit({originalEvent:e,node:t})):(this.propagateSelectionDown(t,!0),e.rowNode.parent&&this.propagateSelectionUp(t.parent,!0),this.selectionChange.emit(this.selection),this.onNodeSelect.emit({originalEvent:e,node:t})),this.tableService.onSelectionChange()}toggleNodesWithCheckbox(e,t){let n=this.filteredNodes||this.value;this._selection=t&&n?n.slice():[],this.toggleAll(t),t||(this._selection=[],this.selectedKeys={}),this.preventSelectionSetterPropagation=!0,this.selectionChange.emit(this._selection),this.tableService.onSelectionChange(),this.onHeaderCheckboxToggle.emit({originalEvent:e,checked:t})}toggleAll(e){let t=this.filteredNodes||this.value;if(this.selectionKeys){if(t&&t.length){for(let n of t)this.propagateDown(n,e);this.selectionKeysChange.emit(this.selectionKeys)}}else if(t&&t.length)for(let n of t)this.propagateSelectionDown(n,e)}propagateSelectionUp(e,t){if(e.children&&e.children.length){let l=0,r=!1,u=this.dataKey?String(V(e.data,this.dataKey)):null;for(let m of e.children)this.isSelected(m)?l++:m.partialSelected&&(r=!0);if(t&&l==e.children.length)this._selection=[...this.selection||[],e],e.partialSelected=!1,u&&(this.selectedKeys[u]=1);else{if(!t){let m=this.findIndexInSelection(e);m>=0&&(this._selection=this.selection.filter((x,C)=>C!=m),u&&delete this.selectedKeys[u])}r||l>0&&l!=e.children.length?e.partialSelected=!0:e.partialSelected=!1}}let n=e.parent;e.checked=t,n&&this.propagateSelectionUp(n,t)}propagateSelectionDown(e,t){let n=this.findIndexInSelection(e),l=this.dataKey?String(V(e.data,this.dataKey)):null;if(t&&n==-1?(this._selection=[...this.selection||[],e],l&&(this.selectedKeys[l]=1)):!t&&n>-1&&(this._selection=this.selection.filter((r,u)=>u!=n),l&&delete this.selectedKeys[l]),e.partialSelected=!1,e.checked=t,e.children&&e.children.length)for(let r of e.children)this.propagateSelectionDown(r,t)}isSelected(e){return e&&this.selection?this.dataKey?e.hasOwnProperty("checked")?e.checked:this.selectedKeys[V(e.data,this.dataKey)]!==void 0:Array.isArray(this.selection)?this.findIndexInSelection(e)>-1:this.equals(e,this.selection):!1}isNodeSelected(e){return this.selectionMode&&this.selectionKeys?this.selectionKeys[this.nodeKey(e)]?.checked===!0:!1}isNodePartialSelected(e){return this.selectionMode&&this.selectionKeys?this.selectionKeys[this.nodeKey(e)]?.partialChecked===!0:!1}nodeKey(e){return V(e,this.dataKey)||V(e?.data,this.dataKey)}toggleCheckbox(e){let{rowNode:t,check:n,originalEvent:l}=e,r=t.node;this.selectionKeys?(this.propagateDown(r,n),r.parent&&this.propagateUp(r.parent,n),this.selectionKeysChange.emit(this.selectionKeys)):this.toggleNodeWithCheckbox({originalEvent:l,rowNode:t}),this.tableService.onSelectionChange()}propagateDown(e,t){if(t?this.selectionKeys[this.nodeKey(e)]={checked:!0,partialChecked:!1}:delete this.selectionKeys[this.nodeKey(e)],e.children&&e.children.length)for(let n of e.children)this.propagateDown(n,t)}propagateUp(e,t){let n=0,l=!1;for(let u of e.children)this.selectionKeys[this.nodeKey(u)]&&this.selectionKeys[this.nodeKey(u)].checked?n++:this.selectionKeys[this.nodeKey(u)]&&this.selectionKeys[this.nodeKey(u)].partialChecked&&(l=!0);t&&n===e.children.length?this.selectionKeys[this.nodeKey(e)]={checked:!0,partialChecked:!1}:(t||delete this.selectionKeys[this.nodeKey(e)],l||n>0&&n!==e.children.length?this.selectionKeys[this.nodeKey(e)]={checked:!1,partialChecked:!0}:this.selectionKeys[this.nodeKey(e)]={checked:!1,partialChecked:!1});let r=e.parent;r&&this.propagateUp(r,t)}findIndexInSelection(e){let t=-1;if(this.selection&&this.selection.length){for(let n=0;n<this.selection.length;n++)if(this.equals(e,this.selection[n])){t=n;break}}return t}isSingleSelectionMode(){return this.selectionMode==="single"}isMultipleSelectionMode(){return this.selectionMode==="multiple"}equals(e,t){return this.compareSelectionBy==="equals"?Ke(e,t):Ke(e.data,t.data,this.dataKey)}filter(e,t,n){this.filterTimeout&&clearTimeout(this.filterTimeout),this.isFilterBlank(e)?this.filters[t]&&delete this.filters[t]:this.filters[t]={value:e,matchMode:n},this.filterTimeout=setTimeout(()=>{this._filter(),this.filterTimeout=null},this.filterDelay)}filterGlobal(e,t){this.filter(e,"global",t)}isFilterBlank(e){return e!=null?!!(typeof e=="string"&&e.trim().length==0||Array.isArray(e)&&e.length==0):!0}_filter(){if(this.lazy)this.onLazyLoad.emit(this.createLazyLoadMetadata());else{if(!this.value)return;if(!this.hasFilter())this.filteredNodes=null,this.paginator&&(this.totalRecords=this.value?this.value.length:0);else{let t;if(this.filters.global){if(!this.columns&&!this.globalFilterFields)throw new Error("Global filtering requires dynamic columns or globalFilterFields to be defined.");t=this.globalFilterFields||this.columns}this.filteredNodes=[];let n=this.filterMode==="strict",l=!1;for(let r of this.value){let u=le({},r),m=!0,x=!1,C;for(let g in this.filters)if(this.filters.hasOwnProperty(g)&&g!=="global"){let w=this.filters[g],M=g,H=w.value,xe=w.matchMode||"startsWith",ve=this.filterService.filters[xe];if(C={filterField:M,filterValue:H,filterConstraint:ve,isStrictMode:n},(n&&!(this.findFilteredNodes(u,C)||this.isFilterMatched(u,C))||!n&&!(this.isFilterMatched(u,C)||this.findFilteredNodes(u,C)))&&(m=!1),!m)break}if(this.filters.global&&!x&&t){let g=le({},u),w,M=this.filters.global.value,H=this.filterService.filters[this.filters.global.matchMode];C={filterField:w,filterValue:M,filterConstraint:H,isStrictMode:n,globalFilterFieldsArray:t},(n&&(this.findFilteredNodes(g,C)||this.isFilterMatched(g,C))||!n&&(this.isFilterMatched(g,C)||this.findFilteredNodes(g,C)))&&(x=!0,u=g)}let k=m;this.filters.global&&(k=m&&x),k&&this.filteredNodes.push(u),l=l||!m||x||m&&this.filteredNodes.length>0||!x&&this.filteredNodes.length===0}l||(this.filteredNodes=null),this.paginator&&(this.totalRecords=this.filteredNodes?this.filteredNodes.length:this.value?this.value.length:0)}this.cd.markForCheck()}this.first=0;let e=this.filteredNodes||this.value;this.onFilter.emit({filters:this.filters,filteredValue:e}),this.tableService.onUIUpdate(e),this.updateSerializedValue(),this.scrollable&&this.resetScrollTop()}findFilteredNodes(e,t){if(e){let n=!1;if(e.children){let l=[...e.children];e.children=[];for(let r of l){let u=le({},r);this.isFilterMatched(u,t)&&(n=!0,e.children.push(u))}}if(n)return!0}}isFilterMatched(e,t){let{filterField:n,filterValue:l,filterConstraint:r,isStrictMode:u,globalFilterFieldsArray:m}=t,x=!1,C=k=>r(V(e.data,k),l,this.filterLocale);return x=m?.length?m.some(k=>C(k.field||k)):C(n),(!x||u&&!this.isNodeLeaf(e))&&(x=this.findFilteredNodes(e,{filterField:n,filterValue:l,filterConstraint:r,isStrictMode:u,globalFilterFieldsArray:m})||x),x}isNodeLeaf(e){return e.leaf===!1?!1:!(e.children&&e.children.length)}hasFilter(){let e=!0;for(let t in this.filters)if(this.filters.hasOwnProperty(t)){e=!1;break}return!e}reset(){this._sortField=null,this._sortOrder=1,this._multiSortMeta=null,this.tableService.onSort(null),this.filteredNodes=null,this.filters={},this.first=0,this.lazy?this.onLazyLoad.emit(this.createLazyLoadMetadata()):this.totalRecords=this._value?this._value.length:0}updateEditingCell(e,t,n){this.editingCell=e,this.editingCellData=t,this.editingCellField=n,this.bindDocumentEditListener()}isEditingCellValid(){return this.editingCell&&ue(this.editingCell,".ng-invalid.ng-dirty").length===0}bindDocumentEditListener(){this.documentEditListener||(this.documentEditListener=this.renderer.listen(this.document,"click",e=>{this.editingCell&&!this.editingCellClick&&this.isEditingCellValid()&&(Ue(this.editingCell,"p-cell-editing"),this.editingCell=null,this.onEditComplete.emit({field:this.editingCellField,data:this.editingCellData}),this.editingCellField=null,this.editingCellData=null,this.unbindDocumentEditListener()),this.editingCellClick=!1}))}unbindDocumentEditListener(){this.documentEditListener&&(this.documentEditListener(),this.documentEditListener=null)}ngOnDestroy(){this.unbindDocumentEditListener(),this.editingCell=null,this.editingCellField=null,this.editingCellData=null,this.initialized=null,super.ngOnDestroy()}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Pe(i)))(n||i)}})();static \u0275cmp=j({type:i,selectors:[["p-treeTable"],["p-treetable"],["p-tree-table"]],contentQueries:function(t,n,l){if(t&1&&(v(l,ki,4),v(l,Mi,4),v(l,zi,4),v(l,Di,4),v(l,Ni,4),v(l,Li,4),v(l,Pi,4),v(l,Fi,4),v(l,Vi,4),v(l,Oi,4),v(l,Ri,4),v(l,Hi,4),v(l,Bi,4),v(l,Ki,4),v(l,Ai,4),v(l,Qi,4),v(l,Ui,4),v(l,Wi,4),v(l,ji,4),v(l,Gi,4),v(l,qi,4),v(l,$i,4),v(l,Ji,4),v(l,Xi,4),v(l,Zi,4),v(l,Yi,4),v(l,ne,4)),t&2){let r;f(r=b())&&(n._colGroupTemplate=r.first),f(r=b())&&(n._captionTemplate=r.first),f(r=b())&&(n._headerTemplate=r.first),f(r=b())&&(n._bodyTemplate=r.first),f(r=b())&&(n._footerTemplate=r.first),f(r=b())&&(n._summaryTemplate=r.first),f(r=b())&&(n._emptyMessageTemplate=r.first),f(r=b())&&(n._paginatorLeftTemplate=r.first),f(r=b())&&(n._paginatorRightTemplate=r.first),f(r=b())&&(n._paginatorDropdownItemTemplate=r.first),f(r=b())&&(n._frozenHeaderTemplate=r.first),f(r=b())&&(n._frozenBodyTemplate=r.first),f(r=b())&&(n._frozenFooterTemplate=r.first),f(r=b())&&(n._frozenColGroupTemplate=r.first),f(r=b())&&(n._loadingIconTemplate=r.first),f(r=b())&&(n._reorderIndicatorUpIconTemplate=r.first),f(r=b())&&(n._reorderIndicatorDownIconTemplate=r.first),f(r=b())&&(n._sortIconTemplate=r.first),f(r=b())&&(n._checkboxIconTemplate=r.first),f(r=b())&&(n._headerCheckboxIconTemplate=r.first),f(r=b())&&(n._togglerIconTemplate=r.first),f(r=b())&&(n._paginatorFirstPageLinkIconTemplate=r.first),f(r=b())&&(n._paginatorLastPageLinkIconTemplate=r.first),f(r=b())&&(n._paginatorPreviousPageLinkIconTemplate=r.first),f(r=b())&&(n._paginatorNextPageLinkIconTemplate=r.first),f(r=b())&&(n._loaderTemplate=r.first),f(r=b())&&(n.templates=r)}},viewQuery:function(t,n){if(t&1&&(F(en,5),F(tn,5),F(nn,5),F(on,5),F(ln,5),F(rn,5)),t&2){let l;f(l=b())&&(n.resizeHelperViewChild=l.first),f(l=b())&&(n.reorderIndicatorUpViewChild=l.first),f(l=b())&&(n.reorderIndicatorDownViewChild=l.first),f(l=b())&&(n.tableViewChild=l.first),f(l=b())&&(n.scrollableViewChild=l.first),f(l=b())&&(n.scrollableFrozenViewChild=l.first)}},hostVars:3,hostBindings:function(t,n){t&2&&(de("data-scrollselectors",".p-treetable-scrollable-body"),T(n.cn(n.cx("root"),n.styleClass)))},inputs:{columns:"columns",styleClass:"styleClass",tableStyle:"tableStyle",tableStyleClass:"tableStyleClass",autoLayout:[2,"autoLayout","autoLayout",I],lazy:[2,"lazy","lazy",I],lazyLoadOnInit:[2,"lazyLoadOnInit","lazyLoadOnInit",I],paginator:[2,"paginator","paginator",I],rows:[2,"rows","rows",Y],first:[2,"first","first",Y],pageLinks:[2,"pageLinks","pageLinks",Y],rowsPerPageOptions:"rowsPerPageOptions",alwaysShowPaginator:[2,"alwaysShowPaginator","alwaysShowPaginator",I],paginatorPosition:"paginatorPosition",paginatorStyleClass:"paginatorStyleClass",paginatorDropdownAppendTo:"paginatorDropdownAppendTo",currentPageReportTemplate:"currentPageReportTemplate",showCurrentPageReport:[2,"showCurrentPageReport","showCurrentPageReport",I],showJumpToPageDropdown:[2,"showJumpToPageDropdown","showJumpToPageDropdown",I],showFirstLastIcon:[2,"showFirstLastIcon","showFirstLastIcon",I],showPageLinks:[2,"showPageLinks","showPageLinks",I],defaultSortOrder:[2,"defaultSortOrder","defaultSortOrder",Y],sortMode:"sortMode",resetPageOnSort:[2,"resetPageOnSort","resetPageOnSort",I],customSort:[2,"customSort","customSort",I],selectionMode:"selectionMode",contextMenuSelection:"contextMenuSelection",contextMenuSelectionMode:"contextMenuSelectionMode",dataKey:"dataKey",metaKeySelection:[2,"metaKeySelection","metaKeySelection",I],compareSelectionBy:"compareSelectionBy",rowHover:[2,"rowHover","rowHover",I],loading:[2,"loading","loading",I],loadingIcon:"loadingIcon",showLoader:[2,"showLoader","showLoader",I],scrollable:[2,"scrollable","scrollable",I],scrollHeight:"scrollHeight",virtualScroll:[2,"virtualScroll","virtualScroll",I],virtualScrollItemSize:[2,"virtualScrollItemSize","virtualScrollItemSize",Y],virtualScrollOptions:"virtualScrollOptions",virtualScrollDelay:[2,"virtualScrollDelay","virtualScrollDelay",Y],frozenWidth:"frozenWidth",frozenColumns:"frozenColumns",resizableColumns:[2,"resizableColumns","resizableColumns",I],columnResizeMode:"columnResizeMode",reorderableColumns:[2,"reorderableColumns","reorderableColumns",I],contextMenu:"contextMenu",rowTrackBy:"rowTrackBy",filters:"filters",globalFilterFields:"globalFilterFields",filterDelay:[2,"filterDelay","filterDelay",Y],filterMode:"filterMode",filterLocale:"filterLocale",paginatorLocale:"paginatorLocale",totalRecords:"totalRecords",sortField:"sortField",sortOrder:"sortOrder",multiSortMeta:"multiSortMeta",selection:"selection",value:"value",virtualRowHeight:"virtualRowHeight",selectionKeys:"selectionKeys",showGridlines:[2,"showGridlines","showGridlines",I]},outputs:{selectionChange:"selectionChange",contextMenuSelectionChange:"contextMenuSelectionChange",onFilter:"onFilter",onNodeExpand:"onNodeExpand",onNodeCollapse:"onNodeCollapse",onPage:"onPage",onSort:"onSort",onLazyLoad:"onLazyLoad",sortFunction:"sortFunction",onColResize:"onColResize",onColReorder:"onColReorder",onNodeSelect:"onNodeSelect",onNodeUnselect:"onNodeUnselect",onContextMenuSelect:"onContextMenuSelect",onHeaderCheckboxToggle:"onHeaderCheckboxToggle",onEditInit:"onEditInit",onEditComplete:"onEditComplete",onEditCancel:"onEditCancel",selectionKeysChange:"selectionKeysChange"},standalone:!1,features:[X([ze,Q]),se,rt],decls:10,vars:10,consts:[["table",""],["scrollableView",""],["scrollableFrozenView",""],["resizeHelper",""],["reorderIndicatorUp",""],["reorderIndicatorDown",""],[3,"class",4,"ngIf"],[3,"rows","first","totalRecords","pageLinkSize","styleClass","alwaysShow","rowsPerPageOptions","templateLeft","templateRight","appendTo","currentPageReportTemplate","showFirstLastIcon","dropdownItemTemplate","showCurrentPageReport","showJumpToPageDropdown","showPageLinks","locale","onPageChange",4,"ngIf"],[3,"class","display",4,"ngIf"],[4,"ngIf"],["data-p-icon","spinner",3,"spin","class",4,"ngIf"],["data-p-icon","spinner",3,"spin"],[4,"ngTemplateOutlet"],[3,"onPageChange","rows","first","totalRecords","pageLinkSize","styleClass","alwaysShow","rowsPerPageOptions","templateLeft","templateRight","appendTo","currentPageReportTemplate","showFirstLastIcon","dropdownItemTemplate","showCurrentPageReport","showJumpToPageDropdown","showPageLinks","locale"],["pTemplate","firstpagelinkicon"],["pTemplate","previouspagelinkicon"],["pTemplate","lastpagelinkicon"],["pTemplate","nextpagelinkicon"],["role","table",3,"ngClass","ngStyle"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["role","rowgroup"],["role","rowgroup",3,"pTreeTableBody","pTreeTableBodyTemplate"],[3,"ngClass","ttScrollableView","frozen","ngStyle","scrollHeight",4,"ngIf"],[3,"ttScrollableView","frozen","scrollHeight","ngStyle"],[3,"ngClass","ttScrollableView","frozen","ngStyle","scrollHeight"],["data-p-icon","arrow-down",4,"ngIf"],["data-p-icon","arrow-down"],["data-p-icon","arrow-up",4,"ngIf"],["data-p-icon","arrow-up"]],template:function(t,n){t&1&&c(0,fn,4,6,"div",6)(1,_n,2,3,"div",6)(2,Dn,5,21,"p-paginator",7)(3,Fn,9,24,"div",6)(4,On,4,12,"div",6)(5,Jn,5,21,"p-paginator",7)(6,Zn,2,3,"div",6)(7,Yn,2,4,"div",8)(8,no,4,6,"span",8)(9,ao,4,6,"span",8),t&2&&(a("ngIf",n.loading&&n.showLoader),s(),a("ngIf",n.captionTemplate||n._captionTemplate),s(),a("ngIf",n.paginator&&(n.paginatorPosition==="top"||n.paginatorPosition=="both")),s(),a("ngIf",!n.scrollable),s(),a("ngIf",n.scrollable),s(),a("ngIf",n.paginator&&(n.paginatorPosition==="bottom"||n.paginatorPosition=="both")),s(),a("ngIf",n.summaryTemplate||n._summaryTemplate),s(),a("ngIf",n.resizableColumns),s(),a("ngIf",n.reorderableColumns),s(),a("ngIf",n.reorderableColumns))},dependencies:()=>[be,ee,he,He,si,ne,Ye,$e,Je,ll,bi],encapsulation:2})}return i})(),bi=(()=>{class i{tt;treeTableService;cd;columns;template;frozen;serializedNodes;scrollerOptions;subscription;constructor(e,t,n){this.tt=e,this.treeTableService=t,this.cd=n,this.subscription=this.tt.tableService.uiUpdateSource$.subscribe(()=>{this.tt.virtualScroll&&this.cd.detectChanges()})}getScrollerOption(e,t){return this.tt.virtualScroll?(t=t||this.scrollerOptions,t?t[e]:null):null}getRowIndex(e){let t=this.getScrollerOption("getItemOptions");return t?t(e).index:e}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}static \u0275fac=function(t){return new(t||i)(D(oe),D(ze),D(Re))};static \u0275cmp=j({type:i,selectors:[["","pTreeTableBody",""]],inputs:{columns:[0,"pTreeTableBody","columns"],template:[0,"pTreeTableBodyTemplate","template"],frozen:[2,"frozen","frozen",I],serializedNodes:"serializedNodes",scrollerOptions:"scrollerOptions"},standalone:!1,attrs:so,decls:2,vars:3,consts:[["ngFor","",3,"ngForOf","ngForTrackBy"],[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,n){t&1&&c(0,mo,1,1,"ng-template",0)(1,fo,2,5,"ng-container",1),t&2&&(a("ngForOf",n.serializedNodes||n.tt.serializedValue)("ngForTrackBy",n.tt.rowTrackBy),s(),a("ngIf",n.tt.isEmpty()))},dependencies:[ct,ee,he],encapsulation:2})}return i})(),ll=(()=>{class i extends ge{tt;el;zone;columns;frozen;scrollHeaderViewChild;scrollHeaderBoxViewChild;scrollBodyViewChild;scrollTableViewChild;scrollLoadingTableViewChild;scrollFooterViewChild;scrollFooterBoxViewChild;scrollableAlignerViewChild;scroller;headerScrollListener;bodyScrollListener;footerScrollListener;frozenSiblingBody;totalRecordsSubscription;_scrollHeight;preventBodyScrollPropagation;_componentStyle=U(Q);get scrollHeight(){return this._scrollHeight}set scrollHeight(e){this._scrollHeight=e,e!=null&&(e.includes("%")||e.includes("calc"))&&console.log('Percentage scroll height calculation is removed in favor of the more performant CSS based flex mode, use scrollHeight="flex" instead.')}constructor(e,t,n){super(),this.tt=e,this.el=t,this.zone=n}ngAfterViewInit(){if(super.ngAfterViewInit(),we(this.platformId)){if(this.frozen)this.scrollableAlignerViewChild&&this.scrollableAlignerViewChild.nativeElement&&(this.scrollableAlignerViewChild.nativeElement.style.height=gt()+"px");else{(this.tt.frozenColumns||this.tt.frozenBodyTemplate||this.tt._frozenBodyTemplate)&&Qe(this.el.nativeElement,"p-treetable-unfrozen-view");let e=this.el.nativeElement.previousElementSibling;if(e&&(this.tt.virtualScroll?this.frozenSiblingBody=N(e,".p-scroller-viewport"):this.frozenSiblingBody=N(e,".p-treetable-scrollable-body")),this.scrollHeight){let t=We();this.scrollHeaderBoxViewChild.nativeElement.style.paddingRight=t+"px",this.scrollFooterBoxViewChild&&this.scrollFooterBoxViewChild.nativeElement&&(this.scrollFooterBoxViewChild.nativeElement.style.paddingRight=t+"px")}}this.bindEvents()}}bindEvents(){we(this.platformId)&&this.zone.runOutsideAngular(()=>{this.scrollHeaderViewChild&&this.scrollHeaderViewChild.nativeElement&&(this.headerScrollListener=this.renderer.listen(this.scrollHeaderBoxViewChild?.nativeElement,"scroll",this.onHeaderScroll.bind(this))),this.scrollFooterViewChild&&this.scrollFooterViewChild.nativeElement&&(this.footerScrollListener=this.renderer.listen(this.scrollFooterViewChild.nativeElement,"scroll",this.onFooterScroll.bind(this))),this.frozen||(this.tt.virtualScroll?this.bodyScrollListener=this.renderer.listen((this.scroller?.getElementRef()).nativeElement,"scroll",this.onBodyScroll.bind(this)):this.bodyScrollListener=this.renderer.listen(this.scrollBodyViewChild?.nativeElement,"scroll",this.onBodyScroll.bind(this)))})}unbindEvents(){we(this.platformId)&&(this.scrollHeaderViewChild&&this.scrollHeaderViewChild.nativeElement&&this.headerScrollListener&&(this.headerScrollListener(),this.headerScrollListener=null),this.scrollFooterViewChild&&this.scrollFooterViewChild.nativeElement&&this.footerScrollListener&&(this.footerScrollListener(),this.footerScrollListener=null),this.scrollBodyViewChild&&this.scrollBodyViewChild.nativeElement&&this.bodyScrollListener&&(this.bodyScrollListener(),this.bodyScrollListener=null),this.scroller&&this.scroller.getElementRef()&&this.bodyScrollListener&&(this.bodyScrollListener(),this.bodyScrollListener=null))}onHeaderScroll(){let e=this.scrollHeaderViewChild?.nativeElement.scrollLeft;this.scrollBodyViewChild.nativeElement.scrollLeft=e,this.scrollFooterViewChild&&this.scrollFooterViewChild.nativeElement&&(this.scrollFooterViewChild.nativeElement.scrollLeft=e),this.preventBodyScrollPropagation=!0}onFooterScroll(){let e=this.scrollFooterViewChild?.nativeElement.scrollLeft;this.scrollBodyViewChild.nativeElement.scrollLeft=e,this.scrollHeaderViewChild&&this.scrollHeaderViewChild.nativeElement&&(this.scrollHeaderViewChild.nativeElement.scrollLeft=e),this.preventBodyScrollPropagation=!0}onBodyScroll(e){if(this.preventBodyScrollPropagation){this.preventBodyScrollPropagation=!1;return}this.scrollHeaderViewChild&&this.scrollHeaderViewChild.nativeElement&&(this.scrollHeaderBoxViewChild.nativeElement.style.marginLeft=-1*e.target.scrollLeft+"px"),this.scrollFooterViewChild&&this.scrollFooterViewChild.nativeElement&&(this.scrollFooterBoxViewChild.nativeElement.style.marginLeft=-1*e.target.scrollLeft+"px"),this.frozenSiblingBody&&(this.frozenSiblingBody.scrollTop=e.target.scrollTop)}scrollToVirtualIndex(e){this.scroller&&this.scroller.scrollToIndex(e)}scrollTo(e){this.scroller?this.scroller.scrollTo(e):this.scrollBodyViewChild?.nativeElement.scrollTo?this.scrollBodyViewChild.nativeElement.scrollTo(e):(this.scrollBodyViewChild.nativeElement.scrollLeft=e.left,this.scrollBodyViewChild.nativeElement.scrollTop=e.top)}ngOnDestroy(){super.ngOnDestroy(),this.unbindEvents(),this.frozenSiblingBody=null}static \u0275fac=function(t){return new(t||i)(D(oe),D(Fe),D(fe))};static \u0275cmp=j({type:i,selectors:[["","ttScrollableView",""]],viewQuery:function(t,n){if(t&1&&(F(bo,5),F(_o,5),F(yo,5),F(To,5),F(xo,5),F(vo,5),F(Co,5),F(wo,5),F(So,5)),t&2){let l;f(l=b())&&(n.scrollHeaderViewChild=l.first),f(l=b())&&(n.scrollHeaderBoxViewChild=l.first),f(l=b())&&(n.scrollBodyViewChild=l.first),f(l=b())&&(n.scrollTableViewChild=l.first),f(l=b())&&(n.scrollLoadingTableViewChild=l.first),f(l=b())&&(n.scrollFooterViewChild=l.first),f(l=b())&&(n.scrollFooterBoxViewChild=l.first),f(l=b())&&(n.scrollableAlignerViewChild=l.first),f(l=b())&&(n.scroller=l.first)}},inputs:{columns:[0,"ttScrollableView","columns"],frozen:[2,"frozen","frozen",I],scrollHeight:"scrollHeight"},standalone:!1,features:[X([Q]),se],attrs:Eo,decls:13,vars:20,consts:[["scrollHeader",""],["scrollHeaderBox",""],["buildInItems",""],["scroller",""],["content",""],["loader",""],["scrollBody",""],["scrollTable",""],["scrollableAligner",""],["scrollFooter",""],["scrollFooterBox",""],[3,"ngStyle"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["role","rowgroup"],[3,"items","styleClass","style","scrollHeight","itemSize","lazy","options","onLazyLoad",4,"ngIf"],[4,"ngIf"],[3,"class",4,"ngIf"],[3,"onLazyLoad","items","styleClass","scrollHeight","itemSize","lazy","options"],["role","table",3,"ngClass","ngStyle"],["role","rowgroup",3,"pTreeTableBody","pTreeTableBodyTemplate","serializedNodes","frozen"],[3,"background-color",4,"ngIf"],[3,"ngClass","ngStyle"]],template:function(t,n){t&1&&(d(0,"div",null,0)(2,"div",null,1)(4,"table",11),c(5,Do,1,0,"ng-container",12),d(6,"thead",13),c(7,No,1,0,"ng-container",12),p()()()(),c(8,Ro,5,11,"p-scroller",14)(9,Bo,4,12,"ng-container",15)(10,Qo,5,17,"ng-template",null,2,Ce)(12,jo,8,18,"div",16)),t&2&&(T(n.cx("scrollableHeader")),s(2),T(n.cx("scrollableHeaderBox")),s(2),T(n.cn(n.cx("scrollableHeaderTable"),n.tt.tableStyleClass)),a("ngStyle",n.tt.tableStyle),s(),a("ngTemplateOutlet",n.frozen?n.tt.frozenColGroupTemplate||n.tt._frozenColGroupTemplate||n.tt.colGroupTemplate||n.tt._colGroupTemplate:n.tt.colGroupTemplate||n.tt._colGroupTemplate)("ngTemplateOutletContext",R(16,W,n.columns)),s(),T(n.cx("thead")),s(),a("ngTemplateOutlet",n.frozen?n.tt.frozenHeaderTemplate||n.tt._frozenHeaderTemplate||n.tt.headerTemplate||n.tt._headerTemplate:n.tt.headerTemplate||n.tt._headerTemplate)("ngTemplateOutletContext",R(18,W,n.columns)),s(),a("ngIf",n.tt.virtualScroll),s(),a("ngIf",!n.tt.virtualScroll),s(3),a("ngIf",n.tt.footerTemplate||n.tt._footerTemplate))},dependencies:()=>[be,ee,he,He,et,bi],encapsulation:2})}return i})();var _i=(()=>{class i extends ge{tt;tableService;cd;disabled;rowNode;checked;partialChecked;focused;subscription;_componentStyle=U(Q);
507constructor(e,t,n){super(),this.tt=e,this.tableService=t,this.cd=n,this.subscription=this.tt.tableService.selectionSource$.subscribe(()=>{this.tt.selectionKeys?(this.checked=this.tt.isNodeSelected(this.rowNode.node),this.partialChecked=this.tt.isNodePartialSelected(this.rowNode.node)):(this.checked=this.tt.isSelected(this.rowNode.node),this.partialChecked=this.rowNode.node.partialSelected),this.cd.markForCheck()})}ngOnInit(){super.ngOnInit(),this.tt.selectionKeys?(this.checked=this.tt.isNodeSelected(this.rowNode.node),this.partialChecked=this.tt.isNodePartialSelected(this.rowNode.node)):(this.checked=this.tt.isSelected(this.rowNode.node),this.partialChecked=this.rowNode.node.partialSelected)}onClick(e){if(!this.disabled)if(this.tt.selectionKeys){let t=!this.checked;this.tt.toggleCheckbox({originalEvent:e,check:t,rowNode:this.rowNode})}else this.tt.toggleNodeWithCheckbox({originalEvent:e,rowNode:this.rowNode});ft()}onFocus(){this.focused=!0}onBlur(){this.focused=!1}ngOnDestroy(){super.ngOnDestroy(),this.subscription&&this.subscription.unsubscribe()}static \u0275fac=function(t){return new(t||i)(D(oe),D(ze),D(Re))};static \u0275cmp=j({type:i,selectors:[["p-treeTableCheckbox"],["p-treetable-checkbox"],["p-tree-table-checkbox"]],inputs:{disabled:[2,"disabled","disabled",I],rowNode:[0,"value","rowNode"]},standalone:!1,features:[X([Q]),se],decls:2,vars:7,consts:[[3,"onChange","ngModel","binary","disabled","indeterminate","styleClass","tabIndex"],[4,"ngIf"],["pTemplate","icon"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,n){t&1&&(d(0,"p-checkbox",0),E("onChange",function(r){return n.onClick(r)}),c(1,Xo,2,0,"ng-container",1),p()),t&2&&(a("ngModel",n.checked)("binary",!0)("disabled",n.disabled)("indeterminate",n.partialChecked)("styleClass",n.cx("pcNodeCheckbox"))("tabIndex",-1),s(),a("ngIf",n.tt.checkboxIconTemplate||n.tt._checkboxIconTemplate))},dependencies:()=>[ee,he,ne,Te,Ie,ke],encapsulation:2,changeDetection:0})}return i})();var yi=(()=>{class i extends ge{tt;el;zone;get level(){return this.rowNode?.level+1}get styleClass(){return this.rowNode?.node.styleClass||""}get expanded(){return this.rowNode?.node.expanded}rowNode;_componentStyle=U(Q);constructor(e,t,n){super(),this.tt=e,this.el=t,this.zone=n}onKeyDown(e){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"Tab":this.onTabKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;default:break}}onArrowDownKey(e){let t=this.el?.nativeElement?.nextElementSibling;t&&this.focusRowChange(e.currentTarget,t),e.preventDefault()}onArrowUpKey(e){let t=this.el?.nativeElement?.previousElementSibling;t&&this.focusRowChange(e.currentTarget,t),e.preventDefault()}onArrowRightKey(e){let t=e.currentTarget;!(N(t,"button").style.visibility==="hidden")&&!this.expanded&&this.rowNode.node.children&&(this.expand(e),t.tabIndex=-1),e.preventDefault()}onArrowLeftKey(e){let t=this.tt.el?.nativeElement,n=ue(t,'[aria-expanded="true"]'),l=n[n.length-1];this.expanded&&this.collapse(e),l&&(this.tt.toggleRowIndex=_e(l)),this.restoreFocus(),e.preventDefault()}onHomeKey(e){let t=N(this.tt.el?.nativeElement,`tr[aria-level="${this.level}"]`);t&&Se(t),e.preventDefault()}onEndKey(e){let t=ue(this.tt.el?.nativeElement,`tr[aria-level="${this.level}"]`),n=t[t.length-1];Se(n),e.preventDefault()}onTabKey(e){let t=this.el.nativeElement?[...ue(this.el.nativeElement.parentNode,"tr")]:void 0;if(t&&ut(t)){let n=t.some(l=>je(l,"data-p-highlight")||l.getAttribute("aria-checked")==="true");if(t.forEach(l=>{l.tabIndex=-1}),n){let l=t.filter(r=>je(r,"data-p-highlight")||r.getAttribute("aria-checked")==="true");l[0].tabIndex=0;return}t[0].tabIndex=0}}expand(e){this.tt.toggleRowIndex=_e(this.el.nativeElement),this.rowNode.node.expanded=!0,this.tt.updateSerializedValue(),this.tt.tableService.onUIUpdate(this.tt.value),this.rowNode.node.children?this.restoreFocus(this.tt.toggleRowIndex+1):this.restoreFocus(),this.tt.onNodeExpand.emit({originalEvent:e,node:this.rowNode.node})}collapse(e){this.rowNode.node.expanded=!1,this.tt.updateSerializedValue(),this.tt.tableService.onUIUpdate(this.tt.value),this.tt.onNodeCollapse.emit({originalEvent:e,node:this.rowNode.node})}focusRowChange(e,t,n){e.tabIndex="-1",t.tabIndex="0",Se(t)}restoreFocus(e){this.zone.runOutsideAngular(()=>{setTimeout(()=>{let t=this.tt.el?.nativeElement,n=N(t,".p-treetable-tbody").children[e||this.tt.toggleRowIndex],l=[...ue(t,"tr")];l&&l.forEach(r=>{n.isSameNode(r)||(r.tabIndex=-1)}),n&&(n.tabIndex=0,n.focus())},25)})}static \u0275fac=function(t){return new(t||i)(D(oe),D(Fe),D(fe))};static \u0275dir=st({type:i,selectors:[["","ttRow",""]],hostVars:7,hostBindings:function(t,n){t&1&&E("
507keydown",function(r){return n.onKeyDown(r)}),t&2&&(dt("tabIndex","0")("role",n.row),de("aria-expanded",n.expanded)("aria-level",n.level)("data-pc-section",n.row),T("p-element "+n.styleClass))},inputs:{rowNode:[0,"ttRow","rowNode"]},standalone:!1,features:[X([Q]),se]})}return i})(),Ti=(()=>{class i extends ge{tt;rowNode;_componentStyle=U(Q);constructor(e){super(),this.tt=e}get toggleButtonAriaLabel(){return this.config.translation?this.rowNode.expanded?this.config.translation.aria.collapseRow:this.config.translation.aria.expandRow:void 0}onClick(e){this.rowNode.node.expanded=!this.rowNode.node.expanded,this.rowNode.node.expanded?this.tt.onNodeExpand.emit({originalEvent:e,node:this.rowNode.node}):this.tt.onNodeCollapse.emit({originalEvent:e,node:this.rowNode.node}),this.tt.updateSerializedValue(),this.tt.tableService.onUIUpdate(this.tt.value),e.preventDefault()}static \u0275fac=function(t){return new(t||i)(D(oe))};static \u0275cmp=j({type:i,selectors:[["p-treeTableToggler"],["p-treetabletoggler"],["p-treetable-toggler"]],inputs:{rowNode:"rowNode"},standalone:!1,features:[X([Q]),se],decls:3,vars:14,consts:[["type","button","tabindex","-1","pRipple","",3,"click"],[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["data-p-icon","chevron-down",4,"ngIf"],["data-p-icon","chevron-right",4,"ngIf"],["data-p-icon","chevron-down"],["data-p-icon","chevron-right"]],template:function(t,n){t&1&&(d(0,"button",0),E("click",function(r){return n.onClick(r)}),c(1,el,3,2,"ng-container",1)(2,il,1,0,null,2),p()),t&2&&(T(n.cx("toggler")),pe("visibility",n.rowNode.node.leaf===!1||n.rowNode.node.children&&n.rowNode.node.children.length?"visible":"hidden")("margin-inline-start",n.rowNode.level*16+"px"),de("data-pc-section","rowtoggler")("data-pc-group-section","rowactionbutton")("aria-label",n.toggleButtonAriaLabel),s(),a("ngIf",!n.tt.togglerIconTemplate&&!n.tt._togglerIconTemplate),s(),a("ngTemplateOutlet",n.tt.togglerIconTemplate||n.tt._togglerIconTemplate)("ngTemplateOutletContext",R(12,W,n.rowNode.node.expanded)))},dependencies:()=>[ee,he,Mt,Xe,Ze],encapsulation:2})}return i})(),xi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=at({type:i});static \u0275inj=lt({imports:[ht,di,et,Ye,$e,Je,Nt,Pt,Lt,zt,Dt,Xe,Ze,Te,Ge,It,Ge]})}return i})();var al=()=>({label:"Grouped",value:"grouped"}),sl=()=>({label:"Flat",value:"flat"}),dl=(i,o)=>[i,o],pl=()=>({minWidth:"18rem"}),cl=()=>({width:"500px"}),hl=()=>({minWidth:"16rem"});function ul(i,o){if(i&1){let e=O();
507d(0,"p-message",36)(1,"div",37)(2,"span",17)(3,"strong"),_(4),p(),_(5," expense type(s) are not filed under any income statement head, so their costs are left out of the Income Statement report. Select them below and file them under Cost of Goods Sold, Operating, Non Operating or Income Tax. "),p(),d(6,"p-button",38),E("onClick",function(){L(e);let n=h();return P(n.showUnmappedOnly())}),p()()()}if(i&2){let e=h();s(4),ie(e.unmappedCount),s(2),a("text",!0)}}function ml(i,o){if(i&1&&(d(0,"div",46),y(1,"i",47),_(2),p()),i&2){let e=h(2);s(2),Oe(" ",e.selectedTypes.length-e.carriedAlongCount," will be re-filed. The other ",e.carriedAlongCount," sit underneath them and move along, keeping their current parent so the hierarchy stays intact. ")}}function gl(i,o){if(i&1){let e=O();d(0,"div",39)(1,"div",40)(2,"span",41),_(3),p(),d(4,"p-select",42),J("ngModelChange",function(n){L(e);let l=h();return $(l.bulkHeadId,n)||(l.bulkHeadId=n),P(n)}),p(),d(5,"p-button",43),E("onClick",function(){L(e);let n=h();return P(n.assignSelectedToHead())}),p(),d(6,"p-button",44),E("onClick",function(){L(e);let n=h();return P(n.clearSelection())}),p()(),c(7,ml,3,2,"div",45),p()}if(i&2){let e=h();s(3),G("",e.selectedTypes.length," selected"),s(),te(Z(9,hl)),q("ngModel",e.bulkHeadId),a("options",e.headTypes)("showClear",!0),s(),a("loading",e.assigningHead),s(),a("text",!0),s(),a("ngIf",e.carriedAlongCount>0)}}function fl(i,o){if(i&1){let e=O();B(0),d(1,"p-button",48),E("onClick",function(){L(e);let n=h();return P(n.expandAll())}),p(),d(2,"p-button",49),E("onClick",function(){L(e);let n=h();return P(n.collapseAll())}),p(),K()}i&2&&(s(),a("text",!0),s(),a("text",!0))}function bl(i,o){i&1&&(d(0,"tr"),y(1,"th",54),d(2,"th"),_(3,"Name"),p(),d(4,"th",55),_(5,"Code"),p(),d(6,"th",56),_(7,"Status"),p(),d(8,"th",57),_(9,"Actions"),p()())}function _l(i,o){if(i&1&&y(0,"p-treeTableCheckbox",66),i&2){let e=h().$implicit;a("value",e)}}function yl(i,o){i&1&&y(0,"i",67)}function Tl(i,o){i&1&&y(0,"p-tag",68)}function xl(i,o){if(i&1&&(d(0,"span",69),_(1),p()),i&2){let e=h().rowData;s(),Oe(" ",e.totalCount," type",e.totalCount===1?"":"s"," ")}}function vl(i,o){i&1&&(d(0,"span",69),_(1," nothing filed here yet "),p())}function Cl(i,o){if(i&1&&(d(0,"span",69),_(1),p()),i&2){let e=h().rowData;s(),G(" (",e.totalCount,") ")}}function wl(i,o){if(i&1&&y(0,"p-tag",70),i&2){let e=h().rowData,t=h(2);a("value",t.getStatusText(e.type.isActive))("severity",t.getStatusSeverity(e.type.isActive))}}function Sl(i,o){if(i&1){let e=O();d(0,"p-button",71),E("onClick",function(){L(e);let n=h().rowData,l=h(2);return P(l.editExpenseType(n.type))}),p()}}function El(i,o){if(i&1&&(d(0,"tr",58)(1,"td"),c(2,_l,1,1,"p-treeTableCheckbox",59),p(),d(3,"td"),y(4,"p-treeTableToggler",60),d(5,"span"),_(6),p(),c(7,yl,1,0,"i",61)(8,Tl,1,0,"p-tag",62)(9,xl,2,2,"span",63)(10,vl,2,0,"span",63)(11,Cl,2,1,"span",63),p(),d(12,"td"),_(13),p(),d(14,"td"),c(15,wl,1,2,"p-tag",64),p(),d(16,"td"),c(17,Sl,1,0,"p-button",65),p()()),i&2){let e=o.$implicit,t=o.rowData,n=h(2);a("ttRow",e)("ngClass","row-"+t.kind),s(2),a("ngIf",t.kind==="type"),s(2),a("rowNode",e),s(),ce("font-bold",t.kind!=="type"),s(),ie(t.label),s(),a("ngIf",t.type==null?null:t.type.isSystem),s(),a("ngIf",t.kind==="unmapped"),s(),a("ngIf",t.kind!=="type"&&t.totalCount>0),s(),a("ngIf",t.kind==="head"&&t.totalCount===0),s(),a("ngIf",t.kind==="type"&&t.totalCount>0),s(2),ie((t.type==null?null:t.type.code)||"-"),s(2),a("ngIf",t.type),s(2),a("ngIf",t.type&&n.canEditExpenseType(t.type))}}function Il(i,o){if(i&1&&(d(0,"tr")(1,"td",72),_(2),p()()),i&2){let e=h(2);s(2),G(" ",e.searchText.trim()?"No expense types match that search.":"No expense types found."," ")}}function kl(i,o){if(i&1){let e=O();d(0,"p-treeTable",50),J("selectionChange",function(n){L(e);let l=h();return $(l.selectedNodes,n)||(l.selectedNodes=n),P(n)}),c(1,bl,10,0,"ng-template",51)(2,El,18,15,"ng-template",52)(3,Il,3,1,"ng-template",53),p()}if(i&2){let e=h();a("value",e.treeNodes)("loading",e.loading),q("selection",e.selectedNodes)}}function Ml(i,o){i&1&&(d(0,"tr")(1,"th",54),y(2,"p-tableHeaderCheckbox"),p(),d(3,"th"),_(4,"Name"),p(),d(5,"th"),_(6,"Code"),p(),d(7,"th"),_(8,"Parent"),p(),d(9,"th"),_(10,"Income Statement Head"),y(11,"app-help-icon",4),p(),d(12,"th"),_(13,"Status"),p(),d(14,"th"),_(15,"Actions"),p()())}function zl(i,o){i&1&&y(0,"i",67)}function Dl(i,o){i&1&&y(0,"p-tag",77)}function Nl(i,o){if(i&1&&(d(0,"span"),_(1),p()),i&2){let e=h().$implicit,t=h(2);s(),ie(t.getHeadName(e))}}function Ll(i,o){i&1&&y(0,"p-tag",78)}function Pl(i,o){if(i&1){let e=O();d(0,"p-button",71),E("onClick",function(){L(e);let n=h().$implicit,l=h(2);return P(l.editExpenseType(n))}),p()}}function Fl(i,o){if(i&1&&(d(0,"tr")(1,"td"),y(2,"p-tableCheckbox",66),p(),d(3,"td"),_(4),c(5,zl,1,0,"i",61),p(),d(6,"td"),_(7),p(),d(8,"td"),_(9),p(),d(10,"td"),c(11,Dl,1,0,"p-tag",74)(12,Nl,2,1,"span",18)(13,Ll,1,0,"p-tag",75),p(),d(14,"td"),y(15,"p-tag",70),p(),d(16,"td")(17,"div",76),c(18,Pl,1,0,"p-button",65),p()()()),i&2){let e=o.$implicit,t=h(2);s(2),a("value",e),s(2),G(" ",e.name," "),s(),a("ngIf",e.isSystem),s(2),ie(e.code||"-"),s(2),ie(t.getParentName(e)||"-"),s(2),a("ngIf",t.isHead(e)),s(),a("ngIf",!t.isHead(e)&&t.getHeadName(e)),s(),a("ngIf",t.isUnmapped(e)),s(2),a("value",t.getStatusText(e.isActive))("severity",t.getStatusSeverity(e.isActive)),s(3),a("ngIf",t.canEditExpenseType(e))}}function Vl(i,o){if(i&1&&(d(0,"tr")(1,"td",79),_(2),p()()),i&2){let e=h(2);s(2),G(" ",e.searchText.trim()?"No expense types match that search.":"No expense types found."," ")}}function Ol(i,o){if(i&1){let e=O();d(0,"p-table",73),J("selectionChange",function(n){L(e);let l=h();return $(l.selectedFlatTypes,n)||(l.selectedFlatTypes=n),P(n)}),c(1,Ml,16,0,"ng-template",51)(2,Fl,19,11,"ng-template",52)(3,Vl,3,1,"ng-template",53),p()}if(i&2){let e=h();a("value",e.filteredExpenseTypes)("loading",e.loading),q("selection",e.selectedFlatTypes),a("scrollable",!0)}}function Rl(i,o){if(i&1&&(d(0,"textarea",80),_(1,"      "),p()),i&2){let e,t=h();ce("ng-invalid",((e=t.expenseTypeForm.get("names"))==null?null:e.invalid)&&
507((e=t.expenseTypeForm.get("names"))==null?null:e.touched)),a("placeholder",t.isEditMode?"Enter expense type name":"Enter expense types separated by commas (e.g., Travel, Meals, Office Supplies)")}}function Hl(i,o){if(i&1&&y(0,"input",81),i&2){let e,t=h();ce("ng-invalid",((e=t.expenseTypeForm.get("names"))==null?null:e.invalid)&&((e=t.expenseTypeForm.get("names"))==null?null:e.touched))}}function Bl(i,o){i&1&&(d(0,"span"),_(1,"Name is required."),p())}function Kl(i,o){i&1&&(d(0,"span"),_(1,"Input must be less than 2000 characters."),p())}function Al(i,o){if(i&1&&(d(0,"small",82),c(1,Bl,2,0,"span",18)(2,Kl,2,0,"span",18),p()),i&2){let e,t,n=h();s(),a("ngIf",(e=n.expenseTypeForm.get("names"))==null||e.errors==null?null:e.errors.required),s(),a("ngIf",(t=n.expenseTypeForm.get("names"))==null||t.errors==null?null:t.errors.maxlength)}}function Ql(i,o){i&1&&(d(0,"small",83),_(1," Enter expense types separated by commas (e.g., Travel, Meals, Office Supplies). "),p())}function Ul(i,o){if(i&1&&(d(0,"span"),_(1),p()),i&2){let e=h(2);s(),G(" ",e.isEditMode?"Code must be 10 characters or less.":"Code entry is too long."," ")}}function Wl(i,o){if(i&1&&(d(0,"small",82),c(1,Ul,2,1,"span",18),p()),i&2){let e,t=h();s(),a("ngIf",(e=t.expenseTypeForm.get("code"))==null||e.errors==null?null:e.errors.maxlength)}}function jl(i,o){i&1&&(d(0,"small",83),_(1," Enter one code per name (comma separated), or a single code \u2014 the first type uses it and each following type increments the number by 1 (e.g. 100 \u2192 100, 101, 102). Leave empty for no code. "),p())}function Gl(i,o){if(i&1){let e=O();d(0,"p-button",84),E("onClick",function(){L(e);let n=h();return P(n.hideDialog())}),p(),d(1,"p-button",85),E("onClick",function(){L(e);let n=h();return P(n.saveExpenseType())}),p()}if(i&2){let e=h();s(),a("loading",e.loading)}}var vi=class i{constructor(o,e,t,n){this.api=o;this.fb=e;this.messageService=t;this.helpTextService=n;this.expenseTypeForm=this.fb.group({names:["",[me.required,me.maxLength(2e3)]],code:["",[me.maxLength(200)]],isActive:[!0],parentId:[null]})}expenseTypes=[];loading=!1;expenseTypeDialog=!1;deleteDialog=!1;selectedExpenseType=null;expenseTypeForm;isEditMode=!1;availableParentTypes=[];searchText="";showActiveOnly=!1;viewMode="grouped";treeNodes=[];selectedNodes=[];selectedFlatTypes=[];bulkHeadId=null;assigningHead=!1;ngOnInit(){this.helpTextService.loadHelpTexts().catch(()=>{}),this.loadExpenseTypes()}loadExpenseTypes(){this.loading=!0,this.api.getExpenseTypes().subscribe({next:o=>{this.expenseTypes=o,localStorage.setItem("rc_expenseTypes",JSON.stringify(o)),this.setupAvailableParentTypes(),this.rebuildTree(),this.loading=!1},error:o=>{this.loading=!1,this.messageService.add({severity:"error",summary:"Error",detail:"Failed to load expense types"})}})}setupAvailableParentTypes(){this.availableParentTypes=this.expenseTypes.filter(o=>o.isActive)}openNew(){this.expenseTypeForm.reset(),this.expenseTypeForm.patchValue({isActive:!0,parentId:null}),this.expenseTypeForm.get("code")?.setValidators([me.maxLength(200)]),this.expenseTypeForm.get("code")?.updateValueAndValidity(),this.isEditMode=!1,this.selectedExpenseType=null,this.expenseTypeDialog=!0}editExpenseType(o){if(!this.canEditExpenseType(o)){this.messageService.add({severity:"info",summary:"Not editable",detail:"System expense types are built in and cannot be modified."});return}this.expenseTypeForm.patchValue({names:o.name,code:o.code||"",isActive:o.isActive,parentId:o.parentId||null}),this.expenseTypeForm.get("code")?.setValidators([me.maxLength(10)]),this.expenseTypeForm.get("code")?.updateValueAndValidity(),this.isEditMode=!0,this.selectedExpenseType=o,this.expenseTypeDialog=!0}hideDialog(){this.expenseTypeDialog=!1,this.expenseTypeForm.reset()}
507saveExpenseType(){if(this.expenseTypeForm.invalid){this.expenseTypeForm.markAllAsTouched(),this.messageService.add({severity:"error",summary:"Validation Error",detail:"Please check the form fields and try again."});return}let o=this.expenseTypeForm.value;if(this.isEditMode&&this.selectedExpenseType){let e={name:o.names,code:o.code||void 0,parentId:o.parentId||void 0};this.api.updateExpenseType(this.selectedExpenseType.id,e).subscribe({next:()=>{this.hideDialog(),this.loadExpenseTypes(),this.messageService.add({severity:"success",summary:"Success",detail:"Expense type updated successfully"})},error:t=>{this.messageService.add({severity:"error",summary:"Error",detail:this.serverMessage(t,"Failed to update expense type")})}})}else this.bulkCreateExpenseTypes(o.names,o.code,o.parentId)}bulkCreateExpenseTypes(o,e,t){let n=(o||"").split(",").map(m=>m.trim()).filter(m=>m.length>0),l=(e||"").split(",").map(m=>m.trim()).filter(m=>m.length>0);if(n.length===0){this.messageService.add({severity:"error",summary:"Validation Error",detail:"Please enter at least one expense type name."});return}if(l.length>1&&l.length!==n.length){this.messageService.add({severity:"error",summary:"Validation Error",detail:`You provided ${l.length} codes for ${n.length} names. Provide one code per name, a single code, or leave the code empty.`,life:8e3});return}let r=l.filter(m=>m.length>10);if(r.length>0){this.messageService.add({severity:"error",summary:"Validation Error",detail:`Each code must be 10 characters or less. Too long: ${r.join(", ")}`,life:8e3});return}let u={names:n.join(","),codes:l.length>0?l.join(","):void 0,parentId:t||void 0};this.loading=!0,this.api.createExpenseTypesBulk(u).subscribe({next:m=>{this.loading=!1,this.hideDialog(),this.loadExpenseTypes(),m.created.length>0&&this.messageService.add({severity:"success",summary:"Success",detail:`Successfully created ${m.created.length} expense type(s).`,life:3e3}),m.duplicates.length>0&&this.messageService.add({severity:"warn",summary:"Some Items Skipped",detail:`Already existing and skipped: ${m.duplicates.join(", ")}`,life:8e3})},error:m=>{this.loading=!1;let x=ni(m);this.messageService.add({severity:"error",summary:"Error",detail:x.details?.join(", ")||x.message})}})}deleteExpenseType(o){this.selectedExpenseType=o,this.deleteDialog=!0}confirmDelete(){this.selectedExpenseType&&this.api.deleteExpenseType(this.selectedExpenseType.id).subscribe({next:()=>{this.deleteDialog=!1,this.selectedExpenseType=null,this.loadExpenseTypes(),this.messageService.add({severity:"success",summary:"Success",detail:"Expense type deleted successfully"})},error:o=>{this.deleteDialog=!1,this.selectedExpenseType=null,this.messageService.add({severity:"error",summary:"Error",detail:this.serverMessage(o,"Failed to delete expense type")})}})}cancelDelete(){this.deleteDialog=!1,this.selectedExpenseType=null}getStatusSeverity(o){return o?"success":"danger"}getStatusText(o){return o?"Active":"Inactive"}getParentName(o){return o.parentId&&(this.expenseTypes.find(t=>t.id===o.parentId)?.name||o.parentName)||""}serverMessage(o,e){let t=o?.error;return typeof t=="string"&&t.trim()?t:t?.message||t?.error||e}canDeleteExpenseType(o){return!o.isSystem}canEditExpenseType(o){return!o.isSystem}get filteredExpenseTypes(){let o=this.expenseTypes;return this.searchText.trim()&&(o=o.filter(e=>this.matchesSearch(e))),this.showActiveOnly&&(o=o.filter(e=>e.isActive)),o}resetFilters(){this.searchText="",this.showActiveOnly=!1,this.rebuildTree()}onFilterChange(){this.rebuildTree()}setViewMode(o){this.viewMode=o,this.clearSelection(),o==="grouped"&&this.rebuildTree()}matchesSearch(o){let e=this.searchText.trim().toLowerCase();return e?o.name.toLowerCase().includes(e)||(o.code||"").toLowerCase().includes(e):!0}rebuildTree(){let o=this.showActiveOnly?this.expenseTypes.filter(g=>g.isActive):this.expenseTypes,e=new Set(o.map(g=>g.id)),t=new Map,n=[];for(let g of o){if(!(!!g.parentId&&e.has(g.parentId))){n.push(g);continue}let M=t.get(g.parentId)??[];M.push(g),t.set(g.parentId,M)}for(let g of t.values())g.sort((w,M)=>w.name.localeCompare(M.name));
507let l=!!this.searchText.trim(),r=l?new Set(o.filter(g=>this.matchesSearch(g)).map(g=>g.id)):null,u=Me,m=n.filter(g=>this.isHead(g)).sort((g,w)=>u.indexOf((g.code||"").toUpperCase())-u.indexOf((w.code||"").toUpperCase())),x=n.filter(g=>!this.isHead(g)).sort((g,w)=>g.name.localeCompare(w.name)),C=[];for(let g of m){let w=(t.get(g.id)??[]).map(M=>this.buildNode(M,t,r)).filter(M=>!!M);C.push({key:g.id,data:{key:g.id,kind:"head",label:g.name,type:g,directCount:w.length,totalCount:this.countDescendants(w)},children:w,expanded:l&&w.length>0,leaf:w.length===0})}let k=x.map(g=>this.buildNode(g,t,r)).filter(g=>!!g);k.length>0&&C.push({key:"__unmapped__",data:{key:"__unmapped__",kind:"unmapped",label:"Not mapped",directCount:k.length,totalCount:this.countDescendants(k)},children:k,expanded:!0,leaf:!1}),this.treeNodes=C}buildNode(o,e,t){let n=(e.get(o.id)??[]).map(r=>this.buildNode(r,e,t)).filter(r=>!!r);return!(!t||t.has(o.id))&&n.length===0?null:{key:o.id,data:{key:o.id,kind:"type",label:o.name,type:o,directCount:n.length,totalCount:this.countDescendants(n)},children:n,expanded:!!t&&n.length>0,leaf:n.length===0}}countDescendants(o){return o.reduce((e,t)=>e+1+this.countDescendants(t.children??[]),0)}expandAll(){this.setExpanded(this.treeNodes,!0),this.treeNodes=[...this.treeNodes]}collapseAll(){this.setExpanded(this.treeNodes,!1),this.treeNodes=[...this.treeNodes]}setExpanded(o,e){for(let t of o)t.children?.length&&(t.expanded=e,this.setExpanded(t.children,e))}get headTypes(){let o=Me;return this.expenseTypes.filter(e=>this.isHead(e)).sort((e,t)=>o.indexOf((e.code||"").toUpperCase())-o.indexOf((t.code||"").toUpperCase()))}isHead(o){let e=Me;return!o.parentId&&!!o.code&&e.includes(o.code.toUpperCase())}getHeadName(o){let e=o;for(let t=0;e&&t<=this.expenseTypes.length;t++){if(this.isHead(e))return e.name;e=e.parentId?this.expenseTypes.find(n=>n.id===e.parentId):void 0}return""}isUnmapped(o){return!this.isHead(o)&&!this.getHeadName(o)}get unmappedCount(){return this.expenseTypes.filter(o=>o.isActive&&this.isUnmapped(o)).length}get selectedTypes(){let o=new Map;if(this.viewMode==="flat"){for(let e of this.selectedFlatTypes)this.isHead(e)||o.set(e.id,e);return[...o.values()]}for(let e of this.selectedNodes){let t=e.data?.type;t&&e.data?.kind==="type"&&!this.isHead(t)&&o.set(t.id,t)}return[...o.values()]}clearSelection(){this.selectedNodes=[],this.selectedFlatTypes=[]}get topmostSelectedTypes(){let o=this.selectedTypes,e=new Set(o.map(n=>n.id)),t=new Map(this.expenseTypes.map(n=>[n.id,n]));return o.filter(n=>{let l=n.parentId?t.get(n.parentId):void 0;for(let r=0;l&&r<=this.expenseTypes.length;r++){if(e.has(l.id))return!1;l=l.parentId?t.get(l.parentId):void 0}return!0})}get carriedAlongCount(){return this.selectedTypes.length-this.topmostSelectedTypes.length}assignSelectedToHead(){let o=this.topmostSelectedTypes,e=this.carriedAlongCount;if(!o.length){this.messageService.add({severity:"warn",summary:"Nothing to file",detail:"Select one or more expense types first. The four heads themselves cannot be filed under another head."});return}this.assigningHead=!0,this.api.assignExpenseTypeHead(o.map(t=>t.id),this.bulkHeadId).subscribe({next:t=>{this.assigningHead=!1,this.clearSelection();let n=e>0?` ${e} nested type(s) moved with them and kept their own parent.`:"";this.messageService.add({severity:"success",summary:"Updated",detail:(this.bulkHeadId?`${t.updated} expense type(s) filed under the selected head.`:`${t.updated} expense type(s) removed from their head.`)+n,life:e>0?6e3:3e3}),this.loadExpenseTypes()},error:t=>{this.assigningHead=!1,this.messageService.add({severity:"error",summary:"Error",detail:this.serverMessage(t,"Could not update the expense types.")})}})}showUnmappedOnly(){this.viewMode="grouped",this.searchText="",this.rebuildTree();let o=this.treeNodes.find(e=>e.data?.kind==="unmapped");o&&(o.expanded=!0,this.treeNodes=[...this.treeNodes])}static \u0275fac=function(e){return new(e||i)(D(jt),D(Et),D(Ee),D(mi))};static \u0275cmp=j({type:i,selectors:[["expense-types"]],features:[X([Ee])],decls:49,vars:41,consts:[[1,"card"],[1,"flex","flex-wrap","justify-content-between","align-items-center","gap-3","mb-4"],[1,"m-0"],[1,"text-sm","text-muted-color","mt-1","mb-0"],["keyword","ExpenseTypes.head"],[1,"flex","items-center","gap-2"],["o
507ptionLabel","label","optionValue","value",3,"ngModelChange","onChange","ngModel","options","allowEmpty"],["label","New Expense Type","icon","pi pi-plus","styleClass","p-button-success",3,"onClick"],["severity","warn","styleClass","w-full mb-4",4,"ngIf"],["class","mb-4 p-3 border-round surface-100",4,"ngIf"],[1,"flex","flex-wrap","items-center","gap-3","mb-3"],["iconPosition","left"],[1,"pi","pi-search"],["pInputText","","type","text","placeholder","Search by name or code\u2026",3,"ngModelChange","ngModel"],[1,"flex","align-items-center","gap-2"],["inputId","showActiveOnly","binary","true",3,"ngModelChange","ngModel"],["for","showActiveOnly",1,"text-sm","font-medium"],[1,"flex-1"],[4,"ngIf"],["label","Reset","icon","pi pi-filter-slash","size","small","severity","secondary",3,"onClick","outlined"],["selectionMode","checkbox","dataKey","key",3,"value","loading","selection","selectionChange",4,"ngIf"],["dataKey","id","responsiveLayout","scroll","scrollHeight","60vh",3,"value","loading","selection","scrollable","selectionChange",4,"ngIf"],[3,"visibleChange","onHide","visible","header","modal","closable"],[3,"ngSubmit","formGroup"],[1,"field"],["for","parentId",1,"block","text-900","text-xl","font-medium","mb-2"],["formControlName","parentId","optionLabel","name","optionValue","id","placeholder","Select parent expense type (optional)","appendTo","body","filterBy","name,code","filterPlaceholder","Search expense types\u2026","showClear","true",1,"w-full",3,"options","filter"],[1,"p-help","block","mt-1","text-gray-600"],["for","names",1,"block","text-900","text-xl","font-medium","mb-2"],["id","names","pInputTextarea","","formControlName","names","rows","4","class","w-full resize-none",3,"placeholder","ng-invalid",4,"ngIf"],["id","names","type","text","pInputText","","formControlName","names","placeholder","Enter expense type name","class","w-full",3,"ng-invalid",4,"ngIf"],["class","p-error block",4,"ngIf"],["class","text-gray-600 block mt-1",4,"ngIf"],["for","code",1,"block","text-900","text-xl","font-medium","mb-2"],["id","code","type","text","pInputText","","formControlName","code",1,"w-full",3,"placeholder"],["pTemplate","footer"],["severity","warn","styleClass","w-full mb-4"],[1,"flex","flex-wrap","items-center","gap-3","w-full"],["label","Show them","icon","pi pi-filter","size","small",3,"onClick","text"],[1,"mb-4","p-3","border-round","surface-100"],[1,"flex","flex-wrap","items-center","gap-3"],[1,"font-medium"],["optionLabel","name","optionValue","id","placeholder","File under\u2026","appendTo","body",3,"ngModelChange","ngModel","options","showClear"],["label","Apply","icon","pi pi-check","size","small",3,"onClick","loading"],["label","Clear selection","size","small",3,"onClick","text"],["class","text-sm text-muted-color mt-2",4,"ngIf"],[1,"text-sm","text-muted-color","mt-2"],[1,"pi","pi-info-circle","mr-1"],["label","Expand all","icon","pi pi-angle-double-down","size","small",3,"onClick","text"],["label","Collapse all","icon","pi pi-angle-double-up","size","small",3,"onClick","text"],["selectionMode","checkbox","dataKey","key",3,"selectionChange","value","loading","selection"],["pTemplate","header"],["pTemplate","body"],["pTemplate","emptymessage"],[2,"width","3rem"],[2,"width","9rem"],[2,"width","10rem"],[2,"width","7rem"],[3,"ttRow","ngClass"],[3,"value",4,"ngIf"],[3,"rowNode"],["class","pi pi-lock text-muted-color ml-1","style","font-size: 0.75rem","pTooltip","Built-in expense type \u2014 managed by Biznas","tooltipPosition","top",4,"ngIf"],["value","Not on income statement","severity","warn","styleClass","ml-2","pTooltip","Costs under these types are left out of the Income Statement until they are filed under a head","tooltipPosition","top",4,"ngIf"],["class","text-sm text-muted-color ml-2",4,"ngIf"],[3,"value","severity",4,"ngIf"],["icon","pi pi-pencil","styleClass","p-button-rounded p-button-text p-button-info","pTooltip","Edit","tooltipPosition","top",3,"onClick",4,"ngIf"],[3,"value"],["pTooltip","Built-in expense type \u2014 managed by Biznas","tooltipPosition","top",1,"pi","pi-lock","text-muted-color","ml-1",2,"font-size","0.75rem"],["value","Not on income statement","severity","warn","styleClass","ml-2","pTooltip","Costs under these types are left out of the Income Statement until they are filed under a head","tooltipPosition","top"],[1,"text-sm","text-muted-color","ml-2"],[3,"value","severity"],["icon","pi pi-pencil","styleClass","p-button-rounded p-button-text p-button-info","pTooltip","Edit","tooltipPosition","top",3,"onClick"],["colspan","5",1,"text-center","py-4"],["dataKey","id","responsiveLayout","scroll","scrollHeight","60vh",3,"selectionChange","value","loading","selection","scrollable"],["value","Head","severity","info",4,"ngIf"],["value","Not reported","severity","warn","pTooltip","Costs under this type are left out of the Income Statement until it is filed under a head","tooltipPosition","top",4,"ngIf"],[1,"flex","gap-2"],["value","Head","severity","info"],["value","Not reported","severity","warn","pTooltip","Costs under this type are left out of the Income Statement until it is filed under a head","tooltipPosition","top"],["colspan","7",1,"text-center","py-4"],["id","names","pInputTextarea","","formControlName","names","rows","4",1,"w-full","resize-none",3,"placeholder"],["id","names","type","text","pInputText","","formControlName","names","placeholder","Enter expense type name",1,"w-full"],[1,"p-error","block"],[1,"text-gray-600","block","mt-1"],["label","Cancel","icon","pi pi-times","styleClass","p-button-text",3,"onClick"],["label","Save","icon","pi pi-check","styleClass","p-button-primary",3,"onClick","loading"]],template:function(e,t){if(e&1&&(y(0,"p-toast"),d(1,"div",0)(2,"div",1)(3,"div")(4,"h2",2),_(5,"Expense Types"),p(),d(6,"p",3),_(7," Grouped by the income statement head each type rolls up into. "),y(8,"a
507pp-help-icon",4),p()(),d(9,"div",5)(10,"p-selectButton",6),J("ngModelChange",function(l){return $(t.viewMode,l)||(t.viewMode=l),l}),E("onChange",function(){return t.setViewMode(t.viewMode)}),p(),d(11,"p-button",7),E("onClick",function(){return t.openNew()}),p()()(),c(12,ul,7,2,"p-message",8)(13,gl,8,10,"div",9),d(14,"div",10)(15,"p-iconfield",11),y(16,"p-inputicon",12),d(17,"input",13),J("ngModelChange",function(l){return $(t.searchText,l)||(t.searchText=l),l}),E("ngModelChange",function(){return t.onFilterChange()}),p()(),d(18,"div",14)(19,"p-checkbox",15),J("ngModelChange",function(l){return $(t.showActiveOnly,l)||(t.showActiveOnly=l),l}),E("ngModelChange",function(){return t.onFilterChange()}),p(),d(20,"label",16),_(21,"Show active only"),p()(),y(22,"div",17),c(23,fl,3,2,"ng-container",18),d(24,"p-button",19),E("onClick",function(){return t.resetFilters()}),p()(),c(25,kl,4,3,"p-treeTable",20)(26,Ol,4,4,"p-table",21),p(),d(27,"p-dialog",22),J("visibleChange",function(l){return $(t.expenseTypeDialog,l)||(t.expenseTypeDialog=l),l}),E("onHide",function(){return t.hideDialog()}),d(28,"form",23),E("ngSubmit",function(){return t.saveExpenseType()}),d(29,"div",24)(30,"label",25),_(31," Select a Parent Expense "),p(),y(32,"p-select",26),d(33,"small",27),_(34," Select a parent expense type to create a hierarchical relationship. Leave empty for top-level expense types. Picking one of the four income statement heads is what puts this type on the Income Statement report. "),p()(),d(35,"div",24)(36,"label",28),_(37),p(),c(38,Rl,2,3,"textarea",29)(39,Hl,1,2,"input",30)(40,Al,3,2,"small",31)(41,Ql,2,0,"small",32),p(),d(42,"div",24)(43,"label",33),_(44," Code "),p(),y(45,"input",34),c(46,Wl,2,1,"small",31)(47,jl,2,0,"small",32),p()(),c(48,Gl,2,1,"ng-template",35),p()),e&2){let n,l,r,u;s(10),q("ngModel",t.viewMode),a("options",A(36,dl,Z(34,al),Z(35,sl)))("allowEmpty",!1),s(2),a("ngIf",t.unmappedCount>0),s(),a("ngIf",t.selectedTypes.length>0),s(4),te(Z(39,pl)),q("ngModel",t.searchText),s(2),q("ngModel",t.showActiveOnly),s(4),a("ngIf",t.viewMode==="grouped"),s(),a("outlined",!0),s(),a("ngIf",t.viewMode==="grouped"),s(),a("ngIf",t.viewMode==="flat"),s(),te(Z(40,cl)),q("visible",t.expenseTypeDialog),a("header",t.isEditMode?"Edit Expense Type":"New Expense Type")("modal",!0)("closable",!0),s(),a("formGroup",t.expenseTypeForm),s(4),ce("ng-invalid",((n=t.expenseTypeForm.get("parentId"))==null?null:n.invalid)&&((n=t.expenseTypeForm.get("parentId"))==null?null:n.touched)),a("options",t.availableParentTypes)("filter",!0),s(5),G(" ",t.isEditMode?"Name *":"Expense Type(s) *"," "),s(),a("ngIf",!t.isEditMode),s(),a("ngIf",t.isEditMode),s(),a("ngIf",((l=t.expenseTypeForm.get("names"))==null?null:l.invalid)&&((l=t.expenseTypeForm.get("names"))==null?null:l.touched)),s(),a("ngIf",!t.isEditMode),s(4),ce("ng-invalid",((r=t.expenseTypeForm.get("code"))==null?null:r.invalid)&&((r=t.expenseTypeForm.get("code"))==null?null:r.touched)),a("placeholder",t.isEditMode?"Enter code (max 10 characters)":"e.g. 100 or 100, 101, 102"),s(),a("ngIf",((u=t.expenseTypeForm.get("code"))==null?null:u.invalid)&&((u=t.expenseTypeForm.get("code"))==null?null:u.touched)),s(),a("ngIf",!t.isEditMode)}},dependencies:[kt,be,ee,Ct,xt,Ie,vt,ke,wt,St,ui,pi,ne,ci,hi,xi,oe,Ti,yi,_i,Vt,Ft,Rt,Ot,ai,ri,li,oi,At,Kt,Qt,Te,qt,Gt,Jt,$t,ei,Yt,ii,ti,Wt,Ut,Zt,Xt,Bt,Ht,gi],styles:[".toggle-checkbox[_ngcontent-%COMP%]   .p-checkbox-box[_ngcontent-%COMP%]{border-radius:20px;width:50px;height:24px;position:relative}.toggle-checkbox[_ngcontent-%COMP%]   .p-checkbox-box[_ngcontent-%COMP%]   .p-checkbox-icon[_ngcontent-%COMP%]{position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:all .3s ease}.toggle-checkbox.p-checkbox-checked[_ngcontent-%COMP%]   .p-checkbox-box[_ngcontent-%COMP%]   .p-checkbox-icon[_ngcontent-%COMP%]{left:28px}.toggle-checkbox[_ngcontent-%COMP%]   .p-checkbox-input[_ngcontent-%COMP%]{opacity:0;width:100%;height:100%;margin:0}.field[_ngcontent-%COMP%]{margin-bottom:1.5rem}.field[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{display:block;margin-bottom:.5rem;color:var(--text-color);font-weight:500}.field[_ngcontent-%COMP%]   input[_ngcontent-%COMP%], .field[_ngcontent-%COMP%]   .p-checkbox[_ngcontent-%COMP%]{width:100%}.p-error[_ngcontent-%COMP%]{color:var(--red-500);font-size:.875rem;margin-top:.25rem}.p-button[_ngcontent-%COMP%]{min-width:100px}.gap-2[_ngcontent-%COMP%]{gap:.5rem}.text-center[_ngcontent-%COMP%]{text-align:center}.py-4[_ngcontent-%COMP%]{padding-top:1rem;padding-bottom:1rem}.row-head[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{background:var(--p-surface-100, #f1f5f9);border-top:1px solid var(--p-content-border-color, #e2e8f0)}.row-unmapped[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{background:var(--p-amber-50, #fffbeb);border-top:1px solid var(--p-amber-300, #fcd34d)}.app-dark[_nghost-%COMP%]   .row-head[_ngcontent-%COMP%] > td[_ngcontent-%COMP%], .app-dark   [_nghost-%COMP%]   .row-head[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{background:var(--p-surface-800, #27272a);border-top-color:var(--p-content-border-color, #3f3f46)}.app-dark[_nghost-%COMP%]   .row-unmapped[_ngcontent-%COMP%] > td[_ngcontent-%COMP%], .app-dark   [_nghost-%COMP%]   .row-unmapped[_ngcontent-%COMP%] > td[_ngcontent-%COMP%]{background:#b4530938;border-top-color:var(--p-amber-700, #b45309)}"]})};export{vi as ExpenseTypesComponent};

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.