@ukic/canary-web-components 3.0.0-canary.2 → 3.0.0-canary.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (465) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-33b42cd6.js → helpers-36cdc6cb.js} +24 -1
  3. package/dist/cjs/helpers-36cdc6cb.js.map +1 -0
  4. package/dist/cjs/{helpers-6817cfbb.js → helpers-a67ad3a4.js} +15 -129
  5. package/dist/cjs/helpers-a67ad3a4.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 +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-button_3.cjs.entry.js +2 -2
  15. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-card-horizontal.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-checkbox.cjs.entry.js +3 -3
  21. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  25. package/dist/cjs/ic-data-table.cjs.entry.js +23 -2
  26. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-date-input.cjs.entry.js +10 -9
  28. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-date-picker.cjs.entry.js +3 -1
  30. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-empty-state_2.cjs.entry.js +9 -8
  34. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  36. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  40. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +1012 -0
  41. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -0
  42. package/dist/cjs/ic-input-label_2.cjs.entry.js +86 -0
  43. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -0
  44. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  46. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-menu-item.cjs.entry.js +2 -2
  48. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  51. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-page-header.cjs.entry.js +5 -5
  55. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-pagination_4.cjs.entry.js +148 -38
  57. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-popover-menu.cjs.entry.js +9 -9
  59. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-radio-group.cjs.entry.js +2 -2
  61. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-radio-option.cjs.entry.js +27 -22
  63. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-search-bar.cjs.entry.js +2 -2
  65. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  68. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  69. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  70. package/dist/cjs/ic-switch.cjs.entry.js +7 -4
  71. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  73. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  74. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  75. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  76. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  77. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  78. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  79. package/dist/cjs/ic-tree-item.cjs.entry.js +5 -3
  80. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ic-tree-view.cjs.entry.js +10 -2
  82. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  84. package/dist/cjs/index-4cf27b16.js +4 -12
  85. package/dist/cjs/loader.cjs.js +1 -1
  86. package/dist/collection/collection-manifest.json +0 -2
  87. package/dist/collection/components/ic-data-table/ic-data-table.js +24 -3
  88. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  89. package/dist/collection/components/ic-date-input/ic-date-input.js +27 -8
  90. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  91. package/dist/collection/components/ic-date-picker/ic-date-picker.js +20 -0
  92. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  93. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +26 -7
  94. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  95. package/dist/collection/components/ic-tree-item/ic-tree-item.css +11 -0
  96. package/dist/collection/components/ic-tree-item/ic-tree-item.js +23 -3
  97. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  98. package/dist/collection/components/ic-tree-view/ic-tree-view.js +29 -1
  99. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  100. package/dist/collection/utils/helpers.js +1 -1
  101. package/dist/collection/utils/helpers.js.map +1 -1
  102. package/dist/collection/utils/types.js.map +1 -1
  103. package/dist/components/helpers.js +22 -1
  104. package/dist/components/helpers.js.map +1 -1
  105. package/dist/components/helpers2.js +14 -121
  106. package/dist/components/helpers2.js.map +1 -1
  107. package/dist/components/ic-alert.js +1 -1
  108. package/dist/components/ic-alert.js.map +1 -1
  109. package/dist/components/ic-checkbox-group.js +1 -1
  110. package/dist/components/ic-checkbox-group.js.map +1 -1
  111. package/dist/components/ic-checkbox.js +2 -2
  112. package/dist/components/ic-checkbox.js.map +1 -1
  113. package/dist/components/ic-data-table.js +23 -2
  114. package/dist/components/ic-data-table.js.map +1 -1
  115. package/dist/components/ic-date-input2.js +11 -9
  116. package/dist/components/ic-date-input2.js.map +1 -1
  117. package/dist/components/ic-date-picker.js +4 -1
  118. package/dist/components/ic-date-picker.js.map +1 -1
  119. package/dist/components/ic-footer.js +1 -1
  120. package/dist/components/ic-horizontal-scroll2.js +1 -1
  121. package/dist/components/ic-input-label2.js +10 -6
  122. package/dist/components/ic-input-label2.js.map +1 -1
  123. package/dist/components/ic-loading-indicator2.js +1 -1
  124. package/dist/components/ic-loading-indicator2.js.map +1 -1
  125. package/dist/components/ic-menu-group.js +1 -1
  126. package/dist/components/ic-menu-group.js.map +1 -1
  127. package/dist/components/ic-menu-item2.js +1 -1
  128. package/dist/components/ic-menu-item2.js.map +1 -1
  129. package/dist/components/ic-menu2.js +450 -167
  130. package/dist/components/ic-menu2.js.map +1 -1
  131. package/dist/components/ic-navigation-group.js +2 -2
  132. package/dist/components/ic-navigation-group.js.map +1 -1
  133. package/dist/components/ic-navigation-item.js +1 -1
  134. package/dist/components/ic-navigation-menu2.js +1 -1
  135. package/dist/components/ic-page-header.js +4 -4
  136. package/dist/components/ic-page-header.js.map +1 -1
  137. package/dist/components/ic-pagination-bar2.js +9 -7
  138. package/dist/components/ic-pagination-bar2.js.map +1 -1
  139. package/dist/components/ic-pagination-item2.js +1 -1
  140. package/dist/components/ic-popover-menu.js +10 -9
  141. package/dist/components/ic-popover-menu.js.map +1 -1
  142. package/dist/components/ic-radio-group.js +1 -1
  143. package/dist/components/ic-radio-group.js.map +1 -1
  144. package/dist/components/ic-radio-option.js +27 -22
  145. package/dist/components/ic-radio-option.js.map +1 -1
  146. package/dist/components/ic-search-bar.js +2 -2
  147. package/dist/components/ic-search-bar.js.map +1 -1
  148. package/dist/components/ic-select2.js +148 -37
  149. package/dist/components/ic-select2.js.map +1 -1
  150. package/dist/components/ic-side-navigation.js +1 -1
  151. package/dist/components/ic-stepper.js +1 -1
  152. package/dist/components/ic-switch.js +7 -3
  153. package/dist/components/ic-switch.js.map +1 -1
  154. package/dist/components/ic-text-field2.js +2 -2
  155. package/dist/components/ic-text-field2.js.map +1 -1
  156. package/dist/components/ic-theme.js +1 -1
  157. package/dist/components/ic-toast.js +1 -1
  158. package/dist/components/ic-top-navigation.js +1 -1
  159. package/dist/components/ic-tree-item.js +5 -2
  160. package/dist/components/ic-tree-item.js.map +1 -1
  161. package/dist/components/ic-tree-view.js +12 -2
  162. package/dist/components/ic-tree-view.js.map +1 -1
  163. package/dist/core/core.css +580 -10
  164. package/dist/core/core.esm.js +1 -1
  165. package/dist/core/core.esm.js.map +1 -1
  166. package/dist/core/{p-c033e7d6.entry.js → p-036d251b.entry.js} +2 -2
  167. package/dist/core/{p-9397b15b.js → p-043cf5de.js} +2 -2
  168. package/dist/core/p-043cf5de.js.map +1 -0
  169. package/dist/core/p-044689ef.entry.js +2 -0
  170. package/dist/core/p-044689ef.entry.js.map +1 -0
  171. package/dist/core/p-095da817.entry.js +2 -0
  172. package/dist/core/p-095da817.entry.js.map +1 -0
  173. package/dist/core/{p-d2e7a256.entry.js → p-13d2db9b.entry.js} +2 -2
  174. package/dist/core/p-13e01a1e.entry.js +2 -0
  175. package/dist/core/p-13e01a1e.entry.js.map +1 -0
  176. package/dist/core/p-1ae71507.entry.js +2 -0
  177. package/dist/core/p-1ae71507.entry.js.map +1 -0
  178. package/dist/core/p-2200ca85.entry.js +2 -0
  179. package/dist/core/p-2200ca85.entry.js.map +1 -0
  180. package/dist/core/{p-42e0f3bd.entry.js → p-2257f5e8.entry.js} +2 -2
  181. package/dist/core/{p-897b8d16.entry.js → p-24d03bbd.entry.js} +2 -2
  182. package/dist/core/{p-a78cf2cb.entry.js → p-266098ee.entry.js} +2 -2
  183. package/dist/core/{p-bb1252fa.entry.js → p-26613dbd.entry.js} +2 -2
  184. package/dist/core/p-283a2274.entry.js +2 -0
  185. package/dist/core/p-283a2274.entry.js.map +1 -0
  186. package/dist/core/{p-77a32de5.entry.js → p-2a3bd99a.entry.js} +2 -2
  187. package/dist/core/p-42f88966.entry.js +2 -0
  188. package/dist/core/p-42f88966.entry.js.map +1 -0
  189. package/dist/core/{p-7c268030.entry.js → p-48a78218.entry.js} +2 -2
  190. package/dist/core/p-4e316ae5.entry.js +2 -0
  191. package/dist/core/p-4e316ae5.entry.js.map +1 -0
  192. package/dist/core/p-50dd2744.entry.js +2 -0
  193. package/dist/core/p-50dd2744.entry.js.map +1 -0
  194. package/dist/core/{p-4e28ef60.entry.js → p-51ea45cb.entry.js} +2 -2
  195. package/dist/core/{p-4e28ef60.entry.js.map → p-51ea45cb.entry.js.map} +1 -1
  196. package/dist/core/p-5458d818.entry.js +2 -0
  197. package/dist/core/p-5458d818.entry.js.map +1 -0
  198. package/dist/core/{p-202bc922.entry.js → p-5ad1a7fb.entry.js} +2 -2
  199. package/dist/core/{p-f9810621.entry.js → p-5b061abc.entry.js} +2 -2
  200. package/dist/core/{p-6beffd0e.entry.js → p-6727166b.entry.js} +2 -2
  201. package/dist/core/{p-8ca2e329.entry.js → p-6dc00a8f.entry.js} +2 -2
  202. package/dist/core/{p-aeb6016c.entry.js → p-6dffaac0.entry.js} +2 -2
  203. package/dist/core/{p-aeb6016c.entry.js.map → p-6dffaac0.entry.js.map} +1 -1
  204. package/dist/core/p-6fd89ed5.entry.js +2 -0
  205. package/dist/core/p-6fd89ed5.entry.js.map +1 -0
  206. package/dist/core/{p-d5ca3bcb.entry.js → p-7aa6b76e.entry.js} +2 -2
  207. package/dist/core/{p-e5d99316.entry.js → p-7b90f0ae.entry.js} +2 -2
  208. package/dist/core/{p-30b046b2.entry.js → p-7e5b0fff.entry.js} +2 -2
  209. package/dist/core/{p-50019ede.entry.js → p-80b296cd.entry.js} +2 -2
  210. package/dist/core/{p-eb65e556.entry.js → p-82aa8136.entry.js} +2 -2
  211. package/dist/core/{p-2e49fb22.entry.js → p-83b4efe2.entry.js} +2 -2
  212. package/dist/core/p-83e4d955.entry.js +2 -0
  213. package/dist/core/p-83e4d955.entry.js.map +1 -0
  214. package/dist/core/{p-d3c0bffb.entry.js → p-86b608b5.entry.js} +2 -2
  215. package/dist/core/p-86b608b5.entry.js.map +1 -0
  216. package/dist/core/{p-5accf0bb.entry.js → p-878df16f.entry.js} +2 -2
  217. package/dist/core/p-89be0a21.js +2 -0
  218. package/dist/core/p-89be0a21.js.map +1 -0
  219. package/dist/core/{p-1fe35de1.entry.js → p-8bec76d1.entry.js} +2 -2
  220. package/dist/core/p-94141606.entry.js +2 -0
  221. package/dist/core/p-94141606.entry.js.map +1 -0
  222. package/dist/core/{p-1109636a.entry.js → p-94416b6b.entry.js} +2 -2
  223. package/dist/core/{p-4dcc37e7.entry.js → p-a4439688.entry.js} +2 -2
  224. package/dist/core/{p-8f12659d.entry.js → p-a8106c56.entry.js} +2 -2
  225. package/dist/core/p-a8106c56.entry.js.map +1 -0
  226. package/dist/core/{p-130a05cf.entry.js → p-affd7f55.entry.js} +2 -2
  227. package/dist/core/{p-486d8d43.entry.js → p-b3d93bc1.entry.js} +2 -2
  228. package/dist/core/{p-c1698936.entry.js → p-bac2beeb.entry.js} +2 -2
  229. package/dist/core/{p-53e00a8a.entry.js → p-c29b2b48.entry.js} +2 -2
  230. package/dist/core/{p-ed4cde5a.entry.js → p-c40c57ee.entry.js} +2 -2
  231. package/dist/core/{p-b0751bd9.entry.js → p-c6a62d1b.entry.js} +2 -2
  232. package/dist/core/{p-0ab10600.entry.js → p-cc22644d.entry.js} +2 -2
  233. package/dist/core/p-cfd81370.entry.js +2 -0
  234. package/dist/core/p-cfd81370.entry.js.map +1 -0
  235. package/dist/core/p-d53fb899.entry.js +2 -0
  236. package/dist/core/p-d53fb899.entry.js.map +1 -0
  237. package/dist/core/{p-28323849.entry.js → p-d5e9cf81.entry.js} +2 -2
  238. package/dist/core/{p-505250cf.entry.js → p-d7632baf.entry.js} +2 -2
  239. package/dist/core/{p-7c80d79c.entry.js → p-dcccd9c1.entry.js} +2 -2
  240. package/dist/core/{p-42883e4c.entry.js → p-edfd0946.entry.js} +2 -2
  241. package/dist/core/p-edfd0946.entry.js.map +1 -0
  242. package/dist/core/{p-7c78f6c6.entry.js → p-f1842a68.entry.js} +2 -2
  243. package/dist/core/p-f1842a68.entry.js.map +1 -0
  244. package/dist/core/p-f8c1d7e8.entry.js +2 -0
  245. package/dist/core/p-f8c1d7e8.entry.js.map +1 -0
  246. package/dist/core/{p-d03374fc.entry.js → p-fbb5c8f2.entry.js} +2 -2
  247. package/dist/core/{p-a9151d0b.entry.js → p-fc2f336d.entry.js} +2 -2
  248. package/dist/esm/core.js +1 -1
  249. package/dist/esm/{helpers-5bd2012a.js → helpers-a7b13f5a.js} +15 -122
  250. package/dist/esm/helpers-a7b13f5a.js.map +1 -0
  251. package/dist/esm/{helpers-dab8ddfe.js → helpers-c326255f.js} +23 -2
  252. package/dist/esm/helpers-c326255f.js.map +1 -0
  253. package/dist/esm/ic-accordion-group.entry.js +1 -1
  254. package/dist/esm/ic-accordion.entry.js +1 -1
  255. package/dist/esm/ic-alert.entry.js +2 -2
  256. package/dist/esm/ic-alert.entry.js.map +1 -1
  257. package/dist/esm/ic-back-to-top.entry.js +1 -1
  258. package/dist/esm/ic-badge.entry.js +1 -1
  259. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  260. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  261. package/dist/esm/ic-button_3.entry.js +2 -2
  262. package/dist/esm/ic-button_3.entry.js.map +1 -1
  263. package/dist/esm/ic-card-horizontal.entry.js +1 -1
  264. package/dist/esm/ic-card-vertical.entry.js +1 -1
  265. package/dist/esm/ic-checkbox-group.entry.js +2 -2
  266. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  267. package/dist/esm/ic-checkbox.entry.js +3 -3
  268. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  269. package/dist/esm/ic-chip.entry.js +1 -1
  270. package/dist/esm/ic-data-row.entry.js +1 -1
  271. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  272. package/dist/esm/ic-data-table.entry.js +23 -2
  273. package/dist/esm/ic-data-table.entry.js.map +1 -1
  274. package/dist/esm/ic-date-input.entry.js +10 -9
  275. package/dist/esm/ic-date-input.entry.js.map +1 -1
  276. package/dist/esm/ic-date-picker.entry.js +3 -1
  277. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  278. package/dist/esm/ic-dialog.entry.js +1 -1
  279. package/dist/esm/ic-divider.entry.js +1 -1
  280. package/dist/esm/ic-empty-state_2.entry.js +9 -8
  281. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  282. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  283. package/dist/esm/ic-footer-link.entry.js +1 -1
  284. package/dist/esm/ic-footer.entry.js +1 -1
  285. package/dist/esm/ic-hero.entry.js +1 -1
  286. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  287. package/dist/{collection/components/ic-menu-with-multi/ic-menu.js → esm/ic-input-component-container_3.entry.js} +157 -727
  288. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -0
  289. package/dist/esm/ic-input-label_2.entry.js +81 -0
  290. package/dist/esm/ic-input-label_2.entry.js.map +1 -0
  291. package/dist/esm/ic-link.entry.js +1 -1
  292. package/dist/esm/ic-menu-group.entry.js +2 -2
  293. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  294. package/dist/esm/ic-menu-item.entry.js +2 -2
  295. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  296. package/dist/esm/ic-navigation-button.entry.js +1 -1
  297. package/dist/esm/ic-navigation-group.entry.js +2 -2
  298. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  299. package/dist/esm/ic-navigation-item.entry.js +1 -1
  300. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  301. package/dist/esm/ic-page-header.entry.js +5 -5
  302. package/dist/esm/ic-page-header.entry.js.map +1 -1
  303. package/dist/esm/ic-pagination_4.entry.js +148 -38
  304. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  305. package/dist/esm/ic-popover-menu.entry.js +9 -9
  306. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  307. package/dist/esm/ic-radio-group.entry.js +2 -2
  308. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  309. package/dist/esm/ic-radio-option.entry.js +27 -22
  310. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  311. package/dist/esm/ic-search-bar.entry.js +2 -2
  312. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  313. package/dist/esm/ic-side-navigation.entry.js +1 -1
  314. package/dist/esm/ic-status-tag.entry.js +1 -1
  315. package/dist/esm/ic-step.entry.js +1 -1
  316. package/dist/esm/ic-stepper.entry.js +1 -1
  317. package/dist/esm/ic-switch.entry.js +7 -4
  318. package/dist/esm/ic-switch.entry.js.map +1 -1
  319. package/dist/esm/ic-tab-group.entry.js +1 -1
  320. package/dist/esm/ic-tab-panel.entry.js +1 -1
  321. package/dist/esm/ic-tab.entry.js +1 -1
  322. package/dist/esm/ic-theme.entry.js +1 -1
  323. package/dist/esm/ic-toast.entry.js +1 -1
  324. package/dist/esm/ic-toggle-button.entry.js +1 -1
  325. package/dist/esm/ic-top-navigation.entry.js +1 -1
  326. package/dist/esm/ic-tree-item.entry.js +5 -3
  327. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  328. package/dist/esm/ic-tree-view.entry.js +10 -2
  329. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  330. package/dist/esm/ic-typography.entry.js +1 -1
  331. package/dist/esm/index-93509377.js +4 -12
  332. package/dist/esm/loader.js +1 -1
  333. package/dist/types/components/ic-data-table/ic-data-table.d.ts +2 -0
  334. package/dist/types/components/ic-date-input/ic-date-input.d.ts +4 -0
  335. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +4 -0
  336. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +5 -1
  337. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +5 -1
  338. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +5 -0
  339. package/dist/types/components.d.ts +46 -469
  340. package/dist/types/utils/helpers.d.ts +1 -1
  341. package/dist/types/utils/types.d.ts +1 -0
  342. package/hydrate/index.js +3612 -6848
  343. package/package.json +3 -3
  344. package/dist/cjs/helpers-33b42cd6.js.map +0 -1
  345. package/dist/cjs/helpers-6817cfbb.js.map +0 -1
  346. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +0 -156
  347. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +0 -1
  348. package/dist/cjs/ic-menu-with-multi.cjs.entry.js +0 -2738
  349. package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +0 -1
  350. package/dist/cjs/ic-menu.cjs.entry.js +0 -658
  351. package/dist/cjs/ic-menu.cjs.entry.js.map +0 -1
  352. package/dist/cjs/ic-select-with-multi.cjs.entry.js +0 -788
  353. package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +0 -1
  354. package/dist/collection/components/ic-menu-with-multi/ic-menu.css +0 -712
  355. package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +0 -1
  356. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +0 -1057
  357. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +0 -1
  358. package/dist/collection/components/ic-select-with-multi/assets/Check.svg +0 -3
  359. package/dist/collection/components/ic-select-with-multi/assets/Clear.svg +0 -3
  360. package/dist/collection/components/ic-select-with-multi/assets/Expand.svg +0 -3
  361. package/dist/collection/components/ic-select-with-multi/ic-select.css +0 -695
  362. package/dist/collection/components/ic-select-with-multi/ic-select.js +0 -1520
  363. package/dist/collection/components/ic-select-with-multi/ic-select.js.map +0 -1
  364. package/dist/collection/components/ic-select-with-multi/story-data.js +0 -216
  365. package/dist/collection/components/ic-select-with-multi/story-data.js.map +0 -1
  366. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js +0 -1518
  367. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js.map +0 -1
  368. package/dist/components/ic-menu-with-multi.d.ts +0 -11
  369. package/dist/components/ic-menu-with-multi.js +0 -8
  370. package/dist/components/ic-menu-with-multi.js.map +0 -1
  371. package/dist/components/ic-menu3.js +0 -2803
  372. package/dist/components/ic-menu3.js.map +0 -1
  373. package/dist/components/ic-select-with-multi.d.ts +0 -11
  374. package/dist/components/ic-select-with-multi.js +0 -906
  375. package/dist/components/ic-select-with-multi.js.map +0 -1
  376. package/dist/core/p-0894cab1.entry.js +0 -2
  377. package/dist/core/p-0894cab1.entry.js.map +0 -1
  378. package/dist/core/p-1e2aa8a6.entry.js +0 -2
  379. package/dist/core/p-1e2aa8a6.entry.js.map +0 -1
  380. package/dist/core/p-297e99cf.js +0 -2
  381. package/dist/core/p-297e99cf.js.map +0 -1
  382. package/dist/core/p-2ff4e283.entry.js +0 -2
  383. package/dist/core/p-2ff4e283.entry.js.map +0 -1
  384. package/dist/core/p-3db785f0.entry.js +0 -2
  385. package/dist/core/p-3db785f0.entry.js.map +0 -1
  386. package/dist/core/p-42883e4c.entry.js.map +0 -1
  387. package/dist/core/p-59028160.entry.js +0 -2
  388. package/dist/core/p-59028160.entry.js.map +0 -1
  389. package/dist/core/p-5b7dfe57.entry.js +0 -2
  390. package/dist/core/p-5b7dfe57.entry.js.map +0 -1
  391. package/dist/core/p-603fea14.entry.js +0 -2
  392. package/dist/core/p-603fea14.entry.js.map +0 -1
  393. package/dist/core/p-64933069.entry.js +0 -2
  394. package/dist/core/p-64933069.entry.js.map +0 -1
  395. package/dist/core/p-7c78f6c6.entry.js.map +0 -1
  396. package/dist/core/p-8df49808.entry.js +0 -2
  397. package/dist/core/p-8df49808.entry.js.map +0 -1
  398. package/dist/core/p-8f12659d.entry.js.map +0 -1
  399. package/dist/core/p-903ee57e.entry.js +0 -2
  400. package/dist/core/p-903ee57e.entry.js.map +0 -1
  401. package/dist/core/p-92e3ccb9.entry.js +0 -2
  402. package/dist/core/p-92e3ccb9.entry.js.map +0 -1
  403. package/dist/core/p-9397b15b.js.map +0 -1
  404. package/dist/core/p-9b54feca.entry.js +0 -2
  405. package/dist/core/p-9b54feca.entry.js.map +0 -1
  406. package/dist/core/p-acc76b80.entry.js +0 -2
  407. package/dist/core/p-acc76b80.entry.js.map +0 -1
  408. package/dist/core/p-c1e90c85.entry.js +0 -2
  409. package/dist/core/p-c1e90c85.entry.js.map +0 -1
  410. package/dist/core/p-cb63e656.entry.js +0 -2
  411. package/dist/core/p-cb63e656.entry.js.map +0 -1
  412. package/dist/core/p-d3c0bffb.entry.js.map +0 -1
  413. package/dist/core/p-da3e8c54.entry.js +0 -2
  414. package/dist/core/p-da3e8c54.entry.js.map +0 -1
  415. package/dist/core/p-ec53b435.entry.js +0 -2
  416. package/dist/core/p-ec53b435.entry.js.map +0 -1
  417. package/dist/core/p-fb7b99dd.entry.js +0 -2
  418. package/dist/core/p-fb7b99dd.entry.js.map +0 -1
  419. package/dist/esm/helpers-5bd2012a.js.map +0 -1
  420. package/dist/esm/helpers-dab8ddfe.js.map +0 -1
  421. package/dist/esm/ic-input-component-container_4.entry.js +0 -149
  422. package/dist/esm/ic-input-component-container_4.entry.js.map +0 -1
  423. package/dist/esm/ic-menu-with-multi.entry.js +0 -2734
  424. package/dist/esm/ic-menu-with-multi.entry.js.map +0 -1
  425. package/dist/esm/ic-menu.entry.js +0 -654
  426. package/dist/esm/ic-menu.entry.js.map +0 -1
  427. package/dist/esm/ic-select-with-multi.entry.js +0 -784
  428. package/dist/esm/ic-select-with-multi.entry.js.map +0 -1
  429. package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +0 -214
  430. package/dist/types/components/ic-select-with-multi/ic-select.d.ts +0 -259
  431. package/dist/types/components/ic-select-with-multi/story-data.d.ts +0 -32
  432. /package/dist/core/{p-c033e7d6.entry.js.map → p-036d251b.entry.js.map} +0 -0
  433. /package/dist/core/{p-d2e7a256.entry.js.map → p-13d2db9b.entry.js.map} +0 -0
  434. /package/dist/core/{p-42e0f3bd.entry.js.map → p-2257f5e8.entry.js.map} +0 -0
  435. /package/dist/core/{p-897b8d16.entry.js.map → p-24d03bbd.entry.js.map} +0 -0
  436. /package/dist/core/{p-a78cf2cb.entry.js.map → p-266098ee.entry.js.map} +0 -0
  437. /package/dist/core/{p-bb1252fa.entry.js.map → p-26613dbd.entry.js.map} +0 -0
  438. /package/dist/core/{p-77a32de5.entry.js.map → p-2a3bd99a.entry.js.map} +0 -0
  439. /package/dist/core/{p-7c268030.entry.js.map → p-48a78218.entry.js.map} +0 -0
  440. /package/dist/core/{p-202bc922.entry.js.map → p-5ad1a7fb.entry.js.map} +0 -0
  441. /package/dist/core/{p-f9810621.entry.js.map → p-5b061abc.entry.js.map} +0 -0
  442. /package/dist/core/{p-6beffd0e.entry.js.map → p-6727166b.entry.js.map} +0 -0
  443. /package/dist/core/{p-8ca2e329.entry.js.map → p-6dc00a8f.entry.js.map} +0 -0
  444. /package/dist/core/{p-d5ca3bcb.entry.js.map → p-7aa6b76e.entry.js.map} +0 -0
  445. /package/dist/core/{p-e5d99316.entry.js.map → p-7b90f0ae.entry.js.map} +0 -0
  446. /package/dist/core/{p-30b046b2.entry.js.map → p-7e5b0fff.entry.js.map} +0 -0
  447. /package/dist/core/{p-50019ede.entry.js.map → p-80b296cd.entry.js.map} +0 -0
  448. /package/dist/core/{p-eb65e556.entry.js.map → p-82aa8136.entry.js.map} +0 -0
  449. /package/dist/core/{p-2e49fb22.entry.js.map → p-83b4efe2.entry.js.map} +0 -0
  450. /package/dist/core/{p-5accf0bb.entry.js.map → p-878df16f.entry.js.map} +0 -0
  451. /package/dist/core/{p-1fe35de1.entry.js.map → p-8bec76d1.entry.js.map} +0 -0
  452. /package/dist/core/{p-1109636a.entry.js.map → p-94416b6b.entry.js.map} +0 -0
  453. /package/dist/core/{p-4dcc37e7.entry.js.map → p-a4439688.entry.js.map} +0 -0
  454. /package/dist/core/{p-130a05cf.entry.js.map → p-affd7f55.entry.js.map} +0 -0
  455. /package/dist/core/{p-486d8d43.entry.js.map → p-b3d93bc1.entry.js.map} +0 -0
  456. /package/dist/core/{p-c1698936.entry.js.map → p-bac2beeb.entry.js.map} +0 -0
  457. /package/dist/core/{p-53e00a8a.entry.js.map → p-c29b2b48.entry.js.map} +0 -0
  458. /package/dist/core/{p-ed4cde5a.entry.js.map → p-c40c57ee.entry.js.map} +0 -0
  459. /package/dist/core/{p-b0751bd9.entry.js.map → p-c6a62d1b.entry.js.map} +0 -0
  460. /package/dist/core/{p-0ab10600.entry.js.map → p-cc22644d.entry.js.map} +0 -0
  461. /package/dist/core/{p-28323849.entry.js.map → p-d5e9cf81.entry.js.map} +0 -0
  462. /package/dist/core/{p-505250cf.entry.js.map → p-d7632baf.entry.js.map} +0 -0
  463. /package/dist/core/{p-7c80d79c.entry.js.map → p-dcccd9c1.entry.js.map} +0 -0
  464. /package/dist/core/{p-d03374fc.entry.js.map → p-fbb5c8f2.entry.js.map} +0 -0
  465. /package/dist/core/{p-a9151d0b.entry.js.map → p-fc2f336d.entry.js.map} +0 -0
