@infineon/infineon-design-system-stencil 35.4.3--canary.1941.c9a5e850bd5cf754cf4864a37f2bcf38ec080efe.0 → 35.5.0--canary.1904.0d4b003852c0b770dd57c6a1f84fbed5c045769e.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 (628) hide show
  1. package/dist/cjs/dom-utils-2c4573c2.js +20 -0
  2. package/dist/cjs/dom-utils-2c4573c2.js.map +1 -0
  3. package/dist/cjs/{icons-0d4d096d.js → icons-2cd72a7d.js} +4 -1
  4. package/dist/cjs/icons-2cd72a7d.js.map +1 -0
  5. package/dist/cjs/ifx-accordion_2.cjs.entry.js +8 -1
  6. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ifx-alert_2.cjs.entry.js +6 -0
  8. package/dist/cjs/ifx-alert_2.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ifx-badge.cjs.entry.js +9 -1
  10. package/dist/cjs/ifx-badge.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ifx-basic-table.cjs.entry.js +6 -1
  12. package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +8 -1
  14. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-button.cjs.entry.js +6 -1
  16. package/dist/cjs/ifx-button.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ifx-card.cjs.entry.js +8 -3
  18. package/dist/cjs/ifx-card.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ifx-checkbox-group.cjs.entry.js +6 -1
  20. package/dist/cjs/ifx-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-checkbox.cjs.entry.js +8 -3
  22. package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ifx-chip_3.cjs.entry.js +17 -9
  24. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ifx-content-switcher.cjs.entry.js +6 -1
  26. package/dist/cjs/ifx-content-switcher.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ifx-date-picker.cjs.entry.js +9 -2
  28. package/dist/cjs/ifx-date-picker.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ifx-dropdown.cjs.entry.js +6 -1
  30. package/dist/cjs/ifx-dropdown.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ifx-file-upload.cjs.entry.js +9 -2
  32. package/dist/cjs/ifx-file-upload.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ifx-footer.cjs.entry.js +9 -4
  34. package/dist/cjs/ifx-footer.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ifx-icon-button.cjs.entry.js +6 -1
  36. package/dist/cjs/ifx-icon-button.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ifx-icon.cjs.entry.js +32 -2
  38. package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-indicator.cjs.entry.js +7 -2
  41. package/dist/cjs/ifx-indicator.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ifx-link.cjs.entry.js +9 -1
  43. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ifx-modal.cjs.entry.js +9 -2
  45. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ifx-multiselect.cjs.entry.js +5 -0
  47. package/dist/cjs/ifx-multiselect.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ifx-navbar.cjs.entry.js +5 -3
  49. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ifx-notification.cjs.entry.js +10 -2
  51. package/dist/cjs/ifx-notification.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ifx-progress-bar.cjs.entry.js +7 -1
  53. package/dist/cjs/ifx-progress-bar.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ifx-radio-button-group.cjs.entry.js +6 -1
  55. package/dist/cjs/ifx-radio-button-group.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ifx-radio-button.cjs.entry.js +7 -2
  57. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ifx-search-bar.cjs.entry.js +6 -1
  59. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ifx-search-field.cjs.entry.js +9 -1
  61. package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ifx-segmented-control.cjs.entry.js +9 -2
  63. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ifx-select.cjs.entry.js +7 -2
  65. package/dist/cjs/ifx-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ifx-sidebar.cjs.entry.js +7 -5
  67. package/dist/cjs/ifx-sidebar.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ifx-slider.cjs.entry.js +7 -2
  69. package/dist/cjs/ifx-slider.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ifx-spinner_2.cjs.entry.js +17 -6
  71. package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ifx-status.cjs.entry.js +9 -1
  73. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ifx-stepper.cjs.entry.js +7 -2
  75. package/dist/cjs/ifx-stepper.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ifx-switch.cjs.entry.js +6 -1
  77. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ifx-table.cjs.entry.js +7 -2
  79. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ifx-tabs.cjs.entry.js +7 -2
  81. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ifx-tag.cjs.entry.js +9 -1
  83. package/dist/cjs/ifx-tag.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ifx-textarea.cjs.entry.js +6 -1
  85. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ifx-tooltip.cjs.entry.js +9 -4
  87. package/dist/cjs/ifx-tooltip.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ifx-tree-view.cjs.entry.js +9 -1
  89. package/dist/cjs/ifx-tree-view.cjs.entry.js.map +1 -1
  90. package/dist/cjs/tracking-f00364dc.js +41 -0
  91. package/dist/cjs/tracking-f00364dc.js.map +1 -0
  92. package/dist/collection/components/accordion/accordion.js +8 -2
  93. package/dist/collection/components/accordion/accordion.js.map +1 -1
  94. package/dist/collection/components/alert/alert.js +6 -0
  95. package/dist/collection/components/alert/alert.js.map +1 -1
  96. package/dist/collection/components/badge/badge.js +9 -1
  97. package/dist/collection/components/badge/badge.js.map +1 -1
  98. package/dist/collection/components/breadcrumb/breadcrumb.js +8 -1
  99. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  100. package/dist/collection/components/button/button.js +6 -1
  101. package/dist/collection/components/button/button.js.map +1 -1
  102. package/dist/collection/components/card/card.js +8 -3
  103. package/dist/collection/components/card/card.js.map +1 -1
  104. package/dist/collection/components/checkbox/checkbox.js +8 -3
  105. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  106. package/dist/collection/components/checkbox-group/checkbox-group.js +6 -1
  107. package/dist/collection/components/checkbox-group/checkbox-group.js.map +1 -1
  108. package/dist/collection/components/chip/chip.js +13 -8
  109. package/dist/collection/components/chip/chip.js.map +1 -1
  110. package/dist/collection/components/content-switcher/content-switcher.js +6 -1
  111. package/dist/collection/components/content-switcher/content-switcher.js.map +1 -1
  112. package/dist/collection/components/date-picker/date-picker.js +9 -2
  113. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  114. package/dist/collection/components/dropdown/dropdown.js +6 -1
  115. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  116. package/dist/collection/components/file-upload/file-upload.js +9 -2
  117. package/dist/collection/components/file-upload/file-upload.js.map +1 -1
  118. package/dist/collection/components/footer/footer.js +9 -4
  119. package/dist/collection/components/footer/footer.js.map +1 -1
  120. package/dist/collection/components/icon/infineonIconStencil.js +31 -1
  121. package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
  122. package/dist/collection/components/icon-button/icon-button.js +6 -1
  123. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  124. package/dist/collection/components/indicator/indicator.js +7 -2
  125. package/dist/collection/components/indicator/indicator.js.map +1 -1
  126. package/dist/collection/components/link/link.js +9 -1
  127. package/dist/collection/components/link/link.js.map +1 -1
  128. package/dist/collection/components/modal/modal.js +9 -2
  129. package/dist/collection/components/modal/modal.js.map +1 -1
  130. package/dist/collection/components/navigation/navbar/navbar.js +5 -3
  131. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  132. package/dist/collection/components/navigation/sidebar/sidebar.js +7 -5
  133. package/dist/collection/components/navigation/sidebar/sidebar.js.map +1 -1
  134. package/dist/collection/components/notification/notification.js +10 -2
  135. package/dist/collection/components/notification/notification.js.map +1 -1
  136. package/dist/collection/components/pagination/pagination.js +6 -1
  137. package/dist/collection/components/pagination/pagination.js.map +1 -1
  138. package/dist/collection/components/progress-bar/progress-bar.js +7 -1
  139. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  140. package/dist/collection/components/radio-button/radio-button.js +7 -2
  141. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  142. package/dist/collection/components/radio-button-group/radio-button-group.js +6 -1
  143. package/dist/collection/components/radio-button-group/radio-button-group.js.map +1 -1
  144. package/dist/collection/components/search-bar/search-bar.js +6 -1
  145. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  146. package/dist/collection/components/search-field/search-field.js +9 -1
  147. package/dist/collection/components/search-field/search-field.js.map +1 -1
  148. package/dist/collection/components/segmented-control/segmented-control.js +9 -2
  149. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  150. package/dist/collection/components/select/multi-select/multiselect.js +5 -0
  151. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  152. package/dist/collection/components/select/single-select/select.js +7 -2
  153. package/dist/collection/components/select/single-select/select.js.map +1 -1
  154. package/dist/collection/components/slider/slider.js +7 -2
  155. package/dist/collection/components/slider/slider.js.map +1 -1
  156. package/dist/collection/components/spinner/spinner.js +10 -2
  157. package/dist/collection/components/spinner/spinner.js.map +1 -1
  158. package/dist/collection/components/status/status.js +9 -1
  159. package/dist/collection/components/status/status.js.map +1 -1
  160. package/dist/collection/components/stepper/stepper.js +7 -2
  161. package/dist/collection/components/stepper/stepper.js.map +1 -1
  162. package/dist/collection/components/switch/switch.js +6 -1
  163. package/dist/collection/components/switch/switch.js.map +1 -1
  164. package/dist/collection/components/table-advanced-version/table.js +7 -2
  165. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  166. package/dist/collection/components/table-basic-version/table.js +6 -1
  167. package/dist/collection/components/table-basic-version/table.js.map +1 -1
  168. package/dist/collection/components/tabs/tabs.js +7 -3
  169. package/dist/collection/components/tabs/tabs.js.map +1 -1
  170. package/dist/collection/components/tag/tag.js +9 -1
  171. package/dist/collection/components/tag/tag.js.map +1 -1
  172. package/dist/collection/components/text-field/text-field.js +9 -4
  173. package/dist/collection/components/text-field/text-field.js.map +1 -1
  174. package/dist/collection/components/textarea/textarea.js +6 -1
  175. package/dist/collection/components/textarea/textarea.js.map +1 -1
  176. package/dist/collection/components/tooltip/tooltip.js +9 -4
  177. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  178. package/dist/collection/components/tree-view/tree-view.js +9 -1
  179. package/dist/collection/components/tree-view/tree-view.js.map +1 -1
  180. package/dist/collection/global/utils/dom-utils.js +15 -0
  181. package/dist/collection/global/utils/dom-utils.js.map +1 -0
  182. package/dist/collection/global/utils/tracking.js +37 -0
  183. package/dist/collection/global/utils/tracking.js.map +1 -0
  184. package/dist/components/ifx-accordion-item.js +1 -1
  185. package/dist/components/ifx-accordion.js +1 -1
  186. package/dist/components/ifx-alert.js +1 -1
  187. package/dist/components/ifx-badge.js +9 -1
  188. package/dist/components/ifx-badge.js.map +1 -1
  189. package/dist/components/ifx-basic-table.js +6 -1
  190. package/dist/components/ifx-basic-table.js.map +1 -1
  191. package/dist/components/ifx-breadcrumb-item-label.js +1 -1
  192. package/dist/components/ifx-breadcrumb.js +8 -1
  193. package/dist/components/ifx-breadcrumb.js.map +1 -1
  194. package/dist/components/ifx-button.js +1 -1
  195. package/dist/components/ifx-card.js +8 -3
  196. package/dist/components/ifx-card.js.map +1 -1
  197. package/dist/components/ifx-checkbox-group.js +7 -2
  198. package/dist/components/ifx-checkbox-group.js.map +1 -1
  199. package/dist/components/ifx-checkbox.js +1 -1
  200. package/dist/components/ifx-chip-item.js +1 -1
  201. package/dist/components/ifx-chip.js +1 -1
  202. package/dist/components/ifx-content-switcher.js +6 -1
  203. package/dist/components/ifx-content-switcher.js.map +1 -1
  204. package/dist/components/ifx-date-picker.js +10 -3
  205. package/dist/components/ifx-date-picker.js.map +1 -1
  206. package/dist/components/ifx-download.js +1 -1
  207. package/dist/components/ifx-dropdown-item.js +1 -1
  208. package/dist/components/ifx-dropdown-trigger-button.js +2 -2
  209. package/dist/components/ifx-dropdown.js +6 -1
  210. package/dist/components/ifx-dropdown.js.map +1 -1
  211. package/dist/components/ifx-faq.js +3 -3
  212. package/dist/components/ifx-file-upload.js +13 -6
  213. package/dist/components/ifx-file-upload.js.map +1 -1
  214. package/dist/components/ifx-filter-accordion.js +2 -2
  215. package/dist/components/ifx-filter-bar.js +2 -2
  216. package/dist/components/ifx-filter-search.js +2 -2
  217. package/dist/components/ifx-footer.js +9 -4
  218. package/dist/components/ifx-footer.js.map +1 -1
  219. package/dist/components/ifx-icon-button.js +1 -1
  220. package/dist/components/ifx-icon.js +1 -1
  221. package/dist/components/ifx-icons-preview.js +4 -4
  222. package/dist/components/ifx-indicator.js +1 -1
  223. package/dist/components/ifx-link.js +1 -1
  224. package/dist/components/ifx-list-entry.js +3 -3
  225. package/dist/components/ifx-list.js +2 -2
  226. package/dist/components/ifx-modal.js +11 -4
  227. package/dist/components/ifx-modal.js.map +1 -1
  228. package/dist/components/ifx-multiselect.js +1 -1
  229. package/dist/components/ifx-navbar-item.js +2 -2
  230. package/dist/components/ifx-navbar.js +6 -4
  231. package/dist/components/ifx-navbar.js.map +1 -1
  232. package/dist/components/ifx-notification.js +1 -1
  233. package/dist/components/ifx-overview-table.js +3 -3
  234. package/dist/components/ifx-pagination.js +1 -1
  235. package/dist/components/ifx-progress-bar.js +1 -1
  236. package/dist/components/ifx-radio-button-group.js +7 -2
  237. package/dist/components/ifx-radio-button-group.js.map +1 -1
  238. package/dist/components/ifx-radio-button.js +1 -1
  239. package/dist/components/ifx-search-bar.js +8 -3
  240. package/dist/components/ifx-search-bar.js.map +1 -1
  241. package/dist/components/ifx-search-field.js +1 -1
  242. package/dist/components/ifx-segment.js +1 -1
  243. package/dist/components/ifx-segmented-control.js +10 -3
  244. package/dist/components/ifx-segmented-control.js.map +1 -1
  245. package/dist/components/ifx-select.js +1 -1
  246. package/dist/components/ifx-set-filter.js +5 -5
  247. package/dist/components/ifx-sidebar-item.js +2 -2
  248. package/dist/components/ifx-sidebar.js +7 -5
  249. package/dist/components/ifx-sidebar.js.map +1 -1
  250. package/dist/components/ifx-slider.js +8 -3
  251. package/dist/components/ifx-slider.js.map +1 -1
  252. package/dist/components/ifx-spinner.js +1 -1
  253. package/dist/components/ifx-status.js +9 -1
  254. package/dist/components/ifx-status.js.map +1 -1
  255. package/dist/components/ifx-step.js +1 -1
  256. package/dist/components/ifx-stepper.js +7 -2
  257. package/dist/components/ifx-stepper.js.map +1 -1
  258. package/dist/components/ifx-switch.js +6 -1
  259. package/dist/components/ifx-switch.js.map +1 -1
  260. package/dist/components/ifx-table.js +16 -11
  261. package/dist/components/ifx-table.js.map +1 -1
  262. package/dist/components/ifx-tabs.js +8 -3
  263. package/dist/components/ifx-tabs.js.map +1 -1
  264. package/dist/components/ifx-tag.js +10 -2
  265. package/dist/components/ifx-tag.js.map +1 -1
  266. package/dist/components/ifx-template.js +1 -1
  267. package/dist/components/ifx-templates-ui.js +8 -8
  268. package/dist/components/ifx-text-field.js +1 -1
  269. package/dist/components/ifx-textarea.js +6 -1
  270. package/dist/components/ifx-textarea.js.map +1 -1
  271. package/dist/components/ifx-tooltip.js +10 -5
  272. package/dist/components/ifx-tooltip.js.map +1 -1
  273. package/dist/components/ifx-tree-view-item.js +2 -2
  274. package/dist/components/ifx-tree-view.js +9 -1
  275. package/dist/components/ifx-tree-view.js.map +1 -1
  276. package/dist/components/{p-a8d0ef73.js → p-0905733d.js} +16 -11
  277. package/dist/components/p-0905733d.js.map +1 -0
  278. package/dist/components/{p-0c449780.js → p-0d6ca0f6.js} +8 -3
  279. package/dist/components/p-0d6ca0f6.js.map +1 -0
  280. package/dist/components/{p-186dacc8.js → p-13126216.js} +10 -5
  281. package/dist/components/p-13126216.js.map +1 -0
  282. package/dist/components/{p-2a65d85a.js → p-13578a85.js} +6 -6
  283. package/dist/components/{p-2a65d85a.js.map → p-13578a85.js.map} +1 -1
  284. package/dist/components/{p-c9aec5fa.js → p-1ad917f9.js} +9 -4
  285. package/dist/components/p-1ad917f9.js.map +1 -0
  286. package/dist/components/p-1ecafb97.js +18 -0
  287. package/dist/components/p-1ecafb97.js.map +1 -0
  288. package/dist/components/{p-67573b5f.js → p-24382260.js} +11 -6
  289. package/dist/components/p-24382260.js.map +1 -0
  290. package/dist/components/{p-cd833a9b.js → p-347a1b14.js} +8 -3
  291. package/dist/components/p-347a1b14.js.map +1 -0
  292. package/dist/components/{p-38396fe7.js → p-465d3172.js} +11 -3
  293. package/dist/components/p-465d3172.js.map +1 -0
  294. package/dist/components/{p-bb4de57d.js → p-4fc475c9.js} +35 -2
  295. package/dist/components/p-4fc475c9.js.map +1 -0
  296. package/dist/components/{p-357107c5.js → p-54b39a91.js} +8 -3
  297. package/dist/components/p-54b39a91.js.map +1 -0
  298. package/dist/components/{p-5e9d3450.js → p-6d95b3c1.js} +8 -2
  299. package/dist/components/p-6d95b3c1.js.map +1 -0
  300. package/dist/components/p-6ecb6a6f.js +39 -0
  301. package/dist/components/p-6ecb6a6f.js.map +1 -0
  302. package/dist/components/{p-17df0350.js → p-816b2612.js} +7 -2
  303. package/dist/components/p-816b2612.js.map +1 -0
  304. package/dist/components/{p-b0039ef1.js → p-830057b3.js} +8 -2
  305. package/dist/components/p-830057b3.js.map +1 -0
  306. package/dist/components/{p-6d12f845.js → p-8cb991f4.js} +13 -5
  307. package/dist/components/p-8cb991f4.js.map +1 -0
  308. package/dist/components/{p-9142f93b.js → p-94da6823.js} +8 -3
  309. package/dist/components/p-94da6823.js.map +1 -0
  310. package/dist/components/{p-53d4339c.js → p-9ea9e274.js} +10 -2
  311. package/dist/components/p-9ea9e274.js.map +1 -0
  312. package/dist/components/{p-ed739e86.js → p-cca71d97.js} +9 -2
  313. package/dist/components/p-cca71d97.js.map +1 -0
  314. package/dist/components/{p-cc5bd74b.js → p-cf109552.js} +10 -5
  315. package/dist/components/p-cf109552.js.map +1 -0
  316. package/dist/components/{p-a4922416.js → p-e126ea6f.js} +11 -3
  317. package/dist/components/p-e126ea6f.js.map +1 -0
  318. package/dist/components/{p-cd913238.js → p-ee0f87ac.js} +3 -3
  319. package/dist/components/{p-cd913238.js.map → p-ee0f87ac.js.map} +1 -1
  320. package/dist/components/{p-d1790232.js → p-fe90e932.js} +2 -2
  321. package/dist/components/{p-d1790232.js.map → p-fe90e932.js.map} +1 -1
  322. package/dist/esm/dom-utils-1988cdf1.js +18 -0
  323. package/dist/esm/dom-utils-1988cdf1.js.map +1 -0
  324. package/dist/esm/{icons-788fe290.js → icons-75858876.js} +4 -1
  325. package/dist/esm/icons-75858876.js.map +1 -0
  326. package/dist/esm/ifx-accordion_2.entry.js +8 -1
  327. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  328. package/dist/esm/ifx-alert_2.entry.js +6 -0
  329. package/dist/esm/ifx-alert_2.entry.js.map +1 -1
  330. package/dist/esm/ifx-badge.entry.js +10 -2
  331. package/dist/esm/ifx-badge.entry.js.map +1 -1
  332. package/dist/esm/ifx-basic-table.entry.js +6 -1
  333. package/dist/esm/ifx-basic-table.entry.js.map +1 -1
  334. package/dist/esm/ifx-breadcrumb.entry.js +8 -1
  335. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  336. package/dist/esm/ifx-button.entry.js +6 -1
  337. package/dist/esm/ifx-button.entry.js.map +1 -1
  338. package/dist/esm/ifx-card.entry.js +8 -3
  339. package/dist/esm/ifx-card.entry.js.map +1 -1
  340. package/dist/esm/ifx-checkbox-group.entry.js +6 -1
  341. package/dist/esm/ifx-checkbox-group.entry.js.map +1 -1
  342. package/dist/esm/ifx-checkbox.entry.js +8 -3
  343. package/dist/esm/ifx-checkbox.entry.js.map +1 -1
  344. package/dist/esm/ifx-chip_3.entry.js +17 -9
  345. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  346. package/dist/esm/ifx-content-switcher.entry.js +6 -1
  347. package/dist/esm/ifx-content-switcher.entry.js.map +1 -1
  348. package/dist/esm/ifx-date-picker.entry.js +9 -2
  349. package/dist/esm/ifx-date-picker.entry.js.map +1 -1
  350. package/dist/esm/ifx-dropdown.entry.js +6 -1
  351. package/dist/esm/ifx-dropdown.entry.js.map +1 -1
  352. package/dist/esm/ifx-file-upload.entry.js +9 -2
  353. package/dist/esm/ifx-file-upload.entry.js.map +1 -1
  354. package/dist/esm/ifx-footer.entry.js +9 -4
  355. package/dist/esm/ifx-footer.entry.js.map +1 -1
  356. package/dist/esm/ifx-icon-button.entry.js +6 -1
  357. package/dist/esm/ifx-icon-button.entry.js.map +1 -1
  358. package/dist/esm/ifx-icon.entry.js +33 -3
  359. package/dist/esm/ifx-icon.entry.js.map +1 -1
  360. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  361. package/dist/esm/ifx-indicator.entry.js +7 -2
  362. package/dist/esm/ifx-indicator.entry.js.map +1 -1
  363. package/dist/esm/ifx-link.entry.js +10 -2
  364. package/dist/esm/ifx-link.entry.js.map +1 -1
  365. package/dist/esm/ifx-modal.entry.js +9 -2
  366. package/dist/esm/ifx-modal.entry.js.map +1 -1
  367. package/dist/esm/ifx-multiselect.entry.js +5 -0
  368. package/dist/esm/ifx-multiselect.entry.js.map +1 -1
  369. package/dist/esm/ifx-navbar.entry.js +5 -3
  370. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  371. package/dist/esm/ifx-notification.entry.js +11 -3
  372. package/dist/esm/ifx-notification.entry.js.map +1 -1
  373. package/dist/esm/ifx-progress-bar.entry.js +8 -2
  374. package/dist/esm/ifx-progress-bar.entry.js.map +1 -1
  375. package/dist/esm/ifx-radio-button-group.entry.js +6 -1
  376. package/dist/esm/ifx-radio-button-group.entry.js.map +1 -1
  377. package/dist/esm/ifx-radio-button.entry.js +7 -2
  378. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  379. package/dist/esm/ifx-search-bar.entry.js +6 -1
  380. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  381. package/dist/esm/ifx-search-field.entry.js +10 -2
  382. package/dist/esm/ifx-search-field.entry.js.map +1 -1
  383. package/dist/esm/ifx-segmented-control.entry.js +9 -2
  384. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  385. package/dist/esm/ifx-select.entry.js +7 -2
  386. package/dist/esm/ifx-select.entry.js.map +1 -1
  387. package/dist/esm/ifx-sidebar.entry.js +7 -5
  388. package/dist/esm/ifx-sidebar.entry.js.map +1 -1
  389. package/dist/esm/ifx-slider.entry.js +7 -2
  390. package/dist/esm/ifx-slider.entry.js.map +1 -1
  391. package/dist/esm/ifx-spinner_2.entry.js +18 -7
  392. package/dist/esm/ifx-spinner_2.entry.js.map +1 -1
  393. package/dist/esm/ifx-status.entry.js +10 -2
  394. package/dist/esm/ifx-status.entry.js.map +1 -1
  395. package/dist/esm/ifx-stepper.entry.js +7 -2
  396. package/dist/esm/ifx-stepper.entry.js.map +1 -1
  397. package/dist/esm/ifx-switch.entry.js +6 -1
  398. package/dist/esm/ifx-switch.entry.js.map +1 -1
  399. package/dist/esm/ifx-table.entry.js +7 -2
  400. package/dist/esm/ifx-table.entry.js.map +1 -1
  401. package/dist/esm/ifx-tabs.entry.js +7 -2
  402. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  403. package/dist/esm/ifx-tag.entry.js +10 -2
  404. package/dist/esm/ifx-tag.entry.js.map +1 -1
  405. package/dist/esm/ifx-textarea.entry.js +6 -1
  406. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  407. package/dist/esm/ifx-tooltip.entry.js +9 -4
  408. package/dist/esm/ifx-tooltip.entry.js.map +1 -1
  409. package/dist/esm/ifx-tree-view.entry.js +10 -2
  410. package/dist/esm/ifx-tree-view.entry.js.map +1 -1
  411. package/dist/esm/tracking-a7efdbcd.js +39 -0
  412. package/dist/esm/tracking-a7efdbcd.js.map +1 -0
  413. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  414. package/dist/infineon-design-system-stencil/p-0c60ce87.entry.js +2 -0
  415. package/dist/infineon-design-system-stencil/p-0c60ce87.entry.js.map +1 -0
  416. package/dist/infineon-design-system-stencil/p-14842bbb.entry.js +2 -0
  417. package/dist/infineon-design-system-stencil/p-14842bbb.entry.js.map +1 -0
  418. package/dist/infineon-design-system-stencil/p-19fcf1db.entry.js +2 -0
  419. package/dist/infineon-design-system-stencil/p-19fcf1db.entry.js.map +1 -0
  420. package/dist/infineon-design-system-stencil/p-1ecafb97.js +2 -0
  421. package/dist/infineon-design-system-stencil/p-1ecafb97.js.map +1 -0
  422. package/dist/infineon-design-system-stencil/p-1fd80576.entry.js +2 -0
  423. package/dist/infineon-design-system-stencil/p-1fd80576.entry.js.map +1 -0
  424. package/dist/infineon-design-system-stencil/p-227fa186.entry.js +2 -0
  425. package/dist/infineon-design-system-stencil/p-227fa186.entry.js.map +1 -0
  426. package/dist/infineon-design-system-stencil/p-26c73456.entry.js +2 -0
  427. package/dist/infineon-design-system-stencil/p-26c73456.entry.js.map +1 -0
  428. package/dist/infineon-design-system-stencil/p-296f215f.entry.js +2 -0
  429. package/dist/infineon-design-system-stencil/p-296f215f.entry.js.map +1 -0
  430. package/dist/infineon-design-system-stencil/p-32b0dfda.entry.js +2 -0
  431. package/dist/infineon-design-system-stencil/p-32b0dfda.entry.js.map +1 -0
  432. package/dist/infineon-design-system-stencil/{p-27d2afb4.js → p-4d96fed0.js} +2 -2
  433. package/dist/infineon-design-system-stencil/p-4d96fed0.js.map +1 -0
  434. package/dist/infineon-design-system-stencil/p-4eda4ef3.entry.js +2 -0
  435. package/dist/infineon-design-system-stencil/p-4eda4ef3.entry.js.map +1 -0
  436. package/dist/infineon-design-system-stencil/p-52420868.entry.js +2 -0
  437. package/dist/infineon-design-system-stencil/p-52420868.entry.js.map +1 -0
  438. package/dist/infineon-design-system-stencil/p-5493e6f5.entry.js +2 -0
  439. package/dist/infineon-design-system-stencil/p-5493e6f5.entry.js.map +1 -0
  440. package/dist/infineon-design-system-stencil/p-5a12d20a.entry.js +2 -0
  441. package/dist/infineon-design-system-stencil/p-5a12d20a.entry.js.map +1 -0
  442. package/dist/infineon-design-system-stencil/p-65255c40.entry.js +2 -0
  443. package/dist/infineon-design-system-stencil/p-65255c40.entry.js.map +1 -0
  444. package/dist/infineon-design-system-stencil/p-68423787.entry.js +2 -0
  445. package/dist/infineon-design-system-stencil/p-68423787.entry.js.map +1 -0
  446. package/dist/infineon-design-system-stencil/p-6d72ad32.entry.js +2 -0
  447. package/dist/infineon-design-system-stencil/p-6d72ad32.entry.js.map +1 -0
  448. package/dist/infineon-design-system-stencil/p-6ecb6a6f.js +2 -0
  449. package/dist/infineon-design-system-stencil/p-6ecb6a6f.js.map +1 -0
  450. package/dist/infineon-design-system-stencil/p-73d39ed6.entry.js +2 -0
  451. package/dist/infineon-design-system-stencil/p-73d39ed6.entry.js.map +1 -0
  452. package/dist/infineon-design-system-stencil/{p-0d3e5a0d.entry.js → p-76914839.entry.js} +2 -2
  453. package/dist/infineon-design-system-stencil/p-76914839.entry.js.map +1 -0
  454. package/dist/infineon-design-system-stencil/p-796675ed.entry.js +2 -0
  455. package/dist/infineon-design-system-stencil/p-796675ed.entry.js.map +1 -0
  456. package/dist/infineon-design-system-stencil/p-79b7d7a2.entry.js +2 -0
  457. package/dist/infineon-design-system-stencil/p-79b7d7a2.entry.js.map +1 -0
  458. package/dist/infineon-design-system-stencil/p-82c59e6b.entry.js +2 -0
  459. package/dist/infineon-design-system-stencil/p-82c59e6b.entry.js.map +1 -0
  460. package/dist/infineon-design-system-stencil/p-82dd7e7d.entry.js +2 -0
  461. package/dist/infineon-design-system-stencil/p-82dd7e7d.entry.js.map +1 -0
  462. package/dist/infineon-design-system-stencil/p-877e1d37.entry.js +2 -0
  463. package/dist/infineon-design-system-stencil/p-877e1d37.entry.js.map +1 -0
  464. package/dist/infineon-design-system-stencil/p-8a7bfe65.entry.js +2 -0
  465. package/dist/infineon-design-system-stencil/p-8a7bfe65.entry.js.map +1 -0
  466. package/dist/infineon-design-system-stencil/p-98532a0e.entry.js +2 -0
  467. package/dist/infineon-design-system-stencil/p-98532a0e.entry.js.map +1 -0
  468. package/dist/infineon-design-system-stencil/{p-7440ea9d.entry.js → p-9c28f35f.entry.js} +3 -3
  469. package/dist/infineon-design-system-stencil/p-9c28f35f.entry.js.map +1 -0
  470. package/dist/infineon-design-system-stencil/p-a0006775.entry.js +2 -0
  471. package/dist/infineon-design-system-stencil/p-a0006775.entry.js.map +1 -0
  472. package/dist/infineon-design-system-stencil/{p-88af2e64.entry.js → p-aaf08082.entry.js} +2 -2
  473. package/dist/infineon-design-system-stencil/p-ac7db8d1.entry.js +2 -0
  474. package/dist/infineon-design-system-stencil/p-ac7db8d1.entry.js.map +1 -0
  475. package/dist/infineon-design-system-stencil/p-ae8110b7.entry.js +2 -0
  476. package/dist/infineon-design-system-stencil/p-ae8110b7.entry.js.map +1 -0
  477. package/dist/infineon-design-system-stencil/p-aeaa6d0b.entry.js +2 -0
  478. package/dist/infineon-design-system-stencil/p-aeaa6d0b.entry.js.map +1 -0
  479. package/dist/infineon-design-system-stencil/p-b110d5d4.entry.js +2 -0
  480. package/dist/infineon-design-system-stencil/p-b110d5d4.entry.js.map +1 -0
  481. package/dist/infineon-design-system-stencil/p-b17a0e8c.entry.js +2 -0
  482. package/dist/infineon-design-system-stencil/p-b17a0e8c.entry.js.map +1 -0
  483. package/dist/infineon-design-system-stencil/p-bb7b2a3c.entry.js +2 -0
  484. package/dist/infineon-design-system-stencil/p-bb7b2a3c.entry.js.map +1 -0
  485. package/dist/infineon-design-system-stencil/p-c164c83b.entry.js +2 -0
  486. package/dist/infineon-design-system-stencil/p-c164c83b.entry.js.map +1 -0
  487. package/dist/infineon-design-system-stencil/p-c220733b.entry.js +2 -0
  488. package/dist/infineon-design-system-stencil/p-c220733b.entry.js.map +1 -0
  489. package/dist/infineon-design-system-stencil/p-c88876dc.entry.js +2 -0
  490. package/dist/infineon-design-system-stencil/p-c88876dc.entry.js.map +1 -0
  491. package/dist/infineon-design-system-stencil/p-e0978af0.entry.js +2 -0
  492. package/dist/infineon-design-system-stencil/p-e0978af0.entry.js.map +1 -0
  493. package/dist/infineon-design-system-stencil/p-e5018880.entry.js +2 -0
  494. package/dist/infineon-design-system-stencil/p-e5018880.entry.js.map +1 -0
  495. package/dist/infineon-design-system-stencil/p-ed869b07.entry.js +2 -0
  496. package/dist/infineon-design-system-stencil/p-ed869b07.entry.js.map +1 -0
  497. package/dist/infineon-design-system-stencil/p-eeb59f76.entry.js +2 -0
  498. package/dist/infineon-design-system-stencil/p-eeb59f76.entry.js.map +1 -0
  499. package/dist/infineon-design-system-stencil/p-f3f8d603.entry.js +2 -0
  500. package/dist/infineon-design-system-stencil/p-f3f8d603.entry.js.map +1 -0
  501. package/dist/infineon-design-system-stencil/p-fb6a813b.entry.js +2 -0
  502. package/dist/infineon-design-system-stencil/p-fb6a813b.entry.js.map +1 -0
  503. package/dist/infineon-design-system-stencil/p-fe22fc31.entry.js +2 -0
  504. package/dist/infineon-design-system-stencil/p-fe22fc31.entry.js.map +1 -0
  505. package/dist/types/components/accordion/accordion.d.ts +1 -0
  506. package/dist/types/components/alert/alert.d.ts +1 -0
  507. package/dist/types/components/badge/badge.d.ts +2 -0
  508. package/dist/types/components/breadcrumb/breadcrumb.d.ts +1 -0
  509. package/dist/types/components/date-picker/date-picker.d.ts +1 -0
  510. package/dist/types/components/file-upload/file-upload.d.ts +1 -0
  511. package/dist/types/components/icon/infineonIconStencil.d.ts +3 -0
  512. package/dist/types/components/link/link.d.ts +2 -0
  513. package/dist/types/components/modal/modal.d.ts +1 -0
  514. package/dist/types/components/notification/notification.d.ts +2 -0
  515. package/dist/types/components/progress-bar/progress-bar.d.ts +1 -0
  516. package/dist/types/components/search-field/search-field.d.ts +2 -0
  517. package/dist/types/components/segmented-control/segmented-control.d.ts +1 -0
  518. package/dist/types/components/spinner/spinner.d.ts +2 -0
  519. package/dist/types/components/status/status.d.ts +2 -0
  520. package/dist/types/components/tag/tag.d.ts +2 -0
  521. package/dist/types/components/tree-view/tree-view.d.ts +2 -0
  522. package/dist/types/global/utils/dom-utils.d.ts +1 -0
  523. package/dist/types/global/utils/tracking.d.ts +9 -0
  524. package/package.json +2 -2
  525. package/dist/cjs/icons-0d4d096d.js.map +0 -1
  526. package/dist/components/p-0c449780.js.map +0 -1
  527. package/dist/components/p-17df0350.js.map +0 -1
  528. package/dist/components/p-186dacc8.js.map +0 -1
  529. package/dist/components/p-357107c5.js.map +0 -1
  530. package/dist/components/p-38396fe7.js.map +0 -1
  531. package/dist/components/p-53d4339c.js.map +0 -1
  532. package/dist/components/p-5e9d3450.js.map +0 -1
  533. package/dist/components/p-67573b5f.js.map +0 -1
  534. package/dist/components/p-6d12f845.js.map +0 -1
  535. package/dist/components/p-9142f93b.js.map +0 -1
  536. package/dist/components/p-a4922416.js.map +0 -1
  537. package/dist/components/p-a8d0ef73.js.map +0 -1
  538. package/dist/components/p-b0039ef1.js.map +0 -1
  539. package/dist/components/p-bb4de57d.js.map +0 -1
  540. package/dist/components/p-c9aec5fa.js.map +0 -1
  541. package/dist/components/p-cc5bd74b.js.map +0 -1
  542. package/dist/components/p-cd833a9b.js.map +0 -1
  543. package/dist/components/p-ed739e86.js.map +0 -1
  544. package/dist/esm/icons-788fe290.js.map +0 -1
  545. package/dist/infineon-design-system-stencil/p-061bfdb1.entry.js +0 -2
  546. package/dist/infineon-design-system-stencil/p-061bfdb1.entry.js.map +0 -1
  547. package/dist/infineon-design-system-stencil/p-06bfabcf.entry.js +0 -2
  548. package/dist/infineon-design-system-stencil/p-06bfabcf.entry.js.map +0 -1
  549. package/dist/infineon-design-system-stencil/p-0d3e5a0d.entry.js.map +0 -1
  550. package/dist/infineon-design-system-stencil/p-1048ee19.entry.js +0 -2
  551. package/dist/infineon-design-system-stencil/p-1048ee19.entry.js.map +0 -1
  552. package/dist/infineon-design-system-stencil/p-142878ee.entry.js +0 -2
  553. package/dist/infineon-design-system-stencil/p-142878ee.entry.js.map +0 -1
  554. package/dist/infineon-design-system-stencil/p-17f3f2f5.entry.js +0 -2
  555. package/dist/infineon-design-system-stencil/p-17f3f2f5.entry.js.map +0 -1
  556. package/dist/infineon-design-system-stencil/p-2006c7a0.entry.js +0 -2
  557. package/dist/infineon-design-system-stencil/p-2006c7a0.entry.js.map +0 -1
  558. package/dist/infineon-design-system-stencil/p-27d2afb4.js.map +0 -1
  559. package/dist/infineon-design-system-stencil/p-292cff35.entry.js +0 -2
  560. package/dist/infineon-design-system-stencil/p-292cff35.entry.js.map +0 -1
  561. package/dist/infineon-design-system-stencil/p-2d89c5e0.entry.js +0 -2
  562. package/dist/infineon-design-system-stencil/p-2d89c5e0.entry.js.map +0 -1
  563. package/dist/infineon-design-system-stencil/p-33a4fd0a.entry.js +0 -2
  564. package/dist/infineon-design-system-stencil/p-33a4fd0a.entry.js.map +0 -1
  565. package/dist/infineon-design-system-stencil/p-37d6c639.entry.js +0 -2
  566. package/dist/infineon-design-system-stencil/p-37d6c639.entry.js.map +0 -1
  567. package/dist/infineon-design-system-stencil/p-3d23deba.entry.js +0 -2
  568. package/dist/infineon-design-system-stencil/p-3d23deba.entry.js.map +0 -1
  569. package/dist/infineon-design-system-stencil/p-3ff96710.entry.js +0 -2
  570. package/dist/infineon-design-system-stencil/p-3ff96710.entry.js.map +0 -1
  571. package/dist/infineon-design-system-stencil/p-47a3e831.entry.js +0 -2
  572. package/dist/infineon-design-system-stencil/p-47a3e831.entry.js.map +0 -1
  573. package/dist/infineon-design-system-stencil/p-487d2155.entry.js +0 -2
  574. package/dist/infineon-design-system-stencil/p-487d2155.entry.js.map +0 -1
  575. package/dist/infineon-design-system-stencil/p-49252616.entry.js +0 -2
  576. package/dist/infineon-design-system-stencil/p-49252616.entry.js.map +0 -1
  577. package/dist/infineon-design-system-stencil/p-5b5c144f.entry.js +0 -2
  578. package/dist/infineon-design-system-stencil/p-5b5c144f.entry.js.map +0 -1
  579. package/dist/infineon-design-system-stencil/p-65fe2246.entry.js +0 -2
  580. package/dist/infineon-design-system-stencil/p-65fe2246.entry.js.map +0 -1
  581. package/dist/infineon-design-system-stencil/p-676fb63a.entry.js +0 -2
  582. package/dist/infineon-design-system-stencil/p-676fb63a.entry.js.map +0 -1
  583. package/dist/infineon-design-system-stencil/p-6790d912.entry.js +0 -2
  584. package/dist/infineon-design-system-stencil/p-6790d912.entry.js.map +0 -1
  585. package/dist/infineon-design-system-stencil/p-6bdca580.entry.js +0 -2
  586. package/dist/infineon-design-system-stencil/p-6bdca580.entry.js.map +0 -1
  587. package/dist/infineon-design-system-stencil/p-702a48f8.entry.js +0 -2
  588. package/dist/infineon-design-system-stencil/p-702a48f8.entry.js.map +0 -1
  589. package/dist/infineon-design-system-stencil/p-741ee6fd.entry.js +0 -2
  590. package/dist/infineon-design-system-stencil/p-741ee6fd.entry.js.map +0 -1
  591. package/dist/infineon-design-system-stencil/p-7440ea9d.entry.js.map +0 -1
  592. package/dist/infineon-design-system-stencil/p-885adc48.entry.js +0 -2
  593. package/dist/infineon-design-system-stencil/p-885adc48.entry.js.map +0 -1
  594. package/dist/infineon-design-system-stencil/p-9149a20a.entry.js +0 -2
  595. package/dist/infineon-design-system-stencil/p-9149a20a.entry.js.map +0 -1
  596. package/dist/infineon-design-system-stencil/p-959285a7.entry.js +0 -2
  597. package/dist/infineon-design-system-stencil/p-959285a7.entry.js.map +0 -1
  598. package/dist/infineon-design-system-stencil/p-9fc0f50d.entry.js +0 -2
  599. package/dist/infineon-design-system-stencil/p-9fc0f50d.entry.js.map +0 -1
  600. package/dist/infineon-design-system-stencil/p-aadd1a9d.entry.js +0 -2
  601. package/dist/infineon-design-system-stencil/p-aadd1a9d.entry.js.map +0 -1
  602. package/dist/infineon-design-system-stencil/p-acf0f4ed.entry.js +0 -2
  603. package/dist/infineon-design-system-stencil/p-acf0f4ed.entry.js.map +0 -1
  604. package/dist/infineon-design-system-stencil/p-ad1ec9d6.entry.js +0 -2
  605. package/dist/infineon-design-system-stencil/p-ad1ec9d6.entry.js.map +0 -1
  606. package/dist/infineon-design-system-stencil/p-b637c44c.entry.js +0 -2
  607. package/dist/infineon-design-system-stencil/p-b637c44c.entry.js.map +0 -1
  608. package/dist/infineon-design-system-stencil/p-b73a5f18.entry.js +0 -2
  609. package/dist/infineon-design-system-stencil/p-b73a5f18.entry.js.map +0 -1
  610. package/dist/infineon-design-system-stencil/p-c2791360.entry.js +0 -2
  611. package/dist/infineon-design-system-stencil/p-c2791360.entry.js.map +0 -1
  612. package/dist/infineon-design-system-stencil/p-c5a785d7.entry.js +0 -2
  613. package/dist/infineon-design-system-stencil/p-c5a785d7.entry.js.map +0 -1
  614. package/dist/infineon-design-system-stencil/p-c84ef603.entry.js +0 -2
  615. package/dist/infineon-design-system-stencil/p-c84ef603.entry.js.map +0 -1
  616. package/dist/infineon-design-system-stencil/p-dd28f3a1.entry.js +0 -2
  617. package/dist/infineon-design-system-stencil/p-dd28f3a1.entry.js.map +0 -1
  618. package/dist/infineon-design-system-stencil/p-e98d2280.entry.js +0 -2
  619. package/dist/infineon-design-system-stencil/p-e98d2280.entry.js.map +0 -1
  620. package/dist/infineon-design-system-stencil/p-ecc17497.entry.js +0 -2
  621. package/dist/infineon-design-system-stencil/p-ecc17497.entry.js.map +0 -1
  622. package/dist/infineon-design-system-stencil/p-ef6d0dc6.entry.js +0 -2
  623. package/dist/infineon-design-system-stencil/p-ef6d0dc6.entry.js.map +0 -1
  624. package/dist/infineon-design-system-stencil/p-f25f014d.entry.js +0 -2
  625. package/dist/infineon-design-system-stencil/p-f25f014d.entry.js.map +0 -1
  626. package/dist/infineon-design-system-stencil/p-f338fb85.entry.js +0 -2
  627. package/dist/infineon-design-system-stencil/p-f338fb85.entry.js.map +0 -1
  628. /package/dist/infineon-design-system-stencil/{p-88af2e64.entry.js.map → p-aaf08082.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isNestedInIfxComponent","el","parent","parentNode","ShadowRoot","host","HTMLElement","tagName","toLowerCase","startsWith"],"sources":["src/global/utils/dom-utils.ts"],"sourcesContent":["export const isNestedInIfxComponent = (el: HTMLElement): boolean => {\n let parent: Node | ShadowRoot | null = el.parentNode;\n \n while (parent) {\n if (parent instanceof ShadowRoot) {\n parent = parent.host;\n continue;\n }\n \n if (parent instanceof HTMLElement && parent.tagName.toLowerCase().startsWith('ifx')) {\n return true;\n }\n \n parent = parent.parentNode;\n }\n \n return false;\n};"],"mappings":"MAAaA,EAA0BC,IACrC,IAAIC,EAAmCD,EAAGE,WAE1C,MAAOD,EAAQ,CACb,GAAIA,aAAkBE,WAAY,CAChCF,EAASA,EAAOG,KAChB,Q,CAGF,GAAIH,aAAkBI,aAAeJ,EAAOK,QAAQC,cAAcC,WAAW,OAAQ,CACnF,OAAO,I,CAGTP,EAASA,EAAOC,U,CAGlB,OAAO,KAAK,S","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as i,h as t,g as s}from"./p-b7a462e5.js";import{t as a}from"./p-6ecb6a6f.js";import{i as n}from"./p-1ecafb97.js";const l=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}:host{display:inline-block}.chip{position:relative}.chip__wrapper{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;border:1px solid #BFBBBB;border-radius:9999px;background:#FFFFFF;cursor:pointer;transition:border 100ms ease;font:400 0.875rem/1.25rem "Source Sans 3"}.chip__wrapper:hover,.chip__wrapper:focus-visible{outline:none;border:1px solid #575352}.chip__wrapper:focus{border:1px solid #0A8276}.chip__wrapper.chip__wrapper--small{padding:4px 12px}.chip__wrapper.chip__wrapper--large{padding:8px 16px}.chip__wrapper.chip__wrapper--opened{border:1px solid #0A8276}.chip__wrapper.chip__wrapper--opened .wrapper__open-button{transform:rotate(-180deg)}.chip__wrapper.chip__wrapper--selected{outline:3px solid #0A8276;outline-offset:-3px;color:#0A8276}.chip__wrapper.chip__wrapper--selected:hover,.chip__wrapper.chip__wrapper--selected:focus-visible{outline:3px solid #08665C;color:#08665C}.wrapper__label{display:inline-flex;align-items:center;gap:4px;font:400 0.875rem/1.25rem "Source Sans 3"}.wrapper__label .label__selected-options{font:600 0.875rem/1.25rem "Source Sans 3"}.wrapper__open-button{display:flex;align-items:center;transition:all 300ms ease}.wrapper__unselect-button{display:flex;align-items:center}.chip__dropdown{position:absolute;z-index:1;box-shadow:0px 6px 9px 0px rgba(29, 29, 29, 0.1019607843);border:1px solid #EEEDED;border-radius:1px;padding:8px 0;min-width:222px;background-color:#FFFFFF}';const r=l;const c=class{constructor(t){e(this,t);this.ifxChange=i(this,"ifxChange",7);this.placeholder="";this.size="large";this.value=undefined;this.variant="single";this.readOnly=false;this.opened=false;this.selectedOptions=[]}handleValueChange(e){this.syncSelectedOptionsWithProp(e)}handleReadOnlyChange(e){if(e){this.opened=false}}closeDropdownOnOutsideClick(e){const i=e.composedPath();const t=this.chip.shadowRoot.querySelector(".chip__wrapper");const s=this.chip.shadowRoot.querySelector(".chip__dropdown");if(!i.includes(s)&&!i.includes(t)&&this.opened){this.toggleDropdownMenu()}}handleKeyDown(e){if(e.code!=="Tab"){e.preventDefault()}if(e.target.tagName==="IFX-CHIP"){this.handleWrapperKeyDown(e)}else if(e.target.tagName==="IFX-CHIP-ITEM"){this.handleDropdownKeyDown(e)}}updateSelectedOptions(e){const i=e.detail;const t=[...this.selectedOptions];if(this.variant!=="multi"){if(i.selected){this.opened=false;const t=this.getChipItems();t.forEach((i=>{if(i.selected&&i!==e.target){i.chipState=Object.assign(Object.assign({},i.chipState),{emitIfxChipItemSelect:false});i.selected=false}}));this.selectedOptions=[i]}else{this.selectedOptions=[]}this.value=this.selectedOptions[0]?this.selectedOptions[0].value:undefined}else{if(i.selected){if(!this.selectedOptions.find((e=>e.value===i.value))){this.selectedOptions=[...this.selectedOptions,i]}}else{this.selectedOptions=this.selectedOptions.filter((e=>e.value!==i.value))}this.value=this.selectedOptions.map((e=>e.value))}if(i.emitIfxChange){this.ifxChange.emit({previousSelection:t,currentSelection:this.selectedOptions,name:this.placeholder})}}getChipItems(){return this.chip.querySelectorAll("ifx-chip-item")}getSelectedOptions(){if(this.variant!=="multi"){return this.selectedOptions.map((e=>e.label)).join("")}return this.selectedOptions.slice(0,2).map((e=>e.label)).join(", ")}toggleDropdownMenu(){if(this.readOnly)return;this.opened=!this.opened}focusChipItemAt(e=0){this.opened=true;const i=this.getChipItems();let t;if(e===-1){t=i.item(i.length-1)}else if(e>=0&&e<i.length){t=i.item(e)}else{console.error(`Invalid index: ${e}`);return}const s=t.shadowRoot.querySelector(".chip-item");if(s){setTimeout((()=>{s.focus()}),1)}}focusChip(){const e=this.chip.shadowRoot.querySelector(".chip__wrapper");e.focus()}handleUnselectButtonClick(e){e.stopPropagation();this.opened=false;let i=false;const t=this.getChipItems();t.forEach((e=>{if(e.selected){i=true;e.chipState=Object.assign(Object.assign({},e.chipState),{emitIfxChipItemSelect:false});e.selected=false}}));if(i){const e=this.selectedOptions;this.selectedOptions=[];this.value=[];this.ifxChange.emit({previousSelection:e,currentSelection:[],name:this.placeholder})}}handleWrapperClick(){if(!this.readOnly){this.toggleDropdownMenu()}}handleWrapperKeyDown(e){if(this.readOnly)return;if(!this.opened){switch(e.code){case"Space":case"Enter":case"ArrowDown":this.focusChipItemAt(0);break;case"ArrowUp":this.focusChipItemAt(-1);break}}else{switch(e.code){case"Escape":this.opened=false;this.focusChip();break}}}handleDropdownKeyDown(e){let i=this.getChipItems();let t=Array.from(i).indexOf(e.target);if(t===-1){console.error("Target not found in chip items");return}switch(e.code){case"ArrowDown":if(t===i.length-1)break;this.focusChipItemAt(t+1);break;case"ArrowUp":if(t===0)break;this.focusChipItemAt(t-1);break;case"Escape":this.opened=false;this.focusChip();break;case"Space":if(this.variant==="single"){this.opened=false;this.focusChip()}break;case"Enter":this.opened=false;this.focusChip();break}}syncChipState(){const e=this.getChipItems();let i=0;e.forEach((e=>{e.chipState={emitIfxChipItemSelect:true,size:this.size==="small"?"small":"large",variant:this.variant==="multi"?"multi":"single",key:i++}}))}syncSelectedOptionsWithProp(e){this.selectedOptions=[];const i=(()=>{let e=0;return()=>e++})();if(Array.isArray(e)){this.selectedOptions=e.map((e=>({value:e,label:e,selected:true,key:i(),emitIfxChange:true})))}else if(typeof e==="string"){this.selectedOptions=[{value:e,label:e,selected:true,key:i(),emitIfxChange:true}]}this.syncChipState()}componentWillLoad(){this.syncSelectedOptionsWithProp(this.value);if(!n(this.chip)){a("ifx-chip")}}render(){return t("div",{key:"0e0e72db529b3835f0b5de328f211d0768c6ddee",class:"chip"},t("div",{key:"2b61f018f055c39601c1024dee6e1858c01c7863",class:`chip__wrapper chip__wrapper--${this.size==="small"?"small":"large"}\n chip__wrapper--${this.variant==="multi"?"multi":"single"}\n ${this.opened&&!this.readOnly?"chip__wrapper--opened":""}\n ${this.selectedOptions.length?"chip__wrapper--selected":""}`,tabIndex:0,onClick:!this.readOnly?()=>{this.handleWrapperClick()}:undefined,role:"combobox","aria-label":this.ariaLabel,"aria-value":this.getSelectedOptions(),"aria-haspopup":!this.readOnly?"listbox":undefined,"aria-expanded":!this.readOnly?this.opened.toString():undefined,"aria-controls":!this.readOnly?"dropdown":undefined,"aria-readonly":this.readOnly?"true":undefined,"aria-multiselectable":this.variant==="multi"?"true":undefined},t("div",{key:"61c7ae5868a0ce18faabb0e9f19b643178a22828",class:"wrapper__label"},this.selectedOptions.length===0&&`${this.placeholder}`,this.selectedOptions.length!==0&&(this.variant==="multi"||this.readOnly)&&this.placeholder!==""&&`${this.placeholder}:`,this.selectedOptions.length!==0&&t("div",{key:"33ef743d96c35968e93033e558585c6a942efa70",class:"label__selected-options"},this.getSelectedOptions()),this.selectedOptions.length>2&&this.variant==="multi"&&t("ifx-indicator",{key:"5f5e12b89d03af3c5333f13af1f7a4f1eff4355e",variant:"number",number:this.selectedOptions.length-2})),!this.readOnly&&(this.variant!=="multi"||this.variant==="multi"&&this.selectedOptions.length===0)&&t("div",{key:"77ac62cec78ededc4e01793f33cc236582ae4adf",class:"wrapper__open-button"},t("ifx-icon",{key:1,icon:`chevron-down-16`})),this.variant!=="multi"&&this.readOnly!==false&&this.selectedOptions.length>0&&t("div",{key:"22c2f37f9f073cd2e8fe31cf3095f89a49bbeca9",class:"wrapper__unselect-button",onClick:e=>{this.handleUnselectButtonClick(e)}},t("ifx-icon",{key:2,icon:`cross16`})),this.selectedOptions.length>=1&&this.variant==="multi"&&t("div",{key:"bf670388198eb70b9cd14823fc34efd2184489e5",class:"wrapper__unselect-button",onClick:e=>{this.handleUnselectButtonClick(e)}},t("ifx-icon",{key:2,icon:`cross16`}))),this.opened&&!this.readOnly&&t("div",{key:"d2ab296e12ff492e87c73bc34e6a2a8e0a2752e4",id:"dropdown",role:"listbox",class:"chip__dropdown"},t("slot",{key:"2cd227969f98e74a6e18cbab4a1bb271e0782def"})))}get chip(){return s(this)}static get watchers(){return{value:["handleValueChange"],readOnly:["handleReadOnlyChange"]}}};c.style=r;const h=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}.chip-item{display:flex;align-items:center;gap:8px;padding:8px 16px;user-select:none;transition:all 100ms ease;transition-property:background, color}.chip-item:hover{cursor:pointer;background-color:#EEEDED}.chip-item:active{background-color:#BFBBBB}.chip-item:focus{outline:2px solid #0A8276}.chip-item.chip-item--large{font:400 1rem/1.5rem "Source Sans 3"}.chip-item.chip-item--small{font:400 0.875rem/1.25rem "Source Sans 3"}.chip-item.chip-item--selected{color:#0A8276}.chip-item.chip-item--selected .chip-item__selected-indicator{display:block}.chip-item__selected-indicator{display:none;margin-left:auto}';const o=h;const p=class{constructor(t){e(this,t);this.ifxChipItemSelect=i(this,"ifxChipItemSelect",5);this.value=undefined;this.chipState={emitIfxChipItemSelect:true,variant:"multi",size:"large"};this.selected=false}updateItemSelection(e){if(this.chipState.variant==="single"){const i=e.target;if(this.chipItem!==i&&this.chipItem.parentElement===i.parentElement){this.selected=false}}}validateSelected(e,i){if(e!==i){if(this.chipState.emitIfxChipItemSelect){this.emitIfxChipItemSelectEvent()}else{this.chipState.emitIfxChipItemSelect=true}}}getItemLabel(){return this.chipItem.innerText}toggleItemSelection(){this.selected=!this.selected}emitIfxChipItemSelectEvent(e=true){this.ifxChipItemSelect.emit({emitIfxChange:e,key:this.chipState.key,label:this.getItemLabel(),selected:this.selected,value:this.value})}handleItemClick(){this.toggleItemSelection()}handleItemKeyDown(e){if(e.code==="Enter"||e.code==="Space"){this.toggleItemSelection()}}handleSelectedState(){if(this.selected){this.emitIfxChipItemSelectEvent(false)}}componentWillLoad(){this.handleSelectedState()}render(){return t("div",{key:"7ceff18d0a41b419a188d925fd854cc97d7a9ecd",class:`chip-item chip-item--${this.chipState.size} \n chip-item--${(this.selected&&this.chipState.variant)==="single"?"selected":""}`,tabIndex:0,onClick:()=>{this.handleItemClick()},onKeyDown:e=>{this.handleItemKeyDown(e)},role:"option","aria-selected":this.selected.toString()},this.chipState.variant==="multi"&&t("ifx-checkbox",{key:"d2f717951d288aa0863081e54cabf7edd1c6f7e6",checked:this.selected,tabIndex:-1,size:"s"}),t("div",{key:"fff335d9009c93863012f6a4307ed4322413c4f7",class:"chip-item__label"}," ",t("slot",{key:"a093e9caf2eecba28c58674dde3f788be1f5849b"})," "),t("div",{key:"ea76c6b3d0bdd2a687acfbe323ebd9e6d6034a40",class:"chip-item__selected-indicator"},t("ifx-icon",{key:"5d0ae125cb1ea0297d81d773c9981bd13f0c5759",icon:"check-16"}," ")))}get chipItem(){return s(this)}static get watchers(){return{selected:["validateSelected"]}}};p.style=o;const d='@charset "UTF-8";:root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}:host{display:inline-flex}.container{display:inline-flex;justify-content:center;align-items:center;gap:32px;font-family:var(--ifx-font-family)}.container .items__per-page-wrapper{display:flex;align-items:center;gap:16px}.container .items__per-page-wrapper .items__per-page-label{color:#1D1D1D;font-size:14px;font-style:normal;font-weight:600;line-height:20px}.container .items__per-page-wrapper .items__per-page-field{display:flex;flex-direction:column;align-items:flex-start}.container .items__per-page-wrapper .items__per-page-field ifx-select{width:92px}.container .items__total-wrapper{display:flex;justify-content:center;align-items:center;gap:12px}.container .items__total-wrapper .items__total-button{display:flex;width:40px;height:40px;justify-content:center;align-items:center;border-radius:100px;border:1px solid #BFBBBB;background:#FFF}.container .items__total-wrapper .page__numbers-wrapper{display:flex;justify-content:center;align-items:center;gap:12px}.container .items__total-wrapper .page__numbers-wrapper .page__number-item{display:flex;padding:6px;flex-direction:column;justify-content:center;align-items:center;gap:10px;border-radius:100px}.container .items__total-wrapper .page__numbers-wrapper .page__number-item.active{background-color:#0A8276}.container .items__total-wrapper .page__numbers-wrapper .page__number-item.active span{color:#fff}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:hover{cursor:pointer}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:hover:not(.active){background-color:#ddd}.container .items__total-wrapper .page__numbers-wrapper .page__number-item:active:not(.active){background-color:#575352}.container .items__total-wrapper .page__numbers-wrapper .page__number-item span{display:flex;width:16px;height:16px;flex-direction:column;justify-content:center;color:#1D1D1D;text-align:center;font-size:13px;font-style:normal;font-weight:400;line-height:20px}.pagination{display:flex}.pagination ifx-icon-button:first-of-type{margin-right:12px}.pagination ifx-icon-button:last-of-type{margin-left:12px}a{padding:8px;border-radius:100px}ol{list-style-type:none;padding:0;margin:0;display:inline-flex;align-items:center;gap:12px}li{display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:100px}li:hover:not(.active) a{background-color:#EEEDED}li:active:not(.active) a{background-color:#575352;color:#fff}li.active{background-color:#0A8276}li.active a{color:#fff}li:hover{cursor:pointer}li a{text-decoration:none;display:flex;width:16px;height:16px;flex-direction:column;justify-content:center;color:#1D1D1D;text-align:center;font-size:13px;font-style:normal;font-weight:400;line-height:20px;align-items:center}.prev.disabled,.next.disabled{cursor:default}.prev.disabled:hover,.next.disabled:hover{cursor:default;text-decoration:none}.prev{margin-right:2.5px}.next{margin-left:2.5px}@media (min-width: 400px){li:first-child,li.active-sibling,li.active,li.active+li,li:last-child{display:inline-flex !important;flex-direction:row}li:first-child:nth-last-child(n+8)~li{display:none}li:first-child:nth-last-child(n+8)~li.active-sibling:before{content:"…";font-size:13px;display:inline-block;margin-right:6px}li:first-child:nth-last-child(n+8)~li.active+li:after{content:"…";font-size:13px;display:inline-block;margin-left:6px}li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+5){display:inline-flex;flex-direction:row}li:first-child:nth-last-child(n+8)~li:nth-last-child(5):before{content:"…";font-size:13px;display:inline-block;margin-right:6px}li:first-child:nth-last-child(n+8)~li:nth-child(-n+2):before,li:first-child:nth-last-child(n+8)~li:nth-child(-n+2):after,li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+2):before,li:first-child:nth-last-child(n+8)~li:nth-last-child(-n+2):after,li:first-child:nth-last-child(n+8)~li.active-sibling:nth-last-child(-n+4):before,li:first-child:nth-last-child(n+8)~li.active-sibling:nth-last-child(-n+4):after{display:none !important}li:first-child:nth-last-child(n+8).active~li:nth-last-child(-n+5),li:first-child:nth-last-child(n+8)~li.active~li:nth-last-child(-n+5){display:none}li:first-child:nth-last-child(n+8).active~li:nth-last-child(-n+5):before,li:first-child:nth-last-child(n+8)~li.active~li:nth-last-child(-n+5):before{display:none}li:first-child:nth-last-child(n+8).active~li:nth-child(-n+5),li:first-child:nth-last-child(n+8)~li.active~li:nth-child(-n+5){display:inline-flex !important;flex-direction:row}li:first-child:nth-last-child(n+8).active~li:nth-child(-n+4):after,li:first-child:nth-last-child(n+8)~li.active~li:nth-child(-n+4):after{display:none}li:first-child:nth-last-child(n+8).active~li:nth-child(5):after,li:first-child:nth-last-child(n+8)~li.active~li:nth-child(5):after{content:"…";font-size:13px;display:inline-block;margin-left:6px}li:first-child:nth-last-child(n+8).active:before,li:first-child:nth-last-child(n+8).active:after,li:first-child:nth-last-child(n+8)~li.active:before,li:first-child:nth-last-child(n+8)~li.active:after{display:none}}';const f=d;const m=class{constructor(t){e(this,t);this.ifxPageChange=i(this,"ifxPageChange",7);this.currentPage=1;this.internalPage=1;this.internalItemsPerPage=10;this.numberOfPages=[];this.total=1;this.filteredItemsPerPage=[];this.visiblePages=[];this.CLASS_DISABLED="disabled";this.CLASS_ACTIVE="active";this.handlePageClick=e=>{const i=e.currentTarget;const t=parseInt(i.dataset.page);if(!isNaN(t))this.changePage(t)}}setItemsPerPage(e){var i,t;const s=((i=e.detail)===null||i===void 0?void 0:i.value)||((t=e.detail)===null||t===void 0?void 0:t.label);const a=parseInt(s)||10;if(a===this.internalItemsPerPage){return}this.internalItemsPerPage=a;this.internalPage=1;this.calculateNumberOfPages();this.updateVisiblePages();this.handleEventEmission()}componentDidLoad(){this.initPagination()}updateVisiblePages(){const e=2;const i=this.numberOfPages.length;const t=this.internalPage;let s=[];if(i<=5){s=[...this.numberOfPages]}else{s.push(1);if(t>e+1)s.push("...");let a=Math.max(2,t-e);let n=Math.min(i-1,t+e);if(t<=e+1)n=e*2+1;if(t>=i-e)a=i-e*2;for(let e=a;e<=n;e++)s.push(e);if(t<i-e)s.push("...");s.push(i)}this.visiblePages=[...new Set(s)]}calculateNumberOfPages(){const e=Math.ceil(this.total/this.internalItemsPerPage);this.numberOfPages=Array.from({length:e},((e,i)=>i+1));this.internalPage=Math.max(1,Math.min(this.currentPage,e))}filterOptionsArray(){const e=typeof this.itemsPerPage==="string"?JSON.parse(this.itemsPerPage):this.itemsPerPage;this.filteredItemsPerPage=e.map((e=>Object.assign(Object.assign({},e),{label:e.label||e.value})))}componentWillLoad(){if(!n(this.el)){a("ifx-pagination")}this.calculateNumberOfPages();this.filterOptionsArray();this.updateVisiblePages()}componentWillUpdate(){if(this.prevInternalPage!==this.internalPage){this.updateVisiblePages();this.prevInternalPage=this.internalPage}}componentDidUpdate(){this.initPagination()}handleEventEmission(){this.ifxPageChange.emit({currentPage:this.internalPage,totalPages:this.numberOfPages.length,itemsPerPage:this.internalItemsPerPage})}initPagination(){const e=this.el.shadowRoot.querySelector(".pagination");if(!e)return;const i=()=>{const i=e.querySelector(".prev");const t=e.querySelector(".next");if(i){i.disabled=this.internalPage===1;i.classList.toggle(this.CLASS_DISABLED,this.internalPage===1)}if(t){t.disabled=this.internalPage===this.numberOfPages.length;t.classList.toggle(this.CLASS_DISABLED,this.internalPage===this.numberOfPages.length)}};e.querySelectorAll("li").forEach((e=>{e.removeEventListener("click",this.handlePageClick);e.addEventListener("click",this.handlePageClick)}));i()}changePage(e){e=Math.max(1,Math.min(e,this.numberOfPages.length));if(e===this.internalPage)return;this.internalPage=e;this.handleEventEmission();this.initPagination()}render(){return t("div",{key:"120f6db1f0899a6cf1a0c8418c1712e1b50726d2",class:"container"},t("div",{key:"d21a7b940b7235c1d67c3ffa2bbb87463e9e0e1f",class:"items__per-page-wrapper"},t("div",{key:"1747ac5690181c57305189fd2ace9e9651a01d28",class:"items__per-page-label"},"Results per Page"),t("div",{key:"a437b3410a46f1059b57ba2c9b7d3ac96a73d0b1",class:"items__per-page-field"},t("ifx-select",{key:"6f01aaf8efecbbdeeb7180077e98dcf1851b130f",placeholder:"false","show-search":"false",value:undefined,disabled:false,error:false,size:"s",options:this.filteredItemsPerPage,"placeholder-value":"Select"}))),t("div",{key:"45379d16c815cb271eab074bfb334256d0b8293e",class:"items__total-wrapper"},t("div",{key:"8c567a2f79cee9affcd7002fcf6808dca68945d3",class:"pagination"},t("ifx-icon-button",{key:"681ffc9a5f5d61520176fb2e4dfe44035d566a41",class:"prev",icon:"arrow-left-16",onClick:()=>this.changePage(this.internalPage-1)}),t("ol",{key:"19e46d1c5f3846f13186d587d5a01e1e2169db4f"},this.visiblePages.map(((e,i)=>typeof e==="number"?t("li",{key:`page-${e}`,class:{[this.CLASS_ACTIVE]:e===this.internalPage},"data-page":e},t("a",{href:"javascript:void(0)"},e)):t("li",{class:"ellipsis",key:`ellipsis-${i}`},t("span",null,"..."))))),t("ifx-icon-button",{key:"65b5dfd4edde059345875a0443edb218cde7d6ac",class:"next",icon:"arrow-right-16",onClick:()=>this.changePage(this.internalPage+1)}))))}get el(){return s(this)}};m.style=f;export{c as ifx_chip,p as ifx_chip_item,m as ifx_pagination};
2
+ //# sourceMappingURL=p-1fd80576.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["chipCss","IfxChipStyle0","Chip","constructor","hostRef","this","placeholder","size","value","undefined","variant","readOnly","opened","selectedOptions","handleValueChange","newValue","syncSelectedOptionsWithProp","handleReadOnlyChange","closeDropdownOnOutsideClick","event","path","composedPath","chipWrapper","chip","shadowRoot","querySelector","chipDropdown","includes","toggleDropdownMenu","handleKeyDown","code","preventDefault","target","tagName","handleWrapperKeyDown","handleDropdownKeyDown","updateSelectedOptions","eventDetail","detail","previousSelection","selected","chipItems","getChipItems","forEach","chipItem","chipState","Object","assign","emitIfxChipItemSelect","find","option","filter","map","emitIfxChange","ifxChange","emit","currentSelection","name","querySelectorAll","getSelectedOptions","label","join","slice","focusChipItemAt","index","item","length","console","error","shadowItem","setTimeout","focus","focusChip","handleUnselectButtonClick","stopPropagation","itemGotUnselected","handleWrapperClick","chipitems","targetIndex","Array","from","indexOf","syncChipState","key","generateKey","count","isArray","componentWillLoad","isNestedInIfxComponent","trackComponent","render","h","class","tabIndex","onClick","role","ariaLabel","toString","number","icon","e","id","chipItemCss","IfxChipItemStyle0","ChipItem","updateItemSelection","parentElement","validateSelected","oldValue","emitIfxChipItemSelectEvent","getItemLabel","innerText","toggleItemSelection","ifxChipItemSelect","handleItemClick","handleItemKeyDown","handleSelectedState","onKeyDown","checked","paginationCss","IfxPaginationStyle0","Pagination","currentPage","internalPage","internalItemsPerPage","numberOfPages","total","filteredItemsPerPage","visiblePages","CLASS_DISABLED","CLASS_ACTIVE","handlePageClick","li","currentTarget","page","parseInt","dataset","isNaN","changePage","setItemsPerPage","selectedValue","_a","_b","newItemsPerPage","calculateNumberOfPages","updateVisiblePages","handleEventEmission","componentDidLoad","initPagination","buffer","totalPages","current","pages","push","start","Math","max","end","min","i","Set","ceil","_","filterOptionsArray","items","itemsPerPage","JSON","parse","el","componentWillUpdate","prevInternalPage","componentDidUpdate","ifxPageChange","pagination","updateButtons","prev","next","disabled","classList","toggle","removeEventListener","addEventListener","newPage","options","href"],"sources":["src/components/chip/chip.scss?tag=ifx-chip&encapsulation=shadow","src/components/chip/chip.tsx","src/components/chip/chip-item/chip-item.scss?tag=ifx-chip-item&encapsulation=shadow","src/components/chip/chip-item/chip-item.tsx","src/components/pagination/pagination.scss?tag=ifx-pagination&encapsulation=shadow","src/components/pagination/pagination.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-block;\n}\n\n.chip {\n position: relative;\n}\n\n.chip__wrapper {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: tokens.$ifxSpace100;\n\n box-sizing: border-box;\n border: 1px solid tokens.$ifxColorEngineering300;\n border-radius: tokens.$ifxBorderRadiusRound;\n \n background: tokens.$ifxColorBaseWhite;\n \n cursor: pointer; \n \n transition: border 100ms ease;\n\n font: tokens.$ifxBodyBody04;\n \n &:hover, &:focus-visible {\n outline: none;\n border: 1px solid tokens.$ifxColorEngineering500;\n }\n\n &:focus {\n border: 1px solid tokens.$ifxColorOcean500;\n }\n \n &.chip__wrapper--small {\n padding: tokens.$ifxSpace50 tokens.$ifxSpace150;\n }\n \n &.chip__wrapper--large {\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n }\n \n &.chip__wrapper--opened {\n border: 1px solid tokens.$ifxColorOcean500;\n \n .wrapper__open-button {\n transform: rotate(-180deg);\n }\n }\n \n &.chip__wrapper--selected {\n outline: 3px solid tokens.$ifxColorOcean500;\n outline-offset: -3px;\n \n color: tokens.$ifxColorOcean500;\n \n &:hover, &:focus-visible {\n outline: 3px solid tokens.$ifxColorOcean600;\n \n color: tokens.$ifxColorOcean600;\n }\n }\n}\n\n.wrapper__label {\n display: inline-flex;\n align-items: center;\n gap: tokens.$ifxSpace50;\n\n font: tokens.$ifxBodyBody04;\n \n .label__selected-options {\n font: tokens.$ifxBodyBodySemibold04;\n }\n}\n\n.wrapper__open-button {\n display:flex;\n align-items: center;\n \n transition: all 300ms ease;\n}\n\n.wrapper__unselect-button {\n display:flex;\n align-items: center;\n}\n\n.chip__dropdown {\n position: absolute;\n z-index: 1;\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n border: 1px solid tokens.$ifxColorEngineering200;\n border-radius: tokens.$ifxBorderRadius12;\n padding: tokens.$ifxSpace100 0;\n\n min-width: 222px;\n \n background-color: tokens.$ifxColorBaseWhite;\n}\n","import { h, Component, Element, Event, EventEmitter, Listen, Prop, State, Watch } from '@stencil/core';\nimport { ChipItemSelectEvent } from './interfaces';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\n\n@Component({\n tag: 'ifx-chip',\n styleUrl: 'chip.scss',\n shadow: true\n})\nexport class Chip {\n @Element() chip: HTMLIfxChipElement;\n\n @Event() ifxChange: EventEmitter<{ previousSelection: Array<ChipItemSelectEvent>, currentSelection: Array<ChipItemSelectEvent>, name: string }>;\n @Prop() placeholder: string = '';\n @Prop() size: 'small' | 'large' = 'large';\n @Prop({ mutable: true }) value: Array<string> | string = undefined;\n @Prop() variant: 'single' | 'multi' = 'single';\n @Prop() readOnly: boolean = false;\n @Prop() ariaLabel: string | null;\n\n @State() opened: boolean = false;\n @State() selectedOptions: Array<ChipItemSelectEvent> = [];\n\n @Watch('value')\n handleValueChange(newValue: Array<string> | string) {\n this.syncSelectedOptionsWithProp(newValue);\n }\n\n @Watch('readOnly')\n handleReadOnlyChange(newValue: boolean) {\n if (newValue) {\n this.opened = false;\n }\n }\n\n @Listen('mousedown', { target: 'document' })\n closeDropdownOnOutsideClick(event: MouseEvent) {\n const path = event.composedPath();\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n const chipDropdown: HTMLElement = this.chip.shadowRoot.querySelector('.chip__dropdown');\n if (!path.includes(chipDropdown) && !path.includes(chipWrapper) && this.opened) {\n this.toggleDropdownMenu();\n }\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n // override behavior of all keys except Tab. Users should be able to tab out of the component.\n if (event.code !== 'Tab') {\n event.preventDefault(); \n }\n\n if ((event.target as HTMLElement).tagName === 'IFX-CHIP') {\n this.handleWrapperKeyDown(event);\n } else if ((event.target as HTMLElement).tagName === 'IFX-CHIP-ITEM') {\n this.handleDropdownKeyDown(event);\n }\n }\n\n @Listen('ifxChipItemSelect')\n updateSelectedOptions(event: CustomEvent<ChipItemSelectEvent>) {\n const eventDetail: ChipItemSelectEvent = event.detail;\n const previousSelection: Array<ChipItemSelectEvent> = [...this.selectedOptions];\n\n if (this.variant !== 'multi') {\n if (eventDetail.selected) {\n this.opened = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected && chipItem !== event.target) {\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n };\n chipItem.selected = false;\n }\n });\n this.selectedOptions = [eventDetail];\n } else {\n this.selectedOptions = [];\n }\n this.value = this.selectedOptions[0] ? this.selectedOptions[0].value : undefined;\n } else {\n if (eventDetail.selected) {\n // Prevent duplicate entries\n if (!this.selectedOptions.find(option => option.value === eventDetail.value)) {\n this.selectedOptions = [...this.selectedOptions, eventDetail];\n }\n } else {\n this.selectedOptions = this.selectedOptions.filter((option) => option.value !== eventDetail.value);\n }\n this.value = this.selectedOptions.map((option) => option.value);\n }\n\n if (eventDetail.emitIfxChange) {\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: this.selectedOptions,\n name: this.placeholder\n });\n }\n }\n\n getChipItems(): NodeList {\n return this.chip.querySelectorAll('ifx-chip-item');\n }\n\n getSelectedOptions(): string {\n if (this.variant !== 'multi') {\n return this.selectedOptions.map(option => option.label).join('');\n }\n return this.selectedOptions.slice(0, 2).map(option => option.label).join(', ');\n }\n\n toggleDropdownMenu() {\n if (this.readOnly) return;\n this.opened = !this.opened;\n }\n\n /**\n * Focuses the chip item at the specified index.\n * @param index the index of the chip item to focus. -1 will focus the last chip item.\n */\n focusChipItemAt(index: number = 0) {\n this.opened = true;\n const chipItems: NodeList = this.getChipItems();\n let item: HTMLIfxChipItemElement;\n \n if (index === -1) {\n item = chipItems.item(chipItems.length - 1) as HTMLIfxChipItemElement;\n } else if (index >= 0 && index < chipItems.length) {\n item = chipItems.item(index) as HTMLIfxChipItemElement;\n } else {\n console.error(`Invalid index: ${index}`);\n return;\n }\n\n const shadowItem = item.shadowRoot.querySelector('.chip-item') as HTMLDivElement;\n if (shadowItem) {\n // Delay needed for the shadow item to be rendered.\n setTimeout(() => {\n shadowItem.focus();\n }, 1);\n }\n }\n\n focusChip() {\n const chipWrapper: HTMLElement = this.chip.shadowRoot.querySelector('.chip__wrapper');\n chipWrapper.focus();\n }\n\n handleUnselectButtonClick(event: MouseEvent) {\n event.stopPropagation();\n this.opened = false;\n\n let itemGotUnselected = false;\n const chipItems: NodeList = this.getChipItems();\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n if (chipItem.selected) {\n itemGotUnselected = true;\n chipItem.chipState = {\n ...chipItem.chipState,\n emitIfxChipItemSelect: false,\n }\n chipItem.selected = false;\n }\n });\n\n /* Emit event only if at least one item was unselected. */\n if (itemGotUnselected) {\n const previousSelection: Array<ChipItemSelectEvent> = this.selectedOptions;\n this.selectedOptions = [];\n this.value = [];\n this.ifxChange.emit({\n previousSelection: previousSelection,\n currentSelection: [],\n name: this.placeholder\n });\n }\n }\n\n handleWrapperClick() {\n if (!this.readOnly) {\n this.toggleDropdownMenu();\n }\n }\n\n handleWrapperKeyDown(event: KeyboardEvent) {\n // Keymap oriented at https://www.w3.org/WAI/ARIA/apg/patterns/combobox/#keyboard_interaction\n if (this.readOnly) return;\n\n if (!this.opened) {\n switch (event.code) {\n case 'Space':\n case 'Enter':\n case 'ArrowDown':\n this.focusChipItemAt(0);\n break;\n case 'ArrowUp':\n this.focusChipItemAt(-1);\n break;\n }\n } else {\n switch (event.code) {\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n }\n\n handleDropdownKeyDown(event: KeyboardEvent) {\n let chipitems = this.getChipItems();\n\n let targetIndex = Array.from(chipitems).indexOf(event.target as HTMLIfxChipItemElement);\n if (targetIndex === -1) {\n console.error('Target not found in chip items');\n return;\n }\n\n switch (event.code) {\n case 'ArrowDown':\n if (targetIndex === chipitems.length - 1) break;\n this.focusChipItemAt(targetIndex + 1);\n break;\n case 'ArrowUp':\n if (targetIndex === 0) break;\n this.focusChipItemAt( targetIndex - 1);\n break;\n case 'Escape':\n this.opened = false;\n this.focusChip();\n break;\n case 'Space':\n // selection is handled by the chip-item component\n if (this.variant === 'single') {\n // only close dropdown if single select\n this.opened = false;\n this.focusChip();\n }\n break;\n case 'Enter':\n // selection is handled by the chip-item component\n this.opened = false;\n this.focusChip();\n break;\n }\n }\n\n syncChipState() {\n const chipItems: NodeList = this.getChipItems();\n let key: number = 0;\n chipItems.forEach((chipItem: HTMLIfxChipItemElement) => {\n chipItem.chipState = {\n emitIfxChipItemSelect: true,\n size: (this.size === 'small' ? 'small' : 'large'),\n variant: (this.variant === 'multi' ? 'multi' : 'single'),\n key: key++\n };\n });\n }\n\n syncSelectedOptionsWithProp(newValue: Array<string> | string) {\n // Clear old selected options\n this.selectedOptions = [];\n\n const generateKey = (() => {\n let count = 0;\n return () => count++;\n })();\n\n if (Array.isArray(newValue)) {\n this.selectedOptions = newValue.map(value => ({\n value,\n label: value,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }));\n } else if (typeof newValue === 'string') {\n this.selectedOptions = [{\n value: newValue,\n label: newValue,\n selected: true,\n key: generateKey(),\n emitIfxChange: true\n }];\n }\n\n this.syncChipState();\n }\n\n componentWillLoad() {\n this.syncSelectedOptionsWithProp(this.value);\n if(!isNestedInIfxComponent(this.chip)) { \n trackComponent('ifx-chip')\n }\n }\n\n render() {\n return (\n <div class='chip'>\n <div class={`chip__wrapper chip__wrapper--${this.size === 'small' ? 'small' : 'large'}\n chip__wrapper--${this.variant === 'multi' ? 'multi' : 'single'}\n ${this.opened && !this.readOnly ? 'chip__wrapper--opened' : ''}\n ${this.selectedOptions.length ? 'chip__wrapper--selected' : ''}`}\n tabIndex={0}\n onClick={!this.readOnly ? () => { this.handleWrapperClick() } : undefined}\n role='combobox'\n aria-label={this.ariaLabel}\n aria-value={this.getSelectedOptions()}\n aria-haspopup={!this.readOnly ? 'listbox' : undefined}\n aria-expanded={!this.readOnly ? this.opened.toString() : undefined}\n aria-controls={!this.readOnly ? 'dropdown' : undefined}\n aria-readonly={this.readOnly ? 'true' : undefined}\n aria-multiselectable={this.variant === 'multi' ? 'true' : undefined}\n >\n\n <div class='wrapper__label'>\n {\n (this.selectedOptions.length === 0) && `${this.placeholder}`\n }\n\n {\n (this.selectedOptions.length !== 0 && (this.variant === 'multi' || this.readOnly) && this.placeholder !== '') &&\n `${this.placeholder}:`\n }\n\n {\n (this.selectedOptions.length !== 0) &&\n <div class='label__selected-options'>\n {this.getSelectedOptions()}\n </div>\n }\n\n {\n (this.selectedOptions.length > 2 && this.variant === 'multi') &&\n <ifx-indicator variant='number' number={this.selectedOptions.length - 2}></ifx-indicator>\n }\n </div>\n\n {\n !this.readOnly && (this.variant !== 'multi' || (this.variant === 'multi' && this.selectedOptions.length === 0)) &&\n <div class='wrapper__open-button'>\n <ifx-icon key={1} icon={`chevron-down-16`} />\n </div>\n }\n\n\n { \n (this.variant !== 'multi' && this.readOnly !== false && this.selectedOptions.length > 0) &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n {\n ((this.selectedOptions.length >= 1) && this.variant === 'multi') &&\n <div class='wrapper__unselect-button' onClick={(e) => { this.handleUnselectButtonClick(e) }}>\n <ifx-icon key={2} icon={`cross16`} />\n </div>\n }\n\n </div>\n\n {\n this.opened && !this.readOnly &&\n <div id='dropdown' role='listbox' class='chip__dropdown'>\n <slot />\n </div>\n }\n </div>\n );\n }\n}\n","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n.chip-item {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n \n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n \n user-select: none;\n \n transition: all 100ms ease;\n transition-property: background, color;\n \n &:hover {\n cursor: pointer;\n \n background-color: tokens.$ifxColorEngineering200;\n }\n \n &:active {\n background-color: tokens.$ifxColorEngineering300;\n }\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n }\n \n &.chip-item--large {\n font: tokens.$ifxBodyBody03;\n }\n \n &.chip-item--small {\n font: tokens.$ifxBodyBody04;\n }\n\n &.chip-item--selected {\n color: tokens.$ifxColorOcean500;\n\n .chip-item__selected-indicator {\n display: block;\n }\n }\n}\n\n.chip-item__selected-indicator {\n display: none;\n \n margin-left: auto;\n}\n\n","import { h,\n Component,\n Element,\n Event,\n EventEmitter, \n Listen,\n Prop, \n Watch } from '@stencil/core';\nimport { ChipItemSelectEvent, ChipState } from '../interfaces';\n\n@Component({\ntag: 'ifx-chip-item',\nstyleUrl: 'chip-item.scss',\nshadow: true\n})\n\nexport class ChipItem {\n@Element() chipItem: HTMLIfxChipItemElement;\n\n@Event({ composed: false }) ifxChipItemSelect: EventEmitter<ChipItemSelectEvent>;\n\n@Prop() value: string = undefined;\n@Prop() chipState: ChipState = { emitIfxChipItemSelect: true, variant: 'multi', size: 'large' }; \n@Prop({ mutable: true, reflect: true }) selected: boolean = false;\n\n@Listen('ifxChipItemSelect', { target: 'body' })\nupdateItemSelection(event: CustomEvent<ChipItemSelectEvent>) {\n if (this.chipState.variant === 'single') {\n const target = event.target as HTMLIfxChipItemElement;\n /* Also making sure chip items are from the same group (parent) while unselecting. */\n if (this.chipItem !== target && this.chipItem.parentElement === target.parentElement) {\n this.selected = false;\n }\n }\n} \n\n@Watch('selected')\nvalidateSelected(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n /* Do not emit if ChipState does not allow. */\n if (this.chipState.emitIfxChipItemSelect){\n this.emitIfxChipItemSelectEvent();\n } else {\n this.chipState.emitIfxChipItemSelect = true;\n }\n }\n} \n\ngetItemLabel(): string {\n return this.chipItem.innerText as string;\n}\n\ntoggleItemSelection() {\n this.selected = !this.selected;\n}\n \n\nemitIfxChipItemSelectEvent(emitIfxChange: boolean = true) {\n this.ifxChipItemSelect.emit({ emitIfxChange: emitIfxChange,\n key: this.chipState.key,\n label: this.getItemLabel(), \n selected: this.selected, \n value: this.value });\n}\n\nhandleItemClick() {\n this.toggleItemSelection();\n}\n\nhandleItemKeyDown(event: KeyboardEvent) {\n if (event.code === 'Enter' || event.code === 'Space') {\n this.toggleItemSelection();\n }\n}\n\nhandleSelectedState() {\n if (this.selected) {\n this.emitIfxChipItemSelectEvent(false);\n }\n}\n\n\ncomponentWillLoad() {\n /* Propogating the selected state to the Chip (Parent) component if it is set. */\n this.handleSelectedState();\n}\n\nrender() {\n return (\n <div class={`chip-item chip-item--${this.chipState.size} \n chip-item--${(this.selected && this.chipState.variant) === 'single' ? 'selected' : ''}`} \n tabIndex={0}\n onClick={() => {this.handleItemClick()}}\n onKeyDown={(e) => {this.handleItemKeyDown(e)}}\n role=\"option\"\n aria-selected={this.selected.toString()}> \n {/* Checkbox; renders only in 'multi' variant. */}\n { \n this.chipState.variant === 'multi' &&\n <ifx-checkbox checked={this.selected}\n tabIndex={-1} \n size='s'>\n </ifx-checkbox>\n }\n\n <div class='chip-item__label'> <slot /> </div>\n\n {/* Selected indicator only visible in 'single' variant. */}\n <div class='chip-item__selected-indicator'> \n <ifx-icon icon='check-16'> </ifx-icon> \n </div>\n\n </div>\n );\n}\n}","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.container {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n gap: 32px;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n\n & .items__per-page-wrapper {\n display: flex;\n align-items: center;\n gap: 16px;\n\n & .items__per-page-label {\n color: #1D1D1D;\n font-size: 14px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n }\n\n & .items__per-page-field {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n\n & ifx-select {\n width: 92px;\n }\n }\n }\n\n & .items__total-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .items__total-button {\n display: flex;\n width: 40px;\n height: 40px;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n border: 1px solid #BFBBBB;\n background: #FFF;\n }\n\n & .page__numbers-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 12px;\n\n & .page__number-item {\n display: flex;\n padding: 6px;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 10px;\n border-radius: 100px;\n\n &.active {\n background-color: #0A8276;\n\n & span {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n &:hover:not(.active) {\n background-color: #ddd;\n\n }\n\n &:active:not(.active) {\n background-color: #575352;\n }\n\n & span {\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n }\n }\n }\n }\n}\n\n\n.pagination {\n display: flex;\n\n & ifx-icon-button:first-of-type {\n margin-right: 12px;\n }\n\n & ifx-icon-button:last-of-type {\n margin-left: 12px;\n }\n}\n\na {\n padding: 8px;\n border-radius: 100px;\n}\n\nol {\n list-style-type: none;\n padding: 0;\n margin: 0;\n display: inline-flex;\n align-items: center;\n gap: 12px;\n}\n\nli {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n border-radius: 100px;\n\n &:hover:not(.active) {\n & a {\n background-color: #EEEDED;\n }\n }\n\n &:active:not(.active) {\n & a {\n background-color: #575352;\n color: #fff;\n }\n }\n\n &.active {\n background-color: #0A8276;\n\n & a {\n color: #fff;\n }\n }\n\n &:hover {\n cursor: pointer;\n }\n\n & a {\n text-decoration: none;\n display: flex;\n width: 16px;\n height: 16px;\n flex-direction: column;\n justify-content: center;\n color: #1D1D1D;\n text-align: center;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n align-items: center;\n }\n}\n\n.prev,\n.next {\n &.disabled {\n cursor: default;\n\n &:hover {\n cursor: default;\n text-decoration: none;\n }\n }\n}\n\n.prev {\n margin-right: 2.5px;\n}\n\n.next {\n margin-left: 2.5px;\n}\n\n\n@mixin ellipsis($before: true) {\n content: \"\\2026\";\n font-size: 13px;\n display: inline-block;\n\n @if($before) {\n margin-right: 6px;\n }\n\n @else {\n margin-left: 6px;\n }\n}\n\n\n// @media(max-width:460px) {\n// li {\n\n// &:first-child,\n// &.active,\n// &.active-sibling:nth-last-child(2), // Show second to last child if the last one is active\n// &:last-child {\n// //display: inline-block !important;\n// display: inline-flex !important;\n// flex-direction: row;\n// }\n\n// $how-many-on-ends: 3; // 1,2,3,...,10 || 1,...,8,9,10\n// // There are >= 5 pages\n// &:first-child:nth-last-child(n+6) {\n\n// &~li {\n// // Start out with all siblings hidden\n// display: none;\n\n// // Show the last children in the list by default\n// &:nth-last-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n\n// }\n\n// // The child at the beginning of the last group shows ellipsis for the group\n// &:nth-last-child(#{$how-many-on-ends}) {\n// &:before {\n// @include ellipsis(true);\n// }\n// }\n\n// // The very beginning elements do not need to show ellipsis\n// // The very end elements do not need to show ellipsis\n// }\n\n\n// &.active,\n// &~li.active {\n\n// // Show ellipsis before and after the active element\n// &:before {\n// @include ellipsis(true);\n// }\n// &:after {\n// @include ellipsis(false);\n// }\n\n\n// // If the active element is in the first or last group, don't show ellipsis (siblings will take care of it)\n// &:nth-child(-n+#{$how-many-on-ends - 1}),\n// &:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n// &:before, &:after {\n// display: none;\n// }\n// }\n\n// // Hide the last group if \"active\" comes before them\n// &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n// display: none;\n// }\n\n// // Show the first group together if \"active\" comes before them\n// &~li:nth-child(-n+#{$how-many-on-ends}) {\n// //display: inline-block;\n// display: inline-flex;\n// flex-direction: row;\n// }\n\n// // If \"active\" is before the last member in the group, don't show ellipsis\n// &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n// &:after {\n// display: none;\n// }\n// }\n\n\n// // The child at the end of the first group shows ellipsis for the group\n// &~li:nth-child(#{$how-many-on-ends}) {\n// &:after {\n// @include ellipsis(false);\n// }\n// }\n// }\n// }\n// }\n// }\n\n@media (min-width: 400px) {\n li {\n\n &:first-child,\n &.active-sibling,\n &.active,\n &.active+li,\n &:last-child {\n //display: inline-block!important;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // There are >= 7 pages\n &:first-child:nth-last-child(n+8) {\n $how-many-on-ends: 5; // 1,2,3,4,5,...,10 || 1,...6,7,8,9,10\n\n &~li {\n // Start out with all siblings hidden\n display: none;\n\n // Show ellipsis before the previous one\n &.active-sibling:before {\n @include ellipsis(true);\n }\n\n // Show ellipsis after the next one\n &.active+li:after {\n @include ellipsis(false);\n }\n\n // Show the last children in the list by default\n &:nth-last-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex;\n flex-direction: row;\n }\n\n // The child at the beginning of the last group shows ellipsis for the group\n &:nth-last-child(#{$how-many-on-ends}) {\n &:before {\n @include ellipsis(true);\n }\n }\n\n // The very beginning elements do not need to show ellipsis\n &:nth-child(-n+#{$how-many-on-ends - 3}),\n // The very end elements do not need to show ellipsis\n &:nth-last-child(-n+#{$how-many-on-ends - 3}),\n // Even if it's a sibling to \"active\"\n &.active-sibling:nth-last-child(-n+#{$how-many-on-ends - 1}) {\n\n &:before,\n &:after {\n display: none !important;\n }\n }\n }\n\n &.active,\n &~li.active {\n\n // Hide the last group if \"active\" comes before them\n &~li:nth-last-child(-n+#{$how-many-on-ends}) {\n display: none;\n\n // If there is overlap, the element will show, but hide it's ellipsis\n &:before {\n display: none;\n }\n }\n\n // Show the first group together if \"active\" comes before them\n &~li:nth-child(-n+#{$how-many-on-ends}) {\n //display: inline-block;\n display: inline-flex !important;\n flex-direction: row;\n }\n\n // If \"active\" is before the last member in the group, don't show ellipsis\n &~li:nth-child(-n+#{$how-many-on-ends - 1}) {\n &:after {\n display: none;\n }\n }\n\n\n // The child at the end of the first group shows ellipsis for the group\n &~li:nth-child(#{$how-many-on-ends}) {\n &:after {\n @include ellipsis(false);\n }\n }\n\n // \"active\" should never show ellipsis\n &:before,\n &:after {\n display: none;\n }\n }\n }\n }\n}","import { Component, h, Element, Event, EventEmitter, Prop, State, Listen } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\n\n@Component({\n tag: 'ifx-pagination',\n styleUrl: 'pagination.scss',\n shadow: true\n})\nexport class Pagination {\n @Element() el: HTMLElement;\n @Event() ifxPageChange: EventEmitter;\n @Prop() currentPage: number = 1;\n @State() internalPage: number = 1;\n @State() internalItemsPerPage: number = 10;\n @State() numberOfPages: number[] = [];\n @Prop() total: number = 1;\n @Prop() itemsPerPage: any[] | string;\n @State() filteredItemsPerPage: any[] = [];\n @State() visiblePages: (number | string)[] = [];\n\n private CLASS_DISABLED = \"disabled\";\n private CLASS_ACTIVE = \"active\";\n private prevInternalPage: number;\n\n @Listen('ifxSelect')\n setItemsPerPage(e: CustomEvent) {\n const selectedValue = e.detail?.value || e.detail?.label; \n const newItemsPerPage = parseInt(selectedValue) || 10;\n\n if (newItemsPerPage === this.internalItemsPerPage) {\n return;\n }\n\n this.internalItemsPerPage = newItemsPerPage;\n this.internalPage = 1; \n this.calculateNumberOfPages();\n this.updateVisiblePages();\n this.handleEventEmission();\n }\n\n componentDidLoad() {\n this.initPagination();\n }\n\n updateVisiblePages() {\n const buffer = 2;\n const totalPages = this.numberOfPages.length;\n const current = this.internalPage;\n let pages: (number | string)[] = [];\n \n if (totalPages <= 5) {\n pages = [...this.numberOfPages];\n } else {\n pages.push(1);\n \n if (current > buffer + 1) pages.push('...');\n \n let start = Math.max(2, current - buffer);\n let end = Math.min(totalPages - 1, current + buffer);\n \n if (current <= buffer + 1) end = buffer * 2 + 1;\n if (current >= totalPages - buffer) start = totalPages - buffer * 2;\n \n for (let i = start; i <= end; i++) pages.push(i);\n \n if (current < totalPages - buffer) pages.push('...');\n pages.push(totalPages);\n }\n \n this.visiblePages = [...new Set(pages)];\n }\n\n calculateNumberOfPages() {\n const totalPages = Math.ceil(this.total / this.internalItemsPerPage);\n this.numberOfPages = Array.from({ length: totalPages }, (_, i) => i + 1);\n this.internalPage = Math.max(1, Math.min(this.currentPage, totalPages));\n }\n\n filterOptionsArray() { \n const items = typeof this.itemsPerPage === 'string' ? \n JSON.parse(this.itemsPerPage) : this.itemsPerPage;\n this.filteredItemsPerPage = items.map(item => ({\n ...item,\n label: item.label || item.value\n }));\n }\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n trackComponent('ifx-pagination')\n }\n this.calculateNumberOfPages();\n this.filterOptionsArray();\n this.updateVisiblePages();\n }\n\n componentWillUpdate() { \n if (this.prevInternalPage !== this.internalPage) {\n this.updateVisiblePages();\n this.prevInternalPage = this.internalPage;\n }\n }\n\n componentDidUpdate() {\n this.initPagination();\n }\n\n handleEventEmission() {\n this.ifxPageChange.emit({\n currentPage: this.internalPage,\n totalPages: this.numberOfPages.length,\n itemsPerPage: this.internalItemsPerPage\n });\n }\n\n initPagination() {\n const pagination = this.el.shadowRoot.querySelector('.pagination');\n if (!pagination) return;\n\n const updateButtons = () => {\n const prev = pagination.querySelector<HTMLButtonElement>('.prev');\n const next = pagination.querySelector<HTMLButtonElement>('.next');\n if (prev) {\n prev.disabled = this.internalPage === 1;\n prev.classList.toggle(this.CLASS_DISABLED, this.internalPage === 1);\n }\n if (next) {\n next.disabled = this.internalPage === this.numberOfPages.length;\n next.classList.toggle(this.CLASS_DISABLED, this.internalPage === this.numberOfPages.length);\n }\n };\n\n pagination.querySelectorAll('li').forEach(li => {\n li.removeEventListener('click', this.handlePageClick);\n li.addEventListener('click', this.handlePageClick);\n });\n\n updateButtons();\n }\n\n private handlePageClick = (e: Event) => {\n const li = e.currentTarget as HTMLLIElement;\n const page = parseInt(li.dataset.page);\n if (!isNaN(page)) this.changePage(page);\n };\n\n changePage(newPage: number) {\n newPage = Math.max(1, Math.min(newPage, this.numberOfPages.length));\n if (newPage === this.internalPage) return;\n \n this.internalPage = newPage;\n this.handleEventEmission();\n this.initPagination();\n }\n\n render() {\n return (\n <div class=\"container\">\n <div class=\"items__per-page-wrapper\">\n <div class=\"items__per-page-label\">Results per Page</div>\n <div class=\"items__per-page-field\">\n <ifx-select\n placeholder='false'\n show-search='false'\n value={undefined}\n disabled={false}\n error={false}\n size=\"s\"\n options={this.filteredItemsPerPage}\n placeholder-value=\"Select\"\n ></ifx-select>\n </div>\n </div>\n \n <div class=\"items__total-wrapper\">\n <div class=\"pagination\">\n <ifx-icon-button\n class=\"prev\"\n icon=\"arrow-left-16\"\n onClick={() => this.changePage(this.internalPage - 1)}\n ></ifx-icon-button>\n \n <ol>\n {this.visiblePages.map((page, i) => typeof page === 'number' ? (\n <li \n key={`page-${page}`}\n class={{ [this.CLASS_ACTIVE]: page === this.internalPage }}\n data-page={page}\n >\n <a href=\"javascript:void(0)\">{page}</a>\n </li>\n ) : (\n <li class=\"ellipsis\" key={`ellipsis-${i}`}>\n <span>...</span>\n </li>\n ))}\n </ol>\n \n <ifx-icon-button\n class=\"next\"\n icon=\"arrow-right-16\"\n onClick={() => this.changePage(this.internalPage + 1)}\n ></ifx-icon-button>\n </div>\n </div>\n </div>\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as a,h as e,a as r,g as o}from"./p-b7a462e5.js";import{t as d}from"./p-6ecb6a6f.js";import{i}from"./p-1ecafb97.js";const t=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}:host{display:inline-flex}.card{position:relative;display:inline-flex;flex-direction:column;word-wrap:break-word;background-color:#FFFFFF;background-clip:border-box;border:1px solid #EEEDED;border-radius:1px;width:350px;height:auto;font-family:var(--ifx-font-family)}.card:has(.card-href:focus),.card:has(.card-href:hover){outline:none;border-color:#0A8276}.card:has(.card-href:focus) ::slotted(ifx-card-headline),.card:has(.card-href:hover) ::slotted(ifx-card-headline){color:#0A8276}.card.noBtns .vertical .lower__body-wrapper{padding-bottom:24px}.card.noBtns .horizontal .lower__body-wrapper{padding-bottom:24px}.card .horizontal{display:flex;flex-direction:row;min-height:218px}.card .horizontal .card-img{flex:1;text-decoration:none}.card .horizontal .card-img.noImage{display:none}.card .horizontal .card-img ::slotted([slot=img]){width:100%;vertical-align:bottom}.card .horizontal .lower__body-wrapper{flex:1;display:grid;grid-template-rows:1fr auto}.card .horizontal .lower__body-wrapper .upper-body{display:flex;flex-direction:column;text-decoration:none;color:#1D1D1D;padding:24px 24px 0px 24px}.card .vertical .upper__body-wrapper{text-decoration:none;color:#1D1D1D}.card .vertical .upper__body-wrapper .card-img{height:190px}.card .vertical .upper__body-wrapper .card-img.noImage{display:none}.card .vertical .upper__body-wrapper .upper-body{padding:24px 24px 0px 24px}.card .vertical .lower__body-wrapper:hover{border-color:#EEEDED}.card.horizontal{flex-direction:row;width:538px}.card.horizontal .card-img{flex:1;order:2}.card.horizontal .card-img ::slotted([slot=img]){width:100%;height:100%;vertical-align:bottom;object-fit:cover}.card.horizontal.left .horizontal .card-img{order:1}.card.horizontal.left .horizontal .lower__body-wrapper{order:2}.card .card-href:focus{outline:none}';const c=t;const s=class{constructor(e){a(this,e);this.direction="vertical";this.href="";this.internalHref="";this.target="_self"}setImgPosition(a){this.alignment=a.detail}handleComponentAdjustment(){const a=this.el.querySelector("ifx-card-image");const e=this.el.querySelector("ifx-card-links");if(!a){this.noImg=true}else this.noImg=false;if(!e){this.noBtns=true}else this.noBtns=false;if(this.href.trim()===""){this.internalHref=undefined}else this.internalHref=this.href}handleClassList(a,e,r){a.classList[e](r)}componentWillLoad(){this.handleComponentAdjustment();if(!i(this.el)){d("ifx-card")}}componentWillUpdate(){this.handleComponentAdjustment()}render(){return e(r,{key:"40866bf05f61939e47c3bca806213981ae34d0cd"},e("div",{key:"77f1848385bfe54f1fc5aec2476064d6f598c788","aria-label":this.ariaLabel,class:`card \n ${this.noBtns?"noBtns":""}\n ${this.direction} \n ${this.alignment}`,role:"region"},this.direction==="horizontal"&&e("div",{key:"54b1cb826c57dcc7a2d3b6401fa67c3ef448239d",class:"horizontal"},e("a",{key:"64f25ede6a07526dd9e3125d79a3ffa3de98f46a",class:`card-img ${this.noImg?"noImage":""} ${this.internalHref?"card-href":""}`,href:this.internalHref},e("slot",{key:"b7182e7b5f57091a144ce7d940aac1738cf2a4bc",name:"img"})),e("div",{key:"806f501ed32d383015c50aaaa87f533d5703cf63",class:"lower__body-wrapper"},e("a",{key:"8ab42796026d5fc313b35eefde304cf4b1df389a",class:`upper-body ${this.internalHref?"card-href":""}`,href:this.internalHref},e("slot",{key:"126f437230cabf1d5f884eea7b3b24a406a63c5c"})),e("div",{key:"79abc91a59ff5db1a1bbd6c93faa86e676166fa7"},e("slot",{key:"8365891d23272c176a8e9ff73e1a9f6f40aa6dd6",name:"buttons"})))),this.direction==="vertical"&&e("div",{key:"08e186383115f84efef8bdfacab51bd7467c4f2c",class:"vertical"},e("a",{key:"796d9fa05184e461d164a9a9e1168b067bd56cbc",class:`upper__body-wrapper ${this.internalHref?"card-href":""}`,href:this.internalHref,target:this.target},e("div",{key:"1f6693dc782f9b0a91fac1d08170b96f73b48028",class:`card-img ${this.noImg?"noImage":""}`},e("slot",{key:"5e05e641395358d9afce4ce8702557a2d605f33d",name:"img"})),e("div",{key:"2ca3b64bb72c17bc31aa33d950d0b9d777af9173",class:"upper-body"},e("slot",{key:"fcced3daa1f072ccdab923c4a43d23e777a11d7f"}))),e("div",{key:"d145272156a3526f38034cf9bbea7249721d28b0",class:"lower__body-wrapper"},e("slot",{key:"250e075bbe73ef3fa61b2b2617ab18c5e1311bc8",name:"buttons"})))))}get el(){return o(this)}};s.style=c;export{s as ifx_card};
2
+ //# sourceMappingURL=p-227fa186.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["cardCss","IfxCardStyle0","Card","constructor","hostRef","this","direction","href","internalHref","target","setImgPosition","event","alignment","detail","handleComponentAdjustment","image","el","querySelector","links","noImg","noBtns","trim","undefined","handleClassList","type","className","classList","componentWillLoad","isNestedInIfxComponent","trackComponent","componentWillUpdate","render","h","Host","key","ariaLabel","class","role","name"],"sources":["src/components/card/card.scss?tag=ifx-card&encapsulation=shadow","src/components/card/card.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.card {\n position: relative;\n display: inline-flex;\n flex-direction: column;\n word-wrap: break-word;\n background-color: tokens.$ifxColorBaseWhite;\n background-clip: border-box;\n border: 1px solid tokens.$ifxColorEngineering200;\n border-radius: 1px;\n //width: 22rem;\n width: 350px;\n height: auto;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n // when the link is focused or hovered, the border color changes\n &:has(.card-href:focus), &:has(.card-href:hover) {\n outline: none;\n border-color: tokens.$ifxColorOcean500;\n\n ::slotted(ifx-card-headline) {\n color: tokens.$ifxColorOcean500;\n }\n }\n\n &.noBtns {\n & .vertical {\n & .lower__body-wrapper {\n padding-bottom: 24px;\n }\n }\n\n & .horizontal {\n & .lower__body-wrapper {\n padding-bottom: 24px;\n }\n }\n }\n\n & .horizontal {\n display: flex;\n flex-direction: row;\n min-height: 218px;\n\n & .card-img {\n flex: 1;\n text-decoration: none;\n\n &.noImage {\n display: none;\n }\n\n & ::slotted([slot=img]) {\n width: 100%;\n vertical-align: bottom;\n }\n }\n\n & .lower__body-wrapper {\n flex: 1;\n display: grid;\n grid-template-rows: 1fr auto;\n\n & .upper-body {\n display: flex;\n flex-direction: column;\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n padding: 24px 24px 0px 24px;\n }\n }\n }\n\n & .vertical {\n & .upper__body-wrapper {\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n\n & .card-img {\n height: 190px;\n\n &.noImage {\n display: none;\n }\n }\n\n & .upper-body {\n padding: 24px 24px 0px 24px;\n }\n }\n\n & .lower__body-wrapper {\n &:hover {\n border-color: tokens.$ifxColorEngineering200;\n }\n }\n }\n\n &.horizontal {\n flex-direction: row;\n width: 538px;\n\n & .card-img {\n flex: 1;\n order: 2;\n\n & ::slotted([slot=img]) {\n width: 100%;\n height: 100%;\n vertical-align: bottom;\n object-fit: cover;\n }\n }\n\n &.left {\n & .horizontal {\n & .card-img {\n order: 1;\n }\n\n & .lower__body-wrapper {\n order: 2;\n }\n }\n }\n }\n\n & .card-href:focus {\n outline: none;\n }\n}","import { Component, h, Host, Element, Prop, State, Listen } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\n\n@Component({\n tag: 'ifx-card',\n styleUrl: 'card.scss',\n shadow: true,\n})\n\nexport class Card {\n @Element() el;\n @State() noBtns: boolean;\n @Prop() direction: 'horizontal' | 'vertical' = 'vertical';\n @State() alignment: string;\n @State() noImg: boolean;\n @Prop() href: string = \"\";\n @State() internalHref: string = \"\"\n @Prop() target: string = \"_self\";\n @Prop() ariaLabel: string | null;\n\n @Listen('imgPosition')\n setImgPosition(event) {\n this.alignment = event.detail\n }\n\n handleComponentAdjustment() {\n const image = this.el.querySelector('ifx-card-image')\n const links = this.el.querySelector('ifx-card-links')\n\n if (!image) {\n this.noImg = true;\n } else this.noImg = false;\n\n if (!links) {\n this.noBtns = true;\n } else this.noBtns = false;\n\n if (this.href.trim() === \"\") {\n this.internalHref = undefined;\n } else this.internalHref = this.href;\n }\n\n handleClassList(el, type, className) {\n el.classList[type](className)\n }\n\n\n componentWillLoad() {\n this.handleComponentAdjustment()\n if(!isNestedInIfxComponent(this.el)) { \n trackComponent('ifx-card')\n }\n }\n\n componentWillUpdate() {\n this.handleComponentAdjustment()\n }\n\nrender() {\n return (\n <Host>\n <div aria-label={this.ariaLabel} class={\n `card \n ${this.noBtns ? 'noBtns' : \"\"}\n ${this.direction} \n ${this.alignment}`\n }\n role=\"region\">\n\n {this.direction === 'horizontal' &&\n <div class=\"horizontal\">\n <a class={`card-img ${this.noImg ? 'noImage' : \"\"} ${this.internalHref ? 'card-href' : ''}`} href={this.internalHref}>\n <slot name=\"img\" />\n </a>\n\n <div class='lower__body-wrapper'>\n <a class={`upper-body ${this.internalHref ? 'card-href' : ''}`} href={this.internalHref}>\n <slot />\n </a>\n <div>\n <slot name='buttons' />\n </div>\n </div>\n </div>}\n\n {this.direction === 'vertical' &&\n <div class=\"vertical\">\n <a class={`upper__body-wrapper ${this.internalHref ? 'card-href' : ''}`} href={this.internalHref} target={this.target}>\n <div class={`card-img ${this.noImg ? 'noImage' : \"\"}`}>\n <slot name=\"img\" />\n </div>\n\n <div class='upper-body'>\n <slot />\n </div>\n </a>\n\n <div class='lower__body-wrapper'>\n <slot name='buttons' />\n </div>\n </div>}\n </div>\n </Host>\n );\n }\n}"],"mappings":"4HAAA,MAAMA,EAAU,q0DAChB,MAAAC,EAAeD,E,MCSFE,EAAI,MANjB,WAAAC,CAAAC,G,UASUC,KAAAC,UAAuC,WAGvCD,KAAAE,KAAe,GACdF,KAAAG,aAAuB,GACxBH,KAAAI,OAAiB,O,CAIzB,cAAAC,CAAeC,GACbN,KAAKO,UAAYD,EAAME,M,CAGzB,yBAAAC,GACE,MAAMC,EAAQV,KAAKW,GAAGC,cAAc,kBACpC,MAAMC,EAAQb,KAAKW,GAAGC,cAAc,kBAEpC,IAAKF,EAAO,CACVV,KAAKc,MAAQ,I,MACRd,KAAKc,MAAQ,MAEpB,IAAKD,EAAO,CACVb,KAAKe,OAAS,I,MACTf,KAAKe,OAAS,MAErB,GAAIf,KAAKE,KAAKc,SAAW,GAAI,CAC3BhB,KAAKG,aAAec,S,MACfjB,KAAKG,aAAeH,KAAKE,I,CAGlC,eAAAgB,CAAgBP,EAAIQ,EAAMC,GACxBT,EAAGU,UAAUF,GAAMC,E,CAIrB,iBAAAE,GACEtB,KAAKS,4BACL,IAAIc,EAAuBvB,KAAKW,IAAK,CACnCa,EAAe,W,EAInB,mBAAAC,GACEzB,KAAKS,2B,CAGT,MAAAiB,GACI,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,wDAAiB7B,KAAK8B,UAAWC,MAC/B,oBACE/B,KAAKe,OAAS,SAAW,iBACzBf,KAAKC,yBACLD,KAAKO,YAETyB,KAAK,UAEFhC,KAAKC,YAAc,cAClB0B,EAAA,OAAAE,IAAA,2CAAKE,MAAM,cACTJ,EAAA,KAAAE,IAAA,2CAAGE,MAAO,YAAY/B,KAAKc,MAAQ,UAAY,MAAMd,KAAKG,aAAe,YAAc,KAAMD,KAAMF,KAAKG,cACtGwB,EAAA,QAAAE,IAAA,2CAAMI,KAAK,SAGbN,EAAA,OAAAE,IAAA,2CAAKE,MAAM,uBACTJ,EAAA,KAAAE,IAAA,2CAAGE,MAAO,cAAc/B,KAAKG,aAAe,YAAc,KAAMD,KAAMF,KAAKG,cACzEwB,EAAA,QAAAE,IAAA,8CAEFF,EAAA,OAAAE,IAAA,4CACEF,EAAA,QAAAE,IAAA,2CAAMI,KAAK,eAKlBjC,KAAKC,YAAc,YAClB0B,EAAA,OAAAE,IAAA,2CAAKE,MAAM,YACTJ,EAAA,KAAAE,IAAA,2CAAGE,MAAO,uBAAuB/B,KAAKG,aAAe,YAAc,KAAMD,KAAMF,KAAKG,aAAcC,OAAQJ,KAAKI,QAC7GuB,EAAA,OAAAE,IAAA,2CAAKE,MAAO,YAAY/B,KAAKc,MAAQ,UAAY,MAC/Ca,EAAA,QAAAE,IAAA,2CAAMI,KAAK,SAGbN,EAAA,OAAAE,IAAA,2CAAKE,MAAM,cACTJ,EAAA,QAAAE,IAAA,+CAIJF,EAAA,OAAAE,IAAA,2CAAKE,MAAM,uBACTJ,EAAA,QAAAE,IAAA,2CAAMI,KAAK,e","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,h as t,a as n,g as o}from"./p-b7a462e5.js";import{t as i}from"./p-6ecb6a6f.js";import{i as d}from"./p-1ecafb97.js";import{c as a}from"./p-5cdc6210.js";const r=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}:host{vertical-align:bottom;display:inline-flex;width:var(--bw, fit-content)}.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0px 16px;gap:8px;color:#FFFFFF;font-weight:600;border-radius:1px;line-height:1.5rem;font-family:var(--ifx-font-family);font-style:normal;text-decoration:none;user-select:none;font-size:1rem;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;width:var(--bw, fit-content)}.btn:not(.disabled){cursor:pointer}.btn.disabled{pointer-events:none}.btn-default{color:#FFFFFF;background-color:#0A8276}.btn-default:disabled,.btn-default.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-default{background-color:#FFFFFF;color:#0A8276;border:1px solid #0A8276}.btn-secondary-default:disabled,.btn-secondary-default.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-default{background-color:transparent;color:#0A8276}.btn-tertiary-default:disabled,.btn-tertiary-default.disabled{color:#BFBBBB;pointer-events:none}.btn-danger{color:#FFFFFF;background-color:#CD002F;border-color:#CD002F}.btn-danger:disabled,.btn-danger.disabled{background-color:#BFBBBB;color:#FFFFFF;pointer-events:none}.btn-secondary-danger{background-color:#FFFFFF;color:#CD002F;border:1px solid #CD002F}.btn-secondary-danger:disabled,.btn-secondary-danger.disabled{background-color:#FFFFFF;border:1px solid #BFBBBB;color:#BFBBBB;pointer-events:none}.btn-tertiary-danger{background-color:transparent;color:#CD002F}.btn-tertiary-danger:disabled,.btn-tertiary-danger.disabled{background-color:#FFFFFF;color:#BFBBBB;pointer-events:none}.btn-inverse{color:#0A8276;background-color:#FFFFFF}.btn-inverse:disabled,.btn-inverse.disabled{opacity:1;background-color:#FFFFFF;color:#0A8276;pointer-events:none}.btn-secondary-inverse{color:#FFFFFF;border:1px solid #FFFFFF}.btn-secondary-inverse:disabled,.btn-secondary-inverse.disabled{border:1px solid #FFFFFF;color:#FFFFFF;pointer-events:none}.btn-tertiary-inverse{color:#FFFFFF}.btn-tertiary-inverse:disabled,.btn-tertiary-inverse.disabled{color:#FFFFFF;opacity:1;pointer-events:none}.btn ifx-icon:empty{display:none}.btn.btn-xs{font-size:0.875rem;height:32px;line-height:1rem}.btn.btn-s{font-size:0.875rem;height:36px;line-height:1.25rem}.btn.btn-l{font-size:1.25rem;height:48px;line-height:1.75rem}.btn.btn-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-default:not(:disabled,.disabled):hover{background-color:#08665C}.btn.btn-default:not(:disabled,.disabled):active,.btn.btn-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-default:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#08665C}.btn.btn-secondary-default:not(:disabled,.disabled):active,.btn.btn-secondary-default:not(:disabled,.disabled).active{background-color:#06534B}.btn.btn-secondary:not(:disabled,.disabled):hover{background-color:#9C216E}.btn.btn-secondary:not(:disabled,.disabled):active,.btn.btn-secondary:not(:disabled,.disabled).active{background-color:#9C216E}.btn.btn-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-danger:not(:disabled,.disabled):hover{background-color:#A2001E}.btn.btn-danger:not(:disabled,.disabled):active,.btn.btn-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-secondary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.btn.btn-secondary-danger:not(:disabled,.disabled):hover{color:#FFFFFF;background-color:#A2001E}.btn.btn-secondary-danger:not(:disabled,.disabled):active,.btn.btn-secondary-danger:not(:disabled,.disabled).active{background-color:#900021}.btn.btn-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-inverse:not(:disabled,.disabled):hover{background-color:#EEEDED}.btn.btn-inverse:not(:disabled,.disabled):active,.btn.btn-inverse:not(:disabled,.disabled).active{background-color:#BFBBBB}.btn.btn-secondary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-secondary-inverse:not(:disabled,.disabled):hover{color:#0A8276;background-color:#EEEDED}.btn.btn-secondary-inverse:not(:disabled,.disabled):active,.btn.btn-secondary-inverse:not(:disabled,.disabled).active{color:#0A8276;background-color:#BFBBBB}.btn.btn-tertiary-default:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):hover{color:#08665C}.btn.btn-tertiary-default:not(:disabled,.disabled):active,.btn.btn-tertiary-default:not(:disabled,.disabled).active{color:#06534B}.btn.btn-tertiary-danger:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):hover{color:#A2001E}.btn.btn-tertiary-danger:not(:disabled,.disabled):active,.btn.btn-tertiary-danger:not(:disabled,.disabled).active{color:#900021}.btn.btn-tertiary-inverse:not(:disabled,.disabled):focus:not(:active,.active){outline:none;box-shadow:0 0 0 2px #0A8276, 0 0 0 4px #FFFFFF}.btn.btn-tertiary-inverse:not(:disabled,.disabled):hover{color:#EEEDED}.btn.btn-tertiary-inverse:not(:disabled,.disabled):active,.btn.btn-tertiary-inverse:not(:disabled,.disabled).active{color:#BFBBBB}';const s=r;const b=class{constructor(t){e(this,t);this.variant="primary";this.theme="default";this.size="m";this.disabled=false;this.target="_self";this.type="button";this.fullWidth=false;this.handleClick=e=>{if(this.el.shadowRoot){const t=this.el.closest("form");if(t){e.preventDefault();if(this.type==="reset"){this.resetClickHandler()}else{const e=document.createElement("button");if(this.type){e.type=this.type}e.style.display="none";t.appendChild(e);e.click();e.remove()}}}}}setInternalHref(e){this.internalHref=e}async setFocus(){this.focusableElement.focus()}insertNativeButton(){this.nativeButton=document.createElement("button");this.nativeButton.type=this.type;this.nativeButton.style.display="none";this.el.closest("form").appendChild(this.nativeButton)}handleFormAndInternalHref(){if(this.el.closest("form")){if(this.el.href){this.el.internalHref=undefined}this.insertNativeButton()}else{this.internalHref=this.href}}handleButtonWidth(){if(this.fullWidth){this.el.style.setProperty("--bw","100%")}else{this.el.style.setProperty("--bw","fit-content")}}componentWillLoad(){this.handleFormAndInternalHref();if(!d(this.el)){i("ifx-button")}}componentWillRender(){this.handleButtonWidth()}resetClickHandler(){const e=this.el.closest("form");const t=e.querySelectorAll("ifx-text-field, ifx-textarea");t.forEach((e=>{e.reset()}))}handleKeyDown(e){if(e.key===" "||e.key==="Enter"&&!this.disabled){this.focusableElement.click()}}handleHostClick(e){if(this.disabled===true){e.stopImmediatePropagation()}}handleFocus(e){if(this.disabled){e.preventDefault();this.focusableElement.blur()}}render(){return t(n,{key:"1df56b0975f8eade4fa85ba6d4c4294ccc13ff35"},t("a",{key:"b8379031e1158ea37886c390c61ae3d42088b959",role:this.href?"link":"button",tabIndex:this.disabled?-1:0,ref:e=>this.focusableElement=e,class:this.getClassNames(),href:!this.disabled?this.internalHref:undefined,target:this.target,onClick:this.handleClick,rel:this.target==="_blank"?"noopener noreferrer":undefined,onFocus:e=>this.handleFocus(e),"aria-disabled":this.disabled?"true":null,"aria-describedby":this.theme==="danger"?"Dangerous action":undefined,"aria-label":this.ariaLabel||undefined},t("slot",{key:"e290100da580522f6a66084ec7280c5ec79c6565"})))}getVariantClass(){return`${this.variant}`==="secondary"?`secondary-${this.theme}`:`${this.variant}`==="tertiary"?`tertiary-${this.theme}`:`${this.theme}`}getSizeClass(){if(`${this.size}`==="xs"){return"xs"}else if(`${this.size}`==="s"){return"s"}else if(`${this.size}`==="l"){return"l"}else return""}getClassNames(){return a("btn",this.size&&`btn-${this.getSizeClass()}`,`btn-${this.getVariantClass()}`,this.disabled?"disabled":"")}get el(){return o(this)}static get watchers(){return{href:["setInternalHref"]}}};b.style=s;export{b as ifx_button};
2
+ //# sourceMappingURL=p-26c73456.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["buttonCss","IfxButtonStyle0","Button","constructor","hostRef","this","variant","theme","size","disabled","target","type","fullWidth","handleClick","ev","el","shadowRoot","parentForm","closest","preventDefault","resetClickHandler","fakeButton","document","createElement","style","display","appendChild","click","remove","setInternalHref","newValue","internalHref","setFocus","focusableElement","focus","insertNativeButton","nativeButton","handleFormAndInternalHref","href","undefined","handleButtonWidth","setProperty","componentWillLoad","isNestedInIfxComponent","trackComponent","componentWillRender","formElement","customElements","querySelectorAll","forEach","element","reset","handleKeyDown","key","handleHostClick","event","stopImmediatePropagation","handleFocus","blur","render","h","Host","role","tabIndex","ref","class","getClassNames","onClick","rel","onFocus","ariaLabel","getVariantClass","getSizeClass","classNames"],"sources":["src/components/button/button.scss?tag=ifx-button&encapsulation=shadow","src/components/button/button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n vertical-align: bottom;\n display: inline-flex;\n width: var(--bw, fit-content);\n}\n\n.btn {\n box-sizing: border-box;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: tokens.$ifxSize500;\n padding: 0px tokens.$ifxSpace200;\n gap: tokens.$ifxSpace100;\n color: tokens.$ifxColorBaseWhite;\n font-weight: tokens.$ifxFontWeightSemibold;\n border-radius: tokens.$ifxBorderRadius12;\n line-height: tokens.$ifxLineHeightM;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n font-style: normal;\n text-decoration: none;\n user-select: none;\n font-size: tokens.$ifxFontSizeM;\n transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;\n width: var(--bw, fit-content);\n}\n\n.btn:not(.disabled) {\n cursor: pointer;\n}\n\n.btn.disabled {\n pointer-events: none;\n}\n\n.btn-default {\n //default variant=primary; default color=default\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n.btn-secondary-default {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorOcean500;\n border: 1px solid tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary-default {\n background-color: tokens.$ifxColorBaseTransparent;\n color: tokens.$ifxColorOcean500;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n\n.btn-danger {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorRed500;\n border-color: tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n.btn-secondary-danger {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorRed500;\n border: 1px solid tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering300;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-tertiary-danger {\n //combination tertiary + danger not in design\n background-color: tokens.$ifxColorBaseTransparent;\n color: tokens.$ifxColorRed500;\n\n &:disabled,\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n\n }\n}\n\n.btn-inverse {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n opacity: tokens.$ifxOpacity100;\n background-color: tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorOcean500;\n pointer-events: none;\n }\n}\n\n.btn-secondary-inverse {\n color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n border: 1px solid tokens.$ifxColorBaseWhite;\n color: tokens.$ifxColorBaseWhite;\n pointer-events: none;\n\n }\n}\n\n\n.btn-tertiary-inverse {\n color: tokens.$ifxColorBaseWhite;\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorBaseWhite;\n opacity: tokens.$ifxOpacity100;\n pointer-events: none;\n\n }\n}\n\n.btn {\n & ifx-icon:empty {\n display: none;\n }\n\n &.btn-xs {\n font-size: tokens.$ifxFontSizeS;\n height: tokens.$ifxSize400;\n line-height: tokens.$ifxLineHeightXs;\n }\n\n &.btn-s {\n font-size: tokens.$ifxFontSizeS;\n height: tokens.$ifxSize450;\n line-height: tokens.$ifxLineHeightS;\n }\n\n // &.btn-m { //default\n // font-size: tokens.$ifxFontSizeM;\n // height: tokens.$ifxSize400;\n // line-height: tokens.$ifxLineHeightM;\n // }\n\n\n &.btn-l {\n font-size: tokens.$ifxFontSizeXl;\n height: tokens.$ifxSize600;\n line-height: tokens.$ifxLineHeightXl;\n }\n\n\n\n &.btn-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-secondary-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorOcean700;\n }\n }\n\n &.btn-secondary:not(:disabled, .disabled) {\n\n &:hover {\n background-color: tokens.$ifxColorBerry500;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorBerry500;\n }\n }\n\n\n\n &.btn-danger:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n background-color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorRed700;\n }\n }\n\n &.btn-secondary-danger:not(:disabled, .disabled) {\n\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n }\n\n &:hover {\n color: tokens.$ifxColorBaseWhite;\n background-color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorRed700;\n }\n }\n\n\n &.btn-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &:active,\n &.active {\n background-color: tokens.$ifxColorEngineering300;\n }\n }\n\n &.btn-secondary-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorEngineering300;\n }\n }\n\n\n\n &.btn-tertiary-default:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean600;\n }\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorOcean700;\n }\n\n\n }\n\n\n\n\n\n &.btn-tertiary-danger:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorRed600;\n }\n\n &:hover {\n color: tokens.$ifxColorRed600;\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorRed700;\n }\n\n }\n\n\n &.btn-tertiary-inverse:not(:disabled, .disabled) {\n &:focus:not(:active, .active) {\n outline: none;\n box-shadow: 0 0 0 2px tokens.$ifxColorOcean500, 0 0 0 4px tokens.$ifxColorBaseWhite;\n }\n\n &:hover {\n color: tokens.$ifxColorEngineering200;\n\n }\n\n &:active,\n &.active {\n color: tokens.$ifxColorEngineering300;\n }\n }\n}","import { Component, Prop, h, Host, Method, Element, Listen, State, Watch } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport classNames from 'classnames';\n \n@Component({\n tag: 'ifx-button',\n styleUrl: 'button.scss',\n shadow: true,\n})\nexport class Button {\n @Prop() variant: 'primary' | 'secondary' | 'tertiary' = 'primary';\n @Prop() theme: 'default' | 'danger' | 'inverse' = 'default';\n @Prop() size: string = 'm';\n @Prop() disabled: boolean = false;\n @State() internalHref: string;\n @Prop() href: string;\n @Prop() target: string = '_self';\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n @Prop() fullWidth: boolean = false;\n @Prop() ariaLabel: string | null;\n @Element() el;\n\n private focusableElement: HTMLElement;\n private nativeButton: HTMLButtonElement | HTMLInputElement;\n\n @Watch('href')\n setInternalHref(newValue: string) {\n this.internalHref = newValue;\n }\n\n @Method()\n async setFocus() {\n this.focusableElement.focus();\n }\n\n insertNativeButton() {\n this.nativeButton = document.createElement('button');\n this.nativeButton.type = this.type;\n this.nativeButton.style.display = 'none';\n this.el.closest('form').appendChild(this.nativeButton);\n }\n\n handleFormAndInternalHref() {\n if (this.el.closest('form')) {\n if (this.el.href) {\n this.el.internalHref = undefined;\n }\n this.insertNativeButton()\n } else {\n this.internalHref = this.href;\n }\n }\n\n handleButtonWidth() {\n if (this.fullWidth) {\n this.el.style.setProperty('--bw', '100%');\n } else {\n this.el.style.setProperty('--bw', 'fit-content');\n }\n }\n\n componentWillLoad() {\n this.handleFormAndInternalHref()\n if(!isNestedInIfxComponent(this.el)) { \n trackComponent('ifx-button')\n }\n }\n\n componentWillRender() {\n this.handleButtonWidth()\n }\n\n\n\n handleClick = (ev: Event) => {\n if (this.el.shadowRoot) {\n const parentForm = this.el.closest('form');\n if (parentForm) {\n ev.preventDefault();\n\n if (this.type === 'reset') {\n // If the button type is 'reset', manually reset all custom form fields\n this.resetClickHandler(); //this will reset all ifx-text-fields within a form\n } else {\n const fakeButton = document.createElement('button');\n if (this.type) {\n fakeButton.type = this.type;\n }\n fakeButton.style.display = 'none';\n parentForm.appendChild(fakeButton);\n fakeButton.click();\n fakeButton.remove();\n }\n }\n }\n }\n\n resetClickHandler() {\n const formElement = this.el.closest('form');\n const customElements = formElement.querySelectorAll('ifx-text-field, ifx-textarea');\n customElements.forEach(element => {\n element.reset();\n });\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if ( ev.key === \" \" || ev.key === 'Enter' && !this.disabled) {\n this.focusableElement.click();\n }\n }\n\n @Listen('click', { capture: true })\n handleHostClick(event: Event) {\n if (this.disabled === true) {\n event.stopImmediatePropagation();\n }\n }\n\n handleFocus(event: FocusEvent) {\n if (this.disabled) {\n event.preventDefault();\n this.focusableElement.blur();\n }\n }\n\n render() {\n return (\n <Host>\n <a\n role={this.href ? 'link' : 'button'}\n tabIndex={this.disabled ? -1 : 0}\n ref={(el) => (this.focusableElement = el)}\n class={this.getClassNames()}\n href={!this.disabled ? this.internalHref : undefined}\n target={this.target}\n onClick={this.handleClick}\n rel={this.target === '_blank' ? 'noopener noreferrer' : undefined}\n onFocus={(event) => this.handleFocus(event)}\n aria-disabled={this.disabled ? 'true' : null}\n aria-describedby={this.theme === 'danger' ? 'Dangerous action' : undefined}\n aria-label={this.ariaLabel || undefined}\n >\n <slot></slot>\n </a>\n </Host>\n );\n }\n\n\n getVariantClass() {\n return `${this.variant}` === \"secondary\"\n ? `secondary-${this.theme}`\n : `${this.variant}` === 'tertiary'\n ? `tertiary-${this.theme}`\n : `${this.theme}`;\n }\n\n getSizeClass() {\n if (`${this.size}` === \"xs\") {\n return \"xs\"\n }\n else if (`${this.size}` === \"s\") {\n return \"s\"\n }\n else if (`${this.size}` === \"l\") {\n return \"l\"\n }\n else return \"\";\n }\n\n getClassNames() {\n return classNames(\n 'btn',\n this.size && `btn-${this.getSizeClass()}`,\n `btn-${this.getVariantClass()}`,\n this.disabled ? 'disabled' : ''\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as o,h as r,g as e}from"./p-b7a462e5.js";import{t as n}from"./p-6ecb6a6f.js";import{i as d}from"./p-1ecafb97.js";const a=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}:host{display:inline-block}.container{display:flex;min-height:1.25em;align-items:center;padding:0 8px;border-radius:9999px;font-family:var(--ifx-font-family)}.container.no-border{padding:0}.container.border-engineering-100{border:1px solid #F7F7F7}.container.border-engineering-200{border:1px solid #EEEDED}.container.border-engineering-300{border:1px solid #BFBBBB}.container.border-engineering-400{border:1px solid #8D8786}.container.border-engineering-500{border:1px solid #575352}.container.border-engineering-600{border:1px solid #3C3A39}.container.border-ocean-100{border:1px solid #DFF4F3}.container.border-ocean-200{border:1px solid #B8DEDA}.container.border-ocean-300{border:1px solid #6CB4AD}.container.border-ocean-400{border:1px solid #3B9B91}.container.border-ocean-500{border:1px solid #0A8276}.container.border-ocean-600{border:1px solid #08665C}.container.border-ocean-700{border:1px solid #06534B}.container.border-red-500{border:1px solid #CD002F}.container.border-red-600{border:1px solid #A2001E}.container.border-red-700{border:1px solid #900021}.container.border-orange-500{border:1px solid #E16B25}.container.border-green-500{border:1px solid #4CA460}.container.border-lawn-400{border:1px solid #B9D257}.container.border-lawn-500{border:1px solid #9BBA43}.container.border-lawn-700{border:1px solid #3C6C0F}.container.border-berry-400{border:1px solid #BE3283}.container.border-berry-500{border:1px solid #9C216E}.container.border-sun-400{border:1px solid #FF9737}.container.border-sun-500{border:1px solid #F97414}.container.border-sand-400{border:1px solid #FBE273}.container.border-sand-500{border:1px solid #FCD442}.text{margin:0;padding-left:4px;font-style:normal;font-weight:600;font-size:1rem;line-height:1.25rem;display:inline;color:#1D1D1D}.dot{display:inline-block;width:8px;height:8px;border-radius:9999px}.dot.engineering-100{background-color:#F7F7F7}.dot.engineering-200{background-color:#EEEDED}.dot.engineering-300{background-color:#BFBBBB}.dot.engineering-400{background-color:#8D8786}.dot.engineering-500{background-color:#575352}.dot.engineering-600{background-color:#3C3A39}.dot.ocean-100{background-color:#DFF4F3}.dot.ocean-200{background-color:#B8DEDA}.dot.ocean-300{background-color:#6CB4AD}.dot.ocean-400{background-color:#3B9B91}.dot.ocean-500{background-color:#0A8276}.dot.ocean-600{background-color:#08665C}.dot.ocean-700{background-color:#06534B}.dot.red-500{background-color:#CD002F}.dot.red-600{background-color:#A2001E}.dot.red-700{background-color:#900021}.dot.orange-500{background-color:#E16B25}.dot.green-500{background-color:#4CA460}.dot.lawn-400{background-color:#B9D257}.dot.lawn-500{background-color:#9BBA43}.dot.lawn-700{background-color:#3C6C0F}.dot.berry-400{background-color:#BE3283}.dot.berry-500{background-color:#9C216E}.dot.sun-400{background-color:#FF9737}.dot.sun-500{background-color:#F97414}.dot.sand-400{background-color:#FBE273}.dot.sand-500{background-color:#FCD442}';const i=a;const c=class{constructor(r){o(this,r);this.border=false;this.color="orange-500"}componentWillLoad(){if(!d(this.el)){n("ifx-status")}}render(){var o;const e=((o=this.color)===null||o===void 0?void 0:o.trim())?this.color:"orange-500";const n=this.border?`container border-${e}`:"container no-border";return r("div",{key:"6a80c0e961e2542e1f05d8eabed0eefb79ecdb37","aria-label":"a status indicator","aria-value":this.label,class:n},r("span",{key:"1df54259e0444ec1e3179fa6cc48a3157f28b1f4",class:`dot ${e}`}),r("p",{key:"9cb5ce7cafcfc8ce396c0a236e42ac34549b415a",class:"text"},this.label))}get el(){return e(this)}};c.style=i;export{c as ifx_status};
2
+ //# sourceMappingURL=p-296f215f.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["statusCss","IfxStatusStyle0","Status","constructor","hostRef","this","border","color","componentWillLoad","isNestedInIfxComponent","el","trackComponent","render","effectiveColor","_a","trim","containerClass","h","key","label","class"],"sources":["src/components/status/status.scss?tag=ifx-status&encapsulation=shadow","src/components/status/status.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-block;\n}\n\n.container {\n display: flex;\n min-height: 1.25em;\n align-items: center;\n padding: 0 tokens.$ifxSpace100;\n border-radius: tokens.$ifxBorderRadiusRound;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n &.no-border {\n padding: 0; // Remove padding when border is not present\n }\n\n &.border-engineering-100{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering100;\n }\n\n &.border-engineering-200{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering200;\n }\n\n &.border-engineering-300{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering300;\n }\n\n &.border-engineering-400{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering400;\n }\n\n &.border-engineering-500{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering500;\n }\n\n &.border-engineering-600{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering600;\n }\n\n &.border-ocean-100 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean100;\n }\n\n &.border-ocean-200 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean200;\n }\n\n &.border-ocean-300 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean300;\n }\n\n &.border-ocean-400 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean400;\n }\n\n &.border-ocean-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean500;\n }\n\n &.border-ocean-600 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean600;\n }\n\n &.border-ocean-700 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOcean700;\n }\n\n &.border-red-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorRed500;\n }\n\n &.border-red-600 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorRed600;\n }\n\n &.border-red-700 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorRed700;\n }\n\n &.border-orange-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorOrange500;\n }\n\n &.border-green-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorGreen500;\n }\n\n &.border-lawn-400 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorLawn400;\n }\n\n &.border-lawn-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorLawn500;\n }\n\n &.border-lawn-700 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorLawn700;\n }\n\n &.border-berry-400 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorBerry400;\n }\n\n &.border-berry-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorBerry500;\n }\n\n &.border-sun-400 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorSun400;\n }\n\n &.border-sun-500 {\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorSun500;\n }\n\n &.border-sand-400{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorSand400;\n }\n\n &.border-sand-500{\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorSand500;\n }\n\n\n}\n\n.text {\n margin: 0;\n padding-left: tokens.$ifxSpace50;\n font-style: normal;\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightS;\n display: inline;\n color: tokens.$ifxColorBaseBlack;\n}\n\n.dot {\n display: inline-block;\n width: tokens.$ifxSize100;\n height: tokens.$ifxSize100;\n border-radius: tokens.$ifxBorderRadiusRound;\n}\n\n\n.dot {\n &.engineering-100 {\n background-color: tokens.$ifxColorEngineering100;\n }\n\n &.engineering-200 {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.engineering-300 {\n background-color: tokens.$ifxColorEngineering300;\n }\n\n &.engineering-400 {\n background-color: tokens.$ifxColorEngineering400;\n }\n\n &.engineering-500 {\n background-color: tokens.$ifxColorEngineering500;\n }\n\n &.engineering-600 {\n background-color: tokens.$ifxColorEngineering600;\n }\n\n &.ocean-100 {\n background-color: tokens.$ifxColorOcean100;\n }\n\n &.ocean-200 {\n background-color: tokens.$ifxColorOcean200;\n }\n\n &.ocean-300 {\n background-color: tokens.$ifxColorOcean300;\n }\n\n &.ocean-400 {\n background-color: tokens.$ifxColorOcean400;\n }\n\n &.ocean-500 {\n background-color: tokens.$ifxColorOcean500;\n }\n\n &.ocean-600 {\n background-color: tokens.$ifxColorOcean600;\n }\n\n &.ocean-700 {\n background-color: tokens.$ifxColorOcean700;\n }\n\n &.red-500 {\n background-color: tokens.$ifxColorRed500;\n }\n\n &.red-600 {\n background-color: tokens.$ifxColorRed600;\n }\n\n &.red-700 {\n background-color: tokens.$ifxColorRed700;\n }\n\n &.orange-500 {\n background-color: tokens.$ifxColorOrange500;\n }\n\n &.green-500 {\n background-color: tokens.$ifxColorGreen500;\n }\n\n &.lawn-400{\n background-color: tokens.$ifxColorLawn400;\n }\n\n &.lawn-500{\n background-color: tokens.$ifxColorLawn500;\n }\n\n &.lawn-700 {\n background-color: tokens.$ifxColorLawn700;\n }\n\n &.berry-400 {\n background-color: tokens.$ifxColorBerry400;\n }\n\n &.berry-500 {\n background-color: tokens.$ifxColorBerry500;\n }\n\n &.sun-400 {\n background-color: tokens.$ifxColorSun400;\n }\n\n &.sun-500 {\n background-color: tokens.$ifxColorSun500;\n }\n\n &.sand-400{\n background-color: tokens.$ifxColorSand400;\n }\n\n &.sand-500{\n background-color: tokens.$ifxColorSand500;\n }\n}","import { Component, h, Prop, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\n\n@Component({\n tag: 'ifx-status',\n styleUrl: 'status.scss',\n shadow: true\n})\n\nexport class Status {\n @Element() el;\n @Prop() label: string;\n @Prop() border: boolean = false;\n @Prop() color: string = 'orange-500';\n\n componentWillLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n trackComponent('ifx-status')\n }\n }\n\n render() {\n const effectiveColor = this.color?.trim() ? this.color : 'orange-500';\n const containerClass = this.border ? `container border-${effectiveColor}` : 'container no-border';\n\n return (\n <div aria-label=\"a status indicator\" aria-value={this.label} class={containerClass}>\n <span class={`dot ${effectiveColor}`}></span>\n <p class=\"text\">{this.label}</p>\n </div>\n );\n }\n}"],"mappings":"0HAAA,MAAMA,EAAY,87FAClB,MAAAC,EAAeD,E,MCSFE,EAAM,MANnB,WAAAC,CAAAC,G,UASUC,KAAAC,OAAkB,MAClBD,KAAAE,MAAgB,Y,CAExB,iBAAAC,GACE,IAAIC,EAAuBJ,KAAKK,IAAK,CACnCC,EAAe,a,EAInB,MAAAC,G,MACE,MAAMC,IAAiBC,EAAAT,KAAKE,SAAK,MAAAO,SAAA,SAAAA,EAAEC,QAASV,KAAKE,MAAQ,aACzD,MAAMS,EAAiBX,KAAKC,OAAS,oBAAoBO,IAAmB,sBAE5E,OACEI,EAAA,OAAAC,IAAA,wDAAgB,qBAAoB,aAAab,KAAKc,MAAOC,MAAOJ,GAClEC,EAAA,QAAAC,IAAA,2CAAME,MAAO,OAAOP,MACpBI,EAAA,KAAAC,IAAA,2CAAGE,MAAM,QAAQf,KAAKc,O","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as e,h as s,g as i}from"./p-b7a462e5.js";import{t as r}from"./p-6ecb6a6f.js";import{i as p}from"./p-1ecafb97.js";const a=':root{--ifx-font-family:"Source Sans 3", "Arial, sans-serif"}.stepper{display:flex;align-items:center}.stepper.compact{align-items:center;gap:8px}.stepper.compact.compact-right{flex-direction:row-reverse;text-align:left}.stepper.compact .stepper-wrapper{width:unset;flex-direction:column}.stepper.vertical{height:100%}.stepper.vertical .stepper-wrapper{flex-direction:column;width:unset;height:100%}.stepper-wrapper{display:flex;flex-direction:row;width:100%}.stepper-wrapper ::slotted(*){display:flex;flex:1;justify-content:flex-start}.stepper-progress{display:flex;justify-content:center;align-items:center;font:600 0.875rem/1.25rem "Source Sans 3";min-width:56px;height:56px;border-radius:9999px;background:conic-gradient(#0A8276 var(--pb, 0%), #8D8786 0)}.stepper-progress .progress-detail{display:flex;justify-content:center;align-items:center;text-align:center;width:48px;height:48px;border-radius:9999px;background:white}';const c=a;const h=class{constructor(s){t(this,s);this.ifxChange=e(this,"ifxChange",7);this.activeStep=1;this.indicatorPosition="left";this.showStepNumber=false;this.variant="default";this.shouldEmitEvent=true;this.emittedByClick=false}onStepChange(t){const e=this.getSteps();const s=e[t.detail.previousActiveStep-1];if(s&&!s.complete){s.setAttribute("error","true")}}handleActiveStep(t,e){const s=this.getSteps();if(!this.shouldEmitEvent){this.shouldEmitEvent=true;return}if(s[t-1]){if(!s[t-1].disabled){this.emitIfxChange(t,e)}else{if(t<e){let i=t;this.shouldEmitEvent=false;while(i>=1&&s[i-1].disabled)i--;if(i<1){this.activeStep=e}else{this.emitIfxChange(i,e);this.activeStep=i}}else{let i=t;this.shouldEmitEvent=false;while(i<=this.stepsCount&&s[i-1].disabled)i++;if(i>this.stepsCount){this.activeStep=e}else{this.emitIfxChange(i,e);this.activeStep=i}}}}}emitIfxChange(t,e){this.ifxChange.emit({activeStep:t,previousActiveStep:e,totalSteps:this.stepsCount,emittedByClick:this.emittedByClick});this.emittedByClick=false}getSteps(){const t=this.el.querySelectorAll("ifx-step");return t}addStepIdsToStepsAndCountSteps(){const t=this.getSteps();t[t.length-1].lastStep=true;for(let e=0;e<t.length;e++){t[e].stepId=e+1}this.stepsCount=t.length}setActiveStep(t,e=false){this.emittedByClick=e;this.activeStep=t}setStepsBeforeActiveToComplete(){const t=this.getSteps();t.forEach(((t,e)=>{if(e+1<this.activeStep)t.complete=true}))}syncIfxSteps(){const t=this.getSteps();for(let e=0;e<t.length;e++){const s={activeStep:this.activeStep,indicatorPosition:this.indicatorPosition!=="right"?"left":"right",showStepNumber:this.showStepNumber,variant:this.variant!=="compact"&&this.variant!=="vertical"?"default":this.variant,setActiveStep:this.setActiveStep.bind(this)};t[e].stepperState=s}}setInitialActiveStep(){this.activeStep=Math.max(1,Math.min(this.stepsCount+(this.variant!=="compact"?1:0),this.activeStep))}componentWillLoad(){if(!p(this.el)){r("ifx-stepper")}this.addStepIdsToStepsAndCountSteps();this.setInitialActiveStep();this.setStepsBeforeActiveToComplete()}componentDidLoad(){this.syncIfxSteps()}componentWillUpdate(){this.syncIfxSteps()}render(){return s("div",{key:"13e2b254d6a78e4af02361ae8c6fe31d460b24ed","aria-label":"a stepper",role:"navigation",class:`stepper ${this.variant!=="compact"&&this.variant!=="vertical"?"default":this.variant} ${this.variant==="compact"?"compact-"+this.indicatorPosition:""}`},this.variant==="compact"&&s("div",{key:"48b7f500417a2ebe80697f708649e0a59a1e46d1",class:"stepper-progress"},s("div",{key:"8340e8437af1c1353068da7c62e53cd886dfc1e0",class:"progress-detail"},`${Math.min(this.activeStep,this.stepsCount)} of ${this.stepsCount}`)),s("div",{key:"4c047851dbae26f52fd53e46d95adfc2c42c8484",class:`stepper-wrapper`},s("slot",{key:"04dadf43b9f1b3af6d16adf655bd427726ca262a"})))}componentDidRender(){if(this.variant=="compact"){const t=this.el.shadowRoot.querySelector(".stepper-progress");t.style.setProperty("--pb",`${this.activeStep/this.stepsCount*100}%`)}}get el(){return i(this)}static get watchers(){return{activeStep:["handleActiveStep"]}}};h.style=c;export{h as ifx_stepper};
2
+ //# sourceMappingURL=p-32b0dfda.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["stepperCss","IfxStepperStyle0","Stepper","constructor","hostRef","this","activeStep","indicatorPosition","showStepNumber","variant","shouldEmitEvent","emittedByClick","onStepChange","event","steps","getSteps","previousActiveStep","detail","complete","setAttribute","handleActiveStep","newStep","oldStep","disabled","emitIfxChange","i","stepsCount","ifxChange","emit","totalSteps","el","querySelectorAll","addStepIdsToStepsAndCountSteps","length","lastStep","stepId","setActiveStep","setByClick","setStepsBeforeActiveToComplete","forEach","step","syncIfxSteps","stepperState","bind","setInitialActiveStep","Math","max","min","componentWillLoad","isNestedInIfxComponent","trackComponent","componentDidLoad","componentWillUpdate","render","h","key","role","class","componentDidRender","progressBar","shadowRoot","querySelector","style","setProperty"],"sources":["src/components/stepper/stepper.scss?tag=ifx-stepper&encapsulation=shadow","src/components/stepper/stepper.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.stepper {\n display: flex;\n align-items: center;\n \n &.compact {\n align-items: center;\n gap: 8px;\n \n &.compact-right {\n flex-direction: row-reverse;\n text-align: left;\n }\n \n .stepper-wrapper{\n width: unset;\n flex-direction: column;\n }\n }\n\n &.vertical {\n height: 100%;\n\n .stepper-wrapper {\n flex-direction: column;\n width: unset;\n height: 100%;\n }\n }\n}\n\n.stepper-wrapper {\n display: flex;\n flex-direction: row;\n width: 100%;\n}\n\n.stepper-wrapper ::slotted(*){\n display: flex;\n flex: 1;\n justify-content: flex-start;\n}\n\n.stepper-progress {\n display: flex;\n justify-content: center;\n align-items: center;\n font: tokens.$ifxBodyBodySemibold04;\n min-width: tokens.$ifxSize700;\n height: tokens.$ifxSize700;\n border-radius: tokens.$ifxBorderRadiusRound;\n background: conic-gradient(tokens.$ifxColorOcean500 var(--pb, 0%), tokens.$ifxColorEngineering400 0);\n \n .progress-detail {\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n width: (tokens.$ifxSize700)-(tokens.$ifxSize100);\n height: (tokens.$ifxSize700)-(tokens.$ifxSize100);\n border-radius: tokens.$ifxBorderRadiusRound;\n background: white;\n }\n}\n\n","import { h, \n Component, \n Element, \n Event, \n EventEmitter, \n Listen, \n Prop, \n State, \n Watch } from \"@stencil/core\";\nimport { StepperState } from \"./interfaces\";\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\n\n@Component({\n tag: 'ifx-stepper',\n styleUrl: 'stepper.scss',\n shadow: true\n})\n\nexport class Stepper {\n @Element() el: HTMLElement;\n\n @Event() ifxChange: EventEmitter;\n\n @Prop({ mutable: true }) activeStep: number = 1;\n @Prop() indicatorPosition?: 'left' | 'right' = 'left';\n @Prop() showStepNumber?: boolean = false;\n @Prop() variant?: 'default' | 'compact' | 'vertical' = 'default';\n\n\n @State() stepsCount: number;\n @State() shouldEmitEvent: boolean = true;\n @State() emittedByClick: boolean = false;\n\n @Listen('ifxChange') \n onStepChange(event: CustomEvent) {\n const steps = this.getSteps();\n const previousActiveStep = steps[event.detail.previousActiveStep-1];\n if (previousActiveStep && !previousActiveStep.complete) {\n previousActiveStep.setAttribute('error', 'true');\n }\n } \n\n @Watch('activeStep')\n handleActiveStep(newStep: number, oldStep: number) {\n const steps = this.getSteps();\n if (!this.shouldEmitEvent) {\n this.shouldEmitEvent = true;\n return;\n }\n // Skipping until the enabled step is found \n if(steps[newStep-1]) { \n if (!steps[newStep-1].disabled) {\n this.emitIfxChange(newStep, oldStep);\n } else {\n // If coming from higher step number to the lower step number\n if (newStep < oldStep) {\n let i = newStep;\n this.shouldEmitEvent = false;\n while (i >= 1 && steps[i-1].disabled) i--;\n // if all the steps are disabled no change.\n if (i < 1) {\n this.activeStep = oldStep;\n } else {\n this.emitIfxChange(i, oldStep);\n this.activeStep = i;\n }\n } \n // If coming from lower step number to the higher step number\n else {\n let i = newStep;\n this.shouldEmitEvent = false;\n while (i <= this.stepsCount && steps[i-1].disabled) i++;\n if (i > this.stepsCount) {\n this.activeStep = oldStep;\n } else {\n this.emitIfxChange(i, oldStep);\n this.activeStep = i;\n }\n }\n }\n }\n }\n \n emitIfxChange(activeStep: number, previousActiveStep: number) {\n this.ifxChange.emit({activeStep: activeStep, \n previousActiveStep: previousActiveStep, \n totalSteps: this.stepsCount,\n emittedByClick: this.emittedByClick\n });\n this.emittedByClick = false;\n }\n\n getSteps() {\n const steps: NodeListOf<HTMLIfxStepElement> = this.el.querySelectorAll('ifx-step');\n return steps;\n }\n\n\n addStepIdsToStepsAndCountSteps() {\n const steps = this.getSteps()\n steps[steps.length - 1].lastStep = true;\n for (let i = 0; i < steps.length; i++) {\n steps[i].stepId = i + 1;\n }\n this.stepsCount = steps.length;\n }\n\n\n setActiveStep(stepId: number, setByClick: boolean = false) {\n this.emittedByClick = setByClick;\n this.activeStep = stepId;\n }\n\n setStepsBeforeActiveToComplete() {\n const steps = this.getSteps();\n steps.forEach( (step, stepId) => {\n if (stepId+1 < this.activeStep) step.complete = true;\n });\n }\n\n syncIfxSteps() {\n const steps = this.getSteps()\n for (let i = 0; i < steps.length; i++) {\n const stepperState: StepperState = { \n activeStep: this.activeStep,\n indicatorPosition: (this.indicatorPosition !== 'right' ? 'left' : 'right'), \n showStepNumber: this.showStepNumber, \n variant: ((this.variant !== 'compact' && this.variant !== 'vertical') ? 'default' : this.variant), \n setActiveStep: this.setActiveStep.bind(this)\n };\n steps[i].stepperState = stepperState;\n }\n }\n\n setInitialActiveStep() {\n this.activeStep = Math.max(1, Math.min(this.stepsCount + (this.variant !== 'compact' ? 1 : 0), this.activeStep));\n }\n\n\n componentWillLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n trackComponent('ifx-stepper')\n }\n this.addStepIdsToStepsAndCountSteps();\n this.setInitialActiveStep();\n this.setStepsBeforeActiveToComplete();\n }\n \n componentDidLoad() {\n this.syncIfxSteps();\n }\n\n componentWillUpdate() {\n this.syncIfxSteps();\n }\n\n render() {\n return (\n <div aria-label = 'a stepper' \n role = 'navigation' \n class = {`stepper ${(this.variant !== 'compact' && this.variant !== 'vertical') ? 'default' : this.variant} ${this.variant === 'compact' ? 'compact-'+this.indicatorPosition: ''}`}>\n {\n /* Progress bar for compact variant. */\n (this.variant === 'compact') && \n <div class = 'stepper-progress'>\n <div class = 'progress-detail'>\n {`${Math.min(this.activeStep, this.stepsCount)} of ${this.stepsCount}`}\n </div>\n </div>\n }\n \n {/* Slot for ifx-steps. */}\n <div class = {`stepper-wrapper`}>\n <slot />\n </div>\n </div>\n );\n };\n\n componentDidRender() {\n /* Updating progress bar in compact version. */\n if (this.variant == 'compact') {\n const progressBar: HTMLElement = this.el.shadowRoot.querySelector('.stepper-progress');\n progressBar.style.setProperty('--pb', `${(this.activeStep / (this.stepsCount)) * 100}%`);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}