@pine-ds/core 4.4.3 → 4.5.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 (541) hide show
  1. package/components/attributes.js +1 -1
  2. package/components/closest.js +1 -1
  3. package/components/index.js +1 -1
  4. package/components/pds-avatar.js +1 -1
  5. package/components/pds-box2.js +1 -1
  6. package/components/pds-checkbox2.js +1 -1
  7. package/components/pds-chip2.js +1 -1
  8. package/components/pds-combobox.js +2 -2
  9. package/components/pds-copytext.js +1 -1
  10. package/components/pds-datepicker.js +1 -1
  11. package/components/pds-drawer-content.js +1 -1
  12. package/components/pds-drawer-footer.js +1 -1
  13. package/components/pds-drawer-header.js +1 -1
  14. package/components/pds-drawer.js +1 -1
  15. package/components/pds-dropdown-menu.js +1 -1
  16. package/components/pds-loader2.js +1 -1
  17. package/components/pds-modal-content.js +1 -1
  18. package/components/pds-modal-footer.js +1 -1
  19. package/components/pds-modal-header.js +1 -1
  20. package/components/pds-modal2.js +1 -1
  21. package/components/pds-popover.js +1 -1
  22. package/components/pds-progress.js +1 -1
  23. package/components/pds-radio-group.js +1 -1
  24. package/components/pds-radio.js +1 -1
  25. package/components/pds-row.js +1 -1
  26. package/components/pds-select.js +1 -1
  27. package/components/pds-sortable-item.js +1 -1
  28. package/components/pds-sortable.js +2 -2
  29. package/components/pds-switch.js +1 -1
  30. package/components/pds-table-head.js +1 -1
  31. package/components/pds-table-row.js +1 -1
  32. package/components/pds-tabpanel.js +1 -1
  33. package/components/pds-tabs.js +1 -1
  34. package/components/pds-tooltip.js +1 -1
  35. package/components/reflected-attribute-default.js +1 -0
  36. package/dist/cjs/attributes-DXvaSETR.js +178 -0
  37. package/dist/cjs/{index-D8Gl0bIB.js → index-BQjWfQXw.js} +10 -1
  38. package/dist/cjs/index.cjs.js +3 -0
  39. package/dist/cjs/keep-hydrated-iLS88j1Z.js +67 -0
  40. package/dist/cjs/loader.cjs.js +3 -2
  41. package/dist/cjs/mock-pds-modal.cjs.entry.js +2 -1
  42. package/dist/cjs/pds-accordion.cjs.entry.js +2 -1
  43. package/dist/cjs/pds-alert.cjs.entry.js +2 -1
  44. package/dist/cjs/pds-avatar.cjs.entry.js +19 -2
  45. package/dist/cjs/pds-box.cjs.entry.js +13 -2
  46. package/dist/cjs/pds-button.cjs.entry.js +2 -1
  47. package/dist/cjs/pds-checkbox.cjs.entry.js +13 -5
  48. package/dist/cjs/pds-chip.cjs.entry.js +12 -2
  49. package/dist/cjs/pds-combobox.cjs.entry.js +13 -7
  50. package/dist/cjs/pds-container.cjs.entry.js +2 -1
  51. package/dist/cjs/pds-copytext.cjs.entry.js +18 -2
  52. package/dist/cjs/pds-datepicker.cjs.entry.js +3 -2
  53. package/dist/cjs/pds-divider.cjs.entry.js +2 -1
  54. package/dist/cjs/pds-drawer-content.cjs.entry.js +3 -2
  55. package/dist/cjs/pds-drawer-footer.cjs.entry.js +3 -2
  56. package/dist/cjs/pds-drawer-header.cjs.entry.js +3 -2
  57. package/dist/cjs/pds-drawer.cjs.entry.js +4 -3
  58. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +2 -1
  59. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +2 -1
  60. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +41 -10
  61. package/dist/cjs/pds-filter.cjs.entry.js +2 -1
  62. package/dist/cjs/pds-filters.cjs.entry.js +2 -1
  63. package/dist/cjs/pds-icon.cjs.entry.js +2 -1
  64. package/dist/cjs/pds-image.cjs.entry.js +2 -1
  65. package/dist/cjs/pds-input.cjs.entry.js +3 -2
  66. package/dist/cjs/pds-link.cjs.entry.js +2 -1
  67. package/dist/cjs/pds-loader.cjs.entry.js +29 -2
  68. package/dist/cjs/pds-modal-content.cjs.entry.js +4 -3
  69. package/dist/cjs/pds-modal-footer.cjs.entry.js +3 -2
  70. package/dist/cjs/pds-modal-header.cjs.entry.js +3 -2
  71. package/dist/cjs/pds-modal.cjs.entry.js +137 -50
  72. package/dist/cjs/pds-multiselect.cjs.entry.js +2 -1
  73. package/dist/cjs/pds-popover.cjs.entry.js +83 -14
  74. package/dist/cjs/pds-progress.cjs.entry.js +14 -2
  75. package/dist/cjs/pds-property.cjs.entry.js +2 -1
  76. package/dist/cjs/pds-radio-group.cjs.entry.js +5 -4
  77. package/dist/cjs/pds-radio.cjs.entry.js +13 -4
  78. package/dist/cjs/pds-row.cjs.entry.js +13 -2
  79. package/dist/cjs/pds-select.cjs.entry.js +15 -2
  80. package/dist/cjs/pds-sortable-item.cjs.entry.js +12 -2
  81. package/dist/cjs/pds-sortable.cjs.entry.js +13 -2
  82. package/dist/cjs/pds-switch.cjs.entry.js +14 -5
  83. package/dist/cjs/pds-tab.cjs.entry.js +2 -1
  84. package/dist/cjs/pds-table-body.cjs.entry.js +2 -1
  85. package/dist/cjs/pds-table-cell.cjs.entry.js +2 -1
  86. package/dist/cjs/pds-table-head-cell.cjs.entry.js +2 -1
  87. package/dist/cjs/pds-table-head.cjs.entry.js +2 -1
  88. package/dist/cjs/pds-table-row.cjs.entry.js +2 -1
  89. package/dist/cjs/pds-table.cjs.entry.js +2 -1
  90. package/dist/cjs/pds-tabpanel.cjs.entry.js +3 -2
  91. package/dist/cjs/pds-tabs.cjs.entry.js +15 -2
  92. package/dist/cjs/pds-text.cjs.entry.js +2 -1
  93. package/dist/cjs/pds-textarea.cjs.entry.js +3 -2
  94. package/dist/cjs/pds-toast.cjs.entry.js +2 -1
  95. package/dist/cjs/pds-tooltip.cjs.entry.js +4 -3
  96. package/dist/cjs/pine-core.cjs.js +3 -2
  97. package/dist/cjs/reflected-attribute-default-DVYHG6O1.js +44 -0
  98. package/dist/collection/collection-manifest.json +2 -1
  99. package/dist/collection/components/pds-avatar/pds-avatar.js +20 -3
  100. package/dist/collection/components/pds-box/pds-box.js +14 -1
  101. package/dist/collection/components/pds-checkbox/pds-checkbox.js +11 -4
  102. package/dist/collection/components/pds-chip/pds-chip.js +10 -1
  103. package/dist/collection/components/pds-combobox/pds-combobox.css +14 -2
  104. package/dist/collection/components/pds-combobox/pds-combobox.js +33 -5
  105. package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +41 -0
  106. package/dist/collection/components/pds-copytext/pds-copytext.js +17 -2
  107. package/dist/collection/components/pds-datepicker/pds-datepicker.css +4 -2
  108. package/dist/collection/components/pds-drawer/pds-drawer-content/pds-drawer-content.js +2 -1
  109. package/dist/collection/components/pds-drawer/pds-drawer-footer/pds-drawer-footer.js +4 -1
  110. package/dist/collection/components/pds-drawer/pds-drawer-header/pds-drawer-header.js +4 -1
  111. package/dist/collection/components/pds-drawer/pds-drawer.js +3 -2
  112. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.js +39 -9
  113. package/dist/collection/components/pds-loader/pds-loader.js +29 -2
  114. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js +5 -2
  115. package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js +4 -1
  116. package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js +4 -1
  117. package/dist/collection/components/pds-modal/pds-modal.js +138 -49
  118. package/dist/collection/components/pds-popover/pds-popover.js +83 -14
  119. package/dist/collection/components/pds-progress/pds-progress.js +12 -1
  120. package/dist/collection/components/pds-radio/pds-radio.js +12 -3
  121. package/dist/collection/components/pds-radio-group/pds-radio-group.js +4 -3
  122. package/dist/collection/components/pds-row/pds-row.js +14 -1
  123. package/dist/collection/components/pds-select/pds-select.js +13 -1
  124. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +11 -1
  125. package/dist/collection/components/pds-sortable/pds-sortable.js +14 -1
  126. package/dist/collection/components/pds-switch/pds-switch.js +12 -4
  127. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -0
  128. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +4 -1
  129. package/dist/collection/components/pds-tabs/pds-tabs.js +13 -1
  130. package/dist/collection/components/pds-tooltip/pds-tooltip.js +3 -2
  131. package/dist/collection/global/pine-global.js +6 -0
  132. package/dist/collection/index.js +1 -0
  133. package/dist/collection/utils/attributes.js +90 -0
  134. package/dist/collection/utils/keep-hydrated.js +61 -0
  135. package/dist/collection/utils/reflected-attribute-default.js +40 -0
  136. package/dist/collection/utils/test/host-strip.js +50 -0
  137. package/dist/docs.json +129 -19
  138. package/dist/esm/attributes-CF5K2pxn.js +173 -0
  139. package/dist/esm/{index-bLhIfh0N.js → index-2HMD-zUO.js} +10 -1
  140. package/dist/esm/index.js +2 -0
  141. package/dist/esm/keep-hydrated-Dv7ssOTc.js +63 -0
  142. package/dist/esm/loader.js +4 -3
  143. package/dist/esm/mock-pds-modal.entry.js +2 -1
  144. package/dist/esm/pds-accordion.entry.js +2 -1
  145. package/dist/esm/pds-alert.entry.js +2 -1
  146. package/dist/esm/pds-avatar.entry.js +19 -2
  147. package/dist/esm/pds-box.entry.js +13 -2
  148. package/dist/esm/pds-button.entry.js +2 -1
  149. package/dist/esm/pds-checkbox.entry.js +13 -5
  150. package/dist/esm/pds-chip.entry.js +12 -2
  151. package/dist/esm/pds-combobox.entry.js +13 -7
  152. package/dist/esm/pds-container.entry.js +2 -1
  153. package/dist/esm/pds-copytext.entry.js +18 -2
  154. package/dist/esm/pds-datepicker.entry.js +3 -2
  155. package/dist/esm/pds-divider.entry.js +2 -1
  156. package/dist/esm/pds-drawer-content.entry.js +3 -2
  157. package/dist/esm/pds-drawer-footer.entry.js +3 -2
  158. package/dist/esm/pds-drawer-header.entry.js +3 -2
  159. package/dist/esm/pds-drawer.entry.js +4 -3
  160. package/dist/esm/pds-dropdown-menu-item.entry.js +2 -1
  161. package/dist/esm/pds-dropdown-menu-separator.entry.js +2 -1
  162. package/dist/esm/pds-dropdown-menu.entry.js +41 -10
  163. package/dist/esm/pds-filter.entry.js +2 -1
  164. package/dist/esm/pds-filters.entry.js +2 -1
  165. package/dist/esm/pds-icon.entry.js +2 -1
  166. package/dist/esm/pds-image.entry.js +2 -1
  167. package/dist/esm/pds-input.entry.js +3 -2
  168. package/dist/esm/pds-link.entry.js +2 -1
  169. package/dist/esm/pds-loader.entry.js +29 -2
  170. package/dist/esm/pds-modal-content.entry.js +4 -3
  171. package/dist/esm/pds-modal-footer.entry.js +3 -2
  172. package/dist/esm/pds-modal-header.entry.js +3 -2
  173. package/dist/esm/pds-modal.entry.js +137 -50
  174. package/dist/esm/pds-multiselect.entry.js +2 -1
  175. package/dist/esm/pds-popover.entry.js +83 -14
  176. package/dist/esm/pds-progress.entry.js +14 -2
  177. package/dist/esm/pds-property.entry.js +2 -1
  178. package/dist/esm/pds-radio-group.entry.js +5 -4
  179. package/dist/esm/pds-radio.entry.js +13 -4
  180. package/dist/esm/pds-row.entry.js +13 -2
  181. package/dist/esm/pds-select.entry.js +15 -2
  182. package/dist/esm/pds-sortable-item.entry.js +12 -2
  183. package/dist/esm/pds-sortable.entry.js +13 -2
  184. package/dist/esm/pds-switch.entry.js +14 -5
  185. package/dist/esm/pds-tab.entry.js +2 -1
  186. package/dist/esm/pds-table-body.entry.js +2 -1
  187. package/dist/esm/pds-table-cell.entry.js +2 -1
  188. package/dist/esm/pds-table-head-cell.entry.js +2 -1
  189. package/dist/esm/pds-table-head.entry.js +2 -1
  190. package/dist/esm/pds-table-row.entry.js +2 -1
  191. package/dist/esm/pds-table.entry.js +2 -1
  192. package/dist/esm/pds-tabpanel.entry.js +3 -2
  193. package/dist/esm/pds-tabs.entry.js +15 -2
  194. package/dist/esm/pds-text.entry.js +2 -1
  195. package/dist/esm/pds-textarea.entry.js +3 -2
  196. package/dist/esm/pds-toast.entry.js +2 -1
  197. package/dist/esm/pds-tooltip.entry.js +4 -3
  198. package/dist/esm/pine-core.js +4 -3
  199. package/dist/esm/reflected-attribute-default-t3idJwV0.js +42 -0
  200. package/dist/esm-es5/attributes-CF5K2pxn.js +1 -0
  201. package/dist/esm-es5/{index-bLhIfh0N.js → index-2HMD-zUO.js} +2 -2
  202. package/dist/esm-es5/index.js +1 -1
  203. package/dist/esm-es5/keep-hydrated-Dv7ssOTc.js +1 -0
  204. package/dist/esm-es5/loader.js +1 -1
  205. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  206. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  207. package/dist/esm-es5/pds-alert.entry.js +1 -1
  208. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  209. package/dist/esm-es5/pds-box.entry.js +1 -1
  210. package/dist/esm-es5/pds-button.entry.js +1 -1
  211. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  212. package/dist/esm-es5/pds-chip.entry.js +1 -1
  213. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  214. package/dist/esm-es5/pds-container.entry.js +1 -1
  215. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  216. package/dist/esm-es5/pds-datepicker.entry.js +1 -1
  217. package/dist/esm-es5/pds-divider.entry.js +1 -1
  218. package/dist/esm-es5/pds-drawer-content.entry.js +1 -1
  219. package/dist/esm-es5/pds-drawer-footer.entry.js +1 -1
  220. package/dist/esm-es5/pds-drawer-header.entry.js +1 -1
  221. package/dist/esm-es5/pds-drawer.entry.js +1 -1
  222. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  223. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  224. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  225. package/dist/esm-es5/pds-filter.entry.js +1 -1
  226. package/dist/esm-es5/pds-filters.entry.js +1 -1
  227. package/dist/esm-es5/pds-icon.entry.js +1 -1
  228. package/dist/esm-es5/pds-image.entry.js +1 -1
  229. package/dist/esm-es5/pds-input.entry.js +1 -1
  230. package/dist/esm-es5/pds-link.entry.js +1 -1
  231. package/dist/esm-es5/pds-loader.entry.js +1 -1
  232. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  233. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  234. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  235. package/dist/esm-es5/pds-modal.entry.js +1 -1
  236. package/dist/esm-es5/pds-multiselect.entry.js +1 -1
  237. package/dist/esm-es5/pds-popover.entry.js +1 -1
  238. package/dist/esm-es5/pds-progress.entry.js +1 -1
  239. package/dist/esm-es5/pds-property.entry.js +1 -1
  240. package/dist/esm-es5/pds-radio-group.entry.js +1 -1
  241. package/dist/esm-es5/pds-radio.entry.js +1 -1
  242. package/dist/esm-es5/pds-row.entry.js +1 -1
  243. package/dist/esm-es5/pds-select.entry.js +1 -1
  244. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  245. package/dist/esm-es5/pds-sortable.entry.js +2 -2
  246. package/dist/esm-es5/pds-switch.entry.js +1 -1
  247. package/dist/esm-es5/pds-tab.entry.js +1 -1
  248. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  249. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  250. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  251. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  252. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  253. package/dist/esm-es5/pds-table.entry.js +1 -1
  254. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  255. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  256. package/dist/esm-es5/pds-text.entry.js +1 -1
  257. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  258. package/dist/esm-es5/pds-toast.entry.js +1 -1
  259. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  260. package/dist/esm-es5/pine-core.js +1 -1
  261. package/dist/esm-es5/reflected-attribute-default-t3idJwV0.js +1 -0
  262. package/dist/pine-core/index.esm.js +1 -1
  263. package/dist/pine-core/p-0166c620.entry.js +1 -0
  264. package/dist/pine-core/p-02857936.entry.js +1 -0
  265. package/dist/pine-core/{p-5986f3c9.entry.js → p-04fe5da7.system.entry.js} +1 -1
  266. package/dist/pine-core/p-0de74105.entry.js +1 -0
  267. package/dist/pine-core/p-152245fa.system.entry.js +1 -0
  268. package/dist/pine-core/p-16c2aa63.entry.js +1 -0
  269. package/dist/pine-core/p-1b13f69c.system.entry.js +1 -0
  270. package/dist/pine-core/p-1cd0acf0.system.entry.js +1 -0
  271. package/dist/pine-core/p-1cf1fced.entry.js +1 -0
  272. package/dist/pine-core/p-1d75a9b1.system.entry.js +1 -0
  273. package/dist/pine-core/p-1e464117.entry.js +1 -0
  274. package/dist/pine-core/p-1ec4eeaf.system.entry.js +1 -0
  275. package/dist/pine-core/p-1f263c0b.system.entry.js +1 -0
  276. package/dist/pine-core/p-1f2e5958.entry.js +1 -0
  277. package/dist/pine-core/p-207c94da.entry.js +1 -0
  278. package/dist/pine-core/p-21115986.system.entry.js +1 -0
  279. package/dist/pine-core/p-22f041ee.system.entry.js +1 -0
  280. package/dist/pine-core/p-2357758d.system.entry.js +1 -0
  281. package/dist/pine-core/p-238e5171.system.entry.js +1 -0
  282. package/dist/pine-core/p-281efc69.entry.js +1 -0
  283. package/dist/pine-core/p-2ac9e90a.system.entry.js +1 -0
  284. package/dist/pine-core/p-2cb02706.entry.js +1 -0
  285. package/dist/pine-core/p-2f539379.system.entry.js +3 -0
  286. package/dist/pine-core/p-343546b1.system.entry.js +1 -0
  287. package/dist/pine-core/p-347ae53c.system.entry.js +1 -0
  288. package/dist/pine-core/p-34b575b6.entry.js +2 -0
  289. package/dist/pine-core/p-37d73369.system.entry.js +1 -0
  290. package/dist/pine-core/p-37d95be9.entry.js +1 -0
  291. package/dist/pine-core/p-3b1d8fae.entry.js +1 -0
  292. package/dist/pine-core/p-419f57c9.entry.js +1 -0
  293. package/dist/pine-core/p-4414d442.system.entry.js +1 -0
  294. package/dist/pine-core/p-45fcc5b7.entry.js +1 -0
  295. package/dist/pine-core/p-4c9cccdb.system.entry.js +8 -0
  296. package/dist/pine-core/p-4e05a4f0.entry.js +1 -0
  297. package/dist/pine-core/p-4e67e68e.entry.js +1 -0
  298. package/dist/pine-core/p-506d3e80.entry.js +1 -0
  299. package/dist/pine-core/p-5132b8a1.entry.js +1 -0
  300. package/dist/pine-core/p-51dff046.system.entry.js +1 -0
  301. package/dist/pine-core/p-539ef98c.entry.js +1 -0
  302. package/dist/pine-core/p-56576b6e.entry.js +1 -0
  303. package/dist/pine-core/p-5737182f.entry.js +1 -0
  304. package/dist/pine-core/p-585832b1.entry.js +1 -0
  305. package/dist/pine-core/p-59491f98.entry.js +1 -0
  306. package/dist/pine-core/p-5ac84b2f.entry.js +1 -0
  307. package/dist/pine-core/p-5b7f7760.entry.js +1 -0
  308. package/dist/pine-core/p-5bc670be.system.entry.js +1 -0
  309. package/dist/pine-core/p-5d014059.entry.js +1 -0
  310. package/dist/pine-core/p-5decd81f.entry.js +1 -0
  311. package/dist/pine-core/p-5e8d73d4.entry.js +1 -0
  312. package/dist/pine-core/p-622e91e3.entry.js +7 -0
  313. package/dist/pine-core/{p-d00c5b9c.system.entry.js → p-63119d23.entry.js} +1 -1
  314. package/dist/pine-core/p-63854c10.system.entry.js +1 -0
  315. package/dist/pine-core/p-650ccffb.entry.js +1 -0
  316. package/dist/pine-core/p-65e30a4c.entry.js +1 -0
  317. package/dist/pine-core/p-66cfef6d.system.entry.js +1 -0
  318. package/dist/pine-core/p-6d83ad2d.system.entry.js +1 -0
  319. package/dist/pine-core/p-70c6f0ed.system.entry.js +1 -0
  320. package/dist/pine-core/p-71e3a89e.system.entry.js +1 -0
  321. package/dist/pine-core/p-721297b5.system.entry.js +1 -0
  322. package/dist/pine-core/p-73bc6e9f.system.entry.js +1 -0
  323. package/dist/pine-core/p-798839f7.system.entry.js +1 -0
  324. package/dist/pine-core/p-7bbfb965.system.entry.js +1 -0
  325. package/dist/pine-core/p-7d01e719.entry.js +1 -0
  326. package/dist/pine-core/p-7e115d33.system.entry.js +1 -0
  327. package/dist/pine-core/p-8027db25.entry.js +1 -0
  328. package/dist/pine-core/p-834c678e.system.entry.js +1 -0
  329. package/dist/pine-core/p-87f91e02.system.entry.js +1 -0
  330. package/dist/pine-core/p-8b0fbeb3.entry.js +1 -0
  331. package/dist/pine-core/p-8b9d8fb5.system.entry.js +1 -0
  332. package/dist/pine-core/p-912487fa.entry.js +1 -0
  333. package/dist/pine-core/p-91f712f4.system.entry.js +1 -0
  334. package/dist/pine-core/p-93877d4a.entry.js +1 -0
  335. package/dist/pine-core/p-969488f5.system.entry.js +1 -0
  336. package/dist/pine-core/p-9835c74b.entry.js +1 -0
  337. package/dist/pine-core/p-99317375.system.entry.js +1 -0
  338. package/dist/pine-core/p-9a7ee7cb.system.entry.js +1 -0
  339. package/dist/pine-core/p-9b9f66b7.entry.js +1 -0
  340. package/dist/pine-core/p-9bcdfac2.entry.js +1 -0
  341. package/dist/pine-core/p-9d33bb05.entry.js +1 -0
  342. package/dist/pine-core/p-BJlg6wq7.system.js +2 -0
  343. package/dist/pine-core/p-BMFBF3sJ.system.js +1 -0
  344. package/dist/pine-core/p-Bkho_oFB.system.js +1 -0
  345. package/dist/pine-core/p-D2MUS7JO.js +1 -0
  346. package/dist/pine-core/p-D2yHYrxQ.system.js +1 -0
  347. package/dist/pine-core/p-DeIDZHrg.js +2 -0
  348. package/dist/pine-core/p-Dv7ssOTc.js +1 -0
  349. package/dist/pine-core/p-TyevV8iv.system.js +1 -0
  350. package/dist/pine-core/p-YQa3CeL9.system.js +1 -0
  351. package/dist/pine-core/p-a22091c4.system.entry.js +1 -0
  352. package/dist/pine-core/p-a6d09102.system.entry.js +1 -0
  353. package/dist/pine-core/p-a83a6618.system.entry.js +1 -0
  354. package/dist/pine-core/p-afd5e2d7.entry.js +1 -0
  355. package/dist/pine-core/p-b5838211.system.entry.js +1 -0
  356. package/dist/pine-core/p-ba1b79c7.system.entry.js +1 -0
  357. package/dist/pine-core/p-bd7da23e.system.entry.js +1 -0
  358. package/dist/pine-core/p-bde53290.system.entry.js +1 -0
  359. package/dist/pine-core/p-bdf68e53.system.entry.js +1 -0
  360. package/dist/pine-core/p-bef04e15.system.entry.js +1 -0
  361. package/dist/pine-core/p-bf1aea9f.system.entry.js +1 -0
  362. package/dist/pine-core/p-c00e46a5.system.entry.js +1 -0
  363. package/dist/pine-core/p-c8e89b61.system.entry.js +1 -0
  364. package/dist/pine-core/p-c9395f43.system.entry.js +1 -0
  365. package/dist/pine-core/p-d576e542.system.entry.js +1 -0
  366. package/dist/pine-core/p-d5dd5599.entry.js +1 -0
  367. package/dist/pine-core/p-d69cfaa4.entry.js +1 -0
  368. package/dist/pine-core/p-db4319fd.entry.js +1 -0
  369. package/dist/pine-core/p-dc81ffff.entry.js +1 -0
  370. package/dist/pine-core/p-e337f32c.system.entry.js +1 -0
  371. package/dist/pine-core/p-e46f7541.system.entry.js +1 -0
  372. package/dist/pine-core/p-e7ba30dd.system.entry.js +1 -0
  373. package/dist/pine-core/p-ed3dd3d2.entry.js +1 -0
  374. package/dist/pine-core/p-eee4f146.entry.js +1 -0
  375. package/dist/pine-core/p-f01e35e2.entry.js +1 -0
  376. package/dist/pine-core/p-f06ca8df.entry.js +1 -0
  377. package/dist/pine-core/p-f2e0da9a.entry.js +1 -0
  378. package/dist/pine-core/p-f30d6192.system.entry.js +1 -0
  379. package/dist/pine-core/p-fbea5703.entry.js +1 -0
  380. package/dist/pine-core/p-fc6ac917.entry.js +1 -0
  381. package/dist/pine-core/p-ffe276ef.entry.js +1 -0
  382. package/dist/pine-core/p-t3idJwV0.js +1 -0
  383. package/dist/pine-core/pine-core.esm.js +1 -1
  384. package/dist/pine-core/pine-core.js +1 -1
  385. package/dist/types/components/pds-avatar/pds-avatar.d.ts +3 -0
  386. package/dist/types/components/pds-box/pds-box.d.ts +7 -0
  387. package/dist/types/components/pds-checkbox/pds-checkbox.d.ts +2 -0
  388. package/dist/types/components/pds-chip/pds-chip.d.ts +2 -0
  389. package/dist/types/components/pds-combobox/pds-combobox.d.ts +5 -0
  390. package/dist/types/components/pds-copytext/pds-copytext.d.ts +3 -0
  391. package/dist/types/components/pds-drawer/pds-drawer-content/pds-drawer-content.d.ts +1 -0
  392. package/dist/types/components/pds-drawer/pds-drawer-footer/pds-drawer-footer.d.ts +3 -0
  393. package/dist/types/components/pds-drawer/pds-drawer-header/pds-drawer-header.d.ts +3 -0
  394. package/dist/types/components/pds-drawer/pds-drawer.d.ts +1 -0
  395. package/dist/types/components/pds-dropdown-menu/pds-dropdown-menu.d.ts +4 -0
  396. package/dist/types/components/pds-loader/pds-loader.d.ts +5 -0
  397. package/dist/types/components/pds-modal/pds-modal-content/pds-modal-content.d.ts +3 -0
  398. package/dist/types/components/pds-modal/pds-modal-footer/pds-modal-footer.d.ts +3 -0
  399. package/dist/types/components/pds-modal/pds-modal-header/pds-modal-header.d.ts +3 -0
  400. package/dist/types/components/pds-modal/pds-modal.d.ts +9 -1
  401. package/dist/types/components/pds-popover/pds-popover.d.ts +15 -0
  402. package/dist/types/components/pds-progress/pds-progress.d.ts +4 -0
  403. package/dist/types/components/pds-radio/pds-radio.d.ts +3 -0
  404. package/dist/types/components/pds-radio-group/pds-radio-group.d.ts +1 -0
  405. package/dist/types/components/pds-row/pds-row.d.ts +7 -0
  406. package/dist/types/components/pds-select/pds-select.d.ts +2 -0
  407. package/dist/types/components/pds-sortable/pds-sortable-item/pds-sortable-item.d.ts +4 -0
  408. package/dist/types/components/pds-sortable/pds-sortable.d.ts +6 -0
  409. package/dist/types/components/pds-switch/pds-switch.d.ts +2 -0
  410. package/dist/types/components/pds-tabs/pds-tab/pds-tab.d.ts +3 -0
  411. package/dist/types/components/pds-tabs/pds-tabpanel/pds-tabpanel.d.ts +3 -0
  412. package/dist/types/components/pds-tabs/pds-tabs.d.ts +3 -0
  413. package/dist/types/components/pds-tooltip/pds-tooltip.d.ts +1 -0
  414. package/dist/types/components.d.ts +199 -0
  415. package/dist/types/global/pine-global.d.ts +2 -0
  416. package/dist/types/index.d.ts +1 -0
  417. package/dist/types/utils/attributes.d.ts +34 -0
  418. package/dist/types/utils/keep-hydrated.d.ts +29 -0
  419. package/dist/types/utils/reflected-attribute-default.d.ts +31 -0
  420. package/dist/types/utils/test/host-strip.d.ts +10 -0
  421. package/dist/vscode.html-data.json +7 -0
  422. package/hydrate/index.js +778 -202
  423. package/hydrate/index.mjs +778 -202
  424. package/package.json +2 -2
  425. package/dist/cjs/attributes-oNMnBEnP.js +0 -85
  426. package/dist/esm/attributes-C0M1gTKv.js +0 -82
  427. package/dist/esm-es5/attributes-C0M1gTKv.js +0 -1
  428. package/dist/pine-core/p-015d2ceb.entry.js +0 -1
  429. package/dist/pine-core/p-02a428af.system.entry.js +0 -1
  430. package/dist/pine-core/p-06534502.entry.js +0 -1
  431. package/dist/pine-core/p-0827c6a6.entry.js +0 -1
  432. package/dist/pine-core/p-085c92aa.system.entry.js +0 -1
  433. package/dist/pine-core/p-0af4685d.entry.js +0 -1
  434. package/dist/pine-core/p-0bfe152a.entry.js +0 -1
  435. package/dist/pine-core/p-0ce3bcf2.system.entry.js +0 -1
  436. package/dist/pine-core/p-1747c005.system.entry.js +0 -1
  437. package/dist/pine-core/p-1dd395d8.system.entry.js +0 -1
  438. package/dist/pine-core/p-2126b4e4.system.entry.js +0 -1
  439. package/dist/pine-core/p-23044953.system.entry.js +0 -1
  440. package/dist/pine-core/p-26d8c4f7.system.entry.js +0 -1
  441. package/dist/pine-core/p-28abc253.system.entry.js +0 -1
  442. package/dist/pine-core/p-2a00844f.entry.js +0 -1
  443. package/dist/pine-core/p-3653fd52.system.entry.js +0 -1
  444. package/dist/pine-core/p-3add97f7.system.entry.js +0 -1
  445. package/dist/pine-core/p-40928521.system.entry.js +0 -1
  446. package/dist/pine-core/p-40ebfe59.system.entry.js +0 -1
  447. package/dist/pine-core/p-468f0dab.system.entry.js +0 -1
  448. package/dist/pine-core/p-478e69d1.entry.js +0 -1
  449. package/dist/pine-core/p-495f791c.entry.js +0 -1
  450. package/dist/pine-core/p-4a43fbd9.entry.js +0 -1
  451. package/dist/pine-core/p-4d3f5098.system.entry.js +0 -1
  452. package/dist/pine-core/p-517e04f6.entry.js +0 -1
  453. package/dist/pine-core/p-517f9962.entry.js +0 -1
  454. package/dist/pine-core/p-563ba784.entry.js +0 -1
  455. package/dist/pine-core/p-569b07ed.system.entry.js +0 -1
  456. package/dist/pine-core/p-5bf397ca.entry.js +0 -1
  457. package/dist/pine-core/p-5c7c2ffa.entry.js +0 -1
  458. package/dist/pine-core/p-5e9396e2.system.entry.js +0 -1
  459. package/dist/pine-core/p-600be0e1.entry.js +0 -1
  460. package/dist/pine-core/p-601b646c.system.entry.js +0 -1
  461. package/dist/pine-core/p-60393d52.entry.js +0 -1
  462. package/dist/pine-core/p-60a15bf7.system.entry.js +0 -1
  463. package/dist/pine-core/p-60e687ac.entry.js +0 -1
  464. package/dist/pine-core/p-61ae5a4b.system.entry.js +0 -1
  465. package/dist/pine-core/p-62045f88.system.entry.js +0 -1
  466. package/dist/pine-core/p-62241978.entry.js +0 -1
  467. package/dist/pine-core/p-62974869.entry.js +0 -1
  468. package/dist/pine-core/p-63422f56.entry.js +0 -2
  469. package/dist/pine-core/p-63930a06.system.entry.js +0 -1
  470. package/dist/pine-core/p-6516adf7.system.entry.js +0 -1
  471. package/dist/pine-core/p-67227922.entry.js +0 -1
  472. package/dist/pine-core/p-686b526d.entry.js +0 -1
  473. package/dist/pine-core/p-69f60432.system.entry.js +0 -1
  474. package/dist/pine-core/p-6aaf945c.entry.js +0 -1
  475. package/dist/pine-core/p-6b25f349.system.entry.js +0 -1
  476. package/dist/pine-core/p-6eb2070a.entry.js +0 -1
  477. package/dist/pine-core/p-715b8e6b.entry.js +0 -1
  478. package/dist/pine-core/p-74b1b841.entry.js +0 -1
  479. package/dist/pine-core/p-7608e9b2.entry.js +0 -1
  480. package/dist/pine-core/p-773f5771.system.entry.js +0 -1
  481. package/dist/pine-core/p-77961987.system.entry.js +0 -1
  482. package/dist/pine-core/p-77e12080.system.entry.js +0 -1
  483. package/dist/pine-core/p-7a177548.system.entry.js +0 -1
  484. package/dist/pine-core/p-7fbb7037.entry.js +0 -1
  485. package/dist/pine-core/p-806f17de.system.entry.js +0 -1
  486. package/dist/pine-core/p-832cedb7.entry.js +0 -1
  487. package/dist/pine-core/p-847e5f00.system.entry.js +0 -1
  488. package/dist/pine-core/p-85981c5d.system.entry.js +0 -1
  489. package/dist/pine-core/p-86978a51.entry.js +0 -1
  490. package/dist/pine-core/p-871894e1.entry.js +0 -1
  491. package/dist/pine-core/p-893b02b7.entry.js +0 -1
  492. package/dist/pine-core/p-8961d112.system.entry.js +0 -3
  493. package/dist/pine-core/p-8d42f505.entry.js +0 -1
  494. package/dist/pine-core/p-9452adc4.entry.js +0 -1
  495. package/dist/pine-core/p-977db8b2.entry.js +0 -1
  496. package/dist/pine-core/p-9903eb37.system.entry.js +0 -1
  497. package/dist/pine-core/p-9b18314c.entry.js +0 -1
  498. package/dist/pine-core/p-9b262a9d.entry.js +0 -1
  499. package/dist/pine-core/p-9dbb8fe9.entry.js +0 -1
  500. package/dist/pine-core/p-BhQhw0S3.system.js +0 -1
  501. package/dist/pine-core/p-C0M1gTKv.js +0 -1
  502. package/dist/pine-core/p-CrXTJmBd.system.js +0 -2
  503. package/dist/pine-core/p-DO9XKAkv.system.js +0 -1
  504. package/dist/pine-core/p-G3CPPJEt.system.js +0 -1
  505. package/dist/pine-core/p-a44316ad.entry.js +0 -1
  506. package/dist/pine-core/p-ae125139.entry.js +0 -1
  507. package/dist/pine-core/p-af9bce53.entry.js +0 -1
  508. package/dist/pine-core/p-b2901e60.system.entry.js +0 -1
  509. package/dist/pine-core/p-b412473d.system.entry.js +0 -8
  510. package/dist/pine-core/p-b51cfa3b.entry.js +0 -1
  511. package/dist/pine-core/p-b62e08c2.system.entry.js +0 -1
  512. package/dist/pine-core/p-b802776b.system.entry.js +0 -1
  513. package/dist/pine-core/p-b823bde2.system.entry.js +0 -1
  514. package/dist/pine-core/p-b82a0693.entry.js +0 -1
  515. package/dist/pine-core/p-b852c82b.system.entry.js +0 -1
  516. package/dist/pine-core/p-b979105e.entry.js +0 -1
  517. package/dist/pine-core/p-bLhIfh0N.js +0 -2
  518. package/dist/pine-core/p-bb9d158c.system.entry.js +0 -1
  519. package/dist/pine-core/p-bd1bdb07.system.entry.js +0 -1
  520. package/dist/pine-core/p-c53e560a.system.entry.js +0 -1
  521. package/dist/pine-core/p-c5c46b65.entry.js +0 -1
  522. package/dist/pine-core/p-cbae27a4.system.entry.js +0 -1
  523. package/dist/pine-core/p-cd7deae5.entry.js +0 -1
  524. package/dist/pine-core/p-cd86ee3e.system.entry.js +0 -1
  525. package/dist/pine-core/p-cf5a484e.system.entry.js +0 -1
  526. package/dist/pine-core/p-cf99f7d8.system.entry.js +0 -1
  527. package/dist/pine-core/p-cff7013e.system.entry.js +0 -1
  528. package/dist/pine-core/p-d11e4956.entry.js +0 -1
  529. package/dist/pine-core/p-da7a7cca.entry.js +0 -1
  530. package/dist/pine-core/p-daaf653f.system.entry.js +0 -1
  531. package/dist/pine-core/p-de740b3e.system.entry.js +0 -1
  532. package/dist/pine-core/p-e1d541f7.entry.js +0 -1
  533. package/dist/pine-core/p-ea0e5253.entry.js +0 -7
  534. package/dist/pine-core/p-ea9468fb.entry.js +0 -1
  535. package/dist/pine-core/p-f22abb4d.system.entry.js +0 -1
  536. package/dist/pine-core/p-f2560935.entry.js +0 -1
  537. package/dist/pine-core/p-f279f435.system.entry.js +0 -1
  538. package/dist/pine-core/p-f5677949.system.entry.js +0 -1
  539. package/dist/pine-core/p-f6943cbf.entry.js +0 -1
  540. package/dist/pine-core/p-f794f7ad.entry.js +0 -1
  541. package/dist/pine-core/p-fe09b6fb.system.entry.js +0 -1
