@infineon/infineon-design-system-stencil 39.5.1--canary.1723.ff8f559ad2723273cd93183465ad335fc28571d7.0 → 39.5.1

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 (759) hide show
  1. package/dist/cjs/ifx-accordion.ifx-accordion-item.entry.cjs.js.map +1 -1
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js +3 -3
  3. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ifx-action-list-item.cjs.entry.js +2 -2
  5. package/dist/cjs/ifx-action-list-item.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ifx-action-list-item.entry.cjs.js.map +1 -1
  7. package/dist/cjs/ifx-action-list.cjs.entry.js +2 -2
  8. package/dist/cjs/ifx-action-list.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ifx-action-list.entry.cjs.js.map +1 -1
  10. package/dist/cjs/ifx-alert.ifx-template.entry.cjs.js.map +1 -1
  11. package/dist/cjs/ifx-alert_2.cjs.entry.js +2 -2
  12. package/dist/cjs/ifx-alert_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ifx-basic-table.cjs.entry.js +2 -2
  14. package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-basic-table.entry.cjs.js.map +1 -1
  16. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +2 -2
  17. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ifx-breadcrumb-item-label.entry.cjs.js.map +1 -1
  19. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +2 -2
  20. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-breadcrumb-item.entry.cjs.js.map +1 -1
  22. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +2 -2
  23. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ifx-breadcrumb.entry.cjs.js.map +1 -1
  25. package/dist/cjs/ifx-button.cjs.entry.js +2 -2
  26. package/dist/cjs/ifx-button.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ifx-button.entry.cjs.js.map +1 -1
  28. package/dist/cjs/ifx-card-headline.cjs.entry.js +2 -2
  29. package/dist/cjs/ifx-card-headline.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ifx-card-headline.entry.cjs.js.map +1 -1
  31. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -1
  32. package/dist/cjs/ifx-card-links.cjs.entry.js +2 -2
  33. package/dist/cjs/ifx-card-links.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ifx-card-links.entry.cjs.js.map +1 -1
  35. package/dist/cjs/ifx-card-overline.cjs.entry.js +2 -2
  36. package/dist/cjs/ifx-card-overline.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ifx-card-overline.entry.cjs.js.map +1 -1
  38. package/dist/cjs/ifx-card-text.cjs.entry.js +2 -2
  39. package/dist/cjs/ifx-card-text.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ifx-card-text.entry.cjs.js.map +1 -1
  41. package/dist/cjs/ifx-card.cjs.entry.js +2 -2
  42. package/dist/cjs/ifx-card.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ifx-card.entry.cjs.js.map +1 -1
  44. package/dist/cjs/ifx-checkbox-group.cjs.entry.js +2 -2
  45. package/dist/cjs/ifx-checkbox-group.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ifx-checkbox-group.entry.cjs.js.map +1 -1
  47. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  48. package/dist/cjs/ifx-chip.ifx-chip-item.ifx-pagination.entry.cjs.js.map +1 -1
  49. package/dist/cjs/ifx-chip_3.cjs.entry.js +4 -4
  50. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  52. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  53. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  54. package/dist/cjs/ifx-download.cjs.entry.js +1 -1
  55. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +2 -2
  56. package/dist/cjs/ifx-dropdown-header.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ifx-dropdown-header.entry.cjs.js.map +1 -1
  58. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +2 -2
  59. package/dist/cjs/ifx-dropdown-item.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ifx-dropdown-item.entry.cjs.js.map +1 -1
  61. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  62. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  63. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -1
  64. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  65. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  66. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  67. package/dist/cjs/ifx-file-upload.cjs.entry.js +2 -2
  68. package/dist/cjs/ifx-file-upload.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ifx-file-upload.entry.cjs.js.map +1 -1
  70. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +1 -1
  71. package/dist/cjs/ifx-filter-bar.cjs.entry.js +1 -1
  72. package/dist/cjs/ifx-filter-search.cjs.entry.js +1 -1
  73. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +1 -1
  74. package/dist/cjs/ifx-footer-column.cjs.entry.js +2 -2
  75. package/dist/cjs/ifx-footer-column.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ifx-footer-column.entry.cjs.js.map +1 -1
  77. package/dist/cjs/ifx-footer.cjs.entry.js +2 -2
  78. package/dist/cjs/ifx-footer.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ifx-footer.entry.cjs.js.map +1 -1
  80. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  81. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  82. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  83. package/dist/cjs/ifx-indicator.cjs.entry.js +2 -2
  84. package/dist/cjs/ifx-indicator.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ifx-indicator.entry.cjs.js.map +1 -1
  86. package/dist/cjs/ifx-link.cjs.entry.js +2 -2
  87. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ifx-link.entry.cjs.js.map +1 -1
  89. package/dist/cjs/ifx-list-entry.cjs.entry.js +1 -1
  90. package/dist/cjs/ifx-list.cjs.entry.js +1 -1
  91. package/dist/cjs/ifx-modal.cjs.entry.js +2 -2
  92. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ifx-modal.entry.cjs.js.map +1 -1
  94. package/dist/cjs/ifx-multiselect.ifx-multiselect-option.entry.cjs.js.map +1 -1
  95. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +2 -2
  96. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ifx-navbar-item.cjs.entry.js +1 -1
  98. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +1 -1
  99. package/dist/cjs/ifx-navbar.cjs.entry.js +2 -2
  100. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ifx-navbar.entry.cjs.js.map +1 -1
  102. package/dist/cjs/ifx-notification.cjs.entry.js +2 -2
  103. package/dist/cjs/ifx-notification.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ifx-notification.entry.cjs.js.map +1 -1
  105. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  106. package/dist/cjs/ifx-progress-bar.cjs.entry.js +2 -2
  107. package/dist/cjs/ifx-progress-bar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ifx-progress-bar.entry.cjs.js.map +1 -1
  109. package/dist/cjs/ifx-radio-button-group.cjs.entry.js +2 -2
  110. package/dist/cjs/ifx-radio-button-group.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ifx-radio-button-group.entry.cjs.js.map +1 -1
  112. package/dist/cjs/ifx-radio-button.cjs.entry.js +2 -2
  113. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ifx-radio-button.entry.cjs.js.map +1 -1
  115. package/dist/cjs/ifx-search-bar.cjs.entry.js +2 -2
  116. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  117. package/dist/cjs/ifx-search-bar.entry.cjs.js.map +1 -1
  118. package/dist/cjs/ifx-search-field.cjs.entry.js +2 -2
  119. package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ifx-search-field.entry.cjs.js.map +1 -1
  121. package/dist/cjs/ifx-segment.cjs.entry.js +2 -2
  122. package/dist/cjs/ifx-segment.cjs.entry.js.map +1 -1
  123. package/dist/cjs/ifx-segment.entry.cjs.js.map +1 -1
  124. package/dist/cjs/ifx-segmented-control.cjs.entry.js +2 -2
  125. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ifx-segmented-control.entry.cjs.js.map +1 -1
  127. package/dist/cjs/ifx-select.cjs.entry.js +2 -2
  128. package/dist/cjs/ifx-select.cjs.entry.js.map +1 -1
  129. package/dist/cjs/ifx-select.entry.cjs.js.map +1 -1
  130. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -1
  131. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +2 -2
  132. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  133. package/dist/cjs/ifx-sidebar-item.entry.cjs.js.map +1 -1
  134. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +2 -2
  135. package/dist/cjs/ifx-sidebar-title.cjs.entry.js.map +1 -1
  136. package/dist/cjs/ifx-sidebar-title.entry.cjs.js.map +1 -1
  137. package/dist/cjs/ifx-sidebar.cjs.entry.js +2 -2
  138. package/dist/cjs/ifx-sidebar.cjs.entry.js.map +1 -1
  139. package/dist/cjs/ifx-sidebar.entry.cjs.js.map +1 -1
  140. package/dist/cjs/ifx-slider.cjs.entry.js +2 -2
  141. package/dist/cjs/ifx-slider.cjs.entry.js.map +1 -1
  142. package/dist/cjs/ifx-slider.entry.cjs.js.map +1 -1
  143. package/dist/cjs/ifx-spinner.ifx-text-field.entry.cjs.js.map +1 -1
  144. package/dist/cjs/ifx-spinner_2.cjs.entry.js +2 -2
  145. package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +1 -1
  146. package/dist/cjs/ifx-status.cjs.entry.js +2 -2
  147. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  148. package/dist/cjs/ifx-status.entry.cjs.js.map +1 -1
  149. package/dist/cjs/ifx-step.cjs.entry.js +2 -2
  150. package/dist/cjs/ifx-step.cjs.entry.js.map +1 -1
  151. package/dist/cjs/ifx-step.entry.cjs.js.map +1 -1
  152. package/dist/cjs/ifx-stepper.cjs.entry.js +2 -2
  153. package/dist/cjs/ifx-stepper.cjs.entry.js.map +1 -1
  154. package/dist/cjs/ifx-stepper.entry.cjs.js.map +1 -1
  155. package/dist/cjs/ifx-switch.cjs.entry.js +2 -2
  156. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  157. package/dist/cjs/ifx-switch.entry.cjs.js.map +1 -1
  158. package/dist/cjs/ifx-tab.cjs.entry.js +1 -1
  159. package/dist/cjs/ifx-table.cjs.entry.js +2 -2
  160. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  161. package/dist/cjs/ifx-table.entry.cjs.js.map +1 -1
  162. package/dist/cjs/ifx-tabs.cjs.entry.js +2 -2
  163. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  164. package/dist/cjs/ifx-tabs.entry.cjs.js.map +1 -1
  165. package/dist/cjs/ifx-templates-ui.cjs.entry.js +1 -1
  166. package/dist/cjs/ifx-textarea.cjs.entry.js +2 -2
  167. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  168. package/dist/cjs/ifx-textarea.entry.cjs.js.map +1 -1
  169. package/dist/cjs/ifx-tooltip.cjs.entry.js +2 -2
  170. package/dist/cjs/ifx-tooltip.cjs.entry.js.map +1 -1
  171. package/dist/cjs/ifx-tooltip.entry.cjs.js.map +1 -1
  172. package/dist/cjs/ifx-tree-view-item.cjs.entry.js +1 -1
  173. package/dist/cjs/ifx-tree-view.cjs.entry.js +1 -1
  174. package/dist/cjs/{index-Dc5gCGlQ.js → index-n_pDKBY2.js} +3 -3
  175. package/dist/cjs/index-n_pDKBY2.js.map +1 -0
  176. package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
  177. package/dist/cjs/loader.cjs.js +1 -1
  178. package/dist/collection/components/accordion/accordion.css +1 -1
  179. package/dist/collection/components/accordion/accordionItem.css +1 -1
  180. package/dist/collection/components/action-list/action-list-item.css +1 -1
  181. package/dist/collection/components/action-list/action-list.css +1 -1
  182. package/dist/collection/components/alert/alert.css +1 -1
  183. package/dist/collection/components/breadcrumb/breadcrumb-item-label.css +1 -1
  184. package/dist/collection/components/breadcrumb/breadcrumb-item.css +1 -1
  185. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  186. package/dist/collection/components/button/button.css +1 -1
  187. package/dist/collection/components/card/card-headline/card-headline.css +1 -1
  188. package/dist/collection/components/card/card-links/card-links.css +1 -1
  189. package/dist/collection/components/card/card-overline/card-overline.css +1 -1
  190. package/dist/collection/components/card/card-text/card-text.css +1 -1
  191. package/dist/collection/components/card/card.css +1 -1
  192. package/dist/collection/components/checkbox-group/checkbox-group.css +1 -1
  193. package/dist/collection/components/chip/chip-item/chip-item.css +1 -1
  194. package/dist/collection/components/chip/chip.css +1 -1
  195. package/dist/collection/components/dropdown/dropdown-header/dropdown-header.css +1 -1
  196. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.css +1 -1
  197. package/dist/collection/components/file-upload/file-upload.css +1 -1
  198. package/dist/collection/components/footer/footer-column.css +1 -1
  199. package/dist/collection/components/footer/footer.css +2 -2
  200. package/dist/collection/components/footer/footer.stories.js +17 -20
  201. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  202. package/dist/collection/components/indicator/indicator.css +1 -1
  203. package/dist/collection/components/link/link.css +1 -1
  204. package/dist/collection/components/modal/modal.css +1 -1
  205. package/dist/collection/components/navigation/navbar/navbar.css +1 -1
  206. package/dist/collection/components/navigation/sidebar/sidebar-item.css +1 -1
  207. package/dist/collection/components/navigation/sidebar/sidebar-title.css +1 -1
  208. package/dist/collection/components/navigation/sidebar/sidebar.css +1 -1
  209. package/dist/collection/components/notification/notification.css +1 -1
  210. package/dist/collection/components/pagination/pagination.css +1 -1
  211. package/dist/collection/components/progress-bar/progress-bar.css +1 -1
  212. package/dist/collection/components/radio-button/radio-button.css +1 -1
  213. package/dist/collection/components/radio-button-group/radio-button-group.css +1 -1
  214. package/dist/collection/components/search-bar/search-bar.css +1 -1
  215. package/dist/collection/components/search-field/search-field.css +1 -1
  216. package/dist/collection/components/segmented-control/segment/segment.css +1 -1
  217. package/dist/collection/components/segmented-control/segmented-control.css +1 -1
  218. package/dist/collection/components/select/multi-select/multiselect.css +1 -1
  219. package/dist/collection/components/select/single-select/select.css +1 -1
  220. package/dist/collection/components/slider/slider.css +1 -1
  221. package/dist/collection/components/status/status.css +1 -1
  222. package/dist/collection/components/stepper/step/step.css +1 -1
  223. package/dist/collection/components/stepper/stepper.css +1 -1
  224. package/dist/collection/components/switch/switch.css +1 -1
  225. package/dist/collection/components/table-advanced-version/table.css +1 -1
  226. package/dist/collection/components/table-basic-version/table.css +1 -1
  227. package/dist/collection/components/tabs/tabs.css +1 -1
  228. package/dist/collection/components/text-field/text-field.css +1 -1
  229. package/dist/collection/components/textarea/textarea.css +1 -1
  230. package/dist/collection/components/tooltip/tooltip.css +1 -1
  231. package/dist/components/ifx-accordion-item.js +1 -1
  232. package/dist/components/ifx-accordion.js +1 -1
  233. package/dist/components/ifx-action-list-item.js +1 -1
  234. package/dist/components/ifx-action-list-item.js.map +1 -1
  235. package/dist/components/ifx-action-list.js +1 -1
  236. package/dist/components/ifx-action-list.js.map +1 -1
  237. package/dist/components/ifx-alert.js +1 -1
  238. package/dist/components/ifx-basic-table.js +1 -1
  239. package/dist/components/ifx-basic-table.js.map +1 -1
  240. package/dist/components/ifx-breadcrumb-item-label.js +1 -1
  241. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  242. package/dist/components/ifx-breadcrumb-item.js +1 -1
  243. package/dist/components/ifx-breadcrumb-item.js.map +1 -1
  244. package/dist/components/ifx-breadcrumb.js +1 -1
  245. package/dist/components/ifx-breadcrumb.js.map +1 -1
  246. package/dist/components/ifx-button.js +1 -1
  247. package/dist/components/ifx-card-headline.js +1 -1
  248. package/dist/components/ifx-card-headline.js.map +1 -1
  249. package/dist/components/ifx-card-links.js +1 -1
  250. package/dist/components/ifx-card-links.js.map +1 -1
  251. package/dist/components/ifx-card-overline.js +1 -1
  252. package/dist/components/ifx-card-overline.js.map +1 -1
  253. package/dist/components/ifx-card-text.js +1 -1
  254. package/dist/components/ifx-card-text.js.map +1 -1
  255. package/dist/components/ifx-card.js +1 -1
  256. package/dist/components/ifx-card.js.map +1 -1
  257. package/dist/components/ifx-checkbox-group.js +1 -1
  258. package/dist/components/ifx-checkbox-group.js.map +1 -1
  259. package/dist/components/ifx-chip-item.js +1 -1
  260. package/dist/components/ifx-chip.js +1 -1
  261. package/dist/components/ifx-download.js +1 -1
  262. package/dist/components/ifx-dropdown-header.js +1 -1
  263. package/dist/components/ifx-dropdown-header.js.map +1 -1
  264. package/dist/components/ifx-dropdown-item.js +1 -1
  265. package/dist/components/ifx-dropdown-item.js.map +1 -1
  266. package/dist/components/ifx-dropdown-trigger-button.js +1 -1
  267. package/dist/components/ifx-faq.js +2 -2
  268. package/dist/components/ifx-file-upload.js +3 -3
  269. package/dist/components/ifx-file-upload.js.map +1 -1
  270. package/dist/components/ifx-filter-accordion.js +1 -1
  271. package/dist/components/ifx-filter-bar.js +1 -1
  272. package/dist/components/ifx-filter-search.js +1 -1
  273. package/dist/components/ifx-footer-column.js +1 -1
  274. package/dist/components/ifx-footer-column.js.map +1 -1
  275. package/dist/components/ifx-footer.js +1 -1
  276. package/dist/components/ifx-footer.js.map +1 -1
  277. package/dist/components/ifx-icons-preview.js +3 -3
  278. package/dist/components/ifx-indicator.js +1 -1
  279. package/dist/components/ifx-link.js +1 -1
  280. package/dist/components/ifx-list-entry.js +1 -1
  281. package/dist/components/ifx-list.js +1 -1
  282. package/dist/components/ifx-modal.js +1 -1
  283. package/dist/components/ifx-modal.js.map +1 -1
  284. package/dist/components/ifx-multiselect.js +1 -1
  285. package/dist/components/ifx-navbar-item.js +1 -1
  286. package/dist/components/ifx-navbar.js +1 -1
  287. package/dist/components/ifx-navbar.js.map +1 -1
  288. package/dist/components/ifx-notification.js +1 -1
  289. package/dist/components/ifx-overview-table.js +2 -2
  290. package/dist/components/ifx-pagination.js +1 -1
  291. package/dist/components/ifx-progress-bar.js +1 -1
  292. package/dist/components/ifx-radio-button-group.js +1 -1
  293. package/dist/components/ifx-radio-button-group.js.map +1 -1
  294. package/dist/components/ifx-radio-button.js +1 -1
  295. package/dist/components/ifx-search-bar.js +2 -2
  296. package/dist/components/ifx-search-bar.js.map +1 -1
  297. package/dist/components/ifx-search-field.js +1 -1
  298. package/dist/components/ifx-segment.js +1 -1
  299. package/dist/components/ifx-segment.js.map +1 -1
  300. package/dist/components/ifx-segmented-control.js +1 -1
  301. package/dist/components/ifx-segmented-control.js.map +1 -1
  302. package/dist/components/ifx-select.js +1 -1
  303. package/dist/components/ifx-set-filter.js +4 -4
  304. package/dist/components/ifx-sidebar-item.js +2 -2
  305. package/dist/components/ifx-sidebar-item.js.map +1 -1
  306. package/dist/components/ifx-sidebar-title.js +1 -1
  307. package/dist/components/ifx-sidebar-title.js.map +1 -1
  308. package/dist/components/ifx-sidebar.js +1 -1
  309. package/dist/components/ifx-sidebar.js.map +1 -1
  310. package/dist/components/ifx-slider.js +1 -1
  311. package/dist/components/ifx-slider.js.map +1 -1
  312. package/dist/components/ifx-status.js +1 -1
  313. package/dist/components/ifx-status.js.map +1 -1
  314. package/dist/components/ifx-step.js +1 -1
  315. package/dist/components/ifx-step.js.map +1 -1
  316. package/dist/components/ifx-stepper.js +1 -1
  317. package/dist/components/ifx-stepper.js.map +1 -1
  318. package/dist/components/ifx-switch.js +1 -1
  319. package/dist/components/ifx-switch.js.map +1 -1
  320. package/dist/components/ifx-table.js +7 -7
  321. package/dist/components/ifx-table.js.map +1 -1
  322. package/dist/components/ifx-tabs.js +1 -1
  323. package/dist/components/ifx-tabs.js.map +1 -1
  324. package/dist/components/ifx-template.js +1 -1
  325. package/dist/components/ifx-templates-ui.js +5 -5
  326. package/dist/components/ifx-text-field.js +1 -1
  327. package/dist/components/ifx-textarea.js +1 -1
  328. package/dist/components/ifx-textarea.js.map +1 -1
  329. package/dist/components/ifx-tooltip.js +1 -1
  330. package/dist/components/ifx-tooltip.js.map +1 -1
  331. package/dist/components/index.js +1 -1
  332. package/dist/components/index.js.map +1 -1
  333. package/dist/components/{p-BxahGQyq.js → p-BJpqCkkb.js} +3 -3
  334. package/dist/components/{p-BxahGQyq.js.map → p-BJpqCkkb.js.map} +1 -1
  335. package/dist/components/{p-DX0ddaB9.js → p-BNvn6vYq.js} +3 -3
  336. package/dist/components/{p-DX0ddaB9.js.map → p-BNvn6vYq.js.map} +1 -1
  337. package/dist/components/{p-BR9GBwm3.js → p-BRgFU560.js} +3 -3
  338. package/dist/components/{p-BR9GBwm3.js.map → p-BRgFU560.js.map} +1 -1
  339. package/dist/components/{p-BVJl-hTu.js → p-BXaDLEOt.js} +3 -3
  340. package/dist/components/{p-BVJl-hTu.js.map → p-BXaDLEOt.js.map} +1 -1
  341. package/dist/components/{p-CKT_EeVj.js → p-Bp-4o66i.js} +4 -4
  342. package/dist/components/{p-CKT_EeVj.js.map → p-Bp-4o66i.js.map} +1 -1
  343. package/dist/components/{p-BGgzlGhs.js → p-Bux5F8Jt.js} +3 -3
  344. package/dist/components/{p-BGgzlGhs.js.map → p-Bux5F8Jt.js.map} +1 -1
  345. package/dist/components/{p-C12r4j5b.js → p-BxvlRqa4.js} +3 -3
  346. package/dist/components/{p-C12r4j5b.js.map → p-BxvlRqa4.js.map} +1 -1
  347. package/dist/components/{p-DD80oicI.js → p-ByCglXwi.js} +3 -3
  348. package/dist/components/{p-DD80oicI.js.map → p-ByCglXwi.js.map} +1 -1
  349. package/dist/components/{p-DkRZn47g.js → p-CC7uHVL3.js} +4 -4
  350. package/dist/components/{p-DkRZn47g.js.map → p-CC7uHVL3.js.map} +1 -1
  351. package/dist/components/{p-RF9z92mE.js → p-D9skJwQF.js} +3 -3
  352. package/dist/components/{p-RF9z92mE.js.map → p-D9skJwQF.js.map} +1 -1
  353. package/dist/components/{p-B2vrW4WM.js → p-DFnvAzL-.js} +4 -4
  354. package/dist/components/{p-B2vrW4WM.js.map → p-DFnvAzL-.js.map} +1 -1
  355. package/dist/components/{p-CbDS7fbn.js → p-DTFUtGIP.js} +3 -3
  356. package/dist/components/{p-CbDS7fbn.js.map → p-DTFUtGIP.js.map} +1 -1
  357. package/dist/components/{p-CLqzdlSR.js → p-DfEokGrI.js} +3 -3
  358. package/dist/components/{p-CLqzdlSR.js.map → p-DfEokGrI.js.map} +1 -1
  359. package/dist/components/{p-R79iWjuc.js → p-Dn3cSDWF.js} +3 -3
  360. package/dist/components/{p-R79iWjuc.js.map → p-Dn3cSDWF.js.map} +1 -1
  361. package/dist/components/{p-CIw3efEg.js → p-JGvjDmyq.js} +4 -4
  362. package/dist/components/{p-CIw3efEg.js.map → p-JGvjDmyq.js.map} +1 -1
  363. package/dist/components/{p-Enb5HFzA.js → p-iB0ABW13.js} +5 -5
  364. package/dist/components/{p-Enb5HFzA.js.map → p-iB0ABW13.js.map} +1 -1
  365. package/dist/components/{p-BnMuxXaP.js → p-opY5IicW.js} +3 -3
  366. package/dist/components/{p-BnMuxXaP.js.map → p-opY5IicW.js.map} +1 -1
  367. package/dist/esm/ifx-accordion.ifx-accordion-item.entry.js.map +1 -1
  368. package/dist/esm/ifx-accordion_2.entry.js +3 -3
  369. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  370. package/dist/esm/ifx-action-list-item.entry.js +2 -2
  371. package/dist/esm/ifx-action-list-item.entry.js.map +1 -1
  372. package/dist/esm/ifx-action-list.entry.js +2 -2
  373. package/dist/esm/ifx-action-list.entry.js.map +1 -1
  374. package/dist/esm/ifx-alert.ifx-template.entry.js.map +1 -1
  375. package/dist/esm/ifx-alert_2.entry.js +2 -2
  376. package/dist/esm/ifx-alert_2.entry.js.map +1 -1
  377. package/dist/esm/ifx-basic-table.entry.js +2 -2
  378. package/dist/esm/ifx-basic-table.entry.js.map +1 -1
  379. package/dist/esm/ifx-breadcrumb-item-label.entry.js +2 -2
  380. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  381. package/dist/esm/ifx-breadcrumb-item.entry.js +2 -2
  382. package/dist/esm/ifx-breadcrumb-item.entry.js.map +1 -1
  383. package/dist/esm/ifx-breadcrumb.entry.js +2 -2
  384. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  385. package/dist/esm/ifx-button.entry.js +2 -2
  386. package/dist/esm/ifx-button.entry.js.map +1 -1
  387. package/dist/esm/ifx-card-headline.entry.js +2 -2
  388. package/dist/esm/ifx-card-headline.entry.js.map +1 -1
  389. package/dist/esm/ifx-card-image.entry.js +1 -1
  390. package/dist/esm/ifx-card-links.entry.js +2 -2
  391. package/dist/esm/ifx-card-links.entry.js.map +1 -1
  392. package/dist/esm/ifx-card-overline.entry.js +2 -2
  393. package/dist/esm/ifx-card-overline.entry.js.map +1 -1
  394. package/dist/esm/ifx-card-text.entry.js +2 -2
  395. package/dist/esm/ifx-card-text.entry.js.map +1 -1
  396. package/dist/esm/ifx-card.entry.js +2 -2
  397. package/dist/esm/ifx-card.entry.js.map +1 -1
  398. package/dist/esm/ifx-checkbox-group.entry.js +2 -2
  399. package/dist/esm/ifx-checkbox-group.entry.js.map +1 -1
  400. package/dist/esm/ifx-checkbox.entry.js +1 -1
  401. package/dist/esm/ifx-chip.ifx-chip-item.ifx-pagination.entry.js.map +1 -1
  402. package/dist/esm/ifx-chip_3.entry.js +4 -4
  403. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  404. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  405. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  406. package/dist/esm/ifx-date-picker.entry.js +1 -1
  407. package/dist/esm/ifx-download.entry.js +1 -1
  408. package/dist/esm/ifx-dropdown-header.entry.js +2 -2
  409. package/dist/esm/ifx-dropdown-header.entry.js.map +1 -1
  410. package/dist/esm/ifx-dropdown-item.entry.js +2 -2
  411. package/dist/esm/ifx-dropdown-item.entry.js.map +1 -1
  412. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  413. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  414. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -1
  415. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  416. package/dist/esm/ifx-dropdown.entry.js +1 -1
  417. package/dist/esm/ifx-faq.entry.js +1 -1
  418. package/dist/esm/ifx-file-upload.entry.js +2 -2
  419. package/dist/esm/ifx-file-upload.entry.js.map +1 -1
  420. package/dist/esm/ifx-filter-accordion.entry.js +1 -1
  421. package/dist/esm/ifx-filter-bar.entry.js +1 -1
  422. package/dist/esm/ifx-filter-search.entry.js +1 -1
  423. package/dist/esm/ifx-filter-type-group.entry.js +1 -1
  424. package/dist/esm/ifx-footer-column.entry.js +2 -2
  425. package/dist/esm/ifx-footer-column.entry.js.map +1 -1
  426. package/dist/esm/ifx-footer.entry.js +2 -2
  427. package/dist/esm/ifx-footer.entry.js.map +1 -1
  428. package/dist/esm/ifx-icon-button.entry.js +1 -1
  429. package/dist/esm/ifx-icon.entry.js +1 -1
  430. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  431. package/dist/esm/ifx-indicator.entry.js +2 -2
  432. package/dist/esm/ifx-indicator.entry.js.map +1 -1
  433. package/dist/esm/ifx-link.entry.js +2 -2
  434. package/dist/esm/ifx-link.entry.js.map +1 -1
  435. package/dist/esm/ifx-list-entry.entry.js +1 -1
  436. package/dist/esm/ifx-list.entry.js +1 -1
  437. package/dist/esm/ifx-modal.entry.js +2 -2
  438. package/dist/esm/ifx-modal.entry.js.map +1 -1
  439. package/dist/esm/ifx-multiselect.ifx-multiselect-option.entry.js.map +1 -1
  440. package/dist/esm/ifx-multiselect_2.entry.js +2 -2
  441. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  442. package/dist/esm/ifx-navbar-item.entry.js +1 -1
  443. package/dist/esm/ifx-navbar-profile.entry.js +1 -1
  444. package/dist/esm/ifx-navbar.entry.js +2 -2
  445. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  446. package/dist/esm/ifx-notification.entry.js +2 -2
  447. package/dist/esm/ifx-notification.entry.js.map +1 -1
  448. package/dist/esm/ifx-overview-table.entry.js +1 -1
  449. package/dist/esm/ifx-progress-bar.entry.js +2 -2
  450. package/dist/esm/ifx-progress-bar.entry.js.map +1 -1
  451. package/dist/esm/ifx-radio-button-group.entry.js +2 -2
  452. package/dist/esm/ifx-radio-button-group.entry.js.map +1 -1
  453. package/dist/esm/ifx-radio-button.entry.js +2 -2
  454. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  455. package/dist/esm/ifx-search-bar.entry.js +2 -2
  456. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  457. package/dist/esm/ifx-search-field.entry.js +2 -2
  458. package/dist/esm/ifx-search-field.entry.js.map +1 -1
  459. package/dist/esm/ifx-segment.entry.js +2 -2
  460. package/dist/esm/ifx-segment.entry.js.map +1 -1
  461. package/dist/esm/ifx-segmented-control.entry.js +2 -2
  462. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  463. package/dist/esm/ifx-select.entry.js +2 -2
  464. package/dist/esm/ifx-select.entry.js.map +1 -1
  465. package/dist/esm/ifx-set-filter.entry.js +1 -1
  466. package/dist/esm/ifx-sidebar-item.entry.js +2 -2
  467. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  468. package/dist/esm/ifx-sidebar-title.entry.js +2 -2
  469. package/dist/esm/ifx-sidebar-title.entry.js.map +1 -1
  470. package/dist/esm/ifx-sidebar.entry.js +2 -2
  471. package/dist/esm/ifx-sidebar.entry.js.map +1 -1
  472. package/dist/esm/ifx-slider.entry.js +2 -2
  473. package/dist/esm/ifx-slider.entry.js.map +1 -1
  474. package/dist/esm/ifx-spinner.ifx-text-field.entry.js.map +1 -1
  475. package/dist/esm/ifx-spinner_2.entry.js +2 -2
  476. package/dist/esm/ifx-spinner_2.entry.js.map +1 -1
  477. package/dist/esm/ifx-status.entry.js +2 -2
  478. package/dist/esm/ifx-status.entry.js.map +1 -1
  479. package/dist/esm/ifx-step.entry.js +2 -2
  480. package/dist/esm/ifx-step.entry.js.map +1 -1
  481. package/dist/esm/ifx-stepper.entry.js +2 -2
  482. package/dist/esm/ifx-stepper.entry.js.map +1 -1
  483. package/dist/esm/ifx-switch.entry.js +2 -2
  484. package/dist/esm/ifx-switch.entry.js.map +1 -1
  485. package/dist/esm/ifx-tab.entry.js +1 -1
  486. package/dist/esm/ifx-table.entry.js +2 -2
  487. package/dist/esm/ifx-table.entry.js.map +1 -1
  488. package/dist/esm/ifx-tabs.entry.js +2 -2
  489. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  490. package/dist/esm/ifx-templates-ui.entry.js +1 -1
  491. package/dist/esm/ifx-textarea.entry.js +2 -2
  492. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  493. package/dist/esm/ifx-tooltip.entry.js +2 -2
  494. package/dist/esm/ifx-tooltip.entry.js.map +1 -1
  495. package/dist/esm/ifx-tree-view-item.entry.js +1 -1
  496. package/dist/esm/ifx-tree-view.entry.js +1 -1
  497. package/dist/esm/{index-PqnYwNKt.js → index-DtIEDtZ8.js} +3 -3
  498. package/dist/esm/index-DtIEDtZ8.js.map +1 -0
  499. package/dist/esm/infineon-design-system-stencil.js +2 -2
  500. package/dist/esm/loader.js +2 -2
  501. package/dist/infineon-design-system-stencil/ifx-accordion.ifx-accordion-item.entry.esm.js.map +1 -1
  502. package/dist/infineon-design-system-stencil/ifx-action-list-item.entry.esm.js.map +1 -1
  503. package/dist/infineon-design-system-stencil/ifx-action-list.entry.esm.js.map +1 -1
  504. package/dist/infineon-design-system-stencil/ifx-alert.ifx-template.entry.esm.js.map +1 -1
  505. package/dist/infineon-design-system-stencil/ifx-basic-table.entry.esm.js.map +1 -1
  506. package/dist/infineon-design-system-stencil/ifx-breadcrumb-item-label.entry.esm.js.map +1 -1
  507. package/dist/infineon-design-system-stencil/ifx-breadcrumb-item.entry.esm.js.map +1 -1
  508. package/dist/infineon-design-system-stencil/ifx-breadcrumb.entry.esm.js.map +1 -1
  509. package/dist/infineon-design-system-stencil/ifx-button.entry.esm.js.map +1 -1
  510. package/dist/infineon-design-system-stencil/ifx-card-headline.entry.esm.js.map +1 -1
  511. package/dist/infineon-design-system-stencil/ifx-card-links.entry.esm.js.map +1 -1
  512. package/dist/infineon-design-system-stencil/ifx-card-overline.entry.esm.js.map +1 -1
  513. package/dist/infineon-design-system-stencil/ifx-card-text.entry.esm.js.map +1 -1
  514. package/dist/infineon-design-system-stencil/ifx-card.entry.esm.js.map +1 -1
  515. package/dist/infineon-design-system-stencil/ifx-checkbox-group.entry.esm.js.map +1 -1
  516. package/dist/infineon-design-system-stencil/ifx-chip.ifx-chip-item.ifx-pagination.entry.esm.js.map +1 -1
  517. package/dist/infineon-design-system-stencil/ifx-dropdown-header.entry.esm.js.map +1 -1
  518. package/dist/infineon-design-system-stencil/ifx-dropdown-item.entry.esm.js.map +1 -1
  519. package/dist/infineon-design-system-stencil/ifx-file-upload.entry.esm.js.map +1 -1
  520. package/dist/infineon-design-system-stencil/ifx-footer-column.entry.esm.js.map +1 -1
  521. package/dist/infineon-design-system-stencil/ifx-footer.entry.esm.js.map +1 -1
  522. package/dist/infineon-design-system-stencil/ifx-indicator.entry.esm.js.map +1 -1
  523. package/dist/infineon-design-system-stencil/ifx-link.entry.esm.js.map +1 -1
  524. package/dist/infineon-design-system-stencil/ifx-modal.entry.esm.js.map +1 -1
  525. package/dist/infineon-design-system-stencil/ifx-multiselect.ifx-multiselect-option.entry.esm.js.map +1 -1
  526. package/dist/infineon-design-system-stencil/ifx-navbar.entry.esm.js.map +1 -1
  527. package/dist/infineon-design-system-stencil/ifx-notification.entry.esm.js.map +1 -1
  528. package/dist/infineon-design-system-stencil/ifx-progress-bar.entry.esm.js.map +1 -1
  529. package/dist/infineon-design-system-stencil/ifx-radio-button-group.entry.esm.js.map +1 -1
  530. package/dist/infineon-design-system-stencil/ifx-radio-button.entry.esm.js.map +1 -1
  531. package/dist/infineon-design-system-stencil/ifx-search-bar.entry.esm.js.map +1 -1
  532. package/dist/infineon-design-system-stencil/ifx-search-field.entry.esm.js.map +1 -1
  533. package/dist/infineon-design-system-stencil/ifx-segment.entry.esm.js.map +1 -1
  534. package/dist/infineon-design-system-stencil/ifx-segmented-control.entry.esm.js.map +1 -1
  535. package/dist/infineon-design-system-stencil/ifx-select.entry.esm.js.map +1 -1
  536. package/dist/infineon-design-system-stencil/ifx-sidebar-item.entry.esm.js.map +1 -1
  537. package/dist/infineon-design-system-stencil/ifx-sidebar-title.entry.esm.js.map +1 -1
  538. package/dist/infineon-design-system-stencil/ifx-sidebar.entry.esm.js.map +1 -1
  539. package/dist/infineon-design-system-stencil/ifx-slider.entry.esm.js.map +1 -1
  540. package/dist/infineon-design-system-stencil/ifx-spinner.ifx-text-field.entry.esm.js.map +1 -1
  541. package/dist/infineon-design-system-stencil/ifx-status.entry.esm.js.map +1 -1
  542. package/dist/infineon-design-system-stencil/ifx-step.entry.esm.js.map +1 -1
  543. package/dist/infineon-design-system-stencil/ifx-stepper.entry.esm.js.map +1 -1
  544. package/dist/infineon-design-system-stencil/ifx-switch.entry.esm.js.map +1 -1
  545. package/dist/infineon-design-system-stencil/ifx-table.entry.esm.js.map +1 -1
  546. package/dist/infineon-design-system-stencil/ifx-tabs.entry.esm.js.map +1 -1
  547. package/dist/infineon-design-system-stencil/ifx-textarea.entry.esm.js.map +1 -1
  548. package/dist/infineon-design-system-stencil/ifx-tooltip.entry.esm.js.map +1 -1
  549. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.css +1 -1
  550. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  551. package/dist/infineon-design-system-stencil/p-0100cbfb.entry.js +2 -0
  552. package/dist/infineon-design-system-stencil/{p-39561a49.entry.js.map → p-0100cbfb.entry.js.map} +1 -1
  553. package/dist/infineon-design-system-stencil/{p-a85754a5.entry.js → p-06215925.entry.js} +3 -3
  554. package/dist/infineon-design-system-stencil/{p-a85754a5.entry.js.map → p-06215925.entry.js.map} +1 -1
  555. package/dist/infineon-design-system-stencil/{p-9517d1b0.entry.js → p-0d4211db.entry.js} +2 -2
  556. package/dist/infineon-design-system-stencil/{p-39e3ee45.entry.js → p-0d9da371.entry.js} +2 -2
  557. package/dist/infineon-design-system-stencil/{p-39e3ee45.entry.js.map → p-0d9da371.entry.js.map} +1 -1
  558. package/dist/infineon-design-system-stencil/{p-060845fd.entry.js → p-0dbe2818.entry.js} +2 -2
  559. package/dist/infineon-design-system-stencil/p-13fed6df.entry.js +2 -0
  560. package/dist/infineon-design-system-stencil/{p-06d2f85b.entry.js.map → p-13fed6df.entry.js.map} +1 -1
  561. package/dist/infineon-design-system-stencil/{p-77e54475.entry.js → p-1bbaae5e.entry.js} +2 -2
  562. package/dist/infineon-design-system-stencil/p-1c2d0b17.entry.js +2 -0
  563. package/dist/infineon-design-system-stencil/{p-9deaa65e.entry.js.map → p-1c2d0b17.entry.js.map} +1 -1
  564. package/dist/infineon-design-system-stencil/p-1df9b181.entry.js +2 -0
  565. package/dist/infineon-design-system-stencil/{p-169f26ae.entry.js.map → p-1df9b181.entry.js.map} +1 -1
  566. package/dist/infineon-design-system-stencil/{p-d2b076fe.entry.js → p-213a4829.entry.js} +2 -2
  567. package/dist/infineon-design-system-stencil/{p-c6826c1e.entry.js → p-2151de2a.entry.js} +2 -2
  568. package/dist/infineon-design-system-stencil/{p-e6c4c4cf.entry.js → p-22a45c93.entry.js} +2 -2
  569. package/dist/infineon-design-system-stencil/p-240a4cb3.entry.js +2 -0
  570. package/dist/infineon-design-system-stencil/{p-1c1b1a1f.entry.js.map → p-240a4cb3.entry.js.map} +1 -1
  571. package/dist/infineon-design-system-stencil/p-249372a1.entry.js +2 -0
  572. package/dist/infineon-design-system-stencil/{p-2813423a.entry.js.map → p-249372a1.entry.js.map} +1 -1
  573. package/dist/infineon-design-system-stencil/{p-beaba918.entry.js → p-27808b00.entry.js} +2 -2
  574. package/dist/infineon-design-system-stencil/p-29d78bf2.entry.js +2 -0
  575. package/dist/infineon-design-system-stencil/{p-6a07106e.entry.js.map → p-29d78bf2.entry.js.map} +1 -1
  576. package/dist/infineon-design-system-stencil/{p-dcd0af23.entry.js → p-372fa9eb.entry.js} +2 -2
  577. package/dist/infineon-design-system-stencil/p-3cdd03ed.entry.js +2 -0
  578. package/dist/infineon-design-system-stencil/p-3cdd03ed.entry.js.map +1 -0
  579. package/dist/infineon-design-system-stencil/p-3f29b8fd.entry.js +2 -0
  580. package/dist/infineon-design-system-stencil/{p-ca870353.entry.js.map → p-3f29b8fd.entry.js.map} +1 -1
  581. package/dist/infineon-design-system-stencil/p-3f3a5140.entry.js +2 -0
  582. package/dist/infineon-design-system-stencil/{p-f2c8c7a6.entry.js.map → p-3f3a5140.entry.js.map} +1 -1
  583. package/dist/infineon-design-system-stencil/p-4016e7cf.entry.js +2 -0
  584. package/dist/infineon-design-system-stencil/{p-35d2266a.entry.js.map → p-4016e7cf.entry.js.map} +1 -1
  585. package/dist/infineon-design-system-stencil/p-412f510b.entry.js +2 -0
  586. package/dist/infineon-design-system-stencil/{p-05f66dcb.entry.js.map → p-412f510b.entry.js.map} +1 -1
  587. package/dist/infineon-design-system-stencil/p-43943864.entry.js +2 -0
  588. package/dist/infineon-design-system-stencil/{p-58dd6f5c.entry.js.map → p-43943864.entry.js.map} +1 -1
  589. package/dist/infineon-design-system-stencil/p-453bd9bd.entry.js +2 -0
  590. package/dist/infineon-design-system-stencil/{p-a4dd2fe1.entry.js.map → p-453bd9bd.entry.js.map} +1 -1
  591. package/dist/infineon-design-system-stencil/p-4850e2df.entry.js +2 -0
  592. package/dist/infineon-design-system-stencil/{p-0929589d.entry.js.map → p-4850e2df.entry.js.map} +1 -1
  593. package/dist/infineon-design-system-stencil/p-4afddabf.entry.js +2 -0
  594. package/dist/infineon-design-system-stencil/p-4c846056.entry.js +2 -0
  595. package/dist/infineon-design-system-stencil/{p-380368ca.entry.js.map → p-4c846056.entry.js.map} +1 -1
  596. package/dist/infineon-design-system-stencil/{p-fcae5dc1.entry.js → p-54785004.entry.js} +2 -2
  597. package/dist/infineon-design-system-stencil/{p-fcae5dc1.entry.js.map → p-54785004.entry.js.map} +1 -1
  598. package/dist/infineon-design-system-stencil/p-550283fa.entry.js +2 -0
  599. package/dist/infineon-design-system-stencil/{p-bd8c6834.entry.js.map → p-550283fa.entry.js.map} +1 -1
  600. package/dist/infineon-design-system-stencil/{p-d4373c36.entry.js → p-55227732.entry.js} +2 -2
  601. package/dist/infineon-design-system-stencil/p-58552d96.entry.js +2 -0
  602. package/dist/infineon-design-system-stencil/{p-0be8f0c9.entry.js.map → p-58552d96.entry.js.map} +1 -1
  603. package/dist/infineon-design-system-stencil/{p-9b06df76.entry.js → p-5c673497.entry.js} +2 -2
  604. package/dist/infineon-design-system-stencil/p-6407c496.entry.js +2 -0
  605. package/dist/infineon-design-system-stencil/{p-ca312cbb.entry.js.map → p-6407c496.entry.js.map} +1 -1
  606. package/dist/infineon-design-system-stencil/p-6504f8d0.entry.js +2 -0
  607. package/dist/infineon-design-system-stencil/{p-ee04eb6e.entry.js.map → p-6504f8d0.entry.js.map} +1 -1
  608. package/dist/infineon-design-system-stencil/p-6af7d062.entry.js +2 -0
  609. package/dist/infineon-design-system-stencil/{p-f06b0ae3.entry.js.map → p-6af7d062.entry.js.map} +1 -1
  610. package/dist/infineon-design-system-stencil/p-6ceae9a3.entry.js +2 -0
  611. package/dist/infineon-design-system-stencil/{p-e7c656cd.entry.js.map → p-6ceae9a3.entry.js.map} +1 -1
  612. package/dist/infineon-design-system-stencil/{p-4669e01f.entry.js → p-7468590a.entry.js} +2 -2
  613. package/dist/infineon-design-system-stencil/p-765dd1b4.entry.js +2 -0
  614. package/dist/infineon-design-system-stencil/{p-760cfc7e.entry.js.map → p-765dd1b4.entry.js.map} +1 -1
  615. package/dist/infineon-design-system-stencil/p-7910df8a.entry.js +2 -0
  616. package/dist/infineon-design-system-stencil/{p-dac7d817.entry.js.map → p-7910df8a.entry.js.map} +1 -1
  617. package/dist/infineon-design-system-stencil/{p-e3c11b6c.entry.js → p-83816596.entry.js} +2 -2
  618. package/dist/infineon-design-system-stencil/p-84735ae2.entry.js +2 -0
  619. package/dist/infineon-design-system-stencil/{p-2503d869.entry.js.map → p-84735ae2.entry.js.map} +1 -1
  620. package/dist/infineon-design-system-stencil/{p-e78ffc43.entry.js → p-8a9d3e04.entry.js} +2 -2
  621. package/dist/infineon-design-system-stencil/p-8ab64504.entry.js +2 -0
  622. package/dist/infineon-design-system-stencil/{p-6e115707.entry.js.map → p-8ab64504.entry.js.map} +1 -1
  623. package/dist/infineon-design-system-stencil/{p-2e172019.entry.js → p-8c44be53.entry.js} +2 -2
  624. package/dist/infineon-design-system-stencil/p-913a8693.entry.js +2 -0
  625. package/dist/infineon-design-system-stencil/{p-ce799b3d.entry.js.map → p-913a8693.entry.js.map} +1 -1
  626. package/dist/infineon-design-system-stencil/{p-ff4cc197.entry.js → p-91ce7e7b.entry.js} +2 -2
  627. package/dist/infineon-design-system-stencil/p-933da006.entry.js +2 -0
  628. package/dist/infineon-design-system-stencil/{p-97b2ac42.entry.js.map → p-933da006.entry.js.map} +1 -1
  629. package/dist/infineon-design-system-stencil/{p-f85c9454.entry.js → p-988ad5f6.entry.js} +2 -2
  630. package/dist/infineon-design-system-stencil/p-98c2e3a9.entry.js +2 -0
  631. package/dist/infineon-design-system-stencil/{p-edbfa46e.entry.js.map → p-98c2e3a9.entry.js.map} +1 -1
  632. package/dist/infineon-design-system-stencil/p-9ea43bb7.entry.js +2 -0
  633. package/dist/infineon-design-system-stencil/{p-5b571505.entry.js.map → p-9ea43bb7.entry.js.map} +1 -1
  634. package/dist/infineon-design-system-stencil/{p-PqnYwNKt.js → p-DtIEDtZ8.js} +2 -2
  635. package/dist/infineon-design-system-stencil/p-DtIEDtZ8.js.map +1 -0
  636. package/dist/infineon-design-system-stencil/p-a1c63832.entry.js +2 -0
  637. package/dist/infineon-design-system-stencil/{p-273907cb.entry.js.map → p-a1c63832.entry.js.map} +1 -1
  638. package/dist/infineon-design-system-stencil/p-ad702dcc.entry.js +2 -0
  639. package/dist/infineon-design-system-stencil/{p-5fb3eb8b.entry.js.map → p-ad702dcc.entry.js.map} +1 -1
  640. package/dist/infineon-design-system-stencil/p-ae513612.entry.js +2 -0
  641. package/dist/infineon-design-system-stencil/{p-4da5a2a5.entry.js.map → p-ae513612.entry.js.map} +1 -1
  642. package/dist/infineon-design-system-stencil/p-af1e0cb5.entry.js +2 -0
  643. package/dist/infineon-design-system-stencil/{p-f1ba768a.entry.js.map → p-af1e0cb5.entry.js.map} +1 -1
  644. package/dist/infineon-design-system-stencil/p-b23596f4.entry.js +2 -0
  645. package/dist/infineon-design-system-stencil/{p-4fba0543.entry.js.map → p-b23596f4.entry.js.map} +1 -1
  646. package/dist/infineon-design-system-stencil/p-b5db443a.entry.js +2 -0
  647. package/dist/infineon-design-system-stencil/p-b5db443a.entry.js.map +1 -0
  648. package/dist/infineon-design-system-stencil/{p-c578a728.entry.js → p-b5efb1d6.entry.js} +2 -2
  649. package/dist/infineon-design-system-stencil/{p-b7672947.entry.js → p-b969b2c0.entry.js} +2 -2
  650. package/dist/infineon-design-system-stencil/{p-45dad0d1.entry.js → p-ba4ee343.entry.js} +2 -2
  651. package/dist/infineon-design-system-stencil/p-c6fa6fd3.entry.js +2 -0
  652. package/dist/infineon-design-system-stencil/{p-3eeacac9.entry.js.map → p-c6fa6fd3.entry.js.map} +1 -1
  653. package/dist/infineon-design-system-stencil/{p-94dfe026.entry.js → p-c9d594e1.entry.js} +2 -2
  654. package/dist/infineon-design-system-stencil/p-cae1ea22.entry.js +2 -0
  655. package/dist/infineon-design-system-stencil/{p-dbc6ae20.entry.js.map → p-cae1ea22.entry.js.map} +1 -1
  656. package/dist/infineon-design-system-stencil/p-d3236a63.entry.js +2 -0
  657. package/dist/infineon-design-system-stencil/{p-3d77ef02.entry.js.map → p-d3236a63.entry.js.map} +1 -1
  658. package/dist/infineon-design-system-stencil/{p-116c853e.entry.js → p-d3a6bbf7.entry.js} +2 -2
  659. package/dist/infineon-design-system-stencil/{p-92ee6f73.entry.js → p-d4fea918.entry.js} +2 -2
  660. package/dist/infineon-design-system-stencil/p-d56ee584.entry.js +2 -0
  661. package/dist/infineon-design-system-stencil/{p-9ba730bb.entry.js.map → p-d56ee584.entry.js.map} +1 -1
  662. package/dist/infineon-design-system-stencil/p-dcc7240e.entry.js +2 -0
  663. package/dist/infineon-design-system-stencil/{p-d65a334c.entry.js.map → p-dcc7240e.entry.js.map} +1 -1
  664. package/dist/infineon-design-system-stencil/p-dd1b2b14.entry.js +2 -0
  665. package/dist/infineon-design-system-stencil/{p-d267f6d2.entry.js.map → p-dd1b2b14.entry.js.map} +1 -1
  666. package/dist/infineon-design-system-stencil/{p-0fb9f42b.entry.js → p-dfd77261.entry.js} +2 -2
  667. package/dist/infineon-design-system-stencil/{p-744c1c8e.entry.js → p-e7b72d33.entry.js} +2 -2
  668. package/dist/infineon-design-system-stencil/p-ee2ca575.entry.js +2 -0
  669. package/dist/infineon-design-system-stencil/{p-5367db9d.entry.js.map → p-ee2ca575.entry.js.map} +1 -1
  670. package/dist/infineon-design-system-stencil/{p-8ceb2ccc.entry.js → p-eed36710.entry.js} +2 -2
  671. package/dist/infineon-design-system-stencil/p-f5811026.entry.js +2 -0
  672. package/dist/infineon-design-system-stencil/{p-22e9960d.entry.js.map → p-f5811026.entry.js.map} +1 -1
  673. package/dist/infineon-design-system-stencil/{p-5e3d0ff0.entry.js → p-f63ba4a3.entry.js} +2 -2
  674. package/dist/infineon-design-system-stencil/p-f68887c5.entry.js +2 -0
  675. package/dist/infineon-design-system-stencil/{p-1d494424.entry.js → p-fd206fce.entry.js} +2 -2
  676. package/dist/infineon-design-system-stencil/p-fe373208.entry.js +2 -0
  677. package/dist/infineon-design-system-stencil/{p-2b4b2b06.entry.js.map → p-fe373208.entry.js.map} +1 -1
  678. package/package.json +1 -1
  679. package/dist/cjs/index-Dc5gCGlQ.js.map +0 -1
  680. package/dist/esm/index-PqnYwNKt.js.map +0 -1
  681. package/dist/infineon-design-system-stencil/p-05f66dcb.entry.js +0 -2
  682. package/dist/infineon-design-system-stencil/p-06d2f85b.entry.js +0 -2
  683. package/dist/infineon-design-system-stencil/p-0929589d.entry.js +0 -2
  684. package/dist/infineon-design-system-stencil/p-0be8f0c9.entry.js +0 -2
  685. package/dist/infineon-design-system-stencil/p-169f26ae.entry.js +0 -2
  686. package/dist/infineon-design-system-stencil/p-1c1b1a1f.entry.js +0 -2
  687. package/dist/infineon-design-system-stencil/p-22e9960d.entry.js +0 -2
  688. package/dist/infineon-design-system-stencil/p-2503d869.entry.js +0 -2
  689. package/dist/infineon-design-system-stencil/p-273907cb.entry.js +0 -2
  690. package/dist/infineon-design-system-stencil/p-2813423a.entry.js +0 -2
  691. package/dist/infineon-design-system-stencil/p-2b4b2b06.entry.js +0 -2
  692. package/dist/infineon-design-system-stencil/p-307e6a72.entry.js +0 -2
  693. package/dist/infineon-design-system-stencil/p-35d2266a.entry.js +0 -2
  694. package/dist/infineon-design-system-stencil/p-380368ca.entry.js +0 -2
  695. package/dist/infineon-design-system-stencil/p-39561a49.entry.js +0 -2
  696. package/dist/infineon-design-system-stencil/p-3d77ef02.entry.js +0 -2
  697. package/dist/infineon-design-system-stencil/p-3eeacac9.entry.js +0 -2
  698. package/dist/infineon-design-system-stencil/p-4da5a2a5.entry.js +0 -2
  699. package/dist/infineon-design-system-stencil/p-4fba0543.entry.js +0 -2
  700. package/dist/infineon-design-system-stencil/p-5367db9d.entry.js +0 -2
  701. package/dist/infineon-design-system-stencil/p-58dd6f5c.entry.js +0 -2
  702. package/dist/infineon-design-system-stencil/p-5b571505.entry.js +0 -2
  703. package/dist/infineon-design-system-stencil/p-5fb3eb8b.entry.js +0 -2
  704. package/dist/infineon-design-system-stencil/p-6a07106e.entry.js +0 -2
  705. package/dist/infineon-design-system-stencil/p-6e115707.entry.js +0 -2
  706. package/dist/infineon-design-system-stencil/p-760cfc7e.entry.js +0 -2
  707. package/dist/infineon-design-system-stencil/p-97b2ac42.entry.js +0 -2
  708. package/dist/infineon-design-system-stencil/p-9ba730bb.entry.js +0 -2
  709. package/dist/infineon-design-system-stencil/p-9deaa65e.entry.js +0 -2
  710. package/dist/infineon-design-system-stencil/p-PqnYwNKt.js.map +0 -1
  711. package/dist/infineon-design-system-stencil/p-a4dd2fe1.entry.js +0 -2
  712. package/dist/infineon-design-system-stencil/p-ab326703.entry.js +0 -2
  713. package/dist/infineon-design-system-stencil/p-ab326703.entry.js.map +0 -1
  714. package/dist/infineon-design-system-stencil/p-bd8c6834.entry.js +0 -2
  715. package/dist/infineon-design-system-stencil/p-ca312cbb.entry.js +0 -2
  716. package/dist/infineon-design-system-stencil/p-ca870353.entry.js +0 -2
  717. package/dist/infineon-design-system-stencil/p-ce799b3d.entry.js +0 -2
  718. package/dist/infineon-design-system-stencil/p-d267f6d2.entry.js +0 -2
  719. package/dist/infineon-design-system-stencil/p-d65a334c.entry.js +0 -2
  720. package/dist/infineon-design-system-stencil/p-dac7d817.entry.js +0 -2
  721. package/dist/infineon-design-system-stencil/p-dbc6ae20.entry.js +0 -2
  722. package/dist/infineon-design-system-stencil/p-e7c656cd.entry.js +0 -2
  723. package/dist/infineon-design-system-stencil/p-edbfa46e.entry.js +0 -2
  724. package/dist/infineon-design-system-stencil/p-ee04eb6e.entry.js +0 -2
  725. package/dist/infineon-design-system-stencil/p-f06b0ae3.entry.js +0 -2
  726. package/dist/infineon-design-system-stencil/p-f1ba768a.entry.js +0 -2
  727. package/dist/infineon-design-system-stencil/p-f2c8c7a6.entry.js +0 -2
  728. package/dist/infineon-design-system-stencil/p-fb92000d.entry.js +0 -2
  729. package/dist/infineon-design-system-stencil/p-fc359efa.entry.js +0 -2
  730. package/dist/infineon-design-system-stencil/p-fc359efa.entry.js.map +0 -1
  731. /package/dist/infineon-design-system-stencil/{p-9517d1b0.entry.js.map → p-0d4211db.entry.js.map} +0 -0
  732. /package/dist/infineon-design-system-stencil/{p-060845fd.entry.js.map → p-0dbe2818.entry.js.map} +0 -0
  733. /package/dist/infineon-design-system-stencil/{p-77e54475.entry.js.map → p-1bbaae5e.entry.js.map} +0 -0
  734. /package/dist/infineon-design-system-stencil/{p-d2b076fe.entry.js.map → p-213a4829.entry.js.map} +0 -0
  735. /package/dist/infineon-design-system-stencil/{p-c6826c1e.entry.js.map → p-2151de2a.entry.js.map} +0 -0
  736. /package/dist/infineon-design-system-stencil/{p-e6c4c4cf.entry.js.map → p-22a45c93.entry.js.map} +0 -0
  737. /package/dist/infineon-design-system-stencil/{p-beaba918.entry.js.map → p-27808b00.entry.js.map} +0 -0
  738. /package/dist/infineon-design-system-stencil/{p-dcd0af23.entry.js.map → p-372fa9eb.entry.js.map} +0 -0
  739. /package/dist/infineon-design-system-stencil/{p-307e6a72.entry.js.map → p-4afddabf.entry.js.map} +0 -0
  740. /package/dist/infineon-design-system-stencil/{p-d4373c36.entry.js.map → p-55227732.entry.js.map} +0 -0
  741. /package/dist/infineon-design-system-stencil/{p-9b06df76.entry.js.map → p-5c673497.entry.js.map} +0 -0
  742. /package/dist/infineon-design-system-stencil/{p-4669e01f.entry.js.map → p-7468590a.entry.js.map} +0 -0
  743. /package/dist/infineon-design-system-stencil/{p-e3c11b6c.entry.js.map → p-83816596.entry.js.map} +0 -0
  744. /package/dist/infineon-design-system-stencil/{p-e78ffc43.entry.js.map → p-8a9d3e04.entry.js.map} +0 -0
  745. /package/dist/infineon-design-system-stencil/{p-2e172019.entry.js.map → p-8c44be53.entry.js.map} +0 -0
  746. /package/dist/infineon-design-system-stencil/{p-ff4cc197.entry.js.map → p-91ce7e7b.entry.js.map} +0 -0
  747. /package/dist/infineon-design-system-stencil/{p-f85c9454.entry.js.map → p-988ad5f6.entry.js.map} +0 -0
  748. /package/dist/infineon-design-system-stencil/{p-c578a728.entry.js.map → p-b5efb1d6.entry.js.map} +0 -0
  749. /package/dist/infineon-design-system-stencil/{p-b7672947.entry.js.map → p-b969b2c0.entry.js.map} +0 -0
  750. /package/dist/infineon-design-system-stencil/{p-45dad0d1.entry.js.map → p-ba4ee343.entry.js.map} +0 -0
  751. /package/dist/infineon-design-system-stencil/{p-94dfe026.entry.js.map → p-c9d594e1.entry.js.map} +0 -0
  752. /package/dist/infineon-design-system-stencil/{p-116c853e.entry.js.map → p-d3a6bbf7.entry.js.map} +0 -0
  753. /package/dist/infineon-design-system-stencil/{p-92ee6f73.entry.js.map → p-d4fea918.entry.js.map} +0 -0
  754. /package/dist/infineon-design-system-stencil/{p-0fb9f42b.entry.js.map → p-dfd77261.entry.js.map} +0 -0
  755. /package/dist/infineon-design-system-stencil/{p-744c1c8e.entry.js.map → p-e7b72d33.entry.js.map} +0 -0
  756. /package/dist/infineon-design-system-stencil/{p-8ceb2ccc.entry.js.map → p-eed36710.entry.js.map} +0 -0
  757. /package/dist/infineon-design-system-stencil/{p-5e3d0ff0.entry.js.map → p-f63ba4a3.entry.js.map} +0 -0
  758. /package/dist/infineon-design-system-stencil/{p-fb92000d.entry.js.map → p-f68887c5.entry.js.map} +0 -0
  759. /package/dist/infineon-design-system-stencil/{p-1d494424.entry.js.map → p-fd206fce.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
- import { p as promiseResolve, H, g as globalScripts, b as bootstrapLazy } from './index-PqnYwNKt.js';
2
- export { s as setNonce } from './index-PqnYwNKt.js';
1
+ import { p as promiseResolve, H, g as globalScripts, b as bootstrapLazy } from './index-DtIEDtZ8.js';
2
+ export { s as setNonce } from './index-DtIEDtZ8.js';
3
3
 
4
4
  /*
5
5
  Stencil Client Patch Browser v4.36.3 | MIT Licensed | https://stenciljs.com
@@ -1,5 +1,5 @@
1
- import { g as globalScripts, b as bootstrapLazy } from './index-PqnYwNKt.js';
2
- export { s as setNonce } from './index-PqnYwNKt.js';
1
+ import { g as globalScripts, b as bootstrapLazy } from './index-DtIEDtZ8.js';
2
+ export { s as setNonce } from './index-DtIEDtZ8.js';
3
3
 
4
4
  const defineCustomElements = async (win, options) => {
5
5
  if (typeof window === 'undefined') return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-accordion.ifx-accordion-item.entry.esm.js","sources":["src/components/accordion/accordion.scss?tag=ifx-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx","src/components/accordion/accordionItem.scss?tag=ifx-accordion-item&encapsulation=shadow","src/components/accordion/accordionItem.tsx"],"sourcesContent":["// ifxAccordion.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.accordion-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n}","import { Component, h, Listen, Element, Prop } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-accordion',\n styleUrl: 'accordion.scss',\n shadow: { delegatesFocus: true },\n})\nexport class Accordion {\n @Element() el: HTMLElement;\n @Prop() autoCollapse: boolean = false;\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-accordion', await framework)\n }\n }\n\n @Listen('ifxOpen')\n async onItemOpen(event: CustomEvent) {\n if (this.autoCollapse) {\n const items = Array.from(this.el.querySelectorAll('ifx-accordion-item'));\n for (const item of items) {\n const itemElement = item as HTMLIfxAccordionItemElement;\n if (itemElement !== event.target && (await itemElement.open)) {\n itemElement.open = false;\n }\n }\n }\n }\n\n render() {\n return (\n <div class=\"accordion-wrapper\">\n <slot />\n </div>\n );\n }\n}\n","// ifxAccordionItem.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n\n.accordion-item {\n border-radius: 3px;\n transition: all 0.3s;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n\n}\n\n.accordion-title:focus {\n outline: none;\n}\n\n// workaround to add corner radius to outline\n.accordion-title:focus::after {\n content: '';\n display: block;\n position: absolute;\n top: -4px;\n bottom: -4px;\n left: -4px;\n right: -4px;\n border-radius: 5px;\n border: 2px solid tokens.$ifxColorOcean500;\n box-sizing: border-box;\n}\n\n.accordion-title:hover {\n border: 1px solid tokens.$ifxColorEngineering200;\n color: tokens.$ifxColorOcean600;\n}\n\n.accordion-title {\n display: flex;\n align-items: center;\n position: relative;\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n gap: tokens.$ifxSpace150;\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering200;\n cursor: pointer;\n margin: 4px 4px 0px;\n}\n\n.accordion-caption {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeL;\n}\n\n.accordion-content {\n gap: tokens.$ifxSpace100;\n overflow: hidden;\n height: 0;\n transition: height 0.3s ease;\n line-height: 24px;\n font-size: tokens.$ifxFontSizeM;\n font-weight: 400;\n}\n\n.inner-content {\n background-color: tokens.$ifxColorBaseWhite;\n padding: tokens.$ifxSpace200;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n align-self: stretch;\n margin: 0 4px 4px;\n border: 1px solid transparent;\n border-top: 1px solid transparent;\n}\n\n.accordion-icon {\n font-weight: bold;\n display: flex;\n transition: transform 0.3s;\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n\n }\n}\n\n\n.accordion-item.open .accordion-content {\n max-height: 1000px; // Arbitrary large value to allow content to expand\n}\n\n.accordion-item.open .accordion-icon {\n transform: rotate(-180deg);\n}\n\n.accordion-item.open .inner-content {\n border-color: tokens.$ifxColorEngineering200;\n border-top-color: transparent;\n transition: border-color 0s; \n}\n\n.accordion-item:not(.open) .inner-content {\n transition: border-color 0s 0.3s; \n}\n\n.inner-content {\n &.no-content { \n border: none;\n padding: 0;\n margin: 0;\n }\n}","//ifxAccordionItem\nimport { Component, Prop, h, State, Event, EventEmitter, Watch, Listen, Element } from '@stencil/core';\n\n@Component({\n tag: 'ifx-accordion-item',\n styleUrl: 'accordionItem.scss',\n shadow: true,\n})\nexport class AccordionItem {\n @Element() el;\n @Prop() caption: string;\n @Prop({\n mutable: true,\n })\n open: boolean = false;\n @Prop() AriaLevel = 3;\n @State() internalOpen: boolean = false;\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n private contentEl!: HTMLElement;\n private titleEl!: HTMLElement;\n private resizeObserver!: ResizeObserver;\n\n componentWillLoad() {\n this.internalOpen = this.open;\n }\n\n componentDidLoad() {\n this.checkSlotContent()\n this.openAccordionItem();\n this.contentEl = this.el.shadowRoot.querySelector('#accordion-content');\n if (this.contentEl) {\n this.attachResizeObserver();\n }\n }\n\n componentDidUpdate() {\n this.checkSlotContent()\n this.openAccordionItem();\n }\n\n @Watch('open')\n openChanged(newValue: boolean) {\n this.internalOpen = newValue;\n }\n\n toggleOpen() {\n this.internalOpen = !this.internalOpen;\n this.open = this.internalOpen;\n\n if (this.internalOpen) {\n this.ifxOpen.emit({ isOpen: this.internalOpen });\n } else {\n this.ifxClose.emit({ isClosed: !this.internalOpen });\n }\n }\n\n openAccordionItem() {\n if (this.internalOpen) {\n this.contentEl.style.height = `${this.contentEl.scrollHeight}px`;\n this.contentEl.style.overflow = 'hidden';\n } else {\n this.contentEl.style.height = '0';\n this.contentEl.style.overflow = 'hidden';\n }\n }\n\n getInnerContentWrapper() {\n const innerContentEl = this.el.shadowRoot.querySelector('.inner-content');\n return innerContentEl;\n }\n\n attachResizeObserver() {\n const innerContentEl = this.getInnerContentWrapper();\n\n if (innerContentEl) {\n this.resizeObserver = new ResizeObserver(() => {\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n });\n\n this.resizeObserver.observe(innerContentEl);\n }\n }\n\n @Listen('keydown')\n handleKeydown(ev: KeyboardEvent) {\n const path = ev.composedPath();\n\n if (!path.includes(this.titleEl)) {\n return;\n }\n\n switch (ev.key) {\n case 'Enter': // fallthrough\n case ' ': // space\n ev.preventDefault();\n this.toggleOpen();\n break;\n }\n }\n\n checkSlotContent() {\n const slot = this.el.shadowRoot.querySelector('slot') as HTMLSlotElement;\n const hasContent = slot.assignedNodes().length > 0;\n const innerContent = this.getInnerContentWrapper();\n if (!hasContent) {\n innerContent.classList.add('no-content');\n } else if (innerContent.classList.contains('no-content')) {\n innerContent.classList.remove('no-content');\n }\n }\n\n render() {\n return (\n <div class={`accordion-item ${this.internalOpen ? 'open' : ''}`}>\n <div\n role=\"button\"\n aria-expanded={this.internalOpen}\n aria-controls=\"accordion-content\"\n class=\"accordion-title\"\n onClick={() => this.toggleOpen()}\n tabindex=\"0\"\n ref={el => (this.titleEl = el as HTMLElement)}\n >\n <span aria-hidden=\"true\" role=\"heading\" aria-level={String(this.AriaLevel) as string} class=\"accordion-icon\">\n <ifx-icon icon=\"chevron-down-16\" />\n </span>\n <span id=\"accordion-caption\" class=\"accordion-caption\">\n {this.caption}\n </span>\n </div>\n <div id=\"accordion-content\" class=\"accordion-content\" ref={el => (this.contentEl = el as HTMLElement)} role=\"region\" aria-labelledby=\"accordion-caption\">\n <div class=\"inner-content\">\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ifx-accordion.ifx-accordion-item.entry.esm.js","sources":["src/components/accordion/accordion.scss?tag=ifx-accordion&encapsulation=shadow","src/components/accordion/accordion.tsx","src/components/accordion/accordionItem.scss?tag=ifx-accordion-item&encapsulation=shadow","src/components/accordion/accordionItem.tsx"],"sourcesContent":["// ifxAccordion.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.accordion-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n}","import { Component, h, Listen, Element, Prop } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-accordion',\n styleUrl: 'accordion.scss',\n shadow: { delegatesFocus: true },\n})\nexport class Accordion {\n @Element() el: HTMLElement;\n @Prop() autoCollapse: boolean = false;\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-accordion', await framework)\n }\n }\n\n @Listen('ifxOpen')\n async onItemOpen(event: CustomEvent) {\n if (this.autoCollapse) {\n const items = Array.from(this.el.querySelectorAll('ifx-accordion-item'));\n for (const item of items) {\n const itemElement = item as HTMLIfxAccordionItemElement;\n if (itemElement !== event.target && (await itemElement.open)) {\n itemElement.open = false;\n }\n }\n }\n }\n\n render() {\n return (\n <div class=\"accordion-wrapper\">\n <slot />\n </div>\n );\n }\n}\n","// ifxAccordionItem.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n\n.accordion-item {\n border-radius: 3px;\n transition: all 0.3s;\n font-family: var(--ifx-font-family) // tokens.$ifxFontFamilyBody;\n\n}\n\n.accordion-title:focus {\n outline: none;\n}\n\n// workaround to add corner radius to outline\n.accordion-title:focus::after {\n content: '';\n display: block;\n position: absolute;\n top: -4px;\n bottom: -4px;\n left: -4px;\n right: -4px;\n border-radius: 5px;\n border: 2px solid tokens.$ifxColorOcean500;\n box-sizing: border-box;\n}\n\n.accordion-title:hover {\n border: 1px solid tokens.$ifxColorEngineering200;\n color: tokens.$ifxColorOcean600;\n}\n\n.accordion-title {\n display: flex;\n align-items: center;\n position: relative;\n padding: tokens.$ifxSpace150 tokens.$ifxSpace200;\n gap: tokens.$ifxSpace150;\n color: tokens.$ifxColorOcean500;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering200;\n cursor: pointer;\n margin: 4px 4px 0px;\n}\n\n.accordion-caption {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeL;\n}\n\n.accordion-content {\n gap: tokens.$ifxSpace100;\n overflow: hidden;\n height: 0;\n transition: height 0.3s ease;\n line-height: 24px;\n font-size: tokens.$ifxFontSizeM;\n font-weight: 400;\n}\n\n.inner-content {\n background-color: tokens.$ifxColorBaseWhite;\n padding: tokens.$ifxSpace200;\n word-wrap: break-word;\n overflow-wrap: anywhere;\n align-self: stretch;\n margin: 0 4px 4px;\n border: 1px solid transparent;\n border-top: 1px solid transparent;\n}\n\n.accordion-icon {\n font-weight: bold;\n display: flex;\n transition: transform 0.3s;\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n\n }\n}\n\n\n.accordion-item.open .accordion-content {\n max-height: 1000px; // Arbitrary large value to allow content to expand\n}\n\n.accordion-item.open .accordion-icon {\n transform: rotate(-180deg);\n}\n\n.accordion-item.open .inner-content {\n border-color: tokens.$ifxColorEngineering200;\n border-top-color: transparent;\n transition: border-color 0s; \n}\n\n.accordion-item:not(.open) .inner-content {\n transition: border-color 0s 0.3s; \n}\n\n.inner-content {\n &.no-content { \n border: none;\n padding: 0;\n margin: 0;\n }\n}","//ifxAccordionItem\nimport { Component, Prop, h, State, Event, EventEmitter, Watch, Listen, Element } from '@stencil/core';\n\n@Component({\n tag: 'ifx-accordion-item',\n styleUrl: 'accordionItem.scss',\n shadow: true,\n})\nexport class AccordionItem {\n @Element() el;\n @Prop() caption: string;\n @Prop({\n mutable: true,\n })\n open: boolean = false;\n @Prop() AriaLevel = 3;\n @State() internalOpen: boolean = false;\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n private contentEl!: HTMLElement;\n private titleEl!: HTMLElement;\n private resizeObserver!: ResizeObserver;\n\n componentWillLoad() {\n this.internalOpen = this.open;\n }\n\n componentDidLoad() {\n this.checkSlotContent()\n this.openAccordionItem();\n this.contentEl = this.el.shadowRoot.querySelector('#accordion-content');\n if (this.contentEl) {\n this.attachResizeObserver();\n }\n }\n\n componentDidUpdate() {\n this.checkSlotContent()\n this.openAccordionItem();\n }\n\n @Watch('open')\n openChanged(newValue: boolean) {\n this.internalOpen = newValue;\n }\n\n toggleOpen() {\n this.internalOpen = !this.internalOpen;\n this.open = this.internalOpen;\n\n if (this.internalOpen) {\n this.ifxOpen.emit({ isOpen: this.internalOpen });\n } else {\n this.ifxClose.emit({ isClosed: !this.internalOpen });\n }\n }\n\n openAccordionItem() {\n if (this.internalOpen) {\n this.contentEl.style.height = `${this.contentEl.scrollHeight}px`;\n this.contentEl.style.overflow = 'hidden';\n } else {\n this.contentEl.style.height = '0';\n this.contentEl.style.overflow = 'hidden';\n }\n }\n\n getInnerContentWrapper() {\n const innerContentEl = this.el.shadowRoot.querySelector('.inner-content');\n return innerContentEl;\n }\n\n attachResizeObserver() {\n const innerContentEl = this.getInnerContentWrapper();\n\n if (innerContentEl) {\n this.resizeObserver = new ResizeObserver(() => {\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n });\n\n this.resizeObserver.observe(innerContentEl);\n }\n }\n\n @Listen('keydown')\n handleKeydown(ev: KeyboardEvent) {\n const path = ev.composedPath();\n\n if (!path.includes(this.titleEl)) {\n return;\n }\n\n switch (ev.key) {\n case 'Enter': // fallthrough\n case ' ': // space\n ev.preventDefault();\n this.toggleOpen();\n break;\n }\n }\n\n checkSlotContent() {\n const slot = this.el.shadowRoot.querySelector('slot') as HTMLSlotElement;\n const hasContent = slot.assignedNodes().length > 0;\n const innerContent = this.getInnerContentWrapper();\n if (!hasContent) {\n innerContent.classList.add('no-content');\n } else if (innerContent.classList.contains('no-content')) {\n innerContent.classList.remove('no-content');\n }\n }\n\n render() {\n return (\n <div class={`accordion-item ${this.internalOpen ? 'open' : ''}`}>\n <div\n role=\"button\"\n aria-expanded={this.internalOpen}\n aria-controls=\"accordion-content\"\n class=\"accordion-title\"\n onClick={() => this.toggleOpen()}\n tabindex=\"0\"\n ref={el => (this.titleEl = el as HTMLElement)}\n >\n <span aria-hidden=\"true\" role=\"heading\" aria-level={String(this.AriaLevel) as string} class=\"accordion-icon\">\n <ifx-icon icon=\"chevron-down-16\" />\n </span>\n <span id=\"accordion-caption\" class=\"accordion-caption\">\n {this.caption}\n </span>\n </div>\n <div id=\"accordion-content\" class=\"accordion-content\" ref={el => (this.contentEl = el as HTMLElement)} role=\"region\" aria-labelledby=\"accordion-caption\">\n <div class=\"inner-content\">\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-action-list-item.entry.esm.js","sources":["src/components/action-list/action-list-item.scss?tag=ifx-action-list-item&encapsulation=shadow","src/components/action-list/action-list-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.action-list-item {\n display: flex;\n align-items: center;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n background: tokens.$ifxColorBaseWhite;\n transition: background-color 0.2s ease;\n cursor: default;\n\n &--clickable {\n cursor: pointer;\n\n &:hover:not(.action-list-item--disabled) {\n background: tokens.$ifxColorEngineering100;\n }\n\n &:focus:not(.action-list-item--disabled) {\n outline: none;\n //outline: 2px solid tokens.$ifxColorOcean500;\n //outline-offset: -2px;\n background: tokens.$ifxColorEngineering100;\n }\n\n &:active:not(.action-list-item--disabled) {\n background: tokens.$ifxColorEngineering200;\n }\n }\n\n &--disabled {\n // Apply disabled color to all slotted icons\n ::slotted(ifx-icon) {\n color: tokens.$ifxColorEngineering300;\n }\n\n // Also apply to nested icons within slotted elements\n ::slotted(*) {\n ifx-icon {\n color: tokens.$ifxColorEngineering300;\n }\n }\n }\n\n &__leading {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: tokens.$ifxSpace200;\n flex-shrink: 0;\n }\n\n &__content {\n flex: 1;\n min-width: 0; // Allows text to truncate\n }\n\n &__title {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n color: tokens.$ifxColorBaseBlack;\n\n // Truncate long titles\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n // Disabled state\n .action-list-item--disabled & {\n color: tokens.$ifxColorEngineering300;\n }\n }\n\n &__description {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorEngineering500;\n margin-top: tokens.$ifxSpace25;\n\n // Disabled state\n .action-list-item--disabled & {\n color: tokens.$ifxColorEngineering300;\n }\n }\n\n &__trailing {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-left: tokens.$ifxSpace200;\n flex-shrink: 0;\n gap: 16px;\n }\n}","import { Component, h, Prop, Element, Event, EventEmitter, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n\nexport interface ActionListItemClickEvent {\n value?: string;\n href?: string;\n target?: string;\n component?: ActionListItem;\n}\n\n@Component({\n tag: 'ifx-action-list-item',\n styleUrl: 'action-list-item.scss',\n shadow: true,\n})\nexport class ActionListItem {\n @Element() host: HTMLElement;\n\n /**\n * The title text displayed in the item\n */\n @Prop() itemTitle: string;\n\n /**\n * The description text displayed below the title\n */\n @Prop() description?: string;\n\n /**\n * Value associated with this item\n */\n @Prop() value?: string;\n\n /**\n * URL to navigate to when item is clicked\n */\n @Prop() href?: string;\n\n /**\n * Target for the link navigation\n * @default '_self'\n */\n @Prop() target: string = '_self';\n\n /**\n * Controls whether the item is disabled\n * @default false\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Aria label for accessibility support\n */\n @Prop() itemAriaLabel?: string;\n\n /**\n * Event emitted when the main item area is clicked\n */\n @Event() ifxActionListItemClick: EventEmitter<ActionListItemClickEvent>;\n\n @Watch('disabled')\n onDisabledChange() {\n // Update interactive elements when disabled state changes\n this.updateSlotElementsDisabledState();\n }\n\n private handleMainClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n // Check if clicked element is inside leading or trailing areas\n const leadingElement = this.host.shadowRoot?.querySelector('.action-list-item__leading');\n const trailingElement = this.host.shadowRoot?.querySelector('.action-list-item__trailing');\n\n if (leadingElement?.contains(event.target as Node) || trailingElement?.contains(event.target as Node)) {\n return; // Don't trigger main click if clicking on leading/trailing areas\n }\n\n // Always emit main event when clicking on content area (text), regardless of interactive elements\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate (Link mode)\n // If no href is provided, only the event is emitted (Event mode)\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private handleLeadingClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const target = event.target as HTMLElement;\n\n // Check if the clicked element or any of its parents is an interactive component\n let currentElement = target;\n while (currentElement && currentElement !== this.host) {\n if (this.isInteractiveElement(currentElement)) {\n // Interactive element clicked - stop propagation to prevent main event\n event.stopPropagation();\n return;\n }\n currentElement = currentElement.parentElement;\n }\n\n // Non-interactive element clicked - trigger main action\n event.stopPropagation();\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private handleTrailingClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const target = event.target as HTMLElement;\n\n // Check if the clicked element or any of its parents is an interactive component\n let currentElement = target;\n while (currentElement && currentElement !== this.host) {\n if (this.isInteractiveElement(currentElement)) {\n // Interactive element clicked - stop propagation to prevent main event\n event.stopPropagation();\n return;\n }\n currentElement = currentElement.parentElement;\n }\n\n // Non-interactive element clicked - trigger main action\n event.stopPropagation();\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private isInteractiveElement = (element: HTMLElement): boolean => {\n // Get the tag name, handling both custom elements and standard HTML\n const tagName = element.tagName.toUpperCase();\n\n // List of Infineon components that should block main event\n const interactiveInfineonComponents = [\n 'IFX-BUTTON',\n 'IFX-CHECKBOX',\n 'IFX-SWITCH'\n ];\n\n // Check if it's an interactive Infineon component\n return interactiveInfineonComponents.includes(tagName);\n };\n\n private handleMainKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n // Always trigger main action via keyboard, regardless of interactive elements\n this.handleMainClick(event as any);\n }\n };\n\n private handleLeadingKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n const leadingSlot = this.host.shadowRoot?.querySelector('slot[name=\"leading\"]') as HTMLSlotElement;\n const assignedElements = leadingSlot?.assignedElements() || [];\n\n // Find first interactive element and activate it\n const firstInteractive = assignedElements.find(el =>\n this.isInteractiveElement(el as HTMLElement)\n ) as HTMLElement;\n\n if (firstInteractive) {\n firstInteractive.focus();\n firstInteractive.click();\n }\n }\n };\n\n private handleTrailingKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n const trailingSlot = this.host.shadowRoot?.querySelector('slot[name=\"trailing\"]') as HTMLSlotElement;\n const assignedElements = trailingSlot?.assignedElements() || [];\n\n // Find first interactive element and activate it\n const firstInteractive = assignedElements.find(el =>\n this.isInteractiveElement(el as HTMLElement)\n ) as HTMLElement;\n\n if (firstInteractive) {\n firstInteractive.focus();\n firstInteractive.click();\n }\n }\n };\n\n private hasSlotContent(slotName: string): boolean {\n const slot = this.host.querySelector(`[slot=\"${slotName}\"]`);\n return !!slot;\n }\n\n componentDidLoad() {\n // Apply disabled state to interactive elements in slots\n this.updateSlotElementsDisabledState();\n }\n\n componentDidUpdate() {\n // Apply disabled state to interactive elements in slots when disabled prop changes\n this.updateSlotElementsDisabledState();\n }\n\n private updateSlotElementsDisabledState = () => {\n // Only handle interactive components that should be disabled\n const interactiveComponents = ['ifx-checkbox', 'ifx-switch', 'ifx-button'];\n\n // Get all slotted elements\n const slots = this.host.querySelectorAll('[slot]');\n\n slots.forEach(slottedElement => {\n // Check if the slotted element itself is an interactive component\n if (interactiveComponents.includes(slottedElement.tagName.toLowerCase())) {\n this.setElementDisabledState(slottedElement as HTMLElement);\n }\n\n // Also check for nested interactive components within the slotted element\n interactiveComponents.forEach(componentTag => {\n const nestedElements = slottedElement.querySelectorAll(componentTag);\n nestedElements.forEach(nestedElement => {\n this.setElementDisabledState(nestedElement as HTMLElement);\n });\n });\n });\n };\n\n private setElementDisabledState = (element: HTMLElement) => {\n if (this.disabled) {\n element.setAttribute('disabled', 'true');\n } else {\n element.removeAttribute('disabled');\n }\n }; render() {\n const isClickable = !this.disabled && (this.href || this.value);\n const ariaLabel = this.itemAriaLabel || `${this.itemTitle}${this.description ? ` - ${this.description}` : ''}`;\n const hasLeadingContent = this.hasSlotContent('leading');\n const hasTrailingContent = this.hasSlotContent('trailing');\n\n return (\n <div\n class={classNames(\n 'action-list-item',\n this.disabled && 'action-list-item--disabled',\n isClickable && 'action-list-item--clickable'\n )}\n role=\"listitem\"\n tabIndex={isClickable ? 0 : -1}\n aria-label={ariaLabel}\n aria-disabled={this.disabled ? 'true' : undefined}\n onClick={this.handleMainClick}\n onKeyDown={this.handleMainKeyDown}\n >\n {/* Leading Item Container - only render if content exists */}\n {hasLeadingContent && (\n <div\n class=\"action-list-item__leading\"\n onClick={this.handleLeadingClick}\n onKeyDown={this.handleLeadingKeyDown}\n >\n <slot name=\"leading\"></slot>\n </div>\n )}\n\n {/* Text Container */}\n <div class=\"action-list-item__content\">\n <div class=\"action-list-item__title\">\n {this.itemTitle}\n </div>\n {this.description && (\n <div class=\"action-list-item__description\">\n {this.description}\n </div>\n )}\n </div>\n\n {/* Trailing Item Container - only render if content exists */}\n {hasTrailingContent && (\n <div\n class=\"action-list-item__trailing\"\n onClick={this.handleTrailingClick}\n onKeyDown={this.handleTrailingKeyDown}\n >\n <slot name=\"trailing\"></slot>\n </div>\n )}\n </div>\n );\n }\n}"],"names":[],"mappings":";;;;AAAA,MAAM,iBAAiB,GAAG,wyCAAwyC;;MCerzC,cAAc,GAAA,MAAA;AAL3B,IAAA,WAAA,CAAA,OAAA,EAAA;;;AA4BE;;;AAGG;AACK,QAAA,IAAM,CAAA,MAAA,GAAW,OAAO;AAEhC;;;AAGG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AAkBzB,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,KAAiB,KAAI;;AAC9C,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,KAAK,CAAC,cAAc,EAAE;gBACtB,KAAK,CAAC,eAAe,EAAE;gBACvB;;;AAIF,YAAA,MAAM,cAAc,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,4BAA4B,CAAC;AACxF,YAAA,MAAM,eAAe,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,6BAA6B,CAAC;YAE1F,IAAI,CAAA,cAAc,KAAd,IAAA,IAAA,cAAc,KAAd,MAAA,GAAA,MAAA,GAAA,cAAc,CAAE,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,MAAI,eAAe,KAAA,IAAA,IAAf,eAAe,KAAA,MAAA,GAAA,MAAA,GAAf,eAAe,CAAE,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,CAAA,EAAE;AACrG,gBAAA,OAAO;;;AAIT,YAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,gBAAA,SAAS,EAAE,IAAI;AAChB,aAAA,CAAC;;;AAIF,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,gBAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;oBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;;qBAC9B;oBACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;;;AAGtC,SAAC;AAEO,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,KAAiB,KAAI;AACjD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,KAAK,CAAC,cAAc,EAAE;gBACtB,KAAK,CAAC,eAAe,EAAE;gBACvB;;AAGF,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB;;YAG1C,IAAI,cAAc,GAAG,MAAM;YAC3B,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,IAAI,EAAE;AACrD,gBAAA,IAAI,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,EAAE;;oBAE7C,KAAK,CAAC,eAAe,EAAE;oBACvB;;AAEF,gBAAA,cAAc,GAAG,cAAc,CAAC,aAAa;;;YAI/C,KAAK,CAAC,eAAe,EAAE;AACvB,YAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,gBAAA,SAAS,EAAE,IAAI;AAChB,aAAA,CAAC;;AAGF,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,gBAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;oBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;;qBAC9B;oBACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;;;AAGtC,SAAC;AAEO,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,KAAiB,KAAI;AAClD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,KAAK,CAAC,cAAc,EAAE;gBACtB,KAAK,CAAC,eAAe,EAAE;gBACvB;;AAGF,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB;;YAG1C,IAAI,cAAc,GAAG,MAAM;YAC3B,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,IAAI,EAAE;AACrD,gBAAA,IAAI,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,EAAE;;oBAE7C,KAAK,CAAC,eAAe,EAAE;oBACvB;;AAEF,gBAAA,cAAc,GAAG,cAAc,CAAC,aAAa;;;YAI/C,KAAK,CAAC,eAAe,EAAE;AACvB,YAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,gBAAA,SAAS,EAAE,IAAI;AAChB,aAAA,CAAC;;AAGF,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,gBAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;oBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;;qBAC9B;oBACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;;;AAGtC,SAAC;AAEO,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,OAAoB,KAAa;;YAE/D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE;;AAG7C,YAAA,MAAM,6BAA6B,GAAG;gBACpC,YAAY;gBACZ,cAAc;gBACd;aACD;;AAGD,YAAA,OAAO,6BAA6B,CAAC,QAAQ,CAAC,OAAO,CAAC;AACxD,SAAC;AAEO,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,KAAoB,KAAI;YACnD,IAAI,IAAI,CAAC,QAAQ;gBAAE;AAEnB,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;;AAGtB,gBAAA,IAAI,CAAC,eAAe,CAAC,KAAY,CAAC;;AAEtC,SAAC;AAEO,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,KAAoB,KAAI;;YACtD,IAAI,IAAI,CAAC,QAAQ;gBAAE;AAEnB,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;AAEtB,gBAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,sBAAsB,CAAoB;gBAClG,MAAM,gBAAgB,GAAG,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,MAAA,GAAA,MAAA,GAAA,WAAW,CAAE,gBAAgB,EAAE,KAAI,EAAE;;AAG9D,gBAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAC/C,IAAI,CAAC,oBAAoB,CAAC,EAAiB,CAAC,CAC9B;gBAEhB,IAAI,gBAAgB,EAAE;oBACpB,gBAAgB,CAAC,KAAK,EAAE;oBACxB,gBAAgB,CAAC,KAAK,EAAE;;;AAG9B,SAAC;AAEO,QAAA,IAAA,CAAA,qBAAqB,GAAG,CAAC,KAAoB,KAAI;;YACvD,IAAI,IAAI,CAAC,QAAQ;gBAAE;AAEnB,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;AAEtB,gBAAA,MAAM,YAAY,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,CAAC,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,aAAa,CAAC,uBAAuB,CAAoB;gBACpG,MAAM,gBAAgB,GAAG,CAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,MAAA,GAAA,MAAA,GAAA,YAAY,CAAE,gBAAgB,EAAE,KAAI,EAAE;;AAG/D,gBAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAC/C,IAAI,CAAC,oBAAoB,CAAC,EAAiB,CAAC,CAC9B;gBAEhB,IAAI,gBAAgB,EAAE;oBACpB,gBAAgB,CAAC,KAAK,EAAE;oBACxB,gBAAgB,CAAC,KAAK,EAAE;;;AAG9B,SAAC;AAiBO,QAAA,IAA+B,CAAA,+BAAA,GAAG,MAAK;;YAE7C,MAAM,qBAAqB,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC;;YAG1E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;AAElD,YAAA,KAAK,CAAC,OAAO,CAAC,cAAc,IAAG;;AAE7B,gBAAA,IAAI,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE;AACxE,oBAAA,IAAI,CAAC,uBAAuB,CAAC,cAA6B,CAAC;;;AAI7D,gBAAA,qBAAqB,CAAC,OAAO,CAAC,YAAY,IAAG;oBAC3C,MAAM,cAAc,GAAG,cAAc,CAAC,gBAAgB,CAAC,YAAY,CAAC;AACpE,oBAAA,cAAc,CAAC,OAAO,CAAC,aAAa,IAAG;AACrC,wBAAA,IAAI,CAAC,uBAAuB,CAAC,aAA4B,CAAC;AAC5D,qBAAC,CAAC;AACJ,iBAAC,CAAC;AACJ,aAAC,CAAC;AACJ,SAAC;AAEO,QAAA,IAAA,CAAA,uBAAuB,GAAG,CAAC,OAAoB,KAAI;AACzD,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC;;iBACnC;AACL,gBAAA,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC;;AAEvC,SAAC;AAwDF;IA7RC,gBAAgB,GAAA;;QAEd,IAAI,CAAC,+BAA+B,EAAE;;AAuLhC,IAAA,cAAc,CAAC,QAAgB,EAAA;AACrC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAU,OAAA,EAAA,QAAQ,CAAI,EAAA,CAAA,CAAC;QAC5D,OAAO,CAAC,CAAC,IAAI;;IAGf,gBAAgB,GAAA;;QAEd,IAAI,CAAC,+BAA+B,EAAE;;IAGxC,kBAAkB,GAAA;;QAEhB,IAAI,CAAC,+BAA+B,EAAE;;IAgCpC,MAAM,GAAA;AACR,QAAA,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,EAAG,IAAI,CAAC,WAAW,GAAG,CAAM,GAAA,EAAA,IAAI,CAAC,WAAW,CAAE,CAAA,GAAG,EAAE,CAAA,CAAE;QAC9G,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;QACxD,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAE1D,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,UAAU,CACf,kBAAkB,EAClB,IAAI,CAAC,QAAQ,IAAI,4BAA4B,EAC7C,WAAW,IAAI,6BAA6B,CAC7C,EACD,IAAI,EAAC,UAAU,EACf,QAAQ,EAAE,WAAW,GAAG,CAAC,GAAG,EAAE,EAAA,YAAA,EAClB,SAAS,EAAA,eAAA,EACN,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,SAAS,EACjD,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAA,EAGhC,iBAAiB,KAChB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,2BAA2B,EACjC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAChC,SAAS,EAAE,IAAI,CAAC,oBAAoB,EAAA,EAEpC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,SAAS,EAAA,CAAQ,CACxB,CACP,EAGD,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,yBAAyB,IACjC,IAAI,CAAC,SAAS,CACX,EACL,IAAI,CAAC,WAAW,KACf,4DAAK,KAAK,EAAC,+BAA+B,EAAA,EACvC,IAAI,CAAC,WAAW,CACb,CACP,CACG,EAGL,kBAAkB,KACjB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EACjC,SAAS,EAAE,IAAI,CAAC,qBAAqB,EAAA,EAErC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,UAAU,EAAA,CAAQ,CACzB,CACP,CACG;;;;;;;;;;;"}
1
+ {"version":3,"file":"ifx-action-list-item.entry.esm.js","sources":["src/components/action-list/action-list-item.scss?tag=ifx-action-list-item&encapsulation=shadow","src/components/action-list/action-list-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.action-list-item {\n display: flex;\n align-items: center;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n background: tokens.$ifxColorBaseWhite;\n transition: background-color 0.2s ease;\n cursor: default;\n\n &--clickable {\n cursor: pointer;\n\n &:hover:not(.action-list-item--disabled) {\n background: tokens.$ifxColorEngineering100;\n }\n\n &:focus:not(.action-list-item--disabled) {\n outline: none;\n //outline: 2px solid tokens.$ifxColorOcean500;\n //outline-offset: -2px;\n background: tokens.$ifxColorEngineering100;\n }\n\n &:active:not(.action-list-item--disabled) {\n background: tokens.$ifxColorEngineering200;\n }\n }\n\n &--disabled {\n // Apply disabled color to all slotted icons\n ::slotted(ifx-icon) {\n color: tokens.$ifxColorEngineering300;\n }\n\n // Also apply to nested icons within slotted elements\n ::slotted(*) {\n ifx-icon {\n color: tokens.$ifxColorEngineering300;\n }\n }\n }\n\n &__leading {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: tokens.$ifxSpace200;\n flex-shrink: 0;\n }\n\n &__content {\n flex: 1;\n min-width: 0; // Allows text to truncate\n }\n\n &__title {\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n color: tokens.$ifxColorBaseBlack;\n\n // Truncate long titles\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n // Disabled state\n .action-list-item--disabled & {\n color: tokens.$ifxColorEngineering300;\n }\n }\n\n &__description {\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorEngineering500;\n margin-top: tokens.$ifxSpace25;\n\n // Disabled state\n .action-list-item--disabled & {\n color: tokens.$ifxColorEngineering300;\n }\n }\n\n &__trailing {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-left: tokens.$ifxSpace200;\n flex-shrink: 0;\n gap: 16px;\n }\n}","import { Component, h, Prop, Element, Event, EventEmitter, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n\nexport interface ActionListItemClickEvent {\n value?: string;\n href?: string;\n target?: string;\n component?: ActionListItem;\n}\n\n@Component({\n tag: 'ifx-action-list-item',\n styleUrl: 'action-list-item.scss',\n shadow: true,\n})\nexport class ActionListItem {\n @Element() host: HTMLElement;\n\n /**\n * The title text displayed in the item\n */\n @Prop() itemTitle: string;\n\n /**\n * The description text displayed below the title\n */\n @Prop() description?: string;\n\n /**\n * Value associated with this item\n */\n @Prop() value?: string;\n\n /**\n * URL to navigate to when item is clicked\n */\n @Prop() href?: string;\n\n /**\n * Target for the link navigation\n * @default '_self'\n */\n @Prop() target: string = '_self';\n\n /**\n * Controls whether the item is disabled\n * @default false\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Aria label for accessibility support\n */\n @Prop() itemAriaLabel?: string;\n\n /**\n * Event emitted when the main item area is clicked\n */\n @Event() ifxActionListItemClick: EventEmitter<ActionListItemClickEvent>;\n\n @Watch('disabled')\n onDisabledChange() {\n // Update interactive elements when disabled state changes\n this.updateSlotElementsDisabledState();\n }\n\n private handleMainClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n // Check if clicked element is inside leading or trailing areas\n const leadingElement = this.host.shadowRoot?.querySelector('.action-list-item__leading');\n const trailingElement = this.host.shadowRoot?.querySelector('.action-list-item__trailing');\n\n if (leadingElement?.contains(event.target as Node) || trailingElement?.contains(event.target as Node)) {\n return; // Don't trigger main click if clicking on leading/trailing areas\n }\n\n // Always emit main event when clicking on content area (text), regardless of interactive elements\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate (Link mode)\n // If no href is provided, only the event is emitted (Event mode)\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private handleLeadingClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const target = event.target as HTMLElement;\n\n // Check if the clicked element or any of its parents is an interactive component\n let currentElement = target;\n while (currentElement && currentElement !== this.host) {\n if (this.isInteractiveElement(currentElement)) {\n // Interactive element clicked - stop propagation to prevent main event\n event.stopPropagation();\n return;\n }\n currentElement = currentElement.parentElement;\n }\n\n // Non-interactive element clicked - trigger main action\n event.stopPropagation();\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private handleTrailingClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n const target = event.target as HTMLElement;\n\n // Check if the clicked element or any of its parents is an interactive component\n let currentElement = target;\n while (currentElement && currentElement !== this.host) {\n if (this.isInteractiveElement(currentElement)) {\n // Interactive element clicked - stop propagation to prevent main event\n event.stopPropagation();\n return;\n }\n currentElement = currentElement.parentElement;\n }\n\n // Non-interactive element clicked - trigger main action\n event.stopPropagation();\n this.ifxActionListItemClick.emit({\n value: this.value,\n href: this.href,\n target: this.target,\n component: this,\n });\n\n // If href is provided, automatically navigate\n if (this.href) {\n if (this.target === '_blank') {\n window.open(this.href, this.target);\n } else {\n window.location.href = this.href;\n }\n }\n };\n\n private isInteractiveElement = (element: HTMLElement): boolean => {\n // Get the tag name, handling both custom elements and standard HTML\n const tagName = element.tagName.toUpperCase();\n\n // List of Infineon components that should block main event\n const interactiveInfineonComponents = [\n 'IFX-BUTTON',\n 'IFX-CHECKBOX',\n 'IFX-SWITCH'\n ];\n\n // Check if it's an interactive Infineon component\n return interactiveInfineonComponents.includes(tagName);\n };\n\n private handleMainKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n // Always trigger main action via keyboard, regardless of interactive elements\n this.handleMainClick(event as any);\n }\n };\n\n private handleLeadingKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n const leadingSlot = this.host.shadowRoot?.querySelector('slot[name=\"leading\"]') as HTMLSlotElement;\n const assignedElements = leadingSlot?.assignedElements() || [];\n\n // Find first interactive element and activate it\n const firstInteractive = assignedElements.find(el =>\n this.isInteractiveElement(el as HTMLElement)\n ) as HTMLElement;\n\n if (firstInteractive) {\n firstInteractive.focus();\n firstInteractive.click();\n }\n }\n };\n\n private handleTrailingKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n\n const trailingSlot = this.host.shadowRoot?.querySelector('slot[name=\"trailing\"]') as HTMLSlotElement;\n const assignedElements = trailingSlot?.assignedElements() || [];\n\n // Find first interactive element and activate it\n const firstInteractive = assignedElements.find(el =>\n this.isInteractiveElement(el as HTMLElement)\n ) as HTMLElement;\n\n if (firstInteractive) {\n firstInteractive.focus();\n firstInteractive.click();\n }\n }\n };\n\n private hasSlotContent(slotName: string): boolean {\n const slot = this.host.querySelector(`[slot=\"${slotName}\"]`);\n return !!slot;\n }\n\n componentDidLoad() {\n // Apply disabled state to interactive elements in slots\n this.updateSlotElementsDisabledState();\n }\n\n componentDidUpdate() {\n // Apply disabled state to interactive elements in slots when disabled prop changes\n this.updateSlotElementsDisabledState();\n }\n\n private updateSlotElementsDisabledState = () => {\n // Only handle interactive components that should be disabled\n const interactiveComponents = ['ifx-checkbox', 'ifx-switch', 'ifx-button'];\n\n // Get all slotted elements\n const slots = this.host.querySelectorAll('[slot]');\n\n slots.forEach(slottedElement => {\n // Check if the slotted element itself is an interactive component\n if (interactiveComponents.includes(slottedElement.tagName.toLowerCase())) {\n this.setElementDisabledState(slottedElement as HTMLElement);\n }\n\n // Also check for nested interactive components within the slotted element\n interactiveComponents.forEach(componentTag => {\n const nestedElements = slottedElement.querySelectorAll(componentTag);\n nestedElements.forEach(nestedElement => {\n this.setElementDisabledState(nestedElement as HTMLElement);\n });\n });\n });\n };\n\n private setElementDisabledState = (element: HTMLElement) => {\n if (this.disabled) {\n element.setAttribute('disabled', 'true');\n } else {\n element.removeAttribute('disabled');\n }\n }; render() {\n const isClickable = !this.disabled && (this.href || this.value);\n const ariaLabel = this.itemAriaLabel || `${this.itemTitle}${this.description ? ` - ${this.description}` : ''}`;\n const hasLeadingContent = this.hasSlotContent('leading');\n const hasTrailingContent = this.hasSlotContent('trailing');\n\n return (\n <div\n class={classNames(\n 'action-list-item',\n this.disabled && 'action-list-item--disabled',\n isClickable && 'action-list-item--clickable'\n )}\n role=\"listitem\"\n tabIndex={isClickable ? 0 : -1}\n aria-label={ariaLabel}\n aria-disabled={this.disabled ? 'true' : undefined}\n onClick={this.handleMainClick}\n onKeyDown={this.handleMainKeyDown}\n >\n {/* Leading Item Container - only render if content exists */}\n {hasLeadingContent && (\n <div\n class=\"action-list-item__leading\"\n onClick={this.handleLeadingClick}\n onKeyDown={this.handleLeadingKeyDown}\n >\n <slot name=\"leading\"></slot>\n </div>\n )}\n\n {/* Text Container */}\n <div class=\"action-list-item__content\">\n <div class=\"action-list-item__title\">\n {this.itemTitle}\n </div>\n {this.description && (\n <div class=\"action-list-item__description\">\n {this.description}\n </div>\n )}\n </div>\n\n {/* Trailing Item Container - only render if content exists */}\n {hasTrailingContent && (\n <div\n class=\"action-list-item__trailing\"\n onClick={this.handleTrailingClick}\n onKeyDown={this.handleTrailingKeyDown}\n >\n <slot name=\"trailing\"></slot>\n </div>\n )}\n </div>\n );\n }\n}"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-action-list.entry.esm.js","sources":["src/components/action-list/action-list.scss?tag=ifx-action-list&encapsulation=shadow","src/components/action-list/action-list.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.action-list {\n background: tokens.$ifxColorBaseWhite;\n border-radius: tokens.$ifxBorderRadiusNone;\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering200;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}","import { Component, h, Prop, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-action-list',\n styleUrl: 'action-list.scss',\n shadow: true,\n})\nexport class ActionList {\n @Element() el: HTMLElement;\n\n /**\n * Aria label for accessibility support\n */\n @Prop() listAriaLabel?: string;\n\n async componentDidLoad() {\n if (!isNestedInIfxComponent(this.el)) {\n const framework = detectFramework();\n trackComponent('ifx-action-list', await framework);\n }\n }\n\n render() {\n return (\n <div\n class=\"action-list\"\n role=\"list\"\n aria-label={this.listAriaLabel}\n >\n <slot></slot>\n </div>\n );\n }\n}"],"names":[],"mappings":";;;;AAAA,MAAM,aAAa,GAAG,+LAA+L;;MCUxM,UAAU,GAAA,MAAA;;;;AAQrB,IAAA,MAAM,gBAAgB,GAAA;QACpB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACpC,YAAA,MAAM,SAAS,GAAG,eAAe,EAAE;AACnC,YAAA,cAAc,CAAC,iBAAiB,EAAE,MAAM,SAAS,CAAC;;;IAItD,MAAM,GAAA;AACJ,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,aAAa,EACnB,IAAI,EAAC,MAAM,EAAA,YAAA,EACC,IAAI,CAAC,aAAa,EAAA,EAE9B,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;;"}
1
+ {"version":3,"file":"ifx-action-list.entry.esm.js","sources":["src/components/action-list/action-list.scss?tag=ifx-action-list&encapsulation=shadow","src/components/action-list/action-list.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.action-list {\n background: tokens.$ifxColorBaseWhite;\n border-radius: tokens.$ifxBorderRadiusNone;\n border: tokens.$ifxBorderWidth12 solid tokens.$ifxColorEngineering200;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}","import { Component, h, Prop, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-action-list',\n styleUrl: 'action-list.scss',\n shadow: true,\n})\nexport class ActionList {\n @Element() el: HTMLElement;\n\n /**\n * Aria label for accessibility support\n */\n @Prop() listAriaLabel?: string;\n\n async componentDidLoad() {\n if (!isNestedInIfxComponent(this.el)) {\n const framework = detectFramework();\n trackComponent('ifx-action-list', await framework);\n }\n }\n\n render() {\n return (\n <div\n class=\"action-list\"\n role=\"list\"\n aria-label={this.listAriaLabel}\n >\n <slot></slot>\n </div>\n );\n }\n}"],"names":[],"mappings":";;;;AAAA,MAAM,aAAa,GAAG,6LAA6L;;MCUtM,UAAU,GAAA,MAAA;;;;AAQrB,IAAA,MAAM,gBAAgB,GAAA;QACpB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACpC,YAAA,MAAM,SAAS,GAAG,eAAe,EAAE;AACnC,YAAA,cAAc,CAAC,iBAAiB,EAAE,MAAM,SAAS,CAAC;;;IAItD,MAAM,GAAA;AACJ,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,aAAa,EACnB,IAAI,EAAC,MAAM,EAAA,YAAA,EACC,IAAI,CAAC,aAAa,EAAA,EAE9B,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-alert.ifx-template.entry.esm.js","sources":["src/components/alert/alert.scss?tag=ifx-alert&encapsulation=shadow","src/components/alert/alert.tsx","src/components/templates/template/template.scss?tag=ifx-template&encapsulation=shadow","src/components/templates/template/template.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.alert__info-wrapper {\n display: flex;\n padding: 16px 24px;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n\n & .info__text-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n width: 100%;\n\n & .info__headline-wrapper {\n display: -webkit-box;\n -webkit-line-clamp: 1;\n line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n & .info__headline-wrapper,\n .info__description-wrapper {\n color: #1D1D1D;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px;\n\n ::slotted(p) {\n padding: 0;\n margin: 0;\n }\n }\n\n & .info__description-wrapper {\n font-weight: 400;\n }\n }\n\n & .close-icon-wrapper {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: flex-start;\n //min-width: tokens.$ifxSize500;\n\n & button {\n all: unset;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 0;\n color: tokens.$ifxColorBaseBlack;\n height: tokens.$ifxSize300;\n width: tokens.$ifxSize300;\n\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n }\n }\n}\n\n.alert {\n display: flex;\n border: 1px solid tokens.$ifxColorOcean500;\n border-radius: tokens.$ifxBorderRadius12;\n color: tokens.$ifxColorBaseBlack;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n\n\n & .close-icon-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: tokens.$ifxSize500;\n\n & button {\n all: unset;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 0;\n color: tokens.$ifxColorBaseBlack;\n height: tokens.$ifxSize300;\n width: tokens.$ifxSize300;\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n }\n }\n\n & .icon-wrapper {\n position: relative;\n min-width: tokens.$ifxSize600;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: tokens.$ifxColorOcean500;\n }\n\n & .alert-text {\n font-size: 16px;\n width: 100%;\n padding: 12px 0px 12px 12px;\n color: tokens.$ifxColorBaseBlack;\n\n white-space: pre-wrap;\n /* wraps text at spaces and within words */\n word-wrap: break-word;\n /* breaks text within a word if necessary */\n overflow-wrap: anywhere;\n /* breaks text at arbitrary points when needed */\n }\n\n &.primary {\n border: 1px solid tokens.$ifxColorOcean500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorOcean500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.success {\n border: 1px solid tokens.$ifxColorGreen500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorGreen500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.danger {\n border: 1px solid tokens.$ifxColorRed500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorRed500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.warning {\n border: 1px solid tokens.$ifxColorOrange500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorOrange500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n}\n\n.close-icon-wrapper {\n & ifx-icon {\n &:hover {\n cursor: pointer;\n }\n }\n}","import { Component, Prop, h, Event, EventEmitter, State, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-alert',\n styleUrl: 'alert.scss',\n shadow: true,\n})\nexport class Alert {\n @Element() el: HTMLElement;\n @Prop() variant: 'primary' | 'success' | 'danger' | 'warning' | 'info' = 'primary';\n @Prop() icon: string;\n @Event() ifxClose: EventEmitter;\n @Prop() closable: boolean = true;\n @Prop() AriaLive = 'assertive';\n @State() uniqueId: string;\n\n alertTypeDescription = {\n \"primary\": 'Neutral alert',\n \"success\": 'Success Alert',\n \"danger\": 'Error Alert',\n \"warning\": 'Warning Alert',\n \"info\": 'Neutral alert',\n };\n\n handleClose() {\n this.ifxClose.emit();\n }\n\n renderCloseButton() {\n return (\n <div class=\"close-icon-wrapper\">\n <button onClick={this.handleClose.bind(this)} aria-label=\"Dismiss alert\">\n <ifx-icon icon=\"cross-16\" />\n </button>\n </div>\n );\n }\n\n generateUniqueId(prefix = 'id') {\n return `${prefix}-${Math.random().toString(36).substring(2, 9)}`;\n }\n\n componentWillLoad() { \n if (!this.uniqueId) {\n this.uniqueId = this.generateUniqueId('alert');\n }\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) {\n const framework = await detectFramework();\n trackComponent('ifx-alert', framework);\n }\n }\n\n render() {\n return this.variant === 'info' ? (\n <div class=\"alert__info-wrapper\" role=\"alert\" aria-live={this.AriaLive} aria-describedby={this.alertTypeDescription[this.variant]} aria-labelledby=\"alert-text alert-description\">\n <div class=\"info__text-wrapper\">\n <div class=\"info__headline-wrapper\">\n <slot name=\"headline\" />\n </div>\n <div id={`alert-description-${this.uniqueId}`} class=\"info__description-wrapper\">\n <slot name=\"desc\" />\n </div>\n </div>\n {this.closable ? this.renderCloseButton() : null}\n </div>\n ) : (\n <div class={`alert ${this.variant}`} role=\"alert\">\n {this.icon && (\n <div class=\"icon-wrapper\">\n <ifx-icon icon={this.icon} />\n </div>\n )}\n <div class=\"alert-text\" id={`alert-text-${this.uniqueId}`}>\n <slot />\n </div>\n {this.closable ? this.renderCloseButton() : null}\n </div>\n );\n }\n}\n","\n.react__template-wrapper { \n display: flex;\n width: 300px;\n height: 200px;\n border-radius: 3px;\n border: 1px solid #ccc;\n\n &.hide { \n display: none;\n }\n \n &:hover { \n cursor: pointer;\n }\n}\n\n.template__page-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n text-align: center;\n\n & .repository__url { \n text-decoration: none;\n }\n}\n\n.input__fields-wrapper { \n display: flex;\n flex-direction: column;\n gap: 10px;\n\n}\n\n.details__wrapper { \n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.selection__buttons-wrapper { \n display: flex;\n gap: 10px;\n padding-top: 10px;\n align-items: center;\n & .vue__label { \n color: #ccc;\n }\n\n & label:not(.vue__label) { \n &:hover { \n cursor: pointer;\n }\n }\n\n & .selection__input { \n display: flex;\n align-items: center;\n gap: 5px;\n & input { \n margin: 0;\n height: 20px;\n width: 20px;\n &:hover:not(.vue__input) { \n cursor: pointer;\n }\n }\n }\n}\n\n.image__wrapper { \n img { \n position: relative;\n width: 300px;\n height: 100%;\n border-radius: 3px;\n object-fit: contain;\n transition: transform .2s;\n &:hover { \n transform: scale(2);\n top: 50px;\n z-index: 100;\n }\n }\n}","import { Component, h, Element, State, Prop, Event, EventEmitter, Method } from '@stencil/core';\n\n@Component({\n tag: 'ifx-template',\n styleUrl: 'template.scss',\n shadow: true,\n})\nexport class Template {\n @Element() el: HTMLElement;\n @State() repoDetails: { name: string, desc: string, framework: string } = { name: \"\", desc: \"\", framework: \"\" };\n @State() repoUrl: string;\n @State() showDetails: boolean = false;\n @State() isTemplatePage: boolean = false;\n @State() isLoading: boolean = true;\n @State() repoError: string;\n @Prop() name: string;\n @Event() toggleTemplates: EventEmitter;\n @Event() fieldError: EventEmitter;\n @Prop() thumbnail: string;\n \n private clientId = 'Ov23lixmXiNTTNb6V5W6'\n private redirectUri = 'https://infineon.github.io/infineon-design-system-stencil/?path=/docs/dds-templates--development';\n private scope = 'repo workflow'\n private state = 'template123'\n\n authUser() { \n const authorizationUrl = `https://github.com/login/oauth/authorize?` +\n `client_id=${this.clientId}&` +\n `redirect_uri=${this.redirectUri}&` +\n `scope=${this.scope}&` +\n `state=${this.state}`;\n \n window.open(authorizationUrl, '_blank'); \n }\n\n componentDidLoad() { \n const url = new URL(window.location.href);\n const code = url.searchParams.get('code');\n const { templateName } = this.getLocalStorageValues()\n if(code && this.name === templateName) { \n this.isTemplatePage = true;\n this.toggleTemplates.emit('details')\n this.getUserToken(code)\n } \n }\n\n getLocalStorageValues() { \n const repoName = localStorage.getItem('repo_name');\n const repoDesc = localStorage.getItem('repo_desc');\n const repoFramework = localStorage.getItem('repo_framework');\n const templateName = localStorage.getItem('selectedTemplate');\n return { repoName, repoDesc, repoFramework, templateName }\n }\n\n async getUserToken(authCode) {\n const { repoName, repoDesc, repoFramework, templateName } = this.getLocalStorageValues();\n\n fetch(`https://ddstemplate-srv.cfapps.eu10-004.hana.ondemand.com/token/${authCode}/${repoName}/${repoDesc}/${repoFramework}/${templateName}`)\n .then(response => {\n if (response.ok) {\n return response.text();\n } else {\n return response.text().then(errorMessage => {\n throw new Error(errorMessage);\n });\n }\n })\n .then(data => { \n if(data) { \n this.isLoading = false;\n this.repoUrl = data;\n localStorage.clear();\n } \n })\n .catch(error => {\n this.repoError = error.message;\n console.error('Error:', error.message)\n });\n }\n\n handleUserInput(e, type) { \n if (type === 'name') {\n this.repoDetails = { ...this.repoDetails, name: e.target.value };\n } else if (type === 'desc') {\n this.repoDetails = { ...this.repoDetails, desc: e.target.value };\n } else if(type === 'framework') { \n this.repoDetails = { ...this.repoDetails, framework: e.target.value };\n }\n }\n\n submitUserData() { \n if(this.repoDetails.name && this.repoDetails.desc && this.repoDetails.framework) { \n localStorage.setItem('repo_name', this.repoDetails.name);\n localStorage.setItem('repo_desc', this.repoDetails.desc);\n localStorage.setItem('repo_framework', this.repoDetails.framework);\n localStorage.setItem('selectedTemplate', this.name);\n this.fieldError.emit(false)\n this.authUser()\n } else { \n this.fieldError.emit('All fields are mandatory')\n }\n }\n\n togglePadding(action) { \n let parent = this.el.parentElement;\n if (parent) {\n const rootNode = parent.getRootNode();\n if (rootNode instanceof ShadowRoot) {\n parent = rootNode.host.parentElement;\n } else {\n parent = parent.parentElement;\n }\n if(action === 'remove') { \n parent.parentElement.style.padding = '0px';\n } else if(action === 'add') { \n parent.parentElement.style.padding = '4rem 20px';\n }\n }\n }\n\n handleCurrentTemplate(e) { \n if(e && !this.showDetails) { \n this.togglePadding('remove')\n const targetTemplate = e.currentTarget;\n this.toggleTemplates.emit(targetTemplate)\n this.showDetails = true;\n } \n }\n\n @Method()\n async toggleTemplate(currTemp) { \n const templateWrapper = this.el.shadowRoot.querySelector('.react__template-wrapper');\n if(templateWrapper) { \n if(!templateWrapper.classList.contains('hide') && currTemp ) { \n if(templateWrapper !== currTemp) {\n templateWrapper.classList.add('hide')\n }\n } else { \n if(this.showDetails) { \n this.showDetails = false;\n }\n this.togglePadding('add')\n templateWrapper.classList.remove('hide')\n }\n }\n }\n\n \n render() {\n return (\n <div>\n {this.isTemplatePage \n ? \n <div class=\"template__page-wrapper\">\n {!this.repoUrl && !this.repoError && \n <div>\n <h3>Your repository is getting ready..</h3>\n <p>This will only take a minute.</p>\n </div>}\n {this.isLoading && !this.repoError && <div><ifx-spinner variant='default' size='s' /></div>}\n {this.repoUrl && <ifx-link href={this.repoUrl} target=\"_parent\" size=\"m\" variant=\"underlined\">Your repository</ifx-link>}\n {this.repoError && <div>{this.repoError}</div>}\n </div> \n : \n <div class=\"react__template-container\">\n <div class=\"react__template-wrapper\" onClick={(e) => this.handleCurrentTemplate(e)}>\n <div class=\"image__wrapper\">\n <img src={this.thumbnail} />\n </div>\n </div>\n {this.showDetails && \n <div class=\"details__wrapper\">\n <div class=\"selection__buttons-wrapper\">\n <div class=\"selection__input\">\n <input type=\"radio\" id=\"react\" name=\"chosen_framework\" value=\"react\" onInput={(e) => this.handleUserInput(e, 'framework')} />\n <label htmlFor=\"react\">React</label>\n </div>\n <div class=\"selection__input vue\">\n <input class=\"vue__input\" disabled type=\"radio\" id=\"vue\" name=\"chosen_framework\" value=\"vue\" onInput={(e) => this.handleUserInput(e, 'framework')}/>\n <label class=\"vue__label\" htmlFor=\"vue\">Vue</label> (Soon)\n </div>\n </div>\n \n\n <div class=\"input__fields-wrapper\">\n <ifx-text-field required={true} onInput={(e) => this.handleUserInput(e, 'name')} size=\"m\" icon=\"c-info-16\" placeholder=\"Your repository name\">Repository Name</ifx-text-field>\n\n <ifx-text-field required={true} size=\"m\" icon=\"c-info-16\" onInput={(e) => this.handleUserInput(e, 'desc')} placeholder=\"Your repository description\">Repository Description</ifx-text-field>\n\n <ifx-button fullWidth={true} onClick={() => this.submitUserData()} variant='primary'>Generate template</ifx-button>\n </div>\n \n </div>}\n </div>}\n </div>\n );\n }\n}"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ifx-alert.ifx-template.entry.esm.js","sources":["src/components/alert/alert.scss?tag=ifx-alert&encapsulation=shadow","src/components/alert/alert.tsx","src/components/templates/template/template.scss?tag=ifx-template&encapsulation=shadow","src/components/templates/template/template.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.alert__info-wrapper {\n display: flex;\n padding: 16px 24px;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n\n & .info__text-wrapper {\n display: flex;\n flex-direction: column;\n gap: tokens.$ifxSpace100;\n width: 100%;\n\n & .info__headline-wrapper {\n display: -webkit-box;\n -webkit-line-clamp: 1;\n line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n & .info__headline-wrapper,\n .info__description-wrapper {\n color: #1D1D1D;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px;\n\n ::slotted(p) {\n padding: 0;\n margin: 0;\n }\n }\n\n & .info__description-wrapper {\n font-weight: 400;\n }\n }\n\n & .close-icon-wrapper {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: flex-start;\n //min-width: tokens.$ifxSize500;\n\n & button {\n all: unset;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 0;\n color: tokens.$ifxColorBaseBlack;\n height: tokens.$ifxSize300;\n width: tokens.$ifxSize300;\n\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n }\n }\n}\n\n.alert {\n display: flex;\n border: 1px solid tokens.$ifxColorOcean500;\n border-radius: tokens.$ifxBorderRadius12;\n color: tokens.$ifxColorBaseBlack;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n box-shadow: 0px 6px 9px 0px #1D1D1D1A;\n\n\n & .close-icon-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: tokens.$ifxSize500;\n\n & button {\n all: unset;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 0;\n color: tokens.$ifxColorBaseBlack;\n height: tokens.$ifxSize300;\n width: tokens.$ifxSize300;\n\n &:focus {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n }\n }\n\n & .icon-wrapper {\n position: relative;\n min-width: tokens.$ifxSize600;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: tokens.$ifxColorOcean500;\n }\n\n & .alert-text {\n font-size: 16px;\n width: 100%;\n padding: 12px 0px 12px 12px;\n color: tokens.$ifxColorBaseBlack;\n\n white-space: pre-wrap;\n /* wraps text at spaces and within words */\n word-wrap: break-word;\n /* breaks text within a word if necessary */\n overflow-wrap: anywhere;\n /* breaks text at arbitrary points when needed */\n }\n\n &.primary {\n border: 1px solid tokens.$ifxColorOcean500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorOcean500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.success {\n border: 1px solid tokens.$ifxColorGreen500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorGreen500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.danger {\n border: 1px solid tokens.$ifxColorRed500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorRed500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n &.warning {\n border: 1px solid tokens.$ifxColorOrange500;\n\n & .icon-wrapper {\n background-color: tokens.$ifxColorOrange500;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n}\n\n.close-icon-wrapper {\n & ifx-icon {\n &:hover {\n cursor: pointer;\n }\n }\n}","import { Component, Prop, h, Event, EventEmitter, State, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-alert',\n styleUrl: 'alert.scss',\n shadow: true,\n})\nexport class Alert {\n @Element() el: HTMLElement;\n @Prop() variant: 'primary' | 'success' | 'danger' | 'warning' | 'info' = 'primary';\n @Prop() icon: string;\n @Event() ifxClose: EventEmitter;\n @Prop() closable: boolean = true;\n @Prop() AriaLive = 'assertive';\n @State() uniqueId: string;\n\n alertTypeDescription = {\n \"primary\": 'Neutral alert',\n \"success\": 'Success Alert',\n \"danger\": 'Error Alert',\n \"warning\": 'Warning Alert',\n \"info\": 'Neutral alert',\n };\n\n handleClose() {\n this.ifxClose.emit();\n }\n\n renderCloseButton() {\n return (\n <div class=\"close-icon-wrapper\">\n <button onClick={this.handleClose.bind(this)} aria-label=\"Dismiss alert\">\n <ifx-icon icon=\"cross-16\" />\n </button>\n </div>\n );\n }\n\n generateUniqueId(prefix = 'id') {\n return `${prefix}-${Math.random().toString(36).substring(2, 9)}`;\n }\n\n componentWillLoad() { \n if (!this.uniqueId) {\n this.uniqueId = this.generateUniqueId('alert');\n }\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) {\n const framework = await detectFramework();\n trackComponent('ifx-alert', framework);\n }\n }\n\n render() {\n return this.variant === 'info' ? (\n <div class=\"alert__info-wrapper\" role=\"alert\" aria-live={this.AriaLive} aria-describedby={this.alertTypeDescription[this.variant]} aria-labelledby=\"alert-text alert-description\">\n <div class=\"info__text-wrapper\">\n <div class=\"info__headline-wrapper\">\n <slot name=\"headline\" />\n </div>\n <div id={`alert-description-${this.uniqueId}`} class=\"info__description-wrapper\">\n <slot name=\"desc\" />\n </div>\n </div>\n {this.closable ? this.renderCloseButton() : null}\n </div>\n ) : (\n <div class={`alert ${this.variant}`} role=\"alert\">\n {this.icon && (\n <div class=\"icon-wrapper\">\n <ifx-icon icon={this.icon} />\n </div>\n )}\n <div class=\"alert-text\" id={`alert-text-${this.uniqueId}`}>\n <slot />\n </div>\n {this.closable ? this.renderCloseButton() : null}\n </div>\n );\n }\n}\n","\n.react__template-wrapper { \n display: flex;\n width: 300px;\n height: 200px;\n border-radius: 3px;\n border: 1px solid #ccc;\n\n &.hide { \n display: none;\n }\n \n &:hover { \n cursor: pointer;\n }\n}\n\n.template__page-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n text-align: center;\n\n & .repository__url { \n text-decoration: none;\n }\n}\n\n.input__fields-wrapper { \n display: flex;\n flex-direction: column;\n gap: 10px;\n\n}\n\n.details__wrapper { \n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.selection__buttons-wrapper { \n display: flex;\n gap: 10px;\n padding-top: 10px;\n align-items: center;\n & .vue__label { \n color: #ccc;\n }\n\n & label:not(.vue__label) { \n &:hover { \n cursor: pointer;\n }\n }\n\n & .selection__input { \n display: flex;\n align-items: center;\n gap: 5px;\n & input { \n margin: 0;\n height: 20px;\n width: 20px;\n &:hover:not(.vue__input) { \n cursor: pointer;\n }\n }\n }\n}\n\n.image__wrapper { \n img { \n position: relative;\n width: 300px;\n height: 100%;\n border-radius: 3px;\n object-fit: contain;\n transition: transform .2s;\n &:hover { \n transform: scale(2);\n top: 50px;\n z-index: 100;\n }\n }\n}","import { Component, h, Element, State, Prop, Event, EventEmitter, Method } from '@stencil/core';\n\n@Component({\n tag: 'ifx-template',\n styleUrl: 'template.scss',\n shadow: true,\n})\nexport class Template {\n @Element() el: HTMLElement;\n @State() repoDetails: { name: string, desc: string, framework: string } = { name: \"\", desc: \"\", framework: \"\" };\n @State() repoUrl: string;\n @State() showDetails: boolean = false;\n @State() isTemplatePage: boolean = false;\n @State() isLoading: boolean = true;\n @State() repoError: string;\n @Prop() name: string;\n @Event() toggleTemplates: EventEmitter;\n @Event() fieldError: EventEmitter;\n @Prop() thumbnail: string;\n \n private clientId = 'Ov23lixmXiNTTNb6V5W6'\n private redirectUri = 'https://infineon.github.io/infineon-design-system-stencil/?path=/docs/dds-templates--development';\n private scope = 'repo workflow'\n private state = 'template123'\n\n authUser() { \n const authorizationUrl = `https://github.com/login/oauth/authorize?` +\n `client_id=${this.clientId}&` +\n `redirect_uri=${this.redirectUri}&` +\n `scope=${this.scope}&` +\n `state=${this.state}`;\n \n window.open(authorizationUrl, '_blank'); \n }\n\n componentDidLoad() { \n const url = new URL(window.location.href);\n const code = url.searchParams.get('code');\n const { templateName } = this.getLocalStorageValues()\n if(code && this.name === templateName) { \n this.isTemplatePage = true;\n this.toggleTemplates.emit('details')\n this.getUserToken(code)\n } \n }\n\n getLocalStorageValues() { \n const repoName = localStorage.getItem('repo_name');\n const repoDesc = localStorage.getItem('repo_desc');\n const repoFramework = localStorage.getItem('repo_framework');\n const templateName = localStorage.getItem('selectedTemplate');\n return { repoName, repoDesc, repoFramework, templateName }\n }\n\n async getUserToken(authCode) {\n const { repoName, repoDesc, repoFramework, templateName } = this.getLocalStorageValues();\n\n fetch(`https://ddstemplate-srv.cfapps.eu10-004.hana.ondemand.com/token/${authCode}/${repoName}/${repoDesc}/${repoFramework}/${templateName}`)\n .then(response => {\n if (response.ok) {\n return response.text();\n } else {\n return response.text().then(errorMessage => {\n throw new Error(errorMessage);\n });\n }\n })\n .then(data => { \n if(data) { \n this.isLoading = false;\n this.repoUrl = data;\n localStorage.clear();\n } \n })\n .catch(error => {\n this.repoError = error.message;\n console.error('Error:', error.message)\n });\n }\n\n handleUserInput(e, type) { \n if (type === 'name') {\n this.repoDetails = { ...this.repoDetails, name: e.target.value };\n } else if (type === 'desc') {\n this.repoDetails = { ...this.repoDetails, desc: e.target.value };\n } else if(type === 'framework') { \n this.repoDetails = { ...this.repoDetails, framework: e.target.value };\n }\n }\n\n submitUserData() { \n if(this.repoDetails.name && this.repoDetails.desc && this.repoDetails.framework) { \n localStorage.setItem('repo_name', this.repoDetails.name);\n localStorage.setItem('repo_desc', this.repoDetails.desc);\n localStorage.setItem('repo_framework', this.repoDetails.framework);\n localStorage.setItem('selectedTemplate', this.name);\n this.fieldError.emit(false)\n this.authUser()\n } else { \n this.fieldError.emit('All fields are mandatory')\n }\n }\n\n togglePadding(action) { \n let parent = this.el.parentElement;\n if (parent) {\n const rootNode = parent.getRootNode();\n if (rootNode instanceof ShadowRoot) {\n parent = rootNode.host.parentElement;\n } else {\n parent = parent.parentElement;\n }\n if(action === 'remove') { \n parent.parentElement.style.padding = '0px';\n } else if(action === 'add') { \n parent.parentElement.style.padding = '4rem 20px';\n }\n }\n }\n\n handleCurrentTemplate(e) { \n if(e && !this.showDetails) { \n this.togglePadding('remove')\n const targetTemplate = e.currentTarget;\n this.toggleTemplates.emit(targetTemplate)\n this.showDetails = true;\n } \n }\n\n @Method()\n async toggleTemplate(currTemp) { \n const templateWrapper = this.el.shadowRoot.querySelector('.react__template-wrapper');\n if(templateWrapper) { \n if(!templateWrapper.classList.contains('hide') && currTemp ) { \n if(templateWrapper !== currTemp) {\n templateWrapper.classList.add('hide')\n }\n } else { \n if(this.showDetails) { \n this.showDetails = false;\n }\n this.togglePadding('add')\n templateWrapper.classList.remove('hide')\n }\n }\n }\n\n \n render() {\n return (\n <div>\n {this.isTemplatePage \n ? \n <div class=\"template__page-wrapper\">\n {!this.repoUrl && !this.repoError && \n <div>\n <h3>Your repository is getting ready..</h3>\n <p>This will only take a minute.</p>\n </div>}\n {this.isLoading && !this.repoError && <div><ifx-spinner variant='default' size='s' /></div>}\n {this.repoUrl && <ifx-link href={this.repoUrl} target=\"_parent\" size=\"m\" variant=\"underlined\">Your repository</ifx-link>}\n {this.repoError && <div>{this.repoError}</div>}\n </div> \n : \n <div class=\"react__template-container\">\n <div class=\"react__template-wrapper\" onClick={(e) => this.handleCurrentTemplate(e)}>\n <div class=\"image__wrapper\">\n <img src={this.thumbnail} />\n </div>\n </div>\n {this.showDetails && \n <div class=\"details__wrapper\">\n <div class=\"selection__buttons-wrapper\">\n <div class=\"selection__input\">\n <input type=\"radio\" id=\"react\" name=\"chosen_framework\" value=\"react\" onInput={(e) => this.handleUserInput(e, 'framework')} />\n <label htmlFor=\"react\">React</label>\n </div>\n <div class=\"selection__input vue\">\n <input class=\"vue__input\" disabled type=\"radio\" id=\"vue\" name=\"chosen_framework\" value=\"vue\" onInput={(e) => this.handleUserInput(e, 'framework')}/>\n <label class=\"vue__label\" htmlFor=\"vue\">Vue</label> (Soon)\n </div>\n </div>\n \n\n <div class=\"input__fields-wrapper\">\n <ifx-text-field required={true} onInput={(e) => this.handleUserInput(e, 'name')} size=\"m\" icon=\"c-info-16\" placeholder=\"Your repository name\">Repository Name</ifx-text-field>\n\n <ifx-text-field required={true} size=\"m\" icon=\"c-info-16\" onInput={(e) => this.handleUserInput(e, 'desc')} placeholder=\"Your repository description\">Repository Description</ifx-text-field>\n\n <ifx-button fullWidth={true} onClick={() => this.submitUserData()} variant='primary'>Generate template</ifx-button>\n </div>\n \n </div>}\n </div>}\n </div>\n );\n }\n}"],"names":[],"mappings":";;;;AAAA,MAAM,QAAQ,GAAG,4mFAA4mF;;MCUhnF,KAAK,GAAA,MAAA;AALlB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAOU,QAAA,IAAO,CAAA,OAAA,GAA0D,SAAS;AAG1E,QAAA,IAAQ,CAAA,QAAA,GAAY,IAAI;AACxB,QAAA,IAAQ,CAAA,QAAA,GAAG,WAAW;QAG9B,IAAA,CAAA,oBAAoB,GAAG;AACrB,YAAA,SAAS,EAAE,eAAe;AAC1B,YAAA,SAAS,EAAE,eAAe;AAC1B,YAAA,QAAQ,EAAE,aAAa;AACvB,YAAA,SAAS,EAAE,eAAe;AAC1B,YAAA,MAAM,EAAE,eAAe;SACxB;AA4DF;IA1DC,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;;IAGtB,iBAAiB,GAAA;QACf,QACE,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,oBAAoB,EAAA,EAC7B,CAAQ,CAAA,QAAA,EAAA,EAAA,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAA,YAAA,EAAa,eAAe,EAAA,EACtE,CAAA,CAAA,UAAA,EAAA,EAAU,IAAI,EAAC,UAAU,GAAG,CACrB,CACL;;IAIV,gBAAgB,CAAC,MAAM,GAAG,IAAI,EAAA;QAC5B,OAAO,CAAA,EAAG,MAAM,CAAI,CAAA,EAAA,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;;IAGlE,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;;;AAIlD,IAAA,MAAM,gBAAgB,GAAA;QACpB,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACnC,YAAA,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE;AACzC,YAAA,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC;;;IAI1C,MAAM,GAAA;QACJ,OAAO,IAAI,CAAC,OAAO,KAAK,MAAM,IAC5B,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,qBAAqB,EAAC,IAAI,EAAC,OAAO,EAAY,WAAA,EAAA,IAAI,CAAC,QAAQ,sBAAoB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAkB,8BAA8B,EAAA,EAC/K,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,oBAAoB,EAAA,EAC7B,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,wBAAwB,EAAA,EACjC,CAAA,CAAA,MAAA,EAAA,EAAM,IAAI,EAAC,UAAU,EAAA,CAAG,CACpB,EACN,CAAK,CAAA,KAAA,EAAA,EAAA,EAAE,EAAE,CAAqB,kBAAA,EAAA,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAC,2BAA2B,EAAA,EAC9E,CAAA,CAAA,MAAA,EAAA,EAAM,IAAI,EAAC,MAAM,EAAA,CAAG,CAChB,CACF,EACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAC5C,KAEN,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,CAAA,MAAA,EAAS,IAAI,CAAC,OAAO,CAAE,CAAA,EAAE,IAAI,EAAC,OAAO,EAAA,EAC9C,IAAI,CAAC,IAAI,KACR,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,cAAc,EAAA,EACvB,CAAA,CAAA,UAAA,EAAA,EAAU,IAAI,EAAE,IAAI,CAAC,IAAI,EAAA,CAAI,CACzB,CACP,EACD,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,YAAY,EAAC,EAAE,EAAE,CAAA,WAAA,EAAc,IAAI,CAAC,QAAQ,CAAA,CAAE,EAAA,EACvD,CAAA,CAAA,MAAA,EAAA,IAAA,CAAQ,CACJ,EACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAC5C,CACP;;;;;;ACnFL,MAAM,WAAW,GAAG,4oCAA4oC;;MCOnpC,QAAQ,GAAA,MAAA;AALrB,IAAA,WAAA,CAAA,OAAA,EAAA;;;;AAOW,QAAA,IAAA,CAAA,WAAW,GAAsD,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;AAEtG,QAAA,IAAW,CAAA,WAAA,GAAY,KAAK;AAC5B,QAAA,IAAc,CAAA,cAAA,GAAY,KAAK;AAC/B,QAAA,IAAS,CAAA,SAAA,GAAY,IAAI;AAO1B,QAAA,IAAQ,CAAA,QAAA,GAAG,sBAAsB;AACjC,QAAA,IAAW,CAAA,WAAA,GAAG,kGAAkG;AAChH,QAAA,IAAK,CAAA,KAAA,GAAG,eAAe;AACvB,QAAA,IAAK,CAAA,KAAA,GAAG,aAAa;AA8K9B;IA5KC,QAAQ,GAAA;QACN,MAAM,gBAAgB,GAAG,CAA2C,yCAAA,CAAA;YAClE,CAAa,UAAA,EAAA,IAAI,CAAC,QAAQ,CAAG,CAAA,CAAA;YAC7B,CAAgB,aAAA,EAAA,IAAI,CAAC,WAAW,CAAG,CAAA,CAAA;YACnC,CAAS,MAAA,EAAA,IAAI,CAAC,KAAK,CAAG,CAAA,CAAA;AACtB,YAAA,CAAA,MAAA,EAAS,IAAI,CAAC,KAAK,CAAA,CAAE;AAErB,QAAA,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC;;IAG3C,gBAAgB,GAAA;QACd,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QACzC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QACzC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE;QACrD,IAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE;AACrC,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;AACpC,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;;;IAI3B,qBAAqB,GAAA;QACnB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC;QAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC;QAClD,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5D,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAC7D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE;;IAG5D,MAAM,YAAY,CAAC,QAAQ,EAAA;AACzB,QAAA,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE;AAExF,QAAA,KAAK,CAAC,CAAA,gEAAA,EAAmE,QAAQ,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAA,EAAI,aAAa,CAAA,CAAA,EAAI,YAAY,CAAA,CAAE;aAC3I,IAAI,CAAC,QAAQ,IAAG;AACf,YAAA,IAAI,QAAQ,CAAC,EAAE,EAAE;AACf,gBAAA,OAAO,QAAQ,CAAC,IAAI,EAAE;;iBACjB;gBACL,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,YAAY,IAAG;AACzC,oBAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC;AAC/B,iBAAC,CAAC;;AAEN,SAAC;aACA,IAAI,CAAC,IAAI,IAAG;YACX,IAAG,IAAI,EAAE;AACP,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI;gBACnB,YAAY,CAAC,KAAK,EAAE;;AAExB,SAAC;aACA,KAAK,CAAC,KAAK,IAAG;AACb,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO;YAC9B,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC;AACxC,SAAC,CAAC;;IAGJ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAA;AACrB,QAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AACnB,YAAA,IAAI,CAAC,WAAW,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,WAAW,CAAA,EAAA,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,GAAE;;AAC3D,aAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AAC1B,YAAA,IAAI,CAAC,WAAW,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,WAAW,CAAA,EAAA,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,GAAE;;AAC3D,aAAA,IAAG,IAAI,KAAK,WAAW,EAAE;AAC9B,YAAA,IAAI,CAAC,WAAW,GAAQ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,WAAW,CAAA,EAAA,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,GAAE;;;IAIzE,cAAc,GAAA;AACZ,QAAA,IAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;YAC/E,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACxD,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACxD,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;YAClE,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;AACnD,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE;;aACV;AACL,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC;;;AAIpD,IAAA,aAAa,CAAC,MAAM,EAAA;AAClB,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;QAClC,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE;AACrC,YAAA,IAAI,QAAQ,YAAY,UAAU,EAAE;AAClC,gBAAA,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa;;iBAC/B;AACL,gBAAA,MAAM,GAAG,MAAM,CAAC,aAAa;;AAE/B,YAAA,IAAG,MAAM,KAAK,QAAQ,EAAE;gBACtB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK;;AACrC,iBAAA,IAAG,MAAM,KAAK,KAAK,EAAE;gBAC1B,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,WAAW;;;;AAKtD,IAAA,qBAAqB,CAAC,CAAC,EAAA;AACrB,QAAA,IAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACzB,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC5B,YAAA,MAAM,cAAc,GAAG,CAAC,CAAC,aAAa;AACtC,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;AACzC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;;;IAK3B,MAAM,cAAc,CAAC,QAAQ,EAAA;AAC3B,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,0BAA0B,CAAC;QACpF,IAAG,eAAe,EAAE;AAClB,YAAA,IAAG,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,EAAG;AAC3D,gBAAA,IAAG,eAAe,KAAK,QAAQ,EAAE;AAC/B,oBAAA,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;;;iBAElC;AACL,gBAAA,IAAG,IAAI,CAAC,WAAW,EAAE;AACnB,oBAAA,IAAI,CAAC,WAAW,GAAG,KAAK;;AAE1B,gBAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AACzB,gBAAA,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;;;;IAM9C,MAAM,GAAA;AACF,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACG,IAAI,CAAC;;AAEN,gBAAA,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,wBAAwB,EAAA,EAChC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS;oBACjC,CAAA,CAAA,KAAA,EAAA,IAAA,EACE,CAA2C,CAAA,IAAA,EAAA,IAAA,EAAA,oCAAA,CAAA,EAC3C,CAAA,CAAA,GAAA,EAAA,IAAA,EAAA,+BAAA,CAAoC,CAChC,EACL,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAA,CAAA,KAAA,EAAA,IAAA,EAAK,CAAa,CAAA,aAAA,EAAA,EAAA,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,GAAG,GAAG,CAAM,EAC1F,IAAI,CAAC,OAAO,IAAI,CAAA,CAAA,UAAA,EAAA,EAAU,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAC,SAAS,EAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAC,YAAY,EAA2B,EAAA,iBAAA,CAAA,EACvH,IAAI,CAAC,SAAS,IAAI,CAAA,CAAA,KAAA,EAAA,IAAA,EAAM,IAAI,CAAC,SAAS,CAAO;;AAGhD,gBAAA,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EAClC,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,yBAAyB,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAA,EAChF,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EACzB,CAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAE,IAAI,CAAC,SAAS,EAAA,CAAI,CACxB,CACF,EACP,IAAI,CAAC,WAAW;AACjB,oBAAA,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,4BAA4B,EAAA,EACrC,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3B,CAAA,CAAA,OAAA,EAAA,EAAO,IAAI,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,IAAI,EAAC,kBAAkB,EAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,EAAK,CAAA,EAC9H,CAAA,CAAA,OAAA,EAAA,EAAO,OAAO,EAAC,OAAO,EAAA,EAAA,OAAA,CAAc,CAChC,EACN,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/B,CAAA,CAAA,OAAA,EAAA,EAAO,KAAK,EAAC,YAAY,EAAC,QAAQ,QAAC,IAAI,EAAC,OAAO,EAAC,EAAE,EAAC,KAAK,EAAC,IAAI,EAAC,kBAAkB,EAAC,KAAK,EAAC,KAAK,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,EAAG,CAAA,EACpJ,CAAA,CAAA,OAAA,EAAA,EAAO,KAAK,EAAC,YAAY,EAAC,OAAO,EAAC,KAAK,EAAY,EAAA,KAAA,CAAA,YAC/C,CACF,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,uBAAuB,EAAA,EAChC,CAAA,CAAA,gBAAA,EAAA,EAAgB,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAC,sBAAsB,EAAiC,EAAA,iBAAA,CAAA,EAE9K,CAAA,CAAA,gBAAA,EAAA,EAAgB,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,EAAC,6BAA6B,EAAwC,EAAA,wBAAA,CAAA,EAE5L,CAAY,CAAA,YAAA,EAAA,EAAA,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,OAAO,EAAC,SAAS,EAAA,EAAA,mBAAA,CAA+B,CAC/G,CAEF,CACF,CACF;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-basic-table.entry.esm.js","sources":["src/components/table-basic-version/customNoRowsOverlay.ts","src/components/table-basic-version/customLoadingOverlay.ts","src/components/table-basic-version/table.scss?tag=ifx-basic-table","src/components/table-basic-version/table.tsx"],"sourcesContent":["import { ICellRendererComp, ICellRendererParams } from 'ag-grid-community';\n\nexport class CustomNoRowsOverlay implements ICellRendererComp {\n eGui!: HTMLElement;\n\n init(params: ICellRendererParams & { noRowsMessageFunc: () => string }) {\n this.eGui = document.createElement('div');\n this.eGui.innerHTML = `\n <div role=\"presentation\" class=\"ag-overlay-loading-center\" >\n ${params.noRowsMessageFunc()}\n </div>\n `;\n }\n\n getGui() {\n return this.eGui;\n }\n\n refresh(_params: ICellRendererParams): boolean {\n return false;\n }\n}","import { ICellRendererComp, ICellRendererParams } from 'ag-grid-community';\n\nexport class CustomLoadingOverlay implements ICellRendererComp {\n eGui!: HTMLElement;\n\n init(_params: ICellRendererParams & { loadingMessage: string }) {\n this.eGui = document.createElement('div');\n this.eGui.innerHTML = `<div class=\"ag-overlay-loading-center\" role=\"presentation\">\n<ifx-spinner></ifx-spinner>\n </div>`;\n }\n\n getGui() {\n return this.eGui;\n }\n\n refresh(_params: ICellRendererParams): boolean {\n return false;\n }\n}","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n@import \"~ag-grid-community/styles/ag-grid.css\";\n// @import \"~ag-grid-community/styles/ag-theme-alpine.css\";\n\n// :host {\n// --table-height: '200px';\n// /* Default value */\n// } ag-ltr .ag-header-cell-resize\n\n.zebra {\n & .ag-row-odd {\n background-color: tokens.$ifxColorEngineering100!important;\n }\n\n & .ag-row {\n border-bottom: none!important;\n }\n}\n\n.ag-header-viewport {\n background-color: tokens.$ifxColorEngineering200!important;\n}\n\n.table-wrapper {\n overflow-x: auto;\n width: 100%;\n}\n\n.table-wrapper .ag-root-wrapper-body {\n height: auto !important;\n min-height: 100px !important;\n min-width: 100px;\n}\n\n.ifx-ag-grid {\n display: grid;\n height: 100%;\n width: 100%;\n min-width: 100px;\n padding-bottom: tokens.$ifxSpace100;\n overflow-x: auto;\n}\n\n\n.ifx-ag-grid .ag-header-cell::after {\n outline: none !important;\n border: none !important;\n box-shadow: none !important;\n}\n\n.ifx-ag-grid .ag-header-cell:focus {\n outline: none !important;\n}\n\n.ifx-ag-grid *:not(.ag-header-cell):focus {\n outline: none;\n}\n\n.ifx-ag-grid .ag-header-cell:not(:last-child)::before {\n content: '';\n position: absolute;\n right: 0;\n top: calc(50% - 12px);\n height: 24px;\n width: 1px;\n background-color: tokens.$ifxColorEngineering300;\n}\n\n.ag-overlay-loading-center {\n border: none;\n background: none;\n border-radius: none;\n box-shadow: none;\n}\n\n\n.ag-root-wrapper {\n border: 1px solid tokens.$ifxColorEngineering200;\n}\n\n.ag-header {\n background-color: tokens.$ifxColorEngineering100;\n border-bottom: none;\n\n &.ag-header-active {\n outline: none !important;\n border-color: #0A8276 !important;\n }\n}\n\n.ag-header-cell {\n padding-left: 16px;\n padding-right: 16px;\n gap: 4px;\n}\n\n\n.ag-header-cell-focus {\n border: none !important;\n outline: none !important;\n}\n\n.ag-header-cell-text {\n font-size: 13px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n}\n\n.ag-row-focus {\n background-color: inherit !important;\n /* Reset the hover color to the row's original color */\n}\n\n.ag-row-hover {\n background-color: tokens.$ifxColorBaseWhite !important; //inherit !important;\n /* Reset the hover color to the row's original color */\n}\n\n\n.ag-cell-focus {\n border: none !important;\n outline: none !important;\n background-color: inherit !important;\n}\n\n\n\n.ag-row {\n background-color: tokens.$ifxColorBaseWhite;\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n z-index: 1; //ensure the stacking order when used inside js frameworks\n}\n\n.ag-row-odd {\n background-color: tokens.$ifxColorBaseWhite;\n}\n\n.ag-cell {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n white-space: pre-line;\n min-height: 40px; \n height: auto;\n}\n\n.ag-ltr .ag-sort-indicator-icon {\n padding-left: 0px;\n vertical-align: bottom;\n line-height: 12px;\n}\n\n.unsort-icon-custom-color {\n color: tokens.$ifxColorEngineering400;\n}\n\n// Mobile optimization for horizontal scrolling\n@media (max-width: tokens.$ifxBreakpointM) {\n .table-wrapper {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n .ifx-ag-grid {\n min-width: 400px;\n }\n\n .ag-root-wrapper {\n min-width: 100%;\n }\n\n .ag-header-cell,\n .ag-cell {\n min-width: 100px;\n white-space: nowrap;\n }\n\n .table-wrapper {\n margin-bottom: tokens.$ifxSpace200;\n }\n}\n","import { Component, h, Element, Host, Prop, State } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-basic-table',\n styleUrl: 'table.scss',\n shadow: false // only works with shadowdom off because we are using an external library\n})\nexport class Table {\n @State() gridOptions: GridOptions;\n @Prop() cols: any[] | string;\n @Prop() rows: any[] | string;\n @State() columnDefs: any[] = [];\n @State() rowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @Prop() variant: string = 'default'\n @State() uniqueKey: string;\n @Element() host: HTMLElement;\n \n private container: HTMLDivElement;\n private gridApi: GridApi; \n private gridInitialized = false;\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n this.setColsAndRows(); //needed?\n this.setGridOptions();\n }\n\n setGridOptions() {\n this.gridOptions = {\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n autoHeight: true,\n },\n suppressCellFocus: false,\n enableCellTextSelection: true,\n suppressDragLeaveHidesColumns: true,\n suppressRowHoverHighlight: true,\n onFirstDataRendered: this.onFirstDataRendered,\n columnDefs: this.columnDefs,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrow-triangle-up-16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrow-triangle-down-16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrow-triangle-vertikal-16\"></ifx-icon></a>',\n },\n rowDragManaged: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n animateRows: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n };\n }\n\n setColsAndRows() {\n if (typeof this.rows === 'string' && typeof this.cols === 'string') {\n try {\n if(this.cols) {\n this.columnDefs = JSON.parse(this.cols);\n }\n if(this.rows) {\n this.rowData = JSON.parse(this.rows);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if ((Array.isArray(this.rows) || typeof this.rows === 'object') && (Array.isArray(this.cols) || typeof this.cols === 'object')) {\n this.columnDefs = this.cols;\n this.rowData = this.rows;\n } else {\n console.error('Unexpected value for cols and rows:', this.rows, this.cols);\n }\n }\n\n getRowData() {\n let rows: any[] = [];\n if (typeof this.rows === 'string') {\n try {\n if(this.rows) {\n rows = JSON.parse(this.rows);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = this.rows;\n } else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n return rows;\n }\n\n getColData() {\n let cols: any[] = [];\n\n if (typeof this.cols === 'string') {\n try {\n if(this.cols) { \n cols = JSON.parse(this.cols);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = this.cols;\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n return cols;\n }\n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n componentWillUpdate() {\n this.setColsAndRows();\n this.gridOptions.columnDefs = this.columnDefs;\n this.gridOptions.rowData = this.rowData;\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', this.rowData);\n this.gridApi.setGridOption('columnDefs', this.columnDefs);\n }\n }\n\n async componentDidLoad() {\n if (this.container && !this.gridInitialized) {\n if(!isNestedInIfxComponent(this.host)) { \n const framework = detectFramework();\n trackComponent('ifx-basic-table', await framework)\n }\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.getColData());\n this.gridApi.setGridOption('rowData', this.getRowData());\n this.gridInitialized = true; \n }\n }\n }\n\n getClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n getTableStyle() {\n if (this.tableHeight !== 'auto') {\n return {\n height: this.tableHeight,\n };\n }\n return {};\n }\n\n render() {\n return (\n <Host>\n <div id=\"table-wrapper\" class={this.getClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class={`ifx-ag-grid ${this.variant === 'zebra' ? 'zebra' : \"\"}`} style={this.getTableStyle()} ref={(el) => (this.container = el)}></div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ifx-basic-table.entry.esm.js","sources":["src/components/table-basic-version/customNoRowsOverlay.ts","src/components/table-basic-version/customLoadingOverlay.ts","src/components/table-basic-version/table.scss?tag=ifx-basic-table","src/components/table-basic-version/table.tsx"],"sourcesContent":["import { ICellRendererComp, ICellRendererParams } from 'ag-grid-community';\n\nexport class CustomNoRowsOverlay implements ICellRendererComp {\n eGui!: HTMLElement;\n\n init(params: ICellRendererParams & { noRowsMessageFunc: () => string }) {\n this.eGui = document.createElement('div');\n this.eGui.innerHTML = `\n <div role=\"presentation\" class=\"ag-overlay-loading-center\" >\n ${params.noRowsMessageFunc()}\n </div>\n `;\n }\n\n getGui() {\n return this.eGui;\n }\n\n refresh(_params: ICellRendererParams): boolean {\n return false;\n }\n}","import { ICellRendererComp, ICellRendererParams } from 'ag-grid-community';\n\nexport class CustomLoadingOverlay implements ICellRendererComp {\n eGui!: HTMLElement;\n\n init(_params: ICellRendererParams & { loadingMessage: string }) {\n this.eGui = document.createElement('div');\n this.eGui.innerHTML = `<div class=\"ag-overlay-loading-center\" role=\"presentation\">\n<ifx-spinner></ifx-spinner>\n </div>`;\n }\n\n getGui() {\n return this.eGui;\n }\n\n refresh(_params: ICellRendererParams): boolean {\n return false;\n }\n}","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n@import \"~ag-grid-community/styles/ag-grid.css\";\n// @import \"~ag-grid-community/styles/ag-theme-alpine.css\";\n\n// :host {\n// --table-height: '200px';\n// /* Default value */\n// } ag-ltr .ag-header-cell-resize\n\n.zebra {\n & .ag-row-odd {\n background-color: tokens.$ifxColorEngineering100!important;\n }\n\n & .ag-row {\n border-bottom: none!important;\n }\n}\n\n.ag-header-viewport {\n background-color: tokens.$ifxColorEngineering200!important;\n}\n\n.table-wrapper {\n overflow-x: auto;\n width: 100%;\n}\n\n.table-wrapper .ag-root-wrapper-body {\n height: auto !important;\n min-height: 100px !important;\n min-width: 100px;\n}\n\n.ifx-ag-grid {\n display: grid;\n height: 100%;\n width: 100%;\n min-width: 100px;\n padding-bottom: tokens.$ifxSpace100;\n overflow-x: auto;\n}\n\n\n.ifx-ag-grid .ag-header-cell::after {\n outline: none !important;\n border: none !important;\n box-shadow: none !important;\n}\n\n.ifx-ag-grid .ag-header-cell:focus {\n outline: none !important;\n}\n\n.ifx-ag-grid *:not(.ag-header-cell):focus {\n outline: none;\n}\n\n.ifx-ag-grid .ag-header-cell:not(:last-child)::before {\n content: '';\n position: absolute;\n right: 0;\n top: calc(50% - 12px);\n height: 24px;\n width: 1px;\n background-color: tokens.$ifxColorEngineering300;\n}\n\n.ag-overlay-loading-center {\n border: none;\n background: none;\n border-radius: none;\n box-shadow: none;\n}\n\n\n.ag-root-wrapper {\n border: 1px solid tokens.$ifxColorEngineering200;\n}\n\n.ag-header {\n background-color: tokens.$ifxColorEngineering100;\n border-bottom: none;\n\n &.ag-header-active {\n outline: none !important;\n border-color: #0A8276 !important;\n }\n}\n\n.ag-header-cell {\n padding-left: 16px;\n padding-right: 16px;\n gap: 4px;\n}\n\n\n.ag-header-cell-focus {\n border: none !important;\n outline: none !important;\n}\n\n.ag-header-cell-text {\n font-size: 13px;\n font-style: normal;\n font-weight: 600;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n\n\n}\n\n.ag-row-focus {\n background-color: inherit !important;\n /* Reset the hover color to the row's original color */\n}\n\n.ag-row-hover {\n background-color: tokens.$ifxColorBaseWhite !important; //inherit !important;\n /* Reset the hover color to the row's original color */\n}\n\n\n.ag-cell-focus {\n border: none !important;\n outline: none !important;\n background-color: inherit !important;\n}\n\n\n\n.ag-row {\n background-color: tokens.$ifxColorBaseWhite;\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n font-size: 13px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px;\n z-index: 1; //ensure the stacking order when used inside js frameworks\n}\n\n.ag-row-odd {\n background-color: tokens.$ifxColorBaseWhite;\n}\n\n.ag-cell {\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n white-space: pre-line;\n min-height: 40px; \n height: auto;\n}\n\n.ag-ltr .ag-sort-indicator-icon {\n padding-left: 0px;\n vertical-align: bottom;\n line-height: 12px;\n}\n\n.unsort-icon-custom-color {\n color: tokens.$ifxColorEngineering400;\n}\n\n// Mobile optimization for horizontal scrolling\n@media (max-width: tokens.$ifxBreakpointM) {\n .table-wrapper {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n .ifx-ag-grid {\n min-width: 400px;\n }\n\n .ag-root-wrapper {\n min-width: 100%;\n }\n\n .ag-header-cell,\n .ag-cell {\n min-width: 100px;\n white-space: nowrap;\n }\n\n .table-wrapper {\n margin-bottom: tokens.$ifxSpace200;\n }\n}\n","import { Component, h, Element, Host, Prop, State } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-basic-table',\n styleUrl: 'table.scss',\n shadow: false // only works with shadowdom off because we are using an external library\n})\nexport class Table {\n @State() gridOptions: GridOptions;\n @Prop() cols: any[] | string;\n @Prop() rows: any[] | string;\n @State() columnDefs: any[] = [];\n @State() rowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @Prop() variant: string = 'default'\n @State() uniqueKey: string;\n @Element() host: HTMLElement;\n \n private container: HTMLDivElement;\n private gridApi: GridApi; \n private gridInitialized = false;\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n this.setColsAndRows(); //needed?\n this.setGridOptions();\n }\n\n setGridOptions() {\n this.gridOptions = {\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n autoHeight: true,\n },\n suppressCellFocus: false,\n enableCellTextSelection: true,\n suppressDragLeaveHidesColumns: true,\n suppressRowHoverHighlight: true,\n onFirstDataRendered: this.onFirstDataRendered,\n columnDefs: this.columnDefs,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrow-triangle-up-16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrow-triangle-down-16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrow-triangle-vertikal-16\"></ifx-icon></a>',\n },\n rowDragManaged: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n animateRows: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n };\n }\n\n setColsAndRows() {\n if (typeof this.rows === 'string' && typeof this.cols === 'string') {\n try {\n if(this.cols) {\n this.columnDefs = JSON.parse(this.cols);\n }\n if(this.rows) {\n this.rowData = JSON.parse(this.rows);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if ((Array.isArray(this.rows) || typeof this.rows === 'object') && (Array.isArray(this.cols) || typeof this.cols === 'object')) {\n this.columnDefs = this.cols;\n this.rowData = this.rows;\n } else {\n console.error('Unexpected value for cols and rows:', this.rows, this.cols);\n }\n }\n\n getRowData() {\n let rows: any[] = [];\n if (typeof this.rows === 'string') {\n try {\n if(this.rows) {\n rows = JSON.parse(this.rows);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = this.rows;\n } else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n return rows;\n }\n\n getColData() {\n let cols: any[] = [];\n\n if (typeof this.cols === 'string') {\n try {\n if(this.cols) { \n cols = JSON.parse(this.cols);\n }\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = this.cols;\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n return cols;\n }\n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n componentWillUpdate() {\n this.setColsAndRows();\n this.gridOptions.columnDefs = this.columnDefs;\n this.gridOptions.rowData = this.rowData;\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', this.rowData);\n this.gridApi.setGridOption('columnDefs', this.columnDefs);\n }\n }\n\n async componentDidLoad() {\n if (this.container && !this.gridInitialized) {\n if(!isNestedInIfxComponent(this.host)) { \n const framework = detectFramework();\n trackComponent('ifx-basic-table', await framework)\n }\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.getColData());\n this.gridApi.setGridOption('rowData', this.getRowData());\n this.gridInitialized = true; \n }\n }\n }\n\n getClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n getTableStyle() {\n if (this.tableHeight !== 'auto') {\n return {\n height: this.tableHeight,\n };\n }\n return {};\n }\n\n render() {\n return (\n <Host>\n <div id=\"table-wrapper\" class={this.getClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class={`ifx-ag-grid ${this.variant === 'zebra' ? 'zebra' : \"\"}`} style={this.getTableStyle()} ref={(el) => (this.container = el)}></div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-breadcrumb-item-label.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb-item-label.scss?tag=ifx-breadcrumb-item-label&encapsulation=shadow","src/components/breadcrumb/breadcrumb-item-label.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.breadcrumb-item-label-container {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n\n &.margin {\n margin-left: 16px;\n }\n\n & ifx-icon:empty {\n display: none;\n }\n\n & .label-icon-wrapper {\n display: inline-flex;\n }\n\n & .menu-icon-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n width: tokens.$ifxSize200;\n height: tokens.$ifxSize200;\n\n &.hide {\n display: none;\n }\n\n & ifx-icon {\n transition: .3s;\n }\n\n &.show {\n & ifx-icon {\n transition: .3s;\n transform: rotate(180deg);\n }\n }\n }\n}","import { Component, h, Prop, Element, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-breadcrumb-item-label',\n styleUrl: 'breadcrumb-item-label.scss',\n shadow: true,\n})\nexport class BreadcrumbItemLabel {\n @Prop() icon: string;\n @Prop() href: string;\n @Prop() target: string = \"_self\"\n @Element() el;\n @Event() breadcrumbMenuIconWrapper: EventEmitter<CustomEvent>;\n\n componentDidLoad() { \n const container = this.el.shadowRoot.querySelector('.breadcrumb-item-label-container')\n const menuWrapper = container.querySelector('.menu-icon-wrapper')\n this.breadcrumbMenuIconWrapper.emit(menuWrapper)\n }\n\n render() {\n return (\n <a href={this.href} target={this.target} class=\"breadcrumb-item-label-container\" role='link'>\n <ifx-icon icon={this.icon} aria-hidden=\"true\"></ifx-icon>\n <span class=\"label-wrapper\">\n <slot />\n </span>\n <span class=\"menu-icon-wrapper\" aria-hiden=\"true\">\n <ifx-icon icon=\"chevron-down-16\"></ifx-icon>\n </span>\n </a>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,sBAAsB,GAAG,8uBAA8uB;;MCOhwB,mBAAmB,GAAA,MAAA;AALhC,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAQU,QAAA,IAAM,CAAA,MAAA,GAAW,OAAO;AAuBjC;IAnBC,gBAAgB,GAAA;AACd,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,kCAAkC,CAAC;QACtF,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,oBAAoB,CAAC;AACjE,QAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC;;IAGlD,MAAM,GAAA;QACJ,QACE,0DAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAC,iCAAiC,EAAC,IAAI,EAAC,MAAM,EAAA,EAC1F,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAE,IAAI,CAAC,IAAI,EAAA,aAAA,EAAc,MAAM,EAAY,CAAA,EACzD,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAA,EACzB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CACH,EACR,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,mBAAmB,EAAA,YAAA,EAAY,MAAM,EAAA,EAChD,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,iBAAiB,GAAY,CACtC,CACJ;;;;;;;;"}
1
+ {"version":3,"file":"ifx-breadcrumb-item-label.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb-item-label.scss?tag=ifx-breadcrumb-item-label&encapsulation=shadow","src/components/breadcrumb/breadcrumb-item-label.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.breadcrumb-item-label-container {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace100;\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n\n &.margin {\n margin-left: 16px;\n }\n\n & ifx-icon:empty {\n display: none;\n }\n\n & .label-icon-wrapper {\n display: inline-flex;\n }\n\n & .menu-icon-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n width: tokens.$ifxSize200;\n height: tokens.$ifxSize200;\n\n &.hide {\n display: none;\n }\n\n & ifx-icon {\n transition: .3s;\n }\n\n &.show {\n & ifx-icon {\n transition: .3s;\n transform: rotate(180deg);\n }\n }\n }\n}","import { Component, h, Prop, Element, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-breadcrumb-item-label',\n styleUrl: 'breadcrumb-item-label.scss',\n shadow: true,\n})\nexport class BreadcrumbItemLabel {\n @Prop() icon: string;\n @Prop() href: string;\n @Prop() target: string = \"_self\"\n @Element() el;\n @Event() breadcrumbMenuIconWrapper: EventEmitter<CustomEvent>;\n\n componentDidLoad() { \n const container = this.el.shadowRoot.querySelector('.breadcrumb-item-label-container')\n const menuWrapper = container.querySelector('.menu-icon-wrapper')\n this.breadcrumbMenuIconWrapper.emit(menuWrapper)\n }\n\n render() {\n return (\n <a href={this.href} target={this.target} class=\"breadcrumb-item-label-container\" role='link'>\n <ifx-icon icon={this.icon} aria-hidden=\"true\"></ifx-icon>\n <span class=\"label-wrapper\">\n <slot />\n </span>\n <span class=\"menu-icon-wrapper\" aria-hiden=\"true\">\n <ifx-icon icon=\"chevron-down-16\"></ifx-icon>\n </span>\n </a>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,sBAAsB,GAAG,4uBAA4uB;;MCO9vB,mBAAmB,GAAA,MAAA;AALhC,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAQU,QAAA,IAAM,CAAA,MAAA,GAAW,OAAO;AAuBjC;IAnBC,gBAAgB,GAAA;AACd,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,kCAAkC,CAAC;QACtF,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,oBAAoB,CAAC;AACjE,QAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC;;IAGlD,MAAM,GAAA;QACJ,QACE,0DAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAC,iCAAiC,EAAC,IAAI,EAAC,MAAM,EAAA,EAC1F,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAE,IAAI,CAAC,IAAI,EAAA,aAAA,EAAc,MAAM,EAAY,CAAA,EACzD,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAA,EACzB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CACH,EACR,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,KAAK,EAAC,mBAAmB,EAAA,YAAA,EAAY,MAAM,EAAA,EAChD,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAU,IAAI,EAAC,iBAAiB,GAAY,CACtC,CACJ;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-breadcrumb-item.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb-item.scss?tag=ifx-breadcrumb-item&encapsulation=shadow","src/components/breadcrumb/breadcrumb-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.breadcrumb-parent {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace150;\n min-height: tokens.$ifxSize300;\n justify-content: center;\n\n &:hover {\n cursor: pointer;\n }\n\n & .breadcrumb-wrapper {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace100;\n position: relative;\n\n & .dropdown-menu {\n display: none;\n position: absolute;\n top: 20px;\n\n &.open {\n display: block;\n }\n }\n\n & a {\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex-direction: column;\n justify-content: center;\n padding: 0px;\n border-bottom: 1px solid #1D1D1D;\n }\n }\n\n & .breadcrumb-divider {\n width: 10px;\n height: tokens.$ifxSize200;\n color: tokens.$ifxColorEngineering200;\n line-height: 13px;\n font-size: tokens.$ifxFontSizeXl;\n\n margin-right: 12px;\n }\n}","import { Component, h, Element, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'ifx-breadcrumb-item',\n styleUrl: 'breadcrumb-item.scss',\n shadow: true,\n})\nexport class BreadcrumbItem {\n\n @State() isLastItem: boolean = false;\n @Element() el;\n private emittedElement: HTMLElement;\n @State() uniqueId: string;\n @State() hasDropdownMenu: boolean = false;\n\n @Listen('mousedown', { target: 'document' })\n handleOutsideClick(event: MouseEvent) {\n const path = event.composedPath();\n if (!path.includes(this.el)) {\n this.closeDropdownMenu();\n }\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Enter' || ev.key === ' ') {\n this.toggleDropdownMenu();\n } else if (ev.key === 'Escape') {\n this.closeDropdownMenu();\n }\n }\n\n getDropdownMenu() {\n const dropdownMenu = this.el.shadowRoot.querySelector('.dropdown-menu');\n return dropdownMenu\n }\n\n @Listen('breadcrumbMenuIconWrapper')\n menuWrapperEventReEmitter(event: CustomEvent<HTMLElement>) { \n this.emittedElement = event.detail;\n }\n\n getMenuIconWrapper(): HTMLElement | undefined {\n return this.emittedElement;\n }\n\n handleClassList(el, type, className) {\n el.classList[type](className)\n }\n\n closeDropdownMenu() {\n if(this.hasDropdownMenu) {\n const dropdownMenu = this.getDropdownMenu()\n const menuWrapper = this.getMenuIconWrapper()\n this.handleClassList(dropdownMenu, 'remove', 'open')\n this.handleClassList(menuWrapper, 'remove', 'show')\n }\n }\n\n toggleDropdownMenu() { \n if(this.hasDropdownMenu) {\n const dropdownMenu = this.getDropdownMenu()\n const menuWrapper = this.getMenuIconWrapper()\n this.handleClassList(dropdownMenu, 'toggle', 'open')\n this.handleClassList(menuWrapper, 'toggle', 'show')\n }\n }\n\n isDropdownMenuOpen(): boolean {\n const dropdownMenu = this.getDropdownMenu()\n return this.hasDropdownMenu && dropdownMenu && dropdownMenu.classList.contains('open')\n }\n\n handleLastItem() { \n const breadcrumbItems = this.el.closest('ifx-breadcrumb').querySelectorAll('ifx-breadcrumb-item')\n if(this.el === breadcrumbItems[breadcrumbItems.length-1]) { \n this.isLastItem = true;\n } else this.isLastItem = false;\n }\n\n generateUniqueId(prefix = 'id') {\n return `${prefix}-${Math.random().toString(36).substring(2, 9)}`;\n }\n\n componentWillLoad() { \n if (!this.uniqueId) {\n this.uniqueId = this.generateUniqueId('breadcrumb-dropdown');\n }\n this.handleLastItem()\n }\n\n componentDidUpdate() {\n this.handleLastItem()\n }\n\n componentWillRender() { \n this.setHasDropdownMenuState()\n }\n\n setHasDropdownMenuState() { \n const dropdownMenu = this.getIfxDropdownMenuComponent();\n if(dropdownMenu) {\n this.hasDropdownMenu = !!dropdownMenu;\n }\n }\n\n getIfxDropdownMenuComponent() { \n const dropdownMenu = this.el.querySelector('ifx-dropdown-menu');\n return dropdownMenu;\n }\n\n componentDidLoad() { \n const dropdownMenu = this.getIfxDropdownMenuComponent();\n\n if(!this.hasDropdownMenu) { \n const iconMenuWrapper = this.getMenuIconWrapper();\n this.handleClassList(iconMenuWrapper, 'toggle', 'hide');\n } else { \n dropdownMenu.isOpen = true;\n }\n }\n\n render() {\n return (\n <li class='breadcrumb-parent' aria-current={`${this.isLastItem ? 'page' : \"\"}`}>\n <li role=\"button\" tabindex={this.hasDropdownMenu ? 0 : -1} class=\"breadcrumb-wrapper\" onClick={() => this.toggleDropdownMenu()} aria-controls={this.uniqueId} aria-haspopup=\"menu\" aria-label=\"Toggle dropdown menu\">\n <slot name='label'/>\n <div id={this.uniqueId} class=\"dropdown-menu\" aria-expanded={this.isDropdownMenuOpen()} aria-label=\"Dropdown menu\">\n <slot />\n </div>\n </li>\n {!this.isLastItem && <span class=\"breadcrumb-divider\" aria-hidden=\"true\">/</span>}\n </li>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ifx-breadcrumb-item.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb-item.scss?tag=ifx-breadcrumb-item&encapsulation=shadow","src/components/breadcrumb/breadcrumb-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n.breadcrumb-parent {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace150;\n min-height: tokens.$ifxSize300;\n justify-content: center;\n\n &:hover {\n cursor: pointer;\n }\n\n & .breadcrumb-wrapper {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace100;\n position: relative;\n\n & .dropdown-menu {\n display: none;\n position: absolute;\n top: 20px;\n\n &.open {\n display: block;\n }\n }\n\n & a {\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex-direction: column;\n justify-content: center;\n padding: 0px;\n border-bottom: 1px solid #1D1D1D;\n }\n }\n\n & .breadcrumb-divider {\n width: 10px;\n height: tokens.$ifxSize200;\n color: tokens.$ifxColorEngineering200;\n line-height: 13px;\n font-size: tokens.$ifxFontSizeXl;\n\n margin-right: 12px;\n }\n}","import { Component, h, Element, State, Listen } from '@stencil/core';\n\n@Component({\n tag: 'ifx-breadcrumb-item',\n styleUrl: 'breadcrumb-item.scss',\n shadow: true,\n})\nexport class BreadcrumbItem {\n\n @State() isLastItem: boolean = false;\n @Element() el;\n private emittedElement: HTMLElement;\n @State() uniqueId: string;\n @State() hasDropdownMenu: boolean = false;\n\n @Listen('mousedown', { target: 'document' })\n handleOutsideClick(event: MouseEvent) {\n const path = event.composedPath();\n if (!path.includes(this.el)) {\n this.closeDropdownMenu();\n }\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Enter' || ev.key === ' ') {\n this.toggleDropdownMenu();\n } else if (ev.key === 'Escape') {\n this.closeDropdownMenu();\n }\n }\n\n getDropdownMenu() {\n const dropdownMenu = this.el.shadowRoot.querySelector('.dropdown-menu');\n return dropdownMenu\n }\n\n @Listen('breadcrumbMenuIconWrapper')\n menuWrapperEventReEmitter(event: CustomEvent<HTMLElement>) { \n this.emittedElement = event.detail;\n }\n\n getMenuIconWrapper(): HTMLElement | undefined {\n return this.emittedElement;\n }\n\n handleClassList(el, type, className) {\n el.classList[type](className)\n }\n\n closeDropdownMenu() {\n if(this.hasDropdownMenu) {\n const dropdownMenu = this.getDropdownMenu()\n const menuWrapper = this.getMenuIconWrapper()\n this.handleClassList(dropdownMenu, 'remove', 'open')\n this.handleClassList(menuWrapper, 'remove', 'show')\n }\n }\n\n toggleDropdownMenu() { \n if(this.hasDropdownMenu) {\n const dropdownMenu = this.getDropdownMenu()\n const menuWrapper = this.getMenuIconWrapper()\n this.handleClassList(dropdownMenu, 'toggle', 'open')\n this.handleClassList(menuWrapper, 'toggle', 'show')\n }\n }\n\n isDropdownMenuOpen(): boolean {\n const dropdownMenu = this.getDropdownMenu()\n return this.hasDropdownMenu && dropdownMenu && dropdownMenu.classList.contains('open')\n }\n\n handleLastItem() { \n const breadcrumbItems = this.el.closest('ifx-breadcrumb').querySelectorAll('ifx-breadcrumb-item')\n if(this.el === breadcrumbItems[breadcrumbItems.length-1]) { \n this.isLastItem = true;\n } else this.isLastItem = false;\n }\n\n generateUniqueId(prefix = 'id') {\n return `${prefix}-${Math.random().toString(36).substring(2, 9)}`;\n }\n\n componentWillLoad() { \n if (!this.uniqueId) {\n this.uniqueId = this.generateUniqueId('breadcrumb-dropdown');\n }\n this.handleLastItem()\n }\n\n componentDidUpdate() {\n this.handleLastItem()\n }\n\n componentWillRender() { \n this.setHasDropdownMenuState()\n }\n\n setHasDropdownMenuState() { \n const dropdownMenu = this.getIfxDropdownMenuComponent();\n if(dropdownMenu) {\n this.hasDropdownMenu = !!dropdownMenu;\n }\n }\n\n getIfxDropdownMenuComponent() { \n const dropdownMenu = this.el.querySelector('ifx-dropdown-menu');\n return dropdownMenu;\n }\n\n componentDidLoad() { \n const dropdownMenu = this.getIfxDropdownMenuComponent();\n\n if(!this.hasDropdownMenu) { \n const iconMenuWrapper = this.getMenuIconWrapper();\n this.handleClassList(iconMenuWrapper, 'toggle', 'hide');\n } else { \n dropdownMenu.isOpen = true;\n }\n }\n\n render() {\n return (\n <li class='breadcrumb-parent' aria-current={`${this.isLastItem ? 'page' : \"\"}`}>\n <li role=\"button\" tabindex={this.hasDropdownMenu ? 0 : -1} class=\"breadcrumb-wrapper\" onClick={() => this.toggleDropdownMenu()} aria-controls={this.uniqueId} aria-haspopup=\"menu\" aria-label=\"Toggle dropdown menu\">\n <slot name='label'/>\n <div id={this.uniqueId} class=\"dropdown-menu\" aria-expanded={this.isDropdownMenuOpen()} aria-label=\"Dropdown menu\">\n <slot />\n </div>\n </li>\n {!this.isLastItem && <span class=\"breadcrumb-divider\" aria-hidden=\"true\">/</span>}\n </li>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ifx-breadcrumb.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb.scss?tag=ifx-breadcrumb&encapsulation=shadow","src/components/breadcrumb/breadcrumb.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n}\n\n.breadcrumb {\n list-style: none;\n padding: 0px;\n margin: 0px;\n display: flex;\n flex-direction: row;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n font-size: tokens.$ifxFontSizeS;\n align-items: flex-start;\n //gap: tokens.$ifxSpace200; //this is where the gap comes from\n\n}\n\n// .separator {\n// color: tokens.$ifxColorEngineering300;\n// margin: 0 16px;\n// }","import { Component, h, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-breadcrumb',\n styleUrl: 'breadcrumb.scss',\n shadow: true\n})\nexport class Breadcrumb {\n @Element() el;\n\n async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-breadcrumb', await framework)\n }\n const element = this.el.shadowRoot.firstChild;\n this.validateBreadcrumbItemStructure(element);\n }\n\n private validateBreadcrumbItemStructure(element: HTMLElement) {\n if (!element) {\n console.error('element not found');\n return;\n }\n \n const slot = element.querySelector('slot');\n if(slot) { \n const assignedNodes = slot.assignedNodes();\n \n for (let i = 0; i < assignedNodes.length; i++) {\n const node = assignedNodes[i];\n if (node.nodeName === 'IFX-BREADCRUMB-ITEM') {\n const breadcrumbItem = node as HTMLIfxBreadcrumbItemElement;\n const breadcrumbItemLabel = breadcrumbItem.querySelector('ifx-breadcrumb-item-label');\n const breadcrumbDropdown = breadcrumbItem.querySelector('ifx-dropdown-menu');\n if (breadcrumbItemLabel.hasAttribute('href') && breadcrumbDropdown) {\n throw new Error('ifx-breadcrumb-item cannot have both a href and a dropdown menu.');\n }\n }\n }\n }\n }\n\n render() {\n return (\n <nav aria-label=\"Page navigation breadcrumb\">\n <ol class=\"breadcrumb\">\n <slot />\n </ol>\n </nav>\n );\n }\n}\n"],"names":[],"mappings":";;;;AAAA,MAAM,aAAa,GAAG,sPAAsP;;MCU/P,UAAU,GAAA,MAAA;;;;AAGrB,IAAA,MAAM,gBAAgB,GAAA;QACnB,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACpC,YAAA,MAAM,SAAS,GAAG,eAAe,EAAE;AACnC,YAAA,cAAc,CAAC,gBAAgB,EAAE,MAAM,SAAS,CAAC;;QAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU;AAC7C,QAAA,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;;AAGvC,IAAA,+BAA+B,CAAC,OAAoB,EAAA;QAC1D,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;YAClC;;QAGF,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;QAC1C,IAAG,IAAI,EAAE;AACP,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE;AAE1C,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7C,gBAAA,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC;AAC7B,gBAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,qBAAqB,EAAE;oBAC3C,MAAM,cAAc,GAAG,IAAoC;oBAC3D,MAAM,mBAAmB,GAAG,cAAc,CAAC,aAAa,CAAC,2BAA2B,CAAC;oBACrF,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,mBAAmB,CAAC;oBAC5E,IAAI,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,kBAAkB,EAAE;AAClE,wBAAA,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC;;;;;;IAO7F,MAAM,GAAA;AACJ,QAAA,QACE,0EAAgB,4BAA4B,EAAA,EAC1C,CAAI,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACpB,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACL,CACD;;;;;;;;"}
1
+ {"version":3,"file":"ifx-breadcrumb.entry.esm.js","sources":["src/components/breadcrumb/breadcrumb.scss?tag=ifx-breadcrumb&encapsulation=shadow","src/components/breadcrumb/breadcrumb.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n}\n\n.breadcrumb {\n list-style: none;\n padding: 0px;\n margin: 0px;\n display: flex;\n flex-direction: row;\n font-family: var(--ifx-font-family); // tokens.$ifxFontFamilyBody;\n\n font-size: tokens.$ifxFontSizeS;\n align-items: flex-start;\n //gap: tokens.$ifxSpace200; //this is where the gap comes from\n\n}\n\n// .separator {\n// color: tokens.$ifxColorEngineering300;\n// margin: 0 16px;\n// }","import { Component, h, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-breadcrumb',\n styleUrl: 'breadcrumb.scss',\n shadow: true\n})\nexport class Breadcrumb {\n @Element() el;\n\n async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-breadcrumb', await framework)\n }\n const element = this.el.shadowRoot.firstChild;\n this.validateBreadcrumbItemStructure(element);\n }\n\n private validateBreadcrumbItemStructure(element: HTMLElement) {\n if (!element) {\n console.error('element not found');\n return;\n }\n \n const slot = element.querySelector('slot');\n if(slot) { \n const assignedNodes = slot.assignedNodes();\n \n for (let i = 0; i < assignedNodes.length; i++) {\n const node = assignedNodes[i];\n if (node.nodeName === 'IFX-BREADCRUMB-ITEM') {\n const breadcrumbItem = node as HTMLIfxBreadcrumbItemElement;\n const breadcrumbItemLabel = breadcrumbItem.querySelector('ifx-breadcrumb-item-label');\n const breadcrumbDropdown = breadcrumbItem.querySelector('ifx-dropdown-menu');\n if (breadcrumbItemLabel.hasAttribute('href') && breadcrumbDropdown) {\n throw new Error('ifx-breadcrumb-item cannot have both a href and a dropdown menu.');\n }\n }\n }\n }\n }\n\n render() {\n return (\n <nav aria-label=\"Page navigation breadcrumb\">\n <ol class=\"breadcrumb\">\n <slot />\n </ol>\n </nav>\n );\n }\n}\n"],"names":[],"mappings":";;;;AAAA,MAAM,aAAa,GAAG,oPAAoP;;MCU7P,UAAU,GAAA,MAAA;;;;AAGrB,IAAA,MAAM,gBAAgB,GAAA;QACnB,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACpC,YAAA,MAAM,SAAS,GAAG,eAAe,EAAE;AACnC,YAAA,cAAc,CAAC,gBAAgB,EAAE,MAAM,SAAS,CAAC;;QAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU;AAC7C,QAAA,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC;;AAGvC,IAAA,+BAA+B,CAAC,OAAoB,EAAA;QAC1D,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;YAClC;;QAGF,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;QAC1C,IAAG,IAAI,EAAE;AACP,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE;AAE1C,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7C,gBAAA,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC;AAC7B,gBAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,qBAAqB,EAAE;oBAC3C,MAAM,cAAc,GAAG,IAAoC;oBAC3D,MAAM,mBAAmB,GAAG,cAAc,CAAC,aAAa,CAAC,2BAA2B,CAAC;oBACrF,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,mBAAmB,CAAC;oBAC5E,IAAI,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,kBAAkB,EAAE;AAClE,wBAAA,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC;;;;;;IAO7F,MAAM,GAAA;AACJ,QAAA,QACE,0EAAgB,4BAA4B,EAAA,EAC1C,CAAI,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACpB,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACL,CACD;;;;;;;;"}