@ukic/web-components 3.0.0-alpha.4 → 3.0.0-alpha.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (565) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-69219f14.js → helpers-529aaa3a.js} +5 -4
  3. package/dist/cjs/helpers-529aaa3a.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-alert.cjs.entry.js +3 -3
  7. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-back-to-top.cjs.entry.js +8 -5
  9. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-badge.cjs.entry.js +2 -2
  11. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +43 -20
  13. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-button_3.cjs.entry.js +11 -13
  17. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-card-vertical.cjs.entry.js +7 -6
  19. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-dialog.cjs.entry.js +2 -2
  25. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-empty-state.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-footer-link-group.cjs.entry.js +3 -3
  29. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-hero.cjs.entry.js +2 -2
  33. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +12 -5
  35. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +11 -23
  37. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-input-label_2.cjs.entry.js +21 -25
  39. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-link.cjs.entry.js +3 -8
  41. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-menu-item.cjs.entry.js +10 -9
  44. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-navigation-button.cjs.entry.js +7 -3
  46. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-navigation-group.cjs.entry.js +4 -2
  48. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-item.cjs.entry.js +29 -4
  50. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -4
  52. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-page-header.cjs.entry.js +5 -3
  54. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-pagination.cjs.entry.js +5 -23
  57. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -6
  59. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-search-bar.cjs.entry.js +4 -4
  63. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-select.cjs.entry.js +10 -12
  65. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-side-navigation.cjs.entry.js +11 -7
  67. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-status-tag.cjs.entry.js +5 -4
  69. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  71. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  72. package/dist/cjs/ic-switch.cjs.entry.js +2 -2
  73. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -19
  75. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  77. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  78. package/dist/cjs/ic-text-field.cjs.entry.js +18 -15
  79. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  81. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  82. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +28 -4
  83. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-toggle-button.cjs.entry.js +9 -6
  85. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-top-navigation.cjs.entry.js +6 -4
  87. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  89. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  90. package/dist/cjs/loader.cjs.js +1 -1
  91. package/dist/collection/components/ic-alert/ic-alert.css +7 -1
  92. package/dist/collection/components/ic-alert/ic-alert.js +1 -1
  93. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  94. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +1 -1
  95. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -1
  96. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +5 -2
  97. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +31 -4
  98. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  99. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +14 -0
  100. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  101. package/dist/collection/components/ic-badge/ic-badge.css +3 -3
  102. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +4 -7
  103. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +44 -19
  104. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  105. package/dist/collection/components/ic-button/ic-button.css +658 -421
  106. package/dist/collection/components/ic-button/ic-button.js +51 -35
  107. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  108. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +3 -3
  109. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -1
  110. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +18 -18
  111. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +7 -6
  112. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  113. package/dist/collection/components/ic-dialog/ic-dialog.css +1 -1
  114. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +4 -0
  115. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +1 -1
  116. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  117. package/dist/collection/components/ic-hero/ic-hero.css +7 -7
  118. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +0 -4
  119. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +59 -4
  120. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  121. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +43 -0
  122. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -1
  123. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +38 -17
  124. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +8 -38
  125. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  126. package/dist/collection/components/ic-input-label/ic-input-label.css +6 -19
  127. package/dist/collection/components/ic-input-label/ic-input-label.js +11 -33
  128. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  129. package/dist/collection/components/ic-input-validation/ic-input-validation.css +9 -4
  130. package/dist/collection/components/ic-input-validation/ic-input-validation.js +7 -7
  131. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  132. package/dist/collection/components/ic-link/ic-link.css +0 -24
  133. package/dist/collection/components/ic-link/ic-link.js +3 -8
  134. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  135. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +2 -2
  136. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  137. package/dist/collection/components/ic-menu/ic-menu.css +31 -19
  138. package/dist/collection/components/ic-menu-item/ic-menu-item.js +48 -15
  139. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  140. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +1 -1
  141. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -1
  142. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +14 -0
  143. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +29 -1
  144. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  145. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +1 -1
  146. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -1
  147. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +13 -8
  148. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +26 -0
  149. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  150. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +20 -18
  151. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +52 -3
  152. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  153. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +9 -6
  154. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +27 -2
  155. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  156. package/dist/collection/components/ic-page-header/ic-page-header.css +2 -1
  157. package/dist/collection/components/ic-page-header/ic-page-header.js +27 -1
  158. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  159. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -22
  160. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  161. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +22 -9
  162. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  163. package/dist/collection/components/ic-search-bar/ic-search-bar.css +3 -1
  164. package/dist/collection/components/ic-search-bar/ic-search-bar.js +2 -3
  165. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  166. package/dist/collection/components/ic-select/ic-select.css +49 -36
  167. package/dist/collection/components/ic-select/ic-select.js +34 -12
  168. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  169. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +48 -31
  170. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +9 -5
  171. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  172. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +3 -3
  173. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -1
  174. package/dist/collection/components/ic-status-tag/ic-status-tag.css +5 -5
  175. package/dist/collection/components/ic-status-tag/ic-status-tag.js +21 -2
  176. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  177. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +15 -32
  178. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
  179. package/dist/collection/components/ic-switch/ic-switch.css +3 -0
  180. package/dist/collection/components/ic-tab-group/ic-tab-group.css +8 -0
  181. package/dist/collection/components/ic-tab-group/ic-tab-group.js +1 -17
  182. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  183. package/dist/collection/components/ic-text-field/ic-text-field.css +60 -9
  184. package/dist/collection/components/ic-text-field/ic-text-field.js +40 -13
  185. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  186. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +2 -2
  187. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  188. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +189 -54
  189. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +53 -32
  190. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  191. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
  192. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +76 -27
  193. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  194. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +17 -0
  195. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  196. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +41 -17
  197. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +28 -2
  198. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  199. package/dist/collection/components/ic-typography/ic-typography.css +4 -6
  200. package/dist/collection/utils/helpers.js +4 -3
  201. package/dist/collection/utils/helpers.js.map +1 -1
  202. package/dist/components/helpers.js +5 -4
  203. package/dist/components/helpers.js.map +1 -1
  204. package/dist/components/ic-alert.js +2 -2
  205. package/dist/components/ic-alert.js.map +1 -1
  206. package/dist/components/ic-back-to-top.js +9 -5
  207. package/dist/components/ic-back-to-top.js.map +1 -1
  208. package/dist/components/ic-badge.js +1 -1
  209. package/dist/components/ic-badge.js.map +1 -1
  210. package/dist/components/ic-breadcrumb-group.js +43 -19
  211. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  212. package/dist/components/ic-breadcrumb2.js +1 -1
  213. package/dist/components/ic-breadcrumb2.js.map +1 -1
  214. package/dist/components/ic-button2.js +12 -13
  215. package/dist/components/ic-button2.js.map +1 -1
  216. package/dist/components/ic-card-vertical.js +8 -7
  217. package/dist/components/ic-card-vertical.js.map +1 -1
  218. package/dist/components/ic-dialog.js +1 -1
  219. package/dist/components/ic-dialog.js.map +1 -1
  220. package/dist/components/ic-footer-link-group.js +2 -2
  221. package/dist/components/ic-footer-link-group.js.map +1 -1
  222. package/dist/components/ic-hero.js +1 -1
  223. package/dist/components/ic-hero.js.map +1 -1
  224. package/dist/components/ic-horizontal-scroll2.js +13 -4
  225. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  226. package/dist/components/ic-input-component-container2.js +9 -22
  227. package/dist/components/ic-input-component-container2.js.map +1 -1
  228. package/dist/components/ic-input-label2.js +12 -17
  229. package/dist/components/ic-input-label2.js.map +1 -1
  230. package/dist/components/ic-input-validation2.js +8 -8
  231. package/dist/components/ic-input-validation2.js.map +1 -1
  232. package/dist/components/ic-link2.js +4 -9
  233. package/dist/components/ic-link2.js.map +1 -1
  234. package/dist/components/ic-menu-item2.js +11 -10
  235. package/dist/components/ic-menu-item2.js.map +1 -1
  236. package/dist/components/ic-menu2.js +1 -1
  237. package/dist/components/ic-menu2.js.map +1 -1
  238. package/dist/components/ic-navigation-button.js +7 -2
  239. package/dist/components/ic-navigation-button.js.map +1 -1
  240. package/dist/components/ic-navigation-group.js +4 -1
  241. package/dist/components/ic-navigation-group.js.map +1 -1
  242. package/dist/components/ic-navigation-item.js +30 -4
  243. package/dist/components/ic-navigation-item.js.map +1 -1
  244. package/dist/components/ic-navigation-menu2.js +6 -4
  245. package/dist/components/ic-navigation-menu2.js.map +1 -1
  246. package/dist/components/ic-page-header.js +5 -2
  247. package/dist/components/ic-page-header.js.map +1 -1
  248. package/dist/components/ic-pagination-item2.js +1 -1
  249. package/dist/components/ic-pagination.js +4 -22
  250. package/dist/components/ic-pagination.js.map +1 -1
  251. package/dist/components/ic-popover-menu.js +5 -5
  252. package/dist/components/ic-popover-menu.js.map +1 -1
  253. package/dist/components/ic-search-bar.js +4 -4
  254. package/dist/components/ic-search-bar.js.map +1 -1
  255. package/dist/components/ic-select.js +11 -12
  256. package/dist/components/ic-select.js.map +1 -1
  257. package/dist/components/ic-side-navigation.js +11 -7
  258. package/dist/components/ic-side-navigation.js.map +1 -1
  259. package/dist/components/ic-status-tag.js +5 -3
  260. package/dist/components/ic-status-tag.js.map +1 -1
  261. package/dist/components/ic-switch.js +1 -1
  262. package/dist/components/ic-switch.js.map +1 -1
  263. package/dist/components/ic-tab-group.js +2 -18
  264. package/dist/components/ic-tab-group.js.map +1 -1
  265. package/dist/components/ic-text-field2.js +19 -15
  266. package/dist/components/ic-text-field2.js.map +1 -1
  267. package/dist/components/ic-toast.js +1 -1
  268. package/dist/components/ic-toggle-button-group.js +35 -6
  269. package/dist/components/ic-toggle-button-group.js.map +1 -1
  270. package/dist/components/ic-toggle-button.js +11 -7
  271. package/dist/components/ic-toggle-button.js.map +1 -1
  272. package/dist/components/ic-top-navigation.js +7 -4
  273. package/dist/components/ic-top-navigation.js.map +1 -1
  274. package/dist/components/ic-typography2.js +1 -1
  275. package/dist/components/ic-typography2.js.map +1 -1
  276. package/dist/core/core.css +844 -88
  277. package/dist/core/core.esm.js +1 -1
  278. package/dist/core/core.esm.js.map +1 -1
  279. package/dist/core/{p-29767574.entry.js → p-03dc6b93.entry.js} +2 -2
  280. package/dist/core/p-04339c98.entry.js +2 -0
  281. package/dist/core/p-04339c98.entry.js.map +1 -0
  282. package/dist/core/p-0aec7fab.entry.js +2 -0
  283. package/dist/core/p-0aec7fab.entry.js.map +1 -0
  284. package/dist/core/{p-37dea10d.entry.js → p-0cef50b7.entry.js} +2 -2
  285. package/dist/core/{p-4a3b1f06.entry.js → p-12f72d83.entry.js} +2 -2
  286. package/dist/core/p-12f72d83.entry.js.map +1 -0
  287. package/dist/core/{p-f5b2b26d.entry.js → p-15fd6539.entry.js} +2 -2
  288. package/dist/core/p-175baf98.entry.js +2 -0
  289. package/dist/core/p-175baf98.entry.js.map +1 -0
  290. package/dist/core/{p-806a0fab.entry.js → p-2223c7ee.entry.js} +2 -2
  291. package/dist/core/p-274b1ed7.entry.js +2 -0
  292. package/dist/core/p-274b1ed7.entry.js.map +1 -0
  293. package/dist/core/p-2a300ec7.entry.js +2 -0
  294. package/dist/core/p-2a300ec7.entry.js.map +1 -0
  295. package/dist/core/{p-f0ae2b99.entry.js → p-303307bb.entry.js} +2 -2
  296. package/dist/core/p-3317f083.entry.js +2 -0
  297. package/dist/core/p-3317f083.entry.js.map +1 -0
  298. package/dist/core/p-35bd9d76.entry.js +2 -0
  299. package/dist/core/p-35bd9d76.entry.js.map +1 -0
  300. package/dist/core/p-36f4e0bd.entry.js +2 -0
  301. package/dist/core/p-36f4e0bd.entry.js.map +1 -0
  302. package/dist/core/p-3a4000d8.entry.js +2 -0
  303. package/dist/core/p-3a4000d8.entry.js.map +1 -0
  304. package/dist/core/{p-5cd016e1.entry.js → p-48463a79.entry.js} +2 -2
  305. package/dist/core/p-48463a79.entry.js.map +1 -0
  306. package/dist/core/{p-d4a83e25.entry.js → p-4fea4610.entry.js} +2 -2
  307. package/dist/core/{p-2ef46ead.entry.js → p-60d458e5.entry.js} +2 -2
  308. package/dist/core/{p-690c5e80.entry.js → p-685d6aa9.entry.js} +2 -2
  309. package/dist/core/p-6bb3ef22.entry.js +2 -0
  310. package/dist/core/p-6bb3ef22.entry.js.map +1 -0
  311. package/dist/core/{p-2140431c.entry.js → p-6cb1f1da.entry.js} +2 -2
  312. package/dist/core/{p-c9cf932c.entry.js → p-78f46cf8.entry.js} +2 -2
  313. package/dist/core/p-78f46cf8.entry.js.map +1 -0
  314. package/dist/core/p-79c132e3.entry.js +2 -0
  315. package/dist/core/p-79c132e3.entry.js.map +1 -0
  316. package/dist/core/p-7cba80ac.entry.js +2 -0
  317. package/dist/core/p-7cba80ac.entry.js.map +1 -0
  318. package/dist/core/p-81f80487.entry.js +2 -0
  319. package/dist/core/p-81f80487.entry.js.map +1 -0
  320. package/dist/core/p-85be0268.entry.js +2 -0
  321. package/dist/core/p-85be0268.entry.js.map +1 -0
  322. package/dist/core/p-85d33e38.entry.js +2 -0
  323. package/dist/core/p-85d33e38.entry.js.map +1 -0
  324. package/dist/core/{p-d93bac01.entry.js → p-88810080.entry.js} +2 -2
  325. package/dist/core/p-88810080.entry.js.map +1 -0
  326. package/dist/core/p-97e8246c.entry.js +2 -0
  327. package/dist/core/p-97e8246c.entry.js.map +1 -0
  328. package/dist/core/p-98816f52.entry.js +2 -0
  329. package/dist/core/p-98816f52.entry.js.map +1 -0
  330. package/dist/core/{p-bbeb03ef.entry.js → p-a01841e2.entry.js} +2 -2
  331. package/dist/core/p-a6be333f.entry.js +2 -0
  332. package/dist/core/p-a6be333f.entry.js.map +1 -0
  333. package/dist/core/p-a91b0212.entry.js +2 -0
  334. package/dist/core/p-a91b0212.entry.js.map +1 -0
  335. package/dist/core/p-ae42affc.entry.js +2 -0
  336. package/dist/core/p-ae42affc.entry.js.map +1 -0
  337. package/dist/core/{p-a9341313.entry.js → p-b06939fa.entry.js} +2 -2
  338. package/dist/core/{p-95f603dd.entry.js → p-ba37e169.entry.js} +2 -2
  339. package/dist/core/p-ba55afea.entry.js +2 -0
  340. package/dist/core/p-ba55afea.entry.js.map +1 -0
  341. package/dist/core/p-bbd2febe.entry.js +2 -0
  342. package/dist/core/p-bbd2febe.entry.js.map +1 -0
  343. package/dist/core/p-c0d5043e.entry.js +2 -0
  344. package/dist/core/p-c0d5043e.entry.js.map +1 -0
  345. package/dist/core/p-c43d676b.entry.js +2 -0
  346. package/dist/core/p-c43d676b.entry.js.map +1 -0
  347. package/dist/core/p-c4f32f77.entry.js +2 -0
  348. package/dist/core/p-c4f32f77.entry.js.map +1 -0
  349. package/dist/core/{p-7bff1e96.entry.js → p-c563d479.entry.js} +2 -2
  350. package/dist/core/{p-922984cb.entry.js → p-c5d3c71e.entry.js} +2 -2
  351. package/dist/core/{p-cedc375e.entry.js → p-c7e01fcd.entry.js} +2 -2
  352. package/dist/core/p-c82240b7.entry.js +2 -0
  353. package/dist/core/p-c82240b7.entry.js.map +1 -0
  354. package/dist/core/{p-7b35de65.entry.js → p-cdbc3414.entry.js} +2 -2
  355. package/dist/core/{p-705eb610.entry.js → p-d3263ed9.entry.js} +2 -2
  356. package/dist/core/{p-fdd0b732.entry.js → p-d43e0f4b.entry.js} +2 -2
  357. package/dist/core/{p-ef78bebc.entry.js → p-d987bdc0.entry.js} +2 -2
  358. package/dist/core/p-d987bdc0.entry.js.map +1 -0
  359. package/dist/core/p-e107f362.entry.js +2 -0
  360. package/dist/core/p-e107f362.entry.js.map +1 -0
  361. package/dist/core/{p-ee6dd94c.entry.js → p-ec097c1f.entry.js} +2 -2
  362. package/dist/core/{p-428f95f8.entry.js → p-f069f50e.entry.js} +2 -2
  363. package/dist/core/p-f069f50e.entry.js.map +1 -0
  364. package/dist/core/{p-acbd15ab.entry.js → p-f580f0ce.entry.js} +2 -2
  365. package/dist/core/{p-b7eb8ef9.js → p-f99576e0.js} +2 -2
  366. package/dist/core/p-f99576e0.js.map +1 -0
  367. package/dist/esm/core.js +1 -1
  368. package/dist/esm/{helpers-e8797e8d.js → helpers-7bf8c67f.js} +6 -5
  369. package/dist/esm/helpers-7bf8c67f.js.map +1 -0
  370. package/dist/esm/ic-accordion-group.entry.js +1 -1
  371. package/dist/esm/ic-accordion.entry.js +1 -1
  372. package/dist/esm/ic-alert.entry.js +3 -3
  373. package/dist/esm/ic-alert.entry.js.map +1 -1
  374. package/dist/esm/ic-back-to-top.entry.js +9 -6
  375. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  376. package/dist/esm/ic-badge.entry.js +2 -2
  377. package/dist/esm/ic-badge.entry.js.map +1 -1
  378. package/dist/esm/ic-breadcrumb-group.entry.js +43 -20
  379. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  380. package/dist/esm/ic-breadcrumb.entry.js +2 -2
  381. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  382. package/dist/esm/ic-button_3.entry.js +11 -13
  383. package/dist/esm/ic-button_3.entry.js.map +1 -1
  384. package/dist/esm/ic-card-vertical.entry.js +7 -6
  385. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  386. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  387. package/dist/esm/ic-checkbox.entry.js +1 -1
  388. package/dist/esm/ic-chip.entry.js +1 -1
  389. package/dist/esm/ic-data-row.entry.js +1 -1
  390. package/dist/esm/ic-dialog.entry.js +2 -2
  391. package/dist/esm/ic-dialog.entry.js.map +1 -1
  392. package/dist/esm/ic-divider.entry.js +1 -1
  393. package/dist/esm/ic-empty-state.entry.js +1 -1
  394. package/dist/esm/ic-footer-link-group.entry.js +3 -3
  395. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  396. package/dist/esm/ic-footer-link.entry.js +1 -1
  397. package/dist/esm/ic-footer.entry.js +1 -1
  398. package/dist/esm/ic-hero.entry.js +2 -2
  399. package/dist/esm/ic-hero.entry.js.map +1 -1
  400. package/dist/esm/ic-horizontal-scroll.entry.js +12 -5
  401. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  402. package/dist/esm/ic-input-component-container_3.entry.js +11 -23
  403. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  404. package/dist/esm/ic-input-label_2.entry.js +21 -25
  405. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  406. package/dist/esm/ic-link.entry.js +3 -8
  407. package/dist/esm/ic-link.entry.js.map +1 -1
  408. package/dist/esm/ic-menu-group.entry.js +1 -1
  409. package/dist/esm/ic-menu-item.entry.js +10 -9
  410. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  411. package/dist/esm/ic-navigation-button.entry.js +7 -3
  412. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  413. package/dist/esm/ic-navigation-group.entry.js +4 -2
  414. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  415. package/dist/esm/ic-navigation-item.entry.js +29 -4
  416. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  417. package/dist/esm/ic-navigation-menu.entry.js +5 -4
  418. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  419. package/dist/esm/ic-page-header.entry.js +5 -3
  420. package/dist/esm/ic-page-header.entry.js.map +1 -1
  421. package/dist/esm/ic-pagination-item.entry.js +1 -1
  422. package/dist/esm/ic-pagination.entry.js +5 -23
  423. package/dist/esm/ic-pagination.entry.js.map +1 -1
  424. package/dist/esm/ic-popover-menu.entry.js +6 -6
  425. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  426. package/dist/esm/ic-radio-group.entry.js +1 -1
  427. package/dist/esm/ic-radio-option.entry.js +1 -1
  428. package/dist/esm/ic-search-bar.entry.js +4 -4
  429. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  430. package/dist/esm/ic-select.entry.js +10 -12
  431. package/dist/esm/ic-select.entry.js.map +1 -1
  432. package/dist/esm/ic-side-navigation.entry.js +11 -7
  433. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  434. package/dist/esm/ic-status-tag.entry.js +5 -4
  435. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  436. package/dist/esm/ic-step.entry.js +1 -1
  437. package/dist/esm/ic-stepper.entry.js +1 -1
  438. package/dist/esm/ic-switch.entry.js +2 -2
  439. package/dist/esm/ic-switch.entry.js.map +1 -1
  440. package/dist/esm/ic-tab-group.entry.js +3 -19
  441. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  442. package/dist/esm/ic-tab-panel.entry.js +1 -1
  443. package/dist/esm/ic-tab.entry.js +1 -1
  444. package/dist/esm/ic-text-field.entry.js +18 -15
  445. package/dist/esm/ic-text-field.entry.js.map +1 -1
  446. package/dist/esm/ic-theme.entry.js +1 -1
  447. package/dist/esm/ic-toast.entry.js +1 -1
  448. package/dist/esm/ic-toggle-button-group.entry.js +28 -4
  449. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  450. package/dist/esm/ic-toggle-button.entry.js +9 -6
  451. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  452. package/dist/esm/ic-top-navigation.entry.js +6 -4
  453. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  454. package/dist/esm/ic-typography.entry.js +2 -2
  455. package/dist/esm/ic-typography.entry.js.map +1 -1
  456. package/dist/esm/loader.js +1 -1
  457. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +5 -0
  458. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +1 -0
  459. package/dist/types/components/ic-button/ic-button.d.ts +9 -5
  460. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +2 -2
  461. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +7 -1
  462. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -4
  463. package/dist/types/components/ic-input-label/ic-input-label.d.ts +0 -4
  464. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +10 -4
  465. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +5 -1
  466. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +5 -1
  467. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +7 -1
  468. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +5 -0
  469. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
  470. package/dist/types/components/ic-pagination/ic-pagination.d.ts +0 -4
  471. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +3 -6
  472. package/dist/types/components/ic-select/ic-select.d.ts +6 -2
  473. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +4 -0
  474. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +0 -4
  475. package/dist/types/components/ic-text-field/ic-text-field.d.ts +5 -1
  476. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +9 -5
  477. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +12 -5
  478. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +5 -1
  479. package/dist/types/components.d.ts +152 -48
  480. package/hydrate/index.js +297 -236
  481. package/package.json +2 -2
  482. package/vscode-data.json +201 -70
  483. package/dist/cjs/helpers-69219f14.js.map +0 -1
  484. package/dist/core/p-13d5875c.entry.js +0 -2
  485. package/dist/core/p-13d5875c.entry.js.map +0 -1
  486. package/dist/core/p-19872973.entry.js +0 -2
  487. package/dist/core/p-19872973.entry.js.map +0 -1
  488. package/dist/core/p-2e909738.entry.js +0 -2
  489. package/dist/core/p-2e909738.entry.js.map +0 -1
  490. package/dist/core/p-2eae9b27.entry.js +0 -2
  491. package/dist/core/p-2eae9b27.entry.js.map +0 -1
  492. package/dist/core/p-3d9726a3.entry.js +0 -2
  493. package/dist/core/p-3d9726a3.entry.js.map +0 -1
  494. package/dist/core/p-428f95f8.entry.js.map +0 -1
  495. package/dist/core/p-4973c563.entry.js +0 -2
  496. package/dist/core/p-4973c563.entry.js.map +0 -1
  497. package/dist/core/p-4a3b1f06.entry.js.map +0 -1
  498. package/dist/core/p-5cd016e1.entry.js.map +0 -1
  499. package/dist/core/p-5ef8e106.entry.js +0 -2
  500. package/dist/core/p-5ef8e106.entry.js.map +0 -1
  501. package/dist/core/p-5f4a6555.entry.js +0 -2
  502. package/dist/core/p-5f4a6555.entry.js.map +0 -1
  503. package/dist/core/p-605c0c92.entry.js +0 -2
  504. package/dist/core/p-605c0c92.entry.js.map +0 -1
  505. package/dist/core/p-655a9e0f.entry.js +0 -2
  506. package/dist/core/p-655a9e0f.entry.js.map +0 -1
  507. package/dist/core/p-65a16de9.entry.js +0 -2
  508. package/dist/core/p-65a16de9.entry.js.map +0 -1
  509. package/dist/core/p-76263187.entry.js +0 -2
  510. package/dist/core/p-76263187.entry.js.map +0 -1
  511. package/dist/core/p-78c1f1cc.entry.js +0 -2
  512. package/dist/core/p-78c1f1cc.entry.js.map +0 -1
  513. package/dist/core/p-79d0be03.entry.js +0 -2
  514. package/dist/core/p-79d0be03.entry.js.map +0 -1
  515. package/dist/core/p-85173458.entry.js +0 -2
  516. package/dist/core/p-85173458.entry.js.map +0 -1
  517. package/dist/core/p-979c2792.entry.js +0 -2
  518. package/dist/core/p-979c2792.entry.js.map +0 -1
  519. package/dist/core/p-97fb2bdf.entry.js +0 -2
  520. package/dist/core/p-97fb2bdf.entry.js.map +0 -1
  521. package/dist/core/p-9ec7f96c.entry.js +0 -2
  522. package/dist/core/p-9ec7f96c.entry.js.map +0 -1
  523. package/dist/core/p-9fa93dfe.entry.js +0 -2
  524. package/dist/core/p-9fa93dfe.entry.js.map +0 -1
  525. package/dist/core/p-ae0775aa.entry.js +0 -2
  526. package/dist/core/p-ae0775aa.entry.js.map +0 -1
  527. package/dist/core/p-b7eb8ef9.js.map +0 -1
  528. package/dist/core/p-ba6ecc15.entry.js +0 -2
  529. package/dist/core/p-ba6ecc15.entry.js.map +0 -1
  530. package/dist/core/p-c0fc3d02.entry.js +0 -2
  531. package/dist/core/p-c0fc3d02.entry.js.map +0 -1
  532. package/dist/core/p-c396bd4d.entry.js +0 -2
  533. package/dist/core/p-c396bd4d.entry.js.map +0 -1
  534. package/dist/core/p-c9cf932c.entry.js.map +0 -1
  535. package/dist/core/p-d93bac01.entry.js.map +0 -1
  536. package/dist/core/p-eb3b4935.entry.js +0 -2
  537. package/dist/core/p-eb3b4935.entry.js.map +0 -1
  538. package/dist/core/p-ebafab37.entry.js +0 -2
  539. package/dist/core/p-ebafab37.entry.js.map +0 -1
  540. package/dist/core/p-ef78bebc.entry.js.map +0 -1
  541. package/dist/core/p-f24984c5.entry.js +0 -2
  542. package/dist/core/p-f24984c5.entry.js.map +0 -1
  543. package/dist/core/p-f71c00ce.entry.js +0 -2
  544. package/dist/core/p-f71c00ce.entry.js.map +0 -1
  545. package/dist/esm/helpers-e8797e8d.js.map +0 -1
  546. /package/dist/core/{p-29767574.entry.js.map → p-03dc6b93.entry.js.map} +0 -0
  547. /package/dist/core/{p-37dea10d.entry.js.map → p-0cef50b7.entry.js.map} +0 -0
  548. /package/dist/core/{p-f5b2b26d.entry.js.map → p-15fd6539.entry.js.map} +0 -0
  549. /package/dist/core/{p-806a0fab.entry.js.map → p-2223c7ee.entry.js.map} +0 -0
  550. /package/dist/core/{p-f0ae2b99.entry.js.map → p-303307bb.entry.js.map} +0 -0
  551. /package/dist/core/{p-d4a83e25.entry.js.map → p-4fea4610.entry.js.map} +0 -0
  552. /package/dist/core/{p-2ef46ead.entry.js.map → p-60d458e5.entry.js.map} +0 -0
  553. /package/dist/core/{p-690c5e80.entry.js.map → p-685d6aa9.entry.js.map} +0 -0
  554. /package/dist/core/{p-2140431c.entry.js.map → p-6cb1f1da.entry.js.map} +0 -0
  555. /package/dist/core/{p-bbeb03ef.entry.js.map → p-a01841e2.entry.js.map} +0 -0
  556. /package/dist/core/{p-a9341313.entry.js.map → p-b06939fa.entry.js.map} +0 -0
  557. /package/dist/core/{p-95f603dd.entry.js.map → p-ba37e169.entry.js.map} +0 -0
  558. /package/dist/core/{p-7bff1e96.entry.js.map → p-c563d479.entry.js.map} +0 -0
  559. /package/dist/core/{p-922984cb.entry.js.map → p-c5d3c71e.entry.js.map} +0 -0
  560. /package/dist/core/{p-cedc375e.entry.js.map → p-c7e01fcd.entry.js.map} +0 -0
  561. /package/dist/core/{p-7b35de65.entry.js.map → p-cdbc3414.entry.js.map} +0 -0
  562. /package/dist/core/{p-705eb610.entry.js.map → p-d3263ed9.entry.js.map} +0 -0
  563. /package/dist/core/{p-fdd0b732.entry.js.map → p-d43e0f4b.entry.js.map} +0 -0
  564. /package/dist/core/{p-ee6dd94c.entry.js.map → p-ec097c1f.entry.js.map} +0 -0
  565. /package/dist/core/{p-acbd15ab.entry.js.map → p-f580f0ce.entry.js.map} +0 -0
