@pine-ds/core 3.16.3 → 3.18.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/index2.js +1 -1
- package/components/index2.js.map +1 -1
- package/components/pds-button2.js +18 -6
- package/components/pds-button2.js.map +1 -1
- package/components/pds-copytext.js +49 -1
- package/components/pds-copytext.js.map +1 -1
- package/components/pds-multiselect.js +66 -15
- package/components/pds-multiselect.js.map +1 -1
- package/components/pds-table-cell2.js +36 -3
- package/components/pds-table-cell2.js.map +1 -1
- package/components/pds-table-head.js +1 -1
- package/components/pds-table-head.js.map +1 -1
- package/components/pds-table-row.js +3 -3
- package/components/pds-table-row.js.map +1 -1
- package/components/pds-table.js +12 -4
- package/components/pds-table.js.map +1 -1
- package/components/pds-text2.js +41 -1
- package/components/pds-text2.js.map +1 -1
- package/components/truncation-tooltip.js +247 -0
- package/components/truncation-tooltip.js.map +1 -0
- package/dist/cjs/{index-DkQebouX.js → index-CjhTEk39.js} +3 -3
- package/dist/cjs/index-CjhTEk39.js.map +1 -0
- package/dist/cjs/loader.cjs.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-button.cjs.entry.js +16 -6
- 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-copytext.cjs.entry.js +48 -2
- package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-filter.cjs.entry.js +1 -1
- package/dist/cjs/pds-input.cjs.entry.js +1 -1
- package/dist/cjs/pds-link.cjs.entry.js +1 -1
- package/dist/cjs/pds-multiselect.cjs.entry.js +62 -15
- package/dist/cjs/pds-multiselect.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/pds-radio.cjs.entry.js +1 -1
- package/dist/cjs/pds-select.cjs.entry.js +1 -1
- package/dist/cjs/pds-sortable-item.cjs.entry.js +1 -1
- package/dist/cjs/pds-switch.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-cell.cjs.entry.js +35 -3
- package/dist/cjs/pds-table-cell.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-head-cell.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
- package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table-row.cjs.entry.js +3 -3
- package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-table.cjs.entry.js +11 -4
- package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-text.cjs.entry.js +40 -1
- package/dist/cjs/pds-text.entry.cjs.js.map +1 -1
- package/dist/cjs/pds-textarea.cjs.entry.js +1 -1
- package/dist/cjs/pine-core.cjs.js +1 -1
- package/dist/cjs/truncation-tooltip-BGGnm8SZ.js +249 -0
- package/dist/cjs/truncation-tooltip-BGGnm8SZ.js.map +1 -0
- package/dist/collection/components/pds-button/pds-button.css +1 -1
- package/dist/collection/components/pds-button/pds-button.js +20 -4
- package/dist/collection/components/pds-button/pds-button.js.map +1 -1
- package/dist/collection/components/pds-copytext/pds-copytext.js +52 -2
- package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
- package/dist/collection/components/pds-multiselect/pds-multiselect.js +155 -14
- package/dist/collection/components/pds-multiselect/pds-multiselect.js.map +1 -1
- package/dist/collection/components/pds-multiselect/stories/pds-multiselect.stories.js +93 -0
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +1 -1
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +37 -3
- package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
- package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +3 -3
- package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js.map +1 -1
- package/dist/collection/components/pds-table/pds-table.css +1 -0
- package/dist/collection/components/pds-table/pds-table.js +33 -17
- package/dist/collection/components/pds-table/pds-table.js.map +1 -1
- package/dist/collection/components/pds-table/stories/pds-table.stories.js +58 -0
- package/dist/collection/components/pds-text/pds-text.js +43 -2
- package/dist/collection/components/pds-text/pds-text.js.map +1 -1
- package/dist/collection/components/pds-text/stories/pds-text.stories.js +21 -2
- package/dist/collection/utils/truncation-tooltip.js +242 -0
- package/dist/collection/utils/truncation-tooltip.js.map +1 -0
- package/dist/docs.json +156 -18
- package/dist/esm/{index-D094LgxJ.js → index-BFkDH5XU.js} +3 -3
- package/dist/esm/index-BFkDH5XU.js.map +1 -0
- package/dist/esm/loader.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-button.entry.js +16 -6
- 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-copytext.entry.js +49 -3
- package/dist/esm/pds-copytext.entry.js.map +1 -1
- package/dist/esm/pds-filter.entry.js +1 -1
- package/dist/esm/pds-input.entry.js +1 -1
- package/dist/esm/pds-link.entry.js +1 -1
- package/dist/esm/pds-multiselect.entry.js +62 -15
- package/dist/esm/pds-multiselect.entry.js.map +1 -1
- package/dist/esm/pds-radio-group.entry.js +1 -1
- package/dist/esm/pds-radio.entry.js +1 -1
- package/dist/esm/pds-select.entry.js +1 -1
- package/dist/esm/pds-sortable-item.entry.js +1 -1
- package/dist/esm/pds-switch.entry.js +1 -1
- package/dist/esm/pds-table-cell.entry.js +35 -3
- package/dist/esm/pds-table-cell.entry.js.map +1 -1
- package/dist/esm/pds-table-head-cell.entry.js +1 -1
- package/dist/esm/pds-table-head.entry.js +1 -1
- package/dist/esm/pds-table-head.entry.js.map +1 -1
- package/dist/esm/pds-table-row.entry.js +3 -3
- package/dist/esm/pds-table-row.entry.js.map +1 -1
- package/dist/esm/pds-table.entry.js +11 -4
- package/dist/esm/pds-table.entry.js.map +1 -1
- package/dist/esm/pds-text.entry.js +40 -1
- package/dist/esm/pds-text.entry.js.map +1 -1
- package/dist/esm/pds-textarea.entry.js +1 -1
- package/dist/esm/pine-core.js +1 -1
- package/dist/esm/truncation-tooltip-CTHpMbU3.js +247 -0
- package/dist/esm/truncation-tooltip-CTHpMbU3.js.map +1 -0
- package/dist/esm-es5/{index-D094LgxJ.js → index-BFkDH5XU.js} +1 -1
- package/dist/esm-es5/index-BFkDH5XU.js.map +1 -0
- package/dist/esm-es5/loader.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-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-copytext.entry.js +1 -1
- package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
- package/dist/esm-es5/pds-filter.entry.js +1 -1
- package/dist/esm-es5/pds-input.entry.js +1 -1
- package/dist/esm-es5/pds-link.entry.js +1 -1
- package/dist/esm-es5/pds-multiselect.entry.js +1 -1
- package/dist/esm-es5/pds-multiselect.entry.js.map +1 -1
- package/dist/esm-es5/pds-radio-group.entry.js +1 -1
- package/dist/esm-es5/pds-radio.entry.js +1 -1
- package/dist/esm-es5/pds-select.entry.js +1 -1
- package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
- package/dist/esm-es5/pds-switch.entry.js +1 -1
- package/dist/esm-es5/pds-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.entry.js +1 -1
- package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
- package/dist/esm-es5/pds-table-row.entry.js +1 -1
- package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
- package/dist/esm-es5/pds-table.entry.js +1 -1
- package/dist/esm-es5/pds-table.entry.js.map +1 -1
- package/dist/esm-es5/pds-text.entry.js +1 -1
- package/dist/esm-es5/pds-text.entry.js.map +1 -1
- package/dist/esm-es5/pds-textarea.entry.js +1 -1
- package/dist/esm-es5/pine-core.js +1 -1
- package/dist/esm-es5/truncation-tooltip-CTHpMbU3.js +2 -0
- package/dist/esm-es5/truncation-tooltip-CTHpMbU3.js.map +1 -0
- package/dist/pine-core/{p-2aac4495.system.entry.js → p-15ac22bd.system.entry.js} +2 -2
- package/dist/pine-core/{p-425144ae.entry.js → p-1cc2fe8d.entry.js} +2 -2
- package/dist/pine-core/p-203f6e9e.entry.js +2 -0
- package/dist/pine-core/p-203f6e9e.entry.js.map +1 -0
- package/dist/pine-core/{p-0ac54273.entry.js → p-276f774a.entry.js} +2 -2
- package/dist/pine-core/p-27ccbd3f.entry.js +2 -0
- package/dist/pine-core/p-27ccbd3f.entry.js.map +1 -0
- package/dist/pine-core/p-2e22a1fc.system.entry.js +2 -0
- package/dist/pine-core/p-2e22a1fc.system.entry.js.map +1 -0
- package/dist/pine-core/{p-ce069162.entry.js → p-32f65e48.entry.js} +2 -2
- package/dist/pine-core/{p-36e5e9f4.system.entry.js → p-3ea301dd.system.entry.js} +2 -2
- package/dist/pine-core/p-3ea301dd.system.entry.js.map +1 -0
- package/dist/pine-core/p-4189f1be.system.entry.js +2 -0
- package/dist/pine-core/p-4189f1be.system.entry.js.map +1 -0
- package/dist/pine-core/{p-7d7dce2c.system.entry.js → p-4232520f.system.entry.js} +2 -2
- package/dist/pine-core/{p-8e40c9ef.entry.js → p-439e3343.entry.js} +2 -2
- package/dist/pine-core/p-439e3343.entry.js.map +1 -0
- package/dist/pine-core/{p-b46f66e8.system.entry.js → p-45c1f3ea.system.entry.js} +2 -2
- package/dist/pine-core/{p-5abc5d82.system.entry.js → p-49c2e2ce.system.entry.js} +2 -2
- package/dist/pine-core/{p-b1a7a0b2.entry.js → p-4de64b1f.entry.js} +2 -2
- package/dist/pine-core/{p-94c73d98.entry.js → p-4e015ddd.entry.js} +2 -2
- package/dist/pine-core/p-4e015ddd.entry.js.map +1 -0
- package/dist/pine-core/{p-0b52923b.system.entry.js → p-52c5ced3.system.entry.js} +2 -2
- package/dist/pine-core/{p-3815f565.entry.js → p-593cee44.entry.js} +2 -2
- package/dist/pine-core/{p-73bce0bf.entry.js → p-5a7b25d0.entry.js} +2 -2
- package/dist/pine-core/p-5hPM5knE.js +2 -0
- package/dist/pine-core/p-5hPM5knE.js.map +1 -0
- package/dist/pine-core/{p-48ed8147.entry.js → p-632e398f.entry.js} +2 -2
- package/dist/pine-core/{p-957647f9.entry.js → p-663abd80.entry.js} +2 -2
- package/dist/pine-core/{p-23111b1c.system.entry.js → p-6980edfe.system.entry.js} +2 -2
- package/dist/pine-core/{p-BxVkyfaO.system.js → p-6I02BpQf.system.js} +1 -1
- package/dist/pine-core/p-6I02BpQf.system.js.map +1 -0
- package/dist/pine-core/{p-c9965216.system.entry.js → p-6fbe6be4.system.entry.js} +2 -2
- package/dist/pine-core/p-7514a191.entry.js +2 -0
- package/dist/pine-core/p-7514a191.entry.js.map +1 -0
- package/dist/pine-core/{p-bd18b9bf.system.entry.js → p-77d4f274.system.entry.js} +2 -2
- package/dist/pine-core/{p-78246e05.entry.js → p-85ce731b.entry.js} +2 -2
- package/dist/pine-core/{p-b1820970.system.entry.js → p-87cee4a0.system.entry.js} +2 -2
- package/dist/pine-core/{p-fbd8ae50.entry.js → p-88686193.entry.js} +2 -2
- package/dist/pine-core/p-88eb4f6c.entry.js +2 -0
- package/dist/pine-core/p-88eb4f6c.entry.js.map +1 -0
- package/dist/pine-core/{p-b09bde5c.system.entry.js → p-8ab66dbc.system.entry.js} +2 -2
- package/dist/pine-core/p-8be316b4.system.entry.js +2 -0
- package/dist/pine-core/p-8be316b4.system.entry.js.map +1 -0
- package/dist/pine-core/{p-7a11a6c7.entry.js → p-8f935480.entry.js} +2 -2
- package/dist/pine-core/p-9263809e.entry.js +2 -0
- package/dist/pine-core/p-9263809e.entry.js.map +1 -0
- package/dist/pine-core/{p-3f05d72e.system.entry.js → p-9e3e441c.system.entry.js} +2 -2
- package/dist/pine-core/{p-3cd53462.entry.js → p-9e8296fc.entry.js} +2 -2
- package/dist/pine-core/{p-BJPmPVaF.system.js.map → p-B3dAc5EW.system.js.map} +1 -1
- package/dist/pine-core/p-B48FyOD0.system.js.map +1 -0
- package/dist/pine-core/{p-DY97YDUU.system.js.map → p-B5CyjPYU.system.js.map} +1 -1
- package/dist/pine-core/{p-8KFA3I5T.system.js.map → p-B8CAflct.system.js.map} +1 -1
- package/dist/pine-core/{p-N-jt0_Yl.system.js.map → p-BBJXL9br.system.js.map} +1 -1
- package/dist/pine-core/{p-D094LgxJ.js → p-BFkDH5XU.js} +1 -1
- package/dist/pine-core/p-BFkDH5XU.js.map +1 -0
- package/dist/pine-core/{p-CjQwwLdV.system.js.map → p-Bd3ynCsJ.system.js.map} +1 -1
- package/dist/pine-core/{p-D4YdQDsG.system.js.map → p-BiLmvJTd.system.js.map} +1 -1
- package/dist/pine-core/{p-PZw10cnm.system.js.map → p-C8y7SAd7.system.js.map} +1 -1
- package/dist/pine-core/{p-gcCcHox5.system.js.map → p-CCh7iS6N.system.js.map} +1 -1
- package/dist/pine-core/p-CEE11B7K.system.js.map +1 -0
- package/dist/pine-core/{p-eT6pKhWF.system.js.map → p-CObf7nrT.system.js.map} +1 -1
- package/dist/pine-core/p-CPri5wQG.system.js.map +1 -0
- package/dist/pine-core/{p-D3Ug1A-l.system.js.map → p-CbRBe3Eq.system.js.map} +1 -1
- package/dist/pine-core/{p-c2oMjk1r.system.js.map → p-Ctc231vq.system.js.map} +1 -1
- package/dist/pine-core/p-DXVwADJT.system.js +2 -0
- package/dist/pine-core/p-DXVwADJT.system.js.map +1 -0
- package/dist/pine-core/p-DenbFuEN.system.js.map +1 -0
- package/dist/pine-core/{p-BnJypAy2.system.js.map → p-DhLX7iDs.system.js.map} +1 -1
- package/dist/pine-core/p-Dkz0RoFB.system.js.map +1 -0
- package/dist/pine-core/p-G3GztZmn.system.js.map +1 -0
- package/dist/pine-core/p-JAVnELnm.system.js +1 -1
- package/dist/pine-core/{p-15e554ae.entry.js → p-a30edeb1.entry.js} +2 -2
- package/dist/pine-core/{p-5O8bhSdk.system.js.map → p-aKHwHZQR.system.js.map} +1 -1
- package/dist/pine-core/{p-fce519e3.system.entry.js → p-b416cb4b.system.entry.js} +2 -2
- package/dist/pine-core/p-b416cb4b.system.entry.js.map +1 -0
- package/dist/pine-core/{p-d2b2caa2.system.entry.js → p-b6f57c0f.system.entry.js} +2 -2
- package/dist/pine-core/p-b7f2f9f3.system.entry.js +2 -0
- package/dist/pine-core/p-b7f2f9f3.system.entry.js.map +1 -0
- package/dist/pine-core/p-c25ea8de.entry.js +2 -0
- package/dist/pine-core/p-c25ea8de.entry.js.map +1 -0
- package/dist/pine-core/p-e78986ea.system.entry.js +2 -0
- package/dist/pine-core/p-e78986ea.system.entry.js.map +1 -0
- package/dist/pine-core/{p-13105538.system.entry.js → p-f795d3fe.system.entry.js} +2 -2
- package/dist/pine-core/p-f7d9bZ8U.system.js.map +1 -0
- package/dist/pine-core/p-f81b0dbb.system.entry.js +2 -0
- package/dist/pine-core/p-f81b0dbb.system.entry.js.map +1 -0
- package/dist/pine-core/{p-2d21bc31.entry.js → p-f8a2aedd.entry.js} +2 -2
- package/dist/pine-core/{p-f0df10c7.system.entry.js → p-fbe793c7.system.entry.js} +2 -2
- package/dist/pine-core/{p-CQtQQn3_.system.js.map → p-hL5Id7g5.system.js.map} +1 -1
- package/dist/pine-core/{p-BK1BTkTt.system.js.map → p-hzdqYC6e.system.js.map} +1 -1
- package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-multiselect.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.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
- package/dist/pine-core/pds-text.entry.esm.js.map +1 -1
- package/dist/pine-core/pine-core.esm.js +1 -1
- package/dist/types/components/pds-button/pds-button.d.ts +4 -0
- package/dist/types/components/pds-copytext/pds-copytext.d.ts +10 -0
- package/dist/types/components/pds-multiselect/pds-multiselect.d.ts +31 -0
- package/dist/types/components/pds-table/pds-table-cell/pds-table-cell.d.ts +7 -1
- package/dist/types/components/pds-table/pds-table-row/pds-table-row.d.ts +1 -1
- package/dist/types/components/pds-table/pds-table.d.ts +6 -7
- package/dist/types/components/pds-text/pds-text.d.ts +9 -0
- package/dist/types/components.d.ts +55 -11
- package/dist/types/utils/truncation-tooltip.d.ts +21 -0
- package/dist/vscode.html-data.json +33 -5
- package/hydrate/index.js +458 -35
- package/hydrate/index.mjs +458 -35
- package/package.json +2 -2
- package/dist/cjs/index-DkQebouX.js.map +0 -1
- package/dist/esm/index-D094LgxJ.js.map +0 -1
- package/dist/esm-es5/index-D094LgxJ.js.map +0 -1
- package/dist/pine-core/p-003884fd.entry.js +0 -2
- package/dist/pine-core/p-003884fd.entry.js.map +0 -1
- package/dist/pine-core/p-1971d358.entry.js +0 -2
- package/dist/pine-core/p-1971d358.entry.js.map +0 -1
- package/dist/pine-core/p-23aba538.entry.js +0 -2
- package/dist/pine-core/p-23aba538.entry.js.map +0 -1
- package/dist/pine-core/p-36e5e9f4.system.entry.js.map +0 -1
- package/dist/pine-core/p-3b0a4abe.entry.js +0 -2
- package/dist/pine-core/p-3b0a4abe.entry.js.map +0 -1
- package/dist/pine-core/p-3c026ec7.system.entry.js +0 -2
- package/dist/pine-core/p-3c026ec7.system.entry.js.map +0 -1
- package/dist/pine-core/p-49c4f34a.entry.js +0 -2
- package/dist/pine-core/p-49c4f34a.entry.js.map +0 -1
- package/dist/pine-core/p-6918b378.system.entry.js +0 -2
- package/dist/pine-core/p-6918b378.system.entry.js.map +0 -1
- package/dist/pine-core/p-8e40c9ef.entry.js.map +0 -1
- package/dist/pine-core/p-93d0be59.entry.js +0 -2
- package/dist/pine-core/p-93d0be59.entry.js.map +0 -1
- package/dist/pine-core/p-94c73d98.entry.js.map +0 -1
- package/dist/pine-core/p-BpZTjdau.system.js.map +0 -1
- package/dist/pine-core/p-BxVkyfaO.system.js.map +0 -1
- package/dist/pine-core/p-CjnIO2Ro.system.js.map +0 -1
- package/dist/pine-core/p-D094LgxJ.js.map +0 -1
- package/dist/pine-core/p-DJYyo0MJ.system.js.map +0 -1
- package/dist/pine-core/p-DZEhYV6y.system.js.map +0 -1
- package/dist/pine-core/p-Ri89mw0-.system.js.map +0 -1
- package/dist/pine-core/p-ZUqfslIz.system.js.map +0 -1
- package/dist/pine-core/p-aeb2f6ac.system.entry.js +0 -2
- package/dist/pine-core/p-aeb2f6ac.system.entry.js.map +0 -1
- package/dist/pine-core/p-cb8c24ad.system.entry.js +0 -2
- package/dist/pine-core/p-cb8c24ad.system.entry.js.map +0 -1
- package/dist/pine-core/p-d83d6fce.system.entry.js +0 -2
- package/dist/pine-core/p-d83d6fce.system.entry.js.map +0 -1
- package/dist/pine-core/p-ef9c539e.system.entry.js +0 -2
- package/dist/pine-core/p-ef9c539e.system.entry.js.map +0 -1
- package/dist/pine-core/p-fce519e3.system.entry.js.map +0 -1
- package/dist/pine-core/p-kYQszSpu.system.js.map +0 -1
- /package/dist/pine-core/{p-2aac4495.system.entry.js.map → p-15ac22bd.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-425144ae.entry.js.map → p-1cc2fe8d.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0ac54273.entry.js.map → p-276f774a.entry.js.map} +0 -0
- /package/dist/pine-core/{p-ce069162.entry.js.map → p-32f65e48.entry.js.map} +0 -0
- /package/dist/pine-core/{p-7d7dce2c.system.entry.js.map → p-4232520f.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b46f66e8.system.entry.js.map → p-45c1f3ea.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-5abc5d82.system.entry.js.map → p-49c2e2ce.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b1a7a0b2.entry.js.map → p-4de64b1f.entry.js.map} +0 -0
- /package/dist/pine-core/{p-0b52923b.system.entry.js.map → p-52c5ced3.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-3815f565.entry.js.map → p-593cee44.entry.js.map} +0 -0
- /package/dist/pine-core/{p-73bce0bf.entry.js.map → p-5a7b25d0.entry.js.map} +0 -0
- /package/dist/pine-core/{p-48ed8147.entry.js.map → p-632e398f.entry.js.map} +0 -0
- /package/dist/pine-core/{p-957647f9.entry.js.map → p-663abd80.entry.js.map} +0 -0
- /package/dist/pine-core/{p-23111b1c.system.entry.js.map → p-6980edfe.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-c9965216.system.entry.js.map → p-6fbe6be4.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-bd18b9bf.system.entry.js.map → p-77d4f274.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-78246e05.entry.js.map → p-85ce731b.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b1820970.system.entry.js.map → p-87cee4a0.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-fbd8ae50.entry.js.map → p-88686193.entry.js.map} +0 -0
- /package/dist/pine-core/{p-b09bde5c.system.entry.js.map → p-8ab66dbc.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-7a11a6c7.entry.js.map → p-8f935480.entry.js.map} +0 -0
- /package/dist/pine-core/{p-3f05d72e.system.entry.js.map → p-9e3e441c.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-3cd53462.entry.js.map → p-9e8296fc.entry.js.map} +0 -0
- /package/dist/pine-core/{p-15e554ae.entry.js.map → p-a30edeb1.entry.js.map} +0 -0
- /package/dist/pine-core/{p-d2b2caa2.system.entry.js.map → p-b6f57c0f.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-13105538.system.entry.js.map → p-f795d3fe.system.entry.js.map} +0 -0
- /package/dist/pine-core/{p-2d21bc31.entry.js.map → p-f8a2aedd.entry.js.map} +0 -0
- /package/dist/pine-core/{p-f0df10c7.system.entry.js.map → p-fbe793c7.system.entry.js.map} +0 -0
package/hydrate/index.mjs
CHANGED
|
@@ -3519,7 +3519,7 @@ class MockPdsModal {
|
|
|
3519
3519
|
}; }
|
|
3520
3520
|
}
|
|
3521
3521
|
|
|
3522
|
-
/* pds-icons v9.
|
|
3522
|
+
/* pds-icons v9.16.0, ES Modules */
|
|
3523
3523
|
|
|
3524
3524
|
const addCircle = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' class='pdsicon'><path fill-rule='evenodd' d='M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18M1 12C1 5.925 5.925 1 12 1s11 4.925 11 11-4.925 11-11 11S1 18.075 1 12m11-5a1 1 0 0 1 1 1v3h3a1 1 0 1 1 0 2h-3v3a1 1 0 1 1-2 0v-3H8a1 1 0 1 1 0-2h3V8a1 1 0 0 1 1-1'/></svg>";
|
|
3525
3525
|
const caretDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' class='pdsicon'><path fill-rule='evenodd' d='M5.293 8.293a1 1 0 0 1 1.414 0L12 13.586l5.293-5.293a1 1 0 1 1 1.414 1.414l-6 6a1 1 0 0 1-1.414 0l-6-6a1 1 0 0 1 0-1.414'/></svg>";
|
|
@@ -4121,7 +4121,7 @@ class PdsBox {
|
|
|
4121
4121
|
}; }
|
|
4122
4122
|
}
|
|
4123
4123
|
|
|
4124
|
-
const pdsButtonCss = ":host{--pds-button-background:var(--color-background-default);--pds-button-border:var(--pine-border);--pds-button-border-radius:var(--pine-border-radius-full);--pds-button-border-radius-start-end:var(--pine-border-radius-full);--pds-button-border-radius-start-start:var(--pine-border-radius-full);--pds-button-border-radius-end-end:var(--pine-border-radius-full);--pds-button-border-radius-end-start:var(--pine-border-radius-full);--pds-button-min-height:var(--pine-dimension-450);--pds-button-outline-offset:var(--pine-border-width);--color-border-default:transparent;--color-border-disabled:transparent;--color-border-focus:transparent;--color-border-hover:transparent;--button-loader-color:var(--color-text-default);display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}:host([full-width=true]){display:-ms-flexbox;display:flex;width:100%}:host([full-width=true]) a,:host([full-width=true]) button{-ms-flex-pack:center;justify-content:center;width:100%}:host([full-width=true]) .pds-button__content{-ms-flex-pack:center;justify-content:center;text-align:center}:host([loading=true]){cursor:wait;pointer-events:none}:host([disabled=true]){pointer-events:none}.pds-button{--pds-loader-color:var(--color-text-default);-ms-flex-align:center;align-items:center;background-color:var(--pds-button-background, var(--color-background-default));border:var(--pds-button-border);border-color:var(--color-border-default);border-radius:var(--pds-button-border-radius);border-end-end-radius:var(--pds-button-border-radius-end-end, var(--pds-button-border-radius));border-end-start-radius:var(--pds-button-border-radius-end-start, var(--pds-button-border-radius));border-start-end-radius:var(--pds-button-border-radius-start-end, var(--pds-button-border-radius));border-start-start-radius:var(--pds-button-border-radius-start-start, var(--pds-button-border-radius));-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--color-text-default);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-brand-label);letter-spacing:var(--pine-letter-spacing);min-height:var(--pds-button-min-height);padding:calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-sm);position:relative;text-decoration:none}.pds-button pds-icon{color:currentColor;fill:currentColor}.pds-button:hover{background-color:var(--color-background-hover);border-color:var(--color-border-hover)}.pds-button:focus-visible{border-color:var(--color-border-focus);-webkit-box-shadow:var(--pds-button-box-shadow-focus, none);box-shadow:var(--pds-button-box-shadow-focus, none);outline:var(--pds-button-outline-focus, var(--pine-outline-focus));outline-offset:var(--pds-button-outline-offset)}.pds-button:disabled{background-color:var(--color-background-disabled);border-color:var(--color-border-disabled);color:var(--color-text-disabled);pointer-events:none}.pds-button--primary{--color-background-default:var(--pine-color-primary);--color-background-hover:var(--pine-color-primary-hover);--color-background-disabled:var(--pine-color-primary-disabled);--color-border-default:var(--pine-color-primary);--color-border-hover:var(--pine-color-primary-hover);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-primary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--accent{--color-background-default:var(--pine-color-accent);--color-background-hover:var(--pine-color-accent-hover);--color-background-disabled:var(--pine-color-accent-disabled);--color-border-default:var(--pine-color-accent);--color-border-hover:var(--pine-color-accent-hover);--color-text-default:var(--pine-color-white);--color-text-disabled:var(--pine-color-text-accent-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive{--color-background-default:var(--pine-color-danger);--color-background-hover:var(--pine-color-danger-hover);--color-background-disabled:var(--pine-color-danger-disabled);--color-border-default:var(--pine-color-danger);--color-border-hover:var(--pine-color-danger-hover);--color-text-default:var(--pine-color-white);--color-text-disabled:var(--pine-color-text-danger-disabled);--color-outline:var(--pine-color-focus-ring-danger);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-button--secondary,.pds-button--disclosure{--color-background-default:var(--pine-color-secondary);--color-background-hover:var(--pine-color-secondary-hover);--color-background-disabled:var(--pine-color-secondary-disabled);--color-border-disabled:var(--pine-color-border-disabled);--color-border-focus:var(--pine-color-border);--color-border-hover:var(--pine-color-border-hover);--color-border-default:var(--pine-color-border);--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--secondary:hover,.pds-button--disclosure:hover{background-color:var(--pine-color-secondary-hover)}.pds-button--tertiary{--color-background-default:transparent;--color-background-hover:var(--pine-color-background-muted);--color-background-disabled:transparent;--color-border-default:transparent;--color-border-hover:var(--pine-color-background-muted);--color-border-disabled:transparent;--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--filter{--color-background-default:var(--pine-color-background-container);--color-background-hover:var(--pine-color-background-subtle);--color-background-disabled:var(--pine-color-white);--color-border-default:transparent;--color-border-hover:transparent;--color-border-focus:transparent;--color-text-default:var(--pine-color-text-secondary);--color-text-hover:var(--pine-color-text-hover);--color-text-disabled:var(--pine-color-text-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary);--pds-button-border-radius:var(--pine-dimension-125);--pds-button-border-radius-start-end:var(--pine-dimension-125);--pds-button-border-radius-start-start:var(--pine-dimension-125);--pds-button-border-radius-end-end:var(--pine-dimension-125);--pds-button-border-radius-end-start:var(--pine-dimension-125);padding:var(--pine-dimension-xs) var(--pine-dimension-sm)}.pds-button--filter:disabled{background-color:var(--pine-color-background-container)}.pds-button--filter:hover{color:var(--color-text-hover)}.pds-button--unstyled{--color-background-default:transparent;--color-background-hover:transparent;--color-background-disabled:transparent;--color-text-default:var(--pine-color-text);--button-loader-color:var(--pine-color-text);border-width:var(--pine-dimension-none);margin:var(--pine-dimension-none);min-height:auto;padding:var(--pine-dimension-none);width:inherit}.pds-button__content{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;gap:var(--pine-dimension-xs);position:relative;width:100%}.pds-button__icon{display:-ms-inline-flexbox;display:inline-flex}.pds-button__icon
|
|
4124
|
+
const pdsButtonCss = ":host{--pds-button-background:var(--color-background-default);--pds-button-border:var(--pine-border);--pds-button-border-radius:var(--pine-border-radius-full);--pds-button-border-radius-start-end:var(--pine-border-radius-full);--pds-button-border-radius-start-start:var(--pine-border-radius-full);--pds-button-border-radius-end-end:var(--pine-border-radius-full);--pds-button-border-radius-end-start:var(--pine-border-radius-full);--pds-button-min-height:var(--pine-dimension-450);--pds-button-outline-offset:var(--pine-border-width);--color-border-default:transparent;--color-border-disabled:transparent;--color-border-focus:transparent;--color-border-hover:transparent;--button-loader-color:var(--color-text-default);display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}:host([full-width=true]){display:-ms-flexbox;display:flex;width:100%}:host([full-width=true]) a,:host([full-width=true]) button{-ms-flex-pack:center;justify-content:center;width:100%}:host([full-width=true]) .pds-button__content{-ms-flex-pack:center;justify-content:center;text-align:center}:host([loading=true]){cursor:wait;pointer-events:none}:host([disabled=true]){pointer-events:none}.pds-button{--pds-loader-color:var(--color-text-default);-ms-flex-align:center;align-items:center;background-color:var(--pds-button-background, var(--color-background-default));border:var(--pds-button-border);border-color:var(--color-border-default);border-radius:var(--pds-button-border-radius);border-end-end-radius:var(--pds-button-border-radius-end-end, var(--pds-button-border-radius));border-end-start-radius:var(--pds-button-border-radius-end-start, var(--pds-button-border-radius));border-start-end-radius:var(--pds-button-border-radius-start-end, var(--pds-button-border-radius));border-start-start-radius:var(--pds-button-border-radius-start-start, var(--pds-button-border-radius));-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--color-text-default);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-brand-label);letter-spacing:var(--pine-letter-spacing);min-height:var(--pds-button-min-height);padding:calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-sm);position:relative;text-decoration:none}.pds-button pds-icon{color:currentColor;fill:currentColor}.pds-button:hover{background-color:var(--color-background-hover);border-color:var(--color-border-hover)}.pds-button:focus-visible{border-color:var(--color-border-focus);-webkit-box-shadow:var(--pds-button-box-shadow-focus, none);box-shadow:var(--pds-button-box-shadow-focus, none);outline:var(--pds-button-outline-focus, var(--pine-outline-focus));outline-offset:var(--pds-button-outline-offset)}.pds-button:disabled{background-color:var(--color-background-disabled);border-color:var(--color-border-disabled);color:var(--color-text-disabled);pointer-events:none}.pds-button--primary{--color-background-default:var(--pine-color-primary);--color-background-hover:var(--pine-color-primary-hover);--color-background-disabled:var(--pine-color-primary-disabled);--color-border-default:var(--pine-color-primary);--color-border-hover:var(--pine-color-primary-hover);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-primary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--accent{--color-background-default:var(--pine-color-accent);--color-background-hover:var(--pine-color-accent-hover);--color-background-disabled:var(--pine-color-accent-disabled);--color-border-default:var(--pine-color-accent);--color-border-hover:var(--pine-color-accent-hover);--color-text-default:var(--pine-color-white);--color-text-disabled:var(--pine-color-text-accent-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive{--color-background-default:var(--pine-color-danger);--color-background-hover:var(--pine-color-danger-hover);--color-background-disabled:var(--pine-color-danger-disabled);--color-border-default:var(--pine-color-danger);--color-border-hover:var(--pine-color-danger-hover);--color-text-default:var(--pine-color-white);--color-text-disabled:var(--pine-color-text-danger-disabled);--color-outline:var(--pine-color-focus-ring-danger);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-button--secondary,.pds-button--disclosure{--color-background-default:var(--pine-color-secondary);--color-background-hover:var(--pine-color-secondary-hover);--color-background-disabled:var(--pine-color-secondary-disabled);--color-border-disabled:var(--pine-color-border-disabled);--color-border-focus:var(--pine-color-border);--color-border-hover:var(--pine-color-border-hover);--color-border-default:var(--pine-color-border);--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--secondary:hover,.pds-button--disclosure:hover{background-color:var(--pine-color-secondary-hover)}.pds-button--tertiary{--color-background-default:transparent;--color-background-hover:var(--pine-color-background-muted);--color-background-disabled:transparent;--color-border-default:transparent;--color-border-hover:var(--pine-color-background-muted);--color-border-disabled:transparent;--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--filter{--color-background-default:var(--pine-color-background-container);--color-background-hover:var(--pine-color-background-subtle);--color-background-disabled:var(--pine-color-white);--color-border-default:transparent;--color-border-hover:transparent;--color-border-focus:transparent;--color-text-default:var(--pine-color-text-secondary);--color-text-hover:var(--pine-color-text-hover);--color-text-disabled:var(--pine-color-text-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary);--pds-button-border-radius:var(--pine-dimension-125);--pds-button-border-radius-start-end:var(--pine-dimension-125);--pds-button-border-radius-start-start:var(--pine-dimension-125);--pds-button-border-radius-end-end:var(--pine-dimension-125);--pds-button-border-radius-end-start:var(--pine-dimension-125);padding:var(--pine-dimension-xs) var(--pine-dimension-sm)}.pds-button--filter:disabled{background-color:var(--pine-color-background-container)}.pds-button--filter:hover{color:var(--color-text-hover)}.pds-button--unstyled{--color-background-default:transparent;--color-background-hover:transparent;--color-background-disabled:transparent;--color-text-default:var(--pine-color-text);--button-loader-color:var(--pine-color-text);border-width:var(--pine-dimension-none);margin:var(--pine-dimension-none);min-height:auto;padding:var(--pine-dimension-none);width:inherit}.pds-button__content{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;gap:var(--pine-dimension-xs);position:relative;width:100%}.pds-button__icon{display:-ms-inline-flexbox;display:inline-flex}.pds-button__icon--empty{display:none}.pds-button__text{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;white-space:nowrap}.pds-button__icon--hidden,.pds-button__text--hidden{opacity:0}.pds-button__loader{height:var(--pine-dimension-250);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:var(--pine-dimension-250)}.pds-button--loading{cursor:wait;pointer-events:none}.pds-button--loading .pds-button__loader pds-loader{--loader-color:var(--button-loader-color)}.pds-button--small{min-height:var(--pine-dimension-400);padding:calc(var(--pine-dimension-2xs) - var(--pine-border-width)) var(--pine-dimension-sm)}.pds-button--micro{font-size:var(--pine-font-size-085);min-height:var(--pine-dimension-300);padding:var(--pine-dimension-025) var(--pine-dimension-xs)}.pds-button--icon-only{-ms-flex-align:center;align-items:center;border-radius:var(--pine-border-radius-full);height:var(--button-dimension);-ms-flex-pack:center;justify-content:center;min-height:var(--button-dimension);min-width:var(--button-dimension);padding:var(--pine-dimension-xs);width:var(--button-dimension)}.pds-button--icon-only .pds-button__content{height:100%;-ms-flex-pack:center;justify-content:center;width:100%}.pds-button--icon-only .pds-button__text--hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pds-button--icon-only.pds-button--small{height:var(--pine-dimension-400);min-height:var(--pine-dimension-400);min-width:var(--pine-dimension-400);padding:var(--pine-dimension-2xs);width:var(--pine-dimension-400)}.pds-button--icon-only.pds-button--micro{height:var(--pine-dimension-300);min-height:var(--pine-dimension-300);min-width:var(--pine-dimension-300);padding:var(--pine-dimension-3xs);width:var(--pine-dimension-300)}";
|
|
4125
4125
|
|
|
4126
4126
|
/**
|
|
4127
4127
|
* @part button - Exposes the button element for styling.
|
|
@@ -4179,6 +4179,14 @@ class PdsButton {
|
|
|
4179
4179
|
* @defaultValue primary
|
|
4180
4180
|
*/
|
|
4181
4181
|
this.variant = 'primary';
|
|
4182
|
+
this.hasStartContent = false;
|
|
4183
|
+
this.hasEndContent = false;
|
|
4184
|
+
this.handleStartSlotChange = (event) => {
|
|
4185
|
+
this.hasStartContent = event.target.assignedElements({ flatten: true }).length > 0;
|
|
4186
|
+
};
|
|
4187
|
+
this.handleEndSlotChange = (event) => {
|
|
4188
|
+
this.hasEndContent = event.target.assignedElements({ flatten: true }).length > 0;
|
|
4189
|
+
};
|
|
4182
4190
|
this.handleClick = (ev) => {
|
|
4183
4191
|
if (this.loading) {
|
|
4184
4192
|
ev.preventDefault();
|
|
@@ -4277,8 +4285,9 @@ class PdsButton {
|
|
|
4277
4285
|
return (hAsync("pds-icon", { class: this.loading ? 'pds-button__icon--hidden' : '', name: this.icon, part: "icon", "aria-hidden": "true" }));
|
|
4278
4286
|
}
|
|
4279
4287
|
// Always render the start slot so slotted content is projected reliably.
|
|
4280
|
-
//
|
|
4281
|
-
|
|
4288
|
+
// The --empty class hides the wrapper when no content is slotted (prevents empty gap space).
|
|
4289
|
+
const startClasses = `pds-button__icon${this.hasStartContent ? '' : ' pds-button__icon--empty'}${this.loading ? ' pds-button__icon--hidden' : ''}`;
|
|
4290
|
+
return hAsync("span", { class: startClasses }, hAsync("slot", { name: "start", onSlotchange: this.handleStartSlotChange }));
|
|
4282
4291
|
}
|
|
4283
4292
|
renderEndContent() {
|
|
4284
4293
|
if (this.iconOnly) {
|
|
@@ -4288,8 +4297,9 @@ class PdsButton {
|
|
|
4288
4297
|
return (hAsync("pds-icon", { class: this.loading ? 'pds-button__icon--hidden' : '', icon: caretDown, part: "caret", "aria-hidden": "true" }));
|
|
4289
4298
|
}
|
|
4290
4299
|
// Always render the end slot so slotted content is projected reliably.
|
|
4291
|
-
//
|
|
4292
|
-
|
|
4300
|
+
// The --empty class hides the wrapper when no content is slotted (prevents empty gap space).
|
|
4301
|
+
const endClasses = `pds-button__icon${this.hasEndContent ? '' : ' pds-button__icon--empty'}${this.loading ? ' pds-button__icon--hidden' : ''}`;
|
|
4302
|
+
return hAsync("span", { class: endClasses }, hAsync("slot", { name: "end", onSlotchange: this.handleEndSlotChange }));
|
|
4293
4303
|
}
|
|
4294
4304
|
render() {
|
|
4295
4305
|
// Common props for both button and anchor elements
|
|
@@ -4327,7 +4337,9 @@ class PdsButton {
|
|
|
4327
4337
|
"type": [1],
|
|
4328
4338
|
"value": [1],
|
|
4329
4339
|
"size": [1],
|
|
4330
|
-
"variant": [1]
|
|
4340
|
+
"variant": [1],
|
|
4341
|
+
"hasStartContent": [32],
|
|
4342
|
+
"hasEndContent": [32]
|
|
4331
4343
|
},
|
|
4332
4344
|
"$listeners$": [[16, "keydown", "handleFormKeyDown"]],
|
|
4333
4345
|
"$lazyBundleId$": "-",
|
|
@@ -9020,12 +9032,254 @@ class PdsCombobox {
|
|
|
9020
9032
|
}; }
|
|
9021
9033
|
}
|
|
9022
9034
|
|
|
9035
|
+
/** CSS class prefix used for truncation tooltip portal elements */
|
|
9036
|
+
const TOOLTIP_CLASS = 'pds-truncation-tooltip';
|
|
9037
|
+
/**
|
|
9038
|
+
* Injects the truncation tooltip styles into the document head.
|
|
9039
|
+
* Uses the same design tokens as pds-tooltip for visual consistency.
|
|
9040
|
+
* Only injects once — checks the DOM to avoid duplicates.
|
|
9041
|
+
*
|
|
9042
|
+
* Z-Index Strategy:
|
|
9043
|
+
* Uses --pine-z-index-nuclear (9999) to ensure tooltips appear above all other UI elements.
|
|
9044
|
+
* This is necessary because tooltips are portaled to document.body and must overlay:
|
|
9045
|
+
* - Modal dialogs
|
|
9046
|
+
* - Dropdown menus
|
|
9047
|
+
* - Other floating UI elements
|
|
9048
|
+
* If you encounter z-index conflicts, ensure your overlays use Pine's z-index tokens
|
|
9049
|
+
* or adjust --pine-z-index-nuclear in your theme.
|
|
9050
|
+
*/
|
|
9051
|
+
function injectStyles() {
|
|
9052
|
+
if (document.querySelector('[data-pds-truncation-tooltip]'))
|
|
9053
|
+
return;
|
|
9054
|
+
const style = document.createElement('style');
|
|
9055
|
+
style.setAttribute('data-pds-truncation-tooltip', '');
|
|
9056
|
+
style.textContent = `
|
|
9057
|
+
.${TOOLTIP_CLASS} {
|
|
9058
|
+
position: fixed;
|
|
9059
|
+
z-index: var(--pine-z-index-nuclear, 9999);
|
|
9060
|
+
}
|
|
9061
|
+
.${TOOLTIP_CLASS}__content {
|
|
9062
|
+
background-color: var(--pine-color-primary, #1a1a2e);
|
|
9063
|
+
border-radius: calc(var(--pine-dimension-xs, 4px) * 1.25);
|
|
9064
|
+
box-shadow: var(--pine-box-shadow, 0 2px 8px rgba(0,0,0,0.15));
|
|
9065
|
+
color: var(--pine-color-text-primary, #fff);
|
|
9066
|
+
cursor: text;
|
|
9067
|
+
font-family: var(--pine-font-family-body, sans-serif);
|
|
9068
|
+
font-size: var(--pine-font-size-body-sm, 0.875rem);
|
|
9069
|
+
letter-spacing: var(--pine-letter-spacing, normal);
|
|
9070
|
+
line-height: var(--pine-line-height-body, 1.5);
|
|
9071
|
+
max-width: 320px;
|
|
9072
|
+
opacity: 0;
|
|
9073
|
+
padding: var(--pine-dimension-xs, 4px) calc(var(--pine-dimension-md, 12px) / 2);
|
|
9074
|
+
transition: opacity 0.15s ease-in-out, visibility 0.15s ease-in-out;
|
|
9075
|
+
user-select: text;
|
|
9076
|
+
visibility: hidden;
|
|
9077
|
+
width: max-content;
|
|
9078
|
+
word-break: break-word;
|
|
9079
|
+
}
|
|
9080
|
+
.${TOOLTIP_CLASS}--visible .${TOOLTIP_CLASS}__content {
|
|
9081
|
+
opacity: 1;
|
|
9082
|
+
visibility: visible;
|
|
9083
|
+
}
|
|
9084
|
+
`;
|
|
9085
|
+
document.head.appendChild(style);
|
|
9086
|
+
}
|
|
9087
|
+
/**
|
|
9088
|
+
* Checks if an element's content is overflowing horizontally (i.e. text is truncated).
|
|
9089
|
+
*/
|
|
9090
|
+
function isOverflowing(el) {
|
|
9091
|
+
return el.scrollWidth > el.clientWidth;
|
|
9092
|
+
}
|
|
9093
|
+
/**
|
|
9094
|
+
* Sets up automatic tooltip behavior for a truncated element.
|
|
9095
|
+
*
|
|
9096
|
+
* When the element's text overflows, hovering or focusing the host element
|
|
9097
|
+
* will display a tooltip showing the full text content. The tooltip is
|
|
9098
|
+
* rendered as a portal on document.body and positioned with Floating UI.
|
|
9099
|
+
*
|
|
9100
|
+
* @returns A cleanup function that removes all listeners, observers, and DOM elements.
|
|
9101
|
+
*/
|
|
9102
|
+
function setupTruncationTooltip(options) {
|
|
9103
|
+
const { hostEl, contentEl, getTooltipText, placement = 'top' } = options;
|
|
9104
|
+
injectStyles();
|
|
9105
|
+
let portalEl = null;
|
|
9106
|
+
let isHovering = false;
|
|
9107
|
+
let isHoveringPortal = false;
|
|
9108
|
+
let isFocused = false;
|
|
9109
|
+
let hideTimeout = null;
|
|
9110
|
+
let resizeObserver = null;
|
|
9111
|
+
let resizeDebounce = null;
|
|
9112
|
+
// Use ResizeObserver to re-evaluate overflow when the element resizes
|
|
9113
|
+
// Debounced to prevent performance issues during rapid window resizing
|
|
9114
|
+
if (typeof ResizeObserver !== 'undefined') {
|
|
9115
|
+
resizeObserver = new ResizeObserver(() => {
|
|
9116
|
+
if (resizeDebounce) {
|
|
9117
|
+
clearTimeout(resizeDebounce);
|
|
9118
|
+
}
|
|
9119
|
+
resizeDebounce = setTimeout(() => {
|
|
9120
|
+
resizeDebounce = null;
|
|
9121
|
+
// If tooltip is showing but text no longer overflows, hide it
|
|
9122
|
+
if (portalEl && portalEl.isConnected && !isOverflowing(contentEl)) {
|
|
9123
|
+
hideTooltip();
|
|
9124
|
+
}
|
|
9125
|
+
}, 100);
|
|
9126
|
+
});
|
|
9127
|
+
resizeObserver.observe(contentEl);
|
|
9128
|
+
}
|
|
9129
|
+
function createPortal() {
|
|
9130
|
+
if (portalEl)
|
|
9131
|
+
return;
|
|
9132
|
+
const text = getTooltipText();
|
|
9133
|
+
if (!text || text.trim() === '')
|
|
9134
|
+
return;
|
|
9135
|
+
portalEl = document.createElement('div');
|
|
9136
|
+
portalEl.className = TOOLTIP_CLASS;
|
|
9137
|
+
portalEl.setAttribute('role', 'tooltip');
|
|
9138
|
+
portalEl.setAttribute('aria-hidden', 'false');
|
|
9139
|
+
const contentDiv = document.createElement('div');
|
|
9140
|
+
contentDiv.className = `${TOOLTIP_CLASS}__content`;
|
|
9141
|
+
contentDiv.textContent = text.trim();
|
|
9142
|
+
portalEl.appendChild(contentDiv);
|
|
9143
|
+
document.body.appendChild(portalEl);
|
|
9144
|
+
// Allow the user to hover into the tooltip to select/copy text
|
|
9145
|
+
portalEl.addEventListener('mouseenter', handlePortalMouseEnter);
|
|
9146
|
+
portalEl.addEventListener('mouseleave', handlePortalMouseLeave);
|
|
9147
|
+
positionTooltip().then(() => {
|
|
9148
|
+
if (portalEl) {
|
|
9149
|
+
portalEl.classList.add(`${TOOLTIP_CLASS}--visible`);
|
|
9150
|
+
}
|
|
9151
|
+
});
|
|
9152
|
+
}
|
|
9153
|
+
async function positionTooltip() {
|
|
9154
|
+
if (!portalEl)
|
|
9155
|
+
return;
|
|
9156
|
+
try {
|
|
9157
|
+
const { x, y } = await computePosition(hostEl, portalEl, {
|
|
9158
|
+
placement,
|
|
9159
|
+
strategy: 'fixed',
|
|
9160
|
+
middleware: [offset(4), flip(), shift({ padding: 5 })],
|
|
9161
|
+
});
|
|
9162
|
+
Object.assign(portalEl.style, {
|
|
9163
|
+
left: `${x}px`,
|
|
9164
|
+
top: `${y}px`,
|
|
9165
|
+
});
|
|
9166
|
+
}
|
|
9167
|
+
catch (_a) {
|
|
9168
|
+
// Fallback: position above the element with bounds checking
|
|
9169
|
+
if (portalEl) {
|
|
9170
|
+
const rect = hostEl.getBoundingClientRect();
|
|
9171
|
+
const portalRect = portalEl.getBoundingClientRect();
|
|
9172
|
+
const padding = 5;
|
|
9173
|
+
// Ensure tooltip stays within viewport bounds
|
|
9174
|
+
const left = Math.max(padding, Math.min(rect.left, window.innerWidth - portalRect.width - padding));
|
|
9175
|
+
const top = Math.max(padding, rect.top - portalRect.height - 8);
|
|
9176
|
+
portalEl.style.left = `${left}px`;
|
|
9177
|
+
portalEl.style.top = `${top}px`;
|
|
9178
|
+
}
|
|
9179
|
+
}
|
|
9180
|
+
}
|
|
9181
|
+
function removePortal() {
|
|
9182
|
+
if (portalEl) {
|
|
9183
|
+
portalEl.removeEventListener('mouseenter', handlePortalMouseEnter);
|
|
9184
|
+
portalEl.removeEventListener('mouseleave', handlePortalMouseLeave);
|
|
9185
|
+
portalEl.classList.remove(`${TOOLTIP_CLASS}--visible`);
|
|
9186
|
+
// Check if portal is still in the DOM before removing
|
|
9187
|
+
if (portalEl.parentNode && portalEl.isConnected) {
|
|
9188
|
+
try {
|
|
9189
|
+
portalEl.parentNode.removeChild(portalEl);
|
|
9190
|
+
}
|
|
9191
|
+
catch (e) {
|
|
9192
|
+
// Portal was already removed, ignore error
|
|
9193
|
+
}
|
|
9194
|
+
}
|
|
9195
|
+
portalEl = null;
|
|
9196
|
+
}
|
|
9197
|
+
}
|
|
9198
|
+
function cancelHideTimeout() {
|
|
9199
|
+
if (hideTimeout !== null) {
|
|
9200
|
+
clearTimeout(hideTimeout);
|
|
9201
|
+
hideTimeout = null;
|
|
9202
|
+
}
|
|
9203
|
+
}
|
|
9204
|
+
function showTooltip() {
|
|
9205
|
+
cancelHideTimeout();
|
|
9206
|
+
if (!isOverflowing(contentEl))
|
|
9207
|
+
return;
|
|
9208
|
+
createPortal();
|
|
9209
|
+
}
|
|
9210
|
+
function hideTooltip() {
|
|
9211
|
+
if (isHovering || isHoveringPortal || isFocused)
|
|
9212
|
+
return;
|
|
9213
|
+
removePortal();
|
|
9214
|
+
}
|
|
9215
|
+
/**
|
|
9216
|
+
* Schedules tooltip removal after a short delay.
|
|
9217
|
+
*
|
|
9218
|
+
* The 100ms delay serves two purposes:
|
|
9219
|
+
* 1. Gives users time to move their cursor from the truncated text to the tooltip portal
|
|
9220
|
+
* without it closing, enabling text selection/copying from the tooltip
|
|
9221
|
+
* 2. Prevents flickering when the user briefly moves the cursor during normal interaction
|
|
9222
|
+
*/
|
|
9223
|
+
function scheduleHide() {
|
|
9224
|
+
cancelHideTimeout();
|
|
9225
|
+
hideTimeout = setTimeout(() => {
|
|
9226
|
+
hideTimeout = null;
|
|
9227
|
+
hideTooltip();
|
|
9228
|
+
}, 100);
|
|
9229
|
+
}
|
|
9230
|
+
function handleMouseEnter() {
|
|
9231
|
+
isHovering = true;
|
|
9232
|
+
showTooltip();
|
|
9233
|
+
}
|
|
9234
|
+
function handleMouseLeave() {
|
|
9235
|
+
isHovering = false;
|
|
9236
|
+
scheduleHide();
|
|
9237
|
+
}
|
|
9238
|
+
function handlePortalMouseEnter() {
|
|
9239
|
+
isHoveringPortal = true;
|
|
9240
|
+
cancelHideTimeout();
|
|
9241
|
+
}
|
|
9242
|
+
function handlePortalMouseLeave() {
|
|
9243
|
+
isHoveringPortal = false;
|
|
9244
|
+
scheduleHide();
|
|
9245
|
+
}
|
|
9246
|
+
function handleFocusIn() {
|
|
9247
|
+
isFocused = true;
|
|
9248
|
+
showTooltip();
|
|
9249
|
+
}
|
|
9250
|
+
function handleFocusOut() {
|
|
9251
|
+
isFocused = false;
|
|
9252
|
+
scheduleHide();
|
|
9253
|
+
}
|
|
9254
|
+
hostEl.addEventListener('mouseenter', handleMouseEnter);
|
|
9255
|
+
hostEl.addEventListener('mouseleave', handleMouseLeave);
|
|
9256
|
+
hostEl.addEventListener('focusin', handleFocusIn);
|
|
9257
|
+
hostEl.addEventListener('focusout', handleFocusOut);
|
|
9258
|
+
// Return cleanup function
|
|
9259
|
+
return () => {
|
|
9260
|
+
cancelHideTimeout();
|
|
9261
|
+
if (resizeDebounce) {
|
|
9262
|
+
clearTimeout(resizeDebounce);
|
|
9263
|
+
resizeDebounce = null;
|
|
9264
|
+
}
|
|
9265
|
+
if (resizeObserver) {
|
|
9266
|
+
resizeObserver.disconnect();
|
|
9267
|
+
}
|
|
9268
|
+
hostEl.removeEventListener('mouseenter', handleMouseEnter);
|
|
9269
|
+
hostEl.removeEventListener('mouseleave', handleMouseLeave);
|
|
9270
|
+
hostEl.removeEventListener('focusin', handleFocusIn);
|
|
9271
|
+
hostEl.removeEventListener('focusout', handleFocusOut);
|
|
9272
|
+
removePortal();
|
|
9273
|
+
};
|
|
9274
|
+
}
|
|
9275
|
+
|
|
9023
9276
|
const pdsCopytextCss = ":host(.pds-copytext){--copytext-color-background-hover:var(--pine-color-background-inset)}:host(.pds-copytext) pds-button{-ms-flex-align:center;align-items:center;border-radius:var(--pine-border-radius-full);border-width:var(--pine-dimension-none);display:-ms-inline-flexbox;display:inline-flex;font-family:var(--pine-font-family-heading);font-size:var(--pine-font-size-body-md);font-weight:var(--pine-font-weight-body-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);max-width:100%}:host(.pds-copytext) pds-button::part(button){padding-block:var(--pine-dimension-2xs);padding-inline:var(--pine-dimension-xs)}:host(.pds-copytext) pds-button::part(button):hover{background-color:var(--copytext-color-background-hover);color:var(--pine-color-text-secondary-hover)}:host(.pds-copytext) pds-button span{font-weight:var(--pine-font-weight-medium);-webkit-margin-end:var(--pine-dimension-xs);margin-inline-end:var(--pine-dimension-xs);white-space:nowrap}:host(.pds-copytext) pds-button :nth-child(2){-ms-flex-negative:0;flex-shrink:0}:host(.pds-copytext):host(.pds-copytext--bordered){border-width:var(--pine-dimension-none);padding:var(--pine-dimension-none)}:host(.pds-copytext):host(.pds-copytext--bordered) pds-button{padding:var(--pine-dimension-none)}:host(.pds-copytext):host(.pds-copytext--bordered) pds-button::part(button){padding:var(--pine-dimension-none)}:host(.pds-copytext):host(.pds-copytext--bordered) pds-button::part(button):hover{background-color:transparent}:host(.pds-copytext):host(.pds-copytext--bordered) span{background:var(--pine-color-secondary);border:var(--pine-border);border-radius:var(--pine-border-radius-full);-webkit-margin-end:var(--pine-dimension-sm);margin-inline-end:var(--pine-dimension-sm);padding-block:var(--pine-dimension-xs);padding-inline:var(--pine-dimension-sm)}:host(.pds-copytext):host(.pds-copytext--bordered) :hover span{border:var(--pine-border-hover)}:host(.pds-copytext):host(.pds-copytext--full-width) pds-button,:host(.pds-copytext):host(.pds-copytext--truncated) pds-button{display:-ms-inline-flexbox;display:inline-flex;min-width:auto;width:100%}:host(.pds-copytext):host(.pds-copytext--full-width) pds-button::part(button-content),:host(.pds-copytext):host(.pds-copytext--full-width) pds-button::part(button-text),:host(.pds-copytext):host(.pds-copytext--truncated) pds-button::part(button-content),:host(.pds-copytext):host(.pds-copytext--truncated) pds-button::part(button-text){-ms-flex-negative:1;flex-shrink:1;width:100%}:host(.pds-copytext):host(.pds-copytext--full-width) pds-button span,:host(.pds-copytext):host(.pds-copytext--truncated) pds-button span{text-align:start;width:100%}:host(.pds-copytext):host(.pds-copytext--full-width) pds-button{-ms-flex-pack:justify;justify-content:space-between}:host(.pds-copytext):host(.pds-copytext--truncated) pds-button span{overflow:hidden;text-overflow:ellipsis}";
|
|
9024
9277
|
|
|
9025
9278
|
class PdsCopytext {
|
|
9026
9279
|
constructor(hostRef) {
|
|
9027
9280
|
registerInstance(this, hostRef);
|
|
9028
9281
|
this.pdsCopyTextClick = createEvent(this, "pdsCopyTextClick");
|
|
9282
|
+
this.truncationCleanup = null;
|
|
9029
9283
|
/**
|
|
9030
9284
|
* Determines whether `copytext` should have a visible border.
|
|
9031
9285
|
* @defaultValue true
|
|
@@ -9038,6 +9292,7 @@ class PdsCopytext {
|
|
|
9038
9292
|
this.fullWidth = false;
|
|
9039
9293
|
/**
|
|
9040
9294
|
* Determines whether the `value` should truncate and display with an ellipsis.
|
|
9295
|
+
* When text overflows, a tooltip showing the full value will appear on hover/focus.
|
|
9041
9296
|
* @defaultValue false
|
|
9042
9297
|
*/
|
|
9043
9298
|
this.truncate = false;
|
|
@@ -9056,6 +9311,43 @@ class PdsCopytext {
|
|
|
9056
9311
|
this.copyToClipboard(this.value);
|
|
9057
9312
|
};
|
|
9058
9313
|
}
|
|
9314
|
+
handleTruncateChange(newValue) {
|
|
9315
|
+
if (newValue) {
|
|
9316
|
+
this.initTruncationTooltip();
|
|
9317
|
+
}
|
|
9318
|
+
else {
|
|
9319
|
+
this.destroyTruncationTooltip();
|
|
9320
|
+
}
|
|
9321
|
+
}
|
|
9322
|
+
handleValueChange() {
|
|
9323
|
+
if (this.truncate) {
|
|
9324
|
+
this.initTruncationTooltip();
|
|
9325
|
+
}
|
|
9326
|
+
}
|
|
9327
|
+
componentDidLoad() {
|
|
9328
|
+
if (this.truncate) {
|
|
9329
|
+
this.initTruncationTooltip();
|
|
9330
|
+
}
|
|
9331
|
+
}
|
|
9332
|
+
disconnectedCallback() {
|
|
9333
|
+
this.destroyTruncationTooltip();
|
|
9334
|
+
}
|
|
9335
|
+
initTruncationTooltip() {
|
|
9336
|
+
this.destroyTruncationTooltip();
|
|
9337
|
+
if (this.valueSpanEl) {
|
|
9338
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
9339
|
+
hostEl: this.el,
|
|
9340
|
+
contentEl: this.valueSpanEl,
|
|
9341
|
+
getTooltipText: () => this.value || '',
|
|
9342
|
+
});
|
|
9343
|
+
}
|
|
9344
|
+
}
|
|
9345
|
+
destroyTruncationTooltip() {
|
|
9346
|
+
if (this.truncationCleanup) {
|
|
9347
|
+
this.truncationCleanup();
|
|
9348
|
+
this.truncationCleanup = null;
|
|
9349
|
+
}
|
|
9350
|
+
}
|
|
9059
9351
|
classNames() {
|
|
9060
9352
|
const classNames = ['pds-copytext'];
|
|
9061
9353
|
if (this.border) {
|
|
@@ -9070,8 +9362,13 @@ class PdsCopytext {
|
|
|
9070
9362
|
return classNames.join(' ');
|
|
9071
9363
|
}
|
|
9072
9364
|
render() {
|
|
9073
|
-
return (hAsync(Host, { key: '
|
|
9365
|
+
return (hAsync(Host, { key: 'bbca278ca4f2567d3aa5dfa27106fc09f0f4d959', class: this.classNames(), id: this.componentId }, hAsync("pds-button", { key: '8a62ae4d01681648a95b313970a89f8641f1d8c9', type: "button", variant: "unstyled", onClick: this.handleClick }, hAsync("span", { key: '465585ce0780a19113f8e7897a9c7af7114b2a1d', ref: (el) => this.valueSpanEl = el }, this.value), hAsync("pds-icon", { key: 'db0295dfec0c4a1acbea50b849d631ea6325bf00', icon: copy, size: "16px" }))));
|
|
9074
9366
|
}
|
|
9367
|
+
get el() { return getElement(this); }
|
|
9368
|
+
static get watchers() { return {
|
|
9369
|
+
"truncate": ["handleTruncateChange"],
|
|
9370
|
+
"value": ["handleValueChange"]
|
|
9371
|
+
}; }
|
|
9075
9372
|
static get style() { return pdsCopytextCss; }
|
|
9076
9373
|
static get cmpMeta() { return {
|
|
9077
9374
|
"$flags$": 265,
|
|
@@ -11567,10 +11864,21 @@ class PdsMultiselect {
|
|
|
11567
11864
|
this.pdsMultiselectSearch = createEvent(this, "pdsMultiselectSearch");
|
|
11568
11865
|
this.pdsMultiselectLoadOptions = createEvent(this, "pdsMultiselectLoadOptions");
|
|
11569
11866
|
this.pdsMultiselectCreate = createEvent(this, "pdsMultiselectCreate");
|
|
11867
|
+
this.pdsMultiselectDismiss = createEvent(this, "pdsMultiselectDismiss");
|
|
11570
11868
|
/**
|
|
11571
11869
|
* Placeholder text for the input field.
|
|
11572
11870
|
*/
|
|
11573
11871
|
this.placeholder = 'Select...';
|
|
11872
|
+
/**
|
|
11873
|
+
* Placeholder text for the search input inside the dropdown panel.
|
|
11874
|
+
* @default 'Find...'
|
|
11875
|
+
*/
|
|
11876
|
+
this.searchPlaceholder = 'Find...';
|
|
11877
|
+
/**
|
|
11878
|
+
* Whether to close the panel after an option is selected.
|
|
11879
|
+
* Defaults to `false` (panel stays open for multi-select).
|
|
11880
|
+
*/
|
|
11881
|
+
this.closePanelOnSelect = false;
|
|
11574
11882
|
/**
|
|
11575
11883
|
* Array of selected option values.
|
|
11576
11884
|
*/
|
|
@@ -11607,6 +11915,10 @@ class PdsMultiselect {
|
|
|
11607
11915
|
* Visually hides the label but keeps it accessible.
|
|
11608
11916
|
*/
|
|
11609
11917
|
this.hideLabel = false;
|
|
11918
|
+
/**
|
|
11919
|
+
* Hides the selected items summary section in the dropdown panel.
|
|
11920
|
+
*/
|
|
11921
|
+
this.hideSelectedItems = false;
|
|
11610
11922
|
/**
|
|
11611
11923
|
* If true, the multiselect is required.
|
|
11612
11924
|
*/
|
|
@@ -11630,6 +11942,8 @@ class PdsMultiselect {
|
|
|
11630
11942
|
this.creating = false;
|
|
11631
11943
|
// Flag to prevent focusout from closing during open transition
|
|
11632
11944
|
this.isOpening = false;
|
|
11945
|
+
// Flag to suppress dismiss event when panel closes due to selection (not user dismissal)
|
|
11946
|
+
this.isClosingViaSelection = false;
|
|
11633
11947
|
// Flag to track if initial async fetch has been triggered (prevents double fetch)
|
|
11634
11948
|
this.initialAsyncFetchTriggered = false;
|
|
11635
11949
|
// Flag to track if value changed during loading and needs resolution after fetch completes
|
|
@@ -11701,8 +12015,9 @@ class PdsMultiselect {
|
|
|
11701
12015
|
// before we decide to close the dropdown
|
|
11702
12016
|
setTimeout(() => {
|
|
11703
12017
|
var _a;
|
|
11704
|
-
// Don't close if we're in the middle of opening
|
|
11705
|
-
|
|
12018
|
+
// Don't close if we're in the middle of opening, already closed,
|
|
12019
|
+
// or closing due to a selection (not a user dismissal)
|
|
12020
|
+
if (!this.isOpen || this.isOpening || this.isClosingViaSelection)
|
|
11706
12021
|
return;
|
|
11707
12022
|
const activeElement = document.activeElement;
|
|
11708
12023
|
// Check if focus is within our component's shadow root
|
|
@@ -11710,6 +12025,7 @@ class PdsMultiselect {
|
|
|
11710
12025
|
// Also check if focus is on the host element itself
|
|
11711
12026
|
const isOnHost = activeElement === this.el;
|
|
11712
12027
|
if (!isInShadowRoot && !isOnHost) {
|
|
12028
|
+
this.pdsMultiselectDismiss.emit();
|
|
11713
12029
|
this.closeDropdown();
|
|
11714
12030
|
}
|
|
11715
12031
|
}, 0);
|
|
@@ -11839,6 +12155,19 @@ class PdsMultiselect {
|
|
|
11839
12155
|
var _a;
|
|
11840
12156
|
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
11841
12157
|
}
|
|
12158
|
+
/**
|
|
12159
|
+
* Clears all selected values and resets the component.
|
|
12160
|
+
*/
|
|
12161
|
+
async clear() {
|
|
12162
|
+
const hadValues = this.value.length > 0 || this.searchQuery !== '';
|
|
12163
|
+
this.value = [];
|
|
12164
|
+
this.searchQuery = '';
|
|
12165
|
+
this.syncSelectedItems();
|
|
12166
|
+
this.updateFormValue();
|
|
12167
|
+
if (hadValues) {
|
|
12168
|
+
this.pdsMultiselectChange.emit({ values: [], items: [] });
|
|
12169
|
+
}
|
|
12170
|
+
}
|
|
11842
12171
|
/**
|
|
11843
12172
|
* Handle global keyboard events for accessibility.
|
|
11844
12173
|
* Closes dropdown on Escape key press regardless of focus location.
|
|
@@ -11849,6 +12178,7 @@ class PdsMultiselect {
|
|
|
11849
12178
|
return;
|
|
11850
12179
|
if (event.key === 'Escape') {
|
|
11851
12180
|
event.preventDefault();
|
|
12181
|
+
this.pdsMultiselectDismiss.emit();
|
|
11852
12182
|
this.closeDropdown();
|
|
11853
12183
|
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
11854
12184
|
}
|
|
@@ -12186,6 +12516,12 @@ class PdsMultiselect {
|
|
|
12186
12516
|
this.isOpen = false;
|
|
12187
12517
|
this.highlightedIndex = -1;
|
|
12188
12518
|
this.searchQuery = '';
|
|
12519
|
+
// Reset the selection-close guard after the focusout handler's setTimeout has resolved
|
|
12520
|
+
if (this.isClosingViaSelection) {
|
|
12521
|
+
setTimeout(() => {
|
|
12522
|
+
this.isClosingViaSelection = false;
|
|
12523
|
+
}, 0);
|
|
12524
|
+
}
|
|
12189
12525
|
// Clean up auto-update
|
|
12190
12526
|
if (this.cleanupAutoUpdate) {
|
|
12191
12527
|
this.cleanupAutoUpdate();
|
|
@@ -12238,7 +12574,7 @@ class PdsMultiselect {
|
|
|
12238
12574
|
});
|
|
12239
12575
|
}
|
|
12240
12576
|
toggleOption(option) {
|
|
12241
|
-
var _a;
|
|
12577
|
+
var _a, _b;
|
|
12242
12578
|
// Handle create option
|
|
12243
12579
|
if (option.isCreateOption) {
|
|
12244
12580
|
// Prevent multiple create calls while one is in-flight
|
|
@@ -12247,17 +12583,18 @@ class PdsMultiselect {
|
|
|
12247
12583
|
}
|
|
12248
12584
|
return;
|
|
12249
12585
|
}
|
|
12250
|
-
const
|
|
12586
|
+
const optionId = String(option.id);
|
|
12587
|
+
const isSelected = this.value.includes(optionId);
|
|
12251
12588
|
if (isSelected) {
|
|
12252
12589
|
// Remove from selection
|
|
12253
|
-
this.value = this.value.filter(v => v !==
|
|
12590
|
+
this.value = this.value.filter(v => v !== optionId);
|
|
12254
12591
|
}
|
|
12255
12592
|
else {
|
|
12256
12593
|
// Add to selection
|
|
12257
12594
|
if (this.maxSelections && this.value.length >= this.maxSelections) {
|
|
12258
12595
|
return;
|
|
12259
12596
|
}
|
|
12260
|
-
this.value = [...this.value,
|
|
12597
|
+
this.value = [...this.value, optionId];
|
|
12261
12598
|
}
|
|
12262
12599
|
// Sync selected items to ensure no duplicates and accurate state
|
|
12263
12600
|
this.syncSelectedItems();
|
|
@@ -12266,15 +12603,22 @@ class PdsMultiselect {
|
|
|
12266
12603
|
values: this.value,
|
|
12267
12604
|
items: this.selectedItems,
|
|
12268
12605
|
});
|
|
12269
|
-
|
|
12270
|
-
|
|
12606
|
+
if (this.closePanelOnSelect) {
|
|
12607
|
+
this.isClosingViaSelection = true;
|
|
12608
|
+
this.closeDropdown();
|
|
12609
|
+
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
12610
|
+
}
|
|
12611
|
+
else {
|
|
12612
|
+
// Keep focus on search input, don't close dropdown
|
|
12613
|
+
(_b = this.searchInputEl) === null || _b === void 0 ? void 0 : _b.focus();
|
|
12614
|
+
}
|
|
12271
12615
|
}
|
|
12272
12616
|
selectOption(option) {
|
|
12273
12617
|
// For keyboard navigation - toggle the option
|
|
12274
12618
|
this.toggleOption(option);
|
|
12275
12619
|
}
|
|
12276
12620
|
renderSelectedItemsList() {
|
|
12277
|
-
if (this.selectedItems.length === 0)
|
|
12621
|
+
if (this.hideSelectedItems || this.selectedItems.length === 0)
|
|
12278
12622
|
return null;
|
|
12279
12623
|
return (hAsync("div", { class: "pds-multiselect__selected-section" }, hAsync("ul", { class: "pds-multiselect__selected-list", role: "list" }, this.selectedItems.map(item => (hAsync("li", { key: String(item.id), class: "pds-multiselect__selected-item" }, item.text))))));
|
|
12280
12624
|
}
|
|
@@ -12285,7 +12629,7 @@ class PdsMultiselect {
|
|
|
12285
12629
|
const valueArray = this.ensureValueArray();
|
|
12286
12630
|
const hasSlottedEmpty = !!this.el.querySelector('[slot="empty"]');
|
|
12287
12631
|
const hasSlottedLoading = !!this.el.querySelector('[slot="loading"]');
|
|
12288
|
-
return (hAsync("div", { class: "pds-multiselect__panel", ref: el => (this.panelEl = el), style: { minWidth: this.minWidth } }, hAsync("div", { class: "pds-multiselect__search" }, hAsync("pds-icon", { name: "search", size: "small" }), hAsync("input", { ref: el => (this.searchInputEl = el), type: "text", class: "pds-multiselect__search-input", placeholder:
|
|
12632
|
+
return (hAsync("div", { class: "pds-multiselect__panel", ref: el => (this.panelEl = el), style: { minWidth: this.minWidth } }, hAsync("div", { class: "pds-multiselect__search" }, hAsync("pds-icon", { name: "search", size: "small" }), hAsync("input", { ref: el => (this.searchInputEl = el), type: "text", class: "pds-multiselect__search-input", placeholder: this.searchPlaceholder, value: this.searchQuery, "aria-label": "Search options", "aria-controls": `${this.componentId}-listbox`, "aria-activedescendant": this.highlightedIndex >= 0 ? `${this.componentId}-option-${this.highlightedIndex}` : undefined, role: "combobox", "aria-haspopup": "listbox", "aria-expanded": "true", "aria-autocomplete": "list", autocomplete: "off", onInput: this.handleSearchInputChange, onKeyDown: this.handleSearchInputKeyDown })), this.renderSelectedItemsList(), hAsync("ul", { class: "pds-multiselect__listbox", role: "listbox", "aria-multiselectable": "true", "aria-label": this.label || 'Options', id: `${this.componentId}-listbox`, ref: el => (this.listboxEl = el), style: { maxHeight: this.maxHeight }, onScroll: this.handleScroll }, this.loading && (hAsync("li", { class: "pds-multiselect__loading", role: "presentation" }, hasSlottedLoading ? (hAsync("slot", { name: "loading" })) : (hAsync("pds-loader", { size: "small" })))), !this.loading && filteredOptions.length === 0 && (hAsync("li", { class: "pds-multiselect__empty", role: "presentation" }, hasSlottedEmpty ? (hAsync("slot", { name: "empty" })) : (hAsync("span", null, "No options found")))), filteredOptions.map((option, index) => {
|
|
12289
12633
|
const isSelected = valueArray.includes(String(option.id));
|
|
12290
12634
|
const isCreateOption = option.isCreateOption;
|
|
12291
12635
|
const isHighlighted = index === this.highlightedIndex && !isCreateOption;
|
|
@@ -12309,19 +12653,19 @@ class PdsMultiselect {
|
|
|
12309
12653
|
}
|
|
12310
12654
|
render() {
|
|
12311
12655
|
const hasSelections = this.selectedItems.length > 0;
|
|
12312
|
-
return (hAsync(Host, { key: '
|
|
12656
|
+
return (hAsync(Host, { key: '824364c4ab70a90abc5542ac66eb8259e727e4e6', "aria-disabled": this.disabled ? 'true' : null }, hAsync("div", { key: 'ff103de53850eef00dad44e97333c58a54c8ae59', class: "pds-multiselect" }, this.label && (hAsync("label", { key: '0524860c38d53aeddf35e9905abe783cb1174d6b', htmlFor: this.componentId, class: {
|
|
12313
12657
|
'pds-multiselect__label': true,
|
|
12314
12658
|
'visually-hidden': this.hideLabel,
|
|
12315
|
-
} }, this.label)), hAsync("div", { key: '
|
|
12659
|
+
} }, this.label)), hAsync("div", { key: 'b6313b12f499656e98c33af524240fd51a332e68', class: "pds-multiselect__wrapper", ref: el => (this.containerEl = el), onFocusout: this.handleContainerFocusOut, style: { width: this.triggerWidth } }, hAsync("button", { key: 'fbf274a4dace5f039ce1ce46674d66a08c5c280d', ref: el => (this.triggerEl = el), type: "button", class: {
|
|
12316
12660
|
'pds-multiselect__trigger': true,
|
|
12317
12661
|
'pds-multiselect__trigger--open': this.isOpen,
|
|
12318
12662
|
'pds-multiselect__trigger--disabled': this.disabled,
|
|
12319
12663
|
'pds-multiselect__trigger--invalid': this.invalid || !!this.errorMessage,
|
|
12320
12664
|
'pds-multiselect__trigger--has-value': hasSelections,
|
|
12321
|
-
}, id: this.componentId, disabled: this.disabled, "aria-required": this.required ? 'true' : undefined, "aria-expanded": this.isOpen ? 'true' : 'false', "aria-haspopup": "listbox", "aria-describedby": assignDescription(this.componentId, this.invalid || !!this.errorMessage, this.errorMessage || this.helperMessage), "aria-invalid": this.invalid || !!this.errorMessage ? 'true' : undefined, onClick: this.handleTriggerClick, onKeyDown: this.handleTriggerKeyDown }, hAsync("span", { key: '
|
|
12665
|
+
}, id: this.componentId, disabled: this.disabled, "aria-required": this.required ? 'true' : undefined, "aria-expanded": this.isOpen ? 'true' : 'false', "aria-haspopup": "listbox", "aria-describedby": assignDescription(this.componentId, this.invalid || !!this.errorMessage, this.errorMessage || this.helperMessage), "aria-invalid": this.invalid || !!this.errorMessage ? 'true' : undefined, onClick: this.handleTriggerClick, onKeyDown: this.handleTriggerKeyDown }, hAsync("span", { key: '314fc7f00db71a170f1fc7c83306cebc3397a451', class: {
|
|
12322
12666
|
'pds-multiselect__trigger-text': true,
|
|
12323
12667
|
'pds-multiselect__trigger-text--placeholder': !hasSelections,
|
|
12324
|
-
} }, this.getTriggerText()), hAsync("pds-icon", { key: '
|
|
12668
|
+
} }, this.getTriggerText()), hAsync("pds-icon", { key: 'e81690095180cfe9b4799c531ba5d7a9952a2a6c', class: "pds-multiselect__icon", icon: enlarge })), this.renderDropdown()), this.helperMessage && !(this.errorMessage && this.errorMessage.length > 0) && (hAsync("p", { key: 'd2a511d548d10a1bc5b9704f7de6f050e00cb9f4', class: "pds-multiselect__helper", id: messageId(this.componentId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("p", { key: '2cca6e85a6ca9033e7baea24a509bb6d7064119d', class: "pds-multiselect__error", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: '6f680d14585dac5c6de3d0ec864ef1311241d2d2', icon: danger, size: "small" }), this.errorMessage)), hAsync("div", { key: '5be84a5f96531cb2add1d490c292a7482b444b83', style: { display: 'none' } }, hAsync("slot", { key: 'cf9bece8f341293b6fa701b185db3926510c3845' })))));
|
|
12325
12669
|
}
|
|
12326
12670
|
static get formAssociated() { return true; }
|
|
12327
12671
|
get el() { return getElement(this); }
|
|
@@ -12339,6 +12683,8 @@ class PdsMultiselect {
|
|
|
12339
12683
|
"componentId": [1, "component-id"],
|
|
12340
12684
|
"label": [1],
|
|
12341
12685
|
"placeholder": [1],
|
|
12686
|
+
"searchPlaceholder": [1, "search-placeholder"],
|
|
12687
|
+
"closePanelOnSelect": [4, "close-panel-on-select"],
|
|
12342
12688
|
"name": [1],
|
|
12343
12689
|
"value": [1040],
|
|
12344
12690
|
"disabled": [4],
|
|
@@ -12352,6 +12698,7 @@ class PdsMultiselect {
|
|
|
12352
12698
|
"minWidth": [1, "min-width"],
|
|
12353
12699
|
"panelWidth": [1, "panel-width"],
|
|
12354
12700
|
"hideLabel": [4, "hide-label"],
|
|
12701
|
+
"hideSelectedItems": [4, "hide-selected-items"],
|
|
12355
12702
|
"errorMessage": [1, "error-message"],
|
|
12356
12703
|
"helperMessage": [1, "helper-message"],
|
|
12357
12704
|
"invalid": [4],
|
|
@@ -12370,7 +12717,8 @@ class PdsMultiselect {
|
|
|
12370
12717
|
"currentPage": [32],
|
|
12371
12718
|
"hasMore": [32],
|
|
12372
12719
|
"creating": [32],
|
|
12373
|
-
"setFocus": [64]
|
|
12720
|
+
"setFocus": [64],
|
|
12721
|
+
"clear": [64]
|
|
12374
12722
|
},
|
|
12375
12723
|
"$listeners$": [[8, "keydown", "handleWindowKeyDown"]],
|
|
12376
12724
|
"$lazyBundleId$": "-",
|
|
@@ -16634,18 +16982,23 @@ class PdsTab {
|
|
|
16634
16982
|
}; }
|
|
16635
16983
|
}
|
|
16636
16984
|
|
|
16637
|
-
const pdsTableCss = "@charset \"UTF-8\";:host{--color-background-default:var(--pine-color-background-container);background:var(--color-background-default);border-collapse:separate;border-radius:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;display:table;width:100%}:host(:focus-visible){outline:var(--pine-outline-focus)}:host(.pds-table-responsive-host){border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;max-width:100% !important;overflow:hidden !important;position:relative !important;width:100% !important}.pds-table-responsive-container{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;overflow-x:auto !important;overflow-y:visible !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper .pds-table{display:table !important;min-width:-webkit-max-content !important;min-width:-moz-max-content !important;min-width:max-content !important;table-layout:auto !important;white-space:nowrap !important;width:100% !important}.scroll-shadow-left,.scroll-shadow-right{height:100%;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-transition:opacity 0.1s ease;transition:opacity 0.1s ease;width:4px;z-index:var(--pine-z-index)}.scroll-shadow-left{background:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent);border-bottom-left-radius:inherit;border-top-left-radius:inherit;left:0}.scroll-shadow-right{background:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);border-bottom-right-radius:inherit;border-top-right-radius:inherit;right:0}";
|
|
16985
|
+
const pdsTableCss = "@charset \"UTF-8\";:host{--color-background-default:var(--pine-color-background-container);background:var(--color-background-default);border-collapse:separate;border-radius:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;display:table;isolation:isolate;width:100%}:host(:focus-visible){outline:var(--pine-outline-focus)}:host(.pds-table-responsive-host){border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;max-width:100% !important;overflow:hidden !important;position:relative !important;width:100% !important}.pds-table-responsive-container{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;overflow-x:auto !important;overflow-y:visible !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper{border-radius:inherit;-webkit-box-sizing:border-box !important;box-sizing:border-box !important;display:block !important;position:relative !important;width:100% !important}.pds-table-responsive-wrapper .pds-table{display:table !important;min-width:-webkit-max-content !important;min-width:-moz-max-content !important;min-width:max-content !important;table-layout:auto !important;white-space:nowrap !important;width:100% !important}.scroll-shadow-left,.scroll-shadow-right{height:100%;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-transition:opacity 0.1s ease;transition:opacity 0.1s ease;width:4px;z-index:var(--pine-z-index)}.scroll-shadow-left{background:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent);border-bottom-left-radius:inherit;border-top-left-radius:inherit;left:0}.scroll-shadow-right{background:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(transparent));background:linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);border-bottom-right-radius:inherit;border-top-right-radius:inherit;right:0}";
|
|
16638
16986
|
|
|
16639
16987
|
class PdsTable {
|
|
16640
16988
|
constructor(hostRef) {
|
|
16641
16989
|
registerInstance(this, hostRef);
|
|
16642
|
-
this.pdsTableSelect = createEvent(this, "pdsTableSelect");
|
|
16643
16990
|
this.pdsTableSelectAll = createEvent(this, "pdsTableSelectAll");
|
|
16644
16991
|
this.scrollContainer = null;
|
|
16645
16992
|
this._responsiveHandleScroll = null;
|
|
16646
16993
|
this._responsiveHandleResize = null;
|
|
16647
16994
|
this._responsiveResizeObserver = null;
|
|
16648
16995
|
this._teardownResponsive = null;
|
|
16996
|
+
/**
|
|
16997
|
+
* Hides the select-all checkbox in the table header while keeping individual row checkboxes functional.
|
|
16998
|
+
* Only applies when `selectable` is true.
|
|
16999
|
+
* @defaultValue false
|
|
17000
|
+
*/
|
|
17001
|
+
this.disableSelectAll = false;
|
|
16649
17002
|
/**
|
|
16650
17003
|
* Adds divider borders between table rows. The last row will not have a bottom border.
|
|
16651
17004
|
* @defaultValue false
|
|
@@ -16865,8 +17218,10 @@ class PdsTable {
|
|
|
16865
17218
|
if (!pdsTableHead)
|
|
16866
17219
|
return;
|
|
16867
17220
|
const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');
|
|
16868
|
-
headerCheckbox
|
|
16869
|
-
|
|
17221
|
+
if (headerCheckbox) {
|
|
17222
|
+
headerCheckbox.checked = allSelectedRows;
|
|
17223
|
+
headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;
|
|
17224
|
+
}
|
|
16870
17225
|
}
|
|
16871
17226
|
render() {
|
|
16872
17227
|
if (this.responsive) {
|
|
@@ -16885,6 +17240,7 @@ class PdsTable {
|
|
|
16885
17240
|
"responsive": [4],
|
|
16886
17241
|
"fixedColumn": [4, "fixed-column"],
|
|
16887
17242
|
"selectable": [4],
|
|
17243
|
+
"disableSelectAll": [4, "disable-select-all"],
|
|
16888
17244
|
"rowDividers": [516, "row-dividers"],
|
|
16889
17245
|
"defaultSortColumn": [1, "default-sort-column"],
|
|
16890
17246
|
"defaultSortDirection": [1, "default-sort-direction"],
|
|
@@ -16917,13 +17273,14 @@ class PdsTableBody {
|
|
|
16917
17273
|
}; }
|
|
16918
17274
|
}
|
|
16919
17275
|
|
|
16920
|
-
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:middle}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}:host(.pds-table-cell--align-start){text-align:start}:host(.pds-table-cell--align-center){text-align:center}:host(.pds-table-cell--align-end){text-align:end}:host(.pds-table-cell--align-justify){text-align:justify}";
|
|
17276
|
+
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:middle}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:var(--pds-table-cell-truncate-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}";
|
|
16921
17277
|
|
|
16922
17278
|
class PdsTableCell {
|
|
16923
17279
|
constructor(hostRef) {
|
|
16924
17280
|
registerInstance(this, hostRef);
|
|
16925
17281
|
this.scrollContainer = null;
|
|
16926
17282
|
this.setupRetries = 0;
|
|
17283
|
+
this.truncationCleanup = null;
|
|
16927
17284
|
/**
|
|
16928
17285
|
* Determines if the table is currently scrolling.
|
|
16929
17286
|
* @defaultValue false
|
|
@@ -16955,9 +17312,13 @@ class PdsTableCell {
|
|
|
16955
17312
|
// This enables the first column to show a shadow when the table is scrolled horizontally
|
|
16956
17313
|
this.setupScrollListener();
|
|
16957
17314
|
}
|
|
17315
|
+
if (this.truncate) {
|
|
17316
|
+
this.initTruncationTooltip();
|
|
17317
|
+
}
|
|
16958
17318
|
}
|
|
16959
17319
|
disconnectedCallback() {
|
|
16960
17320
|
this.cleanupScrollListener();
|
|
17321
|
+
this.destroyTruncationTooltip();
|
|
16961
17322
|
}
|
|
16962
17323
|
setupScrollListener() {
|
|
16963
17324
|
var _a;
|
|
@@ -16998,6 +17359,28 @@ class PdsTableCell {
|
|
|
16998
17359
|
}
|
|
16999
17360
|
this.setupRetries = 0; // Reset retry counter
|
|
17000
17361
|
}
|
|
17362
|
+
handleTruncateChange(newValue) {
|
|
17363
|
+
if (newValue) {
|
|
17364
|
+
this.initTruncationTooltip();
|
|
17365
|
+
}
|
|
17366
|
+
else {
|
|
17367
|
+
this.destroyTruncationTooltip();
|
|
17368
|
+
}
|
|
17369
|
+
}
|
|
17370
|
+
initTruncationTooltip() {
|
|
17371
|
+
this.destroyTruncationTooltip();
|
|
17372
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
17373
|
+
hostEl: this.hostElement,
|
|
17374
|
+
contentEl: this.hostElement,
|
|
17375
|
+
getTooltipText: () => this.hostElement.textContent || '',
|
|
17376
|
+
});
|
|
17377
|
+
}
|
|
17378
|
+
destroyTruncationTooltip() {
|
|
17379
|
+
if (this.truncationCleanup) {
|
|
17380
|
+
this.truncationCleanup();
|
|
17381
|
+
this.truncationCleanup = null;
|
|
17382
|
+
}
|
|
17383
|
+
}
|
|
17001
17384
|
classNames() {
|
|
17002
17385
|
const classNames = [];
|
|
17003
17386
|
if (this.tableRef && this.tableRef.compact) {
|
|
@@ -17015,13 +17398,16 @@ class PdsTableCell {
|
|
|
17015
17398
|
return classNames.join(' ');
|
|
17016
17399
|
}
|
|
17017
17400
|
render() {
|
|
17018
|
-
return (hAsync(Host, { key: '
|
|
17401
|
+
return (hAsync(Host, { key: 'f1526ebf858c52e01185174cb37770d130abd3ca', class: this.classNames(), role: "gridcell", part: "cell", tabIndex: this.truncate ? 0 : undefined, style: this.tableRef &&
|
|
17019
17402
|
this.tableRef.fixedColumn &&
|
|
17020
17403
|
this.tableRef.selectable
|
|
17021
17404
|
? { '--fixed-cell-position': '40px' }
|
|
17022
|
-
: {} }, hAsync("slot", { key: '
|
|
17405
|
+
: {} }, hAsync("slot", { key: '518a3cb3fad0bbbe029f218c2dc89596d1cd0b16' })));
|
|
17023
17406
|
}
|
|
17024
17407
|
get hostElement() { return getElement(this); }
|
|
17408
|
+
static get watchers() { return {
|
|
17409
|
+
"truncate": ["handleTruncateChange"]
|
|
17410
|
+
}; }
|
|
17025
17411
|
static get style() { return pdsTableCellCss; }
|
|
17026
17412
|
static get cmpMeta() { return {
|
|
17027
17413
|
"$flags$": 265,
|
|
@@ -17091,7 +17477,7 @@ class PdsTableHead {
|
|
|
17091
17477
|
}
|
|
17092
17478
|
}
|
|
17093
17479
|
render() {
|
|
17094
|
-
return (hAsync(Host, { key: 'd5d5906bdb23794b911ecd5904a4cc58aa5380d6', role: "row", part: "head" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-head-cell", { key: '85df57fb4371e4fba855e16ce62c8329b49e08cf', part: this.tableRef.selectable ? 'checkbox-cell' : '' }, hAsync("pds-checkbox", { key: '
|
|
17480
|
+
return (hAsync(Host, { key: 'd5d5906bdb23794b911ecd5904a4cc58aa5380d6', role: "row", part: "head" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-head-cell", { key: '85df57fb4371e4fba855e16ce62c8329b49e08cf', part: this.tableRef.selectable ? 'checkbox-cell' : '' }, !this.tableRef.disableSelectAll && (hAsync("pds-checkbox", { key: '92bd5565463e29d249d1ac71d9dc0d000f3eea79', componentId: this.generateUniqueId(), indeterminate: this.indeterminate, onInput: this.handleInput, label: "Select All Rows", hideLabel: true, checked: this.isSelected, part: "select-all-checkbox" })))), hAsync("slot", { key: '494dc0395da229a264c38540479f36967601cc26' })));
|
|
17095
17481
|
}
|
|
17096
17482
|
get hostElement() { return getElement(this); }
|
|
17097
17483
|
static get style() { return pdsTableHeadCss; }
|
|
@@ -17359,8 +17745,8 @@ class PdsTableRow {
|
|
|
17359
17745
|
* @defaultValue false
|
|
17360
17746
|
*/
|
|
17361
17747
|
this.isLastRow = false;
|
|
17362
|
-
this.
|
|
17363
|
-
this.isSelected =
|
|
17748
|
+
this.handleCheckboxChange = (event) => {
|
|
17749
|
+
this.isSelected = event.detail.checked;
|
|
17364
17750
|
this.handleSelect(this.isSelected);
|
|
17365
17751
|
};
|
|
17366
17752
|
this.handleSelect = (isSelected) => {
|
|
@@ -17482,7 +17868,7 @@ class PdsTableRow {
|
|
|
17482
17868
|
}
|
|
17483
17869
|
}
|
|
17484
17870
|
render() {
|
|
17485
|
-
return (hAsync(Host, { key: '
|
|
17871
|
+
return (hAsync(Host, { key: '6bbd8bb7cd1f90de0e418748bf8d3b9240ab0cb8', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-cell", { key: '9a92396654e7cdf819536335ebe95169d4d4c26d', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, hAsync("pds-checkbox", { key: 'bf61a00da4d3c19280aae90d8eaff9515a716c52', componentId: this.generateUniqueId(), onPdsCheckboxChange: this.handleCheckboxChange, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), hAsync("slot", { key: 'f77887e878913bea5e0ca0a281a639285a65f1c1' })));
|
|
17486
17872
|
}
|
|
17487
17873
|
get hostElement() { return getElement(this); }
|
|
17488
17874
|
static get style() { return pdsTableRowCss; }
|
|
@@ -17653,11 +18039,45 @@ const pdsTextCss = ":host{display:inline}:host([decoration=underline-dotted])>*{
|
|
|
17653
18039
|
class PdsText {
|
|
17654
18040
|
constructor(hostRef) {
|
|
17655
18041
|
registerInstance(this, hostRef);
|
|
18042
|
+
this.truncationCleanup = null;
|
|
17656
18043
|
/**
|
|
17657
18044
|
* Determines what semantic text tag to render.
|
|
17658
18045
|
*/
|
|
17659
18046
|
this.tag = "p";
|
|
17660
18047
|
}
|
|
18048
|
+
handleTruncateChange(newValue) {
|
|
18049
|
+
if (newValue) {
|
|
18050
|
+
this.initTruncationTooltip();
|
|
18051
|
+
}
|
|
18052
|
+
else {
|
|
18053
|
+
this.destroyTruncationTooltip();
|
|
18054
|
+
}
|
|
18055
|
+
}
|
|
18056
|
+
componentDidLoad() {
|
|
18057
|
+
if (this.truncate) {
|
|
18058
|
+
this.initTruncationTooltip();
|
|
18059
|
+
}
|
|
18060
|
+
}
|
|
18061
|
+
disconnectedCallback() {
|
|
18062
|
+
this.destroyTruncationTooltip();
|
|
18063
|
+
}
|
|
18064
|
+
initTruncationTooltip() {
|
|
18065
|
+
// Clean up any existing tooltip before setting up a new one
|
|
18066
|
+
this.destroyTruncationTooltip();
|
|
18067
|
+
if (this.contentEl) {
|
|
18068
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
18069
|
+
hostEl: this.el,
|
|
18070
|
+
contentEl: this.contentEl,
|
|
18071
|
+
getTooltipText: () => this.el.textContent || '',
|
|
18072
|
+
});
|
|
18073
|
+
}
|
|
18074
|
+
}
|
|
18075
|
+
destroyTruncationTooltip() {
|
|
18076
|
+
if (this.truncationCleanup) {
|
|
18077
|
+
this.truncationCleanup();
|
|
18078
|
+
this.truncationCleanup = null;
|
|
18079
|
+
}
|
|
18080
|
+
}
|
|
17661
18081
|
render() {
|
|
17662
18082
|
const Tag = this.tag;
|
|
17663
18083
|
const typeClasses = `
|
|
@@ -17668,9 +18088,12 @@ class PdsText {
|
|
|
17668
18088
|
${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}
|
|
17669
18089
|
${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}
|
|
17670
18090
|
`;
|
|
17671
|
-
return (hAsync(Tag, { key: '
|
|
18091
|
+
return (hAsync(Tag, { key: 'e5d4fa802fbc1a66c21d6e959fb2228f8cac1902', ref: (el) => this.contentEl = el, style: this.color && setColor(this.color), class: typeClasses, part: "content", tabIndex: this.truncate ? 0 : undefined }, hAsync("slot", { key: '4ff0b2cb3a185fd97ef296262790379df832b7b8' })));
|
|
17672
18092
|
}
|
|
17673
18093
|
get el() { return getElement(this); }
|
|
18094
|
+
static get watchers() { return {
|
|
18095
|
+
"truncate": ["handleTruncateChange"]
|
|
18096
|
+
}; }
|
|
17674
18097
|
static get style() { return pdsTextCss; }
|
|
17675
18098
|
static get cmpMeta() { return {
|
|
17676
18099
|
"$flags$": 265,
|