@pine-ds/core 3.28.0 → 3.29.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 (325) hide show
  1. package/components/pds-avatar.js +1 -1
  2. package/components/pds-link2.js +1 -1
  3. package/components/pds-tab.js +1 -1
  4. package/components/pds-tabpanel.js +1 -1
  5. package/components/pds-tabs.js +1 -1
  6. package/components/pds-text2.js +1 -1
  7. package/components/pds-textarea.js +1 -1
  8. package/components/pds-toast.js +1 -1
  9. package/components/pds-tooltip.js +1 -1
  10. package/dist/cjs/{index-DBhfI2Jq.js → index-BdFrBXCD.js} +5 -1
  11. package/dist/cjs/{index-DGBoDsAL.js → index-CKNNY-lQ.js} +1 -1
  12. package/dist/cjs/loader.cjs.js +2 -2
  13. package/dist/cjs/mock-pds-modal.cjs.entry.js +1 -1
  14. package/dist/cjs/pds-accordion.cjs.entry.js +2 -2
  15. package/dist/cjs/pds-alert.cjs.entry.js +1 -1
  16. package/dist/cjs/pds-avatar.cjs.entry.js +38 -7
  17. package/dist/cjs/pds-box.cjs.entry.js +1 -1
  18. package/dist/cjs/pds-button.cjs.entry.js +2 -2
  19. package/dist/cjs/pds-checkbox.cjs.entry.js +2 -2
  20. package/dist/cjs/pds-chip.cjs.entry.js +2 -2
  21. package/dist/cjs/pds-combobox.cjs.entry.js +1 -1
  22. package/dist/cjs/pds-container.cjs.entry.js +1 -1
  23. package/dist/cjs/pds-copytext.cjs.entry.js +2 -2
  24. package/dist/cjs/pds-divider.cjs.entry.js +1 -1
  25. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
  26. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +1 -1
  27. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +1 -1
  28. package/dist/cjs/pds-filter.cjs.entry.js +2 -2
  29. package/dist/cjs/pds-filters.cjs.entry.js +1 -1
  30. package/dist/cjs/pds-icon.cjs.entry.js +1 -1
  31. package/dist/cjs/pds-image.cjs.entry.js +1 -1
  32. package/dist/cjs/pds-input.cjs.entry.js +2 -2
  33. package/dist/cjs/pds-link.cjs.entry.js +12 -5
  34. package/dist/cjs/pds-loader.cjs.entry.js +1 -1
  35. package/dist/cjs/pds-modal-content.cjs.entry.js +1 -1
  36. package/dist/cjs/pds-modal-footer.cjs.entry.js +1 -1
  37. package/dist/cjs/pds-modal-header.cjs.entry.js +1 -1
  38. package/dist/cjs/pds-modal.cjs.entry.js +1 -1
  39. package/dist/cjs/pds-multiselect.cjs.entry.js +2 -2
  40. package/dist/cjs/pds-popover.cjs.entry.js +1 -1
  41. package/dist/cjs/pds-progress.cjs.entry.js +1 -1
  42. package/dist/cjs/pds-property.cjs.entry.js +1 -1
  43. package/dist/cjs/pds-radio-group.cjs.entry.js +2 -2
  44. package/dist/cjs/pds-radio.cjs.entry.js +2 -2
  45. package/dist/cjs/pds-row.cjs.entry.js +1 -1
  46. package/dist/cjs/pds-select.cjs.entry.js +2 -2
  47. package/dist/cjs/pds-sortable-item.cjs.entry.js +2 -2
  48. package/dist/cjs/pds-sortable.cjs.entry.js +1 -1
  49. package/dist/cjs/pds-switch.cjs.entry.js +2 -2
  50. package/dist/cjs/pds-tab.cjs.entry.js +41 -6
  51. package/dist/cjs/pds-table-body.cjs.entry.js +1 -1
  52. package/dist/cjs/pds-table-cell.cjs.entry.js +1 -1
  53. package/dist/cjs/pds-table-head-cell.cjs.entry.js +2 -2
  54. package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
  55. package/dist/cjs/pds-table-row.cjs.entry.js +1 -1
  56. package/dist/cjs/pds-table.cjs.entry.js +1 -1
  57. package/dist/cjs/pds-tabpanel.cjs.entry.js +8 -3
  58. package/dist/cjs/pds-tabs.cjs.entry.js +74 -3
  59. package/dist/cjs/pds-text.cjs.entry.js +2 -2
  60. package/dist/cjs/pds-textarea.cjs.entry.js +6 -6
  61. package/dist/cjs/pds-toast.cjs.entry.js +4 -4
  62. package/dist/cjs/pds-tooltip.cjs.entry.js +3 -3
  63. package/dist/cjs/pine-core.cjs.js +2 -2
  64. package/dist/collection/components/pds-avatar/pds-avatar.css +29 -0
  65. package/dist/collection/components/pds-avatar/pds-avatar.js +103 -4
  66. package/dist/collection/components/pds-avatar/stories/pds-avatar.stories.js +23 -0
  67. package/dist/collection/components/pds-button/pds-button.js +1 -1
  68. package/dist/collection/components/pds-button/stories/pds-button.stories.js +25 -0
  69. package/dist/collection/components/pds-link/pds-link.css +10 -0
  70. package/dist/collection/components/pds-link/pds-link.js +32 -2
  71. package/dist/collection/components/pds-link/stories/pds-link.stories.js +14 -0
  72. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +4 -4
  73. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +161 -5
  74. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.css +9 -0
  75. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +29 -1
  76. package/dist/collection/components/pds-tabs/pds-tabs.css +14 -0
  77. package/dist/collection/components/pds-tabs/pds-tabs.js +146 -4
  78. package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +43 -0
  79. package/dist/collection/components/pds-text/pds-text.js +1 -1
  80. package/dist/collection/components/pds-textarea/pds-textarea.js +4 -4
  81. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  82. package/dist/collection/components/pds-tooltip/pds-tooltip.js +2 -2
  83. package/dist/docs.json +360 -6
  84. package/dist/esm/{index-D4ys0pep.js → index-BjlFq0VD.js} +1 -1
  85. package/dist/esm/{index-CaRgVPt7.js → index-NNDTPCWx.js} +5 -2
  86. package/dist/esm/loader.js +3 -3
  87. package/dist/esm/mock-pds-modal.entry.js +1 -1
  88. package/dist/esm/pds-accordion.entry.js +2 -2
  89. package/dist/esm/pds-alert.entry.js +1 -1
  90. package/dist/esm/pds-avatar.entry.js +38 -7
  91. package/dist/esm/pds-box.entry.js +1 -1
  92. package/dist/esm/pds-button.entry.js +2 -2
  93. package/dist/esm/pds-checkbox.entry.js +2 -2
  94. package/dist/esm/pds-chip.entry.js +2 -2
  95. package/dist/esm/pds-combobox.entry.js +1 -1
  96. package/dist/esm/pds-container.entry.js +1 -1
  97. package/dist/esm/pds-copytext.entry.js +2 -2
  98. package/dist/esm/pds-divider.entry.js +1 -1
  99. package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
  100. package/dist/esm/pds-dropdown-menu-separator.entry.js +1 -1
  101. package/dist/esm/pds-dropdown-menu.entry.js +1 -1
  102. package/dist/esm/pds-filter.entry.js +2 -2
  103. package/dist/esm/pds-filters.entry.js +1 -1
  104. package/dist/esm/pds-icon.entry.js +1 -1
  105. package/dist/esm/pds-image.entry.js +1 -1
  106. package/dist/esm/pds-input.entry.js +2 -2
  107. package/dist/esm/pds-link.entry.js +12 -5
  108. package/dist/esm/pds-loader.entry.js +1 -1
  109. package/dist/esm/pds-modal-content.entry.js +1 -1
  110. package/dist/esm/pds-modal-footer.entry.js +1 -1
  111. package/dist/esm/pds-modal-header.entry.js +1 -1
  112. package/dist/esm/pds-modal.entry.js +1 -1
  113. package/dist/esm/pds-multiselect.entry.js +2 -2
  114. package/dist/esm/pds-popover.entry.js +1 -1
  115. package/dist/esm/pds-progress.entry.js +1 -1
  116. package/dist/esm/pds-property.entry.js +1 -1
  117. package/dist/esm/pds-radio-group.entry.js +2 -2
  118. package/dist/esm/pds-radio.entry.js +2 -2
  119. package/dist/esm/pds-row.entry.js +1 -1
  120. package/dist/esm/pds-select.entry.js +2 -2
  121. package/dist/esm/pds-sortable-item.entry.js +2 -2
  122. package/dist/esm/pds-sortable.entry.js +1 -1
  123. package/dist/esm/pds-switch.entry.js +2 -2
  124. package/dist/esm/pds-tab.entry.js +41 -6
  125. package/dist/esm/pds-table-body.entry.js +1 -1
  126. package/dist/esm/pds-table-cell.entry.js +1 -1
  127. package/dist/esm/pds-table-head-cell.entry.js +2 -2
  128. package/dist/esm/pds-table-head.entry.js +1 -1
  129. package/dist/esm/pds-table-row.entry.js +1 -1
  130. package/dist/esm/pds-table.entry.js +1 -1
  131. package/dist/esm/pds-tabpanel.entry.js +8 -3
  132. package/dist/esm/pds-tabs.entry.js +74 -3
  133. package/dist/esm/pds-text.entry.js +2 -2
  134. package/dist/esm/pds-textarea.entry.js +6 -6
  135. package/dist/esm/pds-toast.entry.js +4 -4
  136. package/dist/esm/pds-tooltip.entry.js +3 -3
  137. package/dist/esm/pine-core.js +3 -3
  138. package/dist/esm-es5/{index-CaRgVPt7.js → index-NNDTPCWx.js} +2 -2
  139. package/dist/esm-es5/loader.js +1 -1
  140. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  141. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  142. package/dist/esm-es5/pds-alert.entry.js +1 -1
  143. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  144. package/dist/esm-es5/pds-box.entry.js +1 -1
  145. package/dist/esm-es5/pds-button.entry.js +1 -1
  146. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  147. package/dist/esm-es5/pds-chip.entry.js +1 -1
  148. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  149. package/dist/esm-es5/pds-container.entry.js +1 -1
  150. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  151. package/dist/esm-es5/pds-divider.entry.js +1 -1
  152. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  153. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  154. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  155. package/dist/esm-es5/pds-filter.entry.js +1 -1
  156. package/dist/esm-es5/pds-filters.entry.js +1 -1
  157. package/dist/esm-es5/pds-icon.entry.js +1 -1
  158. package/dist/esm-es5/pds-image.entry.js +1 -1
  159. package/dist/esm-es5/pds-input.entry.js +1 -1
  160. package/dist/esm-es5/pds-link.entry.js +1 -1
  161. package/dist/esm-es5/pds-loader.entry.js +1 -1
  162. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  163. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  164. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  165. package/dist/esm-es5/pds-modal.entry.js +1 -1
  166. package/dist/esm-es5/pds-multiselect.entry.js +1 -1
  167. package/dist/esm-es5/pds-popover.entry.js +1 -1
  168. package/dist/esm-es5/pds-progress.entry.js +1 -1
  169. package/dist/esm-es5/pds-property.entry.js +1 -1
  170. package/dist/esm-es5/pds-radio-group.entry.js +1 -1
  171. package/dist/esm-es5/pds-radio.entry.js +1 -1
  172. package/dist/esm-es5/pds-row.entry.js +1 -1
  173. package/dist/esm-es5/pds-select.entry.js +1 -1
  174. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  175. package/dist/esm-es5/pds-sortable.entry.js +1 -1
  176. package/dist/esm-es5/pds-switch.entry.js +1 -1
  177. package/dist/esm-es5/pds-tab.entry.js +1 -1
  178. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  179. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  180. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  181. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  182. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  183. package/dist/esm-es5/pds-table.entry.js +1 -1
  184. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  185. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  186. package/dist/esm-es5/pds-text.entry.js +1 -1
  187. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  188. package/dist/esm-es5/pds-toast.entry.js +1 -1
  189. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  190. package/dist/esm-es5/pine-core.js +1 -1
  191. package/dist/pine-core/p-02805a93.system.entry.js +1 -0
  192. package/dist/pine-core/{p-e70c9002.entry.js → p-02977c6f.entry.js} +1 -1
  193. package/dist/pine-core/{p-4e49712d.entry.js → p-054f7011.entry.js} +1 -1
  194. package/dist/pine-core/{p-571d6bef.system.entry.js → p-076aaa00.system.entry.js} +1 -1
  195. package/dist/pine-core/{p-3fa80c5a.system.entry.js → p-092a72d2.system.entry.js} +1 -1
  196. package/dist/pine-core/p-0a09ccbe.entry.js +1 -0
  197. package/dist/pine-core/p-0a4f2d5f.system.entry.js +1 -0
  198. package/dist/pine-core/{p-f2cf8e76.entry.js → p-0d6daa35.entry.js} +1 -1
  199. package/dist/pine-core/p-12154189.system.entry.js +1 -0
  200. package/dist/pine-core/{p-44f58d33.system.entry.js → p-1deded6e.system.entry.js} +1 -1
  201. package/dist/pine-core/{p-fa81009f.system.entry.js → p-1f20608e.system.entry.js} +1 -1
  202. package/dist/pine-core/{p-27ac77c3.entry.js → p-1fb985bb.entry.js} +1 -1
  203. package/dist/pine-core/{p-855dfc31.system.entry.js → p-20e0d06c.system.entry.js} +1 -1
  204. package/dist/pine-core/p-24fcf841.system.entry.js +1 -0
  205. package/dist/pine-core/{p-c273210a.entry.js → p-292cf8f9.entry.js} +1 -1
  206. package/dist/pine-core/{p-db1572a3.entry.js → p-2a74b396.entry.js} +1 -1
  207. package/dist/pine-core/p-2d1cc047.entry.js +1 -0
  208. package/dist/pine-core/{p-002c420f.system.entry.js → p-2ec460e1.system.entry.js} +1 -1
  209. package/dist/pine-core/{p-e0cfb931.system.entry.js → p-2fc127b4.system.entry.js} +1 -1
  210. package/dist/pine-core/{p-d09ae46d.system.entry.js → p-3170d53b.system.entry.js} +1 -1
  211. package/dist/pine-core/{p-0451fdf7.entry.js → p-39ad92fc.entry.js} +1 -1
  212. package/dist/pine-core/{p-974bf0c5.entry.js → p-39c6e6c9.entry.js} +1 -1
  213. package/dist/pine-core/{p-d5c1f85e.system.entry.js → p-3c6300a8.system.entry.js} +1 -1
  214. package/dist/pine-core/{p-8a00e32b.system.entry.js → p-3e3b3bf6.system.entry.js} +1 -1
  215. package/dist/pine-core/{p-52f7115b.entry.js → p-43a1d9d7.entry.js} +1 -1
  216. package/dist/pine-core/{p-13ec2343.entry.js → p-43ef94bc.entry.js} +1 -1
  217. package/dist/pine-core/{p-618ba6d5.system.entry.js → p-464ec4eb.system.entry.js} +1 -1
  218. package/dist/pine-core/{p-ee6f914c.entry.js → p-47708864.entry.js} +1 -1
  219. package/dist/pine-core/{p-ccb889d8.system.entry.js → p-507e831f.system.entry.js} +1 -1
  220. package/dist/pine-core/p-5c229a7f.entry.js +1 -0
  221. package/dist/pine-core/{p-5c6c2f79.system.entry.js → p-5c7a72aa.system.entry.js} +1 -1
  222. package/dist/pine-core/{p-71ca8845.system.entry.js → p-5e6e8d4e.system.entry.js} +1 -1
  223. package/dist/pine-core/{p-3ad9bcef.system.entry.js → p-5f4d2c5c.system.entry.js} +1 -1
  224. package/dist/pine-core/{p-6a2373d0.system.entry.js → p-606418b7.system.entry.js} +1 -1
  225. package/dist/pine-core/{p-22bfa998.entry.js → p-6254d112.entry.js} +1 -1
  226. package/dist/pine-core/{p-5a2df1e2.entry.js → p-62f75f84.entry.js} +1 -1
  227. package/dist/pine-core/{p-835d9f18.system.entry.js → p-69e47ffc.system.entry.js} +1 -1
  228. package/dist/pine-core/p-6f82e8dc.system.entry.js +1 -0
  229. package/dist/pine-core/{p-b1b317a5.entry.js → p-6fb68ad1.entry.js} +1 -1
  230. package/dist/pine-core/{p-1e3beca4.system.entry.js → p-7153efaf.system.entry.js} +1 -1
  231. package/dist/pine-core/{p-a982ac91.system.entry.js → p-72a1b563.system.entry.js} +1 -1
  232. package/dist/pine-core/{p-7aca41d9.system.entry.js → p-7803c5b6.system.entry.js} +1 -1
  233. package/dist/pine-core/{p-74e06c8d.system.entry.js → p-78cd9f97.system.entry.js} +1 -1
  234. package/dist/pine-core/{p-edf4e4eb.system.entry.js → p-79598750.system.entry.js} +1 -1
  235. package/dist/pine-core/p-7a7954b2.system.entry.js +1 -0
  236. package/dist/pine-core/{p-3ba36512.system.entry.js → p-7b85115b.system.entry.js} +1 -1
  237. package/dist/pine-core/{p-83eb33d4.entry.js → p-7bac161d.entry.js} +1 -1
  238. package/dist/pine-core/{p-bdf18687.entry.js → p-7d15b65e.entry.js} +1 -1
  239. package/dist/pine-core/{p-621fdce1.entry.js → p-7e065b59.entry.js} +1 -1
  240. package/dist/pine-core/{p-041243ee.system.entry.js → p-82af7d58.system.entry.js} +1 -1
  241. package/dist/pine-core/{p-73b81009.entry.js → p-83e8f145.entry.js} +1 -1
  242. package/dist/pine-core/{p-c7c17fe3.system.entry.js → p-85f7428b.system.entry.js} +1 -1
  243. package/dist/pine-core/{p-ae840ec4.entry.js → p-87ba6d2b.entry.js} +1 -1
  244. package/dist/pine-core/{p-e48161a5.entry.js → p-8c0040c4.entry.js} +1 -1
  245. package/dist/pine-core/{p-a659cce1.entry.js → p-8c85f53a.entry.js} +1 -1
  246. package/dist/pine-core/{p-20f39b93.system.entry.js → p-8d6fd5a7.system.entry.js} +1 -1
  247. package/dist/pine-core/{p-7247fb4f.entry.js → p-902b5790.entry.js} +1 -1
  248. package/dist/pine-core/{p-3f19666c.entry.js → p-92f648ba.entry.js} +1 -1
  249. package/dist/pine-core/{p-e620e492.system.entry.js → p-9374cf48.system.entry.js} +1 -1
  250. package/dist/pine-core/p-978b848b.system.entry.js +1 -0
  251. package/dist/pine-core/{p-babd0607.system.entry.js → p-9aaee1e9.system.entry.js} +1 -1
  252. package/dist/pine-core/p-9ba86e34.entry.js +1 -0
  253. package/dist/pine-core/{p-4abec102.system.entry.js → p-9f041a63.system.entry.js} +2 -2
  254. package/dist/pine-core/p-B1rytYxP.system.js +1 -0
  255. package/dist/pine-core/{p-CdwliqhD.system.js → p-DVZjHa4_.system.js} +2 -2
  256. package/dist/pine-core/p-NNDTPCWx.js +2 -0
  257. package/dist/pine-core/{p-ba88ff60.system.entry.js → p-a03c12a4.system.entry.js} +1 -1
  258. package/dist/pine-core/{p-2cc1ec4c.entry.js → p-a9ef5295.entry.js} +1 -1
  259. package/dist/pine-core/{p-334b7c30.entry.js → p-ac2775b5.entry.js} +1 -1
  260. package/dist/pine-core/{p-a1750a54.entry.js → p-b0058cb0.entry.js} +1 -1
  261. package/dist/pine-core/p-b0674b8d.entry.js +1 -0
  262. package/dist/pine-core/{p-5f36fafa.system.entry.js → p-b5c760c8.system.entry.js} +1 -1
  263. package/dist/pine-core/{p-3a1b7302.system.entry.js → p-b6812452.system.entry.js} +1 -1
  264. package/dist/pine-core/{p-2b0cb8c4.system.entry.js → p-b89583e7.system.entry.js} +1 -1
  265. package/dist/pine-core/{p-5584a56b.entry.js → p-b9380ce8.entry.js} +1 -1
  266. package/dist/pine-core/{p-568bb210.system.entry.js → p-ba54470a.system.entry.js} +1 -1
  267. package/dist/pine-core/{p-7a4da839.entry.js → p-bf759fc0.entry.js} +1 -1
  268. package/dist/pine-core/{p-791d357a.entry.js → p-c1932447.entry.js} +1 -1
  269. package/dist/pine-core/{p-cce83ef0.entry.js → p-c2688710.entry.js} +1 -1
  270. package/dist/pine-core/{p-46de2438.entry.js → p-c35fe2e2.entry.js} +1 -1
  271. package/dist/pine-core/{p-ef71710b.system.entry.js → p-c3748812.system.entry.js} +2 -2
  272. package/dist/pine-core/{p-59a5dd77.system.entry.js → p-c52ad43b.system.entry.js} +1 -1
  273. package/dist/pine-core/{p-3876b9be.entry.js → p-ce715993.entry.js} +1 -1
  274. package/dist/pine-core/{p-587a15ee.system.entry.js → p-cf389430.system.entry.js} +1 -1
  275. package/dist/pine-core/{p-7874fe2b.entry.js → p-d037308b.entry.js} +1 -1
  276. package/dist/pine-core/{p-52e9ec4f.entry.js → p-d281464e.entry.js} +1 -1
  277. package/dist/pine-core/{p-04f8b32a.entry.js → p-d70201bb.entry.js} +1 -1
  278. package/dist/pine-core/{p-9865431f.system.entry.js → p-d9cb26fe.system.entry.js} +1 -1
  279. package/dist/pine-core/{p-44388b8f.system.entry.js → p-dc460e2d.system.entry.js} +1 -1
  280. package/dist/pine-core/{p-25f8690f.entry.js → p-dc48f603.entry.js} +1 -1
  281. package/dist/pine-core/{p-01dba061.entry.js → p-dcc4ee5e.entry.js} +1 -1
  282. package/dist/pine-core/{p-f366f064.entry.js → p-def5d3d3.entry.js} +1 -1
  283. package/dist/pine-core/{p-2af1d1d3.system.entry.js → p-e0fb06ea.system.entry.js} +1 -1
  284. package/dist/pine-core/{p-fda3f3c6.entry.js → p-e4b69d10.entry.js} +1 -1
  285. package/dist/pine-core/{p-ae2b466a.system.entry.js → p-e81b4d04.system.entry.js} +1 -1
  286. package/dist/pine-core/{p-c3a99f39.entry.js → p-eb42ca18.entry.js} +1 -1
  287. package/dist/pine-core/{p-59c60e5b.entry.js → p-ebe218f8.entry.js} +1 -1
  288. package/dist/pine-core/{p-889fce8a.entry.js → p-ec2c0e57.entry.js} +2 -2
  289. package/dist/pine-core/{p-fb68e503.system.entry.js → p-eed4b552.system.entry.js} +1 -1
  290. package/dist/pine-core/p-f6d1469d.entry.js +1 -0
  291. package/dist/pine-core/{p-65fb166c.system.entry.js → p-fb10caff.system.entry.js} +1 -1
  292. package/dist/pine-core/{p-0bf56f61.entry.js → p-ff1e9a32.entry.js} +1 -1
  293. package/dist/pine-core/p-ff3399ed.entry.js +1 -0
  294. package/dist/pine-core/pine-core.css +1 -1
  295. package/dist/pine-core/pine-core.esm.js +1 -1
  296. package/dist/pine-core/pine-core.js +1 -1
  297. package/dist/types/components/pds-avatar/pds-avatar.d.ts +24 -0
  298. package/dist/types/components/pds-button/pds-button.d.ts +1 -1
  299. package/dist/types/components/pds-link/pds-link.d.ts +7 -0
  300. package/dist/types/components/pds-tabs/pds-tab/pds-tab.d.ts +42 -0
  301. package/dist/types/components/pds-tabs/pds-tabpanel/pds-tabpanel.d.ts +5 -0
  302. package/dist/types/components/pds-tabs/pds-tabs.d.ts +25 -2
  303. package/dist/types/components.d.ts +134 -5
  304. package/hydrate/index.js +199 -33
  305. package/hydrate/index.mjs +199 -33
  306. package/package.json +2 -2
  307. package/dist/pine-core/p-003f91b1.system.entry.js +0 -1
  308. package/dist/pine-core/p-006398c3.system.entry.js +0 -1
  309. package/dist/pine-core/p-1f4910b0.system.entry.js +0 -1
  310. package/dist/pine-core/p-63e0d4a5.system.entry.js +0 -1
  311. package/dist/pine-core/p-6c5aacad.entry.js +0 -1
  312. package/dist/pine-core/p-73dd2a2b.entry.js +0 -1
  313. package/dist/pine-core/p-7520a715.system.entry.js +0 -1
  314. package/dist/pine-core/p-7766e970.entry.js +0 -1
  315. package/dist/pine-core/p-7b954dbf.entry.js +0 -1
  316. package/dist/pine-core/p-8065c732.entry.js +0 -1
  317. package/dist/pine-core/p-C61CFP22.system.js +0 -1
  318. package/dist/pine-core/p-CaRgVPt7.js +0 -2
  319. package/dist/pine-core/p-ab957ace.system.entry.js +0 -1
  320. package/dist/pine-core/p-af48e6ae.entry.js +0 -1
  321. package/dist/pine-core/p-e291db30.entry.js +0 -1
  322. package/dist/pine-core/p-e77c5c08.system.entry.js +0 -1
  323. /package/dist/esm-es5/{index-D4ys0pep.js → index-BjlFq0VD.js} +0 -0
  324. /package/dist/pine-core/{p-D4ys0pep.js → p-BjlFq0VD.js} +0 -0
  325. /package/dist/pine-core/{p-C62JIZmE.system.js → p-WYNNo1N0.system.js} +0 -0
