@infineon/infineon-design-system-stencil 37.14.1--canary.1990.b13d1053b56bc94bb0208688a929b6d341856554.0 → 37.15.0--canary.1964.d1721fcfafcf4119f6427df261d727c9433e5b45.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 (483) hide show
  1. package/dist/cjs/ifx-alert_2.cjs.entry.js +1 -1
  2. package/dist/cjs/ifx-basic-table.cjs.entry.js +1 -1
  3. package/dist/cjs/ifx-checkbox-group.cjs.entry.js +3 -2
  4. package/dist/cjs/ifx-checkbox-group.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ifx-checkbox-group.entry.cjs.js.map +1 -1
  6. package/dist/cjs/ifx-chip_3.cjs.entry.js +11 -11
  7. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  8. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-date-picker.cjs.entry.js +2 -2
  10. package/dist/cjs/ifx-download.cjs.entry.js +2 -2
  11. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +2 -2
  14. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  17. package/dist/cjs/ifx-file-upload.cjs.entry.js +2 -2
  18. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +2 -2
  19. package/dist/cjs/ifx-filter-bar.cjs.entry.js +1 -1
  20. package/dist/cjs/ifx-filter-search.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-footer.cjs.entry.js +4 -4
  24. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-indicator.cjs.entry.js +2 -2
  28. package/dist/cjs/ifx-link.cjs.entry.js +1 -1
  29. package/dist/cjs/ifx-list-entry.cjs.entry.js +1 -1
  30. package/dist/cjs/ifx-modal.cjs.entry.js +2 -2
  31. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +4 -4
  32. package/dist/cjs/ifx-navbar-item.cjs.entry.js +5 -5
  33. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +3 -3
  34. package/dist/cjs/ifx-navbar.cjs.entry.js +3 -3
  35. package/dist/cjs/ifx-notification.cjs.entry.js +2 -2
  36. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-progress-bar.cjs.entry.js +1 -1
  38. package/dist/cjs/ifx-radio-button-group.cjs.entry.js +3 -2
  39. package/dist/cjs/ifx-radio-button-group.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ifx-radio-button-group.entry.cjs.js.map +1 -1
  41. package/dist/cjs/ifx-radio-button.cjs.entry.js +2 -2
  42. package/dist/cjs/ifx-search-bar.cjs.entry.js +1 -1
  43. package/dist/cjs/ifx-search-field.cjs.entry.js +2 -2
  44. package/dist/cjs/ifx-segment.cjs.entry.js +1 -1
  45. package/dist/cjs/ifx-segmented-control.cjs.entry.js +5 -3
  46. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ifx-segmented-control.entry.cjs.js.map +1 -1
  48. package/dist/cjs/ifx-select.cjs.entry.js +2 -2
  49. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +5 -5
  50. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  51. package/dist/cjs/ifx-sidebar.cjs.entry.js +5 -5
  52. package/dist/cjs/ifx-slider.cjs.entry.js +2 -2
  53. package/dist/cjs/ifx-spinner.ifx-text-field.entry.cjs.js.map +1 -1
  54. package/dist/cjs/ifx-spinner_2.cjs.entry.js +7 -7
  55. package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ifx-status.cjs.entry.js +1 -1
  57. package/dist/cjs/ifx-step.cjs.entry.js +4 -4
  58. package/dist/cjs/ifx-stepper.cjs.entry.js +2 -2
  59. package/dist/cjs/ifx-switch.cjs.entry.js +1 -1
  60. package/dist/cjs/ifx-tab.cjs.entry.js +1 -1
  61. package/dist/cjs/ifx-table.cjs.entry.js +2 -2
  62. package/dist/cjs/ifx-tabs.cjs.entry.js +2 -2
  63. package/dist/cjs/ifx-tag.cjs.entry.js +1 -1
  64. package/dist/cjs/ifx-templates-ui.cjs.entry.js +1 -1
  65. package/dist/cjs/ifx-textarea.cjs.entry.js +2 -2
  66. package/dist/cjs/ifx-tooltip.cjs.entry.js +4 -4
  67. package/dist/cjs/ifx-tree-view-item.cjs.entry.js +2 -2
  68. package/dist/cjs/ifx-tree-view.cjs.entry.js +1 -1
  69. package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
  70. package/dist/cjs/loader.cjs.js +1 -1
  71. package/dist/collection/components/checkbox-group/checkbox-group.css +15 -2
  72. package/dist/collection/components/checkbox-group/checkbox-group.js +22 -1
  73. package/dist/collection/components/checkbox-group/checkbox-group.js.map +1 -1
  74. package/dist/collection/components/checkbox-group/checkbox-group.stories.js +10 -1
  75. package/dist/collection/components/checkbox-group/checkbox-group.stories.js.map +1 -1
  76. package/dist/collection/components/chip/chip-item/chip-item.js +2 -2
  77. package/dist/collection/components/chip/chip.js +8 -8
  78. package/dist/collection/components/content-switcher/content-switcher-item.js +1 -1
  79. package/dist/collection/components/content-switcher/content-switcher.js +1 -1
  80. package/dist/collection/components/date-picker/date-picker.js +2 -2
  81. package/dist/collection/components/download/download.js +2 -2
  82. package/dist/collection/components/dropdown/dropdown-header/dropdown-header.js +1 -1
  83. package/dist/collection/components/dropdown/dropdown-seperator/dropdown-separator.js +1 -1
  84. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js +1 -1
  85. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js +2 -2
  86. package/dist/collection/components/dropdown/dropdown.js +1 -1
  87. package/dist/collection/components/file-upload/file-upload.js +2 -2
  88. package/dist/collection/components/footer/footer-column.js +1 -1
  89. package/dist/collection/components/footer/footer.js +4 -4
  90. package/dist/collection/components/icon/infineonIconStencil.js +1 -1
  91. package/dist/collection/components/icon-button/icon-button.js +1 -1
  92. package/dist/collection/components/icons-preview/icons-preview.js +1 -1
  93. package/dist/collection/components/indicator/indicator.js +2 -2
  94. package/dist/collection/components/link/link.js +1 -1
  95. package/dist/collection/components/modal/modal.js +2 -2
  96. package/dist/collection/components/navigation/navbar/navbar-item.js +5 -5
  97. package/dist/collection/components/navigation/navbar/navbar-profile.js +3 -3
  98. package/dist/collection/components/navigation/navbar/navbar.js +3 -3
  99. package/dist/collection/components/navigation/sidebar/sidebar-item.js +5 -5
  100. package/dist/collection/components/navigation/sidebar/sidebar-title.js +1 -1
  101. package/dist/collection/components/navigation/sidebar/sidebar.js +5 -5
  102. package/dist/collection/components/notification/notification.js +2 -2
  103. package/dist/collection/components/overview-table/overview-table.js +1 -1
  104. package/dist/collection/components/pagination/pagination.js +1 -1
  105. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  106. package/dist/collection/components/radio-button/radio-button.js +2 -2
  107. package/dist/collection/components/radio-button-group/radio-button-group.css +14 -2
  108. package/dist/collection/components/radio-button-group/radio-button-group.js +22 -1
  109. package/dist/collection/components/radio-button-group/radio-button-group.js.map +1 -1
  110. package/dist/collection/components/radio-button-group/radio-button-group.stories.js +10 -1
  111. package/dist/collection/components/radio-button-group/radio-button-group.stories.js.map +1 -1
  112. package/dist/collection/components/search-bar/search-bar.js +1 -1
  113. package/dist/collection/components/search-field/search-field.js +2 -2
  114. package/dist/collection/components/segmented-control/segment/segment.js +1 -1
  115. package/dist/collection/components/segmented-control/segmented-control.css +17 -3
  116. package/dist/collection/components/segmented-control/segmented-control.js +44 -2
  117. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  118. package/dist/collection/components/segmented-control/segmented-control.stories.js +24 -2
  119. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  120. package/dist/collection/components/select/multi-select/multiselect-option.js +4 -4
  121. package/dist/collection/components/select/single-select/select.js +2 -2
  122. package/dist/collection/components/slider/slider.js +2 -2
  123. package/dist/collection/components/spinner/spinner.js +2 -2
  124. package/dist/collection/components/status/status.js +1 -1
  125. package/dist/collection/components/stepper/step/step.js +4 -4
  126. package/dist/collection/components/stepper/stepper.js +2 -2
  127. package/dist/collection/components/switch/switch.js +1 -1
  128. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +1 -1
  129. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +2 -2
  130. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +1 -1
  131. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js +1 -1
  132. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +1 -1
  133. package/dist/collection/components/table-advanced-version/table.js +2 -2
  134. package/dist/collection/components/table-basic-version/table.js +1 -1
  135. package/dist/collection/components/tabs/tab.js +1 -1
  136. package/dist/collection/components/tabs/tabs.js +2 -2
  137. package/dist/collection/components/tag/tag.js +1 -1
  138. package/dist/collection/components/templates/template/template.js +1 -1
  139. package/dist/collection/components/templates/templates-ui/templates-ui.js +1 -1
  140. package/dist/collection/components/text-field/text-field.css +1 -1
  141. package/dist/collection/components/text-field/text-field.js +4 -4
  142. package/dist/collection/components/text-field/text-field.js.map +1 -1
  143. package/dist/collection/components/textarea/textarea.js +2 -2
  144. package/dist/collection/components/tooltip/tooltip.js +4 -4
  145. package/dist/collection/components/tree-view/tree-view-item.js +2 -2
  146. package/dist/collection/components/tree-view/tree-view.js +1 -1
  147. package/dist/collection/stories/setup-and-installation/faq/faq.js +1 -1
  148. package/dist/components/ifx-accordion-item.js +1 -1
  149. package/dist/components/ifx-alert.js +1 -1
  150. package/dist/components/ifx-basic-table.js +1 -1
  151. package/dist/components/ifx-breadcrumb-item-label.js +1 -1
  152. package/dist/components/ifx-checkbox-group.js +5 -3
  153. package/dist/components/ifx-checkbox-group.js.map +1 -1
  154. package/dist/components/ifx-checkbox.js +1 -1
  155. package/dist/components/ifx-chip-item.js +1 -1
  156. package/dist/components/ifx-chip.js +1 -1
  157. package/dist/components/ifx-content-switcher-item.js +1 -1
  158. package/dist/components/ifx-content-switcher.js +1 -1
  159. package/dist/components/ifx-date-picker.js +3 -3
  160. package/dist/components/ifx-download.js +3 -3
  161. package/dist/components/ifx-dropdown-header.js +1 -1
  162. package/dist/components/ifx-dropdown-item.js +1 -1
  163. package/dist/components/ifx-dropdown-separator.js +1 -1
  164. package/dist/components/ifx-dropdown-trigger-button.js +3 -3
  165. package/dist/components/ifx-dropdown-trigger.js +1 -1
  166. package/dist/components/ifx-dropdown.js +1 -1
  167. package/dist/components/ifx-faq.js +3 -3
  168. package/dist/components/ifx-file-upload.js +5 -5
  169. package/dist/components/ifx-filter-accordion.js +4 -4
  170. package/dist/components/ifx-filter-bar.js +2 -2
  171. package/dist/components/ifx-filter-search.js +3 -3
  172. package/dist/components/ifx-filter-type-group.js +1 -1
  173. package/dist/components/ifx-footer-column.js +1 -1
  174. package/dist/components/ifx-footer.js +4 -4
  175. package/dist/components/ifx-icon-button.js +1 -1
  176. package/dist/components/ifx-icon.js +1 -1
  177. package/dist/components/ifx-icons-preview.js +5 -5
  178. package/dist/components/ifx-indicator.js +1 -1
  179. package/dist/components/ifx-link.js +1 -1
  180. package/dist/components/ifx-list-entry.js +4 -4
  181. package/dist/components/ifx-list.js +2 -2
  182. package/dist/components/ifx-modal.js +4 -4
  183. package/dist/components/ifx-multiselect-option.js +1 -1
  184. package/dist/components/ifx-multiselect.js +1 -1
  185. package/dist/components/ifx-navbar-item.js +7 -7
  186. package/dist/components/ifx-navbar-profile.js +3 -3
  187. package/dist/components/ifx-navbar.js +4 -4
  188. package/dist/components/ifx-notification.js +1 -1
  189. package/dist/components/ifx-overview-table.js +4 -4
  190. package/dist/components/ifx-pagination.js +1 -1
  191. package/dist/components/ifx-progress-bar.js +1 -1
  192. package/dist/components/ifx-radio-button-group.js +5 -3
  193. package/dist/components/ifx-radio-button-group.js.map +1 -1
  194. package/dist/components/ifx-radio-button.js +1 -1
  195. package/dist/components/ifx-search-bar.js +3 -3
  196. package/dist/components/ifx-search-field.js +1 -1
  197. package/dist/components/ifx-segment.js +2 -2
  198. package/dist/components/ifx-segmented-control.js +9 -5
  199. package/dist/components/ifx-segmented-control.js.map +1 -1
  200. package/dist/components/ifx-select.js +1 -1
  201. package/dist/components/ifx-set-filter.js +7 -7
  202. package/dist/components/ifx-sidebar-item.js +7 -7
  203. package/dist/components/ifx-sidebar-title.js +1 -1
  204. package/dist/components/ifx-sidebar.js +5 -5
  205. package/dist/components/ifx-slider.js +3 -3
  206. package/dist/components/ifx-spinner.js +1 -1
  207. package/dist/components/ifx-status.js +1 -1
  208. package/dist/components/ifx-step.js +5 -5
  209. package/dist/components/ifx-stepper.js +2 -2
  210. package/dist/components/ifx-switch.js +1 -1
  211. package/dist/components/ifx-tab.js +1 -1
  212. package/dist/components/ifx-table.js +10 -10
  213. package/dist/components/ifx-tabs.js +3 -3
  214. package/dist/components/ifx-tag.js +2 -2
  215. package/dist/components/ifx-template.js +1 -1
  216. package/dist/components/ifx-templates-ui.js +8 -8
  217. package/dist/components/ifx-text-field.js +1 -1
  218. package/dist/components/ifx-textarea.js +2 -2
  219. package/dist/components/ifx-tooltip.js +5 -5
  220. package/dist/components/ifx-tree-view-item.js +4 -4
  221. package/dist/components/ifx-tree-view.js +1 -1
  222. package/dist/components/{p-BeILQ55F.js → p-2JFFbyg-.js} +3 -3
  223. package/dist/components/{p-BeILQ55F.js.map → p-2JFFbyg-.js.map} +1 -1
  224. package/dist/components/{p-DI1Tz44s.js → p-ADIPRswj.js} +5 -5
  225. package/dist/components/{p-DI1Tz44s.js.map → p-ADIPRswj.js.map} +1 -1
  226. package/dist/components/{p-r7hBylnC.js → p-B-erGWs9.js} +4 -4
  227. package/dist/components/{p-r7hBylnC.js.map → p-B-erGWs9.js.map} +1 -1
  228. package/dist/components/{p-CwsunKGp.js → p-B6Fm7iTY.js} +6 -6
  229. package/dist/components/{p-CwsunKGp.js.map → p-B6Fm7iTY.js.map} +1 -1
  230. package/dist/components/{p-COBB2gby.js → p-B8kacvl9.js} +3 -3
  231. package/dist/components/{p-COBB2gby.js.map → p-B8kacvl9.js.map} +1 -1
  232. package/dist/components/{p-DEGJaJSs.js → p-B9dL8SWq.js} +3 -3
  233. package/dist/components/{p-DEGJaJSs.js.map → p-B9dL8SWq.js.map} +1 -1
  234. package/dist/components/{p-CkOHJ_UX.js → p-BEBd3obw.js} +8 -8
  235. package/dist/components/{p-CkOHJ_UX.js.map → p-BEBd3obw.js.map} +1 -1
  236. package/dist/components/{p-CLgcoxeD.js → p-BUTrT3Q6.js} +4 -4
  237. package/dist/components/{p-CLgcoxeD.js.map → p-BUTrT3Q6.js.map} +1 -1
  238. package/dist/components/{p-Dt9X9aqI.js → p-BWgf6L-y.js} +5 -5
  239. package/dist/components/{p-Dt9X9aqI.js.map → p-BWgf6L-y.js.map} +1 -1
  240. package/dist/components/{p-Bq-GdSe7.js → p-BctmSAbW.js} +3 -3
  241. package/dist/components/{p-Bq-GdSe7.js.map → p-BctmSAbW.js.map} +1 -1
  242. package/dist/components/{p-DyWw4V2x.js → p-BjsR5WjH.js} +5 -5
  243. package/dist/components/{p-DyWw4V2x.js.map → p-BjsR5WjH.js.map} +1 -1
  244. package/dist/components/{p-C0tC8p0l.js → p-BrOTS__r.js} +12 -12
  245. package/dist/components/{p-C0tC8p0l.js.map → p-BrOTS__r.js.map} +1 -1
  246. package/dist/components/{p-Bsg4XNJ8.js → p-C2W97E17.js} +6 -6
  247. package/dist/components/{p-Bsg4XNJ8.js.map → p-C2W97E17.js.map} +1 -1
  248. package/dist/components/{p-CwnDj9-A.js → p-C7evM2QQ.js} +3 -3
  249. package/dist/components/{p-CwnDj9-A.js.map → p-C7evM2QQ.js.map} +1 -1
  250. package/dist/components/{p-DL0DaOdR.js → p-D44F8FsC.js} +3 -3
  251. package/dist/components/{p-DL0DaOdR.js.map → p-D44F8FsC.js.map} +1 -1
  252. package/dist/components/{p-AfeIKrPd.js → p-DbtZVHL-.js} +4 -4
  253. package/dist/components/{p-AfeIKrPd.js.map → p-DbtZVHL-.js.map} +1 -1
  254. package/dist/components/{p-BdjtCY5d.js → p-Dlvk6j_W.js} +8 -8
  255. package/dist/components/p-Dlvk6j_W.js.map +1 -0
  256. package/dist/components/{p-CStEOh5u.js → p-kRbl4pfT.js} +4 -4
  257. package/dist/components/{p-CStEOh5u.js.map → p-kRbl4pfT.js.map} +1 -1
  258. package/dist/components/{p-BPtblWb0.js → p-pGEk1iMS.js} +6 -6
  259. package/dist/components/{p-BPtblWb0.js.map → p-pGEk1iMS.js.map} +1 -1
  260. package/dist/components/{p-FczSL6gb.js → p-wyS2KS0v.js} +7 -7
  261. package/dist/components/{p-FczSL6gb.js.map → p-wyS2KS0v.js.map} +1 -1
  262. package/dist/esm/ifx-alert_2.entry.js +1 -1
  263. package/dist/esm/ifx-basic-table.entry.js +1 -1
  264. package/dist/esm/ifx-checkbox-group.entry.js +3 -2
  265. package/dist/esm/ifx-checkbox-group.entry.js.map +1 -1
  266. package/dist/esm/ifx-chip_3.entry.js +11 -11
  267. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  268. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  269. package/dist/esm/ifx-date-picker.entry.js +2 -2
  270. package/dist/esm/ifx-download.entry.js +2 -2
  271. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  272. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  273. package/dist/esm/ifx-dropdown-trigger-button.entry.js +2 -2
  274. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  275. package/dist/esm/ifx-dropdown.entry.js +1 -1
  276. package/dist/esm/ifx-faq.entry.js +1 -1
  277. package/dist/esm/ifx-file-upload.entry.js +2 -2
  278. package/dist/esm/ifx-filter-accordion.entry.js +2 -2
  279. package/dist/esm/ifx-filter-bar.entry.js +1 -1
  280. package/dist/esm/ifx-filter-search.entry.js +1 -1
  281. package/dist/esm/ifx-filter-type-group.entry.js +1 -1
  282. package/dist/esm/ifx-footer-column.entry.js +1 -1
  283. package/dist/esm/ifx-footer.entry.js +4 -4
  284. package/dist/esm/ifx-icon-button.entry.js +1 -1
  285. package/dist/esm/ifx-icon.entry.js +1 -1
  286. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  287. package/dist/esm/ifx-indicator.entry.js +2 -2
  288. package/dist/esm/ifx-link.entry.js +1 -1
  289. package/dist/esm/ifx-list-entry.entry.js +1 -1
  290. package/dist/esm/ifx-modal.entry.js +2 -2
  291. package/dist/esm/ifx-multiselect_2.entry.js +4 -4
  292. package/dist/esm/ifx-navbar-item.entry.js +5 -5
  293. package/dist/esm/ifx-navbar-profile.entry.js +3 -3
  294. package/dist/esm/ifx-navbar.entry.js +3 -3
  295. package/dist/esm/ifx-notification.entry.js +2 -2
  296. package/dist/esm/ifx-overview-table.entry.js +1 -1
  297. package/dist/esm/ifx-progress-bar.entry.js +1 -1
  298. package/dist/esm/ifx-radio-button-group.entry.js +3 -2
  299. package/dist/esm/ifx-radio-button-group.entry.js.map +1 -1
  300. package/dist/esm/ifx-radio-button.entry.js +2 -2
  301. package/dist/esm/ifx-search-bar.entry.js +1 -1
  302. package/dist/esm/ifx-search-field.entry.js +2 -2
  303. package/dist/esm/ifx-segment.entry.js +1 -1
  304. package/dist/esm/ifx-segmented-control.entry.js +5 -3
  305. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  306. package/dist/esm/ifx-select.entry.js +2 -2
  307. package/dist/esm/ifx-sidebar-item.entry.js +5 -5
  308. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  309. package/dist/esm/ifx-sidebar.entry.js +5 -5
  310. package/dist/esm/ifx-slider.entry.js +2 -2
  311. package/dist/esm/ifx-spinner.ifx-text-field.entry.js.map +1 -1
  312. package/dist/esm/ifx-spinner_2.entry.js +7 -7
  313. package/dist/esm/ifx-spinner_2.entry.js.map +1 -1
  314. package/dist/esm/ifx-status.entry.js +1 -1
  315. package/dist/esm/ifx-step.entry.js +4 -4
  316. package/dist/esm/ifx-stepper.entry.js +2 -2
  317. package/dist/esm/ifx-switch.entry.js +1 -1
  318. package/dist/esm/ifx-tab.entry.js +1 -1
  319. package/dist/esm/ifx-table.entry.js +2 -2
  320. package/dist/esm/ifx-tabs.entry.js +2 -2
  321. package/dist/esm/ifx-tag.entry.js +1 -1
  322. package/dist/esm/ifx-templates-ui.entry.js +1 -1
  323. package/dist/esm/ifx-textarea.entry.js +2 -2
  324. package/dist/esm/ifx-tooltip.entry.js +4 -4
  325. package/dist/esm/ifx-tree-view-item.entry.js +2 -2
  326. package/dist/esm/ifx-tree-view.entry.js +1 -1
  327. package/dist/esm/infineon-design-system-stencil.js +1 -1
  328. package/dist/esm/loader.js +1 -1
  329. package/dist/infineon-design-system-stencil/ifx-checkbox-group.entry.esm.js.map +1 -1
  330. package/dist/infineon-design-system-stencil/ifx-radio-button-group.entry.esm.js.map +1 -1
  331. package/dist/infineon-design-system-stencil/ifx-segmented-control.entry.esm.js.map +1 -1
  332. package/dist/infineon-design-system-stencil/ifx-spinner.ifx-text-field.entry.esm.js.map +1 -1
  333. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  334. package/dist/infineon-design-system-stencil/p-04f2237d.entry.js +2 -0
  335. package/dist/infineon-design-system-stencil/p-04f2237d.entry.js.map +1 -0
  336. package/dist/infineon-design-system-stencil/{p-79399588.entry.js → p-06586e96.entry.js} +2 -2
  337. package/dist/infineon-design-system-stencil/{p-cdbc14e1.entry.js → p-0a162122.entry.js} +2 -2
  338. package/dist/infineon-design-system-stencil/{p-12e9cb3c.entry.js → p-0e0d582c.entry.js} +2 -2
  339. package/dist/infineon-design-system-stencil/{p-0d9b2670.entry.js → p-0e5825a5.entry.js} +2 -2
  340. package/dist/infineon-design-system-stencil/p-17887cb2.entry.js +2 -0
  341. package/dist/infineon-design-system-stencil/{p-ea61b79e.entry.js → p-1943bc7f.entry.js} +2 -2
  342. package/dist/infineon-design-system-stencil/{p-61acd0a3.entry.js → p-19cd1513.entry.js} +2 -2
  343. package/dist/infineon-design-system-stencil/{p-b81d2f37.entry.js → p-1ce77237.entry.js} +2 -2
  344. package/dist/infineon-design-system-stencil/p-213b3a93.entry.js +2 -0
  345. package/dist/infineon-design-system-stencil/{p-0c0e6c8e.entry.js → p-2240a76c.entry.js} +2 -2
  346. package/dist/infineon-design-system-stencil/{p-1503b3bc.entry.js → p-2397df2c.entry.js} +2 -2
  347. package/dist/infineon-design-system-stencil/p-29799c87.entry.js +2 -0
  348. package/dist/infineon-design-system-stencil/{p-fa128756.entry.js → p-2b3fd394.entry.js} +2 -2
  349. package/dist/infineon-design-system-stencil/p-2f2dec57.entry.js +2 -0
  350. package/dist/infineon-design-system-stencil/{p-2418f067.entry.js.map → p-2f2dec57.entry.js.map} +1 -1
  351. package/dist/infineon-design-system-stencil/{p-2bffcd86.entry.js → p-3256c763.entry.js} +2 -2
  352. package/dist/infineon-design-system-stencil/p-382c4f85.entry.js +2 -0
  353. package/dist/infineon-design-system-stencil/{p-edd19eeb.entry.js.map → p-382c4f85.entry.js.map} +1 -1
  354. package/dist/infineon-design-system-stencil/p-4452873e.entry.js +2 -0
  355. package/dist/infineon-design-system-stencil/p-45392cf4.entry.js +2 -0
  356. package/dist/infineon-design-system-stencil/{p-41291d21.entry.js → p-46c95ba7.entry.js} +2 -2
  357. package/dist/infineon-design-system-stencil/{p-a405b6f4.entry.js → p-4aaf616d.entry.js} +2 -2
  358. package/dist/infineon-design-system-stencil/{p-7b091a06.entry.js → p-501f14a4.entry.js} +2 -2
  359. package/dist/infineon-design-system-stencil/{p-0eaf5a5e.entry.js → p-5745f007.entry.js} +2 -2
  360. package/dist/infineon-design-system-stencil/{p-bb927fbf.entry.js → p-5c92cb7b.entry.js} +2 -2
  361. package/dist/infineon-design-system-stencil/{p-cc0309cc.entry.js → p-5cb2aab1.entry.js} +2 -2
  362. package/dist/infineon-design-system-stencil/{p-92e5b3bd.entry.js → p-5d0d9e07.entry.js} +2 -2
  363. package/dist/infineon-design-system-stencil/{p-022667fd.entry.js → p-5f848e4c.entry.js} +2 -2
  364. package/dist/infineon-design-system-stencil/{p-296c1bd4.entry.js → p-5fb3fdea.entry.js} +2 -2
  365. package/dist/infineon-design-system-stencil/p-6a1e8666.entry.js +2 -0
  366. package/dist/infineon-design-system-stencil/p-6a1e8666.entry.js.map +1 -0
  367. package/dist/infineon-design-system-stencil/p-7165e0cf.entry.js +2 -0
  368. package/dist/infineon-design-system-stencil/p-7165e0cf.entry.js.map +1 -0
  369. package/dist/infineon-design-system-stencil/{p-abeffac5.entry.js → p-71d5251b.entry.js} +2 -2
  370. package/dist/infineon-design-system-stencil/{p-3411df03.entry.js → p-74fe3228.entry.js} +2 -2
  371. package/dist/infineon-design-system-stencil/{p-48fec115.entry.js → p-78899cd5.entry.js} +2 -2
  372. package/dist/infineon-design-system-stencil/{p-72bc047a.entry.js → p-7ca40483.entry.js} +2 -2
  373. package/dist/infineon-design-system-stencil/{p-7c017d8c.entry.js → p-80780865.entry.js} +2 -2
  374. package/dist/infineon-design-system-stencil/{p-2803322f.entry.js → p-81710c26.entry.js} +2 -2
  375. package/dist/infineon-design-system-stencil/{p-c47ac148.entry.js → p-87616bcc.entry.js} +2 -2
  376. package/dist/infineon-design-system-stencil/{p-7b4b783a.entry.js → p-955ba323.entry.js} +2 -2
  377. package/dist/infineon-design-system-stencil/{p-c863b508.entry.js → p-9a665d0a.entry.js} +2 -2
  378. package/dist/infineon-design-system-stencil/p-9cc912ed.entry.js +2 -0
  379. package/dist/infineon-design-system-stencil/{p-7462fff6.entry.js.map → p-9cc912ed.entry.js.map} +1 -1
  380. package/dist/infineon-design-system-stencil/p-a03e4f48.entry.js +2 -0
  381. package/dist/infineon-design-system-stencil/{p-62b09872.entry.js → p-a127befe.entry.js} +2 -2
  382. package/dist/infineon-design-system-stencil/p-a6d0163a.entry.js +2 -0
  383. package/dist/infineon-design-system-stencil/p-a7bdfd8b.entry.js +2 -0
  384. package/dist/infineon-design-system-stencil/p-a7bdfd8b.entry.js.map +1 -0
  385. package/dist/infineon-design-system-stencil/{p-2d068462.entry.js → p-adc266e9.entry.js} +2 -2
  386. package/dist/infineon-design-system-stencil/p-b07989b6.entry.js +2 -0
  387. package/dist/infineon-design-system-stencil/{p-7c32c3aa.entry.js → p-b69806b1.entry.js} +2 -2
  388. package/dist/infineon-design-system-stencil/{p-11c13738.entry.js → p-b8b06a31.entry.js} +2 -2
  389. package/dist/infineon-design-system-stencil/{p-4528750a.entry.js → p-bb947485.entry.js} +2 -2
  390. package/dist/infineon-design-system-stencil/{p-bf480e62.entry.js → p-c67c0cf5.entry.js} +2 -2
  391. package/dist/infineon-design-system-stencil/{p-f4bf3d68.entry.js → p-ccecd20d.entry.js} +2 -2
  392. package/dist/infineon-design-system-stencil/{p-262afd53.entry.js → p-dfdaeee3.entry.js} +2 -2
  393. package/dist/infineon-design-system-stencil/{p-772517cc.entry.js → p-e1e0d304.entry.js} +2 -2
  394. package/dist/infineon-design-system-stencil/{p-e2dd3eef.entry.js → p-e49604e9.entry.js} +2 -2
  395. package/dist/infineon-design-system-stencil/{p-15610863.entry.js → p-e5b508ec.entry.js} +2 -2
  396. package/dist/infineon-design-system-stencil/{p-bf51fc38.entry.js → p-ee54a9ba.entry.js} +2 -2
  397. package/dist/infineon-design-system-stencil/{p-66a4ed41.entry.js → p-f2fba247.entry.js} +2 -2
  398. package/dist/infineon-design-system-stencil/p-fbc93427.entry.js +2 -0
  399. package/dist/infineon-design-system-stencil/{p-34146964.entry.js.map → p-fbc93427.entry.js.map} +1 -1
  400. package/dist/infineon-design-system-stencil/{p-5c1a8c83.entry.js → p-fc09ec6b.entry.js} +2 -2
  401. package/dist/infineon-design-system-stencil/p-fe11b230.entry.js +2 -0
  402. package/dist/types/components/checkbox-group/checkbox-group.d.ts +1 -0
  403. package/dist/types/components/checkbox-group/checkbox-group.stories.d.ts +13 -0
  404. package/dist/types/components/radio-button-group/radio-button-group.d.ts +1 -0
  405. package/dist/types/components/radio-button-group/radio-button-group.stories.d.ts +13 -0
  406. package/dist/types/components/segmented-control/segmented-control.d.ts +2 -0
  407. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +20 -0
  408. package/dist/types/components.d.ts +32 -0
  409. package/package.json +1 -1
  410. package/dist/components/p-BdjtCY5d.js.map +0 -1
  411. package/dist/infineon-design-system-stencil/p-2418f067.entry.js +0 -2
  412. package/dist/infineon-design-system-stencil/p-34146964.entry.js +0 -2
  413. package/dist/infineon-design-system-stencil/p-50867a1f.entry.js +0 -2
  414. package/dist/infineon-design-system-stencil/p-7424e1be.entry.js +0 -2
  415. package/dist/infineon-design-system-stencil/p-7424e1be.entry.js.map +0 -1
  416. package/dist/infineon-design-system-stencil/p-7462fff6.entry.js +0 -2
  417. package/dist/infineon-design-system-stencil/p-83b63d0e.entry.js +0 -2
  418. package/dist/infineon-design-system-stencil/p-86523f4e.entry.js +0 -2
  419. package/dist/infineon-design-system-stencil/p-8eb1ba71.entry.js +0 -2
  420. package/dist/infineon-design-system-stencil/p-8eb1ba71.entry.js.map +0 -1
  421. package/dist/infineon-design-system-stencil/p-c06b0a60.entry.js +0 -2
  422. package/dist/infineon-design-system-stencil/p-c75784ef.entry.js +0 -2
  423. package/dist/infineon-design-system-stencil/p-c75784ef.entry.js.map +0 -1
  424. package/dist/infineon-design-system-stencil/p-e0961fed.entry.js +0 -2
  425. package/dist/infineon-design-system-stencil/p-e3452084.entry.js +0 -2
  426. package/dist/infineon-design-system-stencil/p-edd19eeb.entry.js +0 -2
  427. package/dist/infineon-design-system-stencil/p-ee034faf.entry.js +0 -2
  428. package/dist/infineon-design-system-stencil/p-f00cf887.entry.js +0 -2
  429. package/dist/infineon-design-system-stencil/p-f53f7d80.entry.js +0 -2
  430. package/dist/infineon-design-system-stencil/p-f53f7d80.entry.js.map +0 -1
  431. package/dist/infineon-design-system-stencil/p-ffe479d0.entry.js +0 -2
  432. /package/dist/infineon-design-system-stencil/{p-79399588.entry.js.map → p-06586e96.entry.js.map} +0 -0
  433. /package/dist/infineon-design-system-stencil/{p-cdbc14e1.entry.js.map → p-0a162122.entry.js.map} +0 -0
  434. /package/dist/infineon-design-system-stencil/{p-12e9cb3c.entry.js.map → p-0e0d582c.entry.js.map} +0 -0
  435. /package/dist/infineon-design-system-stencil/{p-0d9b2670.entry.js.map → p-0e5825a5.entry.js.map} +0 -0
  436. /package/dist/infineon-design-system-stencil/{p-ffe479d0.entry.js.map → p-17887cb2.entry.js.map} +0 -0
  437. /package/dist/infineon-design-system-stencil/{p-ea61b79e.entry.js.map → p-1943bc7f.entry.js.map} +0 -0
  438. /package/dist/infineon-design-system-stencil/{p-61acd0a3.entry.js.map → p-19cd1513.entry.js.map} +0 -0
  439. /package/dist/infineon-design-system-stencil/{p-b81d2f37.entry.js.map → p-1ce77237.entry.js.map} +0 -0
  440. /package/dist/infineon-design-system-stencil/{p-83b63d0e.entry.js.map → p-213b3a93.entry.js.map} +0 -0
  441. /package/dist/infineon-design-system-stencil/{p-0c0e6c8e.entry.js.map → p-2240a76c.entry.js.map} +0 -0
  442. /package/dist/infineon-design-system-stencil/{p-1503b3bc.entry.js.map → p-2397df2c.entry.js.map} +0 -0
  443. /package/dist/infineon-design-system-stencil/{p-f00cf887.entry.js.map → p-29799c87.entry.js.map} +0 -0
  444. /package/dist/infineon-design-system-stencil/{p-fa128756.entry.js.map → p-2b3fd394.entry.js.map} +0 -0
  445. /package/dist/infineon-design-system-stencil/{p-2bffcd86.entry.js.map → p-3256c763.entry.js.map} +0 -0
  446. /package/dist/infineon-design-system-stencil/{p-c06b0a60.entry.js.map → p-4452873e.entry.js.map} +0 -0
  447. /package/dist/infineon-design-system-stencil/{p-50867a1f.entry.js.map → p-45392cf4.entry.js.map} +0 -0
  448. /package/dist/infineon-design-system-stencil/{p-41291d21.entry.js.map → p-46c95ba7.entry.js.map} +0 -0
  449. /package/dist/infineon-design-system-stencil/{p-a405b6f4.entry.js.map → p-4aaf616d.entry.js.map} +0 -0
  450. /package/dist/infineon-design-system-stencil/{p-7b091a06.entry.js.map → p-501f14a4.entry.js.map} +0 -0
  451. /package/dist/infineon-design-system-stencil/{p-0eaf5a5e.entry.js.map → p-5745f007.entry.js.map} +0 -0
  452. /package/dist/infineon-design-system-stencil/{p-bb927fbf.entry.js.map → p-5c92cb7b.entry.js.map} +0 -0
  453. /package/dist/infineon-design-system-stencil/{p-cc0309cc.entry.js.map → p-5cb2aab1.entry.js.map} +0 -0
  454. /package/dist/infineon-design-system-stencil/{p-92e5b3bd.entry.js.map → p-5d0d9e07.entry.js.map} +0 -0
  455. /package/dist/infineon-design-system-stencil/{p-022667fd.entry.js.map → p-5f848e4c.entry.js.map} +0 -0
  456. /package/dist/infineon-design-system-stencil/{p-296c1bd4.entry.js.map → p-5fb3fdea.entry.js.map} +0 -0
  457. /package/dist/infineon-design-system-stencil/{p-abeffac5.entry.js.map → p-71d5251b.entry.js.map} +0 -0
  458. /package/dist/infineon-design-system-stencil/{p-3411df03.entry.js.map → p-74fe3228.entry.js.map} +0 -0
  459. /package/dist/infineon-design-system-stencil/{p-48fec115.entry.js.map → p-78899cd5.entry.js.map} +0 -0
  460. /package/dist/infineon-design-system-stencil/{p-72bc047a.entry.js.map → p-7ca40483.entry.js.map} +0 -0
  461. /package/dist/infineon-design-system-stencil/{p-7c017d8c.entry.js.map → p-80780865.entry.js.map} +0 -0
  462. /package/dist/infineon-design-system-stencil/{p-2803322f.entry.js.map → p-81710c26.entry.js.map} +0 -0
  463. /package/dist/infineon-design-system-stencil/{p-c47ac148.entry.js.map → p-87616bcc.entry.js.map} +0 -0
  464. /package/dist/infineon-design-system-stencil/{p-7b4b783a.entry.js.map → p-955ba323.entry.js.map} +0 -0
  465. /package/dist/infineon-design-system-stencil/{p-c863b508.entry.js.map → p-9a665d0a.entry.js.map} +0 -0
  466. /package/dist/infineon-design-system-stencil/{p-e0961fed.entry.js.map → p-a03e4f48.entry.js.map} +0 -0
  467. /package/dist/infineon-design-system-stencil/{p-62b09872.entry.js.map → p-a127befe.entry.js.map} +0 -0
  468. /package/dist/infineon-design-system-stencil/{p-ee034faf.entry.js.map → p-a6d0163a.entry.js.map} +0 -0
  469. /package/dist/infineon-design-system-stencil/{p-2d068462.entry.js.map → p-adc266e9.entry.js.map} +0 -0
  470. /package/dist/infineon-design-system-stencil/{p-e3452084.entry.js.map → p-b07989b6.entry.js.map} +0 -0
  471. /package/dist/infineon-design-system-stencil/{p-7c32c3aa.entry.js.map → p-b69806b1.entry.js.map} +0 -0
  472. /package/dist/infineon-design-system-stencil/{p-11c13738.entry.js.map → p-b8b06a31.entry.js.map} +0 -0
  473. /package/dist/infineon-design-system-stencil/{p-4528750a.entry.js.map → p-bb947485.entry.js.map} +0 -0
  474. /package/dist/infineon-design-system-stencil/{p-bf480e62.entry.js.map → p-c67c0cf5.entry.js.map} +0 -0
  475. /package/dist/infineon-design-system-stencil/{p-f4bf3d68.entry.js.map → p-ccecd20d.entry.js.map} +0 -0
  476. /package/dist/infineon-design-system-stencil/{p-262afd53.entry.js.map → p-dfdaeee3.entry.js.map} +0 -0
  477. /package/dist/infineon-design-system-stencil/{p-772517cc.entry.js.map → p-e1e0d304.entry.js.map} +0 -0
  478. /package/dist/infineon-design-system-stencil/{p-e2dd3eef.entry.js.map → p-e49604e9.entry.js.map} +0 -0
  479. /package/dist/infineon-design-system-stencil/{p-15610863.entry.js.map → p-e5b508ec.entry.js.map} +0 -0
  480. /package/dist/infineon-design-system-stencil/{p-bf51fc38.entry.js.map → p-ee54a9ba.entry.js.map} +0 -0
  481. /package/dist/infineon-design-system-stencil/{p-66a4ed41.entry.js.map → p-f2fba247.entry.js.map} +0 -0
  482. /package/dist/infineon-design-system-stencil/{p-5c1a8c83.entry.js.map → p-fc09ec6b.entry.js.map} +0 -0
  483. /package/dist/infineon-design-system-stencil/{p-86523f4e.entry.js.map → p-fe11b230.entry.js.map} +0 -0
