@infineon/infineon-design-system-stencil 37.3.1--canary.1960.d4dcc36e9d41a4a210e129ff6a7e0f326da46908.0 → 37.3.1--canary.1962.83919e8cc535190b1a71ae559b5f4da23b212d86.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 (306) hide show
  1. package/dist/cjs/framework-detection-795f52c2.js +139 -0
  2. package/dist/cjs/framework-detection-795f52c2.js.map +1 -0
  3. package/dist/cjs/ifx-accordion_2.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-alert_2.cjs.entry.js +1 -1
  5. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-basic-table.cjs.entry.js +1 -1
  7. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/ifx-button.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-card.cjs.entry.js +1 -1
  10. package/dist/cjs/ifx-checkbox-group.cjs.entry.js +1 -1
  11. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-chip_3.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  14. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-file-upload.cjs.entry.js +1 -1
  17. package/dist/cjs/ifx-footer.cjs.entry.js +1 -1
  18. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  19. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  20. package/dist/cjs/ifx-indicator.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-link.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-modal.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +1 -1
  24. package/dist/cjs/ifx-navbar.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-notification.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-progress-bar.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-radio-button-group.cjs.entry.js +1 -1
  28. package/dist/cjs/ifx-radio-button.cjs.entry.js +1 -1
  29. package/dist/cjs/ifx-search-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ifx-search-field.cjs.entry.js +1 -1
  31. package/dist/cjs/ifx-segmented-control.cjs.entry.js +2 -2
  32. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ifx-select.cjs.entry.js +1 -1
  34. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  35. package/dist/cjs/ifx-slider.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-spinner_2.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-status.cjs.entry.js +1 -1
  38. package/dist/cjs/ifx-stepper.cjs.entry.js +1 -1
  39. package/dist/cjs/ifx-switch.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-table.cjs.entry.js +1 -1
  41. package/dist/cjs/ifx-tabs.cjs.entry.js +1 -1
  42. package/dist/cjs/ifx-tag.cjs.entry.js +1 -1
  43. package/dist/cjs/ifx-textarea.cjs.entry.js +1 -1
  44. package/dist/cjs/ifx-tooltip.cjs.entry.js +1 -1
  45. package/dist/cjs/ifx-tree-view.cjs.entry.js +1 -1
  46. package/dist/collection/components/segmented-control/segmented-control.css +1 -1
  47. package/dist/collection/global/utils/framework-detection.js +55 -32
  48. package/dist/collection/global/utils/framework-detection.js.map +1 -1
  49. package/dist/collection/global/utils/tracking.js +26 -3
  50. package/dist/collection/global/utils/tracking.js.map +1 -1
  51. package/dist/components/ifx-accordion-item.js +1 -1
  52. package/dist/components/ifx-accordion.js +1 -1
  53. package/dist/components/ifx-alert.js +1 -1
  54. package/dist/components/ifx-badge.js +1 -1
  55. package/dist/components/ifx-basic-table.js +1 -1
  56. package/dist/components/ifx-breadcrumb-item-label.js +1 -1
  57. package/dist/components/ifx-breadcrumb.js +1 -1
  58. package/dist/components/ifx-button.js +1 -1
  59. package/dist/components/ifx-card.js +1 -1
  60. package/dist/components/ifx-checkbox-group.js +2 -2
  61. package/dist/components/ifx-checkbox.js +1 -1
  62. package/dist/components/ifx-chip-item.js +1 -1
  63. package/dist/components/ifx-chip.js +1 -1
  64. package/dist/components/ifx-content-switcher.js +1 -1
  65. package/dist/components/ifx-date-picker.js +2 -2
  66. package/dist/components/ifx-download.js +1 -1
  67. package/dist/components/ifx-dropdown-item.js +1 -1
  68. package/dist/components/ifx-dropdown-trigger-button.js +2 -2
  69. package/dist/components/ifx-dropdown.js +1 -1
  70. package/dist/components/ifx-faq.js +3 -3
  71. package/dist/components/ifx-file-upload.js +5 -5
  72. package/dist/components/ifx-filter-accordion.js +2 -2
  73. package/dist/components/ifx-filter-bar.js +2 -2
  74. package/dist/components/ifx-filter-search.js +2 -2
  75. package/dist/components/ifx-footer.js +1 -1
  76. package/dist/components/ifx-icon-button.js +1 -1
  77. package/dist/components/ifx-icon.js +1 -1
  78. package/dist/components/ifx-icons-preview.js +4 -4
  79. package/dist/components/ifx-indicator.js +1 -1
  80. package/dist/components/ifx-link.js +1 -1
  81. package/dist/components/ifx-list-entry.js +3 -3
  82. package/dist/components/ifx-list.js +2 -2
  83. package/dist/components/ifx-modal.js +3 -3
  84. package/dist/components/ifx-multiselect-option.js +1 -1
  85. package/dist/components/ifx-multiselect.js +1 -1
  86. package/dist/components/ifx-navbar-item.js +2 -2
  87. package/dist/components/ifx-navbar.js +2 -2
  88. package/dist/components/ifx-notification.js +1 -1
  89. package/dist/components/ifx-overview-table.js +3 -3
  90. package/dist/components/ifx-pagination.js +1 -1
  91. package/dist/components/ifx-progress-bar.js +1 -1
  92. package/dist/components/ifx-radio-button-group.js +2 -2
  93. package/dist/components/ifx-radio-button.js +1 -1
  94. package/dist/components/ifx-search-bar.js +3 -3
  95. package/dist/components/ifx-search-field.js +1 -1
  96. package/dist/components/ifx-segment.js +1 -1
  97. package/dist/components/ifx-segmented-control.js +3 -3
  98. package/dist/components/ifx-segmented-control.js.map +1 -1
  99. package/dist/components/ifx-select.js +1 -1
  100. package/dist/components/ifx-set-filter.js +7 -7
  101. package/dist/components/ifx-sidebar-item.js +2 -2
  102. package/dist/components/ifx-sidebar.js +1 -1
  103. package/dist/components/ifx-slider.js +2 -2
  104. package/dist/components/ifx-spinner.js +1 -1
  105. package/dist/components/ifx-status.js +1 -1
  106. package/dist/components/ifx-step.js +1 -1
  107. package/dist/components/ifx-stepper.js +1 -1
  108. package/dist/components/ifx-switch.js +1 -1
  109. package/dist/components/ifx-table.js +10 -10
  110. package/dist/components/ifx-tabs.js +2 -2
  111. package/dist/components/ifx-tag.js +2 -2
  112. package/dist/components/ifx-template.js +1 -1
  113. package/dist/components/ifx-templates-ui.js +8 -8
  114. package/dist/components/ifx-text-field.js +1 -1
  115. package/dist/components/ifx-textarea.js +1 -1
  116. package/dist/components/ifx-tooltip.js +2 -2
  117. package/dist/components/ifx-tree-view-item.js +2 -2
  118. package/dist/components/ifx-tree-view.js +1 -1
  119. package/dist/components/{p-01a2a671.js → p-0891a1e4.js} +3 -3
  120. package/dist/components/{p-01a2a671.js.map → p-0891a1e4.js.map} +1 -1
  121. package/dist/components/p-0b7e3932.js +136 -0
  122. package/dist/components/p-0b7e3932.js.map +1 -0
  123. package/dist/components/{p-1256041d.js → p-12079b02.js} +3 -3
  124. package/dist/components/{p-1256041d.js.map → p-12079b02.js.map} +1 -1
  125. package/dist/components/{p-7531ab3a.js → p-269d60da.js} +5 -5
  126. package/dist/components/{p-7531ab3a.js.map → p-269d60da.js.map} +1 -1
  127. package/dist/components/{p-bb9b541f.js → p-34a026ea.js} +2 -2
  128. package/dist/components/{p-bb9b541f.js.map → p-34a026ea.js.map} +1 -1
  129. package/dist/components/{p-6ff767df.js → p-5142c6b5.js} +2 -2
  130. package/dist/components/{p-6ff767df.js.map → p-5142c6b5.js.map} +1 -1
  131. package/dist/components/{p-29a39b8c.js → p-756867aa.js} +2 -2
  132. package/dist/components/{p-29a39b8c.js.map → p-756867aa.js.map} +1 -1
  133. package/dist/components/{p-4f6ab2e4.js → p-7f5c998f.js} +3 -3
  134. package/dist/components/{p-4f6ab2e4.js.map → p-7f5c998f.js.map} +1 -1
  135. package/dist/components/{p-d202acba.js → p-82ad178b.js} +5 -5
  136. package/dist/components/{p-d202acba.js.map → p-82ad178b.js.map} +1 -1
  137. package/dist/components/{p-e7f270c1.js → p-82e2b9ce.js} +2 -2
  138. package/dist/components/{p-e7f270c1.js.map → p-82e2b9ce.js.map} +1 -1
  139. package/dist/components/{p-307b57c7.js → p-836549b9.js} +4 -4
  140. package/dist/components/{p-307b57c7.js.map → p-836549b9.js.map} +1 -1
  141. package/dist/components/{p-72aae821.js → p-84f900dd.js} +3 -3
  142. package/dist/components/{p-72aae821.js.map → p-84f900dd.js.map} +1 -1
  143. package/dist/components/{p-150988ec.js → p-c815b44d.js} +6 -6
  144. package/dist/components/{p-150988ec.js.map → p-c815b44d.js.map} +1 -1
  145. package/dist/components/{p-862de1e8.js → p-cf88f676.js} +3 -3
  146. package/dist/components/{p-862de1e8.js.map → p-cf88f676.js.map} +1 -1
  147. package/dist/components/{p-8eaa55a1.js → p-d30cb869.js} +3 -3
  148. package/dist/components/{p-8eaa55a1.js.map → p-d30cb869.js.map} +1 -1
  149. package/dist/components/{p-ed0f491c.js → p-d4c65148.js} +2 -2
  150. package/dist/components/{p-ed0f491c.js.map → p-d4c65148.js.map} +1 -1
  151. package/dist/components/{p-80bd74d1.js → p-dc61d0d8.js} +2 -2
  152. package/dist/components/{p-80bd74d1.js.map → p-dc61d0d8.js.map} +1 -1
  153. package/dist/components/{p-1f61ec38.js → p-dcc86ab5.js} +3 -3
  154. package/dist/components/{p-1f61ec38.js.map → p-dcc86ab5.js.map} +1 -1
  155. package/dist/components/{p-bfd161fb.js → p-e1d7d7e0.js} +2 -2
  156. package/dist/components/{p-bfd161fb.js.map → p-e1d7d7e0.js.map} +1 -1
  157. package/dist/components/{p-b8d74876.js → p-e6ea3dd5.js} +4 -4
  158. package/dist/components/{p-b8d74876.js.map → p-e6ea3dd5.js.map} +1 -1
  159. package/dist/components/{p-5084c36c.js → p-f39da6e2.js} +3 -3
  160. package/dist/components/{p-5084c36c.js.map → p-f39da6e2.js.map} +1 -1
  161. package/dist/components/{p-88385a57.js → p-fa638f41.js} +2 -2
  162. package/dist/components/{p-88385a57.js.map → p-fa638f41.js.map} +1 -1
  163. package/dist/components/{p-28bc54da.js → p-feb602bf.js} +2 -2
  164. package/dist/components/{p-28bc54da.js.map → p-feb602bf.js.map} +1 -1
  165. package/dist/esm/framework-detection-a9e48c00.js +136 -0
  166. package/dist/esm/framework-detection-a9e48c00.js.map +1 -0
  167. package/dist/esm/ifx-accordion_2.entry.js +1 -1
  168. package/dist/esm/ifx-alert_2.entry.js +1 -1
  169. package/dist/esm/ifx-badge.entry.js +1 -1
  170. package/dist/esm/ifx-basic-table.entry.js +1 -1
  171. package/dist/esm/ifx-breadcrumb.entry.js +1 -1
  172. package/dist/esm/ifx-button.entry.js +1 -1
  173. package/dist/esm/ifx-card.entry.js +1 -1
  174. package/dist/esm/ifx-checkbox-group.entry.js +1 -1
  175. package/dist/esm/ifx-checkbox.entry.js +1 -1
  176. package/dist/esm/ifx-chip_3.entry.js +1 -1
  177. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  178. package/dist/esm/ifx-date-picker.entry.js +1 -1
  179. package/dist/esm/ifx-dropdown.entry.js +1 -1
  180. package/dist/esm/ifx-file-upload.entry.js +1 -1
  181. package/dist/esm/ifx-footer.entry.js +1 -1
  182. package/dist/esm/ifx-icon-button.entry.js +1 -1
  183. package/dist/esm/ifx-icon.entry.js +1 -1
  184. package/dist/esm/ifx-indicator.entry.js +1 -1
  185. package/dist/esm/ifx-link.entry.js +1 -1
  186. package/dist/esm/ifx-modal.entry.js +1 -1
  187. package/dist/esm/ifx-multiselect_2.entry.js +1 -1
  188. package/dist/esm/ifx-navbar.entry.js +1 -1
  189. package/dist/esm/ifx-notification.entry.js +1 -1
  190. package/dist/esm/ifx-progress-bar.entry.js +1 -1
  191. package/dist/esm/ifx-radio-button-group.entry.js +1 -1
  192. package/dist/esm/ifx-radio-button.entry.js +1 -1
  193. package/dist/esm/ifx-search-bar.entry.js +1 -1
  194. package/dist/esm/ifx-search-field.entry.js +1 -1
  195. package/dist/esm/ifx-segmented-control.entry.js +2 -2
  196. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  197. package/dist/esm/ifx-select.entry.js +1 -1
  198. package/dist/esm/ifx-sidebar.entry.js +1 -1
  199. package/dist/esm/ifx-slider.entry.js +1 -1
  200. package/dist/esm/ifx-spinner_2.entry.js +1 -1
  201. package/dist/esm/ifx-status.entry.js +1 -1
  202. package/dist/esm/ifx-stepper.entry.js +1 -1
  203. package/dist/esm/ifx-switch.entry.js +1 -1
  204. package/dist/esm/ifx-table.entry.js +1 -1
  205. package/dist/esm/ifx-tabs.entry.js +1 -1
  206. package/dist/esm/ifx-tag.entry.js +1 -1
  207. package/dist/esm/ifx-textarea.entry.js +1 -1
  208. package/dist/esm/ifx-tooltip.entry.js +1 -1
  209. package/dist/esm/ifx-tree-view.entry.js +1 -1
  210. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  211. package/dist/infineon-design-system-stencil/{p-431d50b8.entry.js → p-028befb2.entry.js} +2 -2
  212. package/dist/infineon-design-system-stencil/{p-2a4642d0.entry.js → p-0a0cc242.entry.js} +2 -2
  213. package/dist/infineon-design-system-stencil/p-0b7e3932.js +2 -0
  214. package/dist/infineon-design-system-stencil/p-0b7e3932.js.map +1 -0
  215. package/dist/infineon-design-system-stencil/{p-ef7802f4.entry.js → p-17a18bb3.entry.js} +2 -2
  216. package/dist/infineon-design-system-stencil/{p-d448d22c.entry.js → p-2de4e88b.entry.js} +2 -2
  217. package/dist/infineon-design-system-stencil/{p-bc216f6d.entry.js → p-37abe78e.entry.js} +2 -2
  218. package/dist/infineon-design-system-stencil/{p-0feebdea.entry.js → p-398d3e6d.entry.js} +2 -2
  219. package/dist/infineon-design-system-stencil/{p-97c37974.entry.js → p-478ef05a.entry.js} +2 -2
  220. package/dist/infineon-design-system-stencil/{p-74190965.entry.js → p-4a4683e4.entry.js} +2 -2
  221. package/dist/infineon-design-system-stencil/{p-bba99322.entry.js → p-4fdbb988.entry.js} +2 -2
  222. package/dist/infineon-design-system-stencil/{p-40be6362.entry.js → p-62e67c7f.entry.js} +2 -2
  223. package/dist/infineon-design-system-stencil/{p-51a70ef9.entry.js → p-64140027.entry.js} +2 -2
  224. package/dist/infineon-design-system-stencil/{p-24fa4b84.entry.js → p-6b07f33c.entry.js} +2 -2
  225. package/dist/infineon-design-system-stencil/{p-44a61708.entry.js → p-71053bca.entry.js} +2 -2
  226. package/dist/infineon-design-system-stencil/{p-218c8275.entry.js → p-7395eaf1.entry.js} +2 -2
  227. package/dist/infineon-design-system-stencil/{p-6417bc5b.entry.js → p-7ad769f2.entry.js} +2 -2
  228. package/dist/infineon-design-system-stencil/{p-bb8d7729.entry.js → p-80c5b899.entry.js} +2 -2
  229. package/dist/infineon-design-system-stencil/{p-b1f276a9.entry.js → p-8381c50c.entry.js} +2 -2
  230. package/dist/infineon-design-system-stencil/{p-9f4f024a.entry.js → p-850f7b94.entry.js} +2 -2
  231. package/dist/infineon-design-system-stencil/{p-a1d02e8e.entry.js → p-887c98c5.entry.js} +2 -2
  232. package/dist/infineon-design-system-stencil/{p-5f433868.entry.js → p-89df9e5b.entry.js} +2 -2
  233. package/dist/infineon-design-system-stencil/{p-9e9f166d.entry.js → p-8c28bdd3.entry.js} +2 -2
  234. package/dist/infineon-design-system-stencil/{p-7097e349.entry.js → p-8ddaf045.entry.js} +2 -2
  235. package/dist/infineon-design-system-stencil/{p-47e35811.entry.js → p-8ec18362.entry.js} +2 -2
  236. package/dist/infineon-design-system-stencil/{p-b51937f3.entry.js → p-9c0034e8.entry.js} +2 -2
  237. package/dist/infineon-design-system-stencil/{p-5c2386f1.entry.js → p-a41471be.entry.js} +2 -2
  238. package/dist/infineon-design-system-stencil/{p-77cbcda1.entry.js → p-abcb8b8e.entry.js} +2 -2
  239. package/dist/infineon-design-system-stencil/{p-754c7267.entry.js → p-ac355fae.entry.js} +2 -2
  240. package/dist/infineon-design-system-stencil/{p-c3acb336.entry.js → p-b2281ff5.entry.js} +2 -2
  241. package/dist/infineon-design-system-stencil/{p-816d8d89.entry.js → p-b240a009.entry.js} +2 -2
  242. package/dist/infineon-design-system-stencil/{p-0b4463ab.entry.js → p-b31fd761.entry.js} +2 -2
  243. package/dist/infineon-design-system-stencil/{p-486f1f73.entry.js → p-b3a14c64.entry.js} +2 -2
  244. package/dist/infineon-design-system-stencil/{p-29f36497.entry.js → p-b5f1873a.entry.js} +2 -2
  245. package/dist/infineon-design-system-stencil/{p-5976c2b0.entry.js → p-b65da53c.entry.js} +2 -2
  246. package/dist/infineon-design-system-stencil/{p-b7c74d53.entry.js → p-be44ffb5.entry.js} +2 -2
  247. package/dist/infineon-design-system-stencil/{p-7f9e8260.entry.js → p-c23ab684.entry.js} +2 -2
  248. package/dist/infineon-design-system-stencil/{p-507107be.entry.js → p-c24ab74b.entry.js} +2 -2
  249. package/dist/infineon-design-system-stencil/{p-2b6fa7ea.entry.js → p-c88e4036.entry.js} +2 -2
  250. package/dist/infineon-design-system-stencil/{p-f47071d5.entry.js → p-cb4130b5.entry.js} +2 -2
  251. package/dist/infineon-design-system-stencil/p-d6253110.entry.js +2 -0
  252. package/dist/infineon-design-system-stencil/{p-5dc39c88.entry.js.map → p-d6253110.entry.js.map} +1 -1
  253. package/dist/infineon-design-system-stencil/{p-ce0db9fb.entry.js → p-d78cd447.entry.js} +2 -2
  254. package/dist/infineon-design-system-stencil/{p-13ae34b7.entry.js → p-dff719b2.entry.js} +2 -2
  255. package/dist/infineon-design-system-stencil/{p-8f3c079e.entry.js → p-f7092bc1.entry.js} +2 -2
  256. package/package.json +1 -1
  257. package/dist/cjs/framework-detection-78986016.js +0 -93
  258. package/dist/cjs/framework-detection-78986016.js.map +0 -1
  259. package/dist/components/p-e8504e6b.js +0 -90
  260. package/dist/components/p-e8504e6b.js.map +0 -1
  261. package/dist/esm/framework-detection-198a17af.js +0 -90
  262. package/dist/esm/framework-detection-198a17af.js.map +0 -1
  263. package/dist/infineon-design-system-stencil/p-5dc39c88.entry.js +0 -2
  264. package/dist/infineon-design-system-stencil/p-e8504e6b.js +0 -2
  265. package/dist/infineon-design-system-stencil/p-e8504e6b.js.map +0 -1
  266. /package/dist/infineon-design-system-stencil/{p-431d50b8.entry.js.map → p-028befb2.entry.js.map} +0 -0
  267. /package/dist/infineon-design-system-stencil/{p-2a4642d0.entry.js.map → p-0a0cc242.entry.js.map} +0 -0
  268. /package/dist/infineon-design-system-stencil/{p-ef7802f4.entry.js.map → p-17a18bb3.entry.js.map} +0 -0
  269. /package/dist/infineon-design-system-stencil/{p-d448d22c.entry.js.map → p-2de4e88b.entry.js.map} +0 -0
  270. /package/dist/infineon-design-system-stencil/{p-bc216f6d.entry.js.map → p-37abe78e.entry.js.map} +0 -0
  271. /package/dist/infineon-design-system-stencil/{p-0feebdea.entry.js.map → p-398d3e6d.entry.js.map} +0 -0
  272. /package/dist/infineon-design-system-stencil/{p-97c37974.entry.js.map → p-478ef05a.entry.js.map} +0 -0
  273. /package/dist/infineon-design-system-stencil/{p-74190965.entry.js.map → p-4a4683e4.entry.js.map} +0 -0
  274. /package/dist/infineon-design-system-stencil/{p-bba99322.entry.js.map → p-4fdbb988.entry.js.map} +0 -0
  275. /package/dist/infineon-design-system-stencil/{p-40be6362.entry.js.map → p-62e67c7f.entry.js.map} +0 -0
  276. /package/dist/infineon-design-system-stencil/{p-51a70ef9.entry.js.map → p-64140027.entry.js.map} +0 -0
  277. /package/dist/infineon-design-system-stencil/{p-24fa4b84.entry.js.map → p-6b07f33c.entry.js.map} +0 -0
  278. /package/dist/infineon-design-system-stencil/{p-44a61708.entry.js.map → p-71053bca.entry.js.map} +0 -0
  279. /package/dist/infineon-design-system-stencil/{p-218c8275.entry.js.map → p-7395eaf1.entry.js.map} +0 -0
  280. /package/dist/infineon-design-system-stencil/{p-6417bc5b.entry.js.map → p-7ad769f2.entry.js.map} +0 -0
  281. /package/dist/infineon-design-system-stencil/{p-bb8d7729.entry.js.map → p-80c5b899.entry.js.map} +0 -0
  282. /package/dist/infineon-design-system-stencil/{p-b1f276a9.entry.js.map → p-8381c50c.entry.js.map} +0 -0
  283. /package/dist/infineon-design-system-stencil/{p-9f4f024a.entry.js.map → p-850f7b94.entry.js.map} +0 -0
  284. /package/dist/infineon-design-system-stencil/{p-a1d02e8e.entry.js.map → p-887c98c5.entry.js.map} +0 -0
  285. /package/dist/infineon-design-system-stencil/{p-5f433868.entry.js.map → p-89df9e5b.entry.js.map} +0 -0
  286. /package/dist/infineon-design-system-stencil/{p-9e9f166d.entry.js.map → p-8c28bdd3.entry.js.map} +0 -0
  287. /package/dist/infineon-design-system-stencil/{p-7097e349.entry.js.map → p-8ddaf045.entry.js.map} +0 -0
  288. /package/dist/infineon-design-system-stencil/{p-47e35811.entry.js.map → p-8ec18362.entry.js.map} +0 -0
  289. /package/dist/infineon-design-system-stencil/{p-b51937f3.entry.js.map → p-9c0034e8.entry.js.map} +0 -0
  290. /package/dist/infineon-design-system-stencil/{p-5c2386f1.entry.js.map → p-a41471be.entry.js.map} +0 -0
  291. /package/dist/infineon-design-system-stencil/{p-77cbcda1.entry.js.map → p-abcb8b8e.entry.js.map} +0 -0
  292. /package/dist/infineon-design-system-stencil/{p-754c7267.entry.js.map → p-ac355fae.entry.js.map} +0 -0
  293. /package/dist/infineon-design-system-stencil/{p-c3acb336.entry.js.map → p-b2281ff5.entry.js.map} +0 -0
  294. /package/dist/infineon-design-system-stencil/{p-816d8d89.entry.js.map → p-b240a009.entry.js.map} +0 -0
  295. /package/dist/infineon-design-system-stencil/{p-0b4463ab.entry.js.map → p-b31fd761.entry.js.map} +0 -0
  296. /package/dist/infineon-design-system-stencil/{p-486f1f73.entry.js.map → p-b3a14c64.entry.js.map} +0 -0
  297. /package/dist/infineon-design-system-stencil/{p-29f36497.entry.js.map → p-b5f1873a.entry.js.map} +0 -0
  298. /package/dist/infineon-design-system-stencil/{p-5976c2b0.entry.js.map → p-b65da53c.entry.js.map} +0 -0
  299. /package/dist/infineon-design-system-stencil/{p-b7c74d53.entry.js.map → p-be44ffb5.entry.js.map} +0 -0
  300. /package/dist/infineon-design-system-stencil/{p-7f9e8260.entry.js.map → p-c23ab684.entry.js.map} +0 -0
  301. /package/dist/infineon-design-system-stencil/{p-507107be.entry.js.map → p-c24ab74b.entry.js.map} +0 -0
  302. /package/dist/infineon-design-system-stencil/{p-2b6fa7ea.entry.js.map → p-c88e4036.entry.js.map} +0 -0
  303. /package/dist/infineon-design-system-stencil/{p-f47071d5.entry.js.map → p-cb4130b5.entry.js.map} +0 -0
  304. /package/dist/infineon-design-system-stencil/{p-ce0db9fb.entry.js.map → p-d78cd447.entry.js.map} +0 -0
  305. /package/dist/infineon-design-system-stencil/{p-13ae34b7.entry.js.map → p-dff719b2.entry.js.map} +0 -0
  306. /package/dist/infineon-design-system-stencil/{p-8f3c079e.entry.js.map → p-f7092bc1.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"p-7531ab3a.js","mappings":"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","names":[],"sources":["src/components/select/multi-select/multiselect.scss?tag=ifx-multiselect&encapsulation=shadow","src/components/select/multi-select/multiselect.tsx"],"sourcesContent":["// @import '~choices.js/public/assets/styles/choices.css';\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.ifx-multiselect-container {\n position: relative;\n box-sizing: border-box;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n &:hover {\n cursor: pointer;\n }\n\n .ifx-label-wrapper {\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n max-width: 100%;\n }\n\n .ifx-error-message-wrapper {\n color: #CD002F;\n font-size: tokens.$ifxFontSizeXs;\n line-height: tokens.$ifxLineHeightXs;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n max-width: 100%;\n }\n\n .ifx-multiselect-wrapper {\n background-color: tokens.$ifxColorBaseWhite;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n border: 1px solid tokens.$ifxColorEngineering400;\n border-radius: tokens.$ifxBorderRadius12;\n width: 100%;\n font-weight: 400;\n font-style: normal;\n height: 40px;\n line-height: 24px;\n padding: 8px 16px;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus-visible:not(.active):not(:active) {\n outline: none;\n\n &::before {\n content: '';\n position: absolute;\n width: calc(100% + 4px);\n height: calc(100% + 4px);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n border: 2px solid tokens.$ifxColorOcean500;\n border-radius: 2px;\n\n }\n }\n\n &.disabled {\n background: tokens.$ifxColorEngineering200;\n color: #575352;\n border-color: #575352;\n cursor: default;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n }\n\n &.error {\n border-color: #CD002F;\n }\n\n &:hover:not(.focus, :focus) {\n border-color: tokens.$ifxColorEngineering500;\n }\n\n &.active {\n border-color: tokens.$ifxColorOcean500 !important; // Active border color\n\n & .icon-wrapper-up {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: tokens.$ifxSpace100;\n }\n\n & .icon-wrapper-down {\n display: none\n }\n }\n\n\n & .icon-wrapper-up {\n display: none;\n }\n\n & .icon-wrapper-down {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: tokens.$ifxSpace100;\n }\n\n &.is-flipped {\n .ifx-multiselect-dropdown-menu {\n top: auto;\n bottom: 100%;\n }\n }\n }\n\n .ifx-multiselect-input {\n flex-grow: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &.placeholder {\n opacity: 0.5;\n }\n\n }\n\n\n .ifx-multiselect-icon-container {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n\n .ifx-multiselect-icon-container {\n display: flex;\n }\n\n .icon-wrapper {\n display: flex;\n align-items: center;\n transition: transform 0.2s ease-in-out;\n }\n\n .icon-wrapper--open {\n transform: rotate(180deg);\n }\n }\n\n .ifx-clear-button {\n display: flex;\n align-items: center;\n\n &.hide {\n display: none;\n }\n }\n\n .ifx-multiselect-dropdown-menu {\n box-sizing: border-box;\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n margin-top: tokens.$ifxSpace50;\n border: 1px solid tokens.$ifxColorEngineering200;\n background-color: #fff;\n box-shadow: 0px 6px 9px 0px rgba(29, 29, 29, 0.10);\n max-height: 300px;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n }\n}\n\n.ifx-multiselect-dropdown-functions {\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n flex-shrink: 0;\n}\n\n.ifx-multiselect-dropdown-search {\n margin-bottom: tokens.$ifxSpace150;\n}\n\n.ifx-multiselect-dropdown-controls {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n gap: tokens.$ifxSpace100;\n\n .select-all-wrapper {\n display: flex;\n }\n\n .expand-collapse-controls {\n display: flex;\n gap: tokens.$ifxSpace150;\n }\n\n .control-item {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active {\n color: tokens.$ifxColorOcean600;\n }\n\n &:focus {\n outline: none;\n }\n\n &:focus-visible {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n border-radius: tokens.$ifxBorderRadius12;\n }\n }\n}\n\n.ifx-multiselect-options {\n flex: 1;\n overflow-y: auto;\n padding-top: tokens.$ifxSpace150;\n padding-bottom: tokens.$ifxSpace150;\n\n &.show-no-results {\n .ifx-multiselect-no-results {\n display: block;\n }\n }\n}\n\n.ifx-multiselect-no-results {\n padding-left: tokens.$ifxSpace200;\n padding-right: tokens.$ifxSpace200;\n display: none;\n}\n\n","import { Component, Prop, State, Event, EventEmitter, Element, h, Watch, AttachInternals, Method } from '@stencil/core';\nimport { trackComponent } from '../../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../../global/utils/dom-utils';\nimport { detectFramework } from '../../../global/utils/framework-detection';\nimport { Option } from './interfaces';\n\nfunction debounce(func, wait) {\n let timeout;\n return function executedFunction(...args) {\n const later = () => {\n clearTimeout(timeout);\n func(...args);\n };\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n };\n}\n\n@Component({\n tag: 'ifx-multiselect',\n styleUrl: 'multiselect.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class Multiselect {\n @Prop() name: string;\n @Prop() disabled: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string = \"Error\";\n @Prop() label: string = \"\";\n @Prop() placeholder: string = \"\";\n @Prop() showSearch: boolean = true;\n @Prop() showSelectAll: boolean = true;\n @Prop() showClearButton: boolean = true;\n @Prop() showExpandCollapse: boolean = true;\n @Prop() noResultsMessage: string = \"No results found.\";\n @Prop() showNoResultsMessage: boolean = true;\n @Prop() searchPlaceholder: string = \"Search\";\n @Prop() selectAllLabel: string = \"Select all\";\n @Prop() expandLabel: string = \"Expand\";\n @Prop() collapseLabel: string = \"Collapse\";\n @Prop() ariaMultiSelectLabel: string = \"Multi-select dropdown\";\n @Prop() ariaMultiSelectLabelledBy: string = \"\";\n @Prop() ariaMultiSelectDescribedBy: string = \"\";\n @Prop() ariaSearchLabel: string = \"Search options\";\n @Prop() ariaClearLabel: string = \"Clear all selections\";\n @Prop() ariaToggleLabel: string = \"Toggle dropdown\";\n @Prop() ariaSelectAllLabel: string = \"Select all options\";\n @Prop() ariaExpandAllLabel: string = \"Expand all categories\";\n @Prop() ariaCollapseAllLabel: string = \"Collapse all categories\";\n\n @State() internalError: boolean = false;\n @State() internalErrorMessage: string;\n @State() persistentSelectedOptions: Option[] = [];\n @State() dropdownOpen = false;\n @State() dropdownFlipped: boolean;\n @State() searchTerm: string = '';\n\n @Event() ifxSelect: EventEmitter;\n @Event() ifxOpen: EventEmitter;\n\n @Element() el: HTMLElement;\n dropdownElement!: HTMLElement;\n\n @AttachInternals() internals: ElementInternals;\n private parseChildOptions(): Option[] {\n const options: Option[] = [];\n const childElements = Array.from(this.el.children);\n\n childElements.forEach((child, index) => {\n if (child.tagName === 'IFX-MULTISELECT-OPTION') {\n const option = this.parseOptionElement(child as HTMLElement, index);\n if (option) {\n options.push(option);\n }\n }\n });\n\n return options;\n }\n\n private parseOptionElement(element: HTMLElement, index: number): Option | null {\n const value = element.getAttribute('value') || `option-${index}`;\n const selected = element.hasAttribute('selected');\n const disabled = element.hasAttribute('disabled');\n const indeterminate = element.hasAttribute('indeterminate');\n\n const option: Option = {\n value,\n selected,\n disabled,\n indeterminate\n };\n\n const nestedOptions = Array.from(element.children)\n .filter(child => child.tagName === 'IFX-MULTISELECT-OPTION')\n .map((child, childIndex) => this.parseOptionElement(child as HTMLElement, childIndex))\n .filter(opt => opt !== null) as Option[];\n\n if (nestedOptions.length > 0) {\n option.children = nestedOptions;\n }\n\n return option;\n }\n\n loadInitialOptions() {\n this.internalError = this.error;\n this.internalErrorMessage = this.errorMessage;\n\n const allOptions = this.parseChildOptions();\n const initiallySelected = this.collectSelectedOptions(allOptions);\n const initiallySelectedNotInState = initiallySelected.filter(init =>\n !this.persistentSelectedOptions.some(opt => opt.value == init.value)\n );\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, ...initiallySelectedNotInState];\n }\n\n private collectSelectedOptions(options: Option[]): Option[] {\n let selectedOptions: Option[] = [];\n\n for (const option of options) {\n if (option.selected) {\n if (option.children && option.children.length > 0) {\n selectedOptions = selectedOptions.concat(this.collectLeafOptions(option.children));\n } else {\n if (!selectedOptions.some(existingOption => existingOption.value === option.value)) {\n selectedOptions.push(option);\n }\n }\n } else {\n if (option.children && option.children.length > 0) {\n selectedOptions = selectedOptions.concat(this.collectSelectedOptions(option.children));\n }\n }\n }\n\n return selectedOptions;\n }\n\n private collectLeafOptions(children: Option[]): Option[] {\n let leafOptions = [];\n\n for (const child of children) {\n if (child.children && child.children.length > 0) {\n leafOptions = leafOptions.concat(this.collectLeafOptions(child.children));\n } else {\n leafOptions.push(child);\n }\n }\n return leafOptions;\n }\n\n handleSearch = debounce((targetElement: HTMLInputElement) => {\n const searchTerm = targetElement.value.toLowerCase();\n const isSearchActive = searchTerm !== '';\n\n this.searchTerm = searchTerm;\n\n const wrapper = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper');\n if (wrapper) {\n if (isSearchActive) {\n wrapper.classList.remove('active');\n } else {\n const searchField = this.el.shadowRoot.querySelector('ifx-search-field');\n const searchFieldHasFocus = searchField && searchField.matches(':focus-within');\n if (!searchFieldHasFocus) {\n wrapper.classList.add('active');\n }\n }\n }\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n if (isSearchActive) {\n optionsContainer.classList.add('has-search-filter');\n } else {\n optionsContainer.classList.remove('has-search-filter');\n }\n }\n\n requestAnimationFrame(() => {\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n allOptions.forEach(option => {\n const searchEvent = new CustomEvent('ifx-search-filter', {\n detail: { searchTerm, isActive: isSearchActive }\n });\n option.dispatchEvent(searchEvent);\n });\n\n if (isSearchActive) {\n setTimeout(() => {\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n let visibleCount = 0;\n\n allOptions.forEach(option => {\n const style = window.getComputedStyle(option);\n const rect = option.getBoundingClientRect();\n\n if (style.display !== 'none' &&\n style.visibility !== 'hidden' &&\n style.opacity !== '0' &&\n rect.height > 0) {\n visibleCount++;\n }\n });\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n if (visibleCount === 0) {\n optionsContainer.classList.add('show-no-results');\n } else {\n optionsContainer.classList.remove('show-no-results');\n }\n }\n }, 200);\n } else {\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n optionsContainer.classList.remove('show-no-results');\n }\n }\n });\n }, 150);\n\n private handleSearchFocus(hasFocus: boolean) {\n const wrapper = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper');\n if (wrapper) {\n if (hasFocus || this.searchTerm !== '') {\n wrapper.classList.remove('active');\n } else {\n wrapper.classList.add('active');\n }\n }\n }\n\n positionDropdown() {\n const wrapperRect = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper')?.getBoundingClientRect();\n const spaceBelow = window.innerHeight - wrapperRect.bottom;\n const spaceAbove = wrapperRect.top;\n\n if ((spaceAbove > spaceBelow && wrapperRect.height > spaceBelow) || (wrapperRect.bottom > window.innerHeight)) {\n this.dropdownFlipped = true;\n } else {\n this.dropdownFlipped = false;\n }\n }\n\n private pendingSelectionUpdate = false;\n public updateSlotBasedSelections(emitEvent: boolean = false) {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const selectedLeafOptions: Option[] = [];\n\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.selected && !instance.hasChildren) {\n selectedLeafOptions.push({\n value: instance.value,\n selected: true,\n disabled: instance.disabled\n });\n }\n });\n\n this.persistentSelectedOptions = selectedLeafOptions;\n\n if (emitEvent) {\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }\n }\n\n private updateInitialParentStates() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const optionsByDepth = Array.from(allOptionElements)\n .map(el => ({\n element: el,\n instance: (el as any)['__stencil_instance'],\n depth: parseInt(el.getAttribute('data-level') || '0')\n }))\n .filter(item => item.instance)\n .sort((a, b) => b.depth - a.depth);\n\n optionsByDepth.forEach(({ instance }) => {\n if (instance.hasChildren) {\n this.updateParentState(instance);\n }\n });\n }\n\n private updateParentState(parentInstance: any) {\n const directChildren = Array.from(parentInstance.el.children as HTMLCollection)\n .filter((child: Element) => child.tagName === 'IFX-MULTISELECT-OPTION')\n .map(child => (child as any)['__stencil_instance'])\n .filter(instance => instance !== null);\n\n const selectedCount = directChildren.filter(child => child.selected).length;\n const indeterminateCount = directChildren.filter(child => child.indeterminate).length;\n const totalCount = directChildren.length;\n\n if (selectedCount === totalCount && indeterminateCount === 0) {\n parentInstance.selected = true;\n parentInstance.indeterminate = false;\n } else if (selectedCount === 0 && indeterminateCount === 0) {\n parentInstance.selected = false;\n parentInstance.indeterminate = false;\n } else {\n parentInstance.selected = false;\n parentInstance.indeterminate = true;\n }\n }\n\n componentDidLoad() {\n setTimeout(() => {\n this.positionDropdown();\n }, 500);\n\n this.el.addEventListener('ifx-option-changed', () => {\n if (!this.pendingSelectionUpdate) {\n this.pendingSelectionUpdate = true;\n requestAnimationFrame(() => {\n this.updateSlotBasedSelections(true);\n setTimeout(() => {\n this.pendingSelectionUpdate = false;\n }, 0);\n });\n }\n });\n\n setTimeout(() => {\n this.updateSlotBasedSelections(false);\n this.updateInitialParentStates();\n }, 100);\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-multiselect', framework)\n }\n this.loadInitialOptions();\n }\n\n @Watch('error')\n updateInternalError() {\n this.internalError = this.error;\n }\n\n @Watch('errorMessage')\n updateInternalErrorMessage() {\n this.internalErrorMessage = this.errorMessage;\n }\n\n @Watch('persistentSelectedOptions')\n onSelectionChange(newValue: Option[], _: Option[]) {\n const formData = new FormData();\n newValue.forEach(option => formData.append(this.name, option.value));\n this.internals.setFormValue(formData);\n }\n collapseAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.hasChildren) {\n instance.isExpanded = false;\n }\n });\n }\n\n expandAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.hasChildren) {\n instance.isExpanded = true;\n }\n });\n }\n\n selectAll() {\n this.resetSearch();\n\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance) {\n if (instance.hasChildren) {\n instance.isExpanded = true;\n } else {\n instance.selected = true;\n }\n }\n });\n\n setTimeout(() => {\n this.updateInitialParentStates();\n this.updateSlotBasedSelections(false);\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }, 0);\n }\n\n @Method()\n async clearSelection() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance) {\n instance.selected = false;\n instance.indeterminate = false;\n if (instance.hasChildren) {\n instance.isExpanded = false;\n }\n }\n });\n\n this.persistentSelectedOptions = [];\n\n setTimeout(() => {\n this.updateSlotBasedSelections(false);\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }, 0);\n }\n\n handleDocumentClick = (event: Event) => {\n const path = event.composedPath();\n if (!path.includes(this.dropdownElement)) {\n this.dropdownOpen = false;\n document.removeEventListener('click', this.handleDocumentClick);\n this.resetSearch();\n this.ifxOpen.emit(this.dropdownOpen);\n }\n }\n\n toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n setTimeout(() => {\n if (this.dropdownOpen) {\n document.addEventListener('click', this.handleDocumentClick);\n } else {\n this.resetSearch();\n }\n this.ifxOpen.emit(this.dropdownOpen);\n }, 0);\n }\n\n private resetSearch() {\n this.searchTerm = '';\n\n const searchField = this.el.shadowRoot.querySelector('ifx-search-field') as any;\n if (searchField) {\n searchField.value = '';\n }\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n optionsContainer.classList.remove('has-search-filter');\n }\n\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n allOptions.forEach(option => {\n const searchEvent = new CustomEvent('ifx-search-filter', {\n detail: { searchTerm: '', isActive: false }\n });\n option.dispatchEvent(searchEvent);\n });\n }\n\n handleWrapperClick(event: MouseEvent) {\n this.positionDropdown();\n\n if (event.currentTarget === event.target) {\n this.toggleDropdown();\n }\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (this.disabled) return;\n\n // If dropdown is closed, only allow opening\n if (!this.dropdownOpen) {\n switch (event.code) {\n case 'Enter':\n case 'Space':\n case 'ArrowDown':\n event.preventDefault();\n this.toggleDropdown();\n break;\n }\n return;\n }\n\n // Dropdown is open - handle navigation and controls\n switch (event.code) {\n case 'Escape':\n event.preventDefault();\n this.toggleDropdown();\n break;\n case 'Enter':\n case 'Space':\n // Don't close dropdown when pressing space/enter in controls area\n const target = event.target as HTMLElement;\n if (!target.closest('.ifx-multiselect-dropdown-functions')) {\n event.preventDefault();\n this.toggleDropdown();\n }\n break;\n case 'ArrowDown':\n case 'ArrowUp':\n // Focus first/last option for navigation\n event.preventDefault();\n this.focusFirstOption();\n break;\n }\n }\n\n private focusFirstOption() {\n const firstOption = this.el.querySelector('ifx-multiselect-option:not(.search-hidden)');\n if (firstOption) {\n const labelElement = firstOption.shadowRoot?.querySelector('.option-label') as HTMLElement;\n labelElement?.focus();\n }\n }\n\n private renderSelectAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const leafOptions = Array.from(allOptionElements).filter((el: any) => !el.hasChildren);\n const selectedLeafOptions = Array.from(allOptionElements).filter((el: any) => !el.hasChildren && el.selected);\n\n const allSelected = leafOptions.length > 0 && selectedLeafOptions.length === leafOptions.length;\n\n const toggleSelectAll = (event?: Event) => {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (allSelected) {\n this.clearSelection();\n } else {\n this.selectAll();\n }\n };\n\n return (\n <div class=\"select-all-wrapper\">\n <ifx-checkbox\n id='selectAll'\n checked={allSelected}\n size=\"s\"\n aria-label={this.ariaSelectAllLabel}\n onClick={toggleSelectAll}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n toggleSelectAll(e);\n }\n }}\n >\n {this.selectAllLabel}\n </ifx-checkbox>\n </div>\n );\n }\n\n private renderNoResultsMessage() {\n return (\n <div class=\"ifx-multiselect-no-results\">\n <div class=\"no-results-content\">\n <span class=\"no-results-text\">{this.noResultsMessage}</span>\n </div>\n </div>\n );\n }\n\n render() {\n const selectedOptionsLabels = this.persistentSelectedOptions\n .map((option) => {\n const optionElement = this.el.querySelector(`ifx-multiselect-option[value=\"${option.value}\"]`);\n return optionElement?.textContent?.trim() || option.value;\n })\n .join(', ');\n\n const hasSelections = this.persistentSelectedOptions.length > 0;\n\n let isFlatMultiselect = false;\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n if (allOptionElements.length > 0) {\n isFlatMultiselect = Array.from(allOptionElements).every(option => option.children.length === 0);\n }\n\n return (\n <div class={`ifx-multiselect-container`} ref={el => this.dropdownElement = el as HTMLElement}>\n {\n this.label ?\n <div class=\"ifx-label-wrapper\">\n <span>{this.label}</span>\n </div> : null\n }\n <div class={`ifx-multiselect-wrapper\n ${this.dropdownOpen ? 'active' : ''}\n ${this.dropdownFlipped ? 'is-flipped' : ''}\n ${this.internalError ? 'error' : \"\"}\n ${this.disabled ? 'disabled' : \"\"}`}\n role=\"combobox\"\n aria-label={this.ariaMultiSelectLabel}\n aria-labelledby={this.ariaMultiSelectLabelledBy || undefined}\n aria-describedby={this.ariaMultiSelectDescribedBy || undefined}\n aria-expanded={this.dropdownOpen}\n aria-haspopup=\"listbox\"\n aria-disabled={this.disabled}\n tabindex=\"0\"\n onClick={this.disabled ? undefined : (event) => this.handleWrapperClick(event)}\n onKeyDown={this.disabled ? undefined : (event) => this.handleKeyDown(event)} >\n <div class={`ifx-multiselect-input\n ${hasSelections ? '' : 'placeholder'}\n `}\n onClick={this.disabled ? undefined : () => this.toggleDropdown()}\n >\n {hasSelections ? selectedOptionsLabels : this.placeholder}\n </div>\n {this.dropdownOpen && (\n <div class=\"ifx-multiselect-dropdown-menu\">\n\n {(this.showSearch || this.showSelectAll || (this.showExpandCollapse && !isFlatMultiselect)) && (\n <div class=\"ifx-multiselect-dropdown-functions\" onClick={(e) => e.stopPropagation()}>\n {this.showSearch && (\n <div class=\"ifx-multiselect-dropdown-search\">\n <ifx-search-field\n class=\"search-input\"\n placeholder={this.searchPlaceholder}\n size=\"s\"\n show-delete-icon=\"true\"\n aria-label={this.ariaSearchLabel}\n onKeyDown={(e) => { e.stopPropagation() }}\n onIfxInput={(event) => this.handleSearch(event.target)}\n onFocus={() => this.handleSearchFocus(true)}\n onBlur={() => this.handleSearchFocus(false)}\n ></ifx-search-field>\n </div>\n )}\n\n <div class=\"ifx-multiselect-dropdown-controls\">\n {this.showSelectAll && this.renderSelectAll()}\n {this.showExpandCollapse && !isFlatMultiselect && (\n <div class=\"expand-collapse-controls\">\n <span\n class=\"control-item\"\n role=\"button\"\n tabIndex={0}\n aria-label={this.ariaExpandAllLabel}\n onClick={(e) => { e.stopPropagation(); this.expandAll(); }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n this.expandAll();\n }\n }}\n >\n {this.expandLabel}\n </span>\n <span\n class=\"control-item\"\n role=\"button\"\n tabIndex={0}\n aria-label={this.ariaCollapseAllLabel}\n onClick={(e) => { e.stopPropagation(); this.collapseAll(); }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n this.collapseAll();\n }\n }}\n >\n {this.collapseLabel}\n </span>\n </div>\n )}\n </div>\n </div>\n )}\n\n <div class=\"ifx-multiselect-options\" role=\"listbox\" aria-multiselectable=\"true\">\n <slot />\n {this.searchTerm && this.showNoResultsMessage && this.renderNoResultsMessage()}\n </div>\n </div>\n )}\n <div class='ifx-multiselect-icon-container'>\n\n {/* Clear Button - will show only if there's a selection */}\n {this.persistentSelectedOptions.length > 0 && (\n <div class={`ifx-clear-button ${!this.showClearButton ? 'hide' : ''}`} onClick={this.disabled ? undefined : () => this.clearSelection()}>\n <ifx-icon icon=\"cRemove16\"></ifx-icon>\n </div>\n )}\n <div class=\"icon-wrapper-up\" onClick={this.disabled ? undefined : () => this.toggleDropdown()}>\n <ifx-icon\n key='icon-up'\n icon='chevron-up-16'></ifx-icon>\n </div>\n <div class=\"icon-wrapper-down\" onClick={this.disabled ? undefined : () => this.toggleDropdown()}>\n <ifx-icon\n key='icon-down'\n icon='chevron-down-16'></ifx-icon>\n </div>\n </div>\n\n </div>\n {\n this.internalError ?\n <div class=\"ifx-error-message-wrapper\">\n <span>{this.internalErrorMessage}</span>\n </div> : null\n }\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-269d60da.js","mappings":"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","names":[],"sources":["src/components/select/multi-select/multiselect.scss?tag=ifx-multiselect&encapsulation=shadow","src/components/select/multi-select/multiselect.tsx"],"sourcesContent":["// @import '~choices.js/public/assets/styles/choices.css';\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.ifx-multiselect-container {\n position: relative;\n box-sizing: border-box;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n &:hover {\n cursor: pointer;\n }\n\n .ifx-label-wrapper {\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n max-width: 100%;\n }\n\n .ifx-error-message-wrapper {\n color: #CD002F;\n font-size: tokens.$ifxFontSizeXs;\n line-height: tokens.$ifxLineHeightXs;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n max-width: 100%;\n }\n\n .ifx-multiselect-wrapper {\n background-color: tokens.$ifxColorBaseWhite;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n border: 1px solid tokens.$ifxColorEngineering400;\n border-radius: tokens.$ifxBorderRadius12;\n width: 100%;\n font-weight: 400;\n font-style: normal;\n height: 40px;\n line-height: 24px;\n padding: 8px 16px;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus-visible:not(.active):not(:active) {\n outline: none;\n\n &::before {\n content: '';\n position: absolute;\n width: calc(100% + 4px);\n height: calc(100% + 4px);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n border: 2px solid tokens.$ifxColorOcean500;\n border-radius: 2px;\n\n }\n }\n\n &.disabled {\n background: tokens.$ifxColorEngineering200;\n color: #575352;\n border-color: #575352;\n cursor: default;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n }\n\n &.error {\n border-color: #CD002F;\n }\n\n &:hover:not(.focus, :focus) {\n border-color: tokens.$ifxColorEngineering500;\n }\n\n &.active {\n border-color: tokens.$ifxColorOcean500 !important; // Active border color\n\n & .icon-wrapper-up {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: tokens.$ifxSpace100;\n }\n\n & .icon-wrapper-down {\n display: none\n }\n }\n\n\n & .icon-wrapper-up {\n display: none;\n }\n\n & .icon-wrapper-down {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: tokens.$ifxSpace100;\n }\n\n &.is-flipped {\n .ifx-multiselect-dropdown-menu {\n top: auto;\n bottom: 100%;\n }\n }\n }\n\n .ifx-multiselect-input {\n flex-grow: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &.placeholder {\n opacity: 0.5;\n }\n\n }\n\n\n .ifx-multiselect-icon-container {\n margin-left: auto;\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n\n .ifx-multiselect-icon-container {\n display: flex;\n }\n\n .icon-wrapper {\n display: flex;\n align-items: center;\n transition: transform 0.2s ease-in-out;\n }\n\n .icon-wrapper--open {\n transform: rotate(180deg);\n }\n }\n\n .ifx-clear-button {\n display: flex;\n align-items: center;\n\n &.hide {\n display: none;\n }\n }\n\n .ifx-multiselect-dropdown-menu {\n box-sizing: border-box;\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n margin-top: tokens.$ifxSpace50;\n border: 1px solid tokens.$ifxColorEngineering200;\n background-color: #fff;\n box-shadow: 0px 6px 9px 0px rgba(29, 29, 29, 0.10);\n max-height: 300px;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n }\n}\n\n.ifx-multiselect-dropdown-functions {\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n flex-shrink: 0;\n}\n\n.ifx-multiselect-dropdown-search {\n margin-bottom: tokens.$ifxSpace150;\n}\n\n.ifx-multiselect-dropdown-controls {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n gap: tokens.$ifxSpace100;\n\n .select-all-wrapper {\n display: flex;\n }\n\n .expand-collapse-controls {\n display: flex;\n gap: tokens.$ifxSpace150;\n }\n\n .control-item {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active {\n color: tokens.$ifxColorOcean600;\n }\n\n &:focus {\n outline: none;\n }\n\n &:focus-visible {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n border-radius: tokens.$ifxBorderRadius12;\n }\n }\n}\n\n.ifx-multiselect-options {\n flex: 1;\n overflow-y: auto;\n padding-top: tokens.$ifxSpace150;\n padding-bottom: tokens.$ifxSpace150;\n\n &.show-no-results {\n .ifx-multiselect-no-results {\n display: block;\n }\n }\n}\n\n.ifx-multiselect-no-results {\n padding-left: tokens.$ifxSpace200;\n padding-right: tokens.$ifxSpace200;\n display: none;\n}\n\n","import { Component, Prop, State, Event, EventEmitter, Element, h, Watch, AttachInternals, Method } from '@stencil/core';\nimport { trackComponent } from '../../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../../global/utils/dom-utils';\nimport { detectFramework } from '../../../global/utils/framework-detection';\nimport { Option } from './interfaces';\n\nfunction debounce(func, wait) {\n let timeout;\n return function executedFunction(...args) {\n const later = () => {\n clearTimeout(timeout);\n func(...args);\n };\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n };\n}\n\n@Component({\n tag: 'ifx-multiselect',\n styleUrl: 'multiselect.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class Multiselect {\n @Prop() name: string;\n @Prop() disabled: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string = \"Error\";\n @Prop() label: string = \"\";\n @Prop() placeholder: string = \"\";\n @Prop() showSearch: boolean = true;\n @Prop() showSelectAll: boolean = true;\n @Prop() showClearButton: boolean = true;\n @Prop() showExpandCollapse: boolean = true;\n @Prop() noResultsMessage: string = \"No results found.\";\n @Prop() showNoResultsMessage: boolean = true;\n @Prop() searchPlaceholder: string = \"Search\";\n @Prop() selectAllLabel: string = \"Select all\";\n @Prop() expandLabel: string = \"Expand\";\n @Prop() collapseLabel: string = \"Collapse\";\n @Prop() ariaMultiSelectLabel: string = \"Multi-select dropdown\";\n @Prop() ariaMultiSelectLabelledBy: string = \"\";\n @Prop() ariaMultiSelectDescribedBy: string = \"\";\n @Prop() ariaSearchLabel: string = \"Search options\";\n @Prop() ariaClearLabel: string = \"Clear all selections\";\n @Prop() ariaToggleLabel: string = \"Toggle dropdown\";\n @Prop() ariaSelectAllLabel: string = \"Select all options\";\n @Prop() ariaExpandAllLabel: string = \"Expand all categories\";\n @Prop() ariaCollapseAllLabel: string = \"Collapse all categories\";\n\n @State() internalError: boolean = false;\n @State() internalErrorMessage: string;\n @State() persistentSelectedOptions: Option[] = [];\n @State() dropdownOpen = false;\n @State() dropdownFlipped: boolean;\n @State() searchTerm: string = '';\n\n @Event() ifxSelect: EventEmitter;\n @Event() ifxOpen: EventEmitter;\n\n @Element() el: HTMLElement;\n dropdownElement!: HTMLElement;\n\n @AttachInternals() internals: ElementInternals;\n private parseChildOptions(): Option[] {\n const options: Option[] = [];\n const childElements = Array.from(this.el.children);\n\n childElements.forEach((child, index) => {\n if (child.tagName === 'IFX-MULTISELECT-OPTION') {\n const option = this.parseOptionElement(child as HTMLElement, index);\n if (option) {\n options.push(option);\n }\n }\n });\n\n return options;\n }\n\n private parseOptionElement(element: HTMLElement, index: number): Option | null {\n const value = element.getAttribute('value') || `option-${index}`;\n const selected = element.hasAttribute('selected');\n const disabled = element.hasAttribute('disabled');\n const indeterminate = element.hasAttribute('indeterminate');\n\n const option: Option = {\n value,\n selected,\n disabled,\n indeterminate\n };\n\n const nestedOptions = Array.from(element.children)\n .filter(child => child.tagName === 'IFX-MULTISELECT-OPTION')\n .map((child, childIndex) => this.parseOptionElement(child as HTMLElement, childIndex))\n .filter(opt => opt !== null) as Option[];\n\n if (nestedOptions.length > 0) {\n option.children = nestedOptions;\n }\n\n return option;\n }\n\n loadInitialOptions() {\n this.internalError = this.error;\n this.internalErrorMessage = this.errorMessage;\n\n const allOptions = this.parseChildOptions();\n const initiallySelected = this.collectSelectedOptions(allOptions);\n const initiallySelectedNotInState = initiallySelected.filter(init =>\n !this.persistentSelectedOptions.some(opt => opt.value == init.value)\n );\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, ...initiallySelectedNotInState];\n }\n\n private collectSelectedOptions(options: Option[]): Option[] {\n let selectedOptions: Option[] = [];\n\n for (const option of options) {\n if (option.selected) {\n if (option.children && option.children.length > 0) {\n selectedOptions = selectedOptions.concat(this.collectLeafOptions(option.children));\n } else {\n if (!selectedOptions.some(existingOption => existingOption.value === option.value)) {\n selectedOptions.push(option);\n }\n }\n } else {\n if (option.children && option.children.length > 0) {\n selectedOptions = selectedOptions.concat(this.collectSelectedOptions(option.children));\n }\n }\n }\n\n return selectedOptions;\n }\n\n private collectLeafOptions(children: Option[]): Option[] {\n let leafOptions = [];\n\n for (const child of children) {\n if (child.children && child.children.length > 0) {\n leafOptions = leafOptions.concat(this.collectLeafOptions(child.children));\n } else {\n leafOptions.push(child);\n }\n }\n return leafOptions;\n }\n\n handleSearch = debounce((targetElement: HTMLInputElement) => {\n const searchTerm = targetElement.value.toLowerCase();\n const isSearchActive = searchTerm !== '';\n\n this.searchTerm = searchTerm;\n\n const wrapper = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper');\n if (wrapper) {\n if (isSearchActive) {\n wrapper.classList.remove('active');\n } else {\n const searchField = this.el.shadowRoot.querySelector('ifx-search-field');\n const searchFieldHasFocus = searchField && searchField.matches(':focus-within');\n if (!searchFieldHasFocus) {\n wrapper.classList.add('active');\n }\n }\n }\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n if (isSearchActive) {\n optionsContainer.classList.add('has-search-filter');\n } else {\n optionsContainer.classList.remove('has-search-filter');\n }\n }\n\n requestAnimationFrame(() => {\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n allOptions.forEach(option => {\n const searchEvent = new CustomEvent('ifx-search-filter', {\n detail: { searchTerm, isActive: isSearchActive }\n });\n option.dispatchEvent(searchEvent);\n });\n\n if (isSearchActive) {\n setTimeout(() => {\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n let visibleCount = 0;\n\n allOptions.forEach(option => {\n const style = window.getComputedStyle(option);\n const rect = option.getBoundingClientRect();\n\n if (style.display !== 'none' &&\n style.visibility !== 'hidden' &&\n style.opacity !== '0' &&\n rect.height > 0) {\n visibleCount++;\n }\n });\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n if (visibleCount === 0) {\n optionsContainer.classList.add('show-no-results');\n } else {\n optionsContainer.classList.remove('show-no-results');\n }\n }\n }, 200);\n } else {\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n optionsContainer.classList.remove('show-no-results');\n }\n }\n });\n }, 150);\n\n private handleSearchFocus(hasFocus: boolean) {\n const wrapper = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper');\n if (wrapper) {\n if (hasFocus || this.searchTerm !== '') {\n wrapper.classList.remove('active');\n } else {\n wrapper.classList.add('active');\n }\n }\n }\n\n positionDropdown() {\n const wrapperRect = this.el.shadowRoot.querySelector('.ifx-multiselect-wrapper')?.getBoundingClientRect();\n const spaceBelow = window.innerHeight - wrapperRect.bottom;\n const spaceAbove = wrapperRect.top;\n\n if ((spaceAbove > spaceBelow && wrapperRect.height > spaceBelow) || (wrapperRect.bottom > window.innerHeight)) {\n this.dropdownFlipped = true;\n } else {\n this.dropdownFlipped = false;\n }\n }\n\n private pendingSelectionUpdate = false;\n public updateSlotBasedSelections(emitEvent: boolean = false) {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const selectedLeafOptions: Option[] = [];\n\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.selected && !instance.hasChildren) {\n selectedLeafOptions.push({\n value: instance.value,\n selected: true,\n disabled: instance.disabled\n });\n }\n });\n\n this.persistentSelectedOptions = selectedLeafOptions;\n\n if (emitEvent) {\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }\n }\n\n private updateInitialParentStates() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const optionsByDepth = Array.from(allOptionElements)\n .map(el => ({\n element: el,\n instance: (el as any)['__stencil_instance'],\n depth: parseInt(el.getAttribute('data-level') || '0')\n }))\n .filter(item => item.instance)\n .sort((a, b) => b.depth - a.depth);\n\n optionsByDepth.forEach(({ instance }) => {\n if (instance.hasChildren) {\n this.updateParentState(instance);\n }\n });\n }\n\n private updateParentState(parentInstance: any) {\n const directChildren = Array.from(parentInstance.el.children as HTMLCollection)\n .filter((child: Element) => child.tagName === 'IFX-MULTISELECT-OPTION')\n .map(child => (child as any)['__stencil_instance'])\n .filter(instance => instance !== null);\n\n const selectedCount = directChildren.filter(child => child.selected).length;\n const indeterminateCount = directChildren.filter(child => child.indeterminate).length;\n const totalCount = directChildren.length;\n\n if (selectedCount === totalCount && indeterminateCount === 0) {\n parentInstance.selected = true;\n parentInstance.indeterminate = false;\n } else if (selectedCount === 0 && indeterminateCount === 0) {\n parentInstance.selected = false;\n parentInstance.indeterminate = false;\n } else {\n parentInstance.selected = false;\n parentInstance.indeterminate = true;\n }\n }\n\n componentDidLoad() {\n setTimeout(() => {\n this.positionDropdown();\n }, 500);\n\n this.el.addEventListener('ifx-option-changed', () => {\n if (!this.pendingSelectionUpdate) {\n this.pendingSelectionUpdate = true;\n requestAnimationFrame(() => {\n this.updateSlotBasedSelections(true);\n setTimeout(() => {\n this.pendingSelectionUpdate = false;\n }, 0);\n });\n }\n });\n\n setTimeout(() => {\n this.updateSlotBasedSelections(false);\n this.updateInitialParentStates();\n }, 100);\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-multiselect', framework)\n }\n this.loadInitialOptions();\n }\n\n @Watch('error')\n updateInternalError() {\n this.internalError = this.error;\n }\n\n @Watch('errorMessage')\n updateInternalErrorMessage() {\n this.internalErrorMessage = this.errorMessage;\n }\n\n @Watch('persistentSelectedOptions')\n onSelectionChange(newValue: Option[], _: Option[]) {\n const formData = new FormData();\n newValue.forEach(option => formData.append(this.name, option.value));\n this.internals.setFormValue(formData);\n }\n collapseAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.hasChildren) {\n instance.isExpanded = false;\n }\n });\n }\n\n expandAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance && instance.hasChildren) {\n instance.isExpanded = true;\n }\n });\n }\n\n selectAll() {\n this.resetSearch();\n\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance) {\n if (instance.hasChildren) {\n instance.isExpanded = true;\n } else {\n instance.selected = true;\n }\n }\n });\n\n setTimeout(() => {\n this.updateInitialParentStates();\n this.updateSlotBasedSelections(false);\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }, 0);\n }\n\n @Method()\n async clearSelection() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n allOptionElements.forEach((optionEl: any) => {\n const instance = optionEl['__stencil_instance'];\n if (instance) {\n instance.selected = false;\n instance.indeterminate = false;\n if (instance.hasChildren) {\n instance.isExpanded = false;\n }\n }\n });\n\n this.persistentSelectedOptions = [];\n\n setTimeout(() => {\n this.updateSlotBasedSelections(false);\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }, 0);\n }\n\n handleDocumentClick = (event: Event) => {\n const path = event.composedPath();\n if (!path.includes(this.dropdownElement)) {\n this.dropdownOpen = false;\n document.removeEventListener('click', this.handleDocumentClick);\n this.resetSearch();\n this.ifxOpen.emit(this.dropdownOpen);\n }\n }\n\n toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n setTimeout(() => {\n if (this.dropdownOpen) {\n document.addEventListener('click', this.handleDocumentClick);\n } else {\n this.resetSearch();\n }\n this.ifxOpen.emit(this.dropdownOpen);\n }, 0);\n }\n\n private resetSearch() {\n this.searchTerm = '';\n\n const searchField = this.el.shadowRoot.querySelector('ifx-search-field') as any;\n if (searchField) {\n searchField.value = '';\n }\n\n const optionsContainer = this.el.shadowRoot.querySelector('.ifx-multiselect-options');\n if (optionsContainer) {\n optionsContainer.classList.remove('has-search-filter');\n }\n\n const allOptions = this.el.querySelectorAll('ifx-multiselect-option');\n allOptions.forEach(option => {\n const searchEvent = new CustomEvent('ifx-search-filter', {\n detail: { searchTerm: '', isActive: false }\n });\n option.dispatchEvent(searchEvent);\n });\n }\n\n handleWrapperClick(event: MouseEvent) {\n this.positionDropdown();\n\n if (event.currentTarget === event.target) {\n this.toggleDropdown();\n }\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (this.disabled) return;\n\n // If dropdown is closed, only allow opening\n if (!this.dropdownOpen) {\n switch (event.code) {\n case 'Enter':\n case 'Space':\n case 'ArrowDown':\n event.preventDefault();\n this.toggleDropdown();\n break;\n }\n return;\n }\n\n // Dropdown is open - handle navigation and controls\n switch (event.code) {\n case 'Escape':\n event.preventDefault();\n this.toggleDropdown();\n break;\n case 'Enter':\n case 'Space':\n // Don't close dropdown when pressing space/enter in controls area\n const target = event.target as HTMLElement;\n if (!target.closest('.ifx-multiselect-dropdown-functions')) {\n event.preventDefault();\n this.toggleDropdown();\n }\n break;\n case 'ArrowDown':\n case 'ArrowUp':\n // Focus first/last option for navigation\n event.preventDefault();\n this.focusFirstOption();\n break;\n }\n }\n\n private focusFirstOption() {\n const firstOption = this.el.querySelector('ifx-multiselect-option:not(.search-hidden)');\n if (firstOption) {\n const labelElement = firstOption.shadowRoot?.querySelector('.option-label') as HTMLElement;\n labelElement?.focus();\n }\n }\n\n private renderSelectAll() {\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n const leafOptions = Array.from(allOptionElements).filter((el: any) => !el.hasChildren);\n const selectedLeafOptions = Array.from(allOptionElements).filter((el: any) => !el.hasChildren && el.selected);\n\n const allSelected = leafOptions.length > 0 && selectedLeafOptions.length === leafOptions.length;\n\n const toggleSelectAll = (event?: Event) => {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (allSelected) {\n this.clearSelection();\n } else {\n this.selectAll();\n }\n };\n\n return (\n <div class=\"select-all-wrapper\">\n <ifx-checkbox\n id='selectAll'\n checked={allSelected}\n size=\"s\"\n aria-label={this.ariaSelectAllLabel}\n onClick={toggleSelectAll}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n toggleSelectAll(e);\n }\n }}\n >\n {this.selectAllLabel}\n </ifx-checkbox>\n </div>\n );\n }\n\n private renderNoResultsMessage() {\n return (\n <div class=\"ifx-multiselect-no-results\">\n <div class=\"no-results-content\">\n <span class=\"no-results-text\">{this.noResultsMessage}</span>\n </div>\n </div>\n );\n }\n\n render() {\n const selectedOptionsLabels = this.persistentSelectedOptions\n .map((option) => {\n const optionElement = this.el.querySelector(`ifx-multiselect-option[value=\"${option.value}\"]`);\n return optionElement?.textContent?.trim() || option.value;\n })\n .join(', ');\n\n const hasSelections = this.persistentSelectedOptions.length > 0;\n\n let isFlatMultiselect = false;\n const allOptionElements = this.el.querySelectorAll('ifx-multiselect-option');\n if (allOptionElements.length > 0) {\n isFlatMultiselect = Array.from(allOptionElements).every(option => option.children.length === 0);\n }\n\n return (\n <div class={`ifx-multiselect-container`} ref={el => this.dropdownElement = el as HTMLElement}>\n {\n this.label ?\n <div class=\"ifx-label-wrapper\">\n <span>{this.label}</span>\n </div> : null\n }\n <div class={`ifx-multiselect-wrapper\n ${this.dropdownOpen ? 'active' : ''}\n ${this.dropdownFlipped ? 'is-flipped' : ''}\n ${this.internalError ? 'error' : \"\"}\n ${this.disabled ? 'disabled' : \"\"}`}\n role=\"combobox\"\n aria-label={this.ariaMultiSelectLabel}\n aria-labelledby={this.ariaMultiSelectLabelledBy || undefined}\n aria-describedby={this.ariaMultiSelectDescribedBy || undefined}\n aria-expanded={this.dropdownOpen}\n aria-haspopup=\"listbox\"\n aria-disabled={this.disabled}\n tabindex=\"0\"\n onClick={this.disabled ? undefined : (event) => this.handleWrapperClick(event)}\n onKeyDown={this.disabled ? undefined : (event) => this.handleKeyDown(event)} >\n <div class={`ifx-multiselect-input\n ${hasSelections ? '' : 'placeholder'}\n `}\n onClick={this.disabled ? undefined : () => this.toggleDropdown()}\n >\n {hasSelections ? selectedOptionsLabels : this.placeholder}\n </div>\n {this.dropdownOpen && (\n <div class=\"ifx-multiselect-dropdown-menu\">\n\n {(this.showSearch || this.showSelectAll || (this.showExpandCollapse && !isFlatMultiselect)) && (\n <div class=\"ifx-multiselect-dropdown-functions\" onClick={(e) => e.stopPropagation()}>\n {this.showSearch && (\n <div class=\"ifx-multiselect-dropdown-search\">\n <ifx-search-field\n class=\"search-input\"\n placeholder={this.searchPlaceholder}\n size=\"s\"\n show-delete-icon=\"true\"\n aria-label={this.ariaSearchLabel}\n onKeyDown={(e) => { e.stopPropagation() }}\n onIfxInput={(event) => this.handleSearch(event.target)}\n onFocus={() => this.handleSearchFocus(true)}\n onBlur={() => this.handleSearchFocus(false)}\n ></ifx-search-field>\n </div>\n )}\n\n <div class=\"ifx-multiselect-dropdown-controls\">\n {this.showSelectAll && this.renderSelectAll()}\n {this.showExpandCollapse && !isFlatMultiselect && (\n <div class=\"expand-collapse-controls\">\n <span\n class=\"control-item\"\n role=\"button\"\n tabIndex={0}\n aria-label={this.ariaExpandAllLabel}\n onClick={(e) => { e.stopPropagation(); this.expandAll(); }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n this.expandAll();\n }\n }}\n >\n {this.expandLabel}\n </span>\n <span\n class=\"control-item\"\n role=\"button\"\n tabIndex={0}\n aria-label={this.ariaCollapseAllLabel}\n onClick={(e) => { e.stopPropagation(); this.collapseAll(); }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n this.collapseAll();\n }\n }}\n >\n {this.collapseLabel}\n </span>\n </div>\n )}\n </div>\n </div>\n )}\n\n <div class=\"ifx-multiselect-options\" role=\"listbox\" aria-multiselectable=\"true\">\n <slot />\n {this.searchTerm && this.showNoResultsMessage && this.renderNoResultsMessage()}\n </div>\n </div>\n )}\n <div class='ifx-multiselect-icon-container'>\n\n {/* Clear Button - will show only if there's a selection */}\n {this.persistentSelectedOptions.length > 0 && (\n <div class={`ifx-clear-button ${!this.showClearButton ? 'hide' : ''}`} onClick={this.disabled ? undefined : () => this.clearSelection()}>\n <ifx-icon icon=\"cRemove16\"></ifx-icon>\n </div>\n )}\n <div class=\"icon-wrapper-up\" onClick={this.disabled ? undefined : () => this.toggleDropdown()}>\n <ifx-icon\n key='icon-up'\n icon='chevron-up-16'></ifx-icon>\n </div>\n <div class=\"icon-wrapper-down\" onClick={this.disabled ? undefined : () => this.toggleDropdown()}>\n <ifx-icon\n key='icon-down'\n icon='chevron-down-16'></ifx-icon>\n </div>\n </div>\n\n </div>\n {\n this.internalError ?\n <div class=\"ifx-error-message-wrapper\">\n <span>{this.internalErrorMessage}</span>\n </div> : null\n }\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h } from './p-f8e6a4ef.js';
2
- import { d as detectFramework, t as trackComponent } from './p-e8504e6b.js';
2
+ import { d as detectFramework, t as trackComponent } from './p-0b7e3932.js';
3
3
  import { i as isNestedInIfxComponent } from './p-1ecafb97.js';
4
4
 
5
5
  const progressBarCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}:host{display:flex;width:100%}.progress-bar{height:16px;bottom:0;right:0;top:0;left:0;display:flex;height:20px;border-radius:1px;width:100%;overflow:hidden;background-color:#EEEDED;font-family:var(--ifx-font-family)}.progress-bar.s{height:4px}.progress-bar .label{font-style:normal;font-size:0.875rem;font-weight:400;line-height:1.25rem;color:#FFFFFF}.progress-bar .progress{display:flex;align-items:center;justify-content:center;min-width:fit-content;height:100%;background-color:#0A8276;transition:width 0.2s ease}";
@@ -57,4 +57,4 @@ function defineCustomElement() {
57
57
 
58
58
  export { ProgressBar as P, defineCustomElement as d };
59
59
 
60
- //# sourceMappingURL=p-bb9b541f.js.map
60
+ //# sourceMappingURL=p-34a026ea.js.map
@@ -1 +1 @@
1
- {"file":"p-bb9b541f.js","mappings":";;;;AAAA,MAAM,cAAc,GAAG,ukBAAukB,CAAC;AAC/lB,6BAAe,cAAc;;MCShB,WAAW;IALxB;;;;QAOU,UAAK,GAAW,CAAC,CAAC;QAElB,cAAS,GAAY,KAAK,CAAC;KA4BpC;IAvBC,YAAY,CAAC,QAAgB,EAAE,QAAgB;QAC7C,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;SAC/B;KACF;IAED,iBAAiB;QACf,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAA;SAC9C;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;KACjC;IAED,MAAM;QACJ,QACE,0EAAgB,gBAAgB,gBAAa,IAAI,CAAC,KAAK,EAAG,KAAK,EAAE,gBAAgB,IAAI,CAAC,IAAI,EAAE,IAC1F,4DAAK,KAAK,EAAC,UAAU,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,EAAE,IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,6DAAM,KAAK,EAAC,OAAO,IAAE,GAAG,IAAI,CAAC,aAAa,GAAG,CAAQ,CACrH,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/progress-bar/progress-bar.scss?tag=ifx-progress-bar&encapsulation=shadow","src/components/progress-bar/progress-bar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n width: 100%;\n}\n\n.progress-bar {\n height: tokens.$ifxSize200;\n bottom: 0;\n right: 0;\n top: 0;\n left: 0;\n display: flex;\n height: tokens.$ifxSize250;\n border-radius: tokens.$ifxBorderRadius12;\n width: 100%; // Ensure the bar itself can grow up to 100% width\n overflow: hidden; // Ensures that the inner progress bar doesn't exceed the width of the outer progress bar\n background-color: tokens.$ifxColorEngineering200;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n \n \n &.s {\n height: 4px;\n }\n\n .label {\n font-style: normal;\n font-size: tokens.$ifxFontSizeS;\n font-weight: 400;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorBaseWhite;\n }\n \n .progress {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: fit-content;\n height: 100%;\n background-color: #0A8276;\n transition: width 0.2s ease;\n }\n}","import { Component, Prop, h, State, Watch, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-progress-bar',\n styleUrl: 'progress-bar.scss',\n shadow: true\n})\nexport class ProgressBar {\n @Element() el: HTMLElement;\n @Prop() value: number = 0;\n @Prop() size: string;\n @Prop() showLabel: boolean = false;\n\n @State() internalValue: number;\n\n @Watch('value')\n valueChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.internalValue = newValue;\n }\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-progress-bar', framework)\n }\n this.internalValue = this.value;\n }\n\n render() {\n return (\n <div aria-label='a progress bar' aria-value={this.value} class={`progress-bar ${this.size}`}>\n <div class=\"progress\" style={{ width: `${this.internalValue}%` }}>\n {this.showLabel && this.size !== \"s\" && this.internalValue !== 0 && <span class=\"label\">{`${this.internalValue}%`}</span>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-34a026ea.js","mappings":";;;;AAAA,MAAM,cAAc,GAAG,ukBAAukB,CAAC;AAC/lB,6BAAe,cAAc;;MCShB,WAAW;IALxB;;;;QAOU,UAAK,GAAW,CAAC,CAAC;QAElB,cAAS,GAAY,KAAK,CAAC;KA4BpC;IAvBC,YAAY,CAAC,QAAgB,EAAE,QAAgB;QAC7C,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;SAC/B;KACF;IAED,iBAAiB;QACf,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAA;SAC9C;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;KACjC;IAED,MAAM;QACJ,QACE,0EAAgB,gBAAgB,gBAAa,IAAI,CAAC,KAAK,EAAG,KAAK,EAAE,gBAAgB,IAAI,CAAC,IAAI,EAAE,IAC1F,4DAAK,KAAK,EAAC,UAAU,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,EAAE,IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,6DAAM,KAAK,EAAC,OAAO,IAAE,GAAG,IAAI,CAAC,aAAa,GAAG,CAAQ,CACrH,CACF,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/progress-bar/progress-bar.scss?tag=ifx-progress-bar&encapsulation=shadow","src/components/progress-bar/progress-bar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n width: 100%;\n}\n\n.progress-bar {\n height: tokens.$ifxSize200;\n bottom: 0;\n right: 0;\n top: 0;\n left: 0;\n display: flex;\n height: tokens.$ifxSize250;\n border-radius: tokens.$ifxBorderRadius12;\n width: 100%; // Ensure the bar itself can grow up to 100% width\n overflow: hidden; // Ensures that the inner progress bar doesn't exceed the width of the outer progress bar\n background-color: tokens.$ifxColorEngineering200;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n \n \n &.s {\n height: 4px;\n }\n\n .label {\n font-style: normal;\n font-size: tokens.$ifxFontSizeS;\n font-weight: 400;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorBaseWhite;\n }\n \n .progress {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: fit-content;\n height: 100%;\n background-color: #0A8276;\n transition: width 0.2s ease;\n }\n}","import { Component, Prop, h, State, Watch, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-progress-bar',\n styleUrl: 'progress-bar.scss',\n shadow: true\n})\nexport class ProgressBar {\n @Element() el: HTMLElement;\n @Prop() value: number = 0;\n @Prop() size: string;\n @Prop() showLabel: boolean = false;\n\n @State() internalValue: number;\n\n @Watch('value')\n valueChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.internalValue = newValue;\n }\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-progress-bar', framework)\n }\n this.internalValue = this.value;\n }\n\n render() {\n return (\n <div aria-label='a progress bar' aria-value={this.value} class={`progress-bar ${this.size}`}>\n <div class=\"progress\" style={{ width: `${this.internalValue}%` }}>\n {this.showLabel && this.size !== \"s\" && this.internalValue !== 0 && <span class=\"label\">{`${this.internalValue}%`}</span>}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-f8e6a4ef.js';
2
- import { d as defineCustomElement$1 } from './p-28bc54da.js';
2
+ import { d as defineCustomElement$1 } from './p-feb602bf.js';
3
3
 
4
4
  const accordionItemCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}.accordion-item{border-radius:3px;transition:all 0.3s;font-family:var(--ifx-font-family)}.accordion-title:focus{outline:none}.accordion-title:focus::after{content:\"\";display:block;position:absolute;top:-4px;bottom:-4px;left:-4px;right:-4px;border-radius:5px;border:2px solid #0A8276;box-sizing:border-box}.accordion-title:hover{border:1px solid #EEEDED;color:#08665C}.accordion-title{display:flex;align-items:center;position:relative;padding:12px 16px;gap:12px;color:#0A8276;background-color:#FFFFFF;border:1px solid #EEEDED;cursor:pointer;margin:4px}.accordion-caption{font-weight:600;font-size:1.125rem}.accordion-content{gap:8px;line-height:24px;font-size:1rem;font-weight:400}.inner-content{background-color:#FFFFFF;padding:24px;word-wrap:break-word;overflow-wrap:anywhere;align-self:stretch;}.accordion-icon{font-weight:bold;display:flex;transition:transform 0.3s}.accordion-icon:hover{color:#08665C}.accordion-item.open .accordion-icon{transform:rotate(-180deg)}";
5
5
  const IfxAccordionItemStyle0 = accordionItemCss;
@@ -116,4 +116,4 @@ function defineCustomElement() {
116
116
 
117
117
  export { IfxAccordionItem as I, defineCustomElement as d };
118
118
 
119
- //# sourceMappingURL=p-6ff767df.js.map
119
+ //# sourceMappingURL=p-5142c6b5.js.map
@@ -1 +1 @@
1
- {"file":"p-6ff767df.js","mappings":"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","names":[],"sources":["src/components/accordion/accordionItem.scss?tag=ifx-accordion-item&encapsulation=shadow","src/components/accordion/accordionItem.tsx"],"sourcesContent":["// ifxAccordionItem.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n\n.accordion-item {\n border-radius: 3px;\n transition: all 0.3s;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n\n}\n\n.accordion-title:focus {\n outline: none;\n}\n\n// workaround to add corner radius to outline\n.accordion-title:focus::after {\n content: '';\n display: block;\n position: absolute;\n top: -4px;\n bottom: -4px;\n left: -4px;\n right: -4px;\n border-radius: 5px;\n border: 2px solid tokens.$ifxColorOcean500;\n box-sizing: border-box;\n}\n\n.accordion-title:hover {\n border: 1px solid tokens.$ifxColorEngineering200;\n color: tokens.$ifxColorOcean600;\n}\n\n.accordion-title {\n display: flex;\n align-items: center;\n position: relative;\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n gap: tokens.$ifxSpace150;\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering200;\n cursor: pointer;\n margin: 4px;\n}\n\n.accordion-caption {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeL;\n}\n\n.accordion-content {\n gap: tokens.$ifxSpace100;\n //transition: max-height 0.3s ease-in-out;\n line-height: 24px;\n font-size: tokens.$ifxFontSizeM;\n font-weight: 400;\n}\n\n.inner-content {\n background-color: tokens.$ifxColorBaseWhite;\n padding: tokens.$ifxSpace300;\n // white-space: pre-wrap;\n /* wraps text at spaces and within words */\n word-wrap: break-word;\n /* breaks text within a word if necessary */\n overflow-wrap: anywhere;\n align-self: stretch;\n\n /* breaks text at arbitrary points when needed */\n}\n\n.accordion-icon {\n font-weight: bold;\n display: flex;\n transition: transform 0.3s;\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n\n }\n}\n\n\n\n.accordion-item.open .accordion-icon {\n transform: rotate(-180deg);\n}","//ifxAccordionItem\nimport { Component, Prop, h, State, Event, EventEmitter, Watch, Listen, Element } from '@stencil/core';\n\n@Component({\n tag: 'ifx-accordion-item',\n styleUrl: 'accordionItem.scss',\n shadow: true,\n})\nexport class IfxAccordionItem {\n @Element() el;\n @Prop() caption: string;\n @Prop({\n mutable: true,\n }) open: boolean = false;\n @Prop() AriaLevel = 3;\n @State() internalOpen: boolean = false;\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n private contentEl!: HTMLElement;\n private titleEl!: HTMLElement;\n private resizeObserver!: ResizeObserver;\n\n componentWillLoad() {\n this.internalOpen = this.open;\n }\n\n componentDidLoad() {\n this.openAccordionItem()\n\n this.contentEl = this.el.shadowRoot.querySelector('#accordion-content');\n if (this.contentEl) {\n this.attachResizeObserver();\n }\n }\n\n componentDidUpdate() {\n this.openAccordionItem()\n }\n\n @Watch('open')\n openChanged(newValue: boolean) {\n this.internalOpen = newValue;\n }\n\n toggleOpen() {\n this.internalOpen = !this.internalOpen;\n this.open = this.internalOpen;\n\n if (this.internalOpen) {\n this.ifxOpen.emit({ isOpen: this.internalOpen });\n } else {\n this.ifxClose.emit({ isClosed: !this.internalOpen });\n }\n }\n\n openAccordionItem() {\n if (this.contentEl) {\n if (this.internalOpen) {\n this.contentEl.style.height = 'auto'; \n const updatedHeight = this.contentEl.scrollHeight; \n this.contentEl.style.height = `${updatedHeight}px`; \n this.contentEl.style.overflow = 'visible';\n } else {\n this.contentEl.style.height = '0';\n this.contentEl.style.overflow = 'hidden';\n }\n }\n }\n\n attachResizeObserver() { \n const innerContentEl = this.el.shadowRoot.querySelector('.inner-content');\n\n if (innerContentEl) {\n this.resizeObserver = new ResizeObserver(() => {\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n });\n\n this.resizeObserver.observe(innerContentEl); \n }\n }\n\n @Listen('keydown')\n handleKeydown(ev: KeyboardEvent) {\n const path = ev.composedPath();\n\n if(!path.includes(this.titleEl)) { \n return;\n }\n\n switch (ev.key) {\n case 'Enter': // fallthrough\n case ' ': // space\n ev.preventDefault();\n this.toggleOpen();\n break;\n }\n }\n\n\n render() {\n return (\n <div class={`accordion-item ${this.internalOpen ? 'open' : ''}`}>\n <div role=\"button\" aria-expanded={this.internalOpen} aria-controls=\"accordion-content\" class=\"accordion-title\" onClick={() => this.toggleOpen()} tabindex='0' ref={(el) => (this.titleEl = el as HTMLElement)}>\n <span aria-hidden=\"true\" role=\"heading\" aria-level={String(this.AriaLevel) as string} class=\"accordion-icon\">\n <ifx-icon icon=\"chevron-down-16\"/>\n </span>\n <span id=\"accordion-caption\" class=\"accordion-caption\">{this.caption}</span>\n </div>\n <div id=\"accordion-content\" class=\"accordion-content\" ref={(el) => (this.contentEl = el as HTMLElement)} role=\"region\" aria-labelledby=\"accordion-caption\">\n <div class=\"inner-content\">\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}"],"version":3}
1
+ {"file":"p-5142c6b5.js","mappings":"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","names":[],"sources":["src/components/accordion/accordionItem.scss?tag=ifx-accordion-item&encapsulation=shadow","src/components/accordion/accordionItem.tsx"],"sourcesContent":["// ifxAccordionItem.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n\n.accordion-item {\n border-radius: 3px;\n transition: all 0.3s;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n\n}\n\n.accordion-title:focus {\n outline: none;\n}\n\n// workaround to add corner radius to outline\n.accordion-title:focus::after {\n content: '';\n display: block;\n position: absolute;\n top: -4px;\n bottom: -4px;\n left: -4px;\n right: -4px;\n border-radius: 5px;\n border: 2px solid tokens.$ifxColorOcean500;\n box-sizing: border-box;\n}\n\n.accordion-title:hover {\n border: 1px solid tokens.$ifxColorEngineering200;\n color: tokens.$ifxColorOcean600;\n}\n\n.accordion-title {\n display: flex;\n align-items: center;\n position: relative;\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n gap: tokens.$ifxSpace150;\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering200;\n cursor: pointer;\n margin: 4px;\n}\n\n.accordion-caption {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeL;\n}\n\n.accordion-content {\n gap: tokens.$ifxSpace100;\n //transition: max-height 0.3s ease-in-out;\n line-height: 24px;\n font-size: tokens.$ifxFontSizeM;\n font-weight: 400;\n}\n\n.inner-content {\n background-color: tokens.$ifxColorBaseWhite;\n padding: tokens.$ifxSpace300;\n // white-space: pre-wrap;\n /* wraps text at spaces and within words */\n word-wrap: break-word;\n /* breaks text within a word if necessary */\n overflow-wrap: anywhere;\n align-self: stretch;\n\n /* breaks text at arbitrary points when needed */\n}\n\n.accordion-icon {\n font-weight: bold;\n display: flex;\n transition: transform 0.3s;\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n\n }\n}\n\n\n\n.accordion-item.open .accordion-icon {\n transform: rotate(-180deg);\n}","//ifxAccordionItem\nimport { Component, Prop, h, State, Event, EventEmitter, Watch, Listen, Element } from '@stencil/core';\n\n@Component({\n tag: 'ifx-accordion-item',\n styleUrl: 'accordionItem.scss',\n shadow: true,\n})\nexport class IfxAccordionItem {\n @Element() el;\n @Prop() caption: string;\n @Prop({\n mutable: true,\n }) open: boolean = false;\n @Prop() AriaLevel = 3;\n @State() internalOpen: boolean = false;\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n private contentEl!: HTMLElement;\n private titleEl!: HTMLElement;\n private resizeObserver!: ResizeObserver;\n\n componentWillLoad() {\n this.internalOpen = this.open;\n }\n\n componentDidLoad() {\n this.openAccordionItem()\n\n this.contentEl = this.el.shadowRoot.querySelector('#accordion-content');\n if (this.contentEl) {\n this.attachResizeObserver();\n }\n }\n\n componentDidUpdate() {\n this.openAccordionItem()\n }\n\n @Watch('open')\n openChanged(newValue: boolean) {\n this.internalOpen = newValue;\n }\n\n toggleOpen() {\n this.internalOpen = !this.internalOpen;\n this.open = this.internalOpen;\n\n if (this.internalOpen) {\n this.ifxOpen.emit({ isOpen: this.internalOpen });\n } else {\n this.ifxClose.emit({ isClosed: !this.internalOpen });\n }\n }\n\n openAccordionItem() {\n if (this.contentEl) {\n if (this.internalOpen) {\n this.contentEl.style.height = 'auto'; \n const updatedHeight = this.contentEl.scrollHeight; \n this.contentEl.style.height = `${updatedHeight}px`; \n this.contentEl.style.overflow = 'visible';\n } else {\n this.contentEl.style.height = '0';\n this.contentEl.style.overflow = 'hidden';\n }\n }\n }\n\n attachResizeObserver() { \n const innerContentEl = this.el.shadowRoot.querySelector('.inner-content');\n\n if (innerContentEl) {\n this.resizeObserver = new ResizeObserver(() => {\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n });\n\n this.resizeObserver.observe(innerContentEl); \n }\n }\n\n @Listen('keydown')\n handleKeydown(ev: KeyboardEvent) {\n const path = ev.composedPath();\n\n if(!path.includes(this.titleEl)) { \n return;\n }\n\n switch (ev.key) {\n case 'Enter': // fallthrough\n case ' ': // space\n ev.preventDefault();\n this.toggleOpen();\n break;\n }\n }\n\n\n render() {\n return (\n <div class={`accordion-item ${this.internalOpen ? 'open' : ''}`}>\n <div role=\"button\" aria-expanded={this.internalOpen} aria-controls=\"accordion-content\" class=\"accordion-title\" onClick={() => this.toggleOpen()} tabindex='0' ref={(el) => (this.titleEl = el as HTMLElement)}>\n <span aria-hidden=\"true\" role=\"heading\" aria-level={String(this.AriaLevel) as string} class=\"accordion-icon\">\n <ifx-icon icon=\"chevron-down-16\"/>\n </span>\n <span id=\"accordion-caption\" class=\"accordion-caption\">{this.caption}</span>\n </div>\n <div id=\"accordion-content\" class=\"accordion-content\" ref={(el) => (this.contentEl = el as HTMLElement)} role=\"region\" aria-labelledby=\"accordion-caption\">\n <div class=\"inner-content\">\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h } from './p-f8e6a4ef.js';
2
- import { d as detectFramework, t as trackComponent } from './p-e8504e6b.js';
2
+ import { d as detectFramework, t as trackComponent } from './p-0b7e3932.js';
3
3
  import { i as isNestedInIfxComponent } from './p-1ecafb97.js';
4
4
 
5
5
  const accordionCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}:host{display:block}.accordion-wrapper{display:flex;flex-direction:column;gap:8px;font-family:var(--ifx-font-family)}";
@@ -54,4 +54,4 @@ function defineCustomElement() {
54
54
 
55
55
  export { Accordion as A, defineCustomElement as d };
56
56
 
57
- //# sourceMappingURL=p-29a39b8c.js.map
57
+ //# sourceMappingURL=p-756867aa.js.map
@@ -1 +1 @@
1
- {"file":"p-29a39b8c.js","mappings":";;;;AAAA,MAAM,YAAY,GAAG,wLAAwL,CAAC;AAC9M,2BAAe,YAAY;;MCSd,SAAS;IALtB;;;;QAOU,iBAAY,GAAY,KAAK,CAAC;KA6BvC;IA3BC,iBAAiB;QACf,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;SAC3C;KACF;IAGD,MAAM,UAAU,CAAC,KAAkB;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACzE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,MAAM,WAAW,GAAG,IAAmC,CAAC;gBACxD,IAAI,WAAW,KAAK,KAAK,CAAC,MAAM,KAAK,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE;oBAC5D,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;iBAC1B;aACF;SACF;KACF;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,mBAAmB,IAC5B,8DAAQ,CACJ,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/accordion/accordion.scss?tag=ifx-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx"],"sourcesContent":["// ifxAccordion.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.accordion-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n}","import { Component, h, Listen, Element, Prop } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-accordion',\n styleUrl: 'accordion.scss',\n shadow: { delegatesFocus: true },\n})\nexport class Accordion {\n @Element() el: HTMLElement;\n @Prop() autoCollapse: boolean = false;\n\n componentWillLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-accordion', framework)\n }\n }\n\n @Listen('ifxOpen')\n async onItemOpen(event: CustomEvent) {\n if (this.autoCollapse) {\n const items = Array.from(this.el.querySelectorAll('ifx-accordion-item'));\n for (const item of items) {\n const itemElement = item as HTMLIfxAccordionItemElement;\n if (itemElement !== event.target && (await itemElement.open)) {\n itemElement.open = false;\n }\n }\n }\n }\n\n render() {\n return (\n <div class=\"accordion-wrapper\">\n <slot />\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-756867aa.js","mappings":";;;;AAAA,MAAM,YAAY,GAAG,wLAAwL,CAAC;AAC9M,2BAAe,YAAY;;MCSd,SAAS;IALtB;;;;QAOU,iBAAY,GAAY,KAAK,CAAC;KA6BvC;IA3BC,iBAAiB;QACf,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;SAC3C;KACF;IAGD,MAAM,UAAU,CAAC,KAAkB;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACzE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,MAAM,WAAW,GAAG,IAAmC,CAAC;gBACxD,IAAI,WAAW,KAAK,KAAK,CAAC,MAAM,KAAK,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE;oBAC5D,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;iBAC1B;aACF;SACF;KACF;IAED,MAAM;QACJ,QACE,4DAAK,KAAK,EAAC,mBAAmB,IAC5B,8DAAQ,CACJ,EACN;KACH;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/accordion/accordion.scss?tag=ifx-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx"],"sourcesContent":["// ifxAccordion.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.accordion-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n}","import { Component, h, Listen, Element, Prop } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-accordion',\n styleUrl: 'accordion.scss',\n shadow: { delegatesFocus: true },\n})\nexport class Accordion {\n @Element() el: HTMLElement;\n @Prop() autoCollapse: boolean = false;\n\n componentWillLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-accordion', framework)\n }\n }\n\n @Listen('ifxOpen')\n async onItemOpen(event: CustomEvent) {\n if (this.autoCollapse) {\n const items = Array.from(this.el.querySelectorAll('ifx-accordion-item'));\n for (const item of items) {\n const itemElement = item as HTMLIfxAccordionItemElement;\n if (itemElement !== event.target && (await itemElement.open)) {\n itemElement.open = false;\n }\n }\n }\n }\n\n render() {\n return (\n <div class=\"accordion-wrapper\">\n <slot />\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,8 +1,8 @@
1
1
  import { p as proxyCustomElement, H, h, d as Host } from './p-f8e6a4ef.js';
2
- import { d as detectFramework, t as trackComponent } from './p-e8504e6b.js';
2
+ import { d as detectFramework, t as trackComponent } from './p-0b7e3932.js';
3
3
  import { i as isNestedInIfxComponent } from './p-1ecafb97.js';
4
4
  import { c as classNames } from './p-5cdc6210.js';
5
- import { d as defineCustomElement$1 } from './p-28bc54da.js';
5
+ import { d as defineCustomElement$1 } from './p-feb602bf.js';
6
6
 
7
7
  const iconButtonCss = ":host{display:inline-flex}.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px;gap:8px;color:#FFFFFF;flex-direction:row;font-weight:600;border-radius:1px;line-height:1.5rem;outline:none;font-family:var(--ifx-font-family);text-decoration:none;user-select:none;border:1px solid rgba(0, 0, 0, 0);font-size:1rem;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out}.btn:not(.disabled){cursor:pointer}.btn-primary{color:#FFFFFF;background-color:#0A8276}.btn-primary:disabled,.btn-primary.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary{color:#0A8276;background-color:#FFFFFF;border-color:#0A8276}.btn-secondary:disabled,.btn-secondary.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary{background-color:transparent;color:#1D1D1D}.btn-tertiary:disabled,.btn-tertiary.disabled{color:#BFBBBB;pointer-events:none}.btn.icon-button{min-width:initial;min-height:initial;width:40px;height:40px;padding:0;justify-content:center}.btn.icon-button.btn-round{border-radius:100px}.btn.icon-button.btn-square{border-radius:1px}.btn.icon-button.btn-s{width:32px;height:32px;padding:8px}.btn.icon-button.btn-l{width:48px;height:48px;padding:8px}.btn.btn-primary:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-primary:not(:disabled,.disabled):hover{background-color:#08665C;border-color:#08665C}.btn.btn-primary:not(:disabled,.disabled):active,.btn.btn-primary:not(:disabled,.disabled).active{background-color:#06534B;border-color:#06534B}.btn.btn-secondary:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary:not(:disabled,.disabled):hover{background-color:#08665C;border-color:#08665C;color:#FFFFFF}.btn.btn-secondary:not(:disabled,.disabled):active,.btn.btn-secondary:not(:disabled,.disabled).active{background-color:#06534B;border-color:#06534B}.btn.btn-tertiary:not(:disabled,.disabled):focus:not(:active,.active){outline:none;color:#1D1D1D;box-shadow:0 0 0 0px #FFFFFF, 0 0 0 2px #0A8276}.btn.btn-tertiary:not(:disabled,.disabled):hover{color:#0A8276}.btn.btn-tertiary:not(:disabled,.disabled):active,.btn.btn-tertiary:not(:disabled,.disabled).active{color:#08665C}";
8
8
  const IfxIconButtonStyle0 = iconButtonCss;
@@ -102,4 +102,4 @@ function defineCustomElement() {
102
102
 
103
103
  export { IconButton as I, defineCustomElement as d };
104
104
 
105
- //# sourceMappingURL=p-4f6ab2e4.js.map
105
+ //# sourceMappingURL=p-7f5c998f.js.map
@@ -1 +1 @@
1
- {"file":"p-4f6ab2e4.js","mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,w4EAAw4E,CAAC;AAC/5E,4BAAe,aAAa;;MCWf,UAAU;IANvB;;;;QAYU,WAAM,GAAW,OAAO,CAAC;QACzB,UAAK,GAAW,OAAO,CAAC;KA6FjC;IArFC,WAAW,CAAC,KAAY;QACtB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,KAAK,CAAC,wBAAwB,EAAE,CAAC;SAClC;KACF;IAGD,UAAU,CAAC,OAAe;QACxB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;KAC7B;IAGD,MAAM,QAAQ;QACZ,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC/B;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,EAAE;YACrB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;SACtB;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9B,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;SAC7C;KACF;IAED,MAAM;QACJ,QACE,EAAC,IAAI,sEACY,IAAI,CAAC,QAAQ,gBAChB,IAAI,CAAC,SAAS,IACzB,IAAI,CAAC,IAAI,IACR,SACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,EACzC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAC3B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,EAC5C,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,qBAAqB,GAAG,SAAS,IAEjE,gBAAU,IAAI,EAAE,IAAI,CAAC,YAAY,GAAa,CAC5C,KAEJ,cACE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAC3B,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,gBAAU,IAAI,EAAE,IAAI,CAAC,YAAY,GAAa,CACvC,CACV,CACI,EACP;KACH;IAED,eAAe;QACb,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,WAAW;cACpC,WAAW;cACX,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,UAAU;kBAC9B,UAAU;kBACV,SAAS,CAAC;KACjB;IAED,YAAY;QACV,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YAC3B,OAAO,IAAI,CAAA;SACZ;aACI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE;YAC/B,OAAO,GAAG,CAAA;SACX;aACI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE;YAC/B,OAAO,GAAG,CAAA;SACX;;YACI,OAAO,EAAE,CAAC;KAChB;IAED,aAAa;QACX,OAAO,UAAU,CACf,iBAAiB,EACjB,OAAO,IAAI,CAAC,KAAK,EAAE,EACnB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,EACzC,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,EAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAChC,CAAC;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/icon-button/icon-button.scss?tag=ifx-icon-button&encapsulation=shadow","src/components/icon-button/icon-button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n:host {\n display: inline-flex;\n}\n\n.btn {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-height: tokens.$ifxSize500;\n padding: 8px;\n gap: tokens.$ifxSpace100;\n color: tokens.$ifxColorBaseWhite;\n flex-direction: row;\n font-weight: tokens.$ifxFontWeightSemibold;\n border-radius: tokens.$ifxBorderRadius12;\n line-height: tokens.$ifxLineHeightM;\n outline: none;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n text-decoration: none;\n user-select: none;\n border: 1px solid rgba(0, 0, 0, 0);\n font-size: tokens.$ifxFontSizeM;\n transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;\n}\n\n.btn:not(.disabled) {\n cursor: pointer;\n}\n\n.btn-primary {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n\n.btn-secondary {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary {\n background-color: transparent;\n color: tokens.$ifxColorBaseBlack;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n }\n}\n\n\n.btn {\n\n &.icon-button {\n min-width: initial;\n min-height: initial;\n width: tokens.$ifxSize500;\n height: tokens.$ifxSize500;\n padding: 0;\n justify-content: center;\n\n &.btn-round {\n border-radius: 100px;\n }\n\n &.btn-square {\n border-radius: tokens.$ifxBorderRadius12;\n }\n\n &.btn-s {\n width: tokens.$ifxSize400;\n height: tokens.$ifxSize400;\n padding: 8px;\n }\n\n\n &.btn-l {\n width: tokens.$ifxSize600;\n height: tokens.$ifxSize600;\n padding: 8px;\n }\n }\n\n &.btn-primary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n border-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n border-color: tokens.$ifxColorOcean700;\n }\n }\n\n\n &.btn-secondary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n border-color: tokens.$ifxColorOcean600;\n color: tokens.$ifxColorBaseWhite;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n border-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-tertiary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n color: tokens.$ifxColorBaseBlack;\n box-shadow: 0 0 0 0px tokens.$ifxColorBaseWhite, 0 0 0 2px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean600;\n }\n }\n}","import { Component, Prop, h, Host, Method, Element, Listen, Watch, State } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-icon-button',\n styleUrl: 'icon-button.scss',\n shadow: true,\n})\n\nexport class IconButton {\n @Prop() variant: 'primary' | 'secondary' | 'tertiary';\n @Prop() size: string;\n @Prop() disabled: boolean;\n @Prop() icon: string;\n @Prop() href: string;\n @Prop() target: string = '_self';\n @Prop() shape: string = 'round';\n @Prop() ariaLabel: string | null;\n @State() internalIcon: string;\n @Element() el;\n\n private focusableElement: HTMLElement;\n \n @Listen('click', { capture: true })\n handleClick(event: Event) {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n\n @Watch('icon')\n updateIcon(newIcon: string) { \n this.internalIcon = newIcon;\n }\n\n @Method()\n async setFocus() {\n this.focusableElement.focus();\n }\n\n componentWillLoad() {\n if (this.shape === '') {\n this.shape = 'round';\n }\n this.internalIcon = this.icon;\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-icon-button', framework)\n }\n }\n\n render() {\n return (\n <Host \n aria-disabled={this.disabled}\n aria-label={this.ariaLabel}> \n {this.href ? (\n <a\n ref={(el) => (this.focusableElement = el)}\n class={this.getClassNames()}\n href={!this.disabled ? this.href : undefined} \n target={this.target}\n rel={this.target === '_blank' ? 'noopener noreferrer' : undefined}\n >\n <ifx-icon icon={this.internalIcon}></ifx-icon>\n </a>\n ) : (\n <button\n class={this.getClassNames()}\n type=\"button\"\n disabled={this.disabled}\n >\n <ifx-icon icon={this.internalIcon}></ifx-icon>\n </button>\n )}\n </Host>\n );\n }\n\n getVariantClass() {\n return `${this.variant}` === \"secondary\"\n ? `secondary`\n : `${this.variant}` === 'tertiary'\n ? `tertiary`\n : `primary`;\n }\n\n getSizeClass() {\n if (`${this.size}` === \"xs\") {\n return \"xs\"\n }\n else if (`${this.size}` === \"s\") {\n return \"s\"\n }\n else if (`${this.size}` === \"l\") {\n return \"l\"\n }\n else return \"\";\n }\n\n getClassNames() {\n return classNames(\n 'btn icon-button',\n `btn-${this.shape}`,\n this.size && `btn-${this.getSizeClass()}`,\n `btn-${this.getVariantClass()}`,\n this.disabled ? 'disabled' : ''\n );\n }\n}"],"version":3}
1
+ {"file":"p-7f5c998f.js","mappings":";;;;;;AAAA,MAAM,aAAa,GAAG,w4EAAw4E,CAAC;AAC/5E,4BAAe,aAAa;;MCWf,UAAU;IANvB;;;;QAYU,WAAM,GAAW,OAAO,CAAC;QACzB,UAAK,GAAW,OAAO,CAAC;KA6FjC;IArFC,WAAW,CAAC,KAAY;QACtB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,KAAK,CAAC,wBAAwB,EAAE,CAAC;SAClC;KACF;IAGD,UAAU,CAAC,OAAe;QACxB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;KAC7B;IAGD,MAAM,QAAQ;QACZ,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC/B;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,EAAE;YACrB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;SACtB;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;QAC9B,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACnC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;YACpC,cAAc,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;SAC7C;KACF;IAED,MAAM;QACJ,QACE,EAAC,IAAI,sEACY,IAAI,CAAC,QAAQ,gBAChB,IAAI,CAAC,SAAS,IACzB,IAAI,CAAC,IAAI,IACR,SACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,EACzC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAC3B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,EAC5C,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,qBAAqB,GAAG,SAAS,IAEjE,gBAAU,IAAI,EAAE,IAAI,CAAC,YAAY,GAAa,CAC5C,KAEJ,cACE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAC3B,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,gBAAU,IAAI,EAAE,IAAI,CAAC,YAAY,GAAa,CACvC,CACV,CACI,EACP;KACH;IAED,eAAe;QACb,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,WAAW;cACpC,WAAW;cACX,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,UAAU;kBAC9B,UAAU;kBACV,SAAS,CAAC;KACjB;IAED,YAAY;QACV,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YAC3B,OAAO,IAAI,CAAA;SACZ;aACI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE;YAC/B,OAAO,GAAG,CAAA;SACX;aACI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE;YAC/B,OAAO,GAAG,CAAA;SACX;;YACI,OAAO,EAAE,CAAC;KAChB;IAED,aAAa;QACX,OAAO,UAAU,CACf,iBAAiB,EACjB,OAAO,IAAI,CAAC,KAAK,EAAE,EACnB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,EACzC,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,EAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAChC,CAAC;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/icon-button/icon-button.scss?tag=ifx-icon-button&encapsulation=shadow","src/components/icon-button/icon-button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n:host {\n display: inline-flex;\n}\n\n.btn {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-height: tokens.$ifxSize500;\n padding: 8px;\n gap: tokens.$ifxSpace100;\n color: tokens.$ifxColorBaseWhite;\n flex-direction: row;\n font-weight: tokens.$ifxFontWeightSemibold;\n border-radius: tokens.$ifxBorderRadius12;\n line-height: tokens.$ifxLineHeightM;\n outline: none;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n text-decoration: none;\n user-select: none;\n border: 1px solid rgba(0, 0, 0, 0);\n font-size: tokens.$ifxFontSizeM;\n transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;\n}\n\n.btn:not(.disabled) {\n cursor: pointer;\n}\n\n.btn-primary {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n\n.btn-secondary {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary {\n background-color: transparent;\n color: tokens.$ifxColorBaseBlack;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n }\n}\n\n\n.btn {\n\n &.icon-button {\n min-width: initial;\n min-height: initial;\n width: tokens.$ifxSize500;\n height: tokens.$ifxSize500;\n padding: 0;\n justify-content: center;\n\n &.btn-round {\n border-radius: 100px;\n }\n\n &.btn-square {\n border-radius: tokens.$ifxBorderRadius12;\n }\n\n &.btn-s {\n width: tokens.$ifxSize400;\n height: tokens.$ifxSize400;\n padding: 8px;\n }\n\n\n &.btn-l {\n width: tokens.$ifxSize600;\n height: tokens.$ifxSize600;\n padding: 8px;\n }\n }\n\n &.btn-primary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n border-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n border-color: tokens.$ifxColorOcean700;\n }\n }\n\n\n &.btn-secondary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n border-color: tokens.$ifxColorOcean600;\n color: tokens.$ifxColorBaseWhite;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n border-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-tertiary:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n color: tokens.$ifxColorBaseBlack;\n box-shadow: 0 0 0 0px tokens.$ifxColorBaseWhite, 0 0 0 2px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean600;\n }\n }\n}","import { Component, Prop, h, Host, Method, Element, Listen, Watch, State } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-icon-button',\n styleUrl: 'icon-button.scss',\n shadow: true,\n})\n\nexport class IconButton {\n @Prop() variant: 'primary' | 'secondary' | 'tertiary';\n @Prop() size: string;\n @Prop() disabled: boolean;\n @Prop() icon: string;\n @Prop() href: string;\n @Prop() target: string = '_self';\n @Prop() shape: string = 'round';\n @Prop() ariaLabel: string | null;\n @State() internalIcon: string;\n @Element() el;\n\n private focusableElement: HTMLElement;\n \n @Listen('click', { capture: true })\n handleClick(event: Event) {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n\n @Watch('icon')\n updateIcon(newIcon: string) { \n this.internalIcon = newIcon;\n }\n\n @Method()\n async setFocus() {\n this.focusableElement.focus();\n }\n\n componentWillLoad() {\n if (this.shape === '') {\n this.shape = 'round';\n }\n this.internalIcon = this.icon;\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-icon-button', framework)\n }\n }\n\n render() {\n return (\n <Host \n aria-disabled={this.disabled}\n aria-label={this.ariaLabel}> \n {this.href ? (\n <a\n ref={(el) => (this.focusableElement = el)}\n class={this.getClassNames()}\n href={!this.disabled ? this.href : undefined} \n target={this.target}\n rel={this.target === '_blank' ? 'noopener noreferrer' : undefined}\n >\n <ifx-icon icon={this.internalIcon}></ifx-icon>\n </a>\n ) : (\n <button\n class={this.getClassNames()}\n type=\"button\"\n disabled={this.disabled}\n >\n <ifx-icon icon={this.internalIcon}></ifx-icon>\n </button>\n )}\n </Host>\n );\n }\n\n getVariantClass() {\n return `${this.variant}` === \"secondary\"\n ? `secondary`\n : `${this.variant}` === 'tertiary'\n ? `tertiary`\n : `primary`;\n }\n\n getSizeClass() {\n if (`${this.size}` === \"xs\") {\n return \"xs\"\n }\n else if (`${this.size}` === \"s\") {\n return \"s\"\n }\n else if (`${this.size}` === \"l\") {\n return \"l\"\n }\n else return \"\";\n }\n\n getClassNames() {\n return classNames(\n 'btn icon-button',\n `btn-${this.shape}`,\n this.size && `btn-${this.getSizeClass()}`,\n `btn-${this.getVariantClass()}`,\n this.disabled ? 'disabled' : ''\n );\n }\n}"],"version":3}
@@ -1,9 +1,9 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-f8e6a4ef.js';
2
- import { d as detectFramework, t as trackComponent } from './p-e8504e6b.js';
2
+ import { d as detectFramework, t as trackComponent } from './p-0b7e3932.js';
3
3
  import { i as isNestedInIfxComponent } from './p-1ecafb97.js';
4
- import { d as defineCustomElement$3 } from './p-28bc54da.js';
5
- import { d as defineCustomElement$2 } from './p-4f6ab2e4.js';
6
- import { d as defineCustomElement$1 } from './p-1f61ec38.js';
4
+ import { d as defineCustomElement$3 } from './p-feb602bf.js';
5
+ import { d as defineCustomElement$2 } from './p-7f5c998f.js';
6
+ import { d as defineCustomElement$1 } from './p-dcc86ab5.js';
7
7
 
8
8
  const paginationCss = "@charset \"UTF-8\";:root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}:host{display:inline-flex}.container{display:inline-flex;justify-content:center;align-items:center;gap:32px;font-family:var(--ifx-font-family)}.container .items__per-page-wrapper{display:flex;align-items:center;gap:16px}.container .items__per-page-wrapper .items__per-page-label{color:#1D1D1D;font-size:14px;font-style:normal;font-weight:600;line-height:20px}.container .items__per-page-wrapper .items__per-page-field{display:flex;flex-direction:column;align-items:flex-start}.container .items__per-page-wrapper .items__per-page-field ifx-select{width:92px}.container .items__total-wrapper{display:flex;justify-content:center;align-items:center;gap:12px}.container .items__total-wrapper .items__total-button{display:flex;width:40px;height:40px;justify-content:center;align-items:center;border-radius:100px;border:1px solid #BFBBBB;background:#FFF}.container .items__total-wrapper .page__numbers-wrapper{display:flex;justify-content:center;align-items:center;gap:12px}.container .items__total-wrapper .page__numbers-wrapper .page__number-item{display:flex;padding:6px;flex-direction:column;justify-content:center;align-items:center;gap:10px;border-radius:100px}.container .items__total-wrapper .page__numbers-wrapper .page__number-item.active{background-color:#0A8276}.container .items__total-wrapper .page__numbers-wrapper .page__number-item.active span{color:#fff}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:hover{cursor:pointer}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:hover:not(.active){background-color:#ddd}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:active:not(.active){background-color:#575352}.container .items__total-wrapper .page__numbers-wrapper .page__number-item span{display:flex;width:16px;height:16px;flex-direction:column;justify-content:center;color:#1D1D1D;text-align:center;font-size:13px;font-style:normal;font-weight:400;line-height:20px}.pagination{display:flex}.pagination ifx-icon-button:first-of-type{margin-right:12px}.pagination ifx-icon-button:last-of-type{margin-left:12px}a{padding:8px;border-radius:100px}ol{list-style-type:none;padding:0;margin:0;display:inline-flex;align-items:center;gap:12px}li{display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:100px}li:hover:not(.active) a{background-color:#EEEDED}li:active:not(.active) a{background-color:#575352;color:#fff}li.active{background-color:#0A8276}li.active a{color:#fff}li:hover{cursor:pointer}li a{text-decoration:none;display:flex;width:16px;height:16px;flex-direction:column;justify-content:center;color:#1D1D1D;text-align:center;font-size:13px;font-style:normal;font-weight:400;line-height:20px;align-items:center}.prev.disabled,.next.disabled{cursor:default}.prev.disabled:hover,.next.disabled:hover{cursor:default;text-decoration:none}.prev{margin-right:2.5px}.next{margin-left:2.5px}@media (min-width: 400px){li:first-child,li.active-sibling,li.active,li.active+li,li:last-child{display:inline-flex !important;flex-direction:row}li:first-child:nth-last-child(n+8)~li{display:none}li:first-child:nth-last-child(n+8)~li.active-sibling:before{content:\"…\";font-size:13px;display:inline-block;margin-right:6px}li:first-child:nth-last-child(n+8)~li.active+li:after{content:\"…\";font-size:13px;display:inline-block;margin-left:6px}li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+5){display:inline-flex;flex-direction:row}li:first-child:nth-last-child(n+8)~li:nth-last-child(5):before{content:\"…\";font-size:13px;display:inline-block;margin-right:6px}li:first-child:nth-last-child(n+8)~li:nth-child(-n+2):before,li:first-child:nth-last-child(n+8)~li:nth-child(-n+2):after,li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+2):before,li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+2):after,li:first-child:nth-last-child(n+8)~li.active-sibling:nth-last-child(-n+4):before,li:first-child:nth-last-child(n+8)~li.active-sibling:nth-last-child(-n+4):after{display:none !important}li:first-child:nth-last-child(n+8).active~li:nth-last-child(-n+5),li:first-child:nth-last-child(n+8)~li.active~li:nth-last-child(-n+5){display:none}li:first-child:nth-last-child(n+8).active~li:nth-last-child(-n+5):before,li:first-child:nth-last-child(n+8)~li.active~li:nth-last-child(-n+5):before{display:none}li:first-child:nth-last-child(n+8).active~li:nth-child(-n+5),li:first-child:nth-last-child(n+8)~li.active~li:nth-child(-n+5){display:inline-flex !important;flex-direction:row}li:first-child:nth-last-child(n+8).active~li:nth-child(-n+4):after,li:first-child:nth-last-child(n+8)~li.active~li:nth-child(-n+4):after{display:none}li:first-child:nth-last-child(n+8).active~li:nth-child(5):after,li:first-child:nth-last-child(n+8)~li.active~li:nth-child(5):after{content:\"…\";font-size:13px;display:inline-block;margin-left:6px}li:first-child:nth-last-child(n+8).active:before,li:first-child:nth-last-child(n+8).active:after,li:first-child:nth-last-child(n+8)~li.active:before,li:first-child:nth-last-child(n+8)~li.active:after{display:none}}";
9
9
  const IfxPaginationStyle0 = paginationCss;
@@ -183,4 +183,4 @@ function defineCustomElement() {
183
183
 
184
184
  export { Pagination as P, defineCustomElement as d };
185
185
 
186
- //# sourceMappingURL=p-d202acba.js.map
186
+ //# sourceMappingURL=p-82ad178b.js.map
@@ -1 +1 @@
1
- {"file":"p-d202acba.js","mappings":"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","names":[],"sources":["src/components/pagination/pagination.scss?tag=ifx-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.container {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n gap: 32px;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n\n & .items__per-page-wrapper {\n display: flex;\n align-items: center;\n gap: 16px;\n\n & .items__per-page-label {\n color: #1D1D1D;\n font-size: 14px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n }\n\n & .items__per-page-field {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n\n & ifx-select {\n width: 92px;\n }\n }\n }\n\n & .items__total-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .items__total-button {\n display: flex;\n width: 40px;\n height: 40px;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n border: 1px solid #BFBBBB;\n background: #FFF;\n }\n\n & .page__numbers-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .page__number-item {\n display: flex;\n padding: 6px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 10px;\n border-radius: 100px;\n\n &.active {\n background-color: #0A8276;\n\n & span {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n &:hover:not(.active) {\n background-color: #ddd;\n\n }\n\n &:active:not(.active) {\n background-color: #575352;\n }\n\n & span {\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n }\n }\n }\n }\n}\n\n\n.pagination {\n display: flex;\n\n & ifx-icon-button:first-of-type {\n margin-right: 12px;\n }\n\n & ifx-icon-button:last-of-type {\n margin-left: 12px;\n }\n}\n\na {\n padding: 8px;\n border-radius: 100px;\n}\n\nol {\n list-style-type: none;\n padding: 0;\n margin: 0;\n display: inline-flex;\n align-items: center;\n gap: 12px;\n}\n\nli {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n\n &:hover:not(.active) {\n & a {\n background-color: #EEEDED;\n }\n }\n\n &:active:not(.active) {\n & a {\n background-color: #575352;\n color: #fff;\n }\n }\n\n &.active {\n background-color: #0A8276;\n\n & a {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n & a {\n text-decoration: none;\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n align-items: center;\n }\n}\n\n.prev,\n.next {\n &.disabled {\n cursor: default;\n\n &:hover {\n cursor: default;\n text-decoration: none;\n }\n }\n}\n\n.prev {\n margin-right: 2.5px;\n}\n\n.next {\n margin-left: 2.5px;\n}\n\n\n@mixin ellipsis($before: true) {\n content: \"\\2026\";\n font-size: 13px;\n display: inline-block;\n\n @if($before) {\n margin-right: 6px;\n }\n\n @else {\n margin-left: 6px;\n }\n}\n\n\n// @media(max-width:460px) {\n// li {\n\n// &:first-child,\n// &.active,\n// &.active-sibling:nth-last-child(2), // Show second to last child if the last one is active\n// &:last-child {\n// //display: inline-block !important;\n// display: inline-flex !important;\n// flex-direction: row;\n// }\n\n// $how-many-on-ends: 3; // 1,2,3,...,10 || 1,...,8,9,10\n// // There are >= 5 pages\n// &:first-child:nth-last-child(n+6) {\n\n// &~li {\n// // Start out with all siblings hidden\n// display: none;\n\n// // Show the last children in the list by default\n// &:nth-last-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n\n// }\n\n// // The child at the beginning of the last group shows ellipsis for the group\n// &:nth-last-child(#{$how-many-on-ends}) {\n// &:before {\n// @include ellipsis(true);\n// }\n// }\n\n// // The very beginning elements do not need to show ellipsis\n// // The very end elements do not need to show ellipsis\n// }\n\n\n// &.active,\n// &~li.active {\n\n// // Show ellipsis before and after the active element\n// &:before {\n// @include ellipsis(true);\n// }\n// &:after {\n// @include ellipsis(false);\n// }\n\n\n// // If the active element is in the first or last group, don't show ellipsis (siblings will take care of it)\n// &:nth-child(-n+#{$how-many-on-ends - 1}),\n// &:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n// &:before, &:after {\n// display: none;\n// }\n// }\n\n// // Hide the last group if \"active\" comes before them\n// &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n// display: none;\n// }\n\n// // Show the first group together if \"active\" comes before them\n// &~li:nth-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n// }\n\n// // If \"active\" is before the last member in the group, don't show ellipsis\n// &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n// &:after {\n// display: none;\n// }\n// }\n\n\n// // The child at the end of the first group shows ellipsis for the group\n// &~li:nth-child(#{$how-many-on-ends}) {\n// &:after {\n// @include ellipsis(false);\n// }\n// }\n// }\n// }\n// }\n// }\n\n@media (min-width: 400px) {\n li {\n\n &:first-child,\n &.active-sibling,\n &.active,\n &.active+li,\n &:last-child {\n //display: inline-block!important;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // There are >= 7 pages\n &:first-child:nth-last-child(n+8) {\n $how-many-on-ends: 5; // 1,2,3,4,5,...,10 || 1,...6,7,8,9,10\n\n &~li {\n // Start out with all siblings hidden\n display: none;\n\n // Show ellipsis before the previous one\n &.active-sibling:before {\n @include ellipsis(true);\n }\n\n // Show ellipsis after the next one\n &.active+li:after {\n @include ellipsis(false);\n }\n\n // Show the last children in the list by default\n &:nth-last-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex;\n flex-direction: row;\n }\n\n // The child at the beginning of the last group shows ellipsis for the group\n &:nth-last-child(#{$how-many-on-ends}) {\n &:before {\n @include ellipsis(true);\n }\n }\n\n // The very beginning elements do not need to show ellipsis\n &:nth-child(-n+#{$how-many-on-ends - 3}),\n // The very end elements do not need to show ellipsis\n &:nth-last-child(-n+#{$how-many-on-ends - 3}),\n // Even if it's a sibling to \"active\"\n &.active-sibling:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n\n &:before,\n &:after {\n display: none !important;\n }\n }\n }\n\n &.active,\n &~li.active {\n\n // Hide the last group if \"active\" comes before them\n &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n display: none;\n\n // If there is overlap, the element will show, but hide it's ellipsis\n &:before {\n display: none;\n }\n }\n\n // Show the first group together if \"active\" comes before them\n &~li:nth-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // If \"active\" is before the last member in the group, don't show ellipsis\n &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n &:after {\n display: none;\n }\n }\n\n\n // The child at the end of the first group shows ellipsis for the group\n &~li:nth-child(#{$how-many-on-ends}) {\n &:after {\n @include ellipsis(false);\n }\n }\n\n // \"active\" should never show ellipsis\n &:before,\n &:after {\n display: none;\n }\n }\n }\n }\n}","import { Component, h, Element, Event, EventEmitter, Prop, State, Listen } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-pagination',\n styleUrl: 'pagination.scss',\n shadow: true\n})\nexport class Pagination {\n @Element() el: HTMLElement;\n @Event() ifxPageChange: EventEmitter;\n @Prop() currentPage: number = 1;\n @State() internalPage: number = 1;\n @State() internalItemsPerPage: number = 10;\n @State() numberOfPages: number[] = [];\n @Prop() total: number = 1;\n @Prop() itemsPerPage: any[] | string;\n @State() filteredItemsPerPage: any[] = [];\n @State() visiblePages: (number | string)[] = [];\n\n private CLASS_DISABLED = \"disabled\";\n private CLASS_ACTIVE = \"active\";\n private prevInternalPage: number;\n\n @Listen('ifxSelect')\n setItemsPerPage(e: CustomEvent) {\n const selectedValue = e.detail?.value || e.detail?.label; \n const newItemsPerPage = parseInt(selectedValue) || 10;\n\n if (newItemsPerPage === this.internalItemsPerPage) {\n return;\n }\n\n this.internalItemsPerPage = newItemsPerPage;\n this.internalPage = 1; \n this.calculateNumberOfPages();\n this.updateVisiblePages();\n this.handleEventEmission();\n }\n\n componentDidLoad() {\n this.initPagination();\n }\n\n updateVisiblePages() {\n const buffer = 2;\n const totalPages = this.numberOfPages.length;\n const current = this.internalPage;\n let pages: (number | string)[] = [];\n \n if (totalPages <= 5) {\n pages = [...this.numberOfPages];\n } else {\n pages.push(1);\n \n if (current > buffer + 1) pages.push('...');\n \n let start = Math.max(2, current - buffer);\n let end = Math.min(totalPages - 1, current + buffer);\n \n if (current <= buffer + 1) end = buffer * 2 + 1;\n if (current >= totalPages - buffer) start = totalPages - buffer * 2;\n \n for (let i = start; i <= end; i++) pages.push(i);\n \n if (current < totalPages - buffer) pages.push('...');\n pages.push(totalPages);\n }\n \n this.visiblePages = [...new Set(pages)];\n }\n\n calculateNumberOfPages() {\n const totalPages = Math.ceil(this.total / this.internalItemsPerPage);\n this.numberOfPages = Array.from({ length: totalPages }, (_, i) => i + 1);\n this.internalPage = Math.max(1, Math.min(this.currentPage, totalPages));\n }\n\n filterOptionsArray() { \n const items = typeof this.itemsPerPage === 'string' ? \n JSON.parse(this.itemsPerPage) : this.itemsPerPage;\n this.filteredItemsPerPage = items.map(item => ({\n ...item,\n label: item.label || item.value\n }));\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-pagination', framework)\n }\n this.calculateNumberOfPages();\n this.filterOptionsArray();\n this.updateVisiblePages();\n }\n\n componentWillUpdate() { \n if (this.prevInternalPage !== this.internalPage) {\n this.updateVisiblePages();\n this.prevInternalPage = this.internalPage;\n }\n }\n\n componentDidUpdate() {\n this.initPagination();\n }\n\n handleEventEmission() {\n this.ifxPageChange.emit({\n currentPage: this.internalPage,\n totalPages: this.numberOfPages.length,\n itemsPerPage: this.internalItemsPerPage\n });\n }\n\n initPagination() {\n const pagination = this.el.shadowRoot.querySelector('.pagination');\n if (!pagination) return;\n\n const updateButtons = () => {\n const prev = pagination.querySelector<HTMLButtonElement>('.prev');\n const next = pagination.querySelector<HTMLButtonElement>('.next');\n if (prev) {\n prev.disabled = this.internalPage === 1;\n prev.classList.toggle(this.CLASS_DISABLED, this.internalPage === 1);\n }\n if (next) {\n next.disabled = this.internalPage === this.numberOfPages.length;\n next.classList.toggle(this.CLASS_DISABLED, this.internalPage === this.numberOfPages.length);\n }\n };\n\n pagination.querySelectorAll('li').forEach(li => {\n li.removeEventListener('click', this.handlePageClick);\n li.addEventListener('click', this.handlePageClick);\n });\n\n updateButtons();\n }\n\n private handlePageClick = (e: Event) => {\n const li = e.currentTarget as HTMLLIElement;\n const page = parseInt(li.dataset.page);\n if (!isNaN(page)) this.changePage(page);\n };\n\n changePage(newPage: number) {\n newPage = Math.max(1, Math.min(newPage, this.numberOfPages.length));\n if (newPage === this.internalPage) return;\n \n this.internalPage = newPage;\n this.handleEventEmission();\n this.initPagination();\n }\n\n render() {\n return (\n <div class=\"container\">\n <div class=\"items__per-page-wrapper\">\n <div class=\"items__per-page-label\">Results per Page</div>\n <div class=\"items__per-page-field\">\n <ifx-select\n placeholder='false'\n show-search='false'\n value={undefined}\n disabled={false}\n error={false}\n size=\"s\"\n options={this.filteredItemsPerPage}\n placeholder-value=\"Select\"\n ></ifx-select>\n </div>\n </div>\n \n <div class=\"items__total-wrapper\">\n <div class=\"pagination\">\n <ifx-icon-button\n class=\"prev\"\n icon=\"arrow-left-16\"\n onClick={() => this.changePage(this.internalPage - 1)}\n ></ifx-icon-button>\n \n <ol>\n {this.visiblePages.map((page, i) => typeof page === 'number' ? (\n <li \n key={`page-${page}`}\n class={{ [this.CLASS_ACTIVE]: page === this.internalPage }}\n data-page={page}\n >\n <a href=\"javascript:void(0)\">{page}</a>\n </li>\n ) : (\n <li class=\"ellipsis\" key={`ellipsis-${i}`}>\n <span>...</span>\n </li>\n ))}\n </ol>\n \n <ifx-icon-button\n class=\"next\"\n icon=\"arrow-right-16\"\n onClick={() => this.changePage(this.internalPage + 1)}\n ></ifx-icon-button>\n </div>\n </div>\n </div>\n );\n }\n}"],"version":3}
1
+ {"file":"p-82ad178b.js","mappings":"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","names":[],"sources":["src/components/pagination/pagination.scss?tag=ifx-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.container {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n gap: 32px;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n\n & .items__per-page-wrapper {\n display: flex;\n align-items: center;\n gap: 16px;\n\n & .items__per-page-label {\n color: #1D1D1D;\n font-size: 14px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n }\n\n & .items__per-page-field {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n\n & ifx-select {\n width: 92px;\n }\n }\n }\n\n & .items__total-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .items__total-button {\n display: flex;\n width: 40px;\n height: 40px;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n border: 1px solid #BFBBBB;\n background: #FFF;\n }\n\n & .page__numbers-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .page__number-item {\n display: flex;\n padding: 6px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 10px;\n border-radius: 100px;\n\n &.active {\n background-color: #0A8276;\n\n & span {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n &:hover:not(.active) {\n background-color: #ddd;\n\n }\n\n &:active:not(.active) {\n background-color: #575352;\n }\n\n & span {\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n }\n }\n }\n }\n}\n\n\n.pagination {\n display: flex;\n\n & ifx-icon-button:first-of-type {\n margin-right: 12px;\n }\n\n & ifx-icon-button:last-of-type {\n margin-left: 12px;\n }\n}\n\na {\n padding: 8px;\n border-radius: 100px;\n}\n\nol {\n list-style-type: none;\n padding: 0;\n margin: 0;\n display: inline-flex;\n align-items: center;\n gap: 12px;\n}\n\nli {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n\n &:hover:not(.active) {\n & a {\n background-color: #EEEDED;\n }\n }\n\n &:active:not(.active) {\n & a {\n background-color: #575352;\n color: #fff;\n }\n }\n\n &.active {\n background-color: #0A8276;\n\n & a {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n & a {\n text-decoration: none;\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n align-items: center;\n }\n}\n\n.prev,\n.next {\n &.disabled {\n cursor: default;\n\n &:hover {\n cursor: default;\n text-decoration: none;\n }\n }\n}\n\n.prev {\n margin-right: 2.5px;\n}\n\n.next {\n margin-left: 2.5px;\n}\n\n\n@mixin ellipsis($before: true) {\n content: \"\\2026\";\n font-size: 13px;\n display: inline-block;\n\n @if($before) {\n margin-right: 6px;\n }\n\n @else {\n margin-left: 6px;\n }\n}\n\n\n// @media(max-width:460px) {\n// li {\n\n// &:first-child,\n// &.active,\n// &.active-sibling:nth-last-child(2), // Show second to last child if the last one is active\n// &:last-child {\n// //display: inline-block !important;\n// display: inline-flex !important;\n// flex-direction: row;\n// }\n\n// $how-many-on-ends: 3; // 1,2,3,...,10 || 1,...,8,9,10\n// // There are >= 5 pages\n// &:first-child:nth-last-child(n+6) {\n\n// &~li {\n// // Start out with all siblings hidden\n// display: none;\n\n// // Show the last children in the list by default\n// &:nth-last-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n\n// }\n\n// // The child at the beginning of the last group shows ellipsis for the group\n// &:nth-last-child(#{$how-many-on-ends}) {\n// &:before {\n// @include ellipsis(true);\n// }\n// }\n\n// // The very beginning elements do not need to show ellipsis\n// // The very end elements do not need to show ellipsis\n// }\n\n\n// &.active,\n// &~li.active {\n\n// // Show ellipsis before and after the active element\n// &:before {\n// @include ellipsis(true);\n// }\n// &:after {\n// @include ellipsis(false);\n// }\n\n\n// // If the active element is in the first or last group, don't show ellipsis (siblings will take care of it)\n// &:nth-child(-n+#{$how-many-on-ends - 1}),\n// &:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n// &:before, &:after {\n// display: none;\n// }\n// }\n\n// // Hide the last group if \"active\" comes before them\n// &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n// display: none;\n// }\n\n// // Show the first group together if \"active\" comes before them\n// &~li:nth-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n// }\n\n// // If \"active\" is before the last member in the group, don't show ellipsis\n// &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n// &:after {\n// display: none;\n// }\n// }\n\n\n// // The child at the end of the first group shows ellipsis for the group\n// &~li:nth-child(#{$how-many-on-ends}) {\n// &:after {\n// @include ellipsis(false);\n// }\n// }\n// }\n// }\n// }\n// }\n\n@media (min-width: 400px) {\n li {\n\n &:first-child,\n &.active-sibling,\n &.active,\n &.active+li,\n &:last-child {\n //display: inline-block!important;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // There are >= 7 pages\n &:first-child:nth-last-child(n+8) {\n $how-many-on-ends: 5; // 1,2,3,4,5,...,10 || 1,...6,7,8,9,10\n\n &~li {\n // Start out with all siblings hidden\n display: none;\n\n // Show ellipsis before the previous one\n &.active-sibling:before {\n @include ellipsis(true);\n }\n\n // Show ellipsis after the next one\n &.active+li:after {\n @include ellipsis(false);\n }\n\n // Show the last children in the list by default\n &:nth-last-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex;\n flex-direction: row;\n }\n\n // The child at the beginning of the last group shows ellipsis for the group\n &:nth-last-child(#{$how-many-on-ends}) {\n &:before {\n @include ellipsis(true);\n }\n }\n\n // The very beginning elements do not need to show ellipsis\n &:nth-child(-n+#{$how-many-on-ends - 3}),\n // The very end elements do not need to show ellipsis\n &:nth-last-child(-n+#{$how-many-on-ends - 3}),\n // Even if it's a sibling to \"active\"\n &.active-sibling:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n\n &:before,\n &:after {\n display: none !important;\n }\n }\n }\n\n &.active,\n &~li.active {\n\n // Hide the last group if \"active\" comes before them\n &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n display: none;\n\n // If there is overlap, the element will show, but hide it's ellipsis\n &:before {\n display: none;\n }\n }\n\n // Show the first group together if \"active\" comes before them\n &~li:nth-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // If \"active\" is before the last member in the group, don't show ellipsis\n &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n &:after {\n display: none;\n }\n }\n\n\n // The child at the end of the first group shows ellipsis for the group\n &~li:nth-child(#{$how-many-on-ends}) {\n &:after {\n @include ellipsis(false);\n }\n }\n\n // \"active\" should never show ellipsis\n &:before,\n &:after {\n display: none;\n }\n }\n }\n }\n}","import { Component, h, Element, Event, EventEmitter, Prop, State, Listen } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-pagination',\n styleUrl: 'pagination.scss',\n shadow: true\n})\nexport class Pagination {\n @Element() el: HTMLElement;\n @Event() ifxPageChange: EventEmitter;\n @Prop() currentPage: number = 1;\n @State() internalPage: number = 1;\n @State() internalItemsPerPage: number = 10;\n @State() numberOfPages: number[] = [];\n @Prop() total: number = 1;\n @Prop() itemsPerPage: any[] | string;\n @State() filteredItemsPerPage: any[] = [];\n @State() visiblePages: (number | string)[] = [];\n\n private CLASS_DISABLED = \"disabled\";\n private CLASS_ACTIVE = \"active\";\n private prevInternalPage: number;\n\n @Listen('ifxSelect')\n setItemsPerPage(e: CustomEvent) {\n const selectedValue = e.detail?.value || e.detail?.label; \n const newItemsPerPage = parseInt(selectedValue) || 10;\n\n if (newItemsPerPage === this.internalItemsPerPage) {\n return;\n }\n\n this.internalItemsPerPage = newItemsPerPage;\n this.internalPage = 1; \n this.calculateNumberOfPages();\n this.updateVisiblePages();\n this.handleEventEmission();\n }\n\n componentDidLoad() {\n this.initPagination();\n }\n\n updateVisiblePages() {\n const buffer = 2;\n const totalPages = this.numberOfPages.length;\n const current = this.internalPage;\n let pages: (number | string)[] = [];\n \n if (totalPages <= 5) {\n pages = [...this.numberOfPages];\n } else {\n pages.push(1);\n \n if (current > buffer + 1) pages.push('...');\n \n let start = Math.max(2, current - buffer);\n let end = Math.min(totalPages - 1, current + buffer);\n \n if (current <= buffer + 1) end = buffer * 2 + 1;\n if (current >= totalPages - buffer) start = totalPages - buffer * 2;\n \n for (let i = start; i <= end; i++) pages.push(i);\n \n if (current < totalPages - buffer) pages.push('...');\n pages.push(totalPages);\n }\n \n this.visiblePages = [...new Set(pages)];\n }\n\n calculateNumberOfPages() {\n const totalPages = Math.ceil(this.total / this.internalItemsPerPage);\n this.numberOfPages = Array.from({ length: totalPages }, (_, i) => i + 1);\n this.internalPage = Math.max(1, Math.min(this.currentPage, totalPages));\n }\n\n filterOptionsArray() { \n const items = typeof this.itemsPerPage === 'string' ? \n JSON.parse(this.itemsPerPage) : this.itemsPerPage;\n this.filteredItemsPerPage = items.map(item => ({\n ...item,\n label: item.label || item.value\n }));\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-pagination', framework)\n }\n this.calculateNumberOfPages();\n this.filterOptionsArray();\n this.updateVisiblePages();\n }\n\n componentWillUpdate() { \n if (this.prevInternalPage !== this.internalPage) {\n this.updateVisiblePages();\n this.prevInternalPage = this.internalPage;\n }\n }\n\n componentDidUpdate() {\n this.initPagination();\n }\n\n handleEventEmission() {\n this.ifxPageChange.emit({\n currentPage: this.internalPage,\n totalPages: this.numberOfPages.length,\n itemsPerPage: this.internalItemsPerPage\n });\n }\n\n initPagination() {\n const pagination = this.el.shadowRoot.querySelector('.pagination');\n if (!pagination) return;\n\n const updateButtons = () => {\n const prev = pagination.querySelector<HTMLButtonElement>('.prev');\n const next = pagination.querySelector<HTMLButtonElement>('.next');\n if (prev) {\n prev.disabled = this.internalPage === 1;\n prev.classList.toggle(this.CLASS_DISABLED, this.internalPage === 1);\n }\n if (next) {\n next.disabled = this.internalPage === this.numberOfPages.length;\n next.classList.toggle(this.CLASS_DISABLED, this.internalPage === this.numberOfPages.length);\n }\n };\n\n pagination.querySelectorAll('li').forEach(li => {\n li.removeEventListener('click', this.handlePageClick);\n li.addEventListener('click', this.handlePageClick);\n });\n\n updateButtons();\n }\n\n private handlePageClick = (e: Event) => {\n const li = e.currentTarget as HTMLLIElement;\n const page = parseInt(li.dataset.page);\n if (!isNaN(page)) this.changePage(page);\n };\n\n changePage(newPage: number) {\n newPage = Math.max(1, Math.min(newPage, this.numberOfPages.length));\n if (newPage === this.internalPage) return;\n \n this.internalPage = newPage;\n this.handleEventEmission();\n this.initPagination();\n }\n\n render() {\n return (\n <div class=\"container\">\n <div class=\"items__per-page-wrapper\">\n <div class=\"items__per-page-label\">Results per Page</div>\n <div class=\"items__per-page-field\">\n <ifx-select\n placeholder='false'\n show-search='false'\n value={undefined}\n disabled={false}\n error={false}\n size=\"s\"\n options={this.filteredItemsPerPage}\n placeholder-value=\"Select\"\n ></ifx-select>\n </div>\n </div>\n \n <div class=\"items__total-wrapper\">\n <div class=\"pagination\">\n <ifx-icon-button\n class=\"prev\"\n icon=\"arrow-left-16\"\n onClick={() => this.changePage(this.internalPage - 1)}\n ></ifx-icon-button>\n \n <ol>\n {this.visiblePages.map((page, i) => typeof page === 'number' ? (\n <li \n key={`page-${page}`}\n class={{ [this.CLASS_ACTIVE]: page === this.internalPage }}\n data-page={page}\n >\n <a href=\"javascript:void(0)\">{page}</a>\n </li>\n ) : (\n <li class=\"ellipsis\" key={`ellipsis-${i}`}>\n <span>...</span>\n </li>\n ))}\n </ol>\n \n <ifx-icon-button\n class=\"next\"\n icon=\"arrow-right-16\"\n onClick={() => this.changePage(this.internalPage + 1)}\n ></ifx-icon-button>\n </div>\n </div>\n </div>\n );\n }\n}"],"version":3}