@infineon/infineon-design-system-stencil 30.9.3--canary.1496.9fc4de9852ba9ec2e36ce3e0ff89d8fddb5acdc5.0 → 30.9.3--canary.1679.8d0c83c3f0040ae0386585c5203298c7d94911f3.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 (857) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +2 -1
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-alert.cjs.entry.js +49 -0
  4. package/dist/cjs/ifx-alert.cjs.entry.js.map +1 -0
  5. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-basic-table.cjs.entry.js +7 -3
  7. package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +3 -1
  9. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +2 -1
  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 +11 -8
  14. package/dist/cjs/ifx-button.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-card-headline.cjs.entry.js +3 -1
  16. package/dist/cjs/ifx-card-headline.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ifx-card-image.cjs.entry.js +4 -1
  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 +2 -1
  22. package/dist/cjs/ifx-card-text.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ifx-card.cjs.entry.js +5 -1
  24. package/dist/cjs/ifx-card.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ifx-checkbox.cjs.entry.js +4 -1
  26. package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ifx-chip_3.cjs.entry.js +7 -6
  28. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +2 -1
  30. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ifx-content-switcher.cjs.entry.js +3 -2
  32. package/dist/cjs/ifx-content-switcher.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ifx-date-picker.cjs.entry.js +7 -1
  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 +2 -1
  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 +3 -1
  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 +8 -7
  49. package/dist/cjs/ifx-filter-accordion.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ifx-filter-bar.cjs.entry.js +7 -6
  51. package/dist/cjs/ifx-filter-bar.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ifx-filter-search.cjs.entry.js +7 -3
  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 +6 -1
  60. package/dist/cjs/ifx-icon-button.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ifx-icon.cjs.entry.js +2 -1
  62. package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ifx-icons-preview.cjs.entry.js +2 -1
  64. package/dist/cjs/ifx-icons-preview.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ifx-link.cjs.entry.js +2 -1
  66. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ifx-list-entry.cjs.entry.js +5 -2
  68. package/dist/cjs/ifx-list-entry.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ifx-list.cjs.entry.js +10 -9
  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.cjs.entry.js → ifx-multiselect_2.cjs.entry.js} +93 -20
  74. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -0
  75. package/dist/cjs/ifx-navbar-item.cjs.entry.js +2 -1
  76. package/dist/cjs/ifx-navbar-item.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +5 -5
  78. package/dist/cjs/ifx-navbar-profile.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ifx-navbar.cjs.entry.js +2 -1
  80. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ifx-notification.cjs.entry.js +4 -1
  82. package/dist/cjs/ifx-notification.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ifx-number-indicator.cjs.entry.js +1 -1
  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-overview-table.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ifx-progress-bar.cjs.entry.js +4 -2
  88. package/dist/cjs/ifx-progress-bar.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ifx-radio-button.cjs.entry.js +7 -3
  90. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ifx-search-bar.cjs.entry.js +7 -4
  92. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ifx-search-field.cjs.entry.js +11 -11
  94. package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ifx-segment.cjs.entry.js +5 -2
  96. package/dist/cjs/ifx-segment.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ifx-segmented-control.cjs.entry.js +4 -4
  98. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ifx-select.cjs.entry.js +47 -5
  100. package/dist/cjs/ifx-select.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ifx-set-filter.cjs.entry.js +5 -1
  102. package/dist/cjs/ifx-set-filter.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +5 -3
  104. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  106. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  107. package/dist/cjs/ifx-sidebar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ifx-slider.cjs.entry.js +10 -3
  109. package/dist/cjs/ifx-slider.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ifx-spinner.cjs.entry.js +35 -0
  111. package/dist/cjs/ifx-spinner.cjs.entry.js.map +1 -0
  112. package/dist/cjs/ifx-status.cjs.entry.js +3 -2
  113. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ifx-step.cjs.entry.js +6 -5
  115. package/dist/cjs/ifx-step.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ifx-stepper.cjs.entry.js +4 -3
  117. package/dist/cjs/ifx-stepper.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ifx-switch.cjs.entry.js +3 -2
  119. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ifx-tab.cjs.entry.js +4 -2
  121. package/dist/cjs/ifx-tab.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ifx-table.cjs.entry.js +10 -6
  123. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ifx-tabs.cjs.entry.js +4 -3
  125. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ifx-tag.cjs.entry.js +3 -2
  127. package/dist/cjs/ifx-tag.cjs.entry.js.map +1 -1
  128. package/dist/cjs/ifx-textarea.cjs.entry.js +11 -3
  129. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  130. package/dist/cjs/ifx-tooltip.cjs.entry.js +12 -11
  131. package/dist/cjs/ifx-tooltip.cjs.entry.js.map +1 -1
  132. package/dist/cjs/{index-76f7fe32.js → index-af3b4f6c.js} +116 -153
  133. package/dist/cjs/index-af3b4f6c.js.map +1 -0
  134. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  135. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  136. package/dist/cjs/loader.cjs.js +2 -2
  137. package/dist/collection/collection-manifest.json +1 -3
  138. package/dist/collection/components/accordion/accordion.js.map +1 -1
  139. package/dist/collection/components/accordion/accordionItem.js +1 -0
  140. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  141. package/dist/collection/components/alert/alert.js +5 -3
  142. package/dist/collection/components/alert/alert.js.map +1 -1
  143. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +2 -0
  144. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  145. package/dist/collection/components/breadcrumb/breadcrumb-item.js +1 -0
  146. package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +1 -1
  147. package/dist/collection/components/button/button.js +10 -7
  148. package/dist/collection/components/button/button.js.map +1 -1
  149. package/dist/collection/components/card/card-headline/card-headline.js +4 -0
  150. package/dist/collection/components/card/card-headline/card-headline.js.map +1 -1
  151. package/dist/collection/components/card/card-image/card-image.js +5 -0
  152. package/dist/collection/components/card/card-image/card-image.js.map +1 -1
  153. package/dist/collection/components/card/card-text/card-text.js +3 -0
  154. package/dist/collection/components/card/card-text/card-text.js.map +1 -1
  155. package/dist/collection/components/card/card.js +4 -0
  156. package/dist/collection/components/card/card.js.map +1 -1
  157. package/dist/collection/components/checkbox/checkbox.js +3 -0
  158. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  159. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  160. package/dist/collection/components/chip/chip.js +1 -0
  161. package/dist/collection/components/chip/chip.js.map +1 -1
  162. package/dist/collection/components/content-switcher/content-switcher-item.js +1 -0
  163. package/dist/collection/components/content-switcher/content-switcher-item.js.map +1 -1
  164. package/dist/collection/components/content-switcher/content-switcher.js +2 -1
  165. package/dist/collection/components/content-switcher/content-switcher.js.map +1 -1
  166. package/dist/collection/components/date-picker/date-picker.js +6 -0
  167. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  168. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js +1 -0
  169. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js.map +1 -1
  170. package/dist/collection/components/dropdown/dropdown-menu/dropdown-menu.js.map +1 -1
  171. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js.map +1 -1
  172. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js +2 -0
  173. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js.map +1 -1
  174. package/dist/collection/components/dropdown/dropdown.js +3 -3
  175. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  176. package/dist/collection/components/footer/footer.js +2 -2
  177. package/dist/collection/components/footer/footer.js.map +1 -1
  178. package/dist/collection/components/icon/infineonIconStencil.js +1 -0
  179. package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
  180. package/dist/collection/components/icon-button/icon-button.js +5 -0
  181. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  182. package/dist/collection/components/icons-preview/icons-preview.js +1 -0
  183. package/dist/collection/components/icons-preview/icons-preview.js.map +1 -1
  184. package/dist/collection/components/link/link.js +1 -0
  185. package/dist/collection/components/link/link.js.map +1 -1
  186. package/dist/collection/components/modal/modal.js +11 -11
  187. package/dist/collection/components/modal/modal.js.map +1 -1
  188. package/dist/collection/components/navigation/navbar/navbar-item.js +1 -0
  189. package/dist/collection/components/navigation/navbar/navbar-item.js.map +1 -1
  190. package/dist/collection/components/navigation/navbar/navbar-profile.js +4 -4
  191. package/dist/collection/components/navigation/navbar/navbar-profile.js.map +1 -1
  192. package/dist/collection/components/navigation/navbar/navbar.js +1 -0
  193. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  194. package/dist/collection/components/navigation/sidebar/sidebar-item.js +4 -2
  195. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  196. package/dist/collection/components/navigation/sidebar/sidebar.js.map +1 -1
  197. package/dist/collection/components/notification/notification.js +3 -0
  198. package/dist/collection/components/notification/notification.js.map +1 -1
  199. package/dist/collection/components/number-indicator/number-indicator.js.map +1 -1
  200. package/dist/collection/components/overview-table/overview-table.js +1 -1
  201. package/dist/collection/components/overview-table/overview-table.js.map +1 -1
  202. package/dist/collection/components/pagination/pagination.js +5 -5
  203. package/dist/collection/components/pagination/pagination.js.map +1 -1
  204. package/dist/collection/components/progress-bar/progress-bar.js +3 -1
  205. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  206. package/dist/collection/components/radio-button/radio-button.js +6 -2
  207. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  208. package/dist/collection/components/search-bar/search-bar.js +6 -3
  209. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  210. package/dist/collection/components/search-field/search-field.js +10 -10
  211. package/dist/collection/components/search-field/search-field.js.map +1 -1
  212. package/dist/collection/components/segmented-control/segment/segment.js +4 -1
  213. package/dist/collection/components/segmented-control/segment/segment.js.map +1 -1
  214. package/dist/collection/components/segmented-control/segmented-control.js +3 -3
  215. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  216. package/dist/collection/components/select/multi-select/multiselect.js +23 -18
  217. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  218. package/dist/collection/components/select/single-select/select.js +46 -4
  219. package/dist/collection/components/select/single-select/select.js.map +1 -1
  220. package/dist/collection/components/slider/slider.js +9 -2
  221. package/dist/collection/components/slider/slider.js.map +1 -1
  222. package/dist/collection/components/spinner/spinner.js +4 -2
  223. package/dist/collection/components/spinner/spinner.js.map +1 -1
  224. package/dist/collection/components/status/status.js +2 -1
  225. package/dist/collection/components/status/status.js.map +1 -1
  226. package/dist/collection/components/stepper/step/step.js +5 -4
  227. package/dist/collection/components/stepper/step/step.js.map +1 -1
  228. package/dist/collection/components/stepper/stepper.js +3 -2
  229. package/dist/collection/components/stepper/stepper.js.map +1 -1
  230. package/dist/collection/components/switch/switch.js +2 -1
  231. package/dist/collection/components/switch/switch.js.map +1 -1
  232. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +6 -5
  233. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js.map +1 -1
  234. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +7 -6
  235. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js.map +1 -1
  236. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +6 -2
  237. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js.map +1 -1
  238. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js +2 -2
  239. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js.map +1 -1
  240. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +6 -1
  241. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js.map +1 -1
  242. package/dist/collection/components/table-advanced-version/list/list.js +9 -8
  243. package/dist/collection/components/table-advanced-version/list/list.js.map +1 -1
  244. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js +4 -0
  245. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js.map +1 -1
  246. package/dist/collection/components/table-advanced-version/table.js +9 -5
  247. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  248. package/dist/collection/components/table-basic-version/table.js +6 -2
  249. package/dist/collection/components/table-basic-version/table.js.map +1 -1
  250. package/dist/collection/components/tabs/tab.js +3 -1
  251. package/dist/collection/components/tabs/tab.js.map +1 -1
  252. package/dist/collection/components/tabs/tabs.js +3 -2
  253. package/dist/collection/components/tabs/tabs.js.map +1 -1
  254. package/dist/collection/components/tag/tag.js +4 -1
  255. package/dist/collection/components/tag/tag.js.map +1 -1
  256. package/dist/collection/components/text-field/text-field.js +5 -4
  257. package/dist/collection/components/text-field/text-field.js.map +1 -1
  258. package/dist/collection/components/textarea/textarea.js +10 -2
  259. package/dist/collection/components/textarea/textarea.js.map +1 -1
  260. package/dist/collection/components/tooltip/tooltip.js +11 -10
  261. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  262. package/dist/collection/index.js.map +1 -1
  263. package/dist/collection/stories/setup-and-installation/faq/faq.js +1 -1
  264. package/dist/components/ifx-accordion-item.js +1 -1
  265. package/dist/components/ifx-accordion.js +1 -1
  266. package/dist/components/ifx-alert.js +68 -1
  267. package/dist/components/ifx-alert.js.map +1 -1
  268. package/dist/components/ifx-badge.js +1 -1
  269. package/dist/components/ifx-basic-table.js +7 -3
  270. package/dist/components/ifx-basic-table.js.map +1 -1
  271. package/dist/components/ifx-breadcrumb-item-label.js +4 -2
  272. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  273. package/dist/components/ifx-breadcrumb-item.js +2 -1
  274. package/dist/components/ifx-breadcrumb-item.js.map +1 -1
  275. package/dist/components/ifx-breadcrumb.js +1 -1
  276. package/dist/components/ifx-button.js +1 -1
  277. package/dist/components/ifx-card-headline.js +3 -1
  278. package/dist/components/ifx-card-headline.js.map +1 -1
  279. package/dist/components/ifx-card-image.js +4 -1
  280. package/dist/components/ifx-card-image.js.map +1 -1
  281. package/dist/components/ifx-card-links.js +1 -1
  282. package/dist/components/ifx-card-overline.js +1 -1
  283. package/dist/components/ifx-card-text.js +2 -1
  284. package/dist/components/ifx-card-text.js.map +1 -1
  285. package/dist/components/ifx-card.js +5 -1
  286. package/dist/components/ifx-card.js.map +1 -1
  287. package/dist/components/ifx-checkbox.js +1 -1
  288. package/dist/components/ifx-chip-item.js +1 -1
  289. package/dist/components/ifx-chip.js +1 -1
  290. package/dist/components/ifx-content-switcher-item.js +2 -1
  291. package/dist/components/ifx-content-switcher-item.js.map +1 -1
  292. package/dist/components/ifx-content-switcher.js +3 -2
  293. package/dist/components/ifx-content-switcher.js.map +1 -1
  294. package/dist/components/ifx-date-picker.js +8 -2
  295. package/dist/components/ifx-date-picker.js.map +1 -1
  296. package/dist/components/ifx-dropdown-header.js +1 -1
  297. package/dist/components/ifx-dropdown-item.js +3 -2
  298. package/dist/components/ifx-dropdown-item.js.map +1 -1
  299. package/dist/components/ifx-dropdown-menu.js +1 -1
  300. package/dist/components/ifx-dropdown-menu.js.map +1 -1
  301. package/dist/components/ifx-dropdown-separator.js +1 -1
  302. package/dist/components/ifx-dropdown-trigger-button.js +5 -3
  303. package/dist/components/ifx-dropdown-trigger-button.js.map +1 -1
  304. package/dist/components/ifx-dropdown-trigger.js +1 -1
  305. package/dist/components/ifx-dropdown-trigger.js.map +1 -1
  306. package/dist/components/ifx-dropdown.js +4 -4
  307. package/dist/components/ifx-dropdown.js.map +1 -1
  308. package/dist/components/ifx-faq.js +5 -5
  309. package/dist/components/ifx-filter-accordion.js +10 -9
  310. package/dist/components/ifx-filter-accordion.js.map +1 -1
  311. package/dist/components/ifx-filter-bar.js +9 -8
  312. package/dist/components/ifx-filter-bar.js.map +1 -1
  313. package/dist/components/ifx-filter-search.js +9 -5
  314. package/dist/components/ifx-filter-search.js.map +1 -1
  315. package/dist/components/ifx-filter-type-group.js +3 -3
  316. package/dist/components/ifx-filter-type-group.js.map +1 -1
  317. package/dist/components/ifx-footer-column.js +1 -1
  318. package/dist/components/ifx-footer.js +3 -3
  319. package/dist/components/ifx-footer.js.map +1 -1
  320. package/dist/components/ifx-icon-button.js +1 -1
  321. package/dist/components/ifx-icon.js +1 -1
  322. package/dist/components/ifx-icons-preview.js +3 -2
  323. package/dist/components/ifx-icons-preview.js.map +1 -1
  324. package/dist/components/ifx-link.js +1 -1
  325. package/dist/components/ifx-list-entry.js +8 -5
  326. package/dist/components/ifx-list-entry.js.map +1 -1
  327. package/dist/components/ifx-list.js +12 -11
  328. package/dist/components/ifx-list.js.map +1 -1
  329. package/dist/components/ifx-modal.js +14 -14
  330. package/dist/components/ifx-modal.js.map +1 -1
  331. package/dist/components/ifx-multiselect.js +1 -1
  332. package/dist/components/ifx-navbar-item.js +3 -2
  333. package/dist/components/ifx-navbar-item.js.map +1 -1
  334. package/dist/components/ifx-navbar-profile.js +5 -5
  335. package/dist/components/ifx-navbar-profile.js.map +1 -1
  336. package/dist/components/ifx-navbar.js +3 -2
  337. package/dist/components/ifx-navbar.js.map +1 -1
  338. package/dist/components/ifx-notification.js +6 -3
  339. package/dist/components/ifx-notification.js.map +1 -1
  340. package/dist/components/ifx-number-indicator.js +1 -1
  341. package/dist/components/ifx-overview-table.js +5 -5
  342. package/dist/components/ifx-overview-table.js.map +1 -1
  343. package/dist/components/ifx-pagination.js +1 -1
  344. package/dist/components/ifx-progress-bar.js +4 -2
  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 +9 -6
  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 +6 -3
  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 +11 -7
  356. package/dist/components/ifx-set-filter.js.map +1 -1
  357. package/dist/components/ifx-sidebar-item.js +7 -5
  358. package/dist/components/ifx-sidebar-item.js.map +1 -1
  359. package/dist/components/ifx-sidebar-title.js +1 -1
  360. package/dist/components/ifx-sidebar.js +1 -1
  361. package/dist/components/ifx-sidebar.js.map +1 -1
  362. package/dist/components/ifx-slider.js +11 -4
  363. package/dist/components/ifx-slider.js.map +1 -1
  364. package/dist/components/ifx-spinner.js +46 -1
  365. package/dist/components/ifx-spinner.js.map +1 -1
  366. package/dist/components/ifx-status.js +3 -2
  367. package/dist/components/ifx-status.js.map +1 -1
  368. package/dist/components/ifx-step.js +7 -6
  369. package/dist/components/ifx-step.js.map +1 -1
  370. package/dist/components/ifx-stepper.js +4 -3
  371. package/dist/components/ifx-stepper.js.map +1 -1
  372. package/dist/components/ifx-switch.js +3 -2
  373. package/dist/components/ifx-switch.js.map +1 -1
  374. package/dist/components/ifx-tab.js +4 -2
  375. package/dist/components/ifx-tab.js.map +1 -1
  376. package/dist/components/ifx-table.js +19 -15
  377. package/dist/components/ifx-table.js.map +1 -1
  378. package/dist/components/ifx-tabs.js +5 -4
  379. package/dist/components/ifx-tabs.js.map +1 -1
  380. package/dist/components/ifx-tag.js +4 -3
  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 +11 -3
  384. package/dist/components/ifx-textarea.js.map +1 -1
  385. package/dist/components/ifx-tooltip.js +13 -12
  386. package/dist/components/ifx-tooltip.js.map +1 -1
  387. package/dist/components/index.js +1 -1
  388. package/dist/components/{p-bdeb1952.js → p-03181918.js} +8 -7
  389. package/dist/components/p-03181918.js.map +1 -0
  390. package/dist/components/{p-f0953b8a.js → p-04b73e62.js} +28 -23
  391. package/dist/components/p-04b73e62.js.map +1 -0
  392. package/dist/components/{p-2167e98c.js → p-094bb435.js} +2 -2
  393. package/dist/components/p-094bb435.js.map +1 -0
  394. package/dist/components/{p-6613f3b4.js → p-23cdd5a7.js} +4 -4
  395. package/dist/components/p-23cdd5a7.js.map +1 -0
  396. package/dist/components/{p-0c4e0d19.js → p-2f603818.js} +49 -7
  397. package/dist/components/p-2f603818.js.map +1 -0
  398. package/dist/components/{p-b62da6f0.js → p-4b3befbf.js} +2 -2
  399. package/dist/components/{p-b62da6f0.js.map → p-4b3befbf.js.map} +1 -1
  400. package/dist/components/{p-0b837c89.js → p-63edb8e2.js} +13 -13
  401. package/dist/components/p-63edb8e2.js.map +1 -0
  402. package/dist/components/{p-a99edff1.js → p-68d90201.js} +98 -126
  403. package/dist/components/p-68d90201.js.map +1 -0
  404. package/dist/components/{p-06410557.js → p-7e430b83.js} +3 -2
  405. package/dist/components/p-7e430b83.js.map +1 -0
  406. package/dist/components/{p-d454dd1b.js → p-8eed2f39.js} +8 -3
  407. package/dist/components/p-8eed2f39.js.map +1 -0
  408. package/dist/components/{p-90fa0583.js → p-9ee4ea24.js} +2 -2
  409. package/dist/components/p-9ee4ea24.js.map +1 -0
  410. package/dist/components/{p-474e011d.js → p-b2439194.js} +4 -3
  411. package/dist/components/p-b2439194.js.map +1 -0
  412. package/dist/components/{p-9f15ef5a.js → p-c1f3a68c.js} +5 -4
  413. package/dist/components/p-c1f3a68c.js.map +1 -0
  414. package/dist/components/{p-8b176518.js → p-cfb87c4d.js} +3 -2
  415. package/dist/components/p-cfb87c4d.js.map +1 -0
  416. package/dist/components/{p-d2197368.js → p-d0a26bd5.js} +12 -9
  417. package/dist/components/p-d0a26bd5.js.map +1 -0
  418. package/dist/components/{p-0d19a0d8.js → p-e181fc5c.js} +8 -4
  419. package/dist/components/p-e181fc5c.js.map +1 -0
  420. package/dist/components/{p-b4ee6732.js → p-f0f583d5.js} +6 -3
  421. package/dist/components/p-f0f583d5.js.map +1 -0
  422. package/dist/components/{p-ecfb353b.js → p-f9cdecb2.js} +10 -10
  423. package/dist/components/p-f9cdecb2.js.map +1 -0
  424. package/dist/esm/ifx-accordion_2.entry.js +2 -1
  425. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  426. package/dist/{components/p-37b460af.js → esm/ifx-alert.entry.js} +13 -38
  427. package/dist/esm/ifx-alert.entry.js.map +1 -0
  428. package/dist/esm/ifx-badge.entry.js +1 -1
  429. package/dist/esm/ifx-basic-table.entry.js +7 -3
  430. package/dist/esm/ifx-basic-table.entry.js.map +1 -1
  431. package/dist/esm/ifx-breadcrumb-item-label.entry.js +3 -1
  432. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  433. package/dist/esm/ifx-breadcrumb-item.entry.js +2 -1
  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 +11 -8
  437. package/dist/esm/ifx-button.entry.js.map +1 -1
  438. package/dist/esm/ifx-card-headline.entry.js +3 -1
  439. package/dist/esm/ifx-card-headline.entry.js.map +1 -1
  440. package/dist/esm/ifx-card-image.entry.js +4 -1
  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 +2 -1
  445. package/dist/esm/ifx-card-text.entry.js.map +1 -1
  446. package/dist/esm/ifx-card.entry.js +5 -1
  447. package/dist/esm/ifx-card.entry.js.map +1 -1
  448. package/dist/esm/ifx-checkbox.entry.js +4 -1
  449. package/dist/esm/ifx-checkbox.entry.js.map +1 -1
  450. package/dist/esm/ifx-chip_3.entry.js +7 -6
  451. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  452. package/dist/esm/ifx-content-switcher-item.entry.js +2 -1
  453. package/dist/esm/ifx-content-switcher-item.entry.js.map +1 -1
  454. package/dist/esm/ifx-content-switcher.entry.js +3 -2
  455. package/dist/esm/ifx-content-switcher.entry.js.map +1 -1
  456. package/dist/esm/ifx-date-picker.entry.js +7 -1
  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 +2 -1
  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 +3 -1
  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 +8 -7
  472. package/dist/esm/ifx-filter-accordion.entry.js.map +1 -1
  473. package/dist/esm/ifx-filter-bar.entry.js +7 -6
  474. package/dist/esm/ifx-filter-bar.entry.js.map +1 -1
  475. package/dist/esm/ifx-filter-search.entry.js +7 -3
  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 +6 -1
  483. package/dist/esm/ifx-icon-button.entry.js.map +1 -1
  484. package/dist/esm/ifx-icon.entry.js +2 -1
  485. package/dist/esm/ifx-icon.entry.js.map +1 -1
  486. package/dist/esm/ifx-icons-preview.entry.js +2 -1
  487. package/dist/esm/ifx-icons-preview.entry.js.map +1 -1
  488. package/dist/esm/ifx-link.entry.js +2 -1
  489. package/dist/esm/ifx-link.entry.js.map +1 -1
  490. package/dist/esm/ifx-list-entry.entry.js +5 -2
  491. package/dist/esm/ifx-list-entry.entry.js.map +1 -1
  492. package/dist/esm/ifx-list.entry.js +10 -9
  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.entry.js → ifx-multiselect_2.entry.js} +93 -21
  497. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -0
  498. package/dist/esm/ifx-navbar-item.entry.js +2 -1
  499. package/dist/esm/ifx-navbar-item.entry.js.map +1 -1
  500. package/dist/esm/ifx-navbar-profile.entry.js +5 -5
  501. package/dist/esm/ifx-navbar-profile.entry.js.map +1 -1
  502. package/dist/esm/ifx-navbar.entry.js +2 -1
  503. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  504. package/dist/esm/ifx-notification.entry.js +4 -1
  505. package/dist/esm/ifx-notification.entry.js.map +1 -1
  506. package/dist/esm/ifx-number-indicator.entry.js +1 -1
  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-overview-table.entry.js.map +1 -1
  510. package/dist/esm/ifx-progress-bar.entry.js +4 -2
  511. package/dist/esm/ifx-progress-bar.entry.js.map +1 -1
  512. package/dist/esm/ifx-radio-button.entry.js +7 -3
  513. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  514. package/dist/esm/ifx-search-bar.entry.js +7 -4
  515. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  516. package/dist/esm/ifx-search-field.entry.js +11 -11
  517. package/dist/esm/ifx-search-field.entry.js.map +1 -1
  518. package/dist/esm/ifx-segment.entry.js +5 -2
  519. package/dist/esm/ifx-segment.entry.js.map +1 -1
  520. package/dist/esm/ifx-segmented-control.entry.js +4 -4
  521. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  522. package/dist/esm/ifx-select.entry.js +47 -5
  523. package/dist/esm/ifx-select.entry.js.map +1 -1
  524. package/dist/esm/ifx-set-filter.entry.js +5 -1
  525. package/dist/esm/ifx-set-filter.entry.js.map +1 -1
  526. package/dist/esm/ifx-sidebar-item.entry.js +5 -3
  527. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  528. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  529. package/dist/esm/ifx-sidebar.entry.js +1 -1
  530. package/dist/esm/ifx-sidebar.entry.js.map +1 -1
  531. package/dist/esm/ifx-slider.entry.js +10 -3
  532. package/dist/esm/ifx-slider.entry.js.map +1 -1
  533. package/dist/{components/p-3a49328a.js → esm/ifx-spinner.entry.js} +13 -30
  534. package/dist/esm/ifx-spinner.entry.js.map +1 -0
  535. package/dist/esm/ifx-status.entry.js +3 -2
  536. package/dist/esm/ifx-status.entry.js.map +1 -1
  537. package/dist/esm/ifx-step.entry.js +6 -5
  538. package/dist/esm/ifx-step.entry.js.map +1 -1
  539. package/dist/esm/ifx-stepper.entry.js +4 -3
  540. package/dist/esm/ifx-stepper.entry.js.map +1 -1
  541. package/dist/esm/ifx-switch.entry.js +3 -2
  542. package/dist/esm/ifx-switch.entry.js.map +1 -1
  543. package/dist/esm/ifx-tab.entry.js +4 -2
  544. package/dist/esm/ifx-tab.entry.js.map +1 -1
  545. package/dist/esm/ifx-table.entry.js +10 -6
  546. package/dist/esm/ifx-table.entry.js.map +1 -1
  547. package/dist/esm/ifx-tabs.entry.js +4 -3
  548. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  549. package/dist/esm/ifx-tag.entry.js +3 -2
  550. package/dist/esm/ifx-tag.entry.js.map +1 -1
  551. package/dist/esm/ifx-textarea.entry.js +11 -3
  552. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  553. package/dist/esm/ifx-tooltip.entry.js +12 -11
  554. package/dist/esm/ifx-tooltip.entry.js.map +1 -1
  555. package/dist/esm/{index-abb8c4b4.js → index-dc4139fb.js} +117 -153
  556. package/dist/esm/index-dc4139fb.js.map +1 -0
  557. package/dist/esm/infineon-design-system-stencil.js +4 -4
  558. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  559. package/dist/esm/loader.js +3 -3
  560. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  561. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  562. package/dist/infineon-design-system-stencil/p-04dcd856.entry.js +2 -0
  563. package/dist/infineon-design-system-stencil/p-04dcd856.entry.js.map +1 -0
  564. package/dist/infineon-design-system-stencil/p-0a629668.entry.js +2 -0
  565. package/dist/infineon-design-system-stencil/p-0a629668.entry.js.map +1 -0
  566. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js +2 -0
  567. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js.map +1 -0
  568. package/dist/infineon-design-system-stencil/p-117a6839.entry.js +2 -0
  569. package/dist/infineon-design-system-stencil/p-117a6839.entry.js.map +1 -0
  570. package/dist/infineon-design-system-stencil/p-15effb48.entry.js +2 -0
  571. package/dist/infineon-design-system-stencil/p-15effb48.entry.js.map +1 -0
  572. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js +2 -0
  573. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js.map +1 -0
  574. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js +2 -0
  575. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js.map +1 -0
  576. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js +2 -0
  577. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js.map +1 -0
  578. package/dist/infineon-design-system-stencil/p-2435017b.entry.js +2 -0
  579. package/dist/infineon-design-system-stencil/p-2435017b.entry.js.map +1 -0
  580. package/dist/infineon-design-system-stencil/{p-375f4a18.entry.js → p-24fcd716.entry.js} +2 -2
  581. package/dist/infineon-design-system-stencil/p-24fcd716.entry.js.map +1 -0
  582. package/dist/infineon-design-system-stencil/p-25266bf9.entry.js +2 -0
  583. package/dist/infineon-design-system-stencil/p-25266bf9.entry.js.map +1 -0
  584. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js +2 -0
  585. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js.map +1 -0
  586. package/dist/infineon-design-system-stencil/{p-cf0b4db9.entry.js → p-28fb795b.entry.js} +2 -2
  587. package/dist/infineon-design-system-stencil/p-2d4c5959.entry.js +2 -0
  588. package/dist/infineon-design-system-stencil/p-2d4c5959.entry.js.map +1 -0
  589. package/dist/infineon-design-system-stencil/p-32fc3ce3.entry.js +2 -0
  590. package/dist/infineon-design-system-stencil/{p-35f97aec.entry.js → p-34fb9dca.entry.js} +2 -2
  591. package/dist/infineon-design-system-stencil/p-379a2090.entry.js +2 -0
  592. package/dist/infineon-design-system-stencil/p-379a2090.entry.js.map +1 -0
  593. package/dist/infineon-design-system-stencil/{p-832acb52.entry.js → p-384ffeb8.entry.js} +3 -3
  594. package/dist/infineon-design-system-stencil/p-384ffeb8.entry.js.map +1 -0
  595. package/dist/infineon-design-system-stencil/{p-987630a9.entry.js → p-3b99fb06.entry.js} +2 -2
  596. package/dist/infineon-design-system-stencil/p-3b99fb06.entry.js.map +1 -0
  597. package/dist/infineon-design-system-stencil/{p-edcf4d92.entry.js → p-3c5a8615.entry.js} +2 -2
  598. package/dist/infineon-design-system-stencil/p-3c5a8615.entry.js.map +1 -0
  599. package/dist/infineon-design-system-stencil/p-3ef52c09.entry.js +2 -0
  600. package/dist/infineon-design-system-stencil/p-3ef52c09.entry.js.map +1 -0
  601. package/dist/infineon-design-system-stencil/p-436babb8.entry.js +2 -0
  602. package/dist/infineon-design-system-stencil/p-436babb8.entry.js.map +1 -0
  603. package/dist/infineon-design-system-stencil/p-466fea81.entry.js +2 -0
  604. package/dist/infineon-design-system-stencil/p-466fea81.entry.js.map +1 -0
  605. package/dist/infineon-design-system-stencil/p-4b0f836d.entry.js +2 -0
  606. package/dist/infineon-design-system-stencil/{p-bc1e9fa0.entry.js.map → p-4b0f836d.entry.js.map} +1 -1
  607. package/dist/infineon-design-system-stencil/{p-3206278c.entry.js → p-4b21c0e6.entry.js} +2 -2
  608. package/dist/infineon-design-system-stencil/p-4b21c0e6.entry.js.map +1 -0
  609. package/dist/infineon-design-system-stencil/p-50f06657.entry.js +2 -0
  610. package/dist/{esm/ifx-multiselect.entry.js.map → infineon-design-system-stencil/p-50f06657.entry.js.map} +1 -1
  611. package/dist/infineon-design-system-stencil/{p-a8b99e73.entry.js → p-51980b19.entry.js} +2 -2
  612. package/dist/infineon-design-system-stencil/p-51c4e760.entry.js +2 -0
  613. package/dist/infineon-design-system-stencil/{p-3cadb56f.entry.js.map → p-51c4e760.entry.js.map} +1 -1
  614. package/dist/infineon-design-system-stencil/{p-b87cae76.entry.js → p-584149bd.entry.js} +2 -2
  615. package/dist/infineon-design-system-stencil/p-584149bd.entry.js.map +1 -0
  616. package/dist/infineon-design-system-stencil/p-58966086.entry.js +2 -0
  617. package/dist/infineon-design-system-stencil/{p-c7c93327.entry.js.map → p-58966086.entry.js.map} +1 -1
  618. package/dist/infineon-design-system-stencil/{p-98762adc.entry.js → p-5c6d5571.entry.js} +2 -2
  619. package/dist/infineon-design-system-stencil/p-5c6d5571.entry.js.map +1 -0
  620. package/dist/infineon-design-system-stencil/p-5f34d2bc.entry.js +2 -0
  621. package/dist/infineon-design-system-stencil/p-5f34d2bc.entry.js.map +1 -0
  622. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js +2 -0
  623. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js.map +1 -0
  624. package/dist/infineon-design-system-stencil/{p-2ecc6869.entry.js → p-680f8e2c.entry.js} +2 -2
  625. package/dist/infineon-design-system-stencil/{p-e8b6c21c.entry.js → p-6ae18c50.entry.js} +2 -2
  626. package/dist/infineon-design-system-stencil/p-6ae18c50.entry.js.map +1 -0
  627. package/dist/infineon-design-system-stencil/p-6b122987.js +3 -0
  628. package/dist/infineon-design-system-stencil/p-6b122987.js.map +1 -0
  629. package/dist/infineon-design-system-stencil/p-6f00d371.entry.js +2 -0
  630. package/dist/infineon-design-system-stencil/p-6f00d371.entry.js.map +1 -0
  631. package/dist/infineon-design-system-stencil/p-775d187b.entry.js +2 -0
  632. package/dist/infineon-design-system-stencil/p-775d187b.entry.js.map +1 -0
  633. package/dist/infineon-design-system-stencil/p-79a73b5f.entry.js +2 -0
  634. package/dist/infineon-design-system-stencil/p-79a73b5f.entry.js.map +1 -0
  635. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js +2 -0
  636. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js.map +1 -0
  637. package/dist/infineon-design-system-stencil/{p-888eac03.entry.js → p-7c0bbef1.entry.js} +2 -2
  638. package/dist/infineon-design-system-stencil/p-7c0bbef1.entry.js.map +1 -0
  639. package/dist/infineon-design-system-stencil/{p-adaae6df.entry.js → p-8969f1e4.entry.js} +2 -2
  640. package/dist/infineon-design-system-stencil/p-8969f1e4.entry.js.map +1 -0
  641. package/dist/infineon-design-system-stencil/{p-5a1a1457.entry.js → p-91f91586.entry.js} +2 -2
  642. package/dist/infineon-design-system-stencil/p-91f91586.entry.js.map +1 -0
  643. package/dist/infineon-design-system-stencil/p-97e9e312.entry.js +2 -0
  644. package/dist/infineon-design-system-stencil/p-97e9e312.entry.js.map +1 -0
  645. package/dist/infineon-design-system-stencil/p-9a47f8ad.entry.js +2 -0
  646. package/dist/infineon-design-system-stencil/p-9a47f8ad.entry.js.map +1 -0
  647. package/dist/infineon-design-system-stencil/p-a16d5258.entry.js +2 -0
  648. package/dist/infineon-design-system-stencil/p-a16d5258.entry.js.map +1 -0
  649. package/dist/infineon-design-system-stencil/{p-5dd5e2e3.entry.js → p-a8ccf376.entry.js} +2 -2
  650. package/dist/infineon-design-system-stencil/p-b14bd5b7.entry.js +2 -0
  651. package/dist/infineon-design-system-stencil/p-b14bd5b7.entry.js.map +1 -0
  652. package/dist/infineon-design-system-stencil/{p-c7a73fff.entry.js → p-b5a3fad1.entry.js} +2 -2
  653. package/dist/infineon-design-system-stencil/p-bbaa8d57.entry.js +2 -0
  654. package/dist/infineon-design-system-stencil/{p-b4a3ea1d.entry.js.map → p-bbaa8d57.entry.js.map} +1 -1
  655. package/dist/infineon-design-system-stencil/{p-09a43d79.entry.js → p-bc8a4226.entry.js} +2 -2
  656. package/dist/infineon-design-system-stencil/p-bc8a4226.entry.js.map +1 -0
  657. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js +2 -0
  658. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js.map +1 -0
  659. package/dist/infineon-design-system-stencil/{p-28000a30.entry.js → p-c1b1b593.entry.js} +2 -2
  660. package/dist/infineon-design-system-stencil/p-c1b1b593.entry.js.map +1 -0
  661. package/dist/infineon-design-system-stencil/{p-ec5b7eef.entry.js → p-c668bc59.entry.js} +2 -2
  662. package/dist/infineon-design-system-stencil/p-c668bc59.entry.js.map +1 -0
  663. package/dist/infineon-design-system-stencil/p-c7f80bba.entry.js +2 -0
  664. package/dist/infineon-design-system-stencil/p-c7f80bba.entry.js.map +1 -0
  665. package/dist/infineon-design-system-stencil/{p-3f58926e.entry.js → p-c82d6a95.entry.js} +2 -2
  666. package/dist/infineon-design-system-stencil/p-c82d6a95.entry.js.map +1 -0
  667. package/dist/infineon-design-system-stencil/p-c8728936.entry.js +2 -0
  668. package/dist/infineon-design-system-stencil/p-c8728936.entry.js.map +1 -0
  669. package/dist/infineon-design-system-stencil/p-caff080b.entry.js +2 -0
  670. package/dist/infineon-design-system-stencil/p-caff080b.entry.js.map +1 -0
  671. package/dist/infineon-design-system-stencil/{p-d8df8c49.entry.js → p-ce413596.entry.js} +2 -2
  672. package/dist/infineon-design-system-stencil/p-ce413596.entry.js.map +1 -0
  673. package/dist/infineon-design-system-stencil/{p-2228b0fe.entry.js → p-d09be3a1.entry.js} +2 -2
  674. package/dist/infineon-design-system-stencil/p-d09be3a1.entry.js.map +1 -0
  675. package/dist/infineon-design-system-stencil/{p-c6150071.entry.js → p-d28dda66.entry.js} +2 -2
  676. package/dist/infineon-design-system-stencil/p-d28dda66.entry.js.map +1 -0
  677. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js +2 -0
  678. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js.map +1 -0
  679. package/dist/infineon-design-system-stencil/{p-8ce2934f.entry.js → p-d71e765c.entry.js} +2 -2
  680. package/dist/infineon-design-system-stencil/p-d71e765c.entry.js.map +1 -0
  681. package/dist/infineon-design-system-stencil/{p-17fb3b6e.entry.js → p-d82e1057.entry.js} +2 -2
  682. package/dist/infineon-design-system-stencil/p-d82e1057.entry.js.map +1 -0
  683. package/dist/infineon-design-system-stencil/p-db09429f.entry.js +2 -0
  684. package/dist/infineon-design-system-stencil/p-db09429f.entry.js.map +1 -0
  685. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js +2 -0
  686. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js.map +1 -0
  687. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js +2 -0
  688. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js.map +1 -0
  689. package/dist/infineon-design-system-stencil/{p-5a863742.entry.js → p-ee39e4ce.entry.js} +2 -2
  690. package/dist/infineon-design-system-stencil/p-f0052c72.entry.js +2 -0
  691. package/dist/infineon-design-system-stencil/{p-459b20f6.entry.js.map → p-f0052c72.entry.js.map} +1 -1
  692. package/dist/infineon-design-system-stencil/{p-9d712c50.entry.js → p-f856fa8b.entry.js} +2 -2
  693. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js +2 -0
  694. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js.map +1 -0
  695. package/dist/types/components.d.ts +0 -49
  696. package/package.json +1 -1
  697. package/dist/cjs/ifx-alert_2.cjs.entry.js +0 -195
  698. package/dist/cjs/ifx-alert_2.cjs.entry.js.map +0 -1
  699. package/dist/cjs/ifx-multiselect.cjs.entry.js.map +0 -1
  700. package/dist/cjs/ifx-spinner_2.cjs.entry.js +0 -100
  701. package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +0 -1
  702. package/dist/cjs/ifx-templates-ui.cjs.entry.js +0 -61
  703. package/dist/cjs/ifx-templates-ui.cjs.entry.js.map +0 -1
  704. package/dist/cjs/index-76f7fe32.js.map +0 -1
  705. package/dist/collection/components/templates/template/template.css +0 -76
  706. package/dist/collection/components/templates/template/template.js +0 -263
  707. package/dist/collection/components/templates/template/template.js.map +0 -1
  708. package/dist/collection/components/templates/templates-ui/templates-ui.css +0 -33
  709. package/dist/collection/components/templates/templates-ui/templates-ui.js +0 -75
  710. package/dist/collection/components/templates/templates-ui/templates-ui.js.map +0 -1
  711. package/dist/components/ifx-template.d.ts +0 -11
  712. package/dist/components/ifx-template.js +0 -8
  713. package/dist/components/ifx-template.js.map +0 -1
  714. package/dist/components/ifx-templates-ui.d.ts +0 -11
  715. package/dist/components/ifx-templates-ui.js +0 -123
  716. package/dist/components/ifx-templates-ui.js.map +0 -1
  717. package/dist/components/p-06410557.js.map +0 -1
  718. package/dist/components/p-0b837c89.js.map +0 -1
  719. package/dist/components/p-0c4e0d19.js.map +0 -1
  720. package/dist/components/p-0d19a0d8.js.map +0 -1
  721. package/dist/components/p-2167e98c.js.map +0 -1
  722. package/dist/components/p-37b460af.js.map +0 -1
  723. package/dist/components/p-3a49328a.js.map +0 -1
  724. package/dist/components/p-474e011d.js.map +0 -1
  725. package/dist/components/p-6613f3b4.js.map +0 -1
  726. package/dist/components/p-8b176518.js.map +0 -1
  727. package/dist/components/p-90fa0583.js.map +0 -1
  728. package/dist/components/p-9f15ef5a.js.map +0 -1
  729. package/dist/components/p-a99edff1.js.map +0 -1
  730. package/dist/components/p-b12af9d1.js +0 -207
  731. package/dist/components/p-b12af9d1.js.map +0 -1
  732. package/dist/components/p-b4ee6732.js.map +0 -1
  733. package/dist/components/p-bdeb1952.js.map +0 -1
  734. package/dist/components/p-d2197368.js.map +0 -1
  735. package/dist/components/p-d454dd1b.js.map +0 -1
  736. package/dist/components/p-ecfb353b.js.map +0 -1
  737. package/dist/components/p-f0953b8a.js.map +0 -1
  738. package/dist/esm/ifx-alert_2.entry.js +0 -190
  739. package/dist/esm/ifx-alert_2.entry.js.map +0 -1
  740. package/dist/esm/ifx-spinner_2.entry.js +0 -95
  741. package/dist/esm/ifx-spinner_2.entry.js.map +0 -1
  742. package/dist/esm/ifx-templates-ui.entry.js +0 -57
  743. package/dist/esm/ifx-templates-ui.entry.js.map +0 -1
  744. package/dist/esm/index-abb8c4b4.js.map +0 -1
  745. package/dist/infineon-design-system-stencil/p-0074194f.entry.js +0 -2
  746. package/dist/infineon-design-system-stencil/p-0074194f.entry.js.map +0 -1
  747. package/dist/infineon-design-system-stencil/p-03666ad5.entry.js +0 -2
  748. package/dist/infineon-design-system-stencil/p-03666ad5.entry.js.map +0 -1
  749. package/dist/infineon-design-system-stencil/p-09a43d79.entry.js.map +0 -1
  750. package/dist/infineon-design-system-stencil/p-0ba5b108.entry.js +0 -2
  751. package/dist/infineon-design-system-stencil/p-0ba5b108.entry.js.map +0 -1
  752. package/dist/infineon-design-system-stencil/p-0cec6f6b.entry.js +0 -2
  753. package/dist/infineon-design-system-stencil/p-0cec6f6b.entry.js.map +0 -1
  754. package/dist/infineon-design-system-stencil/p-17fb3b6e.entry.js.map +0 -1
  755. package/dist/infineon-design-system-stencil/p-1f9cd046.entry.js +0 -2
  756. package/dist/infineon-design-system-stencil/p-1f9cd046.entry.js.map +0 -1
  757. package/dist/infineon-design-system-stencil/p-21c51783.entry.js +0 -2
  758. package/dist/infineon-design-system-stencil/p-21c51783.entry.js.map +0 -1
  759. package/dist/infineon-design-system-stencil/p-2228b0fe.entry.js.map +0 -1
  760. package/dist/infineon-design-system-stencil/p-28000a30.entry.js.map +0 -1
  761. package/dist/infineon-design-system-stencil/p-3206278c.entry.js.map +0 -1
  762. package/dist/infineon-design-system-stencil/p-375f4a18.entry.js.map +0 -1
  763. package/dist/infineon-design-system-stencil/p-3b262773.entry.js +0 -2
  764. package/dist/infineon-design-system-stencil/p-3b262773.entry.js.map +0 -1
  765. package/dist/infineon-design-system-stencil/p-3cadb56f.entry.js +0 -2
  766. package/dist/infineon-design-system-stencil/p-3f58926e.entry.js.map +0 -1
  767. package/dist/infineon-design-system-stencil/p-459b20f6.entry.js +0 -2
  768. package/dist/infineon-design-system-stencil/p-4e8efc0e.entry.js +0 -2
  769. package/dist/infineon-design-system-stencil/p-4e8efc0e.entry.js.map +0 -1
  770. package/dist/infineon-design-system-stencil/p-4f8af263.entry.js +0 -2
  771. package/dist/infineon-design-system-stencil/p-4f8af263.entry.js.map +0 -1
  772. package/dist/infineon-design-system-stencil/p-5a1a1457.entry.js.map +0 -1
  773. package/dist/infineon-design-system-stencil/p-62dca814.entry.js +0 -2
  774. package/dist/infineon-design-system-stencil/p-62dca814.entry.js.map +0 -1
  775. package/dist/infineon-design-system-stencil/p-6c932aaa.entry.js +0 -2
  776. package/dist/infineon-design-system-stencil/p-6c932aaa.entry.js.map +0 -1
  777. package/dist/infineon-design-system-stencil/p-74cf76c9.entry.js +0 -2
  778. package/dist/infineon-design-system-stencil/p-74cf76c9.entry.js.map +0 -1
  779. package/dist/infineon-design-system-stencil/p-78e8d73d.entry.js +0 -2
  780. package/dist/infineon-design-system-stencil/p-78e8d73d.entry.js.map +0 -1
  781. package/dist/infineon-design-system-stencil/p-7e63a602.entry.js +0 -2
  782. package/dist/infineon-design-system-stencil/p-7e63a602.entry.js.map +0 -1
  783. package/dist/infineon-design-system-stencil/p-7f7b4c70.entry.js +0 -2
  784. package/dist/infineon-design-system-stencil/p-7f7b4c70.entry.js.map +0 -1
  785. package/dist/infineon-design-system-stencil/p-82697ddd.entry.js +0 -2
  786. package/dist/infineon-design-system-stencil/p-82697ddd.entry.js.map +0 -1
  787. package/dist/infineon-design-system-stencil/p-832acb52.entry.js.map +0 -1
  788. package/dist/infineon-design-system-stencil/p-83ae1de5.entry.js +0 -2
  789. package/dist/infineon-design-system-stencil/p-83ae1de5.entry.js.map +0 -1
  790. package/dist/infineon-design-system-stencil/p-8880247f.entry.js +0 -2
  791. package/dist/infineon-design-system-stencil/p-8880247f.entry.js.map +0 -1
  792. package/dist/infineon-design-system-stencil/p-888eac03.entry.js.map +0 -1
  793. package/dist/infineon-design-system-stencil/p-8ce2934f.entry.js.map +0 -1
  794. package/dist/infineon-design-system-stencil/p-9104a62e.entry.js +0 -2
  795. package/dist/infineon-design-system-stencil/p-9104a62e.entry.js.map +0 -1
  796. package/dist/infineon-design-system-stencil/p-925041e5.entry.js +0 -2
  797. package/dist/infineon-design-system-stencil/p-925041e5.entry.js.map +0 -1
  798. package/dist/infineon-design-system-stencil/p-936a5a77.entry.js +0 -2
  799. package/dist/infineon-design-system-stencil/p-936a5a77.entry.js.map +0 -1
  800. package/dist/infineon-design-system-stencil/p-95a83b13.js +0 -3
  801. package/dist/infineon-design-system-stencil/p-95a83b13.js.map +0 -1
  802. package/dist/infineon-design-system-stencil/p-970cbb96.entry.js +0 -2
  803. package/dist/infineon-design-system-stencil/p-970cbb96.entry.js.map +0 -1
  804. package/dist/infineon-design-system-stencil/p-98762adc.entry.js.map +0 -1
  805. package/dist/infineon-design-system-stencil/p-987630a9.entry.js.map +0 -1
  806. package/dist/infineon-design-system-stencil/p-9dc24da3.entry.js +0 -2
  807. package/dist/infineon-design-system-stencil/p-9dc24da3.entry.js.map +0 -1
  808. package/dist/infineon-design-system-stencil/p-a6f8ab61.entry.js +0 -2
  809. package/dist/infineon-design-system-stencil/p-a6f8ab61.entry.js.map +0 -1
  810. package/dist/infineon-design-system-stencil/p-adaae6df.entry.js.map +0 -1
  811. package/dist/infineon-design-system-stencil/p-b053d3ad.entry.js +0 -2
  812. package/dist/infineon-design-system-stencil/p-b053d3ad.entry.js.map +0 -1
  813. package/dist/infineon-design-system-stencil/p-b4a3ea1d.entry.js +0 -2
  814. package/dist/infineon-design-system-stencil/p-b87cae76.entry.js.map +0 -1
  815. package/dist/infineon-design-system-stencil/p-b8d97c1c.entry.js +0 -2
  816. package/dist/infineon-design-system-stencil/p-b99fdf60.entry.js +0 -2
  817. package/dist/infineon-design-system-stencil/p-b99fdf60.entry.js.map +0 -1
  818. package/dist/infineon-design-system-stencil/p-ba3546e5.entry.js +0 -2
  819. package/dist/infineon-design-system-stencil/p-ba3546e5.entry.js.map +0 -1
  820. package/dist/infineon-design-system-stencil/p-bc1e9fa0.entry.js +0 -2
  821. package/dist/infineon-design-system-stencil/p-bf2de25d.entry.js +0 -2
  822. package/dist/infineon-design-system-stencil/p-bf2de25d.entry.js.map +0 -1
  823. package/dist/infineon-design-system-stencil/p-c368041f.entry.js +0 -2
  824. package/dist/infineon-design-system-stencil/p-c368041f.entry.js.map +0 -1
  825. package/dist/infineon-design-system-stencil/p-c6150071.entry.js.map +0 -1
  826. package/dist/infineon-design-system-stencil/p-c7c93327.entry.js +0 -2
  827. package/dist/infineon-design-system-stencil/p-c8a94d49.entry.js +0 -2
  828. package/dist/infineon-design-system-stencil/p-c8a94d49.entry.js.map +0 -1
  829. package/dist/infineon-design-system-stencil/p-cdc7b5f6.entry.js +0 -2
  830. package/dist/infineon-design-system-stencil/p-cdc7b5f6.entry.js.map +0 -1
  831. package/dist/infineon-design-system-stencil/p-d8aad76e.entry.js +0 -2
  832. package/dist/infineon-design-system-stencil/p-d8aad76e.entry.js.map +0 -1
  833. package/dist/infineon-design-system-stencil/p-d8df8c49.entry.js.map +0 -1
  834. package/dist/infineon-design-system-stencil/p-e8ada201.entry.js +0 -2
  835. package/dist/infineon-design-system-stencil/p-e8ada201.entry.js.map +0 -1
  836. package/dist/infineon-design-system-stencil/p-e8b6c21c.entry.js.map +0 -1
  837. package/dist/infineon-design-system-stencil/p-ec5b7eef.entry.js.map +0 -1
  838. package/dist/infineon-design-system-stencil/p-edcf4d92.entry.js.map +0 -1
  839. package/dist/infineon-design-system-stencil/p-f69af908.entry.js +0 -2
  840. package/dist/infineon-design-system-stencil/p-f69af908.entry.js.map +0 -1
  841. package/dist/infineon-design-system-stencil/p-f719fdcd.entry.js +0 -2
  842. package/dist/infineon-design-system-stencil/p-f719fdcd.entry.js.map +0 -1
  843. package/dist/infineon-design-system-stencil/p-f8742600.entry.js +0 -2
  844. package/dist/infineon-design-system-stencil/p-f8742600.entry.js.map +0 -1
  845. package/dist/infineon-design-system-stencil/p-f87ba073.entry.js +0 -2
  846. package/dist/infineon-design-system-stencil/p-f87ba073.entry.js.map +0 -1
  847. package/dist/types/components/templates/template/template.d.ts +0 -33
  848. package/dist/types/components/templates/templates-ui/templates-ui.d.ts +0 -10
  849. /package/dist/infineon-design-system-stencil/{p-cf0b4db9.entry.js.map → p-28fb795b.entry.js.map} +0 -0
  850. /package/dist/infineon-design-system-stencil/{p-b8d97c1c.entry.js.map → p-32fc3ce3.entry.js.map} +0 -0
  851. /package/dist/infineon-design-system-stencil/{p-35f97aec.entry.js.map → p-34fb9dca.entry.js.map} +0 -0
  852. /package/dist/infineon-design-system-stencil/{p-a8b99e73.entry.js.map → p-51980b19.entry.js.map} +0 -0
  853. /package/dist/infineon-design-system-stencil/{p-2ecc6869.entry.js.map → p-680f8e2c.entry.js.map} +0 -0
  854. /package/dist/infineon-design-system-stencil/{p-5dd5e2e3.entry.js.map → p-a8ccf376.entry.js.map} +0 -0
  855. /package/dist/infineon-design-system-stencil/{p-c7a73fff.entry.js.map → p-b5a3fad1.entry.js.map} +0 -0
  856. /package/dist/infineon-design-system-stencil/{p-5a863742.entry.js.map → p-ee39e4ce.entry.js.map} +0 -0
  857. /package/dist/infineon-design-system-stencil/{p-9d712c50.entry.js.map → p-f856fa8b.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ifx-tabs.js","mappings":"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","names":["IfxTabs"],"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}"],"version":3}