@@ -1,5 +1,8 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { c as containsComposed } from './closest-DHPzKMVS.js';
3
+ import { r as restoreReflectedDefault } from './reflected-attribute-default-t3idJwV0.js';
4
+ import { s as setAttributesIfChanged } from './attributes-CF5K2pxn.js';
5
+ import './keep-hydrated-Dv7ssOTc.js';
3
6
 
4
7
  const pdsPopoverCss = () => `:host{--sizing-max-width-default:352px;display:inline-block}:host .pds-popover__trigger-wrapper{display:inline-block}:host .pds-popover__content-slot-wrapper{display:none}`;
5
8
 
@@ -17,10 +20,22 @@ const PdsPopover = class {
17
20
  * Tracks if the component is still mounted to prevent memory leaks
18
21
  */
19
22
  this.isComponentMounted = true;
23
+ /**
24
+ * Set once `componentDidLoad` has built the portal, so a later reconnect knows to rebuild it
25
+ */
26
+ this.hasLoaded = false;
27
+ /**
28
+ * A popover without a componentId keeps one generated portal id, even when the portal is rebuilt
29
+ */
30
+ this.generatedPortalId = null;
20
31
  /**
21
32
  * Reference to the trigger element
22
33
  */
23
34
  this.triggerEl = null;
35
+ /**
36
+ * Puts the trigger's ARIA back when something else removes or changes it
37
+ */
38
+ this.triggerObserver = null;
24
39
  /**
25
40
  * Portal element rendered in document.body
26
41
  */
@@ -82,6 +97,7 @@ const PdsPopover = class {
82
97
  else {
83
98
  this.triggerEl = null;
84
99
  }
100
+ this.observeTrigger();
85
101
  };
86
102
  /**
87
103
  * Handles changes to the default slot (popover content)
@@ -118,6 +134,9 @@ const PdsPopover = class {
118
134
  }
119
135
  };
120
136
  }
137
+ restorePlacementDefault(newValue) {
138
+ this.placement = restoreReflectedDefault(this.el, 'placement', newValue, 'right');
139
+ }
121
140
  componentDidLoad() {
122
141
  var _a;
123
142
  // Bind event handlers for cleanup
@@ -127,6 +146,7 @@ const PdsPopover = class {
127
146
  this.boundResizeHandler = this.handleResize.bind(this);
128
147
  // Create portal element
129
148
  this.createPortal();
149
+ this.hasLoaded = true;
130
150
  // Initialize trigger element by calling slot change handler
131
151
  // This is a fallback for environments where slot change might not fire reliably
132
152
  const triggerSlot = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="trigger"]');
@@ -141,20 +161,69 @@ const PdsPopover = class {
141
161
  this.linkTriggerToPortal();
142
162
  }
143
163
  }
164
+ // The trigger is the consumer's element, so anything can rewrite its attributes (a Turbo morph
165
+ // matches it to server HTML that has no ARIA). Put Pine's values back when that happens.
166
+ observeTrigger() {
167
+ var _a;
168
+ (_a = this.triggerObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
169
+ this.triggerObserver = null;
170
+ if (this.triggerEl == null || typeof MutationObserver === 'undefined')
171
+ return;
172
+ this.triggerObserver = new MutationObserver(() => this.linkTriggerToPortal());
173
+ this.triggerObserver.observe(this.triggerEl, {
174
+ attributes: true,
175
+ attributeFilter: ['aria-expanded', 'aria-controls'],
176
+ });
177
+ }
144
178
  // Set ARIA attributes to establish relationship between trigger and popover
145
179
  // This mirrors the native Popover API's accessibility behavior
146
180
  linkTriggerToPortal() {
147
181
  if (this.triggerEl == null || this.portalEl == null)
148
182
  return;
149
- this.triggerEl.setAttribute('aria-expanded', String(this.active));
150
- this.triggerEl.setAttribute('aria-controls', this.portalEl.id);
183
+ // Skips values already in place, so the trigger observer's own callback doesn't loop.
184
+ setAttributesIfChanged(this.triggerEl, { 'aria-expanded': String(this.active), 'aria-controls': this.portalEl.id });
185
+ }
186
+ // componentDidLoad doesn't run again when a popover comes back, so rebuild whatever
187
+ // disconnectedCallback tore down. Each step is a no-op when nothing was.
188
+ connectedCallback() {
189
+ var _a;
190
+ if (!this.hasLoaded)
191
+ return;
192
+ this.isComponentMounted = true;
193
+ this.createPortal();
194
+ (_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.addEventListener('click', this.handleTriggerClick);
195
+ this.observeTrigger();
196
+ this.linkTriggerToPortal();
197
+ // Still open after a move: the trigger moved, so the portal follows it.
198
+ if (this.active) {
199
+ requestAnimationFrame(() => this.handlePopoverPositioning());
200
+ }
151
201
  }
152
202
  disconnectedCallback() {
203
+ var _a;
204
+ // Moved in one operation (a DOM morph, or a framework reparenting it), the popover is
205
+ // already back in the page. Its portal is in <body>, untouched, so it stays open, with focus
206
+ // where it was.
207
+ if (this.el.isConnected)
208
+ return;
153
209
  this.isComponentMounted = false;
210
+ // Open, the content sits in the portal; put it back before the portal goes. Only listeners on
211
+ // the popover itself hear the close event now, but those are the ones mirroring its state.
212
+ if (this.active) {
213
+ this.restorePortalContent();
214
+ this.active = false;
215
+ this.linkTriggerToPortal();
216
+ this.pdsPopoverClose.emit({
217
+ componentId: this.componentId,
218
+ popoverType: this.popoverType,
219
+ });
220
+ }
154
221
  // Clean up trigger click event listener
155
222
  if (this.triggerEl != null) {
156
223
  this.triggerEl.removeEventListener('click', this.handleTriggerClick);
157
224
  }
225
+ (_a = this.triggerObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
226
+ this.triggerObserver = null;
158
227
  // Clean up all event listeners
159
228
  this.removeLightDismissListeners();
160
229
  this.removeScrollAndResizeListeners();
@@ -177,6 +246,7 @@ const PdsPopover = class {
177
246
  }
178
247
  }
179
248
  createPortal() {
249
+ var _a;
180
250
  if (this.portalEl !== null)
181
251
  return;
182
252
  this.portalEl = document.createElement('div');
@@ -195,8 +265,8 @@ const PdsPopover = class {
195
265
  this.portalEl.style.padding = 'var(--pine-dimension-md)';
196
266
  // Generate unique ID
197
267
  if (!this.componentId) {
198
- const suffix = PdsPopover.instanceCounter++;
199
- this.portalEl.id = `pds-popover-portal-${suffix}`;
268
+ (_a = this.generatedPortalId) !== null && _a !== void 0 ? _a : (this.generatedPortalId = `pds-popover-portal-${PdsPopover.instanceCounter++}`);
269
+ this.portalEl.id = this.generatedPortalId;
200
270
  }
201
271
  else {
202
272
  this.portalEl.id = `${this.componentId}-portal`;
@@ -308,10 +378,7 @@ const PdsPopover = class {
308
378
  this.active = true;
309
379
  // Record open timestamp to prevent immediate close from opening click
310
380
  this.openTimestamp = Date.now();
311
- // Update ARIA expanded state on trigger
312
- if (this.triggerEl) {
313
- this.triggerEl.setAttribute('aria-expanded', 'true');
314
- }
381
+ this.linkTriggerToPortal();
315
382
  // Update portal content with latest slot content
316
383
  this.updatePortalContent();
317
384
  // Show portal
@@ -345,10 +412,7 @@ const PdsPopover = class {
345
412
  this.active = false;
346
413
  // Restoring the content drops its focus to the body, so check where focus is first.
347
414
  const focusWasInside = this.portalEl.contains(document.activeElement);
348
- // Update ARIA expanded state on trigger
349
- if (this.triggerEl) {
350
- this.triggerEl.setAttribute('aria-expanded', 'false');
351
- }
415
+ this.linkTriggerToPortal();
352
416
  // Restore content back to original slot positions
353
417
  this.restorePortalContent();
354
418
  // Hide portal
@@ -574,9 +638,14 @@ const PdsPopover = class {
574
638
  }, 16); // ~1 frame at 60fps
575
639
  }
576
640
  render() {
577
- return (h(Host, { key: '7f02e4a9af4d2dc4cafb9187fc2263edaa79af86', id: this.componentId }, h("span", { key: '128828d5fc52478b3e9670418a8e9c2d5ce6e7f6', class: "pds-popover__trigger-wrapper" }, h("slot", { key: 'c479f39a3653d6627a20d05c3a87ea1a5e2bebf2', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), h("div", { key: 'e730149edce755c8789ec700c0a95dfa4b4ab835', class: "pds-popover__content-slot-wrapper" }, h("slot", { key: '2f5ab80b4d75c114568d364ce9a74a658e426766', onSlotchange: this.handleContentSlotChange }))));
641
+ return (h(Host, { key: '66347d4922274d25504e5be134b36f05a3f12fdc', id: this.componentId }, h("span", { key: '8f29d54d58cf0c66f86470c77c676716f1ab056f', class: "pds-popover__trigger-wrapper" }, h("slot", { key: '5c89b687cfc01e67d3c11835e77755de88f03584', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), h("div", { key: '0ca9aff3021720098d86ec29eb69cbf149ef79a9', class: "pds-popover__content-slot-wrapper" }, h("slot", { key: 'b73c3324d3322c41c68161e9ada51499c0e49cb0', onSlotchange: this.handleContentSlotChange }))));
578
642
  }
579
643
  get el() { return getElement(this); }
644
+ static get watchers() { return {
645
+ "placement": [{
646
+ "restorePlacementDefault": 0
647
+ }]
648
+ }; }
580
649
  };
581
650
  /**
582
651
  * Instance counter for unique IDs
@@ -1,11 +1,14 @@
1
- import { r as registerInstance, h, H as Host } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
2
3
  import { n as normalizeColorValue } from './utils-OYK5-nwe.js';
4
+ import './keep-hydrated-Dv7ssOTc.js';
3
5
 
4
6
  const pdsProgressCss = () => `:host{--color-progress-fill:var(--pine-color-primary);--sizing-progress-bar-width:100%;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:var(--sizing-progress-bar-width)}@-webkit-keyframes progressBar{0%{width:0}100%{width:var(--sizing-progress-bar-width)}}@keyframes progressBar{0%{width:0}100%{width:var(--sizing-progress-bar-width)}}.pds-progress{-ms-flex-align:center;align-items:center;background-color:var(--pine-color-background-muted);border-radius:var(--pine-dimension-2xs);display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;height:var(--pine-dimension-xs);position:relative;width:100%}:host(.is-animated) progress,:host(.is-animated) progress::-webkit-progress-bar{-webkit-animation:progressBar 3s ease;animation:progressBar 3s ease;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}progress,progress::-webkit-progress-bar{background-color:transparent;border:0;height:var(--pine-dimension-xs);width:100%}progress::-webkit-progress-value{background:var(--color-progress-fill, var(--pine-color-primary));border-radius:var(--pine-dimension-2xs)}progress::-moz-progress-bar{background:var(--color-progress-fill, var(--pine-color-primary));border-radius:var(--pine-dimension-2xs)}.pds-progress__label{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.pds-progress__percentage{font-weight:var(--pine-font-weight-medium);-webkit-margin-start:calc(var(--pine-dimension-md) / 2);margin-inline-start:calc(var(--pine-dimension-md) / 2)}`;
5
7
 
6
8
  const PdsProgress = class {
7
9
  constructor(hostRef) {
8
10
  registerInstance(this, hostRef);
11
+ this.hostKeeper = new HostStylingKeeper();
9
12
  /**
10
13
  * Determines whether or not progress is animated.
11
14
  * @defaultValue false
@@ -22,10 +25,19 @@ const PdsProgress = class {
22
25
  */
23
26
  this.showPercent = false;
24
27
  }
