@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,7 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
4
  var closest = require('./closest-D0qyYtJ3.js');
5
+ var reflectedAttributeDefault = require('./reflected-attribute-default-DVYHG6O1.js');
6
+ var attributes = require('./attributes-DXvaSETR.js');
7
+ require('./keep-hydrated-iLS88j1Z.js');
5
8
 
6
9
  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}`;
7
10
 
@@ -19,10 +22,22 @@ const PdsPopover = class {
19
22
  * Tracks if the component is still mounted to prevent memory leaks
20
23
  */
21
24
  this.isComponentMounted = true;
25
+ /**
26
+ * Set once `componentDidLoad` has built the portal, so a later reconnect knows to rebuild it
27
+ */
28
+ this.hasLoaded = false;
29
+ /**
30
+ * A popover without a componentId keeps one generated portal id, even when the portal is rebuilt
31
+ */
32
+ this.generatedPortalId = null;
22
33
  /**
23
34
  * Reference to the trigger element
24
35
  */
25
36
  this.triggerEl = null;
37
+ /**
38
+ * Puts the trigger's ARIA back when something else removes or changes it
39
+ */
40
+ this.triggerObserver = null;
26
41
  /**
27
42
  * Portal element rendered in document.body
28
43
  */
@@ -84,6 +99,7 @@ const PdsPopover = class {
84
99
  else {
85
100
  this.triggerEl = null;
86
101
  }
102
+ this.observeTrigger();
87
103
  };
88
104
  /**
89
105
  * Handles changes to the default slot (popover content)
@@ -120,6 +136,9 @@ const PdsPopover = class {
120
136
  }
121
137
  };
122
138
  }
139
+ restorePlacementDefault(newValue) {
140
+ this.placement = reflectedAttributeDefault.restoreReflectedDefault(this.el, 'placement', newValue, 'right');
141
+ }
123
142
  componentDidLoad() {
124
143
  var _a;
125
144
  // Bind event handlers for cleanup
@@ -129,6 +148,7 @@ const PdsPopover = class {
129
148
  this.boundResizeHandler = this.handleResize.bind(this);
130
149
  // Create portal element
131
150
  this.createPortal();
151
+ this.hasLoaded = true;
132
152
  // Initialize trigger element by calling slot change handler
133
153
  // This is a fallback for environments where slot change might not fire reliably
134
154
  const triggerSlot = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot[name="trigger"]');
@@ -143,20 +163,69 @@ const PdsPopover = class {
143
163
  this.linkTriggerToPortal();
144
164
  }
145
165
  }
166
+ // The trigger is the consumer's element, so anything can rewrite its attributes (a Turbo morph
167
+ // matches it to server HTML that has no ARIA). Put Pine's values back when that happens.
168
+ observeTrigger() {
169
+ var _a;
170
+ (_a = this.triggerObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
171
+ this.triggerObserver = null;
172
+ if (this.triggerEl == null || typeof MutationObserver === 'undefined')
173
+ return;
174
+ this.triggerObserver = new MutationObserver(() => this.linkTriggerToPortal());
175
+ this.triggerObserver.observe(this.triggerEl, {
176
+ attributes: true,
177
+ attributeFilter: ['aria-expanded', 'aria-controls'],
178
+ });
179
+ }
146
180
  // Set ARIA attributes to establish relationship between trigger and popover
147
181
  // This mirrors the native Popover API's accessibility behavior
148
182
  linkTriggerToPortal() {
149
183
  if (this.triggerEl == null || this.portalEl == null)
150
184
  return;
151
- this.triggerEl.setAttribute('aria-expanded', String(this.active));
152
- this.triggerEl.setAttribute('aria-controls', this.portalEl.id);
185
+ // Skips values already in place, so the trigger observer's own callback doesn't loop.
186
+ attributes.setAttributesIfChanged(this.triggerEl, { 'aria-expanded': String(this.active), 'aria-controls': this.portalEl.id });
187
+ }
188
+ // componentDidLoad doesn't run again when a popover comes back, so rebuild whatever
189
+ // disconnectedCallback tore down. Each step is a no-op when nothing was.
190
+ connectedCallback() {
191
+ var _a;
192
+ if (!this.hasLoaded)
193
+ return;
194
+ this.isComponentMounted = true;
195
+ this.createPortal();
196
+ (_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.addEventListener('click', this.handleTriggerClick);
197
+ this.observeTrigger();
198
+ this.linkTriggerToPortal();
199
+ // Still open after a move: the trigger moved, so the portal follows it.
200
+ if (this.active) {
201
+ requestAnimationFrame(() => this.handlePopoverPositioning());
202
+ }
153
203
  }
154
204
  disconnectedCallback() {
205
+ var _a;
206
+ // Moved in one operation (a DOM morph, or a framework reparenting it), the popover is
207
+ // already back in the page. Its portal is in <body>, untouched, so it stays open, with focus
208
+ // where it was.
209
+ if (this.el.isConnected)
210
+ return;
155
211
  this.isComponentMounted = false;
212
+ // Open, the content sits in the portal; put it back before the portal goes. Only listeners on
213
+ // the popover itself hear the close event now, but those are the ones mirroring its state.
214
+ if (this.active) {
215
+ this.restorePortalContent();
216
+ this.active = false;
217
+ this.linkTriggerToPortal();
218
+ this.pdsPopoverClose.emit({
219
+ componentId: this.componentId,
220
+ popoverType: this.popoverType,
221
+ });
222
+ }
156
223
  // Clean up trigger click event listener
157
224
  if (this.triggerEl != null) {
158
225
  this.triggerEl.removeEventListener('click', this.handleTriggerClick);
159
226
  }
227
+ (_a = this.triggerObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
228
+ this.triggerObserver = null;
160
229
  // Clean up all event listeners
161
230
  this.removeLightDismissListeners();
162
231
  this.removeScrollAndResizeListeners();
@@ -179,6 +248,7 @@ const PdsPopover = class {
179
248
  }
180
249
  }
181
250
  createPortal() {
251
+ var _a;
182
252
  if (this.portalEl !== null)
183
253
  return;
184
254
  this.portalEl = document.createElement('div');
@@ -197,8 +267,8 @@ const PdsPopover = class {
197
267
  this.portalEl.style.padding = 'var(--pine-dimension-md)';
198
268
  // Generate unique ID
199
269
  if (!this.componentId) {
200
- const suffix = PdsPopover.instanceCounter++;
201
- this.portalEl.id = `pds-popover-portal-${suffix}`;
270
+ (_a = this.generatedPortalId) !== null && _a !== void 0 ? _a : (this.generatedPortalId = `pds-popover-portal-${PdsPopover.instanceCounter++}`);
271
+ this.portalEl.id = this.generatedPortalId;
202
272
  }
203
273
  else {
204
274
  this.portalEl.id = `${this.componentId}-portal`;
@@ -310,10 +380,7 @@ const PdsPopover = class {
310
380
  this.active = true;
311
381
  // Record open timestamp to prevent immediate close from opening click
312
382
  this.openTimestamp = Date.now();
313
- // Update ARIA expanded state on trigger
314
- if (this.triggerEl) {
315
- this.triggerEl.setAttribute('aria-expanded', 'true');
316
- }
383
+ this.linkTriggerToPortal();
317
384
  // Update portal content with latest slot content
318
385
  this.updatePortalContent();
319
386
  // Show portal
@@ -347,10 +414,7 @@ const PdsPopover = class {
347
414
  this.active = false;
348
415
  // Restoring the content drops its focus to the body, so check where focus is first.
349
416
  const focusWasInside = this.portalEl.contains(document.activeElement);
350
- // Update ARIA expanded state on trigger
351
- if (this.triggerEl) {
352
- this.triggerEl.setAttribute('aria-expanded', 'false');
353
- }
417
+ this.linkTriggerToPortal();
354
418
  // Restore content back to original slot positions
355
419
  this.restorePortalContent();
356
420
  // Hide portal
@@ -576,9 +640,14 @@ const PdsPopover = class {
576
640
  }, 16); // ~1 frame at 60fps
577
641
  }
578
642
  render() {
579
- return (index.h(index.Host, { key: '7f02e4a9af4d2dc4cafb9187fc2263edaa79af86', id: this.componentId }, index.h("span", { key: '128828d5fc52478b3e9670418a8e9c2d5ce6e7f6', class: "pds-popover__trigger-wrapper" }, index.h("slot", { key: 'c479f39a3653d6627a20d05c3a87ea1a5e2bebf2', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), index.h("div", { key: 'e730149edce755c8789ec700c0a95dfa4b4ab835', class: "pds-popover__content-slot-wrapper" }, index.h("slot", { key: '2f5ab80b4d75c114568d364ce9a74a658e426766', onSlotchange: this.handleContentSlotChange }))));
643
+ return (index.h(index.Host, { key: '66347d4922274d25504e5be134b36f05a3f12fdc', id: this.componentId }, index.h("span", { key: '8f29d54d58cf0c66f86470c77c676716f1ab056f', class: "pds-popover__trigger-wrapper" }, index.h("slot", { key: '5c89b687cfc01e67d3c11835e77755de88f03584', name: "trigger", onSlotchange: this.handleTriggerSlotChange })), index.h("div", { key: '0ca9aff3021720098d86ec29eb69cbf149ef79a9', class: "pds-popover__content-slot-wrapper" }, index.h("slot", { key: 'b73c3324d3322c41c68161e9ada51499c0e49cb0', onSlotchange: this.handleContentSlotChange }))));
580
644
  }
581
645
  get el() { return index.getElement(this); }
646
+ static get watchers() { return {
647
+ "placement": [{
648
+ "restorePlacementDefault": 0
649
+ }]
650
+ }; }
582
651
  };
583
652
  /**
584
653
  * Instance counter for unique IDs
@@ -1,13 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
4
5
  var utils = require('./utils-BhRmyxT8.js');
6
+ require('./keep-hydrated-iLS88j1Z.js');
5
7
 
6
8
  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)}`;