1
+ {"file":"ifx-tabs.js","mappings":"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","names":["IfxTabs"],"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}"],"version":3}
@@ -1,5 +1,5 @@
1
- import { p as proxyCustomElement, H, h } from './p-a99edff1.js';
2
- import { d as defineCustomElement$2 } from './p-06410557.js';
1
+ import { p as proxyCustomElement, H, h } from './p-68d90201.js';
2
+ import { d as defineCustomElement$2 } from './p-7e430b83.js';
3
3
 
4
4
  const tagCss = ":root{--ifx-font-family:\"Source Sans 3\";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.container{display:inline-flex;align-items:center;padding:4px 16px;border:1px solid #BFBBBB;border-radius:9999px;background-color:#FFFFFF;gap:8px;font-family:var(--ifx-font-family)}.container:hover{cursor:pointer;border-color:#8D8786}.container:active,.container.active{border-color:#1D1D1D}.container:focus:not(:active,.active){outline:none;border-color:#1D1D1D}.container .label-wrapper{text-decoration:none}.container .label-wrapper .label{margin:0;font-weight:400;font-size:1rem;line-height:20px;color:#1D1D1D}";
5
5
  const IfxTagStyle0 = tagCss;
@@ -9,9 +9,10 @@ const Tag = /*@__PURE__*/ proxyCustomElement(class Tag extends H {
9
9
  super();
10
10
  this.__registerHost();
11
11
  this.__attachShadow();
12
+ this.icon = undefined;
12
13
  }
13
14
  render() {
14
- return (h("div", { key: 'fd95fec410cb814e865254b6d19168093ca817a3', "aria-label": "a tag", class: "container" }, this.icon && (h("ifx-icon", { key: '331869ac0b205e6dde434c45639d7a607ca77d77', icon: this.icon })), h("a", { key: '58027bdcb06e65fe2a6032a4f8cee44259a10473', href: "javascript:void(null);", class: "label-wrapper" }, h("p", { key: '6db956e912c4469eff6c0cda1eb0dda92a1e5c0b', class: "label" }, h("slot", { key: 'ada3f26e0ecc145a0ae3c7eacce57b682cd33595' })))));
15
+ return (h("div", { key: '103aaf52f43ba9b22e337a9984dd353cfe0fe155', "aria-label": "a tag", class: "container" }, this.icon && (h("ifx-icon", { key: '2f87ba630039cdf93aac9f6ff67660168fd43d60', icon: this.icon })), h("a", { key: '0d77514108965a1fcdd54e41e4ca932eb64d6161', href: "javascript:void(null);", class: "label-wrapper" }, h("p", { key: 'e15558bac0bcb4273cb4e73ee527f9368f4ce27c', class: "label" }, h("slot", { key: 'eff616388b80ffc1cd677761b5584554ddc64a4d' })))));
15
16
  }
16
17
  static get style() { return IfxTagStyle0; }
17
18
  }, [1, "ifx-tag", {
@@ -1 +1 @@
1
- {"file":"ifx-tag.js","mappings":";;;AAAA,MAAM,MAAM,GAAG,unBAAunB,CAAC;AACvoB,qBAAe,MAAM;;MCOR,GAAG;;;;;;IAKd,MAAM;QACJ,QACE,0EAAgB,OAAO,EAAC,KAAK,EAAC,WAAW,IACtC,IAAI,CAAC,IAAI,KACR,iEAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,CAAC,EACzC,0DAAG,IAAI,EAAC,wBAAwB,EAAC,KAAK,EAAC,eAAe,IACpD,0DAAG,KAAK,EAAC,OAAO,IACd,8DAAQ,CACN,CACF,CACA,EAEN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/tag/tag.scss?tag=ifx-tag&encapsulation=shadow","src/components/tag/tag.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.container {\n display: inline-flex;\n align-items: center;\n padding: tokens.$ifxSpace50 tokens.$ifxSpace200;\n border: 1px solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadiusRound;\n background-color: tokens.$ifxColorBaseWhite;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family);\n\n &:hover {\n cursor: pointer;\n border-color: tokens.$ifxColorEngineering400;\n }\n\n &:active,\n &.active {\n border-color: tokens.$ifxColorBaseBlack;\n }\n\n &:focus:not(:active, .active) {\n outline: none;\n border-color: tokens.$ifxColorBaseBlack;\n }\n\n .label-wrapper {\n text-decoration: none;\n\n .label {\n margin: 0;\n font-weight: tokens.$ifxFontWeightRegular;\n font-size: tokens.$ifxFontSizeM;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n }\n }\n}","import { Component, Prop, h } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-tag',\n styleUrl: 'tag.scss',\n shadow: true\n})\nexport class Tag {\n @Prop() icon: string;\n\n\n\n render() {\n return (\n <div aria-label=\"a tag\" class=\"container\">\n {this.icon && (\n <ifx-icon icon={this.icon}></ifx-icon>)}\n <a href=\"javascript:void(null);\" class=\"label-wrapper\" >\n <p class=\"label\">\n <slot />\n </p>\n </a>\n </div>\n\n );\n }\n}"],"version":3}
1
+ {"file":"ifx-tag.js","mappings":";;;AAAA,MAAM,MAAM,GAAG,unBAAunB,CAAC;AACvoB,qBAAe,MAAM;;MCOR,GAAG;;;;;;;IAKd,MAAM;QACJ,QACE,0EAAgB,OAAO,EAAC,KAAK,EAAC,WAAW,IACtC,IAAI,CAAC,IAAI,KACR,iEAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,CAAC,EACzC,0DAAG,IAAI,EAAC,wBAAwB,EAAC,KAAK,EAAC,eAAe,IACpD,0DAAG,KAAK,EAAC,OAAO,IACd,8DAAQ,CACN,CACF,CACA,EAEN;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/tag/tag.scss?tag=ifx-tag&encapsulation=shadow","src/components/tag/tag.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.container {\n display: inline-flex;\n align-items: center;\n padding: tokens.$ifxSpace50 tokens.$ifxSpace200;\n border: 1px solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadiusRound;\n background-color: tokens.$ifxColorBaseWhite;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family);\n\n &:hover {\n cursor: pointer;\n border-color: tokens.$ifxColorEngineering400;\n }\n\n &:active,\n &.active {\n border-color: tokens.$ifxColorBaseBlack;\n }\n\n &:focus:not(:active, .active) {\n outline: none;\n border-color: tokens.$ifxColorBaseBlack;\n }\n\n .label-wrapper {\n text-decoration: none;\n\n .label {\n margin: 0;\n font-weight: tokens.$ifxFontWeightRegular;\n font-size: tokens.$ifxFontSizeM;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n }\n }\n}","import { Component, Prop, h } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-tag',\n styleUrl: 'tag.scss',\n shadow: true\n})\nexport class Tag {\n @Prop() icon: string;\n\n\n\n render() {\n return (\n <div aria-label=\"a tag\" class=\"container\">\n {this.icon && (\n <ifx-icon icon={this.icon}></ifx-icon>)}\n <a href=\"javascript:void(null);\" class=\"label-wrapper\" >\n <p class=\"label\">\n <slot />\n </p>\n </a>\n </div>\n\n );\n }\n}"],"version":3}
@@ -1,4 +1,4 @@
1
- import { T as TextField, d as defineCustomElement$1 } from './p-bdeb1952.js';
1
+ import { T as TextField, d as defineCustomElement$1 } from './p-03181918.js';
2
2
 
