@pine-ds/core 3.11.1 → 3.12.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 (894) hide show
  1. package/components/index.d.ts +2 -0
  2. package/components/index.js +1 -0
  3. package/components/index.js.map +1 -1
  4. package/components/index2.js +1 -1
  5. package/components/pds-accordion.js +1 -1
  6. package/components/pds-accordion.js.map +1 -1
  7. package/components/pds-alert.js +2 -2
  8. package/components/pds-alert.js.map +1 -1
  9. package/components/pds-avatar.js +1 -1
  10. package/components/pds-avatar.js.map +1 -1
  11. package/components/pds-box2.js +1 -1
  12. package/components/pds-box2.js.map +1 -1
  13. package/components/pds-button2.js +1 -1
  14. package/components/pds-button2.js.map +1 -1
  15. package/components/pds-checkbox2.js +2 -2
  16. package/components/pds-checkbox2.js.map +1 -1
  17. package/components/pds-chip2.js +1 -1
  18. package/components/pds-chip2.js.map +1 -1
  19. package/components/pds-combobox.js +1 -1
  20. package/components/pds-combobox.js.map +1 -1
  21. package/components/pds-copytext.js +1 -1
  22. package/components/pds-copytext.js.map +1 -1
  23. package/components/pds-dropdown-menu-item.js +1 -1
  24. package/components/pds-dropdown-menu-item.js.map +1 -1
  25. package/components/pds-dropdown-menu-separator.js +1 -1
  26. package/components/pds-dropdown-menu-separator.js.map +1 -1
  27. package/components/pds-dropdown-menu.js +1 -1
  28. package/components/pds-dropdown-menu.js.map +1 -1
  29. package/components/pds-filter.js +1 -1
  30. package/components/pds-filter.js.map +1 -1
  31. package/components/pds-input.js +2 -2
  32. package/components/pds-input.js.map +1 -1
  33. package/components/pds-link2.js +1 -1
  34. package/components/pds-link2.js.map +1 -1
  35. package/components/pds-loader2.js +1 -1
  36. package/components/pds-loader2.js.map +1 -1
  37. package/components/pds-modal-content.js +1 -1
  38. package/components/pds-modal-content.js.map +1 -1
  39. package/components/pds-popover.js +6 -3
  40. package/components/pds-popover.js.map +1 -1
  41. package/components/pds-progress.js +1 -1
  42. package/components/pds-progress.js.map +1 -1
  43. package/components/pds-radio-group.d.ts +11 -0
  44. package/components/pds-radio-group.js +211 -0
  45. package/components/pds-radio-group.js.map +1 -0
  46. package/components/pds-radio.js +10 -5
  47. package/components/pds-radio.js.map +1 -1
  48. package/components/pds-row.js +1 -1
  49. package/components/pds-select.js +3 -3
  50. package/components/pds-select.js.map +1 -1
  51. package/components/pds-sortable-item.js +2 -2
  52. package/components/pds-sortable.js +1 -1
  53. package/components/pds-switch.js +5 -5
  54. package/components/pds-switch.js.map +1 -1
  55. package/components/pds-tab.js +4 -4
  56. package/components/pds-tab.js.map +1 -1
  57. package/components/pds-table-body.js +1 -1
  58. package/components/pds-table-cell2.js +2 -2
  59. package/components/pds-table-head-cell2.js +3 -3
  60. package/components/pds-table-head-cell2.js.map +1 -1
  61. package/components/pds-table-head.js +2 -2
  62. package/components/pds-table-head.js.map +1 -1
  63. package/components/pds-table-row.js +2 -2
  64. package/components/pds-table-row.js.map +1 -1
  65. package/components/pds-table.js +1 -1
  66. package/components/pds-table.js.map +1 -1
  67. package/components/pds-tabpanel.js +1 -1
  68. package/components/pds-tabs.js +2 -2
  69. package/components/pds-tabs.js.map +1 -1
  70. package/components/pds-text2.js +2 -2
  71. package/components/pds-text2.js.map +1 -1
  72. package/components/pds-textarea.js +6 -6
  73. package/components/pds-textarea.js.map +1 -1
  74. package/components/pds-toast.js +3 -3
  75. package/components/pds-tooltip.js +2 -2
  76. package/dist/cjs/{index-2Lf0E1JO.js → index-CI0W8NCh.js} +3 -3
  77. package/dist/cjs/index-CI0W8NCh.js.map +1 -0
  78. package/dist/cjs/loader.cjs.js +2 -2
  79. package/dist/cjs/mock-pds-modal.cjs.entry.js +1 -1
  80. package/dist/cjs/pds-accordion.cjs.entry.js +2 -2
  81. package/dist/cjs/pds-accordion.entry.cjs.js.map +1 -1
  82. package/dist/cjs/pds-alert.cjs.entry.js +3 -3
  83. package/dist/cjs/pds-alert.entry.cjs.js.map +1 -1
  84. package/dist/cjs/pds-avatar.cjs.entry.js +2 -2
  85. package/dist/cjs/pds-avatar.entry.cjs.js.map +1 -1
  86. package/dist/cjs/pds-box.cjs.entry.js +2 -2
  87. package/dist/cjs/pds-box.entry.cjs.js.map +1 -1
  88. package/dist/cjs/pds-button.cjs.entry.js +2 -2
  89. package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
  90. package/dist/cjs/pds-checkbox.cjs.entry.js +2 -2
  91. package/dist/cjs/pds-checkbox.entry.cjs.js.map +1 -1
  92. package/dist/cjs/pds-chip.cjs.entry.js +2 -2
  93. package/dist/cjs/pds-chip.entry.cjs.js.map +1 -1
  94. package/dist/cjs/pds-combobox.cjs.entry.js +2 -2
  95. package/dist/cjs/pds-combobox.entry.cjs.js.map +1 -1
  96. package/dist/cjs/pds-copytext.cjs.entry.js +2 -2
  97. package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
  98. package/dist/cjs/pds-divider.cjs.entry.js +1 -1
  99. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +2 -2
  100. package/dist/cjs/pds-dropdown-menu-item.entry.cjs.js.map +1 -1
  101. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +2 -2
  102. package/dist/cjs/pds-dropdown-menu-separator.entry.cjs.js.map +1 -1
  103. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +2 -2
  104. package/dist/cjs/pds-dropdown-menu.entry.cjs.js.map +1 -1
  105. package/dist/cjs/pds-filter.cjs.entry.js +2 -2
  106. package/dist/cjs/pds-filter.entry.cjs.js.map +1 -1
  107. package/dist/cjs/pds-filters.cjs.entry.js +1 -1
  108. package/dist/cjs/pds-icon.cjs.entry.js +1 -1
  109. package/dist/cjs/pds-image.cjs.entry.js +1 -1
  110. package/dist/cjs/pds-input.cjs.entry.js +2 -2
  111. package/dist/cjs/pds-input.entry.cjs.js.map +1 -1
  112. package/dist/cjs/pds-link.cjs.entry.js +2 -2
  113. package/dist/cjs/pds-link.entry.cjs.js.map +1 -1
  114. package/dist/cjs/pds-loader.cjs.entry.js +2 -2
  115. package/dist/cjs/pds-loader.entry.cjs.js.map +1 -1
  116. package/dist/cjs/pds-modal-content.cjs.entry.js +2 -2
  117. package/dist/cjs/pds-modal-content.entry.cjs.js.map +1 -1
  118. package/dist/cjs/pds-modal-footer.cjs.entry.js +1 -1
  119. package/dist/cjs/pds-modal-header.cjs.entry.js +1 -1
  120. package/dist/cjs/pds-modal.cjs.entry.js +1 -1
  121. package/dist/cjs/pds-popover.cjs.entry.js +7 -4
  122. package/dist/cjs/pds-popover.entry.cjs.js.map +1 -1
  123. package/dist/cjs/pds-progress.cjs.entry.js +2 -2
  124. package/dist/cjs/pds-progress.entry.cjs.js.map +1 -1
  125. package/dist/cjs/pds-property.cjs.entry.js +1 -1
  126. package/dist/cjs/pds-radio-group.cjs.entry.js +170 -0
  127. package/dist/cjs/pds-radio-group.entry.cjs.js.map +1 -0
  128. package/dist/cjs/pds-radio.cjs.entry.js +10 -5
  129. package/dist/cjs/pds-radio.entry.cjs.js.map +1 -1
  130. package/dist/cjs/pds-row.cjs.entry.js +2 -2
  131. package/dist/cjs/pds-select.cjs.entry.js +3 -3
  132. package/dist/cjs/pds-select.entry.cjs.js.map +1 -1
  133. package/dist/cjs/pds-sortable-item.cjs.entry.js +2 -2
  134. package/dist/cjs/pds-sortable.cjs.entry.js +2 -2
  135. package/dist/cjs/pds-switch.cjs.entry.js +5 -5
  136. package/dist/cjs/pds-switch.entry.cjs.js.map +1 -1
  137. package/dist/cjs/pds-tab.cjs.entry.js +5 -5
  138. package/dist/cjs/pds-tab.entry.cjs.js.map +1 -1
  139. package/dist/cjs/pds-table-body.cjs.entry.js +2 -2
  140. package/dist/cjs/pds-table-cell.cjs.entry.js +3 -3
  141. package/dist/cjs/pds-table-head-cell.cjs.entry.js +4 -4
  142. package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
  143. package/dist/cjs/pds-table-head.cjs.entry.js +3 -3
  144. package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
  145. package/dist/cjs/pds-table-row.cjs.entry.js +3 -3
  146. package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
  147. package/dist/cjs/pds-table.cjs.entry.js +2 -2
  148. package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
  149. package/dist/cjs/pds-tabpanel.cjs.entry.js +2 -2
  150. package/dist/cjs/pds-tabs.cjs.entry.js +3 -3
  151. package/dist/cjs/pds-tabs.entry.cjs.js.map +1 -1
  152. package/dist/cjs/pds-text.cjs.entry.js +3 -3
  153. package/dist/cjs/pds-text.entry.cjs.js.map +1 -1
  154. package/dist/cjs/pds-textarea.cjs.entry.js +6 -6
  155. package/dist/cjs/pds-textarea.entry.cjs.js.map +1 -1
  156. package/dist/cjs/pds-toast.cjs.entry.js +4 -4
  157. package/dist/cjs/pds-tooltip.cjs.entry.js +3 -3
  158. package/dist/cjs/pine-core.cjs.js +2 -2
  159. package/dist/collection/collection-manifest.json +1 -0
  160. package/dist/collection/components/_internal/pds-label/pds-label.js.map +1 -1
  161. package/dist/collection/components/pds-accordion/pds-accordion.css +1 -1
  162. package/dist/collection/components/pds-accordion/pds-accordion.js.map +1 -1
  163. package/dist/collection/components/pds-accordion/stories/pds-accordion.stories.js +0 -2
  164. package/dist/collection/components/pds-alert/pds-alert.css +1 -0
  165. package/dist/collection/components/pds-alert/pds-alert.js +1 -1
  166. package/dist/collection/components/pds-alert/pds-alert.js.map +1 -1
  167. package/dist/collection/components/pds-alert/stories/pds-alert.stories.js +3 -9
  168. package/dist/collection/components/pds-avatar/pds-avatar.css +3 -3
  169. package/dist/collection/components/pds-avatar/pds-avatar.js.map +1 -1
  170. package/dist/collection/components/pds-avatar/stories/pds-avatar.stories.js +0 -2
  171. package/dist/collection/components/pds-box/pds-box.css +754 -30
  172. package/dist/collection/components/pds-box/pds-box.js.map +1 -1
  173. package/dist/collection/components/pds-box/stories/pds-box.stories.js +0 -2
  174. package/dist/collection/components/pds-button/pds-button.css +11 -8
  175. package/dist/collection/components/pds-button/pds-button.js.map +1 -1
  176. package/dist/collection/components/pds-button/stories/pds-button.stories.js +2 -5
  177. package/dist/collection/components/pds-checkbox/checkbox-interface.js.map +1 -1
  178. package/dist/collection/components/pds-checkbox/pds-checkbox.css +3 -3
  179. package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -1
  180. package/dist/collection/components/pds-checkbox/stories/pds-checkbox.stories.js +1 -9
  181. package/dist/collection/components/pds-chip/pds-chip.css +3 -3
  182. package/dist/collection/components/pds-chip/pds-chip.js.map +1 -1
  183. package/dist/collection/components/pds-chip/stories/pds-chip.stories.js +3 -9
  184. package/dist/collection/components/pds-combobox/pds-combobox.css +7 -7
  185. package/dist/collection/components/pds-combobox/pds-combobox.js.map +1 -1
  186. package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +2 -9
  187. package/dist/collection/components/pds-copytext/pds-copytext.css +1 -1
  188. package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
  189. package/dist/collection/components/pds-copytext/stories/pds-copytext.stories.js +3 -9
  190. package/dist/collection/components/pds-divider/pds-divider.js.map +1 -1
  191. package/dist/collection/components/pds-divider/stories/pds-divider.stories.js +0 -2
  192. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-item/pds-dropdown-menu-item.css +2 -1
  193. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-item/pds-dropdown-menu-item.js.map +1 -1
  194. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-separator/pds-dropdown-menu-separator.css +1 -1
  195. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-separator/pds-dropdown-menu-separator.js.map +1 -1
  196. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +4 -0
  197. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.js.map +1 -1
  198. package/dist/collection/components/pds-dropdown-menu/stories/pds-dropdown-menu.stories.js +3 -9
  199. package/dist/collection/components/pds-filters/pds-filter/filter-interface.js.map +1 -1
  200. package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +13 -13
  201. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js.map +1 -1
  202. package/dist/collection/components/pds-filters/pds-filter/stories/pds-filter.stories.js +3 -9
  203. package/dist/collection/components/pds-filters/pds-filters.js.map +1 -1
  204. package/dist/collection/components/pds-filters/stories/pds-filters.stories.js +3 -9
  205. package/dist/collection/components/pds-image/pds-image.js.map +1 -1
  206. package/dist/collection/components/pds-image/stories/pds-image.stories.js +0 -2
  207. package/dist/collection/components/pds-input/input-interface.js.map +1 -1
  208. package/dist/collection/components/pds-input/pds-input.css +8 -2
  209. package/dist/collection/components/pds-input/pds-input.js.map +1 -1
  210. package/dist/collection/components/pds-input/stories/pds-input.stories.js +3 -13
  211. package/dist/collection/components/pds-link/pds-link.css +1 -1
  212. package/dist/collection/components/pds-link/pds-link.js.map +1 -1
  213. package/dist/collection/components/pds-link/stories/pds-link.stories.js +0 -2
  214. package/dist/collection/components/pds-loader/pds-loader.css +2 -2
  215. package/dist/collection/components/pds-loader/pds-loader.js.map +1 -1
  216. package/dist/collection/components/pds-loader/stories/pds-loader.stories.js +0 -2
  217. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.css +4 -4
  218. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js.map +1 -1
  219. package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js.map +1 -1
  220. package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js.map +1 -1
  221. package/dist/collection/components/pds-modal/pds-modal.js.map +1 -1
  222. package/dist/collection/components/pds-modal/stories/pds-modal.stories.js +3 -9
  223. package/dist/collection/components/pds-modal/test/mock-pds-modal.js.map +1 -1
  224. package/dist/collection/components/pds-popover/pds-popover.js +6 -3
  225. package/dist/collection/components/pds-popover/pds-popover.js.map +1 -1
  226. package/dist/collection/components/pds-popover/popover-interface.js.map +1 -1
  227. package/dist/collection/components/pds-popover/stories/pds-popover.stories.js +3 -9
  228. package/dist/collection/components/pds-progress/pds-progress.css +4 -4
  229. package/dist/collection/components/pds-progress/pds-progress.js.map +1 -1
  230. package/dist/collection/components/pds-progress/stories/pds-progress.stories.js +0 -2
  231. package/dist/collection/components/pds-property/pds-property.js.map +1 -1
  232. package/dist/collection/components/pds-property/stories/pds-property.stories.js +0 -4
  233. package/dist/collection/components/pds-radio/pds-radio.css +49 -50
  234. package/dist/collection/components/pds-radio/pds-radio.js +8 -3
  235. package/dist/collection/components/pds-radio/pds-radio.js.map +1 -1
  236. package/dist/collection/components/pds-radio/stories/pds-radio.stories.js +4 -11
  237. package/dist/collection/components/pds-radio-group/pds-radio-group.css +43 -0
  238. package/dist/collection/components/pds-radio-group/pds-radio-group.js +431 -0
  239. package/dist/collection/components/pds-radio-group/pds-radio-group.js.map +1 -0
  240. package/dist/collection/components/pds-radio-group/radio-group-interface.js +2 -0
  241. package/dist/collection/components/pds-radio-group/radio-group-interface.js.map +1 -0
  242. package/dist/collection/components/pds-radio-group/stories/pds-radio-group.stories.js +134 -0
  243. package/dist/collection/components/pds-row/pds-row.js +1 -1
  244. package/dist/collection/components/pds-row/pds-row.js.map +1 -1
  245. package/dist/collection/components/pds-row/stories/pds-row.stories.js +0 -2
  246. package/dist/collection/components/pds-select/pds-select.css +8 -0
  247. package/dist/collection/components/pds-select/pds-select.js +1 -1
  248. package/dist/collection/components/pds-select/pds-select.js.map +1 -1
  249. package/dist/collection/components/pds-select/stories/pds-select.stories.js +3 -9
  250. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
  251. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js.map +1 -1
  252. package/dist/collection/components/pds-sortable/pds-sortable-item/stories/pds-sortable-item.stories.js +0 -2
  253. package/dist/collection/components/pds-sortable/pds-sortable.js +1 -1
  254. package/dist/collection/components/pds-sortable/pds-sortable.js.map +1 -1
  255. package/dist/collection/components/pds-sortable/sortable-interface.js.map +1 -1
  256. package/dist/collection/components/pds-sortable/stories/pds-sortable.stories.js +3 -9
  257. package/dist/collection/components/pds-switch/pds-switch.css +1 -1
  258. package/dist/collection/components/pds-switch/pds-switch.js +3 -3
  259. package/dist/collection/components/pds-switch/pds-switch.js.map +1 -1
  260. package/dist/collection/components/pds-switch/stories/pds-switch.stories.js +3 -9
  261. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +1 -1
  262. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js.map +1 -1
  263. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +2 -2
  264. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -1
  265. package/dist/collection/components/pds-table/pds-table-cell/stories/pds-table-cell.stories.js +0 -4
  266. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -1
  267. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  268. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js.map +1 -1
  269. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +2 -2
  270. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +2 -2
  271. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js.map +1 -1
  272. package/dist/collection/components/pds-table/pds-table-head-cell/stories/pds-table-head-cell.stories.js +0 -4
  273. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -1
  274. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
  275. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js.map +1 -1
  276. package/dist/collection/components/pds-table/pds-table-row/stories/pds-table-row.stories.js +3 -9
  277. package/dist/collection/components/pds-table/pds-table.css +1 -1
  278. package/dist/collection/components/pds-table/pds-table.js.map +1 -1
  279. package/dist/collection/components/pds-table/stories/pds-table.stories.js +3 -9
  280. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +6 -3
  281. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -3
  282. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js.map +1 -1
  283. package/dist/collection/components/pds-tabs/pds-tab/stories/pds-tab.stories.js +0 -4
  284. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
  285. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js.map +1 -1
  286. package/dist/collection/components/pds-tabs/pds-tabpanel/stories/pds-tabpanel.stories.js +0 -4
  287. package/dist/collection/components/pds-tabs/pds-tabs.css +2 -2
  288. package/dist/collection/components/pds-tabs/pds-tabs.js +1 -1
  289. package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -1
  290. package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +3 -9
  291. package/dist/collection/components/pds-text/pds-text.css +1 -1
  292. package/dist/collection/components/pds-text/pds-text.js +1 -1
  293. package/dist/collection/components/pds-text/pds-text.js.map +1 -1
  294. package/dist/collection/components/pds-text/stories/pds-text.stories.js +17 -30
  295. package/dist/collection/components/pds-textarea/pds-textarea.css +8 -1
  296. package/dist/collection/components/pds-textarea/pds-textarea.js +4 -4
  297. package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
  298. package/dist/collection/components/pds-textarea/stories/pds-textarea.stories.js +3 -14
  299. package/dist/collection/components/pds-textarea/textarea-interface.js.map +1 -1
  300. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  301. package/dist/collection/components/pds-toast/pds-toast.js.map +1 -1
  302. package/dist/collection/components/pds-toast/stories/pds-toast.stories.js +3 -11
  303. package/dist/collection/components/pds-tooltip/pds-tooltip.js +2 -2
  304. package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
  305. package/dist/collection/components/pds-tooltip/stories/pds-tooltip.stories.js +3 -9
  306. package/dist/collection/global/pine-ui-global.js.map +1 -1
  307. package/dist/collection/index.js +1 -0
  308. package/dist/collection/index.js.map +1 -1
  309. package/dist/collection/utils/attributes.js.map +1 -1
  310. package/dist/collection/utils/closest.js.map +1 -1
  311. package/dist/collection/utils/form.js.map +1 -1
  312. package/dist/collection/utils/interfaces.js.map +1 -1
  313. package/dist/collection/utils/overlay.js.map +1 -1
  314. package/dist/collection/utils/types.js.map +1 -1
  315. package/dist/collection/utils/utils.js.map +1 -1
  316. package/dist/docs.json +334 -1
  317. package/dist/esm/{index-CvGEHHLR.js → index-CShvJnsl.js} +3 -3
  318. package/dist/{esm-es5/index-CvGEHHLR.js.map → esm/index-CShvJnsl.js.map} +1 -1
  319. package/dist/esm/{index-Bh07GI-d.js → index-DHPhrb5T.js} +3 -3
  320. package/dist/esm/index-DHPhrb5T.js.map +1 -0
  321. package/dist/esm/loader.js +3 -3
  322. package/dist/esm/mock-pds-modal.entry.js +1 -1
  323. package/dist/esm/pds-accordion.entry.js +3 -3
  324. package/dist/esm/pds-accordion.entry.js.map +1 -1
  325. package/dist/esm/pds-alert.entry.js +3 -3
  326. package/dist/esm/pds-alert.entry.js.map +1 -1
  327. package/dist/esm/pds-avatar.entry.js +3 -3
  328. package/dist/esm/pds-avatar.entry.js.map +1 -1
  329. package/dist/esm/pds-box.entry.js +2 -2
  330. package/dist/esm/pds-box.entry.js.map +1 -1
  331. package/dist/esm/pds-button.entry.js +3 -3
  332. package/dist/esm/pds-button.entry.js.map +1 -1
  333. package/dist/esm/pds-checkbox.entry.js +3 -3
  334. package/dist/esm/pds-checkbox.entry.js.map +1 -1
  335. package/dist/esm/pds-chip.entry.js +3 -3
  336. package/dist/esm/pds-chip.entry.js.map +1 -1
  337. package/dist/esm/pds-combobox.entry.js +2 -2
  338. package/dist/esm/pds-combobox.entry.js.map +1 -1
  339. package/dist/esm/pds-copytext.entry.js +3 -3
  340. package/dist/esm/pds-copytext.entry.js.map +1 -1
  341. package/dist/esm/pds-divider.entry.js +1 -1
  342. package/dist/esm/pds-dropdown-menu-item.entry.js +2 -2
  343. package/dist/esm/pds-dropdown-menu-item.entry.js.map +1 -1
  344. package/dist/esm/pds-dropdown-menu-separator.entry.js +2 -2
  345. package/dist/esm/pds-dropdown-menu-separator.entry.js.map +1 -1
  346. package/dist/esm/pds-dropdown-menu.entry.js +2 -2
  347. package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
  348. package/dist/esm/pds-filter.entry.js +3 -3
  349. package/dist/esm/pds-filter.entry.js.map +1 -1
  350. package/dist/esm/pds-filters.entry.js +1 -1
  351. package/dist/esm/pds-icon.entry.js +1 -1
  352. package/dist/esm/pds-image.entry.js +1 -1
  353. package/dist/esm/pds-input.entry.js +3 -3
  354. package/dist/esm/pds-input.entry.js.map +1 -1
  355. package/dist/esm/pds-link.entry.js +3 -3
  356. package/dist/esm/pds-link.entry.js.map +1 -1
  357. package/dist/esm/pds-loader.entry.js +2 -2
  358. package/dist/esm/pds-loader.entry.js.map +1 -1
  359. package/dist/esm/pds-modal-content.entry.js +2 -2
  360. package/dist/esm/pds-modal-content.entry.js.map +1 -1
  361. package/dist/esm/pds-modal-footer.entry.js +1 -1
  362. package/dist/esm/pds-modal-header.entry.js +1 -1
  363. package/dist/esm/pds-modal.entry.js +1 -1
  364. package/dist/esm/pds-popover.entry.js +7 -4
  365. package/dist/esm/pds-popover.entry.js.map +1 -1
  366. package/dist/esm/pds-progress.entry.js +2 -2
  367. package/dist/esm/pds-progress.entry.js.map +1 -1
  368. package/dist/esm/pds-property.entry.js +1 -1
  369. package/dist/esm/pds-radio-group.entry.js +168 -0
  370. package/dist/esm/pds-radio-group.entry.js.map +1 -0
  371. package/dist/esm/pds-radio.entry.js +11 -6
  372. package/dist/esm/pds-radio.entry.js.map +1 -1
  373. package/dist/esm/pds-row.entry.js +2 -2
  374. package/dist/esm/pds-select.entry.js +4 -4
  375. package/dist/esm/pds-select.entry.js.map +1 -1
  376. package/dist/esm/pds-sortable-item.entry.js +3 -3
  377. package/dist/esm/pds-sortable.entry.js +2 -2
  378. package/dist/esm/pds-switch.entry.js +6 -6
  379. package/dist/esm/pds-switch.entry.js.map +1 -1
  380. package/dist/esm/pds-tab.entry.js +5 -5
  381. package/dist/esm/pds-tab.entry.js.map +1 -1
  382. package/dist/esm/pds-table-body.entry.js +2 -2
  383. package/dist/esm/pds-table-cell.entry.js +3 -3
  384. package/dist/esm/pds-table-head-cell.entry.js +5 -5
  385. package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
  386. package/dist/esm/pds-table-head.entry.js +3 -3
  387. package/dist/esm/pds-table-head.entry.js.map +1 -1
  388. package/dist/esm/pds-table-row.entry.js +3 -3
  389. package/dist/esm/pds-table-row.entry.js.map +1 -1
  390. package/dist/esm/pds-table.entry.js +2 -2
  391. package/dist/esm/pds-table.entry.js.map +1 -1
  392. package/dist/esm/pds-tabpanel.entry.js +2 -2
  393. package/dist/esm/pds-tabs.entry.js +3 -3
  394. package/dist/esm/pds-tabs.entry.js.map +1 -1
  395. package/dist/esm/pds-text.entry.js +3 -3
  396. package/dist/esm/pds-text.entry.js.map +1 -1
  397. package/dist/esm/pds-textarea.entry.js +7 -7
  398. package/dist/esm/pds-textarea.entry.js.map +1 -1
  399. package/dist/esm/pds-toast.entry.js +4 -4
  400. package/dist/esm/pds-tooltip.entry.js +3 -3
  401. package/dist/esm/pine-core.js +3 -3
  402. package/dist/esm-es5/{index-CvGEHHLR.js → index-CShvJnsl.js} +2 -2
  403. package/dist/{esm/index-CvGEHHLR.js.map → esm-es5/index-CShvJnsl.js.map} +1 -1
  404. package/dist/esm-es5/index-DHPhrb5T.js +3 -0
  405. package/dist/esm-es5/index-DHPhrb5T.js.map +1 -0
  406. package/dist/esm-es5/loader.js +1 -1
  407. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  408. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  409. package/dist/esm-es5/pds-accordion.entry.js.map +1 -1
  410. package/dist/esm-es5/pds-alert.entry.js +1 -1
  411. package/dist/esm-es5/pds-alert.entry.js.map +1 -1
  412. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  413. package/dist/esm-es5/pds-avatar.entry.js.map +1 -1
  414. package/dist/esm-es5/pds-box.entry.js +1 -1
  415. package/dist/esm-es5/pds-box.entry.js.map +1 -1
  416. package/dist/esm-es5/pds-button.entry.js +1 -1
  417. package/dist/esm-es5/pds-button.entry.js.map +1 -1
  418. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  419. package/dist/esm-es5/pds-checkbox.entry.js.map +1 -1
  420. package/dist/esm-es5/pds-chip.entry.js +1 -1
  421. package/dist/esm-es5/pds-chip.entry.js.map +1 -1
  422. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  423. package/dist/esm-es5/pds-combobox.entry.js.map +1 -1
  424. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  425. package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
  426. package/dist/esm-es5/pds-divider.entry.js +1 -1
  427. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  428. package/dist/esm-es5/pds-dropdown-menu-item.entry.js.map +1 -1
  429. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  430. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js.map +1 -1
  431. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  432. package/dist/esm-es5/pds-dropdown-menu.entry.js.map +1 -1
  433. package/dist/esm-es5/pds-filter.entry.js +1 -1
  434. package/dist/esm-es5/pds-filter.entry.js.map +1 -1
  435. package/dist/esm-es5/pds-filters.entry.js +1 -1
  436. package/dist/esm-es5/pds-icon.entry.js +1 -1
  437. package/dist/esm-es5/pds-image.entry.js +1 -1
  438. package/dist/esm-es5/pds-input.entry.js +1 -1
  439. package/dist/esm-es5/pds-input.entry.js.map +1 -1
  440. package/dist/esm-es5/pds-link.entry.js +1 -1
  441. package/dist/esm-es5/pds-link.entry.js.map +1 -1
  442. package/dist/esm-es5/pds-loader.entry.js +1 -1
  443. package/dist/esm-es5/pds-loader.entry.js.map +1 -1
  444. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  445. package/dist/esm-es5/pds-modal-content.entry.js.map +1 -1
  446. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  447. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  448. package/dist/esm-es5/pds-modal.entry.js +1 -1
  449. package/dist/esm-es5/pds-popover.entry.js +1 -1
  450. package/dist/esm-es5/pds-popover.entry.js.map +1 -1
  451. package/dist/esm-es5/pds-progress.entry.js +1 -1
  452. package/dist/esm-es5/pds-progress.entry.js.map +1 -1
  453. package/dist/esm-es5/pds-property.entry.js +1 -1
  454. package/dist/esm-es5/pds-radio-group.entry.js +2 -0
  455. package/dist/esm-es5/pds-radio-group.entry.js.map +1 -0
  456. package/dist/esm-es5/pds-radio.entry.js +1 -1
  457. package/dist/esm-es5/pds-radio.entry.js.map +1 -1
  458. package/dist/esm-es5/pds-row.entry.js +1 -1
  459. package/dist/esm-es5/pds-select.entry.js +1 -1
  460. package/dist/esm-es5/pds-select.entry.js.map +1 -1
  461. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  462. package/dist/esm-es5/pds-sortable.entry.js +2 -2
  463. package/dist/esm-es5/pds-switch.entry.js +1 -1
  464. package/dist/esm-es5/pds-switch.entry.js.map +1 -1
  465. package/dist/esm-es5/pds-tab.entry.js +1 -1
  466. package/dist/esm-es5/pds-tab.entry.js.map +1 -1
  467. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  468. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  469. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  470. package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
  471. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  472. package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
  473. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  474. package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
  475. package/dist/esm-es5/pds-table.entry.js +1 -1
  476. package/dist/esm-es5/pds-table.entry.js.map +1 -1
  477. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  478. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  479. package/dist/esm-es5/pds-tabs.entry.js.map +1 -1
  480. package/dist/esm-es5/pds-text.entry.js +1 -1
  481. package/dist/esm-es5/pds-text.entry.js.map +1 -1
  482. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  483. package/dist/esm-es5/pds-textarea.entry.js.map +1 -1
  484. package/dist/esm-es5/pds-toast.entry.js +1 -1
  485. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  486. package/dist/esm-es5/pine-core.js +1 -1
  487. package/dist/pine-core/{p-37795a28.system.entry.js → p-00568c20.system.entry.js} +2 -2
  488. package/dist/pine-core/{p-53645ec6.system.entry.js → p-03209958.system.entry.js} +2 -2
  489. package/dist/pine-core/p-0398f6e3.entry.js +2 -0
  490. package/dist/pine-core/{p-d0efe5e1.entry.js.map → p-0398f6e3.entry.js.map} +1 -1
  491. package/dist/pine-core/p-04294b28.system.entry.js +2 -0
  492. package/dist/pine-core/{p-052eedc2.system.entry.js.map → p-04294b28.system.entry.js.map} +1 -1
  493. package/dist/pine-core/p-04a7b66c.system.entry.js +2 -0
  494. package/dist/pine-core/{p-a2c309fa.system.entry.js.map → p-04a7b66c.system.entry.js.map} +1 -1
  495. package/dist/pine-core/p-04f92b5a.system.entry.js +2 -0
  496. package/dist/pine-core/{p-1ac7cb0f.system.entry.js.map → p-04f92b5a.system.entry.js.map} +1 -1
  497. package/dist/pine-core/p-0869fe00.entry.js +2 -0
  498. package/dist/pine-core/p-0869fe00.entry.js.map +1 -0
  499. package/dist/pine-core/{p-1fbe221a.entry.js → p-0ace9c16.entry.js} +2 -2
  500. package/dist/pine-core/p-0b05708b.entry.js +2 -0
  501. package/dist/pine-core/{p-43b758af.entry.js.map → p-0b05708b.entry.js.map} +1 -1
  502. package/dist/pine-core/{p-e47fbd71.entry.js → p-10e0be55.entry.js} +2 -2
  503. package/dist/pine-core/{p-b0948892.system.entry.js → p-1df25b57.system.entry.js} +2 -2
  504. package/dist/pine-core/p-1f5ed7bb.system.entry.js +2 -0
  505. package/dist/pine-core/{p-e22c4870.system.entry.js.map → p-1f5ed7bb.system.entry.js.map} +1 -1
  506. package/dist/pine-core/{p-d6cff25a.entry.js → p-1fa303af.entry.js} +2 -2
  507. package/dist/pine-core/{p-996072ce.entry.js → p-2058a93a.entry.js} +2 -2
  508. package/dist/pine-core/p-227d5375.entry.js +2 -0
  509. package/dist/pine-core/{p-de4ebf0b.entry.js.map → p-227d5375.entry.js.map} +1 -1
  510. package/dist/pine-core/p-2319298c.system.entry.js +2 -0
  511. package/dist/pine-core/{p-5e1804a3.system.entry.js.map → p-2319298c.system.entry.js.map} +1 -1
  512. package/dist/pine-core/p-232e4282.system.entry.js +2 -0
  513. package/dist/pine-core/{p-49c5234f.system.entry.js.map → p-232e4282.system.entry.js.map} +1 -1
  514. package/dist/pine-core/{p-c5cda159.system.entry.js → p-2d3da08b.system.entry.js} +2 -2
  515. package/dist/pine-core/{p-7a63e1ec.entry.js → p-2f6f60d9.entry.js} +2 -2
  516. package/dist/pine-core/p-372a6081.entry.js +2 -0
  517. package/dist/pine-core/{p-e25d2c53.entry.js.map → p-372a6081.entry.js.map} +1 -1
  518. package/dist/pine-core/p-3a231ae4.system.entry.js +2 -0
  519. package/dist/pine-core/{p-1c03ac40.system.entry.js.map → p-3a231ae4.system.entry.js.map} +1 -1
  520. package/dist/pine-core/{p-841a6445.entry.js → p-3f6b9520.entry.js} +2 -2
  521. package/dist/pine-core/{p-06f164fe.system.entry.js → p-3f8a5f3d.system.entry.js} +2 -2
  522. package/dist/pine-core/{p-ba1a4643.system.entry.js → p-3f8b0885.system.entry.js} +2 -2
  523. package/dist/pine-core/p-428a96f9.entry.js +2 -0
  524. package/dist/pine-core/{p-0ea23735.entry.js.map → p-428a96f9.entry.js.map} +1 -1
  525. package/dist/pine-core/{p-ba609b1e.entry.js → p-43990889.entry.js} +2 -2
  526. package/dist/pine-core/{p-fc832660.entry.js → p-43f1eead.entry.js} +2 -2
  527. package/dist/pine-core/p-4778ae70.entry.js +2 -0
  528. package/dist/pine-core/{p-a1ddcc69.entry.js.map → p-4778ae70.entry.js.map} +1 -1
  529. package/dist/pine-core/p-4c0797f2.entry.js +2 -0
  530. package/dist/pine-core/{p-3900b6f6.entry.js.map → p-4c0797f2.entry.js.map} +1 -1
  531. package/dist/pine-core/{p-D5MCs-6L.system.js.map → p-4fD2iHS9.system.js.map} +1 -1
  532. package/dist/pine-core/p-553e4543.entry.js +2 -0
  533. package/dist/pine-core/{p-c85b0d07.entry.js.map → p-553e4543.entry.js.map} +1 -1
  534. package/dist/pine-core/p-58fa5c8f.entry.js +2 -0
  535. package/dist/pine-core/{p-0837abe8.entry.js.map → p-58fa5c8f.entry.js.map} +1 -1
  536. package/dist/pine-core/{p-535a91bd.entry.js → p-596acf65.entry.js} +3 -3
  537. package/dist/pine-core/p-5D9wXQuJ.system.js +3 -0
  538. package/dist/pine-core/p-5D9wXQuJ.system.js.map +1 -0
  539. package/dist/pine-core/p-5b2b3e8a.entry.js +2 -0
  540. package/dist/pine-core/{p-7c2381c5.entry.js.map → p-5b2b3e8a.entry.js.map} +1 -1
  541. package/dist/pine-core/p-5d7c4fbb.entry.js +2 -0
  542. package/dist/pine-core/{p-730ea265.entry.js.map → p-5d7c4fbb.entry.js.map} +1 -1
  543. package/dist/pine-core/p-5f6cd30d.system.entry.js +2 -0
  544. package/dist/pine-core/{p-c751ad1d.system.entry.js.map → p-5f6cd30d.system.entry.js.map} +1 -1
  545. package/dist/pine-core/p-61588eac.entry.js +2 -0
  546. package/dist/pine-core/{p-55d120d1.entry.js.map → p-61588eac.entry.js.map} +1 -1
  547. package/dist/pine-core/p-65c566a2.system.entry.js +2 -0
  548. package/dist/pine-core/{p-1f28575b.system.entry.js.map → p-65c566a2.system.entry.js.map} +1 -1
  549. package/dist/pine-core/p-65db991d.entry.js +2 -0
  550. package/dist/pine-core/{p-1b299f58.entry.js.map → p-65db991d.entry.js.map} +1 -1
  551. package/dist/pine-core/p-66160018.entry.js +3 -0
  552. package/dist/pine-core/{p-bd11961c.entry.js.map → p-66160018.entry.js.map} +1 -1
  553. package/dist/pine-core/{p-f2344cb2.system.entry.js → p-670b1551.system.entry.js} +2 -2
  554. package/dist/pine-core/p-670b1551.system.entry.js.map +1 -0
  555. package/dist/pine-core/p-676f1f32.system.entry.js +2 -0
  556. package/dist/pine-core/p-676f1f32.system.entry.js.map +1 -0
  557. package/dist/pine-core/p-6ace63a3.system.entry.js +2 -0
  558. package/dist/pine-core/{p-0a29a0a4.system.entry.js.map → p-6ace63a3.system.entry.js.map} +1 -1
  559. package/dist/pine-core/p-6be19a23.system.entry.js +2 -0
  560. package/dist/pine-core/{p-c28c54c2.system.entry.js.map → p-6be19a23.system.entry.js.map} +1 -1
  561. package/dist/pine-core/{p-168b5a5b.system.entry.js → p-6dcd7876.system.entry.js} +2 -2
  562. package/dist/pine-core/p-6de73f62.entry.js +2 -0
  563. package/dist/pine-core/{p-1d3c4f2d.entry.js.map → p-6de73f62.entry.js.map} +1 -1
  564. package/dist/pine-core/p-711989de.entry.js +2 -0
  565. package/dist/pine-core/{p-2551ed1a.entry.js.map → p-711989de.entry.js.map} +1 -1
  566. package/dist/pine-core/p-7ccd2fd6.system.entry.js +2 -0
  567. package/dist/pine-core/{p-e715d22e.system.entry.js.map → p-7ccd2fd6.system.entry.js.map} +1 -1
  568. package/dist/pine-core/{p-ed214033.entry.js → p-7de73ac5.entry.js} +2 -2
  569. package/dist/pine-core/p-80017aa5.entry.js +2 -0
  570. package/dist/pine-core/{p-9f7318d7.entry.js.map → p-80017aa5.entry.js.map} +1 -1
  571. package/dist/pine-core/p-8007f4de.entry.js +2 -0
  572. package/dist/pine-core/p-8007f4de.entry.js.map +1 -0
  573. package/dist/pine-core/p-8323fe69.system.entry.js +2 -0
  574. package/dist/pine-core/{p-1ab0a7b1.system.entry.js.map → p-8323fe69.system.entry.js.map} +1 -1
  575. package/dist/pine-core/p-847fc77b.system.entry.js +2 -0
  576. package/dist/pine-core/{p-ab34c977.system.entry.js.map → p-847fc77b.system.entry.js.map} +1 -1
  577. package/dist/pine-core/{p-51e0ea73.entry.js → p-8c000d7c.entry.js} +2 -2
  578. package/dist/pine-core/p-8c7fdaf5.system.entry.js +2 -0
  579. package/dist/pine-core/{p-f38e87ad.system.entry.js.map → p-8c7fdaf5.system.entry.js.map} +1 -1
  580. package/dist/pine-core/p-91954848.entry.js +2 -0
  581. package/dist/pine-core/{p-6f5dfd01.entry.js.map → p-91954848.entry.js.map} +1 -1
  582. package/dist/pine-core/p-934229d8.entry.js +2 -0
  583. package/dist/pine-core/{p-4ea1a4fb.entry.js.map → p-934229d8.entry.js.map} +1 -1
  584. package/dist/pine-core/p-94788439.system.entry.js +2 -0
  585. package/dist/pine-core/{p-c0fef05c.system.entry.js.map → p-94788439.system.entry.js.map} +1 -1
  586. package/dist/pine-core/{p-5a94e426.system.entry.js → p-94b1997d.system.entry.js} +2 -2
  587. package/dist/pine-core/{p-f74bcc1d.entry.js → p-9998c2a0.entry.js} +2 -2
  588. package/dist/pine-core/p-9f0f1389.entry.js +2 -0
  589. package/dist/pine-core/{p-a494b7d1.entry.js.map → p-9f0f1389.entry.js.map} +1 -1
  590. package/dist/pine-core/{p-DAxIps70.system.js.map → p-B0Y1Zs9b.system.js.map} +1 -1
  591. package/dist/pine-core/p-B1wJrRWz.system.js.map +1 -0
  592. package/dist/pine-core/p-BK-Kji1Y.system.js.map +1 -0
  593. package/dist/pine-core/p-BQImnLWy.system.js.map +1 -0
  594. package/dist/pine-core/p-BUwuPP5j.system.js.map +1 -0
  595. package/dist/pine-core/p-BVjyFx0r.system.js.map +1 -0
  596. package/dist/pine-core/p-BZj284A2.system.js.map +1 -0
  597. package/dist/pine-core/{p-BynWb21G.system.js.map → p-BjRES1T-.system.js.map} +1 -1
  598. package/dist/pine-core/p-Bp1qn6CS.system.js.map +1 -0
  599. package/dist/pine-core/{p-Btz7Q5Hx.system.js.map → p-Brpt0zl5.system.js.map} +1 -1
  600. package/dist/pine-core/p-C56crVDC.system.js.map +1 -0
  601. package/dist/pine-core/p-CAnnMfDw.system.js.map +1 -0
  602. package/dist/pine-core/{p-BMv60T1z.system.js.map → p-CI7DD4Gj.system.js.map} +1 -1
  603. package/dist/pine-core/p-CJJ3xfku.system.js.map +1 -0
  604. package/dist/pine-core/{p-CvGEHHLR.js → p-CShvJnsl.js} +2 -2
  605. package/dist/pine-core/{p-CvGEHHLR.js.map → p-CShvJnsl.js.map} +1 -1
  606. package/dist/pine-core/{p-CqtdHqyo.system.js.map → p-CUmDvil2.system.js.map} +1 -1
  607. package/dist/pine-core/p-CgF-S6vZ.system.js.map +1 -0
  608. package/dist/pine-core/{p-CoBzoZzZ.system.js.map → p-CijIWK3K.system.js.map} +1 -1
  609. package/dist/pine-core/{p-oqHEiE2W.system.js.map → p-ClPf_JF1.system.js.map} +1 -1
  610. package/dist/pine-core/p-CrjhL65U.system.js.map +1 -0
  611. package/dist/pine-core/p-CrzS8Mmy.system.js.map +1 -0
  612. package/dist/pine-core/p-CsVpJw_i.system.js.map +1 -0
  613. package/dist/pine-core/{p-DCLLstWD.system.js.map → p-Cwz8YTwo.system.js.map} +1 -1
  614. package/dist/pine-core/p-D2aexWnE.system.js.map +1 -0
  615. package/dist/pine-core/p-D8Jc24Qq.system.js.map +1 -0
  616. package/dist/pine-core/p-D8bibuWO.system.js.map +1 -0
  617. package/dist/pine-core/p-DBdgdjLr.system.js.map +1 -0
  618. package/dist/pine-core/p-DHPhrb5T.js +3 -0
  619. package/dist/pine-core/p-DHPhrb5T.js.map +1 -0
  620. package/dist/pine-core/p-DM7CGpRH.system.js.map +1 -0
  621. package/dist/pine-core/p-DYq1Mef8.system.js.map +1 -0
  622. package/dist/pine-core/p-D_LvnDUT.system.js.map +1 -0
  623. package/dist/pine-core/p-DaQV83Gx.system.js.map +1 -0
  624. package/dist/pine-core/{p-CbrMVAcu.system.js.map → p-DkNlmqjM.system.js.map} +1 -1
  625. package/dist/pine-core/{p-dWrReyPk.system.js.map → p-DmUcUg32.system.js.map} +1 -1
  626. package/dist/pine-core/p-DmVKABQy.system.js.map +1 -0
  627. package/dist/pine-core/{p-B9oQYxlC.system.js.map → p-DoP8Sl1O.system.js.map} +1 -1
  628. package/dist/pine-core/{p-BeaxER_z.system.js.map → p-DpOZDNuz.system.js.map} +1 -1
  629. package/dist/pine-core/{p-B8ftT2uA.system.js.map → p-DpeOrUYB.system.js.map} +1 -1
  630. package/dist/pine-core/p-Drfvoxcd.system.js.map +1 -0
  631. package/dist/pine-core/{p-l33dh9cy.system.js.map → p-GKNvlYGa.system.js.map} +1 -1
  632. package/dist/pine-core/{p-pStt9pIi.system.js.map → p-IH8oGXiE.system.js.map} +1 -1
  633. package/dist/pine-core/p-JAVnELnm.system.js +2 -0
  634. package/dist/pine-core/{p-Cua7cmvq.system.js.map → p-JAVnELnm.system.js.map} +1 -1
  635. package/dist/pine-core/p-PAmjcE4m.system.js.map +1 -0
  636. package/dist/pine-core/p-RO-Y2DRT.system.js.map +1 -0
  637. package/dist/pine-core/{p-YAyZ2OFh.system.js.map → p-X0_TH-op.system.js.map} +1 -1
  638. package/dist/pine-core/{p-e948a514.system.entry.js → p-a11c3642.system.entry.js} +2 -2
  639. package/dist/pine-core/p-a226ecdb.system.entry.js +2 -0
  640. package/dist/pine-core/{p-619a6667.system.entry.js.map → p-a226ecdb.system.entry.js.map} +1 -1
  641. package/dist/pine-core/p-a4b16b32.system.entry.js +2 -0
  642. package/dist/pine-core/{p-f70327de.system.entry.js.map → p-a4b16b32.system.entry.js.map} +1 -1
  643. package/dist/pine-core/p-a54f4dfd.system.entry.js +2 -0
  644. package/dist/pine-core/{p-6d9ca1ff.system.entry.js.map → p-a54f4dfd.system.entry.js.map} +1 -1
  645. package/dist/pine-core/{p-1956a234.system.entry.js → p-ac14c8e3.system.entry.js} +3 -3
  646. package/dist/pine-core/{p-1bf75b30.system.entry.js → p-ac186cd4.system.entry.js} +2 -2
  647. package/dist/pine-core/{p-fe23aa6f.system.entry.js → p-b59a0c6b.system.entry.js} +2 -2
  648. package/dist/pine-core/p-b59ac781.entry.js +2 -0
  649. package/dist/pine-core/{p-fb877b9d.entry.js.map → p-b59ac781.entry.js.map} +1 -1
  650. package/dist/pine-core/p-b64407a4.entry.js +2 -0
  651. package/dist/pine-core/{p-b9135a30.entry.js.map → p-b64407a4.entry.js.map} +1 -1
  652. package/dist/pine-core/p-b6a503cc.system.entry.js +2 -0
  653. package/dist/pine-core/{p-7a12238d.system.entry.js.map → p-b6a503cc.system.entry.js.map} +1 -1
  654. package/dist/pine-core/p-b8047816.system.entry.js +2 -0
  655. package/dist/pine-core/{p-5a332f9e.system.entry.js.map → p-b8047816.system.entry.js.map} +1 -1
  656. package/dist/pine-core/p-b9a14564.system.entry.js +2 -0
  657. package/dist/pine-core/{p-eb3fe298.system.entry.js.map → p-b9a14564.system.entry.js.map} +1 -1
  658. package/dist/pine-core/p-bd53ca9a.system.entry.js +2 -0
  659. package/dist/pine-core/p-bd53ca9a.system.entry.js.map +1 -0
  660. package/dist/pine-core/{p-105951b7.system.entry.js → p-bdf8bff3.system.entry.js} +2 -2
  661. package/dist/pine-core/p-be647b2a.entry.js +2 -0
  662. package/dist/pine-core/{p-19e6bce5.entry.js.map → p-be647b2a.entry.js.map} +1 -1
  663. package/dist/pine-core/p-bee8d4b8.system.entry.js +4 -0
  664. package/dist/pine-core/{p-6e4be339.system.entry.js.map → p-bee8d4b8.system.entry.js.map} +1 -1
  665. package/dist/pine-core/{p-C2AG52JP.system.js.map → p-bkQbPz-z.system.js.map} +1 -1
  666. package/dist/pine-core/p-c08ab042.system.entry.js +2 -0
  667. package/dist/pine-core/p-c08ab042.system.entry.js.map +1 -0
  668. package/dist/pine-core/{p-1d83f560.entry.js → p-c5013d20.entry.js} +2 -2
  669. package/dist/pine-core/p-c9f97ccb.system.entry.js +2 -0
  670. package/dist/pine-core/p-c9f97ccb.system.entry.js.map +1 -0
  671. package/dist/pine-core/p-cd564179.entry.js +2 -0
  672. package/dist/pine-core/{p-a3503596.entry.js.map → p-cd564179.entry.js.map} +1 -1
  673. package/dist/pine-core/{p-01c4eac9.entry.js → p-cf4df489.entry.js} +2 -2
  674. package/dist/pine-core/p-cf910e8b.system.entry.js +2 -0
  675. package/dist/pine-core/p-cf910e8b.system.entry.js.map +1 -0
  676. package/dist/pine-core/p-d0e336b7.system.entry.js +2 -0
  677. package/dist/pine-core/{p-b07bb58f.system.entry.js → p-d1313dd6.system.entry.js} +2 -2
  678. package/dist/pine-core/p-dba5ca37.system.entry.js +2 -0
  679. package/dist/pine-core/p-dba5ca37.system.entry.js.map +1 -0
  680. package/dist/pine-core/p-dfcdd55d.system.entry.js +2 -0
  681. package/dist/pine-core/{p-ee6c07d6.system.entry.js.map → p-dfcdd55d.system.entry.js.map} +1 -1
  682. package/dist/pine-core/{p-2c3ede8e.entry.js → p-e08503a7.entry.js} +2 -2
  683. package/dist/pine-core/{p-2c3ede8e.entry.js.map → p-e08503a7.entry.js.map} +1 -1
  684. package/dist/pine-core/{p-fbf10641.entry.js → p-e0f21c22.entry.js} +2 -2
  685. package/dist/pine-core/{p-B7x-ddku.system.js → p-e50YjICS.system.js} +2 -2
  686. package/dist/pine-core/{p-B7x-ddku.system.js.map → p-e50YjICS.system.js.map} +1 -1
  687. package/dist/pine-core/p-e6b39ec1.entry.js +2 -0
  688. package/dist/pine-core/{p-73a6c002.entry.js.map → p-e6b39ec1.entry.js.map} +1 -1
  689. package/dist/pine-core/p-e7e25d42.entry.js +2 -0
  690. package/dist/pine-core/p-e837b577.entry.js +2 -0
  691. package/dist/pine-core/p-e837b577.entry.js.map +1 -0
  692. package/dist/pine-core/p-eUcBQ_fh.system.js.map +1 -0
  693. package/dist/pine-core/{p-5d379706.system.entry.js → p-ec32c44f.system.entry.js} +2 -2
  694. package/dist/pine-core/p-ejoWgOZK.system.js.map +1 -0
  695. package/dist/pine-core/p-f64ea4f7.entry.js +2 -0
  696. package/dist/pine-core/{p-239cbdb2.entry.js.map → p-f64ea4f7.entry.js.map} +1 -1
  697. package/dist/pine-core/p-f8fba315.entry.js +2 -0
  698. package/dist/pine-core/p-f8fba315.entry.js.map +1 -0
  699. package/dist/pine-core/{p-2f5d1411.entry.js → p-f92055f3.entry.js} +2 -2
  700. package/dist/pine-core/{p-4792d0c8.system.entry.js → p-fa21e054.system.entry.js} +2 -2
  701. package/dist/pine-core/p-qkIMFuAW.system.js.map +1 -0
  702. package/dist/pine-core/{p-CIoeutZO.system.js.map → p-tHMXRB8d.system.js.map} +1 -1
  703. package/dist/pine-core/p-zgS7Vsk7.system.js.map +1 -0
  704. package/dist/pine-core/pds-accordion.entry.esm.js.map +1 -1
  705. package/dist/pine-core/pds-alert.entry.esm.js.map +1 -1
  706. package/dist/pine-core/pds-avatar.entry.esm.js.map +1 -1
  707. package/dist/pine-core/pds-box.entry.esm.js.map +1 -1
  708. package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
  709. package/dist/pine-core/pds-checkbox.entry.esm.js.map +1 -1
  710. package/dist/pine-core/pds-chip.entry.esm.js.map +1 -1
  711. package/dist/pine-core/pds-combobox.entry.esm.js.map +1 -1
  712. package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
  713. package/dist/pine-core/pds-dropdown-menu-item.entry.esm.js.map +1 -1
  714. package/dist/pine-core/pds-dropdown-menu-separator.entry.esm.js.map +1 -1
  715. package/dist/pine-core/pds-dropdown-menu.entry.esm.js.map +1 -1
  716. package/dist/pine-core/pds-filter.entry.esm.js.map +1 -1
  717. package/dist/pine-core/pds-input.entry.esm.js.map +1 -1
  718. package/dist/pine-core/pds-link.entry.esm.js.map +1 -1
  719. package/dist/pine-core/pds-loader.entry.esm.js.map +1 -1
  720. package/dist/pine-core/pds-modal-content.entry.esm.js.map +1 -1
  721. package/dist/pine-core/pds-popover.entry.esm.js.map +1 -1
  722. package/dist/pine-core/pds-progress.entry.esm.js.map +1 -1
  723. package/dist/pine-core/pds-radio-group.entry.esm.js.map +1 -0
  724. package/dist/pine-core/pds-radio.entry.esm.js.map +1 -1
  725. package/dist/pine-core/pds-select.entry.esm.js.map +1 -1
  726. package/dist/pine-core/pds-switch.entry.esm.js.map +1 -1
  727. package/dist/pine-core/pds-tab.entry.esm.js.map +1 -1
  728. package/dist/pine-core/pds-table-head-cell.entry.esm.js.map +1 -1
  729. package/dist/pine-core/pds-table-head.entry.esm.js.map +1 -1
  730. package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
  731. package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
  732. package/dist/pine-core/pds-tabs.entry.esm.js.map +1 -1
  733. package/dist/pine-core/pds-text.entry.esm.js.map +1 -1
  734. package/dist/pine-core/pds-textarea.entry.esm.js.map +1 -1
  735. package/dist/pine-core/pine-core.css +1 -1
  736. package/dist/pine-core/pine-core.esm.js +1 -1
  737. package/dist/pine-core/pine-core.js +1 -1
  738. package/dist/scripts/vscode-custom-data-generator.js +407 -0
  739. package/dist/scripts/vscode-custom-data-generator.js.map +1 -0
  740. package/dist/scripts/vscode-settings-patcher.cjs +89 -0
  741. package/dist/types/components/pds-popover/pds-popover.d.ts +1 -1
  742. package/dist/types/components/pds-radio-group/pds-radio-group.d.ts +72 -0
  743. package/dist/types/components/pds-radio-group/radio-group-interface.d.ts +5 -0
  744. package/dist/types/components.d.ts +124 -0
  745. package/dist/types/home/runner/work/pine/pine/libs/core/.stencil/scripts/vscode-custom-data-generator.d.ts +6 -0
  746. package/dist/types/index.d.ts +1 -0
  747. package/dist/vscode.html-data.json +9965 -0
  748. package/hydrate/index.js +258 -65
  749. package/hydrate/index.mjs +258 -65
  750. package/package.json +29 -15
  751. package/dist/cjs/index-2Lf0E1JO.js.map +0 -1
  752. package/dist/collection/stories/_helpers/index.js +0 -15
  753. package/dist/collection/stories/_helpers/index.js.map +0 -1
  754. package/dist/esm/index-Bh07GI-d.js.map +0 -1
  755. package/dist/esm-es5/index-Bh07GI-d.js +0 -3
  756. package/dist/esm-es5/index-Bh07GI-d.js.map +0 -1
  757. package/dist/pine-core/p-052eedc2.system.entry.js +0 -2
  758. package/dist/pine-core/p-0837abe8.entry.js +0 -2
  759. package/dist/pine-core/p-09cab3b5.system.entry.js +0 -2
  760. package/dist/pine-core/p-09cab3b5.system.entry.js.map +0 -1
  761. package/dist/pine-core/p-0a29a0a4.system.entry.js +0 -2
  762. package/dist/pine-core/p-0ea23735.entry.js +0 -2
  763. package/dist/pine-core/p-198fce07.system.entry.js +0 -2
  764. package/dist/pine-core/p-198fce07.system.entry.js.map +0 -1
  765. package/dist/pine-core/p-19e6bce5.entry.js +0 -2
  766. package/dist/pine-core/p-1W8OgEyK.system.js.map +0 -1
  767. package/dist/pine-core/p-1ab0a7b1.system.entry.js +0 -2
  768. package/dist/pine-core/p-1ac7cb0f.system.entry.js +0 -2
  769. package/dist/pine-core/p-1b299f58.entry.js +0 -2
  770. package/dist/pine-core/p-1c03ac40.system.entry.js +0 -2
  771. package/dist/pine-core/p-1d3c4f2d.entry.js +0 -2
  772. package/dist/pine-core/p-1f28575b.system.entry.js +0 -2
  773. package/dist/pine-core/p-239cbdb2.entry.js +0 -2
  774. package/dist/pine-core/p-2551ed1a.entry.js +0 -2
  775. package/dist/pine-core/p-285bc185.entry.js +0 -2
  776. package/dist/pine-core/p-3900b6f6.entry.js +0 -2
  777. package/dist/pine-core/p-43b758af.entry.js +0 -2
  778. package/dist/pine-core/p-49c5234f.system.entry.js +0 -2
  779. package/dist/pine-core/p-4HGk7WFM.system.js.map +0 -1
  780. package/dist/pine-core/p-4ea1a4fb.entry.js +0 -2
  781. package/dist/pine-core/p-55d120d1.entry.js +0 -2
  782. package/dist/pine-core/p-5a332f9e.system.entry.js +0 -2
  783. package/dist/pine-core/p-5e1804a3.system.entry.js +0 -2
  784. package/dist/pine-core/p-619a6667.system.entry.js +0 -2
  785. package/dist/pine-core/p-6d9ca1ff.system.entry.js +0 -2
  786. package/dist/pine-core/p-6e4be339.system.entry.js +0 -4
  787. package/dist/pine-core/p-6f5dfd01.entry.js +0 -2
  788. package/dist/pine-core/p-730ea265.entry.js +0 -2
  789. package/dist/pine-core/p-73a6c002.entry.js +0 -2
  790. package/dist/pine-core/p-7a12238d.system.entry.js +0 -2
  791. package/dist/pine-core/p-7c2381c5.entry.js +0 -2
  792. package/dist/pine-core/p-7c69ca77.entry.js +0 -2
  793. package/dist/pine-core/p-7c69ca77.entry.js.map +0 -1
  794. package/dist/pine-core/p-818dd3d8.system.entry.js +0 -2
  795. package/dist/pine-core/p-818dd3d8.system.entry.js.map +0 -1
  796. package/dist/pine-core/p-9f7318d7.entry.js +0 -2
  797. package/dist/pine-core/p-BCCWozKV.system.js.map +0 -1
  798. package/dist/pine-core/p-BCGaZxvq.system.js.map +0 -1
  799. package/dist/pine-core/p-BF6EelyL.system.js.map +0 -1
  800. package/dist/pine-core/p-BLpHPllL.system.js.map +0 -1
  801. package/dist/pine-core/p-Bh07GI-d.js +0 -3
  802. package/dist/pine-core/p-Bh07GI-d.js.map +0 -1
  803. package/dist/pine-core/p-BhoJR5O9.system.js.map +0 -1
  804. package/dist/pine-core/p-Bj1vPZM7.system.js.map +0 -1
  805. package/dist/pine-core/p-BnrgLbVq.system.js.map +0 -1
  806. package/dist/pine-core/p-BvtgWXBT.system.js.map +0 -1
  807. package/dist/pine-core/p-C4UrydrO.system.js.map +0 -1
  808. package/dist/pine-core/p-C6_QgODF.system.js.map +0 -1
  809. package/dist/pine-core/p-CSVIgMVz.system.js.map +0 -1
  810. package/dist/pine-core/p-CVjjaBaW.system.js.map +0 -1
  811. package/dist/pine-core/p-CZsWy9_t.system.js +0 -3
  812. package/dist/pine-core/p-CZsWy9_t.system.js.map +0 -1
  813. package/dist/pine-core/p-ChQGk39M.system.js.map +0 -1
  814. package/dist/pine-core/p-CpcN1meO.system.js.map +0 -1
  815. package/dist/pine-core/p-CrpTd0PB.system.js.map +0 -1
  816. package/dist/pine-core/p-CtiVxXhr.system.js.map +0 -1
  817. package/dist/pine-core/p-Cua7cmvq.system.js +0 -2
  818. package/dist/pine-core/p-D-CArvsF.system.js.map +0 -1
  819. package/dist/pine-core/p-DCiTnlD3.system.js.map +0 -1
  820. package/dist/pine-core/p-DPmRw4fA.system.js.map +0 -1
  821. package/dist/pine-core/p-DTMMULoz.system.js.map +0 -1
  822. package/dist/pine-core/p-Dez3UWhA.system.js.map +0 -1
  823. package/dist/pine-core/p-DvfECQRp.system.js.map +0 -1
  824. package/dist/pine-core/p-Dy_B3NK5.system.js.map +0 -1
  825. package/dist/pine-core/p-O9Boj8Mc.system.js.map +0 -1
  826. package/dist/pine-core/p-a1ddcc69.entry.js +0 -2
  827. package/dist/pine-core/p-a2c309fa.system.entry.js +0 -2
  828. package/dist/pine-core/p-a3503596.entry.js +0 -2
  829. package/dist/pine-core/p-a494b7d1.entry.js +0 -2
  830. package/dist/pine-core/p-ab34c977.system.entry.js +0 -2
  831. package/dist/pine-core/p-b9135a30.entry.js +0 -2
  832. package/dist/pine-core/p-bd11961c.entry.js +0 -3
  833. package/dist/pine-core/p-c0fef05c.system.entry.js +0 -2
  834. package/dist/pine-core/p-c28c54c2.system.entry.js +0 -2
  835. package/dist/pine-core/p-c7175497.entry.js +0 -2
  836. package/dist/pine-core/p-c7175497.entry.js.map +0 -1
  837. package/dist/pine-core/p-c751ad1d.system.entry.js +0 -2
  838. package/dist/pine-core/p-c85b0d07.entry.js +0 -2
  839. package/dist/pine-core/p-d0efe5e1.entry.js +0 -2
  840. package/dist/pine-core/p-db3b827e.system.entry.js +0 -2
  841. package/dist/pine-core/p-db3b827e.system.entry.js.map +0 -1
  842. package/dist/pine-core/p-de4ebf0b.entry.js +0 -2
  843. package/dist/pine-core/p-e22c4870.system.entry.js +0 -2
  844. package/dist/pine-core/p-e25d2c53.entry.js +0 -2
  845. package/dist/pine-core/p-e715d22e.system.entry.js +0 -2
  846. package/dist/pine-core/p-eb3fe298.system.entry.js +0 -2
  847. package/dist/pine-core/p-ee6c07d6.system.entry.js +0 -2
  848. package/dist/pine-core/p-f2344cb2.system.entry.js.map +0 -1
  849. package/dist/pine-core/p-f38e87ad.system.entry.js +0 -2
  850. package/dist/pine-core/p-f70327de.system.entry.js +0 -2
  851. package/dist/pine-core/p-f72243c4.entry.js +0 -2
  852. package/dist/pine-core/p-f72243c4.entry.js.map +0 -1
  853. package/dist/pine-core/p-fb877b9d.entry.js +0 -2
  854. package/dist/pine-core/p-fcde1f61.system.entry.js +0 -2
  855. package/dist/pine-core/p-fcde1f61.system.entry.js.map +0 -1
  856. package/dist/pine-core/p-fdf7a1db.system.entry.js +0 -2
  857. package/dist/pine-core/p-pKEraGuG.system.js.map +0 -1
  858. package/dist/pine-core/p-y8wq27x0.system.js.map +0 -1
  859. package/dist/pine-core/p-zZn2-0Xb.system.js.map +0 -1
  860. package/dist/types/stories/_helpers/index.d.ts +0 -12
  861. /package/dist/pine-core/{p-37795a28.system.entry.js.map → p-00568c20.system.entry.js.map} +0 -0
  862. /package/dist/pine-core/{p-53645ec6.system.entry.js.map → p-03209958.system.entry.js.map} +0 -0
  863. /package/dist/pine-core/{p-1fbe221a.entry.js.map → p-0ace9c16.entry.js.map} +0 -0
  864. /package/dist/pine-core/{p-e47fbd71.entry.js.map → p-10e0be55.entry.js.map} +0 -0
  865. /package/dist/pine-core/{p-b0948892.system.entry.js.map → p-1df25b57.system.entry.js.map} +0 -0
  866. /package/dist/pine-core/{p-d6cff25a.entry.js.map → p-1fa303af.entry.js.map} +0 -0
  867. /package/dist/pine-core/{p-996072ce.entry.js.map → p-2058a93a.entry.js.map} +0 -0
  868. /package/dist/pine-core/{p-c5cda159.system.entry.js.map → p-2d3da08b.system.entry.js.map} +0 -0
  869. /package/dist/pine-core/{p-7a63e1ec.entry.js.map → p-2f6f60d9.entry.js.map} +0 -0
  870. /package/dist/pine-core/{p-841a6445.entry.js.map → p-3f6b9520.entry.js.map} +0 -0
  871. /package/dist/pine-core/{p-06f164fe.system.entry.js.map → p-3f8a5f3d.system.entry.js.map} +0 -0
  872. /package/dist/pine-core/{p-ba1a4643.system.entry.js.map → p-3f8b0885.system.entry.js.map} +0 -0
  873. /package/dist/pine-core/{p-ba609b1e.entry.js.map → p-43990889.entry.js.map} +0 -0
  874. /package/dist/pine-core/{p-fc832660.entry.js.map → p-43f1eead.entry.js.map} +0 -0
  875. /package/dist/pine-core/{p-535a91bd.entry.js.map → p-596acf65.entry.js.map} +0 -0
  876. /package/dist/pine-core/{p-168b5a5b.system.entry.js.map → p-6dcd7876.system.entry.js.map} +0 -0
  877. /package/dist/pine-core/{p-ed214033.entry.js.map → p-7de73ac5.entry.js.map} +0 -0
  878. /package/dist/pine-core/{p-51e0ea73.entry.js.map → p-8c000d7c.entry.js.map} +0 -0
  879. /package/dist/pine-core/{p-5a94e426.system.entry.js.map → p-94b1997d.system.entry.js.map} +0 -0
  880. /package/dist/pine-core/{p-f74bcc1d.entry.js.map → p-9998c2a0.entry.js.map} +0 -0
  881. /package/dist/pine-core/{p-e948a514.system.entry.js.map → p-a11c3642.system.entry.js.map} +0 -0
  882. /package/dist/pine-core/{p-1956a234.system.entry.js.map → p-ac14c8e3.system.entry.js.map} +0 -0
  883. /package/dist/pine-core/{p-1bf75b30.system.entry.js.map → p-ac186cd4.system.entry.js.map} +0 -0
  884. /package/dist/pine-core/{p-fe23aa6f.system.entry.js.map → p-b59a0c6b.system.entry.js.map} +0 -0
  885. /package/dist/pine-core/{p-105951b7.system.entry.js.map → p-bdf8bff3.system.entry.js.map} +0 -0
  886. /package/dist/pine-core/{p-1d83f560.entry.js.map → p-c5013d20.entry.js.map} +0 -0
  887. /package/dist/pine-core/{p-01c4eac9.entry.js.map → p-cf4df489.entry.js.map} +0 -0
  888. /package/dist/pine-core/{p-fdf7a1db.system.entry.js.map → p-d0e336b7.system.entry.js.map} +0 -0
  889. /package/dist/pine-core/{p-b07bb58f.system.entry.js.map → p-d1313dd6.system.entry.js.map} +0 -0
  890. /package/dist/pine-core/{p-fbf10641.entry.js.map → p-e0f21c22.entry.js.map} +0 -0
  891. /package/dist/pine-core/{p-285bc185.entry.js.map → p-e7e25d42.entry.js.map} +0 -0
  892. /package/dist/pine-core/{p-5d379706.system.entry.js.map → p-ec32c44f.system.entry.js.map} +0 -0
  893. /package/dist/pine-core/{p-2f5d1411.entry.js.map → p-f92055f3.entry.js.map} +0 -0
  894. /package/dist/pine-core/{p-4792d0c8.system.entry.js.map → p-fa21e054.system.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"pds-table-head-cell.js","sourceRoot":"","sources":["../../../../src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\nimport { downSmall, upSmall } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-table-head-cell',\n styleUrls: ['pds-table-head-cell.scss'],\n shadow: true,\n})\nexport class PdsTableHeadCell {\n @Element() hostElement: HTMLPdsTableHeadCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n /**\n * Sets the text alignment within the head cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Determines whether the table column is sortable when set to `true`.\n */\n @Prop() sortable: boolean;\n\n /**\n * Event emitted to signal that a table column header has been sorted, providing information about the sorted column's name and sorting direction.\n */\n @Event() pdsTableSort: EventEmitter<{ column: string; direction: string }>;\n\n /**\n * The direction of sorting.\n */\n @State() private sortingDirection: 'asc' | 'desc' = 'asc';\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @State() isSelected: boolean = false;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column header to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n private toggleSort = () => {\n if (this.sortable) {\n const column = this.hostElement.innerText.trim();\n this.sortingDirection = this.sortingDirection === 'asc' ? 'desc' : 'asc';\n\n this.tableRef.querySelectorAll('pds-table-head-cell').forEach((headCell) => {\n headCell.classList.remove('is-active');\n });\n\n this.hostElement.classList.toggle('is-active');\n this.pdsTableSort.emit({ column, direction: this.sortingDirection });\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-head-cell--align-${this.cellAlign}`);\n }\n\n if (this.sortable) {\n classNames.push('is-sortable');\n }\n\n if (this.sortable && this.sortingDirection !== null) {\n classNames.push('sort-' + this.sortingDirection);\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"columnheader\"\n onClick={this.toggleSort}\n part=\"head-cell\"\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n {this.sortable && (\n <pds-icon icon={this.sortingDirection === 'asc' ? upSmall : downSmall} part=\"sort-icon\" />\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-table-head-cell.js","sourceRoot":"","sources":["../../../../../src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\nimport { downSmall, upSmall } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-table-head-cell',\n styleUrls: ['pds-table-head-cell.scss'],\n shadow: true,\n})\nexport class PdsTableHeadCell {\n @Element() hostElement: HTMLPdsTableHeadCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\n\n /**\n * Sets the text alignment within the head cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Determines whether the table column is sortable when set to `true`.\n */\n @Prop() sortable: boolean;\n\n /**\n * Event emitted to signal that a table column header has been sorted, providing information about the sorted column's name and sorting direction.\n */\n @Event() pdsTableSort: EventEmitter<{ column: string; direction: string }>;\n\n /**\n * The direction of sorting.\n */\n @State() private sortingDirection: 'asc' | 'desc' = 'asc';\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @State() isSelected: boolean = false;\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n }\n\n componentDidLoad() {\n if (this.tableRef && this.tableRef.responsive && this.tableRef.fixedColumn) {\n // For responsive tables with fixed columns, set up scroll detection\n // This enables the first column header to show a shadow when the table is scrolled horizontally\n this.setupScrollListener();\n }\n }\n\n disconnectedCallback() {\n this.cleanupScrollListener();\n }\n\n private setupScrollListener() {\n if (!this.tableRef) return;\n\n // Query shadowRoot once and cache the container\n const container = this.tableRef.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n\n if (container) {\n // Container available immediately\n this.scrollContainer = container;\n this.scrollContainer.addEventListener('scroll', this.handleScroll, { passive: true });\n this.handleScroll(); // Initial check\n this.setupRetries = 0; // Reset counter on success\n } else {\n // Container not ready, set up timer for retry with bounds\n this.setupTimer = window.setTimeout(() => {\n if (this.scrollContainer) return; // Already found\n this.setupRetries = (this.setupRetries || 0) + 1;\n if (this.setupRetries <= 50) {\n this.setupScrollListener();\n } else {\n console.warn('Failed to find responsive container after 50 attempts');\n }\n }, 100);\n }\n }\n\n private cleanupScrollListener() {\n if (this.scrollContainer) {\n this.scrollContainer.removeEventListener('scroll', this.handleScroll);\n this.scrollContainer = null;\n }\n\n if (this.setupTimer !== undefined) {\n window.clearTimeout(this.setupTimer);\n this.setupTimer = undefined;\n }\n\n this.setupRetries = 0; // Reset retry counter\n }\n\n /**\n * Handles scroll events to update fixed column shadow state.\n * Updates the tableScrolling state to control CSS classes for fixed column shadows.\n * @private\n */\n private handleScroll = () => {\n if (!this.scrollContainer) {\n return;\n }\n\n try {\n this.tableScrolling = this.scrollContainer.scrollLeft > 0;\n } catch (error) {\n console.warn('Scroll handler error:', error);\n }\n };\n\n private toggleSort = () => {\n if (this.sortable) {\n const column = this.hostElement.innerText.trim();\n this.sortingDirection = this.sortingDirection === 'asc' ? 'desc' : 'asc';\n\n this.tableRef.querySelectorAll('pds-table-head-cell').forEach((headCell) => {\n headCell.classList.remove('is-active');\n });\n\n this.hostElement.classList.toggle('is-active');\n this.pdsTableSort.emit({ column, direction: this.sortingDirection });\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.tableRef && this.tableRef.compact) {\n classNames.push('is-compact');\n }\n\n if (this.cellAlign) {\n classNames.push(`pds-table-head-cell--align-${this.cellAlign}`);\n }\n\n if (this.sortable) {\n classNames.push('is-sortable');\n }\n\n if (this.sortable && this.sortingDirection !== null) {\n classNames.push('sort-' + this.sortingDirection);\n }\n\n if (this.tableRef && this.tableRef.fixedColumn && this.tableScrolling) {\n classNames.push('has-scrolled');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"columnheader\"\n onClick={this.toggleSort}\n part=\"head-cell\"\n style={\n this.tableRef &&\n this.tableRef.fixedColumn &&\n this.tableRef.selectable\n ? { '--fixed-cell-position': '40px' }\n : {}\n }\n >\n <slot></slot>\n {this.sortable && (\n <pds-icon icon={this.sortingDirection === 'asc' ? upSmall : downSmall} part=\"sort-icon\" />\n )}\n </Host>\n );\n }\n}\n"]}
@@ -1,10 +1,7 @@
1
1
  import { html } from 'lit-html';
2
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
3
- import { withActions } from '@storybook/addon-actions/decorator';
4
2
 
5
3
  export default {
6
4
  argTypes: {
7
- ...extractArgTypes('pds-table-head-cell'),
8
5
  cellAlign: {
9
6
  control: {
10
7
  type: 'select',
@@ -13,7 +10,6 @@ export default {
13
10
  },
14
11
  },
15
12
  component: 'pds-table-head-cell',
16
- decorators: [withActions],
17
13
  title: 'components/Table/Head',
18
14
  };
19
15
 
@@ -1,5 +1,5 @@
1
1
  :host {
2
- --color-background-interactive: var(--pine-color-grey-200);
2
+ --color-background-interactive: var(--pine-color-border-disabled);
3
3
  border-color: inherit;
4
4
  display: table-row;
5
5
  vertical-align: inherit;
@@ -43,7 +43,7 @@ export class PdsTableRow {
43
43
  }
44
44
  }
45
45
  render() {
46
- return (h(Host, { key: 'cffeb199c48f2a06af70a2e5a5b41a21649c24c7', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (h("pds-table-cell", { key: '02a80cd54efe360550e636f7bc0f11e3de59af1c', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, h("pds-checkbox", { key: 'a8cd6c303ec35f71e0a97f130c5d53a2e81a3e4a', componentId: this.generateUniqueId(), onClick: this.handleClick, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), h("slot", { key: '820a502627ffc329f650f7f0110e34ae3f096357' })));
46
+ return (h(Host, { key: '39f3618ec10c42f53a78f0d18f78cb7546611ba2', class: this.classNames(), role: "row", part: "row" }, this.tableRef && this.tableRef.selectable && (h("pds-table-cell", { key: '3a0c2e4bd567d352a7ac8f55e5b9480cbd80fc7e', part: this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell', class: this.tableRef.selectable ? 'has-checkbox' : '' }, h("pds-checkbox", { key: '367d3dff69053eed7285f6a8487e4ac7c1aed079', componentId: this.generateUniqueId(), onClick: this.handleClick, indeterminate: this.indeterminate, label: "Select Row", hideLabel: true, checked: this.isSelected, part: "row-checkbox" }))), h("slot", { key: '302af95c4d1fe6c7c07aaf4442b1a144753bcb2d' })));
47
47
  }
48
48
  static get is() { return "pds-table-row"; }
49
49
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"pds-table-row.js","sourceRoot":"","sources":["../../../../src/components/pds-table/pds-table-row/pds-table-row.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, h, Event, EventEmitter, Prop } from '@stencil/core';\n\nimport { closest } from '../../../utils/closest';\n\n@Component({\n tag: 'pds-table-row',\n styleUrls: ['pds-table-row.scss'],\n shadow: true,\n})\nexport class PdsTableRow {\n @Element() hostElement: HTMLPdsTableRowElement;\n private tableRef: HTMLPdsTableElement;\n\n /**\n * Determines if the row selected is in an indeterminate state.\n */\n @Prop({ mutable: true }) indeterminate?: boolean;\n\n /**\n * Determines if the table row is currently selected.\n */\n @Prop({ mutable: true }) isSelected?: boolean;\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableRowSelected: EventEmitter<{ rowIndex: number; isSelected: boolean; }>;\n\n private handleClick = () => {\n this.isSelected = !this.isSelected; // Toggle the selected state\n this.handleSelect(this.isSelected);\n }\n\n private handleSelect = (isSelected: boolean) => {\n this.indeterminate = false;\n\n if (!closest('pds-table-head', this.hostElement)) {\n const rowIndex = Array.from(this.hostElement.parentNode.children).indexOf(this.hostElement)\n this.pdsTableRowSelected.emit({\n rowIndex,\n isSelected,\n })\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.isSelected) {\n classNames.push(\"is-selected\");\n }\n\n return classNames.join(' ');\n }\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n\n if (this.tableRef && this.tableRef.fixedColumn) {\n const tableCell = this.hostElement.querySelector('pds-table-cell');\n tableCell?.classList.add(\"is-fixed\");\n }\n }\n\n componentWillLoad() {\n if (this.isSelected) {\n this.handleSelect(this.isSelected);\n }\n }\n\n private generateUniqueId = () => {\n const randomString = Math.random().toString(36).substring(2, 8);\n const timestamp = new Date().toISOString().replace(/[:.]/g, '-');\n const uniqueId = `${randomString}-${timestamp}`;\n\n return uniqueId;\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"row\"\n part=\"row\"\n >\n {this.tableRef && this.tableRef.selectable && (\n <pds-table-cell part={this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell'} class={this.tableRef.selectable ? 'has-checkbox' : ''} >\n <pds-checkbox\n componentId={this.generateUniqueId()}\n onClick={this.handleClick}\n indeterminate={this.indeterminate}\n label={\"Select Row\"}\n hideLabel={true}\n checked={this.isSelected}\n part=\"row-checkbox\"\n />\n </pds-table-cell>\n )}\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-table-row.js","sourceRoot":"","sources":["../../../../../src/components/pds-table/pds-table-row/pds-table-row.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, h, Event, EventEmitter, Prop } from '@stencil/core';\n\nimport { closest } from '../../../utils/closest';\n\n@Component({\n tag: 'pds-table-row',\n styleUrls: ['pds-table-row.scss'],\n shadow: true,\n})\nexport class PdsTableRow {\n @Element() hostElement: HTMLPdsTableRowElement;\n private tableRef: HTMLPdsTableElement;\n\n /**\n * Determines if the row selected is in an indeterminate state.\n */\n @Prop({ mutable: true }) indeterminate?: boolean;\n\n /**\n * Determines if the table row is currently selected.\n */\n @Prop({ mutable: true }) isSelected?: boolean;\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableRowSelected: EventEmitter<{ rowIndex: number; isSelected: boolean; }>;\n\n private handleClick = () => {\n this.isSelected = !this.isSelected; // Toggle the selected state\n this.handleSelect(this.isSelected);\n }\n\n private handleSelect = (isSelected: boolean) => {\n this.indeterminate = false;\n\n if (!closest('pds-table-head', this.hostElement)) {\n const rowIndex = Array.from(this.hostElement.parentNode.children).indexOf(this.hostElement)\n this.pdsTableRowSelected.emit({\n rowIndex,\n isSelected,\n })\n }\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.isSelected) {\n classNames.push(\"is-selected\");\n }\n\n return classNames.join(' ');\n }\n\n componentWillRender() {\n this.tableRef = this.hostElement.closest('pds-table') as HTMLPdsTableElement;\n\n if (this.tableRef && this.tableRef.fixedColumn) {\n const tableCell = this.hostElement.querySelector('pds-table-cell');\n tableCell?.classList.add(\"is-fixed\");\n }\n }\n\n componentWillLoad() {\n if (this.isSelected) {\n this.handleSelect(this.isSelected);\n }\n }\n\n private generateUniqueId = () => {\n const randomString = Math.random().toString(36).substring(2, 8);\n const timestamp = new Date().toISOString().replace(/[:.]/g, '-');\n const uniqueId = `${randomString}-${timestamp}`;\n\n return uniqueId;\n }\n\n render() {\n return (\n <Host\n class={this.classNames()}\n role=\"row\"\n part=\"row\"\n >\n {this.tableRef && this.tableRef.selectable && (\n <pds-table-cell part={this.tableRef.fixedColumn ? 'checkbox-cell' : 'checkbox-cell'} class={this.tableRef.selectable ? 'has-checkbox' : ''} >\n <pds-checkbox\n componentId={this.generateUniqueId()}\n onClick={this.handleClick}\n indeterminate={this.indeterminate}\n label={\"Select Row\"}\n hideLabel={true}\n checked={this.isSelected}\n part=\"row-checkbox\"\n />\n </pds-table-cell>\n )}\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
@@ -1,16 +1,10 @@
1
1
  import { html } from 'lit-html';
2
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
3
- import { withActions } from '@storybook/addon-actions/decorator';
2
+
4
3
 
5
4
  export default {
6
- argTypes: extractArgTypes('pds-table-row'),
5
+
7
6
  component: 'pds-table-row',
8
- decorators: [withActions],
9
- parameters: {
10
- actions: {
11
- handles: ['onclick', 'pdsTableRowSelected'],
12
- },
13
- },
7
+ parameters: {},
14
8
  title: 'components/Table/Rows',
15
9
  };
16
10
 
@@ -1,6 +1,6 @@
1
1
  @charset "UTF-8";
2
2
  :host {
3
- --color-background-default: var(--pine-color-white);
3
+ --color-background-default: var(--pine-color-background-container);
4
4
  background: var(--color-background-default);
5
5
  border-collapse: separate;
6
6
  border-radius: inherit;
@@ -1 +1 @@
1
- {"version":3,"file":"pds-table.js","sourceRoot":"","sources":["../../../src/components/pds-table/pds-table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'pds-table',\n styleUrls: ['pds-table.scss'],\n shadow: true,\n})\nexport class PdsTable {\n @Element() el: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private _responsiveHandleScroll: (() => void) | null = null;\n private _responsiveHandleResize: (() => void) | null = null;\n private _responsiveResizeObserver: ResizeObserver | null = null;\n private _teardownResponsive: (() => void) | null = null;\n\n /**\n * Determines if the table displays with reduced table cell padding.\n */\n @Prop() compact: boolean;\n\n /**\n * A unique identifier used for the table `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Enables the table to be responsive by horizontally scrolling on smaller screens.\n */\n @Prop() responsive: boolean;\n\n /**\n * Determines if the should display a fixed first column.\n */\n @Prop() fixedColumn: boolean;\n\n /**\n * Determines if the table displays checkboxes for selectable rows.\n */\n @Prop() selectable: boolean;\n\n /**\n * The name of the column being sorted.\n * @defaultValue null\n */\n @State() sortingColumn: string | null = null;\n\n /**\n * The direction of sorting.\n * @defaultValue 'asc'\n */\n @State() sortingDirection: 'asc' | 'desc' = 'asc';\n\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the rowIndex and selected value.\n */\n @Event() pdsTableSelect: EventEmitter<{ rowIndex: number; isSelected: boolean }>;\n\n /**\n * Event that is emitted when the select all checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableSelectAll: EventEmitter<{ isSelected: boolean }>;\n\n componentWillLoad() {\n this.sortingColumn = null;\n }\n\n componentDidLoad() {\n if (this.responsive) {\n this.setupResponsiveScrolling();\n }\n }\n\n disconnectedCallback() {\n if (this._teardownResponsive) {\n this._teardownResponsive();\n this._teardownResponsive = null;\n }\n }\n\n /**\n * Sets up responsive scrolling behavior for the table.\n *\n * This method creates a horizontal scrolling system where:\n * - The table content can scroll horizontally when it exceeds the container width\n * - Scroll shadows appear at the left/right edges to indicate scrollable content\n * - Fixed columns remain sticky during horizontal scrolling\n * - Shadows respect border-radius and don't appear when there's nothing to scroll\n *\n * Architecture:\n * - Host element: Contains everything, respects parent constraints\n * - Container element: Handles horizontal scrolling (overflow-x: auto)\n * - Shadow elements: Positioned fixed relative to host, show scroll indicators\n *\n * @private\n */\n private setupResponsiveScrolling() {\n const container = this.el.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n const leftShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-left') as HTMLElement;\n const rightShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-right') as HTMLElement;\n\n if (!container || !leftShadow || !rightShadow) return;\n\n // Store container reference for cleanup\n this.scrollContainer = container;\n\n /**\n * Updates the visibility of scroll shadows based on current scroll position.\n * Left shadow: Shows when scrolled away from start (hidden if fixedColumn is enabled)\n * Right shadow: Shows when there's content to scroll and not at the end\n */\n this._responsiveHandleScroll = () => {\n if (!this.scrollContainer) return;\n\n const scrollLeft = this.scrollContainer.scrollLeft;\n const maxScrollLeft = this.scrollContainer.scrollWidth - this.scrollContainer.clientWidth;\n\n // Show left shadow when scrolled away from start, but not if there's a fixed column\n leftShadow.style.opacity = (scrollLeft > 0 && !this.fixedColumn) ? '1' : '0';\n\n // Show right shadow only if there's content to scroll AND not at end\n rightShadow.style.opacity = (maxScrollLeft > 0 && scrollLeft < maxScrollLeft - 1) ? '1' : '0';\n };\n\n // Add scroll event listener to container element\n this.scrollContainer.addEventListener('scroll', this._responsiveHandleScroll, { passive: true });\n\n // Add resize observer to update shadows when container size changes\n if (typeof window !== 'undefined' && window.ResizeObserver) {\n try {\n this._responsiveResizeObserver = new ResizeObserver(() => {\n this._responsiveHandleScroll?.();\n });\n this._responsiveResizeObserver.observe(this.scrollContainer);\n } catch (error) {\n // ResizeObserver not available in some environments (e.g., tests)\n // Fall back to window resize listener only\n }\n }\n\n // Listen for window resize as fallback\n if (typeof window !== 'undefined') {\n this._responsiveHandleResize = () => {\n this._responsiveHandleScroll?.();\n };\n window.addEventListener('resize', this._responsiveHandleResize);\n }\n\n // Create teardown function for cleanup\n this._teardownResponsive = () => {\n if (this.scrollContainer && this._responsiveHandleScroll) {\n this.scrollContainer.removeEventListener('scroll', this._responsiveHandleScroll);\n this.scrollContainer = null;\n }\n\n if (this._responsiveResizeObserver) {\n this._responsiveResizeObserver.disconnect();\n this._responsiveResizeObserver = null;\n }\n\n if (typeof window !== 'undefined' && this._responsiveHandleResize) {\n window.removeEventListener('resize', this._responsiveHandleResize);\n this._responsiveHandleResize = null;\n }\n\n this._responsiveHandleScroll = null;\n };\n\n // Initial check after setup\n this._responsiveHandleScroll();\n }\n\n\n private classNames() {\n const classNames = ['pds-table'];\n\n if (this.compact) {\n classNames.push('is-compact');\n }\n\n if (this.responsive) {\n classNames.push('is-responsive');\n }\n\n return classNames.join(' ');\n }\n\n private sortTable(column: string, direction: 'asc' | 'desc') {\n const tableBody = this.el.querySelector('pds-table-body');\n\n // Get the rows in the table body\n const tableRows = Array.from(tableBody.querySelectorAll('pds-table-row'));\n\n // Find the column index based on the column name\n const columnHeaderCells: HTMLElement[] = Array.from(\n this.el.querySelectorAll('pds-table-head-cell[sortable]')\n );\n\n const columnHeaderCell = columnHeaderCells.find(\n (cell) => cell.innerText.trim() === column\n );\n\n if (!columnHeaderCell) {\n console.warn(`Column \"${column}\" not found.`);\n return;\n }\n\n const columnIndex = columnHeaderCells.indexOf(columnHeaderCell);\n\n // Sort the rows based on the content of the specified column\n tableRows.sort((a, b) => {\n const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n\n if (direction === 'asc') {\n return valueA.localeCompare(valueB, undefined, { sensitivity: 'base' });\n } else {\n return valueB.localeCompare(valueA, undefined, { sensitivity: 'base' });\n }\n });\n\n // Clear and append the sorted rows back to the table body\n tableBody.innerHTML = '';\n tableRows.forEach((row) => {\n tableBody.appendChild(row);\n });\n }\n\n @Listen('pdsTableSort')\n handleTableSort(event: CustomEvent<{ column: string; direction: 'asc' | 'desc' }>) {\n const { direction } = event.detail;\n this.sortTable(event.detail.column, direction);\n this.sortingColumn = event.detail.column;\n this.sortingDirection = direction;\n }\n\n @Listen('pdsTableSelectAll')\n handleTableSelectAll(event: CustomEvent<{ isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const pdsTableBody = this.el.querySelector('pds-table-body');\n const tableRows = Array.from(pdsTableBody.querySelectorAll('pds-table-row'));\n\n tableRows.forEach((row) => {\n row.isSelected = event.detail.isSelected;\n });\n }\n\n @Listen('pdsTableRowSelected')\n async handleTableSelect(event: CustomEvent<{ rowIndex: number; isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const allTableRows = this.el.querySelectorAll('pds-table-row');\n const allSelectedRows = Array.from(allTableRows).every((row) => row.isSelected);\n const noneSelectedRows = Array.from(allTableRows).every((row) => !row.isSelected);\n const pdsTableHead = this.el.querySelector('pds-table-head');\n if (!pdsTableHead) return;\n\n const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');\n headerCheckbox.checked = allSelectedRows;\n headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;\n }\n\n render() {\n if (this.responsive) {\n return (\n <Host\n class=\"pds-table is-responsive pds-table-responsive-host\"\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table responsive-table\"\n >\n <div class=\"scroll-shadow-left\" part=\"scroll-shadow-left\"></div>\n <div class=\"scroll-shadow-right\" part=\"scroll-shadow-right\"></div>\n <div class=\"pds-table-responsive-container\" part=\"responsive-container\">\n <div class=\"pds-table-responsive-wrapper\" part=\"responsive-wrapper\">\n <div class={this.classNames()} part=\"table-inner\">\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n return (\n <Host\n class={this.classNames()}\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table\"\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-table.js","sourceRoot":"","sources":["../../../../src/components/pds-table/pds-table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'pds-table',\n styleUrls: ['pds-table.scss'],\n shadow: true,\n})\nexport class PdsTable {\n @Element() el: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private _responsiveHandleScroll: (() => void) | null = null;\n private _responsiveHandleResize: (() => void) | null = null;\n private _responsiveResizeObserver: ResizeObserver | null = null;\n private _teardownResponsive: (() => void) | null = null;\n\n /**\n * Determines if the table displays with reduced table cell padding.\n */\n @Prop() compact: boolean;\n\n /**\n * A unique identifier used for the table `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Enables the table to be responsive by horizontally scrolling on smaller screens.\n */\n @Prop() responsive: boolean;\n\n /**\n * Determines if the should display a fixed first column.\n */\n @Prop() fixedColumn: boolean;\n\n /**\n * Determines if the table displays checkboxes for selectable rows.\n */\n @Prop() selectable: boolean;\n\n /**\n * The name of the column being sorted.\n * @defaultValue null\n */\n @State() sortingColumn: string | null = null;\n\n /**\n * The direction of sorting.\n * @defaultValue 'asc'\n */\n @State() sortingDirection: 'asc' | 'desc' = 'asc';\n\n\n /**\n * Event that is emitted when the checkbox is clicked, carrying the rowIndex and selected value.\n */\n @Event() pdsTableSelect: EventEmitter<{ rowIndex: number; isSelected: boolean }>;\n\n /**\n * Event that is emitted when the select all checkbox is clicked, carrying the selected value.\n */\n @Event() pdsTableSelectAll: EventEmitter<{ isSelected: boolean }>;\n\n componentWillLoad() {\n this.sortingColumn = null;\n }\n\n componentDidLoad() {\n if (this.responsive) {\n this.setupResponsiveScrolling();\n }\n }\n\n disconnectedCallback() {\n if (this._teardownResponsive) {\n this._teardownResponsive();\n this._teardownResponsive = null;\n }\n }\n\n /**\n * Sets up responsive scrolling behavior for the table.\n *\n * This method creates a horizontal scrolling system where:\n * - The table content can scroll horizontally when it exceeds the container width\n * - Scroll shadows appear at the left/right edges to indicate scrollable content\n * - Fixed columns remain sticky during horizontal scrolling\n * - Shadows respect border-radius and don't appear when there's nothing to scroll\n *\n * Architecture:\n * - Host element: Contains everything, respects parent constraints\n * - Container element: Handles horizontal scrolling (overflow-x: auto)\n * - Shadow elements: Positioned fixed relative to host, show scroll indicators\n *\n * @private\n */\n private setupResponsiveScrolling() {\n const container = this.el.shadowRoot?.querySelector('.pds-table-responsive-container') as HTMLElement;\n const leftShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-left') as HTMLElement;\n const rightShadow = this.el.shadowRoot?.querySelector('.scroll-shadow-right') as HTMLElement;\n\n if (!container || !leftShadow || !rightShadow) return;\n\n // Store container reference for cleanup\n this.scrollContainer = container;\n\n /**\n * Updates the visibility of scroll shadows based on current scroll position.\n * Left shadow: Shows when scrolled away from start (hidden if fixedColumn is enabled)\n * Right shadow: Shows when there's content to scroll and not at the end\n */\n this._responsiveHandleScroll = () => {\n if (!this.scrollContainer) return;\n\n const scrollLeft = this.scrollContainer.scrollLeft;\n const maxScrollLeft = this.scrollContainer.scrollWidth - this.scrollContainer.clientWidth;\n\n // Show left shadow when scrolled away from start, but not if there's a fixed column\n leftShadow.style.opacity = (scrollLeft > 0 && !this.fixedColumn) ? '1' : '0';\n\n // Show right shadow only if there's content to scroll AND not at end\n rightShadow.style.opacity = (maxScrollLeft > 0 && scrollLeft < maxScrollLeft - 1) ? '1' : '0';\n };\n\n // Add scroll event listener to container element\n this.scrollContainer.addEventListener('scroll', this._responsiveHandleScroll, { passive: true });\n\n // Add resize observer to update shadows when container size changes\n if (typeof window !== 'undefined' && window.ResizeObserver) {\n try {\n this._responsiveResizeObserver = new ResizeObserver(() => {\n this._responsiveHandleScroll?.();\n });\n this._responsiveResizeObserver.observe(this.scrollContainer);\n } catch (error) {\n // ResizeObserver not available in some environments (e.g., tests)\n // Fall back to window resize listener only\n }\n }\n\n // Listen for window resize as fallback\n if (typeof window !== 'undefined') {\n this._responsiveHandleResize = () => {\n this._responsiveHandleScroll?.();\n };\n window.addEventListener('resize', this._responsiveHandleResize);\n }\n\n // Create teardown function for cleanup\n this._teardownResponsive = () => {\n if (this.scrollContainer && this._responsiveHandleScroll) {\n this.scrollContainer.removeEventListener('scroll', this._responsiveHandleScroll);\n this.scrollContainer = null;\n }\n\n if (this._responsiveResizeObserver) {\n this._responsiveResizeObserver.disconnect();\n this._responsiveResizeObserver = null;\n }\n\n if (typeof window !== 'undefined' && this._responsiveHandleResize) {\n window.removeEventListener('resize', this._responsiveHandleResize);\n this._responsiveHandleResize = null;\n }\n\n this._responsiveHandleScroll = null;\n };\n\n // Initial check after setup\n this._responsiveHandleScroll();\n }\n\n\n private classNames() {\n const classNames = ['pds-table'];\n\n if (this.compact) {\n classNames.push('is-compact');\n }\n\n if (this.responsive) {\n classNames.push('is-responsive');\n }\n\n return classNames.join(' ');\n }\n\n private sortTable(column: string, direction: 'asc' | 'desc') {\n const tableBody = this.el.querySelector('pds-table-body');\n\n // Get the rows in the table body\n const tableRows = Array.from(tableBody.querySelectorAll('pds-table-row'));\n\n // Find the column index based on the column name\n const columnHeaderCells: HTMLElement[] = Array.from(\n this.el.querySelectorAll('pds-table-head-cell[sortable]')\n );\n\n const columnHeaderCell = columnHeaderCells.find(\n (cell) => cell.innerText.trim() === column\n );\n\n if (!columnHeaderCell) {\n console.warn(`Column \"${column}\" not found.`);\n return;\n }\n\n const columnIndex = columnHeaderCells.indexOf(columnHeaderCell);\n\n // Sort the rows based on the content of the specified column\n tableRows.sort((a, b) => {\n const valueA = a.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n const valueB = b.querySelector(`pds-table-cell:nth-child(${columnIndex + 1})`).textContent.trim();\n\n if (direction === 'asc') {\n return valueA.localeCompare(valueB, undefined, { sensitivity: 'base' });\n } else {\n return valueB.localeCompare(valueA, undefined, { sensitivity: 'base' });\n }\n });\n\n // Clear and append the sorted rows back to the table body\n tableBody.innerHTML = '';\n tableRows.forEach((row) => {\n tableBody.appendChild(row);\n });\n }\n\n @Listen('pdsTableSort')\n handleTableSort(event: CustomEvent<{ column: string; direction: 'asc' | 'desc' }>) {\n const { direction } = event.detail;\n this.sortTable(event.detail.column, direction);\n this.sortingColumn = event.detail.column;\n this.sortingDirection = direction;\n }\n\n @Listen('pdsTableSelectAll')\n handleTableSelectAll(event: CustomEvent<{ isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const pdsTableBody = this.el.querySelector('pds-table-body');\n const tableRows = Array.from(pdsTableBody.querySelectorAll('pds-table-row'));\n\n tableRows.forEach((row) => {\n row.isSelected = event.detail.isSelected;\n });\n }\n\n @Listen('pdsTableRowSelected')\n async handleTableSelect(event: CustomEvent<{ rowIndex: number; isSelected: boolean }>) {\n if (event.defaultPrevented) return;\n\n const allTableRows = this.el.querySelectorAll('pds-table-row');\n const allSelectedRows = Array.from(allTableRows).every((row) => row.isSelected);\n const noneSelectedRows = Array.from(allTableRows).every((row) => !row.isSelected);\n const pdsTableHead = this.el.querySelector('pds-table-head');\n if (!pdsTableHead) return;\n\n const headerCheckbox = pdsTableHead.shadowRoot.querySelector('pds-checkbox');\n headerCheckbox.checked = allSelectedRows;\n headerCheckbox.indeterminate = !allSelectedRows && !noneSelectedRows;\n }\n\n render() {\n if (this.responsive) {\n return (\n <Host\n class=\"pds-table is-responsive pds-table-responsive-host\"\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table responsive-table\"\n >\n <div class=\"scroll-shadow-left\" part=\"scroll-shadow-left\"></div>\n <div class=\"scroll-shadow-right\" part=\"scroll-shadow-right\"></div>\n <div class=\"pds-table-responsive-container\" part=\"responsive-container\">\n <div class=\"pds-table-responsive-wrapper\" part=\"responsive-wrapper\">\n <div class={this.classNames()} part=\"table-inner\">\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n return (\n <Host\n class={this.classNames()}\n id={this.componentId}\n role=\"grid\"\n selectable={this.selectable}\n tabindex=\"0\"\n part=\"table\"\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
@@ -1,16 +1,10 @@
1
1
  import { html } from 'lit-html';
2
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
3
- import { withActions } from '@storybook/addon-actions/decorator';
2
+
4
3
 
5
4
  export default {
6
- argTypes: extractArgTypes('pds-table'),
5
+
7
6
  component: 'pds-table',
8
- decorators: [withActions],
9
- parameters: {
10
- actions: {
11
- handles: ['onclick', 'pdsTableRowSelected', 'onclick', 'pdsTableSelectAll', 'pdsTableSort'],
12
- },
13
- },
7
+ parameters: {},
14
8
  title: 'components/Table',
15
9
  };
16
10
 
@@ -68,10 +68,12 @@ pds-tab {
68
68
  .pds-tabs--availability .pds-tab {
69
69
  background-color: var(--color-background-tab);
70
70
  border-radius: calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);
71
+ color: var(--pine-color-text-secondary);
71
72
  padding: 8px 16px 13px;
72
73
  }
73
74
  .pds-tabs--availability .pds-tab.is-active, .pds-tabs--availability .pds-tab[aria-selected=true] {
74
75
  --color-background-tab: var(--pine-color-secondary);
76
+ color: var(--pine-color-text);
75
77
  }
76
78
  .pds-tabs--availability .pds-tab.is-active .pds-tab__content::after, .pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after {
77
79
  opacity: 1;
@@ -81,6 +83,7 @@ pds-tab {
81
83
  }
82
84
  .pds-tabs--availability .pds-tab:hover:not(.is-active, [aria-selected=true]) {
83
85
  --color-background-tab: var(--pine-color-secondary-hover);
86
+ color: var(--pine-color-text);
84
87
  }
85
88
  .pds-tabs--availability .pds-tab:focus-visible {
86
89
  color: var(--pine-color-text-secondary);
@@ -119,7 +122,7 @@ pds-tab {
119
122
  }
120
123
 
121
124
  .pds-tabs--filter .pds-tab {
122
- background-color: var(--pine-color-background-container-disabled);
125
+ background-color: var(--pine-color-background-muted);
123
126
  border-radius: 50px;
124
127
  color: var(--pine-color-text);
125
128
  padding: 6px 15px;
@@ -148,7 +151,7 @@ pds-tab {
148
151
  background-color: var(--color-background-tab);
149
152
  border: var(--pine-border-width-thin) solid transparent;
150
153
  border-radius: var(--pine-dimension-xs);
151
- color: var(--pine-color-text-readonly);
154
+ color: var(--pine-color-text-muted);
152
155
  flex: 1;
153
156
  height: 34px;
154
157
  justify-content: center;
@@ -160,7 +163,7 @@ pds-tab {
160
163
  padding-block-end: 0;
161
164
  }
162
165
  .pds-tabs--pill .pds-tab.is-active, .pds-tabs--pill .pds-tab[aria-selected=true] {
163
- --color-background-tab: var(--pine-color-white);
166
+ --color-background-tab: var(--pine-color-background-container);
164
167
  border-color: var(--pine-color-border);
165
168
  box-shadow: var(--pine-box-shadow-100);
166
169
  color: var(--pine-color-text-active);
@@ -11,9 +11,9 @@ export class PdsTab {
11
11
  this.pdsTabClick.emit([index, parentComponentId]);
12
12
  }
13
13
  render() {
14
- const availabilityTabEdgeInlineStart = (h("span", { key: '837cf57372db654f6ca411054446ebf0bc27b539', class: "pds-tab-edge", role: "presentation" }));
15
- const availabilityTabEdgeInlineEnd = (h("span", { key: 'e15055442d56b50e6ac21bfb76fc0f599406a4fb', class: "pds-tab-edge pds-tab-edge--end", role: "presentation" }));
16
- return (h(Host, { key: '1c02a1c8e5e562449ab954061a10acc3d54c3efc', variant: this.variant, slot: "tabs", index: this.index }, h("button", { key: '31b0e173dd738fa272dcaf4fc48a0581978f43b2', role: "tab", id: this.parentComponentId + "__" + this.name, "aria-controls": this.parentComponentId + "__" + this.name + "-panel", tabindex: this.selected ? "0" : "-1", "aria-selected": this.selected ? "true" : "false", class: this.selected ? "pds-tab is-active" : "pds-tab", onClick: this.onTabClick.bind(this, this.index, this.parentComponentId) }, this.variant === "availability" && availabilityTabEdgeInlineStart, this.variant === "availability" && availabilityTabEdgeInlineEnd, h("div", { key: '95b4f8d4c226e3b3a174d439816ec4d28cef0686', class: "pds-tab__content" }, h("slot", { key: '452a208775d54a290c0fcc6a69f6e546fde29afe' })))));
14
+ const availabilityTabEdgeInlineStart = (h("span", { key: 'cfdef9bad0fab8534ba50414b60cc25caa49023f', class: "pds-tab-edge", role: "presentation" }));
15
+ const availabilityTabEdgeInlineEnd = (h("span", { key: '15c876cd8e99451b7005827487a0a55b54f7f527', class: "pds-tab-edge pds-tab-edge--end", role: "presentation" }));
16
+ return (h(Host, { key: 'abac9ce94b06e8adc64dd380ec9e675ca3b86087', variant: this.variant, slot: "tabs", index: this.index }, h("button", { key: '9f3dade0443564ff3cbd09b41628677e32c3cf9c', role: "tab", id: this.parentComponentId + "__" + this.name, "aria-controls": this.parentComponentId + "__" + this.name + "-panel", tabindex: this.selected ? "0" : "-1", "aria-selected": this.selected ? "true" : "false", class: this.selected ? "pds-tab is-active" : "pds-tab", onClick: this.onTabClick.bind(this, this.index, this.parentComponentId) }, this.variant === "availability" && availabilityTabEdgeInlineStart, this.variant === "availability" && availabilityTabEdgeInlineEnd, h("div", { key: 'af3bb75eb293a46dff3fdb92217235c98c5194e1', class: "pds-tab__content" }, h("slot", { key: '2c92498bc9ad02024ff61b487c1e42c430c577c3' })))));
17
17
  }
18
18
  static get is() { return "pds-tab"; }
19
19
  static get originalStyleUrls() {
@@ -1 +1 @@
1
- {"version":3,"file":"pds-tab.js","sourceRoot":"","sources":["../../../../src/components/pds-tabs/pds-tab/pds-tab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAOvF,MAAM,OAAO,MAAM;IALnB;QA+BE;;WAEG;QACH,gBAAgB;QACR,aAAQ,GAAG,KAAK,CAAC;KAsC1B;IA/BS,UAAU,CAAC,KAAK,EAAE,iBAAiB;QACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM;QACJ,MAAM,8BAA8B,GAAG,CACrC,6DAAM,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,cAAc,GAAQ,CACvD,CAAA;QAED,MAAM,4BAA4B,GAAG,CACnC,6DAAM,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,cAAc,GAAQ,CACzE,CAAA;QAED,OAAO,CACL,EAAC,IAAI,qDAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK;YACxD,+DACE,IAAI,EAAC,KAAK,EACV,EAAE,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,mBAC9B,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,EACnE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,mBACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBAEtE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,8BAA8B;gBACjE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,4BAA4B;gBAChE,4DAAK,KAAK,EAAC,kBAAkB;oBAAC,8DAAO,CAAM,CACpC,CACJ,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'pds-tab',\n styleUrl: 'pds-tab.scss',\n shadow: false,\n})\nexport class PdsTab {\n @Element() el: HTMLPdsTabElement;\n\n /**\n * Sets the related tab name, this name must match a `pds-tabpanel`'s tab name property\n */\n @Prop() name!: string;\n\n /**\n * Keeps track of the parentComponentId unique id, this property is passed by parent component\n */\n /** @internal */\n @Prop() parentComponentId: string;\n\n /**\n * Keeps track of if the expected tab variant, this property is passed by parent component\n */\n /** @internal */\n @Prop() variant: string;\n\n /**\n * Keeps track of if the tab index number, this property is passed by parent component\n */\n /** @internal */\n @Prop() index: number;\n\n /**\n * Keeps track of the tabpanel selected state, this property is passed by parent component\n */\n /** @internal */\n @Prop() selected = false;\n\n /**\n * Emits an event upon tab click for `pds-tab` and `pds-tabpanel` to listen for\n */\n /** @internal */\n @Event() pdsTabClick: EventEmitter<object>;\n private onTabClick(index, parentComponentId) {\n this.pdsTabClick.emit([index, parentComponentId]);\n }\n\n render() {\n const availabilityTabEdgeInlineStart = (\n <span class=\"pds-tab-edge\" role=\"presentation\"></span>\n )\n\n const availabilityTabEdgeInlineEnd = (\n <span class=\"pds-tab-edge pds-tab-edge--end\" role=\"presentation\"></span>\n )\n\n return (\n <Host variant={this.variant} slot=\"tabs\" index={this.index}>\n <button\n role=\"tab\"\n id={this.parentComponentId + \"__\" + this.name}\n aria-controls={this.parentComponentId + \"__\" + this.name + \"-panel\"}\n tabindex={this.selected ? \"0\" : \"-1\"}\n aria-selected={this.selected ? \"true\" : \"false\"}\n class={this.selected ? \"pds-tab is-active\" : \"pds-tab\"}\n onClick={this.onTabClick.bind(this, this.index, this.parentComponentId)}\n >\n {this.variant === \"availability\" && availabilityTabEdgeInlineStart}\n {this.variant === \"availability\" && availabilityTabEdgeInlineEnd}\n <div class=\"pds-tab__content\"><slot/></div>\n </button>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-tab.js","sourceRoot":"","sources":["../../../../../src/components/pds-tabs/pds-tab/pds-tab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAOvF,MAAM,OAAO,MAAM;IALnB;QA+BE;;WAEG;QACH,gBAAgB;QACR,aAAQ,GAAG,KAAK,CAAC;KAsC1B;IA/BS,UAAU,CAAC,KAAK,EAAE,iBAAiB;QACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM;QACJ,MAAM,8BAA8B,GAAG,CACrC,6DAAM,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,cAAc,GAAQ,CACvD,CAAA;QAED,MAAM,4BAA4B,GAAG,CACnC,6DAAM,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,cAAc,GAAQ,CACzE,CAAA;QAED,OAAO,CACL,EAAC,IAAI,qDAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK;YACxD,+DACE,IAAI,EAAC,KAAK,EACV,EAAE,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,mBAC9B,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,EACnE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,mBACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBAEtE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,8BAA8B;gBACjE,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,4BAA4B;gBAChE,4DAAK,KAAK,EAAC,kBAAkB;oBAAC,8DAAO,CAAM,CACpC,CACJ,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'pds-tab',\n styleUrl: 'pds-tab.scss',\n shadow: false,\n})\nexport class PdsTab {\n @Element() el: HTMLPdsTabElement;\n\n /**\n * Sets the related tab name, this name must match a `pds-tabpanel`'s tab name property\n */\n @Prop() name!: string;\n\n /**\n * Keeps track of the parentComponentId unique id, this property is passed by parent component\n */\n /** @internal */\n @Prop() parentComponentId: string;\n\n /**\n * Keeps track of if the expected tab variant, this property is passed by parent component\n */\n /** @internal */\n @Prop() variant: string;\n\n /**\n * Keeps track of if the tab index number, this property is passed by parent component\n */\n /** @internal */\n @Prop() index: number;\n\n /**\n * Keeps track of the tabpanel selected state, this property is passed by parent component\n */\n /** @internal */\n @Prop() selected = false;\n\n /**\n * Emits an event upon tab click for `pds-tab` and `pds-tabpanel` to listen for\n */\n /** @internal */\n @Event() pdsTabClick: EventEmitter<object>;\n private onTabClick(index, parentComponentId) {\n this.pdsTabClick.emit([index, parentComponentId]);\n }\n\n render() {\n const availabilityTabEdgeInlineStart = (\n <span class=\"pds-tab-edge\" role=\"presentation\"></span>\n )\n\n const availabilityTabEdgeInlineEnd = (\n <span class=\"pds-tab-edge pds-tab-edge--end\" role=\"presentation\"></span>\n )\n\n return (\n <Host variant={this.variant} slot=\"tabs\" index={this.index}>\n <button\n role=\"tab\"\n id={this.parentComponentId + \"__\" + this.name}\n aria-controls={this.parentComponentId + \"__\" + this.name + \"-panel\"}\n tabindex={this.selected ? \"0\" : \"-1\"}\n aria-selected={this.selected ? \"true\" : \"false\"}\n class={this.selected ? \"pds-tab is-active\" : \"pds-tab\"}\n onClick={this.onTabClick.bind(this, this.index, this.parentComponentId)}\n >\n {this.variant === \"availability\" && availabilityTabEdgeInlineStart}\n {this.variant === \"availability\" && availabilityTabEdgeInlineEnd}\n <div class=\"pds-tab__content\"><slot/></div>\n </button>\n </Host>\n );\n }\n}\n"]}
@@ -1,11 +1,7 @@
1
1
  import { html } from 'lit-html';
2
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
3
- import { withActions } from '@storybook/addon-actions/decorator';
4
2
 
5
3
  export default {
6
- argTypes: extractArgTypes('pds-tab'),
7
4
  component: 'pds-tab',
8
- decorators: [withActions],
9
5
  title: 'components/Tabs/Tab',
10
6
  }
11
7
 
@@ -8,7 +8,7 @@ export class PdsTabpanel {
8
8
  this.selected = false; // eslint-disable-line @stencil-community/strict-mutable
9
9
  }
10
10
  render() {
11
- return (h(Host, { key: '84aa81506200fd7f06a94a4c7570b2702b36d9e8', slot: "tabpanels" }, h("div", { key: '0e890243eb41ebda64183cc4fd559abf38f5dfdc', 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" }, h("slot", { key: 'aaabfd72a45f6cd52c9c279bf0c014315a659959' }))));
11
+ return (h(Host, { key: 'f7a2009fbf7cb1da7aaed92c64fd4e80b83c9ad3', slot: "tabpanels" }, h("div", { key: '696804cadb97707558ef8c4a7cb90529fbf14c87', 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" }, h("slot", { key: '25b1a21995505a25af429038d2b3394063db723f' }))));
12
12
  }
13
13
  static get is() { return "pds-tabpanel"; }
14
14
  static get originalStyleUrls() {
@@ -1 +1 @@
1
- {"version":3,"file":"pds-tabpanel.js","sourceRoot":"","sources":["../../../../src/components/pds-tabs/pds-tabpanel/pds-tabpanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOlE,MAAM,OAAO,WAAW;IALxB;QAyBE;;WAEG;QACH,gBAAgB;QACO,aAAQ,GAAG,KAAK,CAAC,CAAU,wDAAwD;KAiB3G;IAfC,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,IAAI,EAAC,WAAW;YACpB,4DACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,EACxD,QAAQ,EAAC,GAAG,qBACK,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,EAC1D,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,cAAc;gBAEhE,8DAAQ,CACJ,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-tabpanel',\n styleUrl: 'pds-tabpanel.scss',\n shadow: false,\n})\nexport class PdsTabpanel {\n @Element() el: HTMLPdsTabpanelElement;\n\n /**\n * Sets the related tab name, this name must match a `pds-tab`'s tab name property\n */\n @Prop() name!: string;\n\n /**\n * Keeps track of the parentComponentId unique id, this property is passed by parent component\n */\n /** @internal */\n @Prop() parentComponentId: string;\n\n /**\n * Keeps track of if the expected tab variant, this property is passed by parent component\n */\n /** @internal */\n @Prop() variant: string;\n\n /**\n * Keeps track of the tabpanel selected state, this property is passed by parent component\n */\n /** @internal */\n @Prop({mutable: true}) selected = false; // eslint-disable-line @stencil-community/strict-mutable\n\n render() {\n return (\n <Host slot=\"tabpanels\">\n <div\n role=\"tabpanel\"\n id={this.parentComponentId + \"__\" + this.name + '-panel'}\n tabindex=\"0\"\n aria-labelledby={this.parentComponentId + \"__\" + this.name}\n class={this.selected ? \"pds-tabpanel is-active\" : \"pds-tabpanel\"}\n >\n <slot />\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-tabpanel.js","sourceRoot":"","sources":["../../../../../src/components/pds-tabs/pds-tabpanel/pds-tabpanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAOlE,MAAM,OAAO,WAAW;IALxB;QAyBE;;WAEG;QACH,gBAAgB;QACO,aAAQ,GAAG,KAAK,CAAC,CAAU,wDAAwD;KAiB3G;IAfC,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,IAAI,EAAC,WAAW;YACpB,4DACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,EACxD,QAAQ,EAAC,GAAG,qBACK,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,EAC1D,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,cAAc;gBAEhE,8DAAQ,CACJ,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-tabpanel',\n styleUrl: 'pds-tabpanel.scss',\n shadow: false,\n})\nexport class PdsTabpanel {\n @Element() el: HTMLPdsTabpanelElement;\n\n /**\n * Sets the related tab name, this name must match a `pds-tab`'s tab name property\n */\n @Prop() name!: string;\n\n /**\n * Keeps track of the parentComponentId unique id, this property is passed by parent component\n */\n /** @internal */\n @Prop() parentComponentId: string;\n\n /**\n * Keeps track of if the expected tab variant, this property is passed by parent component\n */\n /** @internal */\n @Prop() variant: string;\n\n /**\n * Keeps track of the tabpanel selected state, this property is passed by parent component\n */\n /** @internal */\n @Prop({mutable: true}) selected = false; // eslint-disable-line @stencil-community/strict-mutable\n\n render() {\n return (\n <Host slot=\"tabpanels\">\n <div\n role=\"tabpanel\"\n id={this.parentComponentId + \"__\" + this.name + '-panel'}\n tabindex=\"0\"\n aria-labelledby={this.parentComponentId + \"__\" + this.name}\n class={this.selected ? \"pds-tabpanel is-active\" : \"pds-tabpanel\"}\n >\n <slot />\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,11 +1,7 @@
1
1
  import { html } from 'lit-html';
2
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
3
- import { withActions } from '@storybook/addon-actions/decorator';
4
2
 
5
3
  export default {
6
- argTypes: extractArgTypes('pds-tabpanel'),
7
4
  component: 'pds-tabpanel',
8
- decorators: [withActions],
9
5
  title: 'components/Tabs/Tabpanel',
10
6
  }
11
7
 
@@ -25,8 +25,8 @@
25
25
  }
26
26
 
27
27
  :host(.pds-tabs--pill) .pds-tabs__tablist {
28
- background-color: var(--pine-color-grey-100);
29
- border: var(--pine-border-width-thin) solid var(--pine-color-grey-200);
28
+ background-color: var(--pine-color-background-app);
29
+ border: var(--pine-border-width-thin) solid var(--pine-color-border-subtle);
30
30
  border-radius: var(--pine-dimension-100);
31
31
  display: inline-flex;
32
32
  display: flex;
@@ -87,7 +87,7 @@ export class PdsTabs {
87
87
  this.passPropsToChildren();
88
88
  }
89
89
  render() {
90
- return (h(Host, { key: '89db4772ef4dab7f4dba38306b0fdf1ae55c8a9b', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, h("div", { key: 'c1596be516168b0f2548b90344ad3bffcc5cb844', class: "pds-tabs__tablist", role: "tablist", "aria-label": this.tablistLabel, part: "tab-list" }, h("slot", { key: 'be58f90ec895da67fc84eded670183151feb261f', name: "tabs" })), h("slot", { key: '24d3bed1750d8b64a8ffc9c86f517b5e8b15f615', name: "tabpanels" })));
90
+ return (h(Host, { key: '94465ebf3e3a10ff9171a8bd890cab85cff52636', "active-tab-name": this.activeTabName, class: this.classNames(), id: this.componentId }, h("div", { key: '3af742499e795c9b4c89d0537aa45679e02cc3b7', class: "pds-tabs__tablist", role: "tablist", "aria-label": this.tablistLabel, part: "tab-list" }, h("slot", { key: '655e6686afd2bc5823c69259f8ee0ba943905ecd', name: "tabs" })), h("slot", { key: '7fdebe4e77cb52ad481ca12af0796db825d31365', name: "tabpanels" })));
91
91
  }
92
92
  static get is() { return "pds-tabs"; }
93
93
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"pds-tabs.js","sourceRoot":"","sources":["../../../src/components/pds-tabs/pds-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, h, Prop, Listen } from '@stencil/core';\n\n /**\n * @slot tabs - Content is placed within the `div[role=\"tablist\"]` element as children\n * @slot tabpanels - Content is placed directly after the `div[role=\"tablist\"]` element as siblings\n * @part tab-list - Exposes the container element that holds all the tab buttons for styling.\n */\n@Component({\n tag: 'pds-tabs',\n styleUrls: ['pds-tabs.scss'],\n shadow: true,\n})\nexport class PdsTabs {\n private tabs;\n private tabPanels;\n\n @Element() el: HTMLPdsTabsElement;\n\n /**\n * Sets the aria-label attached to the tablist element\n */\n @Prop() tablistLabel!: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Sets tabs variant styles as outlined in Figma documentation\n */\n @Prop() variant!: 'primary' | 'availability' | 'filter' | 'pill';\n\n /**\n * Sets the starting active tab name and maintains the name as the component re-renders\n */\n @Prop({mutable: true}) activeTabName!: string;\n\n /**\n * Sets the starting active tab index number and maintains the index number as the component re-renders\n */\n /** @internal */\n @Prop({mutable: true}) activeTabIndex: number;\n\n @Listen('pdsTabClick', {\n target: 'body',\n })\n tabClickHandler(event: CustomEvent<any>) {\n if (this.componentId === event.detail[1]) {\n this.activeTabIndex = event.detail[0];\n this.activeTabName = this.tabs[this.activeTabIndex].name;\n }\n }\n\n @Listen('keydown', {})\n handleKeyDown(ev: KeyboardEvent) {\n const keySet = [\"ArrowLeft\", \"ArrowRight\", \"Home\", \"End\"];\n\n // Only handle keyboard navigation if the event originated from a tab button\n // that belongs to THIS tabs component\n const target = ev.target as HTMLElement;\n const targetTab = target.closest('pds-tab');\n\n // Check if the tab belongs to this tabs instance (not a nested one)\n const isOwnTab = targetTab && targetTab.closest('pds-tabs') === this.el;\n\n if (keySet.includes(ev.key) && isOwnTab) {\n ev.preventDefault();\n this.moveActiveTab(ev.key);\n }\n }\n\n private moveActiveTab(key: string) {\n const firstTabNumber = 0;\n const lastTabNumber = this.tabs.length - 1;\n\n let moveFocusTo = null;\n\n switch (key) {\n case 'ArrowLeft':\n moveFocusTo = (this.activeTabIndex === firstTabNumber) ? lastTabNumber : (this.activeTabIndex + (-1));\n break;\n case 'ArrowRight':\n moveFocusTo = (this.activeTabIndex === lastTabNumber) ? firstTabNumber : (this.activeTabIndex + 1);\n break;\n case 'Home':\n moveFocusTo = firstTabNumber;\n break;\n case 'End':\n moveFocusTo = lastTabNumber;\n break;\n }\n\n // Move focus to the button element within `pds-tab`\n this.tabs[moveFocusTo].children[0].focus();\n this.activeTabName = this.tabs[moveFocusTo].name;\n this.activeTabIndex = moveFocusTo;\n }\n\n private findAllChildren() {\n // Only select direct children tabs/tabpanels, not nested ones\n const allTabs = Array.from(this.el.querySelectorAll('pds-tab'));\n const allTabPanels = Array.from(this.el.querySelectorAll('pds-tabpanel'));\n\n // Filter to only include tabs that belong to this tabs component (not nested)\n this.tabs = allTabs.filter(tab => tab.closest('pds-tabs') === this.el);\n this.tabPanels = allTabPanels.filter(panel => panel.closest('pds-tabs') === this.el);\n }\n\n private propGeneration(child, index = 0) {\n child.parentComponentId = this.componentId.toString();\n child.variant = this.variant.toString();\n child.selected = (this.activeTabName === child.name) ? true : false;\n child['index'] = index;\n }\n\n private passPropsToChildren() {\n this.tabs.forEach((child, index) => {\n if (this.activeTabName === child.name) this.activeTabIndex = index;\n this.propGeneration(child, index);\n });\n\n this.tabPanels.forEach((child) => {\n this.propGeneration(child);\n });\n }\n\n private classNames() {\n let className = `pds-tabs`;\n if (this.variant && this.variant != 'primary') {\n const variantClassName = `pds-tabs--${this.variant}`;\n className += ' ' + variantClassName;\n }\n\n return className;\n };\n\n componentWillLoad() {\n this.findAllChildren();\n }\n\n componentWillRender() {\n this.passPropsToChildren();\n }\n\n render() {\n return (\n <Host active-tab-name={this.activeTabName} class={this.classNames()} id={this.componentId}>\n <div class=\"pds-tabs__tablist\" role=\"tablist\" aria-label={this.tablistLabel} part=\"tab-list\">\n <slot name=\"tabs\" />\n </div>\n <slot name=\"tabpanels\" />\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-tabs.js","sourceRoot":"","sources":["../../../../src/components/pds-tabs/pds-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, h, Prop, Listen } from '@stencil/core';\n\n /**\n * @slot tabs - Content is placed within the `div[role=\"tablist\"]` element as children\n * @slot tabpanels - Content is placed directly after the `div[role=\"tablist\"]` element as siblings\n * @part tab-list - Exposes the container element that holds all the tab buttons for styling.\n */\n@Component({\n tag: 'pds-tabs',\n styleUrls: ['pds-tabs.scss'],\n shadow: true,\n})\nexport class PdsTabs {\n private tabs;\n private tabPanels;\n\n @Element() el: HTMLPdsTabsElement;\n\n /**\n * Sets the aria-label attached to the tablist element\n */\n @Prop() tablistLabel!: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Sets tabs variant styles as outlined in Figma documentation\n */\n @Prop() variant!: 'primary' | 'availability' | 'filter' | 'pill';\n\n /**\n * Sets the starting active tab name and maintains the name as the component re-renders\n */\n @Prop({mutable: true}) activeTabName!: string;\n\n /**\n * Sets the starting active tab index number and maintains the index number as the component re-renders\n */\n /** @internal */\n @Prop({mutable: true}) activeTabIndex: number;\n\n @Listen('pdsTabClick', {\n target: 'body',\n })\n tabClickHandler(event: CustomEvent<any>) {\n if (this.componentId === event.detail[1]) {\n this.activeTabIndex = event.detail[0];\n this.activeTabName = this.tabs[this.activeTabIndex].name;\n }\n }\n\n @Listen('keydown', {})\n handleKeyDown(ev: KeyboardEvent) {\n const keySet = [\"ArrowLeft\", \"ArrowRight\", \"Home\", \"End\"];\n\n // Only handle keyboard navigation if the event originated from a tab button\n // that belongs to THIS tabs component\n const target = ev.target as HTMLElement;\n const targetTab = target.closest('pds-tab');\n\n // Check if the tab belongs to this tabs instance (not a nested one)\n const isOwnTab = targetTab && targetTab.closest('pds-tabs') === this.el;\n\n if (keySet.includes(ev.key) && isOwnTab) {\n ev.preventDefault();\n this.moveActiveTab(ev.key);\n }\n }\n\n private moveActiveTab(key: string) {\n const firstTabNumber = 0;\n const lastTabNumber = this.tabs.length - 1;\n\n let moveFocusTo = null;\n\n switch (key) {\n case 'ArrowLeft':\n moveFocusTo = (this.activeTabIndex === firstTabNumber) ? lastTabNumber : (this.activeTabIndex + (-1));\n break;\n case 'ArrowRight':\n moveFocusTo = (this.activeTabIndex === lastTabNumber) ? firstTabNumber : (this.activeTabIndex + 1);\n break;\n case 'Home':\n moveFocusTo = firstTabNumber;\n break;\n case 'End':\n moveFocusTo = lastTabNumber;\n break;\n }\n\n // Move focus to the button element within `pds-tab`\n this.tabs[moveFocusTo].children[0].focus();\n this.activeTabName = this.tabs[moveFocusTo].name;\n this.activeTabIndex = moveFocusTo;\n }\n\n private findAllChildren() {\n // Only select direct children tabs/tabpanels, not nested ones\n const allTabs = Array.from(this.el.querySelectorAll('pds-tab'));\n const allTabPanels = Array.from(this.el.querySelectorAll('pds-tabpanel'));\n\n // Filter to only include tabs that belong to this tabs component (not nested)\n this.tabs = allTabs.filter(tab => tab.closest('pds-tabs') === this.el);\n this.tabPanels = allTabPanels.filter(panel => panel.closest('pds-tabs') === this.el);\n }\n\n private propGeneration(child, index = 0) {\n child.parentComponentId = this.componentId.toString();\n child.variant = this.variant.toString();\n child.selected = (this.activeTabName === child.name) ? true : false;\n child['index'] = index;\n }\n\n private passPropsToChildren() {\n this.tabs.forEach((child, index) => {\n if (this.activeTabName === child.name) this.activeTabIndex = index;\n this.propGeneration(child, index);\n });\n\n this.tabPanels.forEach((child) => {\n this.propGeneration(child);\n });\n }\n\n private classNames() {\n let className = `pds-tabs`;\n if (this.variant && this.variant != 'primary') {\n const variantClassName = `pds-tabs--${this.variant}`;\n className += ' ' + variantClassName;\n }\n\n return className;\n };\n\n componentWillLoad() {\n this.findAllChildren();\n }\n\n componentWillRender() {\n this.passPropsToChildren();\n }\n\n render() {\n return (\n <Host active-tab-name={this.activeTabName} class={this.classNames()} id={this.componentId}>\n <div class=\"pds-tabs__tablist\" role=\"tablist\" aria-label={this.tablistLabel} part=\"tab-list\">\n <slot name=\"tabs\" />\n </div>\n <slot name=\"tabpanels\" />\n </Host>\n );\n }\n}\n"]}
@@ -1,16 +1,10 @@
1
1
  import { html } from 'lit';
2
- import { withActions } from '@storybook/addon-actions/decorator';
3
- import { extractArgTypes } from '@pxtrn/storybook-addon-docs-stencil';
2
+
4
3
 
5
4
  export default {
6
- argTypes: extractArgTypes('pds-tabs'),
5
+
7
6
  component: 'pds-tabs',
8
- decorators: [withActions],
9
- parameters: {
10
- actions: {
11
- handles: ['pdsTabClick']
12
- },
13
- },
7
+ parameters: {},
14
8
  title: 'components/Tabs',
15
9
  };
16
10
 
@@ -3,7 +3,7 @@
3
3
  }
4
4
 
5
5
  :host([decoration=underline-dotted]) > * {
6
- text-decoration-color: var(--pine-color-grey-600);
6
+ text-decoration-color: var(--pine-color-text-tertiary);
7
7
  text-decoration-line: underline;
8
8
  text-decoration-style: dotted;
9
9
  text-decoration-thickness: 12%;
@@ -20,7 +20,7 @@ export class PdsText {
20
20
  ${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}
21
21
  ${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}
22
22
  `;
23
- return (h(Tag, { key: '101a42ae93ac81968a177c7e0d569417f376909c', style: this.color && setColor(this.color), class: typeClasses, part: "content" }, h("slot", { key: '903b04a19b948e04d577c8585a76647033b9c36e' })));
23
+ return (h(Tag, { key: '42a62bfa709c5d093d6559ed073486b6a74e6bf5', style: this.color && setColor(this.color), class: typeClasses, part: "content" }, h("slot", { key: '46dd8be0670070f381bad21df56307595a5c94c9' })));
24
24
  }
25
25
  static get is() { return "pds-text"; }
26
26
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"pds-text.js","sourceRoot":"","sources":["../../../src/components/pds-text/pds-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AAMH,MAAM,OAAO,OAAO;IALpB;QAsEE;;WAEG;QACK,QAAG,GAWF,GAAG,CAAC;KAyBd;IAlBC,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAErB,MAAM,WAAW,GAAG;;QAEhB,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;QAC3F,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/F,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;QACvF,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/F,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,wBAAwB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;KAClH,CAAC;QAEF,OAAO,CACL,EAAC,GAAG,qDAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,SAAS;YAChF,8DAAQ,CACJ,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Prop, Element } from '@stencil/core';\nimport { setColor } from '../../utils/utils';\n\n/**\n * @part content - The text content container\n */\n@Component({\n tag: 'pds-text',\n styleUrl: 'pds-text.scss',\n shadow: true,\n})\nexport class PdsText {\n @Element() el: HTMLPdsTextElement;\n /**\n * Sets the text alignment.\n */\n @Prop() align?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Sets the text color.\n */\n @Prop() color?: string;\n\n /**\n * Sets the text decoration.\n */\n @Prop() decoration?:\n | 'strikethrough'\n | 'underline-dotted';\n\n /**\n * Set the bottom margin for the text.\n */\n @Prop() gutter?:\n | '2xl'\n | 'xl'\n | 'lg'\n | 'md'\n | 'sm'\n | 'xs'\n | '2xs';\n\n /**\n * If set or `true`, the text will be italic.\n */\n @Prop() italic?: boolean;\n\n /**\n * Sets the font size.\n */\n @Prop() size?:\n | '2xl'\n | 'xl'\n | 'lg'\n | 'md'\n | 'sm'\n | 'xs'\n | '2xs'\n | 'h1'\n | 'h2'\n | 'h3'\n | 'h4'\n | 'h5'\n | 'h6';\n\n /**\n * Sets the font weight.\n */\n @Prop() weight?:\n | 'extra-light'\n | 'light'\n | 'regular'\n | 'medium'\n | 'semibold'\n | 'bold';\n\n /**\n * Determines what semantic text tag to render.\n */\n @Prop() tag:\n | 'h1'\n | 'h2'\n | 'h3'\n | 'h4'\n | 'h5'\n | 'h6'\n | 'p'\n | 'code'\n | 'pre'\n | 'strong'\n | 'em' = \"p\";\n\n /**\n * If set or `true`, the text will be truncated. Must add a `width` to the element.\n */\n @Prop({ reflect: true }) truncate?: boolean;\n\n render() {\n const Tag = this.tag;\n\n const typeClasses = `\n pds-text\n ${this.align !== undefined && this.align.trim() !== '' ? `pds-text--align-${this.align}` : ''}\n ${this.gutter !== undefined && this.gutter.trim() !== '' ? `pds-text--gutter-${this.gutter}` : ''}\n ${this.size !== undefined && this.size.trim() !== '' ? `pds-text--size-${this.size}` : ''}\n ${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}\n ${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}\n `;\n\n return (\n <Tag style={this.color && setColor(this.color)} class={typeClasses} part=\"content\">\n <slot />\n </Tag>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pds-text.js","sourceRoot":"","sources":["../../../../src/components/pds-text/pds-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AAMH,MAAM,OAAO,OAAO;IALpB;QAsEE;;WAEG;QACK,QAAG,GAWF,GAAG,CAAC;KAyBd;IAlBC,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAErB,MAAM,WAAW,GAAG;;QAEhB,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;QAC3F,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/F,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;QACvF,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/F,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,wBAAwB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;KAClH,CAAC;QAEF,OAAO,CACL,EAAC,GAAG,qDAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,SAAS;YAChF,8DAAQ,CACJ,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Prop, Element } from '@stencil/core';\nimport { setColor } from '../../utils/utils';\n\n/**\n * @part content - The text content container\n */\n@Component({\n tag: 'pds-text',\n styleUrl: 'pds-text.scss',\n shadow: true,\n})\nexport class PdsText {\n @Element() el: HTMLPdsTextElement;\n /**\n * Sets the text alignment.\n */\n @Prop() align?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Sets the text color.\n */\n @Prop() color?: string;\n\n /**\n * Sets the text decoration.\n */\n @Prop() decoration?:\n | 'strikethrough'\n | 'underline-dotted';\n\n /**\n * Set the bottom margin for the text.\n */\n @Prop() gutter?:\n | '2xl'\n | 'xl'\n | 'lg'\n | 'md'\n | 'sm'\n | 'xs'\n | '2xs';\n\n /**\n * If set or `true`, the text will be italic.\n */\n @Prop() italic?: boolean;\n\n /**\n * Sets the font size.\n */\n @Prop() size?:\n | '2xl'\n | 'xl'\n | 'lg'\n | 'md'\n | 'sm'\n | 'xs'\n | '2xs'\n | 'h1'\n | 'h2'\n | 'h3'\n | 'h4'\n | 'h5'\n | 'h6';\n\n /**\n * Sets the font weight.\n */\n @Prop() weight?:\n | 'extra-light'\n | 'light'\n | 'regular'\n | 'medium'\n | 'semibold'\n | 'bold';\n\n /**\n * Determines what semantic text tag to render.\n */\n @Prop() tag:\n | 'h1'\n | 'h2'\n | 'h3'\n | 'h4'\n | 'h5'\n | 'h6'\n | 'p'\n | 'code'\n | 'pre'\n | 'strong'\n | 'em' = \"p\";\n\n /**\n * If set or `true`, the text will be truncated. Must add a `width` to the element.\n */\n @Prop({ reflect: true }) truncate?: boolean;\n\n render() {\n const Tag = this.tag;\n\n const typeClasses = `\n pds-text\n ${this.align !== undefined && this.align.trim() !== '' ? `pds-text--align-${this.align}` : ''}\n ${this.gutter !== undefined && this.gutter.trim() !== '' ? `pds-text--gutter-${this.gutter}` : ''}\n ${this.size !== undefined && this.size.trim() !== '' ? `pds-text--size-${this.size}` : ''}\n ${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}\n ${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}\n `;\n\n return (\n <Tag style={this.color && setColor(this.color)} class={typeClasses} part=\"content\">\n <slot />\n </Tag>\n );\n }\n}\n"]}