@pine-ds/core 4.1.0 → 4.2.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 (394) hide show
  1. package/components/index.d.ts +8 -0
  2. package/components/index.js +1 -1
  3. package/components/mock-pds-modal.js +1 -1
  4. package/components/pds-chip2.js +1 -1
  5. package/components/pds-copytext.js +1 -1
  6. package/components/pds-drawer-content.d.ts +11 -0
  7. package/components/pds-drawer-content.js +1 -0
  8. package/components/pds-drawer-footer.d.ts +11 -0
  9. package/components/pds-drawer-footer.js +1 -0
  10. package/components/pds-drawer-header.d.ts +11 -0
  11. package/components/pds-drawer-header.js +1 -0
  12. package/components/pds-drawer.d.ts +11 -0
  13. package/components/pds-drawer.js +1 -0
  14. package/components/pds-dropdown-menu-item.js +1 -1
  15. package/components/pds-dropdown-menu-separator.js +1 -1
  16. package/components/pds-dropdown-menu.js +1 -1
  17. package/components/pds-filter.js +1 -1
  18. package/components/pds-filters.js +1 -1
  19. package/components/pds-image.js +1 -1
  20. package/components/pds-input.js +1 -1
  21. package/components/pds-link2.js +1 -1
  22. package/components/pds-loader2.js +1 -1
  23. package/components/pds-modal-content.js +1 -1
  24. package/components/pds-modal-footer.js +1 -1
  25. package/components/pds-modal-header.js +1 -1
  26. package/components/pds-modal.js +1 -1
  27. package/components/pds-modal2.js +1 -0
  28. package/components/pds-multiselect.js +1 -1
  29. package/components/pds-popover.js +1 -1
  30. package/components/pds-progress.js +1 -1
  31. package/components/pds-property.js +1 -1
  32. package/components/pds-radio-group.js +1 -1
  33. package/components/pds-radio.js +1 -1
  34. package/components/pds-row.js +1 -1
  35. package/components/pds-select.js +1 -1
  36. package/components/pds-sortable-item.js +1 -1
  37. package/components/pds-sortable.js +2 -2
  38. package/components/pds-switch.js +1 -1
  39. package/components/pds-table-body.js +1 -1
  40. package/components/pds-table-cell2.js +1 -1
  41. package/components/pds-table-head-cell2.js +1 -1
  42. package/components/pds-table-head.js +1 -1
  43. package/components/pds-table-row.js +1 -1
  44. package/components/pds-tabpanel.js +1 -1
  45. package/components/pds-tabs.js +1 -1
  46. package/components/pds-text2.js +1 -1
  47. package/components/pds-textarea.js +1 -1
  48. package/components/pds-toast.js +1 -1
  49. package/components/pds-tooltip.js +1 -1
  50. package/components/truncation-tooltip.js +1 -1
  51. package/dist/cjs/{index-BMV0nzMk.js → index-Bu3NXpbK.js} +1 -1
  52. package/dist/cjs/index.cjs.js +20 -0
  53. package/dist/cjs/loader.cjs.js +1 -1
  54. package/dist/cjs/mock-pds-modal.cjs.entry.js +1 -1
  55. package/dist/cjs/pds-accordion.cjs.entry.js +1 -1
  56. package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
  57. package/dist/cjs/pds-button.cjs.entry.js +1 -1
  58. package/dist/cjs/pds-checkbox.cjs.entry.js +1 -1
  59. package/dist/cjs/pds-chip.cjs.entry.js +17 -8
  60. package/dist/cjs/pds-copytext.cjs.entry.js +7 -3
  61. package/dist/cjs/pds-drawer-content.cjs.entry.js +23 -0
  62. package/dist/cjs/pds-drawer-footer.cjs.entry.js +23 -0
  63. package/dist/cjs/pds-drawer-header.cjs.entry.js +23 -0
  64. package/dist/cjs/pds-drawer.cjs.entry.js +137 -0
  65. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
  66. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +1 -1
  67. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +1 -1
  68. package/dist/cjs/pds-filter.cjs.entry.js +2 -2
  69. package/dist/cjs/pds-filters.cjs.entry.js +1 -1
  70. package/dist/cjs/pds-image.cjs.entry.js +2 -2
  71. package/dist/cjs/pds-input.cjs.entry.js +3 -3
  72. package/dist/cjs/pds-link.cjs.entry.js +3 -3
  73. package/dist/cjs/pds-loader.cjs.entry.js +1 -1
  74. package/dist/cjs/pds-modal-content.cjs.entry.js +2 -2
  75. package/dist/cjs/pds-modal-footer.cjs.entry.js +1 -1
  76. package/dist/cjs/pds-modal-header.cjs.entry.js +1 -1
  77. package/dist/cjs/pds-modal.cjs.entry.js +141 -10
  78. package/dist/cjs/pds-multiselect.cjs.entry.js +4 -4
  79. package/dist/cjs/pds-popover.cjs.entry.js +1 -1
  80. package/dist/cjs/pds-progress.cjs.entry.js +1 -1
  81. package/dist/cjs/pds-property.cjs.entry.js +1 -1
  82. package/dist/cjs/pds-radio-group.cjs.entry.js +4 -4
  83. package/dist/cjs/pds-radio.cjs.entry.js +4 -4
  84. package/dist/cjs/pds-row.cjs.entry.js +1 -1
  85. package/dist/cjs/pds-select.cjs.entry.js +2 -2
  86. package/dist/cjs/pds-sortable-item.cjs.entry.js +2 -2
  87. package/dist/cjs/pds-sortable.cjs.entry.js +1 -1
  88. package/dist/cjs/pds-switch.cjs.entry.js +5 -5
  89. package/dist/cjs/pds-table-body.cjs.entry.js +1 -1
  90. package/dist/cjs/pds-table-cell.cjs.entry.js +3 -3
  91. package/dist/cjs/pds-table-head-cell.cjs.entry.js +3 -3
  92. package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
  93. package/dist/cjs/pds-table-row.cjs.entry.js +1 -1
  94. package/dist/cjs/pds-tabpanel.cjs.entry.js +1 -1
  95. package/dist/cjs/pds-tabs.cjs.entry.js +1 -1
  96. package/dist/cjs/pds-text.cjs.entry.js +5 -23
  97. package/dist/cjs/pds-textarea.cjs.entry.js +5 -5
  98. package/dist/cjs/pds-toast.cjs.entry.js +3 -3
  99. package/dist/cjs/pds-tooltip.cjs.entry.js +2 -2
  100. package/dist/cjs/pine-core.cjs.js +1 -1
  101. package/dist/cjs/{truncation-tooltip-CVzAha5B.js → truncation-tooltip-Bps7_rUy.js} +51 -1
  102. package/dist/collection/collection-manifest.json +4 -0
  103. package/dist/collection/components/pds-chip/pds-chip.js +15 -6
  104. package/dist/collection/components/pds-copytext/pds-copytext.js +5 -1
  105. package/dist/collection/components/pds-drawer/pds-drawer-content/pds-drawer-content.css +22 -0
  106. package/dist/collection/components/pds-drawer/pds-drawer-content/pds-drawer-content.js +29 -0
  107. package/dist/collection/components/pds-drawer/pds-drawer-footer/pds-drawer-footer.css +15 -0
  108. package/dist/collection/components/pds-drawer/pds-drawer-footer/pds-drawer-footer.js +23 -0
  109. package/dist/collection/components/pds-drawer/pds-drawer-header/pds-drawer-header.css +15 -0
  110. package/dist/collection/components/pds-drawer/pds-drawer-header/pds-drawer-header.js +23 -0
  111. package/dist/collection/components/pds-drawer/pds-drawer.css +36 -0
  112. package/dist/collection/components/pds-drawer/pds-drawer.js +362 -0
  113. package/dist/collection/components/pds-drawer/stories/pds-drawer.stories.js +72 -0
  114. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-item/pds-dropdown-menu-item.js +1 -1
  115. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-separator/pds-dropdown-menu-separator.js +1 -1
  116. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.js +1 -1
  117. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js +1 -1
  118. package/dist/collection/components/pds-filters/pds-filters.js +1 -1
  119. package/dist/collection/components/pds-image/pds-image.js +2 -2
  120. package/dist/collection/components/pds-input/pds-input.js +2 -2
  121. package/dist/collection/components/pds-link/pds-link.js +2 -2
  122. package/dist/collection/components/pds-loader/pds-loader.js +1 -1
  123. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js +2 -2
  124. package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js +1 -1
  125. package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js +1 -1
  126. package/dist/collection/components/pds-modal/pds-modal.js +164 -10
  127. package/dist/collection/components/pds-modal/test/mock-pds-modal.js +1 -1
  128. package/dist/collection/components/pds-multiselect/pds-multiselect.js +3 -3
  129. package/dist/collection/components/pds-popover/pds-popover.js +1 -1
  130. package/dist/collection/components/pds-progress/pds-progress.js +1 -1
  131. package/dist/collection/components/pds-property/pds-property.js +1 -1
  132. package/dist/collection/components/pds-radio/pds-radio.js +3 -3
  133. package/dist/collection/components/pds-radio-group/pds-radio-group.js +3 -3
  134. package/dist/collection/components/pds-row/pds-row.js +1 -1
  135. package/dist/collection/components/pds-select/pds-select.js +1 -1
  136. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
  137. package/dist/collection/components/pds-sortable/pds-sortable.js +1 -1
  138. package/dist/collection/components/pds-switch/pds-switch.css +1 -1
  139. package/dist/collection/components/pds-switch/pds-switch.js +3 -3
  140. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +1 -1
  141. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +3 -3
  142. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  143. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +2 -2
  144. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
  145. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
  146. package/dist/collection/components/pds-tabs/pds-tabs.js +1 -1
  147. package/dist/collection/components/pds-text/pds-text.js +2 -2
  148. package/dist/collection/components/pds-textarea/pds-textarea.js +4 -4
  149. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  150. package/dist/collection/components/pds-tooltip/pds-tooltip.js +2 -2
  151. package/dist/collection/index.js +1 -0
  152. package/dist/collection/utils/test/reduced-motion.js +78 -0
  153. package/dist/collection/utils/truncation-tooltip.js +51 -1
  154. package/dist/docs.json +385 -5
  155. package/dist/esm/{index-Bu9gFIxM.js → index-DdPaBxPo.js} +1 -1
  156. package/dist/esm/index.js +19 -0
  157. package/dist/esm/loader.js +1 -1
  158. package/dist/esm/mock-pds-modal.entry.js +1 -1
  159. package/dist/esm/pds-accordion.entry.js +1 -1
  160. package/dist/esm/pds-avatar.entry.js +1 -1
  161. package/dist/esm/pds-button.entry.js +1 -1
  162. package/dist/esm/pds-checkbox.entry.js +1 -1
  163. package/dist/esm/pds-chip.entry.js +17 -8
  164. package/dist/esm/pds-copytext.entry.js +7 -3
  165. package/dist/esm/pds-drawer-content.entry.js +21 -0
  166. package/dist/esm/pds-drawer-footer.entry.js +21 -0
  167. package/dist/esm/pds-drawer-header.entry.js +21 -0
  168. package/dist/esm/pds-drawer.entry.js +135 -0
  169. package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
  170. package/dist/esm/pds-dropdown-menu-separator.entry.js +1 -1
  171. package/dist/esm/pds-dropdown-menu.entry.js +1 -1
  172. package/dist/esm/pds-filter.entry.js +2 -2
  173. package/dist/esm/pds-filters.entry.js +1 -1
  174. package/dist/esm/pds-image.entry.js +2 -2
  175. package/dist/esm/pds-input.entry.js +3 -3
  176. package/dist/esm/pds-link.entry.js +3 -3
  177. package/dist/esm/pds-loader.entry.js +1 -1
  178. package/dist/esm/pds-modal-content.entry.js +2 -2
  179. package/dist/esm/pds-modal-footer.entry.js +1 -1
  180. package/dist/esm/pds-modal-header.entry.js +1 -1
  181. package/dist/esm/pds-modal.entry.js +141 -10
  182. package/dist/esm/pds-multiselect.entry.js +4 -4
  183. package/dist/esm/pds-popover.entry.js +1 -1
  184. package/dist/esm/pds-progress.entry.js +1 -1
  185. package/dist/esm/pds-property.entry.js +1 -1
  186. package/dist/esm/pds-radio-group.entry.js +4 -4
  187. package/dist/esm/pds-radio.entry.js +4 -4
  188. package/dist/esm/pds-row.entry.js +1 -1
  189. package/dist/esm/pds-select.entry.js +2 -2
  190. package/dist/esm/pds-sortable-item.entry.js +2 -2
  191. package/dist/esm/pds-sortable.entry.js +1 -1
  192. package/dist/esm/pds-switch.entry.js +5 -5
  193. package/dist/esm/pds-table-body.entry.js +1 -1
  194. package/dist/esm/pds-table-cell.entry.js +3 -3
  195. package/dist/esm/pds-table-head-cell.entry.js +3 -3
  196. package/dist/esm/pds-table-head.entry.js +1 -1
  197. package/dist/esm/pds-table-row.entry.js +1 -1
  198. package/dist/esm/pds-tabpanel.entry.js +1 -1
  199. package/dist/esm/pds-tabs.entry.js +1 -1
  200. package/dist/esm/pds-text.entry.js +3 -21
  201. package/dist/esm/pds-textarea.entry.js +5 -5
  202. package/dist/esm/pds-toast.entry.js +3 -3
  203. package/dist/esm/pds-tooltip.entry.js +2 -2
  204. package/dist/esm/pine-core.js +1 -1
  205. package/dist/esm/{truncation-tooltip-Blk4GigP.js → truncation-tooltip-CdtEBn_5.js} +51 -1
  206. package/dist/esm-es5/index.js +1 -0
  207. package/dist/esm-es5/loader.js +1 -1
  208. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  209. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  210. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  211. package/dist/esm-es5/pds-button.entry.js +1 -1
  212. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  213. package/dist/esm-es5/pds-chip.entry.js +1 -1
  214. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  215. package/dist/esm-es5/pds-drawer-content.entry.js +1 -0
  216. package/dist/esm-es5/pds-drawer-footer.entry.js +1 -0
  217. package/dist/esm-es5/pds-drawer-header.entry.js +1 -0
  218. package/dist/esm-es5/pds-drawer.entry.js +1 -0
  219. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  220. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  221. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  222. package/dist/esm-es5/pds-filter.entry.js +1 -1
  223. package/dist/esm-es5/pds-filters.entry.js +1 -1
  224. package/dist/esm-es5/pds-image.entry.js +1 -1
  225. package/dist/esm-es5/pds-input.entry.js +1 -1
  226. package/dist/esm-es5/pds-link.entry.js +1 -1
  227. package/dist/esm-es5/pds-loader.entry.js +1 -1
  228. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  229. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  230. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  231. package/dist/esm-es5/pds-modal.entry.js +1 -1
  232. package/dist/esm-es5/pds-multiselect.entry.js +1 -1
  233. package/dist/esm-es5/pds-popover.entry.js +1 -1
  234. package/dist/esm-es5/pds-progress.entry.js +1 -1
  235. package/dist/esm-es5/pds-property.entry.js +1 -1
  236. package/dist/esm-es5/pds-radio-group.entry.js +1 -1
  237. package/dist/esm-es5/pds-radio.entry.js +1 -1
  238. package/dist/esm-es5/pds-row.entry.js +1 -1
  239. package/dist/esm-es5/pds-select.entry.js +1 -1
  240. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  241. package/dist/esm-es5/pds-sortable.entry.js +1 -1
  242. package/dist/esm-es5/pds-switch.entry.js +1 -1
  243. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  244. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  245. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  246. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  247. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  248. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  249. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  250. package/dist/esm-es5/pds-text.entry.js +1 -1
  251. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  252. package/dist/esm-es5/pds-toast.entry.js +1 -1
  253. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  254. package/dist/esm-es5/pine-core.js +1 -1
  255. package/dist/esm-es5/truncation-tooltip-CdtEBn_5.js +1 -0
  256. package/dist/pine-core/index.esm.js +1 -0
  257. package/dist/pine-core/p-02a47ebb.entry.js +1 -0
  258. package/dist/pine-core/{p-6089d811.entry.js → p-049681fc.entry.js} +1 -1
  259. package/dist/pine-core/p-053b0898.system.entry.js +1 -0
  260. package/dist/pine-core/{p-b0531455.entry.js → p-09413b07.entry.js} +1 -1
  261. package/dist/pine-core/{p-ba8bd9dc.system.entry.js → p-0ab735aa.system.entry.js} +1 -1
  262. package/dist/pine-core/p-12182cab.entry.js +1 -0
  263. package/dist/pine-core/p-15d3a4bc.system.entry.js +1 -0
  264. package/dist/pine-core/{p-bba759f8.system.entry.js → p-1614c000.system.entry.js} +1 -1
  265. package/dist/pine-core/{p-c0753d9f.entry.js → p-17dc3f87.entry.js} +1 -1
  266. package/dist/pine-core/p-18a59cdd.system.entry.js +1 -0
  267. package/dist/pine-core/{p-c713ffc6.system.entry.js → p-1e2a9b5d.system.entry.js} +1 -1
  268. package/dist/pine-core/{p-ce63f726.system.entry.js → p-1f307e59.system.entry.js} +1 -1
  269. package/dist/pine-core/{p-056667f0.entry.js → p-2016c878.entry.js} +1 -1
  270. package/dist/pine-core/{p-bfa640f4.system.entry.js → p-2eb8d697.system.entry.js} +1 -1
  271. package/dist/pine-core/{p-af4a24d9.entry.js → p-31e1722e.entry.js} +1 -1
  272. package/dist/pine-core/{p-63f5f66f.system.entry.js → p-324a7ae4.system.entry.js} +1 -1
  273. package/dist/pine-core/{p-d157a33a.entry.js → p-32f10aa9.entry.js} +1 -1
  274. package/dist/pine-core/p-33c0f3c9.system.entry.js +1 -0
  275. package/dist/pine-core/{p-b17fa86a.system.entry.js → p-3464b456.system.entry.js} +1 -1
  276. package/dist/pine-core/{p-902b3e8b.system.entry.js → p-34e38037.system.entry.js} +1 -1
  277. package/dist/pine-core/{p-8e6a8a8e.entry.js → p-3605a5f5.entry.js} +1 -1
  278. package/dist/pine-core/{p-65557500.entry.js → p-376f8286.entry.js} +1 -1
  279. package/dist/pine-core/{p-0e89a189.entry.js → p-3873f55b.entry.js} +1 -1
  280. package/dist/pine-core/{p-a7eabc0c.system.entry.js → p-3c229a00.system.entry.js} +1 -1
  281. package/dist/pine-core/{p-46f0dda5.system.entry.js → p-3c4236a8.system.entry.js} +1 -1
  282. package/dist/pine-core/{p-afd07d5b.entry.js → p-3e0c6384.entry.js} +1 -1
  283. package/dist/pine-core/p-3eca0b00.entry.js +1 -0
  284. package/dist/pine-core/{p-0fcda1ec.entry.js → p-3f12afb1.entry.js} +1 -1
  285. package/dist/pine-core/p-43338f77.system.entry.js +1 -0
  286. package/dist/pine-core/{p-463eb0e6.system.entry.js → p-4661259e.system.entry.js} +1 -1
  287. package/dist/pine-core/{p-92c79ed4.system.entry.js → p-4d388957.system.entry.js} +1 -1
  288. package/dist/pine-core/{p-3050c66f.entry.js → p-51b8490d.entry.js} +1 -1
  289. package/dist/pine-core/{p-e16dfb32.system.entry.js → p-51dff5af.system.entry.js} +1 -1
  290. package/dist/pine-core/p-53a4852e.system.entry.js +1 -0
  291. package/dist/pine-core/{p-d54af26c.system.entry.js → p-56b34569.system.entry.js} +1 -1
  292. package/dist/pine-core/{p-cf72e9b1.system.entry.js → p-5772f260.system.entry.js} +1 -1
  293. package/dist/pine-core/{p-9fd1e8f4.system.entry.js → p-585ad368.system.entry.js} +1 -1
  294. package/dist/pine-core/p-591fbff5.entry.js +1 -0
  295. package/dist/pine-core/{p-2fd71a0c.entry.js → p-5aea1082.entry.js} +1 -1
  296. package/dist/pine-core/{p-460aa66f.system.entry.js → p-5dd393cd.system.entry.js} +1 -1
  297. package/dist/pine-core/p-613a64f1.entry.js +1 -0
  298. package/dist/pine-core/{p-e450eb27.system.entry.js → p-630f33d6.system.entry.js} +1 -1
  299. package/dist/pine-core/{p-33de0eb7.system.entry.js → p-63686e2a.system.entry.js} +1 -1
  300. package/dist/pine-core/{p-2d4b9253.entry.js → p-6f7a7d55.entry.js} +1 -1
  301. package/dist/pine-core/p-6fd863e5.system.entry.js +1 -0
  302. package/dist/pine-core/{p-8702635d.system.entry.js → p-76286a68.system.entry.js} +1 -1
  303. package/dist/pine-core/p-78fd593d.system.entry.js +1 -0
  304. package/dist/pine-core/{p-ae296598.entry.js → p-7e2b934d.entry.js} +1 -1
  305. package/dist/pine-core/p-7e44106e.entry.js +1 -0
  306. package/dist/pine-core/p-84ade640.entry.js +1 -0
  307. package/dist/pine-core/{p-eb4058ed.system.entry.js → p-869ed1c0.system.entry.js} +1 -1
  308. package/dist/pine-core/{p-9b68669f.entry.js → p-8be301b6.entry.js} +1 -1
  309. package/dist/pine-core/{p-08151143.system.entry.js → p-8cc270f0.system.entry.js} +1 -1
  310. package/dist/pine-core/p-8cea0d7a.system.entry.js +1 -0
  311. package/dist/pine-core/{p-3b9e77b3.entry.js → p-8eef80d5.entry.js} +1 -1
  312. package/dist/pine-core/{p-b255d3b7.entry.js → p-957dbb0c.entry.js} +1 -1
  313. package/dist/pine-core/p-B2nn1gSd.js +1 -0
  314. package/dist/pine-core/{p-CRCxGYgw.system.js → p-B2qvvB3q.system.js} +1 -1
  315. package/dist/pine-core/p-Dr-FzkdE.system.js +1 -1
  316. package/dist/pine-core/p-G3CPPJEt.system.js +1 -0
  317. package/dist/pine-core/{p-ce79321b.system.entry.js → p-a11a9c40.system.entry.js} +1 -1
  318. package/dist/pine-core/p-a4a58477.entry.js +1 -0
  319. package/dist/pine-core/{p-9a7294e7.system.entry.js → p-a98bf89f.system.entry.js} +1 -1
  320. package/dist/pine-core/{p-aecaff12.entry.js → p-ac0098fd.entry.js} +1 -1
  321. package/dist/pine-core/{p-228a9068.system.entry.js → p-b32e3174.system.entry.js} +1 -1
  322. package/dist/pine-core/{p-2af19aa7.entry.js → p-b923a70b.entry.js} +1 -1
  323. package/dist/pine-core/p-be4a6cc2.entry.js +1 -0
  324. package/dist/pine-core/{p-d804d37b.system.entry.js → p-be819bff.system.entry.js} +1 -1
  325. package/dist/pine-core/{p-85434de8.system.entry.js → p-c0b3f2c1.system.entry.js} +1 -1
  326. package/dist/pine-core/p-c1f8a187.entry.js +1 -0
  327. package/dist/pine-core/{p-4d6944aa.entry.js → p-c5ce6dea.entry.js} +1 -1
  328. package/dist/pine-core/{p-97198cb6.system.entry.js → p-c8bffb08.system.entry.js} +1 -1
  329. package/dist/pine-core/p-cf24ed1e.system.entry.js +1 -0
  330. package/dist/pine-core/{p-9487ff20.system.entry.js → p-d0d2a886.system.entry.js} +1 -1
  331. package/dist/pine-core/{p-f3683be8.entry.js → p-d12ef40d.entry.js} +1 -1
  332. package/dist/pine-core/{p-aa208514.entry.js → p-d21739eb.entry.js} +1 -1
  333. package/dist/pine-core/p-d280741f.entry.js +1 -0
  334. package/dist/pine-core/p-d43db3ba.entry.js +1 -0
  335. package/dist/pine-core/{p-1e952dbb.entry.js → p-d46adf7d.entry.js} +1 -1
  336. package/dist/pine-core/{p-7a1971ec.entry.js → p-d7865297.entry.js} +1 -1
  337. package/dist/pine-core/{p-226232a7.system.entry.js → p-d9ffb2d9.system.entry.js} +1 -1
  338. package/dist/pine-core/p-db5703f2.entry.js +1 -0
  339. package/dist/pine-core/p-dd6d9807.system.entry.js +1 -0
  340. package/dist/pine-core/p-e0da17aa.system.entry.js +1 -0
  341. package/dist/pine-core/{p-4923a3fe.entry.js → p-e3600c53.entry.js} +1 -1
  342. package/dist/pine-core/{p-a9e54964.entry.js → p-e3a7d2db.entry.js} +1 -1
  343. package/dist/pine-core/{p-04a30a2d.system.entry.js → p-e3cd4627.system.entry.js} +1 -1
  344. package/dist/pine-core/{p-1649dd61.system.entry.js → p-e410b0d8.system.entry.js} +1 -1
  345. package/dist/pine-core/p-e5bbe8cc.entry.js +1 -0
  346. package/dist/pine-core/{p-4dad0878.entry.js → p-e95225cf.entry.js} +1 -1
  347. package/dist/pine-core/{p-544ccf67.entry.js → p-ed297f3e.entry.js} +1 -1
  348. package/dist/pine-core/{p-fcf91f14.system.entry.js → p-f21aea90.system.entry.js} +1 -1
  349. package/dist/pine-core/{p-a3c4c0ee.entry.js → p-f7a5062f.entry.js} +1 -1
  350. package/dist/pine-core/p-f94667b5.entry.js +1 -0
  351. package/dist/pine-core/p-fbf5f315.entry.js +1 -0
  352. package/dist/pine-core/{p-7c18e9e8.system.entry.js → p-fec298bb.system.entry.js} +1 -1
  353. package/dist/pine-core/pine-core.esm.js +1 -1
  354. package/dist/types/components/pds-drawer/pds-drawer-content/pds-drawer-content.d.ts +11 -0
  355. package/dist/types/components/pds-drawer/pds-drawer-footer/pds-drawer-footer.d.ts +5 -0
  356. package/dist/types/components/pds-drawer/pds-drawer-header/pds-drawer-header.d.ts +5 -0
  357. package/dist/types/components/pds-drawer/pds-drawer.d.ts +78 -0
  358. package/dist/types/components/pds-modal/pds-modal.d.ts +38 -0
  359. package/dist/types/components/pds-table/pds-table-cell/pds-table-cell.d.ts +2 -1
  360. package/dist/types/components/pds-text/pds-text.d.ts +2 -1
  361. package/dist/types/components.d.ts +228 -4
  362. package/dist/types/index.d.ts +1 -0
  363. package/dist/types/utils/test/reduced-motion.d.ts +30 -0
  364. package/dist/types/utils/truncation-tooltip.d.ts +12 -0
  365. package/dist/vscode.html-data.json +139 -2
  366. package/hydrate/index.js +538 -101
  367. package/hydrate/index.mjs +538 -101
  368. package/package.json +7 -3
  369. package/dist/esm-es5/truncation-tooltip-Blk4GigP.js +0 -1
  370. package/dist/pine-core/p-0d73d473.entry.js +0 -1
  371. package/dist/pine-core/p-1ba361cb.entry.js +0 -1
  372. package/dist/pine-core/p-210f0994.system.entry.js +0 -1
  373. package/dist/pine-core/p-2e214db6.entry.js +0 -1
  374. package/dist/pine-core/p-3cdc1a5b.entry.js +0 -1
  375. package/dist/pine-core/p-4faff617.entry.js +0 -1
  376. package/dist/pine-core/p-50e0f726.system.entry.js +0 -1
  377. package/dist/pine-core/p-520f7a5b.entry.js +0 -1
  378. package/dist/pine-core/p-53999cd6.system.entry.js +0 -1
  379. package/dist/pine-core/p-5c239f0a.entry.js +0 -1
  380. package/dist/pine-core/p-611f68b7.system.entry.js +0 -1
  381. package/dist/pine-core/p-897fe88c.entry.js +0 -1
  382. package/dist/pine-core/p-9507eb49.system.entry.js +0 -1
  383. package/dist/pine-core/p-BNSGedhN.js +0 -1
  384. package/dist/pine-core/p-YWpyar7R.system.js +0 -1
  385. package/dist/pine-core/p-a53222f7.entry.js +0 -1
  386. package/dist/pine-core/p-a8ab4d9b.entry.js +0 -1
  387. package/dist/pine-core/p-b52deffb.entry.js +0 -1
  388. package/dist/pine-core/p-b6c2090f.system.entry.js +0 -1
  389. package/dist/pine-core/p-d27ef352.system.entry.js +0 -1
  390. package/dist/pine-core/p-e11795db.system.entry.js +0 -1
  391. package/dist/pine-core/p-f09ce49e.entry.js +0 -1
  392. /package/dist/esm-es5/{index-Bu9gFIxM.js → index-DdPaBxPo.js} +0 -0
  393. /package/dist/pine-core/{p-Bjc6fc_Y.system.js → p--Llh7wKm.system.js} +0 -0
  394. /package/dist/pine-core/{p-Bu9gFIxM.js → p-DdPaBxPo.js} +0 -0
