@ukic/web-components 2.1.0-beta.9 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1175) hide show
  1. package/dist/cjs/OpenInNew-f9958725.js +7 -0
  2. package/dist/cjs/OpenInNew-f9958725.js.map +1 -0
  3. package/dist/cjs/chevron-icon-2bb3a907.js +10 -0
  4. package/dist/cjs/chevron-icon-2bb3a907.js.map +1 -0
  5. package/dist/cjs/core.cjs.js +10 -3
  6. package/dist/cjs/core.cjs.js.map +1 -1
  7. package/dist/cjs/{helpers-6eb26e7a.js → helpers-eb53c416.js} +27 -26
  8. package/dist/cjs/helpers-eb53c416.js.map +1 -0
  9. package/dist/cjs/ic-alert.cjs.entry.js +11 -11
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +5 -5
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +39 -33
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +14 -13
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-button_3.cjs.entry.js +163 -93
  18. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-card.cjs.entry.js +46 -45
  20. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox-group.cjs.entry.js +24 -23
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox.cjs.entry.js +41 -29
  24. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-chip.cjs.entry.js +18 -15
  26. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-data-entity.cjs.entry.js +2 -2
  29. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-data-row.cjs.entry.js +38 -24
  31. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-dialog.cjs.entry.js +295 -0
  33. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -0
  34. package/dist/cjs/ic-divider.cjs.entry.js +3 -3
  35. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-footer-link-group.cjs.entry.js +18 -18
  37. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-footer-link.cjs.entry.js +23 -17
  39. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-footer.cjs.entry.js +23 -21
  41. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-hero.cjs.entry.js +23 -21
  43. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +45 -26
  45. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +299 -159
  47. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-input-label_2.cjs.entry.js +11 -11
  49. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-link.cjs.entry.js +22 -23
  51. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-menu-group.cjs.entry.js +24 -0
  53. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -0
  54. package/dist/cjs/ic-menu-item.cjs.entry.js +122 -0
  55. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -0
  56. package/dist/cjs/ic-navigation-button.cjs.entry.js +18 -18
  57. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-group.cjs.entry.js +87 -58
  59. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-item.cjs.entry.js +49 -42
  61. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-navigation-menu.cjs.entry.js +28 -34
  63. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-page-header.cjs.entry.js +24 -27
  65. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-pagination-item.cjs.entry.js +56 -0
  67. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -0
  68. package/dist/cjs/ic-pagination.cjs.entry.js +227 -0
  69. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -0
  70. package/dist/cjs/ic-popover-menu.cjs.entry.js +237 -0
  71. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -0
  72. package/dist/cjs/ic-radio-group.cjs.entry.js +43 -25
  73. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-radio-option.cjs.entry.js +39 -38
  75. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-search-bar.cjs.entry.js +178 -102
  77. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
  79. package/dist/cjs/ic-select.cjs.entry.js +349 -190
  80. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-side-navigation.cjs.entry.js +116 -87
  82. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -4
  84. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-status-tag.cjs.entry.js +6 -6
  86. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-step.cjs.entry.js +10 -10
  88. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-stepper.cjs.entry.js +15 -15
  90. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-switch.cjs.entry.js +20 -19
  92. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-tab-context.cjs.entry.js +68 -32
  94. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-tab-group.cjs.entry.js +5 -4
  96. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-tab-panel.cjs.entry.js +15 -4
  98. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-tab.cjs.entry.js +32 -7
  100. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-text-field.cjs.entry.js +102 -72
  102. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  104. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toast-region.cjs.entry.js +13 -13
  106. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-toast.cjs.entry.js +60 -56
  108. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-top-navigation.cjs.entry.js +49 -45
  110. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-typography.cjs.entry.js +97 -5
  112. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  113. package/dist/cjs/{index-f79a4e53.js → index-2a0c6769.js} +256 -43
  114. package/dist/cjs/index-2a0c6769.js.map +1 -0
  115. package/dist/cjs/loader.cjs.js +4 -3
  116. package/dist/cjs/loader.cjs.js.map +1 -1
  117. package/dist/cjs/{popper-11d5f714.js → popper-d7adcfc6.js} +10 -17
  118. package/dist/cjs/popper-d7adcfc6.js.map +1 -0
  119. package/dist/cjs/types-3eb02246.js.map +1 -1
  120. package/dist/collection/assets/pagination-first-last.svg +3 -0
  121. package/dist/collection/assets/pagination-next-previous.svg +3 -0
  122. package/dist/collection/collection-manifest.json +17 -11
  123. package/dist/collection/components/ic-alert/ic-alert.css +1 -1
  124. package/dist/collection/components/ic-alert/ic-alert.js +49 -49
  125. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  126. package/dist/collection/components/ic-alert/{ic-alert.test.a11y.js → test/a11y/ic-alert.test.a11y.js} +1 -1
  127. package/dist/collection/components/ic-alert/test/a11y/ic-alert.test.a11y.js.map +1 -0
  128. package/dist/collection/components/ic-alert/test/basic/ic-alert.e2e.js +16 -0
  129. package/dist/collection/components/ic-alert/test/basic/ic-alert.e2e.js.map +1 -0
  130. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +182 -0
  131. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +1 -0
  132. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +3 -3
  133. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +4 -4
  134. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  135. package/dist/collection/components/ic-back-to-top/test/a11y/ic-back-to-top.test.a11y.js.map +1 -0
  136. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.e2e.js +68 -0
  137. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.e2e.js.map +1 -0
  138. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +123 -0
  139. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -0
  140. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +19 -4
  141. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +28 -27
  142. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  143. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +118 -0
  144. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -0
  145. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +37 -31
  146. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  147. package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group.test.a11y.js → test/a11y/ic-breadcrumb-group.test.a11y.js} +1 -1
  148. package/dist/collection/components/ic-breadcrumb-group/test/a11y/ic-breadcrumb-group.test.a11y.js.map +1 -0
  149. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group-test-examples.js.map +1 -0
  150. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.e2e.js +41 -0
  151. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.e2e.js.map +1 -0
  152. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +181 -0
  153. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -0
  154. package/dist/collection/components/ic-button/ic-button.css +23 -8
  155. package/dist/collection/components/ic-button/ic-button.js +269 -114
  156. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  157. package/dist/collection/components/ic-button/{ic-button.test.a11y.js → test/a11y/ic-button.test.a11y.js} +1 -1
  158. package/dist/collection/components/ic-button/test/a11y/ic-button.test.a11y.js.map +1 -0
  159. package/dist/collection/components/ic-button/test/basic/ic-button.e2e.js +198 -0
  160. package/dist/collection/components/ic-button/test/basic/ic-button.e2e.js.map +1 -0
  161. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +256 -0
  162. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +1 -0
  163. package/dist/collection/components/ic-card/ic-card.css +35 -10
  164. package/dist/collection/components/ic-card/ic-card.js +123 -122
  165. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  166. package/dist/collection/components/ic-card/{ic-card.test.a11y.js → test/a11y/ic-card.test.a11y.js} +1 -1
  167. package/dist/collection/components/ic-card/test/a11y/ic-card.test.a11y.js.map +1 -0
  168. package/dist/collection/components/ic-card/test/basic/ic-card.e2e.js +23 -0
  169. package/dist/collection/components/ic-card/test/basic/ic-card.e2e.js.map +1 -0
  170. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js +152 -0
  171. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +1 -0
  172. package/dist/collection/components/ic-checkbox/ic-checkbox.css +11 -8
  173. package/dist/collection/components/ic-checkbox/ic-checkbox.js +107 -76
  174. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  175. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +3 -3
  176. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +64 -67
  177. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  178. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js.map +1 -1
  179. package/dist/collection/components/ic-checkbox-group/{ic-checkbox-group.test.a11y.js → test/a11y/ic-checkbox-group.test.a11y.js} +1 -1
  180. package/dist/collection/components/ic-checkbox-group/test/a11y/ic-checkbox-group.test.a11y.js.map +1 -0
  181. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.e2e.js +201 -0
  182. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.e2e.js.map +1 -0
  183. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +175 -0
  184. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -0
  185. package/dist/collection/components/ic-chip/ic-chip.css +11 -10
  186. package/dist/collection/components/ic-chip/ic-chip.js +55 -52
  187. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  188. package/dist/collection/components/ic-chip/{ic-chip.test.a11y.js → test/a11y/ic-chip.test.a11y.js} +1 -1
  189. package/dist/collection/components/ic-chip/test/a11y/ic-chip.test.a11y.js.map +1 -0
  190. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +110 -0
  191. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -0
  192. package/dist/collection/components/ic-classification-banner/{ic-classification-banner.test.a11y.js → test/a11y/ic-classification-banner.test.a11y.js} +1 -1
  193. package/dist/collection/components/ic-classification-banner/test/a11y/ic-classification-banner.test.a11y.js.map +1 -0
  194. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +140 -0
  195. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +1 -0
  196. package/dist/collection/components/ic-data-entity/ic-data-entity.css +1 -1
  197. package/dist/collection/components/ic-data-entity/{ic-data-entity.test.a11y.js → test/a11y/ic-data-entity.test.a11y.js} +1 -1
  198. package/dist/collection/components/ic-data-entity/test/a11y/ic-data-entity.test.a11y.js.map +1 -0
  199. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js +161 -0
  200. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +1 -0
  201. package/dist/collection/components/ic-data-row/ic-data-row.css +1 -1
  202. package/dist/collection/components/ic-data-row/ic-data-row.js +51 -37
  203. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  204. package/dist/collection/components/ic-data-row/{ic-data-row.test.a11y.js → test/a11y/ic-data-row.test.a11y.js} +1 -1
  205. package/dist/collection/components/ic-data-row/test/a11y/ic-data-row.test.a11y.js.map +1 -0
  206. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +74 -0
  207. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -0
  208. package/dist/collection/components/ic-dialog/ic-dialog.css +592 -0
  209. package/dist/collection/components/ic-dialog/ic-dialog.js +640 -0
  210. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -0
  211. package/dist/collection/components/ic-dialog/test/a11y/ic-dialog.test.a11y.js +28 -0
  212. package/dist/collection/components/ic-dialog/test/a11y/ic-dialog.test.a11y.js.map +1 -0
  213. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.e2e.js +207 -0
  214. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.e2e.js.map +1 -0
  215. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +520 -0
  216. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -0
  217. package/dist/collection/components/ic-divider/ic-divider.css +1 -1
  218. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +24 -0
  219. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +1 -0
  220. package/dist/collection/components/ic-footer/ic-footer.css +2 -2
  221. package/dist/collection/components/ic-footer/ic-footer.js +51 -49
  222. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  223. package/dist/collection/components/ic-footer/{ic-footer.test.a11y.js → test/a11y/ic-footer.test.a11y.js} +1 -1
  224. package/dist/collection/components/ic-footer/test/a11y/ic-footer.test.a11y.js.map +1 -0
  225. package/dist/collection/components/ic-footer/test/basic/ic-footer.e2e.js +50 -0
  226. package/dist/collection/components/ic-footer/test/basic/ic-footer.e2e.js.map +1 -0
  227. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +140 -0
  228. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -0
  229. package/dist/collection/components/ic-footer-link/ic-footer-link.css +36 -4
  230. package/dist/collection/components/ic-footer-link/ic-footer-link.js +111 -15
  231. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  232. package/dist/collection/components/ic-footer-link/{ic-footer-link.test.a11y.js → test/a11y/ic-footer-link.test.a11y.js} +1 -1
  233. package/dist/collection/components/ic-footer-link/test/a11y/ic-footer-link.test.a11y.js.map +1 -0
  234. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +62 -0
  235. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +1 -0
  236. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +18 -18
  237. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  238. package/dist/collection/components/ic-footer-link-group/{ic-footer-link-group.test.a11y.js → test/a11y/ic-footer-link-group.test.a11y.js} +1 -1
  239. package/dist/collection/components/ic-footer-link-group/test/a11y/ic-footer-link-group.test.a11y.js.map +1 -0
  240. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +98 -0
  241. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -0
  242. package/dist/collection/components/ic-hero/ic-hero.css +23 -22
  243. package/dist/collection/components/ic-hero/ic-hero.js +97 -95
  244. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  245. package/dist/collection/components/ic-hero/{ic-hero.test.a11y.js → test/a11y/ic-hero.test.a11y.js} +1 -1
  246. package/dist/collection/components/ic-hero/test/a11y/ic-hero.test.a11y.js.map +1 -0
  247. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +76 -0
  248. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -0
  249. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +4 -8
  250. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +44 -25
  251. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  252. package/dist/collection/components/ic-horizontal-scroll/{ic-horizontal-scroll.test.a11y.js → test/a11y/ic-horizontal-scroll.test.a11y.js} +1 -1
  253. package/dist/collection/components/ic-horizontal-scroll/test/a11y/ic-horizontal-scroll.test.a11y.js.map +1 -0
  254. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +180 -0
  255. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +1 -0
  256. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +38 -9
  257. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +45 -45
  258. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  259. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +117 -0
  260. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -0
  261. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +38 -0
  262. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +1 -0
  263. package/dist/collection/components/ic-input-label/ic-input-label.css +0 -4
  264. package/dist/collection/components/ic-input-label/ic-input-label.js +51 -51
  265. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  266. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +98 -0
  267. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -0
  268. package/dist/collection/components/ic-input-validation/ic-input-validation.css +0 -8
  269. package/dist/collection/components/ic-input-validation/ic-input-validation.js +41 -41
  270. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  271. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +89 -0
  272. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -0
  273. package/dist/collection/components/ic-link/ic-link.css +16 -3
  274. package/dist/collection/components/ic-link/ic-link.js +55 -52
  275. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  276. package/dist/collection/components/ic-link/{ic-link.test.a11y.js → test/a11y/ic-link.test.a11y.js} +1 -1
  277. package/dist/collection/components/ic-link/test/a11y/ic-link.test.a11y.js.map +1 -0
  278. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +203 -0
  279. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -0
  280. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +5 -5
  281. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +97 -89
  282. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  283. package/dist/collection/components/ic-loading-indicator/{ic-loading-indicator.test.a11y.js → test/a11y/ic-loading-indicator.test.a11y.js} +1 -1
  284. package/dist/collection/components/ic-loading-indicator/test/a11y/ic-loading-indicator.test.a11y.js.map +1 -0
  285. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.e2e.js +34 -0
  286. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.e2e.js.map +1 -0
  287. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +141 -0
  288. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -0
  289. package/dist/collection/components/ic-menu/ic-menu.css +47 -10
  290. package/dist/collection/components/ic-menu/ic-menu.js +521 -268
  291. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  292. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +657 -0
  293. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -0
  294. package/dist/collection/components/ic-menu-group/ic-menu-group.css +465 -0
  295. package/dist/collection/components/ic-menu-group/ic-menu-group.js +45 -0
  296. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -0
  297. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +94 -0
  298. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +1 -0
  299. package/dist/collection/components/ic-menu-item/ic-menu-item.css +628 -0
  300. package/dist/collection/components/ic-menu-item/ic-menu-item.js +394 -0
  301. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -0
  302. package/dist/collection/components/ic-menu-item/ic-menu-item.types.js +2 -0
  303. package/dist/collection/components/ic-menu-item/ic-menu-item.types.js.map +1 -0
  304. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +108 -0
  305. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +1 -0
  306. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +4 -0
  307. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +56 -56
  308. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  309. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +84 -0
  310. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +1 -0
  311. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +2 -10
  312. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +101 -72
  313. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  314. package/dist/collection/components/ic-navigation-group/{ic-navigation-group.test.a11y.js → test/a11y/ic-navigation-group.test.a11y.js} +1 -1
  315. package/dist/collection/components/ic-navigation-group/test/a11y/ic-navigation-group.test.a11y.js.map +1 -0
  316. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +309 -0
  317. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +1 -0
  318. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +59 -16
  319. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +180 -83
  320. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  321. package/dist/collection/components/ic-navigation-item/{ic-navigation-item.test.a11y.js → test/a11y/ic-navigation-item.test.a11y.js} +1 -1
  322. package/dist/collection/components/ic-navigation-item/test/a11y/ic-navigation-item.test.a11y.js.map +1 -0
  323. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +118 -0
  324. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +1 -0
  325. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +19 -18
  326. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +31 -37
  327. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  328. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js +29 -0
  329. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.e2e.js.map +1 -0
  330. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +176 -0
  331. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +1 -0
  332. package/dist/collection/components/ic-page-header/ic-page-header.css +3 -1
  333. package/dist/collection/components/ic-page-header/ic-page-header.js +65 -68
  334. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  335. package/dist/collection/components/ic-page-header/{ic-page-header.test.a11y.js → test/a11y/ic-page-header.test.a11y.js} +1 -1
  336. package/dist/collection/components/ic-page-header/test/a11y/ic-page-header.test.a11y.js.map +1 -0
  337. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.e2e.js +177 -0
  338. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.e2e.js.map +1 -0
  339. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +284 -0
  340. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -0
  341. package/dist/collection/components/ic-pagination/ic-pagination.css +486 -0
  342. package/dist/collection/components/ic-pagination/ic-pagination.js +498 -0
  343. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -0
  344. package/dist/collection/components/ic-pagination/ic-pagination.types.js +2 -0
  345. package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +1 -0
  346. package/dist/collection/components/ic-pagination/test/a11y/ic-pagination.test.a11y.js +11 -0
  347. package/dist/collection/components/ic-pagination/test/a11y/ic-pagination.test.a11y.js.map +1 -0
  348. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.e2e.js +128 -0
  349. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.e2e.js.map +1 -0
  350. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +335 -0
  351. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -0
  352. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +581 -0
  353. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +229 -0
  354. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -0
  355. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js +2 -0
  356. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js.map +1 -0
  357. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +536 -0
  358. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +433 -0
  359. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -0
  360. package/dist/collection/components/ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.js +13 -0
  361. package/dist/collection/components/ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.js.map +1 -0
  362. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.e2e.js +30 -0
  363. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.e2e.js.map +1 -0
  364. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +381 -0
  365. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +1 -0
  366. package/dist/collection/components/ic-radio-group/ic-radio-group.css +4 -4
  367. package/dist/collection/components/ic-radio-group/ic-radio-group.js +104 -80
  368. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  369. package/dist/collection/components/ic-radio-group/ic-radio-group.types.js +2 -0
  370. package/dist/collection/components/ic-radio-group/ic-radio-group.types.js.map +1 -0
  371. package/dist/collection/components/ic-radio-group/{ic-radio-group.test.a11y.js → test/a11y/ic-radio-group.test.a11y.js} +1 -1
  372. package/dist/collection/components/ic-radio-group/test/a11y/ic-radio-group.test.a11y.js.map +1 -0
  373. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +343 -0
  374. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +1 -0
  375. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +303 -0
  376. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -0
  377. package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -6
  378. package/dist/collection/components/ic-radio-option/ic-radio-option.js +111 -96
  379. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  380. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -10
  381. package/dist/collection/components/ic-search-bar/ic-search-bar.js +492 -299
  382. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  383. package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
  384. package/dist/collection/components/ic-search-bar/{ic-search-bar.test.a11y.js → test/a11y/ic-search-bar.test.a11y.js} +1 -1
  385. package/dist/collection/components/ic-search-bar/test/a11y/ic-search-bar.test.a11y.js.map +1 -0
  386. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +1099 -0
  387. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +1 -0
  388. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +584 -0
  389. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -0
  390. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +69 -0
  391. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +1 -0
  392. package/dist/collection/components/ic-select/ic-select.css +17 -17
  393. package/dist/collection/components/ic-select/ic-select.js +630 -369
  394. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  395. package/dist/collection/components/ic-select/{ic-select.test.a11y.js → test/a11y/ic-select.test.a11y.js} +1 -1
  396. package/dist/collection/components/ic-select/test/a11y/ic-select.test.a11y.js.map +1 -0
  397. package/dist/collection/components/ic-select/test/basic/ic-select.e2e.js +1768 -0
  398. package/dist/collection/components/ic-select/test/basic/ic-select.e2e.js.map +1 -0
  399. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +1296 -0
  400. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -0
  401. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +47 -44
  402. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +156 -127
  403. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  404. package/dist/collection/components/ic-side-navigation/{ic-side-navigation.test.a11y.js → test/a11y/ic-side-navigation.test.a11y.js} +1 -1
  405. package/dist/collection/components/ic-side-navigation/test/a11y/ic-side-navigation.test.a11y.js.map +1 -0
  406. package/dist/collection/components/ic-side-navigation/{ic-side-navigation-test-examples.js → test/basic/ic-side-navigation-test-examples.js} +90 -0
  407. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation-test-examples.js.map +1 -0
  408. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.e2e.js +412 -0
  409. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.e2e.js.map +1 -0
  410. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +470 -0
  411. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +1 -0
  412. package/dist/collection/components/ic-skeleton/ic-skeleton.js +22 -22
  413. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  414. package/dist/collection/components/ic-skeleton/{ic-skeleton.test.a11y.js → test/a11y/ic-skeleton.test.a11y.js} +1 -1
  415. package/dist/collection/components/ic-skeleton/test/a11y/ic-skeleton.test.a11y.js.map +1 -0
  416. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +89 -0
  417. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -0
  418. package/dist/collection/components/ic-status-tag/ic-status-tag.css +10 -13
  419. package/dist/collection/components/ic-status-tag/ic-status-tag.js +40 -40
  420. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  421. package/dist/collection/components/ic-status-tag/{ic-status-tag.test.a11y.js → test/a11y/ic-status-tag.test.a11y.js} +1 -1
  422. package/dist/collection/components/ic-status-tag/test/a11y/ic-status-tag.test.a11y.js.map +1 -0
  423. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +43 -0
  424. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -0
  425. package/dist/collection/components/ic-step/ic-step.css +6 -6
  426. package/dist/collection/components/ic-step/ic-step.js +127 -127
  427. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  428. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +176 -0
  429. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -0
  430. package/dist/collection/components/ic-stepper/ic-stepper.js +41 -41
  431. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  432. package/dist/collection/components/ic-stepper/{ic-stepper.test.a11y.js → test/a11y/ic-stepper.test.a11y.js} +1 -1
  433. package/dist/collection/components/ic-stepper/test/a11y/ic-stepper.test.a11y.js.map +1 -0
  434. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -0
  435. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +49 -0
  436. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +1 -0
  437. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +706 -0
  438. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -0
  439. package/dist/collection/components/ic-switch/ic-switch.css +4 -4
  440. package/dist/collection/components/ic-switch/ic-switch.js +74 -73
  441. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  442. package/dist/collection/components/ic-switch/{ic-switch.test.a11y.js → test/a11y/ic-switch.test.a11y.js} +1 -1
  443. package/dist/collection/components/ic-switch/test/a11y/ic-switch.test.a11y.js.map +1 -0
  444. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +104 -0
  445. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -0
  446. package/dist/collection/components/ic-tab/ic-tab.css +4 -4
  447. package/dist/collection/components/ic-tab/ic-tab.js +114 -31
  448. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  449. package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js +32 -0
  450. package/dist/collection/components/ic-tab/test/basic/ic-tab.e2e.js.map +1 -0
  451. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +159 -0
  452. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -0
  453. package/dist/collection/components/ic-tab-context/ic-tab-context.js +157 -77
  454. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  455. package/dist/collection/components/ic-tab-context/test/a11y/ic-tab-context.test.a11y.js.map +1 -0
  456. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js +317 -0
  457. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.e2e.js.map +1 -0
  458. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +390 -0
  459. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -0
  460. package/dist/collection/components/ic-tab-group/ic-tab-group.css +3 -3
  461. package/dist/collection/components/ic-tab-group/ic-tab-group.js +33 -29
  462. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  463. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +0 -4
  464. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +89 -34
  465. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  466. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +65 -0
  467. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
  468. package/dist/collection/components/ic-text-field/ic-text-field.css +1 -10
  469. package/dist/collection/components/ic-text-field/ic-text-field.js +456 -345
  470. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  471. package/dist/collection/components/ic-text-field/test/a11y/ic-text-field.test.a11y.js.map +1 -0
  472. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js +98 -0
  473. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.e2e.js.map +1 -0
  474. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +236 -0
  475. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -0
  476. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +310 -0
  477. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -0
  478. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  479. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +72 -0
  480. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +1 -0
  481. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +77 -0
  482. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -0
  483. package/dist/collection/components/ic-toast/ic-toast.css +5 -0
  484. package/dist/collection/components/ic-toast/ic-toast.js +111 -107
  485. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  486. package/dist/collection/components/ic-toast/{ic-toast.test.a11y.js → test/a11y/ic-toast.test.a11y.js} +1 -1
  487. package/dist/collection/components/ic-toast/test/a11y/ic-toast.test.a11y.js.map +1 -0
  488. package/dist/collection/components/ic-toast/test/basic/ic-toast.e2e.js +82 -0
  489. package/dist/collection/components/ic-toast/test/basic/ic-toast.e2e.js.map +1 -0
  490. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +278 -0
  491. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -0
  492. package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -12
  493. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  494. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +62 -0
  495. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -0
  496. package/dist/collection/components/ic-tooltip/ic-tooltip.css +22 -8
  497. package/dist/collection/components/ic-tooltip/ic-tooltip.js +116 -64
  498. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  499. package/dist/collection/components/ic-tooltip/{ic-tooltip.test.a11y.js → test/a11y/ic-tooltip.test.a11y.js} +1 -1
  500. package/dist/collection/components/ic-tooltip/test/a11y/ic-tooltip.test.a11y.js.map +1 -0
  501. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +115 -0
  502. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +1 -0
  503. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +128 -0
  504. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -0
  505. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +21 -15
  506. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +105 -83
  507. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  508. package/dist/collection/components/ic-top-navigation/{ic-top-navigation.test.a11y.js → test/a11y/ic-top-navigation.test.a11y.js} +8 -1
  509. package/dist/collection/components/ic-top-navigation/test/a11y/ic-top-navigation.test.a11y.js.map +1 -0
  510. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.e2e.js +61 -0
  511. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.e2e.js.map +1 -0
  512. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.mobile.e2e.js +242 -0
  513. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.mobile.e2e.js.map +1 -0
  514. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +299 -0
  515. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +1 -0
  516. package/dist/collection/components/ic-typography/ic-typography.css +58 -1
  517. package/dist/collection/components/ic-typography/ic-typography.js +140 -22
  518. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  519. package/dist/collection/components/ic-typography/{ic-typography.test.a11y.js → test/a11y/ic-typography.test.a11y.js} +1 -1
  520. package/dist/collection/components/ic-typography/test/a11y/ic-typography.test.a11y.js.map +1 -0
  521. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +39 -0
  522. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +1 -0
  523. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +296 -0
  524. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -0
  525. package/dist/collection/testspec.setup.js +21 -0
  526. package/dist/collection/testspec.setup.js.map +1 -1
  527. package/dist/collection/utils/helpers.js +24 -25
  528. package/dist/collection/utils/helpers.js.map +1 -1
  529. package/dist/collection/utils/types.js.map +1 -1
  530. package/dist/components/OpenInNew.js +5 -0
  531. package/dist/components/OpenInNew.js.map +1 -0
  532. package/dist/components/helpers.js +25 -26
  533. package/dist/components/helpers.js.map +1 -1
  534. package/dist/components/ic-alert.js +1 -113
  535. package/dist/components/ic-alert.js.map +1 -1
  536. package/dist/components/ic-alert2.js +117 -0
  537. package/dist/components/ic-alert2.js.map +1 -0
  538. package/dist/components/ic-back-to-top.js +7 -7
  539. package/dist/components/ic-back-to-top.js.map +1 -1
  540. package/dist/components/ic-breadcrumb-group.js +39 -33
  541. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  542. package/dist/components/ic-breadcrumb2.js +13 -12
  543. package/dist/components/ic-breadcrumb2.js.map +1 -1
  544. package/dist/components/ic-button2.js +99 -44
  545. package/dist/components/ic-button2.js.map +1 -1
  546. package/dist/components/ic-card.js +54 -53
  547. package/dist/components/ic-card.js.map +1 -1
  548. package/dist/components/ic-checkbox-group.js +28 -28
  549. package/dist/components/ic-checkbox-group.js.map +1 -1
  550. package/dist/components/ic-checkbox.js +47 -34
  551. package/dist/components/ic-checkbox.js.map +1 -1
  552. package/dist/components/ic-chip.js +22 -19
  553. package/dist/components/ic-chip.js.map +1 -1
  554. package/dist/components/ic-classification-banner.js +1 -1
  555. package/dist/components/ic-data-entity.js +2 -2
  556. package/dist/components/ic-data-entity.js.map +1 -1
  557. package/dist/components/ic-data-row.js +39 -25
  558. package/dist/components/ic-data-row.js.map +1 -1
  559. package/dist/components/ic-dialog.d.ts +11 -0
  560. package/dist/components/ic-dialog.js +356 -0
  561. package/dist/components/ic-dialog.js.map +1 -0
  562. package/dist/components/ic-divider2.js +3 -3
  563. package/dist/components/ic-divider2.js.map +1 -1
  564. package/dist/components/ic-footer-link-group.js +20 -20
  565. package/dist/components/ic-footer-link-group.js.map +1 -1
  566. package/dist/components/ic-footer-link.js +29 -18
  567. package/dist/components/ic-footer-link.js.map +1 -1
  568. package/dist/components/ic-footer.js +25 -23
  569. package/dist/components/ic-footer.js.map +1 -1
  570. package/dist/components/ic-hero.js +30 -28
  571. package/dist/components/ic-hero.js.map +1 -1
  572. package/dist/components/ic-horizontal-scroll2.js +46 -27
  573. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  574. package/dist/components/ic-input-component-container2.js +11 -11
  575. package/dist/components/ic-input-component-container2.js.map +1 -1
  576. package/dist/components/ic-input-container2.js +1 -1
  577. package/dist/components/ic-input-label2.js +11 -11
  578. package/dist/components/ic-input-label2.js.map +1 -1
  579. package/dist/components/ic-input-validation2.js +9 -9
  580. package/dist/components/ic-input-validation2.js.map +1 -1
  581. package/dist/components/ic-link2.js +24 -25
  582. package/dist/components/ic-link2.js.map +1 -1
  583. package/dist/components/ic-loading-indicator2.js +34 -26
  584. package/dist/components/ic-loading-indicator2.js.map +1 -1
  585. package/dist/components/ic-menu-group.d.ts +11 -0
  586. package/dist/components/ic-menu-group.js +46 -0
  587. package/dist/components/ic-menu-group.js.map +1 -0
  588. package/dist/components/ic-menu-item.d.ts +11 -0
  589. package/dist/components/ic-menu-item.js +8 -0
  590. package/dist/components/ic-menu-item.js.map +1 -0
  591. package/dist/components/ic-menu-item2.js +169 -0
  592. package/dist/components/ic-menu-item2.js.map +1 -0
  593. package/dist/components/ic-menu2.js +326 -169
  594. package/dist/components/ic-menu2.js.map +1 -1
  595. package/dist/components/ic-navigation-button.js +23 -23
  596. package/dist/components/ic-navigation-button.js.map +1 -1
  597. package/dist/components/ic-navigation-group.js +89 -60
  598. package/dist/components/ic-navigation-group.js.map +1 -1
  599. package/dist/components/ic-navigation-item.js +60 -48
  600. package/dist/components/ic-navigation-item.js.map +1 -1
  601. package/dist/components/ic-navigation-menu2.js +30 -36
  602. package/dist/components/ic-navigation-menu2.js.map +1 -1
  603. package/dist/components/ic-page-header.js +30 -33
  604. package/dist/components/ic-page-header.js.map +1 -1
  605. package/dist/components/ic-pagination-item.d.ts +11 -0
  606. package/dist/components/ic-pagination-item.js +8 -0
  607. package/dist/components/ic-pagination-item.js.map +1 -0
  608. package/dist/components/ic-pagination-item2.js +81 -0
  609. package/dist/components/ic-pagination-item2.js.map +1 -0
  610. package/dist/components/ic-pagination.d.ts +11 -0
  611. package/dist/components/ic-pagination.js +288 -0
  612. package/dist/components/ic-pagination.js.map +1 -0
  613. package/dist/components/ic-popover-menu.d.ts +11 -0
  614. package/dist/components/ic-popover-menu.js +290 -0
  615. package/dist/components/ic-popover-menu.js.map +1 -0
  616. package/dist/components/ic-radio-group.js +48 -30
  617. package/dist/components/ic-radio-group.js.map +1 -1
  618. package/dist/components/ic-radio-option.js +44 -43
  619. package/dist/components/ic-radio-option.js.map +1 -1
  620. package/dist/components/ic-search-bar.js +202 -122
  621. package/dist/components/ic-search-bar.js.map +1 -1
  622. package/dist/components/ic-section-container2.js +1 -1
  623. package/dist/components/ic-select.js +379 -212
  624. package/dist/components/ic-select.js.map +1 -1
  625. package/dist/components/ic-side-navigation.js +123 -94
  626. package/dist/components/ic-side-navigation.js.map +1 -1
  627. package/dist/components/ic-skeleton.js +6 -6
  628. package/dist/components/ic-skeleton.js.map +1 -1
  629. package/dist/components/ic-status-tag.js +9 -9
  630. package/dist/components/ic-status-tag.js.map +1 -1
  631. package/dist/components/ic-step.js +18 -18
  632. package/dist/components/ic-step.js.map +1 -1
  633. package/dist/components/ic-stepper.js +21 -21
  634. package/dist/components/ic-stepper.js.map +1 -1
  635. package/dist/components/ic-switch.js +24 -23
  636. package/dist/components/ic-switch.js.map +1 -1
  637. package/dist/components/ic-tab-context.js +73 -36
  638. package/dist/components/ic-tab-context.js.map +1 -1
  639. package/dist/components/ic-tab-group.js +7 -6
  640. package/dist/components/ic-tab-group.js.map +1 -1
  641. package/dist/components/ic-tab-panel.js +18 -7
  642. package/dist/components/ic-tab-panel.js.map +1 -1
  643. package/dist/components/ic-tab.js +33 -8
  644. package/dist/components/ic-tab.js.map +1 -1
  645. package/dist/components/ic-text-field2.js +132 -97
  646. package/dist/components/ic-text-field2.js.map +1 -1
  647. package/dist/components/ic-theme.js +2 -2
  648. package/dist/components/ic-theme.js.map +1 -1
  649. package/dist/components/ic-toast-region.js +13 -13
  650. package/dist/components/ic-toast-region.js.map +1 -1
  651. package/dist/components/ic-toast.js +65 -61
  652. package/dist/components/ic-toast.js.map +1 -1
  653. package/dist/components/ic-tooltip2.js +1854 -49
  654. package/dist/components/ic-tooltip2.js.map +1 -1
  655. package/dist/components/ic-top-navigation.js +59 -54
  656. package/dist/components/ic-top-navigation.js.map +1 -1
  657. package/dist/components/ic-typography2.js +101 -6
  658. package/dist/components/ic-typography2.js.map +1 -1
  659. package/dist/components/index.d.ts +9 -55
  660. package/dist/components/index.js +1 -53
  661. package/dist/components/index.js.map +1 -1
  662. package/dist/components/types.js.map +1 -1
  663. package/dist/core/core.css +47 -3
  664. package/dist/core/core.esm.js +1 -1
  665. package/dist/core/core.esm.js.map +1 -1
  666. package/dist/core/index.esm.js.map +1 -1
  667. package/dist/core/p-0330cb21.entry.js +2 -0
  668. package/dist/core/p-0330cb21.entry.js.map +1 -0
  669. package/dist/core/p-03d1a4a1.entry.js +2 -0
  670. package/dist/core/p-03d1a4a1.entry.js.map +1 -0
  671. package/dist/core/p-041604fc.entry.js +2 -0
  672. package/dist/core/p-041604fc.entry.js.map +1 -0
  673. package/dist/core/{p-24240e11.js → p-06321d19.js} +2 -2
  674. package/dist/core/p-06321d19.js.map +1 -0
  675. package/dist/core/p-1959ec8d.entry.js +2 -0
  676. package/dist/core/p-1959ec8d.entry.js.map +1 -0
  677. package/dist/core/p-1b9b8355.entry.js +2 -0
  678. package/dist/core/p-1b9b8355.entry.js.map +1 -0
  679. package/dist/core/p-26d5fd0f.entry.js +2 -0
  680. package/dist/core/p-26d5fd0f.entry.js.map +1 -0
  681. package/dist/core/p-27d42378.entry.js +2 -0
  682. package/dist/core/p-27d42378.entry.js.map +1 -0
  683. package/dist/core/p-2ae7687a.entry.js +2 -0
  684. package/dist/core/p-2ae7687a.entry.js.map +1 -0
  685. package/dist/core/p-332690f0.entry.js +2 -0
  686. package/dist/core/p-332690f0.entry.js.map +1 -0
  687. package/dist/core/p-39adc795.entry.js +2 -0
  688. package/dist/core/p-39adc795.entry.js.map +1 -0
  689. package/dist/core/{p-ad2477d8.entry.js → p-3adb1167.entry.js} +2 -2
  690. package/dist/core/p-3adb1167.entry.js.map +1 -0
  691. package/dist/core/p-429e4d24.entry.js +2 -0
  692. package/dist/core/p-429e4d24.entry.js.map +1 -0
  693. package/dist/core/{p-8ffa00c9.entry.js → p-441e7d98.entry.js} +2 -2
  694. package/dist/core/p-441e7d98.entry.js.map +1 -0
  695. package/dist/core/p-44512ebe.js.map +1 -1
  696. package/dist/core/p-48301eff.entry.js +2 -0
  697. package/dist/core/p-48301eff.entry.js.map +1 -0
  698. package/dist/core/p-5144e840.entry.js +2 -0
  699. package/dist/core/p-5144e840.entry.js.map +1 -0
  700. package/dist/core/p-5c846d0a.entry.js +2 -0
  701. package/dist/core/p-5c846d0a.entry.js.map +1 -0
  702. package/dist/core/p-5c9c940f.entry.js +2 -0
  703. package/dist/core/p-5c9c940f.entry.js.map +1 -0
  704. package/dist/core/p-5dd0b02e.js +2 -0
  705. package/dist/core/p-5dd0b02e.js.map +1 -0
  706. package/dist/core/{p-35a03442.entry.js → p-65750560.entry.js} +2 -2
  707. package/dist/core/p-65750560.entry.js.map +1 -0
  708. package/dist/core/p-6840589f.entry.js +2 -0
  709. package/dist/core/p-6840589f.entry.js.map +1 -0
  710. package/dist/core/p-69920d86.js +3 -0
  711. package/dist/core/p-69920d86.js.map +1 -0
  712. package/dist/core/p-6bad30aa.entry.js +2 -0
  713. package/dist/core/p-6bad30aa.entry.js.map +1 -0
  714. package/dist/core/p-6f57b13c.js.map +1 -1
  715. package/dist/core/p-7536dd31.entry.js +2 -0
  716. package/dist/core/p-7536dd31.entry.js.map +1 -0
  717. package/dist/core/p-7ae091ef.entry.js +2 -0
  718. package/dist/core/p-7ae091ef.entry.js.map +1 -0
  719. package/dist/core/p-7c0dcd00.js +2 -0
  720. package/dist/core/p-7c0dcd00.js.map +1 -0
  721. package/dist/core/p-7c46caf2.entry.js +2 -0
  722. package/dist/core/p-7c46caf2.entry.js.map +1 -0
  723. package/dist/core/{p-ba8d6c23.entry.js → p-83d5bcae.entry.js} +2 -2
  724. package/dist/core/p-83d5bcae.entry.js.map +1 -0
  725. package/dist/core/p-892d9d9f.entry.js +2 -0
  726. package/dist/core/p-892d9d9f.entry.js.map +1 -0
  727. package/dist/core/p-8991f656.entry.js +2 -0
  728. package/dist/core/p-8991f656.entry.js.map +1 -0
  729. package/dist/core/p-8c45ab61.entry.js +2 -0
  730. package/dist/core/p-8c45ab61.entry.js.map +1 -0
  731. package/dist/core/p-8c7f4343.js.map +1 -1
  732. package/dist/core/p-8ca80000.entry.js +2 -0
  733. package/dist/core/p-8ca80000.entry.js.map +1 -0
  734. package/dist/core/p-8d4f7027.js +2 -0
  735. package/dist/core/p-8d4f7027.js.map +1 -0
  736. package/dist/core/p-90d3a41b.entry.js +2 -0
  737. package/dist/core/p-90d3a41b.entry.js.map +1 -0
  738. package/dist/core/p-95992c98.entry.js +2 -0
  739. package/dist/core/p-95992c98.entry.js.map +1 -0
  740. package/dist/core/{p-41e239cb.entry.js → p-96b71172.entry.js} +2 -2
  741. package/dist/core/p-96b71172.entry.js.map +1 -0
  742. package/dist/core/{p-d2508752.entry.js → p-96bcd466.entry.js} +2 -2
  743. package/dist/core/p-96bcd466.entry.js.map +1 -0
  744. package/dist/core/p-9e551fe9.entry.js +2 -0
  745. package/dist/core/p-9e551fe9.entry.js.map +1 -0
  746. package/dist/core/{p-7fd50355.entry.js → p-a29fe0c6.entry.js} +2 -2
  747. package/dist/core/p-a29fe0c6.entry.js.map +1 -0
  748. package/dist/core/{p-c4a7c734.entry.js → p-a588886f.entry.js} +2 -2
  749. package/dist/core/p-a588886f.entry.js.map +1 -0
  750. package/dist/core/{p-284970bc.entry.js → p-a8b94619.entry.js} +2 -2
  751. package/dist/core/p-a8b94619.entry.js.map +1 -0
  752. package/dist/core/p-adceb0cf.entry.js +2 -0
  753. package/dist/core/p-adceb0cf.entry.js.map +1 -0
  754. package/dist/core/p-b698b8ad.entry.js +2 -0
  755. package/dist/core/p-b698b8ad.entry.js.map +1 -0
  756. package/dist/core/p-b6c538ea.entry.js +2 -0
  757. package/dist/core/p-b6c538ea.entry.js.map +1 -0
  758. package/dist/core/p-c012b867.entry.js +2 -0
  759. package/dist/core/p-c012b867.entry.js.map +1 -0
  760. package/dist/core/p-c5716cbc.entry.js +2 -0
  761. package/dist/core/p-c5716cbc.entry.js.map +1 -0
  762. package/dist/core/p-ca6d834e.entry.js +2 -0
  763. package/dist/core/p-ca6d834e.entry.js.map +1 -0
  764. package/dist/core/{p-7a9bc7f2.entry.js → p-cbbf4b05.entry.js} +2 -2
  765. package/dist/core/p-cbbf4b05.entry.js.map +1 -0
  766. package/dist/core/p-ce791694.entry.js +2 -0
  767. package/dist/core/p-ce791694.entry.js.map +1 -0
  768. package/dist/core/p-cef93d12.entry.js +2 -0
  769. package/dist/core/p-cef93d12.entry.js.map +1 -0
  770. package/dist/core/p-d2215b72.entry.js +2 -0
  771. package/dist/core/p-d2215b72.entry.js.map +1 -0
  772. package/dist/core/p-e0ee714a.entry.js +2 -0
  773. package/dist/core/p-e0ee714a.entry.js.map +1 -0
  774. package/dist/core/p-e6370b7e.entry.js +2 -0
  775. package/dist/core/p-e6370b7e.entry.js.map +1 -0
  776. package/dist/core/p-ee11e185.entry.js +2 -0
  777. package/dist/core/p-ee11e185.entry.js.map +1 -0
  778. package/dist/core/p-f24814b8.entry.js +2 -0
  779. package/dist/core/p-f24814b8.entry.js.map +1 -0
  780. package/dist/core/p-f665242d.entry.js +2 -0
  781. package/dist/core/p-f665242d.entry.js.map +1 -0
  782. package/dist/core/p-f7695299.entry.js +2 -0
  783. package/dist/core/p-f7695299.entry.js.map +1 -0
  784. package/dist/core/p-f923d11b.entry.js +2 -0
  785. package/dist/core/p-f923d11b.entry.js.map +1 -0
  786. package/dist/esm/OpenInNew-67a881e0.js +5 -0
  787. package/dist/esm/OpenInNew-67a881e0.js.map +1 -0
  788. package/dist/esm/chevron-icon-7927f709.js +8 -0
  789. package/dist/esm/chevron-icon-7927f709.js.map +1 -0
  790. package/dist/esm/core.js +7 -3
  791. package/dist/esm/core.js.map +1 -1
  792. package/dist/esm/{helpers-c332acf8.js → helpers-85903813.js} +26 -27
  793. package/dist/esm/helpers-85903813.js.map +1 -0
  794. package/dist/esm/ic-alert.entry.js +11 -11
  795. package/dist/esm/ic-alert.entry.js.map +1 -1
  796. package/dist/esm/ic-back-to-top.entry.js +5 -5
  797. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  798. package/dist/esm/ic-breadcrumb-group.entry.js +39 -33
  799. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  800. package/dist/esm/ic-breadcrumb.entry.js +14 -13
  801. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  802. package/dist/esm/ic-button_3.entry.js +163 -93
  803. package/dist/esm/ic-button_3.entry.js.map +1 -1
  804. package/dist/esm/ic-card.entry.js +46 -45
  805. package/dist/esm/ic-card.entry.js.map +1 -1
  806. package/dist/esm/ic-checkbox-group.entry.js +24 -23
  807. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  808. package/dist/esm/ic-checkbox.entry.js +41 -29
  809. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  810. package/dist/esm/ic-chip.entry.js +18 -15
  811. package/dist/esm/ic-chip.entry.js.map +1 -1
  812. package/dist/esm/ic-classification-banner.entry.js +1 -1
  813. package/dist/esm/ic-data-entity.entry.js +2 -2
  814. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  815. package/dist/esm/ic-data-row.entry.js +38 -24
  816. package/dist/esm/ic-data-row.entry.js.map +1 -1
  817. package/dist/esm/ic-dialog.entry.js +291 -0
  818. package/dist/esm/ic-dialog.entry.js.map +1 -0
  819. package/dist/esm/ic-divider.entry.js +3 -3
  820. package/dist/esm/ic-divider.entry.js.map +1 -1
  821. package/dist/esm/ic-footer-link-group.entry.js +18 -18
  822. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  823. package/dist/esm/ic-footer-link.entry.js +23 -17
  824. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  825. package/dist/esm/ic-footer.entry.js +23 -21
  826. package/dist/esm/ic-footer.entry.js.map +1 -1
  827. package/dist/esm/ic-hero.entry.js +23 -21
  828. package/dist/esm/ic-hero.entry.js.map +1 -1
  829. package/dist/esm/ic-horizontal-scroll.entry.js +45 -26
  830. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  831. package/dist/esm/ic-input-component-container_3.entry.js +299 -159
  832. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  833. package/dist/esm/ic-input-label_2.entry.js +11 -11
  834. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  835. package/dist/esm/ic-link.entry.js +22 -23
  836. package/dist/esm/ic-link.entry.js.map +1 -1
  837. package/dist/esm/ic-menu-group.entry.js +20 -0
  838. package/dist/esm/ic-menu-group.entry.js.map +1 -0
  839. package/dist/esm/ic-menu-item.entry.js +118 -0
  840. package/dist/esm/ic-menu-item.entry.js.map +1 -0
  841. package/dist/esm/ic-navigation-button.entry.js +18 -18
  842. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  843. package/dist/esm/ic-navigation-group.entry.js +87 -58
  844. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  845. package/dist/esm/ic-navigation-item.entry.js +49 -42
  846. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  847. package/dist/esm/ic-navigation-menu.entry.js +28 -34
  848. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  849. package/dist/esm/ic-page-header.entry.js +24 -27
  850. package/dist/esm/ic-page-header.entry.js.map +1 -1
  851. package/dist/esm/ic-pagination-item.entry.js +52 -0
  852. package/dist/esm/ic-pagination-item.entry.js.map +1 -0
  853. package/dist/esm/ic-pagination.entry.js +223 -0
  854. package/dist/esm/ic-pagination.entry.js.map +1 -0
  855. package/dist/esm/ic-popover-menu.entry.js +233 -0
  856. package/dist/esm/ic-popover-menu.entry.js.map +1 -0
  857. package/dist/esm/ic-radio-group.entry.js +43 -25
  858. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  859. package/dist/esm/ic-radio-option.entry.js +39 -38
  860. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  861. package/dist/esm/ic-search-bar.entry.js +178 -102
  862. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  863. package/dist/esm/ic-section-container.entry.js +1 -1
  864. package/dist/esm/ic-select.entry.js +349 -190
  865. package/dist/esm/ic-select.entry.js.map +1 -1
  866. package/dist/esm/ic-side-navigation.entry.js +116 -87
  867. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  868. package/dist/esm/ic-skeleton.entry.js +4 -4
  869. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  870. package/dist/esm/ic-status-tag.entry.js +6 -6
  871. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  872. package/dist/esm/ic-step.entry.js +10 -10
  873. package/dist/esm/ic-step.entry.js.map +1 -1
  874. package/dist/esm/ic-stepper.entry.js +15 -15
  875. package/dist/esm/ic-stepper.entry.js.map +1 -1
  876. package/dist/esm/ic-switch.entry.js +20 -19
  877. package/dist/esm/ic-switch.entry.js.map +1 -1
  878. package/dist/esm/ic-tab-context.entry.js +68 -32
  879. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  880. package/dist/esm/ic-tab-group.entry.js +5 -4
  881. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  882. package/dist/esm/ic-tab-panel.entry.js +15 -4
  883. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  884. package/dist/esm/ic-tab.entry.js +32 -7
  885. package/dist/esm/ic-tab.entry.js.map +1 -1
  886. package/dist/esm/ic-text-field.entry.js +102 -72
  887. package/dist/esm/ic-text-field.entry.js.map +1 -1
  888. package/dist/esm/ic-theme.entry.js +2 -2
  889. package/dist/esm/ic-theme.entry.js.map +1 -1
  890. package/dist/esm/ic-toast-region.entry.js +13 -13
  891. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  892. package/dist/esm/ic-toast.entry.js +60 -56
  893. package/dist/esm/ic-toast.entry.js.map +1 -1
  894. package/dist/esm/ic-top-navigation.entry.js +49 -45
  895. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  896. package/dist/esm/ic-typography.entry.js +97 -5
  897. package/dist/esm/ic-typography.entry.js.map +1 -1
  898. package/dist/esm/{index-90721b3c.js → index-fd30b77e.js} +255 -44
  899. package/dist/esm/index-fd30b77e.js.map +1 -0
  900. package/dist/esm/loader.js +4 -3
  901. package/dist/esm/loader.js.map +1 -1
  902. package/dist/esm/polyfills/css-shim.js +1 -1
  903. package/dist/{components/popper.js → esm/popper-15e448b4.js} +10 -17
  904. package/dist/esm/popper-15e448b4.js.map +1 -0
  905. package/dist/esm/types-dd515332.js.map +1 -1
  906. package/dist/types/components/ic-alert/ic-alert.d.ts +12 -12
  907. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +8 -8
  908. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +6 -6
  909. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.types.d.ts +1 -1
  910. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +16 -9
  911. package/dist/types/components/ic-button/ic-button.d.ts +62 -32
  912. package/dist/types/components/ic-button/ic-button.types.d.ts +4 -4
  913. package/dist/types/components/ic-card/ic-card.d.ts +32 -32
  914. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +29 -23
  915. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +14 -15
  916. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.types.d.ts +5 -0
  917. package/dist/types/components/ic-chip/ic-chip.d.ts +16 -15
  918. package/dist/types/components/ic-chip/ic-chip.types.d.ts +2 -2
  919. package/dist/types/components/ic-classification-banner/ic-classification-banner.types.d.ts +1 -1
  920. package/dist/types/components/ic-data-row/ic-data-row.d.ts +17 -11
  921. package/dist/types/components/ic-dialog/ic-dialog.d.ts +123 -0
  922. package/dist/types/components/ic-footer/ic-footer.d.ts +20 -20
  923. package/dist/types/components/ic-footer/ic-footer.types.d.ts +1 -1
  924. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +26 -6
  925. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +8 -8
  926. package/dist/types/components/ic-hero/ic-hero.d.ts +24 -24
  927. package/dist/types/components/ic-hero/ic-hero.types.d.ts +1 -1
  928. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +15 -14
  929. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +15 -15
  930. package/dist/types/components/ic-input-label/ic-input-label.d.ts +14 -14
  931. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +8 -8
  932. package/dist/types/components/ic-input-validation/ic-input-validation.types.d.ts +1 -1
  933. package/dist/types/components/ic-link/ic-link.d.ts +9 -9
  934. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +38 -36
  935. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +2 -2
  936. package/dist/types/components/ic-menu/ic-menu.d.ts +89 -50
  937. package/dist/types/components/ic-menu-group/ic-menu-group.d.ts +8 -0
  938. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +74 -0
  939. package/dist/types/components/ic-menu-item/ic-menu-item.types.d.ts +1 -0
  940. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +21 -21
  941. package/dist/types/components/ic-navigation-button/ic-navigation-button.types.d.ts +1 -1
  942. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +21 -18
  943. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +47 -27
  944. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +14 -14
  945. package/dist/types/components/ic-page-header/ic-page-header.d.ts +19 -19
  946. package/dist/types/components/ic-pagination/ic-pagination.d.ts +82 -0
  947. package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +4 -0
  948. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +47 -0
  949. package/dist/types/components/ic-pagination-item/ic-pagination-item.types.d.ts +1 -0
  950. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +59 -0
  951. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +22 -23
  952. package/dist/types/components/ic-radio-group/ic-radio-group.types.d.ts +7 -0
  953. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +32 -29
  954. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +120 -87
  955. package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +2 -1
  956. package/dist/types/components/ic-select/ic-select.d.ts +116 -78
  957. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +30 -24
  958. package/dist/types/components/ic-side-navigation/{ic-side-navigation-test-examples.d.ts → test/basic/ic-side-navigation-test-examples.d.ts} +1 -0
  959. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +8 -8
  960. package/dist/types/components/ic-skeleton/ic-skeleton.types.d.ts +1 -1
  961. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -8
  962. package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +2 -2
  963. package/dist/types/components/ic-step/ic-step.d.ts +24 -24
  964. package/dist/types/components/ic-step/ic-step.types.d.ts +3 -3
  965. package/dist/types/components/ic-stepper/ic-stepper.d.ts +17 -17
  966. package/dist/types/components/ic-stepper/ic-stepper.types.d.ts +1 -1
  967. package/dist/types/components/ic-switch/ic-switch.d.ts +23 -23
  968. package/dist/types/components/ic-tab/ic-tab.d.ts +25 -8
  969. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +29 -20
  970. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +6 -5
  971. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +27 -7
  972. package/dist/types/components/ic-text-field/ic-text-field.d.ts +110 -91
  973. package/dist/types/components/ic-text-field/ic-text-field.types.d.ts +3 -3
  974. package/dist/types/components/ic-theme/ic-theme.d.ts +1 -1
  975. package/dist/types/components/ic-toast/ic-toast.d.ts +26 -26
  976. package/dist/types/components/ic-toast/ic-toast.types.d.ts +1 -1
  977. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +3 -3
  978. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +22 -15
  979. package/dist/types/components/ic-tooltip/ic-tooltip.types.d.ts +1 -1
  980. package/dist/types/components/ic-tooltip/test/a11y/ic-tooltip.test.a11y.d.ts +1 -0
  981. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +36 -32
  982. package/dist/types/components/ic-top-navigation/test/a11y/ic-top-navigation.test.a11y.d.ts +1 -0
  983. package/dist/types/components/ic-typography/ic-typography.d.ts +31 -4
  984. package/dist/types/components/ic-typography/test/a11y/ic-typography.test.a11y.d.ts +1 -0
  985. package/dist/types/components.d.ts +826 -29
  986. package/dist/types/stencil-public-runtime.d.ts +74 -15
  987. package/dist/types/testspec.setup.d.ts +11 -0
  988. package/dist/types/utils/helpers.d.ts +1 -0
  989. package/dist/types/utils/types.d.ts +25 -22
  990. package/hydrate/index.d.ts +17 -16
  991. package/hydrate/index.js +3822 -1955
  992. package/loader/index.d.ts +9 -0
  993. package/package.json +7 -5
  994. package/dist/cjs/chevron-icon-2645d6b0.js +0 -10
  995. package/dist/cjs/chevron-icon-2645d6b0.js.map +0 -1
  996. package/dist/cjs/helpers-6eb26e7a.js.map +0 -1
  997. package/dist/cjs/index-f79a4e53.js.map +0 -1
  998. package/dist/cjs/popper-11d5f714.js.map +0 -1
  999. package/dist/collection/components/ic-alert/ic-alert.test.a11y.js.map +0 -1
  1000. package/dist/collection/components/ic-back-to-top/ic-back-to-top.test.a11y.js.map +0 -1
  1001. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group-test-examples.js.map +0 -1
  1002. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.test.a11y.js.map +0 -1
  1003. package/dist/collection/components/ic-button/ic-button.test.a11y.js.map +0 -1
  1004. package/dist/collection/components/ic-card/ic-card.test.a11y.js.map +0 -1
  1005. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js.map +0 -1
  1006. package/dist/collection/components/ic-chip/ic-chip.test.a11y.js.map +0 -1
  1007. package/dist/collection/components/ic-classification-banner/ic-classification-banner.test.a11y.js.map +0 -1
  1008. package/dist/collection/components/ic-data-entity/ic-data-entity.test.a11y.js.map +0 -1
  1009. package/dist/collection/components/ic-data-row/ic-data-row.test.a11y.js.map +0 -1
  1010. package/dist/collection/components/ic-footer/ic-footer.test.a11y.js.map +0 -1
  1011. package/dist/collection/components/ic-footer-link/ic-footer-link.test.a11y.js.map +0 -1
  1012. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js.map +0 -1
  1013. package/dist/collection/components/ic-hero/ic-hero.test.a11y.js.map +0 -1
  1014. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.js.map +0 -1
  1015. package/dist/collection/components/ic-link/ic-link.test.a11y.js.map +0 -1
  1016. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.test.a11y.js.map +0 -1
  1017. package/dist/collection/components/ic-navigation-group/ic-navigation-group.test.a11y.js.map +0 -1
  1018. package/dist/collection/components/ic-navigation-item/ic-navigation-item.test.a11y.js.map +0 -1
  1019. package/dist/collection/components/ic-page-header/ic-page-header.test.a11y.js.map +0 -1
  1020. package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js.map +0 -1
  1021. package/dist/collection/components/ic-search-bar/ic-search-bar.test.a11y.js.map +0 -1
  1022. package/dist/collection/components/ic-select/ic-select.test.a11y.js.map +0 -1
  1023. package/dist/collection/components/ic-side-navigation/ic-side-navigation-test-examples.js.map +0 -1
  1024. package/dist/collection/components/ic-side-navigation/ic-side-navigation.test.a11y.js.map +0 -1
  1025. package/dist/collection/components/ic-skeleton/ic-skeleton.test.a11y.js.map +0 -1
  1026. package/dist/collection/components/ic-status-tag/ic-status-tag.test.a11y.js.map +0 -1
  1027. package/dist/collection/components/ic-stepper/ic-stepper-test-examples.js.map +0 -1
  1028. package/dist/collection/components/ic-stepper/ic-stepper.test.a11y.js.map +0 -1
  1029. package/dist/collection/components/ic-switch/ic-switch.test.a11y.js.map +0 -1
  1030. package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js.map +0 -1
  1031. package/dist/collection/components/ic-text-field/ic-text-field.test.a11y.js.map +0 -1
  1032. package/dist/collection/components/ic-toast/ic-toast.test.a11y.js.map +0 -1
  1033. package/dist/collection/components/ic-tooltip/ic-tooltip.test.a11y.js.map +0 -1
  1034. package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js.map +0 -1
  1035. package/dist/collection/components/ic-typography/ic-typography.test.a11y.js.map +0 -1
  1036. package/dist/components/popper.js.map +0 -1
  1037. package/dist/core/p-1724000c.js +0 -2
  1038. package/dist/core/p-1724000c.js.map +0 -1
  1039. package/dist/core/p-17f91c94.entry.js +0 -2
  1040. package/dist/core/p-17f91c94.entry.js.map +0 -1
  1041. package/dist/core/p-18ae4b6d.entry.js +0 -2
  1042. package/dist/core/p-18ae4b6d.entry.js.map +0 -1
  1043. package/dist/core/p-18bf3cb0.entry.js +0 -2
  1044. package/dist/core/p-18bf3cb0.entry.js.map +0 -1
  1045. package/dist/core/p-24240e11.js.map +0 -1
  1046. package/dist/core/p-2642f880.entry.js +0 -2
  1047. package/dist/core/p-2642f880.entry.js.map +0 -1
  1048. package/dist/core/p-284970bc.entry.js.map +0 -1
  1049. package/dist/core/p-31a595c1.entry.js +0 -2
  1050. package/dist/core/p-31a595c1.entry.js.map +0 -1
  1051. package/dist/core/p-35a03442.entry.js.map +0 -1
  1052. package/dist/core/p-360adc51.entry.js +0 -2
  1053. package/dist/core/p-360adc51.entry.js.map +0 -1
  1054. package/dist/core/p-3dda76db.entry.js +0 -2
  1055. package/dist/core/p-3dda76db.entry.js.map +0 -1
  1056. package/dist/core/p-41e239cb.entry.js.map +0 -1
  1057. package/dist/core/p-44c9612c.entry.js +0 -2
  1058. package/dist/core/p-44c9612c.entry.js.map +0 -1
  1059. package/dist/core/p-521be4e2.entry.js +0 -2
  1060. package/dist/core/p-521be4e2.entry.js.map +0 -1
  1061. package/dist/core/p-5450cebf.js +0 -3
  1062. package/dist/core/p-5450cebf.js.map +0 -1
  1063. package/dist/core/p-55512a85.entry.js +0 -2
  1064. package/dist/core/p-55512a85.entry.js.map +0 -1
  1065. package/dist/core/p-560c06af.entry.js +0 -2
  1066. package/dist/core/p-560c06af.entry.js.map +0 -1
  1067. package/dist/core/p-57f2c81c.entry.js +0 -2
  1068. package/dist/core/p-57f2c81c.entry.js.map +0 -1
  1069. package/dist/core/p-5b083ce5.entry.js +0 -2
  1070. package/dist/core/p-5b083ce5.entry.js.map +0 -1
  1071. package/dist/core/p-62b3516e.entry.js +0 -2
  1072. package/dist/core/p-62b3516e.entry.js.map +0 -1
  1073. package/dist/core/p-691ea0f2.entry.js +0 -2
  1074. package/dist/core/p-691ea0f2.entry.js.map +0 -1
  1075. package/dist/core/p-7818d958.entry.js +0 -2
  1076. package/dist/core/p-7818d958.entry.js.map +0 -1
  1077. package/dist/core/p-7a0bf893.entry.js +0 -2
  1078. package/dist/core/p-7a0bf893.entry.js.map +0 -1
  1079. package/dist/core/p-7a9bc7f2.entry.js.map +0 -1
  1080. package/dist/core/p-7fd50355.entry.js.map +0 -1
  1081. package/dist/core/p-897e967a.entry.js +0 -2
  1082. package/dist/core/p-897e967a.entry.js.map +0 -1
  1083. package/dist/core/p-8f1176c6.entry.js +0 -2
  1084. package/dist/core/p-8f1176c6.entry.js.map +0 -1
  1085. package/dist/core/p-8ffa00c9.entry.js.map +0 -1
  1086. package/dist/core/p-91a8db51.entry.js +0 -2
  1087. package/dist/core/p-91a8db51.entry.js.map +0 -1
  1088. package/dist/core/p-a09d853e.entry.js +0 -2
  1089. package/dist/core/p-a09d853e.entry.js.map +0 -1
  1090. package/dist/core/p-a667e329.entry.js +0 -2
  1091. package/dist/core/p-a667e329.entry.js.map +0 -1
  1092. package/dist/core/p-ad2477d8.entry.js.map +0 -1
  1093. package/dist/core/p-b35ae170.entry.js +0 -2
  1094. package/dist/core/p-b35ae170.entry.js.map +0 -1
  1095. package/dist/core/p-b40bd77c.entry.js +0 -2
  1096. package/dist/core/p-b40bd77c.entry.js.map +0 -1
  1097. package/dist/core/p-b4234318.entry.js +0 -2
  1098. package/dist/core/p-b4234318.entry.js.map +0 -1
  1099. package/dist/core/p-ba8d6c23.entry.js.map +0 -1
  1100. package/dist/core/p-bd819f68.entry.js +0 -2
  1101. package/dist/core/p-bd819f68.entry.js.map +0 -1
  1102. package/dist/core/p-c4a7c734.entry.js.map +0 -1
  1103. package/dist/core/p-c72e4b75.entry.js +0 -2
  1104. package/dist/core/p-c72e4b75.entry.js.map +0 -1
  1105. package/dist/core/p-c7b86643.entry.js +0 -2
  1106. package/dist/core/p-c7b86643.entry.js.map +0 -1
  1107. package/dist/core/p-c8f07be6.entry.js +0 -2
  1108. package/dist/core/p-c8f07be6.entry.js.map +0 -1
  1109. package/dist/core/p-c9068822.entry.js +0 -2
  1110. package/dist/core/p-c9068822.entry.js.map +0 -1
  1111. package/dist/core/p-cccbf2bf.entry.js +0 -2
  1112. package/dist/core/p-cccbf2bf.entry.js.map +0 -1
  1113. package/dist/core/p-d2508752.entry.js.map +0 -1
  1114. package/dist/core/p-d7bbace4.entry.js +0 -2
  1115. package/dist/core/p-d7bbace4.entry.js.map +0 -1
  1116. package/dist/core/p-d86b0d0e.entry.js +0 -2
  1117. package/dist/core/p-d86b0d0e.entry.js.map +0 -1
  1118. package/dist/core/p-e0d88c31.entry.js +0 -2
  1119. package/dist/core/p-e0d88c31.entry.js.map +0 -1
  1120. package/dist/core/p-e9202767.entry.js +0 -2
  1121. package/dist/core/p-e9202767.entry.js.map +0 -1
  1122. package/dist/core/p-eba373bf.entry.js +0 -2
  1123. package/dist/core/p-eba373bf.entry.js.map +0 -1
  1124. package/dist/core/p-ec26fc38.js +0 -2
  1125. package/dist/core/p-ec26fc38.js.map +0 -1
  1126. package/dist/core/p-ed6cf9b9.entry.js +0 -2
  1127. package/dist/core/p-ed6cf9b9.entry.js.map +0 -1
  1128. package/dist/esm/chevron-icon-98c98242.js +0 -8
  1129. package/dist/esm/chevron-icon-98c98242.js.map +0 -1
  1130. package/dist/esm/helpers-c332acf8.js.map +0 -1
  1131. package/dist/esm/index-90721b3c.js.map +0 -1
  1132. package/dist/esm/popper-f860750c.js +0 -1801
  1133. package/dist/esm/popper-f860750c.js.map +0 -1
  1134. /package/dist/collection/{components/ic-link/assets → assets}/OpenInNew.svg +0 -0
  1135. /package/dist/collection/components/ic-back-to-top/{ic-back-to-top.test.a11y.js → test/a11y/ic-back-to-top.test.a11y.js} +0 -0
  1136. /package/dist/collection/components/ic-breadcrumb-group/{ic-breadcrumb-group-test-examples.js → test/basic/ic-breadcrumb-group-test-examples.js} +0 -0
  1137. /package/dist/collection/components/ic-stepper/{ic-stepper-test-examples.js → test/basic/ic-stepper-test-examples.js} +0 -0
  1138. /package/dist/collection/components/ic-tab-context/{ic-tab-context.test.a11y.js → test/a11y/ic-tab-context.test.a11y.js} +0 -0
  1139. /package/dist/collection/components/ic-text-field/{ic-text-field.test.a11y.js → test/a11y/ic-text-field.test.a11y.js} +0 -0
  1140. /package/dist/types/components/ic-alert/{ic-alert.test.a11y.d.ts → test/a11y/ic-alert.test.a11y.d.ts} +0 -0
  1141. /package/dist/types/components/ic-back-to-top/{ic-back-to-top.test.a11y.d.ts → test/a11y/ic-back-to-top.test.a11y.d.ts} +0 -0
  1142. /package/dist/types/components/ic-breadcrumb-group/{ic-breadcrumb-group.test.a11y.d.ts → test/a11y/ic-breadcrumb-group.test.a11y.d.ts} +0 -0
  1143. /package/dist/types/components/ic-breadcrumb-group/{ic-breadcrumb-group-test-examples.d.ts → test/basic/ic-breadcrumb-group-test-examples.d.ts} +0 -0
  1144. /package/dist/types/components/ic-button/{ic-button.test.a11y.d.ts → test/a11y/ic-button.test.a11y.d.ts} +0 -0
  1145. /package/dist/types/components/ic-card/{ic-card.test.a11y.d.ts → test/a11y/ic-card.test.a11y.d.ts} +0 -0
  1146. /package/dist/types/components/ic-checkbox-group/{ic-checkbox-group.test.a11y.d.ts → test/a11y/ic-checkbox-group.test.a11y.d.ts} +0 -0
  1147. /package/dist/types/components/ic-chip/{ic-chip.test.a11y.d.ts → test/a11y/ic-chip.test.a11y.d.ts} +0 -0
  1148. /package/dist/types/components/ic-classification-banner/{ic-classification-banner.test.a11y.d.ts → test/a11y/ic-classification-banner.test.a11y.d.ts} +0 -0
  1149. /package/dist/types/components/ic-data-entity/{ic-data-entity.test.a11y.d.ts → test/a11y/ic-data-entity.test.a11y.d.ts} +0 -0
  1150. /package/dist/types/components/ic-data-row/{ic-data-row.test.a11y.d.ts → test/a11y/ic-data-row.test.a11y.d.ts} +0 -0
  1151. /package/dist/types/components/{ic-footer-link-group/ic-footer-link-group.test.a11y.d.ts → ic-dialog/test/a11y/ic-dialog.test.a11y.d.ts} +0 -0
  1152. /package/dist/types/components/{ic-hero/ic-hero.test.a11y.d.ts → ic-footer/test/a11y/ic-footer.test.a11y.d.ts} +0 -0
  1153. /package/dist/types/components/{ic-footer/ic-footer.test.a11y.d.ts → ic-footer-link/test/a11y/ic-footer-link.test.a11y.d.ts} +0 -0
  1154. /package/dist/types/components/{ic-footer-link/ic-footer-link.test.a11y.d.ts → ic-footer-link-group/test/a11y/ic-footer-link-group.test.a11y.d.ts} +0 -0
  1155. /package/dist/types/components/{ic-horizontal-scroll/ic-horizontal-scroll.test.a11y.d.ts → ic-hero/test/a11y/ic-hero.test.a11y.d.ts} +0 -0
  1156. /package/dist/types/components/{ic-link/ic-link.test.a11y.d.ts → ic-horizontal-scroll/test/a11y/ic-horizontal-scroll.test.a11y.d.ts} +0 -0
  1157. /package/dist/types/components/{ic-loading-indicator/ic-loading-indicator.test.a11y.d.ts → ic-link/test/a11y/ic-link.test.a11y.d.ts} +0 -0
  1158. /package/dist/types/components/{ic-navigation-group/ic-navigation-group.test.a11y.d.ts → ic-loading-indicator/test/a11y/ic-loading-indicator.test.a11y.d.ts} +0 -0
  1159. /package/dist/types/components/{ic-navigation-item/ic-navigation-item.test.a11y.d.ts → ic-navigation-group/test/a11y/ic-navigation-group.test.a11y.d.ts} +0 -0
  1160. /package/dist/types/components/{ic-page-header/ic-page-header.test.a11y.d.ts → ic-navigation-item/test/a11y/ic-navigation-item.test.a11y.d.ts} +0 -0
  1161. /package/dist/types/components/{ic-radio-group/ic-radio-group.test.a11y.d.ts → ic-page-header/test/a11y/ic-page-header.test.a11y.d.ts} +0 -0
  1162. /package/dist/types/components/{ic-search-bar/ic-search-bar.test.a11y.d.ts → ic-pagination/test/a11y/ic-pagination.test.a11y.d.ts} +0 -0
  1163. /package/dist/types/components/{ic-select/ic-select.test.a11y.d.ts → ic-popover-menu/test/a11y/ic-popover-menu.test.a11y.d.ts} +0 -0
  1164. /package/dist/types/components/{ic-side-navigation/ic-side-navigation.test.a11y.d.ts → ic-radio-group/test/a11y/ic-radio-group.test.a11y.d.ts} +0 -0
  1165. /package/dist/types/components/{ic-skeleton/ic-skeleton.test.a11y.d.ts → ic-search-bar/test/a11y/ic-search-bar.test.a11y.d.ts} +0 -0
  1166. /package/dist/types/components/{ic-status-tag/ic-status-tag.test.a11y.d.ts → ic-select/test/a11y/ic-select.test.a11y.d.ts} +0 -0
  1167. /package/dist/types/components/{ic-stepper/ic-stepper.test.a11y.d.ts → ic-side-navigation/test/a11y/ic-side-navigation.test.a11y.d.ts} +0 -0
  1168. /package/dist/types/components/{ic-switch/ic-switch.test.a11y.d.ts → ic-skeleton/test/a11y/ic-skeleton.test.a11y.d.ts} +0 -0
  1169. /package/dist/types/components/{ic-tab-context/ic-tab-context.test.a11y.d.ts → ic-status-tag/test/a11y/ic-status-tag.test.a11y.d.ts} +0 -0
  1170. /package/dist/types/components/{ic-text-field/ic-text-field.test.a11y.d.ts → ic-stepper/test/a11y/ic-stepper.test.a11y.d.ts} +0 -0
  1171. /package/dist/types/components/ic-stepper/{ic-stepper-test-examples.d.ts → test/basic/ic-stepper-test-examples.d.ts} +0 -0
  1172. /package/dist/types/components/{ic-toast/ic-toast.test.a11y.d.ts → ic-switch/test/a11y/ic-switch.test.a11y.d.ts} +0 -0
  1173. /package/dist/types/components/{ic-tooltip/ic-tooltip.test.a11y.d.ts → ic-tab-context/test/a11y/ic-tab-context.test.a11y.d.ts} +0 -0
  1174. /package/dist/types/components/{ic-top-navigation/ic-top-navigation.test.a11y.d.ts → ic-text-field/test/a11y/ic-text-field.test.a11y.d.ts} +0 -0
  1175. /package/dist/types/components/{ic-typography/ic-typography.test.a11y.d.ts → ic-toast/test/a11y/ic-toast.test.a11y.d.ts} +0 -0
