@pine-ds/core 3.7.0 → 3.8.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/components/form.js +16 -1
- package/components/form.js.map +1 -1
- package/components/index2.js +1 -1
- package/components/index2.js.map +1 -1
- package/components/mock-pds-modal.js +1 -1
- package/components/mock-pds-modal.js.map +1 -1
- package/components/pds-button2.js +1 -1
- package/components/pds-button2.js.map +1 -1
- package/components/pds-checkbox2.js +7 -4
- package/components/pds-checkbox2.js.map +1 -1
- package/components/pds-chip.js +1 -100
- package/components/pds-chip.js.map +1 -1
- package/components/pds-chip2.js +105 -0
- package/components/pds-chip2.js.map +1 -0
- package/components/pds-combobox.js +414 -43
- package/components/pds-combobox.js.map +1 -1
- package/components/pds-copytext.js +3 -3
- package/components/pds-copytext.js.map +1 -1
- package/components/pds-dropdown-menu.js +1 -1
- package/components/pds-dropdown-menu.js.map +1 -1
- package/components/pds-filter.js +3 -3
- package/components/pds-filter.js.map +1 -1
- package/components/pds-input.js +1 -1
- package/components/pds-input.js.map +1 -1
- package/components/pds-modal.js +1 -1
- package/components/pds-modal.js.map +1 -1
- package/components/pds-popover.js +123 -15
- package/components/pds-popover.js.map +1 -1
- package/components/pds-radio.js +10 -4
- package/components/pds-radio.js.map +1 -1
- package/components/pds-select.js +21 -5
- package/components/pds-select.js.map +1 -1
- package/components/pds-switch.js +7 -4
- package/components/pds-switch.js.map +1 -1
- package/components/pds-tab.js +1 -1
- package/components/pds-tab.js.map +1 -1
- package/components/pds-table-cell2.js +1 -1
- package/components/pds-table-cell2.js.map +1 -1
- package/components/pds-table-head-cell2.js +1 -1
- package/components/pds-table-head-cell2.js.map +1 -1
- package/components/pds-table-head.js +1 -1
- package/components/pds-table-head.js.map +1 -1
- package/components/pds-table-row.js +1 -1
- package/components/pds-table-row.js.map +1 -1
- package/components/pds-table.js +1 -1
- package/components/pds-table.js.map +1 -1
- package/components/pds-tabs.js +14 -4
- package/components/pds-tabs.js.map +1 -1
- package/components/pds-textarea.js +9 -6
- package/components/pds-textarea.js.map +1 -1
- package/components/pds-tooltip.js +4 -4
- package/components/pds-tooltip.js.map +1 -1
- package/dist/cjs/{form-Bx4nzJBo.js → form-hmpgbT1I.js} +18 -2
- package/dist/cjs/form-hmpgbT1I.js.map +1 -0
- package/dist/cjs/{index-CTirFLR-.js → index-DtnvzYhe.js} +3 -3
- package/dist/cjs/index-DtnvzYhe.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mock-pds-modal.cjs.entry.js +1 -1
- package/dist/cjs/mock-pds-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/mock-pds-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-accordion.cjs.entry.js +1 -1
- package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
- package/dist/cjs/pds-button.cjs.entry.js +2 -2
- package/dist/cjs/pds-button.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-checkbox.cjs.entry.js +8 -5
- package/dist/cjs/pds-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-chip.cjs.entry.js +3 -3
- package/dist/cjs/pds-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-chip.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-combobox.cjs.entry.js +398 -40
- package/dist/cjs/pds-combobox.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-combobox.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-copytext.cjs.entry.js +4 -4
- package/dist/cjs/pds-copytext.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-dropdown-menu.cjs.entry.js +1 -1
- package/dist/cjs/pds-dropdown-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-dropdown-menu.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-filter.cjs.entry.js +4 -4
- package/dist/cjs/pds-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-filter.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-input.cjs.entry.js +3 -3
- package/dist/cjs/pds-input.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-input.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-link.cjs.entry.js +1 -1
- package/dist/cjs/pds-modal.cjs.entry.js +1 -1
- package/dist/cjs/pds-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-popover.cjs.entry.js +117 -12
- package/dist/cjs/pds-popover.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-popover.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-radio.cjs.entry.js +11 -5
- package/dist/cjs/pds-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-radio.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-select.cjs.entry.js +20 -5
- package/dist/cjs/pds-select.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-select.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-sortable-item.cjs.entry.js +1 -1
- package/dist/cjs/pds-switch.cjs.entry.js +8 -5
- package/dist/cjs/pds-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-switch.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-tab.cjs.entry.js +1 -1
- package/dist/cjs/pds-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-tab.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-cell.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table-cell.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-head-cell.cjs.entry.js +2 -2
- package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-head.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-row.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-row.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table.cjs.entry.js +1 -1
- package/dist/cjs/pds-table.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-tabs.cjs.entry.js +14 -4
- package/dist/cjs/pds-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-tabs.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-textarea.cjs.entry.js +10 -7
- package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-tooltip.cjs.entry.js +4 -4
- package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/pine-core.cjs.js +1 -1
- package/dist/collection/components/pds-button/pds-button.css +6 -3
- package/dist/collection/components/pds-checkbox/pds-checkbox.js +7 -4
- package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -1
- package/dist/collection/components/pds-chip/pds-chip.css +2 -2
- package/dist/collection/components/pds-chip/pds-chip.js +17 -5
- package/dist/collection/components/pds-chip/pds-chip.js.map +1 -1
- package/dist/collection/components/pds-combobox/pds-combobox.css +175 -4
- package/dist/collection/components/pds-combobox/pds-combobox.js +516 -43
- package/dist/collection/components/pds-combobox/pds-combobox.js.map +1 -1
- package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +79 -2
- package/dist/collection/components/pds-copytext/pds-copytext.css +6 -3
- package/dist/collection/components/pds-copytext/pds-copytext.js +2 -2
- package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
- package/dist/collection/components/pds-copytext/stories/pds-copytext.stories.js +1 -1
- package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +1 -1
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +1 -1
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.js +2 -2
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.js.map +1 -1
- package/dist/collection/components/pds-input/pds-input.css +18 -3
- package/dist/collection/components/pds-input/stories/pds-input.stories.js +42 -0
- package/dist/collection/components/pds-modal/pds-modal.css +2 -2
- package/dist/collection/components/pds-popover/pds-popover.css +3 -0
- package/dist/collection/components/pds-popover/pds-popover.js +226 -17
- package/dist/collection/components/pds-popover/pds-popover.js.map +1 -1
- package/dist/collection/components/pds-popover/popover-interface.js +2 -0
- package/dist/collection/components/pds-popover/popover-interface.js.map +1 -0
- package/dist/collection/components/pds-popover/stories/pds-popover.stories.js +1 -1
- package/dist/collection/components/pds-radio/pds-radio.js +10 -4
- package/dist/collection/components/pds-radio/pds-radio.js.map +1 -1
- package/dist/collection/components/pds-select/pds-select.css +1 -1
- package/dist/collection/components/pds-select/pds-select.js +19 -2
- package/dist/collection/components/pds-select/pds-select.js.map +1 -1
- package/dist/collection/components/pds-switch/pds-switch.js +7 -4
- package/dist/collection/components/pds-switch/pds-switch.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +1 -1
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -1
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +1 -1
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -1
- package/dist/collection/components/pds-table/pds-table.css +1 -1
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +2 -2
- package/dist/collection/components/pds-tabs/pds-tabs.js +14 -4
- package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -1
- package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +1 -1
- package/dist/collection/components/pds-textarea/pds-textarea.css +1 -1
- package/dist/collection/components/pds-textarea/pds-textarea.js +8 -5
- package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
- package/dist/collection/components/pds-tooltip/pds-tooltip.css +1 -1
- package/dist/collection/components/pds-tooltip/pds-tooltip.js +3 -3
- package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
- package/dist/collection/utils/form.js +15 -0
- package/dist/collection/utils/form.js.map +1 -1
- package/dist/collection/utils/types.js.map +1 -1
- package/dist/docs.json +341 -17
- package/dist/esm/form-DwjNklzi.js +47 -0
- package/dist/esm/form-DwjNklzi.js.map +1 -0
- package/dist/esm/{index-D4MkIUXU.js → index-D4zJBIgl.js} +3 -3
- package/dist/esm/index-D4zJBIgl.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mock-pds-modal.entry.js +1 -1
- package/dist/esm/mock-pds-modal.entry.js.map +1 -1
- package/dist/esm/pds-accordion.entry.js +1 -1
- package/dist/esm/pds-avatar.entry.js +1 -1
- package/dist/esm/pds-button.entry.js +2 -2
- package/dist/esm/pds-button.entry.js.map +1 -1
- package/dist/esm/pds-checkbox.entry.js +8 -5
- package/dist/esm/pds-checkbox.entry.js.map +1 -1
- package/dist/esm/pds-chip.entry.js +3 -3
- package/dist/esm/pds-chip.entry.js.map +1 -1
- package/dist/esm/pds-combobox.entry.js +398 -40
- package/dist/esm/pds-combobox.entry.js.map +1 -1
- package/dist/esm/pds-copytext.entry.js +4 -4
- package/dist/esm/pds-copytext.entry.js.map +1 -1
- package/dist/esm/pds-dropdown-menu.entry.js +1 -1
- package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
- package/dist/esm/pds-filter.entry.js +4 -4
- package/dist/esm/pds-filter.entry.js.map +1 -1
- package/dist/esm/pds-input.entry.js +3 -3
- package/dist/esm/pds-input.entry.js.map +1 -1
- package/dist/esm/pds-link.entry.js +1 -1
- package/dist/esm/pds-modal.entry.js +1 -1
- package/dist/esm/pds-modal.entry.js.map +1 -1
- package/dist/esm/pds-popover.entry.js +118 -13
- package/dist/esm/pds-popover.entry.js.map +1 -1
- package/dist/esm/pds-radio.entry.js +12 -6
- package/dist/esm/pds-radio.entry.js.map +1 -1
- package/dist/esm/pds-select.entry.js +20 -5
- package/dist/esm/pds-select.entry.js.map +1 -1
- package/dist/esm/pds-sortable-item.entry.js +1 -1
- package/dist/esm/pds-switch.entry.js +8 -5
- package/dist/esm/pds-switch.entry.js.map +1 -1
- package/dist/esm/pds-tab.entry.js +1 -1
- package/dist/esm/pds-tab.entry.js.map +1 -1
- package/dist/esm/pds-table-cell.entry.js +1 -1
- package/dist/esm/pds-table-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head-cell.entry.js +2 -2
- package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head.entry.js +1 -1
- package/dist/esm/pds-table-head.entry.js.map +1 -1
- package/dist/esm/pds-table-row.entry.js +1 -1
- package/dist/esm/pds-table-row.entry.js.map +1 -1
- package/dist/esm/pds-table.entry.js +1 -1
- package/dist/esm/pds-table.entry.js.map +1 -1
- package/dist/esm/pds-tabs.entry.js +14 -4
- package/dist/esm/pds-tabs.entry.js.map +1 -1
- package/dist/esm/pds-textarea.entry.js +10 -7
- package/dist/esm/pds-textarea.entry.js.map +1 -1
- package/dist/esm/pds-tooltip.entry.js +4 -4
- package/dist/esm/pds-tooltip.entry.js.map +1 -1
- package/dist/esm/pine-core.js +1 -1
- package/dist/esm-es5/form-DwjNklzi.js +2 -0
- package/dist/esm-es5/form-DwjNklzi.js.map +1 -0
- package/dist/esm-es5/{index-D4MkIUXU.js → index-D4zJBIgl.js} +1 -1
- package/dist/esm-es5/index-D4zJBIgl.js.map +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
- package/dist/esm-es5/mock-pds-modal.entry.js.map +1 -1
- package/dist/esm-es5/pds-accordion.entry.js +1 -1
- package/dist/esm-es5/pds-avatar.entry.js +1 -1
- package/dist/esm-es5/pds-button.entry.js +1 -1
- package/dist/esm-es5/pds-button.entry.js.map +1 -1
- package/dist/esm-es5/pds-checkbox.entry.js +1 -1
- package/dist/esm-es5/pds-checkbox.entry.js.map +1 -1
- package/dist/esm-es5/pds-chip.entry.js +1 -1
- package/dist/esm-es5/pds-chip.entry.js.map +1 -1
- package/dist/esm-es5/pds-combobox.entry.js +1 -1
- package/dist/esm-es5/pds-combobox.entry.js.map +1 -1
- package/dist/esm-es5/pds-copytext.entry.js +1 -1
- package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
- package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
- package/dist/esm-es5/pds-dropdown-menu.entry.js.map +1 -1
- package/dist/esm-es5/pds-filter.entry.js +1 -1
- package/dist/esm-es5/pds-filter.entry.js.map +1 -1
- package/dist/esm-es5/pds-input.entry.js +1 -1
- package/dist/esm-es5/pds-input.entry.js.map +1 -1
- package/dist/esm-es5/pds-link.entry.js +1 -1
- package/dist/esm-es5/pds-modal.entry.js +1 -1
- package/dist/esm-es5/pds-modal.entry.js.map +1 -1
- package/dist/esm-es5/pds-popover.entry.js +1 -1
- package/dist/esm-es5/pds-popover.entry.js.map +1 -1
- package/dist/esm-es5/pds-radio.entry.js +1 -1
- package/dist/esm-es5/pds-radio.entry.js.map +1 -1
- package/dist/esm-es5/pds-select.entry.js +1 -1
- package/dist/esm-es5/pds-select.entry.js.map +1 -1
- package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
- package/dist/esm-es5/pds-switch.entry.js +1 -1
- package/dist/esm-es5/pds-switch.entry.js.map +1 -1
- package/dist/esm-es5/pds-tab.entry.js +1 -1
- package/dist/esm-es5/pds-tab.entry.js.map +1 -1
- package/dist/esm-es5/pds-table-cell.entry.js +1 -1
- package/dist/esm-es5/pds-table-cell.entry.js.map +1 -1
- package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
- package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
- package/dist/esm-es5/pds-table-head.entry.js +1 -1
- package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
- package/dist/esm-es5/pds-table-row.entry.js +1 -1
- package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
- package/dist/esm-es5/pds-table.entry.js +1 -1
- package/dist/esm-es5/pds-table.entry.js.map +1 -1
- package/dist/esm-es5/pds-tabs.entry.js +1 -1
- package/dist/esm-es5/pds-tabs.entry.js.map +1 -1
- package/dist/esm-es5/pds-textarea.entry.js +1 -1
- package/dist/esm-es5/pds-textarea.entry.js.map +1 -1
- package/dist/esm-es5/pds-tooltip.entry.js +1 -1
- package/dist/esm-es5/pds-tooltip.entry.js.map +1 -1
- package/dist/esm-es5/pine-core.js +1 -1
- package/dist/pine-core/mock-pds-modal.entry.esm.js.map +1 -1
- package/dist/pine-core/p-00346c62.system.entry.js +2 -0
- package/dist/pine-core/p-00346c62.system.entry.js.map +1 -0
- package/dist/pine-core/{p-8ded79aa.system.entry.js → p-0486ecc6.system.entry.js} +2 -2
- package/dist/pine-core/{p-8ded79aa.system.entry.js.map → p-0486ecc6.system.entry.js.map} +1 -1
- package/dist/pine-core/{p-af56cb57.entry.js → p-100de2b7.entry.js} +2 -2
- package/dist/pine-core/p-1b932ee3.entry.js +2 -0
- package/dist/pine-core/p-1b932ee3.entry.js.map +1 -0
- package/dist/pine-core/p-20466115.entry.js +2 -0
- package/dist/pine-core/p-20466115.entry.js.map +1 -0
- package/dist/pine-core/{p-72d87dc6.system.entry.js → p-2054b5cb.system.entry.js} +2 -2
- package/dist/pine-core/{p-c0601420.system.entry.js → p-2aab28b1.system.entry.js} +2 -2
- package/dist/pine-core/p-3dce3bc0.system.entry.js +2 -0
- package/dist/pine-core/p-3dce3bc0.system.entry.js.map +1 -0
- package/dist/pine-core/p-45d574f1.system.entry.js +2 -0
- package/dist/pine-core/p-45d574f1.system.entry.js.map +1 -0
- package/dist/pine-core/p-465e3418.system.entry.js +2 -0
- package/dist/pine-core/p-465e3418.system.entry.js.map +1 -0
- package/dist/pine-core/p-4xv5UVkx.system.js.map +1 -0
- package/dist/pine-core/p-538b3902.system.entry.js +2 -0
- package/dist/pine-core/p-538b3902.system.entry.js.map +1 -0
- package/dist/pine-core/p-61a25ab2.entry.js +2 -0
- package/dist/pine-core/p-61a25ab2.entry.js.map +1 -0
- package/dist/pine-core/p-6381a811.system.entry.js +4 -0
- package/dist/pine-core/p-6381a811.system.entry.js.map +1 -0
- package/dist/pine-core/p-6c36cab6.entry.js +2 -0
- package/dist/pine-core/p-6c36cab6.entry.js.map +1 -0
- package/dist/pine-core/p-6ed297cb.entry.js +2 -0
- package/dist/pine-core/p-6ed297cb.entry.js.map +1 -0
- package/dist/pine-core/p-708e963c.system.entry.js +2 -0
- package/dist/pine-core/p-708e963c.system.entry.js.map +1 -0
- package/dist/pine-core/p-7090d42d.system.entry.js +2 -0
- package/dist/pine-core/p-7090d42d.system.entry.js.map +1 -0
- package/dist/pine-core/{p-896e2f1b.entry.js → p-725c350c.entry.js} +2 -2
- package/dist/pine-core/{p-896e2f1b.entry.js.map → p-725c350c.entry.js.map} +1 -1
- package/dist/pine-core/p-75187352.system.entry.js +2 -0
- package/dist/pine-core/p-75187352.system.entry.js.map +1 -0
- package/dist/pine-core/p-79422986.entry.js +2 -0
- package/dist/pine-core/p-79422986.entry.js.map +1 -0
- package/dist/pine-core/p-81bc089e.entry.js +2 -0
- package/dist/pine-core/p-81bc089e.entry.js.map +1 -0
- package/dist/pine-core/p-85c41629.entry.js +2 -0
- package/dist/pine-core/p-85c41629.entry.js.map +1 -0
- package/dist/pine-core/p-86263a62.entry.js +2 -0
- package/dist/pine-core/p-86263a62.entry.js.map +1 -0
- package/dist/pine-core/p-87ed43d5.entry.js +2 -0
- package/dist/pine-core/p-87ed43d5.entry.js.map +1 -0
- package/dist/pine-core/{p-a54d6a53.entry.js → p-88773b86.entry.js} +2 -2
- package/dist/pine-core/p-8b4fb3f0.entry.js +2 -0
- package/dist/pine-core/p-8b4fb3f0.entry.js.map +1 -0
- package/dist/pine-core/p-8b5fc4b4.system.entry.js +2 -0
- package/dist/pine-core/p-8b5fc4b4.system.entry.js.map +1 -0
- package/dist/pine-core/p-94183716.entry.js +2 -0
- package/dist/pine-core/p-94183716.entry.js.map +1 -0
- package/dist/pine-core/p-9766923f.entry.js +2 -0
- package/dist/pine-core/p-9766923f.entry.js.map +1 -0
- package/dist/pine-core/p-9b335a9f.entry.js +2 -0
- package/dist/pine-core/p-9b335a9f.entry.js.map +1 -0
- package/dist/pine-core/p-9c579956.system.entry.js +2 -0
- package/dist/pine-core/p-9c579956.system.entry.js.map +1 -0
- package/dist/pine-core/p-9cf2b7a6.entry.js +2 -0
- package/dist/pine-core/p-9cf2b7a6.entry.js.map +1 -0
- package/dist/pine-core/{p-COwpA8ab.system.js.map → p-B-Doh1Wu.system.js.map} +1 -1
- package/dist/pine-core/{p-BSkbMuB5.system.js → p-BG99uNIQ.system.js} +1 -1
- package/dist/pine-core/p-BG99uNIQ.system.js.map +1 -0
- package/dist/pine-core/p-BHavepTY.system.js +2 -0
- package/dist/pine-core/p-BHavepTY.system.js.map +1 -0
- package/dist/pine-core/p-BLC5kuro.system.js.map +1 -0
- package/dist/pine-core/p-BPjnTOEL.system.js +1 -1
- package/dist/pine-core/{p-X5M4eshC.system.js.map → p-BRIdBthP.system.js.map} +1 -1
- package/dist/pine-core/{p-B57Bybw-.system.js.map → p-BkPtASB1.system.js.map} +1 -1
- package/dist/pine-core/p-Bkfqi7zE.system.js.map +1 -0
- package/dist/pine-core/p-C1KChp5Q.system.js.map +1 -0
- package/dist/pine-core/p-C2W-sHx5.system.js.map +1 -0
- package/dist/pine-core/p-CIBXMJd-.system.js.map +1 -0
- package/dist/pine-core/p-CJNB_wrl.system.js.map +1 -0
- package/dist/pine-core/p-CSa_b_JX.system.js.map +1 -0
- package/dist/pine-core/p-Cid662up.system.js.map +1 -0
- package/dist/pine-core/p-Cqzmj3D8.system.js.map +1 -0
- package/dist/pine-core/p-Cxlv_2hD.system.js.map +1 -0
- package/dist/pine-core/p-D0foS5EP.system.js.map +1 -0
- package/dist/pine-core/{p-D4MkIUXU.js → p-D4zJBIgl.js} +1 -1
- package/dist/pine-core/p-D4zJBIgl.js.map +1 -0
- package/dist/pine-core/p-DCjZr2HA.system.js.map +1 -0
- package/dist/pine-core/p-DN3VK2yy.system.js.map +1 -0
- package/dist/pine-core/{p-DgE9ds9o.system.js.map → p-DOqVoXeA.system.js.map} +1 -1
- package/dist/pine-core/p-DW3lkDNz.system.js.map +1 -0
- package/dist/pine-core/p-DfrSuf6X.system.js.map +1 -0
- package/dist/pine-core/p-DpemOPFJ.system.js.map +1 -0
- package/dist/pine-core/p-DpzRSULT.system.js.map +1 -0
- package/dist/pine-core/p-DtdXdmNp.system.js.map +1 -0
- package/dist/pine-core/p-Dw05F6Xg.system.js.map +1 -0
- package/dist/pine-core/p-DwjNklzi.js +2 -0
- package/dist/pine-core/p-DwjNklzi.js.map +1 -0
- package/dist/pine-core/p-GrmqKqN8.system.js.map +1 -0
- package/dist/pine-core/p-HHZU8rBT.system.js.map +1 -0
- package/dist/pine-core/p-a2708028.entry.js +2 -0
- package/dist/pine-core/p-a2708028.entry.js.map +1 -0
- package/dist/pine-core/{p-46820152.entry.js → p-a3785977.entry.js} +2 -2
- package/dist/pine-core/p-a707a7da.system.entry.js +2 -0
- package/dist/pine-core/p-a707a7da.system.entry.js.map +1 -0
- package/dist/pine-core/p-acd87a10.entry.js +2 -0
- package/dist/pine-core/p-acd87a10.entry.js.map +1 -0
- package/dist/pine-core/p-ae4ec5cf.system.entry.js +2 -0
- package/dist/pine-core/p-ae4ec5cf.system.entry.js.map +1 -0
- package/dist/pine-core/p-b23dd01c.entry.js +2 -0
- package/dist/pine-core/p-b23dd01c.entry.js.map +1 -0
- package/dist/pine-core/p-b9aafec7.system.entry.js +2 -0
- package/dist/pine-core/p-b9aafec7.system.entry.js.map +1 -0
- package/dist/pine-core/p-c3579585.system.entry.js +2 -0
- package/dist/pine-core/p-c3579585.system.entry.js.map +1 -0
- package/dist/pine-core/p-cffc98ae.entry.js +3 -0
- package/dist/pine-core/p-cffc98ae.entry.js.map +1 -0
- package/dist/pine-core/{p-559b4ebc.entry.js → p-d1b27fa4.entry.js} +2 -2
- package/dist/pine-core/p-d2b15290.system.entry.js +2 -0
- package/dist/pine-core/p-d2b15290.system.entry.js.map +1 -0
- package/dist/pine-core/p-d4d22aee.entry.js +2 -0
- package/dist/pine-core/p-d4d22aee.entry.js.map +1 -0
- package/dist/pine-core/{p-c63e7909.system.entry.js → p-dace69e7.system.entry.js} +2 -2
- package/dist/pine-core/p-e34c1224.system.entry.js +2 -0
- package/dist/pine-core/p-e34c1224.system.entry.js.map +1 -0
- package/dist/pine-core/p-e5adbf74.system.entry.js +2 -0
- package/dist/pine-core/p-e5adbf74.system.entry.js.map +1 -0
- package/dist/pine-core/p-e6085566.system.entry.js +2 -0
- package/dist/pine-core/p-e6085566.system.entry.js.map +1 -0
- package/dist/pine-core/p-e683e197.system.entry.js +2 -0
- package/dist/pine-core/p-e683e197.system.entry.js.map +1 -0
- package/dist/pine-core/p-e6b051e8.system.entry.js +2 -0
- package/dist/pine-core/p-e6b051e8.system.entry.js.map +1 -0
- package/dist/pine-core/{p-ab4307c7.system.entry.js → p-e702a8dc.system.entry.js} +2 -2
- package/dist/pine-core/p-f15cd180.entry.js +2 -0
- package/dist/pine-core/p-f15cd180.entry.js.map +1 -0
- package/dist/pine-core/p-f6d0bd39.entry.js +2 -0
- package/dist/pine-core/p-f6d0bd39.entry.js.map +1 -0
- package/dist/pine-core/p-f92d7570.system.entry.js +2 -0
- package/dist/pine-core/p-f92d7570.system.entry.js.map +1 -0
- package/dist/pine-core/{p-d325287b.entry.js.map → p-ozqEY4Zc.system.js.map} +1 -1
- package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-checkbox.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-chip.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-combobox.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-dropdown-menu.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-filter.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-input.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-modal.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-popover.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-radio.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-select.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-switch.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-tab.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table-cell.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table-head-cell.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table-head.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-tabs.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-textarea.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-tooltip.entry.esm.js.map +1 -1
- package/dist/pine-core/pine-core.css +1 -1
- package/dist/pine-core/pine-core.esm.js +1 -1
- package/dist/types/components/pds-checkbox/pds-checkbox.d.ts +1 -0
- package/dist/types/components/pds-chip/pds-chip.d.ts +3 -2
- package/dist/types/components/pds-combobox/pds-combobox.d.ts +56 -2
- package/dist/types/components/pds-popover/pds-popover.d.ts +33 -2
- package/dist/types/components/pds-popover/popover-interface.d.ts +8 -0
- package/dist/types/components/pds-radio/pds-radio.d.ts +3 -0
- package/dist/types/components/pds-select/pds-select.d.ts +6 -0
- package/dist/types/components/pds-switch/pds-switch.d.ts +1 -0
- package/dist/types/components/pds-textarea/pds-textarea.d.ts +1 -0
- package/dist/types/components.d.ts +94 -10
- package/dist/types/utils/form.d.ts +9 -0
- package/dist/types/utils/types.d.ts +2 -0
- package/hydrate/index.js +629 -101
- package/hydrate/index.mjs +629 -101
- package/package.json +2 -2
- package/dist/cjs/form-Bx4nzJBo.js.map +0 -1
- package/dist/cjs/index-CTirFLR-.js.map +0 -1
- package/dist/esm/form-DTL_39D_.js +0 -32
- package/dist/esm/form-DTL_39D_.js.map +0 -1
- package/dist/esm/index-D4MkIUXU.js.map +0 -1
- package/dist/esm-es5/form-DTL_39D_.js +0 -2
- package/dist/esm-es5/form-DTL_39D_.js.map +0 -1
- package/dist/esm-es5/index-D4MkIUXU.js.map +0 -1
- package/dist/pine-core/p-0075bbbe.system.entry.js +0 -2
- package/dist/pine-core/p-0075bbbe.system.entry.js.map +0 -1
- package/dist/pine-core/p-0975b749.system.entry.js +0 -2
- package/dist/pine-core/p-0975b749.system.entry.js.map +0 -1
- package/dist/pine-core/p-0befa8f0.entry.js +0 -2
- package/dist/pine-core/p-0befa8f0.entry.js.map +0 -1
- package/dist/pine-core/p-0d18171c.system.entry.js +0 -2
- package/dist/pine-core/p-0d18171c.system.entry.js.map +0 -1
- package/dist/pine-core/p-1773aeac.system.entry.js +0 -2
- package/dist/pine-core/p-1773aeac.system.entry.js.map +0 -1
- package/dist/pine-core/p-265372d3.entry.js +0 -2
- package/dist/pine-core/p-265372d3.entry.js.map +0 -1
- package/dist/pine-core/p-29b2af94.entry.js +0 -2
- package/dist/pine-core/p-29b2af94.entry.js.map +0 -1
- package/dist/pine-core/p-2b452883.system.entry.js +0 -2
- package/dist/pine-core/p-2b452883.system.entry.js.map +0 -1
- package/dist/pine-core/p-30e8c3ea.entry.js +0 -2
- package/dist/pine-core/p-30e8c3ea.entry.js.map +0 -1
- package/dist/pine-core/p-31f6fcc1.entry.js +0 -2
- package/dist/pine-core/p-31f6fcc1.entry.js.map +0 -1
- package/dist/pine-core/p-3b20aa93.system.entry.js +0 -2
- package/dist/pine-core/p-3b20aa93.system.entry.js.map +0 -1
- package/dist/pine-core/p-3e7933bf.entry.js +0 -2
- package/dist/pine-core/p-3e7933bf.entry.js.map +0 -1
- package/dist/pine-core/p-4534e8cc.system.entry.js +0 -2
- package/dist/pine-core/p-4534e8cc.system.entry.js.map +0 -1
- package/dist/pine-core/p-4b3a8cab.entry.js +0 -2
- package/dist/pine-core/p-4b3a8cab.entry.js.map +0 -1
- package/dist/pine-core/p-4c8bebd8.system.entry.js +0 -2
- package/dist/pine-core/p-4c8bebd8.system.entry.js.map +0 -1
- package/dist/pine-core/p-4dda1edf.entry.js +0 -2
- package/dist/pine-core/p-4dda1edf.entry.js.map +0 -1
- package/dist/pine-core/p-4e55730d.entry.js +0 -2
- package/dist/pine-core/p-4e55730d.entry.js.map +0 -1
- package/dist/pine-core/p-56f6f106.entry.js +0 -2
- package/dist/pine-core/p-56f6f106.entry.js.map +0 -1
- package/dist/pine-core/p-5cc0244d.system.entry.js +0 -2
- package/dist/pine-core/p-5cc0244d.system.entry.js.map +0 -1
- package/dist/pine-core/p-74f03e75.entry.js +0 -2
- package/dist/pine-core/p-74f03e75.entry.js.map +0 -1
- package/dist/pine-core/p-7b0517e5.system.entry.js +0 -2
- package/dist/pine-core/p-7b0517e5.system.entry.js.map +0 -1
- package/dist/pine-core/p-7b66bc50.entry.js +0 -3
- package/dist/pine-core/p-7b66bc50.entry.js.map +0 -1
- package/dist/pine-core/p-7eb22880.entry.js +0 -2
- package/dist/pine-core/p-7eb22880.entry.js.map +0 -1
- package/dist/pine-core/p-8501429f.entry.js +0 -2
- package/dist/pine-core/p-8501429f.entry.js.map +0 -1
- package/dist/pine-core/p-94fe15b0.system.entry.js +0 -2
- package/dist/pine-core/p-94fe15b0.system.entry.js.map +0 -1
- package/dist/pine-core/p-95aee0b1.entry.js +0 -2
- package/dist/pine-core/p-95aee0b1.entry.js.map +0 -1
- package/dist/pine-core/p-B02VgXkx.system.js.map +0 -1
- package/dist/pine-core/p-BFiM1S8V.system.js.map +0 -1
- package/dist/pine-core/p-BG7_qxVr.system.js +0 -2
- package/dist/pine-core/p-BG7_qxVr.system.js.map +0 -1
- package/dist/pine-core/p-BJhtHwq5.system.js.map +0 -1
- package/dist/pine-core/p-BQFgzIQT.system.js.map +0 -1
- package/dist/pine-core/p-BSkbMuB5.system.js.map +0 -1
- package/dist/pine-core/p-BigOVPun.system.js.map +0 -1
- package/dist/pine-core/p-BmFGXXkm.system.js.map +0 -1
- package/dist/pine-core/p-CHVzHNgU.system.js.map +0 -1
- package/dist/pine-core/p-CV0Lw9gs.system.js.map +0 -1
- package/dist/pine-core/p-CZqgW7e3.system.js.map +0 -1
- package/dist/pine-core/p-Cc1q-FuD.system.js.map +0 -1
- package/dist/pine-core/p-D3SrjYeb.system.js.map +0 -1
- package/dist/pine-core/p-D4MkIUXU.js.map +0 -1
- package/dist/pine-core/p-D9veIL-g.system.js.map +0 -1
- package/dist/pine-core/p-DGFR-x7P.system.js.map +0 -1
- package/dist/pine-core/p-DTL_39D_.js +0 -2
- package/dist/pine-core/p-DTL_39D_.js.map +0 -1
- package/dist/pine-core/p-DeR0sSWy.system.js.map +0 -1
- package/dist/pine-core/p-Df597YUK.system.js.map +0 -1
- package/dist/pine-core/p-Ek6vvXfI.system.js.map +0 -1
- package/dist/pine-core/p-WO5h6NYA.system.js.map +0 -1
- package/dist/pine-core/p-Z5rOSkoA.system.js.map +0 -1
- package/dist/pine-core/p-a5cf0088.system.entry.js +0 -2
- package/dist/pine-core/p-a5cf0088.system.entry.js.map +0 -1
- package/dist/pine-core/p-aa2782b9.system.entry.js +0 -2
- package/dist/pine-core/p-aa2782b9.system.entry.js.map +0 -1
- package/dist/pine-core/p-b32d34d0.entry.js +0 -2
- package/dist/pine-core/p-b32d34d0.entry.js.map +0 -1
- package/dist/pine-core/p-b378ca03.entry.js +0 -2
- package/dist/pine-core/p-b378ca03.entry.js.map +0 -1
- package/dist/pine-core/p-b699a14f.system.entry.js +0 -2
- package/dist/pine-core/p-b699a14f.system.entry.js.map +0 -1
- package/dist/pine-core/p-c2d2fe64.system.entry.js +0 -2
- package/dist/pine-core/p-c2d2fe64.system.entry.js.map +0 -1
- package/dist/pine-core/p-d325287b.entry.js +0 -2
- package/dist/pine-core/p-d52d96b5.system.entry.js +0 -4
- package/dist/pine-core/p-d52d96b5.system.entry.js.map +0 -1
- package/dist/pine-core/p-d5c63517.system.entry.js +0 -2
- package/dist/pine-core/p-d5c63517.system.entry.js.map +0 -1
- package/dist/pine-core/p-d65d252d.entry.js +0 -2
- package/dist/pine-core/p-d65d252d.entry.js.map +0 -1
- package/dist/pine-core/p-dbe41087.system.entry.js +0 -2
- package/dist/pine-core/p-dbe41087.system.entry.js.map +0 -1
- package/dist/pine-core/p-e03b7f4a.system.entry.js +0 -2
- package/dist/pine-core/p-e03b7f4a.system.entry.js.map +0 -1
- package/dist/pine-core/p-f6b269ac.entry.js +0 -2
- package/dist/pine-core/p-f6b269ac.entry.js.map +0 -1
- package/dist/pine-core/p-f70aef6e.system.entry.js +0 -2
- package/dist/pine-core/p-f70aef6e.system.entry.js.map +0 -1
- package/dist/pine-core/p-fd3d548f.entry.js +0 -2
- package/dist/pine-core/p-fd3d548f.entry.js.map +0 -1
- package/dist/pine-core/p-fddf82f8.entry.js +0 -2
- package/dist/pine-core/p-fddf82f8.entry.js.map +0 -1
- package/dist/pine-core/p-fdf22be1.system.entry.js +0 -2
- package/dist/pine-core/p-fdf22be1.system.entry.js.map +0 -1
- package/dist/pine-core/p-fe7ece91.system.entry.js +0 -2
- package/dist/pine-core/p-fe7ece91.system.entry.js.map +0 -1
- package/dist/pine-core/p-iM8w34Dq.system.js.map +0 -1
- package/dist/pine-core/p-kbAzjMDU.system.js.map +0 -1
- package/dist/pine-core/p-nawkAoxk.system.js.map +0 -1
- package/dist/pine-core/p-oDk-2Jyq.system.js.map +0 -1
- package/dist/pine-core/p-wlxYjeBe.system.js.map +0 -1
- /package/dist/pine-core/{p-af56cb57.entry.js.map → p-100de2b7.entry.js.map} +0 -0
- /package/dist/pine-core/{p-72d87dc6.system.entry.js.map → p-2054b5cb.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c0601420.system.entry.js.map → p-2aab28b1.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-a54d6a53.entry.js.map → p-88773b86.entry.js.map} +0 -0
- /package/dist/pine-core/{p-46820152.entry.js.map → p-a3785977.entry.js.map} +0 -0
- /package/dist/pine-core/{p-559b4ebc.entry.js.map → p-d1b27fa4.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c63e7909.system.entry.js.map → p-dace69e7.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ab4307c7.system.entry.js.map → p-e702a8dc.system.entry.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["labelCss","pdsSwitchCss","PdsSwitch","constructor","hostRef","this","inheritedAttributes","_type","checked","disabled","invalid","required","onSwitchUpdate","e","input","target","updateFormValue","pdsSwitchChange","emit","switchClassNames","switchClasses","helperMessage","undefined","connectedCallback","el","attachInternals","internals","exposeTypeProperty","componentDidLoad","checkedChanged","jest","process","_a","env","NODE_ENV","setFormValue","formValue","value","setValidity","formStateRestoreCallback","state","FormData","get","name","componentId","componentWillLoad","Object","assign","inheritAriaAttributes","render","h","Host","key","class","htmlFor","assignDescription","errorMessage","id","onChange","type","hideLabel","label","messageId","icon","danger","size"],"sources":["src/global/styles/utils/label.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n:host([aria-disabled=\"true\"]) label {\n color: var(--pine-color-text-label-disabled);\n}\n\n:host([aria-readonly=\"true\"]) {\n label {\n color: var(--pine-color-text-label-readonly);\n }\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n",":host {\n// Need discussions\n --sizing-input-toggle-size: calc(var(--pine-dimension-250) - (var(--pine-dimension-025) * 2));\n --pine-dimension-025: 2px;\n --spacing-message-inline: calc(var(--pine-dimension-450) + var(--pine-dimension-150));\n --number-transition-timing: 0.15s ease-out;\n\n align-items: flex-start;\n color: var(--pine-color-text);\n display: inline-flex;\n flex-flow: row wrap;\n position: relative;\n}\n\n:host(.pds-switch--error) {\n color: var(--pine-color-text-message-danger);\n\n input,\n input:checked,\n input:hover:not(:disabled):not(:checked) {\n background-color: var(--pine-color-danger);\n }\n\n input:focus-visible:not(:disabled):not(:checked) {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n\n label {\n color: var(--color-text-error);\n }\n}\n\n// switch container\ninput {\n appearance: none;\n background: var(--pine-color-neutral);\n border: 0;\n border-radius: var(--pine-dimension-sm);\n cursor: pointer;\n display: inline-block;\n flex-shrink: 0;\n height: var(--pine-dimension-250);\n margin: 0;\n padding: 0;\n position: relative;\n transition: var(--number-transition-timing);\n transition-property: background, border, color;\n width: var(--pine-dimension-450);\n\n // switch toggle\n &::after {\n background: var(--pine-color-secondary);\n border-radius: var(--pine-border-radius-full);\n box-shadow: var(--pine-box-shadow);\n content: \"\";\n display: block;\n height: var(--sizing-input-toggle-size);\n inset-block-start: 50%;\n inset-inline-start: 50%;\n position: absolute;\n transform: translate3d(-100%, -50%, 0);\n transition: transform var(--number-transition-timing);\n width: var(--sizing-input-toggle-size);\n }\n}\n\nlabel {\n display: flex;\n gap: var(--pine-dimension-150);\n\n .pds-switch--error & {\n color: inherit;\n }\n}\n\n.visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: polygon(0 0, 0 0, 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n// Help and error messages\n.pds-switch__message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-start: var(--pine-dimension-xs);\n margin-inline-start: var(--spacing-message-inline);\n width: 100%;\n\n + .pds-switch__message {\n margin-block-start: var(--spacing-message-inline);\n }\n}\n\n.pds-switch__message--error {\n color: inherit;\n display: flex;\n gap: var(--pine-dimension-2xs);\n\n pds-icon {\n margin-block-start: var(--pine-dimension-025);\n }\n}\n\n// Disabled state\ninput:disabled {\n background-color: var(--pine-color-neutral-disabled);\n cursor: not-allowed;\n\n ~ label {\n cursor: initial;\n }\n\n &:hover::after {\n background-color: var(--pine-color-background-container-disabled);\n }\n\n .pds-switch__message {\n color: initial;\n }\n}\n\n// Hover state\ninput:hover:not(:disabled) {\n background-color: var(--pine-color-neutral-hover);\n}\n\n // Focus state\ninput:focus-visible:not(:disabled) {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n}\n\n// 'Checked' state\n// switch toggle\ninput:checked::after {\n transform: translate3d(0, -50%, 0);\n}\n\n// switch container\ninput:checked:not(:disabled) {\n background-color: currentColor;\n color: var(--pine-color-accent);\n\n &:hover {\n border-color: currentColor;\n color: var(--pine-color-accent-hover);\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, Watch } from '@stencil/core';\nimport { assignDescription, messageId, exposeTypeProperty } from '../../utils/form';\nimport { danger } from '@pine-ds/icons/icons';\n\nimport { inheritAriaAttributes } from '@utils/attributes';\nimport type { Attributes } from '@utils/attributes';\n\n@Component({\n tag: 'pds-switch',\n styleUrls: ['../../global/styles/utils/label.scss', 'pds-switch.scss'],\n shadow: true,\n formAssociated: true,\n})\nexport class PdsSwitch {\n private inheritedAttributes: Attributes = {};\n private internals?: ElementInternals;\n private readonly _type = 'checkbox' as const;\n\n @Element() el: HTMLPdsSwitchElement;\n\n /**\n * A unique identifier used for the underlying component `id` attribute and the label `for` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines the input 'checked' state.\n */\n @Prop({ mutable: true }) checked = false;\n\n /**\n * Determines the input 'disabled' state, preventing user interaction.\n */\n @Prop() disabled? = false;\n\n /**\n * Displays message text describing an invalid state.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Visually hides the label text for instances where only the switch should be displayed. Label remains accessible to assistive technology such as screen readers.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * Displays help text for additional description of an input.\n */\n @Prop() helperMessage: string;\n\n /**\n * Determines the input 'invalid' state, signifying an error is present.\n */\n @Prop() invalid? = false;\n\n /**\n * Displays text to describe the input.\n */\n @Prop() label!: string;\n\n /**\n * Identifies form data and unifies a group of radio inputs for toggling a single property/value.\n */\n @Prop() name: string;\n\n /**\n * Determines the 'required' state of the input.\n */\n @Prop() required? = false;\n\n /**\n * Provides input with a string submitted in form data.\n */\n @Prop() value: string;\n\n\n /**\n * Emits an event on input change.\n */\n @Event() pdsSwitchChange: EventEmitter<InputEvent>;\n\n private onSwitchUpdate = (e: Event) => {\n if (this.disabled) return;\n\n const input = e.target as HTMLInputElement;\n this.checked = input.checked;\n\n this.updateFormValue();\n\n this.pdsSwitchChange.emit(e as InputEvent);\n };\n\n private switchClassNames = () => {\n let switchClasses = `pds-switch`;\n\n if (this.invalid === true) {\n switchClasses += \" pds-switch--error\";\n }\n if (this.helperMessage !== undefined) {\n switchClasses += \" pds-switch--message\";\n }\n return switchClasses;\n };\n\n connectedCallback() {\n if (this.el.attachInternals) {\n this.internals = this.el.attachInternals();\n }\n\n // Expose type property on the element instance to match native form element behavior\n exposeTypeProperty(this.el, () => this._type);\n }\n\n componentDidLoad() {\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged() {\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (typeof jest !== 'undefined' || typeof process !== 'undefined' && process.env?.NODE_ENV === 'test') {\n return;\n }\n\n if (this.internals && this.internals.setFormValue) {\n // For switches, only send the value when checked, otherwise send null\n const formValue = this.checked ? (this.value || 'on') : null;\n this.internals.setFormValue(formValue);\n }\n\n if (this.internals && this.internals.setValidity) {\n this.internals.setValidity({});\n }\n }\n\n formStateRestoreCallback(state: string | FormData | null) {\n if (state instanceof FormData) {\n // For switches, restore if the value exists in FormData\n const value = this.value || 'on';\n this.checked = state.get(this.name || this.componentId) === value;\n } else if (typeof state === 'string') {\n // Restore from string state\n this.checked = state === (this.value || 'on');\n }\n }\n\n componentWillLoad() {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el)\n }\n }\n\n render() {\n return (\n <Host class={this.switchClassNames()} aria-disabled={this.disabled ? 'true' : null}>\n <label htmlFor={this.componentId}>\n <input\n aria-describedby={assignDescription(this.componentId, this.invalid, this.errorMessage || this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n checked={this.checked}\n class=\"pds-switch__input\"\n disabled={this.disabled}\n id={this.componentId}\n name={this.name ? this.name : this.componentId}\n onChange={this.onSwitchUpdate}\n required={this.required}\n type=\"checkbox\"\n value={this.value}\n {...this.inheritedAttributes}\n />\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {this.helperMessage &&\n <div\n class={`pds-switch__message`}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-switch__message pds-switch__message--error`}\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </div>\n }\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,h as s,H as r,g as a}from"./p-Bf1dou5H.js";import{h as t}from"./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,h as s,H as r,g as a}from"./p-Bf1dou5H.js";import{h as t}from"./p-D4zJBIgl.js";const i=".pds-sortable-item.sc-pds-sortable-item-h{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;padding-block:var(--pine-dimension-xs);padding-inline:var(--pine-dimension-md)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__actions.sc-pds-sortable-item{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-padding-start:var(--pine-dimension-md);padding-inline-start:var(--pine-dimension-md)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{line-height:1;-webkit-margin-end:var(--pine-dimension-md);margin-inline-end:var(--pine-dimension-md)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:first-child{border-start-end-radius:calc(var(--pine-dimension-xs) * 1.25);border-start-start-radius:calc(var(--pine-dimension-xs) * 1.25)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:last-child{border-end-end-radius:calc(var(--pine-dimension-xs) * 1.25);border-end-start-radius:calc(var(--pine-dimension-xs) * 1.25)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h{-webkit-border-after:var(--pine-border);border-block-end:var(--pine-border)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h:last-child{-webkit-border-after:0;border-block-end:0}.pds-sortable--handle-type-row .pds-sortable-item.sc-pds-sortable-item-h{cursor:-webkit-grab;cursor:grab}.pds-sortable--handle-type-handle .pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{cursor:-webkit-grab;cursor:grab}.pds-sortable-item.sc-pds-sortable-item-h:hover{background-color:var(--pine-color-background-container-hover)}.pds-sortable-item.sc-pds-sortable-item-h:hover pds-icon.sc-pds-sortable-item{color:var(--pine-color-info)}.pds-sortable-item--drag.sc-pds-sortable-item-h{background-color:var(--pine-color-background-container);border-radius:0;-webkit-box-shadow:var(--pine-box-shadow-400);box-shadow:var(--pine-box-shadow-400);opacity:1}.pds-sortable-item--ghost.sc-pds-sortable-item-h{background-color:var(--pine-color-background-container-hover);border-radius:0}";const d=class{constructor(s){e(this,s);this.enableActions=false;this.showHandle=false}componentWillRender(){this.sortableRef=this.el.closest("pds-sortable");if(this.sortableRef&&this.sortableRef.handleType==="handle"){this.showHandle=true}}render(){return s(r,{key:"5c5ada49c505d935bfe505997ab69e7eafc2f642",class:"pds-sortable-item",id:this.componentId},this.showHandle&&s("div",{key:"3041977b792e192192fa9c101f113eb42e87ceea",class:"pds-sortable-item__handle"},s("pds-icon",{key:"082a98c200abcc8023dc126ed83091167c59290e",icon:t})),s("slot",{key:"1e2b2154acee0c3ce09ec77b9949c761ff37181d"}),this.enableActions&&s("div",{key:"5b318f04eb9c74f660900163e17ba51e2c354538",class:"pds-sortable-item__actions"},s("slot",{key:"2c6631a860af0da48b3a007daeff69b59cfaff59",name:"sortable-item-actions"})))}get el(){return a(this)}};d.style=i;export{d as pds_sortable_item};
|
|
2
|
+
//# sourceMappingURL=p-a3785977.entry.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(t,i,r,e){function n(t){return t instanceof r?t:new r((function(i){i(t)}))}return new(r||(r=Promise))((function(r,o){function s(t){try{l(e.next(t))}catch(t){o(t)}}function a(t){try{l(e["throw"](t))}catch(t){o(t)}}function l(t){t.done?r(t.value):n(t.value).then(s,a)}l((e=e.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},e,n,o,s;return s={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(t){return function(i){return l([t,i])}}function l(a){if(e)throw new TypeError("Generator is already executing.");while(s&&(s=0,a[0]&&(r=0)),r)try{if(e=1,n&&(o=a[0]&2?n["return"]:a[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;if(n=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:r.label++;return{value:a[1],done:false};case 5:r.label++;n=a[1];a=[0];continue;case 7:a=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(a[0]===6&&r.label<o[1]){r.label=o[1];o=a;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(a);break}if(o[2])r.ops.pop();r.trys.pop();continue}a=i.call(t,r)}catch(t){a=[6,t];n=0}finally{e=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};System.register(["./p-Cxvdulqq.system.js"],(function(t){"use strict";var i,r,e,n,o;return{setters:[function(t){i=t.r;r=t.c;e=t.h;n=t.H;o=t.g}],execute:function(){var s='@charset "UTF-8";:host{--color-background-default:var(--pine-color-white);background:var(--color-background-default);border-collapse:separate;border-radius:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;display:table;width:100%}:host(:focus-visible){outline:var(--pine-outline-focus)}:host(.pds-table-responsive-host){border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;max-width:100% !important;overflow:hidden !important;position:relative !important;width:100% !important}.pds-table-responsive-container{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;overflow-x:auto !important;overflow-y:visible !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper .pds-table{display:table !important;min-width:-webkit-max-content !important;min-width:-moz-max-content !important;min-width:max-content !important;table-layout:auto !important;white-space:nowrap !important;width:100% !important}.scroll-shadow-left,.scroll-shadow-right{height:100%;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-transition:opacity 0.1s ease;transition:opacity 0.1s ease;width:4px;z-index:var(--pine-z-index)}.scroll-shadow-left{background:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent);border-bottom-left-radius:inherit;border-top-left-radius:inherit;left:0}.scroll-shadow-right{background:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);border-bottom-right-radius:inherit;border-top-right-radius:inherit;right:0}';var a=t("pds_table",function(){function t(t){i(this,t);this.pdsTableSelect=r(this,"pdsTableSelect");this.pdsTableSelectAll=r(this,"pdsTableSelectAll");this.scrollContainer=null;this._responsiveHandleScroll=null;this._responsiveHandleResize=null;this._responsiveResizeObserver=null;this._teardownResponsive=null;this.sortingColumn=null;this.sortingDirection="asc"}t.prototype.componentWillLoad=function(){this.sortingColumn=null};t.prototype.componentDidLoad=function(){if(this.responsive){this.setupResponsiveScrolling()}};t.prototype.disconnectedCallback=function(){if(this._teardownResponsive){this._teardownResponsive();this._teardownResponsive=null}};t.prototype.setupResponsiveScrolling=function(){var t=this;var i,r,e;var n=(i=this.el.shadowRoot)===null||i===void 0?void 0:i.querySelector(".pds-table-responsive-container");var o=(r=this.el.shadowRoot)===null||r===void 0?void 0:r.querySelector(".scroll-shadow-left");var s=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector(".scroll-shadow-right");if(!n||!o||!s)return;this.scrollContainer=n;this._responsiveHandleScroll=function(){if(!t.scrollContainer)return;var i=t.scrollContainer.scrollLeft;var r=t.scrollContainer.scrollWidth-t.scrollContainer.clientWidth;o.style.opacity=i>0&&!t.fixedColumn?"1":"0";s.style.opacity=r>0&&i<r-1?"1":"0"};this.scrollContainer.addEventListener("scroll",this._responsiveHandleScroll,{passive:true});if(typeof window!=="undefined"&&window.ResizeObserver){try{this._responsiveResizeObserver=new ResizeObserver((function(){var i;(i=t._responsiveHandleScroll)===null||i===void 0?void 0:i.call(t)}));this._responsiveResizeObserver.observe(this.scrollContainer)}catch(t){}}if(typeof window!=="undefined"){this._responsiveHandleResize=function(){var i;(i=t._responsiveHandleScroll)===null||i===void 0?void 0:i.call(t)};window.addEventListener("resize",this._responsiveHandleResize)}this._teardownResponsive=function(){if(t.scrollContainer&&t._responsiveHandleScroll){t.scrollContainer.removeEventListener("scroll",t._responsiveHandleScroll);t.scrollContainer=null}if(t._responsiveResizeObserver){t._responsiveResizeObserver.disconnect();t._responsiveResizeObserver=null}if(typeof window!=="undefined"&&t._responsiveHandleResize){window.removeEventListener("resize",t._responsiveHandleResize);t._responsiveHandleResize=null}t._responsiveHandleScroll=null};this._responsiveHandleScroll()};t.prototype.classNames=function(){var t=["pds-table"];if(this.compact){t.push("is-compact")}if(this.responsive){t.push("is-responsive")}return t.join(" ")};t.prototype.sortTable=function(t,i){var r=this.el.querySelector("pds-table-body");var e=Array.from(r.querySelectorAll("pds-table-row"));var n=Array.from(this.el.querySelectorAll("pds-table-head-cell[sortable]"));var o=n.find((function(i){return i.innerText.trim()===t}));if(!o){console.warn('Column "'.concat(t,'" not found.'));return}var s=n.indexOf(o);e.sort((function(t,r){var e=t.querySelector("pds-table-cell:nth-child(".concat(s+1,")")).textContent.trim();var n=r.querySelector("pds-table-cell:nth-child(".concat(s+1,")")).textContent.trim();if(i==="asc"){return e.localeCompare(n,undefined,{sensitivity:"base"})}else{return n.localeCompare(e,undefined,{sensitivity:"base"})}}));r.innerHTML="";e.forEach((function(t){r.appendChild(t)}))};t.prototype.handleTableSort=function(t){var i=t.detail.direction;this.sortTable(t.detail.column,i);this.sortingColumn=t.detail.column;this.sortingDirection=i};t.prototype.handleTableSelectAll=function(t){if(t.defaultPrevented)return;var i=this.el.querySelector("pds-table-body");var r=Array.from(i.querySelectorAll("pds-table-row"));r.forEach((function(i){i.isSelected=t.detail.isSelected}))};t.prototype.handleTableSelect=function(t){return __awaiter(this,void 0,void 0,(function(){var i,r,e,n,o;return __generator(this,(function(s){if(t.defaultPrevented)return[2];i=this.el.querySelectorAll("pds-table-row");r=Array.from(i).every((function(t){return t.isSelected}));e=Array.from(i).every((function(t){return!t.isSelected}));n=this.el.querySelector("pds-table-head");if(!n)return[2];o=n.shadowRoot.querySelector("pds-checkbox");o.checked=r;o.indeterminate=!r&&!e;return[2]}))}))};t.prototype.render=function(){if(this.responsive){return e(n,{class:"pds-table is-responsive pds-table-responsive-host",id:this.componentId,role:"grid",selectable:this.selectable,tabindex:"0",part:"table responsive-table"},e("div",{class:"scroll-shadow-left",part:"scroll-shadow-left"}),e("div",{class:"scroll-shadow-right",part:"scroll-shadow-right"}),e("div",{class:"pds-table-responsive-container",part:"responsive-container"},e("div",{class:"pds-table-responsive-wrapper",part:"responsive-wrapper"},e("div",{class:this.classNames(),part:"table-inner"},e("slot",null)))))}return e(n,{class:this.classNames(),id:this.componentId,role:"grid",selectable:this.selectable,tabindex:"0",part:"table"},e("slot",null))};Object.defineProperty(t.prototype,"el",{get:function(){return o(this)},enumerable:false,configurable:true});return t}());a.style=s}}}));
|
|
2
|
+
//# sourceMappingURL=p-a707a7da.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pdsTableCss","PdsTable","exports","class_1","hostRef","this","scrollContainer","_responsiveHandleScroll","_responsiveHandleResize","_responsiveResizeObserver","_teardownResponsive","sortingColumn","sortingDirection","prototype","componentWillLoad","componentDidLoad","responsive","setupResponsiveScrolling","disconnectedCallback","_this","container","_a","el","shadowRoot","querySelector","leftShadow","_b","rightShadow","_c","scrollLeft","maxScrollLeft","scrollWidth","clientWidth","style","opacity","fixedColumn","addEventListener","passive","window","ResizeObserver","call","observe","error","removeEventListener","disconnect","classNames","compact","push","join","sortTable","column","direction","tableBody","tableRows","Array","from","querySelectorAll","columnHeaderCells","columnHeaderCell","find","cell","innerText","trim","console","warn","concat","columnIndex","indexOf","sort","a","b","valueA","textContent","valueB","localeCompare","undefined","sensitivity","innerHTML","forEach","row","appendChild","handleTableSort","event","detail","handleTableSelectAll","defaultPrevented","pdsTableBody","isSelected","handleTableSelect","allTableRows","allSelectedRows","every","noneSelectedRows","pdsTableHead","headerCheckbox","checked","indeterminate","render","h","Host","class","id","componentId","role","selectable","tabindex","part"],"sources":["src/components/pds-table/pds-table.scss?tag=pds-table&encapsulation=shadow","src/components/pds-table/pds-table.tsx"],"sourcesContent":[":host {\n --color-background-default: var(--pine-color-white);\n\n background: var(--color-background-default);\n border-collapse: separate;\n border-radius: inherit;\n box-sizing: border-box;\n display: table;\n width: 100%;\n}\n\n:host(:focus-visible) {\n outline: var(--pine-outline-focus);\n}\n\n/*\n * Responsive Table Architecture\n *\n * When responsive=true, the table uses a nested structure to provide horizontal scrolling\n * while maintaining proper width behavior and scroll shadows:\n *\n * Host (.pds-table-responsive-host)\n * ├── Shadow Left (positioned fixed to left edge)\n * ├── Shadow Right (positioned fixed to right edge)\n * └── Container (.pds-table-responsive-container)\n * └── Wrapper (.pds-table-responsive-wrapper)\n * └── Table (.pds-table)\n *\n * - Host: Constrains everything to parent width, clips shadows to border-radius\n * - Shadows: Stay fixed during scroll, provide visual scroll indicators\n * - Container: Handles horizontal scrolling (overflow-x: auto)\n * - Table: Expands to full width or scrolls based on content\n */\n:host(.pds-table-responsive-host) {\n border-radius: inherit;\n box-sizing: border-box !important;\n display: block !important;\n max-width: 100% !important;\n overflow: hidden !important;\n position: relative !important;\n width: 100% !important;\n}\n\n.pds-table-responsive-container {\n border-radius: inherit;\n box-sizing: border-box !important;\n overflow-x: auto !important;\n overflow-y: visible !important;\n position: relative !important;\n width: 100% !important;\n}\n\n.pds-table-responsive-wrapper {\n border-radius: inherit;\n box-sizing: border-box !important;\n display: block !important;\n position: relative !important;\n width: 100% !important;\n}\n\n.pds-table-responsive-wrapper .pds-table {\n display: table !important;\n min-width: max-content !important;\n table-layout: auto !important;\n white-space: nowrap !important;\n width: 100% !important;\n}\n\n/* Shadows positioned relative to host (non-scrolling), covering container edges */\n.scroll-shadow-left,\n.scroll-shadow-right {\n height: 100%;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n transition: opacity 0.1s ease;\n width: 4px;\n z-index: var(--pine-z-index);\n}\n\n.scroll-shadow-left {\n background: linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent);\n border-bottom-left-radius: inherit;\n border-top-left-radius: inherit;\n left: 0;\n}\n\n.scroll-shadow-right {\n background: linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);\n border-bottom-right-radius: inherit;\n border-top-right-radius: inherit;\n right: 0;\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'pds-table',\n styleUrls: ['pds-table.scss'],\n shadow: true,\n})\nexport class PdsTable {\n @Element() el: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private _responsiveHandleScroll: (() => void) | null = null;\n private _responsiveHandleResize: (() => void) | null = null;\n private _responsiveResizeObserver: ResizeObserver | null = null;\n private _teardownResponsive: (() => void) | null = null;\n\n /**\n * Determines if the table displays with reduced table cell padding.\n */\n @Prop() compact: boolean;\n\n /**\n * A unique identifier used for the table `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Enables the table to be responsive by horizontally scrolling on smaller screens.\n */\n @Prop() responsive: boolean;\n\n /**\n * Determines if the should display a fixed first column.\n */\n @Prop() fixedColumn: boolean;\n\n /**\n * Determines if the table displays checkboxes for selectable rows.\n */\n @Prop() selectable: boolean;\n\n /**\n * The name of the column being sorted.\n * @defaultValue null\n */\n @State() sortingColumn: string | null = null;\n\n /**\n * The direction of sorting.\n * @defaultValue 'asc'\n */\n @State() sortingDirection: 'asc' | 'desc' = 'asc';\n\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the rowIndex and selected value.\n */\n @Event() pdsTableSelect: EventEmitter<{ rowIndex: number; isSelected: boolean }>;\n\n /**\n * Event that is emitted when the select all checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableSelectAll: EventEmitter<{ isSelected: boolean }>;\n\n componentWillLoad() {\n this.sortingColumn = null;\n }\n\n componentDidLoad() {\n if (this.responsive) {\n this.setupResponsiveScrolling();\n }\n }\n\n disconnectedCallback() {\n if (this._teardownResponsive) {\n this._teardownResponsive();\n this._teardownResponsive = null;\n }\n }\n\n /**\n * Sets up responsive scrolling behavior for the table.\n *\n * This method creates a horizontal scrolling system where:\n * - The table content can scroll horizontally when it exceeds the container width\n * - Scroll shadows appear at the left/right edges to indicate scrollable content\n * - Fixed columns remain sticky during horizontal scrolling\n * - Shadows respect border-radius and don't appear when there's nothing to scroll\n *\n * Architecture:\n * - Host element: Contains everything, respects parent constraints\n * - Container element: Handles horizontal scrolling (overflow-x: auto)\n * - Shadow elements: Positioned fixed relative to host, show scroll indicators\n *\n * @private\n */\n private setupResponsiveScrolling() {\n const container = this.el.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n const leftShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-left') as HTMLElement;\n const rightShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-right') as HTMLElement;\n\n if (!container || !leftShadow || !rightShadow) return;\n\n // Store container reference for cleanup\n this.scrollContainer = container;\n\n /**\n * Updates the visibility of scroll shadows based on current scroll position.\n * Left shadow: Shows when scrolled away from start (hidden if fixedColumn is enabled)\n * Right shadow: Shows when there's content to scroll and not at the end\n */\n this._responsiveHandleScroll = () => {\n if (!this.scrollContainer) return;\n\n const scrollLeft = this.scrollContainer.scrollLeft;\n const maxScrollLeft = this.scrollContainer.scrollWidth - this.scrollContainer.clientWidth;\n\n // Show left shadow when scrolled away from start, but not if there's a fixed column\n leftShadow.style.opacity = (scrollLeft > 0 && !this.fixedColumn) ? '1' : '0';\n\n // Show right shadow only if there's content to scroll AND not at end\n rightShadow.style.opacity = (maxScrollLeft > 0 && scrollLeft < maxScrollLeft - 1) ? '1' : '0';\n };\n\n // Add scroll event listener to container element\n this.scrollContainer.addEventListener('scroll', this._responsiveHandleScroll, { passive: true });\n\n // Add resize observer to update shadows when container size changes\n if (typeof window !== 'undefined' && window.ResizeObserver) {\n try {\n this._responsiveResizeObserver = new ResizeObserver(() => {\n this._responsiveHandleScroll?.();\n });\n this._responsiveResizeObserver.observe(this.scrollContainer);\n } catch (error) {\n // ResizeObserver not available in some environments (e.g., tests)\n // Fall back to window resize listener only\n }\n }\n\n // Listen for window resize as fallback\n if (typeof window !== 'undefined') {\n this._responsiveHandleResize = () => {\n this._responsiveHandleScroll?.();\n };\n window.addEventListener('resize', this._responsiveHandleResize);\n }\n\n // Create teardown function for cleanup\n this._teardownResponsive = () => {\n if (this.scrollContainer && this._responsiveHandleScroll) {\n this.scrollContainer.removeEventListener('scroll', this._responsiveHandleScroll);\n this.scrollContainer = null;\n }\n\n if (this._responsiveResizeObserver) {\n this._responsiveResizeObserver.disconnect();\n this._responsiveResizeObserver = null;\n }\n\n if (typeof window !== 'undefined' && this._responsiveHandleResize) {\n window.removeEventListener('resize', this._responsiveHandleResize);\n this._responsiveHandleResize = null;\n }\n\n this._responsiveHandleScroll = null;\n };\n\n // Initial check after setup\n this._responsiveHandleScroll();\n }\n\n\n private classNames() {\n const classNames = ['pds-table'];\n\n if (this.compact) {\n classNames.push('is-compact');\n }\n\n if (this.responsive) {\n classNames.push('is-responsive');\n }\n\n return classNames.join(' ');\n }\n\n private sortTable(column: string, direction: 'asc' | 'desc') {\n const tableBody = this.el.querySelector('pds-table-body');\n\n // Get the rows in the table body\n const tableRows = Array.from(tableBody.querySelectorAll('pds-table-row'));\n\n // Find the column index based on the column name\n const columnHeaderCells: HTMLElement[] = Array.from(\n this.el.querySelectorAll('pds-table-head-cell[sortable]')\n );\n\n const columnHeaderCell = columnHeaderCells.find(\n (cell) => cell.innerText.trim() === column\n );\n\n if (!columnHeaderCell) {\n console.warn(`Column \"${column}\" not found.`);\n return;\n }\n\n const columnIndex = columnHeaderCells.indexOf(columnHeaderCell);\n\n // Sort the rows based on the content of the specified column\n tableRows.sort((a, b) => {\n const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n\n if (direction === 'asc') {\n return valueA.localeCompare(valueB, undefined, { sensitivity: 'base' });\n } else {\n return valueB.localeCompare(valueA, undefined, { sensitivity: 'base' });\n }\n });\n\n // Clear and append the sorted rows back to the table body\n tableBody.innerHTML = '';\n tableRows.forEach((row) => {\n tableBody.appendChild(row);\n });\n }\n\n @Listen('pdsTableSort')\n handleTableSort(event: CustomEvent<{ column: string; direction: 'asc' | 'desc' }>) {\n const { direction } = event.detail;\n this.sortTable(event.detail.column, direction);\n this.sortingColumn = event.detail.column;\n this.sortingDirection = direction;\n }\n\n @Listen('pdsTableSelectAll')\n handleTableSelectAll(event: CustomEvent<{ isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const pdsTableBody = this.el.querySelector('pds-table-body');\n const tableRows = Array.from(pdsTableBody.querySelectorAll('pds-table-row'));\n\n tableRows.forEach((row) => {\n row.isSelected = event.detail.isSelected;\n });\n }\n\n @Listen('pdsTableRowSelected')\n async handleTableSelect(event: CustomEvent<{ rowIndex: number; isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const allTableRows = this.el.querySelectorAll('pds-table-row');\n const allSelectedRows = Array.from(allTableRows).every((row) => row.isSelected);\n const noneSelectedRows = Array.from(allTableRows).every((row) => !row.isSelected);\n const pdsTableHead = this.el.querySelector('pds-table-head');\n if (!pdsTableHead) return;\n\n const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');\n headerCheckbox.checked = allSelectedRows;\n headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;\n }\n\n render() {\n if (this.responsive) {\n return (\n <Host\n class=\"pds-table is-responsive pds-table-responsive-host\"\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table responsive-table\"\n >\n <div class=\"scroll-shadow-left\" part=\"scroll-shadow-left\"></div>\n <div class=\"scroll-shadow-right\" part=\"scroll-shadow-right\"></div>\n <div class=\"pds-table-responsive-container\" part=\"responsive-container\">\n <div class=\"pds-table-responsive-wrapper\" part=\"responsive-wrapper\">\n <div class={this.classNames()} part=\"table-inner\">\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n return (\n <Host\n class={this.classNames()}\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table\"\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as i,c as r,h as e,H as a,g as s}from"./p-Bf1dou5H.js";import{e as o,m as d,a as n}from"./p-DwjNklzi.js";import{i as c}from"./p-D4zJBIgl.js";const t=".sc-pds-radio-h{display:inline-block}[aria-disabled=true].sc-pds-radio-h label.sc-pds-radio{color:var(--pine-color-text-label-disabled)}[aria-readonly=true].sc-pds-radio-h label.sc-pds-radio{color:var(--pine-color-text-label-readonly)}label.sc-pds-radio{color:var(--pine-color-text-label);font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing)}";const l='.sc-pds-radio-h{--sizing-check-size:6px;--sizing-input-size:var(--pine-dimension-sm);--sizing-margin-block-start:6px;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.is-invalid.sc-pds-radio-h input.sc-pds-radio{border-color:var(--pine-color-border-danger)}.is-invalid.sc-pds-radio-h input.sc-pds-radio:checked{background:var(--pine-color-border-danger)}.is-invalid.sc-pds-radio-h input.sc-pds-radio:checked:hover{background:var(--pine-color-border-danger-hover);border-color:var(--pine-color-border-danger-hover)}.is-invalid.sc-pds-radio-h input.sc-pds-radio:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.is-invalid.sc-pds-radio-h label.sc-pds-radio,.is-invalid.sc-pds-radio-h .pds-radio__message--error.sc-pds-radio{color:var(--pine-color-text-message-danger)}input.sc-pds-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--pine-color-background-container);border:var(--pine-border);border-radius:var(--pine-border-radius-full);-ms-flex:none;flex:none;height:var(--sizing-input-size);margin:0;-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025);position:relative;width:var(--sizing-input-size)}input.sc-pds-radio:hover{background:var(--pine-color-background-container-hover);border:var(--pine-border-hover)}input.sc-pds-radio:checked{background:var(--pine-color-accent);border-color:var(--pine-color-accent)}input.sc-pds-radio:checked:hover{background:var(--pine-color-accent-hover);border-color:var(--pine-color-accent-hover)}input.sc-pds-radio:checked::after{background:var(--pine-color-background-container);border-radius:var(--pine-border-radius-full);content:"";display:block;height:var(--sizing-check-size);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:var(--sizing-check-size)}input.sc-pds-radio:disabled{background:var(--pine-color-background-container-disabled);border-color:var(--pine-color-border-disabled);cursor:not-allowed}input.sc-pds-radio:disabled:checked{background-color:var(--pine-color-accent-disabled);border-color:var(--pine-color-border-disabled)}input.sc-pds-radio:disabled:checked::after{border-color:var(--pine-color-border-disabled)}input.sc-pds-radio:disabled+label.sc-pds-radio{cursor:not-allowed}input.sc-pds-radio:disabled~.pds-radio__message.sc-pds-radio{color:var(--pine-color-text-message-disabled)}input.sc-pds-radio:focus-visible{outline:var(--pine-outline-focus)}label.sc-pds-radio{display:-ms-flexbox;display:flex;gap:var(--pine-dimension-xs)}.visually-hidden.sc-pds-radio{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pds-radio__message.sc-pds-radio{color:var(--pine-color-text-message);font:var(--pine-typography-body-sm-medium);-webkit-margin-before:var(--sizing-margin-block-start);margin-block-start:var(--sizing-margin-block-start);-webkit-margin-start:var(--pine-dimension-md);margin-inline-start:var(--pine-dimension-md);width:100%}.pds-radio__message--error.sc-pds-radio{display:-ms-flexbox;display:flex;font-size:var(--pine-font-size-body-sm);gap:var(--pine-dimension-2xs)}.pds-radio__message--error.sc-pds-radio pds-icon.sc-pds-radio{-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025)}';const p=class{constructor(e){i(this,e);this.pdsRadioChange=r(this,"pdsRadioChange");this._type="radio";this.checked=false;this.disabled=false;this.invalid=false;this.required=false;this.handleRadioChange=i=>{if(this.disabled){return}const r=i.target;const e=r.checked;this.pdsRadioChange.emit(e)}}classNames(){const i=[];if(this.invalid){i.push("is-invalid")}if(this.disabled){i.push("is-disabled")}return i.join(" ")}connectedCallback(){o(this.el,(()=>this._type))}render(){return e(a,{key:"06e5b348a9fe664ac157f0383dab869885644f28",class:this.classNames()},e("label",{key:"12d203aa9a181de09a4323b0644905f308209e10",htmlFor:this.componentId},e("input",{key:"693af2832937dfa368859bc5d34e33813093bd19","aria-describedby":n(this.componentId,this.invalid,this.helperMessage),"aria-invalid":this.invalid?"true":undefined,type:"radio",id:this.componentId,name:this.name,value:this.value,checked:this.checked,required:this.required,disabled:this.disabled,onChange:this.handleRadioChange}),e("span",{key:"12cbafe6f967b0336e12083e506d0347fd60bb1a",class:this.hideLabel?"visually-hidden":""},this.label)),this.helperMessage&&e("div",{key:"d4c416a2c24331bb23c6bd829aff51dfe142ac4a",class:"pds-radio__message",id:d(this.componentId,"helper")},this.helperMessage),this.errorMessage&&e("div",{key:"8b973854356bdf1d36401bb7f818bacf573da010",class:`pds-radio__message pds-radio__message--error`,id:d(this.componentId,"error"),"aria-live":"assertive"},e("pds-icon",{key:"85abae586504b4d64a19bf078ddd5fab099e4e06",icon:c,size:"small"}),this.errorMessage))}get el(){return s(this)}};p.style=t+l;export{p as pds_radio};
|
|
2
|
+
//# sourceMappingURL=p-acd87a10.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["labelCss","pdsRadioCss","PdsRadio","constructor","hostRef","this","_type","checked","disabled","invalid","required","handleRadioChange","e","target","isChecked","pdsRadioChange","emit","classNames","push","join","connectedCallback","exposeTypeProperty","el","render","h","Host","key","class","htmlFor","componentId","assignDescription","helperMessage","undefined","type","id","name","value","onChange","hideLabel","label","messageId","errorMessage","icon","danger","size"],"sources":["src/global/styles/utils/label.scss?tag=pds-radio&encapsulation=scoped","src/components/pds-radio/pds-radio.scss?tag=pds-radio&encapsulation=scoped","src/components/pds-radio/pds-radio.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n:host([aria-disabled=\"true\"]) label {\n color: var(--pine-color-text-label-disabled);\n}\n\n:host([aria-readonly=\"true\"]) {\n label {\n color: var(--pine-color-text-label-readonly);\n }\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n",":host {\n --sizing-check-size: 6px;\n --sizing-input-size: var(--pine-dimension-sm);\n --sizing-margin-block-start: 6px;\n\n align-items: center;\n display: flex;\n flex-flow: row wrap;\n}\n\n:host(.is-invalid) {\n input {\n border-color: var(--pine-color-border-danger);\n\n &:checked {\n background: var(--pine-color-border-danger);\n\n &:hover {\n background: var(--pine-color-border-danger-hover);\n border-color: var(--pine-color-border-danger-hover);\n }\n }\n\n &:focus-visible {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n }\n\n label,\n .pds-radio__message--error {\n color: var(--pine-color-text-message-danger);\n }\n}\n\ninput {\n appearance: none;\n background: var(--pine-color-background-container);\n border: var(--pine-border);\n border-radius: var(--pine-border-radius-full);\n flex: none;\n height: var(--sizing-input-size);\n margin: 0;\n margin-block-start: var(--pine-dimension-025);\n position: relative;\n width: var(--sizing-input-size);\n\n &:hover {\n background: var(--pine-color-background-container-hover);\n border: var(--pine-border-hover);\n }\n\n &:checked {\n background: var(--pine-color-accent);\n border-color: var(--pine-color-accent);\n\n &:hover {\n background: var(--pine-color-accent-hover);\n border-color: var(--pine-color-accent-hover);\n }\n\n &::after {\n background: var(--pine-color-background-container);\n border-radius: var(--pine-border-radius-full);\n content: \"\";\n display: block;\n height: var(--sizing-check-size);\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: var(--sizing-check-size);\n }\n }\n\n &:disabled {\n background: var(--pine-color-background-container-disabled);\n border-color: var(--pine-color-border-disabled);\n cursor: not-allowed;\n\n &:checked {\n background-color: var(--pine-color-accent-disabled);\n border-color: var(--pine-color-border-disabled);\n\n &::after {\n border-color: var(--pine-color-border-disabled);\n }\n }\n\n + label {\n cursor: not-allowed;\n }\n\n ~ .pds-radio__message {\n color: var(--pine-color-text-message-disabled);\n }\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n }\n\n}\n\nlabel {\n display: flex;\n gap: var(--pine-dimension-xs);\n}\n\n.visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: polygon(0 0, 0 0, 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n.pds-radio__message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-start: var(--sizing-margin-block-start);\n margin-inline-start: var(--pine-dimension-md);\n width: 100%;\n}\n\n.pds-radio__message--error {\n display: flex;\n font-size: var(--pine-font-size-body-sm);\n gap: var(--pine-dimension-2xs);\n\n pds-icon {\n margin-block-start: var(--pine-dimension-025);\n }\n}\n","import { Component, Host, h, Prop, Event, EventEmitter, Element } from '@stencil/core';\nimport { assignDescription, messageId, exposeTypeProperty } from '../../utils/form';\nimport { danger } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-radio',\n styleUrls: ['../../global/styles/utils/label.scss', 'pds-radio.scss'],\n scoped: true,\n})\nexport class PdsRadio {\n private readonly _type = 'radio' as const;\n\n @Element() el: HTMLPdsRadioElement;\n\n /**\n * Determines whether or not the radio is checked.\n * @defaultValue false\n */\n @Prop() checked = false;\n\n /**\n * A unique identifier used for the underlying component `id` attribute and the label `for` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines whether or not the radio is disabled.\n * @defaultValue false\n */\n @Prop() disabled = false;\n\n /**\n * Displays error message text describing an invalid state.\n */\n @Prop() errorMessage: string;\n\n /**\n * Displays helper message text below radio.\n */\n @Prop() helperMessage: string;\n\n /**\n * Determines whether or not the radio is invalid.\n * @defaultValue false\n */\n @Prop() invalid = false;\n\n /**\n * String used for label text next to radio.\n */\n @Prop() label: string;\n\n /**\n * Visually hides the label text for instances where only the radio should be displayed. Label remains accessible to assistive technology such as screen readers.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * String used for radio `name` attribute.\n */\n @Prop() name: string;\n\n /**\n * Determines whether or not the radio is required.\n * @defaultValue false\n */\n @Prop() required = false;\n\n /**\n * The value of the radio that is submitted with a form.\n */\n @Prop() value: string;\n\n\n /**\n * Emits a boolean indicating whether the checkbox is currently checked or unchecked.\n */\n @Event() pdsRadioChange: EventEmitter<boolean>;\n\n private handleRadioChange = (e: Event) => {\n if (this.disabled) {\n return;\n }\n\n const target = e.target as HTMLInputElement;\n const isChecked = target.checked;\n\n this.pdsRadioChange.emit(isChecked);\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.invalid) {\n classNames.push('is-invalid');\n }\n if (this.disabled) {\n classNames.push('is-disabled');\n }\n\n return classNames.join(' ');\n }\n\n connectedCallback() {\n // Expose type property on the element instance to match native form element behavior\n exposeTypeProperty(this.el, () => this._type);\n }\n\n render() {\n return (\n <Host class={this.classNames()}>\n <label htmlFor={this.componentId}>\n <input\n aria-describedby={assignDescription(this.componentId, this.invalid, this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n type=\"radio\"\n id={this.componentId}\n name={this.name}\n value={this.value}\n checked={this.checked}\n required={this.required}\n disabled={this.disabled}\n onChange={this.handleRadioChange}\n />\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {this.helperMessage &&\n <div\n class={'pds-radio__message'}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-radio__message pds-radio__message--error`}\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </div>\n }\n </Host>\n );\n }\n}\n"],"mappings":"sJAAA,MAAMA,EAAW,sXCAjB,MAAMC,EAAc,s4G,MCSPC,EAAQ,MALrB,WAAAC,CAAAC,G,uDAMmBC,KAAKC,MAAG,QAQjBD,KAAOE,QAAG,MAWVF,KAAQG,SAAG,MAgBTH,KAAOI,QAAG,MAqBZJ,KAAQK,SAAG,MAaXL,KAAAM,kBAAqBC,IAC3B,GAAIP,KAAKG,SAAU,CACjB,M,CAGF,MAAMK,EAASD,EAAEC,OACjB,MAAMC,EAAYD,EAAON,QAEzBF,KAAKU,eAAeC,KAAKF,EAAU,CA8DtC,CA3DS,UAAAG,GACN,MAAMA,EAAa,GAEnB,GAAIZ,KAAKI,QAAS,CAChBQ,EAAWC,KAAK,a,CAElB,GAAIb,KAAKG,SAAU,CACjBS,EAAWC,KAAK,c,CAGlB,OAAOD,EAAWE,KAAK,K,CAGzB,iBAAAC,GAEEC,EAAmBhB,KAAKiB,IAAI,IAAMjB,KAAKC,O,CAGzC,MAAAiB,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAOtB,KAAKY,cAChBO,EAAA,SAAAE,IAAA,2CAAOE,QAASvB,KAAKwB,aACnBL,EAAA,SAAAE,IAAA,8DACoBI,EAAkBzB,KAAKwB,YAAaxB,KAAKI,QAASJ,KAAK0B,eAAc,eACzE1B,KAAKI,QAAU,OAASuB,UACtCC,KAAK,QACLC,GAAI7B,KAAKwB,YACTM,KAAM9B,KAAK8B,KACXC,MAAO/B,KAAK+B,MACZ7B,QAASF,KAAKE,QACdG,SAAUL,KAAKK,SACfF,SAAUH,KAAKG,SACf6B,SAAUhC,KAAKM,oBAEjBa,EAAA,QAAAE,IAAA,2CAAMC,MAAOtB,KAAKiC,UAAY,kBAAoB,IAC/CjC,KAAKkC,QAGTlC,KAAK0B,eACJP,EAAA,OAAAE,IAAA,2CACEC,MAAO,qBACPO,GAAIM,EAAUnC,KAAKwB,YAAa,WAE/BxB,KAAK0B,eAGT1B,KAAKoC,cACJjB,EAAA,OAAAE,IAAA,2CACEC,MAAO,+CACPO,GAAIM,EAAUnC,KAAKwB,YAAa,SAAQ,YAC9B,aAEVL,EAAA,YAAAE,IAAA,2CAAUgB,KAAMC,EAAQC,KAAK,UAC5BvC,KAAKoC,c","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
System.register(["./p-Cxvdulqq.system.js"],(function(i){"use strict";var t,e,s,n;return{setters:[function(i){t=i.r;e=i.h;s=i.H;n=i.g}],execute:function(){var o=":host{--box-shadow-fixed:3px 3px 6px -2px rgba(0, 0, 0, 0.2);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);inset-inline-start:var(--pine-dimension-none);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}:host(.pds-table-cell--align-start){text-align:start}:host(.pds-table-cell--align-center){text-align:center}:host(.pds-table-cell--align-end){text-align:end}:host(.pds-table-cell--align-justify){text-align:justify}";var l=i("pds_table_cell",function(){function i(i){var e=this;t(this,i);this.scrollContainer=null;this.setupRetries=0;this.tableScrolling=false;this.handleScroll=function(){if(!e.scrollContainer){return}try{e.tableScrolling=e.scrollContainer.scrollLeft>0}catch(i){console.warn("Scroll handler error:",i)}}}i.prototype.componentWillRender=function(){this.tableRef=this.hostElement.closest("pds-table")};i.prototype.componentDidLoad=function(){if(this.tableRef&&this.tableRef.responsive&&this.tableRef.fixedColumn){this.setupScrollListener()}};i.prototype.disconnectedCallback=function(){this.cleanupScrollListener()};i.prototype.setupScrollListener=function(){var i=this;var t;if(!this.tableRef)return;var e=(t=this.tableRef.shadowRoot)===null||t===void 0?void 0:t.querySelector(".pds-table-responsive-container");if(e){this.scrollContainer=e;this.scrollContainer.addEventListener("scroll",this.handleScroll,{passive:true});this.handleScroll();this.setupRetries=0}else{this.setupTimer=window.setTimeout((function(){if(i.scrollContainer)return;i.setupRetries=(i.setupRetries||0)+1;if(i.setupRetries<=50){i.setupScrollListener()}else{console.warn("Failed to find responsive container after 50 attempts")}}),100)}};i.prototype.cleanupScrollListener=function(){if(this.scrollContainer){this.scrollContainer.removeEventListener("scroll",this.handleScroll);this.scrollContainer=null}if(this.setupTimer!==undefined){window.clearTimeout(this.setupTimer);this.setupTimer=undefined}this.setupRetries=0};i.prototype.classNames=function(){var i=[];if(this.tableRef&&this.tableRef.compact){i.push("is-compact")}if(this.cellAlign){i.push("pds-table-cell--align-".concat(this.cellAlign))}if(this.truncate){i.push("is-truncated")}if(this.tableRef&&this.tableRef.fixedColumn&&this.tableScrolling){i.push("has-scrolled")}return i.join(" ")};i.prototype.render=function(){return e(s,{key:"b1c76cfb3fa26b7e59586cfd693380701c9146ff",class:this.classNames(),role:"gridcell",part:"cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},e("slot",{key:"1a04730905bf7ad930141c1914f37dd7717570d8"}))};Object.defineProperty(i.prototype,"hostElement",{get:function(){return n(this)},enumerable:false,configurable:true});return i}());l.style=o}}}));
|
|
2
|
+
//# sourceMappingURL=p-ae4ec5cf.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pdsTableCellCss","PdsTableCell","exports","class_1","hostRef","_this","this","scrollContainer","setupRetries","tableScrolling","handleScroll","scrollLeft","error","console","warn","prototype","componentWillRender","tableRef","hostElement","closest","componentDidLoad","responsive","fixedColumn","setupScrollListener","disconnectedCallback","cleanupScrollListener","container","_a","shadowRoot","querySelector","addEventListener","passive","setupTimer","window","setTimeout","removeEventListener","undefined","clearTimeout","classNames","compact","push","cellAlign","concat","truncate","join","render","h","Host","key","class","role","part","style","selectable"],"sources":["src/components/pds-table/pds-table-cell/pds-table-cell.scss?tag=pds-table-cell&encapsulation=shadow","src/components/pds-table/pds-table-cell/pds-table-cell.tsx"],"sourcesContent":[":host {\n --box-shadow-fixed: 3px 3px 6px -2px rgba(0, 0, 0, 0.2);\n\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n inset-inline-start: var(--pine-dimension-none);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-sm);\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: 0;\n position: sticky;\n z-index: var(--pine-z-index-raised);\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-fixed);\n}\n\n:host(.is-truncated) {\n max-width: 100px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n:host(.has-checkbox) {\n vertical-align: middle;\n width: 16px;\n}\n\n// Text Alignment\n:host(.pds-table-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-cell--align-justify) {\n text-align: justify;\n}\n","import { Component, Element, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'pds-table-cell',\n styleUrls: ['pds-table-cell.scss'],\n shadow: true,\n})\nexport class PdsTableCell {\n @Element() hostElement: HTMLPdsTableCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Sets the text alignment within the cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Truncates content to a max width of 100px and adds an ellipsis.\n */\n @Prop() truncate: boolean;\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-cell--align-${this.cellAlign}`);\n }\n\n if (this.truncate) {\n classNames.push('is-truncated');\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"gridcell\"\n part=\"cell\"\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"0JAAA,IAAMA,EAAkB,qkC,ICOXC,EAAYC,EAAA,4BALzB,SAAAC,EAAAC,GAAA,IAAAC,EAAAC,K,UAQUA,KAAeC,gBAAuB,KAEtCD,KAAYE,aAAW,EAwEdF,KAAcG,eAAY,MA6BnCH,KAAYI,aAAG,WACrB,IAAKL,EAAKE,gBAAiB,CACzB,M,CAGF,IACEF,EAAKI,eAAiBJ,EAAKE,gBAAgBI,WAAa,C,CACxD,MAAOC,GACPC,QAAQC,KAAK,wBAAyBF,E,CAE1C,CAoBD,CAjICT,EAAAY,UAAAC,oBAAA,WACEV,KAAKW,SAAWX,KAAKY,YAAYC,QAAQ,Y,EAG3ChB,EAAAY,UAAAK,iBAAA,WACE,GAAId,KAAKW,UAAYX,KAAKW,SAASI,YAAcf,KAAKW,SAASK,YAAa,CAG1EhB,KAAKiB,qB,GAITpB,EAAAY,UAAAS,qBAAA,WACElB,KAAKmB,uB,EAGCtB,EAAAY,UAAAQ,oBAAA,eAAAlB,EAAAC,K,MACN,IAAKA,KAAKW,SAAU,OAGpB,IAAMS,GAAYC,EAAArB,KAAKW,SAASW,cAAY,MAAAD,SAAA,SAAAA,EAAAE,cAAc,mCAE1D,GAAIH,EAAW,CAEbpB,KAAKC,gBAAkBmB,EACvBpB,KAAKC,gBAAgBuB,iBAAiB,SAAUxB,KAAKI,aAAc,CAAEqB,QAAS,OAC9EzB,KAAKI,eACLJ,KAAKE,aAAe,C,KACf,CAELF,KAAK0B,WAAaC,OAAOC,YAAW,WAClC,GAAI7B,EAAKE,gBAAiB,OAC1BF,EAAKG,cAAgBH,EAAKG,cAAgB,GAAK,EAC/C,GAAIH,EAAKG,cAAgB,GAAI,CAC3BH,EAAKkB,qB,KACA,CACLV,QAAQC,KAAK,wD,IAEd,I,GAICX,EAAAY,UAAAU,sBAAA,WACN,GAAInB,KAAKC,gBAAiB,CACxBD,KAAKC,gBAAgB4B,oBAAoB,SAAU7B,KAAKI,cACxDJ,KAAKC,gBAAkB,I,CAGzB,GAAID,KAAK0B,aAAeI,UAAW,CACjCH,OAAOI,aAAa/B,KAAK0B,YACzB1B,KAAK0B,WAAaI,S,CAGpB9B,KAAKE,aAAe,C,EAmBdL,EAAAY,UAAAuB,WAAA,WACN,IAAMA,EAAa,GAEnB,GAAIhC,KAAKW,UAAYX,KAAKW,SAASsB,QAAS,CAC1CD,EAAWE,KAAK,a,CAGlB,GAAIlC,KAAKmC,UAAW,CAClBH,EAAWE,KAAK,yBAAAE,OAAyBpC,KAAKmC,W,CAGhD,GAAInC,KAAKqC,SAAU,CACjBL,EAAWE,KAAK,e,CAGlB,GAAIlC,KAAKW,UAAYX,KAAKW,SAASK,aAAehB,KAAKG,eAAgB,CACrE6B,EAAWE,KAAK,e,CAGlB,OAAOF,EAAWM,KAAK,I,EAoBzBzC,EAAAY,UAAA8B,OAAA,WACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO3C,KAAKgC,aACZY,KAAK,WACLC,KAAK,OACLC,MACE9C,KAAKW,UACLX,KAAKW,SAASK,aACdhB,KAAKW,SAASoC,WACV,CAAE,wBAAyB,QAC3B,IAGNP,EAAa,QAAAE,IAAA,6C,gIApII,I","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as d,c as a,h as e,g as s}from"./p-Bf1dou5H.js";const o=".pds-modal__backdrop{-ms-flex-align:start;align-items:flex-start;background-color:rgba(0, 0, 0, 0.4);border:0;display:-ms-flexbox;display:flex;height:100%;inset:0;-ms-flex-pack:center;justify-content:center;margin:0;max-height:100%;max-width:100%;opacity:0;padding:0;position:fixed;-webkit-transition:opacity 0.2s ease, visibility 0.2s ease;transition:opacity 0.2s ease, visibility 0.2s ease;visibility:hidden;width:100%;z-index:var(--pine-z-index-modal)}@supports ((-webkit-backdrop-filter: blur(3px)) or (backdrop-filter: blur(3px))){.pds-modal__backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}pds-modal .pds-modal__backdrop{z-index:var(--pine-z-index-priority)}.pds-modal__backdrop::-webkit-backdrop{background:transparent}.pds-modal__backdrop::-ms-backdrop{background:transparent}.pds-modal__backdrop::backdrop{background:transparent}.pds-modal__backdrop.open{opacity:1;visibility:visible}.pds-modal{background:var(--pine-color-background-container);border-radius:var(--pine-dimension-sm);-webkit-box-shadow:var(--pine-box-shadow-400);box-shadow:var(--pine-box-shadow-400);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:var(--pine-dimension-md);max-height:none;width:100%}.pds-modal.pds-modal--scrollable{max-height:calc(100vh - (5vh + 96px))}@supports (height: 100dvh){.pds-modal.pds-modal--scrollable{max-height:calc(100dvh - (5dvh + 96px))}}@media (min-width: 992px){.pds-modal{-webkit-margin-before:6vh;margin-block-start:6vh}@supports (height: 100dvh){.pds-modal{-webkit-margin-before:6dvh;margin-block-start:6dvh}}}@media (min-width: 1200px){.pds-modal{-webkit-margin-before:8vh;margin-block-start:8vh}@supports (height: 100dvh){.pds-modal{-webkit-margin-before:8dvh;margin-block-start:8dvh}}}.pds-modal--sm{max-width:520px}.pds-modal--md{max-width:700px}.pds-modal--lg{max-width:900px}.pds-modal--fullscreen{border-radius:0;height:100%;margin:0;max-height:100vh;max-width:100%}@supports (height: 100dvh){.pds-modal--fullscreen{max-height:100dvh}}.pds-modal--fullscreen.pds-modal--scrollable{max-height:100vh}@supports (height: 100dvh){.pds-modal--fullscreen.pds-modal--scrollable{max-height:100dvh}}.pds-modal--fullscreen .pds-modal-content{-ms-flex:1;flex:1}.pds-modal--scrollable pds-modal-content{-webkit-border-after:1px solid transparent;border-block-end:1px solid transparent;-webkit-border-before:1px solid transparent;border-block-start:1px solid transparent;overflow-y:auto}.pds-modal:not(.pds-modal--scrollable) pds-modal-content{overflow-y:visible}";const i=class{constructor(e){d(this,e);this.pdsModalOpen=a(this,"pdsModalOpen");this.pdsModalClose=a(this,"pdsModalClose");this.pdsModalBackdropClick=a(this,"pdsModalBackdropClick");this.size="md";this.scrollable=true;this.backdropDismiss=true;this.open=false}async showModal(){this.open=true;this.pdsModalOpen.emit()}async hideModal(){this.open=false;this.pdsModalClose.emit()}handleBackdropClick(d){const a=this.el.querySelector(".pds-modal__backdrop");if(d.target===a&&this.backdropDismiss===true){this.pdsModalBackdropClick.emit();this.hideModal()}}handleKeyDown(d){if(d.key==="Escape"&&this.open===true){this.hideModal()}}componentDidLoad(){}render(){const d={"pds-modal":true,[`pds-modal--${this.size}`]:true,"pds-modal--scrollable":this.scrollable};const a={"pds-modal__backdrop":true,open:this.open};return e("div",{key:"f8f3e1da60eb943d8f857755e2dbd2c08264f2cf",class:a},e("div",{key:"0f7454db09265e84962a24cf412ca77b4005a5fd",class:d,role:"dialog","aria-modal":"true","aria-labelledby":this.componentId?`${this.componentId}-heading`:null},e("div",{key:"78e9988c584c6c4d0947722468f730f537acb933",class:"pds-modal__header"},e("slot",{key:"40f16731657da0112b0ef1954101304e9a3a8bdc",name:"header"})),e("div",{key:"f5bd52f05b1d34d747f34e7d1a28aec90019630a",class:"pds-modal-content"},e("slot",{key:"bf8812eb47a747d897889a91a997b5fd5b57c3d9"})),e("div",{key:"70e9b90cce8108b71afe434610b09624d9b4037a",class:"pds-modal__footer"},e("slot",{key:"283e94934656711f12b9d75e29520ee8d04bb5d8",name:"footer"}))))}get el(){return s(this)}};i.style=o;export{i as mock_pds_modal};
|
|
2
|
+
//# sourceMappingURL=p-b23dd01c.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pdsModalCss","MockPdsModal","constructor","hostRef","this","size","scrollable","backdropDismiss","open","showModal","pdsModalOpen","emit","hideModal","pdsModalClose","handleBackdropClick","event","backdrop","el","querySelector","target","pdsModalBackdropClick","handleKeyDown","key","componentDidLoad","render","modalClasses","backdropClasses","h","class","role","componentId","name"],"sources":["src/components/pds-modal/pds-modal.scss?tag=mock-pds-modal","src/components/pds-modal/test/mock-pds-modal.tsx"],"sourcesContent":[".pds-modal__backdrop {\n align-items: flex-start;\n background-color: rgba(0, 0, 0, 0.4);\n border: 0;\n display: flex;\n height: 100%;\n inset: 0;\n justify-content: center;\n margin: 0;\n max-height: 100%;\n max-width: 100%;\n opacity: 0;\n padding: 0;\n position: fixed;\n transition: opacity 0.2s ease, visibility 0.2s ease;\n visibility: hidden;\n width: 100%;\n z-index: var(--pine-z-index-modal);\n\n @supports (backdrop-filter: blur(3px)) {\n backdrop-filter: blur(3px);\n }\n\n // Increase z-index for nested modals\n pds-modal & {\n z-index: var(--pine-z-index-priority);\n }\n\n &::backdrop {\n background: transparent;\n }\n\n &.open {\n opacity: 1;\n visibility: visible;\n }\n}\n\n.pds-modal {\n background: var(--pine-color-background-container);\n border-radius: var(--pine-dimension-sm);\n box-shadow: var(--pine-box-shadow-400);\n display: flex;\n flex-direction: column;\n margin: var(--pine-dimension-md);\n max-height: none;\n width: 100%;\n\n &.pds-modal--scrollable {\n max-height: calc(100vh - (calc(5vh + 96px)));\n\n @supports (height: 100dvh) {\n max-height: calc(100dvh - (calc(5dvh + 96px)));\n }\n }\n\n @media (min-width: 992px) {\n margin-block-start: 6vh;\n\n @supports (height: 100dvh) {\n margin-block-start: 6dvh;\n }\n }\n\n @media (min-width: 1200px) {\n margin-block-start: 8vh;\n\n @supports (height: 100dvh) {\n margin-block-start: 8dvh;\n }\n }\n}\n\n.pds-modal--sm {\n max-width: 520px;\n}\n\n.pds-modal--md {\n max-width: 700px;\n}\n\n.pds-modal--lg {\n max-width: 900px;\n}\n\n.pds-modal--fullscreen {\n border-radius: 0;\n height: 100%;\n margin: 0;\n max-height: 100vh;\n max-width: 100%;\n\n @supports (height: 100dvh) {\n max-height: 100dvh;\n }\n\n &.pds-modal--scrollable {\n max-height: 100vh;\n\n @supports (height: 100dvh) {\n max-height: 100dvh;\n }\n }\n}\n\n.pds-modal-content {\n .pds-modal--fullscreen & {\n flex: 1;\n }\n}\n\n// Scrollable modal styles (default behavior)\n.pds-modal--scrollable {\n pds-modal-content {\n border-block-end: 1px solid transparent;\n border-block-start: 1px solid transparent;\n overflow-y: auto;\n }\n}\n\n// Non-scrollable modal styles\n.pds-modal:not(.pds-modal--scrollable) {\n pds-modal-content {\n overflow-y: visible;\n }\n}\n\n","import { Component, Prop, Event, EventEmitter, Method, Element, h } from '@stencil/core';\n\n// Define the element interface for the mock component\ninterface HTMLMockPdsModalElement extends HTMLElement {\n open: boolean;\n showModal: () => Promise<void>;\n hideModal: () => Promise<void>;\n handleBackdropClick: (event: MouseEvent) => void;\n handleKeyDown: (event: KeyboardEvent) => void;\n}\n\n/**\n * Mock PdsModal component for testing purposes\n * This component mimics the real PdsModal but without using the Popover API\n */\n@Component({\n tag: 'mock-pds-modal',\n styleUrl: '../pds-modal.scss',\n shadow: false,\n})\nexport class MockPdsModal {\n @Element() el!: HTMLMockPdsModalElement;\n\n /**\n * The ID of the modal component\n */\n @Prop() componentId?: string;\n\n /**\n * The size of the modal\n */\n @Prop() size: 'sm' | 'md' | 'lg' | 'fullscreen' = 'md';\n\n /**\n * Whether the modal content should be scrollable\n * @default true\n */\n @Prop() scrollable = true;\n\n /**\n * Whether the modal can be dismissed by clicking the backdrop\n */\n @Prop() backdropDismiss = true;\n\n // Native dialog element always closes on Escape key press, so no closeOnEsc property is needed\n\n /**\n * Whether the modal is open\n */\n @Prop({ mutable: true }) open = false;\n\n // No need for modalRef in the mock implementation\n\n /**\n * Event emitted when the modal is opened\n */\n @Event() pdsModalOpen: EventEmitter;\n\n /**\n * Event emitted when the modal is closed\n */\n @Event() pdsModalClose: EventEmitter;\n\n /**\n * Event emitted when the backdrop is clicked\n */\n @Event() pdsModalBackdropClick: EventEmitter;\n\n /**\n * Shows the modal\n */\n @Method()\n async showModal() {\n this.open = true;\n this.pdsModalOpen.emit();\n }\n\n /**\n * Hides the modal\n */\n @Method()\n async hideModal() {\n this.open = false;\n this.pdsModalClose.emit();\n }\n\n /**\n * Listen for click events on the backdrop\n */\n // Using direct method instead of @Listen to avoid ESLint warning\n handleBackdropClick(event: MouseEvent) {\n const backdrop = this.el.querySelector('.pds-modal__backdrop');\n // Check if the click was directly on the backdrop (not on a child element)\n if (event.target === backdrop && this.backdropDismiss === true) {\n this.pdsModalBackdropClick.emit();\n this.hideModal();\n }\n }\n\n /**\n * Listen for keydown events to handle Escape key\n * Native dialog element always closes on Escape key press\n */\n // Using direct method instead of @Listen to avoid ESLint warning\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.open === true) {\n this.hideModal();\n }\n }\n\n componentDidLoad() {\n // No need to do anything in componentDidLoad for the mock\n }\n\n render() {\n const modalClasses = {\n 'pds-modal': true,\n [`pds-modal--${this.size}`]: true,\n 'pds-modal--scrollable': this.scrollable\n };\n\n const backdropClasses = {\n 'pds-modal__backdrop': true,\n 'open': this.open,\n };\n\n return (\n <div class={backdropClasses}>\n <div\n class={modalClasses}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={this.componentId ? `${this.componentId}-heading` : null}\n >\n <div class=\"pds-modal__header\">\n <slot name=\"header\"></slot>\n </div>\n <div class=\"pds-modal-content\">\n <slot></slot>\n </div>\n <div class=\"pds-modal__footer\">\n <slot name=\"footer\"></slot>\n </div>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAc,w+E,MCoBPC,EAAY,MALzB,WAAAC,CAAAC,G,yJAgBUC,KAAIC,KAAsC,KAM1CD,KAAUE,WAAG,KAKbF,KAAeG,gBAAG,KAODH,KAAII,KAAG,KAkGjC,CA3EC,eAAMC,GACJL,KAAKI,KAAO,KACZJ,KAAKM,aAAaC,M,CAOpB,eAAMC,GACJR,KAAKI,KAAO,MACZJ,KAAKS,cAAcF,M,CAOrB,mBAAAG,CAAoBC,GAClB,MAAMC,EAAWZ,KAAKa,GAAGC,cAAc,wBAEvC,GAAIH,EAAMI,SAAWH,GAAYZ,KAAKG,kBAAoB,KAAM,CAC9DH,KAAKgB,sBAAsBT,OAC3BP,KAAKQ,W,EAST,aAAAS,CAAcN,GACZ,GAAIA,EAAMO,MAAQ,UAAYlB,KAAKI,OAAS,KAAM,CAChDJ,KAAKQ,W,EAIT,gBAAAW,G,CAIA,MAAAC,GACE,MAAMC,EAAe,CACnB,YAAa,KACb,CAAC,cAAcrB,KAAKC,QAAS,KAC7B,wBAAyBD,KAAKE,YAGhC,MAAMoB,EAAkB,CACtB,sBAAuB,KACvBlB,KAAQJ,KAAKI,MAGf,OACEmB,EAAA,OAAAL,IAAA,2CAAKM,MAAOF,GACVC,EACE,OAAAL,IAAA,2CAAAM,MAAOH,EACPI,KAAK,SAAQ,aACF,OAAM,kBACAzB,KAAK0B,YAAc,GAAG1B,KAAK0B,sBAAwB,MAEpEH,EAAK,OAAAL,IAAA,2CAAAM,MAAM,qBACTD,EAAA,QAAAL,IAAA,2CAAMS,KAAK,YAEbJ,EAAK,OAAAL,IAAA,2CAAAM,MAAM,qBACTD,EAAA,QAAAL,IAAA,8CAEFK,EAAK,OAAAL,IAAA,2CAAAM,MAAM,qBACTD,EAAM,QAAAL,IAAA,2CAAAS,KAAK,a","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
System.register(["./p-Cxvdulqq.system.js","./p-BOmQOnQe.system.js"],(function(i){"use strict";var t,e,n,s,r,a,o,d;return{setters:[function(i){t=i.r;e=i.h;n=i.H;s=i.g},function(i){r=i.c;a=i.o;o=i.f;d=i.s}],execute:function(){var h=":host{display:block}.is-hidden{display:none}.pds-dropdown-menu--panel{background-color:var(--pine-color-background-container);left:var(--pine-dimension-none);min-width:170px;padding:var(--pine-dimension-xs);position:absolute;z-index:var(--pine-z-index-overlay)}";var u=i("pds_dropdown_menu",function(){function i(i){var e=this;t(this,i);this.isOpen=false;this.menuItems=[];this.currentFocusIndex=-1;this.placement="bottom-start";this.handleTriggerSlotChange=function(i){e.slotEl=i.target;var t=e.slotEl.assignedElements();e.triggerEl=t[0];e.triggerEl.onclick=e.handleClick;e.triggerEl.setAttribute("aria-haspopup","menu");e.triggerEl.setAttribute("aria-expanded","false")};this.handleSlotChange=function(i){e.slotEl=i.target;var t=e.slotEl.assignedElements();var n=t.filter((function(i){return i.tagName.toLowerCase()!=="pds-dropdown-menu-item"&&i.tagName.toLowerCase()!=="pds-dropdown-menu-separator"}));if(n.length>0){throw new Error("pds-dropdown-menu only accepts pds-dropdown-menu-item and pds-dropdown-menu-separator elements")}e.menuItems=t.filter((function(i){return i.tagName.toLowerCase()==="pds-dropdown-menu-item"}))};this.toggleDropdown=function(){e.isOpen=!e.isOpen;if(e.isOpen){e.openDropdown()}else{e.closeDropdown()}};this.openDropdown=function(){var i;r(e.triggerEl,e.panelEl,{placement:e.placement,middleware:[a(6),o(),d({padding:5})]}).then((function(i){var t=i.x,n=i.y;Object.assign(e.panelEl.style,{left:"".concat(t,"px"),top:"".concat(n,"px")})}));(i=e.host.shadowRoot)===null||i===void 0?void 0:i.querySelector("pds-box").classList.remove("is-hidden");e.isOpen=true;e.triggerEl.setAttribute("aria-expanded","true")};this.closeDropdown=function(){var i;(i=e.host.shadowRoot)===null||i===void 0?void 0:i.querySelector("pds-box").classList.add("is-hidden");e.isOpen=false;e.triggerEl.setAttribute("aria-expanded","false");e.currentFocusIndex=-1;e.triggerEl.focus()};this.handleClick=function(){e.toggleDropdown()}}i.prototype.componentDidRender=function(){var i;this.panelEl=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.querySelector("pds-box")};i.prototype.getFocusedItemIndex=function(){var i=document.activeElement;if(!i)return-1;return this.menuItems.findIndex((function(t){return t===i}))};i.prototype.focusItemByIndex=function(i){var t,e,n,s;if(i>=0&&i<this.menuItems.length){this.currentFocusIndex=i;var r=this.menuItems[i];var a=(t=r.shadowRoot)===null||t===void 0?void 0:t.querySelector("button");var o=(s=(n=(e=r.shadowRoot)===null||e===void 0?void 0:e.querySelector("pds-link"))===null||n===void 0?void 0:n.shadowRoot)===null||s===void 0?void 0:s.querySelector("a");if(a){return a.focus()}else if(o){return o.focus()}else{r.focus()}}};i.prototype.focusNextItem=function(){var i=(this.currentFocusIndex+1)%this.menuItems.length;var t=0;var e=this.menuItems.length;while(t<e&&this.menuItems[i].disabled){i=(i+1)%this.menuItems.length;t++}if(t<e){this.focusItemByIndex(i)}};i.prototype.focusPreviousItem=function(){var i=this.currentFocusIndex<=0?this.menuItems.length-1:this.currentFocusIndex-1;var t=0;var e=this.menuItems.length;while(t<e&&this.menuItems[i].disabled){i=i<=0?this.menuItems.length-1:i-1;t++}if(t<e){this.focusItemByIndex(i)}};i.prototype.handleKeyDown=function(i){if(!this.isOpen)return;switch(i.key){case"Escape":i.preventDefault();this.closeDropdown();break;case"ArrowDown":i.preventDefault();this.focusNextItem();break;case"ArrowUp":i.preventDefault();this.focusPreviousItem();break;case"Home":i.preventDefault();if(this.menuItems.length>0){var t=0;while(t<this.menuItems.length&&this.menuItems[t].disabled){t++}if(t<this.menuItems.length){this.focusItemByIndex(t)}}break;case"End":i.preventDefault();if(this.menuItems.length>0){var e=this.menuItems.length-1;while(e>=0&&this.menuItems[e].disabled){e--}if(e>=0){this.focusItemByIndex(e)}}break;case"Tab":if(i.shiftKey){var n=this.getFocusedItemIndex();if(n>0){i.preventDefault();this.focusPreviousItem()}}else{var s=document.activeElement;var r=s===this.triggerEl;var n=this.getFocusedItemIndex();if(r&&this.menuItems.length>0){i.preventDefault();var a=0;while(a<this.menuItems.length&&this.menuItems[a].disabled){a++}if(a<this.menuItems.length){this.focusItemByIndex(a)}}else if(n===-1&&this.menuItems.length>0){i.preventDefault();var a=0;while(a<this.menuItems.length&&this.menuItems[a].disabled){a++}if(a<this.menuItems.length){this.focusItemByIndex(a)}}else if(n!==-1){i.preventDefault();this.focusNextItem()}}break}};i.prototype.handleWindowClick=function(i){if(this.isOpen&&!this.host.contains(i.target)&&i.target!==this.triggerEl){this.closeDropdown()}};i.prototype.render=function(){return e(n,{key:"1e4384c8ab3fb3ca73221dd7a7f156846e9b8274",id:this.componentId},e("slot",{key:"0b3b532a025580b36bbe06f86bdb776d99e0c896",name:"trigger",onSlotchange:this.handleTriggerSlotChange}),e("pds-box",{key:"20229e833fa45ff5ce730d3a38e8faab582335c6","border-radius":"sm",display:"flex",direction:"column",class:"pds-dropdown-menu--panel is-hidden",shadow:"100",role:"menu","aria-orientation":"vertical"},e("slot",{key:"47cad78c2e1b5150be13a399820fe64d09955e9d",onSlotchange:this.handleSlotChange})))};Object.defineProperty(i.prototype,"host",{get:function(){return s(this)},enumerable:false,configurable:true});return i}());u.style=h}}}));
|
|
2
|
+
//# sourceMappingURL=p-b9aafec7.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pdsDropdownMenuCss","PdsDropdownMenu","exports","class_1","hostRef","_this","this","isOpen","menuItems","currentFocusIndex","placement","handleTriggerSlotChange","event","slotEl","target","assignedElements","triggerEl","onclick","handleClick","setAttribute","handleSlotChange","invalidElements","filter","el","tagName","toLowerCase","length","Error","toggleDropdown","openDropdown","closeDropdown","computePosition","panelEl","middleware","offset","flip","shift","padding","then","_e","x","y","Object","assign","style","left","concat","top","_a","host","shadowRoot","querySelector","classList","remove","add","focus","prototype","componentDidRender","getFocusedItemIndex","activeElement","document","findIndex","item","focusItemByIndex","index","menuItem","innerButton","innerLink","_d","_c","_b","focusNextItem","nextIndex","attempts","maxAttempts","disabled","focusPreviousItem","prevIndex","handleKeyDown","key","preventDefault","firstIndex","lastIndex","shiftKey","currentIndex","isTriggerFocused","firstFocusableIndex","handleWindowClick","contains","render","h","Host","id","componentId","name","onSlotchange","display","direction","class","shadow","role"],"sources":["src/components/pds-dropdown-menu/pds-dropdown-menu.scss?tag=pds-dropdown-menu&encapsulation=shadow","src/components/pds-dropdown-menu/pds-dropdown-menu.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.is-hidden {\n display: none;\n}\n\n.pds-dropdown-menu--panel {\n background-color: var(--pine-color-background-container);\n left: var(--pine-dimension-none);\n min-width: 170px;\n padding: var(--pine-dimension-xs);\n position: absolute;\n z-index: var(--pine-z-index-overlay);\n}\n","import { Component, Element, Host, h, Prop, Listen, State } from '@stencil/core';\nimport type { BasePdsProps } from '@utils/interfaces';\nimport { PlacementType } from '@utils/types';\nimport { computePosition,\n flip,\n offset,\n shift,\n} from '@floating-ui/dom';\n\n@Component({\n tag: 'pds-dropdown-menu',\n styleUrl: 'pds-dropdown-menu.scss',\n shadow: true,\n})\nexport class PdsDropdownMenu implements BasePdsProps {\n private slotEl: HTMLSlotElement;\n private triggerEl: HTMLElement;\n private panelEl: HTMLPdsBoxElement;\n private isOpen: boolean = false;\n private menuItems: HTMLPdsDropdownMenuItemElement[] = [];\n\n @Element() host: HTMLPdsDropdownMenuElement;\n\n @State() currentFocusIndex: number = -1;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * The placement of the dropdown panel relative to the trigger.\n */\n @Prop() placement: PlacementType = 'bottom-start';\n\n componentDidRender() {\n this.panelEl = this.host.shadowRoot?.querySelector('pds-box') as HTMLPdsBoxElement;\n }\n\n private handleTriggerSlotChange = (event: Event) => {\n this.slotEl = event.target as HTMLSlotElement;\n\n // Get all elements assigned to this slot\n const assignedElements = this.slotEl.assignedElements();\n\n this.triggerEl = assignedElements[0] as HTMLElement;\n this.triggerEl.onclick = this.handleClick;\n\n // Add accessibility attributes to trigger\n this.triggerEl.setAttribute('aria-haspopup', 'menu');\n this.triggerEl.setAttribute('aria-expanded', 'false');\n }\n\n private handleSlotChange = (event: Event) => {\n this.slotEl = event.target as HTMLSlotElement;\n\n // Get all elements assigned to this slot\n const assignedElements = this.slotEl.assignedElements();\n\n // ensure assignedElements only contains pds-dropdown-menu-item or pds-dropdown-menu-separator\n // if there are other elements, throw an error\n const invalidElements = assignedElements.filter(el => el.tagName.toLowerCase() !== 'pds-dropdown-menu-item' && el.tagName.toLowerCase() !== 'pds-dropdown-menu-separator');\n if (invalidElements.length > 0) {\n throw new Error(`pds-dropdown-menu only accepts pds-dropdown-menu-item and pds-dropdown-menu-separator elements`);\n }\n\n // Store all menu items for keyboard navigation\n this.menuItems = assignedElements.filter(\n el => el.tagName.toLowerCase() === 'pds-dropdown-menu-item'\n ) as HTMLPdsDropdownMenuItemElement[];\n }\n\n // Toggle dropdown open/closed\n private toggleDropdown = () => {\n this.isOpen = !this.isOpen;\n\n if (this.isOpen) {\n this.openDropdown();\n } else {\n this.closeDropdown();\n }\n }\n\n // Open the dropdown and position it\n private openDropdown = () => {\n computePosition(this.triggerEl, this.panelEl, {\n placement: this.placement,\n middleware: [offset(6), flip(), shift({padding: 5})],\n }).then(({ x, y }) => {\n Object.assign(this.panelEl.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n });\n\n this.host.shadowRoot?.querySelector('pds-box').classList.remove('is-hidden');\n this.isOpen = true;\n\n // Update ARIA attributes\n this.triggerEl.setAttribute('aria-expanded', 'true');\n }\n\n // Close the dropdown\n private closeDropdown = () => {\n this.host.shadowRoot?.querySelector('pds-box').classList.add('is-hidden');\n this.isOpen = false;\n\n // Update ARIA attributes\n this.triggerEl.setAttribute('aria-expanded', 'false');\n\n // Reset focus index\n this.currentFocusIndex = -1;\n\n // Return focus to trigger\n this.triggerEl.focus();\n }\n\n // Handle click on the trigger element\n private handleClick = () => {\n this.toggleDropdown();\n }\n\n // Get the index of the currently focused menu item\n private getFocusedItemIndex(): number {\n const activeElement = document.activeElement as HTMLPdsDropdownMenuItemElement | null;\n if (!activeElement) return -1;\n return this.menuItems.findIndex(item => item === activeElement);\n }\n\n // Focus a specific menu item by index\n private focusItemByIndex(index: number): void {\n if (index >= 0 && index < this.menuItems.length) {\n this.currentFocusIndex = index;\n\n // Focus the inner button/link instead of the host element\n const menuItem = this.menuItems[index];\n const innerButton = menuItem.shadowRoot?.querySelector('button');\n const innerLink = menuItem.shadowRoot?.querySelector('pds-link')?.shadowRoot?.querySelector('a');\n\n if (innerButton) {\n return innerButton.focus();\n } else if (innerLink) {\n return innerLink.focus();\n } else {\n // Fallback to focusing the host if we can't find the inner element\n menuItem.focus();\n }\n }\n }\n\n // Focus the next menu item\n private focusNextItem(): void {\n let nextIndex = (this.currentFocusIndex + 1) % this.menuItems.length;\n\n // Skip disabled items\n let attempts = 0;\n const maxAttempts = this.menuItems.length;\n\n while (attempts < maxAttempts && this.menuItems[nextIndex].disabled) {\n nextIndex = (nextIndex + 1) % this.menuItems.length;\n attempts++;\n }\n\n // Only focus if we found a non-disabled item\n if (attempts < maxAttempts) {\n this.focusItemByIndex(nextIndex);\n }\n }\n\n // Focus the previous menu item\n private focusPreviousItem(): void {\n let prevIndex = this.currentFocusIndex <= 0\n ? this.menuItems.length - 1\n : this.currentFocusIndex - 1;\n\n // Skip disabled items\n let attempts = 0;\n const maxAttempts = this.menuItems.length;\n\n while (attempts < maxAttempts && this.menuItems[prevIndex].disabled) {\n prevIndex = prevIndex <= 0 ? this.menuItems.length - 1 : prevIndex - 1;\n attempts++;\n }\n\n // Only focus if we found a non-disabled item\n if (attempts < maxAttempts) {\n this.focusItemByIndex(prevIndex);\n }\n }\n\n // Handle keyboard events for the dropdown\n @Listen('keydown', { target: 'window' })\n handleKeyDown(event: KeyboardEvent) {\n if (!this.isOpen) return;\n\n switch (event.key) {\n case 'Escape':\n event.preventDefault();\n this.closeDropdown();\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n this.focusNextItem();\n break;\n\n case 'ArrowUp':\n event.preventDefault();\n this.focusPreviousItem();\n break;\n\n case 'Home':\n event.preventDefault();\n if (this.menuItems.length > 0) {\n // Find first non-disabled item\n let firstIndex = 0;\n while (firstIndex < this.menuItems.length && this.menuItems[firstIndex].disabled) {\n firstIndex++;\n }\n if (firstIndex < this.menuItems.length) {\n this.focusItemByIndex(firstIndex);\n }\n }\n break;\n\n case 'End':\n event.preventDefault();\n if (this.menuItems.length > 0) {\n // Find last non-disabled item\n let lastIndex = this.menuItems.length - 1;\n while (lastIndex >= 0 && this.menuItems[lastIndex].disabled) {\n lastIndex--;\n }\n if (lastIndex >= 0) {\n this.focusItemByIndex(lastIndex);\n }\n }\n break;\n\n case 'Tab':\n if (event.shiftKey) {\n // Let Shift+Tab navigate naturally from first item to trigger\n // For all other items, move to previous item\n const currentIndex = this.getFocusedItemIndex();\n\n if (currentIndex > 0) {\n // If not on first item, prevent default and go to previous item\n event.preventDefault();\n this.focusPreviousItem(); // Use our method that skips disabled items\n }\n // If on first item or no item, let natural tab order move back to trigger\n } else {\n // Forward Tab navigation\n const activeElement = document.activeElement;\n const isTriggerFocused = activeElement === this.triggerEl;\n const currentIndex = this.getFocusedItemIndex();\n\n if (isTriggerFocused && this.menuItems.length > 0) {\n // If trigger is focused, move to first non-disabled menu item\n event.preventDefault();\n\n // Find the first non-disabled item\n let firstFocusableIndex = 0;\n while (firstFocusableIndex < this.menuItems.length && this.menuItems[firstFocusableIndex].disabled) {\n firstFocusableIndex++;\n }\n\n if (firstFocusableIndex < this.menuItems.length) {\n this.focusItemByIndex(firstFocusableIndex);\n }\n } else if (currentIndex === -1 && this.menuItems.length > 0) {\n // If no menu item is focused, focus the first non-disabled one\n event.preventDefault();\n\n // Find the first non-disabled item\n let firstFocusableIndex = 0;\n while (firstFocusableIndex < this.menuItems.length && this.menuItems[firstFocusableIndex].disabled) {\n firstFocusableIndex++;\n }\n\n if (firstFocusableIndex < this.menuItems.length) {\n this.focusItemByIndex(firstFocusableIndex);\n }\n } else if (currentIndex !== -1) {\n // Use our method that skips disabled items\n event.preventDefault();\n this.focusNextItem();\n }\n }\n break;\n }\n }\n\n // Handle clicks outside the dropdown to close it\n @Listen('click', { target: 'window' })\n handleWindowClick(event: MouseEvent) {\n if (this.isOpen && !this.host.contains(event.target as Node) && event.target !== this.triggerEl) {\n this.closeDropdown();\n }\n }\n\n\n render() {\n return (\n <Host id={this.componentId}>\n <slot\n name=\"trigger\"\n onSlotchange={this.handleTriggerSlotChange}\n ></slot>\n <pds-box\n border-radius=\"sm\"\n display=\"flex\"\n direction=\"column\"\n class=\"pds-dropdown-menu--panel is-hidden\"\n shadow=\"100\"\n role=\"menu\"\n aria-orientation=\"vertical\"\n >\n <slot onSlotchange={this.handleSlotChange}></slot>\n </pds-box>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
System.register(["./p-Cxvdulqq.system.js","./p-BG99uNIQ.system.js"],(function(i){"use strict";var t,e,s,n,a,o,r;return{setters:[function(i){t=i.r;e=i.c;s=i.h;n=i.H;a=i.g},function(i){o=i.g;r=i.d}],execute:function(){var l=":host{--border-head-cell-default:var(--pine-border-width-thin) solid var(--pine-color-grey-100);--box-shadow-default:3px 3px 6px -2px rgba(0, 0, 0, 0.1);-webkit-border-after:var(--border-head-cell-default);border-block-end:var(--border-head-cell-default);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-150);position:relative;text-align:start;vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:var(--pine-dimension-none);position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-default);box-shadow:var(--box-shadow-default)}:host(.is-sortable){cursor:pointer}:host(.is-sortable) pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs);-webkit-padding-before:2px;padding-block-start:2px;position:absolute}:host(.is-sortable:hover),:host(.is-active){color:var(--pine-color-text-active)}:host(.pds-table-head-cell--align-start){text-align:start}:host(.pds-table-head-cell--align-center){text-align:center}:host(.pds-table-head-cell--align-end){text-align:end}:host(.pds-table-head-cell--align-justify){text-align:justify}";var h=i("pds_table_head_cell",function(){function i(i){var s=this;t(this,i);this.pdsTableSort=e(this,"pdsTableSort");this.scrollContainer=null;this.setupRetries=0;this.sortingDirection="asc";this.tableScrolling=false;this.isSelected=false;this.handleScroll=function(){if(!s.scrollContainer){return}try{s.tableScrolling=s.scrollContainer.scrollLeft>0}catch(i){console.warn("Scroll handler error:",i)}};this.toggleSort=function(){if(s.sortable){var i=s.hostElement.innerText.trim();s.sortingDirection=s.sortingDirection==="asc"?"desc":"asc";s.tableRef.querySelectorAll("pds-table-head-cell").forEach((function(i){i.classList.remove("is-active")}));s.hostElement.classList.toggle("is-active");s.pdsTableSort.emit({column:i,direction:s.sortingDirection})}}}i.prototype.componentWillRender=function(){this.tableRef=this.hostElement.closest("pds-table")};i.prototype.componentDidLoad=function(){if(this.tableRef&&this.tableRef.responsive&&this.tableRef.fixedColumn){this.setupScrollListener()}};i.prototype.disconnectedCallback=function(){this.cleanupScrollListener()};i.prototype.setupScrollListener=function(){var i=this;var t;if(!this.tableRef)return;var e=(t=this.tableRef.shadowRoot)===null||t===void 0?void 0:t.querySelector(".pds-table-responsive-container");if(e){this.scrollContainer=e;this.scrollContainer.addEventListener("scroll",this.handleScroll,{passive:true});this.handleScroll();this.setupRetries=0}else{this.setupTimer=window.setTimeout((function(){if(i.scrollContainer)return;i.setupRetries=(i.setupRetries||0)+1;if(i.setupRetries<=50){i.setupScrollListener()}else{console.warn("Failed to find responsive container after 50 attempts")}}),100)}};i.prototype.cleanupScrollListener=function(){if(this.scrollContainer){this.scrollContainer.removeEventListener("scroll",this.handleScroll);this.scrollContainer=null}if(this.setupTimer!==undefined){window.clearTimeout(this.setupTimer);this.setupTimer=undefined}this.setupRetries=0};i.prototype.classNames=function(){var i=[];if(this.tableRef&&this.tableRef.compact){i.push("is-compact")}if(this.cellAlign){i.push("pds-table-head-cell--align-".concat(this.cellAlign))}if(this.sortable){i.push("is-sortable")}if(this.sortable&&this.sortingDirection!==null){i.push("sort-"+this.sortingDirection)}if(this.tableRef&&this.tableRef.fixedColumn&&this.tableScrolling){i.push("has-scrolled")}return i.join(" ")};i.prototype.render=function(){return s(n,{key:"3d950a2997ef4c095d08f9c4e67b9a963fea093d",class:this.classNames(),role:"columnheader",onClick:this.toggleSort,part:"head-cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},s("slot",{key:"8ca7d4d169612e5ba237691d9a5ec9ed35610230"}),this.sortable&&s("pds-icon",{key:"e2e214b39a1706d887bb34a0d4fc3f632e752306",icon:this.sortingDirection==="asc"?o:r,part:"sort-icon"}))};Object.defineProperty(i.prototype,"hostElement",{get:function(){return a(this)},enumerable:false,configurable:true});return i}());h.style=l}}}));
|
|
2
|
+
//# sourceMappingURL=p-c3579585.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["pdsTableHeadCellCss","PdsTableHeadCell","exports","class_1","hostRef","_this","this","scrollContainer","setupRetries","sortingDirection","tableScrolling","isSelected","handleScroll","scrollLeft","error","console","warn","toggleSort","sortable","column","hostElement","innerText","trim","tableRef","querySelectorAll","forEach","headCell","classList","remove","toggle","pdsTableSort","emit","direction","prototype","componentWillRender","closest","componentDidLoad","responsive","fixedColumn","setupScrollListener","disconnectedCallback","cleanupScrollListener","container","_a","shadowRoot","querySelector","addEventListener","passive","setupTimer","window","setTimeout","removeEventListener","undefined","clearTimeout","classNames","compact","push","cellAlign","concat","join","render","h","Host","key","class","role","onClick","part","style","selectable","icon","upSmall","downSmall"],"sources":["src/components/pds-table/pds-table-head-cell/pds-table-head-cell.scss?tag=pds-table-head-cell&encapsulation=shadow","src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"sourcesContent":[":host {\n --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-grey-100);\n\n --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);\n\n border-block-end: var(--border-head-cell-default);\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-150);\n position: relative;\n text-align: start;\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: var(--pine-dimension-none);\n position: sticky;\n z-index: var(--pine-z-index-raised);\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-default);\n}\n\n:host(.is-sortable) {\n cursor: pointer;\n\n pds-icon {\n margin-inline-start: var(--pine-dimension-2xs);\n padding-block-start: 2px;\n position: absolute;\n }\n}\n\n:host(.is-sortable:hover),\n:host(.is-active) {\n color: var(--pine-color-text-active);\n}\n\n// Text Alignment\n:host(.pds-table-head-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-head-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-head-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-head-cell--align-justify) {\n text-align: justify;\n}\n","import { Component, Element, Host, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\nimport { downSmall, upSmall } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-table-head-cell',\n styleUrls: ['pds-table-head-cell.scss'],\n shadow: true,\n})\nexport class PdsTableHeadCell {\n @Element() hostElement: HTMLPdsTableHeadCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n /**\n * Sets the text alignment within the head cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Determines whether the table column is sortable when set to `true`.\n */\n @Prop() sortable: boolean;\n\n /**\n * Event emitted to signal that a table column header has been sorted, providing information about the sorted column's name and sorting direction.\n */\n @Event() pdsTableSort: EventEmitter<{ column: string; direction: string }>;\n\n /**\n * The direction of sorting.\n */\n @State() private sortingDirection: 'asc' | 'desc' = 'asc';\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @State() isSelected: boolean = false;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column header to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n private toggleSort = () => {\n if (this.sortable) {\n const column = this.hostElement.innerText.trim();\n this.sortingDirection = this.sortingDirection === 'asc' ? 'desc' : 'asc';\n\n this.tableRef.querySelectorAll('pds-table-head-cell').forEach((headCell) => {\n headCell.classList.remove('is-active');\n });\n\n this.hostElement.classList.toggle('is-active');\n this.pdsTableSort.emit({ column, direction: this.sortingDirection });\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-head-cell--align-${this.cellAlign}`);\n }\n\n if (this.sortable) {\n classNames.push('is-sortable');\n }\n\n if (this.sortable && this.sortingDirection !== null) {\n classNames.push('sort-' + this.sortingDirection);\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"columnheader\"\n onClick={this.toggleSort}\n part=\"head-cell\"\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n {this.sortable && (\n <pds-icon icon={this.sortingDirection === 'asc' ? upSmall : downSmall} part=\"sort-icon\" />\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{r as e,c as t,h as i,H as o,g as r}from"./p-Bf1dou5H.js";import{c as n,o as s,f as a,s as c}from"./p-DbQzNDdQ.js";
|
|
2
|
+
/*! @license DOMPurify 3.2.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.6/LICENSE */const{entries:l,setPrototypeOf:d,isFrozen:p,getPrototypeOf:h,getOwnPropertyDescriptor:u}=Object;let{freeze:f,seal:b,create:m}=Object;let{apply:g,construct:x}=typeof Reflect!=="undefined"&&Reflect;if(!f){f=function e(t){return t}}if(!b){b=function e(t){return t}}if(!g){g=function e(t,i,o){return t.apply(i,o)}}if(!x){x=function e(t,i){return new t(...i)}}const v=L(Array.prototype.forEach);const _=L(Array.prototype.lastIndexOf);const y=L(Array.prototype.pop);const w=L(Array.prototype.push);const k=L(Array.prototype.splice);const T=L(String.prototype.toLowerCase);const A=L(String.prototype.toString);const O=L(String.prototype.match);const E=L(String.prototype.replace);const S=L(String.prototype.indexOf);const C=L(String.prototype.trim);const D=L(Object.prototype.hasOwnProperty);const R=L(RegExp.prototype.test);const z=I(TypeError);function L(e){return function(t){if(t instanceof RegExp){t.lastIndex=0}for(var i=arguments.length,o=new Array(i>1?i-1:0),r=1;r<i;r++){o[r-1]=arguments[r]}return g(e,t,o)}}function I(e){return function(){for(var t=arguments.length,i=new Array(t),o=0;o<t;o++){i[o]=arguments[o]}return x(e,i)}}function P(e,t){let i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:T;if(d){d(e,null)}let o=t.length;while(o--){let r=t[o];if(typeof r==="string"){const e=i(r);if(e!==r){if(!p(t)){t[o]=e}r=e}}e[r]=true}return e}function F(e){for(let t=0;t<e.length;t++){const i=D(e,t);if(!i){e[t]=null}}return e}function M(e){const t=m(null);for(const[i,o]of l(e)){const r=D(e,i);if(r){if(Array.isArray(o)){t[i]=F(o)}else if(o&&typeof o==="object"&&o.constructor===Object){t[i]=M(o)}else{t[i]=o}}}return t}function N(e,t){while(e!==null){const i=u(e,t);if(i){if(i.get){return L(i.get)}if(typeof i.value==="function"){return L(i.value)}}e=h(e)}function i(){return null}return i}const U=f(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]);const j=f(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]);const B=f(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]);const H=f(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]);const $=f(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]);const W=f(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]);const G=f(["#text"]);const X=f(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]);const q=f(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]);const K=f(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]);const Y=f(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]);const V=b(/\{\{[\w\W]*|[\w\W]*\}\}/gm);const Q=b(/<%[\w\W]*|[\w\W]*%>/gm);const Z=b(/\$\{[\w\W]*/gm);const J=b(/^data-[\-\w.\u00B7-\uFFFF]+$/);const ee=b(/^aria-[\-\w]+$/);const te=b(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);const ie=b(/^(?:\w+script|data):/i);const oe=b(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);const re=b(/^html$/i);const ne=b(/^[a-z][.\w]*(-[.\w]+)+$/i);var se=Object.freeze({__proto__:null,ARIA_ATTR:ee,ATTR_WHITESPACE:oe,CUSTOM_ELEMENT:ne,DATA_ATTR:J,DOCTYPE_NAME:re,ERB_EXPR:Q,IS_ALLOWED_URI:te,IS_SCRIPT_OR_DATA:ie,MUSTACHE_EXPR:V,TMPLIT_EXPR:Z});const ae={element:1,text:3,progressingInstruction:7,comment:8,document:9};const ce=function e(){return typeof window==="undefined"?null:window};const le=function e(t,i){if(typeof t!=="object"||typeof t.createPolicy!=="function"){return null}let o=null;const r="data-tt-policy-suffix";if(i&&i.hasAttribute(r)){o=i.getAttribute(r)}const n="dompurify"+(o?"#"+o:"");try{return t.createPolicy(n,{createHTML(e){return e},createScriptURL(e){return e}})}catch(e){console.warn("TrustedTypes policy "+n+" could not be created.");return null}};const de=function e(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function pe(){let e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:ce();const t=e=>pe(e);t.version="3.2.6";t.removed=[];if(!e||!e.document||e.document.nodeType!==ae.document||!e.Element){t.isSupported=false;return t}let{document:i}=e;const o=i;const r=o.currentScript;const{DocumentFragment:n,HTMLTemplateElement:s,Node:a,Element:c,NodeFilter:d,NamedNodeMap:p=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:h,DOMParser:u,trustedTypes:b}=e;const g=c.prototype;const x=N(g,"cloneNode");const L=N(g,"remove");const I=N(g,"nextSibling");const F=N(g,"childNodes");const V=N(g,"parentNode");if(typeof s==="function"){const e=i.createElement("template");if(e.content&&e.content.ownerDocument){i=e.content.ownerDocument}}let Q;let Z="";const{implementation:J,createNodeIterator:ee,createDocumentFragment:ie,getElementsByTagName:oe}=i;const{importNode:ne}=o;let he=de();t.isSupported=typeof l==="function"&&typeof V==="function"&&J&&J.createHTMLDocument!==undefined;const{MUSTACHE_EXPR:ue,ERB_EXPR:fe,TMPLIT_EXPR:be,DATA_ATTR:me,ARIA_ATTR:ge,IS_SCRIPT_OR_DATA:xe,ATTR_WHITESPACE:ve,CUSTOM_ELEMENT:_e}=se;let{IS_ALLOWED_URI:ye}=se;let we=null;const ke=P({},[...U,...j,...B,...$,...G]);let Te=null;const Ae=P({},[...X,...q,...K,...Y]);let Oe=Object.seal(m(null,{tagNameCheck:{writable:true,configurable:false,enumerable:true,value:null},attributeNameCheck:{writable:true,configurable:false,enumerable:true,value:null},allowCustomizedBuiltInElements:{writable:true,configurable:false,enumerable:true,value:false}}));let Ee=null;let Se=null;let Ce=true;let De=true;let Re=false;let ze=true;let Le=false;let Ie=true;let Pe=false;let Fe=false;let Me=false;let Ne=false;let Ue=false;let je=false;let Be=true;let He=false;const $e="user-content-";let We=true;let Ge=false;let Xe={};let qe=null;const Ke=P({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Ye=null;const Ve=P({},["audio","video","img","source","image","track"]);let Qe=null;const Ze=P({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]);const Je="http://www.w3.org/1998/Math/MathML";const et="http://www.w3.org/2000/svg";const tt="http://www.w3.org/1999/xhtml";let it=tt;let ot=false;let rt=null;const nt=P({},[Je,et,tt],A);let st=P({},["mi","mo","mn","ms","mtext"]);let at=P({},["annotation-xml"]);const ct=P({},["title","style","font","a","script"]);let lt=null;const dt=["application/xhtml+xml","text/html"];const pt="text/html";let ht=null;let ut=null;const ft=i.createElement("form");const bt=function e(t){return t instanceof RegExp||t instanceof Function};const mt=function e(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(ut&&ut===t){return}if(!t||typeof t!=="object"){t={}}t=M(t);lt=dt.indexOf(t.PARSER_MEDIA_TYPE)===-1?pt:t.PARSER_MEDIA_TYPE;ht=lt==="application/xhtml+xml"?A:T;we=D(t,"ALLOWED_TAGS")?P({},t.ALLOWED_TAGS,ht):ke;Te=D(t,"ALLOWED_ATTR")?P({},t.ALLOWED_ATTR,ht):Ae;rt=D(t,"ALLOWED_NAMESPACES")?P({},t.ALLOWED_NAMESPACES,A):nt;Qe=D(t,"ADD_URI_SAFE_ATTR")?P(M(Ze),t.ADD_URI_SAFE_ATTR,ht):Ze;Ye=D(t,"ADD_DATA_URI_TAGS")?P(M(Ve),t.ADD_DATA_URI_TAGS,ht):Ve;qe=D(t,"FORBID_CONTENTS")?P({},t.FORBID_CONTENTS,ht):Ke;Ee=D(t,"FORBID_TAGS")?P({},t.FORBID_TAGS,ht):M({});Se=D(t,"FORBID_ATTR")?P({},t.FORBID_ATTR,ht):M({});Xe=D(t,"USE_PROFILES")?t.USE_PROFILES:false;Ce=t.ALLOW_ARIA_ATTR!==false;De=t.ALLOW_DATA_ATTR!==false;Re=t.ALLOW_UNKNOWN_PROTOCOLS||false;ze=t.ALLOW_SELF_CLOSE_IN_ATTR!==false;Le=t.SAFE_FOR_TEMPLATES||false;Ie=t.SAFE_FOR_XML!==false;Pe=t.WHOLE_DOCUMENT||false;Ne=t.RETURN_DOM||false;Ue=t.RETURN_DOM_FRAGMENT||false;je=t.RETURN_TRUSTED_TYPE||false;Me=t.FORCE_BODY||false;Be=t.SANITIZE_DOM!==false;He=t.SANITIZE_NAMED_PROPS||false;We=t.KEEP_CONTENT!==false;Ge=t.IN_PLACE||false;ye=t.ALLOWED_URI_REGEXP||te;it=t.NAMESPACE||tt;st=t.MATHML_TEXT_INTEGRATION_POINTS||st;at=t.HTML_INTEGRATION_POINTS||at;Oe=t.CUSTOM_ELEMENT_HANDLING||{};if(t.CUSTOM_ELEMENT_HANDLING&&bt(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)){Oe.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck}if(t.CUSTOM_ELEMENT_HANDLING&&bt(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)){Oe.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck}if(t.CUSTOM_ELEMENT_HANDLING&&typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements==="boolean"){Oe.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements}if(Le){De=false}if(Ue){Ne=true}if(Xe){we=P({},G);Te=[];if(Xe.html===true){P(we,U);P(Te,X)}if(Xe.svg===true){P(we,j);P(Te,q);P(Te,Y)}if(Xe.svgFilters===true){P(we,B);P(Te,q);P(Te,Y)}if(Xe.mathMl===true){P(we,$);P(Te,K);P(Te,Y)}}if(t.ADD_TAGS){if(we===ke){we=M(we)}P(we,t.ADD_TAGS,ht)}if(t.ADD_ATTR){if(Te===Ae){Te=M(Te)}P(Te,t.ADD_ATTR,ht)}if(t.ADD_URI_SAFE_ATTR){P(Qe,t.ADD_URI_SAFE_ATTR,ht)}if(t.FORBID_CONTENTS){if(qe===Ke){qe=M(qe)}P(qe,t.FORBID_CONTENTS,ht)}if(We){we["#text"]=true}if(Pe){P(we,["html","head","body"])}if(we.table){P(we,["tbody"]);delete Ee.tbody}if(t.TRUSTED_TYPES_POLICY){if(typeof t.TRUSTED_TYPES_POLICY.createHTML!=="function"){throw z('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.')}if(typeof t.TRUSTED_TYPES_POLICY.createScriptURL!=="function"){throw z('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.')}Q=t.TRUSTED_TYPES_POLICY;Z=Q.createHTML("")}else{if(Q===undefined){Q=le(b,r)}if(Q!==null&&typeof Z==="string"){Z=Q.createHTML("")}}if(f){f(t)}ut=t};const gt=P({},[...j,...B,...H]);const xt=P({},[...$,...W]);const vt=function e(t){let i=V(t);if(!i||!i.tagName){i={namespaceURI:it,tagName:"template"}}const o=T(t.tagName);const r=T(i.tagName);if(!rt[t.namespaceURI]){return false}if(t.namespaceURI===et){if(i.namespaceURI===tt){return o==="svg"}if(i.namespaceURI===Je){return o==="svg"&&(r==="annotation-xml"||st[r])}return Boolean(gt[o])}if(t.namespaceURI===Je){if(i.namespaceURI===tt){return o==="math"}if(i.namespaceURI===et){return o==="math"&&at[r]}return Boolean(xt[o])}if(t.namespaceURI===tt){if(i.namespaceURI===et&&!at[r]){return false}if(i.namespaceURI===Je&&!st[r]){return false}return!xt[o]&&(ct[o]||!gt[o])}if(lt==="application/xhtml+xml"&&rt[t.namespaceURI]){return true}return false};const _t=function e(i){w(t.removed,{element:i});try{V(i).removeChild(i)}catch(e){L(i)}};const yt=function e(i,o){try{w(t.removed,{attribute:o.getAttributeNode(i),from:o})}catch(e){w(t.removed,{attribute:null,from:o})}o.removeAttribute(i);if(i==="is"){if(Ne||Ue){try{_t(o)}catch(e){}}else{try{o.setAttribute(i,"")}catch(e){}}}};const wt=function e(t){let o=null;let r=null;if(Me){t="<remove></remove>"+t}else{const e=O(t,/^[\r\n\t ]+/);r=e&&e[0]}if(lt==="application/xhtml+xml"&&it===tt){t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>"}const n=Q?Q.createHTML(t):t;if(it===tt){try{o=(new u).parseFromString(n,lt)}catch(e){}}if(!o||!o.documentElement){o=J.createDocument(it,"template",null);try{o.documentElement.innerHTML=ot?Z:n}catch(e){}}const s=o.body||o.documentElement;if(t&&r){s.insertBefore(i.createTextNode(r),s.childNodes[0]||null)}if(it===tt){return oe.call(o,Pe?"html":"body")[0]}return Pe?o.documentElement:s};const kt=function e(t){return ee.call(t.ownerDocument||t,t,d.SHOW_ELEMENT|d.SHOW_COMMENT|d.SHOW_TEXT|d.SHOW_PROCESSING_INSTRUCTION|d.SHOW_CDATA_SECTION,null)};const Tt=function e(t){return t instanceof h&&(typeof t.nodeName!=="string"||typeof t.textContent!=="string"||typeof t.removeChild!=="function"||!(t.attributes instanceof p)||typeof t.removeAttribute!=="function"||typeof t.setAttribute!=="function"||typeof t.namespaceURI!=="string"||typeof t.insertBefore!=="function"||typeof t.hasChildNodes!=="function")};const At=function e(t){return typeof a==="function"&&t instanceof a};function Ot(e,i,o){v(e,(e=>{e.call(t,i,o,ut)}))}const Et=function e(i){let o=null;Ot(he.beforeSanitizeElements,i,null);if(Tt(i)){_t(i);return true}const r=ht(i.nodeName);Ot(he.uponSanitizeElement,i,{tagName:r,allowedTags:we});if(Ie&&i.hasChildNodes()&&!At(i.firstElementChild)&&R(/<[/\w!]/g,i.innerHTML)&&R(/<[/\w!]/g,i.textContent)){_t(i);return true}if(i.nodeType===ae.progressingInstruction){_t(i);return true}if(Ie&&i.nodeType===ae.comment&&R(/<[/\w]/g,i.data)){_t(i);return true}if(!we[r]||Ee[r]){if(!Ee[r]&&Ct(r)){if(Oe.tagNameCheck instanceof RegExp&&R(Oe.tagNameCheck,r)){return false}if(Oe.tagNameCheck instanceof Function&&Oe.tagNameCheck(r)){return false}}if(We&&!qe[r]){const e=V(i)||i.parentNode;const t=F(i)||i.childNodes;if(t&&e){const o=t.length;for(let r=o-1;r>=0;--r){const o=x(t[r],true);o.__removalCount=(i.__removalCount||0)+1;e.insertBefore(o,I(i))}}}_t(i);return true}if(i instanceof c&&!vt(i)){_t(i);return true}if((r==="noscript"||r==="noembed"||r==="noframes")&&R(/<\/no(script|embed|frames)/i,i.innerHTML)){_t(i);return true}if(Le&&i.nodeType===ae.text){o=i.textContent;v([ue,fe,be],(e=>{o=E(o,e," ")}));if(i.textContent!==o){w(t.removed,{element:i.cloneNode()});i.textContent=o}}Ot(he.afterSanitizeElements,i,null);return false};const St=function e(t,o,r){if(Be&&(o==="id"||o==="name")&&(r in i||r in ft)){return false}if(De&&!Se[o]&&R(me,o));else if(Ce&&R(ge,o));else if(!Te[o]||Se[o]){if(Ct(t)&&(Oe.tagNameCheck instanceof RegExp&&R(Oe.tagNameCheck,t)||Oe.tagNameCheck instanceof Function&&Oe.tagNameCheck(t))&&(Oe.attributeNameCheck instanceof RegExp&&R(Oe.attributeNameCheck,o)||Oe.attributeNameCheck instanceof Function&&Oe.attributeNameCheck(o))||o==="is"&&Oe.allowCustomizedBuiltInElements&&(Oe.tagNameCheck instanceof RegExp&&R(Oe.tagNameCheck,r)||Oe.tagNameCheck instanceof Function&&Oe.tagNameCheck(r)));else{return false}}else if(Qe[o]);else if(R(ye,E(r,ve,"")));else if((o==="src"||o==="xlink:href"||o==="href")&&t!=="script"&&S(r,"data:")===0&&Ye[t]);else if(Re&&!R(xe,E(r,ve,"")));else if(r){return false}else;return true};const Ct=function e(t){return t!=="annotation-xml"&&O(t,_e)};const Dt=function e(i){Ot(he.beforeSanitizeAttributes,i,null);const{attributes:o}=i;if(!o||Tt(i)){return}const r={attrName:"",attrValue:"",keepAttr:true,allowedAttributes:Te,forceKeepAttr:undefined};let n=o.length;while(n--){const e=o[n];const{name:s,namespaceURI:a,value:c}=e;const l=ht(s);const d=c;let p=s==="value"?d:C(d);r.attrName=l;r.attrValue=p;r.keepAttr=true;r.forceKeepAttr=undefined;Ot(he.uponSanitizeAttribute,i,r);p=r.attrValue;if(He&&(l==="id"||l==="name")){yt(s,i);p=$e+p}if(Ie&&R(/((--!?|])>)|<\/(style|title)/i,p)){yt(s,i);continue}if(r.forceKeepAttr){continue}if(!r.keepAttr){yt(s,i);continue}if(!ze&&R(/\/>/i,p)){yt(s,i);continue}if(Le){v([ue,fe,be],(e=>{p=E(p,e," ")}))}const h=ht(i.nodeName);if(!St(h,l,p)){yt(s,i);continue}if(Q&&typeof b==="object"&&typeof b.getAttributeType==="function"){if(a);else{switch(b.getAttributeType(h,l)){case"TrustedHTML":{p=Q.createHTML(p);break}case"TrustedScriptURL":{p=Q.createScriptURL(p);break}}}}if(p!==d){try{if(a){i.setAttributeNS(a,s,p)}else{i.setAttribute(s,p)}if(Tt(i)){_t(i)}else{y(t.removed)}}catch(e){yt(s,i)}}}Ot(he.afterSanitizeAttributes,i,null)};const Rt=function e(t){let i=null;const o=kt(t);Ot(he.beforeSanitizeShadowDOM,t,null);while(i=o.nextNode()){Ot(he.uponSanitizeShadowNode,i,null);Et(i);Dt(i);if(i.content instanceof n){e(i.content)}}Ot(he.afterSanitizeShadowDOM,t,null)};t.sanitize=function(e){let i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let r=null;let s=null;let c=null;let l=null;ot=!e;if(ot){e="\x3c!--\x3e"}if(typeof e!=="string"&&!At(e)){if(typeof e.toString==="function"){e=e.toString();if(typeof e!=="string"){throw z("dirty is not a string, aborting")}}else{throw z("toString is not a function")}}if(!t.isSupported){return e}if(!Fe){mt(i)}t.removed=[];if(typeof e==="string"){Ge=false}if(Ge){if(e.nodeName){const t=ht(e.nodeName);if(!we[t]||Ee[t]){throw z("root node is forbidden and cannot be sanitized in-place")}}}else if(e instanceof a){r=wt("\x3c!----\x3e");s=r.ownerDocument.importNode(e,true);if(s.nodeType===ae.element&&s.nodeName==="BODY"){r=s}else if(s.nodeName==="HTML"){r=s}else{r.appendChild(s)}}else{if(!Ne&&!Le&&!Pe&&e.indexOf("<")===-1){return Q&&je?Q.createHTML(e):e}r=wt(e);if(!r){return Ne?null:je?Z:""}}if(r&&Me){_t(r.firstChild)}const d=kt(Ge?e:r);while(c=d.nextNode()){Et(c);Dt(c);if(c.content instanceof n){Rt(c.content)}}if(Ge){return e}if(Ne){if(Ue){l=ie.call(r.ownerDocument);while(r.firstChild){l.appendChild(r.firstChild)}}else{l=r}if(Te.shadowroot||Te.shadowrootmode){l=ne.call(o,l,true)}return l}let p=Pe?r.outerHTML:r.innerHTML;if(Pe&&we["!doctype"]&&r.ownerDocument&&r.ownerDocument.doctype&&r.ownerDocument.doctype.name&&R(re,r.ownerDocument.doctype.name)){p="<!DOCTYPE "+r.ownerDocument.doctype.name+">\n"+p}if(Le){v([ue,fe,be],(e=>{p=E(p,e," ")}))}return Q&&je?Q.createHTML(p):p};t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};mt(e);Fe=true};t.clearConfig=function(){ut=null;Fe=false};t.isValidAttribute=function(e,t,i){if(!ut){mt({})}const o=ht(e);const r=ht(t);return St(o,r,i)};t.addHook=function(e,t){if(typeof t!=="function"){return}w(he[e],t)};t.removeHook=function(e,t){if(t!==undefined){const i=_(he[e],t);return i===-1?undefined:k(he[e],i,1)[0]}return y(he[e])};t.removeHooks=function(e){he[e]=[]};t.removeAllHooks=function(){he=de()};return t}var he=pe();const ue=':host{display:block}:host([disabled=true]) .pds-combobox__input-icon{color:var(--pine-color-text-disabled);pointer-events:none}.pds-combobox{position:relative}.pds-combobox__label{color:var(--pine-color-text-label);display:block;font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing);-webkit-margin-after:var(--pine-dimension-2xs);margin-block-end:var(--pine-dimension-2xs)}.pds-combobox__input-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;position:relative;width:100%}.pds-combobox__input{background:var(--pine-color-background-container);border:1px solid var(--pine-color-border);border-radius:var(--pine-dimension-125);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--pine-color-text-active);-ms-flex:1;flex:1;font:var(--pine-typography-body-medium);padding:var(--pine-dimension-xs) var(--pine-dimension-450) var(--pine-dimension-xs) var(--pine-dimension-150);-webkit-transition:border-color 0.2s ease;transition:border-color 0.2s ease;width:100%}.pds-combobox__input:hover:not(:disabled){border-color:var(--pine-color-border-hover)}.pds-combobox__input:disabled{background:var(--pine-color-background-container-disabled);border-color:var(--pine-color-border-disabled);color:var(--pine-color-text-disabled);cursor:not-allowed}.pds-combobox__input:disabled::-webkit-input-placeholder{color:var(--pine-color-text-placeholder-disabled)}.pds-combobox__input:disabled::-moz-placeholder{color:var(--pine-color-text-placeholder-disabled)}.pds-combobox__input:disabled:-ms-input-placeholder{color:var(--pine-color-text-placeholder-disabled)}.pds-combobox__input:disabled::-ms-input-placeholder{color:var(--pine-color-text-placeholder-disabled)}.pds-combobox__input:disabled::placeholder{color:var(--pine-color-text-placeholder-disabled)}.pds-combobox__input:focus-visible{border-color:var(--pine-color-border-active);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-combobox__input::-webkit-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-combobox__input::-moz-placeholder{color:var(--pine-color-text-placeholder)}.pds-combobox__input:-ms-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-combobox__input::-ms-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-combobox__input::placeholder{color:var(--pine-color-text-placeholder)}.pds-combobox__input-icon{color:var(--pine-color-text-secondary);pointer-events:none;position:absolute;right:var(--pine-dimension-150);z-index:var(--pine-z-index-raised)}.pds-combobox__listbox{background:var(--pine-color-background-container);border:0;border-radius:var(--pine-dimension-125);-webkit-box-shadow:var(--pine-box-shadow);box-shadow:var(--pine-box-shadow);list-style:none;margin:0;min-width:220px;overflow-y:auto;padding:var(--pine-dimension-xs);position:absolute;z-index:var(--pine-z-index-raised)}.pds-combobox__option{-ms-flex-align:center;align-items:center;background:transparent;border-radius:var(--pine-dimension-125);color:var(--pine-color-text-secondary);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-medium);-ms-flex-pack:justify;justify-content:space-between;padding:var(--pine-dimension-xs) var(--pine-dimension-sm);position:relative;-webkit-transition:background 0.15s;transition:background 0.15s}.pds-combobox__option[aria-selected=true]{background:var(--pine-color-grey-150)}.pds-combobox__option:focus-visible{outline:0}.pds-combobox__option .pds-combobox__option--layout .pds-combobox__option-layout-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:100%}.pds-combobox__option .pds-combobox__option--chip .pds-combobox__option-chip{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:100%}.pds-combobox__option:last-child{-webkit-margin-after:0;margin-block-end:0}.pds-combobox__option--highlighted,.pds-combobox__option[selected],.pds-combobox__option--selected{background:var(--pine-color-grey-150)}.pds-combobox__option-check{color:currentColor;font-size:var(--pine-dimension-150);-webkit-margin-start:var(--pine-dimension-150);margin-inline-start:var(--pine-dimension-150)}.pds-combobox__group-label{color:var(--pine-color-text-placeholder);cursor:default;font:var(--pine-typography-heading-caption);-webkit-margin-after:var(--pine-dimension-2xs);margin-block-end:var(--pine-dimension-2xs);-webkit-margin-before:var(--pine-dimension-150);margin-block-start:var(--pine-dimension-150);padding:var(--pine-dimension-2xs) var(--pine-dimension-sm);text-transform:uppercase}.pds-combobox__group-label:first-child{-webkit-margin-before:0;margin-block-start:0}.pds-combobox__button-trigger{-ms-flex-align:center;align-items:center;background:var(--color-background-default, var(--pine-color-secondary));border:var(--pine-border);border-radius:var(--pine-border-radius-full);color:var(--color-text-default, #ffffff);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-medium);-ms-flex-pack:justify;justify-content:space-between;min-height:var(--pine-dimension-450);outline:none;padding:0 var(--pine-dimension-sm);-webkit-transition:border-color 0.15s, background 0.15s, -webkit-box-shadow 0.15s;transition:border-color 0.15s, background 0.15s, -webkit-box-shadow 0.15s;transition:border-color 0.15s, box-shadow 0.15s, background 0.15s;transition:border-color 0.15s, box-shadow 0.15s, background 0.15s, -webkit-box-shadow 0.15s;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.pds-combobox__button-trigger .pds-combobox__button-trigger-layout-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.pds-combobox__button-trigger .trigger-content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:100%}.pds-combobox__button-trigger:focus-visible{border-color:var(--color-border-focus, var(--pine-color-border));-webkit-box-shadow:0 0 0 2px var(--color-outline, var(--pine-color-focus-ring));box-shadow:0 0 0 2px var(--color-outline, var(--pine-color-focus-ring))}.pds-combobox__button-trigger:hover{background:var(--color-background-hover, var(--pine-color-secondary-hover));border-color:var(--color-border-hover, var(--pine-color-border-hover))}.pds-combobox__button-trigger[aria-disabled=true],.pds-combobox__button-trigger:disabled{background:var(--color-background-disabled, var(--pine-color-secondary-disabled));border-color:var(--color-border-disabled, var(--pine-color-border-disabled));color:var(--color-text-disabled, var(--pine-color-text-secondary-disabled));cursor:not-allowed;opacity:0.6}.pds-combobox__button-trigger-label{color:inherit;-ms-flex:1 1 auto;flex:1 1 auto;text-align:start}.pds-combobox__button-trigger-chevron{color:currentColor;-webkit-margin-start:var(--pine-dimension-150);margin-inline-start:var(--pine-dimension-150)}.pds-combobox__button-trigger--primary{--color-background-default:var(--pine-color-primary);--color-background-hover:var(--pine-color-primary-hover);--color-background-disabled:var(--pine-color-primary-disabled);--color-border-default:var(--pine-color-primary);--color-border-hover:var(--pine-color-primary-hover);--color-border-disabled:var(--pine-color-primary-disabled);--color-border-focus:var(--pine-color-primary);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-primary-disabled);--color-outline:var(--pine-color-focus-ring)}.pds-combobox__button-trigger--accent{--color-background-default:var(--pine-color-accent);--color-background-hover:var(--pine-color-accent-hover);--color-background-disabled:var(--pine-color-accent-disabled);--color-border-default:var(--pine-color-accent);--color-border-hover:var(--pine-color-accent-hover);--color-border-disabled:var(--pine-color-accent-disabled);--color-border-focus:var(--pine-color-accent);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-accent-disabled);--color-outline:var(--pine-color-focus-ring)}.pds-combobox__button-trigger--secondary{--color-background-default:var(--pine-color-secondary);--color-background-hover:var(--pine-color-secondary-hover);--color-background-disabled:var(--pine-color-secondary-disabled);--color-border-default:var(--pine-color-border);--color-border-hover:var(--pine-color-border-hover);--color-border-disabled:var(--pine-color-border-disabled);--color-border-focus:var(--pine-color-border);--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring)}.pds-combobox__button-trigger--destructive{--color-background-default:var(--pine-color-danger);--color-background-hover:var(--pine-color-danger-hover);--color-background-disabled:var(--pine-color-danger-disabled);--color-border-default:var(--pine-color-danger);--color-border-hover:var(--pine-color-danger-hover);--color-border-disabled:var(--pine-color-danger-disabled);--color-border-focus:var(--pine-color-danger);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-danger-disabled);--color-outline:var(--pine-color-focus-ring-danger)}.visually-hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[data-layout]{border-radius:var(--pine-dimension-125);padding-block:var(--pine-dimension-xs)}.pds-combobox__chip-trigger{-ms-flex-align:center;align-items:center;border-radius:var(--pine-dimension-sm);cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;font:var(--pine-typography-body-medium);-ms-flex-pack:justify;justify-content:space-between;outline:none;padding-block:var(--pine-dimension-025);padding-inline:var(--pine-dimension-150);-webkit-transition:all 0.15s ease;transition:all 0.15s ease;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.pds-combobox__chip-trigger .pds-combobox__chip-trigger-layout-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex:1;flex:1}.pds-combobox__chip-trigger .trigger-content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:100%}.pds-combobox__chip-trigger:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-combobox__chip-trigger[aria-disabled=true]{cursor:not-allowed;opacity:0.6}.pds-combobox__chip-trigger-label{color:inherit;-ms-flex:1 1 auto;flex:1 1 auto;text-align:start}.pds-combobox__chip-trigger-chevron{color:currentColor;-webkit-margin-start:var(--pine-dimension-150);margin-inline-start:var(--pine-dimension-150)}.pds-combobox__chip-trigger-icon{-webkit-margin-end:var(--pine-dimension-2xs);margin-inline-end:var(--pine-dimension-2xs)}.pds-combobox__chip-trigger--neutral,.pds-combobox__chip-trigger--accent,.pds-combobox__chip-trigger--success,.pds-combobox__chip-trigger--warning,.pds-combobox__chip-trigger--danger,.pds-combobox__chip-trigger--info{background:var(--chip-bg);border:var(--pine-border-width) solid var(--chip-border);color:var(--chip-text)}.pds-combobox__chip-trigger--neutral:hover:not([aria-disabled=true]),.pds-combobox__chip-trigger--accent:hover:not([aria-disabled=true]),.pds-combobox__chip-trigger--success:hover:not([aria-disabled=true]),.pds-combobox__chip-trigger--warning:hover:not([aria-disabled=true]),.pds-combobox__chip-trigger--danger:hover:not([aria-disabled=true]),.pds-combobox__chip-trigger--info:hover:not([aria-disabled=true]){background:var(--chip-bg-hover)}.pds-combobox__chip-trigger--neutral:focus-visible,.pds-combobox__chip-trigger--accent:focus-visible,.pds-combobox__chip-trigger--success:focus-visible,.pds-combobox__chip-trigger--warning:focus-visible,.pds-combobox__chip-trigger--danger:focus-visible,.pds-combobox__chip-trigger--info:focus-visible{border-color:var(--chip-border)}.pds-combobox__chip-trigger--neutral{--chip-bg:var(--pine-chip-color-neutral);--chip-bg-hover:var(--pine-chip-color-neutral-hover);--chip-border:var(--pine-chip-color-neutral-hover);--chip-text:var(--pine-color-text-neutral)}.pds-combobox__chip-trigger--accent{--chip-bg:var(--pine-chip-color-accent);--chip-bg-hover:var(--pine-chip-color-accent-hover);--chip-border:var(--pine-chip-color-accent-hover);--chip-text:var(--pine-color-text-accent)}.pds-combobox__chip-trigger--success{--chip-bg:var(--pine-chip-color-success);--chip-bg-hover:var(--pine-chip-color-success-hover);--chip-border:var(--pine-chip-color-success-hover);--chip-text:var(--pine-color-text-success)}.pds-combobox__chip-trigger--warning{--chip-bg:var(--pine-chip-color-warning);--chip-bg-hover:var(--pine-chip-color-warning-hover);--chip-border:var(--pine-chip-color-warning-hover);--chip-text:var(--pine-color-text-warning)}.pds-combobox__chip-trigger--danger{--chip-bg:var(--pine-chip-color-danger);--chip-bg-hover:var(--pine-chip-color-danger-hover);--chip-border:var(--pine-chip-color-danger-hover);--chip-text:var(--pine-color-text-danger)}.pds-combobox__chip-trigger--info{--chip-bg:var(--pine-chip-color-info);--chip-bg-hover:var(--pine-chip-color-info-hover);--chip-border:var(--pine-chip-color-info-hover);--chip-text:var(--pine-color-text-info)}.pds-combobox__chip-trigger--brand{background:-webkit-gradient(linear, left top, right top, from(#FF3E14), to(#6B62F2));background:linear-gradient(90deg, #FF3E14 0%, #6B62F2 100%);border:0;color:var(--pine-color-text-neutral);padding:1px;position:relative}.pds-combobox__chip-trigger--brand .pds-combobox__chip-trigger-label{background:rgba(255, 255, 255, 0.9);border-radius:calc(var(--pine-dimension-sm) - 1px);color:var(--pine-color-text-neutral);font-weight:var(--pine-font-weight-medium);padding:var(--pine-dimension-025) var(--pine-dimension-150);position:relative;z-index:1}.pds-combobox__chip-trigger--brand .pds-combobox__chip-trigger-chevron{position:relative;z-index:1}.pds-combobox__chip-trigger--brand:hover:not([aria-disabled=true]) .pds-combobox__chip-trigger-label{background:rgba(255, 255, 255, 0.8)}.pds-combobox__chip-trigger--dropdown:not(.pds-combobox__chip-trigger--brand){padding:var(--pine-dimension-none)}.pds-combobox__chip-trigger--dropdown:not(.pds-combobox__chip-trigger--brand) .pds-combobox__chip-trigger-label{padding:var(--pine-dimension-025) var(--pine-dimension-150)}.pds-combobox__chip-trigger--large .pds-combobox__chip-trigger-label{font-family:var(--pine-font-family-heading);font-size:var(--pine-font-size-heading-6);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing-heading-6)}.pds-combobox__chip-trigger--dot .pds-combobox__chip-trigger-label::before{border:var(--pine-border-width) solid transparent;border-radius:var(--pine-border-radius-full);content:"";display:inline-block;height:var(--pine-dimension-2xs);-webkit-margin-end:var(--pine-dimension-2xs);margin-inline-end:var(--pine-dimension-2xs);width:var(--pine-dimension-2xs)}';const fe=class{constructor(i){e(this,i);this.pdsComboboxChange=t(this,"pdsComboboxChange");this.customOptionLayouts=false;this.customTriggerContent=false;this.disabled=false;this.dropdownPlacement="bottom-start";this.dropdownWidth="236px";this.hideLabel=false;this.mode="filter";this.trigger="input";this.triggerWidth="fit-content";this.triggerVariant="secondary";this.chipSentiment="neutral";this.chipLarge=false;this.chipDot=false;this.value="";this.displayText="";this.filteredItems=[];this.highlightedIndex=-1;this.isOpen=false;this.selectedOption=null;this.selectedOptionLayoutContent="";this.selectedOptionChipProps=null;this.optionEls=[];this.allItems=[];this.isUpdatingFromSelection=false;this.handleInput=e=>{const t=e.target;this.displayText=t.value;this.isOpen=true;this.filterOptions();setTimeout((()=>this.openDropdownPositioning()),0)};this.handleInputClick=()=>{if(!this.isOpen){this.isOpen=true;this.filterOptions();this.setInitialHighlightedIndex();setTimeout((()=>this.openDropdownPositioning()),0)}};this.handleKeyDown=e=>{if(!this.isOpen&&(e.key==="ArrowDown"||e.key==="ArrowUp"||e.altKey&&e.key==="ArrowDown")){e.preventDefault();this.isOpen=true;this.filterOptions();this.setInitialHighlightedIndex();setTimeout((()=>{this.openDropdownPositioning();if(this.trigger==="input"){this.focusFirstOption()}else{this.focusFirstOptionForArrowKeys()}}),0);return}if(!this.isOpen){return}const t=this.filteredItems.filter((e=>e.tagName==="OPTION"));switch(e.key){case"ArrowDown":e.preventDefault();if(this.highlightedIndex<0&&t.length>0){this.highlightedIndex=0}else{this.highlightedIndex=Math.min(this.highlightedIndex+1,t.length-1)}this.updateOptionFocus();break;case"ArrowUp":e.preventDefault();if(this.highlightedIndex<0&&t.length>0){this.highlightedIndex=t.length-1}else{this.highlightedIndex=Math.max(this.highlightedIndex-1,0)}this.updateOptionFocus();break;case"Home":e.preventDefault();if(t.length>0){this.highlightedIndex=0;this.updateOptionFocus()}break;case"End":e.preventDefault();if(t.length>0){this.highlightedIndex=t.length-1;this.updateOptionFocus()}break;case"PageDown":e.preventDefault();if(t.length>0){const e=Math.min(this.highlightedIndex+10,t.length-1);this.highlightedIndex=e;this.updateOptionFocus()}break;case"PageUp":e.preventDefault();if(t.length>0){const e=Math.max(this.highlightedIndex-10,0);this.highlightedIndex=e;this.updateOptionFocus()}break;case"Enter":e.preventDefault();if(this.highlightedIndex>=0&&this.highlightedIndex<t.length){this.handleOptionClick(t[this.highlightedIndex]);this.restoreFocusToTrigger()}break;case" ":e.preventDefault();if(this.highlightedIndex>=0&&this.highlightedIndex<t.length){this.handleOptionClick(t[this.highlightedIndex]);this.restoreFocusToTrigger()}break;case"Escape":e.preventDefault();this.isOpen=false;this.highlightedIndex=-1;this.isArrowKeyNavigationMode=false;this.restoreFocusToTrigger();break;case"Tab":this.isOpen=false;this.highlightedIndex=-1;this.isArrowKeyNavigationMode=false;break}};this.isArrowKeyNavigationMode=false;this.onOptionClick=e=>{const t=Number(e.currentTarget.getAttribute("data-option-index"));const i=this.filteredItems.filter((e=>e.tagName==="OPTION"));const o=i[t];this.handleOptionClick(o)};this.onOptionMouseEnter=e=>{const t=Number(e.currentTarget.getAttribute("data-option-index"));this.highlightedIndex=t};this.onOptionMouseDown=e=>{e.preventDefault()};this.onOptionKeyDown=e=>{this.handleKeyDown(e)};this.onButtonTriggerClick=()=>{this.isOpen=!this.isOpen;if(this.isOpen){this.filterOptions();this.setInitialHighlightedIndex();this.isArrowKeyNavigationMode=true;setTimeout((()=>this.openDropdownPositioning()),0)}else{this.isArrowKeyNavigationMode=false}};this.onButtonTriggerKeyDown=e=>{if((e.key==="Enter"||e.key===" "||e.key==="ArrowDown"||e.key==="ArrowUp")&&!this.isOpen){e.preventDefault();e.stopPropagation();this.isOpen=true;this.filterOptions();this.setInitialHighlightedIndex();setTimeout((()=>{this.openDropdownPositioning();this.focusFirstOptionForArrowKeys()}),0)}else if(e.key==="Escape"){e.preventDefault();if(this.isOpen){this.isOpen=false;this.highlightedIndex=-1;this.updateAriaActiveDescendant();this.restoreFocusToTrigger()}}else if(this.isOpen){this.handleKeyDown(e)}};this.onButtonTriggerKeyUp=e=>{if(e.key===" "){e.preventDefault();e.stopPropagation()}};this.onComboboxFocusOut=e=>{var t;const i=e.relatedTarget;const o=i&&((t=this.listboxEl)===null||t===void 0?void 0:t.contains(i));const r=this.el.contains(i);if(!r&&!o){this.isOpen=false;this.highlightedIndex=-1;this.isArrowKeyNavigationMode=false;this.updateAriaActiveDescendant();if(this.selectedOption&&this.displayText!==this.getOptionLabel(this.selectedOption)){this.displayText=this.getOptionLabel(this.selectedOption)}}}}connectedCallback(){if(this.el.attachInternals){this.internals=this.el.attachInternals()}}componentWillLoad(){this.updateOptions()}componentDidLoad(){var e,t,i;if(!this.selectedOption&&this.value&&this.optionEls.length>0){const e=this.optionEls.find((e=>e.value===this.value));if(e){this.setSelectedOption(e);this.displayText=this.getOptionLabel(e)}}if(this.internals){try{this.internals.setFormValue((i=(t=(e=this.selectedOption)===null||e===void 0?void 0:e.value)!==null&&t!==void 0?t:this.value)!==null&&i!==void 0?i:"")}catch(e){}}}handleValueChange(){this.filterOptions();if(this.internals){try{this.internals.setFormValue(this.value)}catch(e){}}if(!this.isUpdatingFromSelection&&this.value&&this.optionEls.length>0){const e=this.selectedOption?this.selectedOption.value:null;if(this.value!==e){const e=this.optionEls.find((e=>e.value===this.value));if(e){this.isUpdatingFromSelection=true;this.setSelectedOption(e);this.displayText=this.getOptionLabel(e);this.isUpdatingFromSelection=false}}}}handleSelectedOptionChange(){this.selectedOptionLayoutContent=this.selectedOption&&this.isOptionLayout(this.selectedOption)?this.getOptionLayoutContent(this.selectedOption):"";this.selectedOptionChipProps=this.selectedOption&&this.isOptionChip(this.selectedOption)?this.getOptionChipProps(this.selectedOption):null;if(this.selectedOption){this.displayText=this.getOptionLabel(this.selectedOption);this.value=this.selectedOption.value;if(this.internals){try{this.internals.setFormValue(this.selectedOption.value)}catch(e){}}}else{this.displayText="";this.value="";if(this.internals){try{this.internals.setFormValue("")}catch(e){}}}}updateOptions(){var e;const t=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector('slot[name="option"], slot:not([name])');if(t){const e=t.assignedElements({flatten:true});this.allItems=[];this.optionEls=[];e.forEach((e=>{if(e.tagName==="OPTION"){this.optionEls.push(e);this.allItems.push(e)}else if(e.tagName==="OPTGROUP"){const t=e;this.allItems.push(t);Array.from(t.children).forEach((e=>{if(e.tagName==="OPTION"){this.optionEls.push(e);this.allItems.push(e)}}))}else if(e.tagName==="PDS-TEXT"){this.allItems.push(e)}}));let i=null;if(this.value){i=this.optionEls.find((e=>e.value===this.value))||null;if(i){this.displayText=this.getOptionLabel(i)}}if(!i&&this.trigger==="chip"&&this.optionEls.length>0){i=this.optionEls[0];this.value=i.value;this.displayText=this.getOptionLabel(i);console.warn("PDS Combobox: Chip triggers should always have a selected option. Automatically selected the first option.")}if(i&&i!==this.selectedOption){this.setSelectedOption(i)}else if(!this.selectedOption&&i){this.setSelectedOption(i)}this.filterOptions()}}getOptionLabel(e){return e.label||e.textContent||""}getOptionLayoutContent(e){return this.sanitizeHtml(e.innerHTML||"")}sanitizeHtml(e){const t={CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>e.startsWith("pds-")||/^[a-z]+$/i.test(e),attributeNameCheck:e=>/^[a-zA-Z][a-zA-Z0-9-]*$/.test(e)||e.startsWith("data-")||e.startsWith("aria-"),allowCustomizedBuiltInElements:false},ALLOW_DATA_ATTR:true,ALLOW_ARIA_ATTR:true,FORBID_TAGS:["script","iframe","object","embed","form","input","textarea","select","button","style"],FORBID_ATTR:["onerror","onload","onclick","onmouseover","onmouseout","onmousemove","onfocus","onblur","onchange","onsubmit","onkeydown","onkeyup","onkeypress","onmousedown","onmouseup","ondblclick","oncontextmenu","onscroll"],ALLOWED_URI_REGEXP:/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i};return he.sanitize(e,t)}isOptionLayout(e){return this.customOptionLayouts&&e.hasAttribute("data-layout")}isOptionChip(e){return e.hasAttribute("chip-sentiment")||e.hasAttribute("chip-large")||e.hasAttribute("chip-icon")||e.hasAttribute("chip-dot")}getOptionChipProps(e){return{sentiment:e.getAttribute("chip-sentiment")||"neutral",large:e.hasAttribute("chip-large"),icon:e.getAttribute("chip-icon")||undefined,dot:e.hasAttribute("chip-dot")}}isOptionSelected(e){return this.selectedOption===e}setSelectedOption(e){this.selectedOption=e;if(e&&this.isOptionChip(e)){this.selectedOptionChipProps=this.getOptionChipProps(e)}else{this.selectedOptionChipProps=null}}filterOptions(){if(this.allItems.length===0&&this.optionEls.length>0){this.allItems=[...this.optionEls]}if(this.mode==="select-only"){this.filteredItems=[...this.allItems]}else{const e=this.displayText.toLowerCase();const t=this.optionEls.filter((t=>{if(this.isOptionLayout(t)){const i=t.getAttribute("data-search-text")||t.textContent||"";return i.toLowerCase().includes(e)}return this.getOptionLabel(t).toLowerCase().includes(e)}));this.filteredItems=[];let i=null;this.allItems.forEach((e=>{if(e.tagName==="OPTGROUP"||e.tagName==="PDS-TEXT"){i=e}else if(e.tagName==="OPTION"&&t.includes(e)){const t=e;const o=t.parentElement;let r=null;if(o&&o.tagName==="OPTGROUP"){r=o}else if(i&&i.tagName==="PDS-TEXT"){r=i}if(r&&!this.filteredItems.includes(r)){this.filteredItems.push(r)}this.filteredItems.push(t)}}))}this.highlightedIndex=-1}openDropdownPositioning(){if(this.triggerEl&&this.listboxEl){this.listboxEl.style.width=this.dropdownWidth;if(this.maxHeight){this.listboxEl.style.maxHeight=this.maxHeight;this.listboxEl.style.overflowY="auto"}n(this.triggerEl,this.listboxEl,{placement:this.dropdownPlacement,strategy:"absolute",middleware:[s(12),a(),c({padding:5})]}).then((({x:e,y:t})=>{Object.assign(this.listboxEl.style,{left:`${e}px`,top:`${t}px`,position:"absolute",zIndex:"var(--pine-z-index-raised)"})}))}}async setFocus(){var e;if(this.inputEl){this.inputEl.focus()}else{(e=this.triggerEl)===null||e===void 0?void 0:e.focus()}}setInitialHighlightedIndex(){const e=this.filteredItems.filter((e=>e.tagName==="OPTION"));if(e.length===0){this.highlightedIndex=-1;return}if(this.selectedOption){const t=e.findIndex((e=>e===this.selectedOption));if(t>=0){this.highlightedIndex=t;return}}this.highlightedIndex=0}focusFirstOption(){if(this.isOpen){const e=this.filteredItems.filter((e=>e.tagName==="OPTION"));if(e.length>0){this.setInitialHighlightedIndex();if(this.listboxEl){this.updateOptionFocus()}}}}focusFirstOptionForArrowKeys(){if(this.isOpen){this.isArrowKeyNavigationMode=true;const e=this.filteredItems.filter((e=>e.tagName==="OPTION"));if(e.length>0){this.setInitialHighlightedIndex();if(this.listboxEl){const e=this.listboxEl.querySelectorAll('[role="option"]');const t=e[this.highlightedIndex];if(t){e.forEach((e=>{e.setAttribute("tabindex","-1")}));t.setAttribute("tabindex","0");t.focus();t.scrollIntoView({block:"nearest",behavior:"smooth"})}}this.updateAriaActiveDescendant()}}}updateOptionFocus(){if(!this.listboxEl||this.highlightedIndex<0)return;const e=this.listboxEl.querySelectorAll('[role="option"]');const t=e[this.highlightedIndex];if(t){const i=Array.from(e).some((e=>e===document.activeElement));if(i||this.isArrowKeyNavigationMode){e.forEach((e=>{e.setAttribute("tabindex","-1")}));t.setAttribute("tabindex","0");t.focus()}t.scrollIntoView({block:"nearest",behavior:"smooth"})}this.updateAriaActiveDescendant()}updateAriaActiveDescendant(){if(this.triggerEl&&this.highlightedIndex>=0){this.triggerEl.setAttribute("aria-activedescendant",`pds-combobox-option-${this.highlightedIndex}`)}else if(this.triggerEl){this.triggerEl.removeAttribute("aria-activedescendant")}}restoreFocusToTrigger(){setTimeout((()=>{if(this.inputEl){this.inputEl.focus()}else if(this.triggerEl){this.triggerEl.focus()}}),0)}async getSelectedValue(){return this.selectedOption?this.selectedOption.value:null}get selectedLabel(){return this.displayText||""}get selectedLayoutContent(){return this.selectedOptionLayoutContent}get selectedHasLayout(){return this.selectedOption?this.isOptionLayout(this.selectedOption):false}get selectedChipSentiment(){if(this.selectedOption&&this.isOptionChip(this.selectedOption)){const e=this.selectedOption.getAttribute("chip-sentiment");if(e)return e}if(this.selectedOption&&this.isOptionLayout(this.selectedOption)){const e=this.selectedOption.querySelector("pds-chip");const t=e===null||e===void 0?void 0:e.getAttribute("sentiment");if(t)return t}if(this.customTriggerContent){const e=this.el.querySelector('pds-chip[slot="trigger-content"]');if(e){const t=e.getAttribute("sentiment");if(t)return t}}return this.chipSentiment}get selectedChipLarge(){if(this.selectedOption&&this.isOptionChip(this.selectedOption)){if(this.selectedOption.hasAttribute("chip-large"))return true}if(this.selectedOption&&this.isOptionLayout(this.selectedOption)){const e=this.selectedOption.querySelector("pds-chip");if(e===null||e===void 0?void 0:e.hasAttribute("large"))return true}if(this.customTriggerContent){const e=this.el.querySelector('pds-chip[slot="trigger-content"]');if(e&&e.hasAttribute("large")){return true}}return this.chipLarge}get selectedChipIcon(){if(this.selectedOption&&this.isOptionChip(this.selectedOption)){const e=this.selectedOption.getAttribute("chip-icon");if(e)return e}if(this.selectedOption&&this.isOptionLayout(this.selectedOption)){const e=this.selectedOption.querySelector("pds-chip");const t=e===null||e===void 0?void 0:e.getAttribute("icon");if(t)return t}if(this.customTriggerContent){const e=this.el.querySelector('pds-chip[slot="trigger-content"]');if(e){const t=e.getAttribute("icon");if(t)return t}}return this.chipIcon}get selectedChipDot(){if(this.selectedOption&&this.isOptionChip(this.selectedOption)){if(this.selectedOption.hasAttribute("chip-dot"))return true}if(this.selectedOption&&this.isOptionLayout(this.selectedOption)){const e=this.selectedOption.querySelector("pds-chip");if(e===null||e===void 0?void 0:e.hasAttribute("dot"))return true}if(this.customTriggerContent){const e=this.el.querySelector('pds-chip[slot="trigger-content"]');if(e&&e.hasAttribute("dot")){return true}}return this.chipDot}handleOptionClick(e){this.setSelectedOption(e);this.isOpen=false;this.pdsComboboxChange.emit({value:e.value})}renderDropdown(){if(!this.isOpen||this.filteredItems.length===0){return null}let e=0;const t=this.filteredItems.filter((e=>e.tagName==="OPTION"));return i("ul",{class:"pds-combobox__listbox",role:"listbox",id:"pds-combobox-listbox","aria-label":this.label||"Options","aria-multiselectable":"false",ref:e=>this.listboxEl=e},this.filteredItems.map(((o,r)=>{if(o.tagName==="OPTGROUP"){const e=o;return i("li",{key:`optgroup-${r}`,class:"pds-combobox__group-label",role:"presentation","aria-label":e.label},e.label)}else if(o.tagName==="PDS-TEXT"){const e=o;return i("li",{key:`pds-text-${r}`,class:"pds-combobox__group-label",role:"presentation"},e.textContent)}else if(o.tagName==="OPTION"){const r=o;const n=this.isOptionSelected(r);const s=this.highlightedIndex===e;const a=this.isOptionLayout(r);const c=this.isOptionChip(r);const l=e++;return i("li",{key:r.value,id:`pds-combobox-option-${l}`,role:"option","aria-selected":n?"true":"false","aria-setsize":t.length,"aria-posinset":l+1,"aria-label":a||c?r.getAttribute("aria-label")||this.getOptionLabel(r):undefined,tabindex:s?"0":"-1",class:{"pds-combobox__option":true,"pds-combobox__option--highlighted":s,"pds-combobox__option--layout":a,"pds-combobox__option--chip":c},"data-option-index":l,onMouseDown:this.onOptionMouseDown,onClick:this.onOptionClick,onMouseEnter:this.onOptionMouseEnter,onKeyDown:this.onOptionKeyDown},a?i("pds-box",{class:"pds-combobox__option-layout-wrapper",innerHTML:this.getOptionLayoutContent(r)}):c?this.renderOptionChip(r):this.getOptionLabel(r),n&&i("pds-icon",{icon:"check",size:"regular",class:"pds-combobox__option-check"}))}return null})))}renderCaretIcon(){return i("pds-icon",{icon:"caret-down","aria-hidden":"true",class:"pds-combobox__button-trigger-chevron"})}renderLayoutContent(){return i("div",{class:"pds-combobox__button-trigger-layout-wrapper",innerHTML:this.selectedLayoutContent})}renderDefaultContent(){return i("span",{class:"pds-combobox__button-trigger-label"},this.selectedLabel||this.placeholder)}shouldShowLayoutContent(){return this.selectedHasLayout&&!!this.selectedLayoutContent}getChipTriggerClass(){const e=["pds-combobox__chip-trigger"];e.push(`pds-combobox__chip-trigger--${this.selectedChipSentiment}`);e.push("pds-combobox__chip-trigger--dropdown");if(this.selectedChipLarge){e.push("pds-combobox__chip-trigger--large")}if(this.selectedChipDot){e.push("pds-combobox__chip-trigger--dot")}return e.join(" ")}renderButtonTriggerContent(){if(this.customTriggerContent){if(this.shouldShowLayoutContent()){return[this.renderLayoutContent(),this.renderCaretIcon()]}return i("slot",{name:"trigger-content"})}if(this.shouldShowLayoutContent()){return[this.renderLayoutContent(),this.renderCaretIcon()]}return[this.renderDefaultContent(),this.renderCaretIcon()]}renderChipTriggerContent(){if(this.customTriggerContent){if(this.shouldShowLayoutContent()){return this.renderChipTriggerLayoutContent()}return i("slot",{name:"trigger-content"})}if(this.shouldShowLayoutContent()){return this.renderChipTriggerLayoutContent()}if(this.selectedOption&&this.selectedOptionChipProps){return this.renderSelectedOptionAsChip()}return[this.renderChipTriggerDefaultContent(),this.renderCaretIcon()]}renderSelectedOptionAsChip(){if(!this.selectedOption||!this.selectedOptionChipProps)return null;return i("pds-chip",{sentiment:this.selectedOptionChipProps.sentiment,variant:"dropdown",large:this.selectedOptionChipProps.large,icon:this.selectedOptionChipProps.icon,dot:this.selectedOptionChipProps.dot,class:"pds-combobox__chip-trigger-auto"},this.getOptionLabel(this.selectedOption))}renderChipTriggerLayoutContent(){return i("div",{class:"pds-combobox__chip-trigger-layout-wrapper",innerHTML:this.getModifiedLayoutContentForTrigger()})}getModifiedLayoutContentForTrigger(){let e=this.selectedLayoutContent;if(e.includes("<pds-chip")){const t=document.createElement("div");t.innerHTML=e;const i=t.querySelector("pds-chip");if(i){i.setAttribute("variant","dropdown");e=t.innerHTML}}return e}renderChipTriggerDefaultContent(){return i("span",{class:"pds-combobox__chip-trigger-label"},this.selectedChipIcon&&i("pds-icon",{icon:this.selectedChipIcon,class:"pds-combobox__chip-trigger-icon"}),this.selectedLabel||this.placeholder)}renderOptionChip(e){const t=this.getOptionChipProps(e);return i("pds-chip",{sentiment:t.sentiment,variant:"text",large:t.large,icon:t.icon,dot:t.dot,class:"pds-combobox__option-chip"},this.getOptionLabel(e))}render(){const e=`pds-combobox__button-trigger pds-combobox__button-trigger--${this.triggerVariant}`;return i(o,{key:"d62992abd6eae05cfff52cfc0272490ca6370291"},i("div",{key:"affff971535065b7352daee494742bf7b65a61f4",class:"pds-combobox",tabIndex:-1,onFocusout:this.onComboboxFocusOut},this.label&&i("label",{key:"c27f88928932bc4535698cb88595b1559cb22e55",htmlFor:this.componentId,class:"pds-combobox__label"},i("span",{key:"0b65e67897735819cb2a4dc7d6d7d355af2f28d5",class:this.hideLabel?"visually-hidden":""},this.label)),this.trigger==="input"?i("div",{class:"pds-combobox__input-wrapper",style:{width:this.triggerWidth}},i("input",{ref:e=>{this.inputEl=e;this.triggerEl=e},class:"pds-combobox__input",type:"text",role:"combobox","aria-autocomplete":"list","aria-controls":"pds-combobox-listbox","aria-activedescendant":this.isOpen&&this.highlightedIndex>=0?`pds-combobox-option-${this.highlightedIndex}`:undefined,"aria-expanded":this.isOpen?"true":"false","aria-disabled":this.disabled?"true":"false","aria-label":this.hideLabel?this.label:undefined,id:this.componentId,value:this.displayText,placeholder:this.placeholder,disabled:this.disabled,onInput:this.handleInput,onClick:this.handleInputClick,onKeyDown:this.handleKeyDown,autocomplete:"off",part:"input"}),i("pds-icon",{icon:"enlarge","aria-hidden":"true",class:"pds-combobox__input-icon"})):this.trigger==="chip"?i("div",{class:this.getChipTriggerClass(),style:{width:this.triggerWidth},role:"combobox","aria-haspopup":"listbox","aria-controls":"pds-combobox-listbox","aria-activedescendant":this.isOpen&&this.highlightedIndex>=0?`pds-combobox-option-${this.highlightedIndex}`:undefined,"aria-expanded":this.isOpen?"true":"false","aria-disabled":this.disabled?"true":"false","aria-label":this.hideLabel?this.label:undefined,id:this.componentId,tabIndex:this.disabled?-1:0,onClick:this.onButtonTriggerClick,"data-layout":this.customTriggerContent,onKeyDown:this.onButtonTriggerKeyDown,onKeyUp:this.onButtonTriggerKeyUp,ref:e=>this.triggerEl=e,part:"chip-trigger"},this.renderChipTriggerContent()):i("div",{class:e,style:{width:this.triggerWidth},role:"combobox","aria-haspopup":"listbox","aria-controls":"pds-combobox-listbox","aria-activedescendant":this.isOpen&&this.highlightedIndex>=0?`pds-combobox-option-${this.highlightedIndex}`:undefined,"aria-expanded":this.isOpen?"true":"false","aria-disabled":this.disabled?"true":"false","aria-label":this.hideLabel?this.label:undefined,id:this.componentId,tabIndex:this.disabled?-1:0,onClick:this.onButtonTriggerClick,"data-layout":this.customTriggerContent,onKeyDown:this.onButtonTriggerKeyDown,onKeyUp:this.onButtonTriggerKeyUp,ref:e=>this.triggerEl=e,part:"button-trigger"},this.renderButtonTriggerContent()),i("div",{key:"47c259c2bc5b6f4f1d249d9bddd476b11c5a90fe",style:{display:"none"}},i("slot",{key:"83355a804fe978b6fb58838b4174bc815cf2f933",onSlotchange:()=>this.updateOptions()})),this.renderDropdown()))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:["handleValueChange"],selectedOption:["handleSelectedOptionChange"]}}};fe.style=ue;export{fe as pds_combobox};
|
|
3
|
+
//# sourceMappingURL=p-cffc98ae.entry.js.map
|