7
9
 
8
10
  const PdsProgress = class {
9
11
  constructor(hostRef) {
10
12
  index.registerInstance(this, hostRef);
13
+ this.hostKeeper = new attributes.HostStylingKeeper();
11
14
  /**
12
15
  * Determines whether or not progress is animated.
13
16
  * @defaultValue false
@@ -24,10 +27,19 @@ const PdsProgress = class {
24
27
  */
25
28
  this.showPercent = false;
26
29
  }
30
+ connectedCallback() {
31
+ this.hostKeeper.connect(this.el);
32
+ }
33
+ disconnectedCallback() {
34
+ this.hostKeeper.disconnect();
35
+ }
27
36
  render() {
28
37
  const normalizedFillColor = utils.normalizeColorValue(this.fillColor);
29
- return (index.h(index.Host, { key: '2aaabbb78cef6237b47408a6766936a4ce065e40', class: this.animated ? { 'is-animated': this.animated } : '' }, index.h("div", { key: '192ce4a08155a84577ed46d9dc342a744354213a', class: "pds-progress" }, index.h("label", { key: '3e9f16f9a4c5d822ef6493d6457dbb657835903a', class: "pds-progress__label", htmlFor: this.componentId }, this.label), index.h("progress", { key: '35b4cd422bb247b8ae8eeaa7c3ea231d312197c9', id: this.componentId, max: "100", style: normalizedFillColor ? { '--color-progress-fill': normalizedFillColor } : {}, value: this.percent })), this.showPercent && index.h("div", { key: 'a4952bcda7ab062da7ff706b519476f8e7fff898', class: "pds-progress__percentage" }, this.percent, "%")));
38
+ const hostClass = this.animated ? { 'is-animated': this.animated } : '';
39
+ this.hostKeeper.record(hostClass);
40
+ return (index.h(index.Host, { key: '5573a5c48eee2f7968835db92afdaebb73c1b85e', class: hostClass }, index.h("div", { key: 'bb5cf260495be798f4272673884336022c28441e', class: "pds-progress" }, index.h("label", { key: '017efa649ada73ec724b930e06bbf1ab19a18f61', class: "pds-progress__label", htmlFor: this.componentId }, this.label), index.h("progress", { key: 'e648d910b072b7b2ca1c4a92c0832bf6e2ef5406', id: this.componentId, max: "100", style: normalizedFillColor ? { '--color-progress-fill': normalizedFillColor } : {}, value: this.percent })), this.showPercent && index.h("div", { key: '1f9f1733ff2cd6e2ec81e9a46759ff451cf158f7', class: "pds-progress__percentage" }, this.percent, "%")));
30
41
  }
42
+ get el() { return index.getElement(this); }
31
43
  };