package/hydrate/index.js CHANGED
@@ -3156,6 +3156,9 @@ var setContentReference = (elm) => {
3156
3156
  contentRefElm["s-cn"] = true;
3157
3157
  insertBefore(elm, contentRefElm, elm.firstChild);
3158
3158
  };
3159
+
3160
+ // src/runtime/fragment.ts
3161
+ var Fragment = (_, children) => children;
3159
3162
  var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
3160
3163
  if (listeners && win.document) {
3161
3164
  listeners.map(([flags, name, method]) => {
@@ -5549,7 +5552,7 @@ class MockPdsModal {
5549
5552
  }; }
5550
5553
  }
5551
5554
 
5552
- /* pds-icons v9.21.0, ES Modules */
5555
+ /* pds-icons v10.2.0, ES Modules */
5553
5556
 
5554
5557
  const addCircle = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' class='pdsicon'><path fill-rule='evenodd' d='M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18M1 12C1 5.925 5.925 1 12 1s11 4.925 11 11-4.925 11-11 11S1 18.075 1 12m11-5a1 1 0 0 1 1 1v3h3a1 1 0 1 1 0 2h-3v3a1 1 0 1 1-2 0v-3H8a1 1 0 1 1 0-2h3V8a1 1 0 0 1 1-1'/></svg>";
5555
5558
  const caretDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' class='pdsicon'><path fill-rule='evenodd' d='M5.293 8.293a1 1 0 0 1 1.414 0L12 13.586l5.293-5.293a1 1 0 1 1 1.414 1.414l-6 6a1 1 0 0 1-1.414 0l-6-6a1 1 0 0 1 0-1.414'/></svg>";
@@ -5711,7 +5714,7 @@ class PdsAlert {
5711
5714
  }; }
