@ukic/canary-web-components 2.0.0-canary.7 → 2.0.0-canary.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (361) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/helpers-93c5fc92.js +198 -0
  3. package/dist/cjs/helpers-93c5fc92.js.map +1 -0
  4. package/dist/cjs/{helpers-00b08718.js → helpers-b525d45a.js} +2 -2
  5. package/dist/cjs/helpers-b525d45a.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +6 -2
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +4 -3
  12. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-button_3.cjs.entry.js +23 -12
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-card.cjs.entry.js +5 -6
  18. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-data-entity.cjs.entry.js +3 -6
  23. package/dist/cjs/ic-data-entity.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-data-row.cjs.entry.js +21 -35
  25. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  27. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-empty-state.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +12 -10
  35. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  40. package/dist/cjs/ic-menu-with-multi.cjs.entry.js +2599 -0
  41. package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -0
  42. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  46. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-pagination-bar.cjs.entry.js +2 -18
  48. package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-pagination_4.cjs.entry.js +21 -13
  50. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  52. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-select-with-multi.cjs.entry.js +837 -0
  58. package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +1 -0
  59. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  60. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  63. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  64. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  66. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  68. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  69. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +184 -0
  70. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -0
  71. package/dist/cjs/ic-toggle-button.cjs.entry.js +6 -3
  72. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  74. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  75. package/dist/cjs/index-4cf27b16.js +12 -0
  76. package/dist/cjs/loader.cjs.js +1 -1
  77. package/dist/collection/collection-manifest.json +4 -1
  78. package/dist/collection/components/ic-menu-with-multi/ic-menu.css +701 -0
  79. package/dist/collection/components/ic-menu-with-multi/ic-menu.js +1458 -0
  80. package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -0
  81. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +880 -0
  82. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -0
  83. package/dist/collection/components/ic-select-with-multi/assets/Check.svg +3 -0
  84. package/dist/collection/components/ic-select-with-multi/assets/Clear.svg +3 -0
  85. package/dist/collection/components/ic-select-with-multi/assets/Expand.svg +3 -0
  86. package/dist/collection/components/ic-select-with-multi/ic-select.css +693 -0
  87. package/dist/collection/components/ic-select-with-multi/ic-select.js +1649 -0
  88. package/dist/collection/components/ic-select-with-multi/ic-select.js.map +1 -0
  89. package/dist/collection/components/ic-select-with-multi/story-data.js +216 -0
  90. package/dist/collection/components/ic-select-with-multi/story-data.js.map +1 -0
  91. package/dist/collection/components/ic-select-with-multi/test/a11y/ic-select.test.a11y.js +146 -0
  92. package/dist/collection/components/ic-select-with-multi/test/a11y/ic-select.test.a11y.js.map +1 -0
  93. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.e2e.js +2040 -0
  94. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.e2e.js.map +1 -0
  95. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js +1518 -0
  96. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js.map +1 -0
  97. package/dist/collection/utils/constants.js +28 -0
  98. package/dist/collection/utils/constants.js.map +1 -0
  99. package/dist/collection/utils/helpers.js +168 -5
  100. package/dist/collection/utils/helpers.js.map +1 -1
  101. package/dist/collection/utils/types.js +13 -0
  102. package/dist/collection/utils/types.js.map +1 -0
  103. package/dist/components/helpers.js +1 -1
  104. package/dist/components/helpers.js.map +1 -1
  105. package/dist/components/helpers2.js +183 -0
  106. package/dist/components/helpers2.js.map +1 -0
  107. package/dist/components/ic-accordion-group.js +7 -2
  108. package/dist/components/ic-accordion-group.js.map +1 -1
  109. package/dist/components/ic-badge.js +3 -2
  110. package/dist/components/ic-badge.js.map +1 -1
  111. package/dist/components/ic-button2.js +22 -11
  112. package/dist/components/ic-button2.js.map +1 -1
  113. package/dist/components/ic-card.js +5 -18
  114. package/dist/components/ic-card.js.map +1 -1
  115. package/dist/components/ic-data-entity.js +3 -6
  116. package/dist/components/ic-data-entity.js.map +1 -1
  117. package/dist/components/ic-data-row.js +20 -34
  118. package/dist/components/ic-data-row.js.map +1 -1
  119. package/dist/components/ic-input-component-container2.js +6 -5
  120. package/dist/components/ic-input-component-container2.js.map +1 -1
  121. package/dist/components/ic-menu-with-multi.d.ts +11 -0
  122. package/dist/components/ic-menu-with-multi.js +8 -0
  123. package/dist/components/ic-menu-with-multi.js.map +1 -0
  124. package/dist/components/ic-menu2.js +5 -4
  125. package/dist/components/ic-menu2.js.map +1 -1
  126. package/dist/components/ic-menu3.js +2665 -0
  127. package/dist/components/ic-menu3.js.map +1 -0
  128. package/dist/components/ic-pagination-bar2.js +1 -17
  129. package/dist/components/ic-pagination-bar2.js.map +1 -1
  130. package/dist/components/ic-popover-menu.js +1 -1
  131. package/dist/components/ic-popover-menu.js.map +1 -1
  132. package/dist/components/ic-search-bar.js.map +1 -1
  133. package/dist/components/ic-select-with-multi.d.ts +11 -0
  134. package/dist/components/ic-select-with-multi.js +962 -0
  135. package/dist/components/ic-select-with-multi.js.map +1 -0
  136. package/dist/components/ic-select2.js +22 -13
  137. package/dist/components/ic-select2.js.map +1 -1
  138. package/dist/components/ic-toggle-button-group.js +210 -0
  139. package/dist/components/ic-toggle-button-group.js.map +1 -0
  140. package/dist/components/ic-toggle-button.js +5 -2
  141. package/dist/components/ic-toggle-button.js.map +1 -1
  142. package/dist/core/core.css +8 -5
  143. package/dist/core/core.esm.js +1 -1
  144. package/dist/core/core.esm.js.map +1 -1
  145. package/dist/core/{p-9ce5f082.entry.js → p-045359e1.entry.js} +2 -2
  146. package/dist/core/{p-7276339a.entry.js → p-10fb4c46.entry.js} +2 -2
  147. package/dist/core/{p-d9342548.entry.js → p-169bfa51.entry.js} +2 -2
  148. package/dist/core/{p-5746577f.entry.js → p-1ca332ca.entry.js} +2 -2
  149. package/dist/core/{p-c345a874.entry.js → p-204ace96.entry.js} +2 -2
  150. package/dist/core/p-21150122.entry.js +2 -0
  151. package/dist/core/p-21150122.entry.js.map +1 -0
  152. package/dist/core/{p-f436630b.entry.js → p-2eac7dcc.entry.js} +2 -2
  153. package/dist/core/{p-b43bd4f3.entry.js → p-3803a5b5.entry.js} +2 -2
  154. package/dist/core/{p-24945ee5.entry.js → p-452985d9.entry.js} +2 -2
  155. package/dist/core/p-452985d9.entry.js.map +1 -0
  156. package/dist/core/{p-ca262cdc.entry.js → p-4753bac8.entry.js} +2 -2
  157. package/dist/core/{p-3d2fcf84.entry.js → p-4baa0916.entry.js} +2 -2
  158. package/dist/core/{p-79b71c18.entry.js → p-4f413fc0.entry.js} +2 -2
  159. package/dist/core/{p-051b8266.entry.js → p-595be57d.entry.js} +2 -2
  160. package/dist/core/{p-434780c8.entry.js → p-5ae93c16.entry.js} +2 -2
  161. package/dist/core/{p-ff1d23cd.entry.js → p-5e0c830b.entry.js} +2 -2
  162. package/dist/core/p-624d4f5f.entry.js +2 -0
  163. package/dist/core/p-624d4f5f.entry.js.map +1 -0
  164. package/dist/core/{p-c263542a.entry.js → p-6933f8e9.entry.js} +2 -2
  165. package/dist/core/{p-32f18701.entry.js → p-6c3044b6.entry.js} +2 -2
  166. package/dist/core/{p-da4f0a58.entry.js → p-73be1251.entry.js} +2 -2
  167. package/dist/core/{p-d49660e0.entry.js → p-75dac3d1.entry.js} +2 -2
  168. package/dist/core/{p-a3ab9f4c.entry.js → p-76915584.entry.js} +2 -2
  169. package/dist/core/p-76915584.entry.js.map +1 -0
  170. package/dist/core/{p-88971cea.entry.js → p-7ef8d616.entry.js} +2 -2
  171. package/dist/core/{p-9fd84c69.entry.js → p-81ddc39d.entry.js} +2 -2
  172. package/dist/core/{p-fbb1fba0.entry.js → p-869954a2.entry.js} +2 -2
  173. package/dist/core/{p-3c859b9e.entry.js → p-88d54b72.entry.js} +2 -2
  174. package/dist/core/{p-5e94fae8.entry.js → p-8b08d8fe.entry.js} +2 -2
  175. package/dist/core/p-8b08d8fe.entry.js.map +1 -0
  176. package/dist/core/{p-d78fd9f3.entry.js → p-917c5721.entry.js} +2 -2
  177. package/dist/core/{p-2094c844.entry.js → p-942282cd.entry.js} +2 -2
  178. package/dist/core/p-99cad6c2.js +2 -0
  179. package/dist/core/p-99cad6c2.js.map +1 -0
  180. package/dist/core/p-9caf19eb.js +2 -0
  181. package/dist/core/p-9caf19eb.js.map +1 -0
  182. package/dist/core/{p-966ab920.entry.js → p-a0f8efb2.entry.js} +2 -2
  183. package/dist/core/{p-7632acc6.entry.js → p-a31031a5.entry.js} +2 -2
  184. package/dist/core/{p-a7d52bd1.entry.js → p-a434c3d4.entry.js} +2 -2
  185. package/dist/core/{p-95d3cd52.entry.js → p-a43c12cd.entry.js} +2 -2
  186. package/dist/core/{p-aafb2c79.entry.js → p-a50c3b9e.entry.js} +2 -2
  187. package/dist/core/{p-28fb7cca.entry.js → p-ab09986c.entry.js} +2 -2
  188. package/dist/core/p-ab09986c.entry.js.map +1 -0
  189. package/dist/core/p-ac4e40a7.entry.js +2 -0
  190. package/dist/core/p-ac4e40a7.entry.js.map +1 -0
  191. package/dist/core/{p-7dfd61bb.entry.js → p-b82dcc29.entry.js} +2 -2
  192. package/dist/core/{p-337b6e05.entry.js → p-ba86928c.entry.js} +2 -2
  193. package/dist/core/{p-f827e4c0.entry.js → p-c125b65a.entry.js} +2 -2
  194. package/dist/core/{p-27aa95e7.entry.js → p-c34848da.entry.js} +2 -2
  195. package/dist/core/{p-3b9f3a07.entry.js → p-d8469ac0.entry.js} +2 -2
  196. package/dist/core/{p-a2f366c7.entry.js → p-db9c03c0.entry.js} +2 -2
  197. package/dist/core/{p-6de46cb7.entry.js → p-e0462b23.entry.js} +2 -2
  198. package/dist/core/p-e0462b23.entry.js.map +1 -0
  199. package/dist/core/p-e0a94f2d.entry.js +2 -0
  200. package/dist/core/p-e0a94f2d.entry.js.map +1 -0
  201. package/dist/core/{p-116b18fe.entry.js → p-e3997d60.entry.js} +2 -2
  202. package/dist/core/p-e79e0292.entry.js +2 -0
  203. package/dist/core/p-e79e0292.entry.js.map +1 -0
  204. package/dist/core/{p-0d181ac8.entry.js → p-e834344e.entry.js} +2 -2
  205. package/dist/core/p-f14454b1.entry.js +2 -0
  206. package/dist/core/{p-93c5b849.entry.js.map → p-f14454b1.entry.js.map} +1 -1
  207. package/dist/core/{p-a162744e.entry.js → p-f3c840cd.entry.js} +2 -2
  208. package/dist/core/{p-a162744e.entry.js.map → p-f3c840cd.entry.js.map} +1 -1
  209. package/dist/core/{p-7b849cb5.entry.js → p-f6888309.entry.js} +2 -2
  210. package/dist/core/p-f74a8752.entry.js +2 -0
  211. package/dist/core/p-f74a8752.entry.js.map +1 -0
  212. package/dist/core/{p-4df42c76.entry.js → p-f7a14c01.entry.js} +2 -2
  213. package/dist/core/{p-d5cc084b.entry.js → p-f843da01.entry.js} +2 -2
  214. package/dist/core/{p-d5cc084b.entry.js.map → p-f843da01.entry.js.map} +1 -1
  215. package/dist/core/{p-0f0509ee.entry.js → p-fc5611e2.entry.js} +2 -2
  216. package/dist/core/p-fc5611e2.entry.js.map +1 -0
  217. package/dist/core/p-fde45b29.entry.js +2 -0
  218. package/dist/core/p-fde45b29.entry.js.map +1 -0
  219. package/dist/esm/core.js +1 -1
  220. package/dist/esm/{helpers-d06dc4ed.js → helpers-12b4266a.js} +2 -2
  221. package/dist/esm/helpers-12b4266a.js.map +1 -0
  222. package/dist/esm/helpers-5271897c.js +183 -0
  223. package/dist/esm/helpers-5271897c.js.map +1 -0
  224. package/dist/esm/ic-accordion-group.entry.js +6 -2
  225. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  226. package/dist/esm/ic-accordion.entry.js +1 -1
  227. package/dist/esm/ic-alert.entry.js +1 -1
  228. package/dist/esm/ic-back-to-top.entry.js +1 -1
  229. package/dist/esm/ic-badge.entry.js +4 -3
  230. package/dist/esm/ic-badge.entry.js.map +1 -1
  231. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  232. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  233. package/dist/esm/ic-button_3.entry.js +23 -12
  234. package/dist/esm/ic-button_3.entry.js.map +1 -1
  235. package/dist/esm/ic-card.entry.js +5 -6
  236. package/dist/esm/ic-card.entry.js.map +1 -1
  237. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  238. package/dist/esm/ic-checkbox.entry.js +1 -1
  239. package/dist/esm/ic-chip.entry.js +1 -1
  240. package/dist/esm/ic-data-entity.entry.js +3 -6
  241. package/dist/esm/ic-data-entity.entry.js.map +1 -1
  242. package/dist/esm/ic-data-row.entry.js +21 -35
  243. package/dist/esm/ic-data-row.entry.js.map +1 -1
  244. package/dist/esm/ic-dialog.entry.js +1 -1
  245. package/dist/esm/ic-divider.entry.js +1 -1
  246. package/dist/esm/ic-empty-state.entry.js +1 -1
  247. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  248. package/dist/esm/ic-footer-link.entry.js +1 -1
  249. package/dist/esm/ic-footer.entry.js +1 -1
  250. package/dist/esm/ic-hero.entry.js +1 -1
  251. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  252. package/dist/esm/ic-input-component-container_3.entry.js +12 -10
  253. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  254. package/dist/esm/ic-input-label_2.entry.js +1 -1
  255. package/dist/esm/ic-link.entry.js +1 -1
  256. package/dist/esm/ic-menu-group.entry.js +1 -1
  257. package/dist/esm/ic-menu-item.entry.js +1 -1
  258. package/dist/esm/ic-menu-with-multi.entry.js +2595 -0
  259. package/dist/esm/ic-menu-with-multi.entry.js.map +1 -0
  260. package/dist/esm/ic-navigation-button.entry.js +1 -1
  261. package/dist/esm/ic-navigation-group.entry.js +1 -1
  262. package/dist/esm/ic-navigation-item.entry.js +1 -1
  263. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  264. package/dist/esm/ic-page-header.entry.js +1 -1
  265. package/dist/esm/ic-pagination-bar.entry.js +1 -17
  266. package/dist/esm/ic-pagination-bar.entry.js.map +1 -1
  267. package/dist/esm/ic-pagination_4.entry.js +21 -13
  268. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  269. package/dist/esm/ic-popover-menu.entry.js +1 -1
  270. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  271. package/dist/esm/ic-radio-group.entry.js +1 -1
  272. package/dist/esm/ic-radio-option.entry.js +1 -1
  273. package/dist/esm/ic-search-bar.entry.js +1 -1
  274. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  275. package/dist/esm/ic-select-with-multi.entry.js +833 -0
  276. package/dist/esm/ic-select-with-multi.entry.js.map +1 -0
  277. package/dist/esm/ic-side-navigation.entry.js +1 -1
  278. package/dist/esm/ic-status-tag.entry.js +1 -1
  279. package/dist/esm/ic-step.entry.js +1 -1
  280. package/dist/esm/ic-stepper.entry.js +1 -1
  281. package/dist/esm/ic-switch.entry.js +1 -1
  282. package/dist/esm/ic-tab-group.entry.js +1 -1
  283. package/dist/esm/ic-tab-panel.entry.js +1 -1
  284. package/dist/esm/ic-tab.entry.js +1 -1
  285. package/dist/esm/ic-theme.entry.js +1 -1
  286. package/dist/esm/ic-toast.entry.js +1 -1
  287. package/dist/esm/ic-toggle-button-group.entry.js +180 -0
  288. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -0
  289. package/dist/esm/ic-toggle-button.entry.js +6 -3
  290. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  291. package/dist/esm/ic-top-navigation.entry.js +1 -1
  292. package/dist/esm/ic-typography.entry.js +1 -1
  293. package/dist/esm/index-93509377.js +12 -0
  294. package/dist/esm/loader.js +1 -1
  295. package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +208 -0
  296. package/dist/types/components/ic-select-with-multi/ic-select.d.ts +289 -0
  297. package/dist/types/components/ic-select-with-multi/story-data.d.ts +32 -0
  298. package/dist/types/components/ic-select-with-multi/test/a11y/ic-select.test.a11y.d.ts +1 -0
  299. package/dist/types/components.d.ts +531 -0
  300. package/dist/types/utils/constants.d.ts +1 -0
  301. package/dist/types/utils/helpers.d.ts +61 -2
  302. package/dist/types/utils/types.d.ts +16 -0
  303. package/hydrate/index.js +6795 -2907
  304. package/package.json +3 -3
  305. package/dist/cjs/helpers-00b08718.js.map +0 -1
  306. package/dist/core/p-0f0509ee.entry.js.map +0 -1
  307. package/dist/core/p-24945ee5.entry.js.map +0 -1
  308. package/dist/core/p-28fb7cca.entry.js.map +0 -1
  309. package/dist/core/p-2aad58b6.js +0 -2
  310. package/dist/core/p-2aad58b6.js.map +0 -1
  311. package/dist/core/p-38314d45.entry.js +0 -2
  312. package/dist/core/p-38314d45.entry.js.map +0 -1
  313. package/dist/core/p-5e94fae8.entry.js.map +0 -1
  314. package/dist/core/p-6de46cb7.entry.js.map +0 -1
  315. package/dist/core/p-93c5b849.entry.js +0 -2
  316. package/dist/core/p-9fdd7d73.entry.js +0 -2
  317. package/dist/core/p-9fdd7d73.entry.js.map +0 -1
  318. package/dist/core/p-a3ab9f4c.entry.js.map +0 -1
  319. package/dist/core/p-c9b11488.entry.js +0 -2
  320. package/dist/core/p-c9b11488.entry.js.map +0 -1
  321. package/dist/core/p-f163a406.entry.js +0 -2
  322. package/dist/core/p-f163a406.entry.js.map +0 -1
  323. package/dist/esm/helpers-d06dc4ed.js.map +0 -1
  324. /package/dist/core/{p-9ce5f082.entry.js.map → p-045359e1.entry.js.map} +0 -0
  325. /package/dist/core/{p-7276339a.entry.js.map → p-10fb4c46.entry.js.map} +0 -0
  326. /package/dist/core/{p-d9342548.entry.js.map → p-169bfa51.entry.js.map} +0 -0
  327. /package/dist/core/{p-5746577f.entry.js.map → p-1ca332ca.entry.js.map} +0 -0
  328. /package/dist/core/{p-c345a874.entry.js.map → p-204ace96.entry.js.map} +0 -0
  329. /package/dist/core/{p-f436630b.entry.js.map → p-2eac7dcc.entry.js.map} +0 -0
  330. /package/dist/core/{p-b43bd4f3.entry.js.map → p-3803a5b5.entry.js.map} +0 -0
  331. /package/dist/core/{p-ca262cdc.entry.js.map → p-4753bac8.entry.js.map} +0 -0
  332. /package/dist/core/{p-3d2fcf84.entry.js.map → p-4baa0916.entry.js.map} +0 -0
  333. /package/dist/core/{p-79b71c18.entry.js.map → p-4f413fc0.entry.js.map} +0 -0
  334. /package/dist/core/{p-051b8266.entry.js.map → p-595be57d.entry.js.map} +0 -0
  335. /package/dist/core/{p-434780c8.entry.js.map → p-5ae93c16.entry.js.map} +0 -0
  336. /package/dist/core/{p-ff1d23cd.entry.js.map → p-5e0c830b.entry.js.map} +0 -0
  337. /package/dist/core/{p-c263542a.entry.js.map → p-6933f8e9.entry.js.map} +0 -0
  338. /package/dist/core/{p-32f18701.entry.js.map → p-6c3044b6.entry.js.map} +0 -0
  339. /package/dist/core/{p-da4f0a58.entry.js.map → p-73be1251.entry.js.map} +0 -0
  340. /package/dist/core/{p-d49660e0.entry.js.map → p-75dac3d1.entry.js.map} +0 -0
  341. /package/dist/core/{p-88971cea.entry.js.map → p-7ef8d616.entry.js.map} +0 -0
  342. /package/dist/core/{p-9fd84c69.entry.js.map → p-81ddc39d.entry.js.map} +0 -0
  343. /package/dist/core/{p-fbb1fba0.entry.js.map → p-869954a2.entry.js.map} +0 -0
  344. /package/dist/core/{p-3c859b9e.entry.js.map → p-88d54b72.entry.js.map} +0 -0
  345. /package/dist/core/{p-d78fd9f3.entry.js.map → p-917c5721.entry.js.map} +0 -0
  346. /package/dist/core/{p-2094c844.entry.js.map → p-942282cd.entry.js.map} +0 -0
  347. /package/dist/core/{p-966ab920.entry.js.map → p-a0f8efb2.entry.js.map} +0 -0
  348. /package/dist/core/{p-7632acc6.entry.js.map → p-a31031a5.entry.js.map} +0 -0
  349. /package/dist/core/{p-a7d52bd1.entry.js.map → p-a434c3d4.entry.js.map} +0 -0
  350. /package/dist/core/{p-95d3cd52.entry.js.map → p-a43c12cd.entry.js.map} +0 -0
  351. /package/dist/core/{p-aafb2c79.entry.js.map → p-a50c3b9e.entry.js.map} +0 -0
  352. /package/dist/core/{p-7dfd61bb.entry.js.map → p-b82dcc29.entry.js.map} +0 -0
  353. /package/dist/core/{p-337b6e05.entry.js.map → p-ba86928c.entry.js.map} +0 -0
  354. /package/dist/core/{p-f827e4c0.entry.js.map → p-c125b65a.entry.js.map} +0 -0
  355. /package/dist/core/{p-27aa95e7.entry.js.map → p-c34848da.entry.js.map} +0 -0
  356. /package/dist/core/{p-3b9f3a07.entry.js.map → p-d8469ac0.entry.js.map} +0 -0
  357. /package/dist/core/{p-a2f366c7.entry.js.map → p-db9c03c0.entry.js.map} +0 -0
  358. /package/dist/core/{p-116b18fe.entry.js.map → p-e3997d60.entry.js.map} +0 -0
  359. /package/dist/core/{p-0d181ac8.entry.js.map → p-e834344e.entry.js.map} +0 -0
  360. /package/dist/core/{p-7b849cb5.entry.js.map → p-f6888309.entry.js.map} +0 -0
  361. /package/dist/core/{p-4df42c76.entry.js.map → p-f7a14c01.entry.js.map} +0 -0
