@pine-ds/core 3.6.0 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (881) hide show
  1. package/components/form.js +16 -1
  2. package/components/form.js.map +1 -1
  3. package/components/index.d.ts +4 -0
  4. package/components/index.js +2 -0
  5. package/components/index.js.map +1 -1
  6. package/components/index2.js +4 -2
  7. package/components/index2.js.map +1 -1
  8. package/components/mock-pds-modal.js +2 -2
  9. package/components/mock-pds-modal.js.map +1 -1
  10. package/components/pds-avatar.js +1 -1
  11. package/components/pds-button2.js +7 -4
  12. package/components/pds-button2.js.map +1 -1
  13. package/components/pds-checkbox2.js +8 -5
  14. package/components/pds-checkbox2.js.map +1 -1
  15. package/components/pds-chip.js +1 -100
  16. package/components/pds-chip.js.map +1 -1
  17. package/components/pds-chip2.js +105 -0
  18. package/components/pds-chip2.js.map +1 -0
  19. package/components/pds-combobox.js +735 -54
  20. package/components/pds-combobox.js.map +1 -1
  21. package/components/pds-copytext.js +4 -4
  22. package/components/pds-copytext.js.map +1 -1
  23. package/components/pds-dropdown-menu-separator.js +1 -1
  24. package/components/pds-dropdown-menu-separator.js.map +1 -1
  25. package/components/pds-dropdown-menu.js +1 -1
  26. package/components/pds-dropdown-menu.js.map +1 -1
  27. package/components/pds-filter.d.ts +11 -0
  28. package/components/pds-filter.js +518 -0
  29. package/components/pds-filter.js.map +1 -0
  30. package/components/pds-filters.d.ts +11 -0
  31. package/components/pds-filters.js +38 -0
  32. package/components/pds-filters.js.map +1 -0
  33. package/components/pds-image.js +2 -2
  34. package/components/pds-input.js +3 -3
  35. package/components/pds-input.js.map +1 -1
  36. package/components/pds-link2.js +2 -2
  37. package/components/pds-loader2.js +1 -1
  38. package/components/pds-modal-content.js +2 -2
  39. package/components/pds-modal-footer.js +1 -1
  40. package/components/pds-modal-header.js +1 -1
  41. package/components/pds-modal.js +4 -4
  42. package/components/pds-modal.js.map +1 -1
  43. package/components/pds-popover.js +123 -15
  44. package/components/pds-popover.js.map +1 -1
  45. package/components/pds-progress.js +1 -1
  46. package/components/pds-property.js +1 -1
  47. package/components/pds-radio.js +11 -5
  48. package/components/pds-radio.js.map +1 -1
  49. package/components/pds-row.js +1 -1
  50. package/components/pds-select.js +22 -6
  51. package/components/pds-select.js.map +1 -1
  52. package/components/pds-sortable-item.js +1 -1
  53. package/components/pds-sortable.js +1 -1
  54. package/components/pds-switch.js +8 -5
  55. package/components/pds-switch.js.map +1 -1
  56. package/components/pds-tab.js +4 -4
  57. package/components/pds-tab.js.map +1 -1
  58. package/components/pds-table-body.js +1 -1
  59. package/components/pds-table-cell2.js +3 -3
  60. package/components/pds-table-cell2.js.map +1 -1
  61. package/components/pds-table-head-cell2.js +3 -3
  62. package/components/pds-table-head-cell2.js.map +1 -1
  63. package/components/pds-table-head.js +2 -2
  64. package/components/pds-table-head.js.map +1 -1
  65. package/components/pds-table-row.js +2 -2
  66. package/components/pds-table-row.js.map +1 -1
  67. package/components/pds-table.js +1 -1
  68. package/components/pds-table.js.map +1 -1
  69. package/components/pds-tabpanel.js +1 -1
  70. package/components/pds-tabs.js +14 -4
  71. package/components/pds-tabs.js.map +1 -1
  72. package/components/pds-text2.js +1 -1
  73. package/components/pds-textarea.js +10 -7
  74. package/components/pds-textarea.js.map +1 -1
  75. package/components/pds-toast.js +3 -3
  76. package/components/pds-tooltip.js +4 -4
  77. package/components/pds-tooltip.js.map +1 -1
  78. package/dist/cjs/{form-Bx4nzJBo.js → form-hmpgbT1I.js} +18 -2
  79. package/dist/cjs/form-hmpgbT1I.js.map +1 -0
  80. package/dist/cjs/{index-g-uSeICs.js → index-DDTyvZD7.js} +5 -2
  81. package/dist/cjs/index-DDTyvZD7.js.map +1 -0
  82. package/dist/cjs/{index-DVaLegMK.js → index-DtnvzYhe.js} +7 -3
  83. package/dist/cjs/index-DtnvzYhe.js.map +1 -0
  84. package/dist/cjs/index.cjs.js +1 -1
  85. package/dist/cjs/loader.cjs.js +2 -2
  86. package/dist/cjs/mock-pds-modal.cjs.entry.js +3 -3
  87. package/dist/cjs/mock-pds-modal.cjs.entry.js.map +1 -1
  88. package/dist/cjs/mock-pds-modal.entry.cjs.js.map +1 -1
  89. package/dist/cjs/pds-accordion.cjs.entry.js +2 -2
  90. package/dist/cjs/pds-alert.cjs.entry.js +1 -1
  91. package/dist/cjs/pds-avatar.cjs.entry.js +2 -2
  92. package/dist/cjs/pds-box.cjs.entry.js +1 -1
  93. package/dist/cjs/pds-button.cjs.entry.js +8 -5
  94. package/dist/cjs/pds-button.cjs.entry.js.map +1 -1
  95. package/dist/cjs/pds-button.entry.cjs.js.map +1 -1
  96. package/dist/cjs/pds-checkbox.cjs.entry.js +9 -6
  97. package/dist/cjs/pds-checkbox.cjs.entry.js.map +1 -1
  98. package/dist/cjs/pds-checkbox.entry.cjs.js.map +1 -1
  99. package/dist/cjs/pds-chip.cjs.entry.js +4 -4
  100. package/dist/cjs/pds-chip.cjs.entry.js.map +1 -1
  101. package/dist/cjs/pds-chip.entry.cjs.js.map +1 -1
  102. package/dist/cjs/pds-combobox.cjs.entry.js +719 -51
  103. package/dist/cjs/pds-combobox.cjs.entry.js.map +1 -1
  104. package/dist/cjs/pds-combobox.entry.cjs.js.map +1 -1
  105. package/dist/cjs/pds-copytext.cjs.entry.js +5 -5
  106. package/dist/cjs/pds-copytext.cjs.entry.js.map +1 -1
  107. package/dist/cjs/pds-copytext.entry.cjs.js.map +1 -1
  108. package/dist/cjs/pds-divider.cjs.entry.js +1 -1
  109. package/dist/cjs/pds-dropdown-menu-item.cjs.entry.js +1 -1
  110. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js +2 -2
  111. package/dist/cjs/pds-dropdown-menu-separator.cjs.entry.js.map +1 -1
  112. package/dist/cjs/pds-dropdown-menu-separator.entry.cjs.js.map +1 -1
  113. package/dist/cjs/pds-dropdown-menu.cjs.entry.js +2 -2
  114. package/dist/cjs/pds-dropdown-menu.cjs.entry.js.map +1 -1
  115. package/dist/cjs/pds-dropdown-menu.entry.cjs.js.map +1 -1
  116. package/dist/cjs/pds-filter.cjs.entry.js +488 -0
  117. package/dist/cjs/pds-filter.cjs.entry.js.map +1 -0
  118. package/dist/cjs/pds-filter.entry.cjs.js.map +1 -0
  119. package/dist/cjs/pds-filters.cjs.entry.js +20 -0
  120. package/dist/cjs/pds-filters.cjs.entry.js.map +1 -0
  121. package/dist/cjs/pds-filters.entry.cjs.js.map +1 -0
  122. package/dist/cjs/pds-icon.cjs.entry.js +1 -1
  123. package/dist/cjs/pds-image.cjs.entry.js +3 -3
  124. package/dist/cjs/pds-input.cjs.entry.js +5 -5
  125. package/dist/cjs/pds-input.cjs.entry.js.map +1 -1
  126. package/dist/cjs/pds-input.entry.cjs.js.map +1 -1
  127. package/dist/cjs/pds-link.cjs.entry.js +4 -4
  128. package/dist/cjs/pds-loader.cjs.entry.js +2 -2
  129. package/dist/cjs/pds-modal-content.cjs.entry.js +3 -3
  130. package/dist/cjs/pds-modal-footer.cjs.entry.js +2 -2
  131. package/dist/cjs/pds-modal-header.cjs.entry.js +2 -2
  132. package/dist/cjs/pds-modal.cjs.entry.js +5 -5
  133. package/dist/cjs/pds-modal.cjs.entry.js.map +1 -1
  134. package/dist/cjs/pds-modal.entry.cjs.js.map +1 -1
  135. package/dist/cjs/pds-popover.cjs.entry.js +118 -13
  136. package/dist/cjs/pds-popover.cjs.entry.js.map +1 -1
  137. package/dist/cjs/pds-popover.entry.cjs.js.map +1 -1
  138. package/dist/cjs/pds-progress.cjs.entry.js +2 -2
  139. package/dist/cjs/pds-property.cjs.entry.js +2 -2
  140. package/dist/cjs/pds-radio.cjs.entry.js +12 -6
  141. package/dist/cjs/pds-radio.cjs.entry.js.map +1 -1
  142. package/dist/cjs/pds-radio.entry.cjs.js.map +1 -1
  143. package/dist/cjs/pds-row.cjs.entry.js +2 -2
  144. package/dist/cjs/pds-select.cjs.entry.js +21 -6
  145. package/dist/cjs/pds-select.cjs.entry.js.map +1 -1
  146. package/dist/cjs/pds-select.entry.cjs.js.map +1 -1
  147. package/dist/cjs/pds-sortable-item.cjs.entry.js +3 -3
  148. package/dist/cjs/pds-sortable.cjs.entry.js +2 -2
  149. package/dist/cjs/pds-switch.cjs.entry.js +9 -6
  150. package/dist/cjs/pds-switch.cjs.entry.js.map +1 -1
  151. package/dist/cjs/pds-switch.entry.cjs.js.map +1 -1
  152. package/dist/cjs/pds-tab.cjs.entry.js +5 -5
  153. package/dist/cjs/pds-tab.cjs.entry.js.map +1 -1
  154. package/dist/cjs/pds-tab.entry.cjs.js.map +1 -1
  155. package/dist/cjs/pds-table-body.cjs.entry.js +2 -2
  156. package/dist/cjs/pds-table-cell.cjs.entry.js +4 -4
  157. package/dist/cjs/pds-table-cell.cjs.entry.js.map +1 -1
  158. package/dist/cjs/pds-table-cell.entry.cjs.js.map +1 -1
  159. package/dist/cjs/pds-table-head-cell.cjs.entry.js +5 -5
  160. package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -1
  161. package/dist/cjs/pds-table-head-cell.entry.cjs.js.map +1 -1
  162. package/dist/cjs/pds-table-head.cjs.entry.js +3 -3
  163. package/dist/cjs/pds-table-head.cjs.entry.js.map +1 -1
  164. package/dist/cjs/pds-table-head.entry.cjs.js.map +1 -1
  165. package/dist/cjs/pds-table-row.cjs.entry.js +3 -3
  166. package/dist/cjs/pds-table-row.cjs.entry.js.map +1 -1
  167. package/dist/cjs/pds-table-row.entry.cjs.js.map +1 -1
  168. package/dist/cjs/pds-table.cjs.entry.js +2 -2
  169. package/dist/cjs/pds-table.cjs.entry.js.map +1 -1
  170. package/dist/cjs/pds-table.entry.cjs.js.map +1 -1
  171. package/dist/cjs/pds-tabpanel.cjs.entry.js +2 -2
  172. package/dist/cjs/pds-tabs.cjs.entry.js +15 -5
  173. package/dist/cjs/pds-tabs.cjs.entry.js.map +1 -1
  174. package/dist/cjs/pds-tabs.entry.cjs.js.map +1 -1
  175. package/dist/cjs/pds-text.cjs.entry.js +2 -2
  176. package/dist/cjs/pds-textarea.cjs.entry.js +11 -8
  177. package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -1
  178. package/dist/cjs/pds-textarea.entry.cjs.js.map +1 -1
  179. package/dist/cjs/pds-toast.cjs.entry.js +4 -4
  180. package/dist/cjs/pds-tooltip.cjs.entry.js +5 -5
  181. package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -1
  182. package/dist/cjs/pds-tooltip.entry.cjs.js.map +1 -1
  183. package/dist/cjs/pine-core.cjs.js +2 -2
  184. package/dist/collection/collection-manifest.json +2 -0
  185. package/dist/collection/components/pds-button/pds-button.css +29 -3
  186. package/dist/collection/components/pds-button/pds-button.js +8 -5
  187. package/dist/collection/components/pds-button/pds-button.js.map +1 -1
  188. package/dist/collection/components/pds-button/stories/pds-button.stories.js +28 -1
  189. package/dist/collection/components/pds-checkbox/pds-checkbox.js +7 -4
  190. package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -1
  191. package/dist/collection/components/pds-chip/pds-chip.css +2 -2
  192. package/dist/collection/components/pds-chip/pds-chip.js +17 -5
  193. package/dist/collection/components/pds-chip/pds-chip.js.map +1 -1
  194. package/dist/collection/components/pds-combobox/pds-combobox.css +213 -4
  195. package/dist/collection/components/pds-combobox/pds-combobox.js +837 -54
  196. package/dist/collection/components/pds-combobox/pds-combobox.js.map +1 -1
  197. package/dist/collection/components/pds-combobox/stories/pds-combobox.stories.js +182 -2
  198. package/dist/collection/components/pds-copytext/pds-copytext.css +6 -3
  199. package/dist/collection/components/pds-copytext/pds-copytext.js +2 -2
  200. package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
  201. package/dist/collection/components/pds-copytext/stories/pds-copytext.stories.js +1 -1
  202. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu-separator/pds-dropdown-menu-separator.css +4 -1
  203. package/dist/collection/components/pds-dropdown-menu/pds-dropdown-menu.css +1 -1
  204. package/dist/collection/components/pds-filters/pds-filter/filter-interface.js +2 -0
  205. package/dist/collection/components/pds-filters/pds-filter/filter-interface.js.map +1 -0
  206. package/dist/collection/components/pds-filters/pds-filter/pds-filter.css +193 -0
  207. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js +732 -0
  208. package/dist/collection/components/pds-filters/pds-filter/pds-filter.js.map +1 -0
  209. package/dist/collection/components/pds-filters/pds-filter/stories/pds-filter.stories.js +93 -0
  210. package/dist/collection/components/pds-filters/pds-filters.css +10 -0
  211. package/dist/collection/components/pds-filters/pds-filters.js +45 -0
  212. package/dist/collection/components/pds-filters/pds-filters.js.map +1 -0
  213. package/dist/collection/components/pds-filters/stories/pds-filters.stories.js +40 -0
  214. package/dist/collection/components/pds-image/pds-image.js +2 -2
  215. package/dist/collection/components/pds-input/pds-input.css +18 -3
  216. package/dist/collection/components/pds-input/pds-input.js +1 -1
  217. package/dist/collection/components/pds-input/stories/pds-input.stories.js +42 -0
  218. package/dist/collection/components/pds-link/pds-link.js +2 -2
  219. package/dist/collection/components/pds-loader/pds-loader.js +1 -1
  220. package/dist/collection/components/pds-modal/pds-modal-content/pds-modal-content.js +2 -2
  221. package/dist/collection/components/pds-modal/pds-modal-footer/pds-modal-footer.js +1 -1
  222. package/dist/collection/components/pds-modal/pds-modal-header/pds-modal-header.js +1 -1
  223. package/dist/collection/components/pds-modal/pds-modal.css +2 -2
  224. package/dist/collection/components/pds-modal/pds-modal.js +3 -3
  225. package/dist/collection/components/pds-modal/test/mock-pds-modal.js +1 -1
  226. package/dist/collection/components/pds-popover/pds-popover.css +3 -0
  227. package/dist/collection/components/pds-popover/pds-popover.js +226 -17
  228. package/dist/collection/components/pds-popover/pds-popover.js.map +1 -1
  229. package/dist/collection/components/pds-popover/popover-interface.js +2 -0
  230. package/dist/collection/components/pds-popover/popover-interface.js.map +1 -0
  231. package/dist/collection/components/pds-popover/stories/pds-popover.stories.js +1 -1
  232. package/dist/collection/components/pds-progress/pds-progress.js +1 -1
  233. package/dist/collection/components/pds-property/pds-property.js +1 -1
  234. package/dist/collection/components/pds-radio/pds-radio.js +10 -4
  235. package/dist/collection/components/pds-radio/pds-radio.js.map +1 -1
  236. package/dist/collection/components/pds-row/pds-row.js +1 -1
  237. package/dist/collection/components/pds-select/pds-select.css +1 -1
  238. package/dist/collection/components/pds-select/pds-select.js +19 -2
  239. package/dist/collection/components/pds-select/pds-select.js.map +1 -1
  240. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.js +1 -1
  241. package/dist/collection/components/pds-sortable/pds-sortable.js +1 -1
  242. package/dist/collection/components/pds-switch/pds-switch.js +7 -4
  243. package/dist/collection/components/pds-switch/pds-switch.js.map +1 -1
  244. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +1 -1
  245. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +1 -1
  246. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +2 -2
  247. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -1
  248. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +1 -1
  249. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +1 -1
  250. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +2 -2
  251. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -1
  252. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +1 -1
  253. package/dist/collection/components/pds-table/pds-table.css +1 -1
  254. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +5 -2
  255. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.js +3 -3
  256. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.js +1 -1
  257. package/dist/collection/components/pds-tabs/pds-tabs.js +15 -4
  258. package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -1
  259. package/dist/collection/components/pds-tabs/stories/pds-tabs.stories.js +1 -1
  260. package/dist/collection/components/pds-text/pds-text.js +1 -1
  261. package/dist/collection/components/pds-textarea/pds-textarea.css +1 -1
  262. package/dist/collection/components/pds-textarea/pds-textarea.js +8 -5
  263. package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
  264. package/dist/collection/components/pds-toast/pds-toast.js +3 -3
  265. package/dist/collection/components/pds-tooltip/pds-tooltip.css +1 -1
  266. package/dist/collection/components/pds-tooltip/pds-tooltip.js +3 -3
  267. package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
  268. package/dist/collection/utils/form.js +15 -0
  269. package/dist/collection/utils/form.js.map +1 -1
  270. package/dist/collection/utils/types.js.map +1 -1
  271. package/dist/docs.json +825 -84
  272. package/dist/esm/form-DwjNklzi.js +47 -0
  273. package/dist/esm/form-DwjNklzi.js.map +1 -0
  274. package/dist/esm/{index-BVCWKPy3.js → index-Bf1dou5H.js} +5 -2
  275. package/dist/esm/index-Bf1dou5H.js.map +1 -0
  276. package/dist/esm/{index-DrJ5r5Pu.js → index-D4zJBIgl.js} +6 -4
  277. package/dist/esm/index-D4zJBIgl.js.map +1 -0
  278. package/dist/esm/index.js +1 -1
  279. package/dist/esm/loader.js +3 -3
  280. package/dist/esm/mock-pds-modal.entry.js +3 -3
  281. package/dist/esm/mock-pds-modal.entry.js.map +1 -1
  282. package/dist/esm/pds-accordion.entry.js +2 -2
  283. package/dist/esm/pds-alert.entry.js +1 -1
  284. package/dist/esm/pds-avatar.entry.js +2 -2
  285. package/dist/esm/pds-box.entry.js +1 -1
  286. package/dist/esm/pds-button.entry.js +8 -5
  287. package/dist/esm/pds-button.entry.js.map +1 -1
  288. package/dist/esm/pds-checkbox.entry.js +9 -6
  289. package/dist/esm/pds-checkbox.entry.js.map +1 -1
  290. package/dist/esm/pds-chip.entry.js +4 -4
  291. package/dist/esm/pds-chip.entry.js.map +1 -1
  292. package/dist/esm/pds-combobox.entry.js +719 -51
  293. package/dist/esm/pds-combobox.entry.js.map +1 -1
  294. package/dist/esm/pds-copytext.entry.js +5 -5
  295. package/dist/esm/pds-copytext.entry.js.map +1 -1
  296. package/dist/esm/pds-divider.entry.js +1 -1
  297. package/dist/esm/pds-dropdown-menu-item.entry.js +1 -1
  298. package/dist/esm/pds-dropdown-menu-separator.entry.js +2 -2
  299. package/dist/esm/pds-dropdown-menu-separator.entry.js.map +1 -1
  300. package/dist/esm/pds-dropdown-menu.entry.js +2 -2
  301. package/dist/esm/pds-dropdown-menu.entry.js.map +1 -1
  302. package/dist/esm/pds-filter.entry.js +486 -0
  303. package/dist/esm/pds-filter.entry.js.map +1 -0
  304. package/dist/esm/pds-filters.entry.js +18 -0
  305. package/dist/esm/pds-filters.entry.js.map +1 -0
  306. package/dist/esm/pds-icon.entry.js +1 -1
  307. package/dist/esm/pds-image.entry.js +3 -3
  308. package/dist/esm/pds-input.entry.js +5 -5
  309. package/dist/esm/pds-input.entry.js.map +1 -1
  310. package/dist/esm/pds-link.entry.js +4 -4
  311. package/dist/esm/pds-loader.entry.js +2 -2
  312. package/dist/esm/pds-modal-content.entry.js +3 -3
  313. package/dist/esm/pds-modal-footer.entry.js +2 -2
  314. package/dist/esm/pds-modal-header.entry.js +2 -2
  315. package/dist/esm/pds-modal.entry.js +5 -5
  316. package/dist/esm/pds-modal.entry.js.map +1 -1
  317. package/dist/esm/pds-popover.entry.js +118 -13
  318. package/dist/esm/pds-popover.entry.js.map +1 -1
  319. package/dist/esm/pds-progress.entry.js +2 -2
  320. package/dist/esm/pds-property.entry.js +2 -2
  321. package/dist/esm/pds-radio.entry.js +12 -6
  322. package/dist/esm/pds-radio.entry.js.map +1 -1
  323. package/dist/esm/pds-row.entry.js +2 -2
  324. package/dist/esm/pds-select.entry.js +21 -6
  325. package/dist/esm/pds-select.entry.js.map +1 -1
  326. package/dist/esm/pds-sortable-item.entry.js +3 -3
  327. package/dist/esm/pds-sortable.entry.js +2 -2
  328. package/dist/esm/pds-switch.entry.js +9 -6
  329. package/dist/esm/pds-switch.entry.js.map +1 -1
  330. package/dist/esm/pds-tab.entry.js +5 -5
  331. package/dist/esm/pds-tab.entry.js.map +1 -1
  332. package/dist/esm/pds-table-body.entry.js +2 -2
  333. package/dist/esm/pds-table-cell.entry.js +4 -4
  334. package/dist/esm/pds-table-cell.entry.js.map +1 -1
  335. package/dist/esm/pds-table-head-cell.entry.js +5 -5
  336. package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
  337. package/dist/esm/pds-table-head.entry.js +3 -3
  338. package/dist/esm/pds-table-head.entry.js.map +1 -1
  339. package/dist/esm/pds-table-row.entry.js +3 -3
  340. package/dist/esm/pds-table-row.entry.js.map +1 -1
  341. package/dist/esm/pds-table.entry.js +2 -2
  342. package/dist/esm/pds-table.entry.js.map +1 -1
  343. package/dist/esm/pds-tabpanel.entry.js +2 -2
  344. package/dist/esm/pds-tabs.entry.js +15 -5
  345. package/dist/esm/pds-tabs.entry.js.map +1 -1
  346. package/dist/esm/pds-text.entry.js +2 -2
  347. package/dist/esm/pds-textarea.entry.js +11 -8
  348. package/dist/esm/pds-textarea.entry.js.map +1 -1
  349. package/dist/esm/pds-toast.entry.js +4 -4
  350. package/dist/esm/pds-tooltip.entry.js +5 -5
  351. package/dist/esm/pds-tooltip.entry.js.map +1 -1
  352. package/dist/esm/pine-core.js +3 -3
  353. package/dist/esm-es5/form-DwjNklzi.js +2 -0
  354. package/dist/esm-es5/form-DwjNklzi.js.map +1 -0
  355. package/dist/esm-es5/{index-BVCWKPy3.js → index-Bf1dou5H.js} +2 -2
  356. package/dist/esm-es5/index-Bf1dou5H.js.map +1 -0
  357. package/dist/esm-es5/index-D4zJBIgl.js +2 -0
  358. package/dist/esm-es5/index-D4zJBIgl.js.map +1 -0
  359. package/dist/esm-es5/index.js +1 -1
  360. package/dist/esm-es5/loader.js +1 -1
  361. package/dist/esm-es5/mock-pds-modal.entry.js +1 -1
  362. package/dist/esm-es5/mock-pds-modal.entry.js.map +1 -1
  363. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  364. package/dist/esm-es5/pds-alert.entry.js +1 -1
  365. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  366. package/dist/esm-es5/pds-box.entry.js +1 -1
  367. package/dist/esm-es5/pds-button.entry.js +1 -1
  368. package/dist/esm-es5/pds-button.entry.js.map +1 -1
  369. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  370. package/dist/esm-es5/pds-checkbox.entry.js.map +1 -1
  371. package/dist/esm-es5/pds-chip.entry.js +1 -1
  372. package/dist/esm-es5/pds-chip.entry.js.map +1 -1
  373. package/dist/esm-es5/pds-combobox.entry.js +2 -2
  374. package/dist/esm-es5/pds-combobox.entry.js.map +1 -1
  375. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  376. package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
  377. package/dist/esm-es5/pds-divider.entry.js +1 -1
  378. package/dist/esm-es5/pds-dropdown-menu-item.entry.js +1 -1
  379. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js +1 -1
  380. package/dist/esm-es5/pds-dropdown-menu-separator.entry.js.map +1 -1
  381. package/dist/esm-es5/pds-dropdown-menu.entry.js +1 -1
  382. package/dist/esm-es5/pds-dropdown-menu.entry.js.map +1 -1
  383. package/dist/esm-es5/pds-filter.entry.js +2 -0
  384. package/dist/esm-es5/pds-filter.entry.js.map +1 -0
  385. package/dist/esm-es5/pds-filters.entry.js +2 -0
  386. package/dist/esm-es5/pds-filters.entry.js.map +1 -0
  387. package/dist/esm-es5/pds-icon.entry.js +1 -1
  388. package/dist/esm-es5/pds-image.entry.js +1 -1
  389. package/dist/esm-es5/pds-input.entry.js +1 -1
  390. package/dist/esm-es5/pds-input.entry.js.map +1 -1
  391. package/dist/esm-es5/pds-link.entry.js +1 -1
  392. package/dist/esm-es5/pds-loader.entry.js +1 -1
  393. package/dist/esm-es5/pds-modal-content.entry.js +1 -1
  394. package/dist/esm-es5/pds-modal-footer.entry.js +1 -1
  395. package/dist/esm-es5/pds-modal-header.entry.js +1 -1
  396. package/dist/esm-es5/pds-modal.entry.js +1 -1
  397. package/dist/esm-es5/pds-modal.entry.js.map +1 -1
  398. package/dist/esm-es5/pds-popover.entry.js +1 -1
  399. package/dist/esm-es5/pds-popover.entry.js.map +1 -1
  400. package/dist/esm-es5/pds-progress.entry.js +1 -1
  401. package/dist/esm-es5/pds-property.entry.js +1 -1
  402. package/dist/esm-es5/pds-radio.entry.js +1 -1
  403. package/dist/esm-es5/pds-radio.entry.js.map +1 -1
  404. package/dist/esm-es5/pds-row.entry.js +1 -1
  405. package/dist/esm-es5/pds-select.entry.js +1 -1
  406. package/dist/esm-es5/pds-select.entry.js.map +1 -1
  407. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  408. package/dist/esm-es5/pds-sortable.entry.js +2 -2
  409. package/dist/esm-es5/pds-switch.entry.js +1 -1
  410. package/dist/esm-es5/pds-switch.entry.js.map +1 -1
  411. package/dist/esm-es5/pds-tab.entry.js +1 -1
  412. package/dist/esm-es5/pds-tab.entry.js.map +1 -1
  413. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  414. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  415. package/dist/esm-es5/pds-table-cell.entry.js.map +1 -1
  416. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  417. package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
  418. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  419. package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
  420. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  421. package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
  422. package/dist/esm-es5/pds-table.entry.js +1 -1
  423. package/dist/esm-es5/pds-table.entry.js.map +1 -1
  424. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  425. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  426. package/dist/esm-es5/pds-tabs.entry.js.map +1 -1
  427. package/dist/esm-es5/pds-text.entry.js +1 -1
  428. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  429. package/dist/esm-es5/pds-textarea.entry.js.map +1 -1
  430. package/dist/esm-es5/pds-toast.entry.js +1 -1
  431. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  432. package/dist/esm-es5/pds-tooltip.entry.js.map +1 -1
  433. package/dist/esm-es5/pine-core.js +1 -1
  434. package/dist/pine-core/index.esm.js +1 -1
  435. package/dist/pine-core/mock-pds-modal.entry.esm.js.map +1 -1
  436. package/dist/pine-core/p-00346c62.system.entry.js +2 -0
  437. package/dist/pine-core/p-00346c62.system.entry.js.map +1 -0
  438. package/dist/pine-core/{p-72b05928.system.entry.js → p-0486ecc6.system.entry.js} +2 -2
  439. package/dist/pine-core/{p-72b05928.system.entry.js.map → p-0486ecc6.system.entry.js.map} +1 -1
  440. package/dist/pine-core/p-07e129db.entry.js +2 -0
  441. package/dist/pine-core/{p-540cfd70.entry.js → p-1009009c.entry.js} +2 -2
  442. package/dist/pine-core/{p-349a8869.entry.js → p-100de2b7.entry.js} +2 -2
  443. package/dist/pine-core/p-1b932ee3.entry.js +2 -0
  444. package/dist/pine-core/p-1b932ee3.entry.js.map +1 -0
  445. package/dist/pine-core/{p-e2887e78.entry.js → p-1b9d4482.entry.js} +2 -2
  446. package/dist/pine-core/p-1c32ffb3.entry.js +2 -0
  447. package/dist/pine-core/p-1c32ffb3.entry.js.map +1 -0
  448. package/dist/pine-core/p-20466115.entry.js +2 -0
  449. package/dist/pine-core/p-20466115.entry.js.map +1 -0
  450. package/dist/pine-core/{p-dfc5ab34.system.entry.js → p-2054b5cb.system.entry.js} +2 -2
  451. package/dist/pine-core/{p-8726c99d.system.entry.js → p-2597bc59.system.entry.js} +2 -2
  452. package/dist/pine-core/{p-5a709348.entry.js → p-25cb810d.entry.js} +2 -2
  453. package/dist/pine-core/{p-a1b51557.system.entry.js → p-25cf2860.system.entry.js} +2 -2
  454. package/dist/pine-core/{p-54183d70.system.entry.js → p-2aab28b1.system.entry.js} +2 -2
  455. package/dist/pine-core/p-2b102034.system.entry.js +2 -0
  456. package/dist/pine-core/p-2b102034.system.entry.js.map +1 -0
  457. package/dist/pine-core/p-2b12bc55.system.entry.js +2 -0
  458. package/dist/pine-core/p-2efc646c.system.entry.js +2 -0
  459. package/dist/pine-core/{p-ecb9edf8.entry.js → p-2fb6f9d5.entry.js} +2 -2
  460. package/dist/pine-core/p-2fd7f74e.entry.js +2 -0
  461. package/dist/pine-core/{p-39488f2c.system.entry.js → p-302849cf.system.entry.js} +2 -2
  462. package/dist/pine-core/{p-51d83489.system.entry.js → p-307f415a.system.entry.js} +2 -2
  463. package/dist/pine-core/p-378df5eb.system.entry.js +2 -0
  464. package/dist/pine-core/{p-e08f492a.entry.js → p-39648ce2.entry.js} +2 -2
  465. package/dist/pine-core/p-3dce3bc0.system.entry.js +2 -0
  466. package/dist/pine-core/p-3dce3bc0.system.entry.js.map +1 -0
  467. package/dist/pine-core/{p-5f5b19f4.entry.js → p-41e2fe3a.entry.js} +2 -2
  468. package/dist/pine-core/p-449ebe39.system.entry.js +2 -0
  469. package/dist/pine-core/p-45d574f1.system.entry.js +2 -0
  470. package/dist/pine-core/p-45d574f1.system.entry.js.map +1 -0
  471. package/dist/pine-core/p-465e3418.system.entry.js +2 -0
  472. package/dist/pine-core/p-465e3418.system.entry.js.map +1 -0
  473. package/dist/pine-core/p-4xv5UVkx.system.js.map +1 -0
  474. package/dist/pine-core/p-538b3902.system.entry.js +2 -0
  475. package/dist/pine-core/p-538b3902.system.entry.js.map +1 -0
  476. package/dist/pine-core/{p-c13ef6a7.system.entry.js → p-55d06d0a.system.entry.js} +3 -3
  477. package/dist/pine-core/{p-075eecf9.entry.js → p-5ac7af9e.entry.js} +2 -2
  478. package/dist/pine-core/p-61a25ab2.entry.js +2 -0
  479. package/dist/pine-core/p-61a25ab2.entry.js.map +1 -0
  480. package/dist/pine-core/p-6381a811.system.entry.js +4 -0
  481. package/dist/pine-core/p-6381a811.system.entry.js.map +1 -0
  482. package/dist/pine-core/p-6c36cab6.entry.js +2 -0
  483. package/dist/pine-core/p-6c36cab6.entry.js.map +1 -0
  484. package/dist/pine-core/p-6ed297cb.entry.js +2 -0
  485. package/dist/pine-core/p-6ed297cb.entry.js.map +1 -0
  486. package/dist/pine-core/p-708e963c.system.entry.js +2 -0
  487. package/dist/pine-core/p-708e963c.system.entry.js.map +1 -0
  488. package/dist/pine-core/p-7090d42d.system.entry.js +2 -0
  489. package/dist/pine-core/p-7090d42d.system.entry.js.map +1 -0
  490. package/dist/pine-core/{p-4deb7b8c.entry.js → p-725c350c.entry.js} +2 -2
  491. package/dist/pine-core/{p-4deb7b8c.entry.js.map → p-725c350c.entry.js.map} +1 -1
  492. package/dist/pine-core/{p-b2b1b7a9.system.entry.js → p-73a2e028.system.entry.js} +2 -2
  493. package/dist/pine-core/p-75187352.system.entry.js +2 -0
  494. package/dist/pine-core/p-75187352.system.entry.js.map +1 -0
  495. package/dist/pine-core/p-786967e8.entry.js +2 -0
  496. package/dist/pine-core/p-79422986.entry.js +2 -0
  497. package/dist/pine-core/p-79422986.entry.js.map +1 -0
  498. package/dist/pine-core/p-81bc089e.entry.js +2 -0
  499. package/dist/pine-core/p-81bc089e.entry.js.map +1 -0
  500. package/dist/pine-core/p-85c41629.entry.js +2 -0
  501. package/dist/pine-core/p-85c41629.entry.js.map +1 -0
  502. package/dist/pine-core/p-86263a62.entry.js +2 -0
  503. package/dist/pine-core/p-86263a62.entry.js.map +1 -0
  504. package/dist/pine-core/p-875d5d5a.system.entry.js +2 -0
  505. package/dist/pine-core/p-87ed43d5.entry.js +2 -0
  506. package/dist/pine-core/p-87ed43d5.entry.js.map +1 -0
  507. package/dist/pine-core/{p-c8122bea.entry.js → p-88773b86.entry.js} +2 -2
  508. package/dist/pine-core/p-8b4fb3f0.entry.js +2 -0
  509. package/dist/pine-core/p-8b4fb3f0.entry.js.map +1 -0
  510. package/dist/pine-core/p-8b5fc4b4.system.entry.js +2 -0
  511. package/dist/pine-core/p-8b5fc4b4.system.entry.js.map +1 -0
  512. package/dist/pine-core/{p-e89cb1f2.system.entry.js → p-8f69dd71.system.entry.js} +2 -2
  513. package/dist/pine-core/p-94183716.entry.js +2 -0
  514. package/dist/pine-core/p-94183716.entry.js.map +1 -0
  515. package/dist/pine-core/p-96c27dba.entry.js +2 -0
  516. package/dist/pine-core/p-96c27dba.entry.js.map +1 -0
  517. package/dist/pine-core/p-9766923f.entry.js +2 -0
  518. package/dist/pine-core/p-9766923f.entry.js.map +1 -0
  519. package/dist/pine-core/p-9b335a9f.entry.js +2 -0
  520. package/dist/pine-core/p-9b335a9f.entry.js.map +1 -0
  521. package/dist/pine-core/p-9c579956.system.entry.js +2 -0
  522. package/dist/pine-core/p-9c579956.system.entry.js.map +1 -0
  523. package/dist/pine-core/p-9cf2b7a6.entry.js +2 -0
  524. package/dist/pine-core/p-9cf2b7a6.entry.js.map +1 -0
  525. package/dist/pine-core/{p-Dh7jcLgJ.system.js.map → p-B-Doh1Wu.system.js.map} +1 -1
  526. package/dist/pine-core/{p-B1fiSdbt.system.js.map → p-BEgEi4w5.system.js.map} +1 -1
  527. package/dist/pine-core/p-BG99uNIQ.system.js +2 -0
  528. package/dist/pine-core/p-BG99uNIQ.system.js.map +1 -0
  529. package/dist/pine-core/p-BHavepTY.system.js +2 -0
  530. package/dist/pine-core/p-BHavepTY.system.js.map +1 -0
  531. package/dist/pine-core/{p-_E9ZEzfO.system.js.map → p-BIjeWHX_.system.js.map} +1 -1
  532. package/dist/pine-core/{p-EYhpJx2s.system.js.map → p-BJjdD3yf.system.js.map} +1 -1
  533. package/dist/pine-core/p-BLC5kuro.system.js.map +1 -0
  534. package/dist/pine-core/p-BPjnTOEL.system.js +2 -0
  535. package/dist/pine-core/{p-De9tROL-.system.js.map → p-BPjnTOEL.system.js.map} +1 -1
  536. package/dist/pine-core/{p-D05FrqXr.system.js.map → p-BRIdBthP.system.js.map} +1 -1
  537. package/dist/pine-core/{p-BVCWKPy3.js → p-Bf1dou5H.js} +2 -2
  538. package/dist/pine-core/p-Bf1dou5H.js.map +1 -0
  539. package/dist/pine-core/{p-Kj_j7PHx.system.js.map → p-BkPtASB1.system.js.map} +1 -1
  540. package/dist/pine-core/p-Bkfqi7zE.system.js.map +1 -0
  541. package/dist/pine-core/p-ByzULH8m.system.js.map +1 -0
  542. package/dist/pine-core/p-C1KChp5Q.system.js.map +1 -0
  543. package/dist/pine-core/p-C2W-sHx5.system.js.map +1 -0
  544. package/dist/pine-core/{p-CE6b_LzB.system.js.map → p-C3iAHQC6.system.js.map} +1 -1
  545. package/dist/pine-core/{p-ACQU83St.system.js.map → p-CCQd5PVN.system.js.map} +1 -1
  546. package/dist/pine-core/{p-ChslVme6.system.js.map → p-CG2PKUWT.system.js.map} +1 -1
  547. package/dist/pine-core/p-CIBXMJd-.system.js.map +1 -0
  548. package/dist/pine-core/p-CJNB_wrl.system.js.map +1 -0
  549. package/dist/pine-core/p-CSa_b_JX.system.js.map +1 -0
  550. package/dist/pine-core/p-Cid662up.system.js.map +1 -0
  551. package/dist/pine-core/{p-CWdEolqa.system.js.map → p-Cl47ROcT.system.js.map} +1 -1
  552. package/dist/pine-core/{p-0KTU2Jt-.system.js.map → p-CnPN6prI.system.js.map} +1 -1
  553. package/dist/pine-core/p-Cqzmj3D8.system.js.map +1 -0
  554. package/dist/pine-core/{p-B1FQkx7R.system.js.map → p-Ctdx1tCG.system.js.map} +1 -1
  555. package/dist/pine-core/{p-3gYSFJIn.system.js.map → p-CwNRZQss.system.js.map} +1 -1
  556. package/dist/pine-core/p-Cxlv_2hD.system.js.map +1 -0
  557. package/dist/pine-core/{p-B_C-mRjx.system.js → p-Cxvdulqq.system.js} +2 -2
  558. package/dist/pine-core/p-Cxvdulqq.system.js.map +1 -0
  559. package/dist/pine-core/p-D0foS5EP.system.js.map +1 -0
  560. package/dist/pine-core/p-D4zJBIgl.js +2 -0
  561. package/dist/pine-core/p-D4zJBIgl.js.map +1 -0
  562. package/dist/pine-core/{p-MBv7PsKc.system.js.map → p-D52TGCLt.system.js.map} +1 -1
  563. package/dist/pine-core/{p-CHJgq_z7.system.js.map → p-D7B3vOdC.system.js.map} +1 -1
  564. package/dist/pine-core/p-DCjZr2HA.system.js.map +1 -0
  565. package/dist/pine-core/p-DN3VK2yy.system.js.map +1 -0
  566. package/dist/pine-core/{p-Df_3qA_L.system.js.map → p-DOqVoXeA.system.js.map} +1 -1
  567. package/dist/pine-core/p-DW3lkDNz.system.js.map +1 -0
  568. package/dist/pine-core/p-DfrSuf6X.system.js.map +1 -0
  569. package/dist/pine-core/{p-CLoi4eKt.system.js.map → p-DmWU0f_O.system.js.map} +1 -1
  570. package/dist/pine-core/p-DpemOPFJ.system.js.map +1 -0
  571. package/dist/pine-core/p-DpzRSULT.system.js.map +1 -0
  572. package/dist/pine-core/{p-DYb5Y47j.system.js.map → p-Dq7Wu9rr.system.js.map} +1 -1
  573. package/dist/pine-core/p-DtdXdmNp.system.js.map +1 -0
  574. package/dist/pine-core/p-Dw05F6Xg.system.js.map +1 -0
  575. package/dist/pine-core/p-Dw7zXw_6.system.js.map +1 -0
  576. package/dist/pine-core/p-DwjNklzi.js +2 -0
  577. package/dist/pine-core/p-DwjNklzi.js.map +1 -0
  578. package/dist/pine-core/p-GrmqKqN8.system.js.map +1 -0
  579. package/dist/pine-core/p-HHZU8rBT.system.js.map +1 -0
  580. package/dist/pine-core/{p-C5Y492i0.system.js.map → p-M-zMP2QX.system.js.map} +1 -1
  581. package/dist/pine-core/p-WWWd_vEd.system.js +2 -0
  582. package/dist/pine-core/p-WWWd_vEd.system.js.map +1 -0
  583. package/dist/pine-core/p-a2708028.entry.js +2 -0
  584. package/dist/pine-core/p-a2708028.entry.js.map +1 -0
  585. package/dist/pine-core/{p-72053224.entry.js → p-a2cb65df.entry.js} +3 -3
  586. package/dist/pine-core/{p-52d37cc1.entry.js → p-a3785977.entry.js} +2 -2
  587. package/dist/pine-core/p-a645818a.entry.js +2 -0
  588. package/dist/pine-core/p-a707a7da.system.entry.js +2 -0
  589. package/dist/pine-core/p-a707a7da.system.entry.js.map +1 -0
  590. package/dist/pine-core/{p-f583e5d4.entry.js → p-a9cfaa1f.entry.js} +2 -2
  591. package/dist/pine-core/p-acd87a10.entry.js +2 -0
  592. package/dist/pine-core/p-acd87a10.entry.js.map +1 -0
  593. package/dist/pine-core/p-ae4ec5cf.system.entry.js +2 -0
  594. package/dist/pine-core/p-ae4ec5cf.system.entry.js.map +1 -0
  595. package/dist/pine-core/p-b23dd01c.entry.js +2 -0
  596. package/dist/pine-core/p-b23dd01c.entry.js.map +1 -0
  597. package/dist/pine-core/p-b669e1d9.entry.js +2 -0
  598. package/dist/pine-core/p-b9aafec7.system.entry.js +2 -0
  599. package/dist/pine-core/p-b9aafec7.system.entry.js.map +1 -0
  600. package/dist/pine-core/{p-52cb152b.system.entry.js → p-bc2fecd4.system.entry.js} +2 -2
  601. package/dist/pine-core/{p-e3fb0bc2.system.entry.js → p-bc637bed.system.entry.js} +2 -2
  602. package/dist/pine-core/{p-b6ea3332.entry.js → p-be5ef841.entry.js} +2 -2
  603. package/dist/pine-core/p-c3579585.system.entry.js +2 -0
  604. package/dist/pine-core/p-c3579585.system.entry.js.map +1 -0
  605. package/dist/pine-core/{p-fcb39155.system.entry.js → p-c3f84df8.system.entry.js} +2 -2
  606. package/dist/pine-core/p-c44d3551.entry.js +2 -0
  607. package/dist/pine-core/{p-e8d76117.entry.js → p-c55fc47e.entry.js} +2 -2
  608. package/dist/pine-core/p-cffc98ae.entry.js +3 -0
  609. package/dist/pine-core/p-cffc98ae.entry.js.map +1 -0
  610. package/dist/pine-core/{p-5e8badb9.entry.js → p-d1b27fa4.entry.js} +2 -2
  611. package/dist/pine-core/p-d2b15290.system.entry.js +2 -0
  612. package/dist/pine-core/p-d2b15290.system.entry.js.map +1 -0
  613. package/dist/pine-core/p-d4d22aee.entry.js +2 -0
  614. package/dist/pine-core/p-d4d22aee.entry.js.map +1 -0
  615. package/dist/pine-core/{p-5da82e8c.system.entry.js → p-dace69e7.system.entry.js} +2 -2
  616. package/dist/pine-core/p-db12273e.system.entry.js +2 -0
  617. package/dist/pine-core/p-e34c1224.system.entry.js +2 -0
  618. package/dist/pine-core/p-e34c1224.system.entry.js.map +1 -0
  619. package/dist/pine-core/p-e5adbf74.system.entry.js +2 -0
  620. package/dist/pine-core/p-e5adbf74.system.entry.js.map +1 -0
  621. package/dist/pine-core/p-e6085566.system.entry.js +2 -0
  622. package/dist/pine-core/p-e6085566.system.entry.js.map +1 -0
  623. package/dist/pine-core/p-e683e197.system.entry.js +2 -0
  624. package/dist/pine-core/p-e683e197.system.entry.js.map +1 -0
  625. package/dist/pine-core/p-e6b051e8.system.entry.js +2 -0
  626. package/dist/pine-core/p-e6b051e8.system.entry.js.map +1 -0
  627. package/dist/pine-core/{p-f55b9f90.system.entry.js → p-e702a8dc.system.entry.js} +2 -2
  628. package/dist/pine-core/{p-6db1e029.system.entry.js → p-ee583234.system.entry.js} +2 -2
  629. package/dist/pine-core/p-f15cd180.entry.js +2 -0
  630. package/dist/pine-core/p-f15cd180.entry.js.map +1 -0
  631. package/dist/pine-core/{p-0066d249.entry.js → p-f5d78141.entry.js} +2 -2
  632. package/dist/pine-core/p-f61ee383.system.entry.js +2 -0
  633. package/dist/pine-core/p-f61ee383.system.entry.js.map +1 -0
  634. package/dist/pine-core/p-f6d0bd39.entry.js +2 -0
  635. package/dist/pine-core/p-f6d0bd39.entry.js.map +1 -0
  636. package/dist/pine-core/{p-52af1890.system.entry.js → p-f911dde3.system.entry.js} +2 -2
  637. package/dist/pine-core/p-f92d7570.system.entry.js +2 -0
  638. package/dist/pine-core/p-f92d7570.system.entry.js.map +1 -0
  639. package/dist/pine-core/{p-BZoPY2dP.system.js.map → p-iazk4jjL.system.js.map} +1 -1
  640. package/dist/pine-core/{p-CqzGa2j0.system.js.map → p-k9JOparb.system.js.map} +1 -1
  641. package/dist/pine-core/{p-B7S-9dbT.system.js.map → p-kcOuXqWo.system.js.map} +1 -1
  642. package/dist/pine-core/{p-c0df3222.entry.js.map → p-ozqEY4Zc.system.js.map} +1 -1
  643. package/dist/pine-core/{p-CqK-uhv8.system.js.map → p-yaM1kuaC.system.js.map} +1 -1
  644. package/dist/pine-core/pds-button.entry.esm.js.map +1 -1
  645. package/dist/pine-core/pds-checkbox.entry.esm.js.map +1 -1
  646. package/dist/pine-core/pds-chip.entry.esm.js.map +1 -1
  647. package/dist/pine-core/pds-combobox.entry.esm.js.map +1 -1
  648. package/dist/pine-core/pds-copytext.entry.esm.js.map +1 -1
  649. package/dist/pine-core/pds-dropdown-menu-separator.entry.esm.js.map +1 -1
  650. package/dist/pine-core/pds-dropdown-menu.entry.esm.js.map +1 -1
  651. package/dist/pine-core/pds-filter.entry.esm.js.map +1 -0
  652. package/dist/pine-core/pds-filters.entry.esm.js.map +1 -0
  653. package/dist/pine-core/pds-input.entry.esm.js.map +1 -1
  654. package/dist/pine-core/pds-modal.entry.esm.js.map +1 -1
  655. package/dist/pine-core/pds-popover.entry.esm.js.map +1 -1
  656. package/dist/pine-core/pds-radio.entry.esm.js.map +1 -1
  657. package/dist/pine-core/pds-select.entry.esm.js.map +1 -1
  658. package/dist/pine-core/pds-switch.entry.esm.js.map +1 -1
  659. package/dist/pine-core/pds-tab.entry.esm.js.map +1 -1
  660. package/dist/pine-core/pds-table-cell.entry.esm.js.map +1 -1
  661. package/dist/pine-core/pds-table-head-cell.entry.esm.js.map +1 -1
  662. package/dist/pine-core/pds-table-head.entry.esm.js.map +1 -1
  663. package/dist/pine-core/pds-table-row.entry.esm.js.map +1 -1
  664. package/dist/pine-core/pds-table.entry.esm.js.map +1 -1
  665. package/dist/pine-core/pds-tabs.entry.esm.js.map +1 -1
  666. package/dist/pine-core/pds-textarea.entry.esm.js.map +1 -1
  667. package/dist/pine-core/pds-tooltip.entry.esm.js.map +1 -1
  668. package/dist/pine-core/pine-core.css +1 -1
  669. package/dist/pine-core/pine-core.esm.js +1 -1
  670. package/dist/pine-core/pine-core.js +1 -1
  671. package/dist/types/components/pds-button/pds-button.d.ts +1 -1
  672. package/dist/types/components/pds-checkbox/pds-checkbox.d.ts +1 -0
  673. package/dist/types/components/pds-chip/pds-chip.d.ts +3 -2
  674. package/dist/types/components/pds-combobox/pds-combobox.d.ts +84 -5
  675. package/dist/types/components/pds-filters/pds-filter/filter-interface.d.ts +19 -0
  676. package/dist/types/components/pds-filters/pds-filter/pds-filter.d.ts +133 -0
  677. package/dist/types/components/pds-filters/pds-filters.d.ts +11 -0
  678. package/dist/types/components/pds-popover/pds-popover.d.ts +33 -2
  679. package/dist/types/components/pds-popover/popover-interface.d.ts +8 -0
  680. package/dist/types/components/pds-radio/pds-radio.d.ts +3 -0
  681. package/dist/types/components/pds-select/pds-select.d.ts +6 -0
  682. package/dist/types/components/pds-switch/pds-switch.d.ts +1 -0
  683. package/dist/types/components/pds-tabs/pds-tabs.d.ts +1 -0
  684. package/dist/types/components/pds-textarea/pds-textarea.d.ts +1 -0
  685. package/dist/types/components.d.ts +227 -12
  686. package/dist/types/utils/form.d.ts +9 -0
  687. package/dist/types/utils/types.d.ts +2 -0
  688. package/hydrate/index.js +1529 -146
  689. package/hydrate/index.mjs +1529 -146
  690. package/package.json +2 -2
  691. package/dist/cjs/form-Bx4nzJBo.js.map +0 -1
  692. package/dist/cjs/index-DVaLegMK.js.map +0 -1
  693. package/dist/cjs/index-g-uSeICs.js.map +0 -1
  694. package/dist/esm/form-DTL_39D_.js +0 -32
  695. package/dist/esm/form-DTL_39D_.js.map +0 -1
  696. package/dist/esm/index-BVCWKPy3.js.map +0 -1
  697. package/dist/esm/index-DrJ5r5Pu.js.map +0 -1
  698. package/dist/esm-es5/form-DTL_39D_.js +0 -2
  699. package/dist/esm-es5/form-DTL_39D_.js.map +0 -1
  700. package/dist/esm-es5/index-BVCWKPy3.js.map +0 -1
  701. package/dist/esm-es5/index-DrJ5r5Pu.js +0 -2
  702. package/dist/esm-es5/index-DrJ5r5Pu.js.map +0 -1
  703. package/dist/pine-core/p-00616fc9.entry.js +0 -2
  704. package/dist/pine-core/p-00616fc9.entry.js.map +0 -1
  705. package/dist/pine-core/p-023d8b71.system.entry.js +0 -2
  706. package/dist/pine-core/p-023d8b71.system.entry.js.map +0 -1
  707. package/dist/pine-core/p-051ff780.system.entry.js +0 -2
  708. package/dist/pine-core/p-051ff780.system.entry.js.map +0 -1
  709. package/dist/pine-core/p-0TIvNV5c.system.js.map +0 -1
  710. package/dist/pine-core/p-0de9f8da.system.entry.js +0 -2
  711. package/dist/pine-core/p-0de9f8da.system.entry.js.map +0 -1
  712. package/dist/pine-core/p-14a52961.system.entry.js +0 -2
  713. package/dist/pine-core/p-14a52961.system.entry.js.map +0 -1
  714. package/dist/pine-core/p-232a2043.entry.js +0 -2
  715. package/dist/pine-core/p-25190921.entry.js +0 -2
  716. package/dist/pine-core/p-25190921.entry.js.map +0 -1
  717. package/dist/pine-core/p-297afc49.system.entry.js +0 -2
  718. package/dist/pine-core/p-297afc49.system.entry.js.map +0 -1
  719. package/dist/pine-core/p-2e19f167.system.entry.js +0 -2
  720. package/dist/pine-core/p-2e19f167.system.entry.js.map +0 -1
  721. package/dist/pine-core/p-318fd0cf.entry.js +0 -2
  722. package/dist/pine-core/p-318fd0cf.entry.js.map +0 -1
  723. package/dist/pine-core/p-346561a6.system.entry.js +0 -2
  724. package/dist/pine-core/p-346561a6.system.entry.js.map +0 -1
  725. package/dist/pine-core/p-3pEJO0vO.system.js.map +0 -1
  726. package/dist/pine-core/p-41d1b164.entry.js +0 -2
  727. package/dist/pine-core/p-41d1b164.entry.js.map +0 -1
  728. package/dist/pine-core/p-44087d1c.entry.js +0 -2
  729. package/dist/pine-core/p-44087d1c.entry.js.map +0 -1
  730. package/dist/pine-core/p-464dd476.entry.js +0 -2
  731. package/dist/pine-core/p-464dd476.entry.js.map +0 -1
  732. package/dist/pine-core/p-47670150.entry.js +0 -3
  733. package/dist/pine-core/p-47670150.entry.js.map +0 -1
  734. package/dist/pine-core/p-4bbf3e31.entry.js +0 -2
  735. package/dist/pine-core/p-4bbf3e31.entry.js.map +0 -1
  736. package/dist/pine-core/p-4c81420c.entry.js +0 -2
  737. package/dist/pine-core/p-4c81420c.entry.js.map +0 -1
  738. package/dist/pine-core/p-503cab1f.entry.js +0 -2
  739. package/dist/pine-core/p-503cab1f.entry.js.map +0 -1
  740. package/dist/pine-core/p-50c9e865.entry.js +0 -2
  741. package/dist/pine-core/p-50c9e865.entry.js.map +0 -1
  742. package/dist/pine-core/p-5708f95a.entry.js +0 -2
  743. package/dist/pine-core/p-651861ff.entry.js +0 -2
  744. package/dist/pine-core/p-651861ff.entry.js.map +0 -1
  745. package/dist/pine-core/p-66b10d29.entry.js +0 -2
  746. package/dist/pine-core/p-6d4d4705.system.entry.js +0 -2
  747. package/dist/pine-core/p-6d4d4705.system.entry.js.map +0 -1
  748. package/dist/pine-core/p-6f4a6d0b.entry.js +0 -2
  749. package/dist/pine-core/p-6f4a6d0b.entry.js.map +0 -1
  750. package/dist/pine-core/p-7004d1ea.system.entry.js +0 -2
  751. package/dist/pine-core/p-71169b66.system.entry.js +0 -2
  752. package/dist/pine-core/p-71169b66.system.entry.js.map +0 -1
  753. package/dist/pine-core/p-73158adf.system.entry.js +0 -2
  754. package/dist/pine-core/p-73158adf.system.entry.js.map +0 -1
  755. package/dist/pine-core/p-77336705.entry.js +0 -2
  756. package/dist/pine-core/p-77336705.entry.js.map +0 -1
  757. package/dist/pine-core/p-7cb4f0de.entry.js +0 -2
  758. package/dist/pine-core/p-7cb4f0de.entry.js.map +0 -1
  759. package/dist/pine-core/p-84949a12.entry.js +0 -2
  760. package/dist/pine-core/p-84949a12.entry.js.map +0 -1
  761. package/dist/pine-core/p-8722865f.system.entry.js +0 -2
  762. package/dist/pine-core/p-8722865f.system.entry.js.map +0 -1
  763. package/dist/pine-core/p-8999b63d.system.entry.js +0 -2
  764. package/dist/pine-core/p-8999b63d.system.entry.js.map +0 -1
  765. package/dist/pine-core/p-8ab7f0d7.system.entry.js +0 -4
  766. package/dist/pine-core/p-8ab7f0d7.system.entry.js.map +0 -1
  767. package/dist/pine-core/p-8d7abc83.entry.js +0 -2
  768. package/dist/pine-core/p-8d7abc83.entry.js.map +0 -1
  769. package/dist/pine-core/p-92c52409.system.entry.js +0 -2
  770. package/dist/pine-core/p-92c52409.system.entry.js.map +0 -1
  771. package/dist/pine-core/p-98fe56d9.entry.js +0 -2
  772. package/dist/pine-core/p-98fe56d9.entry.js.map +0 -1
  773. package/dist/pine-core/p-BEn3hirk.system.js +0 -2
  774. package/dist/pine-core/p-BEn3hirk.system.js.map +0 -1
  775. package/dist/pine-core/p-BG7_qxVr.system.js +0 -2
  776. package/dist/pine-core/p-BG7_qxVr.system.js.map +0 -1
  777. package/dist/pine-core/p-BGbUqsWH.system.js +0 -2
  778. package/dist/pine-core/p-BGbUqsWH.system.js.map +0 -1
  779. package/dist/pine-core/p-BKFboaI5.system.js.map +0 -1
  780. package/dist/pine-core/p-BRygGju8.system.js.map +0 -1
  781. package/dist/pine-core/p-BVCWKPy3.js.map +0 -1
  782. package/dist/pine-core/p-BVKCNX0X.system.js.map +0 -1
  783. package/dist/pine-core/p-B_C-mRjx.system.js.map +0 -1
  784. package/dist/pine-core/p-C0zqu7Gr.system.js.map +0 -1
  785. package/dist/pine-core/p-CCQUgOoR.system.js.map +0 -1
  786. package/dist/pine-core/p-CJT--ZXC.system.js.map +0 -1
  787. package/dist/pine-core/p-CQ8f8GnD.system.js.map +0 -1
  788. package/dist/pine-core/p-CcXaBX2A.system.js.map +0 -1
  789. package/dist/pine-core/p-CgyVIfOY.system.js.map +0 -1
  790. package/dist/pine-core/p-Cmzqpibo.system.js.map +0 -1
  791. package/dist/pine-core/p-Co5XZmTN.system.js.map +0 -1
  792. package/dist/pine-core/p-CpdNWpfd.system.js.map +0 -1
  793. package/dist/pine-core/p-Czoq9yJM.system.js.map +0 -1
  794. package/dist/pine-core/p-D9_z2w3q.system.js.map +0 -1
  795. package/dist/pine-core/p-DHmJZxQk.system.js.map +0 -1
  796. package/dist/pine-core/p-DTL_39D_.js +0 -2
  797. package/dist/pine-core/p-DTL_39D_.js.map +0 -1
  798. package/dist/pine-core/p-DXuK7cEc.system.js.map +0 -1
  799. package/dist/pine-core/p-De9tROL-.system.js +0 -2
  800. package/dist/pine-core/p-DrJ5r5Pu.js +0 -2
  801. package/dist/pine-core/p-DrJ5r5Pu.js.map +0 -1
  802. package/dist/pine-core/p-IhWWc2L_.system.js.map +0 -1
  803. package/dist/pine-core/p-UsEwlBJ0.system.js.map +0 -1
  804. package/dist/pine-core/p-WkrM7Vv0.system.js.map +0 -1
  805. package/dist/pine-core/p-a04556e4.system.entry.js +0 -2
  806. package/dist/pine-core/p-a04556e4.system.entry.js.map +0 -1
  807. package/dist/pine-core/p-a54f1d9e.entry.js +0 -2
  808. package/dist/pine-core/p-a54f1d9e.entry.js.map +0 -1
  809. package/dist/pine-core/p-a9895385.system.entry.js +0 -2
  810. package/dist/pine-core/p-a9895385.system.entry.js.map +0 -1
  811. package/dist/pine-core/p-aa645f28.system.entry.js +0 -2
  812. package/dist/pine-core/p-aa645f28.system.entry.js.map +0 -1
  813. package/dist/pine-core/p-ac37cf0d.entry.js +0 -2
  814. package/dist/pine-core/p-ac37cf0d.entry.js.map +0 -1
  815. package/dist/pine-core/p-ba187a35.entry.js +0 -2
  816. package/dist/pine-core/p-ba187a35.entry.js.map +0 -1
  817. package/dist/pine-core/p-bb8ef74a.system.entry.js +0 -2
  818. package/dist/pine-core/p-be939cb0.entry.js +0 -2
  819. package/dist/pine-core/p-c0df3222.entry.js +0 -2
  820. package/dist/pine-core/p-c1099665.system.entry.js +0 -2
  821. package/dist/pine-core/p-c2ffb466.system.entry.js +0 -2
  822. package/dist/pine-core/p-cd785026.system.entry.js +0 -2
  823. package/dist/pine-core/p-d8d8fe07.system.entry.js +0 -2
  824. package/dist/pine-core/p-d8d8fe07.system.entry.js.map +0 -1
  825. package/dist/pine-core/p-da367b5e.system.entry.js +0 -2
  826. package/dist/pine-core/p-da367b5e.system.entry.js.map +0 -1
  827. package/dist/pine-core/p-dc19ce6c.system.entry.js +0 -2
  828. package/dist/pine-core/p-dc19ce6c.system.entry.js.map +0 -1
  829. package/dist/pine-core/p-deb8a499.system.entry.js +0 -2
  830. package/dist/pine-core/p-deb8a499.system.entry.js.map +0 -1
  831. package/dist/pine-core/p-e65a7d1c.system.entry.js +0 -2
  832. package/dist/pine-core/p-efa788ea.entry.js +0 -2
  833. package/dist/pine-core/p-f880adaa.entry.js +0 -2
  834. package/dist/pine-core/p-fd091234.system.entry.js +0 -2
  835. package/dist/pine-core/p-fd091234.system.entry.js.map +0 -1
  836. package/dist/pine-core/p-m6UZWRsP.system.js.map +0 -1
  837. package/dist/pine-core/p-pQqXEKPh.system.js.map +0 -1
  838. /package/dist/pine-core/{p-66b10d29.entry.js.map → p-07e129db.entry.js.map} +0 -0
  839. /package/dist/pine-core/{p-540cfd70.entry.js.map → p-1009009c.entry.js.map} +0 -0
  840. /package/dist/pine-core/{p-349a8869.entry.js.map → p-100de2b7.entry.js.map} +0 -0
  841. /package/dist/pine-core/{p-e2887e78.entry.js.map → p-1b9d4482.entry.js.map} +0 -0
  842. /package/dist/pine-core/{p-dfc5ab34.system.entry.js.map → p-2054b5cb.system.entry.js.map} +0 -0
  843. /package/dist/pine-core/{p-8726c99d.system.entry.js.map → p-2597bc59.system.entry.js.map} +0 -0
  844. /package/dist/pine-core/{p-5a709348.entry.js.map → p-25cb810d.entry.js.map} +0 -0
  845. /package/dist/pine-core/{p-a1b51557.system.entry.js.map → p-25cf2860.system.entry.js.map} +0 -0
  846. /package/dist/pine-core/{p-54183d70.system.entry.js.map → p-2aab28b1.system.entry.js.map} +0 -0
  847. /package/dist/pine-core/{p-c2ffb466.system.entry.js.map → p-2b12bc55.system.entry.js.map} +0 -0
  848. /package/dist/pine-core/{p-cd785026.system.entry.js.map → p-2efc646c.system.entry.js.map} +0 -0
  849. /package/dist/pine-core/{p-ecb9edf8.entry.js.map → p-2fb6f9d5.entry.js.map} +0 -0
  850. /package/dist/pine-core/{p-efa788ea.entry.js.map → p-2fd7f74e.entry.js.map} +0 -0
  851. /package/dist/pine-core/{p-39488f2c.system.entry.js.map → p-302849cf.system.entry.js.map} +0 -0
  852. /package/dist/pine-core/{p-51d83489.system.entry.js.map → p-307f415a.system.entry.js.map} +0 -0
  853. /package/dist/pine-core/{p-bb8ef74a.system.entry.js.map → p-378df5eb.system.entry.js.map} +0 -0
  854. /package/dist/pine-core/{p-e08f492a.entry.js.map → p-39648ce2.entry.js.map} +0 -0
  855. /package/dist/pine-core/{p-5f5b19f4.entry.js.map → p-41e2fe3a.entry.js.map} +0 -0
  856. /package/dist/pine-core/{p-7004d1ea.system.entry.js.map → p-449ebe39.system.entry.js.map} +0 -0
  857. /package/dist/pine-core/{p-c13ef6a7.system.entry.js.map → p-55d06d0a.system.entry.js.map} +0 -0
  858. /package/dist/pine-core/{p-075eecf9.entry.js.map → p-5ac7af9e.entry.js.map} +0 -0
  859. /package/dist/pine-core/{p-b2b1b7a9.system.entry.js.map → p-73a2e028.system.entry.js.map} +0 -0
  860. /package/dist/pine-core/{p-be939cb0.entry.js.map → p-786967e8.entry.js.map} +0 -0
  861. /package/dist/pine-core/{p-e65a7d1c.system.entry.js.map → p-875d5d5a.system.entry.js.map} +0 -0
  862. /package/dist/pine-core/{p-c8122bea.entry.js.map → p-88773b86.entry.js.map} +0 -0
  863. /package/dist/pine-core/{p-e89cb1f2.system.entry.js.map → p-8f69dd71.system.entry.js.map} +0 -0
  864. /package/dist/pine-core/{p-72053224.entry.js.map → p-a2cb65df.entry.js.map} +0 -0
  865. /package/dist/pine-core/{p-52d37cc1.entry.js.map → p-a3785977.entry.js.map} +0 -0
  866. /package/dist/pine-core/{p-f880adaa.entry.js.map → p-a645818a.entry.js.map} +0 -0
  867. /package/dist/pine-core/{p-f583e5d4.entry.js.map → p-a9cfaa1f.entry.js.map} +0 -0
  868. /package/dist/pine-core/{p-5708f95a.entry.js.map → p-b669e1d9.entry.js.map} +0 -0
  869. /package/dist/pine-core/{p-52cb152b.system.entry.js.map → p-bc2fecd4.system.entry.js.map} +0 -0
  870. /package/dist/pine-core/{p-e3fb0bc2.system.entry.js.map → p-bc637bed.system.entry.js.map} +0 -0
  871. /package/dist/pine-core/{p-b6ea3332.entry.js.map → p-be5ef841.entry.js.map} +0 -0
  872. /package/dist/pine-core/{p-fcb39155.system.entry.js.map → p-c3f84df8.system.entry.js.map} +0 -0
  873. /package/dist/pine-core/{p-232a2043.entry.js.map → p-c44d3551.entry.js.map} +0 -0
  874. /package/dist/pine-core/{p-e8d76117.entry.js.map → p-c55fc47e.entry.js.map} +0 -0
  875. /package/dist/pine-core/{p-5e8badb9.entry.js.map → p-d1b27fa4.entry.js.map} +0 -0
  876. /package/dist/pine-core/{p-5da82e8c.system.entry.js.map → p-dace69e7.system.entry.js.map} +0 -0
  877. /package/dist/pine-core/{p-c1099665.system.entry.js.map → p-db12273e.system.entry.js.map} +0 -0
  878. /package/dist/pine-core/{p-f55b9f90.system.entry.js.map → p-e702a8dc.system.entry.js.map} +0 -0
  879. /package/dist/pine-core/{p-6db1e029.system.entry.js.map → p-ee583234.system.entry.js.map} +0 -0
  880. /package/dist/pine-core/{p-0066d249.entry.js.map → p-f5d78141.entry.js.map} +0 -0
  881. /package/dist/pine-core/{p-52af1890.system.entry.js.map → p-f911dde3.system.entry.js.map} +0 -0
