@pine-ds/core 1.3.0-dev.2 → 1.3.0-dev.4
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/closest.js +11 -0
- package/components/closest.js.map +1 -0
- package/components/index.js +33 -0
- package/components/index.js.map +1 -0
- package/components/index2.js +14 -0
- package/components/index2.js.map +1 -0
- package/components/pds-accordion.js +62 -0
- package/components/pds-accordion.js.map +1 -0
- package/components/pds-avatar.js +97 -0
- package/components/pds-avatar.js.map +1 -0
- package/components/pds-box.js +124 -0
- package/components/pds-box.js.map +1 -0
- package/components/pds-button.js +8 -0
- package/components/pds-button.js.map +1 -0
- package/components/pds-button2.js +78 -0
- package/components/pds-button2.js.map +1 -0
- package/components/pds-checkbox.js +8 -0
- package/components/pds-checkbox.js.map +1 -0
- package/components/pds-checkbox2.js +101 -0
- package/components/pds-checkbox2.js.map +1 -0
- package/components/pds-chip.js +72 -0
- package/components/pds-chip.js.map +1 -0
- package/components/pds-copytext.js +82 -0
- package/components/pds-copytext.js.map +1 -0
- package/components/pds-divider.js +54 -0
- package/components/pds-divider.js.map +1 -0
- package/components/pds-image.js +55 -0
- package/components/pds-image.js.map +1 -0
- package/components/pds-input.js +72 -0
- package/components/pds-input.js.map +1 -0
- package/components/pds-label.js +39 -0
- package/components/pds-label.js.map +1 -0
- package/components/pds-link.js +59 -0
- package/components/pds-link.js.map +1 -0
- package/components/pds-loader.js +68 -0
- package/components/pds-loader.js.map +1 -0
- package/components/pds-progress.js +49 -0
- package/components/pds-progress.js.map +1 -0
- package/components/pds-radio.js +78 -0
- package/components/pds-radio.js.map +1 -0
- package/components/pds-row.js +72 -0
- package/components/pds-row.js.map +1 -0
- package/components/pds-sortable-item.js +52 -0
- package/components/pds-sortable-item.js.map +1 -0
- package/components/pds-sortable.js +2722 -0
- package/components/pds-sortable.js.map +1 -0
- package/components/pds-switch.js +82 -0
- package/components/pds-switch.js.map +1 -0
- package/components/pds-tab.js +53 -0
- package/components/pds-tab.js.map +1 -0
- package/components/pds-table-body.js +36 -0
- package/components/pds-table-body.js.map +1 -0
- package/components/pds-table-cell.js +8 -0
- package/components/pds-table-cell.js.map +1 -0
- package/components/pds-table-cell2.js +72 -0
- package/components/pds-table-cell2.js.map +1 -0
- package/components/pds-table-head-cell.js +8 -0
- package/components/pds-table-head-cell.js.map +1 -0
- package/components/pds-table-head-cell2.js +92 -0
- package/components/pds-table-head-cell2.js.map +1 -0
- package/components/pds-table-head.js +84 -0
- package/components/pds-table-head.js.map +1 -0
- package/components/pds-table-row.js +95 -0
- package/components/pds-table-row.js.map +1 -0
- package/components/pds-table.js +124 -0
- package/components/pds-table.js.map +1 -0
- package/components/pds-tabpanel.js +45 -0
- package/components/pds-tabpanel.js.map +1 -0
- package/components/pds-tabs.js +119 -0
- package/components/pds-tabs.js.map +1 -0
- package/components/pds-textarea.js +82 -0
- package/components/pds-textarea.js.map +1 -0
- package/components/pds-tooltip.js +178 -0
- package/components/pds-tooltip.js.map +1 -0
- package/dist/cjs/app-globals-3a1e7e63.js +7 -0
- package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
- package/dist/cjs/closest-b45138d3.js +13 -0
- package/dist/cjs/closest-b45138d3.js.map +1 -0
- package/dist/{pine-core/index-cccc19b7.js → cjs/index-11f95019.js} +220 -1563
- package/dist/cjs/index-11f95019.js.map +1 -0
- package/dist/cjs/index-dd191bbe.js +24 -0
- package/dist/cjs/index-dd191bbe.js.map +1 -0
- package/dist/cjs/index.cjs.js +6 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +17 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/pds-accordion.cjs.entry.js +43 -0
- package/dist/cjs/pds-accordion.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-avatar.cjs.entry.js +75 -0
- package/dist/cjs/pds-avatar.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-box.cjs.entry.js +82 -0
- package/dist/cjs/pds-box.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-button.cjs.entry.js +59 -0
- package/dist/cjs/pds-button.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-checkbox.cjs.entry.js +75 -0
- package/dist/cjs/pds-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-chip.cjs.entry.js +51 -0
- package/dist/cjs/pds-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-copytext.cjs.entry.js +56 -0
- package/dist/cjs/pds-copytext.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-divider.cjs.entry.js +36 -0
- package/dist/cjs/pds-divider.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-image.cjs.entry.js +32 -0
- package/dist/cjs/pds-image.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-input.cjs.entry.js +45 -0
- package/dist/cjs/pds-input.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-label-7acec6ab.js +44 -0
- package/dist/cjs/pds-label-7acec6ab.js.map +1 -0
- package/dist/cjs/pds-link.cjs.entry.js +39 -0
- package/dist/cjs/pds-link.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-loader.cjs.entry.js +49 -0
- package/dist/cjs/pds-loader.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-progress.cjs.entry.js +28 -0
- package/dist/cjs/pds-progress.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-radio.cjs.entry.js +54 -0
- package/dist/cjs/pds-radio.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-row.cjs.entry.js +51 -0
- package/dist/cjs/pds-row.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-sortable-item.cjs.entry.js +35 -0
- package/dist/cjs/pds-sortable-item.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-sortable.cjs.entry.js +2704 -0
- package/dist/cjs/pds-sortable.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-switch.cjs.entry.js +56 -0
- package/dist/cjs/pds-switch.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-tab.cjs.entry.js +34 -0
- package/dist/cjs/pds-tab.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table-body.cjs.entry.js +22 -0
- package/dist/cjs/pds-table-body.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table-cell.cjs.entry.js +58 -0
- package/dist/cjs/pds-table-cell.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table-head-cell.cjs.entry.js +76 -0
- package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table-head.cjs.entry.js +55 -0
- package/dist/cjs/pds-table-head.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table-row.cjs.entry.js +66 -0
- package/dist/cjs/pds-table-row.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-table.cjs.entry.js +102 -0
- package/dist/cjs/pds-table.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-tabpanel.cjs.entry.js +27 -0
- package/dist/cjs/pds-tabpanel.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-tabs.cjs.entry.js +99 -0
- package/dist/cjs/pds-tabs.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-textarea.cjs.entry.js +55 -0
- package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -0
- package/dist/cjs/pds-tooltip.cjs.entry.js +152 -0
- package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -0
- package/dist/cjs/pine-core.cjs.js +27 -0
- package/dist/cjs/pine-core.cjs.js.map +1 -0
- package/dist/collection/collection-manifest.json +40 -0
- package/dist/collection/components/_internal/pds-label/pds-label.js +7 -0
- package/dist/collection/components/_internal/pds-label/pds-label.js.map +1 -0
- package/dist/collection/components/pds-accordion/pds-accordion.css +65 -0
- package/dist/collection/components/pds-accordion/pds-accordion.js +94 -0
- package/dist/collection/components/pds-accordion/pds-accordion.js.map +1 -0
- package/dist/collection/components/pds-accordion/stories/pds-accordion.stories.js +34 -0
- package/dist/collection/components/pds-avatar/pds-avatar.css +65 -0
- package/dist/collection/components/pds-avatar/pds-avatar.js +224 -0
- package/dist/collection/components/pds-avatar/pds-avatar.js.map +1 -0
- package/dist/collection/components/pds-avatar/stories/pds-avatar.stories.js +65 -0
- package/dist/collection/components/pds-box/pds-box.css +1234 -0
- package/dist/collection/components/pds-box/pds-box.js +678 -0
- package/dist/collection/components/pds-box/pds-box.js.map +1 -0
- package/dist/collection/components/pds-box/stories/pds-box.stories.js +50 -0
- package/dist/collection/components/pds-button/pds-button.css +131 -0
- package/dist/collection/components/pds-button/pds-button.js +193 -0
- package/dist/collection/components/pds-button/pds-button.js.map +1 -0
- package/dist/collection/components/pds-button/stories/pds-button.stories.js +66 -0
- package/dist/collection/components/pds-checkbox/checkbox-interface.js +2 -0
- package/dist/collection/components/pds-checkbox/checkbox-interface.js.map +1 -0
- package/dist/collection/components/pds-checkbox/pds-checkbox.css +135 -0
- package/dist/collection/components/pds-checkbox/pds-checkbox.js +330 -0
- package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -0
- package/dist/collection/components/pds-checkbox/stories/pds-checkbox.stories.js +82 -0
- package/dist/collection/components/pds-chip/pds-chip.css +239 -0
- package/dist/collection/components/pds-chip/pds-chip.js +189 -0
- package/dist/collection/components/pds-chip/pds-chip.js.map +1 -0
- package/dist/collection/components/pds-chip/stories/pds-chip.stories.js +79 -0
- package/dist/collection/components/pds-copytext/pds-copytext.css +87 -0
- package/dist/collection/components/pds-copytext/pds-copytext.js +173 -0
- package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -0
- package/dist/collection/components/pds-copytext/stories/pds-copytext.stories.js +57 -0
- package/dist/collection/components/pds-divider/pds-divider.css +92 -0
- package/dist/collection/components/pds-divider/pds-divider.js +94 -0
- package/dist/collection/components/pds-divider/pds-divider.js.map +1 -0
- package/dist/collection/components/pds-divider/stories/pds-divider.stories.js +25 -0
- package/dist/collection/components/pds-icon/stories/pds-icon.stories.js +16 -0
- package/dist/collection/components/pds-image/pds-image.css +13 -0
- package/dist/collection/components/pds-image/pds-image.js +173 -0
- package/dist/collection/components/pds-image/pds-image.js.map +1 -0
- package/dist/collection/components/pds-image/stories/pds-image.stories.js +35 -0
- package/dist/collection/components/pds-input/pds-input.css +92 -0
- package/dist/collection/components/pds-input/pds-input.js +279 -0
- package/dist/collection/components/pds-input/pds-input.js.map +1 -0
- package/dist/collection/components/pds-input/stories/pds-input.stories.js +110 -0
- package/dist/collection/components/pds-link/pds-link.css +68 -0
- package/dist/collection/components/pds-link/pds-link.js +140 -0
- package/dist/collection/components/pds-link/pds-link.js.map +1 -0
- package/dist/collection/components/pds-link/stories/pds-link.stories.js +49 -0
- package/dist/collection/components/pds-loader/pds-loader.css +93 -0
- package/dist/collection/components/pds-loader/pds-loader.js +127 -0
- package/dist/collection/components/pds-loader/pds-loader.js.map +1 -0
- package/dist/collection/components/pds-loader/stories/pds-loader.stories.js +36 -0
- package/dist/collection/components/pds-progress/pds-progress.css +79 -0
- package/dist/collection/components/pds-progress/pds-progress.js +148 -0
- package/dist/collection/components/pds-progress/pds-progress.js.map +1 -0
- package/dist/collection/components/pds-progress/stories/pds-progress.stories.js +65 -0
- package/dist/collection/components/pds-radio/pds-radio.css +104 -0
- package/dist/collection/components/pds-radio/pds-radio.js +261 -0
- package/dist/collection/components/pds-radio/pds-radio.js.map +1 -0
- package/dist/collection/components/pds-radio/stories/pds-radio.stories.js +71 -0
- package/dist/collection/components/pds-row/pds-row.css +78 -0
- package/dist/collection/components/pds-row/pds-row.js +186 -0
- package/dist/collection/components/pds-row/pds-row.js.map +1 -0
- package/dist/collection/components/pds-row/stories/pds-row.stories.js +75 -0
- package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.css +63 -0
- package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +100 -0
- package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js.map +1 -0
- package/dist/collection/components/pds-sortable/pds-sortable-item/stories/pds-sortable-item.stories.js +24 -0
- package/dist/collection/components/pds-sortable/pds-sortable.css +10 -0
- package/dist/collection/components/pds-sortable/pds-sortable.js +150 -0
- package/dist/collection/components/pds-sortable/pds-sortable.js.map +1 -0
- package/dist/collection/components/pds-sortable/sortable-interface.js +2 -0
- package/dist/collection/components/pds-sortable/sortable-interface.js.map +1 -0
- package/dist/collection/components/pds-sortable/stories/pds-sortable.stories.js +130 -0
- package/dist/collection/components/pds-switch/pds-switch.css +136 -0
- package/dist/collection/components/pds-switch/pds-switch.js +277 -0
- package/dist/collection/components/pds-switch/pds-switch.js.map +1 -0
- package/dist/collection/components/pds-switch/stories/pds-switch.stories.js +102 -0
- package/dist/collection/components/pds-table/pds-table-body/pds-table-body.css +5 -0
- package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +19 -0
- package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js.map +1 -0
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +45 -0
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +83 -0
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -0
- package/dist/collection/components/pds-table/pds-table-cell/stories/pds-table-cell.stories.js +26 -0
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +18 -0
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +109 -0
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js.map +1 -0
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +54 -0
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +120 -0
- package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js.map +1 -0
- package/dist/collection/components/pds-table/pds-table-head-cell/stories/pds-table-head-cell.stories.js +24 -0
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +22 -0
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +120 -0
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js.map +1 -0
- package/dist/collection/components/pds-table/pds-table-row/stories/pds-table-row.stories.js +26 -0
- package/dist/collection/components/pds-table/pds-table.css +27 -0
- package/dist/collection/components/pds-table/pds-table.js +248 -0
- package/dist/collection/components/pds-table/pds-table.js.map +1 -0
- package/dist/collection/components/pds-table/stories/pds-table.stories.js +227 -0
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +160 -0
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +154 -0
- package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js.map +1 -0
- package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.css +12 -0
- package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +107 -0
- package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js.map +1 -0
- package/dist/collection/components/pds-tabs/pds-tabs.css +29 -0
- package/dist/collection/components/pds-tabs/pds-tabs.js +209 -0
- package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -0
- package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +63 -0
- package/dist/collection/components/pds-textarea/pds-textarea.css +88 -0
- package/dist/collection/components/pds-textarea/pds-textarea.js +303 -0
- package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -0
- package/dist/collection/components/pds-textarea/stories/pds-textarea.stories.js +111 -0
- package/dist/collection/components/pds-textarea/textarea-interface.js +2 -0
- package/dist/collection/components/pds-textarea/textarea-interface.js.map +1 -0
- package/dist/collection/components/pds-tooltip/pds-tooltip.css +147 -0
- package/dist/collection/components/pds-tooltip/pds-tooltip.js +287 -0
- package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -0
- package/dist/collection/components/pds-tooltip/stories/pds-tooltip.stories.js +103 -0
- package/dist/collection/global/pine-ui-global.js +2 -0
- package/dist/collection/global/pine-ui-global.js.map +1 -0
- package/dist/collection/index.js +2 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/stories/_helpers/index.js +15 -0
- package/dist/collection/stories/_helpers/index.js.map +1 -0
- package/dist/collection/utils/closest.js +8 -0
- package/dist/collection/utils/closest.js.map +1 -0
- package/dist/collection/utils/form.js +28 -0
- package/dist/collection/utils/form.js.map +1 -0
- package/dist/collection/utils/overlay.js +68 -0
- package/dist/collection/utils/overlay.js.map +1 -0
- package/dist/collection/utils/types.js +2 -0
- package/dist/collection/utils/types.js.map +1 -0
- package/dist/collection/utils/utils.js +7 -0
- package/dist/collection/utils/utils.js.map +1 -0
- package/dist/docs.json +1 -1
- package/dist/esm/index-b8872c16.js +14 -0
- package/dist/esm/index-b8872c16.js.map +1 -0
- package/dist/esm/index-cd2796be.js +2811 -0
- package/dist/esm/index-cd2796be.js.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +13 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/{pine-core → esm}/pds-accordion.entry.js +5 -4
- package/dist/esm/pds-accordion.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-avatar.entry.js +5 -4
- package/dist/esm/pds-avatar.entry.js.map +1 -0
- package/dist/esm/pds-box.entry.js +78 -0
- package/dist/esm/pds-box.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-button.entry.js +5 -7
- package/dist/esm/pds-button.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-checkbox.entry.js +5 -4
- package/dist/esm/pds-checkbox.entry.js.map +1 -0
- package/dist/esm/pds-chip.entry.js +47 -0
- package/dist/esm/pds-chip.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-copytext.entry.js +5 -4
- package/dist/esm/pds-copytext.entry.js.map +1 -0
- package/dist/esm/pds-divider.entry.js +32 -0
- package/dist/esm/pds-divider.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-image.entry.js +3 -2
- package/dist/esm/pds-image.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-input.entry.js +5 -4
- package/dist/esm/pds-input.entry.js.map +1 -0
- package/dist/{pine-core/pds-label-7201663d.js → esm/pds-label-7abc6d85.js} +2 -2
- package/dist/{pine-core/pds-label-7201663d.js.map → esm/pds-label-7abc6d85.js.map} +1 -1
- package/dist/{pine-core → esm}/pds-link.entry.js +5 -4
- package/dist/esm/pds-link.entry.js.map +1 -0
- package/dist/esm/pds-loader.entry.js +45 -0
- package/dist/esm/pds-loader.entry.js.map +1 -0
- package/dist/esm/pds-progress.entry.js +24 -0
- package/dist/esm/pds-progress.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-radio.entry.js +5 -4
- package/dist/esm/pds-radio.entry.js.map +1 -0
- package/dist/esm/pds-row.entry.js +47 -0
- package/dist/esm/pds-row.entry.js.map +1 -0
- package/dist/esm/pds-sortable-item.entry.js +31 -0
- package/dist/esm/pds-sortable-item.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-sortable.entry.js +4 -704
- package/dist/esm/pds-sortable.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-switch.entry.js +5 -4
- package/dist/esm/pds-switch.entry.js.map +1 -0
- package/dist/esm/pds-tab.entry.js +30 -0
- package/dist/esm/pds-tab.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table-body.entry.js +3 -2
- package/dist/esm/pds-table-body.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table-cell.entry.js +4 -3
- package/dist/esm/pds-table-cell.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table-head-cell.entry.js +5 -4
- package/dist/esm/pds-table-head-cell.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table-head.entry.js +4 -3
- package/dist/esm/pds-table-head.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table-row.entry.js +4 -3
- package/dist/esm/pds-table-row.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-table.entry.js +4 -3
- package/dist/esm/pds-table.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-tabpanel.entry.js +3 -2
- package/dist/esm/pds-tabpanel.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-tabs.entry.js +4 -3
- package/dist/esm/pds-tabs.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-textarea.entry.js +5 -4
- package/dist/esm/pds-textarea.entry.js.map +1 -0
- package/dist/{pine-core → esm}/pds-tooltip.entry.js +4 -3
- package/dist/esm/pds-tooltip.entry.js.map +1 -0
- package/dist/esm/pine-core.js +22 -0
- package/dist/esm/pine-core.js.map +1 -0
- package/dist/esm/polyfills/core-js.js +11 -0
- package/dist/esm/polyfills/dom.js +79 -0
- package/dist/esm/polyfills/es5-html-element.js +1 -0
- package/dist/esm/polyfills/index.js +34 -0
- package/dist/esm/polyfills/system.js +6 -0
- package/dist/esm-es5/app-globals-0f993ce5.js +2 -0
- package/dist/esm-es5/app-globals-0f993ce5.js.map +1 -0
- package/dist/esm-es5/closest-d2d192be.js +2 -0
- package/dist/esm-es5/closest-d2d192be.js.map +1 -0
- package/dist/esm-es5/index-b8872c16.js +2 -0
- package/dist/esm-es5/index-b8872c16.js.map +1 -0
- package/dist/esm-es5/index-cd2796be.js +3 -0
- package/dist/esm-es5/index-cd2796be.js.map +1 -0
- package/dist/esm-es5/index.js +2 -0
- package/dist/esm-es5/index.js.map +1 -0
- package/dist/esm-es5/loader.js +2 -0
- package/dist/esm-es5/loader.js.map +1 -0
- package/dist/esm-es5/pds-accordion.entry.js +2 -0
- package/dist/esm-es5/pds-accordion.entry.js.map +1 -0
- package/dist/esm-es5/pds-avatar.entry.js +2 -0
- package/dist/esm-es5/pds-avatar.entry.js.map +1 -0
- package/dist/esm-es5/pds-box.entry.js +2 -0
- package/dist/esm-es5/pds-box.entry.js.map +1 -0
- package/dist/esm-es5/pds-button.entry.js +2 -0
- package/dist/esm-es5/pds-button.entry.js.map +1 -0
- package/dist/esm-es5/pds-checkbox.entry.js +2 -0
- package/dist/esm-es5/pds-checkbox.entry.js.map +1 -0
- package/dist/esm-es5/pds-chip.entry.js +2 -0
- package/dist/esm-es5/pds-chip.entry.js.map +1 -0
- package/dist/esm-es5/pds-copytext.entry.js +2 -0
- package/dist/esm-es5/pds-copytext.entry.js.map +1 -0
- package/dist/esm-es5/pds-divider.entry.js +2 -0
- package/dist/esm-es5/pds-divider.entry.js.map +1 -0
- package/dist/esm-es5/pds-image.entry.js +2 -0
- package/dist/esm-es5/pds-image.entry.js.map +1 -0
- package/dist/esm-es5/pds-input.entry.js +2 -0
- package/dist/esm-es5/pds-input.entry.js.map +1 -0
- package/dist/esm-es5/pds-label-7abc6d85.js +2 -0
- package/dist/esm-es5/pds-label-7abc6d85.js.map +1 -0
- package/dist/esm-es5/pds-link.entry.js +2 -0
- package/dist/esm-es5/pds-link.entry.js.map +1 -0
- package/dist/esm-es5/pds-loader.entry.js +2 -0
- package/dist/esm-es5/pds-loader.entry.js.map +1 -0
- package/dist/esm-es5/pds-progress.entry.js +2 -0
- package/dist/esm-es5/pds-progress.entry.js.map +1 -0
- package/dist/esm-es5/pds-radio.entry.js +2 -0
- package/dist/esm-es5/pds-radio.entry.js.map +1 -0
- package/dist/esm-es5/pds-row.entry.js +2 -0
- package/dist/esm-es5/pds-row.entry.js.map +1 -0
- package/dist/esm-es5/pds-sortable-item.entry.js +2 -0
- package/dist/esm-es5/pds-sortable-item.entry.js.map +1 -0
- package/dist/esm-es5/pds-sortable.entry.js +8 -0
- package/dist/esm-es5/pds-sortable.entry.js.map +1 -0
- package/dist/esm-es5/pds-switch.entry.js +2 -0
- package/dist/esm-es5/pds-switch.entry.js.map +1 -0
- package/dist/esm-es5/pds-tab.entry.js +2 -0
- package/dist/esm-es5/pds-tab.entry.js.map +1 -0
- package/dist/esm-es5/pds-table-body.entry.js +2 -0
- package/dist/esm-es5/pds-table-body.entry.js.map +1 -0
- package/dist/esm-es5/pds-table-cell.entry.js +2 -0
- package/dist/esm-es5/pds-table-cell.entry.js.map +1 -0
- package/dist/esm-es5/pds-table-head-cell.entry.js +2 -0
- package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -0
- package/dist/esm-es5/pds-table-head.entry.js +2 -0
- package/dist/esm-es5/pds-table-head.entry.js.map +1 -0
- package/dist/esm-es5/pds-table-row.entry.js +2 -0
- package/dist/esm-es5/pds-table-row.entry.js.map +1 -0
- package/dist/esm-es5/pds-table.entry.js +2 -0
- package/dist/{pine-core → esm-es5}/pds-table.entry.js.map +1 -1
- package/dist/esm-es5/pds-tabpanel.entry.js +2 -0
- package/dist/esm-es5/pds-tabpanel.entry.js.map +1 -0
- package/dist/esm-es5/pds-tabs.entry.js +2 -0
- package/dist/esm-es5/pds-tabs.entry.js.map +1 -0
- package/dist/esm-es5/pds-textarea.entry.js +2 -0
- package/dist/esm-es5/pds-textarea.entry.js.map +1 -0
- package/dist/esm-es5/pds-tooltip.entry.js +2 -0
- package/dist/esm-es5/pds-tooltip.entry.js.map +1 -0
- package/dist/esm-es5/pine-core.js +2 -0
- package/dist/esm-es5/pine-core.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/pine-core/index.esm.js +1 -2
- package/dist/pine-core/index.esm.js.map +1 -1
- package/dist/pine-core/p-03ac85bb.system.entry.js +2 -0
- package/dist/pine-core/p-03ac85bb.system.entry.js.map +1 -0
- package/dist/pine-core/p-0935a593.system.js +3 -0
- package/dist/pine-core/p-0935a593.system.js.map +1 -0
- package/dist/pine-core/p-0b77685e.js +2 -0
- package/dist/pine-core/p-0b77685e.js.map +1 -0
- package/dist/pine-core/p-0ca08a85.system.js +2 -0
- package/dist/pine-core/p-0ca08a85.system.js.map +1 -0
- package/dist/pine-core/p-1b1c6e9e.system.entry.js +2 -0
- package/dist/pine-core/p-1b1c6e9e.system.entry.js.map +1 -0
- package/dist/pine-core/p-1d34a83d.system.entry.js +2 -0
- package/dist/pine-core/p-1d34a83d.system.entry.js.map +1 -0
- package/dist/pine-core/p-224a435b.system.js +2 -0
- package/dist/pine-core/p-224a435b.system.js.map +1 -0
- package/dist/pine-core/p-23d97662.js +3 -0
- package/dist/pine-core/p-23d97662.js.map +1 -0
- package/dist/pine-core/p-24d43a5d.system.entry.js +2 -0
- package/dist/pine-core/p-24d43a5d.system.entry.js.map +1 -0
- package/dist/pine-core/p-252bcd1c.system.entry.js +2 -0
- package/dist/pine-core/p-252bcd1c.system.entry.js.map +1 -0
- package/dist/pine-core/p-27dfade4.system.entry.js +2 -0
- package/dist/pine-core/p-27dfade4.system.entry.js.map +1 -0
- package/dist/pine-core/p-28d205e0.system.entry.js +2 -0
- package/dist/pine-core/p-28d205e0.system.entry.js.map +1 -0
- package/dist/pine-core/p-2ac1781f.entry.js +2 -0
- package/dist/pine-core/p-2ac1781f.entry.js.map +1 -0
- package/dist/pine-core/p-35f2208a.system.entry.js +2 -0
- package/dist/pine-core/p-35f2208a.system.entry.js.map +1 -0
- package/dist/pine-core/p-38a23fac.system.entry.js +2 -0
- package/dist/pine-core/p-38a23fac.system.entry.js.map +1 -0
- package/dist/pine-core/p-39bc5dc9.system.entry.js +2 -0
- package/dist/pine-core/p-39bc5dc9.system.entry.js.map +1 -0
- package/dist/pine-core/p-3c02b099.entry.js +2 -0
- package/dist/pine-core/p-3c02b099.entry.js.map +1 -0
- package/dist/pine-core/p-41d6881e.system.entry.js +2 -0
- package/dist/pine-core/p-41d6881e.system.entry.js.map +1 -0
- package/dist/pine-core/p-443202f8.entry.js +8 -0
- package/dist/pine-core/p-443202f8.entry.js.map +1 -0
- package/dist/pine-core/p-4df579f2.entry.js +2 -0
- package/dist/pine-core/p-4df579f2.entry.js.map +1 -0
- package/dist/pine-core/p-519ef0c4.system.js +2 -0
- package/dist/pine-core/p-519ef0c4.system.js.map +1 -0
- package/dist/pine-core/p-56588c5d.entry.js +2 -0
- package/dist/pine-core/p-56588c5d.entry.js.map +1 -0
- package/dist/pine-core/p-56ba5cbf.system.js +2 -0
- package/dist/pine-core/p-56ba5cbf.system.js.map +1 -0
- package/dist/pine-core/p-5c60147f.system.entry.js +9 -0
- package/dist/pine-core/p-5c60147f.system.entry.js.map +1 -0
- package/dist/pine-core/p-5c8608cd.system.entry.js +2 -0
- package/dist/pine-core/p-5c8608cd.system.entry.js.map +1 -0
- package/dist/pine-core/p-5d08fe24.entry.js +2 -0
- package/dist/pine-core/p-5d08fe24.entry.js.map +1 -0
- package/dist/pine-core/p-606b6dbb.entry.js +2 -0
- package/dist/pine-core/p-606b6dbb.entry.js.map +1 -0
- package/dist/pine-core/p-60f4dc68.system.entry.js +2 -0
- package/dist/pine-core/p-60f4dc68.system.entry.js.map +1 -0
- package/dist/pine-core/p-6525ed78.entry.js +2 -0
- package/dist/pine-core/p-6525ed78.entry.js.map +1 -0
- package/dist/pine-core/p-684d04ae.entry.js +2 -0
- package/dist/pine-core/p-684d04ae.entry.js.map +1 -0
- package/dist/pine-core/p-6f38bc8e.entry.js +2 -0
- package/dist/pine-core/p-6f38bc8e.entry.js.map +1 -0
- package/dist/pine-core/p-6f511f31.entry.js +2 -0
- package/dist/pine-core/p-6f511f31.entry.js.map +1 -0
- package/dist/pine-core/p-74d57e61.system.entry.js +2 -0
- package/dist/pine-core/p-74d57e61.system.entry.js.map +1 -0
- package/dist/pine-core/p-806b41c3.entry.js +2 -0
- package/dist/pine-core/p-806b41c3.entry.js.map +1 -0
- package/dist/pine-core/p-807d5d68.system.entry.js +2 -0
- package/dist/pine-core/p-807d5d68.system.entry.js.map +1 -0
- package/dist/pine-core/p-854fa9e2.entry.js +2 -0
- package/dist/pine-core/p-854fa9e2.entry.js.map +1 -0
- package/dist/pine-core/p-867aee19.entry.js +2 -0
- package/dist/pine-core/p-867aee19.entry.js.map +1 -0
- package/dist/pine-core/p-8701cb7b.system.entry.js +2 -0
- package/dist/pine-core/p-8701cb7b.system.entry.js.map +1 -0
- package/dist/pine-core/p-87b61d15.system.entry.js +2 -0
- package/dist/pine-core/p-87b61d15.system.entry.js.map +1 -0
- package/dist/pine-core/p-8a1b3866.entry.js +2 -0
- package/dist/pine-core/p-8a1b3866.entry.js.map +1 -0
- package/dist/pine-core/p-8c719c49.entry.js +2 -0
- package/dist/pine-core/p-8c719c49.entry.js.map +1 -0
- package/dist/pine-core/p-8f3273ed.system.entry.js +2 -0
- package/dist/pine-core/p-8f3273ed.system.entry.js.map +1 -0
- package/dist/pine-core/p-8fcfa336.entry.js +2 -0
- package/dist/pine-core/p-8fcfa336.entry.js.map +1 -0
- package/dist/pine-core/p-90694e70.entry.js +2 -0
- package/dist/pine-core/p-90694e70.entry.js.map +1 -0
- package/dist/pine-core/p-91bb8017.entry.js +2 -0
- package/dist/pine-core/p-91bb8017.entry.js.map +1 -0
- package/dist/pine-core/p-924a951b.system.entry.js +2 -0
- package/dist/pine-core/p-924a951b.system.entry.js.map +1 -0
- package/dist/pine-core/p-9c538ab0.entry.js +2 -0
- package/dist/pine-core/p-9c538ab0.entry.js.map +1 -0
- package/dist/pine-core/p-9d959d25.system.entry.js +2 -0
- package/dist/pine-core/p-9d959d25.system.entry.js.map +1 -0
- package/dist/pine-core/p-ad997571.system.entry.js +2 -0
- package/dist/pine-core/p-ad997571.system.entry.js.map +1 -0
- package/dist/pine-core/p-b1363254.entry.js +2 -0
- package/dist/pine-core/p-b1363254.entry.js.map +1 -0
- package/dist/pine-core/p-b47f8855.entry.js +2 -0
- package/dist/pine-core/p-b47f8855.entry.js.map +1 -0
- package/dist/pine-core/p-b480d80a.entry.js +2 -0
- package/dist/pine-core/p-b480d80a.entry.js.map +1 -0
- package/dist/pine-core/p-b5859bbd.system.entry.js +2 -0
- package/dist/pine-core/p-b5859bbd.system.entry.js.map +1 -0
- package/dist/pine-core/p-b978c861.entry.js +2 -0
- package/dist/pine-core/p-b978c861.entry.js.map +1 -0
- package/dist/pine-core/p-bdc39517.system.entry.js +2 -0
- package/dist/pine-core/p-bdc39517.system.entry.js.map +1 -0
- package/dist/pine-core/p-c03cfc96.js +2 -0
- package/dist/pine-core/p-c03cfc96.js.map +1 -0
- package/dist/pine-core/p-c56d871e.system.entry.js +2 -0
- package/dist/pine-core/p-c56d871e.system.entry.js.map +1 -0
- package/dist/pine-core/p-cca53530.system.entry.js +2 -0
- package/dist/pine-core/p-cca53530.system.entry.js.map +1 -0
- package/dist/pine-core/p-cddeae53.entry.js +2 -0
- package/dist/pine-core/p-cddeae53.entry.js.map +1 -0
- package/dist/pine-core/p-d33de2b3.system.entry.js +2 -0
- package/dist/pine-core/p-d33de2b3.system.entry.js.map +1 -0
- package/dist/pine-core/p-dcc876d5.entry.js +2 -0
- package/dist/pine-core/p-dcc876d5.entry.js.map +1 -0
- package/dist/pine-core/p-e1255160.js +2 -0
- package/dist/pine-core/p-e1255160.js.map +1 -0
- package/dist/pine-core/p-ece97e5b.system.js +2 -0
- package/dist/pine-core/p-ece97e5b.system.js.map +1 -0
- package/dist/pine-core/p-ee65aef1.system.js +2 -0
- package/dist/pine-core/p-ee65aef1.system.js.map +1 -0
- package/dist/pine-core/p-efc85823.js +2 -0
- package/dist/pine-core/p-efc85823.js.map +1 -0
- package/dist/pine-core/p-f1610dff.system.entry.js +2 -0
- package/dist/pine-core/p-f1610dff.system.entry.js.map +1 -0
- package/dist/pine-core/p-f666c482.entry.js +2 -0
- package/dist/pine-core/p-f666c482.entry.js.map +1 -0
- package/dist/pine-core/p-f80b45a9.system.entry.js +2 -0
- package/dist/pine-core/p-f80b45a9.system.entry.js.map +1 -0
- package/dist/pine-core/p-f92e85c4.entry.js +2 -0
- package/dist/pine-core/p-f92e85c4.entry.js.map +1 -0
- package/dist/pine-core/p-fc202585.entry.js +2 -0
- package/dist/pine-core/p-fc202585.entry.js.map +1 -0
- package/dist/pine-core/pine-core.css +1 -180
- package/dist/pine-core/pine-core.esm.js +1 -52
- package/dist/pine-core/pine-core.esm.js.map +1 -1
- package/dist/pine-core/pine-core.js +127 -0
- package/hydrate/index.js +28 -28
- package/package.json +1 -1
- package/dist/pine-core/index-00e73f84.js +0 -329
- package/dist/pine-core/index-00e73f84.js.map +0 -1
- package/dist/pine-core/index-cccc19b7.js.map +0 -1
- package/dist/pine-core/pds-accordion.entry.js.map +0 -1
- package/dist/pine-core/pds-avatar.entry.js.map +0 -1
- package/dist/pine-core/pds-box.entry.js +0 -77
- package/dist/pine-core/pds-box.entry.js.map +0 -1
- package/dist/pine-core/pds-button.entry.js.map +0 -1
- package/dist/pine-core/pds-checkbox.entry.js.map +0 -1
- package/dist/pine-core/pds-chip.entry.js +0 -46
- package/dist/pine-core/pds-chip.entry.js.map +0 -1
- package/dist/pine-core/pds-copytext.entry.js.map +0 -1
- package/dist/pine-core/pds-divider.entry.js +0 -31
- package/dist/pine-core/pds-divider.entry.js.map +0 -1
- package/dist/pine-core/pds-image.entry.js.map +0 -1
- package/dist/pine-core/pds-input.entry.js.map +0 -1
- package/dist/pine-core/pds-link.entry.js.map +0 -1
- package/dist/pine-core/pds-loader.entry.js +0 -44
- package/dist/pine-core/pds-loader.entry.js.map +0 -1
- package/dist/pine-core/pds-progress.entry.js +0 -23
- package/dist/pine-core/pds-progress.entry.js.map +0 -1
- package/dist/pine-core/pds-radio.entry.js.map +0 -1
- package/dist/pine-core/pds-row.entry.js +0 -46
- package/dist/pine-core/pds-row.entry.js.map +0 -1
- package/dist/pine-core/pds-sortable-item.entry.js +0 -30
- package/dist/pine-core/pds-sortable-item.entry.js.map +0 -1
- package/dist/pine-core/pds-sortable.entry.js.map +0 -1
- package/dist/pine-core/pds-switch.entry.js.map +0 -1
- package/dist/pine-core/pds-tab.entry.js +0 -29
- package/dist/pine-core/pds-tab.entry.js.map +0 -1
- package/dist/pine-core/pds-table-body.entry.js.map +0 -1
- package/dist/pine-core/pds-table-cell.entry.js.map +0 -1
- package/dist/pine-core/pds-table-head-cell.entry.js.map +0 -1
- package/dist/pine-core/pds-table-head.entry.js.map +0 -1
- package/dist/pine-core/pds-table-row.entry.js.map +0 -1
- package/dist/pine-core/pds-tabpanel.entry.js.map +0 -1
- package/dist/pine-core/pds-tabs.entry.js.map +0 -1
- package/dist/pine-core/pds-textarea.entry.js.map +0 -1
- package/dist/pine-core/pds-tooltip.entry.js.map +0 -1
- package/dist/pine-core/shadow-css-2e0fed52.js +0 -478
- package/dist/pine-core/shadow-css-2e0fed52.js.map +0 -1
- /package/dist/{pine-core → esm}/app-globals-0f993ce5.js +0 -0
- /package/dist/{pine-core → esm}/app-globals-0f993ce5.js.map +0 -0
- /package/dist/{pine-core → esm}/closest-d2d192be.js +0 -0
- /package/dist/{pine-core → esm}/closest-d2d192be.js.map +0 -0
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
|
+
export class PdsTable {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.compact = undefined;
|
|
5
|
+
this.componentId = undefined;
|
|
6
|
+
this.responsive = undefined;
|
|
7
|
+
this.fixedColumn = undefined;
|
|
8
|
+
this.selectable = undefined;
|
|
9
|
+
this.sortingColumn = null;
|
|
10
|
+
this.sortingDirection = 'asc';
|
|
11
|
+
}
|
|
12
|
+
componentWillLoad() {
|
|
13
|
+
this.sortingColumn = null;
|
|
14
|
+
}
|
|
15
|
+
classNames() {
|
|
16
|
+
const classNames = ['pds-table'];
|
|
17
|
+
if (this.compact) {
|
|
18
|
+
classNames.push('is-compact');
|
|
19
|
+
}
|
|
20
|
+
if (this.responsive) {
|
|
21
|
+
classNames.push('is-responsive');
|
|
22
|
+
}
|
|
23
|
+
return classNames.join(' ');
|
|
24
|
+
}
|
|
25
|
+
sortTable(column, direction) {
|
|
26
|
+
const tableBody = this.el.querySelector('pds-table-body');
|
|
27
|
+
// Get the rows in the table body
|
|
28
|
+
const tableRows = Array.from(tableBody.querySelectorAll('pds-table-row'));
|
|
29
|
+
// Find the column index based on the column name
|
|
30
|
+
const columnHeaderCells = Array.from(this.el.querySelectorAll('pds-table-head-cell[sortable]'));
|
|
31
|
+
const columnHeaderCell = columnHeaderCells.find((cell) => cell.innerText.trim() === column);
|
|
32
|
+
if (!columnHeaderCell) {
|
|
33
|
+
console.warn(`Column "${column}" not found.`);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const columnIndex = columnHeaderCells.indexOf(columnHeaderCell);
|
|
37
|
+
// Sort the rows based on the content of the specified column
|
|
38
|
+
tableRows.sort((a, b) => {
|
|
39
|
+
const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();
|
|
40
|
+
const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();
|
|
41
|
+
if (direction === 'asc') {
|
|
42
|
+
return valueA.localeCompare(valueB);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
return valueB.localeCompare(valueA);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
// Clear and append the sorted rows back to the table body
|
|
49
|
+
tableBody.innerHTML = '';
|
|
50
|
+
tableRows.forEach((row) => {
|
|
51
|
+
tableBody.appendChild(row);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
handleTableSort(event) {
|
|
55
|
+
const { direction } = event.detail;
|
|
56
|
+
this.sortTable(event.detail.column, direction);
|
|
57
|
+
this.sortingColumn = event.detail.column;
|
|
58
|
+
this.sortingDirection = direction;
|
|
59
|
+
}
|
|
60
|
+
handleTableSelectAll(event) {
|
|
61
|
+
if (event.defaultPrevented)
|
|
62
|
+
return;
|
|
63
|
+
const pdsTableBody = this.el.querySelector('pds-table-body');
|
|
64
|
+
const tableRows = Array.from(pdsTableBody.querySelectorAll('pds-table-row'));
|
|
65
|
+
tableRows.forEach((row) => {
|
|
66
|
+
row.isSelected = event.detail.isSelected;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
async handleTableSelect(event) {
|
|
70
|
+
if (event.defaultPrevented)
|
|
71
|
+
return;
|
|
72
|
+
const allTableRows = this.el.querySelectorAll('pds-table-row');
|
|
73
|
+
const allSelectedRows = Array.from(allTableRows).every((row) => row.isSelected);
|
|
74
|
+
const noneSelectedRows = Array.from(allTableRows).every((row) => !row.isSelected);
|
|
75
|
+
const pdsTableHead = this.el.querySelector('pds-table-head');
|
|
76
|
+
if (!pdsTableHead)
|
|
77
|
+
return;
|
|
78
|
+
const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');
|
|
79
|
+
headerCheckbox.checked = allSelectedRows;
|
|
80
|
+
headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;
|
|
81
|
+
}
|
|
82
|
+
render() {
|
|
83
|
+
return (h(Host, { key: '95cc4db296681faa0fc046c9b1d6807d640b7730', class: this.classNames(), id: this.componentId, role: "grid", selectable: this.selectable, tabindex: "0" }, h("slot", { key: 'ecc9bc0761409d5a2819a05d72290c294e27454f' })));
|
|
84
|
+
}
|
|
85
|
+
static get is() { return "pds-table"; }
|
|
86
|
+
static get encapsulation() { return "shadow"; }
|
|
87
|
+
static get originalStyleUrls() {
|
|
88
|
+
return {
|
|
89
|
+
"$": ["pds-table.scss"]
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
static get styleUrls() {
|
|
93
|
+
return {
|
|
94
|
+
"$": ["pds-table.css"]
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
static get properties() {
|
|
98
|
+
return {
|
|
99
|
+
"compact": {
|
|
100
|
+
"type": "boolean",
|
|
101
|
+
"mutable": false,
|
|
102
|
+
"complexType": {
|
|
103
|
+
"original": "boolean",
|
|
104
|
+
"resolved": "boolean",
|
|
105
|
+
"references": {}
|
|
106
|
+
},
|
|
107
|
+
"required": false,
|
|
108
|
+
"optional": false,
|
|
109
|
+
"docs": {
|
|
110
|
+
"tags": [],
|
|
111
|
+
"text": "Determines if table displays compact which reduces the spacing of table cells."
|
|
112
|
+
},
|
|
113
|
+
"attribute": "compact",
|
|
114
|
+
"reflect": false
|
|
115
|
+
},
|
|
116
|
+
"componentId": {
|
|
117
|
+
"type": "string",
|
|
118
|
+
"mutable": false,
|
|
119
|
+
"complexType": {
|
|
120
|
+
"original": "string",
|
|
121
|
+
"resolved": "string",
|
|
122
|
+
"references": {}
|
|
123
|
+
},
|
|
124
|
+
"required": true,
|
|
125
|
+
"optional": false,
|
|
126
|
+
"docs": {
|
|
127
|
+
"tags": [],
|
|
128
|
+
"text": "A unique identifier used for the table `id` attribute."
|
|
129
|
+
},
|
|
130
|
+
"attribute": "component-id",
|
|
131
|
+
"reflect": false
|
|
132
|
+
},
|
|
133
|
+
"responsive": {
|
|
134
|
+
"type": "boolean",
|
|
135
|
+
"mutable": false,
|
|
136
|
+
"complexType": {
|
|
137
|
+
"original": "boolean",
|
|
138
|
+
"resolved": "boolean",
|
|
139
|
+
"references": {}
|
|
140
|
+
},
|
|
141
|
+
"required": false,
|
|
142
|
+
"optional": false,
|
|
143
|
+
"docs": {
|
|
144
|
+
"tags": [],
|
|
145
|
+
"text": "Enables the table to be responsive by horizontally scrolling on smaller screens."
|
|
146
|
+
},
|
|
147
|
+
"attribute": "responsive",
|
|
148
|
+
"reflect": false
|
|
149
|
+
},
|
|
150
|
+
"fixedColumn": {
|
|
151
|
+
"type": "boolean",
|
|
152
|
+
"mutable": false,
|
|
153
|
+
"complexType": {
|
|
154
|
+
"original": "boolean",
|
|
155
|
+
"resolved": "boolean",
|
|
156
|
+
"references": {}
|
|
157
|
+
},
|
|
158
|
+
"required": false,
|
|
159
|
+
"optional": false,
|
|
160
|
+
"docs": {
|
|
161
|
+
"tags": [],
|
|
162
|
+
"text": "Determines if table displays fixed column which fixes the first column of the table."
|
|
163
|
+
},
|
|
164
|
+
"attribute": "fixed-column",
|
|
165
|
+
"reflect": false
|
|
166
|
+
},
|
|
167
|
+
"selectable": {
|
|
168
|
+
"type": "boolean",
|
|
169
|
+
"mutable": false,
|
|
170
|
+
"complexType": {
|
|
171
|
+
"original": "boolean",
|
|
172
|
+
"resolved": "boolean",
|
|
173
|
+
"references": {}
|
|
174
|
+
},
|
|
175
|
+
"required": false,
|
|
176
|
+
"optional": false,
|
|
177
|
+
"docs": {
|
|
178
|
+
"tags": [],
|
|
179
|
+
"text": "Determines if table displays checkboxes for selectable rows."
|
|
180
|
+
},
|
|
181
|
+
"attribute": "selectable",
|
|
182
|
+
"reflect": false
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
static get states() {
|
|
187
|
+
return {
|
|
188
|
+
"sortingColumn": {},
|
|
189
|
+
"sortingDirection": {}
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
static get events() {
|
|
193
|
+
return [{
|
|
194
|
+
"method": "pdsTableSelect",
|
|
195
|
+
"name": "pdsTableSelect",
|
|
196
|
+
"bubbles": true,
|
|
197
|
+
"cancelable": true,
|
|
198
|
+
"composed": true,
|
|
199
|
+
"docs": {
|
|
200
|
+
"tags": [],
|
|
201
|
+
"text": "Event that is emitted when the checkbox is clicked, carrying the rowIndex and selected value."
|
|
202
|
+
},
|
|
203
|
+
"complexType": {
|
|
204
|
+
"original": "{ rowIndex: number; isSelected: boolean }",
|
|
205
|
+
"resolved": "{ rowIndex: number; isSelected: boolean; }",
|
|
206
|
+
"references": {}
|
|
207
|
+
}
|
|
208
|
+
}, {
|
|
209
|
+
"method": "pdsTableSelectAll",
|
|
210
|
+
"name": "pdsTableSelectAll",
|
|
211
|
+
"bubbles": true,
|
|
212
|
+
"cancelable": true,
|
|
213
|
+
"composed": true,
|
|
214
|
+
"docs": {
|
|
215
|
+
"tags": [],
|
|
216
|
+
"text": "Event that is emitted when the select all checkbox is clicked, carrying the selected value."
|
|
217
|
+
},
|
|
218
|
+
"complexType": {
|
|
219
|
+
"original": "{ isSelected: boolean }",
|
|
220
|
+
"resolved": "{ isSelected: boolean; }",
|
|
221
|
+
"references": {}
|
|
222
|
+
}
|
|
223
|
+
}];
|
|
224
|
+
}
|
|
225
|
+
static get elementRef() { return "el"; }
|
|
226
|
+
static get listeners() {
|
|
227
|
+
return [{
|
|
228
|
+
"name": "pdsTableSort",
|
|
229
|
+
"method": "handleTableSort",
|
|
230
|
+
"target": undefined,
|
|
231
|
+
"capture": false,
|
|
232
|
+
"passive": false
|
|
233
|
+
}, {
|
|
234
|
+
"name": "pdsTableSelectAll",
|
|
235
|
+
"method": "handleTableSelectAll",
|
|
236
|
+
"target": undefined,
|
|
237
|
+
"capture": false,
|
|
238
|
+
"passive": false
|
|
239
|
+
}, {
|
|
240
|
+
"name": "pdsTableRowSelected",
|
|
241
|
+
"method": "handleTableSelect",
|
|
242
|
+
"target": undefined,
|
|
243
|
+
"capture": false,
|
|
244
|
+
"passive": false
|
|
245
|
+
}];
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
//# sourceMappingURL=pds-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pds-table.js","sourceRoot":"","sources":["../../../src/components/pds-table/pds-table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'pds-table',\n styleUrl: 'pds-table.scss',\n shadow: true,\n})\nexport class PdsTable {\n @Element() el: HTMLPdsTableElement;\n\n /**\n * Determines if table displays compact which reduces the spacing of table cells.\n */\n @Prop() compact: boolean;\n\n /**\n * A unique identifier used for the table `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Enables the table to be responsive by horizontally scrolling on smaller screens.\n */\n @Prop() responsive: boolean;\n\n /**\n * Determines if table displays fixed column which fixes the first column of the table.\n */\n @Prop() fixedColumn: boolean;\n\n /**\n * Determines if table displays checkboxes for selectable rows.\n */\n @Prop() selectable: boolean;\n\n @State() sortingColumn: string | null = null;\n @State() sortingDirection: 'asc' | 'desc' = 'asc';\n\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the rowIndex and selected value.\n */\n @Event() pdsTableSelect: EventEmitter<{ rowIndex: number; isSelected: boolean }>;\n\n /**\n * Event that is emitted when the select all checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableSelectAll: EventEmitter<{ isSelected: boolean }>;\n\n componentWillLoad() {\n this.sortingColumn = null;\n }\n\n private classNames() {\n const classNames = ['pds-table'];\n\n if (this.compact) {\n classNames.push('is-compact');\n }\n\n if (this.responsive) {\n classNames.push('is-responsive');\n }\n\n return classNames.join(' ');\n }\n\n private sortTable(column: string, direction: 'asc' | 'desc') {\n const tableBody = this.el.querySelector('pds-table-body');\n\n // Get the rows in the table body\n const tableRows = Array.from(tableBody.querySelectorAll('pds-table-row'));\n\n // Find the column index based on the column name\n const columnHeaderCells: HTMLElement[] = Array.from(\n this.el.querySelectorAll('pds-table-head-cell[sortable]')\n );\n\n const columnHeaderCell = columnHeaderCells.find(\n (cell) => cell.innerText.trim() === column\n );\n\n if (!columnHeaderCell) {\n console.warn(`Column \"${column}\" not found.`);\n return;\n }\n\n const columnIndex = columnHeaderCells.indexOf(columnHeaderCell);\n\n // Sort the rows based on the content of the specified column\n tableRows.sort((a, b) => {\n const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n\n if (direction === 'asc') {\n return valueA.localeCompare(valueB);\n } else {\n return valueB.localeCompare(valueA);\n }\n });\n\n // Clear and append the sorted rows back to the table body\n tableBody.innerHTML = '';\n tableRows.forEach((row) => {\n tableBody.appendChild(row);\n });\n }\n\n @Listen('pdsTableSort')\n handleTableSort(event: CustomEvent<{ column: string; direction: 'asc' | 'desc' }>) {\n const { direction } = event.detail;\n this.sortTable(event.detail.column, direction);\n this.sortingColumn = event.detail.column;\n this.sortingDirection = direction;\n }\n\n @Listen('pdsTableSelectAll')\n handleTableSelectAll(event: CustomEvent<{ isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const pdsTableBody = this.el.querySelector('pds-table-body');\n const tableRows = Array.from(pdsTableBody.querySelectorAll('pds-table-row'));\n\n tableRows.forEach((row) => {\n row.isSelected = event.detail.isSelected;\n });\n }\n\n @Listen('pdsTableRowSelected')\n async handleTableSelect(event: CustomEvent<{ rowIndex: number; isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const allTableRows = this.el.querySelectorAll('pds-table-row');\n const allSelectedRows = Array.from(allTableRows).every((row) => row.isSelected);\n const noneSelectedRows = Array.from(allTableRows).every((row) => !row.isSelected);\n const pdsTableHead = this.el.querySelector('pds-table-head');\n if (!pdsTableHead) return;\n\n const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');\n headerCheckbox.checked = allSelectedRows;\n headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { html } from 'lit-html';
|
|
2
|
+
import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
|
|
3
|
+
import { withActions } from '@storybook/addon-actions/decorator';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
argTypes: extractArgTypes('pds-table'),
|
|
7
|
+
component: 'pds-table',
|
|
8
|
+
decorators: [withActions],
|
|
9
|
+
parameters: {
|
|
10
|
+
actions: {
|
|
11
|
+
handles: ['onclick', 'pdsTableRowSelected', 'onclick', 'pdsTableSelectAll'],
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
title: 'components/Table',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const BaseTemplate = (args) => html`
|
|
18
|
+
<pds-table
|
|
19
|
+
compact="${args.compact}"
|
|
20
|
+
component-id="${args.componentId}"
|
|
21
|
+
fixed-column="${args.fixedColumn}"
|
|
22
|
+
responsive="${args.responsive}"
|
|
23
|
+
selectable="${args.selectable}"
|
|
24
|
+
>
|
|
25
|
+
<pds-table-head>
|
|
26
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
27
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
28
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
29
|
+
</pds-table-head>
|
|
30
|
+
<pds-table-body>
|
|
31
|
+
<pds-table-row value="row1">
|
|
32
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
33
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
34
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
35
|
+
</pds-table-row>
|
|
36
|
+
<pds-table-row value="row2">
|
|
37
|
+
<pds-table-cell>Row Item Bravo</pds-table-cell>
|
|
38
|
+
<pds-table-cell>Row Item Bravo</pds-table-cell>
|
|
39
|
+
<pds-table-cell>Row Item Bravo</pds-table-cell>
|
|
40
|
+
</pds-table-row>
|
|
41
|
+
<pds-table-row value="row3">
|
|
42
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
43
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
44
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
45
|
+
</pds-table-row>
|
|
46
|
+
</pds-table-body>
|
|
47
|
+
</pds-table>`;
|
|
48
|
+
|
|
49
|
+
const ResponsiveTemplate = (args) => html`
|
|
50
|
+
<pds-table
|
|
51
|
+
compact="${args.compact}"
|
|
52
|
+
component-id="${args.componentId}"
|
|
53
|
+
fixed-column="${args.fixedColumn}"
|
|
54
|
+
responsive="${args.responsive}"
|
|
55
|
+
selectable="${args.selectable}"
|
|
56
|
+
>
|
|
57
|
+
<pds-table-head>
|
|
58
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
59
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
60
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
61
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
62
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
63
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
64
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
65
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
66
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
67
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
68
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
69
|
+
<pds-table-head-cell>Column Title</pds-table-head-cell>
|
|
70
|
+
</pds-table-head>
|
|
71
|
+
<pds-table-body>
|
|
72
|
+
<pds-table-row value="responsive1">
|
|
73
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
74
|
+
<pds-table-cell>Row Item Beta</pds-table-cell>
|
|
75
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
76
|
+
<pds-table-cell>Row Item Delta</pds-table-cell>
|
|
77
|
+
<pds-table-cell>Row Item Echo</pds-table-cell>
|
|
78
|
+
<pds-table-cell>Row Item Foxtrot</pds-table-cell>
|
|
79
|
+
<pds-table-cell>Row Item Golf</pds-table-cell>
|
|
80
|
+
<pds-table-cell>Row Item Hotel</pds-table-cell>
|
|
81
|
+
<pds-table-cell>Row Item Juliett</pds-table-cell>
|
|
82
|
+
<pds-table-cell>Row Item Kilo</pds-table-cell>
|
|
83
|
+
<pds-table-cell>Row Item Lima</pds-table-cell>
|
|
84
|
+
<pds-table-cell>Row Item Mike</pds-table-cell>
|
|
85
|
+
</pds-table-row>
|
|
86
|
+
<pds-table-row value="responsive2">
|
|
87
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
88
|
+
<pds-table-cell>Row Item Beta</pds-table-cell>
|
|
89
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
90
|
+
<pds-table-cell>Row Item Delta</pds-table-cell>
|
|
91
|
+
<pds-table-cell>Row Item Echo</pds-table-cell>
|
|
92
|
+
<pds-table-cell>Row Item Foxtrot</pds-table-cell>
|
|
93
|
+
<pds-table-cell>Row Item Golf</pds-table-cell>
|
|
94
|
+
<pds-table-cell>Row Item Hotel</pds-table-cell>
|
|
95
|
+
<pds-table-cell>Row Item Juliett</pds-table-cell>
|
|
96
|
+
<pds-table-cell>Row Item Kilo</pds-table-cell>
|
|
97
|
+
<pds-table-cell>Row Item Lima</pds-table-cell>
|
|
98
|
+
<pds-table-cell>Row Item Mike</pds-table-cell>
|
|
99
|
+
</pds-table-row>
|
|
100
|
+
<pds-table-row value="responsive3">
|
|
101
|
+
<pds-table-cell>Row Item Alpha</pds-table-cell>
|
|
102
|
+
<pds-table-cell>Row Item Beta</pds-table-cell>
|
|
103
|
+
<pds-table-cell>Row Item Charlie</pds-table-cell>
|
|
104
|
+
<pds-table-cell>Row Item Delta</pds-table-cell>
|
|
105
|
+
<pds-table-cell>Row Item Echo</pds-table-cell>
|
|
106
|
+
<pds-table-cell>Row Item Foxtrot</pds-table-cell>
|
|
107
|
+
<pds-table-cell>Row Item Golf</pds-table-cell>
|
|
108
|
+
<pds-table-cell>Row Item Hotel</pds-table-cell>
|
|
109
|
+
<pds-table-cell>Row Item Juliett</pds-table-cell>
|
|
110
|
+
<pds-table-cell>Row Item Kilo</pds-table-cell>
|
|
111
|
+
<pds-table-cell>Row Item Lima</pds-table-cell>
|
|
112
|
+
<pds-table-cell>Row Item Mike</pds-table-cell>
|
|
113
|
+
</pds-table-row>
|
|
114
|
+
</pds-table-body>
|
|
115
|
+
</pds-table>`;
|
|
116
|
+
|
|
117
|
+
const SortableTemplate = (args) => html`
|
|
118
|
+
<pds-table
|
|
119
|
+
compact="${args.compact}"
|
|
120
|
+
component-id="${args.componentId}"
|
|
121
|
+
fixed-column="${args.fixedColumn}"
|
|
122
|
+
responsive="${args.responsive}"
|
|
123
|
+
selectable="${args.selectable}"
|
|
124
|
+
>
|
|
125
|
+
<pds-table-head>
|
|
126
|
+
<pds-table-head-cell sortable=${args.sortable}>Name</pds-table-head-cell>
|
|
127
|
+
<pds-table-head-cell sortable=${args.sortable}>Email</pds-table-head-cell>
|
|
128
|
+
<pds-table-head-cell sortable=${args.sortable}>Email Marketing</pds-table-head-cell>
|
|
129
|
+
</pds-table-head>
|
|
130
|
+
<pds-table-body>
|
|
131
|
+
<pds-table-row>
|
|
132
|
+
<pds-table-cell>John Doe</pds-table-cell>
|
|
133
|
+
<pds-table-cell>john.doe@example.com</pds-table-cell>
|
|
134
|
+
<pds-table-cell>Subscribed</pds-table-cell>
|
|
135
|
+
</pds-table-row>
|
|
136
|
+
<pds-table-row>
|
|
137
|
+
<pds-table-cell>Jane Smith</pds-table-cell>
|
|
138
|
+
<pds-table-cell>jane.smith@example.com</pds-table-cell>
|
|
139
|
+
<pds-table-cell>Not Subscribed</pds-table-cell>
|
|
140
|
+
</pds-table-row>
|
|
141
|
+
<pds-table-row>
|
|
142
|
+
<pds-table-cell>Michael Johnson</pds-table-cell>
|
|
143
|
+
<pds-table-cell>michael.johnson@example.com</pds-table-cell>
|
|
144
|
+
<pds-table-cell>Subscribed</pds-table-cell>
|
|
145
|
+
</pds-table-row>
|
|
146
|
+
<pds-table-row>
|
|
147
|
+
<pds-table-cell>Susan Brown</pds-table-cell>
|
|
148
|
+
<pds-table-cell>susan.brown@example.com</pds-table-cell>
|
|
149
|
+
<pds-table-cell>Not Subscribed</pds-table-cell>
|
|
150
|
+
</pds-table-row>
|
|
151
|
+
<pds-table-row>
|
|
152
|
+
<pds-table-cell>William Davis</pds-table-cell>
|
|
153
|
+
<pds-table-cell>william.davis@example.com</pds-table-cell>
|
|
154
|
+
<pds-table-cell>Subscribed</pds-table-cell>
|
|
155
|
+
</pds-table-row>
|
|
156
|
+
<pds-table-row>
|
|
157
|
+
<pds-table-cell>Mary Wilson</pds-table-cell>
|
|
158
|
+
<pds-table-cell>mary.wilson@example.com</pds-table-cell>
|
|
159
|
+
<pds-table-cell>Not Subscribed</pds-table-cell>
|
|
160
|
+
</pds-table-row>
|
|
161
|
+
<pds-table-row>
|
|
162
|
+
<pds-table-cell>James Lee</pds-table-cell>
|
|
163
|
+
<pds-table-cell>james.lee@example.com</pds-table-cell>
|
|
164
|
+
<pds-table-cell>Subscribed</pds-table-cell>
|
|
165
|
+
</pds-table-row>
|
|
166
|
+
<pds-table-row>
|
|
167
|
+
<pds-table-cell>Linda Hall</pds-table-cell>
|
|
168
|
+
<pds-table-cell>linda.hall@example.com</pds-table-cell>
|
|
169
|
+
<pds-table-cell>Not Subscribed</pds-table-cell>
|
|
170
|
+
</pds-table-row>
|
|
171
|
+
</pds-table-body>
|
|
172
|
+
</pds-table>`;
|
|
173
|
+
|
|
174
|
+
export const Default = BaseTemplate.bind();
|
|
175
|
+
Default.args = {
|
|
176
|
+
compact: false,
|
|
177
|
+
componentId: 'default',
|
|
178
|
+
fixedColumn: false,
|
|
179
|
+
responsive: false,
|
|
180
|
+
selectable: false,
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
export const Compact = BaseTemplate.bind();
|
|
184
|
+
Compact.args = {
|
|
185
|
+
compact: true,
|
|
186
|
+
componentId: 'compact',
|
|
187
|
+
fixedColumn: false,
|
|
188
|
+
responsive: false,
|
|
189
|
+
selectable: false,
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
export const Selectable = BaseTemplate.bind();
|
|
193
|
+
Selectable.args = {
|
|
194
|
+
compact: false,
|
|
195
|
+
componentId: 'selectable',
|
|
196
|
+
fixedColumn: false,
|
|
197
|
+
responsive: false,
|
|
198
|
+
selectable: true,
|
|
199
|
+
};
|
|
200
|
+
|
|
201
|
+
export const Responsive = ResponsiveTemplate.bind();
|
|
202
|
+
Responsive.args = {
|
|
203
|
+
compact: false,
|
|
204
|
+
componentId: 'responsive',
|
|
205
|
+
fixedColumn: false,
|
|
206
|
+
responsive: true,
|
|
207
|
+
selectable: false,
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
export const fixedColumn = ResponsiveTemplate.bind();
|
|
211
|
+
fixedColumn.args = {
|
|
212
|
+
compact: false,
|
|
213
|
+
componentId: 'responsive',
|
|
214
|
+
fixedColumn: true,
|
|
215
|
+
responsive: true,
|
|
216
|
+
selectable: false,
|
|
217
|
+
};
|
|
218
|
+
|
|
219
|
+
export const Sortable = SortableTemplate.bind();
|
|
220
|
+
Sortable.args = {
|
|
221
|
+
compact: false,
|
|
222
|
+
componentId: 'sortable',
|
|
223
|
+
fixedColumn: false,
|
|
224
|
+
responsive: false,
|
|
225
|
+
selectable: false,
|
|
226
|
+
sortable: true,
|
|
227
|
+
};
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
pds-tab {
|
|
2
|
+
--border-none: var(--pine-border-width-none);
|
|
3
|
+
--border-radius-availability: var(--pine-border-radius-100);
|
|
4
|
+
--border-radius-default: var(--pine-border-radius-125);
|
|
5
|
+
--border-radius-none: var(--pine-border-radius-0);
|
|
6
|
+
--box-shadow-focus: 0 0 0 2px var(--pine-color-blue-200);
|
|
7
|
+
--color-background-active: var(--pine-color-charcoal-400);
|
|
8
|
+
--color-background-availability: var(--pine-color-white);
|
|
9
|
+
--color-background-default: var(--pine-color-grey-300);
|
|
10
|
+
--color-background-hover: var(--pine-color-grey-400);
|
|
11
|
+
--color-text-active: var(--pine-color-charcoal-400);
|
|
12
|
+
--color-text-active-inverse: var(--pine-color-white);
|
|
13
|
+
--color-text-default: var(--pine-color-charcoal-200);
|
|
14
|
+
--color-text-focus: var(--pine-color-charcoal-300);
|
|
15
|
+
--font-size-availability-content: var(--pine-font-size-075);
|
|
16
|
+
--font-size-default: var(--pine-font-size-100);
|
|
17
|
+
--font-size-filter-content: var(--pine-font-size-087);
|
|
18
|
+
--font-weight-default: var(--pine-font-weight-medium);
|
|
19
|
+
--line-height-availability-content: var(--pine-line-height-100);
|
|
20
|
+
--line-height-default: var(--pine-line-height-150);
|
|
21
|
+
--line-height-filter-content: var(--pine-line-height-125);
|
|
22
|
+
--outline: 4px solid var(--pine-color-blue-200);
|
|
23
|
+
--spacing-padding-none: var(--pine-spacing-0);
|
|
24
|
+
display: inline-block;
|
|
25
|
+
position: relative;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.pds-tab {
|
|
29
|
+
appearance: none;
|
|
30
|
+
background-color: transparent;
|
|
31
|
+
border: var(--border-none);
|
|
32
|
+
box-shadow: none;
|
|
33
|
+
color: inherit;
|
|
34
|
+
cursor: pointer;
|
|
35
|
+
font-family: inherit;
|
|
36
|
+
padding: var(--spacing-padding-none);
|
|
37
|
+
align-items: center;
|
|
38
|
+
color: var(--color-text-default);
|
|
39
|
+
display: inline-flex;
|
|
40
|
+
position: relative;
|
|
41
|
+
text-decoration: none;
|
|
42
|
+
white-space: nowrap;
|
|
43
|
+
}
|
|
44
|
+
.pds-tab.is-active, .pds-tab[aria-selected=true] {
|
|
45
|
+
color: var(--color-text-active);
|
|
46
|
+
}
|
|
47
|
+
.pds-tab.is-active .pds-tab__content::after, .pds-tab[aria-selected=true] .pds-tab__content::after {
|
|
48
|
+
opacity: 1;
|
|
49
|
+
}
|
|
50
|
+
.pds-tab:hover {
|
|
51
|
+
color: var(--color-text-active);
|
|
52
|
+
}
|
|
53
|
+
.pds-tab:focus-visible {
|
|
54
|
+
box-shadow: var(--box-shadow-focus);
|
|
55
|
+
outline: none;
|
|
56
|
+
}
|
|
57
|
+
.pds-tab .pds-tab__content {
|
|
58
|
+
font-family: inherit;
|
|
59
|
+
font-size: var(--font-size-default);
|
|
60
|
+
font-weight: var(--font-weight-default);
|
|
61
|
+
line-height: var(--line-height-default);
|
|
62
|
+
padding-block-end: 11px;
|
|
63
|
+
position: relative;
|
|
64
|
+
}
|
|
65
|
+
.pds-tab .pds-tab__content::after {
|
|
66
|
+
background-color: currentColor;
|
|
67
|
+
bottom: 0;
|
|
68
|
+
content: "";
|
|
69
|
+
height: 3px;
|
|
70
|
+
left: 0;
|
|
71
|
+
opacity: 0;
|
|
72
|
+
position: absolute;
|
|
73
|
+
right: 0;
|
|
74
|
+
}
|
|
75
|
+
.pds-tab .pds-tab-edge {
|
|
76
|
+
display: none;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.pds-tabs--availability {
|
|
80
|
+
--color-background-tab: transparent;
|
|
81
|
+
}
|
|
82
|
+
.pds-tabs--availability .pds-tab {
|
|
83
|
+
background-color: var(--color-background-tab);
|
|
84
|
+
border-radius: var(--border-radius-availability) var(--border-radius-availability) var(--border-radius-none) var(--border-radius-none);
|
|
85
|
+
padding: 8px 16px 13px;
|
|
86
|
+
}
|
|
87
|
+
.pds-tabs--availability .pds-tab.is-active, .pds-tabs--availability .pds-tab[aria-selected=true] {
|
|
88
|
+
--color-background-tab: var(--color-background-availability);
|
|
89
|
+
}
|
|
90
|
+
.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after, .pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after {
|
|
91
|
+
opacity: 1;
|
|
92
|
+
}
|
|
93
|
+
.pds-tabs--availability .pds-tab.is-active .pds-tab-edge, .pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge {
|
|
94
|
+
z-index: 1;
|
|
95
|
+
}
|
|
96
|
+
.pds-tabs--availability .pds-tab:hover:not(.is-active, [aria-selected=true]) {
|
|
97
|
+
--color-background-tab: var(--color-background-default);
|
|
98
|
+
}
|
|
99
|
+
.pds-tabs--availability .pds-tab:focus-visible {
|
|
100
|
+
color: var(--color-text-default);
|
|
101
|
+
}
|
|
102
|
+
.pds-tabs--availability .pds-tab__content {
|
|
103
|
+
font-size: var(--font-size-availability-content);
|
|
104
|
+
line-height: var(--line-height-availability-content);
|
|
105
|
+
padding-bottom: 7px;
|
|
106
|
+
}
|
|
107
|
+
.pds-tabs--availability .pds-tab-edge {
|
|
108
|
+
bottom: 0;
|
|
109
|
+
display: block;
|
|
110
|
+
height: 8px;
|
|
111
|
+
inset-inline-end: 100%;
|
|
112
|
+
overflow: hidden;
|
|
113
|
+
position: absolute;
|
|
114
|
+
width: 8px;
|
|
115
|
+
}
|
|
116
|
+
.pds-tabs--availability .pds-tab-edge::before {
|
|
117
|
+
border-radius: 50%;
|
|
118
|
+
bottom: 0;
|
|
119
|
+
box-shadow: 4px 4px 0 0 var(--color-background-tab);
|
|
120
|
+
content: "";
|
|
121
|
+
display: block;
|
|
122
|
+
height: 200%;
|
|
123
|
+
inset-inline-end: 0;
|
|
124
|
+
position: absolute;
|
|
125
|
+
width: 200%;
|
|
126
|
+
}
|
|
127
|
+
.pds-tabs--availability .pds-tab-edge--end {
|
|
128
|
+
inset-inline-end: unset;
|
|
129
|
+
inset-inline-start: 100%;
|
|
130
|
+
}
|
|
131
|
+
.pds-tabs--availability .pds-tab-edge--end::before {
|
|
132
|
+
box-shadow: -4px 4px 0 0 var(--color-background-tab);
|
|
133
|
+
inset-inline-end: unset;
|
|
134
|
+
inset-inline-start: 0;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.pds-tabs--filter {
|
|
138
|
+
--color-background-tab: var(--color-background-active);
|
|
139
|
+
}
|
|
140
|
+
.pds-tabs--filter .pds-tab {
|
|
141
|
+
background-color: var(--color-background-tab);
|
|
142
|
+
border-radius: 50px;
|
|
143
|
+
color: var(--color-text-active);
|
|
144
|
+
padding: 6px 15px;
|
|
145
|
+
}
|
|
146
|
+
.pds-tabs--filter .pds-tab.is-active, .pds-tabs--filter .pds-tab[aria-selected=true] {
|
|
147
|
+
--color-background-tab: var(--color-background-active);
|
|
148
|
+
color: var(--color-text-active-inverse);
|
|
149
|
+
}
|
|
150
|
+
.pds-tabs--filter .pds-tab:hover:not(.is-active, [aria-selected=true]) {
|
|
151
|
+
--color-background-tab: var(--color-background-hover);
|
|
152
|
+
}
|
|
153
|
+
.pds-tabs--filter .pds-tab__content {
|
|
154
|
+
font-size: var(--font-size-filter-content);
|
|
155
|
+
line-height: var(--line-height-filter-content);
|
|
156
|
+
padding-block-end: 0;
|
|
157
|
+
}
|
|
158
|
+
.pds-tabs--filter .pds-tab__content::after {
|
|
159
|
+
content: unset;
|
|
160
|
+
}
|