@paperless/core 2.7.0 → 2.8.1
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 +31 -0
- package/dist/{paperless/p-9ea16d5d.entry.js → build/p-1f8d1a00.entry.js} +2 -2
- package/dist/build/p-1f8d1a00.entry.js.map +1 -0
- package/dist/build/p-317ecffd.js +2 -0
- package/dist/build/{p-07e3e30d.entry.js → p-59fd0fa7.entry.js} +2 -2
- package/dist/build/{p-07e3e30d.entry.js.map → p-59fd0fa7.entry.js.map} +1 -1
- package/dist/build/p-78e3da08.entry.js +2 -0
- package/dist/build/p-78e3da08.entry.js.map +1 -0
- package/dist/build/p-button.p-icon.p-loader.entry.esm.js.map +1 -1
- package/dist/build/p-select.entry.esm.js.map +1 -1
- package/dist/build/p-table.entry.esm.js.map +1 -1
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/p-button.p-icon.p-loader.entry.cjs.js.map +1 -1
- package/dist/cjs/p-button_3.cjs.entry.js +9 -5
- package/dist/cjs/p-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-select.cjs.entry.js +26 -11
- package/dist/cjs/p-select.cjs.entry.js.map +1 -1
- package/dist/cjs/p-select.entry.cjs.js.map +1 -1
- package/dist/cjs/p-table.cjs.entry.js +1 -1
- 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/paperless.cjs.js +1 -1
- package/dist/collection/components/molecules/button/button.component.js +28 -5
- package/dist/collection/components/molecules/button/button.component.js.map +1 -1
- package/dist/collection/components/molecules/select/select.component.js +70 -16
- package/dist/collection/components/molecules/select/select.component.js.map +1 -1
- package/dist/collection/components/organisms/table/table.component.js +1 -1
- package/dist/collection/components/organisms/table/table.component.js.map +1 -1
- package/dist/components/{p-BxaMa-zX.js → p-Bj4zaP4W.js} +12 -7
- package/dist/components/p-Bj4zaP4W.js.map +1 -0
- package/dist/components/{p-DkDvtuHb.js → p-BszL_c7N.js} +3 -3
- package/dist/components/{p-DkDvtuHb.js.map → p-BszL_c7N.js.map} +1 -1
- package/dist/components/{p-BjzvlPmK.js → p-CAuilYKO.js} +3 -3
- package/dist/components/{p-BjzvlPmK.js.map → p-CAuilYKO.js.map} +1 -1
- package/dist/components/{p-C5ARltpo.js → p-D6fvvqdR.js} +3 -3
- package/dist/components/{p-C5ARltpo.js.map → p-D6fvvqdR.js.map} +1 -1
- package/dist/components/{p-u3j0oh8O.js → p-DELpyxTl.js} +3 -3
- package/dist/components/{p-u3j0oh8O.js.map → p-DELpyxTl.js.map} +1 -1
- package/dist/components/{p-CqCcGAN-.js → p-DzrsNZxP.js} +3 -3
- package/dist/components/{p-CqCcGAN-.js.map → p-DzrsNZxP.js.map} +1 -1
- package/dist/components/p-attachment.js +1 -1
- package/dist/components/p-button.js +1 -1
- package/dist/components/p-calendar.js +1 -1
- package/dist/components/p-datepicker.js +3 -3
- package/dist/components/p-drawer-header.js +1 -1
- package/dist/components/p-drawer.js +2 -2
- package/dist/components/p-empty-state.js +1 -1
- package/dist/components/p-field.js +1 -1
- package/dist/components/p-modal-header.js +1 -1
- package/dist/components/p-modal.js +2 -2
- package/dist/components/p-navbar.js +1 -1
- package/dist/components/p-profile.js +1 -1
- package/dist/components/p-select.js +31 -14
- package/dist/components/p-select.js.map +1 -1
- package/dist/components/p-table-header.js +1 -1
- package/dist/components/p-table.js +5 -5
- package/dist/components/p-table.js.map +1 -1
- package/dist/components/{p-6cqiSGZO.js → p-wIVv4FEB.js} +4 -4
- package/dist/components/{p-6cqiSGZO.js.map → p-wIVv4FEB.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/p-button.p-icon.p-loader.entry.js.map +1 -1
- package/dist/esm/p-button_3.entry.js +9 -5
- package/dist/esm/p-button_3.entry.js.map +1 -1
- package/dist/esm/p-select.entry.js +26 -11
- package/dist/esm/p-select.entry.js.map +1 -1
- package/dist/esm/p-table.entry.js +1 -1
- package/dist/esm/p-table.entry.js.map +1 -1
- package/dist/esm/paperless.js +1 -1
- package/dist/index.html +1 -1
- package/dist/{build/p-9ea16d5d.entry.js → paperless/p-1f8d1a00.entry.js} +2 -2
- package/dist/paperless/p-1f8d1a00.entry.js.map +1 -0
- package/dist/paperless/{p-07e3e30d.entry.js → p-59fd0fa7.entry.js} +2 -2
- package/dist/paperless/{p-07e3e30d.entry.js.map → p-59fd0fa7.entry.js.map} +1 -1
- package/dist/paperless/p-78e3da08.entry.js +2 -0
- package/dist/paperless/p-78e3da08.entry.js.map +1 -0
- package/dist/paperless/p-button.p-icon.p-loader.entry.esm.js.map +1 -1
- package/dist/paperless/p-select.entry.esm.js.map +1 -1
- 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/molecules/button/button.component.d.ts +4 -0
- package/dist/types/components/molecules/select/select.component.d.ts +9 -1
- package/dist/types/components.d.ts +26 -2
- package/package.json +1 -1
- package/dist/build/p-73bdbb8b.js +0 -2
- package/dist/build/p-9ea16d5d.entry.js.map +0 -1
- package/dist/build/p-cdeae6b0.entry.js +0 -2
- package/dist/build/p-cdeae6b0.entry.js.map +0 -1
- package/dist/components/p-BxaMa-zX.js.map +0 -1
- package/dist/paperless/p-9ea16d5d.entry.js.map +0 -1
- package/dist/paperless/p-cdeae6b0.entry.js +0 -2
- package/dist/paperless/p-cdeae6b0.entry.js.map +0 -1
|
@@ -1 +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","defaultSize","pageSizeOptions","defaultSizeOptions","pageSizeChange","export","hideOnSinglePage","emptyStateHeader","empty_state","no_filter","header","emptyStateContent","content","emptyStateAction","enableEmptyStateAction","emptyStateFilteredHeader","filtered","emptyStateFilteredContent","emptyStateActionClick","shadow","_columns","_items","_enableRowSelection","_rowSelectionLimit","_rowActionsFloatingAll","_rowActionsFloating","_rowActionsRow","_footerHidden","_ctrlDown","_hasCustomFilterSlot","_hasCustomActionsSlot","_floatingMenuShown","_resizeTimeout","componentWillLoad","_el","querySelector","_setRowSelectionData","_setLocales","_parseItems","_generateColumns","componentDidRender","emit","render","h","Host","key","class","onQuickFilter","detail","onQueryChange","onFilter","actionIcon","actionText","actionLoading","canUseAction","onAction","itemsSelectedAmount","length","onExport","name","slot","_getHeader","_getRows","usedInTable","floatingMenuContainerClass","hasFooter","active","shown","amountSelectedTemplate","enableAmountSelected","onClose","_selectAllChange","map","a","disabled","icon","iconRotate","iconFlip","onClick","type","label","onPageSizeChange","onPageChange","onHiddenChange","getLocaleComponentStrings","onTableDefinitionUpdated","keyDown","keyUp","visibilityChange","document","visibilityState","Array","isArray","JSON","parse","clearTimeout","setTimeout","mobile","isMobile","actions","from","querySelectorAll","undefined","_showFloatingMenu","definitions","definitionsArray","_parseDefinitions","variant","col","index","definition","value","checkbox","hasCheckbox","_getCheckbox","_","i","enableHover","isLast","_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 { TableColumn } from '../../helpers/table/column/table-column.component';\nimport { TableRowAction } from '../../helpers/table/row-action/table-row-action.component';\nimport {\n\tdefaultSize,\n\tdefaultSizeOptions,\n} from '../../molecules/pagination/size/constants';\nimport { buttonTemplateFunc } from '../../molecules/table/header/table-header.component';\nimport { cn } from '../../../utils/cn';\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[] = [];\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 = defaultSize;\n\n\t/**\n\t * The options for the page size\n\t */\n\t@Prop() pageSizeOptions: number[] = defaultSizeOptions;\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 _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._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._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></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 _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 _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)}\n\t\t\t</p-table-row>\n\t\t));\n\t}\n\n\tprivate _getActions(item) {\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 slot='actions'>\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></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(definitionsArray: HTMLPTableColumnElement[]) {\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(definition: HTMLPTableColumnElement) {\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,MCyCbC,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,aAA8B,GAK9BC,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,SAAkB,GAClBC,OAAgB,GAEhBC,oBAA+B7D,KAAKR,mBACpCsE,mBAETC,uBAA2C,GAClCC,oBAAwC,GACxCC,eAAmC,GAEnCC,cAAyB,MAElCC,UAAY,MACZC,qBAAuB,MACvBC,sBAAwB,MACxBC,mBAAqB,MACrBC,eAER,iBAAAC,GACCxE,KAAKoE,uBAAyBpE,KAAKyE,IAAIC,cACtC,mCAGD1E,KAAKqE,wBAA0BrE,KAAKyE,IAAIC,cACvC,oCAGD1E,KAAK2E,uBAEL3E,KAAK4E,cACL5E,KAAK6E,YAAY7E,KAAKb,OACtBa,KAAK8E,kB,CAGN,kBAAAC,GACC/E,KAAKY,YAAYoE,M,CAGlB,MAAAC,GACC,OACCC,EAACC,EAAK,CAAAC,IAAA,2CAAAC,MAAM,qBACXH,EAAA,qBAAAE,IAAA,4CACEpF,KAAKa,cACLqE,EACC,kBAAAE,IAAA,2CAAAC,MAAM,OAENvE,aAAcd,KAAKc,aACnBC,4BAA6Bf,KAAKe,4BAClCuE,cAAe,EAAGC,YAAavF,KAAK4B,YAAYoD,KAAKO,GAErDvE,aAAchB,KAAKgB,aACnBC,MAAOjB,KAAKiB,MACZuE,cAAe,EAAGD,YAAavF,KAAK6B,YAAYmD,KAAKO,GAErDrE,aAAclB,KAAKkB,aACnBC,oBAAqBnB,KAAKmB,oBAC1BC,sBAAuBpB,KAAKoB,sBAC5BC,qBAAsBrB,KAAKqB,qBAC3BoE,SAAU,IAAMzF,KAAK8B,OAAOkD,OAE5B1D,aAActB,KAAKsB,aACnBoE,WAAY1F,KAAKyB,iBACjBkE,WAAY3F,KAAK0B,iBACjBkE,cAAe5F,KAAKuB,oBACpBsE,aAAc7F,KAAKwB,oBACnBG,qBAAsB3B,KAAK2B,qBAC3BmE,SAAU,IAAM9F,KAAK+B,OAAOiD,OAC5Be,oBAAqB/F,KAAKL,cAAcqG,OAExC7D,aAAcnC,KAAKmC,aACnB8D,SAAU,IAAMjG,KAAK4C,OAAOoC,OAE5B5F,QAASY,KAAKX,eAEbW,KAAKoE,sBACLc,EACC,QAAAE,IAAA,2CAAAc,KAAK,gBACLC,KAAK,kBAINnG,KAAKqE,uBACLa,EAAA,QAAAE,IAAA,2CACCc,KAAK,iBACLC,KAAK,oBAMRnG,KAAKoG,aACNlB,EAAK,OAAAE,IAAA,2CAAAC,MAAM,wBACTrF,KAAKqG,WACNnB,EAAA,QAAAE,IAAA,2CAAMc,KAAK,iBAGXlG,KAAKJ,oBAAsBI,KAAK6D,oBAChCqB,EAAA,6BACCoB,YAAa,KACbjB,MAAOkB,EAA2B,CACjCC,UAAWxG,KAAKgC,eAAiBhC,KAAKkE,cACtCuC,SAAUzG,KAAKL,cAAcqG,OAC7BU,MAAO1G,KAAKsE,qBAEbqC,uBAAwB3G,KAAKH,mCAC7BC,OAAQE,KAAKL,cAAcqG,OAC3BY,uBAAwB5G,KAAKgE,qBAAqBgC,OAClDa,QAAS,IAAM7G,KAAK8G,iBAAiB,KAAM,QAE1C9G,KAAKgE,qBAAqBgC,QAC1BhG,KAAKgE,oBAAoB+C,KAAIC,GAC5B9B,EACC,wBAAAiB,KAAK,qBACLc,SAAUD,EAAEC,SACZ7H,QAAS4H,EAAE5H,QACX8H,KAAMF,EAAEE,KACRC,WAAYH,EAAEG,WACdC,SAAUJ,EAAEI,SACZC,QAAS,KACPL,EAAEC,WACFD,EAAE5H,WACD4H,EAAEjF,QACJiF,EAAEM,OAAS,SACRN,EAAEjF,OAAO/B,KAAKL,aAAa,GAAI,OAC/BqH,EAAEjF,OAAO/B,KAAKL,aAAc,OAG/BqH,EAAEO,UAGqB,GAK5BvH,KAAKgC,cACLkD,EAAA,kBAAAE,IAAA,2CAECvC,iBAAkB7C,KAAK6C,iBAEvBZ,qBAAsBjC,KAAKiC,qBAC3BM,SAAUvC,KAAKuC,SACfE,gBAAiBzC,KAAKyC,gBACtB+E,iBAAkB,EAAGjC,YACpBvF,KAAK2C,eAAeqC,KAAKO,GAG1BrD,sBAAuBlC,KAAKkC,sBAC5BE,KAAMpC,KAAKoC,KACXC,MAAOrC,KAAKqC,MACZoF,aAAc,EAAGlC,YAAavF,KAAKsC,WAAW0C,KAAKO,GAEnDnG,QAASY,KAAKV,cACdoI,eAAgB,EAAGnC,YAAcvF,KAAKkE,cAAgBqB,K,CASpD,iBAAMX,GACb5E,KAAKC,eAAiB0H,EAA0B3H,KAAKyE,I,CAItD,wBAAAmD,GACC5H,KAAK8E,kB,CAIN,OAAA+C,EAAQzC,IAAEA,IACT,GAAIA,IAAQ,WAAapF,KAAKmE,YAAc,KAAM,CACjD,M,CAGDnE,KAAKmE,UAAY,I,CAIlB,KAAA2D,EAAM1C,IAAEA,IACP,GAAIA,IAAQ,WAAapF,KAAKmE,YAAc,MAAO,CAClD,M,CAGDnE,KAAKmE,UAAY,K,CAIlB,gBAAA4D,GACC,GAAIC,SAASC,kBAAoB,UAAYjI,KAAKmE,YAAc,MAAO,CACtE,M,CAGDnE,KAAKmE,UAAY,K,CAIV,WAAAU,CAAY1F,GACnB,IAAKA,EAAO,CACXa,KAAK4D,OAAS,GACd,M,CAGD,GAAIsE,MAAMC,QAAQhJ,GAAQ,CACzBa,KAAK4D,OAASzE,EACd,M,CAGDa,KAAK4D,OAASwE,KAAKC,MAAMlJ,E,CAOlB,oBAAAwF,GACP,GAAI3E,KAAKuE,eAAgB,CACxB+D,aAAatI,KAAKuE,e,CAKnBvE,KAAKuE,eAAiBgE,YAAW,KAChC,MAAMC,EAASC,IAGf,MAAMC,EAAUR,MAAMS,KACrB3I,KAAKyE,IAAImE,iBAAiB,gCAE3B5I,KAAKiE,eAAiByE,EAAQ5G,QAC7BkF,GAAKA,EAAEM,OAAS,QAAUN,EAAEM,OAAS,WAEtCtH,KAAK+D,uBAAyB2E,EAC5B5G,QACAkF,GACEhH,KAAKR,qBACJwH,EAAEM,OAAS,QAAUN,EAAEM,OAAS,UACjCkB,GAAUxB,EAAEM,OAAS,WAEvBP,KAAIC,IACJ,GAAIA,EAAEM,OAAS,SAAU,CACxBN,EAAEC,SAAWjH,KAAKL,cAAcqG,OAAS,C,CAG1C,OAAOgB,CAAC,IAGV,IAAIvH,EAAoBO,KAAKP,kBAC7B,GACC+I,GACAxI,KAAK+D,wBAAwBiC,SAC3BvG,IAAsBoJ,WAAa7I,KAAKR,qBACxCQ,KAAKR,oBACN,CACDC,EAAoB,C,CAGrBO,KAAK8D,mBAAqBrE,EAE1B,IAAID,EAAqBQ,KAAKR,mBAC9B,GACCgJ,GACAxI,KAAK+D,wBAAwBiC,SAC5BxG,EACA,CACDA,EAAqB,I,CAGtBQ,KAAK6D,oBAAsBrE,EAE3B,GAAIQ,KAAKsE,mBAAoB,CAC5BtE,KAAK8I,mB,IAEJ,I,CAGI,gBAAAhE,GACP,MAAMiE,EAAc/I,KAAKyE,IAAImE,iBAAiB,kBAC9C,IAAII,EAAmBd,MAAMS,KAAKI,GAElCC,EAAmBhJ,KAAKiJ,kBAAkBD,GAE1ChJ,KAAK2D,SAAWqF,C,CAGT,UAAA5C,GACP,OACClB,EAAa,eAAAgE,QAAQ,UACnBlJ,KAAK2D,SAASoD,KAAI,CAACoC,EAAkBC,IACrClE,EAAA,gBACCmE,WAAYF,EACZG,MAAOH,EAAIjD,KACXgD,QAAQ,SACRK,SACCH,IAAU,GAAKD,EAAIK,YAChBxJ,KAAKyJ,aAAa,KAAMzJ,KAAKZ,QAAU,UAAY,UACnD,KAEJgK,MAAOA,M,CAOJ,QAAA/C,GACP,GAAIrG,KAAKZ,QAAS,CACjB,OAAO8I,MAAMS,KACZ,CACC3C,OAAQhG,KAAKT,sBAEd,CAACmK,EAAGC,IACHzE,EACC,eAAA0E,YAAa5J,KAAK6D,qBAAuB7D,KAAKN,eAC9CmK,OAAQF,IAAM3J,KAAKT,oBAAsB,GAExCS,KAAK8J,mBAAmBH,K,CAM7B,IAAK3J,KAAK4D,OAAOoC,OAAQ,CACxB,OAAOhG,KAAK+J,gB,CAGb,OAAO/J,KAAK4D,OAAOmD,KAAI,CAACiD,EAAMZ,IAC7BlE,EAAA,eACC0E,YAAa5J,KAAK6D,qBAAuB7D,KAAKN,eAC9CuK,QAASjK,KAAKkK,mBAAmBd,GACjC/B,QAAS8C,GAAMnK,KAAKoK,UAAUD,EAAIf,GAClCS,OAAQT,IAAUpJ,KAAK4D,OAAOoC,OAAS,GAEtChG,KAAKqK,eAAeL,EAAMZ,GAC1BpJ,KAAKsK,YAAYN,K,CAKb,WAAAM,CAAYN,GACnB,MAAMtB,EAAU1I,KAAKiE,eAAenC,QAAOkF,GAC1CA,EAAEuD,aAAevD,EAAEuD,aAAaP,GAAQ,OAGzC,GAAItB,GAAS1C,SAAWyC,IAAY,CACnC,OACCvD,EAA+B,iCAAAiB,KAAK,WAClCuC,EAAQ3B,KAAIC,GACZ9B,EACC,aAAAsF,SAAS,QACTrH,QAAS6D,EAAEO,OAEXrC,EAAA,kCAECgE,QAAQ,YACR/C,KAAK,UACLe,KAAMF,EAAEE,KACRC,WAAYH,EAAEG,WACdC,SAAUJ,EAAEI,SACZqD,SAAU,KACVC,KAAK,KACLrD,QAAS,WACDL,EAAEjF,SAAW,YAAciF,EAAEjF,SAASiI,EAAM,Y,CAS1D,OAAO,I,CAEA,cAAAK,CAAeL,EAAMZ,GAC5B,OAAOpJ,KAAK2D,SAASoD,KAAI,CAACoC,EAAkBwB,IAE1CzF,EACC,gBAAAmE,WAAYF,EACZa,KAAMA,EACNT,SACCoB,IAAa,GAAKxB,EAAIK,YAAcxJ,KAAKyJ,aAAaL,GAAS,KAEhEA,MAAOuB,EACPC,SAAUxB,K,CAMN,kBAAAU,CAAmBV,GAC1B,OAAOpJ,KAAK2D,SAASoD,KAAI,CAACoC,EAAkBwB,IAE1CzF,EACC,gBAAAmE,WAAYF,EACZD,QAAQ,UACRK,SACCoB,IAAa,GAAKxB,EAAIK,YACnBxJ,KAAKyJ,aAAaL,EAAO,WACzB,KAEJA,MAAOuB,EACPC,SAAUxB,K,CAMN,YAAAK,CACPmB,EACA1B,EAA4C,WAE5C,IACElJ,KAAK6D,sBACJ7D,KAAKO,eAAiBP,KAAKgE,qBAAqBgC,OACjD,CACD,M,CAGD,GAAIkD,IAAY,UAAW,CAC1B,OACChE,EACC,YAAAgE,QAAQ,QACR7D,MAAM,mB,CAKT,GAAI6D,IAAY,SAAU,CACzB,OACChE,EAAA,cACCG,MAAOwF,EAAG,CACT,YAAa7K,KAAK8D,qBAAuB+E,YAE1CoB,QAASjK,KAAK8K,wBACdC,cAAe/K,KAAKgL,0BACpB/D,SAAUjH,KAAK8D,qBAAuB+E,UACtCoC,gBAAiBd,GAAMnK,KAAK8G,iBAAiBqD,I,CAKhD,MAAMH,EAAOhK,KAAK4D,OAAOgH,GAEzB,MAAMM,EAAoBlL,KAAKkK,mBAAmBU,GAElD,OACC1F,EAAA,cACCG,MAAM,gBACN4B,SACEjH,KAAKQ,eAAiBwJ,EAAKhK,KAAKQ,eAChCR,KAAK8D,qBAAuB+E,YAC3BqC,GACDlL,KAAKL,aAAaqG,SAAWhG,KAAK8D,mBAEpCmG,QAASiB,EACTD,gBAAiBd,GAAMnK,KAAKmL,gBAAgBhB,EAAIS,I,CAK3C,cAAAb,GACP,GAAI/J,KAAKiB,OAAO+E,QAAUhG,KAAKoB,sBAAuB,CACrD,OACC8D,EACC,iBAAAG,MAAM,oBACN+F,aAAa,SACbnI,OAAQjD,KAAKsD,2BACbH,QAASnD,KAAKwD,6B,CAKjB,OACC0B,EACC,iBAAAG,MAAM,oBACN+F,aAAa,QACbnI,OAAQjD,KAAK8C,mBACbK,QAASnD,KAAKkD,oBACd5B,aAActB,KAAKqD,uBACnBqC,WAAW,OACXC,WAAY3F,KAAKoD,oB,CAKZ,gBAAA0D,CACPqD,EACAkB,GAEA,IAAKrL,KAAK6D,oBAAqB,CAC9B,M,CAGD,MAAMoG,EAAUE,GAAI5E,QAAU8F,GAAc,MAE5C,MAAM/B,EAAQ+B,IAAexC,UAAYoB,EAAUoB,EACnD,GAAI/B,EAAO,CACV,MAAMgC,EAAQ,GACd,IAAK,IAAI3B,EAAI,EAAGA,EAAI3J,KAAK4D,OAAOoC,OAAQ2D,IAAK,CAC5C,MAAM4B,EAAMvL,KAAK4D,OAAO+F,GACxB,GAAI3J,KAAKQ,eAAiB+K,EAAIvL,KAAKQ,cAAe,CACjD,Q,CAGD,GAAIR,KAAKkK,mBAAmBP,GAAI,CAC/B,Q,CAGD2B,EAAME,KAAKD,GACXvL,KAAKU,YAAYsE,KAAKuG,GAEtB,GACCvL,KAAK8D,qBAAuB+E,WAC5B7I,KAAKL,aAAaqG,OAASsF,EAAMtF,SAAWhG,KAAK8D,mBAChD,CACD,K,EAIF9D,KAAKL,aAAe,IAAIK,KAAKL,gBAAiB2L,GAC9CtL,KAAKM,mBAAmB0E,KAAKhF,KAAKL,cAClC,GAAIK,KAAKJ,qBAAuBI,KAAKsE,mBAAoB,CACxDtE,KAAK8I,mB,CAGN,M,CAGD,IAAK,IAAIa,EAAI,EAAGA,EAAI3J,KAAKL,aAAaqG,OAAQ2D,IAAK,CAClD,MAAML,EAAQtJ,KAAKL,aAAagK,GAChC,MAAM4B,EAAMvL,KAAK4D,OAAO6H,MACvBC,GAAK1L,KAAK2L,mBAAmBD,EAAG/B,KAAO3J,KAAK2L,mBAAmBrC,EAAOK,KAGvE,IAAK4B,EAAK,CACT,Q,CAGDvL,KAAKW,cAAcqE,KAAKuG,E,CAGzBvL,KAAKL,aAAe,GACpBK,KAAKM,mBAAmB0E,KAAKhF,KAAKL,a,CAG3B,eAAAwL,EACL5F,OAAQ0E,EAAO2B,OAAEA,GACnBxC,GAEA,IAAKpJ,KAAK6D,oBAAqB,CAC9B,M,CAGD,GACCoG,GACAjK,KAAK8D,qBAAuB+E,WAC5B7I,KAAKL,aAAaqG,QAAUhG,KAAK8D,mBAChC,CACD8H,EAAO3B,QAAU,MACjB,M,CAGD,MAAMsB,EAAMvL,KAAK4D,OAAOwF,GAExB,GAAIpJ,KAAKQ,eAAiB+K,EAAIvL,KAAKQ,cAAe,CACjDoL,EAAO3B,QAAU,MACjB,M,CAGD,GAAIA,EAAS,CACZjK,KAAKL,aAAe,IAChBK,KAAKL,aACR,IACI4L,EACHnC,UAGFpJ,KAAKM,mBAAmB0E,KAAKhF,KAAKL,cAClCK,KAAKU,YAAYsE,KAAKuG,GAEtB,GAAIvL,KAAKJ,qBAAuBI,KAAKsE,mBAAoB,CACxDtE,KAAK8I,mB,CAGN,M,CAGD,MAAM+C,EAAkB7L,KAAKkK,mBAAmBd,EAAO,MAGvD,MAAM0C,EAAY,IAAI9L,KAAKL,cAC3BmM,EAAUC,OAAOF,EAAiB,GAClC7L,KAAKL,aAAemM,EACpB9L,KAAKM,mBAAmB0E,KAAKhF,KAAKL,cAClCK,KAAKW,cAAcqE,KAAKuG,E,CAGjB,kBAAAI,CAAmBJ,EAAUnC,GACpC,OAAOpJ,KAAKO,aAAegL,IAAMvL,KAAKO,eAAiB6I,EAAQA,C,CAGxD,kBAAAc,CAAmBd,EAAO4C,EAAc,OAC/C,MAAMC,EAAcjM,KAAKL,aAAauM,WACrClC,GAAQA,EAAKZ,QAAUA,IAExB,OAAQ4C,EAAcC,GAAe,EAAIA,C,CAGlC,qBAAAnB,GACP,IAAImB,EAAc,KAClB,IAAKjM,KAAK4D,QAAQoC,OAAQ,CACzB,OAAO,K,CAGR,GACChG,KAAK8D,qBAAuB+E,WAC5B7I,KAAKL,aAAaqG,SAAWhG,KAAK8D,mBACjC,CACD,OAAO,I,CAGR,IAAK,IAAI6F,EAAI,EAAGA,EAAI3J,KAAK4D,QAAQoC,OAAQ2D,IAAK,CAC7C,MAAMwC,EAAWnM,KAAKkK,mBAAmBP,GAEzC,IAAKwC,EAAU,CACdF,EAAc,MACd,K,EAIF,OAAOA,C,CAGA,uBAAAjB,GACP,IAAKhL,KAAK4D,QAAQoC,SAAWhG,KAAKL,cAAcqG,OAAQ,CACvD,OAAO,K,CAGR,GACChG,KAAK8D,qBAAuB+E,WAC5B7I,KAAKL,aAAaqG,SAAWhG,KAAK8D,mBACjC,CACD,OAAO,K,CAGR,IAAIsI,EAAgB,EACpB,IAAK,IAAIzC,EAAI,EAAGA,EAAI3J,KAAK4D,QAAQoC,OAAQ2D,IAAK,CAC7C,MAAMwC,EAAWnM,KAAKkK,mBAAmBP,GAEzC,GAAIwC,EAAU,CACbC,G,EAIF,OAAOA,EAAgB,GAAKA,IAAkBpM,KAAK4D,OAAOoC,M,CAGnD,SAAAoE,CAAUiC,EAAQjD,GACzB,MAAMwC,EAASS,EAAOT,OAEtB,GACCA,EAAOU,QAAQC,gBAAkB,SACjCX,EAAOtE,OAAS,WACf,CACD,M,CAGD,MAAMiE,EAAMvL,KAAKwM,SAASH,EAAOT,QACjC,MAAM7J,EAAS/B,KAAKyM,eAAeJ,EAAOT,QAE1C,GAAI7J,EAAQ,CACX,M,CAGD,GAAI/B,KAAKN,eAAgB,CACxB,MAAMsK,EAAOhK,KAAK4D,OAAOwF,GACzBpJ,KAAKS,SAASuE,KAAK,CAClBgF,OACA0C,SAAU1M,KAAKmE,YAEhB,M,CAGD,IAAKnE,KAAK6D,oBAAqB,CAC9B,M,CAGD,MAAM0F,EAAWgC,GAAK7G,cAAc,0BAEpC,IAAK6E,EAAU,CACd,M,CAGDA,EAASU,SAAWV,EAASU,QAC7BjK,KAAKmL,gBAAgB5B,EAAUH,E,CAGxB,QAAAoD,CAASG,GAChB,IAAKA,EAAI,CACR,OAAOA,C,CAGR,GAAIA,GAAIL,SAASC,gBAAkB,cAAe,CACjD,OAAOI,C,CAGR,OAAO3M,KAAKwM,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,OAAOvM,KAAKyM,eAAeE,GAAIC,c,CAGxB,iBAAA9D,GACP,IAAIJ,EAAU1I,KAAK+D,uBACnB,GACC/D,KAAKP,oBAAsB,GAC3BiJ,EAAQwD,WACPlF,IAAMA,EAAEM,OAAS,UAAYN,EAAEM,OAAS,SAAWN,EAAEuD,gBACjD,EACJ,CACD7B,EAAUA,EAAQ5G,QACjBkF,GACCA,EAAEM,OAAS,UACVN,EAAEuD,cACHvD,EAAEuD,aAAavK,KAAKL,aAAa,K,CAIpCK,KAAKgE,oBAAsB0E,EAC3B1I,KAAKsE,mBAAqB,I,CAGnB,iBAAA2E,CAAkBD,GACzB,OAAOA,EAAiBjC,KAAIsC,IAC3BA,EAAarJ,KAAK8M,sBAAsBzD,GACxC,OAAOA,CAAU,G,CAIX,qBAAAyD,CAAsBzD,GAC7B,MAAM0D,EAAgB1D,EACtB,IAAI2D,EAAgC,CAAEC,QAAS,QAE/C,UACQ5D,EAAW6D,QAAU,WAC3B,CAAC,OAAQ,SAAU,QAAQC,SAAS9D,EAAW6D,OAC/C,CACD7D,EAAW6D,MAAQ9E,KAAKC,MAAMgB,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":[]}
|
|
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","defaultSize","pageSizeOptions","defaultSizeOptions","pageSizeChange","export","hideOnSinglePage","emptyStateHeader","empty_state","no_filter","header","emptyStateContent","content","emptyStateAction","enableEmptyStateAction","emptyStateFilteredHeader","filtered","emptyStateFilteredContent","emptyStateActionClick","shadow","_columns","_items","_enableRowSelection","_rowSelectionLimit","_rowActionsFloatingAll","_rowActionsFloating","_rowActionsRow","_footerHidden","_ctrlDown","_hasCustomFilterSlot","_hasCustomActionsSlot","_floatingMenuShown","_resizeTimeout","componentWillLoad","_el","querySelector","_setRowSelectionData","_setLocales","_parseItems","_generateColumns","componentDidRender","emit","render","h","Host","key","class","onQuickFilter","detail","onQueryChange","onFilter","actionIcon","actionText","actionLoading","canUseAction","onAction","itemsSelectedAmount","length","onExport","name","slot","_getHeader","_getRows","usedInTable","floatingMenuContainerClass","hasFooter","active","shown","amountSelectedTemplate","enableAmountSelected","onClose","_selectAllChange","map","a","disabled","icon","iconRotate","iconFlip","onClick","type","label","onPageSizeChange","onPageChange","onHiddenChange","getLocaleComponentStrings","onTableDefinitionUpdated","keyDown","keyUp","visibilityChange","document","visibilityState","Array","isArray","JSON","parse","clearTimeout","setTimeout","mobile","isMobile","actions","from","querySelectorAll","undefined","_showFloatingMenu","definitions","definitionsArray","_parseDefinitions","variant","col","index","definition","value","checkbox","hasCheckbox","_getCheckbox","_","i","enableHover","isLast","_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 { TableColumn } from '../../helpers/table/column/table-column.component';\nimport { TableRowAction } from '../../helpers/table/row-action/table-row-action.component';\nimport {\n\tdefaultSize,\n\tdefaultSizeOptions,\n} from '../../molecules/pagination/size/constants';\nimport { buttonTemplateFunc } from '../../molecules/table/header/table-header.component';\nimport { cn } from '../../../utils/cn';\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[] = [];\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 = defaultSize;\n\n\t/**\n\t * The options for the page size\n\t */\n\t@Prop() pageSizeOptions: number[] = defaultSizeOptions;\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 _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._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._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></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 _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 _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)}\n\t\t\t</p-table-row>\n\t\t));\n\t}\n\n\tprivate _getActions(item) {\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 slot='actions'>\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(definitionsArray: HTMLPTableColumnElement[]) {\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(definition: HTMLPTableColumnElement) {\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":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as e,g as i,h as s}from"./p-CNnSbQbk.js";import{a as r}from"./p-BFSNj6hu.js";import{c as a}from"./p-CBWjHURv.js";import{c as n}from"./p-CT54OXR2.js";import"./p-ChV9xqsO.js";const o="*{box-sizing:border-box}:host{--tw-translate-y:0px!important;--tw-translate-x:0px!important}.pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.static{position:static!important}.absolute{position:absolute!important}.relative{position:relative!important}.sticky{position:sticky!important}.top-0{top:0!important}.z-10{z-index:10!important}.mb-3{margin-bottom:.75rem!important}.block{display:block!important}.flex{display:flex!important}.hidden{display:none!important}.h-6{height:1.5rem!important}.h-8{height:2rem!important}.h-\\[1\\.625rem\\]{height:1.625rem!important}.h-full{height:100%!important}.w-6{width:1.5rem!important}.w-full{width:100%!important}.min-w-0{min-width:0!important}.flex-1{flex:1 1 0%!important}.cursor-pointer{cursor:pointer!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.whitespace-nowrap{white-space:nowrap!important}.rounded{border-radius:.25rem!important}.rounded-lg{border-radius:.5rem!important}.p-2{padding:.5rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-center{text-align:center!important}.text-start{text-align:start!important}.text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.font-semibold{font-weight:600!important}.text-indigo-600{--tw-text-opacity:1!important;color:rgb(82 138 250/var(--tw-text-opacity,1))!important}.text-storm-100{--tw-text-opacity:1!important;color:rgb(209 210 212/var(--tw-text-opacity,1))!important}.text-storm-300{--tw-text-opacity:1!important;color:rgb(116 120 127/var(--tw-text-opacity,1))!important}.text-storm-400{--tw-text-opacity:1!important;color:rgb(70 75 84/var(--tw-text-opacity,1))!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 h=a(["flex items-center gap-2","flex-1 min-w-0 h-full","pointer-events-none overflow-hidden"]);const l=a(["item group/item","pointer-events-auto cursor-pointer","flex h-[1.625rem] items-center gap-2","h-[1.625rem] px-2","text-sm font-semibold whitespace-nowrap","rounded-lg","bg-supportive-lilac-100"]);const p=a("block w-full overflow-hidden text-start",{variants:{variant:{placeholder:"text-storm-400",default:null},enableTextWrap:{true:false,false:"text-ellipsis whitespace-nowrap"}}});const c=class{constructor(i){t(this,i);this.queryChange=e(this,"queryChange",3);this.valueChange=e(this,"valueChange",3);this.selectAllChange=e(this,"selectAllChange",3);this.dropdownShown=e(this,"dropdownShown",3);this.add=e(this,"add",3);if(i.$hostElement$["s-ei"]){this._internals=i.$hostElement$["s-ei"]}else{this._internals=i.$hostElement$.attachInternals();i.$hostElement$["s-ei"]=this._internals}}items;multi;strategy="absolute";icon;query;placeholder;autocompletePlaceholder="Search...";value;displayKey="text";dropdownDisplayKey;selectionDisplayKey;valueKey;avatarKey;iconKey="icon";iconClassKey="iconClass";showIconOnSelectedItem;classKey="class";applyClassOnSelectedItem;applyClassOnSelectedItemInMenu;avatarLettersKey;identifierKey;queryKey;autoSelectFirst=true;showChevron=true;maxDisplayedItems=10;enableAutocomplete=true;enableTextWrap=false;asyncFilter=false;loading=false;enableSelectAll=false;selectAllText="Select all";selectAllIcon;queryChange;valueChange;selectAllChange;dropdownShown;size="base";prefix;label;helper;required=true;showOptional=true;error;disabled=false;showAddItem=false;addItemText="Add item";add;emptyStateText="No items available";get _el(){return i(this)}_showDropdown=false;_selectedItem=null;_allSelected=false;_amountHidden=0;_internals;_inputRef;autocompleteInputRef;_multiContainerRef;_resizeObserver;_resizeDebounceTimer;_checkSelectedItemsTimeout;get _items(){return this._getParsedItems()}get _displayValue(){const t=s("div",{class:p({variant:"placeholder"})},this.placeholder);if(!this._selectedItem){return t}if(this.multi){if(this._selectedItem?.length===0){return t}return s("div",{class:h(),ref:t=>this._multiContainerRef=t},this._selectedItem.map((t=>s("div",{class:l(),onClick:()=>this._selectValue(t)},t[this.selectionDisplayKey??this.displayKey],s("p-icon",{class:"text-supportive-lilac group-hover/item:text-supportive-lilac-800 text-xs",variant:"negative"})))),s("div",{class:"extra pointer-events-none hidden text-sm text-storm-100"},"+",this._amountHidden))}return this._getDisplay(this._selectedItem,true)}get _identifierKey(){return this.identifierKey??this.valueKey??"value"}formResetCallback(){this._selectValue(null)}formDisabledCallback(t){if(!this._internals.form){return}this.disabled=t}componentDidLoad(){if(!this.valueKey&&!this.identifierKey){throw new Error("You must provide a valueKey or identifierKey")}if(this.multi){this._setMultiContainerMaxWidth();this._resizeObserver=new ResizeObserver((()=>{if(this._resizeDebounceTimer){clearTimeout(this._resizeDebounceTimer);this._resizeDebounceTimer=null}this._resizeDebounceTimer=setTimeout((()=>{this._setMultiContainerMaxWidth();this._setCheckSelectedItemsTimeout()}),200)}));this._resizeObserver.observe(this._el)}if(this.value){this._valueChange();return}this.itemChanges()}componentDidRender(){if(this.multi){this._setMultiContainerMaxWidth()}}disconnectedCallback(){if(this.multi){this._resizeObserver.disconnect()}}render(){let t=this.icon;if(this._selectedItem&&!this.avatarKey&&!!this.iconKey&&this._selectedItem?.[this.iconKey]&&!this.showIconOnSelectedItem){t=this._selectedItem[this.iconKey]}if(this.avatarKey&&this._selectedItem?.[this.avatarKey]||this.avatarLettersKey&&this._selectedItem?.[this.avatarLettersKey]){t=null}if(this.error?.length){t="warning"}return s("p-field-container",{key:"50e4ce0e9e3d038780a65cb812644ee832a611ec",variant:"write",prefix:this.prefix,label:this.label,helper:this.helper,required:this.required,showOptional:this.showOptional,error:this.error,forceShowTooltip:!!this.error?.length&&!this._showDropdown},s("p-dropdown",{key:"7695a7a10eae3a57115979ea8be826538329907b",applyFullWidth:true,applyMaxWidth:false,slot:"content",insideClick:true,manual:true,scrollable:this.enableAutocomplete?"large":true,show:this._showDropdown,onIsOpen:t=>this._onDropdownOpen(t),strategy:this.strategy},s("p-button",{key:"02d8ab30fda72fd0bdabad7ee31d99b5544604d6",slot:"trigger",class:"w-full",variant:"secondary",size:this.size,chevron:this.showChevron?this._showDropdown?"up":"down":false,disabled:this.disabled,active:this._showDropdown,error:!!this.error?.length,icon:t,iconClass:this.applyClassOnSelectedItem&&this._selectedItem?.[this.iconClassKey],onClick:t=>this._onClick(t)},s("div",{key:"e452946424c01e54351016cf9181446ecad2f574",class:"relative min-w-0 flex-1",ref:t=>this._inputRef=t},this._displayValue)),this.loading?this._getLoadingItems():this._getItems(),this.showAddItem&&this._getAddItem()))}documentClickHandler(t){if(!this._showDropdown||r(t,this._el)){return}this._showDropdown=false}_valueChange(){setTimeout((()=>{this._preselectItem();this._setCheckSelectedItemsTimeout()}))}itemChanges(){setTimeout((()=>this._preselectItem()))}_showDropdownChanges(){this.dropdownShown.emit({value:this._showDropdown,query:this.query})}multiChanges(){if(this._selectedItem&&!Array.isArray(this._selectedItem)){this._selectedItem=[]}}_preselectItem(){let t=typeof this.value==="string"&&this.multi?JSON.parse(this.value):this.value;if(this.multi){if(!Array.isArray(t)){this.value=[];this.valueChange.emit(this.value);return}this.value=t;if(!t.length){this._selectedItem=[];return}this._selectedItem=!!this.valueKey&&this.valueKey!=="false"?this._items.filter((e=>t.includes(e?.[this.valueKey]))):[...t];return}if(!this._selectedItem&&!t&&this.autoSelectFirst){t=this._items[0]}const e=typeof t==="object"&&t!==null?t[this._identifierKey]:t;const i=typeof e==="string"||typeof e==="number"?e:JSON.stringify(e);const s=this._selectedItem?this._selectedItem?.[this._identifierKey]:null;const r=typeof s==="string"||typeof s==="number"?s:JSON.stringify(s);if(this._selectedItem&&r===i){return}if(!this._items?.length&&t){this._selectValue(t,false);return}const a=this._getParsedItems(false);const n=a.find((t=>{const e=t?.[this._identifierKey];const s=typeof e==="string"||typeof e==="number"?e:JSON.stringify(e);return s===i}));this._selectValue(!!n?n:t,false)}_selectValue(t,e=true){let i=!!this.valueKey&&this.valueKey!=="false"&&t!==null?t?.[this.valueKey]:t;if(this.multi){if(!this._selectedItem||!Array.isArray(this._selectedItem)){this._selectedItem=[]}if(!this.value||!Array.isArray(this.value)){this.value=[]}const e=[...this._selectedItem];const s=[...this.value];const r=e.findIndex((e=>e[this._identifierKey]===t[this._identifierKey]));if(r===-1){e.push(t);s.push(i)}else{e.splice(r,1);s.splice(r,1)}this._selectedItem=e;this.value=s;this.valueChange.emit(s);return}this._selectedItem=t;this.value=i;this.valueChange.emit(i);this._onBlur(e)}_onClick(t){const e=t?.composedPath();for(const t of e){if(t.nodeName.toLowerCase()==="p-button"){break}if(t.classList?.contains("item")){return}}this._showDropdown=!this._showDropdown}_onBlur(t=false){if(this.enableAutocomplete&&!t){return}this._showDropdown=false}_onAutoComplete(t){if(!this.enableAutocomplete){return}this._showDropdown=true;this.query=t.detail;this.queryChange.emit(t.detail)}_checkvalue(t,e){return e?.[t]?.toString()?.toLowerCase().indexOf(this.query?.toLowerCase())>=0}_getItems(){let t=this._items.map((t=>{const e=this.multi&&!!this._selectedItem&&Array.isArray(this._selectedItem)?this._selectedItem.findIndex((e=>e[this._identifierKey]===t[this._identifierKey]))>=0:t[this._identifierKey]===this._selectedItem?.[this._identifierKey];return s("p-dropdown-menu-item",{enableTextWrap:this.enableTextWrap,useContainer:false,onClick:()=>this._selectValue(t),active:e,checkbox:this.multi?true:false,slot:"items"},this._getDisplay(t,false,e))}));if(!this._items.length){t=[s("p",{class:"w-full p-2 text-center text-sm text-storm-400",slot:"items"},this.emptyStateText)]}if(this.enableSelectAll&&this._items.length){t.unshift(s("p-dropdown-menu-item",{slot:"items",useContainer:false,checkbox:true,onClick:()=>this._selectAllChange(),active:this._allSelected},this.selectAllIcon?.length?s("span",{class:"flex items-center gap-2"},s("div",{class:"flex w-6 justify-center text-lg"},s("p-icon",{variant:this.selectAllIcon}))," ",this.selectAllText):this.selectAllText))}if(this.enableAutocomplete){t.unshift(this._getAutoCompleteItem())}return t}_getAddItem(){return s("p-dropdown-menu-item",{onClick:()=>this.add.emit(),useContainer:false,slot:"items"},s("span",{class:"flex items-center gap-1 font-semibold text-indigo-600"},this.addItemText,s("p-icon",{variant:"plus"})))}_getLoadingItems(){const t=[0,0,0].map((()=>s("p-dropdown-menu-item",{enableHover:false,slot:"items"},s("p-loader",{variant:"ghost",class:"h-6 w-full rounded"}))));if(this.enableAutocomplete){t.unshift(this._getAutoCompleteItem())}return t}_getAutoCompleteItem(){return s("div",{class:"sticky top-0 z-10 mb-3 h-8",slot:"items"},s("p-field",{class:"block",placeholder:this.autocompletePlaceholder,onValueChange:t=>this._onAutoComplete(t),onInputRefChange:t=>this.autocompleteInputRef=t.detail,value:this.query}))}_setMultiContainerMaxWidth(){if(!this._inputRef||!this._multiContainerRef){return}const t=this._inputRef.clientWidth-16;this._multiContainerRef.style.maxWidth=`${t>=16?t:16}px`}_setCheckSelectedItemsTimeout(){if(this._checkSelectedItemsTimeout){clearTimeout(this._checkSelectedItemsTimeout)}this._checkSelectedItemsTimeout=setTimeout((()=>this._checkSelectedItems()),50)}_checkSelectedItems(){if(!this._multiContainerRef){return}const t=this._multiContainerRef.getBoundingClientRect();const e=this._multiContainerRef.querySelectorAll(".item");let i=0;for(const s of e){s.classList.remove("hidden");s.classList.add("flex");const e=s.getBoundingClientRect();if(e.right>t.right){s.classList.remove("flex");s.classList.add("hidden");i++;continue}}this._amountHidden=i;const s=this._multiContainerRef.querySelector(".extra");if(!s){return}if(!s.classList.contains("hidden")){s.classList.add("hidden")}if(i>0){s.classList.remove("hidden")}}_onDropdownOpen(t){if(!t.detail||!this.autocompleteInputRef){return}setTimeout((()=>this.autocompleteInputRef.focus()),100)}_selectAllChange(){this._allSelected=!this._allSelected;this.selectAllChange.emit(this._allSelected)}_getDisplay(t,e=false,i=false){let r=s("div",{class:p({variant:"default",enableTextWrap:this.enableTextWrap&&!e})},t[e?this.selectionDisplayKey??this.displayKey:this.displayKey]);if(this.avatarKey){r=s("span",{class:"flex items-center gap-2"},s("p-avatar",{size:"sm",src:t[this.avatarKey],letters:t[this.avatarLettersKey]}),s("div",{class:p({variant:"default",enableTextWrap:this.enableTextWrap&&!e})},t[this.dropdownDisplayKey??this.displayKey]))}if(this.iconKey&&(!e||this.showIconOnSelectedItem)){r=s("span",{class:"flex items-center gap-2"},s("p-icon",{class:n("text-storm-300",(!e||!!this.applyClassOnSelectedItem)&&(!i||!!this.applyClassOnSelectedItemInMenu)?t?.[this.iconClassKey]??"":""),variant:t[this.iconKey]}),s("div",{class:p({variant:"default",enableTextWrap:this.enableTextWrap&&!e})},t[this.dropdownDisplayKey??this.displayKey]))}if((!e||!!this.applyClassOnSelectedItem)&&(!i||!!this.applyClassOnSelectedItemInMenu)&&!!t?.[this.classKey]?.length){return s("div",{class:t[this.classKey]},r)}return r}_getParsedItems(t=true){if(!this.items||this.loading){return[]}let e=typeof this.items==="string"?JSON.parse(this.items):this.items;if(typeof e?.[0]==="string"){this.displayKey="text";this.valueKey="value";e=e.map((t=>({value:t,text:t})))}if(this.query?.length&&!this.asyncFilter){e=e.filter((t=>{if(this.queryKey){return this._checkvalue(this.queryKey,t)}return this._checkvalue(this._identifierKey,t)||this._checkvalue(this.displayKey,t)}))}if(!t){return e}return e?.slice(0,this.maxDisplayedItems)}static get formAssociated(){return true}static get watchers(){return{value:["_valueChange"],items:["itemChanges"],_showDropdown:["_showDropdownChanges"],multi:["multiChanges"]}}};c.style=o;export{c as p_select};
|
|
2
|
+
//# sourceMappingURL=p-78e3da08.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["selectComponentCss","multiContainer","cva","multiItem","textContainer","variants","variant","placeholder","default","enableTextWrap","true","false","Select","items","multi","strategy","icon","query","autocompletePlaceholder","value","displayKey","dropdownDisplayKey","selectionDisplayKey","valueKey","avatarKey","iconKey","iconClassKey","showIconOnSelectedItem","classKey","applyClassOnSelectedItem","applyClassOnSelectedItemInMenu","avatarLettersKey","identifierKey","queryKey","autoSelectFirst","showChevron","maxDisplayedItems","enableAutocomplete","asyncFilter","loading","enableSelectAll","selectAllText","selectAllIcon","queryChange","valueChange","selectAllChange","dropdownShown","size","prefix","label","helper","required","showOptional","error","disabled","showAddItem","addItemText","add","emptyStateText","_showDropdown","_selectedItem","_allSelected","_amountHidden","_internals","_inputRef","autocompleteInputRef","_multiContainerRef","_resizeObserver","_resizeDebounceTimer","_checkSelectedItemsTimeout","_items","this","_getParsedItems","_displayValue","h","class","length","ref","map","item","onClick","_selectValue","_getDisplay","_identifierKey","formResetCallback","formDisabledCallback","form","componentDidLoad","Error","_setMultiContainerMaxWidth","ResizeObserver","clearTimeout","setTimeout","_setCheckSelectedItemsTimeout","observe","_el","_valueChange","itemChanges","componentDidRender","disconnectedCallback","disconnect","render","buttonIcon","key","forceShowTooltip","applyFullWidth","applyMaxWidth","slot","insideClick","manual","scrollable","show","onIsOpen","ev","_onDropdownOpen","chevron","active","iconClass","_onClick","_getLoadingItems","_getItems","_getAddItem","documentClickHandler","event","childOfComposed","_preselectItem","_showDropdownChanges","emit","multiChanges","Array","isArray","JSON","parse","filter","i","includes","identifier","parsedValue","stringify","currentValue","currentParsedValue","find","itemIdentifier","parsedItemIdentifier","forceBlur","selectedItem","valueArray","includesIndex","findIndex","push","splice","_onBlur","composed","composedPath","nodeName","toLowerCase","classList","contains","force","_onAutoComplete","detail","_checkvalue","toString","indexOf","isSelected","useContainer","checkbox","unshift","_selectAllChange","_getAutoCompleteItem","enableHover","onValueChange","onInputRefChange","calced","clientWidth","style","maxWidth","_checkSelectedItems","containerRect","getBoundingClientRect","querySelectorAll","amountHidden","child","remove","childRect","right","extra","querySelector","focus","isSelection","isSelectedInMenu","content","src","letters","cn","applyPagination","str","text","slice"],"sources":["src/components/molecules/select/select.component.css?tag=p-select","src/components/molecules/select/select.component.tsx"],"sourcesContent":[":host {\n\t--tw-translate-y: 0px !important;\n\t--tw-translate-x: 0px !important;\n}\n","import { Strategy } from '@floating-ui/dom';\nimport {\n\tAttachInternals,\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport { childOfComposed, cn } from '../../../utils';\nimport { IconVariant } from '../../atoms/icon/icon.component';\n\nimport { cva } from 'class-variance-authority';\n\nconst multiContainer = cva([\n\t'flex items-center gap-2',\n\t'flex-1 min-w-0 h-full',\n\t'pointer-events-none overflow-hidden',\n]);\n\nconst multiItem = cva([\n\t'item group/item',\n\t'pointer-events-auto cursor-pointer',\n\t'flex h-[1.625rem] items-center gap-2',\n\t'h-[1.625rem] px-2',\n\t'text-sm font-semibold whitespace-nowrap',\n\t'rounded-lg',\n\t'bg-supportive-lilac-100',\n]);\n\nconst textContainer = cva('block w-full overflow-hidden text-start', {\n\tvariants: {\n\t\tvariant: {\n\t\t\tplaceholder: 'text-storm-400',\n\t\t\tdefault: null,\n\t\t},\n\t\tenableTextWrap: {\n\t\t\ttrue: false,\n\t\t\tfalse: 'text-ellipsis whitespace-nowrap',\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-select',\n\tstyleUrl: 'select.component.css',\n\tformAssociated: true,\n})\nexport class Select {\n\t/**\n\t * The items to show in the dropdown\n\t */\n\t@Prop() items: string | any[];\n\n\t/**\n\t * Wether to enable multi select\n\t */\n\t@Prop({ reflect: true }) multi: boolean;\n\n\t/**\n\t * The strategy to use for the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Icon of the select box\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * The current query\n\t */\n\t@Prop() query: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The placeholder of the input used for auto complete\n\t */\n\t@Prop() autocompletePlaceholder: string = 'Search...';\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: any;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() displayKey: string = 'text';\n\n\t/**\n\t * The key of the object to display in the dropdown (overwrites displayKey)\n\t */\n\t@Prop() dropdownDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to display in the input (overwrites displayKey)\n\t */\n\t@Prop() selectionDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to return\n\t */\n\t@Prop() valueKey: string;\n\n\t/**\n\t * The key of avatar within an item to show\n\t */\n\t@Prop() avatarKey: string;\n\n\t/**\n\t * The key of icon variant within an item to show\n\t */\n\t@Prop() iconKey: string = 'icon';\n\n\t/**\n\t * The key of the class we can apploy to the icon\n\t */\n\t@Prop() iconClassKey: string = 'iconClass';\n\n\t/**\n\t * Wether to apply the item's icon on the selected item display\n\t */\n\t@Prop() showIconOnSelectedItem: string;\n\n\t/**\n\t * The key of a class in an item to apply\n\t */\n\t@Prop() classKey: string = 'class';\n\n\t/**\n\t * Wether to apply the item's class also on the selected item\n\t */\n\t@Prop() applyClassOnSelectedItem: boolean;\n\n\t/**\n\t * Wether to apply the item's class also on the selected item within the menu\n\t */\n\t@Prop() applyClassOnSelectedItemInMenu: boolean;\n\n\t/**\n\t * The key of avatar letters within an item to show when the avatar url doesn't work\n\t */\n\t@Prop() avatarLettersKey: string;\n\n\t/**\n\t * The key to identify an object\n\t */\n\t@Prop() identifierKey: string;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() queryKey?: string;\n\n\t/**\n\t * Wether to automatically select the first item\n\t */\n\t@Prop() autoSelectFirst: boolean = true;\n\n\t/**\n\t * Wether to show the chevron or not\n\t */\n\t@Prop() showChevron: boolean = true;\n\n\t/**\n\t * The maximum amount of items to display\n\t */\n\t@Prop() maxDisplayedItems: number = 10;\n\n\t/**\n\t * Wether to enable autocomplete\n\t */\n\t@Prop() enableAutocomplete: boolean = true;\n\n\t/**\n\t * Wether to enable wrapping the text to a new line in the dropdown menu\n\t */\n\t@Prop() enableTextWrap?: boolean = false;\n\n\t/**\n\t * Wether the input uses async filtering\n\t */\n\t@Prop() asyncFilter: boolean = false;\n\n\t/**\n\t * Wether to show loading items\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show the select all item with multi select\n\t */\n\t@Prop() enableSelectAll: boolean = false;\n\n\t/**\n\t * The text of the select all item\n\t */\n\t@Prop() selectAllText: string = 'Select all';\n\n\t/**\n\t * The icon to prefix for select all\n\t */\n\t@Prop() selectAllIcon: IconVariant | undefined;\n\n\t/**\n\t * Event when the query of the autocomplete changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tqueryChange: EventEmitter<string>;\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the select all item has been selected or not\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tselectAllChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the dropdown shows\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdropdownShown: EventEmitter<any>;\n\n\t/**\n\t * The size of the input group used by the select\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * The prefix of the input group used by the select\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the select\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean = true;\n\n\t/**\n\t * Wether to show optional when not required\n\t */\n\t@Prop({ reflect: true }) showOptional: boolean = true;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the select\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether to show a \"add\" item\n\t */\n\t@Prop() showAddItem: boolean = false;\n\n\t/**\n\t * The text to show when add item is being shown\n\t */\n\t@Prop() addItemText: string = 'Add item';\n\n\t/**\n\t * Event when the add item is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tadd: EventEmitter;\n\n\t/**\n\t * The text to show when items is empty\n\t */\n\t@Prop() emptyStateText: string = 'No items available';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _selectedItem: any = null;\n\n\t@State() private _allSelected: boolean = false;\n\n\t@State() private _amountHidden = 0;\n\n\t@AttachInternals() _internals: ElementInternals;\n\n\tprivate _inputRef: HTMLDivElement;\n\tprivate autocompleteInputRef: HTMLInputElement | HTMLTextAreaElement;\n\tprivate _multiContainerRef: HTMLElement;\n\n\tprivate _resizeObserver: ResizeObserver;\n\tprivate _resizeDebounceTimer: NodeJS.Timeout | undefined;\n\tprivate _checkSelectedItemsTimeout: NodeJS.Timeout | undefined;\n\n\tget _items() {\n\t\treturn this._getParsedItems();\n\t}\n\n\tget _displayValue() {\n\t\tconst placeholder = (\n\t\t\t<div class={textContainer({ variant: 'placeholder' })}>\n\t\t\t\t{this.placeholder}\n\t\t\t</div>\n\t\t);\n\n\t\tif (!this._selectedItem) {\n\t\t\treturn placeholder;\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tif (this._selectedItem?.length === 0) {\n\t\t\t\treturn placeholder;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclass={multiContainer()}\n\t\t\t\t\tref={ref => (this._multiContainerRef = ref)}\n\t\t\t\t>\n\t\t\t\t\t{this._selectedItem.map(item => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass={multiItem()}\n\t\t\t\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{item[this.selectionDisplayKey ?? this.displayKey]}\n\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\tclass='text-supportive-lilac group-hover/item:text-supportive-lilac-800 text-xs'\n\t\t\t\t\t\t\t\tvariant='negative'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<div class='extra pointer-events-none hidden text-sm text-storm-100'>\n\t\t\t\t\t\t+{this._amountHidden}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn this._getDisplay(this._selectedItem, true);\n\t}\n\n\tget _identifierKey() {\n\t\treturn this.identifierKey ?? this.valueKey ?? 'value';\n\t}\n\n\tformResetCallback() {\n\t\tthis._selectValue(null);\n\t}\n\n\tformDisabledCallback(disabled: boolean) {\n\t\tif (!this._internals.form) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.disabled = disabled;\n\t}\n\n\tcomponentDidLoad() {\n\t\tif (!this.valueKey && !this.identifierKey) {\n\t\t\tthrow new Error('You must provide a valueKey or identifierKey');\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\n\t\t\tthis._resizeObserver = new ResizeObserver(() => {\n\t\t\t\tif (this._resizeDebounceTimer) {\n\t\t\t\t\tclearTimeout(this._resizeDebounceTimer);\n\t\t\t\t\tthis._resizeDebounceTimer = null;\n\t\t\t\t}\n\n\t\t\t\tthis._resizeDebounceTimer = setTimeout(() => {\n\t\t\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\t\t\tthis._setCheckSelectedItemsTimeout();\n\t\t\t\t}, 200);\n\t\t\t});\n\t\t\tthis._resizeObserver.observe(this._el);\n\t\t}\n\n\t\tif (this.value) {\n\t\t\tthis._valueChange();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.itemChanges();\n\t}\n\n\tcomponentDidRender() {\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.multi) {\n\t\t\tthis._resizeObserver.disconnect();\n\t\t}\n\t}\n\n\trender() {\n\t\tlet buttonIcon = this.icon;\n\n\t\tif (\n\t\t\tthis._selectedItem &&\n\t\t\t!this.avatarKey &&\n\t\t\t!!this.iconKey &&\n\t\t\tthis._selectedItem?.[this.iconKey] &&\n\t\t\t!this.showIconOnSelectedItem\n\t\t) {\n\t\t\tbuttonIcon = this._selectedItem[this.iconKey];\n\t\t}\n\n\t\tif (\n\t\t\t(this.avatarKey && this._selectedItem?.[this.avatarKey]) ||\n\t\t\t(this.avatarLettersKey && this._selectedItem?.[this.avatarLettersKey])\n\t\t) {\n\t\t\tbuttonIcon = null;\n\t\t}\n\n\t\tif (this.error?.length) {\n\t\t\tbuttonIcon = 'warning';\n\t\t}\n\n\t\treturn (\n\t\t\t<p-field-container\n\t\t\t\tvariant='write'\n\t\t\t\tprefix={this.prefix}\n\t\t\t\tlabel={this.label}\n\t\t\t\thelper={this.helper}\n\t\t\t\trequired={this.required}\n\t\t\t\tshowOptional={this.showOptional}\n\t\t\t\terror={this.error}\n\t\t\t\tforceShowTooltip={!!this.error?.length && !this._showDropdown}\n\t\t\t>\n\t\t\t\t<p-dropdown\n\t\t\t\t\tapplyFullWidth={true}\n\t\t\t\t\tapplyMaxWidth={false}\n\t\t\t\t\tslot='content'\n\t\t\t\t\tinsideClick={true}\n\t\t\t\t\tmanual={true}\n\t\t\t\t\tscrollable={this.enableAutocomplete ? 'large' : true}\n\t\t\t\t\tshow={this._showDropdown}\n\t\t\t\t\tonIsOpen={ev => this._onDropdownOpen(ev)}\n\t\t\t\t\tstrategy={this.strategy}\n\t\t\t\t>\n\t\t\t\t\t<p-button\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\tclass='w-full'\n\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tchevron={\n\t\t\t\t\t\t\tthis.showChevron ? (this._showDropdown ? 'up' : 'down') : false\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tactive={this._showDropdown}\n\t\t\t\t\t\terror={!!this.error?.length}\n\t\t\t\t\t\ticon={buttonIcon}\n\t\t\t\t\t\ticonClass={\n\t\t\t\t\t\t\tthis.applyClassOnSelectedItem &&\n\t\t\t\t\t\t\tthis._selectedItem?.[this.iconClassKey]\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ev => this._onClick(ev)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass='relative min-w-0 flex-1'\n\t\t\t\t\t\t\tref={ref => (this._inputRef = ref)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._displayValue}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</p-button>\n\t\t\t\t\t{this.loading ? this._getLoadingItems() : this._getItems()}\n\t\t\t\t\t{this.showAddItem && this._getAddItem()}\n\t\t\t\t</p-dropdown>\n\t\t\t</p-field-container>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler(event) {\n\t\tif (!this._showDropdown || childOfComposed(event, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\t@Watch('value')\n\tprivate _valueChange() {\n\t\tsetTimeout(() => {\n\t\t\tthis._preselectItem();\n\t\t\tthis._setCheckSelectedItemsTimeout();\n\t\t});\n\t}\n\n\t@Watch('items')\n\tpublic itemChanges() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('_showDropdown')\n\tpublic _showDropdownChanges() {\n\t\tthis.dropdownShown.emit({\n\t\t\tvalue: this._showDropdown,\n\t\t\tquery: this.query,\n\t\t});\n\t}\n\n\t@Watch('multi')\n\tpublic multiChanges() {\n\t\tif (this._selectedItem && !Array.isArray(this._selectedItem)) {\n\t\t\tthis._selectedItem = [];\n\t\t}\n\t}\n\n\tprivate _preselectItem() {\n\t\tlet value =\n\t\t\ttypeof this.value === 'string' && this.multi\n\t\t\t\t? JSON.parse(this.value)\n\t\t\t\t: this.value;\n\n\t\tif (this.multi) {\n\t\t\tif (!Array.isArray(value)) {\n\t\t\t\tthis.value = [];\n\t\t\t\tthis.valueChange.emit(this.value);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.value = value;\n\t\t\tif (!value.length) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._selectedItem =\n\t\t\t\t!!this.valueKey && this.valueKey !== 'false'\n\t\t\t\t\t? this._items.filter(i => value.includes(i?.[this.valueKey]))\n\t\t\t\t\t: [...value];\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._selectedItem && !value && this.autoSelectFirst) {\n\t\t\tvalue = this._items[0];\n\t\t}\n\n\t\tconst identifier =\n\t\t\ttypeof value === 'object' && value !== null\n\t\t\t\t? value[this._identifierKey]\n\t\t\t\t: value;\n\t\tconst parsedValue =\n\t\t\ttypeof identifier === 'string' || typeof identifier === 'number'\n\t\t\t\t? identifier\n\t\t\t\t: JSON.stringify(identifier);\n\n\t\tconst currentValue = this._selectedItem\n\t\t\t? this._selectedItem?.[this._identifierKey]\n\t\t\t: null;\n\t\tconst currentParsedValue =\n\t\t\ttypeof currentValue === 'string' || typeof currentValue === 'number'\n\t\t\t\t? currentValue\n\t\t\t\t: JSON.stringify(currentValue);\n\n\t\tif (this._selectedItem && currentParsedValue === parsedValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._items?.length && value) {\n\t\t\tthis._selectValue(value, false);\n\t\t\treturn;\n\t\t}\n\n\t\tconst items = this._getParsedItems(false);\n\t\tconst item = items.find(i => {\n\t\t\tconst itemIdentifier = i?.[this._identifierKey];\n\t\t\tconst parsedItemIdentifier =\n\t\t\t\ttypeof itemIdentifier === 'string' || typeof itemIdentifier === 'number'\n\t\t\t\t\t? itemIdentifier\n\t\t\t\t\t: JSON.stringify(itemIdentifier);\n\n\t\t\treturn parsedItemIdentifier === parsedValue;\n\t\t});\n\n\t\tthis._selectValue(!!item ? item : value, false);\n\t}\n\n\tprivate _selectValue(item, forceBlur = true) {\n\t\tlet value =\n\t\t\t!!this.valueKey && this.valueKey !== 'false' && item !== null\n\t\t\t\t? item?.[this.valueKey]\n\t\t\t\t: item;\n\n\t\tif (this.multi) {\n\t\t\tif (!this._selectedItem || !Array.isArray(this._selectedItem)) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t}\n\n\t\t\tif (!this.value || !Array.isArray(this.value)) {\n\t\t\t\tthis.value = [];\n\t\t\t}\n\n\t\t\tconst selectedItem = [...this._selectedItem];\n\t\t\tconst valueArray = [...this.value];\n\n\t\t\tconst includesIndex = selectedItem.findIndex(\n\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t);\n\t\t\tif (includesIndex === -1) {\n\t\t\t\tselectedItem.push(item);\n\t\t\t\tvalueArray.push(value);\n\t\t\t} else {\n\t\t\t\tselectedItem.splice(includesIndex, 1);\n\t\t\t\tvalueArray.splice(includesIndex, 1);\n\t\t\t}\n\n\t\t\tthis._selectedItem = selectedItem;\n\t\t\tthis.value = valueArray;\n\t\t\tthis.valueChange.emit(valueArray);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedItem = item;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\n\t\tthis._onBlur(forceBlur);\n\t}\n\n\tprivate _onClick(event) {\n\t\tconst composed = event?.composedPath();\n\n\t\tfor (const item of composed) {\n\t\t\tif (item.nodeName.toLowerCase() === 'p-button') {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (item.classList?.contains('item')) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tthis._showDropdown = !this._showDropdown;\n\t}\n\n\tprivate _onBlur(force = false) {\n\t\tif (this.enableAutocomplete && !force) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onAutoComplete(ev) {\n\t\tif (!this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\n\t\tthis.query = ev.detail;\n\t\tthis.queryChange.emit(ev.detail);\n\t}\n\n\tprivate _checkvalue(key, item) {\n\t\treturn (\n\t\t\titem?.[key]\n\t\t\t\t?.toString()\n\t\t\t\t?.toLowerCase()\n\t\t\t\t.indexOf(this.query?.toLowerCase()) >= 0\n\t\t);\n\t}\n\n\tprivate _getItems() {\n\t\tlet items = this._items.map(item => {\n\t\t\tconst isSelected =\n\t\t\t\tthis.multi && !!this._selectedItem && Array.isArray(this._selectedItem)\n\t\t\t\t\t? this._selectedItem.findIndex(\n\t\t\t\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t\t\t ) >= 0\n\t\t\t\t\t: item[this._identifierKey] ===\n\t\t\t\t\t this._selectedItem?.[this._identifierKey];\n\t\t\treturn (\n\t\t\t\t<p-dropdown-menu-item\n\t\t\t\t\tenableTextWrap={this.enableTextWrap}\n\t\t\t\t\tuseContainer={false}\n\t\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\t\tactive={isSelected}\n\t\t\t\t\tcheckbox={this.multi ? true : false}\n\t\t\t\t\tslot='items'\n\t\t\t\t>\n\t\t\t\t\t{this._getDisplay(item, false, isSelected)}\n\t\t\t\t</p-dropdown-menu-item>\n\t\t\t);\n\t\t});\n\n\t\tif (!this._items.length) {\n\t\t\titems = [\n\t\t\t\t<p\n\t\t\t\t\tclass='w-full p-2 text-center text-sm text-storm-400'\n\t\t\t\t\tslot='items'\n\t\t\t\t>\n\t\t\t\t\t{this.emptyStateText}\n\t\t\t\t</p>,\n\t\t\t];\n\t\t}\n\n\t\tif (this.enableSelectAll && this._items.length) {\n\t\t\titems.unshift(\n\t\t\t\t<p-dropdown-menu-item\n\t\t\t\t\tslot='items'\n\t\t\t\t\tuseContainer={false}\n\t\t\t\t\tcheckbox\n\t\t\t\t\tonClick={() => this._selectAllChange()}\n\t\t\t\t\tactive={this._allSelected}\n\t\t\t\t>\n\t\t\t\t\t{this.selectAllIcon?.length ? (\n\t\t\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t\t\t<div class='flex w-6 justify-center text-lg'>\n\t\t\t\t\t\t\t\t<p-icon variant={this.selectAllIcon} />\n\t\t\t\t\t\t\t</div>{' '}\n\t\t\t\t\t\t\t{this.selectAllText}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tthis.selectAllText\n\t\t\t\t\t)}\n\t\t\t\t</p-dropdown-menu-item>\n\t\t\t);\n\t\t}\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAddItem() {\n\t\treturn (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tonClick={() => this.add.emit()}\n\t\t\t\tuseContainer={false}\n\t\t\t\tslot='items'\n\t\t\t>\n\t\t\t\t<span class='flex items-center gap-1 font-semibold text-indigo-600'>\n\t\t\t\t\t{this.addItemText}\n\t\t\t\t\t<p-icon variant='plus' />\n\t\t\t\t</span>\n\t\t\t</p-dropdown-menu-item>\n\t\t);\n\t}\n\n\tprivate _getLoadingItems() {\n\t\tconst items = [0, 0, 0].map(() => (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tenableHover={false}\n\t\t\t\tslot='items'\n\t\t\t>\n\t\t\t\t<p-loader\n\t\t\t\t\tvariant='ghost'\n\t\t\t\t\tclass='h-6 w-full rounded'\n\t\t\t\t/>\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAutoCompleteItem() {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass='sticky top-0 z-10 mb-3 h-8'\n\t\t\t\tslot='items'\n\t\t\t>\n\t\t\t\t<p-field\n\t\t\t\t\tclass='block'\n\t\t\t\t\tplaceholder={this.autocompletePlaceholder}\n\t\t\t\t\tonValueChange={ev => this._onAutoComplete(ev)}\n\t\t\t\t\tonInputRefChange={ev => (this.autocompleteInputRef = ev.detail)}\n\t\t\t\t\tvalue={this.query}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _setMultiContainerMaxWidth() {\n\t\tif (!this._inputRef || !this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst calced = this._inputRef.clientWidth - 16;\n\t\tthis._multiContainerRef.style.maxWidth = `${calced >= 16 ? calced : 16}px`;\n\t}\n\n\tprivate _setCheckSelectedItemsTimeout() {\n\t\tif (this._checkSelectedItemsTimeout) {\n\t\t\tclearTimeout(this._checkSelectedItemsTimeout);\n\t\t}\n\n\t\tthis._checkSelectedItemsTimeout = setTimeout(\n\t\t\t() => this._checkSelectedItems(),\n\t\t\t50\n\t\t);\n\t}\n\n\tprivate _checkSelectedItems() {\n\t\tif (!this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst containerRect = this._multiContainerRef.getBoundingClientRect();\n\t\tconst items = this._multiContainerRef.querySelectorAll('.item');\n\n\t\tlet amountHidden = 0;\n\n\t\tfor (const child of items) {\n\t\t\tchild.classList.remove('hidden');\n\t\t\tchild.classList.add('flex');\n\n\t\t\tconst childRect = child.getBoundingClientRect();\n\t\t\tif (childRect.right > containerRect.right) {\n\t\t\t\tchild.classList.remove('flex');\n\t\t\t\tchild.classList.add('hidden');\n\t\t\t\tamountHidden++;\n\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\tthis._amountHidden = amountHidden;\n\t\tconst extra = this._multiContainerRef.querySelector('.extra');\n\t\tif (!extra) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!extra.classList.contains('hidden')) {\n\t\t\textra.classList.add('hidden');\n\t\t}\n\n\t\tif (amountHidden > 0) {\n\t\t\textra.classList.remove('hidden');\n\t\t}\n\t}\n\n\tprivate _onDropdownOpen(ev) {\n\t\tif (!ev.detail || !this.autocompleteInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => this.autocompleteInputRef.focus(), 100);\n\t}\n\n\tprivate _selectAllChange() {\n\t\tthis._allSelected = !this._allSelected;\n\t\tthis.selectAllChange.emit(this._allSelected);\n\t}\n\n\tprivate _getDisplay(item, isSelection = false, isSelectedInMenu = false) {\n\t\tlet content = (\n\t\t\t<div\n\t\t\t\tclass={textContainer({\n\t\t\t\t\tvariant: 'default',\n\t\t\t\t\tenableTextWrap: this.enableTextWrap && !isSelection,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t{\n\t\t\t\t\titem[\n\t\t\t\t\t\tisSelection\n\t\t\t\t\t\t\t? this.selectionDisplayKey ?? this.displayKey\n\t\t\t\t\t\t\t: this.displayKey\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.avatarKey) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-avatar\n\t\t\t\t\t\tsize='sm'\n\t\t\t\t\t\tsrc={item[this.avatarKey]}\n\t\t\t\t\t\tletters={item[this.avatarLettersKey]}\n\t\t\t\t\t></p-avatar>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={textContainer({\n\t\t\t\t\t\t\tvariant: 'default',\n\t\t\t\t\t\t\tenableTextWrap: this.enableTextWrap && !isSelection,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\tif (this.iconKey && (!isSelection || this.showIconOnSelectedItem)) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-icon\n\t\t\t\t\t\tclass={cn(\n\t\t\t\t\t\t\t'text-storm-300',\n\t\t\t\t\t\t\t(!isSelection || !!this.applyClassOnSelectedItem) &&\n\t\t\t\t\t\t\t\t(!isSelectedInMenu || !!this.applyClassOnSelectedItemInMenu)\n\t\t\t\t\t\t\t\t? item?.[this.iconClassKey] ?? ''\n\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tvariant={item[this.iconKey] as IconVariant}\n\t\t\t\t\t/>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={textContainer({\n\t\t\t\t\t\t\tvariant: 'default',\n\t\t\t\t\t\t\tenableTextWrap: this.enableTextWrap && !isSelection,\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\t(!isSelection || !!this.applyClassOnSelectedItem) &&\n\t\t\t(!isSelectedInMenu || !!this.applyClassOnSelectedItemInMenu) &&\n\t\t\t!!item?.[this.classKey]?.length\n\t\t) {\n\t\t\treturn <div class={item[this.classKey]}>{content}</div>;\n\t\t}\n\n\t\treturn content;\n\t}\n\n\tprivate _getParsedItems(applyPagination = true) {\n\t\tif (!this.items || this.loading) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet items =\n\t\t\ttypeof this.items === 'string' ? JSON.parse(this.items) : this.items;\n\n\t\tif (typeof items?.[0] === 'string') {\n\t\t\tthis.displayKey = 'text';\n\t\t\tthis.valueKey = 'value';\n\n\t\t\titems = items.map(str => ({\n\t\t\t\tvalue: str,\n\t\t\t\ttext: str,\n\t\t\t}));\n\t\t}\n\n\t\tif (this.query?.length && !this.asyncFilter) {\n\t\t\titems = items.filter(item => {\n\t\t\t\tif (this.queryKey) {\n\t\t\t\t\treturn this._checkvalue(this.queryKey, item);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tthis._checkvalue(this._identifierKey, item) ||\n\t\t\t\t\tthis._checkvalue(this.displayKey, item)\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\tif (!applyPagination) {\n\t\t\treturn items;\n\t\t}\n\n\t\treturn items?.slice(0, this.maxDisplayedItems);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"p-button.p-icon.p-loader.entry.esm.js","sources":["src/components/molecules/button/button.component.css?tag=p-button","src/components/molecules/button/button.component.tsx","src/components/atoms/icon/icon.component.css?tag=p-icon&encapsulation=shadow","src/components/atoms/icon/icon.component.tsx","src/components/atoms/loader/loader.component.scss?tag=p-loader&encapsulation=shadow","src/components/atoms/loader/loader.component.tsx"],"sourcesContent":["","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\nimport { asBoolean } from '../../../utils/as-boolean';\nimport { cn } from '../../../utils/cn';\n\nconst button = cva(\n\t[\n\t\t'group',\n\t\t'font-semibold leading-4',\n\t\t'flex items-center justify-center',\n\t\t'cursor-pointer',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tprimary: ['border-storm-500/20', 'text-white'],\n\t\t\t\tsecondary: null,\n\t\t\t\ttext: null,\n\t\t\t\ttransparent: 'bg-transparent border-transparent',\n\t\t\t\tdropdown: null,\n\t\t\t},\n\t\t\tactive: {\n\t\t\t\ttrue: null,\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\terror: {\n\t\t\t\ttrue: null,\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tloading: {\n\t\t\t\ttrue: 'cursor-wait',\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tsm: ['text-xs h-6 gap-1'],\n\t\t\t\tbase: ['text-sm h-8 gap-2'],\n\t\t\t\tlg: ['text-base h-10 gap-2'],\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\ttrue: 'cursor-not-allowed',\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tbuttonGroupPosition: {\n\t\t\t\tnone: null,\n\t\t\t\tstart: null,\n\t\t\t\tcenter: null,\n\t\t\t\tend: null,\n\t\t\t},\n\t\t\ticonOnly: {\n\t\t\t\ttrue: 'justify-center',\n\t\t\t\tfalse: 'w-inherit py-1',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t// variants\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tclass: 'bg-white',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'border',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'none',\n\t\t\t\tclass: 'rounded-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'start',\n\t\t\t\tclass: 'rounded-s-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'end',\n\t\t\t\tclass: 'rounded-e-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-storm-500',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'bg-indigo-200',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'bg-indigo-600',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass: [\n\t\t\t\t\t'active:border-storm-500/10 active:ring active:ring-2 active:text-white/60',\n\t\t\t\t\t'drop-shadow-primary-button hover:drop-shadow-2 hover:bg-indigo-700 active:ring-indigo-100',\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\tclass: 'ring ring-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\tclass: 'ring-indigo-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'border bg-white-600 text-storm-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'text-storm-500',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass:\n\t\t\t\t\t'drop-shadow-1 hover:drop-shadow-1 hover:bg-white-600 active:ring-indigo-100 active:text-storm-500/60',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'active:border-indigo-600 active:ring active:ring-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'border-indigo-600 ring ring-2 ring-indigo-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\terror: false,\n\t\t\t\tactive: false,\n\t\t\t\tclass: ['border-storm-500/20'],\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\terror: true,\n\t\t\t\tclass:\n\t\t\t\t\t'border border-negative-red-500 text-negative-red-800 ring ring-2 ring-negative-red-50 active:text-negative-red-800',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'text-indigo-700 hover:text-indigo-800',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'text-indigo-300',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass: 'active:text-indigo-800',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent'],\n\t\t\t\tsize: ['base', 'sm'],\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'px-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent'],\n\t\t\t\tsize: 'lg',\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'px-3',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'dropdown',\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'p-2',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'text'],\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'py-1',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tsize: 'sm',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-6',\n\t\t\t},\n\t\t\t{\n\t\t\t\tsize: 'base',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-8',\n\t\t\t},\n\t\t\t{\n\t\t\t\tsize: 'lg',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-10',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst icon = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\tsm: 'text-xs',\n\t\t\tbase: 'text-base',\n\t\t\tlg: 'text-base',\n\t\t},\n\t\tvariant: {\n\t\t\tprimary: null,\n\t\t\tsecondary: null,\n\t\t\ttext: null,\n\t\t\ttransparent: null,\n\t\t\tdropdown: null,\n\t\t},\n\t\tdisabled: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t\tactive: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t\terror: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tvariant: 'primary',\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\terror: false,\n\t\t\tclass:\n\t\t\t\t'text-indigo-300 group-hover:text-white group-active:text-white/60',\n\t\t},\n\t\t{\n\t\t\tvariant: 'primary',\n\t\t\tdisabled: false,\n\t\t\tactive: true,\n\t\t\tclass: 'text-white/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\terror: false,\n\t\t\tclass:\n\t\t\t\t'text-storm-300 group-hover:text-storm-500 group-active:text-storm-500/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tdisabled: false,\n\t\t\tactive: true,\n\t\t\terror: false,\n\t\t\tclass: 'text-storm-500/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['transparent', 'text'],\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\tclass:\n\t\t\t\t'text-indigo-500 group-hover:text-indigo-700 group-active:text-indigo-800',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tactive: false,\n\t\t\terror: true,\n\t\t\tclass: 'text-negative-red-500 group-hover:text-negative-red-800',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tactive: true,\n\t\t\terror: true,\n\t\t\tclass: 'text-negative-red-800',\n\t\t},\n\t],\n});\n\nexport type ButtonVariant =\n\t| 'primary'\n\t| 'secondary'\n\t| 'transparent'\n\t| 'text'\n\t| 'dropdown';\n\n@Component({\n\ttag: 'p-button',\n\tstyleUrl: 'button.component.css',\n})\nexport class Button {\n\t/**\n\t * The label of the button (Can use slot)\n\t */\n\t@Prop() label?: string;\n\n\t/**\n\t * The type of the button\n\t */\n\t@Prop() as?: 'a' | 'button' = 'button';\n\n\t/**\n\t * The variant of the button\n\t */\n\t@Prop() variant?: ButtonVariant = 'primary';\n\n\t/**\n\t * Wether to force an active state\n\t */\n\t@Prop() active?: boolean = false;\n\n\t/**\n\t * Wether to show a error state\n\t */\n\t@Prop() error?: boolean = false;\n\n\t/**\n\t * Href in case of \"text\" version\n\t */\n\t@Prop() href?: string;\n\n\t/**\n\t * Target in case of \"text\" version\n\t */\n\t@Prop() target?: string;\n\n\t/**\n\t * The size of the button\n\t */\n\t@Prop() size?: 'sm' | 'base' | 'lg' = 'base';\n\n\t/**\n\t * The type of the button\n\t */\n\t@Prop() type?: 'button' | 'submit' = 'button';\n\n\t/**\n\t * Wether to show a loader or not\n\t */\n\t@Prop() loading?: boolean = false;\n\n\t/**\n\t * Wether to show a chevron or not\n\t */\n\t@Prop() chevron?: boolean | 'up' | 'down' = false;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition?: 'start' | 'end' = 'end';\n\n\t/**\n\t * Wether the button is disabled\n\t */\n\t@Prop() disabled?: boolean = false;\n\n\t/**\n\t * Icon to show on the button\n\t */\n\t@Prop() icon?: IconVariant;\n\n\t/**\n\t * Wether the button is icon only\n\t */\n\t@Prop() iconOnly?: boolean = false;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition?: 'start' | 'end' = 'start';\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip?: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate?: RotateOptions;\n\n\t/**\n\t * Wether the button should inherit text styles\n\t */\n\t@Prop() inheritText?: boolean = false;\n\n\t/**\n\t * Position of the button in the button group, mostly un-used if not in a group\n\t */\n\t@Prop() buttonGroupPosition?: 'start' | 'center' | 'end' | 'none' = 'none';\n\n\t/**\n\t * The class of the container passed by parent\n\t */\n\t@Prop() class?: string;\n\n\t/**\n\t * Button click event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tonClick: EventEmitter<MouseEvent>;\n\n\trender() {\n\t\tlet loaderColor: 'white' | 'off-white' | 'indigo' | 'storm' = 'white';\n\t\tswitch (this.variant) {\n\t\t\tcase 'secondary':\n\t\t\tcase 'dropdown':\n\t\t\tcase 'transparent':\n\t\t\t\tloaderColor = 'off-white';\n\t\t\t\tbreak;\n\t\t\tcase 'text':\n\t\t\t\tloaderColor = 'storm';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst VariableTag =\n\t\t\tthis.variant === 'text' || this.href?.length || this.as === 'a'\n\t\t\t\t? 'a'\n\t\t\t\t: 'button';\n\n\t\tconst hostClass = cn('p-button inline-block', this.class);\n\t\tconst active = asBoolean(this.active) || hostClass?.includes('active');\n\n\t\treturn (\n\t\t\t<Host class={hostClass}>\n\t\t\t\t<VariableTag\n\t\t\t\t\tdisabled={asBoolean(this.disabled)}\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttype={this.variant !== 'text' ? this.type : undefined}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\tclass={button({\n\t\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\tloading: asBoolean(this.loading),\n\t\t\t\t\t\tdisabled: asBoolean(this.disabled),\n\t\t\t\t\t\tbuttonGroupPosition: this.buttonGroupPosition,\n\t\t\t\t\t\ticonOnly: asBoolean(this.iconOnly),\n\t\t\t\t\t\tactive,\n\t\t\t\t\t\terror: asBoolean(this.error),\n\t\t\t\t\t})}\n\t\t\t\t>\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'start' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tvariant='caret'\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'start' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.label ? this.label : <slot />}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'end' &&\n\t\t\t\t\t\t!this.loading &&\n\t\t\t\t\t\t!this.chevron &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.chevron && !this.loading && this.chevronPosition === 'end' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tvariant='caret'\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.loading && <p-loader color={loaderColor} />}\n\t\t\t\t</VariableTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\thandleClick(ev: MouseEvent) {\n\t\tif (this.loading || this.disabled) {\n\t\t\tev.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.onClick.emit(ev);\n\t}\n\n\tprivate _getIcon() {\n\t\tif (!this.icon) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tclass={icon({\n\t\t\t\t\tsize: this.size,\n\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\tdisabled: asBoolean(this.disabled),\n\t\t\t\t\tactive: asBoolean(this.active),\n\t\t\t\t\terror: asBoolean(this.error),\n\t\t\t\t})}\n\t\t\t\tvariant={this.icon}\n\t\t\t\tflip={this.iconFlip}\n\t\t\t\trotate={this.iconRotate}\n\t\t\t/>\n\t\t);\n\t}\n}\n",":host {\n\t--tw-translate-y: 0px !important;\n\t--tw-translate-x: 0px !important;\n\n\t@apply inline-flex;\n}\n","import { Component, h, Prop, Element } from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { TextSizeOptions } from '../../../types/tailwind';\nimport { icons } from '../../../utils/icons';\n\nexport type IconVariant = keyof typeof icons;\nexport type IconFlipOptions = 'none' | 'horizontal' | 'vertical';\n\nconst icon = cva(['p-icon inline-flex', 'transform-gpu transition-transform'], {\n\tvariants: {\n\t\tflip: {\n\t\t\tnone: null,\n\t\t\thorizontal: 'scale-x-flip',\n\t\t\tvertical: 'scale-y-flip',\n\t\t},\n\t\tsize: {\n\t\t\tauto: null,\n\t\t\txxs: 'text-xxs',\n\t\t\txs: 'text-xs',\n\t\t\tsm: 'text-sm',\n\t\t\tbase: 'text-base',\n\t\t\tlg: 'text-lg',\n\t\t\txl: 'text-xl',\n\t\t\t'2xl': 'text-2xl',\n\t\t\t'3xl': 'text-3xl',\n\t\t\t'4xl': 'text-4xl',\n\t\t},\n\t\ttransform: {\n\t\t\ttrue: 'scale-[0.9999]',\n\t\t\tfalse: null,\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-icon',\n\tstyleUrl: 'icon.component.css',\n\tshadow: true,\n})\nexport class Icon {\n\t/**\n\t * The icon the be displayed\n\t */\n\t@Prop() variant!: IconVariant;\n\n\t/**\n\t * The size of the icon, using tailwind sizes\n\t */\n\t@Prop() size: TextSizeOptions = 'base';\n\n\t/**\n\t * Wether to rotate the icon x degrees\n\t */\n\t@Prop() rotate: number = 0;\n\n\t/**\n\t * Wether to flip the icon horizontally or vertically\n\t */\n\t@Prop() flip: IconFlipOptions = 'none';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() _el: HTMLElement;\n\n\tcomponentWillRender() {\n\t\tconst icon = icons[this.variant];\n\t\tif (!icon) {\n\t\t\tconsole.warn(`[p-icon] Variant \"${this.variant}\" does not exist `);\n\t\t}\n\t}\n\n\trender() {\n\t\tconst hasTextSizeClass = /text-(xs|sm|base|lg|xl)/.test(this._el.className);\n\t\tconst svg = icons[this.variant];\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={icon({\n\t\t\t\t\tflip: this.flip,\n\t\t\t\t\tsize: hasTextSizeClass ? 'auto' : this.size,\n\t\t\t\t\ttransform: this.flip !== 'none' || this.rotate > 0 || this.rotate < 0,\n\t\t\t\t})}\n\t\t\t\tstyle={{\n\t\t\t\t\t'--tw-rotate': `${this.rotate}deg`,\n\t\t\t\t}}\n\t\t\t\ttitle={this.variant}\n\t\t\t\tinnerHTML={svg}\n\t\t\t></div>\n\t\t);\n\t}\n}\n",":host {\n\t.loader {\n\t\t@apply inline-block h-[1em] w-[1em] rounded-full;\n\t\t@apply border-2 border-solid;\n\t\tanimation: 500ms spin linear infinite;\n\n\t\twill-change: transform;\n\n\t\t&.color-indigo {\n\t\t\t@apply border-r-indigo-500/40 border-t-indigo-500 #{!important};\n\t\t}\n\n\t\t&.color-off-white {\n\t\t\t@apply border-off-white-600/40 border-t-off-white-800 #{!important};\n\t\t}\n\n\t\t&.color-white {\n\t\t\t@apply border-white/40 border-t-white #{!important};\n\t\t}\n\n\t\t&.color-storm {\n\t\t\t@apply border-r-storm-400 border-t-storm-700 #{!important};\n\t\t}\n\t}\n\n\t.loading-screen {\n\t\t@apply fixed left-0 top-0 h-screen-safe w-screen-safe;\n\t\t@apply flex items-center justify-center;\n\t\t@apply bg-off-white-200;\n\n\t\tz-index: 1001;\n\n\t\t.content {\n\t\t\t@apply max-w-xs;\n\t\t}\n\t}\n}\n\n:host(.variant-ghost) {\n\t@apply box-border block;\n\n\twill-change: background, background-position-x, background-color;\n\n\tmin-height: 1em;\n\tmin-width: 1em;\n\n\t--loading-bg: #f7fafc;\n\t--loading-stripe: rgba(252, 253, 254, 1);\n\n\tbackground-color: var(--loading-bg);\n\tbackground: linear-gradient(\n\t\t\t100deg,\n\t\t\trgba(255, 255, 255, 0) 40%,\n\t\t\tvar(--loading-stripe) 50%,\n\t\t\trgba(255, 255, 255, 0) 60%\n\t\t)\n\t\tvar(--loading-bg);\n\tbackground-size: 200% 100%;\n\tbackground-position-x: 180%;\n\tanimation: 1s loading ease-in-out infinite;\n}\n\n@keyframes loading {\n\tto {\n\t\tbackground-position-x: -20%;\n\t}\n}\n\n@keyframes spin {\n\t100% {\n\t\ttransform: rotate(1turn);\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { Observable, Subscription } from 'rxjs';\n\n@Component({\n\ttag: 'p-loader',\n\tstyleUrl: 'loader.component.scss',\n\tshadow: true,\n})\nexport class Loader {\n\t/**\n\t * Wether to show or hide the loader\n\t */\n\t@Prop() show: boolean | Observable<boolean> = true;\n\n\t/**\n\t * Variant of loader\n\t */\n\t@Prop() variant: 'inline' | 'full-width' | 'full-screen' | 'modal' | 'ghost' =\n\t\t'inline';\n\n\t/**\n\t * Color of the loader\n\t */\n\t@Prop() color: 'indigo' | 'white' | 'off-white' | 'storm' = 'indigo';\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal title for modal variant\n\t */\n\t@Prop() modalTitle: string;\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal description for modal variant\n\t */\n\t@Prop() modalDescription: string;\n\n\tprivate _show: boolean | Observable<boolean> = false;\n\tprivate _showSubscriber: Subscription;\n\n\tcomponendDidLoad() {\n\t\tthis._show = this.show;\n\t}\n\n\tcomponentWillRender() {\n\t\tthis._checkShow();\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._checkShow();\n\t}\n\n\trender() {\n\t\tif (!this._show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.variant === 'ghost') {\n\t\t\treturn <Host class='variant-ghost min-h-4 min-w-4 rounded-2xl'></Host>;\n\t\t}\n\n\t\tconst loader = <div class={`loader color-${this.color}`}></div>;\n\n\t\tif (this.variant === 'full-screen') {\n\t\t\treturn (\n\t\t\t\t<Host class='variant-full-screen'>\n\t\t\t\t\t<div class='loading-screen'>\n\t\t\t\t\t\t<div class='content'>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</Host>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`variant-default flex ${\n\t\t\t\t\tthis.variant === 'full-width' && 'flex w-full justify-center text-4xl'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{loader}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkShow() {\n\t\tif (this._showSubscriber) {\n\t\t\tthis._showSubscriber.unsubscribe();\n\t\t\tthis._showSubscriber = null;\n\t\t}\n\n\t\tif (typeof this.show !== 'boolean') {\n\t\t\tthis._showSubscriber = this.show?.subscribe(show => (this._show = show));\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show = this.show;\n\t}\n}\n"],"names":["icon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"p-button.p-icon.p-loader.entry.esm.js","sources":["src/components/molecules/button/button.component.css?tag=p-button","src/components/molecules/button/button.component.tsx","src/components/atoms/icon/icon.component.css?tag=p-icon&encapsulation=shadow","src/components/atoms/icon/icon.component.tsx","src/components/atoms/loader/loader.component.scss?tag=p-loader&encapsulation=shadow","src/components/atoms/loader/loader.component.tsx"],"sourcesContent":["","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../../atoms/icon/icon.component';\nimport { asBoolean } from '../../../utils/as-boolean';\nimport { cn } from '../../../utils/cn';\n\nconst button = cva(\n\t[\n\t\t'group',\n\t\t'font-semibold leading-4',\n\t\t'flex items-center justify-center',\n\t\t'cursor-pointer',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tprimary: ['border-storm-500/20', 'text-white'],\n\t\t\t\tsecondary: null,\n\t\t\t\ttext: null,\n\t\t\t\ttransparent: 'bg-transparent border-transparent',\n\t\t\t\tdropdown: null,\n\t\t\t},\n\t\t\tactive: {\n\t\t\t\ttrue: null,\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\terror: {\n\t\t\t\ttrue: null,\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tloading: {\n\t\t\t\ttrue: 'cursor-wait',\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tsm: ['text-xs h-6 gap-1'],\n\t\t\t\tbase: ['text-sm h-8 gap-2'],\n\t\t\t\tlg: ['text-base h-10 gap-2'],\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\ttrue: 'cursor-not-allowed',\n\t\t\t\tfalse: null,\n\t\t\t},\n\t\t\tbuttonGroupPosition: {\n\t\t\t\tnone: null,\n\t\t\t\tstart: null,\n\t\t\t\tcenter: null,\n\t\t\t\tend: null,\n\t\t\t},\n\t\t\ticonOnly: {\n\t\t\t\ttrue: 'justify-center',\n\t\t\t\tfalse: 'w-inherit py-1',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t// variants\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tclass: 'bg-white',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'border',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'none',\n\t\t\t\tclass: 'rounded-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'start',\n\t\t\t\tclass: 'rounded-s-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'dropdown'],\n\t\t\t\tbuttonGroupPosition: 'end',\n\t\t\t\tclass: 'rounded-e-lg',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'text-storm-500',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'bg-indigo-200',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'bg-indigo-600',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass: [\n\t\t\t\t\t'active:border-storm-500/10 active:ring active:ring-2 active:text-white/60',\n\t\t\t\t\t'drop-shadow-primary-button hover:drop-shadow-2 hover:bg-indigo-700 active:ring-indigo-100',\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\tclass: 'ring ring-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'primary',\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\tclass: 'ring-indigo-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'border bg-white-600 text-storm-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'text-storm-500',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass:\n\t\t\t\t\t'drop-shadow-1 hover:drop-shadow-1 hover:bg-white-600 active:ring-indigo-100 active:text-storm-500/60',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'active:border-indigo-600 active:ring active:ring-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tactive: true,\n\t\t\t\terror: false,\n\t\t\t\tclass: 'border-indigo-600 ring ring-2 ring-indigo-100',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\terror: false,\n\t\t\t\tactive: false,\n\t\t\t\tclass: ['border-storm-500/20'],\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\t\terror: true,\n\t\t\t\tclass:\n\t\t\t\t\t'border border-negative-red-500 text-negative-red-800 ring ring-2 ring-negative-red-50 active:text-negative-red-800',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: false,\n\t\t\t\tclass: 'text-indigo-700 hover:text-indigo-800',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: true,\n\t\t\t\tclass: 'text-indigo-300',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['text', 'transparent'],\n\t\t\t\tdisabled: false,\n\t\t\t\tloading: false,\n\t\t\t\tclass: 'active:text-indigo-800',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent'],\n\t\t\t\tsize: ['base', 'sm'],\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'px-2',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent'],\n\t\t\t\tsize: 'lg',\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'px-3',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: 'dropdown',\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'p-2',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tvariant: ['primary', 'secondary', 'transparent', 'text'],\n\t\t\t\ticonOnly: false,\n\t\t\t\tclass: 'py-1',\n\t\t\t},\n\n\t\t\t{\n\t\t\t\tsize: 'sm',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-6',\n\t\t\t},\n\t\t\t{\n\t\t\t\tsize: 'base',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-8',\n\t\t\t},\n\t\t\t{\n\t\t\t\tsize: 'lg',\n\t\t\t\ticonOnly: true,\n\t\t\t\tclass: 'w-10',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst icon = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\tsm: 'text-xs',\n\t\t\tbase: 'text-base',\n\t\t\tlg: 'text-base',\n\t\t},\n\t\tvariant: {\n\t\t\tprimary: null,\n\t\t\tsecondary: null,\n\t\t\ttext: null,\n\t\t\ttransparent: null,\n\t\t\tdropdown: null,\n\t\t},\n\t\tdisabled: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t\tactive: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t\terror: {\n\t\t\ttrue: null,\n\t\t\tfalse: null,\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tvariant: 'primary',\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\terror: false,\n\t\t\tclass:\n\t\t\t\t'text-indigo-300 group-hover:text-white group-active:text-white/60',\n\t\t},\n\t\t{\n\t\t\tvariant: 'primary',\n\t\t\tdisabled: false,\n\t\t\tactive: true,\n\t\t\tclass: 'text-white/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\terror: false,\n\t\t\tclass:\n\t\t\t\t'text-storm-300 group-hover:text-storm-500 group-active:text-storm-500/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tdisabled: false,\n\t\t\tactive: true,\n\t\t\terror: false,\n\t\t\tclass: 'text-storm-500/60',\n\t\t},\n\t\t{\n\t\t\tvariant: ['transparent', 'text'],\n\t\t\tdisabled: false,\n\t\t\tactive: false,\n\t\t\tclass:\n\t\t\t\t'text-indigo-500 group-hover:text-indigo-700 group-active:text-indigo-800',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tactive: false,\n\t\t\terror: true,\n\t\t\tclass: 'text-negative-red-500 group-hover:text-negative-red-800',\n\t\t},\n\t\t{\n\t\t\tvariant: ['secondary', 'dropdown'],\n\t\t\tactive: true,\n\t\t\terror: true,\n\t\t\tclass: 'text-negative-red-800',\n\t\t},\n\t],\n});\n\nexport type ButtonVariant =\n\t| 'primary'\n\t| 'secondary'\n\t| 'transparent'\n\t| 'text'\n\t| 'dropdown';\n\n@Component({\n\ttag: 'p-button',\n\tstyleUrl: 'button.component.css',\n})\nexport class Button {\n\t/**\n\t * The label of the button (Can use slot)\n\t */\n\t@Prop() label?: string;\n\n\t/**\n\t * The type of the button\n\t */\n\t@Prop() as?: 'a' | 'button' = 'button';\n\n\t/**\n\t * The variant of the button\n\t */\n\t@Prop() variant?: ButtonVariant = 'primary';\n\n\t/**\n\t * Wether to force an active state\n\t */\n\t@Prop() active?: boolean = false;\n\n\t/**\n\t * Wether to show a error state\n\t */\n\t@Prop() error?: boolean = false;\n\n\t/**\n\t * Href in case of \"text\" version\n\t */\n\t@Prop() href?: string;\n\n\t/**\n\t * Target in case of \"text\" version\n\t */\n\t@Prop() target?: string;\n\n\t/**\n\t * The size of the button\n\t */\n\t@Prop() size?: 'sm' | 'base' | 'lg' = 'base';\n\n\t/**\n\t * The type of the button\n\t */\n\t@Prop() type?: 'button' | 'submit' = 'button';\n\n\t/**\n\t * Wether to show a loader or not\n\t */\n\t@Prop() loading?: boolean = false;\n\n\t/**\n\t * Wether to show a chevron or not\n\t */\n\t@Prop() chevron?: boolean | 'up' | 'down' = false;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition?: 'start' | 'end' = 'end';\n\n\t/**\n\t * Wether the button is disabled\n\t */\n\t@Prop() disabled?: boolean = false;\n\n\t/**\n\t * Icon to show on the button\n\t */\n\t@Prop() icon?: IconVariant;\n\n\t/**\n\t * Wether the button is icon only\n\t */\n\t@Prop() iconOnly?: boolean = false;\n\n\t/**\n\t * A class to apply to the icon\n\t */\n\t@Prop() iconClass?: string;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition?: 'start' | 'end' = 'start';\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip?: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate?: RotateOptions;\n\n\t/**\n\t * Wether the button should inherit text styles\n\t */\n\t@Prop() inheritText?: boolean = false;\n\n\t/**\n\t * Position of the button in the button group, mostly un-used if not in a group\n\t */\n\t@Prop() buttonGroupPosition?: 'start' | 'center' | 'end' | 'none' = 'none';\n\n\t/**\n\t * The class of the container passed by parent\n\t */\n\t@Prop() class?: string;\n\n\t/**\n\t * Button click event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tonClick: EventEmitter<MouseEvent>;\n\n\trender() {\n\t\tlet loaderColor: 'white' | 'off-white' | 'indigo' | 'storm' = 'white';\n\t\tswitch (this.variant) {\n\t\t\tcase 'secondary':\n\t\t\tcase 'dropdown':\n\t\t\tcase 'transparent':\n\t\t\t\tloaderColor = 'off-white';\n\t\t\t\tbreak;\n\t\t\tcase 'text':\n\t\t\t\tloaderColor = 'storm';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst VariableTag =\n\t\t\tthis.variant === 'text' || this.href?.length || this.as === 'a'\n\t\t\t\t? 'a'\n\t\t\t\t: 'button';\n\n\t\tconst hostClass = cn('p-button inline-block', this.class);\n\t\tconst active = asBoolean(this.active) || hostClass?.includes('active');\n\n\t\treturn (\n\t\t\t<Host class={hostClass}>\n\t\t\t\t<VariableTag\n\t\t\t\t\tdisabled={asBoolean(this.disabled)}\n\t\t\t\t\thref={this.href}\n\t\t\t\t\ttype={this.variant !== 'text' ? this.type : undefined}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t\tclass={button({\n\t\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\tloading: asBoolean(this.loading),\n\t\t\t\t\t\tdisabled: asBoolean(this.disabled),\n\t\t\t\t\t\tbuttonGroupPosition: this.buttonGroupPosition,\n\t\t\t\t\t\ticonOnly: asBoolean(this.iconOnly),\n\t\t\t\t\t\tactive,\n\t\t\t\t\t\terror: asBoolean(this.error),\n\t\t\t\t\t})}\n\t\t\t\t>\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'start' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tvariant='caret'\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'start' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.label ? this.label : <slot />}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'end' &&\n\t\t\t\t\t\t!this.loading &&\n\t\t\t\t\t\t!this.chevron &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.chevron && !this.loading && this.chevronPosition === 'end' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tvariant='caret'\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.loading && <p-loader color={loaderColor} />}\n\t\t\t\t</VariableTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\thandleClick(ev: MouseEvent) {\n\t\tif (this.loading || this.disabled) {\n\t\t\tev.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.onClick.emit(ev);\n\t}\n\n\tprivate _getIcon() {\n\t\tif (!this.icon) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tclass={cn(\n\t\t\t\t\ticon({\n\t\t\t\t\t\tsize: this.size,\n\t\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\t\tdisabled: asBoolean(this.disabled),\n\t\t\t\t\t\tactive: asBoolean(this.active),\n\t\t\t\t\t\terror: asBoolean(this.error),\n\t\t\t\t\t}),\n\t\t\t\t\tthis.iconClass ?? ''\n\t\t\t\t)}\n\t\t\t\tvariant={this.icon}\n\t\t\t\tflip={this.iconFlip}\n\t\t\t\trotate={this.iconRotate}\n\t\t\t/>\n\t\t);\n\t}\n}\n",":host {\n\t--tw-translate-y: 0px !important;\n\t--tw-translate-x: 0px !important;\n\n\t@apply inline-flex;\n}\n","import { Component, h, Prop, Element } from '@stencil/core';\nimport { cva } from 'class-variance-authority';\nimport { TextSizeOptions } from '../../../types/tailwind';\nimport { icons } from '../../../utils/icons';\n\nexport type IconVariant = keyof typeof icons;\nexport type IconFlipOptions = 'none' | 'horizontal' | 'vertical';\n\nconst icon = cva(['p-icon inline-flex', 'transform-gpu transition-transform'], {\n\tvariants: {\n\t\tflip: {\n\t\t\tnone: null,\n\t\t\thorizontal: 'scale-x-flip',\n\t\t\tvertical: 'scale-y-flip',\n\t\t},\n\t\tsize: {\n\t\t\tauto: null,\n\t\t\txxs: 'text-xxs',\n\t\t\txs: 'text-xs',\n\t\t\tsm: 'text-sm',\n\t\t\tbase: 'text-base',\n\t\t\tlg: 'text-lg',\n\t\t\txl: 'text-xl',\n\t\t\t'2xl': 'text-2xl',\n\t\t\t'3xl': 'text-3xl',\n\t\t\t'4xl': 'text-4xl',\n\t\t},\n\t\ttransform: {\n\t\t\ttrue: 'scale-[0.9999]',\n\t\t\tfalse: null,\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-icon',\n\tstyleUrl: 'icon.component.css',\n\tshadow: true,\n})\nexport class Icon {\n\t/**\n\t * The icon the be displayed\n\t */\n\t@Prop() variant!: IconVariant;\n\n\t/**\n\t * The size of the icon, using tailwind sizes\n\t */\n\t@Prop() size: TextSizeOptions = 'base';\n\n\t/**\n\t * Wether to rotate the icon x degrees\n\t */\n\t@Prop() rotate: number = 0;\n\n\t/**\n\t * Wether to flip the icon horizontally or vertically\n\t */\n\t@Prop() flip: IconFlipOptions = 'none';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() _el: HTMLElement;\n\n\tcomponentWillRender() {\n\t\tconst icon = icons[this.variant];\n\t\tif (!icon) {\n\t\t\tconsole.warn(`[p-icon] Variant \"${this.variant}\" does not exist `);\n\t\t}\n\t}\n\n\trender() {\n\t\tconst hasTextSizeClass = /text-(xs|sm|base|lg|xl)/.test(this._el.className);\n\t\tconst svg = icons[this.variant];\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={icon({\n\t\t\t\t\tflip: this.flip,\n\t\t\t\t\tsize: hasTextSizeClass ? 'auto' : this.size,\n\t\t\t\t\ttransform: this.flip !== 'none' || this.rotate > 0 || this.rotate < 0,\n\t\t\t\t})}\n\t\t\t\tstyle={{\n\t\t\t\t\t'--tw-rotate': `${this.rotate}deg`,\n\t\t\t\t}}\n\t\t\t\ttitle={this.variant}\n\t\t\t\tinnerHTML={svg}\n\t\t\t></div>\n\t\t);\n\t}\n}\n",":host {\n\t.loader {\n\t\t@apply inline-block h-[1em] w-[1em] rounded-full;\n\t\t@apply border-2 border-solid;\n\t\tanimation: 500ms spin linear infinite;\n\n\t\twill-change: transform;\n\n\t\t&.color-indigo {\n\t\t\t@apply border-r-indigo-500/40 border-t-indigo-500 #{!important};\n\t\t}\n\n\t\t&.color-off-white {\n\t\t\t@apply border-off-white-600/40 border-t-off-white-800 #{!important};\n\t\t}\n\n\t\t&.color-white {\n\t\t\t@apply border-white/40 border-t-white #{!important};\n\t\t}\n\n\t\t&.color-storm {\n\t\t\t@apply border-r-storm-400 border-t-storm-700 #{!important};\n\t\t}\n\t}\n\n\t.loading-screen {\n\t\t@apply fixed left-0 top-0 h-screen-safe w-screen-safe;\n\t\t@apply flex items-center justify-center;\n\t\t@apply bg-off-white-200;\n\n\t\tz-index: 1001;\n\n\t\t.content {\n\t\t\t@apply max-w-xs;\n\t\t}\n\t}\n}\n\n:host(.variant-ghost) {\n\t@apply box-border block;\n\n\twill-change: background, background-position-x, background-color;\n\n\tmin-height: 1em;\n\tmin-width: 1em;\n\n\t--loading-bg: #f7fafc;\n\t--loading-stripe: rgba(252, 253, 254, 1);\n\n\tbackground-color: var(--loading-bg);\n\tbackground: linear-gradient(\n\t\t\t100deg,\n\t\t\trgba(255, 255, 255, 0) 40%,\n\t\t\tvar(--loading-stripe) 50%,\n\t\t\trgba(255, 255, 255, 0) 60%\n\t\t)\n\t\tvar(--loading-bg);\n\tbackground-size: 200% 100%;\n\tbackground-position-x: 180%;\n\tanimation: 1s loading ease-in-out infinite;\n}\n\n@keyframes loading {\n\tto {\n\t\tbackground-position-x: -20%;\n\t}\n}\n\n@keyframes spin {\n\t100% {\n\t\ttransform: rotate(1turn);\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { Observable, Subscription } from 'rxjs';\n\n@Component({\n\ttag: 'p-loader',\n\tstyleUrl: 'loader.component.scss',\n\tshadow: true,\n})\nexport class Loader {\n\t/**\n\t * Wether to show or hide the loader\n\t */\n\t@Prop() show: boolean | Observable<boolean> = true;\n\n\t/**\n\t * Variant of loader\n\t */\n\t@Prop() variant: 'inline' | 'full-width' | 'full-screen' | 'modal' | 'ghost' =\n\t\t'inline';\n\n\t/**\n\t * Color of the loader\n\t */\n\t@Prop() color: 'indigo' | 'white' | 'off-white' | 'storm' = 'indigo';\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal title for modal variant\n\t */\n\t@Prop() modalTitle: string;\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal description for modal variant\n\t */\n\t@Prop() modalDescription: string;\n\n\tprivate _show: boolean | Observable<boolean> = false;\n\tprivate _showSubscriber: Subscription;\n\n\tcomponendDidLoad() {\n\t\tthis._show = this.show;\n\t}\n\n\tcomponentWillRender() {\n\t\tthis._checkShow();\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._checkShow();\n\t}\n\n\trender() {\n\t\tif (!this._show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.variant === 'ghost') {\n\t\t\treturn <Host class='variant-ghost min-h-4 min-w-4 rounded-2xl'></Host>;\n\t\t}\n\n\t\tconst loader = <div class={`loader color-${this.color}`}></div>;\n\n\t\tif (this.variant === 'full-screen') {\n\t\t\treturn (\n\t\t\t\t<Host class='variant-full-screen'>\n\t\t\t\t\t<div class='loading-screen'>\n\t\t\t\t\t\t<div class='content'>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</Host>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`variant-default flex ${\n\t\t\t\t\tthis.variant === 'full-width' && 'flex w-full justify-center text-4xl'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{loader}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkShow() {\n\t\tif (this._showSubscriber) {\n\t\t\tthis._showSubscriber.unsubscribe();\n\t\t\tthis._showSubscriber = null;\n\t\t}\n\n\t\tif (typeof this.show !== 'boolean') {\n\t\t\tthis._showSubscriber = this.show?.subscribe(show => (this._show = show));\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show = this.show;\n\t}\n}\n"],"names":["icon"],"mappings":";;;;;;;AAAA,MAAM,kBAAkB,GAAG,irQAAirQ;;ACe5sQ,MAAM,MAAM,GAAG,GAAG,CACjB;IACC,OAAO;IACP,yBAAyB;IACzB,kCAAkC;IAClC,gBAAgB;CAChB,EACD;AACC,IAAA,QAAQ,EAAE;AACT,QAAA,OAAO,EAAE;AACR,YAAA,OAAO,EAAE,CAAC,qBAAqB,EAAE,YAAY,CAAC;AAC9C,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,WAAW,EAAE,mCAAmC;AAChD,YAAA,QAAQ,EAAE,IAAI;AACd,SAAA;AACD,QAAA,MAAM,EAAE;AACP,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,KAAK,EAAE;AACN,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,OAAO,EAAE;AACR,YAAA,IAAI,EAAE,aAAa;AACnB,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,IAAI,EAAE;YACL,EAAE,EAAE,CAAC,mBAAmB,CAAC;YACzB,IAAI,EAAE,CAAC,mBAAmB,CAAC;YAC3B,EAAE,EAAE,CAAC,sBAAsB,CAAC;AAC5B,SAAA;AACD,QAAA,QAAQ,EAAE;AACT,YAAA,IAAI,EAAE,oBAAoB;AAC1B,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,mBAAmB,EAAE;AACpB,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,GAAG,EAAE,IAAI;AACT,SAAA;AACD,QAAA,QAAQ,EAAE;AACT,YAAA,IAAI,EAAE,gBAAgB;AACtB,YAAA,KAAK,EAAE,gBAAgB;AACvB,SAAA;AACD,KAAA;AACD,IAAA,gBAAgB,EAAE;;AAEjB,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,KAAK,EAAE,UAAU;AACjB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC;AAC7C,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,QAAQ;AACf,SAAA;AACD,QAAA;YACC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,CAAC;AAC5D,YAAA,mBAAmB,EAAE,MAAM;AAC3B,YAAA,KAAK,EAAE,YAAY;AACnB,SAAA;AACD,QAAA;YACC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,CAAC;AAC5D,YAAA,mBAAmB,EAAE,OAAO;AAC5B,YAAA,KAAK,EAAE,cAAc;AACrB,SAAA;AACD,QAAA;YACC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,CAAC;AAC5D,YAAA,mBAAmB,EAAE,KAAK;AAC1B,YAAA,KAAK,EAAE,cAAc;AACrB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EAAE,gBAAgB;AACvB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,eAAe;AACtB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,eAAe;AACtB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,KAAK,EAAE;gBACN,2EAA2E;gBAC3E,2FAA2F;AAC3F,aAAA;AACD,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,aAAa;AACpB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,iBAAiB;AACxB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,oCAAoC;AAC3C,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,gBAAgB;AACvB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,KAAK,EACJ,sGAAsG;AACvG,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EAAE,oDAAoD;AAC3D,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EAAE,+CAA+C;AACtD,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,CAAC,qBAAqB,CAAC;AAC9B,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,KAAK,EACJ,qHAAqH;AACtH,SAAA;AAED,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;AAChC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,uCAAuC;AAC9C,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;AAChC,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,iBAAiB;AACxB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;AAChC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,KAAK,EAAE,wBAAwB;AAC/B,SAAA;AAED,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC;AAChD,YAAA,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AACpB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,MAAM;AACb,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC;AAChD,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,MAAM;AACb,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,KAAK;AACZ,SAAA;AAED,QAAA;YACC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC;AACxD,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,KAAK,EAAE,MAAM;AACb,SAAA;AAED,QAAA;AACC,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,KAAK;AACZ,SAAA;AACD,QAAA;AACC,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,KAAK;AACZ,SAAA;AACD,QAAA;AACC,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,KAAK,EAAE,MAAM;AACb,SAAA;AACD,KAAA;AACD,CAAA,CACD;AAED,MAAMA,MAAI,GAAG,GAAG,CAAC,EAAE,EAAE;AACpB,IAAA,QAAQ,EAAE;AACT,QAAA,IAAI,EAAE;AACL,YAAA,EAAE,EAAE,SAAS;AACb,YAAA,IAAI,EAAE,WAAW;AACjB,YAAA,EAAE,EAAE,WAAW;AACf,SAAA;AACD,QAAA,OAAO,EAAE;AACR,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,QAAQ,EAAE,IAAI;AACd,SAAA;AACD,QAAA,QAAQ,EAAE;AACT,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,MAAM,EAAE;AACP,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,QAAA,KAAK,EAAE;AACN,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,KAAA;AACD,IAAA,gBAAgB,EAAE;AACjB,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EACJ,mEAAmE;AACpE,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,eAAe;AACtB,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EACJ,0EAA0E;AAC3E,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,KAAK,EAAE,mBAAmB;AAC1B,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;AAChC,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,KAAK,EACJ,0EAA0E;AAC3E,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,KAAK,EAAE,yDAAyD;AAChE,SAAA;AACD,QAAA;AACC,YAAA,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;AAClC,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,KAAK,EAAE,uBAAuB;AAC9B,SAAA;AACD,KAAA;AACD,CAAA,CAAC;MAaW,MAAM,GAAA,MAAA;;;;;AAClB;;AAEG;AACK,IAAA,KAAK;AAEb;;AAEG;IACK,EAAE,GAAoB,QAAQ;AAEtC;;AAEG;IACK,OAAO,GAAmB,SAAS;AAE3C;;AAEG;IACK,MAAM,GAAa,KAAK;AAEhC;;AAEG;IACK,KAAK,GAAa,KAAK;AAE/B;;AAEG;AACK,IAAA,IAAI;AAEZ;;AAEG;AACK,IAAA,MAAM;AAEd;;AAEG;IACK,IAAI,GAA0B,MAAM;AAE5C;;AAEG;IACK,IAAI,GAAyB,QAAQ;AAE7C;;AAEG;IACK,OAAO,GAAa,KAAK;AAEjC;;AAEG;IACK,OAAO,GAA6B,KAAK;AAEjD;;AAEG;IACK,eAAe,GAAqB,KAAK;AAEjD;;AAEG;IACK,QAAQ,GAAa,KAAK;AAElC;;AAEG;AACK,IAAA,IAAI;AAEZ;;AAEG;IACK,QAAQ,GAAa,KAAK;AAElC;;AAEG;AACK,IAAA,SAAS;AAEjB;;AAEG;IACK,YAAY,GAAqB,OAAO;AAEhD;;AAEG;AACK,IAAA,QAAQ;AAEhB;;AAEG;AACK,IAAA,UAAU;AAElB;;AAEG;IACK,WAAW,GAAa,KAAK;AAErC;;AAEG;IACK,mBAAmB,GAAyC,MAAM;AAE1E;;AAEG;AACK,IAAA,KAAK;AAEb;;AAEG;AAIH,IAAA,OAAO;IAEP,MAAM,GAAA;QACL,IAAI,WAAW,GAA+C,OAAO;AACrE,QAAA,QAAQ,IAAI,CAAC,OAAO;AACnB,YAAA,KAAK,WAAW;AAChB,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,aAAa;gBACjB,WAAW,GAAG,WAAW;gBACzB;AACD,YAAA,KAAK,MAAM;gBACV,WAAW,GAAG,OAAO;gBACrB;;AAGF,QAAA,MAAM,WAAW,GAChB,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,EAAE,KAAK;AAC3D,cAAE;cACA,QAAQ;QAEZ,MAAM,SAAS,GAAG,EAAE,CAAC,uBAAuB,EAAE,IAAI,CAAC,KAAK,CAAC;AACzD,QAAA,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC;AAEtE,QAAA,QACC,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,SAAS,EAAA,EACrB,CAAC,CAAA,WAAW,qDACX,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAClC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,EACrD,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,MAAM,CAAC;gBACb,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,gBAAA,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;AAChC,gBAAA,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAClC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;AAC7C,gBAAA,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAClC,MAAM;AACN,gBAAA,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;aAC5B,CAAC,EAAA,EAED,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,KAChD,CACC,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAC,OAAO,EACf,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,GAAG,GAAG,GAAG,CAAC,GACtC,CACF,EAEA,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,YAAY,KAAK,OAAO;YAC7B,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;YAChC,IAAI,CAAC,QAAQ,EAAE,EAEf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAQ,CAAA,MAAA,EAAA,IAAA,CAAA,EAElC,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,YAAY,KAAK,KAAK;YAC3B,CAAC,IAAI,CAAC,OAAO;YACb,CAAC,IAAI,CAAC,OAAO;AACb,YAAA,IAAI,CAAC,QAAQ,EAAE,EAEf,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,KAAK,KAAK,KAC/D,+DACC,OAAO,EAAC,OAAO,EACf,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,GAAG,GAAG,GAAG,CAAC,GACtC,CACF,EAEA,IAAI,CAAC,OAAO,IAAI,CAAU,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,WAAW,EAAI,CAAA,CACpC,CACR;;AAKT,IAAA,WAAW,CAAC,EAAc,EAAA;QACzB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClC,EAAE,CAAC,cAAc,EAAE;YACnB;;AAGD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;;IAGd,QAAQ,GAAA;AACf,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACf;;QAGD,QACC,CACC,CAAA,QAAA,EAAA,EAAA,KAAK,EAAE,EAAE,CACRA,MAAI,CAAC;gBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;AACrB,gBAAA,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAClC,gBAAA,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC9B,gBAAA,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,aAAA,CAAC,EACF,IAAI,CAAC,SAAS,IAAI,EAAE,CACpB,EACD,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,MAAM,EAAE,IAAI,CAAC,UAAU,EACtB,CAAA;;;;;AChiBL,MAAM,gBAAgB,GAAG,wuDAAwuD;;ACQjwD,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,oBAAoB,EAAE,oCAAoC,CAAC,EAAE;AAC9E,IAAA,QAAQ,EAAE;AACT,QAAA,IAAI,EAAE;AACL,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,UAAU,EAAE,cAAc;AAC1B,YAAA,QAAQ,EAAE,cAAc;AACxB,SAAA;AACD,QAAA,IAAI,EAAE;AACL,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,EAAE,EAAE,SAAS;AACb,YAAA,EAAE,EAAE,SAAS;AACb,YAAA,IAAI,EAAE,WAAW;AACjB,YAAA,EAAE,EAAE,SAAS;AACb,YAAA,EAAE,EAAE,SAAS;AACb,YAAA,KAAK,EAAE,UAAU;AACjB,YAAA,KAAK,EAAE,UAAU;AACjB,YAAA,KAAK,EAAE,UAAU;AACjB,SAAA;AACD,QAAA,SAAS,EAAE;AACV,YAAA,IAAI,EAAE,gBAAgB;AACtB,YAAA,KAAK,EAAE,IAAI;AACX,SAAA;AACD,KAAA;AACD,CAAA,CAAC;MAOW,IAAI,GAAA,MAAA;;;;AAChB;;AAEG;AACK,IAAA,OAAO;AAEf;;AAEG;IACK,IAAI,GAAoB,MAAM;AAEtC;;AAEG;IACK,MAAM,GAAW,CAAC;AAE1B;;AAEG;IACK,IAAI,GAAoB,MAAM;;IAOtC,mBAAmB,GAAA;QAClB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE;YACV,OAAO,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,OAAO,CAAmB,iBAAA,CAAA,CAAC;;;IAIpE,MAAM,GAAA;AACL,QAAA,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;QAC3E,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AAE/B,QAAA,QACC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACC,KAAK,EAAE,IAAI,CAAC;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI;AAC3C,gBAAA,SAAS,EAAE,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;aACrE,CAAC,EACF,KAAK,EAAE;AACN,gBAAA,aAAa,EAAE,CAAA,EAAG,IAAI,CAAC,MAAM,CAAK,GAAA,CAAA;AAClC,aAAA,EACD,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,SAAS,EAAE,GAAG,EACR,CAAA;;;;;ACxFV,MAAM,kBAAkB,GAAG,uqHAAuqH;;MCQrrH,MAAM,GAAA,MAAA;;;;AAClB;;AAEG;IACK,IAAI,GAAkC,IAAI;AAElD;;AAEG;IACK,OAAO,GACd,QAAQ;AAET;;AAEG;IACK,KAAK,GAA+C,QAAQ;AAEpE;;AAEG;AACK,IAAA,UAAU;AAElB;;AAEG;AACK,IAAA,gBAAgB;IAEhB,KAAK,GAAkC,KAAK;AAC5C,IAAA,eAAe;IAEvB,gBAAgB,GAAA;AACf,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI;;IAGvB,mBAAmB,GAAA;QAClB,IAAI,CAAC,UAAU,EAAE;;IAGlB,qBAAqB,GAAA;QACpB,IAAI,CAAC,UAAU,EAAE;;IAGlB,MAAM,GAAA;AACL,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAChB;;AAGD,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;YAC7B,OAAO,EAAC,IAAI,EAAA,EAAC,KAAK,EAAC,2CAA2C,GAAQ;;AAGvE,QAAA,MAAM,MAAM,GAAG,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,CAAA,aAAA,EAAgB,IAAI,CAAC,KAAK,CAAE,CAAA,EAAA,CAAQ;AAE/D,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa,EAAE;AACnC,YAAA,QACC,CAAC,CAAA,IAAI,EAAC,EAAA,KAAK,EAAC,qBAAqB,EAAA,EAChC,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EAC1B,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EACnB,CAAA,CAAA,MAAA,EAAA,IAAA,CAAQ,CACH,CACD,CACA;;QAIT,QACC,CAAC,CAAA,IAAI,IACJ,KAAK,EAAE,CAAA,qBAAA,EACN,IAAI,CAAC,OAAO,KAAK,YAAY,IAAI,qCAClC,CAAA,CAAE,IAED,MAAM,CACD;;IAID,UAAU,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;AACzB,YAAA,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;AAClC,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI;;AAG5B,QAAA,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACxE;;AAGD,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI;;;;;;;"}
|