@@ -0,0 +1,1296 @@
1
+ import { h } from "@stencil/core";
2
+ import { newSpecPage } from "@stencil/core/testing";
3
+ import { Menu } from "../../../ic-menu/ic-menu";
4
+ import { Select } from "../../ic-select";
5
+ import * as helpers from "../../../../utils/helpers";
6
+ import { Button } from "../../../ic-button/ic-button";
7
+ import { waitForTimeout } from "../../../../testspec.setup";
8
+ import { InputComponentContainer } from "../../../ic-input-component-container/ic-input-component-container";
9
+ beforeAll(() => {
10
+ jest.spyOn(console, "warn").mockImplementation(jest.fn());
11
+ });
12
+ const label1 = "Test label 1";
13
+ const value1 = "Test value 1";
14
+ const label2 = "Test label 2";
15
+ const value2 = "Test value 2";
16
+ const label3 = "Test label 3";
17
+ const value3 = "Test value 3";
18
+ const testValue = "Test value";
19
+ const menuUl = "ic-menu ul";
20
+ const noResults = "No results found";
21
+ const clearButtonId = "#clear-button";
22
+ const loadingLabel = "Loading...";
23
+ const loadingErrorLabel = "Loading Error";
24
+ const retryButtonId = "#retry-button";
25
+ const menuOptions = [
26
+ { label: label1, value: value1 },
27
+ { label: label2, value: value2 },
28
+ { label: label3, value: value3 },
29
+ ];
30
+ const menuOptionsWithDescriptions = [
31
+ {
32
+ label: "Cappuccino",
33
+ value: "Cap",
34
+ description: "Coffee frothed up with pressurised steam",
35
+ },
36
+ {
37
+ label: "Latte",
38
+ value: "Lat",
39
+ description: "A milkier coffee than a cappuccino",
40
+ },
41
+ {
42
+ label: "Americano",
43
+ value: "Ame",
44
+ description: "Espresso coffee diluted with hot water",
45
+ },
46
+ ];
47
+ const menuOptionsNoValues = [
48
+ { label: label1 },
49
+ { label: label2 },
50
+ { label: label3 },
51
+ ];
52
+ const menuOptionsWithGroups = [
53
+ {
54
+ label: "Fancy",
55
+ children: [
56
+ { label: "Cappuccino", value: "Cap" },
57
+ { label: "Flat white", value: "Flat" },
58
+ ],
59
+ },
60
+ {
61
+ label: "Boring",
62
+ children: [
63
+ { label: "Filter", value: "Fil" },
64
+ { label: "Latte", value: "Lat" },
65
+ ],
66
+ },
67
+ ];
68
+ const getTestSelect = (props) => `<ic-select label="IC Select Test" ${props}></ic-select>
69
+ <script>
70
+ var select = document.querySelector('ic-select');
71
+ var option = 'Test value 1';
72
+ select.options = ${menuOptions}
73
+ select.addEventListener('icChange', function (event) {
74
+ option = event.detail.value;
75
+ select.value = option;
76
+ });
77
+ </script>`;
78
+ describe("ic-select", () => {
79
+ it("should not render a label when the 'hide-label' prop is supplied", async () => {
80
+ const page = await newSpecPage({
81
+ components: [Select, Menu, InputComponentContainer],
82
+ html: getTestSelect("hide-label"),
83
+ });
84
+ expect(page.root).toMatchSnapshot("hide-label-set");
85
+ });
86
+ it("should render readonly", async () => {
87
+ const page = await newSpecPage({
88
+ components: [Select, Menu, InputComponentContainer],
89
+ html: getTestSelect('readonly="true"'),
90
+ });
91
+ expect(page.root).toMatchSnapshot("readonly");
92
+ });
93
+ it("should have correct validation status", async () => {
94
+ const page = await newSpecPage({
95
+ components: [Select, Menu, InputComponentContainer],
96
+ html: getTestSelect('validation-status="error"'),
97
+ });
98
+ expect(page.root).toMatchSnapshot("with-validation-status-error");
99
+ });
100
+ it("should not have a validation status if disabled", async () => {
101
+ const page = await newSpecPage({
102
+ components: [Select, Menu, InputComponentContainer],
103
+ html: getTestSelect('disabled validation-status="error"'),
104
+ });
105
+ expect(page.root).toMatchSnapshot("no-validation-status-if-disabled");
106
+ });
107
+ it("should render correct validation text", async () => {
108
+ const page = await newSpecPage({
109
+ components: [Select, Menu, InputComponentContainer],
110
+ html: getTestSelect('validation-status="error" validation-text="Test validation text"'),
111
+ });
112
+ expect(page.root).toMatchSnapshot("with-validation-text");
113
+ });
114
+ it("should not render validation text if no validation status has been supplied", async () => {
115
+ const page = await newSpecPage({
116
+ components: [Select, Menu, InputComponentContainer],
117
+ html: getTestSelect('validation-text="Test validation text"'),
118
+ });
119
+ expect(page.root).toMatchSnapshot("no-validation-text-if-no-status");
120
+ });
121
+ it("should test with clear button", async () => {
122
+ const eventSpy = jest.fn();
123
+ const page = await newSpecPage({
124
+ components: [Select, Menu, InputComponentContainer, Button],
125
+ html: `<ic-select label="IC Select Test" show-clear-button="true" value="test-value"></ic-select>`,
126
+ });
127
+ page.root.addEventListener("icClear", eventSpy);
128
+ page.root.options = menuOptions;
129
+ await page.waitForChanges();
130
+ expect(page.root).toMatchSnapshot("with-clear-button");
131
+ page.root.setFocus();
132
+ await page.waitForChanges();
133
+ const clearButton = page.root.shadowRoot.querySelector(clearButtonId);
134
+ clearButton.focus();
135
+ await page.waitForChanges();
136
+ expect(page.rootInstance.clearButtonFocused).toBe(true);
137
+ clearButton.blur();
138
+ await page.waitForChanges();
139
+ expect(page.rootInstance.clearButtonFocused).toBe(false);
140
+ clearButton.click();
141
+ await page.waitForChanges();
142
+ expect(eventSpy).toHaveBeenCalled;
143
+ });
144
+ it("should test menu handleKeyboardOpen method - arrow down (custom select)", async () => {
145
+ const page = await newSpecPage({
146
+ components: [Select, Menu, InputComponentContainer],
147
+ html: `<ic-select label="IC Select Test"></ic-select>`,
148
+ });
149
+ page.root.options = menuOptions;
150
+ await page.waitForChanges();
151
+ const menu = page.root.shadowRoot.querySelector("ic-menu");
152
+ const KeyEvent = {
153
+ key: "ArrowDown",
154
+ preventDefault: () => null,
155
+ };
156
+ await menu.handleKeyboardOpen(KeyEvent);
157
+ await page.waitForChanges();
158
+ expect(page.rootInstance.open).toBeTruthy;
159
+ expect(page.rootInstance.value).toBe(value1);
160
+ await menu.handleKeyboardOpen(KeyEvent);
161
+ await page.waitForChanges();
162
+ await menu.handleKeyboardOpen(KeyEvent);
163
+ await page.waitForChanges();
164
+ await menu.handleKeyboardOpen(KeyEvent);
165
+ await page.waitForChanges();
166
+ expect(page.rootInstance.value).toBe(value1);
167
+ });
168
+ it("should test menu handleKeyboardOpen method - arrow up (custom select)", async () => {
169
+ const page = await newSpecPage({
170
+ components: [Select, Menu, InputComponentContainer],
171
+ html: `<ic-select label="IC Select Test"></ic-select>`,
172
+ });
173
+ page.root.options = menuOptions;
174
+ await page.waitForChanges();
175
+ const menu = page.root.shadowRoot.querySelector("ic-menu");
176
+ const KeyEvent = {
177
+ key: "ArrowUp",
178
+ preventDefault: () => null,
179
+ };
180
+ await menu.handleKeyboardOpen(KeyEvent);
181
+ await page.waitForChanges();
182
+ expect(page.rootInstance.open).toBeTruthy;
183
+ expect(page.rootInstance.value).toBe(value3);
184
+ await menu.handleKeyboardOpen(KeyEvent);
185
+ await page.waitForChanges();
186
+ await menu.handleKeyboardOpen(KeyEvent);
187
+ await page.waitForChanges();
188
+ await menu.handleKeyboardOpen(KeyEvent);
189
+ await page.waitForChanges();
190
+ expect(page.rootInstance.value).toBe(value3);
191
+ });
192
+ it("should test keydown on menu - space key (custom)", async () => {
193
+ const page = await newSpecPage({
194
+ components: [Select, Menu, InputComponentContainer],
195
+ html: `<ic-select label="IC Select Test"></ic-select>`,
196
+ });
197
+ page.root.options = menuOptions;
198
+ page.rootInstance.open = true;
199
+ await page.waitForChanges();
200
+ const list = page.root.shadowRoot.querySelector("ic-menu ul");
201
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
202
+ key: " ",
203
+ bubbles: true,
204
+ cancelable: true,
205
+ }));
206
+ await page.waitForChanges();
207
+ expect(page.rootInstance.open).toBe(false);
208
+ });
209
+ it("should test mousedown handler", async () => {
210
+ const page = await newSpecPage({
211
+ components: [Select, Menu, InputComponentContainer],
212
+ html: `<ic-select label="IC Select Test"></ic-select>`,
213
+ });
214
+ page.root.options = menuOptions;
215
+ const button = page.root.shadowRoot.querySelector("button.select-input");
216
+ const event = new Event("mousedown", {
217
+ bubbles: true,
218
+ cancelable: true,
219
+ });
220
+ button.dispatchEvent(event);
221
+ await page.waitForChanges();
222
+ expect(page.rootInstance.open).toBe(false);
223
+ });
224
+ it("should use option labels if no values", async () => {
225
+ const page = await newSpecPage({
226
+ components: [Select, Menu, InputComponentContainer],
227
+ html: `<ic-select label="IC Select Test"></ic-select>`,
228
+ });
229
+ page.root.options = menuOptionsNoValues;
230
+ await page.waitForChanges();
231
+ expect(page.root.options[0].value).toBe(label1);
232
+ expect(page.root.options[1].value).toBe(label2);
233
+ expect(page.root.options[2].value).toBe(label3);
234
+ });
235
+ it("should select the option that matches the pressed character key", async () => {
236
+ const page = await newSpecPage({
237
+ components: [Select, Menu, InputComponentContainer],
238
+ html: `<ic-select label="IC Select Test"></ic-select>`,
239
+ });
240
+ page.root.options = menuOptionsWithDescriptions;
241
+ await page.waitForChanges();
242
+ const eventSpy = jest.fn();
243
+ page.win.addEventListener("icChange", eventSpy);
244
+ await page.rootInstance.handleKeyDown({
245
+ key: "A",
246
+ preventDefault: () => null,
247
+ });
248
+ await page.waitForChanges();
249
+ expect(eventSpy).toHaveBeenCalledWith(expect.objectContaining({
250
+ detail: expect.objectContaining({
251
+ value: "Ame",
252
+ }),
253
+ }));
254
+ await waitForTimeout(1000);
255
+ await page.rootInstance.handleKeyDown({
256
+ key: "C",
257
+ preventDefault: () => null,
258
+ });
259
+ await page.waitForChanges();
260
+ expect(eventSpy).toHaveBeenCalledWith(expect.objectContaining({
261
+ detail: expect.objectContaining({
262
+ value: "Cap",
263
+ }),
264
+ }));
265
+ });
266
+ it("should select the option that matches the pressed character key - grouped options", async () => {
267
+ const page = await newSpecPage({
268
+ components: [Select, Menu, InputComponentContainer],
269
+ html: `<ic-select label="IC Select Test"></ic-select>`,
270
+ });
271
+ page.root.options = menuOptionsWithGroups;
272
+ await page.waitForChanges();
273
+ const eventSpy = jest.fn();
274
+ page.win.addEventListener("icChange", eventSpy);
275
+ await page.rootInstance.handleKeyDown({
276
+ key: "F",
277
+ preventDefault: () => null,
278
+ });
279
+ await page.waitForChanges();
280
+ expect(eventSpy).toHaveBeenCalledWith(expect.objectContaining({
281
+ detail: expect.objectContaining({
282
+ value: "Flat",
283
+ }),
284
+ }));
285
+ });
286
+ it("should test getFilteredChildMenuOptions for custom select", async () => {
287
+ const page = await newSpecPage({
288
+ components: [Select, Menu, InputComponentContainer],
289
+ html: `<ic-select label="IC Select Test"></ic-select>`,
290
+ });
291
+ page.root.options = menuOptionsWithGroups;
292
+ await page.waitForChanges();
293
+ const result = await page.rootInstance.getFilteredChildMenuOptions(menuOptionsWithGroups[0]);
294
+ await page.waitForChanges();
295
+ expect(result).toEqual(page.root.options[0]);
296
+ });
297
+ it("should select the option that matches the character key pressed when menu is open", async () => {
298
+ const page = await newSpecPage({
299
+ components: [Select, Menu, InputComponentContainer],
300
+ html: `<ic-select label="IC Select Test"></ic-select>`,
301
+ });
302
+ page.root.options = menuOptionsWithDescriptions;
303
+ page.rootInstance.open = true;
304
+ await page.waitForChanges();
305
+ const eventSpy = jest.fn();
306
+ page.win.addEventListener("icChange", eventSpy);
307
+ const list = page.root.shadowRoot.querySelector(menuUl);
308
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
309
+ key: "C",
310
+ bubbles: true,
311
+ cancelable: true,
312
+ }));
313
+ await page.waitForChanges();
314
+ expect(eventSpy).toHaveBeenCalledWith(expect.objectContaining({
315
+ detail: expect.objectContaining({
316
+ value: "Cap",
317
+ }),
318
+ }));
319
+ });
320
+ it("should add to pressedCharacters as characters are pressed and then reset it after 1 second", async () => {
321
+ const page = await newSpecPage({
322
+ components: [Select, Menu, InputComponentContainer],
323
+ html: `<ic-select label="IC Select Test"></ic-select>`,
324
+ });
325
+ page.root.options = menuOptionsWithDescriptions;
326
+ await page.waitForChanges();
327
+ await page.rootInstance.handleKeyDown({
328
+ key: "A",
329
+ preventDefault: () => null,
330
+ });
331
+ await page.waitForChanges();
332
+ expect(page.rootInstance.pressedCharacters).toBe("A");
333
+ await page.rootInstance.handleKeyDown({
334
+ key: "B",
335
+ preventDefault: () => null,
336
+ });
337
+ await page.waitForChanges();
338
+ expect(page.rootInstance.pressedCharacters).toBe("AB");
339
+ await page.rootInstance.handleKeyDown({
340
+ key: "C",
341
+ preventDefault: () => null,
342
+ });
343
+ await page.waitForChanges();
344
+ await waitForTimeout(1000);
345
+ await page.waitForChanges();
346
+ expect(page.rootInstance.pressedCharacters).toBe("");
347
+ });
348
+ it("should not open the menu when space key is used as a character key", async () => {
349
+ const page = await newSpecPage({
350
+ components: [Select, Menu, InputComponentContainer],
351
+ html: `<ic-select label="IC Select Test"></ic-select>`,
352
+ });
353
+ page.root.options = menuOptionsWithDescriptions;
354
+ await page.waitForChanges();
355
+ await page.rootInstance.handleKeyDown({
356
+ key: "A",
357
+ preventDefault: () => null,
358
+ });
359
+ await page.rootInstance.handleKeyDown({
360
+ key: " ",
361
+ preventDefault: () => null,
362
+ });
363
+ await page.waitForChanges();
364
+ expect(page.rootInstance.pressedCharacters).toBe("A ");
365
+ expect(page.rootInstance.open).toBe(false);
366
+ });
367
+ it("should not close the menu when space key is used as a character key", async () => {
368
+ const page = await newSpecPage({
369
+ components: [Select, Menu, InputComponentContainer],
370
+ html: `<ic-select label="IC Select Test"></ic-select>`,
371
+ });
372
+ page.root.options = menuOptionsWithDescriptions;
373
+ page.rootInstance.open = true;
374
+ await page.waitForChanges();
375
+ const eventSpy = jest.fn();
376
+ page.win.addEventListener("icChange", eventSpy);
377
+ const list = page.root.shadowRoot.querySelector(menuUl);
378
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
379
+ key: "C",
380
+ bubbles: true,
381
+ cancelable: true,
382
+ }));
383
+ await page.waitForChanges();
384
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
385
+ key: " ",
386
+ bubbles: true,
387
+ cancelable: true,
388
+ }));
389
+ await page.waitForChanges();
390
+ expect(page.rootInstance.pressedCharacters).toBe("C ");
391
+ expect(page.rootInstance.open).toBe(true);
392
+ });
393
+ it("should test loading state and timeout for custom select", async () => {
394
+ const page = await newSpecPage({
395
+ components: [Select, Menu, InputComponentContainer],
396
+ html: `<ic-select label="IC Select Test" timeout="1000"></ic-select>`,
397
+ });
398
+ const eventSpy = jest.fn();
399
+ page.win.addEventListener("icBlur", eventSpy);
400
+ page.rootInstance.loading = true;
401
+ page.rootInstance.open = true;
402
+ await page.waitForChanges();
403
+ expect(page.rootInstance.options[0].label).toEqual(loadingLabel);
404
+ await waitForTimeout(1000);
405
+ expect(page.rootInstance.options[0].label).toEqual(loadingErrorLabel);
406
+ await page.waitForChanges();
407
+ const retryButton = page.root.shadowRoot
408
+ .querySelector("ic-menu")
409
+ .querySelector(retryButtonId);
410
+ retryButton.blur();
411
+ expect(page.rootInstance.open).toBeFalsy;
412
+ expect(eventSpy).toHaveBeenCalled;
413
+ page.root.options = [];
414
+ await page.waitForChanges();
415
+ expect(page.rootInstance.options[0].label).toEqual(loadingErrorLabel);
416
+ });
417
+ it("should focus the input when escape is pressed whilst the menu is focused", async () => {
418
+ const spy = jest.spyOn(HTMLButtonElement.prototype, "focus");
419
+ const page = await newSpecPage({
420
+ components: [Select, Menu, InputComponentContainer],
421
+ html: `<ic-select label="IC Select Test"></ic-select>`,
422
+ });
423
+ page.root.options = menuOptions;
424
+ page.rootInstance.open = true;
425
+ await page.waitForChanges();
426
+ const list = page.root.shadowRoot.querySelector(menuUl);
427
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
428
+ key: "Escape",
429
+ bubbles: true,
430
+ cancelable: true,
431
+ }));
432
+ await page.waitForChanges();
433
+ expect(page.rootInstance.open).toBeFalsy();
434
+ expect(spy).toHaveBeenCalled();
435
+ });
436
+ });
437
+ describe("ic-select native", () => {
438
+ beforeEach(() => {
439
+ Object.defineProperty(helpers, "isMobileOrTablet", {
440
+ value: jest.fn().mockReturnValue(true),
441
+ });
442
+ });
443
+ afterEach(() => {
444
+ Object.defineProperty(helpers, "isMobileOrTablet", {
445
+ value: jest.fn().mockReturnValue(false),
446
+ });
447
+ });
448
+ it("should test native select", async () => {
449
+ const page = await newSpecPage({
450
+ components: [Select],
451
+ html: `<ic-select label="IC Select Test"></ic-select>`,
452
+ });
453
+ page.root.options = menuOptions;
454
+ page.root.label = "New label";
455
+ await page.waitForChanges();
456
+ page.root.setFocus();
457
+ await page.waitForChanges();
458
+ expect(page.root).toMatchSnapshot("native-select");
459
+ });
460
+ it("should test native select with groups", async () => {
461
+ const page = await newSpecPage({
462
+ components: [Select],
463
+ html: `<ic-select label="IC Select Test"></ic-select>`,
464
+ });
465
+ page.root.options = menuOptionsWithGroups;
466
+ page.root.label = "New label";
467
+ await page.waitForChanges();
468
+ page.root.setFocus();
469
+ await page.waitForChanges();
470
+ expect(page.root).toMatchSnapshot("native-select-with-groups");
471
+ let eventSpy = jest.fn();
472
+ page.win.addEventListener("icBlur", eventSpy);
473
+ const select = page.root.shadowRoot.querySelector("select");
474
+ select.blur();
475
+ await page.waitForChanges();
476
+ expect(eventSpy).toHaveBeenCalled();
477
+ eventSpy = jest.fn();
478
+ page.win.addEventListener("icChange", eventSpy);
479
+ const event = new Event("change", {
480
+ bubbles: true,
481
+ cancelable: true,
482
+ });
483
+ page.rootInstance.nativeSelectElement.selectedIndex = 0;
484
+ select.dispatchEvent(event);
485
+ await page.waitForChanges();
486
+ //delay to wait for aria live update
487
+ await waitForTimeout(900);
488
+ expect(eventSpy).toHaveBeenCalled();
489
+ });
490
+ it("should test native select keydown", async () => {
491
+ const page = await newSpecPage({
492
+ components: [Select],
493
+ html: `<ic-select label="IC Select Test"></ic-select>`,
494
+ });
495
+ page.root.options = menuOptions;
496
+ page.root.setFocus();
497
+ await page.waitForChanges();
498
+ await page.rootInstance.handleNativeSelectKeyDown({
499
+ key: "ArrowDown",
500
+ preventDefault: () => null,
501
+ });
502
+ await page.waitForChanges();
503
+ expect(page.rootInstance.open).toBeFalsy;
504
+ });
505
+ });
506
+ describe("ic-select searchable", () => {
507
+ it("should render as required", async () => {
508
+ const page = await newSpecPage({
509
+ components: [Select, Menu, InputComponentContainer],
510
+ html: getTestSelect('required="true" searchable="true"'),
511
+ });
512
+ expect(page.root).toMatchSnapshot("required-searchable");
513
+ });
514
+ it("should test with clear button with searchable", async () => {
515
+ const page = await newSpecPage({
516
+ components: [Select, Menu, InputComponentContainer, Button],
517
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
518
+ });
519
+ page.root.options = menuOptions;
520
+ page.rootInstance.searchableSelectInputValue = "test value";
521
+ await page.waitForChanges();
522
+ const clearButton = page.root.shadowRoot.querySelector(clearButtonId);
523
+ clearButton.focus();
524
+ await page.waitForChanges();
525
+ expect(page.rootInstance.clearButtonFocused).toBe(true);
526
+ clearButton.blur();
527
+ await page.waitForChanges();
528
+ expect(page.rootInstance.clearButtonFocused).toBe(false);
529
+ clearButton.click();
530
+ await page.waitForChanges();
531
+ expect(page.rootInstance.searchableSelectInputValue).toBeNull;
532
+ });
533
+ it("should test keydown handler searchable", async () => {
534
+ const page = await newSpecPage({
535
+ components: [Select, Menu, InputComponentContainer],
536
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
537
+ });
538
+ jest.spyOn(page.rootInstance, "setFocus").mockImplementation();
539
+ page.root.options = menuOptions;
540
+ await page.waitForChanges();
541
+ await page.root.setFocus();
542
+ await page.waitForChanges();
543
+ await page.rootInstance.handleKeyDown({
544
+ key: "ArrowDown",
545
+ preventDefault: () => null,
546
+ });
547
+ await page.waitForChanges();
548
+ const menu = page.root.shadowRoot.querySelector("ic-menu");
549
+ expect(menu.options).toEqual(menuOptions);
550
+ expect(page.rootInstance.open).toBeTruthy;
551
+ await page.waitForChanges();
552
+ await page.rootInstance.handleKeyDown({
553
+ key: "Enter",
554
+ preventDefault: () => null,
555
+ });
556
+ await page.waitForChanges();
557
+ expect(page.rootInstance.open).toBeFalsy;
558
+ page.rootInstance.open = true;
559
+ page.rootInstance.noOptions = true;
560
+ await page.waitForChanges();
561
+ await page.rootInstance.handleKeyDown({
562
+ key: "Ctrl",
563
+ preventDefault: () => null,
564
+ });
565
+ await page.waitForChanges();
566
+ expect(page.rootInstance.setFocus).toHaveBeenCalledTimes(2);
567
+ page.rootInstance.open = true;
568
+ page.rootInstance.noOptions = true;
569
+ await page.waitForChanges();
570
+ await page.rootInstance.handleKeyDown({
571
+ key: "Backspace",
572
+ preventDefault: () => null,
573
+ });
574
+ await page.waitForChanges();
575
+ expect(page.rootInstance.setFocus).toHaveBeenCalledTimes(3);
576
+ });
577
+ it("should test keydown on menu - arrow up (searchable)", async () => {
578
+ const page = await newSpecPage({
579
+ components: [Select, Menu, InputComponentContainer],
580
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
581
+ });
582
+ page.root.options = menuOptions;
583
+ page.root.value = value2;
584
+ await page.waitForChanges();
585
+ const list = page.root.shadowRoot.querySelector(menuUl);
586
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
587
+ key: "ArrowUp",
588
+ bubbles: true,
589
+ cancelable: true,
590
+ }));
591
+ await page.waitForChanges();
592
+ const input = page.root.shadowRoot.querySelector("input");
593
+ expect(input.value).toBe(label2);
594
+ expect(page.rootInstance.open).toBeTruthy;
595
+ });
596
+ it("should test keydown on menu - arrow up wrap around (searchable)", async () => {
597
+ const page = await newSpecPage({
598
+ components: [Select, Menu, InputComponentContainer],
599
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
600
+ });
601
+ page.root.options = menuOptions;
602
+ page.rootInstance.open = true;
603
+ await page.waitForChanges();
604
+ page.root.value = value1;
605
+ await page.waitForChanges();
606
+ const list = page.root.shadowRoot.querySelector(menuUl);
607
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
608
+ key: "ArrowUp",
609
+ bubbles: true,
610
+ cancelable: true,
611
+ }));
612
+ await page.waitForChanges();
613
+ const input = page.root.shadowRoot.querySelector("input");
614
+ expect(input.value).toBe(label1);
615
+ });
616
+ it("should test keydown on menu - arrow down", async () => {
617
+ const page = await newSpecPage({
618
+ components: [Select, Menu, InputComponentContainer],
619
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
620
+ });
621
+ page.root.options = menuOptions;
622
+ page.rootInstance.open = true;
623
+ await page.waitForChanges();
624
+ page.root.value = value1;
625
+ await page.waitForChanges();
626
+ const list = page.root.shadowRoot.querySelector(menuUl);
627
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
628
+ key: "ArrowDown",
629
+ bubbles: true,
630
+ cancelable: true,
631
+ }));
632
+ await page.waitForChanges();
633
+ const input = page.root.shadowRoot.querySelector("input");
634
+ expect(input.value).toBe(label1);
635
+ });
636
+ it("should test keydown on menu - arrow down wrap around", async () => {
637
+ const page = await newSpecPage({
638
+ components: [Select, Menu, InputComponentContainer],
639
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
640
+ });
641
+ page.root.options = menuOptions;
642
+ page.rootInstance.open = true;
643
+ await page.waitForChanges();
644
+ page.root.value = value3;
645
+ await page.waitForChanges();
646
+ const list = page.root.shadowRoot.querySelector(menuUl);
647
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
648
+ key: "ArrowDown",
649
+ bubbles: true,
650
+ cancelable: true,
651
+ }));
652
+ await page.waitForChanges();
653
+ const input = page.root.shadowRoot.querySelector("input");
654
+ expect(input.value).toBe(label3);
655
+ });
656
+ it("should test keydown on menu - home key", async () => {
657
+ const page = await newSpecPage({
658
+ components: [Select, Menu, InputComponentContainer],
659
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
660
+ });
661
+ page.root.options = menuOptions;
662
+ page.rootInstance.open = true;
663
+ await page.waitForChanges();
664
+ page.root.value = value3;
665
+ await page.waitForChanges();
666
+ const list = page.root.shadowRoot.querySelector(menuUl);
667
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
668
+ key: "Home",
669
+ bubbles: true,
670
+ cancelable: true,
671
+ }));
672
+ expect(page.rootInstance.open).toBeTruthy;
673
+ });
674
+ it("should test keydown on menu - end key", async () => {
675
+ const page = await newSpecPage({
676
+ components: [Select, Menu, InputComponentContainer],
677
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
678
+ });
679
+ page.root.options = menuOptions;
680
+ page.root.value = value1;
681
+ await page.waitForChanges();
682
+ const list = page.root.shadowRoot.querySelector(menuUl);
683
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
684
+ key: "End",
685
+ bubbles: true,
686
+ cancelable: true,
687
+ }));
688
+ await page.waitForChanges();
689
+ const input = page.root.shadowRoot.querySelector("input");
690
+ expect(input.value).toBe(label1);
691
+ expect(page.rootInstance.open).toBeTruthy;
692
+ });
693
+ it("should test keydown on menu - backspace key", async () => {
694
+ const page = await newSpecPage({
695
+ components: [Select, Menu, InputComponentContainer],
696
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
697
+ });
698
+ page.root.options = menuOptions;
699
+ page.rootInstance.open = true;
700
+ await page.waitForChanges();
701
+ page.root.value = value3;
702
+ await page.waitForChanges();
703
+ const list = page.root.shadowRoot.querySelector(menuUl);
704
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
705
+ key: "Backspace",
706
+ bubbles: true,
707
+ cancelable: true,
708
+ }));
709
+ await page.waitForChanges();
710
+ const input = page.root.shadowRoot.querySelector("input");
711
+ expect(input.value).toBe(label3);
712
+ });
713
+ it("should test keydown on menu - enter key", async () => {
714
+ const page = await newSpecPage({
715
+ components: [Select, Menu, InputComponentContainer],
716
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
717
+ });
718
+ page.root.options = menuOptions;
719
+ page.rootInstance.open = true;
720
+ await page.waitForChanges();
721
+ page.root.value = value3;
722
+ await page.waitForChanges();
723
+ const list = page.root.shadowRoot.querySelector(menuUl);
724
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
725
+ key: "ArrowDown",
726
+ bubbles: true,
727
+ cancelable: true,
728
+ }));
729
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
730
+ key: "Enter",
731
+ bubbles: true,
732
+ cancelable: true,
733
+ }));
734
+ await page.waitForChanges();
735
+ const input = page.root.shadowRoot.querySelector("input");
736
+ expect(input.value).toBe(label1);
737
+ input.click();
738
+ await page.waitForChanges();
739
+ expect(page.rootInstance.filteredOptions).toHaveLength(3);
740
+ });
741
+ it("should test keydown on menu - space key", async () => {
742
+ const page = await newSpecPage({
743
+ components: [Select, Menu, InputComponentContainer],
744
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
745
+ });
746
+ page.root.options = menuOptions;
747
+ page.rootInstance.open = true;
748
+ await page.waitForChanges();
749
+ const list = page.root.shadowRoot.querySelector(menuUl);
750
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
751
+ key: " ",
752
+ bubbles: true,
753
+ cancelable: true,
754
+ }));
755
+ await page.waitForChanges();
756
+ expect(page.rootInstance.open).toBe(true);
757
+ });
758
+ it("should test keydown on menu - other key", async () => {
759
+ const page = await newSpecPage({
760
+ components: [Select, Menu, InputComponentContainer],
761
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
762
+ });
763
+ page.root.options = menuOptions;
764
+ page.rootInstance.open = true;
765
+ await page.waitForChanges();
766
+ page.root.value = value2;
767
+ await page.waitForChanges();
768
+ const list = page.root.shadowRoot.querySelector(menuUl);
769
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
770
+ key: "Ctrl",
771
+ bubbles: true,
772
+ cancelable: true,
773
+ }));
774
+ await page.waitForChanges();
775
+ const input = page.root.shadowRoot.querySelector("input");
776
+ expect(input.value).toBe(label2);
777
+ });
778
+ it("should test keyup on menu list", async () => {
779
+ const page = await newSpecPage({
780
+ components: [Select, Menu, InputComponentContainer],
781
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
782
+ });
783
+ page.root.options = menuOptions;
784
+ page.rootInstance.open = true;
785
+ await page.waitForChanges();
786
+ page.root.value = value2;
787
+ await page.waitForChanges();
788
+ const list = page.root.shadowRoot.querySelector(menuUl);
789
+ list.dispatchEvent(new window.window.KeyboardEvent("keyup", {
790
+ key: "Tab",
791
+ shiftKey: true,
792
+ bubbles: true,
793
+ cancelable: true,
794
+ }));
795
+ await page.waitForChanges();
796
+ const input = page.root.shadowRoot.querySelector("input");
797
+ expect(input.value).toBe(label2);
798
+ });
799
+ it("should test click on input", async () => {
800
+ const page = await newSpecPage({
801
+ components: [Select, Menu, InputComponentContainer],
802
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
803
+ });
804
+ page.root.options = menuOptions;
805
+ await page.waitForChanges();
806
+ const input = page.root.shadowRoot.querySelector("input");
807
+ input.click();
808
+ await page.waitForChanges();
809
+ expect(page.rootInstance.open).toBe(true);
810
+ });
811
+ it("should test click on input with external filtering", async () => {
812
+ const page = await newSpecPage({
813
+ components: [Select, Menu, InputComponentContainer],
814
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true"></ic-select>`,
815
+ });
816
+ page.root.options = menuOptions;
817
+ await page.waitForChanges();
818
+ const input = page.root.shadowRoot.querySelector("input");
819
+ input.click();
820
+ await page.waitForChanges();
821
+ expect(page.rootInstance.open).toBe(true);
822
+ });
823
+ it("should test blur on searchable input", async () => {
824
+ const page = await newSpecPage({
825
+ components: [Select, Menu, InputComponentContainer],
826
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
827
+ });
828
+ page.root.options = menuOptions;
829
+ await page.waitForChanges();
830
+ const eventSpy = jest.fn();
831
+ page.win.addEventListener("icBlur", eventSpy);
832
+ const input = page.root.shadowRoot.querySelector("input");
833
+ input.blur();
834
+ await page.waitForChanges();
835
+ expect(eventSpy).toHaveBeenCalled();
836
+ });
837
+ it("should test blur on searchable input where target is an element of the menu but not a menu option", async () => {
838
+ const page = await newSpecPage({
839
+ components: [Select, Menu, InputComponentContainer],
840
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
841
+ });
842
+ page.root.options = menuOptions;
843
+ await page.waitForChanges();
844
+ const target = page.root.shadowRoot.querySelector("ul.menu");
845
+ const event = new FocusEvent("blur", {
846
+ bubbles: true,
847
+ cancelable: true,
848
+ relatedTarget: target,
849
+ });
850
+ const eventSpy = jest.fn();
851
+ page.win.addEventListener("icBlur", eventSpy);
852
+ await page.rootInstance.onBlur(event);
853
+ await page.waitForChanges();
854
+ expect(eventSpy).not.toHaveBeenCalled();
855
+ });
856
+ it("should test searchable input", async () => {
857
+ const page = await newSpecPage({
858
+ components: [Select, Menu, InputComponentContainer],
859
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
860
+ });
861
+ page.root.options = menuOptions;
862
+ await page.waitForChanges();
863
+ const event = new Event("input", {
864
+ bubbles: true,
865
+ cancelable: true,
866
+ });
867
+ const input = page.root.shadowRoot.querySelector("input");
868
+ page.rootInstance.searchableSelectInputValue = testValue;
869
+ input.dispatchEvent(event);
870
+ await page.waitForChanges();
871
+ //delay to wait for aria live update
872
+ await waitForTimeout(900);
873
+ expect(page.rootInstance.open).toBe(true);
874
+ page.rootInstance.searchableSelectInputValue = "";
875
+ await page.waitForChanges();
876
+ input.dispatchEvent(event);
877
+ await page.waitForChanges();
878
+ //delay to wait for aria live update
879
+ await waitForTimeout(900);
880
+ expect(page.rootInstance.open).toBe(true);
881
+ page.root.options = [];
882
+ await page.waitForChanges();
883
+ page.rootInstance.searchableSelectInputValue = "";
884
+ input.dispatchEvent(event);
885
+ await page.waitForChanges();
886
+ //delay to wait for aria live update
887
+ await waitForTimeout(900);
888
+ expect(page.rootInstance.open).toBe(true);
889
+ });
890
+ it("should test searchable input filtering", async () => {
891
+ const page = await newSpecPage({
892
+ components: [Select, Menu, InputComponentContainer],
893
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
894
+ });
895
+ page.root.options = menuOptionsWithDescriptions;
896
+ page.rootInstance.searchableSelectInputValue = "c";
897
+ await page.waitForChanges();
898
+ const input = page.root.shadowRoot.querySelector("input");
899
+ const event = new Event("input", {
900
+ bubbles: true,
901
+ cancelable: true,
902
+ });
903
+ input.dispatchEvent(event);
904
+ await page.waitForChanges();
905
+ //delay to wait for aria live update
906
+ await waitForTimeout(900);
907
+ expect(page.rootInstance.filteredOptions.length).toBe(2);
908
+ });
909
+ it("should test searchable input - with search match position set to start", async () => {
910
+ const page = await newSpecPage({
911
+ components: [Select, Menu, InputComponentContainer],
912
+ html: `<ic-select label="IC Select Test" searchable="true" search-match-position="start"></ic-select>`,
913
+ });
914
+ page.root.options = menuOptionsWithDescriptions;
915
+ page.rootInstance.searchableSelectInputValue = "c";
916
+ await page.waitForChanges();
917
+ const input = page.root.shadowRoot.querySelector("input");
918
+ const event = new Event("input", {
919
+ bubbles: true,
920
+ cancelable: true,
921
+ });
922
+ input.dispatchEvent(event);
923
+ await page.waitForChanges();
924
+ //delay to wait for aria live update
925
+ await waitForTimeout(900);
926
+ expect(page.rootInstance.filteredOptions.length).toBe(1);
927
+ });
928
+ it("should test searchable input - with descriptions and descriptions included in search", async () => {
929
+ const page = await newSpecPage({
930
+ components: [Select, Menu, InputComponentContainer],
931
+ html: `<ic-select label="IC Select Test" searchable="true" include-descriptions-in-search="true"></ic-select>`,
932
+ });
933
+ page.root.options = menuOptionsWithDescriptions;
934
+ page.rootInstance.searchableSelectInputValue = "Test description 2";
935
+ await page.waitForChanges();
936
+ const input = page.root.shadowRoot.querySelector("input");
937
+ const event = new Event("input", {
938
+ bubbles: true,
939
+ cancelable: true,
940
+ });
941
+ input.dispatchEvent(event);
942
+ await page.waitForChanges();
943
+ //delay to wait for aria live update
944
+ await waitForTimeout(900);
945
+ expect(page.rootInstance.filteredOptions).not.toBeNull;
946
+ });
947
+ it("should test searchable input - with search match position set to start and descriptions included in search", async () => {
948
+ const page = await newSpecPage({
949
+ components: [Select, Menu, InputComponentContainer],
950
+ html: `<ic-select label="IC Select Test" searchable="true" search-match-position="start" include-descriptions-in-search="true"></ic-select>`,
951
+ });
952
+ page.root.options = menuOptionsWithDescriptions;
953
+ page.rootInstance.searchableSelectInputValue = "e";
954
+ await page.waitForChanges();
955
+ const input = page.root.shadowRoot.querySelector("input");
956
+ const event = new Event("input", {
957
+ bubbles: true,
958
+ cancelable: true,
959
+ });
960
+ input.dispatchEvent(event);
961
+ await page.waitForChanges();
962
+ //delay to wait for aria live update
963
+ await waitForTimeout(900);
964
+ expect(page.rootInstance.filteredOptions.length).toBe(1);
965
+ });
966
+ it("should test searchable input - with groups", async () => {
967
+ const page = await newSpecPage({
968
+ components: [Select, Menu, InputComponentContainer],
969
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
970
+ });
971
+ page.root.options = menuOptionsWithGroups;
972
+ page.rootInstance.searchableSelectInputValue = "Latte";
973
+ await page.waitForChanges();
974
+ const input = page.root.shadowRoot.querySelector("input");
975
+ const event = new Event("input", {
976
+ bubbles: true,
977
+ cancelable: true,
978
+ });
979
+ input.dispatchEvent(event);
980
+ await page.waitForChanges();
981
+ //delay to wait for aria live update
982
+ await waitForTimeout(900);
983
+ expect(page.rootInstance.filteredOptions).not.toBeNull;
984
+ });
985
+ it("should test searchable input - with groups and group titles included in search", async () => {
986
+ const page = await newSpecPage({
987
+ components: [Select, Menu, InputComponentContainer],
988
+ html: `<ic-select label="IC Select Test" searchable="true" include-group-titles-in-search="true"></ic-select>`,
989
+ });
990
+ page.root.options = menuOptionsWithGroups;
991
+ page.rootInstance.searchableSelectInputValue = "Fancy";
992
+ await page.waitForChanges();
993
+ const input = page.root.shadowRoot.querySelector("input");
994
+ const event = new Event("input", {
995
+ bubbles: true,
996
+ cancelable: true,
997
+ });
998
+ input.dispatchEvent(event);
999
+ await page.waitForChanges();
1000
+ //delay to wait for aria live update
1001
+ await waitForTimeout(900);
1002
+ expect(page.rootInstance.filteredOptions).not.toBeNull;
1003
+ });
1004
+ it("should test selectchange on no result found entry", async () => {
1005
+ const page = await newSpecPage({
1006
+ components: [Select, Menu, InputComponentContainer],
1007
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
1008
+ });
1009
+ page.root.options = menuOptions;
1010
+ page.rootInstance.open = true;
1011
+ page.rootInstance.searchableSelectInputValue = testValue;
1012
+ await page.waitForChanges();
1013
+ page.rootInstance.handleCustomSelectChange({
1014
+ detail: {
1015
+ label: noResults,
1016
+ },
1017
+ });
1018
+ await page.waitForChanges();
1019
+ expect(page.rootInstance.searchableSelectInputValue).toBe(testValue);
1020
+ });
1021
+ it("should test dropdown icon mousedown handler", async () => {
1022
+ const page = await newSpecPage({
1023
+ components: [Select, Menu, InputComponentContainer],
1024
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
1025
+ });
1026
+ page.root.options = menuOptions;
1027
+ page.rootInstance.handleExpandIconMouseDown({
1028
+ detail: "some value",
1029
+ preventDefault: () => null,
1030
+ });
1031
+ await page.waitForChanges();
1032
+ expect(page.rootInstance.open).toBe(true);
1033
+ });
1034
+ it("should test form reset event", async () => {
1035
+ const page = await newSpecPage({
1036
+ components: [Select],
1037
+ html: `<form>
1038
+ <ic-select label="IC Select Test" searchable="true"></ic-select>
1039
+ <button id="resetButton" type="reset">Reset</button>
1040
+ </form>`,
1041
+ });
1042
+ expect(page.rootInstance.searchableSelectInputValue).toBe(null);
1043
+ page.rootInstance.searchableSelectInputValue = testValue;
1044
+ await page.waitForChanges();
1045
+ expect(page.rootInstance.searchableSelectInputValue).toBe(testValue);
1046
+ await page.rootInstance.handleFormReset();
1047
+ await page.waitForChanges();
1048
+ expect(page.rootInstance.searchableSelectInputValue).toBe(null);
1049
+ });
1050
+ it("should test debounce change", async () => {
1051
+ const page = await newSpecPage({
1052
+ components: [Select, Menu, InputComponentContainer],
1053
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true" debounce="300"></ic-select>`,
1054
+ });
1055
+ await page.waitForChanges();
1056
+ expect(page.rootInstance.currDebounce).toBe(300);
1057
+ page.root.debounce = 500;
1058
+ await page.waitForChanges();
1059
+ expect(page.rootInstance.currDebounce).toBe(500);
1060
+ });
1061
+ it("should test no results state when no options passed and filtering disabled", async () => {
1062
+ const page = await newSpecPage({
1063
+ components: [Select, Menu, InputComponentContainer],
1064
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true" debounce="300"></ic-select>`,
1065
+ });
1066
+ page.root.options = menuOptions;
1067
+ page.rootInstance.searchableSelectInputValue = "test";
1068
+ await page.waitForChanges();
1069
+ const input = page.root.shadowRoot.querySelector("input");
1070
+ const event = new Event("input", {
1071
+ bubbles: true,
1072
+ cancelable: true,
1073
+ });
1074
+ input.dispatchEvent(event);
1075
+ await page.waitForChanges();
1076
+ page.root.options = [];
1077
+ await page.waitForChanges();
1078
+ expect(page.rootInstance.filteredOptions).toHaveLength(1);
1079
+ expect(page.rootInstance.filteredOptions[0].label).toEqual(noResults);
1080
+ expect(page.rootInstance.open).toBe(true);
1081
+ input.click();
1082
+ await page.waitForChanges();
1083
+ expect(page.rootInstance.open).toBe(false);
1084
+ page.root.options = menuOptions;
1085
+ await page.waitForChanges();
1086
+ });
1087
+ it("should test menus opens and closes when enter pressed - external filtering", async () => {
1088
+ const page = await newSpecPage({
1089
+ components: [Select, Menu, InputComponentContainer],
1090
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true" debounce="300"></ic-select>`,
1091
+ });
1092
+ page.root.options = [];
1093
+ page.rootInstance.searchableSelectInputValue = "test";
1094
+ await page.waitForChanges();
1095
+ const input = page.root.shadowRoot.querySelector("input");
1096
+ const event = new Event("input", {
1097
+ bubbles: true,
1098
+ cancelable: true,
1099
+ });
1100
+ input.dispatchEvent(event);
1101
+ await page.waitForChanges();
1102
+ //test menu displays when Enter pressed
1103
+ input.focus();
1104
+ await page.waitForChanges();
1105
+ await page.rootInstance.handleKeyDown({
1106
+ key: "Enter",
1107
+ preventDefault: () => null,
1108
+ });
1109
+ await page.waitForChanges();
1110
+ expect(page.rootInstance.open).toBe(false);
1111
+ await page.rootInstance.handleKeyDown({
1112
+ key: "Enter",
1113
+ target: { id: "test-event-id" },
1114
+ preventDefault: () => null,
1115
+ });
1116
+ await page.waitForChanges();
1117
+ expect(page.rootInstance.open).toBe(false);
1118
+ });
1119
+ it("should test adding and removing form reset listener on connect and disconnect", async () => {
1120
+ const page = await newSpecPage({
1121
+ components: [Select],
1122
+ html: `<form>
1123
+ <ic-select label="IC Select Test" searchable="true"></ic-select>
1124
+ <button id="resetButton" type="reset">Reset</button>
1125
+ </form>`,
1126
+ });
1127
+ const addSpy = jest.spyOn(page.root, "addEventListener");
1128
+ const removeSpy = jest.spyOn(page.root, "removeEventListener");
1129
+ expect(addSpy).toHaveBeenCalled;
1130
+ page.setContent("");
1131
+ await page.waitForChanges();
1132
+ expect(removeSpy).toHaveBeenCalled;
1133
+ });
1134
+ it("should set the default value of searchable as custom value when not matching options", async () => {
1135
+ const page = await newSpecPage({
1136
+ components: [Select, Menu, InputComponentContainer],
1137
+ html: `<ic-select label='Select test' searchable='true' value='Test value 01'></ic-select>`,
1138
+ });
1139
+ page.root.options = [];
1140
+ await page.waitForChanges();
1141
+ expect(page.rootInstance.searchableSelectInputValue).toBe("Test value 01");
1142
+ const input = page.root.shadowRoot.querySelector("input");
1143
+ expect(input.value).toBe("Test value 01");
1144
+ });
1145
+ it("should set the default value of searchable as option label if matching label/value exists", async () => {
1146
+ const page = await newSpecPage({
1147
+ components: [Select, Menu, InputComponentContainer],
1148
+ template: () => (h("ic-select", { label: "select test", searchable: true, options: menuOptions, value: value1 })),
1149
+ });
1150
+ expect(page.rootInstance.searchableSelectInputValue).toBe(label1);
1151
+ const input = page.root.shadowRoot.querySelector("input");
1152
+ expect(input.value).toBe(label1);
1153
+ });
1154
+ it("should set the default value of searchable as option label when options initially set to [] then populated", async () => {
1155
+ const page = await newSpecPage({
1156
+ components: [Select, Menu, InputComponentContainer],
1157
+ template: () => (h("ic-select", { label: "select test", searchable: true, options: [], value: value1 })),
1158
+ });
1159
+ page.root.options = menuOptions;
1160
+ await page.waitForChanges();
1161
+ expect(page.rootInstance.searchableSelectInputValue).toBe(label1);
1162
+ const input = page.root.shadowRoot.querySelector("input");
1163
+ expect(input.value).toBe(label1);
1164
+ });
1165
+ it("should set the default value to custom value when options initially set to [] then set to [] again", async () => {
1166
+ const page = await newSpecPage({
1167
+ components: [Select, Menu, InputComponentContainer],
1168
+ template: () => (h("ic-select", { label: "select test", searchable: true, options: [], value: value1 })),
1169
+ });
1170
+ page.root.options = [];
1171
+ await page.waitForChanges();
1172
+ expect(page.rootInstance.searchableSelectInputValue).toBe(value1);
1173
+ const input = page.root.shadowRoot.querySelector("input");
1174
+ expect(input.value).toBe(value1);
1175
+ });
1176
+ it("should test loading state and timeout for searchable select with external filtering", async () => {
1177
+ const page = await newSpecPage({
1178
+ components: [Select, Menu, InputComponentContainer],
1179
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true" debounce="300" timeout="1000"></ic-select>`,
1180
+ });
1181
+ page.rootInstance.searchableSelectInputValue = "test";
1182
+ await page.waitForChanges();
1183
+ const input = page.root.shadowRoot.querySelector("input");
1184
+ const event = new Event("input", {
1185
+ bubbles: true,
1186
+ cancelable: true,
1187
+ });
1188
+ input.dispatchEvent(event);
1189
+ page.rootInstance.loading = true;
1190
+ await page.waitForChanges();
1191
+ expect(page.rootInstance.filteredOptions[0].label).toEqual(loadingLabel);
1192
+ await waitForTimeout(1000);
1193
+ expect(page.rootInstance.filteredOptions[0].label).toEqual(loadingErrorLabel);
1194
+ await page.waitForChanges();
1195
+ const retryButton = page.root.shadowRoot
1196
+ .querySelector("ic-menu")
1197
+ .querySelector(retryButtonId);
1198
+ retryButton.click();
1199
+ page.rootInstance.loading = true;
1200
+ await page.waitForChanges();
1201
+ expect(page.rootInstance.filteredOptions[0].label).toEqual(loadingLabel);
1202
+ page.root.options = [];
1203
+ await page.waitForChanges();
1204
+ expect(page.rootInstance.filteredOptions[0].label).toEqual(noResults);
1205
+ });
1206
+ it("should focus the input when escape is pressed whilst the menu is focused (searchable)", async () => {
1207
+ const spy = jest.spyOn(HTMLInputElement.prototype, "focus");
1208
+ const page = await newSpecPage({
1209
+ components: [Select, Menu, InputComponentContainer],
1210
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
1211
+ });
1212
+ page.root.options = menuOptions;
1213
+ page.rootInstance.open = true;
1214
+ await page.waitForChanges();
1215
+ const list = page.root.shadowRoot.querySelector(menuUl);
1216
+ list.dispatchEvent(new window.window.KeyboardEvent("keydown", {
1217
+ key: "Escape",
1218
+ bubbles: true,
1219
+ cancelable: true,
1220
+ }));
1221
+ await page.waitForChanges();
1222
+ expect(page.rootInstance.open).toBeFalsy();
1223
+ expect(spy).toHaveBeenCalled();
1224
+ });
1225
+ it("should test keydown on loading retry button", async () => {
1226
+ const page = await newSpecPage({
1227
+ components: [Select, Menu, InputComponentContainer],
1228
+ html: `<ic-select label="IC Select Test" searchable="true" disable-filter="true" debounce="300" timeout="1000"></ic-select>`,
1229
+ });
1230
+ const input = page.root.shadowRoot.querySelector("input");
1231
+ const spy = jest.spyOn(input, "focus");
1232
+ page.rootInstance.searchableSelectInputValue = "test";
1233
+ await page.waitForChanges();
1234
+ let event = new Event("input", {
1235
+ bubbles: true,
1236
+ cancelable: true,
1237
+ });
1238
+ input.dispatchEvent(event);
1239
+ page.rootInstance.loading = true;
1240
+ await page.waitForChanges();
1241
+ await waitForTimeout(1000);
1242
+ await page.waitForChanges();
1243
+ event = new KeyboardEvent("keyDown", {
1244
+ key: "Enter",
1245
+ });
1246
+ const retryButton = page.root.shadowRoot
1247
+ .querySelector("ic-menu")
1248
+ .querySelector(retryButtonId);
1249
+ retryButton.dispatchEvent(event);
1250
+ expect(spy).toHaveBeenCalled;
1251
+ });
1252
+ it("should stop the timeout if clear button is clicked before timeout", async () => {
1253
+ const page = await newSpecPage({
1254
+ components: [Select, Menu, InputComponentContainer],
1255
+ html: `<ic-select label="IC Select Test" searchable="true" timeout="1000"></ic-select>`,
1256
+ });
1257
+ page.rootInstance.searchableSelectInputValue = "test";
1258
+ await page.waitForChanges();
1259
+ const event = new Event("input", {
1260
+ bubbles: true,
1261
+ cancelable: true,
1262
+ });
1263
+ const input = page.root.shadowRoot.querySelector("input");
1264
+ input.dispatchEvent(event);
1265
+ page.rootInstance.loading = true;
1266
+ await page.waitForChanges();
1267
+ expect(page.rootInstance.filteredOptions).toHaveLength(1);
1268
+ const clearButton = page.root.shadowRoot.querySelector(clearButtonId);
1269
+ clearButton.click();
1270
+ await page.waitForChanges();
1271
+ expect(page.rootInstance.filteredOptions).toHaveLength(0);
1272
+ await waitForTimeout(1000);
1273
+ expect(page.rootInstance.filteredOptions).toHaveLength(0);
1274
+ });
1275
+ it("should clear the searchable input if the value is programatically set to undefined", async () => {
1276
+ const page = await newSpecPage({
1277
+ components: [Select, Menu, InputComponentContainer],
1278
+ html: `<ic-select label="IC Select Test" searchable="true"></ic-select>`,
1279
+ });
1280
+ page.rootInstance.searchableSelectInputValue = "test";
1281
+ await page.waitForChanges();
1282
+ const event = new Event("input", {
1283
+ bubbles: true,
1284
+ cancelable: true,
1285
+ });
1286
+ const input = page.root.shadowRoot.querySelector("input");
1287
+ input.dispatchEvent(event);
1288
+ page.rootInstance.loading = true;
1289
+ await page.waitForChanges();
1290
+ expect(page.rootInstance.filteredOptions).toHaveLength(1);
1291
+ page.rootInstance.value = undefined;
1292
+ await page.waitForChanges();
1293
+ expect(page.rootInstance.searchableSelectInputValue).toBeUndefined;
1294
+ });
1295
+ });
1296
+ //# sourceMappingURL=ic-select.spec.js.map