@pine-ds/core 3.4.3 → 3.5.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/floating-ui.dom.js +180 -4
- package/components/floating-ui.dom.js.map +1 -1
- package/components/index2.js +1 -1
- package/components/index2.js.map +1 -1
- package/components/mock-pds-modal.js +1 -1
- package/components/pds-box2.js +4 -2
- package/components/pds-box2.js.map +1 -1
- package/components/pds-button2.js +1 -1
- package/components/pds-button2.js.map +1 -1
- package/components/pds-input.js +3 -2
- 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-loader2.js.map +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 +2 -2
- package/components/pds-popover.js +1 -1
- package/components/pds-progress.js +1 -1
- package/components/pds-property.js +1 -1
- package/components/pds-radio.js +3 -3
- package/components/pds-row.js +1 -1
- package/components/pds-select.js +1 -1
- 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 +3 -3
- 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 +66 -8
- package/components/pds-table-cell2.js.map +1 -1
- package/components/pds-table-head-cell2.js +67 -9
- package/components/pds-table-head-cell2.js.map +1 -1
- package/components/pds-table-head.js +1 -1
- package/components/pds-table-row.js +1 -1
- package/components/pds-table.js +106 -4
- package/components/pds-table.js.map +1 -1
- package/components/pds-tabpanel.js +1 -1
- package/components/pds-tabs.js +1 -1
- package/components/pds-text2.js +1 -1
- package/components/pds-textarea.js +7 -6
- package/components/pds-textarea.js.map +1 -1
- package/components/pds-tooltip.js +93 -159
- package/components/pds-tooltip.js.map +1 -1
- package/dist/cjs/{floating-ui.dom-Bz4BD-cr.js → floating-ui.dom-DTAy35nv.js} +182 -5
- package/dist/{esm-es5/floating-ui.dom-D_FwyeSw.js.map → cjs/floating-ui.dom-DTAy35nv.js.map} +1 -1
- package/dist/cjs/{index-BfqrB2cC.js → index-DVaLegMK.js} +3 -3
- package/dist/cjs/index-DVaLegMK.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mock-pds-modal.cjs.entry.js +1 -1
- package/dist/cjs/pds-accordion.cjs.entry.js +1 -1
- package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
- package/dist/cjs/pds-box.cjs.entry.js +3 -2
- package/dist/cjs/pds-box.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-box.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-button.cjs.entry.js +2 -2
- package/dist/cjs/pds-button.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/pds-chip.cjs.entry.js +1 -1
- package/dist/cjs/pds-combobox.cjs.entry.js +1 -1
- package/dist/cjs/pds-copytext.cjs.entry.js +1 -1
- package/dist/cjs/pds-dropdown-menu.cjs.entry.js +1 -1
- package/dist/cjs/pds-input.cjs.entry.js +3 -3
- package/dist/cjs/pds-input.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-input.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-link.cjs.entry.js +3 -3
- package/dist/cjs/pds-loader.cjs.entry.js +1 -1
- package/dist/cjs/pds-loader.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-loader.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-modal-content.cjs.entry.js +2 -2
- package/dist/cjs/pds-modal-footer.cjs.entry.js +1 -1
- package/dist/cjs/pds-modal-header.cjs.entry.js +1 -1
- package/dist/cjs/pds-modal.cjs.entry.js +2 -2
- package/dist/cjs/pds-popover.cjs.entry.js +1 -1
- package/dist/cjs/pds-progress.cjs.entry.js +1 -1
- package/dist/cjs/pds-property.cjs.entry.js +1 -1
- package/dist/cjs/pds-radio.cjs.entry.js +4 -4
- package/dist/cjs/pds-row.cjs.entry.js +1 -1
- package/dist/cjs/pds-select.cjs.entry.js +2 -2
- 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 +2 -2
- package/dist/cjs/pds-sortable.cjs.entry.js +1 -1
- package/dist/cjs/pds-switch.cjs.entry.js +4 -4
- package/dist/cjs/pds-tab.cjs.entry.js +4 -4
- 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 +1 -1
- package/dist/cjs/pds-table-cell.cjs.entry.js +65 -8
- 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 +67 -10
- package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-row.cjs.entry.js +1 -1
- package/dist/cjs/pds-table.cjs.entry.js +106 -4
- 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 +1 -1
- package/dist/cjs/pds-tabs.cjs.entry.js +1 -1
- package/dist/cjs/pds-text.cjs.entry.js +1 -1
- package/dist/cjs/pds-textarea.cjs.entry.js +7 -7
- package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-textarea.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-tooltip.cjs.entry.js +93 -158
- package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/pds-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/pine-core.cjs.js +1 -1
- package/dist/collection/components/pds-box/pds-box.css +4 -0
- package/dist/collection/components/pds-box/pds-box.js +24 -1
- package/dist/collection/components/pds-box/pds-box.js.map +1 -1
- package/dist/collection/components/pds-button/pds-button.js +2 -1
- package/dist/collection/components/pds-button/pds-button.js.map +1 -1
- package/dist/collection/components/pds-input/pds-input.css +13 -0
- package/dist/collection/components/pds-input/pds-input.js +20 -1
- package/dist/collection/components/pds-input/pds-input.js.map +1 -1
- package/dist/collection/components/pds-input/stories/pds-input.stories.js +10 -1
- package/dist/collection/components/pds-link/pds-link.js +2 -2
- package/dist/collection/components/pds-loader/pds-loader.js +2 -1
- package/dist/collection/components/pds-loader/pds-loader.js.map +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.js +2 -2
- package/dist/collection/components/pds-modal/test/mock-pds-modal.js +1 -1
- package/dist/collection/components/pds-popover/pds-popover.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 +3 -3
- package/dist/collection/components/pds-row/pds-row.js +1 -1
- package/dist/collection/components/pds-select/pds-select.js +2 -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 +3 -3
- 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 +16 -0
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +83 -7
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table-cell/stories/pds-table-cell.stories.js +23 -4
- 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 +18 -1
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +84 -8
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table-head-cell/stories/pds-table-head-cell.stories.js +13 -4
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
- package/dist/collection/components/pds-table/pds-table.css +80 -11
- package/dist/collection/components/pds-table/pds-table.js +105 -3
- package/dist/collection/components/pds-table/pds-table.js.map +1 -1
- package/dist/collection/components/pds-table/stories/pds-table.stories.js +45 -0
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +6 -6
- 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 +1 -1
- package/dist/collection/components/pds-text/pds-text.js +1 -1
- package/dist/collection/components/pds-textarea/pds-textarea.css +13 -0
- package/dist/collection/components/pds-textarea/pds-textarea.js +25 -6
- package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
- package/dist/collection/components/pds-textarea/stories/pds-textarea.stories.js +4 -0
- package/dist/collection/components/pds-tooltip/pds-tooltip.css +0 -1
- package/dist/collection/components/pds-tooltip/pds-tooltip.js +102 -78
- package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
- package/dist/docs.json +176 -7
- package/dist/esm/{floating-ui.dom-D_FwyeSw.js → floating-ui.dom-DbQzNDdQ.js} +182 -6
- package/dist/esm/{floating-ui.dom-D_FwyeSw.js.map → floating-ui.dom-DbQzNDdQ.js.map} +1 -1
- package/dist/esm/{index-CzVv99mW.js → index-DrJ5r5Pu.js} +3 -3
- package/dist/esm/index-DrJ5r5Pu.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mock-pds-modal.entry.js +1 -1
- package/dist/esm/pds-accordion.entry.js +1 -1
- package/dist/esm/pds-avatar.entry.js +1 -1
- package/dist/esm/pds-box.entry.js +3 -2
- package/dist/esm/pds-box.entry.js.map +1 -1
- package/dist/esm/pds-button.entry.js +2 -2
- package/dist/esm/pds-button.entry.js.map +1 -1
- package/dist/esm/pds-checkbox.entry.js +1 -1
- package/dist/esm/pds-chip.entry.js +1 -1
- package/dist/esm/pds-combobox.entry.js +1 -1
- package/dist/esm/pds-copytext.entry.js +1 -1
- package/dist/esm/pds-dropdown-menu.entry.js +1 -1
- package/dist/esm/pds-input.entry.js +3 -3
- package/dist/esm/pds-input.entry.js.map +1 -1
- package/dist/esm/pds-link.entry.js +3 -3
- package/dist/esm/pds-loader.entry.js +1 -1
- package/dist/esm/pds-loader.entry.js.map +1 -1
- package/dist/esm/pds-modal-content.entry.js +2 -2
- package/dist/esm/pds-modal-footer.entry.js +1 -1
- package/dist/esm/pds-modal-header.entry.js +1 -1
- package/dist/esm/pds-modal.entry.js +2 -2
- package/dist/esm/pds-popover.entry.js +1 -1
- package/dist/esm/pds-progress.entry.js +1 -1
- package/dist/esm/pds-property.entry.js +1 -1
- package/dist/esm/pds-radio.entry.js +4 -4
- package/dist/esm/pds-row.entry.js +1 -1
- package/dist/esm/pds-select.entry.js +2 -2
- package/dist/esm/pds-select.entry.js.map +1 -1
- package/dist/esm/pds-sortable-item.entry.js +2 -2
- package/dist/esm/pds-sortable.entry.js +1 -1
- package/dist/esm/pds-switch.entry.js +4 -4
- package/dist/esm/pds-tab.entry.js +4 -4
- package/dist/esm/pds-tab.entry.js.map +1 -1
- package/dist/esm/pds-table-body.entry.js +1 -1
- package/dist/esm/pds-table-cell.entry.js +65 -8
- package/dist/esm/pds-table-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head-cell.entry.js +67 -10
- package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head.entry.js +1 -1
- package/dist/esm/pds-table-row.entry.js +1 -1
- package/dist/esm/pds-table.entry.js +106 -4
- package/dist/esm/pds-table.entry.js.map +1 -1
- package/dist/esm/pds-tabpanel.entry.js +1 -1
- package/dist/esm/pds-tabs.entry.js +1 -1
- package/dist/esm/pds-text.entry.js +1 -1
- package/dist/esm/pds-textarea.entry.js +7 -7
- package/dist/esm/pds-textarea.entry.js.map +1 -1
- package/dist/esm/pds-tooltip.entry.js +93 -158
- package/dist/esm/pds-tooltip.entry.js.map +1 -1
- package/dist/esm/pine-core.js +1 -1
- package/dist/esm-es5/floating-ui.dom-DbQzNDdQ.js +2 -0
- package/dist/{cjs/floating-ui.dom-Bz4BD-cr.js.map → esm-es5/floating-ui.dom-DbQzNDdQ.js.map} +1 -1
- package/dist/esm-es5/{index-CzVv99mW.js → index-DrJ5r5Pu.js} +1 -1
- package/dist/esm-es5/index-DrJ5r5Pu.js.map +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
- package/dist/esm-es5/pds-accordion.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-box.entry.js.map +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-chip.entry.js +1 -1
- package/dist/esm-es5/pds-combobox.entry.js +2 -2
- package/dist/esm-es5/pds-copytext.entry.js +1 -1
- package/dist/esm-es5/pds-dropdown-menu.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-loader.entry.js.map +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-popover.entry.js +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-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 +1 -1
- package/dist/esm-es5/pds-switch.entry.js +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-row.entry.js +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-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-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/{p-209b1d69.entry.js → p-00616fc9.entry.js} +2 -2
- package/dist/pine-core/p-00616fc9.entry.js.map +1 -0
- package/dist/pine-core/p-02326ac3.entry.js +2 -0
- package/dist/pine-core/p-02326ac3.entry.js.map +1 -0
- package/dist/pine-core/{p-19d08886.system.entry.js → p-023d8b71.system.entry.js} +2 -2
- package/dist/pine-core/p-0485aa93.system.entry.js +2 -0
- package/dist/pine-core/{p-XHvXi3U6.system.js.map → p-0KTU2Jt-.system.js.map} +1 -1
- package/dist/pine-core/{p-380d1056.entry.js → p-0d9e28a2.entry.js} +2 -2
- package/dist/pine-core/p-0d9e28a2.entry.js.map +1 -0
- package/dist/pine-core/{p-8096b988.system.entry.js → p-14a52961.system.entry.js} +2 -2
- package/dist/pine-core/p-174506b9.entry.js +2 -0
- package/dist/pine-core/p-174506b9.entry.js.map +1 -0
- package/dist/pine-core/{p-4066a9c0.system.entry.js → p-2186e5d4.system.entry.js} +2 -2
- package/dist/pine-core/p-232a2043.entry.js +2 -0
- package/dist/pine-core/{p-c7075f11.entry.js → p-25190921.entry.js} +2 -2
- package/dist/pine-core/{p-81a28f54.system.entry.js → p-28f7c0d8.system.entry.js} +2 -2
- package/dist/pine-core/{p-487552a9.system.entry.js → p-297afc49.system.entry.js} +2 -2
- package/dist/pine-core/{p-03d17841.system.entry.js → p-2e19f167.system.entry.js} +2 -2
- package/dist/pine-core/p-2e491c3d.entry.js +2 -0
- package/dist/pine-core/p-2e491c3d.entry.js.map +1 -0
- package/dist/pine-core/{p-a2d16624.entry.js → p-349a8869.entry.js} +2 -2
- package/dist/pine-core/p-3abc0f49.system.entry.js +2 -0
- package/dist/pine-core/p-3abc0f49.system.entry.js.map +1 -0
- package/dist/pine-core/p-3ccb6b0c.system.entry.js +2 -0
- package/dist/pine-core/p-3ccb6b0c.system.entry.js.map +1 -0
- package/dist/pine-core/{p-0a4fc9c7.entry.js → p-47670150.entry.js} +3 -3
- package/dist/pine-core/p-487859a1.system.entry.js +2 -0
- package/dist/pine-core/{p-65275835.system.entry.js → p-48b658fc.system.entry.js} +2 -2
- package/dist/pine-core/p-48b658fc.system.entry.js.map +1 -0
- package/dist/pine-core/{p-042ee55c.entry.js → p-4bbf3e31.entry.js} +2 -2
- package/dist/pine-core/p-4bbf3e31.entry.js.map +1 -0
- package/dist/pine-core/{p-c1a1475e.entry.js → p-4deb7b8c.entry.js} +2 -2
- package/dist/pine-core/{p-7c867f1b.entry.js → p-503cab1f.entry.js} +2 -2
- package/dist/pine-core/{p-4e5b9d19.entry.js → p-52d37cc1.entry.js} +2 -2
- package/dist/pine-core/{p-f9bd0bc2.system.entry.js → p-54183d70.system.entry.js} +2 -2
- package/dist/pine-core/p-5708f95a.entry.js +2 -0
- package/dist/pine-core/{p-f647c1af.system.entry.js → p-5aed29fe.system.entry.js} +2 -2
- package/dist/pine-core/p-5c0803c3.entry.js +2 -0
- package/dist/pine-core/{p-d08ecd18.system.entry.js → p-5da82e8c.system.entry.js} +2 -2
- package/dist/pine-core/{p-ed94947b.entry.js → p-5e8badb9.entry.js} +2 -2
- package/dist/pine-core/{p-126197e5.entry.js → p-651861ff.entry.js} +2 -2
- package/dist/pine-core/{p-8896d43a.entry.js → p-68b5665a.entry.js} +2 -2
- package/dist/pine-core/p-68b5665a.entry.js.map +1 -0
- package/dist/pine-core/{p-276a6a8b.system.entry.js → p-6db1e029.system.entry.js} +2 -2
- package/dist/pine-core/p-6db1e029.system.entry.js.map +1 -0
- package/dist/pine-core/{p-8cb99f2f.entry.js → p-6f4a6d0b.entry.js} +2 -2
- package/dist/pine-core/{p-c1115d78.system.entry.js → p-71169b66.system.entry.js} +2 -2
- package/dist/pine-core/p-71169b66.system.entry.js.map +1 -0
- package/dist/pine-core/{p-3e6229cc.entry.js → p-72053224.entry.js} +2 -2
- package/dist/pine-core/{p-14b424ab.system.entry.js → p-72b05928.system.entry.js} +2 -2
- package/dist/pine-core/p-77336705.entry.js +2 -0
- package/dist/pine-core/p-77336705.entry.js.map +1 -0
- package/dist/pine-core/{p-0dbb2ae9.entry.js → p-79e2782b.entry.js} +2 -2
- package/dist/pine-core/p-7d2c43df.system.entry.js +2 -0
- package/dist/pine-core/p-7d2c43df.system.entry.js.map +1 -0
- package/dist/pine-core/{p-aafb6e06.system.entry.js → p-8722865f.system.entry.js} +2 -2
- package/dist/pine-core/p-8722865f.system.entry.js.map +1 -0
- package/dist/pine-core/p-884b9ae6.system.entry.js +2 -0
- package/dist/pine-core/p-884b9ae6.system.entry.js.map +1 -0
- package/dist/pine-core/{p-89d9f273.system.entry.js → p-8ab7f0d7.system.entry.js} +3 -3
- package/dist/pine-core/{p-b956922a.entry.js → p-8d7abc83.entry.js} +2 -2
- package/dist/pine-core/{p-2aad0209.system.entry.js → p-92c52409.system.entry.js} +2 -2
- package/dist/pine-core/p-96a89cd5.system.entry.js +2 -0
- package/dist/pine-core/p-96a89cd5.system.entry.js.map +1 -0
- package/dist/pine-core/{p-c1f5148f.entry.js → p-98fe56d9.entry.js} +2 -2
- package/dist/pine-core/{p-B4ww2WM0.system.js.map → p-B1FQkx7R.system.js.map} +1 -1
- package/dist/pine-core/{p-CbDQeXQ4.system.js.map → p-B1fiSdbt.system.js.map} +1 -1
- package/dist/pine-core/{p-DQnK6lQ2.system.js.map → p-B6Znd6C5.system.js.map} +1 -1
- package/dist/pine-core/{p-DiBM9O5Q.system.js → p-BEn3hirk.system.js} +1 -1
- package/dist/pine-core/p-BEn3hirk.system.js.map +1 -0
- package/dist/pine-core/p-BKFboaI5.system.js.map +1 -0
- package/dist/pine-core/p-BOHu_LEs.system.js.map +1 -0
- package/dist/pine-core/p-BOmQOnQe.system.js +2 -0
- package/dist/pine-core/{p-ZCkmy1Gu.system.js.map → p-BOmQOnQe.system.js.map} +1 -1
- package/dist/pine-core/{p-REBgf8JA.system.js.map → p-BVKCNX0X.system.js.map} +1 -1
- package/dist/pine-core/{p-DKuFjXiD.system.js.map → p-CCQUgOoR.system.js.map} +1 -1
- package/dist/pine-core/{p-BCZ4LK15.system.js.map → p-CD_nPb2F.system.js.map} +1 -1
- package/dist/pine-core/p-CJT--ZXC.system.js.map +1 -0
- package/dist/pine-core/{p-DRqkTTfb.system.js.map → p-CLoi4eKt.system.js.map} +1 -1
- package/dist/pine-core/{p-B0PUl1_1.system.js.map → p-CQ8f8GnD.system.js.map} +1 -1
- package/dist/pine-core/{p-C3lnYhcV.system.js.map → p-CWdEolqa.system.js.map} +1 -1
- package/dist/pine-core/{p-CNOeJ6ra.system.js.map → p-CYiuzbNk.system.js.map} +1 -1
- package/dist/pine-core/{p-BY7O1nGC.system.js.map → p-CcXaBX2A.system.js.map} +1 -1
- package/dist/pine-core/p-CgyVIfOY.system.js.map +1 -0
- package/dist/pine-core/{p-pm8ElBzm.system.js.map → p-Cmzqpibo.system.js.map} +1 -1
- package/dist/pine-core/{p-CoHBlcHu.system.js.map → p-CqK-uhv8.system.js.map} +1 -1
- package/dist/pine-core/{p-KkT5zjJU.system.js.map → p-D05FrqXr.system.js.map} +1 -1
- package/dist/pine-core/{p-BdBU6s5P.system.js.map → p-D9_z2w3q.system.js.map} +1 -1
- package/dist/pine-core/{p-B_c-HOvq.system.js.map → p-DAwJ242E.system.js.map} +1 -1
- package/dist/pine-core/p-DBw5MRwj.system.js.map +1 -0
- package/dist/pine-core/p-DJekRkSL.system.js.map +1 -0
- package/dist/pine-core/{p-lMetQ5Q0.system.js.map → p-DNYl_6t_.system.js.map} +1 -1
- package/dist/pine-core/{p-DMNp4slx.system.js.map → p-DZggSEPe.system.js.map} +1 -1
- package/dist/pine-core/p-DbQzNDdQ.js +2 -0
- package/dist/pine-core/{p-D_FwyeSw.js.map → p-DbQzNDdQ.js.map} +1 -1
- package/dist/pine-core/p-De9tROL-.system.js +1 -1
- package/dist/pine-core/{p-PgQPKVDh.system.js.map → p-Df_3qA_L.system.js.map} +1 -1
- package/dist/pine-core/{p-DCdSlcTO.system.js.map → p-Dh7jcLgJ.system.js.map} +1 -1
- package/dist/pine-core/{p-CzVv99mW.js → p-DrJ5r5Pu.js} +1 -1
- package/dist/pine-core/p-DrJ5r5Pu.js.map +1 -0
- package/dist/pine-core/p-Dt10r3RZ.system.js.map +1 -0
- package/dist/pine-core/p-Dx9XkHH8.system.js.map +1 -0
- package/dist/pine-core/p-IG5YumI3.system.js.map +1 -0
- package/dist/pine-core/{p-C5Wo1bN2.system.js.map → p-IIl2cTlj.system.js.map} +1 -1
- package/dist/pine-core/{p-EytFbMH4.system.js.map → p-Kj_j7PHx.system.js.map} +1 -1
- package/dist/pine-core/p-MBv7PsKc.system.js.map +1 -0
- package/dist/pine-core/{p-CG_aggl0.system.js.map → p-UsEwlBJ0.system.js.map} +1 -1
- package/dist/pine-core/{p-DQ-QGnGf.system.js.map → p-_E9ZEzfO.system.js.map} +1 -1
- package/dist/pine-core/{p-3f83d4c4.system.entry.js → p-a04556e4.system.entry.js} +2 -2
- package/dist/pine-core/{p-0199e3e9.system.entry.js → p-a1b51557.system.entry.js} +2 -2
- package/dist/pine-core/{p-51e463bf.entry.js → p-a24c46e4.entry.js} +2 -2
- package/dist/pine-core/{p-1858ad6d.system.entry.js → p-a472af99.system.entry.js} +2 -2
- package/dist/pine-core/{p-9860d0a8.system.entry.js → p-aa645f28.system.entry.js} +2 -2
- package/dist/pine-core/{p-df15e16a.entry.js → p-ab82338f.entry.js} +2 -2
- package/dist/pine-core/{p-c16d01cc.entry.js → p-b6ea3332.entry.js} +2 -2
- package/dist/pine-core/{p-c721e8cf.entry.js → p-ba187a35.entry.js} +2 -2
- package/dist/pine-core/p-bb8ef74a.system.entry.js +2 -0
- package/dist/pine-core/{p-b2b405ca.system.entry.js → p-c13ef6a7.system.entry.js} +2 -2
- package/dist/pine-core/p-c2ffb466.system.entry.js +2 -0
- package/dist/pine-core/{p-4a658a86.system.entry.js → p-c4d6fe50.system.entry.js} +2 -2
- package/dist/pine-core/p-c4d6fe50.system.entry.js.map +1 -0
- package/dist/pine-core/{p-978e722a.entry.js → p-c6badcf8.entry.js} +2 -2
- package/dist/pine-core/{p-064e3d73.entry.js → p-c8122bea.entry.js} +2 -2
- package/dist/pine-core/p-cd785026.system.entry.js +2 -0
- package/dist/pine-core/{p-c3f32f26.system.entry.js → p-d714f68f.system.entry.js} +2 -2
- package/dist/pine-core/p-db1956e5.entry.js +2 -0
- package/dist/pine-core/p-db1956e5.entry.js.map +1 -0
- package/dist/pine-core/{p-6bd5811c.system.entry.js → p-deb8a499.system.entry.js} +2 -2
- package/dist/pine-core/p-deb8a499.system.entry.js.map +1 -0
- package/dist/pine-core/{p-6d601fc2.system.entry.js → p-dfc5ab34.system.entry.js} +2 -2
- package/dist/pine-core/{p-f35a5afa.entry.js → p-e2887e78.entry.js} +2 -2
- package/dist/pine-core/p-e5ca5b8e.entry.js +2 -0
- package/dist/pine-core/p-e5ca5b8e.entry.js.map +1 -0
- package/dist/pine-core/{p-55bf6be2.system.entry.js → p-e65a7d1c.system.entry.js} +2 -2
- package/dist/pine-core/{p-ffe867ef.system.entry.js → p-e89cb1f2.system.entry.js} +2 -2
- package/dist/pine-core/p-efa788ea.entry.js +2 -0
- package/dist/pine-core/{p-280a0ec1.system.entry.js → p-f55b9f90.system.entry.js} +2 -2
- package/dist/pine-core/{p-1a5e79af.entry.js → p-f583e5d4.entry.js} +2 -2
- package/dist/pine-core/p-f583e5d4.entry.js.map +1 -0
- package/dist/pine-core/{p-6fd385ec.entry.js → p-f880adaa.entry.js} +2 -2
- package/dist/pine-core/{p-63ef55dd.entry.js → p-fb4058e6.entry.js} +2 -2
- package/dist/pine-core/p-fc457c65.entry.js +2 -0
- package/dist/pine-core/{p-qjvXmIGJ.system.js.map → p-m6UZWRsP.system.js.map} +1 -1
- package/dist/pine-core/{p-DvZWnvRb.system.js.map → p-pQqXEKPh.system.js.map} +1 -1
- package/dist/pine-core/p-rBOkvo-C.system.js.map +1 -0
- package/dist/pine-core/pds-box.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-input.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-loader.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-select.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.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-textarea.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-tooltip.entry.esm.js.map +1 -1
- package/dist/pine-core/pine-core.css +1 -1
- package/dist/pine-core/pine-core.esm.js +1 -1
- package/dist/types/components/pds-box/pds-box.d.ts +5 -0
- package/dist/types/components/pds-button/pds-button.d.ts +1 -0
- package/dist/types/components/pds-input/pds-input.d.ts +5 -0
- package/dist/types/components/pds-loader/pds-loader.d.ts +1 -0
- package/dist/types/components/pds-select/pds-select.d.ts +2 -1
- package/dist/types/components/pds-table/pds-table-cell/pds-table-cell.d.ts +15 -0
- package/dist/types/components/pds-table/pds-table-head-cell/pds-table-head-cell.d.ts +15 -0
- package/dist/types/components/pds-table/pds-table.d.ts +24 -0
- package/dist/types/components/pds-textarea/pds-textarea.d.ts +6 -1
- package/dist/types/components/pds-tooltip/pds-tooltip.d.ts +9 -12
- package/dist/types/components.d.ts +48 -28
- package/hydrate/index.js +561 -228
- package/hydrate/index.mjs +561 -228
- package/package.json +2 -2
- package/dist/cjs/index-BfqrB2cC.js.map +0 -1
- package/dist/esm/index-CzVv99mW.js.map +0 -1
- package/dist/esm-es5/floating-ui.dom-D_FwyeSw.js +0 -2
- package/dist/esm-es5/index-CzVv99mW.js.map +0 -1
- package/dist/pine-core/p-042ee55c.entry.js.map +0 -1
- package/dist/pine-core/p-13ac0852.entry.js +0 -2
- package/dist/pine-core/p-13ac0852.entry.js.map +0 -1
- package/dist/pine-core/p-1a5e79af.entry.js.map +0 -1
- package/dist/pine-core/p-209b1d69.entry.js.map +0 -1
- package/dist/pine-core/p-276a6a8b.system.entry.js.map +0 -1
- package/dist/pine-core/p-2fb60757.system.entry.js +0 -2
- package/dist/pine-core/p-33016dd0.entry.js +0 -2
- package/dist/pine-core/p-380d1056.entry.js.map +0 -1
- package/dist/pine-core/p-3EWr6ZgL.system.js.map +0 -1
- package/dist/pine-core/p-41bf807f.system.entry.js +0 -2
- package/dist/pine-core/p-41bf807f.system.entry.js.map +0 -1
- package/dist/pine-core/p-4a658a86.system.entry.js.map +0 -1
- package/dist/pine-core/p-6438a29d.system.entry.js +0 -2
- package/dist/pine-core/p-65275835.system.entry.js.map +0 -1
- package/dist/pine-core/p-6bd5811c.system.entry.js.map +0 -1
- package/dist/pine-core/p-7eb4ac7c.system.entry.js +0 -2
- package/dist/pine-core/p-7eb4ac7c.system.entry.js.map +0 -1
- package/dist/pine-core/p-8896d43a.entry.js.map +0 -1
- package/dist/pine-core/p-91c6bd68.entry.js +0 -2
- package/dist/pine-core/p-91c6bd68.entry.js.map +0 -1
- package/dist/pine-core/p-94982c57.entry.js +0 -2
- package/dist/pine-core/p-94982c57.entry.js.map +0 -1
- package/dist/pine-core/p-B6IFMveo.system.js.map +0 -1
- package/dist/pine-core/p-BEky6idI.system.js.map +0 -1
- package/dist/pine-core/p-BmoX08WO.system.js.map +0 -1
- package/dist/pine-core/p-Bw9e5h_G.system.js.map +0 -1
- package/dist/pine-core/p-C36pvE-A.system.js.map +0 -1
- package/dist/pine-core/p-CMLxdmO2.system.js.map +0 -1
- package/dist/pine-core/p-CXLBzkzl.system.js.map +0 -1
- package/dist/pine-core/p-CmJBNVRO.system.js.map +0 -1
- package/dist/pine-core/p-CzVv99mW.js.map +0 -1
- package/dist/pine-core/p-D_FwyeSw.js +0 -2
- package/dist/pine-core/p-DdEbUZw3.system.js.map +0 -1
- package/dist/pine-core/p-DiBM9O5Q.system.js.map +0 -1
- package/dist/pine-core/p-Rj3B0bRw.system.js.map +0 -1
- package/dist/pine-core/p-ZCkmy1Gu.system.js +0 -2
- package/dist/pine-core/p-a7204f01.entry.js +0 -2
- package/dist/pine-core/p-a7cb24c3.system.entry.js +0 -2
- package/dist/pine-core/p-a7cb24c3.system.entry.js.map +0 -1
- package/dist/pine-core/p-aafb6e06.system.entry.js.map +0 -1
- package/dist/pine-core/p-adf2449e.system.entry.js +0 -2
- package/dist/pine-core/p-adf2449e.system.entry.js.map +0 -1
- package/dist/pine-core/p-b649d711.entry.js +0 -2
- package/dist/pine-core/p-b649d711.entry.js.map +0 -1
- package/dist/pine-core/p-b9fe17b8.system.entry.js +0 -2
- package/dist/pine-core/p-b9fe17b8.system.entry.js.map +0 -1
- package/dist/pine-core/p-c1115d78.system.entry.js.map +0 -1
- package/dist/pine-core/p-c652847a.entry.js +0 -2
- package/dist/pine-core/p-c82c277f.entry.js +0 -2
- package/dist/pine-core/p-c82c277f.entry.js.map +0 -1
- package/dist/pine-core/p-c82d0a99.entry.js +0 -2
- package/dist/pine-core/p-ce0d9f05.system.entry.js +0 -2
- package/dist/pine-core/p-cf5506db.system.entry.js +0 -2
- package/dist/pine-core/p-d6d87fbc.system.entry.js +0 -2
- package/dist/pine-core/p-e05135c5.entry.js +0 -2
- package/dist/pine-core/p-e30601a6.entry.js +0 -2
- package/dist/pine-core/p-e30601a6.entry.js.map +0 -1
- /package/dist/pine-core/{p-19d08886.system.entry.js.map → p-023d8b71.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-6438a29d.system.entry.js.map → p-0485aa93.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-8096b988.system.entry.js.map → p-14a52961.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-4066a9c0.system.entry.js.map → p-2186e5d4.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-e05135c5.entry.js.map → p-232a2043.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c7075f11.entry.js.map → p-25190921.entry.js.map} +0 -0
- /package/dist/pine-core/{p-81a28f54.system.entry.js.map → p-28f7c0d8.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-487552a9.system.entry.js.map → p-297afc49.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-03d17841.system.entry.js.map → p-2e19f167.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-a2d16624.entry.js.map → p-349a8869.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0a4fc9c7.entry.js.map → p-47670150.entry.js.map} +0 -0
- /package/dist/pine-core/{p-2fb60757.system.entry.js.map → p-487859a1.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c1a1475e.entry.js.map → p-4deb7b8c.entry.js.map} +0 -0
- /package/dist/pine-core/{p-7c867f1b.entry.js.map → p-503cab1f.entry.js.map} +0 -0
- /package/dist/pine-core/{p-4e5b9d19.entry.js.map → p-52d37cc1.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f9bd0bc2.system.entry.js.map → p-54183d70.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-33016dd0.entry.js.map → p-5708f95a.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f647c1af.system.entry.js.map → p-5aed29fe.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-a7204f01.entry.js.map → p-5c0803c3.entry.js.map} +0 -0
- /package/dist/pine-core/{p-d08ecd18.system.entry.js.map → p-5da82e8c.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ed94947b.entry.js.map → p-5e8badb9.entry.js.map} +0 -0
- /package/dist/pine-core/{p-126197e5.entry.js.map → p-651861ff.entry.js.map} +0 -0
- /package/dist/pine-core/{p-8cb99f2f.entry.js.map → p-6f4a6d0b.entry.js.map} +0 -0
- /package/dist/pine-core/{p-3e6229cc.entry.js.map → p-72053224.entry.js.map} +0 -0
- /package/dist/pine-core/{p-14b424ab.system.entry.js.map → p-72b05928.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0dbb2ae9.entry.js.map → p-79e2782b.entry.js.map} +0 -0
- /package/dist/pine-core/{p-89d9f273.system.entry.js.map → p-8ab7f0d7.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b956922a.entry.js.map → p-8d7abc83.entry.js.map} +0 -0
- /package/dist/pine-core/{p-2aad0209.system.entry.js.map → p-92c52409.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c1f5148f.entry.js.map → p-98fe56d9.entry.js.map} +0 -0
- /package/dist/pine-core/{p-3f83d4c4.system.entry.js.map → p-a04556e4.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0199e3e9.system.entry.js.map → p-a1b51557.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-51e463bf.entry.js.map → p-a24c46e4.entry.js.map} +0 -0
- /package/dist/pine-core/{p-1858ad6d.system.entry.js.map → p-a472af99.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-9860d0a8.system.entry.js.map → p-aa645f28.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-df15e16a.entry.js.map → p-ab82338f.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c16d01cc.entry.js.map → p-b6ea3332.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c721e8cf.entry.js.map → p-ba187a35.entry.js.map} +0 -0
- /package/dist/pine-core/{p-cf5506db.system.entry.js.map → p-bb8ef74a.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b2b405ca.system.entry.js.map → p-c13ef6a7.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ce0d9f05.system.entry.js.map → p-c2ffb466.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-978e722a.entry.js.map → p-c6badcf8.entry.js.map} +0 -0
- /package/dist/pine-core/{p-064e3d73.entry.js.map → p-c8122bea.entry.js.map} +0 -0
- /package/dist/pine-core/{p-d6d87fbc.system.entry.js.map → p-cd785026.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c3f32f26.system.entry.js.map → p-d714f68f.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-6d601fc2.system.entry.js.map → p-dfc5ab34.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f35a5afa.entry.js.map → p-e2887e78.entry.js.map} +0 -0
- /package/dist/pine-core/{p-55bf6be2.system.entry.js.map → p-e65a7d1c.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ffe867ef.system.entry.js.map → p-e89cb1f2.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c82d0a99.entry.js.map → p-efa788ea.entry.js.map} +0 -0
- /package/dist/pine-core/{p-280a0ec1.system.entry.js.map → p-f55b9f90.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-6fd385ec.entry.js.map → p-f880adaa.entry.js.map} +0 -0
- /package/dist/pine-core/{p-63ef55dd.entry.js.map → p-fb4058e6.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c652847a.entry.js.map → p-fc457c65.entry.js.map} +0 -0
package/components/pds-tab.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
2
|
|
|
3
|
-
const pdsTabCss = "pds-tab{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;position:relative}.pds-tabs--pill pds-tab{-ms-flex:1;flex:1}.pds-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:var(--pine-border-width-none);-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:pointer;font-family:inherit;padding:var(--pine-dimension-none);-ms-flex-align:center;align-items:center;color:var(--pine-color-text-secondary);display:-ms-inline-flexbox;display:inline-flex;position:relative;text-decoration:none;white-space:nowrap}.pds-tab.is-active,.pds-tab[aria-selected=true]{color:var(--pine-color-text)}.pds-tab.is-active .pds-tab__content::after,.pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tab:hover{color:var(--pine-color-text)}.pds-tab:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tab .pds-tab__content{font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);-webkit-padding-after:11px;padding-block-end:11px;position:relative}.pds-tab .pds-tab__content::after{background-color:var(--pine-color-brand);content:\"\";height:3px;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);inset-inline-start:var(--pine-dimension-none);opacity:0;position:absolute}.pds-tab .pds-tab-edge{display:none}.pds-tabs--availability{--color-background-tab:transparent}.pds-tabs--availability .pds-tab{background-color:var(--color-background-tab);border-radius:calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);padding:8px 16px 13px}.pds-tabs--availability .pds-tab.is-active,.pds-tabs--availability .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-secondary)}.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tabs--availability .pds-tab.is-active .pds-tab-edge,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge{z-index:1}.pds-tabs--availability .pds-tab:hover:not(.is-active,[aria-selected=true]){--color-background-tab:var(--pine-color-secondary-hover)}.pds-tabs--availability .pds-tab:focus-visible{color:var(--pine-color-text-secondary)}.pds-tabs--availability .pds-tab__content{-webkit-padding-after:7px;padding-block-end:7px}.pds-tabs--availability .pds-tab-edge{bottom:0;display:block;height:8px;inset-inline-end:100%;overflow:hidden;position:absolute;width:8px}.pds-tabs--availability .pds-tab-edge::before{border-radius:50%;bottom:0;-webkit-box-shadow:4px 4px 0 0 var(--color-background-tab);box-shadow:4px 4px 0 0 var(--color-background-tab);content:\"\";display:block;height:200%;inset-inline-end:0;position:absolute;width:200%}.pds-tabs--availability .pds-tab-edge--end{inset-inline-end:unset;inset-inline-start:100%}.pds-tabs--availability .pds-tab-edge--end::before{-webkit-box-shadow:-4px 4px 0 0 var(--color-background-tab);box-shadow:-4px 4px 0 0 var(--color-background-tab);inset-inline-end:unset;inset-inline-start:0}.pds-tabs--filter
|
|
3
|
+
const pdsTabCss = "pds-tab{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;position:relative}.pds-tabs--pill pds-tab{-ms-flex:1;flex:1}.pds-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:var(--pine-border-width-none);-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:pointer;font-family:inherit;padding:var(--pine-dimension-none);-ms-flex-align:center;align-items:center;color:var(--pine-color-text-secondary);display:-ms-inline-flexbox;display:inline-flex;position:relative;text-decoration:none;white-space:nowrap}.pds-tab.is-active,.pds-tab[aria-selected=true]{color:var(--pine-color-text)}.pds-tab.is-active .pds-tab__content::after,.pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tab:hover{color:var(--pine-color-text)}.pds-tab:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tab .pds-tab__content{font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);-webkit-padding-after:11px;padding-block-end:11px;position:relative}.pds-tab .pds-tab__content::after{background-color:var(--pine-color-brand);content:\"\";height:3px;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);inset-inline-start:var(--pine-dimension-none);opacity:0;position:absolute}.pds-tab .pds-tab-edge{display:none}.pds-tabs--availability{--color-background-tab:transparent}.pds-tabs--availability .pds-tab{background-color:var(--color-background-tab);border-radius:calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);padding:8px 16px 13px}.pds-tabs--availability .pds-tab.is-active,.pds-tabs--availability .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-secondary)}.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tabs--availability .pds-tab.is-active .pds-tab-edge,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge{z-index:1}.pds-tabs--availability .pds-tab:hover:not(.is-active,[aria-selected=true]){--color-background-tab:var(--pine-color-secondary-hover)}.pds-tabs--availability .pds-tab:focus-visible{color:var(--pine-color-text-secondary)}.pds-tabs--availability .pds-tab__content{-webkit-padding-after:7px;padding-block-end:7px}.pds-tabs--availability .pds-tab-edge{bottom:0;display:block;height:8px;inset-inline-end:100%;overflow:hidden;position:absolute;width:8px}.pds-tabs--availability .pds-tab-edge::before{border-radius:50%;bottom:0;-webkit-box-shadow:4px 4px 0 0 var(--color-background-tab);box-shadow:4px 4px 0 0 var(--color-background-tab);content:\"\";display:block;height:200%;inset-inline-end:0;position:absolute;width:200%}.pds-tabs--availability .pds-tab-edge--end{inset-inline-end:unset;inset-inline-start:100%}.pds-tabs--availability .pds-tab-edge--end::before{-webkit-box-shadow:-4px 4px 0 0 var(--color-background-tab);box-shadow:-4px 4px 0 0 var(--color-background-tab);inset-inline-end:unset;inset-inline-start:0}.pds-tabs--filter .pds-tab{background-color:var(--pine-color-background-container-disabled);border-radius:50px;color:var(--pine-color-text);padding:6px 15px}.pds-tabs--filter .pds-tab.is-active,.pds-tabs--filter .pds-tab[aria-selected=true]{background-color:var(--pine-color-primary);color:var(--pine-color-text-primary)}.pds-tabs--filter .pds-tab.is-active:hover,.pds-tabs--filter .pds-tab[aria-selected=true]:hover{background-color:var(--pine-color-primary-hover)}.pds-tabs--filter .pds-tab:hover:not(.is-active,[aria-selected=true]){background-color:var(--pine-color-border-disabled)}.pds-tabs--filter .pds-tab__content{-webkit-padding-after:var(--pine-dimension-none);padding-block-end:var(--pine-dimension-none)}.pds-tabs--filter .pds-tab__content::after{content:unset}.pds-tabs--pill{--color-background-tab:transparent}.pds-tabs--pill .pds-tab{background-color:var(--color-background-tab);border:var(--pine-border-width-thin) solid transparent;border-radius:var(--pine-dimension-xs);color:var(--pine-color-text-readonly);-ms-flex:1;flex:1;height:34px;-ms-flex-pack:center;justify-content:center}.pds-tabs--pill .pds-tab .pds-tab__content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-webkit-padding-after:0;padding-block-end:0}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-white);border-color:var(--pine-color-border);-webkit-box-shadow:var(--pine-box-shadow-100);box-shadow:var(--pine-box-shadow-100);color:var(--pine-color-text-active);z-index:1;}.pds-tabs--pill .pds-tab.is-active:focus-visible,.pds-tabs--pill .pds-tab[aria-selected=true]:focus-visible{border-color:var(--color-border-focus);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabs--pill .pds-tab.is-active .pds-tab__content::after,.pds-tabs--pill .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:0}";
|
|
4
4
|
|
|
5
5
|
const PdsTab$1 = /*@__PURE__*/ proxyCustomElement(class PdsTab extends HTMLElement {
|
|
6
6
|
constructor() {
|
|
@@ -17,9 +17,9 @@ const PdsTab$1 = /*@__PURE__*/ proxyCustomElement(class PdsTab extends HTMLEleme
|
|
|
17
17
|
this.pdsTabClick.emit([index, parentComponentId]);
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
|
-
const availabilityTabEdgeInlineStart = (h("span", { key: '
|
|
21
|
-
const availabilityTabEdgeInlineEnd = (h("span", { key: '
|
|
22
|
-
return (h(Host, { key: '
|
|
20
|
+
const availabilityTabEdgeInlineStart = (h("span", { key: 'f83448bc898dd4e94a7777d23c9565830dff0346', class: "pds-tab-edge", role: "presentation" }));
|
|
21
|
+
const availabilityTabEdgeInlineEnd = (h("span", { key: '5ff8d05f4cf140771706e7740c48e658208749dd', class: "pds-tab-edge pds-tab-edge--end", role: "presentation" }));
|
|
22
|
+
return (h(Host, { key: '874111fb5eedda9d021c8df0dc048aa771141a7c', variant: this.variant, slot: "tabs", index: this.index }, h("button", { key: 'a72dc4a32de38ae26bdba67cd91028dc955d4349', role: "tab", id: this.parentComponentId + "__" + this.name, "aria-controls": this.parentComponentId + "__" + this.name + "-panel", tabindex: this.selected ? "0" : "-1", "aria-selected": this.selected ? "true" : "false", class: this.selected ? "pds-tab is-active" : "pds-tab", onClick: this.onTabClick.bind(this, this.index, this.parentComponentId) }, this.variant === "availability" && availabilityTabEdgeInlineStart, this.variant === "availability" && availabilityTabEdgeInlineEnd, h("div", { key: '8e629e15312b7bd93c84d026b8b40f51a87479ca', class: "pds-tab__content" }, h("slot", { key: '2296b81a3abdd25cc9eb73d8fed5089466e21fc6' })))));
|
|
23
23
|
}
|
|
24
24
|
get el() { return this; }
|
|
25
25
|
static get style() { return pdsTabCss; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"pds-tab.js","mappings":";;AAAA,MAAM,SAAS,GAAG,
|
|
1
|
+
{"file":"pds-tab.js","mappings":";;AAAA,MAAM,SAAS,GAAG,onKAAonK;;MCOznKA,QAAM,iBAAAC,kBAAA,CAAA,MAAA,MAAA,SAAA,WAAA,CAAA;AALnB,IAAA,WAAA,GAAA;;;;AA+BE;;AAEG;;AAEK,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK;AAsCzB;IA/BS,UAAU,CAAC,KAAK,EAAE,iBAAiB,EAAA;QACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;;IAGnD,MAAM,GAAA;QACJ,MAAM,8BAA8B,IAClC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,cAAc,EAAA,CAAQ,CACvD;QAED,MAAM,4BAA4B,IAChC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,cAAc,EAAA,CAAQ,CACzE;AAED,QAAA,QACE,CAAC,CAAA,IAAI,qDAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAA,EACxD,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAC,KAAK,EACV,EAAE,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,EAC9B,eAAA,EAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,EACnE,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,EAAA,eAAA,EACrB,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,EAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,GAAG,mBAAmB,GAAG,SAAS,EACtD,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAA,EAEtE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,8BAA8B,EACjE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,4BAA4B,EAChE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAAC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAO,CAAM,CACpC,CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsTab","__stencil_proxyCustomElement"],"sources":["src/components/pds-tabs/pds-tab/pds-tab.scss?tag=pds-tab","src/components/pds-tabs/pds-tab/pds-tab.tsx"],"sourcesContent":["pds-tab {\n align-items: center;\n display: inline-flex;\n position: relative;\n\n .pds-tabs--pill & {\n flex: 1;\n }\n}\n\n///\n/// Resets base button styles\n///\n@mixin pds-button-style-reset {\n appearance: none;\n background-color: transparent;\n border: var(--pine-border-width-none);\n box-shadow: none;\n color: inherit;\n cursor: pointer;\n font-family: inherit;\n padding: var(--pine-dimension-none);\n}\n\n.pds-tab {\n @include pds-button-style-reset();\n\n align-items: center;\n color: var(--pine-color-text-secondary);\n display: inline-flex;\n position: relative;\n text-decoration: none;\n white-space: nowrap;\n\n &.is-active,\n &[aria-selected='true'] {\n color: var(--pine-color-text);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n }\n\n &:hover {\n color: var(--pine-color-text);\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n .pds-tab__content {\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-medium);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding-block-end: 11px;\n position: relative;\n\n &::after {\n background-color: var(--pine-color-brand);\n content: '';\n height: 3px;\n inset-block-end: var(--pine-dimension-none);\n inset-inline-end: var(--pine-dimension-none);\n inset-inline-start: var(--pine-dimension-none);\n opacity: 0;\n position: absolute;\n }\n }\n\n .pds-tab-edge {\n display: none;\n }\n}\n\n.pds-tabs--availability {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border-radius: calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);\n padding: 8px 16px 13px;\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-secondary);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n\n .pds-tab-edge {\n z-index: 1;\n }\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n --color-background-tab: var(--pine-color-secondary-hover);\n }\n\n &:focus-visible {\n color: var(--pine-color-text-secondary);\n }\n }\n\n .pds-tab__content {\n padding-block-end: 7px;\n }\n\n .pds-tab-edge {\n bottom: 0;\n display: block;\n height: 8px;\n inset-inline-end: 100%;\n overflow: hidden;\n position: absolute;\n width: 8px;\n\n &::before {\n border-radius: 50%;\n bottom: 0;\n box-shadow: 4px 4px 0 0 var(--color-background-tab);\n content: '';\n display: block;\n height: 200%;\n inset-inline-end: 0;\n position: absolute;\n width: 200%;\n }\n }\n\n .pds-tab-edge--end {\n inset-inline-end: unset;\n inset-inline-start: 100%;\n\n &::before {\n box-shadow: -4px 4px 0 0 var(--color-background-tab);\n inset-inline-end: unset;\n inset-inline-start: 0;\n }\n }\n}\n\n.pds-tabs--filter {\n .pds-tab {\n background-color: var(--pine-color-background-container-disabled);\n border-radius: 50px;\n color: var(--pine-color-text);\n padding: 6px 15px;\n\n &.is-active,\n &[aria-selected='true'] {\n background-color: var(--pine-color-primary);\n color: var(--pine-color-text-primary);\n }\n\n &.is-active:hover,\n &[aria-selected='true']:hover {\n background-color: var(--pine-color-primary-hover);\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n background-color: var(--pine-color-border-disabled);\n }\n }\n\n .pds-tab__content {\n padding-block-end: var(--pine-dimension-none);\n\n &::after {\n content: unset;\n }\n }\n}\n\n.pds-tabs--pill {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border: var(--pine-border-width-thin) solid transparent;\n border-radius: var(--pine-dimension-xs);\n color: var(--pine-color-text-readonly);\n flex: 1;\n height: 34px;\n justify-content: center;\n\n .pds-tab__content {\n align-items: center;\n display: flex;\n justify-content: center;\n padding-block-end: 0;\n }\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-white);\n border-color: var(--pine-color-border);\n box-shadow: var(--pine-box-shadow-100);\n color: var(--pine-color-text-active);\n z-index: 1;\n\n &:focus-visible {\n border-color: var(--color-border-focus);\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n /* stylelint-disable max-nesting-depth */\n .pds-tab__content {\n &::after {\n opacity: 0;\n }\n }\n /* stylelint-enable max-nesting-depth */\n }\n }\n}\n","import { Component, Element, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'pds-tab',\n styleUrl: 'pds-tab.scss',\n shadow: false,\n})\nexport class PdsTab {\n @Element() el: HTMLPdsTabElement;\n\n /**\n * Sets the related tab name, this name must match a `pds-tabpanel`'s tab name property\n */\n @Prop() name!: string;\n\n /**\n * Keeps track of the parentComponentId unique id, this property is passed by parent component\n */\n /** @internal */\n @Prop() parentComponentId: string;\n\n /**\n * Keeps track of if the expected tab variant, this property is passed by parent component\n */\n /** @internal */\n @Prop() variant: string;\n\n /**\n * Keeps track of if the tab index number, this property is passed by parent component\n */\n /** @internal */\n @Prop() index: number;\n\n /**\n * Keeps track of the tabpanel selected state, this property is passed by parent component\n */\n /** @internal */\n @Prop() selected = false;\n\n /**\n * Emits an event upon tab click for `pds-tab` and `pds-tabpanel` to listen for\n */\n /** @internal */\n @Event() pdsTabClick: EventEmitter<object>;\n private onTabClick(index, parentComponentId) {\n this.pdsTabClick.emit([index, parentComponentId]);\n }\n\n render() {\n const availabilityTabEdgeInlineStart = (\n <span class=\"pds-tab-edge\" role=\"presentation\"></span>\n )\n\n const availabilityTabEdgeInlineEnd = (\n <span class=\"pds-tab-edge pds-tab-edge--end\" role=\"presentation\"></span>\n )\n\n return (\n <Host variant={this.variant} slot=\"tabs\" index={this.index}>\n <button\n role=\"tab\"\n id={this.parentComponentId + \"__\" + this.name}\n aria-controls={this.parentComponentId + \"__\" + this.name + \"-panel\"}\n tabindex={this.selected ? \"0\" : \"-1\"}\n aria-selected={this.selected ? \"true\" : \"false\"}\n class={this.selected ? \"pds-tab is-active\" : \"pds-tab\"}\n onClick={this.onTabClick.bind(this, this.index, this.parentComponentId)}\n >\n {this.variant === \"availability\" && availabilityTabEdgeInlineStart}\n {this.variant === \"availability\" && availabilityTabEdgeInlineEnd}\n <div class=\"pds-tab__content\"><slot/></div>\n </button>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -9,7 +9,7 @@ const PdsTableBody$1 = /*@__PURE__*/ proxyCustomElement(class PdsTableBody exten
|
|
|
9
9
|
this.__attachShadow();
|
|
10
10
|
}
|
|
11
11
|
render() {
|
|
12
|
-
return (h(Host, { key: '
|
|
12
|
+
return (h(Host, { key: 'ec495e4227d7fb7defc4b4abf0afb8010f7ea984', role: "rowgroup" }, h("slot", { key: 'f9c42d628c86ed6098a42cc864122028711e3f15' })));
|
|
13
13
|
}
|
|
14
14
|
static get style() { return pdsTableBodyCss; }
|
|
15
15
|
}, [1, "pds-table-body"]);
|
|
@@ -1,23 +1,33 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
|
2
2
|
|
|
3
|
-
const pdsTableCellCss = ":host{--box-shadow-fixed:3px 3px 6px -2px rgba(0, 0, 0, 0.2);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);inset-inline-start:var(--pine-dimension-none);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:1}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}";
|
|
3
|
+
const pdsTableCellCss = ":host{--box-shadow-fixed:3px 3px 6px -2px rgba(0, 0, 0, 0.2);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);inset-inline-start:var(--pine-dimension-none);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:1}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}:host(.pds-table-cell--align-start){text-align:start}:host(.pds-table-cell--align-center){text-align:center}:host(.pds-table-cell--align-end){text-align:end}:host(.pds-table-cell--align-justify){text-align:justify}";
|
|
4
4
|
|
|
5
5
|
const PdsTableCell = /*@__PURE__*/ proxyCustomElement(class PdsTableCell extends HTMLElement {
|
|
6
6
|
constructor() {
|
|
7
7
|
super();
|
|
8
8
|
this.__registerHost();
|
|
9
9
|
this.__attachShadow();
|
|
10
|
+
this.scrollContainer = null;
|
|
11
|
+
this.setupRetries = 0;
|
|
10
12
|
/**
|
|
11
13
|
* Determines if the table is currently scrolling.
|
|
12
14
|
* @defaultValue false
|
|
13
15
|
*/
|
|
14
16
|
this.tableScrolling = false;
|
|
17
|
+
/**
|
|
18
|
+
* Handles scroll events to update fixed column shadow state.
|
|
19
|
+
* Updates the tableScrolling state to control CSS classes for fixed column shadows.
|
|
20
|
+
* @private
|
|
21
|
+
*/
|
|
15
22
|
this.handleScroll = () => {
|
|
16
|
-
if (this.
|
|
17
|
-
|
|
23
|
+
if (!this.scrollContainer) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
this.tableScrolling = this.scrollContainer.scrollLeft > 0;
|
|
18
28
|
}
|
|
19
|
-
|
|
20
|
-
|
|
29
|
+
catch (error) {
|
|
30
|
+
console.warn('Scroll handler error:', error);
|
|
21
31
|
}
|
|
22
32
|
};
|
|
23
33
|
}
|
|
@@ -26,14 +36,61 @@ const PdsTableCell = /*@__PURE__*/ proxyCustomElement(class PdsTableCell extends
|
|
|
26
36
|
}
|
|
27
37
|
componentDidLoad() {
|
|
28
38
|
if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {
|
|
29
|
-
|
|
39
|
+
// For responsive tables with fixed columns, set up scroll detection
|
|
40
|
+
// This enables the first column to show a shadow when the table is scrolled horizontally
|
|
41
|
+
this.setupScrollListener();
|
|
30
42
|
}
|
|
31
43
|
}
|
|
44
|
+
disconnectedCallback() {
|
|
45
|
+
this.cleanupScrollListener();
|
|
46
|
+
}
|
|
47
|
+
setupScrollListener() {
|
|
48
|
+
var _a;
|
|
49
|
+
if (!this.tableRef)
|
|
50
|
+
return;
|
|
51
|
+
// Query shadowRoot once and cache the container
|
|
52
|
+
const container = (_a = this.tableRef.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.pds-table-responsive-container');
|
|
53
|
+
if (container) {
|
|
54
|
+
// Container available immediately
|
|
55
|
+
this.scrollContainer = container;
|
|
56
|
+
this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });
|
|
57
|
+
this.handleScroll(); // Initial check
|
|
58
|
+
this.setupRetries = 0; // Reset counter on success
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
// Container not ready, set up timer for retry with bounds
|
|
62
|
+
this.setupTimer = window.setTimeout(() => {
|
|
63
|
+
if (this.scrollContainer)
|
|
64
|
+
return; // Already found
|
|
65
|
+
this.setupRetries = (this.setupRetries || 0) + 1;
|
|
66
|
+
if (this.setupRetries <= 50) {
|
|
67
|
+
this.setupScrollListener();
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
console.warn('Failed to find responsive container after 50 attempts');
|
|
71
|
+
}
|
|
72
|
+
}, 100);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
cleanupScrollListener() {
|
|
76
|
+
if (this.scrollContainer) {
|
|
77
|
+
this.scrollContainer.removeEventListener('scroll', this.handleScroll);
|
|
78
|
+
this.scrollContainer = null;
|
|
79
|
+
}
|
|
80
|
+
if (this.setupTimer !== undefined) {
|
|
81
|
+
window.clearTimeout(this.setupTimer);
|
|
82
|
+
this.setupTimer = undefined;
|
|
83
|
+
}
|
|
84
|
+
this.setupRetries = 0; // Reset retry counter
|
|
85
|
+
}
|
|
32
86
|
classNames() {
|
|
33
87
|
const classNames = [];
|
|
34
88
|
if (this.tableRef && this.tableRef.compact) {
|
|
35
89
|
classNames.push('is-compact');
|
|
36
90
|
}
|
|
91
|
+
if (this.cellAlign) {
|
|
92
|
+
classNames.push(`pds-table-cell--align-${this.cellAlign}`);
|
|
93
|
+
}
|
|
37
94
|
if (this.truncate) {
|
|
38
95
|
classNames.push('is-truncated');
|
|
39
96
|
}
|
|
@@ -43,15 +100,16 @@ const PdsTableCell = /*@__PURE__*/ proxyCustomElement(class PdsTableCell extends
|
|
|
43
100
|
return classNames.join(' ');
|
|
44
101
|
}
|
|
45
102
|
render() {
|
|
46
|
-
return (h(Host, { key: '
|
|
103
|
+
return (h(Host, { key: 'cc149f3d36c253ddd9c37ff435056be14ab8012d', class: this.classNames(), role: "gridcell", style: this.tableRef &&
|
|
47
104
|
this.tableRef.fixedColumn &&
|
|
48
105
|
this.tableRef.selectable
|
|
49
106
|
? { '--fixed-cell-position': '40px' }
|
|
50
|
-
: {} }, h("slot", { key: '
|
|
107
|
+
: {} }, h("slot", { key: '5095b0541afada3a73422adcd8992f26b4e59235' })));
|
|
51
108
|
}
|
|
52
109
|
get hostElement() { return this; }
|
|
53
110
|
static get style() { return pdsTableCellCss; }
|
|
54
111
|
}, [1, "pds-table-cell", {
|
|
112
|
+
"cellAlign": [1, "cell-align"],
|
|
55
113
|
"truncate": [4],
|
|
56
114
|
"tableScrolling": [32]
|
|
57
115
|
}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"pds-table-cell2.js","mappings":";;AAAA,MAAM,eAAe,GAAG,
|
|
1
|
+
{"file":"pds-table-cell2.js","mappings":";;AAAA,MAAM,eAAe,GAAG,2iCAA2iC;;MCOtjC,YAAY,iBAAAA,kBAAA,CAAA,MAAA,YAAA,SAAA,WAAA,CAAA;AALzB,IAAA,WAAA,GAAA;;;;AAQU,QAAA,IAAe,CAAA,eAAA,GAAuB,IAAI;AAE1C,QAAA,IAAY,CAAA,YAAA,GAAW,CAAC;AAoEhC;;;AAGG;AACc,QAAA,IAAc,CAAA,cAAA,GAAY,KAAK;AAwBhD;;;;AAIG;AACK,QAAA,IAAY,CAAA,YAAA,GAAG,MAAK;AAC1B,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACzB;;AAGF,YAAA,IAAI;gBACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,CAAC;;YACzD,OAAO,KAAK,EAAE;AACd,gBAAA,OAAO,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,CAAC;;AAEhD,SAAC;AAmBF;IAhIC,mBAAmB,GAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAwB;;IAG9E,gBAAgB,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;;;YAG1E,IAAI,CAAC,mBAAmB,EAAE;;;IAI9B,oBAAoB,GAAA;QAClB,IAAI,CAAC,qBAAqB,EAAE;;IAGtB,mBAAmB,GAAA;;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE;;AAGpB,QAAA,MAAM,SAAS,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,iCAAiC,CAAgB;QAE3G,IAAI,SAAS,EAAE;;AAEb,YAAA,IAAI,CAAC,eAAe,GAAG,SAAS;AAChC,YAAA,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACrF,YAAA,IAAI,CAAC,YAAY,EAAE,CAAC;AACpB,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;;aACjB;;YAEL,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAK;gBACvC,IAAI,IAAI,CAAC,eAAe;AAAE,oBAAA,OAAO;AACjC,gBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC;AAChD,gBAAA,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE;oBAC3B,IAAI,CAAC,mBAAmB,EAAE;;qBACrB;AACL,oBAAA,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC;;aAExE,EAAE,GAAG,CAAC;;;IAIH,qBAAqB,GAAA;AAC3B,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC;AACrE,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI;;AAG7B,QAAA,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE;AACjC,YAAA,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;AACpC,YAAA,IAAI,CAAC,UAAU,GAAG,SAAS;;AAG7B,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;;IAmBhB,UAAU,GAAA;QAChB,MAAM,UAAU,GAAG,EAAE;QAErB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC1C,YAAA,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;;AAG/B,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,UAAU,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAAC,SAAS,CAAE,CAAA,CAAC;;AAG5D,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;;AAGjC,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,cAAc,EAAE;AACrE,YAAA,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;;AAGjC,QAAA,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;;IAoB7B,MAAM,GAAA;QACJ,QACE,CAAC,CAAA,IAAI,qDACH,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EACxB,IAAI,EAAC,UAAU,EACf,KAAK,EACH,IAAI,CAAC,QAAQ;gBACb,IAAI,CAAC,QAAQ,CAAC,WAAW;gBACzB,IAAI,CAAC,QAAQ,CAAC;AACZ,kBAAE,EAAE,uBAAuB,EAAE,MAAM;AACnC,kBAAE,EAAE,EAAA,EAGR,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACR;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement"],"sources":["src/components/pds-table/pds-table-cell/pds-table-cell.scss?tag=pds-table-cell&encapsulation=shadow","src/components/pds-table/pds-table-cell/pds-table-cell.tsx"],"sourcesContent":[":host {\n --box-shadow-fixed: 3px 3px 6px -2px rgba(0, 0, 0, 0.2);\n\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n inset-inline-start: var(--pine-dimension-none);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-sm);\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: 0;\n position: sticky;\n z-index: 1;\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-fixed);\n}\n\n:host(.is-truncated) {\n max-width: 100px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n:host(.has-checkbox) {\n vertical-align: middle;\n width: 16px;\n}\n\n// Text Alignment\n:host(.pds-table-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-cell--align-justify) {\n text-align: justify;\n}\n","import { Component, Element, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'pds-table-cell',\n styleUrls: ['pds-table-cell.scss'],\n shadow: true,\n})\nexport class PdsTableCell {\n @Element() hostElement: HTMLPdsTableCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Sets the text alignment within the cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Truncates content to a max width of 100px and adds an ellipsis.\n */\n @Prop() truncate: boolean;\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-cell--align-${this.cellAlign}`);\n }\n\n if (this.truncate) {\n classNames.push('is-truncated');\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"gridcell\"\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
|
|
|
2
2
|
import { u as upSmall, d as downSmall } from './index2.js';
|
|
3
3
|
import { d as defineCustomElement$1 } from './pds-icon2.js';
|
|
4
4
|
|
|
5
|
-
const pdsTableHeadCellCss = ":host{--border-head-cell-default:var(--pine-border-width-thin) solid var(--pine-color-grey-100);--box-shadow-default:3px 3px 6px -2px rgba(0, 0, 0, 0.1);-webkit-border-after:var(--border-head-cell-default);border-block-end:var(--border-head-cell-default);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);line-height:var(--pine-line-height-body);padding:
|
|
5
|
+
const pdsTableHeadCellCss = ":host{--border-head-cell-default:var(--pine-border-width-thin) solid var(--pine-color-grey-100);--box-shadow-default:3px 3px 6px -2px rgba(0, 0, 0, 0.1);-webkit-border-after:var(--border-head-cell-default);border-block-end:var(--border-head-cell-default);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-150);position:relative;text-align:start;vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:var(--pine-dimension-none);position:-webkit-sticky;position:sticky;z-index:1}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-default);box-shadow:var(--box-shadow-default)}:host(.is-sortable){cursor:pointer}:host(.is-sortable) pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs);-webkit-padding-before:2px;padding-block-start:2px;position:absolute}:host(.is-sortable:hover),:host(.is-active){color:var(--pine-color-text-active)}:host(.pds-table-head-cell--align-start){text-align:start}:host(.pds-table-head-cell--align-center){text-align:center}:host(.pds-table-head-cell--align-end){text-align:end}:host(.pds-table-head-cell--align-justify){text-align:justify}";
|
|
6
6
|
|
|
7
7
|
const PdsTableHeadCell = /*@__PURE__*/ proxyCustomElement(class PdsTableHeadCell extends HTMLElement {
|
|
8
8
|
constructor() {
|
|
@@ -10,6 +10,8 @@ const PdsTableHeadCell = /*@__PURE__*/ proxyCustomElement(class PdsTableHeadCell
|
|
|
10
10
|
this.__registerHost();
|
|
11
11
|
this.__attachShadow();
|
|
12
12
|
this.pdsTableSort = createEvent(this, "pdsTableSort", 7);
|
|
13
|
+
this.scrollContainer = null;
|
|
14
|
+
this.setupRetries = 0;
|
|
13
15
|
/**
|
|
14
16
|
* The direction of sorting.
|
|
15
17
|
*/
|
|
@@ -24,12 +26,20 @@ const PdsTableHeadCell = /*@__PURE__*/ proxyCustomElement(class PdsTableHeadCell
|
|
|
24
26
|
* @defaultValue false
|
|
25
27
|
*/
|
|
26
28
|
this.isSelected = false;
|
|
29
|
+
/**
|
|
30
|
+
* Handles scroll events to update fixed column shadow state.
|
|
31
|
+
* Updates the tableScrolling state to control CSS classes for fixed column shadows.
|
|
32
|
+
* @private
|
|
33
|
+
*/
|
|
27
34
|
this.handleScroll = () => {
|
|
28
|
-
if (this.
|
|
29
|
-
|
|
35
|
+
if (!this.scrollContainer) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
this.tableScrolling = this.scrollContainer.scrollLeft > 0;
|
|
30
40
|
}
|
|
31
|
-
|
|
32
|
-
|
|
41
|
+
catch (error) {
|
|
42
|
+
console.warn('Scroll handler error:', error);
|
|
33
43
|
}
|
|
34
44
|
};
|
|
35
45
|
this.toggleSort = () => {
|
|
@@ -49,14 +59,61 @@ const PdsTableHeadCell = /*@__PURE__*/ proxyCustomElement(class PdsTableHeadCell
|
|
|
49
59
|
}
|
|
50
60
|
componentDidLoad() {
|
|
51
61
|
if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {
|
|
52
|
-
|
|
62
|
+
// For responsive tables with fixed columns, set up scroll detection
|
|
63
|
+
// This enables the first column header to show a shadow when the table is scrolled horizontally
|
|
64
|
+
this.setupScrollListener();
|
|
53
65
|
}
|
|
54
66
|
}
|
|
67
|
+
disconnectedCallback() {
|
|
68
|
+
this.cleanupScrollListener();
|
|
69
|
+
}
|
|
70
|
+
setupScrollListener() {
|
|
71
|
+
var _a;
|
|
72
|
+
if (!this.tableRef)
|
|
73
|
+
return;
|
|
74
|
+
// Query shadowRoot once and cache the container
|
|
75
|
+
const container = (_a = this.tableRef.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.pds-table-responsive-container');
|
|
76
|
+
if (container) {
|
|
77
|
+
// Container available immediately
|
|
78
|
+
this.scrollContainer = container;
|
|
79
|
+
this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });
|
|
80
|
+
this.handleScroll(); // Initial check
|
|
81
|
+
this.setupRetries = 0; // Reset counter on success
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
// Container not ready, set up timer for retry with bounds
|
|
85
|
+
this.setupTimer = window.setTimeout(() => {
|
|
86
|
+
if (this.scrollContainer)
|
|
87
|
+
return; // Already found
|
|
88
|
+
this.setupRetries = (this.setupRetries || 0) + 1;
|
|
89
|
+
if (this.setupRetries <= 50) {
|
|
90
|
+
this.setupScrollListener();
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
console.warn('Failed to find responsive container after 50 attempts');
|
|
94
|
+
}
|
|
95
|
+
}, 100);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
cleanupScrollListener() {
|
|
99
|
+
if (this.scrollContainer) {
|
|
100
|
+
this.scrollContainer.removeEventListener('scroll', this.handleScroll);
|
|
101
|
+
this.scrollContainer = null;
|
|
102
|
+
}
|
|
103
|
+
if (this.setupTimer !== undefined) {
|
|
104
|
+
window.clearTimeout(this.setupTimer);
|
|
105
|
+
this.setupTimer = undefined;
|
|
106
|
+
}
|
|
107
|
+
this.setupRetries = 0; // Reset retry counter
|
|
108
|
+
}
|
|
55
109
|
classNames() {
|
|
56
110
|
const classNames = [];
|
|
57
111
|
if (this.tableRef && this.tableRef.compact) {
|
|
58
112
|
classNames.push('is-compact');
|
|
59
113
|
}
|
|
114
|
+
if (this.cellAlign) {
|
|
115
|
+
classNames.push(`pds-table-head-cell--align-${this.cellAlign}`);
|
|
116
|
+
}
|
|
60
117
|
if (this.sortable) {
|
|
61
118
|
classNames.push('is-sortable');
|
|
62
119
|
}
|
|
@@ -66,18 +123,19 @@ const PdsTableHeadCell = /*@__PURE__*/ proxyCustomElement(class PdsTableHeadCell
|
|
|
66
123
|
if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {
|
|
67
124
|
classNames.push('has-scrolled');
|
|
68
125
|
}
|
|
69
|
-
return classNames.join('
|
|
126
|
+
return classNames.join(' ');
|
|
70
127
|
}
|
|
71
128
|
render() {
|
|
72
|
-
return (h(Host, { key: '
|
|
129
|
+
return (h(Host, { key: '037d0c1d3cf8122132bee6887bcaceb29ac33cc0', class: this.classNames(), role: "columnheader", onClick: this.toggleSort, style: this.tableRef &&
|
|
73
130
|
this.tableRef.fixedColumn &&
|
|
74
131
|
this.tableRef.selectable
|
|
75
132
|
? { '--fixed-cell-position': '40px' }
|
|
76
|
-
: {} }, h("slot", { key: '
|
|
133
|
+
: {} }, h("slot", { key: 'ccfc2ea9a8301783834bda8c627afd652c22405e' }), this.sortable && (h("pds-icon", { key: 'de8a980b54bde4994f0339af5d7f3165ed35123b', icon: this.sortingDirection === 'asc' ? upSmall : downSmall }))));
|
|
77
134
|
}
|
|
78
135
|
get hostElement() { return this; }
|
|
79
136
|
static get style() { return pdsTableHeadCellCss; }
|
|
80
137
|
}, [1, "pds-table-head-cell", {
|
|
138
|
+
"cellAlign": [1, "cell-align"],
|
|
81
139
|
"sortable": [4],
|
|
82
140
|
"sortingDirection": [32],
|
|
83
141
|
"tableScrolling": [32],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"pds-table-head-cell2.js","mappings":"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","names":["__stencil_proxyCustomElement"],"sources":["src/components/pds-table/pds-table-head-cell/pds-table-head-cell.scss?tag=pds-table-head-cell&encapsulation=shadow","src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"sourcesContent":[":host {\n --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-grey-100);\n\n --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);\n\n border-block-end: var(--border-head-cell-default);\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n line-height: var(--pine-line-height-body);\n padding: 12px;\n text-align: start;\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: var(--pine-dimension-none);\n position: sticky;\n z-index: 1;\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-default);\n}\n\n:host(.is-sortable) {\n cursor: pointer;\n\n pds-icon {\n margin-inline-start: var(--pine-dimension-2xs);\n padding-block-start: 2px;\n position: absolute;\n }\n}\n\n:host(.is-sortable:hover),\n:host(.is-active) {\n color: var(--pine-color-text-active);\n}\n","import { Component, Element, Host, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\nimport { downSmall, upSmall } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-table-head-cell',\n styleUrls: ['pds-table-head-cell.scss'],\n shadow: true,\n})\nexport class PdsTableHeadCell {\n @Element() hostElement: HTMLPdsTableHeadCellElement;\n private tableRef: HTMLPdsTableElement;\n\n /**\n * Determines whether the table column is sortable when set to `true`.\n */\n @Prop() sortable: boolean;\n\n /**\n * Event emitted to signal that a table column header has been sorted, providing information about the sorted column's name and sorting direction.\n */\n @Event() pdsTableSort: EventEmitter<{ column: string; direction: string }>;\n\n /**\n * The direction of sorting.\n */\n @State() private sortingDirection: 'asc' | 'desc' = 'asc';\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @State() isSelected: boolean = false;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n this.tableRef.addEventListener('scroll', this.handleScroll);\n }\n }\n\n private handleScroll = () => {\n if (this.tableRef.scrollLeft > 0) {\n this.tableScrolling = true;\n } else {\n this.tableScrolling = false;\n }\n };\n\n private toggleSort = () => {\n if (this.sortable) {\n const column = this.hostElement.innerText.trim();\n this.sortingDirection = this.sortingDirection === 'asc' ? 'desc' : 'asc';\n\n this.tableRef.querySelectorAll('pds-table-head-cell').forEach((headCell) => {\n headCell.classList.remove('is-active');\n });\n\n this.hostElement.classList.toggle('is-active');\n this.pdsTableSort.emit({ column, direction: this.sortingDirection });\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.sortable) {\n classNames.push('is-sortable');\n }\n\n if (this.sortable && this.sortingDirection !== null) {\n classNames.push('sort-' + this.sortingDirection);\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"columnheader\"\n onClick={this.toggleSort}\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n {this.sortable && (\n <pds-icon icon={this.sortingDirection === 'asc' ? upSmall : downSmall} />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"pds-table-head-cell2.js","mappings":"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","names":["__stencil_proxyCustomElement"],"sources":["src/components/pds-table/pds-table-head-cell/pds-table-head-cell.scss?tag=pds-table-head-cell&encapsulation=shadow","src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"sourcesContent":[":host {\n --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-grey-100);\n\n --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);\n\n border-block-end: var(--border-head-cell-default);\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-150);\n position: relative;\n text-align: start;\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: var(--pine-dimension-none);\n position: sticky;\n z-index: 1;\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-default);\n}\n\n:host(.is-sortable) {\n cursor: pointer;\n\n pds-icon {\n margin-inline-start: var(--pine-dimension-2xs);\n padding-block-start: 2px;\n position: absolute;\n }\n}\n\n:host(.is-sortable:hover),\n:host(.is-active) {\n color: var(--pine-color-text-active);\n}\n\n// Text Alignment\n:host(.pds-table-head-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-head-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-head-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-head-cell--align-justify) {\n text-align: justify;\n}\n","import { Component, Element, Host, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\nimport { downSmall, upSmall } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-table-head-cell',\n styleUrls: ['pds-table-head-cell.scss'],\n shadow: true,\n})\nexport class PdsTableHeadCell {\n @Element() hostElement: HTMLPdsTableHeadCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n /**\n * Sets the text alignment within the head cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Determines whether the table column is sortable when set to `true`.\n */\n @Prop() sortable: boolean;\n\n /**\n * Event emitted to signal that a table column header has been sorted, providing information about the sorted column's name and sorting direction.\n */\n @Event() pdsTableSort: EventEmitter<{ column: string; direction: string }>;\n\n /**\n * The direction of sorting.\n */\n @State() private sortingDirection: 'asc' | 'desc' = 'asc';\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @State() isSelected: boolean = false;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column header to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n private toggleSort = () => {\n if (this.sortable) {\n const column = this.hostElement.innerText.trim();\n this.sortingDirection = this.sortingDirection === 'asc' ? 'desc' : 'asc';\n\n this.tableRef.querySelectorAll('pds-table-head-cell').forEach((headCell) => {\n headCell.classList.remove('is-active');\n });\n\n this.hostElement.classList.toggle('is-active');\n this.pdsTableSort.emit({ column, direction: this.sortingDirection });\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-head-cell--align-${this.cellAlign}`);\n }\n\n if (this.sortable) {\n classNames.push('is-sortable');\n }\n\n if (this.sortable && this.sortingDirection !== null) {\n classNames.push('sort-' + this.sortingDirection);\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"columnheader\"\n onClick={this.toggleSort}\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n {this.sortable && (\n <pds-icon icon={this.sortingDirection === 'asc' ? upSmall : downSmall} />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -42,7 +42,7 @@ const PdsTableHead$1 = /*@__PURE__*/ proxyCustomElement(class PdsTableHead exten
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
render() {
|
|
45
|
-
return (h(Host, { key: '
|
|
45
|
+
return (h(Host, { key: 'ffa2760e5512a41cc8882722ea7ad7e5650de50f', role: "row" }, this.tableRef && this.tableRef.selectable && (h("pds-table-head-cell", { key: 'ba2e2ef60d570d739f5e582c0affe481ebed578d', part: this.tableRef.selectable ? 'checkbox-cell' : '' }, h("pds-checkbox", { key: '4db057d54fbda8dccc49451ffb23ea1133fea53f', componentId: this.generateUniqueId(), indeterminate: this.indeterminate, onInput: this.handleInput, label: "Select All Rows", hideLabel: true, checked: this.isSelected }))), h("slot", { key: '1f9167ccf1186c92033fa95b7e4a121b98d7c0ea' })));
|
|
46
46
|
}
|
|
47
47
|
get hostElement() { return this; }
|
|
48
48
|
static get style() { return pdsTableHeadCss; }
|
|
@@ -53,7 +53,7 @@ const PdsTableRow$1 = /*@__PURE__*/ proxyCustomElement(class PdsTableRow extends
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
render() {
|
|
56
|
-
return (h(Host, { key: '
|
|
56
|
+
return (h(Host, { key: '05fb5cf3a7bc10dbe451f6df0e338efe74f9d40e', class: this.classNames(), role: "row" }, this.tableRef && this.tableRef.selectable && (h("pds-table-cell", { key: '13f61eb4c6503a488e5307de41718bd1c03a2613', part: this.tableRef.fixedColumn ? 'checkbox-cell' : '', class: this.tableRef.selectable ? 'has-checkbox' : '' }, h("pds-checkbox", { key: 'f17a2377913a8a6285e1eaee76700246c7861e9f', componentId: this.generateUniqueId(), onClick: this.handleClick, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected }))), h("slot", { key: 'c84de0c7125f6892bc88aae69b367994f48281b1' })));
|
|
57
57
|
}
|
|
58
58
|
get hostElement() { return this; }
|
|
59
59
|
static get style() { return pdsTableRowCss; }
|
package/components/pds-table.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
2
|
|
|
3
|
-
const pdsTableCss = "
|
|
3
|
+
const pdsTableCss = "@charset \"UTF-8\";:host{--color-background-default:var(--pine-color-white);background:var(--color-background-default);border-collapse:separate;border-radius:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;display:table;width:100%}:host(:focus-visible){outline:var(--pine-outline-focus)}:host(.pds-table-responsive-host){border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;max-width:100% !important;overflow:hidden !important;position:relative !important;width:100% !important}.pds-table-responsive-container{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;overflow-x:auto !important;overflow-y:visible !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper .pds-table{display:table !important;min-width:-webkit-max-content !important;min-width:-moz-max-content !important;min-width:max-content !important;table-layout:auto !important;white-space:nowrap !important;width:100% !important}.scroll-shadow-left,.scroll-shadow-right{height:100%;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-transition:opacity 0.1s ease;transition:opacity 0.1s ease;width:4px;z-index:10}.scroll-shadow-left{background:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent);border-bottom-left-radius:inherit;border-top-left-radius:inherit;left:0}.scroll-shadow-right{background:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);border-bottom-right-radius:inherit;border-top-right-radius:inherit;right:0}";
|
|
4
4
|
|
|
5
5
|
const PdsTable$1 = /*@__PURE__*/ proxyCustomElement(class PdsTable extends HTMLElement {
|
|
6
6
|
constructor() {
|
|
@@ -9,6 +9,11 @@ const PdsTable$1 = /*@__PURE__*/ proxyCustomElement(class PdsTable extends HTMLE
|
|
|
9
9
|
this.__attachShadow();
|
|
10
10
|
this.pdsTableSelect = createEvent(this, "pdsTableSelect", 7);
|
|
11
11
|
this.pdsTableSelectAll = createEvent(this, "pdsTableSelectAll", 7);
|
|
12
|
+
this.scrollContainer = null;
|
|
13
|
+
this._responsiveHandleScroll = null;
|
|
14
|
+
this._responsiveHandleResize = null;
|
|
15
|
+
this._responsiveResizeObserver = null;
|
|
16
|
+
this._teardownResponsive = null;
|
|
12
17
|
/**
|
|
13
18
|
* The name of the column being sorted.
|
|
14
19
|
* @defaultValue null
|
|
@@ -23,6 +28,100 @@ const PdsTable$1 = /*@__PURE__*/ proxyCustomElement(class PdsTable extends HTMLE
|
|
|
23
28
|
componentWillLoad() {
|
|
24
29
|
this.sortingColumn = null;
|
|
25
30
|
}
|
|
31
|
+
componentDidLoad() {
|
|
32
|
+
if (this.responsive) {
|
|
33
|
+
this.setupResponsiveScrolling();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
disconnectedCallback() {
|
|
37
|
+
if (this._teardownResponsive) {
|
|
38
|
+
this._teardownResponsive();
|
|
39
|
+
this._teardownResponsive = null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Sets up responsive scrolling behavior for the table.
|
|
44
|
+
*
|
|
45
|
+
* This method creates a horizontal scrolling system where:
|
|
46
|
+
* - The table content can scroll horizontally when it exceeds the container width
|
|
47
|
+
* - Scroll shadows appear at the left/right edges to indicate scrollable content
|
|
48
|
+
* - Fixed columns remain sticky during horizontal scrolling
|
|
49
|
+
* - Shadows respect border-radius and don't appear when there's nothing to scroll
|
|
50
|
+
*
|
|
51
|
+
* Architecture:
|
|
52
|
+
* - Host element: Contains everything, respects parent constraints
|
|
53
|
+
* - Container element: Handles horizontal scrolling (overflow-x: auto)
|
|
54
|
+
* - Shadow elements: Positioned fixed relative to host, show scroll indicators
|
|
55
|
+
*
|
|
56
|
+
* @private
|
|
57
|
+
*/
|
|
58
|
+
setupResponsiveScrolling() {
|
|
59
|
+
var _a, _b, _c;
|
|
60
|
+
const container = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.pds-table-responsive-container');
|
|
61
|
+
const leftShadow = (_b = this.el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.scroll-shadow-left');
|
|
62
|
+
const rightShadow = (_c = this.el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.scroll-shadow-right');
|
|
63
|
+
if (!container || !leftShadow || !rightShadow)
|
|
64
|
+
return;
|
|
65
|
+
// Store container reference for cleanup
|
|
66
|
+
this.scrollContainer = container;
|
|
67
|
+
/**
|
|
68
|
+
* Updates the visibility of scroll shadows based on current scroll position.
|
|
69
|
+
* Left shadow: Shows when scrolled away from start (hidden if fixedColumn is enabled)
|
|
70
|
+
* Right shadow: Shows when there's content to scroll and not at the end
|
|
71
|
+
*/
|
|
72
|
+
this._responsiveHandleScroll = () => {
|
|
73
|
+
if (!this.scrollContainer)
|
|
74
|
+
return;
|
|
75
|
+
const scrollLeft = this.scrollContainer.scrollLeft;
|
|
76
|
+
const maxScrollLeft = this.scrollContainer.scrollWidth - this.scrollContainer.clientWidth;
|
|
77
|
+
// Show left shadow when scrolled away from start, but not if there's a fixed column
|
|
78
|
+
leftShadow.style.opacity = (scrollLeft > 0 && !this.fixedColumn) ? '1' : '0';
|
|
79
|
+
// Show right shadow only if there's content to scroll AND not at end
|
|
80
|
+
rightShadow.style.opacity = (maxScrollLeft > 0 && scrollLeft < maxScrollLeft - 1) ? '1' : '0';
|
|
81
|
+
};
|
|
82
|
+
// Add scroll event listener to container element
|
|
83
|
+
this.scrollContainer.addEventListener('scroll', this._responsiveHandleScroll, { passive: true });
|
|
84
|
+
// Add resize observer to update shadows when container size changes
|
|
85
|
+
if (typeof window !== 'undefined' && window.ResizeObserver) {
|
|
86
|
+
try {
|
|
87
|
+
this._responsiveResizeObserver = new ResizeObserver(() => {
|
|
88
|
+
var _a;
|
|
89
|
+
(_a = this._responsiveHandleScroll) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
90
|
+
});
|
|
91
|
+
this._responsiveResizeObserver.observe(this.scrollContainer);
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
// ResizeObserver not available in some environments (e.g., tests)
|
|
95
|
+
// Fall back to window resize listener only
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// Listen for window resize as fallback
|
|
99
|
+
if (typeof window !== 'undefined') {
|
|
100
|
+
this._responsiveHandleResize = () => {
|
|
101
|
+
var _a;
|
|
102
|
+
(_a = this._responsiveHandleScroll) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
103
|
+
};
|
|
104
|
+
window.addEventListener('resize', this._responsiveHandleResize);
|
|
105
|
+
}
|
|
106
|
+
// Create teardown function for cleanup
|
|
107
|
+
this._teardownResponsive = () => {
|
|
108
|
+
if (this.scrollContainer && this._responsiveHandleScroll) {
|
|
109
|
+
this.scrollContainer.removeEventListener('scroll', this._responsiveHandleScroll);
|
|
110
|
+
this.scrollContainer = null;
|
|
111
|
+
}
|
|
112
|
+
if (this._responsiveResizeObserver) {
|
|
113
|
+
this._responsiveResizeObserver.disconnect();
|
|
114
|
+
this._responsiveResizeObserver = null;
|
|
115
|
+
}
|
|
116
|
+
if (typeof window !== 'undefined' && this._responsiveHandleResize) {
|
|
117
|
+
window.removeEventListener('resize', this._responsiveHandleResize);
|
|
118
|
+
this._responsiveHandleResize = null;
|
|
119
|
+
}
|
|
120
|
+
this._responsiveHandleScroll = null;
|
|
121
|
+
};
|
|
122
|
+
// Initial check after setup
|
|
123
|
+
this._responsiveHandleScroll();
|
|
124
|
+
}
|
|
26
125
|
classNames() {
|
|
27
126
|
const classNames = ['pds-table'];
|
|
28
127
|
if (this.compact) {
|
|
@@ -50,10 +149,10 @@ const PdsTable$1 = /*@__PURE__*/ proxyCustomElement(class PdsTable extends HTMLE
|
|
|
50
149
|
const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();
|
|
51
150
|
const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();
|
|
52
151
|
if (direction === 'asc') {
|
|
53
|
-
return valueA.localeCompare(valueB);
|
|
152
|
+
return valueA.localeCompare(valueB, undefined, { sensitivity: 'base' });
|
|
54
153
|
}
|
|
55
154
|
else {
|
|
56
|
-
return valueB.localeCompare(valueA);
|
|
155
|
+
return valueB.localeCompare(valueA, undefined, { sensitivity: 'base' });
|
|
57
156
|
}
|
|
58
157
|
});
|
|
59
158
|
// Clear and append the sorted rows back to the table body
|
|
@@ -91,7 +190,10 @@ const PdsTable$1 = /*@__PURE__*/ proxyCustomElement(class PdsTable extends HTMLE
|
|
|
91
190
|
headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;
|
|
92
191
|
}
|
|
93
192
|
render() {
|
|
94
|
-
|
|
193
|
+
if (this.responsive) {
|
|
194
|
+
return (h(Host, { class: "pds-table is-responsive pds-table-responsive-host", id: this.componentId, role: "grid", selectable: this.selectable, tabindex: "0" }, h("div", { class: "scroll-shadow-left" }), h("div", { class: "scroll-shadow-right" }), h("div", { class: "pds-table-responsive-container" }, h("div", { class: "pds-table-responsive-wrapper" }, h("div", { class: this.classNames() }, h("slot", null))))));
|
|
195
|
+
}
|
|
196
|
+
return (h(Host, { class: this.classNames(), id: this.componentId, role: "grid", selectable: this.selectable, tabindex: "0" }, h("slot", null)));
|
|
95
197
|
}
|
|
96
198
|
get el() { return this; }
|
|
97
199
|
static get style() { return pdsTableCss; }
|