@ukic/canary-web-components 3.0.0-canary.17 → 3.0.0-canary.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-6f33d131.js → helpers-a5405964.js} +12 -20
  3. package/dist/cjs/helpers-a5405964.js.map +1 -0
  4. package/dist/cjs/{helpers-e2bbcec9.js → helpers-f4e7322b.js} +21 -37
  5. package/dist/cjs/helpers-f4e7322b.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +10 -8
  8. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-badge.cjs.entry.js +4 -4
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +56 -76
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js +32 -51
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-button_3.cjs.entry.js +110 -131
  19. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-card-horizontal.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js +6 -6
  22. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js +9 -10
  24. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-checkbox_3.cjs.entry.js +50 -66
  26. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-chip.cjs.entry.js +26 -38
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  30. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  32. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-data-table.cjs.entry.js +312 -320
  35. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-date-picker.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-dialog.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  42. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  43. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-hero.cjs.entry.js +7 -6
  46. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  48. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +23 -22
  50. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-input-label_2.cjs.entry.js +8 -8
  52. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-link.cjs.entry.js +12 -4
  54. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  56. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-menu-item.cjs.entry.js +5 -5
  58. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -3
  60. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-navigation-group.cjs.entry.js +116 -164
  62. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-item.cjs.entry.js +65 -62
  64. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  66. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  68. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-pagination_4.cjs.entry.js +184 -252
  70. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  71. package/dist/cjs/ic-popover-menu.cjs.entry.js +8 -7
  72. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  74. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  75. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  76. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ic-search-bar.cjs.entry.js +149 -154
  78. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  80. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-side-navigation.cjs.entry.js +25 -6
  82. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  84. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  86. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  88. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ic-step.cjs.entry.js +14 -14
  90. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
  92. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ic-switch.cjs.entry.js +6 -6
  94. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  96. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  98. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  100. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-tab.cjs.entry.js +3 -3
  102. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  104. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  106. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  108. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +54 -68
  110. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-toggle-button.cjs.entry.js +62 -64
  112. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-top-navigation.cjs.entry.js +65 -63
  114. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  115. package/dist/cjs/ic-tree-item.cjs.entry.js +8 -3
  116. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  117. package/dist/cjs/ic-tree-view.cjs.entry.js +1 -1
  118. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  119. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  120. package/dist/cjs/loader.cjs.js +1 -1
  121. package/dist/collection/components/ic-data-table/ic-data-table.css +3 -5
  122. package/dist/collection/components/ic-data-table/ic-data-table.js +311 -319
  123. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  124. package/dist/collection/components/ic-data-table/story-data.js +1 -0
  125. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  126. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +30 -22
  127. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  128. package/dist/collection/components/ic-tree-item/ic-tree-item.js +23 -2
  129. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  130. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +13 -1
  131. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  132. package/dist/collection/utils/helpers.js +23 -51
  133. package/dist/collection/utils/helpers.js.map +1 -1
  134. package/dist/collection/utils/types.js.map +1 -1
  135. package/dist/components/helpers.js +20 -36
  136. package/dist/components/helpers.js.map +1 -1
  137. package/dist/components/helpers2.js +12 -20
  138. package/dist/components/helpers2.js.map +1 -1
  139. package/dist/components/ic-accordion.js +9 -7
  140. package/dist/components/ic-accordion.js.map +1 -1
  141. package/dist/components/ic-alert.js +1 -1
  142. package/dist/components/ic-alert.js.map +1 -1
  143. package/dist/components/ic-badge.js +3 -3
  144. package/dist/components/ic-badge.js.map +1 -1
  145. package/dist/components/ic-breadcrumb-group.js +57 -78
  146. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  147. package/dist/components/ic-breadcrumb2.js +32 -51
  148. package/dist/components/ic-breadcrumb2.js.map +1 -1
  149. package/dist/components/ic-button2.js +105 -126
  150. package/dist/components/ic-button2.js.map +1 -1
  151. package/dist/components/ic-card-vertical.js +5 -5
  152. package/dist/components/ic-card-vertical.js.map +1 -1
  153. package/dist/components/ic-checkbox-group.js +8 -9
  154. package/dist/components/ic-checkbox-group.js.map +1 -1
  155. package/dist/components/ic-checkbox2.js +39 -43
  156. package/dist/components/ic-checkbox2.js.map +1 -1
  157. package/dist/components/ic-chip.js +28 -40
  158. package/dist/components/ic-chip.js.map +1 -1
  159. package/dist/components/ic-data-list.js +2 -2
  160. package/dist/components/ic-data-list.js.map +1 -1
  161. package/dist/components/ic-data-row.js +2 -2
  162. package/dist/components/ic-data-row.js.map +1 -1
  163. package/dist/components/ic-data-table.js +312 -320
  164. package/dist/components/ic-data-table.js.map +1 -1
  165. package/dist/components/ic-dialog.js +1 -1
  166. package/dist/components/ic-dialog.js.map +1 -1
  167. package/dist/components/ic-empty-state2.js +2 -2
  168. package/dist/components/ic-empty-state2.js.map +1 -1
  169. package/dist/components/ic-footer-link.js +2 -2
  170. package/dist/components/ic-footer-link.js.map +1 -1
  171. package/dist/components/ic-hero.js +6 -5
  172. package/dist/components/ic-hero.js.map +1 -1
  173. package/dist/components/ic-horizontal-scroll2.js +5 -5
  174. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  175. package/dist/components/ic-input-component-container2.js +3 -3
  176. package/dist/components/ic-input-component-container2.js.map +1 -1
  177. package/dist/components/ic-input-container2.js +2 -2
  178. package/dist/components/ic-input-container2.js.map +1 -1
  179. package/dist/components/ic-input-label2.js +4 -4
  180. package/dist/components/ic-input-label2.js.map +1 -1
  181. package/dist/components/ic-input-validation2.js +3 -3
  182. package/dist/components/ic-input-validation2.js.map +1 -1
  183. package/dist/components/ic-link2.js +11 -3
  184. package/dist/components/ic-link2.js.map +1 -1
  185. package/dist/components/ic-loading-indicator2.js +3 -3
  186. package/dist/components/ic-loading-indicator2.js.map +1 -1
  187. package/dist/components/ic-menu-group.js +1 -1
  188. package/dist/components/ic-menu-group.js.map +1 -1
  189. package/dist/components/ic-menu-item2.js +4 -4
  190. package/dist/components/ic-menu-item2.js.map +1 -1
  191. package/dist/components/ic-menu2.js +17 -16
  192. package/dist/components/ic-menu2.js.map +1 -1
  193. package/dist/components/ic-navigation-button.js +2 -2
  194. package/dist/components/ic-navigation-button.js.map +1 -1
  195. package/dist/components/ic-navigation-group.js +115 -163
  196. package/dist/components/ic-navigation-group.js.map +1 -1
  197. package/dist/components/ic-navigation-item.js +67 -62
  198. package/dist/components/ic-navigation-item.js.map +1 -1
  199. package/dist/components/ic-navigation-menu2.js +4 -4
  200. package/dist/components/ic-navigation-menu2.js.map +1 -1
  201. package/dist/components/ic-page-header.js +6 -6
  202. package/dist/components/ic-page-header.js.map +1 -1
  203. package/dist/components/ic-pagination-bar2.js +12 -23
  204. package/dist/components/ic-pagination-bar2.js.map +1 -1
  205. package/dist/components/ic-pagination-item2.js +1 -1
  206. package/dist/components/ic-pagination-item2.js.map +1 -1
  207. package/dist/components/ic-pagination2.js +4 -4
  208. package/dist/components/ic-pagination2.js.map +1 -1
  209. package/dist/components/ic-popover-menu.js +7 -6
  210. package/dist/components/ic-popover-menu.js.map +1 -1
  211. package/dist/components/ic-radio-group.js +4 -4
  212. package/dist/components/ic-radio-group.js.map +1 -1
  213. package/dist/components/ic-radio-option.js +4 -4
  214. package/dist/components/ic-radio-option.js.map +1 -1
  215. package/dist/components/ic-search-bar.js +150 -154
  216. package/dist/components/ic-search-bar.js.map +1 -1
  217. package/dist/components/ic-section-container2.js +2 -2
  218. package/dist/components/ic-section-container2.js.map +1 -1
  219. package/dist/components/ic-select2.js +141 -217
  220. package/dist/components/ic-select2.js.map +1 -1
  221. package/dist/components/ic-side-navigation.js +25 -5
  222. package/dist/components/ic-side-navigation.js.map +1 -1
  223. package/dist/components/ic-skeleton.js +2 -2
  224. package/dist/components/ic-skeleton.js.map +1 -1
  225. package/dist/components/ic-skip-link.js +2 -2
  226. package/dist/components/ic-skip-link.js.map +1 -1
  227. package/dist/components/ic-status-tag.js +2 -2
  228. package/dist/components/ic-status-tag.js.map +1 -1
  229. package/dist/components/ic-step.js +13 -13
  230. package/dist/components/ic-step.js.map +1 -1
  231. package/dist/components/ic-stepper.js +2 -2
  232. package/dist/components/ic-stepper.js.map +1 -1
  233. package/dist/components/ic-switch.js +5 -5
  234. package/dist/components/ic-switch.js.map +1 -1
  235. package/dist/components/ic-tab-context.js +1 -1
  236. package/dist/components/ic-tab-context.js.map +1 -1
  237. package/dist/components/ic-tab-group.js +2 -2
  238. package/dist/components/ic-tab-group.js.map +1 -1
  239. package/dist/components/ic-tab-panel.js +2 -2
  240. package/dist/components/ic-tab-panel.js.map +1 -1
  241. package/dist/components/ic-tab.js +2 -2
  242. package/dist/components/ic-tab.js.map +1 -1
  243. package/dist/components/ic-text-field2.js +39 -30
  244. package/dist/components/ic-text-field2.js.map +1 -1
  245. package/dist/components/ic-theme.js +1 -1
  246. package/dist/components/ic-theme.js.map +1 -1
  247. package/dist/components/ic-toast-region.js +1 -1
  248. package/dist/components/ic-toast-region.js.map +1 -1
  249. package/dist/components/ic-toast.js +3 -3
  250. package/dist/components/ic-toast.js.map +1 -1
  251. package/dist/components/ic-toggle-button-group.js +53 -67
  252. package/dist/components/ic-toggle-button-group.js.map +1 -1
  253. package/dist/components/ic-toggle-button.js +61 -63
  254. package/dist/components/ic-toggle-button.js.map +1 -1
  255. package/dist/components/ic-tooltip2.js +2 -2
  256. package/dist/components/ic-tooltip2.js.map +1 -1
  257. package/dist/components/ic-top-navigation.js +65 -63
  258. package/dist/components/ic-top-navigation.js.map +1 -1
  259. package/dist/components/ic-tree-item.js +8 -2
  260. package/dist/components/ic-tree-item.js.map +1 -1
  261. package/dist/components/ic-tree-view.js +1 -1
  262. package/dist/components/ic-typography2.js +2 -2
  263. package/dist/components/ic-typography2.js.map +1 -1
  264. package/dist/core/core.css +159 -109
  265. package/dist/core/core.esm.js +1 -1
  266. package/dist/core/core.esm.js.map +1 -1
  267. package/dist/core/{p-bcf8c3d9.entry.js → p-0c9c6c31.entry.js} +2 -2
  268. package/dist/core/{p-bcf8c3d9.entry.js.map → p-0c9c6c31.entry.js.map} +1 -1
  269. package/dist/core/p-0e0e0942.js +2 -0
  270. package/dist/core/p-0e0e0942.js.map +1 -0
  271. package/dist/core/{p-1a76b6b4.entry.js → p-1673d010.entry.js} +2 -2
  272. package/dist/core/{p-1a76b6b4.entry.js.map → p-1673d010.entry.js.map} +1 -1
  273. package/dist/core/{p-0725255c.entry.js → p-16e78c1d.entry.js} +2 -2
  274. package/dist/core/p-16e78c1d.entry.js.map +1 -0
  275. package/dist/core/p-17926ee3.entry.js +2 -0
  276. package/dist/core/p-17926ee3.entry.js.map +1 -0
  277. package/dist/core/{p-75061bd0.entry.js → p-188ba287.entry.js} +2 -2
  278. package/dist/core/p-188ba287.entry.js.map +1 -0
  279. package/dist/core/{p-4f2391ec.entry.js → p-1f18bbf6.entry.js} +2 -2
  280. package/dist/core/{p-4f2391ec.entry.js.map → p-1f18bbf6.entry.js.map} +1 -1
  281. package/dist/core/{p-fa08e75c.entry.js → p-1fd22368.entry.js} +2 -2
  282. package/dist/core/{p-0e3a62cc.entry.js → p-2667c808.entry.js} +2 -2
  283. package/dist/core/p-28611f52.entry.js +2 -0
  284. package/dist/core/p-28611f52.entry.js.map +1 -0
  285. package/dist/core/{p-ba444517.entry.js → p-29a49ea2.entry.js} +2 -2
  286. package/dist/core/{p-ba444517.entry.js.map → p-29a49ea2.entry.js.map} +1 -1
  287. package/dist/core/{p-f34eee68.entry.js → p-3cb4ecef.entry.js} +2 -2
  288. package/dist/core/{p-f34eee68.entry.js.map → p-3cb4ecef.entry.js.map} +1 -1
  289. package/dist/core/p-4444e787.entry.js +2 -0
  290. package/dist/core/{p-30bcc30c.entry.js.map → p-4444e787.entry.js.map} +1 -1
  291. package/dist/core/p-4aaf10a5.entry.js +2 -0
  292. package/dist/core/p-4aaf10a5.entry.js.map +1 -0
  293. package/dist/core/{p-23665b88.entry.js → p-578a02ff.entry.js} +2 -2
  294. package/dist/core/{p-23665b88.entry.js.map → p-578a02ff.entry.js.map} +1 -1
  295. package/dist/core/{p-513619d5.entry.js → p-582da938.entry.js} +2 -2
  296. package/dist/core/{p-513619d5.entry.js.map → p-582da938.entry.js.map} +1 -1
  297. package/dist/core/{p-f35d81cb.entry.js → p-5926c2b2.entry.js} +2 -2
  298. package/dist/core/{p-f35d81cb.entry.js.map → p-5926c2b2.entry.js.map} +1 -1
  299. package/dist/core/p-61e78ce0.entry.js +2 -0
  300. package/dist/core/p-61e78ce0.entry.js.map +1 -0
  301. package/dist/core/p-671acf27.entry.js +2 -0
  302. package/dist/core/p-671acf27.entry.js.map +1 -0
  303. package/dist/core/{p-e6d3cd31.entry.js → p-6a63a73a.entry.js} +2 -2
  304. package/dist/core/{p-e6d3cd31.entry.js.map → p-6a63a73a.entry.js.map} +1 -1
  305. package/dist/core/{p-c3ba79d7.entry.js → p-6bfff7ba.entry.js} +2 -2
  306. package/dist/core/p-6bfff7ba.entry.js.map +1 -0
  307. package/dist/core/{p-9689784b.entry.js → p-6e0f4278.entry.js} +2 -2
  308. package/dist/core/p-7c3cd0b8.entry.js +2 -0
  309. package/dist/core/p-7c3cd0b8.entry.js.map +1 -0
  310. package/dist/core/p-7e4f5717.entry.js +2 -0
  311. package/dist/core/p-7e4f5717.entry.js.map +1 -0
  312. package/dist/core/{p-5aab7bb1.entry.js → p-7eaa223b.entry.js} +2 -2
  313. package/dist/core/{p-5aab7bb1.entry.js.map → p-7eaa223b.entry.js.map} +1 -1
  314. package/dist/core/p-8112444e.entry.js +2 -0
  315. package/dist/core/p-8112444e.entry.js.map +1 -0
  316. package/dist/core/{p-af1d6e41.entry.js → p-85a17585.entry.js} +2 -2
  317. package/dist/core/{p-3a9d2c5c.entry.js → p-864e337f.entry.js} +2 -2
  318. package/dist/core/{p-3a9d2c5c.entry.js.map → p-864e337f.entry.js.map} +1 -1
  319. package/dist/core/{p-bf903faa.entry.js → p-887b1302.entry.js} +2 -2
  320. package/dist/core/{p-bf903faa.entry.js.map → p-887b1302.entry.js.map} +1 -1
  321. package/dist/core/p-8ae0fd6f.entry.js +2 -0
  322. package/dist/core/p-8ae0fd6f.entry.js.map +1 -0
  323. package/dist/core/p-8d2d9e11.entry.js +2 -0
  324. package/dist/core/p-8d2d9e11.entry.js.map +1 -0
  325. package/dist/core/p-920f6480.entry.js +2 -0
  326. package/dist/core/p-920f6480.entry.js.map +1 -0
  327. package/dist/core/{p-74e0aa60.entry.js → p-9687e929.entry.js} +2 -2
  328. package/dist/core/{p-74e0aa60.entry.js.map → p-9687e929.entry.js.map} +1 -1
  329. package/dist/core/{p-7656c88f.entry.js → p-976f4280.entry.js} +2 -2
  330. package/dist/core/{p-7656c88f.entry.js.map → p-976f4280.entry.js.map} +1 -1
  331. package/dist/core/p-9989ec00.entry.js +2 -0
  332. package/dist/core/p-9989ec00.entry.js.map +1 -0
  333. package/dist/core/{p-7c819f45.entry.js → p-9a78f449.entry.js} +2 -2
  334. package/dist/core/{p-7c819f45.entry.js.map → p-9a78f449.entry.js.map} +1 -1
  335. package/dist/core/{p-09472c5e.entry.js → p-9aecbfe9.entry.js} +2 -2
  336. package/dist/core/{p-09472c5e.entry.js.map → p-9aecbfe9.entry.js.map} +1 -1
  337. package/dist/core/{p-45dbbdcb.entry.js → p-a894ddb6.entry.js} +2 -2
  338. package/dist/core/p-a894ddb6.entry.js.map +1 -0
  339. package/dist/core/p-abcaf14d.entry.js +2 -0
  340. package/dist/core/p-abcaf14d.entry.js.map +1 -0
  341. package/dist/core/p-aeeff0e5.entry.js +2 -0
  342. package/dist/core/p-aeeff0e5.entry.js.map +1 -0
  343. package/dist/core/{p-02cee2a0.entry.js → p-b7d117e8.entry.js} +2 -2
  344. package/dist/core/{p-e01ffbb8.entry.js → p-b92727c0.entry.js} +2 -2
  345. package/dist/core/{p-e01ffbb8.entry.js.map → p-b92727c0.entry.js.map} +1 -1
  346. package/dist/core/{p-27780b85.entry.js → p-b92e5fb3.entry.js} +2 -2
  347. package/dist/core/p-ba5e1b21.entry.js +2 -0
  348. package/dist/core/p-ba5e1b21.entry.js.map +1 -0
  349. package/dist/core/{p-de43d375.entry.js → p-bf3b853e.entry.js} +2 -2
  350. package/dist/core/{p-de43d375.entry.js.map → p-bf3b853e.entry.js.map} +1 -1
  351. package/dist/core/p-c3be8a0f.entry.js +2 -0
  352. package/dist/core/p-c3be8a0f.entry.js.map +1 -0
  353. package/dist/core/{p-f815f8c9.entry.js → p-c5ffe2cf.entry.js} +2 -2
  354. package/dist/core/{p-f815f8c9.entry.js.map → p-c5ffe2cf.entry.js.map} +1 -1
  355. package/dist/core/{p-aa83f828.entry.js → p-c8d207e1.entry.js} +2 -2
  356. package/dist/core/p-ca7e1219.entry.js +2 -0
  357. package/dist/core/p-ca7e1219.entry.js.map +1 -0
  358. package/dist/core/p-d0c38d58.entry.js +2 -0
  359. package/dist/core/p-d0c38d58.entry.js.map +1 -0
  360. package/dist/core/{p-23ed8b99.entry.js → p-d4903dcd.entry.js} +2 -2
  361. package/dist/core/{p-23ed8b99.entry.js.map → p-d4903dcd.entry.js.map} +1 -1
  362. package/dist/core/{p-40f2f58e.entry.js → p-de1e04ac.entry.js} +2 -2
  363. package/dist/core/{p-40f2f58e.entry.js.map → p-de1e04ac.entry.js.map} +1 -1
  364. package/dist/core/{p-4b601e06.entry.js → p-dee21f6d.entry.js} +2 -2
  365. package/dist/core/{p-4b601e06.entry.js.map → p-dee21f6d.entry.js.map} +1 -1
  366. package/dist/core/{p-112d96ce.entry.js → p-e003ad46.entry.js} +2 -2
  367. package/dist/core/{p-112d96ce.entry.js.map → p-e003ad46.entry.js.map} +1 -1
  368. package/dist/core/{p-b3ac38c5.entry.js → p-e2629bfe.entry.js} +2 -2
  369. package/dist/core/{p-b3ac38c5.entry.js.map → p-e2629bfe.entry.js.map} +1 -1
  370. package/dist/core/p-e38dd019.entry.js +2 -0
  371. package/dist/core/p-e38dd019.entry.js.map +1 -0
  372. package/dist/core/{p-29f472ab.entry.js → p-e546d477.entry.js} +2 -2
  373. package/dist/core/p-e546d477.entry.js.map +1 -0
  374. package/dist/core/{p-b4168d61.entry.js → p-e64e27be.entry.js} +2 -2
  375. package/dist/core/{p-b4168d61.entry.js.map → p-e64e27be.entry.js.map} +1 -1
  376. package/dist/core/{p-eb4add0d.entry.js → p-ead9900a.entry.js} +2 -2
  377. package/dist/core/{p-eb4add0d.entry.js.map → p-ead9900a.entry.js.map} +1 -1
  378. package/dist/core/{p-c7080f8d.entry.js → p-eb74cab5.entry.js} +2 -2
  379. package/dist/core/{p-c7080f8d.entry.js.map → p-eb74cab5.entry.js.map} +1 -1
  380. package/dist/core/p-eca2fea1.js +2 -0
  381. package/dist/core/p-eca2fea1.js.map +1 -0
  382. package/dist/core/{p-f39cf9b1.entry.js → p-f6eaec92.entry.js} +2 -2
  383. package/dist/core/{p-5c363e21.entry.js → p-f9e78341.entry.js} +2 -2
  384. package/dist/core/{p-0a0b25c5.entry.js → p-fedfd000.entry.js} +2 -2
  385. package/dist/esm/core.js +1 -1
  386. package/dist/esm/{helpers-0bb68835.js → helpers-ef2db990.js} +13 -21
  387. package/dist/esm/helpers-ef2db990.js.map +1 -0
  388. package/dist/esm/{helpers-fb59efa8.js → helpers-fc03923c.js} +22 -38
  389. package/dist/esm/helpers-fc03923c.js.map +1 -0
  390. package/dist/esm/ic-accordion-group.entry.js +1 -1
  391. package/dist/esm/ic-accordion.entry.js +10 -8
  392. package/dist/esm/ic-accordion.entry.js.map +1 -1
  393. package/dist/esm/ic-alert.entry.js +2 -2
  394. package/dist/esm/ic-alert.entry.js.map +1 -1
  395. package/dist/esm/ic-back-to-top.entry.js +1 -1
  396. package/dist/esm/ic-badge.entry.js +4 -4
  397. package/dist/esm/ic-badge.entry.js.map +1 -1
  398. package/dist/esm/ic-breadcrumb-group.entry.js +56 -76
  399. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  400. package/dist/esm/ic-breadcrumb.entry.js +32 -51
  401. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  402. package/dist/esm/ic-button_3.entry.js +111 -132
  403. package/dist/esm/ic-button_3.entry.js.map +1 -1
  404. package/dist/esm/ic-card-horizontal.entry.js +1 -1
  405. package/dist/esm/ic-card-vertical.entry.js +6 -6
  406. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  407. package/dist/esm/ic-checkbox-group.entry.js +9 -10
  408. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  409. package/dist/esm/ic-checkbox_3.entry.js +50 -66
  410. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  411. package/dist/esm/ic-chip.entry.js +26 -38
  412. package/dist/esm/ic-chip.entry.js.map +1 -1
  413. package/dist/esm/ic-data-list.entry.js +2 -2
  414. package/dist/esm/ic-data-list.entry.js.map +1 -1
  415. package/dist/esm/ic-data-row.entry.js +3 -3
  416. package/dist/esm/ic-data-row.entry.js.map +1 -1
  417. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  418. package/dist/esm/ic-data-table.entry.js +312 -320
  419. package/dist/esm/ic-data-table.entry.js.map +1 -1
  420. package/dist/esm/ic-date-input.entry.js +1 -1
  421. package/dist/esm/ic-date-picker.entry.js +1 -1
  422. package/dist/esm/ic-dialog.entry.js +2 -2
  423. package/dist/esm/ic-dialog.entry.js.map +1 -1
  424. package/dist/esm/ic-divider.entry.js +1 -1
  425. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  426. package/dist/esm/ic-footer-link.entry.js +3 -3
  427. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  428. package/dist/esm/ic-footer.entry.js +1 -1
  429. package/dist/esm/ic-hero.entry.js +7 -6
  430. package/dist/esm/ic-hero.entry.js.map +1 -1
  431. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  432. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  433. package/dist/esm/ic-input-component-container_3.entry.js +23 -22
  434. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  435. package/dist/esm/ic-input-label_2.entry.js +8 -8
  436. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  437. package/dist/esm/ic-link.entry.js +12 -4
  438. package/dist/esm/ic-link.entry.js.map +1 -1
  439. package/dist/esm/ic-menu-group.entry.js +2 -2
  440. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  441. package/dist/esm/ic-menu-item.entry.js +5 -5
  442. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  443. package/dist/esm/ic-navigation-button.entry.js +3 -3
  444. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  445. package/dist/esm/ic-navigation-group.entry.js +116 -164
  446. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  447. package/dist/esm/ic-navigation-item.entry.js +65 -62
  448. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  449. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  450. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  451. package/dist/esm/ic-page-header.entry.js +7 -7
  452. package/dist/esm/ic-page-header.entry.js.map +1 -1
  453. package/dist/esm/ic-pagination_4.entry.js +184 -252
  454. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  455. package/dist/esm/ic-popover-menu.entry.js +8 -7
  456. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  457. package/dist/esm/ic-radio-group.entry.js +5 -5
  458. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  459. package/dist/esm/ic-radio-option.entry.js +5 -5
  460. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  461. package/dist/esm/ic-search-bar.entry.js +149 -154
  462. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  463. package/dist/esm/ic-section-container.entry.js +2 -2
  464. package/dist/esm/ic-section-container.entry.js.map +1 -1
  465. package/dist/esm/ic-side-navigation.entry.js +25 -6
  466. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  467. package/dist/esm/ic-skeleton.entry.js +2 -2
  468. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  469. package/dist/esm/ic-skip-link.entry.js +2 -2
  470. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  471. package/dist/esm/ic-status-tag.entry.js +3 -3
  472. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  473. package/dist/esm/ic-step.entry.js +14 -14
  474. package/dist/esm/ic-step.entry.js.map +1 -1
  475. package/dist/esm/ic-stepper.entry.js +3 -3
  476. package/dist/esm/ic-stepper.entry.js.map +1 -1
  477. package/dist/esm/ic-switch.entry.js +6 -6
  478. package/dist/esm/ic-switch.entry.js.map +1 -1
  479. package/dist/esm/ic-tab-context.entry.js +1 -1
  480. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  481. package/dist/esm/ic-tab-group.entry.js +3 -3
  482. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  483. package/dist/esm/ic-tab-panel.entry.js +2 -2
  484. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  485. package/dist/esm/ic-tab.entry.js +3 -3
  486. package/dist/esm/ic-tab.entry.js.map +1 -1
  487. package/dist/esm/ic-theme.entry.js +2 -2
  488. package/dist/esm/ic-theme.entry.js.map +1 -1
  489. package/dist/esm/ic-toast-region.entry.js +1 -1
  490. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  491. package/dist/esm/ic-toast.entry.js +4 -4
  492. package/dist/esm/ic-toast.entry.js.map +1 -1
  493. package/dist/esm/ic-toggle-button-group.entry.js +54 -68
  494. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  495. package/dist/esm/ic-toggle-button.entry.js +62 -64
  496. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  497. package/dist/esm/ic-top-navigation.entry.js +66 -64
  498. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  499. package/dist/esm/ic-tree-item.entry.js +8 -3
  500. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  501. package/dist/esm/ic-tree-view.entry.js +1 -1
  502. package/dist/esm/ic-typography.entry.js +3 -3
  503. package/dist/esm/ic-typography.entry.js.map +1 -1
  504. package/dist/esm/loader.js +1 -1
  505. package/dist/types/components/ic-data-table/ic-data-table.d.ts +15 -4
  506. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +4 -1
  507. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +7 -0
  508. package/dist/types/components.d.ts +13 -0
  509. package/dist/types/utils/helpers.d.ts +3 -3
  510. package/dist/types/utils/types.d.ts +2 -0
  511. package/hydrate/index.js +1524 -1738
  512. package/hydrate/index.mjs +1524 -1738
  513. package/package.json +3 -3
  514. package/dist/cjs/helpers-6f33d131.js.map +0 -1
  515. package/dist/cjs/helpers-e2bbcec9.js.map +0 -1
  516. package/dist/core/p-00df60bd.entry.js +0 -2
  517. package/dist/core/p-00df60bd.entry.js.map +0 -1
  518. package/dist/core/p-0725255c.entry.js.map +0 -1
  519. package/dist/core/p-1024726b.entry.js +0 -2
  520. package/dist/core/p-1024726b.entry.js.map +0 -1
  521. package/dist/core/p-29f472ab.entry.js.map +0 -1
  522. package/dist/core/p-30bcc30c.entry.js +0 -2
  523. package/dist/core/p-315ac907.entry.js +0 -2
  524. package/dist/core/p-315ac907.entry.js.map +0 -1
  525. package/dist/core/p-3ddf2dc7.entry.js +0 -2
  526. package/dist/core/p-3ddf2dc7.entry.js.map +0 -1
  527. package/dist/core/p-3ec9c8c2.entry.js +0 -2
  528. package/dist/core/p-3ec9c8c2.entry.js.map +0 -1
  529. package/dist/core/p-423c721c.entry.js +0 -2
  530. package/dist/core/p-423c721c.entry.js.map +0 -1
  531. package/dist/core/p-45dbbdcb.entry.js.map +0 -1
  532. package/dist/core/p-4933549f.entry.js +0 -2
  533. package/dist/core/p-4933549f.entry.js.map +0 -1
  534. package/dist/core/p-4c77e828.entry.js +0 -2
  535. package/dist/core/p-4c77e828.entry.js.map +0 -1
  536. package/dist/core/p-657321ee.entry.js +0 -2
  537. package/dist/core/p-657321ee.entry.js.map +0 -1
  538. package/dist/core/p-661f22bd.entry.js +0 -2
  539. package/dist/core/p-661f22bd.entry.js.map +0 -1
  540. package/dist/core/p-6634052e.entry.js +0 -2
  541. package/dist/core/p-6634052e.entry.js.map +0 -1
  542. package/dist/core/p-71166167.entry.js +0 -2
  543. package/dist/core/p-71166167.entry.js.map +0 -1
  544. package/dist/core/p-75061bd0.entry.js.map +0 -1
  545. package/dist/core/p-78709ece.entry.js +0 -2
  546. package/dist/core/p-78709ece.entry.js.map +0 -1
  547. package/dist/core/p-789f423c.entry.js +0 -2
  548. package/dist/core/p-789f423c.entry.js.map +0 -1
  549. package/dist/core/p-7d9ab461.entry.js +0 -2
  550. package/dist/core/p-7d9ab461.entry.js.map +0 -1
  551. package/dist/core/p-9e4a0c01.entry.js +0 -2
  552. package/dist/core/p-9e4a0c01.entry.js.map +0 -1
  553. package/dist/core/p-bdbd185c.js +0 -2
  554. package/dist/core/p-bdbd185c.js.map +0 -1
  555. package/dist/core/p-c3ba79d7.entry.js.map +0 -1
  556. package/dist/core/p-e185bfa7.entry.js +0 -2
  557. package/dist/core/p-e185bfa7.entry.js.map +0 -1
  558. package/dist/core/p-ed542433.js +0 -2
  559. package/dist/core/p-ed542433.js.map +0 -1
  560. package/dist/core/p-fc852e9b.entry.js +0 -2
  561. package/dist/core/p-fc852e9b.entry.js.map +0 -1
  562. package/dist/core/p-fe85b5b2.entry.js +0 -2
  563. package/dist/core/p-fe85b5b2.entry.js.map +0 -1
  564. package/dist/esm/helpers-0bb68835.js.map +0 -1
  565. package/dist/esm/helpers-fb59efa8.js.map +0 -1
  566. /package/dist/core/{p-fa08e75c.entry.js.map → p-1fd22368.entry.js.map} +0 -0
  567. /package/dist/core/{p-0e3a62cc.entry.js.map → p-2667c808.entry.js.map} +0 -0
  568. /package/dist/core/{p-9689784b.entry.js.map → p-6e0f4278.entry.js.map} +0 -0
  569. /package/dist/core/{p-af1d6e41.entry.js.map → p-85a17585.entry.js.map} +0 -0
  570. /package/dist/core/{p-02cee2a0.entry.js.map → p-b7d117e8.entry.js.map} +0 -0
  571. /package/dist/core/{p-27780b85.entry.js.map → p-b92e5fb3.entry.js.map} +0 -0
  572. /package/dist/core/{p-aa83f828.entry.js.map → p-c8d207e1.entry.js.map} +0 -0
  573. /package/dist/core/{p-f39cf9b1.entry.js.map → p-f6eaec92.entry.js.map} +0 -0
  574. /package/dist/core/{p-5c363e21.entry.js.map → p-f9e78341.entry.js.map} +0 -0
  575. /package/dist/core/{p-0a0b25c5.entry.js.map → p-fedfd000.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement, f as forceUpdate } from './index-a7a720e7.js';
