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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (620) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-36cdc6cb.js → helpers-55099147.js} +5 -4
  3. package/dist/cjs/helpers-55099147.js.map +1 -0
  4. package/dist/cjs/{helpers-a67ad3a4.js → helpers-c80f6ce4.js} +13 -11
  5. package/dist/cjs/helpers-c80f6ce4.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +10 -10
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +5 -5
  9. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-alert.cjs.entry.js +7 -5
  11. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +8 -5
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-badge.cjs.entry.js +2 -2
  15. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +43 -20
  17. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js +2 -2
  19. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-button_3.cjs.entry.js +11 -13
  21. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-card-horizontal.cjs.entry.js +22 -27
  23. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js +25 -26
  25. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js +16 -5
  27. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -3
  29. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +7 -7
  35. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-data-table.cjs.entry.js +84 -26
  37. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-date-input.cjs.entry.js +11 -10
  39. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-date-picker.cjs.entry.js +9 -5
  41. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-dialog.cjs.entry.js +4 -2
  43. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-divider.cjs.entry.js +71 -7
  45. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-empty-state_2.cjs.entry.js +25 -11
  47. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-footer-link-group.cjs.entry.js +3 -3
  49. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-footer.cjs.entry.js +2 -2
  53. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-hero.cjs.entry.js +2 -2
  55. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +15 -7
  57. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +14 -25
  59. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-input-label_2.cjs.entry.js +21 -25
  61. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-link.cjs.entry.js +3 -8
  63. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  65. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-menu-item.cjs.entry.js +18 -17
  67. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-navigation-button.cjs.entry.js +7 -3
  69. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-navigation-group.cjs.entry.js +7 -4
  71. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-navigation-item.cjs.entry.js +57 -5
  73. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -4
  75. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-page-header.cjs.entry.js +5 -3
  77. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-pagination_4.cjs.entry.js +52 -50
  79. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-popover-menu.cjs.entry.js +9 -9
  81. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-radio-group.cjs.entry.js +14 -5
  83. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-radio-option.cjs.entry.js +8 -4
  85. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-search-bar.cjs.entry.js +12 -9
  87. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-side-navigation.cjs.entry.js +13 -8
  89. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-status-tag.cjs.entry.js +5 -4
  91. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  93. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  94. package/dist/cjs/ic-switch.cjs.entry.js +2 -2
  95. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tab-context.cjs.entry.js +2 -1
  97. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -19
  99. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  101. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  102. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  103. package/dist/cjs/ic-toast.cjs.entry.js +3 -3
  104. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +29 -5
  106. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-toggle-button.cjs.entry.js +9 -6
  108. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-top-navigation.cjs.entry.js +6 -4
  110. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-tree-item.cjs.entry.js +8 -6
  112. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-tree-view.cjs.entry.js +13 -13
  114. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ic-typography.cjs.entry.js +2 -2
  116. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  117. package/dist/cjs/loader.cjs.js +1 -1
  118. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +22 -25
  119. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +45 -26
  120. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  121. package/dist/collection/components/ic-data-table/ic-data-table.css +80 -32
  122. package/dist/collection/components/ic-data-table/ic-data-table.js +135 -45
  123. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  124. package/dist/collection/components/ic-data-table/story-data.js +50 -0
  125. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  126. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +18 -1
  127. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  128. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +9 -4
  129. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +5 -5
  130. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  131. package/dist/collection/components/ic-date-input/ic-date-input.css +66 -6
  132. package/dist/collection/components/ic-date-input/ic-date-input.js +34 -9
  133. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  134. package/dist/collection/components/ic-date-picker/ic-date-picker.css +17 -15
  135. package/dist/collection/components/ic-date-picker/ic-date-picker.js +31 -3
  136. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  137. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.css +4 -7
  138. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +65 -33
  139. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  140. package/dist/collection/components/ic-tree-item/ic-tree-item.css +18 -22
  141. package/dist/collection/components/ic-tree-item/ic-tree-item.js +30 -31
  142. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  143. package/dist/collection/components/ic-tree-view/ic-tree-view.css +8 -9
  144. package/dist/collection/components/ic-tree-view/ic-tree-view.js +36 -36
  145. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  146. package/dist/collection/utils/helpers.js +12 -10
  147. package/dist/collection/utils/helpers.js.map +1 -1
  148. package/dist/collection/utils/types.js.map +1 -1
  149. package/dist/components/helpers.js +5 -4
  150. package/dist/components/helpers.js.map +1 -1
  151. package/dist/components/helpers2.js +13 -11
  152. package/dist/components/helpers2.js.map +1 -1
  153. package/dist/components/ic-accordion-group.js +11 -11
  154. package/dist/components/ic-accordion-group.js.map +1 -1
  155. package/dist/components/ic-accordion.js +5 -5
  156. package/dist/components/ic-accordion.js.map +1 -1
  157. package/dist/components/ic-alert.js +8 -5
  158. package/dist/components/ic-alert.js.map +1 -1
  159. package/dist/components/ic-back-to-top.js +9 -5
  160. package/dist/components/ic-back-to-top.js.map +1 -1
  161. package/dist/components/ic-badge.js +1 -1
  162. package/dist/components/ic-badge.js.map +1 -1
  163. package/dist/components/ic-breadcrumb-group.js +43 -19
  164. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  165. package/dist/components/ic-breadcrumb2.js +1 -1
  166. package/dist/components/ic-breadcrumb2.js.map +1 -1
  167. package/dist/components/ic-button2.js +12 -13
  168. package/dist/components/ic-button2.js.map +1 -1
  169. package/dist/components/ic-card-horizontal.js +23 -27
  170. package/dist/components/ic-card-horizontal.js.map +1 -1
  171. package/dist/components/ic-card-vertical.js +27 -27
  172. package/dist/components/ic-card-vertical.js.map +1 -1
  173. package/dist/components/ic-checkbox-group.js +18 -5
  174. package/dist/components/ic-checkbox-group.js.map +1 -1
  175. package/dist/components/ic-checkbox.js +5 -2
  176. package/dist/components/ic-checkbox.js.map +1 -1
  177. package/dist/components/ic-classification-banner.js +1 -1
  178. package/dist/components/ic-classification-banner.js.map +1 -1
  179. package/dist/components/ic-data-table-title-bar.js +6 -6
  180. package/dist/components/ic-data-table-title-bar.js.map +1 -1
  181. package/dist/components/ic-data-table.js +87 -26
  182. package/dist/components/ic-data-table.js.map +1 -1
  183. package/dist/components/ic-date-input2.js +12 -10
  184. package/dist/components/ic-date-input2.js.map +1 -1
  185. package/dist/components/ic-date-picker.js +9 -4
  186. package/dist/components/ic-date-picker.js.map +1 -1
  187. package/dist/components/ic-dialog.js +4 -1
  188. package/dist/components/ic-dialog.js.map +1 -1
  189. package/dist/components/ic-divider2.js +86 -9
  190. package/dist/components/ic-divider2.js.map +1 -1
  191. package/dist/components/ic-footer-link-group.js +2 -2
  192. package/dist/components/ic-footer-link-group.js.map +1 -1
  193. package/dist/components/ic-footer-link.js +1 -1
  194. package/dist/components/ic-footer-link.js.map +1 -1
  195. package/dist/components/ic-footer.js +1 -1
  196. package/dist/components/ic-footer.js.map +1 -1
  197. package/dist/components/ic-hero.js +1 -1
  198. package/dist/components/ic-hero.js.map +1 -1
  199. package/dist/components/ic-horizontal-scroll2.js +16 -6
  200. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  201. package/dist/components/ic-input-component-container2.js +9 -22
  202. package/dist/components/ic-input-component-container2.js.map +1 -1
  203. package/dist/components/ic-input-label2.js +12 -17
  204. package/dist/components/ic-input-label2.js.map +1 -1
  205. package/dist/components/ic-input-validation2.js +8 -8
  206. package/dist/components/ic-input-validation2.js.map +1 -1
  207. package/dist/components/ic-link2.js +4 -9
  208. package/dist/components/ic-link2.js.map +1 -1
  209. package/dist/components/ic-menu-group.js +1 -1
  210. package/dist/components/ic-menu-group.js.map +1 -1
  211. package/dist/components/ic-menu-item2.js +20 -19
  212. package/dist/components/ic-menu-item2.js.map +1 -1
  213. package/dist/components/ic-menu2.js +4 -3
  214. package/dist/components/ic-menu2.js.map +1 -1
  215. package/dist/components/ic-navigation-button.js +7 -2
  216. package/dist/components/ic-navigation-button.js.map +1 -1
  217. package/dist/components/ic-navigation-group.js +7 -3
  218. package/dist/components/ic-navigation-group.js.map +1 -1
  219. package/dist/components/ic-navigation-item.js +60 -6
  220. package/dist/components/ic-navigation-item.js.map +1 -1
  221. package/dist/components/ic-navigation-menu2.js +6 -4
  222. package/dist/components/ic-navigation-menu2.js.map +1 -1
  223. package/dist/components/ic-page-header.js +5 -2
  224. package/dist/components/ic-page-header.js.map +1 -1
  225. package/dist/components/ic-pagination-bar2.js +27 -12
  226. package/dist/components/ic-pagination-bar2.js.map +1 -1
  227. package/dist/components/ic-pagination-item2.js +9 -11
  228. package/dist/components/ic-pagination-item2.js.map +1 -1
  229. package/dist/components/ic-pagination2.js +20 -15
  230. package/dist/components/ic-pagination2.js.map +1 -1
  231. package/dist/components/ic-popover-menu.js +8 -8
  232. package/dist/components/ic-popover-menu.js.map +1 -1
  233. package/dist/components/ic-radio-group.js +16 -5
  234. package/dist/components/ic-radio-group.js.map +1 -1
  235. package/dist/components/ic-radio-option.js +8 -3
  236. package/dist/components/ic-radio-option.js.map +1 -1
  237. package/dist/components/ic-search-bar.js +13 -9
  238. package/dist/components/ic-search-bar.js.map +1 -1
  239. package/dist/components/ic-select2.js +11 -12
  240. package/dist/components/ic-select2.js.map +1 -1
  241. package/dist/components/ic-side-navigation.js +13 -8
  242. package/dist/components/ic-side-navigation.js.map +1 -1
  243. package/dist/components/ic-status-tag.js +5 -3
  244. package/dist/components/ic-status-tag.js.map +1 -1
  245. package/dist/components/ic-switch.js +1 -1
  246. package/dist/components/ic-switch.js.map +1 -1
  247. package/dist/components/ic-tab-context.js +2 -1
  248. package/dist/components/ic-tab-context.js.map +1 -1
  249. package/dist/components/ic-tab-group.js +2 -18
  250. package/dist/components/ic-tab-group.js.map +1 -1
  251. package/dist/components/ic-text-field2.js +18 -14
  252. package/dist/components/ic-text-field2.js.map +1 -1
  253. package/dist/components/ic-toast.js +3 -3
  254. package/dist/components/ic-toast.js.map +1 -1
  255. package/dist/components/ic-toggle-button-group.js +36 -7
  256. package/dist/components/ic-toggle-button-group.js.map +1 -1
  257. package/dist/components/ic-toggle-button.js +11 -7
  258. package/dist/components/ic-toggle-button.js.map +1 -1
  259. package/dist/components/ic-top-navigation.js +7 -4
  260. package/dist/components/ic-top-navigation.js.map +1 -1
  261. package/dist/components/ic-tree-item.js +8 -6
  262. package/dist/components/ic-tree-item.js.map +1 -1
  263. package/dist/components/ic-tree-view.js +15 -15
  264. package/dist/components/ic-tree-view.js.map +1 -1
  265. package/dist/components/ic-typography2.js +1 -1
  266. package/dist/components/ic-typography2.js.map +1 -1
  267. package/dist/core/core.css +934 -66
  268. package/dist/core/core.esm.js +1 -1
  269. package/dist/core/core.esm.js.map +1 -1
  270. package/dist/core/p-006afa83.entry.js +2 -0
  271. package/dist/core/p-006afa83.entry.js.map +1 -0
  272. package/dist/core/{p-7e1603cc.entry.js → p-01ab3a15.entry.js} +2 -2
  273. package/dist/core/p-01ab3a15.entry.js.map +1 -0
  274. package/dist/core/p-0687cc81.entry.js +2 -0
  275. package/dist/core/p-0687cc81.entry.js.map +1 -0
  276. package/dist/core/{p-8bec76d1.entry.js → p-10afa533.entry.js} +2 -2
  277. package/dist/core/p-10afa533.entry.js.map +1 -0
  278. package/dist/core/p-12b1db1b.entry.js +2 -0
  279. package/dist/core/p-12b1db1b.entry.js.map +1 -0
  280. package/dist/core/p-160de322.entry.js +2 -0
  281. package/dist/core/p-160de322.entry.js.map +1 -0
  282. package/dist/core/p-199ce579.entry.js +2 -0
  283. package/dist/core/p-199ce579.entry.js.map +1 -0
  284. package/dist/core/{p-89be0a21.js → p-25597c03.js} +2 -2
  285. package/dist/core/p-25597c03.js.map +1 -0
  286. package/dist/core/p-29623ad5.entry.js +2 -0
  287. package/dist/core/p-29623ad5.entry.js.map +1 -0
  288. package/dist/core/p-2d6fffa4.entry.js +2 -0
  289. package/dist/core/p-2d6fffa4.entry.js.map +1 -0
  290. package/dist/core/{p-fbb5c8f2.entry.js → p-3106c4fd.entry.js} +2 -2
  291. package/dist/core/p-31082e64.entry.js +2 -0
  292. package/dist/core/p-31082e64.entry.js.map +1 -0
  293. package/dist/core/p-3b3a8108.entry.js +2 -0
  294. package/dist/core/p-3b3a8108.entry.js.map +1 -0
  295. package/dist/core/p-3bbfefcc.entry.js +2 -0
  296. package/dist/core/p-3bbfefcc.entry.js.map +1 -0
  297. package/dist/core/p-3d478ba9.entry.js +2 -0
  298. package/dist/core/p-3d478ba9.entry.js.map +1 -0
  299. package/dist/core/{p-82aa8136.entry.js → p-40f94113.entry.js} +2 -2
  300. package/dist/core/p-40f94113.entry.js.map +1 -0
  301. package/dist/core/p-43891495.entry.js +2 -0
  302. package/dist/core/p-43891495.entry.js.map +1 -0
  303. package/dist/core/p-47ae7d10.entry.js +2 -0
  304. package/dist/core/p-47ae7d10.entry.js.map +1 -0
  305. package/dist/core/p-59d48811.entry.js +2 -0
  306. package/dist/core/p-59d48811.entry.js.map +1 -0
  307. package/dist/core/p-690d0bbd.entry.js +2 -0
  308. package/dist/core/p-690d0bbd.entry.js.map +1 -0
  309. package/dist/core/p-6f7cf143.entry.js +2 -0
  310. package/dist/core/p-6f7cf143.entry.js.map +1 -0
  311. package/dist/core/{p-51ea45cb.entry.js → p-6f92ee7a.entry.js} +2 -2
  312. package/dist/core/p-6f92ee7a.entry.js.map +1 -0
  313. package/dist/core/p-70543f44.entry.js +2 -0
  314. package/dist/core/p-70543f44.entry.js.map +1 -0
  315. package/dist/core/p-7a1f1e0d.entry.js +2 -0
  316. package/dist/core/p-7a1f1e0d.entry.js.map +1 -0
  317. package/dist/core/{p-044689ef.entry.js → p-7c843bc8.entry.js} +2 -2
  318. package/dist/core/p-7c843bc8.entry.js.map +1 -0
  319. package/dist/core/p-7e358f32.entry.js +2 -0
  320. package/dist/core/p-7e358f32.entry.js.map +1 -0
  321. package/dist/core/p-81da002e.entry.js +2 -0
  322. package/dist/core/p-81da002e.entry.js.map +1 -0
  323. package/dist/core/p-83c09d8d.entry.js +2 -0
  324. package/dist/core/p-83c09d8d.entry.js.map +1 -0
  325. package/dist/core/p-8d933976.entry.js +2 -0
  326. package/dist/core/p-8d933976.entry.js.map +1 -0
  327. package/dist/core/{p-878df16f.entry.js → p-91cf88d6.entry.js} +2 -2
  328. package/dist/core/p-9235425c.entry.js +2 -0
  329. package/dist/core/p-9235425c.entry.js.map +1 -0
  330. package/dist/core/p-92f443aa.entry.js +2 -0
  331. package/dist/core/p-92f443aa.entry.js.map +1 -0
  332. package/dist/core/p-982deb94.entry.js +2 -0
  333. package/dist/core/p-982deb94.entry.js.map +1 -0
  334. package/dist/core/p-99c76218.entry.js +2 -0
  335. package/dist/core/p-99c76218.entry.js.map +1 -0
  336. package/dist/core/p-9ae77f11.entry.js +2 -0
  337. package/dist/core/p-9ae77f11.entry.js.map +1 -0
  338. package/dist/core/{p-7aa6b76e.entry.js → p-9da6df82.entry.js} +2 -2
  339. package/dist/core/{p-26613dbd.entry.js → p-a0c3f221.entry.js} +2 -2
  340. package/dist/core/p-a0c3f221.entry.js.map +1 -0
  341. package/dist/core/{p-13e01a1e.entry.js → p-a67c358a.entry.js} +2 -2
  342. package/dist/core/p-a67c358a.entry.js.map +1 -0
  343. package/dist/core/p-acb0eddb.entry.js +2 -0
  344. package/dist/core/p-acb0eddb.entry.js.map +1 -0
  345. package/dist/core/{p-043cf5de.js → p-b2389339.js} +2 -2
  346. package/dist/core/p-b2389339.js.map +1 -0
  347. package/dist/core/p-b4dd4835.entry.js +2 -0
  348. package/dist/core/p-b4dd4835.entry.js.map +1 -0
  349. package/dist/core/p-b4eb1c6d.entry.js +2 -0
  350. package/dist/core/p-b4eb1c6d.entry.js.map +1 -0
  351. package/dist/core/p-bc7d33e1.entry.js +2 -0
  352. package/dist/core/p-bc7d33e1.entry.js.map +1 -0
  353. package/dist/core/{p-80b296cd.entry.js → p-bd5aada7.entry.js} +2 -2
  354. package/dist/core/p-bdce46ca.entry.js +2 -0
  355. package/dist/core/p-bdce46ca.entry.js.map +1 -0
  356. package/dist/core/{p-24d03bbd.entry.js → p-be7bc371.entry.js} +2 -2
  357. package/dist/core/p-c12f3582.entry.js +2 -0
  358. package/dist/core/p-c12f3582.entry.js.map +1 -0
  359. package/dist/core/p-c4dc8fdf.entry.js +2 -0
  360. package/dist/core/p-c4dc8fdf.entry.js.map +1 -0
  361. package/dist/core/p-c5ea1e19.entry.js +2 -0
  362. package/dist/core/p-c5ea1e19.entry.js.map +1 -0
  363. package/dist/core/p-c894bc8f.entry.js +2 -0
  364. package/dist/core/p-c894bc8f.entry.js.map +1 -0
  365. package/dist/core/p-dd3a9cb1.entry.js +2 -0
  366. package/dist/core/p-dd3a9cb1.entry.js.map +1 -0
  367. package/dist/core/{p-94416b6b.entry.js → p-df05b999.entry.js} +2 -2
  368. package/dist/core/{p-94416b6b.entry.js.map → p-df05b999.entry.js.map} +1 -1
  369. package/dist/core/{p-44ee5375.entry.js → p-e3e0cf46.entry.js} +2 -2
  370. package/dist/core/p-e3e0cf46.entry.js.map +1 -0
  371. package/dist/core/p-e4b9221b.entry.js +2 -0
  372. package/dist/core/p-e4b9221b.entry.js.map +1 -0
  373. package/dist/core/{p-b3d93bc1.entry.js → p-e532fa26.entry.js} +2 -2
  374. package/dist/core/p-e89e5ec8.entry.js +2 -0
  375. package/dist/core/p-e89e5ec8.entry.js.map +1 -0
  376. package/dist/core/p-f08723ca.entry.js +2 -0
  377. package/dist/core/p-f08723ca.entry.js.map +1 -0
  378. package/dist/core/p-f4414801.entry.js +2 -0
  379. package/dist/core/p-f4414801.entry.js.map +1 -0
  380. package/dist/core/p-f5d1e747.entry.js +2 -0
  381. package/dist/core/p-f5d1e747.entry.js.map +1 -0
  382. package/dist/core/{p-cc22644d.entry.js → p-fca3589b.entry.js} +2 -2
  383. package/dist/core/p-ffe923ae.entry.js +2 -0
  384. package/dist/core/p-ffe923ae.entry.js.map +1 -0
  385. package/dist/esm/core.js +1 -1
  386. package/dist/esm/{helpers-c326255f.js → helpers-d3091c8c.js} +6 -5
  387. package/dist/esm/helpers-d3091c8c.js.map +1 -0
  388. package/dist/esm/{helpers-a7b13f5a.js → helpers-d399f9c8.js} +14 -12
  389. package/dist/esm/helpers-d399f9c8.js.map +1 -0
  390. package/dist/esm/ic-accordion-group.entry.js +10 -10
  391. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  392. package/dist/esm/ic-accordion.entry.js +5 -5
  393. package/dist/esm/ic-accordion.entry.js.map +1 -1
  394. package/dist/esm/ic-alert.entry.js +7 -5
  395. package/dist/esm/ic-alert.entry.js.map +1 -1
  396. package/dist/esm/ic-back-to-top.entry.js +9 -6
  397. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  398. package/dist/esm/ic-badge.entry.js +2 -2
  399. package/dist/esm/ic-badge.entry.js.map +1 -1
  400. package/dist/esm/ic-breadcrumb-group.entry.js +43 -20
  401. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  402. package/dist/esm/ic-breadcrumb.entry.js +2 -2
  403. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  404. package/dist/esm/ic-button_3.entry.js +11 -13
  405. package/dist/esm/ic-button_3.entry.js.map +1 -1
  406. package/dist/esm/ic-card-horizontal.entry.js +23 -28
  407. package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
  408. package/dist/esm/ic-card-vertical.entry.js +26 -27
  409. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  410. package/dist/esm/ic-checkbox-group.entry.js +16 -5
  411. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  412. package/dist/esm/ic-checkbox.entry.js +5 -3
  413. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  414. package/dist/esm/ic-chip.entry.js +1 -1
  415. package/dist/esm/ic-classification-banner.entry.js +1 -1
  416. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  417. package/dist/esm/ic-data-row.entry.js +1 -1
  418. package/dist/esm/ic-data-table-title-bar.entry.js +7 -7
  419. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
  420. package/dist/esm/ic-data-table.entry.js +84 -26
  421. package/dist/esm/ic-data-table.entry.js.map +1 -1
  422. package/dist/esm/ic-date-input.entry.js +11 -10
  423. package/dist/esm/ic-date-input.entry.js.map +1 -1
  424. package/dist/esm/ic-date-picker.entry.js +9 -5
  425. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  426. package/dist/esm/ic-dialog.entry.js +4 -2
  427. package/dist/esm/ic-dialog.entry.js.map +1 -1
  428. package/dist/esm/ic-divider.entry.js +72 -8
  429. package/dist/esm/ic-divider.entry.js.map +1 -1
  430. package/dist/esm/ic-empty-state_2.entry.js +25 -11
  431. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  432. package/dist/esm/ic-footer-link-group.entry.js +3 -3
  433. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  434. package/dist/esm/ic-footer-link.entry.js +2 -2
  435. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  436. package/dist/esm/ic-footer.entry.js +2 -2
  437. package/dist/esm/ic-footer.entry.js.map +1 -1
  438. package/dist/esm/ic-hero.entry.js +2 -2
  439. package/dist/esm/ic-hero.entry.js.map +1 -1
  440. package/dist/esm/ic-horizontal-scroll.entry.js +15 -7
  441. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  442. package/dist/esm/ic-input-component-container_3.entry.js +14 -25
  443. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  444. package/dist/esm/ic-input-label_2.entry.js +21 -25
  445. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  446. package/dist/esm/ic-link.entry.js +3 -8
  447. package/dist/esm/ic-link.entry.js.map +1 -1
  448. package/dist/esm/ic-menu-group.entry.js +2 -2
  449. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  450. package/dist/esm/ic-menu-item.entry.js +18 -17
  451. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  452. package/dist/esm/ic-navigation-button.entry.js +7 -3
  453. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  454. package/dist/esm/ic-navigation-group.entry.js +7 -4
  455. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  456. package/dist/esm/ic-navigation-item.entry.js +58 -6
  457. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  458. package/dist/esm/ic-navigation-menu.entry.js +5 -4
  459. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  460. package/dist/esm/ic-page-header.entry.js +5 -3
  461. package/dist/esm/ic-page-header.entry.js.map +1 -1
  462. package/dist/esm/ic-pagination_4.entry.js +52 -50
  463. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  464. package/dist/esm/ic-popover-menu.entry.js +9 -9
  465. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  466. package/dist/esm/ic-radio-group.entry.js +14 -5
  467. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  468. package/dist/esm/ic-radio-option.entry.js +8 -4
  469. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  470. package/dist/esm/ic-search-bar.entry.js +12 -9
  471. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  472. package/dist/esm/ic-side-navigation.entry.js +13 -8
  473. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  474. package/dist/esm/ic-status-tag.entry.js +5 -4
  475. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  476. package/dist/esm/ic-step.entry.js +1 -1
  477. package/dist/esm/ic-stepper.entry.js +1 -1
  478. package/dist/esm/ic-switch.entry.js +2 -2
  479. package/dist/esm/ic-switch.entry.js.map +1 -1
  480. package/dist/esm/ic-tab-context.entry.js +2 -1
  481. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  482. package/dist/esm/ic-tab-group.entry.js +3 -19
  483. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  484. package/dist/esm/ic-tab-panel.entry.js +1 -1
  485. package/dist/esm/ic-tab.entry.js +1 -1
  486. package/dist/esm/ic-theme.entry.js +1 -1
  487. package/dist/esm/ic-toast.entry.js +3 -3
  488. package/dist/esm/ic-toast.entry.js.map +1 -1
  489. package/dist/esm/ic-toggle-button-group.entry.js +29 -5
  490. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  491. package/dist/esm/ic-toggle-button.entry.js +9 -6
  492. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  493. package/dist/esm/ic-top-navigation.entry.js +6 -4
  494. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  495. package/dist/esm/ic-tree-item.entry.js +8 -6
  496. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  497. package/dist/esm/ic-tree-view.entry.js +13 -13
  498. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  499. package/dist/esm/ic-typography.entry.js +2 -2
  500. package/dist/esm/ic-typography.entry.js.map +1 -1
  501. package/dist/esm/loader.js +1 -1
  502. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +6 -2
  503. package/dist/types/components/ic-data-table/ic-data-table.d.ts +17 -5
  504. package/dist/types/components/ic-data-table/story-data.d.ts +26 -0
  505. package/dist/types/components/ic-date-input/ic-date-input.d.ts +5 -1
  506. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +5 -1
  507. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +10 -5
  508. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +5 -5
  509. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +6 -6
  510. package/dist/types/components.d.ts +75 -28
  511. package/dist/types/utils/types.d.ts +3 -1
  512. package/hydrate/index.js +742 -440
  513. package/package.json +3 -3
  514. package/dist/cjs/helpers-36cdc6cb.js.map +0 -1
  515. package/dist/cjs/helpers-a67ad3a4.js.map +0 -1
  516. package/dist/core/p-036d251b.entry.js +0 -2
  517. package/dist/core/p-036d251b.entry.js.map +0 -1
  518. package/dist/core/p-043cf5de.js.map +0 -1
  519. package/dist/core/p-044689ef.entry.js.map +0 -1
  520. package/dist/core/p-095da817.entry.js +0 -2
  521. package/dist/core/p-095da817.entry.js.map +0 -1
  522. package/dist/core/p-13d2db9b.entry.js +0 -2
  523. package/dist/core/p-13d2db9b.entry.js.map +0 -1
  524. package/dist/core/p-13e01a1e.entry.js.map +0 -1
  525. package/dist/core/p-1ae71507.entry.js +0 -2
  526. package/dist/core/p-1ae71507.entry.js.map +0 -1
  527. package/dist/core/p-2200ca85.entry.js +0 -2
  528. package/dist/core/p-2200ca85.entry.js.map +0 -1
  529. package/dist/core/p-2257f5e8.entry.js +0 -2
  530. package/dist/core/p-2257f5e8.entry.js.map +0 -1
  531. package/dist/core/p-266098ee.entry.js +0 -2
  532. package/dist/core/p-266098ee.entry.js.map +0 -1
  533. package/dist/core/p-26613dbd.entry.js.map +0 -1
  534. package/dist/core/p-283a2274.entry.js +0 -2
  535. package/dist/core/p-283a2274.entry.js.map +0 -1
  536. package/dist/core/p-2a3bd99a.entry.js +0 -2
  537. package/dist/core/p-2a3bd99a.entry.js.map +0 -1
  538. package/dist/core/p-42f88966.entry.js +0 -2
  539. package/dist/core/p-42f88966.entry.js.map +0 -1
  540. package/dist/core/p-44ee5375.entry.js.map +0 -1
  541. package/dist/core/p-48a78218.entry.js +0 -2
  542. package/dist/core/p-48a78218.entry.js.map +0 -1
  543. package/dist/core/p-4e316ae5.entry.js +0 -2
  544. package/dist/core/p-4e316ae5.entry.js.map +0 -1
  545. package/dist/core/p-50dd2744.entry.js +0 -2
  546. package/dist/core/p-50dd2744.entry.js.map +0 -1
  547. package/dist/core/p-51ea45cb.entry.js.map +0 -1
  548. package/dist/core/p-5458d818.entry.js +0 -2
  549. package/dist/core/p-5458d818.entry.js.map +0 -1
  550. package/dist/core/p-5ad1a7fb.entry.js +0 -2
  551. package/dist/core/p-5ad1a7fb.entry.js.map +0 -1
  552. package/dist/core/p-5b061abc.entry.js +0 -2
  553. package/dist/core/p-5b061abc.entry.js.map +0 -1
  554. package/dist/core/p-5cfb5821.entry.js +0 -2
  555. package/dist/core/p-5cfb5821.entry.js.map +0 -1
  556. package/dist/core/p-6727166b.entry.js +0 -2
  557. package/dist/core/p-6727166b.entry.js.map +0 -1
  558. package/dist/core/p-6dc00a8f.entry.js +0 -2
  559. package/dist/core/p-6dc00a8f.entry.js.map +0 -1
  560. package/dist/core/p-6dffaac0.entry.js +0 -2
  561. package/dist/core/p-6dffaac0.entry.js.map +0 -1
  562. package/dist/core/p-6fd89ed5.entry.js +0 -2
  563. package/dist/core/p-6fd89ed5.entry.js.map +0 -1
  564. package/dist/core/p-7b90f0ae.entry.js +0 -2
  565. package/dist/core/p-7b90f0ae.entry.js.map +0 -1
  566. package/dist/core/p-7e1603cc.entry.js.map +0 -1
  567. package/dist/core/p-7e5b0fff.entry.js +0 -2
  568. package/dist/core/p-7e5b0fff.entry.js.map +0 -1
  569. package/dist/core/p-82aa8136.entry.js.map +0 -1
  570. package/dist/core/p-83b4efe2.entry.js +0 -2
  571. package/dist/core/p-83b4efe2.entry.js.map +0 -1
  572. package/dist/core/p-83e4d955.entry.js +0 -2
  573. package/dist/core/p-83e4d955.entry.js.map +0 -1
  574. package/dist/core/p-86b608b5.entry.js +0 -2
  575. package/dist/core/p-86b608b5.entry.js.map +0 -1
  576. package/dist/core/p-89be0a21.js.map +0 -1
  577. package/dist/core/p-8bec76d1.entry.js.map +0 -1
  578. package/dist/core/p-94141606.entry.js +0 -2
  579. package/dist/core/p-94141606.entry.js.map +0 -1
  580. package/dist/core/p-a4439688.entry.js +0 -2
  581. package/dist/core/p-a4439688.entry.js.map +0 -1
  582. package/dist/core/p-a8106c56.entry.js +0 -2
  583. package/dist/core/p-a8106c56.entry.js.map +0 -1
  584. package/dist/core/p-affd7f55.entry.js +0 -2
  585. package/dist/core/p-affd7f55.entry.js.map +0 -1
  586. package/dist/core/p-bac2beeb.entry.js +0 -2
  587. package/dist/core/p-bac2beeb.entry.js.map +0 -1
  588. package/dist/core/p-c29b2b48.entry.js +0 -2
  589. package/dist/core/p-c29b2b48.entry.js.map +0 -1
  590. package/dist/core/p-c40c57ee.entry.js +0 -2
  591. package/dist/core/p-c40c57ee.entry.js.map +0 -1
  592. package/dist/core/p-c6a62d1b.entry.js +0 -2
  593. package/dist/core/p-c6a62d1b.entry.js.map +0 -1
  594. package/dist/core/p-cfd81370.entry.js +0 -2
  595. package/dist/core/p-cfd81370.entry.js.map +0 -1
  596. package/dist/core/p-d53fb899.entry.js +0 -2
  597. package/dist/core/p-d53fb899.entry.js.map +0 -1
  598. package/dist/core/p-d5e9cf81.entry.js +0 -2
  599. package/dist/core/p-d5e9cf81.entry.js.map +0 -1
  600. package/dist/core/p-d7632baf.entry.js +0 -2
  601. package/dist/core/p-d7632baf.entry.js.map +0 -1
  602. package/dist/core/p-dcccd9c1.entry.js +0 -2
  603. package/dist/core/p-dcccd9c1.entry.js.map +0 -1
  604. package/dist/core/p-edfd0946.entry.js +0 -2
  605. package/dist/core/p-edfd0946.entry.js.map +0 -1
  606. package/dist/core/p-f1842a68.entry.js +0 -2
  607. package/dist/core/p-f1842a68.entry.js.map +0 -1
  608. package/dist/core/p-f8c1d7e8.entry.js +0 -2
  609. package/dist/core/p-f8c1d7e8.entry.js.map +0 -1
  610. package/dist/core/p-fc2f336d.entry.js +0 -2
  611. package/dist/core/p-fc2f336d.entry.js.map +0 -1
  612. package/dist/esm/helpers-a7b13f5a.js.map +0 -1
  613. package/dist/esm/helpers-c326255f.js.map +0 -1
  614. /package/dist/core/{p-fbb5c8f2.entry.js.map → p-3106c4fd.entry.js.map} +0 -0
  615. /package/dist/core/{p-878df16f.entry.js.map → p-91cf88d6.entry.js.map} +0 -0
  616. /package/dist/core/{p-7aa6b76e.entry.js.map → p-9da6df82.entry.js.map} +0 -0
  617. /package/dist/core/{p-80b296cd.entry.js.map → p-bd5aada7.entry.js.map} +0 -0
  618. /package/dist/core/{p-24d03bbd.entry.js.map → p-be7bc371.entry.js.map} +0 -0
  619. /package/dist/core/{p-b3d93bc1.entry.js.map → p-e532fa26.entry.js.map} +0 -0
  620. /package/dist/core/{p-cc22644d.entry.js.map → p-fca3589b.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as a,h as i,H as c,g as t}from"./p-8455d1bb.js";import{b as e,g as s,d as r,a as o}from"./p-043cf5de.js";const d="@media (prefers-reduced-motion: no-preference){:host(.ic-badge-show){animation:expand var(--ic-transition-duration-slow)}:host(.ic-badge-hide){animation:shrink var(--ic-transition-duration-slow)}}:host{display:flex;height:var(--ic-space-md);min-width:var(--ic-space-md);width:-moz-fit-content;width:fit-content;border-radius:calc(2 * var(--ic-space-xxl));position:absolute}:host ic-typography{--ic-typography-color:var(--ic-badge-text)}:host(.ic-badge-neutral){background-color:var(--ic-badge-neutral) !important}:host(.ic-badge-light) ic-typography{--ic-typography-color:var(--ic-badge-light-text)}:host(.ic-badge-light) ::slotted(*){fill:var(--ic-badge-light-icon)}:host(.ic-badge-info){background-color:var(--ic-badge-info) !important}:host(.ic-badge-light){background-color:var(--ic-badge-light) !important}:host(.ic-badge-warning){background-color:var(--ic-badge-warning) !important}:host(.ic-badge-warning) ic-typography{--ic-typography-color:var(--ic-badge-warning-text)}:host(.ic-badge-warning) ::slotted(*){fill:var(--ic-badge-warning-icon)}:host(.ic-badge-error){background-color:var(--ic-badge-error) !important}:host(.ic-badge-success){background-color:var(--ic-badge-success) !important}:host(.ic-badge-small){height:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host(.ic-badge-large){height:calc(var(--ic-space-md) + var(--ic-space-xxs));min-width:calc(var(--ic-space-md) + var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-medium){height:var(--ic-space-xs);width:var(--ic-space-xs);min-width:var(--ic-space-xs)}:host(.ic-badge-dot.ic-badge-small){height:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs));min-width:calc(var(--ic-space-xxs) + var(--ic-space-xxxs))}:host(.ic-badge-dot.ic-badge-large){height:var(--ic-space-sm);width:var(--ic-space-sm);min-width:var(--ic-space-sm)}:host ::slotted(*){fill:var(--ic-badge-icon)}:host(.ic-badge-foreground-dark) ::slotted(*){fill:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ::slotted(*){fill:white}:host(.ic-badge-foreground-dark) ic-typography{--ic-typography-color:var(--ic-color-text-primary-light)}:host(.ic-badge-foreground-light) ic-typography{--ic-typography-color:var(--ic-color-primary-text-dark)}:host(.ic-badge-text) ic-typography{align-self:center;padding:0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-text.ic-badge-small) ic-typography{padding:0 0.2132rem}:host(.ic-badge-text.ic-badge-large) ic-typography{padding:0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px)}:host(.ic-badge-icon) ::slotted(svg){width:var(--ic-space-sm);height:var(--ic-space-sm);padding:var(--ic-space-xxxs)}:host(.ic-badge-icon.ic-badge-small) ::slotted(svg){width:var(--ic-space-xs);height:var(--ic-space-xs)}:host(.ic-badge-icon.ic-badge-large) ::slotted(svg){width:calc(var(--ic-space-sm) + var(--ic-space-xxxs));height:calc(var(--ic-space-sm) + var(--ic-space-xxxs));padding:calc(var(--ic-space-xxxs) + var(--ic-space-1px))}:host(.ic-badge-far){top:calc(-1 * var(--ic-space-xs));right:calc(-1 * var(--ic-space-xs))}:host(.ic-badge-far.ic-badge-small),:host(.ic-badge-dot.ic-badge-far.ic-badge-large){top:calc(-1 * var(--ic-space-xxs));right:calc(-1 * var(--ic-space-xxs))}:host(.ic-badge-dot.ic-badge-far),:host(.ic-badge-dot.ic-badge-far.ic-badge-small){top:calc(-1 * var(--ic-space-xxxs));right:calc(-1 * var(--ic-space-xxxs))}:host(.ic-badge-near){top:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));right:calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)))}:host(.ic-badge-dot.ic-badge-near){top:calc(-1 * var(--ic-space-1px));right:calc(-1 * var(--ic-space-1px))}:host(.ic-badge-inline){position:static}:host(.ic-badge-hide){visibility:hidden !important;transition:visibility var(--ic-transition-duration-slow)}.sr-only{position:absolute;left:-9999px}@keyframes expand{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes shrink{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}";const h=class{constructor(i){a(this,i);this.ariaLabel=null;this.setBadgeColour=()=>{const a=e(this.customColor);if(a){const{r:i,g:c,b:t,a:e}=a;this.el.style.backgroundColor=`rgba(${i}, ${c}, ${t}, ${e})`;this.foregroundColour=s((i*299+c*587+t*114)/1e3)}};this.getLabel=()=>this.maxNumber&&Number(this.label)>this.maxNumber?`${this.maxNumber}+`:this.label;this.setAccessibleLabel=()=>{const a=this.el.parentElement;const i=this.isAccessibleLabelDefined()?this.accessibleLabel:this.label||"with badge being displayed";if(a){const{tagName:c}=a;if(c!=="IC-CARD"&&(c!=="IC-TAB"||c==="IC-TAB"&&this.parentAriaLabel)){const c=this.parentAriaLabel?`${this.parentAriaLabel} ,`:"";a.ariaLabel=this.visible?`${c} ${i}`:undefined}else{this.ariaLabel=`, ${i}`}}};this.isAccessibleLabelDefined=()=>r(this.accessibleLabel)&&this.accessibleLabel!==null;this.accessibleLabel=undefined;this.customColor=null;this.maxNumber=undefined;this.position="far";this.size="medium";this.label=undefined;this.theme="inherit";this.type="text";this.variant="neutral";this.visible=true}accessibleLabelHandler(){this.setAccessibleLabel()}customColorHandler(){this.variant==="custom"&&this.setBadgeColour()}variantHandler(){if(this.variant==="custom"){this.setBadgeColour()}}visibleHandler(){this.setAccessibleLabel()}componentWillLoad(){var a;this.variant==="custom"&&this.setBadgeColour();const i=(a=this.el.parentElement)===null||a===void 0?void 0:a.ariaLabel;if(i)this.parentAriaLabel=i;this.setAccessibleLabel()}componentDidLoad(){this.type==="text"&&o([{prop:this.label,propName:"label"}],"Badge")}render(){const{ariaLabel:a,el:t,foregroundColour:e,getLabel:s,position:r,size:o,label:d,type:h,variant:l,visible:g,theme:n}=this;return i(c,{class:{[`ic-badge-${r}`]:true,[`ic-badge-${o}`]:true,[`ic-badge-${l}`]:true,[`ic-badge-${h}`]:true,[`ic-badge-foreground-${e}`]:e!==null&&l==="custom",[`${g?"ic-badge-show":"ic-badge-hide"}`]:true,[`ic-theme-${n}`]:n!=="inherit"},id:t.id||null,"aria-label":a,role:"status"},h==="icon"&&i("slot",{name:"badge-icon"}),h==="text"&&d&&i("ic-typography",{variant:o==="small"?"badge-small":"badge"},s()),h==="dot"&&i("span",{class:"sr-only"},"badge"))}static get delegatesFocus(){return true}get el(){return t(this)}static get watchers(){return{accessibleLabel:["accessibleLabelHandler"],customColor:["customColorHandler"],variant:["variantHandler"],visible:["visibleHandler"]}}};h.style=d;export{h as ic_badge};
