@infineon/infineon-design-system-stencil 31.0.0--canary.1697.223df0ff1431a5398fd1261ed013c9dd2a89e7a0.0 → 31.0.0--canary.1640.0cb387dc208aadd19f988395e2eb1027e7e7f343.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 (290) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +7 -7
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +3 -3
  6. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ifx-chip_3.cjs.entry.js +25 -27
  8. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ifx-modal.cjs.entry.js +8 -8
  10. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +4 -4
  12. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ifx-navbar.cjs.entry.js +3 -3
  14. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ifx-search-bar.cjs.entry.js +5 -5
  16. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +9 -10
  18. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ifx-table.cjs.entry.js +22 -20
  20. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-tabs.cjs.entry.js +6 -6
  22. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  23. package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
  24. package/dist/cjs/loader.cjs.js +1 -1
  25. package/dist/collection/components/accordion/accordion.js +2 -2
  26. package/dist/collection/components/accordion/accordion.js.map +1 -1
  27. package/dist/collection/components/accordion/accordion.stories.js +81 -7
  28. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  29. package/dist/collection/components/accordion/accordionItem.js +10 -10
  30. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  31. package/dist/collection/components/alert/alert.stories.js +45 -12
  32. package/dist/collection/components/alert/alert.stories.js.map +1 -1
  33. package/dist/collection/components/badge/badge.stories.js +28 -7
  34. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  35. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +3 -3
  36. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  37. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -3
  38. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  39. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +87 -13
  40. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -1
  41. package/dist/collection/components/button/button.stories.js +101 -9
  42. package/dist/collection/components/button/button.stories.js.map +1 -1
  43. package/dist/collection/components/card/card.stories.js +85 -4
  44. package/dist/collection/components/card/card.stories.js.map +1 -1
  45. package/dist/collection/components/checkbox/checkbox.stories.js +72 -14
  46. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  47. package/dist/collection/components/chip/chip-item/chip-item.js +4 -4
  48. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  49. package/dist/collection/components/chip/chip.js +15 -15
  50. package/dist/collection/components/chip/chip.js.map +1 -1
  51. package/dist/collection/components/chip/chip.stories.js +21 -26
  52. package/dist/collection/components/chip/chip.stories.js.map +1 -1
  53. package/dist/collection/components/chip/interfaces.js.map +1 -1
  54. package/dist/collection/components/content-switcher/content-switcher.stories.js +65 -3
  55. package/dist/collection/components/content-switcher/content-switcher.stories.js.map +1 -1
  56. package/dist/collection/components/date-picker/date-picker.stories.js +97 -7
  57. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -1
  58. package/dist/collection/components/dropdown/dropdown.stories.js +222 -64
  59. package/dist/collection/components/dropdown/dropdown.stories.js.map +1 -1
  60. package/dist/collection/components/footer/footer.stories.js +31 -1
  61. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  62. package/dist/collection/components/icon/infineonIconStencil.stories.js +7 -2
  63. package/dist/collection/components/icon/infineonIconStencil.stories.js.map +1 -1
  64. package/dist/collection/components/icon-button/icon-button.stories.js +61 -5
  65. package/dist/collection/components/icon-button/icon-button.stories.js.map +1 -1
  66. package/dist/collection/components/link/link.stories.js +53 -4
  67. package/dist/collection/components/link/link.stories.js.map +1 -1
  68. package/dist/collection/components/modal/modal.js +10 -10
  69. package/dist/collection/components/modal/modal.js.map +1 -1
  70. package/dist/collection/components/modal/modal.stories.js +96 -19
  71. package/dist/collection/components/modal/modal.stories.js.map +1 -1
  72. package/dist/collection/components/navigation/navbar/navbar.js +4 -4
  73. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  74. package/dist/collection/components/navigation/navbar/navbar.stories.js +176 -12
  75. package/dist/collection/components/navigation/navbar/navbar.stories.js.map +1 -1
  76. package/dist/collection/components/navigation/sidebar/sidebar-item.js +11 -32
  77. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  78. package/dist/collection/components/navigation/sidebar/sidebar.stories.js +184 -19
  79. package/dist/collection/components/navigation/sidebar/sidebar.stories.js.map +1 -1
  80. package/dist/collection/components/notification/notification.stories.js +55 -8
  81. package/dist/collection/components/notification/notification.stories.js.map +1 -1
  82. package/dist/collection/components/number-indicator/number-indicator.stories.js +19 -0
  83. package/dist/collection/components/number-indicator/number-indicator.stories.js.map +1 -1
  84. package/dist/collection/components/pagination/pagination.js +8 -57
  85. package/dist/collection/components/pagination/pagination.js.map +1 -1
  86. package/dist/collection/components/pagination/pagination.stories.js +19 -16
  87. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  88. package/dist/collection/components/progress-bar/progress-bar.stories.js +31 -8
  89. package/dist/collection/components/progress-bar/progress-bar.stories.js.map +1 -1
  90. package/dist/collection/components/radio-button/radio-button.stories.js +66 -13
  91. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  92. package/dist/collection/components/search-bar/search-bar.js +6 -6
  93. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  94. package/dist/collection/components/search-bar/search-bar.stories.js +58 -9
  95. package/dist/collection/components/search-bar/search-bar.stories.js.map +1 -1
  96. package/dist/collection/components/search-field/search-field.stories.js +54 -8
  97. package/dist/collection/components/search-field/search-field.stories.js.map +1 -1
  98. package/dist/collection/components/segmented-control/segmented-control.stories.js +1 -10
  99. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  100. package/dist/collection/components/select/multi-select/multiselect.js +5 -5
  101. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  102. package/dist/collection/components/select/multi-select/multiselect.stories.js +131 -5
  103. package/dist/collection/components/select/multi-select/multiselect.stories.js.map +1 -1
  104. package/dist/collection/components/select/single-select/select.stories.js +83 -26
  105. package/dist/collection/components/select/single-select/select.stories.js.map +1 -1
  106. package/dist/collection/components/slider/slider.stories.js +97 -13
  107. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  108. package/dist/collection/components/spinner/spinner.stories.js +34 -2
  109. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  110. package/dist/collection/components/status/status.stories.js +25 -1
  111. package/dist/collection/components/status/status.stories.js.map +1 -1
  112. package/dist/collection/components/stepper/stepper.stories.js +54 -25
  113. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  114. package/dist/collection/components/switch/switch.stories.js +51 -4
  115. package/dist/collection/components/switch/switch.stories.js.map +1 -1
  116. package/dist/collection/components/table-advanced-version/table.js +23 -21
  117. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  118. package/dist/collection/components/table-advanced-version/table.stories.js +124 -39
  119. package/dist/collection/components/table-advanced-version/table.stories.js.map +1 -1
  120. package/dist/collection/components/table-basic-version/table.stories.js +31 -4
  121. package/dist/collection/components/table-basic-version/table.stories.js.map +1 -1
  122. package/dist/collection/components/tabs/tabs.js +7 -7
  123. package/dist/collection/components/tabs/tabs.js.map +1 -1
  124. package/dist/collection/components/tabs/tabs.stories.js +104 -29
  125. package/dist/collection/components/tabs/tabs.stories.js.map +1 -1
  126. package/dist/collection/components/tag/tag.stories.js +18 -0
  127. package/dist/collection/components/tag/tag.stories.js.map +1 -1
  128. package/dist/collection/components/text-field/text-field.stories.js +116 -13
  129. package/dist/collection/components/text-field/text-field.stories.js.map +1 -1
  130. package/dist/collection/components/textarea/textarea.stories.js +1 -3
  131. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  132. package/dist/collection/components/tooltip/tooltip.stories.js +48 -4
  133. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  134. package/dist/components/ifx-accordion-item.js +1 -1
  135. package/dist/components/ifx-accordion.js +1 -1
  136. package/dist/components/ifx-breadcrumb-item-label.js +2 -2
  137. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  138. package/dist/components/ifx-breadcrumb.js +3 -3
  139. package/dist/components/ifx-breadcrumb.js.map +1 -1
  140. package/dist/components/ifx-chip-item.js +1 -1
  141. package/dist/components/ifx-chip.js +1 -1
  142. package/dist/components/ifx-faq.js +2 -2
  143. package/dist/components/ifx-modal.js +8 -8
  144. package/dist/components/ifx-modal.js.map +1 -1
  145. package/dist/components/ifx-multiselect.js +1 -1
  146. package/dist/components/ifx-navbar.js +4 -4
  147. package/dist/components/ifx-navbar.js.map +1 -1
  148. package/dist/components/ifx-pagination.js +1 -1
  149. package/dist/components/ifx-search-bar.js +5 -5
  150. package/dist/components/ifx-search-bar.js.map +1 -1
  151. package/dist/components/ifx-set-filter.js +1 -1
  152. package/dist/components/ifx-sidebar-item.js +11 -13
  153. package/dist/components/ifx-sidebar-item.js.map +1 -1
  154. package/dist/components/ifx-table.js +26 -24
  155. package/dist/components/ifx-table.js.map +1 -1
  156. package/dist/components/ifx-tabs.js +6 -6
  157. package/dist/components/ifx-tabs.js.map +1 -1
  158. package/dist/components/{p-654ff7d8.js → p-120f0d27.js} +3 -3
  159. package/dist/components/{p-654ff7d8.js.map → p-120f0d27.js.map} +1 -1
  160. package/dist/components/{p-a7e5035e.js → p-62a4b616.js} +9 -12
  161. package/dist/components/p-62a4b616.js.map +1 -0
  162. package/dist/components/{p-e57d6c00.js → p-6a284649.js} +5 -5
  163. package/dist/components/p-6a284649.js.map +1 -0
  164. package/dist/components/{p-0fce434b.js → p-7c1f2252.js} +15 -15
  165. package/dist/components/p-7c1f2252.js.map +1 -0
  166. package/dist/components/{p-ff48962a.js → p-a51cb7b6.js} +8 -8
  167. package/dist/components/{p-ff48962a.js.map → p-a51cb7b6.js.map} +1 -1
  168. package/dist/components/{p-d3904b2f.js → p-bb48fe64.js} +5 -5
  169. package/dist/components/p-bb48fe64.js.map +1 -0
  170. package/dist/esm/ifx-accordion_2.entry.js +7 -7
  171. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  172. package/dist/esm/ifx-breadcrumb-item-label.entry.js +1 -1
  173. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  174. package/dist/esm/ifx-breadcrumb.entry.js +3 -3
  175. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  176. package/dist/esm/ifx-chip_3.entry.js +25 -27
  177. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  178. package/dist/esm/ifx-modal.entry.js +8 -8
  179. package/dist/esm/ifx-modal.entry.js.map +1 -1
  180. package/dist/esm/ifx-multiselect_2.entry.js +4 -4
  181. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  182. package/dist/esm/ifx-navbar.entry.js +3 -3
  183. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  184. package/dist/esm/ifx-search-bar.entry.js +5 -5
  185. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  186. package/dist/esm/ifx-sidebar-item.entry.js +9 -10
  187. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  188. package/dist/esm/ifx-table.entry.js +22 -20
  189. package/dist/esm/ifx-table.entry.js.map +1 -1
  190. package/dist/esm/ifx-tabs.entry.js +6 -6
  191. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  192. package/dist/esm/infineon-design-system-stencil.js +1 -1
  193. package/dist/esm/loader.js +1 -1
  194. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  195. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  196. package/dist/infineon-design-system-stencil/p-0a03645f.entry.js +2 -0
  197. package/dist/infineon-design-system-stencil/p-0a03645f.entry.js.map +1 -0
  198. package/dist/infineon-design-system-stencil/p-0b90ce9a.entry.js +2 -0
  199. package/dist/infineon-design-system-stencil/p-0b90ce9a.entry.js.map +1 -0
  200. package/dist/infineon-design-system-stencil/p-1da58025.entry.js +2 -0
  201. package/dist/infineon-design-system-stencil/p-1da58025.entry.js.map +1 -0
  202. package/dist/infineon-design-system-stencil/p-3e68969c.entry.js +2 -0
  203. package/dist/infineon-design-system-stencil/{p-500bc0ed.entry.js.map → p-3e68969c.entry.js.map} +1 -1
  204. package/dist/infineon-design-system-stencil/{p-258c4e35.entry.js → p-68dd9fa2.entry.js} +2 -2
  205. package/dist/infineon-design-system-stencil/p-68dd9fa2.entry.js.map +1 -0
  206. package/dist/infineon-design-system-stencil/p-75d5418a.entry.js +2 -0
  207. package/dist/infineon-design-system-stencil/p-75d5418a.entry.js.map +1 -0
  208. package/dist/infineon-design-system-stencil/p-88f484ee.entry.js +2 -0
  209. package/dist/infineon-design-system-stencil/p-88f484ee.entry.js.map +1 -0
  210. package/dist/infineon-design-system-stencil/{p-1f004047.entry.js → p-8953e0ef.entry.js} +2 -2
  211. package/dist/infineon-design-system-stencil/p-8953e0ef.entry.js.map +1 -0
  212. package/dist/infineon-design-system-stencil/{p-7cc1beed.entry.js → p-aebfd7f8.entry.js} +2 -2
  213. package/dist/infineon-design-system-stencil/p-aebfd7f8.entry.js.map +1 -0
  214. package/dist/infineon-design-system-stencil/p-e67e7cbc.entry.js +2 -0
  215. package/dist/infineon-design-system-stencil/p-e67e7cbc.entry.js.map +1 -0
  216. package/dist/infineon-design-system-stencil/{p-6c18926e.entry.js → p-fd0474f3.entry.js} +2 -2
  217. package/dist/infineon-design-system-stencil/p-fd0474f3.entry.js.map +1 -0
  218. package/dist/types/components/accordion/accordion.stories.d.ts +67 -1
  219. package/dist/types/components/accordion/accordionItem.d.ts +3 -3
  220. package/dist/types/components/alert/alert.stories.d.ts +38 -11
  221. package/dist/types/components/badge/badge.stories.d.ts +23 -3
  222. package/dist/types/components/breadcrumb/breadcrumb-item-label.d.ts +1 -1
  223. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +83 -1
  224. package/dist/types/components/button/button.stories.d.ts +92 -16
  225. package/dist/types/components/card/card.stories.d.ts +95 -1
  226. package/dist/types/components/checkbox/checkbox.stories.d.ts +65 -10
  227. package/dist/types/components/chip/chip-item/chip-item.d.ts +1 -1
  228. package/dist/types/components/chip/chip.d.ts +1 -1
  229. package/dist/types/components/chip/chip.stories.d.ts +11 -4
  230. package/dist/types/components/chip/interfaces.d.ts +1 -1
  231. package/dist/types/components/content-switcher/content-switcher.stories.d.ts +66 -0
  232. package/dist/types/components/date-picker/date-picker.stories.d.ts +89 -2
  233. package/dist/types/components/dropdown/dropdown.stories.d.ts +90 -33
  234. package/dist/types/components/footer/footer.stories.d.ts +26 -0
  235. package/dist/types/components/icon/infineonIconStencil.stories.d.ts +5 -0
  236. package/dist/types/components/icon-button/icon-button.stories.d.ts +56 -8
  237. package/dist/types/components/link/link.stories.d.ts +49 -6
  238. package/dist/types/components/modal/modal.d.ts +2 -2
  239. package/dist/types/components/modal/modal.stories.d.ts +77 -3
  240. package/dist/types/components/navigation/navbar/navbar.stories.d.ts +222 -6
  241. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +2 -3
  242. package/dist/types/components/navigation/sidebar/sidebar.stories.d.ts +161 -7
  243. package/dist/types/components/notification/notification.stories.d.ts +46 -2
  244. package/dist/types/components/number-indicator/number-indicator.stories.d.ts +19 -0
  245. package/dist/types/components/pagination/pagination.d.ts +1 -4
  246. package/dist/types/components/pagination/pagination.stories.d.ts +12 -8
  247. package/dist/types/components/progress-bar/progress-bar.stories.d.ts +25 -4
  248. package/dist/types/components/radio-button/radio-button.stories.d.ts +59 -8
  249. package/dist/types/components/search-bar/search-bar.d.ts +1 -1
  250. package/dist/types/components/search-bar/search-bar.stories.d.ts +60 -3
  251. package/dist/types/components/search-field/search-field.stories.d.ts +45 -6
  252. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +0 -3
  253. package/dist/types/components/select/multi-select/multiselect.d.ts +1 -1
  254. package/dist/types/components/select/multi-select/multiselect.stories.d.ts +125 -0
  255. package/dist/types/components/select/single-select/select.stories.d.ts +67 -24
  256. package/dist/types/components/slider/slider.stories.d.ts +110 -0
  257. package/dist/types/components/spinner/spinner.stories.d.ts +32 -0
  258. package/dist/types/components/status/status.stories.d.ts +24 -2
  259. package/dist/types/components/stepper/stepper.stories.d.ts +30 -6
  260. package/dist/types/components/switch/switch.stories.d.ts +47 -1
  261. package/dist/types/components/table-advanced-version/table.stories.d.ts +50 -11
  262. package/dist/types/components/table-basic-version/table.stories.d.ts +21 -1
  263. package/dist/types/components/tabs/tabs.d.ts +1 -1
  264. package/dist/types/components/tabs/tabs.stories.d.ts +88 -9
  265. package/dist/types/components/tag/tag.stories.d.ts +20 -0
  266. package/dist/types/components/text-field/text-field.stories.d.ts +106 -10
  267. package/dist/types/components/tooltip/tooltip.stories.d.ts +41 -6
  268. package/dist/types/components.d.ts +20 -28
  269. package/package.json +3 -2
  270. package/dist/components/p-0fce434b.js.map +0 -1
  271. package/dist/components/p-a7e5035e.js.map +0 -1
  272. package/dist/components/p-d3904b2f.js.map +0 -1
  273. package/dist/components/p-e57d6c00.js.map +0 -1
  274. package/dist/infineon-design-system-stencil/p-1f004047.entry.js.map +0 -1
  275. package/dist/infineon-design-system-stencil/p-258c4e35.entry.js.map +0 -1
  276. package/dist/infineon-design-system-stencil/p-500bc0ed.entry.js +0 -2
  277. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js +0 -2
  278. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js.map +0 -1
  279. package/dist/infineon-design-system-stencil/p-6c18926e.entry.js.map +0 -1
  280. package/dist/infineon-design-system-stencil/p-77a8fc5e.entry.js +0 -2
  281. package/dist/infineon-design-system-stencil/p-77a8fc5e.entry.js.map +0 -1
  282. package/dist/infineon-design-system-stencil/p-7cc1beed.entry.js.map +0 -1
  283. package/dist/infineon-design-system-stencil/p-98c50956.entry.js +0 -2
  284. package/dist/infineon-design-system-stencil/p-98c50956.entry.js.map +0 -1
  285. package/dist/infineon-design-system-stencil/p-c6ff49d7.entry.js +0 -2
  286. package/dist/infineon-design-system-stencil/p-c6ff49d7.entry.js.map +0 -1
  287. package/dist/infineon-design-system-stencil/p-d61ab729.entry.js +0 -2
  288. package/dist/infineon-design-system-stencil/p-d61ab729.entry.js.map +0 -1
  289. package/dist/infineon-design-system-stencil/p-f63ce1bc.entry.js +0 -2
  290. package/dist/infineon-design-system-stencil/p-f63ce1bc.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"ifx-navbar.entry.cjs.js","mappings":"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","names":["h"],"sources":["src/components/navigation/navbar/navbar.scss?tag=ifx-navbar&encapsulation=shadow","src/components/navigation/navbar/navbar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n:host {\n width: 100%;\n display: block;\n}\n\n\n.navbar__wrapper {\n font-family: var(--ifx-font-family);\n height: 63px;\n position: sticky;\n //overflow: hidden;\n z-index: 1030;\n border-bottom: 1px solid #EEEDED;\n\n &.fixed {\n border-bottom: none;\n }\n\n // border-bottom: 1px solid #EEEDED; //when fixed is false\n}\n\n.navbar__main-container {\n position: absolute;\n top: 0;\n width: 100%;\n //overflow: hidden;\n transition: all 1s;\n z-index: 1020;\n\n &.fixed {\n position: fixed;\n\n & .navbar__container {\n border-bottom: 1px solid #EEEDED;\n }\n }\n\n &.show {\n height: 100vh;\n bottom: 0;\n background-color: tokens.$ifxColorOverlayDark;\n transition: 1s;\n z-index: 1;\n }\n}\n\n.navbar__sidebar {\n box-sizing: border-box;\n position: fixed;\n right: -100%;\n top: 64px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n // padding: 32px;\n width: 375px;\n height: calc(100vh - 64px);\n background-color: tokens.$ifxColorBaseWhite;\n transition: right 1s;\n z-index: 1030;\n\n &.show {\n right: 0;\n transition: right 1s;\n }\n\n & .navbar__sidebar-top-row { \n display: flex;\n padding: var(--borderRadius-none, 0px) var(--space-300, 24px) 30px var(--space-300, 24px);\n flex-direction: column;\n align-items: flex-start;\n gap: var(--space-200, 16px);\n flex: 1 0 0;\n align-self: stretch;\n\n overflow-y: auto;\n\n & .navbar__sidebar-top-row-wrapper { \n display: flex;\n padding-top: var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n gap: 16px;\n\n &.expand { \n align-items: initial;\n }\n\n & .navbar__sidebar-top-row-item { \n display: flex;\n padding: var(--space-200, 0px) var(--space-50, 4px) var(--space-200, 0px) 0px;\n align-items: center;\n gap: var(--space-100, 8px);\n align-self: stretch;\n justify-content: space-between;\n\n & .navbar__sidebar-top-row-item-icon-wrapper { \n & ifx-icon { \n vertical-align: middle;\n }\n }\n \n \n &:hover { \n cursor: pointer;\n }\n \n & .navbar__sidebar-top-row-item-label { \n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n \n }\n }\n\n }\n\n & .navbar__sidebar-bottom-row { \n //display: flex;\n display: none;\n padding: var(--space-150, 12px) var(--space-300, 24px) var(--space-150, 12px) var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n background: var(--color-engineering-100, #F7F7F7);\n border-top: 1px solid var(--color-engineering-200, #EEEDED);\n gap: 10px;\n\n max-height: 160px;\n overflow-y: auto;\n\n &.show { \n display: flex;\n }\n \n\n & .navbar__sidebar-bottom-row-item { \n display: flex;\n height: 40px;\n padding-right: var(--space-50, 4px);\n align-items: center;\n gap: var(--space-100, 8px);\n flex: 1 0 0;\n \n & .navbar__sidebar-bottom-row-item-label {\n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n\n & .navbar__sidebar-bottom-row-item-icon-wrapper { \n display: flex;\n align-items: center;\n }\n }\n\n }\n\n\n & .navbar__sidebar-content-products,\n & .navbar__sidebar-content-main {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 24px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n\n & .navbar__sidebar-content-products-header,\n & .navbar__sidebar-content-about-header {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n color: #BFBBBB;\n\n & span {\n color: tokens.$ifxColorBaseBlack;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n }\n }\n\n & .navbar__sidebar-content-products-menu,\n & .navbar__sidebar-content-main-menu {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 100%;\n\n & .navbar__sidebar-content-products-menu-item,\n & .navbar__sidebar-content-main-menu-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n text-decoration: none;\n font-style: normal;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n }\n }\n\n & .navbar__sidebar-content-main-menu-item {\n color: tokens.$ifxColorEngineering300;\n\n & a {\n font-style: normal;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 0;\n flex-grow: 1;\n }\n }\n }\n\n & .navbar__sidebar-content-main-menu {\n align-items: normal;\n }\n }\n}\n\n.navbar__container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 40px;\n gap: 16px;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family);\n\n &.expanded { \n justify-content: initial;\n }\n\n // &.fixed { \n // border-bottom: 1px solid #EEEDED; //when fixed is true\n // }\n\n & .navbar__container-search-field-wrapper { \n display: none;\n\n &.show { \n display: flex;\n }\n }\n\n & .navbar__container-left {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide {\n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-item-search-bar { \n flex: 1;\n }\n }\n }\n \n }\n\n & .navbar__container-left-logo {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n & h6 {\n position: relative;\n margin: 0;\n padding: 0;\n font-style: normal;\n font-weight: 600;\n font-size: 16px;\n //line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n\n & .navbar__container-left-logo-default {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 12px 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & svg {\n width: 91px;\n height: 40px;\n flex: none;\n order: 0;\n flex-grow: 0;\n vertical-align: bottom;\n }\n }\n\n & .navbar__container-left-logo-divider {\n width: 1px;\n height: 32px;\n background: tokens.$ifxColorEngineering200;\n flex: none;\n order: 2;\n flex-grow: 0;\n }\n }\n\n & .navbar__container-left-content {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-group {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-item-search-bar {\n display: flex; //none\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n flex: none;\n order: 5;\n flex-grow: 0;\n //width: 256px;\n //height: 40px;\n }\n\n & .navbar__container-left-content-navigation-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n display: flex;\n align-items: center;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n }\n }\n }\n }\n\n & .navbar__container-right {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n padding: 0;\n gap: 8px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar { \n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper { \n flex: 1;\n }\n }\n }\n }\n \n }\n\n & .navbar__burger-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 4px 0px 4px 16px;\n border-left: 1px solid tokens.$ifxColorEngineering300;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 41px;\n height: 40px;\n\n &.hide { \n display: none;\n }\n\n & .navbar__burger-icon {\n display: flex;\n align-items: center;\n\n &:hover { \n cursor: pointer;\n }\n\n &.close {\n display: none;\n }\n }\n\n & .navbar__cross-icon {\n display: none;\n align-items: center;\n\n &.show {\n display: flex;\n\n &:hover { \n cursor: pointer;\n }\n }\n }\n }\n\n & .navbar__container-right-content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-group {\n position: relative;\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item,\n & .navbar__container-right-content-navigation-item-profile,\n & .navbar__container-right-content-navigation-item-search-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n //width: 24px;\n //height: 24px;\n //max-width: 200px;\n\n &.isOpen { \n position: absolute;\n top: 10px;\n }\n }\n\n & .navbar__container-right-content-navigation-item-navigation-profile {\n position: relative;\n width: 24px;\n height: 24px;\n background: tokens.$ifxColorOcean500;\n border-radius: 100px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n position: absolute;\n width: 22px;\n height: 20px;\n left: calc(50% - 22px/2);\n top: calc(50% - 20px/2);\n font-style: normal;\n font-weight: 600;\n font-size: 14px;\n line-height: 20px;\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n & .navbar__container-right-content-navigation-item-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n & a {\n font-style: normal;\n font-weight: 400;\n font-size: 14px;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n display: flex;\n align-items: center;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n }\n }\n }\n }\n}\n\n//burger icon exist, and left container is gone\n@media screen and (max-width: 800px) {\n .navbar__container {\n padding: 0px 16px;\n height: 64px;\n gap: initial;\n\n &.expanded { \n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n display: none;\n }\n\n & .navbar__container-left-logo {\n & .navbar__container-left-logo-divider {\n display: none;\n }\n }\n }\n\n & .navbar__container-right {\n flex: 1;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n\n // &.show {\n // width: 100%;\n // }\n\n }\n}\n\n@media screen and (max-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 100%; // 100% of viewport width\n }\n }\n}\n\n@media screen and (min-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 50%; // 100% of viewport width\n }\n }\n}\n\n//burger icon disappears\n@media screen and (min-width: 800px) {\n .navbar__wrapper {\n height: 63px;\n }\n\n .navbar__container {\n padding: 0px 16px;\n height: 63px;\n gap: initial;\n\n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n &.show { \n right: -100%;\n }\n }\n\n}\n\n//left container appears\n@media screen and (min-width: 1024px) {\n .navbar__wrapper {\n height: 72px;\n }\n\n .navbar__container {\n padding: 0px 24px;\n height: 72px;\n\n & .navbar__container-left {\n gap: 12px;\n display: flex;\n\n & .navbar__container-left-content {\n display: flex;\n }\n\n & .navbar__container-left-logo-default {\n & svg {\n width: 72.8px;\n height: 32px;\n }\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n}\n\n@media screen and (min-width: 1200px) {\n .navbar__wrapper {\n height: 80px\n }\n\n .navbar__container {\n padding: 0px 32px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: inherit;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}\n\n@media screen and (min-width: 1440px) {\n .navbar__wrapper {\n height: 80px;\n }\n\n .navbar__container {\n padding: 0px 40px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: center;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}","import { Component, h, Element, State, Prop, Listen, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-navbar',\n styleUrl: 'navbar.scss',\n shadow: true,\n})\n\nexport class Navbar {\n @Element() el;\n @State() main: boolean = true\n @State() products: boolean = false\n @State() applications: boolean = false\n @State() design: boolean = false\n @State() support: boolean = false\n @State() about: boolean = false\n @Prop() applicationName: string = \"\"\n @State() hasLeftMenuItems: boolean = true;\n @Prop() fixed: boolean = true;\n @Prop() showLogoAndAppname: boolean = true;\n @State() searchBarIsOpen: string;\n @Prop() logoHref: string = \"\";\n @State() internalLogoHref: string = \"\"\n @Prop() logoHrefTarget: string = '_self';\n @State() internalLogoHrefTarget: string = '_self';\n @Event() ifxNavbarMobileMenuIsOpen: EventEmitter;\n\n private addEventListenersToHandleCustomFocusState() {\n const element = this.el.shadowRoot.firstChild;\n\n if (!element) {\n console.error('element not found');\n return;\n }\n element.tabIndex = -1;\n\n // Select all a elements in the navbar and set their tabIndex to -1 to make them non-focusable\n const aElements = element.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n\n const slot = element.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes();\n for (let i = 0; i < assignedNodes.length; i++) {\n const node = assignedNodes[i] as HTMLElement;\n if (node.nodeName === 'IFX-NAVBAR-ITEM') {\n const navbarItem = node as HTMLIfxNavbarItemElement;\n\n // Get all navigation items\n const aElements = navbarItem?.shadowRoot.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n }\n }\n }\n }\n\n @Listen('ifxNavItem') \n clearFirstLayerMenu(event: CustomEvent) { \n if(event.detail.action === 'hideFirstLayer') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'hideSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('remove', 'add')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'returnToSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('add', 'remove')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'show') { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'return') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n }\n\n getWrappers() {\n const searchBarRightWrapper = this.el.shadowRoot.querySelector('.navbar__container-right-content-navigation-item-search-bar-icon-wrapper')\n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n const rightSideSlot = searchBarRightWrapper.querySelector('slot');\n const leftSideSlot = searchBarLeftWrapper.querySelector('slot');\n const rightAssignedNodes = rightSideSlot.assignedNodes();\n const leftAssignedNodes = leftSideSlot.assignedNodes();\n const navbarProfile = this.el.querySelector('ifx-navbar-profile');\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]');\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]');\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n \n return {rightSideSlot, leftSideSlot, rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper};\n }\n\n hideNavItems() {\n const { rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n \n if(rightAssignedNodes.length !== 0) { \n this.searchBarIsOpen = 'right'\n } else if(leftAssignedNodes.length !== 0) {\n this.searchBarIsOpen = 'left'\n }\n\n if(navbarProfile) { \n navbarProfile.hideComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].hideComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].hideComponent()\n }\n } else { \n rightMenuItems[r].hideComponent()\n }\n }\n }\n\n showNavItems() {\n const { navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n this.searchBarIsOpen = undefined;\n \n if(navbarProfile) {\n navbarProfile.showComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].showComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].showComponent()\n }\n } else { \n rightMenuItems[r].showComponent()\n }\n }\n }\n \n \n @Listen('ifxSearchBarIsOpen')\n handleSearchBarToggle(event: CustomEvent) {\n \n if(event.detail) { \n this.hideNavItems();\n } else if(!event.detail) {\n this.showNavItems();\n }\n }\n\n toggleClass(el, className) {\n el.classList.toggle(className)\n }\n\n handleSidebar(el) {\n const sidebarIconWrapper = el.currentTarget.closest('.navbar__burger-icon-wrapper');\n const sidebarIconOpen = sidebarIconWrapper.querySelector('.navbar__burger-icon')\n const sidebarIconClose = sidebarIconWrapper.querySelector('.navbar__cross-icon')\n const mainContainer = el.currentTarget.closest('.navbar__main-container');\n const navbarWrapper = el.currentTarget.closest('.navbar__wrapper')\n const sidebarWrapper = navbarWrapper.querySelector('.navbar__sidebar');\n this.toggleClass(navbarWrapper, 'show')\n this.toggleClass(mainContainer, 'show')\n this.toggleClass(sidebarWrapper, 'show')\n this.toggleClass(sidebarIconOpen, 'close')\n this.toggleClass(sidebarIconClose, 'show')\n\n if(sidebarIconClose.classList.contains('show')) { \n this.handleBodyScroll('hide')\n } else { \n this.handleBodyScroll('show')\n }\n }\n\n handleBodyScroll(action) { \n const body = this.el.closest('body')\n if(!this.fixed && action === 'hide') { \n body.style.overflow = 'hidden'\n } else if(action === 'show') { \n body.style.overflow = 'visible'\n }\n }\n\n handleDropdownMenu(el) {\n const dropdownWrapper = el.currentTarget.querySelector('.navbar__dropdown-wrapper')\n dropdownWrapper.classList.toggle('open')\n const iconWrapper = el.currentTarget.querySelector('a')\n iconWrapper.classList.toggle('open')\n }\n\n async setItemMenuPosition() { \n const navbarItems = this.el.querySelectorAll('ifx-navbar-item')\n const navbarProfile = this.el.querySelector('ifx-navbar-profile')\n\n if(navbarProfile) {\n const itemChildren = navbarProfile.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n \n if(navbarItems.length !== 0) { \n for(let i = 0; i < navbarItems.length; i++) { \n const item = navbarItems[i];\n const itemChildren = item.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n const hasNestedItems = await item.setItemSideSpecifications()\n if(hasNestedItems) { \n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n }\n }\n }\n\n setMenuItemChildrenPosition(item) {\n const itemChildren = item.querySelectorAll('ifx-navbar-item');\n if (itemChildren.length !== 0) {\n itemChildren.forEach(subItem => { \n subItem.setMenuItemPosition()\n this.setMenuItemChildrenPosition(subItem)\n })\n }\n }\n\n getMediaQueryList() { \n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n return mediaQueryList;\n }\n\n componentDidLoad() {\n this.setItemMenuPosition()\n this.addEventListenersToHandleCustomFocusState();\n\n const mediaQueryList = this.getMediaQueryList()\n\n if (mediaQueryList.matches) {\n this.moveNavItemsToSidebar();\n }\n\n }\n\n handleMobileMenuBottom(e) { \n const mobileMenuBottomWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-bottom-row')\n const slotElement = e.target;\n const nodes = slotElement.assignedNodes();\n if(nodes.length > 0) { \n mobileMenuBottomWrapper.classList.add('show')\n } else { \n mobileMenuBottomWrapper.classList.remove('show')\n }\n }\n\n handleLogoHrefAndTarget(){\n if(this.logoHref.trim() === \"\") {\n this.internalLogoHref = undefined;\n }else{\n this.internalLogoHref = this.logoHref;\n }\n\n if(['_self', '_blank', '_parent'].includes(this.logoHrefTarget.trim())){\n this.internalLogoHrefTarget = this.logoHrefTarget;\n }else{\n this.internalLogoHrefTarget = '_self';\n }\n }\n\n \n componentWillLoad() {\n this.RemoveSpaceOnStorybookSnippet()\n const dropdownMenu = this.el.querySelector('ifx-navbar-menu')\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n if (!leftMenuItems.length && !dropdownMenu) {\n this.hasLeftMenuItems = false;\n }\n this.handleLogoHrefAndTarget();\n\n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n mediaQueryList.addEventListener('change', (e) => this.moveNavItemsToSidebar(e));\n }\n\n \n\n getSearchBarLeftWrapper() { \n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n return searchBarLeftWrapper;\n }\n\n getMobileMenuTop() { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-top\"]');\n return leftMenuItems;\n }\n\n getMobileMenuBottom() { \n const rightMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-bottom\"]');\n return rightMenuItems;\n }\n\n handleBurgerIcon() { \n const leftMenuItems = this.getMobileMenuTop()\n const rightMenuItems = this.getMobileMenuBottom()\n if(!leftMenuItems.length && !rightMenuItems.length) { \n const burgerIconWrapper = this.el.shadowRoot.querySelector('.navbar__burger-icon-wrapper')\n this.toggleClass(burgerIconWrapper, 'hide')\n }\n }\n \n moveNavItemsToSidebar(e?: MediaQueryListEvent) {\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n const mediaQueryList = this.getMediaQueryList();\n const matches = e ? e.matches : mediaQueryList.matches;\n \n if (matches) {\n /* The viewport is 800px wide or less */\n topRowWrapper.classList.add('expand')\n \n //hide body scroll if sidebar was opened\n const crossIcon = this.el.shadowRoot.querySelector('.navbar__cross-icon')\n if(crossIcon.classList.contains('show')) { \n this.handleBodyScroll('hide')\n }\n \n //move search bar to right-side\n const searchBarLeft = this.el.querySelector('[slot=\"search-bar-left\"]')\n if(searchBarLeft) { \n if(this.searchBarIsOpen) { \n searchBarLeft.onNavbarMobile()\n }\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n searchBarLeftWrapper.classList.add('initial')\n searchBarLeft.setAttribute('slot', 'search-bar-right')\n }\n \n //left-side\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'mobile-menu-top')\n leftMenuItems[i].moveChildComponentsIntoSubLayerMenu()\n if(this.searchBarIsOpen) { \n leftMenuItems[i].showComponent()\n }\n }\n \n //right-side\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]')\n for(let i = 0; i < rightMenuItems.length; i++) { \n if(rightMenuItems[i].tagName.toUpperCase() === 'IFX-NAVBAR-PROFILE') { \n rightMenuItems[i].showLabel = false;\n } else { \n if(rightMenuItems[i].hideOnMobile) { \n rightMenuItems[i].setAttribute('slot', 'mobile-menu-bottom')\n \n rightMenuItems[i].toggleChildren('add')\n \n rightMenuItems[i].showLabel = true;\n if(this.searchBarIsOpen) { \n rightMenuItems[i].showComponent()\n }\n }\n }\n }\n \n this.handleBurgerIcon()\n\n } else {\n /* The viewport is more than 800px wide */\n topRowWrapper.classList.remove('expand')\n\n //show body scroll \n this.handleBodyScroll('show')\n\n //return search bar to its original position\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n const leftIsInitial = searchBarLeftWrapper.classList.contains('initial')\n const searchBarRight = this.el.querySelector('[slot=\"search-bar-right\"]')\n if(leftIsInitial) { \n if(this.searchBarIsOpen) { \n searchBarRight.onNavbarMobile()\n }\n if(searchBarRight) { \n searchBarRight.setAttribute('slot', 'search-bar-left')\n }\n }\n\n //left-side\n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'left-item')\n leftMenuItems[i].moveChildComponentsBackIntoNavbar()\n }\n\n //right-side\n const rightMenuItems = this.getMobileMenuBottom()\n const navbarProfileItem = this.el.querySelector('ifx-navbar-profile')\n if(navbarProfileItem) { \n const showProfileItemLabel = navbarProfileItem.getAttribute('show-label');\n navbarProfileItem.setAttribute('show-label', showProfileItemLabel)\n }\n\n for(let i = 0; i < rightMenuItems.length; i++) { \n rightMenuItems[i].setAttribute('slot', 'right-item')\n\n rightMenuItems[i].toggleChildren('remove')\n \n const showLabel = rightMenuItems[i].getAttribute('show-label');\n rightMenuItems[i].setAttribute('show-label', showLabel)\n if(this.searchBarIsOpen) { \n rightMenuItems[i].hideComponent()\n }\n }\n }\n }\n\n RemoveSpaceOnStorybookSnippet() { \n let parent = this.el.parentElement;\n if(parent) { \n let storybookWrapper = parent.closest('.css-xzp052');\n if(storybookWrapper) { \n storybookWrapper.style.overflow = 'visible'\n }\n }\n }\n\n\n \n render() {\n return (\n <div aria-label='a navigation navbar' class={`navbar__wrapper ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__main-container ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__container ${this.searchBarIsOpen ? \"expanded\" : \"\"}`}>\n <div class={`navbar__container-left ${this.searchBarIsOpen === 'left' ? \"expand\" : this.searchBarIsOpen === 'right' ? 'hide' : \"\"}`}>\n {this.showLogoAndAppname &&\n <div class={`navbar__container-left-logo ${this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-left-logo-default\">\n <a href={this.internalLogoHref} target = {this.internalLogoHrefTarget}>\n <svg width=\"91\" height=\"40\" viewBox=\"0 0 91 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_2396_2480)\">\n <path d=\"M67.691 26.7766C71.0884 26.7766 72.1461 23.1841 72.1461 19.8802C72.1461 15.4536 70.2871 13.1441 67.691 13.1441C64.4219 13.1441 63.2681 16.7367 63.3001 19.9443C63.3322 23.1199 64.2296 26.7766 67.691 26.7766ZM66.0244 19.8481C66.0244 18.533 66.0244 15.4536 67.691 15.4536C69.4859 15.4536 69.4218 18.5009 69.4218 19.9123C69.4218 21.2595 69.4218 24.5313 67.7551 24.5313C65.9603 24.4992 66.0244 21.2274 66.0244 19.8481ZM57.8195 26.7766C59.1976 26.7766 60.3835 26.2313 61.5053 25.0445L60.5117 23.1841C59.7425 24.018 58.9733 24.4671 58.0438 24.4671C57.2746 24.4671 56.6336 24.018 56.249 23.2482C55.9285 22.5746 55.8644 21.8048 55.8644 20.9708V20.7142H61.6335V20.1368C61.6335 17.282 61.2809 15.7102 60.3835 14.5234C59.7104 13.6253 58.7169 13.1441 57.499 13.1441C56.2169 13.1441 55.1593 13.7215 54.39 14.8442C53.5567 16.0631 53.2042 17.699 53.2042 19.9443C53.1721 24.2426 54.8708 26.7766 57.8195 26.7766ZM57.531 15.2612C58.172 15.2612 58.5566 15.614 58.813 16.1914C59.0053 16.7046 59.1015 17.5707 59.1015 18.5971H55.8644C55.8964 16.3197 56.3772 15.2612 57.531 15.2612ZM74.2614 26.4559H76.7614V16.8329C77.3703 16.0952 78.0754 15.6782 78.5882 15.6782C78.9087 15.6782 79.2292 15.7423 79.4215 15.9989C79.6138 16.2876 79.71 16.7046 79.71 17.699V26.4559H82.21V16.5442C82.21 15.6782 82.1138 14.8121 81.601 14.1706C81.1523 13.5932 80.4472 13.2404 79.5497 13.2404C78.3959 13.2404 77.2101 13.914 76.569 14.6838C76.537 14.0102 76.3126 13.3687 76.2485 13.1441L73.9089 13.7536C74.0371 14.4593 74.2294 15.3253 74.2294 16.8971V26.4559H74.2614ZM45.2236 14.6838C45.1915 14.0102 44.9672 13.3687 44.9031 13.1441L42.5634 13.7536C42.6916 14.4593 42.8839 15.3253 42.8839 16.8971V26.4238H45.3838V16.8008C45.9928 16.0631 46.6979 15.6461 47.2107 15.6461C47.5312 15.6461 47.8517 15.7102 48.044 15.9669C48.2363 16.2555 48.3325 16.6725 48.3325 17.6669V26.4238H50.8324V16.5442C50.8324 15.6782 50.7363 14.8121 50.2235 14.1706C49.7748 13.5932 49.0696 13.2404 48.1722 13.2404C47.0505 13.2404 45.8646 13.914 45.2236 14.6838ZM14.6473 9.07042C16.1216 9.07042 17.3075 7.88359 17.3075 6.40807C17.3075 4.93256 16.1216 3.74573 14.6473 3.74573C13.173 3.74573 11.9871 4.93256 11.9871 6.40807C11.9871 7.88359 13.173 9.07042 14.6473 9.07042ZM26.9227 26.4559V16.5442C26.9227 15.6782 26.8265 14.8121 26.3137 14.1706C25.865 13.5932 25.1599 13.2404 24.2625 13.2404C23.1087 13.2404 21.9228 13.914 21.2818 14.6838C21.2497 14.0102 21.0254 13.3687 20.9613 13.1441L18.6536 13.7857C18.7818 14.4913 18.9741 15.3574 18.9741 16.9291V26.4559H21.4741V16.8329C22.0831 16.0952 22.7882 15.6782 23.301 15.6782C23.6215 15.6782 23.942 15.7423 24.1343 15.9989C24.3266 16.2876 24.4227 16.7046 24.4227 17.699V26.4559H26.9227ZM38.4289 8.36474C37.4994 8.36474 36.7622 9.10249 36.7622 10.0327C36.7622 10.9629 37.4994 11.7007 38.3968 11.7007C39.3263 11.7007 40.0634 10.9629 40.0634 10.0327C40.0634 9.10249 39.3263 8.36474 38.4289 8.36474ZM13.4614 26.4559H15.9614V10.8346L13.4614 11.1554V26.4559ZM33.8777 9.90441C34.3264 9.90441 34.7751 10.0648 35.0635 10.2893L35.7687 8.33266C35.0956 7.85151 34.3584 7.62698 33.429 7.62698C32.788 7.62698 32.1149 7.78736 31.5059 8.26851C30.897 8.78173 30.256 9.80818 30.256 11.7328C30.256 12.5667 30.288 13.4328 30.288 13.4328H29.4226V15.6461H30.288V26.4238H32.8521V15.6782H34.743L35.2238 13.4649H32.8841V11.4762C32.8841 10.5139 33.2687 9.90441 33.8777 9.90441ZM37.1468 26.4559H39.6788V13.2404L37.1468 13.5611V26.4559Z\" fill=\"#005DA9\" />\n <path d=\"M77.0816 33.5126C68.6203 36.0146 58.3321 37.1052 48.2682 37.1052C22.7239 37.1052 6.24986 29.5993 5.09604 19.6877C4.67938 15.9668 7.59599 12.3422 12.4677 9.26285C11.6023 8.62132 11.0575 7.59488 11.0254 6.44012C3.97427 10.161 0 15.0366 0 19.9764C0 30.9145 19.5188 40.1525 48.5246 39.7676C58.6205 39.6393 67.0498 38.1958 74.6778 35.6939C83.7482 32.7428 89.4532 28.5087 90.8313 26.6483C89.1968 28.1238 85.3186 31.0748 77.0816 33.5126ZM23.2687 4.38723C24.9674 3.80985 27.3712 3.0721 27.3712 3.0721C34.1339 1.21166 41.6017 0.121063 48.5566 0.185215C40.544 -0.295931 33.2365 0.185215 26.8584 1.33997C26.8584 1.33997 24.743 1.69281 22.4675 2.27018C22.4675 2.27018 21.3777 2.55887 20.7047 2.75133C20.0316 2.94379 19.1021 3.2004 19.1021 3.2004C18.4611 3.39286 17.8201 3.6174 17.1791 3.84193C17.8201 4.48346 18.2047 5.31745 18.2368 6.27974C19.3586 5.76652 21.5059 4.99668 23.2687 4.38723Z\" fill=\"#E30034\" />\n </g>\n <defs>\n <clipPath id=\"clip0_2396_2480\">\n <rect width=\"91\" height=\"40\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </a>\n </div>\n {this.applicationName && <h6>{this.applicationName}</h6>}\n {this.applicationName && this.hasLeftMenuItems &&\n <div class=\"navbar__container-left-logo-divider\"></div>}\n </div>}\n <div class=\"navbar__container-left-content\">\n <div class=\"navbar__container-left-content-navigation-group\">\n <slot name='left-item' />\n <div class=\"navbar__container-left-content-navigation-item-search-bar\">\n <slot name='search-bar-left' />\n </div>\n </div>\n </div>\n </div>\n <div class={`navbar__container-right ${this.searchBarIsOpen === 'right' ? \"expand\" : this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-right-content\">\n <div class=\"navbar__container-right-content-navigation-group\">\n <div class=\"navbar__container-right-content-navigation-item-search-bar\">\n <div class={`navbar__container-right-content-navigation-item-search-bar-icon-wrapper`}>\n <slot name='search-bar-right' />\n </div>\n </div>\n <slot name='right-item' />\n </div>\n </div>\n\n {/* MOBILE MENU BUTTON */}\n <div class={`navbar__burger-icon-wrapper`} onClick={this.handleSidebar.bind(this)}>\n <div class=\"navbar__burger-icon\">\n <ifx-icon icon=\"menu-right-24\"></ifx-icon>\n </div>\n <div class=\"navbar__cross-icon\">\n <ifx-icon icon=\"cross-24\"></ifx-icon>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* SIDEBAR */}\n <div class=\"navbar__sidebar\">\n {/* left side ifx-navbar-item */}\n <div class=\"navbar__sidebar-top-row\">\n <div class=\"navbar__sidebar-top-row-wrapper\">\n <slot name='mobile-menu-top' />\n </div>\n </div>\n\n {/* right side ifx-navbar-item */}\n <div class=\"navbar__sidebar-bottom-row\">\n <slot name='mobile-menu-bottom' onSlotchange={(e) => this.handleMobileMenuBottom(e)} />\n </div>\n \n </div>\n </div>\n );\n }\n}"],"version":3}