@@ -1,21 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-93509377.js';
2
-
3
- // Build does not recognise this function being passed via @ukic/web-components so it has been added locally
4
- const checkResizeObserver = (callbackFn) => {
5
- if (typeof window !== "undefined" &&
6
- typeof window.ResizeObserver !== "undefined") {
7
- callbackFn();
8
- }
9
- };
10
- const getCssProperty = (cssVar) => getComputedStyle(document.documentElement).getPropertyValue(cssVar);
11
- ({
12
- XS: Number(getCssProperty("--ic-breakpoint-xs").replace("px", "")),
13
- S: Number(getCssProperty("--ic-breakpoint-sm").replace("px", "")),
14
- M: Number(getCssProperty("--ic-breakpoint-md").replace("px", "")),
15
- L: Number(getCssProperty("--ic-breakpoint-lg").replace("px", "")),
16
- XL: Number(getCssProperty("--ic-breakpoint-xl").replace("px", "")),
17
- UNDEFINED: 1200,
18
- });
2
+ import { l as checkResizeObserver } from './helpers-5271897c.js';
19
3
 
20
4
  const icPaginationBarCss = ":host(){display:block}.pagination-bar{height:3.5rem;display:flex;align-items:center;justify-content:flex-end;gap:var(--ic-space-xl);padding:var(--ic-space-xs) var(--ic-space-md);box-sizing:border-box}.pagination-bar-left{justify-content:flex-start}.item-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-bar-space-between .item-controls{margin-right:auto}.items-per-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.items-per-page-input{--input-width:5rem}.pagination-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-controls-wrap{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-space-between .pagination-controls{margin-left:auto}.go-to-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.go-to-page-input{--input-width:var(--ic-space-xl)}.go-to-page-button{--min-width:var(--ic-space-xl)}.pagination-text-default,.pagination-text-dark,.pagination-text-light{white-space:nowrap}.pagination-text-light{color:var(--ic-color-white-text)}@media screen and (max-width: 768px){.pagination-bar{flex-direction:column;align-items:flex-end;height:-moz-fit-content;height:fit-content;gap:var(--ic-space-xs)}.pagination-bar-left{align-items:flex-start}}@media screen and (max-width: 320px){.item-controls,.pagination-controls{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-left .item-controls,.pagination-bar-left .pagination-controls,.pagination-bar-space-between .item-controls,.pagination-bar-space-between .pagination-controls{align-items:flex-start}}";