@@ -0,0 +1,2 @@
1
+ import{r as i,c as t,f as e,h as s,H as l,g as o}from"./p-6b5e91e2.js";import{c as a,C as h,A as n,E as r,k as c,v as d,r as u,j as p,a as b,l as f,n as v,p as m,F as g,w as x,G as w}from"./p-f99576e0.js";const y=`<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n<path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor" />\n</svg>\n`;const k=`<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">\n<path d="M12.6666 4.27334L11.7266 3.33334L7.99998 7.06001L4.27331 3.33334L3.33331 4.27334L7.05998 8.00001L3.33331 11.7267L4.27331 12.6667L7.99998 8.94001L11.7266 12.6667L12.6666 11.7267L8.93998 8.00001L12.6666 4.27334Z" fill="currentColor" />\n</svg>\n`;const L='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;position:relative;--ic-input-label-helpertext-padding:var(--ic-space-xxs);--menu-max-height:100px;--border-color:var(--ic-select-field-border);--border-color-hover:var(--ic-select-field-border-hover);--border-color-pressed:var(--ic-select-field-border-pressed);--border-color-disabled:var(--ic-select-field-border-disabled);--border-color-error:var(--ic-select-field-border-error);--border-color-error-hover:var(--ic-select-field-border-error-hover);--border-color-error-pressed:var(--ic-select-field-border-error-pressed);--border-color-success:var(--ic-select-field-border-success);--border-color-success-hover:var(--ic-select-field-border-success-hover);--border-color-success-pressed:var(--ic-select-field-border-success-pressed);--border-color-warning:var(--ic-select-field-border-warning);--border-color-warning-hover:var(--ic-select-field-border-warning-hover);--border-color-warning-pressed:var(--ic-select-field-border-warning-pressed);--ic-input-label-text-color:var(--ic-select-field-labe);--ic-input-label-helper-text-color:var(\n --ic-select-input-field-label-subtitle\n );--ic-input-validation-status-text-color:var(--ic-select-state-text);--ic-input-validation-error:var(--ic-select-state-icon-error);--ic-input-validation-warning-icon-color:var(--ic-select-state-icon-warning);--ic-input-validation-success-icon-color:var(--ic-select-state-icon-success);--menu-item-text-color:var(--ic-select-list-option-text);--menu-bg-color:var(--ic-select-list-option-background);--menu-border-color:var(--ic-select-dropdown-list-border)}:host(.ic-select-disabled){--ic-input-label-text-color:var(--ic-select-field-label-disabled);--ic-input-label-helper-text-color:var(\n --ic-select-input-field-label-subtitle-disabled\n )}:host(.ic-select-full-width){width:100%}ic-input-component-container.menu-open{--border-color:var(--ic-select-field-border-pressed)}ic-input-validation .status-icon,ic-input-validation .statustext{visibility:visible}ic-input-validation.menu-open .status-icon,ic-input-validation.menu-open .statustext{visibility:hidden;transition:visibility 0s}ic-input-label{margin-bottom:var(--ic-space-xs) !important}select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-select-field-background);color:var(--ic-select-content-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:0.375rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 0.375rem center;background-image:var(--ic-select-mobile-dropdown-icon);caret-color:var(--ic-select-input-field-text-cursor)}select option,.select-option-selected{color:var(--ic-select-list-option-text)}select:disabled{color:var(--ic-select-content-text-disabled);background-image:var(--ic-select-mobile-dropdown-icon-disabled)}select:focus{border:0;outline:0}select:not([disabled]){cursor:pointer}.select-container{width:100%;display:flex;align-items:center;position:relative}.select-input{width:100%;height:100%;padding:0 0.375rem;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none;background-color:var(--ic-select-field-background);color:var(--ic-select-content-text)}.select-input:focus{outline:var(--ic-hc-focus-outline)}.select-input[disabled]{pointer-events:none}:host(.ic-select-searchable) .select-input{cursor:auto}.select-input.with-clear-button{padding-right:0}.value-text{max-width:calc(100% - (var(--ic-space-lg) + var(--ic-space-xxs)));box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:0 !important}.value-text.with-clear-button{padding-right:calc(var(--ic-space-xl) + var(--ic-space-xs))}.searchable-select-container{align-items:center;display:flex;width:100%;position:relative}.expand-icon{height:var(--ic-space-lg);padding-left:var(--ic-space-xxs);color:var(--ic-select-expand-icon-color)}.expand-icon>svg{display:inline-block;width:var(--ic-space-lg);height:var(--ic-space-lg)}:host(.ic-select-disabled) .expand-icon,:host(.ic-select-disabled) .expand-icon>svg>path{color:var(--ic-select-disabled-expand-icon-color)}:host(.ic-select-searchable) .expand-icon{padding-left:0;height:2.25rem}:host(.ic-select-searchable) .expand-icon>svg{height:2.25rem;padding:0 calc(var(--ic-space-xxxs) + var(--ic-space-xxs)) 0\n var(--ic-space-xxs)}:host(.ic-select-searchable:not(.ic-select-disabled)) .expand-icon>svg{cursor:pointer}.expand-icon-open{color:var(--ic-select-expand-icon-color)}.expand-icon-open,:host(.ic-select-searchable) .expand-icon-open{transform:rotateX(180deg)}:host(.ic-select-disabled) .value-text,.placeholder{color:var(--ic-select-content-placeholder-text)}.select-input-end{display:flex;align-items:center}.clear-button-container{display:flex;align-items:center}.divider{width:var(--ic-space-1px);background-color:var(--ic-select-content-divider);margin:var(--ic-space-xxs) 0;border-radius:var(--ic-space-1px);height:var(--ic-space-lg)}:host(.ic-select-small) .divider{height:var(--ic-space-md)}:host(.ic-select-large) .divider{height:var(--ic-space-xl)}.clear-button{color:var(--ic-select-clear-button);position:absolute;right:calc(var(--ic-space-xl) + var(--ic-space-xxs) - var(--ic-space-1px));border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus{background-color:var(--ic-color-focus-inner);box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer);border-radius:0.25rem}.clear-button.searchable{position:static}.searchable-select-results-status,.multi-select-selected-count{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}::slotted([slot="icon"]){fill:var(--ic-select-content-placeholder-text)}.has-value ::slotted([slot="icon"]){fill:var(--ic-select-content-text)}.readonly ::slotted([slot="icon"]){padding:0.375rem;margin-bottom:0.75rem}@media (forced-colors: active){.has-value ::slotted([slot="icon"]){fill:currentcolor}}';let z=0;const C=[...x,"tabindex","title"];const $=class{constructor(s){i(this,s);this.icBlur=t(this,"icBlur",7);this.icChange=t(this,"icChange",7);this.icClear=t(this,"icClear",7);this.icClose=t(this,"icClose",7);this.icFocus=t(this,"icFocus",7);this.icInput=t(this,"icInput",7);this.icOpen=t(this,"icOpen",7);this.icOptionSelect=t(this,"icOptionSelect",7);this.icOptionDeselect=t(this,"icOptionDeselect",7);this.icRetryLoad=t(this,"icRetryLoad",7);this.hasSetDefaultValue=false;this.inheritedAttributes={};this.initialOptionsEmpty=false;this.inputId=`ic-select-input-${z++}`;this.menuId=`${this.inputId}-menu`;this.searchableMenuItemSelected=false;this.ungroupedOptions=[];this.hostMutationObserver=null;this.hostMutationCallback=i=>{let t=false;i.forEach((({attributeName:i,type:e,addedNodes:s,removedNodes:l})=>{if(C.includes(i)){this.inheritedAttributes[i]=this.el.getAttribute(i);t=true}else if(e==="childList"){t=a(s,l,"icon")}}));if(t){e(this)}};this.handleRetry=i=>{var t;if(i.detail.keyPressed)(t=this.searchableSelectElement)===null||t===void 0?void 0:t.focus();this.blurredBecauseButtonPressed=true;this.retryButtonClick=true;this.hasSetDefaultValue=true;this.icRetryLoad.emit({value:this.hiddenInputValue})};this.emitIcChange=i=>{if(!this.searchable){if(this.multiple&&!Array.isArray(i)&&i!==null){this.handleMultipleSelectChange(i)}else{this.value=i}}clearTimeout(this.debounceIcChange);this.debounceIcChange=window.setTimeout((()=>{const t=this.multiple?this.value:i;this.icChange.emit({value:t})}),this.currDebounce)};this.emitImmediateIcChange=i=>{this.value=i;clearTimeout(this.debounceIcChange);this.icChange.emit({value:i})};this.deduplicateOptions=i=>{const t=[];const e=[];let s;i.forEach((i=>{if(i.children){s=[];i.children.forEach((i=>{if(t.includes(i.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${i.value}) which has been removed.`)}else{t.push(i.value);s.push(i)}}));const l=Object.assign(Object.assign({},i),{children:s});e.push(l)}else{if(t.includes(i.value)){console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${i.value}) which has been removed.`)}else{t.push(i.value);e.push(i)}}}));return e};this.setOptionsValuesFromLabels=()=>{var i;if(((i=this.options)===null||i===void 0?void 0:i.length)>0&&this.options.map){this.options.map((i=>{if(!i.value){i.value=i.label}}))}};this.setUngroupedOptions=i=>{this.ungroupedOptions=i.detail.options};this.setTextColor=()=>{if(this.nativeSelectElement.selectedIndex===0){this.nativeSelectElement.className="placeholder"}else{this.nativeSelectElement.className="select-option-selected"}};this.setMenuChange=i=>{if(this.open!==i){this.open=i}};this.getLabelFromValue=i=>h(i,this.uniqueOptions);this.getMultipleOptionsString=i=>{const t=i===null||i===void 0?void 0:i.map((i=>this.getLabelFromValue(i)));return t===null||t===void 0?void 0:t.join(", ")};this.getFilteredChildMenuOptions=i=>{let t=i.children;if(this.searchable){t=n(i.children,this.includeDescriptionsInSearch,this.searchableSelectInputValue,this.searchMatchPosition)}else{t=n(i.children,false,this.pressedCharacters,"start")}const e=Object.assign({},i);e.children=t;return e};this.getValueSortedByOptions=i=>{const t=i;const e=this.ungroupedOptions.map((i=>i.value));t.sort(((i,t)=>e.indexOf(i)-e.indexOf(t)));return t};this.handleNativeSelectChange=()=>{this.icOptionSelect.emit({value:this.nativeSelectElement.value});this.emitImmediateIcChange(this.nativeSelectElement.value);this.setTextColor()};this.handleCustomSelectChange=i=>{var t;const e=i.detail.value;if(this.searchable&&i.detail.label===this.emptyOptionListText){this.searchableSelectElement.focus();return}if(this.searchable){this.value=e;this.searchableMenuItemSelected=true;if(this.value===this.currValue){this.searchableSelectInputValue=this.getLabelFromValue(this.value)}this.inputValueToFilter=null;this.hiddenInputValue=this.getValueFromLabel(this.searchableSelectInputValue)}if(this.multiple&&((t=this.value)===null||t===void 0?void 0:t.includes(e))){this.icOptionDeselect.emit({value:e})}else{this.icOptionSelect.emit({value:e})}this.ariaActiveDescendant=i.detail.optionId;this.emitIcChange(e)};this.handleMultipleSelectChange=i=>{if(this.value){let t=this.value.slice();if(this.value.includes(i)){const e=t.indexOf(i);t.splice(e,1)}else{t.push(i);t=this.getValueSortedByOptions(t)}this.value=t.length===0?null:t}else{const t=[];t.push(i);this.value=t}};this.handleSelectAllChange=i=>{const t=i.detail.select;const e=this.ungroupedOptions.filter((i=>!i.disabled));const s=e.map((i=>i.value));let l;if(t){let i;if(this.value){i=s.filter((i=>this.value&&!this.value.includes(i)))}else{i=s}i.forEach((i=>this.icOptionSelect.emit({value:i})));l=s}else{this.value.forEach((i=>this.icOptionDeselect.emit({value:i})));l=null}this.emitIcChange(l)};this.handleMenuChange=i=>{this.open=i.detail.open;this.pressedCharacters="";this.searchable&&this.handleFocusIndicatorDisplay()};this.handleMenuKeyPress=i=>{i.cancelBubble=true;if(!this.multiple){this.handleCharacterKeyDown(i.detail.key)}};this.handleFocusIndicatorDisplay=()=>{const i=this.el.shadowRoot.querySelector(".focus-indicator");if(this.open){i.classList.add("focus-indicator-enabled")}else{i.classList.remove("focus-indicator-enabled")}};this.handleMouseDown=i=>{if(!this.open){i.preventDefault()}};this.isExternalFiltering=()=>this.searchable&&this.disableAutoFiltering;this.handleClick=i=>{var t;if(!this.open){if(this.isExternalFiltering()){this.menu.options=this.filteredOptions}else if(!this.hasTimedOut&&!this.loading&&!((t=this.noOptions)===null||t===void 0?void 0:t.length)&&(!this.searchable||this.searchableMenuItemSelected)){this.noOptions=null;this.menu.options=this.uniqueOptions}}if(i.detail!==0){this.menu.handleClickOpen()}};this.handleExpandIconMouseDown=i=>{if(!this.disabled){i.preventDefault();this.searchableSelectElement.focus();this.handleClick(i)}};this.handleClear=i=>{i.stopPropagation();this.hasTimedOut=false;clearTimeout(this.timeoutTimer);this.noOptions=null;this.emitImmediateIcChange(null);this.icClear.emit();if(this.searchable){this.searchableSelectElement.value=null;this.searchableSelectInputValue=null;this.filteredOptions=this.uniqueOptions;this.hiddenInputValue=null;this.searchableSelectElement.focus()}else{this.customSelectElement.focus()}};this.handleCharacterKeyDown=i=>{if(this.open&&i===" "&&this.pressedCharacters.length===0&&!this.hasTimedOut&&!this.loading){this.setMenuChange(false)}if(i.length===1&&!this.searchable){window.clearTimeout(this.characterKeyPressTimer);this.characterKeyPressTimer=window.setTimeout((()=>this.pressedCharacters=""),1e3);if(!(i===" "&&!this.pressedCharacters)){this.pressedCharacters+=i;this.handleFilter();if(!this.noOptions){this.emitImmediateIcChange(this.filteredOptions[0].value)}}}else{this.pressedCharacters=""}};this.handleNativeSelectKeyDown=i=>{if(i.key!=="Escape"&&i.key!=="Tab"||this.open){i.cancelBubble=true}this.handleCharacterKeyDown(i.key)};this.handleKeyDown=i=>{if(i.key!=="Escape"&&i.key!=="Tab"||this.open){i.cancelBubble=true}const t=i.key==="ArrowDown"||i.key==="ArrowUp";if(!this.open){if(this.isExternalFiltering()&&(i.key==="Enter"||t)){this.menu.options=this.filteredOptions}else{if(!this.hasTimedOut){this.noOptions=null;this.menu.options=this.uniqueOptions}}}if(this.open&&i.key==="Enter"){this.setMenuChange(false)}else{if(!(t&&this.noOptions!==null)){if(!(i.key===" "&&this.pressedCharacters.length>0)){this.menu.handleKeyboardOpen(i)}if(!this.multiple){this.handleCharacterKeyDown(i.key)}}}};this.handleClearButtonFocus=()=>{this.clearButtonFocused=true};this.handleClearButtonBlur=i=>{var t;const e=(t=this.menu)===null||t===void 0?void 0:t.querySelector("#retry-button");if(!(this.searchableSelectElement&&i.relatedTarget===this.searchableSelectElement)&&!(e&&i.relatedTarget===e)){this.setMenuChange(false);this.handleFocusIndicatorDisplay()}this.clearButtonFocused=false};this.handleFilter=()=>{var i;const t=this.deduplicateOptions(this.searchable?[...this.uniqueOptions]:this.ungroupedOptions);let e=false;let s=[];t.map((i=>{if(i.children)e=true}));let l;if(this.searchable){l=n(t,this.includeDescriptionsInSearch,this.inputValueToFilter,this.searchMatchPosition);this.searchableMenuItemSelected=false}else{l=n(t,false,this.pressedCharacters,"start")}if(!e&&((i=l[0])===null||i===void 0?void 0:i.label)!==this.emptyOptionListText){s=l}else if(e){t.map((i=>{if(this.includeGroupTitlesInSearch){if(l.indexOf(i)!==-1){s.push(i)}else{s.push(this.getFilteredChildMenuOptions(i))}}else{s.push(this.getFilteredChildMenuOptions(i))}}))}let o=false;if(e){o=true;s.map((i=>{if(i.children.length>0){o=false}}))}if(s.length>0&&!o){this.noOptions=null;this.filteredOptions=s}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.filteredOptions=this.noOptions}};this.triggerLoading=()=>{this.hasTimedOut=false;this.noOptions=[{label:this.loadingLabel,value:"",loading:true}];if(this.filteredOptions!==this.noOptions&&this.searchable){this.filteredOptions=this.noOptions}else if(this.uniqueOptions!==this.noOptions&&!this.searchable){this.uniqueOptions=this.noOptions}if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.loading=false;this.hasTimedOut=true;this.noOptions=[{label:this.loadingErrorLabel,value:"",timedOut:true}];this.filteredOptions=this.noOptions;if(!this.searchable)this.uniqueOptions=this.noOptions}),this.timeout)}};this.getValueFromLabel=i=>{var t;return(t=this.uniqueOptions.find((t=>t.label===i)))===null||t===void 0?void 0:t.value};this.handleSearchableSelectInput=i=>{this.searchableSelectInputValue=i.target.value;this.icInput.emit({value:this.searchableSelectInputValue});this.emitIcChange(this.searchableSelectInputValue);this.hiddenInputValue=this.searchableSelectInputValue;this.inputValueToFilter=this.searchableSelectInputValue;this.setMenuChange(true);if(!this.disableAutoFiltering){this.handleFilter();this.debounceAriaLiveUpdate()}};this.updateSearchableSelectResultAriaLive=()=>{const i=this.el.shadowRoot.querySelector(".searchable-select-results-status");if(i){if(this.noOptions!==null){i.innerText=this.emptyOptionListText}else{i.innerText=""}}};this.updateMultiSelectedCountAriaLive=()=>{var i;const t=this.el.shadowRoot.querySelector(".multi-select-selected-count");const e=`${(i=this.currValue)===null||i===void 0?void 0:i.length} of ${r(this.options)} selected`;if(t&&t.innerText!==e){t.innerText=e}};this.getDefaultValue=i=>this.getLabelFromValue(i)||i||null;this.setDefaultValue=()=>{if(!this.hasSetDefaultValue&&this.currValue){this.searchableSelectInputValue=this.searchable&&this.getDefaultValue(this.currValue);this.initialValue=this.currValue;this.hasSetDefaultValue=true}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=({relatedTarget:i})=>{var t;const e=i;if(e!==null&&(e.tagName==="UL"&&e.className.includes("menu")||e.tagName==="LI"&&e.className.includes("option"))){return}const s=(t=this.menu)===null||t===void 0?void 0:t.querySelector("#retry-button");const l=this.searchable&&!!this.menu&&e!==this.menu&&!Array.from(this.menu.querySelectorAll("[role='option']")).includes(e)&&!(this.clearButton&&e===this.clearButton)&&!(s&&e===s);if(l){if(!this.retryButtonClick){this.setMenuChange(false)}this.handleFocusIndicatorDisplay()}this.retryButtonClick=false;this.icBlur.emit()};this.onTimeoutBlur=i=>{if(i.detail.ev.relatedTarget!==this.searchableSelectElement&&!this.blurredBecauseButtonPressed){this.setMenuChange(false);this.handleFocusIndicatorDisplay();this.icBlur.emit()}this.blurredBecauseButtonPressed=false};this.handleFormReset=()=>{this.value=this.initialValue;if(this.searchable){this.searchableSelectInputValue=this.getDefaultValue(this.value);this.hiddenInputValue=this.value}};this.ariaActiveDescendant=undefined;this.clearButtonFocused=false;this.debounceIcChange=undefined;this.hiddenInputValue=undefined;this.noOptions=null;this.open=false;this.pressedCharacters="";this.searchableSelectInputValue=null;this.disabled=false;this.disableAutoFiltering=false;this.emptyOptionListText="No results found";this.form=undefined;this.fullWidth=false;this.helperText="";this.hideLabel=false;this.includeDescriptionsInSearch=false;this.includeGroupTitlesInSearch=false;this.label=undefined;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.multiple=false;this.name=this.inputId;this.placeholder="Select an option";this.readonly=false;this.required=false;this.searchable=false;this.searchMatchPosition="anywhere";this.selectOnEnter=false;this.showClearButton=false;this.size="medium";this.timeout=undefined;this.theme="inherit";this.validationStatus="";this.validationText="";this.loading=false;this.options=[];this.filteredOptions=this.options;this.uniqueOptions=this.options;this.debounce=0;this.currDebounce=this.debounce;this.value=undefined;this.initialValue=this.value;this.inputValueToFilter=this.value;this.currValue=this.value}loadingHandler(i){i&&this.triggerLoading()}watchOptionsHandler(){var i;if(!this.hasTimedOut&&this.options!==this.noOptions){this.loading=false;clearTimeout(this.timeoutTimer);if(this.isExternalFiltering()){if(((i=this.options)===null||i===void 0?void 0:i.length)>0){this.setOptionsValuesFromLabels();this.noOptions=null;this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions}else{this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}this.updateSearchableSelectResultAriaLive();this.setDefaultValue()}else{this.setOptionsValuesFromLabels();this.uniqueOptions=this.deduplicateOptions(this.options);this.filteredOptions=this.uniqueOptions;if(this.initialOptionsEmpty){this.setDefaultValue();this.initialOptionsEmpty=false}}}else{if(!this.searchable){this.options=this.noOptions}}}debounceChangedHandler(i){this.updateOnChangeDebounce(i)}valueChangedHandler(){if(this.value!==this.currValue){if(this.value&&this.multiple){this.currValue=this.getValueSortedByOptions(this.value);this.updateMultiSelectedCountAriaLive()}else{this.currValue=this.value}}if(this.searchable){this.searchableSelectInputValue=this.getLabelFromValue(this.currValue)||this.currValue}}openChangedHandler(){this.open?this.icOpen.emit():this.icClose.emit()}disconnectedCallback(){var i;c(this.el,this.handleFormReset);(i=this.hostMutationObserver)===null||i===void 0?void 0:i.disconnect()}componentWillLoad(){var i;this.inheritedAttributes=d(this.el,C);u(this.disabled,this.el);this.setOptionsValuesFromLabels();p(this.el,this.handleFormReset);if(!((i=this.options)===null||i===void 0?void 0:i.length)){this.initialOptionsEmpty=true;this.noOptions=[{label:this.emptyOptionListText,value:""}];this.uniqueOptions=this.noOptions;this.filteredOptions=this.noOptions}else{this.setDefaultValue();this.uniqueOptions=this.deduplicateOptions(this.options)}}componentDidLoad(){b([{prop:this.label,propName:"label"}],"Select");if(this.loading){this.triggerLoading()}this.hiddenInputValue=this.searchable&&this.currValue;this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true,childList:true})}componentDidRender(){if(this.nativeSelectElement&&!this.disabled){this.setTextColor()}}async setFocus(){if(this.nativeSelectElement){this.nativeSelectElement.focus()}else if(this.customSelectElement){this.customSelectElement.focus()}else if(this.searchableSelectElement){this.searchableSelectElement.focus()}}updateOnChangeDebounce(i){if(this.currDebounce!==i){this.currDebounce=i}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAria);window.setTimeout((()=>{this.updateSearchableSelectResultAriaLive()}),800)}render(){const{size:i,disabled:t,fullWidth:e,helperText:o,hideLabel:a,label:h,menuId:n,multiple:c,name:d,options:u,placeholder:p,readonly:b,required:x,searchable:L,showClearButton:z,validationStatus:C,validationText:$,currValue:T,theme:O}=this;f(true,this.el,d,this.searchable?this.hiddenInputValue:T,t);const H=`${C===w.Error}`;const M=v(this.inputId,o!=="",m(this.validationStatus,this.disabled)).trim();let B=!!this.el.querySelector(`[slot="icon"]`);if(B&&(t||b&&!this.value)){B=false}const j=`${T===null||T===void 0?void 0:T.length} of ${r(this.options)} selected`;return s(l,{class:{"ic-select-disabled":t,"ic-select-searchable":L,[`ic-select-${i}`]:i!=="medium","ic-select-full-width":e,[`ic-theme-${O}`]:O!=="inherit"},onBlur:this.onBlur},s("ic-input-container",{readonly:b},!a&&s("ic-input-label",{for:this.inputId,label:h,helperText:o,required:x,disabled:t,readonly:b}),s("ic-input-component-container",{ref:i=>this.anchorEl=i,class:{"menu-open":this.open},size:i,fullWidth:e,disabled:t,readonly:b,validationStatus:C},B&&s("span",{slot:"left-icon",class:{["readonly"]:b,["has-value"]:!!this.value}},s("slot",{name:"icon"})),b?s("ic-typography",null,s("p",null,c?this.getMultipleOptionsString(T):this.getLabelFromValue(T))):g()&&!c?s("select",Object.assign({ref:i=>this.nativeSelectElement=i,disabled:t,onChange:this.handleNativeSelectChange,required:x,id:this.inputId,"aria-label":h,"aria-describedby":M,"aria-invalid":H,onBlur:this.onBlur,onFocus:this.onFocus,onKeyDown:this.handleNativeSelectKeyDown,form:this.form},this.inheritedAttributes),s("option",{value:"",selected:true,disabled:!z},p),u.map((i=>{if(i.children){return s("optgroup",{label:i.label},i.children.map((i=>s("option",{value:i.value,disabled:i.disabled,selected:i.value===T},i.label))))}else{return s("option",{value:i.value,disabled:i.disabled,selected:i.value===T},i.label)}}))):L?s("div",{class:"searchable-select-container"},s("input",{class:{"select-input":true,"with-clear-button":!!this.searchableSelectInputValue},role:"combobox",autocomplete:"off","aria-label":h,"aria-describedby":M,"aria-activedescendant":this.ariaActiveDescendant,"aria-autocomplete":"list","aria-expanded":`${this.open}`,"aria-invalid":H,"aria-required":`${x}`,"aria-controls":n,ref:i=>this.searchableSelectElement=i,id:this.inputId,value:this.searchableSelectInputValue,placeholder:p,disabled:t,onInput:this.handleSearchableSelectInput,onClick:this.handleClick,onKeyDown:this.handleKeyDown,onFocus:this.onFocus,onBlur:this.onBlur,form:this.form}),this.searchableSelectInputValue&&(z||L)&&s("div",{class:"clear-button-container"},s("ic-button",{id:"clear-button",ref:i=>this.clearButton=i,"aria-label":this.searchableSelectInputValue&&T===null?"Clear input":"Clear selection",class:"clear-button",innerHTML:k,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:i,variant:"icon",theme:this.clearButtonFocused?"light":"dark"}),s("div",{class:"divider"})),s("span",{onMouseDown:this.handleExpandIconMouseDown,class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:y,"aria-hidden":"true"}),s("div",{"aria-live":"polite",role:"status",class:"searchable-select-results-status"})):s("div",{class:"select-container"},s("button",{class:"select-input",ref:i=>this.customSelectElement=i,id:this.inputId,"aria-label":`${h}, ${(c&&T?`${j}, ${this.getMultipleOptionsString(T)}`:this.getLabelFromValue(T))||p}${x?", required":""}`,"aria-describedby":M,"aria-invalid":H,"aria-haspopup":"listbox","aria-expanded":this.open?"true":"false","aria-owns":n,"aria-controls":n,disabled:t,onBlur:this.onBlur,onFocus:this.onFocus,onClick:this.handleClick,onMouseDown:this.handleMouseDown,onKeyDown:this.handleKeyDown},s("ic-typography",{variant:"body",class:{"value-text":true,"with-clear-button":T&&z,placeholder:!this.value||c&&this.value.length<1}},(c?this.getMultipleOptionsString(T):this.getLabelFromValue(T))||p),s("div",{class:"select-input-end"},T&&z&&s("div",{class:"divider"}),s("span",{class:{"expand-icon":true,"expand-icon-open":this.open},innerHTML:y,"aria-hidden":"true"}))),T&&z&&s("ic-button",{id:"clear-button","aria-label":"Clear selection",class:"clear-button",innerHTML:k,onClick:this.handleClear,onFocus:this.handleClearButtonFocus,onBlur:this.handleClearButtonBlur,size:i,variant:"icon",theme:this.clearButtonFocused?"light":"dark"}))),(!g()||c)&&s("ic-menu",{class:{"no-results":this.loading||this.hasTimedOut||this.noOptions!==null&&this.noOptions[0]&&this.noOptions[0].label===this.emptyOptionListText},ref:i=>this.menu=i,inputEl:L?this.searchableSelectElement:this.customSelectElement,inputLabel:h,anchorEl:this.anchorEl,size:i,menuId:n,open:this.open,options:L?this.filteredOptions:this.uniqueOptions,value:c?T:T,fullWidth:e,selectOnEnter:this.selectOnEnter,onMenuStateChange:this.handleMenuChange,onMenuOptionSelect:this.handleCustomSelectChange,onMenuOptionSelectAll:this.handleSelectAllChange,onMenuKeyPress:this.handleMenuKeyPress,onUngroupedOptionsSet:this.setUngroupedOptions,onRetryButtonClicked:this.handleRetry,parentEl:this.el,onTimeoutBlur:this.onTimeoutBlur,activationType:this.searchable||c||this.selectOnEnter?"manual":"automatic",closeOnSelect:!c}),this.multiple&&s("div",{"aria-live":"polite",role:"status",class:"multi-select-selected-count"}),m(this.validationStatus,this.disabled)&&s("ic-input-validation",{class:{"menu-open":this.open},ariaLiveMode:"polite",status:C,message:$,for:this.inputId})))}static get delegatesFocus(){return true}get el(){return o(this)}static get watchers(){return{loading:["loadingHandler"],options:["watchOptionsHandler"],debounce:["debounceChangedHandler"],value:["valueChangedHandler"],open:["openChangedHandler"]}}};$.style=L;export{$ as ic_select};
2
+ //# sourceMappingURL=p-3317f083.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icSelectCss","inputIds","MUTABLE_ATTRIBUTES","IC_INHERITED_ARIA","Select","this","hasSetDefaultValue","inheritedAttributes","initialOptionsEmpty","inputId","menuId","searchableMenuItemSelected","ungroupedOptions","hostMutationObserver","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","type","addedNodes","removedNodes","includes","el","getAttribute","checkSlotInChildMutations","forceUpdate","handleRetry","ev","detail","keyPressed","_a","searchableSelectElement","focus","blurredBecauseButtonPressed","retryButtonClick","icRetryLoad","emit","value","hiddenInputValue","emitIcChange","searchable","multiple","Array","isArray","handleMultipleSelectChange","clearTimeout","debounceIcChange","window","setTimeout","valueToEmit","icChange","currDebounce","emitImmediateIcChange","deduplicateOptions","options","uniqueValues","dedupedOptions","dedupedChildren","option","children","child","console","warn","label","push","modifiedParent","Object","assign","setOptionsValuesFromLabels","length","map","setUngroupedOptions","event","setTextColor","nativeSelectElement","selectedIndex","className","setMenuChange","open","getLabelFromValue","uniqueOptions","getMultipleOptionsString","selectedValues","selectedLabels","join","getFilteredChildMenuOptions","getFilteredMenuOptions","includeDescriptionsInSearch","searchableSelectInputValue","searchMatchPosition","pressedCharacters","newOption","getValueSortedByOptions","valueArray","valuesFromAllOptions","sort","a","b","indexOf","handleNativeSelectChange","icOptionSelect","handleCustomSelectChange","emptyOptionListText","currValue","inputValueToFilter","getValueFromLabel","icOptionDeselect","ariaActiveDescendant","optionId","slice","valueIndex","splice","handleSelectAllChange","selectAllOptions","select","allEnabledOptions","filter","disabled","allValues","newValue","unselectedValues","handleMenuChange","handleFocusIndicatorDisplay","handleMenuKeyPress","cancelBubble","handleCharacterKeyDown","key","focusIndicator","shadowRoot","querySelector","classList","add","remove","handleMouseDown","preventDefault","isExternalFiltering","disableAutoFiltering","handleClick","menu","filteredOptions","hasTimedOut","loading","noOptions","handleClickOpen","handleExpandIconMouseDown","handleClear","stopPropagation","timeoutTimer","icClear","customSelectElement","characterKeyPressTimer","handleFilter","handleNativeSelectKeyDown","handleKeyDown","isArrowKey","handleKeyboardOpen","handleClearButtonFocus","clearButtonFocused","handleClearButtonBlur","retryButton","relatedTarget","isGrouped","newFilteredOptions","menuOptionsFiltered","includeGroupTitlesInSearch","noChildOptionsWhenFiltered","triggerLoading","loadingLabel","timeout","loadingErrorLabel","timedOut","find","handleSearchableSelectInput","target","icInput","debounceAriaLiveUpdate","updateSearchableSelectResultAriaLive","searchableSelectResultsStatusEl","innerText","updateMultiSelectedCountAriaLive","multiSelectSelectedCountEl","selectedCount","getOptionsWithoutGroupTitlesCount","getDefaultValue","setDefaultValue","initialValue","onFocus","icFocus","onBlur","tagName","isSearchableAndNoFocusedInternalElements","from","querySelectorAll","clearButton","icBlur","onTimeoutBlur","handleFormReset","debounce","loadingHandler","watchOptionsHandler","debounceChangedHandler","updateOnChangeDebounce","valueChangedHandler","openChangedHandler","icOpen","icClose","disconnectedCallback","removeFormResetListener","disconnect","componentWillLoad","inheritAttributes","removeDisabledFalse","addFormResetListener","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","MutationObserver","observe","attributes","childList","componentDidRender","setFocus","debounceAria","render","size","fullWidth","helperText","hideLabel","name","placeholder","readonly","required","showClearButton","validationStatus","validationText","theme","renderHiddenInput","invalid","IcInformationStatus","Error","describedBy","getInputDescribedByText","hasValidationStatus","trim","showLeftIcon","optionsSelectedCount","h","Host","class","for","ref","anchorEl","slot","isMobileOrTablet","onChange","id","onKeyDown","form","selected","role","autocomplete","onInput","onClick","innerHTML","Clear","variant","onMouseDown","Expand","inputEl","inputLabel","selectOnEnter","onMenuStateChange","onMenuOptionSelect","onMenuOptionSelectAll","onMenuKeyPress","onUngroupedOptionsSet","onRetryButtonClicked","parentEl","activationType","closeOnSelect","ariaLiveMode","status","message"],"sources":["src/components/ic-select/ic-select.css?tag=ic-select&encapsulation=shadow","src/components/ic-select/ic-select.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --input-width: Width of the input field\n * @prop --menu-width: Width of the dropdown menu\n * @prop --ic-z-index-menu: z-index of select menu\n */\n\n:host {\n display: block;\n position: relative;\n\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n --menu-max-height: 100px;\n --border-color: var(--ic-select-field-border);\n --border-color-hover: var(--ic-select-field-border-hover);\n --border-color-pressed: var(--ic-select-field-border-pressed);\n --border-color-disabled: var(--ic-select-field-border-disabled);\n --border-color-error: var(--ic-select-field-border-error);\n --border-color-error-hover: var(--ic-select-field-border-error-hover);\n --border-color-error-pressed: var(--ic-select-field-border-error-pressed);\n --border-color-success: var(--ic-select-field-border-success);\n --border-color-success-hover: var(--ic-select-field-border-success-hover);\n --border-color-success-pressed: var(--ic-select-field-border-success-pressed);\n --border-color-warning: var(--ic-select-field-border-warning);\n --border-color-warning-hover: var(--ic-select-field-border-warning-hover);\n --border-color-warning-pressed: var(--ic-select-field-border-warning-pressed);\n --ic-input-label-text-color: var(--ic-select-field-labe);\n --ic-input-label-helper-text-color: var(\n --ic-select-input-field-label-subtitle\n );\n --ic-input-validation-status-text-color: var(--ic-select-state-text);\n --ic-input-validation-error: var(--ic-select-state-icon-error);\n --ic-input-validation-warning-icon-color: var(--ic-select-state-icon-warning);\n --ic-input-validation-success-icon-color: var(--ic-select-state-icon-success);\n --menu-item-text-color: var(--ic-select-list-option-text);\n --menu-bg-color: var(--ic-select-list-option-background);\n --menu-border-color: var(--ic-select-dropdown-list-border);\n}\n\n:host(.ic-select-disabled) {\n --ic-input-label-text-color: var(--ic-select-field-label-disabled);\n --ic-input-label-helper-text-color: var(\n --ic-select-input-field-label-subtitle-disabled\n );\n}\n\n:host(.ic-select-full-width) {\n width: 100%;\n}\n\nic-input-component-container.menu-open {\n --border-color: var(--ic-select-field-border-pressed);\n}\n\nic-input-validation .status-icon,\nic-input-validation .statustext {\n visibility: visible;\n}\n\nic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext {\n visibility: hidden;\n transition: visibility 0s;\n}\n\nic-input-label {\n margin-bottom: var(--ic-space-xs) !important;\n}\n\nselect {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-select-field-background);\n color: var(--ic-select-content-text);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n height: 100%;\n padding-left: 0.375rem;\n appearance: none;\n background-repeat: no-repeat;\n background-position: right 0.375rem center;\n background-image: var(--ic-select-mobile-dropdown-icon);\n caret-color: var(--ic-select-input-field-text-cursor);\n}\n\nselect option,\n.select-option-selected {\n color: var(--ic-select-list-option-text);\n}\n\nselect:disabled {\n color: var(--ic-select-content-text-disabled);\n background-image: var(--ic-select-mobile-dropdown-icon-disabled);\n}\n\nselect:focus {\n border: 0;\n outline: 0;\n}\n\nselect:not([disabled]) {\n cursor: pointer;\n}\n\n.select-container {\n width: 100%;\n display: flex;\n align-items: center;\n position: relative;\n}\n\n.select-input {\n width: 100%;\n height: 100%;\n padding: 0 0.375rem;\n display: flex;\n cursor: pointer;\n align-items: center;\n justify-content: space-between;\n background: none;\n border: none;\n background-color: var(--ic-select-field-background);\n color: var(--ic-select-content-text);\n}\n\n.select-input:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n.select-input[disabled] {\n pointer-events: none;\n}\n\n:host(.ic-select-searchable) .select-input {\n cursor: auto;\n}\n\n.select-input.with-clear-button {\n padding-right: 0;\n}\n\n.value-text {\n max-width: calc(100% - (var(--ic-space-lg) + var(--ic-space-xxs)));\n box-sizing: border-box;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n margin-bottom: 0 !important;\n}\n\n.value-text.with-clear-button {\n padding-right: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n.searchable-select-container {\n align-items: center;\n display: flex;\n width: 100%;\n position: relative;\n}\n\n.expand-icon {\n height: var(--ic-space-lg);\n padding-left: var(--ic-space-xxs);\n color: var(--ic-select-expand-icon-color);\n}\n\n.expand-icon > svg {\n display: inline-block;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n:host(.ic-select-disabled) .expand-icon,\n:host(.ic-select-disabled) .expand-icon > svg > path {\n color: var(--ic-select-disabled-expand-icon-color);\n}\n\n:host(.ic-select-searchable) .expand-icon {\n padding-left: 0;\n height: 2.25rem;\n}\n\n:host(.ic-select-searchable) .expand-icon > svg {\n height: 2.25rem;\n padding: 0 calc(var(--ic-space-xxxs) + var(--ic-space-xxs)) 0\n var(--ic-space-xxs);\n}\n\n:host(.ic-select-searchable:not(.ic-select-disabled)) .expand-icon > svg {\n cursor: pointer;\n}\n\n.expand-icon-open {\n color: var(--ic-select-expand-icon-color);\n}\n\n.expand-icon-open,\n:host(.ic-select-searchable) .expand-icon-open {\n transform: rotateX(180deg);\n}\n\n:host(.ic-select-disabled) .value-text,\n.placeholder {\n color: var(--ic-select-content-placeholder-text);\n}\n\n.select-input-end {\n display: flex;\n align-items: center;\n}\n\n.clear-button-container {\n display: flex;\n align-items: center;\n}\n\n.divider {\n width: var(--ic-space-1px);\n background-color: var(--ic-select-content-divider);\n margin: var(--ic-space-xxs) 0;\n border-radius: var(--ic-space-1px);\n height: var(--ic-space-lg);\n}\n\n:host(.ic-select-small) .divider {\n height: var(--ic-space-md);\n}\n\n:host(.ic-select-large) .divider {\n height: var(--ic-space-xl);\n}\n\n.clear-button {\n color: var(--ic-select-clear-button);\n position: absolute;\n right: calc(var(--ic-space-xl) + var(--ic-space-xxs) - var(--ic-space-1px));\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus {\n background-color: var(--ic-color-focus-inner);\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer);\n border-radius: 0.25rem;\n}\n\n.clear-button.searchable {\n position: static;\n}\n\n.searchable-select-results-status,\n.multi-select-selected-count {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: var(--ic-space-1px);\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-select-content-placeholder-text);\n}\n\n.has-value ::slotted([slot=\"icon\"]) {\n fill: var(--ic-select-content-text);\n}\n\n.readonly ::slotted([slot=\"icon\"]) {\n padding: 0.375rem;\n margin-bottom: 0.75rem;\n}\n\n@media (forced-colors: active) {\n .has-value ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n h,\n State,\n Watch,\n forceUpdate,\n} from \"@stencil/core\";\n\nimport {\n getInputDescribedByText,\n getLabelFromValue,\n hasValidationStatus,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n isMobileOrTablet,\n getFilteredMenuOptions,\n getOptionsWithoutGroupTitlesCount,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n checkSlotInChildMutations,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcMenuOption,\n IcSearchMatchPositions,\n IcValueEventDetail,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport Expand from \"./assets/Expand.svg\";\nimport Clear from \"./assets/Clear.svg\";\nimport { IcOptionSelectEventDetail } from \"../ic-menu/ic-menu.types\";\n\nlet inputIds = 0;\nconst MUTABLE_ATTRIBUTES = [...IC_INHERITED_ARIA, \"tabindex\", \"title\"];\n\n/**\n * @slot icon - Content will be placed to the left of the select text input.\n */\n@Component({\n tag: \"ic-select\",\n styleUrl: \"ic-select.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class Select {\n private anchorEl: HTMLElement;\n private blurredBecauseButtonPressed: boolean;\n private characterKeyPressTimer: number;\n private clearButton: HTMLIcButtonElement;\n private customSelectElement: HTMLButtonElement;\n private debounceAria: number;\n private hasSetDefaultValue = false;\n private hasTimedOut: boolean;\n private inheritedAttributes: { [k: string]: string } = {};\n private initialOptionsEmpty = false;\n private inputId = `ic-select-input-${inputIds++}`;\n private menu: HTMLIcMenuElement;\n private menuId = `${this.inputId}-menu`;\n private nativeSelectElement: HTMLSelectElement;\n private retryButtonClick: boolean;\n private searchableMenuItemSelected: boolean = false;\n private searchableSelectElement: HTMLInputElement;\n private timeoutTimer: number;\n private ungroupedOptions: IcMenuOption[] = [];\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el!: HTMLIcSelectElement;\n\n @State() ariaActiveDescendant: string;\n @State() clearButtonFocused: boolean = false;\n @State() debounceIcChange: number;\n @State() hiddenInputValue: string;\n @State() noOptions: IcMenuOption[] = null;\n @State() open: boolean = false;\n @State() pressedCharacters: string = \"\";\n @State() searchableSelectInputValue: string = null;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /**\n * If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source.\n */\n @Prop() disableAutoFiltering?: boolean = false;\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n /**\n * The <form> element to associate the select with.\n */\n @Prop() form?: string;\n\n /**\n * If `true`, the select will fill the width of the container.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeDescriptionsInSearch?: boolean = false;\n\n /**\n * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering.\n */\n @Prop() includeGroupTitlesInSearch?: boolean = false;\n\n /**\n * The label for the select.\n */\n @Prop() label!: string;\n\n /**\n * The message displayed when external loading times out.\n */\n @Prop() loadingErrorLabel?: string = \"Loading Error\";\n\n /**\n * The message displayed whilst the options are being loaded externally.\n */\n @Prop() loadingLabel?: string = \"Loading...\";\n\n /**\n * If `true`, multiple options can be selected.\n */\n @Prop() multiple?: boolean = false;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"Select an option\";\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * If `true`, the select will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component.\n */\n @Prop() searchable?: boolean = false;\n\n /**\n * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering.\n */\n @Prop() searchMatchPosition?: IcSearchMatchPositions = \"anywhere\";\n\n /**\n * If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown on the single select.\n */\n @Prop() selectOnEnter?: boolean = false;\n\n /**\n * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.\n */\n @Prop() showClearButton?: boolean = false;\n\n /**\n * The size of the select.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * If using external filtering, set a timeout for when loading takes too long.\n */\n @Prop() timeout?: number;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * If `true`, the loading state will be triggered when fetching options asynchronously.\n */\n @Prop({ mutable: true }) loading?: boolean = false;\n\n @Watch(\"loading\")\n loadingHandler(newValue: boolean): void {\n newValue && this.triggerLoading();\n }\n\n /**\n * The possible selection options.\n */\n @Prop() options?: IcMenuOption[] = [];\n @State() filteredOptions: IcMenuOption[] = this.options;\n @State() uniqueOptions: IcMenuOption[] = this.options;\n\n @Watch(\"options\")\n watchOptionsHandler(): void {\n if (!this.hasTimedOut && this.options !== this.noOptions) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (this.isExternalFiltering()) {\n // When searchable select\n if (this.options?.length > 0) {\n this.setOptionsValuesFromLabels();\n this.noOptions = null;\n this.uniqueOptions = this.deduplicateOptions(this.options);\n this.filteredOptions = this.uniqueOptions;\n } else {\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.uniqueOptions = this.noOptions;\n this.filteredOptions = this.noOptions;\n }\n this.updateSearchableSelectResultAriaLive();\n this.setDefaultValue();\n } else {\n this.setOptionsValuesFromLabels();\n this.uniqueOptions = this.deduplicateOptions(this.options);\n this.filteredOptions = this.uniqueOptions;\n if (this.initialOptionsEmpty) {\n this.setDefaultValue();\n this.initialOptionsEmpty = false;\n }\n }\n } else {\n if (!this.searchable) {\n this.options = this.noOptions;\n }\n }\n }\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce?: number = 0;\n @State() currDebounce = this.debounce;\n\n @Watch(\"debounce\")\n debounceChangedHandler(newValue: number): void {\n this.updateOnChangeDebounce(newValue);\n }\n\n /**\n * The value of the select, reflected by the value of the currently selected option.\n * For the searchable variant, the value is also reflected by the user input.\n * For the multi-select variant, the value must be an array of option values.\n */\n @Prop({ mutable: true }) value?: string | string[];\n @State() initialValue = this.value;\n @State() inputValueToFilter = this.value as string;\n @State() currValue = this.value;\n\n @Watch(\"value\")\n valueChangedHandler(): void {\n if (this.value !== this.currValue) {\n if (this.value && this.multiple) {\n this.currValue = this.getValueSortedByOptions(this.value as string[]);\n this.updateMultiSelectedCountAriaLive();\n } else {\n this.currValue = this.value;\n }\n }\n\n if (this.searchable) {\n this.searchableSelectInputValue =\n this.getLabelFromValue(this.currValue as string) ||\n (this.currValue as string);\n }\n }\n\n @Watch(\"open\")\n openChangedHandler(): void {\n this.open ? this.icOpen.emit() : this.icClose.emit();\n }\n\n /**\n * Emitted when the select loses focus.\n */\n @Event() icBlur: EventEmitter<void>;\n\n /**\n * Emitted when the value changes.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the clear button is clicked.\n */\n @Event() icClear: EventEmitter<void>;\n\n /**\n * Emitted when the select options menu is closed.\n */\n @Event() icClose: EventEmitter<void>;\n\n /**\n * Emitted when the select gains focus.\n */\n @Event() icFocus: EventEmitter<void>;\n\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the select options menu is opened.\n */\n @Event() icOpen: EventEmitter<void>;\n\n /**\n * Emitted when an option is selected.\n * Selecting an option will also trigger an `icChange/onIcChange` due to the value being updated.\n */\n @Event() icOptionSelect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when `multiple` is `true` and an option is deselected.\n */\n @Event() icOptionDeselect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when the 'retry loading' button is clicked for a searchable variant.\n */\n @Event() icRetryLoad: EventEmitter<IcValueEventDetail>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.el, MUTABLE_ATTRIBUTES);\n\n removeDisabledFalse(this.disabled, this.el);\n\n this.setOptionsValuesFromLabels();\n\n addFormResetListener(this.el, this.handleFormReset);\n\n if (!this.options?.length) {\n this.initialOptionsEmpty = true;\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.uniqueOptions = this.noOptions;\n this.filteredOptions = this.noOptions;\n } else {\n this.setDefaultValue();\n this.uniqueOptions = this.deduplicateOptions(this.options);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Select\"\n );\n\n if (this.loading) {\n this.triggerLoading();\n }\n\n this.hiddenInputValue = this.searchable && (this.currValue as string);\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n childList: true,\n });\n }\n\n componentDidRender(): void {\n if (this.nativeSelectElement && !this.disabled) {\n this.setTextColor();\n }\n }\n\n /**\n * Sets focus on the input box.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.nativeSelectElement) {\n this.nativeSelectElement.focus();\n } else if (this.customSelectElement) {\n this.customSelectElement.focus();\n } else if (this.searchableSelectElement) {\n this.searchableSelectElement.focus();\n }\n }\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n let forceComponentUpdate = false;\n mutationList.forEach(\n ({ attributeName, type, addedNodes, removedNodes }) => {\n if (MUTABLE_ATTRIBUTES.includes(attributeName)) {\n this.inheritedAttributes[attributeName] =\n this.el.getAttribute(attributeName);\n forceComponentUpdate = true;\n } else if (type === \"childList\") {\n forceComponentUpdate = checkSlotInChildMutations(\n addedNodes,\n removedNodes,\n \"icon\"\n );\n }\n }\n );\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n private handleRetry = (ev: CustomEvent<IcValueEventDetail>) => {\n if (ev.detail.keyPressed) this.searchableSelectElement?.focus();\n this.blurredBecauseButtonPressed = true;\n this.retryButtonClick = true;\n this.hasSetDefaultValue = true;\n this.icRetryLoad.emit({ value: this.hiddenInputValue });\n };\n\n private updateOnChangeDebounce(newValue: number) {\n if (this.currDebounce !== newValue) {\n this.currDebounce = newValue;\n }\n }\n\n private emitIcChange = (value: string | string[] | null) => {\n if (!this.searchable) {\n // If \"Select all\" button clicked, replace value with new value (array of all option values)\n if (this.multiple && !Array.isArray(value) && value !== null) {\n this.handleMultipleSelectChange(value as string);\n } else {\n this.value = value;\n }\n }\n\n clearTimeout(this.debounceIcChange);\n this.debounceIcChange = window.setTimeout(() => {\n const valueToEmit = this.multiple ? this.value : value;\n this.icChange.emit({ value: valueToEmit });\n }, this.currDebounce);\n };\n\n private emitImmediateIcChange = (value: string) => {\n this.value = value;\n clearTimeout(this.debounceIcChange);\n this.icChange.emit({ value });\n };\n\n /**\n * Processes the provided array of IcMenuOptions, removing duplicates and reporting them with a console.warn\n * @param options array of IcMenuOptions\n * @returns a new options object, with all entries possessing a duplicate 'value' field removed\n */\n private deduplicateOptions = (options: IcMenuOption[]): IcMenuOption[] => {\n const uniqueValues: string[] = [];\n const dedupedOptions: IcMenuOption[] = [];\n let dedupedChildren: IcMenuOption[];\n\n options.forEach((option: IcMenuOption) => {\n if (option.children) {\n //If an option has children, we will loop through them\n dedupedChildren = [];\n option.children.forEach((child) => {\n if (uniqueValues.includes(child.value)) {\n console.warn(\n `ic-select with label ${this.label} was populated with duplicate option (value: ${child.value}) which has been removed.`\n );\n } else {\n uniqueValues.push(child.value);\n dedupedChildren.push(child);\n }\n });\n // construct a modified option, inserting the deduplicated children alongside the original information\n const modifiedParent: IcMenuOption = {\n ...option,\n children: dedupedChildren,\n };\n dedupedOptions.push(modifiedParent);\n } else {\n // If an option does not have children, assess to see if it's value has been included already\n if (uniqueValues.includes(option.value)) {\n console.warn(\n `ic-select with label ${this.label} was populated with duplicate option (value: ${option.value}) which has been removed.`\n );\n } else {\n uniqueValues.push(option.value);\n dedupedOptions.push(option);\n }\n }\n });\n return dedupedOptions;\n };\n\n /**\n * Loop through options array and for all options with no value, infer it from the label\n */\n private setOptionsValuesFromLabels = (): void => {\n if (this.options?.length > 0 && this.options.map) {\n this.options.map((option) => {\n if (!option.value) {\n option.value = option.label;\n }\n });\n }\n };\n\n private setUngroupedOptions = (event: CustomEvent): void => {\n this.ungroupedOptions = event.detail.options;\n };\n\n private setTextColor = (): void => {\n if (this.nativeSelectElement.selectedIndex === 0) {\n this.nativeSelectElement.className = \"placeholder\";\n } else {\n this.nativeSelectElement.className = \"select-option-selected\";\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n }\n };\n\n private getLabelFromValue = (value: string): string | undefined => {\n return getLabelFromValue(value, this.uniqueOptions);\n };\n\n private getMultipleOptionsString = (selectedValues: string[]) => {\n const selectedLabels = selectedValues?.map((value) =>\n this.getLabelFromValue(value)\n );\n return selectedLabels?.join(\", \");\n };\n\n private getFilteredChildMenuOptions = (option: IcMenuOption) => {\n let children = option.children;\n\n if (this.searchable) {\n children = getFilteredMenuOptions(\n option.children,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n } else {\n children = getFilteredMenuOptions(\n option.children,\n false,\n this.pressedCharacters,\n \"start\"\n );\n }\n\n const newOption = { ...option };\n newOption.children = children;\n return newOption;\n };\n\n // (For multi-select) get value array, i.e. selected option values, in order they appear in option list\n private getValueSortedByOptions = (value: string[]) => {\n const valueArray = value;\n const valuesFromAllOptions = this.ungroupedOptions.map(\n (option) => option.value\n );\n\n valueArray.sort(\n (a, b) =>\n valuesFromAllOptions.indexOf(a) - valuesFromAllOptions.indexOf(b)\n );\n\n return valueArray;\n };\n\n private handleNativeSelectChange = (): void => {\n this.icOptionSelect.emit({ value: this.nativeSelectElement.value });\n this.emitImmediateIcChange(this.nativeSelectElement.value);\n this.setTextColor();\n };\n\n // Handle option select for when a custom input box and menu is rendered\n // (rather than native <select> - rendered when viewed on a mobile / tablet screen)\n private handleCustomSelectChange = (event: CustomEvent): void => {\n const value = event.detail.value;\n\n if (this.searchable && event.detail.label === this.emptyOptionListText) {\n this.searchableSelectElement.focus();\n return;\n }\n\n if (this.searchable) {\n this.value = value;\n this.searchableMenuItemSelected = true;\n\n // After editing the input, if selecting the same option as before, set the input value to label again\n if (this.value === this.currValue) {\n this.searchableSelectInputValue = this.getLabelFromValue(\n this.value as string\n );\n }\n\n this.inputValueToFilter = null;\n this.hiddenInputValue = this.getValueFromLabel(\n this.searchableSelectInputValue\n );\n }\n\n if (this.multiple && this.value?.includes(value)) {\n this.icOptionDeselect.emit({ value });\n } else {\n this.icOptionSelect.emit({ value });\n }\n\n this.ariaActiveDescendant = event.detail.optionId;\n this.emitIcChange(value);\n };\n\n // Update selected options - adds / removes them, in order of option list\n // Create new array if value prop is undefined\n private handleMultipleSelectChange = (value: string) => {\n if (this.value) {\n let valueArray = (this.value as string[]).slice();\n\n if (this.value.includes(value)) {\n const valueIndex = valueArray.indexOf(value);\n valueArray.splice(valueIndex, 1);\n } else {\n valueArray.push(value);\n valueArray = this.getValueSortedByOptions(valueArray);\n }\n\n this.value = valueArray.length === 0 ? null : valueArray;\n } else {\n const valueArray = [];\n valueArray.push(value);\n this.value = valueArray;\n }\n };\n\n private handleSelectAllChange = (event: CustomEvent) => {\n const selectAllOptions = event.detail.select;\n const allEnabledOptions = this.ungroupedOptions.filter(\n (option) => !option.disabled\n );\n const allValues = allEnabledOptions.map((option) => option.value);\n let newValue: string[];\n\n if (selectAllOptions) {\n let unselectedValues;\n\n // Only emit icOptionSelect for all values that are newly selected\n if (this.value) {\n unselectedValues = allValues.filter(\n (value) => this.value && !(this.value as string[]).includes(value)\n );\n } else {\n unselectedValues = allValues;\n }\n\n unselectedValues.forEach((value) => this.icOptionSelect.emit({ value }));\n newValue = allValues;\n } else {\n // Only emit icOptionDeselect for values that were selected\n (this.value as string[]).forEach((value) =>\n this.icOptionDeselect.emit({ value })\n );\n newValue = null;\n }\n\n this.emitIcChange(newValue);\n };\n\n private handleMenuChange = (event: CustomEvent): void => {\n this.open = event.detail.open;\n this.pressedCharacters = \"\";\n\n this.searchable && this.handleFocusIndicatorDisplay();\n };\n\n // clears the debounce delay when navigating the menu with arrow keys etc\n // to prevent delay in change event, which should only occur when typing in input\n private handleMenuKeyPress = (ev: CustomEvent): void => {\n ev.cancelBubble = true;\n if (!this.multiple) {\n this.handleCharacterKeyDown(ev.detail.key);\n }\n };\n\n private handleFocusIndicatorDisplay = () => {\n const focusIndicator = this.el.shadowRoot.querySelector(\".focus-indicator\");\n\n if (this.open) {\n focusIndicator.classList.add(\"focus-indicator-enabled\");\n } else {\n focusIndicator.classList.remove(\"focus-indicator-enabled\");\n }\n };\n\n private handleMouseDown = (event: Event): void => {\n if (!this.open) {\n event.preventDefault();\n }\n };\n\n private isExternalFiltering = (): boolean =>\n this.searchable && this.disableAutoFiltering;\n\n private handleClick = (event: MouseEvent): void => {\n if (!this.open) {\n if (this.isExternalFiltering()) {\n this.menu.options = this.filteredOptions;\n } else if (\n !this.hasTimedOut &&\n !this.loading &&\n !this.noOptions?.length &&\n (!this.searchable || this.searchableMenuItemSelected)\n ) {\n this.noOptions = null;\n this.menu.options = this.uniqueOptions;\n }\n }\n\n if (event.detail !== 0) {\n this.menu.handleClickOpen();\n }\n };\n\n private handleExpandIconMouseDown = (event: MouseEvent) => {\n if (!this.disabled) {\n event.preventDefault();\n this.searchableSelectElement.focus();\n this.handleClick(event);\n }\n };\n\n private handleClear = (event: Event): void => {\n event.stopPropagation();\n this.hasTimedOut = false;\n clearTimeout(this.timeoutTimer);\n this.noOptions = null;\n this.emitImmediateIcChange(null);\n this.icClear.emit();\n\n if (this.searchable) {\n this.searchableSelectElement.value = null;\n this.searchableSelectInputValue = null;\n this.filteredOptions = this.uniqueOptions;\n this.hiddenInputValue = null;\n this.searchableSelectElement.focus();\n } else {\n this.customSelectElement.focus();\n }\n };\n\n private handleCharacterKeyDown = (key: string) => {\n // Only close menu when space is pressed if not being used alongside character keys to quickly select options\n if (\n this.open &&\n key === \" \" &&\n this.pressedCharacters.length === 0 &&\n !this.hasTimedOut &&\n !this.loading\n ) {\n this.setMenuChange(false);\n }\n\n if (key.length === 1 && !this.searchable) {\n window.clearTimeout(this.characterKeyPressTimer);\n this.characterKeyPressTimer = window.setTimeout(\n () => (this.pressedCharacters = \"\"),\n 1000\n );\n\n if (!(key === \" \" && !this.pressedCharacters)) {\n this.pressedCharacters += key;\n this.handleFilter();\n\n if (!this.noOptions) {\n this.emitImmediateIcChange(this.filteredOptions[0].value);\n }\n }\n } else {\n this.pressedCharacters = \"\";\n }\n };\n\n private handleNativeSelectKeyDown = (event: KeyboardEvent) => {\n if ((event.key !== \"Escape\" && event.key !== \"Tab\") || this.open) {\n event.cancelBubble = true;\n }\n this.handleCharacterKeyDown(event.key);\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n if ((event.key !== \"Escape\" && event.key !== \"Tab\") || this.open) {\n event.cancelBubble = true;\n }\n const isArrowKey = event.key === \"ArrowDown\" || event.key === \"ArrowUp\";\n\n if (!this.open) {\n if (this.isExternalFiltering() && (event.key === \"Enter\" || isArrowKey)) {\n this.menu.options = this.filteredOptions;\n } else {\n if (!this.hasTimedOut) {\n this.noOptions = null;\n this.menu.options = this.uniqueOptions;\n }\n }\n }\n\n if (this.open && event.key === \"Enter\") {\n this.setMenuChange(false);\n } else {\n if (!(isArrowKey && this.noOptions !== null)) {\n if (!(event.key === \" \" && this.pressedCharacters.length > 0)) {\n // Keyboard events get passed onto ic-menu\n this.menu.handleKeyboardOpen(event);\n }\n if (!this.multiple) {\n this.handleCharacterKeyDown(event.key);\n }\n }\n }\n };\n\n private handleClearButtonFocus = (): void => {\n this.clearButtonFocused = true;\n };\n\n private handleClearButtonBlur = (ev: FocusEvent): void => {\n const retryButton = this.menu?.querySelector(\"#retry-button\");\n if (\n !(\n this.searchableSelectElement &&\n ev.relatedTarget === this.searchableSelectElement\n ) &&\n !(retryButton && ev.relatedTarget === retryButton)\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n }\n this.clearButtonFocused = false;\n };\n\n private handleFilter = (): void => {\n const options = this.deduplicateOptions(\n this.searchable ? [...this.uniqueOptions] : this.ungroupedOptions\n );\n\n let isGrouped = false;\n let newFilteredOptions: IcMenuOption[] = [];\n\n options.map((option) => {\n if (option.children) isGrouped = true;\n });\n\n let menuOptionsFiltered: IcMenuOption[];\n\n if (this.searchable) {\n menuOptionsFiltered = getFilteredMenuOptions(\n options,\n this.includeDescriptionsInSearch,\n this.inputValueToFilter,\n this.searchMatchPosition\n );\n this.searchableMenuItemSelected = false;\n } else {\n menuOptionsFiltered = getFilteredMenuOptions(\n options,\n false,\n this.pressedCharacters,\n \"start\"\n );\n }\n\n if (\n !isGrouped &&\n menuOptionsFiltered[0]?.label !== this.emptyOptionListText\n ) {\n newFilteredOptions = menuOptionsFiltered;\n } else if (isGrouped) {\n options.map((option) => {\n if (this.includeGroupTitlesInSearch) {\n if (menuOptionsFiltered.indexOf(option) !== -1) {\n newFilteredOptions.push(option);\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n });\n }\n\n let noChildOptionsWhenFiltered = false;\n\n if (isGrouped) {\n noChildOptionsWhenFiltered = true;\n newFilteredOptions.map((option) => {\n if (option.children.length > 0) {\n noChildOptionsWhenFiltered = false;\n }\n });\n }\n\n if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {\n this.noOptions = null;\n this.filteredOptions = newFilteredOptions;\n } else {\n this.noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n this.filteredOptions = this.noOptions;\n }\n };\n\n /**\n * Put the select component into loading state.\n * Replace options with the loading message. If timeout is enabled, set the timeout and once passed, replace options with the loading error message\n */\n private triggerLoading = () => {\n this.hasTimedOut = false;\n this.noOptions = [{ label: this.loadingLabel, value: \"\", loading: true }];\n if (this.filteredOptions !== this.noOptions && this.searchable) {\n this.filteredOptions = this.noOptions;\n } else if (this.uniqueOptions !== this.noOptions && !this.searchable) {\n this.uniqueOptions = this.noOptions;\n }\n if (this.timeout) {\n this.timeoutTimer = window.setTimeout(() => {\n this.loading = false;\n this.hasTimedOut = true;\n this.noOptions = [\n { label: this.loadingErrorLabel, value: \"\", timedOut: true },\n ];\n this.filteredOptions = this.noOptions;\n if (!this.searchable) this.uniqueOptions = this.noOptions;\n }, this.timeout);\n }\n };\n\n private getValueFromLabel = (label: string): string | undefined => {\n return this.uniqueOptions.find((option) => option.label === label)?.value;\n };\n\n private handleSearchableSelectInput = (event: Event): void => {\n this.searchableSelectInputValue = (event.target as HTMLInputElement).value;\n this.icInput.emit({ value: this.searchableSelectInputValue });\n this.emitIcChange(this.searchableSelectInputValue);\n\n this.hiddenInputValue = this.searchableSelectInputValue;\n this.inputValueToFilter = this.searchableSelectInputValue;\n this.setMenuChange(true);\n\n if (!this.disableAutoFiltering) {\n this.handleFilter();\n this.debounceAriaLiveUpdate();\n }\n };\n\n private updateSearchableSelectResultAriaLive = (): void => {\n const searchableSelectResultsStatusEl = this.el.shadowRoot.querySelector(\n \".searchable-select-results-status\"\n ) as HTMLDivElement;\n\n if (searchableSelectResultsStatusEl) {\n if (this.noOptions !== null) {\n searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;\n } else {\n searchableSelectResultsStatusEl.innerText = \"\";\n }\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAria);\n\n window.setTimeout(() => {\n this.updateSearchableSelectResultAriaLive();\n }, 800);\n }\n\n private updateMultiSelectedCountAriaLive = (): void => {\n const multiSelectSelectedCountEl = this.el.shadowRoot.querySelector(\n \".multi-select-selected-count\"\n ) as HTMLDivElement;\n\n const selectedCount = `${\n this.currValue?.length\n } of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;\n\n if (\n multiSelectSelectedCountEl &&\n multiSelectSelectedCountEl.innerText !== selectedCount\n ) {\n multiSelectSelectedCountEl.innerText = selectedCount;\n }\n };\n\n private getDefaultValue = (value: string): string | null =>\n this.getLabelFromValue(value) || value || null;\n\n private setDefaultValue = (): void => {\n if (!this.hasSetDefaultValue && this.currValue) {\n this.searchableSelectInputValue =\n this.searchable && this.getDefaultValue(this.currValue as string);\n\n this.initialValue = this.currValue;\n this.hasSetDefaultValue = true;\n }\n };\n\n private onFocus = (): void => {\n this.icFocus.emit();\n };\n\n private onBlur = ({ relatedTarget }: FocusEvent): void => {\n const target = relatedTarget as HTMLElement;\n if (\n target !== null &&\n ((target.tagName === \"UL\" && target.className.includes(\"menu\")) ||\n (target.tagName === \"LI\" && target.className.includes(\"option\")))\n ) {\n return;\n }\n\n const retryButton = this.menu?.querySelector(\"#retry-button\");\n const isSearchableAndNoFocusedInternalElements =\n this.searchable &&\n !!this.menu &&\n target !== this.menu &&\n !Array.from(this.menu.querySelectorAll(\"[role='option']\")).includes(\n target\n ) &&\n !(this.clearButton && target === this.clearButton) &&\n !(retryButton && target === retryButton);\n\n if (isSearchableAndNoFocusedInternalElements) {\n if (!this.retryButtonClick) {\n this.setMenuChange(false);\n }\n this.handleFocusIndicatorDisplay();\n }\n\n this.retryButtonClick = false;\n this.icBlur.emit();\n };\n\n private onTimeoutBlur = (ev: CustomEvent) => {\n if (\n (ev.detail.ev as FocusEvent).relatedTarget !==\n this.searchableSelectElement &&\n !this.blurredBecauseButtonPressed\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n this.icBlur.emit();\n }\n this.blurredBecauseButtonPressed = false;\n };\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n if (this.searchable) {\n this.searchableSelectInputValue = this.getDefaultValue(\n this.value as string\n );\n this.hiddenInputValue = this.value as string;\n }\n };\n\n render() {\n const {\n size,\n disabled,\n fullWidth,\n helperText,\n hideLabel,\n label,\n menuId,\n multiple,\n name,\n options,\n placeholder,\n readonly,\n required,\n searchable,\n showClearButton,\n validationStatus,\n validationText,\n currValue,\n theme,\n } = this;\n\n // HTML inputs only accept 'string' for their value\n // Does not cause errors when it is a multi-select - sets value correctly, to a comma-separated string\n renderHiddenInput(\n true,\n this.el,\n name,\n this.searchable ? this.hiddenInputValue : (currValue as string),\n disabled\n );\n\n const invalid = `${validationStatus === IcInformationStatus.Error}`;\n\n const describedBy = getInputDescribedByText(\n this.inputId,\n helperText !== \"\",\n hasValidationStatus(this.validationStatus, this.disabled)\n ).trim();\n\n let showLeftIcon = !!this.el.querySelector(`[slot=\"icon\"]`);\n if (showLeftIcon && (disabled || (readonly && !this.value))) {\n showLeftIcon = false;\n }\n\n const optionsSelectedCount = `${\n currValue?.length\n } of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;\n\n return (\n <Host\n class={{\n \"ic-select-disabled\": disabled,\n \"ic-select-searchable\": searchable,\n [`ic-select-${size}`]: size !== \"medium\",\n \"ic-select-full-width\": fullWidth,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n onBlur={this.onBlur}\n >\n <ic-input-container readonly={readonly}>\n {!hideLabel && (\n <ic-input-label\n for={this.inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el: HTMLElement) => (this.anchorEl = el)}\n class={{ \"menu-open\": this.open }}\n size={size}\n fullWidth={fullWidth}\n disabled={disabled}\n readonly={readonly}\n validationStatus={validationStatus}\n >\n {showLeftIcon && (\n <span\n slot=\"left-icon\"\n class={{\n [\"readonly\"]: readonly,\n [\"has-value\"]: !!this.value,\n }}\n >\n <slot name=\"icon\" />\n </span>\n )}\n {readonly ? (\n <ic-typography>\n <p>\n {multiple\n ? this.getMultipleOptionsString(currValue as string[])\n : this.getLabelFromValue(currValue as string)}\n </p>\n </ic-typography>\n ) : isMobileOrTablet() && !multiple ? (\n <select\n ref={(el) => (this.nativeSelectElement = el)}\n disabled={disabled}\n onChange={this.handleNativeSelectChange}\n required={required}\n id={this.inputId}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onKeyDown={this.handleNativeSelectKeyDown}\n form={this.form}\n {...this.inheritedAttributes}\n >\n <option value=\"\" selected disabled={!showClearButton}>\n {placeholder}\n </option>\n {options.map((option) => {\n if (option.children) {\n return (\n <optgroup label={option.label}>\n {option.children.map((option) => (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === currValue}\n >\n {option.label}\n </option>\n ))}\n </optgroup>\n );\n } else {\n return (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === currValue}\n >\n {option.label}\n </option>\n );\n }\n })}\n </select>\n ) : searchable ? (\n <div class=\"searchable-select-container\">\n <input\n class={{\n \"select-input\": true,\n \"with-clear-button\": !!this.searchableSelectInputValue,\n }}\n role=\"combobox\"\n autocomplete=\"off\"\n aria-label={label}\n aria-describedby={describedBy}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-autocomplete=\"list\"\n aria-expanded={`${this.open}`}\n aria-invalid={invalid}\n aria-required={`${required}`}\n aria-controls={menuId}\n ref={(el) => (this.searchableSelectElement = el)}\n id={this.inputId}\n value={this.searchableSelectInputValue}\n placeholder={placeholder}\n disabled={disabled}\n onInput={this.handleSearchableSelectInput}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n form={this.form}\n ></input>\n {this.searchableSelectInputValue &&\n (showClearButton || searchable) && (\n <div class=\"clear-button-container\">\n <ic-button\n id=\"clear-button\"\n ref={(el: HTMLIcButtonElement) =>\n (this.clearButton = el)\n }\n aria-label={\n this.searchableSelectInputValue && currValue === null\n ? \"Clear input\"\n : \"Clear selection\"\n }\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={size}\n variant=\"icon\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n )}\n <span\n onMouseDown={this.handleExpandIconMouseDown}\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"searchable-select-results-status\"\n ></div>\n </div>\n ) : (\n <div class=\"select-container\">\n <button\n class=\"select-input\"\n ref={(el) => (this.customSelectElement = el)}\n id={this.inputId}\n aria-label={`${label}, ${\n (multiple && currValue\n ? `${optionsSelectedCount}, ${this.getMultipleOptionsString(\n currValue as string[]\n )}`\n : this.getLabelFromValue(currValue as string)) ||\n placeholder\n }${required ? \", required\" : \"\"}`}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-haspopup=\"listbox\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-owns={menuId}\n aria-controls={menuId}\n disabled={disabled}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onClick={this.handleClick}\n onMouseDown={this.handleMouseDown}\n onKeyDown={this.handleKeyDown}\n >\n <ic-typography\n variant=\"body\"\n class={{\n \"value-text\": true,\n \"with-clear-button\": currValue && showClearButton,\n placeholder:\n !this.value || (multiple && this.value.length < 1),\n }}\n >\n {(multiple\n ? this.getMultipleOptionsString(currValue as string[])\n : this.getLabelFromValue(currValue as string)) ||\n placeholder}\n </ic-typography>\n <div class=\"select-input-end\">\n {currValue && showClearButton && (\n <div class=\"divider\"></div>\n )}\n <span\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n </div>\n </button>\n {currValue && showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear selection\"\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={size}\n variant=\"icon\"\n theme={this.clearButtonFocused ? \"light\" : \"dark\"}\n ></ic-button>\n )}\n </div>\n )}\n </ic-input-component-container>\n {(!isMobileOrTablet() || multiple) && (\n <ic-menu\n class={{\n \"no-results\":\n this.loading ||\n this.hasTimedOut ||\n (this.noOptions !== null &&\n this.noOptions[0] &&\n this.noOptions[0].label === this.emptyOptionListText),\n }}\n ref={(el: HTMLIcMenuElement) => (this.menu = el)}\n inputEl={\n searchable\n ? this.searchableSelectElement\n : this.customSelectElement\n }\n inputLabel={label}\n anchorEl={this.anchorEl}\n size={size}\n menuId={menuId}\n open={this.open}\n options={searchable ? this.filteredOptions : this.uniqueOptions}\n value={multiple ? (currValue as string[]) : (currValue as string)}\n fullWidth={fullWidth}\n selectOnEnter={this.selectOnEnter}\n onMenuStateChange={this.handleMenuChange}\n onMenuOptionSelect={this.handleCustomSelectChange}\n onMenuOptionSelectAll={this.handleSelectAllChange}\n onMenuKeyPress={this.handleMenuKeyPress}\n onUngroupedOptionsSet={this.setUngroupedOptions}\n onRetryButtonClicked={this.handleRetry}\n parentEl={this.el}\n onTimeoutBlur={this.onTimeoutBlur}\n activationType={\n this.searchable || multiple || this.selectOnEnter\n ? \"manual\"\n : \"automatic\"\n }\n closeOnSelect={!multiple}\n ></ic-menu>\n )}\n {this.multiple && (\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"multi-select-selected-count\"\n ></div>\n )}\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n class={{ \"menu-open\": this.open }}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n for={this.inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as a,H as e,g as o}from"./p-6b5e91e2.js";import{i as n,M as s,e as r,D as l,g as c,o as h,f as d,a as p,H as m,I as g,d as u}from"./p-f99576e0.js";const v='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;color:var(--ic-top-navigation-text);width:100%;position:relative;--ic-typography-color:var(--ic-top-navigation-text);--ic-button-secondary-text-monochrome:var(--ic-theme-text);--ic-button-secondary-border-monochrome:var(--ic-theme-text)}:host(.dark){color:var(--ic-color-text-primary-light);--ic-typography-color:var(--ic-color-text-primary-light);--ic-top-navigation-logo:var(--ic-color-icon-neutral);--ic-top-navigation-icon:var(--ic-color-icon-neutral);--ic-top-navigation-theme:var(--ic-color-icon-neutral);--ic-top-navigation-status-tag:var(--ic-color-background-primary-dark);--ic-top-navigation-status-tag-text:var(--ic-color-brand-text);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-darken-10);--navigation-link-colour:var(--ic-color-text-primary-light)}:host ::slotted(ic-navigation-item){--navigation-link-colour:var(--ic-top-navigation-text)}:host(.dark) ::slotted(ic-navigation-button){--ic-button-icon-monochrome:var(--ic-color-text-primary-light)}::slotted(ic-navigation-button){--ic-button-icon-monochrome:white}:host .top-navigation{background-color:var(--ic-top-navigation-background);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-top-navigation-icon-and-label);text-decoration:none;outline:none}:host .title-link:hover:not(:focus){background-color:var(--ic-top-navigation-title-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-top-navigation-title-pressed)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-space-1px) solid var(--ic-top-navigation-keyline);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-border-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:calc(-1 * var(--ic-space-1px))}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag);color:var(--ic-top-navigation-status-tag-text);--ic-typography-color:var(--ic-top-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}:host .app-version{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag-secondary);color:var(--ic-top-navigation-status-tag);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}slot[name="app-icon"]::slotted(*){fill:var(--ic-top-navigation-logo);width:2em;height:2em}slot[name="toggle-icon"] svg{fill:var(--ic-top-navigation-icon)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.menu-button-container .navigation-landmark-button-text{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}:host(.mobile-mode) .app-status,:host(.mobile-mode) .app-version{display:none}:host(.mobile-mode) .title-link{margin-right:var(--ic-space-xs)}:host(.mobile-mode) .search-menu-container{max-width:10rem}:host(.mobile-mode) .search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-border-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(*){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-border-hc)}.app-status,.app-version{border:var(--ic-border-hc)}slot[name="app-icon"]::slotted(*){fill:currentcolor}}';const b=class{constructor(a){t(this,a);this.icNavigationMenuClosed=i(this,"icNavigationMenuClosed",7);this.icNavigationMenuOpened=i(this,"icNavigationMenuOpened",7);this.icTopNavResized=i(this,"icTopNavResized",7);this.hasAppIcon=false;this.hasIconButtons=false;this.hasNavigation=false;this.hasSearchSlotContent=false;this.resizeObserver=null;this.searchBar=null;this.checkSlots=()=>{this.hasAppIcon=n(this.el,"app-icon");this.hasNavigation=n(this.el,"navigation");this.hasIconButtons=n(this.el,"buttons");this.hasSearchSlotContent=n(this.el,"search")};this.initialiseSearchBar=()=>{if(this.hasSearchSlotContent){const t=s(this.el,"search");if((t===null||t===void 0?void 0:t.tagName)==="IC-SEARCH-BAR"){this.searchBar=t}else if((t===null||t===void 0?void 0:t.tagName)==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}}};this.menuButtonClick=()=>{this.showNavMenu(true)};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserverCallback=t=>{if(t!==this.deviceSize){this.deviceSize=t;if(t>this.customMobileBreakpoint){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.icTopNavResized.emit({size:t});if(this.searchBar&&document.activeElement===this.searchBar){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{this.searchBar.focus()}),100)}}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback(r())}));this.resizeObserver.observe(this.el)};this.deviceSize=l.XL;this.foregroundColor=c();this.hasFullWidthSearchBar=false;this.mobileSearchBarVisible=false;this.mobileSearchHiddenOnBlur=false;this.navMenuVisible=false;this.searchButtonClick=false;this.searchValue="";this.contentAligned="full-width";this.customMobileBreakpoint=l.L;this.href="/";this.inline=false;this.shortAppTitle="";this.status="";this.theme="inherit";this.version="";this.appTitle=undefined}watchPropHandler(t,i){h(i,t,this.initialiseSearchBar)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.checkSlots();this.deviceSize=r();this.initialiseSearchBar()}componentDidLoad(){d(this.runResizeObserver);!n(this.el,"app-title")&&p([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}componentWillRender(){this.checkSlots()}navBarMenuCloseHandler(){this.showNavMenu(false);this.el.shadowRoot.querySelector("#menu-button").focus()}searchInputBlurHandler({detail:t}){if(t!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.value}}searchValueChangeHandler({detail:t}){this.searchValue=t.value}themeChangeHandler({detail:t}){this.foregroundColor=t.mode}toggleSearchBar(){this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(this.searchBar!==null){this.mobileSearchButtonEl.setAttribute("aria-label",`${this.mobileSearchBarVisible?"Hide":"Show"} search`);this.hasFullWidthSearchBar=this.mobileSearchBarVisible;this.searchBar.fullWidth=this.mobileSearchBarVisible;if(this.mobileSearchBarVisible){setTimeout((()=>{this.searchBar.focus()}),100)}}}showNavMenu(t){this.navMenuVisible=t;(t?this.icNavigationMenuOpened:this.icNavigationMenuClosed).emit();document.body.style.height=t?"100%":"auto";document.body.style.overflow=t?"hidden":"auto"}render(){const{appTitle:t,contentAligned:i,customMobileBreakpoint:o,deviceSize:s,el:r,foregroundColor:c,hasAppIcon:h,hasFullWidthSearchBar:d,hasIconButtons:p,hasNavigation:v,hasSearchSlotContent:b,href:f,inline:x,menuButtonClick:y,mobileSearchBarVisible:k,navMenuVisible:w,searchButtonClickHandler:z,searchButtonMouseDownHandler:H,shortAppTitle:M,status:C,version:B,theme:S}=this;const T=C!=="";const j=B!=="";const N=v||p||T||j;const $=s<=l.S?"medium":"large";const I=t!==""&&u(t);const R=s<=o;const V=R?s<=l.S?"subtitle-small":"h4":"h3";const A=`${k?"Hide":"Show"} search`;const O=s<=l.S?"small":"medium";const D=n(r,"short-app-title");const L=n(r,"app-title");const W=L?"div":"a";const q=W=="a"&&{href:f};return a(e,{class:{"fullwidth-searchbar":d,"mobile-mode":R,[g.Dark]:c===g.Dark,[`ic-theme-${S}`]:S!=="inherit"}},a("div",{class:"top-navigation"},a("ic-section-container",{aligned:i,"full-height":true},a("header",{role:"banner"},a("div",{class:"top-panel-container"},a("div",{class:"app-details-container"},(I||L)&&a(W,Object.assign({class:"title-link"},q),h&&a("div",{class:"app-icon-container"},a("slot",{name:"app-icon"})),s<=l.S&&(!m(M)||D)?a("ic-typography",{variant:"subtitle-small","aria-label":(!L||!D)&&`${t} (${M})`},a("h1",null,D?a("slot",{name:"short-app-title"}):M)):a("ic-typography",{variant:V},a("h1",{class:"title-wrap"},L?a("slot",{name:"app-title"}):t))),T&&a("div",{class:"app-status"},a("ic-typography",{"aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},C)),j&&a("div",{class:"app-version"},a("ic-typography",{variant:"label",class:"app-version-text","aria-label":"app version"},B))),(b||N)&&a("div",{class:"search-menu-container"},a("div",{class:"search-actions-container"},!R&&a("slot",{name:"search"}),b&&R&&a("ic-button",{id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:H,variant:"icon-tertiary",monochrome:true,size:$,"aria-label":A,theme:c=="light"?"dark":"light",onClick:z},a("slot",{name:"toggle-icon"},a("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("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"})))),p&&!R&&a("div",{class:"icon-buttons-container"},a("slot",{name:"buttons"})),N&&R&&a("div",{class:"menu-button-container"},a("span",{id:"navigation-landmark-button-text",class:"navigation-landmark-button-text","aria-hidden":"true"},"Main navigation button"),a("nav",{"aria-labelledby":"navigation-landmark-button-text","aria-hidden":`${w}`},a("ic-button",{id:"menu-button",theme:c=="light"?"light":"dark",variant:"secondary",monochrome:true,"aria-expanded":"false","aria-haspopup":"true","aria-label":`Open ${v?"navigation":"app"} menu`,size:O,onClick:y},"Menu",a("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"left-icon"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"})))))))),k&&a("div",{class:"search-bar-container"},a("slot",{name:"search"})),v&&!R&&a("div",{class:"navigation-tabs"},a("span",{id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main pages"),a("nav",{"aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},a("ic-horizontal-scroll",{monochrome:true,appearance:c},a("ul",{class:"navigation-item-list",tabindex:"-1"},a("slot",{name:"navigation"})))))))),w&&a("ic-navigation-menu",{version:B,status:C,class:{["inline"]:x}},p&&a("div",{class:"menu-buttons-slot",slot:"buttons"},a("slot",{name:"buttons"})),a("ul",{slot:"navigation"},a("slot",{name:"navigation"}))))}get el(){return o(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};b.style=v;export{b as ic_top_navigation};
2
+ //# sourceMappingURL=p-35bd9d76.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icTopNavigationCss","TopNavigation","this","hasAppIcon","hasIconButtons","hasNavigation","hasSearchSlotContent","resizeObserver","searchBar","checkSlots","isSlotUsed","el","initialiseSearchBar","slot","getSlot","tagName","querySelector","hideLabel","menuButtonClick","showNavMenu","searchButtonMouseDownHandler","searchButtonClick","searchButtonClickHandler","toggleSearchBar","resizeObserverCallback","currSize","deviceSize","customMobileBreakpoint","mobileSearchBarVisible","icTopNavResized","emit","size","document","activeElement","setAttribute","removeAttribute","setTimeout","focus","runResizeObserver","ResizeObserver","getCurrentDeviceSize","observe","DEVICE_SIZES","XL","getThemeForegroundColor","L","watchPropHandler","newValue","oldValue","onComponentPropUndefinedChange","disconnectedCallback","_a","disconnect","componentWillLoad","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","appTitle","propName","componentWillRender","navBarMenuCloseHandler","shadowRoot","searchInputBlurHandler","detail","searchValue","value","searchValueChangeHandler","themeChangeHandler","foregroundColor","mode","mobileSearchButtonEl","hasFullWidthSearchBar","fullWidth","show","navMenuVisible","icNavigationMenuOpened","icNavigationMenuClosed","body","style","height","overflow","render","contentAligned","href","inline","shortAppTitle","status","version","theme","hasStatus","hasVersion","hasMenuContent","searchButtonSize","S","hasTitle","isPropDefined","overMobileBreakpoint","appTitleVariant","mobileSearchButtonTitle","menuSize","shortAppTitleSlot","hasAppTitleSlot","Component","attrs","h","Host","class","IcThemeForegroundEnum","Dark","aligned","role","Object","assign","name","isEmptyString","variant","id","ref","onMouseDown","monochrome","onClick","xmlns","viewBox","fill","d","width","appearance","tabindex"],"sources":["src/components/ic-top-navigation/ic-top-navigation.css?tag=ic-top-navigation&encapsulation=shadow","src/components/ic-top-navigation/ic-top-navigation.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n color: var(--ic-top-navigation-text);\n width: 100%;\n position: relative;\n\n --ic-typography-color: var(--ic-top-navigation-text);\n\n --ic-button-secondary-text-monochrome: var(--ic-theme-text);\n --ic-button-secondary-border-monochrome: var(--ic-theme-text);\n}\n\n:host(.dark) {\n color: var(--ic-color-text-primary-light);\n --ic-typography-color: var(--ic-color-text-primary-light);\n --ic-top-navigation-logo: var(--ic-color-icon-neutral);\n --ic-top-navigation-icon: var(--ic-color-icon-neutral);\n --ic-top-navigation-theme: var(--ic-color-icon-neutral);\n --ic-top-navigation-status-tag: var(--ic-color-background-primary-dark);\n --ic-top-navigation-status-tag-text: var(--ic-color-brand-text);\n --ic-top-navigation-status-tag-secondary: var(--ic-state-layer-darken-10);\n --navigation-link-colour: var(--ic-color-text-primary-light);\n}\n\n:host ::slotted(ic-navigation-item) {\n --navigation-link-colour: var(--ic-top-navigation-text);\n}\n\n:host(.dark) ::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: var(--ic-color-text-primary-light);\n}\n\n::slotted(ic-navigation-button) {\n --ic-button-icon-monochrome: white;\n}\n\n:host .top-navigation {\n background-color: var(--ic-top-navigation-background);\n height: max-content;\n}\n\n:host(.fullwidth-searchbar) slot[name=\"search\"]::slotted(form) {\n width: 100%;\n}\n\n:host .title-link {\n display: inline-flex;\n align-items: center;\n text-decoration: none;\n padding: var(--ic-space-xxs);\n transition: var(--ic-easing-transition-fast);\n}\n\n:host .title-link,\n:host .title-link:visited,\n:host .title-link:active,\n:host .title-link ::slotted(a),\n:host .title-link:visited ::slotted(a),\n:host .title-link:active ::slotted(a) {\n color: var(--ic-top-navigation-icon-and-label);\n text-decoration: none;\n outline: none;\n}\n\n:host .title-link:hover:not(:focus) {\n background-color: var(--ic-top-navigation-title-hover);\n}\n\n:host .title-link:active:not(:focus) {\n background-color: var(--ic-top-navigation-title-pressed);\n}\n\n:host .title-link:hover {\n border-radius: var(--ic-border-radius);\n}\n\n:host .title-link:focus,\n:host .title-link:focus-within {\n border-radius: var(--ic-border-radius);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .title-link ic-typography {\n font-weight: 600;\n}\n\n:host .nav-panel-container {\n border-top: var(--ic-space-1px) solid var(--ic-top-navigation-keyline);\n padding: 0 var(--ic-space-lg);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n display: flex;\n}\n\n:host(.dark) .nav-panel-container {\n border-top: var(--ic-border-keyline-darken);\n}\n\n.top-panel-container {\n display: flex;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navigation-tabs {\n margin-top: calc(-1 * var(--ic-space-1px));\n}\n\n.app-details-container {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n margin-right: var(--ic-space-md);\n}\n\n.app-icon-container {\n display: flex;\n padding-right: var(--ic-space-xs);\n}\n\n.icon-buttons-container {\n display: flex;\n margin-left: var(--ic-space-md);\n}\n\n.icon-buttons-container ::slotted(nav) {\n display: flex;\n}\n\n.title-wrap {\n overflow-wrap: break-word;\n word-wrap: break-word;\n -ms-word-break: break-all;\n word-break: break-word;\n hyphens: auto;\n}\n\n:host .app-status {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag);\n color: var(--ic-top-navigation-status-tag-text);\n --ic-typography-color: var(--ic-top-navigation-status-tag-text);\n padding: var(--ic-space-xxs) var(--ic-space-lg);\n margin-left: var(--ic-space-md);\n flex: 1 1 0;\n max-width: fit-content;\n}\n\n:host .app-version {\n border-radius: var(--ic-space-md);\n background-color: var(--ic-top-navigation-status-tag-secondary);\n color: var(--ic-top-navigation-status-tag);\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n margin-left: var(--ic-space-xs);\n flex: 1 1 0;\n max-width: fit-content;\n}\n\nslot[name=\"app-icon\"]::slotted(*) {\n fill: var(--ic-top-navigation-logo);\n width: 2em;\n height: 2em;\n}\n\nslot[name=\"toggle-icon\"] svg {\n fill: var(--ic-top-navigation-icon);\n}\n\n.search-menu-container {\n justify-content: right;\n display: flex;\n align-items: center;\n}\n\n.menu-button-container {\n margin-left: var(--ic-space-md);\n}\n\n.menu-button-container .navigation-landmark-button-text {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.search-actions-container {\n display: flex;\n}\n\n.menu-buttons-slot {\n display: flex;\n flex-direction: column;\n}\n\n.navigation-landmark-text {\n position: absolute;\n width: var(--ic-space-1px);\n height: var(--ic-space-1px);\n padding: 0;\n margin: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n}\n\n.navigation-item-list {\n display: flex;\n list-style: none;\n height: 2.75rem;\n}\n\n.navigation-item-list::-webkit-scrollbar {\n display: none;\n}\n\n:host ic-section-container {\n padding-bottom: 0 !important;\n padding-top: 0 !important;\n}\n\n@media screen and (min-width: 993px) {\n .app-details-container {\n margin-right: var(--ic-space-lg);\n }\n}\n\n/* large */\n@media screen and (max-width: 1200px) {\n :host .nav-panel-container {\n padding: 0 var(--ic-space-md);\n }\n}\n\n/** Mobile styling **/\n:host(.mobile-mode) .app-status,\n:host(.mobile-mode) .app-version {\n display: none;\n}\n\n:host(.mobile-mode) .title-link {\n margin-right: var(--ic-space-xs);\n}\n\n:host(.mobile-mode) .search-menu-container {\n max-width: 10rem;\n}\n\n:host(.mobile-mode) .search-bar-container {\n display: flex;\n justify-content: center;\n align-items: center;\n border-top: var(--ic-border-keyline-darken);\n height: 4rem;\n padding-left: var(--ic-space-md);\n padding-right: var(--ic-space-md);\n margin-left: calc(-1 * var(--section-container-margin));\n margin-right: calc(-1 * var(--section-container-margin));\n}\n\n/* x small */\n@media screen and (max-width: 576px) {\n :host .title-link {\n margin-right: var(--ic-space-xxxs);\n word-break: break-word;\n hyphens: none;\n }\n\n .top-panel-container {\n min-height: 2.5rem;\n }\n\n .search-bar-container {\n margin-top: 0;\n height: 3.5rem;\n padding-left: var(--ic-space-xs);\n padding-right: var(--ic-space-xs);\n }\n\n .menu-button-container {\n margin-left: var(--ic-space-sm);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n width: 1.5em;\n height: 1.5em;\n }\n\n slot[name=\"toggle-icon\"] svg {\n width: 1.5em;\n height: 1.5em;\n }\n}\n\n@media (forced-colors: active) {\n :host .top-navigation {\n border-bottom: var(--ic-border-hc);\n }\n\n .app-status,\n .app-version {\n border: var(--ic-border-hc);\n }\n\n slot[name=\"app-icon\"]::slotted(*) {\n fill: currentcolor;\n }\n}\n","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 IcDeviceSizes,\n IcValueEventDetail,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getSlot,\n onComponentPropUndefinedChange,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n isEmptyString,\n isPropDefined,\n} from \"../../utils/helpers\";\nimport { IcSearchBarBlurEventDetail } from \"../ic-search-bar/ic-search-bar.types\";\n\n/**\n * @slot app-icon - Content will be rendered to left of app title. Anything that is slotted here will be hidden from screen readers.\n * @slot app-title - Handle routing by nesting a route in the app title.\n * @slot short-app-title - Handle routing by nesting a route in the short app title (to be displayed in place of app title on small screen sizes).\n * @slot search - Content will be rendered in search area to left of buttons.\n * @slot toggle-icon - Icon to be displayed on the button to toggle search slot content on smaller devices\n * @slot navigation - Content will be rendered in navigation panel.\n * @slot buttons - Content will be rendered to right of search bar.\n */\n@Component({\n tag: \"ic-top-navigation\",\n styleUrl: \"ic-top-navigation.css\",\n shadow: true,\n})\nexport class TopNavigation {\n private hasAppIcon: boolean = false;\n private hasIconButtons: boolean = false;\n private hasNavigation: boolean = false;\n private hasSearchSlotContent: boolean = false;\n private mobileSearchButtonEl: HTMLIcButtonElement;\n private resizeObserver: ResizeObserver = null;\n private searchBar: HTMLIcSearchBarElement = null;\n\n @Element() el: HTMLIcTopNavigationElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n @State() hasFullWidthSearchBar: boolean = false;\n @State() mobileSearchBarVisible: boolean = false;\n @State() mobileSearchHiddenOnBlur: boolean = false;\n @State() navMenuVisible: boolean = false;\n @State() searchButtonClick: boolean = false;\n @State() searchValue: string = \"\";\n\n /**\n * The alignment of the top navigation content.\n */\n @Prop() contentAligned: IcAlignment = \"full-width\";\n /**\n * Can set a custom breakpoint for the top navigation to switch to mobile mode.\n * Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`.\n */\n @Prop() customMobileBreakpoint: IcDeviceSizes = DEVICE_SIZES.L;\n /**\n * The URL to navigate to when the app title is clicked.\n */\n @Prop() href: string = \"/\";\n\n /**\n * If `true`, the flyout navigation menu on small devices will be contained by the parent element.\n */\n @Prop() inline: boolean = false;\n\n /**\n * The short title of the app to be displayed at small screen sizes in place of the app title.\n */\n @Prop() shortAppTitle: string = \"\";\n\n /**\n * The status info to be displayed.\n */\n @Prop() status: string = \"\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * The version info to be displayed.\n */\n @Prop() version: string = \"\";\n\n /**\n * The app title to be displayed. This is required, unless a slotted app title link is used.\n */\n @Prop() appTitle: string;\n\n @Watch(\"appTitle\")\n watchPropHandler(newValue: string, oldValue: string): void {\n //added for Gatsby rehydration issue where prop is initially undefined but then changes to actual value\n //this watch can be removed once Gatsby hydration issue is resolved\n onComponentPropUndefinedChange(\n oldValue,\n newValue,\n this.initialiseSearchBar\n );\n }\n\n /**\n * @internal - Emitted when the menu is closed.\n */\n @Event() icNavigationMenuClosed: EventEmitter<void>;\n\n /**\n * @internal - Emitted when the menu is opened.\n */\n @Event() icNavigationMenuOpened: EventEmitter<void>;\n\n /**\n * Emitted when the top navigation is resized.\n */\n @Event() icTopNavResized: EventEmitter<{ size: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.checkSlots();\n this.deviceSize = getCurrentDeviceSize();\n this.initialiseSearchBar();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n !isSlotUsed(this.el, \"app-title\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.appTitle, propName: \"app-title\" }],\n \"Top Navigation\"\n );\n }\n\n componentWillRender(): void {\n this.checkSlots();\n }\n\n @Listen(\"icNavigationMenuClose\", {})\n navBarMenuCloseHandler(): void {\n this.showNavMenu(false);\n this.el.shadowRoot.querySelector<HTMLElement>(\"#menu-button\").focus();\n }\n\n @Listen(\"icSearchBarBlur\", {})\n searchInputBlurHandler({\n detail,\n }: CustomEvent<IcSearchBarBlurEventDetail>): void {\n if (detail !== null) {\n if (this.mobileSearchBarVisible && !this.searchButtonClick) {\n //don't hide if blur was triggered by click on search button - let the click handler toggle the state\n this.toggleSearchBar();\n }\n this.searchValue = detail.value as string;\n }\n }\n\n @Listen(\"icChange\", {})\n searchValueChangeHandler({ detail }: CustomEvent<IcValueEventDetail>): void {\n this.searchValue = detail.value as string;\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler({ detail }: CustomEvent<IcTheme>): void {\n this.foregroundColor = detail.mode;\n }\n\n private checkSlots = () => {\n this.hasAppIcon = isSlotUsed(this.el, \"app-icon\");\n this.hasNavigation = isSlotUsed(this.el, \"navigation\");\n this.hasIconButtons = isSlotUsed(this.el, \"buttons\");\n this.hasSearchSlotContent = isSlotUsed(this.el, \"search\");\n };\n\n private initialiseSearchBar = () => {\n if (this.hasSearchSlotContent) {\n const slot = getSlot(this.el, \"search\");\n if (slot?.tagName === \"IC-SEARCH-BAR\") {\n this.searchBar = slot as HTMLIcSearchBarElement;\n } else if (slot?.tagName === \"FORM\") {\n this.searchBar = slot.querySelector(\"ic-search-bar\");\n }\n\n if (this.searchBar !== null) {\n this.searchBar.hideLabel = true;\n }\n }\n };\n\n private toggleSearchBar(): void {\n this.mobileSearchBarVisible = !this.mobileSearchBarVisible;\n\n if (this.searchBar !== null) {\n this.mobileSearchButtonEl.setAttribute(\n \"aria-label\",\n `${this.mobileSearchBarVisible ? \"Hide\" : \"Show\"} search`\n );\n this.hasFullWidthSearchBar = this.mobileSearchBarVisible;\n this.searchBar.fullWidth = this.mobileSearchBarVisible;\n if (this.mobileSearchBarVisible) {\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n }\n\n private menuButtonClick = () => {\n this.showNavMenu(true);\n };\n\n private showNavMenu(show: boolean): void {\n this.navMenuVisible = show;\n (show ? this.icNavigationMenuOpened : this.icNavigationMenuClosed).emit();\n document.body.style.height = show ? \"100%\" : \"auto\";\n document.body.style.overflow = show ? \"hidden\" : \"auto\";\n }\n\n private searchButtonMouseDownHandler = () => {\n this.searchButtonClick = true;\n };\n\n private searchButtonClickHandler = () => {\n this.toggleSearchBar();\n this.searchButtonClick = false;\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n if (currSize > this.customMobileBreakpoint) {\n this.showNavMenu(false);\n if (this.mobileSearchBarVisible) {\n this.toggleSearchBar();\n }\n }\n this.icTopNavResized.emit({\n size: currSize,\n });\n if (this.searchBar && document.activeElement === this.searchBar) {\n this.searchBar.setAttribute(\"hidden\", \"true\");\n //remove attribute again as this trigger a redraw & applies css\n this.searchBar.removeAttribute(\"hidden\");\n setTimeout(() => {\n this.searchBar.focus();\n }, 100);\n }\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback(getCurrentDeviceSize());\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n render() {\n const {\n appTitle,\n contentAligned,\n customMobileBreakpoint,\n deviceSize,\n el,\n foregroundColor,\n hasAppIcon,\n hasFullWidthSearchBar,\n hasIconButtons,\n hasNavigation,\n hasSearchSlotContent,\n href,\n inline,\n menuButtonClick,\n mobileSearchBarVisible,\n navMenuVisible,\n searchButtonClickHandler,\n searchButtonMouseDownHandler,\n shortAppTitle,\n status,\n version,\n theme,\n } = this;\n\n const hasStatus = status !== \"\";\n const hasVersion = version !== \"\";\n const hasMenuContent =\n hasNavigation || hasIconButtons || hasStatus || hasVersion;\n\n const searchButtonSize = deviceSize <= DEVICE_SIZES.S ? \"medium\" : \"large\";\n const hasTitle = appTitle !== \"\" && isPropDefined(appTitle);\n const overMobileBreakpoint = deviceSize <= customMobileBreakpoint;\n\n const appTitleVariant: IcTypographyVariants = overMobileBreakpoint\n ? deviceSize <= DEVICE_SIZES.S\n ? \"subtitle-small\"\n : \"h4\"\n : \"h3\";\n\n const mobileSearchButtonTitle = `${\n mobileSearchBarVisible ? \"Hide\" : \"Show\"\n } search`;\n const menuSize = deviceSize <= DEVICE_SIZES.S ? \"small\" : \"medium\";\n\n const shortAppTitleSlot = isSlotUsed(el, \"short-app-title\");\n const hasAppTitleSlot = isSlotUsed(el, \"app-title\");\n const Component = hasAppTitleSlot ? \"div\" : \"a\";\n const attrs = Component == \"a\" && {\n href: href,\n };\n\n return (\n <Host\n class={{\n \"fullwidth-searchbar\": hasFullWidthSearchBar,\n \"mobile-mode\": overMobileBreakpoint,\n [IcThemeForegroundEnum.Dark]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n <div class=\"top-navigation\">\n <ic-section-container aligned={contentAligned} full-height>\n <header role=\"banner\">\n <div class=\"top-panel-container\">\n <div class=\"app-details-container\">\n {(hasTitle || hasAppTitleSlot) && (\n <Component class=\"title-link\" {...attrs}>\n {hasAppIcon && (\n <div class=\"app-icon-container\">\n <slot name=\"app-icon\" />\n </div>\n )}\n {deviceSize <= DEVICE_SIZES.S &&\n (!isEmptyString(shortAppTitle) || shortAppTitleSlot) ? (\n <ic-typography\n variant=\"subtitle-small\"\n aria-label={\n (!hasAppTitleSlot || !shortAppTitleSlot) &&\n `${appTitle} (${shortAppTitle})`\n }\n >\n <h1>\n {shortAppTitleSlot ? (\n <slot name=\"short-app-title\"></slot>\n ) : (\n shortAppTitle\n )}\n </h1>\n </ic-typography>\n ) : (\n <ic-typography variant={appTitleVariant}>\n <h1 class=\"title-wrap\">\n {hasAppTitleSlot ? (\n <slot name=\"app-title\"></slot>\n ) : (\n appTitle\n )}\n </h1>\n </ic-typography>\n )}\n </Component>\n )}\n {hasStatus && (\n <div class=\"app-status\">\n <ic-typography\n aria-label=\"app tag\"\n variant=\"label-uppercase\"\n class=\"app-status-text\"\n >\n {status}\n </ic-typography>\n </div>\n )}\n {hasVersion && (\n <div class=\"app-version\">\n <ic-typography\n variant=\"label\"\n class=\"app-version-text\"\n aria-label=\"app version\"\n >\n {version}\n </ic-typography>\n </div>\n )}\n </div>\n\n {(hasSearchSlotContent || hasMenuContent) && (\n <div class=\"search-menu-container\">\n <div class=\"search-actions-container\">\n {!overMobileBreakpoint && <slot name=\"search\"></slot>}\n\n {hasSearchSlotContent && overMobileBreakpoint && (\n <ic-button\n id=\"search-toggle-button\"\n ref={(el) => (this.mobileSearchButtonEl = el)}\n onMouseDown={searchButtonMouseDownHandler}\n variant=\"icon-tertiary\"\n monochrome\n size={searchButtonSize}\n aria-label={mobileSearchButtonTitle}\n theme={foregroundColor == \"light\" ? \"dark\" : \"light\"}\n onClick={searchButtonClickHandler}\n >\n <slot name=\"toggle-icon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"#ffffff\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z\" />\n </svg>\n </slot>\n </ic-button>\n )}\n\n {hasIconButtons && !overMobileBreakpoint && (\n <div class=\"icon-buttons-container\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n {hasMenuContent && overMobileBreakpoint && (\n <div class=\"menu-button-container\">\n <span\n id=\"navigation-landmark-button-text\"\n class=\"navigation-landmark-button-text\"\n aria-hidden=\"true\"\n >\n Main navigation button\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-button-text\"\n aria-hidden={`${navMenuVisible}`}\n >\n <ic-button\n id=\"menu-button\"\n theme={\n foregroundColor == \"light\" ? \"light\" : \"dark\"\n }\n variant=\"secondary\"\n monochrome\n aria-expanded=\"false\"\n aria-haspopup=\"true\"\n aria-label={`Open ${\n hasNavigation ? \"navigation\" : \"app\"\n } menu`}\n size={menuSize}\n onClick={menuButtonClick}\n >\n Menu\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 0 24 24\"\n width=\"24px\"\n fill=\"#ffffff\"\n slot=\"left-icon\"\n >\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\" />\n </svg>\n </ic-button>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n\n {mobileSearchBarVisible && (\n <div class=\"search-bar-container\">\n <slot name=\"search\"></slot>\n </div>\n )}\n\n {hasNavigation && !overMobileBreakpoint && (\n <div class=\"navigation-tabs\">\n <span\n id=\"navigation-landmark-text\"\n class=\"navigation-landmark-text\"\n aria-hidden=\"true\"\n >\n Main pages\n </span>\n <nav\n aria-labelledby=\"navigation-landmark-text\"\n class=\"nav-panel-container\"\n >\n <ic-horizontal-scroll\n monochrome\n appearance={foregroundColor}\n >\n <ul class=\"navigation-item-list\" tabindex=\"-1\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-horizontal-scroll>\n </nav>\n </div>\n )}\n </header>\n </ic-section-container>\n </div>\n {navMenuVisible && (\n <ic-navigation-menu\n version={version}\n status={status}\n class={{\n [\"inline\"]: inline,\n }}\n >\n {hasIconButtons && (\n <div class=\"menu-buttons-slot\" slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n )}\n <ul slot=\"navigation\">\n <slot name=\"navigation\"></slot>\n </ul>\n </ic-navigation-menu>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"0KAAA,MAAMA,EAAqB,+mQ,MCmDdC,EAAa,M,wMAChBC,KAAAC,WAAsB,MACtBD,KAAAE,eAA0B,MAC1BF,KAAAG,cAAyB,MACzBH,KAAAI,qBAAgC,MAEhCJ,KAAAK,eAAiC,KACjCL,KAAAM,UAAoC,KAuIpCN,KAAAO,WAAa,KACnBP,KAAKC,WAAaO,EAAWR,KAAKS,GAAI,YACtCT,KAAKG,cAAgBK,EAAWR,KAAKS,GAAI,cACzCT,KAAKE,eAAiBM,EAAWR,KAAKS,GAAI,WAC1CT,KAAKI,qBAAuBI,EAAWR,KAAKS,GAAI,SAAS,EAGnDT,KAAAU,oBAAsB,KAC5B,GAAIV,KAAKI,qBAAsB,CAC7B,MAAMO,EAAOC,EAAQZ,KAAKS,GAAI,UAC9B,IAAIE,IAAI,MAAJA,SAAI,SAAJA,EAAME,WAAY,gBAAiB,CACrCb,KAAKM,UAAYK,C,MACZ,IAAIA,IAAI,MAAJA,SAAI,SAAJA,EAAME,WAAY,OAAQ,CACnCb,KAAKM,UAAYK,EAAKG,cAAc,gB,CAGtC,GAAId,KAAKM,YAAc,KAAM,CAC3BN,KAAKM,UAAUS,UAAY,I,IAuBzBf,KAAAgB,gBAAkB,KACxBhB,KAAKiB,YAAY,KAAK,EAUhBjB,KAAAkB,6BAA+B,KACrClB,KAAKmB,kBAAoB,IAAI,EAGvBnB,KAAAoB,yBAA2B,KACjCpB,KAAKqB,kBACLrB,KAAKmB,kBAAoB,KAAK,EAGxBnB,KAAAsB,uBAA0BC,IAChC,GAAIA,IAAavB,KAAKwB,WAAY,CAChCxB,KAAKwB,WAAaD,EAClB,GAAIA,EAAWvB,KAAKyB,uBAAwB,CAC1CzB,KAAKiB,YAAY,OACjB,GAAIjB,KAAK0B,uBAAwB,CAC/B1B,KAAKqB,iB,EAGTrB,KAAK2B,gBAAgBC,KAAK,CACxBC,KAAMN,IAER,GAAIvB,KAAKM,WAAawB,SAASC,gBAAkB/B,KAAKM,UAAW,CAC/DN,KAAKM,UAAU0B,aAAa,SAAU,QAEtChC,KAAKM,UAAU2B,gBAAgB,UAC/BC,YAAW,KACTlC,KAAKM,UAAU6B,OAAO,GACrB,I,IAKDnC,KAAAoC,kBAAoB,KAC1BpC,KAAKK,eAAiB,IAAIgC,gBAAe,KACvCrC,KAAKsB,uBAAuBgB,IAAuB,IAGrDtC,KAAKK,eAAekC,QAAQvC,KAAKS,GAAG,E,gBA3NR+B,EAAaC,G,qBACGC,I,2BACJ,M,4BACC,M,8BACE,M,oBACV,M,uBACG,M,iBACP,G,oBAKO,a,4BAKUF,EAAaG,E,UAItC,I,YAKG,M,mBAKM,G,YAKP,G,WAKK,U,aAKJ,G,wBAQ1B,gBAAAC,CAAiBC,EAAkBC,GAGjCC,EACED,EACAD,EACA7C,KAAKU,oB,CAmBT,oBAAAsC,G,OACEC,EAAAjD,KAAKK,kBAAc,MAAA4C,SAAA,SAAAA,EAAEC,Y,CAGvB,iBAAAC,GACEnD,KAAKO,aACLP,KAAKwB,WAAac,IAClBtC,KAAKU,qB,CAGP,gBAAA0C,GACEC,EAAoBrD,KAAKoC,oBACxB5B,EAAWR,KAAKS,GAAI,cACnB6C,EACE,CAAC,CAAEC,KAAMvD,KAAKwD,SAAUC,SAAU,cAClC,iB,CAIN,mBAAAC,GACE1D,KAAKO,Y,CAIP,sBAAAoD,GACE3D,KAAKiB,YAAY,OACjBjB,KAAKS,GAAGmD,WAAW9C,cAA2B,gBAAgBqB,O,CAIhE,sBAAA0B,EAAuBC,OACrBA,IAEA,GAAIA,IAAW,KAAM,CACnB,GAAI9D,KAAK0B,yBAA2B1B,KAAKmB,kBAAmB,CAE1DnB,KAAKqB,iB,CAEPrB,KAAK+D,YAAcD,EAAOE,K,EAK9B,wBAAAC,EAAyBH,OAAEA,IACzB9D,KAAK+D,YAAcD,EAAOE,K,CAI5B,kBAAAE,EAAmBJ,OAAEA,IACnB9D,KAAKmE,gBAAkBL,EAAOM,I,CAyBxB,eAAA/C,GACNrB,KAAK0B,wBAA0B1B,KAAK0B,uBAEpC,GAAI1B,KAAKM,YAAc,KAAM,CAC3BN,KAAKqE,qBAAqBrC,aACxB,aACA,GAAGhC,KAAK0B,uBAAyB,OAAS,iBAE5C1B,KAAKsE,sBAAwBtE,KAAK0B,uBAClC1B,KAAKM,UAAUiE,UAAYvE,KAAK0B,uBAChC,GAAI1B,KAAK0B,uBAAwB,CAC/BQ,YAAW,KACTlC,KAAKM,UAAU6B,OAAO,GACrB,I,GASD,WAAAlB,CAAYuD,GAClBxE,KAAKyE,eAAiBD,GACrBA,EAAOxE,KAAK0E,uBAAyB1E,KAAK2E,wBAAwB/C,OACnEE,SAAS8C,KAAKC,MAAMC,OAASN,EAAO,OAAS,OAC7C1C,SAAS8C,KAAKC,MAAME,SAAWP,EAAO,SAAW,M,CA2CnD,MAAAQ,GACE,MAAMxB,SACJA,EAAQyB,eACRA,EAAcxD,uBACdA,EAAsBD,WACtBA,EAAUf,GACVA,EAAE0D,gBACFA,EAAelE,WACfA,EAAUqE,sBACVA,EAAqBpE,eACrBA,EAAcC,cACdA,EAAaC,qBACbA,EAAoB8E,KACpBA,EAAIC,OACJA,EAAMnE,gBACNA,EAAeU,uBACfA,EAAsB+C,eACtBA,EAAcrD,yBACdA,EAAwBF,6BACxBA,EAA4BkE,cAC5BA,EAAaC,OACbA,EAAMC,QACNA,EAAOC,MACPA,GACEvF,KAEJ,MAAMwF,EAAYH,IAAW,GAC7B,MAAMI,EAAaH,IAAY,GAC/B,MAAMI,EACJvF,GAAiBD,GAAkBsF,GAAaC,EAElD,MAAME,EAAmBnE,GAAcgB,EAAaoD,EAAI,SAAW,QACnE,MAAMC,EAAWrC,IAAa,IAAMsC,EAActC,GAClD,MAAMuC,EAAuBvE,GAAcC,EAE3C,MAAMuE,EAAwCD,EAC1CvE,GAAcgB,EAAaoD,EACzB,iBACA,KACF,KAEJ,MAAMK,EAA0B,GAC9BvE,EAAyB,OAAS,gBAEpC,MAAMwE,EAAW1E,GAAcgB,EAAaoD,EAAI,QAAU,SAE1D,MAAMO,EAAoB3F,EAAWC,EAAI,mBACzC,MAAM2F,EAAkB5F,EAAWC,EAAI,aACvC,MAAM4F,EAAYD,EAAkB,MAAQ,IAC5C,MAAME,EAAQD,GAAa,KAAO,CAChCnB,KAAMA,GAGR,OACEqB,EAACC,EAAI,CACHC,MAAO,CACL,sBAAuBnC,EACvB,cAAeyB,EACf,CAACW,EAAsBC,MACrBxC,IAAoBuC,EAAsBC,KAC5C,CAAC,YAAYpB,KAAUA,IAAU,YAGnCgB,EAAA,OAAKE,MAAM,kBACTF,EAAA,wBAAsBK,QAAS3B,EAAc,oBAC3CsB,EAAA,UAAQM,KAAK,UACXN,EAAA,OAAKE,MAAM,uBACTF,EAAA,OAAKE,MAAM,0BACPZ,GAAYO,IACZG,EAACF,EAASS,OAAAC,OAAA,CAACN,MAAM,cAAiBH,GAC/BrG,GACCsG,EAAA,OAAKE,MAAM,sBACTF,EAAA,QAAMS,KAAK,cAGdxF,GAAcgB,EAAaoD,KAC1BqB,EAAc7B,IAAkBe,GAChCI,EAAA,iBACEW,QAAQ,iBAAgB,eAEpBd,IAAoBD,IACtB,GAAG3C,MAAa4B,MAGlBmB,EAAA,UACGJ,EACCI,EAAA,QAAMS,KAAK,oBAAyB,IAO1CT,EAAA,iBAAeW,QAASlB,GACtBO,EAAA,MAAIE,MAAM,cACPL,EACCG,EAAA,QAAMS,KAAK,cAAmB,KASzCxB,GACCe,EAAA,OAAKE,MAAM,cACTF,EAAA,8BACa,UACXW,QAAQ,kBACRT,MAAM,mBAELpB,IAINI,GACCc,EAAA,OAAKE,MAAM,eACTF,EAAA,iBACEW,QAAQ,QACRT,MAAM,mBAAkB,aACb,eAEVnB,MAMPlF,GAAwBsF,IACxBa,EAAA,OAAKE,MAAM,yBACTF,EAAA,OAAKE,MAAM,6BACPV,GAAwBQ,EAAA,QAAMS,KAAK,WAEpC5G,GAAwB2F,GACvBQ,EAAA,aACEY,GAAG,uBACHC,IAAM3G,GAAQT,KAAKqE,qBAAuB5D,EAC1C4G,YAAanG,EACbgG,QAAQ,gBACRI,WAAU,KACVzF,KAAM8D,EAAgB,aACVM,EACZV,MAAOpB,GAAmB,QAAU,OAAS,QAC7CoD,QAASnG,GAETmF,EAAA,QAAMS,KAAK,eACTT,EAAA,OACEiB,MAAM,6BACNC,QAAQ,YACRC,KAAK,WAELnB,EAAA,QAAMoB,EAAE,kBAAkBD,KAAK,SAC/BnB,EAAA,QAAMoB,EAAE,kPAMfzH,IAAmB6F,GAClBQ,EAAA,OAAKE,MAAM,0BACTF,EAAA,QAAMS,KAAK,aAGdtB,GAAkBK,GACjBQ,EAAA,OAAKE,MAAM,yBACTF,EAAA,QACEY,GAAG,kCACHV,MAAM,kCAAiC,cAC3B,QAAM,0BAIpBF,EAAA,yBACkB,kCAAiC,cACpC,GAAG9B,KAEhB8B,EAAA,aACEY,GAAG,cACH5B,MACEpB,GAAmB,QAAU,QAAU,OAEzC+C,QAAQ,YACRI,WAAU,qBACI,QAAO,gBACP,OAAM,aACR,QACVnH,EAAgB,aAAe,aAEjC0B,KAAMqE,EACNqB,QAASvG,GAAe,OAGxBuF,EAAA,OACEiB,MAAM,6BACN1C,OAAO,OACP2C,QAAQ,YACRG,MAAM,OACNF,KAAK,UACL/G,KAAK,aAEL4F,EAAA,QAAMoB,EAAE,kBAAkBD,KAAK,SAC/BnB,EAAA,QAAMoB,EAAE,yDAWzBjG,GACC6E,EAAA,OAAKE,MAAM,wBACTF,EAAA,QAAMS,KAAK,YAId7G,IAAkB4F,GACjBQ,EAAA,OAAKE,MAAM,mBACTF,EAAA,QACEY,GAAG,2BACHV,MAAM,2BAA0B,cACpB,QAAM,cAIpBF,EAAA,yBACkB,2BAChBE,MAAM,uBAENF,EAAA,wBACEe,WAAU,KACVO,WAAY1D,GAEZoC,EAAA,MAAIE,MAAM,uBAAuBqB,SAAS,MACxCvB,EAAA,QAAMS,KAAK,sBAS1BvC,GACC8B,EAAA,sBACEjB,QAASA,EACTD,OAAQA,EACRoB,MAAO,CACL,CAAC,UAAWtB,IAGbjF,GACCqG,EAAA,OAAKE,MAAM,oBAAoB9F,KAAK,WAClC4F,EAAA,QAAMS,KAAK,aAGfT,EAAA,MAAI5F,KAAK,cACP4F,EAAA,QAAMS,KAAK,iB"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as o,f as i,h as n,H as r,g as a}from"./p-6b5e91e2.js";import{w as e,r as c,v as s,Z as d,h as u,I as h,i as l,a as b}from"./p-f99576e0.js";import{c as m}from"./p-68a5aaff.js";const v=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor"/>\n</svg>`;const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:inline-block;position:relative;--icon-width:100%;--icon-height:100%}.button,::slotted(a){font-family:var(--ic-font-body-family);text-decoration:none;font-weight:600;font-size:0.875rem;transition:var(--ic-easing-transition-fast);border-radius:var(--ic-border-radius);min-width:var(--min-width, 6.25rem);display:inline-flex;flex-direction:row;justify-content:center;align-items:center;background:none;border:none;box-sizing:border-box;white-space:nowrap;vertical-align:middle}:host(.with-badge) .button{border-radius:0.2188rem}.button:hover,::slotted(a:hover){cursor:pointer}.button:focus,::slotted(a:focus){box-shadow:var(--ic-border-focus)}.button:focus-visible,::slotted(a:focus-visible){outline:var(--ic-hc-focus-outline)}:host(.ic-button-disabled),:host(.ic-button-disabled) .button,:host(.ic-button-disabled) ::slotted(a),:host(.ic-button-loading),:host(.ic-button-loading) .button{pointer-events:none}:host(.top-icon) .button{flex-direction:column;--height:fit-content}:host(.top-icon) .button .icon-container{margin-right:0}:host(.ic-button-variant-primary) .button,:host(.ic-button-variant-icon-primary) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background)}:host(.ic-button-variant-primary) ::slotted(a),:host(.ic-button-variant-icon-primary) ::slotted(a){color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background) !important}:host(.ic-button-variant-primary) .button:hover,:host(.ic-button-variant-icon-primary) .button:hover{background-color:var(--ic-button-primary-background-hover)}:host(.ic-button-variant-primary) ::slotted(a:hover),:host(.ic-button-variant-icon-primary) ::slotted(a:hover){background-color:var(--ic-button-primary-background-hover) !important}:host(.ic-button-variant-primary.ic-button-loading) .button,:host(.ic-button-variant-primary) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading) .button,:host(.ic-button-variant-icon-primary) .button:active{color:var(--ic-button-primary-text);background-color:var(--ic-button-primary-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-primary-background-pressed)}:host(.ic-button-variant-primary) ::slotted(a:active),:host(.ic-button-variant-icon-primary) ::slotted(a:active){background-color:var(--ic-button-primary-background-pressed) !important}:host(.ic-button-variant-primary.ic-button-disabled) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled) .button{background:var(--ic-button-primary-background-disabled);color:var(--ic-button-primary-text-disabled)}:host(.ic-button-variant-primary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled) ::slotted(a){background:var(--ic-button-primary-background-disabled) !important;color:var(--ic-button-primary-text-disabled) !important}:host(.ic-button-variant-primary.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button{color:var(--ic-button-primary-text-monochrome);background-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a){background-color:var(--ic-button-primary-background-monochrome) !important}:host(.ic-button-variant-primary.monochrome) .button:hover,:host(.ic-button-variant-icon-primary.monochrome) .button:hover{background-color:var(--ic-button-primary-background-hover-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-primary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-primary.monochrome) .button:active,:host(.ic-button-variant-icon-primary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-primary.monochrome) .button:active{background-color:var(--ic-button-primary-background-pressed-monochrome);--button-loading-inner-color:var(--ic-button-primary-text-monochrome);--button-loading-outer-color:var(--ic-button-primary-background-monochrome)}:host(.ic-button-variant-primary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-primary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-primary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) .button{background-color:var(--ic-button-primary-background-disabled-monochrome);color:var(--ic-button-primary-text-disabled-monochrome)}:host(.ic-button-variant-primary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-primary.ic-button-disabled.monochrome) ::slotted(a){background-color:var(\n --ic-button-primary-background-disabled-monochrome\n ) !important}:host(.ic-button-variant-secondary) .button,:host(.ic-button-variant-icon-secondary) .button{border:var(--ic-border-width) solid var(--ic-button-secondary-border);color:var(--ic-button-secondary-text)}:host(.ic-button-variant-secondary) ::slotted(a),:host(.ic-button-variant-icon-secondary) ::slotted(a){border:var(--ic-border-width) solid var(--ic-button-secondary-border) !important;color:var(--ic-button-secondary-text) !important}:host(.ic-button-variant-secondary) .button:hover,:host(.ic-button-variant-icon-secondary) .button:hover{background-color:var(--ic-button-secondary-background-hover-active);border-color:var(--ic-button-secondary-border-hover);color:var(--ic-button-secondary-text-hover-active)}:host(.ic-button-variant-secondary) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-active\n ) !important}:host(.ic-button-variant-secondary) .button:active,:host(.ic-button-variant-icon-secondary) .button:active{border-color:var(--ic-button-secondary-border-pressed);background-color:var(--ic-button-secondary-background-pressed-active);color:var(--ic-button-secondary-text-pressed-active)}:host(.ic-button-variant-secondary) ::slotted(a:active),:host(.ic-button-variant-icon-secondary) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-active\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading) .button{border-color:var(--ic-button-secondary-border-pressed);background-color:var(\n --loading-button-background,\n var(--ic-button-secondary-background-pressed-active)\n ) !important;color:var(--ic-button-secondary-text-pressed-active);--button-loading-inner-color:var(--ic-button-secondary-text-pressed-active);--button-loading-outer-color:var(--ic-button-secondary-background-pressed)}:host(.ic-button-variant-secondary.ic-button-disabled) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled) .button{border-color:var(--ic-button-secondary-border-disabled);color:var(--ic-button-secondary-text-disabled);background:none}:host(.ic-button-variant-secondary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background) .button,:host(.ic-button-variant-icon-secondary.background) .button{background-color:var(--ic-button-secondary-background-non-transparent)}:host(.ic-button-variant-secondary.background) ::slotted(a),:host(.ic-button-variant-icon-secondary.background) ::slotted(a){background-color:var(\n --ic-button-secondary-background-non-transparent\n ) !important}:host(.ic-button-variant-secondary.background.ic-button-disabled) .button,:host(.ic-button-variant-icon-secondary.background.ic-button-disabled) .button{background-color:var(\n --ic-button-secondary-background-non-transparent-disabled\n )}:host(.ic-button-variant-secondary.background.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-secondary.background.ic-button-disabled) ::slotted(a){background-color:var(\n --ic-button-secondary-background-non-transparent-disabled\n ) !important}:host(.ic-button-variant-secondary.background) .button:hover,:host(.ic-button-variant-icon-secondary.background) .button:hover{background-color:var(--ic-button-secondary-background-non-transparent-hover)}:host(.ic-button-variant-secondary.background) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-non-transparent-hover\n ) !important}:host(.ic-button-variant-secondary.background) .button:active,:host(.ic-button-variant-icon-secondary.background) .button:active{background-color:var(\n --ic-button-secondary-background-non-transparent-active\n )}:host(.ic-button-variant-secondary.background) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-non-transparent-active\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button,:host(.ic-button-variant-icon-secondary.monochrome) .button{background-color:none;border:var(--ic-border-width) solid\n var(--ic-button-secondary-border-monochrome);color:var(--ic-button-secondary-text-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a){background-color:none !important}:host(.ic-button-variant-secondary.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.monochrome) .button:hover{background-color:var(--ic-button-secondary-background-hover-monochrome);border-color:var(--ic-button-secondary-border-hover-monochrome);color:var(--ic-button-secondary-text-hover-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-secondary.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.monochrome) .button:active{background-color:var(--ic-button-secondary-background-pressed-monochrome);border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome)}:host(.ic-button-variant-secondary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-secondary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-loading.monochrome) .button{background-color:var(\n --ic-button-secondary-background-pressed-monochrome\n ) !important;border-color:var(--ic-button-secondary-border-pressed-monochrome);color:var(--ic-button-secondary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-secondary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-secondary-background-pressed-monochrome\n )}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) .button{background:none;border-color:var(--ic-button-secondary-border-disabled-monochrome);color:var(--ic-button-secondary-text-disabled-monochrome)}:host(.ic-button-variant-secondary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-secondary.background.monochrome) .button,:host(.ic-button-variant-icon-secondary.background.monochrome) .button{background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a){background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome\n ) !important}:host(.ic-button-variant-secondary.background.monochrome.ic-button-disabled) .button,:host(.ic-button-variant-icon-secondary.background.monochrome.ic-button-disabled) .button{background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-disabled\n )}:host(.ic-button-variant-secondary.background.monochrome.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-secondary.background.monochrome.ic-button-disabled) ::slotted(a){background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-disabled\n ) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:hover,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:hover{background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-hover\n ) !important}:host(.ic-button-variant-secondary.background.monochrome) .button:active,:host(.ic-button-variant-icon-secondary.background.monochrome) .button:active{background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n )}:host(.ic-button-variant-secondary.background.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-secondary.background.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-secondary-background-non-transparent-monochrome-active\n ) !important}:host(.ic-button-variant-tertiary) .button,:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-tertiary) ::slotted(a),:host(.ic-button-variant-icon-tertiary) ::slotted(a){color:var(--ic-button-tertiary-text-active)}:host(.ic-button-variant-tertiary) .button:hover,:host(.ic-button-variant-icon-tertiary) .button:hover{background-color:var(--ic-button-tertiary-background-hover-active);color:var(--ic-button-tertiary-text-hover-active)}:host(.ic-button-variant-tertiary) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-active\n ) !important}:host(.ic-button-variant-tertiary) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading) .button,:host(.ic-button-variant-icon-tertiary) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading) .button{background-color:var(--ic-button-tertiary-background-pressed-active);color:var(--ic-button-tertiary-text-pressed-active);--button-loading-inner-color:var(--ic-button-tertiary-text-pressed-active);--button-loading-outer-color:var(--ic-button-tertiary-background-pressed)}:host(.ic-button-variant-tertiary) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-active\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled) .button{color:var(--ic-button-tertiary-text-disabled);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled) ::slotted(a){background:none !important}:host(.ic-button-variant-tertiary.monochrome) .button,:host(.ic-button-variant-tertiary.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a){color:var(--ic-button-tertiary-text-monochrome)}:host(.ic-button-variant-tertiary.monochrome) .button:hover,:host(.ic-button-variant-icon-tertiary.monochrome) .button:hover{background-color:var(--ic-button-tertiary-background-hover-monochrome);color:var(--ic-button-tertiary-text-hover-monochrome)}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:hover),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:hover){background-color:var(\n --ic-button-tertiary-background-hover-monochrome\n ) !important}:host(.ic-button-variant-tertiary.monochrome) .button:active,:host(.ic-button-variant-tertiary.ic-button-loading.monochrome) .button,:host(.ic-button-variant-icon-tertiary.monochrome) .button:active,:host(.ic-button-variant-icon-tertiary.ic-button-loading.monochrome) .button{background-color:var(--ic-button-tertiary-background-pressed-monochrome);color:var(--ic-button-tertiary-text-pressed-monochrome);--button-loading-inner-color:var(\n --ic-button-tertiary-text-pressed-monochrome\n );--button-loading-outer-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n )}:host(.ic-button-variant-tertiary.monochrome) ::slotted(a:active),:host(.ic-button-variant-icon-tertiary.monochrome) ::slotted(a:active){background-color:var(\n --ic-button-tertiary-background-pressed-monochrome\n ) !important}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) .button,:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) .button{color:var(--ic-button-tertiary-text-disabled-monochrome);background:none}:host(.ic-button-variant-tertiary.ic-button-disabled.monochrome) ::slotted(a),:host(.ic-button-variant-icon-tertiary.ic-button-disabled.monochrome) ::slotted(a){background:none !important}:host(.ic-button-variant-destructive) .button,:host(.ic-button-variant-icon-destructive) .button{color:var(--ic-button-destructive-text);background-color:var(--ic-button-destructive-background);text-transform:uppercase}:host(.ic-button-variant-destructive) ::slotted(a),:host(.ic-button-variant-icon-destructive) ::slotted(a){color:var(--ic-button-destructive-text) !important;background-color:var(--ic-button-destructive-background) !important;text-transform:uppercase !important}:host(.ic-button-variant-destructive) .button:hover,:host(.ic-button-variant-icon-destructive) .button:hover{background-color:var(--ic-button-destructive-background-hover)}:host(.ic-button-variant-destructive) ::slotted(a:hover),:host(.ic-button-variant-icon-destructive) ::slotted(a:hover){background-color:var(--ic-button-destructive-background-hover) !important}:host(.ic-button-variant-destructive) .button:active,:host(.ic-button-variant-destructive.ic-button-loading) .button,:host(.ic-button-variant-icon-destructive.ic-button-loading) .button{color:var(--ic-button-primary-text);background-color:var(--ic-button-destructive-background-pressed);--button-loading-inner-color:var(--ic-button-primary-text);--button-loading-outer-color:var(--ic-button-destructive-background-pressed)}:host(.ic-button-variant-destructive) ::slotted(a:active),:host(.ic-button-variant-icon-destructive) ::slotted(a:active){background-color:var(--ic-button-destructive-background-pressed) !important}:host(.ic-button-variant-destructive.ic-button-disabled) .button,:host(.ic-button-variant-icon-destructive.ic-button-disabled) .button{background-color:var(--ic-button-destructive-background-disabled);color:var(--ic-button-destructive-text-disabled)}:host(.ic-button-variant-destructive.ic-button-disabled) ::slotted(a),:host(.ic-button-variant-icon-destructive.ic-button-disabled) ::slotted(a){background-color:var(--ic-button-destructive-background-disabled) !important}:host(.ic-button-variant-icon) .button{color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background);min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon) ::slotted(a){color:var(--ic-button-icon-color);background-color:var(--ic-button-icon-color-background) !important;min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon) .button:hover{color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover)}:host(.ic-button-variant-icon) ::slotted(a:hover){color:var(--ic-button-icon-color-hover);background-color:var(--ic-button-icon-color-background-hover) !important}:host(.ic-button-variant-icon) .button:active:not(:focus),:host(.ic-button-variant-icon.ic-button-loading) .button{color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-acti)}:host(.ic-button-variant-icon) ::slotted(a:active:not(:focus)){color:var(--ic-button-icon-color-active);background-color:var(--ic-button-icon-color-background-acti) !important}:host(.ic-button-variant-icon.ic-button-disabled) .button{color:var(--ic-architectural-300);background:none}:host(.ic-button-variant-icon.ic-button-disabled) ::slotted(a){color:var(--ic-architectural-300);background:none !important}:host(.ic-button-variant-icon-primary) .button,:host(.ic-button-variant-icon-primary) ::slotted(a){min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon-primary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:var(--ic-button-icon-monochrome)}:host(.ic-button-variant-icon-secondary) .button,:host(.ic-button-variant-icon-secondary) ::slotted(a){min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon-secondary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon-tertiary) .button,:host(.ic-button-variant-icon-tertiary) ::slotted(a){min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon-tertiary) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-variant-icon-destructive) .button,:host(.ic-button-variant-icon-destructive) ::slotted(a){min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon-destructive) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.ic-button-size-medium) .button{height:var(--height, 2.5rem);padding:var(--ic-space-xs) var(--ic-space-md)}:host(.ic-button-size-medium) ::slotted(a){height:var(--height, 2.5rem) !important;padding:var(--ic-space-xs) var(--ic-space-md) !important}:host(.ic-button-size-small) .button{height:var(--height, var(--ic-space-xl));padding:var(--ic-space-xxs) var(--ic-space-md)}:host(.ic-button-size-small) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;padding:var(--ic-space-xxs) var(--ic-space-md) !important}:host(.ic-button-size-large) .button{height:var(--height, var(--ic-space-xxl));padding:var(--ic-space-sm) var(--ic-space-md)}:host(.ic-button-size-large) ::slotted(a){height:var(--height, var(--ic-space-xxl)) !important;padding:var(--ic-space-sm) var(--ic-space-md) !important}:host(.ic-button-size-medium.ic-button-variant-icon) .button,:host(.ic-button-size-medium.ic-button-variant-icon-primary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-medium.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-xl));width:var(--ic-space-xl);padding:0.375rem}:host(.ic-button-size-medium.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-medium.ic-button-variant-icon-destructive) ::slotted(a){height:var(--height, var(--ic-space-xl)) !important;width:var(--ic-space-xl) !important;padding:0.375rem !important}:host(.ic-button-size-small.ic-button-variant-icon) .button,:host(.ic-button-size-small.ic-button-variant-icon-primary) .button,:host(.ic-button-size-small.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-small.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-small.ic-button-variant-icon-destructive) .button{height:var(--height, var(--ic-space-lg));width:var(--ic-space-lg);padding:var(--ic-space-xxs)}:host(.ic-button-size-small.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-small.ic-button-variant-icon) ::slotted(a){height:var(--height, var(--ic-space-lg)) !important;width:var(--ic-space-lg) !important;padding:var(--ic-space-xxs) !important}:host(.ic-button-size-large.ic-button-variant-icon) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) .button,:host(.ic-button-size-large.ic-button-variant-icon-secondary) .button,:host(.ic-button-size-large.ic-button-variant-icon-tertiary) .button,:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button{height:var(--height, 2.5rem);width:2.5rem;padding:var(--ic-space-xs)}:host(.ic-button-size-large.ic-button-variant-icon-destructive) .button,:host(.ic-button-size-large.ic-button-variant-icon-primary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-secondary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-tertiary) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon-destructive) ::slotted(a),:host(.ic-button-size-large.ic-button-variant-icon) ::slotted(a){height:var(--height, 2.5rem) !important;width:2.5rem !important;padding:var(--ic-space-xs) !important}:host(.ic-button-full-width),:host(.ic-button-full-width) .button{width:100%}:host(.ic-button-full-width) ::slotted(a){width:100% !important}div.loading-container{position:relative;align-items:center;width:100%}ic-loading-indicator{--inner-color:var(--button-loading-inner-color);--outer-color:var(--button-loading-outer-color), transparent}@keyframes loading-animation{0%{width:0%;left:0%}25%{width:0%;left:0%;opacity:0}50%{width:100%;left:0%;opacity:1}75%{width:0%;left:100%}100%{width:0%;left:100%;opacity:0}}div.icon-container{box-sizing:border-box;width:var(--ic-space-lg);height:var(--ic-space-lg);display:flex;justify-content:center;align-items:center;margin-right:var(--ic-space-xs)}div.right-icon{margin-right:auto;margin-left:var(--ic-space-xs)}:host(.ic-button-full-width) .right-icon{margin-right:var(--ic-space-xs)}::slotted(:not(ic-badge)){width:var(--icon-width) !important;height:var(--icon-height) !important;fill:currentcolor !important;pointer-events:none}:host(.ic-button-variant-icon) .button .icon-container{margin:0;pointer-events:none}:host(.search-submit-button) ::slotted(svg){--icon-height:1.25rem;--icon-width:1.25rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button-small) ::slotted(svg){--icon-height:1rem;--icon-width:1rem;color:var(--ic-atoms-input-search-button)}:host(.search-submit-button) .button:focus{box-shadow:none}:host(.search-submit-button) .button:not(:active):focus{box-shadow:none;background-color:var(--ic-action-default-bg-hover)}:host(.search-submit-button) .button:not(:active):focus ::slotted(svg){color:var(--ic-button-primary-text)}:host(.search-submit-button){display:flex;align-items:center;margin:0 var(--ic-space-xxs)}:host(.ic-button-variant-icon) .button,:host(.ic-button-variant-icon) ::slotted(a){background-color:inherit;min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.ic-button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.button-variant-icon) .button,:host(.button-variant-icon) ::slotted(a){color:var(--button-default);min-width:0;gap:var(--ic-space-xs);margin:var(--ic-space-1px) 0}:host(.button-variant-icon) .icon-container{width:var(--ic-space-lg) !important;height:var(--ic-space-lg) !important}:host(.button-variant-icon) .button:hover,:host(.button-variant-icon) ::slotted(a:hover){background-color:var(--button-default-background-hover);color:var(--button-default-hover)}:host(.button-variant-icon) .button:active:not(:focus),:host(.button-variant-icon) ::slotted(a:active:not(:focus)),:host(.button-variant-icon.loading) .button{background-color:var(--button-default-background-active);color:var(--button-default-active)}:host(.button-variant-icon.disabled) .button,:host(.button-variant-icon.disabled) ::slotted(a){color:var(--ic-architectural-300);background:none}:host(.clear-button){margin:0 var(--ic-space-xxs)}:host(.clear-button) .button:focus,:host(.calendar-button) .button:focus{box-shadow:none}:host(.dismiss-icon) .button,:host(.clear-button) .button,:host(.dismiss-icon) ::slotted(a),:host(.clear-button) ::slotted(a){background-color:inherit;color:var(--ic-atoms-input-clear-button)}:host(.dismiss-icon) .button:hover,:host(.clear-button) .button:hover,:host(.dismiss-icon) ::slotted(a:hover),:host(.clear-button) ::slotted(a:hover){color:var(--ic-atoms-input-clear-button)}:host(.dismiss-icon),:host(.clear-button){color:var(--ic-atoms-input-clear-button);margin:0 var(--ic-space-xxs)}:host(.dismiss-icon) .button:focus,:host(.clear-button) .button:focus,:host(.calendar-button) .button:focus{box-shadow:none}:host(.dismiss-icon) .button:not(:active):focus ::slotted(svg),:host(.clear-button) .button:not(:active):focus ::slotted(svg){background-color:var(--ic-atoms-input-clear-button-focus-inner);color:var(--ic-button-primary-text);}:host(.menu-close-button) ::slotted(svg){--icon-height:0.875rem;--icon-width:0.875rem;color:var(--ic-top-navigation-icon-active)}:host(.popout-menu-button) .button{height:var(--height);justify-content:left;border-radius:0;white-space:pre-line;text-align:start}:host(.popout-menu-button) div.icon-container{flex:none}:host(.popout-menu-button) .button:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}.ic-button-describedby{display:none}:host .ic-tooltip{display:block}:host .arrow-dropdown{margin-top:auto}:host .dropdown-expanded{transform:rotate(180deg);margin-bottom:var(--ic-space-xxxs)}:host(.dropdown-no-icon) .button{padding-right:var(--ic-space-xs)}slot[name="router-item"]::slotted(a){pointer-events:all}::slotted(a){font-size:0.875rem !important;border:none !important;vertical-align:middle !important}@media (forced-colors: active){.button,::slotted(a){border:0.125rem solid transparent !important}.search-submit-button ::slotted(a),.ic-button-variant-icon ::slotted(a),.clear-button ::slotted(a),.search-submit-button ::slotted(svg),.ic-button-variant-icon ::slotted(svg),.clear-button ::slotted(svg){color:HighlightText}:host(.ic-button-variant-icon.monochrome) ::slotted(a),:host(.ic-button-variant-icon.monochrome) ::slotted(svg){color:white}:host(.dismiss-icon) .button:not(:active):focus ::slotted(svg),:host(.clear-button) .button:not(:active):focus ::slotted(svg){color:white !important;background-color:inherit}}:host(.flip) ::slotted(svg){transform:scaleX(-1)}';var g=undefined&&undefined.__rest||function(t,o){var i={};for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&o.indexOf(n)<0)i[n]=t[n];if(t!=null&&typeof Object.getOwnPropertySymbols==="function")for(var r=0,n=Object.getOwnPropertySymbols(t);r<n.length;r++){if(o.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(t,n[r]))i[n[r]]=t[n[r]]}return i};let y=0;const f=class{constructor(n){t(this,n);this.icBlur=o(this,"icBlur",7);this.icFileSelection=o(this,"icFileSelection",7);this.icFocus=o(this,"icFocus",7);this.buttonIdNum=y++;this.hasTooltip=false;this.inheritedAttributes={};this.describedbyEl=null;this.describedById=null;this.mutationObserver=null;this.hostMutationObserver=null;this.handleClick=()=>{if((this.el.type==="submit"||this.el.type==="reset")&&!this.hasRouterSlot()&&!!this.el.closest("FORM")){const t=document.createElement("button");t.setAttribute("type",this.el.type);t.style.display="none";this.el.closest("FORM").appendChild(t);t.click();t.remove()}};this.handleKeyDown=t=>{if(t.key==="Escape"&&this.hasTooltip){this.closeButtonTooltip(t)}};this.onFocus=()=>{this.icFocus.emit()};this.onBlur=()=>{this.icBlur.emit()};this.mutationCallback=()=>{this.describedByContent=this.describedbyEl.innerText};this.hostMutationCallback=t=>{let o=false;t.forEach((({attributeName:t})=>{const i=this.el.getAttribute(t);if(t==="title")this.title=i;else if(t==="aria-label")this.ariaLabel=i;if(e.includes(t)){this.inheritedAttributes[t]=i;o=true}}));if(o){i(this)}};this.setHasTooltip=()=>{this.hasTooltip=!this.disableTooltip&&(!!this.title||this.isIconVariant())};this.isIconVariant=()=>this.variant.startsWith("icon");this.ariaLabel=null;this.describedByContent=null;this.title=null;this.accept="*";this.ariaControlsId=undefined;this.ariaOwnsId=undefined;this.disabled=false;this.disableTooltip=false;this.download=false;this.dropdown=false;this.dropdownExpanded=false;this.fileUpload=false;this.fileInputName=`ic-button-file-upload-input-${y++}`;this.form=undefined;this.formaction=undefined;this.formenctype=undefined;this.formmethod=undefined;this.formnovalidate=undefined;this.formtarget=undefined;this.fullWidth=false;this.href=undefined;this.hreflang=undefined;this.loading=false;this.monochrome=false;this.multiple=false;this.referrerpolicy=undefined;this.rel=undefined;this.selectedFiles=undefined;this.size="medium";this.target=undefined;this.theme="inherit";this.tooltipPlacement="bottom";this.transparentBackground=true;this.type="button";this.variant="primary"}watchDisabledHandler(){c(this.disabled,this.el)}disconnectedCallback(){if(this.mutationObserver!==null&&this.mutationObserver!==undefined){this.mutationObserver.disconnect()}if(this.hostMutationObserver!==null&&this.hostMutationObserver!==undefined){this.hostMutationObserver.disconnect()}}componentWillUpdate(){if(this.loading){this.el.style.setProperty("--min-width",`${this.el.getBoundingClientRect().width}px`)}this.setHasTooltip()}componentWillLoad(){const t=s(this.el,[...e,"title"]),{title:o,"aria-label":i}=t,n=g(t,["title","aria-label"]);this.title=o;this.ariaLabel=i;this.inheritedAttributes=n;c(this.disabled,this.el);this.el.setAttribute("exportparts","button");this.id=this.el.id||null;this.setHasTooltip();if(!this.hasTooltip){const t=this.inheritedAttributes["aria-describedby"];if(t!==undefined){this.describedById=t;const o=this.el.parentElement.querySelector(`#${t}`);if(o){this.describedByContent=o.innerText;this.describedbyEl=o}}}}componentDidLoad(){this.updateTheme();if(typeof MutationObserver!=="undefined"){if(this.describedById){this.mutationObserver=new MutationObserver(this.mutationCallback);this.mutationObserver.observe(this.describedbyEl,{characterData:true,childList:true,subtree:true})}this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true})}}componentWillRender(){const t=this.hasIconSlot("left")?this.el.querySelector(`[slot="left-icon"]`):this.hasIconSlot("right")?this.el.querySelector(`[slot="right-icon"]`):null;t===null||t===void 0?void 0:t.setAttribute("viewBox","0 0 24 24")}handleHostClick(t){if(!this.hasRouterSlot()){if(this.fileUpload){d(this.icFileSelection,this.el,this.multiple,this.fileInputName,this.selectedFiles,this.disabled,this.accept)}if(this.disabled||this.loading){t.stopImmediatePropagation()}if(this.dropdown){this.dropdownExpanded=!this.dropdownExpanded}}}themeChangeHandler({detail:t}){this.updateTheme(t.mode)}async setFocus(){var t;(t=this.buttonEl)===null||t===void 0?void 0:t.focus()}async closeButtonTooltip(t){const o=this.el.shadowRoot.querySelector("ic-tooltip");if(await o.isTooltipVisible()){o.displayTooltip(false);t.preventDefault();t.stopImmediatePropagation()}}hasIconSlot(t){const o=t?`${t}-`:"";return this.el.querySelector(`[slot="${o}icon"]`)!==null}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');if(this.routerSlot){this.routerSlot.ariaLabel=this.routerSlot.textContent}return!!this.routerSlot}updateTheme(t=null){const o=u(this.el,t);if(o!==h.Default){this.theme=o;this.monochrome=true}}render(){const t=this.href&&"a"||"button";const{title:o,ariaLabel:i,inheritedAttributes:a}=this;const e=t==="button"?{type:this.type,disabled:this.disabled,form:this.form,formaction:this.formaction,formenctype:this.formenctype,formmethod:this.formmethod,formnovalidate:this.formnovalidate,formtarget:this.formtarget}:{download:this.download!==false?this.download:null,href:this.href,rel:this.rel,target:this.target,referrerpolicy:this.referrerpolicy,hreflang:this.hreflang};let c=null;let s=null;if(this.hasTooltip){s=this.id!==null?`ic-button-with-tooltip-${this.id}`:`ic-button-with-tooltip-${this.buttonIdNum}`;c=this.variant==="icon"&&!!i?null:`ic-tooltip-${s}`}else{c=this.describedById}const d=()=>n(t,Object.assign({class:"button","aria-disabled":this.loading||this.disabled?"true":null,"aria-label":this.loading?"Loading":i,"aria-expanded":this.dropdown&&`${this.dropdownExpanded}`},e,a,{onFocus:this.onFocus,onBlur:this.onBlur,ref:t=>this.buttonEl=t,"aria-describedby":c,part:"button"}),this.hasIconSlot("left")&&!this.loading&&n("div",{class:"icon-container"},n("slot",{name:"left-icon"})),this.hasIconSlot("top")&&!this.hasIconSlot("left")&&!this.hasIconSlot("right")&&!this.loading&&n("div",{class:"icon-container"},n("slot",{name:"top-icon"})),this.loading?n("div",{class:"loading-container"},n("ic-loading-indicator",{type:"linear",monochrome:this.monochrome,theme:this.theme})):n("slot",null),this.hasIconSlot("right")&&!this.loading&&!this.dropdown&&n("div",{class:{"icon-container":true,"right-icon":true}},n("slot",{name:"right-icon"})),this.dropdown&&!this.loading&&this.variant!=="icon"&&this.variant!=="destructive"&&n("span",{class:{["arrow-dropdown"]:!this.dropdownExpanded,["dropdown-expanded"]:this.dropdownExpanded},innerHTML:v}));return n(r,{class:{[`ic-theme-${this.theme}`]:this.theme!=="inherit",[`monochrome`]:this.monochrome,["ic-button-disabled"]:this.disabled&&!this.loading,[`ic-button-variant-${this.variant}`]:true,[`ic-button-size-${this.size}`]:true,["ic-button-loading"]:this.loading,["ic-button-full-width"]:this.fullWidth,["with-badge"]:l(this.el,"badge"),["dropdown-no-icon"]:this.dropdown&&!l(this.el,"icon")&&!l(this.el,"left-icon"),["top-icon"]:l(this.el,"top-icon"),["background"]:this.variant==="secondary"&&!this.transparentBackground&&this.theme==="light"},onClick:this.handleClick,onKeyDown:this.handleKeyDown,"aria-owns":this.ariaOwnsId,"aria-controls":this.ariaControlsId,"aria-expanded":this.dropdown&&`${this.dropdownExpanded}`},this.hasTooltip&&n("ic-tooltip",{id:c,label:o||i,target:s,placement:this.tooltipPlacement,silent:this.isIconVariant()&&!!i},this.hasRouterSlot()?n("slot",{name:"router-item"}):n(d,null)),l(this.el,"badge")&&n("slot",{name:"badge"}),!this.hasTooltip&&(this.hasRouterSlot()?n("slot",{name:"router-item"}):n(d,null)),this.describedByContent&&n("span",{id:c,class:"ic-button-describedby"},this.describedByContent))}static get delegatesFocus(){return true}get el(){return a(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};f.style=p;const k='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--linear-border-radius:0.25rem;--inner-color:var(--ic-loading-indicator-inner-color);--outer-color:var(--ic-loading-indicator-outer-color);--label-color:var(--ic-loading-indicator-label-color);--margin:none;--linear-line-height:var(--ic-space-xs)}:host(.ic-loading-indicator-monochrome){--inner-color:var(--ic-loading-indicator-inner-color-monochrome);--outer-color:var(--ic-loading-indicator-outer-color-monochrome);--label-color:var(--ic-loading-indicator-label-color-monochrome)}.ic-loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center}:host([size="small"]){--circular-diameter:2.5rem;--linear-line-height:var(--ic-space-xxs)}:host([size="medium"]){--circular-diameter:5rem}:host([size="large"]){--circular-diameter:7.5rem}:host([size="icon"]){display:inline-block;--margin:var(--ic-space-xxxs);--circular-diameter:1.25rem}:host(.ic-loading-indicator-label){--margin:0 0 var(--ic-space-xs) 0}.ic-loading-label{--ic-typography-color:var(--label-color);margin-left:var(--label-margin-left)}.ic-loading-circular-outer{height:var(--circular-diameter);width:var(--circular-diameter)}.ic-loading-circular-outer.indeterminate{animation:circular-animation 1s linear;animation-iteration-count:infinite}@keyframes circular-animation{100%{transform:rotate(360deg)}}.ic-loading-circular-outer,.ic-loading-linear-outer{margin:var(--margin)}.ic-loading-linear-outer{background-color:var(--outer-color);height:var(--linear-line-height);width:100%;border-radius:var(--linear-border-radius);overflow:hidden}.ic-loading-linear-inner{position:relative;height:100%;background-color:var(--inner-color);border-radius:var(--linear-border-radius)}.indeterminate>.ic-loading-linear-inner{animation:linear-animation 2s infinite}.determinate>.ic-loading-linear-inner{transition:width 0.5s;width:var(--linear-width)}:host(.ic-loading-indicator-full-width){--linear-border-radius:none}@keyframes linear-animation{0%{width:0%;left:-1%}25%{width:0%;left:-1%}50%{width:101%;left:-1%}75%{width:0%;left:101%}100%{width:0%;left:101%}}.ic-loading-circular-svg{position:relative;width:100%;height:100%;transform:rotate(-90deg)}.ic-loading-circular-svg circle{width:100%;height:100%;fill:none;stroke:var(--compact-step-outer-color, var(--outer-color));stroke-width:var(--circular-line-width);stroke-linecap:round}.ic-loading-circular-svg circle:nth-child(2){--circular-indeterminate:calc(\n (0.25 * var(--stroke-dasharray)) - var(--stroke-dasharray)\n );stroke-dasharray:var(--stroke-dasharray), var(--stroke-dasharray);stroke-dashoffset:var(--stroke-dashoffset, var(--circular-indeterminate));stroke:var(--compact-step-inner-color, var(--inner-color))}:host(.inner-label) .ic-loading-circular-inner{height:100%;display:grid}:host(.inner-label) .ic-loading-circular-svg,.inner-text{grid-column:1;grid-row:1}:host(.not-required.compact-step-progress-indicator) .ic-loading-circular-svg circle:nth-child(2){stroke:var(--ic-architectural-300)}.inner-text{display:flex;align-items:center;justify-content:center;width:var(--ic-space-lg);height:inherit;overflow:hidden;margin:auto;--ic-typography-color:var(\n --ic-step-indicator-text-current,\n var(--ic-status-info-default)\n )}:host(.not-required.compact-step-progress-indicator) .inner-text{--ic-typography-color:var(--ic-step-indicator-text-disabled)}:host(.ic-loading-indicator-light.not-required.compact-step-progress-indicator) .inner-text{--ic-typography-color:var(--ic-architectural-400)}@media (forced-colors: active){.indeterminate>.ic-loading-circular-inner{forced-color-adjust:none}.ic-loading-linear-outer{border:var(--ic-border-hc)}.ic-loading-linear-inner{background-color:canvastext}.ic-loading-circular-svg circle{stroke:Background}.ic-loading-circular-svg circle:nth-child(2){stroke:canvastext}:host(.not-required.compact-step-progress-indicator) .ic-loading-circular-svg circle:nth-child(2){stroke:GrayText}}';const x=class{constructor(o){t(this,o);this.updateCircularProgressMeter=()=>{if(!this.indeterminate){this.circularMeter.style.setProperty("--progress-value",String(this.progress))}};this.getLabel=(t,o)=>new Promise((()=>{this.interval=setInterval((()=>{if(t<this.labelList.length-1){t++}else{t=0}o(this.labelList[t])}),this.labelDuration)}));this.getLabelVariant=()=>{var t;let o="h4";const i=(t=this.outerElement)===null||t===void 0?void 0:t.offsetWidth;if(this.size==="small"||this.type==="circular"&&i<60){o="label"}else if(this.size==="large"||this.type==="circular"&&i>=120){o="h2"}return o};this.setCircleLineWidth=()=>{const{offsetWidth:t}=this.outerElement;const o=this.el.classList.contains("compact-step-progress-indicator")?40:0;const i=this.el.classList.contains("toast-dismiss-timer")?20:0;if(t||o||i){this.circularLineWidth=(o||i||t)*.1;this.circularDiameter=o||i||t;this.outerElement.style.setProperty("--circular-line-width",`${this.circularLineWidth}px`)}};this.setLinearDeterminateWidth=()=>{if(!this.innerElement)return;const t=Math.min(this.max,Math.max(this.min,this.progress));const o=(t-this.min)/(this.max-this.min);this.clipInnerElement=o>.5;if(this.clipInnerElement){this.innerElement.classList.remove("clip")}else{this.innerElement.classList.add("clip")}this.innerElement.style.setProperty("--linear-width",`${o*100}%`)};this.calcOuterClass=()=>{let t=`ic-loading-${this.type}-outer`;t+=this.indeterminate?" indeterminate":" determinate";return t};this.updateLabel=()=>{if(this.label!==undefined){if(typeof this.label==="string"){this.indicatorLabel=this.label}else{this.labelList=this.label;const t=0;this.indicatorLabel=this.labelList[t];if(this.labelList.length>1){this.getLabel(t,(t=>{this.indicatorLabel=t}))}}}};this.setCircleXY=()=>{if(this.circularDiameter>0){const t=this.circularDiameter/2;const o=t;const i=t;const n=t-this.circularLineWidth/2;this.setDashSteps(n);return{x:o,y:i,r:n}}return{x:0,y:0,r:0}};this.setDashSteps=t=>{const o=2*Math.PI*t;const i=Math.min(Math.max(this.progress,this.min),this.max);const n=-1-(i-this.min)/(this.max-this.min);this.circularMeter.style.setProperty("--stroke-dasharray",`${o}px`);if(!this.indeterminate){this.circularMeter.style.setProperty("--circular-steps-max",String(this.max));this.circularMeter.style.setProperty("--stroke-dashoffset",`${n*o}px`)}};this.circularDiameter=undefined;this.circularLineWidth=undefined;this.indeterminate=undefined;this.indicatorLabel=undefined;this.clipInnerElement=false;this.description="Loading";this.fullWidth=false;this.innerLabel=undefined;this.labelDuration=8e3;this.max=100;this.min=0;this.monochrome=false;this.size="medium";this.type="circular";this.label=undefined;this.progress=undefined;this.theme="inherit"}watchPropHandler(){this.updateLabel()}watchProgressHandler(){if(this.type==="circular"){this.updateCircularProgressMeter()}}disconnectedCallback(){clearInterval(this.interval)}componentWillLoad(){this.indeterminate=this.progress===undefined;this.updateLabel();this.el.setAttribute("exportparts","ic-loading-container")}componentDidLoad(){if(this.type==="circular"){this.setCircleLineWidth();this.circularMeter=this.el.shadowRoot.querySelector(".ic-loading-circular-svg circle:nth-child(2)");this.updateCircularProgressMeter()}if(Number(this.progress)>=0&&this.type==="linear"){this.setLinearDeterminateWidth()}}componentWillUpdate(){this.indeterminate=this.progress===undefined}componentDidUpdate(){if(Number(this.progress)>=0&&this.type==="linear"){this.setLinearDeterminateWidth()}}render(){const{theme:t,label:o,description:i,size:a,fullWidth:e,innerLabel:c,monochrome:s}=this;const{x:d,y:u,r:h}=this.setCircleXY();return n(r,{class:{[`ic-theme-${t}`]:t!=="inherit","ic-loading-indicator-label":!!o,"ic-loading-indicator-full-width":e,"inner-label":!!c,"ic-loading-indicator-monochrome":s}},n("div",{class:"ic-loading-container",part:"ic-loading-container"},n("div",{ref:t=>this.outerElement=t,class:this.calcOuterClass(),role:"progressbar","aria-labelledby":this.label&&this.size!=="icon"&&"ic-loading-label","aria-label":i,"aria-valuenow":this.progress,"aria-valuemin":this.min,"aria-valuemax":this.max},n("div",{ref:t=>this.innerElement=t,class:`ic-loading-${this.type}-inner`},this.innerLabel&&this.innerLabel!==undefined&&this.size==="small"&&n("ic-typography",{variant:"subtitle-small",class:"inner-text"},this.innerLabel),this.type==="circular"&&n("svg",{class:"ic-loading-circular-svg",viewBox:`0 0 ${this.circularDiameter||0} ${this.circularDiameter||0}`},n("circle",{cx:`${d}`,cy:`${u}`,r:`${h}`}),n("circle",{cx:`${d}`,cy:`${u}`,r:`${h}`})))),o&&a!=="icon"&&n("ic-typography",{id:"ic-loading-label",class:"ic-loading-label",role:"status",variant:this.getLabelVariant()},n("p",null,this.indicatorLabel))))}get el(){return a(this)}static get watchers(){return{label:["watchPropHandler"],progress:["watchProgressHandler"]}}};x.style=k;const w='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.ic-tooltip){width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;--ic-tooltip-background:var(--ic-color-background-primary-dark);--ic-tooltip-text:var(--ic-color-text-primary-dark);--ic-tooltip-border:var(--ic-color-border-neutral-grey-light)}:host(.ic-tooltip) .ic-tooltip-container{background-color:var(--ic-tooltip-background);text-align:center;padding:var(--ic-space-xxxs) var(--ic-space-xs);border-radius:var(--ic-border-radius);border:var(--ic-border-width) solid var(--ic-tooltip-border);position:absolute;max-width:20rem;display:none;z-index:var(--ic-z-index-tooltip);box-shadow:var(--ic-elevation-overlay);width:-moz-max-content;width:max-content}:host(.ic-tooltip) ic-typography{--ic-typography-color:var(--ic-tooltip-text)}:host(.tooltip-navigation-item:not(.tooltip-navigation-item-side-nav-collapsed)) .ic-tooltip-container,:host(.tooltip-disabled) .ic-tooltip-container{display:none !important}:host(.tooltip-long-label-navigation-item-side-nav-expanded) .ic-tooltip-container[data-show]{display:block !important}:host(.ic-tooltip) .ic-tooltip-arrow,:host(.ic-tooltip) .ic-tooltip-arrow::before{position:absolute;background:inherit}:host(.ic-tooltip) .ic-tooltip-arrow{visibility:hidden;width:var(--ic-space-md);height:var(--ic-space-md)}:host(.ic-tooltip) .ic-tooltip-arrow::before{visibility:visible;content:"";border:var(--ic-border-width) solid var(--ic-tooltip-border);width:100%;height:100%}:host(.ic-tooltip) .ic-tooltip-container[data-show]{display:block}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="top"]>.ic-tooltip-arrow{height:var(--ic-space-xxxs)}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="top"]>.ic-tooltip-arrow::before{border-radius:0 0 var(--ic-border-radius) var(--ic-border-radius);left:0;top:var(--ic-space-xxxs);border-top:0;transform:translateX(var(--tooltip-arrow-translate))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="bottom"]>.ic-tooltip-arrow{top:calc(-1 * var(--ic-space-xxs));height:var(--ic-space-xxxs)}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="bottom"]>.ic-tooltip-arrow::before{border-radius:var(--ic-border-radius) var(--ic-border-radius) 0 0;left:0;top:var(--ic-space-1px);border-bottom:0;transform:translateX(var(--tooltip-arrow-translate))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="left"]>.ic-tooltip-arrow{width:var(--ic-space-xxxs);right:calc(-1 * var(--ic-space-1px))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="left"]>.ic-tooltip-arrow::before{border-radius:0 var(--ic-border-radius) var(--ic-border-radius) 0;border-left:0;top:calc(-1 * var(--ic-space-1px))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="right"]>.ic-tooltip-arrow{width:var(--ic-space-xxxs);left:calc(-1 * var(--ic-space-xxs))}:host(.ic-tooltip) .ic-tooltip-container[data-popper-placement^="right"]>.ic-tooltip-arrow::before{border-radius:var(--ic-border-radius) 0 0 var(--ic-border-radius);border-right:0;top:calc(-1 * var(--ic-space-1px))}:host(.on-dialog) .ic-tooltip-container{transform:translate(\n var(--tooltip-translate-x),\n var(--tooltip-translate-y)\n ) !important}@media screen and (max-width: 576px){:host(.ic-tooltip) .ic-tooltip-container{max-width:18.875rem}}@media (forced-colors: active){:host(.ic-tooltip) .ic-tooltip-container,:host(.ic-tooltip) .ic-tooltip-arrow::before{border:var(--ic-border-hc)}}';const z=class{constructor(o){t(this,o);this.delayedHideEvents=["mouseleave"];this.dialogOverflow=false;this.instantHideEvents=["focusout"];this.mouseOverTool=false;this.persistTooltip=false;this.onDialog=false;this.showEvents=[!this.disableHover&&"mouseenter",!this.disableHover&&"focusin",!this.disableClick&&"click"];this.getTooltipTranslate=t=>{const o=this.el.children[0].getBoundingClientRect();let i;let n;switch(this.placement){case"bottom":i=o.left-t.left-.5*o.width;n=o.bottom-t.top;break;case"bottom-start":i=o.left-t.left;n=o.bottom-t.top;break;case"bottom-end":i=o.right-t.right;n=o.bottom-t.top;break;case"top":i=o.left-t.left-.5*o.width;n=o.top-t.bottom;break;case"top-start":i=o.left-t.left;n=o.top-t.bottom;break;case"top-end":i=o.right-t.right;n=o.top-t.bottom;break;case"left":case"left-start":i=o.right-t.right-o.width;n=o.bottom-t.top-o.height;break;case"left-end":i=o.right-t.right-o.width;n=o.top-t.bottom+o.height;break;case"right":case"right-start":i=o.left-t.left+o.width;n=o.bottom-t.top-o.height;break;case"right-end":i=o.left-t.left+o.width;n=o.top-t.bottom+o.height;break}if(this.dialogOverflow&&i<0){if(this.placement.includes("top")||this.placement.includes("bottom")){this.toolTip.style.setProperty("--tooltip-arrow-translate",`${i}px`);i=o.left-t.left}if(this.placement.includes("left")){this.placement="right";i=o.left-t.left+o.width}}this.toolTip.style.setProperty("--tooltip-translate-x",`${i}px`);this.toolTip.style.setProperty("--tooltip-translate-y",`${n}px`)};this.show=()=>{if(this.label){this.toolTip.setAttribute("data-show","");if(this.onDialog){this.el.classList.add("on-dialog");const t=this.icDialogEl.shadowRoot.querySelector("dialog").getBoundingClientRect();this.getTooltipTranslate(t)}this.popperInstance=m(this.el,this.toolTip,Object.assign({placement:this.placement,modifiers:[{name:"offset",options:{offset:[0,10]}},{name:"arrow",options:{element:this.arrow}},{name:"eventListeners",options:{scroll:false,resize:false}}]},this.popperProps))}else{console.warn(`Tooltip can't display without prop 'label' set`)}};this.hide=()=>{this.toolTip.removeAttribute("data-show");this.persistTooltip=false;if(this.popperInstance!==undefined){this.popperInstance.destroy()}};this.checkCloseTooltip=()=>{setTimeout((()=>{if(!this.mouseOverTool&&!this.persistTooltip){this.hide()}}),100)};this.mouseEnterTooltip=()=>{this.mouseOverTool=true};this.mouseLeaveTooltip=()=>{this.mouseOverTool=false;this.checkCloseTooltip()};this.handleKeyDown=t=>{if(t.key==="Escape"&&!this.persistTooltip){this.hide()}};this.manageEventListeners=t=>{const o=t==="add"?"addEventListener":"removeEventListener";this.showEvents.forEach((t=>{this.el[o](t,this.show);if(this.toolTip!==undefined){this.toolTip[o](t,this.mouseEnterTooltip)}}));if(!this.persistTooltip){this.instantHideEvents.forEach((t=>{this.el[o](t,this.hide)}))}this.delayedHideEvents.forEach((t=>{this.el[o](t,this.checkCloseTooltip);if(this.toolTip!==undefined){this.toolTip[o](t,this.mouseLeaveTooltip)}}));document[o]("keydown",this.handleKeyDown)};this.disableClick=false;this.disableHover=false;this.maxLines=undefined;this.placement="bottom";this.silent=false;this.target=undefined;this.theme="inherit";this.label=undefined;this.popperProps={}}async setExternalPopperProps(t){this.popperProps=t}disconnectedCallback(){this.manageEventListeners("remove");if(this.popperInstance!==undefined){this.popperInstance.destroy()}}componentDidLoad(){var t;this.manageEventListeners("add");this.icDialogEl=this.el.closest("ic-dialog");this.dialogOverflow=((t=this.icDialogEl)===null||t===void 0?void 0:t.getAttribute("data-overflow"))==="true";this.onDialog=this.icDialogEl!==null;b([{prop:this.label,propName:"label"}],"Tooltip")}componentDidRender(){const t=this.el.shadowRoot.querySelector(".ic-tooltip-container > ic-typography");this.maxLines>0&&t.setAttribute("style",`--truncation-max-lines: ${this.maxLines}`)}async displayTooltip(t,o){this.persistTooltip=o;t?this.show():this.hide()}async isTooltipVisible(){return Promise.resolve(this.toolTip.hasAttribute("data-show"))}render(){const{label:t,maxLines:o,silent:i,theme:a}=this;return n(r,{class:{"ic-tooltip":true,[`ic-theme-${a}`]:a!=="inherit"}},n("div",{ref:t=>this.toolTip=t,role:"tooltip",class:"ic-tooltip-container","aria-hidden":`${i}`},n("ic-typography",{maxLines:o,variant:"caption"},t),n("div",{ref:t=>this.arrow=t,class:"ic-tooltip-arrow"})),n("slot",null))}get el(){return a(this)}};z.style=w;export{f as ic_button,x as ic_loading_indicator,z as ic_tooltip};
2
+ //# sourceMappingURL=p-36f4e0bd.entry.js.map