@@ -1,9 +1,9 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
2
  import { d as detectFramework, t as trackComponent } from './p-DcmcuUOA.js';
3
3
  import { i as isNestedInIfxComponent } from './p-Bw2fh5LT.js';
4
- import { d as defineCustomElement$3 } from './p-DL0DaOdR.js';
5
- import { d as defineCustomElement$2 } from './p-Bq-GdSe7.js';
6
- import { d as defineCustomElement$1 } from './p-Dt9X9aqI.js';
4
+ import { d as defineCustomElement$3 } from './p-D44F8FsC.js';
5
+ import { d as defineCustomElement$2 } from './p-BctmSAbW.js';
6
+ import { d as defineCustomElement$1 } from './p-BWgf6L-y.js';
7
7
 
8
8
  const multiselectCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}.ifx-multiselect-container{position:relative;box-sizing:border-box;font-family:var(--ifx-font-family)}.ifx-multiselect-container:hover{cursor:pointer}.ifx-multiselect-container .ifx-label-wrapper{font-size:1rem;line-height:1.5rem;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;max-width:100%}.ifx-multiselect-container .ifx-error-message-wrapper{color:#CD002F;font-size:0.75rem;line-height:1rem;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;max-width:100%}.ifx-multiselect-container .ifx-multiselect-wrapper{background-color:#FFFFFF;box-sizing:border-box;display:flex;align-items:center;border:1px solid #8D8786;border-radius:1px;width:100%;font-weight:400;font-style:normal;height:40px;line-height:24px;padding:8px 16px;font-size:1rem;line-height:1.5rem}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible{outline:none}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible:not(.active):not(:active){outline:none}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible:not(.active):not(:active)::before{content:\"\";position:absolute;width:calc(100% + 4px);height:calc(100% + 4px);top:50%;left:50%;transform:translate(-50%, -50%);border:2px solid #0A8276;border-radius:2px}.ifx-multiselect-container .ifx-multiselect-wrapper.disabled{background:#EEEDED;color:#575352;border-color:#575352;cursor:default;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ifx-multiselect-container .ifx-multiselect-wrapper.error{border-color:#CD002F}.ifx-multiselect-container .ifx-multiselect-wrapper:hover:not(.focus,:focus){border-color:#575352}.ifx-multiselect-container .ifx-multiselect-wrapper.active{border-color:#0A8276 !important}.ifx-multiselect-container .ifx-multiselect-wrapper.active .icon-wrapper-up{display:flex;align-items:center;justify-content:center;padding-left:8px}.ifx-multiselect-container .ifx-multiselect-wrapper.active .icon-wrapper-down{display:none}.ifx-multiselect-container .ifx-multiselect-wrapper .icon-wrapper-up{display:none}.ifx-multiselect-container .ifx-multiselect-wrapper .icon-wrapper-down{display:flex;align-items:center;justify-content:center;padding-left:8px}.ifx-multiselect-container .ifx-multiselect-wrapper.is-flipped .ifx-multiselect-dropdown-menu{top:auto;bottom:100%}.ifx-multiselect-container .ifx-multiselect-input{flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ifx-multiselect-container .ifx-multiselect-input.placeholder{opacity:0.5}.ifx-multiselect-container .ifx-multiselect-icon-container{margin-left:auto;display:flex;align-items:center;gap:8px}.ifx-multiselect-container .ifx-multiselect-icon-container .ifx-multiselect-icon-container{display:flex}.ifx-multiselect-container .ifx-multiselect-icon-container .icon-wrapper{display:flex;align-items:center;transition:transform 0.2s ease-in-out}.ifx-multiselect-container .ifx-multiselect-icon-container .icon-wrapper--open{transform:rotate(180deg)}.ifx-multiselect-container .ifx-clear-button{display:flex;align-items:center}.ifx-multiselect-container .ifx-clear-button.hide{display:none}.ifx-multiselect-container .ifx-multiselect-dropdown-menu{box-sizing:border-box;position:absolute;top:100%;left:0;width:100%;margin-top:4px;border:1px solid #EEEDED;background-color:#fff;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1);max-height:300px;z-index:1000;display:flex;flex-direction:column}.ifx-multiselect-dropdown-functions{padding:12px 16px;border-bottom:1px solid #EEEDED;flex-shrink:0}.ifx-multiselect-dropdown-search{margin-bottom:12px}.ifx-multiselect-dropdown-controls{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.ifx-multiselect-dropdown-controls .select-all-wrapper{display:flex}.ifx-multiselect-dropdown-controls .expand-collapse-controls{display:flex;gap:12px}.ifx-multiselect-dropdown-controls .control-item{font-size:0.875rem;line-height:1.25rem}.ifx-multiselect-dropdown-controls .control-item:hover{color:#0A8276}.ifx-multiselect-dropdown-controls .control-item:active{color:#08665C}.ifx-multiselect-dropdown-controls .control-item:focus{outline:none}.ifx-multiselect-dropdown-controls .control-item:focus-visible{outline:2px solid #0A8276;outline-offset:2px;border-radius:1px}.ifx-multiselect-options{flex:1;overflow-y:auto;padding-top:12px;padding-bottom:12px}.ifx-multiselect-options.show-no-results .ifx-multiselect-no-results{display:block}.ifx-multiselect-no-results{padding-left:16px;padding-right:16px;display:none}";
9
9
 
@@ -599,6 +599,6 @@ function defineCustomElement() {
599
599
  }
600
600
 
601
601
  export { Multiselect as M, defineCustomElement as d };
602
- //# sourceMappingURL=p-DyWw4V2x.js.map
602
+ //# sourceMappingURL=p-BjsR5WjH.js.map
603
603
 
604
- //# sourceMappingURL=p-DyWw4V2x.js.map
604
+ //# sourceMappingURL=p-BjsR5WjH.js.map
@@ -1 +1 @@
1
- {"file":"p-DyWw4V2x.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"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 async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-multiselect', await framework)\n }\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 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}"],"version":3}
1
+ {"file":"p-BjsR5WjH.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"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 async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-multiselect', await framework)\n }\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 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}"],"version":3}
@@ -1,8 +1,8 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
2
  import { d as detectFramework, t as trackComponent } from './p-DcmcuUOA.js';
3
3
  import { i as isNestedInIfxComponent } from './p-Bw2fh5LT.js';
4
- import { d as defineCustomElement$2 } from './p-Bq-GdSe7.js';
5
- import { d as defineCustomElement$1 } from './p-CLgcoxeD.js';
4
+ import { d as defineCustomElement$2 } from './p-BctmSAbW.js';
5
+ import { d as defineCustomElement$1 } from './p-BUTrT3Q6.js';
6
6
 
7
7
  const chipCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}:host{display:inline-block}.chip{position:relative}.chip__wrapper{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;border:1px solid #BFBBBB;border-radius:9999px;background:#FFFFFF;cursor:pointer;transition:border 100ms ease;font:400 0.875rem/1.25rem \"Source Sans 3\"}.chip__wrapper:hover,.chip__wrapper:focus-visible{outline:none;border:1px solid #575352}.chip__wrapper:focus{border:1px solid #0A8276}.chip__wrapper.chip__wrapper--small{padding:4px 12px}.chip__wrapper.chip__wrapper--large{padding:8px 16px}.chip__wrapper.chip__wrapper--opened{border:1px solid #0A8276}.chip__wrapper.chip__wrapper--opened .wrapper__open-button{transform:rotate(-180deg)}.chip__wrapper.chip__wrapper--selected{outline:3px solid #0A8276;outline-offset:-3px;color:#0A8276}.chip__wrapper.chip__wrapper--selected:hover,.chip__wrapper.chip__wrapper--selected:focus-visible{outline:3px solid #08665C;color:#08665C}.wrapper__label{display:inline-flex;align-items:center;gap:4px;font:400 0.875rem/1.25rem \"Source Sans 3\"}.wrapper__label .label__selected-options{font:600 0.875rem/1.25rem \"Source Sans 3\"}.wrapper__open-button{display:flex;align-items:center;transition:all 300ms ease}.wrapper__unselect-button{display:flex;align-items:center}.chip__dropdown{position:absolute;z-index:1;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1019607843);border:1px solid #EEEDED;border-radius:1px;padding:8px 0;min-width:222px;background-color:#FFFFFF}";
8
8
 
@@ -272,17 +272,17 @@ const Chip = /*@__PURE__*/ proxyCustomElement(class Chip extends H {
272
272
  }
273
273
  }
274
274
  render() {
275
- return (h("div", { key: 'c91add8c4af1fa4ec84184992969deefa67d3feb', class: 'chip' }, h("div", { key: 'cc35edda151d00c7a7670859806f9678057d941e', class: `chip__wrapper chip__wrapper--${this.size === 'small' ? 'small' : 'large'}
275
+ return (h("div", { key: 'aee43972031c1cfd4c0e3a1c9e05d14e56ae0f8d', class: 'chip' }, h("div", { key: '1bdc5297fc429fc3bb24f1252ecd753270af761b', class: `chip__wrapper chip__wrapper--${this.size === 'small' ? 'small' : 'large'}
276
276
  chip__wrapper--${this.variant === 'multi' ? 'multi' : 'single'}
277
277
  ${this.opened && !this.readOnly ? 'chip__wrapper--opened' : ''}
278
- ${this.selectedOptions.length ? 'chip__wrapper--selected' : ''}`, tabIndex: 0, onClick: !this.readOnly ? () => { this.handleWrapperClick(); } : undefined, role: 'combobox', "aria-label": this.ariaLabel, "aria-value": this.getSelectedOptions(), "aria-haspopup": !this.readOnly ? 'listbox' : undefined, "aria-expanded": !this.readOnly ? this.opened.toString() : undefined, "aria-controls": !this.readOnly ? 'dropdown' : undefined, "aria-readonly": this.readOnly ? 'true' : undefined, "aria-multiselectable": this.variant === 'multi' ? 'true' : undefined }, h("div", { key: 'a9c1790c753340227ee88a059f63d9c260705eb8', class: 'wrapper__label' }, (this.selectedOptions.length === 0) && `${this.placeholder}`, (this.selectedOptions.length !== 0 && (this.variant === 'multi' || this.readOnly) && this.placeholder !== '') &&
278
+ ${this.selectedOptions.length ? 'chip__wrapper--selected' : ''}`, tabIndex: 0, onClick: !this.readOnly ? () => { this.handleWrapperClick(); } : undefined, role: 'combobox', "aria-label": this.ariaLabel, "aria-value": this.getSelectedOptions(), "aria-haspopup": !this.readOnly ? 'listbox' : undefined, "aria-expanded": !this.readOnly ? this.opened.toString() : undefined, "aria-controls": !this.readOnly ? 'dropdown' : undefined, "aria-readonly": this.readOnly ? 'true' : undefined, "aria-multiselectable": this.variant === 'multi' ? 'true' : undefined }, h("div", { key: '8e24165f68ba1651fd1b1766acb1bef47f85e53e', class: 'wrapper__label' }, (this.selectedOptions.length === 0) && `${this.placeholder}`, (this.selectedOptions.length !== 0 && (this.variant === 'multi' || this.readOnly) && this.placeholder !== '') &&
279
279
  `${this.placeholder}:`, (this.selectedOptions.length !== 0) &&
280
- h("div", { key: '4d797db98446a87c02944bd7650445d78f637e5d', class: 'label__selected-options' }, this.getSelectedOptions()), (this.selectedOptions.length > 2 && this.variant === 'multi') &&
281
- h("ifx-indicator", { key: '9a3576fa06fbcac135b20a0ba2337832b168d28a', variant: 'number', number: this.selectedOptions.length - 2 })), !this.readOnly && (this.variant !== 'multi' || (this.variant === 'multi' && this.selectedOptions.length === 0)) &&
282
- h("div", { key: '678d1ba8227d543feb3da142d78e3c4bc5de1b32', class: 'wrapper__open-button' }, h("ifx-icon", { key: 1, icon: `chevron-down-16` })), (this.variant !== 'multi' && this.readOnly !== false && this.selectedOptions.length > 0) &&
283
- h("div", { key: 'd4856bfa3359a008797712a9391281303edb0dd8', class: 'wrapper__unselect-button', onClick: (e) => { this.handleUnselectButtonClick(e); } }, h("ifx-icon", { key: 2, icon: `cross16` })), ((this.selectedOptions.length >= 1) && this.variant === 'multi') &&
284
- h("div", { key: '059b498f687e043e70e1194de3d1c1a3a124409e', class: 'wrapper__unselect-button', onClick: (e) => { this.handleUnselectButtonClick(e); } }, h("ifx-icon", { key: 2, icon: `cross16` }))), this.opened && !this.readOnly &&
285
- h("div", { key: '628c7180e6f8257942c79b24e254f6924910f115', id: 'dropdown', role: 'listbox', class: 'chip__dropdown' }, h("slot", { key: '373297c8235e4748e822da674a0488060bb9c228' }))));
280
+ h("div", { key: '12b5482198b88105362edbc618fd77e5feb9dd2c', class: 'label__selected-options' }, this.getSelectedOptions()), (this.selectedOptions.length > 2 && this.variant === 'multi') &&
281
+ h("ifx-indicator", { key: '50eace4d8b084d3a77a8eb78946f8f103c22e381', variant: 'number', number: this.selectedOptions.length - 2 })), !this.readOnly && (this.variant !== 'multi' || (this.variant === 'multi' && this.selectedOptions.length === 0)) &&
282
+ h("div", { key: 'aab1d44bbabcbfa778c4d2946bb0dff0d838fea1', class: 'wrapper__open-button' }, h("ifx-icon", { key: 1, icon: `chevron-down-16` })), (this.variant !== 'multi' && this.readOnly !== false && this.selectedOptions.length > 0) &&
283
+ h("div", { key: 'bcd7bb998410f41363d8b14fe5537fd405fd6cac', class: 'wrapper__unselect-button', onClick: (e) => { this.handleUnselectButtonClick(e); } }, h("ifx-icon", { key: 2, icon: `cross16` })), ((this.selectedOptions.length >= 1) && this.variant === 'multi') &&
284
+ h("div", { key: '71f3a9a831e0a65d42e50995096e1a2fdff634f3', class: 'wrapper__unselect-button', onClick: (e) => { this.handleUnselectButtonClick(e); } }, h("ifx-icon", { key: 2, icon: `cross16` }))), this.opened && !this.readOnly &&
285
+ h("div", { key: '922a1cf9f754b8246ae033272a5c3b641bb41784', id: 'dropdown', role: 'listbox', class: 'chip__dropdown' }, h("slot", { key: '2406397c61326899eae79e798610f2a567e94bed' }))));
286
286
  }
