@paperless/core 1.47.0 → 1.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/dist/build/p-08bef9ec.entry.js +2 -0
- package/dist/build/p-08bef9ec.entry.js.map +1 -0
- package/dist/build/p-6e267655.entry.js +2 -0
- package/dist/build/p-6e267655.entry.js.map +1 -0
- package/dist/build/p-ef0bfa6c.entry.js +2 -0
- package/dist/build/p-ef0bfa6c.entry.js.map +1 -0
- package/dist/build/paperless.esm.js +1 -1
- package/dist/build/paperless.esm.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/p-dropdown-menu-container.cjs.entry.js +3 -2
- package/dist/cjs/p-dropdown-menu-container.cjs.entry.js.map +1 -1
- package/dist/cjs/p-dropdown_2.cjs.entry.js +2 -1
- package/dist/cjs/p-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/p-table.cjs.entry.js +17 -5
- package/dist/cjs/p-table.cjs.entry.js.map +1 -1
- package/dist/cjs/paperless.cjs.js +1 -1
- package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.css +1 -1
- package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.js +20 -1
- package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.js.map +1 -1
- package/dist/collection/components/molecules/dropdown/dropdown.component.js +20 -1
- package/dist/collection/components/molecules/dropdown/dropdown.component.js.map +1 -1
- package/dist/collection/components/organisms/table/table.component.js +17 -5
- package/dist/collection/components/organisms/table/table.component.js.map +1 -1
- package/dist/components/dropdown-menu-container.component.js +4 -2
- package/dist/components/dropdown-menu-container.component.js.map +1 -1
- package/dist/components/dropdown.component.js +3 -1
- package/dist/components/dropdown.component.js.map +1 -1
- package/dist/components/p-table.js +17 -5
- package/dist/components/p-table.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/p-dropdown-menu-container.entry.js +3 -2
- package/dist/esm/p-dropdown-menu-container.entry.js.map +1 -1
- package/dist/esm/p-dropdown_2.entry.js +2 -1
- package/dist/esm/p-dropdown_2.entry.js.map +1 -1
- package/dist/esm/p-table.entry.js +17 -5
- 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/paperless/p-08bef9ec.entry.js +2 -0
- package/dist/paperless/p-08bef9ec.entry.js.map +1 -0
- package/dist/paperless/p-6e267655.entry.js +2 -0
- package/dist/paperless/p-6e267655.entry.js.map +1 -0
- package/dist/paperless/p-ef0bfa6c.entry.js +2 -0
- package/dist/paperless/p-ef0bfa6c.entry.js.map +1 -0
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/paperless/paperless.esm.js.map +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/types/components/atoms/dropdown-menu-container/dropdown-menu-container.component.d.ts +4 -0
- package/dist/types/components/molecules/dropdown/dropdown.component.d.ts +4 -0
- package/dist/types/components/organisms/table/table.component.d.ts +2 -0
- package/dist/types/components.d.ts +16 -0
- package/hydrate/index.js +24 -8
- package/package.json +1 -1
- package/dist/build/p-53601c7e.entry.js +0 -2
- package/dist/build/p-53601c7e.entry.js.map +0 -1
- package/dist/build/p-a5d34188.entry.js +0 -2
- package/dist/build/p-a5d34188.entry.js.map +0 -1
- package/dist/build/p-cd2f0e4f.entry.js +0 -2
- package/dist/build/p-cd2f0e4f.entry.js.map +0 -1
- package/dist/paperless/p-53601c7e.entry.js +0 -2
- package/dist/paperless/p-53601c7e.entry.js.map +0 -1
- package/dist/paperless/p-a5d34188.entry.js +0 -2
- package/dist/paperless/p-a5d34188.entry.js.map +0 -1
- package/dist/paperless/p-cd2f0e4f.entry.js +0 -2
- package/dist/paperless/p-cd2f0e4f.entry.js.map +0 -1
|
@@ -46,6 +46,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
46
46
|
this.pageSizeChange = createEvent(this, "pageSizeChange", 3);
|
|
47
47
|
this.export = createEvent(this, "export", 3);
|
|
48
48
|
this.emptyStateActionClick = createEvent(this, "emptyStateActionClick", 3);
|
|
49
|
+
this._rowActionsFloatingAll = [];
|
|
49
50
|
this._ctrlDown = false;
|
|
50
51
|
this._hasCustomFilterSlot = false;
|
|
51
52
|
this._floatingMenuShown = false;
|
|
@@ -198,7 +199,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
198
199
|
// we hack this to any[] to make it work..
|
|
199
200
|
const actions = Array.from(this._el.querySelectorAll(':scope > p-table-row-action'));
|
|
200
201
|
this._rowActionsRow = actions.filter((a) => a.type === 'both' || a.type === 'single');
|
|
201
|
-
this.
|
|
202
|
+
this._rowActionsFloatingAll = actions
|
|
202
203
|
.filter((a) => a.type === 'both' || a.type === 'multi' || mobile)
|
|
203
204
|
.map((a) => {
|
|
204
205
|
var _a;
|
|
@@ -209,7 +210,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
209
210
|
});
|
|
210
211
|
let rowSelectionLimit = this.rowSelectionLimit;
|
|
211
212
|
if (mobile && // we're mobile
|
|
212
|
-
((_a = this.
|
|
213
|
+
((_a = this._rowActionsFloatingAll) === null || _a === void 0 ? void 0 : _a.length) && // we have atleast 1 item in _rowActionsFloating
|
|
213
214
|
((rowSelectionLimit !== undefined && this.enableRowSelection) ||
|
|
214
215
|
!this.enableRowSelection)) {
|
|
215
216
|
rowSelectionLimit = 1;
|
|
@@ -217,7 +218,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
217
218
|
this._rowSelectionLimit = rowSelectionLimit;
|
|
218
219
|
let enableRowSelection = this.enableRowSelection;
|
|
219
220
|
if (mobile && // we're mobile
|
|
220
|
-
((_b = this.
|
|
221
|
+
((_b = this._rowActionsFloatingAll) === null || _b === void 0 ? void 0 : _b.length) && // we have atleast 1 item in _rowActionsFloating
|
|
221
222
|
!enableRowSelection) {
|
|
222
223
|
enableRowSelection = true;
|
|
223
224
|
}
|
|
@@ -329,7 +330,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
329
330
|
this.selectedRows = [...this.selectedRows, ...toAdd];
|
|
330
331
|
this.selectedRowsChange.emit(this.selectedRows);
|
|
331
332
|
if (this.enableFloatingMenu && !this._floatingMenuShown) {
|
|
332
|
-
this.
|
|
333
|
+
this._showFloatingMenu();
|
|
333
334
|
}
|
|
334
335
|
return;
|
|
335
336
|
}
|
|
@@ -369,7 +370,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
369
370
|
this.selectedRowsChange.emit(this.selectedRows);
|
|
370
371
|
this.rowSelected.emit(row);
|
|
371
372
|
if (this.enableFloatingMenu && !this._floatingMenuShown) {
|
|
372
|
-
this.
|
|
373
|
+
this._showFloatingMenu();
|
|
373
374
|
}
|
|
374
375
|
return;
|
|
375
376
|
}
|
|
@@ -481,6 +482,17 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
|
|
|
481
482
|
}
|
|
482
483
|
return this._findRowAction(el === null || el === void 0 ? void 0 : el.parentElement);
|
|
483
484
|
}
|
|
485
|
+
_showFloatingMenu() {
|
|
486
|
+
let actions = this._rowActionsFloatingAll;
|
|
487
|
+
if (this.rowSelectionLimit === 1 &&
|
|
488
|
+
actions.findIndex((a) => (a.type === 'single' || a.type === 'both') && a.showFunction) >= 0) {
|
|
489
|
+
actions = actions.filter((a) => a.type === 'multi' ||
|
|
490
|
+
!a.showFunction ||
|
|
491
|
+
a.showFunction(this.selectedRows[0]));
|
|
492
|
+
}
|
|
493
|
+
this._rowActionsFloating = actions;
|
|
494
|
+
this._floatingMenuShown = true;
|
|
495
|
+
}
|
|
484
496
|
get _el() { return this; }
|
|
485
497
|
static get watchers() { return {
|
|
486
498
|
"items": ["_parseItems"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-table.js","mappings":"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","names":[],"sources":["src/components/organisms/table/table.component.scss?tag=p-table","src/components/organisms/table/table.component.tsx"],"sourcesContent":["p-table {\n\t@apply relative flex flex-col;\n\n\t.p-input[type='checkbox'] {\n\t\tflex-shrink: 0;\n\t}\n\n\tp-table-container {\n\t\t@apply relative;\n\n\t\tp-floating-menu-container {\n\t\t\t@apply fixed bottom-4 left-1/2 -translate-x-1/2 transform;\n\t\t\tanimation: forwards floatingMenuContainerIn 0.3s ease !important;\n\n\t\t\t@screen tablet {\n\t\t\t\t@apply absolute bottom-16;\n\t\t\t}\n\n\t\t\t&:not(.shown) {\n\t\t\t\t@apply hidden;\n\t\t\t}\n\n\t\t\t&.inactive {\n\t\t\t\tanimation: forwards floatingMenuContainerOut 0.3s ease !important;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@keyframes floatingMenuContainerOut {\n\t0% {\n\t\tdisplay: flex;\n\t\ttransform: translateY(0) translateX(-50%);\n\t\topacity: 100;\n\t}\n\t99% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: flex;\n\t}\n\t100% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: none;\n\t}\n}\n\n@keyframes floatingMenuContainerIn {\n\t0% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: none;\n\t}\n\t1% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: flex;\n\t}\n\t100% {\n\t\ttransform: translateY(0) translateX(-50%);\n\t\topacity: 100;\n\t\tdisplay: flex;\n\t}\n}\n","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 } from '../../../components';\nimport { QuickFilter, RowClickEvent } from '../../../types/table';\nimport {\n\tformatTranslation,\n\tgetLocaleComponentStrings,\n\tisMobile,\n} from '../../../utils';\nimport { TableColumn } from '../../helpers/table-column/table-column.component';\nimport {\n\tdefaultSize,\n\tdefaultSizeOptions,\n} from '../../molecules/page-size-select/constants';\nimport { buttonTemplateFunc } from '../../molecules/table-header/table-header.component';\nimport { TableRowAction } from '../../helpers/table-row-action/table-row-action.component';\n\nexport type templateFunc = () => string;\nexport type amountSelectedTemplateFunc = (amount: number) => string;\n\n@Component({\n\ttag: 'p-table',\n\tstyleUrl: 'table.component.scss',\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 * 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 page size select\n\t */\n\t@Prop() enablePageSize: boolean = true;\n\n\t/**\n\t * Wether to enable pagination\n\t */\n\t@Prop() enablePagination: 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\t@State() private _rowActionsFloating: TableRowAction[] = [];\n\t@State() private _rowActionsRow: TableRowAction[] = [];\n\n\tprivate _ctrlDown = false;\n\tprivate _hasCustomFilterSlot = false;\n\tprivate _floatingMenuShown = false;\n\tprivate _resizeTimeout: NodeJS.Timer;\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._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=\"p-table\">\n\t\t\t\t<p-table-container shadow={this.shadow}>\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\t// quick filters\n\t\t\t\t\t\t\tquickFilters={this.quickFilters}\n\t\t\t\t\t\t\tactiveQuickFilterIdentifier={\n\t\t\t\t\t\t\t\tthis.activeQuickFilterIdentifier\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonQuickFilter={({ detail }) =>\n\t\t\t\t\t\t\t\tthis.quickFilter.emit(detail)\n\t\t\t\t\t\t\t}\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 }) =>\n\t\t\t\t\t\t\t\tthis.queryChange.emit(detail)\n\t\t\t\t\t\t\t}\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\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//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\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-col flex-1\">{this._getRows()}</div>\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\tenablePageSize={this.enablePageSize}\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\tenablePagination={this.enablePagination}\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 }) =>\n\t\t\t\t\t\t\t\tthis.pageChange.emit(detail)\n\t\t\t\t\t\t\t}\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.footerLoading}\n\t\t\t\t\t\t></p-table-footer>\n\t\t\t\t\t)}\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={`${\n\t\t\t\t\t\t\t\tthis.selectedRows?.length ? '' : 'inactive'\n\t\t\t\t\t\t\t} ${this._floatingMenuShown ? 'shown' : ''}`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-floating-menu-item\n\t\t\t\t\t\t\t\thover={false}\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\tclass={\n\t\t\t\t\t\t\t\t\tthis._rowActionsFloating?.length\n\t\t\t\t\t\t\t\t\t\t? 'hidden tablet:flex'\n\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.floatingMenuAmountSelectedTemplate(\n\t\t\t\t\t\t\t\t\tthis.selectedRows?.length\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</p-floating-menu-item>\n\t\t\t\t\t\t\t<p-divider\n\t\t\t\t\t\t\t\tclass={`mx-0 text-storm ${\n\t\t\t\t\t\t\t\t\tthis._rowActionsFloating?.length\n\t\t\t\t\t\t\t\t\t\t? 'hidden tablet:flex'\n\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\tvariant=\"vertical\"\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\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\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(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.selectedRows[0],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t: a.action(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.selectedRows,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\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\t{a.loading ? (\n\t\t\t\t\t\t\t\t\t\t\t<p-loader></p-loader>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\t\t\tvariant={a.icon}\n\t\t\t\t\t\t\t\t\t\t\t\trotate={a.iconRotate}\n\t\t\t\t\t\t\t\t\t\t\t\tflip={a.iconFlip}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)}\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\t{this._rowActionsFloating?.length && (\n\t\t\t\t\t\t\t\t<p-divider\n\t\t\t\t\t\t\t\t\tclass=\"mx-0 text-storm\"\n\t\t\t\t\t\t\t\t\tvariant=\"vertical\"\n\t\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<p-floating-menu-item\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\tthis._selectAllChange(null, false)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<p-icon variant=\"negative\" />\n\t\t\t\t\t\t\t</p-floating-menu-item>\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\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\t(a) => a.type === 'both' || a.type === 'single'\n\t\t\t);\n\t\t\tthis._rowActionsFloating = actions\n\t\t\t\t.filter(\n\t\t\t\t\t(a) => a.type === 'both' || a.type === 'multi' || mobile\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._rowActionsFloating?.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._rowActionsFloating?.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\t\t}, 200);\n\t}\n\n\tprivate _generateColumns() {\n\t\tconst definitions = this._el.querySelectorAll('p-table-column');\n\t\tconst definitionsArray = Array.from(definitions);\n\n\t\tdefinitionsArray[definitionsArray.length - 1]['isLast'] = true;\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(\n\t\t\t\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\t\t\t\tthis.loading ? 'loading' : 'header'\n\t\t\t\t\t\t\t\t\t)\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={\n\t\t\t\t\t\t\tthis._enableRowSelection || this.enableRowClick\n\t\t\t\t\t\t}\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\tonClick={(ev) => this._rowClick(ev, index)}\n\t\t\t>\n\t\t\t\t{this._getRowColumns(item, index)}\n\t\t\t</p-table-row>\n\t\t));\n\t}\n\n\tprivate _getRowColumns(item, index) {\n\t\tconst columns = 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\n\t\t\t\t\t\t\t? this._getCheckbox(index)\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\ttableHasActions={\n\t\t\t\t\t\t!!this._rowActionsRow.length && !isMobile()\n\t\t\t\t\t}\n\t\t\t\t></p-table-cell>\n\t\t\t);\n\t\t});\n\n\t\tif (this._rowActionsRow?.length && !isMobile()) {\n\t\t\tconst lastDef = this._columns[this._columns.length - 1];\n\t\t\tconst actions = this._rowActionsRow.filter((a) =>\n\t\t\t\ta.showFunction ? a.showFunction(item) : true\n\t\t\t);\n\n\t\t\tif (!actions.length) {\n\t\t\t\treturn columns;\n\t\t\t}\n\n\t\t\tcolumns.push(\n\t\t\t\t<p-table-cell\n\t\t\t\t\tvariant=\"actions\"\n\t\t\t\t\tdefinition={lastDef}\n\t\t\t\t\titem={item}\n\t\t\t\t\tindex={this._columns.length - 1}\n\t\t\t\t\trowIndex={index}\n\t\t\t\t\ttableHasActions={!!this._rowActionsRow.length}\n\t\t\t\t>\n\t\t\t\t\t<div slot=\"actions\" class=\"flex ml-auto gap-2 items-center\">\n\t\t\t\t\t\t{actions.map((a) => (\n\t\t\t\t\t\t\t<p-tooltip content={a.label}>\n\t\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\t\tdata-is-action\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tslot=\"trigger\"\n\t\t\t\t\t\t\t\t\ticon={a.icon}\n\t\t\t\t\t\t\t\t\ticonRotate={a.iconRotate}\n\t\t\t\t\t\t\t\t\ticonFlip={a.iconFlip}\n\t\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\ttypeof a.action === 'function' &&\n\t\t\t\t\t\t\t\t\t\ta.action?.(item, false)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t></p-button>\n\t\t\t\t\t\t\t</p-tooltip>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t</p-table-cell>\n\t\t\t);\n\t\t}\n\n\t\treturn columns;\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 <p-loader variant=\"ghost\" class=\"h-6 w-6 rounded\" />;\n\t\t}\n\n\t\tif (variant === 'header') {\n\t\t\treturn (\n\t\t\t\t<input\n\t\t\t\t\tclass={`p-input ${this._rowSelectionLimit !== undefined && 'opacity-0'}`}\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tonChange={(ev) => this._selectAllChange(ev)}\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/>\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<input\n\t\t\t\tclass=\"p-input\"\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tonChange={(ev) => this._checkboxChange(ev?.target, rowIndex)}\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/>\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<div class=\"flex max-w-[20rem] flex-col items-center self-center py-24 text-center\">\n\t\t\t\t\t<p-illustration variant=\"empty-state-search\" class=\"mb-6\" />\n\t\t\t\t\t<p class=\"text-storm-default font-semibold\">\n\t\t\t\t\t\t{this.emptyStateFilteredHeader()}\n\t\t\t\t\t</p>\n\t\t\t\t\t<p class=\"mb-14 text-sm text-storm-medium\">\n\t\t\t\t\t\t{this.emptyStateFilteredContent()}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={`flex max-w-[20rem] flex-col items-center self-center py-24 text-center ${\n\t\t\t\t\tthis.enableEmptyStateAction && 'cursor-pointer'\n\t\t\t\t}`}\n\t\t\t\tonClick={() =>\n\t\t\t\t\tthis.enableEmptyStateAction &&\n\t\t\t\t\tthis.emptyStateActionClick.emit(null)\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<p-illustration variant=\"empty-state-add\" class=\"mb-6\" />\n\t\t\t\t<p class=\"text-storm-default font-semibold\">\n\t\t\t\t\t{this.emptyStateHeader()}\n\t\t\t\t</p>\n\t\t\t\t<p class=\"mb-6 text-sm text-storm-medium\">\n\t\t\t\t\t{this.emptyStateContent()}\n\t\t\t\t</p>\n\t\t\t\t{this.enableEmptyStateAction && (\n\t\t\t\t\t<p-button variant=\"secondary\" icon=\"plus\" size=\"small\">\n\t\t\t\t\t\t{this.emptyStateAction()}\n\t\t\t\t\t</p-button>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _selectAllChange($event: any, forceValue?: boolean) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value =\n\t\t\tforceValue === undefined\n\t\t\t\t? this._getCheckedValue($event.target)\n\t\t\t\t: 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 ===\n\t\t\t\t\t\tthis._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._floatingMenuShown = true;\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\t(d) =>\n\t\t\t\t\tthis._getSelectionValue(d, i) ===\n\t\t\t\t\tthis._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(target: any, index: number) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = this._getCheckedValue(target);\n\t\tif (\n\t\t\tvalue &&\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 (value) {\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._floatingMenuShown = true;\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 _getCheckedValue(target: any) {\n\t\treturn target?.checked;\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\t(item) => 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"],"version":3}
|
|
1
|
+
{"file":"p-table.js","mappings":"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","names":[],"sources":["src/components/organisms/table/table.component.scss?tag=p-table","src/components/organisms/table/table.component.tsx"],"sourcesContent":["p-table {\n\t@apply relative flex flex-col;\n\n\t.p-input[type='checkbox'] {\n\t\tflex-shrink: 0;\n\t}\n\n\tp-table-container {\n\t\t@apply relative;\n\n\t\tp-floating-menu-container {\n\t\t\t@apply fixed bottom-4 left-1/2 -translate-x-1/2 transform;\n\t\t\tanimation: forwards floatingMenuContainerIn 0.3s ease !important;\n\n\t\t\t@screen tablet {\n\t\t\t\t@apply absolute bottom-16;\n\t\t\t}\n\n\t\t\t&:not(.shown) {\n\t\t\t\t@apply hidden;\n\t\t\t}\n\n\t\t\t&.inactive {\n\t\t\t\tanimation: forwards floatingMenuContainerOut 0.3s ease !important;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@keyframes floatingMenuContainerOut {\n\t0% {\n\t\tdisplay: flex;\n\t\ttransform: translateY(0) translateX(-50%);\n\t\topacity: 100;\n\t}\n\t99% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: flex;\n\t}\n\t100% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: none;\n\t}\n}\n\n@keyframes floatingMenuContainerIn {\n\t0% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: none;\n\t}\n\t1% {\n\t\ttransform: translateY(100%) translateX(-50%);\n\t\topacity: 0;\n\t\tdisplay: flex;\n\t}\n\t100% {\n\t\ttransform: translateY(0) translateX(-50%);\n\t\topacity: 100;\n\t\tdisplay: flex;\n\t}\n}\n","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 } from '../../../components';\nimport { QuickFilter, RowClickEvent } from '../../../types/table';\nimport {\n\tformatTranslation,\n\tgetLocaleComponentStrings,\n\tisMobile,\n} from '../../../utils';\nimport { TableColumn } from '../../helpers/table-column/table-column.component';\nimport {\n\tdefaultSize,\n\tdefaultSizeOptions,\n} from '../../molecules/page-size-select/constants';\nimport { buttonTemplateFunc } from '../../molecules/table-header/table-header.component';\nimport { TableRowAction } from '../../helpers/table-row-action/table-row-action.component';\n\nexport type templateFunc = () => string;\nexport type amountSelectedTemplateFunc = (amount: number) => string;\n\n@Component({\n\ttag: 'p-table',\n\tstyleUrl: 'table.component.scss',\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 * 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 page size select\n\t */\n\t@Prop() enablePageSize: boolean = true;\n\n\t/**\n\t * Wether to enable pagination\n\t */\n\t@Prop() enablePagination: 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\tprivate _ctrlDown = false;\n\tprivate _hasCustomFilterSlot = false;\n\tprivate _floatingMenuShown = false;\n\tprivate _resizeTimeout: NodeJS.Timer;\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._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=\"p-table\">\n\t\t\t\t<p-table-container shadow={this.shadow}>\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\t// quick filters\n\t\t\t\t\t\t\tquickFilters={this.quickFilters}\n\t\t\t\t\t\t\tactiveQuickFilterIdentifier={\n\t\t\t\t\t\t\t\tthis.activeQuickFilterIdentifier\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonQuickFilter={({ detail }) =>\n\t\t\t\t\t\t\t\tthis.quickFilter.emit(detail)\n\t\t\t\t\t\t\t}\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 }) =>\n\t\t\t\t\t\t\t\tthis.queryChange.emit(detail)\n\t\t\t\t\t\t\t}\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\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//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\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-col flex-1\">{this._getRows()}</div>\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\tenablePageSize={this.enablePageSize}\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\tenablePagination={this.enablePagination}\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 }) =>\n\t\t\t\t\t\t\t\tthis.pageChange.emit(detail)\n\t\t\t\t\t\t\t}\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.footerLoading}\n\t\t\t\t\t\t></p-table-footer>\n\t\t\t\t\t)}\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={`${\n\t\t\t\t\t\t\t\tthis.selectedRows?.length ? '' : 'inactive'\n\t\t\t\t\t\t\t} ${this._floatingMenuShown ? 'shown' : ''}`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-floating-menu-item\n\t\t\t\t\t\t\t\thover={false}\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\tclass={\n\t\t\t\t\t\t\t\t\tthis._rowActionsFloating?.length\n\t\t\t\t\t\t\t\t\t\t? 'hidden tablet:flex'\n\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{this.floatingMenuAmountSelectedTemplate(\n\t\t\t\t\t\t\t\t\tthis.selectedRows?.length\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</p-floating-menu-item>\n\t\t\t\t\t\t\t<p-divider\n\t\t\t\t\t\t\t\tclass={`mx-0 text-storm ${\n\t\t\t\t\t\t\t\t\tthis._rowActionsFloating?.length\n\t\t\t\t\t\t\t\t\t\t? 'hidden tablet:flex'\n\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\tvariant=\"vertical\"\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\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\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(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.selectedRows[0],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t: a.action(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.selectedRows,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\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\t{a.loading ? (\n\t\t\t\t\t\t\t\t\t\t\t<p-loader></p-loader>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\t\t\t\t\tvariant={a.icon}\n\t\t\t\t\t\t\t\t\t\t\t\trotate={a.iconRotate}\n\t\t\t\t\t\t\t\t\t\t\t\tflip={a.iconFlip}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)}\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\t{this._rowActionsFloating?.length && (\n\t\t\t\t\t\t\t\t<p-divider\n\t\t\t\t\t\t\t\t\tclass=\"mx-0 text-storm\"\n\t\t\t\t\t\t\t\t\tvariant=\"vertical\"\n\t\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<p-floating-menu-item\n\t\t\t\t\t\t\t\tslot=\"floating-menu-item\"\n\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\tthis._selectAllChange(null, false)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<p-icon variant=\"negative\" />\n\t\t\t\t\t\t\t</p-floating-menu-item>\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\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\t(a) => 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\t(a) => a.type === 'both' || a.type === 'multi' || mobile\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\t\t}, 200);\n\t}\n\n\tprivate _generateColumns() {\n\t\tconst definitions = this._el.querySelectorAll('p-table-column');\n\t\tconst definitionsArray = Array.from(definitions);\n\n\t\tdefinitionsArray[definitionsArray.length - 1]['isLast'] = true;\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(\n\t\t\t\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\t\t\t\tthis.loading ? 'loading' : 'header'\n\t\t\t\t\t\t\t\t\t)\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={\n\t\t\t\t\t\t\tthis._enableRowSelection || this.enableRowClick\n\t\t\t\t\t\t}\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\tonClick={(ev) => this._rowClick(ev, index)}\n\t\t\t>\n\t\t\t\t{this._getRowColumns(item, index)}\n\t\t\t</p-table-row>\n\t\t));\n\t}\n\n\tprivate _getRowColumns(item, index) {\n\t\tconst columns = 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\n\t\t\t\t\t\t\t? this._getCheckbox(index)\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\ttableHasActions={\n\t\t\t\t\t\t!!this._rowActionsRow.length && !isMobile()\n\t\t\t\t\t}\n\t\t\t\t></p-table-cell>\n\t\t\t);\n\t\t});\n\n\t\tif (this._rowActionsRow?.length && !isMobile()) {\n\t\t\tconst lastDef = this._columns[this._columns.length - 1];\n\t\t\tconst actions = this._rowActionsRow.filter((a) =>\n\t\t\t\ta.showFunction ? a.showFunction(item) : true\n\t\t\t);\n\n\t\t\tif (!actions.length) {\n\t\t\t\treturn columns;\n\t\t\t}\n\n\t\t\tcolumns.push(\n\t\t\t\t<p-table-cell\n\t\t\t\t\tvariant=\"actions\"\n\t\t\t\t\tdefinition={lastDef}\n\t\t\t\t\titem={item}\n\t\t\t\t\tindex={this._columns.length - 1}\n\t\t\t\t\trowIndex={index}\n\t\t\t\t\ttableHasActions={!!this._rowActionsRow.length}\n\t\t\t\t>\n\t\t\t\t\t<div slot=\"actions\" class=\"flex ml-auto gap-2 items-center\">\n\t\t\t\t\t\t{actions.map((a) => (\n\t\t\t\t\t\t\t<p-tooltip content={a.label}>\n\t\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\t\tdata-is-action\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tslot=\"trigger\"\n\t\t\t\t\t\t\t\t\ticon={a.icon}\n\t\t\t\t\t\t\t\t\ticonRotate={a.iconRotate}\n\t\t\t\t\t\t\t\t\ticonFlip={a.iconFlip}\n\t\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\ttypeof a.action === 'function' &&\n\t\t\t\t\t\t\t\t\t\ta.action?.(item, false)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t></p-button>\n\t\t\t\t\t\t\t</p-tooltip>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t</p-table-cell>\n\t\t\t);\n\t\t}\n\n\t\treturn columns;\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 <p-loader variant=\"ghost\" class=\"h-6 w-6 rounded\" />;\n\t\t}\n\n\t\tif (variant === 'header') {\n\t\t\treturn (\n\t\t\t\t<input\n\t\t\t\t\tclass={`p-input ${this._rowSelectionLimit !== undefined && 'opacity-0'}`}\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tonChange={(ev) => this._selectAllChange(ev)}\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/>\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<input\n\t\t\t\tclass=\"p-input\"\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tonChange={(ev) => this._checkboxChange(ev?.target, rowIndex)}\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/>\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<div class=\"flex max-w-[20rem] flex-col items-center self-center py-24 text-center\">\n\t\t\t\t\t<p-illustration variant=\"empty-state-search\" class=\"mb-6\" />\n\t\t\t\t\t<p class=\"text-storm-default font-semibold\">\n\t\t\t\t\t\t{this.emptyStateFilteredHeader()}\n\t\t\t\t\t</p>\n\t\t\t\t\t<p class=\"mb-14 text-sm text-storm-medium\">\n\t\t\t\t\t\t{this.emptyStateFilteredContent()}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={`flex max-w-[20rem] flex-col items-center self-center py-24 text-center ${\n\t\t\t\t\tthis.enableEmptyStateAction && 'cursor-pointer'\n\t\t\t\t}`}\n\t\t\t\tonClick={() =>\n\t\t\t\t\tthis.enableEmptyStateAction &&\n\t\t\t\t\tthis.emptyStateActionClick.emit(null)\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<p-illustration variant=\"empty-state-add\" class=\"mb-6\" />\n\t\t\t\t<p class=\"text-storm-default font-semibold\">\n\t\t\t\t\t{this.emptyStateHeader()}\n\t\t\t\t</p>\n\t\t\t\t<p class=\"mb-6 text-sm text-storm-medium\">\n\t\t\t\t\t{this.emptyStateContent()}\n\t\t\t\t</p>\n\t\t\t\t{this.enableEmptyStateAction && (\n\t\t\t\t\t<p-button variant=\"secondary\" icon=\"plus\" size=\"small\">\n\t\t\t\t\t\t{this.emptyStateAction()}\n\t\t\t\t\t</p-button>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _selectAllChange($event: any, forceValue?: boolean) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value =\n\t\t\tforceValue === undefined\n\t\t\t\t? this._getCheckedValue($event.target)\n\t\t\t\t: 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 ===\n\t\t\t\t\t\tthis._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\t(d) =>\n\t\t\t\t\tthis._getSelectionValue(d, i) ===\n\t\t\t\t\tthis._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(target: any, index: number) {\n\t\tif (!this._enableRowSelection) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = this._getCheckedValue(target);\n\t\tif (\n\t\t\tvalue &&\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 (value) {\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 _getCheckedValue(target: any) {\n\t\treturn target?.checked;\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\t(item) => 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\t(a) =>\n\t\t\t\t\t(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\t(a) =>\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"],"version":3}
|
package/dist/esm/loader.js
CHANGED
|
@@ -3,7 +3,7 @@ export { s as setNonce } from './index-7b917f6b.js';
|
|
|
3
3
|
|
|
4
4
|
const defineCustomElements = (win, options) => {
|
|
5
5
|
if (typeof window === 'undefined') return undefined;
|
|
6
|
-
return bootstrapLazy(JSON.parse("[[\"p-button_3\",[[4,\"p-button\",{\"variant\":[1],\"underline\":[4],\"href\":[1],\"target\":[1],\"size\":[1],\"type\":[1],\"loading\":[4],\"chevron\":[8],\"chevronPosition\":[1,\"chevron-position\"],\"disabled\":[4],\"icon\":[1],\"iconOnly\":[4,\"icon-only\"],\"iconPosition\":[1,\"icon-position\"],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"inheritText\":[4,\"inherit-text\"]},[[2,\"click\",\"handleClick\"]]],[1,\"p-loader\",{\"show\":[4],\"variant\":[1],\"color\":[1],\"modalTitle\":[1,\"modal-title\"],\"modalDescription\":[1,\"modal-description\"]}],[0,\"p-icon\",{\"variant\":[1],\"size\":[1],\"rotate\":[2],\"flip\":[1]}]]],[\"p-table\",[[4,\"p-table\",{\"items\":[1],\"loading\":[4],\"headerLoading\":[4,\"header-loading\"],\"footerLoading\":[4,\"footer-loading\"],\"amountOfLoadingRows\":[2,\"amount-of-loading-rows\"],\"enableRowSelection\":[4,\"enable-row-selection\"],\"rowSelectionLimit\":[2,\"row-selection-limit\"],\"enableRowClick\":[4,\"enable-row-click\"],\"selectedRows\":[16],\"enableFloatingMenu\":[4,\"enable-floating-menu\"],\"floatingMenuAmountSelectedTemplate\":[16],\"selectionKey\":[1,\"selection-key\"],\"canSelectKey\":[1,\"can-select-key\"],\"enableHeader\":[4,\"enable-header\"],\"quickFilters\":[16],\"activeQuickFilterIdentifier\":[1,\"active-quick-filter-identifier\"],\"enableSearch\":[4,\"enable-search\"],\"query\":[1025],\"enableFilter\":[4,\"enable-filter\"],\"selectedFiltersAmount\":[2,\"selected-filters-amount\"],\"filterButtonTemplate\":[16],\"enableAction\":[4,\"enable-action\"],\"actionButtonLoading\":[4,\"action-button-loading\"],\"actionButtonEnabled\":[4,\"action-button-enabled\"],\"actionButtonIcon\":[1,\"action-button-icon\"],\"actionButtonText\":[1,\"action-button-text\"],\"actionButtonTemplate\":[16],\"enableFooter\":[4,\"enable-footer\"],\"enablePageSize\":[4,\"enable-page-size\"],\"enablePagination\":[4,\"enable-pagination\"],\"enableExport\":[4,\"enable-export\"],\"page\":[1538],\"total\":[2],\"pageSize\":[2,\"page-size\"],\"pageSizeOptions\":[16],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"emptyStateHeader\":[16],\"emptyStateContent\":[16],\"emptyStateAction\":[16],\"enableEmptyStateAction\":[4,\"enable-empty-state-action\"],\"emptyStateFilteredHeader\":[16],\"emptyStateFilteredContent\":[16],\"shadow\":[4],\"_locales\":[32],\"_columns\":[32],\"_items\":[32],\"_enableRowSelection\":[32],\"_rowSelectionLimit\":[32],\"_rowActionsFloating\":[32],\"_rowActionsRow\":[32]},[[16,\"localeChanged\",\"_setLocales\"],[16,\"tableDefinitionChanged\",\"onTableDefinitionUpdated\"],[4,\"keydown\",\"keyDown\"],[4,\"keyup\",\"keyUp\"],[4,\"visibilitychange\",\"visibilityChange\"],[9,\"resize\",\"_setRowSelectionData\"]],{\"items\":[\"_parseItems\"],\"enableRowSelection\":[\"_setRowSelectionData\"],\"rowSelectionLimit\":[\"_setRowSelectionData\"],\"selectedRows\":[\"_setRowSelectionData\"]}]]],[\"p-select\",[[0,\"p-select\",{\"items\":[1],\"multi\":[516],\"icon\":[1],\"query\":[1],\"placeholder\":[1],\"autocompletePlaceholder\":[1,\"autocomplete-placeholder\"],\"value\":[8],\"displayKey\":[1,\"display-key\"],\"dropdownDisplayKey\":[1,\"dropdown-display-key\"],\"selectionDisplayKey\":[1,\"selection-display-key\"],\"valueKey\":[1,\"value-key\"],\"avatarKey\":[1,\"avatar-key\"],\"avatarLettersKey\":[1,\"avatar-letters-key\"],\"identifierKey\":[1,\"identifier-key\"],\"queryKey\":[1,\"query-key\"],\"autoSelectFirst\":[4,\"auto-select-first\"],\"showChevron\":[4,\"show-chevron\"],\"maxDisplayedItems\":[2,\"max-displayed-items\"],\"enableAutocomplete\":[4,\"enable-autocomplete\"],\"asyncFilter\":[4,\"async-filter\"],\"loading\":[4],\"enableSelectAll\":[4,\"enable-select-all\"],\"selectAllText\":[1,\"select-all-text\"],\"selectAllIcon\":[1,\"select-all-icon\"],\"size\":[1],\"prefix\":[1],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"showAddItem\":[4,\"show-add-item\"],\"addItemText\":[1,\"add-item-text\"],\"emptyStateText\":[1,\"empty-state-text\"],\"_showDropdown\":[32],\"_selectedItem\":[32],\"_allSelected\":[32],\"_amountHidden\":[32]},[[6,\"click\",\"documentClickHandler\"]],{\"value\":[\"_valueChange\"],\"items\":[\"itemChanges\"],\"_showDropdown\":[\"_showDropdownChanges\"],\"multi\":[\"multiChanges\"]}]]],[\"p-modal\",[[1,\"p-modal\",{\"size\":[1],\"variant\":[1],\"header\":[1],\"show\":[4],\"applyBlur\":[4,\"apply-blur\"],\"showClose\":[4,\"show-close\"],\"showMobileFooter\":[4,\"show-mobile-footer\"],\"backdropClickClose\":[4,\"backdrop-click-close\"],\"scrollLock\":[4,\"scroll-lock\"],\"padding\":[4],\"_closing\":[32]},[[8,\"closeModal\",\"handleCloseModal\"]]]]],[\"p-datepicker\",[[0,\"p-datepicker\",{\"placeholder\":[1],\"value\":[1],\"preselectToday\":[4,\"preselect-today\"],\"disabledDates\":[1,\"disabled-dates\"],\"minDate\":[1,\"min-date\"],\"maxDate\":[1,\"max-date\"],\"disableWeekends\":[4,\"disable-weekends\"],\"mode\":[1],\"format\":[1],\"size\":[1],\"prefix\":[1],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"_showDropdown\":[32],\"_value\":[32],\"_minDate\":[32],\"_maxDate\":[32],\"_disabledDates\":[32]},[[6,\"click\",\"documentClickHandler\"]],{\"value\":[\"parseValue\"],\"minDate\":[\"parseMinDate\"],\"maxDate\":[\"parseMaxDate\"],\"disabledDates\":[\"parseDisabledDates\"]}]]],[\"p-drawer\",[[1,\"p-drawer\",{\"header\":[1],\"show\":[4],\"applyBlur\":[4,\"apply-blur\"],\"showClose\":[4,\"show-close\"],\"backdropClickClose\":[4,\"backdrop-click-close\"],\"canClose\":[4,\"can-close\"],\"scrollLock\":[4,\"scroll-lock\"],\"_closing\":[32]},[[8,\"closeDrawer\",\"handleCloseDrawer\"],[8,\"forceCloseDrawer\",\"handleForceCloseDrawer\"]]]]],[\"p-attachment\",[[1,\"p-attachment\",{\"mode\":[1],\"loading\":[4],\"error\":[1],\"downloading\":[4]}]]],[\"p-navbar\",[[1,\"p-navbar\",{\"closeText\":[1,\"close-text\"],\"menuText\":[1,\"menu-text\"],\"_showMenu\":[32]},[[8,\"closeNavbar\",\"handleCloseNavbar\"],[8,\"openNavbar\",\"handleOpenNavbar\"]]]]],[\"p-profile\",[[1,\"p-profile\",{\"variant\":[1],\"size\":[513],\"_dropdownOpen\":[32]}]]],[\"p-toast\",[[1,\"p-toast\",{\"variant\":[1],\"header\":[1],\"content\":[1],\"enableAction\":[4,\"enable-action\"],\"actionIcon\":[1,\"action-icon\"],\"actionIconFlip\":[1,\"action-icon-flip\"],\"actionIconRotate\":[2,\"action-icon-rotate\"]}]]],[\"p-divider\",[[1,\"p-divider\",{\"variant\":[513]}]]],[\"p-accordion\",[[1,\"p-accordion\",{\"header\":[1],\"open\":[4],\"closeable\":[4],\"openable\":[4]}]]],[\"p-navigation-item\",[[1,\"p-navigation-item\",{\"active\":[4],\"icon\":[1],\"counter\":[8],\"href\":[1],\"target\":[1]}]]],[\"p-card-header\",[[4,\"p-card-header\",{\"header\":[1],\"arrow\":[4]}]]],[\"p-content-slider\",[[1,\"p-content-slider\",{\"hideMobileIndicator\":[4,\"hide-mobile-indicator\"],\"disableDrag\":[4,\"disable-drag\"],\"disableAutoCenter\":[4,\"disable-auto-center\"],\"disableIndicatorClick\":[4,\"disable-indicator-click\"],\"_visibleIndex\":[32],\"_outerHeight\":[32],\"_totalWidth\":[32],\"_dragging\":[32]},[[9,\"mouseup\",\"mouseUpHandler\"],[9,\"touchend\",\"mouseUpHandler\"],[9,\"resize\",\"resizeHandler\"]]]]],[\"p-cropper\",[[1,\"p-cropper\",{\"variant\":[513],\"value\":[8],\"returnType\":[1,\"return-type\"],\"_loaded\":[32],\"_currentScale\":[32]},[[9,\"resize\",\"onResize\"]]]]],[\"p-info-panel\",[[1,\"p-info-panel\",{\"variant\":[1],\"header\":[1],\"content\":[1],\"closeable\":[4]}]]],[\"p-status\",[[4,\"p-status\",{\"variant\":[1],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"]}]]],[\"p-stepper-line\",[[1,\"p-stepper-line\",{\"active\":[516],\"direction\":[513]}]]],[\"p-stepper\",[[1,\"p-stepper\",{\"activeStep\":[2,\"active-step\"],\"direction\":[513],\"contentPosition\":[513,\"content-position\"],\"_rendering\":[32]},null,{\"activeStep\":[\"_onActiveStepChange\"]}]]],[\"p-stepper-item\",[[1,\"p-stepper-item\",{\"align\":[513],\"direction\":[513],\"contentPosition\":[513,\"content-position\"],\"finished\":[516],\"active\":[516]}]]],[\"p-tab-group\",[[1,\"p-tab-group\"]]],[\"p-avatar-group\",[[4,\"p-avatar-group\",{\"extra\":[2]}]]],[\"p-card-body\",[[4,\"p-card-body\",{\"inheritText\":[516,\"inherit-text\"]}]]],[\"p-card-container\",[[1,\"p-card-container\",{\"hoverable\":[516],\"shadow\":[516]}]]],[\"p-layout\",[[1,\"p-layout\",{\"variant\":[1]}]]],[\"p-tab-item\",[[1,\"p-tab-item\",{\"active\":[4]}]]],[\"p-table-column\",[[0,\"p-table-column\",{\"path\":[1537],\"type\":[1537],\"name\":[1537],\"useSlot\":[1540,\"use-slot\"],\"hasCheckbox\":[1540,\"has-checkbox\"],\"align\":[1537],\"isLast\":[1540,\"is-last\"],\"sizes\":[1032]}]]],[\"p-table-row-action\",[[0,\"p-table-row-action\",{\"type\":[1537],\"icon\":[1],\"iconOnly\":[4,\"icon-only\"],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"label\":[1],\"action\":[16],\"disabled\":[4],\"loading\":[4],\"showFunction\":[16]}]]],[\"p-toast-container\",[[1,\"p-toast-container\",{\"placement\":[1]}]]],[\"p-calendar\",[[1,\"p-calendar\",{\"variant\":[1],\"value\":[1],\"preselectToday\":[4,\"preselect-today\"],\"disabledDates\":[1,\"disabled-dates\"],\"minDate\":[1,\"min-date\"],\"maxDate\":[1,\"max-date\"],\"disableWeekends\":[4,\"disable-weekends\"],\"mode\":[1],\"_view\":[32],\"_viewDate\":[32],\"_value\":[32],\"_minDate\":[32],\"_maxDate\":[32],\"_disabledDates\":[32]},null,{\"value\":[\"_parseValue\"],\"minDate\":[\"_parseMinDate\"],\"maxDate\":[\"_parseMaxDate\"],\"disabledDates\":[\"_parseDisabledDates\"]}]]],[\"p-avatar\",[[0,\"p-avatar\",{\"variant\":[513],\"size\":[513],\"defaultImage\":[1,\"default-image\"],\"src\":[1],\"letters\":[1],\"_src\":[32],\"_failed\":[32]},null,{\"src\":[\"onSrchChange\"]}]]],[\"p-counter\",[[1,\"p-counter\",{\"variant\":[1],\"size\":[1]}]]],[\"p-slider-indicator\",[[1,\"p-slider-indicator\",{\"active\":[4]}]]],[\"p-drawer-body_3\",[[1,\"p-drawer-header\",{\"showClose\":[4,\"show-close\"]}],[1,\"p-drawer-body\",{\"variant\":[1]}],[4,\"p-drawer-container\",{\"closing\":[4]}]]],[\"p-backdrop\",[[1,\"p-backdrop\",{\"variant\":[1],\"applyBlur\":[4,\"apply-blur\"],\"closing\":[4],\"scrollLock\":[4,\"scroll-lock\"]},[[2,\"click\",\"handleClick\"]]]]],[\"p-modal-body_4\",[[1,\"p-modal-header\",{\"showClose\":[4,\"show-close\"]}],[1,\"p-modal-footer\"],[1,\"p-modal-body\",{\"variant\":[1],\"rounded\":[4],\"padding\":[4]}],[4,\"p-modal-container\",{\"size\":[1],\"closing\":[4]}]]],[\"p-label_3\",[[1,\"p-label\",{\"variant\":[513],\"behavior\":[513],\"iconPosition\":[1,\"icon-position\"],\"icon\":[513],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"size\":[513],\"keepMobileContent\":[516,\"keep-mobile-content\"]}],[1,\"p-segment-item\",{\"active\":[4],\"iconOnly\":[4,\"icon-only\"],\"size\":[513],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"]}],[4,\"p-segment-container\"]]],[\"p-dropdown-menu-container\",[[4,\"p-dropdown-menu-container\",{\"maxWidth\":[4,\"max-width\"],\"fullWidth\":[4,\"full-width\"],\"scrollable\":[8]}]]],[\"p-dropdown_2\",[[1,\"p-dropdown-menu-item\",{\"active\":[4],\"variant\":[1],\"enableHover\":[4,\"enable-hover\"],\"icon\":[1]}],[1,\"p-dropdown\",{\"placement\":[513],\"offset\":[2],\"strategy\":[1],\"show\":[4],\"calculateWidth\":[4,\"calculate-width\"],\"applyMaxWidth\":[4,\"apply-max-width\"],\"applyFullWidth\":[4,\"apply-full-width\"],\"scrollable\":[8],\"insideClick\":[4,\"inside-click\"],\"disableTriggerClick\":[4,\"disable-trigger-click\"],\"applyChevron\":[4,\"apply-chevron\"],\"chevronPosition\":[1,\"chevron-position\"],\"chevronDirection\":[1,\"chevron-direction\"]},[[6,\"click\",\"documentClickHandler\"]],{\"show\":[\"onShowChange\"]}]]],[\"p-page-size-select_3\",[[1,\"p-page-size-select\",{\"size\":[1538],\"sizeOptions\":[16],\"chevronPosition\":[1,\"chevron-position\"],\"buttonSize\":[1,\"button-size\"],\"buttonTemplate\":[16],\"itemTemplate\":[16],\"hidden\":[4],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[0,\"p-pagination\",{\"page\":[1538],\"pageSize\":[2,\"page-size\"],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"total\":[2]},null,{\"page\":[\"pageChangeHandler\"],\"pageSize\":[\"pageChangeHandler\"],\"total\":[\"pageChangeHandler\"]}],[1,\"p-pagination-item\",{\"active\":[4]}]]],[\"p-tooltip\",[[1,\"p-tooltip\",{\"variant\":[1],\"content\":[8],\"placement\":[1],\"offset\":[2],\"strategy\":[1],\"enableUserInput\":[4,\"enable-user-input\"],\"show\":[4],\"canManuallyClose\":[4,\"can-manually-close\"]},[[2,\"click\",\"clickHandler\"],[6,\"click\",\"documentClickHandler\"],[1,\"mouseenter\",\"mouseEnterHandler\"],[0,\"focus\",\"mouseEnterHandler\"],[1,\"mouseleave\",\"mouseLeaveHandler\"],[0,\"blur\",\"mouseLeaveHandler\"]],{\"show\":[\"onShowChange\"]}]]],[\"p-helper_3\",[[1,\"p-input-group\",{\"size\":[1],\"prefix\":[1],\"suffix\":[1],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"iconPosition\":[1,\"icon-position\"],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"focused\":[516],\"forceShowTooltip\":[516,\"force-show-tooltip\"],\"focusMethod\":[1,\"focus-method\"],\"errorVariant\":[1,\"error-variant\"],\"_forceShowTooltip\":[32]},[[0,\"focusin\",\"handleFocusIn\"],[0,\"focusout\",\"handleFocusOut\"]]],[1,\"p-helper\",{\"placement\":[1]}],[1,\"p-input-error\",{\"error\":[1],\"forceShowTooltip\":[4,\"force-show-tooltip\"],\"_showTooltip\":[32]}]]],[\"p-floating-menu-container_8\",[[1,\"p-table-header\",{\"quickFilters\":[16],\"activeQuickFilterIdentifier\":[1,\"active-quick-filter-identifier\"],\"loading\":[4],\"enableSearch\":[4,\"enable-search\"],\"itemsSelectedAmount\":[2,\"items-selected-amount\"],\"query\":[1025],\"enableFilter\":[4,\"enable-filter\"],\"selectedFiltersAmount\":[2,\"selected-filters-amount\"],\"filterButtonTemplate\":[16],\"enableAction\":[4,\"enable-action\"],\"actionLoading\":[4,\"action-loading\"],\"actionIcon\":[1,\"action-icon\"],\"actionText\":[1,\"action-text\"],\"canUseAction\":[1028,\"can-use-action\"],\"actionButtonTemplate\":[16],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[1,\"p-table-footer\",{\"enablePageSize\":[4,\"enable-page-size\"],\"enablePagination\":[4,\"enable-pagination\"],\"enableExport\":[4,\"enable-export\"],\"loading\":[4],\"page\":[1538],\"total\":[2],\"pageSize\":[2,\"page-size\"],\"pageSizeOptions\":[16],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[4,\"p-table-cell\",{\"variant\":[1],\"index\":[2],\"rowIndex\":[2,\"row-index\"],\"definition\":[16],\"item\":[8],\"value\":[8],\"tableHasActions\":[4,\"table-has-actions\"],\"checkbox\":[8],\"template\":[16]}],[1,\"p-table-row\",{\"variant\":[1],\"enableHover\":[4,\"enable-hover\"]}],[1,\"p-floating-menu-container\",{\"usedInTable\":[4,\"used-in-table\"]}],[1,\"p-floating-menu-item\",{\"hover\":[516],\"disabled\":[516]}],[0,\"p-illustration\",{\"variant\":[1]}],[1,\"p-table-container\",{\"shadow\":[4]}]]]]"), options);
|
|
6
|
+
return bootstrapLazy(JSON.parse("[[\"p-button_3\",[[4,\"p-button\",{\"variant\":[1],\"underline\":[4],\"href\":[1],\"target\":[1],\"size\":[1],\"type\":[1],\"loading\":[4],\"chevron\":[8],\"chevronPosition\":[1,\"chevron-position\"],\"disabled\":[4],\"icon\":[1],\"iconOnly\":[4,\"icon-only\"],\"iconPosition\":[1,\"icon-position\"],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"inheritText\":[4,\"inherit-text\"]},[[2,\"click\",\"handleClick\"]]],[1,\"p-loader\",{\"show\":[4],\"variant\":[1],\"color\":[1],\"modalTitle\":[1,\"modal-title\"],\"modalDescription\":[1,\"modal-description\"]}],[0,\"p-icon\",{\"variant\":[1],\"size\":[1],\"rotate\":[2],\"flip\":[1]}]]],[\"p-table\",[[4,\"p-table\",{\"items\":[1],\"loading\":[4],\"headerLoading\":[4,\"header-loading\"],\"footerLoading\":[4,\"footer-loading\"],\"amountOfLoadingRows\":[2,\"amount-of-loading-rows\"],\"enableRowSelection\":[4,\"enable-row-selection\"],\"rowSelectionLimit\":[2,\"row-selection-limit\"],\"enableRowClick\":[4,\"enable-row-click\"],\"selectedRows\":[16],\"enableFloatingMenu\":[4,\"enable-floating-menu\"],\"floatingMenuAmountSelectedTemplate\":[16],\"selectionKey\":[1,\"selection-key\"],\"canSelectKey\":[1,\"can-select-key\"],\"enableHeader\":[4,\"enable-header\"],\"quickFilters\":[16],\"activeQuickFilterIdentifier\":[1,\"active-quick-filter-identifier\"],\"enableSearch\":[4,\"enable-search\"],\"query\":[1025],\"enableFilter\":[4,\"enable-filter\"],\"selectedFiltersAmount\":[2,\"selected-filters-amount\"],\"filterButtonTemplate\":[16],\"enableAction\":[4,\"enable-action\"],\"actionButtonLoading\":[4,\"action-button-loading\"],\"actionButtonEnabled\":[4,\"action-button-enabled\"],\"actionButtonIcon\":[1,\"action-button-icon\"],\"actionButtonText\":[1,\"action-button-text\"],\"actionButtonTemplate\":[16],\"enableFooter\":[4,\"enable-footer\"],\"enablePageSize\":[4,\"enable-page-size\"],\"enablePagination\":[4,\"enable-pagination\"],\"enableExport\":[4,\"enable-export\"],\"page\":[1538],\"total\":[2],\"pageSize\":[2,\"page-size\"],\"pageSizeOptions\":[16],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"emptyStateHeader\":[16],\"emptyStateContent\":[16],\"emptyStateAction\":[16],\"enableEmptyStateAction\":[4,\"enable-empty-state-action\"],\"emptyStateFilteredHeader\":[16],\"emptyStateFilteredContent\":[16],\"shadow\":[4],\"_locales\":[32],\"_columns\":[32],\"_items\":[32],\"_enableRowSelection\":[32],\"_rowSelectionLimit\":[32],\"_rowActionsFloating\":[32],\"_rowActionsRow\":[32]},[[16,\"localeChanged\",\"_setLocales\"],[16,\"tableDefinitionChanged\",\"onTableDefinitionUpdated\"],[4,\"keydown\",\"keyDown\"],[4,\"keyup\",\"keyUp\"],[4,\"visibilitychange\",\"visibilityChange\"],[9,\"resize\",\"_setRowSelectionData\"]],{\"items\":[\"_parseItems\"],\"enableRowSelection\":[\"_setRowSelectionData\"],\"rowSelectionLimit\":[\"_setRowSelectionData\"],\"selectedRows\":[\"_setRowSelectionData\"]}]]],[\"p-select\",[[0,\"p-select\",{\"items\":[1],\"multi\":[516],\"icon\":[1],\"query\":[1],\"placeholder\":[1],\"autocompletePlaceholder\":[1,\"autocomplete-placeholder\"],\"value\":[8],\"displayKey\":[1,\"display-key\"],\"dropdownDisplayKey\":[1,\"dropdown-display-key\"],\"selectionDisplayKey\":[1,\"selection-display-key\"],\"valueKey\":[1,\"value-key\"],\"avatarKey\":[1,\"avatar-key\"],\"avatarLettersKey\":[1,\"avatar-letters-key\"],\"identifierKey\":[1,\"identifier-key\"],\"queryKey\":[1,\"query-key\"],\"autoSelectFirst\":[4,\"auto-select-first\"],\"showChevron\":[4,\"show-chevron\"],\"maxDisplayedItems\":[2,\"max-displayed-items\"],\"enableAutocomplete\":[4,\"enable-autocomplete\"],\"asyncFilter\":[4,\"async-filter\"],\"loading\":[4],\"enableSelectAll\":[4,\"enable-select-all\"],\"selectAllText\":[1,\"select-all-text\"],\"selectAllIcon\":[1,\"select-all-icon\"],\"size\":[1],\"prefix\":[1],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"showAddItem\":[4,\"show-add-item\"],\"addItemText\":[1,\"add-item-text\"],\"emptyStateText\":[1,\"empty-state-text\"],\"_showDropdown\":[32],\"_selectedItem\":[32],\"_allSelected\":[32],\"_amountHidden\":[32]},[[6,\"click\",\"documentClickHandler\"]],{\"value\":[\"_valueChange\"],\"items\":[\"itemChanges\"],\"_showDropdown\":[\"_showDropdownChanges\"],\"multi\":[\"multiChanges\"]}]]],[\"p-modal\",[[1,\"p-modal\",{\"size\":[1],\"variant\":[1],\"header\":[1],\"show\":[4],\"applyBlur\":[4,\"apply-blur\"],\"showClose\":[4,\"show-close\"],\"showMobileFooter\":[4,\"show-mobile-footer\"],\"backdropClickClose\":[4,\"backdrop-click-close\"],\"scrollLock\":[4,\"scroll-lock\"],\"padding\":[4],\"_closing\":[32]},[[8,\"closeModal\",\"handleCloseModal\"]]]]],[\"p-datepicker\",[[0,\"p-datepicker\",{\"placeholder\":[1],\"value\":[1],\"preselectToday\":[4,\"preselect-today\"],\"disabledDates\":[1,\"disabled-dates\"],\"minDate\":[1,\"min-date\"],\"maxDate\":[1,\"max-date\"],\"disableWeekends\":[4,\"disable-weekends\"],\"mode\":[1],\"format\":[1],\"size\":[1],\"prefix\":[1],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"_showDropdown\":[32],\"_value\":[32],\"_minDate\":[32],\"_maxDate\":[32],\"_disabledDates\":[32]},[[6,\"click\",\"documentClickHandler\"]],{\"value\":[\"parseValue\"],\"minDate\":[\"parseMinDate\"],\"maxDate\":[\"parseMaxDate\"],\"disabledDates\":[\"parseDisabledDates\"]}]]],[\"p-drawer\",[[1,\"p-drawer\",{\"header\":[1],\"show\":[4],\"applyBlur\":[4,\"apply-blur\"],\"showClose\":[4,\"show-close\"],\"backdropClickClose\":[4,\"backdrop-click-close\"],\"canClose\":[4,\"can-close\"],\"scrollLock\":[4,\"scroll-lock\"],\"_closing\":[32]},[[8,\"closeDrawer\",\"handleCloseDrawer\"],[8,\"forceCloseDrawer\",\"handleForceCloseDrawer\"]]]]],[\"p-attachment\",[[1,\"p-attachment\",{\"mode\":[1],\"loading\":[4],\"error\":[1],\"downloading\":[4]}]]],[\"p-navbar\",[[1,\"p-navbar\",{\"closeText\":[1,\"close-text\"],\"menuText\":[1,\"menu-text\"],\"_showMenu\":[32]},[[8,\"closeNavbar\",\"handleCloseNavbar\"],[8,\"openNavbar\",\"handleOpenNavbar\"]]]]],[\"p-profile\",[[1,\"p-profile\",{\"variant\":[1],\"size\":[513],\"_dropdownOpen\":[32]}]]],[\"p-toast\",[[1,\"p-toast\",{\"variant\":[1],\"header\":[1],\"content\":[1],\"enableAction\":[4,\"enable-action\"],\"actionIcon\":[1,\"action-icon\"],\"actionIconFlip\":[1,\"action-icon-flip\"],\"actionIconRotate\":[2,\"action-icon-rotate\"]}]]],[\"p-divider\",[[1,\"p-divider\",{\"variant\":[513]}]]],[\"p-accordion\",[[1,\"p-accordion\",{\"header\":[1],\"open\":[4],\"closeable\":[4],\"openable\":[4]}]]],[\"p-navigation-item\",[[1,\"p-navigation-item\",{\"active\":[4],\"icon\":[1],\"counter\":[8],\"href\":[1],\"target\":[1]}]]],[\"p-card-header\",[[4,\"p-card-header\",{\"header\":[1],\"arrow\":[4]}]]],[\"p-content-slider\",[[1,\"p-content-slider\",{\"hideMobileIndicator\":[4,\"hide-mobile-indicator\"],\"disableDrag\":[4,\"disable-drag\"],\"disableAutoCenter\":[4,\"disable-auto-center\"],\"disableIndicatorClick\":[4,\"disable-indicator-click\"],\"_visibleIndex\":[32],\"_outerHeight\":[32],\"_totalWidth\":[32],\"_dragging\":[32]},[[9,\"mouseup\",\"mouseUpHandler\"],[9,\"touchend\",\"mouseUpHandler\"],[9,\"resize\",\"resizeHandler\"]]]]],[\"p-cropper\",[[1,\"p-cropper\",{\"variant\":[513],\"value\":[8],\"returnType\":[1,\"return-type\"],\"_loaded\":[32],\"_currentScale\":[32]},[[9,\"resize\",\"onResize\"]]]]],[\"p-info-panel\",[[1,\"p-info-panel\",{\"variant\":[1],\"header\":[1],\"content\":[1],\"closeable\":[4]}]]],[\"p-status\",[[4,\"p-status\",{\"variant\":[1],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"]}]]],[\"p-stepper-line\",[[1,\"p-stepper-line\",{\"active\":[516],\"direction\":[513]}]]],[\"p-stepper\",[[1,\"p-stepper\",{\"activeStep\":[2,\"active-step\"],\"direction\":[513],\"contentPosition\":[513,\"content-position\"],\"_rendering\":[32]},null,{\"activeStep\":[\"_onActiveStepChange\"]}]]],[\"p-stepper-item\",[[1,\"p-stepper-item\",{\"align\":[513],\"direction\":[513],\"contentPosition\":[513,\"content-position\"],\"finished\":[516],\"active\":[516]}]]],[\"p-tab-group\",[[1,\"p-tab-group\"]]],[\"p-avatar-group\",[[4,\"p-avatar-group\",{\"extra\":[2]}]]],[\"p-card-body\",[[4,\"p-card-body\",{\"inheritText\":[516,\"inherit-text\"]}]]],[\"p-card-container\",[[1,\"p-card-container\",{\"hoverable\":[516],\"shadow\":[516]}]]],[\"p-layout\",[[1,\"p-layout\",{\"variant\":[1]}]]],[\"p-tab-item\",[[1,\"p-tab-item\",{\"active\":[4]}]]],[\"p-table-column\",[[0,\"p-table-column\",{\"path\":[1537],\"type\":[1537],\"name\":[1537],\"useSlot\":[1540,\"use-slot\"],\"hasCheckbox\":[1540,\"has-checkbox\"],\"align\":[1537],\"isLast\":[1540,\"is-last\"],\"sizes\":[1032]}]]],[\"p-table-row-action\",[[0,\"p-table-row-action\",{\"type\":[1537],\"icon\":[1],\"iconOnly\":[4,\"icon-only\"],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"label\":[1],\"action\":[16],\"disabled\":[4],\"loading\":[4],\"showFunction\":[16]}]]],[\"p-toast-container\",[[1,\"p-toast-container\",{\"placement\":[1]}]]],[\"p-calendar\",[[1,\"p-calendar\",{\"variant\":[1],\"value\":[1],\"preselectToday\":[4,\"preselect-today\"],\"disabledDates\":[1,\"disabled-dates\"],\"minDate\":[1,\"min-date\"],\"maxDate\":[1,\"max-date\"],\"disableWeekends\":[4,\"disable-weekends\"],\"mode\":[1],\"_view\":[32],\"_viewDate\":[32],\"_value\":[32],\"_minDate\":[32],\"_maxDate\":[32],\"_disabledDates\":[32]},null,{\"value\":[\"_parseValue\"],\"minDate\":[\"_parseMinDate\"],\"maxDate\":[\"_parseMaxDate\"],\"disabledDates\":[\"_parseDisabledDates\"]}]]],[\"p-avatar\",[[0,\"p-avatar\",{\"variant\":[513],\"size\":[513],\"defaultImage\":[1,\"default-image\"],\"src\":[1],\"letters\":[1],\"_src\":[32],\"_failed\":[32]},null,{\"src\":[\"onSrchChange\"]}]]],[\"p-counter\",[[1,\"p-counter\",{\"variant\":[1],\"size\":[1]}]]],[\"p-slider-indicator\",[[1,\"p-slider-indicator\",{\"active\":[4]}]]],[\"p-drawer-body_3\",[[1,\"p-drawer-header\",{\"showClose\":[4,\"show-close\"]}],[1,\"p-drawer-body\",{\"variant\":[1]}],[4,\"p-drawer-container\",{\"closing\":[4]}]]],[\"p-backdrop\",[[1,\"p-backdrop\",{\"variant\":[1],\"applyBlur\":[4,\"apply-blur\"],\"closing\":[4],\"scrollLock\":[4,\"scroll-lock\"]},[[2,\"click\",\"handleClick\"]]]]],[\"p-modal-body_4\",[[1,\"p-modal-header\",{\"showClose\":[4,\"show-close\"]}],[1,\"p-modal-footer\"],[1,\"p-modal-body\",{\"variant\":[1],\"rounded\":[4],\"padding\":[4]}],[4,\"p-modal-container\",{\"size\":[1],\"closing\":[4]}]]],[\"p-label_3\",[[1,\"p-label\",{\"variant\":[513],\"behavior\":[513],\"iconPosition\":[1,\"icon-position\"],\"icon\":[513],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"size\":[513],\"keepMobileContent\":[516,\"keep-mobile-content\"]}],[1,\"p-segment-item\",{\"active\":[4],\"iconOnly\":[4,\"icon-only\"],\"size\":[513],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"]}],[4,\"p-segment-container\"]]],[\"p-dropdown-menu-container\",[[4,\"p-dropdown-menu-container\",{\"maxWidth\":[4,\"max-width\"],\"fullWidth\":[4,\"full-width\"],\"allowOverflow\":[4,\"allow-overflow\"],\"scrollable\":[8]}]]],[\"p-dropdown_2\",[[1,\"p-dropdown-menu-item\",{\"active\":[4],\"variant\":[1],\"enableHover\":[4,\"enable-hover\"],\"icon\":[1]}],[1,\"p-dropdown\",{\"placement\":[513],\"offset\":[2],\"strategy\":[1],\"show\":[4],\"calculateWidth\":[4,\"calculate-width\"],\"applyMaxWidth\":[4,\"apply-max-width\"],\"applyFullWidth\":[4,\"apply-full-width\"],\"allowOverflow\":[4,\"allow-overflow\"],\"scrollable\":[8],\"insideClick\":[4,\"inside-click\"],\"disableTriggerClick\":[4,\"disable-trigger-click\"],\"applyChevron\":[4,\"apply-chevron\"],\"chevronPosition\":[1,\"chevron-position\"],\"chevronDirection\":[1,\"chevron-direction\"]},[[6,\"click\",\"documentClickHandler\"]],{\"show\":[\"onShowChange\"]}]]],[\"p-page-size-select_3\",[[1,\"p-page-size-select\",{\"size\":[1538],\"sizeOptions\":[16],\"chevronPosition\":[1,\"chevron-position\"],\"buttonSize\":[1,\"button-size\"],\"buttonTemplate\":[16],\"itemTemplate\":[16],\"hidden\":[4],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[0,\"p-pagination\",{\"page\":[1538],\"pageSize\":[2,\"page-size\"],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"total\":[2]},null,{\"page\":[\"pageChangeHandler\"],\"pageSize\":[\"pageChangeHandler\"],\"total\":[\"pageChangeHandler\"]}],[1,\"p-pagination-item\",{\"active\":[4]}]]],[\"p-tooltip\",[[1,\"p-tooltip\",{\"variant\":[1],\"content\":[8],\"placement\":[1],\"offset\":[2],\"strategy\":[1],\"enableUserInput\":[4,\"enable-user-input\"],\"show\":[4],\"canManuallyClose\":[4,\"can-manually-close\"]},[[2,\"click\",\"clickHandler\"],[6,\"click\",\"documentClickHandler\"],[1,\"mouseenter\",\"mouseEnterHandler\"],[0,\"focus\",\"mouseEnterHandler\"],[1,\"mouseleave\",\"mouseLeaveHandler\"],[0,\"blur\",\"mouseLeaveHandler\"]],{\"show\":[\"onShowChange\"]}]]],[\"p-helper_3\",[[1,\"p-input-group\",{\"size\":[1],\"prefix\":[1],\"suffix\":[1],\"icon\":[1],\"iconFlip\":[1,\"icon-flip\"],\"iconRotate\":[2,\"icon-rotate\"],\"iconPosition\":[1,\"icon-position\"],\"label\":[1],\"helper\":[1],\"required\":[516],\"error\":[513],\"disabled\":[516],\"focused\":[516],\"forceShowTooltip\":[516,\"force-show-tooltip\"],\"focusMethod\":[1,\"focus-method\"],\"errorVariant\":[1,\"error-variant\"],\"_forceShowTooltip\":[32]},[[0,\"focusin\",\"handleFocusIn\"],[0,\"focusout\",\"handleFocusOut\"]]],[1,\"p-helper\",{\"placement\":[1]}],[1,\"p-input-error\",{\"error\":[1],\"forceShowTooltip\":[4,\"force-show-tooltip\"],\"_showTooltip\":[32]}]]],[\"p-floating-menu-container_8\",[[1,\"p-table-header\",{\"quickFilters\":[16],\"activeQuickFilterIdentifier\":[1,\"active-quick-filter-identifier\"],\"loading\":[4],\"enableSearch\":[4,\"enable-search\"],\"itemsSelectedAmount\":[2,\"items-selected-amount\"],\"query\":[1025],\"enableFilter\":[4,\"enable-filter\"],\"selectedFiltersAmount\":[2,\"selected-filters-amount\"],\"filterButtonTemplate\":[16],\"enableAction\":[4,\"enable-action\"],\"actionLoading\":[4,\"action-loading\"],\"actionIcon\":[1,\"action-icon\"],\"actionText\":[1,\"action-text\"],\"canUseAction\":[1028,\"can-use-action\"],\"actionButtonTemplate\":[16],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[1,\"p-table-footer\",{\"enablePageSize\":[4,\"enable-page-size\"],\"enablePagination\":[4,\"enable-pagination\"],\"enableExport\":[4,\"enable-export\"],\"loading\":[4],\"page\":[1538],\"total\":[2],\"pageSize\":[2,\"page-size\"],\"pageSizeOptions\":[16],\"hideOnSinglePage\":[4,\"hide-on-single-page\"],\"_locales\":[32]},[[16,\"localeChanged\",\"_setLocales\"]]],[4,\"p-table-cell\",{\"variant\":[1],\"index\":[2],\"rowIndex\":[2,\"row-index\"],\"definition\":[16],\"item\":[8],\"value\":[8],\"tableHasActions\":[4,\"table-has-actions\"],\"checkbox\":[8],\"template\":[16]}],[1,\"p-table-row\",{\"variant\":[1],\"enableHover\":[4,\"enable-hover\"]}],[1,\"p-floating-menu-container\",{\"usedInTable\":[4,\"used-in-table\"]}],[1,\"p-floating-menu-item\",{\"hover\":[516],\"disabled\":[516]}],[0,\"p-illustration\",{\"variant\":[1]}],[1,\"p-table-container\",{\"shadow\":[4]}]]]]"), options);
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
export { defineCustomElements };
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host } from './index-7b917f6b.js';
|
|
2
2
|
|
|
3
|
-
const dropdownMenuContainerComponentCss = ".z-10{z-index:10!important}.flex{display:flex!important}.hidden{display:none!important}.max-h-\\[11\\.5rem\\]{max-height:11.5rem!important}.max-h-\\[13\\.875rem\\]{max-height:13.875rem!important}.max-h-\\[20rem\\]{max-height:20rem!important}.w-full{width:100%!important}.max-w-\\[222px\\]{max-width:222px!important}.flex-col{flex-direction:column!important}.gap-\\[1px\\]{gap:1px!important}.rounded-xxlarge{border-radius:.75rem!important}.drop-shadow-4{--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13))!important}.drop-shadow-4,.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}*{box-sizing:border-box}p-dropdown-menu-container{--tw-bg-opacity:1;--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13));background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.75rem;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);width:auto;z-index:10}p-dropdown-menu-container .content{display:flex;flex-direction:column;gap:1px;padding:.5rem;width:100%}p-dropdown-menu-container.full-width{width:100%}p-dropdown-menu-container.max-width{max-width:222px}p-dropdown-menu-container.scrollable{max-height:11.5rem;scrollbar-width:none}p-dropdown-menu-container.scrollable::-webkit-scrollbar{display:none}p-dropdown-menu-container.scrollable .content{height:100%}p-dropdown-menu-container.scrollable.scrollable-large{max-height:13.875rem}p-dropdown-menu-container.scrollable.scrollable-xlarge{max-height:20rem}.static{position:static!important}";
|
|
3
|
+
const dropdownMenuContainerComponentCss = ".z-10{z-index:10!important}.flex{display:flex!important}.hidden{display:none!important}.max-h-\\[11\\.5rem\\]{max-height:11.5rem!important}.max-h-\\[13\\.875rem\\]{max-height:13.875rem!important}.max-h-\\[20rem\\]{max-height:20rem!important}.w-full{width:100%!important}.max-w-\\[222px\\]{max-width:222px!important}.flex-col{flex-direction:column!important}.gap-\\[1px\\]{gap:1px!important}.overflow-y-auto{overflow-y:auto!important}.rounded-xxlarge{border-radius:.75rem!important}.drop-shadow-4{--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13))!important}.drop-shadow-4,.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}*{box-sizing:border-box}p-dropdown-menu-container{--tw-bg-opacity:1;--tw-drop-shadow:drop-shadow(0px 0.3125rem 1rem rgba(0,24,98,.08)) drop-shadow(0px 0.0625rem 0.1875rem rgba(0,24,98,.13));background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.75rem;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);width:auto;z-index:10}p-dropdown-menu-container .content{display:flex;flex-direction:column;gap:1px;padding:.5rem;width:100%}p-dropdown-menu-container.full-width{width:100%}p-dropdown-menu-container.no-overflow{overflow-x:hidden;overflow-y:auto}p-dropdown-menu-container.max-width{max-width:222px}p-dropdown-menu-container.scrollable{max-height:11.5rem;scrollbar-width:none}p-dropdown-menu-container.scrollable::-webkit-scrollbar{display:none}p-dropdown-menu-container.scrollable .content{height:100%}p-dropdown-menu-container.scrollable.scrollable-large{max-height:13.875rem}p-dropdown-menu-container.scrollable.scrollable-xlarge{max-height:20rem}.static{position:static!important}";
|
|
4
4
|
|
|
5
5
|
const DropdownMenuContainer = class {
|
|
6
6
|
constructor(hostRef) {
|
|
7
7
|
registerInstance(this, hostRef);
|
|
8
8
|
this.maxWidth = true;
|
|
9
9
|
this.fullWidth = true;
|
|
10
|
+
this.allowOverflow = false;
|
|
10
11
|
this.scrollable = false;
|
|
11
12
|
}
|
|
12
13
|
render() {
|
|
13
|
-
return (h(Host, { class: `p-dropdown-menu-container ${this.maxWidth && 'max-width'} ${this.fullWidth && 'full-width'} ${!!this.scrollable && 'scrollable'} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}` }, h("div", { class: "content" }, h("slot", null))));
|
|
14
|
+
return (h(Host, { class: `p-dropdown-menu-container ${this.maxWidth && 'max-width'} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${!!this.scrollable && 'scrollable'} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}` }, h("div", { class: "content" }, h("slot", null))));
|
|
14
15
|
}
|
|
15
16
|
};
|
|
16
17
|
DropdownMenuContainer.style = dropdownMenuContainerComponentCss;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-dropdown-menu-container.entry.js","mappings":";;AAAA,MAAM,iCAAiC,GAAG,
|
|
1
|
+
{"file":"p-dropdown-menu-container.entry.js","mappings":";;AAAA,MAAM,iCAAiC,GAAG,66DAA66D;;MCO18D,qBAAqB;;;oBAIL,IAAI;qBAKH,IAAI;yBAKA,KAAK;sBAKyB,KAAK;;EAEpE,MAAM;IACL,QACC,EAAC,IAAI,IACJ,KAAK,EAAE,6BACN,IAAI,CAAC,QAAQ,IAAI,WAClB,IAAI,IAAI,CAAC,SAAS,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,aAAa,IACzE,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,YACtB,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,GAAG,kBAAkB,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,GAAG,mBAAmB,GAAG,EAAE,EAAE,IAEtH,WAAK,KAAK,EAAC,SAAS,IACnB,eAAQ,CACH,CACA,EACN;GACF;;;;;;","names":[],"sources":["src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.scss?tag=p-dropdown-menu-container","src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.tsx"],"sourcesContent":["@import '../../../style/mixins';\n\np-dropdown-menu-container {\n\t@apply w-auto;\n\t@apply rounded-xxlarge bg-white;\n\t@apply z-10 drop-shadow-4 filter;\n\n\t.content {\n\t\t@apply w-full p-2;\n\t\t@apply flex flex-col gap-[1px];\n\t}\n\n\t&.full-width {\n\t\t@apply w-full;\n\t}\n\n\t&.no-overflow {\n\t\t@apply overflow-y-auto overflow-x-hidden;\n\t}\n\n\t&.max-width {\n\t\t@apply max-w-[222px];\n\t}\n\n\t&.scrollable {\n\t\t@apply max-h-[11.5rem];\n\n\t\tscrollbar-width: none;\n\t\t&::-webkit-scrollbar {\n\t\t\t@apply hidden;\n\t\t}\n\n\t\t.content {\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t&.scrollable-large {\n\t\t\t@apply max-h-[13.875rem];\n\t\t}\n\n\t\t&.scrollable-xlarge {\n\t\t\t@apply max-h-[20rem];\n\t\t}\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-dropdown-menu-container',\n\tstyleUrl: 'dropdown-menu-container.component.scss',\n\t// shadow: true,\n})\nexport class DropdownMenuContainer {\n\t/**\n\t * Wether the container applies it's max width\n\t */\n\t@Prop() maxWidth: boolean = true;\n\n\t/**\n\t * Wether the container should all available space\n\t */\n\t@Prop() fullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' | 'xlarge' = false;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-container ${\n\t\t\t\t\tthis.maxWidth && 'max-width'\n\t\t\t\t} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${\n\t\t\t\t\t!!this.scrollable && 'scrollable'\n\t\t\t\t} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}`}\n\t\t\t>\n\t\t\t\t<div class=\"content\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
|
|
@@ -16,6 +16,7 @@ const Dropdown = class {
|
|
|
16
16
|
this.calculateWidth = false;
|
|
17
17
|
this.applyMaxWidth = true;
|
|
18
18
|
this.applyFullWidth = true;
|
|
19
|
+
this.allowOverflow = true;
|
|
19
20
|
this.scrollable = false;
|
|
20
21
|
this.insideClick = false;
|
|
21
22
|
this.disableTriggerClick = false;
|
|
@@ -33,7 +34,7 @@ const Dropdown = class {
|
|
|
33
34
|
}
|
|
34
35
|
}
|
|
35
36
|
render() {
|
|
36
|
-
return (h(Host, { class: "p-dropdown" }, h("div", { class: "trigger", ref: (ref) => (this._trigger = ref), onClick: () => this._triggerClickHandler() }, h("slot", { onSlotchange: (ev) => this._checkButton(ev), name: "trigger" })), h("p-dropdown-menu-container", { role: "popover", maxWidth: !this.calculateWidth && this.applyMaxWidth, fullWidth: this.applyFullWidth && !this.applyMaxWidth, ref: (el) => this._load(el), "data-placement": this.placement, "data-strategy": this.strategy, onClick: () => this._containerClickHandler(), scrollable: this.scrollable }, h("slot", { name: "items" }))));
|
|
37
|
+
return (h(Host, { class: "p-dropdown" }, h("div", { class: "trigger", ref: (ref) => (this._trigger = ref), onClick: () => this._triggerClickHandler() }, h("slot", { onSlotchange: (ev) => this._checkButton(ev), name: "trigger" })), h("p-dropdown-menu-container", { role: "popover", maxWidth: !this.calculateWidth && this.applyMaxWidth, fullWidth: this.applyFullWidth && !this.applyMaxWidth, allowOverflow: this.allowOverflow, ref: (el) => this._load(el), "data-placement": this.placement, "data-strategy": this.strategy, onClick: () => this._containerClickHandler(), scrollable: this.scrollable }, h("slot", { name: "items" }))));
|
|
37
38
|
}
|
|
38
39
|
_checkButton({ target }) {
|
|
39
40
|
if (!this.applyChevron) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-dropdown.p-dropdown-menu-item.entry.js","mappings":"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","names":[],"sources":["src/components/molecules/dropdown/dropdown.component.scss?tag=p-dropdown&encapsulation=shadow","src/components/molecules/dropdown/dropdown.component.tsx","src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.scss?tag=p-dropdown-menu-item&encapsulation=shadow","src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.tsx"],"sourcesContent":[":host {\n\t@apply relative block;\n\n\t.trigger {\n\t\t@apply relative block h-auto w-auto;\n\t}\n\n\tp-dropdown-menu-container {\n\t\t@apply left-0 top-0 z-dropdown hidden;\n\n\t\t&[data-show] {\n\t\t\t@apply flex;\n\t\t}\n\n\t\t&[data-strategy='absolute'] {\n\t\t\t@apply absolute;\n\t\t}\n\n\t\t&[data-strategy='fixed'] {\n\t\t\t@apply fixed;\n\t\t}\n\t}\n}\n","import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils/child-of';\n\n@Component({\n\ttag: 'p-dropdown',\n\tstyleUrl: 'dropdown.component.scss',\n\tshadow: true,\n})\nexport class Dropdown {\n\t/**\n\t * The content of the dropdown menu\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The offset of the dropdown menu\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether to show the dropdown menu\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to automatically calculate the width of the menu based on the trigger\n\t */\n\t@Prop() calculateWidth: boolean = false;\n\n\t/**\n\t * Wether to apply the max width\n\t */\n\t@Prop() applyMaxWidth: boolean = true;\n\n\t/**\n\t * Wether to apply the full width\n\t */\n\t@Prop() applyFullWidth: boolean = true;\n\n\t/**\n\t * Wether the dropdown container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() insideClick: boolean = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() disableTriggerClick: boolean = false;\n\n\t/**\n\t * Wether to apply chevron automatically\n\t */\n\t@Prop() applyChevron: boolean = true;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Chevron direction\n\t */\n\t@Prop() chevronDirection: 'up' | 'down';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\tprivate _loaded = false;\n\tprivate _trigger: HTMLElement;\n\tprivate _menu: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class=\"p-dropdown\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"trigger\"\n\t\t\t\t\tref={(ref) => (this._trigger = ref)}\n\t\t\t\t\tonClick={() => this._triggerClickHandler()}\n\t\t\t\t>\n\t\t\t\t\t<slot\n\t\t\t\t\t\tonSlotchange={(ev) => this._checkButton(ev)}\n\t\t\t\t\t\tname=\"trigger\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<p-dropdown-menu-container\n\t\t\t\t\trole=\"popover\"\n\t\t\t\t\tmaxWidth={!this.calculateWidth && this.applyMaxWidth}\n\t\t\t\t\tfullWidth={this.applyFullWidth && !this.applyMaxWidth}\n\t\t\t\t\tref={(el) => this._load(el)}\n\t\t\t\t\tdata-placement={this.placement}\n\t\t\t\t\tdata-strategy={this.strategy}\n\t\t\t\t\tonClick={() => this._containerClickHandler()}\n\t\t\t\t\tscrollable={this.scrollable}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"items\" />\n\t\t\t\t</p-dropdown-menu-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkButton({ target }: Event) {\n\t\tif (!this.applyChevron) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst slot = target as HTMLSlotElement;\n\t\tconst children = slot.assignedElements();\n\n\t\tfor (let child of children) {\n\t\t\tif (child.nodeName === 'P-BUTTON') {\n\t\t\t\t(child as any).chevronPosition = this.chevronPosition;\n\t\t\t\t(child as any).chevron = this.chevronDirection\n\t\t\t\t\t? this.chevronDirection\n\t\t\t\t\t: this.placement.indexOf('top') >= 0\n\t\t\t\t\t\t? 'up'\n\t\t\t\t\t\t: 'down';\n\t\t\t}\n\t\t}\n\t}\n\n\t@Watch('show')\n\tprotected onShowChange(show) {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!show) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (\n\t\t\t!this._menu.hasAttribute('data-show') ||\n\t\t\tchildOf(target, this._el)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\tprivate _containerClickHandler() {\n\t\tif (this.insideClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t}\n\t}\n\n\tprivate _triggerClickHandler() {\n\t\tif (this.disableTriggerClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._menu = popover;\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make the popover visible\n\t\tif (this.calculateWidth) {\n\t\t\tthis._menu.style.width = `${this._trigger.clientWidth}px`;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._menu, () => this._update());\n\n\t\tthis._menu.setAttribute('data-show', '');\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._menu.removeAttribute('data-show');\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _update() {\n\t\tif (!this._menu) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._menu, {\n\t\t\tplacement: this.placement,\n\t\t\tstrategy: this.strategy,\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._menu.dataset.placement = placement;\n\t\t\tObject.assign(this._menu.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n",":host {\n\t@import '../../../style/form/checkbox';\n\n\t@apply flex h-8 w-full items-center gap-2 rounded px-2;\n\t@apply text-sm font-semibold text-storm;\n\t@apply cursor-pointer;\n\n\t.text-container {\n\t\t@apply block w-full overflow-hidden text-ellipsis whitespace-nowrap text-start;\n\t}\n}\n\n:host(.hover:hover) {\n\t@apply bg-indigo-light text-storm;\n}\n\n:host(.active) {\n\t@apply bg-indigo-light text-indigo;\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { IconVariant } from '../icon/icon.component';\n\n@Component({\n\ttag: 'p-dropdown-menu-item',\n\tstyleUrl: 'dropdown-menu-item.component.scss',\n\tshadow: true,\n})\nexport class DropdownMenuItem {\n\t/**\n\t * Wether the dropdown menu item is active\n\t */\n\t@Prop() active: boolean = false;\n\n\t/**\n\t * The variant of the item\n\t */\n\t@Prop() variant: 'default' | 'checkbox' = 'default';\n\n\t/**\n\t * Wether to enable the hover state\n\t */\n\t@Prop() enableHover: boolean = true;\n\n\t/**\n\t * Icon of the navigation item\n\t */\n\t@Prop() icon: IconVariant;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-item ${this.active && 'active'} ${\n\t\t\t\t\tthis.enableHover && 'hover'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{this.icon && <p-icon variant={this.icon} />}\n\n\t\t\t\t{this.variant === 'checkbox' && (\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\tclass=\"p-input size-small flex-shrink-0\"\n\t\t\t\t\t\tchecked={this.active}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t<div class=\"text-container\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-dropdown.p-dropdown-menu-item.entry.js","mappings":"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","names":[],"sources":["src/components/molecules/dropdown/dropdown.component.scss?tag=p-dropdown&encapsulation=shadow","src/components/molecules/dropdown/dropdown.component.tsx","src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.scss?tag=p-dropdown-menu-item&encapsulation=shadow","src/components/atoms/dropdown-menu-item/dropdown-menu-item.component.tsx"],"sourcesContent":[":host {\n\t@apply relative block;\n\n\t.trigger {\n\t\t@apply relative block h-auto w-auto;\n\t}\n\n\tp-dropdown-menu-container {\n\t\t@apply left-0 top-0 z-dropdown hidden;\n\n\t\t&[data-show] {\n\t\t\t@apply flex;\n\t\t}\n\n\t\t&[data-strategy='absolute'] {\n\t\t\t@apply absolute;\n\t\t}\n\n\t\t&[data-strategy='fixed'] {\n\t\t\t@apply fixed;\n\t\t}\n\t}\n}\n","import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils/child-of';\n\n@Component({\n\ttag: 'p-dropdown',\n\tstyleUrl: 'dropdown.component.scss',\n\tshadow: true,\n})\nexport class Dropdown {\n\t/**\n\t * The content of the dropdown menu\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The offset of the dropdown menu\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether to show the dropdown menu\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to automatically calculate the width of the menu based on the trigger\n\t */\n\t@Prop() calculateWidth: boolean = false;\n\n\t/**\n\t * Wether to apply the max width\n\t */\n\t@Prop() applyMaxWidth: boolean = true;\n\n\t/**\n\t * Wether to apply the full width\n\t */\n\t@Prop() applyFullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow in the container\n\t */\n\t@Prop() allowOverflow: boolean = true;\n\n\t/**\n\t * Wether the dropdown container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() insideClick: boolean = false;\n\n\t/**\n\t * Wether to automatically close the dropdown menu after clicking inside\n\t */\n\t@Prop() disableTriggerClick: boolean = false;\n\n\t/**\n\t * Wether to apply chevron automatically\n\t */\n\t@Prop() applyChevron: boolean = true;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Chevron direction\n\t */\n\t@Prop() chevronDirection: 'up' | 'down';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\tprivate _loaded = false;\n\tprivate _trigger: HTMLElement;\n\tprivate _menu: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class=\"p-dropdown\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"trigger\"\n\t\t\t\t\tref={(ref) => (this._trigger = ref)}\n\t\t\t\t\tonClick={() => this._triggerClickHandler()}\n\t\t\t\t>\n\t\t\t\t\t<slot\n\t\t\t\t\t\tonSlotchange={(ev) => this._checkButton(ev)}\n\t\t\t\t\t\tname=\"trigger\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<p-dropdown-menu-container\n\t\t\t\t\trole=\"popover\"\n\t\t\t\t\tmaxWidth={!this.calculateWidth && this.applyMaxWidth}\n\t\t\t\t\tfullWidth={this.applyFullWidth && !this.applyMaxWidth}\n\t\t\t\t\tallowOverflow={this.allowOverflow}\n\t\t\t\t\tref={(el) => this._load(el)}\n\t\t\t\t\tdata-placement={this.placement}\n\t\t\t\t\tdata-strategy={this.strategy}\n\t\t\t\t\tonClick={() => this._containerClickHandler()}\n\t\t\t\t\tscrollable={this.scrollable}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"items\" />\n\t\t\t\t</p-dropdown-menu-container>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkButton({ target }: Event) {\n\t\tif (!this.applyChevron) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst slot = target as HTMLSlotElement;\n\t\tconst children = slot.assignedElements();\n\n\t\tfor (let child of children) {\n\t\t\tif (child.nodeName === 'P-BUTTON') {\n\t\t\t\t(child as any).chevronPosition = this.chevronPosition;\n\t\t\t\t(child as any).chevron = this.chevronDirection\n\t\t\t\t\t? this.chevronDirection\n\t\t\t\t\t: this.placement.indexOf('top') >= 0\n\t\t\t\t\t\t? 'up'\n\t\t\t\t\t\t: 'down';\n\t\t\t}\n\t\t}\n\t}\n\n\t@Watch('show')\n\tprotected onShowChange(show) {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!show) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (\n\t\t\t!this._menu.hasAttribute('data-show') ||\n\t\t\tchildOf(target, this._el)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\tprivate _containerClickHandler() {\n\t\tif (this.insideClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t}\n\t}\n\n\tprivate _triggerClickHandler() {\n\t\tif (this.disableTriggerClick) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._menu.hasAttribute('data-show')) {\n\t\t\tthis._hide();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._menu = popover;\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make the popover visible\n\t\tif (this.calculateWidth) {\n\t\t\tthis._menu.style.width = `${this._trigger.clientWidth}px`;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._menu, () => this._update());\n\n\t\tthis._menu.setAttribute('data-show', '');\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._menu.removeAttribute('data-show');\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _update() {\n\t\tif (!this._menu) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._menu, {\n\t\t\tplacement: this.placement,\n\t\t\tstrategy: this.strategy,\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._menu.dataset.placement = placement;\n\t\t\tObject.assign(this._menu.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n",":host {\n\t@import '../../../style/form/checkbox';\n\n\t@apply flex h-8 w-full items-center gap-2 rounded px-2;\n\t@apply text-sm font-semibold text-storm;\n\t@apply cursor-pointer;\n\n\t.text-container {\n\t\t@apply block w-full overflow-hidden text-ellipsis whitespace-nowrap text-start;\n\t}\n}\n\n:host(.hover:hover) {\n\t@apply bg-indigo-light text-storm;\n}\n\n:host(.active) {\n\t@apply bg-indigo-light text-indigo;\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { IconVariant } from '../icon/icon.component';\n\n@Component({\n\ttag: 'p-dropdown-menu-item',\n\tstyleUrl: 'dropdown-menu-item.component.scss',\n\tshadow: true,\n})\nexport class DropdownMenuItem {\n\t/**\n\t * Wether the dropdown menu item is active\n\t */\n\t@Prop() active: boolean = false;\n\n\t/**\n\t * The variant of the item\n\t */\n\t@Prop() variant: 'default' | 'checkbox' = 'default';\n\n\t/**\n\t * Wether to enable the hover state\n\t */\n\t@Prop() enableHover: boolean = true;\n\n\t/**\n\t * Icon of the navigation item\n\t */\n\t@Prop() icon: IconVariant;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-item ${this.active && 'active'} ${\n\t\t\t\t\tthis.enableHover && 'hover'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{this.icon && <p-icon variant={this.icon} />}\n\n\t\t\t\t{this.variant === 'checkbox' && (\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\tclass=\"p-input size-small flex-shrink-0\"\n\t\t\t\t\t\tchecked={this.active}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t<div class=\"text-container\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"version":3}
|