@ukic/canary-web-components 3.0.0-canary.5 → 3.0.0-canary.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (514) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-55099147.js → helpers-0d86316e.js} +33 -29
  3. package/dist/cjs/helpers-0d86316e.js.map +1 -0
  4. package/dist/cjs/{helpers-c80f6ce4.js → helpers-e0da4ae1.js} +17 -17
  5. package/dist/cjs/{helpers-c80f6ce4.js.map → helpers-e0da4ae1.js.map} +1 -1
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +8 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-badge.cjs.entry.js +2 -2
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-button_3.cjs.entry.js +10 -7
  17. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-card-horizontal.cjs.entry.js +17 -8
  19. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-card-vertical.cjs.entry.js +15 -6
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js +5 -1
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -1
  25. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-chip.cjs.entry.js +9 -4
  27. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-data-table.cjs.entry.js +72 -61
  31. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-date-input.cjs.entry.js +7 -2
  33. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-date-picker.cjs.entry.js +6 -1
  35. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-divider.cjs.entry.js +3 -3
  38. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-empty-state_2.cjs.entry.js +6 -3
  40. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js +4 -5
  42. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-footer-link.cjs.entry.js +4 -5
  44. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-footer.cjs.entry.js +7 -8
  46. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-hero.cjs.entry.js +6 -7
  48. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +3 -3
  50. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +13 -4
  52. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-link.cjs.entry.js +9 -6
  55. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  57. package/dist/cjs/ic-menu-item.cjs.entry.js +7 -1
  58. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-navigation-button.cjs.entry.js +6 -7
  60. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-navigation-group.cjs.entry.js +5 -6
  62. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-item.cjs.entry.js +4 -4
  64. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  66. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-pagination_4.cjs.entry.js +36 -7
  68. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  70. package/dist/cjs/ic-radio-group.cjs.entry.js +9 -1
  71. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -1
  73. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-search-bar.cjs.entry.js +7 -3
  75. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-side-navigation.cjs.entry.js +5 -5
  77. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  79. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  80. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  81. package/dist/cjs/ic-switch.cjs.entry.js +6 -2
  82. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  84. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  85. package/dist/cjs/ic-tab.cjs.entry.js +5 -2
  86. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-theme.cjs.entry.js +20 -20
  88. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  90. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -0
  91. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-toggle-button.cjs.entry.js +7 -1
  93. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-top-navigation.cjs.entry.js +10 -6
  95. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tree-item.cjs.entry.js +13 -4
  97. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tree-view.cjs.entry.js +16 -4
  99. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  101. package/dist/cjs/loader.cjs.js +1 -1
  102. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +4 -1
  103. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +22 -10
  104. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  105. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js +10 -0
  106. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js.map +1 -1
  107. package/dist/collection/components/ic-data-table/ic-data-table.css +10 -0
  108. package/dist/collection/components/ic-data-table/ic-data-table.js +70 -59
  109. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  110. package/dist/collection/components/ic-data-table/story-data.js +86 -2
  111. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  112. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +38 -0
  113. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  114. package/dist/collection/components/ic-date-input/ic-date-input.css +2 -1
  115. package/dist/collection/components/ic-date-input/ic-date-input.js +8 -1
  116. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  117. package/dist/collection/components/ic-date-picker/ic-date-picker.js +8 -1
  118. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  119. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +4 -1
  120. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  121. package/dist/collection/components/ic-tree-item/ic-tree-item.css +20 -3
  122. package/dist/collection/components/ic-tree-item/ic-tree-item.js +31 -3
  123. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  124. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js +3 -0
  125. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js.map +1 -1
  126. package/dist/collection/components/ic-tree-view/ic-tree-view.css +16 -2
  127. package/dist/collection/components/ic-tree-view/ic-tree-view.js +51 -1
  128. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  129. package/dist/collection/utils/helpers.js +21 -24
  130. package/dist/collection/utils/helpers.js.map +1 -1
  131. package/dist/collection/utils/types.js +6 -6
  132. package/dist/collection/utils/types.js.map +1 -1
  133. package/dist/components/helpers.js +30 -26
  134. package/dist/components/helpers.js.map +1 -1
  135. package/dist/components/helpers2.js +16 -16
  136. package/dist/components/helpers2.js.map +1 -1
  137. package/dist/components/ic-accordion.js +9 -1
  138. package/dist/components/ic-accordion.js.map +1 -1
  139. package/dist/components/ic-alert.js +2 -2
  140. package/dist/components/ic-alert.js.map +1 -1
  141. package/dist/components/ic-badge.js +2 -2
  142. package/dist/components/ic-badge.js.map +1 -1
  143. package/dist/components/ic-button2.js +11 -8
  144. package/dist/components/ic-button2.js.map +1 -1
  145. package/dist/components/ic-card-horizontal.js +20 -9
  146. package/dist/components/ic-card-horizontal.js.map +1 -1
  147. package/dist/components/ic-card-vertical.js +18 -7
  148. package/dist/components/ic-card-vertical.js.map +1 -1
  149. package/dist/components/ic-checkbox-group.js +5 -0
  150. package/dist/components/ic-checkbox-group.js.map +1 -1
  151. package/dist/components/ic-checkbox.js +5 -0
  152. package/dist/components/ic-checkbox.js.map +1 -1
  153. package/dist/components/ic-chip.js +11 -4
  154. package/dist/components/ic-chip.js.map +1 -1
  155. package/dist/components/ic-data-table.js +71 -60
  156. package/dist/components/ic-data-table.js.map +1 -1
  157. package/dist/components/ic-date-input2.js +8 -2
  158. package/dist/components/ic-date-input2.js.map +1 -1
  159. package/dist/components/ic-date-picker.js +7 -1
  160. package/dist/components/ic-date-picker.js.map +1 -1
  161. package/dist/components/ic-divider2.js +4 -4
  162. package/dist/components/ic-divider2.js.map +1 -1
  163. package/dist/components/ic-footer-link-group.js +5 -6
  164. package/dist/components/ic-footer-link-group.js.map +1 -1
  165. package/dist/components/ic-footer-link.js +5 -6
  166. package/dist/components/ic-footer-link.js.map +1 -1
  167. package/dist/components/ic-footer.js +8 -9
  168. package/dist/components/ic-footer.js.map +1 -1
  169. package/dist/components/ic-hero.js +7 -8
  170. package/dist/components/ic-hero.js.map +1 -1
  171. package/dist/components/ic-horizontal-scroll2.js +3 -3
  172. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  173. package/dist/components/ic-input-component-container2.js +13 -2
  174. package/dist/components/ic-input-component-container2.js.map +1 -1
  175. package/dist/components/ic-link2.js +10 -7
  176. package/dist/components/ic-link2.js.map +1 -1
  177. package/dist/components/ic-menu-item2.js +9 -1
  178. package/dist/components/ic-menu-item2.js.map +1 -1
  179. package/dist/components/ic-menu2.js +3 -3
  180. package/dist/components/ic-menu2.js.map +1 -1
  181. package/dist/components/ic-navigation-button.js +7 -8
  182. package/dist/components/ic-navigation-button.js.map +1 -1
  183. package/dist/components/ic-navigation-group.js +6 -7
  184. package/dist/components/ic-navigation-group.js.map +1 -1
  185. package/dist/components/ic-navigation-item.js +5 -5
  186. package/dist/components/ic-navigation-item.js.map +1 -1
  187. package/dist/components/ic-pagination-bar2.js +4 -1
  188. package/dist/components/ic-pagination-bar2.js.map +1 -1
  189. package/dist/components/ic-pagination-item2.js +6 -1
  190. package/dist/components/ic-pagination-item2.js.map +1 -1
  191. package/dist/components/ic-pagination2.js +5 -0
  192. package/dist/components/ic-pagination2.js.map +1 -1
  193. package/dist/components/ic-radio-group.js +8 -0
  194. package/dist/components/ic-radio-group.js.map +1 -1
  195. package/dist/components/ic-radio-option.js +6 -1
  196. package/dist/components/ic-radio-option.js.map +1 -1
  197. package/dist/components/ic-search-bar.js +8 -3
  198. package/dist/components/ic-search-bar.js.map +1 -1
  199. package/dist/components/ic-select2.js +10 -3
  200. package/dist/components/ic-select2.js.map +1 -1
  201. package/dist/components/ic-side-navigation.js +6 -6
  202. package/dist/components/ic-side-navigation.js.map +1 -1
  203. package/dist/components/ic-switch.js +8 -3
  204. package/dist/components/ic-switch.js.map +1 -1
  205. package/dist/components/ic-tab.js +5 -2
  206. package/dist/components/ic-tab.js.map +1 -1
  207. package/dist/components/ic-text-field2.js +22 -6
  208. package/dist/components/ic-text-field2.js.map +1 -1
  209. package/dist/components/ic-theme.js +22 -22
  210. package/dist/components/ic-theme.js.map +1 -1
  211. package/dist/components/ic-toggle-button-group.js +3 -0
  212. package/dist/components/ic-toggle-button-group.js.map +1 -1
  213. package/dist/components/ic-toggle-button.js +9 -1
  214. package/dist/components/ic-toggle-button.js.map +1 -1
  215. package/dist/components/ic-top-navigation.js +11 -7
  216. package/dist/components/ic-top-navigation.js.map +1 -1
  217. package/dist/components/ic-tree-item.js +15 -4
  218. package/dist/components/ic-tree-item.js.map +1 -1
  219. package/dist/components/ic-tree-view.js +19 -4
  220. package/dist/components/ic-tree-view.js.map +1 -1
  221. package/dist/core/core.css +63 -43
  222. package/dist/core/core.esm.js +1 -1
  223. package/dist/core/core.esm.js.map +1 -1
  224. package/dist/core/{p-690d0bbd.entry.js → p-006d37d0.entry.js} +2 -2
  225. package/dist/core/p-006d37d0.entry.js.map +1 -0
  226. package/dist/core/p-06cda732.entry.js +2 -0
  227. package/dist/core/p-06cda732.entry.js.map +1 -0
  228. package/dist/core/{p-6f92ee7a.entry.js → p-07881c14.entry.js} +2 -2
  229. package/dist/core/{p-e4b9221b.entry.js → p-1084a7f9.entry.js} +2 -2
  230. package/dist/core/p-1084a7f9.entry.js.map +1 -0
  231. package/dist/core/p-1893f635.entry.js +2 -0
  232. package/dist/core/p-1893f635.entry.js.map +1 -0
  233. package/dist/core/{p-3106c4fd.entry.js → p-19f85b60.entry.js} +2 -2
  234. package/dist/core/p-21f6619f.entry.js +2 -0
  235. package/dist/core/p-21f6619f.entry.js.map +1 -0
  236. package/dist/core/{p-70543f44.entry.js → p-2412ba0b.entry.js} +2 -2
  237. package/dist/core/p-2664bfab.entry.js +2 -0
  238. package/dist/core/p-2664bfab.entry.js.map +1 -0
  239. package/dist/core/{p-9235425c.entry.js → p-26a41692.entry.js} +2 -2
  240. package/dist/core/p-29a86adf.entry.js +2 -0
  241. package/dist/core/p-29a86adf.entry.js.map +1 -0
  242. package/dist/core/p-2c38ff71.entry.js +2 -0
  243. package/dist/core/p-2c38ff71.entry.js.map +1 -0
  244. package/dist/core/p-324be8cf.entry.js +2 -0
  245. package/dist/core/p-324be8cf.entry.js.map +1 -0
  246. package/dist/core/{p-160de322.entry.js → p-3272931c.entry.js} +2 -2
  247. package/dist/core/p-34e57694.entry.js +2 -0
  248. package/dist/core/p-34e57694.entry.js.map +1 -0
  249. package/dist/core/{p-0687cc81.entry.js → p-35caddb3.entry.js} +2 -2
  250. package/dist/core/p-35caddb3.entry.js.map +1 -0
  251. package/dist/core/{p-3bbfefcc.entry.js → p-38aca488.entry.js} +2 -2
  252. package/dist/core/p-38aca488.entry.js.map +1 -0
  253. package/dist/core/{p-91cf88d6.entry.js → p-39190da3.entry.js} +2 -2
  254. package/dist/core/p-39190da3.entry.js.map +1 -0
  255. package/dist/core/p-3ae329ab.entry.js +2 -0
  256. package/dist/core/p-3ae329ab.entry.js.map +1 -0
  257. package/dist/core/{p-f5d1e747.entry.js → p-3b84953c.entry.js} +2 -2
  258. package/dist/core/{p-3b3a8108.entry.js → p-3bc4bc81.entry.js} +2 -2
  259. package/dist/core/{p-fca3589b.entry.js → p-47f2f713.entry.js} +2 -2
  260. package/dist/core/{p-b2389339.js → p-4bcd86cf.js} +2 -2
  261. package/dist/core/p-4bcd86cf.js.map +1 -0
  262. package/dist/core/{p-29623ad5.entry.js → p-5284ccab.entry.js} +2 -2
  263. package/dist/core/p-5284ccab.entry.js.map +1 -0
  264. package/dist/core/{p-c4dc8fdf.entry.js → p-5d749879.entry.js} +2 -2
  265. package/dist/core/{p-7c843bc8.entry.js → p-670c10af.entry.js} +2 -2
  266. package/dist/core/p-670c10af.entry.js.map +1 -0
  267. package/dist/core/{p-dd3a9cb1.entry.js → p-68eb216b.entry.js} +2 -2
  268. package/dist/core/{p-ffe923ae.entry.js → p-6a2ed698.entry.js} +2 -2
  269. package/dist/core/{p-bdce46ca.entry.js → p-6aa0f42b.entry.js} +2 -2
  270. package/dist/core/p-6aa0f42b.entry.js.map +1 -0
  271. package/dist/core/p-6d179eed.entry.js +2 -0
  272. package/dist/core/p-6d179eed.entry.js.map +1 -0
  273. package/dist/core/p-7765a219.entry.js +2 -0
  274. package/dist/core/p-7765a219.entry.js.map +1 -0
  275. package/dist/core/p-77a98aa2.entry.js +2 -0
  276. package/dist/core/p-77a98aa2.entry.js.map +1 -0
  277. package/dist/core/{p-7e358f32.entry.js → p-78f747ee.entry.js} +2 -2
  278. package/dist/core/p-78f747ee.entry.js.map +1 -0
  279. package/dist/core/{p-bd5aada7.entry.js → p-7a9de1bb.entry.js} +2 -2
  280. package/dist/core/{p-25597c03.js → p-808715e2.js} +2 -2
  281. package/dist/core/p-808715e2.js.map +1 -0
  282. package/dist/core/{p-9da6df82.entry.js → p-83f39782.entry.js} +2 -2
  283. package/dist/core/{p-acb0eddb.entry.js → p-8e300091.entry.js} +2 -2
  284. package/dist/core/{p-3d478ba9.entry.js → p-92398f47.entry.js} +2 -2
  285. package/dist/core/{p-3d478ba9.entry.js.map → p-92398f47.entry.js.map} +1 -1
  286. package/dist/core/{p-b4eb1c6d.entry.js → p-95d1c9e6.entry.js} +2 -2
  287. package/dist/core/{p-b4dd4835.entry.js → p-9b600ef3.entry.js} +2 -2
  288. package/dist/core/p-9b600ef3.entry.js.map +1 -0
  289. package/dist/core/{p-c894bc8f.entry.js → p-a0dfd2cf.entry.js} +2 -2
  290. package/dist/core/p-a0dfd2cf.entry.js.map +1 -0
  291. package/dist/core/p-a7cda2d6.entry.js +2 -0
  292. package/dist/core/p-a7cda2d6.entry.js.map +1 -0
  293. package/dist/core/p-aa876e5e.entry.js +2 -0
  294. package/dist/core/p-aa876e5e.entry.js.map +1 -0
  295. package/dist/core/p-b047cd84.entry.js +2 -0
  296. package/dist/core/p-b047cd84.entry.js.map +1 -0
  297. package/dist/core/p-b1c68968.entry.js +2 -0
  298. package/dist/core/p-b1c68968.entry.js.map +1 -0
  299. package/dist/core/{p-a67c358a.entry.js → p-b7e5b682.entry.js} +2 -2
  300. package/dist/core/{p-df05b999.entry.js → p-b9081a99.entry.js} +2 -2
  301. package/dist/core/p-b9081a99.entry.js.map +1 -0
  302. package/dist/core/{p-47ae7d10.entry.js → p-c6bdbee1.entry.js} +2 -2
  303. package/dist/core/p-c6bdbee1.entry.js.map +1 -0
  304. package/dist/core/p-ca4bfffd.entry.js +2 -0
  305. package/dist/core/p-ca4bfffd.entry.js.map +1 -0
  306. package/dist/core/p-ccd141a9.entry.js +2 -0
  307. package/dist/core/p-ccd141a9.entry.js.map +1 -0
  308. package/dist/core/{p-e532fa26.entry.js → p-d5648fdc.entry.js} +2 -2
  309. package/dist/core/p-d5648fdc.entry.js.map +1 -0
  310. package/dist/core/p-d7bc2e7f.entry.js +2 -0
  311. package/dist/core/p-d7bc2e7f.entry.js.map +1 -0
  312. package/dist/core/{p-43891495.entry.js → p-d981ef7a.entry.js} +2 -2
  313. package/dist/core/{p-43891495.entry.js.map → p-d981ef7a.entry.js.map} +1 -1
  314. package/dist/core/{p-bc7d33e1.entry.js → p-e0b556b4.entry.js} +2 -2
  315. package/dist/core/p-e0b556b4.entry.js.map +1 -0
  316. package/dist/core/{p-10afa533.entry.js → p-eb6e3878.entry.js} +2 -2
  317. package/dist/core/{p-40f94113.entry.js → p-efd608ab.entry.js} +2 -2
  318. package/dist/core/{p-f08723ca.entry.js → p-f02d5539.entry.js} +2 -2
  319. package/dist/core/p-f95e52d8.entry.js +2 -0
  320. package/dist/core/p-f95e52d8.entry.js.map +1 -0
  321. package/dist/core/{p-a0c3f221.entry.js → p-fafc157b.entry.js} +2 -2
  322. package/dist/core/p-fafc157b.entry.js.map +1 -0
  323. package/dist/esm/core.js +1 -1
  324. package/dist/esm/{helpers-d399f9c8.js → helpers-759bbf51.js} +17 -17
  325. package/dist/esm/{helpers-d399f9c8.js.map → helpers-759bbf51.js.map} +1 -1
  326. package/dist/esm/{helpers-d3091c8c.js → helpers-fcc7a364.js} +31 -27
  327. package/dist/esm/helpers-fcc7a364.js.map +1 -0
  328. package/dist/esm/ic-accordion-group.entry.js +1 -1
  329. package/dist/esm/ic-accordion.entry.js +8 -1
  330. package/dist/esm/ic-accordion.entry.js.map +1 -1
  331. package/dist/esm/ic-alert.entry.js +2 -2
  332. package/dist/esm/ic-alert.entry.js.map +1 -1
  333. package/dist/esm/ic-back-to-top.entry.js +1 -1
  334. package/dist/esm/ic-badge.entry.js +2 -2
  335. package/dist/esm/ic-badge.entry.js.map +1 -1
  336. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  337. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  338. package/dist/esm/ic-button_3.entry.js +10 -7
  339. package/dist/esm/ic-button_3.entry.js.map +1 -1
  340. package/dist/esm/ic-card-horizontal.entry.js +17 -8
  341. package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
  342. package/dist/esm/ic-card-vertical.entry.js +15 -6
  343. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  344. package/dist/esm/ic-checkbox-group.entry.js +5 -1
  345. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  346. package/dist/esm/ic-checkbox.entry.js +5 -1
  347. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  348. package/dist/esm/ic-chip.entry.js +9 -4
  349. package/dist/esm/ic-chip.entry.js.map +1 -1
  350. package/dist/esm/ic-data-row.entry.js +1 -1
  351. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  352. package/dist/esm/ic-data-table.entry.js +72 -61
  353. package/dist/esm/ic-data-table.entry.js.map +1 -1
  354. package/dist/esm/ic-date-input.entry.js +7 -2
  355. package/dist/esm/ic-date-input.entry.js.map +1 -1
  356. package/dist/esm/ic-date-picker.entry.js +6 -1
  357. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  358. package/dist/esm/ic-dialog.entry.js +1 -1
  359. package/dist/esm/ic-divider.entry.js +3 -3
  360. package/dist/esm/ic-divider.entry.js.map +1 -1
  361. package/dist/esm/ic-empty-state_2.entry.js +6 -3
  362. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  363. package/dist/esm/ic-footer-link-group.entry.js +4 -5
  364. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  365. package/dist/esm/ic-footer-link.entry.js +4 -5
  366. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  367. package/dist/esm/ic-footer.entry.js +7 -8
  368. package/dist/esm/ic-footer.entry.js.map +1 -1
  369. package/dist/esm/ic-hero.entry.js +6 -7
  370. package/dist/esm/ic-hero.entry.js.map +1 -1
  371. package/dist/esm/ic-horizontal-scroll.entry.js +3 -3
  372. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  373. package/dist/esm/ic-input-component-container_3.entry.js +13 -4
  374. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  375. package/dist/esm/ic-input-label_2.entry.js +1 -1
  376. package/dist/esm/ic-link.entry.js +9 -6
  377. package/dist/esm/ic-link.entry.js.map +1 -1
  378. package/dist/esm/ic-menu-group.entry.js +1 -1
  379. package/dist/esm/ic-menu-item.entry.js +7 -1
  380. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  381. package/dist/esm/ic-navigation-button.entry.js +6 -7
  382. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  383. package/dist/esm/ic-navigation-group.entry.js +5 -6
  384. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  385. package/dist/esm/ic-navigation-item.entry.js +4 -4
  386. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  387. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  388. package/dist/esm/ic-page-header.entry.js +1 -1
  389. package/dist/esm/ic-pagination_4.entry.js +36 -7
  390. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  391. package/dist/esm/ic-popover-menu.entry.js +1 -1
  392. package/dist/esm/ic-radio-group.entry.js +9 -1
  393. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  394. package/dist/esm/ic-radio-option.entry.js +5 -1
  395. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  396. package/dist/esm/ic-search-bar.entry.js +7 -3
  397. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  398. package/dist/esm/ic-side-navigation.entry.js +5 -5
  399. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  400. package/dist/esm/ic-status-tag.entry.js +1 -1
  401. package/dist/esm/ic-step.entry.js +1 -1
  402. package/dist/esm/ic-stepper.entry.js +1 -1
  403. package/dist/esm/ic-switch.entry.js +6 -2
  404. package/dist/esm/ic-switch.entry.js.map +1 -1
  405. package/dist/esm/ic-tab-group.entry.js +1 -1
  406. package/dist/esm/ic-tab-panel.entry.js +1 -1
  407. package/dist/esm/ic-tab.entry.js +5 -2
  408. package/dist/esm/ic-tab.entry.js.map +1 -1
  409. package/dist/esm/ic-theme.entry.js +20 -20
  410. package/dist/esm/ic-theme.entry.js.map +1 -1
  411. package/dist/esm/ic-toast.entry.js +1 -1
  412. package/dist/esm/ic-toggle-button-group.entry.js +3 -0
  413. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  414. package/dist/esm/ic-toggle-button.entry.js +7 -1
  415. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  416. package/dist/esm/ic-top-navigation.entry.js +10 -6
  417. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  418. package/dist/esm/ic-tree-item.entry.js +13 -4
  419. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  420. package/dist/esm/ic-tree-view.entry.js +16 -4
  421. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  422. package/dist/esm/ic-typography.entry.js +1 -1
  423. package/dist/esm/loader.js +1 -1
  424. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +4 -3
  425. package/dist/types/components/ic-data-table/ic-data-table.d.ts +2 -0
  426. package/dist/types/components/ic-data-table/story-data.d.ts +78 -0
  427. package/dist/types/components/ic-date-input/ic-date-input.d.ts +1 -0
  428. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +1 -0
  429. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +6 -0
  430. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +9 -0
  431. package/dist/types/components.d.ts +24 -0
  432. package/dist/types/utils/helpers.d.ts +9 -9
  433. package/dist/types/utils/types.d.ts +5 -5
  434. package/hydrate/index.js +403 -233
  435. package/package.json +3 -3
  436. package/dist/cjs/helpers-55099147.js.map +0 -1
  437. package/dist/core/p-006afa83.entry.js +0 -2
  438. package/dist/core/p-006afa83.entry.js.map +0 -1
  439. package/dist/core/p-0687cc81.entry.js.map +0 -1
  440. package/dist/core/p-12b1db1b.entry.js +0 -2
  441. package/dist/core/p-12b1db1b.entry.js.map +0 -1
  442. package/dist/core/p-199ce579.entry.js +0 -2
  443. package/dist/core/p-199ce579.entry.js.map +0 -1
  444. package/dist/core/p-25597c03.js.map +0 -1
  445. package/dist/core/p-29623ad5.entry.js.map +0 -1
  446. package/dist/core/p-2d6fffa4.entry.js +0 -2
  447. package/dist/core/p-2d6fffa4.entry.js.map +0 -1
  448. package/dist/core/p-31082e64.entry.js +0 -2
  449. package/dist/core/p-31082e64.entry.js.map +0 -1
  450. package/dist/core/p-3bbfefcc.entry.js.map +0 -1
  451. package/dist/core/p-47ae7d10.entry.js.map +0 -1
  452. package/dist/core/p-59d48811.entry.js +0 -2
  453. package/dist/core/p-59d48811.entry.js.map +0 -1
  454. package/dist/core/p-690d0bbd.entry.js.map +0 -1
  455. package/dist/core/p-6f7cf143.entry.js +0 -2
  456. package/dist/core/p-6f7cf143.entry.js.map +0 -1
  457. package/dist/core/p-7a1f1e0d.entry.js +0 -2
  458. package/dist/core/p-7a1f1e0d.entry.js.map +0 -1
  459. package/dist/core/p-7c843bc8.entry.js.map +0 -1
  460. package/dist/core/p-7e358f32.entry.js.map +0 -1
  461. package/dist/core/p-81da002e.entry.js +0 -2
  462. package/dist/core/p-81da002e.entry.js.map +0 -1
  463. package/dist/core/p-83c09d8d.entry.js +0 -2
  464. package/dist/core/p-83c09d8d.entry.js.map +0 -1
  465. package/dist/core/p-8d933976.entry.js +0 -2
  466. package/dist/core/p-8d933976.entry.js.map +0 -1
  467. package/dist/core/p-91cf88d6.entry.js.map +0 -1
  468. package/dist/core/p-92f443aa.entry.js +0 -2
  469. package/dist/core/p-92f443aa.entry.js.map +0 -1
  470. package/dist/core/p-982deb94.entry.js +0 -2
  471. package/dist/core/p-982deb94.entry.js.map +0 -1
  472. package/dist/core/p-99c76218.entry.js +0 -2
  473. package/dist/core/p-99c76218.entry.js.map +0 -1
  474. package/dist/core/p-9ae77f11.entry.js +0 -2
  475. package/dist/core/p-9ae77f11.entry.js.map +0 -1
  476. package/dist/core/p-a0c3f221.entry.js.map +0 -1
  477. package/dist/core/p-b2389339.js.map +0 -1
  478. package/dist/core/p-b4dd4835.entry.js.map +0 -1
  479. package/dist/core/p-bc7d33e1.entry.js.map +0 -1
  480. package/dist/core/p-bdce46ca.entry.js.map +0 -1
  481. package/dist/core/p-be7bc371.entry.js +0 -2
  482. package/dist/core/p-be7bc371.entry.js.map +0 -1
  483. package/dist/core/p-c12f3582.entry.js +0 -2
  484. package/dist/core/p-c12f3582.entry.js.map +0 -1
  485. package/dist/core/p-c5ea1e19.entry.js +0 -2
  486. package/dist/core/p-c5ea1e19.entry.js.map +0 -1
  487. package/dist/core/p-c894bc8f.entry.js.map +0 -1
  488. package/dist/core/p-df05b999.entry.js.map +0 -1
  489. package/dist/core/p-e4b9221b.entry.js.map +0 -1
  490. package/dist/core/p-e532fa26.entry.js.map +0 -1
  491. package/dist/core/p-e89e5ec8.entry.js +0 -2
  492. package/dist/core/p-e89e5ec8.entry.js.map +0 -1
  493. package/dist/core/p-f4414801.entry.js +0 -2
  494. package/dist/core/p-f4414801.entry.js.map +0 -1
  495. package/dist/esm/helpers-d3091c8c.js.map +0 -1
  496. /package/dist/core/{p-6f92ee7a.entry.js.map → p-07881c14.entry.js.map} +0 -0
  497. /package/dist/core/{p-3106c4fd.entry.js.map → p-19f85b60.entry.js.map} +0 -0
  498. /package/dist/core/{p-70543f44.entry.js.map → p-2412ba0b.entry.js.map} +0 -0
  499. /package/dist/core/{p-9235425c.entry.js.map → p-26a41692.entry.js.map} +0 -0
  500. /package/dist/core/{p-160de322.entry.js.map → p-3272931c.entry.js.map} +0 -0
  501. /package/dist/core/{p-f5d1e747.entry.js.map → p-3b84953c.entry.js.map} +0 -0
  502. /package/dist/core/{p-3b3a8108.entry.js.map → p-3bc4bc81.entry.js.map} +0 -0
  503. /package/dist/core/{p-fca3589b.entry.js.map → p-47f2f713.entry.js.map} +0 -0
  504. /package/dist/core/{p-c4dc8fdf.entry.js.map → p-5d749879.entry.js.map} +0 -0
  505. /package/dist/core/{p-dd3a9cb1.entry.js.map → p-68eb216b.entry.js.map} +0 -0
  506. /package/dist/core/{p-ffe923ae.entry.js.map → p-6a2ed698.entry.js.map} +0 -0
  507. /package/dist/core/{p-bd5aada7.entry.js.map → p-7a9de1bb.entry.js.map} +0 -0
  508. /package/dist/core/{p-9da6df82.entry.js.map → p-83f39782.entry.js.map} +0 -0
  509. /package/dist/core/{p-acb0eddb.entry.js.map → p-8e300091.entry.js.map} +0 -0
  510. /package/dist/core/{p-b4eb1c6d.entry.js.map → p-95d1c9e6.entry.js.map} +0 -0
  511. /package/dist/core/{p-a67c358a.entry.js.map → p-b7e5b682.entry.js.map} +0 -0
  512. /package/dist/core/{p-10afa533.entry.js.map → p-eb6e3878.entry.js.map} +0 -0
  513. /package/dist/core/{p-40f94113.entry.js.map → p-efd608ab.entry.js.map} +0 -0
  514. /package/dist/core/{p-f08723ca.entry.js.map → p-f02d5539.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["IcInformationStatus","IcThemeForegroundEnum","VARIANT_ICONS","neutral","icon","neutralIcon","ariaLabel","info","infoIcon","warning","warningIcon","error","errorIcon","success","successIcon","IC_INHERITED_ARIA","IC_DEVICE_SIZES","XS","S","M","L","XL","IC_BLOCK_COLOR_COMPONENTS","IC_FIXED_COLOR_COMPONENTS","IC_BLOCK_COLOR_EXCEPTIONS","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","DARK_MODE_THRESHOLD","icInput","linkIcInput","inheritAttributes","element","attributes","attributeObject","forEach","attr","hasAttribute","value","getAttribute","removeAttribute","debounceEvent","event","wait","original","_original","emit","debounce","bind","func","timer","args","clearTimeout","setTimeout","renderHiddenInput","always","container","name","disabled","undefined","hasShadowDom","inputs","querySelectorAll","inputEls","Array","from","filtered","filter","el","parentElement","input","ownerDocument","createElement","type","classList","add","appendChild","Date","toISOString","renderFileHiddenInput","multiple","accept","hidden","files","onchange","click","removeHiddenInput","remove","shadowRoot","attachShadow","getInputHelperTextID","id","getInputValidationTextID","getInputDescribedByText","inputId","helperText","validationText","trim","getThemeFromContext","themeFromEvent","_a","getRootNode","host","blockColorParent","closest","join","parentTag","tagName","toLowerCase","currentTag","includes","Default","contains","Dark","Light","isMobileOrTablet","navigator","maxTouchPoints","test","userAgent","handleHiddenFormButtonClick","form","button","hiddenFormButton","document","setAttribute","style","display","isEmptyString","length","isPropDefined","prop","getLabelFromValue","options","valueField","labelField","ungroupedOptions","map","option","children","push","matchingValue","find","getFilteredMenuOptions","includeDescriptions","searchString","position","label","description","lowerSearchString","startsWith","getOptionsWithoutGroupTitlesCount","optionsWithoutGroupTitles","deviceSizeMatches","size","window","matchMedia","matches","getCurrentDeviceSize","DEVICE_SIZES","UNDEFINED","getCssProperty","cssVar","getComputedStyle","documentElement","getPropertyValue","getThemeColorBrightness","themeRed","themeGreen","themeBlue","parseInt","getThemeForegroundColor","brightness","getSlot","querySelector","slotHasContent","getSlotContent","slot","getSlotElements","slotContent","firstElementChild","elements","assignedElements","childNodes","getNavItemParentDetails","navType","parent","Number","replace","hasValidationStatus","status","isSlotUsed","slotName","some","child","onComponentPropUndefinedChange","oldValue","newValue","callback","onComponentRequiredPropUndefined","props","component","propName","console","kebabToCamelCase","kebabCase","split","word","index","substring","toUpperCase","checkResizeObserver","callbackFn","ResizeObserver","hex2dec","v","hexToRgba","hex","hexChars","char","repeat","r","slice","g","b","a","rgbaStrToObj","rgbaStr","isRGBA","rgbValues","elementOverflowsX","scrollWidth","clientWidth","hasClassificationBanner","addFormResetListener","addEventListener","removeFormResetListener","removeEventListener","pxToRem","px","base","removeDisabledFalse","isMacDevice","indexOf","convertToRGBA","color","firstChar","capitalize","text","charAt","checkSlotInChildMutations","addedNodes","removedNodes","hasSlot","nodeList","node","isArray","isElInAGGrid"],"sources":["../web-components/dist/collection/utils/types.js","../web-components/dist/collection/utils/constants.js","../web-components/dist/collection/utils/helpers.js"],"sourcesContent":["export var IcInformationStatus;\n(function (IcInformationStatus) {\n IcInformationStatus[\"Warning\"] = \"warning\";\n IcInformationStatus[\"Error\"] = \"error\";\n IcInformationStatus[\"Success\"] = \"success\";\n})(IcInformationStatus || (IcInformationStatus = {}));\nexport var IcThemeForegroundEnum;\n(function (IcThemeForegroundEnum) {\n IcThemeForegroundEnum[\"Default\"] = \"default\";\n IcThemeForegroundEnum[\"Dark\"] = \"dark\";\n IcThemeForegroundEnum[\"Light\"] = \"light\";\n})(IcThemeForegroundEnum || (IcThemeForegroundEnum = {}));\n//# sourceMappingURL=types.js.map\n","import errorIcon from \"../assets/error-icon.svg\";\nimport infoIcon from \"../assets/info-icon.svg\";\nimport neutralIcon from \"../assets/neutral-icon.svg\";\nimport successIcon from \"../assets/success-icon.svg\";\nimport warningIcon from \"../assets/warning-icon.svg\";\n// Global status icons\nexport const VARIANT_ICONS = {\n neutral: {\n icon: neutralIcon,\n ariaLabel: \"Neutral\",\n },\n info: {\n icon: infoIcon,\n ariaLabel: \"For your information\",\n },\n warning: {\n icon: warningIcon,\n ariaLabel: \"Warning\",\n },\n error: {\n icon: errorIcon,\n ariaLabel: \"Error\",\n },\n success: {\n icon: successIcon,\n ariaLabel: \"Success\",\n },\n};\n// Global ARIA attributes\nexport const IC_INHERITED_ARIA = [\n \"aria-atomic\",\n \"aria-autocomplete\",\n \"aria-busy\",\n \"aria-controls\",\n \"aria-current\",\n \"aria-describedby\",\n \"aria-description\",\n \"aria-details\",\n \"aria-disabled\",\n \"aria-dropeffect\",\n \"aria-errormessage\",\n \"aria-expanded\",\n \"aria-flowto\",\n \"aria-grabbed\",\n \"aria-haspopup\",\n \"aria-hidden\",\n \"aria-invalid\",\n \"aria-keyshortcuts\",\n \"aria-label\",\n \"aria-labelledby\",\n \"aria-live\",\n \"aria-owns\",\n \"aria-relevant\",\n \"aria-roledescription\",\n];\nexport const IC_DEVICE_SIZES = {\n XS: 576,\n S: 768,\n M: 992,\n L: 1200,\n XL: 99999,\n};\nexport const IC_BLOCK_COLOR_COMPONENTS = [\n \"ic-hero\",\n \"ic-top-navigation\",\n \"ic-footer\",\n \"ic-side-navigation\",\n \"ic-alert\",\n];\nexport const IC_FIXED_COLOR_COMPONENTS = [\"ic-alert\"];\nexport const IC_BLOCK_COLOR_EXCEPTIONS = {\n \"ic-alert\": [\"ic-link\"],\n};\n/* Range within which the chosen theme colour would not have a sufficient brightness difference with either of the black or white foreground colours\n * The brightness difference must be greater than 125 to provide good colour visibility\n * Calculated by:\n * - Using the brightness formula for both colours: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding 125 to the brightness of the black foreground colour - RGB(11, 12, 12)\n * - Subtracting 125 from the brightness of the white foreground colour - RGB(255, 255, 255)\n */\nexport const BLACK_MIN_COLOR_BRIGHTNESS = 136.701;\nexport const WHITE_MAX_COLOR_BRIGHTNESS = 130;\n//# sourceMappingURL=constants.js.map\n","import { IcThemeForegroundEnum, } from \"../utils/types\";\nimport { IC_BLOCK_COLOR_COMPONENTS, IC_BLOCK_COLOR_EXCEPTIONS, IC_FIXED_COLOR_COMPONENTS, } from \"./constants\";\nconst DARK_MODE_THRESHOLD = 133.3505;\nconst icInput = \"ic-input\";\nconst linkIcInput = \"input.ic-input\";\n/**\n * converts an enum of strings into an array of strings\n */\nexport const stringEnumToArray = (theEnum) => {\n const arr = [];\n Object.values(theEnum).forEach((val) => {\n if (isNaN(Number(val))) {\n const str = val;\n arr.push(str);\n }\n });\n return arr;\n};\n/**\n * Used to inherit global attributes set on the host. Called in componentWillLoad and assigned\n * to a variable that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (element, attributes = []) => {\n const attributeObject = {};\n attributes.forEach((attr) => {\n if (element.hasAttribute(attr)) {\n const value = element.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = value;\n }\n element.removeAttribute(attr);\n }\n });\n return attributeObject;\n};\nexport const debounceEvent = (event, wait) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const original = event._original || event;\n return {\n _original: event,\n emit: debounce(original.emit.bind(original), wait),\n };\n};\nexport const debounce = (func, wait = 0) => {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(func, wait, ...args);\n };\n};\n/**\n * This method is used to add a hidden input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param always Add a hidden input even if the container does not use Shadow\n * @param container The element where the input will be added\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n */\nexport const renderHiddenInput = (always, container, name, value, disabled) => {\n if (name !== undefined && (always || hasShadowDom(container))) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.type = \"hidden\";\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.disabled = disabled;\n input.name = name;\n if (value instanceof Date) {\n input.value = value ? value.toISOString() : null;\n }\n else {\n input.value = value || \"\";\n }\n }\n};\n/**\n * This method is used to add a hidden file input to a host element that contains\n * a Shadow DOM. It does not add the input inside of the Shadow root which\n * allows it to be picked up inside of forms. It should contain the same\n * values as the host element.\n *\n * @param event: The event that is emitted once a file is selected.\n * @param container The element where the input will be added\n * @param multiple If true, multiple files can be selected\n * @param name The name of the input\n * @param value The value of the input\n * @param disabled If true, the input is disabled\n * @param accept A string of the accepted files\n */\nexport const renderFileHiddenInput = (event, container, multiple, name, value, disabled, accept) => {\n if (name !== undefined && hasShadowDom(container)) {\n const inputs = container.querySelectorAll(linkIcInput);\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n let input = filtered[0];\n if (input === null || input === undefined) {\n input = container.ownerDocument.createElement(\"input\");\n input.classList.add(icInput);\n container.appendChild(input);\n }\n input.type = \"file\";\n input.hidden = true;\n input.multiple = multiple;\n input.name = name;\n input.files = value;\n input.disabled = disabled;\n input.accept = accept;\n input.onchange = () => {\n event.emit(input.files);\n };\n input.click();\n }\n};\nexport const removeHiddenInput = (container) => {\n const inputs = container.querySelectorAll(\"input.ic-input\");\n const inputEls = Array.from(inputs);\n const filtered = inputEls.filter((el) => container === el.parentElement);\n const input = filtered[0];\n input === null || input === void 0 ? void 0 : input.remove();\n};\nexport const hasShadowDom = (el) => !!el.shadowRoot && !!el.attachShadow;\nexport const getInputHelperTextID = (id) => id + \"-helper-text\";\nexport const getInputValidationTextID = (id) => id + \"-validation-text\";\nexport const getInputDescribedByText = (inputId, helperText, validationText) => `${helperText ? getInputHelperTextID(inputId) : \"\"} ${validationText ? getInputValidationTextID(inputId) : \"\"}`.trim();\n/**\n * This method helps to understand the context in which a component exists,\n * to assist with choosing appropriate foreground colours to use. For example,\n * this method will help you use the 'white' version of a button if it's within\n * a block colour element using white foreground text.\n *\n * This only works for components/elements passed via <slot> and not if they\n * are part of an IC component.\n *\n * \"\"\n * @returns IcThemeForeground depending on the context\n */\nexport const getThemeFromContext = (el, themeFromEvent = null) => {\n var _a;\n const parentElement = el.parentElement || el.getRootNode().host.parentElement;\n const blockColorParent = parentElement.closest(IC_BLOCK_COLOR_COMPONENTS.join(\",\"));\n // If within a block color component\n if (blockColorParent !== null) {\n const parentTag = blockColorParent.tagName.toLowerCase();\n const currentTag = el.tagName.toLowerCase();\n if ((_a = IC_BLOCK_COLOR_EXCEPTIONS[parentTag]) === null || _a === void 0 ? void 0 : _a.includes(currentTag)) {\n return IcThemeForegroundEnum.Default;\n }\n else if (themeFromEvent !== null &&\n !IC_FIXED_COLOR_COMPONENTS.includes(parentTag)) {\n return themeFromEvent;\n }\n else if (blockColorParent.classList.contains(`${parentTag}-${IcThemeForegroundEnum.Dark}`) ||\n blockColorParent.classList.contains(IcThemeForegroundEnum.Dark)) {\n return IcThemeForegroundEnum.Light;\n }\n return IcThemeForegroundEnum.Dark;\n }\n return IcThemeForegroundEnum.Default;\n};\n/**\n * Checks if the current device is a mobile or tablet device.\n * @returns {boolean} Returns true if the device is a mobile or tablet device, otherwise returns false.\n */\nexport const isMobileOrTablet = () => \"maxTouchPoints\" in navigator && \"userAgent\" in navigator\n ? navigator.maxTouchPoints > 0 &&\n /iPad|iPhone|iPod|Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)\n : false;\n/**\n * Will create a button within the lightDOM which interacts with the parent form.\n * This is required as buttons within the shadowDOM will not invoke a submit or reset\n *\n * @param form - parent form element which contains shadowDom button\n * @param button - shadowDOM button\n */\nexport const handleHiddenFormButtonClick = (form, button) => {\n const hiddenFormButton = document.createElement(\"button\");\n hiddenFormButton.setAttribute(\"type\", button.type);\n hiddenFormButton.style.display = \"none\";\n form.appendChild(hiddenFormButton);\n hiddenFormButton.click();\n hiddenFormButton.remove();\n};\nexport const isEmptyString = (value) => value ? value.trim().length === 0 : true;\n// A helper function that checks if a prop has been defined\nexport const isPropDefined = (prop) => prop !== undefined ? prop : null;\n/**\n * Extracts the label using the value from an object. Requires the object to have a label and value property.\n * @param value - value from object\n * @param options - list of menu items\n * @returns - label corresponding to value\n */\nexport const getLabelFromValue = (value, options, valueField = \"value\", labelField = \"label\") => {\n const ungroupedOptions = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => ungroupedOptions.push(option));\n }\n else {\n ungroupedOptions.push(option);\n }\n });\n const matchingValue = ungroupedOptions.find((option) => option[valueField] === value);\n if (matchingValue !== undefined)\n return matchingValue[labelField];\n }\n return undefined;\n};\n/**\n * Filters the options based on the search string.\n * @param options - array of options\n * @param includeDescriptions - determines whether option descriptions are included when filtering options\n * @param searchString - string used to filter the options\n * @param position - whether the search string matches the start of or anywhere in the options\n * @returns filtered array of options\n */\nexport const getFilteredMenuOptions = (options, includeDescriptions, searchString, position, labelField = \"label\") => options.filter((option) => {\n var _a;\n const label = option[labelField].toLowerCase();\n const description = (_a = option.description) === null || _a === void 0 ? void 0 : _a.toLowerCase();\n const lowerSearchString = searchString.toLowerCase();\n return position === \"anywhere\"\n ? includeDescriptions\n ? label.includes(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.includes(lowerSearchString))\n : label.includes(lowerSearchString)\n : includeDescriptions\n ? label.startsWith(lowerSearchString) ||\n (description === null || description === void 0 ? void 0 : description.startsWith(lowerSearchString))\n : label.startsWith(lowerSearchString);\n});\n/**\n * Gets count of options where only group title \"parent\" options have been removed.\n * Disabled options are included in the count.\n * @param options - array of options\n * @returns number of options not including group titles\n */\nexport const getOptionsWithoutGroupTitlesCount = (options) => {\n const optionsWithoutGroupTitles = [];\n if (options.length > 0 && options.map) {\n options.map((option) => {\n if (option.children) {\n option.children.map((option) => optionsWithoutGroupTitles.push(option));\n }\n else {\n optionsWithoutGroupTitles.push(option);\n }\n });\n }\n return optionsWithoutGroupTitles.length;\n};\nexport const deviceSizeMatches = (size) => window.matchMedia(`(max-width: ${size}px)`).matches;\nexport const getCurrentDeviceSize = () => {\n if (deviceSizeMatches(DEVICE_SIZES.S)) {\n return DEVICE_SIZES.S;\n }\n if (deviceSizeMatches(DEVICE_SIZES.M)) {\n return DEVICE_SIZES.M;\n }\n if (deviceSizeMatches(DEVICE_SIZES.L)) {\n return DEVICE_SIZES.L;\n }\n if (deviceSizeMatches(DEVICE_SIZES.XL)) {\n return DEVICE_SIZES.XL;\n }\n //fallback needed as all of above get initialised to 0 in jest tests\n return DEVICE_SIZES.UNDEFINED;\n};\nexport const getCssProperty = (cssVar) => getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n/**\n * Returns the brightness of the theme colour, calculated by using the theme RGB CSS values by:\n * - Multiplying each RGB value by a set number: https://www.w3.org/TR/AERT/#color-contrast\n * - Adding them together and dividing by 1000\n * This is a similar calculation to its CSS counterpart: \"--ic-theme-text\"\n * @returns number representing the brightness of the theme colour\n */\nexport const getThemeColorBrightness = () => {\n const themeRed = getCssProperty(\"--ic-theme-primary-r\");\n const themeGreen = getCssProperty(\"--ic-theme-primary-g\");\n const themeBlue = getCssProperty(\"--ic-theme-primary-b\");\n return ((parseInt(themeRed) * 299 +\n parseInt(themeGreen) * 587 +\n parseInt(themeBlue) * 114) /\n 1000);\n};\n/**\n * Returns if dark or light foreground colors should be used for color contrast reasons\n * @returns \"dark\" or \"light\"\n * @param brightness - Optional custom brightness value. Defaults to `getThemeColorBrightness`\n */\nexport const getThemeForegroundColor = (brightness = getThemeColorBrightness()) => brightness > DARK_MODE_THRESHOLD\n ? IcThemeForegroundEnum.Dark\n : IcThemeForegroundEnum.Light;\nexport const getSlot = (element, name) => {\n if (element && element.querySelector) {\n return element.querySelector(`[slot=\"${name}\"]`);\n }\n return null;\n};\nexport const slotHasContent = (element, name) => getSlot(element, name) !== null;\nexport const getSlotContent = (element, name) => {\n const slot = getSlot(element, name);\n if (slot) {\n return getSlotElements(slot);\n }\n return null;\n};\nexport const getSlotElements = (slot) => {\n const slotContent = slot.firstElementChild;\n if (slotContent !== null) {\n const elements = slotContent.assignedElements\n ? slotContent.assignedElements()\n : slotContent.childNodes;\n return elements.length ? elements : slot.tagName ? [slot] : null;\n }\n else {\n //check for single element\n return slot === null ? null : [slot];\n }\n};\nexport const getNavItemParentDetails = ({ parentElement, }) => {\n let navType = { navType: \"\", parent: null };\n switch (parentElement.tagName) {\n case \"IC-NAVIGATION-GROUP\":\n navType = getNavItemParentDetails(parentElement);\n break;\n case \"IC-TOP-NAVIGATION\":\n navType = { navType: \"top\", parent: parentElement };\n break;\n case \"IC-SIDE-NAVIGATION\":\n navType = { navType: \"side\", parent: parentElement };\n break;\n case \"IC-PAGE-HEADER\":\n navType = { navType: \"page-header\", parent: null };\n break;\n }\n return navType;\n};\nexport const DEVICE_SIZES = {\n XS: Number(getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")), // 0\n S: Number(getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")), // 576\n M: Number(getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")), // 768\n L: Number(getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")), // 992\n XL: Number(getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")), // 1200\n UNDEFINED: 1200,\n};\nexport const hasValidationStatus = (status, disabled) => !!status && !disabled;\nexport const isSlotUsed = ({ children }, slotName) => Array.from(children).some((child) => child.getAttribute(\"slot\") === slotName);\n// added as a common method to allow detection of gatsby hydration issue, where (camelCase) props are initially undefined & then update\n// with a value. Allows a callback function to be executed when this is the case\nexport const onComponentPropUndefinedChange = (oldValue, newValue, callback) => {\n if (oldValue === undefined && newValue !== oldValue) {\n callback();\n }\n};\nexport const onComponentRequiredPropUndefined = (props, component) => {\n props.forEach(({ prop, propName }) => {\n if (prop === null || prop === undefined) {\n console.error(`No ${propName} specified for ${component} component - prop '${propName}' (web components) / '${kebabToCamelCase(propName)}' (react) required`);\n }\n });\n};\nexport const kebabToCamelCase = (kebabCase) => kebabCase\n .toLowerCase()\n .split(\"-\")\n .map((word, index) => index === 0\n ? word\n : `${word.substring(0, 1).toUpperCase()}${word.substring(1)}`)\n .join(\"\");\nexport const checkResizeObserver = (callbackFn) => {\n if (typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\") {\n callbackFn();\n }\n};\nconst hex2dec = (v) => parseInt(v, 16);\nexport const hexToRgba = (hex) => {\n const hexChars = hex\n .replace(\"#\", \"\")\n .split(\"\")\n .map((char) => char.repeat(2));\n return {\n r: hex2dec(hex.length === 4 ? hexChars[0] : hex.slice(1, 3)),\n g: hex2dec(hex.length === 4 ? hexChars[1] : hex.slice(3, 5)),\n b: hex2dec(hex.length === 4 ? hexChars[2] : hex.slice(5)),\n a: 1,\n };\n};\nexport const rgbaStrToObj = (rgbaStr) => {\n const isRGBA = rgbaStr.slice(3, 4).toLowerCase() === \"a\";\n const rgbValues = rgbaStr\n .substring(isRGBA ? 5 : 4, rgbaStr.length - 1)\n .replace(/ /g, \"\")\n .split(\",\")\n .map(Number);\n return {\n r: rgbValues[0],\n g: rgbValues[1],\n b: rgbValues[2],\n a: isRGBA ? rgbValues[3] : 1,\n };\n};\nexport const elementOverflowsX = ({ scrollWidth, clientWidth, }) => scrollWidth > clientWidth;\nexport const hasClassificationBanner = () => !!document.querySelector(\"ic-classification-banner:not([inline='true'])\");\nexport const addFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.addEventListener(\"reset\", callbackFn);\n};\nexport const removeFormResetListener = (el, callbackFn) => {\n var _a;\n (_a = el.closest(\"FORM\")) === null || _a === void 0 ? void 0 : _a.removeEventListener(\"reset\", callbackFn);\n};\nexport const pxToRem = (px, base = 16) => `${(1 / base) * parseInt(px)}rem`;\nexport const removeDisabledFalse = (disabled, element) => {\n if (!disabled) {\n element.removeAttribute(\"disabled\");\n }\n};\nexport const isMacDevice = () => window.navigator.userAgent.toUpperCase().indexOf(\"MAC\") >= 0;\nexport const isNumeric = (value) => /^-?\\d+$/.test(value);\nexport async function waitForHydration() {\n const elements = document.getElementsByTagName(\"*\");\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].tagName.startsWith(\"IC-\")) {\n if (elements[i].classList.contains(\"hydrated\")) {\n return true;\n }\n }\n else {\n return false;\n }\n }\n return false;\n}\nexport const convertToRGBA = (color) => {\n const firstChar = color === null || color === void 0 ? void 0 : color.slice(0, 1).toLowerCase();\n return firstChar === \"#\"\n ? hexToRgba(color)\n : firstChar === \"r\"\n ? rgbaStrToObj(color)\n : null;\n};\nexport const capitalize = (text) => text.charAt(0).toUpperCase() + text.slice(1);\nexport const checkSlotInChildMutations = (addedNodes, removedNodes, slotName) => {\n const hasSlot = (nodeList) => Array.from(nodeList).some((node) => Array.isArray(slotName)\n ? slotName.some((name) => node.slot === name)\n : node.slot === slotName);\n return hasSlot(addedNodes) || hasSlot(removedNodes);\n};\nexport const isElInAGGrid = (el) => !!el.closest(\".ag-cell\") && !!el.closest(\".ag-root\");\n//# sourceMappingURL=helpers.js.map\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icToggleButtonCss","ToggleButton","constructor","hostRef","this","handleFocus","ev","stopImmediatePropagation","handleClick","loading","disabled","icToggleChecked","emit","checked","accessibleLabel","undefined","fullWidth","iconPlacement","label","monochrome","size","theme","variant","componentWillLoad","removeDisabledFalse","el","parentIconPlacement","parentElement","iconPosition","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","handleHostClick","e","render","h","Host","class","onFocus","toString","onClick","title","isSlotUsed","name","slot","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.css?tag=ic-toggle-button&encapsulation=shadow","../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/* VARIABLES FOR IC-TOGGLE-BUTTON-GROUP */\n:host {\n --toggle-button-border: var(--ic-toggle-button-unselected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-unselected-border-hover);\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-hover\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-pressed\n );\n}\n\n:host(.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text);\n --toggle-button-border-hover: var(--ic-toggle-button-selected-border-hover);\n --toggle-button-text-colour-hover: var(--ic-toggle-button-selected-text);\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed\n );\n --toggle-button-text-colour-active: var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-monochrome) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-monochrome);\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-hover: var(\n --ic-toggle-button-unselected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-unselected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-unselected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-monochrome);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-monochrome);\n --toggle-button-border-hover: var(\n --ic-toggle-button-selected-border-hover-monochrome\n );\n --toggle-button-text-colour-hover: var(\n --ic-toggle-button-selected-text-monochrome\n );\n --toggle-button-border-active: var(\n --ic-toggle-button-selected-border-pressed-monochrome\n );\n --toggle-button-text-colour-active: var(\n --ic-toggle-button-selected-text-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled) {\n --toggle-button-border: var(--ic-toggle-button-unselected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-unselected-text-disabled);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-monochrome) {\n --toggle-button-border: var(\n --ic-toggle-button-unselected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-unselected-text-disabled-monochrome\n );\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) {\n --toggle-button-border: var(--ic-toggle-button-selected-border-disabled);\n --toggle-button-text-colour: var(--ic-toggle-button-selected-text-disabled);\n}\n\n:host(\n .ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome\n ) {\n --toggle-button-border: var(\n --ic-toggle-button-selected-border-disabled-monochrome\n );\n --toggle-button-text-colour: var(\n --ic-toggle-button-selected-text-disabled-monochrome\n );\n}\n\n:host(.expand-toggle-group-child) ::part(button) {\n width: 100%;\n min-height: inherit;\n white-space: inherit;\n height: inherit;\n}\n\n:host ic-button {\n --icon-width: var(--ic-space-lg);\n --icon-height: var(--ic-space-lg);\n}\n\n:host(.expand-toggle-group-child) ic-button {\n min-width: 100%;\n min-height: 100%;\n white-space: normal;\n height: 100%;\n}\n\n:host(.expand-toggle-group-child) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-default),\n var(--ic-border-focus);\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-light) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-dark) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-dark),\n var(--ic-border-focus);\n}\n\n:host(:focus) {\n z-index: 1;\n}\n\n:host ::part(button) {\n border: var(--ic-border-width) solid var(--toggle-button-border);\n color: var(--toggle-button-text-colour);\n}\n\n:host ::part(button):hover {\n border: var(--ic-border-width) solid var(--toggle-button-border-hover);\n color: var(--toggle-button-text-colour-hover);\n}\n\n:host ::part(button):active {\n border: var(--ic-border-width) solid var(--toggle-button-border-active);\n color: var(--toggle-button-text-colour-active);\n}\n\n:host(.ic-toggle-button-disabled) ::part(button) {\n border: var(--ic-space-1px) dashed var(--toggle-button-border);\n color: var(--toggle-button-text-colour);\n}\n\n:host(.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background);\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-white),\n var(--ic-border-focus);\n}\n\n:host ::part(button):hover {\n background-color: var(--ic-toggle-button-unselected-background-hover);\n}\n\n:host ::part(button):active {\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--ic-toggle-button-selected-background-hover);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-checked) ::part(button):active {\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):hover {\n background-color: var(\n --ic-toggle-button-unselected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome) ::part(button):active {\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-toggle-button-selected-background-monochrome);\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):hover {\n background-color: var(\n --ic-toggle-button-selected-background-hover-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):active,\n:host(\n .ic-toggle-button-icon.ic-toggle-button-monochrome.ic-toggle-button-checked\n )\n ::part(button):active {\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-monochrome.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs)\n var(--ic-toggle-button-selected-text),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button) {\n background-color: transparent;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(\n .ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome\n )\n ::part(button),\n:host(\n .ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked.ic-toggle-button-monochrome\n )\n ::part(button)::before {\n background-image: radial-gradient(\n var(--ic-toggle-button-selected-background-disabled-monochrome) 95%,\n white 20%\n );\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-icon) ::part(button) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n width: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-toggle-button-icon) ::part(button):active {\n background-color: var(--ic-action-default-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-dark) ::part(button):active {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-light) ::part(button):active {\n background-color: var(--ic-action-light-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-small) ::part(button) {\n height: var(--ic-space-xl);\n width: var(--ic-space-xl);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-large) ::part(button) {\n height: var(--ic-space-xxl);\n width: var(--ic-space-xxl);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed\n );\n background-color: var(--ic-toggle-button-selected-background-pressed);\n}\n\n:host(.ic-toggle-button-loading) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed\n );\n background-color: var(--ic-toggle-button-unselected-background-pressed);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading)\n ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-loading-bar);\n}\n\n:host(.ic-toggle-button-loading) ::part(ic-loading-container) {\n --inner-color: var(--ic-toggle-button-selected-loading-bar);\n}\n\n:host(\n .ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-monochrome\n )\n ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n background-color: var(\n --ic-toggle-button-selected-background-pressed-monochrome\n );\n}\n\n:host(.ic-toggle-button-loading.ic-toggle-button-monochrome) ::part(button) {\n --loading-button-background: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n background-color: var(\n --ic-toggle-button-unselected-background-pressed-monochrome\n );\n}\n\n@media (forced-colors: active) {\n :host(.ic-toggle-button-checked) ::part(button),\n :host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-disabled) ::part(button) {\n background-color: GrayText;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, } from \"../../utils/helpers\";\n/**\n * @slot icon - Content will be displayed alongside the toggle button label.\n * @slot badge - Badge component overlaying the top right of the toggle button.\n */\nexport class ToggleButton {\n constructor() {\n this.handleFocus = (ev) => {\n ev.stopImmediatePropagation();\n };\n this.handleClick = () => {\n !this.loading &&\n !this.disabled &&\n this.icToggleChecked.emit({\n checked: this.checked,\n });\n };\n this.accessibleLabel = undefined;\n this.checked = false;\n this.disabled = false;\n this.fullWidth = false;\n this.iconPlacement = undefined;\n this.label = undefined;\n this.loading = false;\n this.monochrome = false;\n this.size = \"medium\";\n this.theme = \"inherit\";\n this.variant = \"default\";\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n const parentIconPlacement = this.el.parentElement.iconPlacement;\n this.iconPosition = this.iconPlacement || parentIconPlacement || \"left\";\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([\n {\n prop: this.variant === \"icon\" ? this.accessibleLabel : this.label,\n propName: this.variant === \"icon\" ? \"accessible-label\" : \"label\",\n },\n ], \"Toggle button\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n else if (!this.loading) {\n this.checked = !this.checked;\n }\n }\n render() {\n return (h(Host, { class: {\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n [\"ic-toggle-button-disabled\"]: this.disabled,\n [\"ic-toggle-button-checked\"]: this.checked,\n [\"ic-toggle-button-icon\"]: this.variant === \"icon\",\n [`ic-toggle-button-${this.size}`]: true,\n [\"ic-toggle-button-loading\"]: this.loading,\n [\"ic-toggle-button-monochrome\"]: this.monochrome,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }, onFocus: this.handleFocus }, h(\"ic-button\", { \"aria-pressed\": this.checked.toString(), variant: this.variant === \"icon\" ? \"icon\" : \"secondary\", onClick: this.handleClick, title: this.accessibleLabel, \"aria-label\": `${this.accessibleLabel ? this.accessibleLabel : this.label}, ${this.checked ? \"ticked\" : \"unticked\"}`, disabled: this.disabled, size: this.size, fullWidth: this.fullWidth, loading: this.loading, \"aria-disabled\": `${this.disabled}` }, this.variant !== \"icon\" && this.label, h(\"slot\", null), isSlotUsed(this.el, \"icon\") && (h(\"slot\", { name: \"icon\", slot: `${this.iconPosition}-icon` })), isSlotUsed(this.el, \"badge\") && (h(\"slot\", { name: \"badge\", slot: \"badge\" })))));\n }\n static get is() { return \"ic-toggle-button\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get properties() {\n return {\n \"accessibleLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons.\"\n },\n \"attribute\": \"accessible-label\",\n \"reflect\": false\n },\n \"checked\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in a checked state.\"\n },\n \"attribute\": \"checked\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in disabled state.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will fill the width of the container.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"iconPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"resolved\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placement of the icon in relation to the toggle button label.\"\n },\n \"attribute\": \"icon-placement\",\n \"reflect\": false\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label to display in the toggle button. This is required for the default variant of toggle buttons.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in loading state.\"\n },\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"monochrome\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will display as black in the light theme, and white in dark theme.\"\n },\n \"attribute\": \"monochrome\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the toggle button to be displayed.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"resolved\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the toggle button.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"icToggleChecked\",\n \"name\": \"icToggleChecked\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the user clicks a toggle button.\"\n },\n \"complexType\": {\n \"original\": \"{\\n checked: boolean;\\n }\",\n \"resolved\": \"{ checked: boolean; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toggle-button.js.map\n"],"mappings":"6GAAA,MAAMA,EAAoB,4iY,MCMbC,EAAY,MACrB,WAAAC,CAAAC,G,2DACIC,KAAKC,YAAeC,IAChBA,EAAGC,0BAA0B,EAEjCH,KAAKI,YAAc,MACdJ,KAAKK,UACDL,KAAKM,UACNN,KAAKO,gBAAgBC,KAAK,CACtBC,QAAST,KAAKS,SAChB,EAEVT,KAAKU,gBAAkBC,UACvBX,KAAKS,QAAU,MACfT,KAAKM,SAAW,MAChBN,KAAKY,UAAY,MACjBZ,KAAKa,cAAgBF,UACrBX,KAAKc,MAAQH,UACbX,KAAKK,QAAU,MACfL,KAAKe,WAAa,MAClBf,KAAKgB,KAAO,SACZhB,KAAKiB,MAAQ,UACbjB,KAAKkB,QAAU,S,CAEnB,iBAAAC,GACIC,EAAoBpB,KAAKM,SAAUN,KAAKqB,IACxC,MAAMC,EAAsBtB,KAAKqB,GAAGE,cAAcV,cAClDb,KAAKwB,aAAexB,KAAKa,eAAiBS,GAAuB,M,CAErE,gBAAAG,GACIC,EAAiC,CAC7B,CACIC,KAAM3B,KAAKkB,UAAY,OAASlB,KAAKU,gBAAkBV,KAAKc,MAC5Dc,SAAU5B,KAAKkB,UAAY,OAAS,mBAAqB,UAE9D,gB,CAEP,eAAAW,CAAgBC,GACZ,GAAI9B,KAAKM,SAAU,CACfwB,EAAE3B,0B,MAED,IAAKH,KAAKK,QAAS,CACpBL,KAAKS,SAAWT,KAAKS,O,EAG7B,MAAAsB,GACI,OAAQC,EAAEC,EAAM,CAAEC,MAAO,CACjB,CAAC,YAAYlC,KAAKiB,SAAUjB,KAAKiB,QAAU,UAC3C,CAAC,6BAA8BjB,KAAKM,SACpC,CAAC,4BAA6BN,KAAKS,QACnC,CAAC,yBAA0BT,KAAKkB,UAAY,OAC5C,CAAC,oBAAoBlB,KAAKgB,QAAS,KACnC,CAAC,4BAA6BhB,KAAKK,QACnC,CAAC,+BAAgCL,KAAKe,WACtC,CAAC,YAAYf,KAAKiB,SAAUjB,KAAKiB,QAAU,WAC5CkB,QAASnC,KAAKC,aAAe+B,EAAE,YAAa,CAAE,eAAgBhC,KAAKS,QAAQ2B,WAAYlB,QAASlB,KAAKkB,UAAY,OAAS,OAAS,YAAamB,QAASrC,KAAKI,YAAakC,MAAOtC,KAAKU,gBAAiB,aAAc,GAAGV,KAAKU,gBAAkBV,KAAKU,gBAAkBV,KAAKc,UAAUd,KAAKS,QAAU,SAAW,aAAcH,SAAUN,KAAKM,SAAUU,KAAMhB,KAAKgB,KAAMJ,UAAWZ,KAAKY,UAAWP,QAASL,KAAKK,QAAS,gBAAiB,GAAGL,KAAKM,YAAcN,KAAKkB,UAAY,QAAUlB,KAAKc,MAAOkB,EAAE,OAAQ,MAAOO,EAAWvC,KAAKqB,GAAI,SAAYW,EAAE,OAAQ,CAAEQ,KAAM,OAAQC,KAAM,GAAGzC,KAAKwB,sBAAyBe,EAAWvC,KAAKqB,GAAI,UAAaW,EAAE,OAAQ,CAAEQ,KAAM,QAASC,KAAM,W,CAIvqB,yBAAWC,GAAmB,OAAO,IAAK,C"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icNavigationButtonCss","MUTABLE_ATTRIBUTES","IC_INHERITED_ARIA","NavigationButton","constructor","hostRef","this","inheritedAttributes","hostMutationObserver","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","includes","el","getAttribute","forceUpdate","initialAppearance","getThemeForegroundColor","mode","download","href","undefined","hreflang","label","referrerpolicy","rel","target","theme","componentWillLoad","inheritAttributes","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","MutationObserver","observe","attributes","componentWillRender","iconEl","querySelector","setAttribute","disconnectedCallback","_a","disconnect","navBarMenuOpenHandler","navBarMenuCloseHandler","themeChangeHandler","ev","detail","setFocus","buttonEl","focus","render","className","variant","appearance","size","fullWidth","disableTooltip","IcThemeForegroundEnum","Default","buttonProps","h","Host","class","Object","assign","ref","monochrome","slot","name","isSlotUsed","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-navigation-button/ic-navigation-button.css?tag=ic-navigation-button&encapsulation=shadow","../web-components/dist/collection/components/ic-navigation-button/ic-navigation-button.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n:host {\n display: block;\n margin-right: var(--ic-space-xs);\n list-style: none;\n}\n\n:host(.in-side-menu) {\n margin-right: 0;\n}\n\n:host::part(button) {\n height: 100%;\n min-height: 2.5rem;\n}\n\n:host(.in-side-menu) ::part(button) {\n color: var(--ic-top-navigation-icon-active);\n}\n\n:host(.in-side-menu) ::part(button):hover {\n color: var(--ic-top-navigation-icon-hover);\n background-color: var(--ic-top-navigation-icon-hover-background);\n}\n\n:host(.in-side-menu) ::part(button):active {\n color: var(--ic-top-navigation-icon-pressed);\n background-color: var(--ic-top-navigation-icon-pressed-background);\n}\n","import { Host, h, forceUpdate, } from \"@stencil/core\";\nimport { getThemeForegroundColor, inheritAttributes, onComponentRequiredPropUndefined, isSlotUsed, } from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcThemeForegroundEnum, } from \"../../utils/types\";\nconst MUTABLE_ATTRIBUTES = [...IC_INHERITED_ARIA, \"title\"];\n/**\n * @slot icon - Content will be placed to the left of the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n */\nexport class NavigationButton {\n constructor() {\n this.inheritedAttributes = {};\n this.hostMutationObserver = null;\n // triggered when attributes of host element change\n this.hostMutationCallback = (mutationList) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (MUTABLE_ATTRIBUTES.includes(attributeName)) {\n this.inheritedAttributes[attributeName] =\n this.el.getAttribute(attributeName);\n forceComponentUpdate = true;\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n this.initialAppearance = getThemeForegroundColor();\n this.mode = \"navbar\";\n this.download = false;\n this.href = undefined;\n this.hreflang = undefined;\n this.label = undefined;\n this.referrerpolicy = undefined;\n this.rel = undefined;\n this.target = undefined;\n this.theme = \"inherit\";\n }\n componentWillLoad() {\n this.inheritedAttributes = inheritAttributes(this.el, MUTABLE_ATTRIBUTES);\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Navigation Button\");\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n componentWillRender() {\n const iconEl = this.el.querySelector(`[slot=\"icon\"]`);\n iconEl !== null && iconEl.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n disconnectedCallback() {\n var _a;\n (_a = this.hostMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n navBarMenuOpenHandler() {\n this.mode = \"menu\";\n }\n navBarMenuCloseHandler() {\n this.mode = \"navbar\";\n }\n themeChangeHandler(ev) {\n const theme = ev.detail;\n this.initialAppearance = theme.mode;\n }\n /**\n * Sets focus on the native `button`.\n */\n async setFocus() {\n if (this.buttonEl) {\n this.buttonEl.focus();\n }\n }\n render() {\n const { href, target, rel, download, referrerpolicy } = this;\n let label = \"\";\n let className = \"\";\n let variant = \"icon\";\n let appearance = this.initialAppearance;\n let size = \"large\";\n let fullWidth = false;\n let disableTooltip = false;\n if (this.mode === \"menu\") {\n label = this.label;\n variant = \"tertiary\";\n appearance = IcThemeForegroundEnum.Default;\n size = \"medium\";\n fullWidth = true;\n className = \"popout-menu-button\";\n disableTooltip = true;\n }\n const buttonProps = {\n variant,\n appearance,\n size,\n href,\n target,\n rel,\n download,\n referrerpolicy,\n fullWidth,\n disableTooltip,\n };\n return (h(Host, { class: {\n [\"in-side-menu\"]: this.mode === \"menu\",\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n } }, h(\"ic-button\", Object.assign({ class: className, \"aria-label\": variant == \"icon\" ? this.label : null, ref: (el) => (this.buttonEl = el) }, buttonProps, this.inheritedAttributes, { monochrome: this.mode !== \"menu\", theme: getThemeForegroundColor() == \"light\" ? \"light\" : \"dark\" }), label, h(\"slot\", { slot: \"left-icon\", name: \"icon\" }), isSlotUsed(this.el, \"badge\") && variant === \"icon\" && (h(\"slot\", { name: \"badge\" })))));\n }\n static get is() { return \"ic-navigation-button\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-navigation-button.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-navigation-button.css\"]\n };\n }\n static get properties() {\n return {\n \"download\": {\n \"type\": \"any\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string | boolean\",\n \"resolved\": \"boolean | string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the user can save the linked URL instead of navigating to it.\"\n },\n \"attribute\": \"download\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"href\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The URL that the link points to. This will render the button as an \\\"a\\\" tag.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false\n },\n \"hreflang\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The human language of the linked URL.\"\n },\n \"attribute\": \"hreflang\",\n \"reflect\": false\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label info to display.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"referrerpolicy\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"ReferrerPolicy\",\n \"resolved\": \"\\\"\\\" | \\\"no-referrer\\\" | \\\"no-referrer-when-downgrade\\\" | \\\"origin\\\" | \\\"origin-when-cross-origin\\\" | \\\"same-origin\\\" | \\\"strict-origin\\\" | \\\"strict-origin-when-cross-origin\\\" | \\\"unsafe-url\\\"\",\n \"references\": {\n \"ReferrerPolicy\": {\n \"location\": \"global\",\n \"id\": \"global::ReferrerPolicy\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"How much of the referrer to send when following the link.\"\n },\n \"attribute\": \"referrerpolicy\",\n \"reflect\": false\n },\n \"rel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The relationship of the linked URL as space-separated link types.\"\n },\n \"attribute\": \"rel\",\n \"reflect\": false\n },\n \"target\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\"\n },\n \"attribute\": \"target\",\n \"reflect\": false\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"initialAppearance\": {},\n \"mode\": {}\n };\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the native `button`.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"icNavigationMenuOpened\",\n \"method\": \"navBarMenuOpenHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"icNavigationMenuClosed\",\n \"method\": \"navBarMenuCloseHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"themeChange\",\n \"method\": \"themeChangeHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-navigation-button.js.map\n"],"mappings":"uIAAA,MAAMA,EAAwB,03FCI9B,MAAMC,EAAqB,IAAIC,EAAmB,S,MAKrCC,EAAgB,MACzB,WAAAC,CAAAC,G,UACIC,KAAKC,oBAAsB,GAC3BD,KAAKE,qBAAuB,KAE5BF,KAAKG,qBAAwBC,IACzB,IAAIC,EAAuB,MAC3BD,EAAaE,SAAQ,EAAGC,oBACpB,GAAIZ,EAAmBa,SAASD,GAAgB,CAC5CP,KAAKC,oBAAoBM,GACrBP,KAAKS,GAAGC,aAAaH,GACzBF,EAAuB,I,KAG/B,GAAIA,EAAsB,CACtBM,EAAYX,K,GAGpBA,KAAKY,kBAAoBC,IACzBb,KAAKc,KAAO,SACZd,KAAKe,SAAW,MAChBf,KAAKgB,KAAOC,UACZjB,KAAKkB,SAAWD,UAChBjB,KAAKmB,MAAQF,UACbjB,KAAKoB,eAAiBH,UACtBjB,KAAKqB,IAAMJ,UACXjB,KAAKsB,OAASL,UACdjB,KAAKuB,MAAQ,S,CAEjB,iBAAAC,GACIxB,KAAKC,oBAAsBwB,EAAkBzB,KAAKS,GAAId,E,CAE1D,gBAAA+B,GACIC,EAAiC,CAAC,CAAEC,KAAM5B,KAAKmB,MAAOU,SAAU,UAAY,qBAC5E7B,KAAKE,qBAAuB,IAAI4B,iBAAiB9B,KAAKG,sBACtDH,KAAKE,qBAAqB6B,QAAQ/B,KAAKS,GAAI,CACvCuB,WAAY,M,CAGpB,mBAAAC,GACI,MAAMC,EAASlC,KAAKS,GAAG0B,cAAc,iBACrCD,IAAW,MAAQA,EAAOE,aAAa,UAAW,Y,CAEtD,oBAAAC,GACI,IAAIC,GACHA,EAAKtC,KAAKE,wBAA0B,MAAQoC,SAAY,OAAS,EAAIA,EAAGC,Y,CAE7E,qBAAAC,GACIxC,KAAKc,KAAO,M,CAEhB,sBAAA2B,GACIzC,KAAKc,KAAO,Q,CAEhB,kBAAA4B,CAAmBC,GACf,MAAMpB,EAAQoB,EAAGC,OACjB5C,KAAKY,kBAAoBW,EAAMT,I,CAKnC,cAAM+B,GACF,GAAI7C,KAAK8C,SAAU,CACf9C,KAAK8C,SAASC,O,EAGtB,MAAAC,GACI,MAAMhC,KAAEA,EAAIM,OAAEA,EAAMD,IAAEA,EAAGN,SAAEA,EAAQK,eAAEA,GAAmBpB,KACxD,IAAImB,EAAQ,GACZ,IAAI8B,EAAY,GAChB,IAAIC,EAAU,OACd,IAAIC,EAAanD,KAAKY,kBACtB,IAAIwC,EAAO,QACX,IAAIC,EAAY,MAChB,IAAIC,EAAiB,MACrB,GAAItD,KAAKc,OAAS,OAAQ,CACtBK,EAAQnB,KAAKmB,MACb+B,EAAU,WACVC,EAAaI,EAAsBC,QACnCJ,EAAO,SACPC,EAAY,KACZJ,EAAY,qBACZK,EAAiB,I,CAErB,MAAMG,EAAc,CAChBP,UACAC,aACAC,OACApC,OACAM,SACAD,MACAN,WACAK,iBACAiC,YACAC,kBAEJ,OAAQI,EAAEC,EAAM,CAAEC,MAAO,CACjB,CAAC,gBAAiB5D,KAAKc,OAAS,OAChC,CAAC,YAAYd,KAAKuB,SAAUvB,KAAKuB,QAAU,YAC1CmC,EAAE,YAAaG,OAAOC,OAAO,CAAEF,MAAOX,EAAW,aAAcC,GAAW,OAASlD,KAAKmB,MAAQ,KAAM4C,IAAMtD,GAAQT,KAAK8C,SAAWrC,GAAOgD,EAAazD,KAAKC,oBAAqB,CAAE+D,WAAYhE,KAAKc,OAAS,OAAQS,MAAOV,KAA6B,QAAU,QAAU,SAAWM,EAAOuC,EAAE,OAAQ,CAAEO,KAAM,YAAaC,KAAM,SAAWC,EAAWnE,KAAKS,GAAI,UAAYyC,IAAY,QAAWQ,EAAE,OAAQ,CAAEQ,KAAM,W,CAIta,yBAAWE,GAAmB,OAAO,IAAK,C"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icSearchBarCss","inputIds","SearchBar","constructor","hostRef","this","assistiveHintEl","hasTimedOut","inputId","menuCloseFromMenuChangeEvent","menuId","preLoad","preventSubmit","prevNoOption","retryButtonClick","truncateValue","handleClear","ev","keyboardEvent","mouseEvent","type","code","value","inputEl","loading","clearTimeout","timeoutTimer","filteredOptions","options","el","setFocus","icClear","emit","preventDefault","onInput","target","noOptions","labelField","emptyOptionListText","valueField","length","setMenuChange","disableAutoFiltering","rawFilteredOptions","getFilteredMenuOptions","showClearButton","handleShowClearButton","debounceAriaLiveUpdate","onInputBlur","nextFocus","relatedTarget","icSearchBarBlur","onInputFocus","icSearchBarFocus","handleClearBlur","icClearBlur","clearButtonFocused","handleSubmitSearchBlur","icSubmitSearchBlur","searchSubmitFocused","handleMouseDown","handleSubmitSearchFocus","handleSubmitSearch","highlightedValue","undefined","icSubmitSearch","form","closest","searchSubmitButton","handleHiddenFormButtonClick","handleSubmitSearchKeyDown","key","handleRetry","retryViaKeyPress","detail","keyPressed","icRetryLoad","triggerLoading","loadingOption","loadingLabel","timeout","window","setTimeout","loadingErrorLabel","timedOut","handleOptionSelect","label","icOptionSelect","handleMenuOptionHighlight","_a","optionValue","optionId","replace","ariaActiveDescendant","handleMenuChange","open","handleMenuCloseFromMenuChange","focusInput","icMenuChange","handleHostFocus","handleTruncateValue","handleHostBlur","menu","visible","handleFocusClearButton","fromEvent","truncate","renderAssistiveHintEl","_b","input","shadowRoot","querySelector","Object","keys","hasOptionsOrFilterDisabled","document","createElement","innerText","assistiveHintText","id","style","display","after","updateSearchResultAriaLive","searchResultsStatusEl","charactersUntilSuggestion","hadNoOptions","searchMode","isSubmitDisabled","valueNotSet","valueLengthLess","disabled","highlightFirstOptionAfterNoResults","handleSetFirstOption","prevNoOptionsList","find","filteredOption","autocapitalize","autocomplete","autocorrect","autofocus","debounce","focusOnLoad","fullWidth","helperText","hideLabel","name","placeholder","readonly","required","size","spellcheck","theme","loadingHandler","newValue","filteredOptionsHandler","newOptions","some","opt","watchOptionsHandler","watchValueHandler","getLabelFromValue","disconnectedCallback","remove","componentWillLoad","removeDisabledFalse","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","anchorEl","componentWillRender","handleKeyDown","keyEv","event","handleKeyboardOpen","handleKeyUp","debounceAriaLive","render","disabledMode","describedBy","getInputDescribedByText","trim","describedById","hasSuggestedSearch","menuOpen","menuRendered","labelValue","renderHiddenInput","h","Host","class","onFocus","onBlur","ref","ariaExpanded","role","autoFocus","inputmode","slot","innerHTML","clearIcon","onClick","onMouseDown","onKeyDown","variant","searchIcon","fullwidth","activationType","autoFocusOnSelected","inputLabel","onMenuOptionSelect","onMenuStateChange","onMenuOptionId","onRetryButtonClicked","parentEl","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-search-bar/ic-search-bar.css?tag=ic-search-bar&encapsulation=shadow","../web-components/dist/collection/components/ic-search-bar/ic-search-bar.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/**\n * @prop --ic-z-index-menu: z-index of search bar menu\n */\n\n:host(.ic-search-bar-search) {\n --divider-height: 1.5rem;\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n --border-color: var(--ic-search-bar-outline);\n --input-bg-color: var(--ic-search-bar-background);\n --border-color-disabled: var(--ic-search-bar-outline-disabled);\n --text-field-placeholder-color: var(--ic-search-bar-placeholder-text);\n --text-field-disabled-text-color: var(--ic-search-bar-disabled-text);\n --text-field-text-color: var(--ic-search-bar-filled-text);\n --menu-item-text-color: var(--ic-search-bar-dropdown-option-text);\n --menu-item-desc-text-color: var(--ic-search-bar-dropdown-option-description);\n --menu-bg-color: var(--ic-search-bar-dropdown-background);\n --menu-border-color: var(--ic-search-bar-dropdown-outline);\n --text-field-typing-cursor: var(--ic-search-bar-filled-text-cursor);\n}\n\n:host(.ic-search-bar-search:hover) {\n --border-color: var(--ic-search-bar-outline-hover);\n}\n\n:host(.ic-search-bar-search:active) {\n --border-color: var(--ic-search-bar-outline-pressed);\n}\n\n:host(.ic-search-bar-search.ic-search-bar-small) {\n --divider-height: 1rem;\n}\n\n:host(.ic-search-bar-full-width) {\n width: 100%;\n}\n\n:host(.ic-search-bar-search) .ic-button-disabled:hover {\n border-color: var(--ic-architectural-200);\n}\n\n:host(.ic-search-bar-search.ic-search-bar-disabled) .ic-button-disabled svg {\n color: var(--ic-architectural-200);\n}\n\n:host(.ic-search-bar-search) .ic-button-disabled svg {\n color: var(--ic-architectural-400);\n}\n\n/* CLEAR */\n\n.clear-button-container {\n align-items: center;\n margin-right: var(--ic-space-1px);\n display: none;\n visibility: hidden;\n}\n\n.clear-button {\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.clear-button:active {\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-unfocused * {\n fill: var(--ic-search-bar-clear-button);\n}\n\n.clear-button:focus,\n.clear-button:active * {\n fill: white;\n}\n\n.clear-button-visible {\n visibility: visible;\n display: flex;\n}\n\n.search-submit-button-container {\n display: flex;\n align-items: center;\n}\n\n.search-submit-button-unfocused * {\n fill: var(--ic-search-bar-filled-icon);\n}\n\n.search-submit-button-disabled * {\n fill: var(--ic-search-bar-icon-disabled);\n}\n\n.search-submit-button-disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.search-submit-button:focus,\n.search-submit-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: var(--ic-space-xxs);\n}\n\n.search-submit-button:focus,\n.search-submit-button:active * {\n fill: white;\n}\n\n.divider {\n width: var(--ic-border-width);\n background-color: var(--ic-search-bar-dropdown-divider);\n height: var(--divider-height);\n}\n\n.menu-container {\n width: var(--input-width, 20rem);\n position: relative;\n top: var(--ic-space-xxxs);\n}\n\n.menu-container.fullwidth {\n width: 100%;\n}\n\n.no-results {\n cursor: not-allowed;\n}\n\n.search-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n margin-bottom: calc(-1 * var(--ic-space-1px));\n margin-right: calc(-1 * 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@media (forced-colors: active) {\n .search-submit-button-unfocused * {\n fill: canvastext;\n }\n\n .search-submit-button-disabled * {\n fill: GrayText;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { getInputDescribedByText, renderHiddenInput, handleHiddenFormButtonClick, getLabelFromValue, onComponentRequiredPropUndefined, getFilteredMenuOptions, removeDisabledFalse, } from \"../../utils/helpers\";\nimport clearIcon from \"../../assets/clear-icon.svg\";\nimport searchIcon from \"../../assets/search-icon.svg\";\nlet inputIds = 0;\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class SearchBar {\n constructor() {\n this.assistiveHintEl = null;\n this.hasTimedOut = false;\n this.inputId = `ic-search-bar-input-${inputIds++}`;\n this.menuCloseFromMenuChangeEvent = false;\n this.menuId = `${this.inputId}-menu`;\n this.preLoad = true;\n this.preventSubmit = false;\n this.prevNoOption = false;\n this.retryButtonClick = false;\n this.truncateValue = false;\n this.handleClear = (ev) => {\n const keyboardEvent = ev;\n const mouseEvent = ev;\n if (mouseEvent.type === \"click\" ||\n keyboardEvent.code === \"Enter\" ||\n keyboardEvent.code === \"Space\") {\n this.value = \"\";\n this.inputEl.value = \"\";\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n this.filteredOptions = this.options;\n this.el.setFocus();\n this.icClear.emit();\n ev.preventDefault();\n this.preventSubmit = true;\n }\n };\n this.onInput = (ev) => {\n this.value = ev.target.value;\n const noOptions = [\n { [this.labelField]: this.emptyOptionListText, [this.valueField]: \"\" },\n ];\n if (this.options.length > 0) {\n this.setMenuChange(true);\n this.preLoad = false;\n if (this.disableAutoFiltering === false) {\n const rawFilteredOptions = getFilteredMenuOptions(this.options, false, this.value, \"anywhere\", this.labelField);\n this.filteredOptions =\n rawFilteredOptions.length > 0 ? rawFilteredOptions : noOptions;\n }\n }\n if (!this.showClearButton) {\n this.handleShowClearButton(true);\n }\n this.debounceAriaLiveUpdate();\n };\n this.onInputBlur = (ev) => {\n const value = ev.target.value;\n const nextFocus = ev.relatedTarget;\n this.icSearchBarBlur.emit({ value: value, relatedTarget: nextFocus });\n };\n this.onInputFocus = (ev) => {\n const value = ev.target.value;\n this.icSearchBarFocus.emit({ value: value });\n this.handleShowClearButton(true);\n };\n this.handleClearBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n this.icClearBlur.emit({ relatedTarget: nextFocus });\n this.clearButtonFocused = false;\n };\n this.handleSubmitSearchBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n this.icSubmitSearchBlur.emit({ relatedTarget: nextFocus });\n this.searchSubmitFocused = false;\n };\n this.handleMouseDown = (ev) => {\n ev.preventDefault();\n };\n this.handleSubmitSearchFocus = () => {\n this.searchSubmitFocused = true;\n };\n this.handleSubmitSearch = () => {\n this.highlightedValue && (this.value = this.highlightedValue);\n this.highlightedValue = undefined;\n this.icSubmitSearch.emit({ value: this.value });\n const form = this.el.closest(\"FORM\");\n if (this.searchSubmitButton && !!form && !this.preventSubmit) {\n handleHiddenFormButtonClick(form, this.searchSubmitButton);\n }\n };\n this.handleSubmitSearchKeyDown = (ev) => {\n if (ev.key === \" \") {\n ev.preventDefault();\n this.handleSubmitSearch();\n }\n };\n this.handleRetry = (ev) => {\n this.retryViaKeyPress = ev.detail.keyPressed === \"Enter\";\n this.icRetryLoad.emit({ value: ev.detail.value });\n this.triggerLoading();\n this.retryButtonClick = true;\n };\n this.triggerLoading = () => {\n const loadingOption = [\n {\n [this.labelField]: this.loadingLabel,\n [this.valueField]: \"\",\n loading: true,\n },\n ];\n if (this.filteredOptions !== loadingOption)\n this.filteredOptions = loadingOption;\n if (this.timeout) {\n this.timeoutTimer = window.setTimeout(() => {\n this.filteredOptions = [\n {\n [this.labelField]: this.loadingErrorLabel,\n [this.valueField]: \"\",\n timedOut: true,\n },\n ];\n }, this.timeout);\n }\n };\n this.handleOptionSelect = (ev) => {\n if (ev.detail.label === this.emptyOptionListText) {\n this.el.setFocus();\n return;\n }\n this.value = ev.detail.value;\n this.icOptionSelect.emit({ value: this.value });\n };\n this.handleMenuOptionHighlight = (ev) => {\n var _a;\n const optionValue = (_a = ev.detail.optionId) === null || _a === void 0 ? void 0 : _a.replace(`${this.menuId}-`, \"\");\n optionValue && (this.highlightedValue = optionValue);\n if (ev.detail.optionId) {\n this.ariaActiveDescendant = ev.detail.optionId;\n }\n else {\n this.ariaActiveDescendant = undefined;\n }\n };\n this.handleMenuChange = (ev) => {\n this.setMenuChange(ev.detail.open);\n if (!ev.detail.open) {\n this.handleMenuCloseFromMenuChange(true);\n if (ev.detail.focusInput === undefined || ev.detail.focusInput) {\n this.el.setFocus();\n }\n }\n };\n this.setMenuChange = (open) => {\n if (this.open !== open) {\n this.open = open;\n this.icMenuChange.emit({ open });\n }\n };\n this.handleHostFocus = () => {\n if (this.options && this.value && !this.menuCloseFromMenuChangeEvent) {\n this.setMenuChange(true);\n }\n this.handleTruncateValue(false);\n this.icSearchBarFocus.emit();\n };\n this.handleHostBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n if (this.open &&\n this.options &&\n nextFocus !== this.menu &&\n !this.retryViaKeyPress &&\n !this.retryButtonClick) {\n this.setMenuChange(false);\n }\n if (this.retryButtonClick || this.retryViaKeyPress) {\n this.inputEl.setFocus();\n }\n this.handleShowClearButton(false);\n this.handleMenuCloseFromMenuChange(false);\n this.handleTruncateValue(true);\n this.icSearchBarBlur.emit({ relatedTarget: nextFocus, value: this.value });\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n };\n this.handleShowClearButton = (visible) => {\n this.showClearButton = visible;\n };\n this.handleFocusClearButton = () => {\n this.clearButtonFocused = true;\n };\n this.handleMenuCloseFromMenuChange = (fromEvent) => {\n this.menuCloseFromMenuChangeEvent = fromEvent;\n };\n this.handleTruncateValue = (truncate) => {\n this.truncateValue = truncate;\n };\n this.renderAssistiveHintEl = () => {\n var _a, _b;\n const input = (_b = (_a = this.el.shadowRoot\n .querySelector(\"ic-text-field\")) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector(`#${this.inputId}`);\n if (input &&\n Object.keys(input).length > 0 &&\n this.hasOptionsOrFilterDisabled()) {\n this.assistiveHintEl = document.createElement(\"span\");\n this.assistiveHintEl.innerText = this.assistiveHintText;\n this.assistiveHintEl.id = `${this.inputId}-assistive-hint`;\n this.assistiveHintEl.style.display = \"none\";\n if (input.after !== undefined) {\n input.after(this.assistiveHintEl);\n }\n }\n };\n this.updateSearchResultAriaLive = () => {\n const searchResultsStatusEl = this.el.shadowRoot.querySelector(\".search-results-status\");\n if (searchResultsStatusEl) {\n if (!this.open ||\n this.value === \"\" ||\n this.value.length < this.charactersUntilSuggestion) {\n searchResultsStatusEl.innerText = \"\";\n }\n else if (this.hasOptionsOrFilterDisabled() &&\n this.filteredOptions.length > 0 &&\n this.open &&\n !this.filteredOptions[0].loading) {\n if (this.hadNoOptions()) {\n searchResultsStatusEl.innerText = this.emptyOptionListText;\n }\n else {\n searchResultsStatusEl.innerText = `${this.filteredOptions.length} result${this.filteredOptions.length > 1 ? \"s\" : \"\"} available`;\n }\n }\n }\n };\n this.hasOptionsOrFilterDisabled = () => this.options.length > 0 || this.disableAutoFiltering;\n this.hadNoOptions = () => this.filteredOptions.length === 1 &&\n this.filteredOptions[0][this.labelField] === this.emptyOptionListText &&\n this.searchMode === \"navigation\";\n this.isSubmitDisabled = () => {\n const valueNotSet = this.value === undefined || this.value === null || this.value === \"\";\n const valueLengthLess = this.value.length < this.charactersUntilSuggestion;\n return (valueNotSet ||\n valueLengthLess ||\n this.disabled ||\n this.hadNoOptions() ||\n this.hasTimedOut ||\n this.loading);\n };\n this.highlightFirstOptionAfterNoResults = () => {\n if (this.prevNoOption && this.menu && !this.hasTimedOut) {\n this.menu.handleSetFirstOption();\n this.prevNoOption = false;\n }\n const prevNoOptionsList = this.filteredOptions.find((filteredOption) => filteredOption[this.labelField] === this.emptyOptionListText ||\n filteredOption[this.labelField] === this.loadingErrorLabel ||\n filteredOption[this.labelField] === this.loadingLabel);\n if (prevNoOptionsList) {\n this.prevNoOption = true;\n }\n };\n this.ariaActiveDescendant = undefined;\n this.clearButtonFocused = false;\n this.highlightedValue = undefined;\n this.open = false;\n this.searchSubmitFocused = false;\n this.showClearButton = false;\n this.autocapitalize = \"off\";\n this.autocomplete = \"off\";\n this.autocorrect = \"off\";\n this.autofocus = false;\n this.charactersUntilSuggestion = 2;\n this.disabled = false;\n this.disableAutoFiltering = false;\n this.debounce = 0;\n this.emptyOptionListText = \"No results found\";\n this.focusOnLoad = false;\n this.fullWidth = false;\n this.helperText = \"\";\n this.hideLabel = false;\n this.assistiveHintText = \"When autocomplete results are available use the up and down arrows to choose and press enter to select\";\n this.label = undefined;\n this.labelField = \"label\";\n this.loading = false;\n this.loadingErrorLabel = \"Loading Error\";\n this.loadingLabel = \"Loading...\";\n this.name = this.inputId;\n this.placeholder = \"Search\";\n this.readonly = false;\n this.required = false;\n this.searchMode = \"navigation\";\n this.size = \"medium\";\n this.spellcheck = false;\n this.theme = \"inherit\";\n this.timeout = undefined;\n this.valueField = \"value\";\n this.filteredOptions = [];\n this.options = [];\n this.value = \"\";\n }\n loadingHandler(newValue) {\n if (newValue && !this.hasTimedOut) {\n this.preLoad = false;\n this.triggerLoading();\n }\n }\n filteredOptionsHandler(newOptions) {\n this.hasTimedOut = newOptions.some((opt) => opt.timedOut);\n }\n watchOptionsHandler(newOptions) {\n if (this.disableAutoFiltering && !this.hasTimedOut) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (newOptions.length > 0) {\n this.filteredOptions = newOptions;\n }\n else {\n if (this.hadNoOptions()) {\n return;\n }\n this.setMenuChange(true);\n !this.preLoad &&\n (this.filteredOptions = [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ]);\n this.preLoad = true;\n }\n }\n this.debounceAriaLiveUpdate();\n }\n watchValueHandler(newValue) {\n if (this.inputEl &&\n this.options &&\n !!getLabelFromValue(newValue, this.options, this.valueField, this.labelField)) {\n this.inputEl.value = getLabelFromValue(newValue, this.options, this.valueField, this.labelField);\n }\n else if (this.inputEl && this.inputEl.value !== newValue) {\n this.inputEl.value = newValue;\n }\n }\n disconnectedCallback() {\n if (this.assistiveHintEl) {\n this.assistiveHintEl.remove();\n }\n }\n componentWillLoad() {\n this.watchValueHandler(this.value);\n removeDisabledFalse(this.disabled, this.el);\n }\n componentDidLoad() {\n if (this.focusOnLoad) {\n this.el.setFocus();\n }\n if (this.hasOptionsOrFilterDisabled()) {\n this.renderAssistiveHintEl();\n if (this.disableAutoFiltering) {\n this.filteredOptions = this.options;\n }\n }\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Search Bar\");\n if (this.inputEl !== undefined) {\n this.anchorEl = this.inputEl.shadowRoot.querySelector(\"ic-input-component-container\");\n }\n }\n componentWillRender() {\n this.highlightFirstOptionAfterNoResults();\n }\n handleKeyDown(ev) {\n const keyEv = ev.detail.event;\n if (this.menu && this.open) {\n this.menu.handleKeyboardOpen(keyEv);\n }\n }\n handleKeyUp(ev) {\n if (ev.key === \"Enter\") {\n if (this.preventSubmit || this.isSubmitDisabled()) {\n return;\n }\n this.handleSubmitSearch();\n this.setMenuChange(false);\n }\n if (ev.key === \"Escape\") {\n this.setMenuChange(false);\n }\n if (this.preventSubmit) {\n this.preventSubmit = false;\n }\n }\n /**\n * Sets focus on the native `input`.\n */\n async setFocus() {\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n if (this.inputEl) {\n this.inputEl.setFocus();\n }\n }\n debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAriaLive);\n this.debounceAriaLive = window.setTimeout(() => {\n this.updateSearchResultAriaLive();\n }, 500);\n }\n render() {\n const { inputId, name, label, required, size, placeholder, helperText, disabled, value, readonly, spellcheck, fullWidth, options, open, hideLabel, menuId, ariaActiveDescendant, truncateValue, autofocus, autocapitalize, autocomplete, filteredOptions, theme, } = this;\n const disabledMode = readonly || disabled;\n const describedBy = getInputDescribedByText(inputId, helperText !== \"\", false).trim();\n let describedById;\n if (describedBy !== \"\" && this.hasOptionsOrFilterDisabled()) {\n describedById = `${describedBy} ${this.inputId}-assistive-hint`;\n }\n else if (this.hasOptionsOrFilterDisabled()) {\n describedById = `${this.inputId}-assistive-hint`;\n }\n else if (describedBy !== \"\") {\n describedById = describedBy;\n }\n else {\n describedById = undefined;\n }\n const hasSuggestedSearch = !!value && this.hasOptionsOrFilterDisabled();\n const menuOpen = hasSuggestedSearch && open && filteredOptions.length > 0;\n const menuRendered = menuOpen && value.length >= this.charactersUntilSuggestion;\n const labelValue = getLabelFromValue(value, options, this.valueField, this.labelField);\n renderHiddenInput(true, this.el, name, value, disabledMode);\n return (h(Host, { class: {\n [\"ic-search-bar-search\"]: true,\n [\"ic-search-bar-full-width\"]: fullWidth,\n [\"ic-search-bar-disabled\"]: disabled,\n [\"ic-search-bar-small\"]: size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, h(\"ic-text-field\", { ref: (el) => (this.inputEl = el), inputId: inputId, label: label, helperText: helperText, required: required, disabled: disabledMode && !readonly, readonly: readonly, size: size, hideLabel: hideLabel, fullWidth: fullWidth, name: name, truncateValue: truncateValue, value: options && !!labelValue ? labelValue : value, placeholder: placeholder, onInput: this.onInput, onBlur: this.onInputBlur, onFocus: this.onInputFocus, \"aria-label\": hideLabel ? label : \"\", \"aria-describedby\": describedById, \"aria-owns\": menuRendered ? menuId : undefined, \"aria-controls\": menuRendered ? menuId : undefined, \"aria-haspopup\": options.length > 0 ? \"listbox\" : undefined, ariaExpanded: options.length > 0 ? `${menuOpen}` : undefined, ariaActiveDescendant: ariaActiveDescendant, \"aria-autocomplete\": hasSuggestedSearch ? \"list\" : undefined, role: options.length > 0 ? \"combobox\" : undefined, autocomplete: autocomplete, autocapitalize: autocapitalize, autoFocus: autofocus, spellcheck: spellcheck, inputmode: \"search\", debounce: this.debounce }, h(\"div\", { class: {\n \"clear-button-container\": true,\n \"clear-button-visible\": value && !disabledMode && this.showClearButton,\n }, slot: \"clear-button\" }, h(\"ic-button\", { id: \"clear-button\", class: {\n \"clear-button\": true,\n \"clear-button-unfocused\": !this.clearButtonFocused,\n }, \"aria-label\": \"Clear\", innerHTML: clearIcon, onClick: this.handleClear, onMouseDown: this.handleMouseDown, size: size, onFocus: this.handleFocusClearButton, onBlur: this.handleClearBlur, onKeyDown: this.handleClear, type: \"submit\", variant: \"icon\", theme: this.clearButtonFocused ? \"light\" : \"dark\" }), h(\"div\", { class: \"divider\" })), h(\"div\", { class: {\n \"search-submit-button-container\": true,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }, slot: \"search-submit-button\" }, h(\"ic-button\", { id: \"search-submit-button\", \"aria-label\": \"Search\", ref: (el) => (this.searchSubmitButton = el), class: {\n [\"search-submit-button\"]: true,\n [\"search-submit-button-small\"]: size === \"small\",\n [\"search-submit-button-unfocused\"]: !this.searchSubmitFocused,\n [\"search-submit-button-disabled\"]: this.isSubmitDisabled(),\n }, disabled: this.isSubmitDisabled(), innerHTML: searchIcon, size: size, onClick: this.handleSubmitSearch, onMouseDown: this.handleMouseDown, onBlur: this.handleSubmitSearchBlur, onFocus: this.handleSubmitSearchFocus, onKeyDown: this.handleSubmitSearchKeyDown, type: \"submit\", variant: \"icon\", theme: this.searchSubmitFocused ? \"light\" : \"dark\" })), h(\"div\", { class: {\n \"menu-container\": true,\n fullwidth: fullWidth,\n }, slot: \"menu\" }, menuRendered && (h(\"ic-menu\", { class: {\n \"no-results\": this.hadNoOptions() ||\n (filteredOptions.length === 1 &&\n (filteredOptions[0][this.labelField] ===\n this.loadingLabel ||\n filteredOptions[0][this.labelField] ===\n this.loadingErrorLabel)),\n }, activationType: \"manual\", anchorEl: this.anchorEl, autoFocusOnSelected: false, searchMode: this.searchMode, inputEl: this.inputEl, inputLabel: label, ref: (el) => (this.menu = el), fullWidth: fullWidth, menuId: menuId, open: !!menuRendered, options: filteredOptions, onMenuOptionSelect: this.handleOptionSelect, onMenuStateChange: this.handleMenuChange, onMenuOptionId: this.handleMenuOptionHighlight, onRetryButtonClicked: this.handleRetry, parentEl: this.el, value: value, labelField: this.labelField, valueField: this.valueField })))), h(\"div\", { \"aria-live\": \"polite\", role: \"status\", class: \"search-results-status\" })));\n }\n static get is() { return \"ic-search-bar\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-search-bar.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-search-bar.css\"]\n };\n }\n static get properties() {\n return {\n \"autocapitalize\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The automatic capitalisation of the text value as it is entered/edited by the user.\\nAvailable options: \\\"off\\\", \\\"none\\\", \\\"on\\\", \\\"sentences\\\", \\\"words\\\", \\\"characters\\\".\"\n },\n \"attribute\": \"autocapitalize\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autocomplete\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAutocompleteTypes\",\n \"resolved\": \"\\\"name\\\" | \\\"on\\\" | \\\"off\\\" | \\\"honorific-prefix\\\" | \\\"given-name\\\" | \\\"additional-name\\\" | \\\"family-name\\\" | \\\"honorific-suffix\\\" | \\\"nickname\\\" | \\\"email\\\" | \\\"username\\\" | \\\"new-password\\\" | \\\"current-password\\\" | \\\"one-time-code\\\" | \\\"organization-title\\\" | \\\"organization\\\" | \\\"street-address\\\" | \\\"address-line1\\\" | \\\"address-line2\\\" | \\\"address-line3\\\" | \\\"address-level4\\\" | \\\"address-level3\\\" | \\\"address-level2\\\" | \\\"address-level1\\\" | \\\"country\\\" | \\\"country-name\\\" | \\\"postal-code\\\" | \\\"cc-name\\\" | \\\"cc-given-name\\\" | \\\"cc-additional-name\\\" | \\\"cc-family-name\\\" | \\\"cc-number\\\" | \\\"cc-exp\\\" | \\\"cc-exp-month\\\" | \\\"cc-exp-year\\\" | \\\"cc-csc\\\" | \\\"cc-type\\\" | \\\"transaction-currency\\\" | \\\"transaction-amount\\\" | \\\"language\\\" | \\\"bday\\\" | \\\"bday-day\\\" | \\\"bday-month\\\" | \\\"bday-year\\\" | \\\"sex\\\" | \\\"tel\\\" | \\\"tel-country-code\\\" | \\\"tel-national\\\" | \\\"tel-area-code\\\" | \\\"tel-local\\\" | \\\"tel-extension\\\" | \\\"impp\\\" | \\\"url\\\" | \\\"photo\\\"\",\n \"references\": {\n \"IcAutocompleteTypes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAutocompleteTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The state of autocompletion the browser can apply on the text value.\"\n },\n \"attribute\": \"autocomplete\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autocorrect\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAutocorrectStates\",\n \"resolved\": \"\\\"off\\\" | \\\"on\\\"\",\n \"references\": {\n \"IcAutocorrectStates\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAutocorrectStates\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The state of autocorrection the browser can apply when the user is entering/editing the text value.\"\n },\n \"attribute\": \"autocorrect\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autofocus\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the form control will have input focus when the page loads.\"\n },\n \"attribute\": \"autofocus\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"charactersUntilSuggestion\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The number of characters until suggestions appear. The submit button will be disabled until the inputted value is equal to or greater than this number.\"\n },\n \"attribute\": \"characters-until-suggestion\",\n \"reflect\": false,\n \"defaultValue\": \"2\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"disableAutoFiltering\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify whether to disable the built in filtering. For example, if options will already be filtered from external source.\\nIf `true`, all options provided will be displayed.\"\n },\n \"attribute\": \"disable-auto-filtering\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"debounce\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\"\n },\n \"attribute\": \"debounce\",\n \"reflect\": false,\n \"defaultValue\": \"0\"\n },\n \"emptyOptionListText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The text displayed when there are no options in the option list.\"\n },\n \"attribute\": \"empty-option-list-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"No results found\\\"\"\n },\n \"focusOnLoad\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the search bar will be focused when component loaded.\"\n },\n \"attribute\": \"focus-on-load\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify whether the search bar fills the full width of the container.\\nIf `true`, this overrides the --input-width CSS variable.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed for additional field guidance.\"\n },\n \"attribute\": \"helper-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"hideLabel\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"assistiveHintText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The hint text for the hidden assistive description element.\"\n },\n \"attribute\": \"assistive-hint-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"When autocomplete results are available use the up and down arrows to choose and press enter to select\\\"\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the search bar.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"labelField\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The custom name for the label field to correspond with the IcMenuOption type.\"\n },\n \"attribute\": \"label-field\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"label\\\"\"\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Trigger loading state when fetching options asynchronously\"\n },\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"loadingErrorLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Change the message displayed when external loading times out.\"\n },\n \"attribute\": \"loading-error-label\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Loading Error\\\"\"\n },\n \"loadingLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Change the message displayed whilst the options are being loaded externally.\"\n },\n \"attribute\": \"loading-label\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Loading...\\\"\"\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name of the control, which is submitted with the form data.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false,\n \"defaultValue\": \"this.inputId\"\n },\n \"placeholder\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placeholder value to display.\"\n },\n \"attribute\": \"placeholder\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Search\\\"\"\n },\n \"readonly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the readonly state will be set.\"\n },\n \"attribute\": \"readonly\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the search bar will require a value.\"\n },\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"searchMode\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSearchBarSearchModes\",\n \"resolved\": \"\\\"navigation\\\" | \\\"query\\\"\",\n \"references\": {\n \"IcSearchBarSearchModes\": {\n \"location\": \"import\",\n \"path\": \"./ic-search-bar.types\",\n \"id\": \"src/components/ic-search-bar/ic-search-bar.types.ts::IcSearchBarSearchModes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches.\"\n },\n \"attribute\": \"search-mode\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"navigation\\\"\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the search bar component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"spellcheck\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the value of the search will have its spelling and grammar checked.\"\n },\n \"attribute\": \"spellcheck\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"timeout\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If using external filtering, set a timeout for when loading takes too long.\"\n },\n \"attribute\": \"timeout\",\n \"reflect\": false\n },\n \"valueField\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The custom name for the value field to correspond with the IcMenuOption type.\"\n },\n \"attribute\": \"value-field\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"value\\\"\"\n },\n \"options\": {\n \"type\": \"unknown\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcMenuOption[]\",\n \"resolved\": \"IcMenuOption[]\",\n \"references\": {\n \"IcMenuOption\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcMenuOption\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The suggested search options.\"\n },\n \"defaultValue\": \"[]\"\n },\n \"value\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The value of the search input.\"\n },\n \"attribute\": \"value\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"ariaActiveDescendant\": {},\n \"clearButtonFocused\": {},\n \"highlightedValue\": {},\n \"open\": {},\n \"searchSubmitFocused\": {},\n \"showClearButton\": {},\n \"filteredOptions\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icChange\",\n \"name\": \"icChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the value has changed.\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icClear\",\n \"name\": \"icClear\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when value is cleared with clear button\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icInput\",\n \"name\": \"icInput\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a keyboard input occurred.\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icOptionSelect\",\n \"name\": \"icOptionSelect\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when option is highlighted within the menu\"\n },\n \"complexType\": {\n \"original\": \"IcOptionSelectEventDetail\",\n \"resolved\": \"IcOptionSelectEventDetail\",\n \"references\": {\n \"IcOptionSelectEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-menu/ic-menu.types\",\n \"id\": \"src/components/ic-menu/ic-menu.types.ts::IcOptionSelectEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icMenuChange\",\n \"name\": \"icMenuChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the state of the menu changes (i.e. open or close)\"\n },\n \"complexType\": {\n \"original\": \"IcMenuChangeEventDetail\",\n \"resolved\": \"IcMenuChangeEventDetail\",\n \"references\": {\n \"IcMenuChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-menu/ic-menu.types\",\n \"id\": \"src/components/ic-menu/ic-menu.types.ts::IcMenuChangeEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icClearBlur\",\n \"name\": \"icClearBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when blur is invoked from clear button\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcBlurEventDetail\",\n \"resolved\": \"IcBlurEventDetail\",\n \"references\": {\n \"IcBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icRetryLoad\",\n \"name\": \"icRetryLoad\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the 'retry loading' button is clicked\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSubmitSearch\",\n \"name\": \"icSubmitSearch\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the search value has been submitted\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSubmitSearchBlur\",\n \"name\": \"icSubmitSearchBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when blur is invoked from search submit button\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcBlurEventDetail\",\n \"resolved\": \"IcBlurEventDetail\",\n \"references\": {\n \"IcBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSearchBarBlur\",\n \"name\": \"icSearchBarBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when blur is invoked from ic-search-bar\"\n },\n \"complexType\": {\n \"original\": \"IcSearchBarBlurEventDetail\",\n \"resolved\": \"IcSearchBarBlurEventDetail\",\n \"references\": {\n \"IcSearchBarBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-search-bar.types\",\n \"id\": \"src/components/ic-search-bar/ic-search-bar.types.ts::IcSearchBarBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSearchBarFocus\",\n \"name\": \"icSearchBarFocus\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when focus is invoked from ic-search-bar\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }];\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the native `input`.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"loading\",\n \"methodName\": \"loadingHandler\"\n }, {\n \"propName\": \"filteredOptions\",\n \"methodName\": \"filteredOptionsHandler\"\n }, {\n \"propName\": \"options\",\n \"methodName\": \"watchOptionsHandler\"\n }, {\n \"propName\": \"value\",\n \"methodName\": \"watchValueHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icKeydown\",\n \"method\": \"handleKeyDown\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"keyup\",\n \"method\": \"handleKeyUp\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-search-bar.js.map\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as o,h as e,H as s}from"./p-8455d1bb.js";import{G as r,H as i,W as h,b as c,g as a}from"./p-b2389339.js";const n=class{constructor(e){t(this,e);this.themeChange=o(this,"themeChange",7);this.darkModeChangeHandler=()=>{if(this.theme==="system"){this.themeClass=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"ic-theme-dark":"ic-theme-light"}else{this.themeClass=`ic-theme-${this.theme}`}};this.checkThemeColorContrast=()=>{if(r()<i&&r()>h){console.warn(`The theme colour does not provide enough contrast with either of the ICDS black or white foreground colours. Consider choosing a colour with a different brightness to achieve sufficient colour contrast for good visibility. See https://www.w3.org/TR/AERT/#color-contrast for more information about colour contrast.`)}};this.setThemeColor=()=>{const t=c(this.color);if(t){const{r:o,g:e,b:s,a:r}=t;const{style:i}=document.documentElement;i.setProperty("--ic-theme-primary-r",`${o}`);i.setProperty("--ic-theme-primary-g",`${e}`);i.setProperty("--ic-theme-primary-b",`${s}`);i.setProperty("--ic-theme-primary-a",`${r}`);this.checkThemeColorContrast();this.themeChange.emit({mode:a(),color:t})}};this.themeClass="";this.color=null;this.theme="light"}watchColorPropHandler(){this.setThemeColor()}watchThemePropHandler(){this.darkModeChangeHandler()}componentWillLoad(){this.darkModeChangeHandler();this.setThemeColor();window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",this.darkModeChangeHandler)}render(){const{themeClass:t}=this;return e(s,{class:t},e("slot",null))}static get watchers(){return{color:["watchColorPropHandler"],theme:["watchThemePropHandler"]}}};export{n as ic_theme};
