@ukic/web-components 3.0.0 → 3.1.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 (1143) hide show
  1. package/README.md +6 -5
  2. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  3. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  4. package/dist/cjs/core.cjs.js +13 -11
  5. package/dist/cjs/core.cjs.js.map +1 -1
  6. package/dist/cjs/{helpers-94b33ab0.js → helpers-a0a128bd.js} +155 -50
  7. package/dist/cjs/helpers-a0a128bd.js.map +1 -0
  8. package/dist/cjs/ic-accordion-group.cjs.entry.js +38 -22
  9. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-accordion.cjs.entry.js +75 -46
  11. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-alert.cjs.entry.js +50 -30
  13. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-back-to-top.cjs.entry.js +32 -16
  15. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-badge.cjs.entry.js +67 -42
  17. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +114 -63
  19. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-breadcrumb.cjs.entry.js +78 -18
  21. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-button_3.cjs.entry.js +341 -168
  23. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js +93 -72
  25. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js +51 -14
  27. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-checkbox.cjs.entry.js +55 -31
  29. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-chip.cjs.entry.js +64 -32
  31. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-classification-banner.cjs.entry.js +22 -6
  33. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-data-list.cjs.entry.js +17 -7
  35. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-data-row.cjs.entry.js +31 -20
  37. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-dialog.cjs.entry.js +170 -114
  39. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-divider.cjs.entry.js +95 -12
  41. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-empty-state.cjs.entry.js +21 -24
  43. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-footer-link-group.cjs.entry.js +12 -14
  45. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-footer-link.cjs.entry.js +15 -16
  47. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-footer.cjs.entry.js +52 -30
  49. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-hero.cjs.entry.js +35 -32
  51. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +40 -21
  53. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +587 -244
  55. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-input-label_2.cjs.entry.js +65 -40
  57. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-link.cjs.entry.js +43 -28
  59. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-menu-group.cjs.entry.js +6 -7
  61. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-menu-item.cjs.entry.js +41 -33
  63. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-button.cjs.entry.js +32 -24
  65. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-navigation-group.cjs.entry.js +69 -44
  67. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-navigation-item.cjs.entry.js +115 -43
  69. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-navigation-menu.cjs.entry.js +55 -33
  71. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-page-header.cjs.entry.js +53 -31
  73. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-pagination-item.cjs.entry.js +37 -24
  75. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-pagination.cjs.entry.js +76 -36
  77. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-popover-menu.cjs.entry.js +97 -60
  79. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-radio-group.cjs.entry.js +103 -48
  81. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-radio-option.cjs.entry.js +70 -39
  83. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-search-bar.cjs.entry.js +195 -108
  85. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-section-container.cjs.entry.js +12 -5
  87. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-select.cjs.entry.js +385 -163
  89. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-side-navigation.cjs.entry.js +119 -79
  91. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-skeleton.cjs.entry.js +15 -8
  93. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-skip-link.cjs.entry.js +55 -0
  95. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -0
  96. package/dist/cjs/ic-status-tag.cjs.entry.js +30 -10
  97. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-step.cjs.entry.js +37 -37
  99. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-stepper.cjs.entry.js +60 -36
  101. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-switch.cjs.entry.js +63 -31
  103. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-tab-context.cjs.entry.js +112 -152
  105. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-tab-group.cjs.entry.js +18 -14
  107. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-tab-panel.cjs.entry.js +19 -15
  109. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-tab.cjs.entry.js +31 -22
  111. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-text-field.cjs.entry.js +235 -87
  113. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-theme.cjs.entry.js +52 -23
  115. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-toast-region.cjs.entry.js +8 -3
  117. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-toast.cjs.entry.js +30 -23
  119. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +117 -35
  121. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ic-toggle-button.cjs.entry.js +110 -23
  123. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ic-top-navigation.cjs.entry.js +65 -35
  125. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ic-typography.cjs.entry.js +59 -30
  127. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  128. package/dist/cjs/index-d337cd8a.js +2611 -0
  129. package/dist/cjs/index-d337cd8a.js.map +1 -0
  130. package/dist/cjs/loader.cjs.js +5 -3
  131. package/dist/cjs/loader.cjs.js.map +1 -1
  132. package/dist/collection/ag-theme-icds.css +218 -0
  133. package/dist/collection/collection-manifest.json +8 -7
  134. package/dist/collection/components/ic-accordion/ic-accordion.css +27 -17
  135. package/dist/collection/components/ic-accordion/ic-accordion.js +116 -76
  136. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  137. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +611 -0
  138. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -8
  139. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +65 -37
  140. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  141. package/dist/collection/components/ic-alert/ic-alert.css +50 -19
  142. package/dist/collection/components/ic-alert/ic-alert.js +113 -34
  143. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  144. package/dist/collection/components/ic-alert/ic-alert.stories.js +271 -0
  145. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +54 -20
  146. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +86 -14
  147. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  148. package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +216 -0
  149. package/dist/collection/components/ic-back-to-top/ic-back-to-top.types.js.map +1 -1
  150. package/dist/collection/components/ic-badge/ic-badge.css +44 -11
  151. package/dist/collection/components/ic-badge/ic-badge.js +136 -53
  152. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  153. package/dist/collection/components/ic-badge/ic-badge.stories.js +1092 -0
  154. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +32 -8
  155. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +142 -46
  156. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  157. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +165 -84
  158. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  159. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +362 -0
  160. package/dist/collection/components/ic-button/ic-button.css +709 -429
  161. package/dist/collection/components/ic-button/ic-button.js +331 -139
  162. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  163. package/dist/collection/components/ic-button/ic-button.stories.js +2387 -0
  164. package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
  165. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +102 -107
  166. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +160 -86
  167. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  168. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1050 -0
  169. package/dist/collection/components/ic-checkbox/ic-checkbox.css +78 -35
  170. package/dist/collection/components/ic-checkbox/ic-checkbox.js +123 -45
  171. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  172. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +20 -1
  173. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +108 -23
  174. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  175. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +726 -0
  176. package/dist/collection/components/ic-chip/ic-chip.css +66 -48
  177. package/dist/collection/components/ic-chip/ic-chip.js +126 -38
  178. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  179. package/dist/collection/components/ic-chip/ic-chip.stories.js +980 -0
  180. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +20 -10
  181. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +33 -8
  182. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  183. package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
  184. package/dist/collection/components/ic-data-list/ic-data-list.css +5 -1
  185. package/dist/collection/components/ic-data-list/ic-data-list.js +47 -8
  186. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -1
  187. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +493 -0
  188. package/dist/collection/components/ic-data-row/ic-data-row.css +5 -2
  189. package/dist/collection/components/ic-data-row/ic-data-row.js +64 -21
  190. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  191. package/dist/collection/components/ic-dialog/ic-dialog.css +16 -9
  192. package/dist/collection/components/ic-dialog/ic-dialog.js +248 -144
  193. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  194. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1118 -0
  195. package/dist/collection/components/ic-divider/ic-divider.css +295 -4
  196. package/dist/collection/components/ic-divider/ic-divider.js +272 -12
  197. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  198. package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
  199. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  200. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  201. package/dist/collection/components/ic-empty-state/ic-empty-state.css +17 -2
  202. package/dist/collection/components/ic-empty-state/ic-empty-state.js +63 -28
  203. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  204. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +404 -0
  205. package/dist/collection/components/ic-footer/ic-footer.css +25 -17
  206. package/dist/collection/components/ic-footer/ic-footer.js +72 -38
  207. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  208. package/dist/collection/components/ic-footer/ic-footer.stories.js +384 -0
  209. package/dist/collection/components/ic-footer-link/ic-footer-link.css +28 -5
  210. package/dist/collection/components/ic-footer-link/ic-footer-link.js +32 -22
  211. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  212. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +14 -18
  213. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +12 -12
  214. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  215. package/dist/collection/components/ic-hero/ic-hero.css +25 -10
  216. package/dist/collection/components/ic-hero/ic-hero.js +66 -45
  217. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  218. package/dist/collection/components/ic-hero/ic-hero.stories.js +448 -0
  219. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +2 -6
  220. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +97 -22
  221. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  222. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +51 -18
  223. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +74 -64
  224. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  225. package/dist/collection/components/ic-input-container/ic-input-container.js +16 -6
  226. package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -1
  227. package/dist/collection/components/ic-input-label/ic-input-label.css +19 -20
  228. package/dist/collection/components/ic-input-label/ic-input-label.js +97 -41
  229. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  230. package/dist/collection/components/ic-input-validation/ic-input-validation.css +12 -3
  231. package/dist/collection/components/ic-input-validation/ic-input-validation.js +36 -19
  232. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  233. package/dist/collection/components/ic-link/ic-link.css +66 -25
  234. package/dist/collection/components/ic-link/ic-link.js +107 -59
  235. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  236. package/dist/collection/components/ic-link/ic-link.stories.js +85 -0
  237. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +20 -13
  238. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +183 -102
  239. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  240. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +464 -0
  241. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
  242. package/dist/collection/components/ic-menu/ic-menu.css +116 -23
  243. package/dist/collection/components/ic-menu/ic-menu.js +640 -257
  244. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  245. package/dist/collection/components/ic-menu/ic-menu.types.js.map +1 -1
  246. package/dist/collection/components/ic-menu-group/ic-menu-group.css +3 -2
  247. package/dist/collection/components/ic-menu-group/ic-menu-group.js +4 -5
  248. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  249. package/dist/collection/components/ic-menu-item/ic-menu-item.css +43 -23
  250. package/dist/collection/components/ic-menu-item/ic-menu-item.js +115 -48
  251. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  252. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +18 -0
  253. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +77 -29
  254. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  255. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +54 -49
  256. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +158 -47
  257. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  258. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js +2 -0
  259. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js.map +1 -0
  260. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +40 -64
  261. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +181 -60
  262. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  263. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +13 -5
  264. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +84 -32
  265. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  266. package/dist/collection/components/ic-page-header/ic-page-header.css +7 -3
  267. package/dist/collection/components/ic-page-header/ic-page-header.js +99 -35
  268. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  269. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +823 -0
  270. package/dist/collection/components/ic-pagination/ic-pagination.css +24 -1
  271. package/dist/collection/components/ic-pagination/ic-pagination.js +157 -73
  272. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  273. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +164 -0
  274. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +54 -15
  275. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +99 -52
  276. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  277. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +8 -4
  278. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +184 -69
  279. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  280. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +573 -0
  281. package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
  282. package/dist/collection/components/ic-radio-group/ic-radio-group.js +162 -59
  283. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  284. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +474 -0
  285. package/dist/collection/components/ic-radio-option/ic-radio-option.css +58 -27
  286. package/dist/collection/components/ic-radio-option/ic-radio-option.js +130 -47
  287. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  288. package/dist/collection/components/ic-search-bar/ic-search-bar.css +109 -16
  289. package/dist/collection/components/ic-search-bar/ic-search-bar.js +342 -147
  290. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  291. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +593 -0
  292. package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
  293. package/dist/collection/components/ic-section-container/ic-section-container.js +15 -5
  294. package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -1
  295. package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
  296. package/dist/collection/components/ic-select/ic-select.css +105 -55
  297. package/dist/collection/components/ic-select/ic-select.js +558 -212
  298. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  299. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
  300. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +965 -0
  301. package/dist/collection/components/ic-select/ic-select_(single).stories.js +790 -0
  302. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +63 -38
  303. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +162 -100
  304. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  305. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2547 -0
  306. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  307. package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
  308. package/dist/collection/components/ic-skeleton/ic-skeleton.js +29 -13
  309. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  310. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +143 -0
  311. package/dist/collection/components/ic-skip-link/ic-skip-link.css +46 -0
  312. package/dist/collection/components/ic-skip-link/ic-skip-link.js +203 -0
  313. package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -0
  314. package/dist/collection/components/ic-skip-link/ic-skip-link.stories.js +504 -0
  315. package/dist/collection/components/ic-status-tag/ic-status-tag.css +21 -17
  316. package/dist/collection/components/ic-status-tag/ic-status-tag.js +80 -10
  317. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  318. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +196 -0
  319. package/dist/collection/components/ic-step/ic-step.css +70 -124
  320. package/dist/collection/components/ic-step/ic-step.js +95 -42
  321. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  322. package/dist/collection/components/ic-stepper/ic-stepper.js +96 -54
  323. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  324. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +281 -0
  325. package/dist/collection/components/ic-switch/ic-switch.css +30 -48
  326. package/dist/collection/components/ic-switch/ic-switch.js +106 -48
  327. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  328. package/dist/collection/components/ic-switch/ic-switch.stories.js +149 -0
  329. package/dist/collection/components/ic-tab/ic-tab.css +53 -17
  330. package/dist/collection/components/ic-tab/ic-tab.js +97 -51
  331. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  332. package/dist/collection/components/ic-tab-context/ic-tab-context.js +170 -180
  333. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  334. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +316 -0
  335. package/dist/collection/components/ic-tab-group/ic-tab-group.css +14 -7
  336. package/dist/collection/components/ic-tab-group/ic-tab-group.js +70 -38
  337. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  338. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +7 -3
  339. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +86 -29
  340. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  341. package/dist/collection/components/ic-text-field/ic-text-field.css +64 -8
  342. package/dist/collection/components/ic-text-field/ic-text-field.js +484 -154
  343. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  344. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +1048 -0
  345. package/dist/collection/components/ic-theme/ic-theme.js +93 -35
  346. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  347. package/dist/collection/components/ic-theme/ic-theme.stories.js +434 -0
  348. package/dist/collection/components/ic-toast/ic-toast.css +41 -17
  349. package/dist/collection/components/ic-toast/ic-toast.js +49 -29
  350. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  351. package/dist/collection/components/ic-toast/ic-toast.stories.js +396 -0
  352. package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -5
  353. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  354. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +190 -58
  355. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +226 -63
  356. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  357. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +427 -0
  358. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
  359. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +228 -64
  360. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  361. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +585 -0
  362. package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
  363. package/dist/collection/components/ic-tooltip/ic-tooltip.js +93 -36
  364. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  365. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +366 -0
  366. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +55 -21
  367. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +122 -50
  368. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  369. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1091 -0
  370. package/dist/collection/components/ic-typography/ic-typography.css +11 -7
  371. package/dist/collection/components/ic-typography/ic-typography.js +101 -32
  372. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  373. package/dist/collection/components/ic-typography/ic-typography.stories.js +447 -0
  374. package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
  375. package/dist/collection/patterns/z-index.stories.js +474 -0
  376. package/dist/collection/utils/constants.js +40 -1
  377. package/dist/collection/utils/constants.js.map +1 -1
  378. package/dist/collection/utils/helpers.js +93 -43
  379. package/dist/collection/utils/helpers.js.map +1 -1
  380. package/dist/collection/utils/testa11y.helpers.js +2 -1
  381. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  382. package/dist/collection/utils/types.js +6 -6
  383. package/dist/collection/utils/types.js.map +1 -1
  384. package/dist/components/helpers.js +147 -45
  385. package/dist/components/helpers.js.map +1 -1
  386. package/dist/components/ic-accordion-group.js +38 -21
  387. package/dist/components/ic-accordion-group.js.map +1 -1
  388. package/dist/components/ic-accordion.js +76 -45
  389. package/dist/components/ic-accordion.js.map +1 -1
  390. package/dist/components/ic-alert.js +52 -30
  391. package/dist/components/ic-alert.js.map +1 -1
  392. package/dist/components/ic-back-to-top.js +33 -14
  393. package/dist/components/ic-back-to-top.js.map +1 -1
  394. package/dist/components/ic-badge.js +69 -42
  395. package/dist/components/ic-badge.js.map +1 -1
  396. package/dist/components/ic-breadcrumb-group.js +119 -64
  397. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  398. package/dist/components/ic-breadcrumb2.js +81 -17
  399. package/dist/components/ic-breadcrumb2.js.map +1 -1
  400. package/dist/components/ic-button2.js +190 -79
  401. package/dist/components/ic-button2.js.map +1 -1
  402. package/dist/components/ic-card-vertical.js +98 -74
  403. package/dist/components/ic-card-vertical.js.map +1 -1
  404. package/dist/components/ic-checkbox-group.js +54 -13
  405. package/dist/components/ic-checkbox-group.js.map +1 -1
  406. package/dist/components/ic-checkbox.js +56 -29
  407. package/dist/components/ic-checkbox.js.map +1 -1
  408. package/dist/components/ic-chip.js +68 -31
  409. package/dist/components/ic-chip.js.map +1 -1
  410. package/dist/components/ic-classification-banner.js +21 -5
  411. package/dist/components/ic-classification-banner.js.map +1 -1
  412. package/dist/components/ic-data-list.js +18 -7
  413. package/dist/components/ic-data-list.js.map +1 -1
  414. package/dist/components/ic-data-row.js +31 -18
  415. package/dist/components/ic-data-row.js.map +1 -1
  416. package/dist/components/ic-dialog.js +172 -114
  417. package/dist/components/ic-dialog.js.map +1 -1
  418. package/dist/components/ic-divider2.js +110 -14
  419. package/dist/components/ic-divider2.js.map +1 -1
  420. package/dist/components/ic-empty-state.js +23 -24
  421. package/dist/components/ic-empty-state.js.map +1 -1
  422. package/dist/components/ic-footer-link-group.js +12 -13
  423. package/dist/components/ic-footer-link-group.js.map +1 -1
  424. package/dist/components/ic-footer-link.js +15 -15
  425. package/dist/components/ic-footer-link.js.map +1 -1
  426. package/dist/components/ic-footer.js +52 -30
  427. package/dist/components/ic-footer.js.map +1 -1
  428. package/dist/components/ic-hero.js +36 -33
  429. package/dist/components/ic-hero.js.map +1 -1
  430. package/dist/components/ic-horizontal-scroll2.js +41 -20
  431. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  432. package/dist/components/ic-input-component-container2.js +48 -36
  433. package/dist/components/ic-input-component-container2.js.map +1 -1
  434. package/dist/components/ic-input-container2.js +12 -5
  435. package/dist/components/ic-input-container2.js.map +1 -1
  436. package/dist/components/ic-input-label2.js +43 -24
  437. package/dist/components/ic-input-label2.js.map +1 -1
  438. package/dist/components/ic-input-validation2.js +22 -15
  439. package/dist/components/ic-input-validation2.js.map +1 -1
  440. package/dist/components/ic-link2.js +45 -29
  441. package/dist/components/ic-link2.js.map +1 -1
  442. package/dist/components/ic-loading-indicator2.js +109 -68
  443. package/dist/components/ic-loading-indicator2.js.map +1 -1
  444. package/dist/components/ic-menu-group.js +5 -5
  445. package/dist/components/ic-menu-group.js.map +1 -1
  446. package/dist/components/ic-menu-item2.js +46 -35
  447. package/dist/components/ic-menu-item2.js.map +1 -1
  448. package/dist/components/ic-menu2.js +535 -209
  449. package/dist/components/ic-menu2.js.map +1 -1
  450. package/dist/components/ic-navigation-button.js +33 -24
  451. package/dist/components/ic-navigation-button.js.map +1 -1
  452. package/dist/components/ic-navigation-group.js +72 -44
  453. package/dist/components/ic-navigation-group.js.map +1 -1
  454. package/dist/components/ic-navigation-item.js +118 -43
  455. package/dist/components/ic-navigation-item.js.map +1 -1
  456. package/dist/components/ic-navigation-menu2.js +55 -31
  457. package/dist/components/ic-navigation-menu2.js.map +1 -1
  458. package/dist/components/ic-page-header.js +53 -29
  459. package/dist/components/ic-page-header.js.map +1 -1
  460. package/dist/components/ic-pagination-item2.js +39 -23
  461. package/dist/components/ic-pagination-item2.js.map +1 -1
  462. package/dist/components/ic-pagination.js +77 -34
  463. package/dist/components/ic-pagination.js.map +1 -1
  464. package/dist/components/ic-popover-menu.js +99 -59
  465. package/dist/components/ic-popover-menu.js.map +1 -1
  466. package/dist/components/ic-radio-group.js +105 -47
  467. package/dist/components/ic-radio-group.js.map +1 -1
  468. package/dist/components/ic-radio-option.js +72 -38
  469. package/dist/components/ic-radio-option.js.map +1 -1
  470. package/dist/components/ic-search-bar.js +210 -132
  471. package/dist/components/ic-search-bar.js.map +1 -1
  472. package/dist/components/ic-section-container2.js +11 -4
  473. package/dist/components/ic-section-container2.js.map +1 -1
  474. package/dist/components/ic-select.js +388 -163
  475. package/dist/components/ic-select.js.map +1 -1
  476. package/dist/components/ic-side-navigation.js +119 -79
  477. package/dist/components/ic-side-navigation.js.map +1 -1
  478. package/dist/components/ic-skeleton.js +15 -8
  479. package/dist/components/ic-skeleton.js.map +1 -1
  480. package/dist/components/ic-skip-link.d.ts +11 -0
  481. package/dist/components/ic-skip-link.js +83 -0
  482. package/dist/components/ic-skip-link.js.map +1 -0
  483. package/dist/components/ic-status-tag.js +30 -7
  484. package/dist/components/ic-status-tag.js.map +1 -1
  485. package/dist/components/ic-step.js +37 -35
  486. package/dist/components/ic-step.js.map +1 -1
  487. package/dist/components/ic-stepper.js +61 -35
  488. package/dist/components/ic-stepper.js.map +1 -1
  489. package/dist/components/ic-switch.js +65 -31
  490. package/dist/components/ic-switch.js.map +1 -1
  491. package/dist/components/ic-tab-context.js +116 -154
  492. package/dist/components/ic-tab-context.js.map +1 -1
  493. package/dist/components/ic-tab-group.js +19 -14
  494. package/dist/components/ic-tab-group.js.map +1 -1
  495. package/dist/components/ic-tab-panel.js +22 -16
  496. package/dist/components/ic-tab-panel.js.map +1 -1
  497. package/dist/components/ic-tab.js +32 -22
  498. package/dist/components/ic-tab.js.map +1 -1
  499. package/dist/components/ic-text-field.js +504 -1
  500. package/dist/components/ic-text-field.js.map +1 -1
  501. package/dist/components/ic-theme.js +57 -25
  502. package/dist/components/ic-theme.js.map +1 -1
  503. package/dist/components/ic-toast-region.js +7 -2
  504. package/dist/components/ic-toast-region.js.map +1 -1
  505. package/dist/components/ic-toast.js +29 -22
  506. package/dist/components/ic-toast.js.map +1 -1
  507. package/dist/components/ic-toggle-button-group.js +129 -36
  508. package/dist/components/ic-toggle-button-group.js.map +1 -1
  509. package/dist/components/ic-toggle-button.js +121 -29
  510. package/dist/components/ic-toggle-button.js.map +1 -1
  511. package/dist/components/ic-tooltip2.js +47 -25
  512. package/dist/components/ic-tooltip2.js.map +1 -1
  513. package/dist/components/ic-top-navigation.js +66 -35
  514. package/dist/components/ic-top-navigation.js.map +1 -1
  515. package/dist/components/ic-typography2.js +58 -27
  516. package/dist/components/ic-typography2.js.map +1 -1
  517. package/dist/core/ag-theme-icds.css +218 -0
  518. package/dist/core/core.css +1737 -64
  519. package/dist/core/core.esm.js +1 -1
  520. package/dist/core/core.esm.js.map +1 -1
  521. package/dist/core/index.esm.js.map +1 -1
  522. package/dist/core/p-06d97789.entry.js +2 -0
  523. package/dist/core/p-06d97789.entry.js.map +1 -0
  524. package/dist/core/{p-54238d16.entry.js → p-071f4748.entry.js} +2 -2
  525. package/dist/core/p-071f4748.entry.js.map +1 -0
  526. package/dist/core/p-09070f61.entry.js +2 -0
  527. package/dist/core/p-09070f61.entry.js.map +1 -0
  528. package/dist/core/p-0c0ac69d.entry.js +2 -0
  529. package/dist/core/p-0c0ac69d.entry.js.map +1 -0
  530. package/dist/core/p-0d016565.entry.js +2 -0
  531. package/dist/core/p-0d016565.entry.js.map +1 -0
  532. package/dist/core/p-0e96d4d8.entry.js +2 -0
  533. package/dist/core/p-0e96d4d8.entry.js.map +1 -0
  534. package/dist/core/p-10cd26dc.entry.js +2 -0
  535. package/dist/core/p-10cd26dc.entry.js.map +1 -0
  536. package/dist/core/{p-a87d13b3.entry.js → p-110486f0.entry.js} +2 -2
  537. package/dist/core/p-110486f0.entry.js.map +1 -0
  538. package/dist/core/p-116ad73d.entry.js +2 -0
  539. package/dist/core/p-116ad73d.entry.js.map +1 -0
  540. package/dist/core/p-1171a945.entry.js +2 -0
  541. package/dist/core/p-1171a945.entry.js.map +1 -0
  542. package/dist/core/p-17cf7b50.entry.js +2 -0
  543. package/dist/core/p-17cf7b50.entry.js.map +1 -0
  544. package/dist/core/p-1ac08e6d.entry.js +2 -0
  545. package/dist/core/p-1ac08e6d.entry.js.map +1 -0
  546. package/dist/core/p-1f455336.entry.js +2 -0
  547. package/dist/core/p-1f455336.entry.js.map +1 -0
  548. package/dist/core/p-20c4d90b.entry.js +2 -0
  549. package/dist/core/p-20c4d90b.entry.js.map +1 -0
  550. package/dist/core/p-2537f33e.entry.js +2 -0
  551. package/dist/core/p-2537f33e.entry.js.map +1 -0
  552. package/dist/core/p-264ce7a0.entry.js +2 -0
  553. package/dist/core/p-264ce7a0.entry.js.map +1 -0
  554. package/dist/core/p-28656111.entry.js +2 -0
  555. package/dist/core/p-28656111.entry.js.map +1 -0
  556. package/dist/core/p-2b1a331b.entry.js +2 -0
  557. package/dist/core/p-2b1a331b.entry.js.map +1 -0
  558. package/dist/core/p-33243fff.entry.js +2 -0
  559. package/dist/core/p-33243fff.entry.js.map +1 -0
  560. package/dist/core/p-37df68fe.entry.js +2 -0
  561. package/dist/core/p-37df68fe.entry.js.map +1 -0
  562. package/dist/core/p-3b185c32.js.map +1 -1
  563. package/dist/core/p-426ec638.js.map +1 -1
  564. package/dist/core/p-44e32417.entry.js +2 -0
  565. package/dist/core/p-44e32417.entry.js.map +1 -0
  566. package/dist/core/p-45595f98.entry.js +2 -0
  567. package/dist/core/p-45595f98.entry.js.map +1 -0
  568. package/dist/core/p-49768069.entry.js +2 -0
  569. package/dist/core/p-49768069.entry.js.map +1 -0
  570. package/dist/core/p-4c68494c.entry.js +2 -0
  571. package/dist/core/p-4c68494c.entry.js.map +1 -0
  572. package/dist/core/p-4f2a1950.entry.js +2 -0
  573. package/dist/core/p-4f2a1950.entry.js.map +1 -0
  574. package/dist/core/p-50f4d151.entry.js +2 -0
  575. package/dist/core/p-50f4d151.entry.js.map +1 -0
  576. package/dist/core/p-55a37101.entry.js +2 -0
  577. package/dist/core/p-55a37101.entry.js.map +1 -0
  578. package/dist/core/p-5c349c9d.entry.js +2 -0
  579. package/dist/core/p-5c349c9d.entry.js.map +1 -0
  580. package/dist/core/p-5e1fd097.entry.js +2 -0
  581. package/dist/core/p-5e1fd097.entry.js.map +1 -0
  582. package/dist/core/p-68a5aaff.js.map +1 -1
  583. package/dist/core/p-69e4daec.entry.js +2 -0
  584. package/dist/core/p-69e4daec.entry.js.map +1 -0
  585. package/dist/core/p-701696aa.entry.js +2 -0
  586. package/dist/core/p-701696aa.entry.js.map +1 -0
  587. package/dist/core/p-729745d3.entry.js +2 -0
  588. package/dist/core/p-729745d3.entry.js.map +1 -0
  589. package/dist/core/p-73fc198f.entry.js +2 -0
  590. package/dist/core/p-73fc198f.entry.js.map +1 -0
  591. package/dist/core/p-74600ed8.entry.js +2 -0
  592. package/dist/core/p-74600ed8.entry.js.map +1 -0
  593. package/dist/core/p-78e7a859.entry.js +2 -0
  594. package/dist/core/p-78e7a859.entry.js.map +1 -0
  595. package/dist/core/p-7e79bd0e.entry.js +2 -0
  596. package/dist/core/p-7e79bd0e.entry.js.map +1 -0
  597. package/dist/core/p-7eaf8da8.entry.js +2 -0
  598. package/dist/core/p-7eaf8da8.entry.js.map +1 -0
  599. package/dist/core/p-811d447b.entry.js +2 -0
  600. package/dist/core/p-811d447b.entry.js.map +1 -0
  601. package/dist/core/p-85734ebf.entry.js +2 -0
  602. package/dist/core/p-85734ebf.entry.js.map +1 -0
  603. package/dist/core/p-85b7d931.entry.js +2 -0
  604. package/dist/core/p-85b7d931.entry.js.map +1 -0
  605. package/dist/core/{p-a0e4d6bd.entry.js → p-8856dff4.entry.js} +2 -2
  606. package/dist/core/p-8856dff4.entry.js.map +1 -0
  607. package/dist/core/p-8b268274.entry.js +2 -0
  608. package/dist/core/p-8b268274.entry.js.map +1 -0
  609. package/dist/core/p-8e4e97b4.js +3 -0
  610. package/dist/core/p-8e4e97b4.js.map +1 -0
  611. package/dist/core/p-972671ea.entry.js +2 -0
  612. package/dist/core/p-972671ea.entry.js.map +1 -0
  613. package/dist/core/p-98328cb9.entry.js +2 -0
  614. package/dist/core/p-98328cb9.entry.js.map +1 -0
  615. package/dist/core/p-a103068b.entry.js +2 -0
  616. package/dist/core/p-a103068b.entry.js.map +1 -0
  617. package/dist/core/p-a20a7cd3.entry.js +2 -0
  618. package/dist/core/p-a20a7cd3.entry.js.map +1 -0
  619. package/dist/core/p-a22658fb.entry.js +2 -0
  620. package/dist/core/p-a22658fb.entry.js.map +1 -0
  621. package/dist/core/p-a55e7988.entry.js +2 -0
  622. package/dist/core/p-a55e7988.entry.js.map +1 -0
  623. package/dist/core/p-a71055c9.entry.js +2 -0
  624. package/dist/core/p-a71055c9.entry.js.map +1 -0
  625. package/dist/core/p-a794b724.entry.js +2 -0
  626. package/dist/core/p-a794b724.entry.js.map +1 -0
  627. package/dist/core/p-b21b4fea.entry.js +2 -0
  628. package/dist/core/p-b21b4fea.entry.js.map +1 -0
  629. package/dist/core/p-b953b22f.entry.js +2 -0
  630. package/dist/core/p-b953b22f.entry.js.map +1 -0
  631. package/dist/core/p-c2e091d7.js.map +1 -1
  632. package/dist/core/p-c9726fbd.entry.js +2 -0
  633. package/dist/core/p-c9726fbd.entry.js.map +1 -0
  634. package/dist/core/p-d981598e.entry.js +2 -0
  635. package/dist/core/p-d981598e.entry.js.map +1 -0
  636. package/dist/core/p-d9aec0dd.entry.js +2 -0
  637. package/dist/core/p-d9aec0dd.entry.js.map +1 -0
  638. package/dist/core/p-e1255160.js +2 -0
  639. package/dist/core/p-e1255160.js.map +1 -0
  640. package/dist/core/p-ed8957da.js +2 -0
  641. package/dist/core/p-ed8957da.js.map +1 -0
  642. package/dist/core/p-f074ef5b.js.map +1 -1
  643. package/dist/core/p-f3315216.entry.js +2 -0
  644. package/dist/core/p-f3315216.entry.js.map +1 -0
  645. package/dist/core/p-f34efc17.entry.js +2 -0
  646. package/dist/core/p-f34efc17.entry.js.map +1 -0
  647. package/dist/core/p-f43f411a.entry.js +2 -0
  648. package/dist/core/p-f43f411a.entry.js.map +1 -0
  649. package/dist/core/{p-bf89c86d.entry.js → p-fa02a267.entry.js} +2 -2
  650. package/dist/core/p-fa02a267.entry.js.map +1 -0
  651. package/dist/core/p-ff995eb8.entry.js +2 -0
  652. package/dist/core/p-ff995eb8.entry.js.map +1 -0
  653. package/dist/esm/app-globals-0f993ce5.js +5 -0
  654. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  655. package/dist/esm/core.js +14 -12
  656. package/dist/esm/core.js.map +1 -1
  657. package/dist/esm/{helpers-35ac5e03.js → helpers-dd035d0d.js} +148 -46
  658. package/dist/esm/helpers-dd035d0d.js.map +1 -0
  659. package/dist/esm/ic-accordion-group.entry.js +38 -22
  660. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  661. package/dist/esm/ic-accordion.entry.js +75 -46
  662. package/dist/esm/ic-accordion.entry.js.map +1 -1
  663. package/dist/esm/ic-alert.entry.js +50 -30
  664. package/dist/esm/ic-alert.entry.js.map +1 -1
  665. package/dist/esm/ic-back-to-top.entry.js +32 -16
  666. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  667. package/dist/esm/ic-badge.entry.js +67 -42
  668. package/dist/esm/ic-badge.entry.js.map +1 -1
  669. package/dist/esm/ic-breadcrumb-group.entry.js +114 -63
  670. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  671. package/dist/esm/ic-breadcrumb.entry.js +78 -18
  672. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  673. package/dist/esm/ic-button_3.entry.js +341 -168
  674. package/dist/esm/ic-button_3.entry.js.map +1 -1
  675. package/dist/esm/ic-card-vertical.entry.js +93 -72
  676. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  677. package/dist/esm/ic-checkbox-group.entry.js +51 -14
  678. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  679. package/dist/esm/ic-checkbox.entry.js +55 -31
  680. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  681. package/dist/esm/ic-chip.entry.js +64 -32
  682. package/dist/esm/ic-chip.entry.js.map +1 -1
  683. package/dist/esm/ic-classification-banner.entry.js +22 -6
  684. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  685. package/dist/esm/ic-data-list.entry.js +17 -7
  686. package/dist/esm/ic-data-list.entry.js.map +1 -1
  687. package/dist/esm/ic-data-row.entry.js +31 -20
  688. package/dist/esm/ic-data-row.entry.js.map +1 -1
  689. package/dist/esm/ic-dialog.entry.js +170 -114
  690. package/dist/esm/ic-dialog.entry.js.map +1 -1
  691. package/dist/esm/ic-divider.entry.js +95 -12
  692. package/dist/esm/ic-divider.entry.js.map +1 -1
  693. package/dist/esm/ic-empty-state.entry.js +21 -24
  694. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  695. package/dist/esm/ic-footer-link-group.entry.js +12 -14
  696. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  697. package/dist/esm/ic-footer-link.entry.js +15 -16
  698. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  699. package/dist/esm/ic-footer.entry.js +52 -30
  700. package/dist/esm/ic-footer.entry.js.map +1 -1
  701. package/dist/esm/ic-hero.entry.js +35 -32
  702. package/dist/esm/ic-hero.entry.js.map +1 -1
  703. package/dist/esm/ic-horizontal-scroll.entry.js +40 -21
  704. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  705. package/dist/esm/ic-input-component-container_3.entry.js +587 -244
  706. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  707. package/dist/esm/ic-input-label_2.entry.js +62 -37
  708. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  709. package/dist/esm/ic-link.entry.js +43 -28
  710. package/dist/esm/ic-link.entry.js.map +1 -1
  711. package/dist/esm/ic-menu-group.entry.js +6 -7
  712. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  713. package/dist/esm/ic-menu-item.entry.js +41 -33
  714. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  715. package/dist/esm/ic-navigation-button.entry.js +32 -24
  716. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  717. package/dist/esm/ic-navigation-group.entry.js +69 -44
  718. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  719. package/dist/esm/ic-navigation-item.entry.js +115 -43
  720. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  721. package/dist/esm/ic-navigation-menu.entry.js +55 -33
  722. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  723. package/dist/esm/ic-page-header.entry.js +53 -31
  724. package/dist/esm/ic-page-header.entry.js.map +1 -1
  725. package/dist/esm/ic-pagination-item.entry.js +37 -24
  726. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  727. package/dist/esm/ic-pagination.entry.js +76 -36
  728. package/dist/esm/ic-pagination.entry.js.map +1 -1
  729. package/dist/esm/ic-popover-menu.entry.js +97 -60
  730. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  731. package/dist/esm/ic-radio-group.entry.js +103 -48
  732. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  733. package/dist/esm/ic-radio-option.entry.js +70 -39
  734. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  735. package/dist/esm/ic-search-bar.entry.js +195 -108
  736. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  737. package/dist/esm/ic-section-container.entry.js +12 -5
  738. package/dist/esm/ic-section-container.entry.js.map +1 -1
  739. package/dist/esm/ic-select.entry.js +385 -163
  740. package/dist/esm/ic-select.entry.js.map +1 -1
  741. package/dist/esm/ic-side-navigation.entry.js +119 -79
  742. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  743. package/dist/esm/ic-skeleton.entry.js +15 -8
  744. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  745. package/dist/esm/ic-skip-link.entry.js +51 -0
  746. package/dist/esm/ic-skip-link.entry.js.map +1 -0
  747. package/dist/esm/ic-status-tag.entry.js +30 -10
  748. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  749. package/dist/esm/ic-step.entry.js +37 -37
  750. package/dist/esm/ic-step.entry.js.map +1 -1
  751. package/dist/esm/ic-stepper.entry.js +60 -36
  752. package/dist/esm/ic-stepper.entry.js.map +1 -1
  753. package/dist/esm/ic-switch.entry.js +63 -31
  754. package/dist/esm/ic-switch.entry.js.map +1 -1
  755. package/dist/esm/ic-tab-context.entry.js +112 -152
  756. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  757. package/dist/esm/ic-tab-group.entry.js +18 -14
  758. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  759. package/dist/esm/ic-tab-panel.entry.js +19 -15
  760. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  761. package/dist/esm/ic-tab.entry.js +31 -22
  762. package/dist/esm/ic-tab.entry.js.map +1 -1
  763. package/dist/esm/ic-text-field.entry.js +229 -81
  764. package/dist/esm/ic-text-field.entry.js.map +1 -1
  765. package/dist/esm/ic-theme.entry.js +52 -23
  766. package/dist/esm/ic-theme.entry.js.map +1 -1
  767. package/dist/esm/ic-toast-region.entry.js +8 -3
  768. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  769. package/dist/esm/ic-toast.entry.js +30 -23
  770. package/dist/esm/ic-toast.entry.js.map +1 -1
  771. package/dist/esm/ic-toggle-button-group.entry.js +117 -35
  772. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  773. package/dist/esm/ic-toggle-button.entry.js +110 -23
  774. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  775. package/dist/esm/ic-top-navigation.entry.js +65 -35
  776. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  777. package/dist/esm/ic-typography.entry.js +59 -30
  778. package/dist/esm/ic-typography.entry.js.map +1 -1
  779. package/dist/esm/index-a7a720e7.js +2580 -0
  780. package/dist/esm/index-a7a720e7.js.map +1 -0
  781. package/dist/esm/loader.js +6 -4
  782. package/dist/esm/loader.js.map +1 -1
  783. package/dist/types/components/ic-accordion/ic-accordion.d.ts +10 -8
  784. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +9 -9
  785. package/dist/types/components/ic-alert/ic-alert.d.ts +10 -2
  786. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +11 -2
  787. package/dist/types/components/ic-back-to-top/ic-back-to-top.types.d.ts +1 -0
  788. package/dist/types/components/ic-badge/ic-badge.d.ts +11 -5
  789. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +19 -6
  790. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +16 -9
  791. package/dist/types/components/ic-button/ic-button.d.ts +19 -13
  792. package/dist/types/components/ic-button/ic-button.types.d.ts +0 -1
  793. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +9 -5
  794. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +17 -12
  795. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +15 -8
  796. package/dist/types/components/ic-chip/ic-chip.d.ts +13 -2
  797. package/dist/types/components/ic-data-list/ic-data-list.d.ts +6 -2
  798. package/dist/types/components/ic-data-row/ic-data-row.d.ts +7 -3
  799. package/dist/types/components/ic-dialog/ic-dialog.d.ts +21 -12
  800. package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
  801. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  802. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +5 -2
  803. package/dist/types/components/ic-footer/ic-footer.d.ts +8 -7
  804. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  805. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -2
  806. package/dist/types/components/ic-hero/ic-hero.d.ts +6 -7
  807. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
  808. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +8 -11
  809. package/dist/types/components/ic-input-label/ic-input-label.d.ts +10 -6
  810. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +4 -4
  811. package/dist/types/components/ic-link/ic-link.d.ts +10 -6
  812. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
  813. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
  814. package/dist/types/components/ic-menu/ic-menu.d.ts +56 -23
  815. package/dist/types/components/ic-menu/ic-menu.types.d.ts +1 -1
  816. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +13 -6
  817. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +8 -4
  818. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +25 -9
  819. package/dist/types/components/ic-navigation-group/ic-navigation-group.types.d.ts +6 -0
  820. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +22 -11
  821. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +10 -3
  822. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
  823. package/dist/types/components/ic-pagination/ic-pagination.d.ts +19 -14
  824. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +14 -9
  825. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +13 -11
  826. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +15 -10
  827. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +16 -9
  828. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +26 -14
  829. package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +1 -1
  830. package/dist/types/components/ic-select/ic-select.d.ts +52 -32
  831. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +15 -15
  832. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  833. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
  834. package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +33 -0
  835. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -0
  836. package/dist/types/components/ic-step/ic-step.d.ts +5 -0
  837. package/dist/types/components/ic-stepper/ic-stepper.d.ts +7 -5
  838. package/dist/types/components/ic-switch/ic-switch.d.ts +8 -7
  839. package/dist/types/components/ic-tab/ic-tab.d.ts +8 -5
  840. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +19 -12
  841. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +5 -5
  842. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +9 -3
  843. package/dist/types/components/ic-text-field/ic-text-field.d.ts +59 -34
  844. package/dist/types/components/ic-theme/ic-theme.d.ts +15 -8
  845. package/dist/types/components/ic-toast/ic-toast.d.ts +3 -3
  846. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +2 -1
  847. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +17 -8
  848. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +21 -5
  849. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +6 -1
  850. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +16 -12
  851. package/dist/types/components/ic-typography/ic-typography.d.ts +6 -2
  852. package/dist/types/components.d.ts +960 -383
  853. package/dist/types/stencil-public-runtime.d.ts +9 -10
  854. package/dist/types/utils/constants.d.ts +1 -0
  855. package/dist/types/utils/helpers.d.ts +31 -17
  856. package/dist/types/utils/types.d.ts +17 -10
  857. package/hydrate/index.d.ts +53 -12
  858. package/hydrate/index.js +32876 -19763
  859. package/hydrate/index.mjs +34407 -0
  860. package/hydrate/package.json +7 -1
  861. package/loader/cdn.js +1 -3
  862. package/loader/index.cjs.js +1 -3
  863. package/loader/index.d.ts +3 -0
  864. package/loader/index.es2017.js +1 -3
  865. package/loader/index.js +1 -3
  866. package/package.json +21 -20
  867. package/vscode-data.json +1017 -653
  868. package/dist/cjs/helpers-94b33ab0.js.map +0 -1
  869. package/dist/cjs/index-f982899d.js +0 -3047
  870. package/dist/cjs/index-f982899d.js.map +0 -1
  871. package/dist/cjs/types-dc22e301.js +0 -16
  872. package/dist/cjs/types-dc22e301.js.map +0 -1
  873. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +0 -346
  874. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +0 -1
  875. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +0 -129
  876. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +0 -1
  877. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +0 -197
  878. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +0 -1
  879. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +0 -131
  880. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +0 -1
  881. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +0 -264
  882. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +0 -1
  883. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +0 -118
  884. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +0 -1
  885. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +0 -219
  886. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +0 -1
  887. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +0 -332
  888. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +0 -1
  889. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +0 -173
  890. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +0 -1
  891. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +0 -281
  892. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +0 -1
  893. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +0 -169
  894. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +0 -1
  895. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +0 -188
  896. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +0 -1
  897. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js +0 -161
  898. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +0 -1
  899. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +0 -74
  900. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +0 -1
  901. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +0 -428
  902. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +0 -1
  903. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +0 -24
  904. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +0 -1
  905. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +0 -140
  906. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +0 -1
  907. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +0 -46
  908. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +0 -1
  909. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +0 -66
  910. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +0 -1
  911. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +0 -91
  912. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +0 -1
  913. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +0 -180
  914. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +0 -1
  915. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +0 -145
  916. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +0 -1
  917. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +0 -38
  918. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +0 -1
  919. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +0 -98
  920. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +0 -1
  921. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +0 -89
  922. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +0 -1
  923. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +0 -217
  924. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +0 -1
  925. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +0 -148
  926. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +0 -1
  927. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +0 -760
  928. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +0 -1
  929. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +0 -94
  930. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +0 -1
  931. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +0 -108
  932. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +0 -1
  933. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +0 -95
  934. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +0 -1
  935. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +0 -309
  936. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +0 -1
  937. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +0 -118
  938. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +0 -1
  939. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +0 -176
  940. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +0 -1
  941. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +0 -291
  942. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +0 -1
  943. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +0 -380
  944. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +0 -1
  945. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +0 -76
  946. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +0 -1
  947. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +0 -398
  948. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +0 -1
  949. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
  950. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  951. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +0 -380
  952. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +0 -1
  953. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  954. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  955. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +0 -584
  956. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +0 -1
  957. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +0 -69
  958. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +0 -1
  959. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +0 -1439
  960. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +0 -1
  961. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +0 -503
  962. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +0 -1
  963. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +0 -89
  964. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +0 -1
  965. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +0 -43
  966. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +0 -1
  967. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +0 -176
  968. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +0 -1
  969. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  970. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  971. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +0 -752
  972. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +0 -1
  973. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +0 -104
  974. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +0 -1
  975. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +0 -159
  976. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +0 -1
  977. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +0 -390
  978. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +0 -1
  979. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +0 -50
  980. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +0 -1
  981. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +0 -284
  982. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +0 -1
  983. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +0 -341
  984. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +0 -1
  985. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +0 -72
  986. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +0 -1
  987. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +0 -77
  988. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +0 -1
  989. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +0 -314
  990. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +0 -1
  991. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -64
  992. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +0 -1
  993. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +0 -116
  994. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +0 -1
  995. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +0 -150
  996. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +0 -1
  997. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  998. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  999. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +0 -307
  1000. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +0 -1
  1001. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +0 -314
  1002. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +0 -1
  1003. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  1004. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  1005. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +0 -393
  1006. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +0 -1
  1007. package/dist/collection/testspec.setup.js +0 -63
  1008. package/dist/collection/testspec.setup.js.map +0 -1
  1009. package/dist/components/ic-text-field2.js +0 -354
  1010. package/dist/components/ic-text-field2.js.map +0 -1
  1011. package/dist/components/types.js +0 -16
  1012. package/dist/components/types.js.map +0 -1
  1013. package/dist/core/p-05d32a4f.entry.js +0 -2
  1014. package/dist/core/p-05d32a4f.entry.js.map +0 -1
  1015. package/dist/core/p-086a6d4f.entry.js +0 -2
  1016. package/dist/core/p-086a6d4f.entry.js.map +0 -1
  1017. package/dist/core/p-0a00a786.entry.js +0 -2
  1018. package/dist/core/p-0a00a786.entry.js.map +0 -1
  1019. package/dist/core/p-145fcef3.entry.js +0 -2
  1020. package/dist/core/p-145fcef3.entry.js.map +0 -1
  1021. package/dist/core/p-15367990.entry.js +0 -2
  1022. package/dist/core/p-15367990.entry.js.map +0 -1
  1023. package/dist/core/p-1737bf2c.entry.js +0 -2
  1024. package/dist/core/p-1737bf2c.entry.js.map +0 -1
  1025. package/dist/core/p-1ace2b02.entry.js +0 -2
  1026. package/dist/core/p-1ace2b02.entry.js.map +0 -1
  1027. package/dist/core/p-1e371012.entry.js +0 -2
  1028. package/dist/core/p-1e371012.entry.js.map +0 -1
  1029. package/dist/core/p-1f227289.entry.js +0 -2
  1030. package/dist/core/p-1f227289.entry.js.map +0 -1
  1031. package/dist/core/p-24275b92.entry.js +0 -2
  1032. package/dist/core/p-24275b92.entry.js.map +0 -1
  1033. package/dist/core/p-26b7b18f.js +0 -2
  1034. package/dist/core/p-26b7b18f.js.map +0 -1
  1035. package/dist/core/p-29e6c33f.entry.js +0 -2
  1036. package/dist/core/p-29e6c33f.entry.js.map +0 -1
  1037. package/dist/core/p-2a6f01ad.entry.js +0 -2
  1038. package/dist/core/p-2a6f01ad.entry.js.map +0 -1
  1039. package/dist/core/p-2f86c53b.entry.js +0 -2
  1040. package/dist/core/p-2f86c53b.entry.js.map +0 -1
  1041. package/dist/core/p-319e40c0.entry.js +0 -2
  1042. package/dist/core/p-319e40c0.entry.js.map +0 -1
  1043. package/dist/core/p-346c6920.entry.js +0 -2
  1044. package/dist/core/p-346c6920.entry.js.map +0 -1
  1045. package/dist/core/p-4b1445b3.entry.js +0 -2
  1046. package/dist/core/p-4b1445b3.entry.js.map +0 -1
  1047. package/dist/core/p-4b621c67.entry.js +0 -2
  1048. package/dist/core/p-4b621c67.entry.js.map +0 -1
  1049. package/dist/core/p-4ca2b177.entry.js +0 -2
  1050. package/dist/core/p-4ca2b177.entry.js.map +0 -1
  1051. package/dist/core/p-54238d16.entry.js.map +0 -1
  1052. package/dist/core/p-5515ad19.entry.js +0 -2
  1053. package/dist/core/p-5515ad19.entry.js.map +0 -1
  1054. package/dist/core/p-5c8081d6.entry.js +0 -2
  1055. package/dist/core/p-5c8081d6.entry.js.map +0 -1
  1056. package/dist/core/p-5f941f3a.entry.js +0 -2
  1057. package/dist/core/p-5f941f3a.entry.js.map +0 -1
  1058. package/dist/core/p-5fd293b3.entry.js +0 -2
  1059. package/dist/core/p-5fd293b3.entry.js.map +0 -1
  1060. package/dist/core/p-60721d95.entry.js +0 -2
  1061. package/dist/core/p-60721d95.entry.js.map +0 -1
  1062. package/dist/core/p-64a5a1d8.entry.js +0 -2
  1063. package/dist/core/p-64a5a1d8.entry.js.map +0 -1
  1064. package/dist/core/p-65e36461.entry.js +0 -2
  1065. package/dist/core/p-65e36461.entry.js.map +0 -1
  1066. package/dist/core/p-66363c7d.entry.js +0 -2
  1067. package/dist/core/p-66363c7d.entry.js.map +0 -1
  1068. package/dist/core/p-69728d76.entry.js +0 -2
  1069. package/dist/core/p-69728d76.entry.js.map +0 -1
  1070. package/dist/core/p-6b328c76.entry.js +0 -2
  1071. package/dist/core/p-6b328c76.entry.js.map +0 -1
  1072. package/dist/core/p-6b5ddacd.entry.js +0 -2
  1073. package/dist/core/p-6b5ddacd.entry.js.map +0 -1
  1074. package/dist/core/p-6b5e91e2.js +0 -3
  1075. package/dist/core/p-6b5e91e2.js.map +0 -1
  1076. package/dist/core/p-7b3d6577.entry.js +0 -2
  1077. package/dist/core/p-7b3d6577.entry.js.map +0 -1
  1078. package/dist/core/p-7d45828d.entry.js +0 -2
  1079. package/dist/core/p-7d45828d.entry.js.map +0 -1
  1080. package/dist/core/p-893eca54.entry.js +0 -2
  1081. package/dist/core/p-893eca54.entry.js.map +0 -1
  1082. package/dist/core/p-8ee262a4.entry.js +0 -2
  1083. package/dist/core/p-8ee262a4.entry.js.map +0 -1
  1084. package/dist/core/p-8f93d92b.entry.js +0 -2
  1085. package/dist/core/p-8f93d92b.entry.js.map +0 -1
  1086. package/dist/core/p-90bb13d2.entry.js +0 -2
  1087. package/dist/core/p-90bb13d2.entry.js.map +0 -1
  1088. package/dist/core/p-9189a82d.entry.js +0 -2
  1089. package/dist/core/p-9189a82d.entry.js.map +0 -1
  1090. package/dist/core/p-9190a84d.entry.js +0 -2
  1091. package/dist/core/p-9190a84d.entry.js.map +0 -1
  1092. package/dist/core/p-93f50a1a.entry.js +0 -2
  1093. package/dist/core/p-93f50a1a.entry.js.map +0 -1
  1094. package/dist/core/p-9474baf3.entry.js +0 -2
  1095. package/dist/core/p-9474baf3.entry.js.map +0 -1
  1096. package/dist/core/p-9857f6b0.entry.js +0 -2
  1097. package/dist/core/p-9857f6b0.entry.js.map +0 -1
  1098. package/dist/core/p-a0e4d6bd.entry.js.map +0 -1
  1099. package/dist/core/p-a1b9a808.entry.js +0 -2
  1100. package/dist/core/p-a1b9a808.entry.js.map +0 -1
  1101. package/dist/core/p-a79bec03.entry.js +0 -2
  1102. package/dist/core/p-a79bec03.entry.js.map +0 -1
  1103. package/dist/core/p-a84a4675.entry.js +0 -2
  1104. package/dist/core/p-a84a4675.entry.js.map +0 -1
  1105. package/dist/core/p-a87d13b3.entry.js.map +0 -1
  1106. package/dist/core/p-a928c7b3.entry.js +0 -2
  1107. package/dist/core/p-a928c7b3.entry.js.map +0 -1
  1108. package/dist/core/p-bf89c86d.entry.js.map +0 -1
  1109. package/dist/core/p-d0524c73.js +0 -2
  1110. package/dist/core/p-d0524c73.js.map +0 -1
  1111. package/dist/core/p-d24410ca.entry.js +0 -2
  1112. package/dist/core/p-d24410ca.entry.js.map +0 -1
  1113. package/dist/core/p-d52ca420.entry.js +0 -2
  1114. package/dist/core/p-d52ca420.entry.js.map +0 -1
  1115. package/dist/core/p-d67a30ca.entry.js +0 -2
  1116. package/dist/core/p-d67a30ca.entry.js.map +0 -1
  1117. package/dist/core/p-de27c59e.entry.js +0 -2
  1118. package/dist/core/p-de27c59e.entry.js.map +0 -1
  1119. package/dist/core/p-dec339ba.entry.js +0 -2
  1120. package/dist/core/p-dec339ba.entry.js.map +0 -1
  1121. package/dist/core/p-e4335135.entry.js +0 -2
  1122. package/dist/core/p-e4335135.entry.js.map +0 -1
  1123. package/dist/core/p-e56a2a06.entry.js +0 -2
  1124. package/dist/core/p-e56a2a06.entry.js.map +0 -1
  1125. package/dist/core/p-e696dc2a.entry.js +0 -2
  1126. package/dist/core/p-e696dc2a.entry.js.map +0 -1
  1127. package/dist/core/p-f0501be1.entry.js +0 -2
  1128. package/dist/core/p-f0501be1.entry.js.map +0 -1
  1129. package/dist/core/p-f50462df.entry.js +0 -2
  1130. package/dist/core/p-f50462df.entry.js.map +0 -1
  1131. package/dist/core/p-feb80f37.entry.js +0 -2
  1132. package/dist/core/p-feb80f37.entry.js.map +0 -1
  1133. package/dist/esm/helpers-35ac5e03.js.map +0 -1
  1134. package/dist/esm/index-d1d2c456.js +0 -3016
  1135. package/dist/esm/index-d1d2c456.js.map +0 -1
  1136. package/dist/esm/polyfills/core-js.js +0 -11
  1137. package/dist/esm/polyfills/dom.js +0 -79
  1138. package/dist/esm/polyfills/es5-html-element.js +0 -1
  1139. package/dist/esm/polyfills/index.js +0 -34
  1140. package/dist/esm/polyfills/system.js +0 -6
  1141. package/dist/esm/types-6f6b41a5.js +0 -16
  1142. package/dist/esm/types-6f6b41a5.js.map +0 -1
  1143. package/dist/types/testspec.setup.d.ts +0 -15
