@pine-ds/core 3.6.0 → 3.8.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 (881) hide show
  1. package/components/form.js +16 -1
  2. package/components/form.js.map +1 -1
  3. package/components/index.d.ts +4 -0
  4. package/components/index.js +2 -0
  5. package/components/index.js.map +1 -1
  6. package/components/index2.js +4 -2
  7. package/components/index2.js.map +1 -1
  8. package/components/mock-pds-modal.js +2 -2
  9. package/components/mock-pds-modal.js.map +1 -1
  10. package/components/pds-avatar.js +1 -1
  11. package/components/pds-button2.js +7 -4
  12. package/components/pds-button2.js.map +1 -1
  13. package/components/pds-checkbox2.js +8 -5
  14. package/components/pds-checkbox2.js.map +1 -1
  15. package/components/pds-chip.js +1 -100
  16. package/components/pds-chip.js.map +1 -1
  17. package/components/pds-chip2.js +105 -0
  18. package/components/pds-chip2.js.map +1 -0
  19. package/components/pds-combobox.js +735 -54
  20. package/components/pds-combobox.js.map +1 -1
  21. package/components/pds-copytext.js +4 -4
  22. package/components/pds-copytext.js.map +1 -1
  23. package/components/pds-dropdown-menu-separator.js +1 -1
  24. package/components/pds-dropdown-menu-separator.js.map +1 -1
  25. package/components/pds-dropdown-menu.js +1 -1
  26. package/components/pds-dropdown-menu.js.map +1 -1
  27. package/components/pds-filter.d.ts +11 -0
  28. package/components/pds-filter.js +518 -0
  29. package/components/pds-filter.js.map +1 -0
  30. package/components/pds-filters.d.ts +11 -0
  31. package/components/pds-filters.js +38 -0
  32. package/components/pds-filters.js.map +1 -0
  33. package/components/pds-image.js +2 -2
  34. package/components/pds-input.js +3 -3
  35. package/components/pds-input.js.map +1 -1
  36. package/components/pds-link2.js +2 -2
  37. package/components/pds-loader2.js +1 -1
  38. package/components/pds-modal-content.js +2 -2
  39. package/components/pds-modal-footer.js +1 -1
  40. package/components/pds-modal-header.js +1 -1
  41. package/components/pds-modal.js +4 -4
  42. package/components/pds-modal.js.map +1 -1
  43. package/components/pds-popover.js +123 -15
  44. package/components/pds-popover.js.map +1 -1
  45. package/components/pds-progress.js +1 -1
  46. package/components/pds-property.js +1 -1
  47. package/components/pds-radio.js +11 -5
  48. package/components/pds-radio.js.map +1 -1
  49. package/components/pds-row.js +1 -1
  50. package/components/pds-select.js +22 -6
  51. package/components/pds-select.js.map +1 -1
  52. package/components/pds-sortable-item.js +1 -1
  53. package/components/pds-sortable.js +1 -1
  54. package/components/pds-switch.js +8 -5
  55. package/components/pds-switch.js.map +1 -1
  56. package/components/pds-tab.js +4 -4
  57. package/components/pds-tab.js.map +1 -1
  58. package/components/pds-table-body.js +1 -1
  59. package/components/pds-table-cell2.js +3 -3
  60. package/components/pds-table-cell2.js.map +1 -1
  61. package/components/pds-table-head-cell2.js +3 -3
  62. package/components/pds-table-head-cell2.js.map +1 -1
  63. package/components/pds-table-head.js +2 -2
  64. package/components/pds-table-head.js.map +1 -1
  65. package/components/pds-table-row.js +2 -2
  66. package/components/pds-table-row.js.map +1 -1
  67. package/components/pds-table.js +1 -1
  68. package/components/pds-table.js.map +1 -1
  69. package/components/pds-tabpanel.js +1 -1
  70. package/components/pds-tabs.js +14 -4
  71. package/components/pds-tabs.js.map +1 -1
  72. package/components/pds-text2.js +1 -1
  73. package/components/pds-textarea.js +10 -7
  74. package/components/pds-textarea.js.map +1 -1
  75. package/components/pds-toast.js +3 -3
  76. package/components/pds-tooltip.js +4 -4
  77. package/components/pds-tooltip.js.map +1 -1
  78. package/dist/cjs/{form-Bx4nzJBo.js → form-hmpgbT1I.js} +18 -2
  79. package/dist/cjs/form-hmpgbT1I.js.map +1 -0
  80. package/dist/cjs/{index-g-uSeICs.js → index-DDTyvZD7.js} +5 -2
  81. package/dist/cjs/index-DDTyvZD7.js.map +1 -0
  82. package/dist/cjs/{index-DVaLegMK.js → index-DtnvzYhe.js} +7 -3
  83. package/dist/cjs/index-DtnvzYhe.js.map +1 -0
  84. package/dist/cjs/index.cjs.js +1 -1
  85. package/dist/cjs/loader.cjs.js +2 -2
  86. package/dist/cjs/mock-pds-modal.cjs.entry.js +3 -3
  87. package/dist/cjs/mock-pds-modal.cjs.entry.js.map +1 -1
  88. package/dist/cjs/mock-pds-modal.entry.cjs.js.map +1 -1
  89. package/dist/cjs/pds-accordion.cjs.entry.js +2 -2
  90. package/dist/cjs/pds-alert.cjs.entry.js +1 -1
  91. package/dist/cjs/pds-avatar.cjs.entry.js +2 -2
  92. package/dist/cjs/pds-box.cjs.entry.js +1 -1
  93. package/dist/cjs/pds-button.cjs.entry.js +8 -5
  94. package/dist/cjs/pds-button.cjs.entry.js.map +1 -1
  95. package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
  96. package/dist/cjs/pds-checkbox.cjs.entry.js +9 -6
  97. package/dist/cjs/pds-checkbox.cjs.entry.js.map +1 -1
  98. package/dist/cjs/pds-checkbox.entry.cjs.js.map +1 -1
  99. package/dist/cjs/pds-chip.cjs.entry.js +4 -4
  100. package/dist/cjs/pds-chip.cjs.entry.js.map +1 -1
  101. package/dist/cjs/pds-chip.entry.cjs.js.map +1 -1
  102. package/dist/cjs/pds-combobox.cjs.entry.js +719 -51
  103. package/dist/cjs/pds-combobox.cjs.entry.js.map +1 -1
  104. package/dist/cjs/pds-combobox.entry.cjs.js.map +1 -1
  105. package/dist/cjs/pds-copytext.cjs.entry.js +5 -5
  106. package/dist/cjs/pds-copytext.cjs.entry.js.map +1 -1
  107. package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
  108. package/dist/cjs/pds-divider.cjs.entry.js +1 -1
  109. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
  110. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +2 -2
  111. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js.map +1 -1
  112. package/dist/cjs/pds-dropdown-menu-separator.entry.cjs.js.map +1 -1
  113. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +2 -2
  114. package/dist/cjs/pds-dropdown-menu.cjs.entry.js.map +1 -1
  115. package/dist/cjs/pds-dropdown-menu.entry.cjs.js.map +1 -1
  116. package/dist/cjs/pds-filter.cjs.entry.js +488 -0
  117. package/dist/cjs/pds-filter.cjs.entry.js.map +1 -0
  118. package/dist/cjs/pds-filter.entry.cjs.js.map +1 -0
  119. package/dist/cjs/pds-filters.cjs.entry.js +20 -0
  120. package/dist/cjs/pds-filters.cjs.entry.js.map +1 -0
  121. package/dist/cjs/pds-filters.entry.cjs.js.map +1 -0
  122. package/dist/cjs/pds-icon.cjs.entry.js +1 -1
  123. package/dist/cjs/pds-image.cjs.entry.js +3 -3
  124. package/dist/cjs/pds-input.cjs.entry.js +5 -5
  125. package/dist/cjs/pds-input.cjs.entry.js.map +1 -1
  126. package/dist/cjs/pds-input.entry.cjs.js.map +1 -1
  127. package/dist/cjs/pds-link.cjs.entry.js +4 -4
  128. package/dist/cjs/pds-loader.cjs.entry.js +2 -2
  129. package/dist/cjs/pds-modal-content.cjs.entry.js +3 -3
  130. package/dist/cjs/pds-modal-footer.cjs.entry.js +2 -2
  131. package/dist/cjs/pds-modal-header.cjs.entry.js +2 -2
  132. package/dist/cjs/pds-modal.cjs.entry.js +5 -5
  133. package/dist/cjs/pds-modal.cjs.entry.js.map +1 -1
  134. package/dist/cjs/pds-modal.entry.cjs.js.map +1 -1
  135. package/dist/cjs/pds-popover.cjs.entry.js +118 -13
  136. package/dist/cjs/pds-popover.cjs.entry.js.map +1 -1
  137. package/dist/cjs/pds-popover.entry.cjs.js.map +1 -1
  138. package/dist/cjs/pds-progress.cjs.entry.js +2 -2
  139. package/dist/cjs/pds-property.cjs.entry.js +2 -2
  140. package/dist/cjs/pds-radio.cjs.entry.js +12 -6
  141. package/dist/cjs/pds-radio.cjs.entry.js.map +1 -1
  142. package/dist/cjs/pds-radio.entry.cjs.js.map +1 -1
  143. package/dist/cjs/pds-row.cjs.entry.js +2 -2
  144. package/dist/cjs/pds-select.cjs.entry.js +21 -6
  145. package/dist/cjs/pds-select.cjs.entry.js.map +1 -1
  146. package/dist/cjs/pds-select.entry.cjs.js.map +1 -1
  147. package/dist/cjs/pds-sortable-item.cjs.entry.js +3 -3
  148. package/dist/cjs/pds-sortable.cjs.entry.js +2 -2
  149. package/dist/cjs/pds-switch.cjs.entry.js +9 -6
  150. package/dist/cjs/pds-switch.cjs.entry.js.map +1 -1
  151. package/dist/cjs/pds-switch.entry.cjs.js.map +1 -1
  152. package/dist/cjs/pds-tab.cjs.entry.js +5 -5
  153. package/dist/cjs/pds-tab.cjs.entry.js.map +1 -1
  154. package/dist/cjs/pds-tab.entry.cjs.js.map +1 -1
  155. package/dist/cjs/pds-table-body.cjs.entry.js +2 -2
  156. package/dist/cjs/pds-table-cell.cjs.entry.js +4 -4
  157. package/dist/cjs/pds-table-cell.cjs.entry.js.map +1 -1
  158. package/dist/cjs/pds-table-cell.entry.cjs.js.map +1 -1
  159. package/dist/cjs/pds-table-head-cell.cjs.entry.js +5 -5
  160. package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -1
  161. package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
  162. package/dist/cjs/pds-table-head.cjs.entry.js +3 -3
  163. package/dist/cjs/pds-table-head.cjs.entry.js.map +1 -1
  164. package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
  165. package/dist/cjs/pds-table-row.cjs.entry.js +3 -3
  166. package/dist/cjs/pds-table-row.cjs.entry.js.map +1 -1
  167. package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
  168. package/dist/cjs/pds-table.cjs.entry.js +2 -2
  169. package/dist/cjs/pds-table.cjs.entry.js.map +1 -1
  170. package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
  171. package/dist/cjs/pds-tabpanel.cjs.entry.js +2 -2
  172. package/dist/cjs/pds-tabs.cjs.entry.js +15 -5
  173. package/dist/cjs/pds-tabs.cjs.entry.js.map +1 -1
  174. package/dist/cjs/pds-tabs.entry.cjs.js.map +1 -1
  175. package/dist/cjs/pds-text.cjs.entry.js +2 -2
  176. package/dist/cjs/pds-textarea.cjs.entry.js +11 -8
  177. package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -1
  178. package/dist/cjs/pds-textarea.entry.cjs.js.map +1 -1
  179. package/dist/cjs/pds-toast.cjs.entry.js +4 -4
  180. package/dist/cjs/pds-tooltip.cjs.entry.js +5 -5
  181. package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -1
  182. package/dist/cjs/pds-tooltip.entry.cjs.js.map +1 -1
  183. package/dist/cjs/pine-core.cjs.js +2 -2
  184. package/dist/collection/collection-manifest.json +2 -0
  185. package/dist/collection/components/pds-button/pds-button.css +29 -3
  186. package/dist/collection/components/pds-button/pds-button.js +8 -5
  187. package/dist/collection/components/pds-button/pds-button.js.map +1 -1
  188. package/dist/collection/components/pds-button/stories/pds-button.stories.js +28 -1
  189. package/dist/collection/components/pds-checkbox/pds-checkbox.js +7 -4
  190. package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -1
  191. package/dist/collection/components/pds-chip/pds-chip.css +2 -2
  192. package/dist/collection/components/pds-chip/pds-chip.js +17 -5
  193. package/dist/collection/components/pds-chip/pds-chip.js.map +1 -1
  194. package/dist/collection/components/pds-combobox/pds-combobox.css +213 -4
  195. package/dist/collection/components/pds-combobox/pds-combobox.js +837 -54
  196. package/dist/collection/components/pds-combobox/pds-combobox.js.map +1 -1
  197. package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +182 -2
  198. package/dist/collection/components/pds-copytext/pds-copytext.css +6 -3
  199. package/dist/collection/components/pds-copytext/pds-copytext.js +2 -2
  200. package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
  201. package/dist/collection/components/pds-copytext/stories/pds-copytext.stories.js +1 -1
  202. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-separator/pds-dropdown-menu-separator.css +4 -1
  203. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +1 -1
  204. package/dist/collection/components/pds-filters/pds-filter/filter-interface.js +2 -0
  205. package/dist/collection/components/pds-filters/pds-filter/filter-interface.js.map +1 -0
  206. package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +193 -0
  207. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js +732 -0
  208. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js.map +1 -0
  209. package/dist/collection/components/pds-filters/pds-filter/stories/pds-filter.stories.js +93 -0
  210. package/dist/collection/components/pds-filters/pds-filters.css +10 -0
  211. package/dist/collection/components/pds-filters/pds-filters.js +45 -0
  212. package/dist/collection/components/pds-filters/pds-filters.js.map +1 -0
  213. package/dist/collection/components/pds-filters/stories/pds-filters.stories.js +40 -0
  214. package/dist/collection/components/pds-image/pds-image.js +2 -2
  215. package/dist/collection/components/pds-input/pds-input.css +18 -3
  216. package/dist/collection/components/pds-input/pds-input.js +1 -1
  217. package/dist/collection/components/pds-input/stories/pds-input.stories.js +42 -0
  218. package/dist/collection/components/pds-link/pds-link.js +2 -2
  219. package/dist/collection/components/pds-loader/pds-loader.js +1 -1
  220. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js +2 -2
  221. package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js +1 -1
  222. package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js +1 -1
  223. package/dist/collection/components/pds-modal/pds-modal.css +2 -2
  224. package/dist/collection/components/pds-modal/pds-modal.js +3 -3
  225. package/dist/collection/components/pds-modal/test/mock-pds-modal.js +1 -1
  226. package/dist/collection/components/pds-popover/pds-popover.css +3 -0
  227. package/dist/collection/components/pds-popover/pds-popover.js +226 -17
  228. package/dist/collection/components/pds-popover/pds-popover.js.map +1 -1
  229. package/dist/collection/components/pds-popover/popover-interface.js +2 -0
  230. package/dist/collection/components/pds-popover/popover-interface.js.map +1 -0
  231. package/dist/collection/components/pds-popover/stories/pds-popover.stories.js +1 -1
  232. package/dist/collection/components/pds-progress/pds-progress.js +1 -1
  233. package/dist/collection/components/pds-property/pds-property.js +1 -1
  234. package/dist/collection/components/pds-radio/pds-radio.js +10 -4
  235. package/dist/collection/components/pds-radio/pds-radio.js.map +1 -1
  236. package/dist/collection/components/pds-row/pds-row.js +1 -1
  237. package/dist/collection/components/pds-select/pds-select.css +1 -1
  238. package/dist/collection/components/pds-select/pds-select.js +19 -2
  239. package/dist/collection/components/pds-select/pds-select.js.map +1 -1
  240. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
  241. package/dist/collection/components/pds-sortable/pds-sortable.js +1 -1
  242. package/dist/collection/components/pds-switch/pds-switch.js +7 -4
  243. package/dist/collection/components/pds-switch/pds-switch.js.map +1 -1
  244. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +1 -1
  245. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +1 -1
  246. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +2 -2
  247. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -1
  248. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  249. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +1 -1
  250. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +2 -2
  251. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -1
  252. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
  253. package/dist/collection/components/pds-table/pds-table.css +1 -1
  254. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +5 -2
  255. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -3
  256. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
  257. package/dist/collection/components/pds-tabs/pds-tabs.js +15 -4
  258. package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -1
  259. package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +1 -1
  260. package/dist/collection/components/pds-text/pds-text.js +1 -1
  261. package/dist/collection/components/pds-textarea/pds-textarea.css +1 -1
  262. package/dist/collection/components/pds-textarea/pds-textarea.js +8 -5
  263. package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
  264. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  265. package/dist/collection/components/pds-tooltip/pds-tooltip.css +1 -1
  266. package/dist/collection/components/pds-tooltip/pds-tooltip.js +3 -3
  267. package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
  268. package/dist/collection/utils/form.js +15 -0
  269. package/dist/collection/utils/form.js.map +1 -1
  270. package/dist/collection/utils/types.js.map +1 -1
  271. package/dist/docs.json +825 -84
  272. package/dist/esm/form-DwjNklzi.js +47 -0
  273. package/dist/esm/form-DwjNklzi.js.map +1 -0
  274. package/dist/esm/{index-BVCWKPy3.js → index-Bf1dou5H.js} +5 -2
  275. package/dist/esm/index-Bf1dou5H.js.map +1 -0
  276. package/dist/esm/{index-DrJ5r5Pu.js → index-D4zJBIgl.js} +6 -4
  277. package/dist/esm/index-D4zJBIgl.js.map +1 -0
  278. package/dist/esm/index.js +1 -1
  279. package/dist/esm/loader.js +3 -3
  280. package/dist/esm/mock-pds-modal.entry.js +3 -3
  281. package/dist/esm/mock-pds-modal.entry.js.map +1 -1
  282. package/dist/esm/pds-accordion.entry.js +2 -2
  283. package/dist/esm/pds-alert.entry.js +1 -1
  284. package/dist/esm/pds-avatar.entry.js +2 -2
  285. package/dist/esm/pds-box.entry.js +1 -1
  286. package/dist/esm/pds-button.entry.js +8 -5
  287. package/dist/esm/pds-button.entry.js.map +1 -1
  288. package/dist/esm/pds-checkbox.entry.js +9 -6
  289. package/dist/esm/pds-checkbox.entry.js.map +1 -1
  290. package/dist/esm/pds-chip.entry.js +4 -4
  291. package/dist/esm/pds-chip.entry.js.map +1 -1
  292. package/dist/esm/pds-combobox.entry.js +719 -51
  293. package/dist/esm/pds-combobox.entry.js.map +1 -1
  294. package/dist/esm/pds-copytext.entry.js +5 -5
  295. package/dist/esm/pds-copytext.entry.js.map +1 -1
  296. package/dist/esm/pds-divider.entry.js +1 -1
  297. package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
  298. package/dist/esm/pds-dropdown-menu-separator.entry.js +2 -2
  299. package/dist/esm/pds-dropdown-menu-separator.entry.js.map +1 -1
  300. package/dist/esm/pds-dropdown-menu.entry.js +2 -2
  301. package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
  302. package/dist/esm/pds-filter.entry.js +486 -0
  303. package/dist/esm/pds-filter.entry.js.map +1 -0
  304. package/dist/esm/pds-filters.entry.js +18 -0
  305. package/dist/esm/pds-filters.entry.js.map +1 -0
  306. package/dist/esm/pds-icon.entry.js +1 -1
  307. package/dist/esm/pds-image.entry.js +3 -3
  308. package/dist/esm/pds-input.entry.js +5 -5
  309. package/dist/esm/pds-input.entry.js.map +1 -1
  310. package/dist/esm/pds-link.entry.js +4 -4
  311. package/dist/esm/pds-loader.entry.js +2 -2
  312. package/dist/esm/pds-modal-content.entry.js +3 -3
  313. package/dist/esm/pds-modal-footer.entry.js +2 -2
  314. package/dist/esm/pds-modal-header.entry.js +2 -2
  315. package/dist/esm/pds-modal.entry.js +5 -5
  316. package/dist/esm/pds-modal.entry.js.map +1 -1
  317. package/dist/esm/pds-popover.entry.js +118 -13
  318. package/dist/esm/pds-popover.entry.js.map +1 -1
  319. package/dist/esm/pds-progress.entry.js +2 -2
  320. package/dist/esm/pds-property.entry.js +2 -2
  321. package/dist/esm/pds-radio.entry.js +12 -6
  322. package/dist/esm/pds-radio.entry.js.map +1 -1
  323. package/dist/esm/pds-row.entry.js +2 -2
  324. package/dist/esm/pds-select.entry.js +21 -6
  325. package/dist/esm/pds-select.entry.js.map +1 -1
  326. package/dist/esm/pds-sortable-item.entry.js +3 -3
  327. package/dist/esm/pds-sortable.entry.js +2 -2
  328. package/dist/esm/pds-switch.entry.js +9 -6
  329. package/dist/esm/pds-switch.entry.js.map +1 -1
  330. package/dist/esm/pds-tab.entry.js +5 -5
  331. package/dist/esm/pds-tab.entry.js.map +1 -1
  332. package/dist/esm/pds-table-body.entry.js +2 -2
  333. package/dist/esm/pds-table-cell.entry.js +4 -4
  334. package/dist/esm/pds-table-cell.entry.js.map +1 -1
  335. package/dist/esm/pds-table-head-cell.entry.js +5 -5
  336. package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
  337. package/dist/esm/pds-table-head.entry.js +3 -3
  338. package/dist/esm/pds-table-head.entry.js.map +1 -1
  339. package/dist/esm/pds-table-row.entry.js +3 -3
  340. package/dist/esm/pds-table-row.entry.js.map +1 -1
  341. package/dist/esm/pds-table.entry.js +2 -2
  342. package/dist/esm/pds-table.entry.js.map +1 -1
  343. package/dist/esm/pds-tabpanel.entry.js +2 -2
  344. package/dist/esm/pds-tabs.entry.js +15 -5
  345. package/dist/esm/pds-tabs.entry.js.map +1 -1
  346. package/dist/esm/pds-text.entry.js +2 -2
  347. package/dist/esm/pds-textarea.entry.js +11 -8
  348. package/dist/esm/pds-textarea.entry.js.map +1 -1
  349. package/dist/esm/pds-toast.entry.js +4 -4
  350. package/dist/esm/pds-tooltip.entry.js +5 -5
  351. package/dist/esm/pds-tooltip.entry.js.map +1 -1
  352. package/dist/esm/pine-core.js +3 -3
  353. package/dist/esm-es5/form-DwjNklzi.js +2 -0
  354. package/dist/esm-es5/form-DwjNklzi.js.map +1 -0
  355. package/dist/esm-es5/{index-BVCWKPy3.js → index-Bf1dou5H.js} +2 -2
  356. package/dist/esm-es5/index-Bf1dou5H.js.map +1 -0
  357. package/dist/esm-es5/index-D4zJBIgl.js +2 -0
  358. package/dist/esm-es5/index-D4zJBIgl.js.map +1 -0
  359. package/dist/esm-es5/index.js +1 -1
  360. package/dist/esm-es5/loader.js +1 -1
  361. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  362. package/dist/esm-es5/mock-pds-modal.entry.js.map +1 -1
  363. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  364. package/dist/esm-es5/pds-alert.entry.js +1 -1
  365. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  366. package/dist/esm-es5/pds-box.entry.js +1 -1
  367. package/dist/esm-es5/pds-button.entry.js +1 -1
  368. package/dist/esm-es5/pds-button.entry.js.map +1 -1
  369. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  370. package/dist/esm-es5/pds-checkbox.entry.js.map +1 -1
  371. package/dist/esm-es5/pds-chip.entry.js +1 -1
  372. package/dist/esm-es5/pds-chip.entry.js.map +1 -1
  373. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  374. package/dist/esm-es5/pds-combobox.entry.js.map +1 -1
  375. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  376. package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
  377. package/dist/esm-es5/pds-divider.entry.js +1 -1
  378. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  379. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  380. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js.map +1 -1
  381. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  382. package/dist/esm-es5/pds-dropdown-menu.entry.js.map +1 -1
  383. package/dist/esm-es5/pds-filter.entry.js +2 -0
  384. package/dist/esm-es5/pds-filter.entry.js.map +1 -0
  385. package/dist/esm-es5/pds-filters.entry.js +2 -0
  386. package/dist/esm-es5/pds-filters.entry.js.map +1 -0
  387. package/dist/esm-es5/pds-icon.entry.js +1 -1
  388. package/dist/esm-es5/pds-image.entry.js +1 -1
  389. package/dist/esm-es5/pds-input.entry.js +1 -1
  390. package/dist/esm-es5/pds-input.entry.js.map +1 -1
  391. package/dist/esm-es5/pds-link.entry.js +1 -1
  392. package/dist/esm-es5/pds-loader.entry.js +1 -1
  393. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  394. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  395. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  396. package/dist/esm-es5/pds-modal.entry.js +1 -1
  397. package/dist/esm-es5/pds-modal.entry.js.map +1 -1
  398. package/dist/esm-es5/pds-popover.entry.js +1 -1
  399. package/dist/esm-es5/pds-popover.entry.js.map +1 -1
  400. package/dist/esm-es5/pds-progress.entry.js +1 -1
  401. package/dist/esm-es5/pds-property.entry.js +1 -1
  402. package/dist/esm-es5/pds-radio.entry.js +1 -1
  403. package/dist/esm-es5/pds-radio.entry.js.map +1 -1
  404. package/dist/esm-es5/pds-row.entry.js +1 -1
  405. package/dist/esm-es5/pds-select.entry.js +1 -1
  406. package/dist/esm-es5/pds-select.entry.js.map +1 -1
  407. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  408. package/dist/esm-es5/pds-sortable.entry.js +2 -2
  409. package/dist/esm-es5/pds-switch.entry.js +1 -1
  410. package/dist/esm-es5/pds-switch.entry.js.map +1 -1
  411. package/dist/esm-es5/pds-tab.entry.js +1 -1
  412. package/dist/esm-es5/pds-tab.entry.js.map +1 -1
  413. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  414. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  415. package/dist/esm-es5/pds-table-cell.entry.js.map +1 -1
  416. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  417. package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
  418. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  419. package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
  420. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  421. package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
  422. package/dist/esm-es5/pds-table.entry.js +1 -1
  423. package/dist/esm-es5/pds-table.entry.js.map +1 -1
  424. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  425. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  426. package/dist/esm-es5/pds-tabs.entry.js.map +1 -1
  427. package/dist/esm-es5/pds-text.entry.js +1 -1
  428. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  429. package/dist/esm-es5/pds-textarea.entry.js.map +1 -1
  430. package/dist/esm-es5/pds-toast.entry.js +1 -1
  431. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  432. package/dist/esm-es5/pds-tooltip.entry.js.map +1 -1
  433. package/dist/esm-es5/pine-core.js +1 -1
  434. package/dist/pine-core/index.esm.js +1 -1
  435. package/dist/pine-core/mock-pds-modal.entry.esm.js.map +1 -1
  436. package/dist/pine-core/p-00346c62.system.entry.js +2 -0
  437. package/dist/pine-core/p-00346c62.system.entry.js.map +1 -0
  438. package/dist/pine-core/{p-72b05928.system.entry.js → p-0486ecc6.system.entry.js} +2 -2
  439. package/dist/pine-core/{p-72b05928.system.entry.js.map → p-0486ecc6.system.entry.js.map} +1 -1
  440. package/dist/pine-core/p-07e129db.entry.js +2 -0
  441. package/dist/pine-core/{p-540cfd70.entry.js → p-1009009c.entry.js} +2 -2
  442. package/dist/pine-core/{p-349a8869.entry.js → p-100de2b7.entry.js} +2 -2
  443. package/dist/pine-core/p-1b932ee3.entry.js +2 -0
  444. package/dist/pine-core/p-1b932ee3.entry.js.map +1 -0
  445. package/dist/pine-core/{p-e2887e78.entry.js → p-1b9d4482.entry.js} +2 -2
  446. package/dist/pine-core/p-1c32ffb3.entry.js +2 -0
  447. package/dist/pine-core/p-1c32ffb3.entry.js.map +1 -0
  448. package/dist/pine-core/p-20466115.entry.js +2 -0
  449. package/dist/pine-core/p-20466115.entry.js.map +1 -0
  450. package/dist/pine-core/{p-dfc5ab34.system.entry.js → p-2054b5cb.system.entry.js} +2 -2
  451. package/dist/pine-core/{p-8726c99d.system.entry.js → p-2597bc59.system.entry.js} +2 -2
  452. package/dist/pine-core/{p-5a709348.entry.js → p-25cb810d.entry.js} +2 -2
  453. package/dist/pine-core/{p-a1b51557.system.entry.js → p-25cf2860.system.entry.js} +2 -2
  454. package/dist/pine-core/{p-54183d70.system.entry.js → p-2aab28b1.system.entry.js} +2 -2
  455. package/dist/pine-core/p-2b102034.system.entry.js +2 -0
  456. package/dist/pine-core/p-2b102034.system.entry.js.map +1 -0
  457. package/dist/pine-core/p-2b12bc55.system.entry.js +2 -0
  458. package/dist/pine-core/p-2efc646c.system.entry.js +2 -0
  459. package/dist/pine-core/{p-ecb9edf8.entry.js → p-2fb6f9d5.entry.js} +2 -2
  460. package/dist/pine-core/p-2fd7f74e.entry.js +2 -0
  461. package/dist/pine-core/{p-39488f2c.system.entry.js → p-302849cf.system.entry.js} +2 -2
  462. package/dist/pine-core/{p-51d83489.system.entry.js → p-307f415a.system.entry.js} +2 -2
  463. package/dist/pine-core/p-378df5eb.system.entry.js +2 -0
  464. package/dist/pine-core/{p-e08f492a.entry.js → p-39648ce2.entry.js} +2 -2
  465. package/dist/pine-core/p-3dce3bc0.system.entry.js +2 -0
  466. package/dist/pine-core/p-3dce3bc0.system.entry.js.map +1 -0
  467. package/dist/pine-core/{p-5f5b19f4.entry.js → p-41e2fe3a.entry.js} +2 -2
  468. package/dist/pine-core/p-449ebe39.system.entry.js +2 -0
  469. package/dist/pine-core/p-45d574f1.system.entry.js +2 -0
  470. package/dist/pine-core/p-45d574f1.system.entry.js.map +1 -0
  471. package/dist/pine-core/p-465e3418.system.entry.js +2 -0
  472. package/dist/pine-core/p-465e3418.system.entry.js.map +1 -0
  473. package/dist/pine-core/p-4xv5UVkx.system.js.map +1 -0
  474. package/dist/pine-core/p-538b3902.system.entry.js +2 -0
  475. package/dist/pine-core/p-538b3902.system.entry.js.map +1 -0
  476. package/dist/pine-core/{p-c13ef6a7.system.entry.js → p-55d06d0a.system.entry.js} +3 -3
  477. package/dist/pine-core/{p-075eecf9.entry.js → p-5ac7af9e.entry.js} +2 -2
  478. package/dist/pine-core/p-61a25ab2.entry.js +2 -0
  479. package/dist/pine-core/p-61a25ab2.entry.js.map +1 -0
  480. package/dist/pine-core/p-6381a811.system.entry.js +4 -0
  481. package/dist/pine-core/p-6381a811.system.entry.js.map +1 -0
  482. package/dist/pine-core/p-6c36cab6.entry.js +2 -0
  483. package/dist/pine-core/p-6c36cab6.entry.js.map +1 -0
  484. package/dist/pine-core/p-6ed297cb.entry.js +2 -0
  485. package/dist/pine-core/p-6ed297cb.entry.js.map +1 -0
  486. package/dist/pine-core/p-708e963c.system.entry.js +2 -0
  487. package/dist/pine-core/p-708e963c.system.entry.js.map +1 -0
  488. package/dist/pine-core/p-7090d42d.system.entry.js +2 -0
  489. package/dist/pine-core/p-7090d42d.system.entry.js.map +1 -0
  490. package/dist/pine-core/{p-4deb7b8c.entry.js → p-725c350c.entry.js} +2 -2
  491. package/dist/pine-core/{p-4deb7b8c.entry.js.map → p-725c350c.entry.js.map} +1 -1
  492. package/dist/pine-core/{p-b2b1b7a9.system.entry.js → p-73a2e028.system.entry.js} +2 -2
  493. package/dist/pine-core/p-75187352.system.entry.js +2 -0
  494. package/dist/pine-core/p-75187352.system.entry.js.map +1 -0
  495. package/dist/pine-core/p-786967e8.entry.js +2 -0
  496. package/dist/pine-core/p-79422986.entry.js +2 -0
  497. package/dist/pine-core/p-79422986.entry.js.map +1 -0
  498. package/dist/pine-core/p-81bc089e.entry.js +2 -0
  499. package/dist/pine-core/p-81bc089e.entry.js.map +1 -0
  500. package/dist/pine-core/p-85c41629.entry.js +2 -0
  501. package/dist/pine-core/p-85c41629.entry.js.map +1 -0
  502. package/dist/pine-core/p-86263a62.entry.js +2 -0
  503. package/dist/pine-core/p-86263a62.entry.js.map +1 -0
  504. package/dist/pine-core/p-875d5d5a.system.entry.js +2 -0
  505. package/dist/pine-core/p-87ed43d5.entry.js +2 -0
  506. package/dist/pine-core/p-87ed43d5.entry.js.map +1 -0
  507. package/dist/pine-core/{p-c8122bea.entry.js → p-88773b86.entry.js} +2 -2
  508. package/dist/pine-core/p-8b4fb3f0.entry.js +2 -0
  509. package/dist/pine-core/p-8b4fb3f0.entry.js.map +1 -0
  510. package/dist/pine-core/p-8b5fc4b4.system.entry.js +2 -0
  511. package/dist/pine-core/p-8b5fc4b4.system.entry.js.map +1 -0
  512. package/dist/pine-core/{p-e89cb1f2.system.entry.js → p-8f69dd71.system.entry.js} +2 -2
  513. package/dist/pine-core/p-94183716.entry.js +2 -0
  514. package/dist/pine-core/p-94183716.entry.js.map +1 -0
  515. package/dist/pine-core/p-96c27dba.entry.js +2 -0
  516. package/dist/pine-core/p-96c27dba.entry.js.map +1 -0
  517. package/dist/pine-core/p-9766923f.entry.js +2 -0
  518. package/dist/pine-core/p-9766923f.entry.js.map +1 -0
  519. package/dist/pine-core/p-9b335a9f.entry.js +2 -0
  520. package/dist/pine-core/p-9b335a9f.entry.js.map +1 -0
  521. package/dist/pine-core/p-9c579956.system.entry.js +2 -0
  522. package/dist/pine-core/p-9c579956.system.entry.js.map +1 -0
  523. package/dist/pine-core/p-9cf2b7a6.entry.js +2 -0
  524. package/dist/pine-core/p-9cf2b7a6.entry.js.map +1 -0
  525. package/dist/pine-core/{p-Dh7jcLgJ.system.js.map → p-B-Doh1Wu.system.js.map} +1 -1
  526. package/dist/pine-core/{p-B1fiSdbt.system.js.map → p-BEgEi4w5.system.js.map} +1 -1
  527. package/dist/pine-core/p-BG99uNIQ.system.js +2 -0
  528. package/dist/pine-core/p-BG99uNIQ.system.js.map +1 -0
  529. package/dist/pine-core/p-BHavepTY.system.js +2 -0
  530. package/dist/pine-core/p-BHavepTY.system.js.map +1 -0
  531. package/dist/pine-core/{p-_E9ZEzfO.system.js.map → p-BIjeWHX_.system.js.map} +1 -1
  532. package/dist/pine-core/{p-EYhpJx2s.system.js.map → p-BJjdD3yf.system.js.map} +1 -1
  533. package/dist/pine-core/p-BLC5kuro.system.js.map +1 -0
  534. package/dist/pine-core/p-BPjnTOEL.system.js +2 -0
  535. package/dist/pine-core/{p-De9tROL-.system.js.map → p-BPjnTOEL.system.js.map} +1 -1
  536. package/dist/pine-core/{p-D05FrqXr.system.js.map → p-BRIdBthP.system.js.map} +1 -1
  537. package/dist/pine-core/{p-BVCWKPy3.js → p-Bf1dou5H.js} +2 -2
  538. package/dist/pine-core/p-Bf1dou5H.js.map +1 -0
  539. package/dist/pine-core/{p-Kj_j7PHx.system.js.map → p-BkPtASB1.system.js.map} +1 -1
  540. package/dist/pine-core/p-Bkfqi7zE.system.js.map +1 -0
  541. package/dist/pine-core/p-ByzULH8m.system.js.map +1 -0
  542. package/dist/pine-core/p-C1KChp5Q.system.js.map +1 -0
  543. package/dist/pine-core/p-C2W-sHx5.system.js.map +1 -0
  544. package/dist/pine-core/{p-CE6b_LzB.system.js.map → p-C3iAHQC6.system.js.map} +1 -1
  545. package/dist/pine-core/{p-ACQU83St.system.js.map → p-CCQd5PVN.system.js.map} +1 -1
  546. package/dist/pine-core/{p-ChslVme6.system.js.map → p-CG2PKUWT.system.js.map} +1 -1
  547. package/dist/pine-core/p-CIBXMJd-.system.js.map +1 -0
  548. package/dist/pine-core/p-CJNB_wrl.system.js.map +1 -0
  549. package/dist/pine-core/p-CSa_b_JX.system.js.map +1 -0
  550. package/dist/pine-core/p-Cid662up.system.js.map +1 -0
  551. package/dist/pine-core/{p-CWdEolqa.system.js.map → p-Cl47ROcT.system.js.map} +1 -1
  552. package/dist/pine-core/{p-0KTU2Jt-.system.js.map → p-CnPN6prI.system.js.map} +1 -1
  553. package/dist/pine-core/p-Cqzmj3D8.system.js.map +1 -0
  554. package/dist/pine-core/{p-B1FQkx7R.system.js.map → p-Ctdx1tCG.system.js.map} +1 -1
  555. package/dist/pine-core/{p-3gYSFJIn.system.js.map → p-CwNRZQss.system.js.map} +1 -1
  556. package/dist/pine-core/p-Cxlv_2hD.system.js.map +1 -0
  557. package/dist/pine-core/{p-B_C-mRjx.system.js → p-Cxvdulqq.system.js} +2 -2
  558. package/dist/pine-core/p-Cxvdulqq.system.js.map +1 -0
  559. package/dist/pine-core/p-D0foS5EP.system.js.map +1 -0
  560. package/dist/pine-core/p-D4zJBIgl.js +2 -0
  561. package/dist/pine-core/p-D4zJBIgl.js.map +1 -0
  562. package/dist/pine-core/{p-MBv7PsKc.system.js.map → p-D52TGCLt.system.js.map} +1 -1
  563. package/dist/pine-core/{p-CHJgq_z7.system.js.map → p-D7B3vOdC.system.js.map} +1 -1
  564. package/dist/pine-core/p-DCjZr2HA.system.js.map +1 -0
  565. package/dist/pine-core/p-DN3VK2yy.system.js.map +1 -0
  566. package/dist/pine-core/{p-Df_3qA_L.system.js.map → p-DOqVoXeA.system.js.map} +1 -1
  567. package/dist/pine-core/p-DW3lkDNz.system.js.map +1 -0
  568. package/dist/pine-core/p-DfrSuf6X.system.js.map +1 -0
  569. package/dist/pine-core/{p-CLoi4eKt.system.js.map → p-DmWU0f_O.system.js.map} +1 -1
  570. package/dist/pine-core/p-DpemOPFJ.system.js.map +1 -0
  571. package/dist/pine-core/p-DpzRSULT.system.js.map +1 -0
  572. package/dist/pine-core/{p-DYb5Y47j.system.js.map → p-Dq7Wu9rr.system.js.map} +1 -1
  573. package/dist/pine-core/p-DtdXdmNp.system.js.map +1 -0
  574. package/dist/pine-core/p-Dw05F6Xg.system.js.map +1 -0
  575. package/dist/pine-core/p-Dw7zXw_6.system.js.map +1 -0
  576. package/dist/pine-core/p-DwjNklzi.js +2 -0
  577. package/dist/pine-core/p-DwjNklzi.js.map +1 -0
  578. package/dist/pine-core/p-GrmqKqN8.system.js.map +1 -0
  579. package/dist/pine-core/p-HHZU8rBT.system.js.map +1 -0
  580. package/dist/pine-core/{p-C5Y492i0.system.js.map → p-M-zMP2QX.system.js.map} +1 -1
  581. package/dist/pine-core/p-WWWd_vEd.system.js +2 -0
  582. package/dist/pine-core/p-WWWd_vEd.system.js.map +1 -0
  583. package/dist/pine-core/p-a2708028.entry.js +2 -0
  584. package/dist/pine-core/p-a2708028.entry.js.map +1 -0
  585. package/dist/pine-core/{p-72053224.entry.js → p-a2cb65df.entry.js} +3 -3
  586. package/dist/pine-core/{p-52d37cc1.entry.js → p-a3785977.entry.js} +2 -2
  587. package/dist/pine-core/p-a645818a.entry.js +2 -0
  588. package/dist/pine-core/p-a707a7da.system.entry.js +2 -0
  589. package/dist/pine-core/p-a707a7da.system.entry.js.map +1 -0
  590. package/dist/pine-core/{p-f583e5d4.entry.js → p-a9cfaa1f.entry.js} +2 -2
  591. package/dist/pine-core/p-acd87a10.entry.js +2 -0
  592. package/dist/pine-core/p-acd87a10.entry.js.map +1 -0
  593. package/dist/pine-core/p-ae4ec5cf.system.entry.js +2 -0
  594. package/dist/pine-core/p-ae4ec5cf.system.entry.js.map +1 -0
  595. package/dist/pine-core/p-b23dd01c.entry.js +2 -0
  596. package/dist/pine-core/p-b23dd01c.entry.js.map +1 -0
  597. package/dist/pine-core/p-b669e1d9.entry.js +2 -0
  598. package/dist/pine-core/p-b9aafec7.system.entry.js +2 -0
  599. package/dist/pine-core/p-b9aafec7.system.entry.js.map +1 -0
  600. package/dist/pine-core/{p-52cb152b.system.entry.js → p-bc2fecd4.system.entry.js} +2 -2
  601. package/dist/pine-core/{p-e3fb0bc2.system.entry.js → p-bc637bed.system.entry.js} +2 -2
  602. package/dist/pine-core/{p-b6ea3332.entry.js → p-be5ef841.entry.js} +2 -2
  603. package/dist/pine-core/p-c3579585.system.entry.js +2 -0
  604. package/dist/pine-core/p-c3579585.system.entry.js.map +1 -0
  605. package/dist/pine-core/{p-fcb39155.system.entry.js → p-c3f84df8.system.entry.js} +2 -2
  606. package/dist/pine-core/p-c44d3551.entry.js +2 -0
  607. package/dist/pine-core/{p-e8d76117.entry.js → p-c55fc47e.entry.js} +2 -2
  608. package/dist/pine-core/p-cffc98ae.entry.js +3 -0
  609. package/dist/pine-core/p-cffc98ae.entry.js.map +1 -0
  610. package/dist/pine-core/{p-5e8badb9.entry.js → p-d1b27fa4.entry.js} +2 -2
  611. package/dist/pine-core/p-d2b15290.system.entry.js +2 -0
  612. package/dist/pine-core/p-d2b15290.system.entry.js.map +1 -0
  613. package/dist/pine-core/p-d4d22aee.entry.js +2 -0
  614. package/dist/pine-core/p-d4d22aee.entry.js.map +1 -0
  615. package/dist/pine-core/{p-5da82e8c.system.entry.js → p-dace69e7.system.entry.js} +2 -2
  616. package/dist/pine-core/p-db12273e.system.entry.js +2 -0
  617. package/dist/pine-core/p-e34c1224.system.entry.js +2 -0
  618. package/dist/pine-core/p-e34c1224.system.entry.js.map +1 -0
  619. package/dist/pine-core/p-e5adbf74.system.entry.js +2 -0
  620. package/dist/pine-core/p-e5adbf74.system.entry.js.map +1 -0
  621. package/dist/pine-core/p-e6085566.system.entry.js +2 -0
  622. package/dist/pine-core/p-e6085566.system.entry.js.map +1 -0
  623. package/dist/pine-core/p-e683e197.system.entry.js +2 -0
  624. package/dist/pine-core/p-e683e197.system.entry.js.map +1 -0
  625. package/dist/pine-core/p-e6b051e8.system.entry.js +2 -0
  626. package/dist/pine-core/p-e6b051e8.system.entry.js.map +1 -0
  627. package/dist/pine-core/{p-f55b9f90.system.entry.js → p-e702a8dc.system.entry.js} +2 -2
  628. package/dist/pine-core/{p-6db1e029.system.entry.js → p-ee583234.system.entry.js} +2 -2
  629. package/dist/pine-core/p-f15cd180.entry.js +2 -0
  630. package/dist/pine-core/p-f15cd180.entry.js.map +1 -0
  631. package/dist/pine-core/{p-0066d249.entry.js → p-f5d78141.entry.js} +2 -2
  632. package/dist/pine-core/p-f61ee383.system.entry.js +2 -0
  633. package/dist/pine-core/p-f61ee383.system.entry.js.map +1 -0
  634. package/dist/pine-core/p-f6d0bd39.entry.js +2 -0
  635. package/dist/pine-core/p-f6d0bd39.entry.js.map +1 -0
  636. package/dist/pine-core/{p-52af1890.system.entry.js → p-f911dde3.system.entry.js} +2 -2
  637. package/dist/pine-core/p-f92d7570.system.entry.js +2 -0
  638. package/dist/pine-core/p-f92d7570.system.entry.js.map +1 -0
  639. package/dist/pine-core/{p-BZoPY2dP.system.js.map → p-iazk4jjL.system.js.map} +1 -1
  640. package/dist/pine-core/{p-CqzGa2j0.system.js.map → p-k9JOparb.system.js.map} +1 -1
  641. package/dist/pine-core/{p-B7S-9dbT.system.js.map → p-kcOuXqWo.system.js.map} +1 -1
  642. package/dist/pine-core/{p-c0df3222.entry.js.map → p-ozqEY4Zc.system.js.map} +1 -1
  643. package/dist/pine-core/{p-CqK-uhv8.system.js.map → p-yaM1kuaC.system.js.map} +1 -1
  644. package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
  645. package/dist/pine-core/pds-checkbox.entry.esm.js.map +1 -1
  646. package/dist/pine-core/pds-chip.entry.esm.js.map +1 -1
  647. package/dist/pine-core/pds-combobox.entry.esm.js.map +1 -1
  648. package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
  649. package/dist/pine-core/pds-dropdown-menu-separator.entry.esm.js.map +1 -1
  650. package/dist/pine-core/pds-dropdown-menu.entry.esm.js.map +1 -1
  651. package/dist/pine-core/pds-filter.entry.esm.js.map +1 -0
  652. package/dist/pine-core/pds-filters.entry.esm.js.map +1 -0
  653. package/dist/pine-core/pds-input.entry.esm.js.map +1 -1
  654. package/dist/pine-core/pds-modal.entry.esm.js.map +1 -1
  655. package/dist/pine-core/pds-popover.entry.esm.js.map +1 -1
  656. package/dist/pine-core/pds-radio.entry.esm.js.map +1 -1
  657. package/dist/pine-core/pds-select.entry.esm.js.map +1 -1
  658. package/dist/pine-core/pds-switch.entry.esm.js.map +1 -1
  659. package/dist/pine-core/pds-tab.entry.esm.js.map +1 -1
  660. package/dist/pine-core/pds-table-cell.entry.esm.js.map +1 -1
  661. package/dist/pine-core/pds-table-head-cell.entry.esm.js.map +1 -1
  662. package/dist/pine-core/pds-table-head.entry.esm.js.map +1 -1
  663. package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
  664. package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
  665. package/dist/pine-core/pds-tabs.entry.esm.js.map +1 -1
  666. package/dist/pine-core/pds-textarea.entry.esm.js.map +1 -1
  667. package/dist/pine-core/pds-tooltip.entry.esm.js.map +1 -1
  668. package/dist/pine-core/pine-core.css +1 -1
  669. package/dist/pine-core/pine-core.esm.js +1 -1
  670. package/dist/pine-core/pine-core.js +1 -1
  671. package/dist/types/components/pds-button/pds-button.d.ts +1 -1
  672. package/dist/types/components/pds-checkbox/pds-checkbox.d.ts +1 -0
  673. package/dist/types/components/pds-chip/pds-chip.d.ts +3 -2
  674. package/dist/types/components/pds-combobox/pds-combobox.d.ts +84 -5
  675. package/dist/types/components/pds-filters/pds-filter/filter-interface.d.ts +19 -0
  676. package/dist/types/components/pds-filters/pds-filter/pds-filter.d.ts +133 -0
  677. package/dist/types/components/pds-filters/pds-filters.d.ts +11 -0
  678. package/dist/types/components/pds-popover/pds-popover.d.ts +33 -2
  679. package/dist/types/components/pds-popover/popover-interface.d.ts +8 -0
  680. package/dist/types/components/pds-radio/pds-radio.d.ts +3 -0
  681. package/dist/types/components/pds-select/pds-select.d.ts +6 -0
  682. package/dist/types/components/pds-switch/pds-switch.d.ts +1 -0
  683. package/dist/types/components/pds-tabs/pds-tabs.d.ts +1 -0
  684. package/dist/types/components/pds-textarea/pds-textarea.d.ts +1 -0
  685. package/dist/types/components.d.ts +227 -12
  686. package/dist/types/utils/form.d.ts +9 -0
  687. package/dist/types/utils/types.d.ts +2 -0
  688. package/hydrate/index.js +1529 -146
  689. package/hydrate/index.mjs +1529 -146
  690. package/package.json +2 -2
  691. package/dist/cjs/form-Bx4nzJBo.js.map +0 -1
  692. package/dist/cjs/index-DVaLegMK.js.map +0 -1
  693. package/dist/cjs/index-g-uSeICs.js.map +0 -1
  694. package/dist/esm/form-DTL_39D_.js +0 -32
  695. package/dist/esm/form-DTL_39D_.js.map +0 -1
  696. package/dist/esm/index-BVCWKPy3.js.map +0 -1
  697. package/dist/esm/index-DrJ5r5Pu.js.map +0 -1
  698. package/dist/esm-es5/form-DTL_39D_.js +0 -2
  699. package/dist/esm-es5/form-DTL_39D_.js.map +0 -1
  700. package/dist/esm-es5/index-BVCWKPy3.js.map +0 -1
  701. package/dist/esm-es5/index-DrJ5r5Pu.js +0 -2
  702. package/dist/esm-es5/index-DrJ5r5Pu.js.map +0 -1
  703. package/dist/pine-core/p-00616fc9.entry.js +0 -2
  704. package/dist/pine-core/p-00616fc9.entry.js.map +0 -1
  705. package/dist/pine-core/p-023d8b71.system.entry.js +0 -2
  706. package/dist/pine-core/p-023d8b71.system.entry.js.map +0 -1
  707. package/dist/pine-core/p-051ff780.system.entry.js +0 -2
  708. package/dist/pine-core/p-051ff780.system.entry.js.map +0 -1
  709. package/dist/pine-core/p-0TIvNV5c.system.js.map +0 -1
  710. package/dist/pine-core/p-0de9f8da.system.entry.js +0 -2
  711. package/dist/pine-core/p-0de9f8da.system.entry.js.map +0 -1
  712. package/dist/pine-core/p-14a52961.system.entry.js +0 -2
  713. package/dist/pine-core/p-14a52961.system.entry.js.map +0 -1
  714. package/dist/pine-core/p-232a2043.entry.js +0 -2
  715. package/dist/pine-core/p-25190921.entry.js +0 -2
  716. package/dist/pine-core/p-25190921.entry.js.map +0 -1
  717. package/dist/pine-core/p-297afc49.system.entry.js +0 -2
  718. package/dist/pine-core/p-297afc49.system.entry.js.map +0 -1
  719. package/dist/pine-core/p-2e19f167.system.entry.js +0 -2
  720. package/dist/pine-core/p-2e19f167.system.entry.js.map +0 -1
  721. package/dist/pine-core/p-318fd0cf.entry.js +0 -2
  722. package/dist/pine-core/p-318fd0cf.entry.js.map +0 -1
  723. package/dist/pine-core/p-346561a6.system.entry.js +0 -2
  724. package/dist/pine-core/p-346561a6.system.entry.js.map +0 -1
  725. package/dist/pine-core/p-3pEJO0vO.system.js.map +0 -1
  726. package/dist/pine-core/p-41d1b164.entry.js +0 -2
  727. package/dist/pine-core/p-41d1b164.entry.js.map +0 -1
  728. package/dist/pine-core/p-44087d1c.entry.js +0 -2
  729. package/dist/pine-core/p-44087d1c.entry.js.map +0 -1
  730. package/dist/pine-core/p-464dd476.entry.js +0 -2
  731. package/dist/pine-core/p-464dd476.entry.js.map +0 -1
  732. package/dist/pine-core/p-47670150.entry.js +0 -3
  733. package/dist/pine-core/p-47670150.entry.js.map +0 -1
  734. package/dist/pine-core/p-4bbf3e31.entry.js +0 -2
  735. package/dist/pine-core/p-4bbf3e31.entry.js.map +0 -1
  736. package/dist/pine-core/p-4c81420c.entry.js +0 -2
  737. package/dist/pine-core/p-4c81420c.entry.js.map +0 -1
  738. package/dist/pine-core/p-503cab1f.entry.js +0 -2
  739. package/dist/pine-core/p-503cab1f.entry.js.map +0 -1
  740. package/dist/pine-core/p-50c9e865.entry.js +0 -2
  741. package/dist/pine-core/p-50c9e865.entry.js.map +0 -1
  742. package/dist/pine-core/p-5708f95a.entry.js +0 -2
  743. package/dist/pine-core/p-651861ff.entry.js +0 -2
  744. package/dist/pine-core/p-651861ff.entry.js.map +0 -1
  745. package/dist/pine-core/p-66b10d29.entry.js +0 -2
  746. package/dist/pine-core/p-6d4d4705.system.entry.js +0 -2
  747. package/dist/pine-core/p-6d4d4705.system.entry.js.map +0 -1
  748. package/dist/pine-core/p-6f4a6d0b.entry.js +0 -2
  749. package/dist/pine-core/p-6f4a6d0b.entry.js.map +0 -1
  750. package/dist/pine-core/p-7004d1ea.system.entry.js +0 -2
  751. package/dist/pine-core/p-71169b66.system.entry.js +0 -2
  752. package/dist/pine-core/p-71169b66.system.entry.js.map +0 -1
  753. package/dist/pine-core/p-73158adf.system.entry.js +0 -2
  754. package/dist/pine-core/p-73158adf.system.entry.js.map +0 -1
  755. package/dist/pine-core/p-77336705.entry.js +0 -2
  756. package/dist/pine-core/p-77336705.entry.js.map +0 -1
  757. package/dist/pine-core/p-7cb4f0de.entry.js +0 -2
  758. package/dist/pine-core/p-7cb4f0de.entry.js.map +0 -1
  759. package/dist/pine-core/p-84949a12.entry.js +0 -2
  760. package/dist/pine-core/p-84949a12.entry.js.map +0 -1
  761. package/dist/pine-core/p-8722865f.system.entry.js +0 -2
  762. package/dist/pine-core/p-8722865f.system.entry.js.map +0 -1
  763. package/dist/pine-core/p-8999b63d.system.entry.js +0 -2
  764. package/dist/pine-core/p-8999b63d.system.entry.js.map +0 -1
  765. package/dist/pine-core/p-8ab7f0d7.system.entry.js +0 -4
  766. package/dist/pine-core/p-8ab7f0d7.system.entry.js.map +0 -1
  767. package/dist/pine-core/p-8d7abc83.entry.js +0 -2
  768. package/dist/pine-core/p-8d7abc83.entry.js.map +0 -1
  769. package/dist/pine-core/p-92c52409.system.entry.js +0 -2
  770. package/dist/pine-core/p-92c52409.system.entry.js.map +0 -1
  771. package/dist/pine-core/p-98fe56d9.entry.js +0 -2
  772. package/dist/pine-core/p-98fe56d9.entry.js.map +0 -1
  773. package/dist/pine-core/p-BEn3hirk.system.js +0 -2
  774. package/dist/pine-core/p-BEn3hirk.system.js.map +0 -1
  775. package/dist/pine-core/p-BG7_qxVr.system.js +0 -2
  776. package/dist/pine-core/p-BG7_qxVr.system.js.map +0 -1
  777. package/dist/pine-core/p-BGbUqsWH.system.js +0 -2
  778. package/dist/pine-core/p-BGbUqsWH.system.js.map +0 -1
  779. package/dist/pine-core/p-BKFboaI5.system.js.map +0 -1
  780. package/dist/pine-core/p-BRygGju8.system.js.map +0 -1
  781. package/dist/pine-core/p-BVCWKPy3.js.map +0 -1
  782. package/dist/pine-core/p-BVKCNX0X.system.js.map +0 -1
  783. package/dist/pine-core/p-B_C-mRjx.system.js.map +0 -1
  784. package/dist/pine-core/p-C0zqu7Gr.system.js.map +0 -1
  785. package/dist/pine-core/p-CCQUgOoR.system.js.map +0 -1
  786. package/dist/pine-core/p-CJT--ZXC.system.js.map +0 -1
  787. package/dist/pine-core/p-CQ8f8GnD.system.js.map +0 -1
  788. package/dist/pine-core/p-CcXaBX2A.system.js.map +0 -1
  789. package/dist/pine-core/p-CgyVIfOY.system.js.map +0 -1
  790. package/dist/pine-core/p-Cmzqpibo.system.js.map +0 -1
  791. package/dist/pine-core/p-Co5XZmTN.system.js.map +0 -1
  792. package/dist/pine-core/p-CpdNWpfd.system.js.map +0 -1
  793. package/dist/pine-core/p-Czoq9yJM.system.js.map +0 -1
  794. package/dist/pine-core/p-D9_z2w3q.system.js.map +0 -1
  795. package/dist/pine-core/p-DHmJZxQk.system.js.map +0 -1
  796. package/dist/pine-core/p-DTL_39D_.js +0 -2
  797. package/dist/pine-core/p-DTL_39D_.js.map +0 -1
  798. package/dist/pine-core/p-DXuK7cEc.system.js.map +0 -1
  799. package/dist/pine-core/p-De9tROL-.system.js +0 -2
  800. package/dist/pine-core/p-DrJ5r5Pu.js +0 -2
  801. package/dist/pine-core/p-DrJ5r5Pu.js.map +0 -1
  802. package/dist/pine-core/p-IhWWc2L_.system.js.map +0 -1
  803. package/dist/pine-core/p-UsEwlBJ0.system.js.map +0 -1
  804. package/dist/pine-core/p-WkrM7Vv0.system.js.map +0 -1
  805. package/dist/pine-core/p-a04556e4.system.entry.js +0 -2
  806. package/dist/pine-core/p-a04556e4.system.entry.js.map +0 -1
  807. package/dist/pine-core/p-a54f1d9e.entry.js +0 -2
  808. package/dist/pine-core/p-a54f1d9e.entry.js.map +0 -1
  809. package/dist/pine-core/p-a9895385.system.entry.js +0 -2
  810. package/dist/pine-core/p-a9895385.system.entry.js.map +0 -1
  811. package/dist/pine-core/p-aa645f28.system.entry.js +0 -2
  812. package/dist/pine-core/p-aa645f28.system.entry.js.map +0 -1
  813. package/dist/pine-core/p-ac37cf0d.entry.js +0 -2
  814. package/dist/pine-core/p-ac37cf0d.entry.js.map +0 -1
  815. package/dist/pine-core/p-ba187a35.entry.js +0 -2
  816. package/dist/pine-core/p-ba187a35.entry.js.map +0 -1
  817. package/dist/pine-core/p-bb8ef74a.system.entry.js +0 -2
  818. package/dist/pine-core/p-be939cb0.entry.js +0 -2
  819. package/dist/pine-core/p-c0df3222.entry.js +0 -2
  820. package/dist/pine-core/p-c1099665.system.entry.js +0 -2
  821. package/dist/pine-core/p-c2ffb466.system.entry.js +0 -2
  822. package/dist/pine-core/p-cd785026.system.entry.js +0 -2
  823. package/dist/pine-core/p-d8d8fe07.system.entry.js +0 -2
  824. package/dist/pine-core/p-d8d8fe07.system.entry.js.map +0 -1
  825. package/dist/pine-core/p-da367b5e.system.entry.js +0 -2
  826. package/dist/pine-core/p-da367b5e.system.entry.js.map +0 -1
  827. package/dist/pine-core/p-dc19ce6c.system.entry.js +0 -2
  828. package/dist/pine-core/p-dc19ce6c.system.entry.js.map +0 -1
  829. package/dist/pine-core/p-deb8a499.system.entry.js +0 -2
  830. package/dist/pine-core/p-deb8a499.system.entry.js.map +0 -1
  831. package/dist/pine-core/p-e65a7d1c.system.entry.js +0 -2
  832. package/dist/pine-core/p-efa788ea.entry.js +0 -2
  833. package/dist/pine-core/p-f880adaa.entry.js +0 -2
  834. package/dist/pine-core/p-fd091234.system.entry.js +0 -2
  835. package/dist/pine-core/p-fd091234.system.entry.js.map +0 -1
  836. package/dist/pine-core/p-m6UZWRsP.system.js.map +0 -1
  837. package/dist/pine-core/p-pQqXEKPh.system.js.map +0 -1
  838. /package/dist/pine-core/{p-66b10d29.entry.js.map → p-07e129db.entry.js.map} +0 -0
  839. /package/dist/pine-core/{p-540cfd70.entry.js.map → p-1009009c.entry.js.map} +0 -0
  840. /package/dist/pine-core/{p-349a8869.entry.js.map → p-100de2b7.entry.js.map} +0 -0
  841. /package/dist/pine-core/{p-e2887e78.entry.js.map → p-1b9d4482.entry.js.map} +0 -0
  842. /package/dist/pine-core/{p-dfc5ab34.system.entry.js.map → p-2054b5cb.system.entry.js.map} +0 -0
  843. /package/dist/pine-core/{p-8726c99d.system.entry.js.map → p-2597bc59.system.entry.js.map} +0 -0
  844. /package/dist/pine-core/{p-5a709348.entry.js.map → p-25cb810d.entry.js.map} +0 -0
  845. /package/dist/pine-core/{p-a1b51557.system.entry.js.map → p-25cf2860.system.entry.js.map} +0 -0
  846. /package/dist/pine-core/{p-54183d70.system.entry.js.map → p-2aab28b1.system.entry.js.map} +0 -0
  847. /package/dist/pine-core/{p-c2ffb466.system.entry.js.map → p-2b12bc55.system.entry.js.map} +0 -0
  848. /package/dist/pine-core/{p-cd785026.system.entry.js.map → p-2efc646c.system.entry.js.map} +0 -0
  849. /package/dist/pine-core/{p-ecb9edf8.entry.js.map → p-2fb6f9d5.entry.js.map} +0 -0
  850. /package/dist/pine-core/{p-efa788ea.entry.js.map → p-2fd7f74e.entry.js.map} +0 -0
  851. /package/dist/pine-core/{p-39488f2c.system.entry.js.map → p-302849cf.system.entry.js.map} +0 -0
  852. /package/dist/pine-core/{p-51d83489.system.entry.js.map → p-307f415a.system.entry.js.map} +0 -0
  853. /package/dist/pine-core/{p-bb8ef74a.system.entry.js.map → p-378df5eb.system.entry.js.map} +0 -0
  854. /package/dist/pine-core/{p-e08f492a.entry.js.map → p-39648ce2.entry.js.map} +0 -0
  855. /package/dist/pine-core/{p-5f5b19f4.entry.js.map → p-41e2fe3a.entry.js.map} +0 -0
  856. /package/dist/pine-core/{p-7004d1ea.system.entry.js.map → p-449ebe39.system.entry.js.map} +0 -0
  857. /package/dist/pine-core/{p-c13ef6a7.system.entry.js.map → p-55d06d0a.system.entry.js.map} +0 -0
  858. /package/dist/pine-core/{p-075eecf9.entry.js.map → p-5ac7af9e.entry.js.map} +0 -0
  859. /package/dist/pine-core/{p-b2b1b7a9.system.entry.js.map → p-73a2e028.system.entry.js.map} +0 -0
  860. /package/dist/pine-core/{p-be939cb0.entry.js.map → p-786967e8.entry.js.map} +0 -0
  861. /package/dist/pine-core/{p-e65a7d1c.system.entry.js.map → p-875d5d5a.system.entry.js.map} +0 -0
  862. /package/dist/pine-core/{p-c8122bea.entry.js.map → p-88773b86.entry.js.map} +0 -0
  863. /package/dist/pine-core/{p-e89cb1f2.system.entry.js.map → p-8f69dd71.system.entry.js.map} +0 -0
  864. /package/dist/pine-core/{p-72053224.entry.js.map → p-a2cb65df.entry.js.map} +0 -0
  865. /package/dist/pine-core/{p-52d37cc1.entry.js.map → p-a3785977.entry.js.map} +0 -0
  866. /package/dist/pine-core/{p-f880adaa.entry.js.map → p-a645818a.entry.js.map} +0 -0
  867. /package/dist/pine-core/{p-f583e5d4.entry.js.map → p-a9cfaa1f.entry.js.map} +0 -0
  868. /package/dist/pine-core/{p-5708f95a.entry.js.map → p-b669e1d9.entry.js.map} +0 -0
  869. /package/dist/pine-core/{p-52cb152b.system.entry.js.map → p-bc2fecd4.system.entry.js.map} +0 -0
  870. /package/dist/pine-core/{p-e3fb0bc2.system.entry.js.map → p-bc637bed.system.entry.js.map} +0 -0
  871. /package/dist/pine-core/{p-b6ea3332.entry.js.map → p-be5ef841.entry.js.map} +0 -0
  872. /package/dist/pine-core/{p-fcb39155.system.entry.js.map → p-c3f84df8.system.entry.js.map} +0 -0
  873. /package/dist/pine-core/{p-232a2043.entry.js.map → p-c44d3551.entry.js.map} +0 -0
  874. /package/dist/pine-core/{p-e8d76117.entry.js.map → p-c55fc47e.entry.js.map} +0 -0
  875. /package/dist/pine-core/{p-5e8badb9.entry.js.map → p-d1b27fa4.entry.js.map} +0 -0
  876. /package/dist/pine-core/{p-5da82e8c.system.entry.js.map → p-dace69e7.system.entry.js.map} +0 -0
  877. /package/dist/pine-core/{p-c1099665.system.entry.js.map → p-db12273e.system.entry.js.map} +0 -0
  878. /package/dist/pine-core/{p-f55b9f90.system.entry.js.map → p-e702a8dc.system.entry.js.map} +0 -0
  879. /package/dist/pine-core/{p-6db1e029.system.entry.js.map → p-ee583234.system.entry.js.map} +0 -0
  880. /package/dist/pine-core/{p-0066d249.entry.js.map → p-f5d78141.entry.js.map} +0 -0
  881. /package/dist/pine-core/{p-52af1890.system.entry.js.map → p-f911dde3.system.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsCopytextCss","PdsCopytext","constructor","hostRef","this","border","fullWidth","truncate","copyToClipboard","async","value","navigator","clipboard","writeText","pdsCopyTextClick","emit","err","handleClick","classNames","push","join","render","h","Host","key","class","id","componentId","type","variant","onClick","icon","copyIcon","size"],"sources":["src/components/pds-copytext/pds-copytext.scss?tag=pds-copytext&encapsulation=shadow","src/components/pds-copytext/pds-copytext.tsx"],"sourcesContent":[":host(.pds-copytext) {\n // Update custom prop usage in Button before changing\n --copytext-color-background-hover: var(--pine-color-grey-200);\n\n\n pds-button {\n align-items: center;\n background: var(--pine-color-secondary);\n border-radius: var(--pine-border-radius-full);\n border-width: var(--pine-dimension-none);\n display: inline-flex;\n font-family: var(--pine-font-family-heading);\n font-size: var(--pine-font-size-body-md);\n font-weight: var(--pine-font-weight-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n max-width: 100%;\n padding: var(--pine-dimension-2xs) var(--pine-dimension-xs);\n\n &::part(button) {\n padding-inline-end: calc(var(--pine-dimension-xs) / 2);\n }\n\n &::part(button):hover {\n // Update custom prop usage in Button before changing\n background-color: var(--copytext-color-background-hover);\n color: var(--pine-color-text-secondary-hover);\n }\n\n span {\n font-weight: var(--pine-font-weight-medium);\n margin-inline-end: var(--pine-dimension-xs);\n white-space: nowrap;\n }\n\n :nth-child(2) {\n flex-shrink: 0;\n }\n }\n\n // bordered\n\n &:host(.pds-copytext--bordered) {\n border-width: var(--pine-dimension-none);\n padding: var(--pine-dimension-none);\n\n pds-button {\n padding: var(--pine-dimension-none);\n\n }\n\n &::part(button):hover {\n background-color: transparent;\n }\n\n span {\n border: var(--pine-border);\n border-radius: var(--pine-border-radius-full);\n margin-inline-end: var(--pine-dimension-sm);\n padding-block: var(--pine-dimension-xs);\n padding-inline: var(--pine-dimension-sm);\n }\n\n :hover {\n span {\n border: var(--pine-border-hover);\n }\n }\n }\n\n // full width and truncated\n &:host(.pds-copytext--full-width),\n &:host(.pds-copytext--truncated) {\n pds-button {\n display: inline-flex;\n min-width: auto;\n width: 100%;\n\n &::part(button-content),\n &::part(button-text) {\n flex-shrink: 1;\n width: 100%;\n }\n\n span {\n text-align: start;\n width: 100%;\n }\n }\n }\n\n // full width\n &:host(.pds-copytext--full-width) {\n pds-button {\n justify-content: space-between;\n }\n }\n\n // truncated\n &:host(.pds-copytext--truncated) {\n pds-button span {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n}\n","import { Component, Event, EventEmitter, Host, h, Prop } from '@stencil/core';\n\nimport { copy as copyIcon } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-copytext',\n styleUrls: ['pds-copytext.scss'],\n shadow: true,\n})\nexport class PdsCopytext {\n /**\n * Determines whether `copytext` should have a visible border.\n * @defaultValue true\n */\n @Prop({ reflect: true }) border = true;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether `copytext` should expand to the full width of its container.\n * @defaultValue false\n */\n @Prop() fullWidth = false;\n\n /**\n * Determines whether the `value` should truncate and display with an ellipsis.\n * @defaultValue false\n */\n @Prop() truncate = false;\n\n /**\n * The string displayed that is also copied to the clipboard upon interaction.\n */\n @Prop() value!: string;\n\n /**\n * Event fired when copyText button is clicked.\n */\n @Event() pdsCopyTextClick: EventEmitter;\n\n private copyToClipboard = async (value: string) => {\n try {\n if (typeof navigator.clipboard !== 'undefined') {\n await navigator.clipboard.writeText(value);\n this.pdsCopyTextClick.emit('Copied to clipboard');\n }\n } catch (err) {\n this.pdsCopyTextClick.emit(`Error writing text to clipboard: ${err}`);\n }\n };\n\n private handleClick = () => {\n this.copyToClipboard(this.value);\n };\n\n private classNames() {\n const classNames = ['pds-copytext'];\n\n if (this.border) {\n classNames.push('pds-copytext--bordered');\n }\n\n if (this.fullWidth) {\n classNames.push('pds-copytext--full-width');\n }\n\n if (this.truncate) {\n classNames.push('pds-copytext--truncated');\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host class={this.classNames()} id={this.componentId}>\n <pds-button type=\"button\" variant=\"unstyled\" onClick={this.handleClick}>\n <span>{this.value}</span>\n <pds-icon icon={copyIcon} size=\"16px\"></pds-icon>\n </pds-button>\n </Host>\n );\n }\n}\n"],"mappings":"6FAAA,MAAMA,EAAiB,wzF,MCSVC,EAAW,MALxB,WAAAC,CAAAC,G,2DAU2BC,KAAMC,OAAG,KAW1BD,KAASE,UAAG,MAMZF,KAAQG,SAAG,MAYXH,KAAAI,gBAAkBC,MAAOC,IAC/B,IACE,UAAWC,UAAUC,YAAc,YAAa,OACxCD,UAAUC,UAAUC,UAAUH,GACpCN,KAAKU,iBAAiBC,KAAK,sB,EAE7B,MAAOC,GACPZ,KAAKU,iBAAiBC,KAAK,oCAAoCC,I,GAI3DZ,KAAWa,YAAG,KACpBb,KAAKI,gBAAgBJ,KAAKM,MAAM,CA+BnC,CA5BS,UAAAQ,GACN,MAAMA,EAAa,CAAC,gBAEpB,GAAId,KAAKC,OAAQ,CACfa,EAAWC,KAAK,yB,CAGlB,GAAIf,KAAKE,UAAW,CAClBY,EAAWC,KAAK,2B,CAGlB,GAAIf,KAAKG,SAAU,CACjBW,EAAWC,KAAK,0B,CAGlB,OAAOD,EAAWE,KAAK,K,CAGzB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAOrB,KAAKc,aAAcQ,GAAItB,KAAKuB,aACvCL,EAAA,cAAAE,IAAA,2CAAYI,KAAK,SAASC,QAAQ,WAAWC,QAAS1B,KAAKa,aACzDK,EAAO,QAAAE,IAAA,4CAAApB,KAAKM,OACZY,EAAU,YAAAE,IAAA,2CAAAO,KAAMC,EAAUC,KAAK,U","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as i,h as t,H as e,g as s}from"./p-BVCWKPy3.js";const n=":host{--box-shadow-fixed:3px 3px 6px -2px rgba(0, 0, 0, 0.2);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);inset-inline-start:var(--pine-dimension-none);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-sm);vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:0;position:-webkit-sticky;position:sticky;z-index:1}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-fixed);box-shadow:var(--box-shadow-fixed)}:host(.is-truncated){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.has-checkbox){vertical-align:middle;width:16px}:host(.pds-table-cell--align-start){text-align:start}:host(.pds-table-cell--align-center){text-align:center}:host(.pds-table-cell--align-end){text-align:end}:host(.pds-table-cell--align-justify){text-align:justify}";const l=class{constructor(t){i(this,t);this.scrollContainer=null;this.setupRetries=0;this.tableScrolling=false;this.handleScroll=()=>{if(!this.scrollContainer){return}try{this.tableScrolling=this.scrollContainer.scrollLeft>0}catch(i){console.warn("Scroll handler error:",i)}}}componentWillRender(){this.tableRef=this.hostElement.closest("pds-table")}componentDidLoad(){if(this.tableRef&&this.tableRef.responsive&&this.tableRef.fixedColumn){this.setupScrollListener()}}disconnectedCallback(){this.cleanupScrollListener()}setupScrollListener(){var i;if(!this.tableRef)return;const t=(i=this.tableRef.shadowRoot)===null||i===void 0?void 0:i.querySelector(".pds-table-responsive-container");if(t){this.scrollContainer=t;this.scrollContainer.addEventListener("scroll",this.handleScroll,{passive:true});this.handleScroll();this.setupRetries=0}else{this.setupTimer=window.setTimeout((()=>{if(this.scrollContainer)return;this.setupRetries=(this.setupRetries||0)+1;if(this.setupRetries<=50){this.setupScrollListener()}else{console.warn("Failed to find responsive container after 50 attempts")}}),100)}}cleanupScrollListener(){if(this.scrollContainer){this.scrollContainer.removeEventListener("scroll",this.handleScroll);this.scrollContainer=null}if(this.setupTimer!==undefined){window.clearTimeout(this.setupTimer);this.setupTimer=undefined}this.setupRetries=0}classNames(){const i=[];if(this.tableRef&&this.tableRef.compact){i.push("is-compact")}if(this.cellAlign){i.push(`pds-table-cell--align-${this.cellAlign}`)}if(this.truncate){i.push("is-truncated")}if(this.tableRef&&this.tableRef.fixedColumn&&this.tableScrolling){i.push("has-scrolled")}return i.join(" ")}render(){return t(e,{key:"eb6a58e7e294593a35b77f00d787fee3b2b03661",class:this.classNames(),role:"gridcell",part:"cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},t("slot",{key:"c83fc4dda70196bf1032544353af058bc1a0decf"}))}get hostElement(){return s(this)}};l.style=n;export{l as pds_table_cell};
2
- //# sourceMappingURL=p-50c9e865.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTableCellCss","PdsTableCell","constructor","hostRef","this","scrollContainer","setupRetries","tableScrolling","handleScroll","scrollLeft","error","console","warn","componentWillRender","tableRef","hostElement","closest","componentDidLoad","responsive","fixedColumn","setupScrollListener","disconnectedCallback","cleanupScrollListener","container","_a","shadowRoot","querySelector","addEventListener","passive","setupTimer","window","setTimeout","removeEventListener","undefined","clearTimeout","classNames","compact","push","cellAlign","truncate","join","render","h","Host","key","class","role","part","style","selectable"],"sources":["src/components/pds-table/pds-table-cell/pds-table-cell.scss?tag=pds-table-cell&encapsulation=shadow","src/components/pds-table/pds-table-cell/pds-table-cell.tsx"],"sourcesContent":[":host {\n --box-shadow-fixed: 3px 3px 6px -2px rgba(0, 0, 0, 0.2);\n\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n inset-inline-start: var(--pine-dimension-none);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-sm);\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: 0;\n position: sticky;\n z-index: 1;\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-fixed);\n}\n\n:host(.is-truncated) {\n max-width: 100px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n:host(.has-checkbox) {\n vertical-align: middle;\n width: 16px;\n}\n\n// Text Alignment\n:host(.pds-table-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-cell--align-justify) {\n text-align: justify;\n}\n","import { Component, Element, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'pds-table-cell',\n styleUrls: ['pds-table-cell.scss'],\n shadow: true,\n})\nexport class PdsTableCell {\n @Element() hostElement: HTMLPdsTableCellElement;\n private tableRef: HTMLPdsTableElement;\n private scrollContainer: HTMLElement | null = null;\n private setupTimer: number | undefined;\n private setupRetries: number = 0;\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 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 * Sets the text alignment within the cell.\n */\n @Prop() cellAlign?: 'start' | 'center' | 'end' | 'justify';\n\n /**\n * Truncates content to a max width of 100px and adds an ellipsis.\n */\n @Prop() truncate: boolean;\n\n /**\n * Determines if the table is currently scrolling.\n * @defaultValue false\n */\n @State() private tableScrolling: boolean = false;\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-cell--align-${this.cellAlign}`);\n }\n\n if (this.truncate) {\n classNames.push('is-truncated');\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 /**\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 render() {\n return (\n <Host\n class={this.classNames()}\n role=\"gridcell\"\n part=\"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 </Host>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAkB,4iC,MCOXC,EAAY,MALzB,WAAAC,CAAAC,G,UAQUC,KAAeC,gBAAuB,KAEtCD,KAAYE,aAAW,EAwEdF,KAAcG,eAAY,MA6BnCH,KAAYI,aAAG,KACrB,IAAKJ,KAAKC,gBAAiB,CACzB,M,CAGF,IACED,KAAKG,eAAiBH,KAAKC,gBAAgBI,WAAa,C,CACxD,MAAOC,GACPC,QAAQC,KAAK,wBAAyBF,E,EAsB3C,CAjIC,mBAAAG,GACET,KAAKU,SAAWV,KAAKW,YAAYC,QAAQ,Y,CAG3C,gBAAAC,GACE,GAAIb,KAAKU,UAAYV,KAAKU,SAASI,YAAcd,KAAKU,SAASK,YAAa,CAG1Ef,KAAKgB,qB,EAIT,oBAAAC,GACEjB,KAAKkB,uB,CAGC,mBAAAF,G,MACN,IAAKhB,KAAKU,SAAU,OAGpB,MAAMS,GAAYC,EAAApB,KAAKU,SAASW,cAAY,MAAAD,SAAA,SAAAA,EAAAE,cAAc,mCAE1D,GAAIH,EAAW,CAEbnB,KAAKC,gBAAkBkB,EACvBnB,KAAKC,gBAAgBsB,iBAAiB,SAAUvB,KAAKI,aAAc,CAAEoB,QAAS,OAC9ExB,KAAKI,eACLJ,KAAKE,aAAe,C,KACf,CAELF,KAAKyB,WAAaC,OAAOC,YAAW,KAClC,GAAI3B,KAAKC,gBAAiB,OAC1BD,KAAKE,cAAgBF,KAAKE,cAAgB,GAAK,EAC/C,GAAIF,KAAKE,cAAgB,GAAI,CAC3BF,KAAKgB,qB,KACA,CACLT,QAAQC,KAAK,wD,IAEd,I,EAIC,qBAAAU,GACN,GAAIlB,KAAKC,gBAAiB,CACxBD,KAAKC,gBAAgB2B,oBAAoB,SAAU5B,KAAKI,cACxDJ,KAAKC,gBAAkB,I,CAGzB,GAAID,KAAKyB,aAAeI,UAAW,CACjCH,OAAOI,aAAa9B,KAAKyB,YACzBzB,KAAKyB,WAAaI,S,CAGpB7B,KAAKE,aAAe,C,CAmBd,UAAA6B,GACN,MAAMA,EAAa,GAEnB,GAAI/B,KAAKU,UAAYV,KAAKU,SAASsB,QAAS,CAC1CD,EAAWE,KAAK,a,CAGlB,GAAIjC,KAAKkC,UAAW,CAClBH,EAAWE,KAAK,yBAAyBjC,KAAKkC,Y,CAGhD,GAAIlC,KAAKmC,SAAU,CACjBJ,EAAWE,KAAK,e,CAGlB,GAAIjC,KAAKU,UAAYV,KAAKU,SAASK,aAAef,KAAKG,eAAgB,CACrE4B,EAAWE,KAAK,e,CAGlB,OAAOF,EAAWK,KAAK,I,CAoBzB,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAOzC,KAAK+B,aACZW,KAAK,WACLC,KAAK,OACLC,MACE5C,KAAKU,UACLV,KAAKU,SAASK,aACdf,KAAKU,SAASmC,WACV,CAAE,wBAAyB,QAC3B,IAGNP,EAAa,QAAAE,IAAA,6C","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as s,H as a}from"./p-BVCWKPy3.js";const r=":host{color:var(--pine-color-text-message);font:var(--pine-typography-body-medium)}";const t=class{constructor(s){e(this,s);this.icon="star"}render(){return s(a,{key:"d02756e0996d0544bafd8a0e5160151344e8dd5f",id:this.componentId},s("pds-box",{key:"f2f53ba33e75bc1dbea374ba57fac2fd7e11a43c","align-items":"center",gap:"xs"},s("pds-icon",{key:"62e87401c8ab443583c33a07266377484bfdc72a",icon:this.icon,size:"var(--pine-dimension-sm)","aria-hidden":"true"}),s("slot",{key:"e8461312f8135f07218b604ce9ff6efcf48bfc1b"})))}};t.style=r;export{t as pds_property};
2
- //# sourceMappingURL=p-5708f95a.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as s,h as i,H as t,g as e}from"./p-BVCWKPy3.js";const a=":host{--tabs-dimension-panel-margin-top:var(--pine-dimension-none);--tabs-dimension-panel-padding:0;display:block}.pds-tabs__tablist{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:var(--pine-dimension-md)}:host(.pds-tabs--availability) .pds-tabs__tablist{gap:var(--pine-dimension-xs)}:host(.pds-tabs--filter) .pds-tabs__tablist{gap:var(--pine-dimension-sm)}:host(.pds-tabs--pill) .pds-tabs__tablist{background-color:var(--pine-color-grey-100);border:var(--pine-border-width-thin) solid var(--pine-color-grey-200);border-radius:var(--pine-dimension-100);display:-ms-inline-flexbox;display:inline-flex;display:-ms-flexbox;display:flex;gap:0;height:var(--pine-dimension-450)}";const n=class{constructor(i){s(this,i)}tabClickHandler(s){if(this.componentId===s.detail[1]){this.activeTabIndex=s.detail[0];this.activeTabName=this.tabs[this.activeTabIndex].name}}handleKeyDown(s){const i=["ArrowLeft","ArrowRight","Home","End"];if(i.includes(s.key)){s.preventDefault();this.moveActiveTab(s.key)}}moveActiveTab(s){const i=0;const t=this.tabs.length-1;let e=null;switch(s){case"ArrowLeft":e=this.activeTabIndex===i?t:this.activeTabIndex+-1;break;case"ArrowRight":e=this.activeTabIndex===t?i:this.activeTabIndex+1;break;case"Home":e=i;break;case"End":e=t;break}this.tabs[e].children[0].focus();this.activeTabName=this.tabs[e].name;this.activeTabIndex=e}findAllChildren(){this.tabs=this.el.querySelectorAll("pds-tab");this.tabPanels=this.el.querySelectorAll("pds-tabpanel")}propGeneration(s,i=0){s.parentComponentId=this.componentId.toString();s.variant=this.variant.toString();s.selected=this.activeTabName===s.name?true:false;s["index"]=i}passPropsToChildren(){this.tabs.forEach(((s,i)=>{if(this.activeTabName===s.name)this.activeTabIndex=i;this.propGeneration(s,i)}));this.tabPanels.forEach((s=>{this.propGeneration(s)}))}classNames(){let s=`pds-tabs`;if(this.variant&&this.variant!="primary"){const i=`pds-tabs--${this.variant}`;s+=" "+i}return s}componentWillLoad(){this.findAllChildren()}componentWillRender(){this.passPropsToChildren()}render(){return i(t,{key:"e5b0d44fbe0df70a9260b5ce1ecabad9e5ce52da","active-tab-name":this.activeTabName,class:this.classNames(),id:this.componentId},i("div",{key:"4e987262ef8355b0a94f94ded397d72ccbb678f8",class:"pds-tabs__tablist",role:"tablist","aria-label":this.tablistLabel},i("slot",{key:"f615e1d116f4c0f9ee28d172f64a05e755386ead",name:"tabs"})),i("slot",{key:"f74280a78775d19fb1e94d522c28531d79ba73e3",name:"tabpanels"}))}get el(){return e(this)}};n.style=a;export{n as pds_tabs};
2
- //# sourceMappingURL=p-651861ff.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTabsCss","PdsTabs","tabClickHandler","event","this","componentId","detail","activeTabIndex","activeTabName","tabs","name","handleKeyDown","ev","keySet","includes","key","preventDefault","moveActiveTab","firstTabNumber","lastTabNumber","length","moveFocusTo","children","focus","findAllChildren","el","querySelectorAll","tabPanels","propGeneration","child","index","parentComponentId","toString","variant","selected","passPropsToChildren","forEach","classNames","className","variantClassName","componentWillLoad","componentWillRender","render","h","Host","class","id","role","tablistLabel"],"sources":["src/components/pds-tabs/pds-tabs.scss?tag=pds-tabs&encapsulation=shadow","src/components/pds-tabs/pds-tabs.tsx"],"sourcesContent":[":host {\n /**\n * @prop --tabs-dimension-panel-margin-top: Optional margin-top for panels\n */\n --tabs-dimension-panel-margin-top: var(--pine-dimension-none);\n /**\n * @prop --tabs-dimension-panel-padding: Optional padding for panels\n */\n --tabs-dimension-panel-padding: 0;\n\n display: block;\n}\n\n.pds-tabs__tablist {\n display: flex;\n flex-wrap: wrap;\n gap: var(--pine-dimension-md);\n}\n\n:host(.pds-tabs--availability) .pds-tabs__tablist {\n gap: var(--pine-dimension-xs);\n}\n\n:host(.pds-tabs--filter) .pds-tabs__tablist {\n gap: var(--pine-dimension-sm);\n}\n\n:host(.pds-tabs--pill) .pds-tabs__tablist {\n background-color: var(--pine-color-grey-100);\n border: var(--pine-border-width-thin) solid var(--pine-color-grey-200);\n border-radius: var(--pine-dimension-100);\n display: inline-flex;\n display: flex;\n gap: 0;\n height: var(--pine-dimension-450);\n}\n","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 */\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 if (keySet.includes(ev.key)) {\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 this.tabs = this.el.querySelectorAll('pds-tab');\n this.tabPanels = this.el.querySelectorAll('pds-tabpanel');\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}>\n <slot name=\"tabs\" />\n </div>\n <slot name=\"tabpanels\" />\n </Host>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAa,2rB,MCWNC,EAAO,M,yBAmClB,eAAAC,CAAgBC,GACd,GAAIC,KAAKC,cAAgBF,EAAMG,OAAO,GAAI,CACxCF,KAAKG,eAAiBJ,EAAMG,OAAO,GACnCF,KAAKI,cAAgBJ,KAAKK,KAAKL,KAAKG,gBAAgBG,I,EAKxD,aAAAC,CAAcC,GACZ,MAAMC,EAAS,CAAC,YAAa,aAAc,OAAQ,OAEnD,GAAIA,EAAOC,SAASF,EAAGG,KAAM,CAC3BH,EAAGI,iBACHZ,KAAKa,cAAcL,EAAGG,I,EAIlB,aAAAE,CAAcF,GACpB,MAAMG,EAAiB,EACvB,MAAMC,EAAgBf,KAAKK,KAAKW,OAAS,EAEzC,IAAIC,EAAc,KAElB,OAAQN,GACN,IAAK,YACHM,EAAejB,KAAKG,iBAAmBW,EAAkBC,EAAiBf,KAAKG,gBAAkB,EACjG,MACF,IAAK,aACHc,EAAejB,KAAKG,iBAAmBY,EAAiBD,EAAkBd,KAAKG,eAAiB,EAChG,MACF,IAAK,OACHc,EAAcH,EACd,MACF,IAAK,MACHG,EAAcF,EACd,MAIJf,KAAKK,KAAKY,GAAaC,SAAS,GAAGC,QACnCnB,KAAKI,cAAgBJ,KAAKK,KAAKY,GAAaX,KAC5CN,KAAKG,eAAiBc,C,CAGhB,eAAAG,GACNpB,KAAKK,KAAOL,KAAKqB,GAAGC,iBAAiB,WACrCtB,KAAKuB,UAAYvB,KAAKqB,GAAGC,iBAAiB,e,CAGpC,cAAAE,CAAeC,EAAOC,EAAQ,GACpCD,EAAME,kBAAoB3B,KAAKC,YAAY2B,WAC3CH,EAAMI,QAAU7B,KAAK6B,QAAQD,WAC7BH,EAAMK,SAAY9B,KAAKI,gBAAkBqB,EAAMnB,KAAQ,KAAO,MAC9DmB,EAAM,SAAWC,C,CAGX,mBAAAK,GACN/B,KAAKK,KAAK2B,SAAQ,CAACP,EAAOC,KACxB,GAAI1B,KAAKI,gBAAkBqB,EAAMnB,KAAMN,KAAKG,eAAiBuB,EAC7D1B,KAAKwB,eAAeC,EAAOC,EAAM,IAGnC1B,KAAKuB,UAAUS,SAASP,IACtBzB,KAAKwB,eAAeC,EAAM,G,CAItB,UAAAQ,GACN,IAAIC,EAAY,WAChB,GAAIlC,KAAK6B,SAAW7B,KAAK6B,SAAW,UAAW,CAC7C,MAAMM,EAAmB,aAAanC,KAAK6B,UAC3CK,GAAa,IAAMC,C,CAGrB,OAAOD,C,CAGT,iBAAAE,GACEpC,KAAKoB,iB,CAGP,mBAAAiB,GACErC,KAAK+B,qB,CAGP,MAAAO,GACE,OACEC,EAACC,EAAI,CAAA7B,IAAA,6DAAkBX,KAAKI,cAAeqC,MAAOzC,KAAKiC,aAAcS,GAAI1C,KAAKC,aAC5EsC,EAAK,OAAA5B,IAAA,2CAAA8B,MAAM,oBAAoBE,KAAK,UAAS,aAAa3C,KAAK4C,cAC7DL,EAAA,QAAA5B,IAAA,2CAAML,KAAK,UAEbiC,EAAA,QAAA5B,IAAA,2CAAML,KAAK,c","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as s,h as i,H as t}from"./p-BVCWKPy3.js";const e=":host{--dimension-aspect-ratio:auto;display:inline-block}img{aspect-ratio:var(--dimension-aspect-ratio);display:block;height:auto;max-width:100%}";const a=class{constructor(i){s(this,i);this.alt="";this.loading="eager"}render(){return i(t,{key:"bffcd250b41bcc96d6278f35be5287cf34ee91ac",class:{"pds-image":true},id:this.componentId},i("img",{key:"b241c3d7fcb061b530e57ef4ca0aafe4801d9341",alt:this.alt,height:this.height,loading:this.loading,sizes:this.sizes,src:this.src,srcset:this.srcset,width:this.width}))}};a.style=e;export{a as pds_image};
2
- //# sourceMappingURL=p-66b10d29.entry.js.map
@@ -1,2 +0,0 @@
1
- var __awaiter=this&&this.__awaiter||function(e,i,t,r){function n(e){return e instanceof t?e:new t((function(i){i(e)}))}return new(t||(t=Promise))((function(t,a){function s(e){try{l(r.next(e))}catch(e){a(e)}}function o(e){try{l(r["throw"](e))}catch(e){a(e)}}function l(e){e.done?t(e.value):n(e.value).then(s,o)}l((r=r.apply(e,i||[])).next())}))};var __generator=this&&this.__generator||function(e,i){var t={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,n,a,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(e){return function(i){return l([e,i])}}function l(o){if(r)throw new TypeError("Generator is already executing.");while(s&&(s=0,o[0]&&(t=0)),t)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:t.label++;return{value:o[1],done:false};case 5:t.label++;n=o[1];o=[0];continue;case 7:o=t.ops.pop();t.trys.pop();continue;default:if(!(a=t.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){t=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){t.label=o[1];break}if(o[0]===6&&t.label<a[1]){t.label=a[1];a=o;break}if(a&&t.label<a[2]){t.label=a[2];t.ops.push(o);break}if(a[2])t.ops.pop();t.trys.pop();continue}o=i.call(e,t)}catch(e){o=[6,e];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};System.register(["./p-B_C-mRjx.system.js","./p-BG7_qxVr.system.js","./p-BG6uGRQj.system.js","./p-BhQhw0S3.system.js","./p-BEn3hirk.system.js"],(function(e){"use strict";var i,t,r,n,a,s,o,l,c,d,h,u;return{setters:[function(e){i=e.r;t=e.c;r=e.h;n=e.H;a=e.g},function(e){s=e.i;o=e.a;l=e.m},function(e){c=e.d},function(e){d=e.i;h=e.a},function(e){u=e.f}],execute:function(){var p=":host{display:inline-block}:host([aria-disabled=true]) label{color:var(--pine-color-text-label-disabled)}:host([aria-readonly=true]) label{color:var(--pine-color-text-label-readonly)}label{color:var(--pine-color-text-label);font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing)}";var f=":host{--pine-input-color-background-danger:var(--pine-color-red-050)}";var b=":host{display:inline-block;width:100%}:host([aria-readonly=true]) textarea{background-color:var(--pine-color-background-container-disabled);color:var(--pine-color-text-readonly)}.pds-textarea{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.pds-textarea__label-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.pds-textarea__action{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;gap:var(--pine-dimension-xs);-webkit-margin-start:var(--pine-dimension-xs);margin-inline-start:var(--pine-dimension-xs)}label{display:block;-webkit-margin-after:var(--pine-dimension-xs);margin-block-end:var(--pine-dimension-xs)}.pds-textarea__label-wrapper label{-webkit-margin-after:0;margin-block-end:0}.pds-textarea__helper-message{color:var(--pine-color-text-message);font:var(--pine-typography-body-sm-medium);-webkit-margin-before:var(--pine-dimension-2xs);margin-block-start:var(--pine-dimension-2xs)}.pds-textarea__error-message{-ms-flex-align:center;align-items:center;color:var(--pine-color-text-message-danger);display:-ms-flexbox;display:flex;font:var(--pine-typography-body-sm-medium);gap:var(--pine-dimension-2xs);-webkit-margin-before:var(--pine-dimension-2xs);margin-block-start:var(--pine-dimension-2xs)}.pds-textarea__field-wrapper{display:inline-block;position:relative;width:100%}.pds-textarea__field{background-color:var(--pine-color-background-container);border:var(--pine-border);border-radius:calc(var(--pine-dimension-xs) * 1.25);-webkit-box-sizing:border-box;box-sizing:border-box;font:var(--pine-typography-body);letter-spacing:var(--pine-letter-spacing);min-height:calc(var(--pine-dimension-xl) * 2);min-width:calc(var(--pine-dimension-xl) * 2);padding:var(--pine-dimension-xs) var(--pine-dimension-sm);resize:both;width:100%}:host([max-length]) .pds-textarea__field{padding-bottom:calc(var(--pine-dimension-xs) + var(--pine-dimension-md))}.pds-textarea__field:hover:not(:disabled,.is-invalid){border:var(--pine-border-hover)}.pds-textarea__field:disabled{background-color:var(--pine-color-background-container-disabled);color:var(--pine-color-text-disabled);cursor:not-allowed}.pds-textarea__field:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-textarea__field::-webkit-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-textarea__field::-moz-placeholder{color:var(--pine-color-text-placeholder)}.pds-textarea__field:-ms-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-textarea__field::-ms-input-placeholder{color:var(--pine-color-text-placeholder)}.pds-textarea__field::placeholder{color:var(--pine-color-text-placeholder)}.pds-textarea__field.is-invalid{background-color:var(--pine-input-color-background-danger);border-color:var(--pine-color-border-danger)}.pds-textarea__field.is-invalid:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-textarea__character-counter{background:color-mix(in srgb, var(--pine-color-background-container) 80%, transparent);border-radius:calc(var(--pine-dimension-2xs) * 0.5);color:var(--pine-color-text-readonly);font:var(--pine-typography-body-sm-medium);padding:calc(var(--pine-dimension-2xs) * 0.5) var(--pine-dimension-2xs);pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;z-index:2}:host([aria-disabled=true]) .pds-textarea__character-counter{background-color:var(--pine-color-background-container-disabled);color:var(--pine-color-text-disabled)}:host([aria-readonly=true]) .pds-textarea__character-counter{background-color:var(--pine-color-background-container-disabled);color:var(--pine-color-text-readonly)}.pds-textarea__field.is-invalid~.pds-textarea__character-counter{background-color:var(--pine-input-color-background-danger)}.visually-hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";var v=e("pds_textarea",function(){function e(e){var r=this;i(this,e);this.pdsBlur=t(this,"pdsBlur");this.pdsFocus=t(this,"pdsFocus");this.pdsInput=t(this,"pdsInput");this.pdsTextareaChange=t(this,"pdsTextareaChange");this.inheritedAttributes={};this.disabled=false;this.invalid=false;this.name=this.componentId;this.readonly=false;this.required=false;this.value="";this.hasFocus=false;this.hasAction=false;this.onBlur=function(e){r.hasFocus=false;if(r.focusedValue!==r.value){r.emitValueChange(e)}r.pdsBlur.emit(e)};this.onFocus=function(e){r.hasFocus=true;r.focusedValue=r.value;r.pdsFocus.emit(e)};this.onInput=function(e){var i=e.target;if(i){if(r.maxLength&&i.value.length>r.maxLength){i.value=i.value.substring(0,r.maxLength)}r.value=i.value||""}r.emitInputChange(e);if(r.maxLength&&typeof ResizeObserver!=="undefined"){requestAnimationFrame((function(){r.updateCharacterCounterPosition()}))}};this.onTextareaChange=function(e){r.emitValueChange(e)}}e.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){if(this.nativeTextarea){this.nativeTextarea.focus()}return[2]}))}))};e.prototype.debounceChanged=function(){var e=this,i=e.pdsInput,t=e.debounce,r=e.originalPdsInput;this.pdsInput=t===undefined?r!==null&&r!==void 0?r:i:c(i,t)};e.prototype.valueChanged=function(){var e=this.nativeTextarea;var i=this.getValue();if(e&&e.value!==i){e.value=i}this.updateFormValue();if(this.maxLength&&typeof ResizeObserver!=="undefined"){this.updateCharacterCounterPosition()}};e.prototype.maxLengthChanged=function(){if(this.resizeObserver){this.resizeObserver.disconnect()}if(this.maxLength&&this.nativeTextarea){this.setupResizeObserver()}if(this.internals&&this.internals.setValidity&&this.nativeTextarea){var e=this.nativeTextarea.value.length>(this.maxLength||0);this.internals.setValidity({tooLong:e},e?"Value exceeds maxLength":"",this.nativeTextarea)}};e.prototype.emitInputChange=function(e){var i=this.value;this.pdsInput.emit({value:i,event:e})};e.prototype.emitValueChange=function(e){var i=e.target;s(i,this);var t=i.value;var r=t==null?t:t.toString();this.focusedValue=r;this.pdsTextareaChange.emit({value:r,event:e})};e.prototype.getValue=function(){return this.value||""};e.prototype.textareaClassNames=function(){var e=["pds-textarea__field"];if(this.invalid&&this.invalid===true){e.push("is-invalid")}return e.join(" ")};e.prototype.connectedCallback=function(){this.debounceChanged();if(this.el.attachInternals){this.internals=this.el.attachInternals()}};e.prototype.disconnectedCallback=function(){if(this.resizeObserver){this.resizeObserver.disconnect()}};e.prototype.componentWillLoad=function(){this.inheritedAttributes=Object.assign(Object.assign({},d(this.el)),h(this.el));this.hasAction=this.el.querySelector('[slot="action"]')!==null};e.prototype.componentDidLoad=function(){this.originalPdsInput=this.pdsInput;this.updateFormValue();this.setupResizeObserver()};e.prototype.setupResizeObserver=function(){var e=this;if(!this.maxLength||!this.nativeTextarea)return;if(typeof ResizeObserver!=="undefined"){this.resizeObserver=new ResizeObserver((function(){requestAnimationFrame((function(){e.updateCharacterCounterPosition()}))}));this.resizeObserver.observe(this.nativeTextarea);requestAnimationFrame((function(){e.updateCharacterCounterPosition()}))}};e.prototype.updateCharacterCounterPosition=function(){if(!this.characterCounter||!this.nativeTextarea)return;if(typeof ResizeObserver==="undefined")return;if(this.characterCounter.offsetWidth===0||this.characterCounter.offsetHeight===0){return}var e=this.nativeTextarea.offsetWidth;var i=this.nativeTextarea.offsetHeight;var t=this.characterCounter.offsetWidth;var r=this.characterCounter.offsetHeight;var n=e-t-8;var a=i-r-8;var s=Math.max(8,Math.min(n,e-t-8));var o=Math.max(8,Math.min(a,i-r-8));this.characterCounter.style.position="absolute";this.characterCounter.style.left="".concat(s,"px");this.characterCounter.style.top="".concat(o,"px");this.characterCounter.style.right="auto";this.characterCounter.style.bottom="auto"};e.prototype.renderCharacterCounter=function(){var e=this;if(!this.maxLength){return null}var i=this.getValue().length;return r("div",{class:"pds-textarea__character-counter",ref:function(i){return e.characterCounter=i},role:"status","aria-live":"polite","aria-label":"".concat(i," of ").concat(this.maxLength," characters")},i," / ",this.maxLength)};e.prototype.renderAction=function(){var e=this.el.querySelector('[slot="action"]')!==null;if(e){return r("div",{class:"pds-textarea__action",part:"action"},r("slot",{name:"action"}))}return null};e.prototype.updateFormValue=function(){if(this.internals&&this.internals.setFormValue){var e=this.getValue();this.internals.setFormValue(e||null);if(this.nativeTextarea&&this.internals&&this.internals.setValidity){this.internals.setValidity(this.nativeTextarea.validity,this.nativeTextarea.validationMessage,this.nativeTextarea)}}};e.prototype.formResetCallback=function(){this.value="";this.updateFormValue()};e.prototype.formDisabledCallback=function(e){this.disabled=e};e.prototype.formStateRestoreCallback=function(e){if(typeof e==="string"){this.value=e}else if(e instanceof FormData&&this.name){var i=e.get(this.name);if(typeof i==="string"){this.value=i}}};e.prototype.render=function(){var e=this;var i=this.getValue();return r(n,{key:"e1e17543442fcd240498b7f56ddb86e35ac1d770","aria-disabled":this.disabled?"true":null,"aria-readonly":this.readonly?"true":null,"has-action":this.hasAction&&!this.hideLabel?"true":null},r("div",{key:"5a69f6b67dcba5107aa9150fc87543e7638933bb",class:"pds-textarea"},this.label&&r("div",{key:"027592bca1595a85cdf24e8ab4201e6483fee80c",class:"pds-textarea__label-wrapper"},r("label",{key:"815f18177b34893b9e76d8c0db7baa6b0f3400c5",htmlFor:this.componentId},r("span",{key:"5fe5e5f984558c409d3a1c3e9fdb966038fcd4c4",class:this.hideLabel?"visually-hidden":""},this.label)),!this.hideLabel&&this.renderAction()),r("div",{key:"d1d95ef8becd9648c8becc2fe6797432ed53ca81",class:"pds-textarea__field-wrapper"},r("textarea",Object.assign({key:"d307adc2e75a381aae4dda4ad207bf3a670b7678",ref:function(i){return e.nativeTextarea=i},"aria-describedby":o(this.componentId,this.invalid,this.helperMessage),"aria-invalid":this.invalid?"true":undefined,autocomplete:this.autocomplete,class:this.textareaClassNames(),disabled:this.disabled,id:this.componentId,maxlength:this.maxLength,name:this.name,placeholder:this.placeholder,readOnly:this.readonly,required:this.required,rows:this.rows,onBlur:this.onBlur,onChange:this.onTextareaChange,onFocus:this.onFocus,onInput:this.onInput},this.inheritedAttributes),i),this.renderCharacterCounter()),this.helperMessage&&r("p",{key:"c7b68b10f0362025d90a902cbc6d2d741e579935",class:"pds-textarea__helper-message",id:l(this.componentId,"helper")},this.helperMessage),this.invalid&&r("p",{key:"8fd179c3c8cf9c9d5ee7252d30357072a2f55090","aria-live":"assertive",class:"pds-textarea__error-message",id:l(this.componentId,"error")},r("pds-icon",{key:"3e3de603c035ae3d71be28132d55992eadda9a54",icon:u,size:"small"}),this.errorMessage)))};Object.defineProperty(e,"formAssociated",{get:function(){return true},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"el",{get:function(){return a(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{debounce:["debounceChanged"],value:["valueChanged"],maxLength:["maxLengthChanged"]}},enumerable:false,configurable:true});return e}());v.style=p+(f+b)}}}));
2
- //# sourceMappingURL=p-6d4d4705.system.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["labelCss","pdsInputTokensCss","pdsTextareaCss","PdsTextarea","exports","class_1","hostRef","_this","this","inheritedAttributes","disabled","invalid","name","componentId","readonly","required","value","hasFocus","hasAction","onBlur","ev","focusedValue","emitValueChange","pdsBlur","emit","onFocus","pdsFocus","onInput","input","target","maxLength","length","substring","emitInputChange","ResizeObserver","requestAnimationFrame","updateCharacterCounterPosition","onTextareaChange","prototype","setFocus","nativeTextarea","focus","debounceChanged","_a","pdsInput","debounce","originalPdsInput","undefined","debounceEvent","valueChanged","getValue","updateFormValue","maxLengthChanged","resizeObserver","disconnect","setupResizeObserver","internals","setValidity","isTooLong","tooLong","event","textarea","isRequired","newValue","toString","pdsTextareaChange","textareaClassNames","classNames","push","join","connectedCallback","el","attachInternals","disconnectedCallback","componentWillLoad","Object","assign","inheritAriaAttributes","inheritAttributes","querySelector","componentDidLoad","observe","characterCounter","offsetWidth","offsetHeight","textareaWidth","textareaHeight","counterWidth","counterHeight","rightPosition","bottomPosition","finalLeft","Math","max","min","finalTop","style","position","left","concat","top","right","bottom","renderCharacterCounter","currentLength","h","class","ref","role","renderAction","part","setFormValue","validity","validationMessage","formResetCallback","formDisabledCallback","formStateRestoreCallback","state","FormData","get","render","Host","key","hideLabel","label","htmlFor","assignDescription","helperMessage","autocomplete","id","maxlength","placeholder","readOnly","rows","onChange","messageId","icon","danger","size","errorMessage"],"sources":["src/global/styles/utils/label.scss?tag=pds-textarea&encapsulation=shadow","src/components/pds-input/pds-input.tokens.scss?tag=pds-textarea&encapsulation=shadow","src/components/pds-textarea/pds-textarea.scss?tag=pds-textarea&encapsulation=shadow","src/components/pds-textarea/pds-textarea.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n:host([aria-disabled=\"true\"]) label {\n color: var(--pine-color-text-label-disabled);\n}\n\n:host([aria-readonly=\"true\"]) {\n label {\n color: var(--pine-color-text-label-readonly);\n }\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n","@use '~@kajabi-ui/styles/dist/pine/components/pds-input/pds-input.tokens'\n",":host {\n display: inline-block;\n width: 100%;\n}\n\n:host([aria-readonly=\"true\"]) {\n textarea {\n background-color: var(--pine-color-background-container-disabled);\n color: var(--pine-color-text-readonly);\n }\n}\n\n.pds-textarea {\n display: flex;\n flex-direction: column;\n}\n\n.pds-textarea__label-wrapper {\n align-items: center;\n display: flex;\n justify-content: space-between;\n}\n\n.pds-textarea__action {\n align-items: center;\n display: flex;\n gap: var(--pine-dimension-xs);\n margin-inline-start: var(--pine-dimension-xs);\n}\n\nlabel {\n display: block;\n margin-block-end: var(--pine-dimension-xs);\n}\n\n// When label is inside wrapper, remove its margin\n.pds-textarea__label-wrapper label {\n margin-block-end: 0;\n}\n\n.pds-textarea__helper-message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-start: var(--pine-dimension-2xs);\n}\n\n.pds-textarea__error-message {\n align-items: center;\n color: var(--pine-color-text-message-danger);\n display: flex;\n font: var(--pine-typography-body-sm-medium);\n gap: var(--pine-dimension-2xs);\n margin-block-start: var(--pine-dimension-2xs);\n}\n\n.pds-textarea__field-wrapper {\n display: inline-block;\n position: relative;\n width: 100%;\n}\n\n.pds-textarea__field {\n background-color: var(--pine-color-background-container);\n border: var(--pine-border);\n border-radius: calc(var(--pine-dimension-xs) * 1.25);\n box-sizing: border-box;\n font: var(--pine-typography-body);\n letter-spacing: var(--pine-letter-spacing);\n min-height: calc(var(--pine-dimension-xl) * 2);\n min-width: calc(var(--pine-dimension-xl) * 2);\n padding: var(--pine-dimension-xs) var(--pine-dimension-sm);\n resize: both;\n width: 100%;\n\n // Add bottom padding when character counter is present\n :host([max-length]) & {\n padding-bottom: calc(var(--pine-dimension-xs) + var(--pine-dimension-md));\n }\n\n &:hover:not(:disabled, .is-invalid) {\n border: var(--pine-border-hover);\n }\n\n &:disabled {\n background-color: var(--pine-color-background-container-disabled);\n color: var(--pine-color-text-disabled);\n cursor: not-allowed;\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n &::placeholder {\n color: var(--pine-color-text-placeholder);\n }\n\n &.is-invalid {\n background-color: var(--pine-input-color-background-danger);\n border-color: var(--pine-color-border-danger);\n\n &:focus-visible {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n }\n}\n\n.pds-textarea__character-counter {\n background: color-mix(in srgb, var(--pine-color-background-container) 80%, transparent);\n border-radius: calc(var(--pine-dimension-2xs) * 0.5);\n color: var(--pine-color-text-readonly);\n font: var(--pine-typography-body-sm-medium);\n padding: calc(var(--pine-dimension-2xs) * 0.5) var(--pine-dimension-2xs);\n pointer-events: none;\n position: absolute;\n user-select: none;\n white-space: nowrap;\n z-index: 2;\n\n // Match textarea disabled state\n :host([aria-disabled=\"true\"]) & {\n background-color: var(--pine-color-background-container-disabled);\n color: var(--pine-color-text-disabled);\n }\n\n // Match textarea readonly state\n :host([aria-readonly=\"true\"]) & {\n background-color: var(--pine-color-background-container-disabled);\n color: var(--pine-color-text-readonly);\n }\n\n // Match textarea invalid state - target when field has is-invalid class\n .pds-textarea__field.is-invalid ~ & {\n background-color: var(--pine-input-color-background-danger);\n }\n}\n\n.visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: polygon(0 0, 0 0, 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { assignDescription, isRequired, messageId } from '../../utils/form';\nimport { TextareaChangeEventDetail, TextareaInputEventDetail } from './textarea-interface';\nimport { debounceEvent } from '@utils/utils';\nimport type { Attributes } from '@utils/attributes';\nimport { inheritAttributes, inheritAriaAttributes } from '@utils/attributes';\nimport { danger } from '@pine-ds/icons/icons';\n\n/**\n * @slot action - Content to be displayed in the label area, typically for help icons or links\n */\n@Component({\n tag: 'pds-textarea',\n styleUrls: [\n '../../global/styles/utils/label.scss',\n '../pds-input/pds-input.tokens.scss',\n 'pds-textarea.scss'\n ],\n shadow: true,\n formAssociated: true,\n})\nexport class PdsTextarea {\n\n private nativeTextarea?: HTMLTextAreaElement\n private focusedValue?: string | null;\n private inheritedAttributes: Attributes = {};\n private originalPdsInput?: EventEmitter<TextareaInputEventDetail>;\n private internals?: ElementInternals;\n private resizeObserver?: ResizeObserver;\n private characterCounter?: HTMLElement;\n\n @Element() el: HTMLPdsTextareaElement;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() pdsBlur!: EventEmitter<FocusEvent>;\n\n /**\n * Emitted when the input has focus.\n */\n @Event() pdsFocus!: EventEmitter<FocusEvent>;\n\n /**\n * Emitted when a keyboard input occurs.\n *\n * For elements that accept text input (`type=text`, `type=tel`, etc.), the interface\n * is [`InputEvent`](https://developer.mozilla.org/en-US/docs/Web/API/InputEvent); for others,\n * the interface is [`Event`](https://developer.mozilla.org/en-US/docs/Web/API/Event). If\n * the input is cleared on edit, the type is `null`.\n */\n @Event() pdsInput: EventEmitter<TextareaInputEventDetail>;\n\n /**\n * Event emitted whenever the value of the textarea changes.\n *\n * This event will not emit when programmatically setting the `value` property.\n */\n @Event() pdsTextareaChange: EventEmitter<TextareaChangeEventDetail>;\n\n /**\n * Sets focus on the native `textarea` in the `pds-textarea`. Use this method instead of the global\n * `textarea.focus()`.\n */\n @Method()\n async setFocus() {\n if (this.nativeTextarea) {\n this.nativeTextarea.focus();\n }\n }\n\n /**\n * Specifies if and how the browser provides `autocomplete` assistance for the field.\n */\n @Prop() autocomplete: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines whether or not the textarea is disabled.\n * @defaultValue false\n */\n @Prop() disabled = false;\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the event after each keystroke.\n */\n @Prop() debounce?: number;\n\n /**\n * Displays an error message below the textarea field.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Displays a message or hint below the textarea field.\n */\n @Prop() helperMessage?: string;\n\n /**\n * Determines whether or not the textarea is invalid or throws an error.\n * @defaultValue false\n */\n @Prop({mutable: true}) invalid = false; // eslint-disable-line @stencil-community/strict-mutable\n\n /**\n * Text to be displayed as the textarea label.\n */\n @Prop() label?: string;\n\n /**\n * Visually hides the label text for instances where only the textarea should be displayed. Label remains accessible to assistive technology such as screen readers.\n * Note: When true, the action slot is also hidden to maintain a minimal UI.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * Specifies the name. Submitted with the form name/value pair. This value will mirror the componentId.\n */\n @Prop() name: string = this.componentId;\n\n /**\n * Specifies a short hint that describes the expected value of the textarea.\n */\n @Prop() placeholder?: string;\n\n /**\n * Determines whether or not the textarea is readonly.\n * @defaultValue false\n */\n @Prop() readonly = false;\n\n /**\n * Determines whether or not the textarea is required.\n * @defaultValue false\n */\n @Prop() required = false;\n\n /**\n * Sets number of rows of text visible without needing to scroll in the textarea.\n */\n @Prop() rows?: number;\n\n /**\n * Specifies the maximum number of characters allowed in the textarea. When set, displays a character counter.\n */\n @Prop({ reflect: true }) maxLength?: number;\n\n /**\n * The value of the textarea.\n */\n @Prop({mutable: true}) value?: string | null = '';\n\n @State() hasFocus = false;\n\n /**\n * If true, the textarea has action content in the label area\n */\n @State() hasAction = false;\n\n @Watch('debounce')\n protected debounceChanged() {\n const { pdsInput, debounce, originalPdsInput } = this;\n\n this.pdsInput = debounce === undefined ? originalPdsInput ?? pdsInput : debounceEvent(pdsInput, debounce);\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n const nativeTextarea = this.nativeTextarea;\n const value = this.getValue();\n\n if (nativeTextarea && nativeTextarea.value !== value) {\n nativeTextarea.value = value;\n }\n\n // Update form value for Form Associated Custom Elements API\n this.updateFormValue();\n\n // Update character counter position in case content changes affect sizing\n if (this.maxLength && typeof ResizeObserver !== 'undefined') {\n this.updateCharacterCounterPosition();\n }\n }\n\n @Watch('maxLength')\n protected maxLengthChanged() {\n // Setup or teardown ResizeObserver based on maxLength\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n\n if (this.maxLength && this.nativeTextarea) {\n this.setupResizeObserver();\n }\n\n // Update ElementInternals validity when maxLength changes\n if (this.internals && this.internals.setValidity && this.nativeTextarea) {\n const isTooLong = this.nativeTextarea.value.length > (this.maxLength || 0);\n this.internals.setValidity(\n { tooLong: isTooLong },\n isTooLong ? 'Value exceeds maxLength' : '',\n this.nativeTextarea\n );\n }\n }\n\n /**\n * Emits an `pdsInput` event.\n */\n private emitInputChange(event?: Event) {\n const { value } = this;\n this.pdsInput.emit({ value, event });\n }\n\n /**\n * Emits an `pdsTextareaChange` event.\n */\n private emitValueChange(event?: Event) {\n const textarea = event.target as HTMLTextAreaElement;\n isRequired(textarea, this);\n\n const { value } = textarea;\n\n // Checks for both null and undefined values\n const newValue = value == null ? value : value.toString();\n this.focusedValue = newValue;\n this.pdsTextareaChange.emit({ value: newValue, event });\n }\n\n private getValue(): string {\n return this.value || '';\n }\n\n private onBlur = (ev: FocusEvent) => {\n this.hasFocus = false;\n\n if (this.focusedValue !== this.value) {\n this.emitValueChange(ev);\n }\n\n this.pdsBlur.emit(ev);\n };\n\n private onFocus = (ev: FocusEvent) => {\n this.hasFocus = true;\n this.focusedValue = this.value;\n\n this.pdsFocus.emit(ev);\n };\n\n private onInput = (ev: Event) => {\n const input = ev.target as HTMLTextAreaElement | null;\n if (input) {\n // Handle maxLength validation\n if (this.maxLength && input.value.length > this.maxLength) {\n // Prevent input beyond maxLength\n input.value = input.value.substring(0, this.maxLength);\n }\n this.value = input.value || '';\n }\n this.emitInputChange(ev);\n\n // Update counter position when content changes\n if (this.maxLength && typeof ResizeObserver !== 'undefined') {\n // Use requestAnimationFrame to ensure DOM is updated\n requestAnimationFrame(() => {\n this.updateCharacterCounterPosition();\n });\n }\n };\n\n private onTextareaChange = (ev: Event) => {\n this.emitValueChange(ev);\n };\n\n private textareaClassNames() {\n const classNames = ['pds-textarea__field'];\n\n if (this.invalid && this.invalid === true) {\n classNames.push('is-invalid');\n }\n\n return classNames.join(' ');\n }\n\n connectedCallback() {\n this.debounceChanged();\n // Initialize ElementInternals for form association\n if (this.el.attachInternals) {\n this.internals = this.el.attachInternals();\n }\n }\n\n disconnectedCallback() {\n // Clean up ResizeObserver\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad() {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el),\n ...inheritAttributes(this.el),\n };\n this.hasAction = this.el.querySelector('[slot=\"action\"]') !== null;\n }\n\n componentDidLoad() {\n this.originalPdsInput = this.pdsInput;\n // Set initial form value\n this.updateFormValue();\n\n // Setup ResizeObserver for character counter positioning\n this.setupResizeObserver();\n }\n\n /**\n * Sets up ResizeObserver to track textarea resize for character counter positioning\n */\n private setupResizeObserver() {\n if (!this.maxLength || !this.nativeTextarea) return;\n\n // ResizeObserver may not be available in test environments\n if (typeof ResizeObserver !== 'undefined') {\n this.resizeObserver = new ResizeObserver(() => {\n // Use requestAnimationFrame to ensure DOM updates are complete\n requestAnimationFrame(() => {\n this.updateCharacterCounterPosition();\n });\n });\n\n this.resizeObserver.observe(this.nativeTextarea);\n\n // Initial positioning with a small delay to ensure counter is rendered\n requestAnimationFrame(() => {\n this.updateCharacterCounterPosition();\n });\n }\n }\n\n /**\n * Updates character counter position to stay within textarea boundaries during resize\n */\n private updateCharacterCounterPosition() {\n if (!this.characterCounter || !this.nativeTextarea) return;\n\n // Skip positioning in test environments where ResizeObserver isn't available\n if (typeof ResizeObserver === 'undefined') return;\n\n // Ensure the character counter has been rendered and has dimensions\n if (this.characterCounter.offsetWidth === 0 || this.characterCounter.offsetHeight === 0) {\n // Counter not ready or component hidden - return and let resize/input observers handle positioning later\n return;\n }\n\n // Position based on textarea's actual dimensions (which change during manual resize)\n const textareaWidth = this.nativeTextarea.offsetWidth;\n const textareaHeight = this.nativeTextarea.offsetHeight;\n const counterWidth = this.characterCounter.offsetWidth;\n const counterHeight = this.characterCounter.offsetHeight;\n\n // Calculate position within textarea boundaries with padding from edges\n const rightPosition = textareaWidth - counterWidth - 8;\n const bottomPosition = textareaHeight - counterHeight - 8;\n\n // Ensure counter stays within textarea boundaries even when resized very small\n const finalLeft = Math.max(8, Math.min(rightPosition, textareaWidth - counterWidth - 8));\n const finalTop = Math.max(8, Math.min(bottomPosition, textareaHeight - counterHeight - 8));\n\n // Apply absolute positioning within the field wrapper\n this.characterCounter.style.position = 'absolute';\n this.characterCounter.style.left = `${finalLeft}px`;\n this.characterCounter.style.top = `${finalTop}px`;\n this.characterCounter.style.right = 'auto';\n this.characterCounter.style.bottom = 'auto';\n }\n\n /**\n * Renders the character counter when maxLength is set\n */\n private renderCharacterCounter() {\n if (!this.maxLength) {\n return null;\n }\n\n const currentLength = this.getValue().length;\n return (\n <div\n class=\"pds-textarea__character-counter\"\n ref={(el) => this.characterCounter = el}\n role=\"status\"\n aria-live=\"polite\"\n aria-label={`${currentLength} of ${this.maxLength} characters`}\n >\n {currentLength} / {this.maxLength}\n </div>\n );\n }\n\n private renderAction() {\n const hasAction = this.el.querySelector('[slot=\"action\"]') !== null;\n if (hasAction) {\n return (\n <div class=\"pds-textarea__action\" part=\"action\">\n <slot name=\"action\"></slot>\n </div>\n );\n }\n return null;\n }\n\n /**\n * Updates the form value using ElementInternals API\n */\n private updateFormValue() {\n if (this.internals && this.internals.setFormValue) {\n const value = this.getValue();\n this.internals.setFormValue(value || null);\n\n // Set validity based on native textarea validation\n if (this.nativeTextarea && this.internals && this.internals.setValidity) {\n this.internals.setValidity(\n this.nativeTextarea.validity,\n this.nativeTextarea.validationMessage,\n this.nativeTextarea\n );\n }\n }\n }\n\n\n /**\n * Form Associated Custom Elements API: Called when the form is reset\n */\n formResetCallback() {\n this.value = '';\n this.updateFormValue();\n }\n\n /**\n * Form Associated Custom Elements API: Called when the form is disabled\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n /**\n * Form Associated Custom Elements API: Called to restore form state\n */\n formStateRestoreCallback(state: string | FormData | null) {\n if (typeof state === 'string') {\n this.value = state;\n } else if (state instanceof FormData && this.name) {\n // Extract value from FormData using the textarea's name\n const value = state.get(this.name);\n if (typeof value === 'string') {\n this.value = value;\n }\n }\n }\n\n render() {\n const value = this.getValue();\n\n return (\n <Host\n aria-disabled={this.disabled ? 'true' : null}\n aria-readonly={this.readonly ? 'true' : null}\n has-action={this.hasAction && !this.hideLabel ? 'true' : null}\n >\n <div class=\"pds-textarea\">\n {this.label &&\n <div class=\"pds-textarea__label-wrapper\">\n <label htmlFor={this.componentId}>\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {!this.hideLabel && this.renderAction()}\n </div>\n }\n <div class=\"pds-textarea__field-wrapper\">\n <textarea\n ref={(el) => this.nativeTextarea = el }\n aria-describedby={assignDescription(this.componentId, this.invalid, this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n autocomplete={this.autocomplete}\n class={this.textareaClassNames()}\n disabled={this.disabled}\n id={this.componentId}\n maxlength={this.maxLength}\n name={this.name}\n placeholder={this.placeholder}\n readOnly={this.readonly}\n required={this.required}\n rows={this.rows}\n onBlur={this.onBlur}\n onChange={this.onTextareaChange}\n onFocus={this.onFocus}\n onInput={this.onInput}\n {...this.inheritedAttributes}\n >\n {value}\n </textarea>\n {this.renderCharacterCounter()}\n </div>\n {this.helperMessage &&\n <p\n class=\"pds-textarea__helper-message\"\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </p>\n }\n {this.invalid &&\n <p\n aria-live=\"assertive\"\n class=\"pds-textarea__error-message\"\n id={messageId(this.componentId, 'error')}\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </p>\n }\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as o,H as t,g as r}from"./p-BVCWKPy3.js";const i=":host{--sizing-max-width-default:352px;display:inline-block}:host [popover]{background-color:var(--pine-color-background-container);border:var(--pine-border);border-radius:var(--pine-dimension-125);-webkit-box-shadow:var(--pine-box-shadow-200);box-shadow:var(--pine-box-shadow-200);margin:var(--pine-dimension-none);max-width:var(--sizing-max-width-default);padding:var(--pine-dimension-md);position:fixed}:host button{-ms-flex-align:center;align-items:center;background-color:var(--pine-color-secondary);border:var(--pine-border);border-radius:var(--pine-border-radius-full);color:var(--pine-color-text-secondary);display:-ms-flexbox;display:flex;font:var(--pine-typography-body-medium);font-family:var(--pine-font-family-heading);letter-spacing:var(--pine-letter-spacing);min-height:40px;padding:var(--pine-dimension-xs) var(--pine-dimension-sm)}:host button:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}:host button:hover{background-color:var(--pine-color-secondary-hover)}";const a=class{constructor(o){e(this,o);this.active=false;this.popoverTargetAction="show";this.popoverType="auto";this.maxWidth=352;this.placement="right"}componentWillRender(){this.handlePopoverPositioning()}handleClick(){this.active=!this.active}handleScroll(){if(this.active){this.handlePopoverPositioning()}}handlePopoverPositioning(){const e=this.el.shadowRoot.querySelector(".pds-popover__trigger");const o=this.el.shadowRoot.querySelector("div[popover]");if(!e||!o)return;const t=e.getBoundingClientRect();const r=o.getBoundingClientRect();let i=0;let a=0;const s=8;switch(this.placement){case"top":i=t.top-r.height-s;a=t.left+(t.width-r.width)/2;break;case"top-start":i=t.top-r.height-s;a=t.left;break;case"top-end":i=t.top-r.height-s;a=t.right-r.width;break;case"right":i=t.top+(t.height-r.height)/2;a=t.right+s;break;case"right-start":i=t.top;a=t.right+s;break;case"right-end":i=t.bottom-r.height;a=t.right+s;break;case"bottom":i=t.bottom+s;a=t.left+(t.width-r.width)/2;break;case"bottom-start":i=t.bottom+s;a=t.left;break;case"bottom-end":i=t.bottom+s;a=t.right-r.width;break;case"left":i=t.top+(t.height-r.height)/2;a=t.left-r.width-s;break;case"left-start":i=t.top;a=t.left-r.width-s;break;case"left-end":i=t.bottom-r.height;a=t.left-r.width-s;break}o.style.top=`${i}px`;o.style.left=`${a}px`}render(){return o(t,{key:"2a46550245e4718ba7aa89ee518f8ac7b1ff9d94"},o("button",{key:"d5a93a38a8f3b6daa6c22afd2324f37a66e0d8c3",class:"pds-popover__trigger",popoverTarget:this.componentId,popoverTargetAction:this.popoverTargetAction,onClick:this.handleClick},this.text),o("div",{key:"212800e683ed451561c4b0fb9d539f514072ef3a",class:`pds-popover ${this.active?"pds-popover--active":""}`,id:this.componentId,popover:this.popoverType,style:{maxWidth:`${this.maxWidth}px`}},o("slot",{key:"46b2f86f847a3549452b413860e270f1a4e1de0d"})))}get el(){return r(this)}};a.style=i;export{a as pds_popover};
2
- //# sourceMappingURL=p-6f4a6d0b.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsPopoverCss","PdsPopover","constructor","hostRef","this","active","popoverTargetAction","popoverType","maxWidth","placement","componentWillRender","handlePopoverPositioning","handleClick","handleScroll","triggerEl","el","shadowRoot","querySelector","popoverEl","triggerRect","getBoundingClientRect","popoverRect","top","left","offset","height","width","right","bottom","style","render","h","Host","key","class","popoverTarget","componentId","onClick","text","id","popover"],"sources":["src/components/pds-popover/pds-popover.scss?tag=pds-popover&encapsulation=shadow","src/components/pds-popover/pds-popover.tsx"],"sourcesContent":[":host {\n --sizing-max-width-default: 352px;\n\n display: inline-block;\n\n [popover] {\n background-color: var(--pine-color-background-container);\n border: var(--pine-border);\n border-radius: var(--pine-dimension-125);\n box-shadow: var(--pine-box-shadow-200);\n margin: var(--pine-dimension-none);\n max-width: var(--sizing-max-width-default);\n padding: var(--pine-dimension-md);\n position: fixed;\n }\n\n button {\n align-items: center;\n background-color: var(--pine-color-secondary);\n border: var(--pine-border);\n border-radius: var(--pine-border-radius-full);\n color: var(--pine-color-text-secondary);\n display: flex;\n font: var(--pine-typography-body-medium);\n font-family: var(--pine-font-family-heading);\n letter-spacing: var(--pine-letter-spacing);\n min-height: 40px;\n padding: var(--pine-dimension-xs) var(--pine-dimension-sm);\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n &:hover {\n background-color: var(--pine-color-secondary-hover);\n }\n }\n}\n","import { Component, Element, Host, Listen, h, Prop, State } from '@stencil/core';\nimport { PlacementType } from '@utils/types';\n\n@Component({\n tag: 'pds-popover',\n styleUrl: 'pds-popover.scss',\n shadow: true,\n})\nexport class PdsPopover {\n /**\n * Reference to the Host element\n */\n @Element() el: HTMLPdsPopoverElement;\n\n /**\n * Determines when the popover is active\n * @defaultValue false\n */\n @State() active = false;\n\n /**\n * Determines the action that triggers the popover. For manual popovers, the consumer is responsible for toggling this value.\n * @defaultValue \"show\"\n */\n @Prop() popoverTargetAction: 'show' | 'toggle' | 'hide' = 'show';\n\n /**\n * Determines the type of popover. Auto popovers can be \"light dismissed\" by clicking outside of the popover.\n * Manual popovers require the consumer to handle the visibility of the popover.\n */\n @Prop() popoverType: 'auto' | 'manual' = 'auto';\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Text that appears on the trigger element\n */\n @Prop() text: string;\n\n /**\n * Sets the maximum width of the popover content\n * @defaultValue 352\n */\n @Prop() maxWidth?: number = 352;\n\n /**\n * Determines the preferred position of the popover\n * @defaultValue \"right\"\n */\n @Prop({ reflect: true }) placement: PlacementType = 'right';\n\n componentWillRender() {\n this.handlePopoverPositioning();\n }\n\n @Listen('click', {\n capture: true\n })\n handleClick() {\n this.active = !this.active;\n }\n\n @Listen('scroll', {\n target: 'window',\n capture: true\n })\n handleScroll() {\n if (this.active) {\n this.handlePopoverPositioning();\n }\n }\n\n private handlePopoverPositioning() {\n const triggerEl = this.el.shadowRoot.querySelector('.pds-popover__trigger') as HTMLElement;\n const popoverEl = this.el.shadowRoot.querySelector('div[popover]') as HTMLElement;\n\n if (!triggerEl || !popoverEl) return;\n\n const triggerRect = triggerEl.getBoundingClientRect();\n const popoverRect = popoverEl.getBoundingClientRect();\n\n let top = 0;\n let left = 0;\n const offset = 8\n\n switch (this.placement) {\n case 'top':\n top = triggerRect.top - popoverRect.height - offset;\n left = triggerRect.left + (triggerRect.width - popoverRect.width) / 2;\n break;\n case 'top-start':\n top = triggerRect.top - popoverRect.height - offset;\n left = triggerRect.left;\n break;\n case 'top-end':\n top = triggerRect.top - popoverRect.height - offset;\n left = triggerRect.right - popoverRect.width;\n break;\n case 'right':\n top = triggerRect.top + (triggerRect.height - popoverRect.height) / 2;\n left = triggerRect.right + offset;\n break;\n case 'right-start':\n top = triggerRect.top;\n left = triggerRect.right + offset;\n break;\n case 'right-end':\n top = triggerRect.bottom - popoverRect.height;\n left = triggerRect.right + offset;\n break;\n case 'bottom':\n top = triggerRect.bottom + offset;\n left = triggerRect.left + (triggerRect.width - popoverRect.width) / 2;\n break;\n case 'bottom-start':\n top = triggerRect.bottom + offset;\n left = triggerRect.left;\n break;\n case 'bottom-end':\n top = triggerRect.bottom + offset;\n left = triggerRect.right - popoverRect.width;\n break;\n case 'left':\n top = triggerRect.top + (triggerRect.height - popoverRect.height) / 2;\n left = triggerRect.left - popoverRect.width - offset;\n break;\n case 'left-start':\n top = triggerRect.top;\n left = triggerRect.left - popoverRect.width - offset;\n break;\n case 'left-end':\n top = triggerRect.bottom - popoverRect.height;\n left = triggerRect.left - popoverRect.width - offset;\n break;\n }\n\n popoverEl.style.top = `${top}px`;\n popoverEl.style.left = `${left}px`;\n }\n\n render() {\n return (\n <Host>\n <button\n class=\"pds-popover__trigger\"\n popoverTarget={this.componentId}\n popoverTargetAction={this.popoverTargetAction}\n onClick={this.handleClick}\n >\n {this.text}\n </button>\n <div\n class={`pds-popover ${this.active ? 'pds-popover--active' : ''}`}\n id={this.componentId}\n popover={this.popoverType}\n style={{ maxWidth: `${this.maxWidth}px` }}\n >\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAgB,8/B,MCQTC,EAAU,MALvB,WAAAC,CAAAC,G,UAeWC,KAAMC,OAAG,MAMVD,KAAmBE,oBAA+B,OAMlDF,KAAWG,YAAsB,OAgBjCH,KAAQI,SAAY,IAMHJ,KAASK,UAAkB,OAiHrD,CA/GC,mBAAAC,GACEN,KAAKO,0B,CAMP,WAAAC,GACER,KAAKC,QAAUD,KAAKC,M,CAOtB,YAAAQ,GACE,GAAIT,KAAKC,OAAQ,CACfD,KAAKO,0B,EAID,wBAAAA,GACN,MAAMG,EAAYV,KAAKW,GAAGC,WAAWC,cAAc,yBACnD,MAAMC,EAAYd,KAAKW,GAAGC,WAAWC,cAAc,gBAEnD,IAAKH,IAAcI,EAAW,OAE9B,MAAMC,EAAcL,EAAUM,wBAC9B,MAAMC,EAAcH,EAAUE,wBAE9B,IAAIE,EAAM,EACV,IAAIC,EAAO,EACX,MAAMC,EAAS,EAEf,OAAQpB,KAAKK,WACX,IAAK,MACHa,EAAMH,EAAYG,IAAMD,EAAYI,OAASD,EAC7CD,EAAOJ,EAAYI,MAAQJ,EAAYO,MAAQL,EAAYK,OAAS,EACpE,MACF,IAAK,YACHJ,EAAMH,EAAYG,IAAMD,EAAYI,OAASD,EAC7CD,EAAOJ,EAAYI,KACnB,MACF,IAAK,UACHD,EAAMH,EAAYG,IAAMD,EAAYI,OAASD,EAC7CD,EAAOJ,EAAYQ,MAAQN,EAAYK,MACvC,MACF,IAAK,QACHJ,EAAMH,EAAYG,KAAOH,EAAYM,OAASJ,EAAYI,QAAU,EACpEF,EAAOJ,EAAYQ,MAAQH,EAC3B,MACF,IAAK,cACHF,EAAMH,EAAYG,IAClBC,EAAOJ,EAAYQ,MAAQH,EAC3B,MACF,IAAK,YACHF,EAAMH,EAAYS,OAASP,EAAYI,OACvCF,EAAOJ,EAAYQ,MAAQH,EAC3B,MACF,IAAK,SACHF,EAAMH,EAAYS,OAASJ,EAC3BD,EAAOJ,EAAYI,MAAQJ,EAAYO,MAAQL,EAAYK,OAAS,EACpE,MACF,IAAK,eACHJ,EAAMH,EAAYS,OAASJ,EAC3BD,EAAOJ,EAAYI,KACnB,MACF,IAAK,aACHD,EAAMH,EAAYS,OAASJ,EAC3BD,EAAOJ,EAAYQ,MAAQN,EAAYK,MACvC,MACF,IAAK,OACHJ,EAAMH,EAAYG,KAAOH,EAAYM,OAASJ,EAAYI,QAAU,EACpEF,EAAOJ,EAAYI,KAAOF,EAAYK,MAAQF,EAC9C,MACF,IAAK,aACHF,EAAMH,EAAYG,IAClBC,EAAOJ,EAAYI,KAAOF,EAAYK,MAAQF,EAC9C,MACF,IAAK,WACHF,EAAMH,EAAYS,OAASP,EAAYI,OACvCF,EAAOJ,EAAYI,KAAOF,EAAYK,MAAQF,EAC9C,MAGJN,EAAUW,MAAMP,IAAM,GAAGA,MACzBJ,EAAUW,MAAMN,KAAO,GAAGA,K,CAG5B,MAAAO,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EACE,UAAAE,IAAA,2CAAAC,MAAM,uBACNC,cAAe/B,KAAKgC,YACpB9B,oBAAqBF,KAAKE,oBAC1B+B,QAASjC,KAAKQ,aAEbR,KAAKkC,MAERP,EAAA,OAAAE,IAAA,2CACEC,MAAO,eAAe9B,KAAKC,OAAS,sBAAwB,KAC5DkC,GAAInC,KAAKgC,YACTI,QAASpC,KAAKG,YACdsB,MAAO,CAAErB,SAAU,GAAGJ,KAAKI,eAE3BuB,EAAa,QAAAE,IAAA,8C","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- System.register(["./p-B_C-mRjx.system.js"],(function(e){"use strict";var t,r,o;return{setters:[function(e){t=e.r;r=e.h;o=e.H}],execute:function(){var c=":host{border-color:inherit;display:table-row-group;vertical-align:middle}";var n=e("pds_table_body",function(){function e(e){t(this,e)}e.prototype.render=function(){return r(o,{key:"7aa581f9cd4c798a5699664ca9639ec7e412a891",role:"rowgroup",part:"body"},r("slot",{key:"c06f2431044e64d934ee302e5c6fffbdaf0051c7"}))};return e}());n.style=c}}}));
2
- //# sourceMappingURL=p-7004d1ea.system.entry.js.map
@@ -1,2 +0,0 @@
1
- System.register(["./p-B_C-mRjx.system.js"],(function(e){"use strict";var a,t,i,n,s;return{setters:[function(e){a=e.r;t=e.c;i=e.h;n=e.H;s=e.g}],execute:function(){var o='pds-tab{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;position:relative}.pds-tabs--pill pds-tab{-ms-flex:1;flex:1}.pds-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:var(--pine-border-width-none);-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:pointer;font-family:inherit;padding:var(--pine-dimension-none);-ms-flex-align:center;align-items:center;color:var(--pine-color-text-secondary);display:-ms-inline-flexbox;display:inline-flex;position:relative;text-decoration:none;white-space:nowrap}.pds-tab.is-active,.pds-tab[aria-selected=true]{color:var(--pine-color-text)}.pds-tab.is-active .pds-tab__content::after,.pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tab:hover{color:var(--pine-color-text)}.pds-tab:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tab .pds-tab__content{font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);-webkit-padding-after:11px;padding-block-end:11px;position:relative}.pds-tab .pds-tab__content::after{background-color:var(--pine-color-brand);content:"";height:3px;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);inset-inline-start:var(--pine-dimension-none);opacity:0;position:absolute}.pds-tab .pds-tab-edge{display:none}.pds-tabs--availability{--color-background-tab:transparent}.pds-tabs--availability .pds-tab{background-color:var(--color-background-tab);border-radius:calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);padding:8px 16px 13px}.pds-tabs--availability .pds-tab.is-active,.pds-tabs--availability .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-secondary)}.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tabs--availability .pds-tab.is-active .pds-tab-edge,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge{z-index:1}.pds-tabs--availability .pds-tab:hover:not(.is-active,[aria-selected=true]){--color-background-tab:var(--pine-color-secondary-hover)}.pds-tabs--availability .pds-tab:focus-visible{color:var(--pine-color-text-secondary)}.pds-tabs--availability .pds-tab__content{-webkit-padding-after:7px;padding-block-end:7px}.pds-tabs--availability .pds-tab-edge{bottom:0;display:block;height:8px;inset-inline-end:100%;overflow:hidden;position:absolute;width:8px}.pds-tabs--availability .pds-tab-edge::before{border-radius:50%;bottom:0;-webkit-box-shadow:4px 4px 0 0 var(--color-background-tab);box-shadow:4px 4px 0 0 var(--color-background-tab);content:"";display:block;height:200%;inset-inline-end:0;position:absolute;width:200%}.pds-tabs--availability .pds-tab-edge--end{inset-inline-end:unset;inset-inline-start:100%}.pds-tabs--availability .pds-tab-edge--end::before{-webkit-box-shadow:-4px 4px 0 0 var(--color-background-tab);box-shadow:-4px 4px 0 0 var(--color-background-tab);inset-inline-end:unset;inset-inline-start:0}.pds-tabs--filter .pds-tab{background-color:var(--pine-color-background-container-disabled);border-radius:50px;color:var(--pine-color-text);padding:6px 15px}.pds-tabs--filter .pds-tab.is-active,.pds-tabs--filter .pds-tab[aria-selected=true]{background-color:var(--pine-color-primary);color:var(--pine-color-text-primary)}.pds-tabs--filter .pds-tab.is-active:hover,.pds-tabs--filter .pds-tab[aria-selected=true]:hover{background-color:var(--pine-color-primary-hover)}.pds-tabs--filter .pds-tab:hover:not(.is-active,[aria-selected=true]){background-color:var(--pine-color-border-disabled)}.pds-tabs--filter .pds-tab__content{-webkit-padding-after:var(--pine-dimension-none);padding-block-end:var(--pine-dimension-none)}.pds-tabs--filter .pds-tab__content::after{content:unset}.pds-tabs--pill{--color-background-tab:transparent}.pds-tabs--pill .pds-tab{background-color:var(--color-background-tab);border:var(--pine-border-width-thin) solid transparent;border-radius:var(--pine-dimension-xs);color:var(--pine-color-text-readonly);-ms-flex:1;flex:1;height:34px;-ms-flex-pack:center;justify-content:center}.pds-tabs--pill .pds-tab .pds-tab__content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-webkit-padding-after:0;padding-block-end:0}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-white);border-color:var(--pine-color-border);-webkit-box-shadow:var(--pine-box-shadow-100);box-shadow:var(--pine-box-shadow-100);color:var(--pine-color-text-active);z-index:1;}.pds-tabs--pill .pds-tab.is-active:focus-visible,.pds-tabs--pill .pds-tab[aria-selected=true]:focus-visible{border-color:var(--color-border-focus);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabs--pill .pds-tab.is-active .pds-tab__content::after,.pds-tabs--pill .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:0}';var r=e("pds_tab",function(){function e(e){a(this,e);this.pdsTabClick=t(this,"pdsTabClick");this.selected=false}e.prototype.onTabClick=function(e,a){this.pdsTabClick.emit([e,a])};e.prototype.render=function(){var e=i("span",{key:"f83448bc898dd4e94a7777d23c9565830dff0346",class:"pds-tab-edge",role:"presentation"});var a=i("span",{key:"5ff8d05f4cf140771706e7740c48e658208749dd",class:"pds-tab-edge pds-tab-edge--end",role:"presentation"});return i(n,{key:"874111fb5eedda9d021c8df0dc048aa771141a7c",variant:this.variant,slot:"tabs",index:this.index},i("button",{key:"a72dc4a32de38ae26bdba67cd91028dc955d4349",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"&&e,this.variant==="availability"&&a,i("div",{key:"8e629e15312b7bd93c84d026b8b40f51a87479ca",class:"pds-tab__content"},i("slot",{key:"2296b81a3abdd25cc9eb73d8fed5089466e21fc6"}))))};Object.defineProperty(e.prototype,"el",{get:function(){return s(this)},enumerable:false,configurable:true});return e}());r.style=o}}}));
2
- //# sourceMappingURL=p-71169b66.system.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTabCss","PdsTab","exports","class_1","hostRef","this","selected","prototype","onTabClick","index","parentComponentId","pdsTabClick","emit","render","availabilityTabEdgeInlineStart","h","key","class","role","availabilityTabEdgeInlineEnd","Host","variant","slot","id","name","tabindex","onClick","bind"],"sources":["src/components/pds-tabs/pds-tab/pds-tab.scss?tag=pds-tab","src/components/pds-tabs/pds-tab/pds-tab.tsx"],"sourcesContent":["pds-tab {\n align-items: center;\n display: inline-flex;\n position: relative;\n\n .pds-tabs--pill & {\n flex: 1;\n }\n}\n\n///\n/// Resets base button styles\n///\n@mixin pds-button-style-reset {\n appearance: none;\n background-color: transparent;\n border: var(--pine-border-width-none);\n box-shadow: none;\n color: inherit;\n cursor: pointer;\n font-family: inherit;\n padding: var(--pine-dimension-none);\n}\n\n.pds-tab {\n @include pds-button-style-reset();\n\n align-items: center;\n color: var(--pine-color-text-secondary);\n display: inline-flex;\n position: relative;\n text-decoration: none;\n white-space: nowrap;\n\n &.is-active,\n &[aria-selected='true'] {\n color: var(--pine-color-text);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n }\n\n &:hover {\n color: var(--pine-color-text);\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n .pds-tab__content {\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-medium);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding-block-end: 11px;\n position: relative;\n\n &::after {\n background-color: var(--pine-color-brand);\n content: '';\n height: 3px;\n inset-block-end: var(--pine-dimension-none);\n inset-inline-end: var(--pine-dimension-none);\n inset-inline-start: var(--pine-dimension-none);\n opacity: 0;\n position: absolute;\n }\n }\n\n .pds-tab-edge {\n display: none;\n }\n}\n\n.pds-tabs--availability {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border-radius: calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);\n padding: 8px 16px 13px;\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-secondary);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n\n .pds-tab-edge {\n z-index: 1;\n }\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n --color-background-tab: var(--pine-color-secondary-hover);\n }\n\n &:focus-visible {\n color: var(--pine-color-text-secondary);\n }\n }\n\n .pds-tab__content {\n padding-block-end: 7px;\n }\n\n .pds-tab-edge {\n bottom: 0;\n display: block;\n height: 8px;\n inset-inline-end: 100%;\n overflow: hidden;\n position: absolute;\n width: 8px;\n\n &::before {\n border-radius: 50%;\n bottom: 0;\n box-shadow: 4px 4px 0 0 var(--color-background-tab);\n content: '';\n display: block;\n height: 200%;\n inset-inline-end: 0;\n position: absolute;\n width: 200%;\n }\n }\n\n .pds-tab-edge--end {\n inset-inline-end: unset;\n inset-inline-start: 100%;\n\n &::before {\n box-shadow: -4px 4px 0 0 var(--color-background-tab);\n inset-inline-end: unset;\n inset-inline-start: 0;\n }\n }\n}\n\n.pds-tabs--filter {\n .pds-tab {\n background-color: var(--pine-color-background-container-disabled);\n border-radius: 50px;\n color: var(--pine-color-text);\n padding: 6px 15px;\n\n &.is-active,\n &[aria-selected='true'] {\n background-color: var(--pine-color-primary);\n color: var(--pine-color-text-primary);\n }\n\n &.is-active:hover,\n &[aria-selected='true']:hover {\n background-color: var(--pine-color-primary-hover);\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n background-color: var(--pine-color-border-disabled);\n }\n }\n\n .pds-tab__content {\n padding-block-end: var(--pine-dimension-none);\n\n &::after {\n content: unset;\n }\n }\n}\n\n.pds-tabs--pill {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border: var(--pine-border-width-thin) solid transparent;\n border-radius: var(--pine-dimension-xs);\n color: var(--pine-color-text-readonly);\n flex: 1;\n height: 34px;\n justify-content: center;\n\n .pds-tab__content {\n align-items: center;\n display: flex;\n justify-content: center;\n padding-block-end: 0;\n }\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-white);\n border-color: var(--pine-color-border);\n box-shadow: var(--pine-box-shadow-100);\n color: var(--pine-color-text-active);\n z-index: 1;\n\n &:focus-visible {\n border-color: var(--color-border-focus);\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n /* stylelint-disable max-nesting-depth */\n .pds-tab__content {\n &::after {\n opacity: 0;\n }\n }\n /* stylelint-enable max-nesting-depth */\n }\n }\n}\n","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"],"mappings":"kKAAA,IAAMA,EAAY,inK,ICOLC,EAAMC,EAAA,qBALnB,SAAAC,EAAAC,G,iDAmCUC,KAAQC,SAAG,KAsCpB,CA/BSH,EAAAI,UAAAC,WAAA,SAAWC,EAAOC,GACxBL,KAAKM,YAAYC,KAAK,CAACH,EAAOC,G,EAGhCP,EAAAI,UAAAM,OAAA,WACE,IAAMC,EACJC,EAAA,QAAAC,IAAA,2CAAMC,MAAM,eAAeC,KAAK,iBAGlC,IAAMC,EACJJ,EAAA,QAAAC,IAAA,2CAAMC,MAAM,iCAAiCC,KAAK,iBAGpD,OACEH,EAACK,EAAI,CAAAJ,IAAA,2CAACK,QAAShB,KAAKgB,QAASC,KAAK,OAAOb,MAAOJ,KAAKI,OACnDM,EAAA,UAAAC,IAAA,2CACEE,KAAK,MACLK,GAAIlB,KAAKK,kBAAoB,KAAOL,KAAKmB,KAC1B,gBAAAnB,KAAKK,kBAAoB,KAAOL,KAAKmB,KAAO,SAC3DC,SAAUpB,KAAKC,SAAW,IAAM,KAAI,gBACrBD,KAAKC,SAAW,OAAS,QACxCW,MAAOZ,KAAKC,SAAW,oBAAsB,UAC7CoB,QAASrB,KAAKG,WAAWmB,KAAKtB,KAAMA,KAAKI,MAAOJ,KAAKK,oBAEpDL,KAAKgB,UAAY,gBAAkBP,EACnCT,KAAKgB,UAAY,gBAAkBF,EACpCJ,EAAK,OAAAC,IAAA,2CAAAC,MAAM,oBAAmBF,EAAA,QAAAC,IAAA,+C,uHA/DrB,I","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- System.register(["./p-B_C-mRjx.system.js","./p-kYMYDfJY.system.js"],(function(e){"use strict";var t,i,r,n,o,s;return{setters:[function(e){t=e.r;i=e.c;r=e.h;n=e.H;o=e.g},function(e){s=e.c}],execute:function(){var a=":host{--border-head-default:var(--pine-border-width-thin) solid var(--pine-color-grey-100);border-color:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;display:table-header-group;vertical-align:middle}:host::part(checkbox-cell){background-color:var(--pine-color-background-container);inset-inline-start:var(--pine-dimension-none);position:-webkit-sticky;position:sticky;z-index:1}:host pds-table-checkbox-cell{-webkit-border-after:var(--border-head-default);border-block-end:var(--border-head-default)}";var c=e("pds_table_head",function(){function e(e){var r=this;t(this,e);this.pdsTableSelectAll=i(this,"pdsTableSelectAll");this.generateUniqueId=function(){var e=Math.random().toString(36).substring(2,8);var t=(new Date).toISOString().replace(/[:.]/g,"-");var i="".concat(e,"-").concat(t);return i};this.handleInput=function(e){r.isSelected=!e.target.checked;r.handleSelect(r.isSelected)};this.handleSelect=function(e){r.indeterminate=false;if(s("pds-table-head",r.hostElement)){r.pdsTableSelectAll.emit({isSelected:e})}}}e.prototype.componentWillLoad=function(){if(this.isSelected){this.handleSelect(this.isSelected)}};e.prototype.componentWillRender=function(){this.tableRef=this.hostElement.closest("pds-table");if(this.tableRef&&this.tableRef.fixedColumn){var e=this.hostElement.querySelector("pds-table-head-cell:first-child");e===null||e===void 0?void 0:e.classList.add("is-fixed")}};e.prototype.render=function(){return r(n,{key:"dda71d591ccce76bdb055820c1c97358e545b522",role:"row",part:"head"},this.tableRef&&this.tableRef.selectable&&r("pds-table-head-cell",{key:"79bf1bd06b8e1ef05c9354c178787b4cff139e07",part:this.tableRef.selectable?"checkbox-cell":""},r("pds-checkbox",{key:"1ce038a3f3b9e038441fdf4b1d1fe4689f575604",componentId:this.generateUniqueId(),indeterminate:this.indeterminate,onInput:this.handleInput,label:"Select All Rows",hideLabel:true,checked:this.isSelected,part:"select-all-checkbox"})),r("slot",{key:"f81d3922f892faa65abee99fd5af0d3232a25e9a"}))};Object.defineProperty(e.prototype,"hostElement",{get:function(){return o(this)},enumerable:false,configurable:true});return e}());c.style=a}}}));
2
- //# sourceMappingURL=p-73158adf.system.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTableHeadCss","PdsTableHead","exports","class_1","hostRef","_this","this","generateUniqueId","randomString","Math","random","toString","substring","timestamp","Date","toISOString","replace","uniqueId","concat","handleInput","ev","isSelected","target","checked","handleSelect","indeterminate","closest","hostElement","pdsTableSelectAll","emit","prototype","componentWillLoad","componentWillRender","tableRef","fixedColumn","tableCell","querySelector","classList","add","render","h","Host","key","role","part","selectable","componentId","onInput","label","hideLabel"],"sources":["src/components/pds-table/pds-table-head/pds-table-head.scss?tag=pds-table-head&encapsulation=shadow","src/components/pds-table/pds-table-head/pds-table-head.tsx"],"sourcesContent":[":host {\n --border-head-default: var(--pine-border-width-thin) solid var(--pine-color-grey-100);\n\n border-color: inherit;\n box-sizing: border-box;\n display: table-header-group;\n vertical-align: middle;\n\n // used for pds-checkbox-cell\n // because it is in the ShadowDom\n &::part(checkbox-cell) {\n background-color: var(--pine-color-background-container);\n inset-inline-start: var(--pine-dimension-none);\n position: sticky;\n z-index: 1;\n }\n}\n\n:host pds-table-checkbox-cell {\n border-block-end: var(--border-head-default);\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop } from '@stencil/core';\nimport { closest } from '@utils/closest';\n\n@Component({\n tag: 'pds-table-head',\n styleUrls: ['pds-table-head.scss'],\n shadow: true,\n})\nexport class PdsTableHead {\n @Element() hostElement: HTMLPdsTableHeadElement;\n private tableRef: HTMLPdsTableElement\n\n /**\n * Determines if the select all checkbox is in an indeterminate state.\n */\n @Prop({ mutable: true }) indeterminate?: boolean;\n\n /**\n * Determines if the table row is currently selected.\n * @defaultValue false\n */\n @Prop({mutable: true}) 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 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 private handleInput = (ev: Event) => {\n this.isSelected = !(ev.target as HTMLInputElement).checked\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 this.pdsTableSelectAll.emit({ isSelected });\n }\n }\n\n componentWillLoad() {\n if (this.isSelected) {\n this.handleSelect(this.isSelected)\n }\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-head-cell:first-child');\n tableCell?.classList.add(\"is-fixed\");\n }\n }\n\n render() {\n return (\n <Host role=\"row\" part=\"head\">\n {this.tableRef && this.tableRef.selectable && (\n <pds-table-head-cell part={this.tableRef.selectable ? 'checkbox-cell' : ''}>\n <pds-checkbox\n componentId={this.generateUniqueId()}\n indeterminate={this.indeterminate}\n onInput={this.handleInput}\n label={\"Select All Rows\"}\n hideLabel={true}\n checked={this.isSelected}\n part=\"select-all-checkbox\"\n />\n </pds-table-head-cell>\n )}\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"gNAAA,IAAMA,EAAkB,qgB,ICQXC,EAAYC,EAAA,4BALzB,SAAAC,EAAAC,GAAA,IAAAC,EAAAC,K,6DAyBUA,KAAgBC,iBAAG,WACzB,IAAMC,EAAeC,KAAKC,SAASC,SAAS,IAAIC,UAAU,EAAG,GAC7D,IAAMC,GAAY,IAAIC,MAAOC,cAAcC,QAAQ,QAAS,KAC5D,IAAMC,EAAW,GAAAC,OAAGV,EAAY,KAAAU,OAAIL,GAEpC,OAAOI,CACT,EAEQX,KAAAa,YAAc,SAACC,GACrBf,EAAKgB,YAAeD,EAAGE,OAA4BC,QACnDlB,EAAKmB,aAAanB,EAAKgB,WACzB,EAEQf,KAAAkB,aAAe,SAACH,GACtBhB,EAAKoB,cAAgB,MAErB,GAAKC,EAAQ,iBAAkBrB,EAAKsB,aAAe,CACjDtB,EAAKuB,kBAAkBC,KAAK,CAAER,WAAUA,G,CAE5C,CAqCD,CAnCClB,EAAA2B,UAAAC,kBAAA,WACE,GAAIzB,KAAKe,WAAY,CACnBf,KAAKkB,aAAalB,KAAKe,W,GAI3BlB,EAAA2B,UAAAE,oBAAA,WACE1B,KAAK2B,SAAW3B,KAAKqB,YAAYD,QAAQ,aAEzC,GAAIpB,KAAK2B,UAAY3B,KAAK2B,SAASC,YAAa,CAC9C,IAAMC,EAAY7B,KAAKqB,YAAYS,cAAc,mCACjDD,IAAS,MAATA,SAAS,SAATA,EAAWE,UAAUC,IAAI,W,GAI7BnC,EAAA2B,UAAAS,OAAA,WACE,OACEC,EAACC,EAAK,CAAAC,IAAA,2CAAAC,KAAK,MAAMC,KAAK,QACnBtC,KAAK2B,UAAY3B,KAAK2B,SAASY,YAC9BL,EAAqB,uBAAAE,IAAA,2CAAAE,KAAMtC,KAAK2B,SAASY,WAAa,gBAAkB,IACtEL,EAAA,gBAAAE,IAAA,2CACEI,YAAaxC,KAAKC,mBAClBkB,cAAenB,KAAKmB,cACpBsB,QAASzC,KAAKa,YACd6B,MAAO,kBACPC,UAAW,KACX1B,QAASjB,KAAKe,WACduB,KAAK,yBAIXJ,EAAa,QAAAE,IAAA,6C,gIAxEI,I","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as a,h as t,H as i,g as s}from"./p-BVCWKPy3.js";const n='pds-tab{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;position:relative}.pds-tabs--pill pds-tab{-ms-flex:1;flex:1}.pds-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:var(--pine-border-width-none);-webkit-box-shadow:none;box-shadow:none;color:inherit;cursor:pointer;font-family:inherit;padding:var(--pine-dimension-none);-ms-flex-align:center;align-items:center;color:var(--pine-color-text-secondary);display:-ms-inline-flexbox;display:inline-flex;position:relative;text-decoration:none;white-space:nowrap}.pds-tab.is-active,.pds-tab[aria-selected=true]{color:var(--pine-color-text)}.pds-tab.is-active .pds-tab__content::after,.pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tab:hover{color:var(--pine-color-text)}.pds-tab:focus-visible{outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tab .pds-tab__content{font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-medium);letter-spacing:var(--pine-letter-spacing);line-height:var(--pine-line-height-body);-webkit-padding-after:11px;padding-block-end:11px;position:relative}.pds-tab .pds-tab__content::after{background-color:var(--pine-color-brand);content:"";height:3px;inset-block-end:var(--pine-dimension-none);inset-inline-end:var(--pine-dimension-none);inset-inline-start:var(--pine-dimension-none);opacity:0;position:absolute}.pds-tab .pds-tab-edge{display:none}.pds-tabs--availability{--color-background-tab:transparent}.pds-tabs--availability .pds-tab{background-color:var(--color-background-tab);border-radius:calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);padding:8px 16px 13px}.pds-tabs--availability .pds-tab.is-active,.pds-tabs--availability .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-secondary)}.pds-tabs--availability .pds-tab.is-active .pds-tab__content::after,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:1}.pds-tabs--availability .pds-tab.is-active .pds-tab-edge,.pds-tabs--availability .pds-tab[aria-selected=true] .pds-tab-edge{z-index:1}.pds-tabs--availability .pds-tab:hover:not(.is-active,[aria-selected=true]){--color-background-tab:var(--pine-color-secondary-hover)}.pds-tabs--availability .pds-tab:focus-visible{color:var(--pine-color-text-secondary)}.pds-tabs--availability .pds-tab__content{-webkit-padding-after:7px;padding-block-end:7px}.pds-tabs--availability .pds-tab-edge{bottom:0;display:block;height:8px;inset-inline-end:100%;overflow:hidden;position:absolute;width:8px}.pds-tabs--availability .pds-tab-edge::before{border-radius:50%;bottom:0;-webkit-box-shadow:4px 4px 0 0 var(--color-background-tab);box-shadow:4px 4px 0 0 var(--color-background-tab);content:"";display:block;height:200%;inset-inline-end:0;position:absolute;width:200%}.pds-tabs--availability .pds-tab-edge--end{inset-inline-end:unset;inset-inline-start:100%}.pds-tabs--availability .pds-tab-edge--end::before{-webkit-box-shadow:-4px 4px 0 0 var(--color-background-tab);box-shadow:-4px 4px 0 0 var(--color-background-tab);inset-inline-end:unset;inset-inline-start:0}.pds-tabs--filter .pds-tab{background-color:var(--pine-color-background-container-disabled);border-radius:50px;color:var(--pine-color-text);padding:6px 15px}.pds-tabs--filter .pds-tab.is-active,.pds-tabs--filter .pds-tab[aria-selected=true]{background-color:var(--pine-color-primary);color:var(--pine-color-text-primary)}.pds-tabs--filter .pds-tab.is-active:hover,.pds-tabs--filter .pds-tab[aria-selected=true]:hover{background-color:var(--pine-color-primary-hover)}.pds-tabs--filter .pds-tab:hover:not(.is-active,[aria-selected=true]){background-color:var(--pine-color-border-disabled)}.pds-tabs--filter .pds-tab__content{-webkit-padding-after:var(--pine-dimension-none);padding-block-end:var(--pine-dimension-none)}.pds-tabs--filter .pds-tab__content::after{content:unset}.pds-tabs--pill{--color-background-tab:transparent}.pds-tabs--pill .pds-tab{background-color:var(--color-background-tab);border:var(--pine-border-width-thin) solid transparent;border-radius:var(--pine-dimension-xs);color:var(--pine-color-text-readonly);-ms-flex:1;flex:1;height:34px;-ms-flex-pack:center;justify-content:center}.pds-tabs--pill .pds-tab .pds-tab__content{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-webkit-padding-after:0;padding-block-end:0}.pds-tabs--pill .pds-tab.is-active,.pds-tabs--pill .pds-tab[aria-selected=true]{--color-background-tab:var(--pine-color-white);border-color:var(--pine-color-border);-webkit-box-shadow:var(--pine-box-shadow-100);box-shadow:var(--pine-box-shadow-100);color:var(--pine-color-text-active);z-index:1;}.pds-tabs--pill .pds-tab.is-active:focus-visible,.pds-tabs--pill .pds-tab[aria-selected=true]:focus-visible{border-color:var(--color-border-focus);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-tabs--pill .pds-tab.is-active .pds-tab__content::after,.pds-tabs--pill .pds-tab[aria-selected=true] .pds-tab__content::after{opacity:0}';const o=class{constructor(t){e(this,t);this.pdsTabClick=a(this,"pdsTabClick");this.selected=false}onTabClick(e,a){this.pdsTabClick.emit([e,a])}render(){const e=t("span",{key:"f83448bc898dd4e94a7777d23c9565830dff0346",class:"pds-tab-edge",role:"presentation"});const a=t("span",{key:"5ff8d05f4cf140771706e7740c48e658208749dd",class:"pds-tab-edge pds-tab-edge--end",role:"presentation"});return t(i,{key:"874111fb5eedda9d021c8df0dc048aa771141a7c",variant:this.variant,slot:"tabs",index:this.index},t("button",{key:"a72dc4a32de38ae26bdba67cd91028dc955d4349",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"&&e,this.variant==="availability"&&a,t("div",{key:"8e629e15312b7bd93c84d026b8b40f51a87479ca",class:"pds-tab__content"},t("slot",{key:"2296b81a3abdd25cc9eb73d8fed5089466e21fc6"}))))}get el(){return s(this)}};o.style=n;export{o as pds_tab};
2
- //# sourceMappingURL=p-77336705.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTabCss","PdsTab","constructor","hostRef","this","selected","onTabClick","index","parentComponentId","pdsTabClick","emit","render","availabilityTabEdgeInlineStart","h","key","class","role","availabilityTabEdgeInlineEnd","Host","variant","slot","id","name","tabindex","onClick","bind"],"sources":["src/components/pds-tabs/pds-tab/pds-tab.scss?tag=pds-tab","src/components/pds-tabs/pds-tab/pds-tab.tsx"],"sourcesContent":["pds-tab {\n align-items: center;\n display: inline-flex;\n position: relative;\n\n .pds-tabs--pill & {\n flex: 1;\n }\n}\n\n///\n/// Resets base button styles\n///\n@mixin pds-button-style-reset {\n appearance: none;\n background-color: transparent;\n border: var(--pine-border-width-none);\n box-shadow: none;\n color: inherit;\n cursor: pointer;\n font-family: inherit;\n padding: var(--pine-dimension-none);\n}\n\n.pds-tab {\n @include pds-button-style-reset();\n\n align-items: center;\n color: var(--pine-color-text-secondary);\n display: inline-flex;\n position: relative;\n text-decoration: none;\n white-space: nowrap;\n\n &.is-active,\n &[aria-selected='true'] {\n color: var(--pine-color-text);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n }\n\n &:hover {\n color: var(--pine-color-text);\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n .pds-tab__content {\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-medium);\n letter-spacing: var(--pine-letter-spacing);\n line-height: var(--pine-line-height-body);\n padding-block-end: 11px;\n position: relative;\n\n &::after {\n background-color: var(--pine-color-brand);\n content: '';\n height: 3px;\n inset-block-end: var(--pine-dimension-none);\n inset-inline-end: var(--pine-dimension-none);\n inset-inline-start: var(--pine-dimension-none);\n opacity: 0;\n position: absolute;\n }\n }\n\n .pds-tab-edge {\n display: none;\n }\n}\n\n.pds-tabs--availability {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border-radius: calc(var(--pine-dimension-xs) * 1.25) calc(var(--pine-dimension-xs) * 1.25) var(--pine-dimension-none) var(--pine-dimension-none);\n padding: 8px 16px 13px;\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-secondary);\n\n .pds-tab__content::after {\n opacity: 1;\n }\n\n .pds-tab-edge {\n z-index: 1;\n }\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n --color-background-tab: var(--pine-color-secondary-hover);\n }\n\n &:focus-visible {\n color: var(--pine-color-text-secondary);\n }\n }\n\n .pds-tab__content {\n padding-block-end: 7px;\n }\n\n .pds-tab-edge {\n bottom: 0;\n display: block;\n height: 8px;\n inset-inline-end: 100%;\n overflow: hidden;\n position: absolute;\n width: 8px;\n\n &::before {\n border-radius: 50%;\n bottom: 0;\n box-shadow: 4px 4px 0 0 var(--color-background-tab);\n content: '';\n display: block;\n height: 200%;\n inset-inline-end: 0;\n position: absolute;\n width: 200%;\n }\n }\n\n .pds-tab-edge--end {\n inset-inline-end: unset;\n inset-inline-start: 100%;\n\n &::before {\n box-shadow: -4px 4px 0 0 var(--color-background-tab);\n inset-inline-end: unset;\n inset-inline-start: 0;\n }\n }\n}\n\n.pds-tabs--filter {\n .pds-tab {\n background-color: var(--pine-color-background-container-disabled);\n border-radius: 50px;\n color: var(--pine-color-text);\n padding: 6px 15px;\n\n &.is-active,\n &[aria-selected='true'] {\n background-color: var(--pine-color-primary);\n color: var(--pine-color-text-primary);\n }\n\n &.is-active:hover,\n &[aria-selected='true']:hover {\n background-color: var(--pine-color-primary-hover);\n }\n\n &:hover:not(.is-active, [aria-selected='true']) {\n background-color: var(--pine-color-border-disabled);\n }\n }\n\n .pds-tab__content {\n padding-block-end: var(--pine-dimension-none);\n\n &::after {\n content: unset;\n }\n }\n}\n\n.pds-tabs--pill {\n --color-background-tab: transparent;\n\n .pds-tab {\n background-color: var(--color-background-tab);\n border: var(--pine-border-width-thin) solid transparent;\n border-radius: var(--pine-dimension-xs);\n color: var(--pine-color-text-readonly);\n flex: 1;\n height: 34px;\n justify-content: center;\n\n .pds-tab__content {\n align-items: center;\n display: flex;\n justify-content: center;\n padding-block-end: 0;\n }\n\n &.is-active,\n &[aria-selected='true'] {\n --color-background-tab: var(--pine-color-white);\n border-color: var(--pine-color-border);\n box-shadow: var(--pine-box-shadow-100);\n color: var(--pine-color-text-active);\n z-index: 1;\n\n &:focus-visible {\n border-color: var(--color-border-focus);\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n /* stylelint-disable max-nesting-depth */\n .pds-tab__content {\n &::after {\n opacity: 0;\n }\n }\n /* stylelint-enable max-nesting-depth */\n }\n }\n}\n","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"],"mappings":"gEAAA,MAAMA,EAAY,inK,MCOLC,EAAM,MALnB,WAAAC,CAAAC,G,iDAmCUC,KAAQC,SAAG,KAsCpB,CA/BS,UAAAC,CAAWC,EAAOC,GACxBJ,KAAKK,YAAYC,KAAK,CAACH,EAAOC,G,CAGhC,MAAAG,GACE,MAAMC,EACJC,EAAA,QAAAC,IAAA,2CAAMC,MAAM,eAAeC,KAAK,iBAGlC,MAAMC,EACJJ,EAAA,QAAAC,IAAA,2CAAMC,MAAM,iCAAiCC,KAAK,iBAGpD,OACEH,EAACK,EAAI,CAAAJ,IAAA,2CAACK,QAASf,KAAKe,QAASC,KAAK,OAAOb,MAAOH,KAAKG,OACnDM,EAAA,UAAAC,IAAA,2CACEE,KAAK,MACLK,GAAIjB,KAAKI,kBAAoB,KAAOJ,KAAKkB,KAC1B,gBAAAlB,KAAKI,kBAAoB,KAAOJ,KAAKkB,KAAO,SAC3DC,SAAUnB,KAAKC,SAAW,IAAM,KAAI,gBACrBD,KAAKC,SAAW,OAAS,QACxCU,MAAOX,KAAKC,SAAW,oBAAsB,UAC7CmB,QAASpB,KAAKE,WAAWmB,KAAKrB,KAAMA,KAAKG,MAAOH,KAAKI,oBAEpDJ,KAAKe,UAAY,gBAAkBP,EACnCR,KAAKe,UAAY,gBAAkBF,EACpCJ,EAAK,OAAAC,IAAA,2CAAAC,MAAM,oBAAmBF,EAAA,QAAAC,IAAA,+C","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,H as e,g as a}from"./p-BVCWKPy3.js";import{e as o,d as l}from"./p-DrJ5r5Pu.js";const n=":host{--border-head-cell-default:var(--pine-border-width-thin) solid var(--pine-color-grey-100);--box-shadow-default:3px 3px 6px -2px rgba(0, 0, 0, 0.1);-webkit-border-after:var(--border-head-cell-default);border-block-end:var(--border-head-cell-default);color:var(--pine-color-text);display:table-cell;font-family:var(--pine-font-family-body);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-150);position:relative;text-align:start;vertical-align:inherit}:host(.is-compact){padding-block:var(--pine-dimension-2xs)}:host(.is-fixed){background:var(--pine-color-background-container);left:var(--pine-dimension-none);position:-webkit-sticky;position:sticky;z-index:1}:host(.has-scrolled.is-fixed){-webkit-box-shadow:var(--box-shadow-default);box-shadow:var(--box-shadow-default)}:host(.is-sortable){cursor:pointer}:host(.is-sortable) pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs);-webkit-padding-before:2px;padding-block-start:2px;position:absolute}:host(.is-sortable:hover),:host(.is-active){color:var(--pine-color-text-active)}:host(.pds-table-head-cell--align-start){text-align:start}:host(.pds-table-head-cell--align-center){text-align:center}:host(.pds-table-head-cell--align-end){text-align:end}:host(.pds-table-head-cell--align-justify){text-align:justify}";const r=class{constructor(s){t(this,s);this.pdsTableSort=i(this,"pdsTableSort");this.scrollContainer=null;this.setupRetries=0;this.sortingDirection="asc";this.tableScrolling=false;this.isSelected=false;this.handleScroll=()=>{if(!this.scrollContainer){return}try{this.tableScrolling=this.scrollContainer.scrollLeft>0}catch(t){console.warn("Scroll handler error:",t)}};this.toggleSort=()=>{if(this.sortable){const t=this.hostElement.innerText.trim();this.sortingDirection=this.sortingDirection==="asc"?"desc":"asc";this.tableRef.querySelectorAll("pds-table-head-cell").forEach((t=>{t.classList.remove("is-active")}));this.hostElement.classList.toggle("is-active");this.pdsTableSort.emit({column:t,direction:this.sortingDirection})}}}componentWillRender(){this.tableRef=this.hostElement.closest("pds-table")}componentDidLoad(){if(this.tableRef&&this.tableRef.responsive&&this.tableRef.fixedColumn){this.setupScrollListener()}}disconnectedCallback(){this.cleanupScrollListener()}setupScrollListener(){var t;if(!this.tableRef)return;const i=(t=this.tableRef.shadowRoot)===null||t===void 0?void 0:t.querySelector(".pds-table-responsive-container");if(i){this.scrollContainer=i;this.scrollContainer.addEventListener("scroll",this.handleScroll,{passive:true});this.handleScroll();this.setupRetries=0}else{this.setupTimer=window.setTimeout((()=>{if(this.scrollContainer)return;this.setupRetries=(this.setupRetries||0)+1;if(this.setupRetries<=50){this.setupScrollListener()}else{console.warn("Failed to find responsive container after 50 attempts")}}),100)}}cleanupScrollListener(){if(this.scrollContainer){this.scrollContainer.removeEventListener("scroll",this.handleScroll);this.scrollContainer=null}if(this.setupTimer!==undefined){window.clearTimeout(this.setupTimer);this.setupTimer=undefined}this.setupRetries=0}classNames(){const t=[];if(this.tableRef&&this.tableRef.compact){t.push("is-compact")}if(this.cellAlign){t.push(`pds-table-head-cell--align-${this.cellAlign}`)}if(this.sortable){t.push("is-sortable")}if(this.sortable&&this.sortingDirection!==null){t.push("sort-"+this.sortingDirection)}if(this.tableRef&&this.tableRef.fixedColumn&&this.tableScrolling){t.push("has-scrolled")}return t.join(" ")}render(){return s(e,{key:"f3b04da28997f6f471f6945e0cfac098dc1a6428",class:this.classNames(),role:"columnheader",onClick:this.toggleSort,part:"head-cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},s("slot",{key:"832373d831d5f250f7427bf0a1f2756e0ce56ea9"}),this.sortable&&s("pds-icon",{key:"1886880fa50da3415b80a0abd8d571ca7350ca23",icon:this.sortingDirection==="asc"?o:l,part:"sort-icon"}))}get hostElement(){return a(this)}};r.style=n;export{r as pds_table_head_cell};
2
- //# sourceMappingURL=p-7cb4f0de.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsTableHeadCellCss","PdsTableHeadCell","constructor","hostRef","this","scrollContainer","setupRetries","sortingDirection","tableScrolling","isSelected","handleScroll","scrollLeft","error","console","warn","toggleSort","sortable","column","hostElement","innerText","trim","tableRef","querySelectorAll","forEach","headCell","classList","remove","toggle","pdsTableSort","emit","direction","componentWillRender","closest","componentDidLoad","responsive","fixedColumn","setupScrollListener","disconnectedCallback","cleanupScrollListener","container","_a","shadowRoot","querySelector","addEventListener","passive","setupTimer","window","setTimeout","removeEventListener","undefined","clearTimeout","classNames","compact","push","cellAlign","join","render","h","Host","key","class","role","onClick","part","style","selectable","icon","upSmall","downSmall"],"sources":["src/components/pds-table/pds-table-head-cell/pds-table-head-cell.scss?tag=pds-table-head-cell&encapsulation=shadow","src/components/pds-table/pds-table-head-cell/pds-table-head-cell.tsx"],"sourcesContent":[":host {\n --border-head-cell-default: var(--pine-border-width-thin) solid var(--pine-color-grey-100);\n\n --box-shadow-default: 3px 3px 6px -2px rgba(0, 0, 0, 0.1);\n\n border-block-end: var(--border-head-cell-default);\n color: var(--pine-color-text);\n display: table-cell;\n font-family: var(--pine-font-family-body);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-150);\n position: relative;\n text-align: start;\n vertical-align: inherit;\n}\n\n:host(.is-compact) {\n padding-block: var(--pine-dimension-2xs)\n}\n\n:host(.is-fixed) {\n background: var(--pine-color-background-container);\n left: var(--pine-dimension-none);\n position: sticky;\n z-index: 1;\n}\n\n// box shadow when table has scrolled and cell is fixed\n:host(.has-scrolled.is-fixed) {\n box-shadow: var(--box-shadow-default);\n}\n\n:host(.is-sortable) {\n cursor: pointer;\n\n pds-icon {\n margin-inline-start: var(--pine-dimension-2xs);\n padding-block-start: 2px;\n position: absolute;\n }\n}\n\n:host(.is-sortable:hover),\n:host(.is-active) {\n color: var(--pine-color-text-active);\n}\n\n// Text Alignment\n:host(.pds-table-head-cell--align-start) {\n text-align: start;\n}\n\n:host(.pds-table-head-cell--align-center) {\n text-align: center;\n}\n\n:host(.pds-table-head-cell--align-end) {\n text-align: end;\n}\n\n:host(.pds-table-head-cell--align-justify) {\n text-align: justify;\n}\n","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"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r,c as o,h as t,H as e,g as n}from"./p-BVCWKPy3.js";import{h as i}from"./p-tJa4KYNO.js";import{b as d}from"./p-DrJ5r5Pu.js";const s=":host{--pds-button-background:var(--color-background-default);--pds-button-border:var(--pine-border);--pds-button-border-radius:var(--pine-border-radius-full);--pds-button-border-radius-start-end:var(--pine-border-radius-full);--pds-button-border-radius-start-start:var(--pine-border-radius-full);--pds-button-border-radius-end-end:var(--pine-border-radius-full);--pds-button-border-radius-end-start:var(--pine-border-radius-full);--pds-button-min-height:var(--pine-dimension-450);--color-border-default:transparent;--color-border-disabled:transparent;--color-border-focus:transparent;--color-border-hover:transparent;--button-loader-color:var(--color-text-default);display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}:host([full-width=true]){display:-ms-flexbox;display:flex;width:100%}:host([full-width=true]) a,:host([full-width=true]) button{-ms-flex-pack:center;justify-content:center;width:100%}:host([full-width=true]) .pds-button__content{-ms-flex-pack:center;justify-content:center;text-align:center}:host([loading=true]){cursor:wait;pointer-events:none}:host([disabled=true]){pointer-events:none}.pds-button{--pds-loader-color:var(--color-text-default);-ms-flex-align:center;align-items:center;background-color:var(--pds-button-background, var(--color-background-default));border:var(--pds-button-border);border-color:var(--color-border-default);border-end-end-radius:var(--pds-button-border-radius-end-end, var(--pds-button-border-radius));border-end-start-radius:var(--pds-button-border-radius-end-start, var(--pds-button-border-radius));border-radius:var(--pds-button-border-radius);border-start-end-radius:var(--pds-button-border-radius-start-end, var(--pds-button-border-radius));border-start-start-radius:var(--pds-button-border-radius-start-start, var(--pds-button-border-radius));-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--color-text-default);cursor:pointer;display:-ms-flexbox;display:flex;font:var(--pine-typography-body-brand-label);letter-spacing:var(--pine-letter-spacing);min-height:var(--pds-button-min-height);padding:calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-sm);position:relative;text-decoration:none}.pds-button pds-icon{color:currentColor;fill:currentColor}.pds-button:hover{background-color:var(--color-background-hover);border-color:var(--color-border-hover)}.pds-button:focus-visible{border-color:var(--color-border-focus);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}.pds-button:disabled{background-color:var(--color-background-disabled);border-color:var(--color-border-disabled);color:var(--color-text-disabled);pointer-events:none}.pds-button--primary{--color-background-default:var(--pine-color-primary);--color-background-hover:var(--pine-color-primary-hover);--color-background-disabled:var(--pine-color-primary-disabled);--color-border-default:var(--pine-color-primary);--color-border-hover:var(--pine-color-primary-hover);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-primary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--accent{--color-background-default:var(--pine-color-accent);--color-background-hover:var(--pine-color-accent-hover);--color-background-disabled:var(--pine-color-accent-disabled);--color-border-default:var(--pine-color-accent);--color-border-hover:var(--pine-color-accent-hover);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-accent-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive{--color-background-default:var(--pine-color-danger);--color-background-hover:var(--pine-color-danger-hover);--color-background-disabled:var(--pine-color-danger-disabled);--color-border-default:var(--pine-color-danger);--color-border-hover:var(--pine-color-danger-hover);--color-text-default:var(--pine-color-text-primary);--color-text-disabled:var(--pine-color-text-danger-disabled);--color-outline:var(--pine-color-focus-ring-danger);--button-loader-color:var(--pine-color-text-primary)}.pds-button--destructive:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-button--secondary,.pds-button--disclosure{--color-background-default:var(--pine-color-secondary);--color-background-hover:var(--pine-color-secondary-hover);--color-background-disabled:var(--pine-color-secondary-disabled);--color-border-disabled:var(--pine-color-border-disabled);--color-border-focus:var(--pine-color-border);--color-border-hover:var(--pine-color-border-hover);--color-border-default:var(--pine-color-border);--color-text-default:var(--pine-color-text-secondary);--color-text-disabled:var(--pine-color-text-secondary-disabled);--color-outline:var(--pine-color-focus-ring);--button-loader-color:var(--pine-color-text-secondary)}.pds-button--secondary:hover,.pds-button--disclosure:hover{background-color:var(--pine-color-secondary-hover)}.pds-button--unstyled{--color-background-default:transparent;--color-background-hover:transparent;--color-background-disabled:transparent;--color-text-default:inherit;--button-loader-color:inherit;border-width:var(--pine-dimension-none);margin:var(--pine-dimension-none);min-height:auto;padding:var(--pine-dimension-none);width:inherit}.pds-button__content{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;gap:var(--pine-dimension-xs);position:relative;width:100%}.pds-button__icon{display:-ms-inline-flexbox;display:inline-flex}.pds-button__text{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;white-space:nowrap}.pds-button__icon--hidden,.pds-button__text--hidden{opacity:0}.pds-button__loader{height:var(--pine-dimension-250);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:var(--pine-dimension-250)}.pds-button--loading{cursor:wait;pointer-events:none}.pds-button--loading .pds-button__loader pds-loader{--loader-color:var(--button-loader-color)}.pds-button--icon-only{-ms-flex-align:center;align-items:center;border-radius:var(--pine-border-radius-full);height:var(--button-dimension);-ms-flex-pack:center;justify-content:center;min-height:var(--button-dimension);min-width:var(--button-dimension);padding:var(--pine-dimension-xs);width:var(--button-dimension)}.pds-button--icon-only .pds-button__content{height:100%;-ms-flex-pack:center;justify-content:center;width:100%}.pds-button--icon-only .pds-button__text--hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";const a=class{constructor(t){r(this,t);this.pdsClick=o(this,"pdsClick");this.disabled=false;this.fullWidth=false;this.icon=null;this.iconOnly=false;this.loading=false;this.type="button";this.variant="primary";this.handleClick=r=>{if(this.loading){r.preventDefault();return}if(this.disabled){r.preventDefault();return}if(!this.href&&this.type!="button"){if(i(this.el)){const o=this.el.closest("form");if(o){r.preventDefault();const t=document.createElement("button");t.type=this.type;t.style.display="none";o.appendChild(t);t.click();t.remove()}}}this.pdsClick.emit(r)}}handleFormKeyDown(r){if(r.key!=="Enter"||this.type!=="submit"||this.href||this.disabled){return}const o=r.target;if(!o||typeof o.matches!=="function"){return}const t=this.el.closest("form");if(!t||!o||!t.contains(o)){return}const e=o.matches('input:not([type="submit"]):not([type="button"]):not([type="reset"])')||o.matches("pds-input")||o.matches("pds-select")||o.matches("pds-switch")||o.matches("pds-checkbox")||o.matches("pds-radio");if(e){const o=Array.from(t.querySelectorAll('pds-button, button[type="submit"], input[type="submit"]'));const e=o.filter((r=>{if(r.tagName.toLowerCase()==="pds-button"){const o=r;return o.type==="submit"&&!o.disabled}else{return!r.hasAttribute("disabled")}}));if(e.length>0&&e[0]===this.el){r.preventDefault();this.el.click()}}}classNames(){const r=["pds-button"];if(this.variant){r.push("pds-button--"+this.variant)}if(this.iconOnly){r.push("pds-button--icon-only")}if(this.loading){r.push("pds-button--loading")}return r.join(" ")}hasSlotContent(r){const o=this.el.querySelectorAll(`[slot="${r}"]`);return o.length>0}renderStartContent(){const r=this.icon&&this.variant!=="disclosure";const o=this.hasSlotContent("start");if(Boolean(r)){return t("pds-icon",{class:this.loading?"pds-button__icon--hidden":"",name:this.icon,part:"icon","aria-hidden":"true"})}else if(Boolean(o)){return t("span",{class:`pds-button__icon ${this.loading?"pds-button__icon--hidden":""}`},t("slot",{name:"start"}))}return null}renderEndContent(){if(this.iconOnly){return null}if(this.variant==="disclosure"){return t("pds-icon",{class:this.loading?"pds-button__icon--hidden":"",icon:d,part:"caret","aria-hidden":"true"})}else if(this.hasSlotContent("end")){return t("span",{class:`pds-button__icon ${this.loading?"pds-button__icon--hidden":""}`},t("slot",{name:"end"}))}return null}render(){const r={class:this.classNames(),part:"button"};const o=()=>{if(this.href){return Object.assign(Object.assign({},r),{href:this.disabled?null:this.href,target:this.target})}return Object.assign(Object.assign({},r),{"aria-busy":this.loading?"true":null,"aria-live":this.loading?"polite":null,disabled:this.disabled,name:this.name,type:this.type,value:this.value})};const n=this.href?"a":"button";const i=this.loading||this.iconOnly;const d=t("div",{class:"pds-button__content",part:"button-content"},this.renderStartContent(),t("span",{class:`pds-button__text ${i?"pds-button__text--hidden":""}`,part:"button-text"},t("slot",null)),this.loading&&t("span",{class:"pds-button__loader"},t("pds-loader",{"is-loading":true,size:"var(--pine-font-size-body-2xl)",variant:"spinner",exportparts:"loader-svg"},"Loading...")),this.renderEndContent());return t(e,{"aria-disabled":this.disabled?"true":null,id:this.componentId,onClick:this.handleClick,variant:this.variant},t(n,Object.assign({},o()),d))}get el(){return n(this)}};a.style=s;export{a as pds_button};
2
- //# sourceMappingURL=p-84949a12.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsButtonCss","PdsButton","constructor","hostRef","this","disabled","fullWidth","icon","iconOnly","loading","type","variant","handleClick","ev","preventDefault","href","hasShadowDom","el","form","closest","fakeButton","document","createElement","style","display","appendChild","click","remove","pdsClick","emit","handleFormKeyDown","event","key","target","matches","contains","isFormInput","allSubmitButtons","Array","from","querySelectorAll","enabledSubmitButtons","filter","button","tagName","toLowerCase","pdsButton","hasAttribute","length","classNames","push","join","hasSlotContent","slotName","elements","renderStartContent","hasIcon","hasStartSlot","Boolean","h","class","name","part","renderEndContent","caretDown","render","commonProps","attributes","Object","assign","value","ContentElement","hideText","content","size","exportparts","Host","id","componentId","onClick"],"sources":["src/components/pds-button/pds-button.scss?tag=pds-button&encapsulation=shadow","src/components/pds-button/pds-button.tsx"],"sourcesContent":[":host {\n --pds-button-background: var(--color-background-default);\n --pds-button-border: var(--pine-border);\n --pds-button-border-radius: var(--pine-border-radius-full);\n --pds-button-border-radius-start-end: var(--pine-border-radius-full);\n --pds-button-border-radius-start-start: var(--pine-border-radius-full);\n --pds-button-border-radius-end-end: var(--pine-border-radius-full);\n --pds-button-border-radius-end-start: var(--pine-border-radius-full);\n --pds-button-min-height: var(--pine-dimension-450);\n --color-border-default: transparent;\n --color-border-disabled: transparent;\n --color-border-focus: transparent;\n --color-border-hover: transparent;\n --button-loader-color: var(--color-text-default);\n\n display: inline-flex;\n vertical-align: middle;\n}\n\n:host([full-width=\"true\"]) {\n display: flex;\n width: 100%;\n\n a,\n button {\n justify-content: center;\n width: 100%;\n }\n\n .pds-button__content {\n justify-content: center;\n text-align: center;\n }\n}\n\n:host([loading=\"true\"]) {\n cursor: wait;\n pointer-events: none;\n}\n\n:host([disabled=\"true\"]) {\n pointer-events: none;\n}\n\n.pds-button {\n --pds-loader-color: var(--color-text-default);\n align-items: center;\n background-color: var(--pds-button-background, var(--color-background-default));\n border: var(--pds-button-border);\n border-color: var(--color-border-default);\n border-end-end-radius: var(--pds-button-border-radius-end-end, var(--pds-button-border-radius));\n border-end-start-radius: var(--pds-button-border-radius-end-start, var(--pds-button-border-radius));\n border-radius: var(--pds-button-border-radius);\n border-start-end-radius: var(--pds-button-border-radius-start-end, var(--pds-button-border-radius));\n border-start-start-radius: var(--pds-button-border-radius-start-start, var(--pds-button-border-radius));\n box-sizing: border-box;\n color: var(--color-text-default);\n cursor: pointer;\n display: flex;\n font: var(--pine-typography-body-brand-label);\n letter-spacing: var(--pine-letter-spacing);\n min-height: var(--pds-button-min-height);\n padding: calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-sm);\n position: relative;\n text-decoration: none;\n\n pds-icon {\n color: currentColor;\n fill: currentColor;\n }\n\n &:hover {\n background-color: var(--color-background-hover);\n border-color: var(--color-border-hover);\n }\n\n &:focus-visible {\n border-color: var(--color-border-focus);\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n &:disabled {\n background-color: var(--color-background-disabled);\n border-color: var(--color-border-disabled);\n color: var(--color-text-disabled);\n pointer-events: none;\n }\n}\n\n.pds-button--primary {\n --color-background-default: var(--pine-color-primary);\n --color-background-hover: var(--pine-color-primary-hover);\n --color-background-disabled: var(--pine-color-primary-disabled);\n --color-border-default: var(--pine-color-primary);\n --color-border-hover: var(--pine-color-primary-hover);\n --color-text-default: var(--pine-color-text-primary);\n --color-text-disabled: var(--pine-color-text-primary-disabled);\n --color-outline: var(--pine-color-focus-ring);\n --button-loader-color: var(--pine-color-text-primary);\n}\n\n.pds-button--accent {\n --color-background-default: var(--pine-color-accent);\n --color-background-hover: var(--pine-color-accent-hover);\n --color-background-disabled: var(--pine-color-accent-disabled);\n --color-border-default: var(--pine-color-accent);\n --color-border-hover: var(--pine-color-accent-hover);\n --color-text-default: var(--pine-color-text-primary);\n --color-text-disabled: var(--pine-color-text-accent-disabled);\n --color-outline: var(--pine-color-focus-ring);\n --button-loader-color: var(--pine-color-text-primary);\n}\n\n.pds-button--destructive {\n --color-background-default: var(--pine-color-danger);\n --color-background-hover: var(--pine-color-danger-hover);\n --color-background-disabled: var(--pine-color-danger-disabled);\n --color-border-default: var(--pine-color-danger);\n --color-border-hover: var(--pine-color-danger-hover);\n --color-text-default: var(--pine-color-text-primary);\n --color-text-disabled: var(--pine-color-text-danger-disabled);\n --color-outline: var(--pine-color-focus-ring-danger);\n --button-loader-color: var(--pine-color-text-primary);\n\n &:focus-visible {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n}\n\n.pds-button--secondary,\n.pds-button--disclosure {\n --color-background-default: var(--pine-color-secondary);\n --color-background-hover: var(--pine-color-secondary-hover);\n --color-background-disabled: var(--pine-color-secondary-disabled);\n --color-border-disabled: var(--pine-color-border-disabled);\n --color-border-focus: var(--pine-color-border);\n --color-border-hover: var(--pine-color-border-hover);\n --color-border-default: var(--pine-color-border);\n --color-text-default: var(--pine-color-text-secondary);\n --color-text-disabled: var(--pine-color-text-secondary-disabled);\n --color-outline: var(--pine-color-focus-ring);\n --button-loader-color: var(--pine-color-text-secondary);\n\n &:hover {\n background-color: var(--pine-color-secondary-hover);\n }\n}\n\n.pds-button--unstyled {\n --color-background-default: transparent;\n --color-background-hover: transparent;\n --color-background-disabled: transparent;\n --color-text-default: inherit;\n --button-loader-color: inherit;\n border-width: var(--pine-dimension-none);\n margin: var(--pine-dimension-none);\n min-height: auto;\n padding: var(--pine-dimension-none);\n width: inherit;\n}\n\n.pds-button__content {\n align-items: center;\n display: inline-flex;\n gap: var(--pine-dimension-xs);\n position: relative;\n width: 100%;\n}\n\n.pds-button__icon {\n display: inline-flex;\n}\n\n.pds-button__text {\n align-items: center;\n display: inline-flex;\n white-space: nowrap;\n}\n\n.pds-button__icon--hidden,\n.pds-button__text--hidden {\n opacity: 0;\n}\n\n.pds-button__loader {\n height: var(--pine-dimension-250);\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: var(--pine-dimension-250);\n}\n\n.pds-button--loading {\n cursor: wait;\n pointer-events: none;\n\n .pds-button__loader {\n pds-loader {\n --loader-color: var(--button-loader-color);\n }\n }\n}\n\n.pds-button--icon-only {\n align-items: center;\n border-radius: var(--pine-border-radius-full);\n height: var(--button-dimension);\n justify-content: center;\n min-height: var(--button-dimension);\n min-width: var(--button-dimension);\n padding: var(--pine-dimension-xs);\n width: var(--button-dimension);\n\n .pds-button__content {\n height: 100%;\n justify-content: center;\n width: 100%;\n }\n\n .pds-button__text--hidden {\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: polygon(0 0, 0 0, 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Listen, Prop } from '@stencil/core';\nimport { hasShadowDom } from '../../utils/utils';\n\nimport { caretDown } from '@pine-ds/icons/icons';\n\n/**\n * @part button - Exposes the button element for styling.\n * @part button-content - Exposes the button content for styling.\n * @part button-text - Exposes the button text for styling.\n * @part caret - Exposes the caret icon component for styling. Appears only on the disclosure variant.\n * @part icon - Exposes the icon component for styling.\n * @part loader-svg - Exposes the loader SVG element for color customization. Appears only when loading.\n * @slot (default) - Button text.\n * @slot start - Content to display before the button text.\n * @slot end - Content to display after the button text.\n*/\n\n@Component({\n tag: 'pds-button',\n styleUrls: ['pds-button.scss'],\n shadow: true,\n})\nexport class PdsButton {\n @Element() el: HTMLPdsButtonElement;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines the button's disabled state.\n * @defaultValue false\n */\n @Prop() disabled? = false;\n\n /**\n * Determines if the button should take up the full width of its container.\n * @defaultValue false\n */\n @Prop() fullWidth? = false;\n\n /**\n * If provided, renders the component as an anchor (`<a>`) element instead of a button.\n * When using href, button-specific props (type, name, value, loading) will be ignored.\n */\n @Prop() href?: string;\n\n /**\n * Displays a leading icon in the button. DEPRECATED.\n * @defaultValue null\n * @deprecated Use `start` slot instead.\n */\n @Prop() icon?: string = null;\n\n /**\n * When true, displays only the icon and visually hides the text (keeping it accessible).\n */\n @Prop() iconOnly? = false;\n\n /**\n * Determines if the button is in a loading state.\n * When true, displays a loader and hides the button text.\n * @defaultValue false\n */\n @Prop() loading? = false;\n\n /**\n * Provides the button with a submittable name.\n */\n @Prop() name?: string;\n\n /**\n * Specifies where to open the linked document when href is provided.\n * Only applies when href is set.\n */\n @Prop() target?: '_blank' | '_self' | '_parent' | '_top';\n\n /**\n * Provides button with a type.\n * @defaultValue button\n */\n @Prop() type?: 'button' | 'reset' | 'submit' = 'button';\n\n /**\n * Provides button with a submittable value\n */\n @Prop() value?: string;\n\n /**\n * Sets the style variant of the button.\n * @defaultValue primary\n */\n @Prop() variant: 'primary' | 'secondary' | 'accent' | 'disclosure' | 'destructive' | 'unstyled' = 'primary';\n\n @Event() pdsClick: EventEmitter;\n\n /**\n * Listen for Enter key presses on form inputs to trigger submit\n */\n @Listen('keydown', { target: 'body' })\n\n handleFormKeyDown(event: KeyboardEvent) {\n // Only handle Enter key for submit buttons that are not disabled\n if (event.key !== 'Enter' || this.type !== 'submit' || this.href || this.disabled) {\n return;\n }\n\n const target = event.target as Element;\n\n // Ensure event.target is an Element with matches method before proceeding\n if (!target || typeof target.matches !== 'function') {\n return;\n }\n const form = this.el.closest('form');\n\n // Check if the Enter key was pressed in a form input within the same form\n if (!form || !target || !form.contains(target)) {\n return;\n }\n\n // Check if target is a form input element (exclude reset buttons)\n const isFormInput = target.matches('input:not([type=\"submit\"]):not([type=\"button\"]):not([type=\"reset\"])') ||\n target.matches('pds-input') ||\n target.matches('pds-select') ||\n target.matches('pds-switch') ||\n target.matches('pds-checkbox') ||\n target.matches('pds-radio');\n\n if (isFormInput) {\n // Find all submit buttons in the form and check their actual properties\n const allSubmitButtons = Array.from(form.querySelectorAll('pds-button, button[type=\"submit\"], input[type=\"submit\"]'));\n const enabledSubmitButtons = allSubmitButtons.filter(button => {\n if (button.tagName.toLowerCase() === 'pds-button') {\n const pdsButton = button as HTMLPdsButtonElement;\n return pdsButton.type === 'submit' && !pdsButton.disabled;\n } else {\n return !button.hasAttribute('disabled');\n }\n });\n\n // Only synthesize click if this button is strictly the first enabled submit button\n if (enabledSubmitButtons.length > 0 && enabledSubmitButtons[0] === this.el) {\n event.preventDefault();\n this.el.click();\n }\n }\n }\n\n\n private handleClick = (ev: Event) => {\n if (this.loading) {\n ev.preventDefault();\n return;\n }\n\n // Prevent form submission for disabled buttons\n if (this.disabled) {\n ev.preventDefault();\n return;\n }\n\n if (!this.href && this.type != 'button') {\n // Handle form submission for Shadow DOM buttons\n if (hasShadowDom(this.el)) {\n const form = this.el.closest('form');\n if (form) {\n ev.preventDefault();\n\n const fakeButton = document.createElement('button');\n fakeButton.type = this.type;\n fakeButton.style.display = 'none';\n form.appendChild(fakeButton);\n fakeButton.click();\n fakeButton.remove();\n }\n }\n }\n this.pdsClick.emit(ev);\n };\n\n private classNames() {\n const classNames = ['pds-button'];\n\n if (this.variant) {\n classNames.push('pds-button--' + this.variant);\n }\n\n if (this.iconOnly) {\n classNames.push('pds-button--icon-only');\n }\n\n if (this.loading) {\n classNames.push('pds-button--loading');\n }\n\n return classNames.join(' ');\n }\n\n private hasSlotContent(slotName: string): boolean {\n const elements = this.el.querySelectorAll(`[slot=\"${slotName}\"]`);\n return elements.length > 0;\n }\n\n private renderStartContent() {\n const hasIcon = this.icon && this.variant !== 'disclosure';\n const hasStartSlot = this.hasSlotContent('start');\n\n if (Boolean(hasIcon)) {\n return (\n <pds-icon class={this.loading ? 'pds-button__icon--hidden' : ''} name={this.icon} part=\"icon\" aria-hidden=\"true\"></pds-icon>\n );\n } else if (Boolean(hasStartSlot)) {\n return <span class={`pds-button__icon ${this.loading ? 'pds-button__icon--hidden' : ''}`}><slot name=\"start\" /></span>;\n }\n\n return null;\n }\n\n private renderEndContent() {\n if (this.iconOnly) {\n return null;\n }\n\n if (this.variant === 'disclosure') {\n return (\n <pds-icon class={this.loading ? 'pds-button__icon--hidden' : ''} icon={caretDown} part=\"caret\" aria-hidden=\"true\"></pds-icon>\n );\n } else if (this.hasSlotContent('end')) {\n return <span class={`pds-button__icon ${this.loading ? 'pds-button__icon--hidden' : ''}`}><slot name=\"end\" /></span>;\n }\n\n return null;\n }\n\n render() {\n // Common props for both button and anchor elements\n const commonProps = {\n class: this.classNames(),\n part: 'button',\n };\n\n const attributes = () => {\n if (this.href) {\n return {\n // Anchor element props\n ...commonProps,\n href: this.disabled ? null : this.href,\n target: this.target,\n };\n }\n\n return {\n // Button element props\n ...commonProps,\n 'aria-busy': this.loading ? 'true' : null,\n 'aria-live': this.loading ? 'polite' : null,\n 'disabled': this.disabled,\n 'name': this.name,\n 'type': this.type,\n 'value': this.value,\n };\n };\n\n const ContentElement = this.href ? 'a' : 'button';\n\n // Hide text when loading or iconOnly is true\n const hideText = this.loading || this.iconOnly;\n\n const content = (\n <div class=\"pds-button__content\" part=\"button-content\">\n {this.renderStartContent()}\n\n <span class={`pds-button__text ${hideText ? 'pds-button__text--hidden' : ''}`} part=\"button-text\">\n <slot />\n </span>\n\n {this.loading && (\n <span class=\"pds-button__loader\">\n <pds-loader is-loading={true} size=\"var(--pine-font-size-body-2xl)\" variant=\"spinner\" exportparts=\"loader-svg\">\n Loading...\n </pds-loader>\n </span>\n )}\n\n {this.renderEndContent()}\n </div>\n );\n\n return (\n <Host\n aria-disabled={this.disabled ? 'true' : null}\n id={this.componentId}\n onClick={this.handleClick}\n variant={this.variant}\n >\n <ContentElement {...attributes()}>\n {content}\n </ContentElement>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- System.register(["./p-B_C-mRjx.system.js","./p-BG7_qxVr.system.js","./p-BEn3hirk.system.js"],(function(e){"use strict";var i,r,s,t,n,a,o,l;return{setters:[function(e){i=e.r;r=e.c;s=e.h;t=e.H;n=e.g},function(e){a=e.m},function(e){o=e.f;l=e.g}],execute:function(){var d=":host{--pine-select-color-background-danger:var(--pine-color-red-050)}";var c=":host{display:inline-block}:host([aria-disabled=true]) label{color:var(--pine-color-text-label-disabled)}:host([aria-readonly=true]) label{color:var(--pine-color-text-label-readonly)}label{color:var(--pine-color-text-label);font:var(--pine-typography-body-medium);letter-spacing:var(--pine-letter-spacing)}";var p=':host{--pds-select-background:var(--pine-color-background-container);--pds-select-border:var(--pine-border);--pds-select-border-radius:var(--pine-dimension-125);--pds-select-border-radius-start-end:var(--pine-dimension-125);--pds-select-border-radius-start-start:var(--pine-dimension-125);--pds-select-border-radius-end-end:var(--pine-dimension-125);--pds-select-border-radius-end-start:var(--pine-dimension-125);--pds-select-min-height:36px;--box-shadow-focus:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);--box-shadow-focus-error:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring-danger)}:host .hidden,:host :host([hidden]){display:none}.pds-select{display:grid;-ms-flex-direction:column;flex-direction:column;grid-template-areas:"label label" "field field" "message message";grid-template-columns:1fr minmax(2rem, -webkit-min-content);grid-template-columns:1fr minmax(2rem, min-content);grid-template-rows:-webkit-min-content -webkit-min-content -webkit-min-content;grid-template-rows:min-content min-content min-content;position:relative;width:100%}.pds-select__label-wrapper{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;grid-area:label;-ms-flex-pack:justify;justify-content:space-between;-webkit-margin-after:var(--pine-dimension-2xs);margin-block-end:var(--pine-dimension-2xs)}.pds-select__action{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;gap:var(--pine-dimension-xs);-webkit-margin-start:var(--pine-dimension-xs);margin-inline-start:var(--pine-dimension-xs)}label{-webkit-margin-after:var(--pine-dimension-2xs);margin-block-end:var(--pine-dimension-2xs)}.pds-select__label-wrapper label{-webkit-margin-after:0;margin-block-end:0}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--pds-select-background);border:var(--pds-select-border);border-radius:var(--pds-select-border-radius);border-bottom-left-radius:var(--pds-select-border-radius-end-start, var(--pds-select-border-radius));border-bottom-right-radius:var(--pds-select-border-radius-end-end, var(--pds-select-border-radius));border-top-left-radius:var(--pds-select-border-radius-start-start, var(--pds-select-border-radius));border-top-right-radius:var(--pds-select-border-radius-start-end, var(--pds-select-border-radius));font:var(--pine-typography-body);grid-area:field;letter-spacing:var(--pine-letter-spacing);min-height:var(--pds-select-min-height);padding:calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-150);-webkit-padding-end:var(--pine-dimension-450);padding-inline-end:var(--pine-dimension-450);position:relative}select:hover{border-color:var(--pine-color-border-hover);cursor:pointer}select:focus-visible{border-color:var(--pine-color-border-active);outline:var(--pine-outline-focus);outline-offset:var(--pine-border-width)}select:disabled{background-color:var(--pine-color-background-container-disabled);border-color:var(--pine-color-border-disabled);color:var(--pine-color-text-disabled);cursor:not-allowed}select:has(~.pds-select__message .pds-select__error-message){background-color:var(--pine-select-color-background-danger);border-color:var(--pine-color-border-danger)}select:has(~.pds-select__message .pds-select__error-message):focus-visible{outline-color:var(--pine-color-focus-ring-danger)}:host(.is-invalid) select{background-color:var(--pine-select-color-background-danger);border-color:var(--pine-color-border-danger)}:host(.is-invalid) select:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}.pds-select__error-message,.pds-select__helper-message{color:var(--pine-color-text-message);font:var(--pine-typography-body-sm-medium);-webkit-margin-after:0;margin-block-end:0;-webkit-margin-before:var(--pine-dimension-2xs);margin-block-start:var(--pine-dimension-2xs)}.pds-select__error-message{-ms-flex-align:center;align-items:center;color:var(--pine-color-text-message-danger);display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-select__message{grid-area:message}.pds-select__select-icon{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;grid-column:-1/-2;grid-row:2/3;height:var(--pds-select-min-height);pointer-events:none;position:relative;z-index:1}.visually-hidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:polygon(0 0, 0 0, 0 0);clip-path:polygon(0 0, 0 0, 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}';var f=e("pds_select",function(){function e(e){var s=this;i(this,e);this.pdsSelectChange=r(this,"pdsSelectChange");this.disabled=false;this.multiple=false;this.required=false;this.onSelectUpdate=function(e){var i=e.target;var r=Array.from(i.options).filter((function(e){return e.selected})).map((function(e){return e.value}));if(r.length===1&&!s.multiple){s.value=r[0]}else{s.value=r}s.pdsSelectChange.emit(e)};this.handleSlotChange=function(){var e=s.slotContainer.querySelector("slot");s.selectEl.innerHTML="";var i=e.assignedElements({flatten:true});i.forEach((function(e){if(["OPTION","OPTGROUP"].includes(e.tagName)){var i=e.cloneNode(true);if(i.tagName==="OPTION"&&i.value===s.value){i.selected=true}s.selectEl.appendChild(i)}}));s.updateSelectedOption()}}e.prototype.valueChanged=function(){this.updateSelectedOption();this.updateFormValue()};e.prototype.connectedCallback=function(){if(this.el.attachInternals){this.internals=this.el.attachInternals()}};e.prototype.componentWillLoad=function(){this.updateSelectedOption()};e.prototype.componentDidLoad=function(){this.updateFormValue()};e.prototype.updateSelectedOption=function(){var e=this;if(this.selectEl){var i=this.selectEl.options;Array.from(i).map((function(i){if(Array.isArray(e.value)){i.selected=e.value.includes(i.value)}else{i.selected=e.value===i.value}}))}};e.prototype.getHelperMessage=function(){return this.helperMessage&&s("p",{class:"pds-select__helper-message",id:a(this.componentId,"helper")},this.helperMessage)};e.prototype.getErrorMessage=function(){return this.errorMessage&&s("p",{class:"pds-select__error-message",id:a(this.componentId,"error"),"aria-live":"assertive"},s("pds-icon",{icon:o,size:"small"}),this.errorMessage)};e.prototype.renderMessages=function(){if(!this.helperMessage&&!this.errorMessage)return null;return s("div",{class:"pds-select__message"},this.getHelperMessage(),this.getErrorMessage())};e.prototype.classNames=function(){var e=[];if(this.invalid){e.push("is-invalid")}if(this.disabled){e.push("is-disabled")}return e.join(" ")};e.prototype.renderAction=function(){var e=this.el.querySelector('[slot="action"]')!==null;if(e){return s("div",{class:"pds-select__action",part:"action"},s("slot",{name:"action"}))}return null};e.prototype.updateFormValue=function(){var e=this;if(this.internals&&this.internals.setFormValue){var i=this.value;if(Array.isArray(i)){if(i.length>1){var r=new FormData;i.forEach((function(i){return r.append(e.name||"",i)}));this.internals.setFormValue(r)}else{this.internals.setFormValue(i[0]||null)}}else{this.internals.setFormValue(i||null)}if(this.selectEl&&this.internals&&this.internals.setValidity){this.internals.setValidity(this.selectEl.validity,this.selectEl.validationMessage,this.selectEl)}}};e.prototype.formResetCallback=function(){this.value="";this.updateFormValue()};e.prototype.formDisabledCallback=function(e){this.disabled=e};e.prototype.formStateRestoreCallback=function(e){if(typeof e==="string"){this.value=e}else if(e instanceof FormData&&this.name){var i=e.getAll(this.name);if(i.length>1){this.value=i.filter((function(e){return typeof e==="string"}))}else if(i.length===1&&typeof i[0]==="string"){this.value=i[0]}}};e.prototype.render=function(){var e=this;var i=this.el.querySelector('[slot="action"]')!==null;return s(t,{key:"1433acf644d6ee97fd10d317416addea8e411b23","aria-disabled":this.disabled?"true":null,class:this.classNames(),"has-action":i&&!this.hideLabel?"true":null},s("div",{key:"63af968e3d7c2d0ceea1bcbaee045979ef546188",class:"pds-select"},!this.hideLabel&&s("div",{key:"a209ceef42be283287fd3dfc93cc89e5af142ab5",class:"pds-select__label-wrapper"},s("label",{key:"e9504a280358f717dac11a8b87e313368c458d48",htmlFor:this.componentId},s("span",{key:"420f9159d8d1b001f9fe3dfbd6663d77d47eade0",class:this.hideLabel?"visually-hidden":""},this.label)),i&&this.renderAction()),s("select",{key:"413ad9963bad818f06cbf2775fabf582b6d69104","aria-label":this.hideLabel?this.label:undefined,autocomplete:this.autocomplete||undefined,class:"pds-select__field",disabled:this.disabled,id:this.componentId,multiple:this.multiple,name:this.name,onChange:this.onSelectUpdate,part:"select",required:this.required,ref:function(i){return e.selectEl=i}}),s("div",{key:"92be560d834e33f5ef009f091c3bf74ff7e5db32","aria-hidden":"true",class:"hidden",ref:function(i){return e.slotContainer=i}},s("slot",{key:"7dc0bde05b59acb0a87c75331805dfe7f0638d9e",onSlotchange:this.handleSlotChange})),this.renderMessages(),!this.multiple&&s("pds-icon",{key:"e6b0edd05a3e76f3a0ca35fb663a68964e2b4c1b",class:"pds-select__select-icon",icon:l})))};Object.defineProperty(e,"formAssociated",{get:function(){return true},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"el",{get:function(){return n(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{value:["valueChanged"]}},enumerable:false,configurable:true});return e}());f.style=d+(c+p)}}}));
2
- //# sourceMappingURL=p-8722865f.system.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["pdsSelectTokensCss","labelCss","pdsSelectCss","PdsSelect","exports","class_1","hostRef","_this","this","disabled","multiple","required","onSelectUpdate","e","target","values","Array","from","options","filter","option","map","length","value","pdsSelectChange","emit","handleSlotChange","slot","slotContainer","querySelector","selectEl","innerHTML","assignedElements","flatten","forEach","item","includes","tagName","clonedItem","cloneNode","selected","appendChild","updateSelectedOption","prototype","valueChanged","updateFormValue","connectedCallback","el","attachInternals","internals","componentWillLoad","componentDidLoad","isArray","getHelperMessage","helperMessage","h","class","id","messageId","componentId","getErrorMessage","errorMessage","icon","danger","size","renderMessages","classNames","invalid","push","join","renderAction","hasAction","part","name","setFormValue","formData_1","FormData","val","append","setValidity","validity","validationMessage","formResetCallback","formDisabledCallback","formStateRestoreCallback","state","getAll","v","render","Host","key","hideLabel","htmlFor","label","undefined","autocomplete","onChange","ref","onSlotchange","enlarge"],"sources":["src/components/pds-select/pds-select.tokens.scss?tag=pds-select&encapsulation=shadow","src/global/styles/utils/label.scss?tag=pds-select&encapsulation=shadow","src/components/pds-select/pds-select.scss?tag=pds-select&encapsulation=shadow","src/components/pds-select/pds-select.tsx"],"sourcesContent":["@use '~@kajabi-ui/styles/dist/pine/components/pds-select/pds-select.tokens'\n",":host {\n display: inline-block;\n}\n\n:host([aria-disabled=\"true\"]) label {\n color: var(--pine-color-text-label-disabled);\n}\n\n:host([aria-readonly=\"true\"]) {\n label {\n color: var(--pine-color-text-label-readonly);\n }\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n",":host {\n --pds-select-background: var(--pine-color-background-container);\n --pds-select-border: var(--pine-border);\n --pds-select-border-radius: var(--pine-dimension-125);\n --pds-select-border-radius-start-end: var(--pine-dimension-125);\n --pds-select-border-radius-start-start: var(--pine-dimension-125);\n --pds-select-border-radius-end-end: var(--pine-dimension-125);\n --pds-select-border-radius-end-start: var(--pine-dimension-125);\n --pds-select-min-height: 36px;\n --box-shadow-focus: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);\n --box-shadow-focus-error: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring-danger);\n\n .hidden,\n :host([hidden]) {\n display: none;\n }\n}\n\n.pds-select {\n display: grid;\n flex-direction: column;\n grid-template-areas:\n 'label label'\n 'field field'\n 'message message';\n grid-template-columns: 1fr minmax(2rem, min-content);\n grid-template-rows: min-content min-content min-content;\n position: relative;\n width: 100%;\n}\n\n.pds-select__label-wrapper {\n align-items: center;\n display: flex;\n grid-area: label;\n justify-content: space-between;\n margin-block-end: var(--pine-dimension-2xs);\n}\n\n.pds-select__action {\n align-items: center;\n display: flex;\n gap: var(--pine-dimension-xs);\n margin-inline-start: var(--pine-dimension-xs);\n}\n\nlabel {\n margin-block-end: var(--pine-dimension-2xs);\n}\n\n// When label is inside wrapper, remove its margin\n.pds-select__label-wrapper label {\n margin-block-end: 0;\n}\n\nselect {\n appearance: none;\n background-color: var(--pds-select-background);\n border: var(--pds-select-border);\n border-radius: var(--pds-select-border-radius);\n border-bottom-left-radius: var(--pds-select-border-radius-end-start, var(--pds-select-border-radius));\n border-bottom-right-radius: var(--pds-select-border-radius-end-end, var(--pds-select-border-radius));\n border-top-left-radius: var(--pds-select-border-radius-start-start, var(--pds-select-border-radius));\n border-top-right-radius: var(--pds-select-border-radius-start-end, var(--pds-select-border-radius));\n font: var(--pine-typography-body);\n grid-area: field;\n letter-spacing: var(--pine-letter-spacing);\n min-height: var(--pds-select-min-height);\n padding: calc(var(--pine-dimension-xs) - var(--pine-border-width)) var(--pine-dimension-150);\n padding-inline-end: var(--pine-dimension-450);\n position: relative;\n\n &:hover {\n border-color: var(--pine-color-border-hover);\n cursor: pointer;\n }\n\n &:focus-visible {\n border-color: var(--pine-color-border-active);\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n &:disabled {\n background-color: var(--pine-color-background-container-disabled);\n border-color: var(--pine-color-border-disabled);\n color: var(--pine-color-text-disabled);\n cursor: not-allowed;\n }\n\n &:has(~ .pds-select__message .pds-select__error-message) {\n background-color: var(--pine-select-color-background-danger);\n border-color: var(--pine-color-border-danger);\n\n &:focus-visible {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n }\n}\n\n:host(.is-invalid) {\n select {\n background-color: var(--pine-select-color-background-danger);\n border-color: var(--pine-color-border-danger);\n\n &:focus-visible {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n }\n}\n\n.pds-select__error-message,\n.pds-select__helper-message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-end: 0;\n margin-block-start: var(--pine-dimension-2xs);\n}\n\n.pds-select__error-message {\n align-items: center;\n color: var(--pine-color-text-message-danger);\n display: flex;\n gap: var(--pine-dimension-2xs);\n}\n\n.pds-select__message {\n grid-area: message;\n}\n\n.pds-select__select-icon {\n align-items: center;\n display: flex;\n grid-column: -1 / -2;\n grid-row: 2 / 3;\n height: var(--pds-select-min-height);\n pointer-events: none;\n position: relative;\n z-index: 1;\n}\n\n.visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: polygon(0 0, 0 0, 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, Watch } from '@stencil/core';\nimport { messageId } from '../../utils/form';\nimport { danger, enlarge } from '@pine-ds/icons/icons';\n\n/**\n * @slot action - Content to be displayed in the label area, typically for help icons or links\n */\n@Component({\n tag: 'pds-select',\n styleUrls: ['pds-select.tokens.scss', '../../global/styles/utils/label.scss', 'pds-select.scss'],\n shadow: true,\n formAssociated: true,\n})\nexport class PdsSelect {\n\n private selectEl!: HTMLSelectElement;\n private slotContainer!: HTMLDivElement;\n private internals?: ElementInternals;\n\n @Element() el: HTMLPdsSelectElement;\n\n /**\n * Specifies if and how the browser provides `autocomplete` assistance for the field.\n */\n @Prop() autocomplete: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Indicates whether or not the select field is disabled.\n * @defaultValue false\n */\n @Prop() disabled = false\n\n /**\n * Displays error message text describing an invalid state.\n */\n @Prop() errorMessage: string;\n\n /**\n * Visually hides the label text for instances where only the select should be displayed. Label remains accessible to assistive technology such as screen readers.\n * Note: When true, the action slot is also hidden to maintain a minimal UI.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * Displays helper message text below select.\n */\n @Prop() helperMessage: string;\n\n /**\n * Determines whether or not the select is invalid.\n */\n @Prop() invalid?: boolean;\n\n /**\n * Text to be displayed as the select label.\n */\n @Prop() label?: string;\n\n /**\n * Indicates whether multiple options can be selected.\n * @defaultValue false\n */\n @Prop() multiple = false;\n\n /**\n * Specifies the name. Submitted with the form name/value pair.\n */\n @Prop() name!: string;\n\n /**\n * Indicates whether or not the select field is required.\n * @defaultValue false\n */\n @Prop() required = false;\n\n /**\n * The value(s) of the selected option(s).\n *\n */\n @Prop({ mutable: true }) value?: string | string[];\n\n /**\n * Emitted when a keyboard input occurs.\n */\n @Event() pdsSelectChange: EventEmitter<InputEvent>;\n\n @Watch('value')\n /**\n * Handles the change in the value of the select component.\n * This method is called whenever the value of the select component changes.\n * It updates the selected option accordingly.\n */\n valueChanged() {\n this.updateSelectedOption();\n this.updateFormValue();\n }\n\n connectedCallback() {\n // Initialize ElementInternals for form association\n if (this.el.attachInternals) {\n this.internals = this.el.attachInternals();\n }\n }\n\n componentWillLoad() {\n this.updateSelectedOption();\n }\n\n componentDidLoad() {\n // Set initial form value\n this.updateFormValue();\n }\n\n /**\n * Updates the selected option in the select element based on the current value.\n *\n * This method iterates through all the options of the select element and sets the\n * 'selected' attribute on the option that matches the current value. If an option\n * does not match the current value, the 'selected' attribute is removed.\n *\n * @private\n * @returns {void}\n */\n private updateSelectedOption() {\n if (this.selectEl) {\n const options = this.selectEl.options;\n\n // Update the selected attribute for all options.\n Array.from(options).map((option: HTMLOptionElement) => {\n if (Array.isArray(this.value)) {\n option.selected = this.value.includes(option.value);\n } else {\n option.selected = this.value === option.value;\n }\n });\n };\n }\n\n /**\n * Emits an event on input change.\n */\n private onSelectUpdate = (e: Event) => {\n const target = e.target as HTMLSelectElement\n\n const values = Array.from(target.options)\n .filter((option) => ( option.selected))\n .map((option) => ( option.value));\n\n if (values.length === 1 && !this.multiple) {\n this.value = values[0];\n } else {\n this.value = values;\n }\n\n this.pdsSelectChange.emit(e as InputEvent);\n };\n\n /**\n * Handles the change event for the slot element.\n * This method is triggered when the slot content changes.\n * It updates the inner HTML of the select element by cloning and appending\n * the assigned <option> elements from the slot.\n */\n private handleSlotChange = () => {\n const slot = this.slotContainer.querySelector('slot') as HTMLSlotElement;\n\n this.selectEl.innerHTML = '';\n const assignedElements = slot.assignedElements({ flatten: true }) as (HTMLOptionElement | HTMLOptGroupElement)[];\n\n assignedElements.forEach((item) => {\n if ( ['OPTION', 'OPTGROUP'].includes(item.tagName)) {\n const clonedItem = item.cloneNode(true) as HTMLOptionElement | HTMLOptGroupElement;\n if (clonedItem.tagName === 'OPTION' && (clonedItem as HTMLOptionElement).value === this.value) {\n (clonedItem as HTMLOptionElement).selected = true;\n }\n this.selectEl.appendChild(clonedItem);\n }\n });\n\n this.updateSelectedOption();\n };\n\n private getHelperMessage() {\n return this.helperMessage && (\n <p class=\"pds-select__helper-message\" id={messageId(this.componentId, 'helper')}>\n {this.helperMessage}\n </p>\n );\n }\n\n private getErrorMessage() {\n return this.errorMessage && (\n <p class=\"pds-select__error-message\" id={messageId(this.componentId, 'error')} aria-live=\"assertive\">\n <pds-icon icon={danger} size=\"small\"></pds-icon>\n {this.errorMessage}\n </p>\n );\n }\n\n private renderMessages() {\n if (!this.helperMessage && !this.errorMessage) return null;\n\n return (\n <div class=\"pds-select__message\">\n {this.getHelperMessage()}\n {this.getErrorMessage()}\n </div>\n );\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.invalid) { classNames.push('is-invalid'); }\n if (this.disabled) { classNames.push('is-disabled'); }\n\n return classNames.join(' ');\n }\n\n private renderAction() {\n const hasAction = this.el.querySelector('[slot=\"action\"]') !== null;\n if (hasAction) {\n return (\n <div class=\"pds-select__action\" part=\"action\">\n <slot name=\"action\"></slot>\n </div>\n );\n }\n return null;\n }\n\n /**\n * Updates the form value using ElementInternals API\n */\n private updateFormValue() {\n if (this.internals && this.internals.setFormValue) {\n const value = this.value;\n\n // Handle multi-select arrays by converting to FormData or comma-separated string\n if (Array.isArray(value)) {\n if (value.length > 1) {\n // For multiple values, create FormData with multiple entries\n const formData = new FormData();\n value.forEach(val => formData.append(this.name || '', val));\n this.internals.setFormValue(formData);\n } else {\n // Single value in array, use the string value\n this.internals.setFormValue(value[0] || null);\n }\n } else {\n // Single string value\n this.internals.setFormValue(value || null);\n }\n\n // Set validity based on native select validation\n if (this.selectEl && this.internals && this.internals.setValidity) {\n this.internals.setValidity(\n this.selectEl.validity,\n this.selectEl.validationMessage,\n this.selectEl\n );\n }\n }\n }\n\n /**\n * Form Associated Custom Elements API: Called when the form is reset\n */\n formResetCallback() {\n this.value = '';\n this.updateFormValue();\n }\n\n /**\n * Form Associated Custom Elements API: Called when the form is disabled\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n /**\n * Form Associated Custom Elements API: Called to restore form state\n */\n formStateRestoreCallback(state: string | FormData | null) {\n if (typeof state === 'string') {\n this.value = state;\n } else if (state instanceof FormData && this.name) {\n // Extract value(s) from FormData using the select's name\n const values = state.getAll(this.name);\n if (values.length > 1) {\n // Multi-select: convert to string array\n this.value = values.filter(v => typeof v === 'string') as string[];\n } else if (values.length === 1 && typeof values[0] === 'string') {\n // Single select: use string value\n this.value = values[0];\n }\n }\n }\n\n render() {\n const hasAction = this.el.querySelector('[slot=\"action\"]') !== null;\n\n return (\n <Host aria-disabled={this.disabled ? 'true' : null} class={this.classNames()} has-action={hasAction && !this.hideLabel ? 'true' : null}>\n <div class=\"pds-select\">\n {!this.hideLabel && (\n <div class=\"pds-select__label-wrapper\">\n <label htmlFor={this.componentId}>\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {hasAction && this.renderAction()}\n </div>\n )}\n <select\n aria-label={this.hideLabel ? this.label : undefined}\n autocomplete={this.autocomplete || undefined}\n class=\"pds-select__field\"\n disabled={this.disabled}\n id={this.componentId}\n multiple={this.multiple}\n name={this.name}\n onChange={this.onSelectUpdate}\n part=\"select\"\n required={this.required}\n ref={(el) => (this.selectEl = el as HTMLSelectElement)}\n ></select>\n <div aria-hidden=\"true\" class=\"hidden\" ref={(el) => (this.slotContainer = el)}>\n <slot onSlotchange={this.handleSlotChange}></slot>\n </div>\n {this.renderMessages()}\n {!this.multiple && <pds-icon class=\"pds-select__select-icon\" icon={enlarge} />}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}