@infineon/infineon-design-system-stencil 30.10.0--canary.1683.fe45f72105a11f62b600b213cc47953ca6da983c.0 → 30.10.0--canary.1690.3d3b622c5283d21417323e397dba5684776ee0fb.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 -39
  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 -33
  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-a6c2cb8b.js → p-b901072e.js} +24 -38
  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 -39
  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-ee39e4ce.entry.js → p-77fbff19.entry.js} +2 -2
  631. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js +2 -0
  632. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js.map +1 -0
  633. package/dist/infineon-design-system-stencil/p-7e8ac88d.entry.js +2 -0
  634. package/dist/infineon-design-system-stencil/p-7e8ac88d.entry.js.map +1 -0
  635. package/dist/infineon-design-system-stencil/p-82992baa.entry.js +2 -0
  636. package/dist/infineon-design-system-stencil/p-82992baa.entry.js.map +1 -0
  637. package/dist/infineon-design-system-stencil/p-84a944d8.entry.js +2 -0
  638. package/dist/infineon-design-system-stencil/p-84a944d8.entry.js.map +1 -0
  639. package/dist/infineon-design-system-stencil/p-85b61d98.entry.js +2 -0
  640. package/dist/infineon-design-system-stencil/{p-58966086.entry.js.map → p-85b61d98.entry.js.map} +1 -1
  641. package/dist/infineon-design-system-stencil/{p-499dba27.entry.js → p-86d7654e.entry.js} +2 -2
  642. package/dist/infineon-design-system-stencil/p-86d7654e.entry.js.map +1 -0
  643. package/dist/infineon-design-system-stencil/p-8c4f7852.entry.js +2 -0
  644. package/dist/infineon-design-system-stencil/p-8c4f7852.entry.js.map +1 -0
  645. package/dist/infineon-design-system-stencil/p-904b3572.entry.js +2 -0
  646. package/dist/infineon-design-system-stencil/p-904b3572.entry.js.map +1 -0
  647. package/dist/infineon-design-system-stencil/p-998b0c29.entry.js +2 -0
  648. package/dist/infineon-design-system-stencil/p-998b0c29.entry.js.map +1 -0
  649. package/dist/infineon-design-system-stencil/{p-c82d6a95.entry.js → p-9adea907.entry.js} +2 -2
  650. package/dist/infineon-design-system-stencil/p-9adea907.entry.js.map +1 -0
  651. package/dist/infineon-design-system-stencil/p-9d56250f.entry.js +2 -0
  652. package/dist/infineon-design-system-stencil/p-9d56250f.entry.js.map +1 -0
  653. package/dist/infineon-design-system-stencil/p-9d99d0f2.entry.js +2 -0
  654. package/dist/infineon-design-system-stencil/p-9d99d0f2.entry.js.map +1 -0
  655. package/dist/infineon-design-system-stencil/p-a0f78ebd.entry.js +2 -0
  656. package/dist/infineon-design-system-stencil/p-a0f78ebd.entry.js.map +1 -0
  657. package/dist/infineon-design-system-stencil/{p-34fb9dca.entry.js → p-a9c13b65.entry.js} +2 -2
  658. package/dist/infineon-design-system-stencil/p-b1b1fa88.entry.js +2 -0
  659. package/dist/infineon-design-system-stencil/{p-53f2ab7f.entry.js.map → p-b1b1fa88.entry.js.map} +1 -1
  660. package/dist/infineon-design-system-stencil/p-b27a47fe.entry.js +2 -0
  661. package/dist/infineon-design-system-stencil/p-b27a47fe.entry.js.map +1 -0
  662. package/dist/infineon-design-system-stencil/p-b4543681.entry.js +2 -0
  663. package/dist/infineon-design-system-stencil/p-b4543681.entry.js.map +1 -0
  664. package/dist/infineon-design-system-stencil/{p-366148e2.entry.js → p-b9ee57be.entry.js} +2 -2
  665. package/dist/infineon-design-system-stencil/p-b9ee57be.entry.js.map +1 -0
  666. package/dist/infineon-design-system-stencil/{p-a116e0d2.entry.js → p-bd7932cc.entry.js} +2 -2
  667. package/dist/infineon-design-system-stencil/p-bd7932cc.entry.js.map +1 -0
  668. package/dist/infineon-design-system-stencil/p-bdbb7e20.entry.js +2 -0
  669. package/dist/infineon-design-system-stencil/p-bdbb7e20.entry.js.map +1 -0
  670. package/dist/infineon-design-system-stencil/p-c2f13236.entry.js +2 -0
  671. package/dist/infineon-design-system-stencil/p-c2f13236.entry.js.map +1 -0
  672. package/dist/infineon-design-system-stencil/p-c63974da.js +3 -0
  673. package/dist/infineon-design-system-stencil/p-c63974da.js.map +1 -0
  674. package/dist/infineon-design-system-stencil/{p-680f8e2c.entry.js → p-cb2bfd10.entry.js} +2 -2
  675. package/dist/infineon-design-system-stencil/p-cde478c3.entry.js +2 -0
  676. package/dist/infineon-design-system-stencil/p-cde478c3.entry.js.map +1 -0
  677. package/dist/infineon-design-system-stencil/{p-3c5a8615.entry.js → p-d46b8d55.entry.js} +2 -2
  678. package/dist/infineon-design-system-stencil/p-d46b8d55.entry.js.map +1 -0
  679. package/dist/infineon-design-system-stencil/{p-6ae18c50.entry.js → p-d93f128c.entry.js} +2 -2
  680. package/dist/infineon-design-system-stencil/p-d93f128c.entry.js.map +1 -0
  681. package/dist/infineon-design-system-stencil/{p-28fb795b.entry.js → p-da6efe6b.entry.js} +2 -2
  682. package/dist/infineon-design-system-stencil/p-e99f2c89.entry.js +2 -0
  683. package/dist/infineon-design-system-stencil/p-e99f2c89.entry.js.map +1 -0
  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-68d90201.js.map +0 -1
  703. package/dist/components/p-7bbdeac1.js.map +0 -1
  704. package/dist/components/p-7e430b83.js.map +0 -1
  705. package/dist/components/p-8eed2f39.js.map +0 -1
  706. package/dist/components/p-9ee4ea24.js.map +0 -1
  707. package/dist/components/p-a6c2cb8b.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-9ee328a5.entry.js +0 -2
  779. package/dist/infineon-design-system-stencil/p-9ee328a5.entry.js.map +0 -1
  780. package/dist/infineon-design-system-stencil/p-a116e0d2.entry.js.map +0 -1
  781. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js +0 -2
  782. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js.map +0 -1
  783. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js +0 -2
  784. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js.map +0 -1
  785. package/dist/infineon-design-system-stencil/p-b5a3fad1.entry.js +0 -2
  786. package/dist/infineon-design-system-stencil/p-bc8a4226.entry.js.map +0 -1
  787. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js +0 -2
  788. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js.map +0 -1
  789. package/dist/infineon-design-system-stencil/p-c1b1b593.entry.js.map +0 -1
  790. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js +0 -2
  791. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js.map +0 -1
  792. package/dist/infineon-design-system-stencil/p-c5daebfa.entry.js.map +0 -1
  793. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js +0 -2
  794. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js.map +0 -1
  795. package/dist/infineon-design-system-stencil/p-c82d6a95.entry.js.map +0 -1
  796. package/dist/infineon-design-system-stencil/p-c8f66bf5.entry.js +0 -2
  797. package/dist/infineon-design-system-stencil/p-c8f66bf5.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