32
44
  PdsProgress.style = pdsProgressCss();
33
45
 
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ require('./keep-hydrated-iLS88j1Z.js');
4
5
 
5
6
  const pdsPropertyCss = () => `:host{color:var(--pine-color-text-message);font:var(--pine-typography-body-medium)}`;
6
7
 
@@ -1,8 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
4
  var form = require('./form-MhwfKTuo.js');
5
5
  var index$1 = require('./index-D-QQKB0y.js');
6
+ require('./keep-hydrated-iLS88j1Z.js');
6
7
 
7
8
  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)}`;
8
9
 
@@ -164,13 +165,13 @@ const PdsRadioGroup = class {
164
165
  render() {
165
166
  const gapValue = this.getGapValue();
166
167
  const ariaDescribedBy = this.getAriaDescribedBy();
167
- return (index.h(index.Host, { key: '3f35b3cea2933ed25174387fc45d80f0d6bceced', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
168
+ return (index.h(index.Host, { key: '9dc78eb36bbc1b872f4320203dbbc64e43816ebf', class: this.classNames(), id: this._groupId, role: "group", "aria-describedby": ariaDescribedBy, style: {
168
169
  '--pds-radio-group-gap': gapValue,
169
- } }, this.groupLabel && (index.h("div", { key: '83764282e3049b0802e966c306654bbdda4f0c02', class: "pds-radio-group__label" }, this.groupLabel)), index.h("div", { key: '39c0e97e5280527d9ab597dcf4f5b0282b19d69a', class: {
170
+ } }, this.groupLabel && (index.h("div", { key: '7b6f95608dcf356b141ef5d590ff3070f83b5975', class: "pds-radio-group__label" }, this.groupLabel)), index.h("div", { key: '6e1a634c9b81ca3f3bbbe9c6590bcd4efc97e6ea', class: {
170
171
  'pds-radio-group__radios': true,
171
172
  'pds-radio-group__radios--row': this.direction === 'row',
172
173
  'pds-radio-group__radios--column': this.direction === 'column',
173
- } }, index.h("slot", { key: 'ef827a254e8b9bac58f297f5bbd6a37f8e132677', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (index.h("div", { key: '4d2f58d979a34e685d00f04483c20a0f9e286af2', class: "pds-radio-group__message", id: form.messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (index.h("div", { key: 'c05a32676fd6fe8aee30e1ea5c476424e10945f3', class: "pds-radio-group__message pds-radio-group__message--error", id: form.messageId(this._groupId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: '1bc3177459e179af3709f1cacd329980a8a45df7', icon: index$1.danger, size: "small" }), this.errorMessage))));
174
+ } }, index.h("slot", { key: 'b5b16148f3c77d425a50b7ada8a822e9919ef5c5', onSlotchange: () => this.updateChildRadios() })), this.helperMessage && (index.h("div", { key: 'ca6b98f926b8d7a53fda630170ac037c99f5ee85', class: "pds-radio-group__message", id: form.messageId(this._groupId, 'helper') }, this.helperMessage)), this.errorMessage && (index.h("div", { key: '37b57e2622370364e619ea090712a7b79fe79501', class: "pds-radio-group__message pds-radio-group__message--error", id: form.messageId(this._groupId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: '6a362d048a67312b1b227f71cc4b8f821ae0817e', icon: index$1.danger, size: "small" }), this.errorMessage))));
174
175
  }
175
176
  get el() { return index.getElement(this); }
176
177
  static get watchers() { return {
@@ -1,8 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
4
5
  var form = require('./form-MhwfKTuo.js');
5
6
  var index$1 = require('./index-D-QQKB0y.js');
7
+ require('./keep-hydrated-iLS88j1Z.js');
6
8
 
7
9
  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)}`;
