@ukic/web-components 3.3.0 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (554) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-fc4016d2.js → helpers-931fd72e.js} +30 -32
  3. package/dist/cjs/helpers-931fd72e.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-accordion.cjs.entry.js +10 -8
  6. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  8. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +3 -3
  12. package/dist/cjs/ic-breadcrumb.cjs.entry.js +3 -3
  13. package/dist/cjs/ic-button_3.cjs.entry.js +138 -145
  14. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-card-vertical.cjs.entry.js +2 -2
  16. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-checkbox-group.cjs.entry.js +5 -5
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox.cjs.entry.js +8 -13
  20. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  23. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  24. package/dist/cjs/ic-dialog.cjs.entry.js +2 -2
  25. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-empty-state.cjs.entry.js +3 -3
  27. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  29. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-hero.cjs.entry.js +7 -6
  31. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  33. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +33 -27
  34. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-input-label_2.cjs.entry.js +36 -13
  36. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-link.cjs.entry.js +12 -22
  38. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  40. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-navigation-button.cjs.entry.js +31 -39
  42. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-navigation-group.cjs.entry.js +121 -166
  44. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-navigation-item.cjs.entry.js +65 -62
  46. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  48. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  49. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -2
  50. package/dist/cjs/ic-pagination.cjs.entry.js +5 -5
  51. package/dist/cjs/ic-popover-menu.cjs.entry.js +6 -6
  52. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-radio-group.cjs.entry.js +6 -6
  54. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  56. package/dist/cjs/ic-search-bar.cjs.entry.js +68 -34
  57. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  59. package/dist/cjs/ic-select.cjs.entry.js +142 -218
  60. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-side-navigation.cjs.entry.js +35 -17
  62. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  65. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  66. package/dist/cjs/ic-step.cjs.entry.js +14 -14
  67. package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
  68. package/dist/cjs/ic-switch.cjs.entry.js +6 -6
  69. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  71. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  72. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  73. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  74. package/dist/cjs/ic-text-field.cjs.entry.js +16 -11
  75. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  77. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  78. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  79. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +54 -68
  80. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-toggle-button.cjs.entry.js +62 -64
  82. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-top-navigation.cjs.entry.js +74 -66
  84. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  86. package/dist/cjs/loader.cjs.js +1 -1
  87. package/dist/collection/ag-theme-icds.css +24 -4
  88. package/dist/collection/components/ic-accordion/ic-accordion.js +9 -7
  89. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  90. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +1 -1
  91. package/dist/collection/components/ic-alert/ic-alert.css +4 -0
  92. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +2 -2
  93. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  94. package/dist/collection/components/ic-button/ic-button.css +0 -8
  95. package/dist/collection/components/ic-button/ic-button.js +3 -3
  96. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  97. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +3 -0
  98. package/dist/collection/components/ic-checkbox/ic-checkbox.css +9 -1
  99. package/dist/collection/components/ic-checkbox/ic-checkbox.js +6 -11
  100. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  101. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +10 -2
  102. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +6 -3
  103. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  104. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +22 -0
  105. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  106. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  107. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  108. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  109. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  110. package/dist/collection/components/ic-hero/ic-hero.css +13 -4
  111. package/dist/collection/components/ic-hero/ic-hero.js +5 -4
  112. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  113. package/dist/collection/components/ic-hero/ic-hero.stories.js +1 -0
  114. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  115. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  116. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  117. package/dist/collection/components/ic-input-label/ic-input-label.css +2 -1
  118. package/dist/collection/components/ic-input-label/ic-input-label.js +31 -8
  119. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  120. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  121. package/dist/collection/components/ic-link/ic-link.js +12 -25
  122. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  123. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +3 -3
  124. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +210 -211
  125. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  126. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +1 -1
  127. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
  128. package/dist/collection/components/ic-menu/ic-menu.js +94 -47
  129. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  130. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  131. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +38 -47
  132. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  133. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +144 -170
  134. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  135. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +10 -14
  136. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +80 -74
  137. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  138. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  139. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  140. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  141. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  142. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +3 -0
  143. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  144. package/dist/collection/components/ic-radio-group/ic-radio-group.css +10 -2
  145. package/dist/collection/components/ic-radio-group/ic-radio-group.js +7 -4
  146. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  147. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +22 -0
  148. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  149. package/dist/collection/components/ic-search-bar/ic-search-bar.js +96 -34
  150. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  151. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +29 -18
  152. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  153. package/dist/collection/components/ic-select/ic-select.js +197 -271
  154. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  155. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +21 -13
  156. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +21 -13
  157. package/dist/collection/components/ic-select/ic-select_(single).stories.js +47 -30
  158. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +54 -16
  159. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  160. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +390 -0
  161. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  162. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  163. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  164. package/dist/collection/components/ic-step/ic-step.js +13 -13
  165. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  166. package/dist/collection/components/ic-switch/ic-switch.css +1 -4
  167. package/dist/collection/components/ic-switch/ic-switch.js +5 -4
  168. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  169. package/dist/collection/components/ic-switch/ic-switch.stories.js +8 -1
  170. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  171. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  172. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  173. package/dist/collection/components/ic-text-field/ic-text-field.js +21 -14
  174. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  175. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +12 -1
  176. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  177. package/dist/collection/components/ic-toast/ic-toast.js +3 -3
  178. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  179. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +40 -7
  180. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +80 -82
  181. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  182. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +79 -88
  183. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  184. package/dist/collection/components/ic-tooltip/ic-tooltip.js +2 -2
  185. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +1 -0
  186. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +89 -81
  187. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  188. package/dist/collection/components/ic-typography/ic-typography.js +2 -2
  189. package/dist/collection/utils/constants.js +1 -1
  190. package/dist/collection/utils/constants.js.map +1 -1
  191. package/dist/collection/utils/helpers.js +27 -30
  192. package/dist/collection/utils/helpers.js.map +1 -1
  193. package/dist/components/helpers.js +29 -32
  194. package/dist/components/helpers.js.map +1 -1
  195. package/dist/components/ic-accordion.js +9 -7
  196. package/dist/components/ic-accordion.js.map +1 -1
  197. package/dist/components/ic-alert.js +1 -1
  198. package/dist/components/ic-alert.js.map +1 -1
  199. package/dist/components/ic-breadcrumb-group.js +2 -2
  200. package/dist/components/ic-breadcrumb2.js +2 -2
  201. package/dist/components/ic-button2.js +4 -4
  202. package/dist/components/ic-button2.js.map +1 -1
  203. package/dist/components/ic-card-vertical.js +1 -1
  204. package/dist/components/ic-card-vertical.js.map +1 -1
  205. package/dist/components/ic-checkbox-group.js +4 -4
  206. package/dist/components/ic-checkbox-group.js.map +1 -1
  207. package/dist/components/ic-checkbox.js +7 -12
  208. package/dist/components/ic-checkbox.js.map +1 -1
  209. package/dist/components/ic-data-list.js +2 -2
  210. package/dist/components/ic-data-row.js +2 -2
  211. package/dist/components/ic-dialog.js +1 -1
  212. package/dist/components/ic-empty-state.js +2 -2
  213. package/dist/components/ic-footer-link.js +2 -2
  214. package/dist/components/ic-hero.js +6 -5
  215. package/dist/components/ic-hero.js.map +1 -1
  216. package/dist/components/ic-horizontal-scroll2.js +5 -5
  217. package/dist/components/ic-input-component-container2.js +3 -3
  218. package/dist/components/ic-input-container2.js +2 -2
  219. package/dist/components/ic-input-label2.js +33 -10
  220. package/dist/components/ic-input-label2.js.map +1 -1
  221. package/dist/components/ic-input-validation2.js +3 -3
  222. package/dist/components/ic-link2.js +12 -24
  223. package/dist/components/ic-link2.js.map +1 -1
  224. package/dist/components/ic-loading-indicator2.js +139 -143
  225. package/dist/components/ic-loading-indicator2.js.map +1 -1
  226. package/dist/components/ic-menu-group.js +1 -1
  227. package/dist/components/ic-menu2.js +30 -22
  228. package/dist/components/ic-menu2.js.map +1 -1
  229. package/dist/components/ic-navigation-button.js +32 -41
  230. package/dist/components/ic-navigation-button.js.map +1 -1
  231. package/dist/components/ic-navigation-group.js +122 -167
  232. package/dist/components/ic-navigation-group.js.map +1 -1
  233. package/dist/components/ic-navigation-item.js +68 -63
  234. package/dist/components/ic-navigation-item.js.map +1 -1
  235. package/dist/components/ic-navigation-menu2.js +5 -5
  236. package/dist/components/ic-page-header.js +6 -6
  237. package/dist/components/ic-pagination-item2.js +2 -2
  238. package/dist/components/ic-pagination.js +4 -4
  239. package/dist/components/ic-popover-menu.js +5 -5
  240. package/dist/components/ic-popover-menu.js.map +1 -1
  241. package/dist/components/ic-radio-group.js +5 -5
  242. package/dist/components/ic-radio-group.js.map +1 -1
  243. package/dist/components/ic-radio-option.js +4 -4
  244. package/dist/components/ic-radio-option.js.map +1 -1
  245. package/dist/components/ic-search-bar.js +72 -34
  246. package/dist/components/ic-search-bar.js.map +1 -1
  247. package/dist/components/ic-section-container2.js +2 -2
  248. package/dist/components/ic-select.js +141 -217
  249. package/dist/components/ic-select.js.map +1 -1
  250. package/dist/components/ic-side-navigation.js +36 -17
  251. package/dist/components/ic-side-navigation.js.map +1 -1
  252. package/dist/components/ic-skeleton.js +2 -2
  253. package/dist/components/ic-skip-link.js +2 -2
  254. package/dist/components/ic-status-tag.js +2 -2
  255. package/dist/components/ic-step.js +13 -13
  256. package/dist/components/ic-stepper.js +2 -2
  257. package/dist/components/ic-switch.js +5 -5
  258. package/dist/components/ic-switch.js.map +1 -1
  259. package/dist/components/ic-tab-context.js +1 -1
  260. package/dist/components/ic-tab-group.js +2 -2
  261. package/dist/components/ic-tab-panel.js +2 -2
  262. package/dist/components/ic-tab-panel.js.map +1 -1
  263. package/dist/components/ic-text-field.js +17 -11
  264. package/dist/components/ic-text-field.js.map +1 -1
  265. package/dist/components/ic-theme.js +2 -2
  266. package/dist/components/ic-toast-region.js +1 -1
  267. package/dist/components/ic-toast.js +4 -4
  268. package/dist/components/ic-toggle-button-group.js +53 -67
  269. package/dist/components/ic-toggle-button-group.js.map +1 -1
  270. package/dist/components/ic-toggle-button.js +62 -64
  271. package/dist/components/ic-toggle-button.js.map +1 -1
  272. package/dist/components/ic-tooltip2.js +2 -2
  273. package/dist/components/ic-top-navigation.js +75 -67
  274. package/dist/components/ic-top-navigation.js.map +1 -1
  275. package/dist/components/ic-typography2.js +2 -2
  276. package/dist/core/ag-theme-icds.css +24 -4
  277. package/dist/core/core.css +29 -25
  278. package/dist/core/core.esm.js +1 -1
  279. package/dist/core/core.esm.js.map +1 -1
  280. package/dist/core/{p-b371a498.entry.js → p-0f3a56bb.entry.js} +2 -2
  281. package/dist/core/p-0f3a56bb.entry.js.map +1 -0
  282. package/dist/core/{p-72c117b6.entry.js → p-0f86ea09.entry.js} +2 -2
  283. package/dist/core/p-1228fd8c.entry.js +2 -0
  284. package/dist/core/{p-b8da5c07.entry.js.map → p-1228fd8c.entry.js.map} +1 -1
  285. package/dist/core/p-1286b234.entry.js +2 -0
  286. package/dist/core/p-1286b234.entry.js.map +1 -0
  287. package/dist/core/{p-8c4f7c63.entry.js → p-13e65198.entry.js} +2 -2
  288. package/dist/core/{p-fbf57f0a.entry.js → p-20a6dc40.entry.js} +2 -2
  289. package/dist/core/p-20a6dc40.entry.js.map +1 -0
  290. package/dist/core/{p-cdf56a5d.entry.js → p-21ed856c.entry.js} +2 -2
  291. package/dist/core/p-21ed856c.entry.js.map +1 -0
  292. package/dist/core/p-226406d6.entry.js +2 -0
  293. package/dist/core/{p-70a6cff1.entry.js → p-24bb2265.entry.js} +2 -2
  294. package/dist/core/{p-d45d66c0.entry.js → p-2b342b23.entry.js} +2 -2
  295. package/dist/core/p-334672c1.entry.js +2 -0
  296. package/dist/core/p-334672c1.entry.js.map +1 -0
  297. package/dist/core/{p-8b5022bc.entry.js → p-3448c713.entry.js} +2 -2
  298. package/dist/core/p-37900547.entry.js +2 -0
  299. package/dist/core/p-37900547.entry.js.map +1 -0
  300. package/dist/core/p-3abaa877.entry.js +2 -0
  301. package/dist/core/p-3abaa877.entry.js.map +1 -0
  302. package/dist/core/{p-ef36181d.entry.js → p-3afc2870.entry.js} +2 -2
  303. package/dist/core/{p-aad10013.entry.js → p-3d7d2ff4.entry.js} +2 -2
  304. package/dist/core/p-41bb4db1.entry.js +2 -0
  305. package/dist/core/p-41bb4db1.entry.js.map +1 -0
  306. package/dist/core/{p-788c96ac.entry.js → p-44902a33.entry.js} +2 -2
  307. package/dist/core/{p-628c32b8.entry.js → p-476eac8c.entry.js} +2 -2
  308. package/dist/core/{p-9479f272.entry.js → p-49ca3f54.entry.js} +2 -2
  309. package/dist/core/{p-ebab7a9e.entry.js → p-4dfc41e7.entry.js} +2 -2
  310. package/dist/core/{p-83764268.entry.js → p-5026eeaf.entry.js} +2 -2
  311. package/dist/core/{p-2c17cc67.entry.js → p-54ea7120.entry.js} +2 -2
  312. package/dist/core/{p-a17499ff.entry.js → p-5b2bf9bb.entry.js} +2 -2
  313. package/dist/core/{p-0a436c47.entry.js → p-5d9b23ce.entry.js} +2 -2
  314. package/dist/core/p-5d9b23ce.entry.js.map +1 -0
  315. package/dist/core/{p-c9a4fe37.entry.js → p-5f9d1977.entry.js} +2 -2
  316. package/dist/core/p-5f9d1977.entry.js.map +1 -0
  317. package/dist/core/{p-1b2690b4.entry.js → p-6c10e1a2.entry.js} +2 -2
  318. package/dist/core/p-6c10e1a2.entry.js.map +1 -0
  319. package/dist/core/{p-1440847f.entry.js → p-6cb81f35.entry.js} +2 -2
  320. package/dist/core/{p-df88ff5b.entry.js → p-6dd73165.entry.js} +2 -2
  321. package/dist/core/p-7ead8535.entry.js +2 -0
  322. package/dist/core/p-7ead8535.entry.js.map +1 -0
  323. package/dist/core/{p-c8cf1ad5.entry.js → p-831e884c.entry.js} +2 -2
  324. package/dist/core/{p-267a19d4.entry.js → p-85f735ed.entry.js} +2 -2
  325. package/dist/core/p-89f493f3.entry.js +2 -0
  326. package/dist/core/p-89f493f3.entry.js.map +1 -0
  327. package/dist/core/{p-00bc353b.entry.js → p-8da025b5.entry.js} +2 -2
  328. package/dist/core/p-990c37aa.entry.js +2 -0
  329. package/dist/core/p-990c37aa.entry.js.map +1 -0
  330. package/dist/core/p-9e039aba.entry.js +2 -0
  331. package/dist/core/p-9e039aba.entry.js.map +1 -0
  332. package/dist/core/{p-bc2ca778.entry.js → p-9e051db4.entry.js} +2 -2
  333. package/dist/core/{p-a0161990.entry.js → p-9edc5973.entry.js} +2 -2
  334. package/dist/core/{p-2c371198.entry.js → p-a14025cc.entry.js} +2 -2
  335. package/dist/core/p-a7286727.entry.js +2 -0
  336. package/dist/core/p-a7286727.entry.js.map +1 -0
  337. package/dist/core/{p-c4663e1a.entry.js → p-ab4e8b4a.entry.js} +2 -2
  338. package/dist/core/{p-42a7d0b6.entry.js → p-ab7a5536.entry.js} +2 -2
  339. package/dist/core/{p-26dfc4db.entry.js → p-ac73cfb8.entry.js} +2 -2
  340. package/dist/core/{p-f0388d68.entry.js → p-ad374f0b.entry.js} +2 -2
  341. package/dist/core/p-ad374f0b.entry.js.map +1 -0
  342. package/dist/core/{p-513628ef.entry.js → p-b08bb522.entry.js} +2 -2
  343. package/dist/core/{p-1be17f22.entry.js → p-b1b27b7e.entry.js} +2 -2
  344. package/dist/core/p-b40ecf16.js +2 -0
  345. package/dist/core/p-b40ecf16.js.map +1 -0
  346. package/dist/core/{p-10e1e227.entry.js → p-b59007a3.entry.js} +2 -2
  347. package/dist/core/{p-16f55230.entry.js → p-b811c7a1.entry.js} +2 -2
  348. package/dist/core/p-b811c7a1.entry.js.map +1 -0
  349. package/dist/core/p-bae2df5e.entry.js +2 -0
  350. package/dist/core/p-bae2df5e.entry.js.map +1 -0
  351. package/dist/core/{p-bdc72446.entry.js → p-c8555360.entry.js} +2 -2
  352. package/dist/core/{p-a4f9b5bf.entry.js → p-ced2e6ca.entry.js} +2 -2
  353. package/dist/core/{p-9ca147f3.entry.js → p-d281c3cf.entry.js} +2 -2
  354. package/dist/core/p-d32c377d.entry.js +2 -0
  355. package/dist/core/p-d32c377d.entry.js.map +1 -0
  356. package/dist/core/p-d4a77f80.entry.js +2 -0
  357. package/dist/core/p-d4a77f80.entry.js.map +1 -0
  358. package/dist/core/{p-9c47521d.entry.js → p-d7476f6d.entry.js} +2 -2
  359. package/dist/core/{p-1838d1e9.entry.js → p-e107d1dd.entry.js} +2 -2
  360. package/dist/core/p-e506ec91.entry.js +2 -0
  361. package/dist/core/p-e506ec91.entry.js.map +1 -0
  362. package/dist/core/{p-b9459ba2.entry.js → p-fc5661ac.entry.js} +2 -2
  363. package/dist/core/p-fca45edb.entry.js +2 -0
  364. package/dist/core/p-fca45edb.entry.js.map +1 -0
  365. package/dist/esm/core.js +1 -1
  366. package/dist/esm/{helpers-f2ffaa7c.js → helpers-91abc444.js} +30 -33
  367. package/dist/esm/helpers-91abc444.js.map +1 -0
  368. package/dist/esm/ic-accordion-group.entry.js +1 -1
  369. package/dist/esm/ic-accordion.entry.js +10 -8
  370. package/dist/esm/ic-accordion.entry.js.map +1 -1
  371. package/dist/esm/ic-alert.entry.js +2 -2
  372. package/dist/esm/ic-alert.entry.js.map +1 -1
  373. package/dist/esm/ic-back-to-top.entry.js +1 -1
  374. package/dist/esm/ic-badge.entry.js +1 -1
  375. package/dist/esm/ic-breadcrumb-group.entry.js +3 -3
  376. package/dist/esm/ic-breadcrumb.entry.js +3 -3
  377. package/dist/esm/ic-button_3.entry.js +138 -145
  378. package/dist/esm/ic-button_3.entry.js.map +1 -1
  379. package/dist/esm/ic-card-vertical.entry.js +2 -2
  380. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  381. package/dist/esm/ic-checkbox-group.entry.js +5 -5
  382. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  383. package/dist/esm/ic-checkbox.entry.js +8 -13
  384. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  385. package/dist/esm/ic-chip.entry.js +1 -1
  386. package/dist/esm/ic-data-list.entry.js +2 -2
  387. package/dist/esm/ic-data-row.entry.js +3 -3
  388. package/dist/esm/ic-dialog.entry.js +2 -2
  389. package/dist/esm/ic-divider.entry.js +1 -1
  390. package/dist/esm/ic-empty-state.entry.js +3 -3
  391. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  392. package/dist/esm/ic-footer-link.entry.js +3 -3
  393. package/dist/esm/ic-footer.entry.js +1 -1
  394. package/dist/esm/ic-hero.entry.js +7 -6
  395. package/dist/esm/ic-hero.entry.js.map +1 -1
  396. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  397. package/dist/esm/ic-input-component-container_3.entry.js +33 -27
  398. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  399. package/dist/esm/ic-input-label_2.entry.js +36 -13
  400. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  401. package/dist/esm/ic-link.entry.js +12 -22
  402. package/dist/esm/ic-link.entry.js.map +1 -1
  403. package/dist/esm/ic-menu-group.entry.js +2 -2
  404. package/dist/esm/ic-menu-item.entry.js +1 -1
  405. package/dist/esm/ic-navigation-button.entry.js +31 -39
  406. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  407. package/dist/esm/ic-navigation-group.entry.js +121 -166
  408. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  409. package/dist/esm/ic-navigation-item.entry.js +65 -62
  410. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  411. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  412. package/dist/esm/ic-page-header.entry.js +7 -7
  413. package/dist/esm/ic-pagination-item.entry.js +2 -2
  414. package/dist/esm/ic-pagination.entry.js +5 -5
  415. package/dist/esm/ic-popover-menu.entry.js +6 -6
  416. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  417. package/dist/esm/ic-radio-group.entry.js +6 -6
  418. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  419. package/dist/esm/ic-radio-option.entry.js +5 -5
  420. package/dist/esm/ic-search-bar.entry.js +68 -34
  421. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  422. package/dist/esm/ic-section-container.entry.js +2 -2
  423. package/dist/esm/ic-select.entry.js +142 -218
  424. package/dist/esm/ic-select.entry.js.map +1 -1
  425. package/dist/esm/ic-side-navigation.entry.js +35 -17
  426. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  427. package/dist/esm/ic-skeleton.entry.js +2 -2
  428. package/dist/esm/ic-skip-link.entry.js +2 -2
  429. package/dist/esm/ic-status-tag.entry.js +3 -3
  430. package/dist/esm/ic-step.entry.js +14 -14
  431. package/dist/esm/ic-stepper.entry.js +3 -3
  432. package/dist/esm/ic-switch.entry.js +6 -6
  433. package/dist/esm/ic-switch.entry.js.map +1 -1
  434. package/dist/esm/ic-tab-context.entry.js +1 -1
  435. package/dist/esm/ic-tab-group.entry.js +3 -3
  436. package/dist/esm/ic-tab-panel.entry.js +2 -2
  437. package/dist/esm/ic-tab.entry.js +1 -1
  438. package/dist/esm/ic-text-field.entry.js +16 -11
  439. package/dist/esm/ic-text-field.entry.js.map +1 -1
  440. package/dist/esm/ic-theme.entry.js +2 -2
  441. package/dist/esm/ic-toast-region.entry.js +1 -1
  442. package/dist/esm/ic-toast.entry.js +4 -4
  443. package/dist/esm/ic-toggle-button-group.entry.js +54 -68
  444. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  445. package/dist/esm/ic-toggle-button.entry.js +62 -64
  446. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  447. package/dist/esm/ic-top-navigation.entry.js +75 -67
  448. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  449. package/dist/esm/ic-typography.entry.js +3 -3
  450. package/dist/esm/loader.js +1 -1
  451. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +3 -0
  452. package/dist/types/components/ic-input-label/ic-input-label.d.ts +2 -0
  453. package/dist/types/components/ic-link/ic-link.d.ts +2 -3
  454. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +28 -32
  455. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +2 -0
  456. package/dist/types/components/ic-menu/ic-menu.d.ts +19 -12
  457. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +8 -5
  458. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +8 -19
  459. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +9 -7
  460. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +3 -0
  461. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +13 -0
  462. package/dist/types/components/ic-select/ic-select.d.ts +37 -38
  463. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +5 -0
  464. package/dist/types/components/ic-switch/ic-switch.d.ts +1 -0
  465. package/dist/types/components/ic-text-field/ic-text-field.d.ts +4 -2
  466. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +10 -11
  467. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +10 -12
  468. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +10 -8
  469. package/dist/types/components.d.ts +122 -94
  470. package/dist/types/utils/constants.d.ts +1 -1
  471. package/dist/types/utils/helpers.d.ts +1 -1
  472. package/hydrate/index.js +1047 -1100
  473. package/hydrate/index.mjs +1047 -1100
  474. package/package.json +3 -5
  475. package/vscode-data.json +16 -4
  476. package/dist/cjs/helpers-fc4016d2.js.map +0 -1
  477. package/dist/core/p-0a436c47.entry.js.map +0 -1
  478. package/dist/core/p-15b7adaf.entry.js +0 -2
  479. package/dist/core/p-15b7adaf.entry.js.map +0 -1
  480. package/dist/core/p-16f55230.entry.js.map +0 -1
  481. package/dist/core/p-18714198.entry.js +0 -2
  482. package/dist/core/p-18714198.entry.js.map +0 -1
  483. package/dist/core/p-1b2690b4.entry.js.map +0 -1
  484. package/dist/core/p-206c2a26.entry.js +0 -2
  485. package/dist/core/p-206c2a26.entry.js.map +0 -1
  486. package/dist/core/p-2e44cf53.entry.js +0 -2
  487. package/dist/core/p-2e44cf53.entry.js.map +0 -1
  488. package/dist/core/p-730d2f6e.entry.js +0 -2
  489. package/dist/core/p-730d2f6e.entry.js.map +0 -1
  490. package/dist/core/p-7fb79e87.entry.js +0 -2
  491. package/dist/core/p-7fb79e87.entry.js.map +0 -1
  492. package/dist/core/p-8242c24f.js +0 -2
  493. package/dist/core/p-8242c24f.js.map +0 -1
  494. package/dist/core/p-910f5f14.entry.js +0 -2
  495. package/dist/core/p-910f5f14.entry.js.map +0 -1
  496. package/dist/core/p-9cfc2bac.entry.js +0 -2
  497. package/dist/core/p-9cfc2bac.entry.js.map +0 -1
  498. package/dist/core/p-b371a498.entry.js.map +0 -1
  499. package/dist/core/p-b7568944.entry.js +0 -2
  500. package/dist/core/p-b7568944.entry.js.map +0 -1
  501. package/dist/core/p-b8da5c07.entry.js +0 -2
  502. package/dist/core/p-ba600947.entry.js +0 -2
  503. package/dist/core/p-ba600947.entry.js.map +0 -1
  504. package/dist/core/p-c45023b7.entry.js +0 -2
  505. package/dist/core/p-c45023b7.entry.js.map +0 -1
  506. package/dist/core/p-c9a4fe37.entry.js.map +0 -1
  507. package/dist/core/p-cdf56a5d.entry.js.map +0 -1
  508. package/dist/core/p-d6c50565.entry.js +0 -2
  509. package/dist/core/p-d6c50565.entry.js.map +0 -1
  510. package/dist/core/p-d975bf2f.entry.js +0 -2
  511. package/dist/core/p-d975bf2f.entry.js.map +0 -1
  512. package/dist/core/p-dede4974.entry.js +0 -2
  513. package/dist/core/p-dede4974.entry.js.map +0 -1
  514. package/dist/core/p-e86a6d2d.entry.js +0 -2
  515. package/dist/core/p-eeab3a2e.entry.js +0 -2
  516. package/dist/core/p-eeab3a2e.entry.js.map +0 -1
  517. package/dist/core/p-f0388d68.entry.js.map +0 -1
  518. package/dist/core/p-fbf57f0a.entry.js.map +0 -1
  519. package/dist/esm/helpers-f2ffaa7c.js.map +0 -1
  520. /package/dist/core/{p-72c117b6.entry.js.map → p-0f86ea09.entry.js.map} +0 -0
  521. /package/dist/core/{p-8c4f7c63.entry.js.map → p-13e65198.entry.js.map} +0 -0
  522. /package/dist/core/{p-e86a6d2d.entry.js.map → p-226406d6.entry.js.map} +0 -0
  523. /package/dist/core/{p-70a6cff1.entry.js.map → p-24bb2265.entry.js.map} +0 -0
  524. /package/dist/core/{p-d45d66c0.entry.js.map → p-2b342b23.entry.js.map} +0 -0
  525. /package/dist/core/{p-8b5022bc.entry.js.map → p-3448c713.entry.js.map} +0 -0
  526. /package/dist/core/{p-ef36181d.entry.js.map → p-3afc2870.entry.js.map} +0 -0
  527. /package/dist/core/{p-aad10013.entry.js.map → p-3d7d2ff4.entry.js.map} +0 -0
  528. /package/dist/core/{p-788c96ac.entry.js.map → p-44902a33.entry.js.map} +0 -0
  529. /package/dist/core/{p-628c32b8.entry.js.map → p-476eac8c.entry.js.map} +0 -0
  530. /package/dist/core/{p-9479f272.entry.js.map → p-49ca3f54.entry.js.map} +0 -0
  531. /package/dist/core/{p-ebab7a9e.entry.js.map → p-4dfc41e7.entry.js.map} +0 -0
  532. /package/dist/core/{p-83764268.entry.js.map → p-5026eeaf.entry.js.map} +0 -0
  533. /package/dist/core/{p-2c17cc67.entry.js.map → p-54ea7120.entry.js.map} +0 -0
  534. /package/dist/core/{p-a17499ff.entry.js.map → p-5b2bf9bb.entry.js.map} +0 -0
  535. /package/dist/core/{p-1440847f.entry.js.map → p-6cb81f35.entry.js.map} +0 -0
  536. /package/dist/core/{p-df88ff5b.entry.js.map → p-6dd73165.entry.js.map} +0 -0
  537. /package/dist/core/{p-c8cf1ad5.entry.js.map → p-831e884c.entry.js.map} +0 -0
  538. /package/dist/core/{p-267a19d4.entry.js.map → p-85f735ed.entry.js.map} +0 -0
  539. /package/dist/core/{p-00bc353b.entry.js.map → p-8da025b5.entry.js.map} +0 -0
  540. /package/dist/core/{p-bc2ca778.entry.js.map → p-9e051db4.entry.js.map} +0 -0
  541. /package/dist/core/{p-a0161990.entry.js.map → p-9edc5973.entry.js.map} +0 -0
  542. /package/dist/core/{p-2c371198.entry.js.map → p-a14025cc.entry.js.map} +0 -0
  543. /package/dist/core/{p-c4663e1a.entry.js.map → p-ab4e8b4a.entry.js.map} +0 -0
  544. /package/dist/core/{p-42a7d0b6.entry.js.map → p-ab7a5536.entry.js.map} +0 -0
  545. /package/dist/core/{p-26dfc4db.entry.js.map → p-ac73cfb8.entry.js.map} +0 -0
  546. /package/dist/core/{p-513628ef.entry.js.map → p-b08bb522.entry.js.map} +0 -0
  547. /package/dist/core/{p-1be17f22.entry.js.map → p-b1b27b7e.entry.js.map} +0 -0
  548. /package/dist/core/{p-10e1e227.entry.js.map → p-b59007a3.entry.js.map} +0 -0
  549. /package/dist/core/{p-bdc72446.entry.js.map → p-c8555360.entry.js.map} +0 -0
  550. /package/dist/core/{p-a4f9b5bf.entry.js.map → p-ced2e6ca.entry.js.map} +0 -0
  551. /package/dist/core/{p-9ca147f3.entry.js.map → p-d281c3cf.entry.js.map} +0 -0
  552. /package/dist/core/{p-9c47521d.entry.js.map → p-d7476f6d.entry.js.map} +0 -0
  553. /package/dist/core/{p-1838d1e9.entry.js.map → p-e107d1dd.entry.js.map} +0 -0
  554. /package/dist/core/{p-b9459ba2.entry.js.map → p-fc5661ac.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-search-bar.js","mappings":"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","names":[],"sources":["src/components/ic-search-bar/ic-search-bar.css?tag=ic-search-bar&encapsulation=shadow","src/components/ic-search-bar/ic-search-bar.tsx"],"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 display: block;\n\n --divider-height: 1.5rem;\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n --border-color: var(--ic-search-bar-outline);\n --input-bg-color: var(--ic-search-bar-background);\n --border-color-disabled: var(--ic-search-bar-outline-disabled);\n --menu-item-text-color: var(--ic-search-bar-dropdown-option-text);\n --menu-item-desc-text-color: var(--ic-search-bar-dropdown-option-description);\n --menu-bg-color: var(--ic-search-bar-dropdown-background);\n --menu-border-color: var(--ic-search-bar-dropdown-outline);\n}\n\n:host(.ic-search-bar-disabled) {\n --ic-input-label-text-color: var(--ic-search-bar-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-search-bar-subtitle-disabled);\n}\n\n:host(.ic-search-bar-search:hover) {\n --border-color: var(--ic-search-bar-outline-hover);\n}\n\n:host(.ic-search-bar-search:active) {\n --border-color: var(--ic-search-bar-outline-pressed);\n}\n\n:host(.ic-search-bar-search.ic-search-bar-small) {\n --divider-height: 1rem;\n}\n\n:host(.ic-search-bar-full-width) {\n width: 100%;\n}\n\n/* Custom Input */\n\n::-moz-placeholder {\n color: var(--ic-search-bar-placeholder-text);\n opacity: 1;\n}\n\n::placeholder {\n color: var(--ic-search-bar-placeholder-text);\n opacity: 1;\n}\n\ninput {\n border: 0;\n border-radius: var(--ic-border-radius);\n color: var(--ic-search-bar-filled-text);\n background-color: var(--input-bg-color);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n padding-right: var(--ic-space-xs);\n padding-left: var(--ic-space-xs);\n caret-color: var(--ic-search-bar-filled-text-cursor);\n}\n\ninput:focus {\n border: 0;\n outline: 0;\n}\n\ninput:disabled::-moz-placeholder {\n color: var(--ic-search-bar-disabled-text);\n}\n\ninput:disabled,\ninput:disabled::placeholder {\n color: var(--ic-search-bar-disabled-text);\n}\n\n/* Chrome, Safari, Edge */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.no-left-pad {\n padding-left: 0;\n}\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\ninput[type=\"search\"].truncate-value {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n/* CLEAR */\n\n.clear-button-container {\n align-items: center;\n margin-right: var(--ic-space-1px);\n display: none;\n visibility: hidden;\n}\n\n.clear-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus,\n.clear-button:active {\n background-color: var(--ic-color-focus-inner);\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer);\n border-radius: 0.25rem;\n}\n\n.clear-button-unfocused * {\n fill: var(--ic-search-bar-clear-button);\n}\n\n.clear-button:focus,\n.clear-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button-visible {\n visibility: visible;\n display: flex;\n}\n\n.search-submit-button-container {\n display: flex;\n align-items: center;\n}\n\n.search-submit-button-unfocused * {\n fill: var(--ic-search-bar-filled-icon);\n}\n\n.search-submit-button-disabled * {\n fill: var(--ic-search-bar-icon-disabled);\n}\n\n.search-submit-button-disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.search-submit-button:focus,\n.search-submit-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: var(--ic-space-xxs);\n}\n\n.search-submit-button:focus,\n.search-submit-button:active * {\n fill: white;\n}\n\n.divider {\n width: var(--ic-border-width);\n background-color: var(--ic-search-bar-dropdown-divider);\n height: var(--divider-height);\n}\n\n.menu-container {\n width: var(--input-width, 20rem);\n position: relative;\n top: var(--ic-space-xxxs);\n}\n\n.menu-container.fullwidth {\n width: 100%;\n}\n\n.no-results {\n cursor: not-allowed;\n}\n\n.search-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n margin-bottom: calc(-1 * var(--ic-space-1px));\n margin-right: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: var(--ic-space-1px);\n}\n\n@media (forced-colors: active) {\n .search-submit-button-unfocused * {\n fill: canvastext;\n }\n\n .search-submit-button-disabled * {\n fill: GrayText;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n Method,\n h,\n} from \"@stencil/core\";\n\nimport {\n IcAutocompleteTypes,\n IcAutocorrectStates,\n IcMenuOption,\n IcMultiValueEventDetail,\n IcSizesNoLarge,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n getInputDescribedByText,\n renderHiddenInput,\n handleHiddenFormButtonClick,\n getLabelFromValue,\n onComponentRequiredPropUndefined,\n getFilteredMenuOptions,\n removeDisabledFalse,\n debounceEvent,\n} from \"../../utils/helpers\";\nimport {\n IcSearchBarBlurEventDetail,\n IcSearchBarSearchModes,\n} from \"./ic-search-bar.types\";\nimport { IcValueEventDetail, IcBlurEventDetail } from \"../../utils/types\";\nimport {\n IcMenuChangeEventDetail,\n IcMenuOptionIdEventDetail,\n IcOptionSelectEventDetail,\n} from \"../ic-menu/ic-menu.types\";\n\nimport clearIcon from \"../../assets/clear-icon.svg\";\nimport searchIcon from \"../../assets/search-icon.svg\";\n\nlet inputIds = 0;\n\n@Component({\n tag: \"ic-search-bar\",\n styleUrl: \"ic-search-bar.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class SearchBar {\n private anchorEl?: HTMLElement;\n private assistiveHintEl?: HTMLSpanElement;\n private debounceAriaLive?: number;\n private hasTimedOut = false;\n private inputEl?: HTMLInputElement;\n private inputId = `ic-search-bar-input-${inputIds++}`;\n private menu?: HTMLIcMenuElement;\n private menuCloseFromMenuChangeEvent = false;\n private menuId = `${this.inputId}-menu`;\n private preLoad = true;\n private preventSubmit = false;\n private prevNoOption = false;\n private retryButtonClick = false;\n private retryViaKeyPress = false;\n private timeoutTimer?: number;\n private truncateValue = false;\n private searchSubmitButton?: HTMLIcButtonElement;\n\n @Element() el: HTMLIcSearchBarElement;\n\n @State() ariaActiveDescendant?: string;\n @State() clearButtonFocused = false;\n @State() highlightedValue?: string;\n @State() open = false;\n @State() searchSubmitFocused = false;\n @State() showClearButton = false;\n\n /**\n * The automatic capitalisation of the text value as it is entered/edited by the user.\n * Available options: \"off\", \"none\", \"on\", \"sentences\", \"words\", \"characters\".\n */\n @Prop() autocapitalize = \"off\";\n\n /**\n * The state of autocompletion the browser can apply on the text value.\n */\n @Prop() autocomplete: IcAutocompleteTypes = \"off\";\n\n /**\n * The state of autocorrection the browser can apply when the user is entering/editing the text value.\n */\n @Prop() autocorrect: IcAutocorrectStates = \"off\";\n\n /**\n * If `true`, the form control will have input focus when the page loads.\n */\n @Prop() autofocus = false;\n\n /**\n * 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 @Prop() charactersUntilSuggestion = 2;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n }\n\n /**\n * Specify whether to disable the built in filtering. For example, if options will already be filtered from external source.\n * If `true`, all options provided will be displayed.\n */\n @Prop() disableAutoFiltering = false;\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce = 0;\n @Watch(\"debounce\")\n private debounceChanged() {\n this.icChange = debounceEvent(this.icChange, this.debounce);\n }\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n /**\n * If `true`, the search bar will be focused when component loaded.\n */\n @Prop() focusOnLoad = false;\n\n /**\n * Specify whether the search bar fills the full width of the container.\n * If `true`, this overrides the --input-width CSS variable.\n */\n @Prop() fullWidth = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel = false;\n\n /**\n * The hint text for the hidden assistive description element.\n */\n @Prop() assistiveHintText =\n \"When autocomplete results are available use the up and down arrows to choose and press enter to select\";\n\n /**\n * The label for the search bar.\n */\n @Prop() label!: string;\n\n /**\n * The custom name for the label field to correspond with the IcMenuOption type.\n */\n @Prop() labelField = \"label\";\n\n /**\n * Trigger loading state when fetching options asynchronously\n */\n @Prop({ mutable: true }) loading = false;\n @Watch(\"loading\")\n loadingHandler(newValue: boolean): void {\n if (newValue && !this.hasTimedOut) {\n this.preLoad = false;\n this.triggerLoading();\n }\n }\n\n /**\n * Change the message displayed when external loading times out.\n */\n @Prop() loadingErrorLabel = \"Loading Error\";\n\n /**\n * Change the message displayed whilst the options are being loaded externally.\n */\n @Prop() loadingLabel = \"Loading...\";\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name = this.inputId;\n\n /**\n * The placeholder value to display.\n */\n @Prop() placeholder = \"Search\";\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly = false;\n\n /**\n * If `true`, the search bar will require a value.\n */\n @Prop() required = false;\n\n /**\n * 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 @Prop() searchMode: IcSearchBarSearchModes = \"navigation\";\n\n /**\n * The size of the search bar component.\n */\n @Prop() size: IcSizesNoLarge = \"medium\";\n\n /**\n * If `true`, the value of the search will have its spelling and grammar checked.\n */\n @Prop() spellcheck = false;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n /**\n * If using external filtering, set a timeout for when loading takes too long.\n */\n @Prop() timeout?: number;\n\n /**\n * The custom name for the value field to correspond with the IcMenuOption type.\n */\n @Prop() valueField = \"value\";\n\n @State() filteredOptions: IcMenuOption[] = [];\n @Watch(\"filteredOptions\")\n filteredOptionsHandler(newOptions: IcMenuOption[]): void {\n this.hasTimedOut = newOptions.some((opt) => opt.timedOut);\n }\n\n /**\n * The suggested search options.\n */\n @Prop() options: IcMenuOption[] = [];\n @Watch(\"options\")\n watchOptionsHandler(newOptions: IcMenuOption[]): void {\n if (this.disableAutoFiltering && !this.hasTimedOut) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (newOptions.length > 0) {\n this.filteredOptions = newOptions;\n } else {\n if (this.hadNoOptions()) {\n return;\n }\n this.setMenuChange(true);\n if (!this.preLoad) {\n this.filteredOptions = [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ];\n }\n this.preLoad = true;\n }\n }\n this.debounceAriaLiveUpdate();\n }\n\n /**\n * The value of the search input.\n */\n @Prop({ reflect: true, mutable: true }) value = \"\";\n @Watch(\"value\")\n watchValueHandler(newValue: string): void {\n this.setInputValue(newValue);\n this.icChange.emit({ value: newValue });\n }\n\n // The icChange event is defined here so that it appears as an event for search bar\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when value is cleared with clear button\n */\n @Event() icClear: EventEmitter<void>;\n private handleClear = (ev: Event) => {\n const keyboardEvent = ev as KeyboardEvent;\n const mouseEvent = ev as MouseEvent;\n\n if (\n mouseEvent.type === \"click\" ||\n keyboardEvent.code === \"Enter\" ||\n keyboardEvent.code === \"Space\"\n ) {\n this.value = \"\";\n this.inputEl?.setAttribute(\"value\", \"\");\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n this.filteredOptions = this.options;\n this.el.setFocus();\n\n this.icClear.emit();\n ev.preventDefault();\n\n this.preventSubmit = true;\n }\n };\n\n // The icInput event is defined here so that it appears as an event for search bar\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n private onInput = ({ target }: Event) => {\n this.value = (target as HTMLInputElement).value;\n this.icInput.emit({ value: this.value });\n\n if (this.options.length > 0) {\n this.setMenuChange(true);\n\n this.preLoad = false;\n\n if (this.disableAutoFiltering === false) {\n const rawFilteredOptions = getFilteredMenuOptions(\n this.options,\n false,\n this.value,\n \"anywhere\",\n this.labelField\n );\n\n this.filteredOptions =\n rawFilteredOptions.length > 0\n ? rawFilteredOptions\n : [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ];\n }\n }\n\n if (!this.showClearButton) this.showClearButton = true;\n\n this.debounceAriaLiveUpdate();\n };\n\n private onInputBlur = ({ target, relatedTarget }: FocusEvent) => {\n this.icSearchBarBlur.emit({\n value: (target as HTMLInputElement).value,\n relatedTarget,\n });\n };\n\n private onInputFocus = ({ target }: Event) => {\n this.icSearchBarFocus.emit({ value: (target as HTMLInputElement).value });\n\n this.showClearButton = true;\n };\n\n /**\n * Emitted when option is highlighted within the menu\n */\n @Event() icOptionSelect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when the state of the menu changes (i.e. open or close)\n */\n @Event() icMenuChange: EventEmitter<IcMenuChangeEventDetail>;\n\n /**\n * @internal - Emitted when blur is invoked from clear button\n */\n @Event() icClearBlur: EventEmitter<IcBlurEventDetail>;\n private handleClearBlur = ({ relatedTarget }: FocusEvent) => {\n this.icClearBlur.emit({ relatedTarget });\n\n this.clearButtonFocused = false;\n };\n\n /**\n * Emitted when the 'retry loading' button is clicked\n */\n @Event() icRetryLoad: EventEmitter<IcMultiValueEventDetail>;\n\n /**\n * Emitted when the search value has been submitted\n */\n @Event() icSubmitSearch: EventEmitter<IcValueEventDetail>;\n\n /**\n * @internal - Emitted when blur is invoked from search submit button\n */\n @Event() icSubmitSearchBlur: EventEmitter<IcBlurEventDetail>;\n private handleSubmitSearchBlur = ({ relatedTarget }: FocusEvent) => {\n this.icSubmitSearchBlur.emit({ relatedTarget });\n\n this.searchSubmitFocused = false;\n };\n\n /**\n * Emitted when blur is invoked from ic-search-bar\n */\n @Event() icSearchBarBlur: EventEmitter<IcSearchBarBlurEventDetail>;\n\n /**\n * Emitted when focus is invoked from ic-search-bar\n */\n @Event() icSearchBarFocus: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when a keydown event occurred.\n */\n @Event() icKeydown: EventEmitter<{ event: KeyboardEvent }>;\n\n connectedCallback(): void {\n this.debounceChanged();\n }\n\n disconnectedCallback(): void {\n this.assistiveHintEl?.remove();\n }\n\n componentWillLoad(): void {\n this.setInputValue(this.value);\n\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n }\n\n componentDidLoad(): void {\n if (this.focusOnLoad) {\n this.el.setFocus();\n }\n\n if (this.hasOptionsOrFilterDisabled()) {\n this.renderAssistiveHintEl();\n if (this.disableAutoFiltering) {\n this.filteredOptions = this.options;\n }\n }\n\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Search Bar\"\n );\n }\n\n componentWillRender(): void {\n if (this.prevNoOption && this.menu && !this.hasTimedOut) {\n this.menu.handleSetFirstOption();\n this.prevNoOption = false;\n }\n if (\n this.filteredOptions.find(\n (filteredOption) =>\n filteredOption[this.labelField] === this.emptyOptionListText ||\n filteredOption[this.labelField] === this.loadingErrorLabel ||\n filteredOption[this.labelField] === this.loadingLabel\n )\n ) {\n this.prevNoOption = true;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(event: KeyboardEvent): void {\n this.icKeydown.emit({ event });\n if (this.menu && this.open) {\n this.menu.handleKeyboardOpen(event);\n }\n }\n\n @Listen(\"keyup\", {})\n handleKeyUp(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\") {\n if (this.preventSubmit || this.isSubmitDisabled()) {\n return;\n }\n\n this.handleSubmitSearch();\n this.setMenuChange(false);\n }\n\n if (ev.key === \"Escape\") {\n this.setMenuChange(false);\n }\n\n if (this.preventSubmit) {\n this.preventSubmit = false;\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n this.inputEl?.focus();\n }\n\n private setInputValue = (newValue: string) => {\n if (this.inputEl) {\n const label = getLabelFromValue(\n newValue,\n this.options,\n this.valueField,\n this.labelField\n );\n if (label) this.inputEl.value = label;\n else if (this.inputEl.value !== newValue) {\n this.inputEl.value = newValue;\n }\n }\n };\n\n private handleMouseDown = (ev: Event) => {\n ev.preventDefault();\n };\n\n private handleSubmitSearchFocus = () => {\n this.searchSubmitFocused = true;\n };\n\n private handleSubmitSearch = () => {\n if (this.highlightedValue) this.value = this.highlightedValue;\n this.highlightedValue = undefined;\n this.icSubmitSearch.emit({ value: this.value });\n\n const form = this.el.closest<HTMLFormElement>(\"FORM\");\n\n if (this.searchSubmitButton && !!form && !this.preventSubmit) {\n handleHiddenFormButtonClick(form, this.searchSubmitButton);\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAriaLive);\n\n this.debounceAriaLive = window.setTimeout(() => {\n this.updateSearchResultAriaLive();\n }, 500);\n }\n\n private handleSubmitSearchKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === \" \") {\n ev.preventDefault();\n this.handleSubmitSearch();\n }\n };\n\n private handleRetry = (ev: CustomEvent<IcMultiValueEventDetail>) => {\n this.retryViaKeyPress = ev.detail.keyPressed === \"Enter\";\n this.icRetryLoad.emit({ value: ev.detail.value });\n this.triggerLoading();\n this.retryButtonClick = true;\n };\n\n private triggerLoading = () => {\n const loadingOption: IcMenuOption[] = [\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\n private handleOptionSelect = (ev: CustomEvent) => {\n if (ev.detail.label === this.emptyOptionListText) {\n this.el.setFocus();\n return;\n }\n\n this.value = ev.detail.value;\n this.icOptionSelect.emit({ value: this.value });\n };\n\n private handleMenuOptionHighlight = (\n ev: CustomEvent<IcMenuOptionIdEventDetail>\n ) => {\n const { optionId } = ev.detail;\n if (optionId)\n this.highlightedValue = optionId.replace(`${this.menuId}-`, \"\");\n this.ariaActiveDescendant = optionId || \"\";\n };\n\n private handleMenuChange = (ev: CustomEvent<IcMenuChangeEventDetail>) => {\n this.setMenuChange(ev.detail.open);\n if (!ev.detail.open) {\n this.menuCloseFromMenuChangeEvent = true;\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n this.icMenuChange.emit({ open });\n }\n };\n\n private handleHostFocus = () => {\n if (this.options && this.value && !this.menuCloseFromMenuChangeEvent) {\n this.setMenuChange(true);\n }\n this.truncateValue = false;\n\n this.icSearchBarFocus.emit();\n };\n\n private handleHostBlur = ({ relatedTarget }: FocusEvent) => {\n if (\n this.open &&\n this.options &&\n relatedTarget !== this.menu &&\n !this.retryViaKeyPress &&\n !this.retryButtonClick\n ) {\n this.setMenuChange(false);\n }\n\n if (this.retryButtonClick || this.retryViaKeyPress) {\n this.inputEl?.focus();\n }\n\n this.showClearButton = false;\n this.menuCloseFromMenuChangeEvent = false;\n this.truncateValue = true;\n this.icSearchBarBlur.emit({\n relatedTarget,\n value: this.value,\n });\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n };\n\n private handleFocusClearButton = () => {\n this.clearButtonFocused = true;\n };\n\n private renderAssistiveHintEl = () => {\n const input = this.el.shadowRoot?.querySelector(`#${this.inputId}`);\n\n if (\n input &&\n Object.keys(input).length > 0 &&\n this.hasOptionsOrFilterDisabled()\n ) {\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 input.after?.(this.assistiveHintEl);\n }\n };\n\n private updateSearchResultAriaLive = () => {\n const searchResultsStatusEl =\n this.el.shadowRoot?.querySelector<HTMLParagraphElement>(\n \".search-results-status\"\n );\n\n if (searchResultsStatusEl) {\n if (\n !this.open ||\n this.value === \"\" ||\n this.value.length < this.charactersUntilSuggestion\n ) {\n searchResultsStatusEl.innerText = \"\";\n } else if (\n this.hasOptionsOrFilterDisabled() &&\n this.filteredOptions.length > 0 &&\n this.open &&\n !this.filteredOptions[0].loading\n ) {\n searchResultsStatusEl.innerText = this.hadNoOptions()\n ? this.emptyOptionListText\n : `${this.filteredOptions.length} result${\n this.filteredOptions.length > 1 ? \"s\" : \"\"\n } available`;\n }\n }\n };\n\n private hasOptionsOrFilterDisabled = () =>\n this.options.length > 0 || this.disableAutoFiltering;\n\n private hadNoOptions = () =>\n this.filteredOptions.length === 1 &&\n this.filteredOptions[0][this.labelField] === this.emptyOptionListText &&\n this.searchMode === \"navigation\";\n\n private isSubmitDisabled = () =>\n !this.value ||\n this.value.length < this.charactersUntilSuggestion ||\n this.disabled ||\n this.hadNoOptions() ||\n this.hasTimedOut ||\n this.loading;\n\n render() {\n const {\n inputId,\n name,\n label,\n required,\n size,\n placeholder,\n helperText,\n disabled,\n value,\n readonly,\n spellcheck,\n fullWidth,\n options,\n open,\n hideLabel,\n menuId,\n ariaActiveDescendant,\n truncateValue,\n autofocus,\n autocapitalize,\n autocomplete,\n filteredOptions,\n theme,\n charactersUntilSuggestion,\n labelField,\n valueField,\n loadingLabel,\n loadingErrorLabel,\n searchMode,\n showClearButton,\n searchSubmitFocused,\n clearButtonFocused,\n } = this;\n\n const disabledMode = readonly || disabled;\n\n const describedBy = getInputDescribedByText(\n inputId,\n helperText !== \"\",\n false\n ).trim();\n\n let describedById = undefined;\n\n if (describedBy !== \"\" && this.hasOptionsOrFilterDisabled()) {\n describedById = `${describedBy} ${inputId}-assistive-hint`;\n } else if (this.hasOptionsOrFilterDisabled()) {\n describedById = `${inputId}-assistive-hint`;\n } else if (describedBy !== \"\") {\n describedById = describedBy;\n }\n\n const hasSuggestedSearch = !!value && this.hasOptionsOrFilterDisabled();\n const menuOpen = hasSuggestedSearch && open && filteredOptions.length > 0;\n const menuRendered = menuOpen && value.length >= charactersUntilSuggestion;\n\n const labelValue = getLabelFromValue(\n value,\n options,\n valueField,\n labelField\n );\n\n renderHiddenInput(this.el as HTMLElement, value, name, disabledMode);\n\n return (\n <Host\n class={{\n \"ic-search-bar-search\": true,\n \"ic-search-bar-full-width\": fullWidth,\n \"ic-search-bar-disabled\": disabled,\n \"ic-search-bar-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n onFocus={this.handleHostFocus}\n onBlur={this.handleHostBlur}\n >\n <ic-input-container readonly={readonly} disabled={disabledMode}>\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabledMode && !readonly}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el) => (this.anchorEl = el)}\n size={size}\n disabled={disabledMode}\n readonly={readonly}\n fullWidth={fullWidth}\n >\n <input\n id={inputId}\n name={name}\n ref={(el) => (this.inputEl = el)}\n value={options && !!labelValue ? labelValue : value}\n class={{\n \"no-left-pad\": readonly,\n readonly,\n \"truncate-value\": truncateValue,\n }}\n placeholder={placeholder}\n required={required}\n disabled={disabledMode}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onInputBlur}\n onFocus={this.onInputFocus}\n aria-label={label}\n aria-activedescendant={ariaActiveDescendant}\n aria-expanded={\n options.length > 0 && menuRendered ? `${menuOpen}` : undefined\n }\n aria-owns={menuRendered ? menuId : undefined}\n aria-describedby={describedById}\n aria-controls={menuRendered ? menuId : undefined}\n aria-haspopup={options.length > 0 ? \"listbox\" : undefined}\n aria-autocomplete={hasSuggestedSearch ? \"list\" : undefined}\n role={options.length > 0 && menuRendered ? \"combobox\" : undefined}\n autocomplete={autocomplete}\n autocapitalize={autocapitalize}\n autoFocus={autofocus}\n spellcheck={spellcheck}\n inputmode=\"search\"\n ></input>\n <div\n class={{\n \"clear-button-container\": true,\n \"clear-button-visible\":\n !!value && !disabledMode && showClearButton,\n }}\n >\n <ic-button\n id=\"clear-button\"\n class={{\n \"clear-button\": true,\n \"clear-button-unfocused\": !clearButtonFocused,\n }}\n aria-label=\"Clear\"\n innerHTML={clearIcon}\n onClick={this.handleClear}\n onMouseDown={this.handleMouseDown}\n size={size}\n onFocus={this.handleFocusClearButton}\n onBlur={this.handleClearBlur}\n onKeyDown={this.handleClear}\n type=\"submit\"\n variant=\"icon\"\n theme={clearButtonFocused ? \"light\" : \"dark\"}\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n <div\n class={{\n \"search-submit-button-container\": true,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }}\n >\n <ic-button\n id=\"search-submit-button\"\n aria-label=\"Search\"\n ref={(el) => (this.searchSubmitButton = el)}\n class={{\n \"search-submit-button\": true,\n \"search-submit-button-small\": size === \"small\",\n \"search-submit-button-unfocused\": !searchSubmitFocused,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }}\n disabled={this.isSubmitDisabled()}\n innerHTML={searchIcon}\n size={size}\n onClick={this.handleSubmitSearch}\n onMouseDown={this.handleMouseDown}\n onBlur={this.handleSubmitSearchBlur}\n onFocus={this.handleSubmitSearchFocus}\n onKeyDown={this.handleSubmitSearchKeyDown}\n type=\"submit\"\n variant=\"icon\"\n theme={searchSubmitFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n </ic-input-component-container>\n <div\n class={{\n \"menu-container\": true,\n fullwidth: fullWidth,\n }}\n >\n {menuRendered && this.anchorEl && this.inputEl && (\n <ic-menu\n class={{\n \"no-results\":\n this.hadNoOptions() ||\n (filteredOptions.length === 1 &&\n (filteredOptions[0][labelField] === loadingLabel ||\n filteredOptions[0][labelField] === loadingErrorLabel)),\n }}\n activationType=\"manual\"\n anchorEl={this.anchorEl}\n autofocusOnSelected={false}\n searchMode={searchMode}\n inputEl={this.inputEl}\n inputLabel={label}\n ref={(el) => (this.menu = el)}\n fullWidth={fullWidth}\n menuId={menuId}\n open={true}\n options={filteredOptions}\n onMenuOptionSelect={this.handleOptionSelect}\n onMenuStateChange={this.handleMenuChange}\n onMenuOptionId={this.handleMenuOptionHighlight}\n onRetryButtonClicked={this.handleRetry}\n parentEl={this.el as HTMLElement}\n value={value}\n labelField={labelField}\n valueField={valueField}\n ></ic-menu>\n )}\n </div>\n </ic-input-container>\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"search-results-status\"\n ></div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-search-bar.js","mappings":"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","names":[],"sources":["src/components/ic-search-bar/ic-search-bar.css?tag=ic-search-bar&encapsulation=shadow","src/components/ic-search-bar/ic-search-bar.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-menu: z-index of search bar menu\n */\n\n:host(.ic-search-bar-search) {\n display: block;\n\n --divider-height: 1.5rem;\n --ic-input-label-helpertext-padding: var(--ic-space-xxs);\n --border-color: var(--ic-search-bar-outline);\n --input-bg-color: var(--ic-search-bar-background);\n --border-color-disabled: var(--ic-search-bar-outline-disabled);\n --menu-item-text-color: var(--ic-search-bar-dropdown-option-text);\n --menu-item-desc-text-color: var(--ic-search-bar-dropdown-option-description);\n --menu-bg-color: var(--ic-search-bar-dropdown-background);\n --menu-border-color: var(--ic-search-bar-dropdown-outline);\n}\n\n:host(.ic-search-bar-disabled) {\n --ic-input-label-text-color: var(--ic-search-bar-label-disabled);\n --ic-input-label-helper-text-color: var(--ic-search-bar-subtitle-disabled);\n}\n\n:host(.ic-search-bar-search:hover) {\n --border-color: var(--ic-search-bar-outline-hover);\n}\n\n:host(.ic-search-bar-search:active) {\n --border-color: var(--ic-search-bar-outline-pressed);\n}\n\n:host(.ic-search-bar-search.ic-search-bar-small) {\n --divider-height: 1rem;\n}\n\n:host(.ic-search-bar-full-width) {\n width: 100%;\n}\n\n/* Custom Input */\n\n::placeholder {\n color: var(--ic-search-bar-placeholder-text);\n opacity: 1;\n}\n\ninput {\n border: 0;\n border-radius: var(--ic-border-radius);\n color: var(--ic-search-bar-filled-text);\n background-color: var(--input-bg-color);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n padding-right: var(--ic-space-xs);\n padding-left: var(--ic-space-xs);\n caret-color: var(--ic-search-bar-filled-text-cursor);\n}\n\ninput:focus {\n border: 0;\n outline: 0;\n}\n\ninput:disabled,\ninput:disabled::placeholder {\n color: var(--ic-search-bar-disabled-text);\n}\n\n/* Chrome, Safari, Edge */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.no-left-pad {\n padding-left: 0;\n}\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\ninput[type=\"search\"].truncate-value {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n/* CLEAR */\n\n.clear-button-container {\n align-items: center;\n margin-right: var(--ic-space-1px);\n display: none;\n visibility: hidden;\n}\n\n.clear-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus,\n.clear-button:active {\n background-color: var(--ic-color-focus-inner);\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer);\n border-radius: 0.25rem;\n}\n\n.clear-button-unfocused * {\n fill: var(--ic-search-bar-clear-button);\n}\n\n.clear-button:focus,\n.clear-button:active * {\n fill: var(--ic-atoms-input-clear-button-focus);\n}\n\n.clear-button-visible {\n visibility: visible;\n display: flex;\n}\n\n.search-submit-button-container {\n display: flex;\n align-items: center;\n}\n\n.search-submit-button-unfocused * {\n fill: var(--ic-search-bar-filled-icon);\n}\n\n.search-submit-button-disabled * {\n fill: var(--ic-search-bar-icon-disabled);\n}\n\n.search-submit-button-disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.search-submit-button:focus,\n.search-submit-button:active {\n background-color: var(--ic-color-focus-inner) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-color-focus-outer) !important;\n border-radius: var(--ic-space-xxs);\n}\n\n.search-submit-button:focus,\n.search-submit-button:active * {\n fill: white;\n}\n\n.divider {\n width: var(--ic-border-width);\n background-color: var(--ic-search-bar-dropdown-divider);\n height: var(--divider-height);\n}\n\n.menu-container {\n width: var(--input-width, 20rem);\n position: relative;\n top: var(--ic-space-xxxs);\n}\n\n.menu-container.fullwidth {\n width: 100%;\n}\n\n.no-results {\n cursor: not-allowed;\n}\n\n.search-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n margin-bottom: calc(-1 * var(--ic-space-1px));\n margin-right: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: var(--ic-space-1px);\n}\n\n@media (forced-colors: active) {\n .search-submit-button-unfocused * {\n fill: canvastext;\n }\n\n .search-submit-button-disabled * {\n fill: GrayText;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n Method,\n h,\n} from \"@stencil/core\";\n\nimport {\n IcAutocompleteTypes,\n IcAutocorrectStates,\n IcMenuOption,\n IcMultiValueEventDetail,\n IcSizesNoLarge,\n IcThemeMode,\n} from \"../../utils/types\";\nimport {\n getInputDescribedByText,\n renderHiddenInput,\n handleHiddenFormButtonClick,\n getLabelFromValue,\n onComponentRequiredPropUndefined,\n getFilteredMenuOptions,\n removeDisabledFalse,\n debounceEvent,\n} from \"../../utils/helpers\";\nimport {\n IcSearchBarBlurEventDetail,\n IcSearchBarSearchModes,\n} from \"./ic-search-bar.types\";\nimport { IcValueEventDetail, IcBlurEventDetail } from \"../../utils/types\";\nimport {\n IcMenuChangeEventDetail,\n IcMenuOptionIdEventDetail,\n IcOptionSelectEventDetail,\n} from \"../ic-menu/ic-menu.types\";\n\nimport clearIcon from \"../../assets/clear-icon.svg\";\nimport searchIcon from \"../../assets/search-icon.svg\";\nimport { IcButtonTypes } from \"../ic-button/ic-button.types\";\n\nlet inputIds = 0;\n\n/**\n * @slot helper-text - Content is set as the helper text for the search bar.\n */\n@Component({\n tag: \"ic-search-bar\",\n styleUrl: \"ic-search-bar.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class SearchBar {\n private anchorEl?: HTMLElement;\n private assistiveHintEl?: HTMLSpanElement;\n private debounceAriaLive?: number;\n private hasTimedOut = false;\n private inputEl?: HTMLInputElement;\n private inputId = `ic-search-bar-input-${inputIds++}`;\n private menu?: HTMLIcMenuElement;\n private menuCloseFromMenuChangeEvent = false;\n private menuId = `${this.inputId}-menu`;\n private preLoad = true;\n private preventSubmit = false;\n private prevNoOption = false;\n private retryButtonClick = false;\n private retryViaKeyPress = false;\n private timeoutTimer?: number;\n private truncateValue = false;\n private searchSubmitButton?: HTMLIcButtonElement;\n\n @Element() el: HTMLIcSearchBarElement;\n\n @State() ariaActiveDescendant?: string;\n @State() clearButtonFocused = false;\n @State() highlightedValue?: string;\n @State() open = false;\n @State() searchSubmitFocused = false;\n @State() showClearButton = false;\n\n /**\n * The automatic capitalisation of the text value as it is entered/edited by the user.\n * Available options: \"off\", \"none\", \"on\", \"sentences\", \"words\", \"characters\".\n */\n @Prop() autocapitalize = \"off\";\n\n /**\n * The state of autocompletion the browser can apply on the text value.\n */\n @Prop() autocomplete: IcAutocompleteTypes = \"off\";\n\n /**\n * The state of autocorrection the browser can apply when the user is entering/editing the text value.\n */\n @Prop() autocorrect: IcAutocorrectStates = \"off\";\n\n /**\n * If `true`, the form control will have input focus when the page loads.\n */\n @Prop() autofocus = false;\n\n /**\n * 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 @Prop() charactersUntilSuggestion = 2;\n @Watch(\"charactersUntilSuggestion\")\n watchCharactersUntilSuggestionHandler(): void {\n if (this.showMenuWithNoInput()) {\n this.filteredOptions = this.options;\n }\n }\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n }\n\n /**\n * Specify whether to disable the built in filtering. For example, if options will already be filtered from external source.\n * If `true`, all options provided will be displayed.\n */\n @Prop() disableAutoFiltering = false;\n\n /**\n * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\n */\n @Prop() debounce = 0;\n @Watch(\"debounce\")\n private debounceChanged() {\n this.icChange = debounceEvent(this.icChange, this.debounce);\n }\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n /**\n * If `true`, the search bar will be focused when component loaded.\n */\n @Prop() focusOnLoad = false;\n\n /**\n * Specify whether the search bar fills the full width of the container.\n * If `true`, this overrides the --input-width CSS variable.\n */\n @Prop() fullWidth = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel = false;\n\n /**\n * The hint text for the hidden assistive description element.\n */\n @Prop() assistiveHintText =\n \"When autocomplete results are available use the up and down arrows to choose and press enter to select\";\n\n /**\n * The label for the search bar.\n */\n @Prop() label!: string;\n\n /**\n * The custom name for the label field to correspond with the IcMenuOption type.\n */\n @Prop() labelField = \"label\";\n\n /**\n * Trigger loading state when fetching options asynchronously\n */\n @Prop({ mutable: true }) loading = false;\n @Watch(\"loading\")\n loadingHandler(newValue: boolean): void {\n if (newValue && !this.hasTimedOut) {\n this.preLoad = false;\n this.triggerLoading();\n }\n }\n\n /**\n * Change the message displayed when external loading times out.\n */\n @Prop() loadingErrorLabel = \"Loading Error\";\n\n /**\n * Change the message displayed whilst the options are being loaded externally.\n */\n @Prop() loadingLabel = \"Loading...\";\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name = this.inputId;\n\n /**\n * The placeholder value to display.\n */\n @Prop() placeholder = \"Search\";\n\n /**\n * If `true` the parent form will not submit when the icSubmitSearch event fires.\n */\n @Prop() preventFormSubmitOnSearch = false;\n @State() searchButtonType: IcButtonTypes;\n @Watch(\"preventFormSubmitOnSearch\")\n preventFormSubmitOnSearchHandler(): void {\n this.updateSearchButtonType();\n }\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly = false;\n\n /**\n * If `true`, the search bar will require a value.\n */\n @Prop() required = false;\n\n /**\n * 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 @Prop() searchMode: IcSearchBarSearchModes = \"navigation\";\n\n /**\n * The size of the search bar component.\n */\n @Prop() size: IcSizesNoLarge = \"medium\";\n\n /**\n * If `true`, the value of the search will have its spelling and grammar checked.\n */\n @Prop() spellcheck = false;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n /**\n * If using external filtering, set a timeout for when loading takes too long.\n */\n @Prop() timeout?: number;\n\n /**\n * The custom name for the value field to correspond with the IcMenuOption type.\n */\n @Prop() valueField = \"value\";\n\n @State() filteredOptions: IcMenuOption[] = [];\n @Watch(\"filteredOptions\")\n filteredOptionsHandler(newOptions: IcMenuOption[]): void {\n this.hasTimedOut = newOptions.some((opt) => opt.timedOut);\n }\n\n /**\n * The suggested search options.\n */\n @Prop() options: IcMenuOption[] = [];\n @Watch(\"options\")\n watchOptionsHandler(newOptions: IcMenuOption[]): void {\n if (this.disableAutoFiltering) {\n if (!this.hasTimedOut) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (newOptions.length > 0) {\n this.filteredOptions = newOptions;\n } else {\n if (this.hadNoOptions()) {\n return;\n }\n this.setMenuChange(true);\n if (!this.preLoad) {\n this.filteredOptions = [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ];\n }\n this.preLoad = true;\n }\n }\n } else if (this.showMenuWithNoInput()) {\n this.filteredOptions = newOptions;\n }\n this.debounceAriaLiveUpdate();\n }\n\n /**\n * The value of the search input.\n */\n @Prop({ reflect: true, mutable: true }) value = \"\";\n @Watch(\"value\")\n watchValueHandler(newValue: string): void {\n this.setInputValue(newValue);\n this.icChange.emit({ value: newValue });\n }\n\n // The icChange event is defined here so that it appears as an event for search bar\n /**\n * Emitted when the value has changed.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when value is cleared with clear button\n */\n @Event() icClear: EventEmitter<void>;\n private handleClear = (ev: Event) => {\n const keyboardEvent = ev as KeyboardEvent;\n const mouseEvent = ev as MouseEvent;\n\n if (\n mouseEvent.type === \"click\" ||\n keyboardEvent.code === \"Enter\" ||\n keyboardEvent.code === \"Space\"\n ) {\n this.value = \"\";\n this.inputEl?.setAttribute(\"value\", \"\");\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n this.filteredOptions = this.options;\n this.showMenuWithNoInput() && this.setMenuChange(true);\n this.el.setFocus();\n\n this.icClear.emit();\n ev.preventDefault();\n\n this.preventSubmit = true;\n }\n };\n\n // The icInput event is defined here so that it appears as an event for search bar\n /**\n * Emitted when a keyboard input occurred.\n */\n @Event() icInput: EventEmitter<IcValueEventDetail>;\n private onInput = ({ target }: Event) => {\n this.value = (target as HTMLInputElement).value;\n this.icInput.emit({ value: this.value });\n\n if (this.options.length > 0) {\n this.setMenuChange(true);\n\n this.preLoad = false;\n\n if (this.disableAutoFiltering === false) {\n const rawFilteredOptions = getFilteredMenuOptions(\n this.options,\n false,\n this.value,\n \"anywhere\",\n this.labelField\n );\n\n this.filteredOptions =\n rawFilteredOptions.length > 0\n ? rawFilteredOptions\n : [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ];\n }\n }\n\n if (!this.showClearButton) this.showClearButton = true;\n\n this.debounceAriaLiveUpdate();\n };\n\n private onInputBlur = ({ target, relatedTarget }: FocusEvent) => {\n this.icSearchBarBlur.emit({\n value: (target as HTMLInputElement).value,\n relatedTarget,\n });\n };\n\n private onInputFocus = ({ target }: Event) => {\n this.icSearchBarFocus.emit({ value: (target as HTMLInputElement).value });\n\n this.showClearButton = true;\n };\n\n /**\n * Emitted when option is highlighted within the menu\n */\n @Event() icOptionSelect: EventEmitter<IcOptionSelectEventDetail>;\n\n /**\n * Emitted when the state of the menu changes (i.e. open or close)\n */\n @Event() icMenuChange: EventEmitter<IcMenuChangeEventDetail>;\n\n /**\n * @internal - Emitted when blur is invoked from clear button\n */\n @Event() icClearBlur: EventEmitter<IcBlurEventDetail>;\n private handleClearBlur = ({ relatedTarget }: FocusEvent) => {\n this.icClearBlur.emit({ relatedTarget });\n\n this.clearButtonFocused = false;\n };\n\n /**\n * Emitted when the 'retry loading' button is clicked\n */\n @Event() icRetryLoad: EventEmitter<IcMultiValueEventDetail>;\n\n /**\n * Emitted when the search value has been submitted\n */\n @Event() icSubmitSearch: EventEmitter<IcValueEventDetail>;\n\n /**\n * @internal - Emitted when blur is invoked from search submit button\n */\n @Event() icSubmitSearchBlur: EventEmitter<IcBlurEventDetail>;\n private handleSubmitSearchBlur = ({ relatedTarget }: FocusEvent) => {\n this.icSubmitSearchBlur.emit({ relatedTarget });\n\n this.searchSubmitFocused = false;\n };\n\n /**\n * Emitted when blur is invoked from ic-search-bar\n */\n @Event() icSearchBarBlur: EventEmitter<IcSearchBarBlurEventDetail>;\n\n /**\n * Emitted when focus is invoked from ic-search-bar\n */\n @Event() icSearchBarFocus: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when a keydown event occurred.\n */\n @Event() icKeydown: EventEmitter<{ event: KeyboardEvent }>;\n\n connectedCallback(): void {\n this.debounceChanged();\n }\n\n disconnectedCallback(): void {\n this.assistiveHintEl?.remove();\n }\n\n componentWillLoad(): void {\n this.setInputValue(this.value);\n\n removeDisabledFalse(this.disabled, this.el as HTMLElement);\n\n this.updateSearchButtonType();\n }\n\n componentDidLoad(): void {\n if (this.focusOnLoad) {\n this.el.setFocus();\n }\n\n if (this.hasOptionsOrFilterDisabled()) {\n this.renderAssistiveHintEl();\n if (this.disableAutoFiltering || this.showMenuWithNoInput()) {\n this.filteredOptions = this.options;\n }\n }\n\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Search Bar\"\n );\n }\n\n componentWillRender(): void {\n if (this.prevNoOption && this.menu && !this.hasTimedOut) {\n this.menu.handleSetFirstOption();\n this.prevNoOption = false;\n }\n if (\n this.filteredOptions.find(\n (filteredOption) =>\n filteredOption[this.labelField] === this.emptyOptionListText ||\n filteredOption[this.labelField] === this.loadingErrorLabel ||\n filteredOption[this.labelField] === this.loadingLabel\n )\n ) {\n this.prevNoOption = true;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(event: KeyboardEvent): void {\n this.icKeydown.emit({ event });\n if (this.menu && this.open) {\n this.menu.handleKeyboardOpen(event);\n }\n }\n\n @Listen(\"keyup\", {})\n handleKeyUp(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\") {\n if (this.preventSubmit || this.isSubmitDisabled()) {\n return;\n }\n\n this.handleSubmitSearch();\n this.setMenuChange(false);\n }\n\n if (ev.key === \"Escape\") {\n this.setMenuChange(false);\n }\n\n if (this.preventSubmit) {\n this.preventSubmit = false;\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n this.inputEl?.focus();\n }\n\n private setInputValue = (newValue: string) => {\n if (this.inputEl) {\n const label = getLabelFromValue(\n newValue,\n this.options,\n this.valueField,\n this.labelField\n );\n if (label) this.inputEl.value = label;\n else if (this.inputEl.value !== newValue) {\n this.inputEl.value = newValue;\n }\n }\n };\n\n private handleMouseDown = (ev: Event) => {\n ev.preventDefault();\n };\n\n private handleSubmitSearchFocus = () => {\n this.searchSubmitFocused = true;\n };\n\n private handleSubmitSearch = () => {\n if (this.highlightedValue) this.value = this.highlightedValue;\n this.highlightedValue = undefined;\n this.icSubmitSearch.emit({ value: this.value });\n\n const form = this.el.closest<HTMLFormElement>(\"FORM\");\n\n if (this.searchSubmitButton && !!form && !this.preventSubmit) {\n handleHiddenFormButtonClick(form, this.searchSubmitButton);\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAriaLive);\n\n this.debounceAriaLive = window.setTimeout(() => {\n this.updateSearchResultAriaLive();\n }, 500);\n }\n\n private handleSubmitSearchKeyDown = (ev: KeyboardEvent) => {\n if (ev.key === \" \") {\n ev.preventDefault();\n this.handleSubmitSearch();\n }\n };\n\n private handleRetry = (ev: CustomEvent<IcMultiValueEventDetail>) => {\n this.retryViaKeyPress = ev.detail.keyPressed === \"Enter\";\n this.icRetryLoad.emit({ value: ev.detail.value });\n this.triggerLoading();\n this.retryButtonClick = true;\n };\n\n private triggerLoading = () => {\n const loadingOption: IcMenuOption[] = [\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\n private handleOptionSelect = (ev: CustomEvent) => {\n if (ev.detail.label === this.emptyOptionListText) {\n this.el.setFocus();\n return;\n }\n\n this.value = ev.detail.value;\n this.icOptionSelect.emit({ value: this.value });\n };\n\n private handleMenuOptionHighlight = (\n ev: CustomEvent<IcMenuOptionIdEventDetail>\n ) => {\n const { optionId } = ev.detail;\n if (optionId)\n this.highlightedValue = optionId.replace(`${this.menuId}-`, \"\");\n this.ariaActiveDescendant = optionId || \"\";\n };\n\n private handleMenuChange = (ev: CustomEvent<IcMenuChangeEventDetail>) => {\n this.setMenuChange(ev.detail.open);\n if (!ev.detail.open) {\n this.menuCloseFromMenuChangeEvent = true;\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n this.icMenuChange.emit({ open });\n }\n };\n\n private handleHostFocus = () => {\n if (\n this.options &&\n (this.value || this.showMenuWithNoInput()) &&\n !this.menuCloseFromMenuChangeEvent\n ) {\n this.setMenuChange(true);\n }\n this.truncateValue = false;\n this.showMenuWithNoInput() && this.debounceAriaLiveUpdate();\n\n this.icSearchBarFocus.emit();\n };\n\n private handleHostBlur = ({ relatedTarget }: FocusEvent) => {\n if (\n this.open &&\n this.options &&\n relatedTarget !== this.menu &&\n !this.retryViaKeyPress &&\n !this.retryButtonClick\n ) {\n this.setMenuChange(false);\n }\n\n if (this.retryButtonClick || this.retryViaKeyPress) {\n this.inputEl?.focus();\n }\n\n this.showClearButton = false;\n this.menuCloseFromMenuChangeEvent = false;\n this.truncateValue = true;\n this.icSearchBarBlur.emit({\n relatedTarget,\n value: this.value,\n });\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n this.showMenuWithNoInput() && this.updateSearchResultAriaLive();\n };\n\n private handleFocusClearButton = () => {\n this.clearButtonFocused = true;\n };\n\n private renderAssistiveHintEl = () => {\n const input = this.el.shadowRoot?.querySelector(`#${this.inputId}`);\n\n if (\n input &&\n Object.keys(input).length > 0 &&\n this.hasOptionsOrFilterDisabled()\n ) {\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 input.after?.(this.assistiveHintEl);\n }\n };\n\n private updateSearchResultAriaLive = () => {\n const searchResultsStatusEl =\n this.el.shadowRoot?.querySelector<HTMLParagraphElement>(\n \".search-results-status\"\n );\n\n if (searchResultsStatusEl) {\n if (\n !this.open ||\n (this.value === \"\" && !this.showMenuWithNoInput()) ||\n this.value.length < this.charactersUntilSuggestion\n ) {\n searchResultsStatusEl.innerText = \"\";\n } else if (\n this.hasOptionsOrFilterDisabled() &&\n this.filteredOptions.length > 0 &&\n this.open &&\n !this.filteredOptions[0].loading\n ) {\n searchResultsStatusEl.innerText = this.hadNoOptions()\n ? this.emptyOptionListText\n : `${this.filteredOptions.length} result${\n this.filteredOptions.length > 1 ? \"s\" : \"\"\n } available`;\n }\n }\n };\n\n private hasOptionsOrFilterDisabled = () =>\n this.options.length > 0 || this.disableAutoFiltering;\n\n private hadNoOptions = () =>\n this.filteredOptions.length === 1 &&\n this.filteredOptions[0][this.labelField] === this.emptyOptionListText &&\n this.searchMode === \"navigation\";\n\n private isSubmitDisabled = () =>\n !this.value ||\n this.value.length < this.charactersUntilSuggestion ||\n this.disabled ||\n this.hadNoOptions() ||\n this.hasTimedOut ||\n this.loading;\n\n private showMenuWithNoInput = () => this.charactersUntilSuggestion === 0;\n private updateSearchButtonType = () => {\n this.searchButtonType =\n !!this.el.closest<HTMLFormElement>(\"FORM\") &&\n !this.preventFormSubmitOnSearch\n ? \"submit\"\n : \"button\";\n };\n\n render() {\n const {\n inputId,\n name,\n label,\n required,\n size,\n placeholder,\n helperText,\n disabled,\n value,\n readonly,\n spellcheck,\n fullWidth,\n options,\n open,\n hideLabel,\n menuId,\n ariaActiveDescendant,\n truncateValue,\n autofocus,\n autocapitalize,\n autocomplete,\n filteredOptions,\n theme,\n charactersUntilSuggestion,\n labelField,\n valueField,\n loadingLabel,\n loadingErrorLabel,\n searchMode,\n showClearButton,\n searchSubmitFocused,\n clearButtonFocused,\n searchButtonType,\n } = this;\n\n const disabledMode = readonly || disabled;\n\n const describedBy = getInputDescribedByText(\n this.el,\n inputId,\n helperText !== \"\",\n false\n ).trim();\n\n let describedById = undefined;\n\n if (describedBy !== \"\" && this.hasOptionsOrFilterDisabled()) {\n describedById = `${describedBy} ${inputId}-assistive-hint`;\n } else if (this.hasOptionsOrFilterDisabled()) {\n describedById = `${inputId}-assistive-hint`;\n } else if (describedBy !== \"\") {\n describedById = describedBy;\n }\n\n const hasSuggestedSearch =\n (!!value || this.showMenuWithNoInput()) &&\n this.hasOptionsOrFilterDisabled();\n const menuOpen = hasSuggestedSearch && open && filteredOptions.length > 0;\n const menuRendered = menuOpen && value.length >= charactersUntilSuggestion;\n\n const labelValue = getLabelFromValue(\n value,\n options,\n valueField,\n labelField\n );\n\n renderHiddenInput(this.el as HTMLElement, value, name, disabledMode);\n\n return (\n <Host\n class={{\n \"ic-search-bar-search\": true,\n \"ic-search-bar-full-width\": fullWidth,\n \"ic-search-bar-disabled\": disabled,\n \"ic-search-bar-small\": size === \"small\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n onFocus={this.handleHostFocus}\n onBlur={this.handleHostBlur}\n >\n <ic-input-container readonly={readonly} disabled={disabledMode}>\n {!hideLabel && (\n <ic-input-label\n for={inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabledMode && !readonly}\n readonly={readonly}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n )}\n <ic-input-component-container\n ref={(el) => (this.anchorEl = el)}\n size={size}\n disabled={disabledMode}\n readonly={readonly}\n fullWidth={fullWidth}\n >\n <input\n id={inputId}\n name={name}\n ref={(el) => (this.inputEl = el)}\n value={options && !!labelValue ? labelValue : value}\n class={{\n \"no-left-pad\": readonly,\n readonly,\n \"truncate-value\": truncateValue,\n }}\n placeholder={placeholder}\n required={required}\n disabled={disabledMode}\n readonly={readonly}\n onInput={this.onInput}\n onBlur={this.onInputBlur}\n onFocus={this.onInputFocus}\n aria-label={hideLabel ? label : undefined}\n aria-activedescendant={ariaActiveDescendant}\n aria-expanded={\n options.length > 0 && menuRendered ? `${menuOpen}` : undefined\n }\n aria-owns={menuRendered ? menuId : undefined}\n aria-describedby={describedById}\n aria-controls={menuRendered ? menuId : undefined}\n aria-haspopup={options.length > 0 ? \"listbox\" : undefined}\n aria-autocomplete={hasSuggestedSearch ? \"list\" : undefined}\n role={options.length > 0 && menuRendered ? \"combobox\" : undefined}\n autocomplete={autocomplete}\n autocapitalize={autocapitalize}\n autoFocus={autofocus}\n spellcheck={spellcheck}\n inputmode=\"search\"\n ></input>\n <div\n class={{\n \"clear-button-container\": true,\n \"clear-button-visible\":\n !!value && !disabledMode && showClearButton,\n }}\n >\n <ic-button\n id=\"clear-button\"\n class={{\n \"clear-button\": true,\n \"clear-button-unfocused\": !clearButtonFocused,\n }}\n aria-label=\"Clear\"\n innerHTML={clearIcon}\n onClick={this.handleClear}\n onMouseDown={this.handleMouseDown}\n size={size}\n onFocus={this.handleFocusClearButton}\n onBlur={this.handleClearBlur}\n onKeyDown={this.handleClear}\n type={\"button\"}\n variant=\"icon\"\n theme={clearButtonFocused ? \"light\" : \"dark\"}\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n <div\n class={{\n \"search-submit-button-container\": true,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }}\n >\n <ic-button\n id=\"search-submit-button\"\n aria-label=\"Search\"\n ref={(el) => (this.searchSubmitButton = el)}\n class={{\n \"search-submit-button\": true,\n \"search-submit-button-small\": size === \"small\",\n \"search-submit-button-unfocused\": !searchSubmitFocused,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }}\n disabled={this.isSubmitDisabled()}\n innerHTML={searchIcon}\n size={size}\n onClick={this.handleSubmitSearch}\n onMouseDown={this.handleMouseDown}\n onBlur={this.handleSubmitSearchBlur}\n onFocus={this.handleSubmitSearchFocus}\n onKeyDown={this.handleSubmitSearchKeyDown}\n type={searchButtonType}\n variant=\"icon\"\n theme={searchSubmitFocused ? \"light\" : \"dark\"}\n ></ic-button>\n </div>\n </ic-input-component-container>\n <div\n class={{\n \"menu-container\": true,\n fullwidth: fullWidth,\n }}\n >\n {menuRendered && this.anchorEl && this.inputEl && (\n <ic-menu\n class={{\n \"no-results\":\n this.hadNoOptions() ||\n (filteredOptions.length === 1 &&\n (filteredOptions[0][labelField] === loadingLabel ||\n filteredOptions[0][labelField] === loadingErrorLabel)),\n }}\n activationType=\"manual\"\n anchorEl={this.anchorEl}\n autofocusOnSelected={false}\n searchMode={searchMode}\n inputEl={this.inputEl}\n inputLabel={label}\n ref={(el) => (this.menu = el)}\n fullWidth={fullWidth}\n menuId={menuId}\n open={true}\n options={filteredOptions}\n onMenuOptionSelect={this.handleOptionSelect}\n onMenuStateChange={this.handleMenuChange}\n onMenuOptionId={this.handleMenuOptionHighlight}\n onRetryButtonClicked={this.handleRetry}\n parentEl={this.el as HTMLElement}\n value={value}\n labelField={labelField}\n valueField={valueField}\n ></ic-menu>\n )}\n </div>\n </ic-input-container>\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"search-results-status\"\n ></div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -19,12 +19,12 @@ const SectionContainer = /*@__PURE__*/ proxyCustomElement(class SectionContainer
19
19
  }
20
20
  render() {
21
21
  const { aligned, fullHeight } = this;
22
- return (h(Host, { key: '67c1b4b2afe62fc53812421ee49c01bf689e05b4', class: {
22
+ return (h(Host, { key: '9e23a2afe1ae3c15369906d28f55755f69254f8e', class: {
23
23
  ["aligned-left"]: aligned === "left" || aligned === null,
24
24
  ["aligned-center"]: aligned === "center",
25
25
  ["aligned-full-width"]: aligned === "full-width",
26
26
  ["no-vertical-padding"]: !!fullHeight,
27
- } }, h("slot", { key: 'cb21cb372b6131cfb990ac0a016f6c64641749f9' })));
27
+ } }, h("slot", { key: '75e12e8d9f4b61ff68aba436e7206129d143ddba' })));
28
28
  }
29
29
  static get style() { return IcSectionContainerStyle0; }
30
30
  }, [1, "ic-section-container", {