@ukic/web-components 2.1.0-beta.7 → 2.1.0-beta.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (686) hide show
  1. package/dist/cjs/{check-icon-999d9877.js → check-icon-b2f60716.js} +2 -2
  2. package/dist/cjs/check-icon-b2f60716.js.map +1 -0
  3. package/dist/cjs/{chevron-icon-d175fe66.js → chevron-icon-2645d6b0.js} +2 -2
  4. package/dist/cjs/chevron-icon-2645d6b0.js.map +1 -0
  5. package/dist/cjs/core.cjs.js +2 -2
  6. package/dist/cjs/{helpers-81484ceb.js → helpers-6eb26e7a.js} +76 -3
  7. package/dist/cjs/helpers-6eb26e7a.js.map +1 -0
  8. package/dist/cjs/ic-alert.cjs.entry.js +4 -25
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +7 -5
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +2 -2
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +13 -4
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +23 -31
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card.cjs.entry.js +15 -4
  18. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js +4 -4
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox.cjs.entry.js +14 -4
  22. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-chip.cjs.entry.js +13 -4
  24. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  26. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-data-entity.cjs.entry.js +2 -2
  28. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  30. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-divider.cjs.entry.js +3 -3
  32. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-footer-link-group.cjs.entry.js +4 -3
  34. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-footer-link.cjs.entry.js +4 -3
  36. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-footer.cjs.entry.js +3 -3
  38. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-hero.cjs.entry.js +3 -3
  40. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +158 -0
  42. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -0
  43. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +44 -29
  44. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-input-label_2.cjs.entry.js +6 -8
  46. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-link.cjs.entry.js +12 -3
  48. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-button.cjs.entry.js +5 -4
  50. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-navigation-group.cjs.entry.js +6 -5
  52. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-navigation-item.cjs.entry.js +6 -5
  54. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-menu.cjs.entry.js +8 -8
  56. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-page-header.cjs.entry.js +4 -4
  58. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-radio-group.cjs.entry.js +13 -4
  60. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-radio-option.cjs.entry.js +14 -5
  62. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-search-bar.cjs.entry.js +23 -23
  64. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  66. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-select.cjs.entry.js +162 -66
  68. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-side-navigation.cjs.entry.js +17 -9
  70. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-skeleton.cjs.entry.js +1 -1
  72. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  73. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-step.cjs.entry.js +3 -3
  75. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-stepper.cjs.entry.js +13 -10
  77. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-switch.cjs.entry.js +12 -3
  79. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  81. package/dist/cjs/ic-tab-group.cjs.entry.js +8 -117
  82. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  84. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-tab.cjs.entry.js +10 -2
  86. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-text-field.cjs.entry.js +5 -5
  88. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  90. package/dist/cjs/ic-toast-region.cjs.entry.js +48 -0
  91. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -0
  92. package/dist/cjs/ic-toast.cjs.entry.js +165 -0
  93. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -0
  94. package/dist/cjs/ic-top-navigation.cjs.entry.js +15 -10
  95. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  97. package/dist/cjs/{index-3ef30d9d.js → index-f79a4e53.js} +17 -2
  98. package/dist/cjs/index-f79a4e53.js.map +1 -0
  99. package/dist/cjs/loader.cjs.js +2 -2
  100. package/dist/cjs/types-3eb02246.js.map +1 -1
  101. package/dist/collection/assets/back-icon.svg +1 -1
  102. package/dist/collection/assets/check-icon.svg +1 -1
  103. package/dist/collection/assets/chevron-icon.svg +1 -1
  104. package/dist/collection/assets/dismiss-icon.svg +1 -1
  105. package/dist/collection/assets/error-icon.svg +3 -3
  106. package/dist/collection/assets/info-icon.svg +3 -3
  107. package/dist/collection/assets/neutral-icon.svg +3 -3
  108. package/dist/collection/assets/success-icon.svg +3 -3
  109. package/dist/collection/assets/warning-icon.svg +3 -3
  110. package/dist/collection/collection-manifest.json +3 -0
  111. package/dist/collection/components/ic-alert/ic-alert.css +13 -13
  112. package/dist/collection/components/ic-alert/ic-alert.js +5 -16
  113. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  114. package/dist/collection/components/ic-back-to-top/assets/ArrowUpward.svg +2 -2
  115. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +17 -7
  116. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +1 -0
  117. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  118. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +29 -0
  119. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  120. package/dist/collection/components/ic-button/ic-button.css +16 -15
  121. package/dist/collection/components/ic-button/ic-button.js +4 -19
  122. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  123. package/dist/collection/components/ic-card/ic-card.css +4 -4
  124. package/dist/collection/components/ic-card/ic-card.js +32 -1
  125. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  126. package/dist/collection/components/ic-checkbox/ic-checkbox.css +28 -30
  127. package/dist/collection/components/ic-checkbox/ic-checkbox.js +34 -1
  128. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  129. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +18 -2
  130. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +1 -1
  131. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  132. package/dist/collection/components/ic-chip/ic-chip.css +11 -10
  133. package/dist/collection/components/ic-chip/ic-chip.js +29 -0
  134. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  135. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +5 -1
  136. package/dist/collection/components/ic-data-entity/ic-data-entity.css +1 -1
  137. package/dist/collection/components/ic-data-row/ic-data-row.css +7 -7
  138. package/dist/collection/components/ic-divider/ic-divider.css +1 -1
  139. package/dist/collection/components/ic-footer/ic-footer.css +4 -4
  140. package/dist/collection/components/ic-footer-link/ic-footer-link.css +1 -1
  141. package/dist/collection/components/ic-footer-link/ic-footer-link.js +1 -0
  142. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  143. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +1 -1
  144. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +1 -0
  145. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  146. package/dist/collection/components/ic-hero/ic-hero.css +30 -30
  147. package/dist/collection/components/ic-horizontal-scroll/assets/left-arrow.svg +3 -0
  148. package/dist/collection/components/ic-horizontal-scroll/assets/right-arrow.svg +3 -0
  149. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +539 -0
  150. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +213 -0
  151. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -0
  152. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.js +34 -0
  153. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.js.map +1 -0
  154. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +16 -15
  155. package/dist/collection/components/ic-input-container/ic-input-container.css +0 -1
  156. package/dist/collection/components/ic-input-validation/ic-input-validation.css +4 -5
  157. package/dist/collection/components/ic-link/ic-link.css +0 -9
  158. package/dist/collection/components/ic-link/ic-link.js +30 -1
  159. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  160. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +5 -5
  161. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +15 -12
  162. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  163. package/dist/collection/components/ic-menu/ic-menu.css +19 -14
  164. package/dist/collection/components/ic-menu/ic-menu.js +71 -44
  165. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  166. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +4 -3
  167. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  168. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +14 -7
  169. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +3 -2
  170. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  171. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +30 -15
  172. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +3 -2
  173. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  174. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +15 -11
  175. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +5 -5
  176. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  177. package/dist/collection/components/ic-page-header/ic-page-header.css +14 -5
  178. package/dist/collection/components/ic-page-header/ic-page-header.js +1 -1
  179. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  180. package/dist/collection/components/ic-radio-group/ic-radio-group.css +32 -0
  181. package/dist/collection/components/ic-radio-group/ic-radio-group.js +34 -2
  182. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  183. package/dist/collection/components/ic-radio-option/ic-radio-option.css +25 -34
  184. package/dist/collection/components/ic-radio-option/ic-radio-option.js +31 -2
  185. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  186. package/dist/collection/components/ic-search-bar/ic-search-bar.css +24 -18
  187. package/dist/collection/components/ic-search-bar/ic-search-bar.js +21 -33
  188. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  189. package/dist/collection/components/ic-section-container/ic-section-container.css +1 -0
  190. package/dist/collection/components/ic-select/assets/Expand.svg +1 -1
  191. package/dist/collection/components/ic-select/ic-select.css +30 -17
  192. package/dist/collection/components/ic-select/ic-select.js +256 -68
  193. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  194. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +42 -24
  195. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +16 -7
  196. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  197. package/dist/collection/components/ic-status-tag/ic-status-tag.css +7 -7
  198. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  199. package/dist/collection/components/ic-step/ic-step.css +11 -10
  200. package/dist/collection/components/ic-stepper/ic-stepper.js +12 -9
  201. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  202. package/dist/collection/components/ic-switch/ic-switch.css +19 -19
  203. package/dist/collection/components/ic-switch/ic-switch.js +29 -0
  204. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  205. package/dist/collection/components/ic-tab/ic-tab.css +1 -1
  206. package/dist/collection/components/ic-tab/ic-tab.js +28 -0
  207. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  208. package/dist/collection/components/ic-tab-group/ic-tab-group.css +6 -120
  209. package/dist/collection/components/ic-tab-group/ic-tab-group.js +7 -151
  210. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  211. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +4 -0
  212. package/dist/collection/components/ic-text-field/ic-text-field.css +6 -7
  213. package/dist/collection/components/ic-text-field/ic-text-field.js +4 -4
  214. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  215. package/dist/collection/components/ic-toast/ic-toast.css +597 -0
  216. package/dist/collection/components/ic-toast/ic-toast.js +382 -0
  217. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -0
  218. package/dist/collection/components/ic-toast/ic-toast.test.a11y.js +16 -0
  219. package/dist/collection/components/ic-toast/ic-toast.test.a11y.js.map +1 -0
  220. package/dist/collection/components/ic-toast/ic-toast.types.js +2 -0
  221. package/dist/collection/components/ic-toast/ic-toast.types.js.map +1 -0
  222. package/dist/collection/components/ic-toast-region/ic-toast-region.js +81 -0
  223. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -0
  224. package/dist/collection/components/ic-tooltip/ic-tooltip.css +8 -10
  225. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +27 -50
  226. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +15 -9
  227. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  228. package/dist/collection/utils/constants.js +28 -0
  229. package/dist/collection/utils/constants.js.map +1 -1
  230. package/dist/collection/utils/helpers.js +12 -3
  231. package/dist/collection/utils/helpers.js.map +1 -1
  232. package/dist/collection/utils/types.js.map +1 -1
  233. package/dist/components/check-icon.js +1 -1
  234. package/dist/components/chevron-icon.js +1 -1
  235. package/dist/components/helpers.js +70 -3
  236. package/dist/components/helpers.js.map +1 -1
  237. package/dist/components/ic-alert.js +3 -24
  238. package/dist/components/ic-alert.js.map +1 -1
  239. package/dist/components/ic-back-to-top.js +6 -4
  240. package/dist/components/ic-back-to-top.js.map +1 -1
  241. package/dist/components/ic-breadcrumb2.js +13 -3
  242. package/dist/components/ic-breadcrumb2.js.map +1 -1
  243. package/dist/components/ic-button2.js +5 -17
  244. package/dist/components/ic-button2.js.map +1 -1
  245. package/dist/components/ic-card.js +14 -2
  246. package/dist/components/ic-card.js.map +1 -1
  247. package/dist/components/ic-checkbox-group.js +2 -2
  248. package/dist/components/ic-checkbox-group.js.map +1 -1
  249. package/dist/components/ic-checkbox.js +15 -4
  250. package/dist/components/ic-checkbox.js.map +1 -1
  251. package/dist/components/ic-chip.js +14 -4
  252. package/dist/components/ic-chip.js.map +1 -1
  253. package/dist/components/ic-classification-banner.js +1 -1
  254. package/dist/components/ic-classification-banner.js.map +1 -1
  255. package/dist/components/ic-data-entity.js +1 -1
  256. package/dist/components/ic-data-entity.js.map +1 -1
  257. package/dist/components/ic-data-row.js +1 -1
  258. package/dist/components/ic-data-row.js.map +1 -1
  259. package/dist/components/ic-divider2.js +1 -1
  260. package/dist/components/ic-divider2.js.map +1 -1
  261. package/dist/components/ic-footer-link-group.js +3 -2
  262. package/dist/components/ic-footer-link-group.js.map +1 -1
  263. package/dist/components/ic-footer-link.js +3 -2
  264. package/dist/components/ic-footer-link.js.map +1 -1
  265. package/dist/components/ic-footer.js +1 -1
  266. package/dist/components/ic-footer.js.map +1 -1
  267. package/dist/components/ic-hero.js +1 -1
  268. package/dist/components/ic-hero.js.map +1 -1
  269. package/dist/components/ic-horizontal-scroll.d.ts +11 -0
  270. package/dist/components/ic-horizontal-scroll.js +8 -0
  271. package/dist/components/ic-horizontal-scroll.js.map +1 -0
  272. package/dist/components/ic-horizontal-scroll2.js +199 -0
  273. package/dist/components/ic-horizontal-scroll2.js.map +1 -0
  274. package/dist/components/ic-input-component-container2.js +2 -3
  275. package/dist/components/ic-input-component-container2.js.map +1 -1
  276. package/dist/components/ic-input-container2.js +1 -1
  277. package/dist/components/ic-input-container2.js.map +1 -1
  278. package/dist/components/ic-input-label2.js +1 -1
  279. package/dist/components/ic-input-validation2.js +2 -4
  280. package/dist/components/ic-input-validation2.js.map +1 -1
  281. package/dist/components/ic-link2.js +13 -3
  282. package/dist/components/ic-link2.js.map +1 -1
  283. package/dist/components/ic-loading-indicator2.js +16 -13
  284. package/dist/components/ic-loading-indicator2.js.map +1 -1
  285. package/dist/components/ic-menu2.js +39 -23
  286. package/dist/components/ic-menu2.js.map +1 -1
  287. package/dist/components/ic-navigation-button.js +4 -3
  288. package/dist/components/ic-navigation-button.js.map +1 -1
  289. package/dist/components/ic-navigation-group.js +4 -3
  290. package/dist/components/ic-navigation-group.js.map +1 -1
  291. package/dist/components/ic-navigation-item.js +4 -3
  292. package/dist/components/ic-navigation-item.js.map +1 -1
  293. package/dist/components/ic-navigation-menu2.js +6 -6
  294. package/dist/components/ic-navigation-menu2.js.map +1 -1
  295. package/dist/components/ic-page-header.js +28 -4
  296. package/dist/components/ic-page-header.js.map +1 -1
  297. package/dist/components/ic-radio-group.js +13 -3
  298. package/dist/components/ic-radio-group.js.map +1 -1
  299. package/dist/components/ic-radio-option.js +15 -5
  300. package/dist/components/ic-radio-option.js.map +1 -1
  301. package/dist/components/ic-search-bar.js +23 -23
  302. package/dist/components/ic-search-bar.js.map +1 -1
  303. package/dist/components/ic-section-container2.js +1 -1
  304. package/dist/components/ic-section-container2.js.map +1 -1
  305. package/dist/components/ic-select.js +165 -65
  306. package/dist/components/ic-select.js.map +1 -1
  307. package/dist/components/ic-side-navigation.js +14 -6
  308. package/dist/components/ic-side-navigation.js.map +1 -1
  309. package/dist/components/ic-status-tag.js +1 -1
  310. package/dist/components/ic-status-tag.js.map +1 -1
  311. package/dist/components/ic-step.js +1 -1
  312. package/dist/components/ic-step.js.map +1 -1
  313. package/dist/components/ic-stepper.js +12 -9
  314. package/dist/components/ic-stepper.js.map +1 -1
  315. package/dist/components/ic-switch.js +13 -3
  316. package/dist/components/ic-switch.js.map +1 -1
  317. package/dist/components/ic-tab-group.js +29 -124
  318. package/dist/components/ic-tab-group.js.map +1 -1
  319. package/dist/components/ic-tab-panel.js +1 -1
  320. package/dist/components/ic-tab-panel.js.map +1 -1
  321. package/dist/components/ic-tab.js +11 -2
  322. package/dist/components/ic-tab.js.map +1 -1
  323. package/dist/components/ic-text-field2.js +4 -4
  324. package/dist/components/ic-text-field2.js.map +1 -1
  325. package/dist/components/ic-toast-region.d.ts +11 -0
  326. package/dist/components/ic-toast-region.js +63 -0
  327. package/dist/components/ic-toast-region.js.map +1 -0
  328. package/dist/components/ic-toast.d.ts +11 -0
  329. package/dist/components/ic-toast.js +214 -0
  330. package/dist/components/ic-toast.js.map +1 -0
  331. package/dist/components/ic-tooltip2.js +1 -1
  332. package/dist/components/ic-tooltip2.js.map +1 -1
  333. package/dist/components/ic-top-navigation.js +21 -10
  334. package/dist/components/ic-top-navigation.js.map +1 -1
  335. package/dist/components/index.d.ts +3 -0
  336. package/dist/components/index.js +3 -0
  337. package/dist/components/index.js.map +1 -1
  338. package/dist/components/types.js.map +1 -1
  339. package/dist/core/core.css +1 -1
  340. package/dist/core/core.esm.js +1 -1
  341. package/dist/core/core.esm.js.map +1 -1
  342. package/dist/core/p-1724000c.js +2 -0
  343. package/dist/core/p-1724000c.js.map +1 -0
  344. package/dist/core/p-17f91c94.entry.js +2 -0
  345. package/dist/core/p-17f91c94.entry.js.map +1 -0
  346. package/dist/core/p-18ae4b6d.entry.js +2 -0
  347. package/dist/core/p-18ae4b6d.entry.js.map +1 -0
  348. package/dist/core/p-18bf3cb0.entry.js +2 -0
  349. package/dist/core/p-18bf3cb0.entry.js.map +1 -0
  350. package/dist/core/p-24240e11.js +2 -0
  351. package/dist/core/p-2642f880.entry.js +2 -0
  352. package/dist/core/p-2642f880.entry.js.map +1 -0
  353. package/dist/core/p-284970bc.entry.js +2 -0
  354. package/dist/core/p-284970bc.entry.js.map +1 -0
  355. package/dist/core/p-31a595c1.entry.js +2 -0
  356. package/dist/core/p-31a595c1.entry.js.map +1 -0
  357. package/dist/core/p-35a03442.entry.js +2 -0
  358. package/dist/core/p-35a03442.entry.js.map +1 -0
  359. package/dist/core/p-360adc51.entry.js +2 -0
  360. package/dist/core/p-360adc51.entry.js.map +1 -0
  361. package/dist/core/p-3dda76db.entry.js +2 -0
  362. package/dist/core/p-3dda76db.entry.js.map +1 -0
  363. package/dist/core/p-41e239cb.entry.js +2 -0
  364. package/dist/core/p-41e239cb.entry.js.map +1 -0
  365. package/dist/core/p-44c9612c.entry.js +2 -0
  366. package/dist/core/p-44c9612c.entry.js.map +1 -0
  367. package/dist/core/p-521be4e2.entry.js +2 -0
  368. package/dist/core/p-521be4e2.entry.js.map +1 -0
  369. package/dist/core/{p-f9370be6.js → p-5450cebf.js} +3 -3
  370. package/dist/core/p-5450cebf.js.map +1 -0
  371. package/dist/core/{p-c5e453eb.entry.js → p-55512a85.entry.js} +2 -2
  372. package/dist/core/p-55512a85.entry.js.map +1 -0
  373. package/dist/core/p-560c06af.entry.js +2 -0
  374. package/dist/core/p-560c06af.entry.js.map +1 -0
  375. package/dist/core/p-57f2c81c.entry.js +2 -0
  376. package/dist/core/p-57f2c81c.entry.js.map +1 -0
  377. package/dist/core/p-5b083ce5.entry.js +2 -0
  378. package/dist/core/p-5b083ce5.entry.js.map +1 -0
  379. package/dist/core/p-62b3516e.entry.js +2 -0
  380. package/dist/core/p-62b3516e.entry.js.map +1 -0
  381. package/dist/core/{p-f760198e.entry.js → p-691ea0f2.entry.js} +2 -2
  382. package/dist/core/p-6f57b13c.js.map +1 -1
  383. package/dist/core/p-7818d958.entry.js +2 -0
  384. package/dist/core/p-7818d958.entry.js.map +1 -0
  385. package/dist/core/p-7a0bf893.entry.js +2 -0
  386. package/dist/core/p-7a0bf893.entry.js.map +1 -0
  387. package/dist/core/p-7a9bc7f2.entry.js +2 -0
  388. package/dist/core/p-7a9bc7f2.entry.js.map +1 -0
  389. package/dist/core/{p-e93e9aa3.entry.js → p-7fd50355.entry.js} +2 -2
  390. package/dist/core/p-7fd50355.entry.js.map +1 -0
  391. package/dist/core/{p-9e684c58.entry.js → p-897e967a.entry.js} +2 -2
  392. package/dist/core/p-8c7f4343.js +2 -0
  393. package/dist/core/p-8f1176c6.entry.js +2 -0
  394. package/dist/core/p-8f1176c6.entry.js.map +1 -0
  395. package/dist/core/{p-9b4022d7.entry.js → p-8ffa00c9.entry.js} +2 -2
  396. package/dist/core/p-8ffa00c9.entry.js.map +1 -0
  397. package/dist/core/p-91a8db51.entry.js +2 -0
  398. package/dist/core/p-91a8db51.entry.js.map +1 -0
  399. package/dist/core/p-a09d853e.entry.js +2 -0
  400. package/dist/core/p-a09d853e.entry.js.map +1 -0
  401. package/dist/core/p-a667e329.entry.js +2 -0
  402. package/dist/core/p-a667e329.entry.js.map +1 -0
  403. package/dist/core/{p-6be5e06b.entry.js → p-ad2477d8.entry.js} +2 -2
  404. package/dist/core/p-ad2477d8.entry.js.map +1 -0
  405. package/dist/core/p-b35ae170.entry.js +2 -0
  406. package/dist/core/{p-c320fa70.entry.js.map → p-b35ae170.entry.js.map} +1 -1
  407. package/dist/core/p-b40bd77c.entry.js +2 -0
  408. package/dist/core/p-b40bd77c.entry.js.map +1 -0
  409. package/dist/core/p-b4234318.entry.js +2 -0
  410. package/dist/core/p-b4234318.entry.js.map +1 -0
  411. package/dist/core/p-ba8d6c23.entry.js +2 -0
  412. package/dist/core/p-ba8d6c23.entry.js.map +1 -0
  413. package/dist/core/p-bd819f68.entry.js +2 -0
  414. package/dist/core/p-bd819f68.entry.js.map +1 -0
  415. package/dist/core/{p-4f1a7195.entry.js → p-c4a7c734.entry.js} +2 -2
  416. package/dist/core/p-c72e4b75.entry.js +2 -0
  417. package/dist/core/p-c72e4b75.entry.js.map +1 -0
  418. package/dist/core/p-c7b86643.entry.js +2 -0
  419. package/dist/core/p-c7b86643.entry.js.map +1 -0
  420. package/dist/core/p-c8f07be6.entry.js +2 -0
  421. package/dist/core/p-c8f07be6.entry.js.map +1 -0
  422. package/dist/core/{p-6d0eaaeb.entry.js → p-c9068822.entry.js} +2 -2
  423. package/dist/core/p-cccbf2bf.entry.js +2 -0
  424. package/dist/core/p-cccbf2bf.entry.js.map +1 -0
  425. package/dist/core/{p-a2d3e955.entry.js → p-d2508752.entry.js} +2 -2
  426. package/dist/core/p-d7bbace4.entry.js +2 -0
  427. package/dist/core/p-d7bbace4.entry.js.map +1 -0
  428. package/dist/core/p-d86b0d0e.entry.js +2 -0
  429. package/dist/core/p-d86b0d0e.entry.js.map +1 -0
  430. package/dist/core/p-e0d88c31.entry.js +2 -0
  431. package/dist/core/p-e0d88c31.entry.js.map +1 -0
  432. package/dist/core/p-e9202767.entry.js +2 -0
  433. package/dist/core/p-e9202767.entry.js.map +1 -0
  434. package/dist/core/p-eba373bf.entry.js +2 -0
  435. package/dist/core/p-eba373bf.entry.js.map +1 -0
  436. package/dist/core/{p-cadb531f.entry.js → p-ed6cf9b9.entry.js} +2 -2
  437. package/dist/core/p-ed6cf9b9.entry.js.map +1 -0
  438. package/dist/esm/{check-icon-53f1d9e5.js → check-icon-abb210ec.js} +2 -2
  439. package/dist/esm/check-icon-abb210ec.js.map +1 -0
  440. package/dist/esm/chevron-icon-98c98242.js +8 -0
  441. package/dist/esm/chevron-icon-98c98242.js.map +1 -0
  442. package/dist/esm/core.js +2 -2
  443. package/dist/esm/{helpers-46e5291b.js → helpers-c332acf8.js} +71 -4
  444. package/dist/esm/helpers-c332acf8.js.map +1 -0
  445. package/dist/esm/ic-alert.entry.js +4 -25
  446. package/dist/esm/ic-alert.entry.js.map +1 -1
  447. package/dist/esm/ic-back-to-top.entry.js +7 -5
  448. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  449. package/dist/esm/ic-breadcrumb-group.entry.js +2 -2
  450. package/dist/esm/ic-breadcrumb.entry.js +13 -4
  451. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  452. package/dist/esm/ic-button_3.entry.js +23 -31
  453. package/dist/esm/ic-button_3.entry.js.map +1 -1
  454. package/dist/esm/ic-card.entry.js +15 -4
  455. package/dist/esm/ic-card.entry.js.map +1 -1
  456. package/dist/esm/ic-checkbox-group.entry.js +4 -4
  457. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  458. package/dist/esm/ic-checkbox.entry.js +14 -4
  459. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  460. package/dist/esm/ic-chip.entry.js +13 -4
  461. package/dist/esm/ic-chip.entry.js.map +1 -1
  462. package/dist/esm/ic-classification-banner.entry.js +2 -2
  463. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  464. package/dist/esm/ic-data-entity.entry.js +2 -2
  465. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  466. package/dist/esm/ic-data-row.entry.js +3 -3
  467. package/dist/esm/ic-data-row.entry.js.map +1 -1
  468. package/dist/esm/ic-divider.entry.js +3 -3
  469. package/dist/esm/ic-divider.entry.js.map +1 -1
  470. package/dist/esm/ic-footer-link-group.entry.js +4 -3
  471. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  472. package/dist/esm/ic-footer-link.entry.js +4 -3
  473. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  474. package/dist/esm/ic-footer.entry.js +3 -3
  475. package/dist/esm/ic-footer.entry.js.map +1 -1
  476. package/dist/esm/ic-hero.entry.js +3 -3
  477. package/dist/esm/ic-hero.entry.js.map +1 -1
  478. package/dist/esm/ic-horizontal-scroll.entry.js +154 -0
  479. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -0
  480. package/dist/esm/ic-input-component-container_3.entry.js +43 -28
  481. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  482. package/dist/esm/ic-input-label_2.entry.js +3 -5
  483. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  484. package/dist/esm/ic-link.entry.js +12 -3
  485. package/dist/esm/ic-link.entry.js.map +1 -1
  486. package/dist/esm/ic-navigation-button.entry.js +5 -4
  487. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  488. package/dist/esm/ic-navigation-group.entry.js +6 -5
  489. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  490. package/dist/esm/ic-navigation-item.entry.js +6 -5
  491. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  492. package/dist/esm/ic-navigation-menu.entry.js +8 -8
  493. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  494. package/dist/esm/ic-page-header.entry.js +4 -4
  495. package/dist/esm/ic-page-header.entry.js.map +1 -1
  496. package/dist/esm/ic-radio-group.entry.js +13 -4
  497. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  498. package/dist/esm/ic-radio-option.entry.js +14 -5
  499. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  500. package/dist/esm/ic-search-bar.entry.js +23 -23
  501. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  502. package/dist/esm/ic-section-container.entry.js +2 -2
  503. package/dist/esm/ic-section-container.entry.js.map +1 -1
  504. package/dist/esm/ic-select.entry.js +162 -66
  505. package/dist/esm/ic-select.entry.js.map +1 -1
  506. package/dist/esm/ic-side-navigation.entry.js +17 -9
  507. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  508. package/dist/esm/ic-skeleton.entry.js +1 -1
  509. package/dist/esm/ic-status-tag.entry.js +3 -3
  510. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  511. package/dist/esm/ic-step.entry.js +3 -3
  512. package/dist/esm/ic-step.entry.js.map +1 -1
  513. package/dist/esm/ic-stepper.entry.js +13 -10
  514. package/dist/esm/ic-stepper.entry.js.map +1 -1
  515. package/dist/esm/ic-switch.entry.js +12 -3
  516. package/dist/esm/ic-switch.entry.js.map +1 -1
  517. package/dist/esm/ic-tab-context.entry.js +1 -1
  518. package/dist/esm/ic-tab-group.entry.js +8 -117
  519. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  520. package/dist/esm/ic-tab-panel.entry.js +2 -2
  521. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  522. package/dist/esm/ic-tab.entry.js +10 -2
  523. package/dist/esm/ic-tab.entry.js.map +1 -1
  524. package/dist/esm/ic-text-field.entry.js +5 -5
  525. package/dist/esm/ic-text-field.entry.js.map +1 -1
  526. package/dist/esm/ic-theme.entry.js +2 -2
  527. package/dist/esm/ic-toast-region.entry.js +44 -0
  528. package/dist/esm/ic-toast-region.entry.js.map +1 -0
  529. package/dist/esm/ic-toast.entry.js +161 -0
  530. package/dist/esm/ic-toast.entry.js.map +1 -0
  531. package/dist/esm/ic-top-navigation.entry.js +15 -10
  532. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  533. package/dist/esm/ic-typography.entry.js +1 -1
  534. package/dist/esm/{index-1500de1f.js → index-90721b3c.js} +17 -2
  535. package/dist/esm/index-90721b3c.js.map +1 -0
  536. package/dist/esm/loader.js +2 -2
  537. package/dist/esm/types-dd515332.js.map +1 -1
  538. package/dist/types/components/ic-alert/ic-alert.d.ts +2 -2
  539. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +4 -0
  540. package/dist/types/components/ic-button/ic-button.d.ts +1 -4
  541. package/dist/types/components/ic-card/ic-card.d.ts +4 -0
  542. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +4 -0
  543. package/dist/types/components/ic-chip/ic-chip.d.ts +4 -0
  544. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +39 -0
  545. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.d.ts +1 -0
  546. package/dist/types/components/ic-link/ic-link.d.ts +4 -0
  547. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +0 -1
  548. package/dist/types/components/ic-menu/ic-menu.d.ts +16 -7
  549. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +1 -1
  550. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +1 -1
  551. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +1 -1
  552. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +5 -1
  553. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +4 -0
  554. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +2 -3
  555. package/dist/types/components/ic-select/ic-select.d.ts +42 -7
  556. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +2 -1
  557. package/dist/types/components/ic-switch/ic-switch.d.ts +4 -0
  558. package/dist/types/components/ic-tab/ic-tab.d.ts +4 -0
  559. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +2 -30
  560. package/dist/types/components/ic-text-field/ic-text-field.d.ts +1 -1
  561. package/dist/types/components/ic-toast/ic-toast.d.ts +66 -0
  562. package/dist/types/components/ic-toast/ic-toast.test.a11y.d.ts +1 -0
  563. package/dist/types/components/ic-toast/ic-toast.types.d.ts +1 -0
  564. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +12 -0
  565. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +2 -1
  566. package/dist/types/components.d.ts +214 -37
  567. package/dist/types/interface.d.ts +0 -1
  568. package/dist/types/utils/constants.d.ts +22 -0
  569. package/dist/types/utils/helpers.d.ts +2 -0
  570. package/dist/types/utils/types.d.ts +3 -0
  571. package/hydrate/index.js +932 -402
  572. package/package.json +5 -5
  573. package/dist/cjs/check-icon-999d9877.js.map +0 -1
  574. package/dist/cjs/chevron-icon-d175fe66.js.map +0 -1
  575. package/dist/cjs/error-icon-99504103.js +0 -18
  576. package/dist/cjs/error-icon-99504103.js.map +0 -1
  577. package/dist/cjs/helpers-81484ceb.js.map +0 -1
  578. package/dist/cjs/index-3ef30d9d.js.map +0 -1
  579. package/dist/cjs/success-icon-887b2097.js +0 -11
  580. package/dist/cjs/success-icon-887b2097.js.map +0 -1
  581. package/dist/collection/components/ic-alert/ic-alert.types.js +0 -2
  582. package/dist/collection/components/ic-alert/ic-alert.types.js.map +0 -1
  583. package/dist/collection/components/ic-tab-group/assets/left-arrow.svg +0 -3
  584. package/dist/collection/components/ic-tab-group/assets/right-arrow.svg +0 -3
  585. package/dist/components/error-icon.js +0 -15
  586. package/dist/components/error-icon.js.map +0 -1
  587. package/dist/components/success-icon.js +0 -9
  588. package/dist/components/success-icon.js.map +0 -1
  589. package/dist/core/p-01e8bd4a.entry.js +0 -2
  590. package/dist/core/p-01e8bd4a.entry.js.map +0 -1
  591. package/dist/core/p-050e1e7b.entry.js +0 -2
  592. package/dist/core/p-050e1e7b.entry.js.map +0 -1
  593. package/dist/core/p-09592918.entry.js +0 -2
  594. package/dist/core/p-09592918.entry.js.map +0 -1
  595. package/dist/core/p-0b00f848.entry.js +0 -2
  596. package/dist/core/p-0b00f848.entry.js.map +0 -1
  597. package/dist/core/p-16698d3e.entry.js +0 -2
  598. package/dist/core/p-16698d3e.entry.js.map +0 -1
  599. package/dist/core/p-18a9beea.entry.js +0 -2
  600. package/dist/core/p-18a9beea.entry.js.map +0 -1
  601. package/dist/core/p-1da1f2f3.entry.js +0 -2
  602. package/dist/core/p-1da1f2f3.entry.js.map +0 -1
  603. package/dist/core/p-1e7b4310.js +0 -2
  604. package/dist/core/p-204f6315.entry.js +0 -2
  605. package/dist/core/p-204f6315.entry.js.map +0 -1
  606. package/dist/core/p-272c7abd.entry.js +0 -2
  607. package/dist/core/p-272c7abd.entry.js.map +0 -1
  608. package/dist/core/p-27554319.entry.js +0 -2
  609. package/dist/core/p-27554319.entry.js.map +0 -1
  610. package/dist/core/p-3efa7f8b.entry.js +0 -2
  611. package/dist/core/p-3efa7f8b.entry.js.map +0 -1
  612. package/dist/core/p-3f4d632c.entry.js +0 -2
  613. package/dist/core/p-3f4d632c.entry.js.map +0 -1
  614. package/dist/core/p-3f9cdcdd.entry.js +0 -2
  615. package/dist/core/p-3f9cdcdd.entry.js.map +0 -1
  616. package/dist/core/p-4902b46a.entry.js +0 -2
  617. package/dist/core/p-4902b46a.entry.js.map +0 -1
  618. package/dist/core/p-541918c2.entry.js +0 -2
  619. package/dist/core/p-541918c2.entry.js.map +0 -1
  620. package/dist/core/p-5616cfb8.entry.js +0 -2
  621. package/dist/core/p-5616cfb8.entry.js.map +0 -1
  622. package/dist/core/p-66cad84e.entry.js +0 -2
  623. package/dist/core/p-66cad84e.entry.js.map +0 -1
  624. package/dist/core/p-6be5e06b.entry.js.map +0 -1
  625. package/dist/core/p-6cb276c6.entry.js +0 -2
  626. package/dist/core/p-6cb276c6.entry.js.map +0 -1
  627. package/dist/core/p-6f442942.entry.js +0 -2
  628. package/dist/core/p-6f442942.entry.js.map +0 -1
  629. package/dist/core/p-7ba184da.entry.js +0 -2
  630. package/dist/core/p-7ba184da.entry.js.map +0 -1
  631. package/dist/core/p-80cd0a2d.entry.js +0 -2
  632. package/dist/core/p-80cd0a2d.entry.js.map +0 -1
  633. package/dist/core/p-8470c255.entry.js +0 -2
  634. package/dist/core/p-8470c255.entry.js.map +0 -1
  635. package/dist/core/p-89a925f8.entry.js +0 -2
  636. package/dist/core/p-89a925f8.entry.js.map +0 -1
  637. package/dist/core/p-9020d1ff.entry.js +0 -2
  638. package/dist/core/p-9020d1ff.entry.js.map +0 -1
  639. package/dist/core/p-930cd4cc.entry.js +0 -2
  640. package/dist/core/p-930cd4cc.entry.js.map +0 -1
  641. package/dist/core/p-9b4022d7.entry.js.map +0 -1
  642. package/dist/core/p-a38cbb3f.entry.js +0 -2
  643. package/dist/core/p-a38cbb3f.entry.js.map +0 -1
  644. package/dist/core/p-a8ac8f72.js +0 -2
  645. package/dist/core/p-a8ac8f72.js.map +0 -1
  646. package/dist/core/p-ae02b008.entry.js +0 -2
  647. package/dist/core/p-ae02b008.entry.js.map +0 -1
  648. package/dist/core/p-ae6aa67f.js +0 -2
  649. package/dist/core/p-bb106092.entry.js +0 -2
  650. package/dist/core/p-bb106092.entry.js.map +0 -1
  651. package/dist/core/p-bbe00cb1.entry.js +0 -2
  652. package/dist/core/p-bbe00cb1.entry.js.map +0 -1
  653. package/dist/core/p-bf5717ca.js +0 -2
  654. package/dist/core/p-bf5717ca.js.map +0 -1
  655. package/dist/core/p-c320fa70.entry.js +0 -2
  656. package/dist/core/p-c5e453eb.entry.js.map +0 -1
  657. package/dist/core/p-cadb531f.entry.js.map +0 -1
  658. package/dist/core/p-d599cf4f.entry.js +0 -2
  659. package/dist/core/p-d599cf4f.entry.js.map +0 -1
  660. package/dist/core/p-e192e25d.entry.js +0 -2
  661. package/dist/core/p-e192e25d.entry.js.map +0 -1
  662. package/dist/core/p-e28af65b.js +0 -2
  663. package/dist/core/p-e28af65b.js.map +0 -1
  664. package/dist/core/p-e810f48c.entry.js +0 -2
  665. package/dist/core/p-e810f48c.entry.js.map +0 -1
  666. package/dist/core/p-e93e9aa3.entry.js.map +0 -1
  667. package/dist/core/p-f9370be6.js.map +0 -1
  668. package/dist/core/p-fd0c6039.entry.js +0 -2
  669. package/dist/core/p-fd0c6039.entry.js.map +0 -1
  670. package/dist/esm/check-icon-53f1d9e5.js.map +0 -1
  671. package/dist/esm/chevron-icon-5b38c60a.js +0 -8
  672. package/dist/esm/chevron-icon-5b38c60a.js.map +0 -1
  673. package/dist/esm/error-icon-6046a380.js +0 -15
  674. package/dist/esm/error-icon-6046a380.js.map +0 -1
  675. package/dist/esm/helpers-46e5291b.js.map +0 -1
  676. package/dist/esm/index-1500de1f.js.map +0 -1
  677. package/dist/esm/success-icon-2f71b115.js +0 -9
  678. package/dist/esm/success-icon-2f71b115.js.map +0 -1
  679. package/dist/types/components/ic-alert/ic-alert.types.d.ts +0 -1
  680. /package/dist/core/{p-1e7b4310.js.map → p-24240e11.js.map} +0 -0
  681. /package/dist/core/{p-f760198e.entry.js.map → p-691ea0f2.entry.js.map} +0 -0
  682. /package/dist/core/{p-9e684c58.entry.js.map → p-897e967a.entry.js.map} +0 -0
  683. /package/dist/core/{p-ae6aa67f.js.map → p-8c7f4343.js.map} +0 -0
  684. /package/dist/core/{p-4f1a7195.entry.js.map → p-c4a7c734.entry.js.map} +0 -0
  685. /package/dist/core/{p-6d0eaaeb.entry.js.map → p-c9068822.entry.js.map} +0 -0
  686. /package/dist/core/{p-a2d3e955.entry.js.map → p-d2508752.entry.js.map} +0 -0