package/hydrate/index.mjs CHANGED
@@ -5528,7 +5528,7 @@ class MockPdsModal {
5528
5528
  'pds-modal__backdrop': true,
5529
5529
  'open': this.open,
5530
5530
  };
5531
- return (hAsync("div", { key: 'cb0c1ce177b2c5bbc03c6310d1c61c2e56c87371', class: backdropClasses }, hAsync("div", { key: '0f25e178dafa91d9c9721180c933faacb03b9360', class: modalClasses, role: "dialog", "aria-modal": "true", "aria-labelledby": this.componentId ? `${this.componentId}-heading` : null, part: "modal" }, hAsync("div", { key: '849c0e574e020c828b3ef8a89e39ffdd6f8da68f', class: "pds-modal__header" }, hAsync("slot", { key: '0c8bcac99adafbbfe67641e3782722bbe1ac13be', name: "header" })), hAsync("div", { key: '5da01ac584f1b6d1ec8b535f6be2ac9f06ac2218', class: "pds-modal-content" }, hAsync("slot", { key: '60ab585878ef793930fb18c363c284249123f423' })), hAsync("div", { key: 'ec6f26f3fa36175cf1a6acc34807c2528b8ed886', class: "pds-modal__footer" }, hAsync("slot", { key: 'da9896baba61891eceb7805c6967741fa86906dc', name: "footer" })))));
5531
+ return (hAsync("div", { key: '1207382ec39e45f95449791cd9fbf3ad54a17564', class: backdropClasses }, hAsync("div", { key: '865cff8feaf031750e6763d60580f9060dfc0c91', class: modalClasses, role: "dialog", "aria-modal": "true", "aria-labelledby": this.componentId ? `${this.componentId}-heading` : null, part: "modal" }, hAsync("div", { key: 'b49ba7c717999b53578056ad35c4ec270dbdfd01', class: "pds-modal__header" }, hAsync("slot", { key: '2c06b0f0c4692f1991eb389a73b751d38796c1cf', name: "header" })), hAsync("div", { key: 'ca0e6f324db12de5bd0c21b53bf888ab44c0d34c', class: "pds-modal-content" }, hAsync("slot", { key: 'cef74e83f58195b574f9a290f748cecb2561668e' })), hAsync("div", { key: '65518e197e80fa0cd8ea8cbbd9bb10a064e251ca', class: "pds-modal__footer" }, hAsync("slot", { key: '8cd72b932b7c4d31cf9ecb8f0c37d9a5b5ca7594', name: "footer" })))));
5532
5532
  }
5533
5533
  get el() { return getElement(this); }
5534
5534
  static get style() { return pdsModalCss$1(); }
@@ -5550,7 +5550,7 @@ class MockPdsModal {
5550
5550
  }; }
5551
5551
  }
5552
5552
 
5553
- /* pds-icons v10.4.2, ES Modules */
5553
+ /* pds-icons v10.4.3, ES Modules */
5554
5554
 
5555
5555
  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>";
5556
5556
  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>";