2
- import { r as removeDisabledFalse, b as onComponentRequiredPropUndefined, N as capitalize, O as checkSlotInChildMutations, C as getLabelFromValue, z as getFilteredMenuOptions, P as getOptionsWithoutGroupTitlesCount, x as removeFormResetListener, t as inheritAttributes, y as addFormResetListener, E as renderHiddenInput, j as getInputDescribedByText, k as hasValidationStatus, Q as isMobileOrTablet, u as IC_INHERITED_ARIA, R as IcInformationStatus, B as debounceEvent, S as IGNORED_KEYBOARD_CHARACTERS, L as removeHiddenInput, i as isSlotUsed, F as isEmptyString } from './helpers-fb59efa8.js';
2
+ import { r as removeDisabledFalse, b as onComponentRequiredPropUndefined, N as capitalize, O as checkSlotInChildMutations, A as getLabelFromValue, z as getFilteredMenuOptions, P as getOptionsWithoutGroupTitlesCount, x as removeFormResetListener, t as inheritAttributes, y as addFormResetListener, E as renderHiddenInput, j as getInputDescribedByText, k as hasValidationStatus, i as isSlotUsed, Q as isMobileOrTablet, u as IC_INHERITED_ARIA, R as IcInformationStatus, C as debounceEvent, S as IGNORED_KEYBOARD_CHARACTERS, L as removeHiddenInput, F as isEmptyString } from './helpers-fc03923c.js';
3
3
 