5712
5715
  }
5713
5716
 
5714
- const pdsAvatarCss = () => `:host{display:inline-block}div{--color-background-container:var(--pine-color-background-container-hover);-ms-flex-align:center;align-items:center;background-color:var(--color-background-container);border-radius:var(--border-radius-admin-round, var(--pine-border-radius-full));display:-ms-inline-flexbox;display:inline-flex;-ms-flex-pack:center;justify-content:center;position:relative}:host(.pds-avatar--admin) div{--border-radius-admin-round:var(--pine-dimension-150);border-radius:var(--border-radius-admin-round)}:host(.pds-avatar--has-image) div{background:transparent}@supports selector(:has){div:has(img){background-color:transparent}}.pds-avatar__button{-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--pine-dimension-none);border-radius:var(--pine-border-radius-full);cursor:pointer;display:-ms-flexbox;display:flex;padding:var(--pine-dimension-none)}.pds-avatar__button:focus-visible{outline:var(--pine-outline-focus)}.pds-avatar__badge{background-color:transparent;border:var(--pine-dimension-none);border-color:transparent;border-radius:var(--pine-border-radius-round);inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);position:absolute}img{border-radius:var(--border-radius-admin-round, var(--pine-border-radius-full));height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.pds-avatar__initials{color:var(--pine-color-brand);fill:var(--pine-color-brand);font-size:var(--pine-font-size-085);font-weight:var(--pine-font-weight-semi-bold);height:100%;text-align:center;width:100%}.pds-avatar__initials text{text-anchor:middle}`;
5717
+ const pdsAvatarCss = () => `:host{display:inline-block}div{--color-background-container:var(--pine-color-background-container-hover);-ms-flex-align:center;align-items:center;background-color:var(--color-background-container);border-radius:var(--border-radius-admin-round, var(--pine-border-radius-full));display:-ms-inline-flexbox;display:inline-flex;-ms-flex-pack:center;justify-content:center;position:relative}:host(.pds-avatar--admin) div{--border-radius-admin-round:var(--pine-dimension-150);border-radius:var(--border-radius-admin-round)}:host(.pds-avatar--has-image) div{background:transparent}@supports selector(:has){div:has(img){background-color:transparent}}.pds-avatar__button{-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--pine-dimension-none);border-radius:var(--pine-border-radius-full);cursor:pointer;display:-ms-flexbox;display:flex;padding:var(--pine-dimension-none)}.pds-avatar__button:focus-visible{outline:var(--pine-outline-focus)}.pds-avatar__badge{background-color:transparent;border:var(--pine-dimension-none);border-color:transparent;border-radius:var(--pine-border-radius-round);inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);position:absolute}:host([status=online]){--pds-avatar-status-color:var(--pine-color-green-500)}:host([status=away]){--pds-avatar-status-color:var(--pine-color-yellow-500)}:host([status=offline]){--pds-avatar-status-color:var(--pine-color-background-inset-emphasized)}.pds-avatar__status{background-color:var(--pds-avatar-status-color, var(--pine-color-background-inset-emphasized));block-size:28%;border-radius:var(--pine-border-radius-full);-webkit-box-shadow:0 0 0 var(--pine-border-width-thick) var(--pine-color-background-container);box-shadow:0 0 0 var(--pine-border-width-thick) var(--pine-color-background-container);inline-size:28%;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);min-block-size:var(--pine-dimension-100);min-inline-size:var(--pine-dimension-100);position:absolute}:host(.pds-avatar--status-ring) div{-webkit-box-shadow:0 0 0 var(--pine-border-width-thick) var(--pds-avatar-status-color, var(--pine-color-background-inset-emphasized));box-shadow:0 0 0 var(--pine-border-width-thick) var(--pds-avatar-status-color, var(--pine-color-background-inset-emphasized))}img{border-radius:var(--border-radius-admin-round, var(--pine-border-radius-full));height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.pds-avatar__initials{color:var(--pine-color-brand);fill:var(--pine-color-brand);font-size:var(--pine-font-size-085);font-weight:var(--pine-font-weight-semi-bold);height:100%;text-align:center;width:100%}.pds-avatar__initials text{text-anchor:middle}`;
5715
5718
 