2
- //# sourceMappingURL=p-13d2db9b.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icBadgeCss","Badge","constructor","hostRef","this","ariaLabel","setBadgeColour","colorRGBA","convertToRGBA","customColor","r","g","b","a","el","style","backgroundColor","foregroundColour","getThemeForegroundColor","getLabel","maxNumber","Number","label","setAccessibleLabel","parentEl","parentElement","defaultAriaLabel","isAccessibleLabelDefined","accessibleLabel","tagName","parentAriaLabel","ariaLabelPrefix","visible","undefined","isPropDefined","position","size","theme","type","variant","accessibleLabelHandler","customColorHandler","variantHandler","visibleHandler","componentWillLoad","_a","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","render","h","Host","class","id","role","name","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-badge/ic-badge.css?tag=ic-badge&encapsulation=shadow","../web-components/dist/collection/components/ic-badge/ic-badge.js"],"sourcesContent":["@media (prefers-reduced-motion: no-preference) {\n :host(.ic-badge-show) {\n animation: expand var(--ic-transition-duration-slow);\n }\n\n :host(.ic-badge-hide) {\n animation: shrink var(--ic-transition-duration-slow);\n }\n}\n\n:host {\n display: flex;\n height: var(--ic-space-md);\n min-width: var(--ic-space-md);\n width: -moz-fit-content;\n width: fit-content;\n border-radius: calc(2 * var(--ic-space-xxl));\n position: absolute;\n}\n\n:host ic-typography {\n --ic-typography-color: var(--ic-badge-text);\n}\n\n:host(.ic-badge-neutral) {\n background-color: var(--ic-badge-neutral) !important;\n}\n\n:host(.ic-badge-light) ic-typography {\n --ic-typography-color: var(--ic-badge-light-text);\n}\n\n:host(.ic-badge-light) ::slotted(*) {\n fill: var(--ic-badge-light-icon);\n}\n\n:host(.ic-badge-info) {\n background-color: var(--ic-badge-info) !important;\n}\n\n:host(.ic-badge-light) {\n background-color: var(--ic-badge-light) !important;\n}\n\n:host(.ic-badge-warning) {\n background-color: var(--ic-badge-warning) !important;\n}\n\n:host(.ic-badge-warning) ic-typography {\n --ic-typography-color: var(--ic-badge-warning-text);\n}\n\n:host(.ic-badge-warning) ::slotted(*) {\n fill: var(--ic-badge-warning-icon);\n}\n\n:host(.ic-badge-error) {\n background-color: var(--ic-badge-error) !important;\n}\n\n:host(.ic-badge-success) {\n background-color: var(--ic-badge-success) !important;\n}\n\n:host(.ic-badge-small) {\n height: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host(.ic-badge-large) {\n height: calc(var(--ic-space-md) + var(--ic-space-xxs));\n min-width: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-medium) {\n height: var(--ic-space-xs);\n width: var(--ic-space-xs);\n min-width: var(--ic-space-xs);\n}\n\n:host(.ic-badge-dot.ic-badge-small) {\n height: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n min-width: calc(var(--ic-space-xxs) + var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-dot.ic-badge-large) {\n height: var(--ic-space-sm);\n width: var(--ic-space-sm);\n min-width: var(--ic-space-sm);\n}\n\n:host ::slotted(*) {\n fill: var(--ic-badge-icon);\n}\n\n:host(.ic-badge-foreground-dark) ::slotted(*) {\n fill: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ::slotted(*) {\n fill: white;\n}\n\n:host(.ic-badge-foreground-dark) ic-typography {\n --ic-typography-color: var(--ic-color-text-primary-light);\n}\n\n:host(.ic-badge-foreground-light) ic-typography {\n --ic-typography-color: var(--ic-color-primary-text-dark);\n}\n\n:host(.ic-badge-text) ic-typography {\n align-self: center;\n padding: 0 calc((var(--ic-space-xs) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-text.ic-badge-small) ic-typography {\n padding: 0 0.2132rem;\n}\n\n:host(.ic-badge-text.ic-badge-large) ic-typography {\n padding: 0 calc((var(--ic-space-sm) + var(--ic-space-1px)) / 2)\n var(--ic-space-1px);\n}\n\n:host(.ic-badge-icon) ::slotted(svg) {\n width: var(--ic-space-sm);\n height: var(--ic-space-sm);\n padding: var(--ic-space-xxxs);\n}\n\n:host(.ic-badge-icon.ic-badge-small) ::slotted(svg) {\n width: var(--ic-space-xs);\n height: var(--ic-space-xs);\n}\n\n:host(.ic-badge-icon.ic-badge-large) ::slotted(svg) {\n width: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n height: calc(var(--ic-space-sm) + var(--ic-space-xxxs));\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px));\n}\n\n:host(.ic-badge-far) {\n top: calc(-1 * var(--ic-space-xs));\n right: calc(-1 * var(--ic-space-xs));\n}\n\n:host(.ic-badge-far.ic-badge-small),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-large) {\n top: calc(-1 * var(--ic-space-xxs));\n right: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-badge-dot.ic-badge-far),\n:host(.ic-badge-dot.ic-badge-far.ic-badge-small) {\n top: calc(-1 * var(--ic-space-xxxs));\n right: calc(-1 * var(--ic-space-xxxs));\n}\n\n:host(.ic-badge-near) {\n top: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n right: calc(-1 * calc(var(--ic-space-xxs) + var(--ic-space-1px)));\n}\n\n:host(.ic-badge-dot.ic-badge-near) {\n top: calc(-1 * var(--ic-space-1px));\n right: calc(-1 * var(--ic-space-1px));\n}\n\n:host(.ic-badge-inline) {\n position: static;\n}\n\n:host(.ic-badge-hide) {\n visibility: hidden !important;\n transition: visibility var(--ic-transition-duration-slow);\n}\n\n.sr-only {\n position: absolute;\n left: -9999px;\n}\n\n@keyframes expand {\n from {\n opacity: 0;\n transform: scale(0);\n }\n\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@keyframes shrink {\n from {\n opacity: 1;\n transform: scale(1);\n }\n\n to {\n opacity: 0;\n transform: scale(0);\n }\n}\n","import { Host, h } from \"@stencil/core\";\nimport { convertToRGBA, getThemeForegroundColor, isPropDefined, onComponentRequiredPropUndefined, } from \"../../utils/helpers\";\n/**\n * @slot badge-icon - Icon will be rendered inside the badge if type is set to icon.\n */\nexport class Badge {\n constructor() {\n this.ariaLabel = null;\n this.setBadgeColour = () => {\n const colorRGBA = convertToRGBA(this.customColor);\n if (colorRGBA) {\n const { r, g, b, a } = colorRGBA;\n this.el.style.backgroundColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n this.foregroundColour = getThemeForegroundColor((r * 299 + g * 587 + b * 114) / 1000);\n }\n };\n this.getLabel = () => this.maxNumber && Number(this.label) > this.maxNumber\n ? `${this.maxNumber}+`\n : this.label;\n // Set aria-label on badge and / or parent element\n // Aria-describedby seems to not work, probably due to shadow DOM\n this.setAccessibleLabel = () => {\n const parentEl = this.el.parentElement;\n const defaultAriaLabel = this.isAccessibleLabelDefined()\n ? this.accessibleLabel\n : this.label || \"with badge being displayed\";\n if (parentEl) {\n const { tagName } = parentEl;\n if (tagName !== \"IC-CARD\" &&\n (tagName !== \"IC-TAB\" || (tagName === \"IC-TAB\" && this.parentAriaLabel))) {\n const ariaLabelPrefix = this.parentAriaLabel\n ? `${this.parentAriaLabel} ,`\n : \"\";\n parentEl.ariaLabel = this.visible\n ? `${ariaLabelPrefix} ${defaultAriaLabel}`\n : undefined;\n }\n else {\n this.ariaLabel = `, ${defaultAriaLabel}`;\n }\n }\n };\n this.isAccessibleLabelDefined = () => isPropDefined(this.accessibleLabel) && this.accessibleLabel !== null;\n this.accessibleLabel = undefined;\n this.customColor = null;\n this.maxNumber = undefined;\n this.position = \"far\";\n this.size = \"medium\";\n this.label = undefined;\n this.theme = \"inherit\";\n this.type = \"text\";\n this.variant = \"neutral\";\n this.visible = true;\n }\n accessibleLabelHandler() {\n this.setAccessibleLabel();\n }\n customColorHandler() {\n this.variant === \"custom\" && this.setBadgeColour();\n }\n variantHandler() {\n if (this.variant === \"custom\") {\n this.setBadgeColour();\n }\n }\n visibleHandler() {\n this.setAccessibleLabel();\n }\n componentWillLoad() {\n var _a;\n this.variant === \"custom\" && this.setBadgeColour();\n const ariaLabel = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.ariaLabel;\n if (ariaLabel)\n this.parentAriaLabel = ariaLabel;\n this.setAccessibleLabel();\n }\n componentDidLoad() {\n this.type === \"text\" &&\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Badge\");\n }\n render() {\n const { ariaLabel, el, foregroundColour, getLabel, position, size, label, type, variant, visible, theme, } = this;\n return (h(Host, { class: {\n [`ic-badge-${position}`]: true,\n [`ic-badge-${size}`]: true,\n [`ic-badge-${variant}`]: true,\n [`ic-badge-${type}`]: true,\n [`ic-badge-foreground-${foregroundColour}`]: foregroundColour !== null && variant === \"custom\",\n [`${visible ? \"ic-badge-show\" : \"ic-badge-hide\"}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }, id: el.id || null, \"aria-label\": ariaLabel, role: \"status\" }, type === \"icon\" && h(\"slot\", { name: \"badge-icon\" }), type === \"text\" && label && (h(\"ic-typography\", { variant: size === \"small\" ? \"badge-small\" : \"badge\" }, getLabel())), type === \"dot\" && h(\"span\", { class: \"sr-only\" }, \"badge\")));\n }\n static get is() { return \"ic-badge\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-badge.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-badge.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 of the badge component to provide context for screen reader users.\"\n },\n \"attribute\": \"accessible-label\",\n \"reflect\": false\n },\n \"customColor\": {\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 custom badge colour. This will only style the badge component if variant=\\\"custom\\\".\\nCan 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\": \"custom-color\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"maxNumber\": {\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 maximum number shown on the badge appended with a +.\\nThis will only be displayed if type=\\\"text\\\" and label is not empty.\"\n },\n \"attribute\": \"max-number\",\n \"reflect\": false\n },\n \"position\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcBadgePositions\",\n \"resolved\": \"\\\"far\\\" | \\\"inline\\\" | \\\"near\\\"\",\n \"references\": {\n \"IcBadgePositions\": {\n \"location\": \"import\",\n \"path\": \"./ic-badge.types\",\n \"id\": \"src/components/ic-badge/ic-badge.types.ts::IcBadgePositions\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The positioning of the badge in reference to the parent element.\"\n },\n \"attribute\": \"position\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"far\\\"\"\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 badge to be displayed.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\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 text displayed in the badge. This will only be displayed if type=\\\"text\\\".\"\n },\n \"attribute\": \"label\",\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 \"type\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcBadgeTypes\",\n \"resolved\": \"\\\"dot\\\" | \\\"icon\\\" | \\\"text\\\"\",\n \"references\": {\n \"IcBadgeTypes\": {\n \"location\": \"import\",\n \"path\": \"./ic-badge.types\",\n \"id\": \"src/components/ic-badge/ic-badge.types.ts::IcBadgeTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The type of badge to be displayed.\"\n },\n \"attribute\": \"type\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"text\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcBadgeVariants\",\n \"resolved\": \"\\\"custom\\\" | \\\"error\\\" | \\\"info\\\" | \\\"light\\\" | \\\"neutral\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcBadgeVariants\": {\n \"location\": \"import\",\n \"path\": \"./ic-badge.types\",\n \"id\": \"src/components/ic-badge/ic-badge.types.ts::IcBadgeVariants\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the badge to be displayed.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"neutral\\\"\"\n },\n \"visible\": {\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 badge will be displayed.\"\n },\n \"attribute\": \"visible\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"accessibleLabel\",\n \"methodName\": \"accessibleLabelHandler\"\n }, {\n \"propName\": \"customColor\",\n \"methodName\": \"customColorHandler\"\n }, {\n \"propName\": \"variant\",\n \"methodName\": \"variantHandler\"\n }, {\n \"propName\": \"visible\",\n \"methodName\": \"visibleHandler\"\n }];\n }\n}\n//# sourceMappingURL=ic-badge.js.map\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icPopoverMenuCss","PopoverMenu","constructor","hostRef","this","ARIA_LABEL","popoverMenuEls","setButtonFocus","_a","currentFocus","focus","findAnchorEl","anchor","anchorElement","submenuId","undefined","console","error","document","querySelector","indexOf","isNotPopoverMenuEl","ev","id","tagName","target","getNextItemToSelect","currentItem","movingDown","numButtons","length","nextItem","addMenuItems","elements","i","el","push","groupSlotWrapper","shadowRoot","menuGroupElements","getSlotElements","getMenuAriaLabel","ariaLabel","getAttribute","isPropDefined","submenuLevel","parentLabel","handleBackButtonClick","parentPopover","openFromChild","open","initPopperJS","popperInstance","createPopper","anchorEl","placement","modifiers","name","options","offset","fallbackPlacements","rootBoundary","openingFromChild","openingFromParent","theme","watchOpenHandler","some","menuItem","unshift","backButton","setTimeout","destroy","disconnectedCallback","componentDidLoad","slotWrapper","popoverMenuElements","componentWillRender","componentDidRender","handleMenuItemClick","detail","hasSubMenu","label","closeMenu","handleSubmenuChange","childEl","submenuTriggerFor","openFromParent","handleClick","handleKeyDown","key","preventDefault","blur","setFocusToAnchor","icPopoverClosed","emit","render","h","Host","class","menu","tabindex","ref","onClick","slot","viewBox","fill","xmlns","d","variant","role","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-popover-menu/ic-popover-menu.css?tag=ic-popover-menu&encapsulation=shadow","../web-components/dist/collection/components/ic-popover-menu/ic-popover-menu.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-popover: z-index of popover menu. \n* @prop --max-height: Maximum height of the popover menu.\n* @prop --popover-width: Default width of the popover menu.\n*/\n\n@media (prefers-reduced-motion: no-preference) {\n :host .opening-from-parent {\n animation: slide-in var(--ic-transition-duration-slow) ease-in-out;\n }\n\n :host .opening-from-child {\n animation: slide-out var(--ic-transition-duration-slow) ease-in-out;\n }\n}\n\n:host {\n border-radius: var(--ic-border-radius);\n color: var(--ic-popover-nav-text);\n\n --ic-typography-color: var(--ic-popover-nav-text);\n\n position: relative;\n z-index: var(--ic-z-index-popover);\n box-sizing: border-box;\n box-shadow: var(--ic-elevation-overlay);\n display: none;\n}\n\n:host(.on-dialog) {\n inset: auto !important;\n}\n\n:host(.on-dialog-fix-translate) {\n transform: translate(0, var(--ic-space-xs)) !important;\n}\n\n:host(.on-dialog-translate-y) {\n transform: translate(0, calc(-1 * var(--translate-y))) !important;\n}\n\n.menu {\n border: var(--ic-border-default);\n border-color: var(--ic-popover-border);\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-popover-background);\n visibility: hidden;\n height: 0;\n}\n\n.button {\n text-decoration: none;\n list-style-type: none;\n}\n\n:host(:focus-within) {\n box-shadow: var(--ic-border-focus);\n}\n\n.menu:focus-visible {\n outline: none;\n}\n\n:host(.ic-popover-menu-open) {\n display: block;\n min-width: calc(20rem - var(--ic-space-xl));\n width: var(--popover-width, 20rem);\n max-width: calc(100vw - var(--ic-space-xl));\n}\n\n:host(.ic-popover-menu-open) .menu {\n visibility: visible;\n height: -moz-fit-content;\n height: fit-content;\n max-height: var(--max-height, -moz-fit-content);\n max-height: var(--max-height, fit-content);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.parent-label {\n --ic-typography-color: var(--ic-popover-parent-label);\n\n margin: var(--ic-space-xs) var(--ic-space-xs) 0;\n}\n\n@keyframes slide-in {\n from {\n opacity: 0;\n transform: translateX(10rem);\n }\n\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n\n@keyframes slide-out {\n from {\n opacity: 0;\n transform: translateX(-10rem);\n }\n\n to {\n opacity: 1;\n transform: translateX(0);\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { getSlotElements, isPropDefined } from \"../../utils/helpers\";\nimport { createPopper } from \"@popperjs/core\";\nexport class PopoverMenu {\n constructor() {\n this.ARIA_LABEL = \"aria-label\";\n this.popoverMenuEls = [];\n this.setButtonFocus = () => {\n var _a;\n (_a = this.popoverMenuEls[this.currentFocus]) === null || _a === void 0 ? void 0 : _a.focus();\n };\n // Checks that the popover menu has an anchor\n this.findAnchorEl = (anchor) => {\n let anchorElement = null;\n if (!anchor) {\n this.submenuId === undefined &&\n console.error(\"No anchor specified for popover component\");\n }\n else {\n anchorElement = document.querySelector(anchor.indexOf(\"#\") === 0 ? anchor : \"#\" + anchor);\n if (anchorElement === null) {\n console.error(`Popover anchor element '${anchor}' not found`);\n }\n }\n return anchorElement;\n };\n this.isNotPopoverMenuEl = (ev) => {\n const { id, tagName } = ev.target;\n return (id !== this.anchor &&\n tagName !== \"IC-MENU-ITEM\" &&\n tagName !== \"IC-MENU-GROUP\" &&\n tagName !== \"IC-POPOVER-MENU\");\n };\n this.getNextItemToSelect = (currentItem, movingDown) => {\n const numButtons = this.popoverMenuEls.length - 1;\n if (currentItem < 1) {\n currentItem = 0;\n }\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n // Check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numButtons;\n }\n else if (nextItem > numButtons) {\n nextItem = 0;\n }\n return nextItem;\n };\n this.addMenuItems = (elements) => {\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n if (el.tagName === \"IC-MENU-ITEM\") {\n this.popoverMenuEls.push(el);\n }\n else if (el.tagName === \"IC-MENU-GROUP\") {\n const groupSlotWrapper = el.shadowRoot.querySelector(\"ul\");\n const menuGroupElements = getSlotElements(groupSlotWrapper);\n this.addMenuItems(menuGroupElements);\n }\n }\n };\n this.getMenuAriaLabel = () => {\n const ariaLabel = this.el.getAttribute(this.ARIA_LABEL);\n if (isPropDefined(this.submenuId)) {\n return `${ariaLabel}, within nested level ${this.submenuLevel} ${this.parentLabel} submenu,`;\n }\n else {\n return ariaLabel;\n }\n };\n this.handleBackButtonClick = () => {\n this.parentPopover.openFromChild();\n this.open = false;\n };\n this.initPopperJS = () => {\n this.popperInstance = createPopper(this.anchorEl, this.el, {\n placement: \"bottom-start\",\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [0, 4],\n },\n },\n {\n name: \"flip\",\n options: {\n fallbackPlacements: [\"top-start\", \"top-end\", \"bottom-end\"],\n rootBoundary: \"viewport\",\n },\n },\n ],\n });\n };\n this.openingFromChild = false;\n this.openingFromParent = false;\n this.anchor = undefined;\n this.parentLabel = undefined;\n this.parentPopover = undefined;\n this.submenuId = undefined;\n this.submenuLevel = 1;\n this.theme = \"inherit\";\n this.open = undefined;\n }\n watchOpenHandler() {\n if (this.open) {\n if (this.parentPopover !== undefined &&\n !this.popoverMenuEls.some((menuItem) => menuItem.id)) {\n this.popoverMenuEls.unshift(this.backButton);\n }\n this.currentFocus = 0;\n // Needed so that anchorEl isn't always focused\n setTimeout(this.setButtonFocus, 50);\n }\n else if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n }\n disconnectedCallback() {\n if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n }\n componentDidLoad() {\n const slotWrapper = this.el.shadowRoot.querySelector(\"ul.button\");\n const popoverMenuElements = getSlotElements(slotWrapper);\n if (popoverMenuElements !== null) {\n this.addMenuItems(popoverMenuElements);\n }\n if (this.submenuId === undefined &&\n this.el.getAttribute(this.ARIA_LABEL) === null) {\n console.error(`No aria-label specified for popover menu component - aria-label required`);\n }\n }\n componentWillRender() {\n this.anchorEl = this.findAnchorEl(this.anchor);\n }\n componentDidRender() {\n if (this.open && !this.popperInstance) {\n this.initPopperJS();\n }\n }\n handleMenuItemClick(ev) {\n if (!ev.detail.hasSubMenu && ev.detail.label !== \"Back\") {\n this.closeMenu();\n }\n }\n // This is listening for the event emitted when a menu item is acting as a trigger button\n handleSubmenuChange(ev) {\n // Finds the trigger menu item that has emitted the event\n const target = ev.target;\n this.open = false;\n // Find the popover menu that the menu item triggers (i.e. submenu-trigger-for === submenu-id).\n const childEl = document.querySelector(`ic-popover-menu[submenu-id=${target.submenuTriggerFor}]`);\n // Set the parent popover menu of the submenu and open the submenu\n childEl.parentPopover = this.el;\n childEl.anchor = this.anchor;\n childEl.ariaLabel = this.el.getAttribute(this.ARIA_LABEL);\n childEl.openFromParent();\n childEl.submenuLevel = this.submenuLevel + 1;\n // Set the label in the submenu using the label of the menu item that has emitted the event\n childEl.parentLabel = target.label;\n }\n handleClick(ev) {\n if (this.open && this.isNotPopoverMenuEl(ev)) {\n // If menu is open and the next click on the document is not a popover El, close the popover\n this.closeMenu();\n }\n }\n // Manages the keyboard navigation in the popover menu\n handleKeyDown(ev) {\n switch (ev.key) {\n case \"ArrowDown\":\n case \"ArrowUp\":\n ev.preventDefault();\n this.currentFocus = this.getNextItemToSelect(this.currentFocus, ev.key === \"ArrowDown\");\n this.setButtonFocus();\n break;\n case \"Home\":\n //Sets home focus as first element, or back button\n this.currentFocus = 0;\n this.setButtonFocus();\n break;\n case \"End\":\n //Sets end focus as last element\n this.currentFocus = this.popoverMenuEls.length - 1;\n this.setButtonFocus();\n break;\n case \"Escape\":\n case \"Tab\":\n ev.preventDefault();\n if (this.open) {\n this.closeMenu(true);\n this.el.blur();\n }\n break;\n }\n }\n /**\n * @internal Opens the menu from the child menu.\n */\n async openFromChild() {\n this.open = true;\n this.openingFromChild = true;\n setTimeout(() => (this.openingFromChild = false), 1000);\n }\n /**\n * @internal Opens the menu from the parent menu.\n */\n async openFromParent() {\n this.open = true;\n this.openingFromParent = true;\n setTimeout(() => (this.openingFromParent = false), 1000);\n }\n /**\n * @internal Close the menu, emit icPopoverClosed of the root popover\n * @param setFocusToAnchor when true return focus to anchor element when menu is closed\n */\n async closeMenu(setFocusToAnchor = false) {\n var _a;\n this.open = false;\n if (this.parentPopover) {\n this.parentPopover.closeMenu(setFocusToAnchor);\n }\n else {\n if (setFocusToAnchor) {\n (_a = this.anchorEl) === null || _a === void 0 ? void 0 : _a.focus();\n }\n this.icPopoverClosed.emit();\n }\n }\n render() {\n return (h(Host, { class: {\n [\"ic-popover-menu-open\"]: this.open,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n } }, h(\"div\", { id: this.parentPopover === undefined\n ? `ic-popover-submenu-${this.submenuId}`\n : \"\", class: {\n menu: true,\n }, tabindex: open ? \"0\" : \"-1\" }, h(\"div\", { class: {\n \"opening-from-parent\": this.openingFromParent,\n \"opening-from-child\": this.openingFromChild,\n } }, isPropDefined(this.submenuId) && (h(\"div\", null, h(\"ic-menu-item\", { class: \"ic-popover-submenu-back-button\", ref: (el) => (this.backButton = el), label: \"Back\", onClick: this.handleBackButtonClick, id: `ic-popover-submenu-back-button-${this.submenuLevel}` }, h(\"svg\", { slot: \"icon\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", class: \"submenu-back-icon\" }, h(\"path\", { d: \"M20 11H7.83L13.42 5.41L12 4L4 12L12 20L13.41 18.59L7.83 13H20V11Z\", fill: \"currentColor\" }))), h(\"ic-typography\", { variant: \"subtitle-small\", class: \"parent-label\" }, this.parentLabel))), h(\"ul\", { class: \"button\", \"aria-label\": this.getMenuAriaLabel(), role: \"menu\" }, h(\"slot\", null))))));\n }\n static get is() { return \"ic-popover-menu\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-popover-menu.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-popover-menu.css\"]\n };\n }\n static get properties() {\n return {\n \"anchor\": {\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 ID of the element the popover menu will anchor itself to. This is required unless the popover is a submenu.\"\n },\n \"attribute\": \"anchor\",\n \"reflect\": false\n },\n \"parentLabel\": {\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 \"name\": \"internal\",\n \"text\": \"The parent popover menu of a child popover menu.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"parent-label\",\n \"reflect\": false\n },\n \"parentPopover\": {\n \"type\": \"unknown\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"HTMLIcPopoverMenuElement\",\n \"resolved\": \"HTMLIcPopoverMenuElement\",\n \"references\": {\n \"HTMLIcPopoverMenuElement\": {\n \"location\": \"global\",\n \"id\": \"global::HTMLIcPopoverMenuElement\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"The parent popover menu of a child popover menu.\"\n }],\n \"text\": \"\"\n }\n },\n \"submenuId\": {\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 unique identifier for a popover submenu.\"\n },\n \"attribute\": \"submenu-id\",\n \"reflect\": false\n },\n \"submenuLevel\": {\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 \"name\": \"internal\",\n \"text\": \"The level of menu being displayed.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"submenu-level\",\n \"reflect\": false,\n \"defaultValue\": \"1\"\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 \"open\": {\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 popover menu will be displayed.\"\n },\n \"attribute\": \"open\",\n \"reflect\": true,\n \"defaultValue\": \"undefined\"\n }\n };\n }\n static get states() {\n return {\n \"openingFromChild\": {},\n \"openingFromParent\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icPopoverClosed\",\n \"name\": \"icPopoverClosed\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the popover menu is closed.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get methods() {\n return {\n \"openFromChild\": {\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\": \"\",\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Opens the menu from the child menu.\"\n }]\n }\n },\n \"openFromParent\": {\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\": \"\",\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Opens the menu from the parent menu.\"\n }]\n }\n },\n \"closeMenu\": {\n \"complexType\": {\n \"signature\": \"(setFocusToAnchor?: boolean) => Promise<void>\",\n \"parameters\": [{\n \"name\": \"setFocusToAnchor\",\n \"type\": \"boolean\",\n \"docs\": \"when true return focus to anchor element when menu is closed\"\n }],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"\",\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"Close the menu, emit icPopoverClosed of the root popover\"\n }, {\n \"name\": \"param\",\n \"text\": \"setFocusToAnchor when true return focus to anchor element when menu is closed\"\n }]\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"open\",\n \"methodName\": \"watchOpenHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"handleMenuItemClick\",\n \"method\": \"handleMenuItemClick\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"triggerPopoverMenuInstance\",\n \"method\": \"handleSubmenuChange\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }, {\n \"name\": \"click\",\n \"method\": \"handleClick\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"keydown\",\n \"method\": \"handleKeyDown\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-popover-menu.js.map\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,H as e,g as h}from"./p-8455d1bb.js";import{z as a,A as n,B as o,r,a as l,n as c,l as u,I as d}from"./p-043cf5de.js";const b=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.8327 5.34199L14.6577 4.16699L9.99935 8.82533L5.34102 4.16699L4.16602 5.34199L8.82435 10.0003L4.16602 14.6587L5.34102 15.8337L9.99935 11.1753L14.6577 15.8337L15.8327 14.6587L11.1743 10.0003L15.8327 5.34199Z" fill="currentColor"/>\n</svg>\n`;const f=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">\n <path d="M13.1292 11.8792H12.4708L12.2375 11.6542C13.0542 10.7042 13.5458 9.47083 13.5458 8.12916C13.5458 5.13749 11.1208 2.71249 8.12916 2.71249C5.13749 2.71249 2.71249 5.13749 2.71249 8.12916C2.71249 11.1208 5.13749 13.5458 8.12916 13.5458C9.47083 13.5458 10.7042 13.0542 11.6542 12.2375L11.8792 12.4708V13.1292L16.0458 17.2875L17.2875 16.0458L13.1292 11.8792ZM8.12916 11.8792C6.05416 11.8792 4.37916 10.2042 4.37916 8.12916C4.37916 6.05416 6.05416 4.37916 8.12916 4.37916C10.2042 4.37916 11.8792 6.05416 11.8792 8.12916C11.8792 10.2042 10.2042 11.8792 8.12916 11.8792Z" fill="currentColor"/>\n</svg>`;const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.ic-search-bar-search){--divider-height:1.5rem;--ic-input-label-helpertext-padding:var(--ic-space-xxs)}:host(.ic-search-bar-search.ic-search-bar-small){--divider-height:1rem}:host(.ic-search-bar-full-width){width:100%}:host(.ic-search-bar-search) .ic-button-disabled:hover{border-color:var(--ic-architectural-200)}:host(.ic-search-bar-search.ic-search-bar-disabled) .ic-button-disabled svg{color:var(--ic-architectural-200)}:host(.ic-search-bar-search) .ic-button-disabled svg{color:var(--ic-architectural-400)}.clear-button-container{align-items:center;margin-right:var(--ic-space-1px);display:none;visibility:hidden}.clear-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus,.clear-button:active{background-color:var(--ic-color-focus-inner);box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer);border-radius:0.25rem}.clear-button:focus,.clear-button:active *{fill:white}.clear-button-visible{visibility:visible;display:flex}.search-submit-button-container{display:flex;align-items:center}.search-submit-button-disabled .ic-tooltip-container{display:none !important}.search-submit-button:focus,.search-submit-button:active{background-color:var(--ic-color-focus-inner) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;border-radius:var(--ic-space-xxs)}.search-submit-button:focus,.search-submit-button:active *{fill:white}.divider{width:var(--ic-border-width);background-color:var(--ic-action-dark-pressed);height:var(--divider-height)}:host(.dark) .divider{background-color:var(--ic-architectural-200)}.menu-container{width:var(--input-width, 20rem);position:relative;top:var(--ic-space-xxxs)}.menu-container.fullwidth{width:100%}.no-results{cursor:not-allowed}.search-results-status{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);margin-bottom:calc(-1 * var(--ic-space-1px));margin-right:calc(-1 * var(--ic-space-1px));overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}';let m=0;const v=class{constructor(s){t(this,s);this.icChange=i(this,"icChange",7);this.icClear=i(this,"icClear",7);this.icInput=i(this,"icInput",7);this.icOptionSelect=i(this,"icOptionSelect",7);this.icMenuChange=i(this,"icMenuChange",7);this.icClearBlur=i(this,"icClearBlur",7);this.icRetryLoad=i(this,"icRetryLoad",7);this.icSubmitSearch=i(this,"icSubmitSearch",7);this.icSubmitSearchBlur=i(this,"icSubmitSearchBlur",7);this.icSearchBarBlur=i(this,"icSearchBarBlur",7);this.icSearchBarFocus=i(this,"icSearchBarFocus",7);this.assistiveHintEl=null;this.hasTimedOut=false;this.inputId=`ic-search-bar-input-${m++}`;this.menuCloseFromMenuChangeEvent=false;this.menuId=`${this.inputId}-menu`;this.preLoad=true;this.preventSubmit=false;this.prevNoOption=false;this.retryButtonClick=false;this.truncateValue=false;this.handleClear=t=>{const i=t;const s=t;if(s.type==="click"||i.code==="Enter"||i.code==="Space"){this.value="";this.inputEl.value="";this.loading=false;clearTimeout(this.timeoutTimer);this.filteredOptions=this.options;this.el.setFocus();this.icClear.emit();t.preventDefault();this.preventSubmit=true}};this.onInput=t=>{this.value=t.target.value;const i=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}];if(this.options.length>0){this.setMenuChange(true);this.preLoad=false;if(this.disableAutoFiltering===false){const t=a(this.options,false,this.value,"anywhere",this.labelField);this.filteredOptions=t.length>0?t:i}}if(!this.showClearButton){this.handleShowClearButton(true)}this.debounceAriaLiveUpdate()};this.onInputBlur=t=>{const i=t.target.value;const s=t.relatedTarget;this.icSearchBarBlur.emit({value:i,relatedTarget:s})};this.onInputFocus=t=>{const i=t.target.value;this.icSearchBarFocus.emit({value:i});this.handleShowClearButton(true)};this.handleClearBlur=t=>{const i=t.relatedTarget;this.icClearBlur.emit({relatedTarget:i});this.clearButtonFocused=false};this.handleSubmitSearchBlur=t=>{const i=t.relatedTarget;this.icSubmitSearchBlur.emit({relatedTarget:i});this.searchSubmitFocused=false};this.handleMouseDown=t=>{t.preventDefault()};this.handleSubmitSearchFocus=()=>{this.searchSubmitFocused=true};this.handleSubmitSearch=()=>{this.highlightedValue&&(this.value=this.highlightedValue);this.highlightedValue=undefined;this.icSubmitSearch.emit({value:this.value});const t=this.el.closest("FORM");if(this.searchSubmitButton&&!!t&&!this.preventSubmit){n(t,this.searchSubmitButton)}};this.handleSubmitSearchKeyDown=t=>{if(t.key===" "){t.preventDefault();this.handleSubmitSearch()}};this.handleRetry=t=>{this.retryViaKeyPress=t.detail.keyPressed==="Enter";this.icRetryLoad.emit({value:t.detail.value});this.triggerLoading();this.retryButtonClick=true};this.triggerLoading=()=>{const t=[{[this.labelField]:this.loadingLabel,[this.valueField]:"",loading:true}];if(this.filteredOptions!==t)this.filteredOptions=t;if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.filteredOptions=[{[this.labelField]:this.loadingErrorLabel,[this.valueField]:"",timedOut:true}]}),this.timeout)}};this.handleOptionSelect=t=>{if(t.detail.label===this.emptyOptionListText){this.el.setFocus();return}this.value=t.detail.value;this.icOptionSelect.emit({value:this.value})};this.handleMenuOptionHighlight=t=>{var i;const s=(i=t.detail.optionId)===null||i===void 0?void 0:i.replace(`${this.menuId}-`,"");s&&(this.highlightedValue=s);if(t.detail.optionId){this.ariaActiveDescendant=t.detail.optionId}else{this.ariaActiveDescendant=undefined}};this.handleMenuChange=t=>{this.setMenuChange(t.detail.open);if(!t.detail.open){this.handleMenuCloseFromMenuChange(true);if(t.detail.focusInput===undefined||t.detail.focusInput){this.el.setFocus()}}};this.setMenuChange=t=>{if(this.open!==t){this.open=t;this.icMenuChange.emit({open:t})}};this.handleHostFocus=()=>{if(this.options&&this.value&&!this.menuCloseFromMenuChangeEvent){this.setMenuChange(true)}this.handleTruncateValue(false);this.icSearchBarFocus.emit()};this.handleHostBlur=t=>{const i=t.relatedTarget;if(this.open&&this.options&&i!==this.menu&&!this.retryViaKeyPress&&!this.retryButtonClick){this.setMenuChange(false)}if(this.retryButtonClick||this.retryViaKeyPress){this.inputEl.setFocus()}this.handleShowClearButton(false);this.handleMenuCloseFromMenuChange(false);this.handleTruncateValue(true);this.icSearchBarBlur.emit({relatedTarget:i,value:this.value});this.retryViaKeyPress=false;this.retryButtonClick=false};this.handleShowClearButton=t=>{this.showClearButton=t};this.handleFocusClearButton=()=>{this.clearButtonFocused=true};this.handleMenuCloseFromMenuChange=t=>{this.menuCloseFromMenuChangeEvent=t};this.handleTruncateValue=t=>{this.truncateValue=t};this.renderAssistiveHintEl=()=>{var t,i;const s=(i=(t=this.el.shadowRoot.querySelector("ic-text-field"))===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(`#${this.inputId}`);if(s&&Object.keys(s).length>0&&this.hasOptionsOrFilterDisabled()){this.assistiveHintEl=document.createElement("span");this.assistiveHintEl.innerText=this.assistiveHintText;this.assistiveHintEl.id=`${this.inputId}-assistive-hint`;this.assistiveHintEl.style.display="none";if(s.after!==undefined){s.after(this.assistiveHintEl)}}};this.updateSearchResultAriaLive=()=>{const t=this.el.shadowRoot.querySelector(".search-results-status");if(t){if(!this.open||this.value===""||this.value.length<this.charactersUntilSuggestion){t.innerText=""}else if(this.hasOptionsOrFilterDisabled()&&this.filteredOptions.length>0&&this.open&&!this.filteredOptions[0].loading){if(this.hadNoOptions()){t.innerText=this.emptyOptionListText}else{t.innerText=`${this.filteredOptions.length} result${this.filteredOptions.length>1?"s":""} available`}}}};this.hasOptionsOrFilterDisabled=()=>this.options.length>0||this.disableAutoFiltering;this.hadNoOptions=()=>this.filteredOptions.length===1&&this.filteredOptions[0][this.labelField]===this.emptyOptionListText&&this.searchMode==="navigation";this.isSubmitDisabled=()=>{const t=this.value===undefined||this.value===null||this.value==="";const i=this.value.length<this.charactersUntilSuggestion;return t||i||this.disabled||this.hadNoOptions()||this.hasTimedOut||this.loading};this.highlightFirstOptionAfterNoResults=()=>{if(this.prevNoOption&&this.menu&&!this.hasTimedOut){this.menu.handleSetFirstOption();this.prevNoOption=false}const t=this.filteredOptions.find((t=>t[this.labelField]===this.emptyOptionListText||t[this.labelField]===this.loadingErrorLabel||t[this.labelField]===this.loadingLabel));if(t){this.prevNoOption=true}};this.ariaActiveDescendant=undefined;this.clearButtonFocused=false;this.highlightedValue=undefined;this.open=false;this.searchSubmitFocused=false;this.showClearButton=false;this.autocapitalize="off";this.autocomplete="off";this.autocorrect="off";this.autofocus=false;this.charactersUntilSuggestion=2;this.disabled=false;this.disableAutoFiltering=false;this.debounce=0;this.emptyOptionListText="No results found";this.focusOnLoad=false;this.fullWidth=false;this.helperText="";this.hideLabel=false;this.assistiveHintText="When autocomplete results are available use the up and down arrows to choose and press enter to select";this.label=undefined;this.labelField="label";this.loading=false;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.name=this.inputId;this.placeholder="Search";this.readonly=false;this.required=false;this.searchMode="navigation";this.size="medium";this.spellcheck=false;this.timeout=undefined;this.valueField="value";this.filteredOptions=[];this.options=[];this.value=""}loadingHandler(t){if(t&&!this.hasTimedOut){this.preLoad=false;this.triggerLoading()}}filteredOptionsHandler(t){this.hasTimedOut=t.some((t=>t.timedOut))}watchOptionsHandler(t){if(this.disableAutoFiltering&&!this.hasTimedOut){this.loading=false;clearTimeout(this.timeoutTimer);if(t.length>0){this.filteredOptions=t}else{if(this.hadNoOptions()){return}this.setMenuChange(true);!this.preLoad&&(this.filteredOptions=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}]);this.preLoad=true}}this.debounceAriaLiveUpdate()}watchValueHandler(t){if(this.inputEl&&this.options&&!!o(t,this.options,this.valueField,this.labelField)){this.inputEl.value=o(t,this.options,this.valueField,this.labelField)}else if(this.inputEl&&this.inputEl.value!==t){this.inputEl.value=t}}disconnectedCallback(){if(this.assistiveHintEl){this.assistiveHintEl.remove()}}componentWillLoad(){this.watchValueHandler(this.value);r(this.disabled,this.el)}componentDidLoad(){if(this.focusOnLoad){this.el.setFocus()}if(this.hasOptionsOrFilterDisabled()){this.renderAssistiveHintEl();if(this.disableAutoFiltering){this.filteredOptions=this.options}}l([{prop:this.label,propName:"label"}],"Search Bar");if(this.inputEl!==undefined){this.anchorEl=this.inputEl.shadowRoot.querySelector("ic-input-component-container")}}componentWillRender(){this.highlightFirstOptionAfterNoResults()}handleKeyDown(t){const i=t.detail.event;if(this.menu&&this.open){this.menu.handleKeyboardOpen(i)}}handleKeyUp(t){if(t.key==="Enter"){if(this.preventSubmit||this.isSubmitDisabled()){return}this.handleSubmitSearch();this.setMenuChange(false)}if(t.key==="Escape"){this.setMenuChange(false)}if(this.preventSubmit){this.preventSubmit=false}}async setFocus(){this.retryViaKeyPress=false;this.retryButtonClick=false;if(this.inputEl){this.inputEl.setFocus()}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAriaLive);this.debounceAriaLive=window.setTimeout((()=>{this.updateSearchResultAriaLive()}),500)}render(){const{inputId:t,name:i,label:h,required:a,size:n,placeholder:r,helperText:l,disabled:p,value:m,readonly:v,spellcheck:g,fullWidth:w,options:y,open:x,hideLabel:k,menuId:L,ariaActiveDescendant:z,truncateValue:C,autofocus:B,autocapitalize:M,autocomplete:S,filteredOptions:T}=this;const O=v||p;const F=c(t,l!=="",false).trim();let H;if(F!==""&&this.hasOptionsOrFilterDisabled()){H=`${F} ${this.inputId}-assistive-hint`}else if(this.hasOptionsOrFilterDisabled()){H=`${this.inputId}-assistive-hint`}else if(F!==""){H=F}else{H=undefined}const $=!!m&&this.hasOptionsOrFilterDisabled();const E=$&&x&&T.length>0;const I=E&&m.length>=this.charactersUntilSuggestion;const D=o(m,y,this.valueField,this.labelField);u(true,this.el,i,m,O);return s(e,{class:{["ic-search-bar-search"]:true,["ic-search-bar-full-width"]:w,["ic-search-bar-disabled"]:p,["ic-search-bar-small"]:n==="small"},onFocus:this.handleHostFocus,onBlur:this.handleHostBlur},s("ic-text-field",{ref:t=>this.inputEl=t,inputId:t,label:h,helperText:l,required:a,disabled:O&&!v,readonly:v,size:n,hideLabel:k,fullWidth:w,name:i,truncateValue:C,value:y&&!!D?D:m,placeholder:r,onInput:this.onInput,onBlur:this.onInputBlur,onFocus:this.onInputFocus,"aria-label":k?h:"","aria-describedby":H,"aria-owns":I?L:undefined,"aria-controls":I?L:undefined,"aria-haspopup":y.length>0?"listbox":undefined,ariaExpanded:y.length>0?`${E}`:undefined,ariaActiveDescendant:z,"aria-autocomplete":$?"list":undefined,role:y.length>0?"combobox":undefined,autocomplete:S,autocapitalize:M,autoFocus:B,spellcheck:g,inputmode:"search",debounce:this.debounce},s("div",{class:{"clear-button-container":true,"clear-button-visible":m&&!O&&this.showClearButton},slot:"clear-button"},s("ic-button",{id:"clear-button",class:"clear-button","aria-label":"Clear",innerHTML:b,onClick:this.handleClear,onMouseDown:this.handleMouseDown,size:n,onFocus:this.handleFocusClearButton,onBlur:this.handleClearBlur,onKeyDown:this.handleClear,type:"submit",variant:"icon",appearance:this.clearButtonFocused?d.Light:d.Dark}),s("div",{class:"divider"})),s("div",{class:{"search-submit-button-container":true,"search-submit-button-disabled":this.isSubmitDisabled()},slot:"search-submit-button"},s("ic-button",{id:"search-submit-button","aria-label":"Search",ref:t=>this.searchSubmitButton=t,class:{["search-submit-button"]:true,["search-submit-button-small"]:n==="small"},disabled:this.isSubmitDisabled(),innerHTML:f,size:n,onClick:this.handleSubmitSearch,onMouseDown:this.handleMouseDown,onBlur:this.handleSubmitSearchBlur,onFocus:this.handleSubmitSearchFocus,onKeyDown:this.handleSubmitSearchKeyDown,type:"submit",variant:"icon",appearance:this.searchSubmitFocused?d.Light:d.Default})),s("div",{class:{"menu-container":true,fullwidth:w},slot:"menu"},I&&s("ic-menu",{class:{"no-results":this.hadNoOptions()||T.length===1&&(T[0][this.labelField]===this.loadingLabel||T[0][this.labelField]===this.loadingErrorLabel)},activationType:"manual",anchorEl:this.anchorEl,autoFocusOnSelected:false,searchMode:this.searchMode,inputEl:this.inputEl,inputLabel:h,ref:t=>this.menu=t,fullWidth:w,menuId:L,open:!!I,options:T,onMenuOptionSelect:this.handleOptionSelect,onMenuStateChange:this.handleMenuChange,onMenuOptionId:this.handleMenuOptionHighlight,onRetryButtonClicked:this.handleRetry,parentEl:this.el,value:m,labelField:this.labelField,valueField:this.valueField}))),s("div",{"aria-live":"polite",role:"status",class:"search-results-status"}))}static get delegatesFocus(){return true}get el(){return h(this)}static get watchers(){return{loading:["loadingHandler"],filteredOptions:["filteredOptionsHandler"],options:["watchOptionsHandler"],value:["watchValueHandler"]}}};v.style=p;export{v as ic_search_bar};
2
- //# sourceMappingURL=p-1ae71507.entry.js.map
@@ -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","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","appearance","IcThemeForegroundEnum","Light","Dark","searchIcon","Default","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}\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: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-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-action-dark-pressed);\n height: var(--divider-height);\n}\n\n:host(.dark) .divider {\n background-color: var(--ic-architectural-200);\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","import { Host, h, } from \"@stencil/core\";\nimport { IcThemeForegroundEnum, } from \"../../utils/types\";\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.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, } = 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 }, 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: \"clear-button\", \"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\", appearance: this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.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 }, 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\", appearance: this.searchSubmitFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Default })), 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 \"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 e,f as i,h as s,H as o,g as r}from"./p-8455d1bb.js";import{c,i as a,o as l}from"./p-89be0a21.js";const n=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M7 9.5L12 14.5L17 9.5H7Z" fill="currentColor"/>\n</svg>`;const h=':host{display:block;border:none;position:relative}:host .tree-item-content{display:flex;align-items:center;height:calc(var(--ic-space-xl) + var(--ic-space-xs));padding:0 var(--ic-space-xs);text-decoration:none;color:var(--ic-primary-text);--ic-typography-color:var(--ic-primary-text)}::slotted([slot="router-item"]){display:flex;align-items:center;height:calc(var(--ic-space-xl) + var(--ic-space-xs));text-decoration:none;font-family:var(--ic-font-body-family);color:var(--ic-primary-text);padding:0 var(--ic-space-xs) !important}::slotted([slot="router-item"].ic-tree-item-single){padding-left:calc(var(--ic-space-xl) + var(--ic-space-xs)) !important}:host .tree-item-content:focus,::slotted([slot="router-item"]:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-transition-duration-fast);outline:none}:host(.ic-tree-item-focus-inset) .tree-item-content:focus,:host(.ic-tree-item-focus-inset) ::slotted([slot="router-item"]:focus){box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset)}:host(.ic-tree-item-focus-inset) .tree-item-content,:host(.ic-tree-item-focus-inset) ::slotted([slot="router-item"]){padding:0 var(--ic-space-sm)}:host .tree-item-content:hover,::slotted([slot="router-item"]:hover){background-color:var(--ic-action-dark-bg-hover) !important;cursor:pointer}:host .tree-item-content:active,::slotted([slot="router-item"]:active){background-color:var(--ic-action-dark-bg-pressed) !important}:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){background-color:var(--ic-action-default-bg-hover) !important}:host(.ic-tree-item-small) .tree-item-content,:host(.ic-tree-item-small) ::slotted([slot="router-item"]){height:var(--ic-space-xl)}:host(.ic-tree-item-large) .tree-item-content,:host(.ic-tree-item-large) ::slotted([slot="router-item"]){height:var(--ic-space-xxl)}:host(.ic-tree-item-disabled){pointer-events:none}:host(.ic-tree-item-disabled) .tree-item-content,:host(.ic-tree-item-disabled) .arrow-dropdown,:host(.ic-tree-item-disabled) ::slotted([slot="icon"]),:host(.ic-tree-item-disabled) ::slotted([slot="router-item"]){color:var(--ic-architectural-200) !important;--ic-typography-color:var(--ic-architectural-200) !important;fill:var(--ic-architectural-200);pointer-events:none}:host(.ic-tree-item-light) .tree-item-content,:host(.ic-tree-item-light) .arrow-dropdown,:host(.ic-tree-item-light) ::slotted([slot="icon"]),:host(.ic-tree-item-light) ::slotted([slot="router-item"]){color:var(--ic-architectural-white);--ic-typography-color:var(--ic-architectural-white);fill:var(--ic-architectural-white)}:host .arrow-dropdown{color:var(--ic-action-default);margin-right:var(--ic-space-xs)}:host(.ic-tree-item-small) .arrow-dropdown{margin-right:var(--ic-space-xxs)}:host .tree-item-expanded{transform:rotate(180deg);margin-top:calc(-1 * var(--ic-space-xxs))}:host .ic-tree-item-single{padding-left:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-tree-item-small) .ic-tree-item-single{padding-left:calc(var(--ic-space-xl) + var(--ic-space-xxs))}.icon-container{width:var(--ic-space-lg);height:var(--ic-space-lg);margin:0 var(--ic-space-xs) 0 0}:host(.ic-tree-item-small) .icon-container{margin:0 var(--ic-space-xxs) 0 0}.ic-text-overflow{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ic-tooltip-overflow{overflow:hidden}@media (forced-colors: active){::slotted([slot="icon"]){fill:currentcolor}:host .tree-item-content:hover,::slotted([slot="router-item"]:hover),:host .tree-item-content:active,::slotted([slot="router-item"]:active),:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){background-color:none !important}:host(.ic-tree-item-disabled) .tree-item-content,:host(.ic-tree-item-disabled) .arrow-dropdown,:host(.ic-tree-item-disabled) ::slotted([slot="icon"]),:host(.ic-tree-item-disabled) ::slotted([slot="router-item"]){color:GrayText !important;--ic-typography-color:GrayText !important;fill:GrayText !important}:host .tree-item-content:focus,::slotted([slot="router-item"]:focus){border:var(--ic-border-hc) !important}:host(.ic-tree-item-selected) .tree-item-content,:host(.ic-tree-item-selected) ::slotted([slot="router-item"]){color:Highlight !important;--ic-typography-color:Highlight !important}}';let d=0;const m=class{constructor(s){t(this,s);this.icTreeItemSelected=e(this,"icTreeItemSelected",7);this.treeItemId=`ic-tree-item-${d++}`;this.treeItemTag="IC-TREE-ITEM";this.hostMutationObserver=null;this.TOOLTIP="ic-tooltip";this.handleTreeItemClicked=()=>{if(this.isParent){this.expanded=!this.expanded;this.hasParentExpanded=true}this.updateAriaLabel();this.selected=true;this.watchSelectedHandler()};this.setTreeItemPadding=()=>{let t=1;let e=this.el.parentElement;const i=this.el.shadowRoot.querySelector(".tree-item-content");const s=Array.from(e.children).map((t=>{if(t!==this.el&&!t.querySelector('[slot="router-item"]')&&!t.querySelector('[slot="label"]')){return t.children.length>0}else{return false}})).includes(true);const o=e.tagName===this.treeItemTag;const r=this.hasRouterSlot();if(s&&!this.el.isParent||o&&!this.el.isParent){if(r){this.routerSlot.classList.add("ic-tree-item-single")}else{i.classList.add("ic-tree-item-single")}}while(e){if(e.tagName===this.treeItemTag){t++;if(!this.el.isParent&&s){i.style.paddingLeft=`calc(var(--ic-space-xl) + ${t*16}px)`}else if(!this.el.isParent){i.style.paddingLeft=`calc(var(--ic-space-xs) + ${t*24}px`}else{i.style.paddingLeft=`${t*16}px`}}e=e.parentElement}};this.truncateTreeItemLabel=t=>{const e=t.shadowRoot.querySelector(".tree-item-label");const i=e===null||e===void 0?void 0:e.closest(this.TOOLTIP);const s=t.shadowRoot.querySelector(".tree-item-content");if((e===null||e===void 0?void 0:e.scrollHeight)>(s===null||s===void 0?void 0:s.clientHeight)){e.classList.add("ic-text-overflow");if(!i){const t=document.createElement("ic-tooltip");t.setAttribute("target",this.el.id);t.setAttribute("label",e.textContent);t.classList.add("ic-tooltip-overflow");t.setAttribute("placement","right");s.appendChild(t);t.appendChild(e)}}};this.hostMutationCallback=t=>{if(t.some((({type:t,addedNodes:e,removedNodes:i})=>t==="childList"?c(e,i,"icon"):false))){i(this)}};this.handleDisplayTooltip=t=>{const e=this.el.shadowRoot.querySelector(".tree-item-label");const i=e===null||e===void 0?void 0:e.closest(this.TOOLTIP);i===null||i===void 0?void 0:i.displayTooltip(t)};this.childTreeItems=undefined;this.appearance="dark";this.disabled=false;this.expanded=false;this.focusInset=false;this.hasParentExpanded=false;this.href=undefined;this.hreflang="";this.isParent=false;this.label="";this.referrerpolicy=undefined;this.rel=undefined;this.selected=false;this.size="medium";this.target=undefined}watchSelectedHandler(){if(this.selected){this.icTreeItemSelected.emit({id:this.el.id})}this.updateAriaLabel()}disconnectedCallback(){var t;(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}componentDidLoad(){this.childTreeItems=Array.from(this.el.children).filter((t=>t.tagName===this.treeItemTag));if(this.childTreeItems.length>0){this.isParent=true}this.setTreeItemPadding();this.updateAriaLabel();this.truncateTreeItemLabel(this.el);!a(this.el,"label")&&l([{prop:this.label,propName:"label"}],"Tree item");this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{childList:true})}componentDidUpdate(){if(this.hasParentExpanded){this.childTreeItems.forEach((t=>{this.truncateTreeItemLabel(t)}));this.hasParentExpanded=false}}handleKeyDown(t){if(t.key==="Enter"||t.key===" "){t.stopImmediatePropagation();this.handleTreeItemClicked()}}async setFocus(){var t,e;if(this.hasRouterSlot()){(t=this.routerSlot)===null||t===void 0?void 0:t.focus()}else{(e=this.treeItemElement)===null||e===void 0?void 0:e.focus()}}async updateAriaLabel(){let t;if(this.hasRouterSlot()){t=this.routerSlot.textContent}else if(a(this.el,"label")){t=this.el.querySelector('[slot="label"]').textContent}else{t=this.label}if(this.isParent){t=`${t}, triggers submenu, ${this.expanded?"expanded":"collapsed"}`}if(this.el.parentElement){const e=Array.from(this.el.parentElement.children).filter((t=>t.tagName===this.treeItemTag));const i=e.indexOf(this.el)+1;const s=e.length;t=`${t}, ${i} of ${s}`}if(this.selected){t=`${t}, active`}if(this.disabled){t=`${t}, dimmed`}if(this.hasRouterSlot()){this.routerSlot.ariaLabel=t}else{this.treeItemElement.ariaLabel=t}}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');return!!this.routerSlot}render(){const{appearance:t,disabled:e,label:i,selected:r,size:c,expanded:l,focusInset:h}=this;const d=this.href&&!this.disabled?"a":"div";const m=d=="a"&&{href:this.href,hrefLang:this.hreflang,referrerPolicy:this.referrerpolicy,rel:this.rel,target:this.target};return s(o,{class:{[`ic-tree-item-${t}`]:true,"ic-tree-item-disabled":e,"ic-tree-item-selected":!e&&r,[`ic-tree-item-${c}`]:c!=="medium",[`ic-tree-item-focus-inset`]:h},id:this.treeItemId},this.hasRouterSlot()?s("slot",{name:"router-item"}):s(d,Object.assign({class:{"tree-item-content":true},tabIndex:e?-1:0,onClick:this.handleTreeItemClicked,ref:t=>this.treeItemElement=t,"aria-disabled":e?"true":"false","aria-live":"polite"},m,{onFocus:()=>this.handleDisplayTooltip(true),onBlur:()=>this.handleDisplayTooltip(false)}),this.isParent&&s("span",{class:{["arrow-dropdown"]:true,["tree-item-expanded"]:l},"aria-hidden":"true",innerHTML:n}),a(this.el,"icon")&&s("div",{class:"icon-container"},s("slot",{name:"icon"})),s("ic-typography",{class:"tree-item-label"},a(this.el,"label")?s("slot",{name:"label"}):i)),l&&s("div",{"aria-hidden":`${!l}`},s("slot",null)))}get el(){return r(this)}static get watchers(){return{selected:["watchSelectedHandler"]}}};m.style=h;export{m as ic_tree_item};
2
- //# sourceMappingURL=p-2200ca85.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icTreeItemCss","treeItemIds","TreeItem","this","treeItemId","treeItemTag","hostMutationObserver","TOOLTIP","handleTreeItemClicked","isParent","expanded","hasParentExpanded","updateAriaLabel","selected","watchSelectedHandler","setTreeItemPadding","level","parentElement","el","treeItemContent","shadowRoot","querySelector","isSiblingOfParent","Array","from","children","map","sibling","length","includes","isChild","tagName","isRouterItem","hasRouterSlot","routerSlot","classList","add","style","paddingLeft","truncateTreeItemLabel","treeItem","typographyEl","tooltip","closest","treeContent","scrollHeight","clientHeight","tooltipEl","document","createElement","setAttribute","id","textContent","appendChild","hostMutationCallback","mutationList","some","type","addedNodes","removedNodes","checkSlotInChildMutations","forceUpdate","handleDisplayTooltip","display","displayTooltip","icTreeItemSelected","emit","disconnectedCallback","_a","disconnect","componentDidLoad","childTreeItems","filter","child","isSlotUsed","onComponentRequiredPropUndefined","prop","label","propName","MutationObserver","observe","childList","componentDidUpdate","forEach","handleKeyDown","ev","key","stopImmediatePropagation","setFocus","focus","_b","treeItemElement","ariaLabel","treeItems","index","indexOf","parentChildren","disabled","render","appearance","size","focusInset","Component","href","attrs","hrefLang","hreflang","referrerPolicy","referrerpolicy","rel","target","h","Host","class","name","Object","assign","tabIndex","onClick","ref","onFocus","onBlur","innerHTML","arrowDropdown"],"sources":["src/components/ic-tree-item/ic-tree-item.css?tag=ic-tree-item&encapsulation=shadow","src/components/ic-tree-item/ic-tree-item.tsx"],"sourcesContent":[":host {\n display: block;\n border: none;\n position: relative;\n}\n\n:host .tree-item-content {\n display: flex;\n align-items: center;\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n padding: 0 var(--ic-space-xs);\n text-decoration: none;\n color: var(--ic-primary-text);\n\n --ic-typography-color: var(--ic-primary-text);\n}\n\n::slotted([slot=\"router-item\"]) {\n display: flex;\n align-items: center;\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n text-decoration: none;\n font-family: var(--ic-font-body-family);\n color: var(--ic-primary-text);\n padding: 0 var(--ic-space-xs) !important;\n}\n\n::slotted([slot=\"router-item\"].ic-tree-item-single) {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs)) !important;\n}\n\n:host .tree-item-content:focus,\n::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content:focus,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n}\n\n:host(.ic-tree-item-focus-inset) .tree-item-content,\n:host(.ic-tree-item-focus-inset) ::slotted([slot=\"router-item\"]) {\n padding: 0 var(--ic-space-sm);\n}\n\n:host .tree-item-content:hover,\n::slotted([slot=\"router-item\"]:hover) {\n background-color: var(--ic-action-dark-bg-hover) !important;\n cursor: pointer;\n}\n\n:host .tree-item-content:active,\n::slotted([slot=\"router-item\"]:active) {\n background-color: var(--ic-action-dark-bg-pressed) !important;\n}\n\n:host(.ic-tree-item-selected) .tree-item-content,\n:host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: var(--ic-action-default-bg-hover) !important;\n}\n\n:host(.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-small) ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-large) ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-disabled) {\n pointer-events: none;\n}\n\n:host(.ic-tree-item-disabled) .tree-item-content,\n:host(.ic-tree-item-disabled) .arrow-dropdown,\n:host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-architectural-200) !important;\n\n --ic-typography-color: var(--ic-architectural-200) !important;\n\n fill: var(--ic-architectural-200);\n pointer-events: none;\n}\n\n:host(.ic-tree-item-light) .tree-item-content,\n:host(.ic-tree-item-light) .arrow-dropdown,\n:host(.ic-tree-item-light) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-light) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-architectural-white);\n\n --ic-typography-color: var(--ic-architectural-white);\n\n fill: var(--ic-architectural-white);\n}\n\n:host .arrow-dropdown {\n color: var(--ic-action-default);\n margin-right: var(--ic-space-xs);\n}\n\n:host(.ic-tree-item-small) .arrow-dropdown {\n margin-right: var(--ic-space-xxs);\n}\n\n:host .tree-item-expanded {\n transform: rotate(180deg);\n margin-top: calc(-1 * var(--ic-space-xxs));\n}\n\n:host .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-tree-item-small) .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n}\n\n.icon-container {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-item-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n\n :host .tree-item-content:hover,\n ::slotted([slot=\"router-item\"]:hover),\n :host .tree-item-content:active,\n ::slotted([slot=\"router-item\"]:active),\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: none !important;\n }\n\n :host(.ic-tree-item-disabled) .tree-item-content,\n :host(.ic-tree-item-disabled) .arrow-dropdown,\n :host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n :host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: GrayText !important;\n\n --ic-typography-color: GrayText !important;\n\n fill: GrayText !important;\n }\n\n :host .tree-item-content:focus,\n ::slotted([slot=\"router-item\"]:focus) {\n border: var(--ic-border-hc) !important;\n }\n\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n color: Highlight !important;\n\n --ic-typography-color: Highlight !important;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n forceUpdate,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeForegroundNoDefault } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n checkSlotInChildMutations,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemId = `ic-tree-item-${treeItemIds++}`;\n private treeItemElement: HTMLElement;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement;\n private hostMutationObserver: MutationObserver = null;\n private TOOLTIP = \"ic-tooltip\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * @internal Determines whether the light or dark variant of the tree item should be displayed.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n\n /**\n * @internal If `true`, the tree item will have an inset focus border.\n */\n @Prop() focusInset?: boolean = false;\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler() {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n if (this.childTreeItems.length > 0) {\n this.isParent = true;\n }\n\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n this.truncateTreeItemLabel(this.el);\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child) => {\n this.truncateTreeItemLabel(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n this.watchSelectedHandler();\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]').textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot.querySelector(\n \".tree-item-content\"\n ) as HTMLElement;\n\n const isSiblingOfParent = Array.from(parentElement.children)\n .map((sibling) => {\n if (\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]')\n ) {\n return sibling.children.length > 0;\n } else {\n return false;\n }\n })\n .includes(true);\n\n const isChild = parentElement.tagName === this.treeItemTag;\n\n const isRouterItem = this.hasRouterSlot();\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (isChild && !this.el.isParent)\n ) {\n if (isRouterItem) {\n this.routerSlot.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n if (!this.el.isParent && isSiblingOfParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xl) + ${\n level * 16\n }px)`;\n } else if (!this.el.isParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xs) + ${\n level * 24\n }px`;\n } else {\n treeItemContent.style.paddingLeft = `${level * 16}px`;\n }\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n const typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip = typographyEl?.closest(this.TOOLTIP);\n const treeContent: HTMLElement =\n treeItem.shadowRoot.querySelector(\".tree-item-content\");\n\n if (typographyEl?.scrollHeight > treeContent?.clientHeight) {\n typographyEl.classList.add(\"ic-text-overflow\");\n\n if (!tooltip) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setAttribute(\"placement\", \"right\");\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, \"icon\")\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip: HTMLIcTooltipElement = typographyEl?.closest(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n render() {\n const {\n appearance,\n disabled,\n label,\n selected,\n size,\n expanded,\n focusInset,\n } = this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n [`ic-tree-item-${appearance}`]: true,\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-tree-item-focus-inset`]: focusInset,\n }}\n id={this.treeItemId}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}