4
4
  const paginationNextPrevious = `<svg width="8" height="10" viewBox="0 0 8 10" fill="none" xmlns="http://www.w3.org/2000/svg">
5
5
  <path d="M2.08748 0L0.912476 1.175L4.72914 5L0.912476 8.825L2.08748 10L7.08748 5L2.08748 0Z" fill="currentColor"/>
@@ -252,14 +252,14 @@ const Pagination = class {
252
252
  }
253
253
  render() {
254
254
  const { type, currentPage, hideCurrentPage, disabled, hideFirstAndLastPageButton, label, theme, monochrome, } = this;
255
- return (h(Host, { key: '70130b80edbb60548c9f50c2943f05011e56be69', class: {
255
+ return (h(Host, { key: 'def082d6417770159241eaf69660011a9fa56978', class: {
256
256
  [`ic-theme-${theme}`]: theme !== "inherit",
257
257
  ["ic-pagination-monochrome"]: !!monochrome,
258
- } }, type === "simple" && (h("nav", { key: 'bbe920e2011813cfb8dfe4d6f5bbd9e5f6122ffd', class: {
258
+ } }, type === "simple" && (h("nav", { key: '7d2a663d826de4c5916d6ece70222bf28157b57b', class: {
259
259
  ["disabled"]: !!disabled,
260
- }, role: "navigation", "aria-label": "Pagination Navigation" }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), h("ic-pagination-item", { key: 'd4f502db5763086dbdcb518f819638e944c4c2e4', theme: this.theme, monochrome: this.monochrome, type: "simple-current", page: currentPage, label: label, class: { ["hide-current-page"]: !!hideCurrentPage }, disabled: disabled }), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("nav", { key: '88cc5fb9aab0dafc34dd1a4d4744ddfcf863cd11', class: {
260
+ }, role: "navigation", "aria-label": "Pagination Navigation" }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), h("ic-pagination-item", { key: '010243beef572daba8a9c1f58978213f02446b2e', theme: this.theme, monochrome: this.monochrome, type: "simple-current", page: currentPage, label: label, class: { ["hide-current-page"]: !!hideCurrentPage }, disabled: disabled }), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("nav", { key: '7ab291c9e698dfb1ead08c7a59858a4f3f715488', class: {
261
261
  ["disabled"]: !!disabled,
262
- }, role: "navigation", "aria-label": "Pagination Navigation" }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), this.renderStartItems(), this.startEllipsis && this.renderStartEllipsis(), this.renderMiddleItems(), this.endEllipsis && this.renderEndEllipsis(), this.renderEndItems(), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("span", { key: '39e0d6b75392af13093c4c5ca5ab94c7da8d8a96', class: "sr-only", "aria-live": "polite" }, "Page ", this.currentPage))));
262
+ }, role: "navigation", "aria-label": "Pagination Navigation" }, hideFirstAndLastPageButton ? null : this.firstButton(), this.previousButton(), this.renderStartItems(), this.startEllipsis && this.renderStartEllipsis(), this.renderMiddleItems(), this.endEllipsis && this.renderEndEllipsis(), this.renderEndItems(), this.nextButton(), hideFirstAndLastPageButton ? null : this.lastButton())), type === "complex" && (h("span", { key: '2b7be6cd03fb72ccaf3a2bd08fbf5ef5f52e5050', class: "sr-only", "aria-live": "polite" }, "Page ", this.currentPage))));
263
263
  }
264
264
  get el() { return getElement(this); }
265
265
  static get watchers() { return {
@@ -316,7 +316,7 @@ const PaginationItem = class {
316
316
  }
317
317
  render() {
318
318
  const { page, selected, type, disabled, label, capitalizedLabel, monochrome, } = this;
319
- return (h("a", { key: '1a741926e4af87f661203c00d3eebecfe31fed2e', class: { ["monochrome"]: !!monochrome } }, type === "ellipsis" ? (h("div", { class: {
319
+ return (h("a", { key: '775649dcb0b2df73e18ddbb563cb088f5e4bf394', class: { ["monochrome"]: !!monochrome } }, type === "ellipsis" ? (h("div", { class: {
320
320
  ["item-container"]: true,
321
321
  ["ellipsis"]: true,
322
322
  ["disabled"]: !!disabled,
@@ -369,11 +369,14 @@ const Select = class {
369
369
  this.icOptionSelect = createEvent(this, "icOptionSelect", 7);
370
370
  this.icOptionDeselect = createEvent(this, "icOptionDeselect", 7);
371
371
  this.icRetryLoad = createEvent(this, "icRetryLoad", 7);
372
+ this.blurredBecauseButtonPressed = false;
372
373
  this.hasSetDefaultValue = false;
374
+ this.hasTimedOut = false;
373
375
  this.inheritedAttributes = {};
374
376
  this.initialOptionsEmpty = false;
375
377
  this.inputId = `ic-select-input-${inputIds$1++}`;
376
378
  this.menuId = `${this.inputId}-menu`;
379
+ this.retryButtonClick = false;
377
380
  this.searchableMenuItemSelected = false;
378
381
  this.ungroupedOptions = [];
379
382
  this.hostMutationObserver = null;
@@ -489,6 +492,12 @@ const Select = class {
489
492
  */
490
493
  this.debounce = 0;
491
494
  this.currDebounce = this.debounce;
495
+ /**
496
+ * The value of the select, reflected by the value of the currently selected option.
497
+ * For the searchable variant, the value is also reflected by the user input.
498
+ * For the multi-select variant, the value must be an array of option values.
499
+ */
500
+ this.value = null;
492
501
  this.initialValue = this.value;
493
502
  this.inputValueToFilter = this.value;
494
503
  // triggered when attributes of host element change
@@ -526,13 +535,27 @@ const Select = class {
526
535
  this.emitIcChange = (value) => {
527
536
  // If "Select all" button clicked, replace value with new value (array of all option values)
528
537
  if (this.multiple && !Array.isArray(value) && value !== null) {
529
- this.handleMultipleSelectChange(String(value));
538
+ // Update selected options - adds / removes them, in order of option list
539
+ // Create new array if value prop is undefined
540
+ if (this.value) {
541
+ let valueArray = this.value.slice();
542
+ if (this.value.includes(value)) {
543
+ valueArray.splice(valueArray.indexOf(value), 1);
544
+ }
545
+ else {
546
+ valueArray.push(value);
547
+ valueArray = this.getValueSortedByOptions(valueArray);
548
+ }
549
+ this.value = valueArray.length === 0 ? null : valueArray;
550
+ }
551
+ else {
552
+ this.value = [value];
553
+ }
530
554
  }
531
555
  else {
532
556
  this.value = value;
533
557
  }
534
- const valueToEmit = this.multiple ? this.value : value;
535
- this.icChange.emit({ value: valueToEmit || null });
558
+ this.icChange.emit({ value: this.multiple ? this.value : value });
536
559
  };
537
560
  this.emitIcInput = (value) => {
538
561
  clearTimeout(this.debounceIcInput);
@@ -545,30 +568,25 @@ const Select = class {
545
568
  if (this.options.length > 0) {
546
569
  this.setOptionsValuesFromLabels();
547
570
  this.uniqueOptions = this.deduplicateOptions(this.options);
548
- this.filteredOptions = this.uniqueOptions;
549
571
  }
550
572
  else {
551
573
  this.noOptions = [{ label: this.emptyOptionListText, value: "" }];
552
574
  this.uniqueOptions = this.noOptions;
553
- this.filteredOptions = this.noOptions;
554
575
  }
576
+ this.filteredOptions = this.uniqueOptions;
555
577
  if (this.isExternalFiltering()) {
556
578
  // When searchable select
557
579
  this.noOptions = null;
558
580
  this.updateSearchableSelectResultAriaLive();
559
581
  this.setDefaultValue();
560
582
  }
561
- else {
562
- if (this.initialOptionsEmpty) {
563
- this.setDefaultValue();
564
- this.initialOptionsEmpty = false;
565
- }
583
+ else if (this.initialOptionsEmpty) {
584
+ this.setDefaultValue();
585
+ this.initialOptionsEmpty = false;
566
586
  }
567
587
  }
568
- else {
569
- if (!this.searchable) {
570
- this.options = this.noOptions || [];
571
- }
588
+ else if (!this.searchable) {
589
+ this.options = this.noOptions || [];
572
590
  }
573
591
  };
574
592
  /**
@@ -579,11 +597,10 @@ const Select = class {
579
597
  this.deduplicateOptions = (options) => {
580
598
  const uniqueValues = [];
581
599
  const dedupedOptions = [];
582
- let dedupedChildren;
583
600
  options.forEach((option) => {
584
601
  if (option.children) {
585
602
  //If an option has children, we will loop through them
586
- dedupedChildren = [];
603
+ const dedupedChildren = [];
587
604
  option.children.forEach((child) => {
588
605
  if (uniqueValues.includes(child.value)) {
589
606
  console.warn(`ic-select with label ${this.label} was populated with duplicate option (value: ${child.value}) which has been removed.`);
@@ -594,8 +611,7 @@ const Select = class {
594
611
  }
595
612
  });
596
613
  // construct a modified option, inserting the deduplicated children alongside the original information
597
- const modifiedParent = Object.assign(Object.assign({}, option), { children: dedupedChildren });
598
- dedupedOptions.push(modifiedParent);
614
+ dedupedOptions.push(Object.assign(Object.assign({}, option), { children: dedupedChildren }));
599
615
  }
600
616
  else {
601
617
  // If an option does not have children, assess to see if it's value has been included already
@@ -627,12 +643,10 @@ const Select = class {
627
643
  };
628
644
  this.setTextColor = () => {
629
645
  if (this.nativeSelectElement) {
630
- if (this.nativeSelectElement.selectedIndex === 0) {
631
- this.nativeSelectElement.className = "placeholder";
632
- }
633
- else {
634
- this.nativeSelectElement.className = "select-option-selected";
635
- }
646
+ this.nativeSelectElement.className =
647
+ this.nativeSelectElement.selectedIndex === 0
648
+ ? "placeholder"
649
+ : "select-option-selected";
636
650
  }
637
651
  };
638
652
  this.setMenuChange = (open) => {
@@ -640,27 +654,12 @@ const Select = class {
640
654
  this.open = open;
641
655
  }
642
656
  };
643
- this.getLabelFromValue = (value) => {
644
- return getLabelFromValue(value, this.uniqueOptions);
645
- };
646
- this.getMultipleOptionsString = (selectedValues) => {
647
- const selectedLabels = selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map((value) => this.getLabelFromValue(value)).filter((label) => !!label);
648
- return selectedLabels === null || selectedLabels === void 0 ? void 0 : selectedLabels.join(", ");
649
- };
650
- this.getFilteredChildMenuOptions = (option) => {
651
- let children = option.children;
652
- if (option.children) {
653
- if (this.searchable) {
654
- children = getFilteredMenuOptions(option.children, !!this.includeDescriptionsInSearch, this.searchableSelectInputValue || "", this.searchMatchPosition);
655
- }
656
- else {
657
- children = getFilteredMenuOptions(option.children, false, this.pressedCharacters, "start");
658
- }
659
- }
660
- const newOption = Object.assign({}, option);
661
- newOption.children = children;
662
- return newOption;
663
- };
657
+ this.getLabelFromValue = (value) => getLabelFromValue(value, this.uniqueOptions);
658
+ this.getMultipleOptionsString = (selectedValues) => selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map((value) => this.getLabelFromValue(value)).filter((label) => !!label).join(", ");
659
+ this.getFilteredChildMenuOptions = (option) => (Object.assign(Object.assign({}, option), { children: option.children &&
660
+ getFilteredMenuOptions(option.children, this.searchable && !!this.includeDescriptionsInSearch, this.searchable
661
+ ? this.searchableSelectInputValue || ""
662
+ : this.pressedCharacters, this.searchable ? this.searchMatchPosition : "start") }));
664
663
  // (For multi-select) get value array, i.e. selected option values, in order they appear in option list
665
664
  this.getValueSortedByOptions = (value) => {
666
665
  const valueArray = value;
@@ -679,13 +678,13 @@ const Select = class {
679
678
  // (rather than native <select> - rendered when viewed on a mobile / tablet screen)
680
679
  this.handleCustomSelectChange = (event) => {
681
680
  var _a, _b;
682
- const value = event.detail.value;
683
- if (event.detail.label === this.emptyOptionListText) {
681
+ const { value, label, optionId } = event.detail;
682
+ if (label === this.emptyOptionListText) {
684
683
  (_a = this.searchableSelectElement) === null || _a === void 0 ? void 0 : _a.focus();
685
684
  return;
686
685
  }
687
686
  if (this.searchable) {
688
- this.value = value;
687
+ this.value = value || null;
689
688
  this.searchableMenuItemSelected = true;
690
689
  // After editing the input, if selecting the same option as before, set the input value to label again
691
690
  if (this.value === this.currValue) {
@@ -696,64 +695,39 @@ const Select = class {
696
695
  this.hiddenInputValue =
697
696
  this.getValueFromLabel(this.searchableSelectInputValue) || null;
698
697
  }
699
- if (this.multiple && ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(value))) {
700
- this.icOptionDeselect.emit({ value });
701
- }
702
- else {
703
- this.icOptionSelect.emit({ value });
704
- }
705
- this.ariaActiveDescendant = event.detail.optionId;
706
- this.emitIcChange(value);
707
- };
708
- // Update selected options - adds / removes them, in order of option list
709
- // Create new array if value prop is undefined
710
- this.handleMultipleSelectChange = (value) => {
711
- if (this.value) {
712
- let valueArray = this.value.slice();
713
- if (this.value.includes(value)) {
714
- const valueIndex = valueArray.indexOf(value);
715
- valueArray.splice(valueIndex, 1);
698
+ if (value) {
699
+ if (this.multiple && ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(value))) {
700
+ this.icOptionDeselect.emit({ value });
716
701
  }
717
702
  else {
718
- valueArray.push(value);
719
- valueArray = this.getValueSortedByOptions(valueArray);
703
+ this.icOptionSelect.emit({ value });
720
704
  }
721
- this.value = valueArray.length === 0 ? null : valueArray;
722
- }
723
- else {
724
- const valueArray = [];
725
- valueArray.push(value);
726
- this.value = valueArray;
727
705
  }
706
+ this.ariaActiveDescendant = optionId;
707
+ this.emitIcChange(value || null);
728
708
  };
729
- this.handleSelectAllChange = (event) => {
730
- const selectAllOptions = event.detail.select;
731
- const allEnabledOptions = this.ungroupedOptions.filter((option) => !option.disabled);
732
- const allValues = allEnabledOptions.map((option) => option.value);
733
- let newValue;
734
- if (selectAllOptions) {
735
- let unselectedValues;
709
+ this.handleSelectAllChange = ({ detail, }) => {
710
+ const allValues = this.ungroupedOptions
711
+ .filter((option) => !option.disabled)
712
+ .map((option) => option.value);
713
+ if (detail.select) {
736
714
  // Only emit icOptionSelect for all values that are newly selected
737
- if (this.value) {
738
- unselectedValues = allValues.filter((value) => this.value && !this.value.includes(value));
739
- }
740
- else {
741
- unselectedValues = allValues;
742
- }
715
+ const unselectedValues = this.value
716
+ ? allValues.filter((value) => this.value && !this.value.includes(value))
717
+ : allValues;
743
718
  unselectedValues.forEach((value) => this.icOptionSelect.emit({ value }));
744
- newValue = allValues;
745
719
  }
746
720
  else {
747
721
  // Only emit icOptionDeselect for values that were selected
748
722
  this.value.forEach((value) => this.icOptionDeselect.emit({ value }));
749
- newValue = null;
750
723
  }
751
- this.emitIcChange(newValue);
724
+ this.emitIcChange(detail.select ? allValues : null);
752
725
  };
753
726
  this.handleMenuChange = (event) => {
754
727
  this.open = event.detail.open;
755
728
  this.pressedCharacters = "";
756
- this.searchable && this.handleFocusIndicatorDisplay();
729
+ if (this.searchable)
730
+ this.handleFocusIndicatorDisplay();
757
731
  };
758
732
  // clears the debounce delay when navigating the menu with arrow keys etc
759
733
  // to prevent delay in change event, which should only occur when typing in input
@@ -828,19 +802,18 @@ const Select = class {
828
802
  if (this.open && key === " " && this.pressedCharacters.length === 0) {
829
803
  this.setMenuChange(false);
830
804
  }
831
- if (key.length === 1 && !this.searchable) {
832
- window.clearTimeout(this.characterKeyPressTimer);
833
- this.characterKeyPressTimer = window.setTimeout(() => (this.pressedCharacters = ""), 1000);
834
- if (!(key === " " && !this.pressedCharacters)) {
835
- this.pressedCharacters += key;
836
- this.handleFilter();
837
- if (!this.noOptions) {
838
- this.emitIcChange(this.filteredOptions[0].value);
839
- }
840
- }
841
- }
842
- else {
805
+ if (key.length !== 1 || this.searchable) {
843
806
  this.pressedCharacters = "";
807
+ return;
808
+ }
809
+ window.clearTimeout(this.characterKeyPressTimer);
810
+ this.characterKeyPressTimer = window.setTimeout(() => (this.pressedCharacters = ""), 1000);
811
+ if (key !== " " || !!this.pressedCharacters) {
812
+ this.pressedCharacters += key;
813
+ this.handleFilter();
814
+ if (!this.noOptions) {
815
+ this.emitIcChange(this.filteredOptions[0].value);
816
+ }
844
817
  }
845
818
  };
846
819
  this.handleNativeSelectKeyDown = (event) => {
@@ -859,19 +832,17 @@ const Select = class {
859
832
  if (this.isExternalFiltering() && (event.key === "Enter" || isArrowKey)) {
860
833
  this.menu.options = this.filteredOptions;
861
834
  }
862
- else {
863
- if (!this.hasTimedOut) {
864
- this.noOptions = null;
865
- this.menu.options = this.uniqueOptions;
866
- }
835
+ else if (!this.hasTimedOut) {
836
+ this.noOptions = null;
837
+ this.menu.options = this.uniqueOptions;
867
838
  }
868
839
  }
869
840
  if (this.open && event.key === "Enter") {
870
841
  this.setMenuChange(false);
871
842
  }
872
843
  else {
873
- if (!(isArrowKey && this.noOptions !== null)) {
874
- if (!(event.key === " " && this.pressedCharacters.length > 0)) {
844
+ if (!isArrowKey || this.noOptions === null) {
845
+ if (event.key !== " " || this.pressedCharacters.length <= 0) {
875
846
  // Keyboard events get passed onto ic-menu
876
847
  (_a = this.menu) === null || _a === void 0 ? void 0 : _a.handleKeyboardOpen(event);
877
848
  }
@@ -887,9 +858,9 @@ const Select = class {
887
858
  this.handleClearButtonBlur = (ev) => {
888
859
  var _a;
889
860
  const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
890
- if (!(this.searchableSelectElement &&
891
- ev.relatedTarget === this.searchableSelectElement) &&
892
- !(retryButton && ev.relatedTarget === retryButton)) {
861
+ if ((!this.searchableSelectElement ||
862
+ ev.relatedTarget !== this.searchableSelectElement) &&
863
+ (!retryButton || ev.relatedTarget !== retryButton)) {
893
864
  this.setMenuChange(false);
894
865
  this.handleFocusIndicatorDisplay();
895
866
  }
@@ -898,12 +869,8 @@ const Select = class {
898
869
  this.handleFilter = () => {
899
870
  var _a;
900
871
  const options = this.deduplicateOptions(this.searchable ? [...this.uniqueOptions] : this.ungroupedOptions);
901
- let isGrouped = false;
872
+ const isGrouped = options.some((option) => !!option.children);
902
873
  let newFilteredOptions = [];
903
- options.map((option) => {
904
- if (option.children)
905
- isGrouped = true;
906
- });
907
874
  let menuOptionsFiltered;
908
875
  if (this.searchable) {
909
876
  menuOptionsFiltered = getFilteredMenuOptions(options, !!this.includeDescriptionsInSearch, this.inputValueToFilter || "", this.searchMatchPosition);
@@ -917,30 +884,14 @@ const Select = class {
917
884
  newFilteredOptions = menuOptionsFiltered;
918
885
  }
919
886
  else if (isGrouped) {
920
- options.map((option) => {
921
- if (this.includeGroupTitlesInSearch) {
922
- if (menuOptionsFiltered.indexOf(option) !== -1) {
923
- newFilteredOptions.push(option);
924
- }
925
- else {
926
- newFilteredOptions.push(this.getFilteredChildMenuOptions(option));
927
- }
928
- }
929
- else {
930
- newFilteredOptions.push(this.getFilteredChildMenuOptions(option));
931
- }
932
- });
933
- }
934
- let noChildOptionsWhenFiltered = false;
935
- if (isGrouped) {
936
- noChildOptionsWhenFiltered = true;
937
- newFilteredOptions.map((option) => {
938
- if (option.children && option.children.length > 0) {
939
- noChildOptionsWhenFiltered = false;
940
- }
941
- });
942
- }
943
- if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {
887
+ newFilteredOptions = options.map((option) => this.includeGroupTitlesInSearch &&
888
+ menuOptionsFiltered.indexOf(option) !== -1
889
+ ? option
890
+ : this.getFilteredChildMenuOptions(option));
891
+ }
892
+ if (newFilteredOptions.length > 0 &&
893
+ (!isGrouped ||
894
+ newFilteredOptions.some(({ children }) => children && children.length > 0))) {
944
895
  this.noOptions = null;
945
896
  this.filteredOptions = newFilteredOptions;
946
897
  }
@@ -975,11 +926,7 @@ const Select = class {
975
926
  }, this.timeout);
976
927
  }
977
928
  };
978
- this.getValueFromLabel = (label) => {
979
- var _a;
980
- return (label &&
981
- ((_a = this.uniqueOptions.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value));
982
- };
929
+ this.getValueFromLabel = (label) => { var _a; return label && ((_a = this.uniqueOptions.find((option) => option.label === label)) === null || _a === void 0 ? void 0 : _a.value); };
983
930
  this.handleSearchableSelectInput = (event) => {
984
931
  this.searchableSelectInputValue = event.target.value;
985
932
  this.emitIcInput(this.searchableSelectInputValue);
@@ -993,19 +940,18 @@ const Select = class {
993
940
  this.setMenuChange(true);
994
941
  if (!this.disableAutoFiltering) {
995
942
  this.handleFilter();
996
- this.debounceAriaLiveUpdate();
943
+ clearTimeout(this.debounceAria);
944
+ window.setTimeout(() => {
945
+ this.updateSearchableSelectResultAriaLive();
946
+ }, 800);
997
947
  }
998
948
  };
999
949
  this.updateSearchableSelectResultAriaLive = () => {
1000
950
  var _a;
1001
951
  const searchableSelectResultsStatusEl = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(".searchable-select-results-status");
1002
952
  if (searchableSelectResultsStatusEl) {
1003
- if (this.noOptions !== null) {
1004
- searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;
1005
- }
1006
- else {
1007
- searchableSelectResultsStatusEl.innerText = "";
1008
- }
953
+ searchableSelectResultsStatusEl.innerText =
954
+ this.noOptions !== null ? this.emptyOptionListText : "";
1009
955
  }
1010
956
  };
1011
957
  this.updateMultiSelectedCountAriaLive = () => {
@@ -1039,13 +985,12 @@ const Select = class {
1039
985
  return;
1040
986
  }
1041
987
  const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
1042
- const isSearchableAndNoFocusedInternalElements = this.searchable &&
988
+ if (this.searchable &&
1043
989
  !!this.menu &&
1044
990
  target !== this.menu &&
1045
991
  !Array.from(this.menu.querySelectorAll("[role='option']")).includes(target) &&
1046
- !(this.clearButton && target === this.clearButton) &&
1047
- !(retryButton && target === retryButton);
1048
- if (isSearchableAndNoFocusedInternalElements) {
992
+ (!this.clearButton || target !== this.clearButton) &&
993
+ (!retryButton || target !== retryButton)) {
1049
994
  if (!this.retryButtonClick) {
1050
995
  this.setMenuChange(false);
1051
996
  // Clear input field on blur when searchable if no option is selected
@@ -1084,6 +1029,7 @@ const Select = class {
1084
1029
  this.filteredOptions = this.uniqueOptions;
1085
1030
  }
1086
1031
  };
1032
+ this.renderNativeOption = (option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === this.currValue }, option.label));
1087
1033
  }
1088
1034
  watchDisabledHandler() {
1089
1035
  removeDisabledFalse(this.disabled, this.el);
@@ -1095,7 +1041,9 @@ const Select = class {
1095
1041
  this.setOptions();
1096
1042
  }
1097
1043
  debounceChangedHandler(newValue) {
1098
- this.updateOnChangeDebounce(newValue);
1044
+ if (this.currDebounce !== newValue) {
1045
+ this.currDebounce = newValue;
1046
+ }
1099
1047
  }
1100
1048
  valueChangedHandler() {
1101
1049
  if (this.value !== this.currValue) {
@@ -1178,83 +1126,59 @@ const Select = class {
1178
1126
  this.searchableSelectElement.focus();
1179
1127
  }
1180
1128
  }
1181
- updateOnChangeDebounce(newValue) {
1182
- if (this.currDebounce !== newValue) {
1183
- this.currDebounce = newValue;
1184
- }
1185
- }
1186
- debounceAriaLiveUpdate() {
1187
- clearTimeout(this.debounceAria);
1188
- window.setTimeout(() => {
1189
- this.updateSearchableSelectResultAriaLive();
1190
- }, 800);
1191
- }
1192
1129
  render() {
1193
- const { size, disabled, fullWidth, helperText, hideLabel, label, menuId, multiple, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, theme, } = this;
1130
+ var _a;
1131
+ const { size, disabled, fullWidth, helperText, hideLabel, label, menuId, multiple, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, theme, hiddenInputValue, open, inputId, searchableSelectInputValue, loading, value, emptyOptionListText, uniqueOptions, selectOnEnter, form, inheritedAttributes, ariaActiveDescendant, hasTimedOut, noOptions, filteredOptions, clearButtonFocused, } = this;
1194
1132
  // HTML inputs only accept 'string' for their value
1195
1133
  // Does not cause errors when it is a multi-select - sets value correctly, to a comma-separated string
1196
- renderHiddenInput(true, this.el, name || this.inputId, this.searchable ? this.hiddenInputValue : currValue, disabled);
1134
+ renderHiddenInput(this.el, searchable ? hiddenInputValue : currValue, name || inputId, disabled);
1197
1135
  const invalid = `${validationStatus === IcInformationStatus.Error}`;
1198
- const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, !!this.disabled)).trim();
1199
- let showLeftIcon = !!this.el.querySelector(`[slot="icon"]`);
1200
- if (showLeftIcon && (disabled || (readonly && !this.value))) {
1201
- showLeftIcon = false;
1202
- }
1203
- const optionsSelectedCount = `${currValue === null || currValue === void 0 ? void 0 : currValue.length} of ${getOptionsWithoutGroupTitlesCount(this.options)} selected`;
1136
+ const describedBy = getInputDescribedByText(inputId, helperText !== "", hasValidationStatus(validationStatus, !!disabled)).trim();
1204
1137
  const valueLabelString = multiple
1205
1138
  ? this.getMultipleOptionsString(currValue)
1206
1139
  : this.getLabelFromValue(currValue);
1207
1140
  const isClearable = !disabled &&
1208
1141
  (searchable
1209
- ? this.searchableSelectInputValue
1210
- : currValue && !this.loading && showClearButton);
1211
- return (h(Host, { key: '75cf0d014983dd89d440f68080f01333e6c265ee', class: {
1212
- "ic-select-disabled": !!disabled,
1213
- "ic-select-searchable": !!searchable,
1142
+ ? !!searchableSelectInputValue
1143
+ : !!currValue && !loading && showClearButton);
1144
+ return (h(Host, { key: 'd128625d13fdd5c5ee1710116f071f42c9f9820f', class: {
1145
+ "ic-select-disabled": disabled,
1146
+ "ic-select-searchable": searchable,
1214
1147
  [`ic-select-${size}`]: size !== "medium",
1215
- "ic-select-full-width": !!fullWidth,
1148
+ "ic-select-full-width": fullWidth,
1216
1149
  [`ic-theme-${theme}`]: theme !== "inherit",
1217
- }, onBlur: this.onBlur }, h("ic-input-container", { key: 'eb714cd9445894ca8fd3be546308f19f32d1b54c', readonly: readonly }, !hideLabel && (h("ic-input-label", { key: 'b458a202cdce6dcfad3d92da57714aa44f73d886', for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { key: '4ac767a175604d7e4f86fa46945fc028be835ff2', ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, showLeftIcon && (h("span", { key: '7ac05ef11cda6c03db0b1b9f4573a704581524e0', slot: "left-icon", class: {
1218
- ["readonly"]: !!readonly,
1219
- ["has-value"]: !!this.value,
1220
- } }, h("slot", { key: 'f09cffc377cfe7eb76d1b8bc4c83ec632a99b2df', name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, valueLabelString))) : isMobileOrTablet() && !multiple ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
1221
- if (option.children) {
1222
- return (h("optgroup", { label: option.label }, option.children.map((option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
1223
- }
1224
- else {
1225
- return (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label));
1226
- }
1227
- }))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: {
1150
+ }, onBlur: this.onBlur }, h("ic-input-container", { key: 'd3d0381138d095fb6c2c673d543b9b61710c064b', readonly: readonly }, !hideLabel && (h("ic-input-label", { key: '9cc4c487e780d00eed4bc4e4e3c3cbb66aab2a14', for: inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { key: 'cc15c6396b6edcd506e2caa93871ec529f6f25a4', ref: (el) => (this.anchorEl = el), class: { "menu-open": open }, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, isSlotUsed(this.el, "icon") &&
1151
+ !disabled &&
1152
+ (!readonly || !!value) && (h("span", { key: '21933fa4367b40e02fc41692a35f612f0c6c17d5', slot: "left-icon", class: {
1153
+ readonly,
1154
+ "has-value": !!value,
1155
+ } }, h("slot", { key: 'ad5ca4da28e3fb74526668811a042d7efdfad10c', name: "icon" }))), readonly ? (h("ic-typography", null, h("p", null, valueLabelString))) : isMobileOrTablet() && !multiple ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: form }, inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => option.children ? (h("optgroup", { label: option.label }, option.children.map((child) => this.renderNativeOption(child)))) : (this.renderNativeOption(option))))) : searchable ? (h("div", { class: "searchable-select-container" }, h("input", { class: {
1228
1156
  "select-input": true,
1229
- "with-clear-button": !!this.searchableSelectInputValue,
1230
- }, role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": `${this.open}`, "aria-invalid": invalid, "aria-required": `${required}`, "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue || undefined, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: this.form }), isClearable && (h("div", { class: "clear-button-container" }, h("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": this.searchableSelectInputValue &&
1231
- (currValue === null || this.loading)
1157
+ "with-clear-button": !!searchableSelectInputValue,
1158
+ }, role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": `${open}`, "aria-invalid": invalid, "aria-required": `${required}`, "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: inputId, value: searchableSelectInputValue || undefined, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: form }), isClearable && (h("div", { class: "clear-button-container" }, h("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": searchableSelectInputValue &&
1159
+ (currValue === null || loading)
1232
1160
  ? "Clear input"
1233
- : "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: this.clearButtonFocused ? "light" : "dark" }), h("div", { class: "divider" }))), h("span", { onMouseDown: this.handleExpandIconMouseDown, class: {
1161
+ : "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: clearButtonFocused ? "light" : "dark" }), h("div", { class: "divider" }))), h("span", { onMouseDown: this.handleExpandIconMouseDown, class: {
1234
1162
  "expand-icon": true,
1235
- "expand-icon-open": this.open,
1236
- }, innerHTML: Expand, "aria-hidden": "true" }), h("div", { "aria-live": "polite", role: "status", class: "searchable-select-results-status" }))) : (h("div", { class: "select-container" }, h("button", { class: "select-input", ref: (el) => (this.customSelectElement = el), id: this.inputId, "aria-label": `${label}, ${(multiple && currValue
1237
- ? `${optionsSelectedCount}, ${valueLabelString}`
1238
- : valueLabelString) || placeholder}${required ? ", required" : ""}`, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-haspopup": "listbox", "aria-expanded": this.open ? "true" : "false", "aria-owns": menuId, "aria-controls": menuId, disabled: disabled, onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.handleClick, onMouseDown: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("ic-typography", { variant: "body", class: {
1163
+ "expand-icon-open": open,
1164
+ }, innerHTML: Expand, "aria-hidden": "true" }), h("div", { "aria-live": "polite", role: "status", class: "searchable-select-results-status" }))) : (h("div", { class: "select-container" }, h("button", { class: "select-input", ref: (el) => (this.customSelectElement = el), id: inputId, "aria-label": `${label}, ${(multiple && currValue
1165
+ ? `${currValue.length} of ${getOptionsWithoutGroupTitlesCount(options)} selected, ${valueLabelString}`
1166
+ : valueLabelString) || placeholder}${required ? ", required" : ""}`, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-haspopup": "listbox", "aria-expanded": `${open}`, "aria-owns": menuId, "aria-controls": menuId, disabled: disabled, onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.handleClick, onMouseDown: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("ic-typography", { variant: "body", class: {
1239
1167
  "value-text": true,
1240
- "with-clear-button": !!isClearable,
1241
- placeholder: !this.loading && multiple
1242
- ? !this.value || this.value.length < 1
1168
+ "with-clear-button": isClearable,
1169
+ placeholder: !loading && multiple
1170
+ ? !value || value.length < 1
1243
1171
  : !this.getLabelFromValue(currValue),
1244
1172
  } }, valueLabelString || placeholder), h("div", { class: "select-input-end" }, isClearable && h("div", { class: "divider" }), h("span", { class: {
1245
1173
  "expand-icon": true,
1246
- "expand-icon-open": this.open,
1247
- }, innerHTML: Expand, "aria-hidden": "true" }))), isClearable && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: this.clearButtonFocused ? "light" : "dark" }))))), (!isMobileOrTablet() || multiple) && (h("ic-menu", { key: '60dac9f71d9787ae401f439dbcd013365c33b713', class: {
1248
- "no-results": this.loading ||
1249
- this.hasTimedOut ||
1250
- (this.noOptions !== null &&
1251
- this.noOptions[0] &&
1252
- this.noOptions[0].label === this.emptyOptionListText),
1253
- }, ref: (el) => (this.menu = el), inputEl: (searchable
1174
+ "expand-icon-open": open,
1175
+ }, innerHTML: Expand, "aria-hidden": "true" }))), isClearable && (h("ic-button", { id: "clear-button", "aria-label": "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", theme: clearButtonFocused ? "light" : "dark" }))))), (!isMobileOrTablet() || multiple) && (h("ic-menu", { key: '341d478ae904d5bd2a4c6fa54fb29802d2851f3e', class: {
1176
+ "no-results": loading ||
1177
+ hasTimedOut ||
1178
+ ((_a = noOptions === null || noOptions === void 0 ? void 0 : noOptions[0]) === null || _a === void 0 ? void 0 : _a.label) === emptyOptionListText,
1179
+ }, ref: (el) => (this.menu = el), inputEl: searchable
1254
1180
  ? this.searchableSelectElement
1255
- : this.customSelectElement), inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : this.uniqueOptions, value: multiple ? currValue : currValue, fullWidth: fullWidth, selectOnEnter: this.selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuOptionSelectAll: this.handleSelectAllChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable || multiple || this.selectOnEnter
1256
- ? "manual"
1257
- : "automatic", closeOnSelect: !multiple })), this.multiple && (h("div", { key: '876f1da870c48b21130b246afa988c4fccefdfc6', "aria-live": "polite", role: "status", class: "multi-select-selected-count" })), hasValidationStatus(this.validationStatus, !!this.disabled) && (h("ic-input-validation", { key: '657c2433a3ab425432356227e931cafe4268dd8b', class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText || "", for: this.inputId })))));
1181
+ : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, size: size, menuId: menuId, open: open, options: searchable ? filteredOptions : uniqueOptions, value: multiple ? currValue : currValue, fullWidth: fullWidth, selectOnEnter: selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuOptionSelectAll: this.handleSelectAllChange, onMenuKeyPress: this.handleMenuKeyPress, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: searchable || multiple || selectOnEnter ? "manual" : "automatic", closeOnSelect: !multiple })), multiple && (h("div", { key: '8fb9874132ab430dc90eba61264424fcf200b944', "aria-live": "polite", role: "status", class: "multi-select-selected-count" })), hasValidationStatus(validationStatus, disabled) && (h("ic-input-validation", { key: '872afd5e8f621258c64756d06061a266a4e09745', class: { "menu-open": open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: inputId })))));
1258
1182
  }
1259
1183
  static get delegatesFocus() { return true; }
1260
1184
  get el() { return getElement(this); }
@@ -1283,6 +1207,7 @@ const TextField = class {
1283
1207
  this.icFocus = createEvent(this, "icFocus", 7);
1284
1208
  this.icInput = createEvent(this, "icInput", 7);
1285
1209
  this.icKeydown = createEvent(this, "icKeydown", 7);
1210
+ this.icScroll = createEvent(this, "icScroll", 7);
1286
1211
  this.inheritedAttributes = {};
1287
1212
  this.hostMutationObserver = null;
1288
1213
  this.numChars = 0;
@@ -1291,10 +1216,7 @@ const TextField = class {
1291
1216
  this.minCharactersUnattained = false;
1292
1217
  this.maxValueExceeded = false;
1293
1218
  this.minValueUnattained = false;
1294
- /**
1295
- * @internal Used to identify whether inputting any text triggers more predictions
1296
- */
1297
- this.ariaAutocomplete = undefined;
1219
+ this.isFocussed = false;
1298
1220
  /**
1299
1221
  * The automatic capitalisation of the text value as it is entered/edited by the user.
1300
1222
  * Available options: "off", "none", "on", "sentences", "words", "characters".
@@ -1409,6 +1331,10 @@ const TextField = class {
1409
1331
  * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component.
1410
1332
  */
1411
1333
  this.theme = "inherit";
1334
+ /**
1335
+ * @internal If `true`, an ellipsis will be displayed at the end of the value if the value is longer than the container.
1336
+ */
1337
+ this.truncateValue = false;
1412
1338
  /**
1413
1339
  * The type of control to display. The default type is text.
1414
1340
  */
@@ -1439,9 +1365,9 @@ const TextField = class {
1439
1365
  this.value = "";
1440
1366
  this.initialValue = this.value;
1441
1367
  this.checkChildHydration = () => {
1442
- var _a;
1443
- const el = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("ic-typography");
1444
- if (this.hideLabel || (el && el.classList.contains("hydrated"))) {
1368
+ var _a, _b;
1369
+ if (this.hideLabel ||
1370
+ ((_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("ic-typography")) === null || _b === void 0 ? void 0 : _b.classList.contains("hydrated"))) {
1445
1371
  this.setFocus();
1446
1372
  clearInterval(this.interval);
1447
1373
  }
@@ -1457,7 +1383,7 @@ const TextField = class {
1457
1383
  this.getMaxCharactersReached = (value) => {
1458
1384
  this.numChars = this.getNumberOfCharacters(value);
1459
1385
  this.maxCharactersReached =
1460
- this.maxCharacters > 0 ? this.numChars >= this.maxCharacters : false;
1386
+ this.maxCharacters > 0 && this.numChars >= this.maxCharacters;
1461
1387
  if (this.maxCharactersWarning && !this.maxCharactersReached) {
1462
1388
  this.maxCharactersWarning = false;
1463
1389
  }
@@ -1469,16 +1395,21 @@ const TextField = class {
1469
1395
  this.onBlur = (ev) => {
1470
1396
  const target = ev.target;
1471
1397
  target.removeEventListener("wheel", this.onWheel);
1472
- const value = ev.target.value;
1398
+ const { value } = target;
1473
1399
  this.numChars = value.length;
1474
1400
  this.minCharactersUnattained =
1475
- this.minCharacters > 0 ? this.numChars < this.minCharacters : false;
1476
- this.icBlur.emit({ value: value });
1401
+ this.minCharacters > 0 && this.numChars < this.minCharacters;
1402
+ this.icBlur.emit({ value });
1403
+ this.isFocussed = false;
1477
1404
  };
1478
1405
  this.onFocus = (ev) => {
1479
1406
  const target = ev.target;
1480
1407
  target.addEventListener("wheel", this.onWheel);
1481
- this.icFocus.emit({ value: ev.target.value });
1408
+ this.icFocus.emit({ value: target.value });
1409
+ this.isFocussed = true;
1410
+ };
1411
+ this.onTextAreaScroll = () => {
1412
+ this.icScroll.emit();
1482
1413
  };
1483
1414
  this.onWheel = (ev) => {
1484
1415
  const target = ev.target;
@@ -1591,7 +1522,7 @@ const TextField = class {
1591
1522
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus();
1592
1523
  }
1593
1524
  render() {
1594
- const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, } = this;
1525
+ const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, hideLabel, type, autocapitalize, ariaActiveDescendant, inheritedAttributes, ariaExpanded, ariaOwns, autocomplete, role, isFocussed, } = this;
1595
1526
  const el = this.el;
1596
1527
  const disabledMode = readonly || disabled;
1597
1528
  const currentStatus = maxValueExceeded ||
@@ -1622,44 +1553,45 @@ const TextField = class {
1622
1553
  !(currentStatus == IcInformationStatus.Success && validationInline) &&
1623
1554
  !validationInlineInternal;
1624
1555
  const multiline = rows > 1;
1625
- const charsRemaining = maxNumChars - numChars;
1626
- const hiddenRemainingCharCountDesc = `${charsRemaining} character${charsRemaining === 1 ? "" : "s"} remaining.`;
1627
1556
  const hiddenCharCountDescId = maxCharacters > 0 ? `${inputId}-char-count-desc` : "";
1628
- const describedBy = `${hiddenCharCountDescId} ${getInputDescribedByText(inputId, helperText !== "", showStatusText)}`.trim();
1557
+ const charsRemaining = maxNumChars - numChars;
1558
+ const remainingCharCountDescId = maxCharacters > 0 ? `${inputId}-remaining-char-count-desc` : "";
1559
+ const remainingCharCountDesc = `${charsRemaining} character${charsRemaining === 1 ? "" : "s"} remaining.`;
1560
+ const describedBy = `${hiddenCharCountDescId} ${numChars > 0 ? remainingCharCountDescId : ""} ${getInputDescribedByText(inputId, helperText !== "", showStatusText)}`.trim();
1629
1561
  const disabledText = disabledMode && !readonly;
1630
1562
  const showLeftIcon = !!this.el.querySelector(`[slot="icon"]`) && !disabledText;
1631
1563
  const invalid = `${currentStatus === IcInformationStatus.Error}`;
1632
1564
  hiddenInput
1633
- ? renderHiddenInput(true, this.el, name, value, disabledMode)
1565
+ ? renderHiddenInput(this.el, value, name, disabledMode)
1634
1566
  : removeHiddenInput(this.el);
1635
- return (h(Host, { key: '23cb6b387a381e50b3f1854c3870a1f7e3bfa23e', class: {
1636
- "ic-text-field-full-width": !!fullWidth,
1567
+ return (h(Host, { key: 'fe960598716052334b20c15f7e4b05477025783b', class: {
1568
+ "ic-text-field-full-width": fullWidth,
1569
+ "ic-text-field-disabled": disabledMode,
1637
1570
  [`ic-theme-${theme}`]: theme !== "inherit",
1638
- "ic-text-field-disabled": !!disabledMode,
1639
- } }, h("ic-input-container", { key: '87bc697a55a04e7aefdeafd6d37eff3824990034', readonly: readonly, disabled: disabledMode }, !this.hideLabel && (h("ic-input-label", { key: 'a289d63c13ed94a8282eab7b16ace632a59c83ed', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly })), h("ic-input-component-container", { key: '51b602029de06b6147c17a01ba427a558410c4df', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: 'c1ac46bc7a8114f4a6dce0126784a7333777b168', class: {
1640
- readonly: !!readonly,
1571
+ } }, h("ic-input-container", { key: '1a4e6b2cd9ef8646ed34575b77ce53d82a1dbb1b', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: '1b56501853e8a8062a4b02fb85be73c69d4b5b1e', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly })), h("ic-input-component-container", { key: '7e104a64fc5ab3a173b814d38287fd843cfb8eb4', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: 'd3e31bb36c451e33d99b93eb069b6cad1e074de3', class: {
1572
+ readonly,
1641
1573
  "has-value": this.getNumberOfCharacters(value) > 0,
1642
- }, slot: "left-icon" }, h("slot", { key: '312ac15fb4ccb3873bfddec4c60c4fb234aa0e28', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: this.type, min: min, max: max, value: value, class: {
1643
- "no-left-pad": !showLeftIcon && !!readonly,
1644
- readonly: !!readonly,
1645
- "truncate-value": !!truncateValue,
1646
- }, placeholder: placeholder ? placeholder : "", required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-activedescendant": this.ariaActiveDescendant, "aria-expanded": this.ariaExpanded, "aria-owns": this.ariaOwns, autocomplete: this.autocomplete, autocapitalize: this.autocapitalize, spellcheck: spellcheck, inputmode: inputmode, role: this.role, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, this.inheritedAttributes))) : (h("textarea", Object.assign({ id: inputId, class: {
1574
+ }, slot: "left-icon" }, h("slot", { key: '6b91c9ac3cf054c3e30208712e3404c03c1e7d45', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: type, min: min, max: max, value: value, class: {
1575
+ "no-left-pad": !showLeftIcon && readonly,
1576
+ readonly,
1577
+ "truncate-value": truncateValue,
1578
+ }, placeholder: placeholder ? placeholder : "", required: required, disabled: disabledMode, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, "aria-activedescendant": ariaActiveDescendant, "aria-expanded": ariaExpanded, "aria-owns": ariaOwns, autocomplete: autocomplete, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, role: role || undefined, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))) : (h("textarea", Object.assign({ id: inputId, class: {
1647
1579
  "no-resize": resize === false || !!readonly,
1648
1580
  "no-left-pad": !showLeftIcon && !!readonly,
1649
1581
  readonly: !!readonly,
1650
- }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder ? placeholder : "", readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: this.autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, this.inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: '86e21e2775c078a2322e1fdf6cf3323cba757917', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: '9a1800781608f067e5e6f4a0b097ab4fec148fc2', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: '1281dfee838c2af0822b8ec2d477c6290cd5b020', name: "menu" }), (!isEmptyString(validationStatus) ||
1582
+ }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onScroll: this.onTextAreaScroll, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: '9b9a1124d52713bf7addfdaa9ad2c8f13538e988', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: '3b84112cf83d64ae25bec34bd981a2d53d4cb00c', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: 'f4b614d2451d5c264455536c365ce01510549df3', name: "menu" }), (!isEmptyString(validationStatus) ||
1651
1583
  !isEmptyString(validationText) ||
1652
1584
  maxNumChars > 0 ||
1653
1585
  maxValueExceeded ||
1654
1586
  maxCharactersWarning ||
1655
1587
  minCharactersUnattained ||
1656
1588
  minValueUnattained) &&
1657
- !validationInlineInternal && (h("ic-input-validation", { key: '3adb6e2274e123e2c96985b0008e887b791d8e21', status: this.hasStatus(currentStatus) === false ||
1589
+ !validationInlineInternal && (h("ic-input-validation", { key: 'a3320c6413c9688905aa7195c07aedaeb5b07aac', status: this.hasStatus(currentStatus) === false ||
1658
1590
  (currentStatus === IcInformationStatus.Success &&
1659
1591
  validationInline) ||
1660
1592
  validationInlineInternal
1661
1593
  ? ""
1662
- : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: '0d35ea132f089aa5554d0d4387fc92f0ba256ec4', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: '27132c969fa6d92e21c84795341a7eb520307df0', variant: "caption", class: "char-count-text" }, h("span", { key: 'db55472d6e4d40e03a5a8442d9e5dc388e77ca14', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: 'a42b206be46d1df23b01c1688cb430a062c4fbc9', class: "remaining-char-count-desc", "aria-live": "polite" }, hiddenRemainingCharCountDesc), h("span", { key: 'b5e3a90f0cc7cfb16e3a337d886cf0360748fca2', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters."))))))));
1594
+ : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: '50e3a895feaf7026e41698279e344ec987be3569', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: '6918f82e8bc0ab17941bdafa24249f7ac0fbc191', variant: "caption", class: "char-count-text" }, h("span", { key: '59b2ea3ee4a854eff96af2faacb407f926c1b393', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: '977bfee3b55bad4412d6943dfc8e75bd0f4ddb41', class: "remaining-char-count-desc", "aria-live": "polite", hidden: !isFocussed, id: remainingCharCountDescId }, remainingCharCountDesc), h("span", { key: '727328e80137330465fcbdc45711f168b5d9d54f', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters."))))))));
1663
1595
  }
1664
1596
  get el() { return getElement(this); }
1665
1597
  static get watchers() { return {