@ukic/web-components 2.1.0-beta.6 → 2.1.0-beta.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (594) hide show
  1. package/dist/cjs/{check-icon-999d9877.js → check-icon-b2f60716.js} +2 -2
  2. package/dist/cjs/check-icon-b2f60716.js.map +1 -0
  3. package/dist/cjs/{chevron-icon-d175fe66.js → chevron-icon-2645d6b0.js} +2 -2
  4. package/dist/cjs/chevron-icon-2645d6b0.js.map +1 -0
  5. package/dist/cjs/core.cjs.js +1 -1
  6. package/dist/cjs/{error-icon-99504103.js → error-icon-9af90abc.js} +7 -5
  7. package/dist/cjs/error-icon-9af90abc.js.map +1 -0
  8. package/dist/cjs/{helpers-81484ceb.js → helpers-5f391578.js} +7 -2
  9. package/dist/cjs/helpers-5f391578.js.map +1 -0
  10. package/dist/cjs/ic-alert.cjs.entry.js +10 -8
  11. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +5 -4
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-breadcrumb.cjs.entry.js +11 -3
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-button_3.cjs.entry.js +6 -19
  18. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-card.cjs.entry.js +14 -3
  20. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox-group.cjs.entry.js +3 -3
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox.cjs.entry.js +12 -3
  24. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-chip.cjs.entry.js +11 -3
  26. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-entity.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-row.cjs.entry.js +13 -11
  32. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-divider.cjs.entry.js +2 -2
  34. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-footer-link-group.cjs.entry.js +2 -2
  36. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-footer-link.cjs.entry.js +2 -2
  38. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-footer.cjs.entry.js +2 -2
  40. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-hero.cjs.entry.js +2 -2
  42. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +43 -27
  44. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-input-label_2.cjs.entry.js +4 -4
  46. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-link.cjs.entry.js +10 -4
  48. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
  50. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-navigation-group.cjs.entry.js +4 -4
  52. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-navigation-item.cjs.entry.js +4 -4
  54. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-menu.cjs.entry.js +2 -2
  56. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-page-header.cjs.entry.js +3 -3
  58. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-radio-group.cjs.entry.js +12 -3
  60. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-radio-option.cjs.entry.js +12 -4
  62. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-search-bar.cjs.entry.js +16 -20
  64. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-select.cjs.entry.js +131 -59
  66. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-side-navigation.cjs.entry.js +16 -8
  68. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  70. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-step.cjs.entry.js +2 -2
  72. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-stepper.cjs.entry.js +12 -9
  74. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-switch.cjs.entry.js +10 -2
  76. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -4
  78. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  80. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-tab.cjs.entry.js +9 -1
  82. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-text-field.cjs.entry.js +4 -4
  84. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  86. package/dist/cjs/ic-top-navigation.cjs.entry.js +10 -5
  87. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  88. package/dist/cjs/loader.cjs.js +1 -1
  89. package/dist/cjs/{success-icon-887b2097.js → success-icon-c8fec63d.js} +4 -3
  90. package/dist/cjs/success-icon-c8fec63d.js.map +1 -0
  91. package/dist/cjs/types-3eb02246.js.map +1 -1
  92. package/dist/collection/assets/back-icon.svg +1 -1
  93. package/dist/collection/assets/check-icon.svg +1 -1
  94. package/dist/collection/assets/chevron-icon.svg +1 -1
  95. package/dist/collection/assets/dismiss-icon.svg +1 -1
  96. package/dist/collection/assets/error-icon.svg +2 -2
  97. package/dist/collection/assets/info-icon.svg +2 -2
  98. package/dist/collection/assets/neutral-icon.svg +2 -2
  99. package/dist/collection/assets/success-icon.svg +2 -2
  100. package/dist/collection/assets/warning-icon.svg +2 -2
  101. package/dist/collection/components/ic-alert/ic-alert.css +13 -13
  102. package/dist/collection/components/ic-back-to-top/assets/ArrowUpward.svg +2 -2
  103. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +12 -6
  104. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +28 -0
  105. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  106. package/dist/collection/components/ic-button/ic-button.css +16 -15
  107. package/dist/collection/components/ic-button/ic-button.js +3 -19
  108. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  109. package/dist/collection/components/ic-card/ic-card.css +4 -4
  110. package/dist/collection/components/ic-card/ic-card.js +32 -1
  111. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  112. package/dist/collection/components/ic-checkbox/ic-checkbox.css +28 -30
  113. package/dist/collection/components/ic-checkbox/ic-checkbox.js +33 -1
  114. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  115. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +18 -2
  116. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +1 -1
  117. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  118. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js +1 -1
  119. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.test.a11y.js.map +1 -1
  120. package/dist/collection/components/ic-chip/ic-chip.css +11 -10
  121. package/dist/collection/components/ic-chip/ic-chip.js +28 -0
  122. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  123. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +1 -1
  124. package/dist/collection/components/ic-data-entity/ic-data-entity.css +1 -1
  125. package/dist/collection/components/ic-data-row/ic-data-row.css +7 -7
  126. package/dist/collection/components/ic-data-row/ic-data-row.js +11 -9
  127. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  128. package/dist/collection/components/ic-divider/ic-divider.css +1 -1
  129. package/dist/collection/components/ic-footer/ic-footer.css +4 -4
  130. package/dist/collection/components/ic-footer-link/ic-footer-link.css +1 -1
  131. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +1 -1
  132. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js +1 -1
  133. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.test.a11y.js.map +1 -1
  134. package/dist/collection/components/ic-hero/ic-hero.css +35 -30
  135. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +16 -15
  136. package/dist/collection/components/ic-input-container/ic-input-container.css +0 -1
  137. package/dist/collection/components/ic-input-validation/ic-input-validation.css +4 -5
  138. package/dist/collection/components/ic-link/ic-link.css +0 -9
  139. package/dist/collection/components/ic-link/ic-link.js +29 -3
  140. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  141. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +5 -5
  142. package/dist/collection/components/ic-menu/ic-menu.css +14 -13
  143. package/dist/collection/components/ic-menu/ic-menu.js +71 -44
  144. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  145. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +2 -2
  146. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  147. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +8 -6
  148. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +2 -2
  149. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  150. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +20 -12
  151. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +2 -2
  152. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  153. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +10 -10
  154. package/dist/collection/components/ic-page-header/ic-page-header.css +5 -5
  155. package/dist/collection/components/ic-page-header/ic-page-header.js +1 -1
  156. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  157. package/dist/collection/components/ic-radio-group/ic-radio-group.css +32 -0
  158. package/dist/collection/components/ic-radio-group/ic-radio-group.js +34 -2
  159. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  160. package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js +1 -1
  161. package/dist/collection/components/ic-radio-group/ic-radio-group.test.a11y.js.map +1 -1
  162. package/dist/collection/components/ic-radio-option/ic-radio-option.css +25 -34
  163. package/dist/collection/components/ic-radio-option/ic-radio-option.js +30 -2
  164. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  165. package/dist/collection/components/ic-search-bar/ic-search-bar.css +12 -14
  166. package/dist/collection/components/ic-search-bar/ic-search-bar.js +15 -31
  167. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  168. package/dist/collection/components/ic-select/assets/Expand.svg +1 -1
  169. package/dist/collection/components/ic-select/ic-select.css +27 -15
  170. package/dist/collection/components/ic-select/ic-select.js +226 -62
  171. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  172. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +37 -25
  173. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +16 -7
  174. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  175. package/dist/collection/components/ic-status-tag/ic-status-tag.css +7 -7
  176. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  177. package/dist/collection/components/ic-step/ic-step.css +11 -10
  178. package/dist/collection/components/ic-stepper/ic-stepper.js +12 -9
  179. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  180. package/dist/collection/components/ic-switch/ic-switch.css +19 -19
  181. package/dist/collection/components/ic-switch/ic-switch.js +28 -0
  182. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  183. package/dist/collection/components/ic-tab/ic-tab.css +1 -1
  184. package/dist/collection/components/ic-tab/ic-tab.js +28 -0
  185. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  186. package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js +1 -1
  187. package/dist/collection/components/ic-tab-context/ic-tab-context.test.a11y.js.map +1 -1
  188. package/dist/collection/components/ic-tab-group/ic-tab-group.css +5 -5
  189. package/dist/collection/components/ic-tab-group/ic-tab-group.js +3 -3
  190. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  191. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +4 -0
  192. package/dist/collection/components/ic-text-field/ic-text-field.css +6 -7
  193. package/dist/collection/components/ic-text-field/ic-text-field.js +4 -4
  194. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  195. package/dist/collection/components/ic-tooltip/ic-tooltip.css +3 -3
  196. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +23 -17
  197. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +11 -5
  198. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  199. package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js +1 -1
  200. package/dist/collection/components/ic-top-navigation/ic-top-navigation.test.a11y.js.map +1 -1
  201. package/dist/collection/utils/helpers.js +5 -1
  202. package/dist/collection/utils/helpers.js.map +1 -1
  203. package/dist/collection/utils/types.js.map +1 -1
  204. package/dist/components/check-icon.js +1 -1
  205. package/dist/components/chevron-icon.js +1 -1
  206. package/dist/components/error-icon.js +6 -4
  207. package/dist/components/error-icon.js.map +1 -1
  208. package/dist/components/helpers.js +6 -2
  209. package/dist/components/helpers.js.map +1 -1
  210. package/dist/components/ic-alert.js +7 -5
  211. package/dist/components/ic-alert.js.map +1 -1
  212. package/dist/components/ic-back-to-top.js +4 -3
  213. package/dist/components/ic-back-to-top.js.map +1 -1
  214. package/dist/components/ic-breadcrumb2.js +11 -2
  215. package/dist/components/ic-breadcrumb2.js.map +1 -1
  216. package/dist/components/ic-button2.js +3 -16
  217. package/dist/components/ic-button2.js.map +1 -1
  218. package/dist/components/ic-card.js +14 -2
  219. package/dist/components/ic-card.js.map +1 -1
  220. package/dist/components/ic-checkbox-group.js +2 -2
  221. package/dist/components/ic-checkbox-group.js.map +1 -1
  222. package/dist/components/ic-checkbox.js +13 -3
  223. package/dist/components/ic-checkbox.js.map +1 -1
  224. package/dist/components/ic-chip.js +12 -3
  225. package/dist/components/ic-chip.js.map +1 -1
  226. package/dist/components/ic-classification-banner.js +1 -1
  227. package/dist/components/ic-classification-banner.js.map +1 -1
  228. package/dist/components/ic-data-entity.js +1 -1
  229. package/dist/components/ic-data-entity.js.map +1 -1
  230. package/dist/components/ic-data-row.js +12 -10
  231. package/dist/components/ic-data-row.js.map +1 -1
  232. package/dist/components/ic-divider2.js +1 -1
  233. package/dist/components/ic-divider2.js.map +1 -1
  234. package/dist/components/ic-footer-link-group.js +1 -1
  235. package/dist/components/ic-footer-link-group.js.map +1 -1
  236. package/dist/components/ic-footer-link.js +1 -1
  237. package/dist/components/ic-footer-link.js.map +1 -1
  238. package/dist/components/ic-footer.js +1 -1
  239. package/dist/components/ic-footer.js.map +1 -1
  240. package/dist/components/ic-hero.js +1 -1
  241. package/dist/components/ic-hero.js.map +1 -1
  242. package/dist/components/ic-input-component-container2.js +1 -1
  243. package/dist/components/ic-input-component-container2.js.map +1 -1
  244. package/dist/components/ic-input-container2.js +1 -1
  245. package/dist/components/ic-input-container2.js.map +1 -1
  246. package/dist/components/ic-input-label2.js +1 -1
  247. package/dist/components/ic-input-validation2.js +2 -2
  248. package/dist/components/ic-input-validation2.js.map +1 -1
  249. package/dist/components/ic-link2.js +11 -4
  250. package/dist/components/ic-link2.js.map +1 -1
  251. package/dist/components/ic-loading-indicator2.js +1 -1
  252. package/dist/components/ic-loading-indicator2.js.map +1 -1
  253. package/dist/components/ic-menu2.js +39 -23
  254. package/dist/components/ic-menu2.js.map +1 -1
  255. package/dist/components/ic-navigation-button.js +1 -1
  256. package/dist/components/ic-navigation-button.js.map +1 -1
  257. package/dist/components/ic-navigation-group.js +2 -2
  258. package/dist/components/ic-navigation-group.js.map +1 -1
  259. package/dist/components/ic-navigation-item.js +2 -2
  260. package/dist/components/ic-navigation-item.js.map +1 -1
  261. package/dist/components/ic-navigation-menu2.js +2 -2
  262. package/dist/components/ic-navigation-menu2.js.map +1 -1
  263. package/dist/components/ic-page-header.js +3 -3
  264. package/dist/components/ic-page-header.js.map +1 -1
  265. package/dist/components/ic-radio-group.js +13 -3
  266. package/dist/components/ic-radio-group.js.map +1 -1
  267. package/dist/components/ic-radio-option.js +13 -4
  268. package/dist/components/ic-radio-option.js.map +1 -1
  269. package/dist/components/ic-search-bar.js +16 -20
  270. package/dist/components/ic-search-bar.js.map +1 -1
  271. package/dist/components/ic-select.js +134 -58
  272. package/dist/components/ic-select.js.map +1 -1
  273. package/dist/components/ic-side-navigation.js +14 -6
  274. package/dist/components/ic-side-navigation.js.map +1 -1
  275. package/dist/components/ic-status-tag.js +1 -1
  276. package/dist/components/ic-status-tag.js.map +1 -1
  277. package/dist/components/ic-step.js +1 -1
  278. package/dist/components/ic-step.js.map +1 -1
  279. package/dist/components/ic-stepper.js +12 -9
  280. package/dist/components/ic-stepper.js.map +1 -1
  281. package/dist/components/ic-switch.js +11 -2
  282. package/dist/components/ic-switch.js.map +1 -1
  283. package/dist/components/ic-tab-group.js +4 -4
  284. package/dist/components/ic-tab-group.js.map +1 -1
  285. package/dist/components/ic-tab-panel.js +1 -1
  286. package/dist/components/ic-tab-panel.js.map +1 -1
  287. package/dist/components/ic-tab.js +11 -2
  288. package/dist/components/ic-tab.js.map +1 -1
  289. package/dist/components/ic-text-field2.js +4 -4
  290. package/dist/components/ic-text-field2.js.map +1 -1
  291. package/dist/components/ic-theme.js +1 -1
  292. package/dist/components/ic-tooltip2.js +1 -1
  293. package/dist/components/ic-tooltip2.js.map +1 -1
  294. package/dist/components/ic-top-navigation.js +10 -5
  295. package/dist/components/ic-top-navigation.js.map +1 -1
  296. package/dist/components/success-icon.js +3 -2
  297. package/dist/components/success-icon.js.map +1 -1
  298. package/dist/components/types.js.map +1 -1
  299. package/dist/core/core.css +1 -1
  300. package/dist/core/core.esm.js +1 -1
  301. package/dist/core/core.esm.js.map +1 -1
  302. package/dist/core/p-01ebd24d.entry.js +2 -0
  303. package/dist/core/p-01ebd24d.entry.js.map +1 -0
  304. package/dist/core/p-02a6562c.entry.js +2 -0
  305. package/dist/core/p-02a6562c.entry.js.map +1 -0
  306. package/dist/core/p-03a4d9dc.entry.js +2 -0
  307. package/dist/core/p-03a4d9dc.entry.js.map +1 -0
  308. package/dist/core/p-04cf6fab.entry.js +2 -0
  309. package/dist/core/p-04cf6fab.entry.js.map +1 -0
  310. package/dist/core/{p-e93e9aa3.entry.js → p-0672c783.entry.js} +2 -2
  311. package/dist/core/p-0672c783.entry.js.map +1 -0
  312. package/dist/core/p-0f773f37.entry.js +2 -0
  313. package/dist/core/p-0f773f37.entry.js.map +1 -0
  314. package/dist/core/p-0fc9d5c8.entry.js +2 -0
  315. package/dist/core/p-0fc9d5c8.entry.js.map +1 -0
  316. package/dist/core/p-10a672d4.entry.js +2 -0
  317. package/dist/core/p-10a672d4.entry.js.map +1 -0
  318. package/dist/core/p-24240e11.js +2 -0
  319. package/dist/core/p-26fd7d7c.entry.js +2 -0
  320. package/dist/core/p-26fd7d7c.entry.js.map +1 -0
  321. package/dist/core/p-2961c45f.entry.js +2 -0
  322. package/dist/core/p-2961c45f.entry.js.map +1 -0
  323. package/dist/core/p-2a40f189.entry.js +2 -0
  324. package/dist/core/p-2a40f189.entry.js.map +1 -0
  325. package/dist/core/p-2e318c95.entry.js +2 -0
  326. package/dist/core/p-2e318c95.entry.js.map +1 -0
  327. package/dist/core/{p-f760198e.entry.js → p-2ed06031.entry.js} +2 -2
  328. package/dist/core/p-30ff49be.entry.js +2 -0
  329. package/dist/core/{p-c320fa70.entry.js.map → p-30ff49be.entry.js.map} +1 -1
  330. package/dist/core/{p-a8ac8f72.js → p-3c75ed36.js} +2 -2
  331. package/dist/core/p-3c75ed36.js.map +1 -0
  332. package/dist/core/p-3f0232f6.entry.js +2 -0
  333. package/dist/core/p-3f0232f6.entry.js.map +1 -0
  334. package/dist/core/p-3f0ac826.entry.js +2 -0
  335. package/dist/core/p-3f0ac826.entry.js.map +1 -0
  336. package/dist/core/p-454a7f3d.entry.js +2 -0
  337. package/dist/core/p-454a7f3d.entry.js.map +1 -0
  338. package/dist/core/p-48f99591.entry.js +2 -0
  339. package/dist/core/p-48f99591.entry.js.map +1 -0
  340. package/dist/core/p-4a8c0c58.entry.js +2 -0
  341. package/dist/core/p-4a8c0c58.entry.js.map +1 -0
  342. package/dist/core/{p-cadb531f.entry.js → p-5368bcff.entry.js} +2 -2
  343. package/dist/core/p-5368bcff.entry.js.map +1 -0
  344. package/dist/core/p-662d5b43.entry.js +2 -0
  345. package/dist/core/p-662d5b43.entry.js.map +1 -0
  346. package/dist/core/p-69512d85.entry.js +2 -0
  347. package/dist/core/p-69512d85.entry.js.map +1 -0
  348. package/dist/core/p-6bbc0cf5.entry.js +2 -0
  349. package/dist/core/p-6bbc0cf5.entry.js.map +1 -0
  350. package/dist/core/p-6f57b13c.js.map +1 -1
  351. package/dist/core/{p-23bf0b7a.entry.js → p-86098b7e.entry.js} +2 -2
  352. package/dist/core/p-86098b7e.entry.js.map +1 -0
  353. package/dist/core/p-8b383c23.entry.js +2 -0
  354. package/dist/core/p-8b383c23.entry.js.map +1 -0
  355. package/dist/core/p-8c7f4343.js +2 -0
  356. package/dist/core/p-97d4b6cd.entry.js +2 -0
  357. package/dist/core/p-97d4b6cd.entry.js.map +1 -0
  358. package/dist/core/p-a472db51.entry.js +2 -0
  359. package/dist/core/p-a472db51.entry.js.map +1 -0
  360. package/dist/core/p-a6a77e5c.js +2 -0
  361. package/dist/core/p-add01f10.entry.js +2 -0
  362. package/dist/core/p-add01f10.entry.js.map +1 -0
  363. package/dist/core/p-b29f210b.entry.js +2 -0
  364. package/dist/core/p-b29f210b.entry.js.map +1 -0
  365. package/dist/core/p-c2710b13.entry.js +2 -0
  366. package/dist/core/p-c2710b13.entry.js.map +1 -0
  367. package/dist/core/p-c6764827.entry.js +2 -0
  368. package/dist/core/p-c6764827.entry.js.map +1 -0
  369. package/dist/core/{p-9b4022d7.entry.js → p-ccd078a6.entry.js} +2 -2
  370. package/dist/core/p-ccd078a6.entry.js.map +1 -0
  371. package/dist/core/p-d4f7a3e4.entry.js +2 -0
  372. package/dist/core/p-d4f7a3e4.entry.js.map +1 -0
  373. package/dist/core/p-d5e0c02a.js +2 -0
  374. package/dist/core/p-d77f57d9.entry.js +2 -0
  375. package/dist/core/p-d77f57d9.entry.js.map +1 -0
  376. package/dist/core/p-dd194ba9.entry.js +2 -0
  377. package/dist/core/{p-3f9cdcdd.entry.js.map → p-dd194ba9.entry.js.map} +1 -1
  378. package/dist/core/p-de19fed4.entry.js +2 -0
  379. package/dist/core/p-de19fed4.entry.js.map +1 -0
  380. package/dist/core/p-e5e885b1.entry.js +2 -0
  381. package/dist/core/p-e5e885b1.entry.js.map +1 -0
  382. package/dist/core/p-e94dfa43.entry.js +2 -0
  383. package/dist/core/p-e94dfa43.entry.js.map +1 -0
  384. package/dist/core/{p-4f1a7195.entry.js → p-eaf714a3.entry.js} +2 -2
  385. package/dist/core/p-f51f4d34.entry.js +2 -0
  386. package/dist/core/p-f51f4d34.entry.js.map +1 -0
  387. package/dist/esm/{check-icon-53f1d9e5.js → check-icon-abb210ec.js} +2 -2
  388. package/dist/esm/check-icon-abb210ec.js.map +1 -0
  389. package/dist/esm/chevron-icon-98c98242.js +8 -0
  390. package/dist/esm/chevron-icon-98c98242.js.map +1 -0
  391. package/dist/esm/core.js +1 -1
  392. package/dist/esm/{error-icon-6046a380.js → error-icon-1dc70ca0.js} +7 -5
  393. package/dist/esm/error-icon-1dc70ca0.js.map +1 -0
  394. package/dist/esm/{helpers-46e5291b.js → helpers-3aa2f5a5.js} +7 -3
  395. package/dist/esm/helpers-3aa2f5a5.js.map +1 -0
  396. package/dist/esm/ic-alert.entry.js +10 -8
  397. package/dist/esm/ic-alert.entry.js.map +1 -1
  398. package/dist/esm/ic-back-to-top.entry.js +5 -4
  399. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  400. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  401. package/dist/esm/ic-breadcrumb.entry.js +11 -3
  402. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  403. package/dist/esm/ic-button_3.entry.js +6 -19
  404. package/dist/esm/ic-button_3.entry.js.map +1 -1
  405. package/dist/esm/ic-card.entry.js +14 -3
  406. package/dist/esm/ic-card.entry.js.map +1 -1
  407. package/dist/esm/ic-checkbox-group.entry.js +3 -3
  408. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  409. package/dist/esm/ic-checkbox.entry.js +12 -3
  410. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  411. package/dist/esm/ic-chip.entry.js +11 -3
  412. package/dist/esm/ic-chip.entry.js.map +1 -1
  413. package/dist/esm/ic-classification-banner.entry.js +1 -1
  414. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  415. package/dist/esm/ic-data-entity.entry.js +1 -1
  416. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  417. package/dist/esm/ic-data-row.entry.js +13 -11
  418. package/dist/esm/ic-data-row.entry.js.map +1 -1
  419. package/dist/esm/ic-divider.entry.js +2 -2
  420. package/dist/esm/ic-divider.entry.js.map +1 -1
  421. package/dist/esm/ic-footer-link-group.entry.js +2 -2
  422. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  423. package/dist/esm/ic-footer-link.entry.js +2 -2
  424. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  425. package/dist/esm/ic-footer.entry.js +2 -2
  426. package/dist/esm/ic-footer.entry.js.map +1 -1
  427. package/dist/esm/ic-hero.entry.js +2 -2
  428. package/dist/esm/ic-hero.entry.js.map +1 -1
  429. package/dist/esm/ic-input-component-container_3.entry.js +43 -27
  430. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  431. package/dist/esm/ic-input-label_2.entry.js +4 -4
  432. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  433. package/dist/esm/ic-link.entry.js +10 -4
  434. package/dist/esm/ic-link.entry.js.map +1 -1
  435. package/dist/esm/ic-navigation-button.entry.js +2 -2
  436. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  437. package/dist/esm/ic-navigation-group.entry.js +4 -4
  438. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  439. package/dist/esm/ic-navigation-item.entry.js +4 -4
  440. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  441. package/dist/esm/ic-navigation-menu.entry.js +2 -2
  442. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  443. package/dist/esm/ic-page-header.entry.js +3 -3
  444. package/dist/esm/ic-page-header.entry.js.map +1 -1
  445. package/dist/esm/ic-radio-group.entry.js +12 -3
  446. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  447. package/dist/esm/ic-radio-option.entry.js +12 -4
  448. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  449. package/dist/esm/ic-search-bar.entry.js +16 -20
  450. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  451. package/dist/esm/ic-select.entry.js +131 -59
  452. package/dist/esm/ic-select.entry.js.map +1 -1
  453. package/dist/esm/ic-side-navigation.entry.js +16 -8
  454. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  455. package/dist/esm/ic-status-tag.entry.js +2 -2
  456. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  457. package/dist/esm/ic-step.entry.js +2 -2
  458. package/dist/esm/ic-step.entry.js.map +1 -1
  459. package/dist/esm/ic-stepper.entry.js +12 -9
  460. package/dist/esm/ic-stepper.entry.js.map +1 -1
  461. package/dist/esm/ic-switch.entry.js +10 -2
  462. package/dist/esm/ic-switch.entry.js.map +1 -1
  463. package/dist/esm/ic-tab-group.entry.js +4 -4
  464. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  465. package/dist/esm/ic-tab-panel.entry.js +1 -1
  466. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  467. package/dist/esm/ic-tab.entry.js +9 -1
  468. package/dist/esm/ic-tab.entry.js.map +1 -1
  469. package/dist/esm/ic-text-field.entry.js +4 -4
  470. package/dist/esm/ic-text-field.entry.js.map +1 -1
  471. package/dist/esm/ic-theme.entry.js +1 -1
  472. package/dist/esm/ic-top-navigation.entry.js +10 -5
  473. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  474. package/dist/esm/loader.js +1 -1
  475. package/dist/esm/{success-icon-2f71b115.js → success-icon-75b04341.js} +4 -3
  476. package/dist/esm/success-icon-75b04341.js.map +1 -0
  477. package/dist/esm/types-dd515332.js.map +1 -1
  478. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +4 -0
  479. package/dist/types/components/ic-button/ic-button.d.ts +1 -4
  480. package/dist/types/components/ic-card/ic-card.d.ts +4 -0
  481. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +4 -0
  482. package/dist/types/components/ic-chip/ic-chip.d.ts +4 -0
  483. package/dist/types/components/ic-link/ic-link.d.ts +4 -1
  484. package/dist/types/components/ic-menu/ic-menu.d.ts +16 -7
  485. package/dist/types/components/ic-navigation-button/ic-navigation-button.d.ts +1 -1
  486. package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +1 -1
  487. package/dist/types/components/ic-navigation-item/ic-navigation-item.d.ts +1 -1
  488. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +5 -1
  489. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +4 -0
  490. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +1 -3
  491. package/dist/types/components/ic-select/ic-select.d.ts +36 -7
  492. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +2 -1
  493. package/dist/types/components/ic-switch/ic-switch.d.ts +4 -0
  494. package/dist/types/components/ic-tab/ic-tab.d.ts +4 -0
  495. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +1 -1
  496. package/dist/types/components/ic-text-field/ic-text-field.d.ts +1 -1
  497. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +2 -1
  498. package/dist/types/components.d.ts +90 -33
  499. package/dist/types/utils/helpers.d.ts +1 -0
  500. package/dist/types/utils/types.d.ts +1 -0
  501. package/hydrate/index.js +407 -218
  502. package/package.json +3 -3
  503. package/dist/cjs/check-icon-999d9877.js.map +0 -1
  504. package/dist/cjs/chevron-icon-d175fe66.js.map +0 -1
  505. package/dist/cjs/error-icon-99504103.js.map +0 -1
  506. package/dist/cjs/helpers-81484ceb.js.map +0 -1
  507. package/dist/cjs/success-icon-887b2097.js.map +0 -1
  508. package/dist/core/p-01e8bd4a.entry.js +0 -2
  509. package/dist/core/p-01e8bd4a.entry.js.map +0 -1
  510. package/dist/core/p-050e1e7b.entry.js +0 -2
  511. package/dist/core/p-050e1e7b.entry.js.map +0 -1
  512. package/dist/core/p-09592918.entry.js +0 -2
  513. package/dist/core/p-09592918.entry.js.map +0 -1
  514. package/dist/core/p-0b00f848.entry.js +0 -2
  515. package/dist/core/p-0b00f848.entry.js.map +0 -1
  516. package/dist/core/p-16698d3e.entry.js +0 -2
  517. package/dist/core/p-16698d3e.entry.js.map +0 -1
  518. package/dist/core/p-18a9beea.entry.js +0 -2
  519. package/dist/core/p-18a9beea.entry.js.map +0 -1
  520. package/dist/core/p-1da1f2f3.entry.js +0 -2
  521. package/dist/core/p-1da1f2f3.entry.js.map +0 -1
  522. package/dist/core/p-1e7b4310.js +0 -2
  523. package/dist/core/p-204f6315.entry.js +0 -2
  524. package/dist/core/p-204f6315.entry.js.map +0 -1
  525. package/dist/core/p-217fa7de.entry.js +0 -2
  526. package/dist/core/p-217fa7de.entry.js.map +0 -1
  527. package/dist/core/p-23bf0b7a.entry.js.map +0 -1
  528. package/dist/core/p-272c7abd.entry.js +0 -2
  529. package/dist/core/p-272c7abd.entry.js.map +0 -1
  530. package/dist/core/p-27554319.entry.js +0 -2
  531. package/dist/core/p-27554319.entry.js.map +0 -1
  532. package/dist/core/p-3efa7f8b.entry.js +0 -2
  533. package/dist/core/p-3efa7f8b.entry.js.map +0 -1
  534. package/dist/core/p-3f4d632c.entry.js +0 -2
  535. package/dist/core/p-3f4d632c.entry.js.map +0 -1
  536. package/dist/core/p-3f9cdcdd.entry.js +0 -2
  537. package/dist/core/p-5616cfb8.entry.js +0 -2
  538. package/dist/core/p-5616cfb8.entry.js.map +0 -1
  539. package/dist/core/p-66cad84e.entry.js +0 -2
  540. package/dist/core/p-66cad84e.entry.js.map +0 -1
  541. package/dist/core/p-6cb276c6.entry.js +0 -2
  542. package/dist/core/p-6cb276c6.entry.js.map +0 -1
  543. package/dist/core/p-6f442942.entry.js +0 -2
  544. package/dist/core/p-6f442942.entry.js.map +0 -1
  545. package/dist/core/p-7ba184da.entry.js +0 -2
  546. package/dist/core/p-7ba184da.entry.js.map +0 -1
  547. package/dist/core/p-80cd0a2d.entry.js +0 -2
  548. package/dist/core/p-80cd0a2d.entry.js.map +0 -1
  549. package/dist/core/p-8470c255.entry.js +0 -2
  550. package/dist/core/p-8470c255.entry.js.map +0 -1
  551. package/dist/core/p-89a925f8.entry.js +0 -2
  552. package/dist/core/p-89a925f8.entry.js.map +0 -1
  553. package/dist/core/p-930cd4cc.entry.js +0 -2
  554. package/dist/core/p-930cd4cc.entry.js.map +0 -1
  555. package/dist/core/p-9b4022d7.entry.js.map +0 -1
  556. package/dist/core/p-9fbceeb2.entry.js +0 -2
  557. package/dist/core/p-9fbceeb2.entry.js.map +0 -1
  558. package/dist/core/p-a8ac8f72.js.map +0 -1
  559. package/dist/core/p-ae02b008.entry.js +0 -2
  560. package/dist/core/p-ae02b008.entry.js.map +0 -1
  561. package/dist/core/p-ae6aa67f.js +0 -2
  562. package/dist/core/p-bb106092.entry.js +0 -2
  563. package/dist/core/p-bb106092.entry.js.map +0 -1
  564. package/dist/core/p-bbe00cb1.entry.js +0 -2
  565. package/dist/core/p-bbe00cb1.entry.js.map +0 -1
  566. package/dist/core/p-bf5717ca.js +0 -2
  567. package/dist/core/p-c1d78a64.entry.js +0 -2
  568. package/dist/core/p-c1d78a64.entry.js.map +0 -1
  569. package/dist/core/p-c320fa70.entry.js +0 -2
  570. package/dist/core/p-cadb531f.entry.js.map +0 -1
  571. package/dist/core/p-d599cf4f.entry.js +0 -2
  572. package/dist/core/p-d599cf4f.entry.js.map +0 -1
  573. package/dist/core/p-e192e25d.entry.js +0 -2
  574. package/dist/core/p-e192e25d.entry.js.map +0 -1
  575. package/dist/core/p-e28af65b.js +0 -2
  576. package/dist/core/p-e810f48c.entry.js +0 -2
  577. package/dist/core/p-e810f48c.entry.js.map +0 -1
  578. package/dist/core/p-e93e9aa3.entry.js.map +0 -1
  579. package/dist/core/p-eaea567e.entry.js +0 -2
  580. package/dist/core/p-eaea567e.entry.js.map +0 -1
  581. package/dist/core/p-fd0c6039.entry.js +0 -2
  582. package/dist/core/p-fd0c6039.entry.js.map +0 -1
  583. package/dist/esm/check-icon-53f1d9e5.js.map +0 -1
  584. package/dist/esm/chevron-icon-5b38c60a.js +0 -8
  585. package/dist/esm/chevron-icon-5b38c60a.js.map +0 -1
  586. package/dist/esm/error-icon-6046a380.js.map +0 -1
  587. package/dist/esm/helpers-46e5291b.js.map +0 -1
  588. package/dist/esm/success-icon-2f71b115.js.map +0 -1
  589. /package/dist/core/{p-1e7b4310.js.map → p-24240e11.js.map} +0 -0
  590. /package/dist/core/{p-f760198e.entry.js.map → p-2ed06031.entry.js.map} +0 -0
  591. /package/dist/core/{p-ae6aa67f.js.map → p-8c7f4343.js.map} +0 -0
  592. /package/dist/core/{p-bf5717ca.js.map → p-a6a77e5c.js.map} +0 -0
  593. /package/dist/core/{p-e28af65b.js.map → p-d5e0c02a.js.map} +0 -0
  594. /package/dist/core/{p-4f1a7195.entry.js.map → p-eaf714a3.entry.js.map} +0 -0
