@infineon/infineon-design-system-stencil 31.0.0--canary.1697.75ba6c50a31eb82e52e6adb3444c01768f83dc24.0 → 31.0.0--canary.1640.26c4c0764d79109b3335389182db63edca37148d.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (644) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +8 -8
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-alert.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  5. package/dist/cjs/ifx-basic-table.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +2 -2
  7. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +4 -4
  10. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ifx-button.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-card-headline.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -1
  14. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-card-text.cjs.entry.js +1 -1
  17. package/dist/cjs/ifx-card.cjs.entry.js +1 -1
  18. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  19. package/dist/cjs/ifx-chip_3.cjs.entry.js +26 -28
  20. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  28. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -1
  29. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  30. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  31. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  32. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +1 -1
  33. package/dist/cjs/ifx-filter-bar.cjs.entry.js +1 -1
  34. package/dist/cjs/ifx-filter-search.cjs.entry.js +1 -1
  35. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-footer.cjs.entry.js +1 -1
  38. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  39. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  41. package/dist/cjs/ifx-link.cjs.entry.js +2 -2
  42. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ifx-list-entry.cjs.entry.js +1 -1
  44. package/dist/cjs/ifx-list.cjs.entry.js +1 -1
  45. package/dist/cjs/ifx-modal.cjs.entry.js +9 -9
  46. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +20 -7
  48. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ifx-navbar-item.cjs.entry.js +1 -1
  50. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +1 -1
  51. package/dist/cjs/ifx-navbar.cjs.entry.js +4 -4
  52. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ifx-notification.cjs.entry.js +1 -1
  54. package/dist/cjs/ifx-number-indicator.cjs.entry.js +1 -1
  55. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  56. package/dist/cjs/ifx-progress-bar.cjs.entry.js +1 -1
  57. package/dist/cjs/ifx-radio-button.cjs.entry.js +71 -34
  58. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ifx-search-bar.cjs.entry.js +6 -6
  60. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ifx-search-field.cjs.entry.js +1 -1
  62. package/dist/cjs/ifx-segment.cjs.entry.js +1 -1
  63. package/dist/cjs/ifx-segmented-control.cjs.entry.js +1 -1
  64. package/dist/cjs/ifx-select.cjs.entry.js +1 -1
  65. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -1
  66. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +10 -11
  67. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  69. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  70. package/dist/cjs/ifx-slider.cjs.entry.js +1 -1
  71. package/dist/cjs/ifx-spinner.cjs.entry.js +1 -1
  72. package/dist/cjs/ifx-status.cjs.entry.js +1 -1
  73. package/dist/cjs/ifx-step.cjs.entry.js +1 -1
  74. package/dist/cjs/ifx-stepper.cjs.entry.js +1 -1
  75. package/dist/cjs/ifx-switch.cjs.entry.js +1 -1
  76. package/dist/cjs/ifx-tab.cjs.entry.js +1 -1
  77. package/dist/cjs/ifx-table.cjs.entry.js +23 -21
  78. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ifx-tabs.cjs.entry.js +7 -7
  80. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ifx-tag.cjs.entry.js +1 -1
  82. package/dist/cjs/ifx-textarea.cjs.entry.js +1 -1
  83. package/dist/cjs/ifx-tooltip.cjs.entry.js +1 -1
  84. package/dist/cjs/{index-e489135e.js → index-68ed35ac.js} +57 -50
  85. package/dist/cjs/index-68ed35ac.js.map +1 -0
  86. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  87. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  88. package/dist/cjs/loader.cjs.js +2 -2
  89. package/dist/collection/collection-manifest.json +1 -1
  90. package/dist/collection/components/accordion/accordion.js +2 -2
  91. package/dist/collection/components/accordion/accordion.js.map +1 -1
  92. package/dist/collection/components/accordion/accordion.stories.js +81 -7
  93. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  94. package/dist/collection/components/accordion/accordionItem.js +10 -10
  95. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  96. package/dist/collection/components/alert/alert.stories.js +45 -12
  97. package/dist/collection/components/alert/alert.stories.js.map +1 -1
  98. package/dist/collection/components/badge/badge.stories.js +28 -7
  99. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  100. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +3 -3
  101. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  102. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -3
  103. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  104. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +87 -13
  105. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -1
  106. package/dist/collection/components/button/button.stories.js +101 -9
  107. package/dist/collection/components/button/button.stories.js.map +1 -1
  108. package/dist/collection/components/card/card.stories.js +85 -4
  109. package/dist/collection/components/card/card.stories.js.map +1 -1
  110. package/dist/collection/components/checkbox/checkbox.stories.js +72 -14
  111. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  112. package/dist/collection/components/chip/chip-item/chip-item.js +4 -4
  113. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  114. package/dist/collection/components/chip/chip.js +15 -15
  115. package/dist/collection/components/chip/chip.js.map +1 -1
  116. package/dist/collection/components/chip/chip.stories.js +21 -26
  117. package/dist/collection/components/chip/chip.stories.js.map +1 -1
  118. package/dist/collection/components/chip/interfaces.js.map +1 -1
  119. package/dist/collection/components/content-switcher/content-switcher.stories.js +65 -3
  120. package/dist/collection/components/content-switcher/content-switcher.stories.js.map +1 -1
  121. package/dist/collection/components/date-picker/date-picker.stories.js +97 -7
  122. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -1
  123. package/dist/collection/components/dropdown/dropdown.stories.js +222 -64
  124. package/dist/collection/components/dropdown/dropdown.stories.js.map +1 -1
  125. package/dist/collection/components/footer/footer.stories.js +31 -1
  126. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  127. package/dist/collection/components/icon/infineonIconStencil.stories.js +7 -2
  128. package/dist/collection/components/icon/infineonIconStencil.stories.js.map +1 -1
  129. package/dist/collection/components/icon-button/icon-button.stories.js +61 -5
  130. package/dist/collection/components/icon-button/icon-button.stories.js.map +1 -1
  131. package/dist/collection/components/link/link.css +3 -0
  132. package/dist/collection/components/link/link.stories.js +53 -4
  133. package/dist/collection/components/link/link.stories.js.map +1 -1
  134. package/dist/collection/components/modal/modal.js +10 -10
  135. package/dist/collection/components/modal/modal.js.map +1 -1
  136. package/dist/collection/components/modal/modal.stories.js +96 -19
  137. package/dist/collection/components/modal/modal.stories.js.map +1 -1
  138. package/dist/collection/components/navigation/navbar/navbar.js +4 -4
  139. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  140. package/dist/collection/components/navigation/navbar/navbar.stories.js +176 -12
  141. package/dist/collection/components/navigation/navbar/navbar.stories.js.map +1 -1
  142. package/dist/collection/components/navigation/sidebar/sidebar-item.js +11 -32
  143. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  144. package/dist/collection/components/navigation/sidebar/sidebar.stories.js +184 -19
  145. package/dist/collection/components/navigation/sidebar/sidebar.stories.js.map +1 -1
  146. package/dist/collection/components/notification/notification.stories.js +55 -8
  147. package/dist/collection/components/notification/notification.stories.js.map +1 -1
  148. package/dist/collection/components/number-indicator/number-indicator.stories.js +19 -0
  149. package/dist/collection/components/number-indicator/number-indicator.stories.js.map +1 -1
  150. package/dist/collection/components/pagination/pagination.js +8 -57
  151. package/dist/collection/components/pagination/pagination.js.map +1 -1
  152. package/dist/collection/components/pagination/pagination.stories.js +19 -16
  153. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  154. package/dist/collection/components/progress-bar/progress-bar.stories.js +31 -8
  155. package/dist/collection/components/progress-bar/progress-bar.stories.js.map +1 -1
  156. package/dist/collection/components/radio-button/radio-button.css +13 -0
  157. package/dist/collection/components/radio-button/radio-button.js +87 -63
  158. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  159. package/dist/collection/components/radio-button/radio-button.stories.js +66 -13
  160. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  161. package/dist/collection/components/search-bar/search-bar.js +6 -6
  162. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  163. package/dist/collection/components/search-bar/search-bar.stories.js +58 -9
  164. package/dist/collection/components/search-bar/search-bar.stories.js.map +1 -1
  165. package/dist/collection/components/search-field/search-field.stories.js +54 -8
  166. package/dist/collection/components/search-field/search-field.stories.js.map +1 -1
  167. package/dist/collection/components/segmented-control/segmented-control.stories.js +1 -10
  168. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  169. package/dist/collection/components/select/multi-select/multiselect.js +20 -7
  170. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  171. package/dist/collection/components/select/multi-select/multiselect.stories.js +131 -5
  172. package/dist/collection/components/select/multi-select/multiselect.stories.js.map +1 -1
  173. package/dist/collection/components/select/single-select/select.stories.js +83 -26
  174. package/dist/collection/components/select/single-select/select.stories.js.map +1 -1
  175. package/dist/collection/components/slider/slider.stories.js +97 -13
  176. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  177. package/dist/collection/components/spinner/spinner.stories.js +34 -2
  178. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  179. package/dist/collection/components/status/status.stories.js +25 -1
  180. package/dist/collection/components/status/status.stories.js.map +1 -1
  181. package/dist/collection/components/stepper/stepper.stories.js +54 -25
  182. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  183. package/dist/collection/components/switch/switch.stories.js +51 -4
  184. package/dist/collection/components/switch/switch.stories.js.map +1 -1
  185. package/dist/collection/components/table-advanced-version/table.js +23 -21
  186. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  187. package/dist/collection/components/table-advanced-version/table.stories.js +124 -39
  188. package/dist/collection/components/table-advanced-version/table.stories.js.map +1 -1
  189. package/dist/collection/components/table-basic-version/table.stories.js +31 -4
  190. package/dist/collection/components/table-basic-version/table.stories.js.map +1 -1
  191. package/dist/collection/components/tabs/tabs.js +7 -7
  192. package/dist/collection/components/tabs/tabs.js.map +1 -1
  193. package/dist/collection/components/tabs/tabs.stories.js +104 -29
  194. package/dist/collection/components/tabs/tabs.stories.js.map +1 -1
  195. package/dist/collection/components/tag/tag.stories.js +18 -0
  196. package/dist/collection/components/tag/tag.stories.js.map +1 -1
  197. package/dist/collection/components/text-field/text-field.stories.js +116 -13
  198. package/dist/collection/components/text-field/text-field.stories.js.map +1 -1
  199. package/dist/collection/components/textarea/textarea.stories.js +1 -3
  200. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  201. package/dist/collection/components/tooltip/tooltip.stories.js +48 -4
  202. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  203. package/dist/components/ifx-accordion-item.js +1 -1
  204. package/dist/components/ifx-accordion.js +1 -1
  205. package/dist/components/ifx-alert.js +2 -2
  206. package/dist/components/ifx-badge.js +1 -1
  207. package/dist/components/ifx-basic-table.js +1 -1
  208. package/dist/components/ifx-breadcrumb-item-label.js +4 -4
  209. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  210. package/dist/components/ifx-breadcrumb-item.js +1 -1
  211. package/dist/components/ifx-breadcrumb.js +4 -4
  212. package/dist/components/ifx-breadcrumb.js.map +1 -1
  213. package/dist/components/ifx-button.js +1 -1
  214. package/dist/components/ifx-card-headline.js +1 -1
  215. package/dist/components/ifx-card-image.js +1 -1
  216. package/dist/components/ifx-card-links.js +1 -1
  217. package/dist/components/ifx-card-overline.js +1 -1
  218. package/dist/components/ifx-card-text.js +1 -1
  219. package/dist/components/ifx-card.js +1 -1
  220. package/dist/components/ifx-checkbox.js +1 -1
  221. package/dist/components/ifx-chip-item.js +1 -1
  222. package/dist/components/ifx-chip.js +1 -1
  223. package/dist/components/ifx-content-switcher-item.js +1 -1
  224. package/dist/components/ifx-content-switcher.js +1 -1
  225. package/dist/components/ifx-date-picker.js +2 -2
  226. package/dist/components/ifx-dropdown-header.js +1 -1
  227. package/dist/components/ifx-dropdown-item.js +2 -2
  228. package/dist/components/ifx-dropdown-menu.js +1 -1
  229. package/dist/components/ifx-dropdown-separator.js +1 -1
  230. package/dist/components/ifx-dropdown-trigger-button.js +3 -3
  231. package/dist/components/ifx-dropdown-trigger.js +1 -1
  232. package/dist/components/ifx-dropdown.js +1 -1
  233. package/dist/components/ifx-faq.js +4 -4
  234. package/dist/components/ifx-filter-accordion.js +3 -3
  235. package/dist/components/ifx-filter-bar.js +3 -3
  236. package/dist/components/ifx-filter-search.js +3 -3
  237. package/dist/components/ifx-filter-type-group.js +1 -1
  238. package/dist/components/ifx-footer-column.js +1 -1
  239. package/dist/components/ifx-footer.js +1 -1
  240. package/dist/components/ifx-icon-button.js +1 -1
  241. package/dist/components/ifx-icon.js +1 -1
  242. package/dist/components/ifx-icons-preview.js +2 -2
  243. package/dist/components/ifx-link.js +1 -1
  244. package/dist/components/ifx-list-entry.js +4 -4
  245. package/dist/components/ifx-list.js +3 -3
  246. package/dist/components/ifx-modal.js +11 -11
  247. package/dist/components/ifx-modal.js.map +1 -1
  248. package/dist/components/ifx-multiselect.js +1 -1
  249. package/dist/components/ifx-navbar-item.js +2 -2
  250. package/dist/components/ifx-navbar-profile.js +1 -1
  251. package/dist/components/ifx-navbar.js +6 -6
  252. package/dist/components/ifx-navbar.js.map +1 -1
  253. package/dist/components/ifx-notification.js +3 -3
  254. package/dist/components/ifx-number-indicator.js +1 -1
  255. package/dist/components/ifx-overview-table.js +4 -4
  256. package/dist/components/ifx-pagination.js +1 -1
  257. package/dist/components/ifx-progress-bar.js +1 -1
  258. package/dist/components/ifx-radio-button.js +1 -1
  259. package/dist/components/ifx-search-bar.js +8 -8
  260. package/dist/components/ifx-search-bar.js.map +1 -1
  261. package/dist/components/ifx-search-field.js +1 -1
  262. package/dist/components/ifx-segment.js +2 -2
  263. package/dist/components/ifx-segmented-control.js +2 -2
  264. package/dist/components/ifx-select.js +1 -1
  265. package/dist/components/ifx-set-filter.js +7 -7
  266. package/dist/components/ifx-sidebar-item.js +14 -16
  267. package/dist/components/ifx-sidebar-item.js.map +1 -1
  268. package/dist/components/ifx-sidebar-title.js +1 -1
  269. package/dist/components/ifx-sidebar.js +1 -1
  270. package/dist/components/ifx-slider.js +2 -2
  271. package/dist/components/ifx-spinner.js +1 -1
  272. package/dist/components/ifx-status.js +1 -1
  273. package/dist/components/ifx-step.js +2 -2
  274. package/dist/components/ifx-stepper.js +1 -1
  275. package/dist/components/ifx-switch.js +1 -1
  276. package/dist/components/ifx-tab.js +1 -1
  277. package/dist/components/ifx-table.js +33 -31
  278. package/dist/components/ifx-table.js.map +1 -1
  279. package/dist/components/ifx-tabs.js +8 -8
  280. package/dist/components/ifx-tabs.js.map +1 -1
  281. package/dist/components/ifx-tag.js +2 -2
  282. package/dist/components/ifx-text-field.js +1 -1
  283. package/dist/components/ifx-textarea.js +1 -1
  284. package/dist/components/ifx-tooltip.js +2 -2
  285. package/dist/components/index.js +1 -1
  286. package/dist/components/{p-c194f64d.js → p-120f0d27.js} +4 -4
  287. package/dist/components/{p-c194f64d.js.map → p-120f0d27.js.map} +1 -1
  288. package/dist/components/{p-77dbb05d.js → p-14204f28.js} +3 -3
  289. package/dist/components/{p-77dbb05d.js.map → p-14204f28.js.map} +1 -1
  290. package/dist/components/{p-35713bcf.js → p-3ee20ed5.js} +35 -28
  291. package/dist/components/p-3ee20ed5.js.map +1 -0
  292. package/dist/components/{p-3cbe9ffe.js → p-4fff2da8.js} +3 -3
  293. package/dist/components/{p-3cbe9ffe.js.map → p-4fff2da8.js.map} +1 -1
  294. package/dist/components/{p-af1f8464.js → p-5bc6d67d.js} +2 -2
  295. package/dist/components/{p-af1f8464.js.map → p-5bc6d67d.js.map} +1 -1
  296. package/dist/components/{p-529e994b.js → p-6a284649.js} +8 -8
  297. package/dist/components/p-6a284649.js.map +1 -0
  298. package/dist/components/{p-280ced72.js → p-6a2ff8f4.js} +18 -18
  299. package/dist/components/p-6a2ff8f4.js.map +1 -0
  300. package/dist/components/{p-eab00c46.js → p-6fd6d1a9.js} +3 -3
  301. package/dist/components/{p-eab00c46.js.map → p-6fd6d1a9.js.map} +1 -1
  302. package/dist/components/{p-920ceb71.js → p-73a1df17.js} +2 -2
  303. package/dist/components/{p-920ceb71.js.map → p-73a1df17.js.map} +1 -1
  304. package/dist/components/p-7bb46b29.js +134 -0
  305. package/dist/components/p-7bb46b29.js.map +1 -0
  306. package/dist/components/{p-eea28614.js → p-7ff0e531.js} +13 -16
  307. package/dist/components/p-7ff0e531.js.map +1 -0
  308. package/dist/components/{p-eee401ca.js → p-828bbb25.js} +2 -2
  309. package/dist/components/{p-eee401ca.js.map → p-828bbb25.js.map} +1 -1
  310. package/dist/components/{p-28238f7f.js → p-8554cfb9.js} +2 -2
  311. package/dist/components/{p-28238f7f.js.map → p-8554cfb9.js.map} +1 -1
  312. package/dist/components/{p-17926343.js → p-9961c854.js} +3 -3
  313. package/dist/components/p-9961c854.js.map +1 -0
  314. package/dist/components/{p-1ab9570f.js → p-a51cb7b6.js} +10 -10
  315. package/dist/components/{p-1ab9570f.js.map → p-a51cb7b6.js.map} +1 -1
  316. package/dist/components/{p-b901072e.js → p-bb48fe64.js} +24 -11
  317. package/dist/components/p-bb48fe64.js.map +1 -0
  318. package/dist/components/{p-b2de2441.js → p-c11e0b18.js} +3 -3
  319. package/dist/components/{p-b2de2441.js.map → p-c11e0b18.js.map} +1 -1
  320. package/dist/components/{p-3eb62a9b.js → p-e74c8dfd.js} +3 -3
  321. package/dist/components/{p-3eb62a9b.js.map → p-e74c8dfd.js.map} +1 -1
  322. package/dist/esm/ifx-accordion_2.entry.js +8 -8
  323. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  324. package/dist/esm/ifx-alert.entry.js +1 -1
  325. package/dist/esm/ifx-badge.entry.js +1 -1
  326. package/dist/esm/ifx-basic-table.entry.js +1 -1
  327. package/dist/esm/ifx-breadcrumb-item-label.entry.js +2 -2
  328. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  329. package/dist/esm/ifx-breadcrumb-item.entry.js +1 -1
  330. package/dist/esm/ifx-breadcrumb.entry.js +4 -4
  331. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  332. package/dist/esm/ifx-button.entry.js +1 -1
  333. package/dist/esm/ifx-card-headline.entry.js +1 -1
  334. package/dist/esm/ifx-card-image.entry.js +1 -1
  335. package/dist/esm/ifx-card-links.entry.js +1 -1
  336. package/dist/esm/ifx-card-overline.entry.js +1 -1
  337. package/dist/esm/ifx-card-text.entry.js +1 -1
  338. package/dist/esm/ifx-card.entry.js +1 -1
  339. package/dist/esm/ifx-checkbox.entry.js +1 -1
  340. package/dist/esm/ifx-chip_3.entry.js +26 -28
  341. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  342. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  343. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  344. package/dist/esm/ifx-date-picker.entry.js +1 -1
  345. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  346. package/dist/esm/ifx-dropdown-item.entry.js +1 -1
  347. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  348. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  349. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -1
  350. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  351. package/dist/esm/ifx-dropdown.entry.js +1 -1
  352. package/dist/esm/ifx-faq.entry.js +1 -1
  353. package/dist/esm/ifx-filter-accordion.entry.js +1 -1
  354. package/dist/esm/ifx-filter-bar.entry.js +1 -1
  355. package/dist/esm/ifx-filter-search.entry.js +1 -1
  356. package/dist/esm/ifx-filter-type-group.entry.js +1 -1
  357. package/dist/esm/ifx-footer-column.entry.js +1 -1
  358. package/dist/esm/ifx-footer.entry.js +1 -1
  359. package/dist/esm/ifx-icon-button.entry.js +1 -1
  360. package/dist/esm/ifx-icon.entry.js +1 -1
  361. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  362. package/dist/esm/ifx-link.entry.js +2 -2
  363. package/dist/esm/ifx-link.entry.js.map +1 -1
  364. package/dist/esm/ifx-list-entry.entry.js +1 -1
  365. package/dist/esm/ifx-list.entry.js +1 -1
  366. package/dist/esm/ifx-modal.entry.js +9 -9
  367. package/dist/esm/ifx-modal.entry.js.map +1 -1
  368. package/dist/esm/ifx-multiselect_2.entry.js +20 -7
  369. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  370. package/dist/esm/ifx-navbar-item.entry.js +1 -1
  371. package/dist/esm/ifx-navbar-profile.entry.js +1 -1
  372. package/dist/esm/ifx-navbar.entry.js +4 -4
  373. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  374. package/dist/esm/ifx-notification.entry.js +1 -1
  375. package/dist/esm/ifx-number-indicator.entry.js +1 -1
  376. package/dist/esm/ifx-overview-table.entry.js +1 -1
  377. package/dist/esm/ifx-progress-bar.entry.js +1 -1
  378. package/dist/esm/ifx-radio-button.entry.js +71 -34
  379. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  380. package/dist/esm/ifx-search-bar.entry.js +6 -6
  381. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  382. package/dist/esm/ifx-search-field.entry.js +1 -1
  383. package/dist/esm/ifx-segment.entry.js +1 -1
  384. package/dist/esm/ifx-segmented-control.entry.js +1 -1
  385. package/dist/esm/ifx-select.entry.js +1 -1
  386. package/dist/esm/ifx-set-filter.entry.js +1 -1
  387. package/dist/esm/ifx-sidebar-item.entry.js +10 -11
  388. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  389. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  390. package/dist/esm/ifx-sidebar.entry.js +1 -1
  391. package/dist/esm/ifx-slider.entry.js +1 -1
  392. package/dist/esm/ifx-spinner.entry.js +1 -1
  393. package/dist/esm/ifx-status.entry.js +1 -1
  394. package/dist/esm/ifx-step.entry.js +1 -1
  395. package/dist/esm/ifx-stepper.entry.js +1 -1
  396. package/dist/esm/ifx-switch.entry.js +1 -1
  397. package/dist/esm/ifx-tab.entry.js +1 -1
  398. package/dist/esm/ifx-table.entry.js +23 -21
  399. package/dist/esm/ifx-table.entry.js.map +1 -1
  400. package/dist/esm/ifx-tabs.entry.js +7 -7
  401. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  402. package/dist/esm/ifx-tag.entry.js +1 -1
  403. package/dist/esm/ifx-textarea.entry.js +1 -1
  404. package/dist/esm/ifx-tooltip.entry.js +1 -1
  405. package/dist/esm/{index-12dad3f6.js → index-f6e95f3d.js} +57 -50
  406. package/dist/esm/index-f6e95f3d.js.map +1 -0
  407. package/dist/esm/infineon-design-system-stencil.js +4 -4
  408. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  409. package/dist/esm/loader.js +3 -3
  410. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  411. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  412. package/dist/infineon-design-system-stencil/{p-83d10d57.entry.js → p-008fe85e.entry.js} +2 -2
  413. package/dist/infineon-design-system-stencil/{p-095df841.entry.js → p-03f5d7d6.entry.js} +2 -2
  414. package/dist/infineon-design-system-stencil/{p-e52d0b1a.entry.js → p-07485705.entry.js} +2 -2
  415. package/dist/infineon-design-system-stencil/p-0a03645f.entry.js +2 -0
  416. package/dist/infineon-design-system-stencil/p-0a03645f.entry.js.map +1 -0
  417. package/dist/infineon-design-system-stencil/{p-0d620279.entry.js → p-0cc70fe1.entry.js} +2 -2
  418. package/dist/infineon-design-system-stencil/{p-6777690c.entry.js → p-0fdd8cca.entry.js} +2 -2
  419. package/dist/infineon-design-system-stencil/{p-5f5ccef2.entry.js → p-10456581.entry.js} +2 -2
  420. package/dist/infineon-design-system-stencil/{p-cde478c3.entry.js → p-12db6350.entry.js} +2 -2
  421. package/dist/infineon-design-system-stencil/{p-abb7c842.entry.js → p-1309d097.entry.js} +2 -2
  422. package/dist/infineon-design-system-stencil/{p-385a8dea.entry.js → p-1f0bc888.entry.js} +2 -2
  423. package/dist/infineon-design-system-stencil/p-22496889.entry.js +2 -0
  424. package/dist/infineon-design-system-stencil/{p-d93f128c.entry.js.map → p-22496889.entry.js.map} +1 -1
  425. package/dist/infineon-design-system-stencil/{p-1ce3acf6.entry.js → p-234d0bed.entry.js} +2 -2
  426. package/dist/infineon-design-system-stencil/{p-a7e94e8b.entry.js → p-2e8a808e.entry.js} +2 -2
  427. package/dist/infineon-design-system-stencil/p-2e8a808e.entry.js.map +1 -0
  428. package/dist/infineon-design-system-stencil/{p-58a4d36f.entry.js → p-2f12adbc.entry.js} +2 -2
  429. package/dist/infineon-design-system-stencil/{p-16390b05.entry.js → p-33f5c7b8.entry.js} +2 -2
  430. package/dist/infineon-design-system-stencil/p-37012b21.entry.js +2 -0
  431. package/dist/infineon-design-system-stencil/p-37012b21.entry.js.map +1 -0
  432. package/dist/infineon-design-system-stencil/{p-0acaa8e4.entry.js → p-37e44a68.entry.js} +2 -2
  433. package/dist/infineon-design-system-stencil/p-3a33daaf.entry.js +2 -0
  434. package/dist/infineon-design-system-stencil/p-3a33daaf.entry.js.map +1 -0
  435. package/dist/infineon-design-system-stencil/{p-5916cb5c.entry.js → p-3af201db.entry.js} +2 -2
  436. package/dist/infineon-design-system-stencil/{p-452b2e42.entry.js → p-3b02b076.entry.js} +2 -2
  437. package/dist/infineon-design-system-stencil/p-3e68969c.entry.js +2 -0
  438. package/dist/infineon-design-system-stencil/{p-da6efe6b.entry.js.map → p-3e68969c.entry.js.map} +1 -1
  439. package/dist/infineon-design-system-stencil/{p-0179cb3c.entry.js → p-3f5c3424.entry.js} +2 -2
  440. package/dist/infineon-design-system-stencil/{p-82992baa.entry.js → p-4349f994.entry.js} +2 -2
  441. package/dist/infineon-design-system-stencil/{p-5729d495.entry.js → p-4fac0ff2.entry.js} +2 -2
  442. package/dist/infineon-design-system-stencil/{p-4fdb13ec.entry.js → p-589d005a.entry.js} +2 -2
  443. package/dist/infineon-design-system-stencil/{p-23c0b40c.entry.js → p-598ec153.entry.js} +2 -2
  444. package/dist/infineon-design-system-stencil/{p-ff6f111d.entry.js → p-61ddcf0a.entry.js} +2 -2
  445. package/dist/infineon-design-system-stencil/{p-11580775.entry.js → p-62c705f1.entry.js} +2 -2
  446. package/dist/infineon-design-system-stencil/{p-9d99d0f2.entry.js → p-68dd9fa2.entry.js} +2 -2
  447. package/dist/infineon-design-system-stencil/p-68dd9fa2.entry.js.map +1 -0
  448. package/dist/infineon-design-system-stencil/{p-3ddd67ce.entry.js → p-7182fd2d.entry.js} +2 -2
  449. package/dist/infineon-design-system-stencil/{p-e7e87a4a.entry.js → p-71c8cb23.entry.js} +2 -2
  450. package/dist/infineon-design-system-stencil/{p-45cd79e4.entry.js → p-784660b3.entry.js} +2 -2
  451. package/dist/infineon-design-system-stencil/{p-2bae45cd.entry.js → p-814da9fd.entry.js} +2 -2
  452. package/dist/infineon-design-system-stencil/{p-9adea907.entry.js → p-82f9da03.entry.js} +2 -2
  453. package/dist/infineon-design-system-stencil/p-8787e63b.entry.js +2 -0
  454. package/dist/infineon-design-system-stencil/p-8787e63b.entry.js.map +1 -0
  455. package/dist/infineon-design-system-stencil/{p-a3c2cbe0.entry.js → p-8a160977.entry.js} +2 -2
  456. package/dist/infineon-design-system-stencil/{p-0238f780.entry.js → p-8b70e2ba.entry.js} +2 -2
  457. package/dist/infineon-design-system-stencil/{p-85b61d98.entry.js → p-934704d9.entry.js} +2 -2
  458. package/dist/infineon-design-system-stencil/p-94071380.entry.js +2 -0
  459. package/dist/infineon-design-system-stencil/p-94071380.entry.js.map +1 -0
  460. package/dist/infineon-design-system-stencil/p-97fae74e.entry.js +2 -0
  461. package/dist/infineon-design-system-stencil/p-97fae74e.entry.js.map +1 -0
  462. package/dist/infineon-design-system-stencil/{p-7dbec7ce.entry.js → p-9a988a72.entry.js} +2 -2
  463. package/dist/infineon-design-system-stencil/{p-0b58a27a.entry.js → p-a1120755.entry.js} +2 -2
  464. package/dist/infineon-design-system-stencil/p-a1120755.entry.js.map +1 -0
  465. package/dist/infineon-design-system-stencil/p-a2e48a4e.entry.js +2 -0
  466. package/dist/infineon-design-system-stencil/p-a2e48a4e.entry.js.map +1 -0
  467. package/dist/infineon-design-system-stencil/{p-4baf201d.entry.js → p-a2f7459e.entry.js} +2 -2
  468. package/dist/infineon-design-system-stencil/{p-83ef99a2.entry.js → p-a358461c.entry.js} +2 -2
  469. package/dist/infineon-design-system-stencil/{p-cb2bfd10.entry.js → p-aa5f89b6.entry.js} +2 -2
  470. package/dist/infineon-design-system-stencil/{p-77fbff19.entry.js → p-b120a552.entry.js} +2 -2
  471. package/dist/infineon-design-system-stencil/{p-1cf0cd6c.entry.js → p-b39683b7.entry.js} +2 -2
  472. package/dist/infineon-design-system-stencil/{p-14ef505d.entry.js → p-b9746c86.entry.js} +2 -2
  473. package/dist/infineon-design-system-stencil/{p-accaa79e.entry.js → p-bb527c39.entry.js} +2 -2
  474. package/dist/infineon-design-system-stencil/{p-b27a47fe.entry.js → p-c2ff66ea.entry.js} +2 -2
  475. package/dist/infineon-design-system-stencil/{p-52b61a69.entry.js → p-c85d7577.entry.js} +2 -2
  476. package/dist/infineon-design-system-stencil/{p-1d2f0317.entry.js → p-cb3a70ad.entry.js} +2 -2
  477. package/dist/infineon-design-system-stencil/{p-1548797e.entry.js → p-cdac9833.entry.js} +2 -2
  478. package/dist/infineon-design-system-stencil/{p-26dfd238.entry.js → p-cea7cb98.entry.js} +2 -2
  479. package/dist/infineon-design-system-stencil/{p-618c5232.entry.js → p-cfa7a442.entry.js} +2 -2
  480. package/dist/infineon-design-system-stencil/{p-9b61ae4f.entry.js → p-d3c1397a.entry.js} +2 -2
  481. package/dist/infineon-design-system-stencil/{p-d9553320.entry.js → p-d63b8c2f.entry.js} +2 -2
  482. package/dist/infineon-design-system-stencil/p-da97c1b6.entry.js +2 -0
  483. package/dist/infineon-design-system-stencil/p-dbc69097.entry.js +2 -0
  484. package/dist/infineon-design-system-stencil/p-dbc69097.entry.js.map +1 -0
  485. package/dist/infineon-design-system-stencil/p-e07ca773.entry.js +2 -0
  486. package/dist/infineon-design-system-stencil/{p-cb5f03cc.entry.js → p-e1715731.entry.js} +2 -2
  487. package/dist/infineon-design-system-stencil/p-e244bae4.js +3 -0
  488. package/dist/infineon-design-system-stencil/p-e244bae4.js.map +1 -0
  489. package/dist/infineon-design-system-stencil/{p-6d55468a.entry.js → p-e2ad853d.entry.js} +2 -2
  490. package/dist/infineon-design-system-stencil/{p-fdbb53b3.entry.js → p-e8b6810f.entry.js} +2 -2
  491. package/dist/infineon-design-system-stencil/{p-892ef42f.entry.js → p-ebb196ae.entry.js} +2 -2
  492. package/dist/infineon-design-system-stencil/{p-dd5b5ec5.entry.js → p-ee32b31a.entry.js} +2 -2
  493. package/dist/infineon-design-system-stencil/{p-f4d00e57.entry.js → p-eeccb158.entry.js} +2 -2
  494. package/dist/infineon-design-system-stencil/{p-6bbc85ef.entry.js → p-fa25549a.entry.js} +2 -2
  495. package/dist/infineon-design-system-stencil/p-fb455026.entry.js +2 -0
  496. package/dist/infineon-design-system-stencil/{p-a9c13b65.entry.js.map → p-fb455026.entry.js.map} +1 -1
  497. package/dist/infineon-design-system-stencil/p-fe702bb0.entry.js +2 -0
  498. package/dist/infineon-design-system-stencil/p-fe702bb0.entry.js.map +1 -0
  499. package/dist/types/components/accordion/accordion.stories.d.ts +67 -1
  500. package/dist/types/components/accordion/accordionItem.d.ts +3 -3
  501. package/dist/types/components/alert/alert.stories.d.ts +38 -11
  502. package/dist/types/components/badge/badge.stories.d.ts +23 -3
  503. package/dist/types/components/breadcrumb/breadcrumb-item-label.d.ts +1 -1
  504. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +83 -1
  505. package/dist/types/components/button/button.stories.d.ts +92 -16
  506. package/dist/types/components/card/card.stories.d.ts +95 -1
  507. package/dist/types/components/checkbox/checkbox.stories.d.ts +65 -10
  508. package/dist/types/components/chip/chip-item/chip-item.d.ts +1 -1
  509. package/dist/types/components/chip/chip.d.ts +1 -1
  510. package/dist/types/components/chip/chip.stories.d.ts +11 -4
  511. package/dist/types/components/chip/interfaces.d.ts +1 -1
  512. package/dist/types/components/content-switcher/content-switcher.stories.d.ts +66 -0
  513. package/dist/types/components/date-picker/date-picker.stories.d.ts +89 -2
  514. package/dist/types/components/dropdown/dropdown.stories.d.ts +90 -33
  515. package/dist/types/components/footer/footer.stories.d.ts +26 -0
  516. package/dist/types/components/icon/infineonIconStencil.stories.d.ts +5 -0
  517. package/dist/types/components/icon-button/icon-button.stories.d.ts +56 -8
  518. package/dist/types/components/link/link.stories.d.ts +49 -6
  519. package/dist/types/components/modal/modal.d.ts +2 -2
  520. package/dist/types/components/modal/modal.stories.d.ts +77 -3
  521. package/dist/types/components/navigation/navbar/navbar.stories.d.ts +222 -6
  522. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +2 -3
  523. package/dist/types/components/navigation/sidebar/sidebar.stories.d.ts +161 -7
  524. package/dist/types/components/notification/notification.stories.d.ts +46 -2
  525. package/dist/types/components/number-indicator/number-indicator.stories.d.ts +19 -0
  526. package/dist/types/components/pagination/pagination.d.ts +1 -4
  527. package/dist/types/components/pagination/pagination.stories.d.ts +12 -8
  528. package/dist/types/components/progress-bar/progress-bar.stories.d.ts +25 -4
  529. package/dist/types/components/radio-button/radio-button.d.ts +9 -19
  530. package/dist/types/components/radio-button/radio-button.stories.d.ts +59 -8
  531. package/dist/types/components/search-bar/search-bar.d.ts +1 -1
  532. package/dist/types/components/search-bar/search-bar.stories.d.ts +60 -3
  533. package/dist/types/components/search-field/search-field.stories.d.ts +45 -6
  534. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +0 -3
  535. package/dist/types/components/select/multi-select/multiselect.d.ts +1 -1
  536. package/dist/types/components/select/multi-select/multiselect.stories.d.ts +125 -0
  537. package/dist/types/components/select/single-select/select.stories.d.ts +67 -24
  538. package/dist/types/components/slider/slider.stories.d.ts +110 -0
  539. package/dist/types/components/spinner/spinner.stories.d.ts +32 -0
  540. package/dist/types/components/status/status.stories.d.ts +24 -2
  541. package/dist/types/components/stepper/stepper.stories.d.ts +30 -6
  542. package/dist/types/components/switch/switch.stories.d.ts +47 -1
  543. package/dist/types/components/table-advanced-version/table.stories.d.ts +50 -11
  544. package/dist/types/components/table-basic-version/table.stories.d.ts +21 -1
  545. package/dist/types/components/tabs/tabs.d.ts +1 -1
  546. package/dist/types/components/tabs/tabs.stories.d.ts +88 -9
  547. package/dist/types/components/tag/tag.stories.d.ts +20 -0
  548. package/dist/types/components/text-field/text-field.stories.d.ts +106 -10
  549. package/dist/types/components/tooltip/tooltip.stories.d.ts +41 -6
  550. package/dist/types/components.d.ts +20 -32
  551. package/package.json +3 -2
  552. package/dist/cjs/index-e489135e.js.map +0 -1
  553. package/dist/components/p-17926343.js.map +0 -1
  554. package/dist/components/p-280ced72.js.map +0 -1
  555. package/dist/components/p-35713bcf.js.map +0 -1
  556. package/dist/components/p-529e994b.js.map +0 -1
  557. package/dist/components/p-b901072e.js.map +0 -1
  558. package/dist/components/p-eea28614.js.map +0 -1
  559. package/dist/components/p-ff4327c2.js +0 -95
  560. package/dist/components/p-ff4327c2.js.map +0 -1
  561. package/dist/esm/index-12dad3f6.js.map +0 -1
  562. package/dist/infineon-design-system-stencil/p-04cb8ce1.entry.js +0 -2
  563. package/dist/infineon-design-system-stencil/p-0b58a27a.entry.js.map +0 -1
  564. package/dist/infineon-design-system-stencil/p-18490394.entry.js +0 -2
  565. package/dist/infineon-design-system-stencil/p-18490394.entry.js.map +0 -1
  566. package/dist/infineon-design-system-stencil/p-1a4d8854.entry.js +0 -2
  567. package/dist/infineon-design-system-stencil/p-1a4d8854.entry.js.map +0 -1
  568. package/dist/infineon-design-system-stencil/p-49939261.entry.js +0 -2
  569. package/dist/infineon-design-system-stencil/p-49939261.entry.js.map +0 -1
  570. package/dist/infineon-design-system-stencil/p-4cfae291.entry.js +0 -2
  571. package/dist/infineon-design-system-stencil/p-4cfae291.entry.js.map +0 -1
  572. package/dist/infineon-design-system-stencil/p-63f09820.entry.js +0 -2
  573. package/dist/infineon-design-system-stencil/p-63f09820.entry.js.map +0 -1
  574. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js +0 -2
  575. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js.map +0 -1
  576. package/dist/infineon-design-system-stencil/p-89651a48.entry.js +0 -2
  577. package/dist/infineon-design-system-stencil/p-89651a48.entry.js.map +0 -1
  578. package/dist/infineon-design-system-stencil/p-9a76c9c5.entry.js +0 -2
  579. package/dist/infineon-design-system-stencil/p-9a76c9c5.entry.js.map +0 -1
  580. package/dist/infineon-design-system-stencil/p-9d99d0f2.entry.js.map +0 -1
  581. package/dist/infineon-design-system-stencil/p-a7e94e8b.entry.js.map +0 -1
  582. package/dist/infineon-design-system-stencil/p-a9c13b65.entry.js +0 -2
  583. package/dist/infineon-design-system-stencil/p-c5a54d87.entry.js +0 -2
  584. package/dist/infineon-design-system-stencil/p-c5a54d87.entry.js.map +0 -1
  585. package/dist/infineon-design-system-stencil/p-c63974da.js +0 -3
  586. package/dist/infineon-design-system-stencil/p-c63974da.js.map +0 -1
  587. package/dist/infineon-design-system-stencil/p-d93f128c.entry.js +0 -2
  588. package/dist/infineon-design-system-stencil/p-da6efe6b.entry.js +0 -2
  589. package/dist/infineon-design-system-stencil/p-f36ba7ae.entry.js +0 -2
  590. /package/dist/infineon-design-system-stencil/{p-83d10d57.entry.js.map → p-008fe85e.entry.js.map} +0 -0
  591. /package/dist/infineon-design-system-stencil/{p-095df841.entry.js.map → p-03f5d7d6.entry.js.map} +0 -0
  592. /package/dist/infineon-design-system-stencil/{p-e52d0b1a.entry.js.map → p-07485705.entry.js.map} +0 -0
  593. /package/dist/infineon-design-system-stencil/{p-0d620279.entry.js.map → p-0cc70fe1.entry.js.map} +0 -0
  594. /package/dist/infineon-design-system-stencil/{p-6777690c.entry.js.map → p-0fdd8cca.entry.js.map} +0 -0
  595. /package/dist/infineon-design-system-stencil/{p-5f5ccef2.entry.js.map → p-10456581.entry.js.map} +0 -0
  596. /package/dist/infineon-design-system-stencil/{p-cde478c3.entry.js.map → p-12db6350.entry.js.map} +0 -0
  597. /package/dist/infineon-design-system-stencil/{p-abb7c842.entry.js.map → p-1309d097.entry.js.map} +0 -0
  598. /package/dist/infineon-design-system-stencil/{p-385a8dea.entry.js.map → p-1f0bc888.entry.js.map} +0 -0
  599. /package/dist/infineon-design-system-stencil/{p-1ce3acf6.entry.js.map → p-234d0bed.entry.js.map} +0 -0
  600. /package/dist/infineon-design-system-stencil/{p-58a4d36f.entry.js.map → p-2f12adbc.entry.js.map} +0 -0
  601. /package/dist/infineon-design-system-stencil/{p-16390b05.entry.js.map → p-33f5c7b8.entry.js.map} +0 -0
  602. /package/dist/infineon-design-system-stencil/{p-0acaa8e4.entry.js.map → p-37e44a68.entry.js.map} +0 -0
  603. /package/dist/infineon-design-system-stencil/{p-5916cb5c.entry.js.map → p-3af201db.entry.js.map} +0 -0
  604. /package/dist/infineon-design-system-stencil/{p-452b2e42.entry.js.map → p-3b02b076.entry.js.map} +0 -0
  605. /package/dist/infineon-design-system-stencil/{p-0179cb3c.entry.js.map → p-3f5c3424.entry.js.map} +0 -0
  606. /package/dist/infineon-design-system-stencil/{p-82992baa.entry.js.map → p-4349f994.entry.js.map} +0 -0
  607. /package/dist/infineon-design-system-stencil/{p-5729d495.entry.js.map → p-4fac0ff2.entry.js.map} +0 -0
  608. /package/dist/infineon-design-system-stencil/{p-4fdb13ec.entry.js.map → p-589d005a.entry.js.map} +0 -0
  609. /package/dist/infineon-design-system-stencil/{p-23c0b40c.entry.js.map → p-598ec153.entry.js.map} +0 -0
  610. /package/dist/infineon-design-system-stencil/{p-ff6f111d.entry.js.map → p-61ddcf0a.entry.js.map} +0 -0
  611. /package/dist/infineon-design-system-stencil/{p-11580775.entry.js.map → p-62c705f1.entry.js.map} +0 -0
  612. /package/dist/infineon-design-system-stencil/{p-3ddd67ce.entry.js.map → p-7182fd2d.entry.js.map} +0 -0
  613. /package/dist/infineon-design-system-stencil/{p-e7e87a4a.entry.js.map → p-71c8cb23.entry.js.map} +0 -0
  614. /package/dist/infineon-design-system-stencil/{p-45cd79e4.entry.js.map → p-784660b3.entry.js.map} +0 -0
  615. /package/dist/infineon-design-system-stencil/{p-2bae45cd.entry.js.map → p-814da9fd.entry.js.map} +0 -0
  616. /package/dist/infineon-design-system-stencil/{p-9adea907.entry.js.map → p-82f9da03.entry.js.map} +0 -0
  617. /package/dist/infineon-design-system-stencil/{p-a3c2cbe0.entry.js.map → p-8a160977.entry.js.map} +0 -0
  618. /package/dist/infineon-design-system-stencil/{p-0238f780.entry.js.map → p-8b70e2ba.entry.js.map} +0 -0
  619. /package/dist/infineon-design-system-stencil/{p-85b61d98.entry.js.map → p-934704d9.entry.js.map} +0 -0
  620. /package/dist/infineon-design-system-stencil/{p-7dbec7ce.entry.js.map → p-9a988a72.entry.js.map} +0 -0
  621. /package/dist/infineon-design-system-stencil/{p-4baf201d.entry.js.map → p-a2f7459e.entry.js.map} +0 -0
  622. /package/dist/infineon-design-system-stencil/{p-83ef99a2.entry.js.map → p-a358461c.entry.js.map} +0 -0
  623. /package/dist/infineon-design-system-stencil/{p-cb2bfd10.entry.js.map → p-aa5f89b6.entry.js.map} +0 -0
  624. /package/dist/infineon-design-system-stencil/{p-77fbff19.entry.js.map → p-b120a552.entry.js.map} +0 -0
  625. /package/dist/infineon-design-system-stencil/{p-1cf0cd6c.entry.js.map → p-b39683b7.entry.js.map} +0 -0
  626. /package/dist/infineon-design-system-stencil/{p-14ef505d.entry.js.map → p-b9746c86.entry.js.map} +0 -0
  627. /package/dist/infineon-design-system-stencil/{p-accaa79e.entry.js.map → p-bb527c39.entry.js.map} +0 -0
  628. /package/dist/infineon-design-system-stencil/{p-b27a47fe.entry.js.map → p-c2ff66ea.entry.js.map} +0 -0
  629. /package/dist/infineon-design-system-stencil/{p-52b61a69.entry.js.map → p-c85d7577.entry.js.map} +0 -0
  630. /package/dist/infineon-design-system-stencil/{p-1d2f0317.entry.js.map → p-cb3a70ad.entry.js.map} +0 -0
  631. /package/dist/infineon-design-system-stencil/{p-1548797e.entry.js.map → p-cdac9833.entry.js.map} +0 -0
  632. /package/dist/infineon-design-system-stencil/{p-26dfd238.entry.js.map → p-cea7cb98.entry.js.map} +0 -0
  633. /package/dist/infineon-design-system-stencil/{p-618c5232.entry.js.map → p-cfa7a442.entry.js.map} +0 -0
  634. /package/dist/infineon-design-system-stencil/{p-9b61ae4f.entry.js.map → p-d3c1397a.entry.js.map} +0 -0
  635. /package/dist/infineon-design-system-stencil/{p-d9553320.entry.js.map → p-d63b8c2f.entry.js.map} +0 -0
  636. /package/dist/infineon-design-system-stencil/{p-f36ba7ae.entry.js.map → p-da97c1b6.entry.js.map} +0 -0
  637. /package/dist/infineon-design-system-stencil/{p-04cb8ce1.entry.js.map → p-e07ca773.entry.js.map} +0 -0
  638. /package/dist/infineon-design-system-stencil/{p-cb5f03cc.entry.js.map → p-e1715731.entry.js.map} +0 -0
  639. /package/dist/infineon-design-system-stencil/{p-6d55468a.entry.js.map → p-e2ad853d.entry.js.map} +0 -0
  640. /package/dist/infineon-design-system-stencil/{p-fdbb53b3.entry.js.map → p-e8b6810f.entry.js.map} +0 -0
  641. /package/dist/infineon-design-system-stencil/{p-892ef42f.entry.js.map → p-ebb196ae.entry.js.map} +0 -0
  642. /package/dist/infineon-design-system-stencil/{p-dd5b5ec5.entry.js.map → p-ee32b31a.entry.js.map} +0 -0
  643. /package/dist/infineon-design-system-stencil/{p-f4d00e57.entry.js.map → p-eeccb158.entry.js.map} +0 -0
  644. /package/dist/infineon-design-system-stencil/{p-6bbc85ef.entry.js.map → p-fa25549a.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["queryShadowRoot","root","skipNode","isMatch","maxDepth","depth","matches","traverseSlot","$slot","assignedNodes","filter","node","nodeType","length","$slotParent","parentElement","children","Array","from","$child","push","shadowRoot","tagName","isHidden","$elem","hasAttribute","getAttribute","style","display","opacity","visibility","isDisabled","isFocusable","HTMLAnchorElement","HTMLAreaElement","HTMLButtonElement","HTMLInputElement","HTMLTextAreaElement","HTMLSelectElement","HTMLIFrameElement","animationTo","element","keyframes","options","animated","animate","Object","assign","fill","addEventListener","commitStyles","cancel","keyframeDefaults","easing","KEYFRAMES","fadeIn","offset","fadeOut","modalCss","IfxModalStyle0","IfxModal","constructor","hostRef","this","opened","showModal","caption","closeOnOverlayClick","variant","size","alertIcon","okButtonLabel","cancelButtonLabel","slotButtonsPresent","showCloseButton","focusableElements","handleTopFocus","attemptFocus","getLastFocusableElement","handleBottomFocus","getFirstFocusableElement","handleKeypress","event","key","doBeforeClose","componentDidLoad","hostElement","el","setTimeout","closeButton","focus","open","anim","modalContainer","duration","_a","_b","blur","ifxModalOpen","emit","err","close","ifxModalClose","removeEventListener","trigger","triggers","prevented","some","defaultPrevented","openedChanged","newValue","handleOverlayClick","handleButtonsSlotChange","e","currentTarget","assignedElements","childElementCount","render","isAlertVariant","h","Host","ref","class","onClick","onFocus","tabindex","role","icon","name","onSlotchange"],"sources":["src/global/utils/focus-trap.ts","src/global/utils/animation.ts","src/components/modal/modal.scss?tag=ifx-modal&encapsulation=shadow","src/components/modal/modal.tsx"],"sourcesContent":["/**\n * Copy/pasted from https://github.com/andreasbm/focus-trap\n */\n\n/**\n * Traverses the slots of the open shadowroots and returns all children matching the query.\n * We need to traverse each child-depth one at a time because if an element should be skipped\n * (for example because it is hidden) we need to skip all of it's children. If we use querySelectorAll(\"*\")\n * the information of whether the children is within a hidden parent is lost.\n * @param {ShadowRoot | HTMLElement} root\n * @param skipNode\n * @param isMatch\n * @param {number} maxDepth\n * @param {number} depth\n * @returns {HTMLElement[]}\n */\nexport function queryShadowRoot(\n root: ShadowRoot | HTMLElement,\n skipNode: ($elem: HTMLElement) => boolean,\n isMatch: ($elem: HTMLElement) => boolean,\n maxDepth: number = 20,\n depth: number = 0\n): HTMLElement[] {\n const matches: HTMLElement[] = [];\n\n // If the depth is above the max depth, abort the searching here.\n if (depth >= maxDepth) {\n return matches;\n }\n\n // Traverses a slot element\n const traverseSlot = ($slot: HTMLSlotElement) => {\n // Only check nodes that are of the type Node.ELEMENT_NODE\n // Read more here https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType\n const assignedNodes = $slot\n .assignedNodes()\n .filter((node) => node.nodeType === 1);\n if (assignedNodes.length > 0) {\n const $slotParent = assignedNodes[0].parentElement!;\n return queryShadowRoot(\n $slotParent,\n skipNode,\n isMatch,\n maxDepth,\n depth + 1\n );\n }\n\n return [];\n };\n\n // Go through each child and continue the traversing if necessary\n // Even though the typing says that children can't be undefined, Edge 15 sometimes gives an undefined value.\n // Therefore we fallback to an empty array if it is undefined.\n const children = Array.from(root.children || []) as HTMLElement[];\n for (const $child of children) {\n // Check if the element and its descendants should be skipped\n if (skipNode($child)) {\n // console.log('-- SKIP', $child);\n continue;\n }\n\n // console.log('$child', $child);\n\n // If the element matches we always add it\n if (isMatch($child)) {\n matches.push($child);\n }\n\n if ($child.shadowRoot != null) {\n // If the element has a shadow root we need to traverse it\n matches.push(\n ...queryShadowRoot(\n $child.shadowRoot,\n skipNode,\n isMatch,\n maxDepth,\n depth + 1\n )\n );\n } else if ($child.tagName === 'SLOT') {\n // If the child is a slot we need to traverse each assigned node\n matches.push(...traverseSlot($child as HTMLSlotElement));\n } else {\n // Traverse the children of the element\n matches.push(\n ...queryShadowRoot($child, skipNode, isMatch, maxDepth, depth + 1)\n );\n }\n }\n\n return matches;\n}\n\n/**\n * Returns whether the element is hidden.\n * @param $elem\n */\nexport function isHidden($elem: HTMLElement): boolean {\n return (\n $elem.hasAttribute('hidden') ||\n ($elem.hasAttribute('aria-hidden') &&\n $elem.getAttribute('aria-hidden') !== 'false') ||\n // A quick and dirty way to check whether the element is hidden.\n // For a more fine-grained check we could use \"window.getComputedStyle\" but we don't because of bad performance.\n // If the element has visibility set to \"hidden\" or \"collapse\", display set to \"none\" or opacity set to \"0\" through CSS\n // we won't be able to catch it here. We accept it due to the huge performance benefits.\n $elem.style.display === `none` ||\n $elem.style.opacity === `0` ||\n $elem.style.visibility === `hidden` ||\n $elem.style.visibility === `collapse`\n );\n\n // If offsetParent is null we can assume that the element is hidden\n // https://stackoverflow.com/questions/306305/what-would-make-offsetparent-null\n // || $elem.offsetParent == null;\n}\n\n/**\n * Returns whether the element is disabled.\n * @param $elem\n */\nexport function isDisabled($elem: HTMLElement): boolean {\n return (\n $elem.hasAttribute('disabled') ||\n ($elem.hasAttribute('aria-disabled') &&\n $elem.getAttribute('aria-disabled') !== 'false')\n );\n}\n\n/**\n * Determines whether an element is focusable.\n * Read more here: https://stackoverflow.com/questions/1599660/which-html-elements-can-receive-focus/1600194#1600194\n * Or here: https://stackoverflow.com/questions/18261595/how-to-check-if-a-dom-element-is-focusable\n * @param $elem\n */\nexport function isFocusable($elem: HTMLElement): boolean {\n // Discard elements that are removed from the tab order.\n if (\n $elem.getAttribute('tabindex') === '-1' ||\n isHidden($elem) ||\n isDisabled($elem)\n ) {\n return false;\n }\n\n return (\n // At this point we know that the element can have focus (eg. won't be -1) if the tabindex attribute exists\n $elem.hasAttribute('tabindex') ||\n // Anchor tags or area tags with a href set\n (($elem instanceof HTMLAnchorElement || $elem instanceof HTMLAreaElement) &&\n $elem.hasAttribute('href')) ||\n // Form elements which are not disabled\n $elem instanceof HTMLButtonElement ||\n $elem instanceof HTMLInputElement ||\n $elem instanceof HTMLTextAreaElement ||\n $elem instanceof HTMLSelectElement ||\n // IFrames\n $elem instanceof HTMLIFrameElement\n );\n}","export function animationTo(\n element: HTMLElement,\n keyframes: Keyframe | Keyframe[],\n options?: KeyframeAnimationOptions\n) {\n const animated = element.animate(keyframes, { ...options, fill: 'both' });\n animated.addEventListener('finish', () => {\n // @ts-ignore\n animated.commitStyles();\n animated.cancel();\n });\n\n return animated;\n}\n\nconst keyframeDefaults = {\n easing: 'cubic-bezier(0.390, 0.575, 0.565, 1.000)',\n};\n\nexport const KEYFRAMES = {\n fadeIn: [\n {\n offset: 0,\n ...keyframeDefaults,\n opacity: 0,\n },\n {\n offset: 1,\n ...keyframeDefaults,\n opacity: 1,\n },\n ],\n fadeOut: [\n {\n offset: 0,\n ...keyframeDefaults,\n opacity: 1,\n },\n {\n offset: 1,\n ...keyframeDefaults,\n opacity: 0,\n },\n ],\n};","@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: block;\n}\n\n.modal-container {\n display: none;\n justify-content: center;\n align-items: center;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 1060;\n overflow-y: auto;\n font-family: var(--ifx-font-family);\n\n}\n\n.modal-container.open {\n display: flex;\n}\n\n.modal-overlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: tokens.$ifxColorBaseBlack;\n opacity: 0.5;\n z-index: 0;\n}\n\n.modal-content-container {\n position: absolute;\n display: flex;\n justify-content: center;\n width: 90%;\n min-height: 218px;\n background-color: #fff;\n border-radius: tokens.$ifxBorderRadiusNone;\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n box-sizing: border-box;\n align-items: stretch;\n}\n\n/* Add desktop size here */\n@media screen and (min-width: 768px) {\n .modal-content-container {\n width: 540px;\n min-height: 132px;\n\n &.m,\n &.l,\n &.s {\n width: 90%;\n }\n }\n}\n\n@media screen and (min-width: 1024px) {\n .modal-content-container {\n\n &.s {\n width: 47vw;\n }\n\n &.m {\n width: 63vw;\n }\n\n &.l {\n width: 80%;\n }\n }\n}\n\n.modal-content {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-height: 90vh;\n}\n\n.modal-icon-container {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n background-color: tokens.$ifxColorOcean500;\n align-self: stretch;\n\n &.danger {\n background-color: tokens.$ifxColorRed500;\n }\n\n & ifx-icon {\n color: tokens.$ifxColorBaseWhite;\n }\n}\n\n.modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 24px;\n min-height: 76px;\n max-height: 105px;\n box-sizing: border-box;\n border-radius: 1px 1px 0px 0px;\n border-bottom: 1px solid tokens.$ifxColorEngineering200;\n}\n\n.modal-caption {\n max-height: 56px;\n display: -webkit-box;\n overflow: hidden;\n white-space: pre-wrap;\n word-wrap: break-word;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical; \n}\n\n.modal-header h2 {\n margin: 0;\n font-weight: tokens.$ifxFontWeightSemibold;\n font-size: tokens.$ifxFontSizeXl;\n line-height: 28px;\n}\n\n.modal-header button {\n background: none;\n border: none;\n font-size: 1.5em;\n padding: 0;\n cursor: pointer;\n}\n\n.modal-close-button {\n align-self: flex-start;\n margin-right: -8px;\n}\n\n.modal-body {\n padding: 16px 24px;\n min-height: 56px;\n box-sizing: border-box;\n flex: 1;\n overflow-y: auto;\n}\n\n.modal-footer.buttons-present ::slotted(*){\n display: flex;\n justify-content: flex-end;\n gap: 16px;\n padding: 16px 24px 32px 16px\n}\n\n.modal-border {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n font-size: 1.5em;\n flex-grow: 1;\n\n &.primary {\n background-color: tokens.$ifxColorOcean500;\n }\n\n &.secondary {\n background-color: tokens.$ifxColorEngineering500;\n }\n\n &.danger {\n background-color: tokens.$ifxColorRed500;\n }\n\n &.success {\n background-color: tokens.$ifxColorGreen500;\n }\n\n &.warning {\n background-color: tokens.$ifxColorOrange500;\n }\n\n &.orange {\n background-color: tokens.$ifxColorOrange500;\n }\n\n &.ocean {\n background-color: tokens.$ifxColorOcean500;\n }\n\n &.grey {\n background-color: tokens.$ifxColorEngineering500;\n }\n\n &.grey-200 {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.red {\n background-color: tokens.$ifxColorRed500;\n }\n\n &.green {\n background-color: tokens.$ifxColorGreen500;\n }\n\n &.berry {\n background-color: tokens.$ifxColorBerry500;\n }\n}","import { Component, Prop, Element, State, Event, Host, EventEmitter, h, Watch } from '@stencil/core';\nimport { queryShadowRoot, isHidden, isFocusable } from '../../global/utils/focus-trap';\nimport { animationTo, KEYFRAMES } from '../../global/utils/animation';\n \n\ntype CloseEventTrigger = 'CLOSE_BUTTON' | 'ESCAPE_KEY' | 'BACKDROP';\n\nexport interface BeforeCloseEventDetail {\n trigger: CloseEventTrigger;\n}\n@Component({\n tag: 'ifx-modal',\n styleUrl: 'modal.scss',\n shadow: true\n})\nexport class IfxModal {\n @Prop({ reflect: true, mutable: true }) opened?: boolean = false;\n @State() showModal: boolean = this.opened || false;\n\n @Prop() caption: string = 'Modal Title';\n @Prop() closeOnOverlayClick: boolean = true;\n\n @Event() ifxModalOpen: EventEmitter;\n @Event() ifxModalClose: EventEmitter;\n\n @Prop() variant: 'default' | 'alert-brand' | 'alert-danger' = 'default';\n \n @Prop() size: 's' | 'm' | 'l' = 's';\n\n @Prop() alertIcon: string = '';\n @Prop() okButtonLabel: string = 'OK';\n @Prop() cancelButtonLabel: string = 'Cancel';\n @Element() hostElement: HTMLElement;\n\n @State() slotButtonsPresent: boolean = false;\n\n @Prop() showCloseButton: boolean = true;\n\n private modalContainer: HTMLElement;\n private focusableElements: HTMLElement[] = [];\n private closeButton: HTMLButtonElement | HTMLIfxIconButtonElement;\n\n componentDidLoad() {\n // Query all focusable elements and store them in `focusableElements`.\n // Needed for the \"focus trap\" functionality.\n this.focusableElements = queryShadowRoot(\n this.hostElement.shadowRoot,\n (el) => isHidden(el) || el.matches('[data-focus-trap-edge]'),\n isFocusable\n );\n\n }\n\n getFirstFocusableElement(): HTMLElement | null {\n return this.focusableElements[0];\n }\n\n getLastFocusableElement(): HTMLElement | null {\n return this.focusableElements[this.focusableElements.length - 1];\n }\n\n handleTopFocus = () => {\n this.attemptFocus(this.getLastFocusableElement());\n };\n\n handleBottomFocus = () => {\n this.attemptFocus(this.getFirstFocusableElement());\n };\n\n\n attemptFocus(element: HTMLElement | null) {\n if (element == null) {\n setTimeout(() => { //wait until DOM is fully loaded\n this.closeButton.focus();\n },);\n return;\n }\n\n setTimeout(() => { //wait until DOM is fully loaded\n element.focus();\n }, 0);\n }\n\n\n open() {\n this.showModal = true;\n try {\n const anim = animationTo(this.modalContainer, KEYFRAMES.fadeIn, {\n duration: 200,\n });\n anim.addEventListener('finish', () => {\n // Setting focus on last item and removing immediately\n // so, on tab press first element is focused\n setTimeout(() => {\n this.getLastFocusableElement()?.focus();\n this.getLastFocusableElement()?.blur();\n }, 0);\n\n this.ifxModalOpen.emit();\n });\n\n this.hostElement.addEventListener('keydown', this.handleKeypress);\n } catch (err) {\n this.ifxModalOpen.emit();\n\n }\n\n\n }\n\n close() {\n try {\n const anim = animationTo(this.modalContainer, KEYFRAMES.fadeOut, {\n duration: 200,\n });\n anim.addEventListener('finish', () => {\n this.showModal = false;\n this.ifxModalClose.emit();\n });\n this.hostElement.removeEventListener('keydown', this.handleKeypress);\n } catch (err) {\n this.showModal = false;\n this.ifxModalClose.emit();\n }\n }\n\n handleKeypress = (event: KeyboardEvent) => {\n if (!this.showModal) {\n return;\n }\n if (event.key === 'Escape') {\n this.doBeforeClose('ESCAPE_KEY');\n }\n };\n\n\n doBeforeClose(trigger: CloseEventTrigger) {\n const triggers = [];\n triggers.push(trigger);\n const prevented = triggers.some((event) => event.defaultPrevented);\n if (!prevented) {\n this.opened = false;\n }\n }\n\n\n\n @Watch('opened')\n openedChanged(newValue) {\n if (newValue === true) {\n this.open();\n } else {\n this.close()\n }\n }\n\n\n handleOverlayClick() {\n if (this.closeOnOverlayClick) {\n this.doBeforeClose('BACKDROP')\n }\n }\n\n\n handleButtonsSlotChange(e) {\n if(e.currentTarget.assignedElements()[0]?.childElementCount > 0) {\n this.slotButtonsPresent = true;\n }else{\n this.slotButtonsPresent = false;\n }\n }\n\n\n render() {\n const isAlertVariant = this.variant !== 'default';\n return (\n <Host>\n <div\n ref={(el) => (this.modalContainer = el)}\n class={`modal-container ${this.showModal ? 'open' : ''}`}\n >\n <div\n class=\"modal-overlay\"\n onClick={() => this.handleOverlayClick()}\n ></div>\n <div\n data-focus-trap-edge\n onFocus={this.handleTopFocus}\n tabindex=\"0\"\n ></div>\n <div\n class={`modal-content-container ${this.size}`}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={this.caption}>\n {isAlertVariant ? (\n <div class={`modal-icon-container ${this.variant === 'alert-brand' ? '' : 'danger'}`}>\n {this.alertIcon ? <ifx-icon icon={this.alertIcon} /> : null}\n </div>\n ) : null}\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h2 class=\"modal-caption\">{this.caption}</h2>\n { \n this.showCloseButton && \n <ifx-icon-button class = 'modal-close-button' ref={(el) => (this.closeButton = el)} icon=\"cross-24\" variant=\"tertiary\" onClick={() => this.doBeforeClose('CLOSE_BUTTON') }>\n </ifx-icon-button>\n }\n </div>\n <div class=\"modal-body\">\n <slot name=\"content\" /*onSlotchange={() => console.log('slots children modified')}*/ />\n </div>\n <div class={`modal-footer ${this.slotButtonsPresent ? 'buttons-present' : ''}`}>\n <slot name=\"buttons\" onSlotchange={(e)=>this.handleButtonsSlotChange(e)}>\n </slot>\n </div>\n </div>\n </div>\n <div\n data-focus-trap-edge\n onFocus={this.handleBottomFocus}\n tabindex=\"0\"\n ></div>\n </div>\n </Host>\n\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as o,c as r,h as t,g as e}from"./p-c63974da.js";const a=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.radioButton__container{box-sizing:border-box;display:inline-flex;flex-direction:row;align-items:center;padding:0px;gap:8px;cursor:pointer;font-family:var(--ifx-font-family)}.radioButton__container.m .radioButton__wrapper{width:24px;height:24px}.radioButton__container .radioButton__wrapper{width:20px;height:20px;position:relative;display:block;border-radius:50%;background-color:#FFFFFF;border:1px solid #575352}.radioButton__container .radioButton__wrapper:focus{outline:none}.radioButton__container .radioButton__wrapper:focus::before{content:"";position:absolute;width:calc(100% + 4px);height:calc(100% + 4px);top:50%;left:50%;transform:translate(-50%, -50%);border:2px solid #0A8276;border-radius:50%}.radioButton__container .radioButton__wrapper .radioButton__wrapper-mark{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);background-color:#0A8276;border-radius:50%;display:flex;justify-content:center;align-items:center;border-color:transparent}.radioButton__container .radioButton__wrapper:hover{background-color:#EEEDED}.radioButton__container .radioButton__wrapper.disabled{background-color:#BFBBBB;border-color:#BFBBBB}.radioButton__container .radioButton__wrapper.disabled.error:hover,.radioButton__container .radioButton__wrapper.disabled.error:focus-visible{border-color:#CD002F}.radioButton__container .radioButton__wrapper.checked{border-color:#0A8276}.radioButton__container .radioButton__wrapper.checked::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;background-color:#0A8276;border-radius:50%}.radioButton__container .radioButton__wrapper.checked.disabled::after{background-color:#BFBBBB}.radioButton__container .radioButton__wrapper.checked:hover{border-color:#08665C}.radioButton__container .radioButton__wrapper.checked:hover .radioButton__wrapper-mark{background-color:#08665C}.radioButton__container .radioButton__wrapper.checked.disabled{background-color:#FFFFFF;border-color:#BFBBBB}.radioButton__container .radioButton__wrapper.checked.disabled.disabled::after{background-color:#BFBBBB}.radioButton__container .radioButton__wrapper.checked.disabled .radioButton__wrapper-mark{background-color:#BFBBBB}.radioButton__container .radioButton__wrapper.error:not(.disabled){border-color:#CD002F}.radioButton__container .radioButton__wrapper.error:not(.disabled):hover,.radioButton__container .radioButton__wrapper.error:not(.disabled):focus-visible{border-color:#CD002F}.radioButton__container .label{display:flex;align-items:center;height:20px;font-style:normal;font-weight:400;font-size:0.875rem;line-height:1.25rem;color:#1D1D1D;flex:none;order:1;flex-grow:0}.radioButton__container .label.label-m{height:24px;font-size:1rem;line-height:1.5rem}.radioButton__container .label.disabled{color:#BFBBBB}.radioButton__container .label:hover{cursor:pointer}';const i=a;const n=class{constructor(t){o(this,t);this.ifxChange=r(this,"ifxChange",7);this.disabled=false;this.error=false;this.size="s";this.internalChecked=false;this.hasSlot=true}async isChecked(){return this.internalChecked}componentWillLoad(){if(this.checked)this.internalChecked=this.checked;const o=this.el.innerHTML;if(o){this.hasSlot=true}else this.hasSlot=false}handleRadioButtonClick(o){if(this.disabled){o.stopPropagation();return}this.inputElement.click();this.internalChecked=this.inputElement.checked;this.ifxChange.emit(this.internalChecked)}handleChange(o){const r=o.target;if(r.name===this.name){this.internalChecked=this.inputElement.checked}}render(){return t("div",{key:"7b5291f95e3fc00c0ceb9285c57ca440b1a8939f","aria-label":"a radio button","aria-value":this.value,"aria-disabled":this.disabled,class:`radioButton__container ${this.size} ${this.disabled?"disabled":""}`,onClick:this.handleRadioButtonClick.bind(this)},t("div",{key:"5efda77550a294da34c4f72c4558e312690f9cd9",class:`radioButton__wrapper \n ${this.internalChecked?"checked":""} \n ${this.disabled?"disabled":""} \n ${this.error?"error":""}`,tabIndex:this.disabled?-1:0},this.internalChecked&&t("div",{key:"2b1a814830a361021a812016d770d7838dca05fe",class:"radioButton__wrapper-mark"})),this.hasSlot&&t("div",{key:"61911033a487c6396c1c34b35f13f04cf84ea602",class:`label ${this.size==="m"?"label-m":""} ${this.disabled?"disabled":""}`},t("slot",{key:"7f1b40289cdd67a4fbc2e4677da03e22cdfa758c"})),t("input",{key:"f77c2d84f409e3875798370a06cbc744385e5655",type:"radio",hidden:true,ref:o=>this.inputElement=o,name:this.name,value:this.value,checked:this.internalChecked,disabled:this.disabled,onClick:o=>o.stopPropagation()}))}get el(){return e(this)}};n.style=i;export{n as ifx_radio_button};
2
- //# sourceMappingURL=p-4cfae291.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["radioButtonCss","IfxRadioButtonStyle0","RadioButton","constructor","hostRef","this","disabled","error","size","internalChecked","hasSlot","isChecked","componentWillLoad","checked","slot","el","innerHTML","handleRadioButtonClick","event","stopPropagation","inputElement","click","ifxChange","emit","handleChange","target","name","render","h","key","value","class","onClick","bind","tabIndex","type","hidden","ref","e"],"sources":["src/components/radio-button/radio-button.scss?tag=ifx-radio-button","src/components/radio-button/radio-button.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.radioButton__container {\n box-sizing: border-box;\n display: inline-flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: tokens.$ifxSpace100;\n cursor: pointer;\n font-family: var(--ifx-font-family);\n\n &.m .radioButton__wrapper {\n width: tokens.$ifxSize300;\n height: tokens.$ifxSize300;\n }\n\n .radioButton__wrapper {\n width: tokens.$ifxSize250;\n height: tokens.$ifxSize250;\n position: relative;\n display: block;\n border-radius: 50%;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid #575352;\n\n &:focus {\n outline: none;\n\n &::before {\n content: '';\n position: absolute;\n width: calc(100% + 4px);\n height: calc(100% + 4px);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n border: 2px solid tokens.$ifxColorOcean500;\n border-radius: 50%;\n }\n }\n\n .radioButton__wrapper-mark {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: #0A8276;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n border-color: tokens.$ifxColorBaseTransparent;\n }\n\n &:hover {\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.disabled {\n background-color: #BFBBBB;\n border-color: #BFBBBB;\n\n &.error {\n\n &:hover,\n &:focus-visible {\n border-color: #CD002F;\n }\n }\n }\n\n &.checked {\n border-color: #0A8276;\n\n &::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 10px;\n height: 10px;\n background-color: #0A8276;\n border-radius: 50%;\n }\n\n &.disabled::after {\n background-color: #BFBBBB;\n }\n\n\n &:hover {\n border-color: tokens.$ifxColorOcean600;\n\n & .radioButton__wrapper-mark {\n background-color: tokens.$ifxColorOcean600;\n }\n }\n\n &.disabled {\n background-color: tokens.$ifxColorBaseWhite;\n border-color: #BFBBBB;\n\n &.disabled::after {\n background-color: #BFBBBB;\n }\n\n & .radioButton__wrapper-mark {\n background-color: #BFBBBB;\n }\n }\n }\n\n &.error:not(.disabled) {\n border-color: #CD002F;\n\n &:hover,\n &:focus-visible {\n border-color: #CD002F;\n }\n }\n }\n\n .label {\n display: flex;\n align-items: center;\n height: tokens.$ifxSize250;\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeS;\n line-height: tokens.$ifxLineHeightS;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n &.label-m {\n height: tokens.$ifxSize300;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n }\n\n &.disabled {\n color: #BFBBBB;\n }\n\n\n\n &:hover {\n cursor: pointer;\n }\n }\n}","import { Component, h, Prop, Element, State, Event, EventEmitter, Listen, Method } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-radio-button',\n styleUrl: 'radio-button.scss',\n shadow: false,\n formAssociated: false\n})\nexport class RadioButton {\n @Element() el;\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @Prop() error: boolean = false;\n @Prop() size: \"s\" | \"m\" = \"s\";\n @Prop() name: string;\n @Prop() checked: boolean;\n @State() internalChecked: boolean = false;\n @State() hasSlot: boolean = true;\n\n @State() inputElement: HTMLInputElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter;\n\n /**\n * @returns whether the radio button is checked.\n */\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n \n componentWillLoad() {\n if (this.checked) this.internalChecked = this.checked;\n const slot = this.el.innerHTML;\n if (slot) {\n this.hasSlot = true;\n } else this.hasSlot = false;\n }\n\n\n /**\n * Click the hidden input element to let it handle the state\n * and emit ifxChange event.\n */\n handleRadioButtonClick(event: PointerEvent) {\n if (this.disabled) {\n event.stopPropagation();\n return;\n }\n\n this.inputElement.click();\n this.internalChecked = this.inputElement.checked;\n this.ifxChange.emit(this.internalChecked);\n }\n\n /**\n * Listen to all change events.\n * Needed to get informed when another button of the group gets chcked \n * and this one needs to become unchecked. \n * \n * @param event \n */\n @Listen('change', { target: 'window' }) \n handleChange(event: Event) {\n const target = event.target as HTMLInputElement;\n if (target.name === this.name) {\n this.internalChecked = this.inputElement.checked;\n }\n }\n\n render() {\n return (\n <div\n aria-label='a radio button' aria-value={this.value} aria-disabled={this.disabled}\n class={`radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`}\n onClick={this.handleRadioButtonClick.bind(this)}\n >\n <div\n class={`radioButton__wrapper \n ${this.internalChecked ? 'checked' : ''} \n ${this.disabled ? 'disabled' : ''} \n ${this.error ? 'error' : ''}`}\n tabIndex={this.disabled ? -1 : 0}\n >\n {this.internalChecked && <div class=\"radioButton__wrapper-mark\"></div>}\n </div>\n {this.hasSlot && (\n <div class={`label ${this.size === \"m\" ? \"label-m\" : \"\"} ${this.disabled ? 'disabled' : ''}`}>\n <slot />\n </div>\n )}\n <input\n type=\"radio\" \n hidden \n ref={el => this.inputElement = el as HTMLInputElement} \n name={this.name} \n value={this.value}\n checked={this.internalChecked} \n disabled={this.disabled}\n onClick={(e) => e.stopPropagation()}></input>\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAiB,y5FACvB,MAAAC,EAAeD,E,MCQFE,EAAW,MANxB,WAAAC,CAAAC,G,+CAQUC,KAAAC,SAAoB,MAEpBD,KAAAE,MAAiB,MACjBF,KAAAG,KAAkB,IAGjBH,KAAAI,gBAA2B,MAC3BJ,KAAAK,QAAmB,I,CAU5B,eAAMC,GACJ,OAAON,KAAKI,e,CAGd,iBAAAG,GACE,GAAIP,KAAKQ,QAASR,KAAKI,gBAAkBJ,KAAKQ,QAC9C,MAAMC,EAAOT,KAAKU,GAAGC,UACrB,GAAIF,EAAM,CACRT,KAAKK,QAAU,I,MACVL,KAAKK,QAAU,K,CAQxB,sBAAAO,CAAuBC,GACrB,GAAIb,KAAKC,SAAU,CACjBY,EAAMC,kBACN,M,CAGFd,KAAKe,aAAaC,QAClBhB,KAAKI,gBAAkBJ,KAAKe,aAAaP,QACzCR,KAAKiB,UAAUC,KAAKlB,KAAKI,gB,CAW3B,YAAAe,CAAaN,GACX,MAAMO,EAASP,EAAMO,OACrB,GAAIA,EAAOC,OAASrB,KAAKqB,KAAM,CAC7BrB,KAAKI,gBAAkBJ,KAAKe,aAAaP,O,EAI7C,MAAAc,GACE,OACEC,EAAA,OAAAC,IAAA,wDACa,iBAAgB,aAAaxB,KAAKyB,MAAK,gBAAiBzB,KAAKC,SACxEyB,MAAO,0BAA0B1B,KAAKG,QAAQH,KAAKC,SAAW,WAAa,KAC3E0B,QAAS3B,KAAKY,uBAAuBgB,KAAK5B,OAE1CuB,EAAA,OAAAC,IAAA,2CACEE,MAAO,oCACL1B,KAAKI,gBAAkB,UAAY,kBACnCJ,KAAKC,SAAW,WAAa,kBAC7BD,KAAKE,MAAQ,QAAU,KACzB2B,SAAU7B,KAAKC,UAAY,EAAI,GAE9BD,KAAKI,iBAAmBmB,EAAA,OAAAC,IAAA,2CAAKE,MAAM,+BAErC1B,KAAKK,SACJkB,EAAA,OAAAC,IAAA,2CAAKE,MAAO,SAAS1B,KAAKG,OAAS,IAAM,UAAY,MAAMH,KAAKC,SAAW,WAAa,MACtFsB,EAAA,QAAAC,IAAA,8CAGJD,EAAA,SAAAC,IAAA,2CACEM,KAAK,QACLC,OAAM,KACNC,IAAKtB,GAAMV,KAAKe,aAAeL,EAC/BW,KAAMrB,KAAKqB,KACXI,MAAOzB,KAAKyB,MACZjB,QAASR,KAAKI,gBACdH,SAAUD,KAAKC,SACf0B,QAAUM,GAAMA,EAAEnB,oB","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as o,h as i,g as t,c as e}from"./p-c63974da.js";const n=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:block}.accordion-wrapper{display:flex;flex-direction:column;gap:8px;font-family:var(--ifx-font-family)}';const a=n;const s=class{constructor(i){o(this,i);this.autoCollapse=false}async onItemOpen(o){if(this.autoCollapse){const i=Array.from(this.el.querySelectorAll("ifx-accordion-item"));for(const t of i){const i=t;if(i!==o.target&&await i.open){i.open=false}}}}render(){return i("div",{key:"a69a6bea9d5347c0e1808d4635d458ce16614000",class:"accordion-wrapper"},i("slot",{key:"389e9039f9272a88d95aca8b83efbb754736a5dd"}))}static get delegatesFocus(){return true}get el(){return t(this)}};s.style=a;const c=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.accordion-item{border-radius:3px;overflow:hidden;transition:all 0.3s;font-family:var(--ifx-font-family)}.accordion-title:focus{outline:none}.accordion-title:focus::after{content:"";display:block;position:absolute;top:-4px;bottom:-4px;left:-4px;right:-4px;border-radius:5px;border:2px solid #0A8276;box-sizing:border-box}.accordion-title:hover{border:1px solid #EEEDED;color:#08665C}.accordion-title{display:flex;align-items:center;position:relative;padding:12px 16px;gap:12px;color:#0A8276;background-color:#FFFFFF;border:1px solid #EEEDED;cursor:pointer;margin:4px}.accordion-caption{font-weight:600;font-size:1.125rem}.accordion-content{gap:8px;max-height:0;overflow:hidden;transition:max-height 0.3s ease-in-out;line-height:24px;font-size:1rem;font-weight:400}.inner-content{background-color:#FFFFFF;padding:24px;word-wrap:break-word;overflow-wrap:anywhere;align-self:stretch;}.accordion-icon{font-weight:bold;display:inline-block;transition:transform 0.3s}.accordion-icon:hover{color:#08665C}.accordion-item.open .accordion-icon{transform:rotate(-180deg)}';const r=c;const d=class{constructor(i){o(this,i);this.ifxItemOpen=e(this,"ifxItemOpen",7);this.ifxItemClose=e(this,"ifxItemClose",7);this.open=false;this.AriaLive=3;this.internalOpen=false}componentWillLoad(){this.internalOpen=this.open}componentDidLoad(){this.openAccordionItem()}componentDidUpdate(){this.openAccordionItem()}openChanged(o){this.internalOpen=o}toggleOpen(){this.internalOpen=!this.internalOpen;this.open=this.internalOpen;if(this.internalOpen){this.ifxItemOpen.emit({isOpen:this.internalOpen})}else{this.ifxItemClose.emit({isClosed:!this.internalOpen})}}openAccordionItem(){if(this.internalOpen){this.contentEl.style.maxHeight=`${this.contentEl.scrollHeight}px`}else{this.contentEl.style.maxHeight="0"}}handleSlotChange(o){const i=o.target;const t=i.assignedNodes();if(t.length>0){t.forEach((o=>{const i=new MutationObserver(((o,i)=>{for(let i of o){if(i.type==="childList"){if(this.internalOpen){this.openAccordionItem()}}}}));i.observe(o,{attributes:true,childList:true,subtree:true})}))}if(this.internalOpen){this.openAccordionItem()}}handleKeydown(o){switch(o.key){case"Enter":case" ":o.preventDefault();this.toggleOpen();break}}render(){return i("div",{key:"1215772109c33556d626f4a7d40d6655684806a2",class:`accordion-item ${this.internalOpen?"open":""}`},i("div",{key:"30e7771bae93c213d9f95126886d7552ebe03b94",role:"button","aria-expanded":this.internalOpen,"aria-controls":"accordion-content",class:"accordion-title",onClick:()=>this.toggleOpen(),tabindex:"0"},i("span",{key:"7da5f484c41f9f01dd7eec5092ec8ad82947d481","aria-hidden":"true",role:"heading","aria-level":String(this.AriaLive),class:"accordion-icon"},i("ifx-icon",{key:"e64e478a66fd0dd2c3d3608294a6160aa4232952",icon:"chevron-down-12"})),i("span",{key:"7e1ff777da8ce68d6d5f1266512fbd05731169f5",id:"accordion-caption",class:"accordion-caption"},this.caption)),i("div",{key:"144fa8393da592e1d928b51d7b4ad48d6b06a100",id:"accordion-content",class:"accordion-content",ref:o=>this.contentEl=o,role:"region","aria-labelledby":"accordion-caption"},i("div",{key:"28702f514d9bd400499a49a3b1cd675f56d7fcad",class:"inner-content"},i("slot",{key:"e40109a457e4b1cc09c8234d5003361bb6c1c6fb",onSlotchange:o=>this.handleSlotChange(o)}))))}static get watchers(){return{open:["openChanged"]}}};d.style=r;export{s as ifx_accordion,d as ifx_accordion_item};
2
- //# sourceMappingURL=p-63f09820.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["accordionCss","IfxAccordionStyle0","Accordion","constructor","hostRef","this","autoCollapse","onItemOpen","event","items","Array","from","el","querySelectorAll","item","itemElement","target","open","render","h","key","class","accordionItemCss","IfxAccordionItemStyle0","IfxAccordionItem","AriaLive","internalOpen","componentWillLoad","componentDidLoad","openAccordionItem","componentDidUpdate","openChanged","newValue","toggleOpen","ifxItemOpen","emit","isOpen","ifxItemClose","isClosed","contentEl","style","maxHeight","scrollHeight","handleSlotChange","e","slotElement","nodes","assignedNodes","length","forEach","node","observer","MutationObserver","mutationsList","_","mutation","type","observe","attributes","childList","subtree","handleKeydown","ev","preventDefault","role","onClick","tabindex","String","icon","id","caption","ref","onSlotchange"],"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);\n\n}","//ifxAccordion.tsx\nimport { Component, h, Listen, Element, Prop } from '@stencil/core';\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\n @Listen('ifxItemOpen')\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 overflow: hidden;\n transition: all 0.3s;\n font-family: var(--ifx-font-family);\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;\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 max-height: 0;\n overflow: hidden;\n transition: max-height 0.3s ease-in-out;\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.$ifxSpace300;\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 align-self: stretch;\n\n /* breaks text at arbitrary points when needed */\n}\n\n.accordion-icon {\n font-weight: bold;\n display: inline-block;\n transition: transform 0.3s;\n\n &:hover {\n color: tokens.$ifxColorOcean600;\n\n }\n}\n\n\n\n.accordion-item.open .accordion-icon {\n transform: rotate(-180deg);\n}","//ifxAccordionItem\nimport { Component, Prop, h, State, Event, EventEmitter, Watch, Listen } from '@stencil/core';\n\n@Component({\n tag: 'ifx-accordion-item',\n styleUrl: 'accordionItem.scss',\n shadow: true,\n})\nexport class IfxAccordionItem {\n @Prop() caption: string;\n @Prop({\n mutable: true,\n }) open: boolean = false;\n @Prop() AriaLive = 3;\n @State() internalOpen: boolean = false;\n @Event() ifxItemOpen: EventEmitter;\n @Event() ifxItemClose: EventEmitter;\n private contentEl!: HTMLElement;\n\n\n componentWillLoad() {\n this.internalOpen = this.open;\n }\n\n componentDidLoad() {\n this.openAccordionItem()\n }\n\n componentDidUpdate() {\n this.openAccordionItem()\n }\n\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.ifxItemOpen.emit({ isOpen: this.internalOpen });\n } else {\n this.ifxItemClose.emit({ isClosed: !this.internalOpen });\n }\n }\n\n openAccordionItem() {\n if (this.internalOpen) {\n this.contentEl.style.maxHeight = `${this.contentEl.scrollHeight}px`;\n } else {\n this.contentEl.style.maxHeight = '0';\n }\n }\n\n handleSlotChange(e) {\n const slotElement = e.target;\n const nodes = slotElement.assignedNodes();\n \n if(nodes.length > 0) {\n nodes.forEach(node => {\n const observer = new MutationObserver((mutationsList, _) => {\n for(let mutation of mutationsList) {\n if (mutation.type === 'childList') {\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n }\n }\n });\n observer.observe(node, { attributes: true, childList: true, subtree: true });\n });\n }\n\n if (this.internalOpen) {\n this.openAccordionItem();\n }\n }\n\n \n\n @Listen('keydown')\n handleKeydown(ev: KeyboardEvent) {\n switch (ev.key) {\n case 'Enter': // fallthrough\n case ' ': // space\n ev.preventDefault();\n this.toggleOpen();\n break;\n }\n }\n\n\n render() {\n return (\n <div class={`accordion-item ${this.internalOpen ? 'open' : ''}`}>\n <div role=\"button\" aria-expanded={this.internalOpen} aria-controls=\"accordion-content\" class=\"accordion-title\" onClick={() => this.toggleOpen()} tabindex='0'>\n <span aria-hidden=\"true\" role=\"heading\" aria-level={String(this.AriaLive) as string} class=\"accordion-icon\">\n <ifx-icon icon=\"chevron-down-12\"/>\n </span>\n <span id=\"accordion-caption\" class=\"accordion-caption\">{this.caption}</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 onSlotchange={(e) => this.handleSlotChange(e)} />\n </div>\n </div>\n </div>\n );\n }\n}"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as i}from"./p-c63974da.js";import{c as t}from"./p-5cdc6210.js";const n=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:inline-flex}.link{display:inline-flex;align-items:center;font-weight:400;font-size:1rem;text-decoration:none;color:#0A8276;gap:8px;line-height:1.6;font-family:var(--ifx-font-family)}.link:focus{outline-width:2px;outline-style:solid;outline-color:#0A8276;outline-offset:4px;border-radius:3px}.link.bold{font-weight:600}.link.bold:hover{text-decoration:underline}.link.bold:active{color:#08665C;font-style:normal;font-weight:600;text-decoration:underline}.link.underlined{text-decoration:underline;text-decoration-color:#0A8276;color:#1D1D1D;text-underline-offset:8px}.link.underlined:hover{color:#0A8276}.link.underlined:active{color:#0A8276}.link.underlined:disabled,.link.underlined.disabled{text-decoration-color:#BFBBBB}.link.title{text-decoration:none;font-weight:600;color:#1D1D1D}.link.title:hover{color:#0A8276}.link.title:active{color:#08665C}.link.menu{font-weight:400;font-style:normal;line-height:26px;color:#1D1D1D}.link.menu:hover{color:#0A8276}.link.menu:active{color:#08665C}.link.small{font-size:0.875rem}.link.medium{font-size:1rem}.link.large{font-size:1.125rem}.link.extraLarge{font-size:1.25rem}.link.underline{text-decoration:underline}.link:disabled,.link.disabled{color:#BFBBBB;cursor:default;pointer-events:none}';const l=n;const o=class{constructor(i){e(this,i);this.href=undefined;this.target="_self";this.variant="bold";this.disabled=false;this.internalHref="";this.internalTarget="";this.internalVariant=""}setInternalStates(){if(this.href){this.internalHref=this.href.trim()}else{this.internalHref=undefined}this.internalTarget=this.target.trim();this.internalVariant=this.variant.trim().toLowerCase()}componentWillRender(){this.setInternalStates()}render(){return i("a",{key:"13fc06640399624a0e11f2b60ff335b0b1dff82c","aria-label":"a navigation link button",href:this.internalHref,target:this.internalTarget,class:this.linkClassNames()},i("slot",{key:"1304bfe3e670a2918fac007362217c7e5d70dd4b"}))}getSizeClass(){const e=this.size==="s"?"small":null;const i=this.size==="m"?"medium":null;const t=this.size==="l"?"large":null;const n=this.size==="xl"?"extraLarge":null;if(e){return e}else if(i){return i}else if(t){return t}else if(n&&this.internalVariant==="underlined"){return"large"}else if(n&&this.internalVariant!=="underlined"){return n}else return""}getVariantClass(){const e=this.internalVariant==="bold"?"bold":null;const i=this.internalVariant==="title"?"title":null;const t=this.internalVariant==="underlined"?"underlined":null;const n=this.internalVariant==="menu"?"menu":null;if(e){return e}else if(i){return i}else if(t){return t}else if(n){return n}else return e}linkClassNames(){return t("link","primary",this.getVariantClass(),this.getSizeClass(),this.disabled?"disabled":"")}};o.style=l;export{o as ifx_link};
2
- //# sourceMappingURL=p-7a85d6bb.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["linkCss","IfxLinkStyle0","Link","constructor","hostRef","this","href","undefined","target","variant","disabled","internalHref","internalTarget","internalVariant","setInternalStates","trim","toLowerCase","componentWillRender","render","h","key","class","linkClassNames","getSizeClass","small","size","medium","large","extraLarge","getVariantClass","bold","title","underlined","menu","classNames"],"sources":["src/components/link/link.scss?tag=ifx-link&encapsulation=shadow","src/components/link/link.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: inline-flex;\n}\n\n.link {\n display: inline-flex;\n align-items: center;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n text-decoration: none;\n color: tokens.$ifxColorOcean500;\n gap: tokens.$ifxSpace100;\n line-height: 1.6;\n font-family: var(--ifx-font-family);\n\n &:focus {\n outline-width: 2px;\n outline-style: solid;\n outline-color: #0A8276;\n outline-offset: 4px;\n border-radius: 3px;\n }\n\n &.bold {\n font-weight: tokens.$ifxFontWeightSemibold;\n\n &:hover {\n text-decoration: underline;\n }\n\n &:active {\n color: #08665C;\n font-style: normal;\n font-weight: 600;\n text-decoration: underline;\n }\n\n }\n\n &.underlined {\n text-decoration: underline;\n text-decoration-color: tokens.$ifxColorOcean500;\n color: #1D1D1D;\n text-underline-offset: 8px;\n \n &:hover {\n color: tokens.$ifxColorOcean500;;\n }\n \n &:active {\n color: #0A8276;\n }\n\n &:disabled,\n &.disabled {\n text-decoration-color: tokens.$ifxColorEngineering300;\n }\n }\n\n &.title {\n text-decoration: none;\n font-weight: tokens.$ifxFontWeightSemibold;\n color: #1D1D1D;\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active {\n color: #08665C;\n }\n }\n\n &.menu {\n font-weight: 400;\n font-style: normal;\n line-height: 26px;\n color: #1D1D1D;\n\n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n\n &:active {\n color: #08665C;\n }\n }\n\n\n\n &.small {\n font-size: tokens.$ifxFontSizeS;\n }\n\n &.medium {\n font-size: tokens.$ifxFontSizeM;\n }\n\n &.large {\n font-size: tokens.$ifxFontSizeL;\n }\n\n &.extraLarge {\n font-size: tokens.$ifxFontSizeXl;\n }\n\n // &.bold {\n // font-weight: tokens.$ifxFontWeightSemibold;\n // }\n\n // &.primary {\n // color: tokens.$ifxColorOcean500;\n // }\n\n // &.secondary {\n // color: tokens.$ifxColorBerry500;\n // }\n\n // &.warning {\n // color: tokens.$ifxColorOrange500;\n // }\n\n // &.danger {\n // color: tokens.$ifxColorRed500;\n // }\n\n // &.success {\n // color: tokens.$ifxColorGreen500;\n // }\n\n &.underline {\n text-decoration: underline;\n }\n\n &:disabled,\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n cursor: default;\n pointer-events: none;\n }\n\n}","import { Component, Prop, h, State } from \"@stencil/core\";\nimport classNames from 'classnames';\n \n\n@Component({\n tag: 'ifx-link',\n styleUrl: 'link.scss',\n shadow: true\n})\n\nexport class Link {\n @Prop() href: string = undefined;\n @Prop() target: string = '_self';\n @Prop() variant: string = 'bold';\n @Prop() size: string;\n @Prop() disabled: boolean = false;\n @State() internalHref: string ='';\n @State() internalTarget: string = '';\n @State() internalVariant: string = '';\n\n setInternalStates() {\n if(this.href){\n this.internalHref = this.href.trim();\n }else{\n this.internalHref = undefined;\n }\n this.internalTarget = this.target.trim();\n this.internalVariant = this.variant.trim().toLowerCase();\n }\n\n componentWillRender(){\n this.setInternalStates();\n }\n\n\n render() {\n return (\n <a aria-label='a navigation link button' href={this.internalHref} target={this.internalTarget} class={this.linkClassNames()}>\n <slot></slot>\n </a>\n )\n }\n\n getSizeClass() {\n const small = this.size === 's' ? 'small' : null;\n const medium = this.size === 'm' ? 'medium' : null;\n const large = this.size === 'l' ? 'large' : null;\n const extraLarge = this.size === 'xl' ? 'extraLarge' : null;\n\n if (small) {\n return small;\n } else if (medium) {\n return medium;\n } else if (large) {\n return large;\n } else if (extraLarge && this.internalVariant === 'underlined') {\n return 'large';\n } else if (extraLarge && this.internalVariant !== 'underlined') {\n return extraLarge;\n } else return \"\";\n }\n\n getVariantClass() {\n const bold = this.internalVariant === 'bold' ? 'bold' : null;\n const title = this.internalVariant === 'title' ? 'title' : null;\n const underlined = this.internalVariant === 'underlined' ? 'underlined' : null;\n const menu = this.internalVariant === 'menu' ? 'menu' : null;\n\n if (bold) {\n return bold\n } else if (title) {\n return title;\n } else if (underlined) {\n return underlined;\n } else if (menu) {\n return menu;\n } else return bold;\n }\n\n linkClassNames() {\n return classNames(\n 'link',\n 'primary',\n this.getVariantClass(),\n this.getSizeClass(),\n this.disabled ? 'disabled' : '',\n );\n }\n}\n\n"],"mappings":"+EAAA,MAAMA,EAAU,4zCAChB,MAAAC,EAAeD,E,MCSFE,EAAI,MANjB,WAAAC,CAAAC,G,UAOUC,KAAAC,KAAeC,UACfF,KAAAG,OAAiB,QACjBH,KAAAI,QAAkB,OAElBJ,KAAAK,SAAoB,MACnBL,KAAAM,aAAsB,GACtBN,KAAAO,eAAyB,GACzBP,KAAAQ,gBAA0B,E,CAEnC,iBAAAC,GACE,GAAGT,KAAKC,KAAK,CACXD,KAAKM,aAAeN,KAAKC,KAAKS,M,KAC3B,CACHV,KAAKM,aAAeJ,S,CAEtBF,KAAKO,eAAiBP,KAAKG,OAAOO,OAClCV,KAAKQ,gBAAkBR,KAAKI,QAAQM,OAAOC,a,CAG7C,mBAAAC,GACEZ,KAAKS,mB,CAIP,MAAAI,GACE,OACEC,EAAA,KAAAC,IAAA,wDAAc,2BAA2Bd,KAAMD,KAAKM,aAAcH,OAAQH,KAAKO,eAAgBS,MAAOhB,KAAKiB,kBACzGH,EAAA,QAAAC,IAAA,6C,CAKN,YAAAG,GACE,MAAMC,EAAQnB,KAAKoB,OAAS,IAAM,QAAU,KAC5C,MAAMC,EAASrB,KAAKoB,OAAS,IAAM,SAAW,KAC9C,MAAME,EAAQtB,KAAKoB,OAAS,IAAM,QAAU,KAC5C,MAAMG,EAAavB,KAAKoB,OAAS,KAAO,aAAe,KAEvD,GAAID,EAAO,CACT,OAAOA,C,MACF,GAAIE,EAAQ,CACjB,OAAOA,C,MACF,GAAIC,EAAO,CAChB,OAAOA,C,MACF,GAAIC,GAAcvB,KAAKQ,kBAAoB,aAAc,CAC9D,MAAO,O,MACF,GAAIe,GAAcvB,KAAKQ,kBAAoB,aAAc,CAC9D,OAAOe,C,MACF,MAAO,E,CAGhB,eAAAC,GACE,MAAMC,EAAOzB,KAAKQ,kBAAoB,OAAS,OAAS,KACxD,MAAMkB,EAAQ1B,KAAKQ,kBAAoB,QAAU,QAAU,KAC3D,MAAMmB,EAAa3B,KAAKQ,kBAAoB,aAAe,aAAe,KAC1E,MAAMoB,EAAO5B,KAAKQ,kBAAoB,OAAS,OAAS,KAExD,GAAIiB,EAAM,CACR,OAAOA,C,MACF,GAAIC,EAAO,CAChB,OAAOA,C,MACF,GAAIC,EAAY,CACrB,OAAOA,C,MACF,GAAIC,EAAM,CACf,OAAOA,C,MACF,OAAOH,C,CAGhB,cAAAR,GACE,OAAOY,EACL,OACA,UACA7B,KAAKwB,kBACLxB,KAAKkB,eACLlB,KAAKK,SAAW,WAAa,G","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,c as i,h as t,g as s}from"./p-c63974da.js";const a=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{position:relative}.sidebar__nav-item:focus,.sidebar__nav-item.header__section:focus{outline:none}.sidebar__nav-item:focus .sidebar__nav-item-icon-wrapper,.sidebar__nav-item.header__section:focus .sidebar__nav-item-icon-wrapper{color:#08665C}.sidebar__nav-item:focus .sidebar__nav-item-label,.sidebar__nav-item.header__section:focus .sidebar__nav-item-label{outline:none;color:#08665C}.sidebar__nav-item:focus .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon,.sidebar__nav-item.header__section:focus .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon{color:#08665C}.sidebar__nav-item:hover,.sidebar__nav-item.header__section:hover{outline:none}.sidebar__nav-item:hover .sidebar__nav-item-icon-wrapper,.sidebar__nav-item.header__section:hover .sidebar__nav-item-icon-wrapper{color:#08665C}.sidebar__nav-item:hover .sidebar__nav-item-label,.sidebar__nav-item.header__section:hover .sidebar__nav-item-label{outline:none;color:#08665C}.sidebar__nav-item:hover .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon,.sidebar__nav-item.header__section:hover .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon{color:#08665C}.sidebar__nav-item{display:flex;flex-direction:row;align-items:center;width:100%;padding:8px 0px;gap:4px;flex:none;order:0;flex-grow:0;text-decoration:none;color:#1D1D1D;cursor:pointer;font-family:var(--ifx-font-family)}.sidebar__nav-item.extra-padding__bottom{padding:8px 0px 16px 0px}.sidebar__nav-item.active{color:#0A8276}.sidebar__nav-item.active-section::before{content:"";position:absolute;left:-32px;height:40px;width:2px;background:#0A8276}.sidebar__nav-item.open{padding:8px 0px}.sidebar__nav-item.open .sidebar__nav-item-label{font-size:16px;font-style:normal;font-weight:400;line-height:24px}.sidebar__nav-item.open .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon{transform:rotate(-180deg)}.sidebar__nav-item.header__section{box-sizing:padding-box;border-top:1px solid #EEEDED;padding:16px 0px;display:-webkit-flex;-webkit-line-clamp:1;-webkit-box-orient:horizontal;overflow:hidden;text-overflow:ellipsis}.sidebar__nav-item.header__section.no-top-border{border-top:none}.sidebar__nav-item.header__section.active-section::before{content:"";position:absolute;left:-32px;height:40px;width:2px;background:#0A8276}.sidebar__nav-item.header__section.open{padding:16px 0px 8px 0px}.sidebar__nav-item.header__section.open .sidebar__nav-item-indicator .item__arrow-wrapper ifx-icon{transform:rotate(-180deg)}.sidebar__nav-item.header__section .sidebar__nav-item-label{color:#1D1D1D;font-family:Source Sans 3;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.sidebar__nav-item.submenu__item{padding:4px 0px}.sidebar__nav-item.submenu__item.extra-padding__bottom{padding:4px 0px 16px 0px}.sidebar__nav-item .sidebar__nav-item-icon-wrapper{display:flex;width:24px;height:24px;justify-content:center;align-items:center;gap:8px;flex-shrink:0}.sidebar__nav-item .sidebar__nav-item-icon-wrapper.noIcon{display:none}.sidebar__nav-item .sidebar__nav-item-icon-wrapper ifx-icon{width:16px;height:16px}.sidebar__nav-item .sidebar__nav-item-label{font-style:normal;font-weight:400;font-size:1rem;line-height:1.5rem;display:flex;align-items:center;flex:none;order:1;flex-grow:1;cursor:pointer}.sidebar__nav-item .sidebar__nav-item-indicator{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:0px 4px;flex:none;order:2;flex-grow:0}.expandable__submenu{display:none;list-style-type:none;flex-direction:column;padding:0;margin:0;padding-left:40px}.expandable__submenu.open{display:flex}.header__section+.expandable__submenu{padding-left:0}';const n=a;const r=class{constructor(t){e(this,t);this.ifxSidebarMenu=i(this,"ifxSidebarMenu",7);this.ifxSidebarNavigationItem=i(this,"ifxSidebarNavigationItem",7);this.ifxSidebarActionItem=i(this,"ifxSidebarActionItem",7);this.icon="";this.hasIcon=true;this.hasIconWrapper=false;this.href="";this.internalHref="";this.target="_self";this.isExpandable=false;this.isNested=true;this.isSubMenuItem=false;this.active=false;this.isActionItem=false;this.internalActiveState=false;this.value=""}handleActiveChange(e,i){if(this.isActionItem){this.internalActiveState=false;return}this.internalActiveState=e;if(e!==i){let i=this.getNavItem(this.el.shadowRoot);if(!this.isExpandable&&!e){this.handleClassList(i,"remove","active")}if(!this.isExpandable&&e){this.handleClassList(i,"add","active")}}}handleConsoleError(e){if(e.detail){this.hasIcon=false}else{this.hasIcon=true}}handleEventEmission(){this.ifxSidebarMenu.emit(this.el)}handleClassList(e,i,t){e.classList[i](t);if(i==="contains"){return e.classList.contains(t)}}getExpandableMenu(){const e=this.el.shadowRoot.querySelector(".expandable__submenu");return e}getNavItem(e){return e===null||e===void 0?void 0:e.querySelector(".sidebar__nav-item")}getSidebarMenuItems(e=this.el){const i=e.querySelectorAll("ifx-sidebar-item");if(i.length===0){return e.shadowRoot.querySelectorAll("ifx-sidebar-item")}return i}getSidebarMenuItem(){const e=this.el.shadowRoot.querySelector(".sidebar__nav-item");return e}toggleSubmenu(){if(this.isExpandable){const e=this.getSidebarMenuItem();const i=this.getExpandableMenu();this.handleClassList(i,"toggle","open");this.handleClassList(e,"toggle","open");this.handleEventEmission()}else{if(this.isActionItem){this.ifxSidebarActionItem.emit(this.el);return}else{this.handleActiveChange(true,this.internalActiveState);this.ifxSidebarNavigationItem.emit(this.el)}if(this.handleItemClick){this.handleItemClick(this.el)}}}handleExpandableMenu(e){const i=this.getExpandableMenu();e.forEach((e=>{const t=document.createElement("li");t.appendChild(e);i.appendChild(t)}))}parentElementIsSidebar(){const e=this.el.parentElement;if(e.tagName.toUpperCase()==="IFX-SIDEBAR"){return true}else return false}checkIfMenuItemIsNested(){const e=this.parentElementIsSidebar();if(e){this.isNested=false}}checkIfMenuItemIsSubMenu(){const e=this.el.parentElement;const i=this.getNavItem(e.shadowRoot);if(e.tagName.toUpperCase()==="IFX-SIDEBAR-ITEM"&&!this.handleClassList(i,"contains","header__section")){this.isSubMenuItem=true}else{this.isSubMenuItem=false}}isActive(e){const i=e.getAttribute("active");const t=i==="true";return t}getParentSection(e){let i=e.parentElement;while(i&&i.tagName.toUpperCase()!=="IFX-SIDEBAR"){if(i.tagName.toUpperCase()==="IFX-SIDEBAR-ITEM"){return i}i=i.parentElement}return null}handleBorderIndicatorDisplacement(e){const i=(e,t)=>{const s=this.isActive(e);if(s){const e=this.handleClassList(t,"contains","open");const i=this.getActiveItemSection();if(!e){this.handleClassList(i,"add","active-section")}else{this.handleClassList(i,"remove","active-section")}}const a=this.getSidebarMenuItems(e);a.forEach((e=>i(e,t)))};const t=this.getSidebarMenuItems();t.forEach((t=>i(t,e)))}setHref(){if(this.href.toLowerCase().trim()===""){this.internalHref=undefined}else this.internalHref=this.href}getActiveItemSection(){const e=this.parentElementIsSidebar();if(e){const e=this.getNavItem(this.el.shadowRoot);return e}else{const e=this.getNavItem(this.el.shadowRoot);return e}}async setActiveClasses(){const e=this.getNavItem(this.el.shadowRoot);this.handleClassList(e,"add","active")}async expandMenu(e){const i=this.getSidebarMenuItem();const t=this.getExpandableMenu();this.handleClassList(t,"add","open");this.handleClassList(i,"add","open");if(e){this.handleClassList(t,"remove","active-section");this.handleClassList(i,"remove","active-section")}}async isItemExpandable(){return this.isExpandable}handleActiveState(){if(this.internalActiveState){this.setActiveClasses()}}handleKeyDown(e){if(e.key==="Enter"){this.toggleSubmenu()}}componentDidLoad(){this.handleActiveState();if(this.isExpandable){const e=this.getSidebarMenuItems();this.handleExpandableMenu(e)}}componentWillLoad(){this.internalActiveState=this.active;this.checkIfMenuItemIsNested();this.checkIfMenuItemIsSubMenu();this.setHref();const e=this.getSidebarMenuItems();if(e.length!==0){this.isExpandable=true}else{this.isExpandable=false}}componentWillUpdate(){if(this.active&&!this.internalActiveState){this.internalActiveState=this.active;this.ifxSidebarNavigationItem.emit(this.el)}}render(){var e,i;return t("div",{key:"7e8a5430fa8976204cd15dfb6dd72f2bb9361e08"},t("a",{key:"897ddc916a5a348ccfedad8ddee68066fcd1bc2f",tabIndex:1,onKeyDown:e=>this.handleKeyDown(e),href:this.internalHref,onClick:()=>this.toggleSubmenu(),target:this.target,class:`sidebar__nav-item ${!this.isNested&&this.isExpandable?"header__section":""} ${this.isSubMenuItem?"submenu__item":""}`},this.icon&&t("div",{key:"3e4a19b1bb290de9b368ea4487fe53039953199b",class:`sidebar__nav-item-icon-wrapper ${!this.hasIcon?"noIcon":""}`},t("ifx-icon",{key:"9c0743f623b9aba7f4d481599f287256141ed22e",icon:this.icon})),t("div",{key:"073ef8e817fcd00af12a32ccfa2dab217b249ba3",class:"sidebar__nav-item-label"},t("slot",{key:"5ccbe199e0e47d493ec0987ece9f069344991906"})),(this.isExpandable||((e=this.numberIndicator)===null||e===void 0?void 0:e.trim()))&&t("div",{key:"625d54239153b0f082fcf3f50c7f85404eb0f6f8",class:"sidebar__nav-item-indicator"},this.isExpandable&&t("span",{key:"7674b6448808e9d7bbbec20b2209899b399646c8",class:"item__arrow-wrapper"},t("ifx-icon",{key:"06f2d84a311adda0c69893de81ca27353be45a64",icon:"chevron-down-12"})),((i=this.numberIndicator)===null||i===void 0?void 0:i.trim())&&!this.isExpandable&&!this.isNested&&t("span",{key:"4457322a749a066f34715e44dbd0bb893de9a946",class:"item__number-indicator"},t("ifx-number-indicator",{key:"6cb4f225acab0ede10a48a22d2f4f12f53edeeeb"},this.numberIndicator)))),this.isExpandable&&t("ul",{key:"19ca965d3cad5746b629e7e8bdf127f7bcb13482",class:"expandable__submenu"}))}get el(){return s(this)}static get watchers(){return{active:["handleActiveChange"]}}};r.style=n;export{r as ifx_sidebar_item};
2
- //# sourceMappingURL=p-89651a48.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sidebarItemCss","IfxSidebarItemStyle0","SidebarItem","constructor","hostRef","this","icon","hasIcon","hasIconWrapper","href","internalHref","target","isExpandable","isNested","isSubMenuItem","active","isActionItem","internalActiveState","value","handleActiveChange","newValue","oldValue","labelElement","getNavItem","el","shadowRoot","handleClassList","handleConsoleError","event","detail","handleEventEmission","ifxSidebarMenu","emit","type","className","classList","contains","getExpandableMenu","expandableSubmenu","querySelector","getSidebarMenuItems","sidebarItems","querySelectorAll","length","getSidebarMenuItem","sidebarItem","toggleSubmenu","menuItem","expandableMenu","ifxSidebarActionItem","ifxSidebarNavigationItem","handleItemClick","handleExpandableMenu","sidebarExpandableMenu","forEach","li","document","createElement","appendChild","parentElementIsSidebar","parentElement","tagName","toUpperCase","checkIfMenuItemIsNested","parentIsSidebar","checkIfMenuItemIsSubMenu","navItem","isActive","iteratedComponent","activeAttributeValue","getAttribute","getParentSection","handleBorderIndicatorDisplacement","handleItem","item","isOpen","activeMenuItemSection","getActiveItemSection","children","child","topLevelItems","setHref","toLowerCase","trim","undefined","setActiveClasses","activeMenuItem","expandMenu","ac","isItemExpandable","handleActiveState","handleKeyDown","key","componentDidLoad","componentWillLoad","componentWillUpdate","render","h","tabIndex","onKeyDown","onClick","class","_a","numberIndicator","_b"],"sources":["src/components/navigation/sidebar/sidebar-item.scss?tag=ifx-sidebar-item&encapsulation=shadow","src/components/navigation/sidebar/sidebar-item.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n:host {\n position: relative;\n}\n\n.sidebar__nav-item,\n.sidebar__nav-item.header__section {\n &:focus {\n outline: none;\n\n & .sidebar__nav-item-icon-wrapper {\n color: tokens.$ifxColorOcean600;\n }\n\n & .sidebar__nav-item-label {\n outline: none;\n color: tokens.$ifxColorOcean600;\n }\n\n & .sidebar__nav-item-indicator {\n & .item__arrow-wrapper {\n & ifx-icon {\n color: tokens.$ifxColorOcean600;\n }\n }\n }\n }\n\n &:hover {\n outline: none;\n\n & .sidebar__nav-item-icon-wrapper {\n color: tokens.$ifxColorOcean600;\n }\n\n & .sidebar__nav-item-label {\n outline: none;\n color: tokens.$ifxColorOcean600;\n }\n\n & .sidebar__nav-item-indicator {\n & .item__arrow-wrapper {\n & ifx-icon {\n color: tokens.$ifxColorOcean600;\n }\n }\n }\n }\n}\n\n.sidebar__nav-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n width: 100%;\n padding: 8px 0px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n text-decoration: none;\n color: tokens.$ifxColorBaseBlack;\n cursor: pointer;\n font-family: var(--ifx-font-family);\n\n &.extra-padding__bottom {\n padding: 8px 0px 16px 0px;\n }\n\n &.active {\n color: tokens.$ifxColorOcean500;\n }\n\n &.active-section {\n &::before {\n content: \"\";\n position: absolute;\n left: -32px;\n height: 40px;\n width: 2px;\n background: tokens.$ifxColorOcean500;\n }\n }\n\n\n &.open {\n padding: 8px 0px;\n\n & .sidebar__nav-item-label {\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n }\n\n & .sidebar__nav-item-indicator {\n & .item__arrow-wrapper {\n & ifx-icon {\n transform: rotate(-180deg);\n }\n }\n }\n }\n\n &.header__section {\n box-sizing: padding-box;\n border-top: 1px solid tokens.$ifxColorEngineering200;\n padding: 16px 0px;\n display: -webkit-flex;\n -webkit-line-clamp: 1;\n -webkit-box-orient: horizontal;\n overflow: hidden;\n text-overflow: ellipsis;\n \n &.no-top-border {\n border-top: none;\n }\n\n &.active-section {\n &::before {\n content: \"\";\n position: absolute;\n left: -32px;\n height: 40px;\n width: 2px;\n background: tokens.$ifxColorOcean500;\n }\n }\n\n &.open {\n \n padding: 16px 0px 8px 0px;\n\n & .sidebar__nav-item-indicator {\n & .item__arrow-wrapper {\n & ifx-icon {\n transform: rotate(-180deg);\n }\n }\n }\n }\n\n & .sidebar__nav-item-label {\n color: tokens.$ifxColorBaseBlack;\n font-family: Source Sans 3;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px;\n }\n }\n\n &.submenu__item {\n padding: 4px 0px;\n \n &.extra-padding__bottom {\n padding: 4px 0px 16px 0px;\n }\n }\n\n & .sidebar__nav-item-icon-wrapper {\n display: flex;\n width: tokens.$ifxSize300;\n height: tokens.$ifxSize300;\n justify-content: center;\n align-items: center;\n gap: tokens.$ifxSpace100;\n flex-shrink: 0;\n\n &.noIcon {\n display: none;\n }\n\n & ifx-icon {\n width: tokens.$ifxSize200;\n height: tokens.$ifxSize200;\n }\n }\n\n & .sidebar__nav-item-label {\n font-style: normal;\n font-weight: 400;\n font-size: tokens.$ifxFontSizeM;\n line-height: tokens.$ifxLineHeightM;\n display: flex;\n align-items: center;\n flex: none;\n order: 1;\n flex-grow: 1;\n cursor: pointer;\n }\n\n & .sidebar__nav-item-indicator {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px 4px;\n flex: none;\n order: 2;\n flex-grow: 0;\n }\n}\n\n.expandable__submenu {\n display: none;\n list-style-type: none;\n flex-direction: column;\n padding: 0;\n margin: 0;\n padding-left: 40px;\n\n &.open {\n display: flex;\n }\n}\n\n.header__section + .expandable__submenu{\n padding-left: 0;\n}\n","import { Component, h, Prop, Element, State, Listen, Watch, Event, EventEmitter, Method } from '@stencil/core';\n\n@Component({\n tag: 'ifx-sidebar-item',\n styleUrl: 'sidebar-item.scss',\n shadow: true\n})\nexport class SidebarItem {\n @Element() el;\n @Prop() icon: string = \"\"\n @State() hasIcon: boolean = true;\n @State() hasIconWrapper: boolean = false;\n @Prop() href: string = \"\";\n @State() internalHref: string = \"\";\n @Prop() target: string = \"_self\";\n @State() isExpandable: boolean = false;\n @State() isNested: boolean = true;\n @State() isSubMenuItem: boolean = false;\n @Prop() numberIndicator: string;\n @Prop() active: boolean = false; // set to true manually or by clicking on a navigation item\n @Prop() isActionItem: boolean = false; // if an item is an action item, it can not become active\n\n @State() internalActiveState: boolean = false;\n\n @Event({ bubbles: true, composed: true }) ifxSidebarMenu: EventEmitter;\n @Event({ bubbles: true, composed: true }) ifxSidebarNavigationItem: EventEmitter;\n @Event({ bubbles: true, composed: true }) ifxSidebarActionItem: EventEmitter;\n\n\n @Prop() value: string = \"\"\n @Prop() handleItemClick: (item: HTMLElement) => void;\n\n\n @Watch('active')\n handleActiveChange(newValue: boolean, oldValue: boolean) {\n // If the item is an action item, ignore the active prop\n if (this.isActionItem) {\n this.internalActiveState = false;\n return;\n }\n this.internalActiveState = newValue;\n if (newValue !== oldValue) {\n let labelElement = this.getNavItem(this.el.shadowRoot)\n if (!this.isExpandable && !newValue) {\n this.handleClassList(labelElement, 'remove', 'active');\n }\n if (!this.isExpandable && newValue) {\n this.handleClassList(labelElement, 'add', 'active');\n }\n }\n }\n\n\n\n @Listen('consoleError')\n handleConsoleError(event: CustomEvent<boolean>) {\n if (event.detail) {\n this.hasIcon = false;\n } else {\n this.hasIcon = true;\n }\n }\n\n handleEventEmission() {\n // Get the active item section\n this.ifxSidebarMenu.emit(this.el)\n }\n\n handleClassList(el, type, className) {\n el.classList[type](className)\n if (type === 'contains') {\n return el.classList.contains(className)\n }\n }\n\n getExpandableMenu() {\n const expandableSubmenu = this.el.shadowRoot.querySelector('.expandable__submenu')\n return expandableSubmenu\n }\n\n getNavItem(el) {\n return el?.querySelector('.sidebar__nav-item')\n }\n\n\n\n getSidebarMenuItems(el = this.el) {\n const sidebarItems = el.querySelectorAll('ifx-sidebar-item');\n if (sidebarItems.length === 0) {\n return el.shadowRoot.querySelectorAll('ifx-sidebar-item');\n }\n return sidebarItems;\n }\n\n getSidebarMenuItem() {\n const sidebarItem = this.el.shadowRoot.querySelector('.sidebar__nav-item')\n return sidebarItem;\n }\n\n\n toggleSubmenu() {\n if (this.isExpandable) {\n const menuItem = this.getSidebarMenuItem();\n const expandableMenu = this.getExpandableMenu();\n this.handleClassList(expandableMenu, 'toggle', 'open');\n this.handleClassList(menuItem, 'toggle', 'open');\n // Emit an event with the current component\n this.handleEventEmission();\n } else {\n // If the sidebar item is not expandable, it's a leaf item without a submenu.\n // Emit an event to the parent `ifx-sidebar` component to notify it that a leaf item has been clicked.\n if (this.isActionItem) { //its an action item that eg opens an overlay etc and should not influence the active state of the item\n this.ifxSidebarActionItem.emit(this.el); // emit new event if isActionItem is true\n return;\n } else { //its a navigation item which becomes active after clicking it\n this.handleActiveChange(true, this.internalActiveState)\n this.ifxSidebarNavigationItem.emit(this.el);\n }\n // If the sidebar item is selectable (not expandable), then call the handler function with the current element.\n if (this.handleItemClick) {\n this.handleItemClick(this.el);\n }\n }\n // // Emit an event with the current component\n // this.handleEventEmission();\n }\n\n\n\n handleExpandableMenu(sidebarItems) {\n const sidebarExpandableMenu = this.getExpandableMenu();\n sidebarItems.forEach((el: HTMLElement) => {\n const li = document.createElement('li')\n li.appendChild(el)\n sidebarExpandableMenu.appendChild(li)\n })\n }\n\n parentElementIsSidebar() {\n const parentElement = this.el.parentElement;\n if (parentElement.tagName.toUpperCase() === 'IFX-SIDEBAR') {\n return true;\n } else return false;\n }\n\n checkIfMenuItemIsNested() {\n const parentIsSidebar = this.parentElementIsSidebar()\n if (parentIsSidebar) {\n this.isNested = false;\n }\n }\n\n checkIfMenuItemIsSubMenu() {\n const parentElement = this.el.parentElement;\n const navItem = this.getNavItem(parentElement.shadowRoot);\n if(parentElement.tagName.toUpperCase() === 'IFX-SIDEBAR-ITEM' && !this.handleClassList(navItem, 'contains', 'header__section')) {\n this.isSubMenuItem = true;\n }else {\n this.isSubMenuItem = false;\n }\n }\n\n isActive(iteratedComponent) {\n const activeAttributeValue = iteratedComponent.getAttribute('active');\n const isActive = activeAttributeValue === 'true';\n return isActive\n }\n\n getParentSection(el: HTMLElement) {\n let parentElement = el.parentElement;\n\n while (parentElement && parentElement.tagName.toUpperCase() !== 'IFX-SIDEBAR') {\n if (parentElement.tagName.toUpperCase() === 'IFX-SIDEBAR-ITEM') {\n return parentElement;\n }\n parentElement = parentElement.parentElement;\n }\n\n return null;\n }\n\n\n\n handleBorderIndicatorDisplacement(menuItem) {\n // Recursive function to handle each item\n const handleItem = (item, menuItem) => {\n const isActive = this.isActive(item);\n if (isActive) {\n const isOpen = this.handleClassList(menuItem, 'contains', 'open');\n const activeMenuItemSection = this.getActiveItemSection();\n if (!isOpen) {\n this.handleClassList(activeMenuItemSection, 'add', 'active-section');\n } else {\n this.handleClassList(activeMenuItemSection, 'remove', 'active-section');\n }\n }\n\n // Process each child item\n const children = this.getSidebarMenuItems(item);\n children.forEach((child) => handleItem(child, menuItem));\n }\n\n // Start with the top-level items\n const topLevelItems = this.getSidebarMenuItems();\n topLevelItems.forEach((item) => handleItem(item, menuItem));\n }\n\n\n setHref() {\n if (this.href.toLowerCase().trim() === \"\") {\n this.internalHref = undefined;\n } else this.internalHref = this.href;\n }\n\n getActiveItemSection() {\n const parentIsSidebar = this.parentElementIsSidebar()\n if (parentIsSidebar) {\n const labelElement = this.getNavItem(this.el.shadowRoot)\n return labelElement;\n } else {\n const labelElement = this.getNavItem(this.el.shadowRoot)\n return labelElement;\n }\n }\n\n @Method()\n async setActiveClasses() {\n const activeMenuItem = this.getNavItem(this.el.shadowRoot)\n this.handleClassList(activeMenuItem, 'add', 'active')\n }\n\n @Method()\n async expandMenu(ac: boolean){\n const menuItem = this.getSidebarMenuItem();\n const expandableMenu = this.getExpandableMenu();\n this.handleClassList(expandableMenu, 'add', 'open');\n this.handleClassList(menuItem, 'add', 'open');\n if(ac){\n this.handleClassList(expandableMenu, 'remove', 'active-section')\n this.handleClassList(menuItem, 'remove', 'active-section')\n }\n }\n \n @Method()\n async isItemExpandable(){\n return this.isExpandable;\n }\n\n handleActiveState() {\n if (this.internalActiveState) {\n this.setActiveClasses()\n }\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter') {\n this.toggleSubmenu()\n }\n }\n\n componentDidLoad() {\n this.handleActiveState();\n if (this.isExpandable) {\n const sidebarItems = this.getSidebarMenuItems();\n this.handleExpandableMenu(sidebarItems)\n }\n }\n \n componentWillLoad() {\n this.internalActiveState = this.active;\n this.checkIfMenuItemIsNested();\n this.checkIfMenuItemIsSubMenu();\n this.setHref()\n const sidebarItems = this.getSidebarMenuItems();\n if (sidebarItems.length !== 0) {\n this.isExpandable = true;\n } else {\n this.isExpandable = false;\n }\n }\n\n componentWillUpdate() {\n // If the active prop has been set to true and the internalActiveState has not been set to true yet\n if (this.active && !this.internalActiveState) {\n // Set the internal active state to true\n this.internalActiveState = this.active;\n\n // Emit the event to notify the parent Sidebar\n this.ifxSidebarNavigationItem.emit(this.el);\n }\n }\n\n\n render() {\n return (\n <div>\n <a tabIndex={1} onKeyDown={(event) => this.handleKeyDown(event)} href={this.internalHref} onClick={() => this.toggleSubmenu()} target={this.target} class={`sidebar__nav-item ${!this.isNested && this.isExpandable ? 'header__section' : \"\"} ${this.isSubMenuItem ? 'submenu__item' : \"\"}`}>\n {this.icon &&\n <div class={`sidebar__nav-item-icon-wrapper ${!this.hasIcon ? 'noIcon' : \"\"}`}>\n <ifx-icon icon={this.icon}></ifx-icon>\n </div>}\n <div class=\"sidebar__nav-item-label\">\n <slot />\n </div>\n {\n (this.isExpandable || this.numberIndicator?.trim()) && \n <div class=\"sidebar__nav-item-indicator\">\n {this.isExpandable &&\n <span class='item__arrow-wrapper'>\n <ifx-icon icon=\"chevron-down-12\" />\n </span>\n }\n\n {this.numberIndicator?.trim() && !this.isExpandable && !this.isNested &&\n <span class='item__number-indicator'>\n <ifx-number-indicator>{this.numberIndicator}</ifx-number-indicator>\n </span>}\n\n </div>\n }\n </a>\n {this.isExpandable && <ul class='expandable__submenu'></ul>}\n\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as a,c as r,h as e,g as s}from"./p-c63974da.js";const i=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{width:100%;display:flex}.search-bar{box-sizing:border-box;height:40px;background-color:#FFFFFF;display:flex;flex-direction:row;align-items:center;width:100%;font-family:var(--ifx-font-family)}.search-bar.closed{display:flex;width:auto;justify-content:flex-start}.search-bar .search-bar-wrapper{display:flex;align-items:center;gap:16px;width:100%}.search-bar .search-bar-wrapper a{text-decoration:none;font-size:1rem;font-style:normal;font-weight:600;line-height:1.5rem;color:#0A8276;cursor:pointer}.search-bar .search-bar-wrapper ifx-search-field{width:100%}.search-bar .search-bar__icon-wrapper{display:none;flex-direction:row;align-items:center}.search-bar .search-bar__icon-wrapper ifx-icon:hover{cursor:pointer}.search-bar.closed .search-bar__icon-wrapper{display:flex}.search-bar.closed .search-bar-wrapper{display:none}';const t=i;const h=class{constructor(e){a(this,e);this.ifxInput=r(this,"ifxInput",7);this.ifxSearchBarIsOpen=r(this,"ifxSearchBarIsOpen",7);this.isOpen=true;this.disabled=false;this.handleCloseButton=()=>{this.internalState=!this.internalState;this.ifxSearchBarIsOpen.emit(this.internalState)};this.handleFocus=()=>{this.internalState=true}}async onNavbarMobile(){this.ifxSearchBarIsOpen.emit(false);this.internalState=false}handlePropChange(){this.internalState=this.isOpen}setInitialState(){this.internalState=this.isOpen}componentWillLoad(){this.setInitialState();this.ifxSearchBarIsOpen.emit(this.internalState)}handleInput(a){this.value=a.detail}render(){return e("div",{key:"80312faf68e6b0af2260c977d53f23b42067813f","aria-label":"a search bar","aria-disabled":this.disabled,class:`search-bar ${this.internalState?"open":"closed"}`},this.internalState?e("div",{class:"search-bar-wrapper"},e("ifx-search-field",{disabled:this.disabled,value:this.value,maxlength:this.maxlength,onIfxInput:this.handleInput.bind(this)},e("ifx-icon",{icon:"search-16",slot:"search-icon"})),e("a",{tabindex:"-1",href:"javascript:void(0)",onClick:this.handleCloseButton},"Close")):e("div",{class:"search-bar__icon-wrapper",onClick:this.handleCloseButton},e("ifx-icon",{icon:"search-16"})))}get el(){return s(this)}static get watchers(){return{isOpen:["handlePropChange"]}}};h.style=t;export{h as ifx_search_bar};
2
- //# sourceMappingURL=p-9a76c9c5.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["searchBarCss","IfxSearchBarStyle0","SearchBar","constructor","hostRef","this","isOpen","disabled","handleCloseButton","internalState","ifxSearchBarIsOpen","emit","handleFocus","onNavbarMobile","handlePropChange","setInitialState","componentWillLoad","handleInput","event","value","detail","render","h","key","class","maxlength","onIfxInput","bind","icon","slot","tabindex","href","onClick"],"sources":["src/components/search-bar/search-bar.scss?tag=ifx-search-bar&encapsulation=shadow","src/components/search-bar/search-bar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n width: 100%; //revert\n display: flex;\n}\n\n.search-bar {\n box-sizing: border-box;\n height: tokens.$ifxSize500;\n background-color: tokens.$ifxColorBaseWhite;\n display: flex;\n flex-direction: row;\n align-items: center;\n width: 100%;\n font-family: var(--ifx-font-family);\n\n &.closed {\n display: flex;\n width: auto;\n justify-content: flex-start;\n }\n\n & .search-bar-wrapper {\n display: flex;\n align-items: center;\n gap: tokens.$ifxSpace200;\n width: 100%;\n\n & a {\n text-decoration: none;\n font-size: tokens.$ifxFontSizeM;\n font-style: normal;\n font-weight: tokens.$ifxFontWeightSemibold;\n line-height: tokens.$ifxLineHeightM;\n color: tokens.$ifxColorOcean500;\n cursor: pointer;\n }\n\n & ifx-search-field {\n width: 100%;\n }\n }\n\n .search-bar__icon-wrapper {\n display: none;\n flex-direction: row;\n align-items: center;\n\n & ifx-icon:hover {\n cursor: pointer;\n }\n }\n\n &.closed {\n .search-bar__icon-wrapper {\n display: flex;\n }\n\n .search-bar-wrapper {\n display: none;\n }\n }\n}","import { Component, h, Prop, Event, EventEmitter, State, Watch, Element, Method } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-search-bar',\n styleUrl: 'search-bar.scss',\n shadow: true,\n})\nexport class SearchBar {\n @Prop() isOpen: boolean = true;\n @Prop() disabled: boolean = false;\n @State() internalState: boolean;\n @Prop({ mutable: true }) value: string;\n @Prop() maxlength?: number;\n @Event() ifxInput: EventEmitter;\n @Event() ifxSearchBarIsOpen: EventEmitter;\n @Element() el;\n\n @Method()\n async onNavbarMobile() {\n this.ifxSearchBarIsOpen.emit(false)\n this.internalState = false;\n }\n\n @Watch('isOpen')\n handlePropChange() {\n this.internalState = this.isOpen;\n }\n\n handleCloseButton = () => {\n this.internalState = !this.internalState;\n this.ifxSearchBarIsOpen.emit(this.internalState)\n }\n\n setInitialState() {\n this.internalState = this.isOpen;\n }\n\n \n\n componentWillLoad() {\n this.setInitialState();\n this.ifxSearchBarIsOpen.emit(this.internalState)\n }\n\n\n handleInput(event: CustomEvent) {\n this.value = event.detail;\n }\n\n handleFocus = () => {\n this.internalState = true;\n }\n\n\n render() {\n return (\n <div aria-label='a search bar' aria-disabled={this.disabled} class={`search-bar ${this.internalState ? 'open' : 'closed'}`}>\n {this.internalState ? (\n <div class=\"search-bar-wrapper\">\n <ifx-search-field disabled={this.disabled} value={this.value} maxlength={this.maxlength} onIfxInput={this.handleInput.bind(this)}>\n <ifx-icon icon=\"search-16\" slot=\"search-icon\"></ifx-icon>\n </ifx-search-field>\n\n <a tabindex=\"-1\" href='javascript:void(0)' onClick={this.handleCloseButton}>Close</a>\n </div>\n ) : (\n <div class=\"search-bar__icon-wrapper\" onClick={this.handleCloseButton}>\n <ifx-icon icon=\"search-16\"></ifx-icon>\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAe,y5BACrB,MAAAC,EAAeD,E,MCOFE,EAAS,MALtB,WAAAC,CAAAC,G,oGAMUC,KAAAC,OAAkB,KAClBD,KAAAE,SAAoB,MAmB5BF,KAAAG,kBAAoB,KAClBH,KAAKI,eAAiBJ,KAAKI,cAC3BJ,KAAKK,mBAAmBC,KAAKN,KAAKI,cAAc,EAmBlDJ,KAAAO,YAAc,KACZP,KAAKI,cAAgB,IAAI,C,CAhC3B,oBAAMI,GACJR,KAAKK,mBAAmBC,KAAK,OAC7BN,KAAKI,cAAgB,K,CAIvB,gBAAAK,GACET,KAAKI,cAAgBJ,KAAKC,M,CAQ5B,eAAAS,GACEV,KAAKI,cAAgBJ,KAAKC,M,CAK5B,iBAAAU,GACEX,KAAKU,kBACLV,KAAKK,mBAAmBC,KAAKN,KAAKI,c,CAIpC,WAAAQ,CAAYC,GACVb,KAAKc,MAAQD,EAAME,M,CAQrB,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,wDAAgB,eAAc,gBAAgBlB,KAAKE,SAAUiB,MAAO,cAAcnB,KAAKI,cAAgB,OAAS,YAC7GJ,KAAKI,cACJa,EAAA,OAAKE,MAAM,sBACTF,EAAA,oBAAkBf,SAAUF,KAAKE,SAAUY,MAAOd,KAAKc,MAAOM,UAAWpB,KAAKoB,UAAWC,WAAYrB,KAAKY,YAAYU,KAAKtB,OACzHiB,EAAA,YAAUM,KAAK,YAAYC,KAAK,iBAGlCP,EAAA,KAAGQ,SAAS,KAAKC,KAAK,qBAAqBC,QAAS3B,KAAKG,mBAAiB,UAG5Ec,EAAA,OAAKE,MAAM,2BAA2BQ,QAAS3B,KAAKG,mBAClDc,EAAA,YAAUM,KAAK,e","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["breadcrumbItemLabelCss","IfxBreadcrumbItemLabelStyle0","BreadcrumbItemLabel","constructor","hostRef","this","target","componentDidLoad","container","el","shadowRoot","querySelector","menuWrapper","breadcrumbMenuIconWrapper","emit","render","h","key","href","url","class","role","icon"],"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() url: 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.url} 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-12\"></ifx-icon>\n </span>\n </a>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAyB,qwBAC/B,MAAAC,EAAeD,E,MCMFE,EAAmB,MALhC,WAAAC,CAAAC,G,+EAQUC,KAAAC,OAAiB,O,CAIzB,gBAAAC,GACE,MAAMC,EAAYH,KAAKI,GAAGC,WAAWC,cAAc,oCACnD,MAAMC,EAAcJ,EAAUG,cAAc,sBAC5CN,KAAKQ,0BAA0BC,KAAKF,E,CAGtC,MAAAG,GACE,OACEC,EAAA,KAAAC,IAAA,2CAAGC,KAAMb,KAAKc,IAAKb,OAAQD,KAAKC,OAAQc,MAAM,kCAAkCC,KAAK,QACnFL,EAAA,YAAAC,IAAA,2CAAUK,KAAMjB,KAAKiB,KAAI,cAAc,SACvCN,EAAA,QAAAC,IAAA,2CAAMG,MAAM,iBACVJ,EAAA,QAAAC,IAAA,8CAEHD,EAAA,QAAAC,IAAA,2CAAMG,MAAM,oBAAmB,aAAY,QAC1CJ,EAAA,YAAAC,IAAA,2CAAUK,KAAK,qB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ButtonCellRenderer","init","params","this","createButton","getGui","eGui","refresh","updateButton","config","data","button","options","colDef","cellRendererParams","document","createElement","eButton","hasRequiredKeys","setButtonAttributes","appendChild","attachEventListener","innerHTML","detachEventListener","setAttribute","disabled","toString","variant","theme","type","size","fullWidth","target","href","textContent","text","eventListener","event","onButtonClick","addEventListener","removeEventListener","CustomNoRowsOverlay","noRowsMessageFunc","_params","CustomLoadingOverlay","tableCss","IfxTableStyle0","Table","constructor","hostRef","currentPage","rowData","colData","filterOptions","currentFilters","allRowData","rowHeight","tableHeight","pagination","paginationPageSize","filterOrientation","showSidebarFilters","matchingResultsCount","showLoading","originalRowData","handleChipChange","name","currentSelection","detail","updatedFilters","Object","assign","length","customEvent","CustomEvent","filterName","bubbles","composed","host","dispatchEvent","filterValues","map","selection","value","applyAllFilters","updateTableView","onButtonRendererOptionsChanged","getColData","gridApi","setColumnDefs","toggleSidebarFilters","updateFilterOptions","col","field","Set","row","handleSidebarFilterChange","filterGroups","forEach","filterGroup","filterGroupName","selectedItems","item","label","handleTopbarFilterChange","filters","filter","filterInfo","selectedValues","toLowerCase","textFilterMatched","property","hasOwnProperty","rowValue","String","some","filterValue","startsWith","includesUndefined","includes","startIndex","endIndex","visibleRowData","slice","setGridOption","clearAllFilters","onBtShowLoading","showLoadingOverlay","componentWillLoad","uniqueKey","Math","floor","random","getRowData","gridOptions","headerHeight","defaultColDef","resizable","suppressDragLeaveHidesColumns","enableCellTextSelection","onFirstDataRendered","bind","columnDefs","loadingOverlayComponent","noRowsOverlayComponent","noRowsOverlayComponentParams","icons","sortAscending","sortDescending","sortUnSort","rowDragManaged","dndSource","animateRows","componentDidRender","componentDidLoad","container","createGrid","sizeColumnsToFit","defaultMinWidth","paginationElement","shadowRoot","querySelector","handlePageChange","sidebarFilterElements","querySelectorAll","sidebarFilterElement","topbarFilterElements","topbarFilterElement","componentWillUnmount","sidebarFilters","sidebarFilter","topbarFilters","topbarFilter","isJSONParseable","str","JSON","parse","e","rows","undefined","Array","isArray","console","error","cols","buttonColumn","find","column","cellRenderer","valueFormatter","buttonRendererOptions","api","handleResetButtonClick","resetEvent","window","disconnectedCallback","resetButton","getTableClassNames","classNames","render","style","height","filterClass","h","Host","key","class","onClick","icon","keys","isMultiSelect","placeholder","readOnly","selected","id","ref","el","total","hasButtonCol","onDragOver","dragSupported","dataTransfer","dropEffect","preventDefault","onDrop","jsonData","getData","eJsonRow","classList","add","innerText","eJsonDisplay"],"sources":["src/components/table-advanced-version/buttonCellRenderer.ts","src/components/table-advanced-version/customNoRowsOverlay.ts","src/components/table-advanced-version/customLoadingOverlay.ts","src/components/table-advanced-version/table.scss?tag=ifx-table&encapsulation=shadow","src/components/table-advanced-version/table.tsx"],"sourcesContent":["import { ICellRendererComp, ICellRendererParams } from 'ag-grid-community';\nimport { ButtonInterface } from './interfaces';\n\nexport class ButtonCellRenderer implements ICellRendererComp {\n eGui!: HTMLDivElement;\n eButton!: HTMLElement; // Change to a generic HTMLElement to accommodate custom elements\n eventListener!: (event: Event) => void;\n\n init(params: ICellRendererParams) {\n this.createButton(params);\n }\n\n getGui() {\n return this.eGui;\n }\n\n refresh(params: ICellRendererParams) {\n this.updateButton(params);\n return true;\n }\n\n private createButton(params: ICellRendererParams) {\n const config = params.data.button;\n const options = params.colDef.cellRendererParams || {};\n \n this.eGui = document.createElement('div');\n this.eButton = document.createElement('ifx-button') as HTMLElement;\n \n if (this.hasRequiredKeys(config)) {\n this.setButtonAttributes(config);\n this.eGui.appendChild(this.eButton);\n this.attachEventListener(options, params);\n } else {\n this.eGui.innerHTML = `<span>${config}</span>`;\n }\n }\n\n private updateButton(params: ICellRendererParams) {\n const config = params.data.button;\n const options = params.colDef.cellRendererParams || {};\n \n if (this.hasRequiredKeys(config)) {\n this.setButtonAttributes(config);\n this.detachEventListener();\n this.attachEventListener(options, params);\n } else {\n this.eGui.innerHTML = `<span>${config}</span>`;\n }\n }\n\n private setButtonAttributes(config: ButtonInterface) {\n this.eButton.setAttribute('disabled', config.disabled.toString());\n this.eButton.setAttribute('variant', config.variant);\n this.eButton.setAttribute('theme', config.theme);\n this.eButton.setAttribute('type', config.type);\n this.eButton.setAttribute('size', config.size);\n this.eButton.setAttribute('full-width', config.fullWidth.toString());\n this.eButton.setAttribute('target', config.target);\n this.eButton.setAttribute('href', config.href);\n this.eButton.textContent = config.text;\n }\n\n private attachEventListener(options: any, params: ICellRendererParams) {\n this.eventListener = (event: Event) => {\n if (options.onButtonClick) {\n options.onButtonClick(params, event);\n }\n };\n this.eButton.addEventListener('click', this.eventListener);\n }\n\n private detachEventListener() {\n if (this.eventListener) {\n this.eButton.removeEventListener('click', this.eventListener);\n }\n }\n\n private hasRequiredKeys(config: ButtonInterface): boolean {\n return config && config.text !== '' && config.variant !== '' && config.size !== '' && config.type !== '';\n }\n}\n","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\n\n.table-container {\n display: block;\n}\n\n.sidebar-btn {\n margin-bottom: 24px;\n}\n\n.sidebar-container {\n margin-right: 24px;\n}\n\n.sidebar-layout {\n display: flex;\n flex-direction: row;\n}\n\n.topbar-layout {\n display: flex;\n flex-direction: column;\n}\n\n.table-pagination-wrapper {\n display: flex;\n flex-direction: column;\n align-items: stretch; // stretches items to fill the container horizontally\n width: 100%; // ensures the wrapper takes up the full width of its parent\n}\n\n#table-wrapper {\n flex: 1; // allows the table to take up the remaining space\n}\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.filter-chips { \n display:flex;\n gap:tokens.$ifxSpace100;\n margin-bottom: 12px;\n}\n\n.filter-chips > ifx-button { // ifx-button with icon and text has a paddingof 16 px. This is to remove the padding to align with the filter-chips container definition\n margin-left: -8px;\n}\n\n.set-filter-wrapper-sidebar {\n display: flex;\n flex-direction: column;\n margin-bottom: tokens.$ifxSpace100;\n}\n\n.set-filter-wrapper-topbar {\n display: flex;\n flex-wrap: wrap;\n flex-direction: row;\n margin-bottom: tokens.$ifxSpace100;\n background: tokens.$ifxColorEngineering100;\n padding-top: 32px;\n padding-bottom: 32px;\n gap: 24px;\n }\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}\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\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\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: none;\n}\n\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);\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 align-items: center;\n\n}\n\n.ag-ltr .ag-sort-indicator-icon {\n padding-left: 0px;\n vertical-align: bottom;\n line-height: 12px;\n}\n\n.ag-sort-indicator-container .ag-sort-order { \n display: none;\n}\n\n.unsort-icon-custom-color {\n color: tokens.$ifxColorEngineering400;\n}\n\n\n// Table with set filters in sidebar orientation\n\n\n.filters-title {\n font-size: 24px;\n font-weight: 600;\n}\n\n\n.matching-results-container {\n display: flex;\n gap: 4px;\n font-size: 14px;\n}\n\n.matching-results-count {\n font-weight: 600;\n}\n\n.matching-results-text {\n font-weight: 400;\n}","import { Component, h, Host, Method, Element, Prop, State, Listen, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { ButtonCellRenderer } from './buttonCellRenderer';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\n\n\n@Component({\n tag: 'ifx-table',\n styleUrl: 'table.scss',\n shadow: true\n})\nexport class Table {\n gridOptions: GridOptions;\n gridApi: GridApi;\n @State() currentPage: number = 1;\n @Prop() cols: any;\n @Prop() rows: any;\n @Prop() buttonRendererOptions?: { onButtonClick?: (params: any, event: Event) => void;}; \n @State() rowData: any[] = [];\n @State() colData: any[] = [];\n @State() filterOptions: { [key: string]: string[] } = {};\n @State() currentFilters = {};\n @State() uniqueKey: string;\n allRowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @Prop() pagination: boolean = true;\n @Prop() paginationPageSize: number = 10;\n @Prop() filterOrientation: string = 'sidebar'; // topbar / none\n @State() showSidebarFilters: boolean = true;\n @State() matchingResultsCount: number = 0;\n\n @Prop() showLoading: boolean = false;\n private container: HTMLDivElement;\n @Element() host: HTMLElement;\n originalRowData: any[] = [];\n\n @Listen('ifxChipChange')\n handleChipChange(event: CustomEvent<{ previousSelection: Array<any>, currentSelection: Array<any>, name: string }>) {\n const { name, currentSelection } = event.detail;\n\n // Clone the current filters state\n const updatedFilters = { ...this.currentFilters };\n\n if (currentSelection.length === 0) {\n // If there are no selections for this filter, delete the filter\n delete updatedFilters[name];\n\n // Emit event with specific filter name\n const customEvent = new CustomEvent('ifxUpdateSidebarFilter', { detail: { filterName: name }, bubbles: true, composed: true });\n this.host.dispatchEvent(customEvent);\n } else {\n // Otherwise, update the filter values with the current selection\n updatedFilters[name].filterValues = currentSelection.map(selection => selection.value);\n }\n\n // Update the component's filters\n this.currentFilters = updatedFilters;\n\n // Ensure table data is updated\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n this.updateTableView();\n }\n\n @Watch('buttonRendererOptions')\n onButtonRendererOptionsChanged() {\n this.colData = this.getColData(); // Re-fetch column data to apply new renderer options\n if (this.gridApi) {\n this.gridApi.setColumnDefs(this.colData); // Update column definitions in the grid API\n }\n }\n\n toggleSidebarFilters() {\n this.showSidebarFilters = !this.showSidebarFilters;\n }\n\n updateFilterOptions() {\n const options = {};\n for (let col of this.colData) {\n options[col.field] = [...new Set(this.rowData.map(row => row[col.field]))];\n }\n this.filterOptions = options;\n }\n\n handleSidebarFilterChange(event: CustomEvent) {\n const filterGroups = event.detail;\n const updatedFilters = {};\n\n filterGroups.forEach(filterGroup => {\n const filterName = filterGroup.filterGroupName;\n let filterValues;\n let type;\n\n if (filterGroup.selectedItems && filterGroup.selectedItems.length > 0) {\n filterValues = filterGroup.selectedItems.map(item => item.label);\n type = 'multi-select';\n } else if (filterGroup.value) {\n filterValues = [filterGroup.value];\n type = 'text';\n } else {\n filterValues = [];\n }\n\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n updatedFilters[filterName] = { filterValues, type };\n }\n });\n\n this.allRowData = this.applyAllFilters(this.originalRowData, updatedFilters);\n this.updateTableView();\n this.currentFilters = updatedFilters;\n }\n\n\n handleTopbarFilterChange(event: CustomEvent) {\n const filters = event.detail;\n\n // Start by resetting the filter conditions to a blank object\n this.currentFilters = {};\n\n // Loop through each filter group provided in the event detail\n filters.forEach(filter => {\n const filterName = filter.filterName;\n let filterValues;\n\n let type = filter.type;\n\n if (type === 'text') {\n // Search/Text filter\n filterValues = filter.filterValues\n } else {\n // Multi-select/Single-Select\n filterValues = filter.filterValues.map(item => item.label);\n }\n\n // If there are no filter values, or the filter is a text filter with an empty value, remove the filter\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n // Add or update the filter in the currentFilters object\n this.currentFilters[filterName] = { filterValues, type };\n }\n });\n\n\n // Now that the currentFilters object has been updated, apply all filters to the data\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n\n // After filtering, update the table view with the new filtered data\n this.updateTableView();\n }\n\n\n applyAllFilters(data, filters) {\n return data.filter(row => {\n for (const filterName in filters) {\n const filterInfo = filters[filterName];\n let selectedValues = (filterInfo.filterValues || []).map(value => {\n if (typeof value === 'string') {\n return value.toLowerCase();\n } else if (typeof value === 'number' || typeof value === 'boolean') {\n return value.toString();\n }\n return '';\n });\n\n // For text filters, check if row values start with any of the selectedValues\n if (filterInfo.type === 'text') {\n let textFilterMatched = false;\n for (let property in row) {\n if (row.hasOwnProperty(property)) {\n let rowValue = row[property] != null ? String(row[property]).toLowerCase() : '';\n if (selectedValues.some(filterValue => rowValue.startsWith(filterValue))) {\n textFilterMatched = true;\n break;\n }\n }\n }\n if (!textFilterMatched) return false;\n }\n // For multi-select filters, this remains unchanged\n else if (filterInfo.type === 'multi-select') {\n let rowValue = row[filterName] != null ? String(row[filterName]).toLowerCase() : '';\n // Check if 'undefined' is a selected value and include rows with empty values in that case\n let includesUndefined = selectedValues.includes('undefined');\n if (!selectedValues.includes(rowValue) && !(includesUndefined && rowValue === '')) {\n return false;\n }\n }\n }\n return true;\n });\n }\n\n\n\n updateTableView() {\n // Calculate the slice of data to display based on pagination\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n\n // Update the row data in the table\n this.rowData = visibleRowData;\n this.gridApi.setGridOption('rowData', this.rowData);\n\n // Update matching results count\n this.matchingResultsCount = this.allRowData.length;\n }\n\n\n clearAllFilters() {\n this.currentFilters = {};\n this.allRowData = [...this.originalRowData];\n }\n\n\n @Method()\n async onBtShowLoading() {\n this.gridApi.showLoadingOverlay();\n }\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n\n this.rowData = this.getRowData();\n this.colData = this.getColData();\n this.updateFilterOptions();\n\n this.gridOptions = {\n\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n },\n suppressDragLeaveHidesColumns: true,\n enableCellTextSelection: true,\n onFirstDataRendered: this.onFirstDataRendered.bind(this),\n columnDefs: this.colData,\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=\"arrowtriangleup16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrowtriangledown16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrowtrianglevertikal16\"></ifx-icon></a>'\n },\n rowDragManaged: this.colData.some(col => col.dndSource === true) ? true : false,\n animateRows: this.colData.some(col => col.dndSource === true) ? true : false,\n };\n\n }\n\n componentDidRender() {\n if (this.gridApi) {\n this.gridApi.setGridOption('columnDefs', this.colData);\n }\n }\n\n\n\n componentDidLoad() {\n if (this.container) {\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.colData);\n this.gridApi.setGridOption('rowData', this.rowData);\n\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.addEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilterElements = this.host.querySelectorAll('ifx-filter-type-group');\n // Add an event listener to each SetFilter component\n sidebarFilterElements.forEach(sidebarFilterElement => {\n sidebarFilterElement.addEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilterElements = this.host.querySelectorAll('ifx-filter-bar');\n // Add an event listener to each SetFilter component\n topbarFilterElements.forEach(topbarFilterElement => {\n topbarFilterElement.addEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n }\n }\n\n componentWillUnmount() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n sidebarFilters.forEach(sidebarFilter => {\n sidebarFilter.removeEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n topbarFilters.forEach(topbarFilter => {\n topbarFilter.removeEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n\n handlePageChange(event) {\n this.currentPage = event.detail.currentPage;\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n // Update the data in the grid\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', visibleRowData);\n }\n }\n\n isJSONParseable(str) {\n try {\n JSON.parse(str);\n return true;\n } catch (e) {\n return false;\n }\n }\n\n\n getRowData() {\n let rows: any[] = [];\n if (this.rows === undefined || this.rows === null) {\n return rows;\n }\n \n if (this.isJSONParseable(this.rows)) {\n rows = [...JSON.parse(this.rows)];\n }\n else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = [...this.rows];\n }\n else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n this.allRowData = rows;\n this.originalRowData = [...rows]; // Deep copy the original data\n this.matchingResultsCount = this.allRowData.length;\n\n return rows.slice(0, this.paginationPageSize);\n }\n\n\n getColData() {\n let cols: any[] = [];\n if (this.cols === undefined || this.cols === null) {\n return cols;\n }\n \n if (this.isJSONParseable(this.cols)) {\n cols = [...JSON.parse(this.cols)];\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 \n const buttonColumn = cols.find(column => column.field === 'button');\n if (buttonColumn) {\n buttonColumn.cellRenderer = ButtonCellRenderer;\n buttonColumn.valueFormatter = params => params.value.text;\n \n // No JSON.parse needed now\n if (this.buttonRendererOptions && typeof this.buttonRendererOptions === 'object') {\n if (this.buttonRendererOptions.onButtonClick) {\n buttonColumn.cellRendererParams = {\n onButtonClick: this.buttonRendererOptions.onButtonClick\n };\n }\n }\n }\n \n return cols;\n }\n \n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n handleResetButtonClick() {\n const resetEvent = new CustomEvent('ifxResetFiltersEvent', { bubbles: true, composed: true });\n window.dispatchEvent(resetEvent); // Dispatch from the window object\n\n this.clearAllFilters();\n this.updateTableView(); // Update table view with the original data\n }\n\n\n disconnectedCallback() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange);\n }\n }\n\n const resetButton = this.host.shadowRoot.querySelector('#reset-filters-button');\n if (resetButton) {\n resetButton.removeEventListener('click', this.handleResetButtonClick.bind(this));\n }\n }\n\n\n\n getTableClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n\n render() {\n let style = {};\n if (this.tableHeight !== 'auto') {\n style = {\n 'height': this.tableHeight\n };\n }\n const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : 'sidebar-layout';\n return (\n <Host>\n <div class=\"table-container\">\n {this.filterOrientation === 'sidebar' && (\n <div class=\"sidebar-btn\">\n <ifx-button\n type=\"button\"\n disabled={false}\n variant=\"secondary\"\n size=\"m\"\n target=\"_blank\"\n theme=\"default\"\n full-width=\"false\"\n onClick={() => this.toggleSidebarFilters()}\n >\n <ifx-icon icon=\"cross-12\"></ifx-icon>{this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'}\n </ifx-button>\n </div>\n )}\n\n <div class={filterClass}>\n {this.filterOrientation === 'sidebar' && this.showSidebarFilters && (\n <div class=\"sidebar-container\">\n <div class=\"filters-title-container\">\n <span class=\"filters-title\">Filters</span>\n </div>\n <div class=\"set-filter-wrapper-sidebar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"sidebar-filter\"></slot>\n )}\n </div>\n </div>\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (\n <div class=\"set-filter-wrapper-topbar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"topbar-filter\"></slot>\n )}\n </div>\n )}\n\n <div class=\"table-pagination-wrapper\">\n <div class=\"filter-chips\">\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (\n Object.keys(this.currentFilters).map(name => {\n const filter = this.currentFilters[name];\n const filterValues = filter.filterValues;\n const isMultiSelect = filter.type !== 'text';\n\n return filterValues.length > 0 ? (\n <ifx-chip\n placeholder={name}\n size=\"large\"\n variant={isMultiSelect ? \"multi\" : \"single\"}\n readOnly={true}\n value={filterValues} // Ensure value prop is set\n key={name}\n >\n {filterValues.map(filterValue => (\n <ifx-chip-item value={filterValue} selected={true} key={filterValue}>\n {filterValue}\n </ifx-chip-item>\n ))}\n </ifx-chip>\n ) : null;\n })\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (\n <ifx-button type=\"button\" disabled={false} variant=\"tertiary\" size=\"m\" target=\"_blank\" theme=\"default\" full-width=\"false\" onClick={() => this.handleResetButtonClick()}\n >\n <ifx-icon icon=\"curved-arrow-left-16\"></ifx-icon>Reset all\n </ifx-button>\n )}\n </div>\n\n {this.filterOrientation !== 'none' && (\n <div class=\"matching-results-container\">\n <span class=\"matching-results-count\">\n {this.matchingResultsCount}\n </span>\n <span class=\"matching-results-text\">\n matching results\n </span>\n </div>\n )}\n\n <div id=\"table-wrapper\" class={this.getTableClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class='ifx-ag-grid' style={style} ref={(el) => this.container = el}>\n </div>\n </div>\n {this.pagination ? <ifx-pagination total={this.allRowData.length} current-page={this.currentPage} items-per-page='[{\"value\":\"ten\",\"label\":\"10\",\"selected\":true}, {\"value\":\"Twenty\",\"label\":\"20\",\"selected\":false}, {\"value\":\"Thirty\",\"label\":\"30\",\"selected\":false}]'></ifx-pagination> : null}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n\n hasButtonCol(): boolean {\n return this.getColData().some(column => column.field === 'button');\n }\n\n onDragOver(event) {\n var dragSupported = event.dataTransfer.length;\n\n if (dragSupported) {\n event.dataTransfer.dropEffect = 'move';\n }\n\n event.preventDefault();\n }\n\n onDrop(event) {\n var jsonData = event.dataTransfer.getData('application/json');\n\n var eJsonRow = document.createElement('div');\n eJsonRow.classList.add('json-row');\n eJsonRow.innerText = jsonData;\n\n var eJsonDisplay = document.querySelector('#eJsonDisplay');\n\n eJsonDisplay.appendChild(eJsonRow);\n event.preventDefault();\n }\n\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r,h as e,g as a}from"./p-c63974da.js";const o=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}.container{display:flex;align-items:center;gap:20px;flex-wrap:wrap;text-decoration:none;color:#1D1D1D;padding:0px 24px 24px 24px;word-wrap:break-word;overflow-wrap:anywhere;}.container:hover{cursor:initial}';const n=o;const t=class{constructor(e){r(this,e)}render(){return e("div",{key:"2f4e55e1890a5d5f749d0e951d6971d8cf1b0875",class:"container"},e("slot",{key:"7e0c1226088fcd91ffee21b817f89970bc3ab772"}))}get el(){return a(this)}};t.style=n;export{t as ifx_card_links};
2
- //# sourceMappingURL=p-a9c13b65.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,g as e}from"./p-c63974da.js";const a=':root{--ifx-font-family:"Source Sans 3";font-family:var(--ifx-font-family, sans-serif)}:host{display:flex}.tabs{display:flex;font-family:var(--ifx-font-family);width:100%}.tabs.horizontal{flex-direction:column}.tabs.vertical{flex-direction:row}.tabs-list{display:flex;list-style:none;padding:0;margin:0;position:relative;font-weight:600}.tabs-list:focus-within .active-border{display:none}.active-border{content:"";position:absolute;transition:left 0.3s ease-in-out, top 0.3s ease-in-out, height 0.3s ease-in-out}.tabs.horizontal .active-border{bottom:0;left:0;height:2px;background-color:#0A8276}.tabs.vertical .tabs-list{flex-direction:column;border-bottom:none}.tabs.vertical .tab-content{padding-top:0px;padding-left:32px}.tabs:not(.vertical) .tab-item.full-width{flex:1}.tab-item{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;cursor:pointer;position:relative}.tab-item.icon__right{flex-direction:row-reverse;justify-content:flex-end}.tab-item:hover{color:#0A8276}.tab-item:active,.tab-item.active{color:#0A8276}.tab-item:focus,.tab-item.focus{outline:none;border-radius:1px;box-shadow:0 0 0 2px #FFFFFF, 0 0 0 4px #0A8276}.tab-item:focus+.active-border,.tab-item.focus+.active-border{display:none}.tab-item.disabled{color:#BFBBBB;pointer-events:none}.tabs.vertical .tab-item{border-right:2px solid transparent;min-width:7em}.tabs.vertical .active-border{left:0;top:0;width:2px;background-color:#0A8276}.tab-content{padding-top:24px;padding-left:0px;flex-grow:1}.tabs.small .tab-item{font-size:0.875rem}';const o=a;const n=class{constructor(s){t(this,s);this.ifxTabChange=i(this,"ifxTabChange",7);this.orientation="horizontal";this.activeTabIndex=0;this.fullWidth=false;this.internalActiveTabIndex=0;this.internalFocusedTabIndex=0;this.tabRefs=[];this.tabHeaderRefs=[];this.disabledTabs=[];this.tabObjects=[]}updateBorderOnWindowResize(){this.updateBorderAndFocus()}setActiveAndFocusedTab(t){var i;if(t>=this.tabObjects.length){t=this.tabObjects.length-1}if(t<0){t=0}if(!((i=this.tabObjects[t])===null||i===void 0?void 0:i.disabled)){this.internalActiveTabIndex=t;this.internalFocusedTabIndex=t}}handleTabHeaderChange(t){const i=t.target.getAttribute("slot").replace("tab-","");this.tabObjects[i].header=t.detail;this.tabObjects=[...this.tabObjects]}activeTabIndexChanged(t,i){if(t!==i){this.setActiveAndFocusedTab(t)}}componentWillLoad(){this.internalOrientation=this.orientation.toLowerCase()==="vertical"?"vertical":"horizontal";if(this.internalActiveTabIndex!==this.activeTabIndex){this.ifxTabChange.emit({previousTab:this.internalActiveTabIndex,currentTab:this.activeTabIndex})}this.onSlotChange();this.setActiveAndFocusedTab(this.activeTabIndex);this.updateTabStyles()}updateTabStyles(){this.tabHeaderRefs.forEach(((t,i)=>{t.classList.toggle("active",i===this.internalActiveTabIndex);t.setAttribute("aria-selected",i===this.internalActiveTabIndex?"true":"false")}))}reRenderBorder(){const t=this.el.shadowRoot.querySelector(".active-border");if(t&&this.tabHeaderRefs[this.internalActiveTabIndex]){if(this.orientation==="horizontal"){t.style.left=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;t.style.width=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;t.style.top="";t.style.height=""}else{t.style.top=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;t.style.height=`${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;t.style.left="";t.style.width=""}}}onSlotChange(){const t=this.el.querySelectorAll("ifx-tab");this.tabObjects=Array.from(t).map((t=>({header:t===null||t===void 0?void 0:t.header,disabled:(t===null||t===void 0?void 0:t.disabled)===true,icon:t===null||t===void 0?void 0:t.icon,iconPosition:t===null||t===void 0?void 0:t.iconPosition})));this.tabRefs=Array.from(t);this.tabRefs.forEach(((t,i)=>{t.setAttribute("slot",`tab-${i}`)}))}setDefaultOrientation(){const t=["horizontal","vertical"];const i=this.orientation.toLowerCase();if(!t.includes(i)){this.internalOrientation="horizontal"}else this.internalOrientation=this.orientation}componentDidLoad(){this.updateBorderAndFocus();this.tabHeaderRefs.forEach(((t,i)=>{t.addEventListener("focus",this.onTabFocus(i))}))}onTabFocus(t){return()=>{this.internalFocusedTabIndex=t}}disconnectedCallback(){this.tabHeaderRefs.forEach(((t,i)=>{t.removeEventListener("focus",this.onTabFocus(i))}))}componentDidUpdate(){this.updateBorderAndFocus()}updateBorderAndFocus(){this.reRenderBorder();this.updateTabFocusability()}updateTabFocusability(){this.tabHeaderRefs.forEach(((t,i)=>{t.tabIndex=i===this.internalActiveTabIndex?0:-1}))}focusNextTab(){let t=this.internalFocusedTabIndex+1;while(t<this.tabHeaderRefs.length&&this.tabObjects[t].disabled){t++}if(t>=0&&t<this.tabHeaderRefs.length){this.internalFocusedTabIndex=t;this.tabHeaderRefs[t].focus()}}focusPreviousTab(){let t=this.internalFocusedTabIndex-1;while(t>=0&&this.tabObjects[t].disabled){t--}if(t>=0&&t<this.tabHeaderRefs.length){this.internalFocusedTabIndex=t;this.tabHeaderRefs[t].focus()}}getTabItemClass(t){const i=t===this.internalActiveTabIndex&&!this.tabObjects[t].disabled;const s=this.tabObjects[t].disabled;const e=this.tabObjects[t].iconPosition;return`tab-item ${this.fullWidth?"full-width":""} ${i?"active":""} ${s?"disabled":""} ${"icon__"+e}`}handleClick(t,i){this.ifxTabChange.emit({previousTab:this.internalActiveTabIndex,currentTab:i});if(!t.disabled)this.internalActiveTabIndex=i}handleKeyDown(t){if(t.key==="Tab"){if(t.shiftKey){if(this.internalFocusedTabIndex===0){return}else{t.preventDefault();this.focusPreviousTab()}}else{if(this.internalFocusedTabIndex===this.tabHeaderRefs.length-1){return}else{t.preventDefault();this.focusNextTab()}}}else if(t.key==="Enter"){if(this.internalFocusedTabIndex!==-1&&!this.tabObjects[this.internalFocusedTabIndex].disabled){const t=this.internalActiveTabIndex;this.internalActiveTabIndex=this.internalFocusedTabIndex;this.ifxTabChange.emit({previousTab:t,currentTab:this.internalFocusedTabIndex})}}}render(){var t;return s("div",{key:"b94b74545720034560b78d35909a4757c9239c28","aria-label":"navigation tabs",class:`tabs ${this.internalOrientation}`},s("ul",{key:"9689012ae62d5d22c7f9938bce7a5247d7fd1022",role:"tablist",class:"tabs-list"},(t=this.tabObjects)===null||t===void 0?void 0:t.map(((t,i)=>s("li",{class:this.getTabItemClass(i),ref:t=>this.tabHeaderRefs[i]=t,onMouseDown:t=>t.preventDefault(),onClick:()=>this.handleClick(t,i),"aria-selected":i===this.internalActiveTabIndex?"true":"false","aria-disabled":t.disabled?"true":"false",role:"tab"},(t===null||t===void 0?void 0:t.icon)?s("ifx-icon",{icon:t.icon}):"",t===null||t===void 0?void 0:t.header))),s("div",{key:"0365da7db703747de5996d5b48f1a59ba3ebc3e0",class:"active-border"})),s("div",{key:"53bdc3fbd557dec39cbdea5543ef7e56bf57a156",class:"tab-content"},Array.from(this.tabObjects).map(((t,i)=>s("div",{style:{display:i===this.internalActiveTabIndex?"block":"none"}},s("slot",{name:`tab-${i}`}))))))}get el(){return e(this)}static get watchers(){return{activeTabIndex:["activeTabIndexChanged"]}}};n.style=o;export{n as ifx_tabs};
2
- //# sourceMappingURL=p-c5a54d87.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["tabsCss","IfxTabsStyle0","IfxTabs","constructor","hostRef","this","orientation","activeTabIndex","fullWidth","internalActiveTabIndex","internalFocusedTabIndex","tabRefs","tabHeaderRefs","disabledTabs","tabObjects","updateBorderOnWindowResize","updateBorderAndFocus","setActiveAndFocusedTab","index","length","_a","disabled","handleTabHeaderChange","e","tabIndex","target","getAttribute","replace","header","detail","activeTabIndexChanged","newValue","oldValue","componentWillLoad","internalOrientation","toLowerCase","ifxTabChange","emit","previousTab","currentTab","onSlotChange","updateTabStyles","forEach","tab","classList","toggle","setAttribute","reRenderBorder","borderElement","el","shadowRoot","querySelector","style","left","offsetLeft","width","offsetWidth","top","height","offsetTop","offsetHeight","tabs","querySelectorAll","Array","from","map","icon","iconPosition","setDefaultOrientation","validOrientations","lowercaseOrientation","includes","componentDidLoad","addEventListener","onTabFocus","disconnectedCallback","removeEventListener","componentDidUpdate","updateTabFocusability","focusNextTab","nextIndex","focus","focusPreviousTab","prevIndex","getTabItemClass","isActive","isDisabled","handleClick","handleKeyDown","ev","key","shiftKey","preventDefault","previouslyActiveTabIndex","render","h","class","role","ref","onMouseDown","event","onClick","_","display","name"],"sources":["src/components/tabs/tabs.scss?tag=ifx-tabs&encapsulation=shadow","src/components/tabs/tabs.tsx"],"sourcesContent":["//ifxTabs.scss\n@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n:host {\n display: flex;\n}\n\n.tabs {\n display: flex;\n font-family: var(--ifx-font-family);\n width: 100%;\n}\n\n.tabs.horizontal {\n flex-direction: column;\n}\n\n.tabs.vertical {\n flex-direction: row;\n}\n\n.tabs-list {\n display: flex;\n list-style: none;\n padding: 0;\n margin: 0;\n position: relative;\n font-weight: tokens.$ifxFontWeightSemibold;\n}\n\n.tabs-list:focus-within .active-border {\n display: none;\n}\n\n.active-border {\n content: \"\";\n position: absolute;\n transition: left 0.3s ease-in-out, top 0.3s ease-in-out, height 0.3s ease-in-out;\n}\n\n.tabs.horizontal .active-border {\n bottom: 0;\n left: 0;\n height: 2px;\n background-color: tokens.$ifxColorOcean500;\n}\n\n.tabs.vertical .tabs-list {\n flex-direction: column;\n border-bottom: none;\n}\n\n.tabs.vertical .tab-content {\n padding-top: 0px;\n padding-left: 32px;\n}\n\n.tabs:not(.vertical) {\n & .tab-item {\n &.full-width { \n flex: 1;\n }\n }\n}\n\n.tab-item {\n // Reduced padding values\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: tokens.$ifxSpace100 tokens.$ifxSpace200;\n cursor: pointer;\n position: relative;\n\n &.icon__right {\n flex-direction: row-reverse;\n justify-content: flex-end;\n }\n \n &:hover {\n color: tokens.$ifxColorOcean500;\n }\n \n &:active,\n &.active {\n color: tokens.$ifxColorOcean500;\n }\n\n &:focus,\n &.focus {\n outline: none;\n border-radius: 1px;\n box-shadow: 0 0 0 2px tokens.$ifxColorBaseWhite, 0 0 0 4px tokens.$ifxColorOcean500;\n \n // Assuming .active-border is a sibling of .tab-item\n +.active-border {\n display: none; // Hide the active border when the tab is in focus\n }\n }\n \n &.disabled {\n color: tokens.$ifxColorEngineering300;\n pointer-events: none;\n }\n}\n\n.tabs.vertical .tab-item {\n border-right: 2px solid transparent;\n min-width: 7em;\n}\n\n.tabs.vertical .active-border {\n left: 0;\n top: 0;\n width: 2px;\n background-color: tokens.$ifxColorOcean500;\n}\n\n\n.tab-content {\n padding-top: 24px;\n padding-left: 0px;\n flex-grow: 1;\n}\n\n.tabs.small .tab-item {\n font-size: tokens.$ifxFontSizeS;\n}","//ifxTabs.tsx\nimport { Component, h, Prop, State, Element, Listen, Event, EventEmitter, Watch } from '@stencil/core';\n \n\n\n@Component({\n tag: 'ifx-tabs',\n styleUrl: 'tabs.scss',\n shadow: true\n})\nexport class IfxTabs {\n @Element() el: HTMLElement;\n\n @Prop() orientation: string = \"horizontal\";\n @Prop({ mutable: true }) activeTabIndex: number = 0;\n @Prop() fullWidth: boolean = false;\n\n @State() internalOrientation: string;\n @State() internalActiveTabIndex: number = 0;\n @State() internalFocusedTabIndex: number = 0;\n @State() tabRefs: HTMLElement[] = [];\n @State() tabHeaderRefs: HTMLElement[] = [];\n @State() disabledTabs: string[] = [];\n @State() tabObjects: any[] = [];\n\n @Event() ifxTabChange: EventEmitter;\n\n @Listen('resize', {target: 'window'})\n updateBorderOnWindowResize() {\n this.updateBorderAndFocus();\n }\n\n setActiveAndFocusedTab(index: number) {\n if (index >= this.tabObjects.length) {\n index = this.tabObjects.length - 1;\n }\n if (index < 0) {\n index = 0;\n }\n if (!this.tabObjects[index]?.disabled) {\n this.internalActiveTabIndex = index;\n this.internalFocusedTabIndex = index;\n }\n }\n\n @Listen('tabHeaderChange')\n handleTabHeaderChange(e) { \n const tabIndex = e.target.getAttribute('slot').replace('tab-', '');\n this.tabObjects[tabIndex].header = e.detail;\n this.tabObjects = [...this.tabObjects]; \n }\n \n\n @Watch('activeTabIndex')\n activeTabIndexChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.setActiveAndFocusedTab(newValue);\n }\n }\n\n\n\n componentWillLoad() {\n this.internalOrientation = this.orientation.toLowerCase() === 'vertical' ? 'vertical' : 'horizontal';\n if (this.internalActiveTabIndex !== this.activeTabIndex) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: this.activeTabIndex });\n };\n this.onSlotChange();\n this.setActiveAndFocusedTab(this.activeTabIndex);\n this.updateTabStyles();\n }\n\n updateTabStyles() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.classList.toggle('active', index === this.internalActiveTabIndex);\n tab.setAttribute('aria-selected', index === this.internalActiveTabIndex ? 'true' : 'false')\n });\n }\n\n\n // needed for smooth border transition\n reRenderBorder() {\n const borderElement = this.el.shadowRoot.querySelector('.active-border') as HTMLElement;\n if (borderElement && this.tabHeaderRefs[this.internalActiveTabIndex]) {\n if (this.orientation === 'horizontal') {\n\n borderElement.style.left = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;\n borderElement.style.width = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;\n borderElement.style.top = '';\n borderElement.style.height = '';\n } else {\n borderElement.style.top = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;\n borderElement.style.height = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;\n borderElement.style.left = '';\n borderElement.style.width = '';\n }\n }\n }\n\n\n // when a slot is removed / added\n @Listen('slotchange')\n onSlotChange() {\n const tabs = this.el.querySelectorAll('ifx-tab');\n this.tabObjects = Array.from(tabs).map((tab) => {\n return {\n header: tab?.header,\n disabled: tab?.disabled === true,\n icon: tab?.icon,\n iconPosition: tab?.iconPosition\n }\n });\n\n this.tabRefs = Array.from(tabs);\n this.tabRefs.forEach((tab, index) => {\n tab.setAttribute('slot', `tab-${index}`);\n });\n }\n\n setDefaultOrientation() {\n const validOrientations = ['horizontal', 'vertical'];\n const lowercaseOrientation = this.orientation.toLowerCase();\n\n if (!validOrientations.includes(lowercaseOrientation)) {\n this.internalOrientation = 'horizontal';\n } else this.internalOrientation = this.orientation;\n }\n\n componentDidLoad() {\n this.updateBorderAndFocus();\n // Add keyboard event listeners for each tab header\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.addEventListener('focus', this.onTabFocus(index));\n });\n\n }\n\n onTabFocus(index) {\n return () => {\n this.internalFocusedTabIndex = index;\n };\n }\n\n disconnectedCallback() {\n // Remove keyboard event listeners when component is unmounted\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.removeEventListener('focus', this.onTabFocus(index));\n });\n }\n componentDidUpdate() {\n this.updateBorderAndFocus();\n }\n\n private updateBorderAndFocus() {\n this.reRenderBorder()\n this.updateTabFocusability();\n }\n\n private updateTabFocusability() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.tabIndex = index === this.internalActiveTabIndex ? 0 : -1;\n })\n }\n\n\n private focusNextTab() {\n let nextIndex = this.internalFocusedTabIndex + 1;\n while (nextIndex < this.tabHeaderRefs.length && this.tabObjects[nextIndex].disabled) {\n nextIndex++;\n }\n if (nextIndex >= 0 && nextIndex < this.tabHeaderRefs.length) {\n this.internalFocusedTabIndex = nextIndex;\n this.tabHeaderRefs[nextIndex].focus();\n }\n }\n\n private focusPreviousTab() {\n let prevIndex = this.internalFocusedTabIndex - 1;\n while ((prevIndex >= 0) && (this.tabObjects[prevIndex].disabled)) {\n prevIndex--;\n }\n if ((prevIndex >= 0) && (prevIndex < this.tabHeaderRefs.length)) {\n this.internalFocusedTabIndex = prevIndex;\n this.tabHeaderRefs[prevIndex].focus();\n }\n }\n\n\n private getTabItemClass(index: number) {\n const isActive = index === this.internalActiveTabIndex && !this.tabObjects[index].disabled;\n const isDisabled = this.tabObjects[index].disabled;\n const iconPosition = this.tabObjects[index].iconPosition\n return `tab-item ${this.fullWidth ? 'full-width' : \"\"} ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__'+iconPosition}`;\n }\n\n private handleClick(tab, index) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: index })\n if (!tab.disabled) this.internalActiveTabIndex = index;\n\n }\n\n\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Tab') {\n\n if (ev.shiftKey) {\n // Shift + Tab\n if (this.internalFocusedTabIndex === 0) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusPreviousTab();\n }\n } else {\n // Tab\n if (this.internalFocusedTabIndex === this.tabHeaderRefs.length - 1) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusNextTab();\n }\n }\n } else if (ev.key === 'Enter') {\n if (this.internalFocusedTabIndex !== -1 && !this.tabObjects[this.internalFocusedTabIndex].disabled) {\n const previouslyActiveTabIndex = this.internalActiveTabIndex;\n this.internalActiveTabIndex = this.internalFocusedTabIndex;\n this.ifxTabChange.emit({ previousTab: previouslyActiveTabIndex, currentTab: this.internalFocusedTabIndex })\n }\n }\n }\n\n\n render() {\n return (\n <div aria-label=\"navigation tabs\" class={`tabs ${this.internalOrientation}`}>\n <ul role=\"tablist\" class=\"tabs-list\">\n {this.tabObjects?.map((tab, index) => (\n <li\n class={this.getTabItemClass(index)}\n ref={(el) => (this.tabHeaderRefs[index] = el)}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => this.handleClick(tab, index)}\n aria-selected={index === this.internalActiveTabIndex ? 'true' : 'false'}\n aria-disabled={tab.disabled ? 'true' : 'false'}\n role=\"tab\"\n > \n {tab?.icon ? <ifx-icon icon = {tab.icon}></ifx-icon> : ''}\n {tab?.header}\n </li>\n ))}\n <div class=\"active-border\"></div>\n </ul>\n <div class=\"tab-content\">\n {Array.from(this.tabObjects).map((_, index) => (\n <div style={{ display: index === this.internalActiveTabIndex ? 'block' : 'none' }}>\n <slot name={`tab-${index}`} />\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n}"],"mappings":"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","ignoreList":[]}
@@ -1,3 +0,0 @@
1
- const e="infineon-design-system-stencil";const t={allRenderFn:true,appendChildSlotFix:false,asyncLoading:true,asyncQueue:false,attachStyles:true,cloneNodeFix:true,cmpDidLoad:true,cmpDidRender:true,cmpDidUnload:false,cmpDidUpdate:true,cmpShouldUpdate:false,cmpWillLoad:true,cmpWillRender:true,cmpWillUpdate:true,connectedCallback:true,constructableCSS:true,cssAnnotations:true,devTools:false,disconnectedCallback:true,element:false,event:true,experimentalScopedSlotChanges:false,experimentalSlotFixes:false,formAssociated:true,hasRenderFn:true,hostListener:true,hostListenerTarget:true,hostListenerTargetBody:true,hostListenerTargetDocument:true,hostListenerTargetParent:false,hostListenerTargetWindow:true,hotModuleReplacement:false,hydrateClientSide:false,hydrateServerSide:false,hydratedAttribute:false,hydratedClass:true,hydratedSelectorName:"hydrated",initializeNextTick:false,invisiblePrehydration:true,isDebug:false,isDev:false,isTesting:false,lazyLoad:true,lifecycle:true,lifecycleDOMEvents:false,member:true,method:true,mode:false,modernPropertyDecls:false,observeAttribute:true,profile:false,prop:true,propBoolean:true,propMutable:true,propNumber:true,propString:true,reflect:true,scoped:false,scopedSlotTextContentFix:false,scriptDataOpts:false,shadowDelegatesFocus:true,shadowDom:true,slot:true,slotChildNodesFix:false,slotRelocation:true,state:true,style:true,svg:true,taskQueue:true,transformTagName:false,updatable:true,vdomAttribute:true,vdomClass:true,vdomFunctional:false,vdomKey:true,vdomListener:true,vdomPropOrAttr:true,vdomRef:true,vdomRender:true,vdomStyle:true,vdomText:true,vdomXlink:true,watchCallback:true};var n=Object.defineProperty;var r=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:true})};var s="http://www.w3.org/2000/svg";var l="http://www.w3.org/1999/xhtml";var i=new WeakMap;var o=e=>i.get(e);var f=(e,t)=>{i.set(t.t=e,t)};var a=(e,t)=>{const n={l:0,$hostElement$:e,i:t,o:new Map};{n.u=new Promise((e=>n.v=e))}{n.h=new Promise((e=>n.p=e));e["s-p"]=[];e["s-rc"]=[]}const r=i.set(e,n);return r};var c=(e,t)=>t in e;var u=(e,t)=>(0,console.error)(e,t);var v=new Map;var d=(e,t,n)=>{const r=e.m.replace(/-/g,"_");const s=e.S;if(!s){return void 0}const l=v.get(s);if(l){return l[r]}
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/return import(`./${s}.entry.js${""}`).then((e=>{{v.set(s,e)}return e[r]}),u)};var h=new Map;var p="sty-id";var m="{visibility:hidden}.hydrated{visibility:inherit}";var y="slot-fb{display:contents}slot-fb[hidden]{display:none}";var b="http://www.w3.org/1999/xlink";var w=["formAssociatedCallback","formResetCallback","formDisabledCallback","formStateRestoreCallback"];var g=typeof window!=="undefined"?window:{};var S=g.document||{head:{}};var $=g.HTMLElement||class{};var k={l:0,$:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,r)=>e.addEventListener(t,n,r),rel:(e,t,n,r)=>e.removeEventListener(t,n,r),ce:(e,t)=>new CustomEvent(e,t)};var C=t.shadowDom;var O=(()=>{let e=false;try{S.addEventListener("e",null,Object.defineProperty({},"passive",{get(){e=true}}))}catch(e){}return e})();var j=e=>Promise.resolve(e);var x=(()=>{try{new CSSStyleSheet;return typeof(new CSSStyleSheet).replaceSync==="function"}catch(e){}return false})();var T=false;var D=[];var R=[];var L=(e,t)=>n=>{e.push(n);if(!T){T=true;if(t&&k.l&4){A(E)}else{k.raf(E)}}};var F=e=>{for(let t=0;t<e.length;t++){try{e[t](performance.now())}catch(e){u(e)}}e.length=0};var E=()=>{F(D);{F(R);if(T=D.length>0){k.raf(E)}}};var A=e=>j().then(e);var M=L(R,true);var P=e=>{e=typeof e;return e==="object"||e==="function"};function N(e){var t,n,r;return(r=(n=(t=e.head)==null?void 0:t.querySelector('meta[name="csp-nonce"]'))==null?void 0:n.getAttribute("content"))!=null?r:void 0}var U={};r(U,{err:()=>B,map:()=>H,ok:()=>W,unwrap:()=>z,unwrapErr:()=>Q});var W=e=>({isOk:true,isErr:false,value:e});var B=e=>({isOk:false,isErr:true,value:e});function H(e,t){if(e.isOk){const n=t(e.value);if(n instanceof Promise){return n.then((e=>W(e)))}else{return W(n)}}if(e.isErr){const t=e.value;return B(t)}throw"should never get here"}var z=e=>{if(e.isOk){return e.value}else{throw e.value}};var Q=e=>{if(e.isErr){return e.value}else{throw e.value}};var V=e=>{const t=e.__childNodes||e.childNodes;if(e.tagName&&e.tagName.includes("-")&&e["s-cr"]&&e.tagName!=="SLOT-FB"){q(t,e.tagName).forEach((e=>{var t;if(e.nodeType===1&&e.tagName==="SLOT-FB"){if((t=G(e,e["s-sn"],false))==null?void 0:t.length){e.hidden=true}else{e.hidden=false}}}))}for(const e of t){if(e.nodeType===1&&(e.__childNodes||e.childNodes).length){V(e)}}};function q(e,t,n){let r=0;let s=[];let l;for(;r<e.length;r++){l=e[r];if(l["s-sr"]&&l["s-hn"]===t&&(n===void 0||l["s-sn"]===n)){s.push(l);if(typeof n!=="undefined")return s}s=[...s,...q(l.childNodes,t,n)]}return s}var G=(e,t,n=true)=>{const r=[];if(n&&e["s-sr"]||!e["s-sr"])r.push(e);while((e=e.nextSibling)&&e["s-sn"]===t){r.push(e)}return r};var I=(e,t)=>{if(e.nodeType===1){if(e.getAttribute("slot")===null&&t===""){return true}if(e.getAttribute("slot")===t){return true}return false}if(e["s-sn"]===t){return true}return t===""};var K=e=>{const t=e.cloneNode;e.cloneNode=function(e){const n=this;const r=n.shadowRoot&&C;const s=t.call(n,r?e:false);if(!r&&e){let e=0;let t,n;const r=["s-id","s-cr","s-lr","s-rc","s-sc","s-p","s-cn","s-sr","s-sn","s-hn","s-ol","s-nr","s-si","s-rf","s-scs"];const l=this.__childNodes||this.childNodes;for(;e<l.length;e++){t=l[e]["s-nr"];n=r.every((t=>!l[e][t]));if(t){{s.appendChild(t.cloneNode(true))}}if(n){s.appendChild(l[e].cloneNode(true))}}}return s}};var X=(e,t="")=>{{return()=>{}}};var _=(e,t)=>{{return()=>{}}};var J=(e,t,...n)=>{let r=null;let s=null;let l=null;let i=false;let o=false;const f=[];const a=t=>{for(let n=0;n<t.length;n++){r=t[n];if(Array.isArray(r)){a(r)}else if(r!=null&&typeof r!=="boolean"){if(i=typeof e!=="function"&&!P(r)){r=String(r)}if(i&&o){f[f.length-1].k+=r}else{f.push(i?Y(null,r):r)}o=i}}};a(n);if(t){if(t.key){s=t.key}if(t.name){l=t.name}{const e=t.className||t.class;if(e){t.class=typeof e!=="object"?e:Object.keys(e).filter((t=>e[t])).join(" ")}}}const c=Y(e,null);c.C=t;if(f.length>0){c.O=f}{c.j=s}{c.T=l}return c};var Y=(e,t)=>{const n={l:0,D:e,k:t,R:null,O:null};{n.C=null}{n.j=null}{n.T=null}return n};var Z={};var ee=e=>e&&e.D===Z;var te=(e,t)=>{if(e!=null&&!P(e)){if(t&4){return e==="false"?false:e===""||!!e}if(t&2){return parseFloat(e)}if(t&1){return String(e)}return e}return e};var ne=e=>o(e).$hostElement$;var re=(e,t,n)=>{const r=ne(e);return{emit:e=>se(r,t,{bubbles:!!(n&4),composed:!!(n&2),cancelable:!!(n&1),detail:e})}};var se=(e,t,n)=>{const r=k.ce(t,n);e.dispatchEvent(r);return r};var le=new WeakMap;var ie=(e,t,n)=>{let r=h.get(e);if(x&&n){r=r||new CSSStyleSheet;if(typeof r==="string"){r=t}else{r.replaceSync(t)}}else{r=t}h.set(e,r)};var oe=(e,t,n)=>{var r;const s=ae(t);const l=h.get(s);e=e.nodeType===11?e:S;if(l){if(typeof l==="string"){e=e.head||e;let n=le.get(e);let i;if(!n){le.set(e,n=new Set)}if(!n.has(s)){{i=document.querySelector(`[${p}="${s}"]`)||S.createElement("style");i.innerHTML=l;const n=(r=k.L)!=null?r:N(S);if(n!=null){i.setAttribute("nonce",n)}if(!(t.l&1)){if(e.nodeName==="HEAD"){const t=e.querySelectorAll("link[rel=preconnect]");const n=t.length>0?t[t.length-1].nextSibling:e.querySelector("style");e.insertBefore(i,n)}else if("host"in e){if(x){const t=new CSSStyleSheet;t.replaceSync(l);e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector("style");if(t){t.innerHTML=l+t.innerHTML}else{e.prepend(i)}}}else{e.append(i)}}if(t.l&1&&e.nodeName!=="HEAD"){e.insertBefore(i,null)}}if(t.l&4){i.innerHTML+=y}if(n){n.add(s)}}}else if(!e.adoptedStyleSheets.includes(l)){e.adoptedStyleSheets=[...e.adoptedStyleSheets,l]}}return s};var fe=e=>{const t=e.i;const n=e.$hostElement$;const r=t.l;const s=X("attachStyles",t.m);const l=oe(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);if(r&10&&r&2){n["s-sc"]=l;n.classList.add(l+"-h")}s()};var ae=(e,t)=>"sc-"+e.m;var ce=(e,t,n,r,s,l)=>{if(n!==r){let i=c(e,t);let o=t.toLowerCase();if(t==="class"){const t=e.classList;const s=ve(n);let l=ve(r);if(e["s-si"]){l.push(e["s-si"]);s.forEach((t=>{if(t.startsWith(e["s-si"]))l.push(t)}));l=[...new Set(l)];t.add(...l);delete e["s-si"]}else{t.remove(...s.filter((e=>e&&!l.includes(e))));t.add(...l.filter((e=>e&&!s.includes(e))))}}else if(t==="style"){{for(const t in n){if(!r||r[t]==null){if(t.includes("-")){e.style.removeProperty(t)}else{e.style[t]=""}}}}for(const t in r){if(!n||r[t]!==n[t]){if(t.includes("-")){e.style.setProperty(t,r[t])}else{e.style[t]=r[t]}}}}else if(t==="key");else if(t==="ref"){if(r){r(e)}}else if(!i&&t[0]==="o"&&t[1]==="n"){if(t[2]==="-"){t=t.slice(3)}else if(c(g,o)){t=o.slice(2)}else{t=o[2]+t.slice(3)}if(n||r){const s=t.endsWith(de);t=t.replace(he,"");if(n){k.rel(e,t,n,s)}if(r){k.ael(e,t,r,s)}}}else{const f=P(r);if((i||f&&r!==null)&&!s){try{if(!e.tagName.includes("-")){const s=r==null?"":r;if(t==="list"){i=false}else if(n==null||e[t]!=s){if(typeof e.__lookupSetter__(t)==="function"){e[t]=s}else{e.setAttribute(t,s)}}}else if(e[t]!==r){e[t]=r}}catch(e){}}let a=false;{if(o!==(o=o.replace(/^xlink\:?/,""))){t=o;a=true}}if(r==null||r===false){if(r!==false||e.getAttribute(t)===""){if(a){e.removeAttributeNS(b,t)}else{e.removeAttribute(t)}}}else if((!i||l&4||s)&&!f){r=r===true?"":r;if(a){e.setAttributeNS(b,t,r)}else{e.setAttribute(t,r)}}}}};var ue=/\s/;var ve=e=>{if(typeof e==="object"&&"baseVal"in e){e=e.baseVal}if(!e){return[]}return e.split(ue)};var de="Capture";var he=new RegExp(de+"$");var pe=(e,t,n)=>{const r=t.R.nodeType===11&&t.R.host?t.R.host:t.R;const s=e&&e.C||{};const l=t.C||{};{for(const e of me(Object.keys(s))){if(!(e in l)){ce(r,e,s[e],void 0,n,t.l)}}}for(const e of me(Object.keys(l))){ce(r,e,s[e],l[e],n,t.l)}};function me(e){return e.includes("ref")?[...e.filter((e=>e!=="ref")),"ref"]:e}var ye;var be;var we=false;var ge=false;var Se=false;var $e=false;var ke=(e,n,r)=>{var i;const o=n.O[r];let f=0;let a;let c;let u;if(!we){Se=true;if(o.D==="slot"){o.l|=o.O?2:1}}if(o.k!==null){a=o.R=S.createTextNode(o.k)}else if(o.l&1){a=o.R=S.createTextNode("")}else{if(!$e){$e=o.D==="svg"}a=o.R=S.createElementNS($e?s:l,!we&&t.slotRelocation&&o.l&2?"slot-fb":o.D);if($e&&o.D==="foreignObject"){$e=false}{pe(null,o,$e)}if(o.O){for(f=0;f<o.O.length;++f){c=ke(e,o,f);if(c){a.appendChild(c)}}}{if(o.D==="svg"){$e=false}else if(a.tagName==="foreignObject"){$e=true}}}a["s-hn"]=be;{if(o.l&(2|1)){a["s-sr"]=true;a["s-cr"]=ye;a["s-sn"]=o.T||"";a["s-rf"]=(i=o.C)==null?void 0:i.ref;u=e&&e.O&&e.O[r];if(u&&u.D===o.D&&e.R){{Ce(e.R,false)}}}}return a};var Ce=(e,n)=>{k.l|=1;const r=Array.from(e.__childNodes||e.childNodes);if(e["s-sr"]&&t.experimentalSlotFixes){let t=e;while(t=t.nextSibling){if(t&&t["s-sn"]===e["s-sn"]&&t["s-sh"]===be){r.push(t)}}}for(let e=r.length-1;e>=0;e--){const t=r[e];if(t["s-hn"]!==be&&t["s-ol"]){Ae(De(t).parentNode,t,De(t));t["s-ol"].remove();t["s-ol"]=void 0;t["s-sh"]=void 0;Se=true}if(n){Ce(t,n)}}k.l&=~1};var Oe=(e,t,n,r,s,l)=>{let i=e["s-cr"]&&e["s-cr"].parentNode||e;let o;if(i.shadowRoot&&i.tagName===be){i=i.shadowRoot}for(;s<=l;++s){if(r[s]){o=ke(null,n,s);if(o){r[s].R=o;Ae(i,o,De(t))}}}};var je=(e,t,n)=>{for(let r=t;r<=n;++r){const t=e[r];if(t){const e=t.R;Ee(t);if(e){{ge=true;if(e["s-ol"]){e["s-ol"].remove()}else{Ce(e,true)}}e.remove()}}}};var xe=(e,t,n,r,s=false)=>{let l=0;let i=0;let o=0;let f=0;let a=t.length-1;let c=t[0];let u=t[a];let v=r.length-1;let d=r[0];let h=r[v];let p;let m;while(l<=a&&i<=v){if(c==null){c=t[++l]}else if(u==null){u=t[--a]}else if(d==null){d=r[++i]}else if(h==null){h=r[--v]}else if(Te(c,d,s)){Re(c,d,s);c=t[++l];d=r[++i]}else if(Te(u,h,s)){Re(u,h,s);u=t[--a];h=r[--v]}else if(Te(c,h,s)){if(c.D==="slot"||h.D==="slot"){Ce(c.R.parentNode,false)}Re(c,h,s);Ae(e,c.R,u.R.nextSibling);c=t[++l];h=r[--v]}else if(Te(u,d,s)){if(c.D==="slot"||h.D==="slot"){Ce(u.R.parentNode,false)}Re(u,d,s);Ae(e,u.R,c.R);u=t[--a];d=r[++i]}else{o=-1;{for(f=l;f<=a;++f){if(t[f]&&t[f].j!==null&&t[f].j===d.j){o=f;break}}}if(o>=0){m=t[o];if(m.D!==d.D){p=ke(t&&t[i],n,o)}else{Re(m,d,s);t[o]=void 0;p=m.R}d=r[++i]}else{p=ke(t&&t[i],n,i);d=r[++i]}if(p){{Ae(De(c.R).parentNode,p,De(c.R))}}}}if(l>a){Oe(e,r[v+1]==null?null:r[v+1].R,n,r,i,v)}else if(i>v){je(t,l,a)}};var Te=(e,t,n=false)=>{if(e.D===t.D){if(e.D==="slot"){return e.T===t.T}if(!n){return e.j===t.j}if(n&&!e.j&&t.j){e.j=t.j}return true}return false};var De=e=>e&&e["s-ol"]||e;var Re=(e,n,r=false)=>{const s=n.R=e.R;const l=e.O;const i=n.O;const o=n.D;const f=n.k;let a;if(f===null){{$e=o==="svg"?true:o==="foreignObject"?false:$e}{if(o==="slot"&&!we);else{pe(e,n,$e)}}if(l!==null&&i!==null){xe(s,l,n,i,r)}else if(i!==null){if(e.k!==null){s.textContent=""}Oe(s,null,n,i,0,i.length-1)}else if(!r&&t.updatable&&l!==null){je(l,0,l.length-1)}if($e&&o==="svg"){$e=false}}else if(a=s["s-cr"]){a.parentNode.textContent=f}else if(e.k!==f){s.data=f}};var Le=[];var Fe=e=>{let n;let r;let s;const l=e.__childNodes||e.childNodes;for(const e of l){if(e["s-sr"]&&(n=e["s-cr"])&&n.parentNode){r=n.parentNode.__childNodes||n.parentNode.childNodes;const l=e["s-sn"];for(s=r.length-1;s>=0;s--){n=r[s];if(!n["s-cn"]&&!n["s-nr"]&&n["s-hn"]!==e["s-hn"]&&!t.experimentalSlotFixes){if(I(n,l)){let t=Le.find((e=>e.F===n));ge=true;n["s-sn"]=n["s-sn"]||l;if(t){t.F["s-sh"]=e["s-hn"];t.A=e}else{n["s-sh"]=e["s-hn"];Le.push({A:e,F:n})}if(n["s-sr"]){Le.map((e=>{if(I(e.F,n["s-sn"])){t=Le.find((e=>e.F===n));if(t&&!e.A){e.A=t.A}}}))}}else if(!Le.some((e=>e.F===n))){Le.push({F:n})}}}}if(e.nodeType===1){Fe(e)}}};var Ee=e=>{{e.C&&e.C.ref&&e.C.ref(null);e.O&&e.O.map(Ee)}};var Ae=(e,t,n)=>{{return e==null?void 0:e.insertBefore(t,n)}};var Me=(e,t,n=false)=>{var r,s,l,i;const o=e.$hostElement$;const f=e.i;const a=e.M||Y(null,null);const c=ee(t)?t:J(null,null,t);be=o.tagName;if(f.P){c.C=c.C||{};f.P.map((([e,t])=>c.C[t]=o[e]))}if(n&&c.C){for(const e of Object.keys(c.C)){if(o.hasAttribute(e)&&!["key","ref","style","class"].includes(e)){c.C[e]=o[e]}}}c.D=null;c.l|=4;e.M=c;c.R=a.R=o.shadowRoot||o;we=(f.l&1)!==0;{ye=o["s-cr"];ge=false}Re(a,c,n);{k.l|=1;if(Se){Fe(c.R);for(const e of Le){const t=e.F;if(!t["s-ol"]){const e=S.createTextNode("");e["s-nr"]=t;Ae(t.parentNode,t["s-ol"]=e,t)}}for(const e of Le){const t=e.F;const o=e.A;if(o){const e=o.parentNode;let n=o.nextSibling;{let l=(r=t["s-ol"])==null?void 0:r.previousSibling;while(l){let r=(s=l["s-nr"])!=null?s:null;if(r&&r["s-sn"]===t["s-sn"]&&e===(r.__parentNode||r.parentNode)){r=r.nextSibling;while(r===t||(r==null?void 0:r["s-sr"])){r=r==null?void 0:r.nextSibling}if(!r||!r["s-nr"]){n=r;break}}l=l.previousSibling}}const i=t.__parentNode||t.parentNode;const f=t.__nextSibling||t.nextSibling;if(!n&&e!==i||f!==n){if(t!==n){if(!t["s-hn"]&&t["s-ol"]){t["s-hn"]=t["s-ol"].parentNode.nodeName}Ae(e,t,n);if(t.nodeType===1&&t.tagName!=="SLOT-FB"){t.hidden=(l=t["s-ih"])!=null?l:false}}}t&&typeof o["s-rf"]==="function"&&o["s-rf"](t)}else{if(t.nodeType===1){if(n){t["s-ih"]=(i=t.hidden)!=null?i:false}t.hidden=true}}}}if(ge){V(c.R)}k.l&=~1;Le.length=0}ye=void 0};var Pe=(e,t)=>{if(t&&!e.N&&t["s-p"]){const n=t["s-p"].push(new Promise((r=>e.N=()=>{t["s-p"].splice(n-1,1);r()})))}};var Ne=(e,t)=>{{e.l|=16}if(e.l&4){e.l|=512;return}Pe(e,e.U);const n=()=>Ue(e,t);return M(n)};var Ue=(e,t)=>{const n=e.$hostElement$;const r=X("scheduleUpdate",e.i.m);const s=e.t;if(!s){throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`)}let l;if(t){{e.l|=256;if(e.W){e.W.map((([e,t])=>qe(s,e,t)));e.W=void 0}}{l=qe(s,"componentWillLoad")}}else{{l=qe(s,"componentWillUpdate")}}{l=We(l,(()=>qe(s,"componentWillRender")))}r();return We(l,(()=>He(e,s,t)))};var We=(e,t)=>Be(e)?e.then(t).catch((e=>{console.error(e);t()})):t();var Be=e=>e instanceof Promise||e&&e.then&&typeof e.then==="function";var He=async(e,t,n)=>{var r;const s=e.$hostElement$;const l=X("update",e.i.m);const i=s["s-rc"];if(n){fe(e)}const o=X("render",e.i.m);{ze(e,t,s,n)}if(i){i.map((e=>e()));s["s-rc"]=void 0}o();l();{const t=(r=s["s-p"])!=null?r:[];const n=()=>Qe(e);if(t.length===0){n()}else{Promise.all(t).then(n);e.l|=4;t.length=0}}};var ze=(e,t,n,r)=>{try{t=t.render();{e.l&=~16}{e.l|=2}{{{Me(e,t,r)}}}}catch(t){u(t,e.$hostElement$)}return null};var Qe=e=>{const t=e.i.m;const n=e.$hostElement$;const r=X("postUpdate",t);const s=e.t;const l=e.U;{qe(s,"componentDidRender")}if(!(e.l&64)){e.l|=64;{Ge(n)}{qe(s,"componentDidLoad")}r();{e.p(n);if(!l){Ve()}}}else{{qe(s,"componentDidUpdate")}r()}{e.v(n)}{if(e.N){e.N();e.N=void 0}if(e.l&512){A((()=>Ne(e,false)))}e.l&=~(4|512)}};var Ve=t=>{{Ge(S.documentElement)}A((()=>se(g,"appload",{detail:{namespace:e}})))};var qe=(e,t,n)=>{if(e&&e[t]){try{return e[t](n)}catch(e){u(e)}}return void 0};var Ge=e=>{var n;return e.classList.add((n=t.hydratedSelectorName)!=null?n:"hydrated")};var Ie=(e,t)=>o(e).o.get(t);var Ke=(e,t,n,r)=>{const s=o(e);if(!s){throw new Error(`Couldn't find host element for "${r.m}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`)}const l=s.$hostElement$;const i=s.o.get(t);const f=s.l;const a=s.t;n=te(n,r.B[t][0]);const c=Number.isNaN(i)&&Number.isNaN(n);const v=n!==i&&!c;if((!(f&8)||i===void 0)&&v){s.o.set(t,n);if(a){if(r.H&&f&128){const e=r.H[t];if(e){e.map((e=>{try{a[e](n,i,t)}catch(e){u(e,l)}}))}}if((f&(2|16))===2){Ne(s,false)}}}};var Xe=(e,n,r)=>{var s,l;const i=e.prototype;if(n.l&64&&r&1){w.forEach((e=>{Object.defineProperty(i,e,{value(...t){const n=o(this);const r=n.t;if(!r){n.h.then((n=>{const r=n[e];typeof r==="function"&&r.call(n,...t)}))}else{const n=r[e];typeof n==="function"&&n.call(r,...t)}}})}))}if(n.B||(n.H||e.watchers)){if(e.watchers&&!n.H){n.H=e.watchers}const f=Object.entries((s=n.B)!=null?s:{});f.map((([e,[t]])=>{if(t&31||r&2&&t&32){const{get:s,set:l}=Object.getOwnPropertyDescriptor(i,e)||{};if(s)n.B[e][0]|=2048;if(l)n.B[e][0]|=4096;if(r&1||!s){Object.defineProperty(i,e,{get(){{if((n.B[e][0]&2048)===0){return Ie(this,e)}const t=o(this);const r=t?t.t:i;if(!r)return;return r[e]}},configurable:true,enumerable:true})}Object.defineProperty(i,e,{set(s){const i=o(this);if(l){const r=t&32?this[e]:i.$hostElement$[e];if(typeof r==="undefined"&&i.o.get(e)){s=i.o.get(e)}else if(!i.o.get(e)&&r){i.o.set(e,r)}l.apply(this,[te(s,t)]);s=t&32?this[e]:i.$hostElement$[e];Ke(this,e,s,n);return}{if((r&1)===0||(n.B[e][0]&4096)===0){Ke(this,e,s,n);if(r&1&&!i.t){i.h.then((()=>{if(n.B[e][0]&4096&&i.t[e]!==i.o.get(e)){i.t[e]=s}}))}return}const l=()=>{const r=i.t[e];if(!i.o.get(e)&&r){i.o.set(e,r)}i.t[e]=te(s,t);Ke(this,e,i.t[e],n)};if(i.t){l()}else{i.h.then((()=>l()))}}}})}else if(r&1&&t&64){Object.defineProperty(i,e,{value(...t){var n;const r=o(this);return(n=r==null?void 0:r.u)==null?void 0:n.then((()=>{var n;return(n=r.t)==null?void 0:n[e](...t)}))}})}}));if(r&1){const r=new Map;i.attributeChangedCallback=function(e,s,l){k.jmp((()=>{var f;const a=r.get(e);if(this.hasOwnProperty(a)&&t.lazyLoad){l=this[a];delete this[a]}else if(i.hasOwnProperty(a)&&typeof this[a]==="number"&&this[a]==l){return}else if(a==null){const t=o(this);const r=t==null?void 0:t.l;if(r&&!(r&8)&&r&128&&l!==s){const r=t.t;const i=(f=n.H)==null?void 0:f[e];i==null?void 0:i.forEach((t=>{if(r[t]!=null){r[t].call(r,l,s,e)}}))}return}const c=Object.getOwnPropertyDescriptor(i,a);l=l===null&&typeof this[a]==="boolean"?false:l;if(l!==this[a]&&(!c.get||!!c.set)){this[a]=l}}))};e.observedAttributes=Array.from(new Set([...Object.keys((l=n.H)!=null?l:{}),...f.filter((([e,t])=>t[0]&15)).map((([e,t])=>{var s;const l=t[1]||e;r.set(l,e);if(t[0]&512){(s=n.P)==null?void 0:s.push([e,l])}return l}))]))}}return e};var _e=async(e,t,n,r)=>{let s;if((t.l&32)===0){t.l|=32;const r=n.S;if(r){const e=d(n);if(e&&"then"in e){const t=_();s=await e;t()}else{s=e}if(!s){throw new Error(`Constructor for "${n.m}#${t.V}" was not found`)}if(!s.isProxied){{n.H=s.watchers}Xe(s,n,2);s.isProxied=true}const r=X("createInstance",n.m);{t.l|=8}try{new s(t)}catch(e){u(e)}{t.l&=~8}{t.l|=128}r();Je(t.t)}else{s=e.constructor;const n=e.localName;customElements.whenDefined(n).then((()=>t.l|=128))}if(s&&s.style){let e;if(typeof s.style==="string"){e=s.style}const t=ae(n);if(!h.has(t)){const r=X("registerStyles",n.m);ie(t,e,!!(n.l&1));r()}}}const l=t.U;const i=()=>Ne(t,true);if(l&&l["s-rc"]){l["s-rc"].push(i)}else{i()}};var Je=e=>{{qe(e,"connectedCallback")}};var Ye=e=>{if((k.l&1)===0){const t=o(e);const n=t.i;const r=X("connectedCallback",n.m);if(!(t.l&1)){t.l|=1;{if(n.l&(4|8)){Ze(e)}}{let n=e;while(n=n.parentNode||n.host){if(n["s-p"]){Pe(t,t.U=n);break}}}if(n.B){Object.entries(n.B).map((([t,[n]])=>{if(n&31&&e.hasOwnProperty(t)){const n=e[t];delete e[t];e[t]=n}}))}{_e(e,t,n)}}else{rt(e,t,n.q);if(t==null?void 0:t.t){Je(t.t)}else if(t==null?void 0:t.h){t.h.then((()=>Je(t.t)))}}r()}};var Ze=e=>{const t=e["s-cr"]=S.createComment("");t["s-cn"]=true;Ae(e,t,e.firstChild)};var et=e=>{{qe(e,"disconnectedCallback")}};var tt=async e=>{if((k.l&1)===0){const t=o(e);{if(t.G){t.G.map((e=>e()));t.G=void 0}}if(t==null?void 0:t.t){et(t.t)}else if(t==null?void 0:t.h){t.h.then((()=>et(t.t)))}}if(le.has(e)){le.delete(e)}if(e.shadowRoot&&le.has(e.shadowRoot)){le.delete(e.shadowRoot)}};var nt=(e,t={})=>{var n;const r=X();const s=[];const l=t.exclude||[];const i=g.customElements;const f=S.head;const c=f.querySelector("meta[charset]");const u=S.createElement("style");const v=[];let d;let h=true;Object.assign(k,t);k.$=new URL(t.resourcesUrl||"./",S.baseURI).href;let p=false;e.map((e=>{e[1].map((t=>{var n;const r={l:t[0],m:t[1],B:t[2],q:t[3]};if(r.l&4){p=true}{r.B=t[2]}{r.q=t[3]}{r.P=[]}{r.H=(n=t[4])!=null?n:{}}const f=r.m;const c=class extends HTMLElement{constructor(e){super(e);this.hasRegisteredEventListeners=false;e=this;a(e,r);if(r.l&1){{if(!e.shadowRoot){{e.attachShadow({mode:"open",delegatesFocus:!!(r.l&16)})}}else{if(e.shadowRoot.mode!=="open"){throw new Error(`Unable to re-use existing shadow root for ${r.m}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}}}}}connectedCallback(){const e=o(this);if(!this.hasRegisteredEventListeners){this.hasRegisteredEventListeners=true;rt(this,e,r.q)}if(d){clearTimeout(d);d=null}if(h){v.push(this)}else{k.jmp((()=>Ye(this)))}}disconnectedCallback(){k.jmp((()=>tt(this)));k.raf((()=>{var e;const t=o(this);if(((e=t==null?void 0:t.M)==null?void 0:e.R)instanceof Node&&!t.M.R.isConnected){delete t.M.R}}))}componentOnReady(){return o(this).h}};{{K(c.prototype)}}if(r.l&64){c.formAssociated=true}r.S=e[0];if(!l.includes(f)&&!i.get(f)){s.push(f);i.define(f,Xe(c,r,1))}}))}));if(s.length>0){if(p){u.textContent+=y}{u.textContent+=s.sort()+m}if(u.innerHTML.length){u.setAttribute("data-styles","");const e=(n=k.L)!=null?n:N(S);if(e!=null){u.setAttribute("nonce",e)}f.insertBefore(u,c?c.nextSibling:f.firstChild)}}h=false;if(v.length){v.map((e=>e.connectedCallback()))}else{{k.jmp((()=>d=setTimeout(Ve,30)))}}r()};var rt=(e,t,n,r)=>{if(n){n.map((([n,r,s])=>{const l=lt(e,n);const i=st(t,s);const o=it(n);k.ael(l,r,i,o);(t.G=t.G||[]).push((()=>k.rel(l,r,i,o)))}))}};var st=(e,t)=>n=>{var r;try{{if(e.l&256){(r=e.t)==null?void 0:r[t](n)}else{(e.W=e.W||[]).push([t,n])}}}catch(e){u(e)}};var lt=(e,t)=>{if(t&4)return S;if(t&8)return g;if(t&16)return S.body;return e};var it=e=>O?{passive:(e&1)!==0,capture:(e&2)!==0}:(e&2)!==0;var ot=e=>k.L=e;export{$ as H,Z as a,nt as b,re as c,ne as g,J as h,j as p,f as r,ot as s};
3
- //# sourceMappingURL=p-c63974da.js.map