@@ -1 +0,0 @@
1
- {"version":3,"file":"ic-search-bar.e2e.js","sourceRoot":"","sources":["../../../../../src/components/ic-search-bar/test/basic/ic-search-bar.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage, newE2EPage } from \"@stencil/core/testing\";\nimport { KeyInput } from \"puppeteer\";\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\ndescribe(\"ic-search-bar\", () => {\n const options = [\n { label: \"foo\", value: \"foo\" },\n { label: \"bar\", value: \"bar\" },\n { label: \"baz\", value: \"qux\" },\n ];\n\n const longOptions = [\n { label: \"item 1\", value: \"item-1\" },\n { label: \"item 2\", value: \"item-2\" },\n { label: \"item 3\", value: \"item-3\" },\n { label: \"item 4\", value: \"item-4\" },\n { label: \"item 5\", value: \"item-5\" },\n ];\n\n const focusAndTypeIntoInput = async (value: string, page: E2EPage) => {\n await page.$eval(\"ic-search-bar\", (el) => {\n const textfield = el.shadowRoot.querySelector(\"ic-text-field\");\n const input = textfield.shadowRoot.querySelector(\n \"#ic-search-bar-input-0\"\n ) as HTMLInputElement;\n input.focus();\n });\n\n value.split(\"\").forEach(async (char: KeyInput) => {\n await page.keyboard.press(char);\n });\n };\n\n it(\"renders clear button when value present\", async () => {\n const page = await newE2EPage();\n await page.setContent('<ic-search-bar label=\"Test Label\"></ic-search-bar>');\n\n await page.waitForChanges();\n\n let clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field .clear-button\"\n );\n expect(await clearButton.isVisible()).toBeFalsy();\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field .clear-button\"\n );\n expect(await clearButton.isVisible()).toBeTruthy();\n });\n\n it(\"should clear value when clear button pressed\", async () => {\n const page = await newE2EPage();\n await page.setContent('<ic-search-bar label=\"Test Label\"></ic-search-bar>');\n\n const searchBar = await page.find(\"ic-search-bar\");\n const icClear = await page.spyOnEvent(\"icClear\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n const clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field .clear-button\"\n );\n\n await clearButton.click();\n\n await page.waitForChanges();\n\n const activeElId = await page.$eval(\n \"ic-search-bar\",\n (el) =>\n el.shadowRoot.querySelector(\"ic-text-field\").shadowRoot.activeElement.id\n );\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"\");\n expect(activeElId).toBe(\"ic-search-bar-input-0\");\n expect(icClear).toHaveReceivedEvent;\n });\n\n it(\"should emit icSubmitSearch when submit is clicked\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n const searchSubmitButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.search-submit-button\"\n );\n const icSubmitSearch = await page.spyOnEvent(\"icSubmitSearch\");\n await searchSubmitButton.click();\n\n expect(icSubmitSearch).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n });\n\n it(\"should invoke submit event when search textfield is in a form\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <form>\n <ic-search-bar label=\"Test Label\" name=\"search01\"></ic-search-bar>\n </form>\n <p id=\"text\">idle</p>\n <script>\n document.querySelector('form').addEventListener('submit', (ev) => {\n ev.preventDefault();\n document.querySelector('#text').innerText = 'submitted';\n })\n </script>\n `);\n const icSubmitSearch = await page.spyOnEvent(\"icSubmitSearch\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n const searchSubmitButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.search-submit-button\"\n );\n\n await searchSubmitButton.click();\n\n await page.waitForChanges();\n\n expect(icSubmitSearch).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n\n const p = await page.find(\"#text\");\n\n expect(p.innerText).toBe(\"submitted\");\n });\n\n it(\"should render options\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n await page.waitForChanges();\n\n await page.waitForTimeout(500);\n\n const menuItems = menu.findAll(\"li\");\n\n expect((await menuItems).length).toBe(2);\n expect(await menu.isVisible()).toBeTruthy();\n });\n\n it(\"should begin with no aria-owns attribute and then add one when the menu appears\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n let textField = await page.find(\"ic-search-bar >>> ic-text-field\");\n let menu = await textField.find(\"ic-menu\");\n\n expect(textField).not.toHaveAttribute(\"aria-owns\");\n expect(menu).toBeNull();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n textField = await page.find(\"ic-search-bar >>> ic-text-field\");\n menu = await textField.find(\"ic-menu\");\n\n expect(textField).toHaveAttribute(\"aria-owns\");\n expect(menu).not.toBeNull();\n });\n\n it(\"should focus on input when menu is initially displayed\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.waitForTimeout(500);\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n const activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n const textfield = el.shadowRoot.querySelector(\"ic-text-field\");\n return textfield.shadowRoot.activeElement.id;\n });\n\n expect(await menu.isVisible()).toBeTruthy();\n expect(activeElId).toBe(\"ic-search-bar-input-0\");\n });\n\n it(\"should remove menu when input value is cleared\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForTimeout(500);\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(await menu.isVisible()).toBeTruthy();\n\n const clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field .clear-button\"\n );\n\n await clearButton.click();\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n expect(menu).toBeNull();\n });\n\n it(\"should not update value when options are highlighted\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"ba\");\n });\n\n it(\"should focus on menu on ArrowDown from input\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n const activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n return el.shadowRoot.activeElement.id;\n });\n\n expect(activeElId).toBe(\"ic-search-bar-input-0-menu-qux\");\n });\n\n it(\"should focus on menu on ArrowUp from input\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowUp\");\n\n await page.waitForChanges();\n\n const activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n return el.shadowRoot.activeElement.id;\n });\n\n expect(activeElId).toBe(\"ic-search-bar-input-0-menu-qux\");\n });\n\n it(\"should highlight first and last options using Home and End and move focus to menu\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n await page.waitForChanges();\n\n await page.keyboard.press(\"End\");\n await page.waitForChanges();\n\n let menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).not.toHaveClass(\"focused-option\");\n expect(menuOptions[1]).toHaveClass(\"focused-option\");\n let activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n return el.shadowRoot.activeElement.id;\n });\n expect(activeElId).toBe(\"ic-search-bar-input-0-menu-qux\");\n\n await page.keyboard.press(\"Home\");\n await page.waitForChanges();\n\n menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).toHaveClass(\"focused-option\");\n expect(menuOptions[1]).not.toHaveClass(\"focused-option\");\n activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n return el.shadowRoot.activeElement.id;\n });\n expect(activeElId).toBe(\"ic-search-bar-input-0-menu-bar\");\n });\n\n it(\"should select first option and update value as label on Enter\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Enter\");\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"bar\");\n });\n\n it(\"should keep the input value on Enter when searchMode is set to `query`\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\" search-mode=\"query\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Enter\");\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"ba\");\n });\n\n it(\"should not highlight options when typing and searchMode is `query`\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\" search-mode=\"query\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"bar\", page);\n\n await page.waitForChanges();\n\n const menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).not.toHaveClass(\"focused-option\");\n });\n\n it(\"should move focus to first option after one ArrowDown press when searchMode is set to `query`\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\" search-mode=\"query\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n const menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).toHaveClass(\"focused-option\");\n });\n\n it(\"should add a space to value on Space\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Space\");\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"ba \");\n });\n\n it(\"should remove a character from value on Backspace\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Backspace\");\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"b\");\n });\n\n it(\"should set value to last option when pressing up on input\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowUp\");\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Enter\");\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"qux\");\n });\n\n it(\"should close menu on escape\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"ArrowUp\");\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(await menu.isVisible()).toBeTruthy();\n\n await menu.press(\"Escape\");\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull();\n });\n\n it(\"should close menu when blurred and open when focused\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n await page.waitForChanges();\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n // Will focus clear button then blur\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull;\n\n await page.keyboard.down(\"Shift\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(await menu.isVisible()).toBeTruthy();\n });\n\n it(\"should emit icOptionSelect when a menu option has been selected\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar search label=\"Test Label\"></ic-search-bar>\n `);\n const icOptionSelect = await page.spyOnEvent(\"icOptionSelect\");\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"fo\", page);\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n await menu.press(\"Enter\");\n\n expect(icOptionSelect).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n });\n\n it(\"should emit icMenuChange when opening/closing menu\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n const icMenuChange = await page.spyOnEvent(\"icMenuChange\");\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n expect(icMenuChange).toHaveReceivedEventDetail({\n open: true,\n });\n\n await page.keyboard.press(\"Enter\");\n\n await page.waitForChanges();\n\n expect(icMenuChange).toHaveReceivedEventDetail({\n open: false,\n });\n });\n\n it(\"should prepopulate textfield with value in search mode\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\" value=\"test value\"></ic-search-bar>\n `);\n\n const input = await page.find(\n \"ic-search-bar >>> ic-text-field >>> #ic-search-bar-input-0\"\n );\n expect(await input.getProperty(\"value\")).toBe(\"test value\");\n });\n\n it(\"should filter options\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n await page.waitForChanges();\n\n let menuItems = menu.findAll(\"li\");\n\n expect((await menuItems).length).toBe(2);\n\n await page.keyboard.press(\"r\");\n\n await page.waitForChanges();\n\n menuItems = menu.findAll(\"li\");\n\n expect((await menuItems).length).toBe(1);\n });\n\n it(\"should prevent form submit event when clear is invoked using Enter\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <form>\n <ic-search-bar label=\"Test Label\" name=\"search01\"></ic-search-bar>\n </form>\n <p id=\"text\">idle</p>\n <script>\n document.querySelector('form').addEventListener('submit', () => {\n document.getElementById('text').innerText = 'submitted';\n })\n </script>\n `);\n const icClear = await page.spyOnEvent(\"icClear\");\n const p = await page.find(\"#text\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Enter\");\n\n expect(icClear).toHaveReceivedEvent();\n\n expect(p.innerText).toBe(\"idle\");\n });\n\n it(\"should clear the value when clear is invoked using Space - should not add a whitespace\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const icClear = await page.spyOnEvent(\"icClear\");\n const searchBar = await page.find(\"ic-search-bar\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Space\");\n\n await page.waitForChanges();\n\n expect(icClear).toHaveReceivedEvent();\n\n expect(searchBar.getAttribute(\"value\")).toBe(\"\");\n expect(searchBar.getAttribute(\"value\").length).toBe(0);\n });\n\n it(\"should emit icSubmitSearch when search button pressed with Space\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const icSubmitSearch = await page.spyOnEvent(\"icSubmitSearch\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Space\");\n\n await page.waitForChanges();\n\n expect(icSubmitSearch).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n });\n\n it(\"should update value and move focus back to input when focus previously on ic-menu\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n const focusedElement = await page.evaluate(() => {\n const el = document.querySelector(\"ic-search-bar\").shadowRoot;\n return el.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"ic-search-bar-input-0-menu-qux\");\n\n await page.keyboard.press(\"r\");\n\n const inputEl = await page.evaluate(() => {\n const el = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-text-field\");\n return {\n focusedEl: el.shadowRoot.activeElement.id,\n inputValue: el.value,\n };\n });\n\n expect(inputEl.focusedEl).toBe(\"ic-search-bar-input-0\");\n expect(inputEl.inputValue).toBe(\"bar\");\n });\n\n it(\"should render suggestions after number of characters in value set to 3\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n searchBar.setProperty(\"charactersUntilSuggestion\", 3);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull();\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"r\", page);\n\n await page.waitForChanges();\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n expect(await menu.isVisible()).toBeTruthy();\n });\n\n it(\"should render no results available if no matches\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"zzz\", page);\n\n await page.waitForChanges();\n\n const noOptionsLabel = await page.evaluate(() => {\n const menuEl = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-menu\");\n const noOptionsItem = menuEl.querySelectorAll(\"li\")[0];\n\n return noOptionsItem.innerText;\n });\n\n expect(noOptionsLabel).toBe(\"No results found\");\n });\n\n it(\"should render 0 results if no matches (updated no options text)\", async () => {\n const NO_OPTIONS = \"0 results\";\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n searchBar.setProperty(\"emptyOptionListText\", NO_OPTIONS);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"zzz\", page);\n\n await page.waitForChanges();\n\n const noOptionsLabel = await page.evaluate(() => {\n const menuEl = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-menu\");\n const noOptionsItem = menuEl.querySelectorAll(\"li\")[0];\n\n return noOptionsItem.innerText;\n });\n\n expect(noOptionsLabel).toBe(NO_OPTIONS);\n });\n\n it(\"should disable search button on 0 results\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"zzz\", page);\n\n await page.waitForChanges();\n\n const searchSubmitBtn = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.search-submit-button\"\n );\n\n expect(await searchSubmitBtn.getProperty(\"disabled\")).toBeTruthy();\n });\n\n it(\"should focus on first option when ic-menu rendered and Enter should select option\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n const FirstOptionClassIsFocusedOption = await page.evaluate(() => {\n const menuEl = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-menu\");\n const firstMenuItem = menuEl.querySelectorAll(\"li\")[0];\n\n return firstMenuItem.classList.contains(\"focused-option\");\n });\n\n expect(FirstOptionClassIsFocusedOption).toBeTruthy();\n\n await page.keyboard.press(\"Enter\");\n\n await page.waitForChanges();\n\n const input = await page.find(\n \"ic-search-bar >>> ic-text-field >>> #ic-search-bar-input-0\"\n );\n expect(await input.getProperty(\"value\")).toBe(\"bar\");\n });\n\n it(\"should be able to select second menu item after selecting an initial menu item\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n let firstOption = (await menu.findAll(\"li\"))[0];\n expect(firstOption).toHaveClass(\"focused-option\");\n\n await searchBar.press(\"Enter\");\n\n await page.waitForChanges();\n\n const value = await searchBar.getProperty(\"value\");\n\n await page.waitForChanges();\n\n expect(value).toBe(\"bar\");\n\n await page.keyboard.press(\"Backspace\");\n\n await page.waitForChanges();\n\n await searchBar.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n firstOption = (await menu.findAll(\"li\"))[0];\n const lastOption = (await menu.findAll(\"li\"))[1];\n\n expect(firstOption).not.toHaveClass(\"focused-option\");\n expect(lastOption).toHaveClass(\"focused-option\");\n\n await searchBar.press(\"Enter\");\n\n await page.waitForChanges();\n\n expect(await searchBar.getProperty(\"value\")).toBe(\"qux\");\n });\n\n it(\"should tab through search bar from input > clear > submit > ic-menu (when options are available) > back to search bar\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n let focusedElement = await page.evaluate(() => {\n const el = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-text-field\");\n return el.shadowRoot.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"ic-search-bar-input-0\");\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n focusedElement = await page.evaluate(() => {\n const el = document.querySelector(\"ic-search-bar\");\n return el.shadowRoot.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"clear-button\");\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n focusedElement = await page.evaluate(() => {\n const el = document.querySelector(\"ic-search-bar\");\n return el.shadowRoot.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"search-submit-button\");\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n focusedElement = await page.evaluate(() => {\n const el = document.querySelector(\"ic-search-bar\").shadowRoot;\n return el.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"ic-search-bar-input-0-menu-bar\");\n\n await page.waitForChanges();\n\n await page.keyboard.down(\"Shift\");\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n focusedElement = await page.evaluate(() => {\n const el = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-text-field\");\n return el.shadowRoot.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"ic-search-bar-input-0\");\n });\n\n it(\"should render menu when shift is pressed while focus on input\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Shift\");\n\n const menu = await page.find(\"ic-search-bar >>> ic-menu\");\n\n expect(await menu.isVisible()).toBeTruthy();\n });\n\n it(\"should display tooltip on search buttons when enabled\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n let submitSearchTooltipDisplay = await page.evaluate(() => {\n const tooltip = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"#search-submit-button\")\n .shadowRoot.querySelector(\"ic-tooltip\")\n .shadowRoot.querySelector(\".ic-tooltip-container\");\n return window.getComputedStyle(tooltip).display;\n });\n\n expect(submitSearchTooltipDisplay).toBe(\"none\");\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForTimeout(300);\n\n const clearTooltipDisplay = await page.evaluate(() => {\n const tooltip = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"#clear-button\")\n .shadowRoot.querySelector(\"ic-tooltip\")\n .shadowRoot.querySelector(\".ic-tooltip-container\");\n\n return window.getComputedStyle(tooltip).display;\n });\n\n expect(clearTooltipDisplay).toBe(\"block\");\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForTimeout(300);\n\n submitSearchTooltipDisplay = await page.evaluate(() => {\n const tooltip = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"#search-submit-button\")\n .shadowRoot.querySelector(\"ic-tooltip\")\n .shadowRoot.querySelector(\".ic-tooltip-container\");\n\n return window.getComputedStyle(tooltip).display;\n });\n\n expect(submitSearchTooltipDisplay).toBe(\"block\");\n });\n\n it(\"should highlight first option again after no results found\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"barr\", page);\n\n await page.waitForChanges();\n\n const noOptionsLabel = await page.evaluate(() => {\n const menuEl = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-menu\");\n const noOptionsItem = menuEl.querySelectorAll(\"li\")[0];\n\n return noOptionsItem.innerText;\n });\n\n expect(noOptionsLabel).toBe(\"No results found\");\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Backspace\");\n\n await page.waitForTimeout(500);\n\n const firstOptionFocused = await page.evaluate(() => {\n const menuEl = document\n .querySelector(\"ic-search-bar\")\n .shadowRoot.querySelector(\"ic-menu\");\n const firstOptionItem = menuEl.querySelectorAll(\"li\")[0];\n\n return firstOptionItem.classList.contains(\"focused-option\");\n });\n\n expect(firstOptionFocused).toBeTruthy();\n });\n\n it(\"should focus onto button from search bar\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n <ic-button id=\"button\">Foo</ic-button>\n `);\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"ArrowDown\");\n\n await page.waitForChanges();\n\n let focusedElement = await page.evaluate(() => {\n const el = document.querySelector(\"ic-search-bar\").shadowRoot;\n return el.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"ic-search-bar-input-0-menu-qux\");\n\n await page.waitForChanges();\n\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n focusedElement = await page.evaluate(() => {\n return document.activeElement.id;\n });\n\n expect(focusedElement).toBe(\"button\");\n });\n\n it(\"should emit icChange on delay\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" debounce=\"500\"></ic-search-bar>`\n );\n\n await page.waitForChanges();\n const icChange = await page.spyOnEvent(\"icChange\");\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForTimeout(600);\n expect(icChange).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n\n await focusAndTypeIntoInput(\"bar\", page);\n await page.waitForChanges();\n await page.waitForTimeout(100);\n expect(icChange).toHaveReceivedEventDetail({\n value: \"foo\",\n });\n await page.waitForTimeout(500);\n expect(icChange).toHaveReceivedEventDetail({\n value: \"foobar\",\n });\n });\n\n it(\"should highlight the menu option items in the correct order with arrowDown\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", longOptions);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"it\", page);\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n // First option has focused-option\n let option = (await menu.findAll(\"li\"))[0];\n expect(option).toHaveClass(\"focused-option\");\n\n // Other options should not\n for (let i = 1; i < longOptions.length; i++) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n\n // Highlight the next option\n await page.keyboard.press(\"ArrowDown\");\n await page.waitForChanges();\n\n option = (await menu.findAll(\"li\"))[1];\n expect(option).toHaveClass(\"focused-option\");\n\n for (let i = 2; i < longOptions.length; i++) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n\n await page.keyboard.press(\"ArrowDown\");\n await page.waitForChanges();\n\n option = (await menu.findAll(\"li\"))[2];\n expect(option).toHaveClass(\"focused-option\");\n\n for (let i = 3; i < longOptions.length; i++) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n });\n\n it(\"should highlight the menu option items in the correct order with arrowUp\", async () => {\n const page = await newE2EPage();\n await page.setContent(`\n <ic-search-bar label=\"Test Label\"></ic-search-bar>\n `);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", longOptions);\n\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"it\", page);\n await page.waitForChanges();\n\n const menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n\n // First option has focused-option class\n let option = (await menu.findAll(\"li\"))[0];\n expect(option).toHaveClass(\"focused-option\");\n\n // Other options should not have focused-option class\n for (let i = 1; i < longOptions.length; i++) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n\n // Highlight the last option\n await page.keyboard.press(\"ArrowUp\");\n await page.waitForChanges();\n\n option = (await menu.findAll(\"li\"))[longOptions.length - 1];\n expect(option).toHaveClass(\"focused-option\");\n\n for (let i = longOptions.length - 2; i >= 0; i--) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n\n await page.keyboard.press(\"ArrowUp\");\n await page.waitForChanges();\n\n option = (await menu.findAll(\"li\"))[longOptions.length - 2];\n expect(option).toHaveClass(\"focused-option\");\n\n for (let i = longOptions.length - 3; i >= 0; i--) {\n option = (await menu.findAll(\"li\"))[i];\n expect(option).not.toHaveClass(\"focused-option\");\n }\n });\n\n it(\"should reverse tab to submit button\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"foo\", page);\n\n await page.waitForChanges();\n\n await page.keyboard.down(\"ArrowDown\");\n await page.waitForChanges();\n\n await page.keyboard.down(\"Shift\");\n await page.keyboard.press(\"Tab\");\n\n await page.waitForChanges();\n\n const activeElId = await page.$eval(\"ic-search-bar\", (el) => {\n return el.shadowRoot.activeElement.id;\n });\n\n expect(activeElId).toBe(\"search-submit-button\");\n });\n\n it(\"should not filter options when disable-auto-filtering is set to true\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" disable-auto-filtering=\"true\"></ic-search-bar>`\n );\n\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"foo\", page);\n await page.waitForChanges();\n\n const menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions).toHaveLength(options.length);\n });\n\n it(\"should select the highlighted option when submit search is clicked\", async () => {\n const page = await newE2EPage();\n await page.setContent(`<ic-search-bar label=\"Test Label\"></ic-search-bar>`);\n const searchBar = await page.find(\"ic-search-bar\");\n const searchSubmitButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.search-submit-button\"\n );\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n\n // Select first filtered option\n await focusAndTypeIntoInput(\"ba\", page);\n await page.waitForChanges();\n\n let menuOption = (\n await page.findAll(\"ic-search-bar >>> ic-text-field ic-menu li\")\n )[0];\n expect(menuOption).toHaveClass(\"focused-option\");\n expect(menuOption).toEqualText(\"bar\");\n await searchSubmitButton.click();\n await page.waitForChanges();\n expect(await searchBar.getProperty(\"value\")).toBe(\"bar\");\n\n // Select second filtered option\n const clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.clear-button\"\n );\n await clearButton.click();\n await page.waitForChanges();\n\n await focusAndTypeIntoInput(\"ba\", page);\n await page.waitForChanges();\n\n await page.keyboard.press(\"ArrowUp\");\n await page.waitForChanges();\n\n menuOption = (\n await page.findAll(\"ic-search-bar >>> ic-text-field ic-menu li\")\n )[1];\n expect(menuOption).toHaveClass(\"focused-option\");\n expect(menuOption).toEqualText(\"baz\");\n await searchSubmitButton.click();\n await page.waitForChanges();\n expect(await searchBar.getProperty(\"value\")).toBe(\"qux\");\n });\n\n it(\"should display the loading option in the menu when loading then cancel loading when options provided\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" loading-label=\"load\" disable-auto-filtering=\"true\"></ic-search-bar>`\n );\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n\n let menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions).toHaveLength(1);\n expect(menuOptions[0]).toHaveClass(\"loading-option\");\n expect(menuOptions[0]).toEqualText(\"load\");\n\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions).toHaveLength(3);\n expect(menuOptions[0]).not.toHaveClass(\"loading-option\");\n expect(searchBar.getProperty(\"loading\")).toBeFalsy;\n });\n\n it(\"should display the timeout state in the menu when timed out and should not update the options\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" loading-error-label=\"error message\" timeout=\"1000\" disable-auto-filtering=\"true\"></ic-search-bar>`\n );\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(1000);\n\n const menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions).toHaveLength(1);\n expect(menuOptions[0]).toHaveClass(\"timeout\");\n expect(await menuOptions[0].find(\"ic-typography\")).toEqualText(\n \"error message\"\n );\n expect(await menuOptions[0].find(\"#retry-button\")).not.toBeNull;\n const searchSubmitButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-button.search-submit-button\"\n );\n expect(await searchSubmitButton.getProperty(\"disabled\")).toBeTruthy;\n\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n expect(menuOptions).toHaveLength(1);\n expect(menuOptions[0]).toHaveClass(\"timeout\");\n });\n\n it(\"should be able to focus retry button using tab and should keep loading state when menu closed\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" timeout=\"1000\" disable-auto-filtering=\"true\"></ic-search-bar>`\n );\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(1000);\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n const activeElId = await page.$eval(\n \"ic-search-bar\",\n (el) => el.shadowRoot.activeElement.id\n );\n expect(activeElId).toBe(\"retry-button\");\n\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n let menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(menu).toBeNull;\n\n await page.keyboard.down(\"Shift\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n menu = await page.find(\"ic-search-bar >>> ic-text-field ic-menu\");\n expect(await menu.isVisible()).toBeTruthy;\n expect(await menu.findAll(\"li\")).toHaveLength(1);\n });\n\n it(\"should trigger a retry when the retry button is pressed using space and enter\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" timeout=\"1000\" disable-auto-filtering=\"true\"></ic-search-bar>`\n );\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(1000);\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n const retryButton = await page.find(\n \"ic-search-bar >>> ic-text-field ic-menu #retry-button\"\n );\n await retryButton.press(\"Enter\");\n await page.waitForChanges();\n\n let menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).toEqualText(\"Loading...\");\n await page.waitForTimeout(1000);\n\n await page.keyboard.press(\"Tab\");\n await page.keyboard.press(\"Tab\");\n await page.waitForChanges();\n\n await retryButton.press(\" \");\n await page.waitForChanges();\n\n menuOptions = await page.findAll(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOptions[0]).toEqualText(\"Loading...\");\n });\n\n it(\"should cancel loading when clear button is pressed\", async () => {\n const page = await newE2EPage();\n await page.setContent(\n `<ic-search-bar label=\"Test Label\" timeout=\"1000\"></ic-search-bar>`\n );\n const searchBar = await page.find(\"ic-search-bar\");\n searchBar.setProperty(\"options\", options);\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(1000);\n\n const clearButton = await page.find(\n \"ic-search-bar >>> ic-text-field .clear-button\"\n );\n await clearButton.click();\n await page.waitForChanges();\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(750);\n\n let menuOption = await page.find(\n \"ic-search-bar >>> ic-text-field ic-menu li\"\n );\n expect(menuOption).toEqualText(\"Loading...\");\n await clearButton.click();\n await page.waitForChanges();\n\n //Check that the timeout was cancelled\n await page.waitForTimeout(1000);\n await searchBar.click();\n await page.waitForChanges();\n expect(await page.find(\"ic-search-bar >>> ic-text-field ic-menu\")).toBeNull;\n\n await focusAndTypeIntoInput(\"ba\", page);\n searchBar.setProperty(\"loading\", true);\n await page.waitForChanges();\n await page.waitForTimeout(750);\n menuOption = await page.find(\"ic-search-bar >>> ic-text-field ic-menu li\");\n expect(menuOption).toEqualText(\"Loading...\");\n });\n});\n"]}