5716
5719
  /**
5717
5720
  * @part asset-wrapper
@@ -5751,6 +5754,21 @@ class PdsAvatar {
5751
5754
  * @defaultValue lg
5752
5755
  */
5753
5756
  this.size = 'lg';
5757
+ /**
5758
+ * Displays a presence status indicator (a dot) on the avatar: `online`
5759
+ * (success), `away` (warning), or `offline` (neutral). For a simple
5760
+ * active/inactive presence, map active to `online` and inactive to `offline`.
5761
+ * Takes precedence over `badge` — they share the same corner, so the badge is
5762
+ * hidden while `status` is set.
5763
+ * @defaultValue null
5764
+ */
5765
+ this.status = null;
5766
+ /**
5767
+ * Determines whether a ring is shown around the avatar in the `status` color.
5768
+ * Has no effect unless `status` is set.
5769
+ * @defaultValue false
5770
+ */
5771
+ this.statusRing = false;
5754
5772
  /**
5755
5773
  * Determines the variant of avatar. Changes appearance accordingly.
5756
5774
  * @defaultValue customer
@@ -5767,7 +5785,7 @@ class PdsAvatar {
5767
5785
  height: this.avatarSize(),
5768
5786
  width: this.avatarSize()
5769
5787
  };
5770
- return (hAsync("div", { style: style, part: "asset-wrapper" }, this.renderIconOrImage(), this.renderBadge()));
5788
+ return (hAsync("div", { style: style, part: "asset-wrapper" }, this.renderIconOrImage(), this.renderBadge(), this.renderStatus()));
5771
5789
  };
5772
5790
  this.renderAvatar = () => {
5773
5791
  return (this.dropdown
@@ -5776,11 +5794,26 @@ class PdsAvatar {
5776
5794
  :
5777
5795
  this.renderAssetWrapper());
5778
5796
  };
5779
- this.renderBadge = () => (this.badge
5797
+ this.renderBadge = () => (
5798
+ // `badge` and `status` share the bottom-end corner; `status` wins so the
5799
+ // presence dot is never painted over the badge.
5800
+ this.badge && !this.status
5780
5801
  // Percentage is average size of icon in relation to total avatar size
5781
5802
  // of all preset sizes found in Figma.
5782
5803
  // Used to allow icons to scale to container size
5783
5804
  && hAsync("pds-icon", { color: "var(--pine-color-purple-600)", class: "pds-avatar__badge", icon: checkCircleFilled, size: "33.53%" }));
5805
+ this.renderStatus = () => {
5806
+ var _a;
5807
+ if (!this.status)
5808
+ return null;
5809
+ // Inside the dropdown trigger, the button's aria-label owns the accessible
5810
+ // name, so the dot's own label is never announced. Mark it decorative there
5811
+ // and let consumers convey presence via `triggerLabel`.
5812
+ if (this.dropdown) {
5813
+ return hAsync("span", { class: "pds-avatar__status", part: "status", "aria-hidden": "true" });
5814
+ }
5815
+ return (hAsync("span", { class: "pds-avatar__status", part: "status", role: "img", "aria-label": (_a = this.statusLabel) !== null && _a !== void 0 ? _a : `${this.status} status` }));
5816
+ };
5784
5817
  this.renderIconOrImage = () => {
5785
5818
  if (this.image) {
5786
5819
  return hAsync("img", { alt: this.alt, src: this.image });
@@ -5797,7 +5830,8 @@ class PdsAvatar {
5797
5830
  'pds-avatar': true,
5798
5831
  [`pds-avatar--has-image`]: this.image !== '' && this.image !== null, // Remove when FF supports :has selector
5799
5832
  [`pds-avatar--has-initials`]: this.initials !== '' && this.initials !== null,
5800
- [`pds-avatar--${this.variant}`]: this.variant === 'admin'
5833
+ [`pds-avatar--${this.variant}`]: this.variant === 'admin',
5834
+ [`pds-avatar--status-ring`]: !!this.status && this.statusRing,
5801
5835
  });
5802
5836
  }
5803
5837
  avatarSize() {
@@ -5816,7 +5850,7 @@ class PdsAvatar {
5816
5850
  }
5817
5851
  }
5818
5852
  render() {
5819
- return (hAsync(Host, { key: 'd8c417ed6fca497bac5bb51a184b1f7d0077bc03', id: this.componentId, class: Object.assign({}, this.classNames()) }, this.renderAvatar()));
5853
+ return (hAsync(Host, { key: '594604d25190002ec166626b4a4a1a9a6be875d8', id: this.componentId, class: Object.assign({}, this.classNames()) }, this.renderAvatar()));
5820
5854
  }
5821
5855
  static get style() { return pdsAvatarCss(); }
5822
5856
  static get cmpMeta() { return {
@@ -5830,12 +5864,15 @@ class PdsAvatar {
5830
5864
  "image": [1],
5831
5865
  "initials": [1],
5832
5866
  "size": [513],
5867
+ "status": [513],
5868
+ "statusLabel": [1, "status-label"],
5869
+ "statusRing": [4, "status-ring"],
5833
5870
  "variant": [513],
5834
5871
  "triggerLabel": [1, "trigger-label"]
5835
5872
  },
5836
5873
  "$listeners$": undefined,
5837
5874
  "$lazyBundleId$": "-",
5838
- "$attrsToReflect$": [["size", "size"], ["variant", "variant"]]
5875
+ "$attrsToReflect$": [["size", "size"], ["status", "status"], ["variant", "variant"]]
5839
5876
  }; }
5840
5877
  }
5841
5878
 
@@ -6180,7 +6217,7 @@ class PdsBox {
6180
6217
  const pdsButtonCss = () => `:host{--pds-button-background:var(--pds-button-color-background-default);--pds-button-border:var(--pine-border);--pds-button-border-radius:var(--pine-border-radius-full);--pds-button-border-radius-start-end:var(--pine-border-radius-full);--pds-button-border-radius-start-start:var(--pine-border-radius-full);--pds-button-border-radius-end-end:var(--pine-border-radius-full);--pds-button-border-radius-end-start:var(--pine-border-radius-full);--pds-button-min-height:var(--pine-dimension-450);--pds-button-outline-offset:var(--pine-border-width);--pds-button-color-border-default:transparent;--pds-button-color-border-disabled:transparent;--pds-button-color-border-focus:transparent;--pds-button-color-border-hover:transparent;--button-loader-color:var(--pds-button-color-text-default);display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}:host([full-width=true]){display:-ms-flexbox;display:flex;width:100%}:host([full-width=true]) a,:host([full-width=true]) button{-ms-flex-pack:center;justify-content:center;width:100%}:host([full-width=true]) .pds-button__content{-ms-flex-pack:center;justify-content:center;text-align:center}:host([loading=true]){cursor:wait;pointer-events:none}:host([aria-disabled=true]){pointer-events:none}.pds-button{--pds-loader-color:var(--pds-button-color-text-default);-ms-flex-align:center;align-items:center;background-color:var(--pds-button-background, var(--pds-button-color-background-default));border:var(--pds-button-border);border-color:var(--pds-button-color-border-default);border-radius:var(--pds-button-border-radius);border-end-end-radius:var(--pds-button-border-radius-end-end, var(--pds-button-border-radius));border-end-start-radius:var(--pds-button-border-radius-end-start, var(--pds-button-border-radius));border-start-end-radius:var(--pds-button-border-radius-start-end, var(--pds-button-border-radius));border-start-start-radius:var(--pds-button-border-radius-start-start, var(--pds-button-border-radius));-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--pds-button-color-text-default);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-brand-label);letter-spacing:var(--pine-letter-spacing);min-height:var(--pds-button-min-height);padding:calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-sm);position:relative;text-decoration:none}.pds-button pds-icon{color:currentColor;fill:currentColor}.pds-button:hover{background-color:var(--pds-button-color-background-hover);border-color:var(--pds-button-color-border-hover)}.pds-button:focus-visible{border-color:var(--pds-button-color-border-focus);-webkit-box-shadow:var(--pds-button-box-shadow-focus, none);box-shadow:var(--pds-button-box-shadow-focus, none);outline:var(--pds-button-outline-focus, var(--pine-outline-focus));outline-offset:var(--pds-button-outline-offset)}.pds-button:disabled{background-color:var(--pds-button-color-background-disabled);border-color:var(--pds-button-color-border-disabled);color:var(--pds-button-color-text-disabled);pointer-events:none}.pds-button--primary{--pds-button-color-background-default:var(--pine-color-primary);--pds-button-color-background-hover:var(--pine-color-primary-hover);--pds-button-color-background-disabled:var(--pine-color-primary-disabled);--pds-button-color-border-default:var(--pine-color-primary);--pds-button-color-border-hover:var(--pine-color-primary-hover);--pds-button-color-text-default:var(--pine-color-text-primary);--pds-button-color-text-disabled:var(--pine-color-text-primary-disabled);--pds-button-color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--accent{--pds-button-color-background-default:var(--pine-color-accent);--pds-button-color-background-hover:var(--pine-color-accent-hover);--pds-button-color-background-disabled:var(--pine-color-accent-disabled);--pds-button-color-border-default:var(--pine-color-accent);--pds-button-color-border-hover:var(--pine-color-accent-hover);--pds-button-color-text-default:var(--pine-color-white);--pds-button-color-text-disabled:var(--pine-color-text-accent-disabled);--pds-button-color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive{--pds-button-color-background-default:var(--pine-color-danger);--pds-button-color-background-hover:var(--pine-color-danger-hover);--pds-button-color-background-disabled:var(--pine-color-danger-disabled);--pds-button-color-border-default:var(--pine-color-danger);--pds-button-color-border-hover:var(--pine-color-danger-hover);--pds-button-color-text-default:var(--pine-color-white);--pds-button-color-text-disabled:var(--pine-color-text-danger-disabled);--pds-button-color-outline:var(--pine-color-focus-ring-danger);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-button--secondary,.pds-button--disclosure{--pds-button-color-background-default:var(--pine-color-secondary);--pds-button-color-background-hover:var(--pine-color-secondary-hover);--pds-button-color-background-disabled:var(--pine-color-secondary-disabled);--pds-button-color-border-disabled:var(--pine-color-border-disabled);--pds-button-color-border-focus:var(--pine-color-border);--pds-button-color-border-hover:var(--pine-color-border-hover);--pds-button-color-border-default:var(--pine-color-border);--pds-button-color-text-default:var(--pine-color-text-secondary);--pds-button-color-text-disabled:var(--pine-color-text-secondary-disabled);--pds-button-color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--secondary:hover,.pds-button--disclosure:hover{background-color:var(--pine-color-secondary-hover)}.pds-button--tertiary{--pds-button-color-background-default:transparent;--pds-button-color-background-hover:var(--pine-color-background-muted);--pds-button-color-background-disabled:transparent;--pds-button-color-border-default:transparent;--pds-button-color-border-hover:var(--pine-color-background-muted);--pds-button-color-border-disabled:transparent;--pds-button-color-text-default:var(--pine-color-text-secondary);--pds-button-color-text-disabled:var(--pine-color-text-secondary-disabled);--pds-button-color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--filter{--pds-button-color-background-default:var(--pine-color-background-container);--pds-button-color-background-hover:var(--pine-color-background-subtle);--pds-button-color-background-disabled:var(--pine-color-white);--pds-button-color-border-default:transparent;--pds-button-color-border-hover:transparent;--pds-button-color-border-focus:transparent;--pds-button-color-text-default:var(--pine-color-text-secondary);--pds-button-color-text-hover:var(--pine-color-text-hover);--pds-button-color-text-disabled:var(--pine-color-text-disabled);--pds-button-color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary);--pds-button-border-radius:var(--pine-dimension-125);--pds-button-border-radius-start-end:var(--pine-dimension-125);--pds-button-border-radius-start-start:var(--pine-dimension-125);--pds-button-border-radius-end-end:var(--pine-dimension-125);--pds-button-border-radius-end-start:var(--pine-dimension-125);padding:var(--pine-dimension-xs) var(--pine-dimension-sm)}.pds-button--filter:disabled{background-color:var(--pine-color-background-container)}.pds-button--filter:hover{color:var(--pds-button-color-text-hover)}.pds-button--unstyled{--pds-button-color-background-default:transparent;--pds-button-color-background-hover:transparent;--pds-button-color-background-disabled:transparent;--pds-button-color-text-default:var(--pine-color-text);--button-loader-color:var(--pine-color-text);border-width:var(--pine-dimension-none);margin:var(--pine-dimension-none);min-height:auto;padding:var(--pine-dimension-none);width:inherit}.pds-button__content{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;gap:var(--pine-dimension-xs);position:relative;width:100%}.pds-button__icon{display:-ms-inline-flexbox;display:inline-flex}.pds-button__icon--empty{display:none}.pds-button__text{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;white-space:nowrap}.pds-button__icon--hidden,.pds-button__text--hidden{opacity:0}.pds-button__loader{height:var(--pine-dimension-250);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:var(--pine-dimension-250)}.pds-button--loading{cursor:wait;pointer-events:none}.pds-button--loading .pds-button__loader pds-loader{--loader-color:var(--button-loader-color)}.pds-button--small{min-height:var(--pine-dimension-400);padding:calc(var(--pine-dimension-2xs) - var(--pine-border-width)) var(--pine-dimension-sm)}.pds-button--micro{font-size:var(--pine-font-size-085);min-height:var(--pine-dimension-300);padding:var(--pine-dimension-025) var(--pine-dimension-xs)}.pds-button--icon-only{-ms-flex-align:center;align-items:center;border-radius:var(--pine-border-radius-full);height:var(--button-dimension);-ms-flex-pack:center;justify-content:center;min-height:var(--button-dimension);min-width:var(--button-dimension);padding:var(--pine-dimension-xs);width:var(--button-dimension)}.pds-button--icon-only .pds-button__content{height:100%;-ms-flex-pack:center;justify-content:center;width:100%}.pds-button--icon-only .pds-button__text--hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pds-button--icon-only.pds-button--small{height:var(--pine-dimension-400);min-height:var(--pine-dimension-400);min-width:var(--pine-dimension-400);padding:var(--pine-dimension-2xs);width:var(--pine-dimension-400)}.pds-button--icon-only.pds-button--micro{height:var(--pine-dimension-300);min-height:var(--pine-dimension-300);min-width:var(--pine-dimension-300);padding:var(--pine-dimension-3xs);width:var(--pine-dimension-300)}`;
6181
6218
 
6182
6219
  /**
6183
- * @part button - Exposes the button element for styling.
6220
+ * @part button - Exposes the underlying button (or anchor) element for styling, including custom size, shape, or surface on icon-only placements (e.g. a compact square or inverse icon button).
6184
6221
  * @part button-content - Exposes the button content for styling.
6185
6222
  * @part button-text - Exposes the button text for styling.
6186
6223
  * @part caret - Exposes the caret icon component for styling. Appears only on the disclosure variant.
@@ -13726,7 +13763,7 @@ class PdsInput {
13726
13763
  }; }
13727
13764
  }
13728
13765
 
13729
- const pdsLinkCss = () => `:host{display:inline}:host pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs)}.pds-link{-ms-flex-align:center;align-items:center;color:var(--color, var(--pds-context-link-color, var(--pine-color-text)));display:-ms-inline-flexbox;display:inline-flex;font-weight:var(--pine-font-weight-medium)}.pds-link:focus-visible{border-radius:var(--pine-dimension-2xs);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width-thick);position:relative}.pds-link:hover{color:var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));text-decoration:none}:host([color=secondary]) .pds-link{color:var(--pine-color-text-primary)}:host([color=secondary]) .pds-link:hover{color:var(--pine-color-text-inverse-secondary)}:host([color=accent]) .pds-link{color:var(--pine-color-accent)}:host([color=accent]) .pds-link:hover{color:var(--pine-color-accent-hover)}:host([color=danger]) .pds-link{color:var(--pine-color-danger)}:host([color=danger]) .pds-link:hover{color:var(--pine-color-danger-hover)}.pds-link--sm{font-size:var(--pine-font-size-body-xs)}.pds-link--sm pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--md{font-size:var(--pine-font-size-body-sm)}.pds-link--md pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--lg{font-size:var(--pine-font-size-body-md)}.pds-link--lg pds-icon{height:var(--pine-dimension-sm);width:var(--pine-dimension-sm)}.pds-link--plain{text-decoration:none}.pds-link--plain:hover{color:var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));text-decoration:underline}`;
13766
+ const pdsLinkCss = () => `:host{display:inline}:host pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs)}.pds-link{-ms-flex-align:center;align-items:center;color:var(--color, var(--pds-context-link-color, var(--pine-color-text)));display:-ms-inline-flexbox;display:inline-flex;font-weight:var(--pine-font-weight-medium)}.pds-link:focus-visible{border-radius:var(--pine-dimension-2xs);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width-thick);position:relative}.pds-link:hover{color:var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));text-decoration:none}:host([color=secondary]) .pds-link{color:var(--pine-color-text-primary)}:host([color=secondary]) .pds-link:hover{color:var(--pine-color-text-inverse-secondary)}:host([color=accent]) .pds-link{color:var(--pine-color-accent)}:host([color=accent]) .pds-link:hover{color:var(--pine-color-accent-hover)}:host([color=danger]) .pds-link{color:var(--pine-color-danger)}:host([color=danger]) .pds-link:hover{color:var(--pine-color-danger-hover)}.pds-link--sm{font-size:var(--pine-font-size-body-xs)}.pds-link--sm pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--md{font-size:var(--pine-font-size-body-sm)}.pds-link--md pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--lg{font-size:var(--pine-font-size-body-md)}.pds-link--lg pds-icon{height:var(--pine-dimension-sm);width:var(--pine-dimension-sm)}.pds-link--plain{text-decoration:none}.pds-link--plain:hover{color:var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));text-decoration:underline}:host([active]) .pds-link{color:var(--pds-context-link-color, var(--pine-color-text-strong));text-decoration:underline}:host([active]) .pds-link:hover{color:var(--pds-context-link-color-hover, var(--pine-color-text-strong));text-decoration:underline}`;
13730
13767
 
13731
13768
  /**
13732
13769
  * @part link - Link element styles.
@@ -13735,6 +13772,13 @@ const pdsLinkCss = () => `:host{display:inline}:host pds-icon{-webkit-margin-sta
13735
13772
  class PdsLink {
13736
13773
  constructor(hostRef) {
13737
13774
  registerInstance(this, hostRef);
13775
+ /**
13776
+ * Marks the link as the current/active navigation item — for tab strips and
13777
+ * nav rails built from links. Applies the active treatment (persistent
13778
+ * underline + strong text) and sets `aria-current="page"`.
13779
+ * @defaultValue false
13780
+ */
13781
+ this.active = false;
13738
13782
  /**
13739
13783
  * Determines whether the link should open in a new tab.
13740
13784
  * @defaultValue false
@@ -13777,14 +13821,15 @@ class PdsLink {
13777
13821
  const targetValue = this.target || (this.external ? '_blank' : undefined);
13778
13822
  const showExternalIcon = this.external;
13779
13823
  const relValue = targetValue === '_blank' ? 'noopener noreferrer' : undefined;
13780
- return (hAsync("a", { key: '314a6249f39716ab2e632c2cb4c588ce2c74a77b', class: this.classNames(), download: this.download, href: this.href, id: this.componentId, part: "link", target: targetValue, rel: relValue, style: this.setLinkStyles(), "data-turbo": this.turbo || undefined, "data-turbo-frame": this.turboFrame || undefined, "data-turbo-action": this.turboAction || undefined, "data-turbo-method": this.turboMethod || undefined, "data-turbo-confirm": this.turboConfirm || undefined, "data-turbo-stream": this.turboStream || undefined, "data-turbo-prefetch": this.turboPrefetch || undefined, "data-turbo-preload": this.turboPreload || undefined }, hAsync("slot", { key: 'ceab5601c349ece4b142f16f682d5a2d2d0ba59a' }, this.href), showExternalIcon &&
13781
- hAsync("pds-icon", { key: 'cba3137af21eb374c8318e43e279e77fefdc1b5c', icon: launch, size: this.fontSize })));
13824
+ return (hAsync("a", { key: '5d0c5a0a5b8b80a8cdff802a3d78dad85a9ccdc4', class: this.classNames(), download: this.download, href: this.href, id: this.componentId, part: "link", "aria-current": this.active ? 'page' : undefined, target: targetValue, rel: relValue, style: this.setLinkStyles(), "data-turbo": this.turbo || undefined, "data-turbo-frame": this.turboFrame || undefined, "data-turbo-action": this.turboAction || undefined, "data-turbo-method": this.turboMethod || undefined, "data-turbo-confirm": this.turboConfirm || undefined, "data-turbo-stream": this.turboStream || undefined, "data-turbo-prefetch": this.turboPrefetch || undefined, "data-turbo-preload": this.turboPreload || undefined }, hAsync("slot", { key: '06b7be14d867eae1b7acba8570f1e94bdf840fbb' }, this.href), showExternalIcon &&
13825
+ hAsync("pds-icon", { key: '678414f7d20fd20b6931cc401163180c3ad0094c', icon: launch, size: this.fontSize })));
13782
13826
  }
13783
13827
  static get style() { return pdsLinkCss(); }
13784
13828
  static get cmpMeta() { return {
13785
13829
  "$flags$": 265,
13786
13830
  "$tagName$": "pds-link",
13787
13831
  "$members$": {
13832
+ "active": [516],
13788
13833
  "color": [1],
13789
13834
  "download": [1],
13790
13835
  "componentId": [1, "component-id"],
@@ -13804,7 +13849,7 @@ class PdsLink {
13804
13849
  },
13805
13850
  "$listeners$": undefined,
13806
13851
  "$lazyBundleId$": "-",
13807
- "$attrsToReflect$": []
13852
+ "$attrsToReflect$": [["active", "active"]]
13808
13853
  }; }
13809
13854
  }
13810
13855
 
@@ -19796,7 +19841,7 @@ class PdsSwitch {
19796
19841
  }; }
19797
19842
  }
19798
19843
 
19799
- 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){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){--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),.pds-tabs--filter .pds-tab[aria-selected=true]:hover:not(:disabled){background-color:var(--pine-color-primary-hover)}.pds-tabs--filter .pds-tab:hover:not(.is-active,[aria-selected=true],: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)}`;
19844
+ 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)}`;
19800
19845
 
19801
19846
  class PdsTab {
19802
19847
  constructor(hostRef) {
@@ -19807,6 +19852,13 @@ class PdsTab {
19807
19852
  * @defaultValue false
19808
19853
  */