28
+ connectedCallback() {
29
+ this.hostKeeper.connect(this.el);
30
+ }
31
+ disconnectedCallback() {
32
+ this.hostKeeper.disconnect();
33
+ }
25
34
  render() {
26
35
  const normalizedFillColor = normalizeColorValue(this.fillColor);
27
- return (h(Host, { key: '2aaabbb78cef6237b47408a6766936a4ce065e40', class: this.animated ? { 'is-animated': this.animated } : '' }, h("div", { key: '192ce4a08155a84577ed46d9dc342a744354213a', class: "pds-progress" }, h("label", { key: '3e9f16f9a4c5d822ef6493d6457dbb657835903a', class: "pds-progress__label", htmlFor: this.componentId }, this.label), h("progress", { key: '35b4cd422bb247b8ae8eeaa7c3ea231d312197c9', id: this.componentId, max: "100", style: normalizedFillColor ? { '--color-progress-fill': normalizedFillColor } : {}, value: this.percent })), this.showPercent && h("div", { key: 'a4952bcda7ab062da7ff706b519476f8e7fff898', class: "pds-progress__percentage" }, this.percent, "%")));
36
+ const hostClass = this.animated ? { 'is-animated': this.animated } : '';
37
+ this.hostKeeper.record(hostClass);
38
+ return (h(Host, { key: '5573a5c48eee2f7968835db92afdaebb73c1b85e', class: hostClass }, h("div", { key: 'bb5cf260495be798f4272673884336022c28441e', class: "pds-progress" }, h("label", { key: '017efa649ada73ec724b930e06bbf1ab19a18f61', class: "pds-progress__label", htmlFor: this.componentId }, this.label), h("progress", { key: 'e648d910b072b7b2ca1c4a92c0832bf6e2ef5406', id: this.componentId, max: "100", style: normalizedFillColor ? { '--color-progress-fill': normalizedFillColor } : {}, value: this.percent })), this.showPercent && h("div", { key: '1f9f1733ff2cd6e2ec81e9a46759ff451cf158f7', class: "pds-progress__percentage" }, this.percent, "%")));
28
39
  }
