@pine-ds/core 3.14.0 → 3.14.1

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 (462) hide show
  1. package/components/floating-ui.dom.js +161 -40
  2. package/components/floating-ui.dom.js.map +1 -1
  3. package/components/index.d.ts +2 -0
  4. package/components/index.js +1 -0
  5. package/components/index.js.map +1 -1
  6. package/components/index2.js +1 -1
  7. package/components/index2.js.map +1 -1
  8. package/components/pds-combobox.js +65 -25
  9. package/components/pds-combobox.js.map +1 -1
  10. package/components/pds-dropdown-menu-item.js +1 -1
  11. package/components/pds-dropdown-menu-item.js.map +1 -1
  12. package/components/pds-dropdown-menu.js +3 -2
  13. package/components/pds-dropdown-menu.js.map +1 -1
  14. package/components/pds-filter.js +1 -1
  15. package/components/pds-filter.js.map +1 -1
  16. package/components/pds-multiselect.d.ts +11 -0
  17. package/components/pds-multiselect.js +666 -0
  18. package/components/pds-multiselect.js.map +1 -0
  19. package/components/pds-popover.js +1 -1
  20. package/components/pds-progress.js +1 -1
  21. package/components/pds-property.js +1 -1
  22. package/components/pds-radio-group.js +3 -3
  23. package/components/pds-radio.js +3 -3
  24. package/components/pds-row.js +1 -1
  25. package/components/pds-select.js +1 -1
  26. package/components/pds-sortable-item.js +1 -1
  27. package/components/pds-sortable.js +1 -1
  28. package/components/pds-switch.js +3 -3
  29. package/components/pds-tab.js +4 -4
  30. package/components/pds-tab.js.map +1 -1
  31. package/components/pds-table-body.js +1 -1
  32. package/components/pds-table-cell2.js +2 -2
  33. package/components/pds-table-head-cell2.js +35 -6
  34. package/components/pds-table-head-cell2.js.map +1 -1
  35. package/components/pds-table-head.js +1 -1
  36. package/components/pds-table-row.js +1 -1
  37. package/components/pds-tabpanel.js +1 -1
  38. package/components/pds-tabs.js +1 -1
  39. package/components/pds-text2.js +1 -1
  40. package/components/pds-textarea.js +4 -4
  41. package/components/pds-toast.js +3 -3
  42. package/components/pds-tooltip.js +2 -2
  43. package/dist/cjs/{floating-ui.dom-DTAy35nv.js → floating-ui.dom-Ca6tS7ef.js} +163 -41
  44. package/dist/cjs/floating-ui.dom-Ca6tS7ef.js.map +1 -0
  45. package/dist/cjs/{index-CMeuo765.js → index-BA--jsiy.js} +3 -3
  46. package/dist/cjs/index-BA--jsiy.js.map +1 -0
  47. package/dist/cjs/loader.cjs.js +1 -1
  48. package/dist/cjs/pds-accordion.cjs.entry.js +1 -1
  49. package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
  50. package/dist/cjs/pds-button.cjs.entry.js +1 -1
  51. package/dist/cjs/pds-checkbox.cjs.entry.js +1 -1
  52. package/dist/cjs/pds-chip.cjs.entry.js +1 -1
  53. package/dist/cjs/pds-combobox.cjs.entry.js +66 -26
  54. package/dist/cjs/pds-combobox.entry.cjs.js.map +1 -1
  55. package/dist/cjs/pds-copytext.cjs.entry.js +1 -1
  56. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
  57. package/dist/cjs/pds-dropdown-menu-item.entry.cjs.js.map +1 -1
  58. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +4 -3
  59. package/dist/cjs/pds-dropdown-menu.entry.cjs.js.map +1 -1
  60. package/dist/cjs/pds-filter.cjs.entry.js +2 -2
  61. package/dist/cjs/pds-filter.entry.cjs.js.map +1 -1
  62. package/dist/cjs/pds-input.cjs.entry.js +1 -1
  63. package/dist/cjs/pds-link.cjs.entry.js +1 -1
  64. package/dist/cjs/pds-multiselect.cjs.entry.js +592 -0
  65. package/dist/cjs/pds-multiselect.entry.cjs.js.map +1 -0
  66. package/dist/cjs/pds-popover.cjs.entry.js +1 -1
  67. package/dist/cjs/pds-progress.cjs.entry.js +1 -1
  68. package/dist/cjs/pds-property.cjs.entry.js +1 -1
  69. package/dist/cjs/pds-radio-group.cjs.entry.js +4 -4
  70. package/dist/cjs/pds-radio.cjs.entry.js +4 -4
  71. package/dist/cjs/pds-row.cjs.entry.js +1 -1
  72. package/dist/cjs/pds-select.cjs.entry.js +2 -2
  73. package/dist/cjs/pds-sortable-item.cjs.entry.js +2 -2
  74. package/dist/cjs/pds-sortable.cjs.entry.js +1 -1
  75. package/dist/cjs/pds-switch.cjs.entry.js +4 -4
  76. package/dist/cjs/pds-tab.cjs.entry.js +4 -4
  77. package/dist/cjs/pds-tab.entry.cjs.js.map +1 -1
  78. package/dist/cjs/pds-table-body.cjs.entry.js +1 -1
  79. package/dist/cjs/pds-table-cell.cjs.entry.js +2 -2
  80. package/dist/cjs/pds-table-head-cell.cjs.entry.js +33 -6
  81. package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
  82. package/dist/cjs/pds-table-head.cjs.entry.js +1 -1
  83. package/dist/cjs/pds-table-row.cjs.entry.js +1 -1
  84. package/dist/cjs/pds-tabpanel.cjs.entry.js +1 -1
  85. package/dist/cjs/pds-tabs.cjs.entry.js +1 -1
  86. package/dist/cjs/pds-text.cjs.entry.js +1 -1
  87. package/dist/cjs/pds-textarea.cjs.entry.js +5 -5
  88. package/dist/cjs/pds-toast.cjs.entry.js +3 -3
  89. package/dist/cjs/pds-tooltip.cjs.entry.js +3 -3
  90. package/dist/cjs/pine-core.cjs.js +1 -1
  91. package/dist/collection/collection-manifest.json +1 -0
  92. package/dist/collection/components/pds-box/pds-box.css +0 -191
  93. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-item/pds-dropdown-menu-item.css +3 -1
  94. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +1 -1
  95. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.js +2 -1
  96. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.js.map +1 -1
  97. package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +6 -2
  98. package/dist/collection/components/pds-multiselect/multiselect-interface.js +2 -0
  99. package/dist/collection/components/pds-multiselect/multiselect-interface.js.map +1 -0
  100. package/dist/collection/components/pds-multiselect/pds-multiselect.css +232 -0
  101. package/dist/collection/components/pds-multiselect/pds-multiselect.js +1152 -0
  102. package/dist/collection/components/pds-multiselect/pds-multiselect.js.map +1 -0
  103. package/dist/collection/components/pds-multiselect/stories/pds-multiselect.stories.js +371 -0
  104. package/dist/collection/components/pds-popover/pds-popover.js +1 -1
  105. package/dist/collection/components/pds-progress/pds-progress.js +1 -1
  106. package/dist/collection/components/pds-property/pds-property.js +1 -1
  107. package/dist/collection/components/pds-radio/pds-radio.js +3 -3
  108. package/dist/collection/components/pds-radio-group/pds-radio-group.js +3 -3
  109. package/dist/collection/components/pds-row/pds-row.js +1 -1
  110. package/dist/collection/components/pds-select/pds-select.js +1 -1
  111. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
  112. package/dist/collection/components/pds-sortable/pds-sortable.js +1 -1
  113. package/dist/collection/components/pds-switch/pds-switch.js +3 -3
  114. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +1 -1
  115. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +2 -2
  116. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  117. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +51 -6
  118. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js.map +1 -1
  119. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
  120. package/dist/collection/components/pds-table/stories/pds-table.stories.js +32 -4
  121. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +6 -2
  122. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -3
  123. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
  124. package/dist/collection/components/pds-tabs/pds-tabs.js +1 -1
  125. package/dist/collection/components/pds-text/pds-text.js +1 -1
  126. package/dist/collection/components/pds-textarea/pds-textarea.js +4 -4
  127. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  128. package/dist/collection/components/pds-tooltip/pds-tooltip.js +2 -2
  129. package/dist/docs.json +960 -174
  130. package/dist/esm/{floating-ui.dom-DbQzNDdQ.js → floating-ui.dom-BO6p966C.js} +163 -42
  131. package/dist/esm/floating-ui.dom-BO6p966C.js.map +1 -0
  132. package/dist/esm/{index-xbb79yLt.js → index-DY8eSueV.js} +3 -3
  133. package/dist/esm/index-DY8eSueV.js.map +1 -0
  134. package/dist/esm/loader.js +1 -1
  135. package/dist/esm/pds-accordion.entry.js +1 -1
  136. package/dist/esm/pds-avatar.entry.js +1 -1
  137. package/dist/esm/pds-button.entry.js +1 -1
  138. package/dist/esm/pds-checkbox.entry.js +1 -1
  139. package/dist/esm/pds-chip.entry.js +1 -1
  140. package/dist/esm/pds-combobox.entry.js +66 -26
  141. package/dist/esm/pds-combobox.entry.js.map +1 -1
  142. package/dist/esm/pds-copytext.entry.js +1 -1
  143. package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
  144. package/dist/esm/pds-dropdown-menu-item.entry.js.map +1 -1
  145. package/dist/esm/pds-dropdown-menu.entry.js +4 -3
  146. package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
  147. package/dist/esm/pds-filter.entry.js +2 -2
  148. package/dist/esm/pds-filter.entry.js.map +1 -1
  149. package/dist/esm/pds-input.entry.js +1 -1
  150. package/dist/esm/pds-link.entry.js +1 -1
  151. package/dist/esm/pds-multiselect.entry.js +590 -0
  152. package/dist/esm/pds-multiselect.entry.js.map +1 -0
  153. package/dist/esm/pds-popover.entry.js +1 -1
  154. package/dist/esm/pds-progress.entry.js +1 -1
  155. package/dist/esm/pds-property.entry.js +1 -1
  156. package/dist/esm/pds-radio-group.entry.js +4 -4
  157. package/dist/esm/pds-radio.entry.js +4 -4
  158. package/dist/esm/pds-row.entry.js +1 -1
  159. package/dist/esm/pds-select.entry.js +2 -2
  160. package/dist/esm/pds-sortable-item.entry.js +2 -2
  161. package/dist/esm/pds-sortable.entry.js +1 -1
  162. package/dist/esm/pds-switch.entry.js +4 -4
  163. package/dist/esm/pds-tab.entry.js +4 -4
  164. package/dist/esm/pds-tab.entry.js.map +1 -1
  165. package/dist/esm/pds-table-body.entry.js +1 -1
  166. package/dist/esm/pds-table-cell.entry.js +2 -2
  167. package/dist/esm/pds-table-head-cell.entry.js +33 -6
  168. package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
  169. package/dist/esm/pds-table-head.entry.js +1 -1
  170. package/dist/esm/pds-table-row.entry.js +1 -1
  171. package/dist/esm/pds-tabpanel.entry.js +1 -1
  172. package/dist/esm/pds-tabs.entry.js +1 -1
  173. package/dist/esm/pds-text.entry.js +1 -1
  174. package/dist/esm/pds-textarea.entry.js +5 -5
  175. package/dist/esm/pds-toast.entry.js +3 -3
  176. package/dist/esm/pds-tooltip.entry.js +3 -3
  177. package/dist/esm/pine-core.js +1 -1
  178. package/dist/esm-es5/floating-ui.dom-BO6p966C.js +2 -0
  179. package/dist/esm-es5/floating-ui.dom-BO6p966C.js.map +1 -0
  180. package/dist/esm-es5/{index-xbb79yLt.js → index-DY8eSueV.js} +1 -1
  181. package/dist/esm-es5/index-DY8eSueV.js.map +1 -0
  182. package/dist/esm-es5/loader.js +1 -1
  183. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  184. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  185. package/dist/esm-es5/pds-button.entry.js +1 -1
  186. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  187. package/dist/esm-es5/pds-chip.entry.js +1 -1
  188. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  189. package/dist/esm-es5/pds-combobox.entry.js.map +1 -1
  190. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  191. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  192. package/dist/esm-es5/pds-dropdown-menu-item.entry.js.map +1 -1
  193. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  194. package/dist/esm-es5/pds-dropdown-menu.entry.js.map +1 -1
  195. package/dist/esm-es5/pds-filter.entry.js +1 -1
  196. package/dist/esm-es5/pds-filter.entry.js.map +1 -1
  197. package/dist/esm-es5/pds-input.entry.js +1 -1
  198. package/dist/esm-es5/pds-link.entry.js +1 -1
  199. package/dist/esm-es5/pds-multiselect.entry.js +2 -0
  200. package/dist/esm-es5/pds-multiselect.entry.js.map +1 -0
  201. package/dist/esm-es5/pds-popover.entry.js +1 -1
  202. package/dist/esm-es5/pds-progress.entry.js +1 -1
  203. package/dist/esm-es5/pds-property.entry.js +1 -1
  204. package/dist/esm-es5/pds-radio-group.entry.js +1 -1
  205. package/dist/esm-es5/pds-radio.entry.js +1 -1
  206. package/dist/esm-es5/pds-row.entry.js +1 -1
  207. package/dist/esm-es5/pds-select.entry.js +1 -1
  208. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  209. package/dist/esm-es5/pds-sortable.entry.js +1 -1
  210. package/dist/esm-es5/pds-switch.entry.js +1 -1
  211. package/dist/esm-es5/pds-tab.entry.js +1 -1
  212. package/dist/esm-es5/pds-tab.entry.js.map +1 -1
  213. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  214. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  215. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  216. package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
  217. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  218. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  219. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  220. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  221. package/dist/esm-es5/pds-text.entry.js +1 -1
  222. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  223. package/dist/esm-es5/pds-toast.entry.js +1 -1
  224. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  225. package/dist/esm-es5/pine-core.js +1 -1
  226. package/dist/pine-core/p-02f48157.system.entry.js +2 -0
  227. package/dist/pine-core/{p-b30424e3.system.entry.js → p-063afa19.system.entry.js} +2 -2
  228. package/dist/pine-core/p-0sPVsRFU.system.js.map +1 -0
  229. package/dist/pine-core/{p-15202869.entry.js → p-10dbe3e2.entry.js} +2 -2
  230. package/dist/pine-core/{p-5b7ab891.entry.js → p-12360e47.entry.js} +2 -2
  231. package/dist/pine-core/{p-ac14c8e3.system.entry.js → p-137b3289.system.entry.js} +2 -2
  232. package/dist/pine-core/{p-a737df90.entry.js → p-154a32f4.entry.js} +2 -2
  233. package/dist/pine-core/p-1ca116fa.entry.js +3 -0
  234. package/dist/pine-core/p-1ca116fa.entry.js.map +1 -0
  235. package/dist/pine-core/{p-a847fad3.entry.js → p-2537aacb.entry.js} +2 -2
  236. package/dist/pine-core/{p-4d25449c.entry.js → p-2cd0d520.entry.js} +2 -2
  237. package/dist/pine-core/{p-cd335ec2.system.entry.js → p-2fe330d0.system.entry.js} +2 -2
  238. package/dist/pine-core/p-30ea3668.system.entry.js +2 -0
  239. package/dist/pine-core/{p-1daf66d1.entry.js → p-31168da5.entry.js} +2 -2
  240. package/dist/pine-core/{p-732e2564.system.entry.js → p-325b3b0d.system.entry.js} +2 -2
  241. package/dist/pine-core/p-32c13896.system.entry.js +2 -0
  242. package/dist/pine-core/p-32c13896.system.entry.js.map +1 -0
  243. package/dist/pine-core/{p-95f2782c.entry.js → p-3f97a965.entry.js} +2 -2
  244. package/dist/pine-core/{p-ff182316.system.entry.js → p-40988b4d.system.entry.js} +2 -2
  245. package/dist/pine-core/{p-b02936d2.entry.js → p-415ba884.entry.js} +2 -2
  246. package/dist/pine-core/p-475bb340.entry.js +2 -0
  247. package/dist/pine-core/p-475bb340.entry.js.map +1 -0
  248. package/dist/pine-core/{p-CGo2P4Fr.system.js.map → p-4EbKXnVN.system.js.map} +1 -1
  249. package/dist/pine-core/{p-4SEjggIC.system.js.map → p-4alPHnzl.system.js.map} +1 -1
  250. package/dist/pine-core/{p-9bfaed7e.system.entry.js → p-4c23c75b.system.entry.js} +2 -2
  251. package/dist/pine-core/{p-bdf8bff3.system.entry.js → p-4d85945b.system.entry.js} +2 -2
  252. package/dist/pine-core/{p-3f8b0885.system.entry.js → p-4d9eee67.system.entry.js} +2 -2
  253. package/dist/pine-core/{p-4fD2iHS9.system.js.map → p-4f1cRPxE.system.js.map} +1 -1
  254. package/dist/pine-core/{p-e2104c31.entry.js → p-5040a872.entry.js} +2 -2
  255. package/dist/pine-core/p-51114c2b.system.entry.js +2 -0
  256. package/dist/pine-core/p-51114c2b.system.entry.js.map +1 -0
  257. package/dist/pine-core/{p-bbc349b3.system.entry.js → p-5b3ac18e.system.entry.js} +2 -2
  258. package/dist/pine-core/{p-bbc349b3.system.entry.js.map → p-5b3ac18e.system.entry.js.map} +1 -1
  259. package/dist/pine-core/{p-a08b60ae.entry.js → p-5b9110fe.entry.js} +2 -2
  260. package/dist/pine-core/{p-e3d76aa3.system.entry.js → p-5c982339.system.entry.js} +2 -2
  261. package/dist/pine-core/{p-94b1997d.system.entry.js → p-5e92aa34.system.entry.js} +2 -2
  262. package/dist/pine-core/{p-41d89f20.entry.js → p-5f2865df.entry.js} +2 -2
  263. package/dist/pine-core/{p-41d89f20.entry.js.map → p-5f2865df.entry.js.map} +1 -1
  264. package/dist/pine-core/p-6321b70b.entry.js +2 -0
  265. package/dist/pine-core/p-6321b70b.entry.js.map +1 -0
  266. package/dist/pine-core/p-63269b89.entry.js +2 -0
  267. package/dist/pine-core/p-6e862168.system.entry.js +2 -0
  268. package/dist/pine-core/{p-dcc6ad67.system.entry.js.map → p-6e862168.system.entry.js.map} +1 -1
  269. package/dist/pine-core/{p-cf2e1c07.system.entry.js → p-70aa35fc.system.entry.js} +2 -2
  270. package/dist/pine-core/{p-fc0ee6da.entry.js → p-757c7b80.entry.js} +2 -2
  271. package/dist/pine-core/{p-1df25b57.system.entry.js → p-78ee2e08.system.entry.js} +2 -2
  272. package/dist/pine-core/{p-2319298c.system.entry.js → p-7b5c8248.system.entry.js} +2 -2
  273. package/dist/pine-core/{p-dad604e4.system.entry.js → p-84c7f663.system.entry.js} +2 -2
  274. package/dist/pine-core/{p-f9ef2f74.system.entry.js → p-87eb8d4b.system.entry.js} +2 -2
  275. package/dist/pine-core/p-8b201c9a.system.entry.js +2 -0
  276. package/dist/pine-core/p-8b201c9a.system.entry.js.map +1 -0
  277. package/dist/pine-core/p-8eb1c168.entry.js +2 -0
  278. package/dist/pine-core/{p-e5bc22b6.system.entry.js → p-8fdb10c4.system.entry.js} +2 -2
  279. package/dist/pine-core/{p-232e4282.system.entry.js → p-90615423.system.entry.js} +2 -2
  280. package/dist/pine-core/{p-f79f6f08.system.entry.js → p-932283cf.system.entry.js} +2 -2
  281. package/dist/pine-core/{p-0b05708b.entry.js → p-9ada659b.entry.js} +2 -2
  282. package/dist/pine-core/{p-4778ae70.entry.js → p-9bb6cc3d.entry.js} +2 -2
  283. package/dist/pine-core/{p-3f6b9520.entry.js → p-9c928c44.entry.js} +2 -2
  284. package/dist/pine-core/{p-646ac76d.entry.js → p-9e4fc025.entry.js} +2 -2
  285. package/dist/pine-core/{p-e8aad8dc.entry.js → p-9eccf7b9.entry.js} +2 -2
  286. package/dist/pine-core/{p-WhfStK1C.system.js.map → p-B0Otb6kF.system.js.map} +1 -1
  287. package/dist/pine-core/{p-CUmDvil2.system.js.map → p-BA95hFrH.system.js.map} +1 -1
  288. package/dist/pine-core/{p-B4EMeCRH.system.js.map → p-BHjZufAO.system.js.map} +1 -1
  289. package/dist/pine-core/{p-DC2NZwtk.system.js.map → p-BJE1EIse.system.js.map} +1 -1
  290. package/dist/pine-core/{p-IH8oGXiE.system.js.map → p-BJtTt670.system.js.map} +1 -1
  291. package/dist/pine-core/p-BO6p966C.js +2 -0
  292. package/dist/pine-core/p-BO6p966C.js.map +1 -0
  293. package/dist/pine-core/{p-jBhqNO5u.system.js.map → p-BSRmAvMC.system.js.map} +1 -1
  294. package/dist/pine-core/{p-DyrNlfLT.system.js.map → p-BTe59phF.system.js.map} +1 -1
  295. package/dist/pine-core/{p-PMNjgK0C.system.js.map → p-BmKJgY0X.system.js.map} +1 -1
  296. package/dist/pine-core/{p-B0Y1Zs9b.system.js.map → p-Bn36FPag.system.js.map} +1 -1
  297. package/dist/pine-core/p-CBCT89qf.system.js.map +1 -0
  298. package/dist/pine-core/{p-DpeOrUYB.system.js.map → p-CG5jdxoZ.system.js.map} +1 -1
  299. package/dist/pine-core/{p-CKzDRRgx.system.js → p-CP48ADFM.system.js} +1 -1
  300. package/dist/pine-core/p-CP48ADFM.system.js.map +1 -0
  301. package/dist/pine-core/p-CR01VmO6.system.js.map +1 -0
  302. package/dist/pine-core/{p-CAnnMfDw.system.js.map → p-CSLo9qKS.system.js.map} +1 -1
  303. package/dist/pine-core/{p-DmVKABQy.system.js.map → p-CboCokff.system.js.map} +1 -1
  304. package/dist/pine-core/{p-XCTiWii8.system.js.map → p-CfZCQYfD.system.js.map} +1 -1
  305. package/dist/pine-core/{p-r_cS5LMw.system.js.map → p-Civ2VHC7.system.js.map} +1 -1
  306. package/dist/pine-core/{p-ChiYqN-p.system.js.map → p-CmquVvkz.system.js.map} +1 -1
  307. package/dist/pine-core/{p-tHMXRB8d.system.js.map → p-CpyTw2IQ.system.js.map} +1 -1
  308. package/dist/pine-core/{p-Brpt0zl5.system.js.map → p-Ct9csNdF.system.js.map} +1 -1
  309. package/dist/pine-core/{p-B_Co5NfG.system.js.map → p-Cun139qe.system.js.map} +1 -1
  310. package/dist/pine-core/p-D2eS6fhD.system.js +2 -0
  311. package/dist/pine-core/p-D2eS6fhD.system.js.map +1 -0
  312. package/dist/pine-core/{p-CTfQ_9yC.system.js.map → p-DFXWnbHE.system.js.map} +1 -1
  313. package/dist/pine-core/{p-xbb79yLt.js → p-DY8eSueV.js} +1 -1
  314. package/dist/pine-core/p-DY8eSueV.js.map +1 -0
  315. package/dist/pine-core/{p-CXGuX44q.system.js.map → p-DaXZLSA0.system.js.map} +1 -1
  316. package/dist/pine-core/{p-DB45WSlG.system.js.map → p-DwQewDCV.system.js.map} +1 -1
  317. package/dist/pine-core/p-JAVnELnm.system.js +1 -1
  318. package/dist/pine-core/{p-DAvCgWA9.system.js.map → p-Lk6DnEPT.system.js.map} +1 -1
  319. package/dist/pine-core/{p-Bjj4Pcbb.system.js.map → p-YqHO7iPZ.system.js.map} +1 -1
  320. package/dist/pine-core/{p-00568c20.system.entry.js → p-a07b8e45.system.entry.js} +2 -2
  321. package/dist/pine-core/p-a3bCMZF8.system.js.map +1 -0
  322. package/dist/pine-core/{p-c5013d20.entry.js → p-a3cdff85.entry.js} +2 -2
  323. package/dist/pine-core/{p-a4b16b32.system.entry.js → p-a5b24b1d.system.entry.js} +2 -2
  324. package/dist/pine-core/{p-596acf65.entry.js → p-a99e8caf.entry.js} +2 -2
  325. package/dist/pine-core/{p-002fe322.system.entry.js → p-ac240034.system.entry.js} +2 -2
  326. package/dist/pine-core/{p-fe28b975.system.entry.js → p-b9650ed9.system.entry.js} +2 -2
  327. package/dist/pine-core/{p-f8fba315.entry.js → p-bc85016b.entry.js} +2 -2
  328. package/dist/pine-core/{p-61588eac.entry.js → p-bddc9c5a.entry.js} +2 -2
  329. package/dist/pine-core/{p--gPqixhD.system.js.map → p-bs74TBAh.system.js.map} +1 -1
  330. package/dist/pine-core/{p-7de73ac5.entry.js → p-c24d11c7.entry.js} +2 -2
  331. package/dist/pine-core/p-c292e5da.system.entry.js +2 -0
  332. package/dist/pine-core/{p-6bc7d67f.system.entry.js.map → p-c292e5da.system.entry.js.map} +1 -1
  333. package/dist/pine-core/p-c68bceb1.entry.js +2 -0
  334. package/dist/pine-core/{p-478d1107.entry.js.map → p-c68bceb1.entry.js.map} +1 -1
  335. package/dist/pine-core/{p-0ace9c16.entry.js → p-c7c00a27.entry.js} +2 -2
  336. package/dist/pine-core/{p-cb6c279a.system.entry.js → p-cac3128b.system.entry.js} +2 -2
  337. package/dist/pine-core/p-ccab748a.entry.js +2 -0
  338. package/dist/pine-core/p-ccab748a.entry.js.map +1 -0
  339. package/dist/pine-core/{p-098cbcd7.system.entry.js → p-cfb24f97.system.entry.js} +2 -2
  340. package/dist/pine-core/p-d41112ad.entry.js +2 -0
  341. package/dist/pine-core/{p-f82b464c.entry.js.map → p-d41112ad.entry.js.map} +1 -1
  342. package/dist/pine-core/{p-6cba6806.entry.js → p-d6302edd.entry.js} +2 -2
  343. package/dist/pine-core/{p-04294b28.system.entry.js → p-daa36570.system.entry.js} +2 -2
  344. package/dist/pine-core/p-db06ad25.system.entry.js +4 -0
  345. package/dist/pine-core/p-db06ad25.system.entry.js.map +1 -0
  346. package/dist/pine-core/{p-15650db8.entry.js → p-e6dc2297.entry.js} +2 -2
  347. package/dist/pine-core/{p-9f53eb94.system.entry.js → p-e8cf15d7.system.entry.js} +2 -2
  348. package/dist/pine-core/p-eb026745.entry.js +2 -0
  349. package/dist/pine-core/{p-e011d7e5.entry.js → p-fa05ea14.entry.js} +2 -2
  350. package/dist/pine-core/{p-D8Jc24Qq.system.js.map → p-htODgUCV.system.js.map} +1 -1
  351. package/dist/pine-core/{p-DYq1Mef8.system.js.map → p-j0609tLE.system.js.map} +1 -1
  352. package/dist/pine-core/{p-DoP8Sl1O.system.js.map → p-rcUX-rt5.system.js.map} +1 -1
  353. package/dist/pine-core/{p-DSwKfctG.system.js.map → p-uyztncxJ.system.js.map} +1 -1
  354. package/dist/pine-core/pds-combobox.entry.esm.js.map +1 -1
  355. package/dist/pine-core/pds-dropdown-menu-item.entry.esm.js.map +1 -1
  356. package/dist/pine-core/pds-dropdown-menu.entry.esm.js.map +1 -1
  357. package/dist/pine-core/pds-filter.entry.esm.js.map +1 -1
  358. package/dist/pine-core/pds-multiselect.entry.esm.js.map +1 -0
  359. package/dist/pine-core/pds-tab.entry.esm.js.map +1 -1
  360. package/dist/pine-core/pds-table-head-cell.entry.esm.js.map +1 -1
  361. package/dist/pine-core/pine-core.esm.js +1 -1
  362. package/dist/types/components/pds-multiselect/multiselect-interface.d.ts +24 -0
  363. package/dist/types/components/pds-multiselect/pds-multiselect.d.ts +175 -0
  364. package/dist/types/components/pds-table/pds-table-head-cell/pds-table-head-cell.d.ts +10 -0
  365. package/dist/types/components.d.ts +250 -0
  366. package/dist/vscode.html-data.json +156 -0
  367. package/hydrate/index.js +918 -100
  368. package/hydrate/index.mjs +918 -100
  369. package/package.json +5 -5
  370. package/dist/cjs/floating-ui.dom-DTAy35nv.js.map +0 -1
  371. package/dist/cjs/index-CMeuo765.js.map +0 -1
  372. package/dist/esm/floating-ui.dom-DbQzNDdQ.js.map +0 -1
  373. package/dist/esm/index-xbb79yLt.js.map +0 -1
  374. package/dist/esm-es5/floating-ui.dom-DbQzNDdQ.js +0 -2
  375. package/dist/esm-es5/floating-ui.dom-DbQzNDdQ.js.map +0 -1
  376. package/dist/esm-es5/index-xbb79yLt.js.map +0 -1
  377. package/dist/pine-core/p-43990889.entry.js +0 -2
  378. package/dist/pine-core/p-478d1107.entry.js +0 -2
  379. package/dist/pine-core/p-534e44cb.system.entry.js +0 -4
  380. package/dist/pine-core/p-534e44cb.system.entry.js.map +0 -1
  381. package/dist/pine-core/p-54a56826.entry.js +0 -3
  382. package/dist/pine-core/p-54a56826.entry.js.map +0 -1
  383. package/dist/pine-core/p-553e4543.entry.js +0 -2
  384. package/dist/pine-core/p-553e4543.entry.js.map +0 -1
  385. package/dist/pine-core/p-5f6cd30d.system.entry.js +0 -2
  386. package/dist/pine-core/p-5f6cd30d.system.entry.js.map +0 -1
  387. package/dist/pine-core/p-6bc7d67f.system.entry.js +0 -2
  388. package/dist/pine-core/p-9e62c418.system.entry.js +0 -2
  389. package/dist/pine-core/p-9e62c418.system.entry.js.map +0 -1
  390. package/dist/pine-core/p-BOmQOnQe.system.js +0 -2
  391. package/dist/pine-core/p-BOmQOnQe.system.js.map +0 -1
  392. package/dist/pine-core/p-Bnp3zJ0T.system.js.map +0 -1
  393. package/dist/pine-core/p-CKzDRRgx.system.js.map +0 -1
  394. package/dist/pine-core/p-DbQzNDdQ.js +0 -2
  395. package/dist/pine-core/p-DbQzNDdQ.js.map +0 -1
  396. package/dist/pine-core/p-DfCCzxYg.system.js.map +0 -1
  397. package/dist/pine-core/p-X0_TH-op.system.js.map +0 -1
  398. package/dist/pine-core/p-ac2f9463.entry.js +0 -2
  399. package/dist/pine-core/p-ac2f9463.entry.js.map +0 -1
  400. package/dist/pine-core/p-b59a0c6b.system.entry.js +0 -2
  401. package/dist/pine-core/p-d0e336b7.system.entry.js +0 -2
  402. package/dist/pine-core/p-dcc6ad67.system.entry.js +0 -2
  403. package/dist/pine-core/p-e7e25d42.entry.js +0 -2
  404. package/dist/pine-core/p-f82b464c.entry.js +0 -2
  405. package/dist/pine-core/p-f92055f3.entry.js +0 -2
  406. package/dist/pine-core/p-xbb79yLt.js.map +0 -1
  407. /package/dist/pine-core/{p-b59a0c6b.system.entry.js.map → p-02f48157.system.entry.js.map} +0 -0
  408. /package/dist/pine-core/{p-b30424e3.system.entry.js.map → p-063afa19.system.entry.js.map} +0 -0
  409. /package/dist/pine-core/{p-15202869.entry.js.map → p-10dbe3e2.entry.js.map} +0 -0
  410. /package/dist/pine-core/{p-5b7ab891.entry.js.map → p-12360e47.entry.js.map} +0 -0
  411. /package/dist/pine-core/{p-ac14c8e3.system.entry.js.map → p-137b3289.system.entry.js.map} +0 -0
  412. /package/dist/pine-core/{p-a737df90.entry.js.map → p-154a32f4.entry.js.map} +0 -0
  413. /package/dist/pine-core/{p-a847fad3.entry.js.map → p-2537aacb.entry.js.map} +0 -0
  414. /package/dist/pine-core/{p-4d25449c.entry.js.map → p-2cd0d520.entry.js.map} +0 -0
  415. /package/dist/pine-core/{p-cd335ec2.system.entry.js.map → p-2fe330d0.system.entry.js.map} +0 -0
  416. /package/dist/pine-core/{p-d0e336b7.system.entry.js.map → p-30ea3668.system.entry.js.map} +0 -0
  417. /package/dist/pine-core/{p-1daf66d1.entry.js.map → p-31168da5.entry.js.map} +0 -0
  418. /package/dist/pine-core/{p-732e2564.system.entry.js.map → p-325b3b0d.system.entry.js.map} +0 -0
  419. /package/dist/pine-core/{p-95f2782c.entry.js.map → p-3f97a965.entry.js.map} +0 -0
  420. /package/dist/pine-core/{p-ff182316.system.entry.js.map → p-40988b4d.system.entry.js.map} +0 -0
  421. /package/dist/pine-core/{p-b02936d2.entry.js.map → p-415ba884.entry.js.map} +0 -0
  422. /package/dist/pine-core/{p-9bfaed7e.system.entry.js.map → p-4c23c75b.system.entry.js.map} +0 -0
  423. /package/dist/pine-core/{p-bdf8bff3.system.entry.js.map → p-4d85945b.system.entry.js.map} +0 -0
  424. /package/dist/pine-core/{p-3f8b0885.system.entry.js.map → p-4d9eee67.system.entry.js.map} +0 -0
  425. /package/dist/pine-core/{p-e2104c31.entry.js.map → p-5040a872.entry.js.map} +0 -0
  426. /package/dist/pine-core/{p-a08b60ae.entry.js.map → p-5b9110fe.entry.js.map} +0 -0
  427. /package/dist/pine-core/{p-e3d76aa3.system.entry.js.map → p-5c982339.system.entry.js.map} +0 -0
  428. /package/dist/pine-core/{p-94b1997d.system.entry.js.map → p-5e92aa34.system.entry.js.map} +0 -0
  429. /package/dist/pine-core/{p-43990889.entry.js.map → p-63269b89.entry.js.map} +0 -0
  430. /package/dist/pine-core/{p-cf2e1c07.system.entry.js.map → p-70aa35fc.system.entry.js.map} +0 -0
  431. /package/dist/pine-core/{p-fc0ee6da.entry.js.map → p-757c7b80.entry.js.map} +0 -0
  432. /package/dist/pine-core/{p-1df25b57.system.entry.js.map → p-78ee2e08.system.entry.js.map} +0 -0
  433. /package/dist/pine-core/{p-2319298c.system.entry.js.map → p-7b5c8248.system.entry.js.map} +0 -0
  434. /package/dist/pine-core/{p-dad604e4.system.entry.js.map → p-84c7f663.system.entry.js.map} +0 -0
  435. /package/dist/pine-core/{p-f9ef2f74.system.entry.js.map → p-87eb8d4b.system.entry.js.map} +0 -0
  436. /package/dist/pine-core/{p-e7e25d42.entry.js.map → p-8eb1c168.entry.js.map} +0 -0
  437. /package/dist/pine-core/{p-e5bc22b6.system.entry.js.map → p-8fdb10c4.system.entry.js.map} +0 -0
  438. /package/dist/pine-core/{p-232e4282.system.entry.js.map → p-90615423.system.entry.js.map} +0 -0
  439. /package/dist/pine-core/{p-f79f6f08.system.entry.js.map → p-932283cf.system.entry.js.map} +0 -0
  440. /package/dist/pine-core/{p-0b05708b.entry.js.map → p-9ada659b.entry.js.map} +0 -0
  441. /package/dist/pine-core/{p-4778ae70.entry.js.map → p-9bb6cc3d.entry.js.map} +0 -0
  442. /package/dist/pine-core/{p-3f6b9520.entry.js.map → p-9c928c44.entry.js.map} +0 -0
  443. /package/dist/pine-core/{p-646ac76d.entry.js.map → p-9e4fc025.entry.js.map} +0 -0
  444. /package/dist/pine-core/{p-e8aad8dc.entry.js.map → p-9eccf7b9.entry.js.map} +0 -0
  445. /package/dist/pine-core/{p-00568c20.system.entry.js.map → p-a07b8e45.system.entry.js.map} +0 -0
  446. /package/dist/pine-core/{p-c5013d20.entry.js.map → p-a3cdff85.entry.js.map} +0 -0
  447. /package/dist/pine-core/{p-a4b16b32.system.entry.js.map → p-a5b24b1d.system.entry.js.map} +0 -0
  448. /package/dist/pine-core/{p-596acf65.entry.js.map → p-a99e8caf.entry.js.map} +0 -0
  449. /package/dist/pine-core/{p-002fe322.system.entry.js.map → p-ac240034.system.entry.js.map} +0 -0
  450. /package/dist/pine-core/{p-fe28b975.system.entry.js.map → p-b9650ed9.system.entry.js.map} +0 -0
  451. /package/dist/pine-core/{p-f8fba315.entry.js.map → p-bc85016b.entry.js.map} +0 -0
  452. /package/dist/pine-core/{p-61588eac.entry.js.map → p-bddc9c5a.entry.js.map} +0 -0
  453. /package/dist/pine-core/{p-7de73ac5.entry.js.map → p-c24d11c7.entry.js.map} +0 -0
  454. /package/dist/pine-core/{p-0ace9c16.entry.js.map → p-c7c00a27.entry.js.map} +0 -0
  455. /package/dist/pine-core/{p-cb6c279a.system.entry.js.map → p-cac3128b.system.entry.js.map} +0 -0
  456. /package/dist/pine-core/{p-098cbcd7.system.entry.js.map → p-cfb24f97.system.entry.js.map} +0 -0
  457. /package/dist/pine-core/{p-6cba6806.entry.js.map → p-d6302edd.entry.js.map} +0 -0
  458. /package/dist/pine-core/{p-04294b28.system.entry.js.map → p-daa36570.system.entry.js.map} +0 -0
  459. /package/dist/pine-core/{p-15650db8.entry.js.map → p-e6dc2297.entry.js.map} +0 -0
  460. /package/dist/pine-core/{p-9f53eb94.system.entry.js.map → p-e8cf15d7.system.entry.js.map} +0 -0
  461. /package/dist/pine-core/{p-f92055f3.entry.js.map → p-eb026745.entry.js.map} +0 -0
  462. /package/dist/pine-core/{p-e011d7e5.entry.js.map → p-fa05ea14.entry.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{r as i,h as t,H as e,a as s}from"./p-DHPhrb5T.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:var(--pine-z-index-raised)}: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:"996bf5f70f450e57b0c44023ddf5f44f6af8e367",class:this.classNames(),role:"gridcell",part:"cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},t("slot",{key:"f6e5fc35adeb18fa939534f3b409b282d121a797"}))}get hostElement(){return s(this)}};l.style=n;export{l as pds_table_cell};