19809
19854
  this.disabled = false;
19855
+ /**
19856
+ * Marks this tab as the current one in navigation mode (`href` set). Applies
19857
+ * the active treatment and `aria-current="page"`. Ignored in panel mode, where
19858
+ * the active tab is derived from the parent's `activeTabName`.
19859
+ * @defaultValue false
19860
+ */
19861
+ this.active = false;
19810
19862
  /**
19811
19863
  * Keeps track of the tabpanel selected state, this property is passed by parent component
19812
19864
  */
@@ -19818,18 +19870,46 @@ class PdsTab {
19818
19870
  return;
19819
19871
  this.pdsTabClick.emit([index, parentComponentId]);
19820
19872
  }
19873
+ // An empty string is treated as "no destination" everywhere (isNav fallback,
19874
+ // href attribute, role) so a nav tab never renders `href=""` (which would
19875
+ // navigate to the current page).
19876
+ get hasHref() {
19877
+ return this.href != null && this.href !== '';
19878
+ }
19879
+ get isNav() {
19880
+ var _a;
19881
+ // The parent `pds-tabs` is authoritative when present (via `navMode`), so its
19882
+ // tabs share one mode. Standalone, fall back to a usable `href`.
19883
+ return (_a = this.navMode) !== null && _a !== void 0 ? _a : this.hasHref;
19884
+ }
19885
+ get isActive() {
19886
+ // Navigation mode is server-driven via `active`; panel mode is parent-driven
19887
+ // via `selected` (from `activeTabName`).
19888
+ return this.isNav ? this.active : this.selected;
19889
+ }
19821
19890
  classNames() {
19822
19891
  const classes = [
19823
19892
  'pds-tab',
19824
- this.selected && 'is-active',
19893
+ this.isActive && 'is-active',
19825
19894
  this.disabled && 'is-disabled',
19826
19895
  ];
19827
19896
  return classes.filter(Boolean).join(' ');
19828
19897
  }