@@ -1,658 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-4cf27b16.js');
6
- const checkIcon = require('./check-icon-dd563898.js');
7
- const helpers = require('./helpers-33b42cd6.js');
8
- const popper = require('./popper-16968c2e.js');
9
-
10
- const icMenuCss = "html.sc-ic-menu{line-height:1.15;-webkit-text-size-adjust:100%}body.sc-ic-menu{margin:0}main.sc-ic-menu{display:block}h1.sc-ic-menu{font-size:2em;margin:0.67em 0}hr.sc-ic-menu{box-sizing:content-box;height:0;overflow:visible}pre.sc-ic-menu{font-family:monospace, monospace;font-size:1em}a.sc-ic-menu{background-color:transparent}abbr[title].sc-ic-menu{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b.sc-ic-menu,strong.sc-ic-menu{font-weight:bolder}code.sc-ic-menu,kbd.sc-ic-menu,samp.sc-ic-menu{font-family:monospace, monospace;font-size:1em}small.sc-ic-menu{font-size:80%}sub.sc-ic-menu,sup.sc-ic-menu{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub.sc-ic-menu{bottom:-0.25em}sup.sc-ic-menu{top:-0.5em}img.sc-ic-menu{border-style:none}button.sc-ic-menu,input.sc-ic-menu,optgroup.sc-ic-menu,select.sc-ic-menu,textarea.sc-ic-menu{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button.sc-ic-menu,input.sc-ic-menu{overflow:visible}button.sc-ic-menu,select.sc-ic-menu{text-transform:none}button.sc-ic-menu,[type=\"button\"].sc-ic-menu,[type=\"reset\"].sc-ic-menu,[type=\"submit\"].sc-ic-menu{-webkit-appearance:button}button.sc-ic-menu::-moz-focus-inner,[type=\"button\"].sc-ic-menu::-moz-focus-inner,[type=\"reset\"].sc-ic-menu::-moz-focus-inner,[type=\"submit\"].sc-ic-menu::-moz-focus-inner{border-style:none;padding:0}button.sc-ic-menu:-moz-focusring,[type=\"button\"].sc-ic-menu:-moz-focusring,[type=\"reset\"].sc-ic-menu:-moz-focusring,[type=\"submit\"].sc-ic-menu:-moz-focusring{outline:1px dotted ButtonText}fieldset.sc-ic-menu{padding:0.35em 0.75em 0.625em}legend.sc-ic-menu{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress.sc-ic-menu{vertical-align:baseline}textarea.sc-ic-menu{overflow:auto}[type=\"checkbox\"].sc-ic-menu,[type=\"radio\"].sc-ic-menu{box-sizing:border-box;padding:0}[type=\"number\"].sc-ic-menu::-webkit-inner-spin-button,[type=\"number\"].sc-ic-menu::-webkit-outer-spin-button{height:auto}[type=\"search\"].sc-ic-menu{-webkit-appearance:textfield;outline-offset:-2px}[type=\"search\"].sc-ic-menu::-webkit-search-decoration{-webkit-appearance:none}.sc-ic-menu::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details.sc-ic-menu{display:block}summary.sc-ic-menu{display:list-item}template.sc-ic-menu{display:none}[hidden].sc-ic-menu{display:none}html.sc-ic-menu,body.sc-ic-menu,div.sc-ic-menu,span.sc-ic-menu,applet.sc-ic-menu,object.sc-ic-menu,iframe.sc-ic-menu,h1.sc-ic-menu,h2.sc-ic-menu,h3.sc-ic-menu,h4.sc-ic-menu,h5.sc-ic-menu,h6.sc-ic-menu,p.sc-ic-menu,blockquote.sc-ic-menu,pre.sc-ic-menu,a.sc-ic-menu,abbr.sc-ic-menu,acronym.sc-ic-menu,address.sc-ic-menu,big.sc-ic-menu,cite.sc-ic-menu,code.sc-ic-menu,del.sc-ic-menu,dfn.sc-ic-menu,em.sc-ic-menu,img.sc-ic-menu,ins.sc-ic-menu,kbd.sc-ic-menu,q.sc-ic-menu,s.sc-ic-menu,samp.sc-ic-menu,small.sc-ic-menu,strike.sc-ic-menu,strong.sc-ic-menu,sub.sc-ic-menu,sup.sc-ic-menu,tt.sc-ic-menu,var.sc-ic-menu,b.sc-ic-menu,u.sc-ic-menu,i.sc-ic-menu,center.sc-ic-menu,dl.sc-ic-menu,dt.sc-ic-menu,dd.sc-ic-menu,ol.sc-ic-menu,ul.sc-ic-menu,li.sc-ic-menu,fieldset.sc-ic-menu,form.sc-ic-menu,label.sc-ic-menu,legend.sc-ic-menu,table.sc-ic-menu,caption.sc-ic-menu,tbody.sc-ic-menu,tfoot.sc-ic-menu,thead.sc-ic-menu,tr.sc-ic-menu,th.sc-ic-menu,td.sc-ic-menu,article.sc-ic-menu,aside.sc-ic-menu,canvas.sc-ic-menu,details.sc-ic-menu,embed.sc-ic-menu,figure.sc-ic-menu,figcaption.sc-ic-menu,footer.sc-ic-menu,header.sc-ic-menu,hgroup.sc-ic-menu,menu.sc-ic-menu,nav.sc-ic-menu,output.sc-ic-menu,ruby.sc-ic-menu,section.sc-ic-menu,summary.sc-ic-menu,time.sc-ic-menu,mark.sc-ic-menu,audio.sc-ic-menu,video.sc-ic-menu{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}@media (prefers-reduced-motion: no-preference){.ic-menu-open.sc-ic-menu-h .menu.sc-ic-menu{transition:max-height var(--ic-transition-duration-slow)}}.sc-ic-menu-h{border-radius:var(--ic-border-radius);max-height:0;width:var(--input-width, 20rem);color:var(--ic-color-text-primary);--ic-typography-color:var(--ic-color-text-primary);background-color:var(--ic-architectural-white);position:relative;z-index:var(--ic-z-index-menu);box-sizing:border-box;box-shadow:var(--ic-elevation-overlay)}.sc-ic-menu-h:not(.ic-menu-no-focus):focus-within{box-shadow:var(--ic-border-focus)}#retry-button.sc-ic-menu::part(button){height:var(--ic-space-lg)}.small.sc-ic-menu #retry-button.sc-ic-menu::part(button){height:var(--ic-space-md)}.on-dialog.sc-ic-menu-h{inset:auto !important}.menu.sc-ic-menu{text-decoration:none;list-style-type:none;border:var(--ic-border-width) solid var(--ic-architectural-400);border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);visibility:hidden;max-height:0;overflow-y:hidden}.menu-scroll.sc-ic-menu{overflow-y:auto}.menu.sc-ic-menu:focus-visible{outline:none}.ic-menu-open.sc-ic-menu-h{max-height:none;display:block}.ic-menu-open.sc-ic-menu-h .menu.sc-ic-menu{visibility:visible;max-height:calc(var(--ic-space-xl) * 10 + var(--ic-space-xxxs))}.ic-menu-full-width.sc-ic-menu-h{width:100%}.option.sc-ic-menu{padding:var(--ic-space-xs) calc(var(--ic-space-xs) - var(--ic-space-1px));cursor:pointer;display:flex;align-items:center;overflow-wrap:anywhere}.option.sc-ic-menu:not(.loading-option){justify-content:space-between}.ic-menu-small.sc-ic-menu-h .option.sc-ic-menu{padding:var(--ic-space-xxs) calc(var(--ic-space-xs) - var(--ic-space-1px))}.ic-menu-large.sc-ic-menu-h .option.sc-ic-menu{padding:var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px))}.option.sc-ic-menu:last-child{border-radius:0 0 var(--ic-space-1px) var(--ic-space-1px)}.option.sc-ic-menu:first-child{border-radius:var(--ic-space-1px) var(--ic-space-1px) 0 0}.option.sc-ic-menu:not(.disabled-option):hover{background-color:var(--ic-action-dark-bg-hover)}.option.sc-ic-menu:not(.disabled-option):active{background-color:var(--ic-action-dark-bg-pressed)}.option.sc-ic-menu:focus-visible{outline:var(--ic-hc-focus-outline)}.option.sc-ic-menu:not(.disabled-option) .option-description.sc-ic-menu{--ic-typography-color:var(--ic-color-text-secondary)}.option.sc-ic-menu .option-label.sc-ic-menu{display:flex;flex-direction:row;align-items:top}.option.sc-ic-menu .option-element.sc-ic-menu{margin-top:var(--ic-space-xxs)}.option.sc-ic-menu .option-icon.sc-ic-menu{height:var(--ic-space-md);width:var(--ic-space-md);margin-top:var(--ic-space-xxs);margin-right:var(--ic-space-xxxs)}.option-text-container.sc-ic-menu{pointer-events:none}.option.loading-option.sc-ic-menu .option-text-container.sc-ic-menu{margin-left:calc(var(--ic-space-xs) + var(--ic-space-xxxs));color:var(--ic-color-text-secondary);--ic-typography-color:var(--ic-color-text-secondary)}.error-icon-svg.sc-ic-menu{height:var(--ic-space-md);width:var(--ic-space-md);fill:var(--ic-status-error-default);align-self:center;display:flex;margin-right:calc(var(--ic-space-xxs) * 1.2)}.loading-error-info.sc-ic-menu{display:flex}.check-icon.sc-ic-menu{height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-xs);pointer-events:none}.focused-option.sc-ic-menu .check-icon.sc-ic-menu *.sc-ic-menu{fill:currentcolor}.option-group-title.sc-ic-menu{padding:var(--ic-space-lg) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xs);--ic-typography-color:var(--ic-color-text-tertiary)}.ic-menu-small.sc-ic-menu-h .option-group-title.sc-ic-menu{padding:var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xxs)}.last-recommended-option.sc-ic-menu{border-bottom:var(--ic-border-default)}.disabled-option.sc-ic-menu{color:var(--ic-architectural-200);--ic-typography-color:var(--ic-architectural-200);cursor:default;pointer-events:none}.focused-option.sc-ic-menu,.focused-option.sc-ic-menu .option-description.sc-ic-menu{background-color:var(--ic-color-focus-inner) !important;color:var(--ic-architectural-white) !important;--ic-typography-color:var(--ic-architectural-white) !important}.no-results.sc-ic-menu-h li.sc-ic-menu{cursor:no-drop}.no-results.sc-ic-menu-h li.sc-ic-menu:hover{background-color:transparent}@media (forced-colors: active){.focused-option.sc-ic-menu:focus{outline:none;border:0.125rem solid transparent}}";
11
-
12
- const Menu = class {
13
- constructor(hostRef) {
14
- index.registerInstance(this, hostRef);
15
- this.menuKeyPress = index.createEvent(this, "menuKeyPress", 7);
16
- this.menuOptionId = index.createEvent(this, "menuOptionId", 7);
17
- this.menuOptionSelect = index.createEvent(this, "menuOptionSelect", 7);
18
- this.menuStateChange = index.createEvent(this, "menuStateChange", 7);
19
- this.menuValueChange = index.createEvent(this, "menuValueChange", 7);
20
- this.retryButtonClicked = index.createEvent(this, "retryButtonClicked", 7);
21
- this.timeoutBlur = index.createEvent(this, "timeoutBlur", 7);
22
- this.ungroupedOptionsSet = index.createEvent(this, "ungroupedOptionsSet", 7);
23
- this.disabledOptionSelected = false;
24
- this.hasPreviouslyBlurred = false;
25
- this.hasTimedOut = false;
26
- this.isLoading = false;
27
- this.isSearchBar = false;
28
- this.isSearchableSelect = false;
29
- // Prevents menu re-opening immediately after it is closed on blur when clicking input.
30
- this.preventClickOpen = false;
31
- this.ungroupedOptions = [];
32
- this.handleClearListener = () => {
33
- this.optionHighlighted = "";
34
- };
35
- this.handleSubmitSearch = () => {
36
- const highlightedOptionIndex = this.options.findIndex((option) => option[this.valueField] === this.optionHighlighted);
37
- this.setInputValue(highlightedOptionIndex);
38
- };
39
- this.handleMenuChange = (open, focusInput) => {
40
- this.menuStateChange.emit({ open, focusInput });
41
- if (!open && focusInput !== false) {
42
- this.inputEl.focus();
43
- this.preventClickOpen = false;
44
- }
45
- };
46
- this.setNextOptionValue = (selectedOptionIndex) => {
47
- if (this.ungroupedOptions[selectedOptionIndex + 1]) {
48
- this.menuOptionSelect.emit({
49
- value: this.ungroupedOptions[selectedOptionIndex + 1][this.valueField],
50
- optionId: this.getOptionId(this.ungroupedOptions[selectedOptionIndex + 1][this.valueField]),
51
- });
52
- }
53
- else {
54
- this.menuOptionSelect.emit({
55
- value: this.ungroupedOptions[0][this.valueField],
56
- optionId: this.getOptionId(this.ungroupedOptions[0][this.valueField]),
57
- });
58
- }
59
- };
60
- this.setPreviousOptionValue = (selectedOptionIndex) => {
61
- if (this.ungroupedOptions[selectedOptionIndex - 1]) {
62
- this.menuOptionSelect.emit({
63
- value: this.ungroupedOptions[selectedOptionIndex - 1][this.valueField],
64
- optionId: this.getOptionId(this.ungroupedOptions[selectedOptionIndex - 1][this.valueField]),
65
- });
66
- }
67
- else {
68
- this.menuOptionSelect.emit({
69
- value: this.ungroupedOptions[this.ungroupedOptions.length - 1][this.valueField],
70
- optionId: this.getOptionId(this.ungroupedOptions[this.ungroupedOptions.length - 1][this.valueField]),
71
- });
72
- }
73
- };
74
- this.getParentEl = (parent) => {
75
- if (parent.tagName === "IC-SEARCH-BAR") {
76
- this.isSearchBar = true;
77
- }
78
- else if (parent.tagName === "IC-SELECT" &&
79
- parent.getAttribute("searchable") !== null &&
80
- parent.getAttribute("searchable") !== undefined) {
81
- this.isSearchableSelect = true;
82
- }
83
- };
84
- this.arrowBehaviour = (event) => {
85
- event.preventDefault();
86
- this.handleMenuChange(true);
87
- };
88
- this.setMenuOptions = () => this.isSearchBar ? this.options : this.ungroupedOptions;
89
- this.setHighlightedOption = (highlightedIndex) => {
90
- const menuOptions = this.setMenuOptions();
91
- menuOptions[highlightedIndex] &&
92
- !menuOptions[highlightedIndex].timedOut &&
93
- (this.optionHighlighted =
94
- menuOptions[highlightedIndex][this.valueField] || undefined);
95
- };
96
- this.autoSetInputValueKeyboardOpen = (event) => {
97
- const selectedOptionIndex = this.ungroupedOptions.findIndex((option) => option[this.valueField] === this.value);
98
- this.keyboardNav = false;
99
- switch (event.key) {
100
- case "ArrowDown":
101
- this.keyboardNav = true;
102
- this.arrowBehaviour(event);
103
- this.setNextOptionValue(selectedOptionIndex);
104
- break;
105
- case "ArrowUp":
106
- this.keyboardNav = true;
107
- this.arrowBehaviour(event);
108
- this.setPreviousOptionValue(selectedOptionIndex);
109
- break;
110
- case " ":
111
- case "Enter":
112
- if (event.target.id !== "clear-button") {
113
- this.handleMenuChange(true);
114
- }
115
- break;
116
- }
117
- };
118
- this.manSetInputValueKeyboardOpen = (event) => {
119
- const menuOptions = this.setMenuOptions();
120
- const highlightedOptionIndex = menuOptions.findIndex((option) => option[this.valueField] === this.optionHighlighted);
121
- const getOptionId = (index) => { var _a; return (_a = Array.from(this.host.querySelectorAll("li"))[index]) === null || _a === void 0 ? void 0 : _a.id; };
122
- const isOpen = this.isSearchBar || this.isSearchableSelect || this.open;
123
- switch (event.key) {
124
- case "ArrowDown":
125
- this.keyboardNav = true;
126
- this.arrowBehaviour(event);
127
- if (highlightedOptionIndex < menuOptions.length - 1) {
128
- this.setHighlightedOption(highlightedOptionIndex + 1);
129
- this.menuOptionId.emit({
130
- optionId: getOptionId(highlightedOptionIndex + 1),
131
- });
132
- }
133
- else {
134
- this.setHighlightedOption(0);
135
- this.menuOptionId.emit({
136
- optionId: getOptionId(0),
137
- });
138
- }
139
- this.preventIncorrectTabOrder = false;
140
- this.focusFromSearchKeypress = false;
141
- break;
142
- case "ArrowUp":
143
- this.keyboardNav = true;
144
- this.arrowBehaviour(event);
145
- if (highlightedOptionIndex <= 0 ||
146
- highlightedOptionIndex > menuOptions.length + 1) {
147
- this.setHighlightedOption(menuOptions.length - 1);
148
- this.menuOptionId.emit({
149
- optionId: getOptionId(menuOptions.length - 1),
150
- });
151
- }
152
- else {
153
- this.setHighlightedOption(highlightedOptionIndex - 1);
154
- this.menuOptionId.emit({
155
- optionId: getOptionId(highlightedOptionIndex - 1),
156
- });
157
- }
158
- this.preventIncorrectTabOrder = false;
159
- this.focusFromSearchKeypress = false;
160
- break;
161
- case "Home":
162
- this.keyboardNav = true;
163
- event.preventDefault();
164
- this.arrowBehaviour(event);
165
- this.setHighlightedOption(0);
166
- this.menuOptionId.emit({
167
- optionId: getOptionId(0),
168
- });
169
- break;
170
- case "End":
171
- this.keyboardNav = true;
172
- event.preventDefault();
173
- this.arrowBehaviour(event);
174
- this.setHighlightedOption(menuOptions.length - 1);
175
- this.menuOptionId.emit({
176
- optionId: getOptionId(menuOptions.length - 1),
177
- });
178
- break;
179
- case " ":
180
- this.keyboardNav = false;
181
- if (this.isSearchBar || this.isSearchableSelect) {
182
- break;
183
- }
184
- else {
185
- if (event.target.id !== "clear-button") {
186
- this.handleMenuChange(true);
187
- }
188
- }
189
- break;
190
- case "Enter":
191
- event.preventDefault();
192
- this.keyboardNav = false;
193
- if (isOpen) {
194
- if (highlightedOptionIndex >= 0) {
195
- if (menuOptions[highlightedOptionIndex] !== undefined) {
196
- if (this.isSearchBar &&
197
- menuOptions[highlightedOptionIndex].disabled === true) {
198
- this.disabledOptionSelected = true;
199
- }
200
- else {
201
- this.setInputValue(highlightedOptionIndex);
202
- this.value =
203
- menuOptions[highlightedOptionIndex][this.valueField];
204
- }
205
- }
206
- }
207
- else {
208
- this.setInputValue(highlightedOptionIndex);
209
- }
210
- }
211
- else {
212
- this.handleMenuChange(true);
213
- }
214
- break;
215
- case "Escape":
216
- if (this.open) {
217
- event.stopImmediatePropagation();
218
- }
219
- this.handleMenuChange(false);
220
- this.menuOptionId.emit({ optionId: undefined });
221
- break;
222
- case "Shift":
223
- case "Tab":
224
- if (this.isSearchBar) {
225
- this.keyboardNav = true;
226
- }
227
- this.preventIncorrectTabOrder = true;
228
- break;
229
- default:
230
- this.keyboardNav = false;
231
- this.focusOnSearchOrSelectInput(menuOptions, highlightedOptionIndex);
232
- break;
233
- }
234
- };
235
- this.setInputValue = (highlightedOptionIndex) => {
236
- const menuOptions = this.setMenuOptions();
237
- if (menuOptions[highlightedOptionIndex] !== undefined) {
238
- this.menuOptionSelect.emit({
239
- value: menuOptions[highlightedOptionIndex][this.valueField],
240
- });
241
- this.optionHighlighted = undefined;
242
- this.menuOptionId.emit({ optionId: undefined });
243
- }
244
- if (!this.hasTimedOut)
245
- this.handleMenuChange(false);
246
- else
247
- this.parentEl.setFocus();
248
- };
249
- this.handleOptionClick = (event) => {
250
- const { value, label } = event.target.dataset;
251
- this.menuOptionSelect.emit({ value, label });
252
- this.handleMenuChange(false);
253
- };
254
- this.handleRetry = () => {
255
- this.retryButtonClicked.emit({ value: this.value });
256
- };
257
- this.handleRetryKeyDown = (ev) => {
258
- if (ev.key === "Enter" || ev.key === " ") {
259
- ev.preventDefault();
260
- this.retryButtonClicked.emit({ value: this.value, keyPressed: ev.key });
261
- }
262
- };
263
- this.handleBlur = (event) => {
264
- if (event.relatedTarget !== this.inputEl) {
265
- if (!this.menu.contains(event.relatedTarget)) {
266
- this.handleMenuChange(false, this.hasPreviouslyBlurred);
267
- }
268
- }
269
- else {
270
- this.handleMenuChange(false);
271
- this.preventClickOpen = true;
272
- }
273
- if (!this.isSearchBar)
274
- this.hasPreviouslyBlurred = !!event.relatedTarget;
275
- };
276
- this.handleMouseDown = (event) => {
277
- event.preventDefault();
278
- };
279
- this.handleMenuKeyDown = (event) => {
280
- if (this.activationType === "automatic") {
281
- this.autoSetValueOnMenuKeyDown(event);
282
- }
283
- else if (this.activationType === "manual" && !this.isSearchBar) {
284
- this.manSetInputValueKeyboardOpen(event);
285
- }
286
- };
287
- this.emitMenuKeyPress = (isNavKey, key) => {
288
- this.menuKeyPress.emit({ isNavKey: isNavKey, key: key });
289
- };
290
- this.autoSetValueOnMenuKeyDown = (event) => {
291
- event.cancelBubble = true;
292
- const selectedOptionIndex = this.ungroupedOptions.findIndex((option) => option[this.valueField] === this.value);
293
- const isSearchableSelect = this.inputEl.tagName === "INPUT";
294
- this.keyboardNav = false;
295
- switch (event.key) {
296
- case " ":
297
- event.preventDefault();
298
- break;
299
- case "ArrowUp":
300
- if (!this.hasTimedOut) {
301
- event.preventDefault();
302
- this.setPreviousOptionValue(selectedOptionIndex);
303
- this.keyboardNav = true;
304
- }
305
- break;
306
- case "ArrowDown":
307
- if (!this.hasTimedOut) {
308
- event.preventDefault();
309
- this.setNextOptionValue(selectedOptionIndex);
310
- this.keyboardNav = true;
311
- }
312
- break;
313
- case "Home":
314
- this.menuOptionSelect.emit({
315
- value: this.ungroupedOptions[0][this.valueField],
316
- });
317
- this.keyboardNav = true;
318
- break;
319
- case "End":
320
- this.menuOptionSelect.emit({
321
- value: this.ungroupedOptions[this.ungroupedOptions.length - 1][this.valueField],
322
- });
323
- this.keyboardNav = true;
324
- break;
325
- case "Enter":
326
- !this.hasTimedOut && this.handleMenuChange(false);
327
- break;
328
- case "Escape":
329
- this.handleMenuChange(false);
330
- break;
331
- case "Backspace":
332
- if (isSearchableSelect) {
333
- this.inputEl.focus();
334
- }
335
- break;
336
- case "Shift":
337
- break;
338
- default:
339
- if (isSearchableSelect && event.key !== "Tab" && !this.hasTimedOut) {
340
- this.inputEl.focus();
341
- }
342
- if (event.key.length === 1) {
343
- this.keyboardNav = true;
344
- }
345
- break;
346
- }
347
- this.emitMenuKeyPress(this.keyboardNav, event.key);
348
- };
349
- this.handleMenuKeyUp = (event) => {
350
- if (event.key === "Tab" && event.shiftKey) {
351
- this.preventClickOpen = false;
352
- }
353
- if (event.key === "Enter" && this.disabledOptionSelected) {
354
- this.disabledOptionSelected = false;
355
- event.stopImmediatePropagation();
356
- }
357
- };
358
- this.getOptionId = (value) => {
359
- return `${this.menuId}-${value}`;
360
- };
361
- this.getOptionAriaLabel = (option, parentOption) => {
362
- let ariaLabel = option[this.labelField];
363
- if (option.description) {
364
- ariaLabel = `${ariaLabel}, ${option.description}`;
365
- }
366
- if (option.element) {
367
- ariaLabel = `${ariaLabel}, ${option.element.ariaLabel}`;
368
- }
369
- if (parentOption) {
370
- return `${ariaLabel}, ${parentOption[this.labelField]} group`;
371
- }
372
- else {
373
- return ariaLabel;
374
- }
375
- };
376
- this.getSortedOptions = (options) => {
377
- let sorted = [];
378
- if (options.sort) {
379
- sorted = options.sort((optionA, optionB) => optionA.recommended && !optionB.recommended ? -1 : 0);
380
- }
381
- return sorted;
382
- };
383
- this.isManualMode = this.activationType === "manual";
384
- this.scrollToSelected = (menu) => {
385
- const selectedOption = this.selectOnEnter
386
- ? this.host.querySelector(`li[data-value="${this.optionHighlighted}"]`)
387
- : menu.querySelector(".option[aria-selected='true']");
388
- if (selectedOption) {
389
- const elTop = selectedOption.offsetTop + selectedOption.offsetHeight;
390
- if (elTop > menu.scrollTop + menu.offsetHeight ||
391
- elTop < menu.scrollTop + menu.offsetHeight) {
392
- menu.scrollTop = selectedOption.offsetTop;
393
- }
394
- selectedOption.focus();
395
- }
396
- };
397
- this.loadUngroupedOptions = () => {
398
- if (this.options.length > 0 && this.options.map) {
399
- this.options.map((option) => {
400
- if (option.children) {
401
- option.children.map((option) => !option.disabled && this.ungroupedOptions.push(option));
402
- }
403
- else if (!option.disabled) {
404
- this.ungroupedOptions.push(option);
405
- }
406
- });
407
- }
408
- this.ungroupedOptions = this.getSortedOptions(this.ungroupedOptions);
409
- this.ungroupedOptionsSet.emit({ options: this.ungroupedOptions });
410
- };
411
- this.setMenuScrollbar = () => {
412
- let optionsHeight = 0;
413
- this.host
414
- .querySelectorAll(".option")
415
- .forEach((option) => (optionsHeight += option.clientHeight));
416
- if (optionsHeight >= 320) {
417
- this.menu.classList.add("menu-scroll");
418
- }
419
- };
420
- this.handleTimeoutBlur = (ev) => {
421
- this.timeoutBlur.emit({ ev });
422
- };
423
- this.optionContent = (option) => {
424
- var _a;
425
- return (index.h(index.Fragment, null, option.loading && index.h("ic-loading-indicator", { size: "icon" }), index.h("div", { class: "option-text-container" }, index.h("div", { class: "option-label" }, option.icon && (index.h("div", { class: "option-icon", innerHTML: option.icon, "aria-hidden": "true" })), index.h("ic-typography", { variant: "body", "aria-hidden": "true" }, option[this.labelField])), option.description && (index.h("ic-typography", { id: `${this.getOptionId(option[this.valueField])}-description`, class: "option-description", variant: "caption", "aria-hidden": "true" }, index.h("p", null, option.description))), option.element && (index.h("div", { class: "option-element", innerHTML: option.element.component, "aria-hidden": "true" }))), !!option[this.valueField] &&
426
- !!this.value &&
427
- option[this.valueField].toLowerCase() === ((_a = this.value) === null || _a === void 0 ? void 0 : _a.toLowerCase()) &&
428
- this.parentEl.tagName !== "IC-SEARCH-BAR" && (index.h("span", { class: "check-icon", innerHTML: checkIcon.Check }))));
429
- };
430
- this.displayOption = (option, index$1, parentOption) => {
431
- const { open, value, keyboardNav, isManualMode, initialOptionsListRender, optionHighlighted, options, } = this;
432
- return (index.h("li", { id: this.getOptionId(option[this.valueField]), class: {
433
- option: true,
434
- "focused-option": isManualMode
435
- ? (keyboardNav || initialOptionsListRender) &&
436
- option[this.valueField] === optionHighlighted
437
- : keyboardNav && option[this.valueField] === value,
438
- "last-recommended-option": option.recommended &&
439
- options[index$1 + 1] &&
440
- !options[index$1 + 1].recommended,
441
- "disabled-option": option.disabled,
442
- "loading-option": option.loading,
443
- timeout: option.timedOut,
444
- }, role: "option", tabindex: open &&
445
- (option[this.valueField] === value ||
446
- option[this.valueField] === optionHighlighted) &&
447
- keyboardNav
448
- ? "0"
449
- : "-1", "aria-label": this.getOptionAriaLabel(option, parentOption), "aria-selected": `${option[this.valueField] === value}`, "aria-disabled": option.disabled ? "true" : "false", onClick: !option.timedOut && !option.loading && this.handleOptionClick, onBlur: this.handleBlur, onMouseDown: this.handleMouseDown, "data-value": option[this.valueField], "data-label": option[this.labelField] }, option.timedOut ? (index.h(index.Fragment, null, index.h("div", { class: "loading-error-info" }, index.h("svg", { class: "error-icon-svg", "aria-labelledby": "error-title", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "#000000" }, index.h("title", { id: "error-title" }, "Error"), index.h("g", { id: "close-octagon" }, index.h("path", { id: "Vector", d: "M8.77 3L3.5 8.27V15.73L8.77 21H16.23L21.5 15.73V8.27L16.23 3M8.91 7L12.5 10.59L16.09 7L17.5 8.41L13.91 12L17.5 15.59L16.09 17L12.5 13.41L8.91 17L7.5 15.59L11.09 12L7.5 8.41" }))), index.h("ic-typography", { variant: "label" }, option[this.labelField])), index.h("ic-button", { size: "small", variant: "tertiary", onClick: this.handleRetry, onKeyDown: this.handleRetryKeyDown, onBlur: this.handleTimeoutBlur, id: "retry-button" }, "Retry"))) : (this.optionContent(option))));
450
- };
451
- this.focusFromSearchKeypress = false;
452
- this.initialOptionsListRender = false;
453
- this.keyboardNav = false;
454
- this.optionHighlighted = undefined;
455
- this.preventIncorrectTabOrder = false;
456
- this.activationType = "automatic";
457
- this.anchorEl = undefined;
458
- this.autoFocusOnSelected = true;
459
- this.fullWidth = false;
460
- this.inputEl = undefined;
461
- this.inputLabel = undefined;
462
- this.labelField = "label";
463
- this.menuId = undefined;
464
- this.open = undefined;
465
- this.parentEl = undefined;
466
- this.searchMode = "navigation";
467
- this.selectOnEnter = false;
468
- this.size = "medium";
469
- this.options = undefined;
470
- this.value = undefined;
471
- this.valueField = "value";
472
- }
473
- watchOpenHandler() {
474
- if (!this.open && this.popperInstance) {
475
- this.popperInstance.destroy();
476
- this.popperInstance = null;
477
- }
478
- }
479
- watchOptionsHandler(newOptions) {
480
- this.hasTimedOut = newOptions.some((opt) => opt.timedOut);
481
- this.isLoading = newOptions.some((opt) => opt.loading);
482
- this.ungroupedOptions = [];
483
- this.loadUngroupedOptions();
484
- }
485
- watchValueHandler() {
486
- this.menuValueChange.emit({ value: this.value });
487
- }
488
- connectedCallback() {
489
- this.getParentEl(this.parentEl);
490
- if (this.isSearchBar) {
491
- if (this.searchMode === "navigation")
492
- this.setHighlightedOption(0);
493
- this.initialOptionsListRender = true;
494
- }
495
- }
496
- disconnectedCallback() {
497
- if (this.popperInstance) {
498
- this.popperInstance.destroy();
499
- }
500
- this.parentEl.removeEventListener("icClear", this.handleClearListener);
501
- this.parentEl.removeEventListener("icSubmitSearch", this.handleSubmitSearch);
502
- }
503
- componentWillLoad() {
504
- var _a, _b;
505
- this.loadUngroupedOptions();
506
- this.parentEl.addEventListener("icClear", this.handleClearListener);
507
- this.parentEl.addEventListener("icSubmitSearch", this.handleSubmitSearch);
508
- this.hasTimedOut = (_a = this.options) === null || _a === void 0 ? void 0 : _a.some((opt) => opt.timedOut);
509
- this.isLoading = (_b = this.options) === null || _b === void 0 ? void 0 : _b.some((opt) => opt.loading);
510
- }
511
- componentDidLoad() {
512
- if (this.isSearchBar &&
513
- this.parentEl.disableAutoFiltering) {
514
- this.focusFromSearchKeypress = true;
515
- }
516
- helpers.onComponentRequiredPropUndefined([
517
- { prop: this.open, propName: "open" },
518
- { prop: this.options, propName: "options" },
519
- { prop: this.menuId, propName: "menu-id" },
520
- { prop: this.inputLabel, propName: "input-label" },
521
- //NOTE: no check for value, input-el or anchor-el as otherwise get console errors on first load of select component
522
- ], "Menu");
523
- }
524
- componentDidUpdate() {
525
- const inputValueInOptions = this.options.some((option) => option[this.valueField] === this.value);
526
- if (this.open && this.options.length !== 0) {
527
- if (this.value &&
528
- this.keyboardNav &&
529
- inputValueInOptions &&
530
- this.autoFocusOnSelected &&
531
- !this.isSearchableSelect) {
532
- this.scrollToSelected(this.menu);
533
- }
534
- else if (this.inputEl.tagName !== "IC-TEXT-FIELD" &&
535
- this.inputEl.tagName !== "INPUT") {
536
- this.menu.focus();
537
- }
538
- else if (!!this.optionHighlighted &&
539
- !this.focusFromSearchKeypress &&
540
- !this.preventIncorrectTabOrder) {
541
- const highlightedEl = this.host.querySelector(`li[data-value="${this.optionHighlighted}"]`);
542
- if (highlightedEl) {
543
- highlightedEl.focus();
544
- }
545
- }
546
- }
547
- if (this.open && !this.value && this.selectOnEnter) {
548
- this.scrollToSelected(this.menu);
549
- }
550
- }
551
- componentDidRender() {
552
- if (this.open && !this.popperInstance && this.anchorEl) {
553
- this.initPopperJs(this.anchorEl);
554
- }
555
- if (this.open && !!this.options.length) {
556
- this.setMenuScrollbar();
557
- }
558
- }
559
- /**
560
- * @internal If menu is opened with the mouse, emit menuStateChange custom event.
561
- */
562
- async handleClickOpen() {
563
- if (!this.preventClickOpen) {
564
- this.menuStateChange.emit({ open: !this.open });
565
- this.keyboardNav = false;
566
- }
567
- this.preventClickOpen = false;
568
- }
569
- /**
570
- * Used alongside activationType
571
- * If menu is opened via keyboard navigation (i.e. Enter, ArrowUp or ArrowDown), emit optionSelect custom event.
572
- * @param {KeyboardEvent} event The keyboard event which is available when handleKeyboardOpen is invoked.
573
- */
574
- async handleKeyboardOpen(event) {
575
- if (this.activationType === "automatic") {
576
- this.autoSetInputValueKeyboardOpen(event);
577
- }
578
- else {
579
- this.manSetInputValueKeyboardOpen(event);
580
- }
581
- }
582
- /**
583
- * @internal Used to highlight the first option in the menu.
584
- */
585
- async handleSetFirstOption() {
586
- this.setHighlightedOption(0);
587
- }
588
- /**
589
- * @internal Used to initialize popperJS with an anchor element.
590
- * 5/12/2023: Tested with Floating UI, however, discovered inconsistent
591
- * boundary behaviour so sticking with PopperJS.
592
- */
593
- async initPopperJs(anchor) {
594
- this.popperInstance = popper.createPopper(anchor, this.host, {
595
- placement: "bottom",
596
- modifiers: [
597
- {
598
- name: "offset",
599
- options: {
600
- offset: [0, 7],
601
- },
602
- },
603
- {
604
- name: "flip",
605
- options: {
606
- fallbackPlacements: ["top"],
607
- rootBoundary: "viewport",
608
- },
609
- },
610
- ],
611
- });
612
- }
613
- focusOnSearchOrSelectInput(menuOptions, highlightedOptionIndex) {
614
- if (!menuOptions[highlightedOptionIndex])
615
- return;
616
- if (this.isSearchBar) {
617
- this.parentEl.setFocus();
618
- if (this.searchMode === "navigation")
619
- this.setHighlightedOption(0);
620
- }
621
- if (this.isSearchableSelect) {
622
- this.parentEl.setFocus();
623
- }
624
- this.focusFromSearchKeypress = true;
625
- }
626
- render() {
627
- const { inputLabel, options, menuId, value, fullWidth, hasTimedOut, isLoading, size, open, inputEl, keyboardNav, } = this;
628
- return (index.h(index.Host, { class: {
629
- "ic-menu-full-width": fullWidth,
630
- "ic-menu-no-focus": (inputEl === null || inputEl === void 0 ? void 0 : inputEl.tagName) === "INPUT" || hasTimedOut || isLoading,
631
- [`ic-menu-${size}`]: true,
632
- "ic-menu-open": open,
633
- } }, options.length !== 0 && (index.h("ul", { id: menuId, class: "menu", role: "listbox", "aria-label": inputLabel, "aria-activedescendant": value != null && value !== "" ? this.getOptionId(value) : "", tabindex: open && !keyboardNav && (inputEl === null || inputEl === void 0 ? void 0 : inputEl.tagName) !== "INPUT" ? "0" : "-1", ref: (el) => (this.menu = el), onKeyDown: this.handleMenuKeyDown, onKeyUp: this.handleMenuKeyUp, onBlur: this.handleBlur }, this.getSortedOptions(options).map((option, index$1) => {
634
- if (option.children) {
635
- if (option.children.length > 0) {
636
- return (index.h("div", null, index.h("ic-typography", { class: "option-group-title", role: "presentation", variant: "subtitle-small" }, index.h("p", null, option[this.labelField])), option.children.map((childOption) => this.displayOption(childOption, index$1, option))));
637
- }
638
- else {
639
- return null;
640
- }
641
- }
642
- else {
643
- return this.displayOption(option, index$1);
644
- }
645
- })))));
646
- }
647
- get host() { return index.getElement(this); }
648
- static get watchers() { return {
649
- "open": ["watchOpenHandler"],
650
- "options": ["watchOptionsHandler"],
651
- "value": ["watchValueHandler"]
652
- }; }
653
- };
654
- Menu.style = icMenuCss;
655
-
656
- exports.ic_menu = Menu;
657
-
658
- //# sourceMappingURL=ic-menu.cjs.entry.js.map