@@ -10,6 +10,16 @@ export class Select {
10
10
  this.inputId = `ic-select-input-${inputIds++}`;
11
11
  this.menuId = `${this.inputId}-menu`;
12
12
  this.inheritedAttributes = {};
13
+ this.emitIcChange = (value) => {
14
+ clearTimeout(this.debounceIcChange);
15
+ this.debounceIcChange = window.setTimeout(() => {
16
+ this.icChange.emit({ value: value });
17
+ }, this.currDebounce);
18
+ };
19
+ this.emitImmediateIcChange = (value) => {
20
+ clearTimeout(this.debounceIcChange);
21
+ this.icChange.emit({ value: value });
22
+ };
13
23
  this.isMenuEnabled = () => {
14
24
  return (((this.searchableSelectInputValue === null ||
15
25
  this.searchableSelectInputValue === "") &&
@@ -56,7 +66,8 @@ export class Select {
56
66
  return newOption;
57
67
  };
58
68
  this.handleNativeSelectChange = () => {
59
- this.icChange.emit({ value: this.nativeSelectElement.value });
69
+ this.icOptionSelect.emit({ value: this.nativeSelectElement.value });
70
+ this.emitImmediateIcChange(this.nativeSelectElement.value);
60
71
  this.setTextColor();
61
72
  };
62
73
  this.handleCustomSelectChange = (event) => {
@@ -68,12 +79,19 @@ export class Select {
68
79
  this.searchableSelectInputValue = this.getLabelFromValue(event.detail.value);
69
80
  }
70
81
  this.ariaActiveDescendant = event.detail.optionId;
71
- this.icChange.emit({ value: event.detail.value });
82
+ this.icOptionSelect.emit({ value: event.detail.value });
83
+ this.emitImmediateIcChange(event.detail.value);
72
84
  };
73
85
  this.handleMenuChange = (event) => {
74
86
  this.open = event.detail.open;
75
87
  this.searchable && this.handleFocusIndicatorDisplay();
76
88
  };
89
+ // clears the debounce delay when navigating the menu with arrow keys etc
90
+ // to prevent delay in change event, which should only occur when typing in input
91
+ this.handleMenuKeyPress = (ev) => {
92
+ const debounce = ev.detail.isNavKey ? 0 : this.debounce;
93
+ this.debounceChangedHandler(debounce);
94
+ };
77
95
  this.handleFocusIndicatorDisplay = () => {
78
96
  const focusIndicator = this.host.shadowRoot.querySelector(".focus-indicator");
79
97
  if (this.open) {
@@ -88,9 +106,15 @@ export class Select {
88
106
  event.preventDefault();
89
107
  }
90
108
  };
109
+ this.isExternalFiltering = () => this.searchable && this.disableFilter;
91
110
  this.handleClick = (event) => {
92
- this.noOptions = null;
93
- this.menu.options = this.options;
111
+ if (this.isExternalFiltering()) {
112
+ this.menu.options = this.filteredOptions;
113
+ }
114
+ else {
115
+ this.noOptions = null;
116
+ this.menu.options = this.options;
117
+ }
94
118
  if (event.detail !== 0 && this.isMenuEnabled()) {
95
119
  this.menu.handleClickOpen();
96
120
  }
@@ -105,7 +129,8 @@ export class Select {
105
129
  this.handleClear = (event) => {
106
130
  event.stopPropagation();
107
131
  this.noOptions = null;
108
- this.icChange.emit({ value: null });
132
+ this.emitImmediateIcChange(null);
133
+ this.icClear.emit();
109
134
  if (this.searchable) {
110
135
  this.searchableSelectElement.value = null;
111
136
  this.searchableSelectInputValue = null;
@@ -121,17 +146,24 @@ export class Select {
121
146
  };
122
147
  this.handleKeyDown = (event) => {
123
148
  event.cancelBubble = true;
149
+ const isArrowKey = event.key === "ArrowDown" || event.key === "ArrowUp";
124
150
  if (!this.open) {
125
- this.noOptions = null;
126
- this.menu.options = this.options;
151
+ if (this.isExternalFiltering() && (event.key === "Enter" || isArrowKey)) {
152
+ this.menu.options = this.filteredOptions;
153
+ }
154
+ else {
155
+ this.noOptions = null;
156
+ this.menu.options = this.options;
157
+ }
127
158
  }
128
159
  if (this.open && event.key === "Enter") {
129
160
  this.setMenuChange(false);
130
161
  }
131
162
  else {
132
- if (!((event.key === "ArrowDown" || event.key === "ArrowUp") &&
133
- this.noOptions !== null) &&
134
- this.isMenuEnabled()) {
163
+ if (!(isArrowKey && this.noOptions !== null) && this.isMenuEnabled()) {
164
+ if (this.isExternalFiltering() && isArrowKey && this.debounce > 0) {
165
+ this.debounceChangedHandler(0);
166
+ }
135
167
  this.menu.handleKeyboardOpen(event);
136
168
  }
137
169
  }
@@ -144,8 +176,12 @@ export class Select {
144
176
  };
145
177
  this.handleSearchableSelectInput = (event) => {
146
178
  this.searchableSelectInputValue = event.target.value;
147
- if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {
148
- this.icChange.emit({ value: null });
179
+ this.icInput.emit({ value: this.searchableSelectInputValue });
180
+ if (this.disableFilter) {
181
+ this.emitIcChange(this.searchableSelectInputValue);
182
+ }
183
+ else if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {
184
+ this.emitIcChange(null);
149
185
  }
150
186
  if (this.isMenuEnabled()) {
151
187
  this.setMenuChange(true);
@@ -153,51 +189,53 @@ export class Select {
153
189
  else {
154
190
  this.setMenuChange(false);
155
191
  }
156
- const options = [...this.options];
157
- let isGrouped = false;
158
- let newFilteredOptions = [];
159
- options.map((option) => {
160
- if (option.children)
161
- isGrouped = true;
162
- });
163
- const menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.searchableSelectInputValue, this.searchMatchPosition);
164
- if (!isGrouped) {
165
- newFilteredOptions = menuOptionsFiltered;
166
- }
167
- else {
192
+ if (!this.disableFilter) {
193
+ const options = [...this.options];
194
+ let isGrouped = false;
195
+ let newFilteredOptions = [];
168
196
  options.map((option) => {
169
- if (this.includeGroupTitlesInSearch) {
170
- if (menuOptionsFiltered.indexOf(option) !== -1) {
171
- newFilteredOptions.push(option);
197
+ if (option.children)
198
+ isGrouped = true;
199
+ });
200
+ const menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.searchableSelectInputValue, this.searchMatchPosition);
201
+ if (!isGrouped) {
202
+ newFilteredOptions = menuOptionsFiltered;
203
+ }
204
+ else {
205
+ options.map((option) => {
206
+ if (this.includeGroupTitlesInSearch) {
207
+ if (menuOptionsFiltered.indexOf(option) !== -1) {
208
+ newFilteredOptions.push(option);
209
+ }
210
+ else {
211
+ newFilteredOptions.push(this.getFilteredChildMenuOptions(option));
212
+ }
172
213
  }
173
214
  else {
174
215
  newFilteredOptions.push(this.getFilteredChildMenuOptions(option));
175
216
  }
176
- }
177
- else {
178
- newFilteredOptions.push(this.getFilteredChildMenuOptions(option));
179
- }
180
- });
181
- }
182
- let noChildOptionsWhenFiltered = false;
183
- if (isGrouped) {
184
- noChildOptionsWhenFiltered = true;
185
- newFilteredOptions.map((option) => {
186
- if (option.children.length > 0) {
187
- noChildOptionsWhenFiltered = false;
188
- }
189
- });
190
- }
191
- const noOptions = [{ label: this.emptyOptionListText, value: "" }];
192
- if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {
193
- this.noOptions = null;
194
- this.filteredOptions = newFilteredOptions;
195
- }
196
- else {
197
- this.noOptions = noOptions;
198
- this.filteredOptions = this.noOptions;
217
+ });
218
+ }
219
+ let noChildOptionsWhenFiltered = false;
220
+ if (isGrouped) {
221
+ noChildOptionsWhenFiltered = true;
222
+ newFilteredOptions.map((option) => {
223
+ if (option.children.length > 0) {
224
+ noChildOptionsWhenFiltered = false;
225
+ }
226
+ });
227
+ }
228
+ const noOptions = [{ label: this.emptyOptionListText, value: "" }];
229
+ if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {
230
+ this.noOptions = null;
231
+ this.filteredOptions = newFilteredOptions;
232
+ }
233
+ else {
234
+ this.noOptions = noOptions;
235
+ this.filteredOptions = this.noOptions;
236
+ }
237
+ this.debounceAriaLiveUpdate();
199
238
  }
200
- this.debounceAriaLiveUpdate();
201
239
  };
202
240
  this.updateSearchableSelectResultAriaLive = () => {
203
241
  const searchableSelectResultsStatusEl = this.host.shadowRoot.querySelector(".searchable-select-results-status");
@@ -209,6 +247,9 @@ export class Select {
209
247
  }
210
248
  };
211
249
  this.onFocus = () => {
250
+ if (this.isExternalFiltering() && this.debounce > 0) {
251
+ this.debounceChangedHandler(this.debounce);
252
+ }
212
253
  this.icFocus.emit();
213
254
  };
214
255
  this.onBlur = (event) => {
@@ -239,6 +280,7 @@ export class Select {
239
280
  this.validationStatus = "";
240
281
  this.validationText = "";
241
282
  this.value = undefined;
283
+ this.debounce = 0;
242
284
  this.name = this.inputId;
243
285
  this.showClearButton = false;
244
286
  this.searchable = false;
@@ -247,6 +289,7 @@ export class Select {
247
289
  this.searchMatchPosition = "anywhere";
248
290
  this.charactersUntilSuggestions = 0;
249
291
  this.emptyOptionListText = "No results found";
292
+ this.disableFilter = false;
250
293
  this.open = false;
251
294
  this.clearButtonFocused = false;
252
295
  this.searchableSelectInputValue = null;
@@ -254,10 +297,30 @@ export class Select {
254
297
  this.ariaActiveDescendant = undefined;
255
298
  this.noOptions = null;
256
299
  this.initialValue = this.value;
300
+ this.currDebounce = this.debounce;
301
+ this.debounceIcChange = undefined;
257
302
  }
258
303
  watchOptionsHandler() {
259
- this.setOptionsValuesFromLabels();
260
- this.filteredOptions = this.options;
304
+ if (this.isExternalFiltering()) {
305
+ if (this.options.length > 0) {
306
+ this.setOptionsValuesFromLabels();
307
+ this.noOptions = null;
308
+ this.filteredOptions = this.options;
309
+ }
310
+ else if (this.isMenuEnabled()) {
311
+ this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
312
+ this.filteredOptions = this.noOptions;
313
+ this.setMenuChange(true);
314
+ }
315
+ this.updateSearchableSelectResultAriaLive();
316
+ }
317
+ else {
318
+ this.setOptionsValuesFromLabels();
319
+ this.filteredOptions = this.options;
320
+ }
321
+ }
322
+ debounceChangedHandler(newValue) {
323
+ this.updateOnChangeDebounce(newValue);
261
324
  }
262
325
  /**
263
326
  * Sets focus on the input box.
@@ -273,8 +336,13 @@ export class Select {
273
336
  this.searchableSelectElement.focus();
274
337
  }
275
338
  }
339
+ updateOnChangeDebounce(newValue) {
340
+ if (this.currDebounce !== newValue) {
341
+ this.currDebounce = newValue;
342
+ }
343
+ }
276
344
  debounceAriaLiveUpdate() {
277
- clearTimeout(this.debounce);
345
+ clearTimeout(this.debounceAria);
278
346
  window.setTimeout(() => {
279
347
  this.updateSearchableSelectResultAriaLive();
280
348
  }, 800);
@@ -334,7 +402,7 @@ export class Select {
334
402
  "no-results": this.noOptions !== null,
335
403
  }, ref: (el) => (this.menu = el), inputEl: searchable
336
404
  ? this.searchableSelectElement
337
- : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: value, fullWidth: fullWidth, onIcMenuStateChange: this.handleMenuChange, onIcOptionSelect: this.handleCustomSelectChange, parentEl: this.host })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
405
+ : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: value, fullWidth: fullWidth, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, parentEl: this.host })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
338
406
  }
339
407
  static get is() { return "ic-select"; }
340
408
  static get encapsulation() { return "shadow"; }
@@ -590,6 +658,24 @@ export class Select {
590
658
  "attribute": "value",
591
659
  "reflect": false
592
660
  },
661
+ "debounce": {
662
+ "type": "number",
663
+ "mutable": false,
664
+ "complexType": {
665
+ "original": "number",
666
+ "resolved": "number",
667
+ "references": {}
668
+ },
669
+ "required": false,
670
+ "optional": true,
671
+ "docs": {
672
+ "tags": [],
673
+ "text": "The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke."
674
+ },
675
+ "attribute": "debounce",
676
+ "reflect": false,
677
+ "defaultValue": "0"
678
+ },
593
679
  "name": {
594
680
  "type": "string",
595
681
  "mutable": false,
@@ -656,7 +742,7 @@ export class Select {
656
742
  "optional": true,
657
743
  "docs": {
658
744
  "tags": [],
659
- "text": "If `true`, descriptions of options will be included when filtering options in a searchable select."
745
+ "text": "If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering."
660
746
  },
661
747
  "attribute": "include-descriptions-in-search",
662
748
  "reflect": false,
@@ -674,7 +760,7 @@ export class Select {
674
760
  "optional": true,
675
761
  "docs": {
676
762
  "tags": [],
677
- "text": "If `true`, group titles of grouped options will be included when filtering options in a searchable select."
763
+ "text": "If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering."
678
764
  },
679
765
  "attribute": "include-group-titles-in-search",
680
766
  "reflect": false,
@@ -697,7 +783,7 @@ export class Select {
697
783
  "optional": true,
698
784
  "docs": {
699
785
  "tags": [],
700
- "text": "Whether the search string of the searchable select should match the start of or anywhere in the options."
786
+ "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."
701
787
  },
702
788
  "attribute": "search-match-position",
703
789
  "reflect": false,
@@ -738,6 +824,24 @@ export class Select {
738
824
  "attribute": "empty-option-list-text",
739
825
  "reflect": false,
740
826
  "defaultValue": "\"No results found\""
827
+ },
828
+ "disableFilter": {
829
+ "type": "boolean",
830
+ "mutable": false,
831
+ "complexType": {
832
+ "original": "boolean",
833
+ "resolved": "boolean",
834
+ "references": {}
835
+ },
836
+ "required": false,
837
+ "optional": true,
838
+ "docs": {
839
+ "tags": [],
840
+ "text": "Specify whether to disable the built in filtering for a searchable variant. For example, if options will already be filtered from external source."
841
+ },
842
+ "attribute": "disable-filter",
843
+ "reflect": false,
844
+ "defaultValue": "false"
741
845
  }
742
846
  };
743
847
  }
@@ -749,7 +853,9 @@ export class Select {
749
853
  "filteredOptions": {},
750
854
  "ariaActiveDescendant": {},
751
855
  "noOptions": {},
752
- "initialValue": {}
856
+ "initialValue": {},
857
+ "currDebounce": {},
858
+ "debounceIcChange": {}
753
859
  };
754
860
  }
755
861
  static get events() {
@@ -761,7 +867,7 @@ export class Select {
761
867
  "composed": true,
762
868
  "docs": {
763
869
  "tags": [],
764
- "text": "Emitted when a value is selected."
870
+ "text": "Emitted when the value changes."
765
871
  },
766
872
  "complexType": {
767
873
  "original": "IcValueEventDetail",
@@ -773,6 +879,21 @@ export class Select {
773
879
  }
774
880
  }
775
881
  }
882
+ }, {
883
+ "method": "icClear",
884
+ "name": "icClear",
885
+ "bubbles": true,
886
+ "cancelable": true,
887
+ "composed": true,
888
+ "docs": {
889
+ "tags": [],
890
+ "text": "Emitted when clear button clicked."
891
+ },
892
+ "complexType": {
893
+ "original": "void",
894
+ "resolved": "void",
895
+ "references": {}
896
+ }
776
897
  }, {
777
898
  "method": "icFocus",
778
899
  "name": "icFocus",
@@ -781,7 +902,7 @@ export class Select {
781
902
  "composed": true,
782
903
  "docs": {
783
904
  "tags": [],
784
- "text": "Emitted when select has focus."
905
+ "text": "Emitted when select gains focus."
785
906
  },
786
907
  "complexType": {
787
908
  "original": "void",
@@ -796,13 +917,53 @@ export class Select {
796
917
  "composed": true,
797
918
  "docs": {
798
919
  "tags": [],
799
- "text": "Emitted when select has blur."
920
+ "text": "Emitted when select loses focus."
800
921
  },
801
922
  "complexType": {
802
923
  "original": "void",
803
924
  "resolved": "void",
804
925
  "references": {}
805
926
  }
927
+ }, {
928
+ "method": "icOptionSelect",
929
+ "name": "icOptionSelect",
930
+ "bubbles": true,
931
+ "cancelable": true,
932
+ "composed": true,
933
+ "docs": {
934
+ "tags": [],
935
+ "text": "Emitted when option is highlighted within the menu."
936
+ },
937
+ "complexType": {
938
+ "original": "IcOptionSelectEventDetail",
939
+ "resolved": "IcOptionSelectEventDetail",
940
+ "references": {
941
+ "IcOptionSelectEventDetail": {
942
+ "location": "import",
943
+ "path": "../ic-menu/ic-menu.types"
944
+ }
945
+ }
946
+ }
947
+ }, {
948
+ "method": "icInput",
949
+ "name": "icInput",
950
+ "bubbles": true,
951
+ "cancelable": true,
952
+ "composed": true,
953
+ "docs": {
954
+ "tags": [],
955
+ "text": "Emitted when a keyboard input occurred."
956
+ },
957
+ "complexType": {
958
+ "original": "IcValueEventDetail",
959
+ "resolved": "IcValueEventDetail",
960
+ "references": {
961
+ "IcValueEventDetail": {
962
+ "location": "import",
963
+ "path": "../../interface"
964
+ }
965
+ }
966
+ }
806
967
  }];
807
968
  }
808
969
  static get methods() {
@@ -830,6 +991,9 @@ export class Select {
830
991
  return [{
831
992
  "propName": "options",
832
993
  "methodName": "watchOptionsHandler"
994
+ }, {
995
+ "propName": "debounce",
996
+ "methodName": "debounceChangedHandler"
833
997
  }];
834
998
  }
835
999
  }