8
10
 
@@ -13,6 +15,7 @@ const PdsRadio = class {
13
15
  index.registerInstance(this, hostRef);
14
16
  this.pdsRadioChange = index.createEvent(this, "pdsRadioChange");
15
17
  this._type = 'radio';
18
+ this.hostKeeper = new attributes.HostStylingKeeper();
16
19
  this._hasImage = false;
17
20
  /**
18
21
  * Determines whether or not the radio is checked.
@@ -80,9 +83,13 @@ const PdsRadio = class {
80
83
  this._hasImage = this.hasImageSlot();
81
84
  }
82
85
  connectedCallback() {
86
+ this.hostKeeper.connect(this.el);
83
87
  // Expose type property on the element instance to match native form element behavior
84
88
  form.exposeTypeProperty(this.el, () => this._type);
85
89
  }
90
+ disconnectedCallback() {
91
+ this.hostKeeper.disconnect();
92
+ }
86
93
  // 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.
87
94
  componentDidRender() {
88
95
  const freshImageContainer = this.el.querySelector('.pds-radio__image-container:not([hidden])');
@@ -97,11 +104,13 @@ const PdsRadio = class {
97
104
  }
98
105
  render() {
99
106
  const renderLabelAndMessages = () => [
100
- index.h("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, index.h("input", { key: '4a8736c360681b399c4e70ef9e6612d4cb4f9285', "aria-describedby": form.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' : '' }), index.h("span", { key: '093d96ac788d713eafb2e537c812145869dddad8', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
107
+ index.h("label", { htmlFor: this.componentId, key: `${this.componentId}-label` }, index.h("input", { key: 'add893cd82f79b9398589bd5c0a72d5ae4a90475', "aria-describedby": form.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' : '' }), index.h("span", { key: 'b58eed8681d1932397d38ffe82515987e6486e08', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)),
101
108
  this.helperMessage && (index.h("div", { key: `${this.componentId}-helper`, class: 'pds-radio__message', id: form.messageId(this.componentId, 'helper') }, this.helperMessage)),
102
- this.errorMessage && (index.h("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: form.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: '55fc5ab2a5a18734dbd8ed452c4e3794ece7fe15', icon: index$1.danger, size: "small" }), this.errorMessage))
109
+ this.errorMessage && (index.h("div", { key: `${this.componentId}-error`, class: `pds-radio__message pds-radio__message--error`, id: form.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: '7374924219e59eab46a7ced9e7062c3e674b4451', icon: index$1.danger, size: "small" }), this.errorMessage))
103
110
  ];
104
- return (index.h(index.Host, { key: '97d0f61aeb93bb29e3d21281e72775cb274de072', class: this.classNames() }, this.hasImage() && (index.h("div", { key: '0d1fb05dc00617945350e9d1ffeec9e17fc4affa', class: "pds-radio__image-container", part: "image-container" }, index.h("slot", { key: '1cd8494378269651730ea64f25af4e9572ede794', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (index.h("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
111
+ const hostClass = this.classNames();
112
+ this.hostKeeper.record(hostClass);
113
+ return (index.h(index.Host, { key: '24269923f168d1d39ebfc1994619736f0dc8087a', class: hostClass }, this.hasImage() && (index.h("div", { key: '74a72bef89aa012047cbf3a1744fcd33f13bb464', class: "pds-radio__image-container", part: "image-container" }, index.h("slot", { key: '99dbcfdac86cb7c012fd44eab607217e21304bab', name: "image", onSlotchange: () => (this._hasImage = this.hasImageSlot()) }))), this.hasImage() ? (index.h("div", { class: "pds-radio__content-wrapper" }, renderLabelAndMessages())) : (renderLabelAndMessages())));
105
114
  }
106
115
  get el() { return index.getElement(this); }
107
116
  };
@@ -1,12 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
5
+ require('./keep-hydrated-iLS88j1Z.js');
4
6
 
5
7
  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}`;
6
8
 
7
9
  const PdsRow = class {
8
10
  constructor(hostRef) {
9
11
  index.registerInstance(this, hostRef);
12
+ this.hostKeeper = new attributes.HostStylingKeeper();
10
13
  /**
11
14
  * If `true`, the row will have a border.
12
15
  */
@@ -44,6 +47,12 @@ const PdsRow = class {
44
47
  '800': 'var(--pine-dimension-800)'
45
48
  };
46
49
  }
