@pine-ds/core 3.6.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/index.d.ts +4 -0
- package/components/index.js +2 -0
- package/components/index.js.map +1 -1
- package/components/index2.js +4 -2
- package/components/index2.js.map +1 -1
- package/components/mock-pds-modal.js +2 -2
- package/components/mock-pds-modal.js.map +1 -1
- package/components/pds-avatar.js +1 -1
- package/components/pds-button2.js +7 -4
- package/components/pds-button2.js.map +1 -1
- package/components/pds-checkbox2.js +8 -5
- 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 +735 -54
- package/components/pds-combobox.js.map +1 -1
- package/components/pds-copytext.js +4 -4
- package/components/pds-copytext.js.map +1 -1
- package/components/pds-dropdown-menu-separator.js +1 -1
- package/components/pds-dropdown-menu-separator.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.d.ts +11 -0
- package/components/pds-filter.js +518 -0
- package/components/pds-filter.js.map +1 -0
- package/components/pds-filters.d.ts +11 -0
- package/components/pds-filters.js +38 -0
- package/components/pds-filters.js.map +1 -0
- package/components/pds-image.js +2 -2
- package/components/pds-input.js +3 -3
- package/components/pds-input.js.map +1 -1
- package/components/pds-link2.js +2 -2
- package/components/pds-loader2.js +1 -1
- package/components/pds-modal-content.js +2 -2
- package/components/pds-modal-footer.js +1 -1
- package/components/pds-modal-header.js +1 -1
- package/components/pds-modal.js +4 -4
- 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-progress.js +1 -1
- package/components/pds-property.js +1 -1
- package/components/pds-radio.js +11 -5
- package/components/pds-radio.js.map +1 -1
- package/components/pds-row.js +1 -1
- package/components/pds-select.js +22 -6
- package/components/pds-select.js.map +1 -1
- package/components/pds-sortable-item.js +1 -1
- package/components/pds-sortable.js +1 -1
- package/components/pds-switch.js +8 -5
- package/components/pds-switch.js.map +1 -1
- package/components/pds-tab.js +4 -4
- package/components/pds-tab.js.map +1 -1
- package/components/pds-table-body.js +1 -1
- package/components/pds-table-cell2.js +3 -3
- package/components/pds-table-cell2.js.map +1 -1
- package/components/pds-table-head-cell2.js +3 -3
- package/components/pds-table-head-cell2.js.map +1 -1
- package/components/pds-table-head.js +2 -2
- package/components/pds-table-head.js.map +1 -1
- package/components/pds-table-row.js +2 -2
- 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-tabpanel.js +1 -1
- package/components/pds-tabs.js +14 -4
- package/components/pds-tabs.js.map +1 -1
- package/components/pds-text2.js +1 -1
- package/components/pds-textarea.js +10 -7
- package/components/pds-textarea.js.map +1 -1
- package/components/pds-toast.js +3 -3
- 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-g-uSeICs.js → index-DDTyvZD7.js} +5 -2
- package/dist/cjs/index-DDTyvZD7.js.map +1 -0
- package/dist/cjs/{index-DVaLegMK.js → index-DtnvzYhe.js} +7 -3
- package/dist/cjs/index-DtnvzYhe.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/mock-pds-modal.cjs.entry.js +3 -3
- 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 +2 -2
- package/dist/cjs/pds-alert.cjs.entry.js +1 -1
- package/dist/cjs/pds-avatar.cjs.entry.js +2 -2
- package/dist/cjs/pds-box.cjs.entry.js +1 -1
- package/dist/cjs/pds-button.cjs.entry.js +8 -5
- 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 +9 -6
- 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 +4 -4
- 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 +719 -51
- 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 +5 -5
- 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-divider.cjs.entry.js +1 -1
- package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +2 -2
- package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-dropdown-menu-separator.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-dropdown-menu.cjs.entry.js +2 -2
- 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 +488 -0
- package/dist/cjs/pds-filter.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-filter.entry.cjs.js.map +1 -0
- package/dist/cjs/pds-filters.cjs.entry.js +20 -0
- package/dist/cjs/pds-filters.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-filters.entry.cjs.js.map +1 -0
- package/dist/cjs/pds-icon.cjs.entry.js +1 -1
- package/dist/cjs/pds-image.cjs.entry.js +3 -3
- package/dist/cjs/pds-input.cjs.entry.js +5 -5
- 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 +4 -4
- package/dist/cjs/pds-loader.cjs.entry.js +2 -2
- package/dist/cjs/pds-modal-content.cjs.entry.js +3 -3
- package/dist/cjs/pds-modal-footer.cjs.entry.js +2 -2
- package/dist/cjs/pds-modal-header.cjs.entry.js +2 -2
- package/dist/cjs/pds-modal.cjs.entry.js +5 -5
- 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 +118 -13
- 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-progress.cjs.entry.js +2 -2
- package/dist/cjs/pds-property.cjs.entry.js +2 -2
- package/dist/cjs/pds-radio.cjs.entry.js +12 -6
- 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-row.cjs.entry.js +2 -2
- package/dist/cjs/pds-select.cjs.entry.js +21 -6
- 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 +3 -3
- package/dist/cjs/pds-sortable.cjs.entry.js +2 -2
- package/dist/cjs/pds-switch.cjs.entry.js +9 -6
- 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 +5 -5
- 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-body.cjs.entry.js +2 -2
- package/dist/cjs/pds-table-cell.cjs.entry.js +4 -4
- 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 +5 -5
- 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 +3 -3
- 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 +3 -3
- 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 +2 -2
- 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-tabpanel.cjs.entry.js +2 -2
- package/dist/cjs/pds-tabs.cjs.entry.js +15 -5
- 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-text.cjs.entry.js +2 -2
- package/dist/cjs/pds-textarea.cjs.entry.js +11 -8
- 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-toast.cjs.entry.js +4 -4
- package/dist/cjs/pds-tooltip.cjs.entry.js +5 -5
- 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 +2 -2
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/pds-button/pds-button.css +29 -3
- package/dist/collection/components/pds-button/pds-button.js +8 -5
- package/dist/collection/components/pds-button/pds-button.js.map +1 -1
- package/dist/collection/components/pds-button/stories/pds-button.stories.js +28 -1
- 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 +213 -4
- package/dist/collection/components/pds-combobox/pds-combobox.js +837 -54
- package/dist/collection/components/pds-combobox/pds-combobox.js.map +1 -1
- package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +182 -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-separator/pds-dropdown-menu-separator.css +4 -1
- package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +1 -1
- package/dist/collection/components/pds-filters/pds-filter/filter-interface.js +2 -0
- package/dist/collection/components/pds-filters/pds-filter/filter-interface.js.map +1 -0
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +193 -0
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.js +732 -0
- package/dist/collection/components/pds-filters/pds-filter/pds-filter.js.map +1 -0
- package/dist/collection/components/pds-filters/pds-filter/stories/pds-filter.stories.js +93 -0
- package/dist/collection/components/pds-filters/pds-filters.css +10 -0
- package/dist/collection/components/pds-filters/pds-filters.js +45 -0
- package/dist/collection/components/pds-filters/pds-filters.js.map +1 -0
- package/dist/collection/components/pds-filters/stories/pds-filters.stories.js +40 -0
- package/dist/collection/components/pds-image/pds-image.js +2 -2
- package/dist/collection/components/pds-input/pds-input.css +18 -3
- package/dist/collection/components/pds-input/pds-input.js +1 -1
- package/dist/collection/components/pds-input/stories/pds-input.stories.js +42 -0
- package/dist/collection/components/pds-link/pds-link.js +2 -2
- package/dist/collection/components/pds-loader/pds-loader.js +1 -1
- package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js +2 -2
- package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js +1 -1
- package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js +1 -1
- package/dist/collection/components/pds-modal/pds-modal.css +2 -2
- package/dist/collection/components/pds-modal/pds-modal.js +3 -3
- package/dist/collection/components/pds-modal/test/mock-pds-modal.js +1 -1
- 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-progress/pds-progress.js +1 -1
- package/dist/collection/components/pds-property/pds-property.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-row/pds-row.js +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-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
- package/dist/collection/components/pds-sortable/pds-sortable.js +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-body/pds-table-body.js +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-cell/pds-table-cell.js +2 -2
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -1
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +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-head-cell/pds-table-head-cell.js +2 -2
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -1
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
- package/dist/collection/components/pds-table/pds-table.css +1 -1
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +5 -2
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -3
- package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
- package/dist/collection/components/pds-tabs/pds-tabs.js +15 -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-text/pds-text.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-toast/pds-toast.js +3 -3
- 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 +825 -84
- package/dist/esm/form-DwjNklzi.js +47 -0
- package/dist/esm/form-DwjNklzi.js.map +1 -0
- package/dist/esm/{index-BVCWKPy3.js → index-Bf1dou5H.js} +5 -2
- package/dist/esm/index-Bf1dou5H.js.map +1 -0
- package/dist/esm/{index-DrJ5r5Pu.js → index-D4zJBIgl.js} +6 -4
- package/dist/esm/index-D4zJBIgl.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/mock-pds-modal.entry.js +3 -3
- package/dist/esm/mock-pds-modal.entry.js.map +1 -1
- package/dist/esm/pds-accordion.entry.js +2 -2
- package/dist/esm/pds-alert.entry.js +1 -1
- package/dist/esm/pds-avatar.entry.js +2 -2
- package/dist/esm/pds-box.entry.js +1 -1
- package/dist/esm/pds-button.entry.js +8 -5
- package/dist/esm/pds-button.entry.js.map +1 -1
- package/dist/esm/pds-checkbox.entry.js +9 -6
- package/dist/esm/pds-checkbox.entry.js.map +1 -1
- package/dist/esm/pds-chip.entry.js +4 -4
- package/dist/esm/pds-chip.entry.js.map +1 -1
- package/dist/esm/pds-combobox.entry.js +719 -51
- package/dist/esm/pds-combobox.entry.js.map +1 -1
- package/dist/esm/pds-copytext.entry.js +5 -5
- package/dist/esm/pds-copytext.entry.js.map +1 -1
- package/dist/esm/pds-divider.entry.js +1 -1
- package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
- package/dist/esm/pds-dropdown-menu-separator.entry.js +2 -2
- package/dist/esm/pds-dropdown-menu-separator.entry.js.map +1 -1
- package/dist/esm/pds-dropdown-menu.entry.js +2 -2
- package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
- package/dist/esm/pds-filter.entry.js +486 -0
- package/dist/esm/pds-filter.entry.js.map +1 -0
- package/dist/esm/pds-filters.entry.js +18 -0
- package/dist/esm/pds-filters.entry.js.map +1 -0
- package/dist/esm/pds-icon.entry.js +1 -1
- package/dist/esm/pds-image.entry.js +3 -3
- package/dist/esm/pds-input.entry.js +5 -5
- package/dist/esm/pds-input.entry.js.map +1 -1
- package/dist/esm/pds-link.entry.js +4 -4
- package/dist/esm/pds-loader.entry.js +2 -2
- package/dist/esm/pds-modal-content.entry.js +3 -3
- package/dist/esm/pds-modal-footer.entry.js +2 -2
- package/dist/esm/pds-modal-header.entry.js +2 -2
- package/dist/esm/pds-modal.entry.js +5 -5
- 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-progress.entry.js +2 -2
- package/dist/esm/pds-property.entry.js +2 -2
- package/dist/esm/pds-radio.entry.js +12 -6
- package/dist/esm/pds-radio.entry.js.map +1 -1
- package/dist/esm/pds-row.entry.js +2 -2
- package/dist/esm/pds-select.entry.js +21 -6
- package/dist/esm/pds-select.entry.js.map +1 -1
- package/dist/esm/pds-sortable-item.entry.js +3 -3
- package/dist/esm/pds-sortable.entry.js +2 -2
- package/dist/esm/pds-switch.entry.js +9 -6
- package/dist/esm/pds-switch.entry.js.map +1 -1
- package/dist/esm/pds-tab.entry.js +5 -5
- package/dist/esm/pds-tab.entry.js.map +1 -1
- package/dist/esm/pds-table-body.entry.js +2 -2
- package/dist/esm/pds-table-cell.entry.js +4 -4
- package/dist/esm/pds-table-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head-cell.entry.js +5 -5
- package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head.entry.js +3 -3
- package/dist/esm/pds-table-head.entry.js.map +1 -1
- package/dist/esm/pds-table-row.entry.js +3 -3
- package/dist/esm/pds-table-row.entry.js.map +1 -1
- package/dist/esm/pds-table.entry.js +2 -2
- package/dist/esm/pds-table.entry.js.map +1 -1
- package/dist/esm/pds-tabpanel.entry.js +2 -2
- package/dist/esm/pds-tabs.entry.js +15 -5
- package/dist/esm/pds-tabs.entry.js.map +1 -1
- package/dist/esm/pds-text.entry.js +2 -2
- package/dist/esm/pds-textarea.entry.js +11 -8
- package/dist/esm/pds-textarea.entry.js.map +1 -1
- package/dist/esm/pds-toast.entry.js +4 -4
- package/dist/esm/pds-tooltip.entry.js +5 -5
- package/dist/esm/pds-tooltip.entry.js.map +1 -1
- package/dist/esm/pine-core.js +3 -3
- package/dist/esm-es5/form-DwjNklzi.js +2 -0
- package/dist/esm-es5/form-DwjNklzi.js.map +1 -0
- package/dist/esm-es5/{index-BVCWKPy3.js → index-Bf1dou5H.js} +2 -2
- package/dist/esm-es5/index-Bf1dou5H.js.map +1 -0
- package/dist/esm-es5/index-D4zJBIgl.js +2 -0
- package/dist/esm-es5/index-D4zJBIgl.js.map +1 -0
- package/dist/esm-es5/index.js +1 -1
- 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-alert.entry.js +1 -1
- package/dist/esm-es5/pds-avatar.entry.js +1 -1
- package/dist/esm-es5/pds-box.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 +2 -2
- 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-divider.entry.js +1 -1
- package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
- package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
- package/dist/esm-es5/pds-dropdown-menu-separator.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 +2 -0
- package/dist/esm-es5/pds-filter.entry.js.map +1 -0
- package/dist/esm-es5/pds-filters.entry.js +2 -0
- package/dist/esm-es5/pds-filters.entry.js.map +1 -0
- package/dist/esm-es5/pds-icon.entry.js +1 -1
- package/dist/esm-es5/pds-image.entry.js +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-loader.entry.js +1 -1
- package/dist/esm-es5/pds-modal-content.entry.js +1 -1
- package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
- package/dist/esm-es5/pds-modal-header.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-progress.entry.js +1 -1
- package/dist/esm-es5/pds-property.entry.js +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-row.entry.js +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-sortable.entry.js +2 -2
- 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-body.entry.js +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-tabpanel.entry.js +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-text.entry.js +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-toast.entry.js +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/index.esm.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-72b05928.system.entry.js → p-0486ecc6.system.entry.js} +2 -2
- package/dist/pine-core/{p-72b05928.system.entry.js.map → p-0486ecc6.system.entry.js.map} +1 -1
- package/dist/pine-core/p-07e129db.entry.js +2 -0
- package/dist/pine-core/{p-540cfd70.entry.js → p-1009009c.entry.js} +2 -2
- package/dist/pine-core/{p-349a8869.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-e2887e78.entry.js → p-1b9d4482.entry.js} +2 -2
- package/dist/pine-core/p-1c32ffb3.entry.js +2 -0
- package/dist/pine-core/p-1c32ffb3.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-dfc5ab34.system.entry.js → p-2054b5cb.system.entry.js} +2 -2
- package/dist/pine-core/{p-8726c99d.system.entry.js → p-2597bc59.system.entry.js} +2 -2
- package/dist/pine-core/{p-5a709348.entry.js → p-25cb810d.entry.js} +2 -2
- package/dist/pine-core/{p-a1b51557.system.entry.js → p-25cf2860.system.entry.js} +2 -2
- package/dist/pine-core/{p-54183d70.system.entry.js → p-2aab28b1.system.entry.js} +2 -2
- package/dist/pine-core/p-2b102034.system.entry.js +2 -0
- package/dist/pine-core/p-2b102034.system.entry.js.map +1 -0
- package/dist/pine-core/p-2b12bc55.system.entry.js +2 -0
- package/dist/pine-core/p-2efc646c.system.entry.js +2 -0
- package/dist/pine-core/{p-ecb9edf8.entry.js → p-2fb6f9d5.entry.js} +2 -2
- package/dist/pine-core/p-2fd7f74e.entry.js +2 -0
- package/dist/pine-core/{p-39488f2c.system.entry.js → p-302849cf.system.entry.js} +2 -2
- package/dist/pine-core/{p-51d83489.system.entry.js → p-307f415a.system.entry.js} +2 -2
- package/dist/pine-core/p-378df5eb.system.entry.js +2 -0
- package/dist/pine-core/{p-e08f492a.entry.js → p-39648ce2.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-5f5b19f4.entry.js → p-41e2fe3a.entry.js} +2 -2
- package/dist/pine-core/p-449ebe39.system.entry.js +2 -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-c13ef6a7.system.entry.js → p-55d06d0a.system.entry.js} +3 -3
- package/dist/pine-core/{p-075eecf9.entry.js → p-5ac7af9e.entry.js} +2 -2
- 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-4deb7b8c.entry.js → p-725c350c.entry.js} +2 -2
- package/dist/pine-core/{p-4deb7b8c.entry.js.map → p-725c350c.entry.js.map} +1 -1
- package/dist/pine-core/{p-b2b1b7a9.system.entry.js → p-73a2e028.system.entry.js} +2 -2
- 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-786967e8.entry.js +2 -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-875d5d5a.system.entry.js +2 -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-c8122bea.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-e89cb1f2.system.entry.js → p-8f69dd71.system.entry.js} +2 -2
- 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-96c27dba.entry.js +2 -0
- package/dist/pine-core/p-96c27dba.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-Dh7jcLgJ.system.js.map → p-B-Doh1Wu.system.js.map} +1 -1
- package/dist/pine-core/{p-B1fiSdbt.system.js.map → p-BEgEi4w5.system.js.map} +1 -1
- package/dist/pine-core/p-BG99uNIQ.system.js +2 -0
- 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-_E9ZEzfO.system.js.map → p-BIjeWHX_.system.js.map} +1 -1
- package/dist/pine-core/{p-EYhpJx2s.system.js.map → p-BJjdD3yf.system.js.map} +1 -1
- package/dist/pine-core/p-BLC5kuro.system.js.map +1 -0
- package/dist/pine-core/p-BPjnTOEL.system.js +2 -0
- package/dist/pine-core/{p-De9tROL-.system.js.map → p-BPjnTOEL.system.js.map} +1 -1
- package/dist/pine-core/{p-D05FrqXr.system.js.map → p-BRIdBthP.system.js.map} +1 -1
- package/dist/pine-core/{p-BVCWKPy3.js → p-Bf1dou5H.js} +2 -2
- package/dist/pine-core/p-Bf1dou5H.js.map +1 -0
- package/dist/pine-core/{p-Kj_j7PHx.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-ByzULH8m.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-CE6b_LzB.system.js.map → p-C3iAHQC6.system.js.map} +1 -1
- package/dist/pine-core/{p-ACQU83St.system.js.map → p-CCQd5PVN.system.js.map} +1 -1
- package/dist/pine-core/{p-ChslVme6.system.js.map → p-CG2PKUWT.system.js.map} +1 -1
- 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-CWdEolqa.system.js.map → p-Cl47ROcT.system.js.map} +1 -1
- package/dist/pine-core/{p-0KTU2Jt-.system.js.map → p-CnPN6prI.system.js.map} +1 -1
- package/dist/pine-core/p-Cqzmj3D8.system.js.map +1 -0
- package/dist/pine-core/{p-B1FQkx7R.system.js.map → p-Ctdx1tCG.system.js.map} +1 -1
- package/dist/pine-core/{p-3gYSFJIn.system.js.map → p-CwNRZQss.system.js.map} +1 -1
- package/dist/pine-core/p-Cxlv_2hD.system.js.map +1 -0
- package/dist/pine-core/{p-B_C-mRjx.system.js → p-Cxvdulqq.system.js} +2 -2
- package/dist/pine-core/p-Cxvdulqq.system.js.map +1 -0
- package/dist/pine-core/p-D0foS5EP.system.js.map +1 -0
- package/dist/pine-core/p-D4zJBIgl.js +2 -0
- package/dist/pine-core/p-D4zJBIgl.js.map +1 -0
- package/dist/pine-core/{p-MBv7PsKc.system.js.map → p-D52TGCLt.system.js.map} +1 -1
- package/dist/pine-core/{p-CHJgq_z7.system.js.map → p-D7B3vOdC.system.js.map} +1 -1
- 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-Df_3qA_L.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-CLoi4eKt.system.js.map → p-DmWU0f_O.system.js.map} +1 -1
- 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-DYb5Y47j.system.js.map → p-Dq7Wu9rr.system.js.map} +1 -1
- 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-Dw7zXw_6.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-C5Y492i0.system.js.map → p-M-zMP2QX.system.js.map} +1 -1
- package/dist/pine-core/p-WWWd_vEd.system.js +2 -0
- package/dist/pine-core/p-WWWd_vEd.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-72053224.entry.js → p-a2cb65df.entry.js} +3 -3
- package/dist/pine-core/{p-52d37cc1.entry.js → p-a3785977.entry.js} +2 -2
- package/dist/pine-core/p-a645818a.entry.js +2 -0
- 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-f583e5d4.entry.js → p-a9cfaa1f.entry.js} +2 -2
- 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-b669e1d9.entry.js +2 -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-52cb152b.system.entry.js → p-bc2fecd4.system.entry.js} +2 -2
- package/dist/pine-core/{p-e3fb0bc2.system.entry.js → p-bc637bed.system.entry.js} +2 -2
- package/dist/pine-core/{p-b6ea3332.entry.js → p-be5ef841.entry.js} +2 -2
- 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-fcb39155.system.entry.js → p-c3f84df8.system.entry.js} +2 -2
- package/dist/pine-core/p-c44d3551.entry.js +2 -0
- package/dist/pine-core/{p-e8d76117.entry.js → p-c55fc47e.entry.js} +2 -2
- 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-5e8badb9.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-5da82e8c.system.entry.js → p-dace69e7.system.entry.js} +2 -2
- package/dist/pine-core/p-db12273e.system.entry.js +2 -0
- 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-f55b9f90.system.entry.js → p-e702a8dc.system.entry.js} +2 -2
- package/dist/pine-core/{p-6db1e029.system.entry.js → p-ee583234.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-0066d249.entry.js → p-f5d78141.entry.js} +2 -2
- package/dist/pine-core/p-f61ee383.system.entry.js +2 -0
- package/dist/pine-core/p-f61ee383.system.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-52af1890.system.entry.js → p-f911dde3.system.entry.js} +2 -2
- 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-BZoPY2dP.system.js.map → p-iazk4jjL.system.js.map} +1 -1
- package/dist/pine-core/{p-CqzGa2j0.system.js.map → p-k9JOparb.system.js.map} +1 -1
- package/dist/pine-core/{p-B7S-9dbT.system.js.map → p-kcOuXqWo.system.js.map} +1 -1
- package/dist/pine-core/{p-c0df3222.entry.js.map → p-ozqEY4Zc.system.js.map} +1 -1
- package/dist/pine-core/{p-CqK-uhv8.system.js.map → p-yaM1kuaC.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-separator.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 -0
- package/dist/pine-core/pds-filters.entry.esm.js.map +1 -0
- 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/pine-core/pine-core.js +1 -1
- package/dist/types/components/pds-button/pds-button.d.ts +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 +84 -5
- package/dist/types/components/pds-filters/pds-filter/filter-interface.d.ts +19 -0
- package/dist/types/components/pds-filters/pds-filter/pds-filter.d.ts +133 -0
- package/dist/types/components/pds-filters/pds-filters.d.ts +11 -0
- 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-tabs/pds-tabs.d.ts +1 -0
- package/dist/types/components/pds-textarea/pds-textarea.d.ts +1 -0
- package/dist/types/components.d.ts +227 -12
- package/dist/types/utils/form.d.ts +9 -0
- package/dist/types/utils/types.d.ts +2 -0
- package/hydrate/index.js +1529 -146
- package/hydrate/index.mjs +1529 -146
- package/package.json +2 -2
- package/dist/cjs/form-Bx4nzJBo.js.map +0 -1
- package/dist/cjs/index-DVaLegMK.js.map +0 -1
- package/dist/cjs/index-g-uSeICs.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-BVCWKPy3.js.map +0 -1
- package/dist/esm/index-DrJ5r5Pu.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-BVCWKPy3.js.map +0 -1
- package/dist/esm-es5/index-DrJ5r5Pu.js +0 -2
- package/dist/esm-es5/index-DrJ5r5Pu.js.map +0 -1
- package/dist/pine-core/p-00616fc9.entry.js +0 -2
- package/dist/pine-core/p-00616fc9.entry.js.map +0 -1
- package/dist/pine-core/p-023d8b71.system.entry.js +0 -2
- package/dist/pine-core/p-023d8b71.system.entry.js.map +0 -1
- package/dist/pine-core/p-051ff780.system.entry.js +0 -2
- package/dist/pine-core/p-051ff780.system.entry.js.map +0 -1
- package/dist/pine-core/p-0TIvNV5c.system.js.map +0 -1
- package/dist/pine-core/p-0de9f8da.system.entry.js +0 -2
- package/dist/pine-core/p-0de9f8da.system.entry.js.map +0 -1
- package/dist/pine-core/p-14a52961.system.entry.js +0 -2
- package/dist/pine-core/p-14a52961.system.entry.js.map +0 -1
- package/dist/pine-core/p-232a2043.entry.js +0 -2
- package/dist/pine-core/p-25190921.entry.js +0 -2
- package/dist/pine-core/p-25190921.entry.js.map +0 -1
- package/dist/pine-core/p-297afc49.system.entry.js +0 -2
- package/dist/pine-core/p-297afc49.system.entry.js.map +0 -1
- package/dist/pine-core/p-2e19f167.system.entry.js +0 -2
- package/dist/pine-core/p-2e19f167.system.entry.js.map +0 -1
- package/dist/pine-core/p-318fd0cf.entry.js +0 -2
- package/dist/pine-core/p-318fd0cf.entry.js.map +0 -1
- package/dist/pine-core/p-346561a6.system.entry.js +0 -2
- package/dist/pine-core/p-346561a6.system.entry.js.map +0 -1
- package/dist/pine-core/p-3pEJO0vO.system.js.map +0 -1
- package/dist/pine-core/p-41d1b164.entry.js +0 -2
- package/dist/pine-core/p-41d1b164.entry.js.map +0 -1
- package/dist/pine-core/p-44087d1c.entry.js +0 -2
- package/dist/pine-core/p-44087d1c.entry.js.map +0 -1
- package/dist/pine-core/p-464dd476.entry.js +0 -2
- package/dist/pine-core/p-464dd476.entry.js.map +0 -1
- package/dist/pine-core/p-47670150.entry.js +0 -3
- package/dist/pine-core/p-47670150.entry.js.map +0 -1
- package/dist/pine-core/p-4bbf3e31.entry.js +0 -2
- package/dist/pine-core/p-4bbf3e31.entry.js.map +0 -1
- package/dist/pine-core/p-4c81420c.entry.js +0 -2
- package/dist/pine-core/p-4c81420c.entry.js.map +0 -1
- package/dist/pine-core/p-503cab1f.entry.js +0 -2
- package/dist/pine-core/p-503cab1f.entry.js.map +0 -1
- package/dist/pine-core/p-50c9e865.entry.js +0 -2
- package/dist/pine-core/p-50c9e865.entry.js.map +0 -1
- package/dist/pine-core/p-5708f95a.entry.js +0 -2
- package/dist/pine-core/p-651861ff.entry.js +0 -2
- package/dist/pine-core/p-651861ff.entry.js.map +0 -1
- package/dist/pine-core/p-66b10d29.entry.js +0 -2
- package/dist/pine-core/p-6d4d4705.system.entry.js +0 -2
- package/dist/pine-core/p-6d4d4705.system.entry.js.map +0 -1
- package/dist/pine-core/p-6f4a6d0b.entry.js +0 -2
- package/dist/pine-core/p-6f4a6d0b.entry.js.map +0 -1
- package/dist/pine-core/p-7004d1ea.system.entry.js +0 -2
- package/dist/pine-core/p-71169b66.system.entry.js +0 -2
- package/dist/pine-core/p-71169b66.system.entry.js.map +0 -1
- package/dist/pine-core/p-73158adf.system.entry.js +0 -2
- package/dist/pine-core/p-73158adf.system.entry.js.map +0 -1
- package/dist/pine-core/p-77336705.entry.js +0 -2
- package/dist/pine-core/p-77336705.entry.js.map +0 -1
- package/dist/pine-core/p-7cb4f0de.entry.js +0 -2
- package/dist/pine-core/p-7cb4f0de.entry.js.map +0 -1
- package/dist/pine-core/p-84949a12.entry.js +0 -2
- package/dist/pine-core/p-84949a12.entry.js.map +0 -1
- package/dist/pine-core/p-8722865f.system.entry.js +0 -2
- package/dist/pine-core/p-8722865f.system.entry.js.map +0 -1
- package/dist/pine-core/p-8999b63d.system.entry.js +0 -2
- package/dist/pine-core/p-8999b63d.system.entry.js.map +0 -1
- package/dist/pine-core/p-8ab7f0d7.system.entry.js +0 -4
- package/dist/pine-core/p-8ab7f0d7.system.entry.js.map +0 -1
- package/dist/pine-core/p-8d7abc83.entry.js +0 -2
- package/dist/pine-core/p-8d7abc83.entry.js.map +0 -1
- package/dist/pine-core/p-92c52409.system.entry.js +0 -2
- package/dist/pine-core/p-92c52409.system.entry.js.map +0 -1
- package/dist/pine-core/p-98fe56d9.entry.js +0 -2
- package/dist/pine-core/p-98fe56d9.entry.js.map +0 -1
- package/dist/pine-core/p-BEn3hirk.system.js +0 -2
- package/dist/pine-core/p-BEn3hirk.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-BGbUqsWH.system.js +0 -2
- package/dist/pine-core/p-BGbUqsWH.system.js.map +0 -1
- package/dist/pine-core/p-BKFboaI5.system.js.map +0 -1
- package/dist/pine-core/p-BRygGju8.system.js.map +0 -1
- package/dist/pine-core/p-BVCWKPy3.js.map +0 -1
- package/dist/pine-core/p-BVKCNX0X.system.js.map +0 -1
- package/dist/pine-core/p-B_C-mRjx.system.js.map +0 -1
- package/dist/pine-core/p-C0zqu7Gr.system.js.map +0 -1
- package/dist/pine-core/p-CCQUgOoR.system.js.map +0 -1
- package/dist/pine-core/p-CJT--ZXC.system.js.map +0 -1
- package/dist/pine-core/p-CQ8f8GnD.system.js.map +0 -1
- package/dist/pine-core/p-CcXaBX2A.system.js.map +0 -1
- package/dist/pine-core/p-CgyVIfOY.system.js.map +0 -1
- package/dist/pine-core/p-Cmzqpibo.system.js.map +0 -1
- package/dist/pine-core/p-Co5XZmTN.system.js.map +0 -1
- package/dist/pine-core/p-CpdNWpfd.system.js.map +0 -1
- package/dist/pine-core/p-Czoq9yJM.system.js.map +0 -1
- package/dist/pine-core/p-D9_z2w3q.system.js.map +0 -1
- package/dist/pine-core/p-DHmJZxQk.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-DXuK7cEc.system.js.map +0 -1
- package/dist/pine-core/p-De9tROL-.system.js +0 -2
- package/dist/pine-core/p-DrJ5r5Pu.js +0 -2
- package/dist/pine-core/p-DrJ5r5Pu.js.map +0 -1
- package/dist/pine-core/p-IhWWc2L_.system.js.map +0 -1
- package/dist/pine-core/p-UsEwlBJ0.system.js.map +0 -1
- package/dist/pine-core/p-WkrM7Vv0.system.js.map +0 -1
- package/dist/pine-core/p-a04556e4.system.entry.js +0 -2
- package/dist/pine-core/p-a04556e4.system.entry.js.map +0 -1
- package/dist/pine-core/p-a54f1d9e.entry.js +0 -2
- package/dist/pine-core/p-a54f1d9e.entry.js.map +0 -1
- package/dist/pine-core/p-a9895385.system.entry.js +0 -2
- package/dist/pine-core/p-a9895385.system.entry.js.map +0 -1
- package/dist/pine-core/p-aa645f28.system.entry.js +0 -2
- package/dist/pine-core/p-aa645f28.system.entry.js.map +0 -1
- package/dist/pine-core/p-ac37cf0d.entry.js +0 -2
- package/dist/pine-core/p-ac37cf0d.entry.js.map +0 -1
- package/dist/pine-core/p-ba187a35.entry.js +0 -2
- package/dist/pine-core/p-ba187a35.entry.js.map +0 -1
- package/dist/pine-core/p-bb8ef74a.system.entry.js +0 -2
- package/dist/pine-core/p-be939cb0.entry.js +0 -2
- package/dist/pine-core/p-c0df3222.entry.js +0 -2
- package/dist/pine-core/p-c1099665.system.entry.js +0 -2
- package/dist/pine-core/p-c2ffb466.system.entry.js +0 -2
- package/dist/pine-core/p-cd785026.system.entry.js +0 -2
- package/dist/pine-core/p-d8d8fe07.system.entry.js +0 -2
- package/dist/pine-core/p-d8d8fe07.system.entry.js.map +0 -1
- package/dist/pine-core/p-da367b5e.system.entry.js +0 -2
- package/dist/pine-core/p-da367b5e.system.entry.js.map +0 -1
- package/dist/pine-core/p-dc19ce6c.system.entry.js +0 -2
- package/dist/pine-core/p-dc19ce6c.system.entry.js.map +0 -1
- package/dist/pine-core/p-deb8a499.system.entry.js +0 -2
- package/dist/pine-core/p-deb8a499.system.entry.js.map +0 -1
- package/dist/pine-core/p-e65a7d1c.system.entry.js +0 -2
- package/dist/pine-core/p-efa788ea.entry.js +0 -2
- package/dist/pine-core/p-f880adaa.entry.js +0 -2
- package/dist/pine-core/p-fd091234.system.entry.js +0 -2
- package/dist/pine-core/p-fd091234.system.entry.js.map +0 -1
- package/dist/pine-core/p-m6UZWRsP.system.js.map +0 -1
- package/dist/pine-core/p-pQqXEKPh.system.js.map +0 -1
- /package/dist/pine-core/{p-66b10d29.entry.js.map → p-07e129db.entry.js.map} +0 -0
- /package/dist/pine-core/{p-540cfd70.entry.js.map → p-1009009c.entry.js.map} +0 -0
- /package/dist/pine-core/{p-349a8869.entry.js.map → p-100de2b7.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e2887e78.entry.js.map → p-1b9d4482.entry.js.map} +0 -0
- /package/dist/pine-core/{p-dfc5ab34.system.entry.js.map → p-2054b5cb.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-8726c99d.system.entry.js.map → p-2597bc59.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5a709348.entry.js.map → p-25cb810d.entry.js.map} +0 -0
- /package/dist/pine-core/{p-a1b51557.system.entry.js.map → p-25cf2860.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-54183d70.system.entry.js.map → p-2aab28b1.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c2ffb466.system.entry.js.map → p-2b12bc55.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-cd785026.system.entry.js.map → p-2efc646c.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ecb9edf8.entry.js.map → p-2fb6f9d5.entry.js.map} +0 -0
- /package/dist/pine-core/{p-efa788ea.entry.js.map → p-2fd7f74e.entry.js.map} +0 -0
- /package/dist/pine-core/{p-39488f2c.system.entry.js.map → p-302849cf.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-51d83489.system.entry.js.map → p-307f415a.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-bb8ef74a.system.entry.js.map → p-378df5eb.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e08f492a.entry.js.map → p-39648ce2.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5f5b19f4.entry.js.map → p-41e2fe3a.entry.js.map} +0 -0
- /package/dist/pine-core/{p-7004d1ea.system.entry.js.map → p-449ebe39.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c13ef6a7.system.entry.js.map → p-55d06d0a.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-075eecf9.entry.js.map → p-5ac7af9e.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b2b1b7a9.system.entry.js.map → p-73a2e028.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-be939cb0.entry.js.map → p-786967e8.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e65a7d1c.system.entry.js.map → p-875d5d5a.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c8122bea.entry.js.map → p-88773b86.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e89cb1f2.system.entry.js.map → p-8f69dd71.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-72053224.entry.js.map → p-a2cb65df.entry.js.map} +0 -0
- /package/dist/pine-core/{p-52d37cc1.entry.js.map → p-a3785977.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f880adaa.entry.js.map → p-a645818a.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f583e5d4.entry.js.map → p-a9cfaa1f.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5708f95a.entry.js.map → p-b669e1d9.entry.js.map} +0 -0
- /package/dist/pine-core/{p-52cb152b.system.entry.js.map → p-bc2fecd4.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e3fb0bc2.system.entry.js.map → p-bc637bed.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b6ea3332.entry.js.map → p-be5ef841.entry.js.map} +0 -0
- /package/dist/pine-core/{p-fcb39155.system.entry.js.map → p-c3f84df8.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-232a2043.entry.js.map → p-c44d3551.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e8d76117.entry.js.map → p-c55fc47e.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5e8badb9.entry.js.map → p-d1b27fa4.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5da82e8c.system.entry.js.map → p-dace69e7.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c1099665.system.entry.js.map → p-db12273e.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f55b9f90.system.entry.js.map → p-e702a8dc.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-6db1e029.system.entry.js.map → p-ee583234.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0066d249.entry.js.map → p-f5d78141.entry.js.map} +0 -0
- /package/dist/pine-core/{p-52af1890.system.entry.js.map → p-f911dde3.system.entry.js.map} +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
2
|
import { c as computePosition, o as offset, f as flip, s as shift } from './floating-ui.dom.js';
|
|
3
|
-
import { d as defineCustomElement$
|
|
3
|
+
import { d as defineCustomElement$4 } from './pds-box2.js';
|
|
4
|
+
import { d as defineCustomElement$3 } from './pds-chip2.js';
|
|
4
5
|
import { d as defineCustomElement$2 } from './pds-icon2.js';
|
|
5
6
|
|
|
6
7
|
/*! @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 */
|
|
@@ -1338,7 +1339,7 @@ function createDOMPurify() {
|
|
|
1338
1339
|
}
|
|
1339
1340
|
var purify = createDOMPurify();
|
|
1340
1341
|
|
|
1341
|
-
const pdsComboboxCss = ":host{display:block}.pds-combobox{position:relative}.pds-combobox__label{display:block;font-size:0.95rem;-webkit-margin-after:var(--pine-dimension-150);margin-block-end:var(--pine-dimension-150)}.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-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__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:1000}.pds-combobox__option{-ms-flex-align:center;align-items:center;background:transparent;border-radius:var(--pine-dimension-125);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);-webkit-transition:background 0.15s;transition:background 0.15s}.pds-combobox__option[aria-selected=true]{background:var(--pine-color-grey-150)}.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: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__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)}";
|
|
1342
|
+
const pdsComboboxCss = ":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)}";
|
|
1342
1343
|
|
|
1343
1344
|
const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends HTMLElement {
|
|
1344
1345
|
constructor() {
|
|
@@ -1384,7 +1385,7 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1384
1385
|
*/
|
|
1385
1386
|
this.mode = 'filter';
|
|
1386
1387
|
/**
|
|
1387
|
-
* Determines the combobox trigger: 'input' (editable input)
|
|
1388
|
+
* Determines the combobox trigger: 'input' (editable input), 'button' (button-like, non-editable), or 'chip' (chip-like, non-editable).
|
|
1388
1389
|
* @default 'input'
|
|
1389
1390
|
*/
|
|
1390
1391
|
this.trigger = 'input';
|
|
@@ -1398,14 +1399,33 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1398
1399
|
* @default 'secondary'
|
|
1399
1400
|
*/
|
|
1400
1401
|
this.triggerVariant = 'secondary';
|
|
1402
|
+
/**
|
|
1403
|
+
* The sentiment for the chip trigger. Matches Pine chip sentiments.
|
|
1404
|
+
* @default 'neutral'
|
|
1405
|
+
*/
|
|
1406
|
+
this.chipSentiment = 'neutral';
|
|
1407
|
+
/**
|
|
1408
|
+
* Whether the chip trigger should be displayed in a larger size.
|
|
1409
|
+
* @default false
|
|
1410
|
+
*/
|
|
1411
|
+
this.chipLarge = false;
|
|
1412
|
+
/**
|
|
1413
|
+
* Whether a dot should be displayed on the chip trigger.
|
|
1414
|
+
* @default false
|
|
1415
|
+
*/
|
|
1416
|
+
this.chipDot = false;
|
|
1401
1417
|
/**
|
|
1402
1418
|
* The value of the combobox input.
|
|
1403
1419
|
*/
|
|
1404
1420
|
this.value = '';
|
|
1405
1421
|
/**
|
|
1406
|
-
* Internal state for
|
|
1422
|
+
* Internal state for the display text shown in the input/trigger
|
|
1423
|
+
*/
|
|
1424
|
+
this.displayText = '';
|
|
1425
|
+
/**
|
|
1426
|
+
* Internal state for filtered options and group labels
|
|
1407
1427
|
*/
|
|
1408
|
-
this.
|
|
1428
|
+
this.filteredItems = [];
|
|
1409
1429
|
/**
|
|
1410
1430
|
* Internal state for the currently highlighted option index
|
|
1411
1431
|
*/
|
|
@@ -1422,45 +1442,143 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1422
1442
|
* Internal state for the sanitized layout content of the selected option
|
|
1423
1443
|
*/
|
|
1424
1444
|
this.selectedOptionLayoutContent = '';
|
|
1445
|
+
/**
|
|
1446
|
+
* Internal state to track chip properties for automatic rendering
|
|
1447
|
+
*/
|
|
1448
|
+
this.selectedOptionChipProps = null;
|
|
1425
1449
|
this.optionEls = [];
|
|
1450
|
+
this.allItems = [];
|
|
1451
|
+
this.isUpdatingFromSelection = false;
|
|
1426
1452
|
this.handleInput = (e) => {
|
|
1427
1453
|
const target = e.target;
|
|
1428
|
-
this.
|
|
1454
|
+
this.displayText = target.value;
|
|
1429
1455
|
this.isOpen = true;
|
|
1430
1456
|
this.filterOptions();
|
|
1431
1457
|
setTimeout(() => this.openDropdownPositioning(), 0);
|
|
1432
1458
|
};
|
|
1433
|
-
this.
|
|
1434
|
-
|
|
1435
|
-
this.
|
|
1436
|
-
|
|
1459
|
+
this.handleInputClick = () => {
|
|
1460
|
+
// Open dropdown when input is clicked (but not when tabbed into)
|
|
1461
|
+
if (!this.isOpen) {
|
|
1462
|
+
this.isOpen = true;
|
|
1463
|
+
this.filterOptions();
|
|
1464
|
+
this.setInitialHighlightedIndex();
|
|
1465
|
+
setTimeout(() => this.openDropdownPositioning(), 0);
|
|
1466
|
+
}
|
|
1437
1467
|
};
|
|
1438
1468
|
this.handleKeyDown = (e) => {
|
|
1439
|
-
if (!this.isOpen && (e.key === 'ArrowDown' || e.key === 'ArrowUp')) {
|
|
1469
|
+
if (!this.isOpen && (e.key === 'ArrowDown' || e.key === 'ArrowUp' || (e.altKey && e.key === 'ArrowDown'))) {
|
|
1470
|
+
e.preventDefault();
|
|
1440
1471
|
this.isOpen = true;
|
|
1472
|
+
this.filterOptions();
|
|
1473
|
+
// Set highlighted index immediately for testing
|
|
1474
|
+
this.setInitialHighlightedIndex();
|
|
1475
|
+
setTimeout(() => {
|
|
1476
|
+
this.openDropdownPositioning();
|
|
1477
|
+
// For input trigger, keep focus on input and use aria-activedescendant
|
|
1478
|
+
// For button trigger, move focus to first option for keyboard navigation
|
|
1479
|
+
if (this.trigger === 'input') {
|
|
1480
|
+
this.focusFirstOption();
|
|
1481
|
+
}
|
|
1482
|
+
else {
|
|
1483
|
+
this.focusFirstOptionForArrowKeys();
|
|
1484
|
+
}
|
|
1485
|
+
}, 0);
|
|
1486
|
+
return;
|
|
1487
|
+
}
|
|
1488
|
+
if (!this.isOpen) {
|
|
1441
1489
|
return;
|
|
1442
1490
|
}
|
|
1491
|
+
// Get only the option elements (skip group labels) for navigation
|
|
1492
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
1443
1493
|
switch (e.key) {
|
|
1444
1494
|
case 'ArrowDown':
|
|
1445
|
-
|
|
1495
|
+
e.preventDefault();
|
|
1496
|
+
// If no option is highlighted and we have options, start at 0
|
|
1497
|
+
if (this.highlightedIndex < 0 && selectableOptions.length > 0) {
|
|
1498
|
+
this.highlightedIndex = 0;
|
|
1499
|
+
}
|
|
1500
|
+
else {
|
|
1501
|
+
this.highlightedIndex = Math.min(this.highlightedIndex + 1, selectableOptions.length - 1);
|
|
1502
|
+
}
|
|
1503
|
+
this.updateOptionFocus();
|
|
1446
1504
|
break;
|
|
1447
1505
|
case 'ArrowUp':
|
|
1448
|
-
|
|
1506
|
+
e.preventDefault();
|
|
1507
|
+
// If no option is highlighted and we have options, start at last option
|
|
1508
|
+
if (this.highlightedIndex < 0 && selectableOptions.length > 0) {
|
|
1509
|
+
this.highlightedIndex = selectableOptions.length - 1;
|
|
1510
|
+
}
|
|
1511
|
+
else {
|
|
1512
|
+
this.highlightedIndex = Math.max(this.highlightedIndex - 1, 0);
|
|
1513
|
+
}
|
|
1514
|
+
this.updateOptionFocus();
|
|
1515
|
+
break;
|
|
1516
|
+
case 'Home':
|
|
1517
|
+
e.preventDefault();
|
|
1518
|
+
if (selectableOptions.length > 0) {
|
|
1519
|
+
this.highlightedIndex = 0;
|
|
1520
|
+
this.updateOptionFocus();
|
|
1521
|
+
}
|
|
1522
|
+
break;
|
|
1523
|
+
case 'End':
|
|
1524
|
+
e.preventDefault();
|
|
1525
|
+
if (selectableOptions.length > 0) {
|
|
1526
|
+
this.highlightedIndex = selectableOptions.length - 1;
|
|
1527
|
+
this.updateOptionFocus();
|
|
1528
|
+
}
|
|
1529
|
+
break;
|
|
1530
|
+
case 'PageDown':
|
|
1531
|
+
e.preventDefault();
|
|
1532
|
+
if (selectableOptions.length > 0) {
|
|
1533
|
+
const nextIndex = Math.min(this.highlightedIndex + 10, selectableOptions.length - 1);
|
|
1534
|
+
this.highlightedIndex = nextIndex;
|
|
1535
|
+
this.updateOptionFocus();
|
|
1536
|
+
}
|
|
1537
|
+
break;
|
|
1538
|
+
case 'PageUp':
|
|
1539
|
+
e.preventDefault();
|
|
1540
|
+
if (selectableOptions.length > 0) {
|
|
1541
|
+
const prevIndex = Math.max(this.highlightedIndex - 10, 0);
|
|
1542
|
+
this.highlightedIndex = prevIndex;
|
|
1543
|
+
this.updateOptionFocus();
|
|
1544
|
+
}
|
|
1449
1545
|
break;
|
|
1450
1546
|
case 'Enter':
|
|
1451
|
-
|
|
1452
|
-
|
|
1547
|
+
e.preventDefault();
|
|
1548
|
+
if (this.highlightedIndex >= 0 && this.highlightedIndex < selectableOptions.length) {
|
|
1549
|
+
this.handleOptionClick(selectableOptions[this.highlightedIndex]);
|
|
1550
|
+
this.restoreFocusToTrigger();
|
|
1551
|
+
}
|
|
1552
|
+
break;
|
|
1553
|
+
case ' ':
|
|
1554
|
+
e.preventDefault();
|
|
1555
|
+
if (this.highlightedIndex >= 0 && this.highlightedIndex < selectableOptions.length) {
|
|
1556
|
+
this.handleOptionClick(selectableOptions[this.highlightedIndex]);
|
|
1557
|
+
this.restoreFocusToTrigger();
|
|
1453
1558
|
}
|
|
1454
1559
|
break;
|
|
1455
1560
|
case 'Escape':
|
|
1561
|
+
e.preventDefault();
|
|
1562
|
+
this.isOpen = false;
|
|
1563
|
+
this.highlightedIndex = -1;
|
|
1564
|
+
this.isArrowKeyNavigationMode = false; // Reset arrow-key navigation mode
|
|
1565
|
+
this.restoreFocusToTrigger();
|
|
1566
|
+
break;
|
|
1567
|
+
case 'Tab':
|
|
1568
|
+
// Allow normal tab behavior to close dropdown and move focus
|
|
1456
1569
|
this.isOpen = false;
|
|
1570
|
+
this.highlightedIndex = -1;
|
|
1571
|
+
this.isArrowKeyNavigationMode = false; // Reset arrow-key navigation mode
|
|
1457
1572
|
break;
|
|
1458
1573
|
}
|
|
1459
1574
|
};
|
|
1575
|
+
// Track if we're in arrow-key navigation mode (focus should move between options)
|
|
1576
|
+
this.isArrowKeyNavigationMode = false;
|
|
1460
1577
|
// Event handler for option click
|
|
1461
1578
|
this.onOptionClick = (event) => {
|
|
1462
1579
|
const idx = Number(event.currentTarget.getAttribute('data-option-index'));
|
|
1463
|
-
const
|
|
1580
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
1581
|
+
const option = selectableOptions[idx];
|
|
1464
1582
|
this.handleOptionClick(option);
|
|
1465
1583
|
};
|
|
1466
1584
|
// Event handler for mouse enter on option
|
|
@@ -1472,58 +1590,233 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1472
1590
|
this.onOptionMouseDown = (event) => {
|
|
1473
1591
|
event.preventDefault();
|
|
1474
1592
|
};
|
|
1593
|
+
// Event handler for option keyboard events
|
|
1594
|
+
this.onOptionKeyDown = (event) => {
|
|
1595
|
+
// Delegate to main keyboard handler
|
|
1596
|
+
this.handleKeyDown(event);
|
|
1597
|
+
};
|
|
1475
1598
|
// Handler for button trigger click
|
|
1476
1599
|
this.onButtonTriggerClick = () => {
|
|
1477
1600
|
this.isOpen = !this.isOpen;
|
|
1478
|
-
if (this.isOpen)
|
|
1601
|
+
if (this.isOpen) {
|
|
1602
|
+
this.filterOptions();
|
|
1603
|
+
// Set highlighted index and prepare for keyboard navigation
|
|
1604
|
+
this.setInitialHighlightedIndex();
|
|
1605
|
+
// For button trigger, prepare for arrow-key navigation mode
|
|
1606
|
+
this.isArrowKeyNavigationMode = true;
|
|
1479
1607
|
setTimeout(() => this.openDropdownPositioning(), 0);
|
|
1608
|
+
}
|
|
1609
|
+
else {
|
|
1610
|
+
// Reset navigation mode when closing
|
|
1611
|
+
this.isArrowKeyNavigationMode = false;
|
|
1612
|
+
}
|
|
1480
1613
|
};
|
|
1481
1614
|
// Handler for button trigger keyboard events
|
|
1482
1615
|
this.onButtonTriggerKeyDown = (e) => {
|
|
1483
|
-
if (e.key === 'Enter' || e.key === ' ' || e.key === 'ArrowDown') {
|
|
1616
|
+
if ((e.key === 'Enter' || e.key === ' ' || e.key === 'ArrowDown' || e.key === 'ArrowUp') && !this.isOpen) {
|
|
1484
1617
|
e.preventDefault();
|
|
1618
|
+
e.stopPropagation(); // Prevent the event from bubbling and triggering click
|
|
1485
1619
|
this.isOpen = true;
|
|
1486
|
-
this.
|
|
1487
|
-
|
|
1620
|
+
this.filterOptions();
|
|
1621
|
+
// Set highlighted index immediately
|
|
1622
|
+
this.setInitialHighlightedIndex();
|
|
1623
|
+
setTimeout(() => {
|
|
1624
|
+
this.openDropdownPositioning();
|
|
1625
|
+
// For all button trigger keyboard opening, focus the first option so subsequent navigation works
|
|
1626
|
+
this.focusFirstOptionForArrowKeys();
|
|
1627
|
+
}, 0);
|
|
1488
1628
|
}
|
|
1489
1629
|
else if (e.key === 'Escape') {
|
|
1490
|
-
|
|
1630
|
+
e.preventDefault();
|
|
1631
|
+
if (this.isOpen) {
|
|
1632
|
+
this.isOpen = false;
|
|
1633
|
+
this.highlightedIndex = -1;
|
|
1634
|
+
this.updateAriaActiveDescendant(); // Clear aria-activedescendant
|
|
1635
|
+
this.restoreFocusToTrigger();
|
|
1636
|
+
}
|
|
1637
|
+
}
|
|
1638
|
+
else if (this.isOpen) {
|
|
1639
|
+
// Delegate other keys to main keyboard handler when dropdown is open
|
|
1640
|
+
this.handleKeyDown(e);
|
|
1641
|
+
}
|
|
1642
|
+
};
|
|
1643
|
+
// Handler for button trigger keyup events - prevents space key from triggering synthetic click
|
|
1644
|
+
this.onButtonTriggerKeyUp = (e) => {
|
|
1645
|
+
if (e.key === ' ') {
|
|
1646
|
+
e.preventDefault();
|
|
1647
|
+
e.stopPropagation();
|
|
1491
1648
|
}
|
|
1492
1649
|
};
|
|
1493
1650
|
// Close dropdown when focus leaves the combobox
|
|
1494
1651
|
this.onComboboxFocusOut = (event) => {
|
|
1652
|
+
var _a;
|
|
1495
1653
|
const relatedTarget = event.relatedTarget;
|
|
1496
|
-
if (
|
|
1654
|
+
// Check if the related target is within our shadow DOM (listbox options)
|
|
1655
|
+
const isRelatedTargetInListbox = relatedTarget && ((_a = this.listboxEl) === null || _a === void 0 ? void 0 : _a.contains(relatedTarget));
|
|
1656
|
+
const isRelatedTargetInCombobox = this.el.contains(relatedTarget);
|
|
1657
|
+
// Don't close if focus is moving to an option in the listbox or staying within the combobox
|
|
1658
|
+
if (!isRelatedTargetInCombobox && !isRelatedTargetInListbox) {
|
|
1497
1659
|
this.isOpen = false;
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1660
|
+
this.highlightedIndex = -1;
|
|
1661
|
+
this.isArrowKeyNavigationMode = false; // Reset arrow-key navigation mode
|
|
1662
|
+
this.updateAriaActiveDescendant(); // Clear aria-activedescendant
|
|
1663
|
+
// If there's a selected option but the display text doesn't match, restore the selected option's display text
|
|
1664
|
+
if (this.selectedOption && this.displayText !== this.getOptionLabel(this.selectedOption)) {
|
|
1665
|
+
this.displayText = this.getOptionLabel(this.selectedOption);
|
|
1666
|
+
// The @Watch('selectedOption') will handle value and form internals if needed
|
|
1501
1667
|
}
|
|
1502
1668
|
}
|
|
1503
1669
|
};
|
|
1504
1670
|
}
|
|
1671
|
+
connectedCallback() {
|
|
1672
|
+
// Initialize ElementInternals for form association
|
|
1673
|
+
if (this.el.attachInternals) {
|
|
1674
|
+
this.internals = this.el.attachInternals();
|
|
1675
|
+
}
|
|
1676
|
+
}
|
|
1505
1677
|
componentWillLoad() {
|
|
1506
1678
|
this.updateOptions();
|
|
1507
1679
|
}
|
|
1680
|
+
componentDidLoad() {
|
|
1681
|
+
var _a, _b, _c;
|
|
1682
|
+
// Check for value-based preselection if no option is selected yet
|
|
1683
|
+
if (!this.selectedOption && this.value && this.optionEls.length > 0) {
|
|
1684
|
+
const matchingOption = this.optionEls.find(opt => opt.value === this.value);
|
|
1685
|
+
if (matchingOption) {
|
|
1686
|
+
this.setSelectedOption(matchingOption);
|
|
1687
|
+
// Update the display text to show the option's text content
|
|
1688
|
+
this.displayText = this.getOptionLabel(matchingOption);
|
|
1689
|
+
// Keep this.value as the actual option value
|
|
1690
|
+
// this.value remains unchanged (already matches matchingOption.value)
|
|
1691
|
+
}
|
|
1692
|
+
}
|
|
1693
|
+
// Initialize form value with current value
|
|
1694
|
+
if (this.internals) {
|
|
1695
|
+
try {
|
|
1696
|
+
this.internals.setFormValue((_c = (_b = (_a = this.selectedOption) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : this.value) !== null && _c !== void 0 ? _c : '');
|
|
1697
|
+
}
|
|
1698
|
+
catch (e) {
|
|
1699
|
+
// ElementInternals.setFormValue not available in unit tests
|
|
1700
|
+
}
|
|
1701
|
+
}
|
|
1702
|
+
}
|
|
1508
1703
|
handleValueChange() {
|
|
1509
1704
|
this.filterOptions();
|
|
1705
|
+
// Sync with form internals for form association
|
|
1706
|
+
if (this.internals) {
|
|
1707
|
+
try {
|
|
1708
|
+
this.internals.setFormValue(this.value);
|
|
1709
|
+
}
|
|
1710
|
+
catch (e) {
|
|
1711
|
+
// ElementInternals.setFormValue not available in unit tests
|
|
1712
|
+
}
|
|
1713
|
+
}
|
|
1714
|
+
// Find and select option that matches the value (for external value changes)
|
|
1715
|
+
// Only do this if we're not already updating from a selection
|
|
1716
|
+
if (!this.isUpdatingFromSelection && this.value && this.optionEls.length > 0) {
|
|
1717
|
+
const currentSelectedValue = this.selectedOption ? this.selectedOption.value : null;
|
|
1718
|
+
// If the value doesn't match the currently selected option's value, we need to update
|
|
1719
|
+
if (this.value !== currentSelectedValue) {
|
|
1720
|
+
const matchingOption = this.optionEls.find(opt => opt.value === this.value);
|
|
1721
|
+
if (matchingOption) {
|
|
1722
|
+
this.isUpdatingFromSelection = true;
|
|
1723
|
+
this.setSelectedOption(matchingOption);
|
|
1724
|
+
// Update the display text to show the option's text content
|
|
1725
|
+
this.displayText = this.getOptionLabel(matchingOption);
|
|
1726
|
+
// Keep this.value as the actual option value (already correct)
|
|
1727
|
+
this.isUpdatingFromSelection = false;
|
|
1728
|
+
}
|
|
1729
|
+
}
|
|
1730
|
+
}
|
|
1510
1731
|
}
|
|
1511
1732
|
handleSelectedOptionChange() {
|
|
1512
1733
|
// Update the layout content when selected option changes
|
|
1513
1734
|
this.selectedOptionLayoutContent = this.selectedOption && this.isOptionLayout(this.selectedOption)
|
|
1514
1735
|
? this.getOptionLayoutContent(this.selectedOption)
|
|
1515
1736
|
: '';
|
|
1737
|
+
// Update chip properties for automatic rendering when selected option changes
|
|
1738
|
+
this.selectedOptionChipProps = this.selectedOption && this.isOptionChip(this.selectedOption)
|
|
1739
|
+
? this.getOptionChipProps(this.selectedOption)
|
|
1740
|
+
: null;
|
|
1741
|
+
// Update display text when selected option changes
|
|
1742
|
+
if (this.selectedOption) {
|
|
1743
|
+
this.displayText = this.getOptionLabel(this.selectedOption);
|
|
1744
|
+
this.value = this.selectedOption.value;
|
|
1745
|
+
// Update form internals with the actual option value
|
|
1746
|
+
if (this.internals) {
|
|
1747
|
+
try {
|
|
1748
|
+
this.internals.setFormValue(this.selectedOption.value);
|
|
1749
|
+
}
|
|
1750
|
+
catch (e) {
|
|
1751
|
+
// ElementInternals.setFormValue not available in unit tests
|
|
1752
|
+
}
|
|
1753
|
+
}
|
|
1754
|
+
}
|
|
1755
|
+
else {
|
|
1756
|
+
this.displayText = '';
|
|
1757
|
+
this.value = '';
|
|
1758
|
+
if (this.internals) {
|
|
1759
|
+
try {
|
|
1760
|
+
this.internals.setFormValue('');
|
|
1761
|
+
}
|
|
1762
|
+
catch (e) {
|
|
1763
|
+
// ElementInternals.setFormValue not available in unit tests
|
|
1764
|
+
}
|
|
1765
|
+
}
|
|
1766
|
+
}
|
|
1516
1767
|
}
|
|
1517
1768
|
updateOptions() {
|
|
1518
1769
|
var _a;
|
|
1519
|
-
// Get all
|
|
1770
|
+
// Get all elements from the slot
|
|
1520
1771
|
const slot = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="option"], slot:not([name])');
|
|
1521
1772
|
if (slot) {
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1773
|
+
const allElements = slot.assignedElements({ flatten: true });
|
|
1774
|
+
// Separate options from group labels and flatten optgroups
|
|
1775
|
+
this.allItems = [];
|
|
1776
|
+
this.optionEls = [];
|
|
1777
|
+
allElements.forEach(el => {
|
|
1778
|
+
if (el.tagName === 'OPTION') {
|
|
1779
|
+
this.optionEls.push(el);
|
|
1780
|
+
this.allItems.push(el);
|
|
1781
|
+
}
|
|
1782
|
+
else if (el.tagName === 'OPTGROUP') {
|
|
1783
|
+
const optgroup = el;
|
|
1784
|
+
this.allItems.push(optgroup);
|
|
1785
|
+
// Add optgroup children (options)
|
|
1786
|
+
Array.from(optgroup.children).forEach(child => {
|
|
1787
|
+
if (child.tagName === 'OPTION') {
|
|
1788
|
+
this.optionEls.push(child);
|
|
1789
|
+
this.allItems.push(child);
|
|
1790
|
+
}
|
|
1791
|
+
});
|
|
1792
|
+
}
|
|
1793
|
+
else if (el.tagName === 'PDS-TEXT') {
|
|
1794
|
+
this.allItems.push(el);
|
|
1795
|
+
}
|
|
1796
|
+
});
|
|
1797
|
+
// Set initial selected option based on value property
|
|
1798
|
+
let initialSelected = null;
|
|
1799
|
+
// Check if value property matches any option
|
|
1800
|
+
if (this.value) {
|
|
1801
|
+
initialSelected = this.optionEls.find(opt => opt.value === this.value) || null;
|
|
1802
|
+
if (initialSelected) {
|
|
1803
|
+
// Update the display text to show the option's text content
|
|
1804
|
+
this.displayText = this.getOptionLabel(initialSelected);
|
|
1805
|
+
// Keep this.value as the actual option value (already correct)
|
|
1806
|
+
}
|
|
1807
|
+
}
|
|
1808
|
+
// For chip triggers, ensure we always have a selected option
|
|
1809
|
+
if (!initialSelected && this.trigger === 'chip' && this.optionEls.length > 0) {
|
|
1810
|
+
initialSelected = this.optionEls[0]; // Select first option as default
|
|
1811
|
+
this.value = initialSelected.value;
|
|
1812
|
+
this.displayText = this.getOptionLabel(initialSelected);
|
|
1813
|
+
console.warn('PDS Combobox: Chip triggers should always have a selected option. Automatically selected the first option.');
|
|
1814
|
+
}
|
|
1815
|
+
// Update selection if we found a different selected option or if we don't have one
|
|
1816
|
+
if (initialSelected && initialSelected !== this.selectedOption) {
|
|
1817
|
+
this.setSelectedOption(initialSelected);
|
|
1818
|
+
}
|
|
1819
|
+
else if (!this.selectedOption && initialSelected) {
|
|
1527
1820
|
this.setSelectedOption(initialSelected);
|
|
1528
1821
|
}
|
|
1529
1822
|
this.filterOptions();
|
|
@@ -1573,6 +1866,22 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1573
1866
|
isOptionLayout(option) {
|
|
1574
1867
|
return this.customOptionLayouts && option.hasAttribute('data-layout');
|
|
1575
1868
|
}
|
|
1869
|
+
// Helper method to check if option has chip attributes (new automatic approach)
|
|
1870
|
+
isOptionChip(option) {
|
|
1871
|
+
return option.hasAttribute('chip-sentiment') ||
|
|
1872
|
+
option.hasAttribute('chip-large') ||
|
|
1873
|
+
option.hasAttribute('chip-icon') ||
|
|
1874
|
+
option.hasAttribute('chip-dot');
|
|
1875
|
+
}
|
|
1876
|
+
// Helper method to get chip properties from option attributes
|
|
1877
|
+
getOptionChipProps(option) {
|
|
1878
|
+
return {
|
|
1879
|
+
sentiment: option.getAttribute('chip-sentiment') || 'neutral',
|
|
1880
|
+
large: option.hasAttribute('chip-large'),
|
|
1881
|
+
icon: option.getAttribute('chip-icon') || undefined,
|
|
1882
|
+
dot: option.hasAttribute('chip-dot')
|
|
1883
|
+
};
|
|
1884
|
+
}
|
|
1576
1885
|
// Helper method to check if option is selected (single source of truth)
|
|
1577
1886
|
isOptionSelected(option) {
|
|
1578
1887
|
return this.selectedOption === option;
|
|
@@ -1580,14 +1889,25 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1580
1889
|
// Helper method to set selected option (centralized state management)
|
|
1581
1890
|
setSelectedOption(option) {
|
|
1582
1891
|
this.selectedOption = option;
|
|
1892
|
+
// Immediately update chip properties for automatic rendering to ensure reactivity
|
|
1893
|
+
if (option && this.isOptionChip(option)) {
|
|
1894
|
+
this.selectedOptionChipProps = this.getOptionChipProps(option);
|
|
1895
|
+
}
|
|
1896
|
+
else {
|
|
1897
|
+
this.selectedOptionChipProps = null;
|
|
1898
|
+
}
|
|
1583
1899
|
}
|
|
1584
1900
|
filterOptions() {
|
|
1901
|
+
// Ensure allItems includes optionEls if not already populated (for edge cases)
|
|
1902
|
+
if (this.allItems.length === 0 && this.optionEls.length > 0) {
|
|
1903
|
+
this.allItems = [...this.optionEls];
|
|
1904
|
+
}
|
|
1585
1905
|
if (this.mode === 'select-only') {
|
|
1586
|
-
this.
|
|
1906
|
+
this.filteredItems = [...this.allItems];
|
|
1587
1907
|
}
|
|
1588
1908
|
else {
|
|
1589
|
-
const val = this.
|
|
1590
|
-
|
|
1909
|
+
const val = this.displayText.toLowerCase();
|
|
1910
|
+
const filteredOptions = this.optionEls.filter(option => {
|
|
1591
1911
|
// For layout options, search both text content and data-search-text attribute
|
|
1592
1912
|
if (this.isOptionLayout(option)) {
|
|
1593
1913
|
const searchText = option.getAttribute('data-search-text') || option.textContent || '';
|
|
@@ -1595,6 +1915,31 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1595
1915
|
}
|
|
1596
1916
|
return this.getOptionLabel(option).toLowerCase().includes(val);
|
|
1597
1917
|
});
|
|
1918
|
+
// Rebuild filtered items maintaining group structure - simplified approach
|
|
1919
|
+
this.filteredItems = [];
|
|
1920
|
+
let currentGroupLabel = null;
|
|
1921
|
+
this.allItems.forEach(item => {
|
|
1922
|
+
if (item.tagName === 'OPTGROUP' || item.tagName === 'PDS-TEXT') {
|
|
1923
|
+
currentGroupLabel = item;
|
|
1924
|
+
}
|
|
1925
|
+
else if (item.tagName === 'OPTION' && filteredOptions.includes(item)) {
|
|
1926
|
+
const optionEl = item;
|
|
1927
|
+
const parent = optionEl.parentElement;
|
|
1928
|
+
let labelToUse = null;
|
|
1929
|
+
if (parent && parent.tagName === 'OPTGROUP') {
|
|
1930
|
+
// Only use the actual parent optgroup as label
|
|
1931
|
+
labelToUse = parent;
|
|
1932
|
+
}
|
|
1933
|
+
else if (currentGroupLabel && currentGroupLabel.tagName === 'PDS-TEXT') {
|
|
1934
|
+
// Allow pds-text to label subsequent top-level options until another label appears
|
|
1935
|
+
labelToUse = currentGroupLabel;
|
|
1936
|
+
}
|
|
1937
|
+
if (labelToUse && !this.filteredItems.includes(labelToUse)) {
|
|
1938
|
+
this.filteredItems.push(labelToUse);
|
|
1939
|
+
}
|
|
1940
|
+
this.filteredItems.push(optionEl);
|
|
1941
|
+
}
|
|
1942
|
+
});
|
|
1598
1943
|
}
|
|
1599
1944
|
this.highlightedIndex = -1;
|
|
1600
1945
|
}
|
|
@@ -1615,7 +1960,7 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1615
1960
|
left: `${x}px`,
|
|
1616
1961
|
top: `${y}px`,
|
|
1617
1962
|
position: 'absolute',
|
|
1618
|
-
zIndex:
|
|
1963
|
+
zIndex: 'var(--pine-z-index-raised)',
|
|
1619
1964
|
});
|
|
1620
1965
|
});
|
|
1621
1966
|
}
|
|
@@ -1625,7 +1970,130 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1625
1970
|
*/
|
|
1626
1971
|
async setFocus() {
|
|
1627
1972
|
var _a;
|
|
1628
|
-
(
|
|
1973
|
+
if (this.inputEl) {
|
|
1974
|
+
this.inputEl.focus();
|
|
1975
|
+
}
|
|
1976
|
+
else {
|
|
1977
|
+
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
1978
|
+
}
|
|
1979
|
+
}
|
|
1980
|
+
/**
|
|
1981
|
+
* Sets the initial highlighted index when dropdown opens.
|
|
1982
|
+
* If there's a selected option, highlight it. Otherwise, highlight the first option.
|
|
1983
|
+
*/
|
|
1984
|
+
setInitialHighlightedIndex() {
|
|
1985
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
1986
|
+
if (selectableOptions.length === 0) {
|
|
1987
|
+
this.highlightedIndex = -1;
|
|
1988
|
+
return;
|
|
1989
|
+
}
|
|
1990
|
+
// If there's a selected option, find its index in the filtered options
|
|
1991
|
+
if (this.selectedOption) {
|
|
1992
|
+
const selectedIndex = selectableOptions.findIndex(option => option === this.selectedOption);
|
|
1993
|
+
if (selectedIndex >= 0) {
|
|
1994
|
+
this.highlightedIndex = selectedIndex;
|
|
1995
|
+
return;
|
|
1996
|
+
}
|
|
1997
|
+
}
|
|
1998
|
+
// No selected option or selected option not in filtered results, highlight first option
|
|
1999
|
+
this.highlightedIndex = 0;
|
|
2000
|
+
}
|
|
2001
|
+
/**
|
|
2002
|
+
* Focus management helper - moves focus to the first option when dropdown opens
|
|
2003
|
+
*/
|
|
2004
|
+
focusFirstOption() {
|
|
2005
|
+
if (this.isOpen) {
|
|
2006
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
2007
|
+
if (selectableOptions.length > 0) {
|
|
2008
|
+
this.setInitialHighlightedIndex();
|
|
2009
|
+
// DON'T focus the option elements - keep focus on trigger and use aria-activedescendant
|
|
2010
|
+
// This prevents the focusout event that was closing the dropdown
|
|
2011
|
+
// But still call updateOptionFocus for scrolling
|
|
2012
|
+
if (this.listboxEl) {
|
|
2013
|
+
this.updateOptionFocus();
|
|
2014
|
+
}
|
|
2015
|
+
}
|
|
2016
|
+
}
|
|
2017
|
+
}
|
|
2018
|
+
/**
|
|
2019
|
+
* Focus management helper - actually focuses the first option when opened via arrow keys
|
|
2020
|
+
*/
|
|
2021
|
+
focusFirstOptionForArrowKeys() {
|
|
2022
|
+
if (this.isOpen) {
|
|
2023
|
+
// Set arrow-key navigation mode
|
|
2024
|
+
this.isArrowKeyNavigationMode = true;
|
|
2025
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
2026
|
+
if (selectableOptions.length > 0) {
|
|
2027
|
+
this.setInitialHighlightedIndex();
|
|
2028
|
+
// For arrow key navigation, actually focus the highlighted option
|
|
2029
|
+
if (this.listboxEl) {
|
|
2030
|
+
const optionElements = this.listboxEl.querySelectorAll('[role="option"]');
|
|
2031
|
+
const highlightedOption = optionElements[this.highlightedIndex];
|
|
2032
|
+
if (highlightedOption) {
|
|
2033
|
+
// Remove tabindex from all options first
|
|
2034
|
+
optionElements.forEach(option => {
|
|
2035
|
+
option.setAttribute('tabindex', '-1');
|
|
2036
|
+
});
|
|
2037
|
+
// Set tabindex and focus on highlighted option
|
|
2038
|
+
highlightedOption.setAttribute('tabindex', '0');
|
|
2039
|
+
highlightedOption.focus();
|
|
2040
|
+
highlightedOption.scrollIntoView({ block: 'nearest', behavior: 'smooth' });
|
|
2041
|
+
}
|
|
2042
|
+
}
|
|
2043
|
+
// Update aria-activedescendant on trigger
|
|
2044
|
+
this.updateAriaActiveDescendant();
|
|
2045
|
+
}
|
|
2046
|
+
}
|
|
2047
|
+
}
|
|
2048
|
+
/**
|
|
2049
|
+
* Focus management helper - updates visual state and scrolling for the currently highlighted option
|
|
2050
|
+
* Note: We don't actually focus the option to prevent focusout events that close the dropdown
|
|
2051
|
+
*/
|
|
2052
|
+
updateOptionFocus() {
|
|
2053
|
+
if (!this.listboxEl || this.highlightedIndex < 0)
|
|
2054
|
+
return;
|
|
2055
|
+
const optionElements = this.listboxEl.querySelectorAll('[role="option"]');
|
|
2056
|
+
const currentOption = optionElements[this.highlightedIndex];
|
|
2057
|
+
if (currentOption) {
|
|
2058
|
+
// Check if any option currently has focus OR if we're in arrow-key navigation mode
|
|
2059
|
+
const hasOptionFocus = Array.from(optionElements).some(el => el === document.activeElement);
|
|
2060
|
+
if (hasOptionFocus || this.isArrowKeyNavigationMode) {
|
|
2061
|
+
// We're in arrow-key navigation mode, so actually move focus between options
|
|
2062
|
+
optionElements.forEach(option => {
|
|
2063
|
+
option.setAttribute('tabindex', '-1');
|
|
2064
|
+
});
|
|
2065
|
+
currentOption.setAttribute('tabindex', '0');
|
|
2066
|
+
currentOption.focus();
|
|
2067
|
+
}
|
|
2068
|
+
// Always scroll the option into view
|
|
2069
|
+
currentOption.scrollIntoView({ block: 'nearest', behavior: 'smooth' });
|
|
2070
|
+
}
|
|
2071
|
+
// Always update aria-activedescendant on the trigger element
|
|
2072
|
+
this.updateAriaActiveDescendant();
|
|
2073
|
+
}
|
|
2074
|
+
/**
|
|
2075
|
+
* Updates aria-activedescendant on the trigger element
|
|
2076
|
+
*/
|
|
2077
|
+
updateAriaActiveDescendant() {
|
|
2078
|
+
if (this.triggerEl && this.highlightedIndex >= 0) {
|
|
2079
|
+
this.triggerEl.setAttribute('aria-activedescendant', `pds-combobox-option-${this.highlightedIndex}`);
|
|
2080
|
+
}
|
|
2081
|
+
else if (this.triggerEl) {
|
|
2082
|
+
this.triggerEl.removeAttribute('aria-activedescendant');
|
|
2083
|
+
}
|
|
2084
|
+
}
|
|
2085
|
+
/**
|
|
2086
|
+
* Focus management helper - restores focus to the trigger element
|
|
2087
|
+
*/
|
|
2088
|
+
restoreFocusToTrigger() {
|
|
2089
|
+
setTimeout(() => {
|
|
2090
|
+
if (this.inputEl) {
|
|
2091
|
+
this.inputEl.focus();
|
|
2092
|
+
}
|
|
2093
|
+
else if (this.triggerEl) {
|
|
2094
|
+
this.triggerEl.focus();
|
|
2095
|
+
}
|
|
2096
|
+
}, 0);
|
|
1629
2097
|
}
|
|
1630
2098
|
/**
|
|
1631
2099
|
* Gets the value of the currently selected option.
|
|
@@ -1635,7 +2103,7 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1635
2103
|
}
|
|
1636
2104
|
// Get the label of the selected option
|
|
1637
2105
|
get selectedLabel() {
|
|
1638
|
-
return this.
|
|
2106
|
+
return this.displayText || '';
|
|
1639
2107
|
}
|
|
1640
2108
|
// Get the layout content of the selected option for button trigger
|
|
1641
2109
|
get selectedLayoutContent() {
|
|
@@ -1645,30 +2113,148 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1645
2113
|
get selectedHasLayout() {
|
|
1646
2114
|
return this.selectedOption ? this.isOptionLayout(this.selectedOption) : false;
|
|
1647
2115
|
}
|
|
2116
|
+
// Extract chip sentiment from selected option's attributes, layout content, or slotted trigger content
|
|
2117
|
+
get selectedChipSentiment() {
|
|
2118
|
+
// First priority: Check selected option's chip attributes (new automatic approach)
|
|
2119
|
+
if (this.selectedOption && this.isOptionChip(this.selectedOption)) {
|
|
2120
|
+
const sentiment = this.selectedOption.getAttribute('chip-sentiment');
|
|
2121
|
+
if (sentiment)
|
|
2122
|
+
return sentiment;
|
|
2123
|
+
}
|
|
2124
|
+
// Second priority: Check selected option's layout content (existing custom layout approach)
|
|
2125
|
+
if (this.selectedOption && this.isOptionLayout(this.selectedOption)) {
|
|
2126
|
+
const chipElement = this.selectedOption.querySelector('pds-chip');
|
|
2127
|
+
const sentiment = chipElement === null || chipElement === void 0 ? void 0 : chipElement.getAttribute('sentiment');
|
|
2128
|
+
if (sentiment)
|
|
2129
|
+
return sentiment;
|
|
2130
|
+
}
|
|
2131
|
+
// Third priority: Check if we have custom trigger content with a chip (initial state)
|
|
2132
|
+
if (this.customTriggerContent) {
|
|
2133
|
+
const slottedChip = this.el.querySelector('pds-chip[slot="trigger-content"]');
|
|
2134
|
+
if (slottedChip) {
|
|
2135
|
+
const sentiment = slottedChip.getAttribute('sentiment');
|
|
2136
|
+
if (sentiment)
|
|
2137
|
+
return sentiment;
|
|
2138
|
+
}
|
|
2139
|
+
}
|
|
2140
|
+
// Fallback: Use component props
|
|
2141
|
+
return this.chipSentiment;
|
|
2142
|
+
}
|
|
2143
|
+
// Extract chip large from selected option's attributes, layout content, or slotted trigger content
|
|
2144
|
+
get selectedChipLarge() {
|
|
2145
|
+
// First priority: Check selected option's chip attributes (new automatic approach)
|
|
2146
|
+
if (this.selectedOption && this.isOptionChip(this.selectedOption)) {
|
|
2147
|
+
if (this.selectedOption.hasAttribute('chip-large'))
|
|
2148
|
+
return true;
|
|
2149
|
+
}
|
|
2150
|
+
// Second priority: Check selected option's layout content (existing custom layout approach)
|
|
2151
|
+
if (this.selectedOption && this.isOptionLayout(this.selectedOption)) {
|
|
2152
|
+
const chipElement = this.selectedOption.querySelector('pds-chip');
|
|
2153
|
+
if (chipElement === null || chipElement === void 0 ? void 0 : chipElement.hasAttribute('large'))
|
|
2154
|
+
return true;
|
|
2155
|
+
}
|
|
2156
|
+
// Third priority: Check if we have custom trigger content with a chip (initial state)
|
|
2157
|
+
if (this.customTriggerContent) {
|
|
2158
|
+
const slottedChip = this.el.querySelector('pds-chip[slot="trigger-content"]');
|
|
2159
|
+
if (slottedChip && slottedChip.hasAttribute('large')) {
|
|
2160
|
+
return true;
|
|
2161
|
+
}
|
|
2162
|
+
}
|
|
2163
|
+
// Fallback: Use component props
|
|
2164
|
+
return this.chipLarge;
|
|
2165
|
+
}
|
|
2166
|
+
// Extract chip icon from selected option's attributes, layout content, or slotted trigger content
|
|
2167
|
+
get selectedChipIcon() {
|
|
2168
|
+
// First priority: Check selected option's chip attributes (new automatic approach)
|
|
2169
|
+
if (this.selectedOption && this.isOptionChip(this.selectedOption)) {
|
|
2170
|
+
const icon = this.selectedOption.getAttribute('chip-icon');
|
|
2171
|
+
if (icon)
|
|
2172
|
+
return icon;
|
|
2173
|
+
}
|
|
2174
|
+
// Second priority: Check selected option's layout content (existing custom layout approach)
|
|
2175
|
+
if (this.selectedOption && this.isOptionLayout(this.selectedOption)) {
|
|
2176
|
+
const chipElement = this.selectedOption.querySelector('pds-chip');
|
|
2177
|
+
const icon = chipElement === null || chipElement === void 0 ? void 0 : chipElement.getAttribute('icon');
|
|
2178
|
+
if (icon)
|
|
2179
|
+
return icon;
|
|
2180
|
+
}
|
|
2181
|
+
// Third priority: Check if we have custom trigger content with a chip (initial state)
|
|
2182
|
+
if (this.customTriggerContent) {
|
|
2183
|
+
const slottedChip = this.el.querySelector('pds-chip[slot="trigger-content"]');
|
|
2184
|
+
if (slottedChip) {
|
|
2185
|
+
const icon = slottedChip.getAttribute('icon');
|
|
2186
|
+
if (icon)
|
|
2187
|
+
return icon;
|
|
2188
|
+
}
|
|
2189
|
+
}
|
|
2190
|
+
// Fallback: Use component props
|
|
2191
|
+
return this.chipIcon;
|
|
2192
|
+
}
|
|
2193
|
+
// Extract chip dot from selected option's attributes, layout content, or slotted trigger content
|
|
2194
|
+
get selectedChipDot() {
|
|
2195
|
+
// First priority: Check selected option's chip attributes (new automatic approach)
|
|
2196
|
+
if (this.selectedOption && this.isOptionChip(this.selectedOption)) {
|
|
2197
|
+
if (this.selectedOption.hasAttribute('chip-dot'))
|
|
2198
|
+
return true;
|
|
2199
|
+
}
|
|
2200
|
+
// Second priority: Check selected option's layout content (existing custom layout approach)
|
|
2201
|
+
if (this.selectedOption && this.isOptionLayout(this.selectedOption)) {
|
|
2202
|
+
const chipElement = this.selectedOption.querySelector('pds-chip');
|
|
2203
|
+
if (chipElement === null || chipElement === void 0 ? void 0 : chipElement.hasAttribute('dot'))
|
|
2204
|
+
return true;
|
|
2205
|
+
}
|
|
2206
|
+
// Third priority: Check if we have custom trigger content with a chip (initial state)
|
|
2207
|
+
if (this.customTriggerContent) {
|
|
2208
|
+
const slottedChip = this.el.querySelector('pds-chip[slot="trigger-content"]');
|
|
2209
|
+
if (slottedChip && slottedChip.hasAttribute('dot')) {
|
|
2210
|
+
return true;
|
|
2211
|
+
}
|
|
2212
|
+
}
|
|
2213
|
+
// Fallback: Use component props
|
|
2214
|
+
return this.chipDot;
|
|
2215
|
+
}
|
|
1648
2216
|
handleOptionClick(option) {
|
|
1649
2217
|
// Update reactive state - single source of truth
|
|
2218
|
+
// The @Watch('selectedOption') will handle displayText, value, and form internals
|
|
1650
2219
|
this.setSelectedOption(option);
|
|
1651
|
-
this.value = this.getOptionLabel(option);
|
|
1652
2220
|
this.isOpen = false;
|
|
1653
2221
|
this.pdsComboboxChange.emit({ value: option.value });
|
|
1654
2222
|
}
|
|
1655
2223
|
renderDropdown() {
|
|
1656
|
-
if (!this.isOpen || this.
|
|
2224
|
+
if (!this.isOpen || this.filteredItems.length === 0) {
|
|
2225
|
+
return null;
|
|
2226
|
+
}
|
|
2227
|
+
let optionIndex = 0;
|
|
2228
|
+
const selectableOptions = this.filteredItems.filter(item => item.tagName === 'OPTION');
|
|
2229
|
+
return (h("ul", { class: "pds-combobox__listbox", role: "listbox", id: "pds-combobox-listbox", "aria-label": this.label || 'Options', "aria-multiselectable": "false", ref: el => (this.listboxEl = el) }, this.filteredItems.map((item, itemIdx) => {
|
|
2230
|
+
if (item.tagName === 'OPTGROUP') {
|
|
2231
|
+
const optgroup = item;
|
|
2232
|
+
return (h("li", { key: `optgroup-${itemIdx}`, class: "pds-combobox__group-label", role: "presentation", "aria-label": optgroup.label }, optgroup.label));
|
|
2233
|
+
}
|
|
2234
|
+
else if (item.tagName === 'PDS-TEXT') {
|
|
2235
|
+
const pdsText = item;
|
|
2236
|
+
return (h("li", { key: `pds-text-${itemIdx}`, class: "pds-combobox__group-label", role: "presentation" }, pdsText.textContent));
|
|
2237
|
+
}
|
|
2238
|
+
else if (item.tagName === 'OPTION') {
|
|
2239
|
+
const option = item;
|
|
2240
|
+
const isSelected = this.isOptionSelected(option);
|
|
2241
|
+
const isHighlighted = this.highlightedIndex === optionIndex;
|
|
2242
|
+
const isLayout = this.isOptionLayout(option);
|
|
2243
|
+
const isChip = this.isOptionChip(option);
|
|
2244
|
+
const currentOptionIndex = optionIndex++;
|
|
2245
|
+
return (h("li", { key: option.value, id: `pds-combobox-option-${currentOptionIndex}`, role: "option", "aria-selected": isSelected ? 'true' : 'false', "aria-setsize": selectableOptions.length, "aria-posinset": currentOptionIndex + 1, "aria-label": isLayout || isChip ? option.getAttribute('aria-label') || this.getOptionLabel(option) : undefined, tabindex: isHighlighted ? '0' : '-1', class: {
|
|
2246
|
+
'pds-combobox__option': true,
|
|
2247
|
+
'pds-combobox__option--highlighted': isHighlighted,
|
|
2248
|
+
'pds-combobox__option--layout': isLayout,
|
|
2249
|
+
'pds-combobox__option--chip': isChip,
|
|
2250
|
+
}, "data-option-index": currentOptionIndex, onMouseDown: this.onOptionMouseDown, onClick: this.onOptionClick, onMouseEnter: this.onOptionMouseEnter, onKeyDown: this.onOptionKeyDown }, isLayout ? (h("pds-box", { class: "pds-combobox__option-layout-wrapper", innerHTML: this.getOptionLayoutContent(option) })) : isChip ? (this.renderOptionChip(option)) : (this.getOptionLabel(option)), isSelected && h("pds-icon", { icon: "check", size: "regular", class: "pds-combobox__option-check" })));
|
|
2251
|
+
}
|
|
1657
2252
|
return null;
|
|
1658
|
-
return (h("ul", { class: "pds-combobox__listbox", role: "listbox", id: "pds-combobox-listbox", ref: el => (this.listboxEl = el) }, this.filteredOptions.map((option, idx) => {
|
|
1659
|
-
const isSelected = this.isOptionSelected(option);
|
|
1660
|
-
const isHighlighted = this.highlightedIndex === idx;
|
|
1661
|
-
const isLayout = this.isOptionLayout(option);
|
|
1662
|
-
return (h("li", { key: option.value, id: `pds-combobox-option-${idx}`, role: "option", "aria-selected": isSelected ? 'true' : 'false', class: {
|
|
1663
|
-
'pds-combobox__option': true,
|
|
1664
|
-
'pds-combobox__option--highlighted': isHighlighted,
|
|
1665
|
-
'pds-combobox__option--layout': isLayout,
|
|
1666
|
-
}, "data-option-index": idx, onMouseDown: this.onOptionMouseDown, onClick: this.onOptionClick, onMouseEnter: this.onOptionMouseEnter }, isLayout ? (h("pds-box", { class: "pds-combobox__option-layout-wrapper", innerHTML: this.getOptionLayoutContent(option) })) : (this.getOptionLabel(option)), isSelected && h("pds-icon", { icon: "check", size: "regular", class: "pds-combobox__option-check" })));
|
|
1667
2253
|
})));
|
|
1668
2254
|
}
|
|
1669
2255
|
// Helper method to render the caret icon
|
|
1670
2256
|
renderCaretIcon() {
|
|
1671
|
-
return h("pds-icon", { icon: "caret-down", "aria-hidden": "true",
|
|
2257
|
+
return h("pds-icon", { icon: "caret-down", "aria-hidden": "true", class: "pds-combobox__button-trigger-chevron" });
|
|
1672
2258
|
}
|
|
1673
2259
|
// Helper method to render layout content
|
|
1674
2260
|
renderLayoutContent() {
|
|
@@ -1682,6 +2268,23 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1682
2268
|
shouldShowLayoutContent() {
|
|
1683
2269
|
return this.selectedHasLayout && !!this.selectedLayoutContent;
|
|
1684
2270
|
}
|
|
2271
|
+
// Helper method to build chip trigger CSS classes
|
|
2272
|
+
getChipTriggerClass() {
|
|
2273
|
+
const classes = ['pds-combobox__chip-trigger'];
|
|
2274
|
+
// Add sentiment class
|
|
2275
|
+
classes.push(`pds-combobox__chip-trigger--${this.selectedChipSentiment}`);
|
|
2276
|
+
// Always use dropdown variant for chip triggers
|
|
2277
|
+
classes.push('pds-combobox__chip-trigger--dropdown');
|
|
2278
|
+
// Add large class if needed
|
|
2279
|
+
if (this.selectedChipLarge) {
|
|
2280
|
+
classes.push('pds-combobox__chip-trigger--large');
|
|
2281
|
+
}
|
|
2282
|
+
// Add dot class if needed
|
|
2283
|
+
if (this.selectedChipDot) {
|
|
2284
|
+
classes.push('pds-combobox__chip-trigger--dot');
|
|
2285
|
+
}
|
|
2286
|
+
return classes.join(' ');
|
|
2287
|
+
}
|
|
1685
2288
|
renderButtonTriggerContent() {
|
|
1686
2289
|
// Case 1: Custom trigger content with layout priority
|
|
1687
2290
|
if (this.customTriggerContent) {
|
|
@@ -1698,21 +2301,88 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1698
2301
|
// Case 3: Standard mode with default text content
|
|
1699
2302
|
return [this.renderDefaultContent(), this.renderCaretIcon()];
|
|
1700
2303
|
}
|
|
2304
|
+
renderChipTriggerContent() {
|
|
2305
|
+
// Case 1: Custom trigger content with layout priority
|
|
2306
|
+
if (this.customTriggerContent) {
|
|
2307
|
+
if (this.shouldShowLayoutContent()) {
|
|
2308
|
+
// When using custom layouts, the chip handles its own dropdown arrow
|
|
2309
|
+
return this.renderChipTriggerLayoutContent();
|
|
2310
|
+
}
|
|
2311
|
+
// Fall back to slot content when no layout is available - chip handles its own dropdown arrow
|
|
2312
|
+
return h("slot", { name: "trigger-content" });
|
|
2313
|
+
}
|
|
2314
|
+
// Case 2: Standard mode with layout content
|
|
2315
|
+
if (this.shouldShowLayoutContent()) {
|
|
2316
|
+
// When using custom layouts, the chip handles its own dropdown arrow
|
|
2317
|
+
return this.renderChipTriggerLayoutContent();
|
|
2318
|
+
}
|
|
2319
|
+
// Case 3: Automatic chip mode - selected option has chip attributes
|
|
2320
|
+
if (this.selectedOption && this.selectedOptionChipProps) {
|
|
2321
|
+
// Render as chip automatically - chip handles its own dropdown arrow
|
|
2322
|
+
return this.renderSelectedOptionAsChip();
|
|
2323
|
+
}
|
|
2324
|
+
// Case 4: Standard mode with default text content
|
|
2325
|
+
return [
|
|
2326
|
+
this.renderChipTriggerDefaultContent(),
|
|
2327
|
+
this.renderCaretIcon()
|
|
2328
|
+
];
|
|
2329
|
+
}
|
|
2330
|
+
// Helper method to render selected option as chip for trigger (automatic approach)
|
|
2331
|
+
renderSelectedOptionAsChip() {
|
|
2332
|
+
if (!this.selectedOption || !this.selectedOptionChipProps)
|
|
2333
|
+
return null;
|
|
2334
|
+
return (h("pds-chip", { sentiment: this.selectedOptionChipProps.sentiment, variant: "dropdown" // Always use dropdown variant for triggers
|
|
2335
|
+
,
|
|
2336
|
+
large: this.selectedOptionChipProps.large, icon: this.selectedOptionChipProps.icon, dot: this.selectedOptionChipProps.dot, class: "pds-combobox__chip-trigger-auto" }, this.getOptionLabel(this.selectedOption)));
|
|
2337
|
+
}
|
|
2338
|
+
// Helper method to render chip trigger layout content
|
|
2339
|
+
renderChipTriggerLayoutContent() {
|
|
2340
|
+
return (h("div", { class: "pds-combobox__chip-trigger-layout-wrapper", innerHTML: this.getModifiedLayoutContentForTrigger() }));
|
|
2341
|
+
}
|
|
2342
|
+
// Helper method to modify layout content for trigger use (ensure dropdown variant)
|
|
2343
|
+
getModifiedLayoutContentForTrigger() {
|
|
2344
|
+
let content = this.selectedLayoutContent;
|
|
2345
|
+
// If the content contains a pds-chip, ensure it has variant="dropdown"
|
|
2346
|
+
if (content.includes('<pds-chip')) {
|
|
2347
|
+
// Use a temporary div to parse and modify the HTML
|
|
2348
|
+
const tempDiv = document.createElement('div');
|
|
2349
|
+
tempDiv.innerHTML = content;
|
|
2350
|
+
const chipElement = tempDiv.querySelector('pds-chip');
|
|
2351
|
+
if (chipElement) {
|
|
2352
|
+
chipElement.setAttribute('variant', 'dropdown');
|
|
2353
|
+
content = tempDiv.innerHTML;
|
|
2354
|
+
}
|
|
2355
|
+
}
|
|
2356
|
+
return content;
|
|
2357
|
+
}
|
|
2358
|
+
// Helper method to render chip trigger default content
|
|
2359
|
+
renderChipTriggerDefaultContent() {
|
|
2360
|
+
return (h("span", { class: "pds-combobox__chip-trigger-label" }, this.selectedChipIcon && h("pds-icon", { icon: this.selectedChipIcon, class: "pds-combobox__chip-trigger-icon" }), this.selectedLabel || this.placeholder));
|
|
2361
|
+
}
|
|
2362
|
+
// Helper method to render option as chip (new automatic approach)
|
|
2363
|
+
renderOptionChip(option) {
|
|
2364
|
+
const chipProps = this.getOptionChipProps(option);
|
|
2365
|
+
return (h("pds-chip", { sentiment: chipProps.sentiment, variant: "text" // Dropdown options use text variant, not dropdown
|
|
2366
|
+
,
|
|
2367
|
+
large: chipProps.large, icon: chipProps.icon, dot: chipProps.dot, class: "pds-combobox__option-chip" }, this.getOptionLabel(option)));
|
|
2368
|
+
}
|
|
1701
2369
|
render() {
|
|
1702
2370
|
const triggerClass = `pds-combobox__button-trigger pds-combobox__button-trigger--${this.triggerVariant}`;
|
|
1703
|
-
return (h(Host, { key: '
|
|
2371
|
+
return (h(Host, { key: 'd62992abd6eae05cfff52cfc0272490ca6370291' }, h("div", { key: 'affff971535065b7352daee494742bf7b65a61f4', class: "pds-combobox", tabIndex: -1, onFocusout: this.onComboboxFocusOut }, this.label && (h("label", { key: 'c27f88928932bc4535698cb88595b1559cb22e55', htmlFor: this.componentId, class: "pds-combobox__label" }, h("span", { key: '0b65e67897735819cb2a4dc7d6d7d355af2f28d5', class: this.hideLabel ? 'visually-hidden' : '' }, this.label))), this.trigger === 'input' ? (h("div", { class: "pds-combobox__input-wrapper", style: { width: this.triggerWidth } }, h("input", { ref: el => {
|
|
1704
2372
|
this.inputEl = el;
|
|
1705
2373
|
this.triggerEl = el;
|
|
1706
|
-
}, class: "pds-combobox__input",
|
|
2374
|
+
}, 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" }), h("pds-icon", { icon: "enlarge", "aria-hidden": "true", class: "pds-combobox__input-icon" }))) : this.trigger === 'chip' ? (h("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: el => (this.triggerEl = el), part: "chip-trigger" }, this.renderChipTriggerContent())) : (h("div", { class: triggerClass, 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: el => (this.triggerEl = el), part: "button-trigger" }, this.renderButtonTriggerContent())), h("div", { key: '47c259c2bc5b6f4f1d249d9bddd476b11c5a90fe', style: { display: 'none' } }, h("slot", { key: '83355a804fe978b6fb58838b4174bc815cf2f933', onSlotchange: () => this.updateOptions() })), this.renderDropdown())));
|
|
1707
2375
|
}
|
|
2376
|
+
static get formAssociated() { return true; }
|
|
1708
2377
|
get el() { return this; }
|
|
1709
2378
|
static get watchers() { return {
|
|
1710
2379
|
"value": ["handleValueChange"],
|
|
1711
2380
|
"selectedOption": ["handleSelectedOptionChange"]
|
|
1712
2381
|
}; }
|
|
1713
2382
|
static get style() { return pdsComboboxCss; }
|
|
1714
|
-
}, [
|
|
2383
|
+
}, [65, "pds-combobox", {
|
|
1715
2384
|
"componentId": [1, "component-id"],
|
|
2385
|
+
"name": [513],
|
|
1716
2386
|
"customOptionLayouts": [4, "custom-option-layouts"],
|
|
1717
2387
|
"customTriggerContent": [4, "custom-trigger-content"],
|
|
1718
2388
|
"disabled": [4],
|
|
@@ -1726,12 +2396,18 @@ const PdsCombobox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCombobox extends
|
|
|
1726
2396
|
"trigger": [1],
|
|
1727
2397
|
"triggerWidth": [1, "trigger-width"],
|
|
1728
2398
|
"triggerVariant": [1, "trigger-variant"],
|
|
2399
|
+
"chipSentiment": [1, "chip-sentiment"],
|
|
2400
|
+
"chipLarge": [4, "chip-large"],
|
|
2401
|
+
"chipIcon": [1, "chip-icon"],
|
|
2402
|
+
"chipDot": [4, "chip-dot"],
|
|
1729
2403
|
"value": [1025],
|
|
1730
|
-
"
|
|
2404
|
+
"displayText": [32],
|
|
2405
|
+
"filteredItems": [32],
|
|
1731
2406
|
"highlightedIndex": [32],
|
|
1732
2407
|
"isOpen": [32],
|
|
1733
2408
|
"selectedOption": [32],
|
|
1734
2409
|
"selectedOptionLayoutContent": [32],
|
|
2410
|
+
"selectedOptionChipProps": [32],
|
|
1735
2411
|
"setFocus": [64],
|
|
1736
2412
|
"getSelectedValue": [64]
|
|
1737
2413
|
}, undefined, {
|
|
@@ -1742,7 +2418,7 @@ function defineCustomElement$1() {
|
|
|
1742
2418
|
if (typeof customElements === "undefined") {
|
|
1743
2419
|
return;
|
|
1744
2420
|
}
|
|
1745
|
-
const components = ["pds-combobox", "pds-box", "pds-icon"];
|
|
2421
|
+
const components = ["pds-combobox", "pds-box", "pds-chip", "pds-icon"];
|
|
1746
2422
|
components.forEach(tagName => { switch (tagName) {
|
|
1747
2423
|
case "pds-combobox":
|
|
1748
2424
|
if (!customElements.get(tagName)) {
|
|
@@ -1750,6 +2426,11 @@ function defineCustomElement$1() {
|
|
|
1750
2426
|
}
|
|
1751
2427
|
break;
|
|
1752
2428
|
case "pds-box":
|
|
2429
|
+
if (!customElements.get(tagName)) {
|
|
2430
|
+
defineCustomElement$4();
|
|
2431
|
+
}
|
|
2432
|
+
break;
|
|
2433
|
+
case "pds-chip":
|
|
1753
2434
|
if (!customElements.get(tagName)) {
|
|
1754
2435
|
defineCustomElement$3();
|
|
1755
2436
|
}
|