287
287
  get chip() { return this; }
288
288
  static get watchers() { return {
@@ -328,6 +328,6 @@ function defineCustomElement() {
328
328
  }
329
329
 
330
330
  export { Chip as C, defineCustomElement as d };
331
- //# sourceMappingURL=p-C0tC8p0l.js.map
331
+ //# sourceMappingURL=p-BrOTS__r.js.map
332
332
 
333
- //# sourceMappingURL=p-C0tC8p0l.js.map
333
+ //# sourceMappingURL=p-BrOTS__r.js.map
@@ -1 +1 @@
1
- {"file":"p-C0tC8p0l.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/chip/chip.scss?tag=ifx-chip&encapsulation=shadow","src/components/chip/chip.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-block;\n}\n\n.chip {\n position: relative;\n}\n\n.chip__wrapper {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: tokens.$ifxSpace100;\n\n box-sizing: border-box;\n border: 1px solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadiusRound;\n \n background: tokens.$ifxColorBaseWhite;\n \n cursor: pointer; \n \n transition: border 100ms ease;\n\n font: tokens.$ifxBodyBody04;\n \n &:hover, &:focus-visible {\n outline: none;\n border: 1px solid tokens.$ifxColorEngineering500;\n }\n\n &:focus {\n border: 1px solid tokens.$ifxColorOcean500;\n }\n \n &.chip__wrapper--small {\n padding: tokens.$ifxSpace50 tokens.$ifxSpace150;\n }\n \n &.chip__wrapper--large {\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n }\n \n &.chip__wrapper--opened {\n border: 1px solid tokens.$ifxColorOcean500;\n \n .wrapper__open-button {\n transform: rotate(-180deg);\n }\n }\n \n &.chip__wrapper--selected {\n outline: 3px solid tokens.$ifxColorOcean500;\n outline-offset: -3px;\n \n color: tokens.$ifxColorOcean500;\n \n &:hover, &:focus-visible {\n outline: 3px solid tokens.$ifxColorOcean600;\n \n color: tokens.$ifxColorOcean600;\n }\n }\n}\n\n.wrapper__label {\n display: inline-flex;\n align-items: center;\n gap: tokens.$ifxSpace50;\n\n font: tokens.$ifxBodyBody04;\n \n .label__selected-options {\n font: tokens.$ifxBodyBodySemibold04;\n }\n}\n\n.wrapper__open-button {\n display:flex;\n align-items: center;\n \n transition: all 300ms ease;\n}\n\n.wrapper__unselect-button {\n display:flex;\n align-items: center;\n}\n\n.chip__dropdown {\n position: absolute;\n z-index: 1;\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n border: 1px solid tokens.$ifxColorEngineering200;\n border-radius: tokens.$ifxBorderRadius12;\n padding: tokens.$ifxSpace100 0;\n\n min-width: 222px;\n \n background-color: tokens.$ifxColorBaseWhite;\n}\n","import { h, Component, Element, Event, EventEmitter, Listen, Prop, State, Watch } from '@stencil/core';\nimport { ChipItemSelectEvent } from './interfaces';\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-chip',\n styleUrl: 'chip.scss',\n shadow: true\n})\nexport class Chip {\n @Element() chip: HTMLIfxChipElement;\n\n @Event() ifxChange: EventEmitter<{ previousSelection: Array<ChipItemSelectEvent>, currentSelection: Array<ChipItemSelectEvent>, name: string }>;\n @Prop() placeholder: string = '';\n @Prop() size: 'small' | 'large' = 'large';\n @Prop({ mutable: true }) value: Array<string> | string = undefined;\n @Prop() variant: 'single' | 'multi' = 'single';\n @Prop() readOnly: boolean = false;\n @Prop() ariaLabel: string | null;\n\n @State() opened: boolean = false;\n @State() selectedOptions: Array<ChipItemSelectEvent> = [];\n\n @Watch('value')\n handleValueChange(newValue: Array<string> | string) {\n this.syncSelectedOptionsWithProp(newValue);\n }\n\n @Watch('readOnly')\n handleReadOnlyChange(newValue: boolean) {\n if (newValue) {\n this.opened = false;\n }\n }\n\n @Listen('mousedown', { target: 'document' })\n closeDropdownOnOutsideClick(event: MouseEvent) {\n const path = event.composedPath();\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n const chipDropdown: HTMLElement = this.chip.shadowRoot.querySelector('.chip__dropdown');\n if (!path.includes(chipDropdown) && !path.includes(chipWrapper) && this.opened) {\n this.toggleDropdownMenu();\n }\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n // override behavior of all keys except Tab. Users should be able to tab out of the component.\n if (event.code !== 'Tab') {\n event.preventDefault(); \n }\n\n if ((event.target as HTMLElement).tagName === 'IFX-CHIP') {\n this.handleWrapperKeyDown(event);\n } else if ((event.target as HTMLElement).tagName === 'IFX-CHIP-ITEM') {\n this.handleDropdownKeyDown(event);\n }\n }\n\n @Listen('ifxChipItemSelect')\n updateSelectedOptions(event: CustomEvent<ChipItemSelectEvent>) {\n const eventDetail: ChipItemSelectEvent = event.detail;\n const previousSelection: Array<ChipItemSelectEvent> = [...this.selectedOptions];\n\n if (this.variant !== 'multi') {\n if (eventDetail.selected) {\n this.opened = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected && chipItem !== event.target) {\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n };\n chipItem.selected = false;\n }\n });\n this.selectedOptions = [eventDetail];\n } else {\n this.selectedOptions = [];\n }\n this.value = this.selectedOptions[0] ? this.selectedOptions[0].value : undefined;\n } else {\n if (eventDetail.selected) {\n // Prevent duplicate entries\n if (!this.selectedOptions.find(option => option.value === eventDetail.value)) {\n this.selectedOptions = [...this.selectedOptions, eventDetail];\n }\n } else {\n this.selectedOptions = this.selectedOptions.filter((option) => option.value !== eventDetail.value);\n }\n this.value = this.selectedOptions.map((option) => option.value);\n }\n\n if (eventDetail.emitIfxChange) {\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: this.selectedOptions,\n name: this.placeholder\n });\n }\n }\n\n getChipItems(): NodeList {\n return this.chip.querySelectorAll('ifx-chip-item');\n }\n\n getSelectedOptions(): string {\n if (this.variant !== 'multi') {\n return this.selectedOptions.map(option => option.label).join('');\n }\n return this.selectedOptions.slice(0, 2).map(option => option.label).join(', ');\n }\n\n toggleDropdownMenu() {\n if (this.readOnly) return;\n this.opened = !this.opened;\n }\n\n /**\n * Focuses the chip item at the specified index.\n * @param index the index of the chip item to focus. -1 will focus the last chip item.\n */\n focusChipItemAt(index: number = 0) {\n this.opened = true;\n const chipItems: NodeList = this.getChipItems();\n let item: HTMLIfxChipItemElement;\n \n if (index === -1) {\n item = chipItems.item(chipItems.length - 1) as HTMLIfxChipItemElement;\n } else if (index >= 0 && index < chipItems.length) {\n item = chipItems.item(index) as HTMLIfxChipItemElement;\n } else {\n console.error(`Invalid index: ${index}`);\n return;\n }\n\n const shadowItem = item.shadowRoot.querySelector('.chip-item') as HTMLDivElement;\n if (shadowItem) {\n // Delay needed for the shadow item to be rendered.\n setTimeout(() => {\n shadowItem.focus();\n }, 1);\n }\n }\n\n focusChip() {\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n chipWrapper.focus();\n }\n\n handleUnselectButtonClick(event: MouseEvent) {\n event.stopPropagation();\n this.opened = false;\n\n let itemGotUnselected = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected) {\n itemGotUnselected = true;\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n }\n chipItem.selected = false;\n }\n });\n\n /* Emit event only if at least one item was unselected. */\n if (itemGotUnselected) {\n const previousSelection: Array<ChipItemSelectEvent> = this.selectedOptions;\n this.selectedOptions = [];\n this.value = [];\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: [],\n name: this.placeholder\n });\n }\n }\n\n handleWrapperClick() {\n if (!this.readOnly) {\n this.toggleDropdownMenu();\n }\n }\n\n handleWrapperKeyDown(event: KeyboardEvent) {\n // Keymap oriented at https://www.w3.org/WAI/ARIA/apg/patterns/combobox/#keyboard_interaction\n if (this.readOnly) return;\n\n if (!this.opened) {\n switch (event.code) {\n case 'Space':\n case 'Enter':\n case 'ArrowDown':\n this.focusChipItemAt(0);\n break;\n case 'ArrowUp':\n this.focusChipItemAt(-1);\n break;\n }\n } else {\n switch (event.code) {\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n }\n\n handleDropdownKeyDown(event: KeyboardEvent) {\n let chipitems = this.getChipItems();\n\n let targetIndex = Array.from(chipitems).indexOf(event.target as HTMLIfxChipItemElement);\n if (targetIndex === -1) {\n console.error('Target not found in chip items');\n return;\n }\n\n switch (event.code) {\n case 'ArrowDown':\n if (targetIndex === chipitems.length - 1) break;\n this.focusChipItemAt(targetIndex + 1);\n break;\n case 'ArrowUp':\n if (targetIndex === 0) break;\n this.focusChipItemAt( targetIndex - 1);\n break;\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n case 'Space':\n // selection is handled by the chip-item component\n if (this.variant === 'single') {\n // only close dropdown if single select\n this.opened = false;\n this.focusChip();\n }\n break;\n case 'Enter':\n // selection is handled by the chip-item component\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n\n syncChipState() {\n const chipItems: NodeList = this.getChipItems();\n let key: number = 0;\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n chipItem.chipState = {\n emitIfxChipItemSelect: true,\n size: (this.size === 'small' ? 'small' : 'large'),\n variant: (this.variant === 'multi' ? 'multi' : 'single'),\n key: key++\n };\n });\n }\n\n syncSelectedOptionsWithProp(newValue: Array<string> | string) {\n // Clear old selected options\n this.selectedOptions = [];\n\n const generateKey = (() => {\n let count = 0;\n return () => count++;\n })();\n\n if (Array.isArray(newValue)) {\n this.selectedOptions = newValue.map(value => ({\n value,\n label: value,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }));\n } else if (typeof newValue === 'string') {\n this.selectedOptions = [{\n value: newValue,\n label: newValue,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }];\n }\n\n this.syncChipState();\n }\n\n componentWillLoad() {\n this.syncSelectedOptionsWithProp(this.value);\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.chip)) { \n const framework = detectFramework();\n trackComponent('ifx-chip', await framework)\n }\n }\n\n render() {\n return (\n <div class='chip'>\n <div class={`chip__wrapper chip__wrapper--${this.size === 'small' ? 'small' : 'large'}\n chip__wrapper--${this.variant === 'multi' ? 'multi' : 'single'}\n ${this.opened && !this.readOnly ? 'chip__wrapper--opened' : ''}\n ${this.selectedOptions.length ? 'chip__wrapper--selected' : ''}`}\n tabIndex={0}\n onClick={!this.readOnly ? () => { this.handleWrapperClick() } : undefined}\n role='combobox'\n aria-label={this.ariaLabel}\n aria-value={this.getSelectedOptions()}\n aria-haspopup={!this.readOnly ? 'listbox' : undefined}\n aria-expanded={!this.readOnly ? this.opened.toString() : undefined}\n aria-controls={!this.readOnly ? 'dropdown' : undefined}\n aria-readonly={this.readOnly ? 'true' : undefined}\n aria-multiselectable={this.variant === 'multi' ? 'true' : undefined}\n >\n\n <div class='wrapper__label'>\n {\n (this.selectedOptions.length === 0) && `${this.placeholder}`\n }\n\n {\n (this.selectedOptions.length !== 0 && (this.variant === 'multi' || this.readOnly) && this.placeholder !== '') &&\n `${this.placeholder}:`\n }\n\n {\n (this.selectedOptions.length !== 0) &&\n <div class='label__selected-options'>\n {this.getSelectedOptions()}\n </div>\n }\n\n {\n (this.selectedOptions.length > 2 && this.variant === 'multi') &&\n <ifx-indicator variant='number' number={this.selectedOptions.length - 2}></ifx-indicator>\n }\n </div>\n\n {\n !this.readOnly && (this.variant !== 'multi' || (this.variant === 'multi' && this.selectedOptions.length === 0)) &&\n <div class='wrapper__open-button'>\n <ifx-icon key={1} icon={`chevron-down-16`} />\n </div>\n }\n\n\n { \n (this.variant !== 'multi' && this.readOnly !== false && this.selectedOptions.length > 0) &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n {\n ((this.selectedOptions.length >= 1) && this.variant === 'multi') &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n </div>\n\n {\n this.opened && !this.readOnly &&\n <div id='dropdown' role='listbox' class='chip__dropdown'>\n <slot />\n </div>\n }\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-BrOTS__r.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/chip/chip.scss?tag=ifx-chip&encapsulation=shadow","src/components/chip/chip.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-block;\n}\n\n.chip {\n position: relative;\n}\n\n.chip__wrapper {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: tokens.$ifxSpace100;\n\n box-sizing: border-box;\n border: 1px solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadiusRound;\n \n background: tokens.$ifxColorBaseWhite;\n \n cursor: pointer; \n \n transition: border 100ms ease;\n\n font: tokens.$ifxBodyBody04;\n \n &:hover, &:focus-visible {\n outline: none;\n border: 1px solid tokens.$ifxColorEngineering500;\n }\n\n &:focus {\n border: 1px solid tokens.$ifxColorOcean500;\n }\n \n &.chip__wrapper--small {\n padding: tokens.$ifxSpace50 tokens.$ifxSpace150;\n }\n \n &.chip__wrapper--large {\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n }\n \n &.chip__wrapper--opened {\n border: 1px solid tokens.$ifxColorOcean500;\n \n .wrapper__open-button {\n transform: rotate(-180deg);\n }\n }\n \n &.chip__wrapper--selected {\n outline: 3px solid tokens.$ifxColorOcean500;\n outline-offset: -3px;\n \n color: tokens.$ifxColorOcean500;\n \n &:hover, &:focus-visible {\n outline: 3px solid tokens.$ifxColorOcean600;\n \n color: tokens.$ifxColorOcean600;\n }\n }\n}\n\n.wrapper__label {\n display: inline-flex;\n align-items: center;\n gap: tokens.$ifxSpace50;\n\n font: tokens.$ifxBodyBody04;\n \n .label__selected-options {\n font: tokens.$ifxBodyBodySemibold04;\n }\n}\n\n.wrapper__open-button {\n display:flex;\n align-items: center;\n \n transition: all 300ms ease;\n}\n\n.wrapper__unselect-button {\n display:flex;\n align-items: center;\n}\n\n.chip__dropdown {\n position: absolute;\n z-index: 1;\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n border: 1px solid tokens.$ifxColorEngineering200;\n border-radius: tokens.$ifxBorderRadius12;\n padding: tokens.$ifxSpace100 0;\n\n min-width: 222px;\n \n background-color: tokens.$ifxColorBaseWhite;\n}\n","import { h, Component, Element, Event, EventEmitter, Listen, Prop, State, Watch } from '@stencil/core';\nimport { ChipItemSelectEvent } from './interfaces';\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-chip',\n styleUrl: 'chip.scss',\n shadow: true\n})\nexport class Chip {\n @Element() chip: HTMLIfxChipElement;\n\n @Event() ifxChange: EventEmitter<{ previousSelection: Array<ChipItemSelectEvent>, currentSelection: Array<ChipItemSelectEvent>, name: string }>;\n @Prop() placeholder: string = '';\n @Prop() size: 'small' | 'large' = 'large';\n @Prop({ mutable: true }) value: Array<string> | string = undefined;\n @Prop() variant: 'single' | 'multi' = 'single';\n @Prop() readOnly: boolean = false;\n @Prop() ariaLabel: string | null;\n\n @State() opened: boolean = false;\n @State() selectedOptions: Array<ChipItemSelectEvent> = [];\n\n @Watch('value')\n handleValueChange(newValue: Array<string> | string) {\n this.syncSelectedOptionsWithProp(newValue);\n }\n\n @Watch('readOnly')\n handleReadOnlyChange(newValue: boolean) {\n if (newValue) {\n this.opened = false;\n }\n }\n\n @Listen('mousedown', { target: 'document' })\n closeDropdownOnOutsideClick(event: MouseEvent) {\n const path = event.composedPath();\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n const chipDropdown: HTMLElement = this.chip.shadowRoot.querySelector('.chip__dropdown');\n if (!path.includes(chipDropdown) && !path.includes(chipWrapper) && this.opened) {\n this.toggleDropdownMenu();\n }\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n // override behavior of all keys except Tab. Users should be able to tab out of the component.\n if (event.code !== 'Tab') {\n event.preventDefault(); \n }\n\n if ((event.target as HTMLElement).tagName === 'IFX-CHIP') {\n this.handleWrapperKeyDown(event);\n } else if ((event.target as HTMLElement).tagName === 'IFX-CHIP-ITEM') {\n this.handleDropdownKeyDown(event);\n }\n }\n\n @Listen('ifxChipItemSelect')\n updateSelectedOptions(event: CustomEvent<ChipItemSelectEvent>) {\n const eventDetail: ChipItemSelectEvent = event.detail;\n const previousSelection: Array<ChipItemSelectEvent> = [...this.selectedOptions];\n\n if (this.variant !== 'multi') {\n if (eventDetail.selected) {\n this.opened = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected && chipItem !== event.target) {\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n };\n chipItem.selected = false;\n }\n });\n this.selectedOptions = [eventDetail];\n } else {\n this.selectedOptions = [];\n }\n this.value = this.selectedOptions[0] ? this.selectedOptions[0].value : undefined;\n } else {\n if (eventDetail.selected) {\n // Prevent duplicate entries\n if (!this.selectedOptions.find(option => option.value === eventDetail.value)) {\n this.selectedOptions = [...this.selectedOptions, eventDetail];\n }\n } else {\n this.selectedOptions = this.selectedOptions.filter((option) => option.value !== eventDetail.value);\n }\n this.value = this.selectedOptions.map((option) => option.value);\n }\n\n if (eventDetail.emitIfxChange) {\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: this.selectedOptions,\n name: this.placeholder\n });\n }\n }\n\n getChipItems(): NodeList {\n return this.chip.querySelectorAll('ifx-chip-item');\n }\n\n getSelectedOptions(): string {\n if (this.variant !== 'multi') {\n return this.selectedOptions.map(option => option.label).join('');\n }\n return this.selectedOptions.slice(0, 2).map(option => option.label).join(', ');\n }\n\n toggleDropdownMenu() {\n if (this.readOnly) return;\n this.opened = !this.opened;\n }\n\n /**\n * Focuses the chip item at the specified index.\n * @param index the index of the chip item to focus. -1 will focus the last chip item.\n */\n focusChipItemAt(index: number = 0) {\n this.opened = true;\n const chipItems: NodeList = this.getChipItems();\n let item: HTMLIfxChipItemElement;\n \n if (index === -1) {\n item = chipItems.item(chipItems.length - 1) as HTMLIfxChipItemElement;\n } else if (index >= 0 && index < chipItems.length) {\n item = chipItems.item(index) as HTMLIfxChipItemElement;\n } else {\n console.error(`Invalid index: ${index}`);\n return;\n }\n\n const shadowItem = item.shadowRoot.querySelector('.chip-item') as HTMLDivElement;\n if (shadowItem) {\n // Delay needed for the shadow item to be rendered.\n setTimeout(() => {\n shadowItem.focus();\n }, 1);\n }\n }\n\n focusChip() {\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n chipWrapper.focus();\n }\n\n handleUnselectButtonClick(event: MouseEvent) {\n event.stopPropagation();\n this.opened = false;\n\n let itemGotUnselected = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected) {\n itemGotUnselected = true;\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n }\n chipItem.selected = false;\n }\n });\n\n /* Emit event only if at least one item was unselected. */\n if (itemGotUnselected) {\n const previousSelection: Array<ChipItemSelectEvent> = this.selectedOptions;\n this.selectedOptions = [];\n this.value = [];\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: [],\n name: this.placeholder\n });\n }\n }\n\n handleWrapperClick() {\n if (!this.readOnly) {\n this.toggleDropdownMenu();\n }\n }\n\n handleWrapperKeyDown(event: KeyboardEvent) {\n // Keymap oriented at https://www.w3.org/WAI/ARIA/apg/patterns/combobox/#keyboard_interaction\n if (this.readOnly) return;\n\n if (!this.opened) {\n switch (event.code) {\n case 'Space':\n case 'Enter':\n case 'ArrowDown':\n this.focusChipItemAt(0);\n break;\n case 'ArrowUp':\n this.focusChipItemAt(-1);\n break;\n }\n } else {\n switch (event.code) {\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n }\n\n handleDropdownKeyDown(event: KeyboardEvent) {\n let chipitems = this.getChipItems();\n\n let targetIndex = Array.from(chipitems).indexOf(event.target as HTMLIfxChipItemElement);\n if (targetIndex === -1) {\n console.error('Target not found in chip items');\n return;\n }\n\n switch (event.code) {\n case 'ArrowDown':\n if (targetIndex === chipitems.length - 1) break;\n this.focusChipItemAt(targetIndex + 1);\n break;\n case 'ArrowUp':\n if (targetIndex === 0) break;\n this.focusChipItemAt( targetIndex - 1);\n break;\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n case 'Space':\n // selection is handled by the chip-item component\n if (this.variant === 'single') {\n // only close dropdown if single select\n this.opened = false;\n this.focusChip();\n }\n break;\n case 'Enter':\n // selection is handled by the chip-item component\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n\n syncChipState() {\n const chipItems: NodeList = this.getChipItems();\n let key: number = 0;\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n chipItem.chipState = {\n emitIfxChipItemSelect: true,\n size: (this.size === 'small' ? 'small' : 'large'),\n variant: (this.variant === 'multi' ? 'multi' : 'single'),\n key: key++\n };\n });\n }\n\n syncSelectedOptionsWithProp(newValue: Array<string> | string) {\n // Clear old selected options\n this.selectedOptions = [];\n\n const generateKey = (() => {\n let count = 0;\n return () => count++;\n })();\n\n if (Array.isArray(newValue)) {\n this.selectedOptions = newValue.map(value => ({\n value,\n label: value,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }));\n } else if (typeof newValue === 'string') {\n this.selectedOptions = [{\n value: newValue,\n label: newValue,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }];\n }\n\n this.syncChipState();\n }\n\n componentWillLoad() {\n this.syncSelectedOptionsWithProp(this.value);\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.chip)) { \n const framework = detectFramework();\n trackComponent('ifx-chip', await framework)\n }\n }\n\n render() {\n return (\n <div class='chip'>\n <div class={`chip__wrapper chip__wrapper--${this.size === 'small' ? 'small' : 'large'}\n chip__wrapper--${this.variant === 'multi' ? 'multi' : 'single'}\n ${this.opened && !this.readOnly ? 'chip__wrapper--opened' : ''}\n ${this.selectedOptions.length ? 'chip__wrapper--selected' : ''}`}\n tabIndex={0}\n onClick={!this.readOnly ? () => { this.handleWrapperClick() } : undefined}\n role='combobox'\n aria-label={this.ariaLabel}\n aria-value={this.getSelectedOptions()}\n aria-haspopup={!this.readOnly ? 'listbox' : undefined}\n aria-expanded={!this.readOnly ? this.opened.toString() : undefined}\n aria-controls={!this.readOnly ? 'dropdown' : undefined}\n aria-readonly={this.readOnly ? 'true' : undefined}\n aria-multiselectable={this.variant === 'multi' ? 'true' : undefined}\n >\n\n <div class='wrapper__label'>\n {\n (this.selectedOptions.length === 0) && `${this.placeholder}`\n }\n\n {\n (this.selectedOptions.length !== 0 && (this.variant === 'multi' || this.readOnly) && this.placeholder !== '') &&\n `${this.placeholder}:`\n }\n\n {\n (this.selectedOptions.length !== 0) &&\n <div class='label__selected-options'>\n {this.getSelectedOptions()}\n </div>\n }\n\n {\n (this.selectedOptions.length > 2 && this.variant === 'multi') &&\n <ifx-indicator variant='number' number={this.selectedOptions.length - 2}></ifx-indicator>\n }\n </div>\n\n {\n !this.readOnly && (this.variant !== 'multi' || (this.variant === 'multi' && this.selectedOptions.length === 0)) &&\n <div class='wrapper__open-button'>\n <ifx-icon key={1} icon={`chevron-down-16`} />\n </div>\n }\n\n\n { \n (this.variant !== 'multi' && this.readOnly !== false && this.selectedOptions.length > 0) &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n {\n ((this.selectedOptions.length >= 1) && this.variant === 'multi') &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n </div>\n\n {\n this.opened && !this.readOnly &&\n <div id='dropdown' role='listbox' class='chip__dropdown'>\n <slot />\n </div>\n }\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
- import { d as defineCustomElement$2 } from './p-DL0DaOdR.js';
3
- import { d as defineCustomElement$1 } from './p-Bq-GdSe7.js';
2
+ import { d as defineCustomElement$2 } from './p-D44F8FsC.js';
3
+ import { d as defineCustomElement$1 } from './p-BctmSAbW.js';
4
4
 
5
5
  const chipItemCss = ":root{--ifx-font-family:\"Source Sans 3\", \"Arial, sans-serif\"}.chip-item{display:flex;align-items:center;gap:8px;padding:8px 16px;user-select:none;transition:all 100ms ease;transition-property:background, color}.chip-item:hover{cursor:pointer;background-color:#EEEDED}.chip-item:active{background-color:#BFBBBB}.chip-item:focus{outline:2px solid #0A8276}.chip-item.chip-item--large{font:400 1rem/1.5rem \"Source Sans 3\"}.chip-item.chip-item--small{font:400 0.875rem/1.25rem \"Source Sans 3\"}.chip-item.chip-item--selected{color:#0A8276}.chip-item.chip-item--selected .chip-item__selected-indicator{display:block}.chip-item__selected-indicator{display:none;margin-left:auto}";
6
6
 
@@ -65,9 +65,9 @@ const ChipItem = /*@__PURE__*/ proxyCustomElement(class ChipItem extends H {
65
65
  this.handleSelectedState();
66
66
  }
67
67
  render() {
68
- return (h("div", { key: '0feac58e2e7104e948633503bb6e1e41a7933963', class: `chip-item chip-item--${this.chipState.size}
68
+ return (h("div", { key: 'e74d43ca63eacb144865a6c1bd40b5bf2addc426', class: `chip-item chip-item--${this.chipState.size}
69
69
  chip-item--${(this.selected && this.chipState.variant) === 'single' ? 'selected' : ''}`, tabIndex: 0, onClick: () => { this.handleItemClick(); }, onKeyDown: (e) => { this.handleItemKeyDown(e); }, role: "option", "aria-selected": this.selected.toString() }, this.chipState.variant === 'multi' &&
70
- h("ifx-checkbox", { key: '5bff8f27bda9843ffbad86fed014e6f5b1df3b9c', checked: this.selected, tabIndex: -1, size: 's' }), h("div", { key: 'e4ed1025410e1821e1549d8f29f7cc6c5ba57a2d', class: 'chip-item__label' }, " ", h("slot", { key: '541c9acff7c19e816f75cea1d17de319eefb8536' }), " "), h("div", { key: 'e5fc6f9e1d1e40bcc2ac591f2e550abcffa4cdad', class: 'chip-item__selected-indicator' }, h("ifx-icon", { key: '24c75f1d1eb8927d5193875aacda59ce9117e0df', icon: 'check-16' }, " "))));
70
+ h("ifx-checkbox", { key: '7bd93f94f3155f73fdcd8798e42f6a11201ac11d', checked: this.selected, tabIndex: -1, size: 's' }), h("div", { key: '854a247db00e595ecfb38e80b257ab1270ef36f3', class: 'chip-item__label' }, " ", h("slot", { key: '6687cc2e52f714370c93b16e367d62b30a9ea7b0' }), " "), h("div", { key: '440a71674a3769490cd843d5f31c3a22e0b08cae', class: 'chip-item__selected-indicator' }, h("ifx-icon", { key: '3ed8148581d26cf7e142914627eda330cbfed896', icon: 'check-16' }, " "))));
71
71
  }
72
72
  get chipItem() { return this; }
73
73
  static get watchers() { return {
@@ -106,6 +106,6 @@ function defineCustomElement() {
106
106
  }
107
107
 
108
108
  export { ChipItem as C, defineCustomElement as d };
109
- //# sourceMappingURL=p-Bsg4XNJ8.js.map
109
+ //# sourceMappingURL=p-C2W97E17.js.map
110
110
 
111
- //# sourceMappingURL=p-Bsg4XNJ8.js.map
111
+ //# sourceMappingURL=p-C2W97E17.js.map
@@ -1 +1 @@
1
- {"file":"p-Bsg4XNJ8.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/chip/chip-item/chip-item.scss?tag=ifx-chip-item&encapsulation=shadow","src/components/chip/chip-item/chip-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.chip-item {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n \n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n \n user-select: none;\n \n transition: all 100ms ease;\n transition-property: background, color;\n \n &:hover {\n cursor: pointer;\n \n background-color: tokens.$ifxColorEngineering200;\n }\n \n &:active {\n background-color: tokens.$ifxColorEngineering300;\n }\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n }\n \n &.chip-item--large {\n font: tokens.$ifxBodyBody03;\n }\n \n &.chip-item--small {\n font: tokens.$ifxBodyBody04;\n }\n\n &.chip-item--selected {\n color: tokens.$ifxColorOcean500;\n\n .chip-item__selected-indicator {\n display: block;\n }\n }\n}\n\n.chip-item__selected-indicator {\n display: none;\n \n margin-left: auto;\n}\n\n","import { h,\n Component,\n Element,\n Event,\n EventEmitter, \n Listen,\n Prop, \n Watch } from '@stencil/core';\nimport { ChipItemSelectEvent, ChipState } from '../interfaces';\n\n@Component({\ntag: 'ifx-chip-item',\nstyleUrl: 'chip-item.scss',\nshadow: true\n})\n\nexport class ChipItem {\n@Element() chipItem: HTMLIfxChipItemElement;\n\n@Event({ composed: false }) ifxChipItemSelect: EventEmitter<ChipItemSelectEvent>;\n\n@Prop() value: string = undefined;\n@Prop() chipState: ChipState = { emitIfxChipItemSelect: true, variant: 'multi', size: 'large' }; \n@Prop({ mutable: true, reflect: true }) selected: boolean = false;\n\n@Listen('ifxChipItemSelect', { target: 'body' })\nupdateItemSelection(event: CustomEvent<ChipItemSelectEvent>) {\n if (this.chipState.variant === 'single') {\n const target = event.target as HTMLIfxChipItemElement;\n /* Also making sure chip items are from the same group (parent) while unselecting. */\n if (this.chipItem !== target && this.chipItem.parentElement === target.parentElement) {\n this.selected = false;\n }\n }\n} \n\n@Watch('selected')\nvalidateSelected(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n /* Do not emit if ChipState does not allow. */\n if (this.chipState.emitIfxChipItemSelect){\n this.emitIfxChipItemSelectEvent();\n } else {\n this.chipState.emitIfxChipItemSelect = true;\n }\n }\n} \n\ngetItemLabel(): string {\n return this.chipItem.innerText as string;\n}\n\ntoggleItemSelection() {\n this.selected = !this.selected;\n}\n \n\nemitIfxChipItemSelectEvent(emitIfxChange: boolean = true) {\n this.ifxChipItemSelect.emit({ emitIfxChange: emitIfxChange,\n key: this.chipState.key,\n label: this.getItemLabel(), \n selected: this.selected, \n value: this.value });\n}\n\nhandleItemClick() {\n this.toggleItemSelection();\n}\n\nhandleItemKeyDown(event: KeyboardEvent) {\n if (event.code === 'Enter' || event.code === 'Space') {\n this.toggleItemSelection();\n }\n}\n\nhandleSelectedState() {\n if (this.selected) {\n this.emitIfxChipItemSelectEvent(false);\n }\n}\n\n\ncomponentWillLoad() {\n /* Propogating the selected state to the Chip (Parent) component if it is set. */\n this.handleSelectedState();\n}\n\nrender() {\n return (\n <div class={`chip-item chip-item--${this.chipState.size} \n chip-item--${(this.selected && this.chipState.variant) === 'single' ? 'selected' : ''}`} \n tabIndex={0}\n onClick={() => {this.handleItemClick()}}\n onKeyDown={(e) => {this.handleItemKeyDown(e)}}\n role=\"option\"\n aria-selected={this.selected.toString()}> \n {/* Checkbox; renders only in 'multi' variant. */}\n { \n this.chipState.variant === 'multi' &&\n <ifx-checkbox checked={this.selected}\n tabIndex={-1} \n size='s'>\n </ifx-checkbox>\n }\n\n <div class='chip-item__label'> <slot /> </div>\n\n {/* Selected indicator only visible in 'single' variant. */}\n <div class='chip-item__selected-indicator'> \n <ifx-icon icon='check-16'> </ifx-icon> \n </div>\n\n </div>\n );\n}\n}"],"version":3}
1
+ {"file":"p-C2W97E17.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/chip/chip-item/chip-item.scss?tag=ifx-chip-item&encapsulation=shadow","src/components/chip/chip-item/chip-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.chip-item {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n \n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n \n user-select: none;\n \n transition: all 100ms ease;\n transition-property: background, color;\n \n &:hover {\n cursor: pointer;\n \n background-color: tokens.$ifxColorEngineering200;\n }\n \n &:active {\n background-color: tokens.$ifxColorEngineering300;\n }\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n }\n \n &.chip-item--large {\n font: tokens.$ifxBodyBody03;\n }\n \n &.chip-item--small {\n font: tokens.$ifxBodyBody04;\n }\n\n &.chip-item--selected {\n color: tokens.$ifxColorOcean500;\n\n .chip-item__selected-indicator {\n display: block;\n }\n }\n}\n\n.chip-item__selected-indicator {\n display: none;\n \n margin-left: auto;\n}\n\n","import { h,\n Component,\n Element,\n Event,\n EventEmitter, \n Listen,\n Prop, \n Watch } from '@stencil/core';\nimport { ChipItemSelectEvent, ChipState } from '../interfaces';\n\n@Component({\ntag: 'ifx-chip-item',\nstyleUrl: 'chip-item.scss',\nshadow: true\n})\n\nexport class ChipItem {\n@Element() chipItem: HTMLIfxChipItemElement;\n\n@Event({ composed: false }) ifxChipItemSelect: EventEmitter<ChipItemSelectEvent>;\n\n@Prop() value: string = undefined;\n@Prop() chipState: ChipState = { emitIfxChipItemSelect: true, variant: 'multi', size: 'large' }; \n@Prop({ mutable: true, reflect: true }) selected: boolean = false;\n\n@Listen('ifxChipItemSelect', { target: 'body' })\nupdateItemSelection(event: CustomEvent<ChipItemSelectEvent>) {\n if (this.chipState.variant === 'single') {\n const target = event.target as HTMLIfxChipItemElement;\n /* Also making sure chip items are from the same group (parent) while unselecting. */\n if (this.chipItem !== target && this.chipItem.parentElement === target.parentElement) {\n this.selected = false;\n }\n }\n} \n\n@Watch('selected')\nvalidateSelected(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n /* Do not emit if ChipState does not allow. */\n if (this.chipState.emitIfxChipItemSelect){\n this.emitIfxChipItemSelectEvent();\n } else {\n this.chipState.emitIfxChipItemSelect = true;\n }\n }\n} \n\ngetItemLabel(): string {\n return this.chipItem.innerText as string;\n}\n\ntoggleItemSelection() {\n this.selected = !this.selected;\n}\n \n\nemitIfxChipItemSelectEvent(emitIfxChange: boolean = true) {\n this.ifxChipItemSelect.emit({ emitIfxChange: emitIfxChange,\n key: this.chipState.key,\n label: this.getItemLabel(), \n selected: this.selected, \n value: this.value });\n}\n\nhandleItemClick() {\n this.toggleItemSelection();\n}\n\nhandleItemKeyDown(event: KeyboardEvent) {\n if (event.code === 'Enter' || event.code === 'Space') {\n this.toggleItemSelection();\n }\n}\n\nhandleSelectedState() {\n if (this.selected) {\n this.emitIfxChipItemSelectEvent(false);\n }\n}\n\n\ncomponentWillLoad() {\n /* Propogating the selected state to the Chip (Parent) component if it is set. */\n this.handleSelectedState();\n}\n\nrender() {\n return (\n <div class={`chip-item chip-item--${this.chipState.size} \n chip-item--${(this.selected && this.chipState.variant) === 'single' ? 'selected' : ''}`} \n tabIndex={0}\n onClick={() => {this.handleItemClick()}}\n onKeyDown={(e) => {this.handleItemKeyDown(e)}}\n role=\"option\"\n aria-selected={this.selected.toString()}> \n {/* Checkbox; renders only in 'multi' variant. */}\n { \n this.chipState.variant === 'multi' &&\n <ifx-checkbox checked={this.selected}\n tabIndex={-1} \n size='s'>\n </ifx-checkbox>\n }\n\n <div class='chip-item__label'> <slot /> </div>\n\n {/* Selected indicator only visible in 'single' variant. */}\n <div class='chip-item__selected-indicator'> \n <ifx-icon icon='check-16'> </ifx-icon> \n </div>\n\n </div>\n );\n}\n}"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
- import { d as defineCustomElement$1 } from './p-Bq-GdSe7.js';
2
+ import { d as defineCustomElement$1 } from './p-BctmSAbW.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
 
@@ -114,6 +114,6 @@ function defineCustomElement() {
114
114
  }
115
115
 
116
116
  export { AccordionItem as A, defineCustomElement as d };
117
- //# sourceMappingURL=p-CwnDj9-A.js.map
117
+ //# sourceMappingURL=p-C7evM2QQ.js.map
118
118
 
119
- //# sourceMappingURL=p-CwnDj9-A.js.map
119
+ //# sourceMappingURL=p-C7evM2QQ.js.map