@ukic/web-components 3.3.0 → 3.4.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 (437) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-accordion.cjs.entry.js +9 -7
  3. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
  7. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  8. package/dist/cjs/ic-button_3.cjs.entry.js +8 -8
  9. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
  13. package/dist/cjs/ic-checkbox.cjs.entry.js +7 -12
  14. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  16. package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
  17. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-empty-state.cjs.entry.js +2 -2
  19. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  20. package/dist/cjs/ic-hero.cjs.entry.js +6 -5
  21. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  23. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +22 -21
  24. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-input-label_2.cjs.entry.js +7 -7
  26. package/dist/cjs/ic-link.cjs.entry.js +11 -21
  27. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-navigation-group.cjs.entry.js +115 -163
  30. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-navigation-item.cjs.entry.js +64 -61
  32. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
  34. package/dist/cjs/ic-page-header.cjs.entry.js +6 -6
  35. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-pagination.cjs.entry.js +4 -4
  37. package/dist/cjs/ic-popover-menu.cjs.entry.js +5 -5
  38. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
  40. package/dist/cjs/ic-radio-option.cjs.entry.js +4 -4
  41. package/dist/cjs/ic-search-bar.cjs.entry.js +49 -31
  42. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  44. package/dist/cjs/ic-select.cjs.entry.js +141 -217
  45. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-side-navigation.cjs.entry.js +23 -4
  47. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  49. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  50. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-step.cjs.entry.js +13 -13
  52. package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
  53. package/dist/cjs/ic-switch.cjs.entry.js +4 -4
  54. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
  56. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  57. package/dist/cjs/ic-text-field.cjs.entry.js +15 -10
  58. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  60. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-toast.cjs.entry.js +3 -3
  62. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +53 -67
  63. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-toggle-button.cjs.entry.js +61 -63
  65. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-top-navigation.cjs.entry.js +64 -62
  67. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  69. package/dist/cjs/loader.cjs.js +1 -1
  70. package/dist/collection/components/ic-accordion/ic-accordion.js +9 -7
  71. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  72. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +1 -1
  73. package/dist/collection/components/ic-alert/ic-alert.css +4 -0
  74. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +2 -2
  75. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  76. package/dist/collection/components/ic-button/ic-button.css +0 -8
  77. package/dist/collection/components/ic-button/ic-button.js +2 -2
  78. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  79. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +3 -0
  80. package/dist/collection/components/ic-checkbox/ic-checkbox.css +9 -1
  81. package/dist/collection/components/ic-checkbox/ic-checkbox.js +6 -11
  82. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  83. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +2 -2
  84. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  85. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  86. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  87. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  88. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  89. package/dist/collection/components/ic-hero/ic-hero.css +13 -4
  90. package/dist/collection/components/ic-hero/ic-hero.js +5 -4
  91. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  92. package/dist/collection/components/ic-hero/ic-hero.stories.js +1 -0
  93. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  94. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  95. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  96. package/dist/collection/components/ic-input-label/ic-input-label.js +4 -4
  97. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  98. package/dist/collection/components/ic-link/ic-link.js +12 -25
  99. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  100. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +3 -3
  101. package/dist/collection/components/ic-menu/ic-menu.js +41 -40
  102. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  103. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  104. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +119 -167
  105. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  106. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +7 -13
  107. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +80 -74
  108. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  109. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  110. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  111. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  112. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  113. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +3 -0
  114. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  115. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  116. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  117. package/dist/collection/components/ic-search-bar/ic-search-bar.js +52 -32
  118. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  119. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +9 -8
  120. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  121. package/dist/collection/components/ic-select/ic-select.js +196 -271
  122. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  123. package/dist/collection/components/ic-select/ic-select_(single).stories.js +30 -21
  124. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +43 -4
  125. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  126. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +247 -0
  127. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  128. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  129. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  130. package/dist/collection/components/ic-step/ic-step.js +13 -13
  131. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  132. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  133. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  134. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  135. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  136. package/dist/collection/components/ic-text-field/ic-text-field.js +20 -14
  137. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  138. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  139. package/dist/collection/components/ic-toast/ic-toast.js +3 -3
  140. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  141. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +40 -7
  142. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +80 -82
  143. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  144. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +79 -88
  145. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  146. package/dist/collection/components/ic-tooltip/ic-tooltip.js +2 -2
  147. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +81 -79
  148. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  149. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  150. package/dist/components/ic-accordion.js +9 -7
  151. package/dist/components/ic-accordion.js.map +1 -1
  152. package/dist/components/ic-alert.js +1 -1
  153. package/dist/components/ic-alert.js.map +1 -1
  154. package/dist/components/ic-breadcrumb-group.js +2 -2
  155. package/dist/components/ic-breadcrumb2.js +2 -2
  156. package/dist/components/ic-button2.js +3 -3
  157. package/dist/components/ic-button2.js.map +1 -1
  158. package/dist/components/ic-card-vertical.js +1 -1
  159. package/dist/components/ic-card-vertical.js.map +1 -1
  160. package/dist/components/ic-checkbox-group.js +2 -2
  161. package/dist/components/ic-checkbox.js +7 -12
  162. package/dist/components/ic-checkbox.js.map +1 -1
  163. package/dist/components/ic-data-list.js +2 -2
  164. package/dist/components/ic-data-row.js +2 -2
  165. package/dist/components/ic-dialog.js +1 -1
  166. package/dist/components/ic-empty-state.js +2 -2
  167. package/dist/components/ic-footer-link.js +2 -2
  168. package/dist/components/ic-hero.js +6 -5
  169. package/dist/components/ic-hero.js.map +1 -1
  170. package/dist/components/ic-horizontal-scroll2.js +5 -5
  171. package/dist/components/ic-input-component-container2.js +3 -3
  172. package/dist/components/ic-input-container2.js +2 -2
  173. package/dist/components/ic-input-label2.js +4 -4
  174. package/dist/components/ic-input-validation2.js +3 -3
  175. package/dist/components/ic-link2.js +12 -24
  176. package/dist/components/ic-link2.js.map +1 -1
  177. package/dist/components/ic-loading-indicator2.js +3 -3
  178. package/dist/components/ic-menu-group.js +1 -1
  179. package/dist/components/ic-menu2.js +17 -16
  180. package/dist/components/ic-menu2.js.map +1 -1
  181. package/dist/components/ic-navigation-group.js +115 -163
  182. package/dist/components/ic-navigation-group.js.map +1 -1
  183. package/dist/components/ic-navigation-item.js +67 -62
  184. package/dist/components/ic-navigation-item.js.map +1 -1
  185. package/dist/components/ic-navigation-menu2.js +4 -4
  186. package/dist/components/ic-page-header.js +6 -6
  187. package/dist/components/ic-pagination-item2.js +1 -1
  188. package/dist/components/ic-pagination.js +4 -4
  189. package/dist/components/ic-popover-menu.js +5 -5
  190. package/dist/components/ic-popover-menu.js.map +1 -1
  191. package/dist/components/ic-radio-group.js +4 -4
  192. package/dist/components/ic-radio-group.js.map +1 -1
  193. package/dist/components/ic-radio-option.js +4 -4
  194. package/dist/components/ic-search-bar.js +50 -31
  195. package/dist/components/ic-search-bar.js.map +1 -1
  196. package/dist/components/ic-section-container2.js +2 -2
  197. package/dist/components/ic-select.js +141 -217
  198. package/dist/components/ic-select.js.map +1 -1
  199. package/dist/components/ic-side-navigation.js +24 -4
  200. package/dist/components/ic-side-navigation.js.map +1 -1
  201. package/dist/components/ic-skeleton.js +2 -2
  202. package/dist/components/ic-skip-link.js +2 -2
  203. package/dist/components/ic-status-tag.js +2 -2
  204. package/dist/components/ic-step.js +13 -13
  205. package/dist/components/ic-stepper.js +2 -2
  206. package/dist/components/ic-switch.js +4 -4
  207. package/dist/components/ic-tab-context.js +1 -1
  208. package/dist/components/ic-tab-group.js +2 -2
  209. package/dist/components/ic-tab-panel.js +2 -2
  210. package/dist/components/ic-text-field.js +16 -10
  211. package/dist/components/ic-text-field.js.map +1 -1
  212. package/dist/components/ic-theme.js +1 -1
  213. package/dist/components/ic-toast-region.js +1 -1
  214. package/dist/components/ic-toast.js +3 -3
  215. package/dist/components/ic-toggle-button-group.js +53 -67
  216. package/dist/components/ic-toggle-button-group.js.map +1 -1
  217. package/dist/components/ic-toggle-button.js +61 -63
  218. package/dist/components/ic-toggle-button.js.map +1 -1
  219. package/dist/components/ic-tooltip2.js +2 -2
  220. package/dist/components/ic-top-navigation.js +65 -63
  221. package/dist/components/ic-top-navigation.js.map +1 -1
  222. package/dist/components/ic-typography2.js +2 -2
  223. package/dist/core/core.esm.js +1 -1
  224. package/dist/core/core.esm.js.map +1 -1
  225. package/dist/core/p-0fb68b4f.entry.js +2 -0
  226. package/dist/core/p-0fb68b4f.entry.js.map +1 -0
  227. package/dist/core/{p-a0161990.entry.js → p-1d172032.entry.js} +2 -2
  228. package/dist/core/{p-f0388d68.entry.js → p-1d254b71.entry.js} +2 -2
  229. package/dist/core/p-1d254b71.entry.js.map +1 -0
  230. package/dist/core/{p-83764268.entry.js → p-23536595.entry.js} +2 -2
  231. package/dist/core/{p-ba600947.entry.js → p-3676ac4e.entry.js} +2 -2
  232. package/dist/core/{p-bc2ca778.entry.js → p-3cb4ecef.entry.js} +2 -2
  233. package/dist/core/{p-18714198.entry.js → p-432aeae0.entry.js} +2 -2
  234. package/dist/core/{p-2c17cc67.entry.js → p-4a2acb2e.entry.js} +2 -2
  235. package/dist/core/{p-c9a4fe37.entry.js → p-4dc97b03.entry.js} +2 -2
  236. package/dist/core/p-4dc97b03.entry.js.map +1 -0
  237. package/dist/core/{p-cdf56a5d.entry.js → p-4e48a671.entry.js} +2 -2
  238. package/dist/core/p-4e48a671.entry.js.map +1 -0
  239. package/dist/core/{p-1440847f.entry.js → p-51b49429.entry.js} +2 -2
  240. package/dist/core/p-554845c4.entry.js +2 -0
  241. package/dist/core/p-554845c4.entry.js.map +1 -0
  242. package/dist/core/{p-9479f272.entry.js → p-56e0de32.entry.js} +2 -2
  243. package/dist/core/{p-ebab7a9e.entry.js → p-56fb0298.entry.js} +2 -2
  244. package/dist/core/p-59b48450.entry.js +2 -0
  245. package/dist/core/p-59b48450.entry.js.map +1 -0
  246. package/dist/core/{p-10e1e227.entry.js → p-5aec3757.entry.js} +2 -2
  247. package/dist/core/{p-d45d66c0.entry.js → p-5eb2ac90.entry.js} +2 -2
  248. package/dist/core/{p-a4f9b5bf.entry.js → p-60aad45d.entry.js} +2 -2
  249. package/dist/core/p-6cd0b010.entry.js +2 -0
  250. package/dist/core/p-6cd0b010.entry.js.map +1 -0
  251. package/dist/core/{p-788c96ac.entry.js → p-6eea869b.entry.js} +2 -2
  252. package/dist/core/{p-70a6cff1.entry.js → p-7d2c07e2.entry.js} +2 -2
  253. package/dist/core/p-7d352865.entry.js +2 -0
  254. package/dist/core/p-7d352865.entry.js.map +1 -0
  255. package/dist/core/{p-b371a498.entry.js → p-7deaf128.entry.js} +2 -2
  256. package/dist/core/p-803f2eb8.entry.js +2 -0
  257. package/dist/core/p-803f2eb8.entry.js.map +1 -0
  258. package/dist/core/{p-16f55230.entry.js → p-87fa5add.entry.js} +2 -2
  259. package/dist/core/p-87fa5add.entry.js.map +1 -0
  260. package/dist/core/{p-b8da5c07.entry.js → p-887e00bb.entry.js} +2 -2
  261. package/dist/core/p-8958c60f.entry.js +2 -0
  262. package/dist/core/p-8958c60f.entry.js.map +1 -0
  263. package/dist/core/{p-1838d1e9.entry.js → p-8c77dd65.entry.js} +2 -2
  264. package/dist/core/{p-fbf57f0a.entry.js → p-9a6dc8b1.entry.js} +2 -2
  265. package/dist/core/p-9a6dc8b1.entry.js.map +1 -0
  266. package/dist/core/p-a140bcaa.entry.js +2 -0
  267. package/dist/core/p-aad2abbf.entry.js +2 -0
  268. package/dist/core/p-aad2abbf.entry.js.map +1 -0
  269. package/dist/core/p-bdcc79dd.entry.js +2 -0
  270. package/dist/core/p-bdcc79dd.entry.js.map +1 -0
  271. package/dist/core/{p-b9459ba2.entry.js → p-bf3b853e.entry.js} +2 -2
  272. package/dist/core/{p-9cfc2bac.entry.js → p-c59fd23e.entry.js} +2 -2
  273. package/dist/core/{p-72c117b6.entry.js → p-c5ffe2cf.entry.js} +2 -2
  274. package/dist/core/{p-c4663e1a.entry.js → p-cfa9ed7d.entry.js} +2 -2
  275. package/dist/core/{p-df88ff5b.entry.js → p-d4903dcd.entry.js} +2 -2
  276. package/dist/core/{p-8c4f7c63.entry.js → p-d82b27df.entry.js} +2 -2
  277. package/dist/core/{p-bdc72446.entry.js → p-d8ce39ac.entry.js} +2 -2
  278. package/dist/core/{p-42a7d0b6.entry.js → p-dcce0dfd.entry.js} +2 -2
  279. package/dist/core/{p-9ca147f3.entry.js → p-de1e04ac.entry.js} +2 -2
  280. package/dist/core/{p-8b5022bc.entry.js → p-dee21f6d.entry.js} +2 -2
  281. package/dist/core/{p-00bc353b.entry.js → p-dfc8cba6.entry.js} +2 -2
  282. package/dist/core/{p-1be17f22.entry.js → p-e2629bfe.entry.js} +2 -2
  283. package/dist/core/{p-1b2690b4.entry.js → p-e38fddbb.entry.js} +2 -2
  284. package/dist/core/p-e38fddbb.entry.js.map +1 -0
  285. package/dist/core/p-eca6e215.entry.js +2 -0
  286. package/dist/core/p-eca6e215.entry.js.map +1 -0
  287. package/dist/core/{p-0a436c47.entry.js → p-ef4b752c.entry.js} +2 -2
  288. package/dist/core/p-ef4b752c.entry.js.map +1 -0
  289. package/dist/core/{p-267a19d4.entry.js → p-fa38ad2e.entry.js} +2 -2
  290. package/dist/core/p-fc4f7180.entry.js +2 -0
  291. package/dist/core/p-fc4f7180.entry.js.map +1 -0
  292. package/dist/esm/core.js +1 -1
  293. package/dist/esm/ic-accordion.entry.js +9 -7
  294. package/dist/esm/ic-accordion.entry.js.map +1 -1
  295. package/dist/esm/ic-alert.entry.js +1 -1
  296. package/dist/esm/ic-alert.entry.js.map +1 -1
  297. package/dist/esm/ic-breadcrumb-group.entry.js +2 -2
  298. package/dist/esm/ic-breadcrumb.entry.js +2 -2
  299. package/dist/esm/ic-button_3.entry.js +8 -8
  300. package/dist/esm/ic-button_3.entry.js.map +1 -1
  301. package/dist/esm/ic-card-vertical.entry.js +1 -1
  302. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  303. package/dist/esm/ic-checkbox-group.entry.js +2 -2
  304. package/dist/esm/ic-checkbox.entry.js +7 -12
  305. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  306. package/dist/esm/ic-data-list.entry.js +2 -2
  307. package/dist/esm/ic-data-row.entry.js +2 -2
  308. package/dist/esm/ic-dialog.entry.js +1 -1
  309. package/dist/esm/ic-empty-state.entry.js +2 -2
  310. package/dist/esm/ic-footer-link.entry.js +2 -2
  311. package/dist/esm/ic-hero.entry.js +6 -5
  312. package/dist/esm/ic-hero.entry.js.map +1 -1
  313. package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
  314. package/dist/esm/ic-input-component-container_3.entry.js +22 -21
  315. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  316. package/dist/esm/ic-input-label_2.entry.js +7 -7
  317. package/dist/esm/ic-link.entry.js +11 -21
  318. package/dist/esm/ic-link.entry.js.map +1 -1
  319. package/dist/esm/ic-menu-group.entry.js +1 -1
  320. package/dist/esm/ic-navigation-group.entry.js +115 -163
  321. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  322. package/dist/esm/ic-navigation-item.entry.js +64 -61
  323. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  324. package/dist/esm/ic-navigation-menu.entry.js +4 -4
  325. package/dist/esm/ic-page-header.entry.js +6 -6
  326. package/dist/esm/ic-pagination-item.entry.js +1 -1
  327. package/dist/esm/ic-pagination.entry.js +4 -4
  328. package/dist/esm/ic-popover-menu.entry.js +5 -5
  329. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  330. package/dist/esm/ic-radio-group.entry.js +4 -4
  331. package/dist/esm/ic-radio-option.entry.js +4 -4
  332. package/dist/esm/ic-search-bar.entry.js +49 -31
  333. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  334. package/dist/esm/ic-section-container.entry.js +2 -2
  335. package/dist/esm/ic-select.entry.js +142 -218
  336. package/dist/esm/ic-select.entry.js.map +1 -1
  337. package/dist/esm/ic-side-navigation.entry.js +23 -4
  338. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  339. package/dist/esm/ic-skeleton.entry.js +2 -2
  340. package/dist/esm/ic-skip-link.entry.js +2 -2
  341. package/dist/esm/ic-status-tag.entry.js +2 -2
  342. package/dist/esm/ic-step.entry.js +13 -13
  343. package/dist/esm/ic-stepper.entry.js +2 -2
  344. package/dist/esm/ic-switch.entry.js +4 -4
  345. package/dist/esm/ic-tab-context.entry.js +1 -1
  346. package/dist/esm/ic-tab-group.entry.js +2 -2
  347. package/dist/esm/ic-tab-panel.entry.js +2 -2
  348. package/dist/esm/ic-text-field.entry.js +15 -10
  349. package/dist/esm/ic-text-field.entry.js.map +1 -1
  350. package/dist/esm/ic-theme.entry.js +1 -1
  351. package/dist/esm/ic-toast-region.entry.js +1 -1
  352. package/dist/esm/ic-toast.entry.js +3 -3
  353. package/dist/esm/ic-toggle-button-group.entry.js +53 -67
  354. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  355. package/dist/esm/ic-toggle-button.entry.js +61 -63
  356. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  357. package/dist/esm/ic-top-navigation.entry.js +65 -63
  358. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  359. package/dist/esm/ic-typography.entry.js +2 -2
  360. package/dist/esm/loader.js +1 -1
  361. package/dist/types/components/ic-link/ic-link.d.ts +2 -3
  362. package/dist/types/components/ic-menu/ic-menu.d.ts +12 -12
  363. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +4 -18
  364. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +9 -7
  365. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +2 -0
  366. package/dist/types/components/ic-select/ic-select.d.ts +36 -38
  367. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +5 -0
  368. package/dist/types/components/ic-text-field/ic-text-field.d.ts +3 -2
  369. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +10 -11
  370. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +10 -12
  371. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +9 -8
  372. package/dist/types/components.d.ts +89 -81
  373. package/hydrate/index.js +748 -850
  374. package/hydrate/index.mjs +748 -850
  375. package/package.json +2 -2
  376. package/vscode-data.json +8 -4
  377. package/dist/core/p-0a436c47.entry.js.map +0 -1
  378. package/dist/core/p-16f55230.entry.js.map +0 -1
  379. package/dist/core/p-1b2690b4.entry.js.map +0 -1
  380. package/dist/core/p-206c2a26.entry.js +0 -2
  381. package/dist/core/p-206c2a26.entry.js.map +0 -1
  382. package/dist/core/p-2e44cf53.entry.js +0 -2
  383. package/dist/core/p-2e44cf53.entry.js.map +0 -1
  384. package/dist/core/p-730d2f6e.entry.js +0 -2
  385. package/dist/core/p-730d2f6e.entry.js.map +0 -1
  386. package/dist/core/p-7fb79e87.entry.js +0 -2
  387. package/dist/core/p-7fb79e87.entry.js.map +0 -1
  388. package/dist/core/p-910f5f14.entry.js +0 -2
  389. package/dist/core/p-910f5f14.entry.js.map +0 -1
  390. package/dist/core/p-b7568944.entry.js +0 -2
  391. package/dist/core/p-b7568944.entry.js.map +0 -1
  392. package/dist/core/p-c45023b7.entry.js +0 -2
  393. package/dist/core/p-c45023b7.entry.js.map +0 -1
  394. package/dist/core/p-c9a4fe37.entry.js.map +0 -1
  395. package/dist/core/p-cdf56a5d.entry.js.map +0 -1
  396. package/dist/core/p-d6c50565.entry.js +0 -2
  397. package/dist/core/p-d6c50565.entry.js.map +0 -1
  398. package/dist/core/p-d975bf2f.entry.js +0 -2
  399. package/dist/core/p-d975bf2f.entry.js.map +0 -1
  400. package/dist/core/p-dede4974.entry.js +0 -2
  401. package/dist/core/p-dede4974.entry.js.map +0 -1
  402. package/dist/core/p-e86a6d2d.entry.js +0 -2
  403. package/dist/core/p-eeab3a2e.entry.js +0 -2
  404. package/dist/core/p-eeab3a2e.entry.js.map +0 -1
  405. package/dist/core/p-f0388d68.entry.js.map +0 -1
  406. package/dist/core/p-fbf57f0a.entry.js.map +0 -1
  407. /package/dist/core/{p-a0161990.entry.js.map → p-1d172032.entry.js.map} +0 -0
  408. /package/dist/core/{p-83764268.entry.js.map → p-23536595.entry.js.map} +0 -0
  409. /package/dist/core/{p-ba600947.entry.js.map → p-3676ac4e.entry.js.map} +0 -0
  410. /package/dist/core/{p-bc2ca778.entry.js.map → p-3cb4ecef.entry.js.map} +0 -0
  411. /package/dist/core/{p-18714198.entry.js.map → p-432aeae0.entry.js.map} +0 -0
  412. /package/dist/core/{p-2c17cc67.entry.js.map → p-4a2acb2e.entry.js.map} +0 -0
  413. /package/dist/core/{p-1440847f.entry.js.map → p-51b49429.entry.js.map} +0 -0
  414. /package/dist/core/{p-9479f272.entry.js.map → p-56e0de32.entry.js.map} +0 -0
  415. /package/dist/core/{p-ebab7a9e.entry.js.map → p-56fb0298.entry.js.map} +0 -0
  416. /package/dist/core/{p-10e1e227.entry.js.map → p-5aec3757.entry.js.map} +0 -0
  417. /package/dist/core/{p-d45d66c0.entry.js.map → p-5eb2ac90.entry.js.map} +0 -0
  418. /package/dist/core/{p-a4f9b5bf.entry.js.map → p-60aad45d.entry.js.map} +0 -0
  419. /package/dist/core/{p-788c96ac.entry.js.map → p-6eea869b.entry.js.map} +0 -0
  420. /package/dist/core/{p-70a6cff1.entry.js.map → p-7d2c07e2.entry.js.map} +0 -0
  421. /package/dist/core/{p-b371a498.entry.js.map → p-7deaf128.entry.js.map} +0 -0
  422. /package/dist/core/{p-b8da5c07.entry.js.map → p-887e00bb.entry.js.map} +0 -0
  423. /package/dist/core/{p-1838d1e9.entry.js.map → p-8c77dd65.entry.js.map} +0 -0
  424. /package/dist/core/{p-e86a6d2d.entry.js.map → p-a140bcaa.entry.js.map} +0 -0
  425. /package/dist/core/{p-b9459ba2.entry.js.map → p-bf3b853e.entry.js.map} +0 -0
  426. /package/dist/core/{p-9cfc2bac.entry.js.map → p-c59fd23e.entry.js.map} +0 -0
  427. /package/dist/core/{p-72c117b6.entry.js.map → p-c5ffe2cf.entry.js.map} +0 -0
  428. /package/dist/core/{p-c4663e1a.entry.js.map → p-cfa9ed7d.entry.js.map} +0 -0
  429. /package/dist/core/{p-df88ff5b.entry.js.map → p-d4903dcd.entry.js.map} +0 -0
  430. /package/dist/core/{p-8c4f7c63.entry.js.map → p-d82b27df.entry.js.map} +0 -0
  431. /package/dist/core/{p-bdc72446.entry.js.map → p-d8ce39ac.entry.js.map} +0 -0
  432. /package/dist/core/{p-42a7d0b6.entry.js.map → p-dcce0dfd.entry.js.map} +0 -0
  433. /package/dist/core/{p-9ca147f3.entry.js.map → p-de1e04ac.entry.js.map} +0 -0
  434. /package/dist/core/{p-8b5022bc.entry.js.map → p-dee21f6d.entry.js.map} +0 -0
  435. /package/dist/core/{p-00bc353b.entry.js.map → p-dfc8cba6.entry.js.map} +0 -0
  436. /package/dist/core/{p-1be17f22.entry.js.map → p-e2629bfe.entry.js.map} +0 -0
  437. /package/dist/core/{p-267a19d4.entry.js.map → p-fa38ad2e.entry.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { Host, h, } from "@stencil/core";
1
+ import { Host, h, Fragment, } from "@stencil/core";
2
2
  import { IcBrandForegroundEnum, } from "../../utils/types";
3
3
  import { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, getBrandForegroundAppearance, getSlot, onComponentPropUndefinedChange, onComponentRequiredPropUndefined, isSlotUsed, isEmptyString, isPropDefined, } from "../../utils/helpers";
4
4
  /**
@@ -66,22 +66,43 @@ export class TopNavigation {
66
66
  this.hasSearchSlotContent = isSlotUsed(this.el, "search");
67
67
  };
68
68
  this.initialiseSearchBar = () => {
69
- if (this.hasSearchSlotContent) {
70
- const slot = getSlot(this.el, "search");
71
- if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === "IC-SEARCH-BAR") {
72
- this.searchBar = slot;
73
- }
74
- else if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === "FORM") {
75
- this.searchBar = slot.querySelector("ic-search-bar");
76
- }
77
- if (this.searchBar !== null) {
78
- this.searchBar.hideLabel = true;
79
- }
69
+ if (!this.hasSearchSlotContent)
70
+ return;
71
+ const slot = getSlot(this.el, "search");
72
+ if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === "IC-SEARCH-BAR") {
73
+ this.searchBar = slot;
74
+ }
75
+ else if ((slot === null || slot === void 0 ? void 0 : slot.tagName) === "FORM") {
76
+ this.searchBar = slot.querySelector("ic-search-bar");
77
+ }
78
+ if (this.searchBar !== null) {
79
+ this.searchBar.hideLabel = true;
80
+ }
81
+ };
82
+ this.toggleSearchBar = () => {
83
+ var _a;
84
+ this.mobileSearchBarVisible = !this.mobileSearchBarVisible;
85
+ if (!this.searchBar)
86
+ return;
87
+ (_a = this.mobileSearchButtonEl) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-label", `${this.mobileSearchBarVisible ? "Hide" : "Show"} search`);
88
+ this.hasFullWidthSearchBar = this.mobileSearchBarVisible;
89
+ this.searchBar.fullWidth = this.mobileSearchBarVisible;
90
+ if (this.mobileSearchBarVisible) {
91
+ setTimeout(() => {
92
+ var _a;
93
+ (_a = this.searchBar) === null || _a === void 0 ? void 0 : _a.focus();
94
+ }, 100);
80
95
  }
81
96
  };
82
97
  this.menuButtonClick = () => {
83
98
  this.showNavMenu(true);
84
99
  };
100
+ this.showNavMenu = (show) => {
101
+ this.navMenuVisible = show;
102
+ (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();
103
+ document.body.style.height = show ? "100%" : "auto";
104
+ document.body.style.overflow = show ? "hidden" : "auto";
105
+ };
85
106
  this.searchButtonMouseDownHandler = () => {
86
107
  this.searchButtonClick = true;
87
108
  };
@@ -90,27 +111,27 @@ export class TopNavigation {
90
111
  this.searchButtonClick = false;
91
112
  };
92
113
  this.resizeObserverCallback = (currSize) => {
93
- if (currSize !== this.deviceSize) {
94
- this.deviceSize = currSize;
95
- if (currSize > this.customMobileBreakpoint) {
96
- this.showNavMenu(false);
97
- if (this.mobileSearchBarVisible) {
98
- this.toggleSearchBar();
99
- }
100
- }
101
- this.icTopNavResized.emit({
102
- size: currSize,
103
- });
104
- if (this.searchBar && document.activeElement === this.searchBar) {
105
- this.searchBar.setAttribute("hidden", "true");
106
- //remove attribute again as this trigger a redraw & applies css
107
- this.searchBar.removeAttribute("hidden");
108
- setTimeout(() => {
109
- var _a;
110
- (_a = this.searchBar) === null || _a === void 0 ? void 0 : _a.focus();
111
- }, 100);
114
+ if (currSize === this.deviceSize)
115
+ return;
116
+ this.deviceSize = currSize;
117
+ if (currSize > this.customMobileBreakpoint) {
118
+ this.showNavMenu(false);
119
+ if (this.mobileSearchBarVisible) {
120
+ this.toggleSearchBar();
112
121
  }
113
122
  }
123
+ this.icTopNavResized.emit({
124
+ size: currSize,
125
+ });
126
+ if (this.searchBar && document.activeElement === this.searchBar) {
127
+ this.searchBar.setAttribute("hidden", "true");
128
+ //remove attribute again as this trigger a redraw & applies css
129
+ this.searchBar.removeAttribute("hidden");
130
+ setTimeout(() => {
131
+ var _a;
132
+ (_a = this.searchBar) === null || _a === void 0 ? void 0 : _a.focus();
133
+ }, 100);
134
+ }
114
135
  };
115
136
  this.runResizeObserver = () => {
116
137
  this.resizeObserver = new ResizeObserver(() => {
@@ -135,16 +156,17 @@ export class TopNavigation {
135
156
  }
136
157
  componentDidLoad() {
137
158
  checkResizeObserver(this.runResizeObserver);
138
- !isSlotUsed(this.el, "app-title") &&
159
+ if (!isSlotUsed(this.el, "app-title")) {
139
160
  onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: "app-title" }], "Top Navigation");
161
+ }
140
162
  }
141
163
  componentWillRender() {
142
164
  this.checkSlots();
143
165
  }
144
166
  navBarMenuCloseHandler() {
145
- var _a, _b;
167
+ var _a;
146
168
  this.showNavMenu(false);
147
- (_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("#menu-button")) === null || _b === void 0 ? void 0 : _b.focus();
169
+ (_a = this.menuButtonEl) === null || _a === void 0 ? void 0 : _a.setFocus();
148
170
  }
149
171
  searchInputBlurHandler({ detail, }) {
150
172
  if (detail !== null) {
@@ -161,58 +183,38 @@ export class TopNavigation {
161
183
  brandChangeHandler({ detail }) {
162
184
  this.foregroundColor = detail.mode;
163
185
  }
164
- toggleSearchBar() {
165
- var _a;
166
- this.mobileSearchBarVisible = !this.mobileSearchBarVisible;
167
- if (this.searchBar !== null) {
168
- (_a = this.mobileSearchButtonEl) === null || _a === void 0 ? void 0 : _a.setAttribute("aria-label", `${this.mobileSearchBarVisible ? "Hide" : "Show"} search`);
169
- this.hasFullWidthSearchBar = this.mobileSearchBarVisible;
170
- this.searchBar.fullWidth = this.mobileSearchBarVisible;
171
- if (this.mobileSearchBarVisible) {
172
- setTimeout(() => {
173
- var _a;
174
- (_a = this.searchBar) === null || _a === void 0 ? void 0 : _a.focus();
175
- }, 100);
176
- }
177
- }
178
- }
179
- showNavMenu(show) {
180
- this.navMenuVisible = show;
181
- (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();
182
- document.body.style.height = show ? "100%" : "auto";
183
- document.body.style.overflow = show ? "hidden" : "auto";
184
- }
185
186
  render() {
186
187
  const { appTitle, contentAligned, customMobileBreakpoint, deviceSize, el, foregroundColor, hasAppIcon, hasFullWidthSearchBar, hasIconButtons, hasNavigation, hasSearchSlotContent, href, inline, menuButtonClick, mobileSearchBarVisible, navMenuVisible, searchButtonClickHandler, searchButtonMouseDownHandler, shortAppTitle, status, version, theme, } = this;
187
188
  const hasStatus = status !== "";
188
189
  const hasVersion = version !== "";
189
190
  const hasMenuContent = hasNavigation || hasIconButtons || hasStatus || hasVersion;
190
- const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? "medium" : "large";
191
+ const isSmallDeviceSize = deviceSize <= DEVICE_SIZES.S;
192
+ const searchButtonSize = isSmallDeviceSize ? "medium" : "large";
191
193
  const hasTitle = appTitle !== "" && isPropDefined(appTitle);
192
194
  const overMobileBreakpoint = deviceSize <= customMobileBreakpoint;
193
195
  const appTitleVariant = overMobileBreakpoint
194
- ? deviceSize <= DEVICE_SIZES.S
196
+ ? isSmallDeviceSize
195
197
  ? "subtitle-small"
196
198
  : "h4"
197
199
  : "h3";
198
200
  const mobileSearchButtonTitle = `${mobileSearchBarVisible ? "Hide" : "Show"} search`;
199
- const menuSize = deviceSize <= DEVICE_SIZES.S ? "small" : "medium";
201
+ const menuSize = isSmallDeviceSize ? "small" : "medium";
200
202
  const shortAppTitleSlot = isSlotUsed(el, "short-app-title");
201
203
  const hasAppTitleSlot = isSlotUsed(el, "app-title");
202
204
  const Component = hasAppTitleSlot ? "div" : "a";
203
205
  const attrs = Component == "a" && {
204
206
  href: href,
205
207
  };
206
- return (h(Host, { key: 'c34e31b1c026aa42f639599a271e7a3c2dba0ec0', class: {
208
+ return (h(Host, { key: '109a8d5b8745b485182a193c3f4929a7b01db39a', class: {
207
209
  "fullwidth-searchbar": hasFullWidthSearchBar,
208
210
  "mobile-mode": overMobileBreakpoint,
209
211
  [IcBrandForegroundEnum.Dark]: foregroundColor === IcBrandForegroundEnum.Dark,
210
212
  [`ic-theme-${theme}`]: theme !== "inherit",
211
- } }, h("div", { key: 'd266b2df2d3a15532911b76e5372a77355d27b02', class: "top-navigation" }, h("ic-section-container", { key: '444caa24a5e6da0186b98b61bcbce33aebaf0e61', aligned: contentAligned, "full-height": true }, h("header", { key: 'fcc8737fb7c54abd463b716cc09589bb56a5d34c', role: "banner" }, h("div", { key: '84139029b5bd3ca31e6bec51f45126ff72d8110a', class: "top-panel-container" }, h("div", { key: '0d670149118d30f5cf7852a72a79810ad4978d26', class: "app-details-container" }, (hasTitle || hasAppTitleSlot) && (h(Component, Object.assign({ key: 'c17c88b16b367927568160d5e11373ff13329ac5', class: "title-link" }, attrs), hasAppIcon && (h("div", { key: '9847777727de0f0da511523d04c72ce980027151', class: "app-icon-container" }, h("slot", { key: '2d44296eb3f6469de56faeb9870b6d096516f23c', name: "app-icon" }))), deviceSize <= DEVICE_SIZES.S &&
213
+ } }, h("div", { key: '4ed96db767e6c034003f84053651fe68396799c7', class: "top-navigation" }, h("ic-section-container", { key: '44ac38abd7935fe8feed493a1f1550fccc3c5535', aligned: contentAligned, "full-height": true }, h("header", { key: 'b5468dc9e39a3f45e857464179d3bb9f6ea15707', role: "banner" }, h("div", { key: '856acd47849f1621f800385e630cd9d045535ef0', class: "top-panel-container" }, h("div", { key: '0ac5b5c3313230a12f75b99531b6db5280f54729', class: "app-details-container" }, (hasTitle || hasAppTitleSlot) && (h(Component, Object.assign({ key: 'c27a485d2d304ea74edd37e30dfc013c7f42d1f6', class: "title-link" }, attrs), hasAppIcon && (h("div", { key: '18e1af273850b3174fdc3c2ac3b7cd1e51d27dc8', class: "app-icon-container" }, h("slot", { key: '98ff1d08d3cd6a0332c42f8c08d2e04897da1014', name: "app-icon" }))), isSmallDeviceSize &&
212
214
  (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (h("ic-typography", { variant: "subtitle-small", "aria-label": (!hasAppTitleSlot || !shortAppTitleSlot) &&
213
- `${appTitle} (${shortAppTitle})` }, h("h1", null, shortAppTitleSlot ? (h("slot", { name: "short-app-title" })) : (shortAppTitle)))) : (h("ic-typography", { variant: appTitleVariant }, h("h1", { class: "title-wrap" }, hasAppTitleSlot ? (h("slot", { name: "app-title" })) : (appTitle)))))), hasStatus && (h("div", { key: '3a25c523a8b2f866979c6b216b8320a0d378ea25', class: "app-status" }, h("ic-typography", { key: '06e42ccfca3a13ca36e39270ffd7380bd8d0a3da', "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, status))), hasVersion && (h("div", { key: 'd876b6c44e8f17aac75467e15e0e644b904f7ee4', class: "app-version" }, h("ic-typography", { key: 'adb1db74b83577008a831898ab4c59814be0b271', variant: "label", class: "app-version-text", "aria-label": "app version" }, version)))), (hasSearchSlotContent || hasMenuContent) && (h("div", { key: '363c60544cb4581ae9e31a58c63fedc6aee76447', class: "search-menu-container" }, h("div", { key: '6519a88057979775cfc6081a952e85d3b9417c28', class: "search-actions-container" }, !overMobileBreakpoint && h("slot", { key: 'd174b13453134aa9fedff9a95508dbbac96469a1', name: "search" }), hasSearchSlotContent && overMobileBreakpoint && (h("ic-button", { key: '6e102532a61df76174edecf38f8d2dddde722cf5', id: "search-toggle-button", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: searchButtonMouseDownHandler, variant: "icon-tertiary", monochrome: true, size: searchButtonSize, "aria-label": mobileSearchButtonTitle, theme: foregroundColor, onClick: searchButtonClickHandler }, h("slot", { key: 'f910700c47c5878c345470ed9294a33007ce7ead', name: "toggle-icon" }, h("svg", { key: '3d3d934259563eadf67075018a41eb653438f1ea', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "#ffffff" }, h("path", { key: '5fff46e4c3da77500acd290d5728f60097673a05', d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { key: '045e973ca81352d2a1bb48579ced25d19f4a1f2a', d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" }))))), hasIconButtons && !overMobileBreakpoint && (h("div", { key: '5fb7278bd4d60f60d21897f1fb96ec7f3a57c87b', class: "icon-buttons-container" }, h("slot", { key: '190d7b5915c3fbbf6347cb3ddc272f9dfc046ac3', name: "buttons" }))), hasMenuContent && overMobileBreakpoint && (h("div", { key: 'a91b5a189c4146e12e90e740001ad0b77679cc77', class: "menu-button-container" }, h("span", { key: 'd218781625f5e261764968eb84e03a32e905383d', id: "navigation-landmark-button-text", class: "navigation-landmark-button-text", "aria-hidden": "true" }, "Main navigation button"), h("nav", { key: '957a343cc283945aceb2bf4f886dadcb8149d118', "aria-labelledby": "navigation-landmark-button-text", "aria-hidden": `${navMenuVisible}` }, h("ic-button", { key: 'e17765454e8a5102b732cf2b12a45ddb8d2426fc', id: "menu-button", theme: foregroundColor, variant: "secondary", monochrome: true, "aria-expanded": "false", "aria-haspopup": "true", "aria-label": `Open ${hasNavigation ? "navigation" : "app"} menu`, size: menuSize, onClick: menuButtonClick }, "Menu", h("svg", { key: '8595a3640057e8cbc4d6a74fc16bfe11007052bd', xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff", slot: "left-icon" }, h("path", { key: '0a2dd66668d2b8a99981303024d0a9f409197142', d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { key: '6e4ee39265832993f8756c3208f451936fb78a5b', d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" })))))))))), mobileSearchBarVisible && (h("div", { key: '7351262fd2c64de0b2572e63011461a17fc9effc', class: "search-bar-container" }, h("slot", { key: '1db63ef6eac0ee7efbf59f8427149c8990182fcf', name: "search" }))), hasNavigation && !overMobileBreakpoint && (h("div", { key: 'c70583f725a90a91bbf09560bddf556ae2dfe9c9', class: "navigation-tabs" }, h("span", { key: 'b87db18c6fbd55a9d56f7caa915c41d9cb7efc81', id: "navigation-landmark-text", class: "navigation-landmark-text", "aria-hidden": "true" }, "Main pages"), h("nav", { key: 'f7337c8fd73f1b2c89a35db9ed1f136bbab22c16', "aria-labelledby": "navigation-landmark-text", class: "nav-panel-container" }, h("ic-horizontal-scroll", { key: '017e0ce9c0cd0f931fbe86cbebb0680b473e90c8', monochrome: true, appearance: foregroundColor }, h("ul", { key: 'd8cc0609df1f348acaf9f2cdce3f50e0583416c5', class: "navigation-item-list", tabindex: "-1" }, h("slot", { key: '9f63d68cb7b5410e3b43c8ce2d034c1842981701', name: "navigation" }))))))))), navMenuVisible && (h("ic-navigation-menu", { key: '7db1c7865aae2836052e0911608179e294a98519', version: version, status: status, class: {
214
- ["inline"]: !!inline,
215
- } }, hasIconButtons && (h("div", { key: 'b4110d809aa48b74b4802463d85743b6dc892978', class: "menu-buttons-slot", slot: "buttons" }, h("slot", { key: '4d31e22407e559d9435fae39e89a6f6612bee4bd', name: "buttons" }))), h("ul", { key: 'a2ad4a21c9b34e86c242addfb56bb0c31a87a230', slot: "navigation" }, h("slot", { key: 'c9c150aa1431942415593722be13d22291eb2b19', name: "navigation" }))))));
215
+ `${appTitle} (${shortAppTitle})` }, h("h1", null, shortAppTitleSlot ? (h("slot", { name: "short-app-title" })) : (shortAppTitle)))) : (h("ic-typography", { variant: appTitleVariant }, h("h1", { class: "title-wrap" }, hasAppTitleSlot ? (h("slot", { name: "app-title" })) : (appTitle)))))), hasStatus && (h("div", { key: '6cb297d4f6942bb1a277c8ce7476e861d97c8443', class: "app-status" }, h("ic-typography", { key: 'df12aa96dbce804e3bf0241f68a93b2027667f65', "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, status))), hasVersion && (h("div", { key: '6312913ba6a1da16d992e225b1c2c81a9ef08e86', class: "app-version" }, h("ic-typography", { key: 'e1885cd980327cac6254860daeb80e3bf3b71b71', variant: "label", class: "app-version-text", "aria-label": "app version" }, version)))), (hasSearchSlotContent || hasMenuContent) && (h("div", { key: '227e6a17a7f8f353aac7c7fc684adef110387e12', class: "search-menu-container" }, h("div", { key: 'c61983790f01a2f4cccde572ccae52d598f2ef8f', class: "search-actions-container" }, !overMobileBreakpoint ? (h(Fragment, null, h("slot", { name: "search" }), hasIconButtons && (h("div", { class: "icon-buttons-container" }, h("slot", { name: "buttons" }))))) : (h(Fragment, null, hasSearchSlotContent && (h("ic-button", { id: "search-toggle-button", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: searchButtonMouseDownHandler, variant: "icon-tertiary", monochrome: true, size: searchButtonSize, "aria-label": mobileSearchButtonTitle, theme: foregroundColor, onClick: searchButtonClickHandler }, h("slot", { name: "toggle-icon" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "#ffffff" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" }))))), hasMenuContent && (h("div", { class: "menu-button-container" }, h("span", { id: "navigation-landmark-button-text", class: "navigation-landmark-button-text", "aria-hidden": "true" }, "Main navigation button"), h("nav", { "aria-labelledby": "navigation-landmark-button-text", "aria-hidden": `${navMenuVisible}` }, h("ic-button", { id: "menu-button", ref: (el) => (this.menuButtonEl = el), theme: foregroundColor, variant: "secondary", monochrome: true, "aria-expanded": "false", "aria-haspopup": "true", "aria-label": `Open ${hasNavigation ? "navigation" : "app"} menu`, size: menuSize, onClick: menuButtonClick }, "Menu", h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff", slot: "left-icon" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" })))))))))))), mobileSearchBarVisible && (h("div", { key: '151189b97bf2f3d25a492b94d18abbcdf75fecfe', class: "search-bar-container" }, h("slot", { key: 'e2cce191292a452cd262225cc37a7740a3062e27', name: "search" }))), hasNavigation && !overMobileBreakpoint && (h("div", { key: '276e4e02593c11acf3b9d6d3e9fa180d1a931638', class: "navigation-tabs" }, h("span", { key: '36300650d07526bc75fb99461c8749a12d08bfe1', id: "navigation-landmark-text", class: "navigation-landmark-text", "aria-hidden": "true" }, "Main pages"), h("nav", { key: '0f8c7ac61bb6bf1007f29a79759faaa4700b1d90', "aria-labelledby": "navigation-landmark-text", class: "nav-panel-container" }, h("ic-horizontal-scroll", { key: '35f848caea4ea1dd4acf40fb745c8c21e3527a1c', monochrome: true, appearance: foregroundColor }, h("ul", { key: 'e3258950c9a102ab131421f43c6c255a25a92b86', class: "navigation-item-list", tabindex: "-1" }, h("slot", { key: '47b7b95636042b538630b97a124420a1fc27c948', name: "navigation" }))))))))), navMenuVisible && (h("ic-navigation-menu", { key: '3882936269a606b370eb187404194be1add62dd5', version: version, status: status, class: {
216
+ inline,
217
+ } }, hasIconButtons && (h("div", { key: '0de3827a70e0d7b3148148b89a36a98693883770', class: "menu-buttons-slot", slot: "buttons" }, h("slot", { key: 'a4a175ccfa0aa523fda4ce61d389175c40f75be0', name: "buttons" }))), h("ul", { key: 'c601f64f4e48c2cb197793d440fdac7d2dc08261', slot: "navigation" }, h("slot", { key: 'af85842692b892b7614fafff255c2c107a5bfdc9', name: "navigation" }))))));
216
218
  }
217
219
  static get is() { return "ic-top-navigation"; }
218
220
  static get encapsulation() { return "shadow"; }
@@ -233,7 +235,7 @@ export class TopNavigation {
233
235
  "mutable": false,
234
236
  "complexType": {
235
237
  "original": "IcAlignment",
236
- "resolved": "\"center\" | \"full-width\" | \"left\" | undefined",
238
+ "resolved": "\"center\" | \"full-width\" | \"left\"",
237
239
  "references": {
238
240
  "IcAlignment": {
239
241
  "location": "import",
@@ -243,7 +245,7 @@ export class TopNavigation {
243
245
  }
244
246
  },
245
247
  "required": false,
246
- "optional": true,
248
+ "optional": false,
247
249
  "docs": {
248
250
  "tags": [],
249
251
  "text": "The alignment of the top navigation content."
@@ -259,7 +261,7 @@ export class TopNavigation {
259
261
  "mutable": false,
260
262
  "complexType": {
261
263
  "original": "IcDeviceSizes",
262
- "resolved": "0 | 1200 | 576 | 768 | 992 | undefined",
264
+ "resolved": "0 | 1200 | 576 | 768 | 992",
263
265
  "references": {
264
266
  "IcDeviceSizes": {
265
267
  "location": "import",
@@ -269,7 +271,7 @@ export class TopNavigation {
269
271
  }
270
272
  },
271
273
  "required": false,
272
- "optional": true,
274
+ "optional": false,
273
275
  "docs": {
274
276
  "tags": [],
275
277
  "text": "Can set a custom breakpoint for the top navigation to switch to mobile mode.\nMust be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`."
@@ -285,11 +287,11 @@ export class TopNavigation {
285
287
  "mutable": false,
286
288
  "complexType": {
287
289
  "original": "string",
288
- "resolved": "string | undefined",
290
+ "resolved": "string",
289
291
  "references": {}
290
292
  },
291
293
  "required": false,
292
- "optional": true,
294
+ "optional": false,
293
295
  "docs": {
294
296
  "tags": [],
295
297
  "text": "The URL to navigate to when the app title is clicked."
@@ -305,11 +307,11 @@ export class TopNavigation {
305
307
  "mutable": false,
306
308
  "complexType": {
307
309
  "original": "boolean",
308
- "resolved": "boolean | undefined",
310
+ "resolved": "boolean",
309
311
  "references": {}
310
312
  },
311
313
  "required": false,
312
- "optional": true,
314
+ "optional": false,
313
315
  "docs": {
314
316
  "tags": [],
315
317
  "text": "If `true`, the flyout navigation menu on small devices will be contained by the parent element."
@@ -325,11 +327,11 @@ export class TopNavigation {
325
327
  "mutable": false,
326
328
  "complexType": {
327
329
  "original": "string",
328
- "resolved": "string | undefined",
330
+ "resolved": "string",
329
331
  "references": {}
330
332
  },
331
333
  "required": false,
332
- "optional": true,
334
+ "optional": false,
333
335
  "docs": {
334
336
  "tags": [],
335
337
  "text": "The short title of the app to be displayed at small screen sizes in place of the app title."
@@ -345,11 +347,11 @@ export class TopNavigation {
345
347
  "mutable": false,
346
348
  "complexType": {
347
349
  "original": "string",
348
- "resolved": "string | undefined",
350
+ "resolved": "string",
349
351
  "references": {}
350
352
  },
351
353
  "required": false,
352
- "optional": true,
354
+ "optional": false,
353
355
  "docs": {
354
356
  "tags": [],
355
357
  "text": "The status info to be displayed."
@@ -365,7 +367,7 @@ export class TopNavigation {
365
367
  "mutable": false,
366
368
  "complexType": {
367
369
  "original": "IcThemeMode",
368
- "resolved": "\"dark\" | \"inherit\" | \"light\" | undefined",
370
+ "resolved": "\"dark\" | \"inherit\" | \"light\"",
369
371
  "references": {
370
372
  "IcThemeMode": {
371
373
  "location": "import",
@@ -375,7 +377,7 @@ export class TopNavigation {
375
377
  }
376
378
  },
377
379
  "required": false,
378
- "optional": true,
380
+ "optional": false,
379
381
  "docs": {
380
382
  "tags": [],
381
383
  "text": "Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component."
@@ -391,11 +393,11 @@ export class TopNavigation {
391
393
  "mutable": false,
392
394
  "complexType": {
393
395
  "original": "string",
394
- "resolved": "string | undefined",
396
+ "resolved": "string",
395
397
  "references": {}
396
398
  },
397
399
  "required": false,
398
- "optional": true,
400
+ "optional": false,
399
401
  "docs": {
400
402
  "tags": [],
401
403
  "text": "The version info to be displayed."
@@ -1 +1 @@
1
- {"version":3,"file":"ic-top-navigation.js","sourceRoot":"","sources":["../../../src/components/ic-top-navigation/ic-top-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcBrand,\n IcDeviceSizes,\n IcValueEventDetail,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport { IcSearchBarBlurEventDetail } from \"../ic-search-bar/ic-search-bar.types\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n private hasAppIcon: boolean = false;\n private hasIconButtons: boolean = false;\n private hasNavigation: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private mobileSearchButtonEl?: HTMLIcButtonElement;\n private resizeObserver: ResizeObserver | null = null;\n private searchBar: HTMLIcSearchBarElement | null = null;\n\n @Element() el: HTMLIcTopNavigationElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() hasFullWidthSearchBar: boolean = false;\n @State() mobileSearchBarVisible: boolean = false;\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() searchValue: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned?: IcAlignment = \"full-width\";\n /**\n * Can set a custom breakpoint for the top navigation to switch to mobile mode.\n * Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\n */\n @Prop() customMobileBreakpoint?: IcDeviceSizes = DEVICE_SIZES.L;\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href?: string = \"/\";\n\n /**\n * If `true`, the flyout navigation menu on small devices will be contained by the parent element.\n */\n @Prop() inline?: boolean = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle?: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status?: string = \"\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version?: string = \"\";\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle?: string;\n\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * Emitted when the top navigation is resized.\n */\n @Event() icTopNavResized: EventEmitter<{ size: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n componentWillRender(): void {\n this.checkSlots();\n }\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n this.el.shadowRoot?.querySelector<HTMLElement>(\"#menu-button\")?.focus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler({\n detail,\n }: CustomEvent<IcSearchBarBlurEventDetail>): void {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value as string;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler({ detail }: CustomEvent<IcValueEventDetail>): void {\n this.searchValue = detail.value as string;\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.foregroundColor = detail.mode;\n }\n\n private checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot?.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot?.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n\n private toggleSearchBar(): void {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (this.searchBar !== null) {\n this.mobileSearchButtonEl?.setAttribute(\n \"aria-label\",\n `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`\n );\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n }\n }\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n }\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint!) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n render() {\n const {\n appTitle,\n contentAligned,\n customMobileBreakpoint,\n deviceSize,\n el,\n foregroundColor,\n hasAppIcon,\n hasFullWidthSearchBar,\n hasIconButtons,\n hasNavigation,\n hasSearchSlotContent,\n href,\n inline,\n menuButtonClick,\n mobileSearchBarVisible,\n navMenuVisible,\n searchButtonClickHandler,\n searchButtonMouseDownHandler,\n shortAppTitle,\n status,\n version,\n theme,\n } = this;\n\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent =\n hasNavigation || hasIconButtons || hasStatus || hasVersion;\n\n const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint!;\n\n const appTitleVariant: IcTypographyVariants = overMobileBreakpoint\n ? deviceSize <= DEVICE_SIZES.S\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n\n const mobileSearchButtonTitle = `${\n mobileSearchBarVisible ? \"Hide\" : \"Show\"\n } search`;\n const menuSize = deviceSize <= DEVICE_SIZES.S ? \"small\" : \"medium\";\n\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <Host\n class={{\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcBrandForegroundEnum.Dark]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || hasAppTitleSlot) && (\n <Component class=\"title-link\" {...attrs}>\n {hasAppIcon && (\n <div class=\"app-icon-container\">\n <slot name=\"app-icon\" />\n </div>\n )}\n {deviceSize <= DEVICE_SIZES.S &&\n (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (\n <ic-typography\n variant=\"subtitle-small\"\n aria-label={\n (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})`\n }\n >\n <h1>\n {shortAppTitleSlot ? (\n <slot name=\"short-app-title\"></slot>\n ) : (\n shortAppTitle\n )}\n </h1>\n </ic-typography>\n ) : (\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {hasAppTitleSlot ? (\n <slot name=\"app-title\"></slot>\n ) : (\n appTitle\n )}\n </h1>\n </ic-typography>\n )}\n </Component>\n )}\n {hasStatus && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {hasVersion && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {!overMobileBreakpoint && <slot name=\"search\"></slot>}\n\n {hasSearchSlotContent && overMobileBreakpoint && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={searchButtonMouseDownHandler}\n variant=\"icon-tertiary\"\n monochrome\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n theme={foregroundColor as IcThemeMode}\n onClick={searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n\n {hasIconButtons && !overMobileBreakpoint && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && overMobileBreakpoint && (\n <div class=\"menu-button-container\">\n <span\n id=\"navigation-landmark-button-text\"\n class=\"navigation-landmark-button-text\"\n aria-hidden=\"true\"\n >\n Main navigation button\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-button-text\"\n aria-hidden={`${navMenuVisible}`}\n >\n <ic-button\n id=\"menu-button\"\n theme={foregroundColor as IcThemeMode}\n variant=\"secondary\"\n monochrome\n aria-expanded=\"false\"\n aria-haspopup=\"true\"\n aria-label={`Open ${\n hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"left-icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n\n {mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {hasNavigation && !overMobileBreakpoint && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main pages\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll\n monochrome\n appearance={foregroundColor}\n >\n <ul class=\"navigation-item-list\" tabindex=\"-1\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-horizontal-scroll>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {navMenuVisible && (\n <ic-navigation-menu\n version={version}\n status={status}\n class={{\n [\"inline\"]: !!inline,\n }}\n >\n {hasIconButtons && (\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-top-navigation.js","sourceRoot":"","sources":["../../../src/components/ic-top-navigation/ic-top-navigation.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Host,\n Prop,\n h,\n State,\n Listen,\n Event,\n EventEmitter,\n Watch,\n Fragment,\n} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcBrand,\n IcDeviceSizes,\n IcValueEventDetail,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport { IcSearchBarBlurEventDetail } from \"../ic-search-bar/ic-search-bar.types\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n private hasAppIcon = false;\n private hasIconButtons = false;\n private hasNavigation = false;\n private hasSearchSlotContent = false;\n private mobileSearchButtonEl?: HTMLIcButtonElement;\n private resizeObserver: ResizeObserver | null = null;\n private searchBar: HTMLIcSearchBarElement | null = null;\n private menuButtonEl?: HTMLIcButtonElement;\n\n @Element() el: HTMLIcTopNavigationElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n @State() hasFullWidthSearchBar = false;\n @State() mobileSearchBarVisible = false;\n @State() mobileSearchHiddenOnBlur = false;\n @State() navMenuVisible = false;\n @State() searchButtonClick = false;\n @State() searchValue = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\n /**\n * Can set a custom breakpoint for the top navigation to switch to mobile mode.\n * Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\n */\n @Prop() customMobileBreakpoint: IcDeviceSizes = DEVICE_SIZES.L;\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href = \"/\";\n\n /**\n * If `true`, the flyout navigation menu on small devices will be contained by the parent element.\n */\n @Prop() inline = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status = \"\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version = \"\";\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle?: string;\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * Emitted when the top navigation is resized.\n */\n @Event() icTopNavResized: EventEmitter<{ size: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n if (!isSlotUsed(this.el, \"app-title\")) {\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n }\n\n componentWillRender(): void {\n this.checkSlots();\n }\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n this.menuButtonEl?.setFocus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler({\n detail,\n }: CustomEvent<IcSearchBarBlurEventDetail>): void {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value as string;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler({ detail }: CustomEvent<IcValueEventDetail>): void {\n this.searchValue = detail.value;\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler({ detail }: CustomEvent<IcBrand>): void {\n this.foregroundColor = detail.mode;\n }\n\n private checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n\n private initialiseSearchBar = () => {\n if (!this.hasSearchSlotContent) return;\n\n const slot = getSlot(this.el, \"search\");\n if (slot?.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot?.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n };\n\n private toggleSearchBar = () => {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (!this.searchBar) return;\n\n this.mobileSearchButtonEl?.setAttribute(\n \"aria-label\",\n `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`\n );\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n };\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu = (show: boolean) => {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n };\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize === this.deviceSize) return;\n\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar?.focus();\n }, 100);\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n render() {\n const {\n appTitle,\n contentAligned,\n customMobileBreakpoint,\n deviceSize,\n el,\n foregroundColor,\n hasAppIcon,\n hasFullWidthSearchBar,\n hasIconButtons,\n hasNavigation,\n hasSearchSlotContent,\n href,\n inline,\n menuButtonClick,\n mobileSearchBarVisible,\n navMenuVisible,\n searchButtonClickHandler,\n searchButtonMouseDownHandler,\n shortAppTitle,\n status,\n version,\n theme,\n } = this;\n\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent =\n hasNavigation || hasIconButtons || hasStatus || hasVersion;\n\n const isSmallDeviceSize = deviceSize <= DEVICE_SIZES.S;\n\n const searchButtonSize = isSmallDeviceSize ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint;\n\n const appTitleVariant: IcTypographyVariants = overMobileBreakpoint\n ? isSmallDeviceSize\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n\n const mobileSearchButtonTitle = `${\n mobileSearchBarVisible ? \"Hide\" : \"Show\"\n } search`;\n const menuSize = isSmallDeviceSize ? \"small\" : \"medium\";\n\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <Host\n class={{\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcBrandForegroundEnum.Dark]:\n foregroundColor === IcBrandForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || hasAppTitleSlot) && (\n <Component class=\"title-link\" {...attrs}>\n {hasAppIcon && (\n <div class=\"app-icon-container\">\n <slot name=\"app-icon\" />\n </div>\n )}\n {isSmallDeviceSize &&\n (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (\n <ic-typography\n variant=\"subtitle-small\"\n aria-label={\n (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})`\n }\n >\n <h1>\n {shortAppTitleSlot ? (\n <slot name=\"short-app-title\"></slot>\n ) : (\n shortAppTitle\n )}\n </h1>\n </ic-typography>\n ) : (\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {hasAppTitleSlot ? (\n <slot name=\"app-title\"></slot>\n ) : (\n appTitle\n )}\n </h1>\n </ic-typography>\n )}\n </Component>\n )}\n {hasStatus && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {hasVersion && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {!overMobileBreakpoint ? (\n <Fragment>\n <slot name=\"search\"></slot>\n {hasIconButtons && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n </Fragment>\n ) : (\n <Fragment>\n {hasSearchSlotContent && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={searchButtonMouseDownHandler}\n variant=\"icon-tertiary\"\n monochrome\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n theme={foregroundColor as IcThemeMode}\n onClick={searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n {hasMenuContent && (\n <div class=\"menu-button-container\">\n <span\n id=\"navigation-landmark-button-text\"\n class=\"navigation-landmark-button-text\"\n aria-hidden=\"true\"\n >\n Main navigation button\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-button-text\"\n aria-hidden={`${navMenuVisible}`}\n >\n <ic-button\n id=\"menu-button\"\n ref={(el) => (this.menuButtonEl = el)}\n theme={foregroundColor as IcThemeMode}\n variant=\"secondary\"\n monochrome\n aria-expanded=\"false\"\n aria-haspopup=\"true\"\n aria-label={`Open ${\n hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"left-icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </Fragment>\n )}\n </div>\n </div>\n )}\n </div>\n\n {mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {hasNavigation && !overMobileBreakpoint && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main pages\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll\n monochrome\n appearance={foregroundColor}\n >\n <ul class=\"navigation-item-list\" tabindex=\"-1\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-horizontal-scroll>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {navMenuVisible && (\n <ic-navigation-menu\n version={version}\n status={status}\n class={{\n inline,\n }}\n >\n {hasIconButtons && (\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -163,7 +163,7 @@ export class Typography {
163
163
  render() {
164
164
  var _a, _b;
165
165
  const { variant, applyVerticalMargins, maxLines, truncated, expanded, strikethrough, underline, italic, bold, theme, } = this;
166
- return (h(Host, { key: 'd386fa51fb7834aad97904a5b757551c388af06b', class: {
166
+ return (h(Host, { key: '5cc23b5c8822124b4963df5c55094a3408cbb813', class: {
167
167
  [`ic-typography-${variant}`]: true,
168
168
  [`ic-typography-vertical-margins-${variant}`]: !!applyVerticalMargins,
169
169
  ["ic-typography-bold"]: !!bold,
@@ -176,7 +176,7 @@ export class Typography {
176
176
  ((_b = (_a = this.el.getRootNode()) === null || _a === void 0 ? void 0 : _a.host) === null || _b === void 0 ? void 0 : _b.tagName) ===
177
177
  "IC-TOOLTIP") &&
178
178
  maxLines &&
179
- maxLines > 0 ? (h("div", { class: "trunc-wrapper", ref: (el) => (this.truncWrapperEl = el) }, h("slot", null))) : (h("slot", null)), variant === "body" && maxLines && maxLines > 0 && truncated && (h("button", { key: '10df0863dfe83f7195a631012461f438fb41a04c', class: { "trunc-btn": true, focus: this.truncButtonFocussed }, onFocus: this.truncButtonFocus, onBlur: this.truncButtonBlur, onMouseDown: this.truncButtonFocusFromMouse, onClick: this.toggleExpanded }, expanded ? "See less" : "See more"))));
179
+ maxLines > 0 ? (h("div", { class: "trunc-wrapper", ref: (el) => (this.truncWrapperEl = el) }, h("slot", null))) : (h("slot", null)), variant === "body" && maxLines && maxLines > 0 && truncated && (h("button", { key: '93e4f11420b64377f5fa5639bd8d7963c6191942', class: { "trunc-btn": true, focus: this.truncButtonFocussed }, onFocus: this.truncButtonFocus, onBlur: this.truncButtonBlur, onMouseDown: this.truncButtonFocusFromMouse, onClick: this.toggleExpanded }, expanded ? "See less" : "See more"))));
180
180
  }
181
181
  static get is() { return "ic-typography"; }
182
182
  static get encapsulation() { return "shadow"; }
@@ -7,6 +7,7 @@ const icAccordionCss = "/*! normalize.css v8.0.1 | MIT License | github.com/neco
7
7
  const IcAccordionStyle0 = icAccordionCss;
8
8
 
9
9
  let accordionIds = 0;
10
+ const EXPANDED_CONTENT_OPENED_CLASS = "expanded-content-opened";
10
11
  const Accordion = /*@__PURE__*/ proxyCustomElement(class Accordion extends HTMLElement {
11
12
  constructor() {
12
13
  super();
@@ -51,7 +52,7 @@ const Accordion = /*@__PURE__*/ proxyCustomElement(class Accordion extends HTMLE
51
52
  };
52
53
  this.setExpandedContentStyle = (ev, expandedContent) => {
53
54
  if (ev.propertyName === "height" && expandedContent.clientHeight > 0) {
54
- expandedContent.classList.add("expanded-content-opened");
55
+ expandedContent.classList.add(EXPANDED_CONTENT_OPENED_CLASS);
55
56
  expandedContent.style.height = "auto";
56
57
  }
57
58
  };
@@ -78,7 +79,7 @@ const Accordion = /*@__PURE__*/ proxyCustomElement(class Accordion extends HTMLE
78
79
  if (expandedContentEl.scrollHeight > 0 && !this.expanded) {
79
80
  expandedContentEl.style.height = "0";
80
81
  this.setAccordionAnimation(expandedContentEl, "300", "height", "ease-in");
81
- expandedContentEl.classList.remove("expanded-content-opened");
82
+ expandedContentEl.classList.remove(EXPANDED_CONTENT_OPENED_CLASS);
82
83
  }
83
84
  expandedContentEl.addEventListener("transitionend", (e) => {
84
85
  this.hideExpandedContent(e, expandedContentEl);
@@ -116,23 +117,24 @@ const Accordion = /*@__PURE__*/ proxyCustomElement(class Accordion extends HTMLE
116
117
  if (this.expanded && this.expandedContentEl) {
117
118
  this.expandedContentEl.style.height = "auto";
118
119
  this.expandedContentEl.style.setProperty(this.CONTENT_VISIBILITY_PROPERTY, "visible");
120
+ this.expandedContentEl.classList.add(EXPANDED_CONTENT_OPENED_CLASS);
119
121
  }
120
122
  }
121
123
  render() {
122
124
  const { size, disabled, expanded, theme } = this;
123
- return (h(Host, { key: '1af99baa1066daa75be1af7329ed0a79a6a7f3cf', id: this.accordionId, class: {
125
+ return (h(Host, { key: '9fff7c4dc37187f9a2d03ae477c48012ff17c870', id: this.accordionId, class: {
124
126
  ["ic-accordion-disabled"]: !!disabled,
125
127
  [`ic-theme-${theme}`]: theme !== "inherit",
126
- }, "aria-disabled": disabled ? "true" : "false" }, h("button", { key: '95695d5beebac9e84bc55159d8602182698ece75', ref: (el) => (this.accordionBtnHeading = el), id: `${this.accordionId}-button`, disabled: disabled, tabindex: disabled ? -1 : 0, class: {
128
+ }, "aria-disabled": disabled ? "true" : "false" }, h("button", { key: '0f83275fbfc435eb5b640bd76b9a9582fcb3dca0', ref: (el) => (this.accordionBtnHeading = el), id: `${this.accordionId}-button`, disabled: disabled, tabindex: disabled ? -1 : 0, class: {
127
129
  [`${size}`]: true,
128
130
  ["section-button"]: true,
129
131
  ["section-button-open"]: !!expanded && !disabled,
130
- }, "aria-expanded": `${expanded}`, "aria-controls": "expanded-content-area", onClick: this.toggleExpanded }, isSlotUsed(this.el, "icon") && (h("div", { key: '274fc2d72fefc6b7f52e4c11fb0dec81055aeb1e', class: "icon-container" }, h("slot", { key: 'b8fb45c64beba9a319776080ea7b764aa4a0b9db', name: "icon" }))), h("ic-typography", { key: 'c0ca1e3a7f4a8cb7b05a3892eec1db728162db91', variant: "subtitle-large", class: "section-header" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (this.heading)), h("span", { key: 'c8a70311d3d99114ff1f75c63dbbbbf1077e59c7', class: {
132
+ }, "aria-expanded": `${expanded}`, "aria-controls": "expanded-content-area", onClick: this.toggleExpanded }, isSlotUsed(this.el, "icon") && (h("div", { key: '41c88884df97917d026fbecb500c35b393045c7d', class: "icon-container" }, h("slot", { key: 'ddc6894db8ab81e27c971350e261d99b51759756', name: "icon" }))), h("ic-typography", { key: 'e0ca73dbe5a2d46dbe2f893d4405e3d82fd2a862', variant: "subtitle-large", class: "section-header" }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (this.heading)), h("span", { key: 'a95fad35c3e3f38415da026a93112079f74de4d7', class: {
131
133
  ["expand-chevron"]: true,
132
134
  ["content-expanded-chevron"]: !!expanded && !disabled,
133
- }, "aria-hidden": "true", innerHTML: chevronIcon })), h("div", { key: '2bbae7f78c0a88f767c64fa0849c6c13bd998128', class: {
135
+ }, "aria-hidden": "true", innerHTML: chevronIcon })), h("div", { key: '65b6322d5dde677528891631ecd9b95189948771', class: {
134
136
  ["expanded-content"]: true,
135
- }, "aria-labelledby": `${this.accordionId}-button`, role: "region", "aria-hidden": `${!expanded}`, id: "expanded-content-area", ref: (el) => (this.expandedContentEl = el) }, h("div", { key: '49f53a7ceb1a9a13f50542e93445bacd7d9d9a1e', class: "expanded-content-inner" }, this.message ? (h("ic-typography", { variant: "body" }, this.message)) : (h("slot", null))))));
137
+ }, "aria-labelledby": `${this.accordionId}-button`, role: "region", "aria-hidden": `${!expanded}`, id: "expanded-content-area", ref: (el) => (this.expandedContentEl = el) }, h("div", { key: 'de9ec00d55757be20c097082817529b652200263', class: "expanded-content-inner" }, this.message ? (h("ic-typography", { variant: "body" }, this.message)) : (h("slot", null))))));
136
138
  }
137
139
  get el() { return this; }
138
140
  static get watchers() { return {