19829
19898
  render() {
19830
- const availabilityTabEdgeInlineStart = (hAsync("span", { key: '934d84846bd84471047f9ab7503e5bb151426cbc', class: "pds-tab-edge", role: "presentation" }));
19831
- const availabilityTabEdgeInlineEnd = (hAsync("span", { key: 'e35b9da7b312ed95dab7bf803c40a22b3485ee05', class: "pds-tab-edge pds-tab-edge--end", role: "presentation" }));
19832
- return (hAsync(Host, { key: '310188521230d3e16cff23b857769c4b5d04fd8d', variant: this.variant, slot: "tabs", index: this.index }, hAsync("button", { key: '9df38c2aa1fa29487fdce62ce7dc5f67df6bcde1', role: "tab", id: this.parentComponentId + "__" + this.name, "aria-controls": this.parentComponentId + "__" + this.name + "-panel", tabindex: this.disabled ? "-1" : (this.selected ? "0" : "-1"), "aria-selected": this.selected ? "true" : "false", "aria-disabled": this.disabled ? "true" : null, disabled: this.disabled, class: this.classNames(), onClick: this.onTabClick.bind(this, this.index, this.parentComponentId) }, this.variant === "availability" && availabilityTabEdgeInlineStart, this.variant === "availability" && availabilityTabEdgeInlineEnd, hAsync("div", { key: '4936599dd547f236880ea9a0ccabc4b50836d1d5', class: "pds-tab__content" }, hAsync("slot", { key: '567388faf912bb307676cea9a4626ce9669087dd' })))));
19899
+ const availabilityTabEdgeInlineStart = (hAsync("span", { class: "pds-tab-edge", role: "presentation" }));
19900
+ const availabilityTabEdgeInlineEnd = (hAsync("span", { class: "pds-tab-edge pds-tab-edge--end", role: "presentation" }));
19901
+ const content = (hAsync(Fragment, null, this.variant === "availability" && availabilityTabEdgeInlineStart, this.variant === "availability" && availabilityTabEdgeInlineEnd, hAsync("div", { class: "pds-tab__content" }, hAsync("slot", null))));
19902
+ // Navigation mode: a real anchor, so keyboard activation and navigation are
19903
+ // native (and Turbo-driven when framed) with no controller — and the current
19904
+ // item carries `aria-current="page"` rather than `role="tab"`/`aria-selected`.
19905
+ if (this.isNav) {
19906
+ return (hAsync(Host, { variant: this.variant, slot: "tabs", index: this.index }, hAsync("a", { href: this.disabled || !this.hasHref ? undefined : this.href,
19907
+ // An anchor without an href (disabled, or forced into nav mode with no
19908
+ // usable href) loses its implicit link role; restore it explicitly so
19909
+ // assistive tech still announces the item rather than as plain text.
19910
+ role: this.disabled || !this.hasHref ? "link" : undefined, id: this.parentComponentId + "__" + this.name, class: this.classNames(), target: this.target, rel: this.target === "_blank" ? "noopener noreferrer" : undefined, "aria-current": this.isActive ? "page" : undefined, "aria-disabled": this.disabled ? "true" : null, "data-turbo-frame": this.turboFrame || undefined, "data-turbo-action": this.turboAction || undefined }, content)));
19911
+ }
19912
+ return (hAsync(Host, { variant: this.variant, slot: "tabs", index: this.index }, hAsync("button", { role: "tab", id: this.parentComponentId + "__" + this.name, "aria-controls": this.parentComponentId + "__" + this.name + "-panel", tabindex: this.disabled ? "-1" : (this.selected ? "0" : "-1"), "aria-selected": this.selected ? "true" : "false", "aria-disabled": this.disabled ? "true" : null, disabled: this.disabled, class: this.classNames(), onClick: this.onTabClick.bind(this, this.index, this.parentComponentId) }, content)));
19833
19913
  }
19834
19914
  get el() { return getElement(this); }
19835
19915
  static get style() { return pdsTabCss(); }
@@ -19838,11 +19918,17 @@ class PdsTab {
19838
19918
  "$tagName$": "pds-tab",
19839
19919
  "$members$": {
19840
19920
  "disabled": [4],
19921
+ "href": [1],
19922
+ "active": [4],
19923
+ "target": [1],
19924
+ "turboFrame": [1, "turbo-frame"],
19925
+ "turboAction": [1, "turbo-action"],
19841
19926
  "name": [1],
19842
19927
  "parentComponentId": [1, "parent-component-id"],
19843
19928
  "variant": [1],
19844
19929
  "index": [2],
19845
- "selected": [4]
19930
+ "selected": [4],
19931
+ "navMode": [4, "nav-mode"]
19846
19932
  },
19847
19933
  "$listeners$": undefined,
19848
19934
  "$lazyBundleId$": "-",
@@ -20758,7 +20844,7 @@ class PdsTableRow {
20758
20844
  }; }
20759
20845
  }
20760
20846
 
20761
- const pdsTabpanelCss = () => `:host{display:block}.pds-tabpanel{display:none;margin-top:var(--tabs-dimension-panel-margin-top);padding:var(--tabs-dimension-panel-padding)}.pds-tabpanel:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabpanel.is-active{display:block}`;
20847
+ const pdsTabpanelCss = () => `:host{display:block}:host(.pds-tabpanel--stretch-active){-ms-flex:1 1 auto;flex:1 1 auto;min-block-size:0}:host(.pds-tabpanel--stretch-active) .pds-tabpanel.is-active{block-size:100%}.pds-tabpanel{display:none;margin-top:var(--tabs-dimension-panel-margin-top);padding:var(--tabs-dimension-panel-padding)}.pds-tabpanel:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabpanel.is-active{display:block}`;
20762
20848
 
