@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.
Files changed (334) hide show
  1. package/components/index2.js +1 -1
  2. package/components/index2.js.map +1 -1
  3. package/components/pds-button2.js +18 -6
  4. package/components/pds-button2.js.map +1 -1
  5. package/components/pds-copytext.js +49 -1
  6. package/components/pds-copytext.js.map +1 -1
  7. package/components/pds-multiselect.js +66 -15
  8. package/components/pds-multiselect.js.map +1 -1
  9. package/components/pds-table-cell2.js +36 -3
  10. package/components/pds-table-cell2.js.map +1 -1
  11. package/components/pds-table-head.js +1 -1
  12. package/components/pds-table-head.js.map +1 -1
  13. package/components/pds-table-row.js +3 -3
  14. package/components/pds-table-row.js.map +1 -1
  15. package/components/pds-table.js +12 -4
  16. package/components/pds-table.js.map +1 -1
  17. package/components/pds-text2.js +41 -1
  18. package/components/pds-text2.js.map +1 -1
  19. package/components/truncation-tooltip.js +247 -0
  20. package/components/truncation-tooltip.js.map +1 -0
  21. package/dist/cjs/{index-DkQebouX.js → index-CjhTEk39.js} +3 -3
  22. package/dist/cjs/index-CjhTEk39.js.map +1 -0
  23. package/dist/cjs/loader.cjs.js +1 -1
  24. package/dist/cjs/pds-accordion.cjs.entry.js +1 -1
  25. package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
  26. package/dist/cjs/pds-button.cjs.entry.js +16 -6
  27. package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
  28. package/dist/cjs/pds-checkbox.cjs.entry.js +1 -1
  29. package/dist/cjs/pds-chip.cjs.entry.js +1 -1
  30. package/dist/cjs/pds-copytext.cjs.entry.js +48 -2
  31. package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
  32. package/dist/cjs/pds-filter.cjs.entry.js +1 -1
  33. package/dist/cjs/pds-input.cjs.entry.js +1 -1
  34. package/dist/cjs/pds-link.cjs.entry.js +1 -1
  35. package/dist/cjs/pds-multiselect.cjs.entry.js +62 -15
  36. package/dist/cjs/pds-multiselect.entry.cjs.js.map +1 -1
  37. package/dist/cjs/pds-radio-group.cjs.entry.js +1 -1
  38. package/dist/cjs/pds-radio.cjs.entry.js +1 -1
  39. package/dist/cjs/pds-select.cjs.entry.js +1 -1
  40. package/dist/cjs/pds-sortable-item.cjs.entry.js +1 -1
  41. package/dist/cjs/pds-switch.cjs.entry.js +1 -1
  42. package/dist/cjs/pds-table-cell.cjs.entry.js +35 -3
  43. package/dist/cjs/pds-table-cell.entry.cjs.js.map +1 -1
  44. package/dist/cjs/pds-table-head-cell.cjs.entry.js +1 -1
  45. package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
  46. package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
  47. package/dist/cjs/pds-table-row.cjs.entry.js +3 -3
  48. package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
  49. package/dist/cjs/pds-table.cjs.entry.js +11 -4
  50. package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
  51. package/dist/cjs/pds-text.cjs.entry.js +40 -1
  52. package/dist/cjs/pds-text.entry.cjs.js.map +1 -1
  53. package/dist/cjs/pds-textarea.cjs.entry.js +1 -1
  54. package/dist/cjs/pine-core.cjs.js +1 -1
  55. package/dist/cjs/truncation-tooltip-BGGnm8SZ.js +249 -0
  56. package/dist/cjs/truncation-tooltip-BGGnm8SZ.js.map +1 -0
  57. package/dist/collection/components/pds-button/pds-button.css +1 -1
  58. package/dist/collection/components/pds-button/pds-button.js +20 -4
  59. package/dist/collection/components/pds-button/pds-button.js.map +1 -1
  60. package/dist/collection/components/pds-copytext/pds-copytext.js +52 -2
  61. package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
  62. package/dist/collection/components/pds-multiselect/pds-multiselect.js +155 -14
  63. package/dist/collection/components/pds-multiselect/pds-multiselect.js.map +1 -1
  64. package/dist/collection/components/pds-multiselect/stories/pds-multiselect.stories.js +93 -0
  65. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +1 -1
  66. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +37 -3
  67. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -1
  68. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  69. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js.map +1 -1
  70. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +3 -3
  71. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js.map +1 -1
  72. package/dist/collection/components/pds-table/pds-table.css +1 -0
  73. package/dist/collection/components/pds-table/pds-table.js +33 -17
  74. package/dist/collection/components/pds-table/pds-table.js.map +1 -1
  75. package/dist/collection/components/pds-table/stories/pds-table.stories.js +58 -0
  76. package/dist/collection/components/pds-text/pds-text.js +43 -2
  77. package/dist/collection/components/pds-text/pds-text.js.map +1 -1
  78. package/dist/collection/components/pds-text/stories/pds-text.stories.js +21 -2
  79. package/dist/collection/utils/truncation-tooltip.js +242 -0
  80. package/dist/collection/utils/truncation-tooltip.js.map +1 -0
  81. package/dist/docs.json +156 -18
  82. package/dist/esm/{index-D094LgxJ.js → index-BFkDH5XU.js} +3 -3
  83. package/dist/esm/index-BFkDH5XU.js.map +1 -0
  84. package/dist/esm/loader.js +1 -1
  85. package/dist/esm/pds-accordion.entry.js +1 -1
  86. package/dist/esm/pds-avatar.entry.js +1 -1
  87. package/dist/esm/pds-button.entry.js +16 -6
  88. package/dist/esm/pds-button.entry.js.map +1 -1
  89. package/dist/esm/pds-checkbox.entry.js +1 -1
  90. package/dist/esm/pds-chip.entry.js +1 -1
  91. package/dist/esm/pds-copytext.entry.js +49 -3
  92. package/dist/esm/pds-copytext.entry.js.map +1 -1
  93. package/dist/esm/pds-filter.entry.js +1 -1
  94. package/dist/esm/pds-input.entry.js +1 -1
  95. package/dist/esm/pds-link.entry.js +1 -1
  96. package/dist/esm/pds-multiselect.entry.js +62 -15
  97. package/dist/esm/pds-multiselect.entry.js.map +1 -1
  98. package/dist/esm/pds-radio-group.entry.js +1 -1
  99. package/dist/esm/pds-radio.entry.js +1 -1
  100. package/dist/esm/pds-select.entry.js +1 -1
  101. package/dist/esm/pds-sortable-item.entry.js +1 -1
  102. package/dist/esm/pds-switch.entry.js +1 -1
  103. package/dist/esm/pds-table-cell.entry.js +35 -3
  104. package/dist/esm/pds-table-cell.entry.js.map +1 -1
  105. package/dist/esm/pds-table-head-cell.entry.js +1 -1
  106. package/dist/esm/pds-table-head.entry.js +1 -1
  107. package/dist/esm/pds-table-head.entry.js.map +1 -1
  108. package/dist/esm/pds-table-row.entry.js +3 -3
  109. package/dist/esm/pds-table-row.entry.js.map +1 -1
  110. package/dist/esm/pds-table.entry.js +11 -4
  111. package/dist/esm/pds-table.entry.js.map +1 -1
  112. package/dist/esm/pds-text.entry.js +40 -1
  113. package/dist/esm/pds-text.entry.js.map +1 -1
  114. package/dist/esm/pds-textarea.entry.js +1 -1
  115. package/dist/esm/pine-core.js +1 -1
  116. package/dist/esm/truncation-tooltip-CTHpMbU3.js +247 -0
  117. package/dist/esm/truncation-tooltip-CTHpMbU3.js.map +1 -0
  118. package/dist/esm-es5/{index-D094LgxJ.js → index-BFkDH5XU.js} +1 -1
  119. package/dist/esm-es5/index-BFkDH5XU.js.map +1 -0
  120. package/dist/esm-es5/loader.js +1 -1
  121. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  122. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  123. package/dist/esm-es5/pds-button.entry.js +1 -1
  124. package/dist/esm-es5/pds-button.entry.js.map +1 -1
  125. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  126. package/dist/esm-es5/pds-chip.entry.js +1 -1
  127. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  128. package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
  129. package/dist/esm-es5/pds-filter.entry.js +1 -1
  130. package/dist/esm-es5/pds-input.entry.js +1 -1
  131. package/dist/esm-es5/pds-link.entry.js +1 -1
  132. package/dist/esm-es5/pds-multiselect.entry.js +1 -1
  133. package/dist/esm-es5/pds-multiselect.entry.js.map +1 -1
  134. package/dist/esm-es5/pds-radio-group.entry.js +1 -1
  135. package/dist/esm-es5/pds-radio.entry.js +1 -1
  136. package/dist/esm-es5/pds-select.entry.js +1 -1
  137. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  138. package/dist/esm-es5/pds-switch.entry.js +1 -1
  139. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  140. package/dist/esm-es5/pds-table-cell.entry.js.map +1 -1
  141. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  142. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  143. package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
  144. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  145. package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
  146. package/dist/esm-es5/pds-table.entry.js +1 -1
  147. package/dist/esm-es5/pds-table.entry.js.map +1 -1
  148. package/dist/esm-es5/pds-text.entry.js +1 -1
  149. package/dist/esm-es5/pds-text.entry.js.map +1 -1
  150. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  151. package/dist/esm-es5/pine-core.js +1 -1
  152. package/dist/esm-es5/truncation-tooltip-CTHpMbU3.js +2 -0
  153. package/dist/esm-es5/truncation-tooltip-CTHpMbU3.js.map +1 -0
  154. package/dist/pine-core/{p-2aac4495.system.entry.js → p-15ac22bd.system.entry.js} +2 -2
  155. package/dist/pine-core/{p-425144ae.entry.js → p-1cc2fe8d.entry.js} +2 -2
  156. package/dist/pine-core/p-203f6e9e.entry.js +2 -0
  157. package/dist/pine-core/p-203f6e9e.entry.js.map +1 -0
  158. package/dist/pine-core/{p-0ac54273.entry.js → p-276f774a.entry.js} +2 -2
  159. package/dist/pine-core/p-27ccbd3f.entry.js +2 -0
  160. package/dist/pine-core/p-27ccbd3f.entry.js.map +1 -0
  161. package/dist/pine-core/p-2e22a1fc.system.entry.js +2 -0
  162. package/dist/pine-core/p-2e22a1fc.system.entry.js.map +1 -0
  163. package/dist/pine-core/{p-ce069162.entry.js → p-32f65e48.entry.js} +2 -2
  164. package/dist/pine-core/{p-36e5e9f4.system.entry.js → p-3ea301dd.system.entry.js} +2 -2
  165. package/dist/pine-core/p-3ea301dd.system.entry.js.map +1 -0
  166. package/dist/pine-core/p-4189f1be.system.entry.js +2 -0
  167. package/dist/pine-core/p-4189f1be.system.entry.js.map +1 -0
  168. package/dist/pine-core/{p-7d7dce2c.system.entry.js → p-4232520f.system.entry.js} +2 -2
  169. package/dist/pine-core/{p-8e40c9ef.entry.js → p-439e3343.entry.js} +2 -2
  170. package/dist/pine-core/p-439e3343.entry.js.map +1 -0
  171. package/dist/pine-core/{p-b46f66e8.system.entry.js → p-45c1f3ea.system.entry.js} +2 -2
  172. package/dist/pine-core/{p-5abc5d82.system.entry.js → p-49c2e2ce.system.entry.js} +2 -2
  173. package/dist/pine-core/{p-b1a7a0b2.entry.js → p-4de64b1f.entry.js} +2 -2
  174. package/dist/pine-core/{p-94c73d98.entry.js → p-4e015ddd.entry.js} +2 -2
  175. package/dist/pine-core/p-4e015ddd.entry.js.map +1 -0
  176. package/dist/pine-core/{p-0b52923b.system.entry.js → p-52c5ced3.system.entry.js} +2 -2
  177. package/dist/pine-core/{p-3815f565.entry.js → p-593cee44.entry.js} +2 -2
  178. package/dist/pine-core/{p-73bce0bf.entry.js → p-5a7b25d0.entry.js} +2 -2
  179. package/dist/pine-core/p-5hPM5knE.js +2 -0
  180. package/dist/pine-core/p-5hPM5knE.js.map +1 -0
  181. package/dist/pine-core/{p-48ed8147.entry.js → p-632e398f.entry.js} +2 -2
  182. package/dist/pine-core/{p-957647f9.entry.js → p-663abd80.entry.js} +2 -2
  183. package/dist/pine-core/{p-23111b1c.system.entry.js → p-6980edfe.system.entry.js} +2 -2
  184. package/dist/pine-core/{p-BxVkyfaO.system.js → p-6I02BpQf.system.js} +1 -1
  185. package/dist/pine-core/p-6I02BpQf.system.js.map +1 -0
  186. package/dist/pine-core/{p-c9965216.system.entry.js → p-6fbe6be4.system.entry.js} +2 -2
  187. package/dist/pine-core/p-7514a191.entry.js +2 -0
  188. package/dist/pine-core/p-7514a191.entry.js.map +1 -0
  189. package/dist/pine-core/{p-bd18b9bf.system.entry.js → p-77d4f274.system.entry.js} +2 -2
  190. package/dist/pine-core/{p-78246e05.entry.js → p-85ce731b.entry.js} +2 -2
  191. package/dist/pine-core/{p-b1820970.system.entry.js → p-87cee4a0.system.entry.js} +2 -2
  192. package/dist/pine-core/{p-fbd8ae50.entry.js → p-88686193.entry.js} +2 -2
  193. package/dist/pine-core/p-88eb4f6c.entry.js +2 -0
  194. package/dist/pine-core/p-88eb4f6c.entry.js.map +1 -0
  195. package/dist/pine-core/{p-b09bde5c.system.entry.js → p-8ab66dbc.system.entry.js} +2 -2
  196. package/dist/pine-core/p-8be316b4.system.entry.js +2 -0
  197. package/dist/pine-core/p-8be316b4.system.entry.js.map +1 -0
  198. package/dist/pine-core/{p-7a11a6c7.entry.js → p-8f935480.entry.js} +2 -2
  199. package/dist/pine-core/p-9263809e.entry.js +2 -0
  200. package/dist/pine-core/p-9263809e.entry.js.map +1 -0
  201. package/dist/pine-core/{p-3f05d72e.system.entry.js → p-9e3e441c.system.entry.js} +2 -2
  202. package/dist/pine-core/{p-3cd53462.entry.js → p-9e8296fc.entry.js} +2 -2
  203. package/dist/pine-core/{p-BJPmPVaF.system.js.map → p-B3dAc5EW.system.js.map} +1 -1
  204. package/dist/pine-core/p-B48FyOD0.system.js.map +1 -0
  205. package/dist/pine-core/{p-DY97YDUU.system.js.map → p-B5CyjPYU.system.js.map} +1 -1
  206. package/dist/pine-core/{p-8KFA3I5T.system.js.map → p-B8CAflct.system.js.map} +1 -1
  207. package/dist/pine-core/{p-N-jt0_Yl.system.js.map → p-BBJXL9br.system.js.map} +1 -1
  208. package/dist/pine-core/{p-D094LgxJ.js → p-BFkDH5XU.js} +1 -1
  209. package/dist/pine-core/p-BFkDH5XU.js.map +1 -0
  210. package/dist/pine-core/{p-CjQwwLdV.system.js.map → p-Bd3ynCsJ.system.js.map} +1 -1
  211. package/dist/pine-core/{p-D4YdQDsG.system.js.map → p-BiLmvJTd.system.js.map} +1 -1
  212. package/dist/pine-core/{p-PZw10cnm.system.js.map → p-C8y7SAd7.system.js.map} +1 -1
  213. package/dist/pine-core/{p-gcCcHox5.system.js.map → p-CCh7iS6N.system.js.map} +1 -1
  214. package/dist/pine-core/p-CEE11B7K.system.js.map +1 -0
  215. package/dist/pine-core/{p-eT6pKhWF.system.js.map → p-CObf7nrT.system.js.map} +1 -1
  216. package/dist/pine-core/p-CPri5wQG.system.js.map +1 -0
  217. package/dist/pine-core/{p-D3Ug1A-l.system.js.map → p-CbRBe3Eq.system.js.map} +1 -1
  218. package/dist/pine-core/{p-c2oMjk1r.system.js.map → p-Ctc231vq.system.js.map} +1 -1
  219. package/dist/pine-core/p-DXVwADJT.system.js +2 -0
  220. package/dist/pine-core/p-DXVwADJT.system.js.map +1 -0
  221. package/dist/pine-core/p-DenbFuEN.system.js.map +1 -0
  222. package/dist/pine-core/{p-BnJypAy2.system.js.map → p-DhLX7iDs.system.js.map} +1 -1
  223. package/dist/pine-core/p-Dkz0RoFB.system.js.map +1 -0
  224. package/dist/pine-core/p-G3GztZmn.system.js.map +1 -0
  225. package/dist/pine-core/p-JAVnELnm.system.js +1 -1
  226. package/dist/pine-core/{p-15e554ae.entry.js → p-a30edeb1.entry.js} +2 -2
  227. package/dist/pine-core/{p-5O8bhSdk.system.js.map → p-aKHwHZQR.system.js.map} +1 -1
  228. package/dist/pine-core/{p-fce519e3.system.entry.js → p-b416cb4b.system.entry.js} +2 -2
  229. package/dist/pine-core/p-b416cb4b.system.entry.js.map +1 -0
  230. package/dist/pine-core/{p-d2b2caa2.system.entry.js → p-b6f57c0f.system.entry.js} +2 -2
  231. package/dist/pine-core/p-b7f2f9f3.system.entry.js +2 -0
  232. package/dist/pine-core/p-b7f2f9f3.system.entry.js.map +1 -0
  233. package/dist/pine-core/p-c25ea8de.entry.js +2 -0
  234. package/dist/pine-core/p-c25ea8de.entry.js.map +1 -0
  235. package/dist/pine-core/p-e78986ea.system.entry.js +2 -0
  236. package/dist/pine-core/p-e78986ea.system.entry.js.map +1 -0
  237. package/dist/pine-core/{p-13105538.system.entry.js → p-f795d3fe.system.entry.js} +2 -2
  238. package/dist/pine-core/p-f7d9bZ8U.system.js.map +1 -0
  239. package/dist/pine-core/p-f81b0dbb.system.entry.js +2 -0
  240. package/dist/pine-core/p-f81b0dbb.system.entry.js.map +1 -0
  241. package/dist/pine-core/{p-2d21bc31.entry.js → p-f8a2aedd.entry.js} +2 -2
  242. package/dist/pine-core/{p-f0df10c7.system.entry.js → p-fbe793c7.system.entry.js} +2 -2
  243. package/dist/pine-core/{p-CQtQQn3_.system.js.map → p-hL5Id7g5.system.js.map} +1 -1
  244. package/dist/pine-core/{p-BK1BTkTt.system.js.map → p-hzdqYC6e.system.js.map} +1 -1
  245. package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
  246. package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
  247. package/dist/pine-core/pds-multiselect.entry.esm.js.map +1 -1
  248. package/dist/pine-core/pds-table-cell.entry.esm.js.map +1 -1
  249. package/dist/pine-core/pds-table-head.entry.esm.js.map +1 -1
  250. package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
  251. package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
  252. package/dist/pine-core/pds-text.entry.esm.js.map +1 -1
  253. package/dist/pine-core/pine-core.esm.js +1 -1
  254. package/dist/types/components/pds-button/pds-button.d.ts +4 -0
  255. package/dist/types/components/pds-copytext/pds-copytext.d.ts +10 -0
  256. package/dist/types/components/pds-multiselect/pds-multiselect.d.ts +31 -0
  257. package/dist/types/components/pds-table/pds-table-cell/pds-table-cell.d.ts +7 -1
  258. package/dist/types/components/pds-table/pds-table-row/pds-table-row.d.ts +1 -1
  259. package/dist/types/components/pds-table/pds-table.d.ts +6 -7
  260. package/dist/types/components/pds-text/pds-text.d.ts +9 -0
  261. package/dist/types/components.d.ts +55 -11
  262. package/dist/types/utils/truncation-tooltip.d.ts +21 -0
  263. package/dist/vscode.html-data.json +33 -5
  264. package/hydrate/index.js +458 -35
  265. package/hydrate/index.mjs +458 -35
  266. package/package.json +2 -2
  267. package/dist/cjs/index-DkQebouX.js.map +0 -1
  268. package/dist/esm/index-D094LgxJ.js.map +0 -1
  269. package/dist/esm-es5/index-D094LgxJ.js.map +0 -1
  270. package/dist/pine-core/p-003884fd.entry.js +0 -2
  271. package/dist/pine-core/p-003884fd.entry.js.map +0 -1
  272. package/dist/pine-core/p-1971d358.entry.js +0 -2
  273. package/dist/pine-core/p-1971d358.entry.js.map +0 -1
  274. package/dist/pine-core/p-23aba538.entry.js +0 -2
  275. package/dist/pine-core/p-23aba538.entry.js.map +0 -1
  276. package/dist/pine-core/p-36e5e9f4.system.entry.js.map +0 -1
  277. package/dist/pine-core/p-3b0a4abe.entry.js +0 -2
  278. package/dist/pine-core/p-3b0a4abe.entry.js.map +0 -1
  279. package/dist/pine-core/p-3c026ec7.system.entry.js +0 -2
  280. package/dist/pine-core/p-3c026ec7.system.entry.js.map +0 -1
  281. package/dist/pine-core/p-49c4f34a.entry.js +0 -2
  282. package/dist/pine-core/p-49c4f34a.entry.js.map +0 -1
  283. package/dist/pine-core/p-6918b378.system.entry.js +0 -2
  284. package/dist/pine-core/p-6918b378.system.entry.js.map +0 -1
  285. package/dist/pine-core/p-8e40c9ef.entry.js.map +0 -1
  286. package/dist/pine-core/p-93d0be59.entry.js +0 -2
  287. package/dist/pine-core/p-93d0be59.entry.js.map +0 -1
  288. package/dist/pine-core/p-94c73d98.entry.js.map +0 -1
  289. package/dist/pine-core/p-BpZTjdau.system.js.map +0 -1
  290. package/dist/pine-core/p-BxVkyfaO.system.js.map +0 -1
  291. package/dist/pine-core/p-CjnIO2Ro.system.js.map +0 -1
  292. package/dist/pine-core/p-D094LgxJ.js.map +0 -1
  293. package/dist/pine-core/p-DJYyo0MJ.system.js.map +0 -1
  294. package/dist/pine-core/p-DZEhYV6y.system.js.map +0 -1
  295. package/dist/pine-core/p-Ri89mw0-.system.js.map +0 -1
  296. package/dist/pine-core/p-ZUqfslIz.system.js.map +0 -1
  297. package/dist/pine-core/p-aeb2f6ac.system.entry.js +0 -2
  298. package/dist/pine-core/p-aeb2f6ac.system.entry.js.map +0 -1
  299. package/dist/pine-core/p-cb8c24ad.system.entry.js +0 -2
  300. package/dist/pine-core/p-cb8c24ad.system.entry.js.map +0 -1
  301. package/dist/pine-core/p-d83d6fce.system.entry.js +0 -2
  302. package/dist/pine-core/p-d83d6fce.system.entry.js.map +0 -1
  303. package/dist/pine-core/p-ef9c539e.system.entry.js +0 -2
  304. package/dist/pine-core/p-ef9c539e.system.entry.js.map +0 -1
  305. package/dist/pine-core/p-fce519e3.system.entry.js.map +0 -1
  306. package/dist/pine-core/p-kYQszSpu.system.js.map +0 -1
  307. /package/dist/pine-core/{p-2aac4495.system.entry.js.map → p-15ac22bd.system.entry.js.map} +0 -0
  308. /package/dist/pine-core/{p-425144ae.entry.js.map → p-1cc2fe8d.entry.js.map} +0 -0
  309. /package/dist/pine-core/{p-0ac54273.entry.js.map → p-276f774a.entry.js.map} +0 -0
  310. /package/dist/pine-core/{p-ce069162.entry.js.map → p-32f65e48.entry.js.map} +0 -0
  311. /package/dist/pine-core/{p-7d7dce2c.system.entry.js.map → p-4232520f.system.entry.js.map} +0 -0
  312. /package/dist/pine-core/{p-b46f66e8.system.entry.js.map → p-45c1f3ea.system.entry.js.map} +0 -0
  313. /package/dist/pine-core/{p-5abc5d82.system.entry.js.map → p-49c2e2ce.system.entry.js.map} +0 -0
  314. /package/dist/pine-core/{p-b1a7a0b2.entry.js.map → p-4de64b1f.entry.js.map} +0 -0
  315. /package/dist/pine-core/{p-0b52923b.system.entry.js.map → p-52c5ced3.system.entry.js.map} +0 -0
  316. /package/dist/pine-core/{p-3815f565.entry.js.map → p-593cee44.entry.js.map} +0 -0
  317. /package/dist/pine-core/{p-73bce0bf.entry.js.map → p-5a7b25d0.entry.js.map} +0 -0
  318. /package/dist/pine-core/{p-48ed8147.entry.js.map → p-632e398f.entry.js.map} +0 -0
  319. /package/dist/pine-core/{p-957647f9.entry.js.map → p-663abd80.entry.js.map} +0 -0
  320. /package/dist/pine-core/{p-23111b1c.system.entry.js.map → p-6980edfe.system.entry.js.map} +0 -0
  321. /package/dist/pine-core/{p-c9965216.system.entry.js.map → p-6fbe6be4.system.entry.js.map} +0 -0
  322. /package/dist/pine-core/{p-bd18b9bf.system.entry.js.map → p-77d4f274.system.entry.js.map} +0 -0
  323. /package/dist/pine-core/{p-78246e05.entry.js.map → p-85ce731b.entry.js.map} +0 -0
  324. /package/dist/pine-core/{p-b1820970.system.entry.js.map → p-87cee4a0.system.entry.js.map} +0 -0
  325. /package/dist/pine-core/{p-fbd8ae50.entry.js.map → p-88686193.entry.js.map} +0 -0
  326. /package/dist/pine-core/{p-b09bde5c.system.entry.js.map → p-8ab66dbc.system.entry.js.map} +0 -0
  327. /package/dist/pine-core/{p-7a11a6c7.entry.js.map → p-8f935480.entry.js.map} +0 -0
  328. /package/dist/pine-core/{p-3f05d72e.system.entry.js.map → p-9e3e441c.system.entry.js.map} +0 -0
  329. /package/dist/pine-core/{p-3cd53462.entry.js.map → p-9e8296fc.entry.js.map} +0 -0
  330. /package/dist/pine-core/{p-15e554ae.entry.js.map → p-a30edeb1.entry.js.map} +0 -0
  331. /package/dist/pine-core/{p-d2b2caa2.system.entry.js.map → p-b6f57c0f.system.entry.js.map} +0 -0
  332. /package/dist/pine-core/{p-13105538.system.entry.js.map → p-f795d3fe.system.entry.js.map} +0 -0
  333. /package/dist/pine-core/{p-2d21bc31.entry.js.map → p-f8a2aedd.entry.js.map} +0 -0
  334. /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.15.0, ES Modules */
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:not(:has(::slotted(*))){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)}";
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
- // CSS hides the wrapper when no content is slotted (prevents empty gap space).
4283
- return hAsync("span", { class: `pds-button__icon ${this.loading ? 'pds-button__icon--hidden' : ''}` }, hAsync("slot", { name: "start" }));
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
- // CSS hides the wrapper when no content is slotted (prevents empty gap space).
4294
- return hAsync("span", { class: `pds-button__icon ${this.loading ? 'pds-button__icon--hidden' : ''}` }, hAsync("slot", { name: "end" }));
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: 'a2922d7401e2fab4c49824354321abf49c0ee6ee', class: this.classNames(), id: this.componentId }, hAsync("pds-button", { key: '7a783ada0778a25b5f46e549353a6b454ac5001e', type: "button", variant: "unstyled", onClick: this.handleClick }, hAsync("span", { key: 'a14fbee0958bfe08abc9ebaebd71e0cfe3ab0e8f' }, this.value), hAsync("pds-icon", { key: '5134fd11dcfb2a05779818d51561fbe4c4fbf00a', icon: copy, size: "16px" }))));
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 or already closed
11707
- if (!this.isOpen || this.isOpening)
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 isSelected = this.value.includes(String(option.id));
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 !== String(option.id));
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, String(option.id)];
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
- // Keep focus on search input, don't close dropdown
12272
- (_a = this.searchInputEl) === null || _a === void 0 ? void 0 : _a.focus();
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: "Find...", 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) => {
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: '52253faa88bce1a67e657e160b2d260ff92bc28b', "aria-disabled": this.disabled ? 'true' : null }, hAsync("div", { key: '43f73781a96bd421b7079984aaf4e1905a2ec29e', class: "pds-multiselect" }, this.label && (hAsync("label", { key: '926e23ac24621da0af4336bfc64b9d4a6d44579b', htmlFor: this.componentId, class: {
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: '5051808a8b883ee8b5e7e3acef927091f206aaaf', class: "pds-multiselect__wrapper", ref: el => (this.containerEl = el), onFocusout: this.handleContainerFocusOut, style: { width: this.triggerWidth } }, hAsync("button", { key: '4590bd41e14927fc9d652e0920b0cd7900bf4b1a', ref: el => (this.triggerEl = el), type: "button", class: {
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: '3033d029f02288071a16b2ef4a5399bb4b86ae7e', class: {
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: '4d971d7a95e5e47c9141a6614f71b194bfa74dfb', class: "pds-multiselect__icon", icon: enlarge })), this.renderDropdown()), this.helperMessage && !(this.errorMessage && this.errorMessage.length > 0) && (hAsync("p", { key: '3571fafc7c78f785ccd7a1a8d73675b5e33fa317', class: "pds-multiselect__helper", id: messageId(this.componentId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("p", { key: '4acd308de067093578520a4ec85f299960f6e2c0', class: "pds-multiselect__error", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: 'a4cdf56804b77e474b9c757512ed6da54ddc5535', icon: danger, size: "small" }), this.errorMessage)), hAsync("div", { key: '10eac87a742d793b3f4e3acb55bbe469b547e3d3', style: { display: 'none' } }, hAsync("slot", { key: '1d55851a6f4a35f86684af5be7b6c840c2ed083b' })))));
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.checked = allSelectedRows;
16871
- headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;
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: 'f57b6f8173976a6ad0cc9eb5bf655ba930c45280', class: this.classNames(), role: "gridcell", part: "cell", style: this.tableRef &&
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: '0cc35b066fdb46eed1516d5b6eb86b77f0d4d2b5' })));
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: '92e95501de3644d068fb015b669329db14a4dd9b', 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: 'b51c670f2e59fb07d4b97ca201a0d28d5c2c9570' })));
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.handleClick = () => {
17365
- this.isSelected = !this.isSelected; // Toggle the selected state
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: 'ad282466c93a2f9bc15dd466bdc4c6ac4e408042', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-cell", { key: '19d88e362f07c3ce546356c1abdf7027e6701b3a', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, hAsync("pds-checkbox", { key: 'e65963f7e2e6ac78f911451dd09a3f21e38ead45', componentId: this.generateUniqueId(), onClick: this.handleClick, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), hAsync("slot", { key: 'c17d0098092adbc45d84b3e497b6023e344eb260' })));
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: '3332211f473c2e8eeb79214352939df07a51fec1', style: this.color && setColor(this.color), class: typeClasses, part: "content" }, hAsync("slot", { key: 'd73ebe8fdf9f78d16aca70161bdc27138286328d' })));
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,