@ukic/web-components 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1143) hide show
  1. package/README.md +6 -5
  2. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  3. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  4. package/dist/cjs/core.cjs.js +13 -11
  5. package/dist/cjs/core.cjs.js.map +1 -1
  6. package/dist/cjs/{helpers-94b33ab0.js → helpers-a0a128bd.js} +155 -50
  7. package/dist/cjs/helpers-a0a128bd.js.map +1 -0
  8. package/dist/cjs/ic-accordion-group.cjs.entry.js +38 -22
  9. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-accordion.cjs.entry.js +75 -46
  11. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-alert.cjs.entry.js +50 -30
  13. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-back-to-top.cjs.entry.js +32 -16
  15. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-badge.cjs.entry.js +67 -42
  17. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +114 -63
  19. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-breadcrumb.cjs.entry.js +78 -18
  21. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-button_3.cjs.entry.js +341 -168
  23. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js +93 -72
  25. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js +51 -14
  27. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-checkbox.cjs.entry.js +55 -31
  29. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-chip.cjs.entry.js +64 -32
  31. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-classification-banner.cjs.entry.js +22 -6
  33. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-data-list.cjs.entry.js +17 -7
  35. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-data-row.cjs.entry.js +31 -20
  37. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-dialog.cjs.entry.js +170 -114
  39. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-divider.cjs.entry.js +95 -12
  41. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-empty-state.cjs.entry.js +21 -24
  43. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-footer-link-group.cjs.entry.js +12 -14
  45. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-footer-link.cjs.entry.js +15 -16
  47. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-footer.cjs.entry.js +52 -30
  49. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-hero.cjs.entry.js +35 -32
  51. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +40 -21
  53. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +587 -244
  55. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-input-label_2.cjs.entry.js +65 -40
  57. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-link.cjs.entry.js +43 -28
  59. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-menu-group.cjs.entry.js +6 -7
  61. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-menu-item.cjs.entry.js +41 -33
  63. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-button.cjs.entry.js +32 -24
  65. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-navigation-group.cjs.entry.js +69 -44
  67. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-navigation-item.cjs.entry.js +115 -43
  69. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-navigation-menu.cjs.entry.js +55 -33
  71. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-page-header.cjs.entry.js +53 -31
  73. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-pagination-item.cjs.entry.js +37 -24
  75. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-pagination.cjs.entry.js +76 -36
  77. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-popover-menu.cjs.entry.js +97 -60
  79. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-radio-group.cjs.entry.js +103 -48
  81. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-radio-option.cjs.entry.js +70 -39
  83. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-search-bar.cjs.entry.js +195 -108
  85. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-section-container.cjs.entry.js +12 -5
  87. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-select.cjs.entry.js +385 -163
  89. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-side-navigation.cjs.entry.js +119 -79
  91. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-skeleton.cjs.entry.js +15 -8
  93. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-skip-link.cjs.entry.js +55 -0
  95. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -0
  96. package/dist/cjs/ic-status-tag.cjs.entry.js +30 -10
  97. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-step.cjs.entry.js +37 -37
  99. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-stepper.cjs.entry.js +60 -36
  101. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-switch.cjs.entry.js +63 -31
  103. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-tab-context.cjs.entry.js +112 -152
  105. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-tab-group.cjs.entry.js +18 -14
  107. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-tab-panel.cjs.entry.js +19 -15
  109. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-tab.cjs.entry.js +31 -22
  111. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-text-field.cjs.entry.js +235 -87
  113. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-theme.cjs.entry.js +52 -23
  115. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-toast-region.cjs.entry.js +8 -3
  117. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-toast.cjs.entry.js +30 -23
  119. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +117 -35
  121. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ic-toggle-button.cjs.entry.js +110 -23
  123. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ic-top-navigation.cjs.entry.js +65 -35
  125. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ic-typography.cjs.entry.js +59 -30
  127. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  128. package/dist/cjs/index-d337cd8a.js +2611 -0
  129. package/dist/cjs/index-d337cd8a.js.map +1 -0
  130. package/dist/cjs/loader.cjs.js +5 -3
  131. package/dist/cjs/loader.cjs.js.map +1 -1
  132. package/dist/collection/ag-theme-icds.css +218 -0
  133. package/dist/collection/collection-manifest.json +8 -7
  134. package/dist/collection/components/ic-accordion/ic-accordion.css +27 -17
  135. package/dist/collection/components/ic-accordion/ic-accordion.js +116 -76
  136. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  137. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +611 -0
  138. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +2 -8
  139. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +65 -37
  140. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  141. package/dist/collection/components/ic-alert/ic-alert.css +50 -19
  142. package/dist/collection/components/ic-alert/ic-alert.js +113 -34
  143. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  144. package/dist/collection/components/ic-alert/ic-alert.stories.js +271 -0
  145. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +54 -20
  146. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +86 -14
  147. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  148. package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +216 -0
  149. package/dist/collection/components/ic-back-to-top/ic-back-to-top.types.js.map +1 -1
  150. package/dist/collection/components/ic-badge/ic-badge.css +44 -11
  151. package/dist/collection/components/ic-badge/ic-badge.js +136 -53
  152. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  153. package/dist/collection/components/ic-badge/ic-badge.stories.js +1092 -0
  154. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +32 -8
  155. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +142 -46
  156. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  157. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +165 -84
  158. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  159. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +362 -0
  160. package/dist/collection/components/ic-button/ic-button.css +709 -429
  161. package/dist/collection/components/ic-button/ic-button.js +331 -139
  162. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  163. package/dist/collection/components/ic-button/ic-button.stories.js +2387 -0
  164. package/dist/collection/components/ic-button/ic-button.types.js.map +1 -1
  165. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +102 -107
  166. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js +160 -86
  167. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -1
  168. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1050 -0
  169. package/dist/collection/components/ic-checkbox/ic-checkbox.css +78 -35
  170. package/dist/collection/components/ic-checkbox/ic-checkbox.js +123 -45
  171. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  172. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +20 -1
  173. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +108 -23
  174. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  175. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +726 -0
  176. package/dist/collection/components/ic-chip/ic-chip.css +66 -48
  177. package/dist/collection/components/ic-chip/ic-chip.js +126 -38
  178. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  179. package/dist/collection/components/ic-chip/ic-chip.stories.js +980 -0
  180. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +20 -10
  181. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +33 -8
  182. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  183. package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
  184. package/dist/collection/components/ic-data-list/ic-data-list.css +5 -1
  185. package/dist/collection/components/ic-data-list/ic-data-list.js +47 -8
  186. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -1
  187. package/dist/collection/components/ic-data-list/ic-data-list.stories.js +493 -0
  188. package/dist/collection/components/ic-data-row/ic-data-row.css +5 -2
  189. package/dist/collection/components/ic-data-row/ic-data-row.js +64 -21
  190. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  191. package/dist/collection/components/ic-dialog/ic-dialog.css +16 -9
  192. package/dist/collection/components/ic-dialog/ic-dialog.js +248 -144
  193. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  194. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1118 -0
  195. package/dist/collection/components/ic-divider/ic-divider.css +295 -4
  196. package/dist/collection/components/ic-divider/ic-divider.js +272 -12
  197. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  198. package/dist/collection/components/ic-divider/ic-divider.stories.js +394 -0
  199. package/dist/collection/components/ic-divider/ic-divider.types.js +2 -0
  200. package/dist/collection/components/ic-divider/ic-divider.types.js.map +1 -0
  201. package/dist/collection/components/ic-empty-state/ic-empty-state.css +17 -2
  202. package/dist/collection/components/ic-empty-state/ic-empty-state.js +63 -28
  203. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  204. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +404 -0
  205. package/dist/collection/components/ic-footer/ic-footer.css +25 -17
  206. package/dist/collection/components/ic-footer/ic-footer.js +72 -38
  207. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  208. package/dist/collection/components/ic-footer/ic-footer.stories.js +384 -0
  209. package/dist/collection/components/ic-footer-link/ic-footer-link.css +28 -5
  210. package/dist/collection/components/ic-footer-link/ic-footer-link.js +32 -22
  211. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  212. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +14 -18
  213. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +12 -12
  214. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  215. package/dist/collection/components/ic-hero/ic-hero.css +25 -10
  216. package/dist/collection/components/ic-hero/ic-hero.js +66 -45
  217. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  218. package/dist/collection/components/ic-hero/ic-hero.stories.js +448 -0
  219. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +2 -6
  220. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +97 -22
  221. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  222. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +51 -18
  223. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +74 -64
  224. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  225. package/dist/collection/components/ic-input-container/ic-input-container.js +16 -6
  226. package/dist/collection/components/ic-input-container/ic-input-container.js.map +1 -1
  227. package/dist/collection/components/ic-input-label/ic-input-label.css +19 -20
  228. package/dist/collection/components/ic-input-label/ic-input-label.js +97 -41
  229. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  230. package/dist/collection/components/ic-input-validation/ic-input-validation.css +12 -3
  231. package/dist/collection/components/ic-input-validation/ic-input-validation.js +36 -19
  232. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  233. package/dist/collection/components/ic-link/ic-link.css +66 -25
  234. package/dist/collection/components/ic-link/ic-link.js +107 -59
  235. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  236. package/dist/collection/components/ic-link/ic-link.stories.js +85 -0
  237. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +20 -13
  238. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +183 -102
  239. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  240. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +464 -0
  241. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
  242. package/dist/collection/components/ic-menu/ic-menu.css +116 -23
  243. package/dist/collection/components/ic-menu/ic-menu.js +640 -257
  244. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  245. package/dist/collection/components/ic-menu/ic-menu.types.js.map +1 -1
  246. package/dist/collection/components/ic-menu-group/ic-menu-group.css +3 -2
  247. package/dist/collection/components/ic-menu-group/ic-menu-group.js +4 -5
  248. package/dist/collection/components/ic-menu-group/ic-menu-group.js.map +1 -1
  249. package/dist/collection/components/ic-menu-item/ic-menu-item.css +43 -23
  250. package/dist/collection/components/ic-menu-item/ic-menu-item.js +115 -48
  251. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  252. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +18 -0
  253. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +77 -29
  254. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  255. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +54 -49
  256. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +158 -47
  257. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  258. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js +2 -0
  259. package/dist/collection/components/ic-navigation-group/ic-navigation-group.types.js.map +1 -0
  260. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +40 -64
  261. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +181 -60
  262. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  263. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +13 -5
  264. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +84 -32
  265. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  266. package/dist/collection/components/ic-page-header/ic-page-header.css +7 -3
  267. package/dist/collection/components/ic-page-header/ic-page-header.js +99 -35
  268. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  269. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +823 -0
  270. package/dist/collection/components/ic-pagination/ic-pagination.css +24 -1
  271. package/dist/collection/components/ic-pagination/ic-pagination.js +157 -73
  272. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  273. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +164 -0
  274. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +54 -15
  275. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +99 -52
  276. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -1
  277. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +8 -4
  278. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +184 -69
  279. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  280. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +573 -0
  281. package/dist/collection/components/ic-radio-group/ic-radio-group.css +17 -1
  282. package/dist/collection/components/ic-radio-group/ic-radio-group.js +162 -59
  283. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  284. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +474 -0
  285. package/dist/collection/components/ic-radio-option/ic-radio-option.css +58 -27
  286. package/dist/collection/components/ic-radio-option/ic-radio-option.js +130 -47
  287. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  288. package/dist/collection/components/ic-search-bar/ic-search-bar.css +109 -16
  289. package/dist/collection/components/ic-search-bar/ic-search-bar.js +342 -147
  290. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  291. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +593 -0
  292. package/dist/collection/components/ic-search-bar/ic-search-bar.types.js.map +1 -1
  293. package/dist/collection/components/ic-section-container/ic-section-container.js +15 -5
  294. package/dist/collection/components/ic-section-container/ic-section-container.js.map +1 -1
  295. package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
  296. package/dist/collection/components/ic-select/ic-select.css +105 -55
  297. package/dist/collection/components/ic-select/ic-select.js +558 -212
  298. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  299. package/dist/collection/components/ic-select/ic-select_(multi).stories.js +892 -0
  300. package/dist/collection/components/ic-select/ic-select_(searchable).stories.js +965 -0
  301. package/dist/collection/components/ic-select/ic-select_(single).stories.js +790 -0
  302. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +63 -38
  303. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +162 -100
  304. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  305. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2547 -0
  306. package/dist/collection/components/ic-side-navigation/ic-side-navigation.types.js.map +1 -1
  307. package/dist/collection/components/ic-skeleton/ic-skeleton.css +4 -27
  308. package/dist/collection/components/ic-skeleton/ic-skeleton.js +29 -13
  309. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  310. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +143 -0
  311. package/dist/collection/components/ic-skip-link/ic-skip-link.css +46 -0
  312. package/dist/collection/components/ic-skip-link/ic-skip-link.js +203 -0
  313. package/dist/collection/components/ic-skip-link/ic-skip-link.js.map +1 -0
  314. package/dist/collection/components/ic-skip-link/ic-skip-link.stories.js +504 -0
  315. package/dist/collection/components/ic-status-tag/ic-status-tag.css +21 -17
  316. package/dist/collection/components/ic-status-tag/ic-status-tag.js +80 -10
  317. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  318. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +196 -0
  319. package/dist/collection/components/ic-step/ic-step.css +70 -124
  320. package/dist/collection/components/ic-step/ic-step.js +95 -42
  321. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  322. package/dist/collection/components/ic-stepper/ic-stepper.js +96 -54
  323. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  324. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +281 -0
  325. package/dist/collection/components/ic-switch/ic-switch.css +30 -48
  326. package/dist/collection/components/ic-switch/ic-switch.js +106 -48
  327. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  328. package/dist/collection/components/ic-switch/ic-switch.stories.js +149 -0
  329. package/dist/collection/components/ic-tab/ic-tab.css +53 -17
  330. package/dist/collection/components/ic-tab/ic-tab.js +97 -51
  331. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  332. package/dist/collection/components/ic-tab-context/ic-tab-context.js +170 -180
  333. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  334. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +316 -0
  335. package/dist/collection/components/ic-tab-group/ic-tab-group.css +14 -7
  336. package/dist/collection/components/ic-tab-group/ic-tab-group.js +70 -38
  337. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  338. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +7 -3
  339. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +86 -29
  340. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  341. package/dist/collection/components/ic-text-field/ic-text-field.css +64 -8
  342. package/dist/collection/components/ic-text-field/ic-text-field.js +484 -154
  343. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  344. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +1048 -0
  345. package/dist/collection/components/ic-theme/ic-theme.js +93 -35
  346. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  347. package/dist/collection/components/ic-theme/ic-theme.stories.js +434 -0
  348. package/dist/collection/components/ic-toast/ic-toast.css +41 -17
  349. package/dist/collection/components/ic-toast/ic-toast.js +49 -29
  350. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  351. package/dist/collection/components/ic-toast/ic-toast.stories.js +396 -0
  352. package/dist/collection/components/ic-toast-region/ic-toast-region.js +12 -5
  353. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  354. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +190 -58
  355. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +226 -63
  356. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  357. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +427 -0
  358. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +23 -16
  359. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +228 -64
  360. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  361. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +585 -0
  362. package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
  363. package/dist/collection/components/ic-tooltip/ic-tooltip.js +93 -36
  364. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  365. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +366 -0
  366. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +55 -21
  367. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +122 -50
  368. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  369. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1091 -0
  370. package/dist/collection/components/ic-typography/ic-typography.css +11 -7
  371. package/dist/collection/components/ic-typography/ic-typography.js +101 -32
  372. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  373. package/dist/collection/components/ic-typography/ic-typography.stories.js +447 -0
  374. package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
  375. package/dist/collection/patterns/z-index.stories.js +474 -0
  376. package/dist/collection/utils/constants.js +40 -1
  377. package/dist/collection/utils/constants.js.map +1 -1
  378. package/dist/collection/utils/helpers.js +93 -43
  379. package/dist/collection/utils/helpers.js.map +1 -1
  380. package/dist/collection/utils/testa11y.helpers.js +2 -1
  381. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  382. package/dist/collection/utils/types.js +6 -6
  383. package/dist/collection/utils/types.js.map +1 -1
  384. package/dist/components/helpers.js +147 -45
  385. package/dist/components/helpers.js.map +1 -1
  386. package/dist/components/ic-accordion-group.js +38 -21
  387. package/dist/components/ic-accordion-group.js.map +1 -1
  388. package/dist/components/ic-accordion.js +76 -45
  389. package/dist/components/ic-accordion.js.map +1 -1
  390. package/dist/components/ic-alert.js +52 -30
  391. package/dist/components/ic-alert.js.map +1 -1
  392. package/dist/components/ic-back-to-top.js +33 -14
  393. package/dist/components/ic-back-to-top.js.map +1 -1
  394. package/dist/components/ic-badge.js +69 -42
  395. package/dist/components/ic-badge.js.map +1 -1
  396. package/dist/components/ic-breadcrumb-group.js +119 -64
  397. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  398. package/dist/components/ic-breadcrumb2.js +81 -17
  399. package/dist/components/ic-breadcrumb2.js.map +1 -1
  400. package/dist/components/ic-button2.js +190 -79
  401. package/dist/components/ic-button2.js.map +1 -1
  402. package/dist/components/ic-card-vertical.js +98 -74
  403. package/dist/components/ic-card-vertical.js.map +1 -1
  404. package/dist/components/ic-checkbox-group.js +54 -13
  405. package/dist/components/ic-checkbox-group.js.map +1 -1
  406. package/dist/components/ic-checkbox.js +56 -29
  407. package/dist/components/ic-checkbox.js.map +1 -1
  408. package/dist/components/ic-chip.js +68 -31
  409. package/dist/components/ic-chip.js.map +1 -1
  410. package/dist/components/ic-classification-banner.js +21 -5
  411. package/dist/components/ic-classification-banner.js.map +1 -1
  412. package/dist/components/ic-data-list.js +18 -7
  413. package/dist/components/ic-data-list.js.map +1 -1
  414. package/dist/components/ic-data-row.js +31 -18
  415. package/dist/components/ic-data-row.js.map +1 -1
  416. package/dist/components/ic-dialog.js +172 -114
  417. package/dist/components/ic-dialog.js.map +1 -1
  418. package/dist/components/ic-divider2.js +110 -14
  419. package/dist/components/ic-divider2.js.map +1 -1
  420. package/dist/components/ic-empty-state.js +23 -24
  421. package/dist/components/ic-empty-state.js.map +1 -1
  422. package/dist/components/ic-footer-link-group.js +12 -13
  423. package/dist/components/ic-footer-link-group.js.map +1 -1
  424. package/dist/components/ic-footer-link.js +15 -15
  425. package/dist/components/ic-footer-link.js.map +1 -1
  426. package/dist/components/ic-footer.js +52 -30
  427. package/dist/components/ic-footer.js.map +1 -1
  428. package/dist/components/ic-hero.js +36 -33
  429. package/dist/components/ic-hero.js.map +1 -1
  430. package/dist/components/ic-horizontal-scroll2.js +41 -20
  431. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  432. package/dist/components/ic-input-component-container2.js +48 -36
  433. package/dist/components/ic-input-component-container2.js.map +1 -1
  434. package/dist/components/ic-input-container2.js +12 -5
  435. package/dist/components/ic-input-container2.js.map +1 -1
  436. package/dist/components/ic-input-label2.js +43 -24
  437. package/dist/components/ic-input-label2.js.map +1 -1
  438. package/dist/components/ic-input-validation2.js +22 -15
  439. package/dist/components/ic-input-validation2.js.map +1 -1
  440. package/dist/components/ic-link2.js +45 -29
  441. package/dist/components/ic-link2.js.map +1 -1
  442. package/dist/components/ic-loading-indicator2.js +109 -68
  443. package/dist/components/ic-loading-indicator2.js.map +1 -1
  444. package/dist/components/ic-menu-group.js +5 -5
  445. package/dist/components/ic-menu-group.js.map +1 -1
  446. package/dist/components/ic-menu-item2.js +46 -35
  447. package/dist/components/ic-menu-item2.js.map +1 -1
  448. package/dist/components/ic-menu2.js +535 -209
  449. package/dist/components/ic-menu2.js.map +1 -1
  450. package/dist/components/ic-navigation-button.js +33 -24
  451. package/dist/components/ic-navigation-button.js.map +1 -1
  452. package/dist/components/ic-navigation-group.js +72 -44
  453. package/dist/components/ic-navigation-group.js.map +1 -1
  454. package/dist/components/ic-navigation-item.js +118 -43
  455. package/dist/components/ic-navigation-item.js.map +1 -1
  456. package/dist/components/ic-navigation-menu2.js +55 -31
  457. package/dist/components/ic-navigation-menu2.js.map +1 -1
  458. package/dist/components/ic-page-header.js +53 -29
  459. package/dist/components/ic-page-header.js.map +1 -1
  460. package/dist/components/ic-pagination-item2.js +39 -23
  461. package/dist/components/ic-pagination-item2.js.map +1 -1
  462. package/dist/components/ic-pagination.js +77 -34
  463. package/dist/components/ic-pagination.js.map +1 -1
  464. package/dist/components/ic-popover-menu.js +99 -59
  465. package/dist/components/ic-popover-menu.js.map +1 -1
  466. package/dist/components/ic-radio-group.js +105 -47
  467. package/dist/components/ic-radio-group.js.map +1 -1
  468. package/dist/components/ic-radio-option.js +72 -38
  469. package/dist/components/ic-radio-option.js.map +1 -1
  470. package/dist/components/ic-search-bar.js +210 -132
  471. package/dist/components/ic-search-bar.js.map +1 -1
  472. package/dist/components/ic-section-container2.js +11 -4
  473. package/dist/components/ic-section-container2.js.map +1 -1
  474. package/dist/components/ic-select.js +388 -163
  475. package/dist/components/ic-select.js.map +1 -1
  476. package/dist/components/ic-side-navigation.js +119 -79
  477. package/dist/components/ic-side-navigation.js.map +1 -1
  478. package/dist/components/ic-skeleton.js +15 -8
  479. package/dist/components/ic-skeleton.js.map +1 -1
  480. package/dist/components/ic-skip-link.d.ts +11 -0
  481. package/dist/components/ic-skip-link.js +83 -0
  482. package/dist/components/ic-skip-link.js.map +1 -0
  483. package/dist/components/ic-status-tag.js +30 -7
  484. package/dist/components/ic-status-tag.js.map +1 -1
  485. package/dist/components/ic-step.js +37 -35
  486. package/dist/components/ic-step.js.map +1 -1
  487. package/dist/components/ic-stepper.js +61 -35
  488. package/dist/components/ic-stepper.js.map +1 -1
  489. package/dist/components/ic-switch.js +65 -31
  490. package/dist/components/ic-switch.js.map +1 -1
  491. package/dist/components/ic-tab-context.js +116 -154
  492. package/dist/components/ic-tab-context.js.map +1 -1
  493. package/dist/components/ic-tab-group.js +19 -14
  494. package/dist/components/ic-tab-group.js.map +1 -1
  495. package/dist/components/ic-tab-panel.js +22 -16
  496. package/dist/components/ic-tab-panel.js.map +1 -1
  497. package/dist/components/ic-tab.js +32 -22
  498. package/dist/components/ic-tab.js.map +1 -1
  499. package/dist/components/ic-text-field.js +504 -1
  500. package/dist/components/ic-text-field.js.map +1 -1
  501. package/dist/components/ic-theme.js +57 -25
  502. package/dist/components/ic-theme.js.map +1 -1
  503. package/dist/components/ic-toast-region.js +7 -2
  504. package/dist/components/ic-toast-region.js.map +1 -1
  505. package/dist/components/ic-toast.js +29 -22
  506. package/dist/components/ic-toast.js.map +1 -1
  507. package/dist/components/ic-toggle-button-group.js +129 -36
  508. package/dist/components/ic-toggle-button-group.js.map +1 -1
  509. package/dist/components/ic-toggle-button.js +121 -29
  510. package/dist/components/ic-toggle-button.js.map +1 -1
  511. package/dist/components/ic-tooltip2.js +47 -25
  512. package/dist/components/ic-tooltip2.js.map +1 -1
  513. package/dist/components/ic-top-navigation.js +66 -35
  514. package/dist/components/ic-top-navigation.js.map +1 -1
  515. package/dist/components/ic-typography2.js +58 -27
  516. package/dist/components/ic-typography2.js.map +1 -1
  517. package/dist/core/ag-theme-icds.css +218 -0
  518. package/dist/core/core.css +1737 -64
  519. package/dist/core/core.esm.js +1 -1
  520. package/dist/core/core.esm.js.map +1 -1
  521. package/dist/core/index.esm.js.map +1 -1
  522. package/dist/core/p-06d97789.entry.js +2 -0
  523. package/dist/core/p-06d97789.entry.js.map +1 -0
  524. package/dist/core/{p-54238d16.entry.js → p-071f4748.entry.js} +2 -2
  525. package/dist/core/p-071f4748.entry.js.map +1 -0
  526. package/dist/core/p-09070f61.entry.js +2 -0
  527. package/dist/core/p-09070f61.entry.js.map +1 -0
  528. package/dist/core/p-0c0ac69d.entry.js +2 -0
  529. package/dist/core/p-0c0ac69d.entry.js.map +1 -0
  530. package/dist/core/p-0d016565.entry.js +2 -0
  531. package/dist/core/p-0d016565.entry.js.map +1 -0
  532. package/dist/core/p-0e96d4d8.entry.js +2 -0
  533. package/dist/core/p-0e96d4d8.entry.js.map +1 -0
  534. package/dist/core/p-10cd26dc.entry.js +2 -0
  535. package/dist/core/p-10cd26dc.entry.js.map +1 -0
  536. package/dist/core/{p-a87d13b3.entry.js → p-110486f0.entry.js} +2 -2
  537. package/dist/core/p-110486f0.entry.js.map +1 -0
  538. package/dist/core/p-116ad73d.entry.js +2 -0
  539. package/dist/core/p-116ad73d.entry.js.map +1 -0
  540. package/dist/core/p-1171a945.entry.js +2 -0
  541. package/dist/core/p-1171a945.entry.js.map +1 -0
  542. package/dist/core/p-17cf7b50.entry.js +2 -0
  543. package/dist/core/p-17cf7b50.entry.js.map +1 -0
  544. package/dist/core/p-1ac08e6d.entry.js +2 -0
  545. package/dist/core/p-1ac08e6d.entry.js.map +1 -0
  546. package/dist/core/p-1f455336.entry.js +2 -0
  547. package/dist/core/p-1f455336.entry.js.map +1 -0
  548. package/dist/core/p-20c4d90b.entry.js +2 -0
  549. package/dist/core/p-20c4d90b.entry.js.map +1 -0
  550. package/dist/core/p-2537f33e.entry.js +2 -0
  551. package/dist/core/p-2537f33e.entry.js.map +1 -0
  552. package/dist/core/p-264ce7a0.entry.js +2 -0
  553. package/dist/core/p-264ce7a0.entry.js.map +1 -0
  554. package/dist/core/p-28656111.entry.js +2 -0
  555. package/dist/core/p-28656111.entry.js.map +1 -0
  556. package/dist/core/p-2b1a331b.entry.js +2 -0
  557. package/dist/core/p-2b1a331b.entry.js.map +1 -0
  558. package/dist/core/p-33243fff.entry.js +2 -0
  559. package/dist/core/p-33243fff.entry.js.map +1 -0
  560. package/dist/core/p-37df68fe.entry.js +2 -0
  561. package/dist/core/p-37df68fe.entry.js.map +1 -0
  562. package/dist/core/p-3b185c32.js.map +1 -1
  563. package/dist/core/p-426ec638.js.map +1 -1
  564. package/dist/core/p-44e32417.entry.js +2 -0
  565. package/dist/core/p-44e32417.entry.js.map +1 -0
  566. package/dist/core/p-45595f98.entry.js +2 -0
  567. package/dist/core/p-45595f98.entry.js.map +1 -0
  568. package/dist/core/p-49768069.entry.js +2 -0
  569. package/dist/core/p-49768069.entry.js.map +1 -0
  570. package/dist/core/p-4c68494c.entry.js +2 -0
  571. package/dist/core/p-4c68494c.entry.js.map +1 -0
  572. package/dist/core/p-4f2a1950.entry.js +2 -0
  573. package/dist/core/p-4f2a1950.entry.js.map +1 -0
  574. package/dist/core/p-50f4d151.entry.js +2 -0
  575. package/dist/core/p-50f4d151.entry.js.map +1 -0
  576. package/dist/core/p-55a37101.entry.js +2 -0
  577. package/dist/core/p-55a37101.entry.js.map +1 -0
  578. package/dist/core/p-5c349c9d.entry.js +2 -0
  579. package/dist/core/p-5c349c9d.entry.js.map +1 -0
  580. package/dist/core/p-5e1fd097.entry.js +2 -0
  581. package/dist/core/p-5e1fd097.entry.js.map +1 -0
  582. package/dist/core/p-68a5aaff.js.map +1 -1
  583. package/dist/core/p-69e4daec.entry.js +2 -0
  584. package/dist/core/p-69e4daec.entry.js.map +1 -0
  585. package/dist/core/p-701696aa.entry.js +2 -0
  586. package/dist/core/p-701696aa.entry.js.map +1 -0
  587. package/dist/core/p-729745d3.entry.js +2 -0
  588. package/dist/core/p-729745d3.entry.js.map +1 -0
  589. package/dist/core/p-73fc198f.entry.js +2 -0
  590. package/dist/core/p-73fc198f.entry.js.map +1 -0
  591. package/dist/core/p-74600ed8.entry.js +2 -0
  592. package/dist/core/p-74600ed8.entry.js.map +1 -0
  593. package/dist/core/p-78e7a859.entry.js +2 -0
  594. package/dist/core/p-78e7a859.entry.js.map +1 -0
  595. package/dist/core/p-7e79bd0e.entry.js +2 -0
  596. package/dist/core/p-7e79bd0e.entry.js.map +1 -0
  597. package/dist/core/p-7eaf8da8.entry.js +2 -0
  598. package/dist/core/p-7eaf8da8.entry.js.map +1 -0
  599. package/dist/core/p-811d447b.entry.js +2 -0
  600. package/dist/core/p-811d447b.entry.js.map +1 -0
  601. package/dist/core/p-85734ebf.entry.js +2 -0
  602. package/dist/core/p-85734ebf.entry.js.map +1 -0
  603. package/dist/core/p-85b7d931.entry.js +2 -0
  604. package/dist/core/p-85b7d931.entry.js.map +1 -0
  605. package/dist/core/{p-a0e4d6bd.entry.js → p-8856dff4.entry.js} +2 -2
  606. package/dist/core/p-8856dff4.entry.js.map +1 -0
  607. package/dist/core/p-8b268274.entry.js +2 -0
  608. package/dist/core/p-8b268274.entry.js.map +1 -0
  609. package/dist/core/p-8e4e97b4.js +3 -0
  610. package/dist/core/p-8e4e97b4.js.map +1 -0
  611. package/dist/core/p-972671ea.entry.js +2 -0
  612. package/dist/core/p-972671ea.entry.js.map +1 -0
  613. package/dist/core/p-98328cb9.entry.js +2 -0
  614. package/dist/core/p-98328cb9.entry.js.map +1 -0
  615. package/dist/core/p-a103068b.entry.js +2 -0
  616. package/dist/core/p-a103068b.entry.js.map +1 -0
  617. package/dist/core/p-a20a7cd3.entry.js +2 -0
  618. package/dist/core/p-a20a7cd3.entry.js.map +1 -0
  619. package/dist/core/p-a22658fb.entry.js +2 -0
  620. package/dist/core/p-a22658fb.entry.js.map +1 -0
  621. package/dist/core/p-a55e7988.entry.js +2 -0
  622. package/dist/core/p-a55e7988.entry.js.map +1 -0
  623. package/dist/core/p-a71055c9.entry.js +2 -0
  624. package/dist/core/p-a71055c9.entry.js.map +1 -0
  625. package/dist/core/p-a794b724.entry.js +2 -0
  626. package/dist/core/p-a794b724.entry.js.map +1 -0
  627. package/dist/core/p-b21b4fea.entry.js +2 -0
  628. package/dist/core/p-b21b4fea.entry.js.map +1 -0
  629. package/dist/core/p-b953b22f.entry.js +2 -0
  630. package/dist/core/p-b953b22f.entry.js.map +1 -0
  631. package/dist/core/p-c2e091d7.js.map +1 -1
  632. package/dist/core/p-c9726fbd.entry.js +2 -0
  633. package/dist/core/p-c9726fbd.entry.js.map +1 -0
  634. package/dist/core/p-d981598e.entry.js +2 -0
  635. package/dist/core/p-d981598e.entry.js.map +1 -0
  636. package/dist/core/p-d9aec0dd.entry.js +2 -0
  637. package/dist/core/p-d9aec0dd.entry.js.map +1 -0
  638. package/dist/core/p-e1255160.js +2 -0
  639. package/dist/core/p-e1255160.js.map +1 -0
  640. package/dist/core/p-ed8957da.js +2 -0
  641. package/dist/core/p-ed8957da.js.map +1 -0
  642. package/dist/core/p-f074ef5b.js.map +1 -1
  643. package/dist/core/p-f3315216.entry.js +2 -0
  644. package/dist/core/p-f3315216.entry.js.map +1 -0
  645. package/dist/core/p-f34efc17.entry.js +2 -0
  646. package/dist/core/p-f34efc17.entry.js.map +1 -0
  647. package/dist/core/p-f43f411a.entry.js +2 -0
  648. package/dist/core/p-f43f411a.entry.js.map +1 -0
  649. package/dist/core/{p-bf89c86d.entry.js → p-fa02a267.entry.js} +2 -2
  650. package/dist/core/p-fa02a267.entry.js.map +1 -0
  651. package/dist/core/p-ff995eb8.entry.js +2 -0
  652. package/dist/core/p-ff995eb8.entry.js.map +1 -0
  653. package/dist/esm/app-globals-0f993ce5.js +5 -0
  654. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  655. package/dist/esm/core.js +14 -12
  656. package/dist/esm/core.js.map +1 -1
  657. package/dist/esm/{helpers-35ac5e03.js → helpers-dd035d0d.js} +148 -46
  658. package/dist/esm/helpers-dd035d0d.js.map +1 -0
  659. package/dist/esm/ic-accordion-group.entry.js +38 -22
  660. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  661. package/dist/esm/ic-accordion.entry.js +75 -46
  662. package/dist/esm/ic-accordion.entry.js.map +1 -1
  663. package/dist/esm/ic-alert.entry.js +50 -30
  664. package/dist/esm/ic-alert.entry.js.map +1 -1
  665. package/dist/esm/ic-back-to-top.entry.js +32 -16
  666. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  667. package/dist/esm/ic-badge.entry.js +67 -42
  668. package/dist/esm/ic-badge.entry.js.map +1 -1
  669. package/dist/esm/ic-breadcrumb-group.entry.js +114 -63
  670. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  671. package/dist/esm/ic-breadcrumb.entry.js +78 -18
  672. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  673. package/dist/esm/ic-button_3.entry.js +341 -168
  674. package/dist/esm/ic-button_3.entry.js.map +1 -1
  675. package/dist/esm/ic-card-vertical.entry.js +93 -72
  676. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  677. package/dist/esm/ic-checkbox-group.entry.js +51 -14
  678. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  679. package/dist/esm/ic-checkbox.entry.js +55 -31
  680. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  681. package/dist/esm/ic-chip.entry.js +64 -32
  682. package/dist/esm/ic-chip.entry.js.map +1 -1
  683. package/dist/esm/ic-classification-banner.entry.js +22 -6
  684. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  685. package/dist/esm/ic-data-list.entry.js +17 -7
  686. package/dist/esm/ic-data-list.entry.js.map +1 -1
  687. package/dist/esm/ic-data-row.entry.js +31 -20
  688. package/dist/esm/ic-data-row.entry.js.map +1 -1
  689. package/dist/esm/ic-dialog.entry.js +170 -114
  690. package/dist/esm/ic-dialog.entry.js.map +1 -1
  691. package/dist/esm/ic-divider.entry.js +95 -12
  692. package/dist/esm/ic-divider.entry.js.map +1 -1
  693. package/dist/esm/ic-empty-state.entry.js +21 -24
  694. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  695. package/dist/esm/ic-footer-link-group.entry.js +12 -14
  696. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  697. package/dist/esm/ic-footer-link.entry.js +15 -16
  698. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  699. package/dist/esm/ic-footer.entry.js +52 -30
  700. package/dist/esm/ic-footer.entry.js.map +1 -1
  701. package/dist/esm/ic-hero.entry.js +35 -32
  702. package/dist/esm/ic-hero.entry.js.map +1 -1
  703. package/dist/esm/ic-horizontal-scroll.entry.js +40 -21
  704. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  705. package/dist/esm/ic-input-component-container_3.entry.js +587 -244
  706. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  707. package/dist/esm/ic-input-label_2.entry.js +62 -37
  708. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  709. package/dist/esm/ic-link.entry.js +43 -28
  710. package/dist/esm/ic-link.entry.js.map +1 -1
  711. package/dist/esm/ic-menu-group.entry.js +6 -7
  712. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  713. package/dist/esm/ic-menu-item.entry.js +41 -33
  714. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  715. package/dist/esm/ic-navigation-button.entry.js +32 -24
  716. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  717. package/dist/esm/ic-navigation-group.entry.js +69 -44
  718. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  719. package/dist/esm/ic-navigation-item.entry.js +115 -43
  720. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  721. package/dist/esm/ic-navigation-menu.entry.js +55 -33
  722. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  723. package/dist/esm/ic-page-header.entry.js +53 -31
  724. package/dist/esm/ic-page-header.entry.js.map +1 -1
  725. package/dist/esm/ic-pagination-item.entry.js +37 -24
  726. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  727. package/dist/esm/ic-pagination.entry.js +76 -36
  728. package/dist/esm/ic-pagination.entry.js.map +1 -1
  729. package/dist/esm/ic-popover-menu.entry.js +97 -60
  730. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  731. package/dist/esm/ic-radio-group.entry.js +103 -48
  732. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  733. package/dist/esm/ic-radio-option.entry.js +70 -39
  734. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  735. package/dist/esm/ic-search-bar.entry.js +195 -108
  736. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  737. package/dist/esm/ic-section-container.entry.js +12 -5
  738. package/dist/esm/ic-section-container.entry.js.map +1 -1
  739. package/dist/esm/ic-select.entry.js +385 -163
  740. package/dist/esm/ic-select.entry.js.map +1 -1
  741. package/dist/esm/ic-side-navigation.entry.js +119 -79
  742. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  743. package/dist/esm/ic-skeleton.entry.js +15 -8
  744. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  745. package/dist/esm/ic-skip-link.entry.js +51 -0
  746. package/dist/esm/ic-skip-link.entry.js.map +1 -0
  747. package/dist/esm/ic-status-tag.entry.js +30 -10
  748. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  749. package/dist/esm/ic-step.entry.js +37 -37
  750. package/dist/esm/ic-step.entry.js.map +1 -1
  751. package/dist/esm/ic-stepper.entry.js +60 -36
  752. package/dist/esm/ic-stepper.entry.js.map +1 -1
  753. package/dist/esm/ic-switch.entry.js +63 -31
  754. package/dist/esm/ic-switch.entry.js.map +1 -1
  755. package/dist/esm/ic-tab-context.entry.js +112 -152
  756. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  757. package/dist/esm/ic-tab-group.entry.js +18 -14
  758. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  759. package/dist/esm/ic-tab-panel.entry.js +19 -15
  760. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  761. package/dist/esm/ic-tab.entry.js +31 -22
  762. package/dist/esm/ic-tab.entry.js.map +1 -1
  763. package/dist/esm/ic-text-field.entry.js +229 -81
  764. package/dist/esm/ic-text-field.entry.js.map +1 -1
  765. package/dist/esm/ic-theme.entry.js +52 -23
  766. package/dist/esm/ic-theme.entry.js.map +1 -1
  767. package/dist/esm/ic-toast-region.entry.js +8 -3
  768. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  769. package/dist/esm/ic-toast.entry.js +30 -23
  770. package/dist/esm/ic-toast.entry.js.map +1 -1
  771. package/dist/esm/ic-toggle-button-group.entry.js +117 -35
  772. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  773. package/dist/esm/ic-toggle-button.entry.js +110 -23
  774. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  775. package/dist/esm/ic-top-navigation.entry.js +65 -35
  776. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  777. package/dist/esm/ic-typography.entry.js +59 -30
  778. package/dist/esm/ic-typography.entry.js.map +1 -1
  779. package/dist/esm/index-a7a720e7.js +2580 -0
  780. package/dist/esm/index-a7a720e7.js.map +1 -0
  781. package/dist/esm/loader.js +6 -4
  782. package/dist/esm/loader.js.map +1 -1
  783. package/dist/types/components/ic-accordion/ic-accordion.d.ts +10 -8
  784. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +9 -9
  785. package/dist/types/components/ic-alert/ic-alert.d.ts +10 -2
  786. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +11 -2
  787. package/dist/types/components/ic-back-to-top/ic-back-to-top.types.d.ts +1 -0
  788. package/dist/types/components/ic-badge/ic-badge.d.ts +11 -5
  789. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +19 -6
  790. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +16 -9
  791. package/dist/types/components/ic-button/ic-button.d.ts +19 -13
  792. package/dist/types/components/ic-button/ic-button.types.d.ts +0 -1
  793. package/dist/types/components/ic-card-vertical/ic-card-vertical.d.ts +9 -5
  794. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +17 -12
  795. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +15 -8
  796. package/dist/types/components/ic-chip/ic-chip.d.ts +13 -2
  797. package/dist/types/components/ic-data-list/ic-data-list.d.ts +6 -2
  798. package/dist/types/components/ic-data-row/ic-data-row.d.ts +7 -3
  799. package/dist/types/components/ic-dialog/ic-dialog.d.ts +21 -12
  800. package/dist/types/components/ic-divider/ic-divider.d.ts +33 -3
  801. package/dist/types/components/ic-divider/ic-divider.types.d.ts +3 -0
  802. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +5 -2
  803. package/dist/types/components/ic-footer/ic-footer.d.ts +8 -7
  804. package/dist/types/components/ic-footer-link/ic-footer-link.d.ts +3 -3
  805. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +3 -2
  806. package/dist/types/components/ic-hero/ic-hero.d.ts +6 -7
  807. package/dist/types/components/ic-horizontal-scroll/ic-horizontal-scroll.d.ts +8 -2
  808. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +8 -11
  809. package/dist/types/components/ic-input-label/ic-input-label.d.ts +10 -6
  810. package/dist/types/components/ic-input-validation/ic-input-validation.d.ts +4 -4
  811. package/dist/types/components/ic-link/ic-link.d.ts +10 -6
  812. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
  813. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
  814. package/dist/types/components/ic-menu/ic-menu.d.ts +56 -23
  815. package/dist/types/components/ic-menu/ic-menu.types.d.ts +1 -1
  816. package/dist/types/components/ic-menu-item/ic-menu-item.d.ts +13 -6
  817. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +8 -4
  818. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +25 -9
  819. package/dist/types/components/ic-navigation-group/ic-navigation-group.types.d.ts +6 -0
  820. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +22 -11
  821. package/dist/types/components/ic-navigation-menu/ic-navigation-menu.d.ts +10 -3
  822. package/dist/types/components/ic-page-header/ic-page-header.d.ts +5 -1
  823. package/dist/types/components/ic-pagination/ic-pagination.d.ts +19 -14
  824. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +14 -9
  825. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +13 -11
  826. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +15 -10
  827. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +16 -9
  828. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +26 -14
  829. package/dist/types/components/ic-search-bar/ic-search-bar.types.d.ts +1 -1
  830. package/dist/types/components/ic-select/ic-select.d.ts +52 -32
  831. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +15 -15
  832. package/dist/types/components/ic-side-navigation/ic-side-navigation.types.d.ts +2 -2
  833. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -2
  834. package/dist/types/components/ic-skip-link/ic-skip-link.d.ts +33 -0
  835. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +8 -0
  836. package/dist/types/components/ic-step/ic-step.d.ts +5 -0
  837. package/dist/types/components/ic-stepper/ic-stepper.d.ts +7 -5
  838. package/dist/types/components/ic-switch/ic-switch.d.ts +8 -7
  839. package/dist/types/components/ic-tab/ic-tab.d.ts +8 -5
  840. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +19 -12
  841. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +5 -5
  842. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +9 -3
  843. package/dist/types/components/ic-text-field/ic-text-field.d.ts +59 -34
  844. package/dist/types/components/ic-theme/ic-theme.d.ts +15 -8
  845. package/dist/types/components/ic-toast/ic-toast.d.ts +3 -3
  846. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +2 -1
  847. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +17 -8
  848. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +21 -5
  849. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +6 -1
  850. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +16 -12
  851. package/dist/types/components/ic-typography/ic-typography.d.ts +6 -2
  852. package/dist/types/components.d.ts +960 -383
  853. package/dist/types/stencil-public-runtime.d.ts +9 -10
  854. package/dist/types/utils/constants.d.ts +1 -0
  855. package/dist/types/utils/helpers.d.ts +31 -17
  856. package/dist/types/utils/types.d.ts +17 -10
  857. package/hydrate/index.d.ts +53 -12
  858. package/hydrate/index.js +32876 -19763
  859. package/hydrate/index.mjs +34407 -0
  860. package/hydrate/package.json +7 -1
  861. package/loader/cdn.js +1 -3
  862. package/loader/index.cjs.js +1 -3
  863. package/loader/index.d.ts +3 -0
  864. package/loader/index.es2017.js +1 -3
  865. package/loader/index.js +1 -3
  866. package/package.json +21 -20
  867. package/vscode-data.json +1017 -653
  868. package/dist/cjs/helpers-94b33ab0.js.map +0 -1
  869. package/dist/cjs/index-f982899d.js +0 -3047
  870. package/dist/cjs/index-f982899d.js.map +0 -1
  871. package/dist/cjs/types-dc22e301.js +0 -16
  872. package/dist/cjs/types-dc22e301.js.map +0 -1
  873. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js +0 -346
  874. package/dist/collection/components/ic-accordion/test/basic/ic-accordion.spec.js.map +0 -1
  875. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +0 -129
  876. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +0 -1
  877. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js +0 -197
  878. package/dist/collection/components/ic-alert/test/basic/ic-alert.spec.js.map +0 -1
  879. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +0 -131
  880. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +0 -1
  881. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +0 -264
  882. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +0 -1
  883. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +0 -118
  884. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +0 -1
  885. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +0 -219
  886. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +0 -1
  887. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js +0 -332
  888. package/dist/collection/components/ic-button/test/basic/ic-button.spec.js.map +0 -1
  889. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js +0 -173
  890. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +0 -1
  891. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +0 -281
  892. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +0 -1
  893. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +0 -169
  894. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +0 -1
  895. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js +0 -188
  896. package/dist/collection/components/ic-classification-banner/test/basic/ic-classification-banner.spec.js.map +0 -1
  897. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js +0 -161
  898. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +0 -1
  899. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +0 -74
  900. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +0 -1
  901. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +0 -428
  902. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +0 -1
  903. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js +0 -24
  904. package/dist/collection/components/ic-divider/test/basic/ic-divider.spec.js.map +0 -1
  905. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +0 -140
  906. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +0 -1
  907. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js +0 -46
  908. package/dist/collection/components/ic-footer-link/test/basic/ic-footer-link.spec.js.map +0 -1
  909. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +0 -66
  910. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +0 -1
  911. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +0 -91
  912. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +0 -1
  913. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js +0 -180
  914. package/dist/collection/components/ic-horizontal-scroll/test/basic/ic-horizontal-scroll.spec.js.map +0 -1
  915. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +0 -145
  916. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +0 -1
  917. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js +0 -38
  918. package/dist/collection/components/ic-input-container/test/basic/ic-input-container.spec.js.map +0 -1
  919. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +0 -98
  920. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +0 -1
  921. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +0 -89
  922. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +0 -1
  923. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +0 -217
  924. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +0 -1
  925. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +0 -148
  926. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +0 -1
  927. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +0 -760
  928. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +0 -1
  929. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js +0 -94
  930. package/dist/collection/components/ic-menu-group/test/basic/ic-menu-group.spec.js.map +0 -1
  931. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js +0 -108
  932. package/dist/collection/components/ic-menu-item/test/basic/ic-menu-item.spec.js.map +0 -1
  933. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js +0 -95
  934. package/dist/collection/components/ic-navigation-button/test/basic/ic-navigation-button.spec.js.map +0 -1
  935. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js +0 -309
  936. package/dist/collection/components/ic-navigation-group/test/basic/ic-navigation-group.spec.js.map +0 -1
  937. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js +0 -118
  938. package/dist/collection/components/ic-navigation-item/test/basic/ic-navigation-item.spec.js.map +0 -1
  939. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js +0 -176
  940. package/dist/collection/components/ic-navigation-menu/test/basic/ic-navigation-menu.spec.js.map +0 -1
  941. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +0 -291
  942. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +0 -1
  943. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +0 -380
  944. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +0 -1
  945. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js +0 -76
  946. package/dist/collection/components/ic-pagination-item/test/basic/ic-pagination-item.spec.js.map +0 -1
  947. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js +0 -398
  948. package/dist/collection/components/ic-popover-menu/test/basic/ic-popover-menu.spec.js.map +0 -1
  949. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -339
  950. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  951. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +0 -380
  952. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +0 -1
  953. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  954. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  955. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +0 -584
  956. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +0 -1
  957. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js +0 -69
  958. package/dist/collection/components/ic-section-container/test/basic/ic-section-container.spec.js.map +0 -1
  959. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +0 -1439
  960. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +0 -1
  961. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js +0 -503
  962. package/dist/collection/components/ic-side-navigation/test/basic/ic-side-navigation.spec.js.map +0 -1
  963. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +0 -89
  964. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +0 -1
  965. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +0 -43
  966. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +0 -1
  967. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +0 -176
  968. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +0 -1
  969. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  970. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  971. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +0 -752
  972. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +0 -1
  973. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +0 -104
  974. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +0 -1
  975. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +0 -159
  976. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +0 -1
  977. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +0 -390
  978. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +0 -1
  979. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +0 -50
  980. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +0 -1
  981. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +0 -284
  982. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +0 -1
  983. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +0 -341
  984. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +0 -1
  985. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js +0 -72
  986. package/dist/collection/components/ic-theme/test/basic/ic-theme.e2e.js.map +0 -1
  987. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +0 -77
  988. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +0 -1
  989. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +0 -314
  990. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +0 -1
  991. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -64
  992. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +0 -1
  993. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +0 -116
  994. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +0 -1
  995. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +0 -150
  996. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +0 -1
  997. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  998. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  999. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +0 -307
  1000. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +0 -1
  1001. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js +0 -314
  1002. package/dist/collection/components/ic-top-navigation/test/basic/ic-top-navigation.spec.js.map +0 -1
  1003. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  1004. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  1005. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +0 -393
  1006. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +0 -1
  1007. package/dist/collection/testspec.setup.js +0 -63
  1008. package/dist/collection/testspec.setup.js.map +0 -1
  1009. package/dist/components/ic-text-field2.js +0 -354
  1010. package/dist/components/ic-text-field2.js.map +0 -1
  1011. package/dist/components/types.js +0 -16
  1012. package/dist/components/types.js.map +0 -1
  1013. package/dist/core/p-05d32a4f.entry.js +0 -2
  1014. package/dist/core/p-05d32a4f.entry.js.map +0 -1
  1015. package/dist/core/p-086a6d4f.entry.js +0 -2
  1016. package/dist/core/p-086a6d4f.entry.js.map +0 -1
  1017. package/dist/core/p-0a00a786.entry.js +0 -2
  1018. package/dist/core/p-0a00a786.entry.js.map +0 -1
  1019. package/dist/core/p-145fcef3.entry.js +0 -2
  1020. package/dist/core/p-145fcef3.entry.js.map +0 -1
  1021. package/dist/core/p-15367990.entry.js +0 -2
  1022. package/dist/core/p-15367990.entry.js.map +0 -1
  1023. package/dist/core/p-1737bf2c.entry.js +0 -2
  1024. package/dist/core/p-1737bf2c.entry.js.map +0 -1
  1025. package/dist/core/p-1ace2b02.entry.js +0 -2
  1026. package/dist/core/p-1ace2b02.entry.js.map +0 -1
  1027. package/dist/core/p-1e371012.entry.js +0 -2
  1028. package/dist/core/p-1e371012.entry.js.map +0 -1
  1029. package/dist/core/p-1f227289.entry.js +0 -2
  1030. package/dist/core/p-1f227289.entry.js.map +0 -1
  1031. package/dist/core/p-24275b92.entry.js +0 -2
  1032. package/dist/core/p-24275b92.entry.js.map +0 -1
  1033. package/dist/core/p-26b7b18f.js +0 -2
  1034. package/dist/core/p-26b7b18f.js.map +0 -1
  1035. package/dist/core/p-29e6c33f.entry.js +0 -2
  1036. package/dist/core/p-29e6c33f.entry.js.map +0 -1
  1037. package/dist/core/p-2a6f01ad.entry.js +0 -2
  1038. package/dist/core/p-2a6f01ad.entry.js.map +0 -1
  1039. package/dist/core/p-2f86c53b.entry.js +0 -2
  1040. package/dist/core/p-2f86c53b.entry.js.map +0 -1
  1041. package/dist/core/p-319e40c0.entry.js +0 -2
  1042. package/dist/core/p-319e40c0.entry.js.map +0 -1
  1043. package/dist/core/p-346c6920.entry.js +0 -2
  1044. package/dist/core/p-346c6920.entry.js.map +0 -1
  1045. package/dist/core/p-4b1445b3.entry.js +0 -2
  1046. package/dist/core/p-4b1445b3.entry.js.map +0 -1
  1047. package/dist/core/p-4b621c67.entry.js +0 -2
  1048. package/dist/core/p-4b621c67.entry.js.map +0 -1
  1049. package/dist/core/p-4ca2b177.entry.js +0 -2
  1050. package/dist/core/p-4ca2b177.entry.js.map +0 -1
  1051. package/dist/core/p-54238d16.entry.js.map +0 -1
  1052. package/dist/core/p-5515ad19.entry.js +0 -2
  1053. package/dist/core/p-5515ad19.entry.js.map +0 -1
  1054. package/dist/core/p-5c8081d6.entry.js +0 -2
  1055. package/dist/core/p-5c8081d6.entry.js.map +0 -1
  1056. package/dist/core/p-5f941f3a.entry.js +0 -2
  1057. package/dist/core/p-5f941f3a.entry.js.map +0 -1
  1058. package/dist/core/p-5fd293b3.entry.js +0 -2
  1059. package/dist/core/p-5fd293b3.entry.js.map +0 -1
  1060. package/dist/core/p-60721d95.entry.js +0 -2
  1061. package/dist/core/p-60721d95.entry.js.map +0 -1
  1062. package/dist/core/p-64a5a1d8.entry.js +0 -2
  1063. package/dist/core/p-64a5a1d8.entry.js.map +0 -1
  1064. package/dist/core/p-65e36461.entry.js +0 -2
  1065. package/dist/core/p-65e36461.entry.js.map +0 -1
  1066. package/dist/core/p-66363c7d.entry.js +0 -2
  1067. package/dist/core/p-66363c7d.entry.js.map +0 -1
  1068. package/dist/core/p-69728d76.entry.js +0 -2
  1069. package/dist/core/p-69728d76.entry.js.map +0 -1
  1070. package/dist/core/p-6b328c76.entry.js +0 -2
  1071. package/dist/core/p-6b328c76.entry.js.map +0 -1
  1072. package/dist/core/p-6b5ddacd.entry.js +0 -2
  1073. package/dist/core/p-6b5ddacd.entry.js.map +0 -1
  1074. package/dist/core/p-6b5e91e2.js +0 -3
  1075. package/dist/core/p-6b5e91e2.js.map +0 -1
  1076. package/dist/core/p-7b3d6577.entry.js +0 -2
  1077. package/dist/core/p-7b3d6577.entry.js.map +0 -1
  1078. package/dist/core/p-7d45828d.entry.js +0 -2
  1079. package/dist/core/p-7d45828d.entry.js.map +0 -1
  1080. package/dist/core/p-893eca54.entry.js +0 -2
  1081. package/dist/core/p-893eca54.entry.js.map +0 -1
  1082. package/dist/core/p-8ee262a4.entry.js +0 -2
  1083. package/dist/core/p-8ee262a4.entry.js.map +0 -1
  1084. package/dist/core/p-8f93d92b.entry.js +0 -2
  1085. package/dist/core/p-8f93d92b.entry.js.map +0 -1
  1086. package/dist/core/p-90bb13d2.entry.js +0 -2
  1087. package/dist/core/p-90bb13d2.entry.js.map +0 -1
  1088. package/dist/core/p-9189a82d.entry.js +0 -2
  1089. package/dist/core/p-9189a82d.entry.js.map +0 -1
  1090. package/dist/core/p-9190a84d.entry.js +0 -2
  1091. package/dist/core/p-9190a84d.entry.js.map +0 -1
  1092. package/dist/core/p-93f50a1a.entry.js +0 -2
  1093. package/dist/core/p-93f50a1a.entry.js.map +0 -1
  1094. package/dist/core/p-9474baf3.entry.js +0 -2
  1095. package/dist/core/p-9474baf3.entry.js.map +0 -1
  1096. package/dist/core/p-9857f6b0.entry.js +0 -2
  1097. package/dist/core/p-9857f6b0.entry.js.map +0 -1
  1098. package/dist/core/p-a0e4d6bd.entry.js.map +0 -1
  1099. package/dist/core/p-a1b9a808.entry.js +0 -2
  1100. package/dist/core/p-a1b9a808.entry.js.map +0 -1
  1101. package/dist/core/p-a79bec03.entry.js +0 -2
  1102. package/dist/core/p-a79bec03.entry.js.map +0 -1
  1103. package/dist/core/p-a84a4675.entry.js +0 -2
  1104. package/dist/core/p-a84a4675.entry.js.map +0 -1
  1105. package/dist/core/p-a87d13b3.entry.js.map +0 -1
  1106. package/dist/core/p-a928c7b3.entry.js +0 -2
  1107. package/dist/core/p-a928c7b3.entry.js.map +0 -1
  1108. package/dist/core/p-bf89c86d.entry.js.map +0 -1
  1109. package/dist/core/p-d0524c73.js +0 -2
  1110. package/dist/core/p-d0524c73.js.map +0 -1
  1111. package/dist/core/p-d24410ca.entry.js +0 -2
  1112. package/dist/core/p-d24410ca.entry.js.map +0 -1
  1113. package/dist/core/p-d52ca420.entry.js +0 -2
  1114. package/dist/core/p-d52ca420.entry.js.map +0 -1
  1115. package/dist/core/p-d67a30ca.entry.js +0 -2
  1116. package/dist/core/p-d67a30ca.entry.js.map +0 -1
  1117. package/dist/core/p-de27c59e.entry.js +0 -2
  1118. package/dist/core/p-de27c59e.entry.js.map +0 -1
  1119. package/dist/core/p-dec339ba.entry.js +0 -2
  1120. package/dist/core/p-dec339ba.entry.js.map +0 -1
  1121. package/dist/core/p-e4335135.entry.js +0 -2
  1122. package/dist/core/p-e4335135.entry.js.map +0 -1
  1123. package/dist/core/p-e56a2a06.entry.js +0 -2
  1124. package/dist/core/p-e56a2a06.entry.js.map +0 -1
  1125. package/dist/core/p-e696dc2a.entry.js +0 -2
  1126. package/dist/core/p-e696dc2a.entry.js.map +0 -1
  1127. package/dist/core/p-f0501be1.entry.js +0 -2
  1128. package/dist/core/p-f0501be1.entry.js.map +0 -1
  1129. package/dist/core/p-f50462df.entry.js +0 -2
  1130. package/dist/core/p-f50462df.entry.js.map +0 -1
  1131. package/dist/core/p-feb80f37.entry.js +0 -2
  1132. package/dist/core/p-feb80f37.entry.js.map +0 -1
  1133. package/dist/esm/helpers-35ac5e03.js.map +0 -1
  1134. package/dist/esm/index-d1d2c456.js +0 -3016
  1135. package/dist/esm/index-d1d2c456.js.map +0 -1
  1136. package/dist/esm/polyfills/core-js.js +0 -11
  1137. package/dist/esm/polyfills/dom.js +0 -79
  1138. package/dist/esm/polyfills/es5-html-element.js +0 -1
  1139. package/dist/esm/polyfills/index.js +0 -34
  1140. package/dist/esm/polyfills/system.js +0 -6
  1141. package/dist/esm/types-6f6b41a5.js +0 -16
  1142. package/dist/esm/types-6f6b41a5.js.map +0 -1
  1143. package/dist/types/testspec.setup.d.ts +0 -15