20763
20849
  class PdsTabpanel {
20764
20850
  constructor(hostRef) {
@@ -20768,9 +20854,14 @@ class PdsTabpanel {
20768
20854
  */
20769
20855
  /** @internal */
20770
20856
  this.selected = false; // eslint-disable-line @stencil-community/strict-mutable
20857
+ /**
20858
+ * Keeps track of the parent `stretch` state so the active panel can fill height, this property is passed by parent component
20859
+ */
20860
+ /** @internal */
20861
+ this.stretch = false;
20771
20862
  }
20772
20863
  render() {
20773
- return (hAsync(Host, { key: '6ba83ea71c899d61f67884780731591a05aa1894', slot: "tabpanels" }, hAsync("div", { key: 'abaa610f7a68a3977303e08f1221976ae2840272', role: "tabpanel", id: this.parentComponentId + "__" + this.name + '-panel', tabindex: "0", "aria-labelledby": this.parentComponentId + "__" + this.name, class: this.selected ? "pds-tabpanel is-active" : "pds-tabpanel" }, hAsync("slot", { key: 'b80ecc1380f424d545b31843b53de1b2854e9f28' }))));
20864
+ return (hAsync(Host, { key: '88dfc12ce8b2413824e6d3425aa38674fa14c764', slot: "tabpanels", class: this.stretch && this.selected ? "pds-tabpanel--stretch-active" : undefined }, hAsync("div", { key: 'bcfe8be6480dc253b10d63d6e37caacec4a8fe7f', role: "tabpanel", id: this.parentComponentId + "__" + this.name + '-panel', tabindex: "0", "aria-labelledby": this.parentComponentId + "__" + this.name, class: this.selected ? "pds-tabpanel is-active" : "pds-tabpanel" }, hAsync("slot", { key: '96ee87a0917e5f538a5c053045a5d6821684cf3a' }))));
20774
20865
  }
20775
20866
  get el() { return getElement(this); }
20776
20867
  static get style() { return pdsTabpanelCss(); }
@@ -20781,7 +20872,8 @@ class PdsTabpanel {
20781
20872
  "name": [1],
20782
20873
  "parentComponentId": [1, "parent-component-id"],
20783
20874
  "variant": [1],
20784
- "selected": [1028]
20875
+ "selected": [1028],
20876
+ "stretch": [4]
20785
20877
  },
20786
20878
  "$listeners$": undefined,
20787
20879
  "$lazyBundleId$": "-",
@@ -20789,7 +20881,7 @@ class PdsTabpanel {
20789
20881
  }; }
20790
20882
  }
20791
20883
 
20792
- const pdsTabsCss = () => `:host{--tabs-dimension-panel-margin-top:var(--pine-dimension-none);--tabs-dimension-panel-padding:0;display:block}.pds-tabs__tablist{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:var(--pine-dimension-md)}:host(.pds-tabs--availability) .pds-tabs__tablist{gap:var(--pine-dimension-xs)}:host(.pds-tabs--filter) .pds-tabs__tablist{gap:var(--pine-dimension-sm)}:host(.pds-tabs--pill) .pds-tabs__tablist{background-color:var(--pine-color-background-app);border:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);border-radius:var(--pine-dimension-100);display:-ms-inline-flexbox;display:inline-flex;display:-ms-flexbox;display:flex;gap:0;height:var(--pine-dimension-450)}`;
20884
+ const pdsTabsCss = () => `:host{--tabs-dimension-panel-margin-top:var(--pine-dimension-none);--tabs-dimension-panel-padding:0;display:block}.pds-tabs__tablist{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:var(--pine-dimension-md)}:host(.pds-tabs--divider) .pds-tabs__tablist{-webkit-border-after:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);border-block-end:var(--pine-border-width-thin) solid var(--pine-color-border-subtle)}:host(.pds-tabs--stretch){block-size:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.pds-tabs--stretch) .pds-tabs__tablist{-ms-flex:0 0 auto;flex:0 0 auto}:host(.pds-tabs--availability) .pds-tabs__tablist{gap:var(--pine-dimension-xs)}:host(.pds-tabs--filter) .pds-tabs__tablist{gap:var(--pine-dimension-sm)}:host(.pds-tabs--pill) .pds-tabs__tablist{background-color:var(--pine-color-background-app);border:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);border-radius:var(--pine-dimension-100);display:-ms-inline-flexbox;display:inline-flex;display:-ms-flexbox;display:flex;gap:0;height:var(--pine-dimension-450)}`;
20793
20885
 
20794
20886
  /**
20795
20887
  * @slot tabs - Content is placed within the `div[role="tablist"]` element as children
@@ -20799,6 +20891,25 @@ const pdsTabsCss = () => `:host{--tabs-dimension-panel-margin-top:var(--pine-dim
20799
20891
  class PdsTabs {
20800
20892
  constructor(hostRef) {
20801
20893
  registerInstance(this, hostRef);
20894
+ /**
20895
+ * Adds a divider rule beneath the tab list.
20896
+ * @defaultValue false
20897
+ */
20898
+ this.divider = false;
20899
+ /**
20900
+ * Stretches the component so the active tab panel fills the remaining height.
20901
+ * Requires the component to have a constrained height (e.g. a flex parent).
20902
+ * @defaultValue false
20903
+ */
20904
+ this.stretch = false;
20905
+ /**
20906
+ * Renders the tab strip as navigation instead of an in-page panel switcher: each
20907
+ * `pds-tab` becomes an `<a href>` inside a `<nav>` landmark (with `aria-current`
20908
+ * on the `active` tab) rather than a `role="tab"` button over a `pds-tabpanel`.
20909
+ * Give every `pds-tab` an `href` and omit `pds-tabpanel`s.
20910
+ * @defaultValue false
20911
+ */
20912
+ this.nav = false;
20802
20913
  }