21
5
 
@@ -1 +1 @@
1
- {"file":"ic-pagination-bar.entry.js","mappings":"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","names":[],"sources":["src/utils/helpers.ts","src/components/ic-pagination-bar/ic-pagination-bar.css?tag=ic-pagination-bar&encapsulation=shadow","src/components/ic-pagination-bar/ic-pagination-bar.tsx"],"sourcesContent":["import { IcCallbackFunctionNoReturn } from \"@ukic/web-components\";\n\n// Build does not recognise this function being passed via @ukic/web-components so it has been added locally\nexport const checkResizeObserver = (\n callbackFn: IcCallbackFunctionNoReturn\n): void => {\n if (\n typeof window !== \"undefined\" &&\n typeof window.ResizeObserver !== \"undefined\"\n ) {\n callbackFn();\n }\n};\n\nexport const getCssProperty = (cssVar: string): string =>\n getComputedStyle(document.documentElement).getPropertyValue(cssVar);\n\nexport const DEVICE_SIZES = {\n XS: Number(getCssProperty(\"--ic-breakpoint-xs\").replace(\"px\", \"\")), // 0\n S: Number(getCssProperty(\"--ic-breakpoint-sm\").replace(\"px\", \"\")), // 576\n M: Number(getCssProperty(\"--ic-breakpoint-md\").replace(\"px\", \"\")), // 768\n L: Number(getCssProperty(\"--ic-breakpoint-lg\").replace(\"px\", \"\")), // 992\n XL: Number(getCssProperty(\"--ic-breakpoint-xl\").replace(\"px\", \"\")), // 1200\n UNDEFINED: 1200,\n};\n",":host() {\n display: block;\n}\n\n.pagination-bar {\n height: 3.5rem;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--ic-space-xl);\n padding: var(--ic-space-xs) var(--ic-space-md);\n box-sizing: border-box;\n}\n\n.pagination-bar-left {\n justify-content: flex-start;\n}\n\n.item-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-bar-space-between .item-controls {\n margin-right: auto;\n}\n\n.items-per-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.items-per-page-input {\n --input-width: 5rem;\n}\n\n.pagination-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-controls-wrap {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n}\n\n.pagination-bar-space-between .pagination-controls {\n margin-left: auto;\n}\n\n.go-to-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.go-to-page-input {\n --input-width: var(--ic-space-xl);\n}\n\n.go-to-page-button {\n --min-width: var(--ic-space-xl);\n}\n\n.pagination-text-default,\n.pagination-text-dark,\n.pagination-text-light {\n white-space: nowrap;\n}\n\n.pagination-text-light {\n color: var(--ic-color-white-text);\n}\n\n@media screen and (max-width: 768px) {\n .pagination-bar {\n flex-direction: column;\n align-items: flex-end;\n height: fit-content;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left {\n align-items: flex-start;\n }\n}\n\n@media screen and (max-width: 320px) {\n .item-controls,\n .pagination-controls {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left .item-controls,\n .pagination-bar-left .pagination-controls,\n .pagination-bar-space-between .item-controls,\n .pagination-bar-space-between .pagination-controls {\n align-items: flex-start;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n h,\n} from \"@stencil/core\";\nimport { IcThemeForeground } from \"@ukic/web-components/dist/types/interface\";\nimport { checkResizeObserver } from \"../../utils/helpers\";\nimport {\n IcPaginationAlignmentOptions,\n IcPaginationControlTypes,\n IcPaginationTypes,\n} from \"../ic-pagination/ic-pagination.types\";\n\n@Component({\n tag: \"ic-pagination-bar\",\n styleUrl: \"ic-pagination-bar.css\",\n shadow: true,\n})\nexport class PaginationBar {\n private PAGINATION = \"ic-pagination\";\n private TEXT_FIELD = \"ic-text-field\";\n private TOOLTIP = \"ic-tooltip\";\n private PAGE_INPUT_FIELD_ID = \"go-to-page-input\";\n\n private INVALID_PAGE_ERROR = \"Please enter a valid page\";\n private NAN_ERROR = \"Please enter a number\";\n\n private resizeObserver: ResizeObserver = null;\n private paginationBarEl: HTMLElement;\n\n @Element() el: HTMLIcPaginationBarElement;\n\n @State() currentPage: number = 1;\n\n @State() inputError: string = \"Please enter a valid page\";\n\n @State() itemsPerPage: string;\n\n @State() lowerBound: number = 1;\n\n @State() paginationWidth: number;\n\n @State() paginationWrapped: boolean = false;\n\n @State() totalPages: number;\n\n @State() upperBound: number;\n\n /**\n * Sets the alignment of the items in the pagination bar.\n */\n @Prop() alignment?: IcPaginationAlignmentOptions = \"right\";\n\n /**\n * Sets the styling for the items in the pagination bar.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n /**\n * The label which will be used in place of 'items' if paginationType is data. Should be capitalised.\n */\n @Prop() itemLabel?: string = \"Item\";\n\n /**\n * The options which will be displayed for 'items per page' select input. Set a maximum of 4 options including a required 'All' option with value equal to total number of items.\n */\n @Prop({ mutable: true }) itemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n /**\n * Whether the displayed pagination is simple or complex.\n */\n @Prop() paginationControl?: IcPaginationControlTypes = \"simple\";\n\n /**\n * Whether total number of items and current item range or total number of pages and current page is displayed.\n */\n @Prop() paginationType?: IcPaginationTypes = \"page\";\n\n /**\n * The label which will be used in place of 'Page' if paginationType is page. Should be capitalised.\n */\n @Prop() pageLabel?: string = \"Page\";\n\n /**\n * If `true`, the 'go to page' control should be displayed.\n */\n @Prop() showGoToPageControl?: boolean = false;\n\n /**\n * If `true`, the number of total items and current item range or number of total pages and current page should be displayed.\n */\n @Prop() showItemsPerPage?: boolean = true;\n\n /**\n * If `true`, the select input to control 'items per page' should be displayed.\n */\n @Prop() showItemsPerPageControl?: boolean = false;\n\n /**\n * Total number of items to be displayed across all pages.\n */\n @Prop() totalItems!: number;\n\n /**\n * Emitted when a page is navigated to via the 'go to' input.\n */\n @Event() icPageChange: EventEmitter<{ value: number }>;\n\n /**\n * Emitted when the items per page option is changed.\n */\n @Event() icItemsPerPageChange: EventEmitter<{ value: number }>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad(): void {\n if (\n this.itemsPerPageOptions === undefined ||\n this.itemsPerPageOptions === null\n ) {\n this.setDefaultItemsPerPageOptions();\n }\n this.trimItemsPerPageOptions();\n this.setDefaultItemsPerPage();\n this.setNumberPages();\n this.setUpperBound();\n }\n\n componentDidLoad(): void {\n this.paginationWidth = this.paginationBarEl.clientWidth;\n checkResizeObserver(this.runResizeObserver);\n this.setGoToPageInputStyles();\n this.paginationShouldWrap();\n }\n\n @Listen(\"icPageChange\")\n pageChangeHandler(ev: CustomEvent): void {\n const page = ev.detail.value;\n this.changePage(page);\n }\n\n private changeItemsPerPage = () => {\n const select = this.el.shadowRoot.querySelector(\"ic-select\");\n const value = select.value;\n this.itemsPerPage = value;\n this.setNumberPages();\n this.setUpperBound();\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n if (this.currentPage > this.totalPages) {\n pagination.setCurrentPage(this.totalPages);\n this.currentPage = this.totalPages;\n }\n this.icItemsPerPageChange.emit({ value: Number(this.itemsPerPage) });\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n private changePage = (page: number) => {\n this.currentPage = page;\n this.lowerBound =\n page !== 1 ? (page - 1) * Number(this.itemsPerPage) + 1 : page;\n this.setUpperBound();\n };\n\n private goToPage = () => {\n const input = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const page = Number(input.value);\n const tooltip = this.el.shadowRoot.querySelector(\"ic-tooltip\");\n if (page <= this.totalPages && page > 0) {\n this.changePage(page);\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n pagination.setCurrentPage(page);\n this.currentPage = page;\n input.value = \"\";\n this.icPageChange.emit({ value: page });\n tooltip.displayTooltip(false, false);\n input.validationStatus = \"\";\n } else {\n this.inputError = this.INVALID_PAGE_ERROR;\n input.validationStatus = \"error\";\n input.setFocus();\n }\n };\n\n private handleBlur = () => {\n const textField = this.el.shadowRoot?.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const tooltip = this.el.shadowRoot?.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n if (\n (Number(textField.value) <= this.totalPages &&\n Number(textField.value) > 0) ||\n textField.value === \"\"\n ) {\n textField.validationStatus = \"\";\n }\n tooltip.displayTooltip(false, false);\n };\n\n private handleFocus = () => {\n const textField = this.el.shadowRoot?.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const tooltip = this.el.shadowRoot?.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n if (textField.validationStatus === \"error\") {\n tooltip.displayTooltip(true, true);\n }\n };\n\n private handleInputChange = () => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const inputValue = parseInt(textField.value);\n\n if (inputValue > this.totalPages || inputValue <= 0) {\n this.inputError = this.INVALID_PAGE_ERROR;\n tooltip.displayTooltip(true, true);\n textField.validationStatus = \"error\";\n textField.focus();\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n\n if (ev.key === \"Enter\") {\n if (textField.validationStatus === \"error\") {\n tooltip.displayTooltip(true, true);\n } else {\n this.goToPage();\n }\n } else {\n tooltip.displayTooltip(false, false);\n textField.validationStatus = \"\";\n }\n };\n\n private handleKeyUp = (ev: KeyboardEvent) => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const inputValue = parseInt(textField.value);\n\n if (\n Number.isNaN(inputValue) &&\n ev.key !== \"Backspace\" &&\n ev.key !== \"Enter\" &&\n ev.key !== \"Tab\" &&\n ev.key !== \"Shift\"\n ) {\n this.inputError = this.NAN_ERROR;\n tooltip.displayTooltip(true, false);\n textField.validationStatus = \"error\";\n }\n };\n\n private paginationShouldWrap = () => {\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n if (this.paginationControl === \"simple\") {\n if (pagination.clientHeight > 63) {\n this.paginationWrapped = true;\n } else {\n this.paginationWrapped = false;\n }\n }\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (\n currSize - this.paginationWidth > 50 ||\n currSize - this.paginationWidth < -50\n ) {\n this.paginationWidth = currSize;\n this.paginationShouldWrap();\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = this.paginationBarEl.clientWidth;\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.paginationBarEl);\n };\n\n private setDefaultItemsPerPage = () => {\n this.itemsPerPage = this.itemsPerPageOptions[0].value;\n };\n\n private setDefaultItemsPerPageOptions = () => {\n this.itemsPerPageOptions =\n this.totalItems <= 100\n ? [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"All\", value: String(this.totalItems) },\n ]\n : [\n { label: \"25\", value: \"25\" },\n { label: \"100\", value: \"100\" },\n { label: \"1000\", value: \"1000\" },\n { label: \"All\", value: String(this.totalItems) },\n ];\n };\n\n private setGoToPageInputStyles = () => {\n const textField = this.el.shadowRoot?.querySelector(\n `.${this.PAGE_INPUT_FIELD_ID}`\n );\n if (textField !== undefined) {\n const input = textField?.shadowRoot?.querySelector(\"input\");\n if (input !== undefined) {\n input.style.textAlign = \"center\";\n input.style.padding = \"0\";\n }\n }\n };\n\n private setNumberPages = () => {\n this.totalPages = Math.ceil(this.totalItems / Number(this.itemsPerPage));\n };\n\n private setUpperBound = () => {\n this.upperBound = Math.min(\n this.lowerBound + Number(this.itemsPerPage) - 1,\n this.totalItems\n );\n };\n\n private trimItemsPerPageOptions = () => {\n this.itemsPerPageOptions = this.itemsPerPageOptions.slice(0, 3);\n this.itemsPerPageOptions.push({\n label: \"All\",\n value: String(this.totalItems),\n });\n\n for (let i = 0; i < this.itemsPerPageOptions.length - 1; i++) {\n if (this.totalItems <= Number(this.itemsPerPageOptions[i].value)) {\n this.itemsPerPageOptions.splice(\n i,\n this.itemsPerPageOptions.length - (i + 1)\n );\n }\n }\n };\n\n render() {\n const {\n appearance,\n alignment,\n itemsPerPageOptions,\n PAGE_INPUT_FIELD_ID,\n paginationControl,\n paginationType,\n showItemsPerPage,\n showItemsPerPageControl,\n showGoToPageControl,\n } = this;\n\n const focusElFromLabel = (el: \"ic-select\" | \"ic-text-field\") => {\n this.paginationBarEl.querySelector(el)?.setFocus();\n };\n\n return (\n <div\n class={{\n [\"pagination-bar\"]: true,\n [`pagination-bar-${alignment}`]: true,\n }}\n ref={(el) => (this.paginationBarEl = el)}\n >\n {(showItemsPerPage || showItemsPerPageControl) && (\n <div class=\"item-controls\">\n {showItemsPerPageControl && (\n <div class=\"items-per-page-holder\">\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"items-per-page-control-label\"]: true,\n }}\n variant=\"label\"\n onClick={() => focusElFromLabel(\"ic-select\")}\n >\n {this.itemLabel}s per {this.pageLabel.toLowerCase()}\n </ic-typography>\n <ic-select\n small\n label=\"items-per-page-input\"\n class=\"items-per-page-input\"\n hideLabel\n options={itemsPerPageOptions}\n value={this.itemsPerPage}\n onIcChange={() => this.changeItemsPerPage()}\n ></ic-select>\n </div>\n )}\n {showItemsPerPage && paginationType === \"data\" ? (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"item-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.lowerBound} - {this.upperBound} of {this.totalItems}{\" \"}\n {this.itemLabel.toLowerCase()}\n {this.totalItems > 1 ? \"s\" : \"\"}\n </ic-typography>\n ) : (\n showItemsPerPage && (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"page-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.pageLabel} {this.currentPage} of {this.totalPages}\n </ic-typography>\n )\n )}\n </div>\n )}\n <div\n class={{\n [\"pagination-controls\"]: true,\n [\"pagination-controls-wrap\"]: this.paginationWrapped,\n }}\n >\n <div class=\"pagination-holder\">\n <ic-pagination\n appearance={appearance}\n type={paginationControl}\n pages={this.totalPages}\n ></ic-pagination>\n </div>\n {showGoToPageControl && (\n <div class=\"go-to-page-holder\">\n <ic-typography\n class={{ [`pagination-text-${appearance}`]: true }}\n variant=\"label\"\n onClick={() => focusElFromLabel(\"ic-text-field\")}\n >\n Go to {this.pageLabel.toLowerCase()}\n </ic-typography>\n <ic-tooltip\n label={this.inputError}\n target={`#${PAGE_INPUT_FIELD_ID}`}\n disableHover\n disableClick\n >\n <ic-text-field\n type=\"number\"\n size=\"small\"\n label={PAGE_INPUT_FIELD_ID}\n class={PAGE_INPUT_FIELD_ID}\n id={PAGE_INPUT_FIELD_ID}\n hideLabel\n onKeyDown={(ev: KeyboardEvent) => this.handleKeydown(ev)}\n onKeyUp={(ev: KeyboardEvent) => this.handleKeyUp(ev)}\n onInput={() => this.handleInputChange()}\n max={this.totalPages}\n min=\"1\"\n validationInlineInternal\n onBlur={() => this.handleBlur()}\n onFocus={() => this.handleFocus()}\n ></ic-text-field>\n </ic-tooltip>\n <ic-button\n appearance={appearance}\n variant=\"secondary\"\n onClick={() => this.goToPage()}\n size=\"small\"\n class=\"go-to-page-button\"\n >\n Go\n </ic-button>\n </div>\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-pagination-bar.entry.js","mappings":"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","names":[],"sources":["src/components/ic-pagination-bar/ic-pagination-bar.css?tag=ic-pagination-bar&encapsulation=shadow","src/components/ic-pagination-bar/ic-pagination-bar.tsx"],"sourcesContent":[":host() {\n display: block;\n}\n\n.pagination-bar {\n height: 3.5rem;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--ic-space-xl);\n padding: var(--ic-space-xs) var(--ic-space-md);\n box-sizing: border-box;\n}\n\n.pagination-bar-left {\n justify-content: flex-start;\n}\n\n.item-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-bar-space-between .item-controls {\n margin-right: auto;\n}\n\n.items-per-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.items-per-page-input {\n --input-width: 5rem;\n}\n\n.pagination-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-controls-wrap {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n}\n\n.pagination-bar-space-between .pagination-controls {\n margin-left: auto;\n}\n\n.go-to-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.go-to-page-input {\n --input-width: var(--ic-space-xl);\n}\n\n.go-to-page-button {\n --min-width: var(--ic-space-xl);\n}\n\n.pagination-text-default,\n.pagination-text-dark,\n.pagination-text-light {\n white-space: nowrap;\n}\n\n.pagination-text-light {\n color: var(--ic-color-white-text);\n}\n\n@media screen and (max-width: 768px) {\n .pagination-bar {\n flex-direction: column;\n align-items: flex-end;\n height: fit-content;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left {\n align-items: flex-start;\n }\n}\n\n@media screen and (max-width: 320px) {\n .item-controls,\n .pagination-controls {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left .item-controls,\n .pagination-bar-left .pagination-controls,\n .pagination-bar-space-between .item-controls,\n .pagination-bar-space-between .pagination-controls {\n align-items: flex-start;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n h,\n} from \"@stencil/core\";\nimport { IcThemeForeground } from \"@ukic/web-components/dist/types/interface\";\nimport { checkResizeObserver } from \"../../utils/helpers\";\nimport {\n IcPaginationAlignmentOptions,\n IcPaginationControlTypes,\n IcPaginationTypes,\n} from \"../ic-pagination/ic-pagination.types\";\n\n@Component({\n tag: \"ic-pagination-bar\",\n styleUrl: \"ic-pagination-bar.css\",\n shadow: true,\n})\nexport class PaginationBar {\n private PAGINATION = \"ic-pagination\";\n private TEXT_FIELD = \"ic-text-field\";\n private TOOLTIP = \"ic-tooltip\";\n private PAGE_INPUT_FIELD_ID = \"go-to-page-input\";\n\n private INVALID_PAGE_ERROR = \"Please enter a valid page\";\n private NAN_ERROR = \"Please enter a number\";\n\n private resizeObserver: ResizeObserver = null;\n private paginationBarEl: HTMLElement;\n\n @Element() el: HTMLIcPaginationBarElement;\n\n @State() currentPage: number = 1;\n\n @State() inputError: string = \"Please enter a valid page\";\n\n @State() itemsPerPage: string;\n\n @State() lowerBound: number = 1;\n\n @State() paginationWidth: number;\n\n @State() paginationWrapped: boolean = false;\n\n @State() totalPages: number;\n\n @State() upperBound: number;\n\n /**\n * Sets the alignment of the items in the pagination bar.\n */\n @Prop() alignment?: IcPaginationAlignmentOptions = \"right\";\n\n /**\n * Sets the styling for the items in the pagination bar.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n /**\n * The label which will be used in place of 'items' if paginationType is data. Should be capitalised.\n */\n @Prop() itemLabel?: string = \"Item\";\n\n /**\n * The options which will be displayed for 'items per page' select input. Set a maximum of 4 options including a required 'All' option with value equal to total number of items.\n */\n @Prop({ mutable: true }) itemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n /**\n * Whether the displayed pagination is simple or complex.\n */\n @Prop() paginationControl?: IcPaginationControlTypes = \"simple\";\n\n /**\n * Whether total number of items and current item range or total number of pages and current page is displayed.\n */\n @Prop() paginationType?: IcPaginationTypes = \"page\";\n\n /**\n * The label which will be used in place of 'Page' if paginationType is page. Should be capitalised.\n */\n @Prop() pageLabel?: string = \"Page\";\n\n /**\n * If `true`, the 'go to page' control should be displayed.\n */\n @Prop() showGoToPageControl?: boolean = false;\n\n /**\n * If `true`, the number of total items and current item range or number of total pages and current page should be displayed.\n */\n @Prop() showItemsPerPage?: boolean = true;\n\n /**\n * If `true`, the select input to control 'items per page' should be displayed.\n */\n @Prop() showItemsPerPageControl?: boolean = false;\n\n /**\n * Total number of items to be displayed across all pages.\n */\n @Prop() totalItems!: number;\n\n /**\n * Emitted when a page is navigated to via the 'go to' input.\n */\n @Event() icPageChange: EventEmitter<{ value: number }>;\n\n /**\n * Emitted when the items per page option is changed.\n */\n @Event() icItemsPerPageChange: EventEmitter<{ value: number }>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad(): void {\n if (\n this.itemsPerPageOptions === undefined ||\n this.itemsPerPageOptions === null\n ) {\n this.setDefaultItemsPerPageOptions();\n }\n this.trimItemsPerPageOptions();\n this.setDefaultItemsPerPage();\n this.setNumberPages();\n this.setUpperBound();\n }\n\n componentDidLoad(): void {\n this.paginationWidth = this.paginationBarEl.clientWidth;\n checkResizeObserver(this.runResizeObserver);\n this.setGoToPageInputStyles();\n this.paginationShouldWrap();\n }\n\n @Listen(\"icPageChange\")\n pageChangeHandler(ev: CustomEvent): void {\n const page = ev.detail.value;\n this.changePage(page);\n }\n\n private changeItemsPerPage = () => {\n const select = this.el.shadowRoot.querySelector(\"ic-select\");\n const value = select.value;\n this.itemsPerPage = value;\n this.setNumberPages();\n this.setUpperBound();\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n if (this.currentPage > this.totalPages) {\n pagination.setCurrentPage(this.totalPages);\n this.currentPage = this.totalPages;\n }\n this.icItemsPerPageChange.emit({ value: Number(this.itemsPerPage) });\n this.icPageChange.emit({ value: this.currentPage });\n };\n\n private changePage = (page: number) => {\n this.currentPage = page;\n this.lowerBound =\n page !== 1 ? (page - 1) * Number(this.itemsPerPage) + 1 : page;\n this.setUpperBound();\n };\n\n private goToPage = () => {\n const input = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const page = Number(input.value);\n const tooltip = this.el.shadowRoot.querySelector(\"ic-tooltip\");\n if (page <= this.totalPages && page > 0) {\n this.changePage(page);\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n pagination.setCurrentPage(page);\n this.currentPage = page;\n input.value = \"\";\n this.icPageChange.emit({ value: page });\n tooltip.displayTooltip(false, false);\n input.validationStatus = \"\";\n } else {\n this.inputError = this.INVALID_PAGE_ERROR;\n input.validationStatus = \"error\";\n input.setFocus();\n }\n };\n\n private handleBlur = () => {\n const textField = this.el.shadowRoot?.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const tooltip = this.el.shadowRoot?.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n if (\n (Number(textField.value) <= this.totalPages &&\n Number(textField.value) > 0) ||\n textField.value === \"\"\n ) {\n textField.validationStatus = \"\";\n }\n tooltip.displayTooltip(false, false);\n };\n\n private handleFocus = () => {\n const textField = this.el.shadowRoot?.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const tooltip = this.el.shadowRoot?.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n if (textField.validationStatus === \"error\") {\n tooltip.displayTooltip(true, true);\n }\n };\n\n private handleInputChange = () => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const inputValue = parseInt(textField.value);\n\n if (inputValue > this.totalPages || inputValue <= 0) {\n this.inputError = this.INVALID_PAGE_ERROR;\n tooltip.displayTooltip(true, true);\n textField.validationStatus = \"error\";\n textField.focus();\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n\n if (ev.key === \"Enter\") {\n if (textField.validationStatus === \"error\") {\n tooltip.displayTooltip(true, true);\n } else {\n this.goToPage();\n }\n } else {\n tooltip.displayTooltip(false, false);\n textField.validationStatus = \"\";\n }\n };\n\n private handleKeyUp = (ev: KeyboardEvent) => {\n const tooltip = this.el.shadowRoot.querySelector(\n this.TOOLTIP\n ) as HTMLIcTooltipElement;\n const textField = this.el.shadowRoot.querySelector(\n this.TEXT_FIELD\n ) as HTMLIcTextFieldElement;\n const inputValue = parseInt(textField.value);\n\n if (\n Number.isNaN(inputValue) &&\n ev.key !== \"Backspace\" &&\n ev.key !== \"Enter\" &&\n ev.key !== \"Tab\" &&\n ev.key !== \"Shift\"\n ) {\n this.inputError = this.NAN_ERROR;\n tooltip.displayTooltip(true, false);\n textField.validationStatus = \"error\";\n }\n };\n\n private paginationShouldWrap = () => {\n const pagination = this.el.shadowRoot.querySelector(\n this.PAGINATION\n ) as HTMLIcPaginationElement;\n if (this.paginationControl === \"simple\") {\n if (pagination.clientHeight > 63) {\n this.paginationWrapped = true;\n } else {\n this.paginationWrapped = false;\n }\n }\n };\n\n private resizeObserverCallback = (currSize: number) => {\n if (\n currSize - this.paginationWidth > 50 ||\n currSize - this.paginationWidth < -50\n ) {\n this.paginationWidth = currSize;\n this.paginationShouldWrap();\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = this.paginationBarEl.clientWidth;\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.paginationBarEl);\n };\n\n private setDefaultItemsPerPage = () => {\n this.itemsPerPage = this.itemsPerPageOptions[0].value;\n };\n\n private setDefaultItemsPerPageOptions = () => {\n this.itemsPerPageOptions =\n this.totalItems <= 100\n ? [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n { label: \"All\", value: String(this.totalItems) },\n ]\n : [\n { label: \"25\", value: \"25\" },\n { label: \"100\", value: \"100\" },\n { label: \"1000\", value: \"1000\" },\n { label: \"All\", value: String(this.totalItems) },\n ];\n };\n\n private setGoToPageInputStyles = () => {\n const textField = this.el.shadowRoot?.querySelector(\n `.${this.PAGE_INPUT_FIELD_ID}`\n );\n if (textField !== undefined) {\n const input = textField?.shadowRoot?.querySelector(\"input\");\n if (input !== undefined) {\n input.style.textAlign = \"center\";\n input.style.padding = \"0\";\n }\n }\n };\n\n private setNumberPages = () => {\n this.totalPages = Math.ceil(this.totalItems / Number(this.itemsPerPage));\n };\n\n private setUpperBound = () => {\n this.upperBound = Math.min(\n this.lowerBound + Number(this.itemsPerPage) - 1,\n this.totalItems\n );\n };\n\n private trimItemsPerPageOptions = () => {\n this.itemsPerPageOptions = this.itemsPerPageOptions.slice(0, 3);\n this.itemsPerPageOptions.push({\n label: \"All\",\n value: String(this.totalItems),\n });\n\n for (let i = 0; i < this.itemsPerPageOptions.length - 1; i++) {\n if (this.totalItems <= Number(this.itemsPerPageOptions[i].value)) {\n this.itemsPerPageOptions.splice(\n i,\n this.itemsPerPageOptions.length - (i + 1)\n );\n }\n }\n };\n\n render() {\n const {\n appearance,\n alignment,\n itemsPerPageOptions,\n PAGE_INPUT_FIELD_ID,\n paginationControl,\n paginationType,\n showItemsPerPage,\n showItemsPerPageControl,\n showGoToPageControl,\n } = this;\n\n const focusElFromLabel = (el: \"ic-select\" | \"ic-text-field\") => {\n this.paginationBarEl.querySelector(el)?.setFocus();\n };\n\n return (\n <div\n class={{\n [\"pagination-bar\"]: true,\n [`pagination-bar-${alignment}`]: true,\n }}\n ref={(el) => (this.paginationBarEl = el)}\n >\n {(showItemsPerPage || showItemsPerPageControl) && (\n <div class=\"item-controls\">\n {showItemsPerPageControl && (\n <div class=\"items-per-page-holder\">\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"items-per-page-control-label\"]: true,\n }}\n variant=\"label\"\n onClick={() => focusElFromLabel(\"ic-select\")}\n >\n {this.itemLabel}s per {this.pageLabel.toLowerCase()}\n </ic-typography>\n <ic-select\n small\n label=\"items-per-page-input\"\n class=\"items-per-page-input\"\n hideLabel\n options={itemsPerPageOptions}\n value={this.itemsPerPage}\n onIcChange={() => this.changeItemsPerPage()}\n ></ic-select>\n </div>\n )}\n {showItemsPerPage && paginationType === \"data\" ? (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"item-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.lowerBound} - {this.upperBound} of {this.totalItems}{\" \"}\n {this.itemLabel.toLowerCase()}\n {this.totalItems > 1 ? \"s\" : \"\"}\n </ic-typography>\n ) : (\n showItemsPerPage && (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"page-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.pageLabel} {this.currentPage} of {this.totalPages}\n </ic-typography>\n )\n )}\n </div>\n )}\n <div\n class={{\n [\"pagination-controls\"]: true,\n [\"pagination-controls-wrap\"]: this.paginationWrapped,\n }}\n >\n <div class=\"pagination-holder\">\n <ic-pagination\n appearance={appearance}\n type={paginationControl}\n pages={this.totalPages}\n ></ic-pagination>\n </div>\n {showGoToPageControl && (\n <div class=\"go-to-page-holder\">\n <ic-typography\n class={{ [`pagination-text-${appearance}`]: true }}\n variant=\"label\"\n onClick={() => focusElFromLabel(\"ic-text-field\")}\n >\n Go to {this.pageLabel.toLowerCase()}\n </ic-typography>\n <ic-tooltip\n label={this.inputError}\n target={`#${PAGE_INPUT_FIELD_ID}`}\n disableHover\n disableClick\n >\n <ic-text-field\n type=\"number\"\n size=\"small\"\n label={PAGE_INPUT_FIELD_ID}\n class={PAGE_INPUT_FIELD_ID}\n id={PAGE_INPUT_FIELD_ID}\n hideLabel\n onKeyDown={(ev: KeyboardEvent) => this.handleKeydown(ev)}\n onKeyUp={(ev: KeyboardEvent) => this.handleKeyUp(ev)}\n onInput={() => this.handleInputChange()}\n max={this.totalPages}\n min=\"1\"\n validationInlineInternal\n onBlur={() => this.handleBlur()}\n onFocus={() => this.handleFocus()}\n ></ic-text-field>\n </ic-tooltip>\n <ic-button\n appearance={appearance}\n variant=\"secondary\"\n onClick={() => this.goToPage()}\n size=\"small\"\n class=\"go-to-page-button\"\n >\n Go\n </ic-button>\n </div>\n )}\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-93509377.js';
2
- import { j as removeDisabledFalse, a as onComponentRequiredPropUndefined, E as getLabelFromValue, B as getFilteredMenuOptions, m as removeFormResetListener, w as inheritAttributes, l as addFormResetListener, n as renderHiddenInput, q as getInputDescribedByText, s as hasValidationStatus, L as isMobileOrTablet, x as IC_INHERITED_ARIA, M as debounceEvent, i as isSlotUsed, F as isEmptyString } from './helpers-d06dc4ed.js';
2
+ import { j as removeDisabledFalse, a as onComponentRequiredPropUndefined, E as getLabelFromValue, B as getFilteredMenuOptions, m as removeFormResetListener, w as inheritAttributes, l as addFormResetListener, n as renderHiddenInput, q as getInputDescribedByText, s as hasValidationStatus, L as isMobileOrTablet, x as IC_INHERITED_ARIA, M as debounceEvent, i as isSlotUsed, F as isEmptyString } from './helpers-12b4266a.js';
3
3
  import { I as IcThemeForegroundEnum, a as IcInformationStatus } from './types-f605c21c.js';
4
4
 
5
5
  const paginationNextPrevious = `<svg width="8" height="10" viewBox="0 0 8 10" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -283,8 +283,10 @@ const Select = class {
283
283
  this.icBlur = createEvent(this, "icBlur", 7);
284
284
  this.icChange = createEvent(this, "icChange", 7);
285
285
  this.icClear = createEvent(this, "icClear", 7);
286
+ this.icClose = createEvent(this, "icClose", 7);
286
287
  this.icFocus = createEvent(this, "icFocus", 7);
287
288
  this.icInput = createEvent(this, "icInput", 7);
289
+ this.icOpen = createEvent(this, "icOpen", 7);
288
290
  this.icOptionSelect = createEvent(this, "icOptionSelect", 7);
289
291
  this.icRetryLoad = createEvent(this, "icRetryLoad", 7);
290
292
  this.hasSetDefaultValue = false;
@@ -677,20 +679,21 @@ const Select = class {
677
679
  this.onFocus = () => {
678
680
  this.icFocus.emit();
679
681
  };
680
- this.onBlur = (event) => {
682
+ this.onBlur = ({ relatedTarget }) => {
681
683
  var _a;
682
- const target = event.relatedTarget;
684
+ const target = relatedTarget;
683
685
  if (target !== null &&
684
- target.tagName === "UL" &&
685
- target.className.includes("menu")) {
686
+ ((target.tagName === "UL" && target.className.includes("menu")) ||
687
+ (target.tagName === "LI" && target.className.includes("option")))) {
686
688
  return;
687
689
  }
688
690
  const retryButton = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.querySelector("#retry-button");
689
691
  const isSearchableAndNoFocusedInternalElements = this.searchable &&
690
- event.relatedTarget !== this.menu &&
691
- !Array.from(this.menu.querySelectorAll("[role='option']")).includes(event.relatedTarget) &&
692
- !(this.clearButton && event.relatedTarget === this.clearButton) &&
693
- !(retryButton && event.relatedTarget === retryButton);
692
+ !!this.menu &&
693
+ target !== this.menu &&
694
+ !Array.from(this.menu.querySelectorAll("[role='option']")).includes(target) &&
695
+ !(this.clearButton && target === this.clearButton) &&
696
+ !(retryButton && target === retryButton);
694
697
  if (isSearchableAndNoFocusedInternalElements) {
695
698
  if (!this.retryButtonClick) {
696
699
  this.setMenuChange(false);
@@ -816,6 +819,9 @@ const Select = class {
816
819
  this.getLabelFromValue(this.currValue) || this.currValue;
817
820
  }
818
821
  }
822
+ openChangedHandler() {
823
+ this.open ? this.icOpen.emit() : this.icClose.emit();
824
+ }
819
825
  disconnectedCallback() {
820
826
  removeFormResetListener(this.el, this.handleFormReset);
821
827
  }
@@ -891,9 +897,10 @@ const Select = class {
891
897
  return (h(Host, { class: {
892
898
  disabled: disabled,
893
899
  searchable: searchable,
894
- small: small || size === "small",
900
+ small: small,
901
+ [size]: size !== "default",
895
902
  "full-width": fullWidth,
896
- }, onBlur: this.onBlur }, h("ic-input-container", { readonly: readonly }, !hideLabel && (h("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small || size === "small", fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, readonly ? (h("ic-typography", null, h("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet() ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
903
+ }, onBlur: this.onBlur }, h("ic-input-container", { readonly: readonly }, !hideLabel && (h("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), h("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, readonly ? (h("ic-typography", null, h("p", null, this.getLabelFromValue(currValue)))) : isMobileOrTablet() ? (h("select", Object.assign({ ref: (el) => (this.nativeSelectElement = el), disabled: disabled, onChange: this.handleNativeSelectChange, required: required, id: this.inputId, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.handleNativeSelectKeyDown, form: this.form }, this.inheritedAttributes), h("option", { value: "", selected: true, disabled: !showClearButton }, placeholder), options.map((option) => {
897
904
  if (option.children) {
898
905
  return (h("optgroup", { label: option.label }, option.children.map((option) => (h("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label)))));
899
906
  }
@@ -926,7 +933,7 @@ const Select = class {
926
933
  this.noOptions[0].label === this.emptyOptionListText),
927
934
  }, ref: (el) => (this.menu = el), inputEl: searchable
928
935
  ? this.searchableSelectElement
929
- : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small || size === "small", menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : this.uniqueOptions, value: currValue, fullWidth: fullWidth, selectOnEnter: this.selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onMenuValueChange: this.handleMenuValueChange, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable || this.selectOnEnter ? "manual" : "automatic" })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
936
+ : this.customSelectElement, inputLabel: label, anchorEl: this.anchorEl, small: small, size: size, menuId: menuId, open: this.open, options: searchable ? this.filteredOptions : this.uniqueOptions, value: currValue, fullWidth: fullWidth, selectOnEnter: this.selectOnEnter, onMenuStateChange: this.handleMenuChange, onMenuOptionSelect: this.handleCustomSelectChange, onMenuKeyPress: this.handleMenuKeyPress, onMenuValueChange: this.handleMenuValueChange, onUngroupedOptionsSet: this.setUngroupedOptions, onRetryButtonClicked: this.handleRetry, parentEl: this.el, onTimeoutBlur: this.onTimeoutBlur, activationType: this.searchable || this.selectOnEnter ? "manual" : "automatic" })), hasValidationStatus(this.validationStatus, this.disabled) && (h("ic-input-validation", { class: { "menu-open": this.open }, ariaLiveMode: "polite", status: validationStatus, message: validationText, for: this.inputId })))));
930
937
  }
931
938
  static get delegatesFocus() { return true; }
932
939
  get el() { return getElement(this); }
@@ -934,7 +941,8 @@ const Select = class {
934
941
  "loading": ["loadingHandler"],
935
942
  "options": ["watchOptionsHandler"],
936
943
  "debounce": ["debounceChangedHandler"],
937
- "value": ["valueChangedHandler"]
944
+ "value": ["valueChangedHandler"],
945
+ "open": ["openChangedHandler"]
938
946
  }; }
939
947
  };
940
948
  Select.style = icSelectCss;