@infineon/infineon-design-system-stencil 30.10.0--canary.1680.e37294a413e39f8d2701149f49bc70ea9487f1e6.0 → 30.10.0--canary.1690.ba52af7b19132ac2e9ab07b1d097d3a0d007941e.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 (823) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +1 -2
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-alert.cjs.entry.js +4 -6
  4. package/dist/cjs/ifx-alert.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-basic-table.cjs.entry.js +3 -7
  7. package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +1 -3
  9. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +1 -2
  11. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-button.cjs.entry.js +8 -11
  14. package/dist/cjs/ifx-button.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-card-headline.cjs.entry.js +1 -3
  16. package/dist/cjs/ifx-card-headline.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -4
  18. package/dist/cjs/ifx-card-image.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  20. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-card-text.cjs.entry.js +1 -2
  22. package/dist/cjs/ifx-card-text.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ifx-card.cjs.entry.js +1 -5
  24. package/dist/cjs/ifx-card.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -4
  26. package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ifx-chip_3.cjs.entry.js +6 -7
  28. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -2
  30. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ifx-content-switcher.cjs.entry.js +2 -3
  32. package/dist/cjs/ifx-content-switcher.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -7
  34. package/dist/cjs/ifx-date-picker.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +1 -2
  37. package/dist/cjs/ifx-dropdown-item.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  39. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  41. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -3
  42. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  44. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ifx-dropdown.cjs.entry.js +4 -4
  46. package/dist/cjs/ifx-dropdown.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ifx-faq.cjs.entry.js +2 -2
  48. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +7 -8
  49. package/dist/cjs/ifx-filter-accordion.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ifx-filter-bar.cjs.entry.js +6 -7
  51. package/dist/cjs/ifx-filter-bar.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ifx-filter-search.cjs.entry.js +3 -7
  53. package/dist/cjs/ifx-filter-search.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +3 -3
  55. package/dist/cjs/ifx-filter-type-group.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  57. package/dist/cjs/ifx-footer.cjs.entry.js +3 -3
  58. package/dist/cjs/ifx-footer.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -6
  60. package/dist/cjs/ifx-icon-button.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ifx-icon.cjs.entry.js +1 -2
  62. package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -2
  64. package/dist/cjs/ifx-icons-preview.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ifx-link.cjs.entry.js +1 -2
  66. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ifx-list-entry.cjs.entry.js +2 -5
  68. package/dist/cjs/ifx-list-entry.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ifx-list.cjs.entry.js +9 -10
  70. package/dist/cjs/ifx-list.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ifx-modal.cjs.entry.js +12 -12
  72. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +24 -34
  74. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ifx-navbar-item.cjs.entry.js +17 -5
  76. package/dist/cjs/ifx-navbar-item.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +9 -9
  78. package/dist/cjs/ifx-navbar-profile.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ifx-navbar.cjs.entry.js +4 -5
  80. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ifx-notification.cjs.entry.js +3 -6
  82. package/dist/cjs/ifx-notification.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ifx-number-indicator.cjs.entry.js +2 -2
  84. package/dist/cjs/ifx-number-indicator.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ifx-overview-table.cjs.entry.js +2 -2
  86. package/dist/cjs/ifx-progress-bar.cjs.entry.js +2 -4
  87. package/dist/cjs/ifx-progress-bar.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ifx-radio-button.cjs.entry.js +3 -7
  89. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ifx-search-bar.cjs.entry.js +4 -7
  91. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ifx-search-field.cjs.entry.js +11 -11
  93. package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ifx-segment.cjs.entry.js +2 -5
  95. package/dist/cjs/ifx-segment.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ifx-segmented-control.cjs.entry.js +4 -4
  97. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ifx-select.cjs.entry.js +5 -47
  99. package/dist/cjs/ifx-select.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -5
  101. package/dist/cjs/ifx-set-filter.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +8 -10
  103. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +2 -2
  105. package/dist/cjs/ifx-sidebar.cjs.entry.js +6 -6
  106. package/dist/cjs/ifx-sidebar.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ifx-slider.cjs.entry.js +3 -10
  108. package/dist/cjs/ifx-slider.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ifx-spinner.cjs.entry.js +3 -5
  110. package/dist/cjs/ifx-spinner.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ifx-status.cjs.entry.js +2 -3
  112. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ifx-step.cjs.entry.js +5 -6
  114. package/dist/cjs/ifx-step.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ifx-stepper.cjs.entry.js +3 -4
  116. package/dist/cjs/ifx-stepper.cjs.entry.js.map +1 -1
  117. package/dist/cjs/ifx-switch.cjs.entry.js +2 -3
  118. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  119. package/dist/cjs/ifx-tab.cjs.entry.js +2 -4
  120. package/dist/cjs/ifx-tab.cjs.entry.js.map +1 -1
  121. package/dist/cjs/ifx-table.cjs.entry.js +6 -10
  122. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  123. package/dist/cjs/ifx-tabs.cjs.entry.js +3 -4
  124. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  125. package/dist/cjs/ifx-tag.cjs.entry.js +2 -3
  126. package/dist/cjs/ifx-tag.cjs.entry.js.map +1 -1
  127. package/dist/cjs/ifx-textarea.cjs.entry.js +3 -11
  128. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  129. package/dist/cjs/ifx-tooltip.cjs.entry.js +11 -12
  130. package/dist/cjs/ifx-tooltip.cjs.entry.js.map +1 -1
  131. package/dist/cjs/{index-af3b4f6c.js → index-e489135e.js} +379 -335
  132. package/dist/cjs/index-e489135e.js.map +1 -0
  133. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  134. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  135. package/dist/cjs/loader.cjs.js +2 -2
  136. package/dist/collection/collection-manifest.json +1 -1
  137. package/dist/collection/components/accordion/accordion.js.map +1 -1
  138. package/dist/collection/components/accordion/accordionItem.js +0 -1
  139. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  140. package/dist/collection/components/alert/alert.js +3 -5
  141. package/dist/collection/components/alert/alert.js.map +1 -1
  142. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +0 -2
  143. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  144. package/dist/collection/components/breadcrumb/breadcrumb-item.js +0 -1
  145. package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +1 -1
  146. package/dist/collection/components/button/button.js +7 -10
  147. package/dist/collection/components/button/button.js.map +1 -1
  148. package/dist/collection/components/card/card-headline/card-headline.js +0 -4
  149. package/dist/collection/components/card/card-headline/card-headline.js.map +1 -1
  150. package/dist/collection/components/card/card-image/card-image.js +0 -5
  151. package/dist/collection/components/card/card-image/card-image.js.map +1 -1
  152. package/dist/collection/components/card/card-text/card-text.js +0 -3
  153. package/dist/collection/components/card/card-text/card-text.js.map +1 -1
  154. package/dist/collection/components/card/card.js +0 -4
  155. package/dist/collection/components/card/card.js.map +1 -1
  156. package/dist/collection/components/checkbox/checkbox.js +0 -3
  157. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  158. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  159. package/dist/collection/components/chip/chip.js +0 -1
  160. package/dist/collection/components/chip/chip.js.map +1 -1
  161. package/dist/collection/components/content-switcher/content-switcher-item.js +0 -1
  162. package/dist/collection/components/content-switcher/content-switcher-item.js.map +1 -1
  163. package/dist/collection/components/content-switcher/content-switcher.js +1 -2
  164. package/dist/collection/components/content-switcher/content-switcher.js.map +1 -1
  165. package/dist/collection/components/date-picker/date-picker.js +0 -6
  166. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  167. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js +0 -1
  168. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js.map +1 -1
  169. package/dist/collection/components/dropdown/dropdown-menu/dropdown-menu.js.map +1 -1
  170. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js.map +1 -1
  171. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js +0 -2
  172. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js.map +1 -1
  173. package/dist/collection/components/dropdown/dropdown.js +3 -3
  174. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  175. package/dist/collection/components/footer/footer.js +2 -2
  176. package/dist/collection/components/footer/footer.js.map +1 -1
  177. package/dist/collection/components/icon/infineonIconStencil.js +0 -1
  178. package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
  179. package/dist/collection/components/icon-button/icon-button.js +0 -5
  180. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  181. package/dist/collection/components/icons-preview/icons-preview.js +0 -1
  182. package/dist/collection/components/icons-preview/icons-preview.js.map +1 -1
  183. package/dist/collection/components/link/link.js +0 -1
  184. package/dist/collection/components/link/link.js.map +1 -1
  185. package/dist/collection/components/modal/modal.js +11 -11
  186. package/dist/collection/components/modal/modal.js.map +1 -1
  187. package/dist/collection/components/navigation/navbar/navbar-item.css +5 -0
  188. package/dist/collection/components/navigation/navbar/navbar-item.js +34 -3
  189. package/dist/collection/components/navigation/navbar/navbar-item.js.map +1 -1
  190. package/dist/collection/components/navigation/navbar/navbar-profile.js +7 -7
  191. package/dist/collection/components/navigation/navbar/navbar-profile.js.map +1 -1
  192. package/dist/collection/components/navigation/navbar/navbar.js +3 -4
  193. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  194. package/dist/collection/components/navigation/sidebar/sidebar-item.js +7 -9
  195. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  196. package/dist/collection/components/navigation/sidebar/sidebar-title.js +1 -1
  197. package/dist/collection/components/navigation/sidebar/sidebar.js +5 -5
  198. package/dist/collection/components/navigation/sidebar/sidebar.js.map +1 -1
  199. package/dist/collection/components/notification/notification.js +2 -5
  200. package/dist/collection/components/notification/notification.js.map +1 -1
  201. package/dist/collection/components/number-indicator/number-indicator.js +1 -1
  202. package/dist/collection/components/number-indicator/number-indicator.js.map +1 -1
  203. package/dist/collection/components/overview-table/overview-table.js +1 -1
  204. package/dist/collection/components/pagination/pagination.js +5 -5
  205. package/dist/collection/components/pagination/pagination.js.map +1 -1
  206. package/dist/collection/components/progress-bar/progress-bar.js +1 -3
  207. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  208. package/dist/collection/components/radio-button/radio-button.js +2 -6
  209. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  210. package/dist/collection/components/search-bar/search-bar.js +3 -6
  211. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  212. package/dist/collection/components/search-field/search-field.js +10 -10
  213. package/dist/collection/components/search-field/search-field.js.map +1 -1
  214. package/dist/collection/components/segmented-control/segment/segment.js +1 -4
  215. package/dist/collection/components/segmented-control/segment/segment.js.map +1 -1
  216. package/dist/collection/components/segmented-control/segmented-control.js +3 -3
  217. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  218. package/dist/collection/components/select/multi-select/multiselect.js +19 -28
  219. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  220. package/dist/collection/components/select/single-select/select.js +4 -46
  221. package/dist/collection/components/select/single-select/select.js.map +1 -1
  222. package/dist/collection/components/slider/slider.js +2 -9
  223. package/dist/collection/components/slider/slider.js.map +1 -1
  224. package/dist/collection/components/spinner/spinner.js +2 -4
  225. package/dist/collection/components/spinner/spinner.js.map +1 -1
  226. package/dist/collection/components/status/status.js +1 -2
  227. package/dist/collection/components/status/status.js.map +1 -1
  228. package/dist/collection/components/stepper/step/step.js +4 -5
  229. package/dist/collection/components/stepper/step/step.js.map +1 -1
  230. package/dist/collection/components/stepper/stepper.js +2 -3
  231. package/dist/collection/components/stepper/stepper.js.map +1 -1
  232. package/dist/collection/components/switch/switch.js +1 -2
  233. package/dist/collection/components/switch/switch.js.map +1 -1
  234. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +5 -6
  235. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js.map +1 -1
  236. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +6 -7
  237. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js.map +1 -1
  238. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +2 -6
  239. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js.map +1 -1
  240. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js +2 -2
  241. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js.map +1 -1
  242. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +1 -6
  243. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js.map +1 -1
  244. package/dist/collection/components/table-advanced-version/list/list.js +8 -9
  245. package/dist/collection/components/table-advanced-version/list/list.js.map +1 -1
  246. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js +0 -4
  247. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js.map +1 -1
  248. package/dist/collection/components/table-advanced-version/table.js +5 -9
  249. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  250. package/dist/collection/components/table-basic-version/table.js +2 -6
  251. package/dist/collection/components/table-basic-version/table.js.map +1 -1
  252. package/dist/collection/components/tabs/tab.js +1 -3
  253. package/dist/collection/components/tabs/tab.js.map +1 -1
  254. package/dist/collection/components/tabs/tabs.js +2 -3
  255. package/dist/collection/components/tabs/tabs.js.map +1 -1
  256. package/dist/collection/components/tag/tag.js +1 -4
  257. package/dist/collection/components/tag/tag.js.map +1 -1
  258. package/dist/collection/components/text-field/text-field.js +4 -5
  259. package/dist/collection/components/text-field/text-field.js.map +1 -1
  260. package/dist/collection/components/textarea/textarea.js +2 -10
  261. package/dist/collection/components/textarea/textarea.js.map +1 -1
  262. package/dist/collection/components/tooltip/tooltip.js +10 -11
  263. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  264. package/dist/collection/stories/setup-and-installation/faq/faq.js +1 -1
  265. package/dist/components/ifx-accordion-item.js +1 -1
  266. package/dist/components/ifx-accordion.js +1 -1
  267. package/dist/components/ifx-alert.js +5 -7
  268. package/dist/components/ifx-alert.js.map +1 -1
  269. package/dist/components/ifx-badge.js +1 -1
  270. package/dist/components/ifx-basic-table.js +3 -7
  271. package/dist/components/ifx-basic-table.js.map +1 -1
  272. package/dist/components/ifx-breadcrumb-item-label.js +2 -4
  273. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  274. package/dist/components/ifx-breadcrumb-item.js +1 -2
  275. package/dist/components/ifx-breadcrumb-item.js.map +1 -1
  276. package/dist/components/ifx-breadcrumb.js +1 -1
  277. package/dist/components/ifx-button.js +1 -1
  278. package/dist/components/ifx-card-headline.js +1 -3
  279. package/dist/components/ifx-card-headline.js.map +1 -1
  280. package/dist/components/ifx-card-image.js +1 -4
  281. package/dist/components/ifx-card-image.js.map +1 -1
  282. package/dist/components/ifx-card-links.js +1 -1
  283. package/dist/components/ifx-card-overline.js +1 -1
  284. package/dist/components/ifx-card-text.js +1 -2
  285. package/dist/components/ifx-card-text.js.map +1 -1
  286. package/dist/components/ifx-card.js +1 -5
  287. package/dist/components/ifx-card.js.map +1 -1
  288. package/dist/components/ifx-checkbox.js +1 -1
  289. package/dist/components/ifx-chip-item.js +1 -1
  290. package/dist/components/ifx-chip.js +1 -1
  291. package/dist/components/ifx-content-switcher-item.js +1 -2
  292. package/dist/components/ifx-content-switcher-item.js.map +1 -1
  293. package/dist/components/ifx-content-switcher.js +2 -3
  294. package/dist/components/ifx-content-switcher.js.map +1 -1
  295. package/dist/components/ifx-date-picker.js +2 -8
  296. package/dist/components/ifx-date-picker.js.map +1 -1
  297. package/dist/components/ifx-dropdown-header.js +1 -1
  298. package/dist/components/ifx-dropdown-item.js +2 -3
  299. package/dist/components/ifx-dropdown-item.js.map +1 -1
  300. package/dist/components/ifx-dropdown-menu.js +1 -1
  301. package/dist/components/ifx-dropdown-menu.js.map +1 -1
  302. package/dist/components/ifx-dropdown-separator.js +1 -1
  303. package/dist/components/ifx-dropdown-trigger-button.js +3 -5
  304. package/dist/components/ifx-dropdown-trigger-button.js.map +1 -1
  305. package/dist/components/ifx-dropdown-trigger.js +1 -1
  306. package/dist/components/ifx-dropdown-trigger.js.map +1 -1
  307. package/dist/components/ifx-dropdown.js +4 -4
  308. package/dist/components/ifx-dropdown.js.map +1 -1
  309. package/dist/components/ifx-faq.js +5 -5
  310. package/dist/components/ifx-filter-accordion.js +9 -10
  311. package/dist/components/ifx-filter-accordion.js.map +1 -1
  312. package/dist/components/ifx-filter-bar.js +8 -9
  313. package/dist/components/ifx-filter-bar.js.map +1 -1
  314. package/dist/components/ifx-filter-search.js +5 -9
  315. package/dist/components/ifx-filter-search.js.map +1 -1
  316. package/dist/components/ifx-filter-type-group.js +3 -3
  317. package/dist/components/ifx-filter-type-group.js.map +1 -1
  318. package/dist/components/ifx-footer-column.js +1 -1
  319. package/dist/components/ifx-footer.js +3 -3
  320. package/dist/components/ifx-footer.js.map +1 -1
  321. package/dist/components/ifx-icon-button.js +1 -1
  322. package/dist/components/ifx-icon.js +1 -1
  323. package/dist/components/ifx-icons-preview.js +2 -3
  324. package/dist/components/ifx-icons-preview.js.map +1 -1
  325. package/dist/components/ifx-link.js +1 -1
  326. package/dist/components/ifx-list-entry.js +5 -8
  327. package/dist/components/ifx-list-entry.js.map +1 -1
  328. package/dist/components/ifx-list.js +11 -12
  329. package/dist/components/ifx-list.js.map +1 -1
  330. package/dist/components/ifx-modal.js +14 -14
  331. package/dist/components/ifx-modal.js.map +1 -1
  332. package/dist/components/ifx-multiselect.js +1 -1
  333. package/dist/components/ifx-navbar-item.js +26 -7
  334. package/dist/components/ifx-navbar-item.js.map +1 -1
  335. package/dist/components/ifx-navbar-profile.js +9 -9
  336. package/dist/components/ifx-navbar-profile.js.map +1 -1
  337. package/dist/components/ifx-navbar.js +5 -6
  338. package/dist/components/ifx-navbar.js.map +1 -1
  339. package/dist/components/ifx-notification.js +5 -8
  340. package/dist/components/ifx-notification.js.map +1 -1
  341. package/dist/components/ifx-number-indicator.js +1 -1
  342. package/dist/components/ifx-overview-table.js +5 -5
  343. package/dist/components/ifx-pagination.js +1 -1
  344. package/dist/components/ifx-progress-bar.js +2 -4
  345. package/dist/components/ifx-progress-bar.js.map +1 -1
  346. package/dist/components/ifx-radio-button.js +1 -1
  347. package/dist/components/ifx-search-bar.js +6 -9
  348. package/dist/components/ifx-search-bar.js.map +1 -1
  349. package/dist/components/ifx-search-field.js +1 -1
  350. package/dist/components/ifx-segment.js +3 -6
  351. package/dist/components/ifx-segment.js.map +1 -1
  352. package/dist/components/ifx-segmented-control.js +5 -5
  353. package/dist/components/ifx-segmented-control.js.map +1 -1
  354. package/dist/components/ifx-select.js +1 -1
  355. package/dist/components/ifx-set-filter.js +7 -11
  356. package/dist/components/ifx-set-filter.js.map +1 -1
  357. package/dist/components/ifx-sidebar-item.js +10 -12
  358. package/dist/components/ifx-sidebar-item.js.map +1 -1
  359. package/dist/components/ifx-sidebar-title.js +2 -2
  360. package/dist/components/ifx-sidebar.js +6 -6
  361. package/dist/components/ifx-sidebar.js.map +1 -1
  362. package/dist/components/ifx-slider.js +4 -11
  363. package/dist/components/ifx-slider.js.map +1 -1
  364. package/dist/components/ifx-spinner.js +3 -5
  365. package/dist/components/ifx-spinner.js.map +1 -1
  366. package/dist/components/ifx-status.js +2 -3
  367. package/dist/components/ifx-status.js.map +1 -1
  368. package/dist/components/ifx-step.js +6 -7
  369. package/dist/components/ifx-step.js.map +1 -1
  370. package/dist/components/ifx-stepper.js +3 -4
  371. package/dist/components/ifx-stepper.js.map +1 -1
  372. package/dist/components/ifx-switch.js +2 -3
  373. package/dist/components/ifx-switch.js.map +1 -1
  374. package/dist/components/ifx-tab.js +2 -4
  375. package/dist/components/ifx-tab.js.map +1 -1
  376. package/dist/components/ifx-table.js +15 -19
  377. package/dist/components/ifx-table.js.map +1 -1
  378. package/dist/components/ifx-tabs.js +4 -5
  379. package/dist/components/ifx-tabs.js.map +1 -1
  380. package/dist/components/ifx-tag.js +3 -4
  381. package/dist/components/ifx-tag.js.map +1 -1
  382. package/dist/components/ifx-text-field.js +1 -1
  383. package/dist/components/ifx-textarea.js +3 -11
  384. package/dist/components/ifx-textarea.js.map +1 -1
  385. package/dist/components/ifx-tooltip.js +12 -13
  386. package/dist/components/ifx-tooltip.js.map +1 -1
  387. package/dist/components/index.js +1 -1
  388. package/dist/components/{p-cfb87c4d.js → p-17926343.js} +2 -3
  389. package/dist/components/p-17926343.js.map +1 -0
  390. package/dist/components/{p-b2439194.js → p-1ab9570f.js} +3 -4
  391. package/dist/components/p-1ab9570f.js.map +1 -0
  392. package/dist/components/{p-68d90201.js → p-35713bcf.js} +347 -317
  393. package/dist/components/p-35713bcf.js.map +1 -0
  394. package/dist/components/{p-7bbdeac1.js → p-3c385a21.js} +4 -8
  395. package/dist/components/p-3c385a21.js.map +1 -0
  396. package/dist/components/{p-8eed2f39.js → p-3eb62a9b.js} +3 -8
  397. package/dist/components/p-3eb62a9b.js.map +1 -0
  398. package/dist/components/{p-23cdd5a7.js → p-529e994b.js} +4 -4
  399. package/dist/components/p-529e994b.js.map +1 -0
  400. package/dist/components/{p-2f1e7628.js → p-5d412a3d.js} +10 -10
  401. package/dist/components/p-5d412a3d.js.map +1 -0
  402. package/dist/components/{p-d57db1c4.js → p-743afd44.js} +13 -13
  403. package/dist/components/p-743afd44.js.map +1 -0
  404. package/dist/components/{p-11922b8b.js → p-7ffb8d15.js} +7 -49
  405. package/dist/components/p-7ffb8d15.js.map +1 -0
  406. package/dist/components/{p-4b3befbf.js → p-920ceb71.js} +2 -2
  407. package/dist/components/{p-4b3befbf.js.map → p-920ceb71.js.map} +1 -1
  408. package/dist/components/{p-9ee4ea24.js → p-9bb5a60b.js} +3 -3
  409. package/dist/components/p-9bb5a60b.js.map +1 -0
  410. package/dist/components/{p-d0a26bd5.js → p-af1f8464.js} +9 -12
  411. package/dist/components/p-af1f8464.js.map +1 -0
  412. package/dist/components/{p-3a762171.js → p-b901072e.js} +24 -33
  413. package/dist/components/p-b901072e.js.map +1 -0
  414. package/dist/components/{p-094bb435.js → p-c194f64d.js} +2 -2
  415. package/dist/components/p-c194f64d.js.map +1 -0
  416. package/dist/components/{p-12e02e47.js → p-cdde9de5.js} +7 -8
  417. package/dist/components/p-cdde9de5.js.map +1 -0
  418. package/dist/components/{p-c1f3a68c.js → p-d2a01d2b.js} +4 -5
  419. package/dist/components/p-d2a01d2b.js.map +1 -0
  420. package/dist/components/{p-f0f583d5.js → p-eab00c46.js} +3 -6
  421. package/dist/components/p-eab00c46.js.map +1 -0
  422. package/dist/components/{p-7e430b83.js → p-eee401ca.js} +2 -3
  423. package/dist/components/p-eee401ca.js.map +1 -0
  424. package/dist/esm/ifx-accordion_2.entry.js +1 -2
  425. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  426. package/dist/esm/ifx-alert.entry.js +4 -6
  427. package/dist/esm/ifx-alert.entry.js.map +1 -1
  428. package/dist/esm/ifx-badge.entry.js +1 -1
  429. package/dist/esm/ifx-basic-table.entry.js +3 -7
  430. package/dist/esm/ifx-basic-table.entry.js.map +1 -1
  431. package/dist/esm/ifx-breadcrumb-item-label.entry.js +1 -3
  432. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  433. package/dist/esm/ifx-breadcrumb-item.entry.js +1 -2
  434. package/dist/esm/ifx-breadcrumb-item.entry.js.map +1 -1
  435. package/dist/esm/ifx-breadcrumb.entry.js +1 -1
  436. package/dist/esm/ifx-button.entry.js +8 -11
  437. package/dist/esm/ifx-button.entry.js.map +1 -1
  438. package/dist/esm/ifx-card-headline.entry.js +1 -3
  439. package/dist/esm/ifx-card-headline.entry.js.map +1 -1
  440. package/dist/esm/ifx-card-image.entry.js +1 -4
  441. package/dist/esm/ifx-card-image.entry.js.map +1 -1
  442. package/dist/esm/ifx-card-links.entry.js +1 -1
  443. package/dist/esm/ifx-card-overline.entry.js +1 -1
  444. package/dist/esm/ifx-card-text.entry.js +1 -2
  445. package/dist/esm/ifx-card-text.entry.js.map +1 -1
  446. package/dist/esm/ifx-card.entry.js +1 -5
  447. package/dist/esm/ifx-card.entry.js.map +1 -1
  448. package/dist/esm/ifx-checkbox.entry.js +1 -4
  449. package/dist/esm/ifx-checkbox.entry.js.map +1 -1
  450. package/dist/esm/ifx-chip_3.entry.js +6 -7
  451. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  452. package/dist/esm/ifx-content-switcher-item.entry.js +1 -2
  453. package/dist/esm/ifx-content-switcher-item.entry.js.map +1 -1
  454. package/dist/esm/ifx-content-switcher.entry.js +2 -3
  455. package/dist/esm/ifx-content-switcher.entry.js.map +1 -1
  456. package/dist/esm/ifx-date-picker.entry.js +1 -7
  457. package/dist/esm/ifx-date-picker.entry.js.map +1 -1
  458. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  459. package/dist/esm/ifx-dropdown-item.entry.js +1 -2
  460. package/dist/esm/ifx-dropdown-item.entry.js.map +1 -1
  461. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  462. package/dist/esm/ifx-dropdown-menu.entry.js.map +1 -1
  463. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  464. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -3
  465. package/dist/esm/ifx-dropdown-trigger-button.entry.js.map +1 -1
  466. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  467. package/dist/esm/ifx-dropdown-trigger.entry.js.map +1 -1
  468. package/dist/esm/ifx-dropdown.entry.js +4 -4
  469. package/dist/esm/ifx-dropdown.entry.js.map +1 -1
  470. package/dist/esm/ifx-faq.entry.js +2 -2
  471. package/dist/esm/ifx-filter-accordion.entry.js +7 -8
  472. package/dist/esm/ifx-filter-accordion.entry.js.map +1 -1
  473. package/dist/esm/ifx-filter-bar.entry.js +6 -7
  474. package/dist/esm/ifx-filter-bar.entry.js.map +1 -1
  475. package/dist/esm/ifx-filter-search.entry.js +3 -7
  476. package/dist/esm/ifx-filter-search.entry.js.map +1 -1
  477. package/dist/esm/ifx-filter-type-group.entry.js +3 -3
  478. package/dist/esm/ifx-filter-type-group.entry.js.map +1 -1
  479. package/dist/esm/ifx-footer-column.entry.js +1 -1
  480. package/dist/esm/ifx-footer.entry.js +3 -3
  481. package/dist/esm/ifx-footer.entry.js.map +1 -1
  482. package/dist/esm/ifx-icon-button.entry.js +1 -6
  483. package/dist/esm/ifx-icon-button.entry.js.map +1 -1
  484. package/dist/esm/ifx-icon.entry.js +1 -2
  485. package/dist/esm/ifx-icon.entry.js.map +1 -1
  486. package/dist/esm/ifx-icons-preview.entry.js +1 -2
  487. package/dist/esm/ifx-icons-preview.entry.js.map +1 -1
  488. package/dist/esm/ifx-link.entry.js +1 -2
  489. package/dist/esm/ifx-link.entry.js.map +1 -1
  490. package/dist/esm/ifx-list-entry.entry.js +2 -5
  491. package/dist/esm/ifx-list-entry.entry.js.map +1 -1
  492. package/dist/esm/ifx-list.entry.js +9 -10
  493. package/dist/esm/ifx-list.entry.js.map +1 -1
  494. package/dist/esm/ifx-modal.entry.js +12 -12
  495. package/dist/esm/ifx-modal.entry.js.map +1 -1
  496. package/dist/esm/ifx-multiselect_2.entry.js +24 -34
  497. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  498. package/dist/esm/ifx-navbar-item.entry.js +17 -5
  499. package/dist/esm/ifx-navbar-item.entry.js.map +1 -1
  500. package/dist/esm/ifx-navbar-profile.entry.js +9 -9
  501. package/dist/esm/ifx-navbar-profile.entry.js.map +1 -1
  502. package/dist/esm/ifx-navbar.entry.js +4 -5
  503. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  504. package/dist/esm/ifx-notification.entry.js +3 -6
  505. package/dist/esm/ifx-notification.entry.js.map +1 -1
  506. package/dist/esm/ifx-number-indicator.entry.js +2 -2
  507. package/dist/esm/ifx-number-indicator.entry.js.map +1 -1
  508. package/dist/esm/ifx-overview-table.entry.js +2 -2
  509. package/dist/esm/ifx-progress-bar.entry.js +2 -4
  510. package/dist/esm/ifx-progress-bar.entry.js.map +1 -1
  511. package/dist/esm/ifx-radio-button.entry.js +3 -7
  512. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  513. package/dist/esm/ifx-search-bar.entry.js +4 -7
  514. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  515. package/dist/esm/ifx-search-field.entry.js +11 -11
  516. package/dist/esm/ifx-search-field.entry.js.map +1 -1
  517. package/dist/esm/ifx-segment.entry.js +2 -5
  518. package/dist/esm/ifx-segment.entry.js.map +1 -1
  519. package/dist/esm/ifx-segmented-control.entry.js +4 -4
  520. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  521. package/dist/esm/ifx-select.entry.js +5 -47
  522. package/dist/esm/ifx-select.entry.js.map +1 -1
  523. package/dist/esm/ifx-set-filter.entry.js +1 -5
  524. package/dist/esm/ifx-set-filter.entry.js.map +1 -1
  525. package/dist/esm/ifx-sidebar-item.entry.js +8 -10
  526. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  527. package/dist/esm/ifx-sidebar-title.entry.js +2 -2
  528. package/dist/esm/ifx-sidebar.entry.js +6 -6
  529. package/dist/esm/ifx-sidebar.entry.js.map +1 -1
  530. package/dist/esm/ifx-slider.entry.js +3 -10
  531. package/dist/esm/ifx-slider.entry.js.map +1 -1
  532. package/dist/esm/ifx-spinner.entry.js +3 -5
  533. package/dist/esm/ifx-spinner.entry.js.map +1 -1
  534. package/dist/esm/ifx-status.entry.js +2 -3
  535. package/dist/esm/ifx-status.entry.js.map +1 -1
  536. package/dist/esm/ifx-step.entry.js +5 -6
  537. package/dist/esm/ifx-step.entry.js.map +1 -1
  538. package/dist/esm/ifx-stepper.entry.js +3 -4
  539. package/dist/esm/ifx-stepper.entry.js.map +1 -1
  540. package/dist/esm/ifx-switch.entry.js +2 -3
  541. package/dist/esm/ifx-switch.entry.js.map +1 -1
  542. package/dist/esm/ifx-tab.entry.js +2 -4
  543. package/dist/esm/ifx-tab.entry.js.map +1 -1
  544. package/dist/esm/ifx-table.entry.js +6 -10
  545. package/dist/esm/ifx-table.entry.js.map +1 -1
  546. package/dist/esm/ifx-tabs.entry.js +3 -4
  547. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  548. package/dist/esm/ifx-tag.entry.js +2 -3
  549. package/dist/esm/ifx-tag.entry.js.map +1 -1
  550. package/dist/esm/ifx-textarea.entry.js +3 -11
  551. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  552. package/dist/esm/ifx-tooltip.entry.js +11 -12
  553. package/dist/esm/ifx-tooltip.entry.js.map +1 -1
  554. package/dist/esm/{index-dc4139fb.js → index-12dad3f6.js} +379 -335
  555. package/dist/esm/index-12dad3f6.js.map +1 -0
  556. package/dist/esm/infineon-design-system-stencil.js +4 -4
  557. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  558. package/dist/esm/loader.js +3 -3
  559. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  560. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  561. package/dist/infineon-design-system-stencil/p-017646bb.entry.js +2 -0
  562. package/dist/infineon-design-system-stencil/p-017646bb.entry.js.map +1 -0
  563. package/dist/infineon-design-system-stencil/{p-ce413596.entry.js → p-0179cb3c.entry.js} +2 -2
  564. package/dist/infineon-design-system-stencil/p-0179cb3c.entry.js.map +1 -0
  565. package/dist/infineon-design-system-stencil/p-04cb8ce1.entry.js +2 -0
  566. package/dist/infineon-design-system-stencil/{p-4b21c0e6.entry.js → p-095df841.entry.js} +2 -2
  567. package/dist/infineon-design-system-stencil/p-095df841.entry.js.map +1 -0
  568. package/dist/infineon-design-system-stencil/p-0acaa8e4.entry.js +2 -0
  569. package/dist/infineon-design-system-stencil/p-0acaa8e4.entry.js.map +1 -0
  570. package/dist/infineon-design-system-stencil/p-0dbb987b.entry.js +2 -0
  571. package/dist/infineon-design-system-stencil/p-0dbb987b.entry.js.map +1 -0
  572. package/dist/infineon-design-system-stencil/{p-f8d7bbe2.entry.js → p-0df2cba0.entry.js} +2 -2
  573. package/dist/infineon-design-system-stencil/p-0df2cba0.entry.js.map +1 -0
  574. package/dist/infineon-design-system-stencil/{p-51980b19.entry.js → p-11580775.entry.js} +2 -2
  575. package/dist/infineon-design-system-stencil/{p-584149bd.entry.js → p-16390b05.entry.js} +2 -2
  576. package/dist/infineon-design-system-stencil/p-16390b05.entry.js.map +1 -0
  577. package/dist/infineon-design-system-stencil/p-1c30b34d.entry.js +2 -0
  578. package/dist/infineon-design-system-stencil/p-1c30b34d.entry.js.map +1 -0
  579. package/dist/infineon-design-system-stencil/p-1ce3acf6.entry.js +2 -0
  580. package/dist/infineon-design-system-stencil/p-1ce3acf6.entry.js.map +1 -0
  581. package/dist/infineon-design-system-stencil/p-1d2f0317.entry.js +2 -0
  582. package/dist/infineon-design-system-stencil/p-1d2f0317.entry.js.map +1 -0
  583. package/dist/infineon-design-system-stencil/p-200783c7.entry.js +2 -0
  584. package/dist/infineon-design-system-stencil/p-200783c7.entry.js.map +1 -0
  585. package/dist/infineon-design-system-stencil/p-23c0b40c.entry.js +2 -0
  586. package/dist/infineon-design-system-stencil/p-23c0b40c.entry.js.map +1 -0
  587. package/dist/infineon-design-system-stencil/p-2bae45cd.entry.js +2 -0
  588. package/dist/infineon-design-system-stencil/p-2bae45cd.entry.js.map +1 -0
  589. package/dist/infineon-design-system-stencil/{p-c5daebfa.entry.js → p-2fda77a8.entry.js} +2 -2
  590. package/dist/infineon-design-system-stencil/p-2fda77a8.entry.js.map +1 -0
  591. package/dist/infineon-design-system-stencil/{p-8a497a15.entry.js → p-343b4066.entry.js} +2 -2
  592. package/dist/infineon-design-system-stencil/{p-00d6e46e.entry.js → p-347e0acb.entry.js} +2 -2
  593. package/dist/infineon-design-system-stencil/p-347e0acb.entry.js.map +1 -0
  594. package/dist/infineon-design-system-stencil/p-385a8dea.entry.js +2 -0
  595. package/dist/infineon-design-system-stencil/p-385a8dea.entry.js.map +1 -0
  596. package/dist/infineon-design-system-stencil/{p-5c6d5571.entry.js → p-3a9bfb8e.entry.js} +2 -2
  597. package/dist/infineon-design-system-stencil/p-3a9bfb8e.entry.js.map +1 -0
  598. package/dist/infineon-design-system-stencil/p-3c8282e0.entry.js +2 -0
  599. package/dist/infineon-design-system-stencil/p-3c8282e0.entry.js.map +1 -0
  600. package/dist/infineon-design-system-stencil/p-3db8a83d.entry.js +2 -0
  601. package/dist/infineon-design-system-stencil/p-3db8a83d.entry.js.map +1 -0
  602. package/dist/infineon-design-system-stencil/p-3e18845b.entry.js +2 -0
  603. package/dist/infineon-design-system-stencil/{p-91f91586.entry.js → p-3f85ba19.entry.js} +2 -2
  604. package/dist/infineon-design-system-stencil/p-3f85ba19.entry.js.map +1 -0
  605. package/dist/infineon-design-system-stencil/{p-a8ccf376.entry.js → p-452b2e42.entry.js} +2 -2
  606. package/dist/infineon-design-system-stencil/{p-bc8a4226.entry.js → p-49939261.entry.js} +2 -2
  607. package/dist/infineon-design-system-stencil/p-49939261.entry.js.map +1 -0
  608. package/dist/infineon-design-system-stencil/p-4baf201d.entry.js +2 -0
  609. package/dist/infineon-design-system-stencil/{p-51c4e760.entry.js.map → p-4baf201d.entry.js.map} +1 -1
  610. package/dist/infineon-design-system-stencil/{p-6fdc1a34.entry.js → p-4d7cdf87.entry.js} +2 -2
  611. package/dist/infineon-design-system-stencil/p-4d7cdf87.entry.js.map +1 -0
  612. package/dist/infineon-design-system-stencil/{p-db09429f.entry.js → p-52b61a69.entry.js} +2 -2
  613. package/dist/infineon-design-system-stencil/p-52b61a69.entry.js.map +1 -0
  614. package/dist/infineon-design-system-stencil/{p-8969f1e4.entry.js → p-58a4d36f.entry.js} +2 -2
  615. package/dist/infineon-design-system-stencil/p-58a4d36f.entry.js.map +1 -0
  616. package/dist/infineon-design-system-stencil/p-5916cb5c.entry.js +2 -0
  617. package/dist/infineon-design-system-stencil/p-5916cb5c.entry.js.map +1 -0
  618. package/dist/infineon-design-system-stencil/{p-6c5f0f7b.entry.js → p-5c757132.entry.js} +2 -2
  619. package/dist/infineon-design-system-stencil/{p-6c5f0f7b.entry.js.map → p-5c757132.entry.js.map} +1 -1
  620. package/dist/infineon-design-system-stencil/p-5d41cdc8.entry.js +2 -0
  621. package/dist/infineon-design-system-stencil/p-5d41cdc8.entry.js.map +1 -0
  622. package/dist/infineon-design-system-stencil/p-63f09820.entry.js +2 -0
  623. package/dist/infineon-design-system-stencil/p-63f09820.entry.js.map +1 -0
  624. package/dist/infineon-design-system-stencil/p-6777690c.entry.js +2 -0
  625. package/dist/infineon-design-system-stencil/{p-f0052c72.entry.js.map → p-6777690c.entry.js.map} +1 -1
  626. package/dist/infineon-design-system-stencil/p-6d55468a.entry.js +2 -0
  627. package/dist/infineon-design-system-stencil/p-6d55468a.entry.js.map +1 -0
  628. package/dist/infineon-design-system-stencil/p-6e812f43.entry.js +2 -0
  629. package/dist/infineon-design-system-stencil/p-6e812f43.entry.js.map +1 -0
  630. package/dist/infineon-design-system-stencil/p-716277e2.entry.js +2 -0
  631. package/dist/infineon-design-system-stencil/p-716277e2.entry.js.map +1 -0
  632. package/dist/infineon-design-system-stencil/{p-ee39e4ce.entry.js → p-77fbff19.entry.js} +2 -2
  633. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js +2 -0
  634. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js.map +1 -0
  635. package/dist/infineon-design-system-stencil/p-7e8ac88d.entry.js +2 -0
  636. package/dist/infineon-design-system-stencil/p-7e8ac88d.entry.js.map +1 -0
  637. package/dist/infineon-design-system-stencil/p-82992baa.entry.js +2 -0
  638. package/dist/infineon-design-system-stencil/p-82992baa.entry.js.map +1 -0
  639. package/dist/infineon-design-system-stencil/p-84a944d8.entry.js +2 -0
  640. package/dist/infineon-design-system-stencil/p-84a944d8.entry.js.map +1 -0
  641. package/dist/infineon-design-system-stencil/p-85b61d98.entry.js +2 -0
  642. package/dist/infineon-design-system-stencil/{p-58966086.entry.js.map → p-85b61d98.entry.js.map} +1 -1
  643. package/dist/infineon-design-system-stencil/{p-499dba27.entry.js → p-86d7654e.entry.js} +2 -2
  644. package/dist/infineon-design-system-stencil/p-86d7654e.entry.js.map +1 -0
  645. package/dist/infineon-design-system-stencil/p-8c4f7852.entry.js +2 -0
  646. package/dist/infineon-design-system-stencil/p-8c4f7852.entry.js.map +1 -0
  647. package/dist/infineon-design-system-stencil/p-904b3572.entry.js +2 -0
  648. package/dist/infineon-design-system-stencil/p-904b3572.entry.js.map +1 -0
  649. package/dist/infineon-design-system-stencil/p-998b0c29.entry.js +2 -0
  650. package/dist/infineon-design-system-stencil/p-998b0c29.entry.js.map +1 -0
  651. package/dist/infineon-design-system-stencil/{p-c82d6a95.entry.js → p-9adea907.entry.js} +2 -2
  652. package/dist/infineon-design-system-stencil/p-9adea907.entry.js.map +1 -0
  653. package/dist/infineon-design-system-stencil/p-9d56250f.entry.js +2 -0
  654. package/dist/infineon-design-system-stencil/p-9d56250f.entry.js.map +1 -0
  655. package/dist/infineon-design-system-stencil/p-9d99d0f2.entry.js +2 -0
  656. package/dist/infineon-design-system-stencil/p-9d99d0f2.entry.js.map +1 -0
  657. package/dist/infineon-design-system-stencil/p-a0f78ebd.entry.js +2 -0
  658. package/dist/infineon-design-system-stencil/p-a0f78ebd.entry.js.map +1 -0
  659. package/dist/infineon-design-system-stencil/{p-34fb9dca.entry.js → p-a9c13b65.entry.js} +2 -2
  660. package/dist/infineon-design-system-stencil/p-b1b1fa88.entry.js +2 -0
  661. package/dist/infineon-design-system-stencil/{p-53f2ab7f.entry.js.map → p-b1b1fa88.entry.js.map} +1 -1
  662. package/dist/infineon-design-system-stencil/p-b27a47fe.entry.js +2 -0
  663. package/dist/infineon-design-system-stencil/p-b27a47fe.entry.js.map +1 -0
  664. package/dist/infineon-design-system-stencil/p-b4543681.entry.js +2 -0
  665. package/dist/infineon-design-system-stencil/p-b4543681.entry.js.map +1 -0
  666. package/dist/infineon-design-system-stencil/{p-366148e2.entry.js → p-b9ee57be.entry.js} +2 -2
  667. package/dist/infineon-design-system-stencil/p-b9ee57be.entry.js.map +1 -0
  668. package/dist/infineon-design-system-stencil/{p-a116e0d2.entry.js → p-bd7932cc.entry.js} +2 -2
  669. package/dist/infineon-design-system-stencil/p-bd7932cc.entry.js.map +1 -0
  670. package/dist/infineon-design-system-stencil/p-bdbb7e20.entry.js +2 -0
  671. package/dist/infineon-design-system-stencil/p-bdbb7e20.entry.js.map +1 -0
  672. package/dist/infineon-design-system-stencil/p-c2f13236.entry.js +2 -0
  673. package/dist/infineon-design-system-stencil/p-c2f13236.entry.js.map +1 -0
  674. package/dist/infineon-design-system-stencil/p-c63974da.js +3 -0
  675. package/dist/infineon-design-system-stencil/p-c63974da.js.map +1 -0
  676. package/dist/infineon-design-system-stencil/{p-680f8e2c.entry.js → p-cb2bfd10.entry.js} +2 -2
  677. package/dist/infineon-design-system-stencil/p-cde478c3.entry.js +2 -0
  678. package/dist/infineon-design-system-stencil/p-cde478c3.entry.js.map +1 -0
  679. package/dist/infineon-design-system-stencil/{p-3c5a8615.entry.js → p-d46b8d55.entry.js} +2 -2
  680. package/dist/infineon-design-system-stencil/p-d46b8d55.entry.js.map +1 -0
  681. package/dist/infineon-design-system-stencil/{p-6ae18c50.entry.js → p-d93f128c.entry.js} +2 -2
  682. package/dist/infineon-design-system-stencil/p-d93f128c.entry.js.map +1 -0
  683. package/dist/infineon-design-system-stencil/{p-28fb795b.entry.js → p-da6efe6b.entry.js} +2 -2
  684. package/dist/infineon-design-system-stencil/{p-85f4399b.entry.js → p-e9f5f2b8.entry.js} +3 -3
  685. package/dist/infineon-design-system-stencil/p-e9f5f2b8.entry.js.map +1 -0
  686. package/dist/infineon-design-system-stencil/p-f36a94fd.entry.js +2 -0
  687. package/dist/infineon-design-system-stencil/p-f3c7cb47.entry.js +2 -0
  688. package/dist/infineon-design-system-stencil/p-f3c7cb47.entry.js.map +1 -0
  689. package/dist/infineon-design-system-stencil/{p-c1b1b593.entry.js → p-f4d00e57.entry.js} +2 -2
  690. package/dist/infineon-design-system-stencil/p-f4d00e57.entry.js.map +1 -0
  691. package/dist/infineon-design-system-stencil/p-fbbed2f5.entry.js +2 -0
  692. package/dist/infineon-design-system-stencil/p-fbbed2f5.entry.js.map +1 -0
  693. package/dist/types/components/navigation/navbar/navbar-item.d.ts +2 -0
  694. package/dist/types/components.d.ts +2 -0
  695. package/package.json +1 -1
  696. package/dist/cjs/index-af3b4f6c.js.map +0 -1
  697. package/dist/components/p-094bb435.js.map +0 -1
  698. package/dist/components/p-11922b8b.js.map +0 -1
  699. package/dist/components/p-12e02e47.js.map +0 -1
  700. package/dist/components/p-23cdd5a7.js.map +0 -1
  701. package/dist/components/p-2f1e7628.js.map +0 -1
  702. package/dist/components/p-3a762171.js.map +0 -1
  703. package/dist/components/p-68d90201.js.map +0 -1
  704. package/dist/components/p-7bbdeac1.js.map +0 -1
  705. package/dist/components/p-7e430b83.js.map +0 -1
  706. package/dist/components/p-8eed2f39.js.map +0 -1
  707. package/dist/components/p-9ee4ea24.js.map +0 -1
  708. package/dist/components/p-b2439194.js.map +0 -1
  709. package/dist/components/p-c1f3a68c.js.map +0 -1
  710. package/dist/components/p-cfb87c4d.js.map +0 -1
  711. package/dist/components/p-d0a26bd5.js.map +0 -1
  712. package/dist/components/p-d57db1c4.js.map +0 -1
  713. package/dist/components/p-f0f583d5.js.map +0 -1
  714. package/dist/esm/index-dc4139fb.js.map +0 -1
  715. package/dist/infineon-design-system-stencil/p-00d6e46e.entry.js.map +0 -1
  716. package/dist/infineon-design-system-stencil/p-030a5b46.entry.js +0 -2
  717. package/dist/infineon-design-system-stencil/p-030a5b46.entry.js.map +0 -1
  718. package/dist/infineon-design-system-stencil/p-0a011c63.entry.js +0 -2
  719. package/dist/infineon-design-system-stencil/p-0a011c63.entry.js.map +0 -1
  720. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js +0 -2
  721. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js.map +0 -1
  722. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js +0 -2
  723. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js.map +0 -1
  724. package/dist/infineon-design-system-stencil/p-18f5a5e3.entry.js +0 -2
  725. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js +0 -2
  726. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js.map +0 -1
  727. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js +0 -2
  728. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js.map +0 -1
  729. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js +0 -2
  730. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js.map +0 -1
  731. package/dist/infineon-design-system-stencil/p-32510d11.entry.js +0 -2
  732. package/dist/infineon-design-system-stencil/p-32510d11.entry.js.map +0 -1
  733. package/dist/infineon-design-system-stencil/p-32fc3ce3.entry.js +0 -2
  734. package/dist/infineon-design-system-stencil/p-35d0daa5.entry.js +0 -2
  735. package/dist/infineon-design-system-stencil/p-35d0daa5.entry.js.map +0 -1
  736. package/dist/infineon-design-system-stencil/p-366148e2.entry.js.map +0 -1
  737. package/dist/infineon-design-system-stencil/p-379a2090.entry.js +0 -2
  738. package/dist/infineon-design-system-stencil/p-379a2090.entry.js.map +0 -1
  739. package/dist/infineon-design-system-stencil/p-3b99fb06.entry.js +0 -2
  740. package/dist/infineon-design-system-stencil/p-3b99fb06.entry.js.map +0 -1
  741. package/dist/infineon-design-system-stencil/p-3c5a8615.entry.js.map +0 -1
  742. package/dist/infineon-design-system-stencil/p-436babb8.entry.js +0 -2
  743. package/dist/infineon-design-system-stencil/p-436babb8.entry.js.map +0 -1
  744. package/dist/infineon-design-system-stencil/p-44b2cbe1.entry.js +0 -2
  745. package/dist/infineon-design-system-stencil/p-44b2cbe1.entry.js.map +0 -1
  746. package/dist/infineon-design-system-stencil/p-466fea81.entry.js +0 -2
  747. package/dist/infineon-design-system-stencil/p-466fea81.entry.js.map +0 -1
  748. package/dist/infineon-design-system-stencil/p-499dba27.entry.js.map +0 -1
  749. package/dist/infineon-design-system-stencil/p-4b21c0e6.entry.js.map +0 -1
  750. package/dist/infineon-design-system-stencil/p-4fab3a1e.entry.js +0 -2
  751. package/dist/infineon-design-system-stencil/p-4fab3a1e.entry.js.map +0 -1
  752. package/dist/infineon-design-system-stencil/p-51c4e760.entry.js +0 -2
  753. package/dist/infineon-design-system-stencil/p-53f2ab7f.entry.js +0 -2
  754. package/dist/infineon-design-system-stencil/p-584149bd.entry.js.map +0 -1
  755. package/dist/infineon-design-system-stencil/p-58966086.entry.js +0 -2
  756. package/dist/infineon-design-system-stencil/p-5c6d5571.entry.js.map +0 -1
  757. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js +0 -2
  758. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js.map +0 -1
  759. package/dist/infineon-design-system-stencil/p-6ae18c50.entry.js.map +0 -1
  760. package/dist/infineon-design-system-stencil/p-6b122987.js +0 -3
  761. package/dist/infineon-design-system-stencil/p-6b122987.js.map +0 -1
  762. package/dist/infineon-design-system-stencil/p-6fdc1a34.entry.js.map +0 -1
  763. package/dist/infineon-design-system-stencil/p-775d187b.entry.js +0 -2
  764. package/dist/infineon-design-system-stencil/p-775d187b.entry.js.map +0 -1
  765. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js +0 -2
  766. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js.map +0 -1
  767. package/dist/infineon-design-system-stencil/p-7f59e05a.entry.js +0 -2
  768. package/dist/infineon-design-system-stencil/p-7f59e05a.entry.js.map +0 -1
  769. package/dist/infineon-design-system-stencil/p-7fa8ccd3.entry.js +0 -2
  770. package/dist/infineon-design-system-stencil/p-7fa8ccd3.entry.js.map +0 -1
  771. package/dist/infineon-design-system-stencil/p-85f4399b.entry.js.map +0 -1
  772. package/dist/infineon-design-system-stencil/p-8969f1e4.entry.js.map +0 -1
  773. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js +0 -2
  774. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js.map +0 -1
  775. package/dist/infineon-design-system-stencil/p-91f91586.entry.js.map +0 -1
  776. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js +0 -2
  777. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js.map +0 -1
  778. package/dist/infineon-design-system-stencil/p-9b778e88.entry.js +0 -2
  779. package/dist/infineon-design-system-stencil/p-9b778e88.entry.js.map +0 -1
  780. package/dist/infineon-design-system-stencil/p-9ee328a5.entry.js +0 -2
  781. package/dist/infineon-design-system-stencil/p-9ee328a5.entry.js.map +0 -1
  782. package/dist/infineon-design-system-stencil/p-a116e0d2.entry.js.map +0 -1
  783. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js +0 -2
  784. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js.map +0 -1
  785. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js +0 -2
  786. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js.map +0 -1
  787. package/dist/infineon-design-system-stencil/p-b5a3fad1.entry.js +0 -2
  788. package/dist/infineon-design-system-stencil/p-bc8a4226.entry.js.map +0 -1
  789. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js +0 -2
  790. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js.map +0 -1
  791. package/dist/infineon-design-system-stencil/p-c1b1b593.entry.js.map +0 -1
  792. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js +0 -2
  793. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js.map +0 -1
  794. package/dist/infineon-design-system-stencil/p-c5daebfa.entry.js.map +0 -1
  795. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js +0 -2
  796. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js.map +0 -1
  797. package/dist/infineon-design-system-stencil/p-c82d6a95.entry.js.map +0 -1
  798. package/dist/infineon-design-system-stencil/p-caff080b.entry.js +0 -2
  799. package/dist/infineon-design-system-stencil/p-caff080b.entry.js.map +0 -1
  800. package/dist/infineon-design-system-stencil/p-ce413596.entry.js.map +0 -1
  801. package/dist/infineon-design-system-stencil/p-d101e5a0.entry.js +0 -2
  802. package/dist/infineon-design-system-stencil/p-d101e5a0.entry.js.map +0 -1
  803. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js +0 -2
  804. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js.map +0 -1
  805. package/dist/infineon-design-system-stencil/p-db09429f.entry.js.map +0 -1
  806. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js +0 -2
  807. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js.map +0 -1
  808. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js +0 -2
  809. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js.map +0 -1
  810. package/dist/infineon-design-system-stencil/p-f0052c72.entry.js +0 -2
  811. package/dist/infineon-design-system-stencil/p-f8d7bbe2.entry.js.map +0 -1
  812. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js +0 -2
  813. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js.map +0 -1
  814. /package/dist/infineon-design-system-stencil/{p-32fc3ce3.entry.js.map → p-04cb8ce1.entry.js.map} +0 -0
  815. /package/dist/infineon-design-system-stencil/{p-51980b19.entry.js.map → p-11580775.entry.js.map} +0 -0
  816. /package/dist/infineon-design-system-stencil/{p-8a497a15.entry.js.map → p-343b4066.entry.js.map} +0 -0
  817. /package/dist/infineon-design-system-stencil/{p-b5a3fad1.entry.js.map → p-3e18845b.entry.js.map} +0 -0
  818. /package/dist/infineon-design-system-stencil/{p-a8ccf376.entry.js.map → p-452b2e42.entry.js.map} +0 -0
  819. /package/dist/infineon-design-system-stencil/{p-ee39e4ce.entry.js.map → p-77fbff19.entry.js.map} +0 -0
  820. /package/dist/infineon-design-system-stencil/{p-34fb9dca.entry.js.map → p-a9c13b65.entry.js.map} +0 -0
  821. /package/dist/infineon-design-system-stencil/{p-680f8e2c.entry.js.map → p-cb2bfd10.entry.js.map} +0 -0
  822. /package/dist/infineon-design-system-stencil/{p-28fb795b.entry.js.map → p-da6efe6b.entry.js.map} +0 -0
  823. /package/dist/infineon-design-system-stencil/{p-18f5a5e3.entry.js.map → p-f36a94fd.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["footerCss","IfxFooterStyle0","Footer","this","hasColSlot","hasSocialsSlot","Date","getFullYear","currentYear","componentWillLoad","el","querySelector","render","h","Host","key","class","width","height","viewBox","fill","xmlns","d","id","name","copyrightText"],"sources":["src/components/footer/footer.scss?tag=ifx-footer&encapsulation=shadow","src/components/footer/footer.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n width: 100%;\n}\n\n.footer__container {\n //width: 100%;\n padding: 0px 32px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family);\n\n & .footer__wrapper {\n display: flex;\n flex-direction: column;\n width: 100%;\n\n @media (max-width: 768px) {\n margin-top: tokens.$ifxSpace600;\n }\n\n & .footer__logo_top {\n svg {\n display: none; // Logo (when variant=large) is hidden by default\n\n @media (max-width: 768px) {\n display: inline; // Logo is shown (when variant=large) on mobile screens\n }\n }\n }\n\n & .footer__logo_btm {\n svg {\n display: inline; // Logo is shown by default\n vertical-align: bottom;\n }\n }\n\n\n & .col-wrapper {\n display: flex;\n align-items: flex-start;\n width: 100%;\n justify-content: space-between;\n margin: tokens.$ifxSpace400 0;\n\n @media (max-width: 768px) {\n // Adjust this value to the breakpoint you want\n flex-wrap: wrap;\n justify-content: space-between; // Ensures that there is space between the columns if the width allows it\n margin: tokens.$ifxSpace300 0;\n }\n\n & ::slotted([slot=col]) {\n display: flex;\n gap: tokens.$ifxSpace400;\n\n @media (max-width: 768px) {\n // Adjust this value according to your design breakpoints\n flex-wrap: wrap;\n margin-top: tokens.$ifxSpace300;\n }\n }\n }\n\n\n & .default {\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n padding: 24px 0;\n border-bottom: 1px solid #BFBBBB;\n margin-top: tokens.$ifxSpace300;\n\n & .footer__logo_btm {\n svg {\n display: inline; // Logo is shown at the bottom (when variant=large) on mobile screens \n vertical-align: bottom;\n\n @media (max-width: 768px) {\n display: none; // Logo at the bottom (when variant=large) is hidden by default\n }\n }\n }\n\n @media (max-width: 768px) {\n // Adjust this value according to your design breakpoints\n margin-top: 0px;\n flex-direction: column;\n align-items: flex-start;\n }\n\n ::slotted([slot=socials]) {\n display: flex;\n gap: tokens.$ifxSpace400;\n\n @media (max-width: 768px) {\n // Adjust this value according to your design breakpoints\n flex-wrap: wrap;\n }\n }\n }\n\n\n & .footer__base {\n display: flex;\n justify-content: space-between;\n width: 100%;\n padding: tokens.$ifxSpace300 0;\n\n & .footer__brand {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n color: tokens.$ifxColorBaseBlack;\n flex-grow: 1;\n\n }\n\n & .footer__info > ::slotted([slot=info]) {\n display: flex;\n gap: tokens.$ifxSpace300;\n padding-right: tokens.$ifxSpace200;\n justify-content: flex-end;\n flex-grow: 1;\n\n a {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n text-decoration: none;\n }\n\n @media (max-width: 768px) {\n // Adjust this value according to your design breakpoints\n justify-content: flex-start;\n flex-wrap: wrap;\n gap: tokens.$ifxSpace150 tokens.$ifxSpace200;\n }\n }\n\n @media (max-width: 768px) {\n // Adjust this value according to your design breakpoints\n flex-direction: column-reverse;\n\n .footer__brand {\n margin-top: tokens.$ifxSpace200;\n }\n }\n }\n }\n}","import { Component, h, Element, Prop, State, Host } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-footer',\n styleUrl: 'footer.scss',\n shadow: true,\n})\n\nexport class Footer {\n @Element() el: HTMLElement;\n @State() currentYear: number = new Date().getFullYear();\n @Prop() copyrightText: string = '© 1999 - ' + this.currentYear + ' Infineon Technologies AG';\n\n private hasColSlot: boolean = false;\n private hasSocialsSlot: boolean = false;\n\n componentWillLoad() {\n this.hasColSlot = !!this.el.querySelector('[slot=\"col\"]');\n this.hasSocialsSlot = !!this.el.querySelector('[slot=\"socials\"]');\n}\n\n \n render() {\n return (\n <Host>\n <div aria-label='Main footer navigation' class=\"footer__container\">\n <div class=\"footer__wrapper\">\n { (this.hasSocialsSlot || this.hasColSlot) &&\n <div class=\"footer__logo_top\">\n <svg width=\"91\" height=\"40\" viewBox=\"0 0 91 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_2396_2480)\">\n <path d=\"M67.691 26.7766C71.0884 26.7766 72.1461 23.1841 72.1461 19.8802C72.1461 15.4536 70.2871 13.1441 67.691 13.1441C64.4219 13.1441 63.2681 16.7367 63.3001 19.9443C63.3322 23.1199 64.2296 26.7766 67.691 26.7766ZM66.0244 19.8481C66.0244 18.533 66.0244 15.4536 67.691 15.4536C69.4859 15.4536 69.4218 18.5009 69.4218 19.9123C69.4218 21.2595 69.4218 24.5313 67.7551 24.5313C65.9603 24.4992 66.0244 21.2274 66.0244 19.8481ZM57.8195 26.7766C59.1976 26.7766 60.3835 26.2313 61.5053 25.0445L60.5117 23.1841C59.7425 24.018 58.9733 24.4671 58.0438 24.4671C57.2746 24.4671 56.6336 24.018 56.249 23.2482C55.9285 22.5746 55.8644 21.8048 55.8644 20.9708V20.7142H61.6335V20.1368C61.6335 17.282 61.2809 15.7102 60.3835 14.5234C59.7104 13.6253 58.7169 13.1441 57.499 13.1441C56.2169 13.1441 55.1593 13.7215 54.39 14.8442C53.5567 16.0631 53.2042 17.699 53.2042 19.9443C53.1721 24.2426 54.8708 26.7766 57.8195 26.7766ZM57.531 15.2612C58.172 15.2612 58.5566 15.614 58.813 16.1914C59.0053 16.7046 59.1015 17.5707 59.1015 18.5971H55.8644C55.8964 16.3197 56.3772 15.2612 57.531 15.2612ZM74.2614 26.4559H76.7614V16.8329C77.3703 16.0952 78.0754 15.6782 78.5882 15.6782C78.9087 15.6782 79.2292 15.7423 79.4215 15.9989C79.6138 16.2876 79.71 16.7046 79.71 17.699V26.4559H82.21V16.5442C82.21 15.6782 82.1138 14.8121 81.601 14.1706C81.1523 13.5932 80.4472 13.2404 79.5497 13.2404C78.3959 13.2404 77.2101 13.914 76.569 14.6838C76.537 14.0102 76.3126 13.3687 76.2485 13.1441L73.9089 13.7536C74.0371 14.4593 74.2294 15.3253 74.2294 16.8971V26.4559H74.2614ZM45.2236 14.6838C45.1915 14.0102 44.9672 13.3687 44.9031 13.1441L42.5634 13.7536C42.6916 14.4593 42.8839 15.3253 42.8839 16.8971V26.4238H45.3838V16.8008C45.9928 16.0631 46.6979 15.6461 47.2107 15.6461C47.5312 15.6461 47.8517 15.7102 48.044 15.9669C48.2363 16.2555 48.3325 16.6725 48.3325 17.6669V26.4238H50.8324V16.5442C50.8324 15.6782 50.7363 14.8121 50.2235 14.1706C49.7748 13.5932 49.0696 13.2404 48.1722 13.2404C47.0505 13.2404 45.8646 13.914 45.2236 14.6838ZM14.6473 9.07042C16.1216 9.07042 17.3075 7.88359 17.3075 6.40807C17.3075 4.93256 16.1216 3.74573 14.6473 3.74573C13.173 3.74573 11.9871 4.93256 11.9871 6.40807C11.9871 7.88359 13.173 9.07042 14.6473 9.07042ZM26.9227 26.4559V16.5442C26.9227 15.6782 26.8265 14.8121 26.3137 14.1706C25.865 13.5932 25.1599 13.2404 24.2625 13.2404C23.1087 13.2404 21.9228 13.914 21.2818 14.6838C21.2497 14.0102 21.0254 13.3687 20.9613 13.1441L18.6536 13.7857C18.7818 14.4913 18.9741 15.3574 18.9741 16.9291V26.4559H21.4741V16.8329C22.0831 16.0952 22.7882 15.6782 23.301 15.6782C23.6215 15.6782 23.942 15.7423 24.1343 15.9989C24.3266 16.2876 24.4227 16.7046 24.4227 17.699V26.4559H26.9227ZM38.4289 8.36474C37.4994 8.36474 36.7622 9.10249 36.7622 10.0327C36.7622 10.9629 37.4994 11.7007 38.3968 11.7007C39.3263 11.7007 40.0634 10.9629 40.0634 10.0327C40.0634 9.10249 39.3263 8.36474 38.4289 8.36474ZM13.4614 26.4559H15.9614V10.8346L13.4614 11.1554V26.4559ZM33.8777 9.90441C34.3264 9.90441 34.7751 10.0648 35.0635 10.2893L35.7687 8.33266C35.0956 7.85151 34.3584 7.62698 33.429 7.62698C32.788 7.62698 32.1149 7.78736 31.5059 8.26851C30.897 8.78173 30.256 9.80818 30.256 11.7328C30.256 12.5667 30.288 13.4328 30.288 13.4328H29.4226V15.6461H30.288V26.4238H32.8521V15.6782H34.743L35.2238 13.4649H32.8841V11.4762C32.8841 10.5139 33.2687 9.90441 33.8777 9.90441ZM37.1468 26.4559H39.6788V13.2404L37.1468 13.5611V26.4559Z\" fill=\"#005DA9\" />\n <path d=\"M77.0816 33.5126C68.6203 36.0146 58.3321 37.1052 48.2682 37.1052C22.7239 37.1052 6.24986 29.5993 5.09604 19.6877C4.67938 15.9668 7.59599 12.3422 12.4677 9.26285C11.6023 8.62132 11.0575 7.59488 11.0254 6.44012C3.97427 10.161 0 15.0366 0 19.9764C0 30.9145 19.5188 40.1525 48.5246 39.7676C58.6205 39.6393 67.0498 38.1958 74.6778 35.6939C83.7482 32.7428 89.4532 28.5087 90.8313 26.6483C89.1968 28.1238 85.3186 31.0748 77.0816 33.5126ZM23.2687 4.38723C24.9674 3.80985 27.3712 3.0721 27.3712 3.0721C34.1339 1.21166 41.6017 0.121063 48.5566 0.185215C40.544 -0.295931 33.2365 0.185215 26.8584 1.33997C26.8584 1.33997 24.743 1.69281 22.4675 2.27018C22.4675 2.27018 21.3777 2.55887 20.7047 2.75133C20.0316 2.94379 19.1021 3.2004 19.1021 3.2004C18.4611 3.39286 17.8201 3.6174 17.1791 3.84193C17.8201 4.48346 18.2047 5.31745 18.2368 6.27974C19.3586 5.76652 21.5059 4.99668 23.2687 4.38723Z\" fill=\"#E30034\" />\n </g>\n <defs>\n <clipPath id=\"clip0_2396_2480\">\n <rect width=\"91\" height=\"40\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg> \n </div>\n }\n {this.hasColSlot && (\n <div>\n\n <div class=\"col-wrapper\">\n <slot name=\"col\" />\n </div>\n </div>\n )}\n\n {this.hasSocialsSlot &&\n <div class=\"default\" aria-label='Follow us on social media'>\n <div class=\"footer__logo_btm\">\n <svg width=\"91\" height=\"40\" viewBox=\"0 0 91 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_2396_2480)\">\n <path d=\"M67.691 26.7766C71.0884 26.7766 72.1461 23.1841 72.1461 19.8802C72.1461 15.4536 70.2871 13.1441 67.691 13.1441C64.4219 13.1441 63.2681 16.7367 63.3001 19.9443C63.3322 23.1199 64.2296 26.7766 67.691 26.7766ZM66.0244 19.8481C66.0244 18.533 66.0244 15.4536 67.691 15.4536C69.4859 15.4536 69.4218 18.5009 69.4218 19.9123C69.4218 21.2595 69.4218 24.5313 67.7551 24.5313C65.9603 24.4992 66.0244 21.2274 66.0244 19.8481ZM57.8195 26.7766C59.1976 26.7766 60.3835 26.2313 61.5053 25.0445L60.5117 23.1841C59.7425 24.018 58.9733 24.4671 58.0438 24.4671C57.2746 24.4671 56.6336 24.018 56.249 23.2482C55.9285 22.5746 55.8644 21.8048 55.8644 20.9708V20.7142H61.6335V20.1368C61.6335 17.282 61.2809 15.7102 60.3835 14.5234C59.7104 13.6253 58.7169 13.1441 57.499 13.1441C56.2169 13.1441 55.1593 13.7215 54.39 14.8442C53.5567 16.0631 53.2042 17.699 53.2042 19.9443C53.1721 24.2426 54.8708 26.7766 57.8195 26.7766ZM57.531 15.2612C58.172 15.2612 58.5566 15.614 58.813 16.1914C59.0053 16.7046 59.1015 17.5707 59.1015 18.5971H55.8644C55.8964 16.3197 56.3772 15.2612 57.531 15.2612ZM74.2614 26.4559H76.7614V16.8329C77.3703 16.0952 78.0754 15.6782 78.5882 15.6782C78.9087 15.6782 79.2292 15.7423 79.4215 15.9989C79.6138 16.2876 79.71 16.7046 79.71 17.699V26.4559H82.21V16.5442C82.21 15.6782 82.1138 14.8121 81.601 14.1706C81.1523 13.5932 80.4472 13.2404 79.5497 13.2404C78.3959 13.2404 77.2101 13.914 76.569 14.6838C76.537 14.0102 76.3126 13.3687 76.2485 13.1441L73.9089 13.7536C74.0371 14.4593 74.2294 15.3253 74.2294 16.8971V26.4559H74.2614ZM45.2236 14.6838C45.1915 14.0102 44.9672 13.3687 44.9031 13.1441L42.5634 13.7536C42.6916 14.4593 42.8839 15.3253 42.8839 16.8971V26.4238H45.3838V16.8008C45.9928 16.0631 46.6979 15.6461 47.2107 15.6461C47.5312 15.6461 47.8517 15.7102 48.044 15.9669C48.2363 16.2555 48.3325 16.6725 48.3325 17.6669V26.4238H50.8324V16.5442C50.8324 15.6782 50.7363 14.8121 50.2235 14.1706C49.7748 13.5932 49.0696 13.2404 48.1722 13.2404C47.0505 13.2404 45.8646 13.914 45.2236 14.6838ZM14.6473 9.07042C16.1216 9.07042 17.3075 7.88359 17.3075 6.40807C17.3075 4.93256 16.1216 3.74573 14.6473 3.74573C13.173 3.74573 11.9871 4.93256 11.9871 6.40807C11.9871 7.88359 13.173 9.07042 14.6473 9.07042ZM26.9227 26.4559V16.5442C26.9227 15.6782 26.8265 14.8121 26.3137 14.1706C25.865 13.5932 25.1599 13.2404 24.2625 13.2404C23.1087 13.2404 21.9228 13.914 21.2818 14.6838C21.2497 14.0102 21.0254 13.3687 20.9613 13.1441L18.6536 13.7857C18.7818 14.4913 18.9741 15.3574 18.9741 16.9291V26.4559H21.4741V16.8329C22.0831 16.0952 22.7882 15.6782 23.301 15.6782C23.6215 15.6782 23.942 15.7423 24.1343 15.9989C24.3266 16.2876 24.4227 16.7046 24.4227 17.699V26.4559H26.9227ZM38.4289 8.36474C37.4994 8.36474 36.7622 9.10249 36.7622 10.0327C36.7622 10.9629 37.4994 11.7007 38.3968 11.7007C39.3263 11.7007 40.0634 10.9629 40.0634 10.0327C40.0634 9.10249 39.3263 8.36474 38.4289 8.36474ZM13.4614 26.4559H15.9614V10.8346L13.4614 11.1554V26.4559ZM33.8777 9.90441C34.3264 9.90441 34.7751 10.0648 35.0635 10.2893L35.7687 8.33266C35.0956 7.85151 34.3584 7.62698 33.429 7.62698C32.788 7.62698 32.1149 7.78736 31.5059 8.26851C30.897 8.78173 30.256 9.80818 30.256 11.7328C30.256 12.5667 30.288 13.4328 30.288 13.4328H29.4226V15.6461H30.288V26.4238H32.8521V15.6782H34.743L35.2238 13.4649H32.8841V11.4762C32.8841 10.5139 33.2687 9.90441 33.8777 9.90441ZM37.1468 26.4559H39.6788V13.2404L37.1468 13.5611V26.4559Z\" fill=\"#005DA9\" />\n <path d=\"M77.0816 33.5126C68.6203 36.0146 58.3321 37.1052 48.2682 37.1052C22.7239 37.1052 6.24986 29.5993 5.09604 19.6877C4.67938 15.9668 7.59599 12.3422 12.4677 9.26285C11.6023 8.62132 11.0575 7.59488 11.0254 6.44012C3.97427 10.161 0 15.0366 0 19.9764C0 30.9145 19.5188 40.1525 48.5246 39.7676C58.6205 39.6393 67.0498 38.1958 74.6778 35.6939C83.7482 32.7428 89.4532 28.5087 90.8313 26.6483C89.1968 28.1238 85.3186 31.0748 77.0816 33.5126ZM23.2687 4.38723C24.9674 3.80985 27.3712 3.0721 27.3712 3.0721C34.1339 1.21166 41.6017 0.121063 48.5566 0.185215C40.544 -0.295931 33.2365 0.185215 26.8584 1.33997C26.8584 1.33997 24.743 1.69281 22.4675 2.27018C22.4675 2.27018 21.3777 2.55887 20.7047 2.75133C20.0316 2.94379 19.1021 3.2004 19.1021 3.2004C18.4611 3.39286 17.8201 3.6174 17.1791 3.84193C17.8201 4.48346 18.2047 5.31745 18.2368 6.27974C19.3586 5.76652 21.5059 4.99668 23.2687 4.38723Z\" fill=\"#E30034\" />\n </g>\n <defs>\n <clipPath id=\"clip0_2396_2480\">\n <rect width=\"91\" height=\"40\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </div>\n\n <slot name=\"socials\" />\n </div>\n }\n <div class=\"footer__base\">\n {this.copyrightText &&\n <div class=\"footer__brand\">\n {this.copyrightText}\n </div>\n }\n <div class=\"footer__info\">\n <slot name=\"info\"/>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAY,+2FAClB,MAAAC,EAAeD,E,MCQFE,EAAM,M,yBAKTC,KAAAC,WAAsB,MACtBD,KAAAE,eAA0B,M,kBAJH,IAAIC,MAAOC,c,mBACV,YAAcJ,KAAKK,YAAc,2B,CAKjE,iBAAAC,GACEN,KAAKC,aAAeD,KAAKO,GAAGC,cAAc,gBAC1CR,KAAKE,iBAAmBF,KAAKO,GAAGC,cAAc,mB,CAIhD,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,wDAAgB,yBAAyBC,MAAM,qBAC7CH,EAAA,OAAAE,IAAA,2CAAKC,MAAM,oBACNb,KAAKE,gBAAkBF,KAAKC,aAC7BS,EAAA,OAAAE,IAAA,2CAAKC,MAAM,oBACTH,EAAA,OAAAE,IAAA,2CAAKE,MAAM,KAAKC,OAAO,KAAKC,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChER,EAAA,KAAAE,IAAA,uDAAa,yBACXF,EAAA,QAAAE,IAAA,2CAAMO,EAAE,6yGAA6yGF,KAAK,YAC1zGP,EAAA,QAAAE,IAAA,2CAAMO,EAAE,g3BAAg3BF,KAAK,aAE/3BP,EAAA,QAAAE,IAAA,4CACEF,EAAA,YAAAE,IAAA,2CAAUQ,GAAG,mBACXV,EAAA,QAAAE,IAAA,2CAAME,MAAM,KAAKC,OAAO,KAAKE,KAAK,cAM3CjB,KAAKC,YACJS,EAAA,OAAAE,IAAA,4CAEEF,EAAA,OAAAE,IAAA,2CAAKC,MAAM,eACTH,EAAA,QAAAE,IAAA,2CAAMS,KAAK,UAKhBrB,KAAKE,gBACJQ,EAAA,OAAAE,IAAA,2CAAKC,MAAM,UAAS,aAAY,6BAC9BH,EAAA,OAAAE,IAAA,2CAAKC,MAAM,oBACTH,EAAA,OAAAE,IAAA,2CAAKE,MAAM,KAAKC,OAAO,KAAKC,QAAQ,YAAYC,KAAK,OAAOC,MAAM,8BAChER,EAAA,KAAAE,IAAA,uDAAa,yBACXF,EAAA,QAAAE,IAAA,2CAAMO,EAAE,6yGAA6yGF,KAAK,YAC1zGP,EAAA,QAAAE,IAAA,2CAAMO,EAAE,g3BAAg3BF,KAAK,aAE/3BP,EAAA,QAAAE,IAAA,4CACEF,EAAA,YAAAE,IAAA,2CAAUQ,GAAG,mBACXV,EAAA,QAAAE,IAAA,2CAAME,MAAM,KAAKC,OAAO,KAAKE,KAAK,cAM1CP,EAAA,QAAAE,IAAA,2CAAMS,KAAK,aAGfX,EAAA,OAAAE,IAAA,2CAAKC,MAAM,gBACRb,KAAKsB,eACJZ,EAAA,OAAAE,IAAA,2CAAKC,MAAM,iBACRb,KAAKsB,eAGVZ,EAAA,OAAAE,IAAA,2CAAKC,MAAM,gBACTH,EAAA,QAAAE,IAAA,2CAAMS,KAAK,a","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,g as e}from"./p-6b122987.js";const a=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:flex}.tabs{display:flex;font-family:var(--ifx-font-family);width:100%}.tabs.horizontal{flex-direction:column}.tabs.vertical{flex-direction:row}.tabs-list{display:flex;list-style:none;padding:0;margin:0;position:relative;font-weight:600}.tabs-list:focus-within .active-border{display:none}.active-border{content:"";position:absolute;transition:left 0.3s ease-in-out, top 0.3s ease-in-out, height 0.3s ease-in-out}.tabs.horizontal .active-border{bottom:0;left:0;height:2px;background-color:#0A8276}.tabs.vertical .tabs-list{flex-direction:column;border-bottom:none}.tabs.vertical .tab-content{padding-top:0px;padding-left:32px}.tabs:not(.vertical) .tab-item.full-width{flex:1}.tab-item{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;cursor:pointer;position:relative}.tab-item.icon__right{flex-direction:row-reverse;justify-content:flex-end}.tab-item:hover{color:#0A8276}.tab-item:active,.tab-item.active{color:#0A8276}.tab-item:focus,.tab-item.focus{outline:none;border-radius:1px;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.tab-item:focus+.active-border,.tab-item.focus+.active-border{display:none}.tab-item.disabled{color:#BFBBBB;pointer-events:none}.tabs.vertical .tab-item{border-right:2px solid transparent;min-width:7em}.tabs.vertical .active-border{left:0;top:0;width:2px;background-color:#0A8276}.tab-content{padding-top:24px;padding-left:0px;flex-grow:1}.tabs.small .tab-item{font-size:0.875rem}';const o=a;const n=class{constructor(s){t(this,s);this.ifxTabChange=i(this,"ifxTabChange",7);this.orientation="horizontal";this.activeTabIndex=0;this.fullWidth=false;this.internalOrientation=undefined;this.internalActiveTabIndex=0;this.internalFocusedTabIndex=0;this.tabRefs=[];this.tabHeaderRefs=[];this.disabledTabs=[];this.tabObjects=[]}updateBorderOnWindowResize(){this.updateBorderAndFocus()}setActiveAndFocusedTab(t){var i;if(t>=this.tabObjects.length){t=this.tabObjects.length-1}if(t<0){t=0}if(!((i=this.tabObjects[t])===null||i===void 0?void 0:i.disabled)){this.internalActiveTabIndex=t;this.internalFocusedTabIndex=t}}handleTabHeaderChange(t){const i=t.target.getAttribute("slot").replace("tab-","");this.tabObjects[i].header=t.detail;this.tabObjects=[...this.tabObjects]}activeTabIndexChanged(t,i){if(t!==i){this.setActiveAndFocusedTab(t)}}componentWillLoad(){this.internalOrientation=this.orientation.toLowerCase()==="vertical"?"vertical":"horizontal";if(this.internalActiveTabIndex!==this.activeTabIndex){this.ifxTabChange.emit({previousTab:this.internalActiveTabIndex,currentTab:this.activeTabIndex})}this.onSlotChange();this.setActiveAndFocusedTab(this.activeTabIndex);this.updateTabStyles()}updateTabStyles(){this.tabHeaderRefs.forEach(((t,i)=>{t.classList.toggle("active",i===this.internalActiveTabIndex);t.setAttribute("aria-selected",i===this.internalActiveTabIndex?"true":"false")}))}reRenderBorder(){const t=this.el.shadowRoot.querySelector(".active-border");if(t&&this.tabHeaderRefs[this.internalActiveTabIndex]){if(this.orientation==="horizontal"){t.style.left=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;t.style.width=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;t.style.top="";t.style.height=""}else{t.style.top=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;t.style.height=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;t.style.left="";t.style.width=""}}}onSlotChange(){const t=this.el.querySelectorAll("ifx-tab");this.tabObjects=Array.from(t).map((t=>({header:t===null||t===void 0?void 0:t.header,disabled:(t===null||t===void 0?void 0:t.disabled)===true,icon:t===null||t===void 0?void 0:t.icon,iconPosition:t===null||t===void 0?void 0:t.iconPosition})));this.tabRefs=Array.from(t);this.tabRefs.forEach(((t,i)=>{t.setAttribute("slot",`tab-${i}`)}))}setDefaultOrientation(){const t=["horizontal","vertical"];const i=this.orientation.toLowerCase();if(!t.includes(i)){this.internalOrientation="horizontal"}else this.internalOrientation=this.orientation}componentDidLoad(){this.updateBorderAndFocus();this.tabHeaderRefs.forEach(((t,i)=>{t.addEventListener("focus",this.onTabFocus(i))}))}onTabFocus(t){return()=>{this.internalFocusedTabIndex=t}}disconnectedCallback(){this.tabHeaderRefs.forEach(((t,i)=>{t.removeEventListener("focus",this.onTabFocus(i))}))}componentDidUpdate(){this.updateBorderAndFocus()}updateBorderAndFocus(){this.reRenderBorder();this.updateTabFocusability()}updateTabFocusability(){this.tabHeaderRefs.forEach(((t,i)=>{t.tabIndex=i===this.internalActiveTabIndex?0:-1}))}focusNextTab(){let t=this.internalFocusedTabIndex+1;while(t<this.tabHeaderRefs.length&&this.tabObjects[t].disabled){t++}if(t>=0&&t<this.tabHeaderRefs.length){this.internalFocusedTabIndex=t;this.tabHeaderRefs[t].focus()}}focusPreviousTab(){let t=this.internalFocusedTabIndex-1;while(t>=0&&this.tabObjects[t].disabled){t--}if(t>=0&&t<this.tabHeaderRefs.length){this.internalFocusedTabIndex=t;this.tabHeaderRefs[t].focus()}}getTabItemClass(t){const i=t===this.internalActiveTabIndex&&!this.tabObjects[t].disabled;const s=this.tabObjects[t].disabled;const e=this.tabObjects[t].iconPosition;return`tab-item ${this.fullWidth?"full-width":""} ${i?"active":""} ${s?"disabled":""} ${"icon__"+e}`}handleClick(t,i){this.ifxTabChange.emit({previousTab:this.internalActiveTabIndex,currentTab:i});if(!t.disabled)this.internalActiveTabIndex=i}handleKeyDown(t){if(t.key==="Tab"){if(t.shiftKey){if(this.internalFocusedTabIndex===0){return}else{t.preventDefault();this.focusPreviousTab()}}else{if(this.internalFocusedTabIndex===this.tabHeaderRefs.length-1){return}else{t.preventDefault();this.focusNextTab()}}}else if(t.key==="Enter"){if(this.internalFocusedTabIndex!==-1&&!this.tabObjects[this.internalFocusedTabIndex].disabled){const t=this.internalActiveTabIndex;this.internalActiveTabIndex=this.internalFocusedTabIndex;this.ifxTabChange.emit({previousTab:t,currentTab:this.internalFocusedTabIndex})}}}render(){var t;return s("div",{key:"b94b74545720034560b78d35909a4757c9239c28","aria-label":"navigation tabs",class:`tabs ${this.internalOrientation}`},s("ul",{key:"9689012ae62d5d22c7f9938bce7a5247d7fd1022",role:"tablist",class:"tabs-list"},(t=this.tabObjects)===null||t===void 0?void 0:t.map(((t,i)=>s("li",{class:this.getTabItemClass(i),ref:t=>this.tabHeaderRefs[i]=t,onMouseDown:t=>t.preventDefault(),onClick:()=>this.handleClick(t,i),"aria-selected":i===this.internalActiveTabIndex?"true":"false","aria-disabled":t.disabled?"true":"false",role:"tab"},(t===null||t===void 0?void 0:t.icon)?s("ifx-icon",{icon:t.icon}):"",t===null||t===void 0?void 0:t.header))),s("div",{key:"0365da7db703747de5996d5b48f1a59ba3ebc3e0",class:"active-border"})),s("div",{key:"53bdc3fbd557dec39cbdea5543ef7e56bf57a156",class:"tab-content"},Array.from(this.tabObjects).map(((t,i)=>s("div",{style:{display:i===this.internalActiveTabIndex?"block":"none"}},s("slot",{name:`tab-${i}`}))))))}get el(){return e(this)}static get watchers(){return{activeTabIndex:["activeTabIndexChanged"]}}};n.style=o;export{n as ifx_tabs};
2
- //# sourceMappingURL=p-89c7209f.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["tabsCss","IfxTabsStyle0","IfxTabs","updateBorderOnWindowResize","this","updateBorderAndFocus","setActiveAndFocusedTab","index","tabObjects","length","_a","disabled","internalActiveTabIndex","internalFocusedTabIndex","handleTabHeaderChange","e","tabIndex","target","getAttribute","replace","header","detail","activeTabIndexChanged","newValue","oldValue","componentWillLoad","internalOrientation","orientation","toLowerCase","activeTabIndex","ifxTabChange","emit","previousTab","currentTab","onSlotChange","updateTabStyles","tabHeaderRefs","forEach","tab","classList","toggle","setAttribute","reRenderBorder","borderElement","el","shadowRoot","querySelector","style","left","offsetLeft","width","offsetWidth","top","height","offsetTop","offsetHeight","tabs","querySelectorAll","Array","from","map","icon","iconPosition","tabRefs","setDefaultOrientation","validOrientations","lowercaseOrientation","includes","componentDidLoad","addEventListener","onTabFocus","disconnectedCallback","removeEventListener","componentDidUpdate","updateTabFocusability","focusNextTab","nextIndex","focus","focusPreviousTab","prevIndex","getTabItemClass","isActive","isDisabled","fullWidth","handleClick","handleKeyDown","ev","key","shiftKey","preventDefault","previouslyActiveTabIndex","render","h","class","role","ref","onMouseDown","event","onClick","_","display","name"],"sources":["src/components/tabs/tabs.scss?tag=ifx-tabs&encapsulation=shadow","src/components/tabs/tabs.tsx"],"sourcesContent":["//ifxTabs.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n}\n\n.tabs {\n display: flex;\n font-family: var(--ifx-font-family);\n width: 100%;\n}\n\n.tabs.horizontal {\n flex-direction: column;\n}\n\n.tabs.vertical {\n flex-direction: row;\n}\n\n.tabs-list {\n display: flex;\n list-style: none;\n padding: 0;\n margin: 0;\n position: relative;\n font-weight: tokens.$ifxFontWeightSemibold;\n}\n\n.tabs-list:focus-within .active-border {\n display: none;\n}\n\n.active-border {\n content: \"\";\n position: absolute;\n transition: left 0.3s ease-in-out, top 0.3s ease-in-out, height 0.3s ease-in-out;\n}\n\n.tabs.horizontal .active-border {\n bottom: 0;\n left: 0;\n height: 2px;\n background-color: tokens.$ifxColorOcean500;\n}\n\n.tabs.vertical .tabs-list {\n flex-direction: column;\n border-bottom: none;\n}\n\n.tabs.vertical .tab-content {\n padding-top: 0px;\n padding-left: 32px;\n}\n\n.tabs:not(.vertical) {\n & .tab-item {\n &.full-width { \n flex: 1;\n }\n }\n}\n\n.tab-item {\n // Reduced padding values\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n cursor: pointer;\n position: relative;\n\n &.icon__right {\n flex-direction: row-reverse;\n justify-content: flex-end;\n }\n \n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n \n &:active,\n &.active {\n color: tokens.$ifxColorOcean500;\n }\n\n &:focus,\n &.focus {\n outline: none;\n border-radius: 1px;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n \n // Assuming .active-border is a sibling of .tab-item\n +.active-border {\n display: none; // Hide the active border when the tab is in focus\n }\n }\n \n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n }\n}\n\n.tabs.vertical .tab-item {\n border-right: 2px solid transparent;\n min-width: 7em;\n}\n\n.tabs.vertical .active-border {\n left: 0;\n top: 0;\n width: 2px;\n background-color: tokens.$ifxColorOcean500;\n}\n\n\n.tab-content {\n padding-top: 24px;\n padding-left: 0px;\n flex-grow: 1;\n}\n\n.tabs.small .tab-item {\n font-size: tokens.$ifxFontSizeS;\n}","//ifxTabs.tsx\nimport { Component, h, Prop, State, Element, Listen, Event, EventEmitter, Watch } from '@stencil/core';\n \n\n\n@Component({\n tag: 'ifx-tabs',\n styleUrl: 'tabs.scss',\n shadow: true\n})\nexport class IfxTabs {\n @Element() el: HTMLElement;\n\n @Prop() orientation: string = \"horizontal\";\n @Prop({ mutable: true }) activeTabIndex: number = 0;\n @Prop() fullWidth: boolean = false;\n\n @State() internalOrientation: string;\n @State() internalActiveTabIndex: number = 0;\n @State() internalFocusedTabIndex: number = 0;\n @State() tabRefs: HTMLElement[] = [];\n @State() tabHeaderRefs: HTMLElement[] = [];\n @State() disabledTabs: string[] = [];\n @State() tabObjects: any[] = [];\n\n @Event() ifxTabChange: EventEmitter;\n\n @Listen('resize', {target: 'window'})\n updateBorderOnWindowResize() {\n this.updateBorderAndFocus();\n }\n\n setActiveAndFocusedTab(index: number) {\n if (index >= this.tabObjects.length) {\n index = this.tabObjects.length - 1;\n }\n if (index < 0) {\n index = 0;\n }\n if (!this.tabObjects[index]?.disabled) {\n this.internalActiveTabIndex = index;\n this.internalFocusedTabIndex = index;\n }\n }\n\n @Listen('tabHeaderChange')\n handleTabHeaderChange(e) { \n const tabIndex = e.target.getAttribute('slot').replace('tab-', '');\n this.tabObjects[tabIndex].header = e.detail;\n this.tabObjects = [...this.tabObjects]; \n }\n \n\n @Watch('activeTabIndex')\n activeTabIndexChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.setActiveAndFocusedTab(newValue);\n }\n }\n\n\n\n componentWillLoad() {\n this.internalOrientation = this.orientation.toLowerCase() === 'vertical' ? 'vertical' : 'horizontal';\n if (this.internalActiveTabIndex !== this.activeTabIndex) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: this.activeTabIndex });\n };\n this.onSlotChange();\n this.setActiveAndFocusedTab(this.activeTabIndex);\n this.updateTabStyles();\n }\n\n updateTabStyles() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.classList.toggle('active', index === this.internalActiveTabIndex);\n tab.setAttribute('aria-selected', index === this.internalActiveTabIndex ? 'true' : 'false')\n });\n }\n\n\n // needed for smooth border transition\n reRenderBorder() {\n const borderElement = this.el.shadowRoot.querySelector('.active-border') as HTMLElement;\n if (borderElement && this.tabHeaderRefs[this.internalActiveTabIndex]) {\n if (this.orientation === 'horizontal') {\n\n borderElement.style.left = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;\n borderElement.style.width = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;\n borderElement.style.top = '';\n borderElement.style.height = '';\n } else {\n borderElement.style.top = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;\n borderElement.style.height = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;\n borderElement.style.left = '';\n borderElement.style.width = '';\n }\n }\n }\n\n\n // when a slot is removed / added\n @Listen('slotchange')\n onSlotChange() {\n const tabs = this.el.querySelectorAll('ifx-tab');\n this.tabObjects = Array.from(tabs).map((tab) => {\n return {\n header: tab?.header,\n disabled: tab?.disabled === true,\n icon: tab?.icon,\n iconPosition: tab?.iconPosition\n }\n });\n\n this.tabRefs = Array.from(tabs);\n this.tabRefs.forEach((tab, index) => {\n tab.setAttribute('slot', `tab-${index}`);\n });\n }\n\n setDefaultOrientation() {\n const validOrientations = ['horizontal', 'vertical'];\n const lowercaseOrientation = this.orientation.toLowerCase();\n\n if (!validOrientations.includes(lowercaseOrientation)) {\n this.internalOrientation = 'horizontal';\n } else this.internalOrientation = this.orientation;\n }\n\n componentDidLoad() {\n this.updateBorderAndFocus();\n // Add keyboard event listeners for each tab header\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.addEventListener('focus', this.onTabFocus(index));\n });\n\n }\n\n onTabFocus(index) {\n return () => {\n this.internalFocusedTabIndex = index;\n };\n }\n\n disconnectedCallback() {\n // Remove keyboard event listeners when component is unmounted\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.removeEventListener('focus', this.onTabFocus(index));\n });\n }\n componentDidUpdate() {\n this.updateBorderAndFocus();\n }\n\n private updateBorderAndFocus() {\n this.reRenderBorder()\n this.updateTabFocusability();\n }\n\n private updateTabFocusability() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.tabIndex = index === this.internalActiveTabIndex ? 0 : -1;\n })\n }\n\n\n private focusNextTab() {\n let nextIndex = this.internalFocusedTabIndex + 1;\n while (nextIndex < this.tabHeaderRefs.length && this.tabObjects[nextIndex].disabled) {\n nextIndex++;\n }\n if (nextIndex >= 0 && nextIndex < this.tabHeaderRefs.length) {\n this.internalFocusedTabIndex = nextIndex;\n this.tabHeaderRefs[nextIndex].focus();\n }\n }\n\n private focusPreviousTab() {\n let prevIndex = this.internalFocusedTabIndex - 1;\n while ((prevIndex >= 0) && (this.tabObjects[prevIndex].disabled)) {\n prevIndex--;\n }\n if ((prevIndex >= 0) && (prevIndex < this.tabHeaderRefs.length)) {\n this.internalFocusedTabIndex = prevIndex;\n this.tabHeaderRefs[prevIndex].focus();\n }\n }\n\n\n private getTabItemClass(index: number) {\n const isActive = index === this.internalActiveTabIndex && !this.tabObjects[index].disabled;\n const isDisabled = this.tabObjects[index].disabled;\n const iconPosition = this.tabObjects[index].iconPosition\n return `tab-item ${this.fullWidth ? 'full-width' : \"\"} ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__'+iconPosition}`;\n }\n\n private handleClick(tab, index) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: index })\n if (!tab.disabled) this.internalActiveTabIndex = index;\n\n }\n\n\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Tab') {\n\n if (ev.shiftKey) {\n // Shift + Tab\n if (this.internalFocusedTabIndex === 0) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusPreviousTab();\n }\n } else {\n // Tab\n if (this.internalFocusedTabIndex === this.tabHeaderRefs.length - 1) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusNextTab();\n }\n }\n } else if (ev.key === 'Enter') {\n if (this.internalFocusedTabIndex !== -1 && !this.tabObjects[this.internalFocusedTabIndex].disabled) {\n const previouslyActiveTabIndex = this.internalActiveTabIndex;\n this.internalActiveTabIndex = this.internalFocusedTabIndex;\n this.ifxTabChange.emit({ previousTab: previouslyActiveTabIndex, currentTab: this.internalFocusedTabIndex })\n }\n }\n }\n\n\n render() {\n return (\n <div aria-label=\"navigation tabs\" class={`tabs ${this.internalOrientation}`}>\n <ul role=\"tablist\" class=\"tabs-list\">\n {this.tabObjects?.map((tab, index) => (\n <li\n class={this.getTabItemClass(index)}\n ref={(el) => (this.tabHeaderRefs[index] = el)}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => this.handleClick(tab, index)}\n aria-selected={index === this.internalActiveTabIndex ? 'true' : 'false'}\n aria-disabled={tab.disabled ? 'true' : 'false'}\n role=\"tab\"\n > \n {tab?.icon ? <ifx-icon icon = {tab.icon}></ifx-icon> : ''}\n {tab?.header}\n </li>\n ))}\n <div class=\"active-border\"></div>\n </ul>\n <div class=\"tab-content\">\n {Array.from(this.tabObjects).map((_, index) => (\n <div style={{ display: index === this.internalActiveTabIndex ? 'block' : 'none' }}>\n <slot name={`tab-${index}`} />\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n}"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["navbarCss","IfxNavbarStyle0","Navbar","addEventListenersToHandleCustomFocusState","element","this","el","shadowRoot","firstChild","console","error","tabIndex","aElements","querySelectorAll","i","length","slot","querySelector","assignedNodes","node","nodeName","navbarItem","clearFirstLayerMenu","event","detail","action","leftMenuItems","getMobileMenuTop","isSameNode","component","hideComponent","parent","children","toggleFirstLayerItem","showComponent","getWrappers","searchBarRightWrapper","searchBarLeftWrapper","rightSideSlot","leftSideSlot","rightAssignedNodes","leftAssignedNodes","navbarProfile","rightMenuItems","topRowWrapper","hideNavItems","searchBarIsOpen","l","classList","contains","r","hideOnMobile","showNavItems","undefined","handleSearchBarToggle","toggleClass","className","toggle","handleSidebar","sidebarIconWrapper","currentTarget","closest","sidebarIconOpen","sidebarIconClose","mainContainer","navbarWrapper","sidebarWrapper","handleBodyScroll","body","fixed","style","overflow","handleDropdownMenu","dropdownWrapper","iconWrapper","setItemMenuPosition","navbarItems","itemChildren","forEach","item","setMenuItemPosition","setMenuItemChildrenPosition","hasNestedItems","setItemSideSpecifications","subItem","getMediaQueryList","mediaQueryList","window","matchMedia","componentDidLoad","matches","moveNavItemsToSidebar","handleMobileMenuBottom","e","mobileMenuBottomWrapper","slotElement","target","nodes","add","remove","handleLogoHrefAndTarget","logoHref","trim","internalLogoHref","includes","logoHrefTarget","internalLogoHrefTarget","componentWillLoad","RemoveSpaceOnStorybookSnippet","dropdownMenu","hasLeftMenuItems","addEventListener","getSearchBarLeftWrapper","getMobileMenuBottom","handleBurgerIcon","burgerIconWrapper","crossIcon","searchBarLeft","onNavbarMobile","setAttribute","moveChildComponentsIntoSubLayerMenu","tagName","toUpperCase","showLabel","toggleChildren","leftIsInitial","searchBarRight","moveChildComponentsBackIntoNavbar","navbarProfileItem","showProfileItemLabel","getAttribute","parentElement","storybookWrapper","render","h","key","class","showLogoAndAppname","href","width","height","viewBox","fill","xmlns","d","id","applicationName","name","onClick","bind","icon","onSlotchange"],"sources":["src/components/navigation/navbar/navbar.scss?tag=ifx-navbar&encapsulation=shadow","src/components/navigation/navbar/navbar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n:host {\n width: 100%;\n display: block;\n}\n\n\n.navbar__wrapper {\n font-family: var(--ifx-font-family);\n height: 63px;\n position: sticky;\n //overflow: hidden;\n z-index: 1030;\n border-bottom: 1px solid #EEEDED;\n\n &.fixed {\n border-bottom: none;\n }\n\n // border-bottom: 1px solid #EEEDED; //when fixed is false\n}\n\n.navbar__main-container {\n position: absolute;\n top: 0;\n width: 100%;\n //overflow: hidden;\n transition: all 1s;\n z-index: 1020;\n\n &.fixed {\n position: fixed;\n\n & .navbar__container {\n border-bottom: 1px solid #EEEDED;\n }\n }\n\n &.show {\n height: 100vh;\n bottom: 0;\n background-color: tokens.$ifxColorOverlayDark;\n transition: 1s;\n z-index: 1;\n }\n}\n\n.navbar__sidebar {\n box-sizing: border-box;\n position: fixed;\n right: -100%;\n top: 64px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n // padding: 32px;\n width: 375px;\n height: calc(100vh - 64px);\n background-color: tokens.$ifxColorBaseWhite;\n transition: right 1s;\n z-index: 1030;\n\n &.show {\n right: 0;\n transition: right 1s;\n }\n\n & .navbar__sidebar-top-row { \n display: flex;\n padding: var(--borderRadius-none, 0px) var(--space-300, 24px) 30px var(--space-300, 24px);\n flex-direction: column;\n align-items: flex-start;\n gap: var(--space-200, 16px);\n flex: 1 0 0;\n align-self: stretch;\n\n overflow-y: auto;\n\n & .navbar__sidebar-top-row-wrapper { \n display: flex;\n padding-top: var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n gap: 16px;\n\n &.expand { \n align-items: initial;\n }\n\n & .navbar__sidebar-top-row-item { \n display: flex;\n padding: var(--space-200, 0px) var(--space-50, 4px) var(--space-200, 0px) 0px;\n align-items: center;\n gap: var(--space-100, 8px);\n align-self: stretch;\n justify-content: space-between;\n\n & .navbar__sidebar-top-row-item-icon-wrapper { \n & ifx-icon { \n vertical-align: middle;\n }\n }\n \n \n &:hover { \n cursor: pointer;\n }\n \n & .navbar__sidebar-top-row-item-label { \n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n \n }\n }\n\n }\n\n & .navbar__sidebar-bottom-row { \n //display: flex;\n display: none;\n padding: var(--space-150, 12px) var(--space-300, 24px) var(--space-150, 12px) var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n background: var(--color-engineering-100, #F7F7F7);\n border-top: 1px solid var(--color-engineering-200, #EEEDED);\n gap: 10px;\n\n max-height: 160px;\n overflow-y: auto;\n\n &.show { \n display: flex;\n }\n \n\n & .navbar__sidebar-bottom-row-item { \n display: flex;\n height: 40px;\n padding-right: var(--space-50, 4px);\n align-items: center;\n gap: var(--space-100, 8px);\n flex: 1 0 0;\n \n & .navbar__sidebar-bottom-row-item-label {\n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n\n & .navbar__sidebar-bottom-row-item-icon-wrapper { \n display: flex;\n align-items: center;\n }\n }\n\n }\n\n\n & .navbar__sidebar-content-products,\n & .navbar__sidebar-content-main {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 24px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n\n & .navbar__sidebar-content-products-header,\n & .navbar__sidebar-content-about-header {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n color: #BFBBBB;\n\n & span {\n color: tokens.$ifxColorBaseBlack;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n }\n }\n\n & .navbar__sidebar-content-products-menu,\n & .navbar__sidebar-content-main-menu {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 100%;\n\n & .navbar__sidebar-content-products-menu-item,\n & .navbar__sidebar-content-main-menu-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n text-decoration: none;\n font-style: normal;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n }\n }\n\n & .navbar__sidebar-content-main-menu-item {\n color: tokens.$ifxColorEngineering300;\n\n & a {\n font-style: normal;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 0;\n flex-grow: 1;\n }\n }\n }\n\n & .navbar__sidebar-content-main-menu {\n align-items: normal;\n }\n }\n}\n\n.navbar__container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 40px;\n gap: 16px;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family);\n\n &.expanded { \n justify-content: initial;\n }\n\n // &.fixed { \n // border-bottom: 1px solid #EEEDED; //when fixed is true\n // }\n\n & .navbar__container-search-field-wrapper { \n display: none;\n\n &.show { \n display: flex;\n }\n }\n\n & .navbar__container-left {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide {\n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-item-search-bar { \n flex: 1;\n }\n }\n }\n \n }\n\n & .navbar__container-left-logo {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n & h6 {\n position: relative;\n margin: 0;\n padding: 0;\n font-style: normal;\n font-weight: 600;\n font-size: 16px;\n //line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n\n & .navbar__container-left-logo-default {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 12px 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & svg {\n width: 91px;\n height: 40px;\n flex: none;\n order: 0;\n flex-grow: 0;\n vertical-align: bottom;\n }\n }\n\n & .navbar__container-left-logo-divider {\n width: 1px;\n height: 32px;\n background: tokens.$ifxColorEngineering200;\n flex: none;\n order: 2;\n flex-grow: 0;\n }\n }\n\n & .navbar__container-left-content {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-group {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-item-search-bar {\n display: flex; //none\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n flex: none;\n order: 5;\n flex-grow: 0;\n //width: 256px;\n //height: 40px;\n }\n\n & .navbar__container-left-content-navigation-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n display: flex;\n align-items: center;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n }\n }\n }\n }\n\n & .navbar__container-right {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n padding: 0;\n gap: 8px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar { \n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper { \n flex: 1;\n }\n }\n }\n }\n \n }\n\n & .navbar__burger-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 4px 0px 4px 16px;\n border-left: 1px solid tokens.$ifxColorEngineering300;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 41px;\n height: 40px;\n\n &.hide { \n display: none;\n }\n\n & .navbar__burger-icon {\n display: flex;\n align-items: center;\n\n &:hover { \n cursor: pointer;\n }\n\n &.close {\n display: none;\n }\n }\n\n & .navbar__cross-icon {\n display: none;\n align-items: center;\n\n &.show {\n display: flex;\n\n &:hover { \n cursor: pointer;\n }\n }\n }\n }\n\n & .navbar__container-right-content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-group {\n position: relative;\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item,\n & .navbar__container-right-content-navigation-item-profile,\n & .navbar__container-right-content-navigation-item-search-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n //width: 24px;\n //height: 24px;\n //max-width: 200px;\n\n &.isOpen { \n position: absolute;\n top: 10px;\n }\n }\n\n & .navbar__container-right-content-navigation-item-navigation-profile {\n position: relative;\n width: 24px;\n height: 24px;\n background: tokens.$ifxColorOcean500;\n border-radius: 100px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n position: absolute;\n width: 22px;\n height: 20px;\n left: calc(50% - 22px/2);\n top: calc(50% - 20px/2);\n font-style: normal;\n font-weight: 600;\n font-size: 14px;\n line-height: 20px;\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n & .navbar__container-right-content-navigation-item-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n & a {\n font-style: normal;\n font-weight: 400;\n font-size: 14px;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n display: flex;\n align-items: center;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n }\n }\n }\n }\n}\n\n//burger icon exist, and left container is gone\n@media screen and (max-width: 800px) {\n .navbar__container {\n padding: 0px 16px;\n height: 64px;\n gap: initial;\n\n &.expanded { \n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n display: none;\n }\n\n & .navbar__container-left-logo {\n & .navbar__container-left-logo-divider {\n display: none;\n }\n }\n }\n\n & .navbar__container-right {\n flex: 1;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n\n // &.show {\n // width: 100%;\n // }\n\n }\n}\n\n@media screen and (max-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 100%; // 100% of viewport width\n }\n }\n}\n\n@media screen and (min-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 50%; // 100% of viewport width\n }\n }\n}\n\n//burger icon disappears\n@media screen and (min-width: 800px) {\n .navbar__wrapper {\n height: 63px;\n }\n\n .navbar__container {\n padding: 0px 16px;\n height: 63px;\n gap: initial;\n\n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n &.show { \n right: -100%;\n }\n }\n\n}\n\n//left container appears\n@media screen and (min-width: 1024px) {\n .navbar__wrapper {\n height: 72px;\n }\n\n .navbar__container {\n padding: 0px 24px;\n height: 72px;\n\n & .navbar__container-left {\n gap: 12px;\n display: flex;\n\n & .navbar__container-left-content {\n display: flex;\n }\n\n & .navbar__container-left-logo-default {\n & svg {\n width: 72.8px;\n height: 32px;\n }\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n}\n\n@media screen and (min-width: 1200px) {\n .navbar__wrapper {\n height: 80px\n }\n\n .navbar__container {\n padding: 0px 32px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: inherit;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}\n\n@media screen and (min-width: 1440px) {\n .navbar__wrapper {\n height: 80px;\n }\n\n .navbar__container {\n padding: 0px 40px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: center;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}","import { Component, h, Element, State, Prop, Listen, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-navbar',\n styleUrl: 'navbar.scss',\n shadow: true,\n})\n\nexport class Navbar {\n @Element() el;\n @State() main: boolean = true\n @State() products: boolean = false\n @State() applications: boolean = false\n @State() design: boolean = false\n @State() support: boolean = false\n @State() about: boolean = false\n @Prop() applicationName: string = \"\"\n @State() hasLeftMenuItems: boolean = true;\n @Prop() fixed: boolean = true;\n @Prop() showLogoAndAppname: boolean = true;\n @State() searchBarIsOpen: string;\n @Prop() logoHref: string = \"\";\n @State() internalLogoHref: string = \"\"\n @Prop() logoHrefTarget: string = '_self';\n @State() internalLogoHrefTarget: string = '_self';\n @Event() ifxNavbarMobileMenuIsOpen: EventEmitter;\n\n private addEventListenersToHandleCustomFocusState() {\n const element = this.el.shadowRoot.firstChild;\n\n if (!element) {\n console.error('element not found');\n return;\n }\n element.tabIndex = -1;\n\n // Select all a elements in the navbar and set their tabIndex to -1 to make them non-focusable\n const aElements = element.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n\n const slot = element.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes();\n for (let i = 0; i < assignedNodes.length; i++) {\n const node = assignedNodes[i] as HTMLElement;\n if (node.nodeName === 'IFX-NAVBAR-ITEM') {\n const navbarItem = node as HTMLIfxNavbarItemElement;\n\n // Get all navigation items\n const aElements = navbarItem?.shadowRoot.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n }\n }\n }\n }\n\n @Listen('ifxNavItem') \n clearFirstLayerMenu(event: CustomEvent) { \n if(event.detail.action === 'hideFirstLayer') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'hideSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('remove', 'add')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'returnToSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('add', 'remove')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'show') { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'return') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n }\n\n getWrappers() {\n const searchBarRightWrapper = this.el.shadowRoot.querySelector('.navbar__container-right-content-navigation-item-search-bar-icon-wrapper')\n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n const rightSideSlot = searchBarRightWrapper.querySelector('slot');\n const leftSideSlot = searchBarLeftWrapper.querySelector('slot');\n const rightAssignedNodes = rightSideSlot.assignedNodes();\n const leftAssignedNodes = leftSideSlot.assignedNodes();\n const navbarProfile = this.el.querySelector('ifx-navbar-profile');\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]');\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]');\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n \n return {rightSideSlot, leftSideSlot, rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper};\n }\n\n hideNavItems() {\n const { rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n \n if(rightAssignedNodes.length !== 0) { \n this.searchBarIsOpen = 'right'\n } else if(leftAssignedNodes.length !== 0) {\n this.searchBarIsOpen = 'left'\n }\n\n if(navbarProfile) { \n navbarProfile.hideComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].hideComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].hideComponent()\n }\n } else { \n rightMenuItems[r].hideComponent()\n }\n }\n }\n\n showNavItems() {\n const { navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n this.searchBarIsOpen = undefined;\n \n if(navbarProfile) {\n navbarProfile.showComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].showComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].showComponent()\n }\n } else { \n rightMenuItems[r].showComponent()\n }\n }\n }\n \n \n @Listen('ifxSearchBarIsOpen')\n handleSearchBarToggle(event: CustomEvent) {\n \n if(event.detail) { \n this.hideNavItems();\n } else if(!event.detail) {\n this.showNavItems();\n }\n }\n\n toggleClass(el, className) {\n el.classList.toggle(className)\n }\n\n handleSidebar(el) {\n const sidebarIconWrapper = el.currentTarget.closest('.navbar__burger-icon-wrapper');\n const sidebarIconOpen = sidebarIconWrapper.querySelector('.navbar__burger-icon')\n const sidebarIconClose = sidebarIconWrapper.querySelector('.navbar__cross-icon')\n const mainContainer = el.currentTarget.closest('.navbar__main-container');\n const navbarWrapper = el.currentTarget.closest('.navbar__wrapper')\n const sidebarWrapper = navbarWrapper.querySelector('.navbar__sidebar');\n this.toggleClass(navbarWrapper, 'show')\n this.toggleClass(mainContainer, 'show')\n this.toggleClass(sidebarWrapper, 'show')\n this.toggleClass(sidebarIconOpen, 'close')\n this.toggleClass(sidebarIconClose, 'show')\n\n if(sidebarIconClose.classList.contains('show')) { \n this.handleBodyScroll('hide')\n } else { \n this.handleBodyScroll('show')\n }\n }\n\n handleBodyScroll(action) { \n const body = this.el.closest('body')\n if(!this.fixed && action === 'hide') { \n body.style.overflow = 'hidden'\n } else if(action === 'show') { \n body.style.overflow = 'visible'\n }\n }\n\n handleDropdownMenu(el) {\n const dropdownWrapper = el.currentTarget.querySelector('.navbar__dropdown-wrapper')\n dropdownWrapper.classList.toggle('open')\n const iconWrapper = el.currentTarget.querySelector('a')\n iconWrapper.classList.toggle('open')\n }\n\n async setItemMenuPosition() { \n const navbarItems = this.el.querySelectorAll('ifx-navbar-item')\n const navbarProfile = this.el.querySelector('ifx-navbar-profile')\n\n if(navbarProfile) {\n const itemChildren = navbarProfile.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n \n if(navbarItems.length !== 0) { \n for(let i = 0; i < navbarItems.length; i++) { \n const item = navbarItems[i];\n const itemChildren = item.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n const hasNestedItems = await item.setItemSideSpecifications()\n if(hasNestedItems) { \n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n }\n }\n }\n\n setMenuItemChildrenPosition(item) {\n const itemChildren = item.querySelectorAll('ifx-navbar-item');\n if (itemChildren.length !== 0) {\n itemChildren.forEach(subItem => { \n subItem.setMenuItemPosition()\n this.setMenuItemChildrenPosition(subItem)\n })\n }\n }\n\n getMediaQueryList() { \n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n return mediaQueryList;\n }\n\n componentDidLoad() {\n this.setItemMenuPosition()\n this.addEventListenersToHandleCustomFocusState();\n\n const mediaQueryList = this.getMediaQueryList()\n\n if (mediaQueryList.matches) {\n this.moveNavItemsToSidebar();\n }\n\n }\n\n handleMobileMenuBottom(e) { \n const mobileMenuBottomWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-bottom-row')\n const slotElement = e.target;\n const nodes = slotElement.assignedNodes();\n if(nodes.length > 0) { \n mobileMenuBottomWrapper.classList.add('show')\n } else { \n mobileMenuBottomWrapper.classList.remove('show')\n }\n }\n\n handleLogoHrefAndTarget(){\n if(this.logoHref.trim() === \"\") {\n this.internalLogoHref = undefined;\n }else{\n this.internalLogoHref = this.logoHref;\n }\n\n if(['_self', '_blank', '_parent'].includes(this.logoHrefTarget.trim())){\n this.internalLogoHrefTarget = this.logoHrefTarget;\n }else{\n this.internalLogoHrefTarget = '_self';\n }\n }\n\n \n componentWillLoad() {\n this.RemoveSpaceOnStorybookSnippet()\n const dropdownMenu = this.el.querySelector('ifx-navbar-menu')\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n if (!leftMenuItems.length && !dropdownMenu) {\n this.hasLeftMenuItems = false;\n }\n this.handleLogoHrefAndTarget();\n\n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n mediaQueryList.addEventListener('change', (e) => this.moveNavItemsToSidebar(e));\n }\n\n \n\n getSearchBarLeftWrapper() { \n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n return searchBarLeftWrapper;\n }\n\n getMobileMenuTop() { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-top\"]');\n return leftMenuItems;\n }\n\n getMobileMenuBottom() { \n const rightMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-bottom\"]');\n return rightMenuItems;\n }\n\n handleBurgerIcon() { \n const leftMenuItems = this.getMobileMenuTop()\n const rightMenuItems = this.getMobileMenuBottom()\n if(!leftMenuItems.length && !rightMenuItems.length) { \n const burgerIconWrapper = this.el.shadowRoot.querySelector('.navbar__burger-icon-wrapper')\n this.toggleClass(burgerIconWrapper, 'hide')\n }\n }\n \n moveNavItemsToSidebar(e?: MediaQueryListEvent) {\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n const mediaQueryList = this.getMediaQueryList();\n const matches = e ? e.matches : mediaQueryList.matches;\n \n if (matches) {\n /* The viewport is 800px wide or less */\n topRowWrapper.classList.add('expand')\n \n //hide body scroll if sidebar was opened\n const crossIcon = this.el.shadowRoot.querySelector('.navbar__cross-icon')\n if(crossIcon.classList.contains('show')) { \n this.handleBodyScroll('hide')\n }\n \n //move search bar to right-side\n const searchBarLeft = this.el.querySelector('[slot=\"search-bar-left\"]')\n if(searchBarLeft) { \n if(this.searchBarIsOpen) { \n searchBarLeft.onNavbarMobile()\n }\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n searchBarLeftWrapper.classList.add('initial')\n searchBarLeft.setAttribute('slot', 'search-bar-right')\n }\n \n //left-side\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'mobile-menu-top')\n leftMenuItems[i].moveChildComponentsIntoSubLayerMenu()\n if(this.searchBarIsOpen) { \n leftMenuItems[i].showComponent()\n }\n }\n \n //right-side\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]')\n for(let i = 0; i < rightMenuItems.length; i++) { \n if(rightMenuItems[i].tagName.toUpperCase() === 'IFX-NAVBAR-PROFILE') { \n rightMenuItems[i].showLabel = false;\n } else { \n if(rightMenuItems[i].hideOnMobile) { \n rightMenuItems[i].setAttribute('slot', 'mobile-menu-bottom')\n \n rightMenuItems[i].toggleChildren('add')\n \n rightMenuItems[i].showLabel = true;\n if(this.searchBarIsOpen) { \n rightMenuItems[i].showComponent()\n }\n }\n }\n }\n \n this.handleBurgerIcon()\n\n } else {\n /* The viewport is more than 800px wide */\n topRowWrapper.classList.remove('expand')\n\n //show body scroll \n this.handleBodyScroll('show')\n\n //return search bar to its original position\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n const leftIsInitial = searchBarLeftWrapper.classList.contains('initial')\n const searchBarRight = this.el.querySelector('[slot=\"search-bar-right\"]')\n if(leftIsInitial) { \n if(this.searchBarIsOpen) { \n searchBarRight.onNavbarMobile()\n }\n if(searchBarRight) { \n searchBarRight.setAttribute('slot', 'search-bar-left')\n }\n }\n\n //left-side\n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'left-item')\n leftMenuItems[i].moveChildComponentsBackIntoNavbar()\n }\n\n //right-side\n const rightMenuItems = this.getMobileMenuBottom()\n const navbarProfileItem = this.el.querySelector('ifx-navbar-profile')\n if(navbarProfileItem) { \n const showProfileItemLabel = navbarProfileItem.getAttribute('show-label');\n navbarProfileItem.setAttribute('show-label', showProfileItemLabel)\n }\n\n for(let i = 0; i < rightMenuItems.length; i++) { \n rightMenuItems[i].setAttribute('slot', 'right-item')\n\n rightMenuItems[i].toggleChildren('remove')\n \n const showLabel = rightMenuItems[i].getAttribute('show-label');\n rightMenuItems[i].setAttribute('show-label', showLabel)\n if(this.searchBarIsOpen) { \n rightMenuItems[i].hideComponent()\n }\n }\n }\n }\n\n RemoveSpaceOnStorybookSnippet() { \n let parent = this.el.parentElement;\n if(parent) { \n let storybookWrapper = parent.closest('.css-xzp052');\n if(storybookWrapper) { \n storybookWrapper.style.overflow = 'visible'\n }\n }\n }\n\n\n \n render() {\n return (\n <div aria-label='a navigation navbar' class={`navbar__wrapper ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__main-container ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__container ${this.searchBarIsOpen ? \"expanded\" : \"\"}`}>\n <div class={`navbar__container-left ${this.searchBarIsOpen === 'left' ? \"expand\" : this.searchBarIsOpen === 'right' ? 'hide' : \"\"}`}>\n {this.showLogoAndAppname &&\n <div class={`navbar__container-left-logo ${this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-left-logo-default\">\n <a href={this.internalLogoHref} target = {this.internalLogoHrefTarget}>\n <svg width=\"91\" height=\"40\" viewBox=\"0 0 91 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_2396_2480)\">\n <path d=\"M67.691 26.7766C71.0884 26.7766 72.1461 23.1841 72.1461 19.8802C72.1461 15.4536 70.2871 13.1441 67.691 13.1441C64.4219 13.1441 63.2681 16.7367 63.3001 19.9443C63.3322 23.1199 64.2296 26.7766 67.691 26.7766ZM66.0244 19.8481C66.0244 18.533 66.0244 15.4536 67.691 15.4536C69.4859 15.4536 69.4218 18.5009 69.4218 19.9123C69.4218 21.2595 69.4218 24.5313 67.7551 24.5313C65.9603 24.4992 66.0244 21.2274 66.0244 19.8481ZM57.8195 26.7766C59.1976 26.7766 60.3835 26.2313 61.5053 25.0445L60.5117 23.1841C59.7425 24.018 58.9733 24.4671 58.0438 24.4671C57.2746 24.4671 56.6336 24.018 56.249 23.2482C55.9285 22.5746 55.8644 21.8048 55.8644 20.9708V20.7142H61.6335V20.1368C61.6335 17.282 61.2809 15.7102 60.3835 14.5234C59.7104 13.6253 58.7169 13.1441 57.499 13.1441C56.2169 13.1441 55.1593 13.7215 54.39 14.8442C53.5567 16.0631 53.2042 17.699 53.2042 19.9443C53.1721 24.2426 54.8708 26.7766 57.8195 26.7766ZM57.531 15.2612C58.172 15.2612 58.5566 15.614 58.813 16.1914C59.0053 16.7046 59.1015 17.5707 59.1015 18.5971H55.8644C55.8964 16.3197 56.3772 15.2612 57.531 15.2612ZM74.2614 26.4559H76.7614V16.8329C77.3703 16.0952 78.0754 15.6782 78.5882 15.6782C78.9087 15.6782 79.2292 15.7423 79.4215 15.9989C79.6138 16.2876 79.71 16.7046 79.71 17.699V26.4559H82.21V16.5442C82.21 15.6782 82.1138 14.8121 81.601 14.1706C81.1523 13.5932 80.4472 13.2404 79.5497 13.2404C78.3959 13.2404 77.2101 13.914 76.569 14.6838C76.537 14.0102 76.3126 13.3687 76.2485 13.1441L73.9089 13.7536C74.0371 14.4593 74.2294 15.3253 74.2294 16.8971V26.4559H74.2614ZM45.2236 14.6838C45.1915 14.0102 44.9672 13.3687 44.9031 13.1441L42.5634 13.7536C42.6916 14.4593 42.8839 15.3253 42.8839 16.8971V26.4238H45.3838V16.8008C45.9928 16.0631 46.6979 15.6461 47.2107 15.6461C47.5312 15.6461 47.8517 15.7102 48.044 15.9669C48.2363 16.2555 48.3325 16.6725 48.3325 17.6669V26.4238H50.8324V16.5442C50.8324 15.6782 50.7363 14.8121 50.2235 14.1706C49.7748 13.5932 49.0696 13.2404 48.1722 13.2404C47.0505 13.2404 45.8646 13.914 45.2236 14.6838ZM14.6473 9.07042C16.1216 9.07042 17.3075 7.88359 17.3075 6.40807C17.3075 4.93256 16.1216 3.74573 14.6473 3.74573C13.173 3.74573 11.9871 4.93256 11.9871 6.40807C11.9871 7.88359 13.173 9.07042 14.6473 9.07042ZM26.9227 26.4559V16.5442C26.9227 15.6782 26.8265 14.8121 26.3137 14.1706C25.865 13.5932 25.1599 13.2404 24.2625 13.2404C23.1087 13.2404 21.9228 13.914 21.2818 14.6838C21.2497 14.0102 21.0254 13.3687 20.9613 13.1441L18.6536 13.7857C18.7818 14.4913 18.9741 15.3574 18.9741 16.9291V26.4559H21.4741V16.8329C22.0831 16.0952 22.7882 15.6782 23.301 15.6782C23.6215 15.6782 23.942 15.7423 24.1343 15.9989C24.3266 16.2876 24.4227 16.7046 24.4227 17.699V26.4559H26.9227ZM38.4289 8.36474C37.4994 8.36474 36.7622 9.10249 36.7622 10.0327C36.7622 10.9629 37.4994 11.7007 38.3968 11.7007C39.3263 11.7007 40.0634 10.9629 40.0634 10.0327C40.0634 9.10249 39.3263 8.36474 38.4289 8.36474ZM13.4614 26.4559H15.9614V10.8346L13.4614 11.1554V26.4559ZM33.8777 9.90441C34.3264 9.90441 34.7751 10.0648 35.0635 10.2893L35.7687 8.33266C35.0956 7.85151 34.3584 7.62698 33.429 7.62698C32.788 7.62698 32.1149 7.78736 31.5059 8.26851C30.897 8.78173 30.256 9.80818 30.256 11.7328C30.256 12.5667 30.288 13.4328 30.288 13.4328H29.4226V15.6461H30.288V26.4238H32.8521V15.6782H34.743L35.2238 13.4649H32.8841V11.4762C32.8841 10.5139 33.2687 9.90441 33.8777 9.90441ZM37.1468 26.4559H39.6788V13.2404L37.1468 13.5611V26.4559Z\" fill=\"#005DA9\" />\n <path d=\"M77.0816 33.5126C68.6203 36.0146 58.3321 37.1052 48.2682 37.1052C22.7239 37.1052 6.24986 29.5993 5.09604 19.6877C4.67938 15.9668 7.59599 12.3422 12.4677 9.26285C11.6023 8.62132 11.0575 7.59488 11.0254 6.44012C3.97427 10.161 0 15.0366 0 19.9764C0 30.9145 19.5188 40.1525 48.5246 39.7676C58.6205 39.6393 67.0498 38.1958 74.6778 35.6939C83.7482 32.7428 89.4532 28.5087 90.8313 26.6483C89.1968 28.1238 85.3186 31.0748 77.0816 33.5126ZM23.2687 4.38723C24.9674 3.80985 27.3712 3.0721 27.3712 3.0721C34.1339 1.21166 41.6017 0.121063 48.5566 0.185215C40.544 -0.295931 33.2365 0.185215 26.8584 1.33997C26.8584 1.33997 24.743 1.69281 22.4675 2.27018C22.4675 2.27018 21.3777 2.55887 20.7047 2.75133C20.0316 2.94379 19.1021 3.2004 19.1021 3.2004C18.4611 3.39286 17.8201 3.6174 17.1791 3.84193C17.8201 4.48346 18.2047 5.31745 18.2368 6.27974C19.3586 5.76652 21.5059 4.99668 23.2687 4.38723Z\" fill=\"#E30034\" />\n </g>\n <defs>\n <clipPath id=\"clip0_2396_2480\">\n <rect width=\"91\" height=\"40\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </a>\n </div>\n {this.applicationName && <h6>{this.applicationName}</h6>}\n {this.applicationName && this.hasLeftMenuItems &&\n <div class=\"navbar__container-left-logo-divider\"></div>}\n </div>}\n <div class=\"navbar__container-left-content\">\n <div class=\"navbar__container-left-content-navigation-group\">\n <slot name='left-item' />\n <div class=\"navbar__container-left-content-navigation-item-search-bar\">\n <slot name='search-bar-left' />\n </div>\n </div>\n </div>\n </div>\n <div class={`navbar__container-right ${this.searchBarIsOpen === 'right' ? \"expand\" : this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-right-content\">\n <div class=\"navbar__container-right-content-navigation-group\">\n <div class=\"navbar__container-right-content-navigation-item-search-bar\">\n <div class={`navbar__container-right-content-navigation-item-search-bar-icon-wrapper`}>\n <slot name='search-bar-right' />\n </div>\n </div>\n <slot name='right-item' />\n </div>\n </div>\n\n {/* MOBILE MENU BUTTON */}\n <div class={`navbar__burger-icon-wrapper`} onClick={this.handleSidebar.bind(this)}>\n <div class=\"navbar__burger-icon\">\n <ifx-icon icon=\"menu-right-24\"></ifx-icon>\n </div>\n <div class=\"navbar__cross-icon\">\n <ifx-icon icon=\"cross-24\"></ifx-icon>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* SIDEBAR */}\n <div class=\"navbar__sidebar\">\n {/* left side ifx-navbar-item */}\n <div class=\"navbar__sidebar-top-row\">\n <div class=\"navbar__sidebar-top-row-wrapper\">\n <slot name='mobile-menu-top' />\n </div>\n </div>\n\n {/* right side ifx-navbar-item */}\n <div class=\"navbar__sidebar-bottom-row\">\n <slot name='mobile-menu-bottom' onSlotchange={(e) => this.handleMobileMenuBottom(e)} />\n </div>\n \n </div>\n </div>\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as a,c as e,h as i,g as s}from"./p-6b122987.js";const r=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{width:100%;display:flex}.search-bar{box-sizing:border-box;height:40px;background-color:#FFFFFF;display:flex;flex-direction:row;align-items:center;width:100%;font-family:var(--ifx-font-family)}.search-bar.closed{display:flex;width:auto;justify-content:flex-start}.search-bar .search-bar-wrapper{display:flex;align-items:center;gap:16px;width:100%}.search-bar .search-bar-wrapper a{text-decoration:none;font-size:1rem;font-style:normal;font-weight:600;line-height:1.5rem;color:#0A8276;cursor:pointer}.search-bar .search-bar-wrapper ifx-search-field{width:100%}.search-bar .search-bar__icon-wrapper{display:none;flex-direction:row;align-items:center}.search-bar .search-bar__icon-wrapper ifx-icon:hover{cursor:pointer}.search-bar.closed .search-bar__icon-wrapper{display:flex}.search-bar.closed .search-bar-wrapper{display:none}';const t=r;const h=class{constructor(i){a(this,i);this.ifxInput=e(this,"ifxInput",7);this.ifxSearchBarIsOpen=e(this,"ifxSearchBarIsOpen",7);this.handleCloseButton=()=>{this.internalState=!this.internalState;this.ifxSearchBarIsOpen.emit(this.internalState)};this.handleFocus=()=>{this.internalState=true};this.isOpen=true;this.disabled=false;this.internalState=undefined;this.value=undefined;this.maxlength=undefined}async onNavbarMobile(){this.ifxSearchBarIsOpen.emit(false);this.internalState=false}handlePropChange(){this.internalState=this.isOpen}setInitialState(){this.internalState=this.isOpen}componentWillLoad(){this.setInitialState();this.ifxSearchBarIsOpen.emit(this.internalState)}handleInput(a){this.value=a.detail}render(){return i("div",{key:"80312faf68e6b0af2260c977d53f23b42067813f","aria-label":"a search bar","aria-disabled":this.disabled,class:`search-bar ${this.internalState?"open":"closed"}`},this.internalState?i("div",{class:"search-bar-wrapper"},i("ifx-search-field",{disabled:this.disabled,value:this.value,maxlength:this.maxlength,onIfxInput:this.handleInput.bind(this)},i("ifx-icon",{icon:"search-16",slot:"search-icon"})),i("a",{tabindex:"-1",href:"javascript:void(0)",onClick:this.handleCloseButton},"Close")):i("div",{class:"search-bar__icon-wrapper",onClick:this.handleCloseButton},i("ifx-icon",{icon:"search-16"})))}get el(){return s(this)}static get watchers(){return{isOpen:["handlePropChange"]}}};h.style=t;export{h as ifx_search_bar};
2
- //# sourceMappingURL=p-9481adc8.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchBarCss","IfxSearchBarStyle0","SearchBar","this","handleCloseButton","internalState","ifxSearchBarIsOpen","emit","handleFocus","onNavbarMobile","handlePropChange","isOpen","setInitialState","componentWillLoad","handleInput","event","value","detail","render","h","key","disabled","class","maxlength","onIfxInput","bind","icon","slot","tabindex","href","onClick"],"sources":["src/components/search-bar/search-bar.scss?tag=ifx-search-bar&encapsulation=shadow","src/components/search-bar/search-bar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n width: 100%; //revert\n display: flex;\n}\n\n.search-bar {\n box-sizing: border-box;\n height: tokens.$ifxSize500;\n background-color: tokens.$ifxColorBaseWhite;\n display: flex;\n flex-direction: row;\n align-items: center;\n width: 100%;\n font-family: var(--ifx-font-family);\n\n &.closed {\n display: flex;\n width: auto;\n justify-content: flex-start;\n }\n\n & .search-bar-wrapper {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace200;\n width: 100%;\n\n & a {\n text-decoration: none;\n font-size: tokens.$ifxFontSizeM;\n font-style: normal;\n font-weight: tokens.$ifxFontWeightSemibold;\n line-height: tokens.$ifxLineHeightM;\n color: tokens.$ifxColorOcean500;\n cursor: pointer;\n }\n\n & ifx-search-field {\n width: 100%;\n }\n }\n\n .search-bar__icon-wrapper {\n display: none;\n flex-direction: row;\n align-items: center;\n\n & ifx-icon:hover {\n cursor: pointer;\n }\n }\n\n &.closed {\n .search-bar__icon-wrapper {\n display: flex;\n }\n\n .search-bar-wrapper {\n display: none;\n }\n }\n}","import { Component, h, Prop, Event, EventEmitter, State, Watch, Element, Method } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-search-bar',\n styleUrl: 'search-bar.scss',\n shadow: true,\n})\nexport class SearchBar {\n @Prop() isOpen: boolean = true;\n @Prop() disabled: boolean = false;\n @State() internalState: boolean;\n @Prop({ mutable: true }) value: string;\n @Prop() maxlength?: number;\n @Event() ifxInput: EventEmitter;\n @Event() ifxSearchBarIsOpen: EventEmitter;\n @Element() el;\n\n @Method()\n async onNavbarMobile() {\n this.ifxSearchBarIsOpen.emit(false)\n this.internalState = false;\n }\n\n @Watch('isOpen')\n handlePropChange() {\n this.internalState = this.isOpen;\n }\n\n handleCloseButton = () => {\n this.internalState = !this.internalState;\n this.ifxSearchBarIsOpen.emit(this.internalState)\n }\n\n setInitialState() {\n this.internalState = this.isOpen;\n }\n\n \n\n componentWillLoad() {\n this.setInitialState();\n this.ifxSearchBarIsOpen.emit(this.internalState)\n }\n\n\n handleInput(event: CustomEvent) {\n this.value = event.detail;\n }\n\n handleFocus = () => {\n this.internalState = true;\n }\n\n\n render() {\n return (\n <div aria-label='a search bar' aria-disabled={this.disabled} class={`search-bar ${this.internalState ? 'open' : 'closed'}`}>\n {this.internalState ? (\n <div class=\"search-bar-wrapper\">\n <ifx-search-field disabled={this.disabled} value={this.value} maxlength={this.maxlength} onIfxInput={this.handleInput.bind(this)}>\n <ifx-icon icon=\"search-16\" slot=\"search-icon\"></ifx-icon>\n </ifx-search-field>\n\n <a tabindex=\"-1\" href='javascript:void(0)' onClick={this.handleCloseButton}>Close</a>\n </div>\n ) : (\n <div class=\"search-bar__icon-wrapper\" onClick={this.handleCloseButton}>\n <ifx-icon icon=\"search-16\"></ifx-icon>\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAe,y5BACrB,MAAAC,EAAeD,E,MCOFE,EAAS,M,mHAqBpBC,KAAAC,kBAAoB,KAClBD,KAAKE,eAAiBF,KAAKE,cAC3BF,KAAKG,mBAAmBC,KAAKJ,KAAKE,cAAc,EAmBlDF,KAAAK,YAAc,KACZL,KAAKE,cAAgB,IAAI,E,YA1CD,K,cACE,M,2EAS5B,oBAAMI,GACJN,KAAKG,mBAAmBC,KAAK,OAC7BJ,KAAKE,cAAgB,K,CAIvB,gBAAAK,GACEP,KAAKE,cAAgBF,KAAKQ,M,CAQ5B,eAAAC,GACET,KAAKE,cAAgBF,KAAKQ,M,CAK5B,iBAAAE,GACEV,KAAKS,kBACLT,KAAKG,mBAAmBC,KAAKJ,KAAKE,c,CAIpC,WAAAS,CAAYC,GACVZ,KAAKa,MAAQD,EAAME,M,CAQrB,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,wDAAgB,eAAc,gBAAgBjB,KAAKkB,SAAUC,MAAO,cAAcnB,KAAKE,cAAgB,OAAS,YAC7GF,KAAKE,cACJc,EAAA,OAAKG,MAAM,sBACTH,EAAA,oBAAkBE,SAAUlB,KAAKkB,SAAUL,MAAOb,KAAKa,MAAOO,UAAWpB,KAAKoB,UAAWC,WAAYrB,KAAKW,YAAYW,KAAKtB,OACzHgB,EAAA,YAAUO,KAAK,YAAYC,KAAK,iBAGlCR,EAAA,KAAGS,SAAS,KAAKC,KAAK,qBAAqBC,QAAS3B,KAAKC,mBAAiB,UAG5Ee,EAAA,OAAKG,MAAM,2BAA2BQ,QAAS3B,KAAKC,mBAClDe,EAAA,YAAUO,KAAK,e","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,g as s}from"./p-6b122987.js";const n=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.ifx-multiselect-container{position:relative;box-sizing:border-box;font-family:var(--ifx-font-family)}.ifx-multiselect-container.small-select{height:36px}.ifx-multiselect-container.medium-select{height:40px}.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;position:relative;display:flex;align-items:center;border:1px solid #8D8786;border-radius:1px;width:100%;font-weight:400;font-style:normal}.ifx-multiselect-container .ifx-multiselect-wrapper.small-select{height:36px;padding:8px 12px;font-size:0.875rem;line-height:1.25rem}.ifx-multiselect-container .ifx-multiselect-wrapper.medium-select{height:40px;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;align-items:center;display:flex}.ifx-multiselect-container .ifx-clear-button{display:flex}.ifx-multiselect-container .ifx-multiselect-dropdown-menu{position:absolute;top:100%;left:0;width:100%;margin-top:2px;background-color:#fff;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1);max-height:300px;overflow-y:auto;z-index:var(--dynamic-z-index, 1)}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input{position:sticky;top:0;left:0;z-index:1;width:100%;padding:8px 16px;font-size:1rem;line-height:1.5rem;font-style:normal;font-weight:400;box-sizing:border-box;background-color:#FFFFFF;border:none;border-bottom:1px solid #8D8786}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input:focus{outline:none;border:1px solid #0A8276}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input::placeholder{color:#999}.ifx-multiselect-container .option{position:relative;padding:8px 16px;gap:8px;align-items:center;display:flex;font-style:normal;font-weight:400}.ifx-multiselect-container .option.small-select{font-size:0.875rem;line-height:1.25rem}.ifx-multiselect-container .option.medium-select{font-size:1rem;line-height:1.5rem}.ifx-multiselect-container .option:hover{background-color:#EEEDED}.ifx-multiselect-container .option:focus:not(.disabled){background-color:#BFBBBB;outline:none}.ifx-multiselect-container .option.is-highlighted{background-color:#EEEDED}.ifx-multiselect-container .option.sub-option{padding-left:30px;}.ifx-multiselect-container .option.disabled:hover{cursor:default}.ifx-multiselect-container .option label{cursor:inherit}.select-all-wrapper{padding-top:8px}';const o=n;function r(t,e){let i;return function s(...n){const o=()=>{clearTimeout(i);t(...n)};clearTimeout(i);i=setTimeout(o,e)}}const l=class{constructor(i){t(this,i);this.ifxSelect=e(this,"ifxSelect",7);this.ifxMultiselectIsOpen=e(this,"ifxMultiselectIsOpen",7);if(i.$hostElement$["s-ei"]){this.internals=i.$hostElement$["s-ei"]}else{this.internals=i.$hostElement$.attachInternals();i.$hostElement$["s-ei"]=this.internals}this.currentIndex=0;this.handleSearch=r((t=>{const e=t.value.toLowerCase();if(e===""){this.filteredOptions=this.loadedOptions}else{this.filteredOptions=this.loadedOptions.filter((t=>t.label.toLowerCase().includes(e)))}}),300);this.handleDocumentClick=t=>{const e=t.composedPath();if(!e.includes(this.dropdownElement)){this.dropdownOpen=false;document.removeEventListener("click",this.handleDocumentClick);this.filteredOptions=this.loadedOptions;this.ifxMultiselectIsOpen.emit(this.dropdownOpen)}};this.name=undefined;this.options=undefined;this.batchSize=50;this.size="medium (40px)";this.disabled=false;this.error=false;this.internalError=false;this.errorMessage="Error";this.internalErrorMessage=undefined;this.label="";this.persistentSelectedOptions=[];this.placeholder="";this.dropdownOpen=false;this.dropdownFlipped=undefined;this.maxItemCount=undefined;this.zIndex=1;this.isLoading=false;this.loadedOptions=[];this.filteredOptions=[];this.showSearch=true;this.showSelectAll=true;this.optionCount=0;this.optionsProcessed=false}updateOptions(){this.loadedOptions=[];this.filteredOptions=[];this.optionCount=0;this.optionsProcessed=false;this.persistentSelectedOptions=[];this.loadInitialOptions()}async loadInitialOptions(){this.isLoading=true;this.internalError=this.error;this.internalErrorMessage=this.errorMessage;this.loadedOptions=await this.fetchOptions(0,this.batchSize);this.isLoading=false}async fetchMoreOptions(){this.isLoading=true;const t=await this.fetchOptions(this.loadedOptions.length,this.batchSize);this.loadedOptions=[...this.loadedOptions,...t];this.isLoading=false}handleScroll(t){const e=t.target;const i=Math.floor((e.scrollHeight-e.clientHeight)/2);if(e.scrollTop>=i){this.fetchMoreOptions()}}async fetchOptions(t,e){let i=[];if(typeof this.options==="string"){try{i=JSON.parse(this.options)}catch(t){console.error("Failed to parse options:",t)}}else if(Array.isArray(this.options)){i=this.options}else{console.error("Unexpected value for options:",this.options)}if(!this.optionsProcessed){this.optionCount=this.countOptions(i);const t=this.collectSelectedOptions(i);const e=t.filter((t=>!this.persistentSelectedOptions.some((e=>e.value==t.value))));this.persistentSelectedOptions=[...this.persistentSelectedOptions,...e];this.optionsProcessed=true}const s=i.slice(t,t+e);return s}collectSelectedOptions(t){let e=[];for(const i of t){if(i.selected){if(i.children&&i.children.length>0){e=e.concat(this.collectLeafOptions(i.children))}else{if(!e.some((t=>t.value===i.value))){e.push(i)}}}else{if(i.children&&i.children.length>0){e=e.concat(this.collectSelectedOptions(i.children))}}}return e}collectLeafOptions(t){let e=[];for(const i of t){if(i.children&&i.children.length>0){e=e.concat(this.collectLeafOptions(i.children))}else{e.push(i)}}return e}countOptions(t){let e=0;for(const i of t){if(i.children&&i.children.length>=0){e+=this.countOptions(i.children)}else{e++}}return e}componentDidLoad(){setTimeout((()=>{this.positionDropdown()}),500)}componentWillLoad(){this.loadInitialOptions();this.filteredOptions=[...this.loadedOptions]}updateInternalError(){this.internalError=this.error}updateInternalErrorMessage(){this.internalErrorMessage=this.errorMessage}loadedOptionsChanged(){this.filteredOptions=[...this.loadedOptions]}onSelectionChange(t,e){const i=new FormData;t.forEach((t=>i.append(this.name,t.value)));this.internals.setFormValue(i)}handleOptionClick(t){this.internalError=false;if(!t.selected&&this.isSelectionLimitReached(t)){t.checkboxRef.toggleCheckedState(false);this.internalError=true;this.internalErrorMessage="Please consider the maximum number of items to choose from";return}this.updateSelection(t);this.ifxSelect.emit(this.persistentSelectedOptions)}isSelectionLimitReached(t){let e=t.children?t.children.length:1;return this.maxItemCount&&this.persistentSelectedOptions.length+e>this.maxItemCount&&!this.persistentSelectedOptions.some((e=>e.value===t.value))}updateSelection(t){const e=this.persistentSelectedOptions.some((e=>e.value===t.value));if(t.children&&t.children.length>0){this.handleParentOptionClick(t)}else{this.handleChildOptionClick(t,e)}}async selectAll(){const t=await this.fetchOptions(0,this.optionCount);this.selectAllRecursive(t);this.ifxSelect.emit(this.persistentSelectedOptions)}selectAllRecursive(t){for(const e of t){if(e.children&&e.children.length>0){this.selectAllRecursive(e.children)}else{if(!this.persistentSelectedOptions.some((t=>t.value===e.value))){e.selected=true;this.persistentSelectedOptions=[...this.persistentSelectedOptions,e];this.optionCount=this.countOptions(this.persistentSelectedOptions)}}}}handleParentOptionClick(t){const e=t.children.every((t=>this.persistentSelectedOptions.some((e=>e.value===t.value))));if(e){this.persistentSelectedOptions=[...this.persistentSelectedOptions.filter((e=>!t.children.some((t=>t.value===e.value))))];t.selected=false;t.children.forEach((t=>{t.selected=false}))}else{const e=[...t.children.filter((t=>!this.persistentSelectedOptions.some((e=>e.value===t.value))))];t.selected=true;t.children.forEach((t=>{t.selected=true}));this.persistentSelectedOptions=[...this.persistentSelectedOptions,...e]}}handleChildOptionClick(t,e){if(e){this.persistentSelectedOptions=[...this.persistentSelectedOptions.filter((e=>e.value!==t.value))];t.selected=false}else{this.persistentSelectedOptions=[...this.persistentSelectedOptions,t];t.selected=true}this.updateParentSelectedState()}updateParentSelectedState(){this.loadedOptions.forEach((t=>{var e;if(((e=t.children)===null||e===void 0?void 0:e.length)>0){if(t.children.every((t=>t.selected===true)))t.selected=true;else{t.selected=false;if(this.isOptionIndeterminate(t)){t.indeterminate=true}else{t.indeterminate=false}}}}))}getSizeClass(){return`${this.size}`==="s"?"small-select":"medium-select"}toggleDropdown(){this.dropdownOpen=!this.dropdownOpen;setTimeout((()=>{if(this.dropdownOpen){document.addEventListener("click",this.handleDocumentClick)}this.ifxMultiselectIsOpen.emit(this.dropdownOpen)}),0);this.zIndex=l.globalZIndex++}waitForElement(t,e,i=50){let s=0;function n(){requestAnimationFrame((()=>{const o=t();if(o.length>0||s>i){e(o)}else{s++;n()}}))}n()}handleKeyDown(t){if(this.disabled)return;const e=this.dropdownElement.querySelectorAll(".option");switch(t.code){case"Enter":this.toggleDropdown();this.waitForElement((()=>this.dropdownElement.querySelectorAll(".option")),(t=>{this.updateHighlightedOption(t)}));break;case"Space":this.toggleDropdown();this.waitForElement((()=>this.dropdownElement.querySelectorAll(".option")),(t=>{this.updateHighlightedOption(t)}));break;case"ArrowDown":this.handleArrowDown(e);if(this.dropdownOpen){this.updateHighlightedOption(e)}break;case"ArrowUp":this.handleArrowUp(e);if(this.dropdownOpen){this.updateHighlightedOption(e)}break}}handleWrapperClick(t){this.positionDropdown();if(t.currentTarget===t.target){this.toggleDropdown()}}clearSelection(){this.persistentSelectedOptions=[];this.ifxSelect.emit(this.persistentSelectedOptions)}positionDropdown(){var t;const e=(t=this.el.shadowRoot.querySelector(".ifx-multiselect-wrapper"))===null||t===void 0?void 0:t.getBoundingClientRect();const i=window.innerHeight-e.bottom;const s=e.top;if(s>i&&e.height>i||e.bottom>window.innerHeight){this.dropdownFlipped=true}else{this.dropdownFlipped=false}}updateHighlightedOption(t){t.forEach((t=>t.classList.remove("is-highlighted")));if(this.currentIndex>=0&&this.currentIndex<t.length){t[this.currentIndex].classList.add("is-highlighted");t[this.currentIndex].focus()}}handleArrowDown(t){if(this.currentIndex<t.length-1){this.currentIndex++}else{this.currentIndex=0}}handleArrowUp(t){if(this.currentIndex>0){this.currentIndex--}else{this.currentIndex=t.length-1}}handleOptionKeyDown(t,e){if(t.key!=="ArrowUp"&&t.key!=="ArrowDown")t.stopPropagation();if(t.key==="Enter"||t.key===" "){this.handleOptionClick(e)}}renderOption(t,e){var s;const n=this.isOptionIndeterminate(t);const o=t.children?n||this.isOptionSelected(t):this.persistentSelectedOptions.some((e=>e.value===t.value));const r=!o&&this.maxItemCount&&this.persistentSelectedOptions.length>=this.maxItemCount;const l=`checkbox-${t.value}-${e}`;return i("div",{class:"option-wrapper"},i("div",{class:`option ${o?"selected":""} ${r?"disabled":""} \n ${this.getSizeClass()}`,"data-value":t.value,onKeyDown:e=>!r&&this.handleOptionKeyDown(e,t),onClick:()=>!r&&this.handleOptionClick(t),tabindex:"0",role:`${((s=t.children)===null||s===void 0?void 0:s.length)>0?"treeitem":"option"}`},i("ifx-checkbox",{tabIndex:-1,ref:e=>t.checkboxRef=e,id:l,size:"s",checked:n?false:o,indeterminate:n,disabled:r}),i("label",{htmlFor:l,onClick:t=>t.stopPropagation()},t.label)),t.children&&t.children.map(((t,i)=>this.renderSubOption(t,`${e}-${i}`))))}isOptionSelected(t){if(!t.children)return false;return t.children.every((t=>this.persistentSelectedOptions.some((e=>e.value===t.value))))}isOptionIndeterminate(t){if(!t.children)return false;const e=t.children.filter((t=>this.persistentSelectedOptions.some((e=>e.value===t.value)))).length;return e>0&&e<t.children.length}findInOptions(t,e){for(const i of t){if(i.value===e){return i}if(i.children){const t=this.findInOptions(i.children,e);if(t){return t}}}return null}renderSubOption(t,e){var s;const n=this.persistentSelectedOptions.some((e=>e.value===t.value));const o=!n&&this.maxItemCount&&this.persistentSelectedOptions.length>=this.maxItemCount;const r=`checkbox-${t.value}-${e}`;return i("div",{class:`option sub-option ${n?"selected":""} ${this.getSizeClass()} ${o?"disabled":""}`,"data-value":t.value,role:`${((s=t.children)===null||s===void 0?void 0:s.length)>0?"option":"treeitem"}`,onKeyDown:e=>!o&&this.handleOptionKeyDown(e,t),onClick:()=>!o&&this.handleOptionClick(t),tabindex:"0"},i("ifx-checkbox",{tabIndex:-1,ref:e=>t.checkboxRef=e,id:r,size:"s",checked:n,disabled:o}),i("label",{htmlFor:r,onClick:t=>t.stopPropagation()},t.label))}renderSelectAll(){const t=this.persistentSelectedOptions.length===this.optionCount;const e=this.persistentSelectedOptions.length===0;const s=this.optionCount>0&&!e&&!t;const n=this;function o(){if(t){n.clearSelection()}else{n.selectAll()}}function r(t){if(t.key!=="ArrowUp"&&t.key!=="ArrowDown")t.stopPropagation();if(t.key==="Enter"||t.key===" "){o()}}return i("div",{class:"select-all-wrapper"},i("div",{class:`option ${this.getSizeClass()}`,tabindex:"0",onKeyDown:t=>r(t),onClick:o},i("ifx-checkbox",{tabIndex:-1,id:"selectAll",checked:t,indeterminate:s,size:"s"}),i("label",{htmlFor:"selectAll"},"Select all")),i("ifx-dropdown-separator",null))}render(){const t=this.persistentSelectedOptions.filter((t=>{const e=this.persistentSelectedOptions.some((e=>e.children&&e.children.some((e=>e.value===t.value))&&e.selected));return!e})).map((t=>t.label)).join(", ");return i("div",{class:`ifx-multiselect-container`,ref:t=>this.dropdownElement=t},this.label?i("div",{class:"ifx-label-wrapper"},i("span",null,this.label)):null,i("div",{class:`ifx-multiselect-wrapper \n ${this.getSizeClass()} \n ${this.dropdownOpen?"active":""} \n ${this.dropdownFlipped?"is-flipped":""}\n ${this.internalError?"error":""}\n ${this.disabled?"disabled":""}`,tabindex:"0",onClick:this.disabled?undefined:t=>this.handleWrapperClick(t),onKeyDown:this.disabled?undefined:t=>this.handleKeyDown(t)},i("div",{class:`ifx-multiselect-input \n ${this.persistentSelectedOptions.length===0?"placeholder":""}\n `,onClick:this.disabled?undefined:()=>this.toggleDropdown()},this.persistentSelectedOptions.length>0?t:this.placeholder),this.dropdownOpen&&i("div",{class:"ifx-multiselect-dropdown-menu",onScroll:t=>this.handleScroll(t),style:{"--dynamic-z-index":this.zIndex.toString()}},this.showSearch&&i("input",{type:"text",role:"textbox",class:"search-input",onKeyDown:t=>{t.stopPropagation()},onInput:t=>this.handleSearch(t.target),placeholder:"Search..."}),this.showSelectAll&&this.renderSelectAll(),this.filteredOptions.map(((t,e)=>this.renderOption(t,e))),this.isLoading&&i("div",null,"Loading more options...")),i("div",{class:"ifx-multiselect-icon-container"},this.persistentSelectedOptions.length>0&&i("div",{class:"ifx-clear-button",onClick:this.disabled?undefined:()=>this.clearSelection()},i("ifx-icon",{icon:"cremove16"})),i("div",{class:"icon-wrapper-up",onClick:this.disabled?undefined:()=>this.toggleDropdown()},i("ifx-icon",{key:"icon-up",icon:"chevronup-16"})),i("div",{class:"icon-wrapper-down",onClick:this.disabled?undefined:()=>this.toggleDropdown()},i("ifx-icon",{key:"icon-down",icon:"chevron-down-16"})))),this.internalError?i("div",{class:"ifx-error-message-wrapper"},i("span",null,this.internalErrorMessage)):null)}static get formAssociated(){return true}get el(){return s(this)}static get watchers(){return{options:["updateOptions"],error:["updateInternalError"],errorMessage:["updateInternalErrorMessage"],loadedOptions:["loadedOptionsChanged"],persistentSelectedOptions:["onSelectionChange"]}}};l.globalZIndex=1;l.style=o;const a=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:flex}.textInput__container{display:flex;flex-direction:column;align-items:flex-start;padding:0px;width:100%;flex:none;order:0;align-self:stretch;flex-grow:0;font-family:var(--ifx-font-family)}.textInput__container.disabled .textInput__top-wrapper label{color:#575352}.textInput__container.disabled .textInput__bottom-wrapper input{border:1px solid #575352;background-color:#EEEDED}.textInput__container.disabled .textInput__bottom-wrapper input::placeholder{font-size:0.875rem;color:#575352}.textInput__container .textInput__top-wrapper{display:flex;flex-direction:row;align-items:flex-start;padding:0px;gap:4px;flex:none;order:0;align-self:stretch;flex-grow:0}.textInput__container .textInput__top-wrapper label{font-style:normal;font-weight:400;font-size:1rem;line-height:1.5rem;display:flex;align-items:center;color:#1D1D1D;flex:none;order:0;flex-grow:0}.textInput__container .textInput__top-wrapper label .optional-required{margin-left:4px}.textInput__container .textInput__top-wrapper label .optional{margin-left:4px}.textInput__container .textInput__top-wrapper label .required{margin-left:4px}.textInput__container .textInput__top-wrapper label .required.error{color:#CD002F}.textInput__container .input-container{position:relative;display:flex;align-items:center;width:100%}.textInput__container .textInput__bottom-wrapper{flex-grow:1;position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:0px;gap:4px;flex:none;order:1;align-self:stretch;flex-grow:0}.textInput__container .textInput__bottom-wrapper input{width:100%;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;padding:8px 16px;gap:8px;height:40px;background-color:#FFFFFF;color:#1D1D1D;font-family:"Source Sans 3";font-size:1rem;line-height:1.5rem;border:1px solid #8D8786;border-radius:1px;flex:none;order:0;align-self:stretch;flex-grow:0;text-overflow:ellipsis}.textInput__container .textInput__bottom-wrapper input.input-s{height:36px;font-size:0.875rem;line-height:1.25rem}.textInput__container .textInput__bottom-wrapper input.input-s::placeholder{font-size:0.875rem;line-height:1.25rem}.textInput__container .textInput__bottom-wrapper input.icon{padding-left:40px}.textInput__container .textInput__bottom-wrapper input.error{border:1px solid #CD002F}.textInput__container .textInput__bottom-wrapper input.error:focus{outline:none}.textInput__container .textInput__bottom-wrapper input.success{border:1px solid #4CA460}.textInput__container .textInput__bottom-wrapper input.success:focus{outline:none}.textInput__container .textInput__bottom-wrapper input:focus:not(.error,.success){outline:none;border:1px solid #0A8276}.textInput__container .textInput__bottom-wrapper input:hover:not(:disabled,:focus,.error,.success){border:1px solid #575352}.textInput__container .textInput__bottom-wrapper input::placeholder{font-style:normal;font-weight:400;font-size:1rem;line-height:1.5rem;color:#8D8786;flex:none;order:1;flex-grow:1}.textInput__container .textInput__bottom-wrapper .input-icon{position:absolute;top:50%;transform:translateY(-50%);left:16px;transition:0.3s;color:#8D8786}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption{font-style:normal;font-weight:400;font-size:0.75rem;line-height:1rem;letter-spacing:0.2px;color:#1D1D1D;flex:none;order:1;align-self:stretch;flex-grow:0}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption.error{color:#CD002F}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption.disabled{color:#575352}.textInput__container .delete-icon{position:absolute;right:16px}.textInput__container .delete-icon :hover{cursor:pointer}';const c=a;const p=class{constructor(i){t(this,i);this.ifxInput=e(this,"ifxInput",7);if(i.$hostElement$["s-ei"]){this.internals=i.$hostElement$["s-ei"]}else{this.internals=i.$hostElement$.attachInternals();i.$hostElement$["s-ei"]=this.internals}this.placeholder="Placeholder";this.value="";this.error=false;this.label="";this.icon="";this.caption="";this.size="m";this.required=false;this.optional=false;this.success=false;this.disabled=false;this.maxlength=undefined;this.showDeleteIcon=false}valueWatcher(t){if(t!==this.inputElement.value){this.inputElement.value=t}}async reset(){this.value="";this.inputElement.value=""}handleDeleteContent(){this.reset();this.ifxInput.emit(this.value)}handleInput(){const t=this.inputElement.value;this.value=t;this.internals.setFormValue(t);this.ifxInput.emit(this.value)}formResetCallback(){this.internals.setValidity({});this.internals.setFormValue("")}render(){return i("div",{key:"8d742d3a60998d4648040fab5d5d50853b12c7b4","aria-label":"a text field for user input","aria-value":this.value,"aria-disabled":this.disabled,class:`textInput__container ${this.disabled?"disabled":""}`},i("div",{key:"4965d888690874e8775bfc83602340b6b83d3e5e",class:"textInput__top-wrapper"},i("label",{key:"d5224921d5c26fc62d551bf10dd1207d8ff5e67f",htmlFor:"text-field"},i("slot",{key:"eb5758011376ace0664b074fd4e755b1920fa7f4"}),this.optional&&this.required?i("span",{class:"optional-required"},"(optional) *"):this.optional?i("span",{class:"optional"},"(optional)"):this.required?i("span",{class:`required ${this.error?"error":""}`},"*"):null)),i("div",{key:"ec295037f306f2cd6ee6c3ba3310dc858c4a74f6",class:"textInput__bottom-wrapper"},i("div",{key:"bfb3f3e2c47c6f57f29f3fb16cc5e5b50a5e11f4",class:"input-container"},this.icon&&i("ifx-icon",{key:"e94e39b0426900264b834b79e9b7667563311b3c",class:"input-icon",icon:this.icon}),i("input",{key:"08ba76dbe8ac6ab62ffbcb4d0aa44437f8c6b057",ref:t=>this.inputElement=t,disabled:this.disabled,type:"text",id:"text-field",value:this.value,onInput:()=>this.handleInput(),placeholder:this.placeholder,maxlength:this.maxlength,class:`${this.icon?"icon":""}\n ${this.error?"error":""} \n ${this.size==="s"?"input-s":""}\n ${this.success?"success":""}`}),this.showDeleteIcon&&this.value&&i("ifx-icon",{key:"f0df7c42fe70e05928e2db93017db15d1f8c659c",class:"delete-icon",icon:"cremove16",onClick:()=>this.handleDeleteContent()})),this.caption&&!this.error&&i("div",{key:"ac6811a80b1728eb7ecea350a2821990d3e49b40",class:`textInput__bottom-wrapper-caption ${this.disabled} ? disabled : ""`},this.caption),this.error&&i("div",{key:"deba470325e740fc058a67bfcf056af34ab4d8ef",class:"textInput__bottom-wrapper-caption error"},this.caption)))}static get formAssociated(){return true}get el(){return s(this)}static get watchers(){return{value:["valueWatcher"]}}};p.style=c;export{l as ifx_multiselect,p as ifx_text_field};
2
- //# sourceMappingURL=p-9b778e88.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["multiselectCss","IfxMultiselectStyle0","debounce","func","wait","timeout","executedFunction","args","later","clearTimeout","setTimeout","Multiselect","this","currentIndex","handleSearch","targetElement","searchTerm","value","toLowerCase","filteredOptions","loadedOptions","filter","option","label","includes","handleDocumentClick","event","path","composedPath","dropdownElement","dropdownOpen","document","removeEventListener","ifxMultiselectIsOpen","emit","updateOptions","optionCount","optionsProcessed","persistentSelectedOptions","loadInitialOptions","isLoading","internalError","error","internalErrorMessage","errorMessage","fetchOptions","batchSize","fetchMoreOptions","moreOptions","length","handleScroll","element","target","halfwayPoint","Math","floor","scrollHeight","clientHeight","scrollTop","startIndex","count","allOptions","options","JSON","parse","err","console","Array","isArray","countOptions","initiallySelected","collectSelectedOptions","initallySelectedNotInState","init","some","opt","slicedOptions","slice","selectedOptions","selected","children","concat","collectLeafOptions","existingOption","push","leafOptions","child","componentDidLoad","positionDropdown","componentWillLoad","updateInternalError","updateInternalErrorMessage","loadedOptionsChanged","onSelectionChange","newValue","_","formData","FormData","forEach","append","name","internals","setFormValue","handleOptionClick","isSelectionLimitReached","checkboxRef","toggleCheckedState","updateSelection","ifxSelect","newOptionsLength","maxItemCount","selectedOption","wasSelected","handleParentOptionClick","handleChildOptionClick","selectAll","selectAllRecursive","allChildrenSelected","every","newChildren","childOption","updateParentSelectedState","_a","isOptionIndeterminate","indeterminate","getSizeClass","size","toggleDropdown","addEventListener","zIndex","globalZIndex","waitForElement","querySelectorFunc","callback","maxTries","tries","request","requestAnimationFrame","elements","handleKeyDown","disabled","querySelectorAll","code","updateHighlightedOption","handleArrowDown","handleArrowUp","handleWrapperClick","currentTarget","clearSelection","wrapperRect","el","shadowRoot","querySelector","getBoundingClientRect","spaceBelow","window","innerHeight","bottom","spaceAbove","top","height","dropdownFlipped","classList","remove","add","focus","handleOptionKeyDown","e","key","stopPropagation","renderOption","index","isIndeterminate","isSelected","isOptionSelected","disableCheckbox","uniqueId","h","class","onKeyDown","onClick","tabindex","role","tabIndex","ref","id","checked","htmlFor","map","childIndex","renderSubOption","persistentOption","selectedChildren","findInOptions","foundInChildren","renderSelectAll","allSelected","noneSelected","that","toggleSelectAll","handleSelectAllKeydown","render","selectedOptionsLabels","isChildSelectedWithParent","parentOption","join","undefined","placeholder","onScroll","style","toString","showSearch","type","onInput","showSelectAll","icon","textFieldCss","IfxTextFieldStyle0","TextField","valueWatcher","inputElement","reset","handleDeleteContent","ifxInput","handleInput","query","formResetCallback","setValidity","optional","required","maxlength","success","showDeleteIcon","caption"],"sources":["src/components/select/multi-select/multiselect.scss?tag=ifx-multiselect&encapsulation=shadow","src/components/select/multi-select/multiselect.tsx","src/components/text-field/text-field.scss?tag=ifx-text-field&encapsulation=shadow","src/components/text-field/text-field.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);\n\n &.small-select {\n height: 36px;\n }\n\n &.medium-select {\n height: 40px;\n }\n\n &:hover {\n cursor: pointer;\n }\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 position: relative;\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\n\n &.small-select {\n height: 36px;\n padding: 8px 12px;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n }\n\n &.medium-select {\n height: 40px;\n padding: 8px 16px;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n }\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 align-items: center;\n display: flex;\n }\n\n\n .ifx-clear-button {\n display: flex;\n }\n\n .ifx-multiselect-dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n margin-top: 2px;\n background-color: #fff;\n box-shadow: 0px 6px 9px 0px rgba(29, 29, 29, 0.10);\n max-height: 300px;\n /* Adjust based on your design */\n overflow-y: auto;\n z-index: var(--dynamic-z-index, 1); // Fallback to 1\n\n .search-input {\n position: sticky;\n top: 0;\n left: 0;\n z-index: 1;\n width: 100%;\n padding: 8px 16px;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n font-style: normal;\n font-weight: 400;\n box-sizing: border-box;\n background-color: tokens.$ifxColorBaseWhite;\n border: none;\n border-bottom: 1px solid tokens.$ifxColorEngineering400;\n\n &:focus {\n outline: none;\n border: 1px solid tokens.$ifxColorOcean500;\n }\n\n // Optional: Placeholder style\n &::placeholder {\n color: #999;\n }\n }\n }\n\n .option {\n position: relative;\n padding: 8px 16px;\n gap: 8px;\n align-items: center;\n display: flex;\n font-style: normal;\n font-weight: 400;\n\n &.small-select {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n }\n\n &.medium-select {\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n }\n\n &:hover {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &:focus:not(.disabled) {\n background-color: tokens.$ifxColorEngineering300;\n outline: none;\n }\n\n &.is-highlighted {\n background-color: tokens.$ifxColorEngineering200;\n ;\n }\n\n &.selected {\n // color: #0A8276;\n }\n\n &.sub-option {\n padding-left: 30px;\n /* or however much indentation you want */\n }\n\n &.disabled {\n &:hover {\n cursor: default;\n }\n }\n\n label {\n cursor: inherit;\n }\n }\n\n\n\n}\n\n.select-all-wrapper {\n padding-top: 8px;\n}","import { Component, Prop, State, Event, EventEmitter, Element, h, Watch, AttachInternals } from '@stencil/core';\nimport { Option } from './interfaces';\n\n// Debounce function\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\n\n\nexport class Multiselect {\n\n @Prop() name: string;\n @Prop() options: any[] | string;\n @Prop() batchSize: number = 50;\n @Prop() size: string = 'medium (40px)';\n @Prop() disabled: boolean = false;\n @Prop() error: boolean = false;\n @State() internalError: boolean = false;\n @Prop() errorMessage: string = \"Error\";\n @State() internalErrorMessage: string;\n @Prop() label: string = \"\";\n @State() persistentSelectedOptions: Option[] = [];\n @Prop() placeholder: string = \"\";\n @State() dropdownOpen = false;\n @State() dropdownFlipped: boolean;\n @Prop() maxItemCount: number;\n @State() zIndex: number = 1; // default z-index value\n static globalZIndex = 1; // This will be shared among all instances of the component.\n private currentIndex: number = 0; //needed for option selection using keyboard\n @State() isLoading: boolean = false;\n @State() loadedOptions: Option[] = [];\n @State() filteredOptions: Option[] = [];\n @Prop() showSearch: boolean = true;\n @Prop() showSelectAll: boolean = true;\n @State() optionCount: number = 0; // number of all options (leaves of the tree)\n @State() optionsProcessed: boolean = false; // flag whether options have already been counted, intial selections saved\n\n\n @Event() ifxSelect: EventEmitter;\n @Event() ifxMultiselectIsOpen: EventEmitter;\n\n @Element() el: HTMLElement;\n dropdownElement!: HTMLElement;\n\n @AttachInternals() internals: ElementInternals;\n\n\n @Watch('options')\n updateOptions() { \n this.loadedOptions = [];\n this.filteredOptions = [];\n this.optionCount = 0;\n this.optionsProcessed = false;\n this.persistentSelectedOptions = [];\n\n this.loadInitialOptions();\n }\n\n\n async loadInitialOptions() {\n this.isLoading = true;\n this.internalError = this.error;\n this.internalErrorMessage = this.errorMessage;\n // Load the first batch of options (e.g., first 20)\n this.loadedOptions = await this.fetchOptions(0, this.batchSize);\n this.isLoading = false;\n }\n\n async fetchMoreOptions() {\n this.isLoading = true;\n const moreOptions = await this.fetchOptions(this.loadedOptions.length, this.batchSize);\n this.loadedOptions = [...this.loadedOptions, ...moreOptions];\n this.isLoading = false;\n }\n\n\n handleScroll(event: UIEvent) {\n const element = event.target as HTMLElement;\n const halfwayPoint = Math.floor((element.scrollHeight - element.clientHeight) / 2); //loading more options when the user has scrolled halfway through the current list\n\n if (element.scrollTop >= halfwayPoint) {\n this.fetchMoreOptions();\n }\n }\n\n\n\n\n async fetchOptions(startIndex: number, count: number): Promise<Option[]> {\n let allOptions: Option[] = [];\n\n // Parse options if it's a string, or use directly if it's an array\n if (typeof this.options === 'string') {\n try {\n allOptions = JSON.parse(this.options);\n \n } catch (err) {\n console.error('Failed to parse options:', err);\n }\n } else if (Array.isArray(this.options)) {\n allOptions = this.options;\n } else {\n console.error('Unexpected value for options:', this.options);\n }\n\n if (!this.optionsProcessed) {\n this.optionCount = this.countOptions(allOptions);\n const initiallySelected = this.collectSelectedOptions(allOptions);\n const initallySelectedNotInState = initiallySelected.filter(init => !this.persistentSelectedOptions.some(opt => opt.value == init.value));\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, ...initallySelectedNotInState];\n this.optionsProcessed = true;\n }\n // Slice the options array based on startIndex and count\n const slicedOptions = allOptions.slice(startIndex, startIndex + count);\n return slicedOptions;\n }\n\n /**\n * Collects and returns all options that are selected.\n * When the parent is selected, then the value of the children will be overriden with selected as well.\n * It will only collect the leaves of the tree.\n * \n * @param options A list of options.\n * @returns A list with all selected options\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 // if parent is selected, then select all child options\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 /**\n * Collects all leaf children options.\n * \n * @param option A list with all leaf-children.\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 /**\n * Count the number of options. Only counts the leaves of the options tree.\n */\n countOptions(options: Option[]): number {\n let count = 0;\n for (const option of options) {\n if (option.children && option.children.length >= 0) {\n count += this.countOptions(option.children);\n } else {\n count++;\n }\n }\n return count;\n }\n\n\n handleSearch = debounce((targetElement: HTMLInputElement) => {\n const searchTerm = targetElement.value.toLowerCase();\n if (searchTerm === '') {\n this.filteredOptions = this.loadedOptions;\n } else {\n this.filteredOptions = this.loadedOptions.filter(option => option.label.toLowerCase().includes(searchTerm))\n }\n }, 300);\n\n componentDidLoad() {\n setTimeout(() => {\n this.positionDropdown();\n }, 500);\n\n // setInterval(this.handleScroll, 5000); // Runs every 5 seconds (5000 milliseconds)\n }\n\n componentWillLoad() {\n this.loadInitialOptions();\n this.filteredOptions = [...this.loadedOptions];\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('loadedOptions')\n loadedOptionsChanged() {\n this.filteredOptions = [...this.loadedOptions];\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\n handleOptionClick(option: Option) {\n this.internalError = false;\n\n if (!option.selected && this.isSelectionLimitReached(option)) {\n option.checkboxRef.toggleCheckedState(false)\n this.internalError = true;\n this.internalErrorMessage = \"Please consider the maximum number of items to choose from\";\n return;\n }\n \n this.updateSelection(option);\n this.ifxSelect.emit(this.persistentSelectedOptions);\n }\n\n\n isSelectionLimitReached(option: Option): boolean {\n let newOptionsLength = option.children ? option.children.length : 1;\n return this.maxItemCount && this.persistentSelectedOptions.length + newOptionsLength > this.maxItemCount &&\n !this.persistentSelectedOptions.some(selectedOption => selectedOption.value === option.value)\n }\n\n updateSelection(option: Option) {\n const wasSelected = this.persistentSelectedOptions.some(selectedOption => selectedOption.value === option.value);\n\n if (option.children && option.children.length > 0) {\n this.handleParentOptionClick(option);\n } else {\n this.handleChildOptionClick(option, wasSelected);\n }\n }\n\n async selectAll() {\n const allOptions = await this.fetchOptions(0, this.optionCount);\n this.selectAllRecursive(allOptions);\n \n this.ifxSelect.emit(this.persistentSelectedOptions);\n }\n\n private selectAllRecursive(options: Option[]) {\n for (const opt of options) {\n if (opt.children && opt.children.length > 0) {\n this.selectAllRecursive(opt.children);\n } else {\n if (!this.persistentSelectedOptions.some((some) => some.value === opt.value )) {\n opt.selected = true;\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, opt];\n this.optionCount = this.countOptions( this.persistentSelectedOptions)\n }\n }\n }\n\n }\n\n handleParentOptionClick(option: Option) {\n const allChildrenSelected = option.children.every(child =>\n this.persistentSelectedOptions.some(selectedOption => selectedOption.value === child.value)\n );\n\n if (allChildrenSelected) {\n this.persistentSelectedOptions = [...this.persistentSelectedOptions.filter(\n selectedOption => !option.children.some(child => child.value === selectedOption.value)\n )];\n\n option.selected = false;\n option.children.forEach(child => {\n child.selected = false;\n })\n\n } else {\n const newChildren = [...option.children.filter(childOption =>\n !this.persistentSelectedOptions.some(selectedOption => selectedOption.value === childOption.value)\n )];\n option.selected = true;\n option.children.forEach(child => {\n child.selected = true;\n })\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, ...newChildren];\n }\n }\n\n handleChildOptionClick(option: Option, wasSelected: boolean) {\n if (wasSelected) {\n this.persistentSelectedOptions = [...this.persistentSelectedOptions.filter(selectedOption => selectedOption.value !== option.value)];\n option.selected = false;\n } else {\n this.persistentSelectedOptions = [...this.persistentSelectedOptions, option];\n option.selected = true;\n }\n this.updateParentSelectedState();\n }\n\n updateParentSelectedState() {\n this.loadedOptions.forEach(option => {\n if(option.children?.length > 0) {\n if(option.children.every(child => child.selected === true)) option.selected = true;\n else {\n option.selected = false;\n if(this.isOptionIndeterminate(option)) {\n option.indeterminate = true;\n }else{\n option.indeterminate = false;\n }\n }\n }\n });\n }\n\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.filteredOptions = this.loadedOptions;\n // Dispatch the ifxMultiselectIsOpen event\n this.ifxMultiselectIsOpen.emit(this.dropdownOpen);\n }\n }\n\n getSizeClass() {\n return `${this.size}` === \"s\"\n ? \"small-select\"\n : \"medium-select\";\n }\n\n toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n setTimeout(() => {\n if (this.dropdownOpen) {\n document.addEventListener('click', this.handleDocumentClick);\n }\n // Dispatch the ifxMultiselectIsOpen event\n this.ifxMultiselectIsOpen.emit(this.dropdownOpen);\n }, 0);\n this.zIndex = Multiselect.globalZIndex++;\n }\n\n\n waitForElement(querySelectorFunc: Function, callback: Function, maxTries = 50) {\n let tries = 0;\n function request() {\n requestAnimationFrame(() => {\n const elements = querySelectorFunc();\n if (elements.length > 0 || tries > maxTries) {\n callback(elements);\n } else {\n tries++;\n request();\n }\n });\n }\n request();\n }\n\n\n handleKeyDown(event: KeyboardEvent) {\n if (this.disabled) return; // If it's disabled, don't do anything.\n\n const options = this.dropdownElement.querySelectorAll('.option');\n \n switch (event.code) {\n case 'Enter':\n this.toggleDropdown();\n // Wait a bit for the dropdown to finish rendering\n this.waitForElement(() => {\n return this.dropdownElement.querySelectorAll('.option');\n }, (options) => {\n this.updateHighlightedOption(options);\n });\n break;\n case 'Space': \n this.toggleDropdown();\n // Wait a bit for the dropdown to finish rendering\n this.waitForElement(() => {\n return this.dropdownElement.querySelectorAll('.option');\n }, (options) => {\n this.updateHighlightedOption(options);\n });\n break;\n case 'ArrowDown':\n this.handleArrowDown(options);\n if (this.dropdownOpen) {\n this.updateHighlightedOption(options);\n }\n break;\n case 'ArrowUp':\n this.handleArrowUp(options);\n if (this.dropdownOpen) {\n this.updateHighlightedOption(options);\n }\n break;\n }\n }\n\n handleWrapperClick(event: MouseEvent) {\n // This is your existing logic for positioning the dropdown\n this.positionDropdown();\n\n // Check if the event target is the wrapper itself and not a child element.\n if (event.currentTarget === event.target) {\n this.toggleDropdown();\n }\n }\n\n clearSelection() {\n this.persistentSelectedOptions = [];\n this.ifxSelect.emit(this.persistentSelectedOptions); // if you want to emit empty selection after clearing\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 there's more space above than below the trigger and the dropdown doesn't fit below\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\n\n // Helper function to update highlighted option based on currentIndex\n private updateHighlightedOption(options: NodeList) {\n // Clear all highlights\n options.forEach((option: Element) => option.classList.remove('is-highlighted'));\n\n // Apply highlight to the current option\n if (this.currentIndex >= 0 && this.currentIndex < options.length) {\n (options[this.currentIndex] as Element).classList.add('is-highlighted');\n (options[this.currentIndex] as HTMLElement).focus();\n }\n }\n\n // Helper function to handle arrow down navigation\n private handleArrowDown(options: NodeList) {\n if (this.currentIndex < options.length - 1) {\n this.currentIndex++;\n } else {\n this.currentIndex = 0; // Wrap to the beginning.\n }\n }\n\n // Helper function to handle arrow up navigation\n private handleArrowUp(options: NodeList) {\n if (this.currentIndex > 0) {\n this.currentIndex--;\n } else {\n this.currentIndex = options.length - 1; // Wrap to the end.\n }\n }\n \n handleOptionKeyDown(e: KeyboardEvent, option: Option) {\n if(e.key !== 'ArrowUp' && e.key !== 'ArrowDown') e.stopPropagation();\n if(e.key === 'Enter' || e.key === ' ') {\n this.handleOptionClick(option);\n }\n }\n\n renderOption(option: Option, index: number) {\n const isIndeterminate = this.isOptionIndeterminate(option);\n const isSelected = option.children ? isIndeterminate || this.isOptionSelected(option) : this.persistentSelectedOptions.some(selectedOption => selectedOption.value === option.value);\n const disableCheckbox = !isSelected && this.maxItemCount && this.persistentSelectedOptions.length >= this.maxItemCount;\n const uniqueId = `checkbox-${option.value}-${index}`; // Generate a unique ID using the index\n \n return (\n <div class=\"option-wrapper\">\n <div class={`option ${isSelected ? 'selected' : ''} ${disableCheckbox ? 'disabled' : ''} \n ${this.getSizeClass()}`}\n data-value={option.value}\n onKeyDown={(e) => !disableCheckbox && this.handleOptionKeyDown(e, option)}\n onClick={() => !disableCheckbox && this.handleOptionClick(option)}\n tabindex=\"0\"\n role={`${option.children?.length > 0 ? \"treeitem\" : \"option\"}`}>\n <ifx-checkbox tabIndex={-1} ref={(el) => option.checkboxRef = el} id={uniqueId} size=\"s\" checked={isIndeterminate ? false : isSelected} indeterminate={isIndeterminate} disabled={disableCheckbox}></ifx-checkbox>\n <label htmlFor={uniqueId} onClick={(e) => e.stopPropagation()}>{option.label}</label>\n </div>\n {option.children && option.children.map((child, childIndex) => this.renderSubOption(child, `${index}-${childIndex}`))}\n </div>\n );\n }\n\n isOptionSelected(option: Option): boolean {\n if (!option.children) return false;\n\n return option.children.every(child =>\n this.persistentSelectedOptions.some(persistentOption => persistentOption.value === child.value)\n );\n }\n\n\n isOptionIndeterminate(option: Option): boolean {\n if (!option.children) return false;\n\n const selectedChildren = option.children.filter(child =>\n this.persistentSelectedOptions.some(persistentOption => persistentOption.value === child.value)\n ).length;\n\n return selectedChildren > 0 && selectedChildren < option.children.length;\n }\n\n\n findInOptions(options: Option[], searchTerm: string): Option | null {\n for (const option of options) {\n if (option.value === searchTerm) {\n return option;\n }\n if (option.children) {\n const foundInChildren = this.findInOptions(option.children, searchTerm);\n if (foundInChildren) {\n return foundInChildren;\n }\n }\n }\n return null;\n }\n\n\n renderSubOption(option: Option, index: string) {\n const isSelected = this.persistentSelectedOptions.some(selectedOption => selectedOption.value === option.value);\n const disableCheckbox = !isSelected && this.maxItemCount && this.persistentSelectedOptions.length >= this.maxItemCount;\n const uniqueId = `checkbox-${option.value}-${index}`;\n\n return (\n <div class={`option sub-option ${isSelected ? 'selected' : ''} ${this.getSizeClass()} ${disableCheckbox ? 'disabled' : ''}`}\n data-value={option.value}\n role={`${option.children?.length > 0 ? \"option\" : \"treeitem\"}`}\n onKeyDown={(e) => !disableCheckbox && this.handleOptionKeyDown(e, option)}\n onClick={() => !disableCheckbox && this.handleOptionClick(option)}\n tabindex=\"0\">\n <ifx-checkbox tabIndex={-1} ref={(el) => option.checkboxRef = el} id={uniqueId} size=\"s\" checked={isSelected} disabled={disableCheckbox}></ifx-checkbox>\n <label htmlFor={uniqueId} onClick={(e) => e.stopPropagation()}>{option.label}</label>\n </div>\n );\n }\n\n private renderSelectAll() {\n const allSelected = this.persistentSelectedOptions.length === this.optionCount;\n const noneSelected = this.persistentSelectedOptions.length === 0;\n const indeterminate = this.optionCount > 0 && !noneSelected && !allSelected;\n\n const that = this;\n function toggleSelectAll() {\n if (allSelected) {\n that.clearSelection();\n } else {\n that.selectAll();\n }\n }\n\n function handleSelectAllKeydown(e: KeyboardEvent) {\n if(e.key !== 'ArrowUp' && e.key !== 'ArrowDown') e.stopPropagation();\n if(e.key === 'Enter' || e.key === ' ') {\n toggleSelectAll();\n }\n }\n\n return <div class=\"select-all-wrapper\">\n <div class={`option ${this.getSizeClass()}`} tabindex='0' onKeyDown={(e) => handleSelectAllKeydown(e)} onClick={toggleSelectAll}>\n <ifx-checkbox tabIndex={-1} id='selectAll' checked={allSelected} indeterminate={indeterminate} size=\"s\"></ifx-checkbox>\n <label htmlFor='selectAll'>Select all</label>\n </div>\n <ifx-dropdown-separator></ifx-dropdown-separator>\n </div>;\n }\n\n\n render() {\n // Create a label for the selected options\n const selectedOptionsLabels = this.persistentSelectedOptions\n .filter(option => {\n // check if option is a child and its parent is selected\n const isChildSelectedWithParent = this.persistentSelectedOptions.some(parentOption =>\n parentOption.children &&\n parentOption.children.some(child => child.value === option.value) &&\n parentOption.selected\n );\n return !isChildSelectedWithParent;\n })\n .map(option => option.label)\n .join(', ');\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.getSizeClass()} \n ${this.dropdownOpen ? 'active' : ''} \n ${this.dropdownFlipped ? 'is-flipped' : ''}\n ${this.internalError ? 'error' : \"\"}\n ${this.disabled ? '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 ${this.persistentSelectedOptions.length === 0 ? 'placeholder' : \"\"}\n `}\n onClick={this.disabled ? undefined : () => this.toggleDropdown()}\n >\n {this.persistentSelectedOptions.length > 0 ? selectedOptionsLabels : this.placeholder}\n </div>\n {this.dropdownOpen && (\n <div class=\"ifx-multiselect-dropdown-menu\"\n onScroll={(event) => this.handleScroll(event)}\n style={{ '--dynamic-z-index': this.zIndex.toString() }}>\n {this.showSearch && <input type=\"text\" role=\"textbox\" class=\"search-input\" onKeyDown={(e) => { e.stopPropagation() }} onInput={(event) => this.handleSearch(event.target)} placeholder=\"Search...\"></input>}\n {this.showSelectAll && this.renderSelectAll()}\n {this.filteredOptions.map((option, index) => this.renderOption(option, index))}\n {this.isLoading && <div>Loading more options...</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\" 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='chevronup-16'></ifx-icon>\n </div>\n <div class=\"icon-wrapper-down\" onClick={this.disabled ? undefined : () => this.toggleDropdown()}>\n <ifx-icon\n key='icon-down'\n icon='chevron-down-16'></ifx-icon>\n </div>\n </div>\n\n </div>\n {\n this.internalError ?\n <div class=\"ifx-error-message-wrapper\">\n <span>{this.internalErrorMessage}</span>\n </div> : null\n }\n </div>\n );\n }\n\n}\n","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n}\n\n.textInput__container {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n width: 100%;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n font-family: var(--ifx-font-family);\n\n\n &.disabled {\n & .textInput__top-wrapper {\n & label {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n & .textInput__bottom-wrapper {\n input {\n border: 1px solid tokens.$ifxColorEngineering500;\n background-color: tokens.$ifxColorEngineering200;\n\n &::placeholder {\n font-size: tokens.$ifxFontSizeS;\n color: tokens.$ifxColorEngineering500;\n }\n }\n }\n }\n\n & .textInput__top-wrapper {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n padding: 0px;\n gap: 4px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n\n & label {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .optional-required {\n margin-left: 4px;\n }\n\n & .optional {\n margin-left: 4px;\n }\n\n & .required {\n margin-left: 4px;\n \n &.error {\n color: #CD002F;\n }\n }\n }\n }\n\n .input-container {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n }\n\n\n & .textInput__bottom-wrapper {\n flex-grow: 1;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 4px;\n flex: none;\n order: 1;\n align-self: stretch;\n flex-grow: 0;\n\n & input {\n width: 100%;\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n gap: tokens.$ifxSpace100;\n height: tokens.$ifxSize500;\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorBaseBlack;\n font-family: tokens.$ifxFontFamilyBody;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n border: 1px solid tokens.$ifxColorEngineering400;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n text-overflow: ellipsis;\n\n &.input-s {\n height: tokens.$ifxSize450;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n\n &::placeholder {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n }\n\n }\n\n &.icon {\n padding-left: tokens.$ifxSpace500;\n }\n\n &.error {\n border: 1px solid #CD002F;\n\n &:focus {\n outline: none;\n }\n }\n\n &.success {\n border: 1px solid #4CA460;\n\n &:focus {\n outline: none;\n }\n }\n\n\n &:focus:not(.error, .success) {\n outline: none;\n border: 1px solid tokens.$ifxColorOcean500;\n }\n\n &:hover:not(:disabled, :focus, .error, .success) {\n border: 1px solid tokens.$ifxColorEngineering500;\n }\n\n &::placeholder {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n color: #8D8786;\n flex: none;\n order: 1;\n flex-grow: 1;\n }\n }\n\n & .input-icon {\n // Position the icon within the icon container\n // Adjust the positioning as needed\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: tokens.$ifxSpace200;\n /* Adjust this value to control the icon's left offset */\n transition: .3s;\n color: tokens.$ifxColorEngineering400;\n }\n\n & .textInput__bottom-wrapper-caption {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeXs;\n line-height: tokens.$ifxLineHeightXs;\n letter-spacing: 0.2px;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n align-self: stretch;\n flex-grow: 0;\n\n &.error {\n color: #CD002F;\n\n }\n\n &.disabled {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n \n }\n .delete-icon {\n position: absolute;\n right: tokens.$ifxSpace200;\n\n :hover {\n cursor: pointer;\n }\n }\n}","import { Component, h, Event, Element, Prop, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-text-field',\n styleUrl: 'text-field.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class TextField {\n private inputElement: HTMLInputElement;\n @Element() el;\n @Prop() placeholder: string = \"Placeholder\"\n @Prop({ mutable: true }) value: string = '';\n @Prop() error: boolean = false;\n @Prop() label: string = \"\";\n @Prop() icon: string = \"\";\n @Prop() caption: string = \"\";\n @Prop() size: string = 'm';\n @Prop() required: boolean = false;\n @Prop() optional: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() maxlength?: number;\n @Prop() showDeleteIcon: boolean = false;\n @Event() ifxInput: EventEmitter<String>;\n // @Prop({ reflect: true })\n // resetOnSubmit: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n\n @Watch('value')\n valueWatcher(newValue: string) {\n if (newValue !== this.inputElement.value) {\n this.inputElement.value = newValue;\n }\n }\n\n @Method()\n async reset() {\n this.value = '';\n this.inputElement.value = '';\n }\n\n handleDeleteContent() {\n this.reset();\n this.ifxInput.emit(this.value);\n }\n\n handleInput() {\n const query = this.inputElement.value;\n this.value = query; // update the value property when input changes\n this.internals.setFormValue(query) // update form value\n this.ifxInput.emit(this.value);\n }\n\n formResetCallback() {\n this.internals.setValidity({});\n this.internals.setFormValue(\"\");\n }\n\n render() {\n return (\n <div aria-label=\"a text field for user input\" aria-value={this.value} aria-disabled={this.disabled} class={`textInput__container ${this.disabled ? 'disabled' : \"\"}`}>\n <div class=\"textInput__top-wrapper\">\n <label htmlFor=\"text-field\">\n <slot></slot>\n {this.optional && this.required ? (\n <span class=\"optional-required\">(optional) *</span>\n ) : this.optional ? (\n <span class=\"optional\">(optional)</span>\n ) : this.required ? (\n <span class={`required ${this.error ? 'error' : \"\"}`}>*</span>\n ) : null}\n </label>\n </div>\n\n <div class=\"textInput__bottom-wrapper\">\n <div class=\"input-container\">\n {this.icon && (\n <ifx-icon class='input-icon' icon={this.icon} />\n )}\n <input\n ref={(el) => (this.inputElement = el)}\n disabled={this.disabled}\n type=\"text\"\n id='text-field'\n value={this.value}\n onInput={() => this.handleInput()}\n placeholder={this.placeholder}\n maxlength={this.maxlength}\n class={\n `${this.icon ? 'icon' : \"\"}\n ${this.error ? 'error' : \"\"} \n ${this.size === \"s\" ? \"input-s\" : \"\"}\n ${this.success ? \"success\" : \"\"}`} />\n\n { (this.showDeleteIcon && this.value) && (\n <ifx-icon class=\"delete-icon\" icon=\"cremove16\" onClick={() => this.handleDeleteContent()}></ifx-icon> \n )}\n </div>\n {this.caption && !this.error &&\n <div class={`textInput__bottom-wrapper-caption ${this.disabled} ? disabled : \"\"`}>\n {this.caption}\n </div>}\n {this.error &&\n <div class=\"textInput__bottom-wrapper-caption error\">\n {this.caption}\n </div>}\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as e,g as i}from"./p-6b122987.js";const a=":host{display:block}";const n=a;const o=class{constructor(e){t(this,e);this.tabHeaderChange=s(this,"tabHeaderChange",7);this.header=undefined;this.disabled=undefined;this.icon="";this.iconPosition="left"}componentWillUpdate(){this.tabHeaderChange.emit(this.header)}render(){return e("slot",{key:"159982e12cd57b8ea322152abd5b9bc5e261ba88"})}get el(){return i(this)}};o.style=n;export{o as ifx_tab};
2
- //# sourceMappingURL=p-9ee328a5.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["tabCss","IfxTabStyle0","IfxTab","componentWillUpdate","this","tabHeaderChange","emit","header","render","h","key"],"sources":["src/components/tabs/tab.scss?tag=ifx-tab","src/components/tabs/tab.tsx"],"sourcesContent":[":host {\n display: block;\n}","import { Component, h, Element, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-tab',\n styleUrl: 'tab.scss',\n shadow: false\n})\nexport class IfxTab {\n @Element() el: HTMLElement;\n @Prop() header: string;\n @Prop() disabled: boolean;\n @Prop() icon: string = '';\n @Prop() iconPosition: 'left' | 'right' = 'left';\n @Event() tabHeaderChange: EventEmitter;\n\n componentWillUpdate() { \n this.tabHeaderChange.emit(this.header)\n }\n\n render() {\n return <slot />;\n }\n}"],"mappings":"yDAAA,MAAMA,EAAS,uBACf,MAAAC,EAAeD,E,MCMFE,EAAM,M,kIAIM,G,kBACkB,M,CAGzC,mBAAAC,GACEC,KAAKC,gBAAgBC,KAAKF,KAAKG,O,CAGjC,MAAAC,GACE,OAAOC,EAAA,QAAAC,IAAA,4C","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["radioButtonCss","IfxRadioButtonStyle0","RadioButton","isChecked","this","internalChecked","componentWillLoad","checked","slot","el","innerHTML","hasSlot","handleRadioButtonClick","event","disabled","stopPropagation","inputElement","click","ifxChange","emit","handleChange","target","name","render","h","key","value","class","size","onClick","bind","error","tabIndex","type","hidden","ref","e"],"sources":["src/components/radio-button/radio-button.scss?tag=ifx-radio-button","src/components/radio-button/radio-button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.radioButton__container {\n box-sizing: border-box;\n display: inline-flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace100;\n cursor: pointer;\n font-family: var(--ifx-font-family);\n\n &.m .radioButton__wrapper {\n width: tokens.$ifxSize300;\n height: tokens.$ifxSize300;\n }\n\n .radioButton__wrapper {\n width: tokens.$ifxSize250;\n height: tokens.$ifxSize250;\n position: relative;\n display: block;\n border-radius: 50%;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid #575352;\n\n &:focus {\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: 50%;\n }\n }\n\n .radioButton__wrapper-mark {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: #0A8276;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n border-color: tokens.$ifxColorBaseTransparent;\n }\n\n &:hover {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.disabled {\n background-color: #BFBBBB;\n border-color: #BFBBBB;\n\n &.error {\n\n &:hover,\n &:focus-visible {\n border-color: #CD002F;\n }\n }\n }\n\n &.checked {\n border-color: #0A8276;\n\n &::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 10px;\n height: 10px;\n background-color: #0A8276;\n border-radius: 50%;\n }\n\n &.disabled::after {\n background-color: #BFBBBB;\n }\n\n\n &:hover {\n border-color: tokens.$ifxColorOcean600;\n\n & .radioButton__wrapper-mark {\n background-color: tokens.$ifxColorOcean600;\n }\n }\n\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border-color: #BFBBBB;\n\n &.disabled::after {\n background-color: #BFBBBB;\n }\n\n & .radioButton__wrapper-mark {\n background-color: #BFBBBB;\n }\n }\n }\n\n &.error:not(.disabled) {\n border-color: #CD002F;\n\n &:hover,\n &:focus-visible {\n border-color: #CD002F;\n }\n }\n }\n\n .label {\n display: flex;\n align-items: center;\n height: tokens.$ifxSize250;\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n &.label-m {\n height: tokens.$ifxSize300;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n }\n\n &.disabled {\n color: #BFBBBB;\n }\n\n\n\n &:hover {\n cursor: pointer;\n }\n }\n}","import { Component, h, Prop, Element, State, Event, EventEmitter, Listen, Method } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-radio-button',\n styleUrl: 'radio-button.scss',\n shadow: false,\n formAssociated: false\n})\nexport class RadioButton {\n @Element() el;\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @Prop() error: boolean = false;\n @Prop() size: \"s\" | \"m\" = \"s\";\n @Prop() name: string;\n @Prop() checked: boolean;\n @State() internalChecked: boolean = false;\n @State() hasSlot: boolean = true;\n\n @State() inputElement: HTMLInputElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter;\n\n /**\n * @returns whether the radio button is checked.\n */\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n \n componentWillLoad() {\n if (this.checked) this.internalChecked = this.checked;\n const slot = this.el.innerHTML;\n if (slot) {\n this.hasSlot = true;\n } else this.hasSlot = false;\n }\n\n\n /**\n * Click the hidden input element to let it handle the state\n * and emit ifxChange event.\n */\n handleRadioButtonClick(event: PointerEvent) {\n if (this.disabled) {\n event.stopPropagation();\n return;\n }\n\n this.inputElement.click();\n this.internalChecked = this.inputElement.checked;\n this.ifxChange.emit(this.internalChecked);\n }\n\n /**\n * Listen to all change events.\n * Needed to get informed when another button of the group gets chcked \n * and this one needs to become unchecked. \n * \n * @param event \n */\n @Listen('change', { target: 'window' }) \n handleChange(event: Event) {\n const target = event.target as HTMLInputElement;\n if (target.name === this.name) {\n this.internalChecked = this.inputElement.checked;\n }\n }\n\n render() {\n return (\n <div\n aria-label='a radio button' aria-value={this.value} aria-disabled={this.disabled}\n class={`radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`}\n onClick={this.handleRadioButtonClick.bind(this)}\n >\n <div\n class={`radioButton__wrapper \n ${this.internalChecked ? 'checked' : ''} \n ${this.disabled ? 'disabled' : ''} \n ${this.error ? 'error' : ''}`}\n tabIndex={this.disabled ? -1 : 0}\n >\n {this.internalChecked && <div class=\"radioButton__wrapper-mark\"></div>}\n </div>\n {this.hasSlot && (\n <div class={`label ${this.size === \"m\" ? \"label-m\" : \"\"} ${this.disabled ? 'disabled' : ''}`}>\n <slot />\n </div>\n )}\n <input\n type=\"radio\" \n hidden \n ref={el => this.inputElement = el as HTMLInputElement} \n name={this.name} \n value={this.value}\n checked={this.internalChecked} \n disabled={this.disabled}\n onClick={(e) => e.stopPropagation()}></input>\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAiB,y5FACvB,MAAAC,EAAeD,E,MCQFE,EAAW,M,4EAEM,M,gCAEH,M,UACC,I,gEAGU,M,aACR,K,4BAU5B,eAAMC,GACJ,OAAOC,KAAKC,e,CAGd,iBAAAC,GACE,GAAIF,KAAKG,QAASH,KAAKC,gBAAkBD,KAAKG,QAC9C,MAAMC,EAAOJ,KAAKK,GAAGC,UACrB,GAAIF,EAAM,CACRJ,KAAKO,QAAU,I,MACVP,KAAKO,QAAU,K,CAQxB,sBAAAC,CAAuBC,GACrB,GAAIT,KAAKU,SAAU,CACjBD,EAAME,kBACN,M,CAGFX,KAAKY,aAAaC,QAClBb,KAAKC,gBAAkBD,KAAKY,aAAaT,QACzCH,KAAKc,UAAUC,KAAKf,KAAKC,gB,CAW3B,YAAAe,CAAaP,GACX,MAAMQ,EAASR,EAAMQ,OACrB,GAAIA,EAAOC,OAASlB,KAAKkB,KAAM,CAC7BlB,KAAKC,gBAAkBD,KAAKY,aAAaT,O,EAI7C,MAAAgB,GACE,OACEC,EAAA,OAAAC,IAAA,wDACa,iBAAgB,aAAarB,KAAKsB,MAAK,gBAAiBtB,KAAKU,SACxEa,MAAO,0BAA0BvB,KAAKwB,QAAQxB,KAAKU,SAAW,WAAa,KAC3Ee,QAASzB,KAAKQ,uBAAuBkB,KAAK1B,OAE1CoB,EAAA,OAAAC,IAAA,2CACEE,MAAO,oCACLvB,KAAKC,gBAAkB,UAAY,kBACnCD,KAAKU,SAAW,WAAa,kBAC7BV,KAAK2B,MAAQ,QAAU,KACzBC,SAAU5B,KAAKU,UAAY,EAAI,GAE9BV,KAAKC,iBAAmBmB,EAAA,OAAAC,IAAA,2CAAKE,MAAM,+BAErCvB,KAAKO,SACJa,EAAA,OAAAC,IAAA,2CAAKE,MAAO,SAASvB,KAAKwB,OAAS,IAAM,UAAY,MAAMxB,KAAKU,SAAW,WAAa,MACtFU,EAAA,QAAAC,IAAA,8CAGJD,EAAA,SAAAC,IAAA,2CACEQ,KAAK,QACLC,OAAM,KACNC,IAAK1B,GAAML,KAAKY,aAAeP,EAC/Ba,KAAMlB,KAAKkB,KACXI,MAAOtB,KAAKsB,MACZnB,QAASH,KAAKC,gBACdS,SAAUV,KAAKU,SACfe,QAAUO,GAAMA,EAAErB,oB","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as i,h as t,g as s}from"./p-6b122987.js";function a(e){return Array.from(e.querySelectorAll("ifx-list-entry")).filter((e=>e.getAttribute("value")==="true")).map((e=>({label:e.getAttribute("label"),value:e.getAttribute("value"),type:e.getAttribute("type")})))}const d=".header{display:flex;align-items:flex-start;align-self:stretch;cursor:pointer;border-left:3px solid transparent}.text-and-icon{display:flex;padding:12px 16px 12px 20px;align-items:center;gap:16px;flex:1 0 0}.header.expanded{border-left:3px solid #0A8276}.text{display:flex;align-items:center;gap:8px;flex:1 0 0;color:#1D1D1D;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.hidden{display:none}.accordion{border-bottom:1px solid #EEEDED}.filter-accordion-container{display:flex;padding:8px 16px 16px 20px;flex-direction:column;align-items:flex-start;gap:12px;align-self:stretch;border-left:3px solid #0A8276}::slotted(ifx-filter-entry:nth-child(n+7)){display:none}.link{display:flex;align-items:center;gap:8px}.show-more ::slotted(ifx-filter-entry:nth-child(n+7)){display:block}.show-more .show-more-link{display:none}";const n=d;const c=class{constructor(t){e(this,t);this.ifxFilterAccordionChange=i(this,"ifxFilterAccordionChange",7);this.initialized=false;this.handleCheckedChange=e=>{const i=e.detail.selectedItems;this.count=i.length;this.ifxFilterAccordionChange.emit({filterGroupName:this.filterGroupName,selectedItems:i})};this.toggleAccordion=e=>{e.stopPropagation();this.expanded=!this.expanded};this.expanded=false;this.maxVisibleItems=undefined;this.count=0;this.totalItems=0;this.filterGroupName=""}componentWillLoad(){this.el.addEventListener("ifxListUpdate",this.handleCheckedChange)}componentDidLoad(){if(!this.initialized){const e=a(this.el);this.count=e.length;this.initialized=true}}componentWillUnload(){this.el.removeEventListener("ifxListUpdate",this.handleCheckedChange)}render(){return t("div",{key:"4aeae13a1f2811af139413ae351ab70cfbb8ecaf",class:`accordion ${this.expanded?"expanded":""}`},t("div",{key:"e17ac3e8bc1dce7555e3824b2cb66228c333e6ae",class:`header ${this.expanded?"expanded":""}`,onClick:this.toggleAccordion},t("div",{key:"2ac732ab1951cc921078be5757d01325d1794fd6",class:`text-and-icon ${this.expanded?"expanded":""}`},t("div",{key:"3d5d4ae28ad2cba68d3d8a2096bda53242ac69f1",class:"text"},t("span",{key:"669dc7417d9303199c3cb68ff7a4a0ef4dd8fdab"},this.filterGroupName),t("ifx-number-indicator",{key:"b154ed9d7824f62bd1fc18fcb524739de66c3260"},this.count)),t("ifx-icon",{key:"1c02692efa10b0c4f3af56ce921599a4dc4c5ba0",class:this.expanded?"":"hidden",icon:"minus-16",onClick:this.toggleAccordion}),t("ifx-icon",{key:"be1893204c1771593d25e4ed24cfe7e5876012c8",class:this.expanded?"hidden":"",icon:"plus-16",onClick:this.toggleAccordion}))),this.expanded&&t("div",{key:"7c6e4e04a0e0050b3934184002348432dfe92245",class:"filter-accordion-container"},t("slot",{key:"1ff8e788b37c48a82a65667d24ddecbb8675bcda",name:"list"})))}get el(){return s(this)}};c.style=n;export{c as ifx_filter_accordion};
2
- //# sourceMappingURL=p-a2d7c880.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["getInitiallySelectedItems","el","Array","from","querySelectorAll","filter","entry","getAttribute","map","label","value","type","filterAccordionCss","IfxFilterAccordionStyle0","FilterAccordion","this","initialized","handleCheckedChange","event","selectedItems","detail","count","length","ifxFilterAccordionChange","emit","filterGroupName","toggleAccordion","stopPropagation","expanded","componentWillLoad","addEventListener","componentDidLoad","componentWillUnload","removeEventListener","render","h","key","class","onClick","icon","name"],"sources":["src/components/table-advanced-version/filter-type-group/utils.ts","src/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.scss?tag=ifx-filter-accordion&encapsulation=shadow","src/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.tsx"],"sourcesContent":["// utils.ts\nexport function getInitiallySelectedItems(el: HTMLElement) {\n return Array.from(el.querySelectorAll('ifx-list-entry'))\n\n .filter(entry => entry.getAttribute('value') === 'true')\n .map(entry => {\n return {\n label: entry.getAttribute('label'),\n value: entry.getAttribute('value'),\n type: entry.getAttribute('type')\n };\n });\n}","@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n\n.header {\n display: flex;\n align-items: flex-start;\n align-self: stretch;\n cursor: pointer;\n border-left: 3px solid transparent;\n}\n\n.text-and-icon {\n display: flex;\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200 tokens.$ifxSpace150 tokens.$ifxSpace250;\n align-items: center;\n gap: tokens.$ifxSpace200;\n flex: 1 0 0;\n}\n\n.header.expanded {\n border-left: 3px solid tokens.$ifxColorOcean500;\n}\n\n.text {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1 0 0;\n color: tokens.$ifxColorBaseBlack;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px;\n}\n\n.hidden {\n display: none;\n}\n\n.accordion {\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n}\n\n\n.filter-accordion-container {\n display: flex;\n padding: 8px 16px 16px 20px;\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n align-self: stretch;\n border-left: 3px solid tokens.$ifxColorOcean500;\n}\n\n::slotted(ifx-filter-entry:nth-child(n+7)) {\n display: none;\n}\n\n.link {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.show-more ::slotted(ifx-filter-entry:nth-child(n+7)) {\n display: block;\n}\n\n.show-more .show-more-link {\n display: none;\n}","import { Component, h, Prop, State, Event, EventEmitter, Element } from '@stencil/core';\nimport { getInitiallySelectedItems } from '../utils';\n\n@Component({\n tag: 'ifx-filter-accordion',\n styleUrl: 'filter-accordion.scss',\n shadow: true,\n})\nexport class FilterAccordion {\n private initialized = false;\n @Element() private el: HTMLElement;\n @State() expanded: boolean = false;\n @Prop() maxVisibleItems: number;\n @State() count: number = 0;\n @State() totalItems = 0;\n\n @Prop() filterGroupName = \"\";\n\n @Event() ifxFilterAccordionChange: EventEmitter;\n\n componentWillLoad() {\n this.el.addEventListener('ifxListUpdate', this.handleCheckedChange);\n\n }\n\ncomponentDidLoad() {\n if (!this.initialized) {\n const selectedItems = getInitiallySelectedItems(this.el);\n this.count = selectedItems.length;\n this.initialized = true; // Prevent further execution in future calls\n }\n}\n\n\nhandleCheckedChange = (event: CustomEvent) => {\n const selectedItems = event.detail.selectedItems;\n this.count = selectedItems.length;\n this.ifxFilterAccordionChange.emit({ filterGroupName: this.filterGroupName, selectedItems });\n }\n\n componentWillUnload() {\n this.el.removeEventListener('ifxListUpdate', this.handleCheckedChange);\n }\n\n toggleAccordion = (event: MouseEvent) => {\n event.stopPropagation();\n this.expanded = !this.expanded;\n }\n\n render() {\n return (\n <div class={`accordion ${this.expanded ? 'expanded' : ''}`}>\n <div class={`header ${this.expanded ? 'expanded' : ''}`} onClick={this.toggleAccordion} >\n <div class={`text-and-icon ${this.expanded ? 'expanded' : ''}`}>\n <div class=\"text\">\n <span>{this.filterGroupName}</span>\n <ifx-number-indicator>{this.count}</ifx-number-indicator>\n </div>\n <ifx-icon\n class={this.expanded ? '' : 'hidden'}\n icon=\"minus-16\"\n onClick={this.toggleAccordion}\n ></ifx-icon>\n <ifx-icon\n class={this.expanded ? 'hidden' : ''}\n icon=\"plus-16\"\n onClick={this.toggleAccordion}\n ></ifx-icon>\n </div>\n </div>\n {this.expanded &&\n <div class=\"filter-accordion-container\">\n <slot name=\"list\"></slot>\n </div>\n }\n </div>\n );\n }\n}"],"mappings":"kEACgBA,EAA0BC,GACvC,OAAOC,MAAMC,KAAKF,EAAGG,iBAAiB,mBAEpCC,QAAOC,GAASA,EAAMC,aAAa,WAAa,SAChDC,KAAIF,IACI,CACLG,MAAOH,EAAMC,aAAa,SAC1BG,MAAOJ,EAAMC,aAAa,SAC1BI,KAAML,EAAMC,aAAa,WAGjC,CCZA,MAAMK,EAAqB,u0BAC3B,MAAAC,EAAeD,E,MCOFE,EAAe,M,4FAClBC,KAAAC,YAAc,MAyBxBD,KAAAE,oBAAuBC,IACnB,MAAMC,EAAgBD,EAAME,OAAOD,cACnCJ,KAAKM,MAAQF,EAAcG,OAC3BP,KAAKQ,yBAAyBC,KAAK,CAAEC,gBAAiBV,KAAKU,gBAAiBN,iBAAgB,EAO9FJ,KAAAW,gBAAmBR,IACjBA,EAAMS,kBACNZ,KAAKa,UAAYb,KAAKa,QAAQ,E,cAnCH,M,0CAEJ,E,gBACH,E,qBAEI,E,CAI1B,iBAAAC,GACEd,KAAKd,GAAG6B,iBAAiB,gBAAiBf,KAAKE,oB,CAInD,gBAAAc,GACE,IAAKhB,KAAKC,YAAa,CACrB,MAAMG,EAAgBnB,EAA0Be,KAAKd,IACrDc,KAAKM,MAAQF,EAAcG,OAC3BP,KAAKC,YAAc,I,EAWrB,mBAAAgB,GACEjB,KAAKd,GAAGgC,oBAAoB,gBAAiBlB,KAAKE,oB,CAQpD,MAAAiB,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,aAAatB,KAAKa,SAAW,WAAa,MACpDO,EAAA,OAAAC,IAAA,2CAAKC,MAAO,UAAUtB,KAAKa,SAAW,WAAa,KAAMU,QAASvB,KAAKW,iBACrES,EAAA,OAAAC,IAAA,2CAAKC,MAAO,iBAAiBtB,KAAKa,SAAW,WAAa,MACxDO,EAAA,OAAAC,IAAA,2CAAKC,MAAM,QACTF,EAAA,QAAAC,IAAA,4CAAOrB,KAAKU,iBACZU,EAAA,wBAAAC,IAAA,4CAAuBrB,KAAKM,QAE9Bc,EAAA,YAAAC,IAAA,2CACEC,MAAOtB,KAAKa,SAAW,GAAK,SAC5BW,KAAK,WACLD,QAASvB,KAAKW,kBAEhBS,EAAA,YAAAC,IAAA,2CACEC,MAAOtB,KAAKa,SAAW,SAAW,GAClCW,KAAK,UACLD,QAASvB,KAAKW,oBAInBX,KAAKa,UACJO,EAAA,OAAAC,IAAA,2CAAKC,MAAM,8BACTF,EAAA,QAAAC,IAAA,2CAAMI,KAAK,U","ignoreList":[]}