@paperless/core 2.15.2 → 2.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/dist/build/index.esm.js +1 -1
- package/dist/{paperless/p-168e8d5c.entry.js → build/p-133e281e.entry.js} +2 -2
- package/dist/build/{p-95d812ef.entry.js → p-2d456ab7.entry.js} +2 -2
- package/dist/build/p-61633f23.entry.js +2 -0
- package/dist/build/p-61633f23.entry.js.map +1 -0
- package/dist/build/p-7c0fb43f.js +2 -0
- package/dist/build/{p-13549fce.entry.js → p-7dc22659.entry.js} +2 -2
- package/dist/build/p-C-WRzhFe.js +2 -0
- package/dist/build/p-C-WRzhFe.js.map +1 -0
- package/dist/build/p-ab66da44.entry.js +2 -0
- package/dist/build/p-ab66da44.entry.js.map +1 -0
- package/dist/build/p-b94bc701.entry.js +2 -0
- package/dist/build/p-b94bc701.entry.js.map +1 -0
- package/dist/build/p-c59b1d50.entry.js +2 -0
- package/dist/build/p-c59b1d50.entry.js.map +1 -0
- package/dist/build/p-empty-state.p-floating-menu-container.p-table-cell.p-table-container.p-table-footer.p-table-header.p-table-row.p-table-row-actions-container.entry.esm.js.map +1 -1
- package/dist/build/p-table-column.entry.esm.js.map +1 -1
- package/dist/build/p-table-extra-header.entry.esm.js.map +1 -0
- package/dist/build/p-table.entry.esm.js.map +1 -1
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/index-Bt6zTh_b.js +4 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/p-empty-state.p-floating-menu-container.p-table-cell.p-table-container.p-table-footer.p-table-header.p-table-row.p-table-row-actions-container.entry.cjs.js.map +1 -1
- package/dist/cjs/p-empty-state_8.cjs.entry.js +35 -21
- package/dist/cjs/p-empty-state_8.cjs.entry.js.map +1 -1
- package/dist/cjs/p-listing.cjs.entry.js +2 -2
- package/dist/cjs/p-navbar.cjs.entry.js +1 -1
- package/dist/cjs/p-table-column.cjs.entry.js +4 -0
- package/dist/cjs/p-table-column.cjs.entry.js.map +1 -1
- package/dist/cjs/p-table-column.entry.cjs.js.map +1 -1
- package/dist/cjs/p-table-extra-header.cjs.entry.js +49 -0
- package/dist/cjs/p-table-extra-header.cjs.entry.js.map +1 -0
- package/dist/cjs/p-table-extra-header.entry.cjs.js.map +1 -0
- package/dist/cjs/p-table.cjs.entry.js +20 -4
- package/dist/cjs/p-table.cjs.entry.js.map +1 -1
- package/dist/cjs/p-table.entry.cjs.js.map +1 -1
- package/dist/cjs/p-toast.cjs.entry.js +1 -1
- package/dist/cjs/paperless.cjs.js +1 -1
- package/dist/cjs/{table-helpers-DyPa1NIG.js → table-helpers-Du9NM7La.js} +7 -4
- package/dist/cjs/table-helpers-Du9NM7La.js.map +1 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/helpers/table/column/table-column.component.js +26 -2
- package/dist/collection/components/helpers/table/column/table-column.component.js.map +1 -1
- package/dist/collection/components/helpers/table/extra-header/table-extra-header.component.js +189 -0
- package/dist/collection/components/helpers/table/extra-header/table-extra-header.component.js.map +1 -0
- package/dist/collection/components/molecules/table/cell/table-cell.component.css +1 -1
- package/dist/collection/components/molecules/table/cell/table-cell.component.js +29 -5
- package/dist/collection/components/molecules/table/cell/table-cell.component.js.map +1 -1
- package/dist/collection/components/molecules/table/footer/table-footer.component.js +2 -2
- package/dist/collection/components/molecules/table/header/table-header.component.js +4 -4
- package/dist/collection/components/molecules/table/header/table-header.component.js.map +1 -1
- package/dist/collection/components/molecules/table/row/table-row.component.css +1 -1
- package/dist/collection/components/molecules/table/row/table-row.component.js +21 -11
- package/dist/collection/components/molecules/table/row/table-row.component.js.map +1 -1
- package/dist/collection/components/molecules/toast/toast.component.js +1 -1
- package/dist/collection/components/organisms/listing/listing.component.js +2 -2
- package/dist/collection/components/organisms/navbar/navbar.component.js +1 -1
- package/dist/collection/components/organisms/table/table.component.js +20 -3
- package/dist/collection/components/organisms/table/table.component.js.map +1 -1
- package/dist/collection/utils/table-helpers.js +5 -2
- package/dist/collection/utils/table-helpers.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-DjVT03PN.js → p-BnFffAKh.js} +4 -4
- package/dist/components/{p-DjVT03PN.js.map → p-BnFffAKh.js.map} +1 -1
- package/dist/components/{p-1KS1K8BB.js → p-CT2cHZ7O.js} +7 -4
- package/dist/components/p-CT2cHZ7O.js.map +1 -0
- package/dist/components/{p-BJ_tiVQ2.js → p-C_WKf2Pq.js} +6 -6
- package/dist/components/{p-BJ_tiVQ2.js.map → p-C_WKf2Pq.js.map} +1 -1
- package/dist/components/p-DuBiYXDO.js +148 -0
- package/dist/components/p-DuBiYXDO.js.map +1 -0
- package/dist/components/p-Dyc4CMNs.js +124 -0
- package/dist/components/p-Dyc4CMNs.js.map +1 -0
- package/dist/components/p-listing.js +2 -2
- package/dist/components/p-navbar.js +1 -1
- package/dist/components/p-table-cell.js +1 -1
- package/dist/components/p-table-column.js +5 -0
- package/dist/components/p-table-column.js.map +1 -1
- package/dist/components/p-table-extra-header.d.ts +11 -0
- package/dist/components/p-table-extra-header.js +72 -0
- package/dist/components/p-table-extra-header.js.map +1 -0
- package/dist/components/p-table-footer.js +1 -1
- package/dist/components/p-table-header.js +1 -1
- package/dist/components/p-table-row.js +1 -1
- package/dist/components/p-table.js +25 -8
- package/dist/components/p-table.js.map +1 -1
- package/dist/components/p-toast.js +1 -1
- package/dist/esm/index-Dpmiv2da.js +4 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/p-empty-state.p-floating-menu-container.p-table-cell.p-table-container.p-table-footer.p-table-header.p-table-row.p-table-row-actions-container.entry.js.map +1 -1
- package/dist/esm/p-empty-state_8.entry.js +35 -21
- package/dist/esm/p-empty-state_8.entry.js.map +1 -1
- package/dist/esm/p-listing.entry.js +2 -2
- package/dist/esm/p-navbar.entry.js +1 -1
- package/dist/esm/p-table-column.entry.js +4 -0
- package/dist/esm/p-table-column.entry.js.map +1 -1
- package/dist/esm/p-table-extra-header.entry.js +47 -0
- package/dist/esm/p-table-extra-header.entry.js.map +1 -0
- package/dist/esm/p-table.entry.js +20 -4
- package/dist/esm/p-table.entry.js.map +1 -1
- package/dist/esm/p-toast.entry.js +1 -1
- package/dist/esm/paperless.js +1 -1
- package/dist/esm/{table-helpers-Cx32XkzF.js → table-helpers-DozDU2EV.js} +7 -4
- package/dist/esm/table-helpers-DozDU2EV.js.map +1 -0
- package/dist/index.html +1 -1
- package/dist/paperless/index.esm.js +1 -1
- package/dist/{build/p-168e8d5c.entry.js → paperless/p-133e281e.entry.js} +2 -2
- package/dist/paperless/{p-95d812ef.entry.js → p-2d456ab7.entry.js} +2 -2
- package/dist/paperless/p-61633f23.entry.js +2 -0
- package/dist/paperless/p-61633f23.entry.js.map +1 -0
- package/dist/paperless/{p-13549fce.entry.js → p-7dc22659.entry.js} +2 -2
- package/dist/paperless/p-C-WRzhFe.js +2 -0
- package/dist/paperless/p-C-WRzhFe.js.map +1 -0
- package/dist/paperless/p-ab66da44.entry.js +2 -0
- package/dist/paperless/p-ab66da44.entry.js.map +1 -0
- package/dist/paperless/p-b94bc701.entry.js +2 -0
- package/dist/paperless/p-b94bc701.entry.js.map +1 -0
- package/dist/paperless/p-c59b1d50.entry.js +2 -0
- package/dist/paperless/p-c59b1d50.entry.js.map +1 -0
- package/dist/paperless/p-empty-state.p-floating-menu-container.p-table-cell.p-table-container.p-table-footer.p-table-header.p-table-row.p-table-row-actions-container.entry.esm.js.map +1 -1
- package/dist/paperless/p-table-column.entry.esm.js.map +1 -1
- package/dist/paperless/p-table-extra-header.entry.esm.js.map +1 -0
- package/dist/paperless/p-table.entry.esm.js.map +1 -1
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/types/components/helpers/table/column/table-column.component.d.ts +5 -1
- package/dist/types/components/helpers/table/extra-header/table-extra-header.component.d.ts +34 -0
- package/dist/types/components/molecules/table/cell/table-cell.component.d.ts +5 -1
- package/dist/types/components/molecules/table/row/table-row.component.d.ts +1 -1
- package/dist/types/components/organisms/table/table.component.d.ts +3 -0
- package/dist/types/components.d.ts +114 -6
- package/dist/types/utils/table-helpers.d.ts +2 -2
- package/package.json +1 -1
- package/dist/build/p-367d1ec2.entry.js +0 -2
- package/dist/build/p-367d1ec2.entry.js.map +0 -1
- package/dist/build/p-D8FNwRNH.js +0 -2
- package/dist/build/p-D8FNwRNH.js.map +0 -1
- package/dist/build/p-a7d047a4.entry.js +0 -2
- package/dist/build/p-a7d047a4.entry.js.map +0 -1
- package/dist/build/p-c8c51618.entry.js +0 -2
- package/dist/build/p-c8c51618.entry.js.map +0 -1
- package/dist/build/p-f967fae6.js +0 -2
- package/dist/cjs/table-helpers-DyPa1NIG.js.map +0 -1
- package/dist/components/p-1KS1K8BB.js.map +0 -1
- package/dist/components/p-BORmwkco.js +0 -138
- package/dist/components/p-BORmwkco.js.map +0 -1
- package/dist/components/p-Q0QulP11.js +0 -119
- package/dist/components/p-Q0QulP11.js.map +0 -1
- package/dist/esm/table-helpers-Cx32XkzF.js.map +0 -1
- package/dist/paperless/p-367d1ec2.entry.js +0 -2
- package/dist/paperless/p-367d1ec2.entry.js.map +0 -1
- package/dist/paperless/p-D8FNwRNH.js +0 -2
- package/dist/paperless/p-D8FNwRNH.js.map +0 -1
- package/dist/paperless/p-a7d047a4.entry.js +0 -2
- package/dist/paperless/p-a7d047a4.entry.js.map +0 -1
- package/dist/paperless/p-c8c51618.entry.js +0 -2
- package/dist/paperless/p-c8c51618.entry.js.map +0 -1
- /package/dist/build/{p-168e8d5c.entry.js.map → p-133e281e.entry.js.map} +0 -0
- /package/dist/build/{p-95d812ef.entry.js.map → p-2d456ab7.entry.js.map} +0 -0
- /package/dist/build/{p-13549fce.entry.js.map → p-7dc22659.entry.js.map} +0 -0
- /package/dist/paperless/{p-168e8d5c.entry.js.map → p-133e281e.entry.js.map} +0 -0
- /package/dist/paperless/{p-95d812ef.entry.js.map → p-2d456ab7.entry.js.map} +0 -0
- /package/dist/paperless/{p-13549fce.entry.js.map → p-7dc22659.entry.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,g as i,h as e}from"./p-Dpmiv2da.js";import{c as s}from"./p-CT54OXR2.js";import"./p-ChV9xqsO.js";const n="*{box-sizing:border-box}.static{position:static!important}.flex{display:flex!important}.w-full{width:100%!important}.flex-col{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.items-start{align-items:flex-start!important}.gap-1{gap:.25rem!important}.opacity-0{opacity:0!important}.opacity-100{opacity:1!important}";const o=class{constructor(i){t(this,i)}get _el(){return i(this)}_generatedOnce=false;_generateTimeout;_resizeObserver;componentDidLoad(){this._resizeObserver=new ResizeObserver((()=>this._generateLinesOnce()));this._resizeObserver.observe(this._el)}disconnectCallback(){if(this._resizeObserver){this._resizeObserver.disconnect()}}render(){return e("div",{key:"
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,g as i,h as e}from"./p-Dpmiv2da.js";import{c as s}from"./p-CT54OXR2.js";import"./p-ChV9xqsO.js";const n="*{box-sizing:border-box}.static{position:static!important}.flex{display:flex!important}.w-full{width:100%!important}.flex-col{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.items-start{align-items:flex-start!important}.gap-1{gap:.25rem!important}.opacity-0{opacity:0!important}.opacity-100{opacity:1!important}";const o=class{constructor(i){t(this,i)}get _el(){return i(this)}_generatedOnce=false;_generateTimeout;_resizeObserver;componentDidLoad(){this._resizeObserver=new ResizeObserver((()=>this._generateLinesOnce()));this._resizeObserver.observe(this._el)}disconnectCallback(){if(this._resizeObserver){this._resizeObserver.disconnect()}}render(){return e("div",{key:"e8406c5d67b32dcab48ab048604487160f905c81",class:s("flex w-full flex-col flex-wrap items-start gap-1",{"opacity-100":this._generatedOnce,"opacity-0":!this._generatedOnce})},e("slot",{key:"5c0f01fe878536842572168f55d26660b68b8f0a",onSlotchange:()=>this._generateLinesOnce()}))}_generateLinesOnce(){if(this._generateTimeout){clearTimeout(this._generateTimeout);this._generateTimeout=null}this._generateTimeout=setTimeout((()=>this._generateLines()),20)}_generateLines(){if(!this._el){return}const t=this._el.querySelectorAll("p-listing-item");for(let i=0;i<t?.length;i++){const e=t.item(i);if(i<t.length-1){let t=e.nextElementSibling;if(t&&t.tagName.toLowerCase()==="p-listing-item"){const i=document.createElement("p-listing-line");this._el.insertBefore(i,t);this._setLineData(i,e,t);const s=i.previousElementSibling;if(s&&s.tagName.toLowerCase()==="p-listing-line"){s.remove()}continue}if(t&&t.tagName.toLowerCase()==="p-listing-line"){const i=t;t=t.nextElementSibling;if(t&&t.tagName.toLowerCase()==="p-listing-item"){this._setLineData(i,e,t)}}}}const i=this._el.querySelectorAll("p-listing-line:not(:has(+ p-listing-item)), p-listing-line:first-child");for(let t=i.length-1;t>=0;t--){const e=i.item(t);e.remove()}if(!this._generatedOnce){setTimeout((()=>this._generatedOnce=true),50)}}_setLineData(t,i,e){let s=(i.clientHeight-16)/2;let n=(e.clientHeight-16)/2;if(s>0){let i=s+n;t.style.marginTop=`-${s/16}rem`;t.style.marginBottom=`-${n/16}rem`;t.style.minHeight=`calc(1.5rem + ${(i-16)/16}rem)`}}};o.style=n;export{o as p_listing};
|
|
2
|
+
//# sourceMappingURL=p-7dc22659.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{c as e}from"./p-CBWjHURv.js";function t(e,t){return t in e}const n=(e,t,n=false)=>{const i=e?r(e,t):{};return{"flex flex-shrink items-center gap-4 pr-4 last-of-type:pr-0":true,"pl-8":n,"justify-start":!e?.align||e?.align==="start","justify-center":e?.align==="center","justify-end":e?.align==="end","font-semibold":t!=="header"&&e?.variant==="subject","text-storm-400 dark:text-hurricane-200":t==="header"||t==="header-secondary","text-storm-300 dark:text-hurricane-200":t!=="header"&&t!=="header-secondary"&&e?.variant!=="subject"&&e?.variant!=="highlight","text-storm-500 dark:text-white":t!=="header"&&t!=="header-secondary"&&(e?.variant==="subject"||e?.variant==="highlight"),...i}};const r=({sizes:e},n)=>{if(e==="auto"||!e){return{"w-auto":true}}if(e==="hidden"){return{hidden:true}}if(typeof e==="object"){e=e;const r={};let i;for(let a in e){if(!t(e,a)){continue}if(a==="default"){if(e.default==="hidden"){r["hidden"]=true;i=a;continue}r[`w-${e.default}/12`]=true;i=a;continue}const o=e[a];const s=i?e[i]:null;if(o!=="hidden"&&s&&s==="hidden"&&n!=="actions"){r[`${a}:flex`]=true}if(o==="hidden"&&n!=="actions"){r[`${a}:hidden`]=true;i=a;continue}if(o===12||o==="full"){r[`${a}:w-full`]=true}r[`${a}:w-${o}/12`]=true;i=a}return r}if(e===12||e==="full"){return{"w-full":true}}return{[`w-${e}/12`]:true}};const i=e(["sticky self-center"],{variants:{hasFooter:{true:"mt-4 -mb-5 bottom-11 z-[3]",false:"my-4 bottom-0"},active:{false:"pointer-events-none animate-floating-menu-container-out",true:"animate-floating-menu-container-in"},shown:{false:"hidden",true:"inline-block"}}});export{r as a,i as f,n as g,t as i};
|
|
2
|
+
//# sourceMappingURL=p-C-WRzhFe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"p-C-WRzhFe.js","sources":["src/types/table.ts","src/utils/table-helpers.ts"],"sourcesContent":["export type QuickFilterTextFunction = () => string;\n\nexport interface QuickFilter {\n\tidentifier: string;\n\ttext: string | QuickFilterTextFunction;\n\tcount?: number;\n\tdefault?: boolean;\n}\n\nexport interface RowClickEvent {\n\titem: any;\n\tctrlDown: boolean;\n}\n\nexport interface TableDefinitionData {\n\tvalue: any;\n\titem: any;\n\tindex: number;\n\trowIndex: number;\n}\n\nexport type TableDefinitionTemplateFunc = (data: TableDefinitionData) => any;\n\nexport interface TableColumnSizes {\n\tdefault: number | 'hidden' | 'full';\n\ttablet?: number | 'hidden' | 'full';\n\t'desktop-xs'?: number | 'hidden' | 'full';\n\t'desktop-sm'?: number | 'hidden' | 'full';\n\tdesktop?: number | 'hidden' | 'full';\n\t'desktop-lg'?: number | 'hidden' | 'full';\n\t'desktop-xl'?: number | 'hidden' | 'full';\n}\n\nexport type TableColumnSizesKey =\n\t| 'default'\n\t| 'tablet'\n\t| 'desktop-xs'\n\t| 'desktop-sm'\n\t| 'desktop'\n\t| 'desktop-lg'\n\t| 'desktop-xl';\n\nexport function isTableColumnSizesKey(\n\tx: TableColumnSizes,\n\tk: PropertyKey\n): k is keyof TableColumnSizes {\n\treturn k in x;\n}\n","import { cva } from 'class-variance-authority';\nimport { TableColumn } from '../components/helpers/table/column/table-column.component';\nimport {\n\tisTableColumnSizesKey,\n\tTableColumnSizes,\n\tTableColumnSizesKey,\n} from '../types';\n\nexport const getTableCellColumnClasses = (\n\tdefinition: any | TableColumn,\n\tvariant: 'default' | 'header' | 'loading' | 'header-secondary',\n\tcheckboxOffset = false\n) => {\n\tconst sizes = definition ? getTableCellSizes(definition, variant) : {};\n\n\treturn {\n\t\t'flex flex-shrink items-center gap-4 pr-4 last-of-type:pr-0': true,\n\t\t'pl-8': checkboxOffset,\n\t\t'justify-start': !definition?.align || definition?.align === 'start',\n\t\t'justify-center': definition?.align === 'center',\n\t\t'justify-end': definition?.align === 'end',\n\t\t'font-semibold': variant !== 'header' && definition?.variant === 'subject',\n\t\t'text-storm-400 dark:text-hurricane-200':\n\t\t\tvariant === 'header' || variant === 'header-secondary',\n\t\t'text-storm-300 dark:text-hurricane-200':\n\t\t\tvariant !== 'header' &&\n\t\t\tvariant !== 'header-secondary' &&\n\t\t\tdefinition?.variant !== 'subject' &&\n\t\t\tdefinition?.variant !== 'highlight',\n\t\t'text-storm-500 dark:text-white':\n\t\t\tvariant !== 'header' &&\n\t\t\tvariant !== 'header-secondary' &&\n\t\t\t(definition?.variant === 'subject' ||\n\t\t\t\tdefinition?.variant === 'highlight'),\n\t\t...sizes,\n\t};\n};\n\nexport const getTableCellSizes = (\n\t{\n\t\tsizes,\n\t}: {\n\t\tsizes: 'auto' | 'hidden' | 'full' | number | TableColumnSizes;\n\t} /* Table Definition */,\n\tvariant: 'default' | 'header' | 'loading' | 'actions' | 'header-secondary'\n) => {\n\tif (sizes === 'auto' || !sizes) {\n\t\treturn {\n\t\t\t'w-auto': true,\n\t\t};\n\t}\n\n\tif (sizes === 'hidden') {\n\t\treturn {\n\t\t\thidden: true,\n\t\t};\n\t}\n\n\tif (typeof sizes === 'object') {\n\t\tsizes = sizes as TableColumnSizes;\n\t\tconst classes: any = {};\n\t\tlet previousSize: TableColumnSizesKey | undefined;\n\n\t\tfor (let size in sizes) {\n\t\t\tif (!isTableColumnSizesKey(sizes, size)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (size === 'default') {\n\t\t\t\tif (sizes.default === 'hidden') {\n\t\t\t\t\tclasses['hidden'] = true;\n\t\t\t\t\tpreviousSize = size;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tclasses[`w-${sizes.default}/12`] = true;\n\t\t\t\tpreviousSize = size;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst currentValue = sizes[size];\n\t\t\tconst previousValue = previousSize ? sizes[previousSize] : null;\n\t\t\tif (\n\t\t\t\tcurrentValue !== 'hidden' &&\n\t\t\t\tpreviousValue &&\n\t\t\t\tpreviousValue === 'hidden' &&\n\t\t\t\tvariant !== 'actions'\n\t\t\t) {\n\t\t\t\tclasses[`${size}:flex`] = true;\n\t\t\t}\n\n\t\t\tif (currentValue === 'hidden' && variant !== 'actions') {\n\t\t\t\tclasses[`${size}:hidden`] = true;\n\t\t\t\tpreviousSize = size;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (currentValue === 12 || currentValue === 'full') {\n\t\t\t\tclasses[`${size}:w-full`] = true;\n\t\t\t}\n\n\t\t\tclasses[`${size}:w-${currentValue}/12`] = true;\n\t\t\tpreviousSize = size;\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tif (sizes === 12 || sizes === 'full') {\n\t\treturn {\n\t\t\t'w-full': true,\n\t\t};\n\t}\n\n\t// is a number.\n\treturn {\n\t\t[`w-${sizes}/12`]: true,\n\t};\n};\n\nexport const floatingMenuContainerClass = cva(['sticky self-center'], {\n\tvariants: {\n\t\thasFooter: {\n\t\t\ttrue: 'mt-4 -mb-5 bottom-11 z-[3]',\n\t\t\tfalse: 'my-4 bottom-0',\n\t\t},\n\t\tactive: {\n\t\t\tfalse: 'pointer-events-none animate-floating-menu-container-out',\n\t\t\ttrue: 'animate-floating-menu-container-in',\n\t\t},\n\t\tshown: {\n\t\t\tfalse: 'hidden',\n\t\t\ttrue: 'inline-block',\n\t\t},\n\t},\n});\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c as t}from"./p-Dpmiv2da.js";const a=class{constructor(a){e(this,a);this.tableDefinitionChanged=t(this,"tableDefinitionChanged",7)}path;variant="default";name;flex=false;useSlot=false;hasCheckbox=false;align="start";sticky=false;parsedSizes;sizes="auto";tableDefinitionChanged;componentDidUpdate(){this.tableDefinitionChanged.emit(true)}render(){return}};export{a as p_table_column};
|
|
2
|
+
//# sourceMappingURL=p-ab66da44.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TableColumn","path","variant","name","flex","useSlot","hasCheckbox","align","sticky","parsedSizes","sizes","tableDefinitionChanged","componentDidUpdate","this","emit","render"],"sources":["src/components/helpers/table/column/table-column.component.tsx"],"sourcesContent":["import { Component, Event, EventEmitter, Prop } from '@stencil/core';\nimport { TableColumnSizes } from '../../../../types/table';\n\n@Component({\n\ttag: 'p-table-column',\n})\nexport class TableColumn {\n\t/**\n\t * The path of the value of the item you want to display\n\t */\n\t@Prop({ reflect: true, mutable: true }) path: string;\n\n\t/**\n\t * The variant of the column\n\t */\n\t@Prop({ reflect: true, mutable: true }) variant:\n\t\t| 'subject'\n\t\t| 'default'\n\t\t| 'highlight'\n\t\t| 'header-secondary' = 'default';\n\n\t/**\n\t * The name of the column\n\t */\n\t@Prop({ reflect: true, mutable: true }) name: string;\n\n\t/**\n\t * Wether the column should be flex\n\t */\n\t@Prop({ reflect: true, mutable: true }) flex: boolean = false;\n\n\t/**\n\t * Wether the column should use the slot\n\t */\n\t@Prop({ reflect: true, mutable: true }) useSlot: boolean = false;\n\n\t/**\n\t * Wether the column should have a checkbox\n\t */\n\t@Prop({ reflect: true, mutable: true }) hasCheckbox: boolean = false;\n\n\t/**\n\t * The alignment of the column\n\t */\n\t@Prop({ reflect: true, mutable: true }) align: 'start' | 'center' | 'end' =\n\t\t'start';\n\n\t/**\n\t * Wether the column should be sticky (Only works on angular variant of table)\n\t */\n\t@Prop({ reflect: true, mutable: true }) sticky: boolean = false;\n\n\t/**\n\t * Parsed sizes based on the complete set of columns\n\t */\n\t@Prop({ reflect: true, mutable: true }) parsedSizes:\n\t\t| TableColumnSizes\n\t\t| undefined;\n\n\t/**\n\t * The sizes of the column\n\t */\n\t@Prop({ mutable: true }) sizes:\n\t\t| 'auto'\n\t\t| 'hidden'\n\t\t| 'full'\n\t\t| number\n\t\t| TableColumnSizes = 'auto';\n\n\t/**\n\t * Event to let the table know it has to re render\n\t */\n\t@Event({ bubbles: true, composed: true })\n\ttableDefinitionChanged: EventEmitter<boolean>;\n\n\tcomponentDidUpdate() {\n\t\tthis.tableDefinitionChanged.emit(true);\n\t}\n\n\trender() {\n\t\treturn;\n\t}\n}\n"],"mappings":"iDAMaA,EAAW,M,wFAIiBC,KAKAC,QAIhB,UAKgBC,KAKAC,KAAgB,MAKhBC,QAAmB,MAKnBC,YAAuB,MAKvBC,MACvC,QAKuCC,OAAkB,MAKlBC,YAOfC,MAKH,OAMtBC,uBAEA,kBAAAC,GACCC,KAAKF,uBAAuBG,KAAK,K,CAGlC,MAAAC,GACC,M","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,g as i,h as s,H as n}from"./p-Dpmiv2da.js";import{t as a}from"./p-DdQ-S2l7.js";import{f as o,g as r}from"./p-DiJj8rmO.js";import{f as h}from"./p-C-WRzhFe.js";import{f as l}from"./p-B3sNjfzc.js";import{c}from"./p-CT54OXR2.js";import{P as f,a as u}from"./p-vyRrSf5s.js";import"./p-CBWjHURv.js";import"./p-ChV9xqsO.js";const d="*{box-sizing:border-box}.static{position:static!important}.fixed{position:fixed!important}.z-0{z-index:0!important}.my-16{margin-bottom:4rem!important;margin-top:4rem!important}.mb-8{margin-bottom:2rem!important}.flex{display:flex!important}.table{display:table!important}.hidden{display:none!important}.h-6{height:1.5rem!important}.w-6{width:1.5rem!important}.flex-1{flex:1 1 0%!important}.flex-shrink-0{flex-shrink:0!important}.resize{resize:both!important}.flex-col{flex-direction:column!important}.self-center{align-self:center!important}.rounded{border-radius:.25rem!important}.opacity-0{opacity:0!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}";const p=class{constructor(i){t(this,i);this.selectedRowsChange=e(this,"selectedRowsChange",3);this.rowClick=e(this,"rowClick",3);this.rowSelected=e(this,"rowSelected",3);this.rowDeselected=e(this,"rowDeselected",3);this.hasRendered=e(this,"hasRendered",3);this.quickFilter=e(this,"quickFilter",3);this.queryChange=e(this,"queryChange",3);this.filter=e(this,"filter",3);this.action=e(this,"action",3);this.pageChange=e(this,"pageChange",3);this.pageSizeChange=e(this,"pageSizeChange",3);this.export=e(this,"export",3);this.emptyStateActionClick=e(this,"emptyStateActionClick",3)}items;loading=false;headerLoading=false;footerLoading=false;amountOfLoadingRows=6;enableRowSelection=true;rowSelectionLimit;enableRowClick=true;selectedRows=[];enableFloatingMenu=true;floatingMenuAmountSelectedTemplate=t=>o((t===1?this._locales.floating_menu?.amount_selected:this._locales.floating_menu?.amount_selected_plural)?.replace("{{amount}}",t));selectedRowsChange;selectionKey;canSelectKey;rowClick;rowSelected;rowDeselected;hasRendered;enableHeader=true;quickFilters=[];activeQuickFilterIdentifier;enableSearch=true;query;enableFilter=true;enableFilterDesktop=true;selectedFiltersAmount;filterButtonTemplate;enableAction=false;actionButtonLoading=false;actionButtonEnabled=false;actionButtonIcon="pencil";actionButtonText;actionButtonTemplate;quickFilter;queryChange;filter;action;enableFooter=true;enablePaginationSize=true;enablePaginationPages=true;enableExport=true;page=1;total;pageChange;pageSize=f;pageSizeOptions=u;pageSizeChange;export;hideOnSinglePage=true;emptyStateHeader=()=>o(this._locales.empty_state?.no_filter.header);emptyStateContent=()=>o(this._locales.empty_state?.no_filter.content);emptyStateAction=()=>o(this._locales.empty_state?.no_filter.action);enableEmptyStateAction=true;emptyStateFilteredHeader=()=>o(this._locales.empty_state.filtered.header);emptyStateFilteredContent=()=>o(this._locales.empty_state.filtered.content);emptyStateActionClick;shadow=true;get _el(){return i(this)}_locales={};_extraHeaders=[];_columns=[];_items=[];_enableRowSelection=this.enableRowSelection;_rowSelectionLimit;_rowActionsFloatingAll=[];_rowActionsFloating=[];_rowActionsRow=[];_footerHidden=false;_ctrlDown=false;_hasCustomFilterSlot=false;_hasCustomActionsSlot=false;_floatingMenuShown=false;_resizeTimeout;componentWillLoad(){this._hasCustomFilterSlot=!!this._el.querySelector(':scope > [slot="custom-filter"]');this._hasCustomActionsSlot=!!this._el.querySelector(':scope > [slot="custom-actions"]');this._setRowSelectionData();this._setLocales();this._parseItems(this.items);this._generateExtraHeaders();this._generateColumns()}componentDidRender(){this.hasRendered.emit()}render(){return s(n,{key:"d5675ecf7d464628f39cf0656d152d316a3675fc",class:"z-0 flex flex-col"},s("p-table-container",{key:"84e69afe650c47560b62d31ad76a8cb6faae9a6e"},this.enableHeader&&s("p-table-header",{key:"c4b1a5c57e756d96f597b4fa7fb61dc8202a5bb5",class:"mb-8",quickFilters:this.quickFilters,activeQuickFilterIdentifier:this.activeQuickFilterIdentifier,onQuickFilter:({detail:t})=>this.quickFilter.emit(t),enableSearch:this.enableSearch,query:this.query,onQueryChange:({detail:t})=>this.queryChange.emit(t),enableFilter:this.enableFilter,enableFilterDesktop:this.enableFilterDesktop,selectedFiltersAmount:this.selectedFiltersAmount,filterButtonTemplate:this.filterButtonTemplate,onFilter:()=>this.filter.emit(),enableAction:this.enableAction,actionIcon:this.actionButtonIcon,actionText:this.actionButtonText,actionLoading:this.actionButtonLoading,canUseAction:this.actionButtonEnabled,actionButtonTemplate:this.actionButtonTemplate,onAction:()=>this.action.emit(),itemsSelectedAmount:this.selectedRows?.length,enableExport:this.enableExport,onExport:()=>this.export.emit(),loading:this.headerLoading},this._hasCustomFilterSlot&&s("slot",{key:"6fcc35dbbd37ec70a36cf8912d90f6133f4d3bf6",name:"custom-filter",slot:"custom-filter"}),this._hasCustomActionsSlot&&s("slot",{key:"9423bcb8027f58f984c3708221adf2f81651b07a",name:"custom-actions",slot:"custom-actions"})),this._getExtraHeader(),this._getHeader(),s("div",{key:"fcf40912d68573281c8e18ee4e30b8f6c3e0c3ef",class:"flex flex-1 flex-col"},this._getRows(),s("slot",{key:"b9f2eaeffd25c1f71662ab1de4985805c1c8f708",name:"custom-rows"})),this.enableFloatingMenu&&this._enableRowSelection?s("p-floating-menu-container",{usedInTable:true,class:h({hasFooter:this.enableFooter&&!this._footerHidden,active:!!this.selectedRows?.length,shown:this._floatingMenuShown}),amountSelectedTemplate:this.floatingMenuAmountSelectedTemplate,amount:this.selectedRows?.length,enableAmountSelected:!!this._rowActionsFloating?.length,onClose:()=>this._selectAllChange(null,false)},this._rowActionsFloating?.length&&this._rowActionsFloating.map((t=>s("p-floating-menu-item",{slot:"floating-menu-item",disabled:t.disabled,loading:t.loading,icon:t.icon,iconRotate:t.iconRotate,iconFlip:t.iconFlip,onClick:()=>!t.disabled&&!t.loading&&!!t.action&&t.type==="single"?t.action(this.selectedRows[0],false):t.action(this.selectedRows,true)},t.label)))):"",this.enableFooter&&s("p-table-footer",{key:"b58718c15d1584296b019f554fa6d06938636b79",hideOnSinglePage:this.hideOnSinglePage,enablePaginationSize:this.enablePaginationSize,pageSize:this.pageSize,pageSizeOptions:this.pageSizeOptions,onPageSizeChange:({detail:t})=>this.pageSizeChange.emit(t),enablePaginationPages:this.enablePaginationPages,page:this.page,total:this.total,onPageChange:({detail:t})=>this.pageChange.emit(t),loading:this.footerLoading,onHiddenChange:({detail:t})=>this._footerHidden=t,tableHeaderHasAction:this.enableHeader&&this.enableAction&&this.actionButtonEnabled})))}async _setLocales(){this._locales=await r(this._el)}onTableDefinitionUpdated(){this._generateColumns()}keyDown({key:t}){if(t!=="Control"||this._ctrlDown===true){return}this._ctrlDown=true}keyUp({key:t}){if(t!=="Control"||this._ctrlDown===false){return}this._ctrlDown=false}visibilityChange(){if(document.visibilityState!=="hidden"||this._ctrlDown===false){return}this._ctrlDown=false}_parseItems(t){if(!t){this._items=[];return}if(Array.isArray(t)){this._items=t;return}this._items=JSON.parse(t)}_setRowSelectionData(){if(this._resizeTimeout){clearTimeout(this._resizeTimeout)}this._resizeTimeout=setTimeout((()=>{const t=l();const e=Array.from(this._el.querySelectorAll(":scope > p-table-row-action"));this._rowActionsRow=e.filter((t=>t.type==="both"||t.type==="single"));this._rowActionsFloatingAll=e.filter((e=>this.enableRowSelection&&(e.type==="both"||e.type==="multi")||t&&e.type==="single")).map((t=>{if(t.type==="single"){t.disabled=this.selectedRows?.length>1}return t}));let i=this.rowSelectionLimit;if(t&&this._rowActionsFloatingAll?.length&&(i!==undefined&&this.enableRowSelection||!this.enableRowSelection)){i=1}this._rowSelectionLimit=i;let s=this.enableRowSelection;if(t&&this._rowActionsFloatingAll?.length&&!s){s=true}this._enableRowSelection=s;if(this._floatingMenuShown){this._showFloatingMenu()}}),200)}_generateExtraHeaders(){const t=this._el.querySelectorAll("p-table-extra-header");let e=Array.from(t);e=this._parseDefinitions(e);this._extraHeaders=e}_generateColumns(){const t=this._el.querySelectorAll("p-table-column");let e=Array.from(t);e=this._parseDefinitions(e);this._columns=e}_getExtraHeader(){if(!this._extraHeaders?.length){return null}return s("p-table-row",{variant:"header-secondary",isLast:true},this._extraHeaders.map(((t,e)=>s("p-table-cell",{definition:t,variant:"header-secondary",checkboxOffset:e===0&&this._enableRowSelection,index:e},s("b",null,t.name)))))}_getHeader(){return s("p-table-row",{variant:"header"},this._columns.map(((t,e)=>s("p-table-cell",{definition:t,value:t.name,variant:"header",checkbox:e===0||t.hasCheckbox?this._getCheckbox(null,this.loading?"loading":"header"):null,index:e}))))}_getRows(){if(this.loading){return Array.from({length:this.amountOfLoadingRows},((t,e)=>s("p-table-row",{enableHover:this._enableRowSelection||this.enableRowClick,isLast:e===this.amountOfLoadingRows-1},this._getLoadingColumns(e))))}if(!this._items.length){return this._getEmptyState()}return this._items.map(((t,e)=>s("p-table-row",{enableHover:this._enableRowSelection||this.enableRowClick,checked:this._selectionContains(e),onClick:t=>this._rowClick(t,e),isLast:e===this._items.length-1},this._getRowColumns(t,e),this._getActions(t,e))))}_getActions(t,e){const i=this._rowActionsRow.filter((e=>e.showFunction?e.showFunction(t):true));if(i?.length&&!l()){return s("p-table-row-actions-container",{slot:"actions",checked:this._selectionContains(e)},i.map((e=>s("p-tooltip",{strategy:"fixed",content:e.label},s("p-button",{"data-is-action":true,variant:"secondary",slot:"trigger",icon:e.icon,iconRotate:e.iconRotate,iconFlip:e.iconFlip,iconOnly:true,size:"sm",onClick:()=>typeof e.action==="function"&&e.action?.(t,false)})))))}return null}_getRowColumns(t,e){return this._columns.map(((i,n)=>s("p-table-cell",{definition:i,item:t,checkbox:n===0||i.hasCheckbox?this._getCheckbox(e):null,index:n,rowIndex:e})))}_getLoadingColumns(t){return this._columns.map(((e,i)=>s("p-table-cell",{definition:e,variant:"loading",checkbox:i===0||e.hasCheckbox?this._getCheckbox(t,"loading"):null,index:i,rowIndex:t})))}_getCheckbox(t,e="default"){if(!this._enableRowSelection||!this.selectionKey&&!this._rowActionsFloating?.length){return}if(e==="loading"){return s("p-loader",{variant:"ghost",class:"h-6 w-6 rounded"})}if(e==="header"){return s("p-checkbox",{class:c({"opacity-0":this._rowSelectionLimit!==undefined}),checked:this._selectionContainsAll(),indeterminate:this._selectionIndeterminate(),disabled:this._rowSelectionLimit!==undefined,onCheckedChange:t=>this._selectAllChange(t)})}const i=this._items[t];const n=this._selectionContains(t);return s("p-checkbox",{class:"flex-shrink-0",disabled:this.canSelectKey&&!i[this.canSelectKey]||this._rowSelectionLimit!==undefined&&!n&&this.selectedRows.length===this._rowSelectionLimit,checked:n,onCheckedChange:e=>this._checkboxChange(e,t)})}_getEmptyState(){if(this.query?.length||this.selectedFiltersAmount){return s("p-empty-state",{class:"my-16 self-center",illustration:"search",header:this.emptyStateFilteredHeader(),content:this.emptyStateFilteredContent()})}return s("p-empty-state",{class:"my-16 self-center",illustration:"table",header:this.emptyStateHeader(),content:this.emptyStateContent(),enableAction:this.enableEmptyStateAction,actionIcon:"plus",actionText:this.emptyStateAction(),onAction:()=>this.enableAction&&this.action.emit()})}_selectAllChange(t,e){if(!this._enableRowSelection){return}const i=t?.detail??e??false;const s=e===undefined?i:e;if(s){const t=[];for(let e=0;e<this._items.length;e++){const i=this._items[e];if(this.canSelectKey&&!i[this.canSelectKey]){continue}if(this._selectionContains(e)){continue}t.push(i);this.rowSelected.emit(i);if(this._rowSelectionLimit!==undefined&&this.selectedRows.length+t.length===this._rowSelectionLimit){break}}this.selectedRows=[...this.selectedRows,...t];this.selectedRowsChange.emit(this.selectedRows);if(this.enableFloatingMenu&&!this._floatingMenuShown){this._showFloatingMenu()}return}for(let t=0;t<this.selectedRows.length;t++){const e=this.selectedRows[t];const i=this._items.find((i=>this._getSelectionValue(i,t)===this._getSelectionValue(e,t)));if(!i){continue}this.rowDeselected.emit(i)}this.selectedRows=[];this.selectedRowsChange.emit(this.selectedRows)}_checkboxChange({detail:t,target:e},i){if(!this._enableRowSelection){return}if(t&&this._rowSelectionLimit!==undefined&&this.selectedRows.length>=this._rowSelectionLimit){e.checked=false;return}const s=this._items[i];if(this.canSelectKey&&!s[this.canSelectKey]){e.checked=false;return}if(t){this.selectedRows=[...this.selectedRows,{...s,index:i}];this.selectedRowsChange.emit(this.selectedRows);this.rowSelected.emit(s);if(this.enableFloatingMenu&&!this._floatingMenuShown){this._showFloatingMenu()}return}const n=this._selectionContains(i,true);const a=[...this.selectedRows];a.splice(n,1);this.selectedRows=a;this.selectedRowsChange.emit(this.selectedRows);this.rowDeselected.emit(s)}_getSelectionValue(t,e){return this.selectionKey?t?.[this.selectionKey]||e:e}_selectionContains(t,e=false){const i=this.selectedRows.findIndex((e=>e.index===t));return!e?i>=0:i}_selectionContainsAll(){let t=true;if(!this._items?.length){return false}if(this._rowSelectionLimit!==undefined&&this.selectedRows.length===this._rowSelectionLimit){return true}for(let e=0;e<this._items?.length;e++){const i=this._selectionContains(e);if(!i){t=false;break}}return t}_selectionIndeterminate(){if(!this._items?.length||!this.selectedRows?.length){return false}if(this._rowSelectionLimit!==undefined&&this.selectedRows.length===this._rowSelectionLimit){return false}let t=0;for(let e=0;e<this._items?.length;e++){const i=this._selectionContains(e);if(i){t++}}return t>0&&t!==this._items.length}_rowClick(t,e){const i=t.target;if(i.tagName.toLowerCase()==="input"||i.type==="checkbox"){return}const s=this._findRow(t.target);const n=this._findRowAction(t.target);if(n){return}if(this.enableRowClick){const t=this._items[e];this.rowClick.emit({item:t,ctrlDown:this._ctrlDown});return}if(!this._enableRowSelection){return}const a=s?.querySelector('input[type="checkbox"]');if(!a){return}a.checked=!a.checked;this._checkboxChange(a,e)}_findRow(t){if(!t){return t}if(t?.tagName?.toLowerCase()==="p-table-row"){return t}return this._findRow(t?.parentElement)}_findRowAction(t){if(!t){return null}if(t.getAttribute("data-is-action")!==null&&t.getAttribute("data-is-action")!=="false"){return t}if(t?.tagName?.toLowerCase()==="p-table-row"){return null}return this._findRowAction(t?.parentElement)}_showFloatingMenu(){let t=this._rowActionsFloatingAll;if(this.rowSelectionLimit===1&&t.findIndex((t=>(t.type==="single"||t.type==="both")&&t.showFunction))>=0){t=t.filter((t=>t.type==="multi"||!t.showFunction||t.showFunction(this.selectedRows[0])))}this._rowActionsFloating=t;this._floatingMenuShown=true}_parseDefinitions(t){return t.map((t=>{t=this._parseDefinitionSizes(t);return t}))}_parseDefinitionSizes(t){const e=t;let i={default:"full"};if(typeof t.sizes==="string"&&!["auto","hidden","full"].includes(t.sizes)){t.sizes=JSON.parse(t.sizes)}for(const[t,s]of a.entries()){if(e.sizes==="auto"||e.sizes==="hidden"||e.sizes==="full"||typeof e.sizes==="number"){i[s]=e.sizes==="auto"?"full":e.sizes;continue}i[s]=e.sizes[s]??i[a[t-1]]}t.parsedSizes=i;return t}static get watchers(){return{items:["_parseItems"],enableRowSelection:["_setRowSelectionData"],rowSelectionLimit:["_setRowSelectionData"],selectedRows:["_setRowSelectionData"]}}};p.style=d;export{p as p_table};
|
|
2
|
+
//# sourceMappingURL=p-b94bc701.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["tableComponentCss","Table","items","loading","headerLoading","footerLoading","amountOfLoadingRows","enableRowSelection","rowSelectionLimit","enableRowClick","selectedRows","enableFloatingMenu","floatingMenuAmountSelectedTemplate","amount","formatTranslation","this","_locales","floating_menu","amount_selected","amount_selected_plural","replace","selectedRowsChange","selectionKey","canSelectKey","rowClick","rowSelected","rowDeselected","hasRendered","enableHeader","quickFilters","activeQuickFilterIdentifier","enableSearch","query","enableFilter","enableFilterDesktop","selectedFiltersAmount","filterButtonTemplate","enableAction","actionButtonLoading","actionButtonEnabled","actionButtonIcon","actionButtonText","actionButtonTemplate","quickFilter","queryChange","filter","action","enableFooter","enablePaginationSize","enablePaginationPages","enableExport","page","total","pageChange","pageSize","PAGINATION_DEFAULT_PAGE_SIZE","pageSizeOptions","PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS","pageSizeChange","export","hideOnSinglePage","emptyStateHeader","empty_state","no_filter","header","emptyStateContent","content","emptyStateAction","enableEmptyStateAction","emptyStateFilteredHeader","filtered","emptyStateFilteredContent","emptyStateActionClick","shadow","_extraHeaders","_columns","_items","_enableRowSelection","_rowSelectionLimit","_rowActionsFloatingAll","_rowActionsFloating","_rowActionsRow","_footerHidden","_ctrlDown","_hasCustomFilterSlot","_hasCustomActionsSlot","_floatingMenuShown","_resizeTimeout","componentWillLoad","_el","querySelector","_setRowSelectionData","_setLocales","_parseItems","_generateExtraHeaders","_generateColumns","componentDidRender","emit","render","h","Host","key","class","onQuickFilter","detail","onQueryChange","onFilter","actionIcon","actionText","actionLoading","canUseAction","onAction","itemsSelectedAmount","length","onExport","name","slot","_getExtraHeader","_getHeader","_getRows","usedInTable","floatingMenuContainerClass","hasFooter","active","shown","amountSelectedTemplate","enableAmountSelected","onClose","_selectAllChange","map","a","disabled","icon","iconRotate","iconFlip","onClick","type","label","onPageSizeChange","onPageChange","onHiddenChange","tableHeaderHasAction","getLocaleComponentStrings","onTableDefinitionUpdated","keyDown","keyUp","visibilityChange","document","visibilityState","Array","isArray","JSON","parse","clearTimeout","setTimeout","mobile","isMobile","actions","from","querySelectorAll","undefined","_showFloatingMenu","definitions","definitionsArray","_parseDefinitions","variant","isLast","col","index","definition","checkboxOffset","value","checkbox","hasCheckbox","_getCheckbox","_","i","enableHover","_getLoadingColumns","_getEmptyState","item","checked","_selectionContains","ev","_rowClick","_getRowColumns","_getActions","showFunction","strategy","iconOnly","size","colIndex","rowIndex","cn","_selectionContainsAll","indeterminate","_selectionIndeterminate","onCheckedChange","selectionContains","_checkboxChange","illustration","forceValue","toAdd","row","push","find","d","_getSelectionValue","target","indexOfToRemove","selection","splice","returnIndex","returnValue","findIndex","contains","containsCount","$event","tagName","toLowerCase","_findRow","_findRowAction","ctrlDown","el","parentElement","getAttribute","_parseDefinitionSizes","definitionAny","parsedSizes","default","sizes","includes","tableColumSizesOptions","entries"],"sources":["src/components/organisms/table/table.component.css?tag=p-table","src/components/organisms/table/table.component.tsx"],"sourcesContent":[null,"import {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport { IconVariant, PCheckboxCustomEvent } from '../../../components';\nimport { tableColumSizesOptions } from '../../../types/constants';\nimport {\n\tQuickFilter,\n\tRowClickEvent,\n\tTableColumnSizes,\n} from '../../../types/table';\nimport {\n\tfloatingMenuContainerClass,\n\tformatTranslation,\n\tgetLocaleComponentStrings,\n\tisMobile,\n} from '../../../utils';\nimport { cn } from '../../../utils/cn';\nimport {\n\tPAGINATION_DEFAULT_PAGE_SIZE,\n\tPAGINATION_DEFAULT_PAGE_SIZE_OPTIONS,\n} from '../../../utils/constants';\nimport { TableColumn } from '../../helpers/table/column/table-column.component';\nimport { TableExtraHeader } from '../../helpers/table/extra-header/table-extra-header.component';\nimport { TableRowAction } from '../../helpers/table/row-action/table-row-action.component';\nimport { buttonTemplateFunc } from '../../molecules/table/header/table-header.component';\n\nexport type templateFunc = () => string;\nexport type amountSelectedTemplateFunc = (amount: number) => string;\n\n@Component({\n\ttag: 'p-table',\n\tstyleUrl: 'table.component.css',\n})\nexport class Table {\n\t/**\n\t * The items to be fed to the table\n\t */\n\t@Prop() items: string;\n\n\t/**\n\t * Wether data is loading\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether the header should show loading state\n\t */\n\t@Prop() headerLoading: boolean = false;\n\n\t/**\n\t * Wether the footer should show loading state\n\t */\n\t@Prop() footerLoading: boolean = false;\n\n\t/**\n\t * The amount of loading rows to show\n\t */\n\t@Prop() amountOfLoadingRows: number = 6;\n\n\t/**\n\t * Wether to enable selection\n\t */\n\t@Prop() enableRowSelection: boolean = true;\n\n\t/**\n\t * A limit to the amount of rows that can be selected\n\t */\n\t@Prop() rowSelectionLimit: number | undefined;\n\n\t/**\n\t * Wether to enable row clicking\n\t */\n\t@Prop() enableRowClick: boolean = true;\n\n\t/**\n\t * The current selection of items\n\t */\n\t@Prop() selectedRows: any[] = [];\n\n\t/**\n\t * Wether to enable the floating menu\n\t */\n\t@Prop() enableFloatingMenu: boolean = true;\n\n\t/**\n\t * The template for amount selected item in the floating menu\n\t */\n\t@Prop() floatingMenuAmountSelectedTemplate: amountSelectedTemplateFunc = (\n\t\tamount: number\n\t) =>\n\t\tformatTranslation(\n\t\t\t(amount === 1\n\t\t\t\t? this._locales.floating_menu?.amount_selected\n\t\t\t\t: this._locales.floating_menu?.amount_selected_plural\n\t\t\t)?.replace('{{amount}}', amount)\n\t\t);\n\n\t/**\n\t * Event whenever the current selection changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tselectedRowsChange: EventEmitter<any>;\n\n\t/**\n\t * The key to determine if a row is selected\n\t */\n\t@Prop() selectionKey: string;\n\n\t/**\n\t * A key to determine if a row can be selected\n\t */\n\t@Prop() canSelectKey: string;\n\n\t/**\n\t * Event whenever a row is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\trowClick: EventEmitter<RowClickEvent>;\n\n\t/**\n\t * Event whenever a row is selected\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\trowSelected: EventEmitter<any>;\n\n\t/**\n\t * Event whenever a row is deselected\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\trowDeselected: EventEmitter<any>;\n\n\t/**\n\t * Event when the table has rendered\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\thasRendered: EventEmitter<number>;\n\n\t/** START HEADER */\n\n\t/**\n\t * Wether to show the header\n\t */\n\t@Prop() enableHeader: boolean = true;\n\n\t/**\n\t * Quick filters to show\n\t */\n\t@Prop() quickFilters: QuickFilter[] | string = [];\n\n\t/**\n\t * Active quick filter identifier\n\t */\n\t@Prop() activeQuickFilterIdentifier: string;\n\n\t/**\n\t * Wether to show the search input\n\t */\n\t@Prop() enableSearch: boolean = true;\n\n\t/**\n\t * The query to show in the search bar\n\t */\n\t@Prop({ mutable: true }) query: string;\n\n\t/**\n\t * Wether to show the filter button\n\t */\n\t@Prop() enableFilter: boolean = true;\n\n\t/**\n\t * Wether to show the filter button on desktop\n\t */\n\t@Prop() enableFilterDesktop: boolean = true;\n\n\t/**\n\t * The amount of filters being selected\n\t */\n\t@Prop() selectedFiltersAmount: number;\n\n\t/**\n\t * The template for the filter button text\n\t */\n\t@Prop() filterButtonTemplate: templateFunc;\n\n\t/**\n\t * Wether to show the action button\n\t */\n\t@Prop() enableAction: boolean = false;\n\n\t/**\n\t * Wether the action button is loading\n\t */\n\t@Prop() actionButtonLoading: boolean = false;\n\n\t/**\n\t * Wether the action button is enabled\n\t */\n\t@Prop() actionButtonEnabled: boolean = false;\n\n\t/**\n\t * The action button icon\n\t */\n\t@Prop() actionButtonIcon: IconVariant = 'pencil';\n\n\t/**\n\t * The action button text if changed\n\t */\n\t@Prop() actionButtonText: string;\n\n\t/**\n\t * The template for the action button text\n\t */\n\t@Prop() actionButtonTemplate: buttonTemplateFunc;\n\n\t/**\n\t * Event when one of the quick filters is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tquickFilter: EventEmitter<QuickFilter>;\n\n\t/**\n\t * Event when the query changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tqueryChange: EventEmitter<string>;\n\n\t/**\n\t * Event when the filter button is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tfilter: EventEmitter<null>;\n\n\t/**\n\t * Event when the action button is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\taction: EventEmitter<null>;\n\n\t/** START FOOTER */\n\n\t/**\n\t * Wether to show the header\n\t */\n\t@Prop() enableFooter: boolean = true;\n\n\t/**\n\t * Wether to enable pagination size select\n\t */\n\t@Prop() enablePaginationSize: boolean = true;\n\n\t/**\n\t * Wether to enable pagination pages\n\t */\n\t@Prop() enablePaginationPages: boolean = true;\n\n\t/**\n\t * Wether to enable export\n\t */\n\t@Prop() enableExport: boolean = true;\n\n\t/**\n\t * The current page\n\t */\n\t@Prop({ mutable: true, reflect: true }) page: number = 1;\n\n\t/**\n\t * The total amount of items\n\t */\n\t@Prop() total!: number;\n\n\t/**\n\t * Event whenever the page changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tpageChange: EventEmitter<number>;\n\n\t/**\n\t * The amount of items per page\n\t */\n\t@Prop() pageSize: number = PAGINATION_DEFAULT_PAGE_SIZE;\n\n\t/**\n\t * The options for the page size\n\t */\n\t@Prop() pageSizeOptions: number[] = PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS;\n\n\t/**\n\t * Event whenever the page changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tpageSizeChange: EventEmitter<number>;\n\n\t/**\n\t * Event whenever the page changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\texport: EventEmitter<number>;\n\n\t/**\n\t * Wether to hide when there is only 1 page available\n\t */\n\t@Prop() hideOnSinglePage: boolean = true;\n\n\t/* Empty state start */\n\t@Prop() emptyStateHeader: templateFunc = () =>\n\t\tformatTranslation(this._locales.empty_state?.no_filter.header);\n\t@Prop() emptyStateContent: templateFunc = () =>\n\t\tformatTranslation(this._locales.empty_state?.no_filter.content);\n\t@Prop() emptyStateAction: templateFunc = () =>\n\t\tformatTranslation(this._locales.empty_state?.no_filter.action);\n\t/**\n\t * Wether to enable empty state action\n\t */\n\t@Prop() enableEmptyStateAction: boolean = true;\n\n\t@Prop() emptyStateFilteredHeader: templateFunc = () =>\n\t\tformatTranslation(this._locales.empty_state.filtered.header);\n\t@Prop() emptyStateFilteredContent: templateFunc = () =>\n\t\tformatTranslation(this._locales.empty_state.filtered.content);\n\n\t/**\n\t * Event whenever the empty state is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\temptyStateActionClick: EventEmitter<null>;\n\n\t/*\n\t * Wether to show the shadow or not\n\t */\n\t@Prop() shadow: boolean = true;\n\n\t/* Empty state end */\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t/**\n\t * Locales used for this component\n\t */\n\t@State() private _locales: any = {};\n\n\t@State() private _extraHeaders: any[] = [];\n\t@State() private _columns: any[] = [];\n\t@State() private _items: any[] = [];\n\n\t@State() private _enableRowSelection: boolean = this.enableRowSelection;\n\t@State() private _rowSelectionLimit: number | undefined;\n\n\tprivate _rowActionsFloatingAll: TableRowAction[] = [];\n\t@State() private _rowActionsFloating: TableRowAction[] = [];\n\t@State() private _rowActionsRow: TableRowAction[] = [];\n\n\t@State() private _footerHidden: boolean = false;\n\n\tprivate _ctrlDown = false;\n\tprivate _hasCustomFilterSlot = false;\n\tprivate _hasCustomActionsSlot = false;\n\tprivate _floatingMenuShown = false;\n\tprivate _resizeTimeout: NodeJS.Timeout | undefined;\n\n\tcomponentWillLoad() {\n\t\tthis._hasCustomFilterSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"custom-filter\"]'\n\t\t);\n\n\t\tthis._hasCustomActionsSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"custom-actions\"]'\n\t\t);\n\n\t\tthis._setRowSelectionData();\n\n\t\tthis._setLocales();\n\t\tthis._parseItems(this.items);\n\t\tthis._generateExtraHeaders();\n\t\tthis._generateColumns();\n\t}\n\n\tcomponentDidRender() {\n\t\tthis.hasRendered.emit();\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='z-0 flex flex-col'>\n\t\t\t\t<p-table-container>\n\t\t\t\t\t{this.enableHeader && (\n\t\t\t\t\t\t<p-table-header\n\t\t\t\t\t\t\tclass='mb-8'\n\t\t\t\t\t\t\t// quick filters\n\t\t\t\t\t\t\tquickFilters={this.quickFilters}\n\t\t\t\t\t\t\tactiveQuickFilterIdentifier={this.activeQuickFilterIdentifier}\n\t\t\t\t\t\t\tonQuickFilter={({ detail }) => this.quickFilter.emit(detail)}\n\t\t\t\t\t\t\t// search\n\t\t\t\t\t\t\tenableSearch={this.enableSearch}\n\t\t\t\t\t\t\tquery={this.query}\n\t\t\t\t\t\t\tonQueryChange={({ detail }) => this.queryChange.emit(detail)}\n\t\t\t\t\t\t\t// filter button\n\t\t\t\t\t\t\tenableFilter={this.enableFilter}\n\t\t\t\t\t\t\tenableFilterDesktop={this.enableFilterDesktop}\n\t\t\t\t\t\t\tselectedFiltersAmount={this.selectedFiltersAmount}\n\t\t\t\t\t\t\tfilterButtonTemplate={this.filterButtonTemplate}\n\t\t\t\t\t\t\tonFilter={() => this.filter.emit()}\n\t\t\t\t\t\t\t// action button\n\t\t\t\t\t\t\tenableAction={this.enableAction}\n\t\t\t\t\t\t\tactionIcon={this.actionButtonIcon}\n\t\t\t\t\t\t\tactionText={this.actionButtonText}\n\t\t\t\t\t\t\tactionLoading={this.actionButtonLoading}\n\t\t\t\t\t\t\tcanUseAction={this.actionButtonEnabled}\n\t\t\t\t\t\t\tactionButtonTemplate={this.actionButtonTemplate}\n\t\t\t\t\t\t\tonAction={() => this.action.emit()}\n\t\t\t\t\t\t\titemsSelectedAmount={this.selectedRows?.length}\n\t\t\t\t\t\t\t//export\n\t\t\t\t\t\t\tenableExport={this.enableExport}\n\t\t\t\t\t\t\tonExport={() => this.export.emit()}\n\t\t\t\t\t\t\t//loading\n\t\t\t\t\t\t\tloading={this.headerLoading}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._hasCustomFilterSlot && (\n\t\t\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t\t\tname='custom-filter'\n\t\t\t\t\t\t\t\t\tslot='custom-filter'\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{this._hasCustomActionsSlot && (\n\t\t\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t\t\tname='custom-actions'\n\t\t\t\t\t\t\t\t\tslot='custom-actions'\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</p-table-header>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this._getExtraHeader()}\n\t\t\t\t\t{this._getHeader()}\n\t\t\t\t\t<div class='flex flex-1 flex-col'>\n\t\t\t\t\t\t{this._getRows()}\n\t\t\t\t\t\t<slot name='custom-rows' />\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{this.enableFloatingMenu && this._enableRowSelection ? (\n\t\t\t\t\t\t<p-floating-menu-container\n\t\t\t\t\t\t\tusedInTable={true}\n\t\t\t\t\t\t\tclass={floatingMenuContainerClass({\n\t\t\t\t\t\t\t\thasFooter: this.enableFooter && !this._footerHidden,\n\t\t\t\t\t\t\t\tactive: !!this.selectedRows?.length,\n\t\t\t\t\t\t\t\tshown: this._floatingMenuShown,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tamountSelectedTemplate={this.floatingMenuAmountSelectedTemplate}\n\t\t\t\t\t\t\tamount={this.selectedRows?.length}\n\t\t\t\t\t\t\tenableAmountSelected={!!this._rowActionsFloating?.length}\n\t\t\t\t\t\t\tonClose={() => this._selectAllChange(null, false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._rowActionsFloating?.length &&\n\t\t\t\t\t\t\t\tthis._rowActionsFloating.map(a => (\n\t\t\t\t\t\t\t\t\t<p-floating-menu-item\n\t\t\t\t\t\t\t\t\t\tslot='floating-menu-item'\n\t\t\t\t\t\t\t\t\t\tdisabled={a.disabled}\n\t\t\t\t\t\t\t\t\t\tloading={a.loading}\n\t\t\t\t\t\t\t\t\t\ticon={a.icon}\n\t\t\t\t\t\t\t\t\t\ticonRotate={a.iconRotate}\n\t\t\t\t\t\t\t\t\t\ticonFlip={a.iconFlip}\n\t\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\t\t!a.disabled &&\n\t\t\t\t\t\t\t\t\t\t\t!a.loading &&\n\t\t\t\t\t\t\t\t\t\t\t!!a.action &&\n\t\t\t\t\t\t\t\t\t\t\ta.type === 'single'\n\t\t\t\t\t\t\t\t\t\t\t\t? a.action(this.selectedRows[0], false)\n\t\t\t\t\t\t\t\t\t\t\t\t: a.action(this.selectedRows, true)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{a.label}\n\t\t\t\t\t\t\t\t\t</p-floating-menu-item>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</p-floating-menu-container>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t''\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.enableFooter && (\n\t\t\t\t\t\t<p-table-footer\n\t\t\t\t\t\t\t// overall\n\t\t\t\t\t\t\thideOnSinglePage={this.hideOnSinglePage}\n\t\t\t\t\t\t\t// page size select\n\t\t\t\t\t\t\tenablePaginationSize={this.enablePaginationSize}\n\t\t\t\t\t\t\tpageSize={this.pageSize}\n\t\t\t\t\t\t\tpageSizeOptions={this.pageSizeOptions}\n\t\t\t\t\t\t\tonPageSizeChange={({ detail }) =>\n\t\t\t\t\t\t\t\tthis.pageSizeChange.emit(detail)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// pagination\n\t\t\t\t\t\t\tenablePaginationPages={this.enablePaginationPages}\n\t\t\t\t\t\t\tpage={this.page}\n\t\t\t\t\t\t\ttotal={this.total}\n\t\t\t\t\t\t\tonPageChange={({ detail }) => this.pageChange.emit(detail)}\n\t\t\t\t\t\t\t//loading\n\t\t\t\t\t\t\tloading={this.footerLoading}\n\t\t\t\t\t\t\tonHiddenChange={({ detail }) => (this._footerHidden = detail)}\n\t\t\t\t\t\t\t// header adjustment\n\t\t\t\t\t\t\ttableHeaderHasAction={\n\t\t\t\t\t\t\t\tthis.enableHeader &&\n\t\t\t\t\t\t\t\tthis.enableAction &&\n\t\t\t\t\t\t\t\tthis.actionButtonEnabled\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t></p-table-footer>\n\t\t\t\t\t)}\n\t\t\t\t</p-table-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('localeChanged', { target: 'body' })\n\tprivate async _setLocales(): Promise<void> {\n\t\tthis._locales = await getLocaleComponentStrings(this._el);\n\t}\n\n\t@Listen('tableDefinitionChanged', { target: 'body' })\n\tonTableDefinitionUpdated() {\n\t\tthis._generateColumns();\n\t}\n\n\t@Listen('keydown', { target: 'document' })\n\tkeyDown({ key }) {\n\t\tif (key !== 'Control' || this._ctrlDown === true) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._ctrlDown = true;\n\t}\n\n\t@Listen('keyup', { target: 'document' })\n\tkeyUp({ key }) {\n\t\tif (key !== 'Control' || this._ctrlDown === false) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._ctrlDown = false;\n\t}\n\n\t@Listen('visibilitychange', { target: 'document' })\n\tvisibilityChange() {\n\t\tif (document.visibilityState !== 'hidden' || this._ctrlDown === false) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._ctrlDown = false;\n\t}\n\n\t@Watch('items')\n\tprivate _parseItems(items: string) {\n\t\tif (!items) {\n\t\t\tthis._items = [];\n\t\t\treturn;\n\t\t}\n\n\t\tif (Array.isArray(items)) {\n\t\t\tthis._items = items;\n\t\t\treturn;\n\t\t}\n\n\t\tthis._items = JSON.parse(items);\n\t}\n\n\t@Watch('enableRowSelection')\n\t@Watch('rowSelectionLimit')\n\t@Watch('selectedRows')\n\t@Listen('resize', { target: 'window' })\n\tprivate _setRowSelectionData() {\n\t\tif (this._resizeTimeout) {\n\t\t\tclearTimeout(this._resizeTimeout);\n\t\t}\n\n\t\t// We add a timeout here because it's a lot easier on the machine to do these when someone is done\n\t\t// resizing and playing around with their browser\n\t\tthis._resizeTimeout = setTimeout(() => {\n\t\t\tconst mobile = isMobile();\n\n\t\t\t// we hack this to any[] to make it work..\n\t\t\tconst actions = Array.from(\n\t\t\t\tthis._el.querySelectorAll(':scope > p-table-row-action')\n\t\t\t) as any[] as TableRowAction[];\n\t\t\tthis._rowActionsRow = actions.filter(\n\t\t\t\ta => a.type === 'both' || a.type === 'single'\n\t\t\t);\n\t\t\tthis._rowActionsFloatingAll = actions\n\t\t\t\t.filter(\n\t\t\t\t\ta =>\n\t\t\t\t\t\t(this.enableRowSelection &&\n\t\t\t\t\t\t\t(a.type === 'both' || a.type === 'multi')) ||\n\t\t\t\t\t\t(mobile && a.type === 'single')\n\t\t\t\t)\n\t\t\t\t.map(a => {\n\t\t\t\t\tif (a.type === 'single') {\n\t\t\t\t\t\ta.disabled = this.selectedRows?.length > 1;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn a;\n\t\t\t\t});\n\n\t\t\tlet rowSelectionLimit = this.rowSelectionLimit;\n\t\t\tif (\n\t\t\t\tmobile && // we're mobile\n\t\t\t\tthis._rowActionsFloatingAll?.length && // we have atleast 1 item in _rowActionsFloating\n\t\t\t\t((rowSelectionLimit !== undefined && this.enableRowSelection) ||\n\t\t\t\t\t!this.enableRowSelection)\n\t\t\t) {\n\t\t\t\trowSelectionLimit = 1;\n\t\t\t}\n\n\t\t\tthis._rowSelectionLimit = rowSelectionLimit;\n\n\t\t\tlet enableRowSelection = this.enableRowSelection;\n\t\t\tif (\n\t\t\t\tmobile && // we're mobile\n\t\t\t\tthis._rowActionsFloatingAll?.length && // we have atleast 1 item in _rowActionsFloating\n\t\t\t\t!enableRowSelection\n\t\t\t) {\n\t\t\t\tenableRowSelection = true;\n\t\t\t}\n\n\t\t\tthis._enableRowSelection = enableRowSelection;\n\n\t\t\tif (this._floatingMenuShown) {\n\t\t\t\tthis._showFloatingMenu();\n\t\t\t}\n\t\t}, 200);\n\t}\n\n\tprivate _generateExtraHeaders() {\n\t\tconst definitions = this._el.querySelectorAll('p-table-extra-header');\n\t\tlet definitionsArray = Array.from(definitions);\n\n\t\tdefinitionsArray = this._parseDefinitions(definitionsArray);\n\n\t\tthis._extraHeaders = definitionsArray;\n\t}\n\n\tprivate _generateColumns() {\n\t\tconst definitions = this._el.querySelectorAll('p-table-column');\n\t\tlet definitionsArray = Array.from(definitions);\n\n\t\tdefinitionsArray = this._parseDefinitions(definitionsArray);\n\n\t\tthis._columns = definitionsArray;\n\t}\n\n\tprivate _getExtraHeader() {\n\t\tif (!this._extraHeaders?.length) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<p-table-row\n\t\t\t\tvariant='header-secondary'\n\t\t\t\tisLast={true}\n\t\t\t>\n\t\t\t\t{this._extraHeaders.map((col: TableExtraHeader, index) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<p-table-cell\n\t\t\t\t\t\t\tdefinition={col}\n\t\t\t\t\t\t\tvariant='header-secondary'\n\t\t\t\t\t\t\tcheckboxOffset={index === 0 && this._enableRowSelection}\n\t\t\t\t\t\t\tindex={index}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<b>{col.name}</b>\n\t\t\t\t\t\t</p-table-cell>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</p-table-row>\n\t\t);\n\t}\n\n\tprivate _getHeader() {\n\t\treturn (\n\t\t\t<p-table-row variant='header'>\n\t\t\t\t{this._columns.map((col: TableColumn, index) => (\n\t\t\t\t\t<p-table-cell\n\t\t\t\t\t\tdefinition={col}\n\t\t\t\t\t\tvalue={col.name}\n\t\t\t\t\t\tvariant='header'\n\t\t\t\t\t\tcheckbox={\n\t\t\t\t\t\t\tindex === 0 || col.hasCheckbox\n\t\t\t\t\t\t\t\t? this._getCheckbox(null, this.loading ? 'loading' : 'header')\n\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t}\n\t\t\t\t\t\tindex={index}\n\t\t\t\t\t></p-table-cell>\n\t\t\t\t))}\n\t\t\t</p-table-row>\n\t\t);\n\t}\n\n\tprivate _getRows() {\n\t\tif (this.loading) {\n\t\t\treturn Array.from(\n\t\t\t\t{\n\t\t\t\t\tlength: this.amountOfLoadingRows,\n\t\t\t\t},\n\t\t\t\t(_, i) => (\n\t\t\t\t\t<p-table-row\n\t\t\t\t\t\tenableHover={this._enableRowSelection || this.enableRowClick}\n\t\t\t\t\t\tisLast={i === this.amountOfLoadingRows - 1}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this._getLoadingColumns(i)}\n\t\t\t\t\t</p-table-row>\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\n\t\tif (!this._items.length) {\n\t\t\treturn this._getEmptyState();\n\t\t}\n\n\t\treturn this._items.map((item, index) => (\n\t\t\t<p-table-row\n\t\t\t\tenableHover={this._enableRowSelection || this.enableRowClick}\n\t\t\t\tchecked={this._selectionContains(index)}\n\t\t\t\tonClick={ev => this._rowClick(ev, index)}\n\t\t\t\tisLast={index === this._items.length - 1}\n\t\t\t>\n\t\t\t\t{this._getRowColumns(item, index)}\n\t\t\t\t{this._getActions(item, index)}\n\t\t\t</p-table-row>\n\t\t));\n\t}\n\n\tprivate _getActions(item, index) {\n\t\tconst actions = this._rowActionsRow.filter(a =>\n\t\t\ta.showFunction ? a.showFunction(item) : true\n\t\t);\n\n\t\tif (actions?.length && !isMobile()) {\n\t\t\treturn (\n\t\t\t\t<p-table-row-actions-container\n\t\t\t\t\tslot='actions'\n\t\t\t\t\tchecked={this._selectionContains(index)}\n\t\t\t\t>\n\t\t\t\t\t{actions.map(a => (\n\t\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\t\tstrategy='fixed'\n\t\t\t\t\t\t\tcontent={a.label}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\tdata-is-action\n\t\t\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\t\t\ticon={a.icon}\n\t\t\t\t\t\t\t\ticonRotate={a.iconRotate}\n\t\t\t\t\t\t\t\ticonFlip={a.iconFlip}\n\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\tsize='sm'\n\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\ttypeof a.action === 'function' && a.action?.(item, false)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t></p-button>\n\t\t\t\t\t\t</p-tooltip>\n\t\t\t\t\t))}\n\t\t\t\t</p-table-row-actions-container>\n\t\t\t);\n\t\t}\n\n\t\treturn null;\n\t}\n\tprivate _getRowColumns(item, index) {\n\t\treturn this._columns.map((col: TableColumn, colIndex) => {\n\t\t\treturn (\n\t\t\t\t<p-table-cell\n\t\t\t\t\tdefinition={col}\n\t\t\t\t\titem={item}\n\t\t\t\t\tcheckbox={\n\t\t\t\t\t\tcolIndex === 0 || col.hasCheckbox ? this._getCheckbox(index) : null\n\t\t\t\t\t}\n\t\t\t\t\tindex={colIndex}\n\t\t\t\t\trowIndex={index}\n\t\t\t\t></p-table-cell>\n\t\t\t);\n\t\t});\n\t}\n\n\tprivate _getLoadingColumns(index) {\n\t\treturn this._columns.map((col: TableColumn, colIndex) => {\n\t\t\treturn (\n\t\t\t\t<p-table-cell\n\t\t\t\t\tdefinition={col}\n\t\t\t\t\tvariant='loading'\n\t\t\t\t\tcheckbox={\n\t\t\t\t\t\tcolIndex === 0 || col.hasCheckbox\n\t\t\t\t\t\t\t? this._getCheckbox(index, 'loading')\n\t\t\t\t\t\t\t: null\n\t\t\t\t\t}\n\t\t\t\t\tindex={colIndex}\n\t\t\t\t\trowIndex={index}\n\t\t\t\t></p-table-cell>\n\t\t\t);\n\t\t});\n\t}\n\n\tprivate _getCheckbox(\n\t\trowIndex: number,\n\t\tvariant: 'header' | 'default' | 'loading' = 'default'\n\t) {\n\t\tif (\n\t\t\t!this._enableRowSelection ||\n\t\t\t(!this.selectionKey && !this._rowActionsFloating?.length)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (variant === 'loading') {\n\t\t\treturn (\n\t\t\t\t<p-loader\n\t\t\t\t\tvariant='ghost'\n\t\t\t\t\tclass='h-6 w-6 rounded'\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\tif (variant === 'header') {\n\t\t\treturn (\n\t\t\t\t<p-checkbox\n\t\t\t\t\tclass={cn({\n\t\t\t\t\t\t'opacity-0': this._rowSelectionLimit !== undefined,\n\t\t\t\t\t})}\n\t\t\t\t\tchecked={this._selectionContainsAll()}\n\t\t\t\t\tindeterminate={this._selectionIndeterminate()}\n\t\t\t\t\tdisabled={this._rowSelectionLimit !== undefined}\n\t\t\t\t\tonCheckedChange={ev => this._selectAllChange(ev)}\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\tconst item = this._items[rowIndex];\n\n\t\tconst selectionContains = this._selectionContains(rowIndex);\n\n\t\treturn (\n\t\t\t<p-checkbox\n\t\t\t\tclass='flex-shrink-0'\n\t\t\t\tdisabled={\n\t\t\t\t\t(this.canSelectKey && !item[this.canSelectKey]) ||\n\t\t\t\t\t(this._rowSelectionLimit !== undefined &&\n\t\t\t\t\t\t!selectionContains &&\n\t\t\t\t\t\tthis.selectedRows.length === this._rowSelectionLimit)\n\t\t\t\t}\n\t\t\t\tchecked={selectionContains}\n\t\t\t\tonCheckedChange={ev => this._checkboxChange(ev, rowIndex)}\n\t\t\t/>\n\t\t);\n\t}\n\n\tprivate _getEmptyState() {\n\t\tif (this.query?.length || this.selectedFiltersAmount) {\n\t\t\treturn (\n\t\t\t\t<p-empty-state\n\t\t\t\t\tclass='my-16 self-center'\n\t\t\t\t\tillustration='search'\n\t\t\t\t\theader={this.emptyStateFilteredHeader()}\n\t\t\t\t\tcontent={this.emptyStateFilteredContent()}\n\t\t\t\t></p-empty-state>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<p-empty-state\n\t\t\t\tclass='my-16 self-center'\n\t\t\t\tillustration='table'\n\t\t\t\theader={this.emptyStateHeader()}\n\t\t\t\tcontent={this.emptyStateContent()}\n\t\t\t\tenableAction={this.enableEmptyStateAction}\n\t\t\t\tactionIcon='plus'\n\t\t\t\tactionText={this.emptyStateAction()}\n\t\t\t\tonAction={() => this.enableAction && this.action.emit()}\n\t\t\t></p-empty-state>\n\t\t);\n\t}\n\n\tprivate _selectAllChange(\n\t\tev: PCheckboxCustomEvent<boolean>,\n\t\tforceValue?: boolean\n\t) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst checked = ev?.detail ?? forceValue ?? false;\n\n\t\tconst value = forceValue === undefined ? checked : forceValue;\n\t\tif (value) {\n\t\t\tconst toAdd = [];\n\t\t\tfor (let i = 0; i < this._items.length; i++) {\n\t\t\t\tconst row = this._items[i];\n\t\t\t\tif (this.canSelectKey && !row[this.canSelectKey]) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (this._selectionContains(i)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\ttoAdd.push(row);\n\t\t\t\tthis.rowSelected.emit(row);\n\n\t\t\t\tif (\n\t\t\t\t\tthis._rowSelectionLimit !== undefined &&\n\t\t\t\t\tthis.selectedRows.length + toAdd.length === this._rowSelectionLimit\n\t\t\t\t) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.selectedRows = [...this.selectedRows, ...toAdd];\n\t\t\tthis.selectedRowsChange.emit(this.selectedRows);\n\t\t\tif (this.enableFloatingMenu && !this._floatingMenuShown) {\n\t\t\t\tthis._showFloatingMenu();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tfor (let i = 0; i < this.selectedRows.length; i++) {\n\t\t\tconst value = this.selectedRows[i];\n\t\t\tconst row = this._items.find(\n\t\t\t\td => this._getSelectionValue(d, i) === this._getSelectionValue(value, i)\n\t\t\t);\n\n\t\t\tif (!row) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tthis.rowDeselected.emit(row);\n\t\t}\n\n\t\tthis.selectedRows = [];\n\t\tthis.selectedRowsChange.emit(this.selectedRows);\n\t}\n\n\tprivate _checkboxChange(\n\t\t{ detail: checked, target }: PCheckboxCustomEvent<boolean>,\n\t\tindex: number\n\t) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (\n\t\t\tchecked &&\n\t\t\tthis._rowSelectionLimit !== undefined &&\n\t\t\tthis.selectedRows.length >= this._rowSelectionLimit\n\t\t) {\n\t\t\ttarget.checked = false;\n\t\t\treturn;\n\t\t}\n\n\t\tconst row = this._items[index];\n\n\t\tif (this.canSelectKey && !row[this.canSelectKey]) {\n\t\t\ttarget.checked = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (checked) {\n\t\t\tthis.selectedRows = [\n\t\t\t\t...this.selectedRows,\n\t\t\t\t{\n\t\t\t\t\t...row,\n\t\t\t\t\tindex,\n\t\t\t\t},\n\t\t\t];\n\t\t\tthis.selectedRowsChange.emit(this.selectedRows);\n\t\t\tthis.rowSelected.emit(row);\n\n\t\t\tif (this.enableFloatingMenu && !this._floatingMenuShown) {\n\t\t\t\tthis._showFloatingMenu();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst indexOfToRemove = this._selectionContains(index, true);\n\n\t\t// we need to do this, because splice does not trigger the selection setter.\n\t\tconst selection = [...this.selectedRows];\n\t\tselection.splice(indexOfToRemove, 1);\n\t\tthis.selectedRows = selection;\n\t\tthis.selectedRowsChange.emit(this.selectedRows);\n\t\tthis.rowDeselected.emit(row);\n\t}\n\n\tprivate _getSelectionValue(row: any, index: number) {\n\t\treturn this.selectionKey ? row?.[this.selectionKey] || index : index;\n\t}\n\n\tprivate _selectionContains(index, returnIndex = false): any {\n\t\tconst returnValue = this.selectedRows.findIndex(\n\t\t\titem => item.index === index\n\t\t);\n\t\treturn !returnIndex ? returnValue >= 0 : returnValue;\n\t}\n\n\tprivate _selectionContainsAll() {\n\t\tlet returnValue = true;\n\t\tif (!this._items?.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\tthis._rowSelectionLimit !== undefined &&\n\t\t\tthis.selectedRows.length === this._rowSelectionLimit\n\t\t) {\n\t\t\treturn true;\n\t\t}\n\n\t\tfor (let i = 0; i < this._items?.length; i++) {\n\t\t\tconst contains = this._selectionContains(i);\n\n\t\t\tif (!contains) {\n\t\t\t\treturnValue = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn returnValue;\n\t}\n\n\tprivate _selectionIndeterminate() {\n\t\tif (!this._items?.length || !this.selectedRows?.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\tthis._rowSelectionLimit !== undefined &&\n\t\t\tthis.selectedRows.length === this._rowSelectionLimit\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\tlet containsCount = 0;\n\t\tfor (let i = 0; i < this._items?.length; i++) {\n\t\t\tconst contains = this._selectionContains(i);\n\n\t\t\tif (contains) {\n\t\t\t\tcontainsCount++;\n\t\t\t}\n\t\t}\n\n\t\treturn containsCount > 0 && containsCount !== this._items.length;\n\t}\n\n\tprivate _rowClick($event, index) {\n\t\tconst target = $event.target;\n\n\t\tif (\n\t\t\ttarget.tagName.toLowerCase() === 'input' ||\n\t\t\ttarget.type === 'checkbox'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst row = this._findRow($event.target);\n\t\tconst action = this._findRowAction($event.target);\n\n\t\tif (action) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.enableRowClick) {\n\t\t\tconst item = this._items[index];\n\t\t\tthis.rowClick.emit({\n\t\t\t\titem,\n\t\t\t\tctrlDown: this._ctrlDown,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst checkbox = row?.querySelector('input[type=\"checkbox\"]');\n\n\t\tif (!checkbox) {\n\t\t\treturn;\n\t\t}\n\n\t\tcheckbox.checked = !checkbox.checked;\n\t\tthis._checkboxChange(checkbox, index);\n\t}\n\n\tprivate _findRow(el: HTMLElement) {\n\t\tif (!el) {\n\t\t\treturn el;\n\t\t}\n\n\t\tif (el?.tagName?.toLowerCase() === 'p-table-row') {\n\t\t\treturn el;\n\t\t}\n\n\t\treturn this._findRow(el?.parentElement);\n\t}\n\n\tprivate _findRowAction(el: HTMLElement) {\n\t\tif (!el) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (\n\t\t\tel.getAttribute('data-is-action') !== null &&\n\t\t\tel.getAttribute('data-is-action') !== 'false'\n\t\t) {\n\t\t\treturn el;\n\t\t}\n\n\t\tif (el?.tagName?.toLowerCase() === 'p-table-row') {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this._findRowAction(el?.parentElement);\n\t}\n\n\tprivate _showFloatingMenu() {\n\t\tlet actions = this._rowActionsFloatingAll;\n\t\tif (\n\t\t\tthis.rowSelectionLimit === 1 &&\n\t\t\tactions.findIndex(\n\t\t\t\ta => (a.type === 'single' || a.type === 'both') && a.showFunction\n\t\t\t) >= 0\n\t\t) {\n\t\t\tactions = actions.filter(\n\t\t\t\ta =>\n\t\t\t\t\ta.type === 'multi' ||\n\t\t\t\t\t!a.showFunction ||\n\t\t\t\t\ta.showFunction(this.selectedRows[0])\n\t\t\t);\n\t\t}\n\n\t\tthis._rowActionsFloating = actions;\n\t\tthis._floatingMenuShown = true;\n\t}\n\n\tprivate _parseDefinitions(\n\t\tdefinitionsArray: HTMLPTableColumnElement[] | HTMLPTableExtraHeaderElement[]\n\t) {\n\t\treturn definitionsArray.map(definition => {\n\t\t\tdefinition = this._parseDefinitionSizes(definition);\n\t\t\treturn definition;\n\t\t});\n\t}\n\n\tprivate _parseDefinitionSizes(\n\t\tdefinition: HTMLPTableColumnElement | HTMLPTableExtraHeaderElement\n\t) {\n\t\tconst definitionAny = definition as any;\n\t\tlet parsedSizes: TableColumnSizes = { default: 'full' };\n\n\t\tif (\n\t\t\ttypeof definition.sizes === 'string' &&\n\t\t\t!['auto', 'hidden', 'full'].includes(definition.sizes)\n\t\t) {\n\t\t\tdefinition.sizes = JSON.parse(definition.sizes);\n\t\t}\n\n\t\tfor (const [index, size] of tableColumSizesOptions.entries()) {\n\t\t\tif (\n\t\t\t\tdefinitionAny.sizes === 'auto' ||\n\t\t\t\tdefinitionAny.sizes === 'hidden' ||\n\t\t\t\tdefinitionAny.sizes === 'full' ||\n\t\t\t\ttypeof definitionAny.sizes === 'number'\n\t\t\t) {\n\t\t\t\tparsedSizes[size] =\n\t\t\t\t\tdefinitionAny.sizes === 'auto' ? 'full' : definitionAny.sizes;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tparsedSizes[size] =\n\t\t\t\tdefinitionAny.sizes[size] ??\n\t\t\t\tparsedSizes[tableColumSizesOptions[index - 1]];\n\t\t}\n\n\t\tdefinition.parsedSizes = parsedSizes;\n\t\treturn definition;\n\t}\n}\n"],"mappings":"iVAAA,MAAMA,EAAoB,2yB,MC0CbC,EAAK,M,ojBAITC,MAKAC,QAAmB,MAKnBC,cAAyB,MAKzBC,cAAyB,MAKzBC,oBAA8B,EAK9BC,mBAA8B,KAK9BC,kBAKAC,eAA0B,KAK1BC,aAAsB,GAKtBC,mBAA8B,KAK9BC,mCACPC,GAEAC,GACED,IAAW,EACTE,KAAKC,SAASC,eAAeC,gBAC7BH,KAAKC,SAASC,eAAeE,yBAC7BC,QAAQ,aAAcP,IAS3BQ,mBAKQC,aAKAC,aAQRC,SAQAC,YAQAC,cAQAC,YAOQC,aAAwB,KAKxBC,aAAuC,GAKvCC,4BAKAC,aAAwB,KAKPC,MAKjBC,aAAwB,KAKxBC,oBAA+B,KAK/BC,sBAKAC,qBAKAC,aAAwB,MAKxBC,oBAA+B,MAK/BC,oBAA+B,MAK/BC,iBAAgC,SAKhCC,iBAKAC,qBAQRC,YAQAC,YAQAC,OAQAC,OAOQC,aAAwB,KAKxBC,qBAAgC,KAKhCC,sBAAiC,KAKjCC,aAAwB,KAKQC,KAAe,EAK/CC,MAQRC,WAKQC,SAAmBC,EAKnBC,gBAA4BC,EAQpCC,eAQAC,OAKQC,iBAA4B,KAG5BC,iBAAiC,IACxC/C,EAAkBC,KAAKC,SAAS8C,aAAaC,UAAUC,QAChDC,kBAAkC,IACzCnD,EAAkBC,KAAKC,SAAS8C,aAAaC,UAAUG,SAChDC,iBAAiC,IACxCrD,EAAkBC,KAAKC,SAAS8C,aAAaC,UAAUjB,QAIhDsB,uBAAkC,KAElCC,yBAAyC,IAChDvD,EAAkBC,KAAKC,SAAS8C,YAAYQ,SAASN,QAC9CO,0BAA0C,IACjDzD,EAAkBC,KAAKC,SAAS8C,YAAYQ,SAASJ,SAQtDM,sBAKQC,OAAkB,K,yBAYTzD,SAAgB,GAEhB0D,cAAuB,GACvBC,SAAkB,GAClBC,OAAgB,GAEhBC,oBAA+B9D,KAAKR,mBACpCuE,mBAETC,uBAA2C,GAClCC,oBAAwC,GACxCC,eAAmC,GAEnCC,cAAyB,MAElCC,UAAY,MACZC,qBAAuB,MACvBC,sBAAwB,MACxBC,mBAAqB,MACrBC,eAER,iBAAAC,GACCzE,KAAKqE,uBAAyBrE,KAAK0E,IAAIC,cACtC,mCAGD3E,KAAKsE,wBAA0BtE,KAAK0E,IAAIC,cACvC,oCAGD3E,KAAK4E,uBAEL5E,KAAK6E,cACL7E,KAAK8E,YAAY9E,KAAKb,OACtBa,KAAK+E,wBACL/E,KAAKgF,kB,CAGN,kBAAAC,GACCjF,KAAKY,YAAYsE,M,CAGlB,MAAAC,GACC,OACCC,EAACC,EAAK,CAAAC,IAAA,2CAAAC,MAAM,qBACXH,EAAA,qBAAAE,IAAA,4CACEtF,KAAKa,cACLuE,EACC,kBAAAE,IAAA,2CAAAC,MAAM,OAENzE,aAAcd,KAAKc,aACnBC,4BAA6Bf,KAAKe,4BAClCyE,cAAe,EAAGC,YAAazF,KAAK4B,YAAYsD,KAAKO,GAErDzE,aAAchB,KAAKgB,aACnBC,MAAOjB,KAAKiB,MACZyE,cAAe,EAAGD,YAAazF,KAAK6B,YAAYqD,KAAKO,GAErDvE,aAAclB,KAAKkB,aACnBC,oBAAqBnB,KAAKmB,oBAC1BC,sBAAuBpB,KAAKoB,sBAC5BC,qBAAsBrB,KAAKqB,qBAC3BsE,SAAU,IAAM3F,KAAK8B,OAAOoD,OAE5B5D,aAActB,KAAKsB,aACnBsE,WAAY5F,KAAKyB,iBACjBoE,WAAY7F,KAAK0B,iBACjBoE,cAAe9F,KAAKuB,oBACpBwE,aAAc/F,KAAKwB,oBACnBG,qBAAsB3B,KAAK2B,qBAC3BqE,SAAU,IAAMhG,KAAK+B,OAAOmD,OAC5Be,oBAAqBjG,KAAKL,cAAcuG,OAExC/D,aAAcnC,KAAKmC,aACnBgE,SAAU,IAAMnG,KAAK4C,OAAOsC,OAE5B9F,QAASY,KAAKX,eAEbW,KAAKqE,sBACLe,EACC,QAAAE,IAAA,2CAAAc,KAAK,gBACLC,KAAK,kBAINrG,KAAKsE,uBACLc,EAAA,QAAAE,IAAA,2CACCc,KAAK,iBACLC,KAAK,oBAMRrG,KAAKsG,kBACLtG,KAAKuG,aACNnB,EAAK,OAAAE,IAAA,2CAAAC,MAAM,wBACTvF,KAAKwG,WACNpB,EAAA,QAAAE,IAAA,2CAAMc,KAAK,iBAGXpG,KAAKJ,oBAAsBI,KAAK8D,oBAChCsB,EAAA,6BACCqB,YAAa,KACblB,MAAOmB,EAA2B,CACjCC,UAAW3G,KAAKgC,eAAiBhC,KAAKmE,cACtCyC,SAAU5G,KAAKL,cAAcuG,OAC7BW,MAAO7G,KAAKuE,qBAEbuC,uBAAwB9G,KAAKH,mCAC7BC,OAAQE,KAAKL,cAAcuG,OAC3Ba,uBAAwB/G,KAAKiE,qBAAqBiC,OAClDc,QAAS,IAAMhH,KAAKiH,iBAAiB,KAAM,QAE1CjH,KAAKiE,qBAAqBiC,QAC1BlG,KAAKiE,oBAAoBiD,KAAIC,GAC5B/B,EACC,wBAAAiB,KAAK,qBACLe,SAAUD,EAAEC,SACZhI,QAAS+H,EAAE/H,QACXiI,KAAMF,EAAEE,KACRC,WAAYH,EAAEG,WACdC,SAAUJ,EAAEI,SACZC,QAAS,KACPL,EAAEC,WACFD,EAAE/H,WACD+H,EAAEpF,QACJoF,EAAEM,OAAS,SACRN,EAAEpF,OAAO/B,KAAKL,aAAa,GAAI,OAC/BwH,EAAEpF,OAAO/B,KAAKL,aAAc,OAG/BwH,EAAEO,UAGqB,GAK5B1H,KAAKgC,cACLoD,EAAA,kBAAAE,IAAA,2CAECzC,iBAAkB7C,KAAK6C,iBAEvBZ,qBAAsBjC,KAAKiC,qBAC3BM,SAAUvC,KAAKuC,SACfE,gBAAiBzC,KAAKyC,gBACtBkF,iBAAkB,EAAGlC,YACpBzF,KAAK2C,eAAeuC,KAAKO,GAG1BvD,sBAAuBlC,KAAKkC,sBAC5BE,KAAMpC,KAAKoC,KACXC,MAAOrC,KAAKqC,MACZuF,aAAc,EAAGnC,YAAazF,KAAKsC,WAAW4C,KAAKO,GAEnDrG,QAASY,KAAKV,cACduI,eAAgB,EAAGpC,YAAczF,KAAKmE,cAAgBsB,EAEtDqC,qBACC9H,KAAKa,cACLb,KAAKsB,cACLtB,KAAKwB,uB,CAUJ,iBAAMqD,GACb7E,KAAKC,eAAiB8H,EAA0B/H,KAAK0E,I,CAItD,wBAAAsD,GACChI,KAAKgF,kB,CAIN,OAAAiD,EAAQ3C,IAAEA,IACT,GAAIA,IAAQ,WAAatF,KAAKoE,YAAc,KAAM,CACjD,M,CAGDpE,KAAKoE,UAAY,I,CAIlB,KAAA8D,EAAM5C,IAAEA,IACP,GAAIA,IAAQ,WAAatF,KAAKoE,YAAc,MAAO,CAClD,M,CAGDpE,KAAKoE,UAAY,K,CAIlB,gBAAA+D,GACC,GAAIC,SAASC,kBAAoB,UAAYrI,KAAKoE,YAAc,MAAO,CACtE,M,CAGDpE,KAAKoE,UAAY,K,CAIV,WAAAU,CAAY3F,GACnB,IAAKA,EAAO,CACXa,KAAK6D,OAAS,GACd,M,CAGD,GAAIyE,MAAMC,QAAQpJ,GAAQ,CACzBa,KAAK6D,OAAS1E,EACd,M,CAGDa,KAAK6D,OAAS2E,KAAKC,MAAMtJ,E,CAOlB,oBAAAyF,GACP,GAAI5E,KAAKwE,eAAgB,CACxBkE,aAAa1I,KAAKwE,e,CAKnBxE,KAAKwE,eAAiBmE,YAAW,KAChC,MAAMC,EAASC,IAGf,MAAMC,EAAUR,MAAMS,KACrB/I,KAAK0E,IAAIsE,iBAAiB,gCAE3BhJ,KAAKkE,eAAiB4E,EAAQhH,QAC7BqF,GAAKA,EAAEM,OAAS,QAAUN,EAAEM,OAAS,WAEtCzH,KAAKgE,uBAAyB8E,EAC5BhH,QACAqF,GACEnH,KAAKR,qBACJ2H,EAAEM,OAAS,QAAUN,EAAEM,OAAS,UACjCmB,GAAUzB,EAAEM,OAAS,WAEvBP,KAAIC,IACJ,GAAIA,EAAEM,OAAS,SAAU,CACxBN,EAAEC,SAAWpH,KAAKL,cAAcuG,OAAS,C,CAG1C,OAAOiB,CAAC,IAGV,IAAI1H,EAAoBO,KAAKP,kBAC7B,GACCmJ,GACA5I,KAAKgE,wBAAwBkC,SAC3BzG,IAAsBwJ,WAAajJ,KAAKR,qBACxCQ,KAAKR,oBACN,CACDC,EAAoB,C,CAGrBO,KAAK+D,mBAAqBtE,EAE1B,IAAID,EAAqBQ,KAAKR,mBAC9B,GACCoJ,GACA5I,KAAKgE,wBAAwBkC,SAC5B1G,EACA,CACDA,EAAqB,I,CAGtBQ,KAAK8D,oBAAsBtE,EAE3B,GAAIQ,KAAKuE,mBAAoB,CAC5BvE,KAAKkJ,mB,IAEJ,I,CAGI,qBAAAnE,GACP,MAAMoE,EAAcnJ,KAAK0E,IAAIsE,iBAAiB,wBAC9C,IAAII,EAAmBd,MAAMS,KAAKI,GAElCC,EAAmBpJ,KAAKqJ,kBAAkBD,GAE1CpJ,KAAK2D,cAAgByF,C,CAGd,gBAAApE,GACP,MAAMmE,EAAcnJ,KAAK0E,IAAIsE,iBAAiB,kBAC9C,IAAII,EAAmBd,MAAMS,KAAKI,GAElCC,EAAmBpJ,KAAKqJ,kBAAkBD,GAE1CpJ,KAAK4D,SAAWwF,C,CAGT,eAAA9C,GACP,IAAKtG,KAAK2D,eAAeuC,OAAQ,CAChC,OAAO,I,CAGR,OACCd,EAAA,eACCkE,QAAQ,mBACRC,OAAQ,MAEPvJ,KAAK2D,cAAcuD,KAAI,CAACsC,EAAuBC,IAE9CrE,EAAA,gBACCsE,WAAYF,EACZF,QAAQ,mBACRK,eAAgBF,IAAU,GAAKzJ,KAAK8D,oBACpC2F,MAAOA,GAEPrE,EAAA,SAAIoE,EAAIpD,S,CAQN,UAAAG,GACP,OACCnB,EAAa,eAAAkE,QAAQ,UACnBtJ,KAAK4D,SAASsD,KAAI,CAACsC,EAAkBC,IACrCrE,EAAA,gBACCsE,WAAYF,EACZI,MAAOJ,EAAIpD,KACXkD,QAAQ,SACRO,SACCJ,IAAU,GAAKD,EAAIM,YAChB9J,KAAK+J,aAAa,KAAM/J,KAAKZ,QAAU,UAAY,UACnD,KAEJqK,MAAOA,M,CAOJ,QAAAjD,GACP,GAAIxG,KAAKZ,QAAS,CACjB,OAAOkJ,MAAMS,KACZ,CACC7C,OAAQlG,KAAKT,sBAEd,CAACyK,EAAGC,IACH7E,EACC,eAAA8E,YAAalK,KAAK8D,qBAAuB9D,KAAKN,eAC9C6J,OAAQU,IAAMjK,KAAKT,oBAAsB,GAExCS,KAAKmK,mBAAmBF,K,CAM7B,IAAKjK,KAAK6D,OAAOqC,OAAQ,CACxB,OAAOlG,KAAKoK,gB,CAGb,OAAOpK,KAAK6D,OAAOqD,KAAI,CAACmD,EAAMZ,IAC7BrE,EAAA,eACC8E,YAAalK,KAAK8D,qBAAuB9D,KAAKN,eAC9C4K,QAAStK,KAAKuK,mBAAmBd,GACjCjC,QAASgD,GAAMxK,KAAKyK,UAAUD,EAAIf,GAClCF,OAAQE,IAAUzJ,KAAK6D,OAAOqC,OAAS,GAEtClG,KAAK0K,eAAeL,EAAMZ,GAC1BzJ,KAAK2K,YAAYN,EAAMZ,K,CAKnB,WAAAkB,CAAYN,EAAMZ,GACzB,MAAMX,EAAU9I,KAAKkE,eAAepC,QAAOqF,GAC1CA,EAAEyD,aAAezD,EAAEyD,aAAaP,GAAQ,OAGzC,GAAIvB,GAAS5C,SAAW2C,IAAY,CACnC,OACCzD,EAAA,iCACCiB,KAAK,UACLiE,QAAStK,KAAKuK,mBAAmBd,IAEhCX,EAAQ5B,KAAIC,GACZ/B,EAAA,aACCyF,SAAS,QACT1H,QAASgE,EAAEO,OAEXtC,EAAA,kCAECkE,QAAQ,YACRjD,KAAK,UACLgB,KAAMF,EAAEE,KACRC,WAAYH,EAAEG,WACdC,SAAUJ,EAAEI,SACZuD,SAAU,KACVC,KAAK,KACLvD,QAAS,WACDL,EAAEpF,SAAW,YAAcoF,EAAEpF,SAASsI,EAAM,Y,CAS1D,OAAO,I,CAEA,cAAAK,CAAeL,EAAMZ,GAC5B,OAAOzJ,KAAK4D,SAASsD,KAAI,CAACsC,EAAkBwB,IAE1C5F,EACC,gBAAAsE,WAAYF,EACZa,KAAMA,EACNR,SACCmB,IAAa,GAAKxB,EAAIM,YAAc9J,KAAK+J,aAAaN,GAAS,KAEhEA,MAAOuB,EACPC,SAAUxB,K,CAMN,kBAAAU,CAAmBV,GAC1B,OAAOzJ,KAAK4D,SAASsD,KAAI,CAACsC,EAAkBwB,IAE1C5F,EACC,gBAAAsE,WAAYF,EACZF,QAAQ,UACRO,SACCmB,IAAa,GAAKxB,EAAIM,YACnB9J,KAAK+J,aAAaN,EAAO,WACzB,KAEJA,MAAOuB,EACPC,SAAUxB,K,CAMN,YAAAM,CACPkB,EACA3B,EAA4C,WAE5C,IACEtJ,KAAK8D,sBACJ9D,KAAKO,eAAiBP,KAAKiE,qBAAqBiC,OACjD,CACD,M,CAGD,GAAIoD,IAAY,UAAW,CAC1B,OACClE,EACC,YAAAkE,QAAQ,QACR/D,MAAM,mB,CAKT,GAAI+D,IAAY,SAAU,CACzB,OACClE,EAAA,cACCG,MAAO2F,EAAG,CACT,YAAalL,KAAK+D,qBAAuBkF,YAE1CqB,QAAStK,KAAKmL,wBACdC,cAAepL,KAAKqL,0BACpBjE,SAAUpH,KAAK+D,qBAAuBkF,UACtCqC,gBAAiBd,GAAMxK,KAAKiH,iBAAiBuD,I,CAKhD,MAAMH,EAAOrK,KAAK6D,OAAOoH,GAEzB,MAAMM,EAAoBvL,KAAKuK,mBAAmBU,GAElD,OACC7F,EAAA,cACCG,MAAM,gBACN6B,SACEpH,KAAKQ,eAAiB6J,EAAKrK,KAAKQ,eAChCR,KAAK+D,qBAAuBkF,YAC3BsC,GACDvL,KAAKL,aAAauG,SAAWlG,KAAK+D,mBAEpCuG,QAASiB,EACTD,gBAAiBd,GAAMxK,KAAKwL,gBAAgBhB,EAAIS,I,CAK3C,cAAAb,GACP,GAAIpK,KAAKiB,OAAOiF,QAAUlG,KAAKoB,sBAAuB,CACrD,OACCgE,EACC,iBAAAG,MAAM,oBACNkG,aAAa,SACbxI,OAAQjD,KAAKsD,2BACbH,QAASnD,KAAKwD,6B,CAKjB,OACC4B,EACC,iBAAAG,MAAM,oBACNkG,aAAa,QACbxI,OAAQjD,KAAK8C,mBACbK,QAASnD,KAAKkD,oBACd5B,aAActB,KAAKqD,uBACnBuC,WAAW,OACXC,WAAY7F,KAAKoD,mBACjB4C,SAAU,IAAMhG,KAAKsB,cAAgBtB,KAAK+B,OAAOmD,Q,CAK5C,gBAAA+B,CACPuD,EACAkB,GAEA,IAAK1L,KAAK8D,oBAAqB,CAC9B,M,CAGD,MAAMwG,EAAUE,GAAI/E,QAAUiG,GAAc,MAE5C,MAAM9B,EAAQ8B,IAAezC,UAAYqB,EAAUoB,EACnD,GAAI9B,EAAO,CACV,MAAM+B,EAAQ,GACd,IAAK,IAAI1B,EAAI,EAAGA,EAAIjK,KAAK6D,OAAOqC,OAAQ+D,IAAK,CAC5C,MAAM2B,EAAM5L,KAAK6D,OAAOoG,GACxB,GAAIjK,KAAKQ,eAAiBoL,EAAI5L,KAAKQ,cAAe,CACjD,Q,CAGD,GAAIR,KAAKuK,mBAAmBN,GAAI,CAC/B,Q,CAGD0B,EAAME,KAAKD,GACX5L,KAAKU,YAAYwE,KAAK0G,GAEtB,GACC5L,KAAK+D,qBAAuBkF,WAC5BjJ,KAAKL,aAAauG,OAASyF,EAAMzF,SAAWlG,KAAK+D,mBAChD,CACD,K,EAIF/D,KAAKL,aAAe,IAAIK,KAAKL,gBAAiBgM,GAC9C3L,KAAKM,mBAAmB4E,KAAKlF,KAAKL,cAClC,GAAIK,KAAKJ,qBAAuBI,KAAKuE,mBAAoB,CACxDvE,KAAKkJ,mB,CAGN,M,CAGD,IAAK,IAAIe,EAAI,EAAGA,EAAIjK,KAAKL,aAAauG,OAAQ+D,IAAK,CAClD,MAAML,EAAQ5J,KAAKL,aAAasK,GAChC,MAAM2B,EAAM5L,KAAK6D,OAAOiI,MACvBC,GAAK/L,KAAKgM,mBAAmBD,EAAG9B,KAAOjK,KAAKgM,mBAAmBpC,EAAOK,KAGvE,IAAK2B,EAAK,CACT,Q,CAGD5L,KAAKW,cAAcuE,KAAK0G,E,CAGzB5L,KAAKL,aAAe,GACpBK,KAAKM,mBAAmB4E,KAAKlF,KAAKL,a,CAG3B,eAAA6L,EACL/F,OAAQ6E,EAAO2B,OAAEA,GACnBxC,GAEA,IAAKzJ,KAAK8D,oBAAqB,CAC9B,M,CAGD,GACCwG,GACAtK,KAAK+D,qBAAuBkF,WAC5BjJ,KAAKL,aAAauG,QAAUlG,KAAK+D,mBAChC,CACDkI,EAAO3B,QAAU,MACjB,M,CAGD,MAAMsB,EAAM5L,KAAK6D,OAAO4F,GAExB,GAAIzJ,KAAKQ,eAAiBoL,EAAI5L,KAAKQ,cAAe,CACjDyL,EAAO3B,QAAU,MACjB,M,CAGD,GAAIA,EAAS,CACZtK,KAAKL,aAAe,IAChBK,KAAKL,aACR,IACIiM,EACHnC,UAGFzJ,KAAKM,mBAAmB4E,KAAKlF,KAAKL,cAClCK,KAAKU,YAAYwE,KAAK0G,GAEtB,GAAI5L,KAAKJ,qBAAuBI,KAAKuE,mBAAoB,CACxDvE,KAAKkJ,mB,CAGN,M,CAGD,MAAMgD,EAAkBlM,KAAKuK,mBAAmBd,EAAO,MAGvD,MAAM0C,EAAY,IAAInM,KAAKL,cAC3BwM,EAAUC,OAAOF,EAAiB,GAClClM,KAAKL,aAAewM,EACpBnM,KAAKM,mBAAmB4E,KAAKlF,KAAKL,cAClCK,KAAKW,cAAcuE,KAAK0G,E,CAGjB,kBAAAI,CAAmBJ,EAAUnC,GACpC,OAAOzJ,KAAKO,aAAeqL,IAAM5L,KAAKO,eAAiBkJ,EAAQA,C,CAGxD,kBAAAc,CAAmBd,EAAO4C,EAAc,OAC/C,MAAMC,EAActM,KAAKL,aAAa4M,WACrClC,GAAQA,EAAKZ,QAAUA,IAExB,OAAQ4C,EAAcC,GAAe,EAAIA,C,CAGlC,qBAAAnB,GACP,IAAImB,EAAc,KAClB,IAAKtM,KAAK6D,QAAQqC,OAAQ,CACzB,OAAO,K,CAGR,GACClG,KAAK+D,qBAAuBkF,WAC5BjJ,KAAKL,aAAauG,SAAWlG,KAAK+D,mBACjC,CACD,OAAO,I,CAGR,IAAK,IAAIkG,EAAI,EAAGA,EAAIjK,KAAK6D,QAAQqC,OAAQ+D,IAAK,CAC7C,MAAMuC,EAAWxM,KAAKuK,mBAAmBN,GAEzC,IAAKuC,EAAU,CACdF,EAAc,MACd,K,EAIF,OAAOA,C,CAGA,uBAAAjB,GACP,IAAKrL,KAAK6D,QAAQqC,SAAWlG,KAAKL,cAAcuG,OAAQ,CACvD,OAAO,K,CAGR,GACClG,KAAK+D,qBAAuBkF,WAC5BjJ,KAAKL,aAAauG,SAAWlG,KAAK+D,mBACjC,CACD,OAAO,K,CAGR,IAAI0I,EAAgB,EACpB,IAAK,IAAIxC,EAAI,EAAGA,EAAIjK,KAAK6D,QAAQqC,OAAQ+D,IAAK,CAC7C,MAAMuC,EAAWxM,KAAKuK,mBAAmBN,GAEzC,GAAIuC,EAAU,CACbC,G,EAIF,OAAOA,EAAgB,GAAKA,IAAkBzM,KAAK6D,OAAOqC,M,CAGnD,SAAAuE,CAAUiC,EAAQjD,GACzB,MAAMwC,EAASS,EAAOT,OAEtB,GACCA,EAAOU,QAAQC,gBAAkB,SACjCX,EAAOxE,OAAS,WACf,CACD,M,CAGD,MAAMmE,EAAM5L,KAAK6M,SAASH,EAAOT,QACjC,MAAMlK,EAAS/B,KAAK8M,eAAeJ,EAAOT,QAE1C,GAAIlK,EAAQ,CACX,M,CAGD,GAAI/B,KAAKN,eAAgB,CACxB,MAAM2K,EAAOrK,KAAK6D,OAAO4F,GACzBzJ,KAAKS,SAASyE,KAAK,CAClBmF,OACA0C,SAAU/M,KAAKoE,YAEhB,M,CAGD,IAAKpE,KAAK8D,oBAAqB,CAC9B,M,CAGD,MAAM+F,EAAW+B,GAAKjH,cAAc,0BAEpC,IAAKkF,EAAU,CACd,M,CAGDA,EAASS,SAAWT,EAASS,QAC7BtK,KAAKwL,gBAAgB3B,EAAUJ,E,CAGxB,QAAAoD,CAASG,GAChB,IAAKA,EAAI,CACR,OAAOA,C,CAGR,GAAIA,GAAIL,SAASC,gBAAkB,cAAe,CACjD,OAAOI,C,CAGR,OAAOhN,KAAK6M,SAASG,GAAIC,c,CAGlB,cAAAH,CAAeE,GACtB,IAAKA,EAAI,CACR,OAAO,I,CAGR,GACCA,EAAGE,aAAa,oBAAsB,MACtCF,EAAGE,aAAa,oBAAsB,QACrC,CACD,OAAOF,C,CAGR,GAAIA,GAAIL,SAASC,gBAAkB,cAAe,CACjD,OAAO,I,CAGR,OAAO5M,KAAK8M,eAAeE,GAAIC,c,CAGxB,iBAAA/D,GACP,IAAIJ,EAAU9I,KAAKgE,uBACnB,GACChE,KAAKP,oBAAsB,GAC3BqJ,EAAQyD,WACPpF,IAAMA,EAAEM,OAAS,UAAYN,EAAEM,OAAS,SAAWN,EAAEyD,gBACjD,EACJ,CACD9B,EAAUA,EAAQhH,QACjBqF,GACCA,EAAEM,OAAS,UACVN,EAAEyD,cACHzD,EAAEyD,aAAa5K,KAAKL,aAAa,K,CAIpCK,KAAKiE,oBAAsB6E,EAC3B9I,KAAKuE,mBAAqB,I,CAGnB,iBAAA8E,CACPD,GAEA,OAAOA,EAAiBlC,KAAIwC,IAC3BA,EAAa1J,KAAKmN,sBAAsBzD,GACxC,OAAOA,CAAU,G,CAIX,qBAAAyD,CACPzD,GAEA,MAAM0D,EAAgB1D,EACtB,IAAI2D,EAAgC,CAAEC,QAAS,QAE/C,UACQ5D,EAAW6D,QAAU,WAC3B,CAAC,OAAQ,SAAU,QAAQC,SAAS9D,EAAW6D,OAC/C,CACD7D,EAAW6D,MAAQ/E,KAAKC,MAAMiB,EAAW6D,M,CAG1C,IAAK,MAAO9D,EAAOsB,KAAS0C,EAAuBC,UAAW,CAC7D,GACCN,EAAcG,QAAU,QACxBH,EAAcG,QAAU,UACxBH,EAAcG,QAAU,eACjBH,EAAcG,QAAU,SAC9B,CACDF,EAAYtC,GACXqC,EAAcG,QAAU,OAAS,OAASH,EAAcG,MACzD,Q,CAGDF,EAAYtC,GACXqC,EAAcG,MAAMxC,IACpBsC,EAAYI,EAAuBhE,EAAQ,G,CAG7CC,EAAW2D,YAAcA,EACzB,OAAO3D,C","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e}from"./p-Dpmiv2da.js";const s=class{constructor(s){t(this,s);this.tableDefinitionChanged=e(this,"tableDefinitionChanged",7)}name;sticky=false;useSlot=true;align="start";parsedSizes;sizes="auto";tableDefinitionChanged;componentDidUpdate(){this.tableDefinitionChanged.emit(true)}render(){return}};export{s as p_table_extra_header};
|
|
2
|
+
//# sourceMappingURL=p-c59b1d50.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TableExtraHeader","name","sticky","useSlot","align","parsedSizes","sizes","tableDefinitionChanged","componentDidUpdate","this","emit","render"],"sources":["src/components/helpers/table/extra-header/table-extra-header.component.tsx"],"sourcesContent":["import { Component, Event, EventEmitter, Prop } from '@stencil/core';\nimport { TableColumnSizes } from '../../../../types/table';\n\n@Component({\n\ttag: 'p-table-extra-header',\n})\nexport class TableExtraHeader {\n\t/**\n\t * The name of the column\n\t */\n\t@Prop({ reflect: true, mutable: true }) name: string;\n\n\t/**\n\t * Wether the column should be sticky (Only works on angular variant of table)\n\t */\n\t@Prop({ reflect: true, mutable: true }) sticky: boolean = false;\n\n\t/**\n\t * Wether the column should use the slot\n\t */\n\t@Prop({ reflect: true, mutable: true }) useSlot: boolean = true;\n\n\t/**\n\t * The alignment of the column\n\t */\n\t@Prop({ reflect: true, mutable: true }) align: 'start' | 'center' | 'end' =\n\t\t'start';\n\n\t/**\n\t * Parsed sizes based on the complete set of columns\n\t */\n\t@Prop({ reflect: true, mutable: true }) parsedSizes:\n\t\t| TableColumnSizes\n\t\t| undefined;\n\n\t/**\n\t * The sizes of the column\n\t */\n\t@Prop({ mutable: true }) sizes:\n\t\t| 'auto'\n\t\t| 'hidden'\n\t\t| 'full'\n\t\t| number\n\t\t| TableColumnSizes = 'auto';\n\n\t/**\n\t * Event to let the table know it has to re render\n\t */\n\t@Event({ bubbles: true, composed: true })\n\ttableDefinitionChanged: EventEmitter<boolean>;\n\n\tcomponentDidUpdate() {\n\t\tthis.tableDefinitionChanged.emit(true);\n\t}\n\n\trender() {\n\t\treturn;\n\t}\n}\n"],"mappings":"iDAMaA,EAAgB,M,wFAIYC,KAKAC,OAAkB,MAKlBC,QAAmB,KAKnBC,MACvC,QAKuCC,YAOfC,MAKH,OAMtBC,uBAEA,kBAAAC,GACCC,KAAKF,uBAAuBG,KAAK,K,CAGlC,MAAAC,GACC,M","ignoreList":[]}
|