@@ -8420,10 +8420,12 @@ function isOverflowing(el) {
8420
8420
  * will display a tooltip showing the full text content. The tooltip is
8421
8421
  * rendered as a portal on document.body and positioned with Floating UI.
8422
8422
  *
8423
+ * Also owns the element's `tabindex` while it is clipped — see syncTabIndex.
8424
+ *
8423
8425
  * @returns A cleanup function that removes all listeners, observers, and DOM elements.
8424
8426
  */
8425
8427
  function setupTruncationTooltip(options) {
8426
- const { hostEl, contentEl, getTooltipText, placement = 'top' } = options;
8428
+ const { hostEl, contentEl, getTooltipText, placement = 'top', manageTabIndex = true } = options;
8427
8429
  injectStyles();
8428
8430
  let portalEl = null;
8429
8431
  let isHovering = false;
@@ -8432,6 +8434,34 @@ function setupTruncationTooltip(options) {
8432
8434
  let hideTimeout = null;
8433
8435
  let resizeObserver = null;
8434
8436
  let resizeDebounce = null;
8437
+ let ownsTabIndex = false;
8438
+ let disposed = false;
8439
+ /**
8440
+ * The tab stop exists only to give the tooltip a focusable anchor, so it
8441
+ * belongs on the element while the text is actually clipped and not a moment
8442
+ * longer. Deriving it from the caller's prop instead leaves a dead stop on
8443
+ * every element that opted into truncation but happens to fit — in a row of
8444
+ * chips that doubles the tab stops, half of them landing on a span with no
8445
+ * role, no name of its own, and nothing to reveal.
8446
+ *
8447
+ * Ownership is tracked rather than inferred from the value: if the consumer
8448
+ * already put a tabindex on the element (a roving -1, say), that is theirs
8449
+ * and we never touch it.
8450
+ */
8451
+ function syncTabIndex() {
8452
+ if (!manageTabIndex)
8453
+ return;
8454
+ if (isOverflowing(contentEl)) {
8455
+ if (!ownsTabIndex && contentEl.hasAttribute('tabindex'))
8456
+ return;
8457
+ ownsTabIndex = true;
8458
+ contentEl.setAttribute('tabindex', '0');
8459
+ }
8460
+ else if (ownsTabIndex) {
8461
+ ownsTabIndex = false;
8462
+ contentEl.removeAttribute('tabindex');
8463
+ }
8464
+ }
8435
8465
  // Use ResizeObserver to re-evaluate overflow when the element resizes
8436
8466
  // Debounced to prevent performance issues during rapid window resizing
8437
8467
  if (typeof ResizeObserver !== 'undefined') {
@@ -8441,6 +8471,7 @@ function setupTruncationTooltip(options) {
8441
8471
  }
8442
8472
  resizeDebounce = setTimeout(() => {
8443
8473
  resizeDebounce = null;
8474
+ syncTabIndex();
8444
8475
  // If tooltip is showing but text no longer overflows, hide it
8445
8476
  if (portalEl && portalEl.isConnected && !isOverflowing(contentEl)) {
8446
8477
  hideTooltip();
@@ -8449,6 +8480,18 @@ function setupTruncationTooltip(options) {
8449
8480
  });
8450
8481
  resizeObserver.observe(contentEl);
8451
8482
  }
8483
+ // Measure now so the common case is right on the first paint, rather than
8484
+ // waiting out the observer's debounce.
8485
+ syncTabIndex();
8486
+ // A web font swapping in changes scrollWidth without changing the clipped
8487
+ // box's size, so ResizeObserver never fires for it — the element would keep
8488
+ // whatever the fallback font measured. Re-measure once the fonts settle.
8489
+ if (typeof document !== 'undefined' && document.fonts !== undefined) {
8490
+ document.fonts.ready.then(() => {
8491
+ if (!disposed)
8492
+ syncTabIndex();
8493
+ });
8494
+ }
8452
8495
  function createPortal() {
8453
8496
  if (portalEl)
8454
8497
  return;
@@ -8580,6 +8623,7 @@ function setupTruncationTooltip(options) {
8580
8623
  hostEl.addEventListener('focusout', handleFocusOut);
8581
8624
  // Return cleanup function
8582
8625
  return () => {
8626
+ disposed = true;
8583
8627
  cancelHideTimeout();
8584
8628
  if (resizeDebounce) {
8585
8629
  clearTimeout(resizeDebounce);
@@ -8588,6 +8632,12 @@ function setupTruncationTooltip(options) {
8588
8632
  if (resizeObserver) {
8589
8633
  resizeObserver.disconnect();
8590
8634
  }
8635
+ // Hand the element back as we found it — truncation may simply have been
8636
+ // turned off, in which case the element outlives this teardown.
8637
+ if (ownsTabIndex) {
8638
+ ownsTabIndex = false;
8639
+ contentEl.removeAttribute('tabindex');
8640
+ }
8591
8641
  hostEl.removeEventListener('mouseenter', handleMouseEnter);
8592
8642
  hostEl.removeEventListener('mouseleave', handleMouseLeave);
8593
8643
  hostEl.removeEventListener('focusin', handleFocusIn);
@@ -8661,6 +8711,11 @@ class PdsChip {
8661
8711
  hostEl: this.el,
8662
8712
  contentEl: this.labelTextEl,
8663
8713
  getTooltipText: () => this.el.textContent || '',
8714
+ // The dropdown variant's label span already sits inside
8715
+ // `<button class="pds-chip__button">`, which is already focusable and
8716
+ // bubbles focusin to the host — a tabindex on the span too would nest
8717
+ // a second tab stop inside the button.
8718
+ manageTabIndex: this.effectiveVariant !== 'dropdown',
8664
8719
  });
8665
8720
  this.tooltipBoundEl = this.labelTextEl;
8666
8721
  }
@@ -8711,11 +8766,15 @@ class PdsChip {
8711
8766
  // node — and a plain `<pds-chip>Some text</pds-chip>` slots text with no
8712
8767
  // wrapping element. Wrapping the slot itself in an internal span gives
8713
8768
  // maxWidth something to ellipsize regardless of what's slotted.
8714
- // A focus-triggered tooltip needs a focusable anchor. The dropdown's own
8715
- // button already takes focus (focusin bubbles to the host), so only the
8716
- // text/tag label span needs a tabindex — and only when it can truncate.
8717
- const labelTabindex = this.maxWidth ? '0' : undefined;
8718
- const chipContent = isDropdown ? (hAsync("button", { class: "pds-chip__button", type: "button", part: "button" }, this.icon && hAsync("pds-icon", { icon: this.icon, size: this.iconSize, "aria-hidden": "true" }), showDot && hAsync("i", { class: "pds-chip__dot", "aria-hidden": "true" }), hAsync("span", { class: "pds-chip__label-text", ref: (el) => (this.labelTextEl = el) }, hAsync("slot", null)), hAsync("pds-icon", { icon: downSmall, size: this.iconSize, "aria-hidden": "true" }))) : (hAsync("span", { class: "pds-chip__label" }, this.icon && hAsync("pds-icon", { icon: this.icon, size: this.iconSize, "aria-hidden": "true" }), showDot && hAsync("i", { class: "pds-chip__dot", "aria-hidden": "true" }), hAsync("span", { class: "pds-chip__label-text", tabindex: labelTabindex, ref: (el) => (this.labelTextEl = el) }, hAsync("slot", null))));
8769
+ // A focus-triggered tooltip needs a focusable anchor, but the label span
8770
+ // only earns a tab stop while its text is actually clipped — a chip whose
8771
+ // label fits has nothing to reveal. setupTruncationTooltip owns that
8772
+ // tabindex off the measurement for every variant except dropdown: its
8773
+ // label span already sits inside `<button class="pds-chip__button">`,
8774
+ // which is already focusable and bubbles focusin to the host, so
8775
+ // initTruncationTooltip passes `manageTabIndex: false` there to avoid
8776
+ // nesting a second tab stop inside the button.
8777
+ const chipContent = isDropdown ? (hAsync("button", { class: "pds-chip__button", type: "button", part: "button" }, this.icon && hAsync("pds-icon", { icon: this.icon, size: this.iconSize, "aria-hidden": "true" }), showDot && hAsync("i", { class: "pds-chip__dot", "aria-hidden": "true" }), hAsync("span", { class: "pds-chip__label-text", ref: (el) => (this.labelTextEl = el) }, hAsync("slot", null)), hAsync("pds-icon", { icon: downSmall, size: this.iconSize, "aria-hidden": "true" }))) : (hAsync("span", { class: "pds-chip__label" }, this.icon && hAsync("pds-icon", { icon: this.icon, size: this.iconSize, "aria-hidden": "true" }), showDot && hAsync("i", { class: "pds-chip__dot", "aria-hidden": "true" }), hAsync("span", { class: "pds-chip__label-text", ref: (el) => (this.labelTextEl = el) }, hAsync("slot", null))));
8719
8778
  return chipContent;
8720
8779
  }
8721
8780
  get hostStyles() {
@@ -8771,7 +8830,7 @@ class PdsChip {
8771
8830
  return (hAsync(CloseElement, Object.assign({}, closeAttributes(), { onClick: this.handleCloseClick }), hAsync("pds-icon", { icon: remove, size: this.iconSize })));
8772
8831
  }
8773
8832
  render() {
8774
- return (hAsync(Host, { key: 'fd689f64fe35685c7e8e0f5e73a01c8564ad3c66', class: this.classNames(), id: this.componentId, style: this.hostStyles }, this.setChipContent(), this.effectiveVariant === 'tag' && this.renderCloseButton()));
8833
+ return (hAsync(Host, { key: '3b796c1340ac4e37569bf7904dbed05ba6938e4b', class: this.classNames(), id: this.componentId, style: this.hostStyles }, this.setChipContent(), this.effectiveVariant === 'tag' && this.renderCloseButton()));
8775
8834
  }
8776
8835
  get el() { return getElement(this); }
8777
8836
  static get style() { return pdsChipTokensCss() + pdsChipCss(); }
@@ -11866,6 +11925,10 @@ class PdsCopytext {
11866
11925
  hostEl: this.el,
11867
11926
  contentEl: this.valueSpanEl,
11868
11927
  getTooltipText: () => this.value || '',
11928
+ // valueSpanEl already sits inside the `<pds-button>` below, which is
11929
+ // already focusable and bubbles focusin to the host — a tabindex on
11930
+ // the span too would nest a second tab stop inside the button.
11931
+ manageTabIndex: false,
11869
11932
  });
11870
11933
  }
11871
11934
  }
@@ -11889,7 +11952,7 @@ class PdsCopytext {
11889
11952
  return classNames.join(' ');
11890
11953
  }
11891
11954
  render() {
11892
- return (hAsync(Host, { key: '43a3870fa4c24416e2e6e99dd7c423a5c32ac91e', class: this.classNames(), id: this.componentId }, hAsync("pds-button", { key: 'f0735d3f245dd7150e88b3dd1a191c3ee86b6293', type: "button", variant: "unstyled", onClick: this.handleClick }, hAsync("span", { key: 'ddf7cf205f9bb11dd4b4111435bb7efc15b0af61', ref: (el) => this.valueSpanEl = el }, this.value), hAsync("pds-icon", { key: '7ba6d0452e1726ff951ec46433f838669961c277', "aria-hidden": "true", icon: copy, size: "16px" }))));
11955
+ return (hAsync(Host, { key: '6e3ff4eb0dc42e57156a162196a06a675cac6f91', class: this.classNames(), id: this.componentId }, hAsync("pds-button", { key: '749a8dde35eb3c70941229d11dc6477aaf717ed1', type: "button", variant: "unstyled", onClick: this.handleClick }, hAsync("span", { key: '7f457a164f3ae76a37814d37d7b5e3fce86bd803', ref: (el) => this.valueSpanEl = el }, this.value), hAsync("pds-icon", { key: '0ff6dad44148c23ee9d693e82880598b91b0630e', "aria-hidden": "true", icon: copy, size: "16px" }))));
11893
11956
  }
11894
11957
  get el() { return getElement(this); }
11895
11958
  static get watchers() { return {
@@ -11968,6 +12031,270 @@ class PdsDivider {
11968
12031
  }; }
11969
12032
  }
11970
12033
 
12034
+ /**
12035
+ * Unwraps a stale copy of a light-DOM (`shadow: false`) component's own wrapper,
12036
+ * left behind when a page-cache (Turbo, browser bfcache) reconnect nests a
12037
+ * component's previous render inside its freshly rendered one. Call from
12038
+ * `componentDidRender` with the element that directly contains the rendered
12039
+ * `<slot>` and the selector that identifies "another one of me." Unwraps in
12040
+ * place (move-then-remove) so nested content is never lost.
12041
+ *
12042
+ * `contentSelector` is only needed when the wrapper itself further nests a
12043
+ * separate content element (e.g. pds-tab's `<a class="pds-tab">` wrapping a
12044
+ * `.pds-tab__content` div) — omit it when the wrapper's own children are the
12045
+ * slotted content (e.g. pds-tabpanel's `.pds-tabpanel` div).
12046
+ */
12047
+ function unwrapReconnectedContent(container, selector, contentSelector) {
12048
+ var _a;
12049
+ if (container === null)
12050
+ return;
12051
+ let stale = container.firstElementChild;
12052
+ while (stale === null || stale === void 0 ? void 0 : stale.matches(selector)) {
12053
+ const source = contentSelector !== undefined ? ((_a = stale.querySelector(contentSelector)) !== null && _a !== void 0 ? _a : stale) : stale;
12054
+ Array.from(source.childNodes).forEach((node) => container.insertBefore(node, stale));
12055
+ stale.remove();
12056
+ stale = container.firstElementChild;
12057
+ }
12058
+ }
12059
+
12060
+ const pdsDrawerCss = () => `.pds-drawer__modal>.pds-modal__backdrop{-ms-flex-align:stretch;align-items:stretch;background-color:transparent;pointer-events:none}@supports ((-webkit-backdrop-filter: blur(3px)) or (backdrop-filter: blur(3px))){.pds-drawer__modal>.pds-modal__backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.pds-drawer__modal>.pds-modal__backdrop>.pds-modal{border-radius:0;height:100%;margin:0;max-height:100%;max-width:100%;pointer-events:auto;width:var(--pds-drawer-width, 500px)}.pds-drawer{display:contents}.pds-drawer.pds-drawer--end .pds-drawer__modal>.pds-modal__backdrop{-ms-flex-pack:end;justify-content:flex-end}.pds-drawer.pds-drawer--start .pds-drawer__modal>.pds-modal__backdrop{-ms-flex-pack:start;justify-content:flex-start}.pds-drawer.pds-drawer--sm{--pds-drawer-width:360px}.pds-drawer.pds-drawer--md{--pds-drawer-width:500px}`;
12061
+
12062
+ // Known selectors for content Pine components portal to document.body rather
12063
+ // than rendering in place — pds-popover, pds-tooltip, pds-combobox's dropdown.
12064
+ // A pointerdown landing on one of these is not "outside" the drawer in the
12065
+ // sense light dismiss cares about: it belongs to an overlay something inside
12066
+ // the drawer opened, even though it is not a DOM descendant of the drawer.
12067
+ const PORTALED_OVERLAY_SELECTOR = '.pds-popover, .pds-tooltip, .pds-combobox-dropdown-portal';
12068
+ /**
12069
+ * A non-modal side panel composed from `pds-modal`.
12070
+ *
12071
+ * Unlike `pds-modal`, the page stays interactive while a drawer is open: no
12072
+ * dimming, no blur, no scroll lock, no click blocking. `pds-drawer` renders a
12073
+ * `pds-modal` internally with `disableTopLayer` always on and its backdrop
12074
+ * suppressed, and adds the edge, width and dismiss behavior a side panel
12075
+ * needs on top. It does not reimplement focus, Escape or dialog semantics —
12076
+ * those come from `pds-modal` unchanged.
12077
+ */
12078
+ class PdsDrawer {
12079
+ constructor(hostRef) {
12080
+ registerInstance(this, hostRef);
12081
+ this.pdsDrawerOpen = createEvent(this, "pdsDrawerOpen");
12082
+ this.pdsDrawerClose = createEvent(this, "pdsDrawerClose");
12083
+ /**
12084
+ * Whether the drawer is open
12085
+ * @default false
12086
+ */
12087
+ this.open = false;
12088
+ /**
12089
+ * Which edge of the viewport the drawer is docked to. Logical, so this is
12090
+ * free under RTL — `end` is the inline-end edge regardless of direction.
12091
+ * @default 'end'
12092
+ */
12093
+ this.side = 'end';
12094
+ /**
12095
+ * The drawer's width.
12096
+ * @default 'md'
12097
+ */
12098
+ this.size = 'md';
12099
+ /**
12100
+ * Whether the drawer content should be scrollable
12101
+ * @default true
12102
+ */
12103
+ this.scrollable = true;
12104
+ /**
12105
+ * Whether the drawer can be dismissed with a pointerdown outside it.
12106
+ * Replaces `pds-modal`'s `backdropDismiss` — there is no backdrop to click.
12107
+ * This also gates Escape, matching how `backdropDismiss` gates Escape on
12108
+ * `pds-modal` today: setting this to `false` means the close button is the
12109
+ * only way out.
12110
+ *
12111
+ * A trigger outside the drawer should only ever set `open` to `true` and
12112
+ * leave closing to the drawer itself. A toggle-style trigger (`open =
12113
+ * !open`) fights light dismiss: clicking it while open closes the drawer
12114
+ * on `pointerdown`, then the trigger's own click handler re-opens it.
12115
+ * @default true
12116
+ */
12117
+ this.lightDismiss = true;
12118
+ /**
12119
+ * Whether to move focus into the drawer when it opens. `auto` is right for
12120
+ * a drawer opened by a direct user action (a click, a deep link the user
12121
+ * just navigated to). Set to `none` for a drawer that can open from a
12122
+ * background event while the user is mid-task elsewhere on the page —
12123
+ * moving focus there would interrupt them, and the page stays live under
12124
+ * a non-modal drawer, so it is a genuine data-entry risk, not just an
12125
+ * annoyance.
12126
+ * @default 'auto'
12127
+ */
12128
+ this.initialFocus = 'auto';
12129
+ }
12130
+ // Unwraps a nested pds-modal left by a page-cache (Turbo, bfcache) reconnect
12131
+ // — the same bug class fixed for pds-modal-header/-content/-footer. Every
12132
+ // render wraps the slotted content in a fresh, marked pds-modal; a reconnect
12133
+ // that restores a prior render's pds-modal in our light DOM ends up with
12134
+ // that stale one nested inside the new one's content.
12135
+ //
12136
+ // The container has to be the inner `.pds-modal` content div, not the
12137
+ // `<pds-modal>` tag itself — that tag's first child is always its own
12138
+ // rendered `dialog.pds-modal__backdrop`, never another `<pds-modal>`, so a
12139
+ // bare-tag check there never matches. The `.pds-drawer__modal` marker on
12140
+ // the staleness selector (rather than the bare `pds-modal` tag) keeps this
12141
+ // from also unwrapping a consumer's own nested pds-modal, like a confirm
12142
+ // dialog placed first in the drawer's content — only a stale copy of our
12143
+ // own wrapper carries that class.
12144
+ componentDidRender() {
12145
+ unwrapReconnectedContent(this.el.querySelector('pds-modal.pds-drawer__modal .pds-modal'), 'pds-modal.pds-drawer__modal', '.pds-modal');
12146
+ }
12147
+ // pds-modal closes itself (Escape, light dismiss, a consumer's close
12148
+ // button toggling its own `open`) and only updates its own `open` prop —
12149
+ // mirror that back onto ours so a consumer's binding stays correct, and
12150
+ // re-emit as our own event rather than leaking pds-modal's event name.
12151
+ // Both events bubble, so a nested pds-modal (a confirm dialog inside the
12152
+ // drawer's own content) would otherwise trigger these too — only react to
12153
+ // our own direct inner modal.
12154
+ handleModalClose(e) {
12155
+ if (e.target !== this.modalEl)
12156
+ return;
12157
+ this.open = false;
12158
+ this.pdsDrawerClose.emit();
12159
+ }
12160
+ handleModalOpen(e) {
12161
+ if (e.target !== this.modalEl)
12162
+ return;
12163
+ this.pdsDrawerOpen.emit();
12164
+ }
12165
+ // Light dismiss: a pointerdown anywhere outside the drawer closes it. This
12166
+ // has to be a listener of our own, not pds-modal's backdrop-click handler —
12167
+ // the backdrop is pointer-events:none out here (see pds-drawer.scss) so the
12168
+ // page underneath stays genuinely clickable, which means a click there
12169
+ // never reaches pds-modal's backdrop element at all.
12170
+ handleOutsidePointerDown(e) {
12171
+ if (!this.lightDismiss || !this.open)
12172
+ return;
12173
+ const target = e.target;
12174
+ if (!target)
12175
+ return;
12176
+ if (this.el.contains(target))
12177
+ return;
12178
+ if (target.closest(PORTALED_OVERLAY_SELECTOR))
12179
+ return;
12180
+ // A sibling pds-modal — e.g. a confirm dialog opened from inside the
12181
+ // drawer but mounted at the document root rather than nested in our own
12182
+ // content — is neither a descendant of the drawer nor on the portaled
12183
+ // list above, so without this it reads as "outside" and a click inside
12184
+ // it (or on its own backdrop) would close the drawer underneath it. That
12185
+ // modal already owns its own dismiss semantics; defer to them instead.
12186
+ if (target.closest('pds-modal'))
12187
+ return;
12188
+ this.open = false;
12189
+ }
12190
+ render() {
12191
+ return (hAsync(Host, { key: '66e16ca7704243e8bb98002f042fa073ec43c38b', class: {
12192
+ 'pds-drawer': true,
12193
+ [`pds-drawer--${this.side}`]: true,
12194
+ [`pds-drawer--${this.size}`]: true,
12195
+ } }, hAsync("pds-modal", { key: 'b52b8cb1892d52113920ab27344d9a969e6365b6', class: "pds-drawer__modal", ref: (el) => (this.modalEl = el), componentId: this.componentId, open: this.open, scrollable: this.scrollable, disableTopLayer: true, backdropDismiss: this.lightDismiss, disableInitialFocus: this.initialFocus === 'none' }, hAsync("slot", { key: 'c9ce43ca12a06c550bd130a0fa7572dec22c9c92' }))));
12196
+ }
12197
+ get el() { return getElement(this); }
12198
+ static get style() { return pdsDrawerCss(); }
12199
+ static get cmpMeta() { return {
12200
+ "$flags$": 260,
12201
+ "$tagName$": "pds-drawer",
12202
+ "$members$": {
12203
+ "componentId": [1, "component-id"],
12204
+ "open": [1028],
12205
+ "side": [1],
12206
+ "size": [1],
12207
+ "scrollable": [4],
12208
+ "lightDismiss": [4, "light-dismiss"],
12209
+ "initialFocus": [1, "initial-focus"]
12210
+ },
12211
+ "$listeners$": [[0, "pdsModalClose", "handleModalClose"], [0, "pdsModalOpen", "handleModalOpen"], [5, "pointerdown", "handleOutsidePointerDown"]],
12212
+ "$lazyBundleId$": "-",
12213
+ "$attrsToReflect$": []
12214
+ }; }
12215
+ }
12216
+
12217
+ const pdsDrawerContentCss = () => `pds-drawer-content{display:block;-ms-flex:1 1 auto;flex:1 1 auto;min-height:0;width:100%}.pds-drawer-content{-webkit-box-sizing:border-box;box-sizing:border-box;display:block;height:100%;padding:var(--pine-dimension-md);width:100%}.pds-modal--scrollable pds-drawer-content{overflow-y:auto}.pds-modal:not(.pds-modal--scrollable) pds-drawer-content{overflow-y:visible}`;
12218
+
12219
+ /**
12220
+ * Fills the drawer panel's height by default — unlike `pds-modal-content`,
12221
+ * which caps itself against the viewport for a centered, possibly-shorter
12222
+ * modal, a drawer panel is already edge-to-edge, so its content can simply
12223
+ * flex to fill whatever space the header and footer leave.
12224
+ */
12225
+ class PdsDrawerContent {
12226
+ constructor(hostRef) {
12227
+ registerInstance(this, hostRef);
12228
+ }
12229
+ // Unwraps a nested .pds-drawer-content left by a page-cache (Turbo, bfcache) reconnect.
12230
+ componentDidRender() {
12231
+ unwrapReconnectedContent(this.el.querySelector('.pds-drawer-content'), '.pds-drawer-content');
12232
+ }
12233
+ render() {
12234
+ return (hAsync("div", { key: '432db626c93ab42365ec1af83562eec7ae1c4674', class: "pds-drawer-content" }, hAsync("slot", { key: '901ab074f31726023add709a4953bddb43842de2' })));
12235
+ }
12236
+ get el() { return getElement(this); }
12237
+ static get style() { return pdsDrawerContentCss(); }
12238
+ static get cmpMeta() { return {
12239
+ "$flags$": 260,
12240
+ "$tagName$": "pds-drawer-content",
12241
+ "$members$": undefined,
12242
+ "$listeners$": undefined,
12243
+ "$lazyBundleId$": "-",
12244
+ "$attrsToReflect$": []
12245
+ }; }
12246
+ }
12247
+
12248
+ const pdsDrawerFooterCss = () => `pds-drawer-footer{display:block;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.pds-drawer__footer{-webkit-border-before:1px solid var(--pine-color-border-subtle);border-block-start:1px solid var(--pine-color-border-subtle);-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;gap:var(--pine-dimension-sm);-ms-flex-pack:end;justify-content:flex-end;padding:var(--pine-dimension-md);width:100%}`;
12249
+
12250
+ class PdsDrawerFooter {
12251
+ constructor(hostRef) {
12252
+ registerInstance(this, hostRef);
12253
+ }
12254
+ // Unwraps a nested .pds-drawer__footer left by a page-cache (Turbo, bfcache) reconnect.
12255
+ componentDidRender() {
12256
+ unwrapReconnectedContent(this.el.querySelector('.pds-drawer__footer'), '.pds-drawer__footer');
12257
+ }
12258
+ render() {
12259
+ return (hAsync("footer", { key: '71cb35f7b1ccba9e4187eb8942771741f13510dc', class: "pds-drawer__footer" }, hAsync("slot", { key: '28927c76ee8194c44f416ee5d4e9ea2e0376bf5a' })));
12260
+ }
12261
+ get el() { return getElement(this); }
12262
+ static get style() { return pdsDrawerFooterCss(); }
12263
+ static get cmpMeta() { return {
12264
+ "$flags$": 260,
12265
+ "$tagName$": "pds-drawer-footer",
12266
+ "$members$": undefined,
12267
+ "$listeners$": undefined,
12268
+ "$lazyBundleId$": "-",
12269
+ "$attrsToReflect$": []
12270
+ }; }
12271
+ }
12272
+
12273
+ const pdsDrawerHeaderCss = () => `pds-drawer-header{display:block;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.pds-drawer__header{-ms-flex-align:center;align-items:center;-webkit-border-after:1px solid var(--pine-color-border-subtle);border-block-end:1px solid var(--pine-color-border-subtle);-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:var(--pine-dimension-md);width:100%}`;
12274
+
12275
+ class PdsDrawerHeader {
12276
+ constructor(hostRef) {
12277
+ registerInstance(this, hostRef);
12278
+ }
12279
+ // Unwraps a nested .pds-drawer__header left by a page-cache (Turbo, bfcache) reconnect.
12280
+ componentDidRender() {
12281
+ unwrapReconnectedContent(this.el.querySelector('.pds-drawer__header'), '.pds-drawer__header');
12282
+ }
12283
+ render() {
12284
+ return (hAsync("header", { key: '48d0585e0e20c9d3142635f0fc0184c0803413b8', class: "pds-drawer__header" }, hAsync("slot", { key: '14d9d0bde0116c81892140b22a2b6e9a2b1d969f' })));
12285
+ }
12286
+ get el() { return getElement(this); }
12287
+ static get style() { return pdsDrawerHeaderCss(); }
12288
+ static get cmpMeta() { return {
12289
+ "$flags$": 260,
12290
+ "$tagName$": "pds-drawer-header",
12291
+ "$members$": undefined,
12292
+ "$listeners$": undefined,
12293
+ "$lazyBundleId$": "-",
12294
+ "$attrsToReflect$": []
12295
+ }; }
12296
+ }
12297
+
11971
12298
  const pdsDropdownMenuCss = () => `:host{display:block}.is-hidden{display:none}.pds-dropdown-menu--panel{background-color:var(--pine-color-background-overlay);border-radius:var(--pine-dimension-xs);left:var(--pine-dimension-none);min-width:170px;padding:var(--pine-dimension-xs);position:fixed;z-index:var(--pine-z-index-overlay)}:host-context([data-theme=dark]) .pds-dropdown-menu--panel{border:var(--pine-border)}::slotted(a),::slotted(button){-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:var(--pine-dimension-xs) !important;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--pine-color-text) !important;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;font:var(--pine-typography-body-medium) !important;gap:var(--pine-dimension-xs);margin:calc(var(--pine-border-width) + 2px) !important;padding:var(--pine-dimension-xs) !important;text-align:start;text-decoration:none !important;width:calc(100% - (var(--pine-border-width) + 2px) * 2)}::slotted(.destructive){color:var(--pine-color-danger) !important}::slotted([aria-disabled=true]),::slotted([disabled]:not([disabled=false])){cursor:not-allowed;opacity:0.5;pointer-events:none}`;
11972
12299
 
11973
12300
  /**
@@ -12277,7 +12604,7 @@ class PdsDropdownMenu {
12277
12604
  }
12278
12605
  }
12279
12606
  render() {
12280
- return (hAsync(Host, { key: '30914965241f7e8e5af32e8576c651802026a996', id: this.componentId }, hAsync("slot", { key: 'ec995c9437083ca28058b974df91491b0e634a07', name: "trigger", onSlotchange: this.handleTriggerSlotChange }), hAsync("pds-box", { key: '590a22e556d4df23eb33cbe2fa2bda296ce59b01', "border-radius": "sm", display: "flex", direction: "column", class: "pds-dropdown-menu--panel is-hidden", shadow: "100", role: "menu", "aria-orientation": "vertical", part: "menu-panel" }, hAsync("slot", { key: '9b0d67a3cf63b33eb73d3e451b365dc4354a323c', onSlotchange: this.handleSlotChange }))));
12607
+ return (hAsync(Host, { key: '7907da6a04530d01bbbd0256f0b609fa53e0a774', id: this.componentId }, hAsync("slot", { key: '2bf060c4dec082d4175a7cde759221fd4b20d706', name: "trigger", onSlotchange: this.handleTriggerSlotChange }), hAsync("pds-box", { key: '0d81eddee58fda631eb6a39cba0e7ad0d69c02d8', "border-radius": "sm", display: "flex", direction: "column", class: "pds-dropdown-menu--panel is-hidden", shadow: "100", role: "menu", "aria-orientation": "vertical", part: "menu-panel" }, hAsync("slot", { key: '831485d66af711edc9491078827455762795bb64', onSlotchange: this.handleSlotChange }))));
12281
12608
  }
12282
12609
  get host() { return getElement(this); }
12283
12610
  static get style() { return pdsDropdownMenuCss(); }
@@ -12372,7 +12699,7 @@ class PdsDropdownMenuItem {
12372
12699
  }, tabIndex: this.disabled ? -1 : 0, type: "button", part: "button", onKeyDown: this.handleKeyDown, onFocus: this.handleFocus, onBlur: this.handleBlur, disabled: this.disabled, "aria-disabled": this.disabled ? 'true' : null }, hAsync("slot", null)));
12373
12700
  }
12374
12701
  render() {
12375
- return (hAsync(Host, { key: '5d27080b7e129f69255ecb9dd1fab183a8f7c5f6', id: this.componentId, class: { 'is-disabled': this.disabled, 'destructive': !this.disabled && this.destructive }, onClick: () => !this.disabled && this.handleClick(), role: "none", tabIndex: -1, "aria-disabled": this.disabled ? 'true' : null }, this.renderElement()));
12702
+ return (hAsync(Host, { key: '2fd3c925ba2f1ead6d0a23c44ac87449e8dad521', id: this.componentId, class: { 'is-disabled': this.disabled, 'destructive': !this.disabled && this.destructive }, onClick: () => !this.disabled && this.handleClick(), role: "none", tabIndex: -1, "aria-disabled": this.disabled ? 'true' : null }, this.renderElement()));
12376
12703
  }
12377
12704
  get host() { return getElement(this); }
12378
12705
  static get style() { return pdsDropdownMenuItemCss(); }
@@ -12408,7 +12735,7 @@ class PdsDropdownMenuSeparator {
12408
12735
  this.disabled = false;
12409
12736
  }
12410
12737
  render() {
12411
- return (hAsync(Host, { key: 'd0fbf00978860c7a449b5781db2f10dd7e99d1b1', id: this.componentId }, hAsync("hr", { key: 'a566c55fc3f15c0dab81fc90f5cf35d77fc0e35c' })));
12738
+ return (hAsync(Host, { key: 'f55fc3b23a6ccb94a7ce865189e5d65abdd97d8c', id: this.componentId }, hAsync("hr", { key: '784a1480881a27aec69c0a2b0afd06f103912544' })));
12412
12739
  }
12413
12740
  static get style() { return pdsDropdownMenuSeparatorCss(); }
12414
12741
  static get cmpMeta() { return {
@@ -12988,7 +13315,7 @@ class PdsFilter {
12988
13315
  return null;
12989
13316
  }
12990
13317
  render() {
12991
- return (hAsync(Host, { key: '6d40e2462bf70dcd26c0e3c5ab6f12e86c65ac49', id: this.componentId }, hAsync("button", { key: '2d45a9b8ae4fd3a4d1ecc04c29ccf83fe5756e50', class: this.getTriggerClasses(), type: "button", popoverTarget: this.variant !== 'clear' ? `${this.componentId}-popover` : undefined, popoverTargetAction: this.variant !== 'clear' ? 'toggle' : undefined, onKeyDown: this.variant === 'clear' ? this.handleKeyDown : undefined, onClick: (event) => this.handleClick(event), part: "button", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-haspopup": this.variant !== 'clear' ? 'true' : undefined, "aria-controls": this.variant !== 'clear' ? `${this.componentId}-popover` : undefined }, hAsync("span", { key: 'b80e2c8c4f92d17c37fa5a0c1fcc3f778f788483', class: "pds-filter__button-content", part: "button-content" }, this.renderIcon(), this.text && (hAsync("span", { key: '5faa099b94200071325ab8fb1b122437a81dcf61', class: "pds-filter__button-text", part: "button-text" }, this.text)), this.renderDropdownIcon())), this.variant !== 'clear' && (hAsync("div", { key: '063bc00fedda0fba5ba4af759404f3ae23b2b6ad', ref: el => this.popoverEl = el, id: `${this.componentId}-popover`, class: "pds-filter__popover", popover: "auto", part: "popover" }, hAsync("slot", { key: '9790cd0c8cd6a594aab094aeaa469dbcddc98d87' })))));
13318
+ return (hAsync(Host, { key: 'bd03de5e8461e3aba4d6f014e2d64d9aada0c0e1', id: this.componentId }, hAsync("button", { key: 'f35cb4aec14b1ed3b61d33c412cbfc89ba19cba3', class: this.getTriggerClasses(), type: "button", popoverTarget: this.variant !== 'clear' ? `${this.componentId}-popover` : undefined, popoverTargetAction: this.variant !== 'clear' ? 'toggle' : undefined, onKeyDown: this.variant === 'clear' ? this.handleKeyDown : undefined, onClick: (event) => this.handleClick(event), part: "button", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-haspopup": this.variant !== 'clear' ? 'true' : undefined, "aria-controls": this.variant !== 'clear' ? `${this.componentId}-popover` : undefined }, hAsync("span", { key: 'b3635542048ac52d290917260181d7313eddaff2', class: "pds-filter__button-content", part: "button-content" }, this.renderIcon(), this.text && (hAsync("span", { key: '0c5ef7f7655ddbee33a695703ce192f082b21bf1', class: "pds-filter__button-text", part: "button-text" }, this.text)), this.renderDropdownIcon())), this.variant !== 'clear' && (hAsync("div", { key: 'e75c75d8e9e4596d7f0642e4e1f91deae3f2b9fa', ref: el => this.popoverEl = el, id: `${this.componentId}-popover`, class: "pds-filter__popover", popover: "auto", part: "popover" }, hAsync("slot", { key: 'bef66af716be823ed3ac36d39a4532785df07f6b' })))));
12992
13319
  }
12993
13320
  get el() { return getElement(this); }
12994
13321
  static get style() { return pdsFilterCss(); }
@@ -13020,7 +13347,7 @@ class PdsFilters {
13020
13347
  registerInstance(this, hostRef);
13021
13348
  }
13022
13349
  render() {
13023
- return (hAsync(Host, { key: '0f4dc3d5ecf71992a4c13f85fec62d4b60f3c6d1', id: this.componentId }, hAsync("div", { key: 'ee3edc3d752c70d7888028b45dcb1c89f297803c', class: "pds-filters" }, hAsync("slot", { key: 'de693eedf74a029a0a279855cd2602420891ef10' }))));
13350
+ return (hAsync(Host, { key: '492357b36ec8ca8552f76aea6a4e4baf01ee92d5', id: this.componentId }, hAsync("div", { key: 'fbf56c5452b4b0627a95008a601ccd6ace59417c', class: "pds-filters" }, hAsync("slot", { key: 'c0e1d6b7b86ff39425d26dc75bf950283a371f71' }))));
13024
13351
  }
13025
13352
  static get style() { return pdsFiltersCss(); }
13026
13353
  static get cmpMeta() { return {
@@ -13493,9 +13820,9 @@ class PdsImage {
13493
13820
  this.loading = 'eager';
13494
13821
  }
13495
13822
  render() {
13496
- return (hAsync(Host, { key: 'dbc144927d78e2eb380639eeb8b243133a4b5379', class: {
13823
+ return (hAsync(Host, { key: '0c0f463a1b616ccc485b8086a0210c5d9d2b065c', class: {
13497
13824
  'pds-image': true,
13498
- }, id: this.componentId }, hAsync("img", { key: '259c1cd7ffdf4e5dd7c0ef178d28f1f835b57642', alt: this.alt, height: this.height, loading: this.loading, sizes: this.sizes, src: this.src, srcset: this.srcset, width: this.width })));
13825
+ }, id: this.componentId }, hAsync("img", { key: '2ac4ef66ebbb39d488ce68f06b590a5fad180811', alt: this.alt, height: this.height, loading: this.loading, sizes: this.sizes, src: this.src, srcset: this.srcset, width: this.width })));
13499
13826
  }
13500
13827
  static get style() { return pdsImageCss(); }
13501
13828
  static get cmpMeta() { return {
@@ -13812,10 +14139,10 @@ class PdsInput {
13812
14139
  'has-prepend': this.hasPrepend,
13813
14140
  'has-append': this.hasAppend,
13814
14141
  };
13815
- return (hAsync(Host, { key: '8f15b61e4a6336246aefca1112c280265996630a', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-prefix": this.hasPrefix ? 'true' : null, "has-suffix": this.hasSuffix ? 'true' : null, "has-prepend": this.hasPrepend ? 'true' : null, "has-append": this.hasAppend ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null, "full-width": this.fullWidth ? 'true' : null }, hAsync("div", { key: '9e45a632a63b813f2f097ef903db9e97f6b88b16', class: "pds-input" }, label && (hAsync("div", { key: 'e9e3710cfa43372a71bbf2440110cd43336c16e3', class: {
14142
+ return (hAsync(Host, { key: 'b67b80853cbf1f1e84c3ce6d2ff7e63f480c5b8d', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-prefix": this.hasPrefix ? 'true' : null, "has-suffix": this.hasSuffix ? 'true' : null, "has-prepend": this.hasPrepend ? 'true' : null, "has-append": this.hasAppend ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null, "full-width": this.fullWidth ? 'true' : null }, hAsync("div", { key: '27a60a963cfa1a96391b55800eba27743a2527f4', class: "pds-input" }, label && (hAsync("div", { key: '3f8ce2b254feea4b6fe9ea74318f1e6c27a75927', class: {
13816
14143
  'pds-input__label-wrapper': true,
13817
14144
  'visually-hidden': this.hideLabel,
13818
- } }, hAsync("label", { key: '0717152167b9f8776e23bb95d0b3ebdc58a27e8e', htmlFor: componentId, class: "pds-input__label" }, hAsync("span", { key: 'cf350936ac9981da1773c7320d5092da2d8aa5c6' }, label, this.required && hAsync("span", { key: '115e170ee93a5bc2c4c396aaf235fd0e6ae09a13', class: "pds-input__required-indicator" }, " *"))), !this.hideLabel && this.renderAction())), hAsync("div", { key: '00839202f48a22c6a6f00fa706eee81314dc1c04', class: inputWrapperClasses }, this.renderPrepend(), this.renderPrefix(), hAsync("input", Object.assign({ key: 'cb2234ebf58e2148ea6b4b711ff09338722d4457', ref: (input) => (this.nativeInput = input), class: "pds-input__field", "aria-describedby": assignDescription(componentId, invalid, helperMessage, errorMessage), "aria-invalid": invalid ? "true" : undefined, autocomplete: this.autocomplete, disabled: disabled, id: componentId, max: this.max, maxlength: this.maxlength, min: this.min, minlength: this.minlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, step: this.step, type: this.type, value: value, onInput: this.onInputEvent, onChange: this.onChangeEvent, onBlur: this.onBlurEvent, onFocus: this.onFocusEvent, onKeyDown: this.onKeyDownEvent, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), this.renderSuffix(), this.renderAppend()), helperMessage && (hAsync("p", { key: 'e322e25b5d6d8fe9c7292087127d7d44c0a27046', class: "pds-input__helper-message", id: messageId(componentId, 'helper') }, helperMessage)), errorMessage && (hAsync("p", { key: 'e3a982cf8312fa2a16360a4667fa5286ce304e68', class: "pds-input__error-message", id: messageId(componentId, 'error') }, hAsync("pds-icon", { key: 'ffa236865ab93013f54ea0bf2f993a3c3631e919', "aria-hidden": "true", icon: danger, size: "small" }), errorMessage)))));
14145
+ } }, hAsync("label", { key: '1c290cde5a9100b11fe3059725866506d089e834', htmlFor: componentId, class: "pds-input__label" }, hAsync("span", { key: '2ebc8dafa48d6d855be5b8e1aa3bdd417d6250f3' }, label, this.required && hAsync("span", { key: '73f7d22b13739daff6aa104c140208c5b1a86d10', class: "pds-input__required-indicator" }, " *"))), !this.hideLabel && this.renderAction())), hAsync("div", { key: '4ea0b3335abbdf920ca064aa5866a060ef18c2ad', class: inputWrapperClasses }, this.renderPrepend(), this.renderPrefix(), hAsync("input", Object.assign({ key: '4acf340fdcf40968e9c46b6a240f8a9008998c11', ref: (input) => (this.nativeInput = input), class: "pds-input__field", "aria-describedby": assignDescription(componentId, invalid, helperMessage, errorMessage), "aria-invalid": invalid ? "true" : undefined, autocomplete: this.autocomplete, disabled: disabled, id: componentId, max: this.max, maxlength: this.maxlength, min: this.min, minlength: this.minlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, step: this.step, type: this.type, value: value, onInput: this.onInputEvent, onChange: this.onChangeEvent, onBlur: this.onBlurEvent, onFocus: this.onFocusEvent, onKeyDown: this.onKeyDownEvent, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), this.renderSuffix(), this.renderAppend()), helperMessage && (hAsync("p", { key: 'f1969fe3a5f3aba65f44fcdaddd5a12d90db7fb1', class: "pds-input__helper-message", id: messageId(componentId, 'helper') }, helperMessage)), errorMessage && (hAsync("p", { key: 'd4df1ceff95d5db7f2d927e9fcb848444570f9a2', class: "pds-input__error-message", id: messageId(componentId, 'error') }, hAsync("pds-icon", { key: 'f69182919903aab42b7641d9a0082861f551a214', "aria-hidden": "true", icon: danger, size: "small" }), errorMessage)))));
13819
14146
  }
13820
14147
  static get formAssociated() { return true; }
13821
14148
  get el() { return getElement(this); }
@@ -13927,8 +14254,8 @@ class PdsLink {
13927
14254
  const targetValue = this.target || (this.external ? '_blank' : undefined);
13928
14255
  const showExternalIcon = this.external;
13929
14256
  const relValue = targetValue === '_blank' ? 'noopener noreferrer' : undefined;
13930
- return (hAsync("a", { key: '532bc4afd39f637b021556875a1744dd85d4a227', class: this.classNames(), download: this.download, href: this.href, id: this.componentId, part: "link", "aria-current": this.active ? 'page' : undefined, target: targetValue, rel: relValue, style: this.setLinkStyles(), "data-turbo": this.turbo || undefined, "data-turbo-frame": this.turboFrame || undefined, "data-turbo-action": this.turboAction || undefined, "data-turbo-method": this.turboMethod || undefined, "data-turbo-confirm": this.turboConfirm || undefined, "data-turbo-stream": this.turboStream || undefined, "data-turbo-prefetch": this.turboPrefetch || undefined, "data-turbo-preload": this.turboPreload || undefined }, hAsync("slot", { key: '854b411525e89363fbc13fb3119c4f04e611d0a0' }, this.href), showExternalIcon &&
13931
- hAsync("pds-icon", { key: 'c670f8c1f46bd55b6ebd735a98c0dbff8eb24076', icon: launch, size: this.fontSize })));
14257
+ return (hAsync("a", { key: '9e2d6cc4f2697bd11db4fd7ddd6f9e42ef28cf8c', class: this.classNames(), download: this.download, href: this.href, id: this.componentId, part: "link", "aria-current": this.active ? 'page' : undefined, target: targetValue, rel: relValue, style: this.setLinkStyles(), "data-turbo": this.turbo || undefined, "data-turbo-frame": this.turboFrame || undefined, "data-turbo-action": this.turboAction || undefined, "data-turbo-method": this.turboMethod || undefined, "data-turbo-confirm": this.turboConfirm || undefined, "data-turbo-stream": this.turboStream || undefined, "data-turbo-prefetch": this.turboPrefetch || undefined, "data-turbo-preload": this.turboPreload || undefined }, hAsync("slot", { key: 'f48dd74f1921400553845ea3b03720749b1a6737' }, this.href), showExternalIcon &&
14258
+ hAsync("pds-icon", { key: '299d4f31ec32b614fd9f4d1c19acae63ee7a9169', icon: launch, size: this.fontSize })));
13932
14259
  }
13933
14260
  static get style() { return pdsLinkCss(); }
13934
14261
  static get cmpMeta() { return {
@@ -14009,7 +14336,7 @@ class PdsLoader {
14009
14336
  }
14010
14337
  }
14011
14338
  render() {
14012
- return (hAsync(Host, { key: '288e980a91a4a05984ec7d16c198cff227a2e676', class: `pds-loader ${this.isLoading ? '' : 'pds-loader--hidden'}`, "aria-hidden": !this.isLoading, "aria-busy": this.isLoading, "aria-live": "polite" }, this.variant === 'spinner' && (hAsync("div", { key: 'dc8643b932182b540ce93dd87dad10f07174d59f', class: "pds-loader--spinner" }, hAsync("svg", { key: '2cec5ddfdf9772c0d20ce11a6bf070d0bc06a53b', style: this.getSvgStyle(), viewBox: "0 0 200 200", fill: "none", part: "loader-svg" }, hAsync("defs", { key: 'f2554f75fe1bd3e0e3afc1947220d3c004184e84' }, hAsync("linearGradient", { key: 'edef079f8b959604ec9f911739a78801c5f285c0', id: "spinner-secondHalf" }, hAsync("stop", { key: '337a53ea77d19e9dfd3a5d43f01f6886c71f190b', offset: "0%", "stop-opacity": "0", "stop-color": "currentColor" }), hAsync("stop", { key: 'ca2e6363e2feece31ba1a4b2de0d3ec66c4c45f9', offset: "100%", "stop-opacity": "0.5", "stop-color": "currentColor" })), hAsync("linearGradient", { key: '5458cf7f8e9e35e23dfc5aa4e5f7ef5c7b9d142d', id: "spinner-firstHalf" }, hAsync("stop", { key: '7cbb4bc34f8792e648c8bf1bfe6db8e319bf68cf', offset: "0%", "stop-opacity": "1", "stop-color": "currentColor" }), hAsync("stop", { key: 'febbf165e3da7d328dfa35cf5930a8069fea604e', offset: "100%", "stop-opacity": "0.5", "stop-color": "currentColor" }))), hAsync("g", { key: 'a2becedb247748508013f80c9dbd6eccc6818e6f', class: "pds-loader__spinner-path" }, hAsync("path", { key: '2df230f57210ee7c10ff22d99d3fd8a1dd17b217', stroke: "url(#spinner-secondHalf)", d: "M 4 100 A 96 96 0 0 1 196 100" }), hAsync("path", { key: 'b85ae9aebe39f99d1d06a3e03e8ef7027fa8a866', stroke: "url(#spinner-firstHalf)", d: "M 196 100 A 96 96 0 0 1 4 100" }), hAsync("path", { key: '9f0508fdf50f6274e2b0656565585198f6105b68', stroke: "currentColor", "stroke-linecap": "round", d: "M 4 100 A 96 96 0 0 1 4 98" }))))), this.variant === 'typing' && (hAsync("div", { key: '0520d0113a7b4498692e523c273616d67b90f042', class: "pds-loader--typing" }, hAsync("span", { key: 'a1083f20b9cd04d1ba685aafd736fcd154dc597f' }), hAsync("span", { key: '9eab7a6bfcca61861cbdd01953b2aa0762770b80' }), hAsync("span", { key: 'd4599150cd603fcfe6b2f50044a0ed867fad6070' }))), hAsync("div", { key: 'b37bc877a5fd6cd7249b10bca48ac50eb31f4f40', class: `pds-loader__label ${this.showLabel ? '' : 'pds-loader--hidden'}` }, hAsync("slot", { key: '689ca4190506689ca6c92b61ada5c96a2a1427ab', name: "label" }, "Loading..."))));
14339
+ return (hAsync(Host, { key: 'ce5b09477f57aad1a09ce3a38b81b64f673944b2', class: `pds-loader ${this.isLoading ? '' : 'pds-loader--hidden'}`, "aria-hidden": !this.isLoading, "aria-busy": this.isLoading, "aria-live": "polite" }, this.variant === 'spinner' && (hAsync("div", { key: 'd193dfdaa527debff73705cef65e3d7f7a9a69ae', class: "pds-loader--spinner" }, hAsync("svg", { key: 'c881ff2ee1d5d92ac55300bd13e9d066f7a3970f', style: this.getSvgStyle(), viewBox: "0 0 200 200", fill: "none", part: "loader-svg" }, hAsync("defs", { key: '998920cdc820cc4e60df39bda5707e0b6bd5d0fe' }, hAsync("linearGradient", { key: '02028f6ac070703f8b96b1723c4d2c07670e73bb', id: "spinner-secondHalf" }, hAsync("stop", { key: 'b3120c2a597d8f646e791b1ac09a262486fb29cc', offset: "0%", "stop-opacity": "0", "stop-color": "currentColor" }), hAsync("stop", { key: '932056b587b5e3191952506d9411c68375af6620', offset: "100%", "stop-opacity": "0.5", "stop-color": "currentColor" })), hAsync("linearGradient", { key: '14540856cb968c220f71537c012a8c415d39af85', id: "spinner-firstHalf" }, hAsync("stop", { key: 'c94d634b1dffa0c5301b8cb2c0b6e81fdb34429e', offset: "0%", "stop-opacity": "1", "stop-color": "currentColor" }), hAsync("stop", { key: 'b6477c000c01728a60a7fd8e182f24da4b554128', offset: "100%", "stop-opacity": "0.5", "stop-color": "currentColor" }))), hAsync("g", { key: '810f7c7bcd8e33bd2bed70932ed174eef48ae711', class: "pds-loader__spinner-path" }, hAsync("path", { key: '4e54f348c563cca7e14790a34a58dacbda452824', stroke: "url(#spinner-secondHalf)", d: "M 4 100 A 96 96 0 0 1 196 100" }), hAsync("path", { key: '3968c60f27ec619aabc74a278026abdd94d4510f', stroke: "url(#spinner-firstHalf)", d: "M 196 100 A 96 96 0 0 1 4 100" }), hAsync("path", { key: '171fe08e0aec1f207704a0395388ccc57ea045d4', stroke: "currentColor", "stroke-linecap": "round", d: "M 4 100 A 96 96 0 0 1 4 98" }))))), this.variant === 'typing' && (hAsync("div", { key: '60cf0b871807eb49ce73d3e63f00f5914c9c9eec', class: "pds-loader--typing" }, hAsync("span", { key: 'dfbdcc1fe558803d39caa56bb57763269c061661' }), hAsync("span", { key: '0c343f36a8d71bdc07306b3c879016686da94199' }), hAsync("span", { key: 'f2a30e560ef0c9ac26c596dbaad33eeb0e4f7ff3' }))), hAsync("div", { key: '0fa18b15a3962df872fd28136caf258cd09cafdb', class: `pds-loader__label ${this.showLabel ? '' : 'pds-loader--hidden'}` }, hAsync("slot", { key: 'e8eabec0c6d24d3ad962ecee9e0ed6e0e0b4adc0', name: "label" }, "Loading..."))));
14013
14340
  }
14014
14341
  static get style() { return pdsLoaderCss(); }
14015
14342
  static get cmpMeta() { return {
@@ -14027,32 +14354,6 @@ class PdsLoader {
14027
14354
  }; }
14028
14355
  }
14029
14356
 
14030
- /**
14031
- * Unwraps a stale copy of a light-DOM (`shadow: false`) component's own wrapper,
14032
- * left behind when a page-cache (Turbo, browser bfcache) reconnect nests a
14033
- * component's previous render inside its freshly rendered one. Call from
14034
- * `componentDidRender` with the element that directly contains the rendered
14035
- * `<slot>` and the selector that identifies "another one of me." Unwraps in
14036
- * place (move-then-remove) so nested content is never lost.
14037
- *
14038
- * `contentSelector` is only needed when the wrapper itself further nests a
14039
- * separate content element (e.g. pds-tab's `<a class="pds-tab">` wrapping a
14040
- * `.pds-tab__content` div) — omit it when the wrapper's own children are the
14041
- * slotted content (e.g. pds-tabpanel's `.pds-tabpanel` div).
14042
- */
14043
- function unwrapReconnectedContent(container, selector, contentSelector) {
14044
- var _a;
14045
- if (container === null)
14046
- return;
14047
- let stale = container.firstElementChild;
14048
- while (stale === null || stale === void 0 ? void 0 : stale.matches(selector)) {
14049
- const source = contentSelector !== undefined ? ((_a = stale.querySelector(contentSelector)) !== null && _a !== void 0 ? _a : stale) : stale;
14050
- Array.from(source.childNodes).forEach((node) => container.insertBefore(node, stale));
14051
- stale.remove();
14052
- stale = container.firstElementChild;
14053
- }
14054
- }
14055
-
14056
14357
  const pdsModalCss = () => `.pds-modal__backdrop{-ms-flex-align:start;align-items:flex-start;background-color:rgba(0, 0, 0, 0.4);border:0;display:-ms-flexbox;display:flex;height:100%;inset:0;-ms-flex-pack:center;justify-content:center;margin:0;max-height:100%;max-width:100%;opacity:0;padding:0;position:fixed;-webkit-transition:opacity var(--pine-motion-duration-base) var(--pine-motion-easing-in), visibility var(--pine-motion-duration-base) var(--pine-motion-easing-in);transition:opacity var(--pine-motion-duration-base) var(--pine-motion-easing-in), visibility var(--pine-motion-duration-base) var(--pine-motion-easing-in);visibility:hidden;width:100%;z-index:var(--pine-z-index-modal)}@supports ((-webkit-backdrop-filter: blur(3px)) or (backdrop-filter: blur(3px))){.pds-modal__backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}pds-modal .pds-modal__backdrop{z-index:var(--pine-z-index-priority)}.pds-modal__backdrop::-webkit-backdrop{background:transparent}.pds-modal__backdrop::-ms-backdrop{background:transparent}.pds-modal__backdrop::backdrop{background:transparent}.pds-modal__backdrop.open{opacity:1;-webkit-transition-timing-function:var(--pine-motion-easing-out);transition-timing-function:var(--pine-motion-easing-out);visibility:visible}.pds-modal{background:var(--pine-color-background-overlay);border-radius:var(--pine-dimension-sm);-webkit-box-shadow:var(--pine-box-shadow-400);box-shadow:var(--pine-box-shadow-400);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:var(--pine-dimension-md);max-height:none;width:100%}.pds-modal.pds-modal--scrollable{max-height:calc(100vh - (5vh + 96px))}@supports (height: 100dvh){.pds-modal.pds-modal--scrollable{max-height:calc(100dvh - (5dvh + 96px))}}@media (min-width: 992px){.pds-modal{-webkit-margin-before:6vh;margin-block-start:6vh}@supports (height: 100dvh){.pds-modal{-webkit-margin-before:6dvh;margin-block-start:6dvh}}}@media (min-width: 1200px){.pds-modal{-webkit-margin-before:8vh;margin-block-start:8vh}@supports (height: 100dvh){.pds-modal{-webkit-margin-before:8dvh;margin-block-start:8dvh}}}.pds-modal--sm{max-width:520px}.pds-modal--md{max-width:700px}.pds-modal--lg{max-width:900px}.pds-modal--fullscreen{border-radius:0;height:100%;margin:0;max-height:100vh;max-width:100%}@supports (height: 100dvh){.pds-modal--fullscreen{max-height:100dvh}}.pds-modal--fullscreen.pds-modal--scrollable{max-height:100vh}@supports (height: 100dvh){.pds-modal--fullscreen.pds-modal--scrollable{max-height:100dvh}}.pds-modal--fullscreen .pds-modal-content{-ms-flex:1;flex:1}.pds-modal--scrollable pds-modal-content{-webkit-border-after:1px solid transparent;border-block-end:1px solid transparent;-webkit-border-before:1px solid transparent;border-block-start:1px solid transparent;overflow-y:auto}.pds-modal:not(.pds-modal--scrollable) pds-modal-content{overflow-y:visible}`;
14057
14358
 
14058
14359
  class PdsModal {
@@ -14091,6 +14392,19 @@ class PdsModal {
14091
14392
  * @default false
14092
14393
  */
14093
14394
  this.disableTopLayer = false;
14395
+ /**
14396
+ * Whether to skip moving focus into the modal when it opens — both our own
14397
+ * `setInitialFocus()` and the browser's native "dialog focusing steps",
14398
+ * which move focus into the dialog as soon as `show()`/`showModal()` is
14399
+ * called regardless of application code. Focus return on close is
14400
+ * unaffected either way. For a modal opened by something other than a
14401
+ * direct user click — a redirect, a deep link, a background event —
14402
+ * stealing focus on open can interrupt whatever the user was already
14403
+ * doing. Default `false` preserves today's behavior for every existing
14404
+ * consumer.
14405
+ * @default false
14406
+ */
14407
+ this.disableInitialFocus = false;
14094
14408
  /**
14095
14409
  * Stores the list of focusable elements in the modal
14096
14410
  */
@@ -14107,16 +14421,41 @@ class PdsModal {
14107
14421
  }
14108
14422
  };
14109
14423
  this.handleKeyDown = (e) => {
14424
+ var _a, _b, _c;
14110
14425
  // If the modal is not open, don't handle any keyboard events
14111
14426
  if (!this.open)
14112
14427
  return;
14113
14428
  // Handle Escape key to close the modal
14114
14429
  if (e.key === 'Escape') {
14115
- // In non-top-layer mode, focus can move into an overlay stacked above the
14116
- // modal (the reason disableTopLayer exists). If that overlay owns focus,
14117
- // leave Escape to it rather than dismissing this modal out from under it.
14118
- const active = document.activeElement;
14119
- if (this.disableTopLayer && active && active !== document.body && !this.el.contains(active)) {
14430
+ // Every open pds-modal shares this document-level listener for the
14431
+ // same keydown event. Whichever one runs first can synchronously move
14432
+ // focus (hideModal() restores it), which would make a later instance's
14433
+ // own read of document.activeElement reflect that side effect instead
14434
+ // of where focus actually was when the key was pressed — stacking two
14435
+ // sibling modals closing on one Escape instead of just the top one.
14436
+ // That alone isn't enough, though: isStackedAboveOverlay's `:modal`
14437
+ // check reads LIVE top-layer state, and hideModal()'s close() clears it
14438
+ // synchronously — so whichever sibling's listener runs first (DOM
14439
+ // order, not z-index) can close itself and erase the very evidence a
14440
+ // later listener needs to recognize it was stacked above. Snapshot that
14441
+ // determination too, in the same first-listener-wins block, before any
14442
+ // instance has had a chance to act on this keypress.
14443
+ const eventSnapshot = e;
14444
+ if (!('__pdsActiveElementAtEscape' in eventSnapshot)) {
14445
+ const activeAtDispatch = document.activeElement;
14446
+ eventSnapshot.__pdsActiveElementAtEscape = activeAtDispatch;
14447
+ const topLayerDialog = (_a = activeAtDispatch === null || activeAtDispatch === void 0 ? void 0 : activeAtDispatch.closest('dialog')) !== null && _a !== void 0 ? _a : null;
14448
+ eventSnapshot.__pdsTopLayerDialogAtEscape = topLayerDialog;
14449
+ eventSnapshot.__pdsTopLayerDialogWasModalAtEscape = !!(topLayerDialog && topLayerDialog.matches(':modal'));
14450
+ }
14451
+ // Leave Escape to a genuinely stacked-above overlay (disableTopLayer's
14452
+ // reason for existing) — not just to anything outside this modal.
14453
+ const active = eventSnapshot.__pdsActiveElementAtEscape;
14454
+ if (this.disableTopLayer &&
14455
+ active &&
14456
+ active !== document.body &&
14457
+ !this.el.contains(active) &&
14458
+ this.isStackedAboveOverlay(active, (_b = eventSnapshot.__pdsTopLayerDialogAtEscape) !== null && _b !== void 0 ? _b : null, (_c = eventSnapshot.__pdsTopLayerDialogWasModalAtEscape) !== null && _c !== void 0 ? _c : false)) {
14120
14459
  return;
14121
14460
  }
14122
14461
  // Always prevent native dialog close behavior
@@ -14164,6 +14503,16 @@ class PdsModal {
14164
14503
  this.modalRef = this.el.querySelector('.pds-modal__backdrop');
14165
14504
  // Add keyboard event listener
14166
14505
  document.addEventListener('keydown', this.handleKeyDown);
14506
+ // @Watch('open') only fires on a later change, not the prop's initial
14507
+ // value — a modal mounted with `open` already true (static markup, or a
14508
+ // framework passing it on first render) would otherwise never call
14509
+ // show()/showModal(): the panel still appears, since that's driven by the
14510
+ // `open` CSS class, but the native <dialog> itself was never opened, so
14511
+ // there's no top-layer promotion, no dialog focusing steps, and no
14512
+ // focusable-elements list or previousActiveElement captured.
14513
+ if (this.open) {
14514
+ this.showModal();
14515
+ }
14167
14516
  }
14168
14517
  // Unwraps a nested dialog.pds-modal__backdrop left by a page-cache (Turbo, bfcache) reconnect.
14169
14518
  componentDidRender() {
@@ -14269,8 +14618,39 @@ class PdsModal {
14269
14618
  // Update focusable elements and set initial focus
14270
14619
  // Using a longer timeout to ensure all components are fully rendered
14271
14620
  setTimeout(() => {
14621
+ var _a, _b;
14272
14622
  this.updateFocusableElements();
14273
- this.setInitialFocus();
14623
+ if (this.disableInitialFocus) {
14624
+ // show()/showModal() also move focus into the dialog natively (the
14625
+ // HTML spec's "dialog focusing steps") — that native step isn't
14626
+ // necessarily done by the time this task runs either, so counter it
14627
+ // here, in the same deferred slot setInitialFocus() below uses for
14628
+ // the same reason, rather than racing it synchronously above.
14629
+ //
14630
+ // disableInitialFocus exists for a drawer that can open in the
14631
+ // background while the user is mid-task elsewhere — by the time
14632
+ // this runs, they may have already clicked into something of
14633
+ // their own outside the dialog. Only act if focus is still where
14634
+ // the native steps (or nothing) left it, so that isn't stolen.
14635
+ const activeElement = document.activeElement;
14636
+ const focusAlreadyClaimedElsewhere = activeElement !== null && activeElement !== document.body && !((_a = this.modalRef) === null || _a === void 0 ? void 0 : _a.contains(activeElement));
14637
+ if (!focusAlreadyClaimedElsewhere) {
14638
+ if (this.previousActiveElement !== document.body && typeof ((_b = this.previousActiveElement) === null || _b === void 0 ? void 0 : _b.focus) === 'function') {
14639
+ this.previousActiveElement.focus();
14640
+ }
14641
+ else if (activeElement instanceof HTMLElement) {
14642
+ // Nothing was focused before opening (previousActiveElement is
14643
+ // body), so there's nothing to restore focus to — body.focus()
14644
+ // would be a no-op and leave focus wherever the native focusing
14645
+ // steps put it, inside the dialog. Blur that instead so focus
14646
+ // ends up nowhere, matching the state before opening.
14647
+ activeElement.blur();
14648
+ }
14649
+ }
14650
+ }
14651
+ else {
14652
+ this.setInitialFocus();
14653
+ }
14274
14654
  this.pdsModalOpen.emit();
14275
14655
  }, 100);
14276
14656
  }
@@ -14285,10 +14665,22 @@ class PdsModal {
14285
14665
  async hideModal() {
14286
14666
  if (this.modalRef) {
14287
14667
  try {
14668
+ // Capture before close(): with the async task queue, a prop change
14669
+ // that triggers hideModal() (e.g. light dismiss setting `open` false
14670
+ // on a pointerdown elsewhere) doesn't run until the next frame — by
14671
+ // then the browser has already moved focus to whatever the user's
14672
+ // click actually landed on. Restoring previousActiveElement in that
14673
+ // case would steal focus back from a real new destination; only
14674
+ // restore it when focus is still inside the modal (or nowhere, i.e.
14675
+ // document.body), meaning nothing else has claimed it since.
14676
+ const activeElement = document.activeElement;
14677
+ const focusAlreadyMovedElsewhere = activeElement !== null && activeElement !== document.body && !this.modalRef.contains(activeElement);
14288
14678
  this.modalRef.close();
14289
14679
  this.open = false;
14290
14680
  // Restore focus to the element that was focused before the modal was opened
14291
- if (this.previousActiveElement && typeof this.previousActiveElement.focus === 'function') {
14681
+ if (!focusAlreadyMovedElsewhere &&
14682
+ this.previousActiveElement &&
14683
+ typeof this.previousActiveElement.focus === 'function') {
14292
14684
  this.previousActiveElement.focus();
14293
14685
  }
14294
14686
  this.pdsModalClose.emit();
@@ -14305,6 +14697,46 @@ class PdsModal {
14305
14697
  const backdrop = modal.querySelector('.pds-modal__backdrop');
14306
14698
  return backdrop ? parseInt(getComputedStyle(backdrop).zIndex, 10) : -1;
14307
14699
  }
14700
+ /**
14701
+ * Whether `active` sits inside a surface actually stacked above this modal.
14702
+ *
14703
+ * Used to decide whether an Escape keypress belongs to that surface instead
14704
+ * of this modal. Focus being merely *outside* this modal is not enough on
14705
+ * its own: in `disableTopLayer` mode the page stays interactive (that's the
14706
+ * point of a non-modal usage like a drawer), so focus will routinely be on
14707
+ * ordinary page content while the modal is open, and that must not be
14708
+ * mistaken for "an overlay owns Escape."
14709
+ *
14710
+ * Two ways a surface can be above: it is itself promoted to the browser's
14711
+ * top layer (a regular `showModal()` dialog, which paints above everything
14712
+ * outside the top layer regardless of z-index — a sibling pds-modal opened
14713
+ * over a `disableTopLayer` drawer typically shares the exact same z-index
14714
+ * token, so a numeric comparison alone would miss it), or it has a higher
14715
+ * z-index than this modal's own backdrop (a `disableTopLayer` overlay, or
14716
+ * anything else deliberately raised above it).
14717
+ *
14718
+ * `topLayerDialog` / `topLayerDialogWasModal` come pre-snapshotted from the
14719
+ * keydown event (see handleKeyDown) rather than being re-derived here: by
14720
+ * the time a later sibling modal's listener runs, an earlier one may have
14721
+ * already closed itself, which clears `:modal` — reading it live here would
14722
+ * lose that evidence depending on listener order.
14723
+ */
14724
+ isStackedAboveOverlay(active, topLayerDialog, topLayerDialogWasModal) {
14725
+ if (topLayerDialog && topLayerDialog !== this.modalRef && topLayerDialogWasModal) {
14726
+ return true;
14727
+ }
14728
+ const ownZIndex = this.getBackdropZIndex(this.el);
14729
+ let node = active;
14730
+ while (node && node !== document.body) {
14731
+ const style = getComputedStyle(node);
14732
+ const zIndex = parseInt(style.zIndex, 10);
14733
+ if (style.position !== 'static' && !isNaN(zIndex) && zIndex > ownZIndex) {
14734
+ return true;
14735
+ }
14736
+ node = node.parentElement;
14737
+ }
14738
+ return false;
14739
+ }
14308
14740
  /**
14309
14741
  * Checks if this modal is the innermost (highest z-index) modal
14310
14742
  */
@@ -14326,14 +14758,14 @@ class PdsModal {
14326
14758
  return thisZIndex === maxZIndex;
14327
14759
  }
14328
14760
  render() {
14329
- return (hAsync("dialog", { key: '65d204a57e193022eb475c113438a40fc77cf545', class: {
14761
+ return (hAsync("dialog", { key: 'f35044ec9bca1189069faf083c824d8144800053', class: {
14330
14762
  'pds-modal__backdrop': true,
14331
14763
  'open': this.open
14332
- }, "aria-modal": this.disableTopLayer ? 'false' : 'true', "aria-labelledby": `${this.componentId}-heading`, onClick: this.handleBackdropClick }, hAsync("div", { key: 'a9f07a30f8b4d13ef7ac33068756f0fb03173e27', class: {
14764
+ }, "aria-modal": this.disableTopLayer ? 'false' : 'true', "aria-labelledby": `${this.componentId}-heading`, onClick: this.handleBackdropClick }, hAsync("div", { key: '99a53b36e160ac14dfd6d598aeaa94114855dacc', class: {
14333
14765
  'pds-modal': true,
14334
14766
  [`pds-modal--${this.size}`]: true,
14335
14767
  'pds-modal--scrollable': this.scrollable
14336
- }, part: "modal" }, hAsync("slot", { key: '8505057bef9b4ed60e51422b05fea08cefce4a4b' }))));
14768
+ }, part: "modal" }, hAsync("slot", { key: 'cfee7bdf3620d606b1d3130f4ebed4caa83084f1' }))));
14337
14769
  }
14338
14770
  get el() { return getElement(this); }
14339
14771
  static get watchers() { return {
@@ -14352,6 +14784,7 @@ class PdsModal {
14352
14784
  "size": [1],
14353
14785
  "scrollable": [4],
14354
14786
  "disableTopLayer": [4, "disable-top-layer"],
14787
+ "disableInitialFocus": [4, "disable-initial-focus"],
14355
14788
  "focusableElementsArray": [32],
14356
14789
  "showModal": [64],
14357
14790
  "hideModal": [64]
@@ -14543,10 +14976,10 @@ class PdsModalContent {
14543
14976
  render() {
14544
14977
  // Only apply max-height style if it's not 'none'
14545
14978
  const styleObj = this.contentMaxHeight !== 'none' ? { maxHeight: this.contentMaxHeight } : {};
14546
- return (hAsync(Host, { key: '3e8e95b159205c5c8183eb7f6c60d358290e0896' }, hAsync("div", { key: '97988c0bbcbf256fc3369ccedefe854dd196ef82', class: {
14979
+ return (hAsync(Host, { key: '7bd0f26425c71e4551ae21e38d57d2124dabfc50' }, hAsync("div", { key: '120e6947e734e44883af975991781f338acd7dbc', class: {
14547
14980
  'pds-modal-content': true,
14548
14981
  [`pds-modal-content--border-${this.border}`]: true
14549
- }, style: styleObj, tabindex: "-1" }, hAsync("slot", { key: 'c76eb4759b7bf4898845b65768908c896fe64f4e' }))));
14982
+ }, style: styleObj, tabindex: "-1" }, hAsync("slot", { key: '6f2c8d44a69df8ecc1214e00604023274cee2790' }))));
14550
14983
  }
14551
14984
  get el() { return getElement(this); }
14552
14985
  static get style() { return pdsModalContentCss(); }
@@ -14574,7 +15007,7 @@ class PdsModalFooter {
14574
15007
  unwrapReconnectedContent(this.el.querySelector('.pds-modal__footer'), '.pds-modal__footer');
14575
15008
  }
14576
15009
  render() {
14577
- return (hAsync("footer", { key: '63bb557978ea69aa658026f7be24433b946b2ee6', class: "pds-modal__footer" }, hAsync("slot", { key: '158a929229b0efa8720f869756076203f297c744' })));
15010
+ return (hAsync("footer", { key: 'f344716ed1fbd77b447e10c9b78565918dc17be0', class: "pds-modal__footer" }, hAsync("slot", { key: 'ba85cf6f7f56c8f8a8ff6d24c5fa647722140fda' })));
14578
15011
  }
14579
15012
  get el() { return getElement(this); }
14580
15013
  static get style() { return pdsModalFooterCss(); }
@@ -14599,7 +15032,7 @@ class PdsModalHeader {
14599
15032
  unwrapReconnectedContent(this.el.querySelector('.pds-modal__header'), '.pds-modal__header');
14600
15033
  }
14601
15034
  render() {
14602
- return (hAsync("header", { key: 'ae4277052c04a1804e0e73f2873e636ea4cb890c', class: "pds-modal__header" }, hAsync("slot", { key: '5c4a7b463835de451c9c3f15e0ac669bf32aee23' })));
15035
+ return (hAsync("header", { key: '0490ac7854089dad4666e2a6509ae730f805f97f', class: "pds-modal__header" }, hAsync("slot", { key: 'b76e5a970d3f17411b9e9e5debd981298f2290d1' })));
14603
15036
  }
14604
15037
  get el() { return getElement(this); }
14605
15038
  static get style() { return pdsModalHeaderCss(); }
@@ -15698,10 +16131,10 @@ class PdsMultiselect {
15698
16131
  }
15699
16132
  render() {
15700
16133
  const hasSelections = this.selectedItems.length > 0;
15701
- return (hAsync(Host, { key: 'a27955b3d4a7723dc92af6f9f1a4c56da5d392c6', "aria-disabled": this.disabled ? 'true' : null }, hAsync("div", { key: '1bbea74e106b5980427610e9cbe27e2b686ded53', class: "pds-multiselect", onFocusout: this.handleContainerFocusOut }, this.label && (hAsync("label", { key: 'a1ba54ded3bf660d234ce430056d1b70058d4e47', id: `${this.componentId}-label`, htmlFor: this.componentId, class: {
16134
+ return (hAsync(Host, { key: '5d4de9ca729d5bfb63a8a73f8f40328b9ab48f57', "aria-disabled": this.disabled ? 'true' : null }, hAsync("div", { key: '2b5e1e01caaa4a6540a67e2638a20072e9f706cb', class: "pds-multiselect", onFocusout: this.handleContainerFocusOut }, this.label && (hAsync("label", { key: 'f23b840feb4e243d90b3a9913dab1b238e7c497d', id: `${this.componentId}-label`, htmlFor: this.componentId, class: {
15702
16135
  'pds-multiselect__label': true,
15703
16136
  'visually-hidden': this.hideLabel,
15704
- } }, this.label)), hAsync("div", { key: '74cd041317c59042452dd9b3e9d165cc88be5ecc', class: "pds-multiselect__wrapper", ref: el => (this.containerEl = el), style: { width: this.triggerWidth } }, this.selectedDisplay === 'pill' && this.pillPosition === 'inline' ? (hAsync("div", { ref: el => (this.pillInlineTriggerEl = el || undefined), part: "trigger", class: {
16137
+ } }, this.label)), hAsync("div", { key: '2e1f89d6f06332e957858c0eea34fca1a9629921', class: "pds-multiselect__wrapper", ref: el => (this.containerEl = el), style: { width: this.triggerWidth } }, this.selectedDisplay === 'pill' && this.pillPosition === 'inline' ? (hAsync("div", { ref: el => (this.pillInlineTriggerEl = el || undefined), part: "trigger", class: {
15705
16138
  'pds-multiselect__trigger': true,
15706
16139
  'pds-multiselect__trigger--open': this.isOpen,
15707
16140
  'pds-multiselect__trigger--disabled': this.disabled,
@@ -15717,7 +16150,7 @@ class PdsMultiselect {
15717
16150
  }, 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.helperMessage, this.errorMessage), "aria-invalid": this.invalid || !!this.errorMessage ? 'true' : undefined, onClick: this.handleTriggerClick, onKeyDown: this.handleTriggerKeyDown }, hAsync("span", { class: {
15718
16151
  'pds-multiselect__trigger-text': true,
15719
16152
  'pds-multiselect__trigger-text--placeholder': !hasSelections || (this.selectedDisplay === 'pill' && this.pillPosition === 'below'),
15720
- } }, this.getTriggerText()), hAsync("pds-icon", { class: "pds-multiselect__icon", icon: enlarge }))), this.renderDropdown()), this.selectedDisplay === 'pill' && this.pillPosition === 'below' && this.renderBelowPills(), hAsync("span", { key: '38056bbcdb0b865e9fe0b249ac3ee2c2adb089d4', class: "visually-hidden", "aria-live": "polite", "aria-atomic": "true" }, this.removalAnnouncement), this.helperMessage && !(this.errorMessage && this.errorMessage.length > 0) && (hAsync("p", { key: '7a576cc360d15e0ec38aeb4c0665a7308e7b1506', class: "pds-multiselect__helper", id: messageId(this.componentId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("p", { key: '7dadb8425fa729316867a6d9ddb49d2553d82308', class: "pds-multiselect__error", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: 'fc295c5b5110b009a1d6372411c1faf32df9b620', icon: danger, size: "small" }), this.errorMessage)), hAsync("div", { key: '173c9f6953442fdedfdfa71264bcc3781b827701', style: { display: 'none' } }, hAsync("slot", { key: 'e31cb390048516ee400d2875ad993cd6ae07b146' })))));
16153
+ } }, this.getTriggerText()), hAsync("pds-icon", { class: "pds-multiselect__icon", icon: enlarge }))), this.renderDropdown()), this.selectedDisplay === 'pill' && this.pillPosition === 'below' && this.renderBelowPills(), hAsync("span", { key: '3d2e201157ce16abbcd12fa9254ced7f2b562a8f', class: "visually-hidden", "aria-live": "polite", "aria-atomic": "true" }, this.removalAnnouncement), this.helperMessage && !(this.errorMessage && this.errorMessage.length > 0) && (hAsync("p", { key: '3bbf405df2e72ae730529f28273b003b3332e980', class: "pds-multiselect__helper", id: messageId(this.componentId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("p", { key: 'ef4a27162b00b14c3c9dfcb695f311961f2f56e5', class: "pds-multiselect__error", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: '99fb12375e2d660018276091bf8014b9bc9a672e', icon: danger, size: "small" }), this.errorMessage)), hAsync("div", { key: '8fc6369015e8d04d1dec582007733eb5db6776f5', style: { display: 'none' } }, hAsync("slot", { key: 'a808ecb0f4b2c00fca478cda5c0054c6aba29a8d' })))));
15721
16154
  }
15722
16155
  static get formAssociated() { return true; }
15723
16156
  get el() { return getElement(this); }
@@ -16361,7 +16794,7 @@ class PdsPopover {
16361
16794
  }, 16); // ~1 frame at 60fps
16362
16795
  }
16363
16796
  render() {
16364
- return (hAsync(Host, { key: 'f488756aeac4d7d1223b5ccda953aa6ea54788c0', id: this.componentId }, hAsync("span", { key: '9ac844192c4389c1e9dc8548bda70b45c14b9aed', class: "pds-popover__trigger-wrapper" }, hAsync("slot", { key: '5263c5e659fc51f912bdbf92c119dc2bb1f57d4f', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), hAsync("div", { key: '717d438131ff0bff69f11513c538bf3de5c2d1a4', class: "pds-popover__content-slot-wrapper" }, hAsync("slot", { key: '060d737af3edd0d7baf5d556867122ca217d13a2', onSlotchange: this.handleContentSlotChange }))));
16797
+ return (hAsync(Host, { key: '760428c178ed92dfc35293181b7cef8fac3b4e26', id: this.componentId }, hAsync("span", { key: 'd12a6a33dcf0fe6f3b61972ae8e5ac604263b2ac', class: "pds-popover__trigger-wrapper" }, hAsync("slot", { key: 'd975e355a3acb9bc6d95202ec177f631bddb43bf', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), hAsync("div", { key: 'f99ae2d97c75ed8ec63fbd0a859f8b7b9f78f0d2', class: "pds-popover__content-slot-wrapper" }, hAsync("slot", { key: 'd1620c57d993496045fc3c47b55cdd0c1d07b36c', onSlotchange: this.handleContentSlotChange }))));
16365
16798
  }
16366
16799
  get el() { return getElement(this); }
16367
16800
  static get style() { return pdsPopoverCss(); }
@@ -16411,7 +16844,7 @@ class PdsProgress {
16411
16844
  this.showPercent = false;
16412
16845
  }
16413
16846
  render() {
16414
- return (hAsync(Host, { key: '6cb8c8cacf41c0a51907a32cf92d15dea4b4493f', class: this.animated ? { 'is-animated': this.animated } : '' }, hAsync("div", { key: 'e5ad49e7b9328c2234350e3263595112b22b2ff7', class: "pds-progress" }, hAsync("label", { key: '30dab7a71ff8c4947e6d9d199c84a2295c7da7d6', class: "pds-progress__label", htmlFor: this.componentId }, this.label), hAsync("progress", { key: '74dec83ce7f68395cfe9c3adc4512e6ffe98a3b4', id: this.componentId, max: "100", style: this.fillColor ? { '--color-progress-fill': this.fillColor } : {}, value: this.percent })), this.showPercent && hAsync("div", { key: 'b44b9c937bc8de75cdd1c90336419b65be4fb1c0', class: "pds-progress__percentage" }, this.percent, "%")));
16847
+ return (hAsync(Host, { key: '0ae02615ceeb094270d4d385d27dc1e539984e88', class: this.animated ? { 'is-animated': this.animated } : '' }, hAsync("div", { key: '8da2f2a5b260cb19cda3021cc9289bde18fff9fc', class: "pds-progress" }, hAsync("label", { key: 'a84106244fafed602c1f14b63d83b16f123732f4', class: "pds-progress__label", htmlFor: this.componentId }, this.label), hAsync("progress", { key: '82fb1a46fb2e7c89d5b4ed4e8e3efa590c896d0d', id: this.componentId, max: "100", style: this.fillColor ? { '--color-progress-fill': this.fillColor } : {}, value: this.percent })), this.showPercent && hAsync("div", { key: '36d041d1c5e656ac0864999200f48e15e53aa3f3', class: "pds-progress__percentage" }, this.percent, "%")));
16415
16848
  }
16416
16849
  static get style() { return pdsProgressCss(); }
16417
16850
  static get cmpMeta() { return {
@@ -16445,7 +16878,7 @@ class PdsProperty {
16445
16878
  this.icon = 'star';
16446
16879
  }
16447
16880
  render() {
16448
- return (hAsync(Host, { key: 'f6ebcf8eec4bbbfe3a8717cf8c5611684d5c8929', id: this.componentId }, hAsync("pds-box", { key: '0c4b9d0154b13da6aa3ee8b04482b5591bfee46f', "align-items": "center", gap: "xs" }, hAsync("pds-icon", { key: '960c0fe6447622133f423b5547f13d7407258cbb', icon: this.icon, size: "var(--pine-dimension-sm)", "aria-hidden": "true" }), hAsync("slot", { key: '367e9265e49712d16576ba0461042e8aa2210e69' }))));
16881
+ return (hAsync(Host, { key: '1ce4509363c6c40c76d7d6c17335721b348abf04', id: this.componentId }, hAsync("pds-box", { key: '8c6f5dd171e0383640aa550ccbe1b20e74de5b07', "align-items": "center", gap: "xs" }, hAsync("pds-icon", { key: '31c19e7ff0c466f2fe54ad2d2366929311f01364', icon: this.icon, size: "var(--pine-dimension-sm)", "aria-hidden": "true" }), hAsync("slot", { key: 'b5ddb877ef6f3239992a892c7990bbd4fcfa77ae' }))));
16449
16882
  }
16450
16883
  static get style() { return pdsPropertyCss(); }
16451
16884
  static get cmpMeta() { return {
@@ -16558,11 +16991,11 @@ class PdsRadio {
16558
16991
  }
16559
16992
  render() {
16560
16993
  const renderLabelAndMessages = () => [
16561
- hAsync("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, hAsync("input", { key: '0c85ea35e55ccb8d0f8ce869f9c3fefe4a143ef7', "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, type: "radio", id: this.componentId, name: this.name, value: this.value, checked: this.checked, required: this.required, disabled: this.disabled, onChange: this.handleRadioChange, class: this.hasImage() ? 'visually-hidden' : '' }), hAsync("span", { key: '3337ad8a86dc975ab2b45e989ab6f2f4bd4af90d', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
16994
+ hAsync("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, hAsync("input", { key: 'faa2d815e03f6b05108af0e7934101b2d5f71c59', "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, type: "radio", id: this.componentId, name: this.name, value: this.value, checked: this.checked, required: this.required, disabled: this.disabled, onChange: this.handleRadioChange, class: this.hasImage() ? 'visually-hidden' : '' }), hAsync("span", { key: '22df3067667a7815e03dca45e4ef49d0e1caadcc', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
16562
16995
  this.helperMessage && (hAsync("div", { key: `${this.componentId}-helper`, class: 'pds-radio__message', id: messageId(this.componentId, 'helper') }, this.helperMessage)),
16563
- this.errorMessage && (hAsync("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: 'c5a3a39cb6ac1afbe9998e77e98e7d46c85a3687', icon: danger, size: "small" }), this.errorMessage))
16996
+ this.errorMessage && (hAsync("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: '6dac17ccd12d558d3b25ffb77c55d160a619d6ab', icon: danger, size: "small" }), this.errorMessage))
16564
16997
  ];
16565
- return (hAsync(Host, { key: 'e19f3967280820155c8cd14bafc32959f6a78c99', class: this.classNames() }, this.hasImage() && (hAsync("div", { key: 'e990c72656ba7687c43c12c774b547f469213d44', class: "pds-radio__image-container", part: "image-container" }, hAsync("slot", { key: '360e92eb7490bf79ac63ff0580dae76ab660d437', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (hAsync("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
16998
+ return (hAsync(Host, { key: 'b464057b9e8d5de710183803c7d5e825316b3c3b', class: this.classNames() }, this.hasImage() && (hAsync("div", { key: '692b2681221596cdf4bf6a21574edb2373d5127b', class: "pds-radio__image-container", part: "image-container" }, hAsync("slot", { key: 'd68951b5b671863d582ad1a98543a51832966b36', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (hAsync("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
16566
16999
  }
16567
17000
  get el() { return getElement(this); }
16568
17001
  static get style() { return labelCss$3() + pdsRadioCss(); }
@@ -16753,13 +17186,13 @@ class PdsRadioGroup {
16753
17186
  render() {
16754
17187
  const gapValue = this.getGapValue();
16755
17188
  const ariaDescribedBy = this.getAriaDescribedBy();
16756
- return (hAsync(Host, { key: 'c8e0b5e7fce3becca58c99d1d8d56bd25db8f2fb', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
17189
+ return (hAsync(Host, { key: '048d4676df7c31a9ab08e4d4fc2b93866c1241fd', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
16757
17190
  '--pds-radio-group-gap': gapValue,
16758
- } }, this.groupLabel && (hAsync("div", { key: '04d9d3154d1c34b58fb46429417b5b75da3ee96a', class: "pds-radio-group__label" }, this.groupLabel)), hAsync("div", { key: '58b1e3c7ff2ed9b2eceab6be6c0a4903919915d5', class: {
17191
+ } }, this.groupLabel && (hAsync("div", { key: '414363733d6053517bb63888fb9813af6554d4df', class: "pds-radio-group__label" }, this.groupLabel)), hAsync("div", { key: 'd368dc474bf76f5cf7d633e59f929060fbf60b83', class: {
16759
17192
  'pds-radio-group__radios': true,
16760
17193
  'pds-radio-group__radios--row': this.direction === 'row',
16761
17194
  'pds-radio-group__radios--column': this.direction === 'column',
16762
- } }, hAsync("slot", { key: '357104f35d9845b0717fa6aa896dc8bd60035b34', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (hAsync("div", { key: 'd05cc6733b4c087d59a9c8ab5e4664ab278ae020', class: "pds-radio-group__message", id: messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("div", { key: '298396cb986b169d6c0d728863cd13d8399cafbf', class: "pds-radio-group__message pds-radio-group__message--error", id: messageId(this._groupId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: 'fa820d6a8531600c889d18cdcdb93e3588a26865', icon: danger, size: "small" }), this.errorMessage))));
17195
+ } }, hAsync("slot", { key: '210e1ba8d276c2832017ea7bf3d03348aa46106a', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (hAsync("div", { key: '06015935856640afdcddfcd8833a3a0659c58698', class: "pds-radio-group__message", id: messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (hAsync("div", { key: '44256d9a050feda9651f90093a298a12d9e97250', class: "pds-radio-group__message pds-radio-group__message--error", id: messageId(this._groupId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: '2b3aa1ffaa0f6a3ad0ce83d2becfcfdcc2f56fbc', icon: danger, size: "small" }), this.errorMessage))));
16763
17196
  }
16764
17197
  get el() { return getElement(this); }
16765
17198
  static get watchers() { return {
@@ -16857,7 +17290,7 @@ class PdsRow {
16857
17290
  })), (this.minHeight && {
16858
17291
  'min-height': this.minHeight,
16859
17292
  }));
16860
- return hAsync(Host, { key: '13417071d1d3411e0bfe0de638c017ee96b1002f', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
17293
+ return hAsync(Host, { key: '556bb00908d60df442b1fae17e28e54353f85f20', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
16861
17294
  }
16862
17295
  static get style() { return pdsRowCss(); }
16863
17296
  static get cmpMeta() { return {
@@ -17117,7 +17550,7 @@ class PdsSelect {
17117
17550
  }
17118
17551
  render() {
17119
17552
  const hasAction = this.el.querySelector('[slot="action"]') !== null;
17120
- return (hAsync(Host, { key: 'a1d08dc93decbf50f95152d59ceac4ad38dd5b01', "aria-disabled": this.disabled ? 'true' : null, class: this.classNames(), "has-action": hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: '8aaeeea02f9330c013084dd525499e80ac19c463', class: "pds-select" }, !this.hideLabel && (hAsync("div", { key: 'e8a6b8885eb95b68eb7229fe6bf67da4d1be1875', class: "pds-select__label-wrapper" }, hAsync("label", { key: 'e6c6d190b14b49aa5c07a5b13e486bee4499cf60', htmlFor: this.componentId }, hAsync("span", { key: 'e703a2d392f6f6f8dead73d91eb9f1d55b8a51c1', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), hAsync("select", { key: '61573ecc714d416e4cad4e5307b9bcc4a1b7e190', "aria-describedby": assignDescription(this.componentId, this.isInvalid(), this.helperMessage, this.errorMessage), "aria-invalid": this.isInvalid() ? 'true' : undefined, "aria-label": this.hideLabel ? this.label : undefined, autocomplete: this.autocomplete || undefined, class: "pds-select__field", disabled: this.disabled, id: this.componentId, multiple: this.multiple, name: this.name, onBlur: this.onBlur, onChange: this.onSelectUpdate, onFocus: this.onFocus, onKeyDown: this.onKeyDown, part: "select", required: this.required, ref: (el) => (this.selectEl = el) }), hAsync("div", { key: 'acbd13e28aaca1cac0bcc2b9269083c50104bfc0', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, hAsync("slot", { key: '6f3f4cf1cb3cd71dcefdb149df68aea905b8b5eb', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && hAsync("pds-icon", { key: 'a3b2301d28bd6631cd33286ae3b93c67294e4cc6', "aria-hidden": "true", class: "pds-select__select-icon", icon: enlarge }))));
17553
+ return (hAsync(Host, { key: '6b240f3f91bcbdc52f019b0b6c57afda91abcbc9', "aria-disabled": this.disabled ? 'true' : null, class: this.classNames(), "has-action": hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: '5bcacb3b861b69d4b2a16b917bad3d7c356eab13', class: "pds-select" }, !this.hideLabel && (hAsync("div", { key: '4707b7b50a9e3144316f6c3e8b78767aee56553e', class: "pds-select__label-wrapper" }, hAsync("label", { key: '89992c65158f26fef606b4f613baf139e9fe17c8', htmlFor: this.componentId }, hAsync("span", { key: '8f05323646aca793a80310515b1cc6e0e8597736', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), hAsync("select", { key: '8381fe48cce4c6ec32ae2c0dd16bc3e188fbfda0', "aria-describedby": assignDescription(this.componentId, this.isInvalid(), this.helperMessage, this.errorMessage), "aria-invalid": this.isInvalid() ? 'true' : undefined, "aria-label": this.hideLabel ? this.label : undefined, autocomplete: this.autocomplete || undefined, class: "pds-select__field", disabled: this.disabled, id: this.componentId, multiple: this.multiple, name: this.name, onBlur: this.onBlur, onChange: this.onSelectUpdate, onFocus: this.onFocus, onKeyDown: this.onKeyDown, part: "select", required: this.required, ref: (el) => (this.selectEl = el) }), hAsync("div", { key: 'c05f059e3c4e21d304ac1da08613d2b2d84aa342', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, hAsync("slot", { key: 'b52f06405693803c0d2309e97f2611598cac7b70', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && hAsync("pds-icon", { key: 'e1e7af5249a928402a3c5dfe418f695b4e1fa7d4', "aria-hidden": "true", class: "pds-select__select-icon", icon: enlarge }))));
17121
17554
  }
17122
17555
  static get formAssociated() { return true; }
17123
17556
  get el() { return getElement(this); }
@@ -19864,7 +20297,7 @@ class PdsSortable {
19864
20297
  this.sortableInstance = Sortable.create(this.el, sortableOptions);
19865
20298
  }
19866
20299
  render() {
19867
- return (hAsync(Host, { key: '7c5c1c00c00f8e7122c292f83f33b0b5638a4617', class: this.classNames(), id: this.componentId }, hAsync("slot", { key: 'c418a9e41ff37672d886259c3c8a060507b2a16a' })));
20300
+ return (hAsync(Host, { key: '235879c63aa8e55ea819fd3bcdb30ef56dd2c0b3', class: this.classNames(), id: this.componentId }, hAsync("slot", { key: '28cb6ef1a3b1f7de15f1f2728ffa625c879890dc' })));
19868
20301
  }
19869
20302
  get el() { return getElement(this); }
19870
20303
  static get watchers() { return {
@@ -19930,7 +20363,7 @@ class PdsSortableItem {
19930
20363
  }
19931
20364
  }
19932
20365
  render() {
19933
- return (hAsync(Host, { key: '18cf8345abe65e492b09add621df93c9eac77d30', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (hAsync("div", { key: 'a9545fad581a44740da59ae64209da530c91fc97', class: "pds-sortable-item__handle" }, hAsync("pds-icon", { key: '4d0ecd4ec0ee6c0aa5249c060098d7748a05b910', "aria-hidden": "true", icon: handle }))), hAsync("slot", { key: 'f79fcb490cb435e578c3d6ff2ce4b8dcd4040555' }), this.enableActions && (hAsync("div", { key: 'eac4084b1bc7e6c0e1026ec9fea2b3a9e33ac618', class: "pds-sortable-item__actions" }, hAsync("slot", { key: '8f77cd2e46a7ed2d442f04747c2ef6b726912ad9', name: "sortable-item-actions" })))));
20366
+ return (hAsync(Host, { key: '07dcd36e87b8fcfae7ff5f33a7bd8d44322fcbb3', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (hAsync("div", { key: 'cb2de083316c50beb63d700288c9091d01a99240', class: "pds-sortable-item__handle" }, hAsync("pds-icon", { key: '90906fe69419f1a240aa976e7024872577d00bd3', "aria-hidden": "true", icon: handle }))), hAsync("slot", { key: 'a6969eb7d575919db12f98e3fc5d82708128be8e' }), this.enableActions && (hAsync("div", { key: '5688ea0ead3c2adba9e21a7fa327adc6fdbc71b1', class: "pds-sortable-item__actions" }, hAsync("slot", { key: 'f62b4ecf0c92edae854e9b3ca5e9da6a5051f77d', name: "sortable-item-actions" })))));
19934
20367
  }
19935
20368
  get el() { return getElement(this); }
19936
20369
  static get style() { return pdsSortableItemCss(); }
@@ -19950,7 +20383,7 @@ class PdsSortableItem {
19950
20383
 
19951
20384
  const labelCss$1 = () => `:host{display:inline-block}:host([aria-disabled=true]) label{color:var(--pine-color-text-label-disabled)}:host([aria-readonly=true]) label{color:var(--pine-color-text-label-readonly)}label{color:var(--pine-color-text-label);font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing)}`;
19952
20385
 
19953
- const pdsSwitchCss = () => `:host{--sizing-input-toggle-size:calc(var(--pine-dimension-250) - (var(--pine-dimension-025) * 2));--pine-dimension-025:2px;--spacing-message-inline:calc(var(--pine-dimension-450) + var(--pine-dimension-150));--number-transition-timing:0.15s ease-out;-ms-flex-align:start;align-items:flex-start;color:var(--pine-color-text);display:-ms-inline-flexbox;display:inline-flex;-ms-flex-flow:row wrap;flex-flow:row wrap;position:relative}:host(.pds-switch--error){color:var(--pine-color-text-message-danger)}:host(.pds-switch--error) input,:host(.pds-switch--error) input:checked,:host(.pds-switch--error) input:hover:not(:disabled):not(:checked){background-color:var(--pine-color-danger)}:host(.pds-switch--error) input:focus-visible:not(:disabled):not(:checked){outline-color:var(--pine-color-focus-ring-danger)}:host(.pds-switch--error) label{color:var(--color-text-error)}input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--pine-color-neutral);border:0;border-radius:var(--pine-dimension-sm);cursor:pointer;display:inline-block;-ms-flex-negative:0;flex-shrink:0;height:var(--pine-dimension-250);margin:0;padding:0;position:relative;-webkit-transition:var(--number-transition-timing);transition:var(--number-transition-timing);-webkit-transition-property:background, border, color;transition-property:background, border, color;width:var(--pine-dimension-450)}input::after{background:var(--pine-color-secondary);border-radius:var(--pine-border-radius-full);-webkit-box-shadow:var(--pine-box-shadow);box-shadow:var(--pine-box-shadow);content:"";display:block;height:var(--sizing-input-toggle-size);inset-block-start:50%;inset-inline-start:var(--pine-dimension-025);position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:inset-inline-start var(--number-transition-timing);transition:inset-inline-start var(--number-transition-timing);width:var(--sizing-input-toggle-size)}label{display:-ms-flexbox;display:flex;gap:var(--pine-dimension-150)}.pds-switch--error label{color:inherit}.visually-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-switch__message{color:var(--pine-color-text-message);font:var(--pine-typography-body-sm-medium);-webkit-margin-before:var(--pine-dimension-xs);margin-block-start:var(--pine-dimension-xs);-webkit-margin-start:var(--spacing-message-inline);margin-inline-start:var(--spacing-message-inline);width:100%}.pds-switch__message+.pds-switch__message{-webkit-margin-before:var(--spacing-message-inline);margin-block-start:var(--spacing-message-inline)}.pds-switch__message--error{color:inherit;display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-switch__message--error pds-icon{-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025)}input:disabled{background-color:var(--pine-color-neutral-disabled);cursor:not-allowed}input:disabled~label{cursor:initial}input:disabled:hover::after{background-color:var(--pine-color-secondary)}input:disabled .pds-switch__message{color:initial}input:hover:not(:disabled){background-color:var(--pine-color-neutral-hover)}input:focus-visible:not(:disabled){outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}input:checked::after{inset-inline-start:calc(100% - var(--sizing-input-toggle-size) - var(--pine-dimension-025))}input:checked:not(:disabled){background-color:currentColor;color:var(--pine-color-accent)}input:checked:not(:disabled):hover{border-color:currentColor;color:var(--pine-color-accent-hover)}`;
20386
+ const pdsSwitchCss = () => `:host{--sizing-input-toggle-size:calc(var(--pine-dimension-250) - (var(--pine-dimension-025) * 2));--pine-dimension-025:2px;--spacing-message-inline:calc(var(--pine-dimension-450) + var(--pine-dimension-150));--number-transition-timing:var(--pine-motion-duration-fast) ease-out;-ms-flex-align:start;align-items:flex-start;color:var(--pine-color-text);display:-ms-inline-flexbox;display:inline-flex;-ms-flex-flow:row wrap;flex-flow:row wrap;position:relative}:host(.pds-switch--error){color:var(--pine-color-text-message-danger)}:host(.pds-switch--error) input,:host(.pds-switch--error) input:checked,:host(.pds-switch--error) input:hover:not(:disabled):not(:checked){background-color:var(--pine-color-danger)}:host(.pds-switch--error) input:focus-visible:not(:disabled):not(:checked){outline-color:var(--pine-color-focus-ring-danger)}:host(.pds-switch--error) label{color:var(--color-text-error)}input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--pine-color-neutral);border:0;border-radius:var(--pine-dimension-sm);cursor:pointer;display:inline-block;-ms-flex-negative:0;flex-shrink:0;height:var(--pine-dimension-250);margin:0;padding:0;position:relative;-webkit-transition:var(--number-transition-timing);transition:var(--number-transition-timing);-webkit-transition-property:background, border, color;transition-property:background, border, color;width:var(--pine-dimension-450)}input::after{background:var(--pine-color-secondary);border-radius:var(--pine-border-radius-full);-webkit-box-shadow:var(--pine-box-shadow);box-shadow:var(--pine-box-shadow);content:"";display:block;height:var(--sizing-input-toggle-size);inset-block-start:50%;inset-inline-start:var(--pine-dimension-025);position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:inset-inline-start var(--number-transition-timing);transition:inset-inline-start var(--number-transition-timing);width:var(--sizing-input-toggle-size)}label{display:-ms-flexbox;display:flex;gap:var(--pine-dimension-150)}.pds-switch--error label{color:inherit}.visually-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-switch__message{color:var(--pine-color-text-message);font:var(--pine-typography-body-sm-medium);-webkit-margin-before:var(--pine-dimension-xs);margin-block-start:var(--pine-dimension-xs);-webkit-margin-start:var(--spacing-message-inline);margin-inline-start:var(--spacing-message-inline);width:100%}.pds-switch__message+.pds-switch__message{-webkit-margin-before:var(--spacing-message-inline);margin-block-start:var(--spacing-message-inline)}.pds-switch__message--error{color:inherit;display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-switch__message--error pds-icon{-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025)}input:disabled{background-color:var(--pine-color-neutral-disabled);cursor:not-allowed}input:disabled~label{cursor:initial}input:disabled:hover::after{background-color:var(--pine-color-secondary)}input:disabled .pds-switch__message{color:initial}input:hover:not(:disabled){background-color:var(--pine-color-neutral-hover)}input:focus-visible:not(:disabled){outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}input:checked::after{inset-inline-start:calc(100% - var(--sizing-input-toggle-size) - var(--pine-dimension-025))}input:checked:not(:disabled){background-color:currentColor;color:var(--pine-color-accent)}input:checked:not(:disabled):hover{border-color:currentColor;color:var(--pine-color-accent-hover)}`;
19954
20387
 
19955
20388
  class PdsSwitch {
19956
20389
  constructor(hostRef) {
@@ -20034,9 +20467,9 @@ class PdsSwitch {
20034
20467
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
20035
20468
  }
20036
20469
  render() {
20037
- return (hAsync(Host, { key: '3b15b1f098a56bed7f5ab95a549a0ca1cb3444b3', class: this.switchClassNames(), "aria-disabled": this.disabled ? 'true' : null }, hAsync("label", { key: 'f0a6a95ead6b8b11122c5153402fbe68e1382cb4', htmlFor: this.componentId }, hAsync("input", Object.assign({ key: '7633dce93d0983f31492cca51f238d2e321d3316', "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, checked: this.checked, class: "pds-switch__input", disabled: this.disabled, id: this.componentId, name: this.name ? this.name : this.componentId, onChange: this.onSwitchUpdate, required: this.required, type: "checkbox", value: this.value }, this.inheritedAttributes)), hAsync("span", { key: '3b0b1a38d4a0cee505bd0f1c7383af259e2da2b0', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), this.helperMessage &&
20038
- hAsync("div", { key: 'e6770c0fed9f7a8a626e91cd8aa84b8623bd4b32', class: `pds-switch__message`, id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
20039
- hAsync("div", { key: '88cb91dc6cf056b0af35a1821c839166217a9eb4', class: `pds-switch__message pds-switch__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: '6faf4e7b7e13193c147769d9308fb4d23425aa9c', icon: danger, size: "small" }), this.errorMessage)));
20470
+ return (hAsync(Host, { key: '0f7a97cc04485d5ead92f1d9e1deff176bef7859', class: this.switchClassNames(), "aria-disabled": this.disabled ? 'true' : null }, hAsync("label", { key: 'bb8d0849e8ac5fd63d83f30d892bb195c7ed984c', htmlFor: this.componentId }, hAsync("input", Object.assign({ key: 'd4f1c469ed61e5511fb4fef2b587b7320b7b8d10', "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, checked: this.checked, class: "pds-switch__input", disabled: this.disabled, id: this.componentId, name: this.name ? this.name : this.componentId, onChange: this.onSwitchUpdate, required: this.required, type: "checkbox", value: this.value }, this.inheritedAttributes)), hAsync("span", { key: 'a902c71c77d143e5930f18ab3f37d3442d9190e3', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), this.helperMessage &&
20471
+ hAsync("div", { key: '3802a9cc1068caa4955634be3c728f283dedab16', class: `pds-switch__message`, id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
20472
+ hAsync("div", { key: 'be0d4094af7f9c59be32faf42aed585ec92fd730', class: `pds-switch__message pds-switch__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, hAsync("pds-icon", { key: 'f0f342b703fc5db7a4b03891ed5101e0ebcde47e', icon: danger, size: "small" }), this.errorMessage)));
20040
20473
  }
20041
20474
  static get formAssociated() { return true; }
20042
20475
  get el() { return getElement(this); }
@@ -20446,7 +20879,7 @@ class PdsTableBody {
20446
20879
  registerInstance(this, hostRef);
20447
20880
  }
20448
20881
  render() {
20449
- return (hAsync(Host, { key: 'bd4c84fdefd61afbd4138488b04419d62021c1ad', role: "rowgroup", part: "body" }, hAsync("slot", { key: 'a16c0cfc807969c005b743293144e4f7470fe851' })));
20882
+ return (hAsync(Host, { key: '38b6b6121a4652e5b98f2ff22721e687ae401437', role: "rowgroup", part: "body" }, hAsync("slot", { key: '7ce84ac64307b9e19a8b4b72efe3e8eab34f99bf' })));
20450
20883
  }
20451
20884
  static get style() { return pdsTableBodyCss(); }
20452
20885
  static get cmpMeta() { return {
@@ -20584,11 +21017,11 @@ class PdsTableCell {
20584
21017
  return classNames.join(' ');
20585
21018
  }
20586
21019
  render() {
20587
- return (hAsync(Host, { key: '1b20d85c75e5ca772f1c6fb402d06ef0f6b170a7', class: this.classNames(), role: "gridcell", part: "cell", tabIndex: this.truncate ? 0 : undefined, style: this.tableRef &&
21020
+ return (hAsync(Host, { key: '1c37f341c8171d322d60647b25bfa92fdd9ea339', class: this.classNames(), role: "gridcell", part: "cell", style: this.tableRef &&
20588
21021
  this.tableRef.fixedColumn &&
20589
21022
  this.tableRef.selectable
20590
21023
  ? { '--fixed-cell-position': '40px' }
20591
- : {} }, hAsync("slot", { key: '3d1dc98bc9e3dead532af0c5c79305eaedee62be' })));
21024
+ : {} }, hAsync("slot", { key: '339b2217df131c58d76258f581a53c0bd46cbd03' })));
20592
21025
  }
20593
21026
  get hostElement() { return getElement(this); }
20594
21027
  static get watchers() { return {
@@ -20665,7 +21098,7 @@ class PdsTableHead {
20665
21098
  }
20666
21099
  }
20667
21100
  render() {
20668
- return (hAsync(Host, { key: '972440cfae0388fb28018929bcf79330cfc5f4d5', role: "row", part: "head" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-head-cell", { key: '13080928a925352bd35318bb5871d2ad3041d616', part: this.tableRef.selectable ? 'checkbox-cell' : '' }, !this.tableRef.disableSelectAll && (hAsync("pds-checkbox", { key: '57e7872a8620a2a7a295f2bc5354bfbe75541eba', 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: 'e1d459755b5db56bbbbbaf69f40ed994d1604b83' })));
21101
+ return (hAsync(Host, { key: '5815389e77b61a323dd4430625b0917a7428bf02', role: "row", part: "head" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-head-cell", { key: '161fdced5a7c7cd13a62fb7c1ed96e82ad2dbfd0', part: this.tableRef.selectable ? 'checkbox-cell' : '' }, !this.tableRef.disableSelectAll && (hAsync("pds-checkbox", { key: 'd6e90d844d314ef347ffb4db8b360ba36887c311', 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: '1dd5dd37d4fca230000a6eb4b96fee87e4e67802' })));
20669
21102
  }
20670
21103
  get hostElement() { return getElement(this); }
20671
21104
  static get style() { return pdsTableHeadCss(); }
@@ -20886,11 +21319,11 @@ class PdsTableHeadCell {
20886
21319
  return classNames.join(' ');
20887
21320
  }
20888
21321
  render() {
20889
- return (hAsync(Host, { key: 'a9862d24c53e7db944724d5bc351935ae7aea5b3', class: this.classNames(), role: "columnheader", onClick: this.toggleSort, part: "head-cell", style: this.tableRef &&
21322
+ return (hAsync(Host, { key: 'c30192a432bbd8868326fc7ed4199b98a33991ff', class: this.classNames(), role: "columnheader", onClick: this.toggleSort, part: "head-cell", style: this.tableRef &&
20890
21323
  this.tableRef.fixedColumn &&
20891
21324
  this.tableRef.selectable
20892
21325
  ? { '--fixed-cell-position': '40px' }
20893
- : {} }, hAsync("slot", { key: '2a78068e2a35f0c7c608535784dafc1401727ecc' }), this.sortable && this.isActive && (hAsync("pds-icon", { key: '7d4c28385f00450326b8796666dc81230ccb4f54', icon: this.sortingDirection === 'asc' ? upSmall : downSmall, part: "sort-icon" }))));
21326
+ : {} }, hAsync("slot", { key: 'e725a7e576f6bc56d385c8cb0822ce255544fbcb' }), this.sortable && this.isActive && (hAsync("pds-icon", { key: '52068d114bfadcd6d4e02c86e703349bc7833716', icon: this.sortingDirection === 'asc' ? upSmall : downSmall, part: "sort-icon" }))));
20894
21327
  }
20895
21328
  get hostElement() { return getElement(this); }
20896
21329
  static get style() { return pdsTableHeadCellCss(); }
@@ -21056,7 +21489,7 @@ class PdsTableRow {
21056
21489
  }
21057
21490
  }
21058
21491
  render() {
21059
- return (hAsync(Host, { key: '570628eae542c3962db9b2a81615cbc9d6b7bb3c', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-cell", { key: '78fd4b1a2823759c0c113aa9a78ccaa0e859989d', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, hAsync("pds-checkbox", { key: '953debb5b0537543185e0feb7c38947818964a96', componentId: this.generateUniqueId(), onPdsCheckboxChange: this.handleCheckboxChange, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), hAsync("slot", { key: '357ace6cfc64552a6cd26c66801e131f9d5d1bed' })));
21492
+ return (hAsync(Host, { key: '4188f670137051d35cf73a5ca86566f65c3eca09', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (hAsync("pds-table-cell", { key: '122ff6ec96ea4857b863f9283bd46946dc403bff', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, hAsync("pds-checkbox", { key: '9997b31c86190fe8f25ba4d1b42b8753facbba70', componentId: this.generateUniqueId(), onPdsCheckboxChange: this.handleCheckboxChange, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), hAsync("slot", { key: 'f9bc0700386b11a35f78d639118351675ab7150d' })));
21060
21493
  }
21061
21494
  get hostElement() { return getElement(this); }
21062
21495
  static get style() { return pdsTableRowCss(); }
@@ -21096,7 +21529,7 @@ class PdsTabpanel {
21096
21529
  unwrapReconnectedContent(this.el.querySelector('.pds-tabpanel'), '.pds-tabpanel');
21097
21530
  }
21098
21531
  render() {
21099
- return (hAsync(Host, { key: 'be561d592a9c7d2458987bcc09fe5d8d253bd2ba', slot: "tabpanels", class: this.stretch && this.selected ? "pds-tabpanel--stretch-active" : undefined }, hAsync("div", { key: '98cb5eda73378d95519de8ce24c60f9263e89add', role: "tabpanel", id: this.parentComponentId + "__" + this.name + '-panel', tabindex: "0", "aria-labelledby": this.parentComponentId + "__" + this.name, class: this.selected ? "pds-tabpanel is-active" : "pds-tabpanel" }, hAsync("slot", { key: '27b707d8fae77685f0cea7b0dc8c8dbcdb808f65' }))));
21532
+ return (hAsync(Host, { key: 'e1dd3a854d6ceffff0688afb7ed02f3d56ae9333', slot: "tabpanels", class: this.stretch && this.selected ? "pds-tabpanel--stretch-active" : undefined }, hAsync("div", { key: '381a763bc540659c8944ff48ccc1a41ad94dc087', role: "tabpanel", id: this.parentComponentId + "__" + this.name + '-panel', tabindex: "0", "aria-labelledby": this.parentComponentId + "__" + this.name, class: this.selected ? "pds-tabpanel is-active" : "pds-tabpanel" }, hAsync("slot", { key: 'bdb11c6e68f701cf91fda68db5122bb9dfe7d894' }))));
21100
21533
  }
21101
21534
  get el() { return getElement(this); }
21102
21535
  static get style() { return pdsTabpanelCss(); }
@@ -21280,7 +21713,7 @@ class PdsTabs {
21280
21713
  // Navigation mode: a <nav> landmark of links (aria-current marks the current
21281
21714
  // page). Panel mode: the ARIA tablist of role=tab buttons over tabpanels.
21282
21715
  const tabList = this.isNav ? (hAsync("nav", { class: "pds-tabs__tablist", "aria-label": this.tablistLabel || undefined, part: "tab-list" }, hAsync("slot", { name: "tabs" }))) : (hAsync("div", { class: "pds-tabs__tablist", role: "tablist", "aria-label": this.tablistLabel, part: "tab-list" }, hAsync("slot", { name: "tabs" })));
21283
- return (hAsync(Host, { key: '43be427fec88d758d9caa2200320a0a327ac9e4d', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, tabList, hAsync("slot", { key: 'e4b1db5920dc0264811f08706406fd45c48106f9', name: "tabpanels" })));
21716
+ return (hAsync(Host, { key: 'f9d0e94dcacd7b94691368f08eb77b45475c0a35', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, tabList, hAsync("slot", { key: '93c605b2bd4b8ad3dcd8f494a82fd30833e8b300', name: "tabpanels" })));
21284
21717
  }
21285
21718
  get el() { return getElement(this); }
21286
21719
  static get style() { return pdsTabsCss(); }
@@ -21406,7 +21839,7 @@ class PdsText {
21406
21839
  ? `pds-text--decoration-${this.decoration}`
21407
21840
  : ''}
21408
21841
  `;
21409
- return (hAsync(Tag, { key: 'deef66327ac6089ba6b32d80d41c0be60b5ee768', ref: (el) => (this.contentEl = el), style: this.color && setColor(this.color), class: typeClasses, part: "content", tabIndex: this.truncate ? 0 : undefined }, hAsync("slot", { key: 'b58f1d01a19f2da255abaed9c0e3e2d8fea30019' })));
21842
+ return (hAsync(Tag, { key: 'cf597479ded618a0674d68fd726b828d88c0e642', ref: (el) => (this.contentEl = el), style: this.color && setColor(this.color), class: typeClasses, part: "content" }, hAsync("slot", { key: 'f9c163be5662522b012bca6b0a23cfe00860e474' })));
21410
21843
  }
21411
21844
  get el() { return getElement(this); }
21412
21845
  static get watchers() { return {
@@ -21747,10 +22180,10 @@ class PdsTextarea {
21747
22180
  }
21748
22181
  render() {
21749
22182
  const value = this.getValue();
21750
- return (hAsync(Host, { key: '07e82bbbcc38d04c540b8576fadb366797c9bae3', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: 'fd9f64b75ff5ab4e7a1ec40fbb9f5288efee80b3', class: "pds-textarea" }, this.label &&
21751
- hAsync("div", { key: 'a1004e2af8d34ab2a43d2f97efeffac5e61bc8d6', class: "pds-textarea__label-wrapper" }, hAsync("label", { key: 'cb1bb601f4e2f085bdabd1fe4f4706b1cc9b3d1e', htmlFor: this.componentId }, hAsync("span", { key: '350b9c9b9ea1774a48721cc316df8ebb4aaa4764', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), !this.hideLabel && this.renderAction()), hAsync("div", { key: '3e471b7a666640e042fb8051a0759c8cab3440db', class: "pds-textarea__field-wrapper" }, hAsync("textarea", Object.assign({ key: 'ccab2538b28689d3c0a78b541b4c9cff70b98396', ref: (el) => this.nativeTextarea = el, "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, class: this.textareaClassNames(), disabled: this.disabled, id: this.componentId, maxlength: this.maxLength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, rows: this.rows, onBlur: this.onBlur, onChange: this.onTextareaChange, onFocus: this.onFocus, onInput: this.onInput, onKeyDown: this.onKeyDown }, this.inheritedAttributes), value), this.renderCharacterCounter()), this.helperMessage &&
21752
- hAsync("p", { key: '2e50b8cbab077ab6c9149d2c5b5fbb4c6de067c4', class: "pds-textarea__helper-message", id: messageId(this.componentId, 'helper') }, this.helperMessage), this.invalid &&
21753
- hAsync("p", { key: '58fbf2e03ec60524a9c4830dc5adc9d816d7d100', "aria-live": "assertive", class: "pds-textarea__error-message", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: '144b6e6133d9970c4969f27d1e719216a416991f', icon: danger, size: "small" }), this.errorMessage))));
22183
+ return (hAsync(Host, { key: '838d12ba686fb041996c44522d3fd30e1b56c610', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: 'bd3eef138a5c8f2cd4e48c007561bb1b12f4e575', class: "pds-textarea" }, this.label &&
22184
+ hAsync("div", { key: 'f83f23b17cd157d48bb5c0c5067ca5f611d73529', class: "pds-textarea__label-wrapper" }, hAsync("label", { key: '896b7b495ad6f7deb8d4738e623f0676f0a98c1f', htmlFor: this.componentId }, hAsync("span", { key: '02b06db969467f6c4e83e0f713bee0be76f8dfff', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), !this.hideLabel && this.renderAction()), hAsync("div", { key: '15c5964576e73db36cee4a9ca868c28571250a27', class: "pds-textarea__field-wrapper" }, hAsync("textarea", Object.assign({ key: '4493797e03322993a8cbe5530a18a9ef984b9796', ref: (el) => this.nativeTextarea = el, "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage, this.errorMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, class: this.textareaClassNames(), disabled: this.disabled, id: this.componentId, maxlength: this.maxLength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, rows: this.rows, onBlur: this.onBlur, onChange: this.onTextareaChange, onFocus: this.onFocus, onInput: this.onInput, onKeyDown: this.onKeyDown }, this.inheritedAttributes), value), this.renderCharacterCounter()), this.helperMessage &&
22185
+ hAsync("p", { key: '9c8794ec733a3ece5eaeac74ef6a1ebb223558c3', class: "pds-textarea__helper-message", id: messageId(this.componentId, 'helper') }, this.helperMessage), this.invalid &&
22186
+ hAsync("p", { key: 'c4b9be66c3f3c39ddf495708f0f03cfda03e7fc6', "aria-live": "assertive", class: "pds-textarea__error-message", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: 'c117b8d62c055382f5d43caa7f2cb880796c495b', icon: danger, size: "small" }), this.errorMessage))));
21754
22187
  }
21755
22188
  static get formAssociated() { return true; }
21756
22189
  get el() { return getElement(this); }
@@ -21924,13 +22357,13 @@ class PdsToast {
21924
22357
  return this.icon && hAsync("pds-icon", { name: this.icon, class: "pds-toast__icon" });
21925
22358
  }
21926
22359
  render() {
21927
- return (hAsync(Host, { key: 'aa1d20ad8b511950338a16cd9277f33a6438bfe5', hidden: !this.isVisible }, hAsync("div", { key: 'b19ddfcdec17bd3339cf6b283cca475ad8dda75b', class: {
22360
+ return (hAsync(Host, { key: 'a1ec97158a6665aa25b58b1954b4b5c622590615', hidden: !this.isVisible }, hAsync("div", { key: 'd9b01164364c76512852a260cede50000b73a563', class: {
21928
22361
  'pds-toast': true,
21929
22362
  [`pds-toast--${this.type}`]: this.type !== 'default',
21930
22363
  'pds-toast--animating-out': this.isAnimatingOut
21931
- }, role: "alert", "aria-live": "polite" }, this.renderIcon(), hAsync("span", { key: '8f4553ac467032c6e398e1665b41d78eedc56e30', class: "pds-toast__message" }, hAsync("slot", { key: '0a04edffd081298f6cd7f6feb3f50e89276d4e09' })), this.dismissible && (hAsync("button", { key: 'b42a2ab16a011b42e278e77fa4c0698eea3950e0', type: "button", part: "dismiss", class: "pds-toast__button", onClick: () => {
22364
+ }, role: "alert", "aria-live": "polite" }, this.renderIcon(), hAsync("span", { key: '1f581c7c29ea3fc795dfca061d3575c5a9895b3c', class: "pds-toast__message" }, hAsync("slot", { key: '645b31eae3be23de63ab2562234caf0be2510645' })), this.dismissible && (hAsync("button", { key: '44a62b304468c0fca0b8d490ad9c8b5932176ac9', type: "button", part: "dismiss", class: "pds-toast__button", onClick: () => {
21932
22365
  this.dismiss();
21933
- }, "aria-label": this.dismissLabel }, hAsync("pds-icon", { key: 'e5ea3485a7d943ba3be144506eecb9a25b55b07d', name: "remove" }))))));
22366
+ }, "aria-label": this.dismissLabel }, hAsync("pds-icon", { key: 'fde63f279f696d9f02875cc1beee3542c97f0c7e', name: "remove" }))))));
21934
22367
  }
21935
22368
  get el() { return getElement(this); }
21936
22369
  static get watchers() { return {
@@ -22304,9 +22737,9 @@ class PdsTooltip {
22304
22737
  }
22305
22738
  render() {
22306
22739
  const hostId = this.componentId || undefined;
22307
- return (hAsync(Host, { key: 'd9fa5c688ba3baeac14334ec9c03e887ef16115e', id: hostId, class: { 'pds-tooltip--is-open': this.opened } }, hAsync("span", { key: '44ee5332139567d3f25070f73c1e73630f00eec4', class: "pds-tooltip__trigger", onMouseEnter: this.handleShow, onMouseLeave: this.handleHide,
22740
+ return (hAsync(Host, { key: 'a4f25d10de27757ab2551af0e5b8a53336bf8cb4', id: hostId, class: { 'pds-tooltip--is-open': this.opened } }, hAsync("span", { key: '5e9f9afbecbb335ad68b02edf999d2ec62f31a8e', class: "pds-tooltip__trigger", onMouseEnter: this.handleShow, onMouseLeave: this.handleHide,
22308
22741
  /* focusin/out bubble; ensure keyboard users see tooltips */
22309
- onFocusin: this.handleShow, onFocusout: this.handleHide, ref: el => this.triggerEl = el }, hAsync("slot", { key: '4eb9c2f891c8cdb9d7f9d944d99bf423908cbc0f' })), hAsync("div", { key: '985b373be21f07c14cd5c8c3095d5e8d290d3e7f', class: "pds-tooltip__content-slot-wrapper", hidden: true }, hAsync("slot", { key: 'cd8d6c2dca87b7d72fd01f51e5b1d538c2d93531', name: "content" }))));
22742
+ onFocusin: this.handleShow, onFocusout: this.handleHide, ref: el => this.triggerEl = el }, hAsync("slot", { key: 'e142f4f09406b7bd3d1ce9005f624b91cf7ec176' })), hAsync("div", { key: 'ebe0faae0af623477486dbba56c24bc3e0a6bc66', class: "pds-tooltip__content-slot-wrapper", hidden: true }, hAsync("slot", { key: '833d31509ba48f10cd0b5eb2f5e8dc509854c25e', name: "content" }))));
22310
22743
  }
22311
22744
  get el() { return getElement(this); }
22312
22745
  static get watchers() { return {
@@ -22350,6 +22783,10 @@ registerComponents([
22350
22783
  PdsContainer,
22351
22784
  PdsCopytext,
22352
22785
  PdsDivider,
22786
+ PdsDrawer,
22787
+ PdsDrawerContent,
22788
+ PdsDrawerFooter,
22789
+ PdsDrawerHeader,
22353
22790
  PdsDropdownMenu,
22354
22791
  PdsDropdownMenuItem,
22355
22792
  PdsDropdownMenuSeparator,