@ukic/web-components 2.1.0-beta.12 → 2.1.0-beta.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (376) hide show
  1. package/dist/cjs/core.cjs.js +2 -2
  2. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  4. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  5. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-button_3.cjs.entry.js +16 -5
  7. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-card.cjs.entry.js +2 -2
  9. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-checkbox-group.cjs.entry.js +14 -16
  11. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-checkbox.cjs.entry.js +9 -3
  13. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-classification-banner.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-data-entity.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  19. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +145 -64
  25. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
  30. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-pagination-item.cjs.entry.js +51 -0
  37. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -0
  38. package/dist/cjs/ic-pagination.cjs.entry.js +206 -0
  39. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -0
  40. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-search-bar.cjs.entry.js +79 -12
  45. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-select.cjs.entry.js +152 -44
  48. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-side-navigation.cjs.entry.js +11 -3
  50. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-skeleton.cjs.entry.js +1 -1
  52. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  57. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  58. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  60. package/dist/cjs/ic-text-field.cjs.entry.js +18 -7
  61. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  63. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  64. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-top-navigation.cjs.entry.js +3 -5
  66. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  68. package/dist/cjs/{index-f79a4e53.js → index-a62312a7.js} +11 -1
  69. package/dist/cjs/index-a62312a7.js.map +1 -0
  70. package/dist/cjs/loader.cjs.js +2 -2
  71. package/dist/cjs/types-3eb02246.js.map +1 -1
  72. package/dist/collection/assets/pagination-first-last.svg +3 -0
  73. package/dist/collection/assets/pagination-next-previous.svg +3 -0
  74. package/dist/collection/collection-manifest.json +2 -0
  75. package/dist/collection/components/ic-button/ic-button.css +5 -1
  76. package/dist/collection/components/ic-card/ic-card.css +3 -0
  77. package/dist/collection/components/ic-checkbox/ic-checkbox.css +4 -1
  78. package/dist/collection/components/ic-checkbox/ic-checkbox.js +8 -1
  79. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  80. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +14 -20
  81. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  82. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.types.js.map +1 -1
  83. package/dist/collection/components/ic-menu/ic-menu.css +30 -1
  84. package/dist/collection/components/ic-menu/ic-menu.js +188 -63
  85. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  86. package/dist/collection/components/ic-menu-item/ic-menu-item.css +1 -6
  87. package/dist/collection/components/ic-pagination/ic-pagination.css +490 -0
  88. package/dist/collection/components/ic-pagination/ic-pagination.js +435 -0
  89. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -0
  90. package/dist/collection/components/ic-pagination/ic-pagination.test.a11y.js +11 -0
  91. package/dist/collection/components/ic-pagination/ic-pagination.test.a11y.js.map +1 -0
  92. package/dist/collection/components/ic-pagination/ic-pagination.types.js +2 -0
  93. package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +1 -0
  94. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +581 -0
  95. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +225 -0
  96. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js.map +1 -0
  97. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js +2 -0
  98. package/dist/collection/components/ic-pagination-item/ic-pagination-item.types.js.map +1 -0
  99. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +2 -1
  100. package/dist/collection/components/ic-search-bar/ic-search-bar.css +0 -4
  101. package/dist/collection/components/ic-search-bar/ic-search-bar.js +172 -11
  102. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  103. package/dist/collection/components/ic-select/ic-select.js +247 -44
  104. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  105. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +36 -16
  106. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +9 -1
  107. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  108. package/dist/collection/components/ic-text-field/ic-text-field.js +66 -12
  109. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  110. package/dist/collection/components/ic-tooltip/ic-tooltip.js +53 -4
  111. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  112. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +9 -0
  113. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +1 -3
  114. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  115. package/dist/collection/utils/types.js.map +1 -1
  116. package/dist/components/ic-button2.js +1 -1
  117. package/dist/components/ic-button2.js.map +1 -1
  118. package/dist/components/ic-card.js +1 -1
  119. package/dist/components/ic-card.js.map +1 -1
  120. package/dist/components/ic-checkbox-group.js +14 -17
  121. package/dist/components/ic-checkbox-group.js.map +1 -1
  122. package/dist/components/ic-checkbox.js +8 -2
  123. package/dist/components/ic-checkbox.js.map +1 -1
  124. package/dist/components/ic-menu-item2.js +1 -1
  125. package/dist/components/ic-menu-item2.js.map +1 -1
  126. package/dist/components/ic-menu2.js +164 -66
  127. package/dist/components/ic-menu2.js.map +1 -1
  128. package/dist/components/ic-pagination-item.d.ts +11 -0
  129. package/dist/components/ic-pagination-item.js +8 -0
  130. package/dist/components/ic-pagination-item.js.map +1 -0
  131. package/dist/components/ic-pagination-item2.js +77 -0
  132. package/dist/components/ic-pagination-item2.js.map +1 -0
  133. package/dist/components/ic-pagination.d.ts +11 -0
  134. package/dist/components/ic-pagination.js +266 -0
  135. package/dist/components/ic-pagination.js.map +1 -0
  136. package/dist/components/ic-popover-menu.js +1 -2
  137. package/dist/components/ic-popover-menu.js.map +1 -1
  138. package/dist/components/ic-search-bar.js +82 -12
  139. package/dist/components/ic-search-bar.js.map +1 -1
  140. package/dist/components/ic-select.js +157 -43
  141. package/dist/components/ic-select.js.map +1 -1
  142. package/dist/components/ic-side-navigation.js +10 -2
  143. package/dist/components/ic-side-navigation.js.map +1 -1
  144. package/dist/components/ic-text-field2.js +20 -8
  145. package/dist/components/ic-text-field2.js.map +1 -1
  146. package/dist/components/ic-tooltip2.js +1817 -8
  147. package/dist/components/ic-tooltip2.js.map +1 -1
  148. package/dist/components/ic-top-navigation.js +2 -4
  149. package/dist/components/ic-top-navigation.js.map +1 -1
  150. package/dist/components/index.d.ts +2 -0
  151. package/dist/components/index.js +2 -0
  152. package/dist/components/index.js.map +1 -1
  153. package/dist/components/types.js.map +1 -1
  154. package/dist/core/core.esm.js +1 -1
  155. package/dist/core/core.esm.js.map +1 -1
  156. package/dist/core/{p-0f0dfa16.entry.js → p-002a63e9.entry.js} +2 -2
  157. package/dist/core/{p-759c80a3.entry.js → p-0575a77f.entry.js} +2 -2
  158. package/dist/core/{p-3453aa9c.entry.js → p-0a41c3cb.entry.js} +2 -2
  159. package/dist/core/{p-b7fc1f35.entry.js → p-100dbcec.entry.js} +2 -2
  160. package/dist/core/{p-1bd4d07e.entry.js → p-14835d6f.entry.js} +2 -2
  161. package/dist/core/{p-28b2158b.entry.js → p-1eb0992b.entry.js} +2 -2
  162. package/dist/core/{p-62b3516e.entry.js → p-223a214f.entry.js} +2 -2
  163. package/dist/core/{p-dd71a986.entry.js → p-276f7ecb.entry.js} +2 -2
  164. package/dist/core/{p-3d84a743.entry.js → p-28bc3bf0.entry.js} +2 -2
  165. package/dist/core/{p-8ffa00c9.entry.js → p-312c10b0.entry.js} +2 -2
  166. package/dist/core/p-3845b769.entry.js +2 -0
  167. package/dist/core/p-3845b769.entry.js.map +1 -0
  168. package/dist/core/{p-cc62d065.entry.js → p-3a67718c.entry.js} +2 -2
  169. package/dist/core/p-3c23f963.entry.js +2 -0
  170. package/dist/core/p-3c23f963.entry.js.map +1 -0
  171. package/dist/core/{p-74a768bc.entry.js → p-3dc2ff7b.entry.js} +2 -2
  172. package/dist/core/p-3e5eb873.entry.js +2 -0
  173. package/dist/core/p-3e5eb873.entry.js.map +1 -0
  174. package/dist/core/{p-58ff516f.entry.js → p-3fb307e6.entry.js} +2 -2
  175. package/dist/core/{p-d2508752.entry.js → p-454b1ecd.entry.js} +2 -2
  176. package/dist/core/{p-7e309c50.entry.js → p-47b0ed42.entry.js} +2 -2
  177. package/dist/core/{p-68c84039.entry.js → p-4b87445b.entry.js} +2 -2
  178. package/dist/core/p-4c8fcfe6.entry.js +2 -0
  179. package/dist/core/p-4c8fcfe6.entry.js.map +1 -0
  180. package/dist/core/p-52fd3533.entry.js +2 -0
  181. package/dist/core/p-52fd3533.entry.js.map +1 -0
  182. package/dist/core/{p-0a463a65.entry.js → p-546b620e.entry.js} +2 -2
  183. package/dist/core/p-56fe91ad.entry.js +2 -0
  184. package/dist/core/p-56fe91ad.entry.js.map +1 -0
  185. package/dist/core/{p-5450cebf.js → p-589f6dd3.js} +3 -3
  186. package/dist/core/p-589f6dd3.js.map +1 -0
  187. package/dist/core/{p-dc4ba6a0.entry.js → p-5d077cf7.entry.js} +2 -2
  188. package/dist/core/{p-8c9cc4d5.entry.js → p-6a77992e.entry.js} +2 -2
  189. package/dist/core/{p-d27dbb63.entry.js → p-6b39f8b4.entry.js} +2 -2
  190. package/dist/core/p-6f57b13c.js.map +1 -1
  191. package/dist/core/p-80eff050.entry.js +2 -0
  192. package/dist/core/p-80eff050.entry.js.map +1 -0
  193. package/dist/core/p-864b46bf.entry.js +2 -0
  194. package/dist/core/p-864b46bf.entry.js.map +1 -0
  195. package/dist/core/{p-9e578e82.entry.js → p-8780890e.entry.js} +2 -2
  196. package/dist/core/{p-ff15c756.entry.js → p-895bda21.entry.js} +2 -2
  197. package/dist/core/{p-08535d97.entry.js → p-92c4fa7f.entry.js} +2 -2
  198. package/dist/core/{p-41459307.entry.js → p-9413d639.entry.js} +2 -2
  199. package/dist/core/{p-e17eea34.entry.js → p-a0f4e641.entry.js} +2 -2
  200. package/dist/core/{p-4d8392fe.entry.js → p-a33a04b2.entry.js} +2 -2
  201. package/dist/core/{p-65b94ddb.entry.js → p-a5bee11f.entry.js} +2 -2
  202. package/dist/core/{p-eeefddb5.entry.js → p-b61e76e2.entry.js} +2 -2
  203. package/dist/core/p-b61e76e2.entry.js.map +1 -0
  204. package/dist/core/p-c0813424.entry.js +2 -0
  205. package/dist/core/p-c0813424.entry.js.map +1 -0
  206. package/dist/core/{p-b5b03f86.entry.js → p-cb437317.entry.js} +2 -2
  207. package/dist/core/p-d5d9923a.entry.js +2 -0
  208. package/dist/core/p-d5d9923a.entry.js.map +1 -0
  209. package/dist/core/{p-f777679c.entry.js → p-db7131b6.entry.js} +2 -2
  210. package/dist/core/{p-6c9ce0ec.entry.js → p-dc0b9e80.entry.js} +2 -2
  211. package/dist/core/{p-1e0174dc.entry.js → p-de45134c.entry.js} +2 -2
  212. package/dist/core/{p-9daae2ae.entry.js → p-de891d3d.entry.js} +2 -2
  213. package/dist/core/p-e0f24ccd.entry.js +2 -0
  214. package/dist/core/p-e0f24ccd.entry.js.map +1 -0
  215. package/dist/core/{p-741b4ea3.entry.js → p-e384aaee.entry.js} +2 -2
  216. package/dist/core/{p-977af213.entry.js → p-e41e701a.entry.js} +2 -2
  217. package/dist/core/{p-deada16f.entry.js → p-e839e5dc.entry.js} +2 -2
  218. package/dist/core/{p-186ecccd.entry.js → p-ea526b54.entry.js} +2 -2
  219. package/dist/core/{p-eb7599cc.entry.js → p-ec8b228c.entry.js} +2 -2
  220. package/dist/core/{p-eb7599cc.entry.js.map → p-ec8b228c.entry.js.map} +1 -1
  221. package/dist/core/{p-4269584a.entry.js → p-f3e10149.entry.js} +2 -2
  222. package/dist/core/{p-ad2477d8.entry.js → p-fc7dce3d.entry.js} +2 -2
  223. package/dist/core/p-ff6583e6.entry.js +2 -0
  224. package/dist/core/p-ff6583e6.entry.js.map +1 -0
  225. package/dist/esm/core.js +2 -2
  226. package/dist/esm/ic-alert.entry.js +1 -1
  227. package/dist/esm/ic-back-to-top.entry.js +1 -1
  228. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  229. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  230. package/dist/esm/ic-button_3.entry.js +16 -5
  231. package/dist/esm/ic-button_3.entry.js.map +1 -1
  232. package/dist/esm/ic-card.entry.js +2 -2
  233. package/dist/esm/ic-card.entry.js.map +1 -1
  234. package/dist/esm/ic-checkbox-group.entry.js +14 -16
  235. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  236. package/dist/esm/ic-checkbox.entry.js +9 -3
  237. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  238. package/dist/esm/ic-chip.entry.js +1 -1
  239. package/dist/esm/ic-classification-banner.entry.js +1 -1
  240. package/dist/esm/ic-data-entity.entry.js +1 -1
  241. package/dist/esm/ic-data-row.entry.js +1 -1
  242. package/dist/esm/ic-divider.entry.js +1 -1
  243. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  244. package/dist/esm/ic-footer-link.entry.js +1 -1
  245. package/dist/esm/ic-footer.entry.js +1 -1
  246. package/dist/esm/ic-hero.entry.js +1 -1
  247. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  248. package/dist/esm/ic-input-component-container_3.entry.js +145 -64
  249. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  250. package/dist/esm/ic-input-label_2.entry.js +1 -1
  251. package/dist/esm/ic-link.entry.js +1 -1
  252. package/dist/esm/ic-menu-group.entry.js +1 -1
  253. package/dist/esm/ic-menu-item.entry.js +2 -2
  254. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  255. package/dist/esm/ic-navigation-button.entry.js +1 -1
  256. package/dist/esm/ic-navigation-group.entry.js +1 -1
  257. package/dist/esm/ic-navigation-item.entry.js +1 -1
  258. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  259. package/dist/esm/ic-page-header.entry.js +1 -1
  260. package/dist/esm/ic-pagination-item.entry.js +47 -0
  261. package/dist/esm/ic-pagination-item.entry.js.map +1 -0
  262. package/dist/esm/ic-pagination.entry.js +202 -0
  263. package/dist/esm/ic-pagination.entry.js.map +1 -0
  264. package/dist/esm/ic-popover-menu.entry.js +1 -1
  265. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  266. package/dist/esm/ic-radio-group.entry.js +1 -1
  267. package/dist/esm/ic-radio-option.entry.js +1 -1
  268. package/dist/esm/ic-search-bar.entry.js +79 -12
  269. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  270. package/dist/esm/ic-section-container.entry.js +1 -1
  271. package/dist/esm/ic-select.entry.js +152 -44
  272. package/dist/esm/ic-select.entry.js.map +1 -1
  273. package/dist/esm/ic-side-navigation.entry.js +11 -3
  274. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  275. package/dist/esm/ic-skeleton.entry.js +1 -1
  276. package/dist/esm/ic-status-tag.entry.js +1 -1
  277. package/dist/esm/ic-step.entry.js +1 -1
  278. package/dist/esm/ic-stepper.entry.js +1 -1
  279. package/dist/esm/ic-switch.entry.js +1 -1
  280. package/dist/esm/ic-tab-context.entry.js +1 -1
  281. package/dist/esm/ic-tab-group.entry.js +1 -1
  282. package/dist/esm/ic-tab-panel.entry.js +1 -1
  283. package/dist/esm/ic-tab.entry.js +1 -1
  284. package/dist/esm/ic-text-field.entry.js +18 -7
  285. package/dist/esm/ic-text-field.entry.js.map +1 -1
  286. package/dist/esm/ic-theme.entry.js +1 -1
  287. package/dist/esm/ic-toast-region.entry.js +1 -1
  288. package/dist/esm/ic-toast.entry.js +1 -1
  289. package/dist/esm/ic-top-navigation.entry.js +3 -5
  290. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  291. package/dist/esm/ic-typography.entry.js +1 -1
  292. package/dist/esm/{index-90721b3c.js → index-3b144b17.js} +11 -2
  293. package/dist/esm/index-3b144b17.js.map +1 -0
  294. package/dist/esm/loader.js +2 -2
  295. package/dist/esm/types-dd515332.js.map +1 -1
  296. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -3
  297. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.types.d.ts +5 -0
  298. package/dist/types/components/ic-menu/ic-menu.d.ts +26 -7
  299. package/dist/types/components/ic-pagination/ic-pagination.d.ts +74 -0
  300. package/dist/types/components/ic-pagination/ic-pagination.test.a11y.d.ts +1 -0
  301. package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +4 -0
  302. package/dist/types/components/ic-pagination-item/ic-pagination-item.d.ts +46 -0
  303. package/dist/types/components/ic-pagination-item/ic-pagination-item.types.d.ts +1 -0
  304. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +30 -1
  305. package/dist/types/components/ic-select/ic-select.d.ts +31 -1
  306. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +2 -1
  307. package/dist/types/components/ic-text-field/ic-text-field.d.ts +11 -2
  308. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +7 -0
  309. package/dist/types/components.d.ts +282 -19
  310. package/dist/types/utils/types.d.ts +3 -0
  311. package/hydrate/index.js +743 -159
  312. package/package.json +3 -3
  313. package/dist/cjs/index-f79a4e53.js.map +0 -1
  314. package/dist/components/popper.js +0 -1801
  315. package/dist/components/popper.js.map +0 -1
  316. package/dist/core/p-0d4ccf6a.entry.js +0 -2
  317. package/dist/core/p-0d4ccf6a.entry.js.map +0 -1
  318. package/dist/core/p-5450cebf.js.map +0 -1
  319. package/dist/core/p-6e1f5022.entry.js +0 -2
  320. package/dist/core/p-6e1f5022.entry.js.map +0 -1
  321. package/dist/core/p-7c2b09c8.entry.js +0 -2
  322. package/dist/core/p-7c2b09c8.entry.js.map +0 -1
  323. package/dist/core/p-8959dd7d.entry.js +0 -2
  324. package/dist/core/p-8959dd7d.entry.js.map +0 -1
  325. package/dist/core/p-90d6dbd6.entry.js +0 -2
  326. package/dist/core/p-90d6dbd6.entry.js.map +0 -1
  327. package/dist/core/p-a8e969ea.entry.js +0 -2
  328. package/dist/core/p-a8e969ea.entry.js.map +0 -1
  329. package/dist/core/p-bb505d2a.entry.js +0 -2
  330. package/dist/core/p-bb505d2a.entry.js.map +0 -1
  331. package/dist/core/p-ce96a494.entry.js +0 -2
  332. package/dist/core/p-ce96a494.entry.js.map +0 -1
  333. package/dist/core/p-e4390415.entry.js +0 -2
  334. package/dist/core/p-e4390415.entry.js.map +0 -1
  335. package/dist/core/p-eeefddb5.entry.js.map +0 -1
  336. package/dist/core/p-f0244b5a.entry.js +0 -2
  337. package/dist/core/p-f0244b5a.entry.js.map +0 -1
  338. package/dist/esm/index-90721b3c.js.map +0 -1
  339. /package/dist/core/{p-0f0dfa16.entry.js.map → p-002a63e9.entry.js.map} +0 -0
  340. /package/dist/core/{p-759c80a3.entry.js.map → p-0575a77f.entry.js.map} +0 -0
  341. /package/dist/core/{p-3453aa9c.entry.js.map → p-0a41c3cb.entry.js.map} +0 -0
  342. /package/dist/core/{p-b7fc1f35.entry.js.map → p-100dbcec.entry.js.map} +0 -0
  343. /package/dist/core/{p-1bd4d07e.entry.js.map → p-14835d6f.entry.js.map} +0 -0
  344. /package/dist/core/{p-28b2158b.entry.js.map → p-1eb0992b.entry.js.map} +0 -0
  345. /package/dist/core/{p-62b3516e.entry.js.map → p-223a214f.entry.js.map} +0 -0
  346. /package/dist/core/{p-dd71a986.entry.js.map → p-276f7ecb.entry.js.map} +0 -0
  347. /package/dist/core/{p-3d84a743.entry.js.map → p-28bc3bf0.entry.js.map} +0 -0
  348. /package/dist/core/{p-8ffa00c9.entry.js.map → p-312c10b0.entry.js.map} +0 -0
  349. /package/dist/core/{p-cc62d065.entry.js.map → p-3a67718c.entry.js.map} +0 -0
  350. /package/dist/core/{p-74a768bc.entry.js.map → p-3dc2ff7b.entry.js.map} +0 -0
  351. /package/dist/core/{p-58ff516f.entry.js.map → p-3fb307e6.entry.js.map} +0 -0
  352. /package/dist/core/{p-d2508752.entry.js.map → p-454b1ecd.entry.js.map} +0 -0
  353. /package/dist/core/{p-7e309c50.entry.js.map → p-47b0ed42.entry.js.map} +0 -0
  354. /package/dist/core/{p-68c84039.entry.js.map → p-4b87445b.entry.js.map} +0 -0
  355. /package/dist/core/{p-0a463a65.entry.js.map → p-546b620e.entry.js.map} +0 -0
  356. /package/dist/core/{p-dc4ba6a0.entry.js.map → p-5d077cf7.entry.js.map} +0 -0
  357. /package/dist/core/{p-8c9cc4d5.entry.js.map → p-6a77992e.entry.js.map} +0 -0
  358. /package/dist/core/{p-d27dbb63.entry.js.map → p-6b39f8b4.entry.js.map} +0 -0
  359. /package/dist/core/{p-9e578e82.entry.js.map → p-8780890e.entry.js.map} +0 -0
  360. /package/dist/core/{p-ff15c756.entry.js.map → p-895bda21.entry.js.map} +0 -0
  361. /package/dist/core/{p-08535d97.entry.js.map → p-92c4fa7f.entry.js.map} +0 -0
  362. /package/dist/core/{p-41459307.entry.js.map → p-9413d639.entry.js.map} +0 -0
  363. /package/dist/core/{p-e17eea34.entry.js.map → p-a0f4e641.entry.js.map} +0 -0
  364. /package/dist/core/{p-4d8392fe.entry.js.map → p-a33a04b2.entry.js.map} +0 -0
  365. /package/dist/core/{p-65b94ddb.entry.js.map → p-a5bee11f.entry.js.map} +0 -0
  366. /package/dist/core/{p-b5b03f86.entry.js.map → p-cb437317.entry.js.map} +0 -0
  367. /package/dist/core/{p-f777679c.entry.js.map → p-db7131b6.entry.js.map} +0 -0
  368. /package/dist/core/{p-6c9ce0ec.entry.js.map → p-dc0b9e80.entry.js.map} +0 -0
  369. /package/dist/core/{p-1e0174dc.entry.js.map → p-de45134c.entry.js.map} +0 -0
  370. /package/dist/core/{p-9daae2ae.entry.js.map → p-de891d3d.entry.js.map} +0 -0
  371. /package/dist/core/{p-741b4ea3.entry.js.map → p-e384aaee.entry.js.map} +0 -0
  372. /package/dist/core/{p-977af213.entry.js.map → p-e41e701a.entry.js.map} +0 -0
  373. /package/dist/core/{p-deada16f.entry.js.map → p-e839e5dc.entry.js.map} +0 -0
  374. /package/dist/core/{p-186ecccd.entry.js.map → p-ea526b54.entry.js.map} +0 -0
  375. /package/dist/core/{p-4269584a.entry.js.map → p-f3e10149.entry.js.map} +0 -0
  376. /package/dist/core/{p-ad2477d8.entry.js.map → p-fc7dce3d.entry.js.map} +0 -0