@@ -0,0 +1 @@
1
+ {"version":3,"names":["multiselectCss","IfxMultiselectStyle0","debounce","func","wait","timeout","executedFunction","args","later","clearTimeout","setTimeout","Multiselect","constructor","hostRef","this","batchSize","size","disabled","error","internalError","errorMessage","label","persistentSelectedOptions","placeholder","dropdownOpen","zIndex","currentIndex","isLoading","loadedOptions","filteredOptions","showSearch","showSelectAll","optionCount","optionsProcessed","handleSearch","targetElement","searchTerm","value","toLowerCase","filter","option","includes","handleDocumentClick","event","path","composedPath","dropdownElement","document","removeEventListener","ifxMultiselectIsOpen","emit","updateOptions","loadInitialOptions","internalErrorMessage","fetchOptions","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","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","toggleDropdown","addEventListener","globalZIndex","waitForElement","querySelectorFunc","callback","maxTries","tries","request","requestAnimationFrame","elements","handleKeyDown","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","onScroll","style","toString","type","onInput","icon","textFieldCss","IfxTextFieldStyle0","TextField","caption","required","optional","success","showDeleteIcon","valueWatcher","inputElement","reset","handleDeleteContent","ifxInput","handleInput","query","formResetCallback","setValidity","maxlength"],"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 \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 selectedOptions.push(option);\n }\n } else {\n if (option.children && option.children.length > 0) {\n selectedOptions = selectedOptions.concat(this.collectSelectedOptions(option.children));\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 }\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\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 +1,2 @@
1
- import{r as e,h as t,a as n,g as o}from"./p-6b122987.js";import{c as i}from"./p-5cdc6210.js";const d=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{vertical-align:bottom;display:inline-flex;width:var(--bw, fit-content)}.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0px 16px;gap:8px;color:#FFFFFF;font-weight:600;border-radius:1px;line-height:1.5rem;font-family:var(--ifx-font-family);font-style:normal;text-decoration:none;user-select:none;font-size:1rem;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;width:var(--bw, fit-content)}.btn:not(.disabled){cursor:pointer}.btn.disabled{pointer-events:none}.btn-default{color:#FFFFFF;background-color:#0A8276}.btn-default:disabled,.btn-default.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-default{background-color:#FFFFFF;color:#0A8276;border:1px solid #0A8276}.btn-secondary-default:disabled,.btn-secondary-default.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-default{background-color:transparent;color:#0A8276}.btn-tertiary-default:disabled,.btn-tertiary-default.disabled{color:#BFBBBB;pointer-events:none}.btn-danger{color:#FFFFFF;background-color:#CD002F;border-color:#CD002F}.btn-danger:disabled,.btn-danger.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-danger{background-color:#FFFFFF;color:#CD002F;border:1px solid #CD002F}.btn-secondary-danger:disabled,.btn-secondary-danger.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-danger{background-color:transparent;color:#CD002F}.btn-tertiary-danger:disabled,.btn-tertiary-danger.disabled{background-color:#FFFFFF;color:#BFBBBB;pointer-events:none}.btn-inverse{color:#0A8276;background-color:#FFFFFF}.btn-inverse:disabled,.btn-inverse.disabled{opacity:1;background-color:#FFFFFF;color:#0A8276;pointer-events:none}.btn-secondary-inverse{color:#FFFFFF;border:1px solid #FFFFFF}.btn-secondary-inverse:disabled,.btn-secondary-inverse.disabled{border:1px solid #FFFFFF;color:#FFFFFF;pointer-events:none}.btn-tertiary-inverse{color:#FFFFFF}.btn-tertiary-inverse:disabled,.btn-tertiary-inverse.disabled{color:#FFFFFF;opacity:1;pointer-events:none}.btn ifx-icon:empty{display:none}.btn.btn-xs{font-size:0.875rem;height:32px;line-height:1rem}.btn.btn-s{font-size:0.875rem;height:36px;line-height:1.25rem}.btn.btn-l{font-size:1.25rem;height:48px;line-height:1.75rem}.btn.btn-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-default:not(:disabled,.disabled):hover{background-color:#08665C}.btn.btn-default:not(:disabled,.disabled):active,.btn.btn-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-default:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#08665C}.btn.btn-secondary-default:not(:disabled,.disabled):active,.btn.btn-secondary-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary:not(:disabled,.disabled):hover{background-color:#9C216E}.btn.btn-secondary:not(:disabled,.disabled):active,.btn.btn-secondary:not(:disabled,.disabled).active{background-color:#9C216E}.btn.btn-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-danger:not(:disabled,.disabled):hover{background-color:#A2001E}.btn.btn-danger:not(:disabled,.disabled):active,.btn.btn-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-secondary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-danger:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#A2001E}.btn.btn-secondary-danger:not(:disabled,.disabled):active,.btn.btn-secondary-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-inverse:not(:disabled,.disabled):hover{background-color:#EEEDED}.btn.btn-inverse:not(:disabled,.disabled):active,.btn.btn-inverse:not(:disabled,.disabled).active{background-color:#BFBBBB}.btn.btn-secondary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-secondary-inverse:not(:disabled,.disabled):hover{color:#0A8276;background-color:#EEEDED}.btn.btn-secondary-inverse:not(:disabled,.disabled):active,.btn.btn-secondary-inverse:not(:disabled,.disabled).active{color:#0A8276;background-color:#BFBBBB}.btn.btn-tertiary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):hover{color:#08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):active,.btn.btn-tertiary-default:not(:disabled,.disabled).active{color:#06534B}.btn.btn-tertiary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):hover{color:#A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):active,.btn.btn-tertiary-danger:not(:disabled,.disabled).active{color:#900021}.btn.btn-tertiary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-tertiary-inverse:not(:disabled,.disabled):hover{color:#EEEDED}.btn.btn-tertiary-inverse:not(:disabled,.disabled):active,.btn.btn-tertiary-inverse:not(:disabled,.disabled).active{color:#BFBBBB}';const a=d;const r=class{constructor(t){e(this,t);this.handleClick=e=>{if(this.el.shadowRoot){const t=this.el.closest("form");if(t){e.preventDefault();if(this.type==="reset"){this.resetClickHandler()}else{const e=document.createElement("button");if(this.type){e.type=this.type}e.style.display="none";t.appendChild(e);e.click();e.remove()}}}};this.variant="primary";this.theme="default";this.size="m";this.disabled=false;this.internalHref=undefined;this.href=undefined;this.target="_self";this.type="button";this.fullWidth=false;this.AriaLabel=undefined}setInternalHref(e){this.internalHref=e}async setFocus(){this.focusableElement.focus()}insertNativeButton(){this.nativeButton=document.createElement("button");this.nativeButton.type=this.type;this.nativeButton.style.display="none";this.el.closest("form").appendChild(this.nativeButton)}handleFormAndInternalHref(){if(this.el.closest("form")){if(this.el.href){this.el.internalHref=undefined}this.insertNativeButton()}else{this.internalHref=this.href}}handleButtonWidth(){if(this.fullWidth){this.el.style.setProperty("--bw","100%")}else{this.el.style.setProperty("--bw","fit-content")}}componentWillLoad(){this.handleFormAndInternalHref()}componentWillRender(){this.handleButtonWidth()}resetClickHandler(){const e=this.el.closest("form");const t=e.querySelectorAll("ifx-text-field, ifx-textarea");t.forEach((e=>{e.reset()}))}handleKeyDown(e){if(e.key===" "||e.key==="Enter"&&!this.disabled){this.focusableElement.click()}}handleHostClick(e){if(this.disabled===true){e.stopImmediatePropagation()}}handleFocus(e){if(this.disabled){e.preventDefault();this.focusableElement.blur()}}render(){return t(n,{key:"7c8fba0e57ae1cdfa075d8e165e694a5fc05b763"},t("a",{key:"dd0d98ba6e5277087d390f5e297d445873826478",role:this.href?"link":"button",tabIndex:this.disabled?-1:0,ref:e=>this.focusableElement=e,class:this.getClassNames(),href:!this.disabled?this.internalHref:undefined,target:this.target,onClick:this.handleClick,rel:this.target==="_blank"?"noopener noreferrer":undefined,onFocus:e=>this.handleFocus(e),"aria-disabled":this.disabled?"true":null,"aria-describedby":this.theme==="danger"?"Dangerous action":undefined,"aria-label":this.AriaLabel||undefined},t("slot",{key:"acfbfb434c7b0f8705b31564a15f59f20c854036"})))}getVariantClass(){return`${this.variant}`==="secondary"?`secondary-${this.theme}`:`${this.variant}`==="tertiary"?`tertiary-${this.theme}`:`${this.theme}`}getSizeClass(){if(`${this.size}`==="xs"){return"xs"}else if(`${this.size}`==="s"){return"s"}else if(`${this.size}`==="l"){return"l"}else return""}getClassNames(){return i("btn",this.size&&`btn-${this.getSizeClass()}`,`btn-${this.getVariantClass()}`,this.disabled?"disabled":"")}get el(){return o(this)}static get watchers(){return{href:["setInternalHref"]}}};r.style=a;export{r as ifx_button};
2
- //# sourceMappingURL=p-ce413596.entry.js.map
1
+ import{r as e,h as t,a as n,g as o}from"./p-c63974da.js";import{c as i}from"./p-5cdc6210.js";const d=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{vertical-align:bottom;display:inline-flex;width:var(--bw, fit-content)}.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0px 16px;gap:8px;color:#FFFFFF;font-weight:600;border-radius:1px;line-height:1.5rem;font-family:var(--ifx-font-family);font-style:normal;text-decoration:none;user-select:none;font-size:1rem;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;width:var(--bw, fit-content)}.btn:not(.disabled){cursor:pointer}.btn.disabled{pointer-events:none}.btn-default{color:#FFFFFF;background-color:#0A8276}.btn-default:disabled,.btn-default.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-default{background-color:#FFFFFF;color:#0A8276;border:1px solid #0A8276}.btn-secondary-default:disabled,.btn-secondary-default.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-default{background-color:transparent;color:#0A8276}.btn-tertiary-default:disabled,.btn-tertiary-default.disabled{color:#BFBBBB;pointer-events:none}.btn-danger{color:#FFFFFF;background-color:#CD002F;border-color:#CD002F}.btn-danger:disabled,.btn-danger.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-danger{background-color:#FFFFFF;color:#CD002F;border:1px solid #CD002F}.btn-secondary-danger:disabled,.btn-secondary-danger.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-danger{background-color:transparent;color:#CD002F}.btn-tertiary-danger:disabled,.btn-tertiary-danger.disabled{background-color:#FFFFFF;color:#BFBBBB;pointer-events:none}.btn-inverse{color:#0A8276;background-color:#FFFFFF}.btn-inverse:disabled,.btn-inverse.disabled{opacity:1;background-color:#FFFFFF;color:#0A8276;pointer-events:none}.btn-secondary-inverse{color:#FFFFFF;border:1px solid #FFFFFF}.btn-secondary-inverse:disabled,.btn-secondary-inverse.disabled{border:1px solid #FFFFFF;color:#FFFFFF;pointer-events:none}.btn-tertiary-inverse{color:#FFFFFF}.btn-tertiary-inverse:disabled,.btn-tertiary-inverse.disabled{color:#FFFFFF;opacity:1;pointer-events:none}.btn ifx-icon:empty{display:none}.btn.btn-xs{font-size:0.875rem;height:32px;line-height:1rem}.btn.btn-s{font-size:0.875rem;height:36px;line-height:1.25rem}.btn.btn-l{font-size:1.25rem;height:48px;line-height:1.75rem}.btn.btn-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-default:not(:disabled,.disabled):hover{background-color:#08665C}.btn.btn-default:not(:disabled,.disabled):active,.btn.btn-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-default:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#08665C}.btn.btn-secondary-default:not(:disabled,.disabled):active,.btn.btn-secondary-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary:not(:disabled,.disabled):hover{background-color:#9C216E}.btn.btn-secondary:not(:disabled,.disabled):active,.btn.btn-secondary:not(:disabled,.disabled).active{background-color:#9C216E}.btn.btn-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-danger:not(:disabled,.disabled):hover{background-color:#A2001E}.btn.btn-danger:not(:disabled,.disabled):active,.btn.btn-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-secondary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-danger:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#A2001E}.btn.btn-secondary-danger:not(:disabled,.disabled):active,.btn.btn-secondary-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-inverse:not(:disabled,.disabled):hover{background-color:#EEEDED}.btn.btn-inverse:not(:disabled,.disabled):active,.btn.btn-inverse:not(:disabled,.disabled).active{background-color:#BFBBBB}.btn.btn-secondary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-secondary-inverse:not(:disabled,.disabled):hover{color:#0A8276;background-color:#EEEDED}.btn.btn-secondary-inverse:not(:disabled,.disabled):active,.btn.btn-secondary-inverse:not(:disabled,.disabled).active{color:#0A8276;background-color:#BFBBBB}.btn.btn-tertiary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):hover{color:#08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):active,.btn.btn-tertiary-default:not(:disabled,.disabled).active{color:#06534B}.btn.btn-tertiary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):hover{color:#A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):active,.btn.btn-tertiary-danger:not(:disabled,.disabled).active{color:#900021}.btn.btn-tertiary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-tertiary-inverse:not(:disabled,.disabled):hover{color:#EEEDED}.btn.btn-tertiary-inverse:not(:disabled,.disabled):active,.btn.btn-tertiary-inverse:not(:disabled,.disabled).active{color:#BFBBBB}';const a=d;const r=class{constructor(t){e(this,t);this.variant="primary";this.theme="default";this.size="m";this.disabled=false;this.target="_self";this.type="button";this.fullWidth=false;this.handleClick=e=>{if(this.el.shadowRoot){const t=this.el.closest("form");if(t){e.preventDefault();if(this.type==="reset"){this.resetClickHandler()}else{const e=document.createElement("button");if(this.type){e.type=this.type}e.style.display="none";t.appendChild(e);e.click();e.remove()}}}}}setInternalHref(e){this.internalHref=e}async setFocus(){this.focusableElement.focus()}insertNativeButton(){this.nativeButton=document.createElement("button");this.nativeButton.type=this.type;this.nativeButton.style.display="none";this.el.closest("form").appendChild(this.nativeButton)}handleFormAndInternalHref(){if(this.el.closest("form")){if(this.el.href){this.el.internalHref=undefined}this.insertNativeButton()}else{this.internalHref=this.href}}handleButtonWidth(){if(this.fullWidth){this.el.style.setProperty("--bw","100%")}else{this.el.style.setProperty("--bw","fit-content")}}componentWillLoad(){this.handleFormAndInternalHref()}componentWillRender(){this.handleButtonWidth()}resetClickHandler(){const e=this.el.closest("form");const t=e.querySelectorAll("ifx-text-field, ifx-textarea");t.forEach((e=>{e.reset()}))}handleKeyDown(e){if(e.key===" "||e.key==="Enter"&&!this.disabled){this.focusableElement.click()}}handleHostClick(e){if(this.disabled===true){e.stopImmediatePropagation()}}handleFocus(e){if(this.disabled){e.preventDefault();this.focusableElement.blur()}}render(){return t(n,{key:"7c8fba0e57ae1cdfa075d8e165e694a5fc05b763"},t("a",{key:"dd0d98ba6e5277087d390f5e297d445873826478",role:this.href?"link":"button",tabIndex:this.disabled?-1:0,ref:e=>this.focusableElement=e,class:this.getClassNames(),href:!this.disabled?this.internalHref:undefined,target:this.target,onClick:this.handleClick,rel:this.target==="_blank"?"noopener noreferrer":undefined,onFocus:e=>this.handleFocus(e),"aria-disabled":this.disabled?"true":null,"aria-describedby":this.theme==="danger"?"Dangerous action":undefined,"aria-label":this.AriaLabel||undefined},t("slot",{key:"acfbfb434c7b0f8705b31564a15f59f20c854036"})))}getVariantClass(){return`${this.variant}`==="secondary"?`secondary-${this.theme}`:`${this.variant}`==="tertiary"?`tertiary-${this.theme}`:`${this.theme}`}getSizeClass(){if(`${this.size}`==="xs"){return"xs"}else if(`${this.size}`==="s"){return"s"}else if(`${this.size}`==="l"){return"l"}else return""}getClassNames(){return i("btn",this.size&&`btn-${this.getSizeClass()}`,`btn-${this.getVariantClass()}`,this.disabled?"disabled":"")}get el(){return o(this)}static get watchers(){return{href:["setInternalHref"]}}};r.style=a;export{r as ifx_button};
2
+ //# sourceMappingURL=p-0179cb3c.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["buttonCss","IfxButtonStyle0","Button","constructor","hostRef","this","variant","theme","size","disabled","target","type","fullWidth","handleClick","ev","el","shadowRoot","parentForm","closest","preventDefault","resetClickHandler","fakeButton","document","createElement","style","display","appendChild","click","remove","setInternalHref","newValue","internalHref","setFocus","focusableElement","focus","insertNativeButton","nativeButton","handleFormAndInternalHref","href","undefined","handleButtonWidth","setProperty","componentWillLoad","componentWillRender","formElement","customElements","querySelectorAll","forEach","element","reset","handleKeyDown","key","handleHostClick","event","stopImmediatePropagation","handleFocus","blur","render","h","Host","role","tabIndex","ref","class","getClassNames","onClick","rel","onFocus","AriaLabel","getVariantClass","getSizeClass","classNames"],"sources":["src/components/button/button.scss?tag=ifx-button&encapsulation=shadow","src/components/button/button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n vertical-align: bottom;\n display: inline-flex;\n width: var(--bw, fit-content);\n}\n\n.btn {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: tokens.$ifxSize500;\n padding: 0px tokens.$ifxSpace200;\n gap: tokens.$ifxSpace100;\n color: tokens.$ifxColorBaseWhite;\n font-weight: tokens.$ifxFontWeightSemibold;\n border-radius: tokens.$ifxBorderRadius12;\n line-height: tokens.$ifxLineHeightM;\n font-family: var(--ifx-font-family);\n font-style: normal;\n text-decoration: none;\n user-select: none;\n font-size: tokens.$ifxFontSizeM;\n transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;\n width: var(--bw, fit-content);\n}\n\n.btn:not(.disabled) {\n cursor: pointer;\n}\n\n.btn.disabled {\n pointer-events: none;\n}\n\n.btn-default {\n //default variant=primary; default color=default\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n.btn-secondary-default {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorOcean500;\n border: 1px solid tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary-default {\n background-color: tokens.$ifxColorBaseTransparent;\n color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n\n.btn-danger {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorRed500;\n border-color: tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n.btn-secondary-danger {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorRed500;\n border: 1px solid tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary-danger {\n //combination tertiary + danger not in design\n background-color: tokens.$ifxColorBaseTransparent;\n color: tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-inverse {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n opacity: tokens.$ifxOpacity100;\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorOcean500;\n pointer-events: none;\n }\n}\n\n.btn-secondary-inverse {\n color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n border: 1px solid tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n\n.btn-tertiary-inverse {\n color: tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorBaseWhite;\n opacity: tokens.$ifxOpacity100;\n pointer-events: none;\n\n }\n}\n\n.btn {\n & ifx-icon:empty {\n display: none;\n }\n\n &.btn-xs {\n font-size: tokens.$ifxFontSizeS;\n height: tokens.$ifxSize400;\n line-height: tokens.$ifxLineHeightXs;\n }\n\n &.btn-s {\n font-size: tokens.$ifxFontSizeS;\n height: tokens.$ifxSize450;\n line-height: tokens.$ifxLineHeightS;\n }\n\n // &.btn-m { //default\n // font-size: tokens.$ifxFontSizeM;\n // height: tokens.$ifxSize400;\n // line-height: tokens.$ifxLineHeightM;\n // }\n\n\n &.btn-l {\n font-size: tokens.$ifxFontSizeXl;\n height: tokens.$ifxSize600;\n line-height: tokens.$ifxLineHeightXl;\n }\n\n\n\n &.btn-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-secondary-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-secondary:not(:disabled, .disabled) {\n\n &:hover {\n background-color: tokens.$ifxColorBerry500;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorBerry500;\n }\n }\n\n\n\n &.btn-danger:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorRed700;\n }\n }\n\n &.btn-secondary-danger:not(:disabled, .disabled) {\n\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorRed700;\n }\n }\n\n\n &.btn-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorEngineering300;\n }\n }\n\n &.btn-secondary-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorEngineering300;\n }\n }\n\n\n\n &.btn-tertiary-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean600;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean700;\n }\n\n\n }\n\n\n\n\n\n &.btn-tertiary-danger:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorRed600;\n }\n\n &:hover {\n color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorRed700;\n }\n\n }\n\n\n &.btn-tertiary-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n color: tokens.$ifxColorEngineering200;\n\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorEngineering300;\n }\n }\n}","import { Component, Prop, h, Host, Method, Element, Listen, State, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n \n\n@Component({\n tag: 'ifx-button',\n styleUrl: 'button.scss',\n shadow: true,\n})\nexport class Button {\n @Prop() variant: 'primary' | 'secondary' | 'tertiary' = 'primary';\n @Prop() theme: 'default' | 'danger' | 'inverse' = 'default';\n @Prop() size: string = 'm';\n @Prop() disabled: boolean = false;\n @State() internalHref: string;\n @Prop() href: string;\n @Prop() target: string = '_self';\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n @Prop() fullWidth: boolean = false;\n @Prop() AriaLabel: string;\n @Element() el;\n\n private focusableElement: HTMLElement;\n private nativeButton: HTMLButtonElement | HTMLInputElement;\n\n @Watch('href')\n setInternalHref(newValue: string) {\n this.internalHref = newValue;\n }\n\n @Method()\n async setFocus() {\n this.focusableElement.focus();\n }\n\n insertNativeButton() {\n this.nativeButton = document.createElement('button');\n this.nativeButton.type = this.type;\n this.nativeButton.style.display = 'none';\n this.el.closest('form').appendChild(this.nativeButton);\n }\n\n handleFormAndInternalHref() {\n if (this.el.closest('form')) {\n if (this.el.href) {\n this.el.internalHref = undefined;\n }\n this.insertNativeButton()\n } else {\n this.internalHref = this.href;\n }\n }\n\n handleButtonWidth() {\n if (this.fullWidth) {\n this.el.style.setProperty('--bw', '100%');\n } else {\n this.el.style.setProperty('--bw', 'fit-content');\n }\n }\n\n componentWillLoad() {\n this.handleFormAndInternalHref()\n }\n\n componentWillRender() {\n this.handleButtonWidth()\n }\n\n\n\n handleClick = (ev: Event) => {\n if (this.el.shadowRoot) {\n const parentForm = this.el.closest('form');\n if (parentForm) {\n ev.preventDefault();\n\n if (this.type === 'reset') {\n // If the button type is 'reset', manually reset all custom form fields\n this.resetClickHandler(); //this will reset all ifx-text-fields within a form\n } else {\n const fakeButton = document.createElement('button');\n if (this.type) {\n fakeButton.type = this.type;\n }\n fakeButton.style.display = 'none';\n parentForm.appendChild(fakeButton);\n fakeButton.click();\n fakeButton.remove();\n }\n }\n }\n }\n\n resetClickHandler() {\n const formElement = this.el.closest('form');\n const customElements = formElement.querySelectorAll('ifx-text-field, ifx-textarea');\n customElements.forEach(element => {\n element.reset();\n });\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if ( ev.key === \" \" || ev.key === 'Enter' && !this.disabled) {\n this.focusableElement.click();\n }\n }\n\n @Listen('click', { capture: true })\n handleHostClick(event: Event) {\n if (this.disabled === true) {\n event.stopImmediatePropagation();\n }\n }\n\n handleFocus(event: FocusEvent) {\n if (this.disabled) {\n event.preventDefault();\n this.focusableElement.blur();\n }\n }\n\n render() {\n return (\n <Host>\n <a\n role={this.href ? 'link' : 'button'}\n tabIndex={this.disabled ? -1 : 0}\n ref={(el) => (this.focusableElement = el)}\n class={this.getClassNames()}\n href={!this.disabled ? this.internalHref : undefined}\n target={this.target}\n onClick={this.handleClick}\n rel={this.target === '_blank' ? 'noopener noreferrer' : undefined}\n onFocus={(event) => this.handleFocus(event)}\n aria-disabled={this.disabled ? 'true' : null}\n aria-describedby={this.theme === 'danger' ? 'Dangerous action' : undefined}\n aria-label={this.AriaLabel || undefined}\n >\n <slot></slot>\n </a>\n </Host>\n );\n }\n\n\n getVariantClass() {\n return `${this.variant}` === \"secondary\"\n ? `secondary-${this.theme}`\n : `${this.variant}` === 'tertiary'\n ? `tertiary-${this.theme}`\n : `${this.theme}`;\n }\n\n getSizeClass() {\n if (`${this.size}` === \"xs\") {\n return \"xs\"\n }\n else if (`${this.size}` === \"s\") {\n return \"s\"\n }\n else if (`${this.size}` === \"l\") {\n return \"l\"\n }\n else return \"\";\n }\n\n getClassNames() {\n return classNames(\n 'btn',\n this.size && `btn-${this.getSizeClass()}`,\n `btn-${this.getVariantClass()}`,\n this.disabled ? 'disabled' : ''\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r,h as o}from"./p-c63974da.js";const a=".dropdown-separator{height:1px;background-color:#EEEDED;margin:8px 16px}";const c=a;const s=class{constructor(o){r(this,o)}render(){return o("div",{key:"2c7435f309112c640c3ff68a244d3c663ceb5b7a",class:"dropdown-separator"})}};s.style=c;export{s as ifx_dropdown_separator};
2
+ //# sourceMappingURL=p-04cb8ce1.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,a as o}from"./p-6b122987.js";const r='.ifx-content-switcher-item{all:unset;height:36px;box-sizing:border-box;border-radius:9999px;border:3px solid transparent;padding:7px 20px;font-family:"Source Sans 3";font-weight:600;font-size:14px;line-height:20px;display:flex;justify-content:center;align-items:center;gap:8px;background-color:transparent}.ifx-content-switcher-item.selected{color:#0A8276;background-color:#FFFFFF;border:3px solid #0A8276}.ifx-content-switcher-item:hover{color:#08665C;background-color:#FFFFFF;border:3px solid #08665C;cursor:pointer}.ifx-content-switcher-item:active{color:#08665C;background-color:#FFFFFF;border:3px solid #06534B}.ifx-content-switcher-item:focus{color:#08665C;background-color:#FFFFFF;border:3px solid #08665C}';const c=r;const i=class{constructor(t){e(this,t);this.selected=false;this.value=undefined}render(){return t(o,{key:"99244cbfde12465c294ba0ce760731ba6e88c8db"},t("button",{key:"76e0009bcd1dc452964c03cb10e851321467cec2",class:"ifx-content-switcher-item"+(this.selected?" selected":"")},t("slot",{key:"987a09faed55d3066f1b80740cdbf6b7de571496"})))}};i.style=c;export{i as ifx_content_switcher_item};
2
- //# sourceMappingURL=p-4b21c0e6.entry.js.map
1
+ import{r as e,h as o,a as t}from"./p-c63974da.js";const r='.ifx-content-switcher-item{all:unset;height:36px;box-sizing:border-box;border-radius:9999px;border:3px solid transparent;padding:7px 20px;font-family:"Source Sans 3";font-weight:600;font-size:14px;line-height:20px;display:flex;justify-content:center;align-items:center;gap:8px;background-color:transparent}.ifx-content-switcher-item.selected{color:#0A8276;background-color:#FFFFFF;border:3px solid #0A8276}.ifx-content-switcher-item:hover{color:#08665C;background-color:#FFFFFF;border:3px solid #08665C;cursor:pointer}.ifx-content-switcher-item:active{color:#08665C;background-color:#FFFFFF;border:3px solid #06534B}.ifx-content-switcher-item:focus{color:#08665C;background-color:#FFFFFF;border:3px solid #08665C}';const c=r;const i=class{constructor(o){e(this,o);this.selected=false}render(){return o(t,{key:"99244cbfde12465c294ba0ce760731ba6e88c8db"},o("button",{key:"76e0009bcd1dc452964c03cb10e851321467cec2",class:"ifx-content-switcher-item"+(this.selected?" selected":"")},o("slot",{key:"987a09faed55d3066f1b80740cdbf6b7de571496"})))}};i.style=c;export{i as ifx_content_switcher_item};
2
+ //# sourceMappingURL=p-095df841.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["contentSwitcherItemCss","IfxContentSwitcherItemStyle0","ContentSwitcherItem","constructor","hostRef","this","selected","render","h","Host","key","class"],"sources":["src/components/content-switcher/content-switcher-item.scss?tag=ifx-content-switcher-item&encapsulation=shadow","src/components/content-switcher/content-switcher-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n.ifx-content-switcher-item {\n all: unset;\n\n height: tokens.$ifxSize450;\n box-sizing: border-box;\n border-radius: tokens.$ifxBorderRadiusRound;\n border: 3px solid transparent; // avoid jumping around\n padding: 7px tokens.$ifxSize250;\n\n font-family: tokens.$ifxFontFamilyBody;\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxSize175;\n line-height: 20px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n gap: tokens.$ifxSpace100;\n background-color: transparent;\n\n &.selected {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border: 3px solid tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n background-color: tokens.$ifxColorBaseWhite;\n border: 3px solid tokens.$ifxColorOcean600;\n cursor: pointer;\n }\n\n &:active {\n color: tokens.$ifxColorOcean600;\n background-color: tokens.$ifxColorBaseWhite;\n border: 3px solid tokens.$ifxColorOcean700;\n }\n\n &:focus {\n color: tokens.$ifxColorOcean600;\n background-color: tokens.$ifxColorBaseWhite;\n border: 3px solid tokens.$ifxColorOcean600;\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ifx-content-switcher-item',\n styleUrl: './content-switcher-item.scss',\n shadow: true,\n})\nexport class ContentSwitcherItem {\n @Prop() selected: boolean = false;\n @Prop() value: string;\n\n render() {\n return (\n <Host>\n <button class={'ifx-content-switcher-item' + (this.selected ? ' selected' : '')}>\n <slot></slot>\n </button>\n </Host>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAAyB,4sBAC/B,MAAAC,EAAeD,E,MCMFE,EAAmB,MALhC,WAAAC,CAAAC,G,UAMUC,KAAAC,SAAoB,K,CAG5B,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,UAAAE,IAAA,2CAAQC,MAAO,6BAA+BN,KAAKC,SAAW,YAAc,KAC1EE,EAAA,QAAAE,IAAA,8C","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,h as i,g as t}from"./p-c63974da.js";import{i as a}from"./p-38c8a9b0.js";const o='.container{display:flex;flex-direction:column;gap:10px}.html-wrapper{background:rgb(38, 38, 38);padding:20px;color:white;font-family:monospace;position:sticky;top:0;left:0;z-index:99}.html-wrapper button{position:absolute;right:0px;bottom:0px;background:rgba(0, 0, 0, 0.85);color:#C9CDCF;border:0 none;padding:4px 10px;font-size:0.75rem;font-family:"Nunito Sans";font-weight:700;border-top:1px solid rgba(255, 255, 255, 0.1);border-left:1px solid rgba(255, 255, 255, 0.1);margin-left:-1px;border-radius:4px 0 0 0;cursor:pointer}.html-wrapper .component-name{color:#A8FF60}.html-wrapper .attribute-name{color:rgb(150, 203, 254)}.html-wrapper .attribute-value{color:rgb(180, 116, 221)}.preview__container{box-sizing:border-box;display:flex;align-items:center;padding:2px;flex-wrap:wrap;gap:4px}.preview__container .preview__container-item{display:flex;justify-content:center;align-items:center;border:1px solid #f1f1f1;padding:2px;width:50px;height:50px;position:relative}.preview__container .preview__container-item:active{border-color:#378375}.preview__container .preview__container-item:hover{cursor:pointer}.preview__container .preview__container-item.copied::after{z-index:50;content:"copied!";position:absolute;top:0;left:50px;background-color:#000;color:white;padding:3px;border-radius:4px}';const c=o;const n=class{constructor(i){e(this,i);this.iconsArray=[];this.isCopied=false;this.htmlTag='<ifx-icon icon="calendar-16"></ifx-icon>';this.iconName=`"c-info-24"`}handleCopiedText(){this.isCopied=true;setTimeout((()=>{this.isCopied=false}),2e3)}copyIconText(e){this.htmlTag=`<ifx-icon icon="${e}"></ifx-icon>`;this.iconName=`"${e}"`}copyHtmlString(){const e=`<ifx-icon icon=${this.iconName}></ifx-icon>`;navigator.clipboard.writeText(e);this.handleCopiedText()}componentWillLoad(){for(let e in a){this.iconsArray.push(e)}}render(){return i("div",{key:"1115df3774a76b620e5a03e11bd3ef59e5ff05fd",class:"container"},i("div",{key:"18a2839c3a492c31215bbbb29cbcd3c0fea50bf0",class:"html-wrapper"},i("span",{key:"488ae76fd009a5fa0c9aaf2727deaa33cae3e3a1",class:"html-tag"},"<"),i("span",{key:"b8e95423cc15694f066d47b29dc03f6b41ff82fe",class:"component-name"},"ifx-icon"),i("span",{key:"7b87f22cbb47743521365708561b9f1eba8cdf32",class:"attribute-name"}," icon"),"=",i("span",{key:"13ec8254b12497b899b8960e26edf219205dbc36",class:"attribute-value"},this.iconName),i("span",{key:"6ae1377d4f1ba39b8e59a86da834e783bc343bb9",class:"html-tag"},">"),i("span",{key:"017d823522230476dded7323580c5e288c75cb47",class:"html-tag"},"</"),i("span",{key:"cd9091d4d3de72c0495c17097d0bcce5a9234441",class:"component-name"},"ifx-icon"),i("span",{key:"408b285174e12b46b9e3c2f8e413f5914c8fa62d",class:"html-tag"},">"),i("button",{key:"ce263f21f91373c8bc2f697fc876c72611297f0f",onClick:()=>this.copyHtmlString()},this.isCopied?"Copied":"Copy")),i("div",{key:"400251cc2a3dc9aaa646ad631fd37b142aa83381",class:"preview__container"},this.iconsArray.map(((e,t)=>i("div",{class:`preview__container-item ${this.isCopied&&this.copiedIndex===t?"copied":""}`,onClick:()=>this.copyIconText(e)},i("ifx-icon",{icon:e}))))))}get el(){return t(this)}};n.style=c;export{n as ifx_icons_preview};
2
+ //# sourceMappingURL=p-0acaa8e4.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["iconsPreviewCss","IfxIconsPreviewStyle0","IconsPreview","constructor","hostRef","this","iconsArray","isCopied","htmlTag","iconName","handleCopiedText","setTimeout","copyIconText","icon","copyHtmlString","copiedTag","navigator","clipboard","writeText","componentWillLoad","icons","push","render","h","key","class","onClick","map","index","copiedIndex"],"sources":["src/components/icons-preview/icons-preview.scss?tag=ifx-icons-preview&encapsulation=shadow","src/components/icons-preview/icons-preview.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n.container {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.html-wrapper {\n background: rgb(38, 38, 38);\n padding: 20px;\n color: white;\n font-family: monospace;\n position: sticky;\n top: 0;\n left: 0;\n z-index: 99;\n\n & button {\n position: absolute;\n right: 0px;\n bottom: 0px;\n background: rgba(0, 0, 0, 0.85);\n color: #C9CDCF;\n border: 0 none;\n padding: 4px 10px;\n font-size: tokens.$ifxFontSizeXs;\n font-family: \"Nunito Sans\";\n font-weight: 700;\n border-top: 1px solid rgba(255, 255, 255, .1);\n border-left: 1px solid rgba(255, 255, 255, .1);\n margin-left: -1px;\n border-radius: 4px 0 0 0;\n cursor: pointer;\n }\n\n & .component-name {\n color: #A8FF60;\n }\n\n & .attribute-name {\n color: rgb(150, 203, 254);\n }\n\n & .attribute-value {\n color: rgb(180, 116, 221);\n }\n\n\n}\n\n.preview__container {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n padding: 2px;\n flex-wrap: wrap;\n gap: 4px;\n\n & .preview__container-item {\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid #f1f1f1;\n padding: 2px;\n width: 50px;\n height: 50px;\n position: relative;\n\n &:active {\n border-color: #378375;\n }\n\n &:hover {\n cursor: pointer;\n }\n\n &.copied {\n &::after {\n z-index: 50;\n content: 'copied!';\n position: absolute;\n top: 0;\n left: 50px;\n background-color: #000;\n color: white;\n padding: 3px;\n border-radius: 4px;\n }\n }\n }\n}","import { Component, h, Element, State } from \"@stencil/core\";\nimport { icons } from '@infineon/infineon-icons';\n\n@Component({\n tag: 'ifx-icons-preview',\n styleUrl: './icons-preview.scss',\n shadow: true\n})\n\nexport class IconsPreview {\n @State() iconsArray: string[] = [];\n @State() isCopied: boolean = false;\n @State() copiedIndex: number;\n @State() htmlTag: string = '<ifx-icon icon=\"calendar-16\"></ifx-icon>';\n @State() iconName: string = `\"c-info-24\"`;\n @Element() el;\n\n handleCopiedText() { \n this.isCopied = true;\n setTimeout(() => {\n this.isCopied = false\n }, 2000);\n }\n\n copyIconText(icon) { \n this.htmlTag = `<ifx-icon icon=\"${icon}\"></ifx-icon>`;\n this.iconName = `\"${icon}\"`\n }\n\n copyHtmlString() { \n const copiedTag = `<ifx-icon icon=${this.iconName}></ifx-icon>`;\n navigator.clipboard.writeText(copiedTag);\n this.handleCopiedText()\n }\n\n componentWillLoad() { \n for(let icon in icons) { \n this.iconsArray.push(icon)\n }\n }\n\n render() {\n return (\n <div class='container'>\n <div class='html-wrapper'>\n <span class=\"html-tag\">&lt;</span>\n <span class=\"component-name\">ifx-icon</span>\n <span class=\"attribute-name\"> icon</span>=<span class=\"attribute-value\">{this.iconName}</span>\n <span class=\"html-tag\">&gt;</span>\n <span class=\"html-tag\">&lt;/</span>\n <span class=\"component-name\">ifx-icon</span>\n <span class=\"html-tag\">&gt;</span>\n <button onClick={() => this.copyHtmlString()}>{this.isCopied ? 'Copied' : 'Copy'}</button>\n </div>\n <div class=\"preview__container\">\n {this.iconsArray.map((icon, index) => \n <div class={`preview__container-item ${this.isCopied && this.copiedIndex === index ? 'copied' : \"\"}`} onClick={() => this.copyIconText(icon)}>\n <ifx-icon icon={icon}></ifx-icon>\n </div>)}\n </div>\n </div>\n )\n }\n}"],"mappings":"sFAAA,MAAMA,EAAkB,kxCACxB,MAAAC,EAAeD,E,MCQFE,EAAY,MANzB,WAAAC,CAAAC,G,UAOWC,KAAAC,WAAuB,GACvBD,KAAAE,SAAoB,MAEpBF,KAAAG,QAAkB,2CAClBH,KAAAI,SAAmB,a,CAG5B,gBAAAC,GACEL,KAAKE,SAAW,KAChBI,YAAW,KACTN,KAAKE,SAAW,KAAK,GACpB,I,CAGL,YAAAK,CAAaC,GACXR,KAAKG,QAAU,mBAAmBK,iBAClCR,KAAKI,SAAW,IAAII,I,CAGtB,cAAAC,GACE,MAAMC,EAAY,kBAAkBV,KAAKI,uBACzCO,UAAUC,UAAUC,UAAUH,GAC9BV,KAAKK,kB,CAGP,iBAAAS,GACE,IAAI,IAAIN,KAAQO,EAAO,CACrBf,KAAKC,WAAWe,KAAKR,E,EAIzB,MAAAS,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,aACTF,EAAA,OAAAC,IAAA,2CAAKC,MAAM,gBACTF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,YAAU,KACtBF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,kBAAgB,YAC5BF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,kBAAgB,SAAa,IAACF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,mBAAmBpB,KAAKI,UAC9Ec,EAAA,QAAAC,IAAA,2CAAMC,MAAM,YAAU,KACtBF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,YAAU,MACtBF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,kBAAgB,YAC5BF,EAAA,QAAAC,IAAA,2CAAMC,MAAM,YAAU,KACtBF,EAAA,UAAAC,IAAA,2CAAQE,QAAS,IAAMrB,KAAKS,kBAAmBT,KAAKE,SAAW,SAAW,SAE5EgB,EAAA,OAAAC,IAAA,2CAAKC,MAAM,sBACRpB,KAAKC,WAAWqB,KAAI,CAACd,EAAMe,IAC5BL,EAAA,OAAKE,MAAO,2BAA2BpB,KAAKE,UAAYF,KAAKwB,cAAgBD,EAAQ,SAAW,KAAMF,QAAS,IAAMrB,KAAKO,aAAaC,IACrIU,EAAA,YAAUV,KAAMA,Q","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as t,h as o}from"./p-c63974da.js";const s=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.segment{display:flex;align-items:center;justify-content:center;gap:8px;position:relative;border:1px solid #BFBBBB;border-radius:1px;padding:0 8px 0 8px;height:34px;background-color:#FFFFFF;transition:all 100ms ease;transition-property:color, background;font:600 0.875rem/1.25rem "Source Sans 3"}.segment:focus-visible{color:#FFFFFF;background-color:#0A8276}.segment:hover{color:#FFFFFF;background-color:#08665C;cursor:pointer}.segment:active{background-color:#06534B}.segment.segment--selected{color:#FFFFFF;background-color:#0A8276}.segment.segment--small{height:30px}.segment::after{position:absolute;top:0;left:0;width:100%;height:100%;outline:1px solid #BFBBBB;border-radius:1px;content:""}';const n=s;const i=class{constructor(o){e(this,o);this.segmentSelect=t(this,"segmentSelect",5);this.selected=false}handleSegmentClick(){if(this.selected)return;this.selected=true;this.segmentSelect.emit(this.segmentIndex)}handleSegmentKeyDown(e){if(e.code==="Enter"||e.code==="Space"){if(this.selected)return;this.selected=true;this.segmentSelect.emit(this.segmentIndex)}}render(){return o("div",{key:"82774e43f27d8995c36d7d356780bbe14b76f70c",class:`segment ${this.selected?"segment--selected":""}`,tabIndex:0,onClick:()=>{this.handleSegmentClick()},onKeyDown:e=>{this.handleSegmentKeyDown(e)}},o("ifx-icon",{key:"58ea805311f071bf39562bb043a4ea4e77b6cd57",icon:this.icon})," ",o("slot",{key:"659727a8768c1988b251d795c9a7ae5b9554b1f0"}))}};i.style=n;export{i as ifx_segment};
2
+ //# sourceMappingURL=p-0dbb987b.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["segmentCss","IfxSegmentStyle0","Segment","constructor","hostRef","this","selected","handleSegmentClick","segmentSelect","emit","segmentIndex","handleSegmentKeyDown","event","code","render","h","key","class","tabIndex","onClick","onKeyDown","e","icon"],"sources":["src/components/segmented-control/segment/segment.scss?tag=ifx-segment&encapsulation=shadow","src/components/segmented-control/segment/segment.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.segment {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: tokens.$ifxSize100;\n position: relative;\n\n border: tokens.$ifxBorderRadius12 solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadius12;\n padding: 0 tokens.$ifxSize100 0 tokens.$ifxSize100;\n \n height: 34px;\n\n background-color: tokens.$ifxColorBaseWhite;\n\n transition: all 100ms ease;\n transition-property: color, background;\n \n font: tokens.$ifxBodyBodySemibold04;\n\n &:focus-visible {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean500;\n }\n\n &:hover { \n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean600;\n \n cursor: pointer;\n }\n \n &:active {\n background-color: tokens.$ifxColorOcean700;\n }\n \n &.segment--selected {\n color: tokens.$ifxColorBaseWhite;\n \n background-color: tokens.$ifxColorOcean500;\n }\n\n &.segment--small {\n height: 30px;\n }\n}\n\n.segment::after {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n height: 100%;\n\n outline: tokens.$ifxBorderRadius12 solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadius12;\n\n content: '';\n}","import { h, Component, Event, EventEmitter, Prop } from \"@stencil/core\";\n\n@Component ({\n tag: 'ifx-segment',\n styleUrl: 'segment.scss',\n shadow: true\n})\n\nexport class Segment {\n @Event({ composed: false }) segmentSelect: EventEmitter<number>;\n\n @Prop() icon: string;\n @Prop() segmentIndex: number;\n @Prop({ mutable: true }) selected: boolean = false;\n @Prop() value!: string;\n\n handleSegmentClick() {\n if (this.selected) return;\n this.selected = true;\n this.segmentSelect.emit(this.segmentIndex);\n }\n \n handleSegmentKeyDown(event: KeyboardEvent) {\n if (event.code === 'Enter' || event.code === 'Space') {\n if (this.selected) return;\n this.selected = true;\n this.segmentSelect.emit(this.segmentIndex);\n }\n }\n\n render() {\n return (\n <div class={`segment ${this.selected ? 'segment--selected' : ''}`} \n tabIndex={0}\n onClick={() => {this.handleSegmentClick()}}\n onKeyDown={(e) => {this.handleSegmentKeyDown(e)}}>\n <ifx-icon icon={this.icon}></ifx-icon> <slot />\n </div>\n );\n }\n}"],"mappings":"kDAAA,MAAMA,EAAa,ixBACnB,MAAAC,EAAeD,E,MCOFE,EAAO,MANpB,WAAAC,CAAAC,G,uDAW6BC,KAAAC,SAAoB,K,CAG7C,kBAAAC,GACI,GAAIF,KAAKC,SAAU,OACnBD,KAAKC,SAAW,KAChBD,KAAKG,cAAcC,KAAKJ,KAAKK,a,CAGjC,oBAAAC,CAAqBC,GACjB,GAAIA,EAAMC,OAAS,SAAWD,EAAMC,OAAS,QAAS,CAClD,GAAIR,KAAKC,SAAU,OACnBD,KAAKC,SAAW,KAChBD,KAAKG,cAAcC,KAAKJ,KAAKK,a,EAIrC,MAAAI,GACI,OACIC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,WAAWZ,KAAKC,SAAW,oBAAsB,KACzDY,SAAU,EACVC,QAAS,KAAOd,KAAKE,oBAAoB,EACzCa,UAAYC,IAAOhB,KAAKM,qBAAqBU,EAAE,GAC/CN,EAAA,YAAAC,IAAA,2CAAUM,KAAMjB,KAAKiB,OAAiB,IAACP,EAAA,QAAAC,IAAA,6C","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as e,c as t,h as s,g as a}from"./p-6b122987.js";const i=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.group{display:flex;flex-direction:column;justify-content:space-between;gap:12px}.group__label{font:400 0.75rem/1rem "Source Sans 3"}.group__label:empty{display:none}.group__controls{display:flex;flex-wrap:wrap}.group__controls ::slotted(*){margin-left:-1px;margin-top:-1px}.group__caption{display:flex;align-items:center;gap:8px;font:400 0.75rem/1rem "Source Sans 3"}';const o=i;const n=class{constructor(s){e(this,s);this.ifxChange=t(this,"ifxChange",7);this.selectedValue="";this.caption="";this.label="";this.size="regular"}onSegmentSelect(e){const{previousValue:t,selectedValue:s}=this.unselectPreviousSegment(e.detail);this.selectedValue=s;this.ifxChange.emit({previousValue:t,selectedValue:s})}unselectPreviousSegment(e){let t;let s;const a=this.getSegments();a.forEach((a=>{if(a.selected){if(a.segmentIndex!==e){a.selected=false;t=a.value}else{s=a.value}}}));return{previousValue:t,selectedValue:s}}getSegments(){return this.SegmentedControl.querySelectorAll("ifx-segment")}setActiveSegment(){const e=this.getSegments();let t=false;e.forEach(((e,s)=>{e.segmentIndex=s;if(t){if(e.selected)e.selected=false}else{if(e.selected){t=true;this.selectedValue=e.value}}}));if(!t&&e.length){e[0].selected=true;this.selectedValue=e[0].value}}setSegmentSize(){const e=this.getSegments();e.forEach((e=>{e.shadowRoot.querySelector(".segment").classList.add(`segment--${this.size}`)}))}componentDidLoad(){this.setActiveSegment()}render(){return s("div",{key:"2a980fa0fd18e469c2d92c57c80c62b7dfee30e9","aria-value":this.selectedValue,"aria-label":"segmented control",class:"group"},s("div",{key:"bf202bd9f2a4967c5a5c0cd24013242ad4752a80",class:"group__label"},this.label.trim()),s("div",{key:"89e974d972a4ad903193459e9a65b47c89114ab8",class:"group__controls"},s("slot",{key:"10a57ab800389b4a7ae482c152817486a28ae96f"})),this.caption.trim()&&s("div",{key:"f63a61eabf58e03cc0c4b5bae031965b82cb4f2c",class:"group__caption"},s("ifx-icon",{key:"b758bb66d96d48e795565dbd662f1a2fc3648bfe",icon:"cinfo16"})," ",this.caption.trim()))}componentDidRender(){this.setSegmentSize()}get SegmentedControl(){return a(this)}};n.style=o;export{n as ifx_segmented_control};
2
- //# sourceMappingURL=p-f8d7bbe2.entry.js.map
1
+ import{r as e,c as t,h as s,g as i}from"./p-c63974da.js";const o=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.group{display:flex;flex-direction:column;justify-content:space-between;gap:12px}.group__label{font:400 0.75rem/1rem "Source Sans 3"}.group__label:empty{display:none}.group__controls{display:flex;flex-wrap:wrap}.group__controls ::slotted(*){margin-left:-1px;margin-top:-1px}.group__caption{display:flex;align-items:center;gap:8px;font:400 0.75rem/1rem "Source Sans 3"}';const a=o;const n=class{constructor(s){e(this,s);this.ifxChange=t(this,"ifxChange",7);this.caption="";this.label="";this.size="regular";this.selectedValue=""}onSegmentSelect(e){const{previousValue:t,selectedValue:s}=this.unselectPreviousSegment(e.detail);this.selectedValue=s;this.ifxChange.emit({previousValue:t,selectedValue:s})}unselectPreviousSegment(e){let t;let s;const i=this.getSegments();i.forEach((i=>{if(i.selected){if(i.segmentIndex!==e){i.selected=false;t=i.value}else{s=i.value}}}));return{previousValue:t,selectedValue:s}}getSegments(){return this.SegmentedControl.querySelectorAll("ifx-segment")}setActiveSegment(){const e=this.getSegments();let t=false;e.forEach(((e,s)=>{e.segmentIndex=s;if(t){if(e.selected)e.selected=false}else{if(e.selected){t=true;this.selectedValue=e.value}}}));if(!t&&e.length){e[0].selected=true;this.selectedValue=e[0].value}}setSegmentSize(){const e=this.getSegments();e.forEach((e=>{e.shadowRoot.querySelector(".segment").classList.add(`segment--${this.size}`)}))}componentDidLoad(){this.setActiveSegment()}render(){return s("div",{key:"9fb656fefd8b61e7c563ac77a20a303d40c6f146","aria-value":this.selectedValue,"aria-label":"segmented control",class:"group"},s("div",{key:"de4f8bf1f2404f106ff180167bf4c79abd2b165b",class:"group__label"},this.label.trim()),s("div",{key:"e110c6c98b981142df08e7dda574b2d3e102a19d",class:"group__controls"},s("slot",{key:"3dd13439a68201c2f42104c4853b371c669e18df"})),this.caption.trim()&&s("div",{key:"946fe774c7cf3f9642447b9a8cb0e258d3f9d493",class:"group__caption"},s("ifx-icon",{key:"39f21a9eae4961da05f38d6930bcc373671e9794",icon:"cinfo16"})," ",this.caption.trim()))}componentDidRender(){this.setSegmentSize()}get SegmentedControl(){return i(this)}};n.style=a;export{n as ifx_segmented_control};
2
+ //# sourceMappingURL=p-0df2cba0.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["segmentedControlCss","IfxSegmentedControlStyle0","SegmentedControl","constructor","hostRef","this","caption","label","size","selectedValue","onSegmentSelect","event","previousValue","unselectPreviousSegment","detail","ifxChange","emit","newSelectedIndex","segments","getSegments","forEach","control","selected","segmentIndex","value","querySelectorAll","setActiveSegment","activeSegmentedControlFound","idx","length","setSegmentSize","shadowRoot","querySelector","classList","add","componentDidLoad","render","h","key","class","trim","icon","componentDidRender"],"sources":["src/components/segmented-control/segmented-control.scss?tag=ifx-segmented-control&encapsulation=shadow","src/components/segmented-control/segmented-control.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.group {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n gap: tokens.$ifxSpace150;\n}\n\n.group__label {\n font: tokens.$ifxBodyBody05;\n\n &:empty {\n display: none;\n }\n}\n\n.group__controls {\n display: flex;\n flex-wrap: wrap;\n}\n\n.group__controls ::slotted(*) {\n margin-left: -1px;\n margin-top: -1px;\n}\n\n.group__caption {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n \n font: tokens.$ifxBodyBody05;\n}\n","import { h, Component, Element, Event, EventEmitter, Listen, Prop } from \"@stencil/core\";\n\n@Component ({\n tag: 'ifx-segmented-control',\n styleUrl: 'segmented-control.scss',\n shadow: true\n})\n\nexport class SegmentedControl {\n @Element() SegmentedControl: HTMLIfxSegmentedControlElement;\n\n @Event() ifxChange: EventEmitter<{ previousValue: string, selectedValue: string }>;\n\n @Prop() caption: string = '';\n @Prop() label: string = '';\n @Prop() size: 'regular' | 'small' = 'regular';\n\n @Listen('segmentSelect')\n onSegmentSelect(event: CustomEvent) {\n const { previousValue, selectedValue } = this.unselectPreviousSegment(event.detail);\n this.selectedValue = selectedValue;\n this.ifxChange.emit({ previousValue, selectedValue });\n }\n\n private selectedValue: string = '';\n\n unselectPreviousSegment(newSelectedIndex: number): { previousValue: string, selectedValue: string } {\n let previousValue: string;\n let selectedValue: string;\n\n const segments: NodeList = this.getSegments();\n segments.forEach((control: HTMLIfxSegmentElement) => {\n if (control.selected) {\n if (control.segmentIndex !== newSelectedIndex) {\n control.selected = false;\n previousValue = control.value;\n } else {\n selectedValue = control.value;\n }\n }\n })\n\n return { previousValue, selectedValue };\n }\n\n getSegments(): NodeList {\n return this.SegmentedControl.querySelectorAll('ifx-segment');\n }\n\n setActiveSegment(): void {\n const segments: NodeList = this.getSegments();\n let activeSegmentedControlFound = false;\n segments.forEach((control: HTMLIfxSegmentElement, idx: number) => {\n control.segmentIndex = idx;\n if (activeSegmentedControlFound) {\n if (control.selected) control.selected = false;\n } else {\n if (control.selected) {\n activeSegmentedControlFound = true;\n this.selectedValue = control.value;\n }\n }\n });\n if (!activeSegmentedControlFound && segments.length) {\n (segments[0] as HTMLIfxSegmentElement).selected = true;\n this.selectedValue = (segments[0] as HTMLIfxSegmentElement).value;\n }\n }\n\n\n setSegmentSize(): void {\n const segments: NodeList = this.getSegments();\n segments.forEach((control: HTMLIfxSegmentElement) => {\n control.shadowRoot.querySelector('.segment').classList.add(`segment--${this.size}`);\n });\n }\n\n componentDidLoad() {\n this.setActiveSegment();\n }\n\n render() {\n return (\n <div aria-value={this.selectedValue} aria-label='segmented control' class='group'>\n <div class='group__label'>\n { this.label.trim() }\n </div>\n \n <div class='group__controls'>\n <slot />\n </div>\n \n {\n this.caption.trim() &&\n <div class='group__caption'>\n <ifx-icon icon='cinfo16'></ifx-icon> { this.caption.trim() }\n </div>\n }\n </div>\n );\n }\n\n componentDidRender() {\n this.setSegmentSize();\n }\n}"],"mappings":"yDAAA,MAAMA,EAAsB,0cAC5B,MAAAC,EAAeD,E,MCOFE,EAAgB,MAN7B,WAAAC,CAAAC,G,+CAWYC,KAAAC,QAAkB,GAClBD,KAAAE,MAAgB,GAChBF,KAAAG,KAA4B,UAS5BH,KAAAI,cAAwB,E,CANhC,eAAAC,CAAgBC,GACZ,MAAMC,cAAEA,EAAaH,cAAEA,GAAkBJ,KAAKQ,wBAAwBF,EAAMG,QAC5ET,KAAKI,cAAgBA,EACrBJ,KAAKU,UAAUC,KAAK,CAAEJ,gBAAeH,iB,CAKzC,uBAAAI,CAAwBI,GACpB,IAAIL,EACJ,IAAIH,EAEJ,MAAMS,EAAqBb,KAAKc,cAChCD,EAASE,SAASC,IACd,GAAIA,EAAQC,SAAU,CAClB,GAAID,EAAQE,eAAiBN,EAAkB,CAC3CI,EAAQC,SAAW,MACnBV,EAAgBS,EAAQG,K,KACrB,CACHf,EAAgBY,EAAQG,K,MAKpC,MAAO,CAAEZ,gBAAeH,gB,CAG5B,WAAAU,GACI,OAAOd,KAAKH,iBAAiBuB,iBAAiB,c,CAGlD,gBAAAC,GACI,MAAMR,EAAqBb,KAAKc,cAChC,IAAIQ,EAA8B,MAClCT,EAASE,SAAQ,CAACC,EAAgCO,KAC9CP,EAAQE,aAAeK,EACvB,GAAID,EAA6B,CAC7B,GAAIN,EAAQC,SAAUD,EAAQC,SAAW,K,KACtC,CACH,GAAID,EAAQC,SAAU,CAClBK,EAA8B,KAC9BtB,KAAKI,cAAgBY,EAAQG,K,MAIzC,IAAKG,GAA+BT,EAASW,OAAQ,CAChDX,EAAS,GAA6BI,SAAW,KAClDjB,KAAKI,cAAiBS,EAAS,GAA6BM,K,EAKpE,cAAAM,GACI,MAAMZ,EAAqBb,KAAKc,cAChCD,EAASE,SAASC,IACdA,EAAQU,WAAWC,cAAc,YAAYC,UAAUC,IAAI,YAAY7B,KAAKG,OAAO,G,CAI3F,gBAAA2B,GACI9B,KAAKqB,kB,CAGT,MAAAU,GACI,OACIC,EAAA,OAAAC,IAAA,wDAAiBjC,KAAKI,cAAa,aAAa,oBAAoB8B,MAAM,SACtEF,EAAA,OAAAC,IAAA,2CAAKC,MAAM,gBACLlC,KAAKE,MAAMiC,QAGjBH,EAAA,OAAAC,IAAA,2CAAKC,MAAM,mBACPF,EAAA,QAAAC,IAAA,8CAIAjC,KAAKC,QAAQkC,QACbH,EAAA,OAAAC,IAAA,2CAAKC,MAAM,kBACPF,EAAA,YAAAC,IAAA,2CAAUG,KAAK,YAAqB,IAAGpC,KAAKC,QAAQkC,Q,CAOxE,kBAAAE,GACIrC,KAAKyB,gB","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as e,h as i}from"./p-6b122987.js";const n=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.badge__container{display:inline-flex;justify-content:center;align-items:center;padding:4px 8px;gap:8px;border:1px solid #EEEDED;background-color:#EEEDED;border-radius:100px;font-family:var(--ifx-font-family);font-size:0.875rem;line-height:1.25rem;font-weight:400;color:#1D1D1D}';const o=n;const a=class{constructor(i){e(this,i)}render(){return i("div",{key:"eaa5be7836515fc284e17ed7fb6acfdcc6ce11f1",class:"badge__container"},i("slot",{key:"f00f0415cb6cdfa25ce8e7b0df798f8a98eb2373"}))}};a.style=o;export{a as ifx_badge};
2
- //# sourceMappingURL=p-51980b19.entry.js.map
1
+ import{r as e,h as a}from"./p-c63974da.js";const i=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.badge__container{display:inline-flex;justify-content:center;align-items:center;padding:4px 8px;gap:8px;border:1px solid #EEEDED;background-color:#EEEDED;border-radius:100px;font-family:var(--ifx-font-family);font-size:0.875rem;line-height:1.25rem;font-weight:400;color:#1D1D1D}';const n=i;const o=class{constructor(a){e(this,a)}render(){return a("div",{key:"eaa5be7836515fc284e17ed7fb6acfdcc6ce11f1",class:"badge__container"},a("slot",{key:"f00f0415cb6cdfa25ce8e7b0df798f8a98eb2373"}))}};o.style=n;export{o as ifx_badge};
2
+ //# sourceMappingURL=p-11580775.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as i,c as t,h as e,g as o}from"./p-6b122987.js";const s=":host{position:relative;z-index:1000}.dropdown-menu{display:none;visibility:hidden;flex-direction:column;width:224px;max-height:289px;min-width:224px;overflow-y:auto;background:#FFFFFF;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1019607843);border:1px solid #EEEDED;padding:8px 0px;font-family:var(--ifx-font-family)}.dropdown-menu.small{max-height:266px;max-width:186px;overflow-y:auto}.dropdown-menu.hideTopPadding{padding-top:0px}.dropdown-menu.show{display:flex;visibility:visible}";const d=s;const n=class{constructor(e){i(this,e);this.menuSize=t(this,"menuSize",7);this.ifxDropdownMenuItem=t(this,"ifxDropdownMenuItem",7);this.isOpen=false;this.size="l";this.hideTopPadding=false;this.filteredItems=[]}handleMenuFilter(i){const t=i.detail;this.filterDropdownItems(t)}handleDropdownItemValueEmission(i){this.ifxDropdownMenuItem.emit(i.detail)}filterDropdownItems(i){const t=Array.from(this.el.querySelectorAll("ifx-dropdown-item"));let e,o;let s=i.toUpperCase();for(let i=0;i<t.length;i++){e=t[i];o=e.textContent||e.innerText;if(o.toUpperCase().indexOf(s)>-1){e.setAttribute("hide",false)}else{e.setAttribute("hide",true)}}}componentWillUpdate(){this.menuSize.emit(this.size)}componentWillLoad(){this.filteredItems=Array.from(this.el.querySelectorAll("ifx-dropdown-item"));const i=this.el.querySelector("ifx-search-field");const t=this.el.querySelector("ifx-dropdown-header");if(i||t){this.hideTopPadding=true}else this.hideTopPadding=false}render(){return e("div",{key:"6a0875682a7dbdf9734794347bd64148b4f2c8b5",class:`dropdown-menu \n ${this.isOpen?"show":""} \n ${this.hideTopPadding?"hideTopPadding":""}\n ${this.size==="s"?"small":""}`},e("slot",{key:"0a89ee2b042f28395f977172d003575b1d080611"}))}get el(){return o(this)}};n.style=d;export{n as ifx_dropdown_menu};
2
- //# sourceMappingURL=p-584149bd.entry.js.map
1
+ import{r as i,c as t,h as e,g as o}from"./p-c63974da.js";const s=":host{position:relative;z-index:1000}.dropdown-menu{display:none;visibility:hidden;flex-direction:column;width:224px;max-height:289px;min-width:224px;overflow-y:auto;background:#FFFFFF;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1019607843);border:1px solid #EEEDED;padding:8px 0px;font-family:var(--ifx-font-family)}.dropdown-menu.small{max-height:266px;max-width:186px;overflow-y:auto}.dropdown-menu.hideTopPadding{padding-top:0px}.dropdown-menu.show{display:flex;visibility:visible}";const d=s;const n=class{constructor(e){i(this,e);this.menuSize=t(this,"menuSize",7);this.ifxDropdownMenuItem=t(this,"ifxDropdownMenuItem",7);this.isOpen=false;this.size="l";this.hideTopPadding=false;this.filteredItems=[]}handleMenuFilter(i){const t=i.detail;this.filterDropdownItems(t)}handleDropdownItemValueEmission(i){this.ifxDropdownMenuItem.emit(i.detail)}filterDropdownItems(i){const t=Array.from(this.el.querySelectorAll("ifx-dropdown-item"));let e,o;let s=i.toUpperCase();for(let i=0;i<t.length;i++){e=t[i];o=e.textContent||e.innerText;if(o.toUpperCase().indexOf(s)>-1){e.setAttribute("hide",false)}else{e.setAttribute("hide",true)}}}componentWillUpdate(){this.menuSize.emit(this.size)}componentWillLoad(){this.filteredItems=Array.from(this.el.querySelectorAll("ifx-dropdown-item"));const i=this.el.querySelector("ifx-search-field");const t=this.el.querySelector("ifx-dropdown-header");if(i||t){this.hideTopPadding=true}else this.hideTopPadding=false}render(){return e("div",{key:"6a0875682a7dbdf9734794347bd64148b4f2c8b5",class:`dropdown-menu \n ${this.isOpen?"show":""} \n ${this.hideTopPadding?"hideTopPadding":""}\n ${this.size==="s"?"small":""}`},e("slot",{key:"0a89ee2b042f28395f977172d003575b1d080611"}))}get el(){return o(this)}};n.style=d;export{n as ifx_dropdown_menu};
2
+ //# sourceMappingURL=p-16390b05.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["dropdownMenuCss","IfxDropdownMenuStyle0","DropdownMenu","constructor","hostRef","this","isOpen","size","hideTopPadding","filteredItems","handleMenuFilter","event","searchValue","detail","filterDropdownItems","handleDropdownItemValueEmission","ifxDropdownMenuItem","emit","allItems","Array","from","el","querySelectorAll","dropdownItem","txtValue","query","toUpperCase","i","length","textContent","innerText","indexOf","setAttribute","componentWillUpdate","menuSize","componentWillLoad","searchField","querySelector","dropdownHeader","render","h","key","class"],"sources":["src/components/dropdown/dropdown-menu/dropdown-menu.scss?tag=ifx-dropdown-menu&encapsulation=shadow","src/components/dropdown/dropdown-menu/dropdown-menu.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n:host {\n position: relative;\n z-index: 1000;\n}\n\n.dropdown-menu {\n display: none;\n visibility: hidden;\n flex-direction: column;\n width: 224px;\n max-height: 289px;\n min-width: 224px;\n overflow-y: auto;\n background: tokens.$ifxColorBaseWhite;\n box-shadow: 0px 6px 9px 0px #1d1d1d1a;\n border: 1px solid tokens.$ifxColorEngineering200;\n padding: 8px 0px;\n font-family: var(--ifx-font-family);\n\n &.small {\n max-height: 266px;\n max-width: 186px;\n overflow-y: auto;\n }\n\n &.hideTopPadding {\n padding-top: 0px;\n }\n}\n\n.dropdown-menu.show {\n display: flex;\n visibility: visible;\n}","// dropdown-menu.tsx\nimport { Component, h, Prop, Element, State, Event, EventEmitter, Listen } from \"@stencil/core\";\n\n@Component({\n tag: 'ifx-dropdown-menu',\n styleUrl: 'dropdown-menu.scss',\n shadow: true\n})\n\nexport class DropdownMenu {\n @Prop() isOpen: boolean = false;\n @Prop() size: string = 'l'\n @State() hideTopPadding: boolean = false;\n @Element() el;\n\n @Event() menuSize: EventEmitter;\n @State() filteredItems: HTMLIfxDropdownItemElement[] = [];\n @Event() ifxDropdownMenuItem: EventEmitter<CustomEvent>;\n\n @Listen('ifxInput')\n handleMenuFilter(event: CustomEvent) {\n const searchValue = event.detail;\n this.filterDropdownItems(searchValue)\n }\n\n @Listen('ifxDropdownItem')\n handleDropdownItemValueEmission(event: CustomEvent) {\n this.ifxDropdownMenuItem.emit(event.detail)\n }\n\n filterDropdownItems(searchValue: string) {\n const allItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item'));\n let dropdownItem, txtValue;\n let query = searchValue.toUpperCase()\n\n for (let i = 0; i < allItems.length; i++) {\n dropdownItem = allItems[i];\n txtValue = dropdownItem.textContent || dropdownItem.innerText;\n\n if (txtValue.toUpperCase().indexOf(query) > -1) {\n dropdownItem.setAttribute('hide', false)\n } else {\n dropdownItem.setAttribute('hide', true)\n }\n }\n }\n\n componentWillUpdate() {\n this.menuSize.emit(this.size)\n }\n\n componentWillLoad() {\n this.filteredItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item')) as HTMLIfxDropdownItemElement[];\n const searchField = this.el.querySelector('ifx-search-field')\n const dropdownHeader = this.el.querySelector('ifx-dropdown-header')\n\n if (searchField || dropdownHeader) {\n this.hideTopPadding = true;\n } else this.hideTopPadding = false;\n }\n\n\n render() {\n return (\n <div class={`dropdown-menu \n ${this.isOpen ? 'show' : ''} \n ${this.hideTopPadding ? 'hideTopPadding' : \"\"}\n ${this.size === 's' ? 'small' : \"\"}`\n } >\n <slot />\n </div >\n );\n }\n}"],"mappings":"yDAAA,MAAMA,EAAkB,0eACxB,MAAAC,EAAeD,E,MCQFE,EAAY,MANzB,WAAAC,CAAAC,G,sGAOUC,KAAAC,OAAkB,MAClBD,KAAAE,KAAe,IACdF,KAAAG,eAA0B,MAI1BH,KAAAI,cAA8C,E,CAIvD,gBAAAC,CAAiBC,GACf,MAAMC,EAAcD,EAAME,OAC1BR,KAAKS,oBAAoBF,E,CAI3B,+BAAAG,CAAgCJ,GAC9BN,KAAKW,oBAAoBC,KAAKN,EAAME,O,CAGtC,mBAAAC,CAAoBF,GAClB,MAAMM,EAAWC,MAAMC,KAAKf,KAAKgB,GAAGC,iBAAiB,sBACrD,IAAIC,EAAcC,EAClB,IAAIC,EAAQb,EAAYc,cAExB,IAAK,IAAIC,EAAI,EAAGA,EAAIT,EAASU,OAAQD,IAAK,CACxCJ,EAAeL,EAASS,GACxBH,EAAWD,EAAaM,aAAeN,EAAaO,UAEpD,GAAIN,EAASE,cAAcK,QAAQN,IAAU,EAAG,CAC9CF,EAAaS,aAAa,OAAQ,M,KAC7B,CACLT,EAAaS,aAAa,OAAQ,K,GAKxC,mBAAAC,GACE5B,KAAK6B,SAASjB,KAAKZ,KAAKE,K,CAG1B,iBAAA4B,GACE9B,KAAKI,cAAgBU,MAAMC,KAAKf,KAAKgB,GAAGC,iBAAiB,sBACzD,MAAMc,EAAc/B,KAAKgB,GAAGgB,cAAc,oBAC1C,MAAMC,EAAiBjC,KAAKgB,GAAGgB,cAAc,uBAE7C,GAAID,GAAeE,EAAgB,CACjCjC,KAAKG,eAAiB,I,MACjBH,KAAKG,eAAiB,K,CAI/B,MAAA+B,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAO,yBACVrC,KAAKC,OAAS,OAAS,cACvBD,KAAKG,eAAiB,iBAAmB,aACzCH,KAAKE,OAAS,IAAM,QAAU,MAE9BiC,EAAA,QAAAC,IAAA,6C","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as s,g as e}from"./p-c63974da.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.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:"7baac06946d2ea4b5be00be46cd99039dd2a67af","aria-label":"navigation tabs",class:`tabs ${this.internalOrientation}`},s("ul",{key:"518474ef80c90ef954f3c0fc23acdbec0bcbf3fc",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:"40b9bfd4ef5fe4ccf9601a1a7f71abba828d2050",class:"active-border"})),s("div",{key:"e20214a729692ced82aa6df62112864848035128",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-1c30b34d.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["tabsCss","IfxTabsStyle0","IfxTabs","constructor","hostRef","this","orientation","activeTabIndex","fullWidth","internalActiveTabIndex","internalFocusedTabIndex","tabRefs","tabHeaderRefs","disabledTabs","tabObjects","updateBorderOnWindowResize","updateBorderAndFocus","setActiveAndFocusedTab","index","length","_a","disabled","handleTabHeaderChange","e","tabIndex","target","getAttribute","replace","header","detail","activeTabIndexChanged","newValue","oldValue","componentWillLoad","internalOrientation","toLowerCase","ifxTabChange","emit","previousTab","currentTab","onSlotChange","updateTabStyles","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","setDefaultOrientation","validOrientations","lowercaseOrientation","includes","componentDidLoad","addEventListener","onTabFocus","disconnectedCallback","removeEventListener","componentDidUpdate","updateTabFocusability","focusNextTab","nextIndex","focus","focusPreviousTab","prevIndex","getTabItemClass","isActive","isDisabled","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":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as s}from"./p-c63974da.js";const o=":host{display:inline-block}.rotate{transition:transform 0.2s ease-in-out;transform:rotate(-180deg);margin-top:0em}.icon{margin-top:0em;transition:transform 0.2s ease-in-out}";const i=o;const a=class{constructor(s){t(this,s);this.isOpen=false;this.theme="default";this.size="m";this.hideArrow=false}render(){return s("ifx-button",{key:"4dc468fdf8211511a97d58441059b0ca44bb880c",variant:this.variant,theme:this.theme,size:this.size,disabled:this.disabled,class:"dropdown-trigger-button"},s("slot",{key:"5e77a7b367905623309508c784233784685caf94"}),!this.hideArrow&&s("ifx-icon",{key:"c60c753f1d57a4ab819a680c48fa1664704dc42b",icon:"chevron-down-12",class:`icon${this.isOpen?" rotate":""}`}))}};a.style=i;export{a as ifx_dropdown_trigger_button};
2
+ //# sourceMappingURL=p-1ce3acf6.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["dropdownTriggerButtonCss","IfxDropdownTriggerButtonStyle0","DropdownItem","constructor","hostRef","this","isOpen","theme","size","hideArrow","render","h","key","variant","disabled","class","icon"],"sources":["src/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.scss?tag=ifx-dropdown-trigger-button&encapsulation=shadow","src/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n:host {\n display: inline-block;\n}\n\n.rotate {\n transition: transform 0.2s ease-in-out;\n transform: rotate(-180deg);\n margin-top: 0em;\n}\n\n.icon {\n margin-top: 0em;\n transition: transform 0.2s ease-in-out;\n}\n","// dropdown-trigger-button.tsx\nimport { Component, Prop, h } from \"@stencil/core\";\nimport { IOpenable } from '../IOpenable';\n\n@Component({\n tag: 'ifx-dropdown-trigger-button',\n styleUrl: 'dropdown-trigger-button.scss',\n shadow: true\n})\n\nexport class DropdownItem implements IOpenable {\n @Prop() isOpen: boolean = false;\n\n @Prop() theme: 'default' | 'danger' | 'inverse' = 'default';\n @Prop() variant: 'primary';\n @Prop() size: 's' | 'm' = 'm';\n @Prop() disabled: boolean;\n @Prop() hideArrow: boolean = false;\n\n render() {\n return (\n <ifx-button\n variant={this.variant}\n theme={this.theme}\n size={this.size}\n disabled={this.disabled}\n class=\"dropdown-trigger-button\"\n >\n <slot />\n {!this.hideArrow &&\n <ifx-icon icon=\"chevron-down-12\" class={`icon${this.isOpen ? ' rotate' : ''}`} />\n }\n </ifx-button>\n )\n }\n}"],"mappings":"2CAAA,MAAMA,EAA2B,gLACjC,MAAAC,EAAeD,E,MCSFE,EAAY,MANzB,WAAAC,CAAAC,G,UAOUC,KAAAC,OAAkB,MAElBD,KAAAE,MAA0C,UAE1CF,KAAAG,KAAkB,IAElBH,KAAAI,UAAqB,K,CAE7B,MAAAC,GACE,OACEC,EAAA,cAAAC,IAAA,2CACEC,QAASR,KAAKQ,QACdN,MAAOF,KAAKE,MACZC,KAAMH,KAAKG,KACXM,SAAUT,KAAKS,SACfC,MAAM,2BAENJ,EAAA,QAAAC,IAAA,8CACEP,KAAKI,WACLE,EAAA,YAAAC,IAAA,2CAAUI,KAAK,kBAAkBD,MAAO,OAAOV,KAAKC,OAAS,UAAY,O","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as t,h as s}from"./p-c63974da.js";const i="";const l=i;const h=class{constructor(s){e(this,s);this.ifxFilterSelect=t(this,"ifxFilterSelect",7);this.type="text";this.filterValues=[]}handleTextInputChange(e){const t=e.target;const s=t.value;this.ifxFilterSelect.emit({filterName:this.filterName,filterValues:[s],type:this.type})}handleSingleSelectChange(e){const t=e.detail.value;this.ifxFilterSelect.emit({filterName:this.filterName,filterValues:[t],type:this.type})}handleMultiselectOptionChange(e){this.filterValues=e.detail;this.ifxFilterSelect.emit({filterName:this.filterName,filterValues:this.filterValues,type:this.type})}render(){switch(this.type){case"text":return s("ifx-text-field",{error:false,disabled:false,placeholder:this.placeholder,onIfxInput:e=>this.handleTextInputChange(e)},this.filterLabel);case"single-select":return s("ifx-select",{placeholder:"true","search-enabled":"true","search-placeholder-value":"Search...",onIfxSelect:e=>this.handleSingleSelectChange(e),"ifx-placeholder-value":this.placeholder,"ifx-label":this.filterLabel,"ifx-options":this.options});case"multi-select":return s("ifx-multiselect",{label:this.filterLabel,placeholder:this.placeholder,options:this.options,onIfxSelect:e=>this.handleMultiselectOptionChange(e)});default:return null}}};h.style=l;export{h as ifx_set_filter};
2
+ //# sourceMappingURL=p-1d2f0317.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setFilterCss","IfxSetFilterStyle0","SetFilter","constructor","hostRef","this","type","filterValues","handleTextInputChange","event","target","value","ifxFilterSelect","emit","filterName","handleSingleSelectChange","detail","handleMultiselectOptionChange","render","h","error","disabled","placeholder","onIfxInput","filterLabel","onIfxSelect","options","label"],"sources":["src/components/table-advanced-version/set-filter/set-filter.scss?tag=ifx-set-filter&encapsulation=shadow","src/components/table-advanced-version/set-filter/setFilter.tsx"],"sourcesContent":["/* set-filter.css */\n\n","// SetFilter.tsx\nimport { Component, h, Event, EventEmitter, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'ifx-set-filter',\n styleUrl: 'set-filter.scss',\n shadow: true\n})\nexport class SetFilter {\n @Prop() filterName: string;\n @Prop() filterLabel: string;\n @Prop() placeholder: string;\n @Prop() type: 'text' | 'single-select' | 'multi-select' = 'text';\n @Prop() options: any[] | string;\n @State() filterValues: string[] = [];\n\n @Event() ifxFilterSelect: EventEmitter;\n\n\n handleTextInputChange(event: Event) {\n const target = event.target as HTMLInputElement;\n const value = target.value;\n this.ifxFilterSelect.emit({ filterName: this.filterName, filterValues: [value], type: this.type }); // Emit an array for consistency with the multi select component\n\n }\n\n handleSingleSelectChange(event: CustomEvent) {\n const value = event.detail.value;\n this.ifxFilterSelect.emit({ filterName: this.filterName, filterValues: [value], type: this.type }); // Emit an array for consistency with the multi select component\n }\n\n\n handleMultiselectOptionChange(event: CustomEvent) {\n this.filterValues = event.detail; // Assuming that ifx-multiselect emits an array of selected options\n this.ifxFilterSelect.emit({ filterName: this.filterName, filterValues: this.filterValues, type: this.type });\n }\n\n\n render() {\n switch (this.type) {\n case 'text':\n return (\n <ifx-text-field error={false} disabled={false} placeholder={this.placeholder}\n onIfxInput={event => this.handleTextInputChange(event)}\n >{this.filterLabel}</ifx-text-field>\n );\n case 'single-select':\n return (\n <ifx-select\n placeholder=\"true\"\n search-enabled=\"true\"\n search-placeholder-value=\"Search...\"\n onIfxSelect={event => this.handleSingleSelectChange(event)}\n ifx-placeholder-value={this.placeholder}\n ifx-label={this.filterLabel}\n ifx-options={this.options}\n ></ifx-select>\n );\n case 'multi-select':\n return (\n <ifx-multiselect\n label={this.filterLabel}\n placeholder={this.placeholder}\n options={this.options}\n onIfxSelect={event => this.handleMultiselectOptionChange(event)}\n />\n );\n default:\n return null;\n }\n }\n}\n\n"],"mappings":"kDAAA,MAAMA,EAAe,GACrB,MAAAC,EAAeD,E,MCOFE,EAAS,MALtB,WAAAC,CAAAC,G,2DASUC,KAAAC,KAAkD,OAEjDD,KAAAE,aAAyB,E,CAKlC,qBAAAC,CAAsBC,GACpB,MAAMC,EAASD,EAAMC,OACrB,MAAMC,EAAQD,EAAOC,MACrBN,KAAKO,gBAAgBC,KAAK,CAAEC,WAAYT,KAAKS,WAAYP,aAAc,CAACI,GAAQL,KAAMD,KAAKC,M,CAI7F,wBAAAS,CAAyBN,GACvB,MAAME,EAAQF,EAAMO,OAAOL,MAC3BN,KAAKO,gBAAgBC,KAAK,CAAEC,WAAYT,KAAKS,WAAYP,aAAc,CAACI,GAAQL,KAAMD,KAAKC,M,CAI7F,6BAAAW,CAA8BR,GAC5BJ,KAAKE,aAAeE,EAAMO,OAC1BX,KAAKO,gBAAgBC,KAAK,CAAEC,WAAYT,KAAKS,WAAYP,aAAcF,KAAKE,aAAcD,KAAMD,KAAKC,M,CAIvG,MAAAY,GACE,OAAQb,KAAKC,MACX,IAAK,OACH,OACEa,EAAA,kBAAgBC,MAAO,MAAOC,SAAU,MAAOC,YAAajB,KAAKiB,YAC/DC,WAAYd,GAASJ,KAAKG,sBAAsBC,IAChDJ,KAAKmB,aAEX,IAAK,gBACH,OACEL,EAAA,cACEG,YAAY,OAAM,iBACH,OAAM,2BACI,YACzBG,YAAahB,GAASJ,KAAKU,yBAAyBN,GAAM,wBACnCJ,KAAKiB,YAAW,YAC5BjB,KAAKmB,YAAW,cACdnB,KAAKqB,UAGxB,IAAK,eACH,OACEP,EAAA,mBACEQ,MAAOtB,KAAKmB,YACZF,YAAajB,KAAKiB,YAClBI,QAASrB,KAAKqB,QACdD,YAAahB,GAASJ,KAAKY,8BAA8BR,KAG/D,QACE,OAAO,K","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as r,h as e,a}from"./p-c63974da.js";const s=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:flex;flex-direction:column}.wrapper__label{color:#1D1D1D;font:400 1rem/1.5rem "Source Sans 3"}:host(.wrapper--disabled) .wrapper__label{color:#575352}.wrapper__textarea textarea{border:1px solid #8D8786;border-radius:1px;padding:8px 16px;background-color:#FFFFFF;color:#1D1D1D;font:400 1rem/1.5rem "Source Sans 3";transition:all 100ms ease;transition-property:border-color}.wrapper__textarea textarea:hover{border:1px solid #575352}.wrapper__textarea textarea:focus-within{outline:none;border:1px solid #0A8276}:host(.wrapper--error) .wrapper__textarea textarea{border:1px solid #CD002F}:host(.wrapper--disabled) .wrapper__textarea textarea{border:1px solid #575352;background-color:#EEEDED}.wrapper__caption{color:#1D1D1D;font:400 0.75rem/1rem "Source Sans 3"}:host(.wrapper--error) .wrapper__caption{color:#CD002F}:host(.wrapper--disabled) .wrapper__caption{color:#575352}';const i=s;const o=class{constructor(e){t(this,e);this.ifxInput=r(this,"ifxInput",7);if(e.$hostElement$["s-ei"]){this.internals=e.$hostElement$["s-ei"]}else{this.internals=e.$hostElement$.attachInternals();e.$hostElement$["s-ei"]=this.internals}this.inputId=`ifx-textarea-${++l}`;this.disabled=false;this.error=false;this.readOnly=false;this.resize="both";this.wrap="soft"}async reset(){this.resetTextarea()}formResetCallback(){this.resetTextarea();this.internals.setFormValue("")}handleOnInput(t){this.value=t.target.value;this.internals.setFormValue(this.value);this.ifxInput.emit(this.value)}resetTextarea(){this.value="";this.internals.setValidity({});this.internals.setFormValue("")}componentWillLoad(){this.internals.setFormValue(this.value)}render(){var t,r;return e(a,{key:"619d4ea0390f029bb9e972506f0fb657a1115a96",class:`wrapper \n\t\t\t\t\t\twrapper--${this.error?"error":""}\n\t\t\t\t\t\twrapper--${this.disabled?"disabled":""}`},e("label",{key:"6699012241de3df0a1b0fb05c43941b9f69945bf",class:"wrapper__label",htmlFor:this.inputId},(t=this.label)===null||t===void 0?void 0:t.trim()),e("div",{key:"5015497c95d4217498ac3fd9b4a486d5373e2665",class:"wrapper__textarea"},e("textarea",{key:"28adf1345e3bc66ccfa7b6bda2c5065186b02d5c","aria-label":"a textarea","aria-value":this.value,"aria-disabled":this.disabled,id:this.inputId,style:{resize:this.resize},name:this.name?this.name:this.inputId,cols:this.cols,rows:this.rows,maxlength:this.maxlength,wrap:this.wrap,disabled:this.disabled,readonly:this.readOnly,placeholder:this.placeholder,value:this.value,onInput:t=>this.handleOnInput(t)})),((r=this.caption)===null||r===void 0?void 0:r.trim())&&e("div",{key:"30bd589c40f5fa3d81c8861ce42a557c949b3b12",class:"wrapper__caption"},this.caption.trim()))}static get formAssociated(){return true}};let l=0;o.style=i;export{o as ifx_textarea};
2
+ //# sourceMappingURL=p-200783c7.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["textareaCss","IfxTextareaStyle0","TextArea","constructor","hostRef","this","inputId","textareaId","disabled","error","readOnly","resize","wrap","reset","resetTextarea","formResetCallback","internals","setFormValue","handleOnInput","e","value","target","ifxInput","emit","setValidity","componentWillLoad","render","h","Host","key","class","htmlFor","_a","label","trim","id","style","name","cols","rows","maxlength","readonly","placeholder","onInput","_b","caption"],"sources":["src/components/textarea/textarea.scss?tag=ifx-textarea&encapsulation=shadow","src/components/textarea/textarea.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n flex-direction: column;\n}\n\n.wrapper__label {\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody03;\n}\n:host(.wrapper--disabled) .wrapper__label {\n color: tokens.$ifxColorEngineering500;\n}\n\n.wrapper__textarea textarea {\n border: 1px solid tokens.$ifxColorEngineering400;\n border-radius: tokens.$ifxSpace12;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n \n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody03;\n \n transition: all 100ms ease;\n transition-property: border-color;\n\n &:hover {\n border: 1px solid tokens.$ifxColorEngineering500;\n }\n \n &:focus-within {\n outline: none;\n border: 1px solid tokens.$ifxColorOcean500;\n }\n}\n:host(.wrapper--error) .wrapper__textarea textarea {\n border: 1px solid tokens.$ifxColorRed500;\n}\n:host(.wrapper--disabled) .wrapper__textarea textarea {\n border: 1px solid tokens.$ifxColorEngineering500;\n\n background-color: tokens.$ifxColorEngineering200;\n}\n\n.wrapper__caption {\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody05;\n}\n:host(.wrapper--error) .wrapper__caption {\n color: tokens.$ifxColorRed500;\n}\n:host(.wrapper--disabled) .wrapper__caption {\n color: tokens.$ifxColorEngineering500;\n}","import { h, AttachInternals, Component, Event, EventEmitter, Host, Method, Prop } from \"@stencil/core\"\n\n@Component({\n\tformAssociated: true,\n\tshadow: true,\n\tstyleUrl: 'textarea.scss',\n\ttag: 'ifx-textarea'\n})\n\nexport class TextArea {\n\n\tprivate inputId: string = `ifx-textarea-${++textareaId}`;\n\n\t@AttachInternals() internals: ElementInternals;\n\n\t@Event() ifxInput: EventEmitter<String>;\n\n\t@Prop() caption: string;\n\t@Prop() cols: number;\n\t@Prop() disabled: boolean = false;\n\t@Prop() error: boolean = false;\n\t@Prop() label: string;\n\t@Prop() maxlength: number;\n\t@Prop() name: string;\n\t@Prop() placeholder: string;\n\t@Prop() readOnly: boolean = false;\n\t@Prop() resize: 'both' | 'horizontal' | 'vertical' | 'none' = 'both';\n\t@Prop() rows: number;\n\t@Prop({ mutable: true }) value: string;\n\t@Prop() wrap: 'hard' | 'soft' | 'off' = 'soft';\n\n\t@Method()\n\tasync reset() {\n\t\tthis.resetTextarea();\n\t}\n\t\n\tformResetCallback(): void {\n\t\tthis.resetTextarea();\n\t\tthis.internals.setFormValue(\"\");\n\t}\n\t\n\thandleOnInput(e: InputEvent): void {\n\t\tthis.value = (e.target as HTMLTextAreaElement).value;\n\t\tthis.internals.setFormValue(this.value);\n\t\tthis.ifxInput.emit(this.value);\n\t}\n\n\tresetTextarea() {\n\t\tthis.value = '';\n\t\tthis.internals.setValidity({});\n\t\tthis.internals.setFormValue('');\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.internals.setFormValue(this.value);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={`wrapper \n\t\t\t\t\t\twrapper--${this.error ? 'error' : ''}\n\t\t\t\t\t\twrapper--${this.disabled ? 'disabled': ''}`}>\n\t\t\t\t<label class='wrapper__label' htmlFor={ this.inputId }>\n\t\t\t\t\t{ this.label?.trim() }\n\t\t\t\t</label>\n\n\t\t\t\t<div class='wrapper__textarea'>\n\t\t\t\t\t<textarea\n\t\t\t\t\t\taria-label='a textarea'\n\t\t\t\t\t\taria-value={ this.value }\n\t\t\t\t\t\taria-disabled={ this.disabled }\n\t\t\t\t\t\tid={ this.inputId }\n\t\t\t\t\t\tstyle={ {resize: this.resize} }\n\t\t\t\t\t\tname={ this.name ? this.name : this.inputId}\n\t\t\t\t\t\tcols={ this.cols }\n\t\t\t\t\t\trows={ this.rows }\n\t\t\t\t\t\tmaxlength={ this.maxlength }\n\t\t\t\t\t\twrap={ this.wrap }\n\t\t\t\t\t\tdisabled={ this.disabled }\n\t\t\t\t\t\treadonly={ this.readOnly }\n\t\t\t\t\t\tplaceholder={ this.placeholder }\n\t\t\t\t\t\tvalue={ this.value }\n\t\t\t\t\t\tonInput={ (e) => this.handleOnInput(e) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{ this.caption?.trim() && (\n\t\t\t\t\t<div class='wrapper__caption'>\n\t\t\t\t\t\t{ this.caption.trim() }\n\t\t\t\t\t</div> \n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n\nlet textareaId = 0;"],"mappings":"oDAAA,MAAMA,EAAc,k9BACpB,MAAAC,EAAeD,E,MCQFE,EAAQ,MAPrB,WAAAC,CAAAC,G,6MASSC,KAAAC,QAAkB,kBAAkBC,IAQpCF,KAAAG,SAAoB,MACpBH,KAAAI,MAAiB,MAKjBJ,KAAAK,SAAoB,MACpBL,KAAAM,OAAsD,OAGtDN,KAAAO,KAAgC,M,CAGxC,WAAMC,GACLR,KAAKS,e,CAGN,iBAAAC,GACCV,KAAKS,gBACLT,KAAKW,UAAUC,aAAa,G,CAG7B,aAAAC,CAAcC,GACbd,KAAKe,MAASD,EAAEE,OAA+BD,MAC/Cf,KAAKW,UAAUC,aAAaZ,KAAKe,OACjCf,KAAKiB,SAASC,KAAKlB,KAAKe,M,CAGzB,aAAAN,GACCT,KAAKe,MAAQ,GACbf,KAAKW,UAAUQ,YAAY,IAC3BnB,KAAKW,UAAUC,aAAa,G,CAG7B,iBAAAQ,GACCpB,KAAKW,UAAUC,aAAaZ,KAAKe,M,CAGlC,MAAAM,G,QACC,OACCC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAO,kCACCzB,KAAKI,MAAQ,QAAU,4BACvBJ,KAAKG,SAAW,WAAY,MACzCmB,EAAA,SAAAE,IAAA,2CAAOC,MAAM,iBAAiBC,QAAU1B,KAAKC,UAC1C0B,EAAA3B,KAAK4B,SAAK,MAAAD,SAAA,SAAAA,EAAEE,QAGfP,EAAA,OAAAE,IAAA,2CAAKC,MAAM,qBACVH,EAAA,YAAAE,IAAA,wDACY,aAAY,aACVxB,KAAKe,MAAK,gBACPf,KAAKG,SACrB2B,GAAK9B,KAAKC,QACV8B,MAAQ,CAACzB,OAAQN,KAAKM,QACtB0B,KAAOhC,KAAKgC,KAAOhC,KAAKgC,KAAOhC,KAAKC,QACpCgC,KAAOjC,KAAKiC,KACZC,KAAOlC,KAAKkC,KACZC,UAAYnC,KAAKmC,UACjB5B,KAAOP,KAAKO,KACZJ,SAAWH,KAAKG,SAChBiC,SAAWpC,KAAKK,SAChBgC,YAAcrC,KAAKqC,YACnBtB,MAAQf,KAAKe,MACbuB,QAAWxB,GAAMd,KAAKa,cAAcC,QAIpCyB,EAAAvC,KAAKwC,WAAO,MAAAD,SAAA,SAAAA,EAAEV,SACfP,EAAA,OAAAE,IAAA,2CAAKC,MAAM,oBACRzB,KAAKwC,QAAQX,Q,2CAQrB,IAAI3B,EAAa,E","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as r,h as i,g as o}from"./p-c63974da.js";const c=':host{display:inline-flex;vertical-align:top}.checkbox__container{box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;padding:0px;gap:8px;font-family:var(--ifx-font-family)}.checkbox__container .checkbox__wrapper{box-sizing:border-box;display:flex;position:relative;justify-content:center;align-items:center;width:20px;height:20px;background-color:#FFFFFF;border:1px solid #575352;border-radius:1px;flex:none;order:0;flex-grow:0;align-self:flex-start}.checkbox__container .checkbox__wrapper.checkbox-m{height:24px;width:24px}.checkbox__container .checkbox__wrapper.error{border-color:#CD002F}.checkbox__container .checkbox__wrapper:focus-visible{border:1px solid #575352;outline:2px solid #0A8276;outline-offset:2px}.checkbox__container .checkbox__wrapper:hover{background-color:#EEEDED;border:1px solid #575352;border-radius:1px;flex:none;order:0;flex-grow:0}.checkbox__container .checkbox__wrapper.disabled{background-color:#BFBBBB;border-color:#BFBBBB;border-radius:1px;flex:none;order:0;flex-grow:0}.checkbox__container .checkbox__wrapper.checked{background-color:#0A8276;border-radius:1px;border-color:transparent;flex:none;order:0;flex-grow:0;color:#FFFFFF}.checkbox__container .checkbox__wrapper.checked.error{background-color:#CD002F}.checkbox__container .checkbox__wrapper.checked:focus-visible{border:1px solid transparent;outline:2px solid #0A8276;outline-offset:2px}.checkbox__container .checkbox__wrapper.checked:hover{background-color:#08665C;border-radius:1px;flex:none;order:0;flex-grow:0}.checkbox__container .checkbox__wrapper.checked.disabled{background:#BFBBBB;border-radius:1px;flex:none;order:0;flex-grow:0}.checkbox__container .checkbox__wrapper.indeterminate:before{content:"";display:block;width:70%;height:2px;background-color:#08665C;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.checkbox__container .label{font-style:normal;font-weight:400;font-size:0.875rem;line-height:1.25rem;color:#1D1D1D;overflow-wrap:break-word;word-wrap:break-word;word-break:break-all;max-width:100%}.checkbox__container .label.label-m{font-size:1rem;line-height:1.5rem}.checkbox__container .label.disabled{color:#BFBBBB}.checkbox__container .checkbox__wrapper:hover,.checkbox__container .label:hover{cursor:pointer}';const t=c;const n=class{constructor(i){e(this,i);this.ifxChange=r(this,"ifxChange",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.disabled=false;this.checked=false;this.error=false;this.size="m";this.indeterminate=false}handleCheckbox(){if(!this.disabled){if(this.inputElement.indeterminate){this.internalChecked=true;this.internalIndeterminate=false}else{this.internalChecked=!this.internalChecked}if(this.internalChecked){if(this.value!==undefined){this.internals.setFormValue(this.value)}else{this.internals.setFormValue("on")}}else{this.internals.setFormValue(null)}this.ifxChange.emit(this.internalChecked)}}async isChecked(){return this.internalChecked}async toggleCheckedState(e){this.internalChecked=e}valueChanged(e,r){if(e!==r){this.internalChecked=e;this.inputElement.checked=this.internalChecked}}indeterminateChanged(e,r){if(e!==r){this.internalIndeterminate=e;this.inputElement.indeterminate=this.internalIndeterminate}}handleKeydown(e){if(e.keyCode===32||e.keyCode===13){this.handleCheckbox();e.preventDefault()}}componentWillLoad(){this.internalChecked=this.checked;this.internalIndeterminate=this.indeterminate}componentDidRender(){this.inputElement.indeterminate=this.internalIndeterminate}formResetCallback(){this.internals.setFormValue(null)}getCheckedClassName(){if(this.error){if(this.internalChecked){return"checked error"}else{return"error"}}else if(this.internalChecked){return"checked"}else return""}render(){const e=this.el.innerHTML;let r=false;if(e){r=true}return i("div",{key:"42d5a5b45e19edb9ad6885c2849ec4909fb587ea",class:"checkbox__container"},i("input",{key:"a924fc885614c78b86d396c50665470e1c281c2f",type:"checkbox",hidden:true,ref:e=>this.inputElement=e,checked:this.internalChecked,onChange:this.handleCheckbox.bind(this),id:"checkbox",value:`${this.value}`,disabled:this.disabled?true:undefined}),i("div",{key:"b39d40cdd76089d90ef783f971b3ff1eedddd16c",tabindex:"0",onClick:this.handleCheckbox.bind(this),onKeyDown:this.handleKeydown.bind(this),role:"checkbox","aria-checked":this.indeterminate?"mixed":this.internalChecked.toString(),"aria-disabled":this.disabled,"aria-labelledby":"label",class:`checkbox__wrapper \n ${this.getCheckedClassName()}\n ${this.size==="m"?"checkbox-m":""}\n ${this.indeterminate?"indeterminate":""}\n ${this.disabled?"disabled":""}`},this.internalChecked&&i("ifx-icon",{key:"c377c5f5a75b99a6b9b9e94b46f585e0957779bf",icon:"check-12","aria-hidden":"true"})),r&&i("div",{key:"eece08029794065f499efe28480f2fc2030dabd9",id:"label",class:`label ${this.size==="m"?"label-m":""} ${this.disabled?"disabled":""} `,onClick:this.handleCheckbox.bind(this)},i("slot",{key:"a317e5c7eedb34e245888b7f24df1cd5de633bf3"})))}static get formAssociated(){return true}get el(){return o(this)}static get watchers(){return{checked:["valueChanged"],indeterminate:["indeterminateChanged"]}}};n.style=t;export{n as ifx_checkbox};
2
+ //# sourceMappingURL=p-23c0b40c.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["checkboxCss","IfxCheckboxStyle0","Checkbox","constructor","hostRef","this","disabled","checked","error","size","indeterminate","handleCheckbox","inputElement","internalChecked","internalIndeterminate","value","undefined","internals","setFormValue","ifxChange","emit","isChecked","toggleCheckedState","newVal","valueChanged","newValue","oldValue","indeterminateChanged","handleKeydown","event","keyCode","preventDefault","componentWillLoad","componentDidRender","formResetCallback","getCheckedClassName","render","slot","el","innerHTML","hasSlot","h","key","class","type","hidden","ref","onChange","bind","id","tabindex","onClick","onKeyDown","role","toString","icon"],"sources":["src/components/checkbox/checkbox.scss?tag=ifx-checkbox&encapsulation=shadow","src/components/checkbox/checkbox.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n\n:host {\n display: inline-flex;\n vertical-align: top;\n}\n\n\n.checkbox__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 font-family: var(--ifx-font-family);\n\n & .checkbox__wrapper {\n box-sizing: border-box;\n display: flex;\n position: relative; //needs to be added for the indeterminate state of the checkbox\n justify-content: center;\n align-items: center;\n width: tokens.$ifxSize250;\n height: tokens.$ifxSize250;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid #575352;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n flex-grow: 0;\n align-self: flex-start;\n\n &.checkbox-m {\n height: tokens.$ifxSize300;\n width: tokens.$ifxSize300;\n }\n\n\n &.error {\n border-color: #CD002F;\n }\n\n &:focus-visible {\n border: 1px solid #575352;\n outline: 2px solid #0A8276;\n outline-offset: 2px;\n }\n\n &:hover {\n background-color: #EEEDED;\n border: 1px solid #575352;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n &.disabled {\n background-color: #BFBBBB;\n border-color: #BFBBBB;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n &.checked {\n background-color: #0A8276;\n border-radius: tokens.$ifxBorderRadius12;\n border-color: tokens.$ifxColorBaseTransparent;\n flex: none;\n order: 0;\n flex-grow: 0;\n color: tokens.$ifxColorBaseWhite;\n\n &.error {\n background-color: #CD002F;\n }\n\n &:focus-visible {\n border: 1px solid transparent;\n outline: 2px solid #0A8276;\n outline-offset: 2px;\n }\n\n &:hover {\n background-color: #08665C;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n &.disabled {\n background: #BFBBBB;\n border-radius: tokens.$ifxBorderRadius12;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n }\n\n &.indeterminate {\n &:before {\n content: \"\";\n display: block;\n width: 70%; // Adjust as needed for the width of the minus sign\n height: 2px; // Adjust for thickness of the minus sign\n background-color: #08665C; // Color of the minus sign\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n }\n }\n\n }\n\n & .label {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorBaseBlack;\n overflow-wrap: break-word;\n word-wrap: break-word;\n word-break: break-all;\n max-width: 100%;\n\n &.label-m {\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n }\n\n &.disabled {\n color: #BFBBBB;\n }\n }\n\n & .checkbox__wrapper,\n & .label {\n &:hover {\n cursor: pointer;\n }\n }\n\n}","import { Component, h, Prop, Element, State, Event, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-checkbox',\n styleUrl: 'checkbox.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class Checkbox {\n private inputElement: HTMLInputElement;\n\n @Element() el;\n @Prop() disabled: boolean = false;\n @Prop() checked: boolean = false;\n @Prop() error: boolean = false;\n @Prop() size: string = 'm';\n @Prop() indeterminate: boolean = false;\n @Prop() value: string;\n @State() internalChecked: boolean;\n @State() internalIndeterminate: boolean;\n\n @AttachInternals() internals: ElementInternals;\n\n @Event({ bubbles: true, composed: true }) ifxChange: EventEmitter;\n\n handleCheckbox() {\n if (!this.disabled) {\n if (this.inputElement.indeterminate) {\n this.internalChecked = true;\n this.internalIndeterminate = false;\n } else {\n this.internalChecked = !this.internalChecked;\n }\n \n if (this.internalChecked) {\n if (this.value !== undefined) {\n this.internals.setFormValue(this.value);\n } else {\n this.internals.setFormValue(\"on\")\n }\n } else {\n this.internals.setFormValue(null)\n }\n this.ifxChange.emit(this.internalChecked);\n }\n }\n\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n\n @Method()\n async toggleCheckedState(newVal: boolean) {\n this.internalChecked = newVal;\n }\n\n @Watch('checked')\n valueChanged(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n this.internalChecked = newValue;\n this.inputElement.checked = this.internalChecked; // update the checkbox's checked property\n }\n }\n\n\n @Watch('indeterminate')\n indeterminateChanged(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n this.internalIndeterminate = newValue;\n this.inputElement.indeterminate = this.internalIndeterminate; // update the checkbox's indeterminate property\n }\n }\n\n handleKeydown(event) {\n // Keycode 32 corresponds to the Space key, 13 corresponds to the Enter key\n if (event.keyCode === 32 || event.keyCode === 13) {\n this.handleCheckbox();\n event.preventDefault(); // prevent the default action when space or enter is pressed\n }\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n this.internalIndeterminate = this.indeterminate;\n }\n\n componentDidRender() {\n this.inputElement.indeterminate = this.internalIndeterminate;\n }\n\n\n /**\n * Callback for form association.\n * Called whenever the form is reset.\n */\n formResetCallback() {\n this.internals.setFormValue(null);\n }\n\n getCheckedClassName() {\n if (this.error) {\n if (this.internalChecked) {\n return \"checked error\"\n } else {\n return \"error\"\n }\n } else if (this.internalChecked) {\n return \"checked\";\n } else return \"\"\n }\n\n render() {\n const slot = this.el.innerHTML;\n let hasSlot = false;\n\n if (slot) {\n hasSlot = true;\n }\n\n return (\n <div class=\"checkbox__container\">\n <input\n type=\"checkbox\"\n hidden\n ref={(el) => (this.inputElement = el)}\n checked={this.internalChecked}\n onChange={this.handleCheckbox.bind(this)} // Listen for changes here\n id='checkbox'\n value={`${this.value}`}\n disabled={this.disabled ? true : undefined}\n />\n\n <div\n tabindex=\"0\"\n onClick={this.handleCheckbox.bind(this)}\n onKeyDown={this.handleKeydown.bind(this)}\n role=\"checkbox\"\n aria-checked={this.indeterminate ? 'mixed' : this.internalChecked.toString()}\n aria-disabled={this.disabled}\n aria-labelledby=\"label\"\n class={`checkbox__wrapper \n ${this.getCheckedClassName()}\n ${this.size === \"m\" ? \"checkbox-m\" : \"\"}\n ${this.indeterminate ? 'indeterminate' : \"\"}\n ${this.disabled ? 'disabled' : \"\"}`}\n >\n {this.internalChecked && <ifx-icon icon=\"check-12\" aria-hidden=\"true\"></ifx-icon>}\n </div>\n {hasSlot &&\n <div id=\"label\" class={`label ${this.size === \"m\" ? \"label-m\" : \"\"} ${this.disabled ? 'disabled' : \"\"} `} onClick={this.handleCheckbox.bind(this)}>\n <slot />\n </div>}\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAc,guEACpB,MAAAC,EAAeD,E,MCSFE,EAAQ,MAPrB,WAAAC,CAAAC,G,+MAWUC,KAAAC,SAAoB,MACpBD,KAAAE,QAAmB,MACnBF,KAAAG,MAAiB,MACjBH,KAAAI,KAAe,IACfJ,KAAAK,cAAyB,K,CASjC,cAAAC,GACE,IAAKN,KAAKC,SAAU,CAClB,GAAID,KAAKO,aAAaF,cAAe,CACnCL,KAAKQ,gBAAkB,KACvBR,KAAKS,sBAAwB,K,KACxB,CACLT,KAAKQ,iBAAmBR,KAAKQ,e,CAG/B,GAAIR,KAAKQ,gBAAiB,CACxB,GAAIR,KAAKU,QAAUC,UAAW,CAC5BX,KAAKY,UAAUC,aAAab,KAAKU,M,KAC5B,CACLV,KAAKY,UAAUC,aAAa,K,MAEzB,CACLb,KAAKY,UAAUC,aAAa,K,CAE9Bb,KAAKc,UAAUC,KAAKf,KAAKQ,gB,EAK7B,eAAMQ,GACJ,OAAOhB,KAAKQ,e,CAId,wBAAMS,CAAmBC,GACvBlB,KAAKQ,gBAAkBU,C,CAIzB,YAAAC,CAAaC,EAAmBC,GAC9B,GAAID,IAAaC,EAAU,CACzBrB,KAAKQ,gBAAkBY,EACvBpB,KAAKO,aAAaL,QAAUF,KAAKQ,e,EAMrC,oBAAAc,CAAqBF,EAAmBC,GACtC,GAAID,IAAaC,EAAU,CACzBrB,KAAKS,sBAAwBW,EAC7BpB,KAAKO,aAAaF,cAAgBL,KAAKS,qB,EAI3C,aAAAc,CAAcC,GAEZ,GAAIA,EAAMC,UAAY,IAAMD,EAAMC,UAAY,GAAI,CAChDzB,KAAKM,iBACLkB,EAAME,gB,EAIV,iBAAAC,GACE3B,KAAKQ,gBAAkBR,KAAKE,QAC5BF,KAAKS,sBAAwBT,KAAKK,a,CAGpC,kBAAAuB,GACE5B,KAAKO,aAAaF,cAAgBL,KAAKS,qB,CAQzC,iBAAAoB,GACE7B,KAAKY,UAAUC,aAAa,K,CAG9B,mBAAAiB,GACE,GAAI9B,KAAKG,MAAO,CACd,GAAIH,KAAKQ,gBAAiB,CACxB,MAAO,e,KACF,CACL,MAAO,O,OAEJ,GAAIR,KAAKQ,gBAAiB,CAC/B,MAAO,S,MACF,MAAO,E,CAGhB,MAAAuB,GACE,MAAMC,EAAOhC,KAAKiC,GAAGC,UACrB,IAAIC,EAAU,MAEd,GAAIH,EAAM,CACRG,EAAU,I,CAGZ,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,uBACTF,EAAA,SAAAC,IAAA,2CACEE,KAAK,WACLC,OAAM,KACNC,IAAMR,GAAQjC,KAAKO,aAAe0B,EAClC/B,QAASF,KAAKQ,gBACdkC,SAAU1C,KAAKM,eAAeqC,KAAK3C,MACnC4C,GAAG,WACHlC,MAAO,GAAGV,KAAKU,QACfT,SAAUD,KAAKC,SAAW,KAAOU,YAGnCyB,EAAA,OAAAC,IAAA,2CACEQ,SAAS,IACTC,QAAS9C,KAAKM,eAAeqC,KAAK3C,MAClC+C,UAAW/C,KAAKuB,cAAcoB,KAAK3C,MACnCgD,KAAK,WAAU,eACDhD,KAAKK,cAAgB,QAAUL,KAAKQ,gBAAgByC,WAAU,gBAC7DjD,KAAKC,SAAQ,kBACZ,QAChBqC,MAAO,iCACLtC,KAAK8B,kCACP9B,KAAKI,OAAS,IAAM,aAAe,eACnCJ,KAAKK,cAAgB,gBAAkB,eACvCL,KAAKC,SAAW,WAAa,MAE5BD,KAAKQ,iBAAmB4B,EAAA,YAAAC,IAAA,2CAAUa,KAAK,WAAU,cAAc,UAEjEf,GACCC,EAAA,OAAAC,IAAA,2CAAKO,GAAG,QAAQN,MAAO,SAAStC,KAAKI,OAAS,IAAM,UAAY,MAAMJ,KAAKC,SAAW,WAAa,MAAO6C,QAAS9C,KAAKM,eAAeqC,KAAK3C,OAC1IoC,EAAA,QAAAC,IAAA,8C","ignoreList":[]}