2
- //# sourceMappingURL=p-3f6b9520.entry.js.map
1
+ import{r as i,h as t,H as e,a as s}from"./p-DHPhrb5T.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:var(--pine-z-index-raised)}: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:"102c412e68bd877ee88866d2c66838d62cb7cab2",class:this.classNames(),role:"gridcell",part:"cell",style:this.tableRef&&this.tableRef.fixedColumn&&this.tableRef.selectable?{"--fixed-cell-position":"40px"}:{}},t("slot",{key:"fae2d378d6e1c5c3abb34cb4a75b74930d56965c"}))}get hostElement(){return s(this)}};l.style=n;export{l as pds_table_cell};
2
+ //# sourceMappingURL=p-9c928c44.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as e,c as s,h as i,H as t,a as r}from"./p-DHPhrb5T.js";import{e as a,m as o}from"./p-DwjNklzi.js";import{b as n,e as l}from"./p-xbb79yLt.js";const d=":host{--pine-select-color-background-danger:var(--pine-color-red-050)}";const 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)}";const 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 var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring);--box-shadow-focus-error:0 0 0 1px var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring-danger)}:host .hidden,:host :host([hidden]){display:none}.pds-select{color:var(--pine-color-text);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));color:var(--pine-color-text);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)}:host-context([data-theme=dark]) select:has(~.pds-select__message .pds-select__error-message){background-color:var(--pine-color-red-950)}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-context([data-theme=dark]) :host(.is-invalid) select{background-color:var(--pine-color-red-950)}:host(.is-invalid) select:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select{background-color:var(--pine-color-accent-disabled);border-color:var(--pine-color-accent);color:var(--pine-color-text-accent)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select:hover:not(:disabled){border-color:var(--pine-color-accent-hover)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select:focus-visible{outline-color:var(--pine-color-focus-ring)}:host([highlight]:not(.is-disabled):not(.is-invalid)) .pds-select__select-icon{color:var(--pine-color-text-accent)}.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{color:var(--pine-color-text-message-danger);display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-select__error-message pds-icon{-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025)}.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:var(--pine-z-index-raised)}.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}';const h=class{constructor(i){e(this,i);this.pdsSelectChange=s(this,"pdsSelectChange");this.pdsBlur=s(this,"pdsBlur");this.pdsFocus=s(this,"pdsFocus");this.pdsKeyDown=s(this,"pdsKeyDown");this._type="select-one";this.disabled=false;this.multiple=false;this.required=false;this.onSelectUpdate=e=>{const s=e.target;const i=Array.from(s.options).filter((e=>e.selected)).map((e=>e.value));if(i.length===1&&!this.multiple){this.value=i[0]}else{this.value=i}this.pdsSelectChange.emit(e)};this.onBlur=e=>{this.pdsBlur.emit(e)};this.onFocus=e=>{this.pdsFocus.emit(e)};this.onKeyDown=e=>{this.pdsKeyDown.emit(e)};this.handleSlotChange=()=>{const e=this.slotContainer.querySelector("slot");this.selectEl.innerHTML="";const s=e.assignedElements({flatten:true});s.forEach((e=>{if(["OPTION","OPTGROUP"].includes(e.tagName)){const s=e.cloneNode(true);if(s.tagName==="OPTION"&&s.value===this.value){s.selected=true}this.selectEl.appendChild(s)}}));this.updateSelectedOption()}}valueChanged(){this.updateSelectedOption();this.updateFormValue()}multipleChanged(){this.updateType()}updateType(){this._type=this.multiple?"select-multiple":"select-one"}connectedCallback(){if(this.el.attachInternals){this.internals=this.el.attachInternals()}a(this.el,(()=>this._type))}componentWillLoad(){this.updateType();this.updateSelectedOption()}componentDidLoad(){this.updateFormValue()}updateSelectedOption(){if(this.selectEl){const e=this.selectEl.options;Array.from(e).map((e=>{if(Array.isArray(this.value)){e.selected=this.value.includes(e.value)}else{e.selected=this.value===e.value}}))}}getHelperMessage(){return this.helperMessage&&i("p",{class:"pds-select__helper-message",id:o(this.componentId,"helper")},this.helperMessage)}getErrorMessage(){return this.errorMessage&&i("p",{class:"pds-select__error-message",id:o(this.componentId,"error"),"aria-live":"assertive"},i("pds-icon",{icon:n,size:"small"}),this.errorMessage)}renderMessages(){if(!this.helperMessage&&!this.errorMessage)return null;return i("div",{class:"pds-select__message"},this.getHelperMessage(),this.getErrorMessage())}classNames(){const e=[];if(this.invalid){e.push("is-invalid")}if(this.disabled){e.push("is-disabled")}return e.join(" ")}renderAction(){const e=this.el.querySelector('[slot="action"]')!==null;if(e){return i("div",{class:"pds-select__action",part:"action"},i("slot",{name:"action"}))}return null}updateFormValue(){if(this.internals&&this.internals.setFormValue){const e=this.value;if(Array.isArray(e)){if(e.length>1){const s=new FormData;e.forEach((e=>s.append(this.name||"",e)));this.internals.setFormValue(s)}else{this.internals.setFormValue(e[0]||null)}}else{this.internals.setFormValue(e||null)}if(this.selectEl&&this.internals&&this.internals.setValidity){this.internals.setValidity(this.selectEl.validity,this.selectEl.validationMessage,this.selectEl)}}}formResetCallback(){this.value="";this.updateFormValue()}formDisabledCallback(e){this.disabled=e}formStateRestoreCallback(e){if(typeof e==="string"){this.value=e}else if(e instanceof FormData&&this.name){const s=e.getAll(this.name);if(s.length>1){this.value=s.filter((e=>typeof e==="string"))}else if(s.length===1&&typeof s[0]==="string"){this.value=s[0]}}}render(){const e=this.el.querySelector('[slot="action"]')!==null;return i(t,{key:"354ed4b85725971579610ef241ab23c97c2c9ee0","aria-disabled":this.disabled?"true":null,class:this.classNames(),"has-action":e&&!this.hideLabel?"true":null},i("div",{key:"59f097884c42ed63e1905a2f66292f74739ff8d5",class:"pds-select"},!this.hideLabel&&i("div",{key:"d828471e10b9f9d9019865fba759c93907b0a878",class:"pds-select__label-wrapper"},i("label",{key:"396b3a6eb54a9c90f3682eac87ba5289f0ca054f",htmlFor:this.componentId},i("span",{key:"8eca7e638b4f98d234276c88a215262e6043afaf",class:this.hideLabel?"visually-hidden":""},this.label)),e&&this.renderAction()),i("select",{key:"56abb05d6082cd813fb93af2c5f889ee06657669","aria-label":this.hideLabel?this.label:undefined,autocomplete:this.autocomplete||undefined,class:"pds-select__field",disabled:this.disabled,id:this.componentId,multiple:this.multiple,name:this.name,onBlur:this.onBlur,onChange:this.onSelectUpdate,onFocus:this.onFocus,onKeyDown:this.onKeyDown,part:"select",required:this.required,ref:e=>this.selectEl=e}),i("div",{key:"d7462a47c8642256156bb8c8a1036240795f4d95","aria-hidden":"true",class:"hidden",ref:e=>this.slotContainer=e},i("slot",{key:"abc72dc5c7a3a771fff88b187a37a8b8f81f62de",onSlotchange:this.handleSlotChange})),this.renderMessages(),!this.multiple&&i("pds-icon",{key:"56dd01b36f12c6e30adff410d95f1ef76731fbbc",class:"pds-select__select-icon",icon:l})))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:["valueChanged"],multiple:["multipleChanged"]}}};h.style=d+(c+p);export{h as pds_select};
2
- //# sourceMappingURL=p-646ac76d.entry.js.map
1
+ import{r as e,c as s,h as i,H as t,a as r}from"./p-DHPhrb5T.js";import{e as o,m as a}from"./p-DwjNklzi.js";import{b as n,e as l}from"./p-DY8eSueV.js";const d=":host{--pine-select-color-background-danger:var(--pine-color-red-050)}";const 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)}";const 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 var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring);--box-shadow-focus-error:0 0 0 1px var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring-danger)}:host .hidden,:host :host([hidden]){display:none}.pds-select{color:var(--pine-color-text);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));color:var(--pine-color-text);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)}:host-context([data-theme=dark]) select:has(~.pds-select__message .pds-select__error-message){background-color:var(--pine-color-red-950)}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-context([data-theme=dark]) :host(.is-invalid) select{background-color:var(--pine-color-red-950)}:host(.is-invalid) select:focus-visible{outline-color:var(--pine-color-focus-ring-danger)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select{background-color:var(--pine-color-accent-disabled);border-color:var(--pine-color-accent);color:var(--pine-color-text-accent)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select:hover:not(:disabled){border-color:var(--pine-color-accent-hover)}:host([highlight]:not(.is-disabled):not(.is-invalid)) select:focus-visible{outline-color:var(--pine-color-focus-ring)}:host([highlight]:not(.is-disabled):not(.is-invalid)) .pds-select__select-icon{color:var(--pine-color-text-accent)}.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{color:var(--pine-color-text-message-danger);display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}.pds-select__error-message pds-icon{-webkit-margin-before:var(--pine-dimension-025);margin-block-start:var(--pine-dimension-025)}.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:var(--pine-z-index-raised)}.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}';const h=class{constructor(i){e(this,i);this.pdsSelectChange=s(this,"pdsSelectChange");this.pdsBlur=s(this,"pdsBlur");this.pdsFocus=s(this,"pdsFocus");this.pdsKeyDown=s(this,"pdsKeyDown");this._type="select-one";this.disabled=false;this.multiple=false;this.required=false;this.onSelectUpdate=e=>{const s=e.target;const i=Array.from(s.options).filter((e=>e.selected)).map((e=>e.value));if(i.length===1&&!this.multiple){this.value=i[0]}else{this.value=i}this.pdsSelectChange.emit(e)};this.onBlur=e=>{this.pdsBlur.emit(e)};this.onFocus=e=>{this.pdsFocus.emit(e)};this.onKeyDown=e=>{this.pdsKeyDown.emit(e)};this.handleSlotChange=()=>{const e=this.slotContainer.querySelector("slot");this.selectEl.innerHTML="";const s=e.assignedElements({flatten:true});s.forEach((e=>{if(["OPTION","OPTGROUP"].includes(e.tagName)){const s=e.cloneNode(true);if(s.tagName==="OPTION"&&s.value===this.value){s.selected=true}this.selectEl.appendChild(s)}}));this.updateSelectedOption()}}valueChanged(){this.updateSelectedOption();this.updateFormValue()}multipleChanged(){this.updateType()}updateType(){this._type=this.multiple?"select-multiple":"select-one"}connectedCallback(){if(this.el.attachInternals){this.internals=this.el.attachInternals()}o(this.el,(()=>this._type))}componentWillLoad(){this.updateType();this.updateSelectedOption()}componentDidLoad(){this.updateFormValue()}updateSelectedOption(){if(this.selectEl){const e=this.selectEl.options;Array.from(e).map((e=>{if(Array.isArray(this.value)){e.selected=this.value.includes(e.value)}else{e.selected=this.value===e.value}}))}}getHelperMessage(){return this.helperMessage&&i("p",{class:"pds-select__helper-message",id:a(this.componentId,"helper")},this.helperMessage)}getErrorMessage(){return this.errorMessage&&i("p",{class:"pds-select__error-message",id:a(this.componentId,"error"),"aria-live":"assertive"},i("pds-icon",{icon:n,size:"small"}),this.errorMessage)}renderMessages(){if(!this.helperMessage&&!this.errorMessage)return null;return i("div",{class:"pds-select__message"},this.getHelperMessage(),this.getErrorMessage())}classNames(){const e=[];if(this.invalid){e.push("is-invalid")}if(this.disabled){e.push("is-disabled")}return e.join(" ")}renderAction(){const e=this.el.querySelector('[slot="action"]')!==null;if(e){return i("div",{class:"pds-select__action",part:"action"},i("slot",{name:"action"}))}return null}updateFormValue(){if(this.internals&&this.internals.setFormValue){const e=this.value;if(Array.isArray(e)){if(e.length>1){const s=new FormData;e.forEach((e=>s.append(this.name||"",e)));this.internals.setFormValue(s)}else{this.internals.setFormValue(e[0]||null)}}else{this.internals.setFormValue(e||null)}if(this.selectEl&&this.internals&&this.internals.setValidity){this.internals.setValidity(this.selectEl.validity,this.selectEl.validationMessage,this.selectEl)}}}formResetCallback(){this.value="";this.updateFormValue()}formDisabledCallback(e){this.disabled=e}formStateRestoreCallback(e){if(typeof e==="string"){this.value=e}else if(e instanceof FormData&&this.name){const s=e.getAll(this.name);if(s.length>1){this.value=s.filter((e=>typeof e==="string"))}else if(s.length===1&&typeof s[0]==="string"){this.value=s[0]}}}render(){const e=this.el.querySelector('[slot="action"]')!==null;return i(t,{key:"ce2ea014cb9651d4702eddc57a873684bd30aecb","aria-disabled":this.disabled?"true":null,class:this.classNames(),"has-action":e&&!this.hideLabel?"true":null},i("div",{key:"960c12bb9cc16261ddd54f381dc633a72724847d",class:"pds-select"},!this.hideLabel&&i("div",{key:"599ab73596c72413778aeb54148105d28556c7b6",class:"pds-select__label-wrapper"},i("label",{key:"04a9c836822bc80013d022e5e91f025ac304c34b",htmlFor:this.componentId},i("span",{key:"5b01e324cc15017672682af17126bcc5942b0d6a",class:this.hideLabel?"visually-hidden":""},this.label)),e&&this.renderAction()),i("select",{key:"f13a0bfa5b6e7b34e7edcf9b807e90bbdcc8da95","aria-label":this.hideLabel?this.label:undefined,autocomplete:this.autocomplete||undefined,class:"pds-select__field",disabled:this.disabled,id:this.componentId,multiple:this.multiple,name:this.name,onBlur:this.onBlur,onChange:this.onSelectUpdate,onFocus:this.onFocus,onKeyDown:this.onKeyDown,part:"select",required:this.required,ref:e=>this.selectEl=e}),i("div",{key:"cd01ea77340c9d1ffdf61494a64138c9361a93a1","aria-hidden":"true",class:"hidden",ref:e=>this.slotContainer=e},i("slot",{key:"34c97591724950d7e4a5dfcb35b1945f2d457dbb",onSlotchange:this.handleSlotChange})),this.renderMessages(),!this.multiple&&i("pds-icon",{key:"7179c3c86292e79839fa245d7ed5b050295893cc",class:"pds-select__select-icon",icon:l})))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:["valueChanged"],multiple:["multipleChanged"]}}};h.style=d+(c+p);export{h as pds_select};
2
+ //# sourceMappingURL=p-9e4fc025.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,c as e,h as s,H as i,a as r}from"./p-DHPhrb5T.js";import{c as o}from"./p-DnUJodVd.js";const h=":host{--color-background-interactive:var(--pine-color-border-disabled);border-color:inherit;display:table-row;vertical-align:inherit}: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:var(--pine-z-index-raised)}:host(:hover),:host(:hover)::part(checkbox-cell),:host(:hover) ::slotted(pds-table-cell),:host(.is-selected),:host(.is-selected)::part(checkbox-cell),:host(.is-selected) ::slotted(pds-table-cell){background:var(--color-background-interactive)}:host(.has-divider) ::slotted(pds-table-cell),:host(.has-divider) pds-table-cell{-webkit-border-after:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);border-block-end:var(--pine-border-width-thin) solid var(--pine-color-border-subtle)}:host(.has-divider.is-last-row) ::slotted(pds-table-cell),:host(.has-divider.is-last-row) pds-table-cell{-webkit-border-after:0;border-block-end:0}";const l=class{constructor(s){t(this,s);this.pdsTableRowSelected=e(this,"pdsTableRowSelected");this.observer=null;this.bodyObserver=null;this.hasDivider=false;this.isLastRow=false;this.handleClick=()=>{this.isSelected=!this.isSelected;this.handleSelect(this.isSelected)};this.handleSelect=t=>{this.indeterminate=false;if(!o("pds-table-head",this.hostElement)){const e=Array.from(this.hostElement.parentNode.children).indexOf(this.hostElement);this.pdsTableRowSelected.emit({rowIndex:e,isSelected:t})}};this.generateUniqueId=()=>{const t=Math.random().toString(36).substring(2,8);const e=(new Date).toISOString().replace(/[:.]/g,"-");const s=`${t}-${e}`;return s}}classNames(){const t=[];if(this.isSelected){t.push("is-selected")}if(this.hasDivider){t.push("has-divider")}if(this.isLastRow){t.push("is-last-row")}return t.join(" ")}componentWillRender(){this.tableRef=this.hostElement.closest("pds-table");if(this.tableRef&&this.tableRef.fixedColumn){const t=this.hostElement.querySelector("pds-table-cell");t===null||t===void 0?void 0:t.classList.add("is-fixed")}}componentWillLoad(){if(this.isSelected){this.handleSelect(this.isSelected)}}connectedCallback(){this.tableRef=this.hostElement.closest("pds-table");this.setupObservers();this.updateDividerState()}disconnectedCallback(){this.cleanupObservers()}cleanupObservers(){if(this.observer){this.observer.disconnect();this.observer=null}if(this.bodyObserver){this.bodyObserver.disconnect();this.bodyObserver=null}}setupObservers(){this.cleanupObservers();if(this.tableRef&&typeof MutationObserver!=="undefined"){this.observer=new MutationObserver((()=>{this.updateDividerState()}));this.observer.observe(this.tableRef,{attributes:true,attributeFilter:["row-dividers"]})}const t=this.hostElement.closest("pds-table-body");if(t&&typeof MutationObserver!=="undefined"){this.bodyObserver=new MutationObserver((()=>{this.updateLastRowState()}));this.bodyObserver.observe(t,{childList:true})}}shouldHaveDivider(){if(!this.tableRef){this.tableRef=this.hostElement.closest("pds-table")}return!!(this.tableRef&&this.tableRef.rowDividers)}updateDividerState(){this.hasDivider=this.shouldHaveDivider();this.updateLastRowState()}updateLastRowState(){if(!this.hasDivider){this.isLastRow=false;return}const t=this.hostElement.closest("pds-table-body");if(t){const e=Array.from(t.querySelectorAll("pds-table-row"));this.isLastRow=e[e.length-1]===this.hostElement}else{this.isLastRow=false}}render(){return s(i,{key:"dedf37f2841e51a325b6c414d3e7ec0072bdf78f",class:this.classNames(),role:"row",part:"row"},this.tableRef&&this.tableRef.selectable&&s("pds-table-cell",{key:"3e9295398c8f48cb7aa78d10daf5201ae8f86e9f",part:this.tableRef.fixedColumn?"checkbox-cell":"checkbox-cell",class:this.tableRef.selectable?"has-checkbox":""},s("pds-checkbox",{key:"b786f181988110d3e3d47928da9290dfd79f5fbd",componentId:this.generateUniqueId(),onClick:this.handleClick,indeterminate:this.indeterminate,label:"Select Row",hideLabel:true,checked:this.isSelected,part:"row-checkbox"})),s("slot",{key:"d37e3d44d34f81553060185d96fb44a55a40edc8"}))}get hostElement(){return r(this)}};l.style=h;export{l as pds_table_row};
2
- //# sourceMappingURL=p-e8aad8dc.entry.js.map
1
+ import{r as t,c as e,h as s,H as i,a as r}from"./p-DHPhrb5T.js";import{c as o}from"./p-DnUJodVd.js";const h=":host{--color-background-interactive:var(--pine-color-border-disabled);border-color:inherit;display:table-row;vertical-align:inherit}: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:var(--pine-z-index-raised)}:host(:hover),:host(:hover)::part(checkbox-cell),:host(:hover) ::slotted(pds-table-cell),:host(.is-selected),:host(.is-selected)::part(checkbox-cell),:host(.is-selected) ::slotted(pds-table-cell){background:var(--color-background-interactive)}:host(.has-divider) ::slotted(pds-table-cell),:host(.has-divider) pds-table-cell{-webkit-border-after:var(--pine-border-width-thin) solid var(--pine-color-border-subtle);border-block-end:var(--pine-border-width-thin) solid var(--pine-color-border-subtle)}:host(.has-divider.is-last-row) ::slotted(pds-table-cell),:host(.has-divider.is-last-row) pds-table-cell{-webkit-border-after:0;border-block-end:0}";const l=class{constructor(s){t(this,s);this.pdsTableRowSelected=e(this,"pdsTableRowSelected");this.observer=null;this.bodyObserver=null;this.hasDivider=false;this.isLastRow=false;this.handleClick=()=>{this.isSelected=!this.isSelected;this.handleSelect(this.isSelected)};this.handleSelect=t=>{this.indeterminate=false;if(!o("pds-table-head",this.hostElement)){const e=Array.from(this.hostElement.parentNode.children).indexOf(this.hostElement);this.pdsTableRowSelected.emit({rowIndex:e,isSelected:t})}};this.generateUniqueId=()=>{const t=Math.random().toString(36).substring(2,8);const e=(new Date).toISOString().replace(/[:.]/g,"-");const s=`${t}-${e}`;return s}}classNames(){const t=[];if(this.isSelected){t.push("is-selected")}if(this.hasDivider){t.push("has-divider")}if(this.isLastRow){t.push("is-last-row")}return t.join(" ")}componentWillRender(){this.tableRef=this.hostElement.closest("pds-table");if(this.tableRef&&this.tableRef.fixedColumn){const t=this.hostElement.querySelector("pds-table-cell");t===null||t===void 0?void 0:t.classList.add("is-fixed")}}componentWillLoad(){if(this.isSelected){this.handleSelect(this.isSelected)}}connectedCallback(){this.tableRef=this.hostElement.closest("pds-table");this.setupObservers();this.updateDividerState()}disconnectedCallback(){this.cleanupObservers()}cleanupObservers(){if(this.observer){this.observer.disconnect();this.observer=null}if(this.bodyObserver){this.bodyObserver.disconnect();this.bodyObserver=null}}setupObservers(){this.cleanupObservers();if(this.tableRef&&typeof MutationObserver!=="undefined"){this.observer=new MutationObserver((()=>{this.updateDividerState()}));this.observer.observe(this.tableRef,{attributes:true,attributeFilter:["row-dividers"]})}const t=this.hostElement.closest("pds-table-body");if(t&&typeof MutationObserver!=="undefined"){this.bodyObserver=new MutationObserver((()=>{this.updateLastRowState()}));this.bodyObserver.observe(t,{childList:true})}}shouldHaveDivider(){if(!this.tableRef){this.tableRef=this.hostElement.closest("pds-table")}return!!(this.tableRef&&this.tableRef.rowDividers)}updateDividerState(){this.hasDivider=this.shouldHaveDivider();this.updateLastRowState()}updateLastRowState(){if(!this.hasDivider){this.isLastRow=false;return}const t=this.hostElement.closest("pds-table-body");if(t){const e=Array.from(t.querySelectorAll("pds-table-row"));this.isLastRow=e[e.length-1]===this.hostElement}else{this.isLastRow=false}}render(){return s(i,{key:"900905bc103a54d3f13b59a66cfd53178de0da49",class:this.classNames(),role:"row",part:"row"},this.tableRef&&this.tableRef.selectable&&s("pds-table-cell",{key:"f5a5a0426f15182e278b052090c71f45e8848347",part:this.tableRef.fixedColumn?"checkbox-cell":"checkbox-cell",class:this.tableRef.selectable?"has-checkbox":""},s("pds-checkbox",{key:"1fd91b0d4bf412dc3a2705fcb5909e42a54bde56",componentId:this.generateUniqueId(),onClick:this.handleClick,indeterminate:this.indeterminate,label:"Select Row",hideLabel:true,checked:this.isSelected,part:"row-checkbox"})),s("slot",{key:"17a60a0251a36613cc8631efe780020d4a5e1167"}))}get hostElement(){return r(this)}};l.style=h;export{l as pds_table_row};
2
+ //# sourceMappingURL=p-9eccf7b9.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"p-WhfStK1C.system.js","sources":["src/components/pds-chip/pds-chip.tokens.scss?tag=pds-chip&encapsulation=shadow","src/components/pds-chip/pds-chip.scss?tag=pds-chip&encapsulation=shadow","src/components/pds-chip/pds-chip.tsx"],"sourcesContent":["@use '~@kajabi-ui/styles/dist/pine/components/pds-chip/pds-chip.tokens'\n","@use 'sass:map';\n\n:host {\n --sizing-close: var(--pine-dimension-125);\n\n align-items: center;\n border-radius: var(--pine-dimension-sm);\n display: inline-flex;\n padding-block: var(--pine-dimension-025);\n padding-inline: var(--pine-dimension-150);\n}\n\n$pds-chip-sentiment: (\n accent: var(--pine-chip-color-accent),\n danger: var(--pine-chip-color-danger),\n info: var(--pine-chip-color-info),\n neutral: var(--pine-chip-color-neutral),\n success: var(--pine-chip-color-success),\n warning: var(--pine-chip-color-warning),\n);\n\n/* stylelint-disable pine-design-system/prefer-semantic-tokens */\n$pds-chip-sentiment-text: (\n accent: var(--pine-color-text-accent),\n danger: var(--pine-color-text-danger),\n info: var(--pine-color-text-info),\n neutral: var(--pine-color-grey-900),\n success: var(--pine-color-text-success),\n warning: var(--pine-color-text-warning),\n);\n/* stylelint-enable pine-design-system/prefer-semantic-tokens */\n\n$pds-chip-sentiment-dots: (\n accent: var(--pine-chip-color-accent-dot),\n danger: var(--pine-chip-color-danger-dot),\n info: var(--pine-chip-color-info-dot),\n neutral: var(--pine-chip-color-neutral-dot),\n success: var(--pine-chip-color-success-dot),\n warning: var(--pine-chip-color-warning-dot),\n);\n\n$pds-chip-sentiment-hover: (\n accent: var(--pine-chip-color-accent-hover),\n danger: var(--pine-chip-color-danger-hover),\n info: var(--pine-chip-color-info-hover),\n neutral: var(--pine-chip-color-neutral-hover),\n success: var(--pine-chip-color-success-hover),\n warning: var(--pine-chip-color-warning-hover),\n);\n\n@each $sentiment, $value in $pds-chip-sentiment {\n :host(.pds-chip--#{$sentiment}) {\n background: $value;\n border: var(--pine-border-width) solid var(--pine-chip-color-#{$sentiment}-hover);\n\n // dot colors\n .pds-chip__dot {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-dots, $sentiment);\n }\n\n .pds-chip__label, .pds-chip__button, .pds-chip__close {\n /* stylelint-disable-next-line */\n color: map.get($pds-chip-sentiment-text, $sentiment);\n font-weight: var(--pine-font-weight-medium);\n }\n\n // tag close hover colors\n .pds-chip__close:hover {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-hover, $sentiment);\n }\n }\n // dropdown hover colors\n :host(.pds-chip--#{$sentiment}.pds-chip--dropdown:hover) {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-hover, $sentiment);\n }\n}\n\n.pds-chip__dot {\n border: var(--pine-border-width) solid transparent;\n border-radius: var(--pine-border-radius-full);\n display: inline-block;\n height: var(--pine-dimension-2xs);\n margin-inline-end: var(--pine-dimension-2xs);\n width: var(--pine-dimension-2xs);\n}\n\n.pds-chip__label {\n align-items: center;\n display: flex;\n\n pds-icon {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n}\n\n.pds-chip__label, .pds-chip__button {\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n\n// dropdown\n\n:host(.pds-chip--dropdown) {\n padding: var(--pine-dimension-none);\n}\n\n.pds-chip__button {\n align-items: center;\n appearance: none;\n background: transparent;\n border: var(--pine-dimension-none);\n border-radius: var(--pine-dimension-sm);\n cursor: pointer;\n display: flex;\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n pds-icon:first-child {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n\n pds-icon:last-child {\n margin-inline-end: calc(var(--pine-dimension-025) * -1);\n margin-inline-start: var(--pine-dimension-2xs);\n }\n}\n\n.pds-chip__close {\n appearance: none;\n background: transparent;\n border: 0;\n border-radius: var(--pine-border-radius-full);\n height: var(--sizing-close);\n margin-inline-end: calc(var(--pine-dimension-xs) * -1);\n margin-inline-start: var(--pine-dimension-2xs);\n padding: var(--sizing-close);\n position: relative;\n width: var(--sizing-close);\n\n pds-icon {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n }\n}\n\n// large\n\n:host(.pds-chip--large) {\n padding-block: var(--pine-dimension-025);\n padding-inline: var(--pine-dimension-150);\n\n .pds-chip__label, .pds-chip__button {\n font-family: var(--pine-font-family-heading);\n font-size: var(--pine-font-size-heading-6);\n font-weight: var(--pine-font-weight-medium);\n letter-spacing: var(--pine-letter-spacing-heading-6);\n }\n}\n\n:host(.pds-chip--large.pds-chip--dropdown) {\n padding: var(--pine-dimension-none);\n\n .pds-chip__button {\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n }\n}\n\n:host(.pds-chip--brand) {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: linear-gradient(90deg, #FF3E14 0%, #6B62F2 100%);\n border: 0;\n padding: 1px;\n position: relative;\n\n .pds-chip__label {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: rgba(255, 255, 255, 0.9);\n border-radius: calc(var(--pine-dimension-sm) - 1px);\n /* stylelint-disable-next-line pine-design-system/prefer-semantic-tokens */\n color: var(--pine-color-grey-900);\n font-weight: var(--pine-font-weight-medium);\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n position: relative;\n z-index: var(--pine-z-index-raised);\n\n pds-icon {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n }\n\n .pds-chip__button, .pds-chip__close {\n /* stylelint-disable-next-line pine-design-system/prefer-semantic-tokens */\n color: var(--pine-color-grey-900);\n font-weight: var(--pine-font-weight-medium);\n position: relative;\n z-index: var(--pine-z-index-raised);\n }\n\n .pds-chip__button {\n pds-icon:first-child {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n }\n\n // tag close hover colors\n .pds-chip__close:hover {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: rgba(255, 255, 255, 0.8);\n }\n}\n","import { downSmall, remove } from '@pine-ds/icons/icons';\nimport { Component, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\nimport type { ChipSentimentType, ChipVariantType } from '@utils/types';\n\n/**\n * @slot (default) - The chip's label text.\n */\n\n@Component({\n tag: 'pds-chip',\n styleUrls: ['pds-chip.tokens.scss', 'pds-chip.scss'],\n shadow: true,\n})\nexport class PdsChip {\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether a dot should be displayed on the chip.\n * Note: This prop is ignored when sentiment is 'brand'.\n * @defaultValue false\n */\n @Prop() dot = false;\n\n /**\n * The name of the icon to display before the chip text.\n */\n @Prop() icon?: string;\n\n /**\n * Determines whether the chip should be displayed in a larger size.\n * @defaultValue false\n */\n @Prop() large = false;\n\n /**\n * Defines the color scheme of the chip.\n * @defaultValue 'neutral'\n */\n @Prop() sentiment: ChipSentimentType = 'neutral';\n\n /**\n * Sets the style variant of the chip.\n * Note: This prop is ignored when sentiment is 'brand'.\n * @defaultValue 'text'\n */\n @Prop() variant: ChipVariantType = 'text';\n\n /**\n * Event emitted when the close button is clicked on a tag variant chip.\n */\n @Event() pdsTagCloseClick: EventEmitter<void>;\n\n private handleCloseClick = () => {\n this.pdsTagCloseClick.emit();\n };\n\n private classNames() {\n const classNames = ['pds-chip'];\n\n if (this.large) {\n classNames.push('pds-chip--large');\n }\n\n // For brand sentiment, always use text variant\n const effectiveVariant = this.sentiment === 'brand' ? 'text' : this.variant;\n if (effectiveVariant) {\n classNames.push('pds-chip--' + effectiveVariant);\n }\n\n if (this.sentiment) {\n classNames.push('pds-chip--' + this.sentiment);\n }\n\n return classNames.join(' ');\n }\n\n private get effectiveVariant() {\n // For brand sentiment, force text variant behavior\n return this.sentiment === 'brand' ? 'text' : this.variant;\n }\n\n private get iconSize() {\n // Icon size based on large prop\n return this.large ? '14px' : '12px';\n }\n\n private setChipContent() {\n const isDropdown = this.effectiveVariant === 'dropdown';\n\n // For brand sentiment, ignore dot prop\n const showDot = this.sentiment === 'brand' ? false : this.dot;\n\n const chipContent = isDropdown ? (\n <button class=\"pds-chip__button\" type=\"button\">\n {this.icon && <pds-icon icon={this.icon} size={this.iconSize} aria-hidden=\"true\"></pds-icon>}\n {showDot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n <slot></slot>\n <pds-icon icon={downSmall} size={this.iconSize} aria-hidden=\"true\"></pds-icon>\n </button>\n ) : (\n <span class=\"pds-chip__label\">\n {this.icon && <pds-icon icon={this.icon} size={this.iconSize} aria-hidden=\"true\"></pds-icon>}\n {showDot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n <slot></slot>\n </span>\n );\n\n return chipContent;\n }\n\n render() {\n return (\n <Host class={this.classNames()} id={this.componentId}>\n {this.setChipContent()}\n {this.effectiveVariant === 'tag' && (\n <button class=\"pds-chip__close\" type=\"button\" onClick={this.handleCloseClick} aria-label=\"Remove\">\n <pds-icon icon={remove} size={this.iconSize}></pds-icon>\n </button>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p-B0Otb6kF.system.js","sources":["src/components/pds-chip/pds-chip.tokens.scss?tag=pds-chip&encapsulation=shadow","src/components/pds-chip/pds-chip.scss?tag=pds-chip&encapsulation=shadow","src/components/pds-chip/pds-chip.tsx"],"sourcesContent":["@use '~@kajabi-ui/styles/dist/pine/components/pds-chip/pds-chip.tokens'\n","@use 'sass:map';\n\n:host {\n --sizing-close: var(--pine-dimension-125);\n\n align-items: center;\n border-radius: var(--pine-dimension-sm);\n display: inline-flex;\n padding-block: var(--pine-dimension-025);\n padding-inline: var(--pine-dimension-150);\n}\n\n$pds-chip-sentiment: (\n accent: var(--pine-chip-color-accent),\n danger: var(--pine-chip-color-danger),\n info: var(--pine-chip-color-info),\n neutral: var(--pine-chip-color-neutral),\n success: var(--pine-chip-color-success),\n warning: var(--pine-chip-color-warning),\n);\n\n/* stylelint-disable pine-design-system/prefer-semantic-tokens */\n$pds-chip-sentiment-text: (\n accent: var(--pine-color-text-accent),\n danger: var(--pine-color-text-danger),\n info: var(--pine-color-text-info),\n neutral: var(--pine-color-grey-900),\n success: var(--pine-color-text-success),\n warning: var(--pine-color-text-warning),\n);\n/* stylelint-enable pine-design-system/prefer-semantic-tokens */\n\n$pds-chip-sentiment-dots: (\n accent: var(--pine-chip-color-accent-dot),\n danger: var(--pine-chip-color-danger-dot),\n info: var(--pine-chip-color-info-dot),\n neutral: var(--pine-chip-color-neutral-dot),\n success: var(--pine-chip-color-success-dot),\n warning: var(--pine-chip-color-warning-dot),\n);\n\n$pds-chip-sentiment-hover: (\n accent: var(--pine-chip-color-accent-hover),\n danger: var(--pine-chip-color-danger-hover),\n info: var(--pine-chip-color-info-hover),\n neutral: var(--pine-chip-color-neutral-hover),\n success: var(--pine-chip-color-success-hover),\n warning: var(--pine-chip-color-warning-hover),\n);\n\n@each $sentiment, $value in $pds-chip-sentiment {\n :host(.pds-chip--#{$sentiment}) {\n background: $value;\n border: var(--pine-border-width) solid var(--pine-chip-color-#{$sentiment}-hover);\n\n // dot colors\n .pds-chip__dot {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-dots, $sentiment);\n }\n\n .pds-chip__label, .pds-chip__button, .pds-chip__close {\n /* stylelint-disable-next-line */\n color: map.get($pds-chip-sentiment-text, $sentiment);\n font-weight: var(--pine-font-weight-medium);\n }\n\n // tag close hover colors\n .pds-chip__close:hover {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-hover, $sentiment);\n }\n }\n // dropdown hover colors\n :host(.pds-chip--#{$sentiment}.pds-chip--dropdown:hover) {\n /* stylelint-disable-next-line */\n background: map.get($pds-chip-sentiment-hover, $sentiment);\n }\n}\n\n.pds-chip__dot {\n border: var(--pine-border-width) solid transparent;\n border-radius: var(--pine-border-radius-full);\n display: inline-block;\n height: var(--pine-dimension-2xs);\n margin-inline-end: var(--pine-dimension-2xs);\n width: var(--pine-dimension-2xs);\n}\n\n.pds-chip__label {\n align-items: center;\n display: flex;\n\n pds-icon {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n}\n\n.pds-chip__label, .pds-chip__button {\n font: var(--pine-typography-body-medium);\n letter-spacing: var(--pine-letter-spacing);\n}\n\n// dropdown\n\n:host(.pds-chip--dropdown) {\n padding: var(--pine-dimension-none);\n}\n\n.pds-chip__button {\n align-items: center;\n appearance: none;\n background: transparent;\n border: var(--pine-dimension-none);\n border-radius: var(--pine-dimension-sm);\n cursor: pointer;\n display: flex;\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n }\n\n pds-icon:first-child {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n\n pds-icon:last-child {\n margin-inline-end: calc(var(--pine-dimension-025) * -1);\n margin-inline-start: var(--pine-dimension-2xs);\n }\n}\n\n.pds-chip__close {\n appearance: none;\n background: transparent;\n border: 0;\n border-radius: var(--pine-border-radius-full);\n height: var(--sizing-close);\n margin-inline-end: calc(var(--pine-dimension-xs) * -1);\n margin-inline-start: var(--pine-dimension-2xs);\n padding: var(--sizing-close);\n position: relative;\n width: var(--sizing-close);\n\n pds-icon {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n &:focus-visible {\n outline: var(--pine-outline-focus);\n }\n}\n\n// large\n\n:host(.pds-chip--large) {\n padding-block: var(--pine-dimension-025);\n padding-inline: var(--pine-dimension-150);\n\n .pds-chip__label, .pds-chip__button {\n font-family: var(--pine-font-family-heading);\n font-size: var(--pine-font-size-heading-6);\n font-weight: var(--pine-font-weight-medium);\n letter-spacing: var(--pine-letter-spacing-heading-6);\n }\n}\n\n:host(.pds-chip--large.pds-chip--dropdown) {\n padding: var(--pine-dimension-none);\n\n .pds-chip__button {\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n }\n}\n\n:host(.pds-chip--brand) {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: linear-gradient(90deg, #FF3E14 0%, #6B62F2 100%);\n border: 0;\n padding: 1px;\n position: relative;\n\n .pds-chip__label {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: rgba(255, 255, 255, 0.9);\n border-radius: calc(var(--pine-dimension-sm) - 1px);\n /* stylelint-disable-next-line pine-design-system/prefer-semantic-tokens */\n color: var(--pine-color-grey-900);\n font-weight: var(--pine-font-weight-medium);\n padding: var(--pine-dimension-025) var(--pine-dimension-150);\n position: relative;\n z-index: var(--pine-z-index-raised);\n\n pds-icon {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n }\n\n .pds-chip__button, .pds-chip__close {\n /* stylelint-disable-next-line pine-design-system/prefer-semantic-tokens */\n color: var(--pine-color-grey-900);\n font-weight: var(--pine-font-weight-medium);\n position: relative;\n z-index: var(--pine-z-index-raised);\n }\n\n .pds-chip__button {\n pds-icon:first-child {\n margin-inline-end: var(--pine-dimension-2xs);\n }\n }\n\n // tag close hover colors\n .pds-chip__close:hover {\n /* stylelint-disable-next-line pine-design-system/no-hardcoded-colors */\n background: rgba(255, 255, 255, 0.8);\n }\n}\n","import { downSmall, remove } from '@pine-ds/icons/icons';\nimport { Component, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\nimport type { ChipSentimentType, ChipVariantType } from '@utils/types';\n\n/**\n * @slot (default) - The chip's label text.\n */\n\n@Component({\n tag: 'pds-chip',\n styleUrls: ['pds-chip.tokens.scss', 'pds-chip.scss'],\n shadow: true,\n})\nexport class PdsChip {\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether a dot should be displayed on the chip.\n * Note: This prop is ignored when sentiment is 'brand'.\n * @defaultValue false\n */\n @Prop() dot = false;\n\n /**\n * The name of the icon to display before the chip text.\n */\n @Prop() icon?: string;\n\n /**\n * Determines whether the chip should be displayed in a larger size.\n * @defaultValue false\n */\n @Prop() large = false;\n\n /**\n * Defines the color scheme of the chip.\n * @defaultValue 'neutral'\n */\n @Prop() sentiment: ChipSentimentType = 'neutral';\n\n /**\n * Sets the style variant of the chip.\n * Note: This prop is ignored when sentiment is 'brand'.\n * @defaultValue 'text'\n */\n @Prop() variant: ChipVariantType = 'text';\n\n /**\n * Event emitted when the close button is clicked on a tag variant chip.\n */\n @Event() pdsTagCloseClick: EventEmitter<void>;\n\n private handleCloseClick = () => {\n this.pdsTagCloseClick.emit();\n };\n\n private classNames() {\n const classNames = ['pds-chip'];\n\n if (this.large) {\n classNames.push('pds-chip--large');\n }\n\n // For brand sentiment, always use text variant\n const effectiveVariant = this.sentiment === 'brand' ? 'text' : this.variant;\n if (effectiveVariant) {\n classNames.push('pds-chip--' + effectiveVariant);\n }\n\n if (this.sentiment) {\n classNames.push('pds-chip--' + this.sentiment);\n }\n\n return classNames.join(' ');\n }\n\n private get effectiveVariant() {\n // For brand sentiment, force text variant behavior\n return this.sentiment === 'brand' ? 'text' : this.variant;\n }\n\n private get iconSize() {\n // Icon size based on large prop\n return this.large ? '14px' : '12px';\n }\n\n private setChipContent() {\n const isDropdown = this.effectiveVariant === 'dropdown';\n\n // For brand sentiment, ignore dot prop\n const showDot = this.sentiment === 'brand' ? false : this.dot;\n\n const chipContent = isDropdown ? (\n <button class=\"pds-chip__button\" type=\"button\">\n {this.icon && <pds-icon icon={this.icon} size={this.iconSize} aria-hidden=\"true\"></pds-icon>}\n {showDot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n <slot></slot>\n <pds-icon icon={downSmall} size={this.iconSize} aria-hidden=\"true\"></pds-icon>\n </button>\n ) : (\n <span class=\"pds-chip__label\">\n {this.icon && <pds-icon icon={this.icon} size={this.iconSize} aria-hidden=\"true\"></pds-icon>}\n {showDot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n <slot></slot>\n </span>\n );\n\n return chipContent;\n }\n\n render() {\n return (\n <Host class={this.classNames()} id={this.componentId}>\n {this.setChipContent()}\n {this.effectiveVariant === 'tag' && (\n <button class=\"pds-chip__close\" type=\"button\" onClick={this.handleCloseClick} aria-label=\"Remove\">\n <pds-icon icon={remove} size={this.iconSize}></pds-icon>\n </button>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"p-CUmDvil2.system.js","sources":["src/components/pds-table/pds-table-body/pds-table-body.scss?tag=pds-table-body&encapsulation=shadow","src/components/pds-table/pds-table-body/pds-table-body.tsx"],"sourcesContent":[":host {\n border-color: inherit;\n display: table-row-group;\n vertical-align: middle;\n}\n","import { Component, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'pds-table-body',\n styleUrls: ['pds-table-body.scss'],\n shadow: true,\n})\nexport class PdsTableBody {\n\n render() {\n return (\n <Host role=\"rowgroup\" part=\"body\">\n <slot></slot>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;MAAA,MAAM,eAAe,GAAG,2EAA2E;;YCOtF,YAAY,6BAAA,MAAA;;;;UAEvB,MAAM,GAAA;MACJ,QAAA,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,EAAA,EAC/B,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACR;;;;;;;;;;;"}
1
+ {"version":3,"file":"p-BA95hFrH.system.js","sources":["src/components/pds-table/pds-table-body/pds-table-body.scss?tag=pds-table-body&encapsulation=shadow","src/components/pds-table/pds-table-body/pds-table-body.tsx"],"sourcesContent":[":host {\n border-color: inherit;\n display: table-row-group;\n vertical-align: middle;\n}\n","import { Component, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'pds-table-body',\n styleUrls: ['pds-table-body.scss'],\n shadow: true,\n})\nexport class PdsTableBody {\n\n render() {\n return (\n <Host role=\"rowgroup\" part=\"body\">\n <slot></slot>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;MAAA,MAAM,eAAe,GAAG,2EAA2E;;YCOtF,YAAY,6BAAA,MAAA;;;;UAEvB,MAAM,GAAA;MACJ,QAAA,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,EAAA,EAC/B,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACR;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"p-B4EMeCRH.system.js","sources":["src/components/pds-filters/pds-filter/pds-filter.scss?tag=pds-filter&encapsulation=shadow","src/components/pds-filters/pds-filter/pds-filter.tsx"],"sourcesContent":[":host {\n --box-shadow-focus: 0 0 0 1px var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring);\n\n display: inline-block;\n position: relative;\n}\n\n.pds-filter__trigger {\n align-items: center;\n /* stylelint-disable-next-line property-no-unknown */\n anchor-name: --filter-trigger;\n background: var(--pine-color-background-container);\n border: var(--pine-border);\n border-radius: var(--pine-dimension-100);\n box-shadow: var(--pine-box-shadow-050);\n box-sizing: border-box;\n color: var(--pine-color-text-tertiary);\n cursor: pointer;\n display: inline-flex;\n font-family: var(--pine-font-family-inter);\n font-size: var(--pine-font-size-100);\n font-weight: var(--pine-font-weight-400);\n gap: var(--pine-dimension-050);\n letter-spacing: var(--pine-letter-spacing-114);\n line-height: var(--pine-line-height-150);\n padding: var(--pine-dimension-025) var(--pine-dimension-125);\n position: relative;\n transition: all 0.2s ease;\n\n pds-icon {\n block-size: var(--pine-font-size-100);\n color: var(--pine-color-text-secondary);\n flex-shrink: 0;\n inline-size: var(--pine-font-size-100);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-background-subtle);\n border-color: var(--pine-color-border-hover);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n}\n\n.pds-filter__trigger--selected {\n background-color: var(--pine-color-purple-050);\n border-color: var(--pine-color-purple-500);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-purple-100);\n border-color: var(--pine-color-purple-500);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__trigger--more {\n background-color: var(--pine-color-background-container-hover);\n border: var(--pine-border-width-thin) dashed var(--pine-color-border);\n color: var(--pine-color-text-tertiary);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-background-subtle);\n border-color: var(--pine-color-border-hover);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__trigger--clear {\n background: transparent;\n border: var(--pine-border-width-thin) solid transparent;\n border-radius: var(--pine-dimension-100);\n box-shadow: none;\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n\n &:hover {\n background-color: var(--pine-color-purple-100);\n border-color: var(--pine-color-purple-100);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__button-content {\n align-items: center;\n display: inline-flex;\n gap: var(--pine-dimension-050);\n max-inline-size: 148px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.pds-filter__button-text {\n line-height: var(--pine-line-height-150);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.pds-filter__dropdown-icon {\n block-size: var(--pine-dimension-200);\n flex-shrink: 0;\n inline-size: var(--pine-dimension-200);\n}\n\n\n.pds-filter__popover {\n background-color: var(--pine-color-background-container);\n border: 0;\n border-radius: var(--pine-dimension-100);\n box-shadow: var(--pine-box-shadow-100);\n display: none;\n inline-size: 228px;\n inset: unset;\n padding: var(--pine-dimension-100);\n z-index: var(--pine-z-index-overlay);\n\n /* stylelint-disable-next-line selector-pseudo-class-no-unknown */\n &:popover-open,\n &.is-open {\n display: block;\n }\n\n /* Modern browsers: CSS anchor positioning with JavaScript-controlled flipping */\n @supports (anchor-name: --test) {\n inset-block-start: calc(anchor(--filter-trigger bottom) + var(--pine-dimension-100));\n inset-inline-start: anchor(--filter-trigger left);\n position: fixed; /* Anchor positioning requires fixed positioning */\n /* stylelint-disable-next-line property-no-unknown */\n position-anchor: --filter-trigger;\n\n /* CSS position-try disabled for precise JavaScript-controlled flipping */\n\n /* Flipping classes applied by JavaScript for precise control */\n &.popover-flip-horizontal {\n inset-inline-start: anchor(--filter-trigger right);\n transform: translateX(-100%);\n }\n\n &.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n transform: translateY(calc(-100% - var(--pine-dimension-100)));\n }\n\n &.popover-flip-horizontal.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n inset-inline-start: anchor(--filter-trigger right);\n transform: translate(-100%, calc(-100% - var(--pine-dimension-100)));\n }\n\n /* Ensure fallback class works with flipping in modern browsers */\n &.is-open.popover-flip-horizontal {\n inset-inline-start: anchor(--filter-trigger right);\n transform: translateX(-100%);\n }\n\n &.is-open.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n transform: translateY(calc(-100% - var(--pine-dimension-100)));\n }\n\n &.is-open.popover-flip-horizontal.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n inset-inline-start: anchor(--filter-trigger right);\n transform: translate(-100%, calc(-100% - var(--pine-dimension-100)));\n }\n\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Method, Listen } from '@stencil/core';\nimport type { BasePdsProps } from '@utils/interfaces';\nimport type { PdsFilterOpenEventDetail, PdsFilterCloseEventDetail, PdsFilterClearEventDetail, PdsFilterVariant } from './filter-interface';\n\nimport { enlarge, trash } from '@pine-ds/icons/icons';\n\n/**\n * Individual filter component with cross-browser popover positioning.\n *\n * Uses a hybrid approach for optimal cross-browser compatibility:\n * - Modern browsers: CSS anchor positioning + JavaScript flip classes\n * - Fallback browsers: JavaScript positioning with viewport boundary detection\n *\n * @part button - Exposes the trigger button element for styling.\n * @part button-content - Exposes the button content container for styling.\n * @part button-text - Exposes the button text for styling.\n * @part icon - Exposes the icon component for styling.\n * @part popover - Exposes the popover container for styling.\n * @slot (default) - Popover content that will be displayed when the filter is open.\n */\n\n@Component({\n tag: 'pds-filter',\n styleUrl: 'pds-filter.scss',\n shadow: true,\n})\nexport class PdsFilter implements BasePdsProps {\n @Element() el!: HTMLPdsFilterElement;\n\n private popoverEl: HTMLElement;\n private scrollRAF: number | null = null;\n private lastScrollTime = 0;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * The variant style of the filter trigger.\n * @defaultValue 'default'\n */\n @Prop() variant: PdsFilterVariant = 'default';\n\n /**\n * The name of the icon to display in the trigger button.\n * For 'clear' variant, this is ignored as it always shows trash icon.\n */\n @Prop() icon?: string;\n\n /**\n * The text content displayed in the trigger button.\n */\n @Prop() text?: string;\n\n\n /**\n * State to track if the popover is open.\n */\n @State() isOpen = false;\n\n /**\n * Event emitted when the filter popover is opened.\n */\n @Event() pdsFilterOpen: EventEmitter<PdsFilterOpenEventDetail>;\n\n /**\n * Event emitted when the filter popover is closed.\n */\n @Event() pdsFilterClose: EventEmitter<PdsFilterCloseEventDetail>;\n\n /**\n * Event emitted when the clear variant is clicked.\n */\n @Event() pdsFilterClear: EventEmitter<PdsFilterClearEventDetail>;\n\n\n /**\n * Component lifecycle: Clean up when disconnected from DOM.\n * Prevents memory leaks by canceling pending operations and closing popovers.\n */\n disconnectedCallback() {\n // Cancel pending animation frames\n if (this.scrollRAF) {\n cancelAnimationFrame(this.scrollRAF);\n this.scrollRAF = null;\n }\n\n this.lastScrollTime = 0;\n\n // Clean up native popover event listeners\n if (this.popoverEl) {\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n if (supportsPopoverAPI) {\n this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);\n }\n }\n\n // Ensure popover is closed\n if (this.isOpen && this.popoverEl) {\n try {\n this.popoverEl.hidePopover();\n } catch (error) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n }\n }\n\n\n componentDidRender() {\n // Note: popoverEl is set via ref callback in render method\n // For browsers with native popover API, we need direct element listeners\n // since the document listener may not capture native popover toggle events\n if (this.popoverEl) {\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n if (supportsPopoverAPI) {\n // Remove any existing listeners to avoid duplicates\n this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);\n // Add direct listener for native popover events\n this.popoverEl.addEventListener('toggle', this.handleNativePopoverToggle);\n }\n }\n }\n\n /**\n * Handle native popover toggle events directly on the element\n * This is needed for browsers with native Popover API support\n */\n private handleNativePopoverToggle = (event: Event) => {\n const target = event.target as HTMLElement;\n\n if (target && target.id === `${this.componentId}-popover`) {\n // Check current popover state\n let isCurrentlyOpen = false;\n try {\n isCurrentlyOpen = target.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isCurrentlyOpen = target.style.display === 'block';\n }\n\n // Update state\n this.isOpen = isCurrentlyOpen;\n\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 0);\n\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n };\n\n /**\n * Reposition popovers on window resize.\n */\n @Listen('resize', { target: 'window' })\n handleWindowResize() {\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 16);\n }\n }\n\n /**\n * Reposition popovers on scroll with performance throttling.\n */\n @Listen('scroll', { target: 'window', passive: true })\n handleWindowScroll() {\n if (this.isOpen) {\n const supportsAnchorPositioning = \"anchorName\" in document.documentElement.style;\n const now = performance.now();\n\n const throttleMs = supportsAnchorPositioning ? 66 : 33;\n if (now - this.lastScrollTime < throttleMs) {\n return;\n }\n\n this.lastScrollTime = now;\n\n if (this.scrollRAF) {\n cancelAnimationFrame(this.scrollRAF);\n }\n\n this.scrollRAF = requestAnimationFrame(() => {\n if (this.isOpen && this.popoverEl && this.el.isConnected) {\n this.adjustPopoverPosition();\n }\n this.scrollRAF = null;\n });\n }\n }\n\n /**\n * Closes other open filter popovers to ensure only one is open at a time.\n */\n private closeOtherPopovers() {\n const allFilters = document.querySelectorAll('pds-filter');\n\n allFilters.forEach((filter) => {\n if (filter === this.el) return;\n\n const popover = filter.shadowRoot?.querySelector('.pds-filter__popover') as HTMLElement;\n\n if (popover) {\n // Check for popover API support to avoid crashes\n let isPopoverOpen = false;\n try {\n isPopoverOpen = popover.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isPopoverOpen = popover.style.display === 'block';\n }\n\n if (isPopoverOpen) {\n try {\n popover.hidePopover();\n } catch (error) {\n popover.style.display = 'none';\n popover.classList.remove('is-open');\n }\n }\n }\n });\n }\n\n /**\n * Adjusts popover position to keep it within viewport bounds.\n * Uses CSS anchor positioning for modern browsers, JavaScript for fallback browsers.\n */\n private adjustPopoverPosition() {\n if (!this.popoverEl || this.variant === 'clear') return;\n\n const triggerEl = this.el.shadowRoot?.querySelector('.pds-filter__trigger') as HTMLElement;\n if (!triggerEl) return;\n\n const triggerRect = triggerEl.getBoundingClientRect();\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n\n const supportsAnchorPositioning = \"anchorName\" in document.documentElement.style;\n\n // Get dimensions for boundary detection\n const popoverWidth = 228;\n const popoverHeight = this.popoverEl.getBoundingClientRect().height || 200;\n\n // Boundary detection for flipping\n const bufferSpace = 20;\n const wouldOverflowRight = (triggerRect.left + popoverWidth + bufferSpace) > viewportWidth;\n const wouldOverflowBottom = (triggerRect.bottom + 8 + popoverHeight + bufferSpace) > viewportHeight;\n\n if (supportsAnchorPositioning) {\n // Modern browsers: CSS anchor positioning + JavaScript-controlled flipping\n this.popoverEl.classList.remove('popover-flip-horizontal', 'popover-flip-vertical');\n\n if (wouldOverflowRight) {\n this.popoverEl.classList.add('popover-flip-horizontal');\n }\n\n if (wouldOverflowBottom) {\n this.popoverEl.classList.add('popover-flip-vertical');\n }\n\n } else {\n // Fallback browsers: JavaScript positioning with boundary detection\n let left = triggerRect.left;\n let top = triggerRect.bottom + 8;\n let transformOrigin = 'top left';\n\n // Apply horizontal flipping if needed\n if (wouldOverflowRight) {\n const actualPopoverWidth = this.popoverEl.getBoundingClientRect().width || popoverWidth;\n left = triggerRect.right - actualPopoverWidth;\n transformOrigin = 'top right';\n }\n\n // Apply vertical flipping if needed\n if (wouldOverflowBottom) {\n top = triggerRect.top - popoverHeight - 8;\n transformOrigin = transformOrigin.replace('top', 'bottom');\n }\n\n // Apply positioning in single DOM write for performance\n this.popoverEl.style.cssText = `\n position: fixed;\n left: ${left}px;\n top: ${top}px;\n z-index: var(--pine-z-index-overlay);\n transform-origin: ${transformOrigin};\n `;\n }\n }\n\n /**\n * Opens the filter popover programmatically.\n * Note: Clear variant does not support popover functionality.\n */\n @Method()\n async showFilter() {\n if (this.variant === 'clear') {\n console.warn('Clear variant does not support showFilter method');\n return;\n }\n\n if (this.popoverEl != null) {\n try {\n this.popoverEl.showPopover();\n } catch (error) {\n // Fallback for testing environment where showPopover is not available\n this.popoverEl.style.display = 'block';\n this.popoverEl.classList.add('is-open');\n }\n }\n }\n\n /**\n * Closes the filter popover programmatically.\n * Note: Clear variant does not support popover functionality.\n */\n @Method()\n async hideFilter() {\n if (this.variant === 'clear') {\n console.warn('Clear variant does not support hideFilter method');\n return;\n }\n\n if (this.popoverEl != null) {\n try {\n this.popoverEl.hidePopover();\n } catch (error) {\n // Fallback for testing environment where hidePopover is not available\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n }\n }\n\n /**\n * Listen for popover toggle events for browsers without native Popover API (fallback).\n * Native API browsers use direct element listeners to avoid conflicts.\n */\n @Listen('toggle', { target: 'document' })\n handlePopoverToggle(event: Event) {\n const target = event.target as HTMLElement;\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n // Only handle events for fallback browsers (Firefox) to avoid duplicate handling\n if (!supportsPopoverAPI && target && target.id === `${this.componentId}-popover`) {\n // Check for popover API support to avoid crashes\n let isCurrentlyOpen = false;\n try {\n isCurrentlyOpen = target.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isCurrentlyOpen = target.style.display === 'block';\n }\n\n // Update state\n this.isOpen = isCurrentlyOpen;\n\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 0);\n\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }\n\n /**\n * Listen for clicks to detect outside dismissal.\n */\n @Listen('click', { target: 'document' })\n handleDocumentClick(event: Event) {\n // Check if click is outside and popover gets closed\n if (!this.el.contains(event.target as Node) && this.isOpen && this.variant !== 'clear') {\n setTimeout(() => {\n if (this.popoverEl && this.isOpen) {\n // Check for popover API support to avoid crashes\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n let popoverIsClosed = false;\n if (supportsPopoverAPI) {\n try {\n popoverIsClosed = !this.popoverEl.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n popoverIsClosed = this.popoverEl.style.display !== 'block';\n }\n } else {\n // Manual fallback - assume popover was closed by outside click\n popoverIsClosed = true;\n }\n\n if (popoverIsClosed) {\n this.isOpen = false;\n if (!supportsPopoverAPI) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n }\n\n /**\n * Listen for Escape key to ensure close event fires.\n */\n @Listen('keydown', { target: 'document' })\n handleEscapeKey(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.isOpen && this.variant !== 'clear') {\n // Check if popover was closed by Escape\n setTimeout(() => {\n if (this.popoverEl && this.isOpen) {\n // Check for popover API support to avoid crashes\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n let popoverIsClosed = false;\n if (supportsPopoverAPI) {\n try {\n popoverIsClosed = !this.popoverEl.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n popoverIsClosed = this.popoverEl.style.display !== 'block';\n }\n } else {\n // Manual fallback - assume popover was closed by Escape\n popoverIsClosed = true;\n }\n\n if (popoverIsClosed) {\n this.isOpen = false;\n if (!supportsPopoverAPI) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n }\n\n /**\n * Handle keyboard interactions for clear variant only.\n */\n private handleKeyDown = (event: KeyboardEvent) => {\n // Only handle clear variant manually, let native API handle everything else\n if (this.variant === 'clear' && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n this.handleClick();\n }\n };\n\n /**\n * Handle trigger button click. Clear variant emits event, others toggle popover.\n */\n private handleClick = (event?: Event) => {\n if (this.variant === 'clear') {\n this.pdsFilterClear.emit({\n componentId: this.componentId,\n text: this.text,\n });\n return;\n }\n\n this.closeOtherPopovers();\n\n // Check for popover API support\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n if (!supportsPopoverAPI) {\n // Manual fallback for browsers without popover API support\n // Prevent default to avoid conflicts with any native behavior\n if (event) {\n event.preventDefault();\n }\n\n setTimeout(() => {\n if (this.popoverEl != null) {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.popoverEl.style.display = 'block';\n this.popoverEl.classList.add('is-open');\n this.adjustPopoverPosition();\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n // For browsers with native popover API, let the native behavior handle the toggle\n // The toggle event listener will capture the state change and emit events\n };\n\n /**\n * Get the appropriate icon for the variant.\n */\n private getIcon() {\n if (this.variant === 'clear') {\n return trash;\n }\n return this.icon;\n }\n\n /**\n * Get CSS classes for the trigger button.\n */\n private getTriggerClasses() {\n const classes = ['pds-filter__trigger'];\n classes.push(`pds-filter__trigger--${this.variant}`);\n\n if (this.isOpen && this.variant !== 'clear') {\n classes.push('pds-filter__trigger--open');\n }\n\n return classes.join(' ');\n }\n\n /**\n * Render the trigger icon.\n */\n private renderIcon() {\n const iconToRender = this.getIcon();\n if (iconToRender == null || iconToRender === '') return null;\n\n return (\n <pds-icon\n icon={iconToRender}\n size=\"var(--pine-font-size-100)\"\n aria-hidden=\"true\"\n part=\"icon\"\n />\n );\n }\n\n /**\n * Render the dropdown icon for selected variant.\n */\n private renderDropdownIcon() {\n if (this.variant === 'selected') {\n return (\n <pds-icon\n icon={enlarge}\n size=\"var(--pine-dimension-200)\"\n aria-hidden=\"true\"\n class=\"pds-filter__dropdown-icon\"\n part=\"icon\"\n />\n );\n }\n return null;\n }\n\n render() {\n return (\n <Host id={this.componentId}>\n <button\n class={this.getTriggerClasses()}\n type=\"button\"\n popoverTarget={this.variant !== 'clear' ? `${this.componentId}-popover` : undefined}\n popoverTargetAction={this.variant !== 'clear' ? 'toggle' : undefined}\n onKeyDown={this.variant === 'clear' ? this.handleKeyDown : undefined}\n onClick={(event) => this.handleClick(event)}\n part=\"button\"\n aria-expanded={this.isOpen ? 'true' : 'false'}\n aria-haspopup={this.variant !== 'clear' ? 'true' : undefined}\n aria-controls={this.variant !== 'clear' ? `${this.componentId}-popover` : undefined}\n >\n <span class=\"pds-filter__button-content\" part=\"button-content\">\n {this.renderIcon()}\n {this.text && (\n <span class=\"pds-filter__button-text\" part=\"button-text\">\n {this.text}\n </span>\n )}\n {this.renderDropdownIcon()}\n </span>\n </button>\n\n {this.variant !== 'clear' && (\n <div\n ref={el => this.popoverEl = el}\n id={`${this.componentId}-popover`}\n class=\"pds-filter__popover\"\n popover=\"auto\"\n part=\"popover\"\n >\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p-BHjZufAO.system.js","sources":["src/components/pds-filters/pds-filter/pds-filter.scss?tag=pds-filter&encapsulation=shadow","src/components/pds-filters/pds-filter/pds-filter.tsx"],"sourcesContent":[":host {\n --box-shadow-focus: 0 0 0 1px var(--pine-color-background-container), 0 0 0 3px var(--pine-color-focus-ring);\n\n display: inline-block;\n position: relative;\n}\n\n.pds-filter__trigger {\n align-items: center;\n /* stylelint-disable-next-line property-no-unknown */\n anchor-name: --filter-trigger;\n background: var(--pine-color-background-container);\n border: var(--pine-border);\n border-radius: var(--pine-dimension-100);\n box-shadow: var(--pine-box-shadow-050);\n box-sizing: border-box;\n color: var(--pine-color-text-tertiary);\n cursor: pointer;\n display: inline-flex;\n font-family: var(--pine-font-family-inter);\n font-size: var(--pine-font-size-100);\n font-weight: var(--pine-font-weight-400);\n gap: var(--pine-dimension-050);\n letter-spacing: var(--pine-letter-spacing-114);\n line-height: var(--pine-line-height-150);\n padding: var(--pine-dimension-025) var(--pine-dimension-125);\n position: relative;\n transition: all 0.2s ease;\n\n pds-icon {\n block-size: var(--pine-font-size-100);\n color: var(--pine-color-text-secondary);\n flex-shrink: 0;\n inline-size: var(--pine-font-size-100);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-background-subtle);\n border-color: var(--pine-color-border-hover);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n}\n\n.pds-filter__trigger--selected {\n background-color: var(--pine-color-purple-050);\n border-color: var(--pine-color-purple-500);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-purple-100);\n border-color: var(--pine-color-purple-500);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__trigger--more {\n background-color: var(--pine-color-background-container-hover);\n border: var(--pine-border-width-thin) dashed var(--pine-color-border);\n color: var(--pine-color-text-tertiary);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-background-subtle);\n border-color: var(--pine-color-border-hover);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-text-secondary);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__trigger--clear {\n background: transparent;\n border: var(--pine-border-width-thin) solid transparent;\n border-radius: var(--pine-dimension-100);\n box-shadow: none;\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n\n &:hover {\n background-color: var(--pine-color-purple-100);\n border-color: var(--pine-color-purple-100);\n color: var(--pine-color-purple-600);\n\n pds-icon {\n color: var(--pine-color-purple-600);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n.pds-filter__button-content {\n align-items: center;\n display: inline-flex;\n gap: var(--pine-dimension-050);\n max-inline-size: 148px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.pds-filter__button-text {\n line-height: var(--pine-line-height-150);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.pds-filter__dropdown-icon {\n block-size: var(--pine-dimension-200);\n flex-shrink: 0;\n inline-size: var(--pine-dimension-200);\n}\n\n\n.pds-filter__popover {\n background-color: var(--pine-color-background-container);\n border: 0;\n border-radius: var(--pine-dimension-100);\n box-shadow: var(--pine-box-shadow-100);\n display: none;\n inline-size: 228px;\n inset: unset;\n padding: var(--pine-dimension-100);\n z-index: var(--pine-z-index-overlay);\n\n /* stylelint-disable-next-line selector-pseudo-class-no-unknown */\n &:popover-open,\n &.is-open {\n display: block;\n }\n\n /* Modern browsers: CSS anchor positioning with JavaScript-controlled flipping */\n @supports (anchor-name: --test) {\n inset-block-start: calc(anchor(--filter-trigger bottom) + var(--pine-dimension-100));\n inset-inline-start: anchor(--filter-trigger left);\n position: fixed; /* Anchor positioning requires fixed positioning */\n /* stylelint-disable-next-line property-no-unknown */\n position-anchor: --filter-trigger;\n\n /* CSS position-try disabled for precise JavaScript-controlled flipping */\n\n /* Flipping classes applied by JavaScript for precise control */\n &.popover-flip-horizontal {\n inset-inline-start: anchor(--filter-trigger right);\n transform: translateX(-100%);\n }\n\n &.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n transform: translateY(calc(-100% - var(--pine-dimension-100)));\n }\n\n &.popover-flip-horizontal.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n inset-inline-start: anchor(--filter-trigger right);\n transform: translate(-100%, calc(-100% - var(--pine-dimension-100)));\n }\n\n /* Ensure fallback class works with flipping in modern browsers */\n &.is-open.popover-flip-horizontal {\n inset-inline-start: anchor(--filter-trigger right);\n transform: translateX(-100%);\n }\n\n &.is-open.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n transform: translateY(calc(-100% - var(--pine-dimension-100)));\n }\n\n &.is-open.popover-flip-horizontal.popover-flip-vertical {\n inset-block-start: anchor(--filter-trigger top);\n inset-inline-start: anchor(--filter-trigger right);\n transform: translate(-100%, calc(-100% - var(--pine-dimension-100)));\n }\n\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, State, Method, Listen } from '@stencil/core';\nimport type { BasePdsProps } from '@utils/interfaces';\nimport type { PdsFilterOpenEventDetail, PdsFilterCloseEventDetail, PdsFilterClearEventDetail, PdsFilterVariant } from './filter-interface';\n\nimport { enlarge, trash } from '@pine-ds/icons/icons';\n\n/**\n * Individual filter component with cross-browser popover positioning.\n *\n * Uses a hybrid approach for optimal cross-browser compatibility:\n * - Modern browsers: CSS anchor positioning + JavaScript flip classes\n * - Fallback browsers: JavaScript positioning with viewport boundary detection\n *\n * @part button - Exposes the trigger button element for styling.\n * @part button-content - Exposes the button content container for styling.\n * @part button-text - Exposes the button text for styling.\n * @part icon - Exposes the icon component for styling.\n * @part popover - Exposes the popover container for styling.\n * @slot (default) - Popover content that will be displayed when the filter is open.\n */\n\n@Component({\n tag: 'pds-filter',\n styleUrl: 'pds-filter.scss',\n shadow: true,\n})\nexport class PdsFilter implements BasePdsProps {\n @Element() el!: HTMLPdsFilterElement;\n\n private popoverEl: HTMLElement;\n private scrollRAF: number | null = null;\n private lastScrollTime = 0;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * The variant style of the filter trigger.\n * @defaultValue 'default'\n */\n @Prop() variant: PdsFilterVariant = 'default';\n\n /**\n * The name of the icon to display in the trigger button.\n * For 'clear' variant, this is ignored as it always shows trash icon.\n */\n @Prop() icon?: string;\n\n /**\n * The text content displayed in the trigger button.\n */\n @Prop() text?: string;\n\n\n /**\n * State to track if the popover is open.\n */\n @State() isOpen = false;\n\n /**\n * Event emitted when the filter popover is opened.\n */\n @Event() pdsFilterOpen: EventEmitter<PdsFilterOpenEventDetail>;\n\n /**\n * Event emitted when the filter popover is closed.\n */\n @Event() pdsFilterClose: EventEmitter<PdsFilterCloseEventDetail>;\n\n /**\n * Event emitted when the clear variant is clicked.\n */\n @Event() pdsFilterClear: EventEmitter<PdsFilterClearEventDetail>;\n\n\n /**\n * Component lifecycle: Clean up when disconnected from DOM.\n * Prevents memory leaks by canceling pending operations and closing popovers.\n */\n disconnectedCallback() {\n // Cancel pending animation frames\n if (this.scrollRAF) {\n cancelAnimationFrame(this.scrollRAF);\n this.scrollRAF = null;\n }\n\n this.lastScrollTime = 0;\n\n // Clean up native popover event listeners\n if (this.popoverEl) {\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n if (supportsPopoverAPI) {\n this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);\n }\n }\n\n // Ensure popover is closed\n if (this.isOpen && this.popoverEl) {\n try {\n this.popoverEl.hidePopover();\n } catch (error) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n }\n }\n\n\n componentDidRender() {\n // Note: popoverEl is set via ref callback in render method\n // For browsers with native popover API, we need direct element listeners\n // since the document listener may not capture native popover toggle events\n if (this.popoverEl) {\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n if (supportsPopoverAPI) {\n // Remove any existing listeners to avoid duplicates\n this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);\n // Add direct listener for native popover events\n this.popoverEl.addEventListener('toggle', this.handleNativePopoverToggle);\n }\n }\n }\n\n /**\n * Handle native popover toggle events directly on the element\n * This is needed for browsers with native Popover API support\n */\n private handleNativePopoverToggle = (event: Event) => {\n const target = event.target as HTMLElement;\n\n if (target && target.id === `${this.componentId}-popover`) {\n // Check current popover state\n let isCurrentlyOpen = false;\n try {\n isCurrentlyOpen = target.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isCurrentlyOpen = target.style.display === 'block';\n }\n\n // Update state\n this.isOpen = isCurrentlyOpen;\n\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 0);\n\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n };\n\n /**\n * Reposition popovers on window resize.\n */\n @Listen('resize', { target: 'window' })\n handleWindowResize() {\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 16);\n }\n }\n\n /**\n * Reposition popovers on scroll with performance throttling.\n */\n @Listen('scroll', { target: 'window', passive: true })\n handleWindowScroll() {\n if (this.isOpen) {\n const supportsAnchorPositioning = \"anchorName\" in document.documentElement.style;\n const now = performance.now();\n\n const throttleMs = supportsAnchorPositioning ? 66 : 33;\n if (now - this.lastScrollTime < throttleMs) {\n return;\n }\n\n this.lastScrollTime = now;\n\n if (this.scrollRAF) {\n cancelAnimationFrame(this.scrollRAF);\n }\n\n this.scrollRAF = requestAnimationFrame(() => {\n if (this.isOpen && this.popoverEl && this.el.isConnected) {\n this.adjustPopoverPosition();\n }\n this.scrollRAF = null;\n });\n }\n }\n\n /**\n * Closes other open filter popovers to ensure only one is open at a time.\n */\n private closeOtherPopovers() {\n const allFilters = document.querySelectorAll('pds-filter');\n\n allFilters.forEach((filter) => {\n if (filter === this.el) return;\n\n const popover = filter.shadowRoot?.querySelector('.pds-filter__popover') as HTMLElement;\n\n if (popover) {\n // Check for popover API support to avoid crashes\n let isPopoverOpen = false;\n try {\n isPopoverOpen = popover.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isPopoverOpen = popover.style.display === 'block';\n }\n\n if (isPopoverOpen) {\n try {\n popover.hidePopover();\n } catch (error) {\n popover.style.display = 'none';\n popover.classList.remove('is-open');\n }\n }\n }\n });\n }\n\n /**\n * Adjusts popover position to keep it within viewport bounds.\n * Uses CSS anchor positioning for modern browsers, JavaScript for fallback browsers.\n */\n private adjustPopoverPosition() {\n if (!this.popoverEl || this.variant === 'clear') return;\n\n const triggerEl = this.el.shadowRoot?.querySelector('.pds-filter__trigger') as HTMLElement;\n if (!triggerEl) return;\n\n const triggerRect = triggerEl.getBoundingClientRect();\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n\n const supportsAnchorPositioning = \"anchorName\" in document.documentElement.style;\n\n // Get dimensions for boundary detection\n const popoverWidth = 228;\n const popoverHeight = this.popoverEl.getBoundingClientRect().height || 200;\n\n // Boundary detection for flipping\n const bufferSpace = 20;\n const wouldOverflowRight = (triggerRect.left + popoverWidth + bufferSpace) > viewportWidth;\n const wouldOverflowBottom = (triggerRect.bottom + 8 + popoverHeight + bufferSpace) > viewportHeight;\n\n if (supportsAnchorPositioning) {\n // Modern browsers: CSS anchor positioning + JavaScript-controlled flipping\n this.popoverEl.classList.remove('popover-flip-horizontal', 'popover-flip-vertical');\n\n if (wouldOverflowRight) {\n this.popoverEl.classList.add('popover-flip-horizontal');\n }\n\n if (wouldOverflowBottom) {\n this.popoverEl.classList.add('popover-flip-vertical');\n }\n\n } else {\n // Fallback browsers: JavaScript positioning with boundary detection\n let left = triggerRect.left;\n let top = triggerRect.bottom + 8;\n let transformOrigin = 'top left';\n\n // Apply horizontal flipping if needed\n if (wouldOverflowRight) {\n const actualPopoverWidth = this.popoverEl.getBoundingClientRect().width || popoverWidth;\n left = triggerRect.right - actualPopoverWidth;\n transformOrigin = 'top right';\n }\n\n // Apply vertical flipping if needed\n if (wouldOverflowBottom) {\n top = triggerRect.top - popoverHeight - 8;\n transformOrigin = transformOrigin.replace('top', 'bottom');\n }\n\n // Apply positioning in single DOM write for performance\n this.popoverEl.style.cssText = `\n position: fixed;\n left: ${left}px;\n top: ${top}px;\n z-index: var(--pine-z-index-overlay);\n transform-origin: ${transformOrigin};\n `;\n }\n }\n\n /**\n * Opens the filter popover programmatically.\n * Note: Clear variant does not support popover functionality.\n */\n @Method()\n async showFilter() {\n if (this.variant === 'clear') {\n console.warn('Clear variant does not support showFilter method');\n return;\n }\n\n if (this.popoverEl != null) {\n try {\n this.popoverEl.showPopover();\n } catch (error) {\n // Fallback for testing environment where showPopover is not available\n this.popoverEl.style.display = 'block';\n this.popoverEl.classList.add('is-open');\n }\n }\n }\n\n /**\n * Closes the filter popover programmatically.\n * Note: Clear variant does not support popover functionality.\n */\n @Method()\n async hideFilter() {\n if (this.variant === 'clear') {\n console.warn('Clear variant does not support hideFilter method');\n return;\n }\n\n if (this.popoverEl != null) {\n try {\n this.popoverEl.hidePopover();\n } catch (error) {\n // Fallback for testing environment where hidePopover is not available\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n }\n }\n\n /**\n * Listen for popover toggle events for browsers without native Popover API (fallback).\n * Native API browsers use direct element listeners to avoid conflicts.\n */\n @Listen('toggle', { target: 'document' })\n handlePopoverToggle(event: Event) {\n const target = event.target as HTMLElement;\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n // Only handle events for fallback browsers (Firefox) to avoid duplicate handling\n if (!supportsPopoverAPI && target && target.id === `${this.componentId}-popover`) {\n // Check for popover API support to avoid crashes\n let isCurrentlyOpen = false;\n try {\n isCurrentlyOpen = target.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n isCurrentlyOpen = target.style.display === 'block';\n }\n\n // Update state\n this.isOpen = isCurrentlyOpen;\n\n if (this.isOpen) {\n setTimeout(() => this.adjustPopoverPosition(), 0);\n\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }\n\n /**\n * Listen for clicks to detect outside dismissal.\n */\n @Listen('click', { target: 'document' })\n handleDocumentClick(event: Event) {\n // Check if click is outside and popover gets closed\n if (!this.el.contains(event.target as Node) && this.isOpen && this.variant !== 'clear') {\n setTimeout(() => {\n if (this.popoverEl && this.isOpen) {\n // Check for popover API support to avoid crashes\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n let popoverIsClosed = false;\n if (supportsPopoverAPI) {\n try {\n popoverIsClosed = !this.popoverEl.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n popoverIsClosed = this.popoverEl.style.display !== 'block';\n }\n } else {\n // Manual fallback - assume popover was closed by outside click\n popoverIsClosed = true;\n }\n\n if (popoverIsClosed) {\n this.isOpen = false;\n if (!supportsPopoverAPI) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n }\n\n /**\n * Listen for Escape key to ensure close event fires.\n */\n @Listen('keydown', { target: 'document' })\n handleEscapeKey(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.isOpen && this.variant !== 'clear') {\n // Check if popover was closed by Escape\n setTimeout(() => {\n if (this.popoverEl && this.isOpen) {\n // Check for popover API support to avoid crashes\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n let popoverIsClosed = false;\n if (supportsPopoverAPI) {\n try {\n popoverIsClosed = !this.popoverEl.matches(':popover-open');\n } catch (error) {\n // Fallback if :popover-open selector isn't supported\n popoverIsClosed = this.popoverEl.style.display !== 'block';\n }\n } else {\n // Manual fallback - assume popover was closed by Escape\n popoverIsClosed = true;\n }\n\n if (popoverIsClosed) {\n this.isOpen = false;\n if (!supportsPopoverAPI) {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n }\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n }\n\n /**\n * Handle keyboard interactions for clear variant only.\n */\n private handleKeyDown = (event: KeyboardEvent) => {\n // Only handle clear variant manually, let native API handle everything else\n if (this.variant === 'clear' && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n this.handleClick();\n }\n };\n\n /**\n * Handle trigger button click. Clear variant emits event, others toggle popover.\n */\n private handleClick = (event?: Event) => {\n if (this.variant === 'clear') {\n this.pdsFilterClear.emit({\n componentId: this.componentId,\n text: this.text,\n });\n return;\n }\n\n this.closeOtherPopovers();\n\n // Check for popover API support\n const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');\n\n if (!supportsPopoverAPI) {\n // Manual fallback for browsers without popover API support\n // Prevent default to avoid conflicts with any native behavior\n if (event) {\n event.preventDefault();\n }\n\n setTimeout(() => {\n if (this.popoverEl != null) {\n this.isOpen = !this.isOpen;\n if (this.isOpen) {\n this.popoverEl.style.display = 'block';\n this.popoverEl.classList.add('is-open');\n this.adjustPopoverPosition();\n this.pdsFilterOpen.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n } else {\n this.popoverEl.style.display = 'none';\n this.popoverEl.classList.remove('is-open');\n this.pdsFilterClose.emit({\n componentId: this.componentId,\n variant: this.variant,\n text: this.text,\n });\n }\n }\n }, 0);\n }\n // For browsers with native popover API, let the native behavior handle the toggle\n // The toggle event listener will capture the state change and emit events\n };\n\n /**\n * Get the appropriate icon for the variant.\n */\n private getIcon() {\n if (this.variant === 'clear') {\n return trash;\n }\n return this.icon;\n }\n\n /**\n * Get CSS classes for the trigger button.\n */\n private getTriggerClasses() {\n const classes = ['pds-filter__trigger'];\n classes.push(`pds-filter__trigger--${this.variant}`);\n\n if (this.isOpen && this.variant !== 'clear') {\n classes.push('pds-filter__trigger--open');\n }\n\n return classes.join(' ');\n }\n\n /**\n * Render the trigger icon.\n */\n private renderIcon() {\n const iconToRender = this.getIcon();\n if (iconToRender == null || iconToRender === '') return null;\n\n return (\n <pds-icon\n icon={iconToRender}\n size=\"var(--pine-font-size-100)\"\n aria-hidden=\"true\"\n part=\"icon\"\n />\n );\n }\n\n /**\n * Render the dropdown icon for selected variant.\n */\n private renderDropdownIcon() {\n if (this.variant === 'selected') {\n return (\n <pds-icon\n icon={enlarge}\n size=\"var(--pine-dimension-200)\"\n aria-hidden=\"true\"\n class=\"pds-filter__dropdown-icon\"\n part=\"icon\"\n />\n );\n }\n return null;\n }\n\n render() {\n return (\n <Host id={this.componentId}>\n <button\n class={this.getTriggerClasses()}\n type=\"button\"\n popoverTarget={this.variant !== 'clear' ? `${this.componentId}-popover` : undefined}\n popoverTargetAction={this.variant !== 'clear' ? 'toggle' : undefined}\n onKeyDown={this.variant === 'clear' ? this.handleKeyDown : undefined}\n onClick={(event) => this.handleClick(event)}\n part=\"button\"\n aria-expanded={this.isOpen ? 'true' : 'false'}\n aria-haspopup={this.variant !== 'clear' ? 'true' : undefined}\n aria-controls={this.variant !== 'clear' ? `${this.componentId}-popover` : undefined}\n >\n <span class=\"pds-filter__button-content\" part=\"button-content\">\n {this.renderIcon()}\n {this.text && (\n <span class=\"pds-filter__button-text\" part=\"button-text\">\n {this.text}\n </span>\n )}\n {this.renderDropdownIcon()}\n </span>\n </button>\n\n {this.variant !== 'clear' && (\n <div\n ref={el => this.popoverEl = el}\n id={`${this.componentId}-popover`}\n class=\"pds-filter__popover\"\n popover=\"auto\"\n part=\"popover\"\n >\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"p-DC2NZwtk.system.js","sources":["src/global/styles/utils/label.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.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",":host {\n// Need discussions\n --sizing-input-toggle-size: calc(var(--pine-dimension-250) - (var(--pine-dimension-025) * 2));\n --pine-dimension-025: 2px;\n --spacing-message-inline: calc(var(--pine-dimension-450) + var(--pine-dimension-150));\n --number-transition-timing: 0.15s ease-out;\n\n align-items: flex-start;\n color: var(--pine-color-text);\n display: inline-flex;\n flex-flow: row wrap;\n position: relative;\n}\n\n:host(.pds-switch--error) {\n color: var(--pine-color-text-message-danger);\n\n input,\n input:checked,\n input:hover:not(:disabled):not(:checked) {\n background-color: var(--pine-color-danger);\n }\n\n input:focus-visible:not(:disabled):not(:checked) {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n\n label {\n color: var(--color-text-error);\n }\n}\n\n// switch container\ninput {\n appearance: none;\n background: var(--pine-color-neutral);\n border: 0;\n border-radius: var(--pine-dimension-sm);\n cursor: pointer;\n display: inline-block;\n flex-shrink: 0;\n height: var(--pine-dimension-250);\n margin: 0;\n padding: 0;\n position: relative;\n transition: var(--number-transition-timing);\n transition-property: background, border, color;\n width: var(--pine-dimension-450);\n\n // switch toggle\n &::after {\n background: var(--pine-color-secondary);\n border-radius: var(--pine-border-radius-full);\n box-shadow: var(--pine-box-shadow);\n content: \"\";\n display: block;\n height: var(--sizing-input-toggle-size);\n inset-block-start: 50%;\n inset-inline-start: 50%;\n position: absolute;\n transform: translate3d(-100%, -50%, 0);\n transition: transform var(--number-transition-timing);\n width: var(--sizing-input-toggle-size);\n }\n}\n\nlabel {\n display: flex;\n gap: var(--pine-dimension-150);\n\n .pds-switch--error & {\n color: inherit;\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\n// Help and error messages\n.pds-switch__message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-start: var(--pine-dimension-xs);\n margin-inline-start: var(--spacing-message-inline);\n width: 100%;\n\n + .pds-switch__message {\n margin-block-start: var(--spacing-message-inline);\n }\n}\n\n.pds-switch__message--error {\n color: inherit;\n display: flex;\n gap: var(--pine-dimension-2xs);\n\n pds-icon {\n margin-block-start: var(--pine-dimension-025);\n }\n}\n\n// Disabled state\ninput:disabled {\n background-color: var(--pine-color-neutral-disabled);\n cursor: not-allowed;\n\n ~ label {\n cursor: initial;\n }\n\n &:hover::after {\n background-color: var(--pine-color-secondary);\n }\n\n .pds-switch__message {\n color: initial;\n }\n}\n\n// Hover state\ninput:hover:not(:disabled) {\n background-color: var(--pine-color-neutral-hover);\n}\n\n // Focus state\ninput:focus-visible:not(:disabled) {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n}\n\n// 'Checked' state\n// switch toggle\ninput:checked::after {\n transform: translate3d(0, -50%, 0);\n}\n\n// switch container\ninput:checked:not(:disabled) {\n background-color: currentColor;\n color: var(--pine-color-accent);\n\n &:hover {\n border-color: currentColor;\n color: var(--pine-color-accent-hover);\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, Watch } from '@stencil/core';\nimport { assignDescription, messageId, exposeTypeProperty } from '../../utils/form';\nimport { danger } from '@pine-ds/icons/icons';\n\nimport { inheritAriaAttributes } from '@utils/attributes';\nimport type { Attributes } from '@utils/attributes';\n\n@Component({\n tag: 'pds-switch',\n styleUrls: ['../../global/styles/utils/label.scss', 'pds-switch.scss'],\n shadow: true,\n formAssociated: true,\n})\nexport class PdsSwitch {\n private inheritedAttributes: Attributes = {};\n private internals?: ElementInternals;\n private readonly _type = 'checkbox' as const;\n\n @Element() el: HTMLPdsSwitchElement;\n\n /**\n * A unique identifier used for the underlying component `id` attribute and the label `for` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines the input 'checked' state.\n */\n @Prop({ mutable: true }) checked = false;\n\n /**\n * Determines the input 'disabled' state, preventing user interaction.\n */\n @Prop() disabled? = false;\n\n /**\n * Displays message text describing an invalid state.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Visually hides the label text for instances where only the switch should be displayed. Label remains accessible to assistive technology such as screen readers.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * Displays help text for additional description of an input.\n */\n @Prop() helperMessage: string;\n\n /**\n * Determines the input 'invalid' state, signifying an error is present.\n */\n @Prop() invalid? = false;\n\n /**\n * Displays text to describe the input.\n */\n @Prop() label!: string;\n\n /**\n * Identifies form data and unifies a group of radio inputs for toggling a single property/value.\n */\n @Prop() name: string;\n\n /**\n * Determines the 'required' state of the input.\n */\n @Prop() required? = false;\n\n /**\n * Provides input with a string submitted in form data.\n */\n @Prop() value: string;\n\n\n /**\n * Emits an event on input change.\n */\n @Event() pdsSwitchChange: EventEmitter<InputEvent>;\n\n private onSwitchUpdate = (e: Event) => {\n if (this.disabled) return;\n\n const input = e.target as HTMLInputElement;\n this.checked = input.checked;\n\n this.updateFormValue();\n\n this.pdsSwitchChange.emit(e as InputEvent);\n };\n\n private switchClassNames = () => {\n let switchClasses = `pds-switch`;\n\n if (this.invalid === true) {\n switchClasses += \" pds-switch--error\";\n }\n if (this.helperMessage !== undefined) {\n switchClasses += \" pds-switch--message\";\n }\n return switchClasses;\n };\n\n connectedCallback() {\n if (this.el.attachInternals) {\n this.internals = this.el.attachInternals();\n }\n\n // Expose type property on the element instance to match native form element behavior\n exposeTypeProperty(this.el, () => this._type);\n }\n\n componentDidLoad() {\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged() {\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (typeof jest !== 'undefined' || typeof process !== 'undefined' && process.env?.NODE_ENV === 'test') {\n return;\n }\n\n if (this.internals && this.internals.setFormValue) {\n // For switches, only send the value when checked, otherwise send null\n const formValue = this.checked ? (this.value || 'on') : null;\n this.internals.setFormValue(formValue);\n }\n\n if (this.internals && this.internals.setValidity) {\n this.internals.setValidity({});\n }\n }\n\n formStateRestoreCallback(state: string | FormData | null) {\n if (state instanceof FormData) {\n // For switches, restore if the value exists in FormData\n const value = this.value || 'on';\n this.checked = state.get(this.name || this.componentId) === value;\n } else if (typeof state === 'string') {\n // Restore from string state\n this.checked = state === (this.value || 'on');\n }\n }\n\n componentWillLoad() {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el)\n }\n }\n\n render() {\n return (\n <Host class={this.switchClassNames()} aria-disabled={this.disabled ? 'true' : null}>\n <label htmlFor={this.componentId}>\n <input\n aria-describedby={assignDescription(this.componentId, this.invalid, this.errorMessage || this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n checked={this.checked}\n class=\"pds-switch__input\"\n disabled={this.disabled}\n id={this.componentId}\n name={this.name ? this.name : this.componentId}\n onChange={this.onSwitchUpdate}\n required={this.required}\n type=\"checkbox\"\n value={this.value}\n {...this.inheritedAttributes}\n />\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {this.helperMessage &&\n <div\n class={`pds-switch__message`}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-switch__message pds-switch__message--error`}\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </div>\n }\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p-BJE1EIse.system.js","sources":["src/global/styles/utils/label.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.scss?tag=pds-switch&encapsulation=shadow","src/components/pds-switch/pds-switch.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",":host {\n// Need discussions\n --sizing-input-toggle-size: calc(var(--pine-dimension-250) - (var(--pine-dimension-025) * 2));\n --pine-dimension-025: 2px;\n --spacing-message-inline: calc(var(--pine-dimension-450) + var(--pine-dimension-150));\n --number-transition-timing: 0.15s ease-out;\n\n align-items: flex-start;\n color: var(--pine-color-text);\n display: inline-flex;\n flex-flow: row wrap;\n position: relative;\n}\n\n:host(.pds-switch--error) {\n color: var(--pine-color-text-message-danger);\n\n input,\n input:checked,\n input:hover:not(:disabled):not(:checked) {\n background-color: var(--pine-color-danger);\n }\n\n input:focus-visible:not(:disabled):not(:checked) {\n outline-color: var(--pine-color-focus-ring-danger);\n }\n\n label {\n color: var(--color-text-error);\n }\n}\n\n// switch container\ninput {\n appearance: none;\n background: var(--pine-color-neutral);\n border: 0;\n border-radius: var(--pine-dimension-sm);\n cursor: pointer;\n display: inline-block;\n flex-shrink: 0;\n height: var(--pine-dimension-250);\n margin: 0;\n padding: 0;\n position: relative;\n transition: var(--number-transition-timing);\n transition-property: background, border, color;\n width: var(--pine-dimension-450);\n\n // switch toggle\n &::after {\n background: var(--pine-color-secondary);\n border-radius: var(--pine-border-radius-full);\n box-shadow: var(--pine-box-shadow);\n content: \"\";\n display: block;\n height: var(--sizing-input-toggle-size);\n inset-block-start: 50%;\n inset-inline-start: 50%;\n position: absolute;\n transform: translate3d(-100%, -50%, 0);\n transition: transform var(--number-transition-timing);\n width: var(--sizing-input-toggle-size);\n }\n}\n\nlabel {\n display: flex;\n gap: var(--pine-dimension-150);\n\n .pds-switch--error & {\n color: inherit;\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\n// Help and error messages\n.pds-switch__message {\n color: var(--pine-color-text-message);\n font: var(--pine-typography-body-sm-medium);\n margin-block-start: var(--pine-dimension-xs);\n margin-inline-start: var(--spacing-message-inline);\n width: 100%;\n\n + .pds-switch__message {\n margin-block-start: var(--spacing-message-inline);\n }\n}\n\n.pds-switch__message--error {\n color: inherit;\n display: flex;\n gap: var(--pine-dimension-2xs);\n\n pds-icon {\n margin-block-start: var(--pine-dimension-025);\n }\n}\n\n// Disabled state\ninput:disabled {\n background-color: var(--pine-color-neutral-disabled);\n cursor: not-allowed;\n\n ~ label {\n cursor: initial;\n }\n\n &:hover::after {\n background-color: var(--pine-color-secondary);\n }\n\n .pds-switch__message {\n color: initial;\n }\n}\n\n// Hover state\ninput:hover:not(:disabled) {\n background-color: var(--pine-color-neutral-hover);\n}\n\n // Focus state\ninput:focus-visible:not(:disabled) {\n outline: var(--pine-outline-focus);\n outline-offset: var(--pine-border-width);\n}\n\n// 'Checked' state\n// switch toggle\ninput:checked::after {\n transform: translate3d(0, -50%, 0);\n}\n\n// switch container\ninput:checked:not(:disabled) {\n background-color: currentColor;\n color: var(--pine-color-accent);\n\n &:hover {\n border-color: currentColor;\n color: var(--pine-color-accent-hover);\n }\n}\n","import { Component, Element, Event, EventEmitter, Host, h, Prop, Watch } from '@stencil/core';\nimport { assignDescription, messageId, exposeTypeProperty } from '../../utils/form';\nimport { danger } from '@pine-ds/icons/icons';\n\nimport { inheritAriaAttributes } from '@utils/attributes';\nimport type { Attributes } from '@utils/attributes';\n\n@Component({\n tag: 'pds-switch',\n styleUrls: ['../../global/styles/utils/label.scss', 'pds-switch.scss'],\n shadow: true,\n formAssociated: true,\n})\nexport class PdsSwitch {\n private inheritedAttributes: Attributes = {};\n private internals?: ElementInternals;\n private readonly _type = 'checkbox' as const;\n\n @Element() el: HTMLPdsSwitchElement;\n\n /**\n * A unique identifier used for the underlying component `id` attribute and the label `for` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines the input 'checked' state.\n */\n @Prop({ mutable: true }) checked = false;\n\n /**\n * Determines the input 'disabled' state, preventing user interaction.\n */\n @Prop() disabled? = false;\n\n /**\n * Displays message text describing an invalid state.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Visually hides the label text for instances where only the switch should be displayed. Label remains accessible to assistive technology such as screen readers.\n */\n @Prop() hideLabel: boolean;\n\n /**\n * Displays help text for additional description of an input.\n */\n @Prop() helperMessage: string;\n\n /**\n * Determines the input 'invalid' state, signifying an error is present.\n */\n @Prop() invalid? = false;\n\n /**\n * Displays text to describe the input.\n */\n @Prop() label!: string;\n\n /**\n * Identifies form data and unifies a group of radio inputs for toggling a single property/value.\n */\n @Prop() name: string;\n\n /**\n * Determines the 'required' state of the input.\n */\n @Prop() required? = false;\n\n /**\n * Provides input with a string submitted in form data.\n */\n @Prop() value: string;\n\n\n /**\n * Emits an event on input change.\n */\n @Event() pdsSwitchChange: EventEmitter<InputEvent>;\n\n private onSwitchUpdate = (e: Event) => {\n if (this.disabled) return;\n\n const input = e.target as HTMLInputElement;\n this.checked = input.checked;\n\n this.updateFormValue();\n\n this.pdsSwitchChange.emit(e as InputEvent);\n };\n\n private switchClassNames = () => {\n let switchClasses = `pds-switch`;\n\n if (this.invalid === true) {\n switchClasses += \" pds-switch--error\";\n }\n if (this.helperMessage !== undefined) {\n switchClasses += \" pds-switch--message\";\n }\n return switchClasses;\n };\n\n connectedCallback() {\n if (this.el.attachInternals) {\n this.internals = this.el.attachInternals();\n }\n\n // Expose type property on the element instance to match native form element behavior\n exposeTypeProperty(this.el, () => this._type);\n }\n\n componentDidLoad() {\n this.updateFormValue();\n }\n\n @Watch('checked')\n checkedChanged() {\n this.updateFormValue();\n }\n\n private updateFormValue() {\n if (typeof jest !== 'undefined' || typeof process !== 'undefined' && process.env?.NODE_ENV === 'test') {\n return;\n }\n\n if (this.internals && this.internals.setFormValue) {\n // For switches, only send the value when checked, otherwise send null\n const formValue = this.checked ? (this.value || 'on') : null;\n this.internals.setFormValue(formValue);\n }\n\n if (this.internals && this.internals.setValidity) {\n this.internals.setValidity({});\n }\n }\n\n formStateRestoreCallback(state: string | FormData | null) {\n if (state instanceof FormData) {\n // For switches, restore if the value exists in FormData\n const value = this.value || 'on';\n this.checked = state.get(this.name || this.componentId) === value;\n } else if (typeof state === 'string') {\n // Restore from string state\n this.checked = state === (this.value || 'on');\n }\n }\n\n componentWillLoad() {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el)\n }\n }\n\n render() {\n return (\n <Host class={this.switchClassNames()} aria-disabled={this.disabled ? 'true' : null}>\n <label htmlFor={this.componentId}>\n <input\n aria-describedby={assignDescription(this.componentId, this.invalid, this.errorMessage || this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n checked={this.checked}\n class=\"pds-switch__input\"\n disabled={this.disabled}\n id={this.componentId}\n name={this.name ? this.name : this.componentId}\n onChange={this.onSwitchUpdate}\n required={this.required}\n type=\"checkbox\"\n value={this.value}\n {...this.inheritedAttributes}\n />\n <span class={this.hideLabel ? 'visually-hidden' : ''}>\n {this.label}\n </span>\n </label>\n {this.helperMessage &&\n <div\n class={`pds-switch__message`}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-switch__message pds-switch__message--error`}\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </div>\n }\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,MAAM,QAAQ,GAAG,oTAAoT;;MCArU,MAAM,YAAY,GAAG,4uHAA4uH;;YCapvH,SAAS,yBAAA,MAAA;MANtB,IAAA,WAAA,CAAA,OAAA,EAAA;;;MAOU,QAAA,IAAmB,CAAA,mBAAA,GAAe,EAAE;MAE3B,QAAA,IAAK,CAAA,KAAA,GAAG,UAAmB;MAS5C;;MAEG;MACsB,QAAA,IAAO,CAAA,OAAA,GAAG,KAAK;MAExC;;MAEG;MACK,QAAA,IAAQ,CAAA,QAAA,GAAI,KAAK;MAiBzB;;MAEG;MACK,QAAA,IAAO,CAAA,OAAA,GAAI,KAAK;MAYxB;;MAEG;MACK,QAAA,IAAQ,CAAA,QAAA,GAAI,KAAK;MAajB,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,CAAQ,KAAI;kBACpC,IAAI,IAAI,CAAC,QAAQ;sBAAE;MAEnB,YAAA,MAAM,KAAK,GAAG,CAAC,CAAC,MAA0B;MAC1C,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO;kBAE5B,IAAI,CAAC,eAAe,EAAE;MAEtB,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAe,CAAC;MAC5C,SAAC;MAEO,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;kBAC9B,IAAI,aAAa,GAAG,CAAA,UAAA,CAAY;MAEhC,YAAA,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;sBACzB,aAAa,IAAI,oBAAoB;;MAEvC,YAAA,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;sBACpC,aAAa,IAAI,sBAAsB;;MAEzC,YAAA,OAAO,aAAa;MACtB,SAAC;MAgGF;UA9FC,iBAAiB,GAAA;MACf,QAAA,IAAI,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE;kBAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE;;;MAI5C,QAAA,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC;;UAG/C,gBAAgB,GAAA;cACd,IAAI,CAAC,eAAe,EAAE;;UAIxB,cAAc,GAAA;cACZ,IAAI,CAAC,eAAe,EAAE;;UAGhB,eAAe,GAAA;;MACrB,QAAA,IAAI,OAAO,IAAI,KAAK,WAAW,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,QAAQ,MAAK,MAAM,EAAE;kBACrG;;cAGF,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;;MAEjD,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI;MAC5D,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC;;cAGxC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;MAChD,YAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;;;MAIlC,IAAA,wBAAwB,CAAC,KAA+B,EAAA;MACtD,QAAA,IAAI,KAAK,YAAY,QAAQ,EAAE;;MAE7B,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI;MAChC,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK;;MAC5D,aAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;;MAEpC,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,MAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC;;;UAIjD,iBAAiB,GAAA;MACf,QAAA,IAAI,CAAC,mBAAmB,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACnB,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAClC;;UAGH,MAAM,GAAA;cACJ,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,mBAAiB,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,EAAA,EAChF,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,OAAO,EAAE,IAAI,CAAC,WAAW,EAAA,EAC9B,CACoB,CAAA,OAAA,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,kBAAA,EAAA,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,EAAA,cAAA,EAC9F,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,EAC/C,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAC,mBAAmB,EACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAC9C,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACb,EAAA,IAAI,CAAC,mBAAmB,CAC5B,CAAA,EACF,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAE,IAAI,CAAC,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAAA,EACjD,IAAI,CAAC,KAAK,CACN,CACD,EACP,IAAI,CAAC,aAAa;MACjB,YAAA,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,CAAqB,mBAAA,CAAA,EAC5B,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAExC,IAAI,CAAC,aAAa,CACf,EAEP,IAAI,CAAC,YAAY;kBAChB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,CAAgD,8CAAA,CAAA,EACvD,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,eAC9B,WAAW,EAAA,EAErB,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC,OAAO,EAAG,CAAA,EACtC,IAAI,CAAC,YAAY,CACd,CAEH;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"p-IH8oGXiE.system.js","sources":["src/components/pds-row/pds-row.scss?tag=pds-row","src/components/pds-row/pds-row.tsx"],"sourcesContent":[":host {\n --row-gap-y: var(--pine-dimension-125);\n --row-gap-x: var(--pine-dimension-125);\n\n display: block;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -0.5);\n margin-inline-start: calc(var(--row-gap-x) * -0.5);\n}\n\n.pds-row {\n display: flex;\n flex-grow: 1;\n flex-wrap: wrap;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -1);\n margin-inline-start: calc(var(--row-gap-x) * -1);\n\n @layer layout {\n > * {\n padding-block-end: calc(var(--row-gap-y));\n padding-block-start: calc(var(--row-gap-y));\n padding-inline-end: calc(var(--row-gap-x));\n padding-inline-start: calc(var(--row-gap-x));\n }\n }\n}\n\n.pds-row--no-wrap {\n flex-wrap: nowrap;\n}\n\n.pds-row--border {\n border: var(--pine-border);\n}\n\n// Justify Content helpers\n.pds-justify-content-start {\n justify-content: start;\n}\n\n.pds-justify-content-center {\n justify-content: center;\n}\n\n.pds-justify-content-end {\n justify-content: end;\n}\n\n.pds-justify-content-space-between {\n justify-content: space-between;\n}\n\n.pds-justify-content-space-around {\n justify-content: space-around;\n}\n\n.pds-justify-content-space-evenly {\n justify-content: space-evenly;\n}\n\n// Align Items helpers\n.pds-align-items-start {\n align-items: start;\n}\n\n.pds-align-items-center {\n align-items: center;\n}\n\n.pds-align-items-end {\n align-items: end;\n}\n\n.pds-align-items-stretch {\n align-items: stretch;\n}\n\n.pds-align-items-baseline {\n align-items: baseline;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nimport { BoxSpacingType } from '../../utils/types';\n\n@Component({\n tag: 'pds-row',\n styleUrl: 'pds-row.scss',\n})\nexport class PdsRow {\n /**\n * Defines the vertical alignment of the row items.\n * @defaultValue start\n */\n @Prop() alignItems?: `start` | `center` | `end` | `baseline` | `stretch`;\n\n /**\n * If `true`, the row will have a border.\n */\n @Prop() border? = false;\n\n /**\n * Defines the spacing between the row items.\n */\n @Prop() colGap?: BoxSpacingType | null;\n\n /**\n * Defines the spacing between the row items vertically.\n */\n @Prop() colGapBlock?: BoxSpacingType | null;\n\n /**\n * Defines the spacing between the row items horizontally.\n */\n @Prop() colGapInline?: BoxSpacingType | null;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Defines the horizontal alignment of the row items.\n * @defaultValue start\n */\n @Prop() justifyContent?: `start` | `center` | `end` | `space-between` | `space-around`;\n\n /**\n * The minimum height of the row. Used in conjunction with alignment props\n */\n @Prop() minHeight?: string;\n\n /**\n * If `true`, the row items will not wrap to the next line if horizontal space is not available.\n */\n @Prop() noWrap? = false;\n\n private colGapMap: { [key in BoxSpacingType]: string } = {\n none: '0',\n xxs: '.25rem',\n xs: '.5rem',\n sm: '1rem',\n md: '1.5rem',\n lg: '2.25rem',\n xl: '3rem',\n xxl: '4rem',\n '025': 'var(--pine-dimension-025)',\n '050': 'var(--pine-dimension-050)',\n '100': 'var(--pine-dimension-100)',\n '125': 'var(--pine-dimension-125)',\n '150': 'var(--pine-dimension-150)',\n '200': 'var(--pine-dimension-200)',\n '250': 'var(--pine-dimension-250)',\n '300': 'var(--pine-dimension-300)',\n '350': 'var(--pine-dimension-350)',\n '400': 'var(--pine-dimension-400)',\n '450': 'var(--pine-dimension-450)',\n '500': 'var(--pine-dimension-500)',\n '550': 'var(--pine-dimension-550)',\n '600': 'var(--pine-dimension-600)',\n '650': 'var(--pine-dimension-650)',\n '700': 'var(--pine-dimension-700)',\n '750': 'var(--pine-dimension-750)',\n '800': 'var(--pine-dimension-800)'\n };\n\n render() {\n const rowClasses = `\n ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}\n ${this.border ? 'pds-row--border' : ''}\n ${this.justifyContent !== undefined && this.justifyContent.trim() !== '' ? `pds-justify-content-${this.justifyContent}` : ''}\n ${this.noWrap ? 'pds-row--no-wrap' : ''}\n `;\n\n const rowInlineStyles = {\n ...(this.colGap && {\n '--row-gap-x': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n '--row-gap-y': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n }),\n ...(this.colGapBlock && {\n '--row-gap-y': this.colGapBlock !== undefined && this.colGapBlock.trim() !== '' ? this.colGapMap[this.colGapBlock] : '',\n }),\n ...(this.colGapInline && {\n '--row-gap-x': this.colGapInline !== undefined && this.colGapInline.trim() !== '' ? this.colGapMap[this.colGapInline] : '',\n }),\n ...(this.minHeight && {\n 'min-height': this.minHeight,\n }),\n };\n\n return <Host class={`pds-row ${rowClasses}`} style={rowInlineStyles}></Host>;\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p-BJtTt670.system.js","sources":["src/components/pds-row/pds-row.scss?tag=pds-row","src/components/pds-row/pds-row.tsx"],"sourcesContent":[":host {\n --row-gap-y: var(--pine-dimension-125);\n --row-gap-x: var(--pine-dimension-125);\n\n display: block;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -0.5);\n margin-inline-start: calc(var(--row-gap-x) * -0.5);\n}\n\n.pds-row {\n display: flex;\n flex-grow: 1;\n flex-wrap: wrap;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -1);\n margin-inline-start: calc(var(--row-gap-x) * -1);\n\n @layer layout {\n > * {\n padding-block-end: calc(var(--row-gap-y));\n padding-block-start: calc(var(--row-gap-y));\n padding-inline-end: calc(var(--row-gap-x));\n padding-inline-start: calc(var(--row-gap-x));\n }\n }\n}\n\n.pds-row--no-wrap {\n flex-wrap: nowrap;\n}\n\n.pds-row--border {\n border: var(--pine-border);\n}\n\n// Justify Content helpers\n.pds-justify-content-start {\n justify-content: start;\n}\n\n.pds-justify-content-center {\n justify-content: center;\n}\n\n.pds-justify-content-end {\n justify-content: end;\n}\n\n.pds-justify-content-space-between {\n justify-content: space-between;\n}\n\n.pds-justify-content-space-around {\n justify-content: space-around;\n}\n\n.pds-justify-content-space-evenly {\n justify-content: space-evenly;\n}\n\n// Align Items helpers\n.pds-align-items-start {\n align-items: start;\n}\n\n.pds-align-items-center {\n align-items: center;\n}\n\n.pds-align-items-end {\n align-items: end;\n}\n\n.pds-align-items-stretch {\n align-items: stretch;\n}\n\n.pds-align-items-baseline {\n align-items: baseline;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nimport { BoxSpacingType } from '../../utils/types';\n\n@Component({\n tag: 'pds-row',\n styleUrl: 'pds-row.scss',\n})\nexport class PdsRow {\n /**\n * Defines the vertical alignment of the row items.\n * @defaultValue start\n */\n @Prop() alignItems?: `start` | `center` | `end` | `baseline` | `stretch`;\n\n /**\n * If `true`, the row will have a border.\n */\n @Prop() border? = false;\n\n /**\n * Defines the spacing between the row items.\n */\n @Prop() colGap?: BoxSpacingType | null;\n\n /**\n * Defines the spacing between the row items vertically.\n */\n @Prop() colGapBlock?: BoxSpacingType | null;\n\n /**\n * Defines the spacing between the row items horizontally.\n */\n @Prop() colGapInline?: BoxSpacingType | null;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Defines the horizontal alignment of the row items.\n * @defaultValue start\n */\n @Prop() justifyContent?: `start` | `center` | `end` | `space-between` | `space-around`;\n\n /**\n * The minimum height of the row. Used in conjunction with alignment props\n */\n @Prop() minHeight?: string;\n\n /**\n * If `true`, the row items will not wrap to the next line if horizontal space is not available.\n */\n @Prop() noWrap? = false;\n\n private colGapMap: { [key in BoxSpacingType]: string } = {\n none: '0',\n xxs: '.25rem',\n xs: '.5rem',\n sm: '1rem',\n md: '1.5rem',\n lg: '2.25rem',\n xl: '3rem',\n xxl: '4rem',\n '025': 'var(--pine-dimension-025)',\n '050': 'var(--pine-dimension-050)',\n '100': 'var(--pine-dimension-100)',\n '125': 'var(--pine-dimension-125)',\n '150': 'var(--pine-dimension-150)',\n '200': 'var(--pine-dimension-200)',\n '250': 'var(--pine-dimension-250)',\n '300': 'var(--pine-dimension-300)',\n '350': 'var(--pine-dimension-350)',\n '400': 'var(--pine-dimension-400)',\n '450': 'var(--pine-dimension-450)',\n '500': 'var(--pine-dimension-500)',\n '550': 'var(--pine-dimension-550)',\n '600': 'var(--pine-dimension-600)',\n '650': 'var(--pine-dimension-650)',\n '700': 'var(--pine-dimension-700)',\n '750': 'var(--pine-dimension-750)',\n '800': 'var(--pine-dimension-800)'\n };\n\n render() {\n const rowClasses = `\n ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}\n ${this.border ? 'pds-row--border' : ''}\n ${this.justifyContent !== undefined && this.justifyContent.trim() !== '' ? `pds-justify-content-${this.justifyContent}` : ''}\n ${this.noWrap ? 'pds-row--no-wrap' : ''}\n `;\n\n const rowInlineStyles = {\n ...(this.colGap && {\n '--row-gap-x': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n '--row-gap-y': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n }),\n ...(this.colGapBlock && {\n '--row-gap-y': this.colGapBlock !== undefined && this.colGapBlock.trim() !== '' ? this.colGapMap[this.colGapBlock] : '',\n }),\n ...(this.colGapInline && {\n '--row-gap-x': this.colGapInline !== undefined && this.colGapInline.trim() !== '' ? this.colGapMap[this.colGapInline] : '',\n }),\n ...(this.minHeight && {\n 'min-height': this.minHeight,\n }),\n };\n\n return <Host class={`pds-row ${rowClasses}`} style={rowInlineStyles}></Host>;\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;MAAA,MAAM,SAAS,GAAG,wnFAAwnF;;YCQ7nF,MAAM,sBAAA,MAAA;MAJnB,IAAA,WAAA,CAAA,OAAA,EAAA;;MAWE;;MAEG;MACK,QAAA,IAAM,CAAA,MAAA,GAAI,KAAK;MAiCvB;;MAEG;MACK,QAAA,IAAM,CAAA,MAAA,GAAI,KAAK;cAEf,IAAA,CAAA,SAAS,GAAwC;MACvD,YAAA,IAAI,EAAE,GAAG;MACT,YAAA,GAAG,EAAE,QAAQ;MACb,YAAA,EAAE,EAAE,OAAO;MACX,YAAA,EAAE,EAAE,MAAM;MACV,YAAA,EAAE,EAAE,QAAQ;MACZ,YAAA,EAAE,EAAE,SAAS;MACb,YAAA,EAAE,EAAE,MAAM;MACV,YAAA,GAAG,EAAE,MAAM;MACX,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE,2BAA2B;MAClC,YAAA,KAAK,EAAE;eACR;MA4BF;UA1BC,MAAM,GAAA;MACJ,QAAA,MAAM,UAAU,GAAG;MACjB,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAA,gBAAA,EAAmB,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG,EAAE;MAC1G,IAAI,CAAC,MAAM,GAAG,iBAAiB,GAAG,EAAE;MACpC,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAA,oBAAA,EAAuB,IAAI,CAAC,cAAc,CAAE,CAAA,GAAG,EAAE;MAC1H,IAAI,CAAC,MAAM,GAAG,kBAAkB,GAAG,EAAE;GACxC;cAEC,MAAM,eAAe,GAChB,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAC,IAAI,CAAC,MAAM,IAAI;MACjB,YAAA,aAAa,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;MACxG,YAAA,aAAa,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;MACzG,SAAA,EACE,GAAC,IAAI,CAAC,WAAW,IAAI;MACtB,YAAA,aAAa,EAAE,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;MACxH,SAAA,EACE,GAAC,IAAI,CAAC,YAAY,IAAI;MACvB,YAAA,aAAa,EAAE,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;MAC3H,SAAA,EACE,GAAC,IAAI,CAAC,SAAS,IAAI;kBACpB,YAAY,EAAE,IAAI,CAAC,SAAS;MAC7B,SAAA,EACF;cAED,OAAO,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAW,QAAA,EAAA,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,GAAS;;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ const t=Math.min;const n=Math.max;const e=Math.round;const o=Math.floor;const r=t=>({x:t,y:t});const i={left:"right",right:"left",bottom:"top",top:"bottom"};const s={start:"end",end:"start"};function c(e,o,r){return n(e,t(o,r))}function l(t,n){return typeof t==="function"?t(n):t}function f(t){return t.split("-")[0]}function a(t){return t.split("-")[1]}function u(t){return t==="x"?"y":"x"}function d(t){return t==="y"?"height":"width"}const m=new Set(["top","bottom"]);function h(t){return m.has(f(t))?"y":"x"}function y(t){return u(h(t))}function p(t,n,e){if(e===void 0){e=false}const o=a(t);const r=y(t);const i=d(r);let s=r==="x"?o===(e?"end":"start")?"right":"left":o==="start"?"bottom":"top";if(n.reference[i]>n.floating[i]){s=k(s)}return[s,k(s)]}function w(t){const n=k(t);return[g(t),n,g(n)]}function g(t){return t.replace(/start|end/g,(t=>s[t]))}const x=["left","right"];const v=["right","left"];const b=["top","bottom"];const A=["bottom","top"];function S(t,n,e){switch(t){case"top":case"bottom":if(e)return n?v:x;return n?x:v;case"left":case"right":return n?b:A;default:return[]}}function R(t,n,e,o){const r=a(t);let i=S(f(t),e==="start",o);if(r){i=i.map((t=>t+"-"+r));if(n){i=i.concat(i.map(g))}}return i}function k(t){return t.replace(/left|right|bottom|top/g,(t=>i[t]))}function F(t){return{top:0,right:0,bottom:0,left:0,...t}}function C(t){return typeof t!=="number"?F(t):{top:t,right:t,bottom:t,left:t}}function T(t){const{x:n,y:e,width:o,height:r}=t;return{width:o,height:r,top:e,left:n,right:n+o,bottom:e+r,x:n,y:e}}function M(t,n,e){let{reference:o,floating:r}=t;const i=h(n);const s=y(n);const c=d(s);const l=f(n);const u=i==="y";const m=o.x+o.width/2-r.width/2;const p=o.y+o.height/2-r.height/2;const w=o[c]/2-r[c]/2;let g;switch(l){case"top":g={x:m,y:o.y-r.height};break;case"bottom":g={x:m,y:o.y+o.height};break;case"right":g={x:o.x+o.width,y:p};break;case"left":g={x:o.x-r.width,y:p};break;default:g={x:o.x,y:o.y}}switch(a(n)){case"start":g[s]-=w*(e&&u?-1:1);break;case"end":g[s]+=w*(e&&u?-1:1);break}return g}const O=async(t,n,e)=>{const{placement:o="bottom",strategy:r="absolute",middleware:i=[],platform:s}=e;const c=i.filter(Boolean);const l=await(s.isRTL==null?void 0:s.isRTL(n));let f=await s.getElementRects({reference:t,floating:n,strategy:r});let{x:a,y:u}=M(f,o,l);let d=o;let m={};let h=0;for(let e=0;e<c.length;e++){const{name:i,fn:y}=c[e];const{x:p,y:w,data:g,reset:x}=await y({x:a,y:u,initialPlacement:o,placement:d,strategy:r,middlewareData:m,rects:f,platform:s,elements:{reference:t,floating:n}});a=p!=null?p:a;u=w!=null?w:u;m={...m,[i]:{...m[i],...g}};if(x&&h<=50){h++;if(typeof x==="object"){if(x.placement){d=x.placement}if(x.rects){f=x.rects===true?await s.getElementRects({reference:t,floating:n,strategy:r}):x.rects}({x:a,y:u}=M(f,d,l))}e=-1}}return{x:a,y:u,placement:d,strategy:r,middlewareData:m}};async function P(t,n){var e;if(n===void 0){n={}}const{x:o,y:r,platform:i,rects:s,elements:c,strategy:f}=t;const{boundary:a="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:m=false,padding:h=0}=l(n,t);const y=C(h);const p=d==="floating"?"reference":"floating";const w=c[m?p:d];const g=T(await i.getClippingRect({element:((e=await(i.isElement==null?void 0:i.isElement(w)))!=null?e:true)?w:w.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:a,rootBoundary:u,strategy:f}));const x=d==="floating"?{x:o,y:r,width:s.floating.width,height:s.floating.height}:s.reference;const v=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating));const b=await(i.isElement==null?void 0:i.isElement(v))?await(i.getScale==null?void 0:i.getScale(v))||{x:1,y:1}:{x:1,y:1};const A=T(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:x,offsetParent:v,strategy:f}):x);return{top:(g.top-A.top+y.top)/b.y,bottom:(A.bottom-g.bottom+y.bottom)/b.y,left:(g.left-A.left+y.left)/b.x,right:(A.right-g.right+y.right)/b.x}}const z=function(t){if(t===void 0){t={}}return{name:"flip",options:t,async fn(n){var e,o;const{placement:r,middlewareData:i,rects:s,initialPlacement:c,platform:a,elements:u}=n;const{mainAxis:d=true,crossAxis:m=true,fallbackPlacements:y,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:v=true,...b}=l(t,n);if((e=i.arrow)!=null&&e.alignmentOffset){return{}}const A=f(r);const S=h(c);const F=f(c)===c;const C=await(a.isRTL==null?void 0:a.isRTL(u.floating));const T=y||(F||!v?[k(c)]:w(c));const M=x!=="none";if(!y&&M){T.push(...R(c,v,x,C))}const O=[c,...T];const z=await P(n,b);const D=[];let L=((o=i.flip)==null?void 0:o.overflows)||[];if(d){D.push(z[A])}if(m){const t=p(r,s,C);D.push(z[t[0]],z[t[1]])}L=[...L,{placement:r,overflows:D}];if(!D.every((t=>t<=0))){var B,E;const t=(((B=i.flip)==null?void 0:B.index)||0)+1;const n=O[t];if(n){const e=m==="alignment"?S!==h(n):false;if(!e||L.every((t=>h(t.placement)===S?t.overflows[0]>0:true))){return{data:{index:t,overflows:L},reset:{placement:n}}}}let e=(E=L.filter((t=>t.overflows[0]<=0)).sort(((t,n)=>t.overflows[1]-n.overflows[1]))[0])==null?void 0:E.placement;if(!e){switch(g){case"bestFit":{var I;const t=(I=L.filter((t=>{if(M){const n=h(t.placement);return n===S||n==="y"}return true})).map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,n)=>t+n),0)])).sort(((t,n)=>t[1]-n[1]))[0])==null?void 0:I[0];if(t){e=t}break}case"initialPlacement":e=c;break}}if(r!==e){return{reset:{placement:e}}}}return{}}}};const D=new Set(["left","top"]);async function L(t,n){const{placement:e,platform:o,elements:r}=t;const i=await(o.isRTL==null?void 0:o.isRTL(r.floating));const s=f(e);const c=a(e);const u=h(e)==="y";const d=D.has(s)?-1:1;const m=i&&u?-1:1;const y=l(n,t);let{mainAxis:p,crossAxis:w,alignmentAxis:g}=typeof y==="number"?{mainAxis:y,crossAxis:0,alignmentAxis:null}:{mainAxis:y.mainAxis||0,crossAxis:y.crossAxis||0,alignmentAxis:y.alignmentAxis};if(c&&typeof g==="number"){w=c==="end"?g*-1:g}return u?{x:w*m,y:p*d}:{x:p*d,y:w*m}}const B=function(t){if(t===void 0){t=0}return{name:"offset",options:t,async fn(n){var e,o;const{x:r,y:i,placement:s,middlewareData:c}=n;const l=await L(n,t);if(s===((e=c.offset)==null?void 0:e.placement)&&(o=c.arrow)!=null&&o.alignmentOffset){return{}}return{x:r+l.x,y:i+l.y,data:{...l,placement:s}}}}};const E=function(t){if(t===void 0){t={}}return{name:"shift",options:t,async fn(n){const{x:e,y:o,placement:r}=n;const{mainAxis:i=true,crossAxis:s=false,limiter:a={fn:t=>{let{x:n,y:e}=t;return{x:n,y:e}}},...d}=l(t,n);const m={x:e,y:o};const y=await P(n,d);const p=h(f(r));const w=u(p);let g=m[w];let x=m[p];if(i){const t=w==="y"?"top":"left";const n=w==="y"?"bottom":"right";const e=g+y[t];const o=g-y[n];g=c(e,g,o)}if(s){const t=p==="y"?"top":"left";const n=p==="y"?"bottom":"right";const e=x+y[t];const o=x-y[n];x=c(e,x,o)}const v=a.fn({...n,[w]:g,[p]:x});return{...v,data:{x:v.x-e,y:v.y-o,enabled:{[w]:i,[p]:s}}}}}};const I=function(e){if(e===void 0){e={}}return{name:"size",options:e,async fn(o){var r,i;const{placement:s,rects:c,platform:u,elements:d}=o;const{apply:m=()=>{},...y}=l(e,o);const p=await P(o,y);const w=f(s);const g=a(s);const x=h(s)==="y";const{width:v,height:b}=c.floating;let A;let S;if(w==="top"||w==="bottom"){A=w;S=g===(await(u.isRTL==null?void 0:u.isRTL(d.floating))?"start":"end")?"left":"right"}else{S=w;A=g==="end"?"top":"bottom"}const R=b-p.top-p.bottom;const k=v-p.left-p.right;const F=t(b-p[A],R);const C=t(v-p[S],k);const T=!o.middlewareData.shift;let M=F;let O=C;if((r=o.middlewareData.shift)!=null&&r.enabled.x){O=k}if((i=o.middlewareData.shift)!=null&&i.enabled.y){M=R}if(T&&!g){const t=n(p.left,0);const e=n(p.right,0);const o=n(p.top,0);const r=n(p.bottom,0);if(x){O=v-2*(t!==0||e!==0?t+e:n(p.left,p.right))}else{M=b-2*(o!==0||r!==0?o+r:n(p.top,p.bottom))}}await m({...o,availableWidth:O,availableHeight:M});const z=await u.getDimensions(d.floating);if(v!==z.width||b!==z.height){return{reset:{rects:true}}}return{}}}};function N(){return typeof window!=="undefined"}function j(t){if($(t)){return(t.nodeName||"").toLowerCase()}return"#document"}function q(t){var n;return(t==null||(n=t.ownerDocument)==null?void 0:n.defaultView)||window}function H(t){var n;return(n=($(t)?t.ownerDocument:t.document)||window.document)==null?void 0:n.documentElement}function $(t){if(!N()){return false}return t instanceof Node||t instanceof q(t).Node}function V(t){if(!N()){return false}return t instanceof Element||t instanceof q(t).Element}function W(t){if(!N()){return false}return t instanceof HTMLElement||t instanceof q(t).HTMLElement}function X(t){if(!N()||typeof ShadowRoot==="undefined"){return false}return t instanceof ShadowRoot||t instanceof q(t).ShadowRoot}const Y=new Set(["inline","contents"]);function _(t){const{overflow:n,overflowX:e,overflowY:o,display:r}=st(t);return/auto|scroll|overlay|hidden|clip/.test(n+o+e)&&!Y.has(r)}const G=new Set(["table","td","th"]);function J(t){return G.has(j(t))}const K=[":popover-open",":modal"];function Q(t){return K.some((n=>{try{return t.matches(n)}catch(t){return false}}))}const U=["transform","translate","scale","rotate","perspective"];const Z=["transform","translate","scale","rotate","perspective","filter"];const tt=["paint","layout","strict","content"];function nt(t){const n=ot();const e=V(t)?st(t):t;return U.some((t=>e[t]?e[t]!=="none":false))||(e.containerType?e.containerType!=="normal":false)||!n&&(e.backdropFilter?e.backdropFilter!=="none":false)||!n&&(e.filter?e.filter!=="none":false)||Z.some((t=>(e.willChange||"").includes(t)))||tt.some((t=>(e.contain||"").includes(t)))}function et(t){let n=lt(t);while(W(n)&&!it(n)){if(nt(n)){return n}else if(Q(n)){return null}n=lt(n)}return null}function ot(){if(typeof CSS==="undefined"||!CSS.supports)return false;return CSS.supports("-webkit-backdrop-filter","none")}const rt=new Set(["html","body","#document"]);function it(t){return rt.has(j(t))}function st(t){return q(t).getComputedStyle(t)}function ct(t){if(V(t)){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}return{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function lt(t){if(j(t)==="html"){return t}const n=t.assignedSlot||t.parentNode||X(t)&&t.host||H(t);return X(n)?n.host:n}function ft(t){const n=lt(t);if(it(n)){return t.ownerDocument?t.ownerDocument.body:t.body}if(W(n)&&_(n)){return n}return ft(n)}function at(t,n,e){var o;if(n===void 0){n=[]}if(e===void 0){e=true}const r=ft(t);const i=r===((o=t.ownerDocument)==null?void 0:o.body);const s=q(r);if(i){const t=ut(s);return n.concat(s,s.visualViewport||[],_(r)?r:[],t&&e?at(t):[])}return n.concat(r,at(r,[],e))}function ut(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function dt(t){const n=st(t);let o=parseFloat(n.width)||0;let r=parseFloat(n.height)||0;const i=W(t);const s=i?t.offsetWidth:o;const c=i?t.offsetHeight:r;const l=e(o)!==s||e(r)!==c;if(l){o=s;r=c}return{width:o,height:r,$:l}}function mt(t){return!V(t)?t.contextElement:t}function ht(t){const n=mt(t);if(!W(n)){return r(1)}const o=n.getBoundingClientRect();const{width:i,height:s,$:c}=dt(n);let l=(c?e(o.width):o.width)/i;let f=(c?e(o.height):o.height)/s;if(!l||!Number.isFinite(l)){l=1}if(!f||!Number.isFinite(f)){f=1}return{x:l,y:f}}const yt=r(0);function pt(t){const n=q(t);if(!ot()||!n.visualViewport){return yt}return{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function wt(t,n,e){if(n===void 0){n=false}if(!e||n&&e!==q(t)){return false}return n}function gt(t,n,e,o){if(n===void 0){n=false}if(e===void 0){e=false}const i=t.getBoundingClientRect();const s=mt(t);let c=r(1);if(n){if(o){if(V(o)){c=ht(o)}}else{c=ht(t)}}const l=wt(s,e,o)?pt(s):r(0);let f=(i.left+l.x)/c.x;let a=(i.top+l.y)/c.y;let u=i.width/c.x;let d=i.height/c.y;if(s){const t=q(s);const n=o&&V(o)?q(o):o;let e=t;let r=ut(e);while(r&&o&&n!==e){const t=ht(r);const n=r.getBoundingClientRect();const o=st(r);const i=n.left+(r.clientLeft+parseFloat(o.paddingLeft))*t.x;const s=n.top+(r.clientTop+parseFloat(o.paddingTop))*t.y;f*=t.x;a*=t.y;u*=t.x;d*=t.y;f+=i;a+=s;e=q(r);r=ut(e)}}return T({width:u,height:d,x:f,y:a})}function xt(t,n){const e=ct(t).scrollLeft;if(!n){return gt(H(t)).left+e}return n.left+e}function vt(t,n){const e=t.getBoundingClientRect();const o=e.left+n.scrollLeft-xt(t,e);const r=e.top+n.scrollTop;return{x:o,y:r}}function bt(t){let{elements:n,rect:e,offsetParent:o,strategy:i}=t;const s=i==="fixed";const c=H(o);const l=n?Q(n.floating):false;if(o===c||l&&s){return e}let f={scrollLeft:0,scrollTop:0};let a=r(1);const u=r(0);const d=W(o);if(d||!d&&!s){if(j(o)!=="body"||_(c)){f=ct(o)}if(W(o)){const t=gt(o);a=ht(o);u.x=t.x+o.clientLeft;u.y=t.y+o.clientTop}}const m=c&&!d&&!s?vt(c,f):r(0);return{width:e.width*a.x,height:e.height*a.y,x:e.x*a.x-f.scrollLeft*a.x+u.x+m.x,y:e.y*a.y-f.scrollTop*a.y+u.y+m.y}}function At(t){return Array.from(t.getClientRects())}function St(t){const e=H(t);const o=ct(t);const r=t.ownerDocument.body;const i=n(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth);const s=n(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let c=-o.scrollLeft+xt(t);const l=-o.scrollTop;if(st(r).direction==="rtl"){c+=n(e.clientWidth,r.clientWidth)-i}return{width:i,height:s,x:c,y:l}}const Rt=25;function kt(t,n){const e=q(t);const o=H(t);const r=e.visualViewport;let i=o.clientWidth;let s=o.clientHeight;let c=0;let l=0;if(r){i=r.width;s=r.height;const t=ot();if(!t||t&&n==="fixed"){c=r.offsetLeft;l=r.offsetTop}}const f=xt(o);if(f<=0){const t=o.ownerDocument;const n=t.body;const e=getComputedStyle(n);const r=t.compatMode==="CSS1Compat"?parseFloat(e.marginLeft)+parseFloat(e.marginRight)||0:0;const s=Math.abs(o.clientWidth-n.clientWidth-r);if(s<=Rt){i-=s}}else if(f<=Rt){i+=f}return{width:i,height:s,x:c,y:l}}const Ft=new Set(["absolute","fixed"]);function Ct(t,n){const e=gt(t,true,n==="fixed");const o=e.top+t.clientTop;const i=e.left+t.clientLeft;const s=W(t)?ht(t):r(1);const c=t.clientWidth*s.x;const l=t.clientHeight*s.y;const f=i*s.x;const a=o*s.y;return{width:c,height:l,x:f,y:a}}function Tt(t,n,e){let o;if(n==="viewport"){o=kt(t,e)}else if(n==="document"){o=St(H(t))}else if(V(n)){o=Ct(n,e)}else{const e=pt(t);o={x:n.x-e.x,y:n.y-e.y,width:n.width,height:n.height}}return T(o)}function Mt(t,n){const e=lt(t);if(e===n||!V(e)||it(e)){return false}return st(e).position==="fixed"||Mt(e,n)}function Ot(t,n){const e=n.get(t);if(e){return e}let o=at(t,[],false).filter((t=>V(t)&&j(t)!=="body"));let r=null;const i=st(t).position==="fixed";let s=i?lt(t):t;while(V(s)&&!it(s)){const n=st(s);const e=nt(s);if(!e&&n.position==="fixed"){r=null}const c=i?!e&&!r:!e&&n.position==="static"&&!!r&&Ft.has(r.position)||_(s)&&!e&&Mt(t,s);if(c){o=o.filter((t=>t!==s))}else{r=n}s=lt(s)}n.set(t,o);return o}function Pt(e){let{element:o,boundary:r,rootBoundary:i,strategy:s}=e;const c=r==="clippingAncestors"?Q(o)?[]:Ot(o,this._c):[].concat(r);const l=[...c,i];const f=l[0];const a=l.reduce(((e,r)=>{const i=Tt(o,r,s);e.top=n(i.top,e.top);e.right=t(i.right,e.right);e.bottom=t(i.bottom,e.bottom);e.left=n(i.left,e.left);return e}),Tt(o,f,s));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function zt(t){const{width:n,height:e}=dt(t);return{width:n,height:e}}function Dt(t,n,e){const o=W(n);const i=H(n);const s=e==="fixed";const c=gt(t,true,s,n);let l={scrollLeft:0,scrollTop:0};const f=r(0);function a(){f.x=xt(i)}if(o||!o&&!s){if(j(n)!=="body"||_(i)){l=ct(n)}if(o){const t=gt(n,true,s,n);f.x=t.x+n.clientLeft;f.y=t.y+n.clientTop}else if(i){a()}}if(s&&!o&&i){a()}const u=i&&!o&&!s?vt(i,l):r(0);const d=c.left+l.scrollLeft-f.x-u.x;const m=c.top+l.scrollTop-f.y-u.y;return{x:d,y:m,width:c.width,height:c.height}}function Lt(t){return st(t).position==="static"}function Bt(t,n){if(!W(t)||st(t).position==="fixed"){return null}if(n){return n(t)}let e=t.offsetParent;if(H(t)===e){e=e.ownerDocument.body}return e}function Et(t,n){const e=q(t);if(Q(t)){return e}if(!W(t)){let n=lt(t);while(n&&!it(n)){if(V(n)&&!Lt(n)){return n}n=lt(n)}return e}let o=Bt(t,n);while(o&&J(o)&&Lt(o)){o=Bt(o,n)}if(o&&it(o)&&Lt(o)&&!nt(o)){return e}return o||et(t)||e}const It=async function(t){const n=this.getOffsetParent||Et;const e=this.getDimensions;const o=await e(t.floating);return{reference:Dt(t.reference,await n(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function Nt(t){return st(t).direction==="rtl"}const jt={convertOffsetParentRelativeRectToViewportRelativeRect:bt,getDocumentElement:H,getClippingRect:Pt,getOffsetParent:Et,getElementRects:It,getClientRects:At,getDimensions:zt,getScale:ht,isElement:V,isRTL:Nt};function qt(t,n){return t.x===n.x&&t.y===n.y&&t.width===n.width&&t.height===n.height}function Ht(e,r){let i=null;let s;const c=H(e);function l(){var t;clearTimeout(s);(t=i)==null||t.disconnect();i=null}function f(a,u){if(a===void 0){a=false}if(u===void 0){u=1}l();const d=e.getBoundingClientRect();const{left:m,top:h,width:y,height:p}=d;if(!a){r()}if(!y||!p){return}const w=o(h);const g=o(c.clientWidth-(m+y));const x=o(c.clientHeight-(h+p));const v=o(m);const b=-w+"px "+-g+"px "+-x+"px "+-v+"px";const A={rootMargin:b,threshold:n(0,t(1,u))||1};let S=true;function R(t){const n=t[0].intersectionRatio;if(n!==u){if(!S){return f()}if(!n){s=setTimeout((()=>{f(false,1e-7)}),1e3)}else{f(false,n)}}if(n===1&&!qt(d,e.getBoundingClientRect())){f()}S=false}try{i=new IntersectionObserver(R,{...A,root:c.ownerDocument})}catch(t){i=new IntersectionObserver(R,A)}i.observe(e)}f(true);return l}function $t(t,n,e,o){if(o===void 0){o={}}const{ancestorScroll:r=true,ancestorResize:i=true,elementResize:s=typeof ResizeObserver==="function",layoutShift:c=typeof IntersectionObserver==="function",animationFrame:l=false}=o;const f=mt(t);const a=r||i?[...f?at(f):[],...at(n)]:[];a.forEach((t=>{r&&t.addEventListener("scroll",e,{passive:true});i&&t.addEventListener("resize",e)}));const u=f&&c?Ht(f,e):null;let d=-1;let m=null;if(s){m=new ResizeObserver((t=>{let[o]=t;if(o&&o.target===f&&m){m.unobserve(n);cancelAnimationFrame(d);d=requestAnimationFrame((()=>{var t;(t=m)==null||t.observe(n)}))}e()}));if(f&&!l){m.observe(f)}m.observe(n)}let h;let y=l?gt(t):null;if(l){p()}function p(){const n=gt(t);if(y&&!qt(y,n)){e()}y=n;h=requestAnimationFrame(p)}e();return()=>{var t;a.forEach((t=>{r&&t.removeEventListener("scroll",e);i&&t.removeEventListener("resize",e)}));u==null||u();(t=m)==null||t.disconnect();m=null;if(l){cancelAnimationFrame(h)}}}const Vt=B;const Wt=E;const Xt=z;const Yt=I;const _t=(t,n,e)=>{const o=new Map;const r={platform:jt,...e};const i={...r.platform,_c:o};return O(t,n,{...r,platform:i})};export{$t as a,Yt as b,_t as c,Xt as f,Vt as o,Wt as s};
2
+ //# sourceMappingURL=p-BO6p966C.js.map