20803
20914
  tabClickHandler(event) {
20804
20915
  if (this.componentId === event.detail[1]) {
@@ -20807,6 +20918,10 @@ class PdsTabs {
20807
20918
  }
20808
20919
  }
20809
20920
  handleKeyDown(ev) {
20921
+ // Navigation mode uses real links: Tab moves focus, Enter follows the href.
20922
+ // The roving/arrow model is a panel-mode (role=tab) concern only.
20923
+ if (this.isNav)
20924
+ return;
20810
20925
  const keySet = ["ArrowLeft", "ArrowRight", "Home", "End"];
20811
20926
  // Only handle keyboard navigation if the event originated from a tab button
20812
20927
  // that belongs to THIS tabs component
@@ -20819,6 +20934,32 @@ class PdsTabs {
20819
20934
  this.moveActiveTab(ev.key);
20820
20935
  }
20821
20936
  }
20937
+ // Navigation mode is an explicit, single source of truth: `nav` drives both the
20938
+ // container (<nav> of links vs role=tablist of buttons) and every child tab (via
20939
+ // `navMode`), so the tabs present when the strip initializes can't mix the two.
20940
+ // (Child discovery is load-time only, like `variant`/`id`; tabs added after load
20941
+ // aren't managed.)
20942
+ get isNav() {
20943
+ return !!this.nav;
20944
+ }
20945
+ // `nav` and per-tab `href` should agree. Warn on the two authoring mistakes
20946
+ // rather than silently rendering a link with no destination, or ignoring an href.
20947
+ warnOnNavConfig() {
20948
+ var _a;
20949
+ if (!((_a = this.tabs) === null || _a === void 0 ? void 0 : _a.length))
20950
+ return;
20951
+ // An empty `href=""` is not a usable destination, so it counts as missing.
20952
+ const withHref = this.tabs.filter((tab) => {
20953
+ const href = tab.getAttribute('href');
20954
+ return href != null && href !== '';
20955
+ }).length;
20956
+ if (this.nav && withHref < this.tabs.length) {
20957
+ console.warn('pds-tabs: `nav` is set, so every pds-tab needs an `href`.');
20958
+ }
20959
+ else if (!this.nav && withHref > 0) {
20960
+ console.warn('pds-tabs: a pds-tab has an `href` but `nav` is not set — add `nav` to pds-tabs for navigation mode; the href is ignored in panel mode.');
20961
+ }
20962
+ }
20822
20963
  moveActiveTab(key) {
20823
20964
  const firstTabNumber = 0;
20824
20965
  const lastTabNumber = this.tabs.length - 1;
@@ -20857,13 +20998,25 @@ class PdsTabs {
20857
20998
  child['index'] = index;
20858
20999
  }
20859
21000
  passPropsToChildren() {
21001
+ var _a;
21002
+ // Panel mode needs a selected tab so the tablist stays keyboard-reachable
21003
+ // (an all-unselected tablist has every button at tabindex="-1"). Default to
21004
+ // the first ENABLED tab when the consumer omits `activeTabName` — a disabled
21005
+ // tab is itself tabindex="-1", so selecting it would recreate the trap. Nav
21006
+ // mode has no roving/selection, so it's left unset there.
21007
+ if (!this.nav && this.activeTabName == null && this.tabs.length) {
21008
+ const firstEnabled = (_a = this.tabs.find((tab) => !tab.disabled)) !== null && _a !== void 0 ? _a : this.tabs[0];
21009
+ this.activeTabName = firstEnabled.name;
21010
+ }
20860
21011
  this.tabs.forEach((child, index) => {
20861
21012
  if (this.activeTabName === child.name)
20862
21013
  this.activeTabIndex = index;
20863
21014
  this.propGeneration(child, index);
21015
+ child.navMode = this.nav;
20864
21016
  });
20865
21017
  this.tabPanels.forEach((child) => {
20866
21018
  this.propGeneration(child);
21019
+ child.stretch = this.stretch;
20867
21020
  });
20868
21021
  }
20869
21022
  classNames() {
@@ -20872,17 +21025,27 @@ class PdsTabs {
20872
21025
  const variantClassName = `pds-tabs--${this.variant}`;
20873
21026
  className += ' ' + variantClassName;
20874
21027
  }
21028
+ if (this.divider) {
21029
+ className += ' pds-tabs--divider';
21030
+ }
21031
+ if (this.stretch) {
21032
+ className += ' pds-tabs--stretch';
21033
+ }
20875
21034
  return className;
20876
21035
  }
20877
21036
  ;
20878
21037
  componentWillLoad() {
20879
21038
  this.findAllChildren();
21039
+ this.warnOnNavConfig();
20880
21040
  }
20881
21041
  componentWillRender() {
20882
21042
  this.passPropsToChildren();
20883
21043
  }
20884
21044
  render() {
20885
- return (hAsync(Host, { key: '213dfbe8f2828b430ab81dce23f43c2137206861', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, hAsync("div", { key: '68989e852e2eeed180f91e5ac901c4318d6c0d70', class: "pds-tabs__tablist", role: "tablist", "aria-label": this.tablistLabel, part: "tab-list" }, hAsync("slot", { key: '4a06996745c049fdaf830460e8d57caefd50900b', name: "tabs" })), hAsync("slot", { key: 'e0558392bff0955defb133b36dd4e7360f33acce', name: "tabpanels" })));
21045
+ // Navigation mode: a <nav> landmark of links (aria-current marks the current
21046
+ // page). Panel mode: the ARIA tablist of role=tab buttons over tabpanels.
21047
+ const tabList = this.isNav ? (hAsync("nav", { class: "pds-tabs__tablist", "aria-label": this.tablistLabel || undefined, part: "tab-list" }, hAsync("slot", { name: "tabs" }))) : (hAsync("div", { class: "pds-tabs__tablist", role: "tablist", "aria-label": this.tablistLabel, part: "tab-list" }, hAsync("slot", { name: "tabs" })));
21048
+ return (hAsync(Host, { key: '97bb6d788bd7bdf393b46eaecea612d9b0c9dee4', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, tabList, hAsync("slot", { key: '252855bfa496bc3e04fbe6dc0bcb7597c7360407', name: "tabpanels" })));
20886
21049
  }
20887
21050
  get el() { return getElement(this); }
20888
21051
  static get style() { return pdsTabsCss(); }
@@ -20893,6 +21056,9 @@ class PdsTabs {
20893
21056
  "tablistLabel": [1, "tablist-label"],
20894
21057
  "componentId": [1, "component-id"],
20895
21058
  "variant": [1],
21059
+ "divider": [4],
21060
+ "stretch": [4],
21061
+ "nav": [4],
20896
21062
  "activeTabName": [1025, "active-tab-name"],
20897
21063
  "activeTabIndex": [1026, "active-tab-index"]
20898
21064
  },
@@ -21005,7 +21171,7 @@ class PdsText {
21005
21171
  ? `pds-text--decoration-${this.decoration}`
21006
21172
  : ''}
21007
21173
  `;
21008
- return (hAsync(Tag, { key: '36278c42c1669a3d2ff3ac2973727c03f2498023', ref: (el) => (this.contentEl = el), style: this.color && setColor(this.color), class: typeClasses, part: "content", tabIndex: this.truncate ? 0 : undefined }, hAsync("slot", { key: 'cb3c83b54cb84fe485fd14c7073148fc037d78cd' })));
21174
+ return (hAsync(Tag, { key: '9ae3d5a57202ca1308c69b76645168fc8e18953b', ref: (el) => (this.contentEl = el), style: this.color && setColor(this.color), class: typeClasses, part: "content", tabIndex: this.truncate ? 0 : undefined }, hAsync("slot", { key: 'e6c95b8240690a9c83927e206096bbd7615dd4d2' })));
21009
21175
  }
21010
21176
  get el() { return getElement(this); }
21011
21177
  static get watchers() { return {
@@ -21346,10 +21512,10 @@ class PdsTextarea {
21346
21512
  }
21347
21513
  render() {
21348
21514
  const value = this.getValue();
21349
- return (hAsync(Host, { key: '838d12ba686fb041996c44522d3fd30e1b56c610', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: 'bd3eef138a5c8f2cd4e48c007561bb1b12f4e575', class: "pds-textarea" }, this.label &&
21350
- hAsync("div", { key: 'f83f23b17cd157d48bb5c0c5067ca5f611d73529', class: "pds-textarea__label-wrapper" }, hAsync("label", { key: '896b7b495ad6f7deb8d4738e623f0676f0a98c1f', htmlFor: this.componentId }, hAsync("span", { key: '02b06db969467f6c4e83e0f713bee0be76f8dfff', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), !this.hideLabel && this.renderAction()), hAsync("div", { key: '15c5964576e73db36cee4a9ca868c28571250a27', class: "pds-textarea__field-wrapper" }, hAsync("textarea", Object.assign({ key: '74713a5d438fc01103ca99f0c77abd84b7d2d16a', ref: (el) => this.nativeTextarea = el, "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, class: this.textareaClassNames(), disabled: this.disabled, id: this.componentId, maxlength: this.maxLength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, rows: this.rows, onBlur: this.onBlur, onChange: this.onTextareaChange, onFocus: this.onFocus, onInput: this.onInput, onKeyDown: this.onKeyDown }, this.inheritedAttributes), value), this.renderCharacterCounter()), this.helperMessage &&
21351
- hAsync("p", { key: 'e42f174f4153363ce745db264fd3a9ee46178a03', class: "pds-textarea__helper-message", id: messageId(this.componentId, 'helper') }, this.helperMessage), this.invalid &&
21352
- hAsync("p", { key: '44189515611ff9fa51d2815a7066626b6ba5df2c', "aria-live": "assertive", class: "pds-textarea__error-message", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: '64d275da09cdf1c2cc27d4c0a780dd414c265534', icon: danger, size: "small" }), this.errorMessage))));
21515
+ return (hAsync(Host, { key: 'd13869d989752c76c80a46ebb0291df2c0546cc2', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null, "has-action": this.hasAction && !this.hideLabel ? 'true' : null }, hAsync("div", { key: '19454f642896485dc22bc5dac8b6ed3b4ae5627a', class: "pds-textarea" }, this.label &&
21516
+ hAsync("div", { key: 'def9e117ba3667a542e8cec32c2eabfa701c3305', class: "pds-textarea__label-wrapper" }, hAsync("label", { key: '893a1db325ece460c627e72b765289098823e49e', htmlFor: this.componentId }, hAsync("span", { key: 'd047f17441aa81800057d7403af15f6e38c53f6c', class: this.hideLabel ? 'visually-hidden' : '' }, this.label)), !this.hideLabel && this.renderAction()), hAsync("div", { key: '7d0f2fab56fee9b9d9e0facabc7e607cb6bee23b', class: "pds-textarea__field-wrapper" }, hAsync("textarea", Object.assign({ key: 'a3ecb78c5b8f42f8350abe623bacb55be6c4a0c0', ref: (el) => this.nativeTextarea = el, "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, class: this.textareaClassNames(), disabled: this.disabled, id: this.componentId, maxlength: this.maxLength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, rows: this.rows, onBlur: this.onBlur, onChange: this.onTextareaChange, onFocus: this.onFocus, onInput: this.onInput, onKeyDown: this.onKeyDown }, this.inheritedAttributes), value), this.renderCharacterCounter()), this.helperMessage &&
21517
+ hAsync("p", { key: 'b5229a6ef0b2c4ee5dcb820ce2b9bbf6334adef8', class: "pds-textarea__helper-message", id: messageId(this.componentId, 'helper') }, this.helperMessage), this.invalid &&
21518
+ hAsync("p", { key: '8e6dfa97496d553b8e1e2a50c1221fad3ddb539a', "aria-live": "assertive", class: "pds-textarea__error-message", id: messageId(this.componentId, 'error') }, hAsync("pds-icon", { key: 'f3ed2677239e6d135480cf55d1d908936d746322', icon: danger, size: "small" }), this.errorMessage))));
21353
21519
  }
21354
21520
  static get formAssociated() { return true; }
21355
21521
  get el() { return getElement(this); }
@@ -21523,13 +21689,13 @@ class PdsToast {
21523
21689
  return this.icon && hAsync("pds-icon", { name: this.icon, class: "pds-toast__icon" });
21524
21690
  }
21525
21691
  render() {
21526
- return (hAsync(Host, { key: 'a1ec97158a6665aa25b58b1954b4b5c622590615', hidden: !this.isVisible }, hAsync("div", { key: 'd9b01164364c76512852a260cede50000b73a563', class: {
21692
+ return (hAsync(Host, { key: '87c9b15656a2765eb9e722c85dba5c5edbe07c42', hidden: !this.isVisible }, hAsync("div", { key: 'bd8b26ef0c33b96603313bce74505953d8fe7410', class: {
21527
21693
  'pds-toast': true,
21528
21694
  [`pds-toast--${this.type}`]: this.type !== 'default',
21529
21695
  'pds-toast--animating-out': this.isAnimatingOut
21530
- }, role: "alert", "aria-live": "polite" }, this.renderIcon(), hAsync("span", { key: '1f581c7c29ea3fc795dfca061d3575c5a9895b3c', class: "pds-toast__message" }, hAsync("slot", { key: '645b31eae3be23de63ab2562234caf0be2510645' })), this.dismissible && (hAsync("button", { key: '44a62b304468c0fca0b8d490ad9c8b5932176ac9', type: "button", part: "dismiss", class: "pds-toast__button", onClick: () => {
21696
+ }, role: "alert", "aria-live": "polite" }, this.renderIcon(), hAsync("span", { key: '5f7fd6b70fe130d8b0915da07640bec01b3b2bcb', class: "pds-toast__message" }, hAsync("slot", { key: '4aa0cf737b420ae51297126b423b44d2a8610226' })), this.dismissible && (hAsync("button", { key: 'a8b8e5e9ba956b2d9cca284d114afa37b80570cf', type: "button", part: "dismiss", class: "pds-toast__button", onClick: () => {
21531
21697
  this.dismiss();
21532
- }, "aria-label": this.dismissLabel }, hAsync("pds-icon", { key: 'fde63f279f696d9f02875cc1beee3542c97f0c7e', name: "remove" }))))));
21698
+ }, "aria-label": this.dismissLabel }, hAsync("pds-icon", { key: 'dac8f2099b2ab8a68d208aac288d48019df6d7e7', name: "remove" }))))));
21533
21699
  }
21534
21700
  get el() { return getElement(this); }
21535
21701
  static get watchers() { return {
@@ -21873,9 +22039,9 @@ class PdsTooltip {
21873
22039
  }
21874
22040
  render() {
21875
22041
  const hostId = this.componentId || undefined;
21876
- return (hAsync(Host, { key: '4e6188e03c2f1d33e571b96a3006a585840716bd', id: hostId, class: { 'pds-tooltip--is-open': this.opened } }, hAsync("span", { key: '0b82d180295421c32548577fb2038422b8ebd3be', class: "pds-tooltip__trigger", onMouseEnter: this.handleShow, onMouseLeave: this.handleHide,
22042
+ return (hAsync(Host, { key: '6af9c969e0dae4f3969cba2153797a1bccfc6d21', id: hostId, class: { 'pds-tooltip--is-open': this.opened } }, hAsync("span", { key: '97c48a8b8d626ee913412bd55aefb17f36fad401', class: "pds-tooltip__trigger", onMouseEnter: this.handleShow, onMouseLeave: this.handleHide,
21877
22043
  /* focusin/out bubble; ensure keyboard users see tooltips */
21878
- onFocusin: this.handleShow, onFocusout: this.handleHide, ref: el => this.triggerEl = el }, hAsync("slot", { key: '661014ee46b11bcc906e7b64ef8c8a5739d459f0' })), hAsync("div", { key: '1861ce9b260f5f7d2eb0a1f337dadd63a0dfee97', class: "pds-tooltip__content-slot-wrapper", hidden: true }, hAsync("slot", { key: '963fb263c72fba432c2b672a2c3e85ca524f2b67', name: "content" }))));
22044
+ onFocusin: this.handleShow, onFocusout: this.handleHide, ref: el => this.triggerEl = el }, hAsync("slot", { key: '37715fc0bf525695a62af1944ff853228080302a' })), hAsync("div", { key: 'a9a925b1de9ea45d2f6b9f39ec5e386537313217', class: "pds-tooltip__content-slot-wrapper", hidden: true }, hAsync("slot", { key: '1486b30af21dc69758d7dc9890cbaf227bafffc7', name: "content" }))));
21879
22045
  }
21880
22046
  get el() { return getElement(this); }
21881
22047
  static get watchers() { return {