3
3
  const IfxTextField = TextField;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-a99edff1.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-68d90201.js';
2
2
 
3
3
  const textareaCss = ":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}";
4
4
  const IfxTextareaStyle0 = textareaCss;
@@ -11,10 +11,18 @@ const TextArea = /*@__PURE__*/ proxyCustomElement(class TextArea extends H {
11
11
  this.ifxInput = createEvent(this, "ifxInput", 7);
12
12
  this.internals = this.attachInternals();
13
13
  this.inputId = `ifx-textarea-${++textareaId}`;
14
+ this.caption = undefined;
15
+ this.cols = undefined;
14
16
  this.disabled = false;
15
17
  this.error = false;
18
+ this.label = undefined;
19
+ this.maxlength = undefined;
20
+ this.name = undefined;
21
+ this.placeholder = undefined;
16
22
  this.readOnly = false;
17
23
  this.resize = 'both';
24
+ this.rows = undefined;
25
+ this.value = undefined;
18
26
  this.wrap = 'soft';
19
27
  }
20
28
  async reset() {
@@ -39,9 +47,9 @@ const TextArea = /*@__PURE__*/ proxyCustomElement(class TextArea extends H {
39
47
  }
40
48
  render() {
41
49
  var _a, _b;
42
- return (h(Host, { key: '2741d93f63d602a6033ad015387e5c6fa06b4e8a', class: `wrapper
50
+ return (h(Host, { key: 'fa5c845d5352544c1b4c62a09407aebb95da24d3', class: `wrapper
43
51
  wrapper--${this.error ? 'error' : ''}
44
- wrapper--${this.disabled ? 'disabled' : ''}` }, h("label", { key: '84cc3ca55354f76ec579da85620c7522242ad97f', class: 'wrapper__label', htmlFor: this.inputId }, (_a = this.label) === null || _a === void 0 ? void 0 : _a.trim()), h("div", { key: '8c513b72ff2ab687f7b0ba717971ebb4e545f3bb', class: 'wrapper__textarea' }, h("textarea", { key: 'ab111c1c61cdf507877596e17b3d3acbdf78a8e1', "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: (e) => this.handleOnInput(e) })), ((_b = this.caption) === null || _b === void 0 ? void 0 : _b.trim()) && (h("div", { key: 'ac6d25c1b51e7f336c03534514081867b602af09', class: 'wrapper__caption' }, this.caption.trim()))));
52
+ wrapper--${this.disabled ? 'disabled' : ''}` }, h("label", { key: 'e68472869f26f77d87cf8cefd29d8e56aac74c95', class: 'wrapper__label', htmlFor: this.inputId }, (_a = this.label) === null || _a === void 0 ? void 0 : _a.trim()), h("div", { key: 'e4d5c36b7608d981bf33dc764453c9cc75883f59', class: 'wrapper__textarea' }, h("textarea", { key: '93988a66ea85198eb40fab3989a82f8a794d815f', "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: (e) => this.handleOnInput(e) })), ((_b = this.caption) === null || _b === void 0 ? void 0 : _b.trim()) && (h("div", { key: 'f58f74a260af7090a6e8059081dfe27fc3fe49c9', class: 'wrapper__caption' }, this.caption.trim()))));
45
53
  }
46
54
  static get formAssociated() { return true; }
47
55
  static get style() { return IfxTextareaStyle0; }
@@ -1 +1 @@
1
- {"file":"ifx-textarea.js","mappings":";;AAAA,MAAM,WAAW,GAAG,y9BAAy9B,CAAC;AAC9+B,0BAAe,WAAW;;MCQb,QAAQ;IAPrB;;;;;;QASS,YAAO,GAAW,gBAAgB,EAAE,UAAU,EAAE,CAAC;QAQjD,aAAQ,GAAY,KAAK,CAAC;QAC1B,UAAK,GAAY,KAAK,CAAC;QAKvB,aAAQ,GAAY,KAAK,CAAC;QAC1B,WAAM,GAAgD,MAAM,CAAC;QAG7D,SAAI,GAA4B,MAAM,CAAC;KAiE/C;IA9DA,MAAM,KAAK;QACV,IAAI,CAAC,aAAa,EAAE,CAAC;KACrB;IAED,iBAAiB;QAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;KAChC;IAED,aAAa,CAAC,CAAa;QAC1B,IAAI,CAAC,KAAK,GAAI,CAAC,CAAC,MAA8B,CAAC,KAAK,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC/B;IAED,aAAa;QACZ,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;KAChC;IAED,iBAAiB;QAChB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxC;IAED,MAAM;;QACL,QACC,EAAC,IAAI,qDAAC,KAAK,EAAE;iBACC,IAAI,CAAC,KAAK,GAAG,OAAO,GAAG,EAAE;iBACzB,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAE,EAAE,EAAE,IAC7C,8DAAO,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAG,IAAI,CAAC,OAAO,IACjD,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,EAAE,CACb,EAER,4DAAK,KAAK,EAAC,mBAAmB,IAC7B,+EACY,YAAY,gBACV,IAAI,CAAC,KAAK,mBACP,IAAI,CAAC,QAAQ,EAC7B,EAAE,EAAG,IAAI,CAAC,OAAO,EACjB,KAAK,EAAG,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,EAC7B,IAAI,EAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAC3C,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,SAAS,EAAG,IAAI,CAAC,SAAS,EAC1B,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,QAAQ,EAAG,IAAI,CAAC,QAAQ,EACxB,QAAQ,EAAG,IAAI,CAAC,QAAQ,EACxB,WAAW,EAAG,IAAI,CAAC,WAAW,EAC9B,KAAK,EAAG,IAAI,CAAC,KAAK,EAClB,OAAO,EAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GACrC,CACG,EAEJ,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,EAAE,MACrB,4DAAK,KAAK,EAAC,kBAAkB,IAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAChB,CACN,CACK,EACN;KACF;;;;;;;;;;;;;;;;;;;AAGF,IAAI,UAAU,GAAG,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;","names":[],"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;"],"version":3}
1
+ {"file":"ifx-textarea.js","mappings":";;AAAA,MAAM,WAAW,GAAG,y9BAAy9B,CAAC;AAC9+B,0BAAe,WAAW;;MCQb,QAAQ;;;;;;;QAEZ,YAAO,GAAW,gBAAgB,EAAE,UAAU,EAAE,CAAC;;;wBAQ7B,KAAK;qBACR,KAAK;;;;;wBAKF,KAAK;sBAC6B,MAAM;;;oBAG5B,MAAM;;IAG9C,MAAM,KAAK;QACV,IAAI,CAAC,aAAa,EAAE,CAAC;KACrB;IAED,iBAAiB;QAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;KAChC;IAED,aAAa,CAAC,CAAa;QAC1B,IAAI,CAAC,KAAK,GAAI,CAAC,CAAC,MAA8B,CAAC,KAAK,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC/B;IAED,aAAa;QACZ,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;KAChC;IAED,iBAAiB;QAChB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxC;IAED,MAAM;;QACL,QACC,EAAC,IAAI,qDAAC,KAAK,EAAE;iBACC,IAAI,CAAC,KAAK,GAAG,OAAO,GAAG,EAAE;iBACzB,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAE,EAAE,EAAE,IAC7C,8DAAO,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAG,IAAI,CAAC,OAAO,IACjD,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,EAAE,CACb,EAER,4DAAK,KAAK,EAAC,mBAAmB,IAC7B,+EACY,YAAY,gBACV,IAAI,CAAC,KAAK,mBACP,IAAI,CAAC,QAAQ,EAC7B,EAAE,EAAG,IAAI,CAAC,OAAO,EACjB,KAAK,EAAG,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,EAC7B,IAAI,EAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAC3C,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,SAAS,EAAG,IAAI,CAAC,SAAS,EAC1B,IAAI,EAAG,IAAI,CAAC,IAAI,EAChB,QAAQ,EAAG,IAAI,CAAC,QAAQ,EACxB,QAAQ,EAAG,IAAI,CAAC,QAAQ,EACxB,WAAW,EAAG,IAAI,CAAC,WAAW,EAC9B,KAAK,EAAG,IAAI,CAAC,KAAK,EAClB,OAAO,EAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GACrC,CACG,EAEJ,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,EAAE,MACrB,4DAAK,KAAK,EAAC,kBAAkB,IAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAChB,CACN,CACK,EACN;KACF;;;;;;;;;;;;;;;;;;;AAGF,IAAI,UAAU,GAAG,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;","names":[],"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;"],"version":3}
@@ -1,5 +1,5 @@
1
- import { p as proxyCustomElement, H, h } from './p-a99edff1.js';
2
- import { d as defineCustomElement$2 } from './p-06410557.js';
1
+ import { p as proxyCustomElement, H, h } from './p-68d90201.js';
2
+ import { d as defineCustomElement$2 } from './p-7e430b83.js';
3
3
  import { c as createPopper } from './p-e459974a.js';
4
4
 
5
5
  const tooltipCss = ":root{--ifx-font-family:\"Source Sans 3\";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.tooltip__container{display:inline-flex;flex-direction:column;position:relative;font-family:var(--ifx-font-family)}.tooltip-extended,.tooltip-compact,.tooltip-dismissible{background-color:#1D1D1D;border:1px solid black;z-index:1080;display:none;transition:opacity 0.3s;position:absolute;font-size:14px;font-style:normal;font-weight:400;line-height:20px;color:#FFFFFF;width:max-content;box-sizing:border-box;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;}.visible.tooltip-extended,.visible.tooltip-compact,.visible.tooltip-dismissible{display:flex !important;align-items:start}.tooltip-dismissible .close-button{all:unset;cursor:pointer;position:relative;order:2;margin-top:12px;margin-right:12px;line-height:0px}.tooltip-dismissible .tooltip-dismissible-content{display:flex;flex-direction:column;gap:12px;padding:12px;flex-grow:1;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere}.tooltip-dismissible .tooltip-dismissible-header,.tooltip-dismissible .tooltip-dismissible-body{font-size:14px;font-style:normal;line-height:20px}.tooltip-dismissible .tooltip-dismissible-header{font-weight:600}.tooltip-dismissible .tooltip-dismissible-body{font-weight:400}.tooltip-compact{padding:4px 8px;text-align:center;flex-grow:1}.tooltip-extended{align-items:center;padding:12px;gap:10px}.tooltip-extended .extended_icon{display:flex;align-self:flex-start;align-items:center;cursor:pointer}.tooltip-extended .tooltip-extended-content{display:flex;flex-direction:column;gap:12px;flex-grow:1;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere}.tooltip-extended .tooltip-extended-header,.tooltip-extended .tooltip-extended-body{font-size:14px;font-style:normal;line-height:20px}.tooltip-extended .tooltip-extended-header{font-weight:600}.tooltip-extended .tooltip-extended-body{font-weight:400}.tooltip__container .tooltip-arrow-svg{position:absolute;width:8px;height:8px}[data-placement=top].tooltip-extended>.tooltip-arrow-svg,[data-placement=top].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=top].tooltip-compact>.tooltip-arrow-svg{bottom:-7px;left:50%;transform:rotate(180deg) translateX(-50%)}[data-placement=top-start].tooltip-extended>.tooltip-arrow-svg,[data-placement=top-start].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=top-start].tooltip-compact>.tooltip-arrow-svg{bottom:-7px;left:10px;transform:rotate(180deg)}[data-placement=top-end].tooltip-extended>.tooltip-arrow-svg,[data-placement=top-end].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=top-end].tooltip-compact>.tooltip-arrow-svg{bottom:-7px;right:10px;transform:rotate(180deg)}[data-placement=bottom].tooltip-extended>.tooltip-arrow-svg,[data-placement=bottom].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=bottom].tooltip-compact>.tooltip-arrow-svg{top:-7px;left:50%;transform:translateX(-50%)}[data-placement=bottom-start].tooltip-extended>.tooltip-arrow-svg,[data-placement=bottom-start].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=bottom-start].tooltip-compact>.tooltip-arrow-svg{top:-7px;left:10px}[data-placement=bottom-end].tooltip-extended>.tooltip-arrow-svg,[data-placement=bottom-end].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=bottom-end].tooltip-compact>.tooltip-arrow-svg{top:-7px;right:10px}[data-placement=left].tooltip-extended>.tooltip-arrow-svg,[data-placement=left].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=left].tooltip-compact>.tooltip-arrow-svg{right:-3px;top:50%;transform:rotate(90deg) translateY(-50%) translateX(-50%)}[data-placement=right].tooltip-extended>.tooltip-arrow-svg,[data-placement=right].tooltip-dismissible>.tooltip-arrow-svg,[data-placement=right].tooltip-compact>.tooltip-arrow-svg{left:-3px;top:50%;transform:rotate(270deg) translateY(-50%) translateX(50%)}.tooltip-compact{min-width:28px !important;max-width:145px !important}.tooltip-dismissible{min-width:145px !important;max-width:310px !important}.tooltip-extended{min-width:145px !important;max-width:310px !important}";
@@ -10,12 +10,6 @@ const Tooltip = /*@__PURE__*/ proxyCustomElement(class Tooltip extends H {
10
10
  super();
11
11
  this.__registerHost();
12
12
  this.__attachShadow();
13
- this.tooltipVisible = false;
14
- this.header = '';
15
- this.text = '';
16
- this.position = 'auto';
17
- this.internalPosition = 'auto';
18
- this.variant = 'compact';
19
13
  this.popperInstance = null;
20
14
  this.onMouseEnter = () => {
21
15
  var _a, _b;
@@ -49,6 +43,13 @@ const Tooltip = /*@__PURE__*/ proxyCustomElement(class Tooltip extends H {
49
43
  this.tooltipVisible = false;
50
44
  this.tooltipEl.style.display = 'none';
51
45
  };
46
+ this.tooltipVisible = false;
47
+ this.header = '';
48
+ this.text = '';
49
+ this.position = 'auto';
50
+ this.internalPosition = 'auto';
51
+ this.variant = 'compact';
52
+ this.icon = undefined;
52
53
  }
53
54
  componentWillLoad() {
54
55
  if (this.variant.toLowerCase().trim() === "") {
@@ -155,10 +156,10 @@ const Tooltip = /*@__PURE__*/ proxyCustomElement(class Tooltip extends H {
155
156
  'tooltip-extended': true,
156
157
  'visible': this.tooltipVisible,
157
158
  };
158
- return (h("div", { key: '5f723ab7cb77998867b0461e37bc79d6e4ba61a5', "aria-label": "a tooltip showing important information", "aria-value": this.header, class: "tooltip__container" }, h("slot", { key: 'a22a8f62431b618aafbd803050dc909e6d797076' }), this.variant.toLowerCase() === 'dismissible' && h("div", { key: '1dac2d6cd1d3c2f4a65bcbcfc9f448c9228bcad1', class: tooltipDismissible }, h("button", { key: '7b837916f8707d1bfc0dd7bd9e39c2fc5083a897', "aria-label": "Close Tooltip", class: "close-button", onClick: this.onDismissClick }, h("ifx-icon", { key: '242ed6be4f8bbca450f845b936de46461eff9783', icon: "cross16" })), h("div", { key: '897a1e28268e4d87fea0aee2cc65acb98b419d73', class: "tooltip-dismissible-content" }, this.header && h("div", { key: '3f7fcffcbf27946a8e22bc8d7eccd10edd1bfd9c', class: "tooltip-dismissible-header" }, this.header), h("div", { key: '3c4f35aaed3b92cd26211d2e887af20316369e14', class: "tooltip-dismissible-body" }, this.text)), h("svg", { key: 'bbb8989f2f35d54166892df95ab3fa7b523e8da4', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '30cd52b47114a0633729604cad3928085ce2d5eb', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" }))), this.variant.toLowerCase() === 'compact' &&
159
- h("div", { key: 'f1937f4fe6738a5ec5e2ff97d40833de6e556ea0', class: tooltipCompact }, this.text, h("svg", { key: 'af49be55f76aa695f873574cf6b1d8c224d3d1bd', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '6a1b409ee0a6acc3cb40f570859db21fa6e95dab', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" }))), this.variant.toLowerCase() === 'extended' &&
160
- h("div", { key: 'e8db59cd9bfb1017473cb4978d55a9d95ef716a7', class: tooltipExtended }, h("slot", { key: '9bc3ee5d1facb90e4f3a80e62edb60db9798a311', name: "icon" }, this.icon ? h("div", { class: "extended_icon" }, h("ifx-icon", { icon: this.icon })) :
161
- h("svg", { class: "extended_icon", xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24" }, h("path", { stroke: "#fff", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.5 2.5h-16a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-16a2 2 0 0 0-2-2Z" }), h("path", { stroke: "#fff", d: "M19 17H6l2.5-4 2.097 2.516.405.486.379-.506 4.118-5.49.003-.002L19 17Z" }), h("path", { fill: "#fff", d: "M10 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z" }))), h("div", { key: '1ced5581d26ad2cee6901e662fd0631695816ec3', class: "tooltip-extended-content" }, this.header && h("div", { key: '00536a9556d42a36afc8ee3282b531b10e6331a4', class: "tooltip-extended-header" }, this.header), h("div", { key: 'df9c595d583240132a838dc8d9c073c7066c5d17', class: "tooltip-extended-body" }, this.text)), h("svg", { key: '7ba21ada3d496d2ac9a1314b6773299f99927cdf', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '3079c667691d7a11a28efd9180510f03bd001f58', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" })))));
159
+ return (h("div", { key: '7da57630a19be3d8b55667e0764445203cd1f77c', "aria-label": "a tooltip showing important information", "aria-value": this.header, class: "tooltip__container" }, h("slot", { key: '3a55da34a85606a8fd32207550366fad3436f120' }), this.variant.toLowerCase() === 'dismissible' && h("div", { key: '67dec6dcc56c7f3ca8a8a67ff070df931433f71e', class: tooltipDismissible }, h("button", { key: 'db34f7fe5237d960ff0a728f4b82c3df30c6266b', "aria-label": "Close Tooltip", class: "close-button", onClick: this.onDismissClick }, h("ifx-icon", { key: 'de96a6255887700e6b89a38b0ff549ea3916e1e7', icon: "cross16" })), h("div", { key: 'e324ffa46233ca6931ebe766c95e391d7c3d9ce2', class: "tooltip-dismissible-content" }, this.header && h("div", { key: 'd435679be58ec126b9fa9f785e960d2ef39b259d', class: "tooltip-dismissible-header" }, this.header), h("div", { key: 'd3ce120faae0d9b12d28069673d19e403e52763f', class: "tooltip-dismissible-body" }, this.text)), h("svg", { key: '28bf2c543359173d1ab0be2c9f098ff813b17650', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'a355efa505ea997469320a35262780942e495504', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" }))), this.variant.toLowerCase() === 'compact' &&
160
+ h("div", { key: '55d7bfd3d951839bf89f887419e57b85623a3a0e', class: tooltipCompact }, this.text, h("svg", { key: '36247aaeda7486865b15ca4e4097a36b69d571c1', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'ac90b5fd1f7188993695a1fc3ac084d8ba8cc8ee', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" }))), this.variant.toLowerCase() === 'extended' &&
161
+ h("div", { key: 'de8269abcb6ddc0219024b77f26d95cb809c8818', class: tooltipExtended }, h("slot", { key: 'f88f2cdaa9bafa4d95d7a6953fc4a2b4c49cad35', name: "icon" }, this.icon ? h("div", { class: "extended_icon" }, h("ifx-icon", { icon: this.icon })) :
162
+ h("svg", { class: "extended_icon", xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24" }, h("path", { stroke: "#fff", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.5 2.5h-16a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-16a2 2 0 0 0-2-2Z" }), h("path", { stroke: "#fff", d: "M19 17H6l2.5-4 2.097 2.516.405.486.379-.506 4.118-5.49.003-.002L19 17Z" }), h("path", { fill: "#fff", d: "M10 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z" }))), h("div", { key: '226db4dd5c26b73ee30e20378b5a664bc365581b', class: "tooltip-extended-content" }, this.header && h("div", { key: '47a5ffc018245e0375255ea0eefe77e85e3b630c', class: "tooltip-extended-header" }, this.header), h("div", { key: '7892a686219be701d4a912a77edf77ba9cb5840a', class: "tooltip-extended-body" }, this.text)), h("svg", { key: '143b7a548b751cabb80450637ca8f9da9d54efa7', class: "tooltip-arrow-svg", width: "12", height: "8", viewBox: "0 0 12 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '973348331d6ff15eaa25d9d29ab8490b5961d510', id: "Indicator", d: "M6 0L12 8L0 8L6 0Z", fill: "#1D1D1D" })))));
162
163
  }
163
164
  get el() { return this; }
164
165
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ifx-tooltip.js","mappings":"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","names":[],"sources":["src/components/tooltip/tooltip.scss?tag=ifx-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.tooltip__container {\n display: inline-flex;\n flex-direction: column;\n position: relative;\n font-family: var(--ifx-font-family);\n\n}\n\n%tooltip-common {\n background-color: tokens.$ifxColorBaseBlack;\n border: 1px solid black;\n z-index: 1080;\n display: none;\n transition: opacity 0.3s;\n position: absolute;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n color: tokens.$ifxColorBaseWhite;\n width: max-content;\n box-sizing: border-box;\n\n white-space: pre-wrap; /* wraps text at spaces and within words */\n word-wrap: break-word; /* breaks text within a word if necessary */\n overflow-wrap: anywhere; /* breaks text at arbitrary points when needed */\n\n &.visible {\n display: flex !important;\n align-items: start;\n //min-width: 100px;\n //width: auto;\n }\n}\n\n\n\n.tooltip-dismissible {\n @extend %tooltip-common;\n\n .close-button {\n all: unset;\n //position: absolute;\n //top: tokens.$ifxSpace150;\n //right: tokens.$ifxSpace150;\n cursor: pointer;\n position: relative;\n order: 2;\n margin-top: 12px;\n margin-right: 12px;\n line-height: 0px;\n }\n\n .tooltip-dismissible-content {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace150;\n padding: tokens.$ifxSpace150;\n flex-grow: 1;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n\n }\n\n .tooltip-dismissible-header,\n .tooltip-dismissible-body {\n font-size: 14px;\n font-style: normal;\n line-height: 20px;\n }\n\n .tooltip-dismissible-header {\n font-weight: tokens.$ifxFontWeightSemibold;\n }\n\n .tooltip-dismissible-body {\n font-weight: tokens.$ifxFontWeightRegular;\n }\n}\n\n.tooltip-compact {\n @extend %tooltip-common;\n padding: 4px 8px;\n text-align: center;\n flex-grow: 1;\n}\n\n\n.tooltip-extended {\n @extend %tooltip-common;\n //padding-left: 36px; // Added this line, adjust as per your icon width\n //padding-left: tokens.$ifxSpace150; // Added this line, adjust as per your icon width\n align-items: center;\n padding: tokens.$ifxSpace150;\n gap: 10px;\n\n .extended_icon {\n display: flex;\n align-self: flex-start;\n align-items: center;\n //padding-top: tokens.$ifxSpace150;\n cursor: pointer;\n }\n\n\n\n .tooltip-extended-content {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace150;\n //padding: tokens.$ifxSpace150;\n flex-grow: 1;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n }\n\n .tooltip-extended-header,\n .tooltip-extended-body {\n font-size: 14px;\n font-style: normal;\n line-height: 20px;\n }\n\n .tooltip-extended-header {\n font-weight: tokens.$ifxFontWeightSemibold;\n }\n\n .tooltip-extended-body {\n font-weight: tokens.$ifxFontWeightRegular;\n }\n}\n\n\n.tooltip__container .tooltip-arrow-svg {\n position: absolute;\n width: 8px;\n height: 8px;\n}\n\n\n%tooltip-arrow-positions {\n\n // For 'top' placement\n &[data-placement=\"top\"]>.tooltip-arrow-svg {\n bottom: -7px;\n left: 50%;\n transform: rotate(180deg) translateX(-50%);\n }\n\n // For 'top-start' placement\n &[data-placement=\"top-start\"]>.tooltip-arrow-svg {\n bottom: -7px;\n left: 10px; // Adjust as needed\n transform: rotate(180deg)\n }\n\n // For 'top-end' placement\n &[data-placement=\"top-end\"]>.tooltip-arrow-svg {\n bottom: -7px;\n right: 10px; // Adjust as needed\n transform: rotate(180deg);\n }\n\n // For 'bottom' placement\n &[data-placement=\"bottom\"]>.tooltip-arrow-svg {\n top: -7px;\n left: 50%;\n transform: translateX(-50%);\n }\n\n // For 'bottom-start' placement\n &[data-placement=\"bottom-start\"]>.tooltip-arrow-svg {\n top: -7px;\n left: 10px; // Adjust as needed\n }\n\n // For 'bottom-end' placement\n &[data-placement=\"bottom-end\"]>.tooltip-arrow-svg {\n top: -7px;\n right: 10px; // Adjust as needed\n }\n\n // For 'left' placement\n &[data-placement=\"left\"]>.tooltip-arrow-svg {\n right: -3px;\n top: 50%;\n transform: rotate(90deg) translateY(-50%) translateX(-50%);\n }\n\n // For 'right' placement\n &[data-placement=\"right\"]>.tooltip-arrow-svg {\n left: -3px;\n top: 50%;\n transform: rotate(270deg) translateY(-50%) translateX(50%);\n }\n}\n\n\n.tooltip-compact {\n @extend %tooltip-arrow-positions;\n min-width: 28px !important;\n max-width: 145px !important;\n}\n\n.tooltip-dismissible {\n @extend %tooltip-arrow-positions;\n min-width: 145px !important;\n max-width: 310px !important;\n}\n\n.tooltip-extended {\n @extend %tooltip-arrow-positions;\n min-width: 145px !important;\n max-width: 310px !important;\n}\n","import { Component, Prop, h, Element, State, Watch } from '@stencil/core';\nimport { createPopper } from '@popperjs/core';\n \n\n@Component({\n tag: 'ifx-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true\n})\nexport class Tooltip {\n\n @Element() el: HTMLElement;\n @State() tooltipVisible: boolean = false;\n @Prop() header: string = '';\n @Prop() text: string = '';\n @Prop() position: 'bottom-start' | 'top-start' | 'left' | 'bottom-end' | 'top-end' | 'right' | 'bottom' | 'top' | 'auto' = 'auto';\n @State() internalPosition: 'bottom-start' | 'top-start' | 'left' | 'bottom-end' | 'top-end' | 'right' | 'bottom' | 'top' | 'auto' = 'auto';\n\n @Prop() variant: 'compact' | 'dismissible' | 'extended' = 'compact';\n @Prop() icon: string;\n\n tooltipEl: HTMLElement;\n referenceEl: HTMLElement;\n popperInstance: any = null;\n\n\n componentWillLoad() { \n if(this.variant.toLowerCase().trim() === \"\") { \n this.variant = 'compact'\n }\n }\n \n componentDidLoad() {\n const slotElement = this.el.shadowRoot.querySelector('.tooltip__container').firstChild;\n \n if(this.variant.toLowerCase() === 'compact' || this.variant.toLowerCase() === 'extended') {\n slotElement.addEventListener('mouseenter', this.onMouseEnter)\n slotElement.addEventListener('mouseleave', this.onMouseLeave)\n }else{\n slotElement.addEventListener('click', this.onClick);\n }\n\n }\n\n initializePopper() {\n if (this.popperInstance) return;\n\n this.referenceEl = this.el;\n this.tooltipEl;\n if (this.variant.toLowerCase() === 'compact') {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-compact');\n }\n else if (this.variant.toLowerCase() === 'dismissible') {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-dismissible');\n }\n else {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-extended');\n\n }\n\n const effectivePosition = this.position === 'auto' ? this.determineBestPosition() : this.position;\n\n // Set the internalPosition\n this.internalPosition = effectivePosition;\n\n if (this.tooltipEl && this.referenceEl) {\n\n this.popperInstance = createPopper(this.referenceEl, this.tooltipEl, {\n placement: this.internalPosition,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8] // this offset should be adjusted to ensure the tooltip doesn't overlap its reference element\n }\n },\n {\n name: 'arrow',\n options: {\n element: '.tooltip-arrow-svg'\n }\n }\n ]\n });\n\n }\n\n // Add this line to set the 'data-placement' attribute on the tooltip\n this.tooltipEl.setAttribute('data-placement', effectivePosition);\n\n\n }\n\n determineBestPosition() {\n // This is a simplified version, you can enhance this based on available viewport space.\n const rect = this.referenceEl.getBoundingClientRect();\n const yOffset = window.scrollY; // Get current scroll position\n const xOffset = window.scrollX; // Get current horizontal scroll position\n\n const verticalHalfwayPoint = rect.top + yOffset + rect.height / 2;\n const horizontalHalfwayPoint = rect.left + xOffset + rect.width / 2;\n\n if (this.position === 'auto') {\n if (verticalHalfwayPoint > window.innerHeight / 2) {\n if (horizontalHalfwayPoint > window.innerWidth / 2) {\n return 'top-end';\n } else {\n return 'top-start';\n }\n } else {\n if (horizontalHalfwayPoint > window.innerWidth / 2) {\n return 'bottom-end';\n } else {\n return 'bottom-start';\n }\n }\n } else {\n return this.position;\n }\n }\n\n @Watch('position')\n positionChanged(newVal: any) {\n this.internalPosition = newVal;\n this.popperInstance?.destroy();\n this.popperInstance = null; // Force re-initialization on next mouse enter\n }\n\n\n\n onMouseEnter = () => {\n // Enable the event listeners immediately\n this.popperInstance?.setOptions((options) => ({\n ...options,\n modifiers: [\n ...options.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n // Initialize the popper instance\n this.initializePopper();\n\n // Make the tooltip visible\n this.tooltipVisible = true;\n this.tooltipEl.style.display = 'block';\n\n // Update the popper instance immediately after initialization\n this.popperInstance?.update();\n }\n\n\n onMouseLeave = () => {\n this.tooltipVisible = false;\n this.tooltipEl.style.display = 'none';\n\n }\n\n disconnectedCallback() {\n this.popperInstance?.destroy();\n }\n\n onClick = () => {\n if (this.variant.toLowerCase() === 'dismissible') {\n this.initializePopper();\n this.tooltipVisible = !this.tooltipVisible;\n this.tooltipEl.style.display = this.tooltipVisible ? 'block' : 'none';\n this.popperInstance?.update();\n }\n }\n\n onDismissClick = () => {\n this.tooltipVisible = false;\n this.tooltipEl.style.display = 'none';\n }\n\n render() {\n const tooltipDismissible = {\n 'tooltip-dismissible': true,\n 'visible': this.tooltipVisible,\n };\n\n const tooltipCompact = {\n 'tooltip-compact': true,\n 'visible': this.tooltipVisible,\n };\n\n const tooltipExtended = {\n 'tooltip-extended': true,\n 'visible': this.tooltipVisible,\n };\n\n return (\n <div aria-label=\"a tooltip showing important information\" aria-value={this.header} class=\"tooltip__container\" >\n <slot></slot>\n\n {this.variant.toLowerCase() === 'dismissible' && <div class={tooltipDismissible}>\n <button aria-label=\"Close Tooltip\" class=\"close-button\" onClick={this.onDismissClick}>\n <ifx-icon icon=\"cross16\"></ifx-icon>\n </button>\n <div class=\"tooltip-dismissible-content\">\n {this.header && <div class=\"tooltip-dismissible-header\">{this.header}</div>}\n <div class=\"tooltip-dismissible-body\">{this.text}</div>\n </div>\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div>\n }\n {this.variant.toLowerCase() === 'compact' &&\n <div class={tooltipCompact}>\n {this.text}\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div>\n }\n {this.variant.toLowerCase() === 'extended' &&\n <div class={tooltipExtended}>\n <slot name=\"icon\">\n {this.icon ? <div class=\"extended_icon\"><ifx-icon icon={this.icon}></ifx-icon></div> :\n <svg class=\"extended_icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"#fff\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M20.5 2.5h-16a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-16a2 2 0 0 0-2-2Z\" />\n <path stroke=\"#fff\" d=\"M19 17H6l2.5-4 2.097 2.516.405.486.379-.506 4.118-5.49.003-.002L19 17Z\" />\n <path fill=\"#fff\" d=\"M10 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\" />\n </svg>\n }\n </slot>\n <div class=\"tooltip-extended-content\">\n {this.header && <div class=\"tooltip-extended-header\">{this.header}</div>}\n <div class=\"tooltip-extended-body\">{this.text}</div>\n </div>\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div >\n }\n </div>\n );\n }\n\n\n}"],"version":3}
1
+ {"file":"ifx-tooltip.js","mappings":"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","names":[],"sources":["src/components/tooltip/tooltip.scss?tag=ifx-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.tooltip__container {\n display: inline-flex;\n flex-direction: column;\n position: relative;\n font-family: var(--ifx-font-family);\n\n}\n\n%tooltip-common {\n background-color: tokens.$ifxColorBaseBlack;\n border: 1px solid black;\n z-index: 1080;\n display: none;\n transition: opacity 0.3s;\n position: absolute;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n color: tokens.$ifxColorBaseWhite;\n width: max-content;\n box-sizing: border-box;\n\n white-space: pre-wrap; /* wraps text at spaces and within words */\n word-wrap: break-word; /* breaks text within a word if necessary */\n overflow-wrap: anywhere; /* breaks text at arbitrary points when needed */\n\n &.visible {\n display: flex !important;\n align-items: start;\n //min-width: 100px;\n //width: auto;\n }\n}\n\n\n\n.tooltip-dismissible {\n @extend %tooltip-common;\n\n .close-button {\n all: unset;\n //position: absolute;\n //top: tokens.$ifxSpace150;\n //right: tokens.$ifxSpace150;\n cursor: pointer;\n position: relative;\n order: 2;\n margin-top: 12px;\n margin-right: 12px;\n line-height: 0px;\n }\n\n .tooltip-dismissible-content {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace150;\n padding: tokens.$ifxSpace150;\n flex-grow: 1;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n\n }\n\n .tooltip-dismissible-header,\n .tooltip-dismissible-body {\n font-size: 14px;\n font-style: normal;\n line-height: 20px;\n }\n\n .tooltip-dismissible-header {\n font-weight: tokens.$ifxFontWeightSemibold;\n }\n\n .tooltip-dismissible-body {\n font-weight: tokens.$ifxFontWeightRegular;\n }\n}\n\n.tooltip-compact {\n @extend %tooltip-common;\n padding: 4px 8px;\n text-align: center;\n flex-grow: 1;\n}\n\n\n.tooltip-extended {\n @extend %tooltip-common;\n //padding-left: 36px; // Added this line, adjust as per your icon width\n //padding-left: tokens.$ifxSpace150; // Added this line, adjust as per your icon width\n align-items: center;\n padding: tokens.$ifxSpace150;\n gap: 10px;\n\n .extended_icon {\n display: flex;\n align-self: flex-start;\n align-items: center;\n //padding-top: tokens.$ifxSpace150;\n cursor: pointer;\n }\n\n\n\n .tooltip-extended-content {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace150;\n //padding: tokens.$ifxSpace150;\n flex-grow: 1;\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n }\n\n .tooltip-extended-header,\n .tooltip-extended-body {\n font-size: 14px;\n font-style: normal;\n line-height: 20px;\n }\n\n .tooltip-extended-header {\n font-weight: tokens.$ifxFontWeightSemibold;\n }\n\n .tooltip-extended-body {\n font-weight: tokens.$ifxFontWeightRegular;\n }\n}\n\n\n.tooltip__container .tooltip-arrow-svg {\n position: absolute;\n width: 8px;\n height: 8px;\n}\n\n\n%tooltip-arrow-positions {\n\n // For 'top' placement\n &[data-placement=\"top\"]>.tooltip-arrow-svg {\n bottom: -7px;\n left: 50%;\n transform: rotate(180deg) translateX(-50%);\n }\n\n // For 'top-start' placement\n &[data-placement=\"top-start\"]>.tooltip-arrow-svg {\n bottom: -7px;\n left: 10px; // Adjust as needed\n transform: rotate(180deg)\n }\n\n // For 'top-end' placement\n &[data-placement=\"top-end\"]>.tooltip-arrow-svg {\n bottom: -7px;\n right: 10px; // Adjust as needed\n transform: rotate(180deg);\n }\n\n // For 'bottom' placement\n &[data-placement=\"bottom\"]>.tooltip-arrow-svg {\n top: -7px;\n left: 50%;\n transform: translateX(-50%);\n }\n\n // For 'bottom-start' placement\n &[data-placement=\"bottom-start\"]>.tooltip-arrow-svg {\n top: -7px;\n left: 10px; // Adjust as needed\n }\n\n // For 'bottom-end' placement\n &[data-placement=\"bottom-end\"]>.tooltip-arrow-svg {\n top: -7px;\n right: 10px; // Adjust as needed\n }\n\n // For 'left' placement\n &[data-placement=\"left\"]>.tooltip-arrow-svg {\n right: -3px;\n top: 50%;\n transform: rotate(90deg) translateY(-50%) translateX(-50%);\n }\n\n // For 'right' placement\n &[data-placement=\"right\"]>.tooltip-arrow-svg {\n left: -3px;\n top: 50%;\n transform: rotate(270deg) translateY(-50%) translateX(50%);\n }\n}\n\n\n.tooltip-compact {\n @extend %tooltip-arrow-positions;\n min-width: 28px !important;\n max-width: 145px !important;\n}\n\n.tooltip-dismissible {\n @extend %tooltip-arrow-positions;\n min-width: 145px !important;\n max-width: 310px !important;\n}\n\n.tooltip-extended {\n @extend %tooltip-arrow-positions;\n min-width: 145px !important;\n max-width: 310px !important;\n}\n","import { Component, Prop, h, Element, State, Watch } from '@stencil/core';\nimport { createPopper } from '@popperjs/core';\n \n\n@Component({\n tag: 'ifx-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true\n})\nexport class Tooltip {\n\n @Element() el: HTMLElement;\n @State() tooltipVisible: boolean = false;\n @Prop() header: string = '';\n @Prop() text: string = '';\n @Prop() position: 'bottom-start' | 'top-start' | 'left' | 'bottom-end' | 'top-end' | 'right' | 'bottom' | 'top' | 'auto' = 'auto';\n @State() internalPosition: 'bottom-start' | 'top-start' | 'left' | 'bottom-end' | 'top-end' | 'right' | 'bottom' | 'top' | 'auto' = 'auto';\n\n @Prop() variant: 'compact' | 'dismissible' | 'extended' = 'compact';\n @Prop() icon: string;\n\n tooltipEl: HTMLElement;\n referenceEl: HTMLElement;\n popperInstance: any = null;\n\n\n componentWillLoad() { \n if(this.variant.toLowerCase().trim() === \"\") { \n this.variant = 'compact'\n }\n }\n \n componentDidLoad() {\n const slotElement = this.el.shadowRoot.querySelector('.tooltip__container').firstChild;\n \n if(this.variant.toLowerCase() === 'compact' || this.variant.toLowerCase() === 'extended') {\n slotElement.addEventListener('mouseenter', this.onMouseEnter)\n slotElement.addEventListener('mouseleave', this.onMouseLeave)\n }else{\n slotElement.addEventListener('click', this.onClick);\n }\n\n }\n\n initializePopper() {\n if (this.popperInstance) return;\n\n this.referenceEl = this.el;\n this.tooltipEl;\n if (this.variant.toLowerCase() === 'compact') {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-compact');\n }\n else if (this.variant.toLowerCase() === 'dismissible') {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-dismissible');\n }\n else {\n this.tooltipEl = this.el.shadowRoot.querySelector('.tooltip-extended');\n\n }\n\n const effectivePosition = this.position === 'auto' ? this.determineBestPosition() : this.position;\n\n // Set the internalPosition\n this.internalPosition = effectivePosition;\n\n if (this.tooltipEl && this.referenceEl) {\n\n this.popperInstance = createPopper(this.referenceEl, this.tooltipEl, {\n placement: this.internalPosition,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8] // this offset should be adjusted to ensure the tooltip doesn't overlap its reference element\n }\n },\n {\n name: 'arrow',\n options: {\n element: '.tooltip-arrow-svg'\n }\n }\n ]\n });\n\n }\n\n // Add this line to set the 'data-placement' attribute on the tooltip\n this.tooltipEl.setAttribute('data-placement', effectivePosition);\n\n\n }\n\n determineBestPosition() {\n // This is a simplified version, you can enhance this based on available viewport space.\n const rect = this.referenceEl.getBoundingClientRect();\n const yOffset = window.scrollY; // Get current scroll position\n const xOffset = window.scrollX; // Get current horizontal scroll position\n\n const verticalHalfwayPoint = rect.top + yOffset + rect.height / 2;\n const horizontalHalfwayPoint = rect.left + xOffset + rect.width / 2;\n\n if (this.position === 'auto') {\n if (verticalHalfwayPoint > window.innerHeight / 2) {\n if (horizontalHalfwayPoint > window.innerWidth / 2) {\n return 'top-end';\n } else {\n return 'top-start';\n }\n } else {\n if (horizontalHalfwayPoint > window.innerWidth / 2) {\n return 'bottom-end';\n } else {\n return 'bottom-start';\n }\n }\n } else {\n return this.position;\n }\n }\n\n @Watch('position')\n positionChanged(newVal: any) {\n this.internalPosition = newVal;\n this.popperInstance?.destroy();\n this.popperInstance = null; // Force re-initialization on next mouse enter\n }\n\n\n\n onMouseEnter = () => {\n // Enable the event listeners immediately\n this.popperInstance?.setOptions((options) => ({\n ...options,\n modifiers: [\n ...options.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n // Initialize the popper instance\n this.initializePopper();\n\n // Make the tooltip visible\n this.tooltipVisible = true;\n this.tooltipEl.style.display = 'block';\n\n // Update the popper instance immediately after initialization\n this.popperInstance?.update();\n }\n\n\n onMouseLeave = () => {\n this.tooltipVisible = false;\n this.tooltipEl.style.display = 'none';\n\n }\n\n disconnectedCallback() {\n this.popperInstance?.destroy();\n }\n\n onClick = () => {\n if (this.variant.toLowerCase() === 'dismissible') {\n this.initializePopper();\n this.tooltipVisible = !this.tooltipVisible;\n this.tooltipEl.style.display = this.tooltipVisible ? 'block' : 'none';\n this.popperInstance?.update();\n }\n }\n\n onDismissClick = () => {\n this.tooltipVisible = false;\n this.tooltipEl.style.display = 'none';\n }\n\n render() {\n const tooltipDismissible = {\n 'tooltip-dismissible': true,\n 'visible': this.tooltipVisible,\n };\n\n const tooltipCompact = {\n 'tooltip-compact': true,\n 'visible': this.tooltipVisible,\n };\n\n const tooltipExtended = {\n 'tooltip-extended': true,\n 'visible': this.tooltipVisible,\n };\n\n return (\n <div aria-label=\"a tooltip showing important information\" aria-value={this.header} class=\"tooltip__container\" >\n <slot></slot>\n\n {this.variant.toLowerCase() === 'dismissible' && <div class={tooltipDismissible}>\n <button aria-label=\"Close Tooltip\" class=\"close-button\" onClick={this.onDismissClick}>\n <ifx-icon icon=\"cross16\"></ifx-icon>\n </button>\n <div class=\"tooltip-dismissible-content\">\n {this.header && <div class=\"tooltip-dismissible-header\">{this.header}</div>}\n <div class=\"tooltip-dismissible-body\">{this.text}</div>\n </div>\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div>\n }\n {this.variant.toLowerCase() === 'compact' &&\n <div class={tooltipCompact}>\n {this.text}\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div>\n }\n {this.variant.toLowerCase() === 'extended' &&\n <div class={tooltipExtended}>\n <slot name=\"icon\">\n {this.icon ? <div class=\"extended_icon\"><ifx-icon icon={this.icon}></ifx-icon></div> :\n <svg class=\"extended_icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"#fff\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M20.5 2.5h-16a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-16a2 2 0 0 0-2-2Z\" />\n <path stroke=\"#fff\" d=\"M19 17H6l2.5-4 2.097 2.516.405.486.379-.506 4.118-5.49.003-.002L19 17Z\" />\n <path fill=\"#fff\" d=\"M10 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\" />\n </svg>\n }\n </slot>\n <div class=\"tooltip-extended-content\">\n {this.header && <div class=\"tooltip-extended-header\">{this.header}</div>}\n <div class=\"tooltip-extended-body\">{this.text}</div>\n </div>\n <svg class=\"tooltip-arrow-svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"Indicator\" d=\"M6 0L12 8L0 8L6 0Z\" fill=\"#1D1D1D\" />\n </svg>\n </div >\n }\n </div>\n );\n }\n\n\n}"],"version":3}
@@ -1,3 +1,3 @@
1
- export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-a99edff1.js';
1
+ export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-68d90201.js';
2
2
 
3
3
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-a99edff1.js';
2
- import { d as defineCustomElement$1 } from './p-06410557.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-68d90201.js';
2
+ import { d as defineCustomElement$1 } from './p-7e430b83.js';
3
3
 
4
4
  const textFieldCss = ":root{--ifx-font-family:\"Source Sans 3\";font-family:var(--ifx-font-family, sans-serif)}:host{display:flex}.textInput__container{display:flex;flex-direction:column;align-items:flex-start;padding:0px;width:100%;flex:none;order:0;align-self:stretch;flex-grow:0;font-family:var(--ifx-font-family)}.textInput__container.disabled .textInput__top-wrapper label{color:#575352}.textInput__container.disabled .textInput__bottom-wrapper input{border:1px solid #575352;background-color:#EEEDED}.textInput__container.disabled .textInput__bottom-wrapper input::placeholder{font-size:0.875rem;color:#575352}.textInput__container .textInput__top-wrapper{display:flex;flex-direction:row;align-items:flex-start;padding:0px;gap:4px;flex:none;order:0;align-self:stretch;flex-grow:0}.textInput__container .textInput__top-wrapper label{font-style:normal;font-weight:400;font-size:1rem;line-height:1.5rem;display:flex;align-items:center;color:#1D1D1D;flex:none;order:0;flex-grow:0}.textInput__container .textInput__top-wrapper label .optional-required{margin-left:4px}.textInput__container .textInput__top-wrapper label .optional{margin-left:4px}.textInput__container .textInput__top-wrapper label .required{margin-left:4px}.textInput__container .textInput__top-wrapper label .required.error{color:#CD002F}.textInput__container .input-container{position:relative;display:flex;align-items:center;width:100%}.textInput__container .textInput__bottom-wrapper{flex-grow:1;position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:0px;gap:4px;flex:none;order:1;align-self:stretch;flex-grow:0}.textInput__container .textInput__bottom-wrapper input{width:100%;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;padding:8px 16px;gap:8px;height:40px;background-color:#FFFFFF;color:#1D1D1D;font-family:\"Source Sans 3\";font-size:1rem;line-height:1.5rem;border:1px solid #8D8786;border-radius:1px;flex:none;order:0;align-self:stretch;flex-grow:0;text-overflow:ellipsis}.textInput__container .textInput__bottom-wrapper input.input-s{height:36px;font-size:0.875rem;line-height:1.25rem}.textInput__container .textInput__bottom-wrapper input.input-s::placeholder{font-size:0.875rem;line-height:1.25rem}.textInput__container .textInput__bottom-wrapper input.icon{padding-left:40px}.textInput__container .textInput__bottom-wrapper input.error{border:1px solid #CD002F}.textInput__container .textInput__bottom-wrapper input.error:focus{outline:none}.textInput__container .textInput__bottom-wrapper input.success{border:1px solid #4CA460}.textInput__container .textInput__bottom-wrapper input.success:focus{outline:none}.textInput__container .textInput__bottom-wrapper input:focus:not(.error,.success){outline:none;border:1px solid #0A8276}.textInput__container .textInput__bottom-wrapper input:hover:not(:disabled,:focus,.error,.success){border:1px solid #575352}.textInput__container .textInput__bottom-wrapper input::placeholder{font-style:normal;font-weight:400;font-size:1rem;line-height:1.5rem;color:#8D8786;flex:none;order:1;flex-grow:1}.textInput__container .textInput__bottom-wrapper .input-icon{position:absolute;top:50%;transform:translateY(-50%);left:16px;transition:0.3s;color:#8D8786}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption{font-style:normal;font-weight:400;font-size:0.75rem;line-height:1rem;letter-spacing:0.2px;color:#1D1D1D;flex:none;order:1;align-self:stretch;flex-grow:0}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption.error{color:#CD002F}.textInput__container .textInput__bottom-wrapper .textInput__bottom-wrapper-caption.disabled{color:#575352}.textInput__container .delete-icon{position:absolute;right:16px}.textInput__container .delete-icon :hover{cursor:pointer}";
5
5
  const IfxTextFieldStyle0 = textFieldCss;
@@ -22,6 +22,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends H {
22
22
  this.optional = false;
23
23
  this.success = false;
24
24
  this.disabled = false;
25
+ this.maxlength = undefined;
25
26
  this.showDeleteIcon = false;
26
27
  }
27
28
  valueWatcher(newValue) {
@@ -48,12 +49,12 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends H {
48
49
  this.internals.setFormValue("");
49
50
  }
50
51
  render() {
51
- return (h("div", { key: 'e42a147ed66f95907f7e74a1b1cecb2bd245567f', "aria-label": "a text field for user input", "aria-value": this.value, "aria-disabled": this.disabled, class: `textInput__container ${this.disabled ? 'disabled' : ""}` }, h("div", { key: '2f9d1a80a38ee45a01dd6e9bf636df13a0fc3cb9', class: "textInput__top-wrapper" }, h("label", { key: '43c2995e3e467e7e283c1146333376ece03fef3c', htmlFor: "text-field" }, h("slot", { key: 'c4ac5b9e89dfcbc34fafcb4506eb5e8bcccb0ea1' }), this.optional && this.required ? (h("span", { class: "optional-required" }, "(optional) *")) : this.optional ? (h("span", { class: "optional" }, "(optional)")) : this.required ? (h("span", { class: `required ${this.error ? 'error' : ""}` }, "*")) : null)), h("div", { key: '0d336f053656ef3603fd20c39f2a7ca53f9e7bcf', class: "textInput__bottom-wrapper" }, h("div", { key: '364059c012dda2e3326957943014d76c3668ec56', class: "input-container" }, this.icon && (h("ifx-icon", { key: '92c3d4666bf546fe0959872bab509ec740e258f8', class: 'input-icon', icon: this.icon })), h("input", { key: '640ca8c190e760fe7efe301ab5cf6de0fcb29ed0', ref: (el) => (this.inputElement = el), disabled: this.disabled, type: "text", id: 'text-field', value: this.value, onInput: () => this.handleInput(), placeholder: this.placeholder, maxlength: this.maxlength, class: `${this.icon ? 'icon' : ""}
52
+ return (h("div", { key: 'bb23874d364dd5cd6a93018b402d5e903210b667', "aria-label": "a text field for user input", "aria-value": this.value, "aria-disabled": this.disabled, class: `textInput__container ${this.disabled ? 'disabled' : ""}` }, h("div", { key: '2dbde0b3989f6b86587396a85a3c3e8e02f3f4d7', class: "textInput__top-wrapper" }, h("label", { key: '90a36f87df7fc093f5ce2152a2cdbff0aa0fab96', htmlFor: "text-field" }, h("slot", { key: '70197d0b96b5e0f3c193d3fd3e09d4c3156165af' }), this.optional && this.required ? (h("span", { class: "optional-required" }, "(optional) *")) : this.optional ? (h("span", { class: "optional" }, "(optional)")) : this.required ? (h("span", { class: `required ${this.error ? 'error' : ""}` }, "*")) : null)), h("div", { key: '326320a974bd5b6af15430dc3aca413fc2637dd3', class: "textInput__bottom-wrapper" }, h("div", { key: '3e5187212136c6f03056de3f0755e387b46e0f35', class: "input-container" }, this.icon && (h("ifx-icon", { key: 'e748bf9dafec5c7dc917131bd96fd4d049606a42', class: 'input-icon', icon: this.icon })), h("input", { key: '96e3dc6d940e3a85493810a89f5ba5e9493f4c2a', ref: (el) => (this.inputElement = el), disabled: this.disabled, type: "text", id: 'text-field', value: this.value, onInput: () => this.handleInput(), placeholder: this.placeholder, maxlength: this.maxlength, class: `${this.icon ? 'icon' : ""}
52
53
  ${this.error ? 'error' : ""}
53
54
  ${this.size === "s" ? "input-s" : ""}
54
- ${this.success ? "success" : ""}` }), (this.showDeleteIcon && this.value) && (h("ifx-icon", { key: '36cff10da96067388d323d186250ba51d0e8c463', class: "delete-icon", icon: "cremove16", onClick: () => this.handleDeleteContent() }))), this.caption && !this.error &&
55
- h("div", { key: '708870a8fe7644a971714d1f76387efc3d7c2db2', class: `textInput__bottom-wrapper-caption ${this.disabled} ? disabled : ""` }, this.caption), this.error &&
56
- h("div", { key: '000520268ab6bace4d687b41541002563fd6f59b', class: "textInput__bottom-wrapper-caption error" }, this.caption))));
55
+ ${this.success ? "success" : ""}` }), (this.showDeleteIcon && this.value) && (h("ifx-icon", { key: '53a67b4e4c3dd2f861e248b6deaf31ffbe448093', class: "delete-icon", icon: "cremove16", onClick: () => this.handleDeleteContent() }))), this.caption && !this.error &&
56
+ h("div", { key: '35e9c9fa9f7e2104c6b08f46a2669e0c65a6a456', class: `textInput__bottom-wrapper-caption ${this.disabled} ? disabled : ""` }, this.caption), this.error &&
57
+ h("div", { key: 'e613e3a9eabb12cb6001466a3e85b72cb456529d', class: "textInput__bottom-wrapper-caption error" }, this.caption))));
57
58
  }
58
59
  static get formAssociated() { return true; }
59
60
  get el() { return this; }
@@ -100,4 +101,4 @@ function defineCustomElement() {
100
101
 
101
102
  export { TextField as T, defineCustomElement as d };
102
103
 
103
- //# sourceMappingURL=p-bdeb1952.js.map
104
+ //# sourceMappingURL=p-03181918.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-03181918.js","mappings":"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","names":[],"sources":["src/components/text-field/text-field.scss?tag=ifx-text-field&encapsulation=shadow","src/components/text-field/text-field.tsx"],"sourcesContent":["@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"],"version":3}
@@ -1,7 +1,7 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h } from './p-a99edff1.js';
2
- import { d as defineCustomElement$3 } from './p-b4ee6732.js';
3
- import { d as defineCustomElement$2 } from './p-b62da6f0.js';
4
- import { d as defineCustomElement$1 } from './p-06410557.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-68d90201.js';
2
+ import { d as defineCustomElement$3 } from './p-f0f583d5.js';
3
+ import { d as defineCustomElement$2 } from './p-4b3befbf.js';
4
+ import { d as defineCustomElement$1 } from './p-7e430b83.js';
5
5
 
6
6
  const multiselectCss = ":root{--ifx-font-family:\"Source Sans 3\";font-family:var(--ifx-font-family, sans-serif)}.ifx-multiselect-container{position:relative;box-sizing:border-box;font-family:var(--ifx-font-family)}.ifx-multiselect-container.small-select{height:36px}.ifx-multiselect-container.medium-select{height:40px}.ifx-multiselect-container:hover{cursor:pointer}.ifx-multiselect-container .ifx-label-wrapper{font-size:1rem;line-height:1.5rem;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;max-width:100%}.ifx-multiselect-container .ifx-error-message-wrapper{color:#CD002F;font-size:0.75rem;line-height:1rem;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;max-width:100%}.ifx-multiselect-container .ifx-multiselect-wrapper{background-color:#FFFFFF;box-sizing:border-box;position:relative;display:flex;align-items:center;border:1px solid #8D8786;border-radius:1px;width:100%;font-weight:400;font-style:normal}.ifx-multiselect-container .ifx-multiselect-wrapper.small-select{height:36px;padding:8px 12px;font-size:0.875rem;line-height:1.25rem}.ifx-multiselect-container .ifx-multiselect-wrapper.medium-select{height:40px;padding:8px 16px;font-size:1rem;line-height:1.5rem}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible{outline:none}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible:not(.active):not(:active){outline:none}.ifx-multiselect-container .ifx-multiselect-wrapper:focus-visible:not(.active):not(:active)::before{content:\"\";position:absolute;width:calc(100% + 4px);height:calc(100% + 4px);top:50%;left:50%;transform:translate(-50%, -50%);border:2px solid #0A8276;border-radius:2px}.ifx-multiselect-container .ifx-multiselect-wrapper.disabled{background:#EEEDED;color:#575352;border-color:#575352;cursor:default;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ifx-multiselect-container .ifx-multiselect-wrapper.error{border-color:#CD002F}.ifx-multiselect-container .ifx-multiselect-wrapper:hover:not(.focus,:focus){border-color:#575352}.ifx-multiselect-container .ifx-multiselect-wrapper.active{border-color:#0A8276 !important}.ifx-multiselect-container .ifx-multiselect-wrapper.active .icon-wrapper-up{display:flex;align-items:center;justify-content:center;padding-left:8px}.ifx-multiselect-container .ifx-multiselect-wrapper.active .icon-wrapper-down{display:none}.ifx-multiselect-container .ifx-multiselect-wrapper .icon-wrapper-up{display:none}.ifx-multiselect-container .ifx-multiselect-wrapper .icon-wrapper-down{display:flex;align-items:center;justify-content:center;padding-left:8px}.ifx-multiselect-container .ifx-multiselect-wrapper.is-flipped .ifx-multiselect-dropdown-menu{top:auto;bottom:100%}.ifx-multiselect-container .ifx-multiselect-input{flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ifx-multiselect-container .ifx-multiselect-input.placeholder{opacity:0.5}.ifx-multiselect-container .ifx-multiselect-icon-container{margin-left:auto;align-items:center;display:flex}.ifx-multiselect-container .ifx-clear-button{display:flex}.ifx-multiselect-container .ifx-multiselect-dropdown-menu{position:absolute;top:100%;left:0;width:100%;margin-top:2px;background-color:#fff;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1);max-height:300px;overflow-y:auto;z-index:var(--dynamic-z-index, 1)}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input{position:sticky;top:0;left:0;z-index:1;width:100%;padding:8px 16px;font-size:1rem;line-height:1.5rem;font-style:normal;font-weight:400;box-sizing:border-box;background-color:#FFFFFF;border:none;border-bottom:1px solid #8D8786}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input:focus{outline:none;border:1px solid #0A8276}.ifx-multiselect-container .ifx-multiselect-dropdown-menu .search-input::placeholder{color:#999}.ifx-multiselect-container .option{position:relative;padding:8px 16px;gap:8px;align-items:center;display:flex;font-style:normal;font-weight:400}.ifx-multiselect-container .option.small-select{font-size:0.875rem;line-height:1.25rem}.ifx-multiselect-container .option.medium-select{font-size:1rem;line-height:1.5rem}.ifx-multiselect-container .option:hover{background-color:#EEEDED}.ifx-multiselect-container .option:focus:not(.disabled){background-color:#BFBBBB;outline:none}.ifx-multiselect-container .option.is-highlighted{background-color:#EEEDED}.ifx-multiselect-container .option.sub-option{padding-left:30px;}.ifx-multiselect-container .option.disabled:hover{cursor:default}.ifx-multiselect-container .option label{cursor:inherit}.select-all-wrapper{padding-top:8px}";
7
7
  const IfxMultiselectStyle0 = multiselectCss;
@@ -26,25 +26,7 @@ const Multiselect = /*@__PURE__*/ proxyCustomElement(class Multiselect extends H
26
26
  this.ifxSelect = createEvent(this, "ifxSelect", 7);
27
27
  this.ifxMultiselectIsOpen = createEvent(this, "ifxMultiselectIsOpen", 7);
28
28
  this.internals = this.attachInternals();
29
- this.batchSize = 50;
30
- this.size = 'medium (40px)';
31
- this.disabled = false;
32
- this.error = false;
33
- this.internalError = false;
34
- this.errorMessage = "Error";
35
- this.label = "";
36
- this.persistentSelectedOptions = [];
37
- this.placeholder = "";
38
- this.dropdownOpen = false;
39
- this.zIndex = 1; // default z-index value
40
29
  this.currentIndex = 0; //needed for option selection using keyboard
41
- this.isLoading = false;
42
- this.loadedOptions = [];
43
- this.filteredOptions = [];
44
- this.showSearch = true;
45
- this.showSelectAll = true;
46
- this.optionCount = 0; // number of all options (leaves of the tree)
47
- this.optionsProcessed = false; // flag whether options have already been counted, intial selections saved
48
30
  this.handleSearch = debounce((targetElement) => {
49
31
  const searchTerm = targetElement.value.toLowerCase();
50
32
  if (searchTerm === '') {
@@ -63,6 +45,29 @@ const Multiselect = /*@__PURE__*/ proxyCustomElement(class Multiselect extends H
63
45
  this.ifxMultiselectIsOpen.emit(this.dropdownOpen);
64
46
  }
65
47
  };
48
+ this.name = undefined;
49
+ this.options = undefined;
50
+ this.batchSize = 50;
51
+ this.size = 'medium (40px)';
52
+ this.disabled = false;
53
+ this.error = false;
54
+ this.internalError = false;
55
+ this.errorMessage = "Error";
56
+ this.internalErrorMessage = undefined;
57
+ this.label = "";
58
+ this.persistentSelectedOptions = [];
59
+ this.placeholder = "";
60
+ this.dropdownOpen = false;
61
+ this.dropdownFlipped = undefined;
62
+ this.maxItemCount = undefined;
63
+ this.zIndex = 1;
64
+ this.isLoading = false;
65
+ this.loadedOptions = [];
66
+ this.filteredOptions = [];
67
+ this.showSearch = true;
68
+ this.showSelectAll = true;
69
+ this.optionCount = 0;
70
+ this.optionsProcessed = false;
66
71
  }
67
72
  updateOptions() {
68
73
  this.loadedOptions = [];
@@ -583,4 +588,4 @@ function defineCustomElement() {
583
588
 
584
589
  export { Multiselect as M, defineCustomElement as d };
585
590
 
586
- //# sourceMappingURL=p-f0953b8a.js.map
591
+ //# sourceMappingURL=p-04b73e62.js.map