@@ -35,14 +35,26 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
35
35
  this.icBlur = createEvent(this, "icBlur", 7);
36
36
  this.icOptionSelect = createEvent(this, "icOptionSelect", 7);
37
37
  this.icInput = createEvent(this, "icInput", 7);
38
+ this.icRetryLoad = createEvent(this, "icRetryLoad", 7);
38
39
  this.inputId = `ic-select-input-${inputIds++}`;
39
40
  this.menuId = `${this.inputId}-menu`;
40
41
  this.ungroupedOptions = [];
41
42
  this.inheritedAttributes = {};
42
43
  this.hasSetDefaultValue = false;
43
44
  this.initialOptionsEmpty = false;
45
+ this.handleRetry = (ev) => {
46
+ var _a;
47
+ if (ev.detail.keyPressed)
48
+ (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
49
+ this.blurredBecauseButtonPressed = true;
50
+ this.retryButtonClick = true;
51
+ this.hasSetDefaultValue = true;
52
+ this.icRetryLoad.emit({ value: this.hiddenInputValue });
53
+ };
44
54
  this.emitIcChange = (value) => {
45
- this.value = value;
55
+ if (!this.searchable) {
56
+ this.value = value;
57
+ }
46
58
  clearTimeout(this.debounceIcChange);
47
59
  this.debounceIcChange = window.setTimeout(() => {
48
60
  this.icChange.emit({ value: value });
@@ -85,11 +97,6 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
85
97
  this.getLabelFromValue = (value) => {
86
98
  return getLabelFromValue(value, this.options);
87
99
  };
88
- this.getValueFromLabel = (label) => {
89
- var _a;
90
- const value = (_a = this.options.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value;
91
- return value;
92
- };
93
100
  this.getFilteredChildMenuOptions = (option) => {
94
101
  let children = option.children;
95
102
  if (this.searchable) {
@@ -113,7 +120,13 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
113
120
  return;
114
121
  }
115
122
  if (this.searchable) {
116
- this.searchableSelectInputValue = this.getLabelFromValue(event.detail.value);
123
+ this.value = event.detail.value;
124
+ // After editing the input, if selecting the same option as before, set the input value to label again
125
+ if (this.value === this.currValue) {
126
+ this.searchableSelectInputValue = this.getLabelFromValue(this.value);
127
+ }
128
+ this.inputValueToFilter = null;
129
+ this.hiddenInputValue = this.getValueFromLabel(this.searchableSelectInputValue);
117
130
  }
118
131
  this.ariaActiveDescendant = event.detail.optionId;
119
132
  this.icOptionSelect.emit({ value: event.detail.value });
@@ -150,8 +163,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
150
163
  this.menu.options = this.filteredOptions;
151
164
  }
152
165
  else {
153
- this.noOptions = null;
154
- this.menu.options = this.options;
166
+ if (!this.hasTimedOut && !this.loading) {
167
+ this.noOptions = null;
168
+ this.menu.options = this.options;
169
+ }
155
170
  }
156
171
  if (event.detail !== 0 && this.isMenuEnabled()) {
157
172
  this.menu.handleClickOpen();
@@ -166,13 +181,15 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
166
181
  };
167
182
  this.handleClear = (event) => {
168
183
  event.stopPropagation();
184
+ this.hasTimedOut = false;
169
185
  this.noOptions = null;
170
186
  this.emitImmediateIcChange(null);
171
187
  this.icClear.emit();
172
188
  if (this.searchable) {
173
189
  this.searchableSelectElement.value = null;
174
190
  this.searchableSelectInputValue = null;
175
- this.menu.options = this.options;
191
+ this.filteredOptions = this.options;
192
+ this.hiddenInputValue = null;
176
193
  this.searchableSelectElement.focus();
177
194
  if (!this.isMenuEnabled()) {
178
195
  this.setMenuChange(false);
@@ -184,7 +201,11 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
184
201
  };
185
202
  this.handleCharacterKeyDown = (key) => {
186
203
  // Only close menu when space is pressed if not being used alongside character keys to quickly select options
187
- if (this.open && key === " " && this.pressedCharacters.length === 0) {
204
+ if (this.open &&
205
+ key === " " &&
206
+ this.pressedCharacters.length === 0 &&
207
+ !this.hasTimedOut &&
208
+ !this.loading) {
188
209
  this.setMenuChange(false);
189
210
  }
190
211
  if (key.length === 1 && !this.searchable) {
@@ -212,8 +233,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
212
233
  this.menu.options = this.filteredOptions;
213
234
  }
214
235
  else {
215
- this.noOptions = null;
216
- this.menu.options = this.options;
236
+ if (!this.hasTimedOut) {
237
+ this.noOptions = null;
238
+ this.menu.options = this.options;
239
+ }
217
240
  }
218
241
  }
219
242
  if (this.open && event.key === "Enter") {
@@ -222,6 +245,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
222
245
  else {
223
246
  if (!(isArrowKey && this.noOptions !== null) && this.isMenuEnabled()) {
224
247
  if (!(event.key === " " && this.pressedCharacters.length > 0)) {
248
+ // Keyboard events get passed onto ic-menu
225
249
  this.menu.handleKeyboardOpen(event);
226
250
  }
227
251
  this.handleCharacterKeyDown(event.key);
@@ -231,7 +255,15 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
231
255
  this.handleClearButtonFocus = () => {
232
256
  this.clearButtonFocused = true;
233
257
  };
234
- this.handleClearButtonBlur = () => {
258
+ this.handleClearButtonBlur = (ev) => {
259
+ var _a;
260
+ const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
261
+ if (!(this.searchableSelectElement &&
262
+ ev.relatedTarget === this.searchableSelectElement) &&
263
+ !(retryButton && ev.relatedTarget === retryButton)) {
264
+ this.setMenuChange(false);
265
+ this.handleFocusIndicatorDisplay();
266
+ }
235
267
  this.clearButtonFocused = false;
236
268
  };
237
269
  this.handleFilter = () => {
@@ -244,7 +276,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
244
276
  });
245
277
  let menuOptionsFiltered;
246
278
  if (this.searchable) {
247
- menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.searchableSelectInputValue, this.searchMatchPosition);
279
+ menuOptionsFiltered = getFilteredMenuOptions(options, this.includeDescriptionsInSearch, this.inputValueToFilter, this.searchMatchPosition);
248
280
  }
249
281
  else {
250
282
  menuOptionsFiltered = getFilteredMenuOptions(options, false, this.pressedCharacters, "start");
@@ -286,15 +318,37 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
286
318
  this.filteredOptions = this.noOptions;
287
319
  }
288
320
  };
321
+ this.triggerLoading = () => {
322
+ this.hasTimedOut = false;
323
+ this.noOptions = [{ label: this.loadingLabel, value: "", loading: true }];
324
+ if (this.filteredOptions !== this.noOptions && this.searchable)
325
+ this.filteredOptions = this.noOptions;
326
+ else if (!this.searchable && this.options !== this.noOptions)
327
+ this.options = this.noOptions;
328
+ if (this.timeout) {
329
+ this.timeoutTimer = window.setTimeout(() => {
330
+ this.loading = false;
331
+ this.hasTimedOut = true;
332
+ this.noOptions = [
333
+ { label: this.loadingErrorLabel, value: "", timedOut: true },
334
+ ];
335
+ this.filteredOptions = this.noOptions;
336
+ if (!this.searchable)
337
+ this.options = this.noOptions;
338
+ }, this.timeout);
339
+ }
340
+ };
341
+ this.getValueFromLabel = (label) => {
342
+ var _a;
343
+ const value = (_a = this.options.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value;
344
+ return value;
345
+ };
289
346
  this.handleSearchableSelectInput = (event) => {
290
347
  this.searchableSelectInputValue = event.target.value;
291
348
  this.icInput.emit({ value: this.searchableSelectInputValue });
292
- if (this.disableFilter) {
293
- this.emitIcChange(this.searchableSelectInputValue);
294
- }
295
- else if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {
296
- this.emitIcChange(null);
297
- }
349
+ this.emitIcChange(this.searchableSelectInputValue);
350
+ this.hiddenInputValue = this.searchableSelectInputValue;
351
+ this.inputValueToFilter = this.searchableSelectInputValue;
298
352
  if (this.isMenuEnabled()) {
299
353
  this.setMenuChange(true);
300
354
  }
@@ -322,20 +376,43 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
322
376
  this.icFocus.emit();
323
377
  };
324
378
  this.onBlur = (event) => {
379
+ var _a;
380
+ const target = event.relatedTarget;
381
+ if (target !== null &&
382
+ target.tagName === "UL" &&
383
+ target.className.includes("menu")) {
384
+ return;
385
+ }
386
+ const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
325
387
  const isSearchableAndNoFocusedInternalElements = this.searchable &&
326
388
  event.relatedTarget !== this.menu &&
327
389
  !Array.from(this.menu.querySelectorAll("[role='option']")).includes(event.relatedTarget) &&
328
- !(this.clearButton && event.relatedTarget === this.clearButton);
390
+ !(this.clearButton && event.relatedTarget === this.clearButton) &&
391
+ !(retryButton && event.relatedTarget === retryButton);
329
392
  if (isSearchableAndNoFocusedInternalElements) {
330
- this.setMenuChange(false);
393
+ if (!this.retryButtonClick) {
394
+ this.setMenuChange(false);
395
+ }
331
396
  this.handleFocusIndicatorDisplay();
332
397
  }
398
+ this.retryButtonClick = false;
333
399
  this.icBlur.emit();
334
400
  };
401
+ this.onTimeoutBlur = (ev) => {
402
+ if (ev.detail.ev.relatedTarget !==
403
+ this.searchableSelectElement &&
404
+ !this.blurredBecauseButtonPressed) {
405
+ this.setMenuChange(false);
406
+ this.handleFocusIndicatorDisplay();
407
+ this.icBlur.emit();
408
+ }
409
+ this.blurredBecauseButtonPressed = false;
410
+ };
335
411
  this.handleFormReset = () => {
336
412
  this.value = this.initialValue;
337
413
  if (this.searchable) {
338
414
  this.searchableSelectInputValue = this.getDefaultValue(this.value);
415
+ this.hiddenInputValue = this.value;
339
416
  }
340
417
  };
341
418
  this.label = undefined;
@@ -361,6 +438,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
361
438
  this.charactersUntilSuggestions = 0;
362
439
  this.emptyOptionListText = "No results found";
363
440
  this.disableFilter = false;
441
+ this.timeout = undefined;
442
+ this.loadingLabel = "Loading...";
443
+ this.loadingErrorLabel = "Loading Error";
444
+ this.loading = false;
364
445
  this.open = false;
365
446
  this.clearButtonFocused = false;
366
447
  this.searchableSelectInputValue = null;
@@ -372,28 +453,41 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
372
453
  this.currValue = this.value;
373
454
  this.debounceIcChange = undefined;
374
455
  this.pressedCharacters = "";
456
+ this.hiddenInputValue = undefined;
457
+ this.inputValueToFilter = this.value;
458
+ }
459
+ loadingHandler(newValue) {
460
+ newValue && this.triggerLoading();
375
461
  }
376
462
  watchOptionsHandler() {
377
- if (this.isExternalFiltering()) {
378
- if (this.options.length > 0) {
463
+ if (!this.hasTimedOut) {
464
+ this.loading = false;
465
+ clearTimeout(this.timeoutTimer);
466
+ if (this.isExternalFiltering()) {
467
+ if (this.options.length > 0) {
468
+ this.setOptionsValuesFromLabels();
469
+ this.noOptions = null;
470
+ this.filteredOptions = this.options;
471
+ }
472
+ else if (this.isMenuEnabled()) {
473
+ this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
474
+ this.filteredOptions = this.noOptions;
475
+ }
476
+ this.updateSearchableSelectResultAriaLive();
477
+ this.setDefaultValue();
478
+ }
479
+ else {
379
480
  this.setOptionsValuesFromLabels();
380
- this.noOptions = null;
381
481
  this.filteredOptions = this.options;
482
+ if (this.initialOptionsEmpty) {
483
+ this.setDefaultValue();
484
+ this.initialOptionsEmpty = false;
485
+ }
382
486
  }
383
- else if (this.isMenuEnabled()) {
384
- this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
385
- this.filteredOptions = this.noOptions;
386
- }
387
- this.updateSearchableSelectResultAriaLive();
388
- this.setDefaultValue();
389
487
  }
390
488
  else {
391
- this.setOptionsValuesFromLabels();
392
- this.filteredOptions = this.options;
393
- if (this.initialOptionsEmpty) {
394
- this.setDefaultValue();
395
- this.initialOptionsEmpty = false;
396
- }
489
+ if (!this.searchable)
490
+ this.options = this.noOptions;
397
491
  }
398
492
  }
399
493
  debounceChangedHandler(newValue) {
@@ -403,6 +497,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
403
497
  if (this.value !== this.currValue) {
404
498
  this.currValue = this.value;
405
499
  }
500
+ if (this.searchable && !!this.currValue) {
501
+ this.searchableSelectInputValue =
502
+ this.getLabelFromValue(this.currValue) || this.currValue;
503
+ }
406
504
  }
407
505
  /**
408
506
  * Sets focus on the input box.
@@ -447,7 +545,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
447
545
  if (!this.options.length) {
448
546
  this.initialOptionsEmpty = true;
449
547
  }
450
- else if (!this.disableFilter) {
548
+ else {
451
549
  this.setDefaultValue();
452
550
  }
453
551
  }
@@ -458,13 +556,22 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
458
556
  }
459
557
  componentDidLoad() {
460
558
  onComponentRequiredPropUndefined([{ prop: this.label, propName: "label" }], "Select");
559
+ if (this.loading)
560
+ this.triggerLoading();
561
+ this.hiddenInputValue = this.searchable && this.currValue;
461
562
  }
462
563
  disconnectedCallback() {
463
564
  removeFormResetListener(this.host, this.handleFormReset);
464
565
  }
465
566
  render() {
567
+ var _a, _b;
466
568
  const { small, disabled, fullWidth, helperText, hideLabel, label, menuId, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, } = this;
467
- renderHiddenInput(true, this.host, name, currValue, disabled);
569
+ const isOrHasLoaded = ((_a = (searchable ? this.filteredOptions : options)[0]) === null || _a === void 0 ? void 0 : _a.label) ===
570
+ this.loadingLabel ||
571
+ ((_b = (searchable ? this.filteredOptions : options)[0]) === null || _b === void 0 ? void 0 : _b.label) ===
572
+ this.loadingErrorLabel;
573
+ const inputValue = this.searchable ? this.hiddenInputValue : currValue;
574
+ renderHiddenInput(true, this.host, name, inputValue, disabled);
468
575
  const invalid = validationStatus === IcInformationStatus.Error ? "true" : "false";
469
576
  const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, this.disabled)).trim();
470
577
  return (h(Host, { class: {
@@ -472,7 +579,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
472
579
  searchable: searchable,
473
580
  small: small,
474
581
  "full-width": fullWidth,
475
- } }, 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 }, small: small, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, 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 }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
582
+ }, 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 }, small: small, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, 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 }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
476
583
  if (option.children) {
477
584
  return (h("optgroup", { label: option.label }, option.children.map((option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
478
585
  }
@@ -498,14 +605,15 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
498
605
  }, 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: small ? "small" : "default", variant: "icon", appearance: this.clearButtonFocused
499
606
  ? IcThemeForegroundEnum.Light
500
607
  : IcThemeForegroundEnum.Dark }))))), !isMobileOrTablet() && (h("ic-menu", { class: {
501
- "no-results": this.noOptions !== null && this.searchable,
608
+ "no-results": this.noOptions !== null || isOrHasLoaded,
502
609
  }, ref: (el) => (this.menu = el), inputEl: searchable
503
610
  ? this.searchableSelectElement
504
- : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: currValue, fullWidth: fullWidth, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, 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 })))));
611
+ : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : options, value: currValue, fullWidth: fullWidth, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.host, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable ? "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 })))));
505
612
  }
506
613
  static get delegatesFocus() { return true; }
507
614
  get host() { return this; }
508
615
  static get watchers() { return {
616
+ "loading": ["loadingHandler"],
509
617
  "options": ["watchOptionsHandler"],
510
618
  "debounce": ["debounceChangedHandler"],
511
619
  "value": ["valueChangedHandler"]
@@ -535,6 +643,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
535
643
  "charactersUntilSuggestions": [2, "characters-until-suggestions"],
536
644
  "emptyOptionListText": [1, "empty-option-list-text"],
537
645
  "disableFilter": [4, "disable-filter"],
646
+ "timeout": [2],
647
+ "loadingLabel": [1, "loading-label"],
648
+ "loadingErrorLabel": [1, "loading-error-label"],
649
+ "loading": [1028],
538
650
  "open": [32],
539
651
  "clearButtonFocused": [32],
540
652
  "searchableSelectInputValue": [32],
@@ -546,6 +658,8 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
546
658
  "currValue": [32],
547
659
  "debounceIcChange": [32],
548
660
  "pressedCharacters": [32],
661
+ "hiddenInputValue": [32],
662
+ "inputValueToFilter": [32],
549
663
  "setFocus": [64]
550
664
  }]);
551
665
  function defineCustomElement$1() {