40
+ get el() { return getElement(this); }
29
41
  };
30
42
  PdsProgress.style = pdsProgressCss();
31
43
 
@@ -1,4 +1,5 @@
1
- import { r as registerInstance, h, H as Host } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host } from './index-2HMD-zUO.js';
2
+ import './keep-hydrated-Dv7ssOTc.js';
2
3
 
3
4
  const pdsPropertyCss = () => `:host{color:var(--pine-color-text-message);font:var(--pine-typography-body-medium)}`;
4
5
 
@@ -1,6 +1,7 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { m as messageId } from './form-BuRbS7Hp.js';
3
3
  import { b as danger } from './index-DxI-61GK.js';
4
+ import './keep-hydrated-Dv7ssOTc.js';
4
5
 
5
6
  const pdsRadioGroupCss = () => `.sc-pds-radio-group-h{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:var(--pine-dimension-sm)}.is-invalid.sc-pds-radio-group-h .pds-radio-group__message--error.sc-pds-radio-group{color:var(--pine-color-text-message-danger)}.pds-radio-group__label.sc-pds-radio-group{color:var(--pine-color-text-label);font:var(--pine-typography-heading-6);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing-heading-6)}.pds-radio-group__radios.sc-pds-radio-group{display:-ms-flexbox;display:flex;gap:var(--pds-radio-group-gap, var(--pine-dimension-xs))}.pds-radio-group__radios--row.sc-pds-radio-group{-ms-flex-align:start;align-items:flex-start;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.pds-radio-group__radios--column.sc-pds-radio-group{-ms-flex-direction:column;flex-direction:column}.pds-radio-group__message.sc-pds-radio-group{color:var(--pine-color-text-message);font:var(--pine-typography-body);width:100%}.pds-radio-group__message--error.sc-pds-radio-group{display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-radio-group__message--error.sc-pds-radio-group pds-icon.sc-pds-radio-group{-webkit-margin-before:var(--pine-dimension-050);margin-block-start:var(--pine-dimension-050)}`;