@@ -0,0 +1,488 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DDTyvZD7.js');
4
+ var index$1 = require('./index-DtnvzYhe.js');
5
+
6
+ const pdsFilterCss = ":host{--box-shadow-focus:0 0 0 1px var(--pine-color-white), 0 0 0 3px var(--pine-color-focus-ring);display:inline-block;position:relative}.pds-filter__trigger{-ms-flex-align:center;align-items:center;anchor-name:--filter-trigger;background:var(--pine-color-background-container);border:var(--pine-border-width-thin) solid var(--pine-color-border);border-radius:var(--pine-dimension-100);-webkit-box-shadow:var(--pine-box-shadow-050);box-shadow:var(--pine-box-shadow-050);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--pine-color-text-placeholder);cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--pine-font-family-inter);font-size:var(--pine-font-size-100);font-weight:var(--pine-font-weight-400);gap:var(--pine-dimension-050);letter-spacing:var(--pine-letter-spacing-114);line-height:var(--pine-line-height-150);padding:var(--pine-dimension-025) var(--pine-dimension-125);position:relative;-webkit-transition:all 0.2s ease;transition:all 0.2s ease}.pds-filter__trigger pds-icon{block-size:var(--pine-font-size-100);color:var(--pine-color-grey-800);-ms-flex-negative:0;flex-shrink:0;inline-size:var(--pine-font-size-100)}.pds-filter__trigger:hover,.pds-filter__trigger.pds-filter__trigger--open{background-color:var(--pine-color-grey-100);border-color:var(--pine-color-grey-400);color:var(--pine-color-text-hover)}.pds-filter__trigger:hover pds-icon,.pds-filter__trigger.pds-filter__trigger--open pds-icon{color:var(--pine-color-grey-800)}.pds-filter__trigger:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-filter__trigger:disabled{cursor:not-allowed;opacity:0.5}.pds-filter__trigger--selected{background-color:var(--pine-color-purple-050);border-color:var(--pine-color-purple-500);color:var(--pine-color-purple-600)}.pds-filter__trigger--selected pds-icon{color:var(--pine-color-purple-600)}.pds-filter__trigger--selected:hover,.pds-filter__trigger--selected.pds-filter__trigger--open{background-color:var(--pine-color-purple-100);border-color:var(--pine-color-purple-500);color:var(--pine-color-purple-600)}.pds-filter__trigger--selected:hover pds-icon,.pds-filter__trigger--selected.pds-filter__trigger--open pds-icon{color:var(--pine-color-purple-600)}.pds-filter__trigger--selected:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-filter__trigger--more{background-color:var(--pine-color-grey-050);border:var(--pine-border-width-thin) dashed var(--pine-color-grey-300);color:var(--pine-color-text-placeholder)}.pds-filter__trigger--more pds-icon{color:var(--pine-color-grey-800)}.pds-filter__trigger--more:hover,.pds-filter__trigger--more.pds-filter__trigger--open{background-color:var(--pine-color-grey-100);border-color:var(--pine-color-grey-400);color:var(--pine-color-text-hover)}.pds-filter__trigger--more:hover pds-icon,.pds-filter__trigger--more.pds-filter__trigger--open pds-icon{color:var(--pine-color-grey-800)}.pds-filter__trigger--more:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-filter__trigger--clear{background:transparent;border:var(--pine-border-width-thin) solid transparent;border-radius:var(--pine-dimension-100);-webkit-box-shadow:none;box-shadow:none;color:var(--pine-color-purple-600)}.pds-filter__trigger--clear pds-icon{color:var(--pine-color-purple-600)}.pds-filter__trigger--clear:hover{background-color:var(--pine-color-purple-100);border-color:var(--pine-color-purple-100);color:var(--pine-color-purple-600)}.pds-filter__trigger--clear:hover pds-icon{color:var(--pine-color-purple-600)}.pds-filter__trigger--clear:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-filter__button-content{-ms-flex-align:center;align-items:center;display:-ms-inline-flexbox;display:inline-flex;gap:var(--pine-dimension-050);max-inline-size:148px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pds-filter__button-text{line-height:var(--pine-line-height-150);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pds-filter__dropdown-icon{block-size:var(--pine-dimension-200);-ms-flex-negative:0;flex-shrink:0;inline-size:var(--pine-dimension-200)}.pds-filter__popover{background-color:var(--pine-color-background-container);border:0;border-radius:var(--pine-dimension-100);-webkit-box-shadow:var(--pine-box-shadow-100);box-shadow:var(--pine-box-shadow-100);display:none;inline-size:228px;inset:unset;padding:var(--pine-dimension-100);z-index:var(--pine-z-index-overlay);}.pds-filter__popover:popover-open,.pds-filter__popover.is-open{display:block}@supports (anchor-name: --test){.pds-filter__popover{inset-block-start:calc(anchor(--filter-trigger bottom) + var(--pine-dimension-100));inset-inline-start:anchor(--filter-trigger left);position:fixed;position-anchor:--filter-trigger;}.pds-filter__popover.popover-flip-horizontal{inset-inline-start:anchor(--filter-trigger right);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.pds-filter__popover.popover-flip-vertical{inset-block-start:anchor(--filter-trigger top);-webkit-transform:translateY(calc(-100% - var(--pine-dimension-100)));transform:translateY(calc(-100% - var(--pine-dimension-100)))}.pds-filter__popover.popover-flip-horizontal.popover-flip-vertical{inset-block-start:anchor(--filter-trigger top);inset-inline-start:anchor(--filter-trigger right);-webkit-transform:translate(-100%, calc(-100% - var(--pine-dimension-100)));transform:translate(-100%, calc(-100% - var(--pine-dimension-100)))}.pds-filter__popover.is-open.popover-flip-horizontal{inset-inline-start:anchor(--filter-trigger right);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.pds-filter__popover.is-open.popover-flip-vertical{inset-block-start:anchor(--filter-trigger top);-webkit-transform:translateY(calc(-100% - var(--pine-dimension-100)));transform:translateY(calc(-100% - var(--pine-dimension-100)))}.pds-filter__popover.is-open.popover-flip-horizontal.popover-flip-vertical{inset-block-start:anchor(--filter-trigger top);inset-inline-start:anchor(--filter-trigger right);-webkit-transform:translate(-100%, calc(-100% - var(--pine-dimension-100)));transform:translate(-100%, calc(-100% - var(--pine-dimension-100)))}}";
7
+
8
+ const PdsFilter = class {
9
+ constructor(hostRef) {
10
+ index.registerInstance(this, hostRef);
11
+ this.pdsFilterOpen = index.createEvent(this, "pdsFilterOpen");
12
+ this.pdsFilterClose = index.createEvent(this, "pdsFilterClose");
13
+ this.pdsFilterClear = index.createEvent(this, "pdsFilterClear");
14
+ this.scrollRAF = null;
15
+ this.lastScrollTime = 0;
16
+ /**
17
+ * The variant style of the filter trigger.
18
+ * @defaultValue 'default'
19
+ */
20
+ this.variant = 'default';
21
+ /**
22
+ * State to track if the popover is open.
23
+ */
24
+ this.isOpen = false;
25
+ /**
26
+ * Handle native popover toggle events directly on the element
27
+ * This is needed for browsers with native Popover API support
28
+ */
29
+ this.handleNativePopoverToggle = (event) => {
30
+ const target = event.target;
31
+ if (target && target.id === `${this.componentId}-popover`) {
32
+ // Check current popover state
33
+ let isCurrentlyOpen = false;
34
+ try {
35
+ isCurrentlyOpen = target.matches(':popover-open');
36
+ }
37
+ catch (error) {
38
+ // Fallback if :popover-open selector isn't supported
39
+ isCurrentlyOpen = target.style.display === 'block';
40
+ }
41
+ // Update state
42
+ this.isOpen = isCurrentlyOpen;
43
+ if (this.isOpen) {
44
+ setTimeout(() => this.adjustPopoverPosition(), 0);
45
+ this.pdsFilterOpen.emit({
46
+ componentId: this.componentId,
47
+ variant: this.variant,
48
+ text: this.text,
49
+ });
50
+ }
51
+ else {
52
+ this.pdsFilterClose.emit({
53
+ componentId: this.componentId,
54
+ variant: this.variant,
55
+ text: this.text,
56
+ });
57
+ }
58
+ }
59
+ };
60
+ /**
61
+ * Handle keyboard interactions for clear variant only.
62
+ */
63
+ this.handleKeyDown = (event) => {
64
+ // Only handle clear variant manually, let native API handle everything else
65
+ if (this.variant === 'clear' && (event.key === 'Enter' || event.key === ' ')) {
66
+ event.preventDefault();
67
+ this.handleClick();
68
+ }
69
+ };
70
+ /**
71
+ * Handle trigger button click. Clear variant emits event, others toggle popover.
72
+ */
73
+ this.handleClick = (event) => {
74
+ if (this.variant === 'clear') {
75
+ this.pdsFilterClear.emit({
76
+ componentId: this.componentId,
77
+ text: this.text,
78
+ });
79
+ return;
80
+ }
81
+ this.closeOtherPopovers();
82
+ // Check for popover API support
83
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
84
+ if (!supportsPopoverAPI) {
85
+ // Manual fallback for browsers without popover API support
86
+ // Prevent default to avoid conflicts with any native behavior
87
+ if (event) {
88
+ event.preventDefault();
89
+ }
90
+ setTimeout(() => {
91
+ if (this.popoverEl != null) {
92
+ this.isOpen = !this.isOpen;
93
+ if (this.isOpen) {
94
+ this.popoverEl.style.display = 'block';
95
+ this.popoverEl.classList.add('is-open');
96
+ this.adjustPopoverPosition();
97
+ this.pdsFilterOpen.emit({
98
+ componentId: this.componentId,
99
+ variant: this.variant,
100
+ text: this.text,
101
+ });
102
+ }
103
+ else {
104
+ this.popoverEl.style.display = 'none';
105
+ this.popoverEl.classList.remove('is-open');
106
+ this.pdsFilterClose.emit({
107
+ componentId: this.componentId,
108
+ variant: this.variant,
109
+ text: this.text,
110
+ });
111
+ }
112
+ }
113
+ }, 0);
114
+ }
115
+ // For browsers with native popover API, let the native behavior handle the toggle
116
+ // The toggle event listener will capture the state change and emit events
117
+ };
118
+ }
119
+ /**
120
+ * Component lifecycle: Clean up when disconnected from DOM.
121
+ * Prevents memory leaks by canceling pending operations and closing popovers.
122
+ */
123
+ disconnectedCallback() {
124
+ // Cancel pending animation frames
125
+ if (this.scrollRAF) {
126
+ cancelAnimationFrame(this.scrollRAF);
127
+ this.scrollRAF = null;
128
+ }
129
+ this.lastScrollTime = 0;
130
+ // Clean up native popover event listeners
131
+ if (this.popoverEl) {
132
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
133
+ if (supportsPopoverAPI) {
134
+ this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);
135
+ }
136
+ }
137
+ // Ensure popover is closed
138
+ if (this.isOpen && this.popoverEl) {
139
+ try {
140
+ this.popoverEl.hidePopover();
141
+ }
142
+ catch (error) {
143
+ this.popoverEl.style.display = 'none';
144
+ this.popoverEl.classList.remove('is-open');
145
+ }
146
+ }
147
+ }
148
+ componentDidRender() {
149
+ // Note: popoverEl is set via ref callback in render method
150
+ // For browsers with native popover API, we need direct element listeners
151
+ // since the document listener may not capture native popover toggle events
152
+ if (this.popoverEl) {
153
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
154
+ if (supportsPopoverAPI) {
155
+ // Remove any existing listeners to avoid duplicates
156
+ this.popoverEl.removeEventListener('toggle', this.handleNativePopoverToggle);
157
+ // Add direct listener for native popover events
158
+ this.popoverEl.addEventListener('toggle', this.handleNativePopoverToggle);
159
+ }
160
+ }
161
+ }
162
+ /**
163
+ * Reposition popovers on window resize.
164
+ */
165
+ handleWindowResize() {
166
+ if (this.isOpen) {
167
+ setTimeout(() => this.adjustPopoverPosition(), 16);
168
+ }
169
+ }
170
+ /**
171
+ * Reposition popovers on scroll with performance throttling.
172
+ */
173
+ handleWindowScroll() {
174
+ if (this.isOpen) {
175
+ const supportsAnchorPositioning = "anchorName" in document.documentElement.style;
176
+ const now = performance.now();
177
+ const throttleMs = supportsAnchorPositioning ? 66 : 33;
178
+ if (now - this.lastScrollTime < throttleMs) {
179
+ return;
180
+ }
181
+ this.lastScrollTime = now;
182
+ if (this.scrollRAF) {
183
+ cancelAnimationFrame(this.scrollRAF);
184
+ }
185
+ this.scrollRAF = requestAnimationFrame(() => {
186
+ if (this.isOpen && this.popoverEl && this.el.isConnected) {
187
+ this.adjustPopoverPosition();
188
+ }
189
+ this.scrollRAF = null;
190
+ });
191
+ }
192
+ }
193
+ /**
194
+ * Closes other open filter popovers to ensure only one is open at a time.
195
+ */
196
+ closeOtherPopovers() {
197
+ const allFilters = document.querySelectorAll('pds-filter');
198
+ allFilters.forEach((filter) => {
199
+ var _a;
200
+ if (filter === this.el)
201
+ return;
202
+ const popover = (_a = filter.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.pds-filter__popover');
203
+ if (popover) {
204
+ // Check for popover API support to avoid crashes
205
+ let isPopoverOpen = false;
206
+ try {
207
+ isPopoverOpen = popover.matches(':popover-open');
208
+ }
209
+ catch (error) {
210
+ // Fallback if :popover-open selector isn't supported
211
+ isPopoverOpen = popover.style.display === 'block';
212
+ }
213
+ if (isPopoverOpen) {
214
+ try {
215
+ popover.hidePopover();
216
+ }
217
+ catch (error) {
218
+ popover.style.display = 'none';
219
+ popover.classList.remove('is-open');
220
+ }
221
+ }
222
+ }
223
+ });
224
+ }
225
+ /**
226
+ * Adjusts popover position to keep it within viewport bounds.
227
+ * Uses CSS anchor positioning for modern browsers, JavaScript for fallback browsers.
228
+ */
229
+ adjustPopoverPosition() {
230
+ var _a;
231
+ if (!this.popoverEl || this.variant === 'clear')
232
+ return;
233
+ const triggerEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.pds-filter__trigger');
234
+ if (!triggerEl)
235
+ return;
236
+ const triggerRect = triggerEl.getBoundingClientRect();
237
+ const viewportWidth = window.innerWidth;
238
+ const viewportHeight = window.innerHeight;
239
+ const supportsAnchorPositioning = "anchorName" in document.documentElement.style;
240
+ // Get dimensions for boundary detection
241
+ const popoverWidth = 228;
242
+ const popoverHeight = this.popoverEl.getBoundingClientRect().height || 200;
243
+ // Boundary detection for flipping
244
+ const bufferSpace = 20;
245
+ const wouldOverflowRight = (triggerRect.left + popoverWidth + bufferSpace) > viewportWidth;
246
+ const wouldOverflowBottom = (triggerRect.bottom + 8 + popoverHeight + bufferSpace) > viewportHeight;
247
+ if (supportsAnchorPositioning) {
248
+ // Modern browsers: CSS anchor positioning + JavaScript-controlled flipping
249
+ this.popoverEl.classList.remove('popover-flip-horizontal', 'popover-flip-vertical');
250
+ if (wouldOverflowRight) {
251
+ this.popoverEl.classList.add('popover-flip-horizontal');
252
+ }
253
+ if (wouldOverflowBottom) {
254
+ this.popoverEl.classList.add('popover-flip-vertical');
255
+ }
256
+ }
257
+ else {
258
+ // Fallback browsers: JavaScript positioning with boundary detection
259
+ let left = triggerRect.left;
260
+ let top = triggerRect.bottom + 8;
261
+ let transformOrigin = 'top left';
262
+ // Apply horizontal flipping if needed
263
+ if (wouldOverflowRight) {
264
+ const actualPopoverWidth = this.popoverEl.getBoundingClientRect().width || popoverWidth;
265
+ left = triggerRect.right - actualPopoverWidth;
266
+ transformOrigin = 'top right';
267
+ }
268
+ // Apply vertical flipping if needed
269
+ if (wouldOverflowBottom) {
270
+ top = triggerRect.top - popoverHeight - 8;
271
+ transformOrigin = transformOrigin.replace('top', 'bottom');
272
+ }
273
+ // Apply positioning in single DOM write for performance
274
+ this.popoverEl.style.cssText = `
275
+ position: fixed;
276
+ left: ${left}px;
277
+ top: ${top}px;
278
+ z-index: var(--pine-z-index-overlay);
279
+ transform-origin: ${transformOrigin};
280
+ `;
281
+ }
282
+ }
283
+ /**
284
+ * Opens the filter popover programmatically.
285
+ * Note: Clear variant does not support popover functionality.
286
+ */
287
+ async showFilter() {
288
+ if (this.variant === 'clear') {
289
+ console.warn('Clear variant does not support showFilter method');
290
+ return;
291
+ }
292
+ if (this.popoverEl != null) {
293
+ try {
294
+ this.popoverEl.showPopover();
295
+ }
296
+ catch (error) {
297
+ // Fallback for testing environment where showPopover is not available
298
+ this.popoverEl.style.display = 'block';
299
+ this.popoverEl.classList.add('is-open');
300
+ }
301
+ }
302
+ }
303
+ /**
304
+ * Closes the filter popover programmatically.
305
+ * Note: Clear variant does not support popover functionality.
306
+ */
307
+ async hideFilter() {
308
+ if (this.variant === 'clear') {
309
+ console.warn('Clear variant does not support hideFilter method');
310
+ return;
311
+ }
312
+ if (this.popoverEl != null) {
313
+ try {
314
+ this.popoverEl.hidePopover();
315
+ }
316
+ catch (error) {
317
+ // Fallback for testing environment where hidePopover is not available
318
+ this.popoverEl.style.display = 'none';
319
+ this.popoverEl.classList.remove('is-open');
320
+ }
321
+ }
322
+ }
323
+ /**
324
+ * Listen for popover toggle events for browsers without native Popover API (fallback).
325
+ * Native API browsers use direct element listeners to avoid conflicts.
326
+ */
327
+ handlePopoverToggle(event) {
328
+ const target = event.target;
329
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
330
+ // Only handle events for fallback browsers (Firefox) to avoid duplicate handling
331
+ if (!supportsPopoverAPI && target && target.id === `${this.componentId}-popover`) {
332
+ // Check for popover API support to avoid crashes
333
+ let isCurrentlyOpen = false;
334
+ try {
335
+ isCurrentlyOpen = target.matches(':popover-open');
336
+ }
337
+ catch (error) {
338
+ // Fallback if :popover-open selector isn't supported
339
+ isCurrentlyOpen = target.style.display === 'block';
340
+ }
341
+ // Update state
342
+ this.isOpen = isCurrentlyOpen;
343
+ if (this.isOpen) {
344
+ setTimeout(() => this.adjustPopoverPosition(), 0);
345
+ this.pdsFilterOpen.emit({
346
+ componentId: this.componentId,
347
+ variant: this.variant,
348
+ text: this.text,
349
+ });
350
+ }
351
+ else {
352
+ this.pdsFilterClose.emit({
353
+ componentId: this.componentId,
354
+ variant: this.variant,
355
+ text: this.text,
356
+ });
357
+ }
358
+ }
359
+ }
360
+ /**
361
+ * Listen for clicks to detect outside dismissal.
362
+ */
363
+ handleDocumentClick(event) {
364
+ // Check if click is outside and popover gets closed
365
+ if (!this.el.contains(event.target) && this.isOpen && this.variant !== 'clear') {
366
+ setTimeout(() => {
367
+ if (this.popoverEl && this.isOpen) {
368
+ // Check for popover API support to avoid crashes
369
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
370
+ let popoverIsClosed = false;
371
+ if (supportsPopoverAPI) {
372
+ try {
373
+ popoverIsClosed = !this.popoverEl.matches(':popover-open');
374
+ }
375
+ catch (error) {
376
+ // Fallback if :popover-open selector isn't supported
377
+ popoverIsClosed = this.popoverEl.style.display !== 'block';
378
+ }
379
+ }
380
+ else {
381
+ // Manual fallback - assume popover was closed by outside click
382
+ popoverIsClosed = true;
383
+ }
384
+ if (popoverIsClosed) {
385
+ this.isOpen = false;
386
+ if (!supportsPopoverAPI) {
387
+ this.popoverEl.style.display = 'none';
388
+ this.popoverEl.classList.remove('is-open');
389
+ }
390
+ this.pdsFilterClose.emit({
391
+ componentId: this.componentId,
392
+ variant: this.variant,
393
+ text: this.text,
394
+ });
395
+ }
396
+ }
397
+ }, 0);
398
+ }
399
+ }
400
+ /**
401
+ * Listen for Escape key to ensure close event fires.
402
+ */
403
+ handleEscapeKey(event) {
404
+ if (event.key === 'Escape' && this.isOpen && this.variant !== 'clear') {
405
+ // Check if popover was closed by Escape
406
+ setTimeout(() => {
407
+ if (this.popoverEl && this.isOpen) {
408
+ // Check for popover API support to avoid crashes
409
+ const supportsPopoverAPI = HTMLElement.prototype.showPopover && !navigator.userAgent.includes('Firefox');
410
+ let popoverIsClosed = false;
411
+ if (supportsPopoverAPI) {
412
+ try {
413
+ popoverIsClosed = !this.popoverEl.matches(':popover-open');
414
+ }
415
+ catch (error) {
416
+ // Fallback if :popover-open selector isn't supported
417
+ popoverIsClosed = this.popoverEl.style.display !== 'block';
418
+ }
419
+ }
420
+ else {
421
+ // Manual fallback - assume popover was closed by Escape
422
+ popoverIsClosed = true;
423
+ }
424
+ if (popoverIsClosed) {
425
+ this.isOpen = false;
426
+ if (!supportsPopoverAPI) {
427
+ this.popoverEl.style.display = 'none';
428
+ this.popoverEl.classList.remove('is-open');
429
+ }
430
+ this.pdsFilterClose.emit({
431
+ componentId: this.componentId,
432
+ variant: this.variant,
433
+ text: this.text,
434
+ });
435
+ }
436
+ }
437
+ }, 0);
438
+ }
439
+ }
440
+ /**
441
+ * Get the appropriate icon for the variant.
442
+ */
443
+ getIcon() {
444
+ if (this.variant === 'clear') {
445
+ return index$1.trash;
446
+ }
447
+ return this.icon;
448
+ }
449
+ /**
450
+ * Get CSS classes for the trigger button.
451
+ */
452
+ getTriggerClasses() {
453
+ const classes = ['pds-filter__trigger'];
454
+ classes.push(`pds-filter__trigger--${this.variant}`);
455
+ if (this.isOpen && this.variant !== 'clear') {
456
+ classes.push('pds-filter__trigger--open');
457
+ }
458
+ return classes.join(' ');
459
+ }
460
+ /**
461
+ * Render the trigger icon.
462
+ */
463
+ renderIcon() {
464
+ const iconToRender = this.getIcon();
465
+ if (iconToRender == null || iconToRender === '')
466
+ return null;
467
+ return (index.h("pds-icon", { icon: iconToRender, size: "var(--pine-font-size-100)", "aria-hidden": "true", part: "icon" }));
468
+ }
469
+ /**
470
+ * Render the dropdown icon for selected variant.
471
+ */
472
+ renderDropdownIcon() {
473
+ if (this.variant === 'selected') {
474
+ return (index.h("pds-icon", { icon: index$1.enlarge, size: "var(--pine-dimension-200)", "aria-hidden": "true", class: "pds-filter__dropdown-icon", part: "icon" }));
475
+ }
476
+ return null;
477
+ }
478
+ render() {
479
+ return (index.h(index.Host, { key: 'e70f7bf3612c5c8abe7445ba3a4e53391a68de9e', id: this.componentId }, index.h("button", { key: '2cba723795c43509762f75cb4b6607ce547f7c39', class: this.getTriggerClasses(), type: "button", popoverTarget: this.variant !== 'clear' ? `${this.componentId}-popover` : undefined, popoverTargetAction: this.variant !== 'clear' ? 'toggle' : undefined, onKeyDown: this.variant === 'clear' ? this.handleKeyDown : undefined, onClick: (event) => this.handleClick(event), part: "button", "aria-expanded": this.isOpen ? 'true' : 'false', "aria-haspopup": this.variant !== 'clear' ? 'true' : undefined, "aria-controls": this.variant !== 'clear' ? `${this.componentId}-popover` : undefined }, index.h("span", { key: '8244dd35cc74c6f0138be2d3495d94b97f60474f', class: "pds-filter__button-content", part: "button-content" }, this.renderIcon(), this.text && (index.h("span", { key: 'd97c085d1df1ca13ccaf1f26ca2dac81bdfb105a', class: "pds-filter__button-text", part: "button-text" }, this.text)), this.renderDropdownIcon())), this.variant !== 'clear' && (index.h("div", { key: '0b9daf4591ea20db06813ce4c39442d69af3fda1', ref: el => this.popoverEl = el, id: `${this.componentId}-popover`, class: "pds-filter__popover", popover: "auto", part: "popover" }, index.h("slot", { key: 'f4499fe2d5a6a169318fe65cbbc558565c8644f9' })))));
480
+ }
481
+ get el() { return index.getElement(this); }
482
+ };
483
+ PdsFilter.style = pdsFilterCss;
484
+
485
+ exports.pds_filter = PdsFilter;
486
+ //# sourceMappingURL=pds-filter.entry.cjs.js.map
487
+
488
+ //# sourceMappingURL=pds-filter.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-filter.entry.cjs.js","mappings":"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","names":["trash","h","enlarge","Host"],"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-white), 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-width-thin) solid var(--pine-color-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-placeholder);\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-grey-800);\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-grey-100);\n border-color: var(--pine-color-grey-400);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-grey-800);\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-grey-050);\n border: var(--pine-border-width-thin) dashed var(--pine-color-grey-300);\n color: var(--pine-color-text-placeholder);\n\n pds-icon {\n color: var(--pine-color-grey-800);\n }\n\n &:hover,\n &.pds-filter__trigger--open {\n background-color: var(--pine-color-grey-100);\n border-color: var(--pine-color-grey-400);\n color: var(--pine-color-text-hover);\n\n pds-icon {\n color: var(--pine-color-grey-800);\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"],"version":3}