1
+ {"file":"ifx-navbar.entry.cjs.js","mappings":"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","names":["h"],"sources":["src/components/navigation/navbar/navbar.scss?tag=ifx-navbar&encapsulation=shadow","src/components/navigation/navbar/navbar.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../../global/font.scss\";\n\n:host {\n width: 100%;\n display: block;\n}\n\n\n.navbar__wrapper {\n font-family: var(--ifx-font-family);\n height: 63px;\n position: sticky;\n //overflow: hidden;\n z-index: 1030;\n border-bottom: 1px solid #EEEDED;\n\n &.fixed {\n border-bottom: none;\n }\n\n // border-bottom: 1px solid #EEEDED; //when fixed is false\n}\n\n.navbar__main-container {\n position: absolute;\n top: 0;\n width: 100%;\n //overflow: hidden;\n transition: all 1s;\n z-index: 1020;\n\n &.fixed {\n position: fixed;\n\n & .navbar__container {\n border-bottom: 1px solid #EEEDED;\n }\n }\n\n &.show {\n height: 100vh;\n bottom: 0;\n background-color: tokens.$ifxColorOverlayDark;\n transition: 1s;\n z-index: 1;\n }\n}\n\n.navbar__sidebar {\n box-sizing: border-box;\n position: fixed;\n right: -100%;\n top: 64px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n // padding: 32px;\n width: 375px;\n height: calc(100vh - 64px);\n background-color: tokens.$ifxColorBaseWhite;\n transition: right 1s;\n z-index: 1030;\n\n &.show {\n right: 0;\n transition: right 1s;\n }\n\n & .navbar__sidebar-top-row { \n display: flex;\n padding: var(--borderRadius-none, 0px) var(--space-300, 24px) 30px var(--space-300, 24px);\n flex-direction: column;\n align-items: flex-start;\n gap: var(--space-200, 16px);\n flex: 1 0 0;\n align-self: stretch;\n\n overflow-y: auto;\n\n & .navbar__sidebar-top-row-wrapper { \n display: flex;\n padding-top: var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n gap: 16px;\n\n &.expand { \n align-items: initial;\n }\n\n & .navbar__sidebar-top-row-item { \n display: flex;\n padding: var(--space-200, 0px) var(--space-50, 4px) var(--space-200, 0px) 0px;\n align-items: center;\n gap: var(--space-100, 8px);\n align-self: stretch;\n justify-content: space-between;\n\n & .navbar__sidebar-top-row-item-icon-wrapper { \n & ifx-icon { \n vertical-align: middle;\n }\n }\n \n \n &:hover { \n cursor: pointer;\n }\n \n & .navbar__sidebar-top-row-item-label { \n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n \n }\n }\n\n }\n\n & .navbar__sidebar-bottom-row { \n //display: flex;\n display: none;\n padding: var(--space-150, 12px) var(--space-300, 24px) var(--space-150, 12px) var(--space-200, 16px);\n flex-direction: column;\n align-items: flex-start;\n align-self: stretch;\n background: var(--color-engineering-100, #F7F7F7);\n border-top: 1px solid var(--color-engineering-200, #EEEDED);\n gap: 10px;\n\n max-height: 160px;\n overflow-y: auto;\n\n &.show { \n display: flex;\n }\n \n\n & .navbar__sidebar-bottom-row-item { \n display: flex;\n height: 40px;\n padding-right: var(--space-50, 4px);\n align-items: center;\n gap: var(--space-100, 8px);\n flex: 1 0 0;\n \n & .navbar__sidebar-bottom-row-item-label {\n color: var(--color-base-black, #1D1D1D);\n font-family: \"Source Sans 3\";\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; \n }\n\n & .navbar__sidebar-bottom-row-item-icon-wrapper { \n display: flex;\n align-items: center;\n }\n }\n\n }\n\n\n & .navbar__sidebar-content-products,\n & .navbar__sidebar-content-main {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 24px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n\n & .navbar__sidebar-content-products-header,\n & .navbar__sidebar-content-about-header {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n align-self: stretch;\n flex-grow: 0;\n color: #BFBBBB;\n\n & span {\n color: tokens.$ifxColorBaseBlack;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n }\n }\n\n & .navbar__sidebar-content-products-menu,\n & .navbar__sidebar-content-main-menu {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 100%;\n\n & .navbar__sidebar-content-products-menu-item,\n & .navbar__sidebar-content-main-menu-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n text-decoration: none;\n font-style: normal;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n }\n }\n\n & .navbar__sidebar-content-main-menu-item {\n color: tokens.$ifxColorEngineering300;\n\n & a {\n font-style: normal;\n font-weight: 600;\n font-size: 18px;\n line-height: 28px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 0;\n flex-grow: 1;\n }\n }\n }\n\n & .navbar__sidebar-content-main-menu {\n align-items: normal;\n }\n }\n}\n\n.navbar__container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 40px;\n gap: 16px;\n background-color: tokens.$ifxColorBaseWhite;\n font-family: var(--ifx-font-family);\n\n &.expanded { \n justify-content: initial;\n }\n\n // &.fixed { \n // border-bottom: 1px solid #EEEDED; //when fixed is true\n // }\n\n & .navbar__container-search-field-wrapper { \n display: none;\n\n &.show { \n display: flex;\n }\n }\n\n & .navbar__container-left {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide {\n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-left-content-navigation-item-search-bar { \n flex: 1;\n }\n }\n }\n \n }\n\n & .navbar__container-left-logo {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 16px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n & h6 {\n position: relative;\n margin: 0;\n padding: 0;\n font-style: normal;\n font-weight: 600;\n font-size: 16px;\n //line-height: 24px;\n display: flex;\n align-items: center;\n color: tokens.$ifxColorBaseBlack;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n\n & .navbar__container-left-logo-default {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 12px 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & svg {\n width: 91px;\n height: 40px;\n flex: none;\n order: 0;\n flex-grow: 0;\n vertical-align: bottom;\n }\n }\n\n & .navbar__container-left-logo-divider {\n width: 1px;\n height: 32px;\n background: tokens.$ifxColorEngineering200;\n flex: none;\n order: 2;\n flex-grow: 0;\n }\n }\n\n & .navbar__container-left-content {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-group {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-left-content-navigation-item-search-bar {\n display: flex; //none\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n flex: none;\n order: 5;\n flex-grow: 0;\n //width: 256px;\n //height: 40px;\n }\n\n & .navbar__container-left-content-navigation-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n display: flex;\n align-items: center;\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n }\n }\n }\n }\n\n & .navbar__container-right {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n padding: 0;\n gap: 8px;\n flex: none;\n order: 1;\n flex-grow: 0;\n\n &.hide { \n display: none;\n }\n\n &.expand { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content { \n align-items: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-group { \n justify-content: initial;\n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar { \n flex: 1;\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper { \n flex: 1;\n }\n }\n }\n }\n \n }\n\n & .navbar__burger-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 4px 0px 4px 16px;\n border-left: 1px solid tokens.$ifxColorEngineering300;\n gap: 16px;\n flex: none;\n order: 1;\n flex-grow: 0;\n width: 41px;\n height: 40px;\n\n &.hide { \n display: none;\n }\n\n & .navbar__burger-icon {\n display: flex;\n align-items: center;\n\n &:hover { \n cursor: pointer;\n }\n\n &.close {\n display: none;\n }\n }\n\n & .navbar__cross-icon {\n display: none;\n align-items: center;\n\n &.show {\n display: flex;\n\n &:hover { \n cursor: pointer;\n }\n }\n }\n }\n\n & .navbar__container-right-content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-group {\n position: relative;\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n align-items: center;\n padding: 0px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item,\n & .navbar__container-right-content-navigation-item-profile,\n & .navbar__container-right-content-navigation-item-search-bar {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0px 8px;\n gap: 4px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & .navbar__container-right-content-navigation-item-search-bar-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n //width: 24px;\n //height: 24px;\n //max-width: 200px;\n\n &.isOpen { \n position: absolute;\n top: 10px;\n }\n }\n\n & .navbar__container-right-content-navigation-item-navigation-profile {\n position: relative;\n width: 24px;\n height: 24px;\n background: tokens.$ifxColorOcean500;\n border-radius: 100px;\n flex: none;\n order: 0;\n flex-grow: 0;\n\n & a {\n position: absolute;\n width: 22px;\n height: 20px;\n left: calc(50% - 22px/2);\n top: calc(50% - 20px/2);\n font-style: normal;\n font-weight: 600;\n font-size: 14px;\n line-height: 20px;\n text-decoration: none;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n color: tokens.$ifxColorBaseWhite;\n }\n }\n\n & .navbar__container-right-content-navigation-item-icon-wrapper {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px;\n gap: 8px;\n flex: none;\n order: 0;\n flex-grow: 0;\n }\n\n & a {\n font-style: normal;\n font-weight: 400;\n font-size: 14px;\n line-height: 20px;\n color: tokens.$ifxColorBaseBlack;\n text-decoration: none;\n display: flex;\n align-items: center;\n flex: none;\n order: 1;\n flex-grow: 0;\n }\n }\n }\n }\n }\n}\n\n//burger icon exist, and left container is gone\n@media screen and (max-width: 800px) {\n .navbar__container {\n padding: 0px 16px;\n height: 64px;\n gap: initial;\n\n &.expanded { \n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n display: none;\n }\n\n & .navbar__container-left-logo {\n & .navbar__container-left-logo-divider {\n display: none;\n }\n }\n }\n\n & .navbar__container-right {\n flex: 1;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n\n // &.show {\n // width: 100%;\n // }\n\n }\n}\n\n@media screen and (max-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 100%; // 100% of viewport width\n }\n }\n}\n\n@media screen and (min-width: 500px) {\n .navbar__sidebar {\n &.show {\n width: 50%; // 100% of viewport width\n }\n }\n}\n\n//burger icon disappears\n@media screen and (min-width: 800px) {\n .navbar__wrapper {\n height: 63px;\n }\n\n .navbar__container {\n padding: 0px 16px;\n height: 63px;\n gap: initial;\n\n & .navbar__container-right {\n & .navbar__burger-icon-wrapper {\n display: none;\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n\n .navbar__sidebar {\n width: 0;\n transition: 1s;\n &.show { \n right: -100%;\n }\n }\n\n}\n\n//left container appears\n@media screen and (min-width: 1024px) {\n .navbar__wrapper {\n height: 72px;\n }\n\n .navbar__container {\n padding: 0px 24px;\n height: 72px;\n\n & .navbar__container-left {\n gap: 12px;\n display: flex;\n\n & .navbar__container-left-content {\n display: flex;\n }\n\n & .navbar__container-left-logo-default {\n & svg {\n width: 72.8px;\n height: 32px;\n }\n }\n }\n }\n\n .navbar__main-container {\n &.show {\n height: auto;\n background-color: inherit;\n transition: none;\n }\n }\n}\n\n@media screen and (min-width: 1200px) {\n .navbar__wrapper {\n height: 80px\n }\n\n .navbar__container {\n padding: 0px 32px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: inherit;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}\n\n@media screen and (min-width: 1440px) {\n .navbar__wrapper {\n height: 80px;\n }\n\n .navbar__container {\n padding: 0px 40px;\n height: 80px;\n\n & .navbar__container-left {\n & .navbar__container-left-content {\n justify-content: center;\n }\n }\n\n & .navbar__container-right {\n & .navbar__container-right-content {\n justify-content: inherit;\n }\n }\n }\n}","import { Component, h, Element, State, Prop, Listen, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-navbar',\n styleUrl: 'navbar.scss',\n shadow: true,\n})\n\nexport class Navbar {\n @Element() el;\n @State() main: boolean = true\n @State() products: boolean = false\n @State() applications: boolean = false\n @State() design: boolean = false\n @State() support: boolean = false\n @State() about: boolean = false\n @Prop() applicationName: string = \"\"\n @State() hasLeftMenuItems: boolean = true;\n @Prop() fixed: boolean = true;\n @Prop() showLogoAndAppname: boolean = true;\n @State() searchBarIsOpen: string;\n @Prop() logoHref: string = \"\";\n @State() internalLogoHref: string = \"\"\n @Prop() logoHrefTarget: string = '_self';\n @State() internalLogoHrefTarget: string = '_self';\n @Event() ifxNavbarMobileMenuIsOpen: EventEmitter;\n\n private addEventListenersToHandleCustomFocusState() {\n const element = this.el.shadowRoot.firstChild;\n\n if (!element) {\n console.error('element not found');\n return;\n }\n element.tabIndex = -1;\n\n // Select all a elements in the navbar and set their tabIndex to -1 to make them non-focusable\n const aElements = element.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n\n const slot = element.querySelector('slot');\n if (slot) {\n const assignedNodes = slot.assignedNodes();\n for (let i = 0; i < assignedNodes.length; i++) {\n const node = assignedNodes[i] as HTMLElement;\n if (node.nodeName === 'IFX-NAVBAR-ITEM') {\n const navbarItem = node as HTMLIfxNavbarItemElement;\n\n // Get all navigation items\n const aElements = navbarItem?.shadowRoot.querySelectorAll('a');\n for (let i = 0; i < aElements.length; i++) {\n aElements[i].tabIndex = -1;\n }\n }\n }\n }\n }\n\n @Listen('ifxNavItem') \n clearFirstLayerMenu(event: CustomEvent) { \n if(event.detail.action === 'hideFirstLayer') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'hideSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('remove', 'add')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].hideComponent()\n }\n }\n }\n\n if(event.detail.action === 'returnToSecondLayer') { \n const parent = event.detail.parent;\n const children = parent.children;\n parent.toggleFirstLayerItem('add', 'remove')\n for(let i = 0; i < children.length; i++) { \n if(!children[i].isSameNode(event.detail.component)) {\n children[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'show') { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n\n if(event.detail.action === 'return') { \n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n if(!leftMenuItems[i].isSameNode(event.detail.component)) {\n leftMenuItems[i].showComponent()\n }\n }\n }\n }\n\n getWrappers() {\n const searchBarRightWrapper = this.el.shadowRoot.querySelector('.navbar__container-right-content-navigation-item-search-bar-icon-wrapper')\n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n const rightSideSlot = searchBarRightWrapper.querySelector('slot');\n const leftSideSlot = searchBarLeftWrapper.querySelector('slot');\n const rightAssignedNodes = rightSideSlot.assignedNodes();\n const leftAssignedNodes = leftSideSlot.assignedNodes();\n const navbarProfile = this.el.querySelector('ifx-navbar-profile');\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]');\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]');\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n \n return {rightSideSlot, leftSideSlot, rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper};\n }\n\n hideNavItems() {\n const { rightAssignedNodes, leftAssignedNodes, navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n \n if(rightAssignedNodes.length !== 0) { \n this.searchBarIsOpen = 'right'\n } else if(leftAssignedNodes.length !== 0) {\n this.searchBarIsOpen = 'left'\n }\n\n if(navbarProfile) { \n navbarProfile.hideComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].hideComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].hideComponent()\n }\n } else { \n rightMenuItems[r].hideComponent()\n }\n }\n }\n\n showNavItems() {\n const { navbarProfile, leftMenuItems, rightMenuItems, topRowWrapper } = this.getWrappers();\n this.searchBarIsOpen = undefined;\n \n if(navbarProfile) {\n navbarProfile.showComponent()\n }\n \n for(let l = 0; l < leftMenuItems.length; l++) { \n if(!topRowWrapper.classList.contains('expand')) {\n leftMenuItems[l].showComponent()\n }\n }\n \n for(let r = 0; r < rightMenuItems.length; r++) { \n if(topRowWrapper.classList.contains('expand')) {\n if(!rightMenuItems[r].hideOnMobile) { \n rightMenuItems[r].showComponent()\n }\n } else { \n rightMenuItems[r].showComponent()\n }\n }\n }\n \n \n @Listen('ifxOpen')\n handleSearchBarToggle(event: CustomEvent) {\n \n if(event.detail) { \n this.hideNavItems();\n } else if(!event.detail) {\n this.showNavItems();\n }\n }\n\n toggleClass(el, className) {\n el.classList.toggle(className)\n }\n\n handleSidebar(el) {\n const sidebarIconWrapper = el.currentTarget.closest('.navbar__burger-icon-wrapper');\n const sidebarIconOpen = sidebarIconWrapper.querySelector('.navbar__burger-icon')\n const sidebarIconClose = sidebarIconWrapper.querySelector('.navbar__cross-icon')\n const mainContainer = el.currentTarget.closest('.navbar__main-container');\n const navbarWrapper = el.currentTarget.closest('.navbar__wrapper')\n const sidebarWrapper = navbarWrapper.querySelector('.navbar__sidebar');\n this.toggleClass(navbarWrapper, 'show')\n this.toggleClass(mainContainer, 'show')\n this.toggleClass(sidebarWrapper, 'show')\n this.toggleClass(sidebarIconOpen, 'close')\n this.toggleClass(sidebarIconClose, 'show')\n\n if(sidebarIconClose.classList.contains('show')) { \n this.handleBodyScroll('hide')\n } else { \n this.handleBodyScroll('show')\n }\n }\n\n handleBodyScroll(action) { \n const body = this.el.closest('body')\n if(!this.fixed && action === 'hide') { \n body.style.overflow = 'hidden'\n } else if(action === 'show') { \n body.style.overflow = 'visible'\n }\n }\n\n handleDropdownMenu(el) {\n const dropdownWrapper = el.currentTarget.querySelector('.navbar__dropdown-wrapper')\n dropdownWrapper.classList.toggle('open')\n const iconWrapper = el.currentTarget.querySelector('a')\n iconWrapper.classList.toggle('open')\n }\n\n async setItemMenuPosition() { \n const navbarItems = this.el.querySelectorAll('ifx-navbar-item')\n const navbarProfile = this.el.querySelector('ifx-navbar-profile')\n\n if(navbarProfile) {\n const itemChildren = navbarProfile.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n \n if(navbarItems.length !== 0) { \n for(let i = 0; i < navbarItems.length; i++) { \n const item = navbarItems[i];\n const itemChildren = item.querySelectorAll('ifx-navbar-item')\n if (itemChildren.length !== 0) {\n const hasNestedItems = await item.setItemSideSpecifications()\n if(hasNestedItems) { \n itemChildren.forEach(item => { \n item.setMenuItemPosition()\n this.setMenuItemChildrenPosition(item)\n })\n }\n }\n }\n }\n }\n\n setMenuItemChildrenPosition(item) {\n const itemChildren = item.querySelectorAll('ifx-navbar-item');\n if (itemChildren.length !== 0) {\n itemChildren.forEach(subItem => { \n subItem.setMenuItemPosition()\n this.setMenuItemChildrenPosition(subItem)\n })\n }\n }\n\n getMediaQueryList() { \n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n return mediaQueryList;\n }\n\n componentDidLoad() {\n this.setItemMenuPosition()\n this.addEventListenersToHandleCustomFocusState();\n\n const mediaQueryList = this.getMediaQueryList()\n\n if (mediaQueryList.matches) {\n this.moveNavItemsToSidebar();\n }\n\n }\n\n handleMobileMenuBottom(e) { \n const mobileMenuBottomWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-bottom-row')\n const slotElement = e.target;\n const nodes = slotElement.assignedNodes();\n if(nodes.length > 0) { \n mobileMenuBottomWrapper.classList.add('show')\n } else { \n mobileMenuBottomWrapper.classList.remove('show')\n }\n }\n\n handleLogoHrefAndTarget(){\n if(this.logoHref.trim() === \"\") {\n this.internalLogoHref = undefined;\n }else{\n this.internalLogoHref = this.logoHref;\n }\n\n if(['_self', '_blank', '_parent'].includes(this.logoHrefTarget.trim())){\n this.internalLogoHrefTarget = this.logoHrefTarget;\n }else{\n this.internalLogoHrefTarget = '_self';\n }\n }\n\n \n componentWillLoad() {\n this.RemoveSpaceOnStorybookSnippet()\n const dropdownMenu = this.el.querySelector('ifx-navbar-menu')\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n if (!leftMenuItems.length && !dropdownMenu) {\n this.hasLeftMenuItems = false;\n }\n this.handleLogoHrefAndTarget();\n\n const mediaQueryList = window.matchMedia('(max-width: 800px)');\n mediaQueryList.addEventListener('change', (e) => this.moveNavItemsToSidebar(e));\n }\n\n \n\n getSearchBarLeftWrapper() { \n const searchBarLeftWrapper = this.el.shadowRoot.querySelector('.navbar__container-left-content-navigation-item-search-bar')\n return searchBarLeftWrapper;\n }\n\n getMobileMenuTop() { \n const leftMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-top\"]');\n return leftMenuItems;\n }\n\n getMobileMenuBottom() { \n const rightMenuItems = this.el.querySelectorAll('[slot=\"mobile-menu-bottom\"]');\n return rightMenuItems;\n }\n\n handleBurgerIcon() { \n const leftMenuItems = this.getMobileMenuTop()\n const rightMenuItems = this.getMobileMenuBottom()\n if(!leftMenuItems.length && !rightMenuItems.length) { \n const burgerIconWrapper = this.el.shadowRoot.querySelector('.navbar__burger-icon-wrapper')\n this.toggleClass(burgerIconWrapper, 'hide')\n }\n }\n \n moveNavItemsToSidebar(e?: MediaQueryListEvent) {\n const topRowWrapper = this.el.shadowRoot.querySelector('.navbar__sidebar-top-row-wrapper')\n const mediaQueryList = this.getMediaQueryList();\n const matches = e ? e.matches : mediaQueryList.matches;\n \n if (matches) {\n /* The viewport is 800px wide or less */\n topRowWrapper.classList.add('expand')\n \n //hide body scroll if sidebar was opened\n const crossIcon = this.el.shadowRoot.querySelector('.navbar__cross-icon')\n if(crossIcon.classList.contains('show')) { \n this.handleBodyScroll('hide')\n }\n \n //move search bar to right-side\n const searchBarLeft = this.el.querySelector('[slot=\"search-bar-left\"]')\n if(searchBarLeft) { \n if(this.searchBarIsOpen) { \n searchBarLeft.onNavbarMobile()\n }\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n searchBarLeftWrapper.classList.add('initial')\n searchBarLeft.setAttribute('slot', 'search-bar-right')\n }\n \n //left-side\n const leftMenuItems = this.el.querySelectorAll('[slot=\"left-item\"]')\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'mobile-menu-top')\n leftMenuItems[i].moveChildComponentsIntoSubLayerMenu()\n if(this.searchBarIsOpen) { \n leftMenuItems[i].showComponent()\n }\n }\n \n //right-side\n const rightMenuItems = this.el.querySelectorAll('[slot=\"right-item\"]')\n for(let i = 0; i < rightMenuItems.length; i++) { \n if(rightMenuItems[i].tagName.toUpperCase() === 'IFX-NAVBAR-PROFILE') { \n rightMenuItems[i].showLabel = false;\n } else { \n if(rightMenuItems[i].hideOnMobile) { \n rightMenuItems[i].setAttribute('slot', 'mobile-menu-bottom')\n \n rightMenuItems[i].toggleChildren('add')\n \n rightMenuItems[i].showLabel = true;\n if(this.searchBarIsOpen) { \n rightMenuItems[i].showComponent()\n }\n }\n }\n }\n \n this.handleBurgerIcon()\n\n } else {\n /* The viewport is more than 800px wide */\n topRowWrapper.classList.remove('expand')\n\n //show body scroll \n this.handleBodyScroll('show')\n\n //return search bar to its original position\n const searchBarLeftWrapper = this.getSearchBarLeftWrapper()\n const leftIsInitial = searchBarLeftWrapper.classList.contains('initial')\n const searchBarRight = this.el.querySelector('[slot=\"search-bar-right\"]')\n if(leftIsInitial) { \n if(this.searchBarIsOpen) { \n searchBarRight.onNavbarMobile()\n }\n if(searchBarRight) { \n searchBarRight.setAttribute('slot', 'search-bar-left')\n }\n }\n\n //left-side\n const leftMenuItems = this.getMobileMenuTop()\n for(let i = 0; i < leftMenuItems.length; i++) { \n leftMenuItems[i].setAttribute('slot', 'left-item')\n leftMenuItems[i].moveChildComponentsBackIntoNavbar()\n }\n\n //right-side\n const rightMenuItems = this.getMobileMenuBottom()\n const navbarProfileItem = this.el.querySelector('ifx-navbar-profile')\n if(navbarProfileItem) { \n const showProfileItemLabel = navbarProfileItem.getAttribute('show-label');\n navbarProfileItem.setAttribute('show-label', showProfileItemLabel)\n }\n\n for(let i = 0; i < rightMenuItems.length; i++) { \n rightMenuItems[i].setAttribute('slot', 'right-item')\n\n rightMenuItems[i].toggleChildren('remove')\n \n const showLabel = rightMenuItems[i].getAttribute('show-label');\n rightMenuItems[i].setAttribute('show-label', showLabel)\n if(this.searchBarIsOpen) { \n rightMenuItems[i].hideComponent()\n }\n }\n }\n }\n\n RemoveSpaceOnStorybookSnippet() { \n let parent = this.el.parentElement;\n if(parent) { \n let storybookWrapper = parent.closest('.css-xzp052');\n if(storybookWrapper) { \n storybookWrapper.style.overflow = 'visible'\n }\n }\n }\n\n\n \n render() {\n return (\n <div aria-label='a navigation navbar' class={`navbar__wrapper ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__main-container ${this.fixed ? 'fixed' : \"\"}`}>\n <div class={`navbar__container ${this.searchBarIsOpen ? \"expanded\" : \"\"}`}>\n <div class={`navbar__container-left ${this.searchBarIsOpen === 'left' ? \"expand\" : this.searchBarIsOpen === 'right' ? 'hide' : \"\"}`}>\n {this.showLogoAndAppname &&\n <div class={`navbar__container-left-logo ${this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-left-logo-default\">\n <a href={this.internalLogoHref} target = {this.internalLogoHrefTarget}>\n <svg width=\"91\" height=\"40\" viewBox=\"0 0 91 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_2396_2480)\">\n <path d=\"M67.691 26.7766C71.0884 26.7766 72.1461 23.1841 72.1461 19.8802C72.1461 15.4536 70.2871 13.1441 67.691 13.1441C64.4219 13.1441 63.2681 16.7367 63.3001 19.9443C63.3322 23.1199 64.2296 26.7766 67.691 26.7766ZM66.0244 19.8481C66.0244 18.533 66.0244 15.4536 67.691 15.4536C69.4859 15.4536 69.4218 18.5009 69.4218 19.9123C69.4218 21.2595 69.4218 24.5313 67.7551 24.5313C65.9603 24.4992 66.0244 21.2274 66.0244 19.8481ZM57.8195 26.7766C59.1976 26.7766 60.3835 26.2313 61.5053 25.0445L60.5117 23.1841C59.7425 24.018 58.9733 24.4671 58.0438 24.4671C57.2746 24.4671 56.6336 24.018 56.249 23.2482C55.9285 22.5746 55.8644 21.8048 55.8644 20.9708V20.7142H61.6335V20.1368C61.6335 17.282 61.2809 15.7102 60.3835 14.5234C59.7104 13.6253 58.7169 13.1441 57.499 13.1441C56.2169 13.1441 55.1593 13.7215 54.39 14.8442C53.5567 16.0631 53.2042 17.699 53.2042 19.9443C53.1721 24.2426 54.8708 26.7766 57.8195 26.7766ZM57.531 15.2612C58.172 15.2612 58.5566 15.614 58.813 16.1914C59.0053 16.7046 59.1015 17.5707 59.1015 18.5971H55.8644C55.8964 16.3197 56.3772 15.2612 57.531 15.2612ZM74.2614 26.4559H76.7614V16.8329C77.3703 16.0952 78.0754 15.6782 78.5882 15.6782C78.9087 15.6782 79.2292 15.7423 79.4215 15.9989C79.6138 16.2876 79.71 16.7046 79.71 17.699V26.4559H82.21V16.5442C82.21 15.6782 82.1138 14.8121 81.601 14.1706C81.1523 13.5932 80.4472 13.2404 79.5497 13.2404C78.3959 13.2404 77.2101 13.914 76.569 14.6838C76.537 14.0102 76.3126 13.3687 76.2485 13.1441L73.9089 13.7536C74.0371 14.4593 74.2294 15.3253 74.2294 16.8971V26.4559H74.2614ZM45.2236 14.6838C45.1915 14.0102 44.9672 13.3687 44.9031 13.1441L42.5634 13.7536C42.6916 14.4593 42.8839 15.3253 42.8839 16.8971V26.4238H45.3838V16.8008C45.9928 16.0631 46.6979 15.6461 47.2107 15.6461C47.5312 15.6461 47.8517 15.7102 48.044 15.9669C48.2363 16.2555 48.3325 16.6725 48.3325 17.6669V26.4238H50.8324V16.5442C50.8324 15.6782 50.7363 14.8121 50.2235 14.1706C49.7748 13.5932 49.0696 13.2404 48.1722 13.2404C47.0505 13.2404 45.8646 13.914 45.2236 14.6838ZM14.6473 9.07042C16.1216 9.07042 17.3075 7.88359 17.3075 6.40807C17.3075 4.93256 16.1216 3.74573 14.6473 3.74573C13.173 3.74573 11.9871 4.93256 11.9871 6.40807C11.9871 7.88359 13.173 9.07042 14.6473 9.07042ZM26.9227 26.4559V16.5442C26.9227 15.6782 26.8265 14.8121 26.3137 14.1706C25.865 13.5932 25.1599 13.2404 24.2625 13.2404C23.1087 13.2404 21.9228 13.914 21.2818 14.6838C21.2497 14.0102 21.0254 13.3687 20.9613 13.1441L18.6536 13.7857C18.7818 14.4913 18.9741 15.3574 18.9741 16.9291V26.4559H21.4741V16.8329C22.0831 16.0952 22.7882 15.6782 23.301 15.6782C23.6215 15.6782 23.942 15.7423 24.1343 15.9989C24.3266 16.2876 24.4227 16.7046 24.4227 17.699V26.4559H26.9227ZM38.4289 8.36474C37.4994 8.36474 36.7622 9.10249 36.7622 10.0327C36.7622 10.9629 37.4994 11.7007 38.3968 11.7007C39.3263 11.7007 40.0634 10.9629 40.0634 10.0327C40.0634 9.10249 39.3263 8.36474 38.4289 8.36474ZM13.4614 26.4559H15.9614V10.8346L13.4614 11.1554V26.4559ZM33.8777 9.90441C34.3264 9.90441 34.7751 10.0648 35.0635 10.2893L35.7687 8.33266C35.0956 7.85151 34.3584 7.62698 33.429 7.62698C32.788 7.62698 32.1149 7.78736 31.5059 8.26851C30.897 8.78173 30.256 9.80818 30.256 11.7328C30.256 12.5667 30.288 13.4328 30.288 13.4328H29.4226V15.6461H30.288V26.4238H32.8521V15.6782H34.743L35.2238 13.4649H32.8841V11.4762C32.8841 10.5139 33.2687 9.90441 33.8777 9.90441ZM37.1468 26.4559H39.6788V13.2404L37.1468 13.5611V26.4559Z\" fill=\"#005DA9\" />\n <path d=\"M77.0816 33.5126C68.6203 36.0146 58.3321 37.1052 48.2682 37.1052C22.7239 37.1052 6.24986 29.5993 5.09604 19.6877C4.67938 15.9668 7.59599 12.3422 12.4677 9.26285C11.6023 8.62132 11.0575 7.59488 11.0254 6.44012C3.97427 10.161 0 15.0366 0 19.9764C0 30.9145 19.5188 40.1525 48.5246 39.7676C58.6205 39.6393 67.0498 38.1958 74.6778 35.6939C83.7482 32.7428 89.4532 28.5087 90.8313 26.6483C89.1968 28.1238 85.3186 31.0748 77.0816 33.5126ZM23.2687 4.38723C24.9674 3.80985 27.3712 3.0721 27.3712 3.0721C34.1339 1.21166 41.6017 0.121063 48.5566 0.185215C40.544 -0.295931 33.2365 0.185215 26.8584 1.33997C26.8584 1.33997 24.743 1.69281 22.4675 2.27018C22.4675 2.27018 21.3777 2.55887 20.7047 2.75133C20.0316 2.94379 19.1021 3.2004 19.1021 3.2004C18.4611 3.39286 17.8201 3.6174 17.1791 3.84193C17.8201 4.48346 18.2047 5.31745 18.2368 6.27974C19.3586 5.76652 21.5059 4.99668 23.2687 4.38723Z\" fill=\"#E30034\" />\n </g>\n <defs>\n <clipPath id=\"clip0_2396_2480\">\n <rect width=\"91\" height=\"40\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </a>\n </div>\n {this.applicationName && <h6>{this.applicationName}</h6>}\n {this.applicationName && this.hasLeftMenuItems &&\n <div class=\"navbar__container-left-logo-divider\"></div>}\n </div>}\n <div class=\"navbar__container-left-content\">\n <div class=\"navbar__container-left-content-navigation-group\">\n <slot name='left-item' />\n <div class=\"navbar__container-left-content-navigation-item-search-bar\">\n <slot name='search-bar-left' />\n </div>\n </div>\n </div>\n </div>\n <div class={`navbar__container-right ${this.searchBarIsOpen === 'right' ? \"expand\" : this.searchBarIsOpen === 'left' ? 'hide' : \"\"}`}>\n <div class=\"navbar__container-right-content\">\n <div class=\"navbar__container-right-content-navigation-group\">\n <div class=\"navbar__container-right-content-navigation-item-search-bar\">\n <div class={`navbar__container-right-content-navigation-item-search-bar-icon-wrapper`}>\n <slot name='search-bar-right' />\n </div>\n </div>\n <slot name='right-item' />\n </div>\n </div>\n\n {/* MOBILE MENU BUTTON */}\n <div class={`navbar__burger-icon-wrapper`} onClick={this.handleSidebar.bind(this)}>\n <div class=\"navbar__burger-icon\">\n <ifx-icon icon=\"menu-right-24\"></ifx-icon>\n </div>\n <div class=\"navbar__cross-icon\">\n <ifx-icon icon=\"cross-24\"></ifx-icon>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* SIDEBAR */}\n <div class=\"navbar__sidebar\">\n {/* left side ifx-navbar-item */}\n <div class=\"navbar__sidebar-top-row\">\n <div class=\"navbar__sidebar-top-row-wrapper\">\n <slot name='mobile-menu-top' />\n </div>\n </div>\n\n {/* right side ifx-navbar-item */}\n <div class=\"navbar__sidebar-bottom-row\">\n <slot name='mobile-menu-bottom' onSlotchange={(e) => this.handleMobileMenuBottom(e)} />\n </div>\n \n </div>\n </div>\n );\n }\n}"],"version":3}
@@ -11,19 +11,19 @@ const SearchBar = class {
11
11
  constructor(hostRef) {
12
12
  index.registerInstance(this, hostRef);
13
13
  this.ifxInput = index.createEvent(this, "ifxInput", 7);
14
- this.ifxSearchBarIsOpen = index.createEvent(this, "ifxSearchBarIsOpen", 7);
14
+ this.ifxOpen = index.createEvent(this, "ifxOpen", 7);
15
15
  this.isOpen = true;
16
16
  this.disabled = false;
17
17
  this.handleCloseButton = () => {
18
18
  this.internalState = !this.internalState;
19
- this.ifxSearchBarIsOpen.emit(this.internalState);
19
+ this.ifxOpen.emit(this.internalState);
20
20
  };
21
21
  this.handleFocus = () => {
22
22
  this.internalState = true;
23
23
  };
24
24
  }
25
25
  async onNavbarMobile() {
26
- this.ifxSearchBarIsOpen.emit(false);
26
+ this.ifxOpen.emit(false);
27
27
  this.internalState = false;
28
28
  }
29
29
  handlePropChange() {
@@ -34,13 +34,13 @@ const SearchBar = class {
34
34
  }
35
35
  componentWillLoad() {
36
36
  this.setInitialState();
37
- this.ifxSearchBarIsOpen.emit(this.internalState);
37
+ this.ifxOpen.emit(this.internalState);
38
38
  }
39
39
  handleInput(event) {
40
40
  this.value = event.detail;
41
41
  }
42
42
  render() {
43
- return (index.h("div", { key: '9beeaf23e29792116ade1a8d08a291251a2037e4', "aria-label": 'a search bar', "aria-disabled": this.disabled, class: `search-bar ${this.internalState ? 'open' : 'closed'}` }, this.internalState ? (index.h("div", { class: "search-bar-wrapper" }, index.h("ifx-search-field", { disabled: this.disabled, value: this.value, maxlength: this.maxlength, onIfxInput: this.handleInput.bind(this) }, index.h("ifx-icon", { icon: "search-16", slot: "search-icon" })), index.h("a", { tabindex: "-1", href: 'javascript:void(0)', onClick: this.handleCloseButton }, "Close"))) : (index.h("div", { class: "search-bar__icon-wrapper", onClick: this.handleCloseButton }, index.h("ifx-icon", { icon: "search-16" })))));
43
+ return (index.h("div", { key: '8d79e2302e0e1d0f457a5ce94740966b8f7a6095', "aria-label": 'a search bar', "aria-disabled": this.disabled, class: `search-bar ${this.internalState ? 'open' : 'closed'}` }, this.internalState ? (index.h("div", { class: "search-bar-wrapper" }, index.h("ifx-search-field", { disabled: this.disabled, value: this.value, maxlength: this.maxlength, onIfxInput: this.handleInput.bind(this) }, index.h("ifx-icon", { icon: "search-16", slot: "search-icon" })), index.h("a", { tabindex: "-1", href: 'javascript:void(0)', onClick: this.handleCloseButton }, "Close"))) : (index.h("div", { class: "search-bar__icon-wrapper", onClick: this.handleCloseButton }, index.h("ifx-icon", { icon: "search-16" })))));
44
44
  }
45
45
  get el() { return index.getElement(this); }
46
46
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ifx-search-bar.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,YAAY,GAAG,05BAA05B,CAAC;AACh7B,2BAAe,YAAY;;MCOd,SAAS;IALtB;;;;QAMU,WAAM,GAAY,IAAI,CAAC;QACvB,aAAQ,GAAY,KAAK,CAAC;QAmBlC,sBAAiB,GAAG;YAClB,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;YACzC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;SACjD,CAAA;QAkBD,gBAAW,GAAG;YACZ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC3B,CAAA;KAsBF;IAvDC,MAAM,cAAc;QAClB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACnC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;KAC5B;IAGD,gBAAgB;QACd,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;KAClC;IAOD,eAAe;QACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;KAClC;IAID,iBAAiB;QACf,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;KACjD;IAGD,WAAW,CAAC,KAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;KAC3B;IAOD,MAAM;QACJ,QACEA,gFAAgB,cAAc,mBAAgB,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,IAAI,CAAC,aAAa,GAAG,MAAM,GAAG,QAAQ,EAAE,IACvH,IAAI,CAAC,aAAa,IACjBA,iBAAK,KAAK,EAAC,oBAAoB,IAC7BA,8BAAkB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAC9HA,sBAAU,IAAI,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,GAAY,CACxC,EAEnBA,eAAG,QAAQ,EAAC,IAAI,EAAC,IAAI,EAAC,oBAAoB,EAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,YAAW,CACjF,KAENA,iBAAK,KAAK,EAAC,0BAA0B,EAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,IACnEA,sBAAU,IAAI,EAAC,WAAW,GAAY,CAClC,CACP,CACG,EACN;KACH;;;;;;;;;;","names":["h"],"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"],"version":3}
1
+ {"file":"ifx-search-bar.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,YAAY,GAAG,05BAA05B,CAAC;AACh7B,2BAAe,YAAY;;MCOd,SAAS;IALtB;;;;QAMU,WAAM,GAAY,IAAI,CAAC;QACvB,aAAQ,GAAY,KAAK,CAAC;QAmBlC,sBAAiB,GAAG;YAClB,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;SACtC,CAAA;QAkBD,gBAAW,GAAG;YACZ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC3B,CAAA;KAsBF;IAvDC,MAAM,cAAc;QAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;KAC5B;IAGD,gBAAgB;QACd,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;KAClC;IAOD,eAAe;QACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;KAClC;IAID,iBAAiB;QACf,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;KACtC;IAGD,WAAW,CAAC,KAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;KAC3B;IAOD,MAAM;QACJ,QACEA,gFAAgB,cAAc,mBAAgB,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,IAAI,CAAC,aAAa,GAAG,MAAM,GAAG,QAAQ,EAAE,IACvH,IAAI,CAAC,aAAa,IACjBA,iBAAK,KAAK,EAAC,oBAAoB,IAC7BA,8BAAkB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAC9HA,sBAAU,IAAI,EAAC,WAAW,EAAC,IAAI,EAAC,aAAa,GAAY,CACxC,EAEnBA,eAAG,QAAQ,EAAC,IAAI,EAAC,IAAI,EAAC,oBAAoB,EAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,YAAW,CACjF,KAENA,iBAAK,KAAK,EAAC,0BAA0B,EAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,IACnEA,sBAAU,IAAI,EAAC,WAAW,GAAY,CAClC,CACP,CACG,EACN;KACH;;;;;;;;;;","names":["h"],"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() ifxOpen: EventEmitter;\n @Element() el;\n\n @Method()\n async onNavbarMobile() {\n this.ifxOpen.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.ifxOpen.emit(this.internalState)\n }\n\n setInitialState() {\n this.internalState = this.isOpen;\n }\n\n \n\n componentWillLoad() {\n this.setInitialState();\n this.ifxOpen.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"],"version":3}
@@ -14,8 +14,8 @@ const SidebarItem = class {
14
14
  this.ifxSidebarNavigationItem = index.createEvent(this, "ifxSidebarNavigationItem", 7);
15
15
  this.ifxSidebarActionItem = index.createEvent(this, "ifxSidebarActionItem", 7);
16
16
  this.icon = "";
17
- this.hasIcon = true;
18
- this.hasIconWrapper = false;
17
+ this.showIcon = true;
18
+ this.showIconWrapper = false;
19
19
  this.href = "";
20
20
  this.internalHref = "";
21
21
  this.target = "_self";
@@ -25,7 +25,6 @@ const SidebarItem = class {
25
25
  this.active = false; // set to true manually or by clicking on a navigation item
26
26
  this.isActionItem = false; // if an item is an action item, it can not become active
27
27
  this.internalActiveState = false;
28
- this.value = "";
29
28
  }
30
29
  handleActiveChange(newValue, oldValue) {
31
30
  // If the item is an action item, ignore the active prop
@@ -46,10 +45,10 @@ const SidebarItem = class {
46
45
  }
47
46
  handleConsoleError(event) {
48
47
  if (event.detail) {
49
- this.hasIcon = false;
48
+ this.showIcon = false;
50
49
  }
51
50
  else {
52
- this.hasIcon = true;
51
+ this.showIcon = true;
53
52
  }
54
53
  }
55
54
  handleEventEmission() {
@@ -252,11 +251,11 @@ const SidebarItem = class {
252
251
  }
253
252
  }
254
253
  render() {
255
- return (index.h("div", { key: 'bcce093f08956b787324175d4a1b93d84140a4c1' }, index.h("a", { key: '1d41b50b01283468055a21c3103652796687e8f1', 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' : ""}` }, this.icon &&
256
- index.h("div", { key: 'cd3557255c8a72b1ae6f0b7f72f0ef21e6ae0fe8', class: `sidebar__nav-item-icon-wrapper ${!this.hasIcon ? 'noIcon' : ""}` }, index.h("ifx-icon", { key: '5069aedfa130d4398ca95edda5aacd9b43e52469', icon: this.icon })), index.h("div", { key: '480bf51599b9a0531abdba0a4641550123219df1', class: "sidebar__nav-item-label" }, index.h("slot", { key: 'b56681b0a818d042b76d5bee7d05c4f0d7a9913e' })), (this.isExpandable || !isNaN(this.numberIndicator)) &&
257
- index.h("div", { key: '294c091445d31dfa0a447cd429be5d718ccf25f3', class: "sidebar__nav-item-indicator" }, this.isExpandable &&
258
- index.h("span", { key: 'e667d061eb41e9c47fb0cb41945ee988dad18d47', class: 'item__arrow-wrapper' }, index.h("ifx-icon", { key: 'ab1328ecf32852b9077be0d8631e0e93488b0886', icon: "chevron-down-12" })), !isNaN(this.numberIndicator) && !this.isExpandable && !this.isNested &&
259
- index.h("span", { key: 'c472174f6c7c69c22d92610c5a4d2b846d9cc172', class: 'item__number-indicator' }, index.h("ifx-number-indicator", { key: '7f67ee60ff212eedf7b60e5ac8db23de5d2fc79b' }, this.numberIndicator)))), this.isExpandable && index.h("ul", { key: '73d3c6ecadeb7da7ea960ad2975e3a1f69f9910d', class: 'expandable__submenu' })));
254
+ return (index.h("div", { key: '4d6db59ca0745b1e1bff7952a1ba2eb551d63c01' }, index.h("a", { key: 'c46676fcbeda589d58af08fe2b1c91cce2fa493c', 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' : ""}` }, this.icon &&
255
+ index.h("div", { key: '2c4c427464ab91319d24324f565ee4cb3ddf348e', class: `sidebar__nav-item-icon-wrapper ${!this.showIcon ? 'noIcon' : ""}` }, index.h("ifx-icon", { key: '3366aa6f257c4a02ef88795f6d5939f997eb97a2', icon: this.icon })), index.h("div", { key: 'f7adcc0ae7f6fd87078f218b3331d2908d23128c', class: "sidebar__nav-item-label" }, index.h("slot", { key: 'ac09899d609dbbc1c7aed0be6e5cb9d6a0f81135' })), (this.isExpandable || !isNaN(this.numberIndicator)) &&
256
+ index.h("div", { key: '4cd72cb9f8c8af779eef484b10bdc99a76f1d4f0', class: "sidebar__nav-item-indicator" }, this.isExpandable &&
257
+ index.h("span", { key: '72dea0a110b07f2fb0b4541a7e4802bee1786d11', class: 'item__arrow-wrapper' }, index.h("ifx-icon", { key: 'c3dfc5f1a3900873440d38e434efefa6eb182f4d', icon: "chevron-down-12" })), !isNaN(this.numberIndicator) && !this.isExpandable && !this.isNested &&
258
+ index.h("span", { key: '5eecd657f58b17c70949567092b71264ae82d588', class: 'item__number-indicator' }, index.h("ifx-number-indicator", { key: '3561d440f5eec80bb5ca1c9b06e7475143666802' }, this.numberIndicator)))), this.isExpandable && index.h("ul", { key: '606b0da227796b55dd0d3be75ee6e8349c14aa58', class: 'expandable__submenu' })));
260
259
  }
261
260
  get el() { return index.getElement(this); }
262
261
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ifx-sidebar-item.entry.cjs.js","mappings":"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","names":["h"],"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: number;\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 || !isNaN(this.numberIndicator)) &&\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 {!isNaN(this.numberIndicator) && !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"],"version":3}
1
+ {"file":"ifx-sidebar-item.entry.cjs.js","mappings":"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","names":["h"],"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() showIcon: boolean = true;\n @State() showIconWrapper: 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: number;\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 @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.showIcon = false;\n } else {\n this.showIcon = 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.showIcon ? '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 || !isNaN(this.numberIndicator)) &&\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 {!isNaN(this.numberIndicator) && !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"],"version":3}