@@ -469,8 +469,13 @@ video {
469
469
 
470
470
  :host .title-link,
471
471
  :host .title-link:visited,
472
- :host .title-link:active {
472
+ :host .title-link:active,
473
+ :host .title-link ::slotted(a),
474
+ :host .title-link:visited ::slotted(a),
475
+ :host .title-link:active ::slotted(a) {
473
476
  color: var(--ic-theme-text);
477
+ text-decoration: none;
478
+ outline: none;
474
479
  }
475
480
 
476
481
  :host .title-link:hover:not(:focus) {
@@ -485,7 +490,8 @@ video {
485
490
  border-radius: var(--ic-border-radius);
486
491
  }
487
492
 
488
- :host .title-link:focus {
493
+ :host .title-link:focus,
494
+ :host .title-link:focus-within {
489
495
  border-radius: var(--ic-border-radius);
490
496
  box-shadow: var(--ic-border-focus);
491
497
  outline: var(--ic-hc-focus-outline);
@@ -497,7 +503,7 @@ video {
497
503
 
498
504
  :host .nav-panel-container {
499
505
  border-top: var(--ic-keyline-lighten);
500
- padding-left: var(--ic-space-lg);
506
+ padding: 0 var(--ic-space-lg);
501
507
  margin-left: calc(-1 * var(--section-container-margin));
502
508
  margin-right: calc(-1 * var(--section-container-margin));
503
509
  display: flex;
@@ -509,12 +515,12 @@ video {
509
515
 
510
516
  .top-panel-container {
511
517
  display: flex;
512
- padding-top: 8px;
513
- padding-bottom: 8px;
518
+ padding-top: 0.5rem;
519
+ padding-bottom: 0.5rem;
514
520
  }
515
521
 
516
522
  .navigation-tabs {
517
- margin-top: -1px;
523
+ margin-top: -0.063rem;
518
524
  }
519
525
 
520
526
  .app-details-container {
@@ -544,11 +550,11 @@ video {
544
550
  -ms-word-break: break-all;
545
551
  word-break: break-word;
546
552
  -webkit-hyphens: auto;
547
- hyphens: auto;
553
+ hyphens: auto;
548
554
  }
549
555
 
550
556
  :host .app-status {
551
- border-radius: 80px;
557
+ border-radius: 5rem;
552
558
  background-color: var(--ic-architectural-white);
553
559
  color: var(--ic-color-primary-text);
554
560
  padding: var(--ic-space-xxs) var(--ic-space-lg);
@@ -561,7 +567,7 @@ video {
561
567
  }
562
568
 
563
569
  :host .app-version {
564
- border-radius: 16px;
570
+ border-radius: 1rem;
565
571
  background-color: var(--ic-theme-active);
566
572
  padding: var(--ic-space-xxs) var(--ic-space-sm);
567
573
  margin-left: var(--ic-space-xs);
@@ -572,7 +578,7 @@ video {
572
578
  overflow: hidden;
573
579
  text-overflow: ellipsis;
574
580
  white-space: nowrap;
575
- max-width: 96px;
581
+ max-width: 6rem;
576
582
  }
577
583
 
578
584
  slot[name="app-icon"]::slotted(svg) {
@@ -589,7 +595,6 @@ slot[name="toggle-icon"] svg {
589
595
  justify-content: right;
590
596
  display: flex;
591
597
  align-items: center;
592
- flex: 1 auto;
593
598
  }
594
599
 
595
600
  .menu-button-container {
@@ -607,33 +612,21 @@ slot[name="toggle-icon"] svg {
607
612
 
608
613
  .navigation-landmark-text {
609
614
  position: absolute;
610
- width: 1px;
611
- height: 1px;
615
+ width: 0.063rem;
616
+ height: 0.063rem;
612
617
  padding: 0;
613
- margin: -1px;
618
+ margin: -0.063rem;
614
619
  overflow: hidden;
615
620
  }
616
621
 
617
622
  .navigation-item-list {
618
623
  display: flex;
619
624
  list-style: none;
620
- height: 44px;
621
- }
622
-
623
- :host([content-aligned="left"]) .app-details-container {
624
- flex-basis: 1;
625
- }
626
-
627
- :host([content-aligned="left"]) .app-details-container,
628
- :host([content-aligned="left"]) .nav-panel-container,
629
- :host([content-aligned="center"]) .nav-panel-container,
630
- :host([content-aligned="left"]) .search-menu-container,
631
- :host([content-aligned="center"]) .search-menu-container {
632
- justify-content: flex-start;
625
+ height: 2.75rem;
633
626
  }
634
627
 
635
- :host([content-aligned="center"]) .app-details-container {
636
- justify-content: flex-end;
628
+ .navigation-item-list::-webkit-scrollbar {
629
+ display: none;
637
630
  }
638
631
 
639
632
  :host ic-section-container {
@@ -645,21 +638,12 @@ slot[name="toggle-icon"] svg {
645
638
  .app-details-container {
646
639
  margin-right: var(--ic-space-lg);
647
640
  }
648
-
649
- :host([content-aligned="center"]) .top-navigation {
650
- display: flex;
651
- justify-content: center;
652
- }
653
-
654
- :host([content-aligned="left"]) .top-navigation {
655
- display: flex;
656
- }
657
641
  }
658
642
 
659
643
  /* large */
660
644
  @media screen and (max-width: 1200px) {
661
645
  :host .nav-panel-container {
662
- padding-left: var(--ic-space-md);
646
+ padding: 0 var(--ic-space-md);
663
647
  }
664
648
  }
665
649
 
@@ -676,7 +660,7 @@ slot[name="toggle-icon"] svg {
676
660
  }
677
661
 
678
662
  .search-menu-container {
679
- max-width: 160px;
663
+ max-width: 10rem;
680
664
  }
681
665
 
682
666
  .search-bar-container {
@@ -684,19 +668,12 @@ slot[name="toggle-icon"] svg {
684
668
  justify-content: center;
685
669
  align-items: center;
686
670
  border-top: var(--ic-keyline-darken);
687
- height: 64px;
671
+ height: 4rem;
688
672
  padding-left: var(--ic-space-md);
689
673
  padding-right: var(--ic-space-md);
690
674
  margin-left: calc(-1 * var(--section-container-margin));
691
675
  margin-right: calc(-1 * var(--section-container-margin));
692
676
  }
693
-
694
- :host([content-aligned="left"]) .app-details-container,
695
- :host([content-aligned="left"]) .search-menu-container,
696
- :host([content-aligned="center"]) .search-menu-container,
697
- :host([content-aligned="center"]) .app-details-container {
698
- justify-content: flex-start;
699
- }
700
677
  }
701
678
 
702
679
  /* x small */
@@ -709,7 +686,7 @@ slot[name="toggle-icon"] svg {
709
686
  }
710
687
 
711
688
  .top-panel-container {
712
- min-height: 40px;
689
+ min-height: 2.5rem;
713
690
  }
714
691
 
715
692
  .searchbox-inline {
@@ -718,7 +695,7 @@ slot[name="toggle-icon"] svg {
718
695
 
719
696
  .search-bar-container {
720
697
  margin-top: 0;
721
- height: 56px;
698
+ height: 3.5rem;
722
699
  padding-left: var(--ic-space-xs);
723
700
  padding-right: var(--ic-space-xs);
724
701
  }
@@ -3,6 +3,7 @@ import { IcThemeForegroundEnum, } from "../../utils/types";
3
3
  import { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, getThemeForegroundColor, getSlot, onComponentPropUndefinedChange, onComponentRequiredPropUndefined, isSlotUsed, } from "../../utils/helpers";
4
4
  /**
5
5
  * @slot app-icon - Content will be rendered to left of app title.
6
+ * @slot app-title - Handle routing by nesting a route in the app title.
6
7
  * @slot search - Content will be rendered in search area to left of buttons.
7
8
  * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices
8
9
  * @slot navigation - Content will be rendered in navigation panel.
@@ -61,7 +62,7 @@ export class TopNavigation {
61
62
  //remove attribute again as this trigger a redraw & applies css
62
63
  this.searchBar.removeAttribute("hidden");
63
64
  setTimeout(() => {
64
- this.searchBar.setFocus();
65
+ this.searchBar.focus();
65
66
  }, 100);
66
67
  }
67
68
  }
@@ -97,7 +98,7 @@ export class TopNavigation {
97
98
  navBarMenuCloseHandler() {
98
99
  this.showNavMenu(false);
99
100
  const menuBtn = this.el.shadowRoot.querySelector("#menu-button");
100
- menuBtn.setFocus();
101
+ menuBtn.focus();
101
102
  }
102
103
  searchInputBlurHandler(ev) {
103
104
  if (ev.detail !== null) {
@@ -123,7 +124,7 @@ export class TopNavigation {
123
124
  this.hasFullWidthSearchBar = true;
124
125
  this.searchBar.fullWidth = true;
125
126
  setTimeout(() => {
126
- this.searchBar.setFocus();
127
+ this.searchBar.focus();
127
128
  }, 100);
128
129
  }
129
130
  else {
@@ -158,7 +159,8 @@ export class TopNavigation {
158
159
  }
159
160
  componentDidLoad() {
160
161
  checkResizeObserver(this.runResizeObserver);
161
- onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: "app-title" }], "Top Navigation");
162
+ !isSlotUsed(this.el, "app-title") &&
163
+ onComponentRequiredPropUndefined([{ prop: this.appTitle, propName: "app-title" }], "Top Navigation");
162
164
  }
163
165
  disconnectedCallback() {
164
166
  if (this.resizeObserver !== null) {
@@ -183,13 +185,17 @@ export class TopNavigation {
183
185
  ? "Hide search"
184
186
  : "Show search";
185
187
  const menuSize = this.deviceSize <= DEVICE_SIZES.S ? "small" : "default";
188
+ const Component = isSlotUsed(this.el, "app-title") ? "div" : "a";
189
+ const attrs = Component == "a" && {
190
+ href: this.href,
191
+ };
186
192
  return (h(Host, { class: {
187
193
  ["fullwidth-searchbar"]: this.hasFullWidthSearchBar,
188
194
  [IcThemeForegroundEnum.Dark]: this.foregroundColor === IcThemeForegroundEnum.Dark,
189
- } }, h("div", { class: "top-navigation" }, h("ic-section-container", { aligned: "full-width", "full-height": true }, h("header", { role: "banner" }, h("div", { class: "top-panel-container" }, h("div", { class: "app-details-container" }, hasTitle && (h("a", { class: "title-link", href: this.href }, this.hasAppIcon && (h("div", { class: "app-icon-container", "aria-hidden": "true" }, h("slot", { name: "app-icon" }))), h("ic-typography", { variant: appTitleVariant }, h("h1", { class: "title-wrap" }, this.appTitle)))), this.status !== "" && (h("div", { class: "app-status" }, h("ic-typography", { "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, this.status))), this.version !== "" && (h("div", { class: "app-version" }, h("ic-typography", { variant: "label", class: "app-version-text", "aria-label": "app version" }, this.version)))), (this.hasSearchSlotContent || hasMenuContent) && (h("div", { class: "search-menu-container" }, h("div", { class: "search-actions-container" }, this.deviceSize > DEVICE_SIZES.L && (h("slot", { name: "search" })), this.hasSearchSlotContent &&
190
- this.deviceSize <= DEVICE_SIZES.L && (h("ic-button", { id: "search-toggle-button", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: this.searchButtonMouseDownHandler, variant: "icon", size: searchButtonSize, "aria-label": mobileSearchButtonTitle, appearance: this.foregroundColor, onClick: this.searchButtonClickHandler }, h("slot", { name: "toggle-icon", slot: "icon" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", 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" }))))), this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "icon-buttons-container" }, h("slot", { name: "buttons" }))), hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (h("div", { class: "menu-button-container" }, h("nav", { "aria-labelledby": "navigation-landmark-text", "aria-hidden": !this.hasNavigation || this.navMenuVisible
195
+ } }, h("div", { class: "top-navigation" }, h("ic-section-container", { aligned: this.contentAligned, "full-height": true }, h("header", { role: "banner" }, h("div", { class: "top-panel-container" }, h("div", { class: "app-details-container" }, (hasTitle || isSlotUsed(this.el, "app-title")) && (h(Component, Object.assign({ class: "title-link" }, attrs), this.hasAppIcon && (h("div", { class: "app-icon-container", "aria-hidden": "true" }, h("slot", { name: "app-icon" }))), h("ic-typography", { variant: appTitleVariant }, h("h1", { class: "title-wrap" }, isSlotUsed(this.el, "app-title") ? (h("slot", { name: "app-title" })) : (this.appTitle))))), this.status !== "" && (h("div", { class: "app-status" }, h("ic-typography", { "aria-label": "app tag", variant: "label-uppercase", class: "app-status-text" }, this.status))), this.version !== "" && (h("div", { class: "app-version" }, h("ic-typography", { variant: "label", class: "app-version-text", "aria-label": "app version" }, this.version)))), (this.hasSearchSlotContent || hasMenuContent) && (h("div", { class: "search-menu-container" }, h("div", { class: "search-actions-container" }, this.deviceSize > DEVICE_SIZES.L && (h("slot", { name: "search" })), this.hasSearchSlotContent &&
196
+ this.deviceSize <= DEVICE_SIZES.L && (h("ic-button", { id: "search-toggle-button", ref: (el) => (this.mobileSearchButtonEl = el), onMouseDown: this.searchButtonMouseDownHandler, variant: "icon", size: searchButtonSize, "aria-label": mobileSearchButtonTitle, appearance: this.foregroundColor, onClick: this.searchButtonClickHandler }, h("slot", { name: "toggle-icon", slot: "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" }))))), this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "icon-buttons-container" }, h("slot", { name: "buttons" }))), hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (h("div", { class: "menu-button-container" }, h("nav", { "aria-labelledby": "navigation-landmark-text", "aria-hidden": !this.hasNavigation || this.navMenuVisible
191
197
  ? "true"
192
- : "false" }, h("ic-button", { id: "menu-button", appearance: this.foregroundColor, variant: "secondary", "aria-expanded": this.menuOpen ? "true" : "false", "aria-haspopup": "true", "aria-label": `Open ${this.hasNavigation ? "navigation" : "app"} menu`, size: menuSize, onClick: this.menuButtonClick }, "Menu", h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff", slot: "icon" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" })))))))))), this.mobileSearchBarVisible && (h("div", { class: "search-bar-container" }, h("slot", { name: "search" }))), this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "navigation-tabs" }, h("span", { id: "navigation-landmark-text", class: "navigation-landmark-text", "aria-hidden": "true" }, "Main navigation"), h("nav", { "aria-labelledby": "navigation-landmark-text", class: "nav-panel-container" }, h("ul", { class: "navigation-item-list" }, h("slot", { name: "navigation" })))))))), this.navMenuVisible && (h("ic-navigation-menu", { version: this.version, status: this.status, class: {
198
+ : "false" }, h("ic-button", { id: "menu-button", appearance: this.foregroundColor, variant: "secondary", "aria-expanded": this.menuOpen ? "true" : "false", "aria-haspopup": "true", "aria-label": `Open ${this.hasNavigation ? "navigation" : "app"} menu`, size: menuSize, onClick: this.menuButtonClick }, "Menu", h("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 0 24 24", width: "24px", fill: "#ffffff", slot: "icon" }, h("path", { d: "M0 0h24v24H0V0z", fill: "none" }), h("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" })))))))))), this.mobileSearchBarVisible && (h("div", { class: "search-bar-container" }, h("slot", { name: "search" }))), this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (h("div", { class: "navigation-tabs" }, h("span", { id: "navigation-landmark-text", class: "navigation-landmark-text", "aria-hidden": "true" }, "Main navigation"), h("nav", { "aria-labelledby": "navigation-landmark-text", class: "nav-panel-container" }, h("ic-horizontal-scroll", { appearance: this.foregroundColor }, h("ul", { class: "navigation-item-list", tabindex: "-1" }, h("slot", { name: "navigation" }))))))))), this.navMenuVisible && (h("ic-navigation-menu", { version: this.version, status: this.status, class: {
193
199
  ["inline"]: this.inline,
194
200
  } }, h("div", { class: "menu-buttons-slot", slot: "buttons" }, h("slot", { name: "buttons" })), h("ul", { slot: "navigation" }, h("slot", { name: "navigation" }))))));
195
201
  }
@@ -215,11 +221,11 @@ export class TopNavigation {
215
221
  "resolved": "string",
216
222
  "references": {}
217
223
  },
218
- "required": true,
224
+ "required": false,
219
225
  "optional": false,
220
226
  "docs": {
221
227
  "tags": [],
222
- "text": "The app title to be displayed."
228
+ "text": "The app title to be displayed. This is required, unless a slotted app title link is used."
223
229
  },
224
230
  "attribute": "app-title",
225
231
  "reflect": false
@@ -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 IcThemeForeground,\n IcThemeForegroundEnum,\n IcTheme,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title.\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 @Element() el: HTMLIcTopNavigationElement;\n\n /**\n * The app title to be displayed.\n */\n @Prop() appTitle!: string;\n\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href: string = \"/\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\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 @State() menuOpen: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() mobileSearchBarVisible: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchValue: string = \"\";\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() hasFullWidthSearchBar: boolean = false;\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 gatbsy hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n private hasAppIcon: boolean = false;\n private hasNavigation: boolean = false;\n private hasIconButtons: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private searchBar: HTMLIcSearchBarElement = null;\n private mobileSearchButtonEl: HTMLIcButtonElement;\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n const menuBtn = this.el.shadowRoot.querySelector(\n \"#menu-button\"\n ) as HTMLIcButtonElement;\n menuBtn.setFocus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler(ev: CustomEvent): void {\n if (ev.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 = ev.detail.value;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler(ev: CustomEvent): void {\n this.searchValue = ev.detail.value;\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot && slot.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot && slot.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\n \"ic-search-bar\"\n ) as HTMLIcSearchBarElement;\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 if (this.mobileSearchBarVisible) {\n this.mobileSearchButtonEl.updateAriaLabel(\"Hide search\");\n this.hasFullWidthSearchBar = true;\n this.searchBar.fullWidth = true;\n setTimeout(() => {\n this.searchBar.setFocus();\n }, 100);\n } else {\n this.mobileSearchButtonEl.updateAriaLabel(\"Show search\");\n this.hasFullWidthSearchBar = false;\n this.searchBar.fullWidth = false;\n }\n }\n }\n\n private emitTopNavResized = (size: number): void => {\n const event = new CustomEvent(\"topNavResized\", { detail: { size: size } });\n this.el.dispatchEvent(event);\n };\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n if (show) {\n this.icNavigationMenuOpened.emit();\n } else {\n this.icNavigationMenuClosed.emit();\n }\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 resizeObserver: ResizeObserver = null;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > DEVICE_SIZES.L) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.emitTopNavResized(currSize);\n if (\n document.activeElement !== null &&\n document.activeElement !== undefined &&\n document.activeElement.tagName === \"IC-SEARCH-BAR\"\n ) {\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.setFocus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n componentWillLoad(): void {\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 this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentWillRender(): void {\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const hasMenuContent =\n this.hasNavigation ||\n this.hasIconButtons ||\n this.status !== \"\" ||\n this.version !== \"\";\n\n const searchButtonSize =\n this.deviceSize <= DEVICE_SIZES.S ? \"default\" : \"large\";\n\n let appTitleVariant: IcTypographyVariants = \"h3\";\n\n const hasTitle = this.appTitle !== \"\" && this.appTitle !== undefined;\n\n if (this.deviceSize <= DEVICE_SIZES.L) {\n appTitleVariant = \"h4\";\n if (this.deviceSize <= DEVICE_SIZES.S) {\n appTitleVariant = \"subtitle-small\";\n }\n }\n\n const mobileSearchButtonTitle = this.mobileSearchBarVisible\n ? \"Hide search\"\n : \"Show search\";\n const menuSize = this.deviceSize <= DEVICE_SIZES.S ? \"small\" : \"default\";\n\n return (\n <Host\n class={{\n [\"fullwidth-searchbar\"]: this.hasFullWidthSearchBar,\n [IcThemeForegroundEnum.Dark]:\n this.foregroundColor === IcThemeForegroundEnum.Dark,\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned=\"full-width\" full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {hasTitle && (\n <a class=\"title-link\" href={this.href}>\n {this.hasAppIcon && (\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\" />\n </div>\n )}\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">{this.appTitle}</h1>\n </ic-typography>\n </a>\n )}\n {this.status !== \"\" && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {this.status}\n </ic-typography>\n </div>\n )}\n {this.version !== \"\" && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {this.version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(this.hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {this.deviceSize > DEVICE_SIZES.L && (\n <slot name=\"search\"></slot>\n )}\n\n {this.hasSearchSlotContent &&\n this.deviceSize <= DEVICE_SIZES.L && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={this.searchButtonMouseDownHandler}\n variant=\"icon\"\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n appearance={this.foregroundColor}\n onClick={this.searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\" slot=\"icon\">\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 >\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 {this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (\n <div class=\"menu-button-container\">\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n aria-hidden={\n !this.hasNavigation || this.navMenuVisible\n ? \"true\"\n : \"false\"\n }\n >\n <ic-button\n id=\"menu-button\"\n appearance={this.foregroundColor}\n variant=\"secondary\"\n aria-expanded={this.menuOpen ? \"true\" : \"false\"}\n aria-haspopup=\"true\"\n aria-label={`Open ${\n this.hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={this.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=\"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 {this.mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main navigation\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ul class=\"navigation-item-list\">\n <slot name=\"navigation\"></slot>\n </ul>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {this.navMenuVisible && (\n <ic-navigation-menu\n version={this.version}\n status={this.status}\n class={{\n [\"inline\"]: this.inline,\n }}\n >\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\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} from \"@stencil/core\";\n\nimport {\n IcTypographyVariants,\n IcAlignment,\n IcThemeForeground,\n IcThemeForegroundEnum,\n IcTheme,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title.\n * @slot app-title - Handle routing by nesting a route in the app title.\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 @Element() el: HTMLIcTopNavigationElement;\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 /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href: string = \"/\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\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 @State() menuOpen: boolean = false;\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() mobileSearchBarVisible: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchValue: string = \"\";\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() hasFullWidthSearchBar: boolean = false;\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 gatbsy hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n private hasAppIcon: boolean = false;\n private hasNavigation: boolean = false;\n private hasIconButtons: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private searchBar: HTMLIcSearchBarElement = null;\n private mobileSearchButtonEl: HTMLIcButtonElement;\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n const menuBtn = this.el.shadowRoot.querySelector(\n \"#menu-button\"\n ) as HTMLElement;\n menuBtn.focus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler(ev: CustomEvent): void {\n if (ev.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 = ev.detail.value;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler(ev: CustomEvent): void {\n this.searchValue = ev.detail.value;\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot && slot.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot && slot.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\n \"ic-search-bar\"\n ) as HTMLIcSearchBarElement;\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 if (this.mobileSearchBarVisible) {\n this.mobileSearchButtonEl.updateAriaLabel(\"Hide search\");\n this.hasFullWidthSearchBar = true;\n this.searchBar.fullWidth = true;\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n } else {\n this.mobileSearchButtonEl.updateAriaLabel(\"Show search\");\n this.hasFullWidthSearchBar = false;\n this.searchBar.fullWidth = false;\n }\n }\n }\n\n private emitTopNavResized = (size: number): void => {\n const event = new CustomEvent(\"topNavResized\", { detail: { size: size } });\n this.el.dispatchEvent(event);\n };\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n if (show) {\n this.icNavigationMenuOpened.emit();\n } else {\n this.icNavigationMenuClosed.emit();\n }\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 resizeObserver: ResizeObserver = null;\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > DEVICE_SIZES.L) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.emitTopNavResized(currSize);\n if (\n document.activeElement !== null &&\n document.activeElement !== undefined &&\n document.activeElement.tagName === \"IC-SEARCH-BAR\"\n ) {\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 const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n componentWillLoad(): void {\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 this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentWillRender(): void {\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n render() {\n const hasMenuContent =\n this.hasNavigation ||\n this.hasIconButtons ||\n this.status !== \"\" ||\n this.version !== \"\";\n\n const searchButtonSize =\n this.deviceSize <= DEVICE_SIZES.S ? \"default\" : \"large\";\n\n let appTitleVariant: IcTypographyVariants = \"h3\";\n\n const hasTitle = this.appTitle !== \"\" && this.appTitle !== undefined;\n\n if (this.deviceSize <= DEVICE_SIZES.L) {\n appTitleVariant = \"h4\";\n if (this.deviceSize <= DEVICE_SIZES.S) {\n appTitleVariant = \"subtitle-small\";\n }\n }\n\n const mobileSearchButtonTitle = this.mobileSearchBarVisible\n ? \"Hide search\"\n : \"Show search\";\n const menuSize = this.deviceSize <= DEVICE_SIZES.S ? \"small\" : \"default\";\n\n const Component = isSlotUsed(this.el, \"app-title\") ? \"div\" : \"a\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n };\n\n return (\n <Host\n class={{\n [\"fullwidth-searchbar\"]: this.hasFullWidthSearchBar,\n [IcThemeForegroundEnum.Dark]:\n this.foregroundColor === IcThemeForegroundEnum.Dark,\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={this.contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || isSlotUsed(this.el, \"app-title\")) && (\n <Component class=\"title-link\" {...attrs}>\n {this.hasAppIcon && (\n <div class=\"app-icon-container\" aria-hidden=\"true\">\n <slot name=\"app-icon\" />\n </div>\n )}\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {isSlotUsed(this.el, \"app-title\") ? (\n <slot name=\"app-title\"></slot>\n ) : (\n this.appTitle\n )}\n </h1>\n </ic-typography>\n </Component>\n )}\n {this.status !== \"\" && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {this.status}\n </ic-typography>\n </div>\n )}\n {this.version !== \"\" && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {this.version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(this.hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {this.deviceSize > DEVICE_SIZES.L && (\n <slot name=\"search\"></slot>\n )}\n\n {this.hasSearchSlotContent &&\n this.deviceSize <= DEVICE_SIZES.L && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={this.searchButtonMouseDownHandler}\n variant=\"icon\"\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n appearance={this.foregroundColor}\n onClick={this.searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\" slot=\"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 {this.hasIconButtons && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && this.deviceSize <= DEVICE_SIZES.L && (\n <div class=\"menu-button-container\">\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n aria-hidden={\n !this.hasNavigation || this.navMenuVisible\n ? \"true\"\n : \"false\"\n }\n >\n <ic-button\n id=\"menu-button\"\n appearance={this.foregroundColor}\n variant=\"secondary\"\n aria-expanded={this.menuOpen ? \"true\" : \"false\"}\n aria-haspopup=\"true\"\n aria-label={`Open ${\n this.hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={this.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=\"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 {this.mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {this.hasNavigation && this.deviceSize > DEVICE_SIZES.L && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main navigation\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll appearance={this.foregroundColor}>\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 {this.navMenuVisible && (\n <ic-navigation-menu\n version={this.version}\n status={this.status}\n class={{\n [\"inline\"]: this.inline,\n }}\n >\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -1,3 +1,31 @@
1
+ import errorIcon from "../assets/error-icon.svg";
2
+ import infoIcon from "../assets/info-icon.svg";
3
+ import neutralIcon from "../assets/neutral-icon.svg";
4
+ import successIcon from "../assets/success-icon.svg";
5
+ import warningIcon from "../assets/warning-icon.svg";
6
+ // Global status icons
7
+ export const VARIANT_ICONS = {
8
+ neutral: {
9
+ icon: neutralIcon,
10
+ ariaLabel: "Neutral",
11
+ },
12
+ info: {
13
+ icon: infoIcon,
14
+ ariaLabel: "For your information",
15
+ },
16
+ warning: {
17
+ icon: warningIcon,
18
+ ariaLabel: "Warning",
19
+ },
20
+ error: {
21
+ icon: errorIcon,
22
+ ariaLabel: "Error",
23
+ },
24
+ success: {
25
+ icon: successIcon,
26
+ ariaLabel: "Success",
27
+ },
28
+ };
1
29
  // Global ARIA attributes
2
30
  export const IC_INHERITED_ARIA = [
3
31
  "aria-atomic",
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAG;EAC/B,aAAa;EACb,WAAW;EACX,eAAe;EACf,cAAc;EACd,kBAAkB;EAClB,kBAAkB;EAClB,cAAc;EACd,eAAe;EACf,iBAAiB;EACjB,mBAAmB;EACnB,aAAa;EACb,cAAc;EACd,eAAe;EACf,aAAa;EACb,cAAc;EACd,mBAAmB;EACnB,YAAY;EACZ,iBAAiB;EACjB,WAAW;EACX,WAAW;EACX,eAAe;EACf,sBAAsB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;EAC7B,EAAE,EAAE,GAAG;EACP,CAAC,EAAE,GAAG;EACN,CAAC,EAAE,GAAG;EACN,CAAC,EAAE,IAAI;EACP,EAAE,EAAE,KAAK;CACV,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG;EACvC,SAAS;EACT,mBAAmB;EACnB,WAAW;EACX,oBAAoB;EACpB,UAAU;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,UAAU,CAAC,CAAC;AAMtD,MAAM,CAAC,MAAM,yBAAyB,GAAsB;EAC1D,UAAU,EAAE,CAAC,SAAS,CAAC;CACxB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAClD,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC","sourcesContent":["// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\n\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\n\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\n\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\n\nexport interface IcColorExceptions {\n [details: string]: string[];\n}\n\nexport const IC_BLOCK_COLOR_EXCEPTIONS: IcColorExceptions = {\n \"ic-alert\": [\"ic-link\"],\n};\n\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,sBAAsB;AACtB,MAAM,CAAC,MAAM,aAAa,GAAG;EAC3B,OAAO,EAAE;IACP,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,SAAS;GACrB;EACD,IAAI,EAAE;IACJ,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,sBAAsB;GAClC;EACD,OAAO,EAAE;IACP,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,SAAS;GACrB;EACD,KAAK,EAAE;IACL,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,OAAO;GACnB;EACD,OAAO,EAAE;IACP,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,SAAS;GACrB;CACF,CAAC;AAEF,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAAG;EAC/B,aAAa;EACb,WAAW;EACX,eAAe;EACf,cAAc;EACd,kBAAkB;EAClB,kBAAkB;EAClB,cAAc;EACd,eAAe;EACf,iBAAiB;EACjB,mBAAmB;EACnB,aAAa;EACb,cAAc;EACd,eAAe;EACf,aAAa;EACb,cAAc;EACd,mBAAmB;EACnB,YAAY;EACZ,iBAAiB;EACjB,WAAW;EACX,WAAW;EACX,eAAe;EACf,sBAAsB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;EAC7B,EAAE,EAAE,GAAG;EACP,CAAC,EAAE,GAAG;EACN,CAAC,EAAE,GAAG;EACN,CAAC,EAAE,IAAI;EACP,EAAE,EAAE,KAAK;CACV,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG;EACvC,SAAS;EACT,mBAAmB;EACnB,WAAW;EACX,oBAAoB;EACpB,UAAU;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,UAAU,CAAC,CAAC;AAMtD,MAAM,CAAC,MAAM,yBAAyB,GAAsB;EAC1D,UAAU,EAAE,CAAC,SAAS,CAAC;CACxB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAClD,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC","sourcesContent":["import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\n\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\n\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\n\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\n\nexport interface IcColorExceptions {\n [details: string]: string[];\n}\n\nexport const IC_BLOCK_COLOR_EXCEPTIONS: IcColorExceptions = {\n \"ic-alert\": [\"ic-link\"],\n};\n\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n"]}
@@ -142,7 +142,12 @@ export const handleHiddenFormButtonClick = (form, button) => {
142
142
  hiddenFormButton.click();
143
143
  hiddenFormButton.remove();
144
144
  };
145
- export const isEmptyString = (value) => value.trim().length === 0;
145
+ export const isEmptyString = (value) => {
146
+ if (!value) {
147
+ return true;
148
+ }
149
+ return value.trim().length === 0;
150
+ };
146
151
  /**
147
152
  * Extracts the label using the value from an object. Requires the object to have a label and value property.
148
153
  * @param value - value from object
@@ -263,7 +268,7 @@ export const getSlotContent = (element, name) => {
263
268
  }
264
269
  return null;
265
270
  };
266
- const getSlotElements = (slot) => {
271
+ export const getSlotElements = (slot) => {
267
272
  const slotContent = slot.firstElementChild;
268
273
  if (slotContent !== null) {
269
274
  const elements = slotContent.assignedElements
@@ -306,7 +311,7 @@ export const hasValidationStatus = (status, disabled) => {
306
311
  return status !== "" && !disabled;
307
312
  };
308
313
  export const isSlotUsed = (element, slotName) => {
309
- return Array.from(element.children).some(child => child.getAttribute('slot') === slotName);
314
+ return Array.from(element.children).some((child) => child.getAttribute("slot") === slotName);
310
315
  };
311
316
  // added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update
312
317
  // with a value. Allows a callback function to be executed when this is the case
@@ -422,4 +427,8 @@ export const removeFormResetListener = (el, callbackFn) => {
422
427
  form.removeEventListener("reset", callbackFn);
423
428
  }
424
429
  };
430
+ export const pxToRem = (px, base = 16) => {
431
+ const tempPx = parseInt(px);
432
+ return `${(1 / base) * tempPx}rem`;
433
+ };
425
434
  //# sourceMappingURL=helpers.js.map