2
- //# sourceMappingURL=p-be7bc371.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Theme","constructor","hostRef","this","darkModeChangeHandler","theme","themeClass","window","matchMedia","matches","checkThemeColorContrast","getThemeColorBrightness","BLACK_MIN_COLOR_BRIGHTNESS","WHITE_MAX_COLOR_BRIGHTNESS","console","warn","setThemeColor","colorRGBA","convertToRGBA","color","r","g","b","a","style","document","documentElement","setProperty","themeChange","emit","mode","getThemeForegroundColor","watchColorPropHandler","watchThemePropHandler","componentWillLoad","addEventListener","render","h","Host","class"],"sources":["../web-components/dist/collection/components/ic-theme/ic-theme.js"],"sourcesContent":["import { Host, h, } from \"@stencil/core\";\nimport { convertToRGBA, getThemeForegroundColor } from \"../../utils/helpers\";\nimport { getThemeColorBrightness } from \"../../utils/helpers\";\nimport { BLACK_MIN_COLOR_BRIGHTNESS, WHITE_MAX_COLOR_BRIGHTNESS, } from \"../../utils/constants\";\nexport class Theme {\n constructor() {\n this.darkModeChangeHandler = () => {\n if (this.theme === \"system\") {\n this.themeClass =\n window.matchMedia &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"ic-theme-dark\"\n : \"ic-theme-light\";\n }\n else {\n this.themeClass = `ic-theme-${this.theme}`;\n }\n };\n this.checkThemeColorContrast = () => {\n if (getThemeColorBrightness() < BLACK_MIN_COLOR_BRIGHTNESS &&\n getThemeColorBrightness() > WHITE_MAX_COLOR_BRIGHTNESS) {\n console.warn(`The theme colour does not provide enough contrast with either of the ICDS black or white foreground colours. Consider choosing a colour with a different brightness to achieve sufficient colour contrast for good visibility. See https://www.w3.org/TR/AERT/#color-contrast for more information about colour contrast.`);\n }\n };\n this.setThemeColor = () => {\n const colorRGBA = convertToRGBA(this.color);\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n const { style } = document.documentElement;\n style.setProperty(\"--ic-theme-primary-r\", `${r}`);\n style.setProperty(\"--ic-theme-primary-g\", `${g}`);\n style.setProperty(\"--ic-theme-primary-b\", `${b}`);\n style.setProperty(\"--ic-theme-primary-a\", `${a}`);\n this.checkThemeColorContrast();\n this.themeChange.emit({\n mode: getThemeForegroundColor(),\n color: colorRGBA,\n });\n }\n };\n this.themeClass = \"\";\n this.color = null;\n this.theme = \"light\";\n }\n watchColorPropHandler() {\n this.setThemeColor();\n }\n watchThemePropHandler() {\n this.darkModeChangeHandler();\n }\n componentWillLoad() {\n this.darkModeChangeHandler();\n this.setThemeColor();\n window.matchMedia &&\n window\n .matchMedia(\"(prefers-color-scheme: dark)\")\n .addEventListener(\"change\", this.darkModeChangeHandler);\n }\n render() {\n const { themeClass } = this;\n return (h(Host, { class: themeClass }, h(\"slot\", null)));\n }\n static get is() { return \"ic-theme\"; }\n static get properties() {\n return {\n \"color\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcColor\",\n \"resolved\": \"`#${string}` | `rgb(${string})` | `rgba(${string})`\",\n \"references\": {\n \"IcColor\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcColor\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The theme colour. Can be a hex value e.g. \\\"#ff0000\\\", RGB e.g. \\\"rgb(255, 0, 0)\\\", or RGBA e.g. \\\"rgba(255, 0, 0, 1)\\\".\"\n },\n \"attribute\": \"color\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"dark\\\" | \\\"light\\\" | \\\"system\\\"\",\n \"resolved\": \"\\\"dark\\\" | \\\"light\\\" | \\\"system\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The theme mode. Can be \\\"dark\\\", \\\"light\\\", or \\\"system\\\". \\\"system\\\" will use the device or browser settings.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"light\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"themeClass\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"themeChange\",\n \"name\": \"themeChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Emitted when the theme is changed.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcTheme\",\n \"resolved\": \"{ mode: IcThemeForeground; color: IcColorRGB; }\",\n \"references\": {\n \"IcTheme\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcTheme\"\n }\n }\n }\n }];\n }\n static get watchers() {\n return [{\n \"propName\": \"color\",\n \"methodName\": \"watchColorPropHandler\"\n }, {\n \"propName\": \"theme\",\n \"methodName\": \"watchThemePropHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-theme.js.map\n"],"mappings":"+HAIaA,EAAK,MACd,WAAAC,CAAAC,G,mDACIC,KAAKC,sBAAwB,KACzB,GAAID,KAAKE,QAAU,SAAU,CACzBF,KAAKG,WACDC,OAAOC,YACHD,OAAOC,WAAW,gCAAgCC,QAChD,gBACA,gB,KAET,CACDN,KAAKG,WAAa,YAAYH,KAAKE,O,GAG3CF,KAAKO,wBAA0B,KAC3B,GAAIC,IAA4BC,GAC5BD,IAA4BE,EAA4B,CACxDC,QAAQC,KAAK,4T,GAGrBZ,KAAKa,cAAgB,KACjB,MAAMC,EAAYC,EAAcf,KAAKgB,OACrC,GAAIF,EAAW,CACX,MAAMG,EAAEA,EAACC,EAAEA,EAACC,EAAEA,EAACC,EAAEA,GAAMN,EACvB,MAAMO,MAAEA,GAAUC,SAASC,gBAC3BF,EAAMG,YAAY,uBAAwB,GAAGP,KAC7CI,EAAMG,YAAY,uBAAwB,GAAGN,KAC7CG,EAAMG,YAAY,uBAAwB,GAAGL,KAC7CE,EAAMG,YAAY,uBAAwB,GAAGJ,KAC7CpB,KAAKO,0BACLP,KAAKyB,YAAYC,KAAK,CAClBC,KAAMC,IACNZ,MAAOF,G,GAInBd,KAAKG,WAAa,GAClBH,KAAKgB,MAAQ,KACbhB,KAAKE,MAAQ,O,CAEjB,qBAAA2B,GACI7B,KAAKa,e,CAET,qBAAAiB,GACI9B,KAAKC,uB,CAET,iBAAA8B,GACI/B,KAAKC,wBACLD,KAAKa,gBACLT,OAAOC,YACHD,OACKC,WAAW,gCACX2B,iBAAiB,SAAUhC,KAAKC,sB,CAE7C,MAAAgC,GACI,MAAM9B,WAAEA,GAAeH,KACvB,OAAQkC,EAAEC,EAAM,CAAEC,MAAOjC,GAAc+B,EAAE,OAAQ,M"}
@@ -1,2 +0,0 @@
1
- import{r as o,c as e,h as t,H as i,g as r}from"./p-8455d1bb.js";import{e as n,t as a,g as s,f as c,i as l,u as d,I as p}from"./p-b2389339.js";const f='/*! 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;--footer-compliance-padding:1rem 0}:host(.ic-footer-sparse){--footer-links-padding:1.5rem 0;--footer-logo-margin-bottom:calc(var(--ic-space-md) + var(--ic-space-xxs));--footer-link-inner-flex-direction:row}:host(.ic-footer-small){--footer-links-padding:0 0;--footer-logo-margin-bottom:var(--ic-space-md);--footer-link-inner-flex-direction:column}:host(.ic-footer-foreground-dark){--ic-footer-background:var(--ic-theme-secondary-light);--ic-footer-bottom-background:var(--ic-theme-tertiary-light);--ic-footer-keyline:var(--ic-state-layer-darken-20);--ic-footer-text:var(--ic-color-text-primary-light);--ic-footer-link:var(--ic-color-text-primary-light);--ic-footer-icon:var(--ic-color-icon-neutral);--ic-footer-chevron-icon:var(--ic-color-icon-neutral);--ic-footer-logo:var(--ic-color-icon-neutral);--ic-footer-hover:var(--ic-architectural-700-state-layer-10);--ic-footer-pressed:var(--ic-architectural-700-state-layer-20)}:host(.ic-footer-small.ic-footer-ungrouped){--footer-links-padding:var(--ic-space-md) 0 0 0}footer{display:flex;flex-direction:column;width:100%}.footer-description{background-color:var(--ic-footer-background);color:var(--ic-footer-text);--ic-typography-color:var(--ic-footer-text);border-bottom:var(--ic-space-1px) solid var(--ic-footer-keyline)}.footer-description-inner{padding:1rem 0}.footer-links{padding:var(--footer-links-padding);background-color:var(--ic-footer-background);color:var(--ic-footer-link);--ic-typography-color:var(--ic-footer-link)}.footer-links-inner{display:flex;flex-direction:var(--footer-link-inner-flex-direction)}.footer-compliance{background-color:var(--ic-footer-bottom-background);color:var(--ic-footer-text);--ic-typography-color:var(--ic-footer-text)}.footer-compliance-inner{padding:var(--footer-compliance-padding)}.footer-logo{margin-bottom:var(--footer-logo-margin-bottom);display:flex;gap:var(--ic-space-xxl)}.footer-logo>::slotted(){margin-right:var(--ic-space-md)}.footer-caption{margin-bottom:var(--ic-space-md)}.classification-spacing{margin-bottom:var(--ic-space-lg)}@media (forced-colors: active){footer{border-top:var(--ic-border-hc)}}';const m=class{constructor(t){o(this,t);this.footerResized=e(this,"footerResized",7);this.resizeObserver=null;this.resizeObserverCallback=o=>{if(o!==this.deviceSize){this.deviceSize=o}this.footerResized.emit()};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const o=n();this.resizeObserverCallback(o)}));this.resizeObserver.observe(this.footerEl)};this.deviceSize=a.XL;this.foregroundColor=s();this.aligned="left";this.breakpoint="medium";this.caption=undefined;this.copyright=true;this.description=undefined;this.groupLinks=false}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}componentWillLoad(){this.deviceSize=n()}componentDidLoad(){c(this.runResizeObserver)}themeChangeHandler(o){const e=o.detail;this.foregroundColor=e.mode}isSmall(){const o=this.breakpoint;return o==="extra small"?this.deviceSize<a.XS:o==="small"?this.deviceSize<a.S:o==="medium"?this.deviceSize<a.M:o==="large"?this.deviceSize<a.L:o==="extra large"?this.deviceSize<a.XL:false}render(){const{aligned:o,caption:e,copyright:r,description:n,groupLinks:s,foregroundColor:c}=this;const f=this.isSmall();return t(i,{class:{["ic-footer"]:true,[`ic-footer-${f?"small":"sparse"}`]:true,[`ic-footer-${s?"grouped":"ungrouped"}`]:true,[`ic-footer-foreground-${c}`]:true,[`ic-footer-${p.Dark}`]:c===p.Dark,[`ic-footer-${p.Light}`]:c===p.Light}},t("footer",{ref:o=>this.footerEl=o},(l(this.el,"description")||n)&&t("div",{class:"footer-description"},t("ic-section-container",{aligned:o,fullHeight:true},t("div",{class:"footer-description-inner"},t("ic-typography",{variant:"body"},t("slot",{name:"description"},n))))),l(this.el,"link")&&t("div",{class:"footer-links"},s&&f?t("div",{class:"footer-links-inner",role:"list"},t("slot",{name:"link"})):t("ic-section-container",{fullHeight:true,aligned:o},t("div",{class:"footer-links-inner",role:"list"},t("slot",{name:"link"})))),t("div",{class:"footer-compliance"},t("ic-section-container",{aligned:o,fullHeight:true},t("div",{class:"footer-compliance-inner"},l(this.el,"logo")&&t("div",{class:"footer-logo"},t("slot",{name:"logo"})),(l(this.el,"caption")||e)&&t("div",{class:"footer-caption"},t("ic-typography",{variant:this.deviceSize<=a.M?"caption":"body"},t("slot",{name:"caption"},e))),r&&t("div",{class:{["footer-copyright"]:true,["classification-spacing"]:d()}},t("ic-typography",{variant:this.deviceSize<=a.M?"caption-uppercase":"label-uppercase"},"© Crown Copyright")))))))}get el(){return r(this)}};m.style=f;export{m as ic_footer};
2
- //# sourceMappingURL=p-c12f3582.entry.js.map