@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.js
CHANGED
|
@@ -3521,7 +3521,7 @@ class MockPdsModal {
|
|
|
3521
3521
|
}; }
|
|
3522
3522
|
}
|
|
3523
3523
|
|
|
3524
|
-
/* pds-icons v9.
|
|
3524
|
+
/* pds-icons v9.16.0, ES Modules */
|
|
3525
3525
|
|
|
3526
3526
|
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>";
|
|
3527
3527
|
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>";
|
|
@@ -4123,7 +4123,7 @@ class PdsBox {
|
|
|
4123
4123
|
}; }
|
|
4124
4124
|
}
|
|
4125
4125
|
|
|
4126
|
-
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
|
|
4126
|
+
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)}";
|
|
4127
4127
|
|
|
4128
4128
|
/**
|
|
4129
4129
|
* @part button - Exposes the button element for styling.
|
|
@@ -4181,6 +4181,14 @@ class PdsButton {
|
|
|
4181
4181
|
* @defaultValue primary
|
|
4182
4182
|
*/
|
|
4183
4183
|
this.variant = 'primary';
|
|
4184
|
+
this.hasStartContent = false;
|
|
4185
|
+
this.hasEndContent = false;
|
|
4186
|
+
this.handleStartSlotChange = (event) => {
|
|
4187
|
+
this.hasStartContent = event.target.assignedElements({ flatten: true }).length > 0;
|
|
4188
|
+
};
|
|
4189
|
+
this.handleEndSlotChange = (event) => {
|
|
4190
|
+
this.hasEndContent = event.target.assignedElements({ flatten: true }).length > 0;
|
|
4191
|
+
};
|
|
4184
4192
|
this.handleClick = (ev) => {
|
|
4185
4193
|
if (this.loading) {
|
|
4186
4194
|
ev.preventDefault();
|
|
@@ -4279,8 +4287,9 @@ class PdsButton {
|
|
|
4279
4287
|
return (hAsync("pds-icon", { class: this.loading ? 'pds-button__icon--hidden' : '', name: this.icon, part: "icon", "aria-hidden": "true" }));
|
|
4280
4288
|
}
|
|
4281
4289
|
// Always render the start slot so slotted content is projected reliably.
|
|
4282
|
-
//
|
|
4283
|
-
|
|
4290
|
+
// The --empty class hides the wrapper when no content is slotted (prevents empty gap space).
|
|
4291
|
+
const startClasses = `pds-button__icon${this.hasStartContent ? '' : ' pds-button__icon--empty'}${this.loading ? ' pds-button__icon--hidden' : ''}`;
|
|
4292
|
+
return hAsync("span", { class: startClasses }, hAsync("slot", { name: "start", onSlotchange: this.handleStartSlotChange }));
|
|
4284
4293
|
}
|
|
4285
4294
|
renderEndContent() {
|
|
4286
4295
|
if (this.iconOnly) {
|
|
@@ -4290,8 +4299,9 @@ class PdsButton {
|
|
|
4290
4299
|
return (hAsync("pds-icon", { class: this.loading ? 'pds-button__icon--hidden' : '', icon: caretDown, part: "caret", "aria-hidden": "true" }));
|
|
4291
4300
|
}
|
|
4292
4301
|
// Always render the end slot so slotted content is projected reliably.
|
|
4293
|
-
//
|
|
4294
|
-
|
|
4302
|
+
// The --empty class hides the wrapper when no content is slotted (prevents empty gap space).
|
|
4303
|
+
const endClasses = `pds-button__icon${this.hasEndContent ? '' : ' pds-button__icon--empty'}${this.loading ? ' pds-button__icon--hidden' : ''}`;
|
|
4304
|
+
return hAsync("span", { class: endClasses }, hAsync("slot", { name: "end", onSlotchange: this.handleEndSlotChange }));
|
|
4295
4305
|
}
|
|
4296
4306
|
render() {
|
|
4297
4307
|
// Common props for both button and anchor elements
|
|
@@ -4329,7 +4339,9 @@ class PdsButton {
|
|
|
4329
4339
|
"type": [1],
|
|
4330
4340
|
"value": [1],
|
|
4331
4341
|
"size": [1],
|
|
4332
|
-
"variant": [1]
|
|
4342
|
+
"variant": [1],
|
|
4343
|
+
"hasStartContent": [32],
|
|
4344
|
+
"hasEndContent": [32]
|
|
4333
4345
|
},
|
|
4334
4346
|
"$listeners$": [[16, "keydown", "handleFormKeyDown"]],
|
|
4335
4347
|
"$lazyBundleId$": "-",
|
|
@@ -9022,12 +9034,254 @@ class PdsCombobox {
|
|
|
9022
9034
|
}; }
|
|
9023
9035
|
}
|
|
9024
9036
|
|
|
9037
|
+
/** CSS class prefix used for truncation tooltip portal elements */
|
|
9038
|
+
const TOOLTIP_CLASS = 'pds-truncation-tooltip';
|
|
9039
|
+
/**
|
|
9040
|
+
* Injects the truncation tooltip styles into the document head.
|
|
9041
|
+
* Uses the same design tokens as pds-tooltip for visual consistency.
|
|
9042
|
+
* Only injects once — checks the DOM to avoid duplicates.
|
|
9043
|
+
*
|
|
9044
|
+
* Z-Index Strategy:
|
|
9045
|
+
* Uses --pine-z-index-nuclear (9999) to ensure tooltips appear above all other UI elements.
|
|
9046
|
+
* This is necessary because tooltips are portaled to document.body and must overlay:
|
|
9047
|
+
* - Modal dialogs
|
|
9048
|
+
* - Dropdown menus
|
|
9049
|
+
* - Other floating UI elements
|
|
9050
|
+
* If you encounter z-index conflicts, ensure your overlays use Pine's z-index tokens
|
|
9051
|
+
* or adjust --pine-z-index-nuclear in your theme.
|
|
9052
|
+
*/
|
|
9053
|
+
function injectStyles() {
|
|
9054
|
+
if (document.querySelector('[data-pds-truncation-tooltip]'))
|
|
9055
|
+
return;
|
|
9056
|
+
const style = document.createElement('style');
|
|
9057
|
+
style.setAttribute('data-pds-truncation-tooltip', '');
|
|
9058
|
+
style.textContent = `
|
|
9059
|
+
.${TOOLTIP_CLASS} {
|
|
9060
|
+
position: fixed;
|
|
9061
|
+
z-index: var(--pine-z-index-nuclear, 9999);
|
|
9062
|
+
}
|
|
9063
|
+
.${TOOLTIP_CLASS}__content {
|
|
9064
|
+
background-color: var(--pine-color-primary, #1a1a2e);
|
|
9065
|
+
border-radius: calc(var(--pine-dimension-xs, 4px) * 1.25);
|
|
9066
|
+
box-shadow: var(--pine-box-shadow, 0 2px 8px rgba(0,0,0,0.15));
|
|
9067
|
+
color: var(--pine-color-text-primary, #fff);
|
|
9068
|
+
cursor: text;
|
|
9069
|
+
font-family: var(--pine-font-family-body, sans-serif);
|
|
9070
|
+
font-size: var(--pine-font-size-body-sm, 0.875rem);
|
|
9071
|
+
letter-spacing: var(--pine-letter-spacing, normal);
|
|
9072
|
+
line-height: var(--pine-line-height-body, 1.5);
|
|
9073
|
+
max-width: 320px;
|
|
9074
|
+
opacity: 0;
|
|
9075
|
+
padding: var(--pine-dimension-xs, 4px) calc(var(--pine-dimension-md, 12px) / 2);
|
|
9076
|
+
transition: opacity 0.15s ease-in-out, visibility 0.15s ease-in-out;
|
|
9077
|
+
user-select: text;
|
|
9078
|
+
visibility: hidden;
|
|
9079
|
+
width: max-content;
|
|
9080
|
+
word-break: break-word;
|
|
9081
|
+
}
|
|
9082
|
+
.${TOOLTIP_CLASS}--visible .${TOOLTIP_CLASS}__content {
|
|
9083
|
+
opacity: 1;
|
|
9084
|
+
visibility: visible;
|
|
9085
|
+
}
|
|
9086
|
+
`;
|
|
9087
|
+
document.head.appendChild(style);
|
|
9088
|
+
}
|
|
9089
|
+
/**
|
|
9090
|
+
* Checks if an element's content is overflowing horizontally (i.e. text is truncated).
|
|
9091
|
+
*/
|
|
9092
|
+
function isOverflowing(el) {
|
|
9093
|
+
return el.scrollWidth > el.clientWidth;
|
|
9094
|
+
}
|
|
9095
|
+
/**
|
|
9096
|
+
* Sets up automatic tooltip behavior for a truncated element.
|
|
9097
|
+
*
|
|
9098
|
+
* When the element's text overflows, hovering or focusing the host element
|
|
9099
|
+
* will display a tooltip showing the full text content. The tooltip is
|
|
9100
|
+
* rendered as a portal on document.body and positioned with Floating UI.
|
|
9101
|
+
*
|
|
9102
|
+
* @returns A cleanup function that removes all listeners, observers, and DOM elements.
|
|
9103
|
+
*/
|
|
9104
|
+
function setupTruncationTooltip(options) {
|
|
9105
|
+
const { hostEl, contentEl, getTooltipText, placement = 'top' } = options;
|
|
9106
|
+
injectStyles();
|
|
9107
|
+
let portalEl = null;
|
|
9108
|
+
let isHovering = false;
|
|
9109
|
+
let isHoveringPortal = false;
|
|
9110
|
+
let isFocused = false;
|
|
9111
|
+
let hideTimeout = null;
|
|
9112
|
+
let resizeObserver = null;
|
|
9113
|
+
let resizeDebounce = null;
|
|
9114
|
+
// Use ResizeObserver to re-evaluate overflow when the element resizes
|
|
9115
|
+
// Debounced to prevent performance issues during rapid window resizing
|
|
9116
|
+
if (typeof ResizeObserver !== 'undefined') {
|
|
9117
|
+
resizeObserver = new ResizeObserver(() => {
|
|
9118
|
+
if (resizeDebounce) {
|
|
9119
|
+
clearTimeout(resizeDebounce);
|
|
9120
|
+
}
|
|
9121
|
+
resizeDebounce = setTimeout(() => {
|
|
9122
|
+
resizeDebounce = null;
|
|
9123
|
+
// If tooltip is showing but text no longer overflows, hide it
|
|
9124
|
+
if (portalEl && portalEl.isConnected && !isOverflowing(contentEl)) {
|
|
9125
|
+
hideTooltip();
|
|
9126
|
+
}
|
|
9127
|
+
}, 100);
|
|
9128
|
+
});
|
|
9129
|
+
resizeObserver.observe(contentEl);
|
|
9130
|
+
}
|
|
9131
|
+
function createPortal() {
|
|
9132
|
+
if (portalEl)
|
|
9133
|
+
return;
|
|
9134
|
+
const text = getTooltipText();
|
|
9135
|
+
if (!text || text.trim() === '')
|
|
9136
|
+
return;
|
|
9137
|
+
portalEl = document.createElement('div');
|
|
9138
|
+
portalEl.className = TOOLTIP_CLASS;
|
|
9139
|
+
portalEl.setAttribute('role', 'tooltip');
|
|
9140
|
+
portalEl.setAttribute('aria-hidden', 'false');
|
|
9141
|
+
const contentDiv = document.createElement('div');
|
|
9142
|
+
contentDiv.className = `${TOOLTIP_CLASS}__content`;
|
|
9143
|
+
contentDiv.textContent = text.trim();
|
|
9144
|
+
portalEl.appendChild(contentDiv);
|
|
9145
|
+
document.body.appendChild(portalEl);
|
|
9146
|
+
// Allow the user to hover into the tooltip to select/copy text
|
|
9147
|
+
portalEl.addEventListener('mouseenter', handlePortalMouseEnter);
|
|
9148
|
+
portalEl.addEventListener('mouseleave', handlePortalMouseLeave);
|
|
9149
|
+
positionTooltip().then(() => {
|
|
9150
|
+
if (portalEl) {
|
|
9151
|
+
portalEl.classList.add(`${TOOLTIP_CLASS}--visible`);
|
|
9152
|
+
}
|
|
9153
|
+
});
|
|
9154
|
+
}
|
|
9155
|
+
async function positionTooltip() {
|
|
9156
|
+
if (!portalEl)
|
|
9157
|
+
return;
|
|
9158
|
+
try {
|
|
9159
|
+
const { x, y } = await computePosition(hostEl, portalEl, {
|
|
9160
|
+
placement,
|
|
9161
|
+
strategy: 'fixed',
|
|
9162
|
+
middleware: [offset(4), flip(), shift({ padding: 5 })],
|
|
9163
|
+
});
|
|
9164
|
+
Object.assign(portalEl.style, {
|
|
9165
|
+
left: `${x}px`,
|
|
9166
|
+
top: `${y}px`,
|
|
9167
|
+
});
|
|
9168
|
+
}
|
|
9169
|
+
catch (_a) {
|
|
9170
|
+
// Fallback: position above the element with bounds checking
|
|
9171
|
+
if (portalEl) {
|
|
9172
|
+
const rect = hostEl.getBoundingClientRect();
|
|
9173
|
+
const portalRect = portalEl.getBoundingClientRect();
|
|
9174
|
+
const padding = 5;
|
|
9175
|
+
// Ensure tooltip stays within viewport bounds
|
|
9176
|
+
const left = Math.max(padding, Math.min(rect.left, window.innerWidth - portalRect.width - padding));
|
|
9177
|
+
const top = Math.max(padding, rect.top - portalRect.height - 8);
|
|
9178
|
+
portalEl.style.left = `${left}px`;
|
|
9179
|
+
portalEl.style.top = `${top}px`;
|
|
9180
|
+
}
|
|
9181
|
+
}
|
|
9182
|
+
}
|
|
9183
|
+
function removePortal() {
|
|
9184
|
+
if (portalEl) {
|
|
9185
|
+
portalEl.removeEventListener('mouseenter', handlePortalMouseEnter);
|
|
9186
|
+
portalEl.removeEventListener('mouseleave', handlePortalMouseLeave);
|
|
9187
|
+
portalEl.classList.remove(`${TOOLTIP_CLASS}--visible`);
|
|
9188
|
+
// Check if portal is still in the DOM before removing
|
|
9189
|
+
if (portalEl.parentNode && portalEl.isConnected) {
|
|
9190
|
+
try {
|
|
9191
|
+
portalEl.parentNode.removeChild(portalEl);
|
|
9192
|
+
}
|
|
9193
|
+
catch (e) {
|
|
9194
|
+
// Portal was already removed, ignore error
|
|
9195
|
+
}
|
|
9196
|
+
}
|
|
9197
|
+
portalEl = null;
|
|
9198
|
+
}
|
|
9199
|
+
}
|
|
9200
|
+
function cancelHideTimeout() {
|
|
9201
|
+
if (hideTimeout !== null) {
|
|
9202
|
+
clearTimeout(hideTimeout);
|
|
9203
|
+
hideTimeout = null;
|
|
9204
|
+
}
|
|
9205
|
+
}
|
|
9206
|
+
function showTooltip() {
|
|
9207
|
+
cancelHideTimeout();
|
|
9208
|
+
if (!isOverflowing(contentEl))
|
|
9209
|
+
return;
|
|
9210
|
+
createPortal();
|
|
9211
|
+
}
|
|
9212
|
+
function hideTooltip() {
|
|
9213
|
+
if (isHovering || isHoveringPortal || isFocused)
|
|
9214
|
+
return;
|
|
9215
|
+
removePortal();
|
|
9216
|
+
}
|
|
9217
|
+
/**
|
|
9218
|
+
* Schedules tooltip removal after a short delay.
|
|
9219
|
+
*
|
|
9220
|
+
* The 100ms delay serves two purposes:
|
|
9221
|
+
* 1. Gives users time to move their cursor from the truncated text to the tooltip portal
|
|
9222
|
+
* without it closing, enabling text selection/copying from the tooltip
|
|
9223
|
+
* 2. Prevents flickering when the user briefly moves the cursor during normal interaction
|
|
9224
|
+
*/
|
|
9225
|
+
function scheduleHide() {
|
|
9226
|
+
cancelHideTimeout();
|
|
9227
|
+
hideTimeout = setTimeout(() => {
|
|
9228
|
+
hideTimeout = null;
|
|
9229
|
+
hideTooltip();
|
|
9230
|
+
}, 100);
|
|
9231
|
+
}
|
|
9232
|
+
function handleMouseEnter() {
|
|
9233
|
+
isHovering = true;
|
|
9234
|
+
showTooltip();
|
|
9235
|
+
}
|
|
9236
|
+
function handleMouseLeave() {
|
|
9237
|
+
isHovering = false;
|
|
9238
|
+
scheduleHide();
|
|
9239
|
+
}
|
|
9240
|
+
function handlePortalMouseEnter() {
|
|
9241
|
+
isHoveringPortal = true;
|
|
9242
|
+
cancelHideTimeout();
|
|
9243
|
+
}
|
|
9244
|
+
function handlePortalMouseLeave() {
|
|
9245
|
+
isHoveringPortal = false;
|
|
9246
|
+
scheduleHide();
|
|
9247
|
+
}
|
|
9248
|
+
function handleFocusIn() {
|
|
9249
|
+
isFocused = true;
|
|
9250
|
+
showTooltip();
|
|
9251
|
+
}
|
|
9252
|
+
function handleFocusOut() {
|
|
9253
|
+
isFocused = false;
|
|
9254
|
+
scheduleHide();
|
|
9255
|
+
}
|
|
9256
|
+
hostEl.addEventListener('mouseenter', handleMouseEnter);
|
|
9257
|
+
hostEl.addEventListener('mouseleave', handleMouseLeave);
|
|
9258
|
+
hostEl.addEventListener('focusin', handleFocusIn);
|
|
9259
|
+
hostEl.addEventListener('focusout', handleFocusOut);
|
|
9260
|
+
// Return cleanup function
|
|
9261
|
+
return () => {
|
|
9262
|
+
cancelHideTimeout();
|
|
9263
|
+
if (resizeDebounce) {
|
|
9264
|
+
clearTimeout(resizeDebounce);
|
|
9265
|
+
resizeDebounce = null;
|
|
9266
|
+
}
|
|
9267
|
+
if (resizeObserver) {
|
|
9268
|
+
resizeObserver.disconnect();
|
|
9269
|
+
}
|
|
9270
|
+
hostEl.removeEventListener('mouseenter', handleMouseEnter);
|
|
9271
|
+
hostEl.removeEventListener('mouseleave', handleMouseLeave);
|
|
9272
|
+
hostEl.removeEventListener('focusin', handleFocusIn);
|
|
9273
|
+
hostEl.removeEventListener('focusout', handleFocusOut);
|
|
9274
|
+
removePortal();
|
|
9275
|
+
};
|
|
9276
|
+
}
|
|
9277
|
+
|
|
9025
9278
|
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}";
|
|
9026
9279
|
|
|
9027
9280
|
class PdsCopytext {
|
|
9028
9281
|
constructor(hostRef) {
|
|
9029
9282
|
registerInstance(this, hostRef);
|
|
9030
9283
|
this.pdsCopyTextClick = createEvent(this, "pdsCopyTextClick");
|
|
9284
|
+
this.truncationCleanup = null;
|
|
9031
9285
|
/**
|
|
9032
9286
|
* Determines whether `copytext` should have a visible border.
|
|
9033
9287
|
* @defaultValue true
|
|
@@ -9040,6 +9294,7 @@ class PdsCopytext {
|
|
|
9040
9294
|
this.fullWidth = false;
|
|
9041
9295
|
/**
|
|
9042
9296
|
* Determines whether the `value` should truncate and display with an ellipsis.
|
|
9297
|
+
* When text overflows, a tooltip showing the full value will appear on hover/focus.
|
|
9043
9298
|
* @defaultValue false
|
|
9044
9299
|
*/
|
|
9045
9300
|
this.truncate = false;
|
|
@@ -9058,6 +9313,43 @@ class PdsCopytext {
|
|
|
9058
9313
|
this.copyToClipboard(this.value);
|
|
9059
9314
|
};
|
|
9060
9315
|
}
|
|
9316
|
+
handleTruncateChange(newValue) {
|
|
9317
|
+
if (newValue) {
|
|
9318
|
+
this.initTruncationTooltip();
|
|
9319
|
+
}
|
|
9320
|
+
else {
|
|
9321
|
+
this.destroyTruncationTooltip();
|
|
9322
|
+
}
|
|
9323
|
+
}
|
|
9324
|
+
handleValueChange() {
|
|
9325
|
+
if (this.truncate) {
|
|
9326
|
+
this.initTruncationTooltip();
|
|
9327
|
+
}
|
|
9328
|
+
}
|
|
9329
|
+
componentDidLoad() {
|
|
9330
|
+
if (this.truncate) {
|
|
9331
|
+
this.initTruncationTooltip();
|
|
9332
|
+
}
|
|
9333
|
+
}
|
|
9334
|
+
disconnectedCallback() {
|
|
9335
|
+
this.destroyTruncationTooltip();
|
|
9336
|
+
}
|
|
9337
|
+
initTruncationTooltip() {
|
|
9338
|
+
this.destroyTruncationTooltip();
|
|
9339
|
+
if (this.valueSpanEl) {
|
|
9340
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
9341
|
+
hostEl: this.el,
|
|
9342
|
+
contentEl: this.valueSpanEl,
|
|
9343
|
+
getTooltipText: () => this.value || '',
|
|
9344
|
+
});
|
|
9345
|
+
}
|
|
9346
|
+
}
|
|
9347
|
+
destroyTruncationTooltip() {
|
|
9348
|
+
if (this.truncationCleanup) {
|
|
9349
|
+
this.truncationCleanup();
|
|
9350
|
+
this.truncationCleanup = null;
|
|
9351
|
+
}
|
|
9352
|
+
}
|
|
9061
9353
|
classNames() {
|
|
9062
9354
|
const classNames = ['pds-copytext'];
|
|
9063
9355
|
if (this.border) {
|
|
@@ -9072,8 +9364,13 @@ class PdsCopytext {
|
|
|
9072
9364
|
return classNames.join(' ');
|
|
9073
9365
|
}
|
|
9074
9366
|
render() {
|
|
9075
|
-
return (hAsync(Host, { key: '
|
|
9367
|
+
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" }))));
|
|
9076
9368
|
}
|
|
9369
|
+
get el() { return getElement(this); }
|
|
9370
|
+
static get watchers() { return {
|
|
9371
|
+
"truncate": ["handleTruncateChange"],
|
|
9372
|
+
"value": ["handleValueChange"]
|
|
9373
|
+
}; }
|
|
9077
9374
|
static get style() { return pdsCopytextCss; }
|
|
9078
9375
|
static get cmpMeta() { return {
|
|
9079
9376
|
"$flags$": 265,
|
|
@@ -11569,10 +11866,21 @@ class PdsMultiselect {
|
|
|
11569
11866
|
this.pdsMultiselectSearch = createEvent(this, "pdsMultiselectSearch");
|
|
11570
11867
|
this.pdsMultiselectLoadOptions = createEvent(this, "pdsMultiselectLoadOptions");
|
|
11571
11868
|
this.pdsMultiselectCreate = createEvent(this, "pdsMultiselectCreate");
|
|
11869
|
+
this.pdsMultiselectDismiss = createEvent(this, "pdsMultiselectDismiss");
|
|
11572
11870
|
/**
|
|
11573
11871
|
* Placeholder text for the input field.
|
|
11574
11872
|
*/
|
|
11575
11873
|
this.placeholder = 'Select...';
|
|
11874
|
+
/**
|
|
11875
|
+
* Placeholder text for the search input inside the dropdown panel.
|
|
11876
|
+
* @default 'Find...'
|
|
11877
|
+
*/
|
|
11878
|
+
this.searchPlaceholder = 'Find...';
|
|
11879
|
+
/**
|
|
11880
|
+
* Whether to close the panel after an option is selected.
|
|
11881
|
+
* Defaults to `false` (panel stays open for multi-select).
|
|
11882
|
+
*/
|
|
11883
|
+
this.closePanelOnSelect = false;
|
|
11576
11884
|
/**
|
|
11577
11885
|
* Array of selected option values.
|
|
11578
11886
|
*/
|
|
@@ -11609,6 +11917,10 @@ class PdsMultiselect {
|
|
|
11609
11917
|
* Visually hides the label but keeps it accessible.
|
|
11610
11918
|
*/
|
|
11611
11919
|
this.hideLabel = false;
|
|
11920
|
+
/**
|
|
11921
|
+
* Hides the selected items summary section in the dropdown panel.
|
|
11922
|
+
*/
|
|
11923
|
+
this.hideSelectedItems = false;
|
|
11612
11924
|
/**
|
|
11613
11925
|
* If true, the multiselect is required.
|
|
11614
11926
|
*/
|
|
@@ -11632,6 +11944,8 @@ class PdsMultiselect {
|
|
|
11632
11944
|
this.creating = false;
|
|
11633
11945
|
// Flag to prevent focusout from closing during open transition
|
|
11634
11946
|
this.isOpening = false;
|
|
11947
|
+
// Flag to suppress dismiss event when panel closes due to selection (not user dismissal)
|
|
11948
|
+
this.isClosingViaSelection = false;
|
|
11635
11949
|
// Flag to track if initial async fetch has been triggered (prevents double fetch)
|
|
11636
11950
|
this.initialAsyncFetchTriggered = false;
|
|
11637
11951
|
// Flag to track if value changed during loading and needs resolution after fetch completes
|
|
@@ -11703,8 +12017,9 @@ class PdsMultiselect {
|
|
|
11703
12017
|
// before we decide to close the dropdown
|
|
11704
12018
|
setTimeout(() => {
|
|
11705
12019
|
var _a;
|
|
11706
|
-
// Don't close if we're in the middle of opening
|
|
11707
|
-
|
|
12020
|
+
// Don't close if we're in the middle of opening, already closed,
|
|
12021
|
+
// or closing due to a selection (not a user dismissal)
|
|
12022
|
+
if (!this.isOpen || this.isOpening || this.isClosingViaSelection)
|
|
11708
12023
|
return;
|
|
11709
12024
|
const activeElement = document.activeElement;
|
|
11710
12025
|
// Check if focus is within our component's shadow root
|
|
@@ -11712,6 +12027,7 @@ class PdsMultiselect {
|
|
|
11712
12027
|
// Also check if focus is on the host element itself
|
|
11713
12028
|
const isOnHost = activeElement === this.el;
|
|
11714
12029
|
if (!isInShadowRoot && !isOnHost) {
|
|
12030
|
+
this.pdsMultiselectDismiss.emit();
|
|
11715
12031
|
this.closeDropdown();
|
|
11716
12032
|
}
|
|
11717
12033
|
}, 0);
|
|
@@ -11841,6 +12157,19 @@ class PdsMultiselect {
|
|
|
11841
12157
|
var _a;
|
|
11842
12158
|
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
11843
12159
|
}
|
|
12160
|
+
/**
|
|
12161
|
+
* Clears all selected values and resets the component.
|
|
12162
|
+
*/
|
|
12163
|
+
async clear() {
|
|
12164
|
+
const hadValues = this.value.length > 0 || this.searchQuery !== '';
|
|
12165
|
+
this.value = [];
|
|
12166
|
+
this.searchQuery = '';
|
|
12167
|
+
this.syncSelectedItems();
|
|
12168
|
+
this.updateFormValue();
|
|
12169
|
+
if (hadValues) {
|
|
12170
|
+
this.pdsMultiselectChange.emit({ values: [], items: [] });
|
|
12171
|
+
}
|
|
12172
|
+
}
|
|
11844
12173
|
/**
|
|
11845
12174
|
* Handle global keyboard events for accessibility.
|
|
11846
12175
|
* Closes dropdown on Escape key press regardless of focus location.
|
|
@@ -11851,6 +12180,7 @@ class PdsMultiselect {
|
|
|
11851
12180
|
return;
|
|
11852
12181
|
if (event.key === 'Escape') {
|
|
11853
12182
|
event.preventDefault();
|
|
12183
|
+
this.pdsMultiselectDismiss.emit();
|
|
11854
12184
|
this.closeDropdown();
|
|
11855
12185
|
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
11856
12186
|
}
|
|
@@ -12188,6 +12518,12 @@ class PdsMultiselect {
|
|
|
12188
12518
|
this.isOpen = false;
|
|
12189
12519
|
this.highlightedIndex = -1;
|
|
12190
12520
|
this.searchQuery = '';
|
|
12521
|
+
// Reset the selection-close guard after the focusout handler's setTimeout has resolved
|
|
12522
|
+
if (this.isClosingViaSelection) {
|
|
12523
|
+
setTimeout(() => {
|
|
12524
|
+
this.isClosingViaSelection = false;
|
|
12525
|
+
}, 0);
|
|
12526
|
+
}
|
|
12191
12527
|
// Clean up auto-update
|
|
12192
12528
|
if (this.cleanupAutoUpdate) {
|
|
12193
12529
|
this.cleanupAutoUpdate();
|
|
@@ -12240,7 +12576,7 @@ class PdsMultiselect {
|
|
|
12240
12576
|
});
|
|
12241
12577
|
}
|
|
12242
12578
|
toggleOption(option) {
|
|
12243
|
-
var _a;
|
|
12579
|
+
var _a, _b;
|
|
12244
12580
|
// Handle create option
|
|
12245
12581
|
if (option.isCreateOption) {
|
|
12246
12582
|
// Prevent multiple create calls while one is in-flight
|
|
@@ -12249,17 +12585,18 @@ class PdsMultiselect {
|
|
|
12249
12585
|
}
|
|
12250
12586
|
return;
|
|
12251
12587
|
}
|
|
12252
|
-
const
|
|
12588
|
+
const optionId = String(option.id);
|
|
12589
|
+
const isSelected = this.value.includes(optionId);
|
|
12253
12590
|
if (isSelected) {
|
|
12254
12591
|
// Remove from selection
|
|
12255
|
-
this.value = this.value.filter(v => v !==
|
|
12592
|
+
this.value = this.value.filter(v => v !== optionId);
|
|
12256
12593
|
}
|
|
12257
12594
|
else {
|
|
12258
12595
|
// Add to selection
|
|
12259
12596
|
if (this.maxSelections && this.value.length >= this.maxSelections) {
|
|
12260
12597
|
return;
|
|
12261
12598
|
}
|
|
12262
|
-
this.value = [...this.value,
|
|
12599
|
+
this.value = [...this.value, optionId];
|
|
12263
12600
|
}
|
|
12264
12601
|
// Sync selected items to ensure no duplicates and accurate state
|
|
12265
12602
|
this.syncSelectedItems();
|
|
@@ -12268,15 +12605,22 @@ class PdsMultiselect {
|
|
|
12268
12605
|
values: this.value,
|
|
12269
12606
|
items: this.selectedItems,
|
|
12270
12607
|
});
|
|
12271
|
-
|
|
12272
|
-
|
|
12608
|
+
if (this.closePanelOnSelect) {
|
|
12609
|
+
this.isClosingViaSelection = true;
|
|
12610
|
+
this.closeDropdown();
|
|
12611
|
+
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
12612
|
+
}
|
|
12613
|
+
else {
|
|
12614
|
+
// Keep focus on search input, don't close dropdown
|
|
12615
|
+
(_b = this.searchInputEl) === null || _b === void 0 ? void 0 : _b.focus();
|
|
12616
|
+
}
|
|
12273
12617
|
}
|
|
12274
12618
|
selectOption(option) {
|
|
12275
12619
|
// For keyboard navigation - toggle the option
|
|
12276
12620
|
this.toggleOption(option);
|
|
12277
12621
|
}
|
|
12278
12622
|
renderSelectedItemsList() {
|
|
12279
|
-
if (this.selectedItems.length === 0)
|
|
12623
|
+
if (this.hideSelectedItems || this.selectedItems.length === 0)
|
|
12280
12624
|
return null;
|
|
12281
12625
|
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))))));
|
|
12282
12626
|
}
|
|
@@ -12287,7 +12631,7 @@ class PdsMultiselect {
|
|
|
12287
12631
|
const valueArray = this.ensureValueArray();
|
|
12288
12632
|
const hasSlottedEmpty = !!this.el.querySelector('[slot="empty"]');
|
|
12289
12633
|
const hasSlottedLoading = !!this.el.querySelector('[slot="loading"]');
|
|
12290
|
-
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:
|
|
12634
|
+
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) => {
|
|
12291
12635
|
const isSelected = valueArray.includes(String(option.id));
|
|
12292
12636
|
const isCreateOption = option.isCreateOption;
|
|
12293
12637
|
const isHighlighted = index === this.highlightedIndex && !isCreateOption;
|
|
@@ -12311,19 +12655,19 @@ class PdsMultiselect {
|
|
|
12311
12655
|
}
|
|
12312
12656
|
render() {
|
|
12313
12657
|
const hasSelections = this.selectedItems.length > 0;
|
|
12314
|
-
return (hAsync(Host, { key: '
|
|
12658
|
+
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: {
|
|
12315
12659
|
'pds-multiselect__label': true,
|
|
12316
12660
|
'visually-hidden': this.hideLabel,
|
|
12317
|
-
} }, this.label)), hAsync("div", { key: '
|
|
12661
|
+
} }, 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: {
|
|
12318
12662
|
'pds-multiselect__trigger': true,
|
|
12319
12663
|
'pds-multiselect__trigger--open': this.isOpen,
|
|
12320
12664
|
'pds-multiselect__trigger--disabled': this.disabled,
|
|
12321
12665
|
'pds-multiselect__trigger--invalid': this.invalid || !!this.errorMessage,
|
|
12322
12666
|
'pds-multiselect__trigger--has-value': hasSelections,
|
|
12323
|
-
}, 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: '
|
|
12667
|
+
}, 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: {
|
|
12324
12668
|
'pds-multiselect__trigger-text': true,
|
|
12325
12669
|
'pds-multiselect__trigger-text--placeholder': !hasSelections,
|
|
12326
|
-
} }, this.getTriggerText()), hAsync("pds-icon", { key: '
|
|
12670
|
+
} }, 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' })))));
|
|
12327
12671
|
}
|
|
12328
12672
|
static get formAssociated() { return true; }
|
|
12329
12673
|
get el() { return getElement(this); }
|
|
@@ -12341,6 +12685,8 @@ class PdsMultiselect {
|
|
|
12341
12685
|
"componentId": [1, "component-id"],
|
|
12342
12686
|
"label": [1],
|
|
12343
12687
|
"placeholder": [1],
|
|
12688
|
+
"searchPlaceholder": [1, "search-placeholder"],
|
|
12689
|
+
"closePanelOnSelect": [4, "close-panel-on-select"],
|
|
12344
12690
|
"name": [1],
|
|
12345
12691
|
"value": [1040],
|
|
12346
12692
|
"disabled": [4],
|
|
@@ -12354,6 +12700,7 @@ class PdsMultiselect {
|
|
|
12354
12700
|
"minWidth": [1, "min-width"],
|
|
12355
12701
|
"panelWidth": [1, "panel-width"],
|
|
12356
12702
|
"hideLabel": [4, "hide-label"],
|
|
12703
|
+
"hideSelectedItems": [4, "hide-selected-items"],
|
|
12357
12704
|
"errorMessage": [1, "error-message"],
|
|
12358
12705
|
"helperMessage": [1, "helper-message"],
|
|
12359
12706
|
"invalid": [4],
|
|
@@ -12372,7 +12719,8 @@ class PdsMultiselect {
|
|
|
12372
12719
|
"currentPage": [32],
|
|
12373
12720
|
"hasMore": [32],
|
|
12374
12721
|
"creating": [32],
|
|
12375
|
-
"setFocus": [64]
|
|
12722
|
+
"setFocus": [64],
|
|
12723
|
+
"clear": [64]
|
|
12376
12724
|
},
|
|
12377
12725
|
"$listeners$": [[8, "keydown", "handleWindowKeyDown"]],
|
|
12378
12726
|
"$lazyBundleId$": "-",
|
|
@@ -16636,18 +16984,23 @@ class PdsTab {
|
|
|
16636
16984
|
}; }
|
|
16637
16985
|
}
|
|
16638
16986
|
|
|
16639
|
-
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}";
|
|
16987
|
+
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}";
|
|
16640
16988
|
|
|
16641
16989
|
class PdsTable {
|
|
16642
16990
|
constructor(hostRef) {
|
|
16643
16991
|
registerInstance(this, hostRef);
|
|
16644
|
-
this.pdsTableSelect = createEvent(this, "pdsTableSelect");
|
|
16645
16992
|
this.pdsTableSelectAll = createEvent(this, "pdsTableSelectAll");
|
|
16646
16993
|
this.scrollContainer = null;
|
|
16647
16994
|
this._responsiveHandleScroll = null;
|
|
16648
16995
|
this._responsiveHandleResize = null;
|
|
16649
16996
|
this._responsiveResizeObserver = null;
|
|
16650
16997
|
this._teardownResponsive = null;
|
|
16998
|
+
/**
|
|
16999
|
+
* Hides the select-all checkbox in the table header while keeping individual row checkboxes functional.
|
|
17000
|
+
* Only applies when `selectable` is true.
|
|
17001
|
+
* @defaultValue false
|
|
17002
|
+
*/
|
|
17003
|
+
this.disableSelectAll = false;
|
|
16651
17004
|
/**
|
|
16652
17005
|
* Adds divider borders between table rows. The last row will not have a bottom border.
|
|
16653
17006
|
* @defaultValue false
|
|
@@ -16867,8 +17220,10 @@ class PdsTable {
|
|
|
16867
17220
|
if (!pdsTableHead)
|
|
16868
17221
|
return;
|
|
16869
17222
|
const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');
|
|
16870
|
-
headerCheckbox
|
|
16871
|
-
|
|
17223
|
+
if (headerCheckbox) {
|
|
17224
|
+
headerCheckbox.checked = allSelectedRows;
|
|
17225
|
+
headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;
|
|
17226
|
+
}
|
|
16872
17227
|
}
|
|
16873
17228
|
render() {
|
|
16874
17229
|
if (this.responsive) {
|
|
@@ -16887,6 +17242,7 @@ class PdsTable {
|
|
|
16887
17242
|
"responsive": [4],
|
|
16888
17243
|
"fixedColumn": [4, "fixed-column"],
|
|
16889
17244
|
"selectable": [4],
|
|
17245
|
+
"disableSelectAll": [4, "disable-select-all"],
|
|
16890
17246
|
"rowDividers": [516, "row-dividers"],
|
|
16891
17247
|
"defaultSortColumn": [1, "default-sort-column"],
|
|
16892
17248
|
"defaultSortDirection": [1, "default-sort-direction"],
|
|
@@ -16919,13 +17275,14 @@ class PdsTableBody {
|
|
|
16919
17275
|
}; }
|
|
16920
17276
|
}
|
|
16921
17277
|
|
|
16922
|
-
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}";
|
|
17278
|
+
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}";
|
|
16923
17279
|
|
|
16924
17280
|
class PdsTableCell {
|
|
16925
17281
|
constructor(hostRef) {
|
|
16926
17282
|
registerInstance(this, hostRef);
|
|
16927
17283
|
this.scrollContainer = null;
|
|
16928
17284
|
this.setupRetries = 0;
|
|
17285
|
+
this.truncationCleanup = null;
|
|
16929
17286
|
/**
|
|
16930
17287
|
* Determines if the table is currently scrolling.
|
|
16931
17288
|
* @defaultValue false
|
|
@@ -16957,9 +17314,13 @@ class PdsTableCell {
|
|
|
16957
17314
|
// This enables the first column to show a shadow when the table is scrolled horizontally
|
|
16958
17315
|
this.setupScrollListener();
|
|
16959
17316
|
}
|
|
17317
|
+
if (this.truncate) {
|
|
17318
|
+
this.initTruncationTooltip();
|
|
17319
|
+
}
|
|
16960
17320
|
}
|
|
16961
17321
|
disconnectedCallback() {
|
|
16962
17322
|
this.cleanupScrollListener();
|
|
17323
|
+
this.destroyTruncationTooltip();
|
|
16963
17324
|
}
|
|
16964
17325
|
setupScrollListener() {
|
|
16965
17326
|
var _a;
|
|
@@ -17000,6 +17361,28 @@ class PdsTableCell {
|
|
|
17000
17361
|
}
|
|
17001
17362
|
this.setupRetries = 0; // Reset retry counter
|
|
17002
17363
|
}
|
|
17364
|
+
handleTruncateChange(newValue) {
|
|
17365
|
+
if (newValue) {
|
|
17366
|
+
this.initTruncationTooltip();
|
|
17367
|
+
}
|
|
17368
|
+
else {
|
|
17369
|
+
this.destroyTruncationTooltip();
|
|
17370
|
+
}
|
|
17371
|
+
}
|
|
17372
|
+
initTruncationTooltip() {
|
|
17373
|
+
this.destroyTruncationTooltip();
|
|
17374
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
17375
|
+
hostEl: this.hostElement,
|
|
17376
|
+
contentEl: this.hostElement,
|
|
17377
|
+
getTooltipText: () => this.hostElement.textContent || '',
|
|
17378
|
+
});
|
|
17379
|
+
}
|
|
17380
|
+
destroyTruncationTooltip() {
|
|
17381
|
+
if (this.truncationCleanup) {
|
|
17382
|
+
this.truncationCleanup();
|
|
17383
|
+
this.truncationCleanup = null;
|
|
17384
|
+
}
|
|
17385
|
+
}
|
|
17003
17386
|
classNames() {
|
|
17004
17387
|
const classNames = [];
|
|
17005
17388
|
if (this.tableRef && this.tableRef.compact) {
|
|
@@ -17017,13 +17400,16 @@ class PdsTableCell {
|
|
|
17017
17400
|
return classNames.join(' ');
|
|
17018
17401
|
}
|
|
17019
17402
|
render() {
|
|
17020
|
-
return (hAsync(Host, { key: '
|
|
17403
|
+
return (hAsync(Host, { key: 'f1526ebf858c52e01185174cb37770d130abd3ca', class: this.classNames(), role: "gridcell", part: "cell", tabIndex: this.truncate ? 0 : undefined, style: this.tableRef &&
|
|
17021
17404
|
this.tableRef.fixedColumn &&
|
|
17022
17405
|
this.tableRef.selectable
|
|
17023
17406
|
? { '--fixed-cell-position': '40px' }
|
|
17024
|
-
: {} }, hAsync("slot", { key: '
|
|
17407
|
+
: {} }, hAsync("slot", { key: '518a3cb3fad0bbbe029f218c2dc89596d1cd0b16' })));
|
|
17025
17408
|
}
|
|
17026
17409
|
get hostElement() { return getElement(this); }
|
|
17410
|
+
static get watchers() { return {
|
|
17411
|
+
"truncate": ["handleTruncateChange"]
|
|
17412
|
+
}; }
|
|
17027
17413
|
static get style() { return pdsTableCellCss; }
|
|
17028
17414
|
static get cmpMeta() { return {
|
|
17029
17415
|
"$flags$": 265,
|
|
@@ -17093,7 +17479,7 @@ class PdsTableHead {
|
|
|
17093
17479
|
}
|
|
17094
17480
|
}
|
|
17095
17481
|
render() {
|
|
17096
|
-
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: '
|
|
17482
|
+
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' })));
|
|
17097
17483
|
}
|
|
17098
17484
|
get hostElement() { return getElement(this); }
|
|
17099
17485
|
static get style() { return pdsTableHeadCss; }
|
|
@@ -17361,8 +17747,8 @@ class PdsTableRow {
|
|
|
17361
17747
|
* @defaultValue false
|
|
17362
17748
|
*/
|
|
17363
17749
|
this.isLastRow = false;
|
|
17364
|
-
this.
|
|
17365
|
-
this.isSelected =
|
|
17750
|
+
this.handleCheckboxChange = (event) => {
|
|
17751
|
+
this.isSelected = event.detail.checked;
|
|
17366
17752
|
this.handleSelect(this.isSelected);
|
|
17367
17753
|
};
|
|
17368
17754
|
this.handleSelect = (isSelected) => {
|
|
@@ -17484,7 +17870,7 @@ class PdsTableRow {
|
|
|
17484
17870
|
}
|
|
17485
17871
|
}
|
|
17486
17872
|
render() {
|
|
17487
|
-
return (hAsync(Host, { key: '
|
|
17873
|
+
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' })));
|
|
17488
17874
|
}
|
|
17489
17875
|
get hostElement() { return getElement(this); }
|
|
17490
17876
|
static get style() { return pdsTableRowCss; }
|
|
@@ -17655,11 +18041,45 @@ const pdsTextCss = ":host{display:inline}:host([decoration=underline-dotted])>*{
|
|
|
17655
18041
|
class PdsText {
|
|
17656
18042
|
constructor(hostRef) {
|
|
17657
18043
|
registerInstance(this, hostRef);
|
|
18044
|
+
this.truncationCleanup = null;
|
|
17658
18045
|
/**
|
|
17659
18046
|
* Determines what semantic text tag to render.
|
|
17660
18047
|
*/
|
|
17661
18048
|
this.tag = "p";
|
|
17662
18049
|
}
|
|
18050
|
+
handleTruncateChange(newValue) {
|
|
18051
|
+
if (newValue) {
|
|
18052
|
+
this.initTruncationTooltip();
|
|
18053
|
+
}
|
|
18054
|
+
else {
|
|
18055
|
+
this.destroyTruncationTooltip();
|
|
18056
|
+
}
|
|
18057
|
+
}
|
|
18058
|
+
componentDidLoad() {
|
|
18059
|
+
if (this.truncate) {
|
|
18060
|
+
this.initTruncationTooltip();
|
|
18061
|
+
}
|
|
18062
|
+
}
|
|
18063
|
+
disconnectedCallback() {
|
|
18064
|
+
this.destroyTruncationTooltip();
|
|
18065
|
+
}
|
|
18066
|
+
initTruncationTooltip() {
|
|
18067
|
+
// Clean up any existing tooltip before setting up a new one
|
|
18068
|
+
this.destroyTruncationTooltip();
|
|
18069
|
+
if (this.contentEl) {
|
|
18070
|
+
this.truncationCleanup = setupTruncationTooltip({
|
|
18071
|
+
hostEl: this.el,
|
|
18072
|
+
contentEl: this.contentEl,
|
|
18073
|
+
getTooltipText: () => this.el.textContent || '',
|
|
18074
|
+
});
|
|
18075
|
+
}
|
|
18076
|
+
}
|
|
18077
|
+
destroyTruncationTooltip() {
|
|
18078
|
+
if (this.truncationCleanup) {
|
|
18079
|
+
this.truncationCleanup();
|
|
18080
|
+
this.truncationCleanup = null;
|
|
18081
|
+
}
|
|
18082
|
+
}
|
|
17663
18083
|
render() {
|
|
17664
18084
|
const Tag = this.tag;
|
|
17665
18085
|
const typeClasses = `
|
|
@@ -17670,9 +18090,12 @@ class PdsText {
|
|
|
17670
18090
|
${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}
|
|
17671
18091
|
${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}
|
|
17672
18092
|
`;
|
|
17673
|
-
return (hAsync(Tag, { key: '
|
|
18093
|
+
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' })));
|
|
17674
18094
|
}
|
|
17675
18095
|
get el() { return getElement(this); }
|
|
18096
|
+
static get watchers() { return {
|
|
18097
|
+
"truncate": ["handleTruncateChange"]
|
|
18098
|
+
}; }
|
|
17676
18099
|
static get style() { return pdsTextCss; }
|
|
17677
18100
|
static get cmpMeta() { return {
|
|
17678
18101
|
"$flags$": 265,
|