6
7
 
@@ -162,13 +163,13 @@ const PdsRadioGroup = class {
162
163
  render() {
163
164
  const gapValue = this.getGapValue();
164
165
  const ariaDescribedBy = this.getAriaDescribedBy();
165
- return (h(Host, { key: '3f35b3cea2933ed25174387fc45d80f0d6bceced', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
166
+ return (h(Host, { key: '9dc78eb36bbc1b872f4320203dbbc64e43816ebf', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
166
167
  '--pds-radio-group-gap': gapValue,
167
- } }, this.groupLabel && (h("div", { key: '83764282e3049b0802e966c306654bbdda4f0c02', class: "pds-radio-group__label" }, this.groupLabel)), h("div", { key: '39c0e97e5280527d9ab597dcf4f5b0282b19d69a', class: {
168
+ } }, this.groupLabel && (h("div", { key: '7b6f95608dcf356b141ef5d590ff3070f83b5975', class: "pds-radio-group__label" }, this.groupLabel)), h("div", { key: '6e1a634c9b81ca3f3bbbe9c6590bcd4efc97e6ea', class: {
168
169
  'pds-radio-group__radios': true,
169
170
  'pds-radio-group__radios--row': this.direction === 'row',
170
171
  'pds-radio-group__radios--column': this.direction === 'column',
171
- } }, h("slot", { key: 'ef827a254e8b9bac58f297f5bbd6a37f8e132677', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (h("div", { key: '4d2f58d979a34e685d00f04483c20a0f9e286af2', class: "pds-radio-group__message", id: messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (h("div", { key: 'c05a32676fd6fe8aee30e1ea5c476424e10945f3', class: "pds-radio-group__message pds-radio-group__message--error", id: messageId(this._groupId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: '1bc3177459e179af3709f1cacd329980a8a45df7', icon: danger, size: "small" }), this.errorMessage))));
172
+ } }, h("slot", { key: 'b5b16148f3c77d425a50b7ada8a822e9919ef5c5', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (h("div", { key: 'ca6b98f926b8d7a53fda630170ac037c99f5ee85', class: "pds-radio-group__message", id: messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (h("div", { key: '37b57e2622370364e619ea090712a7b79fe79501', class: "pds-radio-group__message pds-radio-group__message--error", id: messageId(this._groupId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: '6a362d048a67312b1b227f71cc4b8f821ae0817e', icon: danger, size: "small" }), this.errorMessage))));
172
173
  }
173
174
  get el() { return getElement(this); }
174
175
  static get watchers() { return {
@@ -1,6 +1,8 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
2
3
  import { e as exposeTypeProperty, a as assignDescription, m as messageId } from './form-BuRbS7Hp.js';
3
4
  import { b as danger } from './index-DxI-61GK.js';
5
+ import './keep-hydrated-Dv7ssOTc.js';
4
6
 
5
7
  const labelCss = () => `.sc-pds-radio-h{display:inline-block}[aria-disabled=true].sc-pds-radio-h label.sc-pds-radio{color:var(--pine-color-text-label-disabled)}[aria-readonly=true].sc-pds-radio-h label.sc-pds-radio{color:var(--pine-color-text-label-readonly)}label.sc-pds-radio{color:var(--pine-color-text-label);font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing)}`;
6
8
 
@@ -11,6 +13,7 @@ const PdsRadio = class {
11
13
  registerInstance(this, hostRef);
12
14
  this.pdsRadioChange = createEvent(this, "pdsRadioChange");
13
15
  this._type = 'radio';
16
+ this.hostKeeper = new HostStylingKeeper();
14
17
  this._hasImage = false;
15
18
  /**
16
19
  * Determines whether or not the radio is checked.
@@ -78,9 +81,13 @@ const PdsRadio = class {
78
81
  this._hasImage = this.hasImageSlot();
79
82
  }
80
83
  connectedCallback() {
84
+ this.hostKeeper.connect(this.el);
81
85
  // Expose type property on the element instance to match native form element behavior
82
86
  exposeTypeProperty(this.el, () => this._type);
83
87
  }
88
+ disconnectedCallback() {
89
+ this.hostKeeper.disconnect();
90
+ }
84
91
  // Discards stale hidden label/message/wrapper copies left by a page-cache (Turbo, bfcache) reconnect, rescuing real [slot="image"] content stranded inside a stale image-container first.
85
92
  componentDidRender() {
86
93
  const freshImageContainer = this.el.querySelector('.pds-radio__image-container:not([hidden])');
@@ -95,11 +102,13 @@ const PdsRadio = class {
95
102
  }
96
103
  render() {
97
104
  const renderLabelAndMessages = () => [
98
- h("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, h("input", { key: '4a8736c360681b399c4e70ef9e6612d4cb4f9285', "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' : '' }), h("span", { key: '093d96ac788d713eafb2e537c812145869dddad8', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
105
+ h("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, h("input", { key: 'add893cd82f79b9398589bd5c0a72d5ae4a90475', "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' : '' }), h("span", { key: 'b58eed8681d1932397d38ffe82515987e6486e08', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
99
106
  this.helperMessage && (h("div", { key: `${this.componentId}-helper`, class: 'pds-radio__message', id: messageId(this.componentId, 'helper') }, this.helperMessage)),
100
- this.errorMessage && (h("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: '55fc5ab2a5a18734dbd8ed452c4e3794ece7fe15', icon: danger, size: "small" }), this.errorMessage))
107
+ this.errorMessage && (h("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: '7374924219e59eab46a7ced9e7062c3e674b4451', icon: danger, size: "small" }), this.errorMessage))
101
108
  ];
102
- return (h(Host, { key: '97d0f61aeb93bb29e3d21281e72775cb274de072', class: this.classNames() }, this.hasImage() && (h("div", { key: '0d1fb05dc00617945350e9d1ffeec9e17fc4affa', class: "pds-radio__image-container", part: "image-container" }, h("slot", { key: '1cd8494378269651730ea64f25af4e9572ede794', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (h("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
109
+ const hostClass = this.classNames();
110
+ this.hostKeeper.record(hostClass);
111
+ return (h(Host, { key: '24269923f168d1d39ebfc1994619736f0dc8087a', class: hostClass }, this.hasImage() && (h("div", { key: '74a72bef89aa012047cbf3a1744fcd33f13bb464', class: "pds-radio__image-container", part: "image-container" }, h("slot", { key: '99dbcfdac86cb7c012fd44eab607217e21304bab', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (h("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
103
112
  }
104
113
  get el() { return getElement(this); }
105
114
  };
@@ -1,10 +1,13 @@
1
- import { r as registerInstance, h, H as Host } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
3
+ import './keep-hydrated-Dv7ssOTc.js';
2
4
 
3
5
  const pdsRowCss = () => `:host{--row-gap-y:var(--pine-dimension-125);--row-gap-x:var(--pine-dimension-125);display:block;-webkit-margin-after:calc(var(--row-gap-y) * -1);margin-block-end:calc(var(--row-gap-y) * -1);-webkit-margin-before:calc(var(--row-gap-y) * -1);margin-block-start:calc(var(--row-gap-y) * -1);-webkit-margin-end:calc(var(--row-gap-x) * -0.5);margin-inline-end:calc(var(--row-gap-x) * -0.5);-webkit-margin-start:calc(var(--row-gap-x) * -0.5);margin-inline-start:calc(var(--row-gap-x) * -0.5)}.pds-row{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-margin-after:calc(var(--row-gap-y) * -1);margin-block-end:calc(var(--row-gap-y) * -1);-webkit-margin-before:calc(var(--row-gap-y) * -1);margin-block-start:calc(var(--row-gap-y) * -1);-webkit-margin-end:calc(var(--row-gap-x) * -1);margin-inline-end:calc(var(--row-gap-x) * -1);-webkit-margin-start:calc(var(--row-gap-x) * -1);margin-inline-start:calc(var(--row-gap-x) * -1)}@layer layout{.pds-row>*{-webkit-padding-after:calc(var(--row-gap-y));padding-block-end:calc(var(--row-gap-y));-webkit-padding-before:calc(var(--row-gap-y));padding-block-start:calc(var(--row-gap-y));-webkit-padding-end:calc(var(--row-gap-x));padding-inline-end:calc(var(--row-gap-x));-webkit-padding-start:calc(var(--row-gap-x));padding-inline-start:calc(var(--row-gap-x))}}.pds-row--no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.pds-row--border{border:var(--pine-border)}.pds-justify-content-start{-ms-flex-pack:start;justify-content:start}.pds-justify-content-center{-ms-flex-pack:center;justify-content:center}.pds-justify-content-end{-ms-flex-pack:end;justify-content:end}.pds-justify-content-space-between{-ms-flex-pack:justify;justify-content:space-between}.pds-justify-content-space-around{-ms-flex-pack:distribute;justify-content:space-around}.pds-justify-content-space-evenly{-ms-flex-pack:space-evenly;justify-content:space-evenly}.pds-align-items-start{-ms-flex-align:start;align-items:start}.pds-align-items-center{-ms-flex-align:center;align-items:center}.pds-align-items-end{-ms-flex-align:end;align-items:end}.pds-align-items-stretch{-ms-flex-align:stretch;align-items:stretch}.pds-align-items-baseline{-ms-flex-align:baseline;align-items:baseline}`;
4
6
 
5
7
  const PdsRow = class {
6
8
  constructor(hostRef) {
7
9
  registerInstance(this, hostRef);
10
+ this.hostKeeper = new HostStylingKeeper();
8
11
  /**
9
12
  * If `true`, the row will have a border.
10
13
  */
@@ -42,6 +45,12 @@ const PdsRow = class {
42
45
  '800': 'var(--pine-dimension-800)'
43
46
  };
44
47
  }
48
+ connectedCallback() {
49
+ this.hostKeeper.connect(this.el);
50
+ }
51
+ disconnectedCallback() {
52
+ this.hostKeeper.disconnect();
53
+ }
45
54
  render() {
46
55
  const rowClasses = `
47
56
  ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}
@@ -59,8 +68,10 @@ const PdsRow = class {
59
68
  })), (this.minHeight && {
60
69
  'min-height': this.minHeight,
61
70
  }));
62
- return h(Host, { key: '2d71570cba49c0e896ffe29c0a7727d7c2872036', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
71
+ this.hostKeeper.record(`pds-row ${rowClasses}`, rowInlineStyles);
72
+ return h(Host, { key: 'ee3a32ae1376919c7c2d1fcf186a1b7c272ee085', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
63
73
  }
74
+ get el() { return getElement(this); }
64
75
  };
65
76
  PdsRow.style = pdsRowCss();
66
77
 
@@ -1,6 +1,8 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
2
3
  import { e as exposeTypeProperty, m as messageId, i as isSpecTest, a as assignDescription } from './form-BuRbS7Hp.js';
3
4
  import { b as danger, e as enlarge } from './index-DxI-61GK.js';
5
+ import './keep-hydrated-Dv7ssOTc.js';
4
6
 
5
7
  const pdsSelectTokensCss = () => `:host{--pine-select-color-background-danger:var(--pine-color-red-050)}`;
6
8
 
@@ -16,6 +18,7 @@ const PdsSelect = class {
16
18
  this.pdsFocus = createEvent(this, "pdsFocus");
17
19
  this.pdsKeyDown = createEvent(this, "pdsKeyDown");
18
20
  this._type = 'select-one';
21
+ this.hostKeeper = new HostStylingKeeper();
19
22
  /**
20
23
  * Indicates whether or not the select field is disabled.
21
24
  * @defaultValue false
@@ -97,6 +100,7 @@ const PdsSelect = class {
97
100
  this._type = this.multiple ? 'select-multiple' : 'select-one';
98
101
  }
99
102
  connectedCallback() {
103
+ this.hostKeeper.connect(this.el);
100
104
  // Initialize ElementInternals for form association (only once per element instance)
101
105
  if (this.el.attachInternals && !this.internals) {
102
106
  this.internals = this.el.attachInternals();
@@ -104,6 +108,9 @@ const PdsSelect = class {
104
108
  // Expose type property on the element instance to match native form element behavior
105
109
  exposeTypeProperty(this.el, () => this._type);
106
110
  }
111
+ disconnectedCallback() {
112
+ this.hostKeeper.disconnect();
113
+ }
107
114
  componentWillLoad() {
108
115
  // Set initial type based on multiple prop
109
116
  this.updateType();
@@ -236,7 +243,13 @@ const PdsSelect = class {
236
243
  }
237
244
  render() {
238
245
  const hasAction = this.el.querySelector('[slot="action"]') !== null;
239
- return (h(Host, { key: '89ba8f5f06b2a1bf82a495992efcb8490021e19f', "aria-disabled": this.disabled ? 'true' : null, class: this.classNames(), "has-action": hasAction && !this.hideLabel ? 'true' : null }, h("div", { key: '009dd8fe960889fd85a6cbe3239d94f81eddc9bb', class: "pds-select" }, !this.hideLabel && (h("div", { key: 'e198c3dcd664da65c0356b7eb7f9b4dff8c27035', class: "pds-select__label-wrapper" }, h("label", { key: '914b278a8e154b17365ffadcfe655139d3bef915', htmlFor: this.componentId }, h("span", { key: '6cd42f182ae8c585364a781044b8fd2fa3d61304', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), h("select", { key: '7a3a91336f938ffb13a1e7ea1632090c37b5ad78', "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) }), h("div", { key: 'd3ddc61e4458e5ec0af1e700e69355d1cabaa651', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, h("slot", { key: 'dae8f36dd59e84f502500a24fec97a6fad305167', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && h("pds-icon", { key: '66fd7ed9fd065b6aff73df75234fa9534c828b6f', "aria-hidden": "true", class: "pds-select__select-icon", icon: enlarge }))));
246
+ const hostClass = this.classNames();
247
+ const hostAttributes = {
248
+ 'aria-disabled': this.disabled ? 'true' : null,
249
+ 'has-action': hasAction && !this.hideLabel ? 'true' : null,
250
+ };
251
+ this.hostKeeper.record(hostClass, {}, hostAttributes);
252
+ return (h(Host, Object.assign({ key: 'c99bfc000ad351298e154554a8b22635b1abb718', class: hostClass }, hostAttributes), h("div", { key: '35374b150cbef745c6a6068ba5a2fde0803c0314', class: "pds-select" }, !this.hideLabel && (h("div", { key: 'a3b9bae451c5c384606790a29bf8ab5fc70427c0', class: "pds-select__label-wrapper" }, h("label", { key: '80d7740a05a6d3cce6d51224169eb6c2501c4896', htmlFor: this.componentId }, h("span", { key: 'a51c02d7c84f75bb168889dab50cae807271c63d', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), h("select", { key: '11444dad795bd02c008252a60e701125861e4af0', "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) }), h("div", { key: 'ce54fa1df287d96a7503bb19cd2ba6c74a6da638', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, h("slot", { key: '22c55e78999076a37d43fb708dabc7379dd4cee3', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && h("pds-icon", { key: '45628074fbcdb259b8bba42299082423309a6968', "aria-hidden": "true", class: "pds-select__select-icon", icon: enlarge }))));
240
253
  }
241
254
  static get formAssociated() { return true; }
242
255
  get el() { return getElement(this); }
@@ -1,11 +1,14 @@
1
- import { r as registerInstance, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
2
3
  import { h as handle } from './index-DxI-61GK.js';
4
+ import './keep-hydrated-Dv7ssOTc.js';
3
5
 
4
6
  const pdsSortableItemCss = () => `.pds-sortable-item.sc-pds-sortable-item-h{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;padding-block:var(--pine-dimension-xs);padding-inline:var(--pine-dimension-md)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__actions.sc-pds-sortable-item{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-padding-start:var(--pine-dimension-md);padding-inline-start:var(--pine-dimension-md)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{line-height:1;-webkit-margin-end:var(--pine-dimension-md);margin-inline-end:var(--pine-dimension-md)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:first-child{border-start-end-radius:calc(var(--pine-dimension-xs) * 1.25);border-start-start-radius:calc(var(--pine-dimension-xs) * 1.25)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:last-child{border-end-end-radius:calc(var(--pine-dimension-xs) * 1.25);border-end-start-radius:calc(var(--pine-dimension-xs) * 1.25)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h{-webkit-border-after:var(--pine-border);border-block-end:var(--pine-border)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h:last-child{-webkit-border-after:0;border-block-end:0}.pds-sortable--handle-type-row .pds-sortable-item.sc-pds-sortable-item-h{cursor:-webkit-grab;cursor:grab}.pds-sortable--handle-type-handle .pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{cursor:-webkit-grab;cursor:grab}.pds-sortable--disabled .pds-sortable-item.sc-pds-sortable-item-h{cursor:not-allowed;opacity:0.5}.pds-sortable--disabled .pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{cursor:not-allowed}.pds-sortable--disabled .pds-sortable-item.sc-pds-sortable-item-h:hover{background-color:transparent}.pds-sortable:not(.pds-sortable--disabled) .pds-sortable-item.sc-pds-sortable-item-h:hover{background-color:var(--pine-color-background-container-hover)}.pds-sortable:not(.pds-sortable--disabled) .pds-sortable-item.sc-pds-sortable-item-h:hover pds-icon.sc-pds-sortable-item{color:var(--pine-color-info)}.pds-sortable-item--drag.sc-pds-sortable-item-h{background-color:var(--pine-color-background-container);border-radius:0;-webkit-box-shadow:var(--pine-box-shadow-400);box-shadow:var(--pine-box-shadow-400);opacity:1}.pds-sortable-item--ghost.sc-pds-sortable-item-h{background-color:var(--pine-color-background-container-hover);border-radius:0}`;
5
7
 
6
8
  const PdsSortableItem = class {
7
9
  constructor(hostRef) {
8
10
  registerInstance(this, hostRef);
11
+ this.hostKeeper = new HostStylingKeeper();
9
12
  /**
10
13
  * Determines whether `sortable-item-actions` slot should be enabled.
11
14
  * @defaultValue false
@@ -17,6 +20,12 @@ const PdsSortableItem = class {
17
20
  */
18
21
  this.showHandle = false;
19
22
  }
23
+ connectedCallback() {
24
+ this.hostKeeper.connect(this.el);
25
+ }
26
+ disconnectedCallback() {
27
+ this.hostKeeper.disconnect();
28
+ }
20
29
  // Discards stale handle/actions siblings left by a page-cache (Turbo, bfcache) reconnect; the fresh handle is always first, the fresh actions wrapper always last.
21
30
  componentDidRender() {
22
31
  const handles = Array.from(this.el.children).filter((child) => child.matches('.pds-sortable-item__handle'));
@@ -39,7 +48,8 @@ const PdsSortableItem = class {
39
48
  }
40
49
  }
41
50
  render() {
42
- return (h(Host, { key: 'a401963153e64b33f47f8897f2e8a157557d625e', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (h("div", { key: 'e93df2aea5fcad497bd64f54b09a3e700141dfa6', class: "pds-sortable-item__handle" }, h("pds-icon", { key: '9454196233b1c12a232815a2a14f05e41721a152', "aria-hidden": "true", icon: handle }))), h("slot", { key: 'da456ae383e8fe7dd9375eada035bee755cdd684' }), this.enableActions && (h("div", { key: 'bed7efa1c242e59b547e5e09018b1aacb1c1b172', class: "pds-sortable-item__actions" }, h("slot", { key: 'c4563d2a50c3bb55108527ae1f0a68a84d5749a7', name: "sortable-item-actions" })))));
51
+ this.hostKeeper.record('pds-sortable-item');
52
+ return (h(Host, { key: '3f9098a7c938bfa6443f08fb8b0a7c7217230890', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (h("div", { key: '77718a6867ddd8bc029bb3ef995f6ee9a5999ce7', class: "pds-sortable-item__handle" }, h("pds-icon", { key: 'aad7f46e776ece85858798f8f1a1a50c9022b84f', "aria-hidden": "true", icon: handle }))), h("slot", { key: 'afa9346ec8fd7aa6132a15dd44d3b1cae24500b9' }), this.enableActions && (h("div", { key: 'c28c85391117542999c12d673879768394002c90', class: "pds-sortable-item__actions" }, h("slot", { key: '88ab53f3ba4ed47715e31935b861d9ab42342b32', name: "sortable-item-actions" })))));
43
53
  }
44
54
  get el() { return getElement(this); }
45
55
  };
@@ -1,4 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
+ import { H as HostStylingKeeper } from './attributes-CF5K2pxn.js';
3
+ import './keep-hydrated-Dv7ssOTc.js';
2
4
 
3
5
  /**!
4
6
  * Sortable 1.15.7
@@ -2673,6 +2675,7 @@ const PdsSortable = class {
2673
2675
  * Determines the grabbable area for the `pds-sortable-item`.
2674
2676
  */
2675
2677
  this.handleType = 'row';
2678
+ this.hostKeeper = new HostStylingKeeper();
2676
2679
  }
2677
2680
  handleDisabledChange() {
2678
2681
  var _a;
@@ -2694,6 +2697,12 @@ const PdsSortable = class {
2694
2697
  }
2695
2698
  return classNames.join(' ');
2696
2699
  }
2700
+ connectedCallback() {
2701
+ this.hostKeeper.connect(this.el);
2702
+ }
2703
+ disconnectedCallback() {
2704
+ this.hostKeeper.disconnect();
2705
+ }
2697
2706
  componentDidLoad() {
2698
2707
  let sortableOptions = {
2699
2708
  animation: 150,
@@ -2710,7 +2719,9 @@ const PdsSortable = class {
2710
2719
  this.sortableInstance = Sortable.create(this.el, sortableOptions);
2711
2720
  }
2712
2721
  render() {
2713
- return (h(Host, { key: '6ff85345305337587c3d06b6f6c333125707efe8', class: this.classNames(), id: this.componentId }, h("slot", { key: 'e25c441574cc8b59bb1865a69af8691ce37ff341' })));
2722
+ const classNames = this.classNames();
2723
+ this.hostKeeper.record(classNames);
2724
+ return (h(Host, { key: 'fb6e9a79babf01980c04ee7208d195510493a7dc', class: classNames, id: this.componentId }, h("slot", { key: '5735ca3af531a736f07d1fafde8ae544d00a75bb' })));
2714
2725
  }
2715
2726
  get el() { return getElement(this); }
2716
2727
  static get watchers() { return {
@@ -1,7 +1,8 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { e as exposeTypeProperty, i as isSpecTest, m as messageId, a as assignDescription } from './form-BuRbS7Hp.js';
3
3
  import { b as danger } from './index-DxI-61GK.js';
4
- import { i as inheritAriaAttributes } from './attributes-C0M1gTKv.js';
4
+ import { H as HostStylingKeeper, i as inheritAriaAttributes } from './attributes-CF5K2pxn.js';
5
+ import './keep-hydrated-Dv7ssOTc.js';
5
6
 
6
7
  const labelCss = () => `: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)}`;
7
8
 
@@ -13,6 +14,7 @@ const PdsSwitch = class {
13
14
  this.pdsSwitchChange = createEvent(this, "pdsSwitchChange");
14
15
  this.inheritedAttributes = {};
15
16
  this._type = 'checkbox';
17
+ this.hostKeeper = new HostStylingKeeper();
16
18
  this.hasLabelSlot = false;
17
19
  /**
18
20
  * Determines the input 'checked' state.
@@ -56,6 +58,7 @@ const PdsSwitch = class {
56
58
  };
57
59
  }
58
60
  connectedCallback() {
61
+ this.hostKeeper.connect(this.el);
59
62
  // Initialize ElementInternals for form association (only once per element instance)
60
63
  if (this.el.attachInternals && !this.internals) {
61
64
  this.internals = this.el.attachInternals();
@@ -63,6 +66,9 @@ const PdsSwitch = class {
63
66
  // Expose type property on the element instance to match native form element behavior
64
67
  exposeTypeProperty(this.el, () => this._type);
65
68
  }
69
+ disconnectedCallback() {
70
+ this.hostKeeper.disconnect();
71
+ }
66
72
  componentDidLoad() {
67
73
  this.updateFormValue();
68
74
  }
@@ -97,9 +103,12 @@ const PdsSwitch = class {
97
103
  this.updateHasLabelSlot();
98
104
  }
99
105
  render() {
100
- return (h(Host, { key: 'b04295a8cc5acec33c5c6461516e9ec57ff9c396', class: this.switchClassNames(), "aria-disabled": this.disabled ? 'true' : null }, h("label", { key: 'f052e2409b0d7603598fd59bcdd382d6091cd794', htmlFor: this.componentId }, h("input", Object.assign({ key: 'd61df3ac3762af2dcc27a8800f7317ac03994ea3', "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)), h("span", { key: '0f921ea88d5706c364b1d8e4e05afac95be9f092', class: this.hideLabel ? 'visually-hidden' : '' }, h("slot", { key: '10f20c7f761635be8d90580be85fd7d62e2968f3', name: "label", onSlotchange: this.updateHasLabelSlot }), !this.hasLabelSlot && this.label)), this.helperMessage &&
101
- h("div", { key: '97a0281aa88b9208128fa169740cc710beed5538', class: `pds-switch__message`, id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
102
- h("div", { key: '26dd988675278031577df77560557484a8187cd5', class: `pds-switch__message pds-switch__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: 'ed674224e564f330ea797d0b4196442ad372ae99', icon: danger, size: "small" }), this.errorMessage)));
106
+ const hostClass = this.switchClassNames();
107
+ const ariaDisabled = this.disabled ? 'true' : null;
108
+ this.hostKeeper.record(hostClass, {}, { 'aria-disabled': ariaDisabled });
109
+ return (h(Host, { key: '6d4b51307f2619a99981e344f782f69871aabf0f', class: hostClass, "aria-disabled": ariaDisabled }, h("label", { key: '068ef3759e2bc3d9870cff36714de0e9cf558b2b', htmlFor: this.componentId }, h("input", Object.assign({ key: 'aa28fb67332bb2d81c09b6c749c1cb0f079e327f', "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)), h("span", { key: 'd237980a9ce2abc04d57085df022f28dfa2768e4', class: this.hideLabel ? 'visually-hidden' : '' }, h("slot", { key: '83d0e2110cfdcd3208319302af237178dfd419a4', name: "label", onSlotchange: this.updateHasLabelSlot }), !this.hasLabelSlot && this.label)), this.helperMessage &&
110
+ h("div", { key: '137d9e5626b34ade33f68c4c24c3dcb154500dc6', class: `pds-switch__message`, id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
111
+ h("div", { key: '64c3b8884d0568e26953f67a95d045aa5731c41f', class: `pds-switch__message pds-switch__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, h("pds-icon", { key: 'f99f8045eb33d0c60518f3b4c6a0183170a50f4a', icon: danger, size: "small" }), this.errorMessage)));
103
112
  }
104
113
  static get formAssociated() { return true; }
105
114
  get el() { return getElement(this); }
@@ -1,5 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { u as unwrapReconnectedContent } from './reconnected-content-RFpTWV6r.js';
3
+ import './keep-hydrated-Dv7ssOTc.js';
3
4
 
4
5
  const pdsTabCss = () => `pds-tab{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;position:relative}.pds-tabs--pill pds-tab{-ms-flex:1;flex:1}.pds-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:var(--pine-border-width-none);-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:pointer;font-family:inherit;padding:var(--pine-dimension-none);-ms-flex-align:center;align-items:center;color:var(--pine-color-text-secondary);display:-ms-inline-flexbox;display:inline-flex;position:relative;text-decoration:none;white-space:nowrap}.pds-tab.is-active,.pds-tab[aria-selected=true]{color:var(--pine-color-text)}.pds-tab.is-active .pds-tab__content::after,.pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tab:hover:not(:disabled,.is-disabled){color:var(--pine-color-text)}.pds-tab:focus{outline:none}.pds-tab:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tab:disabled,.pds-tab.is-disabled{color:var(--pine-color-text-disabled);cursor:not-allowed}.pds-tab .pds-tab__content{font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);-webkit-padding-after:11px;padding-block-end:11px;position:relative}.pds-tab .pds-tab__content::after{background-color:var(--pine-color-brand);content:"";height:3px;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);inset-inline-start:var(--pine-dimension-none);opacity:0;position:absolute}.pds-tab .pds-tab-edge{display:none}.pds-tabs--availability{--color-background-tab:transparent}.pds-tabs--availability .pds-tab{background-color:var(--color-background-tab);border-radius:calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);color:var(--pine-color-text-secondary);padding:8px 16px 13px}.pds-tabs--availability .pds-tab.is-active,.pds-tabs--availability .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-secondary);color:var(--pine-color-text)}.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tabs--availability .pds-tab.is-active .pds-tab-edge,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge{z-index:var(--pine-z-index-raised)}.pds-tabs--availability .pds-tab:hover:not(.is-active,[aria-selected=true],:disabled,.is-disabled){--color-background-tab:var(--pine-color-secondary-hover);color:var(--pine-color-text)}.pds-tabs--availability .pds-tab:focus-visible{color:var(--pine-color-text-secondary)}.pds-tabs--availability .pds-tab:disabled,.pds-tabs--availability .pds-tab.is-disabled{--color-background-tab:transparent;color:var(--pine-color-text-disabled)}.pds-tabs--availability .pds-tab__content{-webkit-padding-after:7px;padding-block-end:7px}.pds-tabs--availability .pds-tab-edge{bottom:0;display:block;height:8px;inset-inline-end:100%;overflow:hidden;position:absolute;width:8px}.pds-tabs--availability .pds-tab-edge::before{border-radius:50%;bottom:0;-webkit-box-shadow:4px 4px 0 0 var(--color-background-tab);box-shadow:4px 4px 0 0 var(--color-background-tab);content:"";display:block;height:200%;inset-inline-end:0;position:absolute;width:200%}.pds-tabs--availability .pds-tab-edge--end{inset-inline-end:unset;inset-inline-start:100%}.pds-tabs--availability .pds-tab-edge--end::before{-webkit-box-shadow:-4px 4px 0 0 var(--color-background-tab);box-shadow:-4px 4px 0 0 var(--color-background-tab);inset-inline-end:unset;inset-inline-start:0}.pds-tabs--filter .pds-tab{background-color:var(--pine-color-background-muted);border-radius:50px;color:var(--pine-color-text);padding:6px 15px}.pds-tabs--filter .pds-tab.is-active,.pds-tabs--filter .pds-tab[aria-selected=true]{background-color:var(--pine-color-primary);color:var(--pine-color-text-primary)}.pds-tabs--filter .pds-tab.is-active:hover:not(:disabled,.is-disabled),.pds-tabs--filter .pds-tab[aria-selected=true]:hover:not(:disabled,.is-disabled){background-color:var(--pine-color-primary-hover)}.pds-tabs--filter .pds-tab:hover:not(.is-active,[aria-selected=true],:disabled,.is-disabled){background-color:var(--pine-color-border-disabled)}.pds-tabs--filter .pds-tab:disabled,.pds-tabs--filter .pds-tab.is-disabled{background-color:transparent;color:var(--pine-color-text-disabled)}.pds-tabs--filter .pds-tab:disabled.is-active,.pds-tabs--filter .pds-tab:disabled[aria-selected=true],.pds-tabs--filter .pds-tab.is-disabled.is-active,.pds-tabs--filter .pds-tab.is-disabled[aria-selected=true]{background-color:var(--pine-color-primary-disabled)}.pds-tabs--filter .pds-tab__content{-webkit-padding-after:var(--pine-dimension-none);padding-block-end:var(--pine-dimension-none)}.pds-tabs--filter .pds-tab__content::after{content:unset}.pds-tabs--pill{--color-background-tab:transparent}.pds-tabs--pill .pds-tab{background-color:var(--color-background-tab);border:var(--pine-border-width-thin) solid transparent;border-radius:var(--pine-dimension-xs);color:var(--pine-color-text-muted);-ms-flex:1;flex:1;height:34px;-ms-flex-pack:center;justify-content:center}.pds-tabs--pill .pds-tab .pds-tab__content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-webkit-padding-after:0;padding-block-end:0}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-background-container);border-color:var(--pine-color-border);-webkit-box-shadow:var(--pine-box-shadow-100);box-shadow:var(--pine-box-shadow-100);color:var(--pine-color-text-active)}.pds-tabs--pill .pds-tab.is-active:focus-visible,.pds-tabs--pill .pds-tab[aria-selected=true]:focus-visible{border-color:var(--color-border-focus);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{}.pds-tabs--pill .pds-tab.is-active .pds-tab__content::after,.pds-tabs--pill .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:0}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{}.pds-tabs--pill .pds-tab:disabled,.pds-tabs--pill .pds-tab.is-disabled{color:var(--pine-color-text-disabled)}`;
5
6
 
@@ -1,4 +1,5 @@
1
- import { r as registerInstance, h, H as Host } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host } from './index-2HMD-zUO.js';
2
+ import './keep-hydrated-Dv7ssOTc.js';
2
3
 
3
4
  const pdsTableBodyCss = () => `:host{border-color:inherit;display:table-row-group;vertical-align:middle}`;
4
5
 
@@ -1,6 +1,7 @@
1
- import { r as registerInstance, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { a as isScrolledFromInlineStart } from './scroll-DtgUQhjl.js';
3
3
  import { s as setupTruncationTooltip } from './truncation-tooltip-_902ENWC.js';
4
+ import './keep-hydrated-Dv7ssOTc.js';
4
5
  import './floating-ui.dom-BPqJgIq6.js';
5
6
 
6
7
  const pdsTableCellCss = () => `:host{--box-shadow-fixed:3px 3px 6px -2px rgba(0, 0, 0, 0.2);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);inset-inline-start:var(--pine-dimension-none);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);vertical-align:middle}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);inset-inline-start:0;position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host-context([dir=rtl]){--box-shadow-fixed:-3px 3px 6px -2px rgba(0, 0, 0, 0.2)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:var(--pds-table-cell-truncate-max-width, 100px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}:host(.pds-table-cell--align-start){text-align:start}:host(.pds-table-cell--align-center){text-align:center}:host(.pds-table-cell--align-end){text-align:end}:host(.pds-table-cell--align-justify){text-align:justify}`;
@@ -1,6 +1,7 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-bLhIfh0N.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-2HMD-zUO.js';
2
2
  import { i as upSmall, d as downSmall } from './index-DxI-61GK.js';
3
3
  import { a as isScrolledFromInlineStart } from './scroll-DtgUQhjl.js';
4
+ import './keep-hydrated-Dv7ssOTc.js';
4
5
 
5
6
  const pdsTableHeadCellCss = () => `:host{--border-head-cell-default:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);--box-shadow-default:3px 3px 6px -2px rgba(0, 0, 0, 0.1);-webkit-border-after:var(--border-head-cell-default);border-block-end:var(--border-head-cell-default);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);position:relative;text-align:start;vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);inset-inline-start:var(--pine-dimension-none);position:-webkit-sticky;position:sticky;z-index:var(--pine-z-index-raised)}:host(.is-fixed.has-head-background){background-color:var(--pine-color-background-subtle)}:host(.has-head-border){-webkit-border-before:var(--border-head-cell-default);border-block-start:var(--border-head-cell-default)}:host-context([dir=rtl]){--box-shadow-default:-3px 3px 6px -2px rgba(0, 0, 0, 0.1)}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-default);box-shadow:var(--box-shadow-default)}:host(.is-sortable){cursor:pointer}:host(.is-sortable) pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs);-webkit-padding-before:2px;padding-block-start:2px;position:absolute}:host(.is-sortable:hover),:host(.is-active){color:var(--pine-color-text-strong)}:host(.pds-table-head-cell--align-start){text-align:start}:host(.pds-table-head-cell--align-center){text-align:center}:host(.pds-table-head-cell--align-end){text-align:end}:host(.pds-table-head-cell--align-justify){text-align:justify}`;
6
7