50
+ connectedCallback() {
51
+ this.hostKeeper.connect(this.el);
52
+ }
53
+ disconnectedCallback() {
54
+ this.hostKeeper.disconnect();
55
+ }
47
56
  render() {
48
57
  const rowClasses = `
49
58
  ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}
@@ -61,8 +70,10 @@ const PdsRow = class {
61
70
  })), (this.minHeight && {
62
71
  'min-height': this.minHeight,
63
72
  }));
64
- return index.h(index.Host, { key: '2d71570cba49c0e896ffe29c0a7727d7c2872036', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
73
+ this.hostKeeper.record(`pds-row ${rowClasses}`, rowInlineStyles);
74
+ return index.h(index.Host, { key: 'ee3a32ae1376919c7c2d1fcf186a1b7c272ee085', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
65
75
  }
76
+ get el() { return index.getElement(this); }
66
77
  };
67
78
  PdsRow.style = pdsRowCss();
68
79
 
@@ -1,8 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
4
5
  var form = require('./form-MhwfKTuo.js');
5
6
  var index$1 = require('./index-D-QQKB0y.js');
7
+ require('./keep-hydrated-iLS88j1Z.js');
6
8
 
7
9
  const pdsSelectTokensCss = () => `:host{--pine-select-color-background-danger:var(--pine-color-red-050)}`;
8
10
 
@@ -18,6 +20,7 @@ const PdsSelect = class {
18
20
  this.pdsFocus = index.createEvent(this, "pdsFocus");
19
21
  this.pdsKeyDown = index.createEvent(this, "pdsKeyDown");
20
22
  this._type = 'select-one';
23
+ this.hostKeeper = new attributes.HostStylingKeeper();
21
24
  /**
22
25
  * Indicates whether or not the select field is disabled.
23
26
  * @defaultValue false
@@ -99,6 +102,7 @@ const PdsSelect = class {
99
102
  this._type = this.multiple ? 'select-multiple' : 'select-one';
100
103
  }
101
104
  connectedCallback() {
105
+ this.hostKeeper.connect(this.el);
102
106
  // Initialize ElementInternals for form association (only once per element instance)
103
107
  if (this.el.attachInternals && !this.internals) {
104
108
  this.internals = this.el.attachInternals();
@@ -106,6 +110,9 @@ const PdsSelect = class {
106
110
  // Expose type property on the element instance to match native form element behavior
107
111
  form.exposeTypeProperty(this.el, () => this._type);
108
112
  }
113
+ disconnectedCallback() {
114
+ this.hostKeeper.disconnect();
115
+ }
109
116
  componentWillLoad() {
110
117
  // Set initial type based on multiple prop
111
118
  this.updateType();
@@ -238,7 +245,13 @@ const PdsSelect = class {
238
245
  }
239
246
  render() {
240
247
  const hasAction = this.el.querySelector('[slot="action"]') !== null;
241
- return (index.h(index.Host, { key: '89ba8f5f06b2a1bf82a495992efcb8490021e19f', "aria-disabled": this.disabled ? 'true' : null, class: this.classNames(), "has-action": hasAction && !this.hideLabel ? 'true' : null }, index.h("div", { key: '009dd8fe960889fd85a6cbe3239d94f81eddc9bb', class: "pds-select" }, !this.hideLabel && (index.h("div", { key: 'e198c3dcd664da65c0356b7eb7f9b4dff8c27035', class: "pds-select__label-wrapper" }, index.h("label", { key: '914b278a8e154b17365ffadcfe655139d3bef915', htmlFor: this.componentId }, index.h("span", { key: '6cd42f182ae8c585364a781044b8fd2fa3d61304', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), index.h("select", { key: '7a3a91336f938ffb13a1e7ea1632090c37b5ad78', "aria-describedby": form.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) }), index.h("div", { key: 'd3ddc61e4458e5ec0af1e700e69355d1cabaa651', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, index.h("slot", { key: 'dae8f36dd59e84f502500a24fec97a6fad305167', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && index.h("pds-icon", { key: '66fd7ed9fd065b6aff73df75234fa9534c828b6f', "aria-hidden": "true", class: "pds-select__select-icon", icon: index$1.enlarge }))));
248
+ const hostClass = this.classNames();
249
+ const hostAttributes = {
250
+ 'aria-disabled': this.disabled ? 'true' : null,
251
+ 'has-action': hasAction && !this.hideLabel ? 'true' : null,
252
+ };
253
+ this.hostKeeper.record(hostClass, {}, hostAttributes);
254
+ return (index.h(index.Host, Object.assign({ key: 'c99bfc000ad351298e154554a8b22635b1abb718', class: hostClass }, hostAttributes), index.h("div", { key: '35374b150cbef745c6a6068ba5a2fde0803c0314', class: "pds-select" }, !this.hideLabel && (index.h("div", { key: 'a3b9bae451c5c384606790a29bf8ab5fc70427c0', class: "pds-select__label-wrapper" }, index.h("label", { key: '80d7740a05a6d3cce6d51224169eb6c2501c4896', htmlFor: this.componentId }, index.h("span", { key: 'a51c02d7c84f75bb168889dab50cae807271c63d', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), hasAction && this.renderAction())), index.h("select", { key: '11444dad795bd02c008252a60e701125861e4af0', "aria-describedby": form.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) }), index.h("div", { key: 'ce54fa1df287d96a7503bb19cd2ba6c74a6da638', "aria-hidden": "true", class: "hidden", ref: (el) => (this.slotContainer = el) }, index.h("slot", { key: '22c55e78999076a37d43fb708dabc7379dd4cee3', onSlotchange: this.handleSlotChange })), this.renderMessages(), !this.multiple && index.h("pds-icon", { key: '45628074fbcdb259b8bba42299082423309a6968', "aria-hidden": "true", class: "pds-select__select-icon", icon: index$1.enlarge }))));
242
255
  }
243
256
  static get formAssociated() { return true; }
244
257
  get el() { return index.getElement(this); }
@@ -1,13 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
4
5
  var index$1 = require('./index-D-QQKB0y.js');
6
+ require('./keep-hydrated-iLS88j1Z.js');
5
7
 
6
8
  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}`;
7
9
 
8
10
  const PdsSortableItem = class {
9
11
  constructor(hostRef) {
10
12
  index.registerInstance(this, hostRef);
13
+ this.hostKeeper = new attributes.HostStylingKeeper();
11
14
  /**
12
15
  * Determines whether `sortable-item-actions` slot should be enabled.
13
16
  * @defaultValue false
@@ -19,6 +22,12 @@ const PdsSortableItem = class {
19
22
  */
20
23
  this.showHandle = false;
21
24
  }
25
+ connectedCallback() {
26
+ this.hostKeeper.connect(this.el);
27
+ }
28
+ disconnectedCallback() {
29
+ this.hostKeeper.disconnect();
30
+ }
22
31
  // 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.
23
32
  componentDidRender() {
24
33
  const handles = Array.from(this.el.children).filter((child) => child.matches('.pds-sortable-item__handle'));
@@ -41,7 +50,8 @@ const PdsSortableItem = class {
41
50
  }
42
51
  }
43
52
  render() {
44
- return (index.h(index.Host, { key: 'a401963153e64b33f47f8897f2e8a157557d625e', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (index.h("div", { key: 'e93df2aea5fcad497bd64f54b09a3e700141dfa6', class: "pds-sortable-item__handle" }, index.h("pds-icon", { key: '9454196233b1c12a232815a2a14f05e41721a152', "aria-hidden": "true", icon: index$1.handle }))), index.h("slot", { key: 'da456ae383e8fe7dd9375eada035bee755cdd684' }), this.enableActions && (index.h("div", { key: 'bed7efa1c242e59b547e5e09018b1aacb1c1b172', class: "pds-sortable-item__actions" }, index.h("slot", { key: 'c4563d2a50c3bb55108527ae1f0a68a84d5749a7', name: "sortable-item-actions" })))));
53
+ this.hostKeeper.record('pds-sortable-item');
54
+ return (index.h(index.Host, { key: '3f9098a7c938bfa6443f08fb8b0a7c7217230890', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (index.h("div", { key: '77718a6867ddd8bc029bb3ef995f6ee9a5999ce7', class: "pds-sortable-item__handle" }, index.h("pds-icon", { key: 'aad7f46e776ece85858798f8f1a1a50c9022b84f', "aria-hidden": "true", icon: index$1.handle }))), index.h("slot", { key: 'afa9346ec8fd7aa6132a15dd44d3b1cae24500b9' }), this.enableActions && (index.h("div", { key: 'c28c85391117542999c12d673879768394002c90', class: "pds-sortable-item__actions" }, index.h("slot", { key: '88ab53f3ba4ed47715e31935b861d9ab42342b32', name: "sortable-item-actions" })))));
45
55
  }
46
56
  get el() { return index.getElement(this); }
47
57
  };
@@ -1,6 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./index-D8Gl0bIB.js');
3
+ var index$1 = require('./index-BQjWfQXw.js');
4
+ var attributes = require('./attributes-DXvaSETR.js');
5
+ require('./keep-hydrated-iLS88j1Z.js');
4
6
 
5
7
  /**!
6
8
  * Sortable 1.15.7
@@ -2675,6 +2677,7 @@ const PdsSortable = class {
2675
2677
  * Determines the grabbable area for the `pds-sortable-item`.
2676
2678
  */
2677
2679
  this.handleType = 'row';
2680
+ this.hostKeeper = new attributes.HostStylingKeeper();
2678
2681
  }
2679
2682
  handleDisabledChange() {
2680
2683
  var _a;
@@ -2696,6 +2699,12 @@ const PdsSortable = class {
2696
2699
  }
2697
2700
  return classNames.join(' ');
2698
2701
  }
2702
+ connectedCallback() {
2703
+ this.hostKeeper.connect(this.el);
2704
+ }
2705
+ disconnectedCallback() {
2706
+ this.hostKeeper.disconnect();
2707
+ }
2699
2708
  componentDidLoad() {
2700
2709
  let sortableOptions = {
2701
2710
  animation: 150,
@@ -2712,7 +2721,9 @@ const PdsSortable = class {
2712
2721
  this.sortableInstance = Sortable.create(this.el, sortableOptions);
2713
2722
  }
2714
2723
  render() {
2715
- return (index$1.h(index$1.Host, { key: '6ff85345305337587c3d06b6f6c333125707efe8', class: this.classNames(), id: this.componentId }, index$1.h("slot", { key: 'e25c441574cc8b59bb1865a69af8691ce37ff341' })));
2724
+ const classNames = this.classNames();
2725
+ this.hostKeeper.record(classNames);
2726
+ return (index$1.h(index$1.Host, { key: 'fb6e9a79babf01980c04ee7208d195510493a7dc', class: classNames, id: this.componentId }, index$1.h("slot", { key: '5735ca3af531a736f07d1fafde8ae544d00a75bb' })));
2716
2727
  }
2717
2728
  get el() { return index$1.getElement(this); }
2718
2729
  static get watchers() { return {
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
4
  var form = require('./form-MhwfKTuo.js');
5
5
  var index$1 = require('./index-D-QQKB0y.js');
6
- var attributes = require('./attributes-oNMnBEnP.js');
6
+ var attributes = require('./attributes-DXvaSETR.js');
7
+ require('./keep-hydrated-iLS88j1Z.js');
7
8
 
8
9
  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)}`;
9
10
 
@@ -15,6 +16,7 @@ const PdsSwitch = class {
15
16
  this.pdsSwitchChange = index.createEvent(this, "pdsSwitchChange");
16
17
  this.inheritedAttributes = {};
17
18
  this._type = 'checkbox';
19
+ this.hostKeeper = new attributes.HostStylingKeeper();
18
20
  this.hasLabelSlot = false;
19
21
  /**
20
22
  * Determines the input 'checked' state.
@@ -58,6 +60,7 @@ const PdsSwitch = class {
58
60
  };
59
61
  }
60
62
  connectedCallback() {
63
+ this.hostKeeper.connect(this.el);
61
64
  // Initialize ElementInternals for form association (only once per element instance)
62
65
  if (this.el.attachInternals && !this.internals) {
63
66
  this.internals = this.el.attachInternals();
@@ -65,6 +68,9 @@ const PdsSwitch = class {
65
68
  // Expose type property on the element instance to match native form element behavior
66
69
  form.exposeTypeProperty(this.el, () => this._type);
67
70
  }
71
+ disconnectedCallback() {
72
+ this.hostKeeper.disconnect();
73
+ }
68
74
  componentDidLoad() {
69
75
  this.updateFormValue();
70
76
  }
@@ -99,9 +105,12 @@ const PdsSwitch = class {
99
105
  this.updateHasLabelSlot();
100
106
  }
101
107
  render() {
102
- return (index.h(index.Host, { key: 'b04295a8cc5acec33c5c6461516e9ec57ff9c396', class: this.switchClassNames(), "aria-disabled": this.disabled ? 'true' : null }, index.h("label", { key: 'f052e2409b0d7603598fd59bcdd382d6091cd794', htmlFor: this.componentId }, index.h("input", Object.assign({ key: 'd61df3ac3762af2dcc27a8800f7317ac03994ea3', "aria-describedby": form.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)), index.h("span", { key: '0f921ea88d5706c364b1d8e4e05afac95be9f092', class: this.hideLabel ? 'visually-hidden' : '' }, index.h("slot", { key: '10f20c7f761635be8d90580be85fd7d62e2968f3', name: "label", onSlotchange: this.updateHasLabelSlot }), !this.hasLabelSlot && this.label)), this.helperMessage &&
103
- index.h("div", { key: '97a0281aa88b9208128fa169740cc710beed5538', class: `pds-switch__message`, id: form.messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
104
- index.h("div", { key: '26dd988675278031577df77560557484a8187cd5', class: `pds-switch__message pds-switch__message--error`, id: form.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: 'ed674224e564f330ea797d0b4196442ad372ae99', icon: index$1.danger, size: "small" }), this.errorMessage)));
108
+ const hostClass = this.switchClassNames();
109
+ const ariaDisabled = this.disabled ? 'true' : null;
110
+ this.hostKeeper.record(hostClass, {}, { 'aria-disabled': ariaDisabled });
111
+ return (index.h(index.Host, { key: '6d4b51307f2619a99981e344f782f69871aabf0f', class: hostClass, "aria-disabled": ariaDisabled }, index.h("label", { key: '068ef3759e2bc3d9870cff36714de0e9cf558b2b', htmlFor: this.componentId }, index.h("input", Object.assign({ key: 'aa28fb67332bb2d81c09b6c749c1cb0f079e327f', "aria-describedby": form.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)), index.h("span", { key: 'd237980a9ce2abc04d57085df022f28dfa2768e4', class: this.hideLabel ? 'visually-hidden' : '' }, index.h("slot", { key: '83d0e2110cfdcd3208319302af237178dfd419a4', name: "label", onSlotchange: this.updateHasLabelSlot }), !this.hasLabelSlot && this.label)), this.helperMessage &&
112
+ index.h("div", { key: '137d9e5626b34ade33f68c4c24c3dcb154500dc6', class: `pds-switch__message`, id: form.messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
113
+ index.h("div", { key: '64c3b8884d0568e26953f67a95d045aa5731c41f', class: `pds-switch__message pds-switch__message--error`, id: form.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: 'f99f8045eb33d0c60518f3b4c6a0183170a50f4a', icon: index$1.danger, size: "small" }), this.errorMessage)));
105
114
  }
106
115
  static get formAssociated() { return true; }
107
116
  get el() { return index.getElement(this); }
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
4
  var reconnectedContent = require('./reconnected-content-CpnEQcTp.js');
5
+ require('./keep-hydrated-iLS88j1Z.js');
5
6
 
6
7
  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)}`;
7
8
 
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
+ require('./keep-hydrated-iLS88j1Z.js');
4
5
 
5
6
  const pdsTableBodyCss = () => `:host{border-color:inherit;display:table-row-group;vertical-align:middle}`;
6
7
 
@@ -1,8 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D8Gl0bIB.js');
3
+ var index = require('./index-BQjWfQXw.js');
4
4
  var scroll = require('./scroll-2XcoE_6Q.js');
5
5
  var truncationTooltip = require('./truncation-tooltip-CYgQfBLt.js');
6
+ require('./keep-hydrated-iLS88j1Z.js');
6
7
  require('./floating-ui.dom-Dc8Anyel.js');
7
8
 
8
9
  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}`;