@@ -1,7 +1,7 @@
1
1
  import { Host, h, forceUpdate, } from "@stencil/core";
2
- import { getInputDescribedByText, getLabelFromValue, hasValidationStatus, inheritAttributes, onComponentRequiredPropUndefined, renderHiddenInput, isMobileOrTablet, getFilteredMenuOptions, addFormResetListener, removeFormResetListener, removeDisabledFalse, checkSlotInChildMutations, } from "../../utils/helpers";
2
+ import { getInputDescribedByText, getLabelFromValue, hasValidationStatus, inheritAttributes, onComponentRequiredPropUndefined, renderHiddenInput, isMobileOrTablet, getFilteredMenuOptions, getOptionsWithoutGroupTitlesCount, addFormResetListener, removeFormResetListener, removeDisabledFalse, checkSlotInChildMutations, } from "../../utils/helpers";
3
3
  import { IC_INHERITED_ARIA } from "../../utils/constants";
4
- import { IcInformationStatus, IcThemeForegroundEnum, } from "../../utils/types";
4
+ import { IcInformationStatus, } from "../../utils/types";
5
5
  import Expand from "./assets/Expand.svg";
6
6
  import Clear from "./assets/Clear.svg";
7
7
  let inputIds = 0;
@@ -19,14 +19,130 @@ export class Select {
19
19
  this.searchableMenuItemSelected = false;
20
20
  this.ungroupedOptions = [];
21
21
  this.hostMutationObserver = null;
22
+ this.clearButtonFocused = false;
23
+ this.noOptions = null;
24
+ this.open = false;
25
+ this.pressedCharacters = "";
26
+ this.searchableSelectInputValue = null;
27
+ /**
28
+ * If `true`, the disabled state will be set.
29
+ */
30
+ this.disabled = false;
31
+ /**
32
+ * If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source.
33
+ */
34
+ this.disableAutoFiltering = false;
35
+ /**
36
+ * The text displayed when there are no options in the option list.
37
+ */
38
+ this.emptyOptionListText = "No results found";
39
+ /**
40
+ * If `true`, the select will fill the width of the container.
41
+ */
42
+ this.fullWidth = false;
43
+ /**
44
+ * The helper text that will be displayed for additional field guidance.
45
+ */
46
+ this.helperText = "";
47
+ /**
48
+ * If `true`, the label will be hidden and the required label value will be applied as an aria-label.
49
+ */
50
+ this.hideLabel = false;
51
+ /**
52
+ * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering.
53
+ */
54
+ this.includeDescriptionsInSearch = false;
55
+ /**
56
+ * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering.
57
+ */
58
+ this.includeGroupTitlesInSearch = false;
59
+ /**
60
+ * The message displayed when external loading times out.
61
+ */
62
+ this.loadingErrorLabel = "Loading Error";
63
+ /**
64
+ * The message displayed whilst the options are being loaded externally.
65
+ */
66
+ this.loadingLabel = "Loading...";
67
+ /**
68
+ * If `true`, multiple options can be selected.
69
+ */
70
+ this.multiple = false;
71
+ /**
72
+ * The name of the control, which is submitted with the form data.
73
+ */
74
+ this.name = this.inputId;
75
+ /**
76
+ * The placeholder value to be displayed.
77
+ */
78
+ this.placeholder = "Select an option";
79
+ /**
80
+ * If `true`, the readonly state will be set.
81
+ */
82
+ this.readonly = false;
83
+ /**
84
+ * If `true`, the select will require a value.
85
+ */
86
+ this.required = false;
87
+ /**
88
+ * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component.
89
+ */
90
+ this.searchable = false;
91
+ /**
92
+ * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering.
93
+ */
94
+ this.searchMatchPosition = "anywhere";
95
+ /**
96
+ * If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown on the single select.
97
+ */
98
+ this.selectOnEnter = false;
99
+ /**
100
+ * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.
101
+ */
102
+ this.showClearButton = false;
103
+ /**
104
+ * The size of the select.
105
+ */
106
+ this.size = "medium";
107
+ /**
108
+ * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component.
109
+ */
110
+ this.theme = "inherit";
111
+ /**
112
+ * The validation status - e.g. 'error' | 'warning' | 'success'.
113
+ */
114
+ this.validationStatus = "";
115
+ /**
116
+ * The text to display as the validation message.
117
+ */
118
+ this.validationText = "";
119
+ /**
120
+ * If `true`, the loading state will be triggered when fetching options asynchronously.
121
+ */
122
+ this.loading = false;
123
+ /**
124
+ * The possible selection options.
125
+ */
126
+ this.options = [];
127
+ this.filteredOptions = this.options;
128
+ this.uniqueOptions = this.options;
129
+ /**
130
+ * The amount of time, in milliseconds, to wait to trigger the `icInput` event after each keystroke.
131
+ */
132
+ this.debounce = 0;
133
+ this.currDebounce = this.debounce;
134
+ this.initialValue = this.value;
135
+ this.inputValueToFilter = this.value;
22
136
  // triggered when attributes of host element change
23
137
  this.hostMutationCallback = (mutationList) => {
24
138
  let forceComponentUpdate = false;
25
139
  mutationList.forEach(({ attributeName, type, addedNodes, removedNodes }) => {
26
- if (MUTABLE_ATTRIBUTES.includes(attributeName)) {
27
- this.inheritedAttributes[attributeName] =
28
- this.el.getAttribute(attributeName);
29
- forceComponentUpdate = true;
140
+ if (attributeName) {
141
+ const attribute = this.el.getAttribute(attributeName);
142
+ if (attribute && MUTABLE_ATTRIBUTES.includes(attributeName)) {
143
+ this.inheritedAttributes[attributeName] = attribute;
144
+ forceComponentUpdate = true;
145
+ }
30
146
  }
31
147
  else if (type === "childList") {
32
148
  forceComponentUpdate = checkSlotInChildMutations(addedNodes, removedNodes, "icon");
@@ -43,21 +159,26 @@ export class Select {
43
159
  this.blurredBecauseButtonPressed = true;
44
160
  this.retryButtonClick = true;
45
161
  this.hasSetDefaultValue = true;
46
- this.icRetryLoad.emit({ value: this.hiddenInputValue });
162
+ this.icRetryLoad.emit({
163
+ value: this.searchable
164
+ ? this.searchableSelectInputValue
165
+ : this.hiddenInputValue,
166
+ });
47
167
  };
48
168
  this.emitIcChange = (value) => {
49
- if (!this.searchable) {
169
+ // If "Select all" button clicked, replace value with new value (array of all option values)
170
+ if (this.multiple && !Array.isArray(value) && value !== null) {
171
+ this.handleMultipleSelectChange(String(value));
172
+ }
173
+ else {
50
174
  this.value = value;
51
175
  }
52
- clearTimeout(this.debounceIcChange);
53
- this.debounceIcChange = window.setTimeout(() => {
54
- this.icChange.emit({ value: value });
55
- }, this.currDebounce);
176
+ const valueToEmit = this.multiple ? this.value : value;
177
+ this.icChange.emit({ value: valueToEmit || null });
56
178
  };
57
- this.emitImmediateIcChange = (value) => {
58
- this.value = value;
59
- clearTimeout(this.debounceIcChange);
60
- this.icChange.emit({ value: value });
179
+ this.emitIcInput = (value) => {
180
+ clearTimeout(this.debounceIcInput);
181
+ this.debounceIcInput = window.setTimeout(() => this.icInput.emit({ value }), this.currDebounce);
61
182
  };
62
183
  /**
63
184
  * Processes the provided array of IcMenuOptions, removing duplicates and reporting them with a console.warn
@@ -102,8 +223,7 @@ export class Select {
102
223
  * Loop through options array and for all options with no value, infer it from the label
103
224
  */
104
225
  this.setOptionsValuesFromLabels = () => {
105
- var _a;
106
- if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.length) > 0 && this.options.map) {
226
+ if (this.options.length > 0) {
107
227
  this.options.map((option) => {
108
228
  if (!option.value) {
109
229
  option.value = option.label;
@@ -115,11 +235,13 @@ export class Select {
115
235
  this.ungroupedOptions = event.detail.options;
116
236
  };
117
237
  this.setTextColor = () => {
118
- if (this.nativeSelectElement.selectedIndex === 0) {
119
- this.nativeSelectElement.className = "placeholder";
120
- }
121
- else {
122
- this.nativeSelectElement.className = "select-option-selected";
238
+ if (this.nativeSelectElement) {
239
+ if (this.nativeSelectElement.selectedIndex === 0) {
240
+ this.nativeSelectElement.className = "placeholder";
241
+ }
242
+ else {
243
+ this.nativeSelectElement.className = "select-option-selected";
244
+ }
123
245
  }
124
246
  };
125
247
  this.setMenuChange = (open) => {
@@ -130,41 +252,112 @@ export class Select {
130
252
  this.getLabelFromValue = (value) => {
131
253
  return getLabelFromValue(value, this.uniqueOptions);
132
254
  };
255
+ this.getMultipleOptionsString = (selectedValues) => {
256
+ const selectedLabels = selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map((value) => this.getLabelFromValue(value)).filter((label) => !!label);
257
+ return selectedLabels === null || selectedLabels === void 0 ? void 0 : selectedLabels.join(", ");
258
+ };
133
259
  this.getFilteredChildMenuOptions = (option) => {
134
260
  let children = option.children;
135
- if (this.searchable) {
136
- children = getFilteredMenuOptions(option.children, this.includeDescriptionsInSearch, this.searchableSelectInputValue, this.searchMatchPosition);
137
- }
138
- else {
139
- children = getFilteredMenuOptions(option.children, false, this.pressedCharacters, "start");
261
+ if (option.children) {
262
+ if (this.searchable) {
263
+ children = getFilteredMenuOptions(option.children, !!this.includeDescriptionsInSearch, this.searchableSelectInputValue || "", this.searchMatchPosition);
264
+ }
265
+ else {
266
+ children = getFilteredMenuOptions(option.children, false, this.pressedCharacters, "start");
267
+ }
140
268
  }
141
269
  const newOption = Object.assign({}, option);
142
270
  newOption.children = children;
143
271
  return newOption;
144
272
  };
273
+ // (For multi-select) get value array, i.e. selected option values, in order they appear in option list
274
+ this.getValueSortedByOptions = (value) => {
275
+ const valueArray = value;
276
+ const valuesFromAllOptions = this.ungroupedOptions.map((option) => option.value);
277
+ valueArray.sort((a, b) => valuesFromAllOptions.indexOf(a) - valuesFromAllOptions.indexOf(b));
278
+ return valueArray;
279
+ };
145
280
  this.handleNativeSelectChange = () => {
146
- this.icOptionSelect.emit({ value: this.nativeSelectElement.value });
147
- this.emitImmediateIcChange(this.nativeSelectElement.value);
281
+ if (this.nativeSelectElement) {
282
+ this.icOptionSelect.emit({ value: this.nativeSelectElement.value });
283
+ this.emitIcChange(this.nativeSelectElement.value);
284
+ }
148
285
  this.setTextColor();
149
286
  };
287
+ // Handle option select for when a custom input box and menu is rendered
288
+ // (rather than native <select> - rendered when viewed on a mobile / tablet screen)
150
289
  this.handleCustomSelectChange = (event) => {
151
- if (this.searchable && event.detail.label === this.emptyOptionListText) {
152
- this.searchableSelectElement.focus();
290
+ var _a, _b;
291
+ const value = event.detail.value;
292
+ if (event.detail.label === this.emptyOptionListText) {
293
+ (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
153
294
  return;
154
295
  }
155
296
  if (this.searchable) {
156
- this.value = event.detail.value;
297
+ this.value = value;
157
298
  this.searchableMenuItemSelected = true;
158
299
  // After editing the input, if selecting the same option as before, set the input value to label again
159
300
  if (this.value === this.currValue) {
160
- this.searchableSelectInputValue = this.getLabelFromValue(this.value);
301
+ this.searchableSelectInputValue =
302
+ this.getLabelFromValue(this.value) || null;
161
303
  }
162
304
  this.inputValueToFilter = null;
163
- this.hiddenInputValue = this.getValueFromLabel(this.searchableSelectInputValue);
305
+ this.hiddenInputValue =
306
+ this.getValueFromLabel(this.searchableSelectInputValue) || null;
307
+ }
308
+ if (this.multiple && ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(value))) {
309
+ this.icOptionDeselect.emit({ value });
310
+ }
311
+ else {
312
+ this.icOptionSelect.emit({ value });
164
313
  }
165
314
  this.ariaActiveDescendant = event.detail.optionId;
166
- this.icOptionSelect.emit({ value: event.detail.value });
167
- this.emitIcChange(event.detail.value);
315
+ this.emitIcChange(value);
316
+ };
317
+ // Update selected options - adds / removes them, in order of option list
318
+ // Create new array if value prop is undefined
319
+ this.handleMultipleSelectChange = (value) => {
320
+ if (this.value) {
321
+ let valueArray = this.value.slice();
322
+ if (this.value.includes(value)) {
323
+ const valueIndex = valueArray.indexOf(value);
324
+ valueArray.splice(valueIndex, 1);
325
+ }
326
+ else {
327
+ valueArray.push(value);
328
+ valueArray = this.getValueSortedByOptions(valueArray);
329
+ }
330
+ this.value = valueArray.length === 0 ? null : valueArray;
331
+ }
332
+ else {
333
+ const valueArray = [];
334
+ valueArray.push(value);
335
+ this.value = valueArray;
336
+ }
337
+ };
338
+ this.handleSelectAllChange = (event) => {
339
+ const selectAllOptions = event.detail.select;
340
+ const allEnabledOptions = this.ungroupedOptions.filter((option) => !option.disabled);
341
+ const allValues = allEnabledOptions.map((option) => option.value);
342
+ let newValue;
343
+ if (selectAllOptions) {
344
+ let unselectedValues;
345
+ // Only emit icOptionSelect for all values that are newly selected
346
+ if (this.value) {
347
+ unselectedValues = allValues.filter((value) => this.value && !this.value.includes(value));
348
+ }
349
+ else {
350
+ unselectedValues = allValues;
351
+ }
352
+ unselectedValues.forEach((value) => this.icOptionSelect.emit({ value }));
353
+ newValue = allValues;
354
+ }
355
+ else {
356
+ // Only emit icOptionDeselect for values that were selected
357
+ this.value.forEach((value) => this.icOptionDeselect.emit({ value }));
358
+ newValue = null;
359
+ }
360
+ this.emitIcChange(newValue);
168
361
  };
169
362
  this.handleMenuChange = (event) => {
170
363
  this.open = event.detail.open;
@@ -175,18 +368,20 @@ export class Select {
175
368
  // to prevent delay in change event, which should only occur when typing in input
176
369
  this.handleMenuKeyPress = (ev) => {
177
370
  ev.cancelBubble = true;
178
- this.handleCharacterKeyDown(ev.detail.key);
179
- };
180
- this.handleMenuValueChange = (ev) => {
181
- this.value = ev.detail.value;
371
+ if (!this.multiple) {
372
+ this.handleCharacterKeyDown(ev.detail.key);
373
+ }
182
374
  };
183
375
  this.handleFocusIndicatorDisplay = () => {
184
- const focusIndicator = this.el.shadowRoot.querySelector(".focus-indicator");
185
- if (this.open) {
186
- focusIndicator.classList.add("focus-indicator-enabled");
187
- }
188
- else {
189
- focusIndicator.classList.remove("focus-indicator-enabled");
376
+ var _a;
377
+ const focusIndicator = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(".focus-indicator");
378
+ if (focusIndicator) {
379
+ if (this.open) {
380
+ focusIndicator.classList.add("focus-indicator-enabled");
381
+ }
382
+ else {
383
+ focusIndicator.classList.remove("focus-indicator-enabled");
384
+ }
190
385
  }
191
386
  };
192
387
  this.handleMouseDown = (event) => {
@@ -194,10 +389,10 @@ export class Select {
194
389
  event.preventDefault();
195
390
  }
196
391
  };
197
- this.isExternalFiltering = () => this.searchable && this.disableAutoFiltering;
392
+ this.isExternalFiltering = () => this.searchable && !!this.disableAutoFiltering;
198
393
  this.handleClick = (event) => {
199
- var _a;
200
- if (!this.open) {
394
+ var _a, _b;
395
+ if (!this.open && this.menu) {
201
396
  if (this.isExternalFiltering()) {
202
397
  this.menu.options = this.filteredOptions;
203
398
  }
@@ -210,32 +405,31 @@ export class Select {
210
405
  }
211
406
  }
212
407
  if (event.detail !== 0) {
213
- this.menu.handleClickOpen();
408
+ (_b = this.menu) === null || _b === void 0 ? void 0 : _b.handleClickOpen();
214
409
  }
215
410
  };
216
411
  this.handleExpandIconMouseDown = (event) => {
412
+ var _a;
217
413
  if (!this.disabled) {
218
414
  event.preventDefault();
219
- this.searchableSelectElement.focus();
415
+ (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
220
416
  this.handleClick(event);
221
417
  }
222
418
  };
223
419
  this.handleClear = (event) => {
420
+ var _a, _b;
224
421
  event.stopPropagation();
225
422
  this.hasTimedOut = false;
226
423
  clearTimeout(this.timeoutTimer);
227
- this.noOptions = null;
228
- this.emitImmediateIcChange(null);
424
+ this.clearInput();
425
+ this.emitIcChange(null);
229
426
  this.icClear.emit();
230
427
  if (this.searchable) {
231
- this.searchableSelectElement.value = null;
232
- this.searchableSelectInputValue = null;
233
- this.filteredOptions = this.uniqueOptions;
234
428
  this.hiddenInputValue = null;
235
- this.searchableSelectElement.focus();
429
+ (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
236
430
  }
237
431
  else {
238
- this.customSelectElement.focus();
432
+ (_b = this.customSelectElement) === null || _b === void 0 ? void 0 : _b.focus();
239
433
  }
240
434
  };
241
435
  this.handleCharacterKeyDown = (key) => {
@@ -250,10 +444,12 @@ export class Select {
250
444
  if (key.length === 1 && !this.searchable) {
251
445
  window.clearTimeout(this.characterKeyPressTimer);
252
446
  this.characterKeyPressTimer = window.setTimeout(() => (this.pressedCharacters = ""), 1000);
253
- this.pressedCharacters += key;
254
- this.handleFilter();
255
- if (!this.noOptions) {
256
- this.emitImmediateIcChange(this.filteredOptions[0].value);
447
+ if (!(key === " " && !this.pressedCharacters)) {
448
+ this.pressedCharacters += key;
449
+ this.handleFilter();
450
+ if (!this.noOptions) {
451
+ this.emitIcChange(this.filteredOptions[0].value);
452
+ }
257
453
  }
258
454
  }
259
455
  else {
@@ -267,11 +463,12 @@ export class Select {
267
463
  this.handleCharacterKeyDown(event.key);
268
464
  };
269
465
  this.handleKeyDown = (event) => {
466
+ var _a;
270
467
  if ((event.key !== "Escape" && event.key !== "Tab") || this.open) {
271
468
  event.cancelBubble = true;
272
469
  }
273
470
  const isArrowKey = event.key === "ArrowDown" || event.key === "ArrowUp";
274
- if (!this.open) {
471
+ if (this.menu && !this.open) {
275
472
  if (this.isExternalFiltering() && (event.key === "Enter" || isArrowKey)) {
276
473
  this.menu.options = this.filteredOptions;
277
474
  }
@@ -289,9 +486,11 @@ export class Select {
289
486
  if (!(isArrowKey && this.noOptions !== null)) {
290
487
  if (!(event.key === " " && this.pressedCharacters.length > 0)) {
291
488
  // Keyboard events get passed onto ic-menu
292
- this.menu.handleKeyboardOpen(event);
489
+ (_a = this.menu) === null || _a === void 0 ? void 0 : _a.handleKeyboardOpen(event);
490
+ }
491
+ if (!this.multiple) {
492
+ this.handleCharacterKeyDown(event.key);
293
493
  }
294
- this.handleCharacterKeyDown(event.key);
295
494
  }
296
495
  }
297
496
  };
@@ -320,7 +519,7 @@ export class Select {
320
519
  });
321
520
  let menuOptionsFiltered;
322
521
  if (this.searchable) {
323
- menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.inputValueToFilter, this.searchMatchPosition);
522
+ menuOptionsFiltered = getFilteredMenuOptions(options, !!this.includeDescriptionsInSearch, this.inputValueToFilter || "", this.searchMatchPosition);
324
523
  this.searchableMenuItemSelected = false;
325
524
  }
326
525
  else {
@@ -349,7 +548,7 @@ export class Select {
349
548
  if (isGrouped) {
350
549
  noChildOptionsWhenFiltered = true;
351
550
  newFilteredOptions.map((option) => {
352
- if (option.children.length > 0) {
551
+ if (option.children && option.children.length > 0) {
353
552
  noChildOptionsWhenFiltered = false;
354
553
  }
355
554
  });
@@ -391,13 +590,18 @@ export class Select {
391
590
  };
392
591
  this.getValueFromLabel = (label) => {
393
592
  var _a;
394
- return (_a = this.uniqueOptions.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value;
593
+ return (label &&
594
+ ((_a = this.uniqueOptions.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value));
395
595
  };
396
596
  this.handleSearchableSelectInput = (event) => {
397
597
  this.searchableSelectInputValue = event.target.value;
398
- this.icInput.emit({ value: this.searchableSelectInputValue });
399
- this.emitIcChange(this.searchableSelectInputValue);
400
- this.hiddenInputValue = this.searchableSelectInputValue;
598
+ this.emitIcInput(this.searchableSelectInputValue);
599
+ // De-select previous selection when input is edited
600
+ // Only emit icChange once when editing input
601
+ if (this.value != null) {
602
+ this.emitIcChange(null);
603
+ }
604
+ this.hiddenInputValue = null;
401
605
  this.inputValueToFilter = this.searchableSelectInputValue;
402
606
  this.setMenuChange(true);
403
607
  if (!this.disableAutoFiltering) {
@@ -406,7 +610,8 @@ export class Select {
406
610
  }
407
611
  };
408
612
  this.updateSearchableSelectResultAriaLive = () => {
409
- const searchableSelectResultsStatusEl = this.el.shadowRoot.querySelector(".searchable-select-results-status");
613
+ var _a;
614
+ const searchableSelectResultsStatusEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(".searchable-select-results-status");
410
615
  if (searchableSelectResultsStatusEl) {
411
616
  if (this.noOptions !== null) {
412
617
  searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;
@@ -416,7 +621,25 @@ export class Select {
416
621
  }
417
622
  }
418
623
  };
419
- this.getDefaultValue = (value) => this.getLabelFromValue(value) || value || null;
624
+ this.updateMultiSelectedCountAriaLive = () => {
625
+ var _a, _b;
626
+ const multiSelectSelectedCountEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(".multi-select-selected-count");
627
+ const selectedCount = `${(_b = this.currValue) === null || _b === void 0 ? void 0 : _b.length} of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;
628
+ if (multiSelectSelectedCountEl &&
629
+ multiSelectSelectedCountEl.innerText !== selectedCount) {
630
+ multiSelectSelectedCountEl.innerText = selectedCount;
631
+ }
632
+ };
633
+ this.getDefaultValue = (value) => this.getLabelFromValue(value) || null;
634
+ this.setDefaultValue = () => {
635
+ if (!this.hasSetDefaultValue && this.currValue) {
636
+ this.searchableSelectInputValue = this.searchable
637
+ ? this.getDefaultValue(this.currValue)
638
+ : null;
639
+ this.initialValue = this.currValue;
640
+ this.hasSetDefaultValue = true;
641
+ }
642
+ };
420
643
  this.onFocus = () => {
421
644
  this.icFocus.emit();
422
645
  };
@@ -438,6 +661,10 @@ export class Select {
438
661
  if (isSearchableAndNoFocusedInternalElements) {
439
662
  if (!this.retryButtonClick) {
440
663
  this.setMenuChange(false);
664
+ // Clear input field on blur when searchable if no option is selected
665
+ if (!this.value) {
666
+ this.clearInput();
667
+ }
441
668
  }
442
669
  this.handleFocusIndicatorDisplay();
443
670
  }
@@ -461,59 +688,29 @@ export class Select {
461
688
  this.hiddenInputValue = this.value;
462
689
  }
463
690
  };
464
- this.ariaActiveDescendant = undefined;
465
- this.clearButtonFocused = false;
466
- this.debounceIcChange = undefined;
467
- this.hiddenInputValue = undefined;
468
- this.noOptions = null;
469
- this.open = false;
470
- this.pressedCharacters = "";
471
- this.searchableSelectInputValue = null;
472
- this.disabled = false;
473
- this.disableAutoFiltering = false;
474
- this.emptyOptionListText = "No results found";
475
- this.form = undefined;
476
- this.fullWidth = false;
477
- this.helperText = "";
478
- this.hideLabel = false;
479
- this.includeDescriptionsInSearch = false;
480
- this.includeGroupTitlesInSearch = false;
481
- this.label = undefined;
482
- this.loadingErrorLabel = "Loading Error";
483
- this.loadingLabel = "Loading...";
484
- this.name = this.inputId;
485
- this.placeholder = "Select an option";
486
- this.readonly = false;
487
- this.required = false;
488
- this.searchable = false;
489
- this.searchMatchPosition = "anywhere";
490
- this.selectOnEnter = false;
491
- this.showClearButton = false;
492
- this.size = "default";
493
- this.timeout = undefined;
494
- this.validationStatus = "";
495
- this.validationText = "";
496
- this.loading = false;
497
- this.options = [];
498
- this.filteredOptions = this.options;
499
- this.uniqueOptions = this.options;
500
- this.debounce = 0;
501
- this.currDebounce = this.debounce;
502
- this.value = undefined;
503
- this.initialValue = this.value;
504
- this.inputValueToFilter = this.value;
505
- this.currValue = this.value;
691
+ this.clearInput = () => {
692
+ var _a;
693
+ this.noOptions = null;
694
+ if (this.searchable) {
695
+ (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.setAttribute("value", "");
696
+ this.searchableSelectInputValue = null;
697
+ this.filteredOptions = this.uniqueOptions;
698
+ }
699
+ };
700
+ }
701
+ watchDisabledHandler() {
702
+ removeDisabledFalse(this.disabled, this.el);
506
703
  }
507
704
  loadingHandler(newValue) {
508
705
  newValue && this.triggerLoading();
509
706
  }
510
707
  watchOptionsHandler() {
511
- var _a;
512
- if (!this.hasTimedOut) {
708
+ if (!this.hasTimedOut && this.options !== this.noOptions) {
513
709
  this.loading = false;
514
710
  clearTimeout(this.timeoutTimer);
515
711
  if (this.isExternalFiltering()) {
516
- if (((_a = this.options) === null || _a === void 0 ? void 0 : _a.length) > 0) {
712
+ // When searchable select
713
+ if (this.options.length > 0) {
517
714
  this.setOptionsValuesFromLabels();
518
715
  this.noOptions = null;
519
716
  this.uniqueOptions = this.deduplicateOptions(this.options);
@@ -539,7 +736,7 @@ export class Select {
539
736
  }
540
737
  else {
541
738
  if (!this.searchable) {
542
- this.options = this.noOptions;
739
+ this.options = this.noOptions || [];
543
740
  }
544
741
  }
545
742
  }
@@ -548,11 +745,22 @@ export class Select {
548
745
  }
549
746
  valueChangedHandler() {
550
747
  if (this.value !== this.currValue) {
551
- this.currValue = this.value;
748
+ if (this.value && this.multiple) {
749
+ this.currValue = this.getMultipleOptionsString(this.value)
750
+ ? this.getValueSortedByOptions(this.value)
751
+ : null;
752
+ this.updateMultiSelectedCountAriaLive();
753
+ }
754
+ else {
755
+ this.currValue = this.getLabelFromValue(this.value)
756
+ ? this.value
757
+ : null;
758
+ }
552
759
  }
553
- if (this.searchable) {
760
+ if (this.searchable && this.value) {
761
+ // Only set if value not null - prevents whole input value being cleared when edited
554
762
  this.searchableSelectInputValue =
555
- this.getLabelFromValue(this.currValue) || this.currValue;
763
+ this.getLabelFromValue(String(this.currValue)) || null;
556
764
  }
557
765
  }
558
766
  openChangedHandler() {
@@ -564,12 +772,15 @@ export class Select {
564
772
  (_a = this.hostMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
565
773
  }
566
774
  componentWillLoad() {
567
- var _a;
775
+ const valueInOptions = this.multiple
776
+ ? this.getMultipleOptionsString(this.value)
777
+ : this.getLabelFromValue(this.value);
778
+ this.currValue = valueInOptions ? this.value : null;
568
779
  this.inheritedAttributes = inheritAttributes(this.el, MUTABLE_ATTRIBUTES);
569
780
  removeDisabledFalse(this.disabled, this.el);
570
781
  this.setOptionsValuesFromLabels();
571
782
  addFormResetListener(this.el, this.handleFormReset);
572
- if (!((_a = this.options) === null || _a === void 0 ? void 0 : _a.length)) {
783
+ if (!this.options.length) {
573
784
  this.initialOptionsEmpty = true;
574
785
  this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
575
786
  this.uniqueOptions = this.noOptions;
@@ -585,7 +796,9 @@ export class Select {
585
796
  if (this.loading) {
586
797
  this.triggerLoading();
587
798
  }
588
- this.hiddenInputValue = this.searchable && this.currValue;
799
+ if (this.searchable) {
800
+ this.hiddenInputValue = this.currValue;
801
+ }
589
802
  this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);
590
803
  this.hostMutationObserver.observe(this.el, {
591
804
  attributes: true,
@@ -622,64 +835,71 @@ export class Select {
622
835
  this.updateSearchableSelectResultAriaLive();
623
836
  }, 800);
624
837
  }
625
- setDefaultValue() {
626
- if (!this.hasSetDefaultValue && this.currValue) {
627
- this.searchableSelectInputValue = this.getDefaultValue(this.currValue);
628
- this.initialValue = this.currValue;
629
- this.hasSetDefaultValue = true;
630
- }
631
- }
632
838
  render() {
633
- const { size, disabled, fullWidth, helperText, hideLabel, label, menuId, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, } = this;
634
- renderHiddenInput(true, this.el, name, this.searchable ? this.hiddenInputValue : currValue, disabled);
635
- const invalid = validationStatus === IcInformationStatus.Error ? "true" : "false";
636
- const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, this.disabled)).trim();
839
+ const { size, disabled, fullWidth, helperText, hideLabel, label, menuId, multiple, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, theme, } = this;
840
+ // HTML inputs only accept 'string' for their value
841
+ // Does not cause errors when it is a multi-select - sets value correctly, to a comma-separated string
842
+ renderHiddenInput(true, this.el, name || this.inputId, this.searchable ? this.hiddenInputValue : currValue, disabled);
843
+ const invalid = `${validationStatus === IcInformationStatus.Error}`;
844
+ const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, !!this.disabled)).trim();
637
845
  let showLeftIcon = !!this.el.querySelector(`[slot="icon"]`);
638
846
  if (showLeftIcon && (disabled || (readonly && !this.value))) {
639
847
  showLeftIcon = false;
640
848
  }
641
- return (h(Host, { class: {
642
- ["ic-select-disabled"]: disabled,
643
- ["ic-select-searchable"]: searchable,
644
- [`ic-select-${size}`]: size !== "default",
645
- ["ic-select-full-width"]: fullWidth,
646
- }, onBlur: this.onBlur }, h("ic-input-container", { readonly: readonly }, !hideLabel && (h("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, showLeftIcon && (h("span", { slot: "left-icon", class: {
647
- ["readonly"]: readonly,
849
+ const optionsSelectedCount = `${currValue === null || currValue === void 0 ? void 0 : currValue.length} of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;
850
+ const valueLabelString = multiple
851
+ ? this.getMultipleOptionsString(currValue)
852
+ : this.getLabelFromValue(currValue);
853
+ const isClearable = !disabled &&
854
+ (searchable
855
+ ? this.searchableSelectInputValue
856
+ : currValue && showClearButton);
857
+ return (h(Host, { key: '0c1e3c9c3f0f02e6c90f477a92227645bbb383be', class: {
858
+ "ic-select-disabled": !!disabled,
859
+ "ic-select-searchable": !!searchable,
860
+ [`ic-select-${size}`]: size !== "medium",
861
+ "ic-select-full-width": !!fullWidth,
862
+ [`ic-theme-${theme}`]: theme !== "inherit",
863
+ }, onBlur: this.onBlur }, h("ic-input-container", { key: 'd5717cb6d0f74236066e5d21979d19a52d39afcd', readonly: readonly }, !hideLabel && (h("ic-input-label", { key: '1bcbd58fcdad81bc02911dc405b554aa03552b6b', for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { key: '72401753a0b711ba9ff7f5b574085fd5fc3e2215', ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, showLeftIcon && (h("span", { key: 'b1d8d94dddea38195ca54d546e894aef314698ee', slot: "left-icon", class: {
864
+ ["readonly"]: !!readonly,
648
865
  ["has-value"]: !!this.value,
649
- } }, h("slot", { name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet() ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
866
+ } }, h("slot", { key: '47c722f6b782b628a33c05bad04613ba0ffa17e9', name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, valueLabelString))) : isMobileOrTablet() && !multiple ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
650
867
  if (option.children) {
651
868
  return (h("optgroup", { label: option.label }, option.children.map((option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
652
869
  }
653
870
  else {
654
871
  return (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label));
655
872
  }
656
- }))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: "select-input", role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": this.open ? "true" : "false", "aria-invalid": invalid, "aria-required": required ? "true" : "false", "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: this.form }), this.searchableSelectInputValue &&
657
- (showClearButton || searchable) && (h("div", { class: "clear-button-container" }, h("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": this.searchableSelectInputValue && currValue === null
873
+ }))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: {
874
+ "select-input": true,
875
+ "with-clear-button": !!this.searchableSelectInputValue,
876
+ }, role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": `${this.open}`, "aria-invalid": invalid, "aria-required": `${required}`, "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue || undefined, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: this.form }), isClearable && (h("div", { class: "clear-button-container" }, h("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": this.searchableSelectInputValue && currValue === null
658
877
  ? "Clear input"
659
- : "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", appearance: this.clearButtonFocused
660
- ? IcThemeForegroundEnum.Light
661
- : IcThemeForegroundEnum.Dark }), h("div", { class: "divider" }))), h("span", { onMouseDown: this.handleExpandIconMouseDown, class: {
878
+ : "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: this.clearButtonFocused ? "light" : "dark" }), h("div", { class: "divider" }))), h("span", { onMouseDown: this.handleExpandIconMouseDown, class: {
662
879
  "expand-icon": true,
663
880
  "expand-icon-open": this.open,
664
- "expand-icon-filled": !(currValue == null || currValue === ""),
665
- }, innerHTML: Expand, "aria-hidden": "true" }), h("div", { "aria-live": "polite", role: "status", class: "searchable-select-results-status" }))) : (h("div", { class: "select-container" }, h("button", { class: "select-input", ref: (el) => (this.customSelectElement = el), id: this.inputId, "aria-label": `${label}, ${this.getLabelFromValue(currValue) || placeholder}${required ? ", required" : ""}`, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-haspopup": "listbox", "aria-expanded": this.open ? "true" : "false", "aria-owns": menuId, "aria-controls": menuId, disabled: disabled, onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.handleClick, onMouseDown: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("ic-typography", { variant: "body", class: {
881
+ }, innerHTML: Expand, "aria-hidden": "true" }), h("div", { "aria-live": "polite", role: "status", class: "searchable-select-results-status" }))) : (h("div", { class: "select-container" }, h("button", { class: "select-input", ref: (el) => (this.customSelectElement = el), id: this.inputId, "aria-label": `${label}, ${(multiple && currValue
882
+ ? `${optionsSelectedCount}, ${valueLabelString}`
883
+ : valueLabelString) || placeholder}${required ? ", required" : ""}`, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-haspopup": "listbox", "aria-expanded": this.open ? "true" : "false", "aria-owns": menuId, "aria-controls": menuId, disabled: disabled, onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.handleClick, onMouseDown: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("ic-typography", { variant: "body", class: {
666
884
  "value-text": true,
667
- placeholder: this.getLabelFromValue(currValue) === undefined,
668
- } }, this.getLabelFromValue(currValue) || placeholder), h("div", { class: "select-input-end" }, currValue && showClearButton && (h("div", { class: "divider" })), h("span", { class: {
885
+ "with-clear-button": !!isClearable,
886
+ placeholder: multiple
887
+ ? !this.value || this.value.length < 1
888
+ : !this.getLabelFromValue(currValue),
889
+ } }, valueLabelString || placeholder), h("div", { class: "select-input-end" }, isClearable && h("div", { class: "divider" }), h("span", { class: {
669
890
  "expand-icon": true,
670
891
  "expand-icon-open": this.open,
671
- "expand-icon-filled": !(currValue == null || currValue === ""),
672
- }, innerHTML: Expand, "aria-hidden": "true" }))), currValue && showClearButton && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", appearance: this.clearButtonFocused
673
- ? IcThemeForegroundEnum.Light
674
- : IcThemeForegroundEnum.Dark }))))), !isMobileOrTablet() && (h("ic-menu", { class: {
892
+ }, innerHTML: Expand, "aria-hidden": "true" }))), isClearable && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: this.clearButtonFocused ? "light" : "dark" }))))), (!isMobileOrTablet() || multiple) && (h("ic-menu", { key: 'f34f8aeca465e1f2cf7b721c06f58e4a0bab4ac3', class: {
675
893
  "no-results": this.loading ||
676
894
  this.hasTimedOut ||
677
895
  (this.noOptions !== null &&
678
896
  this.noOptions[0] &&
679
897
  this.noOptions[0].label === this.emptyOptionListText),
680
- }, ref: (el) => (this.menu = el), inputEl: searchable
898
+ }, ref: (el) => (this.menu = el), inputEl: (searchable
681
899
  ? this.searchableSelectElement
682
- : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : this.uniqueOptions, value: currValue, fullWidth: fullWidth, selectOnEnter: this.selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onMenuValueChange: this.handleMenuValueChange, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable || this.selectOnEnter ? "manual" : "automatic" })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
900
+ : this.customSelectElement), inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : this.uniqueOptions, value: multiple ? currValue : currValue, fullWidth: fullWidth, selectOnEnter: this.selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuOptionSelectAll: this.handleSelectAllChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable || multiple || this.selectOnEnter
901
+ ? "manual"
902
+ : "automatic", closeOnSelect: !multiple })), this.multiple && (h("div", { key: '4f7d83b5ce52b334acf98de594c02ad34a58f2f6', "aria-live": "polite", role: "status", class: "multi-select-selected-count" })), hasValidationStatus(this.validationStatus, !!this.disabled) && (h("ic-input-validation", { key: '3405974e038368a51105ba901a499e4234df5944', class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText || "", for: this.inputId })))));
683
903
  }
684
904
  static get is() { return "ic-select"; }
685
905
  static get encapsulation() { return "shadow"; }
@@ -701,7 +921,7 @@ export class Select {
701
921
  "mutable": false,
702
922
  "complexType": {
703
923
  "original": "boolean",
704
- "resolved": "boolean",
924
+ "resolved": "boolean | undefined",
705
925
  "references": {}
706
926
  },
707
927
  "required": false,
@@ -710,6 +930,8 @@ export class Select {
710
930
  "tags": [],
711
931
  "text": "If `true`, the disabled state will be set."
712
932
  },
933
+ "getter": false,
934
+ "setter": false,
713
935
  "attribute": "disabled",
714
936
  "reflect": true,
715
937
  "defaultValue": "false"
@@ -719,7 +941,7 @@ export class Select {
719
941
  "mutable": false,
720
942
  "complexType": {
721
943
  "original": "boolean",
722
- "resolved": "boolean",
944
+ "resolved": "boolean | undefined",
723
945
  "references": {}
724
946
  },
725
947
  "required": false,
@@ -728,6 +950,8 @@ export class Select {
728
950
  "tags": [],
729
951
  "text": "If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source."
730
952
  },
953
+ "getter": false,
954
+ "setter": false,
731
955
  "attribute": "disable-auto-filtering",
732
956
  "reflect": false,
733
957
  "defaultValue": "false"
@@ -737,15 +961,17 @@ export class Select {
737
961
  "mutable": false,
738
962
  "complexType": {
739
963
  "original": "string",
740
- "resolved": "string",
964
+ "resolved": "string | undefined",
741
965
  "references": {}
742
966
  },
743
967
  "required": false,
744
- "optional": false,
968
+ "optional": true,
745
969
  "docs": {
746
970
  "tags": [],
747
971
  "text": "The text displayed when there are no options in the option list."
748
972
  },
973
+ "getter": false,
974
+ "setter": false,
749
975
  "attribute": "empty-option-list-text",
750
976
  "reflect": false,
751
977
  "defaultValue": "\"No results found\""
@@ -755,7 +981,7 @@ export class Select {
755
981
  "mutable": false,
756
982
  "complexType": {
757
983
  "original": "string",
758
- "resolved": "string",
984
+ "resolved": "string | undefined",
759
985
  "references": {}
760
986
  },
761
987
  "required": false,
@@ -764,6 +990,8 @@ export class Select {
764
990
  "tags": [],
765
991
  "text": "The <form> element to associate the select with."
766
992
  },
993
+ "getter": false,
994
+ "setter": false,
767
995
  "attribute": "form",
768
996
  "reflect": false
769
997
  },
@@ -772,15 +1000,17 @@ export class Select {
772
1000
  "mutable": false,
773
1001
  "complexType": {
774
1002
  "original": "boolean",
775
- "resolved": "boolean",
1003
+ "resolved": "boolean | undefined",
776
1004
  "references": {}
777
1005
  },
778
1006
  "required": false,
779
- "optional": false,
1007
+ "optional": true,
780
1008
  "docs": {
781
1009
  "tags": [],
782
- "text": "If `true`, the select element will fill the width of the container. This prop should only be used with searchable select and will only be applied if searchable is true."
1010
+ "text": "If `true`, the select will fill the width of the container."
783
1011
  },
1012
+ "getter": false,
1013
+ "setter": false,
784
1014
  "attribute": "full-width",
785
1015
  "reflect": false,
786
1016
  "defaultValue": "false"
@@ -790,7 +1020,7 @@ export class Select {
790
1020
  "mutable": false,
791
1021
  "complexType": {
792
1022
  "original": "string",
793
- "resolved": "string",
1023
+ "resolved": "string | undefined",
794
1024
  "references": {}
795
1025
  },
796
1026
  "required": false,
@@ -799,6 +1029,8 @@ export class Select {
799
1029
  "tags": [],
800
1030
  "text": "The helper text that will be displayed for additional field guidance."
801
1031
  },
1032
+ "getter": false,
1033
+ "setter": false,
802
1034
  "attribute": "helper-text",
803
1035
  "reflect": false,
804
1036
  "defaultValue": "\"\""
@@ -808,7 +1040,7 @@ export class Select {
808
1040
  "mutable": false,
809
1041
  "complexType": {
810
1042
  "original": "boolean",
811
- "resolved": "boolean",
1043
+ "resolved": "boolean | undefined",
812
1044
  "references": {}
813
1045
  },
814
1046
  "required": false,
@@ -817,6 +1049,8 @@ export class Select {
817
1049
  "tags": [],
818
1050
  "text": "If `true`, the label will be hidden and the required label value will be applied as an aria-label."
819
1051
  },
1052
+ "getter": false,
1053
+ "setter": false,
820
1054
  "attribute": "hide-label",
821
1055
  "reflect": false,
822
1056
  "defaultValue": "false"
@@ -826,7 +1060,7 @@ export class Select {
826
1060
  "mutable": false,
827
1061
  "complexType": {
828
1062
  "original": "boolean",
829
- "resolved": "boolean",
1063
+ "resolved": "boolean | undefined",
830
1064
  "references": {}
831
1065
  },
832
1066
  "required": false,
@@ -835,6 +1069,8 @@ export class Select {
835
1069
  "tags": [],
836
1070
  "text": "If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering."
837
1071
  },
1072
+ "getter": false,
1073
+ "setter": false,
838
1074
  "attribute": "include-descriptions-in-search",
839
1075
  "reflect": false,
840
1076
  "defaultValue": "false"
@@ -844,7 +1080,7 @@ export class Select {
844
1080
  "mutable": false,
845
1081
  "complexType": {
846
1082
  "original": "boolean",
847
- "resolved": "boolean",
1083
+ "resolved": "boolean | undefined",
848
1084
  "references": {}
849
1085
  },
850
1086
  "required": false,
@@ -853,6 +1089,8 @@ export class Select {
853
1089
  "tags": [],
854
1090
  "text": "If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering."
855
1091
  },
1092
+ "getter": false,
1093
+ "setter": false,
856
1094
  "attribute": "include-group-titles-in-search",
857
1095
  "reflect": false,
858
1096
  "defaultValue": "false"
@@ -871,6 +1109,8 @@ export class Select {
871
1109
  "tags": [],
872
1110
  "text": "The label for the select."
873
1111
  },
1112
+ "getter": false,
1113
+ "setter": false,
874
1114
  "attribute": "label",
875
1115
  "reflect": false
876
1116
  },
@@ -879,7 +1119,7 @@ export class Select {
879
1119
  "mutable": false,
880
1120
  "complexType": {
881
1121
  "original": "string",
882
- "resolved": "string",
1122
+ "resolved": "string | undefined",
883
1123
  "references": {}
884
1124
  },
885
1125
  "required": false,
@@ -888,6 +1128,8 @@ export class Select {
888
1128
  "tags": [],
889
1129
  "text": "The message displayed when external loading times out."
890
1130
  },
1131
+ "getter": false,
1132
+ "setter": false,
891
1133
  "attribute": "loading-error-label",
892
1134
  "reflect": false,
893
1135
  "defaultValue": "\"Loading Error\""
@@ -897,7 +1139,7 @@ export class Select {
897
1139
  "mutable": false,
898
1140
  "complexType": {
899
1141
  "original": "string",
900
- "resolved": "string",
1142
+ "resolved": "string | undefined",
901
1143
  "references": {}
902
1144
  },
903
1145
  "required": false,
@@ -906,16 +1148,38 @@ export class Select {
906
1148
  "tags": [],
907
1149
  "text": "The message displayed whilst the options are being loaded externally."
908
1150
  },
1151
+ "getter": false,
1152
+ "setter": false,
909
1153
  "attribute": "loading-label",
910
1154
  "reflect": false,
911
1155
  "defaultValue": "\"Loading...\""
912
1156
  },
1157
+ "multiple": {
1158
+ "type": "boolean",
1159
+ "mutable": false,
1160
+ "complexType": {
1161
+ "original": "boolean",
1162
+ "resolved": "boolean | undefined",
1163
+ "references": {}
1164
+ },
1165
+ "required": false,
1166
+ "optional": true,
1167
+ "docs": {
1168
+ "tags": [],
1169
+ "text": "If `true`, multiple options can be selected."
1170
+ },
1171
+ "getter": false,
1172
+ "setter": false,
1173
+ "attribute": "multiple",
1174
+ "reflect": false,
1175
+ "defaultValue": "false"
1176
+ },
913
1177
  "name": {
914
1178
  "type": "string",
915
1179
  "mutable": false,
916
1180
  "complexType": {
917
1181
  "original": "string",
918
- "resolved": "string",
1182
+ "resolved": "string | undefined",
919
1183
  "references": {}
920
1184
  },
921
1185
  "required": false,
@@ -924,6 +1188,8 @@ export class Select {
924
1188
  "tags": [],
925
1189
  "text": "The name of the control, which is submitted with the form data."
926
1190
  },
1191
+ "getter": false,
1192
+ "setter": false,
927
1193
  "attribute": "name",
928
1194
  "reflect": false,
929
1195
  "defaultValue": "this.inputId"
@@ -933,7 +1199,7 @@ export class Select {
933
1199
  "mutable": false,
934
1200
  "complexType": {
935
1201
  "original": "string",
936
- "resolved": "string",
1202
+ "resolved": "string | undefined",
937
1203
  "references": {}
938
1204
  },
939
1205
  "required": false,
@@ -942,6 +1208,8 @@ export class Select {
942
1208
  "tags": [],
943
1209
  "text": "The placeholder value to be displayed."
944
1210
  },
1211
+ "getter": false,
1212
+ "setter": false,
945
1213
  "attribute": "placeholder",
946
1214
  "reflect": false,
947
1215
  "defaultValue": "\"Select an option\""
@@ -951,7 +1219,7 @@ export class Select {
951
1219
  "mutable": false,
952
1220
  "complexType": {
953
1221
  "original": "boolean",
954
- "resolved": "boolean",
1222
+ "resolved": "boolean | undefined",
955
1223
  "references": {}
956
1224
  },
957
1225
  "required": false,
@@ -960,6 +1228,8 @@ export class Select {
960
1228
  "tags": [],
961
1229
  "text": "If `true`, the readonly state will be set."
962
1230
  },
1231
+ "getter": false,
1232
+ "setter": false,
963
1233
  "attribute": "readonly",
964
1234
  "reflect": false,
965
1235
  "defaultValue": "false"
@@ -969,7 +1239,7 @@ export class Select {
969
1239
  "mutable": false,
970
1240
  "complexType": {
971
1241
  "original": "boolean",
972
- "resolved": "boolean",
1242
+ "resolved": "boolean | undefined",
973
1243
  "references": {}
974
1244
  },
975
1245
  "required": false,
@@ -978,6 +1248,8 @@ export class Select {
978
1248
  "tags": [],
979
1249
  "text": "If `true`, the select will require a value."
980
1250
  },
1251
+ "getter": false,
1252
+ "setter": false,
981
1253
  "attribute": "required",
982
1254
  "reflect": false,
983
1255
  "defaultValue": "false"
@@ -987,15 +1259,17 @@ export class Select {
987
1259
  "mutable": false,
988
1260
  "complexType": {
989
1261
  "original": "boolean",
990
- "resolved": "boolean",
1262
+ "resolved": "boolean | undefined",
991
1263
  "references": {}
992
1264
  },
993
1265
  "required": false,
994
1266
  "optional": true,
995
1267
  "docs": {
996
1268
  "tags": [],
997
- "text": "If `true`, a searchable variant of the select will be displayed which can be typed in to filter options."
1269
+ "text": "If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component."
998
1270
  },
1271
+ "getter": false,
1272
+ "setter": false,
999
1273
  "attribute": "searchable",
1000
1274
  "reflect": false,
1001
1275
  "defaultValue": "false"
@@ -1005,7 +1279,7 @@ export class Select {
1005
1279
  "mutable": false,
1006
1280
  "complexType": {
1007
1281
  "original": "IcSearchMatchPositions",
1008
- "resolved": "\"anywhere\" | \"start\"",
1282
+ "resolved": "\"anywhere\" | \"start\" | undefined",
1009
1283
  "references": {
1010
1284
  "IcSearchMatchPositions": {
1011
1285
  "location": "import",
@@ -1020,6 +1294,8 @@ export class Select {
1020
1294
  "tags": [],
1021
1295
  "text": "Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering."
1022
1296
  },
1297
+ "getter": false,
1298
+ "setter": false,
1023
1299
  "attribute": "search-match-position",
1024
1300
  "reflect": false,
1025
1301
  "defaultValue": "\"anywhere\""
@@ -1029,15 +1305,17 @@ export class Select {
1029
1305
  "mutable": false,
1030
1306
  "complexType": {
1031
1307
  "original": "boolean",
1032
- "resolved": "boolean",
1308
+ "resolved": "boolean | undefined",
1033
1309
  "references": {}
1034
1310
  },
1035
1311
  "required": false,
1036
1312
  "optional": true,
1037
1313
  "docs": {
1038
1314
  "tags": [],
1039
- "text": "If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown."
1315
+ "text": "If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown on the single select."
1040
1316
  },
1317
+ "getter": false,
1318
+ "setter": false,
1041
1319
  "attribute": "select-on-enter",
1042
1320
  "reflect": false,
1043
1321
  "defaultValue": "false"
@@ -1047,7 +1325,7 @@ export class Select {
1047
1325
  "mutable": false,
1048
1326
  "complexType": {
1049
1327
  "original": "boolean",
1050
- "resolved": "boolean",
1328
+ "resolved": "boolean | undefined",
1051
1329
  "references": {}
1052
1330
  },
1053
1331
  "required": false,
@@ -1056,6 +1334,8 @@ export class Select {
1056
1334
  "tags": [],
1057
1335
  "text": "If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select."
1058
1336
  },
1337
+ "getter": false,
1338
+ "setter": false,
1059
1339
  "attribute": "show-clear-button",
1060
1340
  "reflect": false,
1061
1341
  "defaultValue": "false"
@@ -1065,7 +1345,7 @@ export class Select {
1065
1345
  "mutable": false,
1066
1346
  "complexType": {
1067
1347
  "original": "IcSizes",
1068
- "resolved": "\"default\" | \"large\" | \"small\"",
1348
+ "resolved": "\"large\" | \"medium\" | \"small\" | undefined",
1069
1349
  "references": {
1070
1350
  "IcSizes": {
1071
1351
  "location": "import",
@@ -1078,18 +1358,20 @@ export class Select {
1078
1358
  "optional": true,
1079
1359
  "docs": {
1080
1360
  "tags": [],
1081
- "text": "The size of the select component."
1361
+ "text": "The size of the select."
1082
1362
  },
1363
+ "getter": false,
1364
+ "setter": false,
1083
1365
  "attribute": "size",
1084
1366
  "reflect": false,
1085
- "defaultValue": "\"default\""
1367
+ "defaultValue": "\"medium\""
1086
1368
  },
1087
1369
  "timeout": {
1088
1370
  "type": "number",
1089
1371
  "mutable": false,
1090
1372
  "complexType": {
1091
1373
  "original": "number",
1092
- "resolved": "number",
1374
+ "resolved": "number | undefined",
1093
1375
  "references": {}
1094
1376
  },
1095
1377
  "required": false,
@@ -1098,15 +1380,43 @@ export class Select {
1098
1380
  "tags": [],
1099
1381
  "text": "If using external filtering, set a timeout for when loading takes too long."
1100
1382
  },
1383
+ "getter": false,
1384
+ "setter": false,
1101
1385
  "attribute": "timeout",
1102
1386
  "reflect": false
1103
1387
  },
1388
+ "theme": {
1389
+ "type": "string",
1390
+ "mutable": false,
1391
+ "complexType": {
1392
+ "original": "IcThemeMode",
1393
+ "resolved": "\"dark\" | \"inherit\" | \"light\" | undefined",
1394
+ "references": {
1395
+ "IcThemeMode": {
1396
+ "location": "import",
1397
+ "path": "../../utils/types",
1398
+ "id": "src/utils/types.ts::IcThemeMode"
1399
+ }
1400
+ }
1401
+ },
1402
+ "required": false,
1403
+ "optional": true,
1404
+ "docs": {
1405
+ "tags": [],
1406
+ "text": "Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component."
1407
+ },
1408
+ "getter": false,
1409
+ "setter": false,
1410
+ "attribute": "theme",
1411
+ "reflect": false,
1412
+ "defaultValue": "\"inherit\""
1413
+ },
1104
1414
  "validationStatus": {
1105
1415
  "type": "string",
1106
1416
  "mutable": false,
1107
1417
  "complexType": {
1108
1418
  "original": "IcInformationStatusOrEmpty",
1109
- "resolved": "\"\" | \"error\" | \"success\" | \"warning\"",
1419
+ "resolved": "\"\" | \"error\" | \"success\" | \"warning\" | undefined",
1110
1420
  "references": {
1111
1421
  "IcInformationStatusOrEmpty": {
1112
1422
  "location": "import",
@@ -1121,6 +1431,8 @@ export class Select {
1121
1431
  "tags": [],
1122
1432
  "text": "The validation status - e.g. 'error' | 'warning' | 'success'."
1123
1433
  },
1434
+ "getter": false,
1435
+ "setter": false,
1124
1436
  "attribute": "validation-status",
1125
1437
  "reflect": false,
1126
1438
  "defaultValue": "\"\""
@@ -1130,7 +1442,7 @@ export class Select {
1130
1442
  "mutable": false,
1131
1443
  "complexType": {
1132
1444
  "original": "string",
1133
- "resolved": "string",
1445
+ "resolved": "string | undefined",
1134
1446
  "references": {}
1135
1447
  },
1136
1448
  "required": false,
@@ -1139,6 +1451,8 @@ export class Select {
1139
1451
  "tags": [],
1140
1452
  "text": "The text to display as the validation message."
1141
1453
  },
1454
+ "getter": false,
1455
+ "setter": false,
1142
1456
  "attribute": "validation-text",
1143
1457
  "reflect": false,
1144
1458
  "defaultValue": "\"\""
@@ -1148,7 +1462,7 @@ export class Select {
1148
1462
  "mutable": true,
1149
1463
  "complexType": {
1150
1464
  "original": "boolean",
1151
- "resolved": "boolean",
1465
+ "resolved": "boolean | undefined",
1152
1466
  "references": {}
1153
1467
  },
1154
1468
  "required": false,
@@ -1157,6 +1471,8 @@ export class Select {
1157
1471
  "tags": [],
1158
1472
  "text": "If `true`, the loading state will be triggered when fetching options asynchronously."
1159
1473
  },
1474
+ "getter": false,
1475
+ "setter": false,
1160
1476
  "attribute": "loading",
1161
1477
  "reflect": false,
1162
1478
  "defaultValue": "false"
@@ -1166,7 +1482,7 @@ export class Select {
1166
1482
  "mutable": false,
1167
1483
  "complexType": {
1168
1484
  "original": "IcMenuOption[]",
1169
- "resolved": "IcMenuOption[]",
1485
+ "resolved": "IcMenuOption[] | undefined",
1170
1486
  "references": {
1171
1487
  "IcMenuOption": {
1172
1488
  "location": "import",
@@ -1181,6 +1497,8 @@ export class Select {
1181
1497
  "tags": [],
1182
1498
  "text": "The possible selection options."
1183
1499
  },
1500
+ "getter": false,
1501
+ "setter": false,
1184
1502
  "defaultValue": "[]"
1185
1503
  },
1186
1504
  "debounce": {
@@ -1188,15 +1506,17 @@ export class Select {
1188
1506
  "mutable": false,
1189
1507
  "complexType": {
1190
1508
  "original": "number",
1191
- "resolved": "number",
1509
+ "resolved": "number | undefined",
1192
1510
  "references": {}
1193
1511
  },
1194
1512
  "required": false,
1195
1513
  "optional": true,
1196
1514
  "docs": {
1197
1515
  "tags": [],
1198
- "text": "The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke."
1516
+ "text": "The amount of time, in milliseconds, to wait to trigger the `icInput` event after each keystroke."
1199
1517
  },
1518
+ "getter": false,
1519
+ "setter": false,
1200
1520
  "attribute": "debounce",
1201
1521
  "reflect": false,
1202
1522
  "defaultValue": "0"
@@ -1205,16 +1525,18 @@ export class Select {
1205
1525
  "type": "string",
1206
1526
  "mutable": true,
1207
1527
  "complexType": {
1208
- "original": "string",
1209
- "resolved": "string",
1528
+ "original": "string | string[] | null",
1529
+ "resolved": "null | string | string[] | undefined",
1210
1530
  "references": {}
1211
1531
  },
1212
1532
  "required": false,
1213
1533
  "optional": true,
1214
1534
  "docs": {
1215
1535
  "tags": [],
1216
- "text": "The value of the select, reflected by the value of the currently selected option. For the searchable variant, the value is also reflected by the user input."
1536
+ "text": "The value of the select, reflected by the value of the currently selected option.\nFor the searchable variant, the value is also reflected by the user input.\nFor the multi-select variant, the value must be an array of option values."
1217
1537
  },
1538
+ "getter": false,
1539
+ "setter": false,
1218
1540
  "attribute": "value",
1219
1541
  "reflect": false
1220
1542
  }
@@ -1224,7 +1546,7 @@ export class Select {
1224
1546
  return {
1225
1547
  "ariaActiveDescendant": {},
1226
1548
  "clearButtonFocused": {},
1227
- "debounceIcChange": {},
1549
+ "debounceIcInput": {},
1228
1550
  "hiddenInputValue": {},
1229
1551
  "noOptions": {},
1230
1552
  "open": {},
@@ -1265,13 +1587,13 @@ export class Select {
1265
1587
  "text": "Emitted when the value changes."
1266
1588
  },
1267
1589
  "complexType": {
1268
- "original": "IcValueEventDetail",
1269
- "resolved": "IcValueEventDetail",
1590
+ "original": "IcMultiValueEventDetail",
1591
+ "resolved": "IcMultiValueEventDetail",
1270
1592
  "references": {
1271
- "IcValueEventDetail": {
1593
+ "IcMultiValueEventDetail": {
1272
1594
  "location": "import",
1273
1595
  "path": "../../utils/types",
1274
- "id": "src/utils/types.ts::IcValueEventDetail"
1596
+ "id": "src/utils/types.ts::IcMultiValueEventDetail"
1275
1597
  }
1276
1598
  }
1277
1599
  }
@@ -1283,7 +1605,7 @@ export class Select {
1283
1605
  "composed": true,
1284
1606
  "docs": {
1285
1607
  "tags": [],
1286
- "text": "Emitted when the clear button is clicked."
1608
+ "text": "Emitted when the clear or clear all button is clicked."
1287
1609
  },
1288
1610
  "complexType": {
1289
1611
  "original": "void",
@@ -1331,13 +1653,13 @@ export class Select {
1331
1653
  "text": "Emitted when a keyboard input occurred."
1332
1654
  },
1333
1655
  "complexType": {
1334
- "original": "IcValueEventDetail",
1335
- "resolved": "IcValueEventDetail",
1656
+ "original": "IcMultiValueEventDetail",
1657
+ "resolved": "IcMultiValueEventDetail",
1336
1658
  "references": {
1337
- "IcValueEventDetail": {
1659
+ "IcMultiValueEventDetail": {
1338
1660
  "location": "import",
1339
1661
  "path": "../../utils/types",
1340
- "id": "src/utils/types.ts::IcValueEventDetail"
1662
+ "id": "src/utils/types.ts::IcMultiValueEventDetail"
1341
1663
  }
1342
1664
  }
1343
1665
  }
@@ -1364,7 +1686,28 @@ export class Select {
1364
1686
  "composed": true,
1365
1687
  "docs": {
1366
1688
  "tags": [],
1367
- "text": "Emitted when an option is highlighted within the menu.\nHighlighting a menu item will also trigger an `icChange/onIcChange` due to the value being updated."
1689
+ "text": "Emitted when an option is selected.\nSelecting an option will also trigger an `icChange/onIcChange` due to the value being updated."
1690
+ },
1691
+ "complexType": {
1692
+ "original": "IcOptionSelectEventDetail",
1693
+ "resolved": "IcOptionSelectEventDetail",
1694
+ "references": {
1695
+ "IcOptionSelectEventDetail": {
1696
+ "location": "import",
1697
+ "path": "../ic-menu/ic-menu.types",
1698
+ "id": "src/components/ic-menu/ic-menu.types.ts::IcOptionSelectEventDetail"
1699
+ }
1700
+ }
1701
+ }
1702
+ }, {
1703
+ "method": "icOptionDeselect",
1704
+ "name": "icOptionDeselect",
1705
+ "bubbles": true,
1706
+ "cancelable": true,
1707
+ "composed": true,
1708
+ "docs": {
1709
+ "tags": [],
1710
+ "text": "Emitted when `multiple` is `true` and an option is deselected."
1368
1711
  },
1369
1712
  "complexType": {
1370
1713
  "original": "IcOptionSelectEventDetail",
@@ -1388,13 +1731,13 @@ export class Select {
1388
1731
  "text": "Emitted when the 'retry loading' button is clicked for a searchable variant."
1389
1732
  },
1390
1733
  "complexType": {
1391
- "original": "IcValueEventDetail",
1392
- "resolved": "IcValueEventDetail",
1734
+ "original": "IcMultiValueEventDetail",
1735
+ "resolved": "IcMultiValueEventDetail",
1393
1736
  "references": {
1394
- "IcValueEventDetail": {
1737
+ "IcMultiValueEventDetail": {
1395
1738
  "location": "import",
1396
1739
  "path": "../../utils/types",
1397
- "id": "src/utils/types.ts::IcValueEventDetail"
1740
+ "id": "src/utils/types.ts::IcMultiValueEventDetail"
1398
1741
  }
1399
1742
  }
1400
1743
  }
@@ -1424,6 +1767,9 @@ export class Select {
1424
1767
  static get elementRef() { return "el"; }
1425
1768
  static get watchers() {
1426
1769
  return [{
1770
+ "propName": "disabled",
1771
+ "methodName": "watchDisabledHandler"
1772
+ }, {
1427
1773
  "propName": "loading",
1428
1774
  "methodName": "loadingHandler"
1429
1775
  }, {