@ukic/canary-web-components 3.0.0-canary.6 → 3.0.0-canary.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (399) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/{helpers-e0da4ae1.js → helpers-02b23286.js} +25 -3
  4. package/dist/cjs/helpers-02b23286.js.map +1 -0
  5. package/dist/cjs/{helpers-0d86316e.js → helpers-4190b7f2.js} +24 -1
  6. package/dist/cjs/helpers-4190b7f2.js.map +1 -0
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +2 -9
  10. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-badge.cjs.entry.js +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 +1 -1
  16. package/dist/cjs/ic-card-horizontal.cjs.entry.js +2 -8
  17. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-card-vertical.cjs.entry.js +12 -19
  19. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-checkbox-group.cjs.entry.js +1 -1
  21. package/dist/cjs/ic-checkbox.cjs.entry.js +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 +214 -48
  26. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-date-picker.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-empty-state_2.cjs.entry.js +20 -14
  32. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-footer.cjs.entry.js +18 -7
  36. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-hero.cjs.entry.js +2 -9
  38. package/dist/cjs/ic-hero.cjs.entry.js.map +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 +27 -21
  41. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-input-label_2.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  46. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  47. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  48. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  49. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  51. package/dist/cjs/ic-pagination_4.cjs.entry.js +53 -39
  52. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-radio-option.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-search-bar.cjs.entry.js +32 -28
  57. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  60. package/dist/cjs/ic-step.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-stepper.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  63. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  64. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -1
  65. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  66. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  68. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +27 -11
  69. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-toggle-button.cjs.entry.js +51 -5
  71. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-top-navigation.cjs.entry.js +2 -2
  73. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-tree-item.cjs.entry.js +2 -9
  75. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-tree-view.cjs.entry.js +2 -9
  77. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  79. package/dist/cjs/loader.cjs.js +1 -1
  80. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +3 -9
  81. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  82. package/dist/collection/components/ic-data-table/ic-data-table.css +82 -2
  83. package/dist/collection/components/ic-data-table/ic-data-table.js +249 -50
  84. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  85. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  86. package/dist/collection/components/ic-data-table/story-data.js +213 -6
  87. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  88. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +64 -1
  89. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  90. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +36 -0
  91. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  92. package/dist/collection/components/ic-tree-item/ic-tree-item.js +3 -10
  93. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  94. package/dist/collection/components/ic-tree-view/ic-tree-view.js +3 -10
  95. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  96. package/dist/collection/utils/helpers.js +21 -1
  97. package/dist/collection/utils/helpers.js.map +1 -1
  98. package/dist/collection/utils/types.js.map +1 -1
  99. package/dist/components/helpers.js +22 -1
  100. package/dist/components/helpers.js.map +1 -1
  101. package/dist/components/helpers2.js +22 -2
  102. package/dist/components/helpers2.js.map +1 -1
  103. package/dist/components/ic-alert.js +3 -10
  104. package/dist/components/ic-alert.js.map +1 -1
  105. package/dist/components/ic-card-horizontal.js +3 -9
  106. package/dist/components/ic-card-horizontal.js.map +1 -1
  107. package/dist/components/ic-card-vertical.js +13 -20
  108. package/dist/components/ic-card-vertical.js.map +1 -1
  109. package/dist/components/ic-data-table.js +215 -48
  110. package/dist/components/ic-data-table.js.map +1 -1
  111. package/dist/components/ic-date-input2.js +1 -1
  112. package/dist/components/ic-date-picker.js +1 -1
  113. package/dist/components/ic-empty-state2.js +3 -13
  114. package/dist/components/ic-empty-state2.js.map +1 -1
  115. package/dist/components/ic-footer.js +18 -7
  116. package/dist/components/ic-footer.js.map +1 -1
  117. package/dist/components/ic-hero.js +3 -10
  118. package/dist/components/ic-hero.js.map +1 -1
  119. package/dist/components/ic-horizontal-scroll2.js +1 -1
  120. package/dist/components/ic-input-component-container2.js +3 -10
  121. package/dist/components/ic-input-component-container2.js.map +1 -1
  122. package/dist/components/ic-menu2.js +25 -12
  123. package/dist/components/ic-menu2.js.map +1 -1
  124. package/dist/components/ic-navigation-group.js +1 -1
  125. package/dist/components/ic-navigation-item.js +1 -1
  126. package/dist/components/ic-navigation-menu2.js +1 -1
  127. package/dist/components/ic-pagination-bar2.js +21 -3
  128. package/dist/components/ic-pagination-bar2.js.map +1 -1
  129. package/dist/components/ic-popover-menu.js +1 -1
  130. package/dist/components/ic-search-bar.js +46 -53
  131. package/dist/components/ic-search-bar.js.map +1 -1
  132. package/dist/components/ic-select2.js +45 -33
  133. package/dist/components/ic-select2.js.map +1 -1
  134. package/dist/components/ic-side-navigation.js +1 -1
  135. package/dist/components/ic-stepper.js +1 -1
  136. package/dist/components/ic-text-field2.js +10 -8
  137. package/dist/components/ic-text-field2.js.map +1 -1
  138. package/dist/components/ic-theme.js +1 -1
  139. package/dist/components/ic-toast.js +1 -1
  140. package/dist/components/ic-toggle-button-group.js +31 -11
  141. package/dist/components/ic-toggle-button-group.js.map +1 -1
  142. package/dist/components/ic-toggle-button.js +58 -12
  143. package/dist/components/ic-toggle-button.js.map +1 -1
  144. package/dist/components/ic-top-navigation.js +2 -2
  145. package/dist/components/ic-top-navigation.js.map +1 -1
  146. package/dist/components/ic-tree-item.js +3 -10
  147. package/dist/components/ic-tree-item.js.map +1 -1
  148. package/dist/components/ic-tree-view.js +3 -10
  149. package/dist/components/ic-tree-view.js.map +1 -1
  150. package/dist/core/core.css +15 -3
  151. package/dist/core/core.esm.js +1 -1
  152. package/dist/core/core.esm.js.map +1 -1
  153. package/dist/core/{p-83f39782.entry.js → p-01034ef4.entry.js} +2 -2
  154. package/dist/core/p-033f3971.entry.js +2 -0
  155. package/dist/core/p-033f3971.entry.js.map +1 -0
  156. package/dist/core/{p-3b84953c.entry.js → p-03d51c20.entry.js} +2 -2
  157. package/dist/core/{p-b7e5b682.entry.js → p-05890d1e.entry.js} +2 -2
  158. package/dist/core/{p-68eb216b.entry.js → p-07bcfaef.entry.js} +2 -2
  159. package/dist/core/{p-fafc157b.entry.js → p-0d918e59.entry.js} +2 -2
  160. package/dist/core/p-10640219.entry.js +2 -0
  161. package/dist/core/p-10640219.entry.js.map +1 -0
  162. package/dist/core/p-15e382a4.entry.js +2 -0
  163. package/dist/core/p-15e382a4.entry.js.map +1 -0
  164. package/dist/core/{p-06cda732.entry.js → p-16b64836.entry.js} +2 -2
  165. package/dist/core/p-186edbae.entry.js +2 -0
  166. package/dist/core/{p-29a86adf.entry.js.map → p-186edbae.entry.js.map} +1 -1
  167. package/dist/core/{p-1893f635.entry.js → p-1c94e08c.entry.js} +2 -2
  168. package/dist/core/p-1c94e08c.entry.js.map +1 -0
  169. package/dist/core/p-1d3f7a04.entry.js +2 -0
  170. package/dist/core/{p-670c10af.entry.js.map → p-1d3f7a04.entry.js.map} +1 -1
  171. package/dist/core/{p-eb6e3878.entry.js → p-22708591.entry.js} +2 -2
  172. package/dist/core/p-23afb7d0.entry.js +2 -0
  173. package/dist/core/p-23afb7d0.entry.js.map +1 -0
  174. package/dist/core/p-289fff24.entry.js +2 -0
  175. package/dist/core/{p-b1c68968.entry.js.map → p-289fff24.entry.js.map} +1 -1
  176. package/dist/core/{p-efd608ab.entry.js → p-2fd78585.entry.js} +2 -2
  177. package/dist/core/{p-92398f47.entry.js → p-345a88a7.entry.js} +2 -2
  178. package/dist/core/p-361da840.entry.js +2 -0
  179. package/dist/core/p-361da840.entry.js.map +1 -0
  180. package/dist/core/{p-21f6619f.entry.js → p-3f182d5d.entry.js} +2 -2
  181. package/dist/core/{p-35caddb3.entry.js → p-49bf3a47.entry.js} +2 -2
  182. package/dist/core/p-4abbdbbc.entry.js +2 -0
  183. package/dist/core/p-4abbdbbc.entry.js.map +1 -0
  184. package/dist/core/{p-7765a219.entry.js → p-5193184c.entry.js} +2 -2
  185. package/dist/core/{p-a0dfd2cf.entry.js → p-51fd68b7.entry.js} +2 -2
  186. package/dist/core/p-563392e4.entry.js +2 -0
  187. package/dist/core/p-563392e4.entry.js.map +1 -0
  188. package/dist/core/p-5a48839e.entry.js +2 -0
  189. package/dist/core/p-5a48839e.entry.js.map +1 -0
  190. package/dist/core/{p-3ae329ab.entry.js → p-5cbf0885.entry.js} +2 -2
  191. package/dist/core/{p-07881c14.entry.js → p-5dcee0aa.entry.js} +2 -2
  192. package/dist/core/{p-95d1c9e6.entry.js → p-646f21ff.entry.js} +2 -2
  193. package/dist/core/{p-5d749879.entry.js → p-74b676a6.entry.js} +2 -2
  194. package/dist/core/{p-8e300091.entry.js → p-74e63f4d.entry.js} +2 -2
  195. package/dist/core/{p-b9081a99.entry.js → p-77f26d29.entry.js} +2 -2
  196. package/dist/core/{p-1084a7f9.entry.js → p-792ec0a3.entry.js} +2 -2
  197. package/dist/core/{p-7a9de1bb.entry.js → p-79c8879c.entry.js} +2 -2
  198. package/dist/core/{p-3bc4bc81.entry.js → p-7d5a0251.entry.js} +2 -2
  199. package/dist/core/{p-3272931c.entry.js → p-7eef69d7.entry.js} +2 -2
  200. package/dist/core/{p-2664bfab.entry.js → p-8167f2e0.entry.js} +2 -2
  201. package/dist/core/p-8576281d.entry.js +2 -0
  202. package/dist/core/p-8576281d.entry.js.map +1 -0
  203. package/dist/core/{p-47f2f713.entry.js → p-87cd3985.entry.js} +2 -2
  204. package/dist/core/{p-2c38ff71.entry.js → p-8d3e250a.entry.js} +2 -2
  205. package/dist/core/{p-ccd141a9.entry.js → p-8eb30ebf.entry.js} +2 -2
  206. package/dist/core/{p-6a2ed698.entry.js → p-901879b8.entry.js} +2 -2
  207. package/dist/core/p-92bb5fe9.entry.js +2 -0
  208. package/dist/core/p-92bb5fe9.entry.js.map +1 -0
  209. package/dist/core/p-94efa0d2.entry.js +2 -0
  210. package/dist/core/p-94efa0d2.entry.js.map +1 -0
  211. package/dist/core/{p-b047cd84.entry.js → p-9f5071bd.entry.js} +2 -2
  212. package/dist/core/p-9f5071bd.entry.js.map +1 -0
  213. package/dist/core/p-a04712b9.js +2 -0
  214. package/dist/core/p-a04712b9.js.map +1 -0
  215. package/dist/core/{p-5284ccab.entry.js → p-a683fd94.entry.js} +2 -2
  216. package/dist/core/{p-2412ba0b.entry.js → p-b2a6f0dd.entry.js} +2 -2
  217. package/dist/core/p-be6d9ab9.entry.js +2 -0
  218. package/dist/core/p-be6d9ab9.entry.js.map +1 -0
  219. package/dist/core/{p-39190da3.entry.js → p-d0c7bc04.entry.js} +2 -2
  220. package/dist/core/{p-19f85b60.entry.js → p-d1b8e306.entry.js} +2 -2
  221. package/dist/core/{p-e0b556b4.entry.js → p-db924212.entry.js} +2 -2
  222. package/dist/core/p-dd5daf97.entry.js +2 -0
  223. package/dist/core/p-dd5daf97.entry.js.map +1 -0
  224. package/dist/core/{p-26a41692.entry.js → p-dedca102.entry.js} +2 -2
  225. package/dist/core/{p-f02d5539.entry.js → p-eb09d6af.entry.js} +2 -2
  226. package/dist/core/p-ee5388e6.entry.js +2 -0
  227. package/dist/core/{p-324be8cf.entry.js.map → p-ee5388e6.entry.js.map} +1 -1
  228. package/dist/core/{p-ca4bfffd.entry.js → p-f1fcc442.entry.js} +2 -2
  229. package/dist/core/{p-38aca488.entry.js → p-f3995b20.entry.js} +2 -2
  230. package/dist/core/p-fa002d21.js +2 -0
  231. package/dist/core/p-fa002d21.js.map +1 -0
  232. package/dist/core/{p-d5648fdc.entry.js → p-faae4ac4.entry.js} +2 -2
  233. package/dist/esm/core.js +1 -1
  234. package/dist/esm/{helpers-759bbf51.js → helpers-0f42cb46.js} +23 -3
  235. package/dist/{cjs/helpers-e0da4ae1.js.map → esm/helpers-0f42cb46.js.map} +1 -1
  236. package/dist/esm/{helpers-fcc7a364.js → helpers-96838a0a.js} +23 -2
  237. package/dist/esm/helpers-96838a0a.js.map +1 -0
  238. package/dist/esm/ic-accordion-group.entry.js +1 -1
  239. package/dist/esm/ic-accordion.entry.js +1 -1
  240. package/dist/esm/ic-alert.entry.js +3 -10
  241. package/dist/esm/ic-alert.entry.js.map +1 -1
  242. package/dist/esm/ic-back-to-top.entry.js +1 -1
  243. package/dist/esm/ic-badge.entry.js +1 -1
  244. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  245. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  246. package/dist/esm/ic-button_3.entry.js +1 -1
  247. package/dist/esm/ic-card-horizontal.entry.js +3 -9
  248. package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
  249. package/dist/esm/ic-card-vertical.entry.js +13 -20
  250. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  251. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  252. package/dist/esm/ic-checkbox.entry.js +1 -1
  253. package/dist/esm/ic-chip.entry.js +1 -1
  254. package/dist/esm/ic-data-row.entry.js +1 -1
  255. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  256. package/dist/esm/ic-data-table.entry.js +214 -48
  257. package/dist/esm/ic-data-table.entry.js.map +1 -1
  258. package/dist/esm/ic-date-input.entry.js +1 -1
  259. package/dist/esm/ic-date-picker.entry.js +1 -1
  260. package/dist/esm/ic-dialog.entry.js +1 -1
  261. package/dist/esm/ic-divider.entry.js +1 -1
  262. package/dist/esm/ic-empty-state_2.entry.js +21 -15
  263. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  264. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  265. package/dist/esm/ic-footer-link.entry.js +1 -1
  266. package/dist/esm/ic-footer.entry.js +18 -7
  267. package/dist/esm/ic-footer.entry.js.map +1 -1
  268. package/dist/esm/ic-hero.entry.js +3 -10
  269. package/dist/esm/ic-hero.entry.js.map +1 -1
  270. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  271. package/dist/esm/ic-input-component-container_3.entry.js +28 -22
  272. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  273. package/dist/esm/ic-input-label_2.entry.js +1 -1
  274. package/dist/esm/ic-link.entry.js +1 -1
  275. package/dist/esm/ic-menu-group.entry.js +1 -1
  276. package/dist/esm/ic-menu-item.entry.js +1 -1
  277. package/dist/esm/ic-navigation-button.entry.js +1 -1
  278. package/dist/esm/ic-navigation-group.entry.js +1 -1
  279. package/dist/esm/ic-navigation-item.entry.js +1 -1
  280. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  281. package/dist/esm/ic-page-header.entry.js +1 -1
  282. package/dist/esm/ic-pagination_4.entry.js +53 -39
  283. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  284. package/dist/esm/ic-popover-menu.entry.js +1 -1
  285. package/dist/esm/ic-radio-group.entry.js +1 -1
  286. package/dist/esm/ic-radio-option.entry.js +1 -1
  287. package/dist/esm/ic-search-bar.entry.js +32 -28
  288. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  289. package/dist/esm/ic-side-navigation.entry.js +1 -1
  290. package/dist/esm/ic-status-tag.entry.js +1 -1
  291. package/dist/esm/ic-step.entry.js +1 -1
  292. package/dist/esm/ic-stepper.entry.js +1 -1
  293. package/dist/esm/ic-switch.entry.js +1 -1
  294. package/dist/esm/ic-tab-group.entry.js +1 -1
  295. package/dist/esm/ic-tab-panel.entry.js +1 -1
  296. package/dist/esm/ic-tab.entry.js +1 -1
  297. package/dist/esm/ic-theme.entry.js +1 -1
  298. package/dist/esm/ic-toast.entry.js +1 -1
  299. package/dist/esm/ic-toggle-button-group.entry.js +27 -11
  300. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  301. package/dist/esm/ic-toggle-button.entry.js +51 -5
  302. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  303. package/dist/esm/ic-top-navigation.entry.js +2 -2
  304. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  305. package/dist/esm/ic-tree-item.entry.js +3 -10
  306. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  307. package/dist/esm/ic-tree-view.entry.js +3 -10
  308. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  309. package/dist/esm/ic-typography.entry.js +1 -1
  310. package/dist/esm/loader.js +1 -1
  311. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +0 -1
  312. package/dist/types/components/ic-data-table/ic-data-table.d.ts +23 -0
  313. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +11 -0
  314. package/dist/types/components/ic-data-table/story-data.d.ts +107 -4
  315. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +6 -0
  316. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +0 -1
  317. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +0 -1
  318. package/dist/types/components.d.ts +23 -0
  319. package/dist/types/utils/helpers.d.ts +4 -1
  320. package/dist/types/utils/types.d.ts +1 -0
  321. package/hydrate/index.js +507 -228
  322. package/package.json +3 -10
  323. package/dist/cjs/helpers-0d86316e.js.map +0 -1
  324. package/dist/core/p-006d37d0.entry.js +0 -2
  325. package/dist/core/p-006d37d0.entry.js.map +0 -1
  326. package/dist/core/p-1893f635.entry.js.map +0 -1
  327. package/dist/core/p-29a86adf.entry.js +0 -2
  328. package/dist/core/p-324be8cf.entry.js +0 -2
  329. package/dist/core/p-34e57694.entry.js +0 -2
  330. package/dist/core/p-34e57694.entry.js.map +0 -1
  331. package/dist/core/p-4bcd86cf.js +0 -2
  332. package/dist/core/p-4bcd86cf.js.map +0 -1
  333. package/dist/core/p-670c10af.entry.js +0 -2
  334. package/dist/core/p-6aa0f42b.entry.js +0 -2
  335. package/dist/core/p-6aa0f42b.entry.js.map +0 -1
  336. package/dist/core/p-6d179eed.entry.js +0 -2
  337. package/dist/core/p-6d179eed.entry.js.map +0 -1
  338. package/dist/core/p-77a98aa2.entry.js +0 -2
  339. package/dist/core/p-77a98aa2.entry.js.map +0 -1
  340. package/dist/core/p-78f747ee.entry.js +0 -2
  341. package/dist/core/p-78f747ee.entry.js.map +0 -1
  342. package/dist/core/p-808715e2.js +0 -2
  343. package/dist/core/p-808715e2.js.map +0 -1
  344. package/dist/core/p-9b600ef3.entry.js +0 -2
  345. package/dist/core/p-9b600ef3.entry.js.map +0 -1
  346. package/dist/core/p-a7cda2d6.entry.js +0 -2
  347. package/dist/core/p-a7cda2d6.entry.js.map +0 -1
  348. package/dist/core/p-aa876e5e.entry.js +0 -2
  349. package/dist/core/p-aa876e5e.entry.js.map +0 -1
  350. package/dist/core/p-b047cd84.entry.js.map +0 -1
  351. package/dist/core/p-b1c68968.entry.js +0 -2
  352. package/dist/core/p-c6bdbee1.entry.js +0 -2
  353. package/dist/core/p-c6bdbee1.entry.js.map +0 -1
  354. package/dist/core/p-d7bc2e7f.entry.js +0 -2
  355. package/dist/core/p-d7bc2e7f.entry.js.map +0 -1
  356. package/dist/core/p-d981ef7a.entry.js +0 -2
  357. package/dist/core/p-d981ef7a.entry.js.map +0 -1
  358. package/dist/core/p-f95e52d8.entry.js +0 -2
  359. package/dist/core/p-f95e52d8.entry.js.map +0 -1
  360. package/dist/esm/helpers-759bbf51.js.map +0 -1
  361. package/dist/esm/helpers-fcc7a364.js.map +0 -1
  362. /package/dist/core/{p-83f39782.entry.js.map → p-01034ef4.entry.js.map} +0 -0
  363. /package/dist/core/{p-3b84953c.entry.js.map → p-03d51c20.entry.js.map} +0 -0
  364. /package/dist/core/{p-b7e5b682.entry.js.map → p-05890d1e.entry.js.map} +0 -0
  365. /package/dist/core/{p-68eb216b.entry.js.map → p-07bcfaef.entry.js.map} +0 -0
  366. /package/dist/core/{p-fafc157b.entry.js.map → p-0d918e59.entry.js.map} +0 -0
  367. /package/dist/core/{p-06cda732.entry.js.map → p-16b64836.entry.js.map} +0 -0
  368. /package/dist/core/{p-eb6e3878.entry.js.map → p-22708591.entry.js.map} +0 -0
  369. /package/dist/core/{p-efd608ab.entry.js.map → p-2fd78585.entry.js.map} +0 -0
  370. /package/dist/core/{p-92398f47.entry.js.map → p-345a88a7.entry.js.map} +0 -0
  371. /package/dist/core/{p-21f6619f.entry.js.map → p-3f182d5d.entry.js.map} +0 -0
  372. /package/dist/core/{p-35caddb3.entry.js.map → p-49bf3a47.entry.js.map} +0 -0
  373. /package/dist/core/{p-7765a219.entry.js.map → p-5193184c.entry.js.map} +0 -0
  374. /package/dist/core/{p-a0dfd2cf.entry.js.map → p-51fd68b7.entry.js.map} +0 -0
  375. /package/dist/core/{p-3ae329ab.entry.js.map → p-5cbf0885.entry.js.map} +0 -0
  376. /package/dist/core/{p-07881c14.entry.js.map → p-5dcee0aa.entry.js.map} +0 -0
  377. /package/dist/core/{p-95d1c9e6.entry.js.map → p-646f21ff.entry.js.map} +0 -0
  378. /package/dist/core/{p-5d749879.entry.js.map → p-74b676a6.entry.js.map} +0 -0
  379. /package/dist/core/{p-8e300091.entry.js.map → p-74e63f4d.entry.js.map} +0 -0
  380. /package/dist/core/{p-b9081a99.entry.js.map → p-77f26d29.entry.js.map} +0 -0
  381. /package/dist/core/{p-1084a7f9.entry.js.map → p-792ec0a3.entry.js.map} +0 -0
  382. /package/dist/core/{p-7a9de1bb.entry.js.map → p-79c8879c.entry.js.map} +0 -0
  383. /package/dist/core/{p-3bc4bc81.entry.js.map → p-7d5a0251.entry.js.map} +0 -0
  384. /package/dist/core/{p-3272931c.entry.js.map → p-7eef69d7.entry.js.map} +0 -0
  385. /package/dist/core/{p-2664bfab.entry.js.map → p-8167f2e0.entry.js.map} +0 -0
  386. /package/dist/core/{p-47f2f713.entry.js.map → p-87cd3985.entry.js.map} +0 -0
  387. /package/dist/core/{p-2c38ff71.entry.js.map → p-8d3e250a.entry.js.map} +0 -0
  388. /package/dist/core/{p-ccd141a9.entry.js.map → p-8eb30ebf.entry.js.map} +0 -0
  389. /package/dist/core/{p-6a2ed698.entry.js.map → p-901879b8.entry.js.map} +0 -0
  390. /package/dist/core/{p-5284ccab.entry.js.map → p-a683fd94.entry.js.map} +0 -0
  391. /package/dist/core/{p-2412ba0b.entry.js.map → p-b2a6f0dd.entry.js.map} +0 -0
  392. /package/dist/core/{p-39190da3.entry.js.map → p-d0c7bc04.entry.js.map} +0 -0
  393. /package/dist/core/{p-19f85b60.entry.js.map → p-d1b8e306.entry.js.map} +0 -0
  394. /package/dist/core/{p-e0b556b4.entry.js.map → p-db924212.entry.js.map} +0 -0
  395. /package/dist/core/{p-26a41692.entry.js.map → p-dedca102.entry.js.map} +0 -0
  396. /package/dist/core/{p-f02d5539.entry.js.map → p-eb09d6af.entry.js.map} +0 -0
  397. /package/dist/core/{p-ca4bfffd.entry.js.map → p-f1fcc442.entry.js.map} +0 -0
  398. /package/dist/core/{p-38aca488.entry.js.map → p-f3995b20.entry.js.map} +0 -0
  399. /package/dist/core/{p-d5648fdc.entry.js.map → p-faae4ac4.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ic-data-table.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-data-table/test/basic/ic-data-table.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAC3F,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0DAA0D,CAAC;AAE7F,SAAS,CAAC,GAAG,EAAE;IACb,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,eAAe,CAAC;AACpC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAClD,MAAM,cAAc,GAAG,iBAAiB,CAAC;AACzC,MAAM,KAAK,GAAG,YAAY,CAAC;AAC3B,MAAM,KAAK,GAAG,aAAa,CAAC;AAC5B,MAAM,KAAK,GAAG,aAAa,CAAC;AAC5B,MAAM,KAAK,GAAG,WAAW,CAAC;AAC1B,MAAM,KAAK,GAAG,eAAe,CAAC;AAC9B,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACjD,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAC9C,MAAM,UAAU,GACd,qXAAqX,CAAC;AAExX,MAAM,OAAO,GAA8B;IACzC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAClD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC9D,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;CACrE,CAAC;AAEF,MAAM,mBAAmB,GAA8B;IACrD,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAClD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC9D,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACpE,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;CAC1D,CAAC;AAEF,MAAM,oBAAoB,GAA8B;IACtD,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC5D,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAClD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;CAC/D,CAAC;AAEF,MAAM,oBAAoB,GAA8B;IACtD,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE;IAC3E;QACE,GAAG,EAAE,KAAK;QACV,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,QAAQ;QAClB,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;KAC9D;IACD;QACE,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,GAAG,EAAE,gBAAgB;QACrB,KAAK,EAAE,cAAc;QACrB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,gBAAgB,GAA8B;IAClD;QACE,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;SACjB;KACF;IACD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC9D,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;CACrE,CAAC;AAEF,MAAM,0BAA0B,GAA8B;IAC5D;QACE,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;YAChB,UAAU,EAAE,IAAI;SACjB;KACF;IACD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC9D,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;CACrE,CAAC;AAEF,MAAM,4BAA4B,GAA8B;IAC9D;QACE,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;YAChB,YAAY,EAAE,IAAI;SACnB;KACF;IACD,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAChD,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC9D,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;CACrE,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,EAAE;IACnE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;CAC9D,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;IACtE;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE;IACzE;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;KAC1B;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;CACjE,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC9D,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,UAAU;KACvB;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC1D,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC9D,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,OAAO;KACpB;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC7D,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;KAC1B;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC3D,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC7D,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,IAAI;KACjB;CACF,CAAC;AAEF,MAAM,eAAe,GAAG;IACtB,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,EAAE;IACnE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC3B,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,OAAO;QACnB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;QACrB,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;CAC9D,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC7D,QAAQ,EAAE,MAAM;SACjB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,UAAU;QACtB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;YACzD,QAAQ,EAAE,KAAK;SAChB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,WAAW;YACjB,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;YAC3D,QAAQ,EAAE,MAAM;SACjB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,OAAO;QACnB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC7D,QAAQ,EAAE,KAAK;SAChB;QACD,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE;YACzD,QAAQ,EAAE,MAAM;SACjB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;YAC3D,QAAQ,EAAE,MAAM;SACjB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,CAAC;KAClB;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG;IACf,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,EAAE;IACnE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;IAC7D,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,EAAE;IACnE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,EAAE;KACnB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,EAAE;IACvE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE;IAC9D,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE;IACpE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,EAAE;KACnB;IACD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE;IACvE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,EAAE;KACnB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,EAAE,EAAE;IACvE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE;IAC9D,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE;IACpE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,EAAE;KACnB;CACF,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB;QACE,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,iMAAiM;SACxM;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,UAAU;QACtB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE;QACE,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,CAAC;KAClB;IACD,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,EAAE;IACtE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE;CAC9D,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK;YACX,aAAa,EAAE,khBAAkhB;SACliB;QACD,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,UAAU;KACvB;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE;IACzE;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,aAAa;KAC1B;IACD;QACE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,aAAa;KAC1B;IACD,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;CACjE,CAAC;AAEF,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAC7B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,GACK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,kBAAkB,GACT,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,QAAQ,SACO,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,gCAEK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,qCAEK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,IAAI,CAAC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACzC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,QAAQ,SACO,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,4BAEC,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,YAAY,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;gBAC9D,+BAAyB,IAAI,EAAC,WAAW,GAA2B,CACtD,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,IAAI,4BAEK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,oBAAoB,4BAEX,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,qBAAqB,4BAEZ,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACvG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,IAAI,GACK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,4BAA4B,EACrC,IAAI,EAAE,IAAI,GACK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kHAAkH,EAAE,KAAK,IAAI,EAAE;QAChI,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,0BAA0B,EACnC,IAAI,EAAE,aAAa,GACJ,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa;gBAClE,WACE,IAAI,EAAC,aAAa,EAClB,SAAS,EAAC,OAAO,iBACL,MAAM,EAClB,OAAO,EAAC,WAAW;oBAEnB,YAAM,CAAC,EAAC,uEAAuE,GAAQ,CACnF,CACQ,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,YAAY,EAAC,OAAO,EAAE,OAAO,GAAkB,CACvE;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,EAAE,GACO,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC;YAC/C,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,YAAY,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAC5D,sBACE,IAAI,EAAC,aAAa,EAClB,OAAO,EAAC,MAAM,EACd,OAAO,EAAC,cAAc,EACtB,IAAI,EAAC,WAAW;oBAEhB,iBAAW,IAAI,EAAC,SAAS,aAAmB,CAC7B,CACH,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,GACC,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE;oBACd,UAAU,EAAE,IAAI;iBACjB,EACD,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE;oBACf,QAAQ,EAAE,EAAE;iBACb,EACD,QAAQ,EAAE,IAAI,GACC,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,UAAU,EAAE,CAAC;QACrE,MAAM,gBAAgB,GACpB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,CAAC,gBAAgB,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uIAAuI,EAAE,KAAK,IAAI,EAAE;QACrJ,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,CAAC;QACpE,IAAI,gBAAgB,GAClB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,UAAU,EAAE,CAAC;QACrE,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAC1E,MAAM,CAAC,gBAAgB,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAC1D,qFAAqF;QACrF,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oGAAoG,EAAE,KAAK,IAAI,EAAE;QAClH,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mHAAmH,EAAE,KAAK,IAAI,EAAE;QACjI,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,IAAI,GACE,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,qBAAqB,4BAEZ,CAClB;SACF,CAAC,CAAC;QAEH,IAAI,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAC1D;YACE,IAAI,EAAE,KAAK;YACX,aAAa,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC3D,QAAQ,EAAE,MAAM;SACjB,EACD,UAAU,CACX,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAErC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACtD;YACE,IAAI,EAAE,KAAK;YACX,aAAa,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC3D,QAAQ,EAAE,MAAM;SACjB,EACD,YAAY,CACb,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAErC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACtD;YACE,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC7D,QAAQ,EAAE,MAAM;SACjB,EACD,YAAY,CACb,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC;QAEpC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACtD,KAAK,EACL,YAAY,CACb,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC;QAEpC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACtD,SAAS,EACT,YAAY,CACb,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE;gBACV,QAAQ;gBACR,SAAS;gBACT,YAAY;gBACZ,aAAa;gBACb,gBAAgB;aACjB;YACD,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,4BAEC,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,aAAa,GACjB,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAE1D,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAE3E,MAAM,cAAc,GAClB,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAE5D,IAAI,WAAW,GACb,cAAc,CAAC,UAAU,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC;QAEvE,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,aAAa,CACxD,mBAAmB,CACC,CAAC;QAEvB,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEtC,cAAc,CAAC,KAAK,EAAE,CAAC;QAEvB,cAAc,CAAC,KAAK,EAAE,CAAC;QAEvB,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,cAAc,EAAE;YACxD,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE;SACvB,CAAC,CAAC;QAEH,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3C,WAAW,GAAG,QAAQ,CAAC;QAEvB,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC;QAEvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACtF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;YACtC,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,2BAEd,oBAAoB,EAAE;oBACpB,mBAAmB,EAAE;wBACnB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;wBAC5B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;wBAC5B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;qBAC7B;oBACD,cAAc,EAAE,MAAM;iBACvB,GACc,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,aAAa,GACjB,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAE1D,MAAM,iBAAiB,GAAG,aAAa,CAAC,UAAU,CAAC,aAAa,CAC9D,wBAAwB,CACzB,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,EAAE,CAAC;QAEnC,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAEpE,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,cAAc,EAAE;YACxD,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE;SACvB,CAAC,CAAC;QAEH,MAAM,2BAA2B,GAAG,IAAI,WAAW,CACjD,sBAAsB,EACtB;YACE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SACxB,CACF,CAAC;QAEF,MAAM,6BAA6B,GAAG,IAAI,WAAW,CACnD,sBAAsB,EACtB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;QAEF,SAAS,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;QAErD,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,EAAE,CAAC;QAEnC,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,EAAE,CAAC;QAE7B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,SAAS,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC;QAEvD,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAE3C,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,EAAE,CAAC;QAEnC,SAAS,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;YACjC,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,eAAe,EACrB,QAAQ,SACO,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC3B,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAC7B,CAAC;QAE3B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;gBACzD,+BAAyB,IAAI,EAAC,WAAW,GAA2B,CACtD,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,oBAAoB,GAAG,IAAI,WAAW,CAAC,sBAAsB,EAAE;YACjE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAE9C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEhD,oBAAoB,GAAG,IAAI,WAAW,CAAC,sBAAsB,EAAE;YAC7D,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAE9C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC;YAC1C,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBAAe,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;gBACzD,+BAAyB,IAAI,EAAC,WAAW,GAA2B,CACtD,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;YACjC,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,GACK,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEzD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEhB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAEjD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEhB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAEjD,IAAI,CAAC,GAAG,CAAC,aAAa,CACpB,IAAI,UAAU,CAAC,OAAO,EAAE;YACtB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;SACjB,CAAC,CACH,CAAC;QAEF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,EAAE,GACJ,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iJAAiJ,EAAE,KAAK,IAAI,EAAE;QAC/J,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI;gBACV,6CAA6C;gBAC7C,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GACjD,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,EAAE;gBACnB,6CAA6C;gBAC7C,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GACjD,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,MAAO,IAAI,CAAC,IAA+B,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;QAClG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,EAAE;gBACnB,6CAA6C;gBAC7C,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GACjD,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAE3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,IAAI,CAAC,IAA8B,CAAC;QACtD,SAAS,CAAC,eAAe,GAAG,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAE1C,SAAS,CAAC,iBAAiB,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5E,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,QAAQ,SACO,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAE3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAErD,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC3B,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAC7B,CAAC;QAE3B,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CACnC,MAAM,CAAC,gBAAgB,CAAC;YACtB,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE;SACpD,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;QACxG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,EAAE,EACnB,OAAO,EAAC,OAAO,GACA,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QAEnC,IAAI,CAAC,IAA+B,CAAC,OAAO,GAAG,UAAU,CAAC;QAC3D,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,eAAe,EAAC,MAAM,GACP,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;QAClG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI;gBACV,6CAA6C;gBAC7C,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GACpD,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,mBAAmB,EAC5B,IAAI,EAAE,IAAI,IAET,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACtB,iBAAW,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,KAAK,EAAE,aAEnC,CACb,CAAC,CACY,CACjB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,qBACE,OAAO,EAAC,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,qBAAqB,GACZ,CAClB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { IcButton } from \"@ukic/web-components/dist/components/ic-button\";\nimport { DataTable } from \"../../ic-data-table\";\nimport { IcPagination } from \"@ukic/web-components/dist/components/ic-pagination\";\nimport { PaginationBar } from \"../../../ic-pagination-bar/ic-pagination-bar\";\nimport { IcPaginationItem } from \"@ukic/web-components/dist/components/ic-pagination-item\";\nimport { h } from \"@stencil/core\";\nimport { IcDataTableColumnObject } from \"../../ic-data-table.types\";\nimport { waitForTimeout } from \"../../../../testspec.setup\";\nimport { IcEmptyState } from \"@ukic/web-components/dist/components/ic-empty-state\";\nimport { DataTableTitleBar } from \"../../../ic-data-table-title-bar/ic-data-table-title-bar\";\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\nconst icDataTable = \"ic-data-table\";\nconst icLoadingIndicator = \"ic-loading-indicator\";\nconst employeeNumber = \"Employee number\";\nconst name1 = \"John Smith\";\nconst name2 = \"Sally Jones\";\nconst name3 = \"Luke Fisher\";\nconst name4 = \"Jane Lock\";\nconst name5 = \"Margaret Hale\";\nconst highlightedRowClass = \"table-row-selected\";\nconst showBackgroundClass = \"show-background\";\nconst customIcon =\n '<svg aria-labelledby=\"error-title\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"#000000\"><title id=\"error-title\">Error</title><g id=\"close-octagon\"><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\" /></g></svg>';\n\nconst columns: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithElements: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n { key: \"actions\", title: \"Actions\", dataType: \"element\" },\n];\n\nconst columnsWithRowHeader: IcDataTableColumnObject[] = [\n { key: \"header\", title: employeeNumber, dataType: \"number\" },\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n];\n\nconst columnsWithOverrides: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\", cellAlignment: \"middle\" },\n {\n key: \"age\",\n title: \"Age\",\n dataType: \"number\",\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n },\n {\n key: \"department\",\n title: \"Department\",\n dataType: \"string\",\n emphasis: \"high\",\n },\n {\n key: \"employeeNumber\",\n title: employeeNumber,\n dataType: \"number\",\n emphasis: \"low\",\n },\n];\n\nconst columnsWithIcons: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithIconsOnAllCells: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n onAllCells: true,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithIconsHideOnHeader: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n hideOnHeader: true,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst data = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithRowHeaders = [\n { header: { title: 1 }, name: name1, age: 36, department: \"Accounts\" },\n {\n header: { title: 2 },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n { header: { title: 3 }, name: \"Tim Rayes\", age: 41, department: \"Sales\" },\n {\n header: { title: 4 },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5 },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n { header: { title: 6 }, name: name5, age: 45, department: \"HR\" },\n];\n\nconst dataWithRowOverrides = [\n {\n header: { title: 1, rowAlignment: \"middle\", emphasis: \"high\" },\n name: name1,\n age: 36,\n department: \"Accounts\",\n },\n {\n header: { title: 2, rowAlignment: \"top\", emphasis: \"low\" },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n {\n header: { title: 3, rowAlignment: \"bottom\", emphasis: \"high\" },\n name: \"Tim Rayes\",\n age: 41,\n department: \"Sales\",\n },\n {\n header: { title: 4, rowAlignment: \"middle\", emphasis: \"low\" },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5, rowAlignment: \"top\", emphasis: \"high\" },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n {\n header: { title: 6, rowAlignment: \"bottom\", emphasis: \"low\" },\n name: name5,\n age: 45,\n department: \"HR\",\n },\n];\n\nconst dataWithObjects = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n {\n name: { data: \"Tim Rayes\" },\n age: 41,\n department: \"Sales\",\n employeeNumber: 3,\n },\n {\n name: { data: name3 },\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithCellOverrides = [\n {\n name: {\n data: name1,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n age: 36,\n department: \"Accounts\",\n employeeNumber: 1,\n },\n {\n name: {\n data: name2,\n columnAlignment: { horizontal: \"top\", vertical: \"right\" },\n emphasis: \"low\",\n },\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n {\n name: {\n data: \"Tim Rayes\",\n columnAlignment: { horizontal: \"bottom\", vertical: \"left\" },\n emphasis: \"high\",\n },\n age: 41,\n department: \"Sales\",\n employeeNumber: 3,\n },\n {\n name: {\n data: name3,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"low\",\n },\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n {\n name: {\n data: name4,\n columnAlignment: { horizontal: \"top\", vertical: \"right\" },\n emphasis: \"high\",\n },\n age: 34,\n department: \"Engineering\",\n employeeNumber: 5,\n },\n {\n name: {\n data: name5,\n columnAlignment: { horizontal: \"bottom\", vertical: \"left\" },\n emphasis: \"high\",\n },\n age: 45,\n department: \"HR\",\n employeeNumber: 6,\n },\n];\n\nconst longData = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 7 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 8,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 9 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 10,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 11 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 12 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 13 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 14,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 15 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 16,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 17 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 18 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 19 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 20,\n },\n];\n\nconst dataWithIcons = [\n {\n name: {\n data: name1,\n icon: '<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9.70687 6L8.29688 7.41L12.8769 12L8.29688 16.59L9.70687 18L15.7069 12L9.70687 6Z\" fill=\"currentColor\"/></svg>',\n },\n age: 36,\n department: \"Accounts\",\n employeeNumber: 1,\n },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithActionElement = [\n {\n header: { title: 1 },\n name: {\n data: name1,\n actionElement: `<ic-button size=\"small\" variant=\"icon\" aria-label=\"you can disable tooltips on icon buttons\" disable-tooltip=\"true\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"#000000\" > <path d=\"M0 0h24v24H0V0z\" fill=\"none\"></path> <path d=\"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z\"></path> </svg></ic-button>`,\n },\n age: 36,\n department: \"Accounts\",\n },\n {\n header: { title: 2 },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n { header: { title: 3 }, name: \"Tim Rayes\", age: 41, department: \"Sales\" },\n {\n header: { title: 4 },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5 },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n { header: { title: 6 }, name: name5, age: 45, department: \"HR\" },\n];\n\ndescribe(icDataTable, () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with row headers\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithRowHeader}\n data={dataWithRowHeaders}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render embedded\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n embedded\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column headers hidden\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n hide-column-headers\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column header truncation\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n column-header-truncation\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.columnHeaderTruncation = false;\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render sortable\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n sortable\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with pagination\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a slotted ic-data-table-title-bar\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithOverrides}\n data={data}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with row overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithRowHeader}\n data={dataWithRowOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with cell overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithCellOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should correctly render a custom icon in the header when passed through the column prop\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIcons}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not render custom icon in header when hideOnHeader is set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIconsHideOnHeader}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render column icon on all column cells if onAllCells is true, except ones that already have a custom icon\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIconsOnAllCells}\n data={dataWithIcons}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a slotted icon instead of an icon defined in data\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={dataWithIcons}>\n <svg\n slot=\"name-0-icon\"\n focusable=\"false\"\n aria-hidden=\"true\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z\"></path>\n </svg>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the empty state when data is null\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns}></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the empty state when no data is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={[]}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should be able to slot a custom empty state into the data table\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable, IcEmptyState],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns} data={[]}>\n <ic-empty-state\n slot=\"empty-state\"\n aligned=\"left\"\n heading=\"Test heading\"\n body=\"test body\"\n >\n <ic-button slot=\"actions\">Button</ic-button>\n </ic-empty-state>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the loading state when the `loading` prop is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the updating state when the `updating` prop is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n updating={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should pass through the loadingOptions to the loading indicator\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loadingOptions={{\n monochrome: true,\n }}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should pass through the updatingOptions to the linear loading indicator\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n updatingOptions={{\n progress: 30,\n }}\n updating={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply a background to the loading indicator if data is supplied to the table\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columns}\n data={data}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeTruthy();\n const loadingIndicator =\n page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).toHaveClass(showBackgroundClass);\n });\n\n it(\"should not apply a background to the loading indicator if no data is supplied to the table, and apply one when data is provided later\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeFalsy();\n let loadingIndicator =\n page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).not.toHaveClass(showBackgroundClass);\n\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeTruthy();\n loadingIndicator = page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).toHaveClass(showBackgroundClass);\n //delay to allow for 1 sec setTimeout in loading indicator, otherwise next test fails\n await waitForTimeout(1100);\n });\n\n it(\"when loading is `true`, setting data should cancel the loading after 1 second from initial loading\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n await waitForTimeout(1100);\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"when loading is `true`, if data is set before 1 second of loading it will wait 1 second before rendering the data\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n await waitForTimeout(1500);\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should return correct alignment from getCellAlignment\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithCellOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n let cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n cellAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"vertical\"\n );\n expect(cellAlignment).toBe(\"center\");\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n cellAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"horizontal\"\n );\n expect(cellAlignment).toBe(\"middle\");\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n name1,\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n undefined,\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n });\n\n it(\"should change page when the pagination items are clicked\", async () => {\n const page = await newSpecPage({\n components: [\n IcButton,\n DataTable,\n IcPagination,\n PaginationBar,\n IcPaginationItem,\n ],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n await page.waitForChanges();\n\n const dataTable = document.querySelector(icDataTable);\n\n const paginationBar =\n dataTable.shadowRoot.querySelector(\"ic-pagination-bar\");\n\n const pagination = paginationBar.shadowRoot.querySelector(\"ic-pagination\");\n\n const paginationItem =\n pagination.shadowRoot.querySelector(\"ic-pagination-item\");\n\n let currentPage =\n paginationItem.shadowRoot.querySelector(\"ic-typography\").textContent;\n\n const nextPageButton = pagination.shadowRoot.querySelector(\n \"#next-page-button\"\n ) as HTMLButtonElement;\n\n expect(currentPage).toEqual(\"Page 1\");\n\n nextPageButton.focus();\n\n nextPageButton.click();\n\n const icPageChangeEvent = new CustomEvent(\"icPageChange\", {\n detail: { value: \"2\" },\n });\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n currentPage = \"Page 2\";\n\n page.rootInstance.updateScrollOffset();\n\n await page.waitForChanges();\n\n expect(currentPage).toEqual(\"Page 2\");\n });\n\n it(\"should change number of items per page when select dropdown is changed\", async () => {\n const page = await newSpecPage({\n components: [DataTable, PaginationBar],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n paginationBarOptions={{\n itemsPerPageOptions: [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ],\n rangeLabelType: \"data\",\n }}\n ></ic-data-table>\n ),\n });\n\n await page.waitForChanges();\n\n const dataTable = document.querySelector(icDataTable);\n\n const paginationBar =\n dataTable.shadowRoot.querySelector(\"ic-pagination-bar\");\n\n const itemsPerPageLabel = paginationBar.shadowRoot.querySelector(\n \".item-pagination-label\"\n );\n\n page.rootInstance.rowsPerPage = 10;\n\n expect(itemsPerPageLabel.textContent).toEqual(\"1 - 10 of 20 items\");\n\n const icPageChangeEvent = new CustomEvent(\"icPageChange\", {\n detail: { value: \"1\" },\n });\n\n const icItemsPerPageChangeEventUp = new CustomEvent(\n \"icItemsPerPageChange\",\n {\n detail: { value: \"20\" },\n }\n );\n\n const icItemsPerPageChangeEventDown = new CustomEvent(\n \"icItemsPerPageChange\",\n { detail: { value: \"10\" } }\n );\n\n dataTable.dispatchEvent(icItemsPerPageChangeEventUp);\n\n page.rootInstance.rowsPerPage = 20;\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n page.rootInstance.toRow = 20;\n\n await page.waitForChanges();\n\n dataTable.dispatchEvent(icItemsPerPageChangeEventDown);\n\n page.rootInstance.previousRowsPerPage = 20;\n\n page.rootInstance.rowsPerPage = 10;\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n await page.waitForChanges();\n\n expect(itemsPerPageLabel.textContent).toEqual(\"1 - 10 of 20 items\");\n });\n\n it(\"should sort data when the sort button is clicked\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithObjects}\n sortable\n ></ic-data-table>\n ),\n });\n\n const dataTable = document.querySelector(icDataTable);\n\n const sortButton = Array.from(\n dataTable.shadowRoot.querySelectorAll(\".sort-button\")\n ) as HTMLIcButtonElement[];\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[1].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should change the density of the element when it receives the icTableDensityUpdate event\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.rootInstance.density).toBe(\"default\");\n\n let icDensityUpdateEvent = new CustomEvent(\"icTableDensityUpdate\", {\n detail: { value: \"dense\" },\n });\n page.root.dispatchEvent(icDensityUpdateEvent);\n\n await page.waitForChanges();\n expect(page.rootInstance.density).toBe(\"dense\");\n\n icDensityUpdateEvent = new CustomEvent(\"icTableDensityUpdate\", {\n detail: { value: \"spacious\" },\n });\n page.root.dispatchEvent(icDensityUpdateEvent);\n\n await page.waitForChanges();\n expect(page.rootInstance.density).toBe(\"spacious\");\n });\n\n it(\"should pass the caption down to any slotted ic-data-table-title-bar\", async () => {\n const page = await newSpecPage({\n components: [DataTable, DataTableTitleBar],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should highlight the correct row when clicked\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n ></ic-data-table>\n ),\n });\n\n const dataTable = document.querySelector(icDataTable);\n\n const rows = dataTable.shadowRoot.querySelectorAll(\"tr\");\n\n rows[1].click();\n\n await page.waitForChanges();\n\n expect(rows[1]).toHaveClass(highlightedRowClass);\n\n rows[2].click();\n\n await page.waitForChanges();\n\n expect(rows[1]).not.toHaveClass(highlightedRowClass);\n expect(rows[2]).toHaveClass(highlightedRowClass);\n\n page.win.dispatchEvent(\n new MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n })\n );\n\n await page.waitForChanges();\n\n expect(rows[1]).not.toHaveClass(highlightedRowClass);\n expect(rows[2]).not.toHaveClass(highlightedRowClass);\n });\n\n it(\"should apply a specified row height to all rows when globalRowHeight is set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply a specified row height to specific rows when variableRowHeight is set, and any not included should use the default globalRowHeight\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should reset all rows to the default height when resetRowHeights is called\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n await (page.root as HTMLIcDataTableElement).resetRowHeights(40);\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should emit icRowHeightChange when globalRowHeight or variableRowHeight is changed\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n const eventSpy = jest.fn();\n\n page.root.addEventListener(\"icRowHeightChange\", eventSpy);\n\n const dataTable = page.root as HTMLIcDataTableElement;\n dataTable.globalRowHeight = 50;\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledTimes(1);\n\n dataTable.variableRowHeight = ({ index }) => (index % 2 === 0 ? 100 : null);\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledTimes(2);\n });\n\n it(\"should emit icSortChange when column sort button is clicked\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n sortable\n ></ic-data-table>\n ),\n });\n\n const eventSpy = jest.fn();\n\n page.root.addEventListener(\"icSortChange\", eventSpy);\n\n const dataTable = document.querySelector(icDataTable);\n\n const sortButton = Array.from(\n dataTable.shadowRoot.querySelectorAll(\".sort-button\")\n ) as HTMLIcButtonElement[];\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledWith(\n expect.objectContaining({\n detail: { columnName: \"name\", sorted: \"ascending\" },\n })\n );\n });\n\n it(\"should apply the correct density scaler to rowHeights when not using the default density\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n density=\"dense\"\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n (page.root as HTMLIcDataTableElement).density = \"spacious\";\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not override the height of rows if `globalRowHeight` is set to auto\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight=\"auto\"\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not override the height of certain rows if `variableRowHeight` returns auto\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? \"auto\" : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should slot a custom element into a cell\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithElements}\n data={data}\n >\n {data.map((_, index) => (\n <ic-button key={index} slot={`actions-${index}`}>\n Delete\n </ic-button>\n ))}\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render an action element if present in the data set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithActionElement}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
1
+ {"version":3,"file":"ic-data-table.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-data-table/test/basic/ic-data-table.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { IcButton } from \"@ukic/web-components/dist/components/ic-button\";\nimport { DataTable } from \"../../ic-data-table\";\nimport { IcPagination } from \"@ukic/web-components/dist/components/ic-pagination\";\nimport { PaginationBar } from \"../../../ic-pagination-bar/ic-pagination-bar\";\nimport { IcPaginationItem } from \"@ukic/web-components/dist/components/ic-pagination-item\";\nimport { h } from \"@stencil/core\";\nimport { IcDataTableColumnObject } from \"../../ic-data-table.types\";\nimport { waitForTimeout } from \"../../../../testspec.setup\";\nimport { IcEmptyState } from \"@ukic/web-components/dist/components/ic-empty-state\";\nimport { DataTableTitleBar } from \"../../../ic-data-table-title-bar/ic-data-table-title-bar\";\nimport { LONG_DATA_ELEMENTS_WITH_DESCRIPTIONS } from \"../../story-data\";\n\nbeforeAll(() => {\n jest.spyOn(console, \"warn\").mockImplementation(jest.fn());\n});\n\nconst icDataTable = \"ic-data-table\";\nconst icLoadingIndicator = \"ic-loading-indicator\";\nconst employeeNumber = \"Employee number\";\nconst name1 = \"John Smith\";\nconst name2 = \"Sally Jones\";\nconst name3 = \"Luke Fisher\";\nconst name4 = \"Jane Lock\";\nconst name5 = \"Margaret Hale\";\nconst highlightedRowClass = \"table-row-selected\";\nconst showBackgroundClass = \"show-background\";\nconst customIcon =\n '<svg aria-labelledby=\"error-title\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"#000000\"><title id=\"error-title\">Error</title><g id=\"close-octagon\"><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\" /></g></svg>';\n\nconst columns: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithElements: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n { key: \"actions\", title: \"Actions\", dataType: \"element\" },\n];\n\nconst columnsWithRowHeader: IcDataTableColumnObject[] = [\n { key: \"header\", title: employeeNumber, dataType: \"number\" },\n { key: \"name\", title: \"Name\", dataType: \"string\" },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n];\n\nconst columnsWithOverrides: IcDataTableColumnObject[] = [\n { key: \"name\", title: \"Name\", dataType: \"string\", cellAlignment: \"middle\" },\n {\n key: \"age\",\n title: \"Age\",\n dataType: \"number\",\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n },\n {\n key: \"department\",\n title: \"Department\",\n dataType: \"string\",\n emphasis: \"high\",\n },\n {\n key: \"employeeNumber\",\n title: employeeNumber,\n dataType: \"number\",\n emphasis: \"low\",\n },\n];\n\nconst columnsWithIcons: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithIconsOnAllCells: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n onAllCells: true,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst columnsWithIconsHideOnHeader: IcDataTableColumnObject[] = [\n {\n key: \"name\",\n title: \"Name\",\n dataType: \"string\",\n icon: {\n icon: customIcon,\n hideOnHeader: true,\n },\n },\n { key: \"age\", title: \"Age\", dataType: \"number\" },\n { key: \"department\", title: \"Department\", dataType: \"string\" },\n { key: \"employeeNumber\", title: employeeNumber, dataType: \"number\" },\n];\n\nconst data = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithElements = [\n {\n name: name1,\n age: 36,\n department: \"Accounts\",\n employeeNumber: 1,\n actions: \"\",\n },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n actions: \"\",\n },\n {\n name: \"Tim Rayes\",\n age: 41,\n department: \"Sales\",\n employeeNumber: 3,\n actions: \"\",\n },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n actions: \"\",\n },\n {\n name: name4,\n age: 34,\n department: \"Engineering\",\n employeeNumber: 5,\n actions: \"\",\n },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6, actions: \"\" },\n];\n\nconst dataWithRowHeaders = [\n { header: { title: 1 }, name: name1, age: 36, department: \"Accounts\" },\n {\n header: { title: 2 },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n { header: { title: 3 }, name: \"Tim Rayes\", age: 41, department: \"Sales\" },\n {\n header: { title: 4 },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5 },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n { header: { title: 6 }, name: name5, age: 45, department: \"HR\" },\n];\n\nconst dataWithRowOverrides = [\n {\n header: { title: 1, rowAlignment: \"middle\", emphasis: \"high\" },\n name: name1,\n age: 36,\n department: \"Accounts\",\n },\n {\n header: { title: 2, rowAlignment: \"top\", emphasis: \"low\" },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n {\n header: { title: 3, rowAlignment: \"bottom\", emphasis: \"high\" },\n name: \"Tim Rayes\",\n age: 41,\n department: \"Sales\",\n },\n {\n header: { title: 4, rowAlignment: \"middle\", emphasis: \"low\" },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5, rowAlignment: \"top\", emphasis: \"high\" },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n {\n header: { title: 6, rowAlignment: \"bottom\", emphasis: \"low\" },\n name: name5,\n age: 45,\n department: \"HR\",\n },\n];\n\nconst dataWithObjects = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n {\n name: { data: \"Tim Rayes\" },\n age: 41,\n department: \"Sales\",\n employeeNumber: 3,\n },\n {\n name: { data: name3 },\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithCellOverrides = [\n {\n name: {\n data: name1,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n age: 36,\n department: \"Accounts\",\n employeeNumber: 1,\n },\n {\n name: {\n data: name2,\n columnAlignment: { horizontal: \"top\", vertical: \"right\" },\n emphasis: \"low\",\n },\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n {\n name: {\n data: \"Tim Rayes\",\n columnAlignment: { horizontal: \"bottom\", vertical: \"left\" },\n emphasis: \"high\",\n },\n age: 41,\n department: \"Sales\",\n employeeNumber: 3,\n },\n {\n name: {\n data: name3,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"low\",\n },\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n {\n name: {\n data: name4,\n columnAlignment: { horizontal: \"top\", vertical: \"right\" },\n emphasis: \"high\",\n },\n age: 34,\n department: \"Engineering\",\n employeeNumber: 5,\n },\n {\n name: {\n data: name5,\n columnAlignment: { horizontal: \"bottom\", vertical: \"left\" },\n emphasis: \"high\",\n },\n age: 45,\n department: \"HR\",\n employeeNumber: 6,\n },\n];\n\nconst longData = [\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 1 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 7 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 8,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 9 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 10,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 11 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 12 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 13 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 14,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 15 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 16,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 17 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 18 },\n { name: name1, age: 36, department: \"Accounts\", employeeNumber: 19 },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 20,\n },\n];\n\nconst dataWithIcons = [\n {\n name: {\n data: name1,\n icon: '<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9.70687 6L8.29688 7.41L12.8769 12L8.29688 16.59L9.70687 18L15.7069 12L9.70687 6Z\" fill=\"currentColor\"/></svg>',\n },\n age: 36,\n department: \"Accounts\",\n employeeNumber: 1,\n },\n {\n name: name2,\n age: 32,\n department: \"Engineering\",\n employeeNumber: 2,\n },\n { name: \"Tim Rayes\", age: 41, department: \"Sales\", employeeNumber: 3 },\n {\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n employeeNumber: 4,\n },\n { name: name4, age: 34, department: \"Engineering\", employeeNumber: 5 },\n { name: name5, age: 45, department: \"HR\", employeeNumber: 6 },\n];\n\nconst dataWithActionElement = [\n {\n header: { title: 1 },\n name: {\n data: name1,\n actionElement: `<ic-button size=\"small\" variant=\"icon\" aria-label=\"you can disable tooltips on icon buttons\" disable-tooltip=\"true\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"#000000\" > <path d=\"M0 0h24v24H0V0z\" fill=\"none\"></path> <path d=\"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z\"></path> </svg></ic-button>`,\n actionOnClick: () => console.log(\"hello\"),\n },\n age: 36,\n department: \"Accounts\",\n },\n {\n header: { title: 2 },\n name: name2,\n age: 32,\n department: \"Engineering\",\n },\n { header: { title: 3 }, name: \"Tim Rayes\", age: 41, department: \"Sales\" },\n {\n header: { title: 4 },\n name: name3,\n age: \"23\",\n department: \"Engineering\",\n },\n {\n header: { title: 5 },\n name: name4,\n age: 34,\n department: \"Engineering\",\n },\n { header: { title: 6 }, name: name5, age: 45, department: \"HR\" },\n];\n\ndescribe(icDataTable, () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with row headers\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithRowHeader}\n data={dataWithRowHeaders}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render embedded\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n embedded\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column headers hidden\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n hide-column-headers\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column header truncation\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n column-header-truncation\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.columnHeaderTruncation = false;\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render sortable\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n sortable\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with pagination\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a slotted ic-data-table-title-bar\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with column overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithOverrides}\n data={data}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with row overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columnsWithRowHeader}\n data={dataWithRowOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with cell overrides\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithCellOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should correctly render a custom icon in the header when passed through the column prop\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIcons}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not render custom icon in header when hideOnHeader is set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIconsHideOnHeader}\n data={data}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render column icon on all column cells if onAllCells is true, except ones that already have a custom icon\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithIconsOnAllCells}\n data={dataWithIcons}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render a slotted icon instead of an icon defined in data\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={dataWithIcons}>\n <svg\n slot=\"name-0-icon\"\n focusable=\"false\"\n aria-hidden=\"true\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z\"></path>\n </svg>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the empty state when data is null\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns}></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the empty state when no data is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={[]}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should be able to slot a custom empty state into the data table\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable, IcEmptyState],\n template: () => (\n <ic-data-table caption=\"test table\" columns={columns} data={[]}>\n <ic-empty-state\n slot=\"empty-state\"\n aligned=\"left\"\n heading=\"Test heading\"\n body=\"test body\"\n >\n <ic-button slot=\"actions\">Button</ic-button>\n </ic-empty-state>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the loading state when the `loading` prop is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the updating state when the `updating` prop is passed through\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n updating={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should pass through the loadingOptions to the loading indicator\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loadingOptions={{\n monochrome: true,\n }}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should pass through the updatingOptions to the linear loading indicator\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n updatingOptions={{\n progress: 30,\n }}\n updating={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply a background to the loading indicator if data is supplied to the table\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columns}\n data={data}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeTruthy();\n const loadingIndicator =\n page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).toHaveClass(showBackgroundClass);\n });\n\n it(\"should not apply a background to the loading indicator if no data is supplied to the table, and apply one when data is provided later\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeFalsy();\n let loadingIndicator =\n page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).not.toHaveClass(showBackgroundClass);\n\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.rootInstance.loadingOptions.showBackground).toBeTruthy();\n loadingIndicator = page.root.shadowRoot.querySelector(icLoadingIndicator);\n expect(loadingIndicator).toHaveClass(showBackgroundClass);\n //delay to allow for 1 sec setTimeout in loading indicator, otherwise next test fails\n await waitForTimeout(1100);\n });\n\n it(\"when loading is `true`, setting data should cancel the loading after 1 second from initial loading\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n await waitForTimeout(1100);\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"when loading is `true`, if data is set before 1 second of loading it will wait 1 second before rendering the data\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n loading={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n page.root.data = data;\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n await waitForTimeout(1500);\n await page.waitForChanges();\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should return correct alignment from getCellAlignment\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithCellOverrides}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n let cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n cellAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"vertical\"\n );\n expect(cellAlignment).toBe(\"center\");\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n cellAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"horizontal\"\n );\n expect(cellAlignment).toBe(\"middle\");\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n {\n data: name1,\n columnAlignment: { horizontal: \"middle\", vertical: \"center\" },\n emphasis: \"high\",\n },\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n name1,\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n\n cellAlignment = await page.rootInstance.getCellAlignment(\n undefined,\n \"horizontal\"\n );\n expect(cellAlignment).toBeUndefined;\n });\n\n it(\"should change page when the pagination items are clicked\", async () => {\n const page = await newSpecPage({\n components: [\n IcButton,\n DataTable,\n IcPagination,\n PaginationBar,\n IcPaginationItem,\n ],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n ></ic-data-table>\n ),\n });\n\n await page.waitForChanges();\n\n const dataTable = document.querySelector(icDataTable);\n\n const paginationBar =\n dataTable.shadowRoot.querySelector(\"ic-pagination-bar\");\n\n const pagination = paginationBar.shadowRoot.querySelector(\"ic-pagination\");\n\n const paginationItem =\n pagination.shadowRoot.querySelector(\"ic-pagination-item\");\n\n let currentPage =\n paginationItem.shadowRoot.querySelector(\"ic-typography\").textContent;\n\n const nextPageButton = pagination.shadowRoot.querySelector(\n \"#next-page-button\"\n ) as HTMLButtonElement;\n\n expect(currentPage).toEqual(\"Page 1\");\n\n nextPageButton.focus();\n\n nextPageButton.click();\n\n const icPageChangeEvent = new CustomEvent(\"icPageChange\", {\n detail: { value: \"2\" },\n });\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n currentPage = \"Page 2\";\n\n page.rootInstance.updateScrollOffset();\n\n await page.waitForChanges();\n\n expect(currentPage).toEqual(\"Page 2\");\n });\n\n it(\"should change number of items per page when select dropdown is changed\", async () => {\n const page = await newSpecPage({\n components: [DataTable, PaginationBar],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={longData}\n show-pagination\n paginationBarOptions={{\n itemsPerPageOptions: [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ],\n rangeLabelType: \"data\",\n }}\n ></ic-data-table>\n ),\n });\n\n await page.waitForChanges();\n\n const dataTable = document.querySelector(icDataTable);\n\n const paginationBar =\n dataTable.shadowRoot.querySelector(\"ic-pagination-bar\");\n\n const itemsPerPageLabel = paginationBar.shadowRoot.querySelector(\n \".item-pagination-label\"\n );\n\n page.rootInstance.rowsPerPage = 10;\n\n expect(itemsPerPageLabel.textContent).toEqual(\"1 - 10 of 20 items\");\n\n const icPageChangeEvent = new CustomEvent(\"icPageChange\", {\n detail: { value: \"1\" },\n });\n\n const icItemsPerPageChangeEventUp = new CustomEvent(\n \"icItemsPerPageChange\",\n {\n detail: { value: \"20\" },\n }\n );\n\n const icItemsPerPageChangeEventDown = new CustomEvent(\n \"icItemsPerPageChange\",\n { detail: { value: \"10\" } }\n );\n\n dataTable.dispatchEvent(icItemsPerPageChangeEventUp);\n\n page.rootInstance.rowsPerPage = 20;\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n page.rootInstance.toRow = 20;\n\n await page.waitForChanges();\n\n dataTable.dispatchEvent(icItemsPerPageChangeEventDown);\n\n page.rootInstance.previousRowsPerPage = 20;\n\n page.rootInstance.rowsPerPage = 10;\n\n dataTable.dispatchEvent(icPageChangeEvent);\n\n await page.waitForChanges();\n\n expect(itemsPerPageLabel.textContent).toEqual(\"1 - 10 of 20 items\");\n });\n\n it(\"should sort data when the sort button is clicked\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithObjects}\n sortable\n ></ic-data-table>\n ),\n });\n\n const dataTable = document.querySelector(icDataTable);\n\n const sortButton = Array.from(\n dataTable.shadowRoot.querySelectorAll(\".sort-button\")\n ) as HTMLIcButtonElement[];\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n sortButton[1].click();\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should change the density of the element when it receives the icTableDensityUpdate event\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.rootInstance.density).toBe(\"default\");\n\n let icDensityUpdateEvent = new CustomEvent(\"icTableDensityUpdate\", {\n detail: { value: \"dense\" },\n });\n page.root.dispatchEvent(icDensityUpdateEvent);\n\n await page.waitForChanges();\n expect(page.rootInstance.density).toBe(\"dense\");\n\n icDensityUpdateEvent = new CustomEvent(\"icTableDensityUpdate\", {\n detail: { value: \"spacious\" },\n });\n page.root.dispatchEvent(icDensityUpdateEvent);\n\n await page.waitForChanges();\n expect(page.rootInstance.density).toBe(\"spacious\");\n });\n\n it(\"should pass the caption down to any slotted ic-data-table-title-bar\", async () => {\n const page = await newSpecPage({\n components: [DataTable, DataTableTitleBar],\n template: () => (\n <ic-data-table caption=\"Table\" columns={columns} data={data}>\n <ic-data-table-title-bar slot=\"title-bar\"></ic-data-table-title-bar>\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should highlight the correct row when clicked\", async () => {\n const page = await newSpecPage({\n components: [IcButton, DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n ></ic-data-table>\n ),\n });\n\n const dataTable = document.querySelector(icDataTable);\n\n const rows = dataTable.shadowRoot.querySelectorAll(\"tr\");\n\n rows[1].click();\n\n await page.waitForChanges();\n\n expect(rows[1]).toHaveClass(highlightedRowClass);\n\n rows[2].click();\n\n await page.waitForChanges();\n\n expect(rows[1]).not.toHaveClass(highlightedRowClass);\n expect(rows[2]).toHaveClass(highlightedRowClass);\n\n page.win.dispatchEvent(\n new MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n })\n );\n\n await page.waitForChanges();\n\n expect(rows[1]).not.toHaveClass(highlightedRowClass);\n expect(rows[2]).not.toHaveClass(highlightedRowClass);\n });\n\n it(\"should apply a specified row height to all rows when globalRowHeight is set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should apply a specified row height to specific rows when variableRowHeight is set, and any not included should use the default globalRowHeight\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should reset all rows to the default height when resetRowHeights is called\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n await (page.root as HTMLIcDataTableElement).resetRowHeights(40);\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should emit icRowHeightChange when globalRowHeight or variableRowHeight is changed\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? 200 : null)}\n ></ic-data-table>\n ),\n });\n\n const eventSpy = jest.fn();\n\n page.root.addEventListener(\"icRowHeightChange\", eventSpy);\n\n const dataTable = page.root as HTMLIcDataTableElement;\n dataTable.globalRowHeight = 50;\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledTimes(1);\n\n dataTable.variableRowHeight = ({ index }) => (index % 2 === 0 ? 100 : null);\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledTimes(2);\n });\n\n it(\"should emit icSortChange when column sort button is clicked\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n sortable\n ></ic-data-table>\n ),\n });\n\n const eventSpy = jest.fn();\n\n page.root.addEventListener(\"icSortChange\", eventSpy);\n\n const dataTable = document.querySelector(icDataTable);\n\n const sortButton = Array.from(\n dataTable.shadowRoot.querySelectorAll(\".sort-button\")\n ) as HTMLIcButtonElement[];\n\n sortButton[0].click();\n\n await page.waitForChanges();\n\n expect(eventSpy).toHaveBeenCalledWith(\n expect.objectContaining({\n detail: { columnName: \"name\", sorted: \"ascending\" },\n })\n );\n });\n\n it(\"should apply the correct density scaler to rowHeights when not using the default density\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight={80}\n density=\"dense\"\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n\n (page.root as HTMLIcDataTableElement).density = \"spacious\";\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not override the height of rows if `globalRowHeight` is set to auto\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n globalRowHeight=\"auto\"\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should not override the height of certain rows if `variableRowHeight` returns auto\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={data}\n // eslint-disable-next-line react/jsx-no-bind\n variableRowHeight={({ index }) => (index % 2 === 0 ? \"auto\" : null)}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should slot a custom element into a cell\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithElements}\n data={dataWithElements}\n >\n {dataWithElements.map((_, index) => (\n <ic-button key={index} slot={`actions-${index}`}>\n Delete\n </ic-button>\n ))}\n </ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render an action element if present in the data set\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={dataWithActionElement}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should add description text or sub-icon to cells of table\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"Table\"\n columns={columnsWithElements}\n data={LONG_DATA_ELEMENTS_WITH_DESCRIPTIONS}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render the loading indicator with an overlay above the table\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={[data[0]]}\n loading={true}\n loadingOptions={{\n overlay: true,\n }}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render updating in assertive aria-live div\", async () => {\n const page = await newSpecPage({\n components: [DataTable],\n template: () => (\n <ic-data-table\n caption=\"test table\"\n columns={columns}\n data={[data[0]]}\n updating={true}\n ></ic-data-table>\n ),\n });\n\n expect(page.root).toMatchSnapshot();\n });\n});\n"]}
@@ -106,11 +106,22 @@ export class PaginationBar {
106
106
  if (focus)
107
107
  el.setFocus();
108
108
  };
109
+ this.setToFirstPage = () => {
110
+ var _a;
111
+ const firstPage = 1;
112
+ this.changePage(firstPage);
113
+ (_a = this.paginationEl) === null || _a === void 0 ? void 0 : _a.setCurrentPage(firstPage);
114
+ this.activePage = firstPage;
115
+ this.icPageChange.emit({ value: firstPage });
116
+ };
109
117
  this.setItemsPerPage = (newValue) => {
110
118
  if (this.itemsPerPage !== newValue) {
111
119
  this.itemsPerPage = newValue;
112
120
  this.itemsPerPageString = newValue.toString();
113
121
  this.icItemsPerPageChange.emit({ value: this.itemsPerPage });
122
+ if (this.setToFirstPageOnPaginationChange) {
123
+ this.setToFirstPage();
124
+ }
114
125
  }
115
126
  this.totalPages =
116
127
  this.totalItems > this.itemsPerPage
@@ -201,6 +212,7 @@ export class PaginationBar {
201
212
  this.hideRangeLabel = false;
202
213
  this.showItemsPerPageControl = false;
203
214
  this.totalItems = undefined;
215
+ this.setToFirstPageOnPaginationChange = false;
204
216
  }
205
217
  watchPageNumberHandler() {
206
218
  this.activePage = this.currentPage;
@@ -221,6 +233,9 @@ export class PaginationBar {
221
233
  watchTotalItemsHandler() {
222
234
  this.setPaginationBarContent();
223
235
  }
236
+ watchSetToFirstPageOnPaginationChange() {
237
+ this.setPaginationBarContent();
238
+ }
224
239
  disconnectedCallback() {
225
240
  var _a;
226
241
  (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
@@ -552,6 +567,24 @@ export class PaginationBar {
552
567
  },
553
568
  "attribute": "total-items",
554
569
  "reflect": false
570
+ },
571
+ "setToFirstPageOnPaginationChange": {
572
+ "type": "boolean",
573
+ "mutable": false,
574
+ "complexType": {
575
+ "original": "boolean",
576
+ "resolved": "boolean",
577
+ "references": {}
578
+ },
579
+ "required": false,
580
+ "optional": true,
581
+ "docs": {
582
+ "tags": [],
583
+ "text": "If `true`, the pagination bar is set to the first page when the 'items per page' changes"
584
+ },
585
+ "attribute": "set-to-first-page-on-pagination-change",
586
+ "reflect": false,
587
+ "defaultValue": "false"
555
588
  }
556
589
  };
557
590
  }
@@ -629,6 +662,9 @@ export class PaginationBar {
629
662
  }, {
630
663
  "propName": "totalItems",
631
664
  "methodName": "watchTotalItemsHandler"
665
+ }, {
666
+ "propName": "setToFirstPageOnPaginationChange",
667
+ "methodName": "watchSetToFirstPageOnPaginationChange"
632
668
  }];
633
669
  }
634
670
  static get listeners() {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-pagination-bar.js","sourceRoot":"","sources":["../../../src/components/ic-pagination-bar/ic-pagination-bar.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n h,\n Watch,\n Host,\n} from \"@stencil/core\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { checkResizeObserver, capitalize } from \"../../utils/helpers\";\nimport { IcPageChangeEventDetail } from \"./ic-pagination-bar.types\";\nimport {\n IcPaginationAlignmentOptions,\n IcPaginationLabelTypes,\n IcPaginationTypes,\n} from \"@ukic/web-components/dist/types/components/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 PAGE_INPUT_FIELD_ID = \"go-to-page-input\";\n\n private INVALID_PAGE_ERROR = \"Please enter a valid page\";\n\n private resizeObserver: ResizeObserver = null;\n private pageDropdownEl: HTMLIcSelectElement;\n private pageInputEl: HTMLIcTextFieldElement;\n private pageInputTooltipEl: HTMLIcTooltipElement;\n private paginationBarEl: HTMLElement;\n private paginationEl: HTMLIcPaginationElement;\n\n @Element() el: HTMLIcPaginationBarElement;\n\n @State() capitalizedItemLabel: string;\n\n @State() capitalizedPageLabel: string;\n\n @State() activePage: number = 1;\n\n @State() displayedItemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @State() inputError: string = \"Please enter a valid page\";\n\n @State() itemsPerPage: number = 0;\n\n @State() itemsPerPageString: string = \"0\";\n\n @State() lowerBound: number = 1;\n\n @State() lowerCaseItemLabel: string;\n\n @State() lowerCasePageLabel: string;\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 * The current page number to be displayed on the pagination bar.\n */\n @Prop() currentPage?: number = 1;\n @Watch(\"currentPage\")\n watchPageNumberHandler(): void {\n this.activePage = this.currentPage;\n }\n\n /**\n * If `true`, the 'All' option will be hidden from the 'items per page' select input.\n */\n @Prop() hideAllFromItemsPerPage?: boolean = false;\n\n /**\n * The text which will be used in place of 'Item' on the pagination bar.\n */\n @Prop() itemLabel?: string = \"Item\";\n\n @Watch(\"itemLabel\")\n watchItemLabelHandler(): void {\n this.capitalizedItemLabel = capitalize(this.itemLabel);\n this.lowerCaseItemLabel = this.itemLabel.toLowerCase();\n }\n\n /**\n * The options which will be displayed for 'items per page' select input.\n */\n @Prop() itemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @Watch(\"itemsPerPageOptions\")\n watchItemsPerPageOptionsHandler(\n newVal: {\n label: string;\n value: string;\n }[],\n oldVal: {\n label: string;\n value: string;\n }[]\n ): void {\n if (JSON.stringify(newVal) === JSON.stringify(oldVal)) return;\n this.setPaginationBarContent();\n }\n\n /**\n * If `true`, the pagination bar will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * Whether the displayed pagination is simple or complex.\n */\n @Prop() type?: IcPaginationTypes = \"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() rangeLabelType?: IcPaginationLabelTypes = \"page\";\n\n /**\n * The text which will be used in place of 'Page' on the pagination bar.\n */\n @Prop() pageLabel?: string = \"Page\";\n\n @Watch(\"pageLabel\")\n watchPageLabelHandler(): void {\n this.capitalizedPageLabel = capitalize(this.pageLabel);\n this.lowerCasePageLabel = this.pageLabel.toLowerCase();\n }\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 will be hidden.\n */\n @Prop() hideRangeLabel?: boolean = false;\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 @Watch(\"totalItems\")\n watchTotalItemsHandler(): void {\n this.setPaginationBarContent();\n }\n\n /**\n * Emitted when a page is navigated to via the 'go to' input.\n * The `detail` property contains `value` (i.e. the page number) and a `fromItemsPerPage` flag to indicate if the event was triggered by the `icItemsPerPageChange` event also occurring.\n */\n @Event() icPageChange: EventEmitter<IcPageChangeEventDetail>;\n\n /**\n * Emitted when the items per page option is changed.\n */\n @Event() icItemsPerPageChange: EventEmitter<{ value: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.watchPageNumberHandler();\n this.watchPageLabelHandler();\n this.watchItemLabelHandler();\n this.setPaginationBarContent();\n }\n\n componentDidLoad(): void {\n this.paginationWidth = this.paginationBarEl.clientWidth;\n checkResizeObserver(this.runResizeObserver);\n const textField = this.el.shadowRoot?.querySelector(\n `.${this.PAGE_INPUT_FIELD_ID}`\n );\n if (textField) {\n const input = textField?.shadowRoot?.querySelector(\"input\");\n if (input) {\n input.style.textAlign = \"center\";\n input.style.padding = \"0\";\n }\n }\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 this.setItemsPerPage(Number(this.pageDropdownEl.value));\n };\n\n private changePage = (page: number) => {\n this.activePage = page;\n this.lowerBound = page !== 1 ? (page - 1) * this.itemsPerPage + 1 : page;\n this.setUpperBound();\n };\n\n private focusElFromLabel = (el: \"ic-select\" | \"ic-text-field\") => {\n this.paginationBarEl.querySelector(el)?.setFocus();\n };\n\n private goToPage = () => {\n const input = this.pageInputEl;\n const page = Number(input.value);\n if (page <= this.totalPages && page > 0) {\n this.changePage(page);\n this.paginationEl.setCurrentPage(page);\n this.activePage = page;\n input.value = \"\";\n this.icPageChange.emit({ value: page });\n this.pageInputTooltipEl.displayTooltip(false, false);\n input.validationStatus = \"\";\n } else {\n this.setInputError(input, this.INVALID_PAGE_ERROR);\n }\n };\n\n private goToPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-text-field\");\n };\n\n private handleBlur = () => {\n const textField = this.pageInputEl;\n if (\n (Number(textField.value) <= this.totalPages &&\n Number(textField.value) > 0) ||\n textField.value === \"\"\n ) {\n textField.validationStatus = \"\";\n }\n this.pageInputTooltipEl.displayTooltip(false, false);\n };\n\n private handleFocus = () => {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleInputChange = () => {\n const inputValue = parseInt(this.pageInputEl.value);\n\n if (inputValue > this.totalPages || inputValue <= 0) {\n this.setInputError(this.pageInputEl, this.INVALID_PAGE_ERROR);\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n if (ev.key === \"Enter\") {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n } else {\n this.goToPage();\n }\n } else {\n this.pageInputTooltipEl.displayTooltip(false, false);\n this.pageInputEl.validationStatus = \"\";\n }\n };\n\n private handleKeyUp = (ev: KeyboardEvent) => {\n if (\n Number.isNaN(parseInt(this.pageInputEl.value)) &&\n ev.key !== \"Backspace\" &&\n ev.key !== \"Enter\" &&\n ev.key !== \"Tab\" &&\n ev.key !== \"Shift\"\n ) {\n this.setInputError(this.pageInputEl, \"Please enter a number\", false);\n this.pageInputTooltipEl.displayTooltip(true, false);\n }\n };\n\n private itemsPerPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-select\");\n };\n\n private paginationShouldWrap = () => {\n if (this.type === \"simple\") {\n this.paginationWrapped = this.paginationEl.clientHeight > 63;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const { clientWidth } = this.paginationBarEl;\n if (\n clientWidth - this.paginationWidth > 50 ||\n clientWidth - this.paginationWidth < -50\n ) {\n this.paginationWidth = clientWidth;\n this.paginationShouldWrap();\n }\n });\n\n this.resizeObserver.observe(this.paginationBarEl);\n };\n\n private setInputError = (\n el: HTMLIcTextFieldElement,\n error: string,\n focus = true\n ) => {\n this.inputError = error;\n el.validationStatus = \"error\";\n if (focus) el.setFocus();\n };\n\n private setItemsPerPage = (newValue: number) => {\n if (this.itemsPerPage !== newValue) {\n this.itemsPerPage = newValue;\n this.itemsPerPageString = newValue.toString();\n this.icItemsPerPageChange.emit({ value: this.itemsPerPage });\n }\n\n this.totalPages =\n this.totalItems > this.itemsPerPage\n ? Math.ceil(this.totalItems / this.itemsPerPage)\n : 1;\n\n this.setUpperBound();\n if (this.activePage > this.totalPages) {\n this.paginationEl.setCurrentPage(this.totalPages);\n this.activePage = this.totalPages;\n }\n this.icPageChange.emit({ value: this.activePage, fromItemsPerPage: true });\n };\n\n private setPaginationBarContent = (): void => {\n const clonedItemsPerPageOptions: {\n label: string;\n value: string;\n }[] = this.itemsPerPageOptions\n ? JSON.parse(JSON.stringify(this.itemsPerPageOptions))\n : null;\n\n const displayedItemsPerPageOptions =\n clonedItemsPerPageOptions ||\n (this.totalItems <= 100\n ? [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ]\n : [\n { label: \"25\", value: \"25\" },\n { label: \"100\", value: \"100\" },\n { label: \"1000\", value: \"1000\" },\n ]);\n !this.hideAllFromItemsPerPage &&\n displayedItemsPerPageOptions.push({\n label: \"All\",\n value: String(this.totalItems),\n });\n\n this.displayedItemsPerPageOptions = displayedItemsPerPageOptions.filter(\n ({ value }) => this.totalItems >= Number(value)\n );\n\n let lastOptionValue = 0;\n const updated = this.displayedItemsPerPageOptions.some(({ value }) => {\n lastOptionValue = Number(value);\n return this.itemsPerPage <= lastOptionValue;\n });\n\n this.setItemsPerPage(\n updated || (!updated && this.itemsPerPage > lastOptionValue)\n ? lastOptionValue\n : this.itemsPerPage\n );\n };\n\n private setUpperBound = () => {\n this.upperBound = Math.min(\n this.lowerBound + this.itemsPerPage - 1,\n this.totalItems\n );\n };\n\n private handleButtonAppearance = () => {\n if (this.monochrome) {\n if (\n this.theme === \"dark\" ||\n (this.theme === \"inherit\" &&\n window.matchMedia &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches)\n ) {\n return \"light\";\n } else {\n return \"dark\";\n }\n } else {\n return \"default\";\n }\n };\n\n render() {\n const {\n alignment,\n displayedItemsPerPageOptions,\n PAGE_INPUT_FIELD_ID,\n type,\n rangeLabelType,\n hideRangeLabel,\n showItemsPerPageControl,\n showGoToPageControl,\n pageLabel,\n capitalizedPageLabel,\n lowerCasePageLabel,\n capitalizedItemLabel,\n lowerCaseItemLabel,\n totalPages,\n activePage,\n itemsPerPageString,\n theme,\n monochrome,\n } = this;\n\n return (\n <Host class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}>\n <div\n class={{\n [\"pagination-bar\"]: true,\n [`pagination-bar-${alignment}`]: true,\n }}\n ref={(el) => (this.paginationBarEl = el)}\n >\n {(!hideRangeLabel || showItemsPerPageControl) && (\n <div class=\"item-controls\">\n {showItemsPerPageControl && (\n <div class=\"items-per-page-holder\">\n <ic-typography\n class={{\n [\"items-per-page-control-label\"]: true,\n }}\n variant=\"label\"\n onClick={this.itemsPerPageLabelClickHandler}\n >\n {capitalizedItemLabel}s per {lowerCasePageLabel}\n </ic-typography>\n <ic-select\n theme={theme}\n size=\"small\"\n label=\"items-per-page-input\"\n class=\"items-per-page-input\"\n hideLabel\n options={displayedItemsPerPageOptions}\n value={itemsPerPageString}\n onIcChange={this.changeItemsPerPage}\n ref={(el: HTMLIcSelectElement) =>\n (this.pageDropdownEl = el)\n }\n ></ic-select>\n </div>\n )}\n {!hideRangeLabel &&\n (rangeLabelType === \"data\" ? (\n <ic-typography\n class={{\n [\"item-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.upperBound === 0 && `0 ${lowerCaseItemLabel}s`}\n {this.upperBound > 0 &&\n `${this.lowerBound} - ${this.upperBound} of ${\n this.totalItems\n } ${lowerCaseItemLabel}${this.totalItems > 1 ? \"s\" : \"\"}`}\n </ic-typography>\n ) : (\n <ic-typography\n class={{\n [\"page-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {capitalizedPageLabel} {activePage} of {totalPages}\n </ic-typography>\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 type={type}\n pages={totalPages}\n label={pageLabel}\n ref={(el: HTMLIcPaginationElement) => (this.paginationEl = el)}\n currentPage={activePage}\n theme={theme}\n monochrome={monochrome}\n ></ic-pagination>\n </div>\n {showGoToPageControl && (\n <div class=\"go-to-page-holder\">\n <ic-typography\n variant=\"label\"\n onClick={this.goToPageLabelClickHandler}\n >\n Go to {lowerCasePageLabel}\n </ic-typography>\n <ic-tooltip\n label={this.inputError}\n target={`#${PAGE_INPUT_FIELD_ID}`}\n disableHover\n disableClick\n ref={(el: HTMLIcTooltipElement) =>\n (this.pageInputTooltipEl = el)\n }\n >\n <ic-text-field\n theme={theme}\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={this.handleKeydown}\n onKeyUp={this.handleKeyUp}\n onInput={this.handleInputChange}\n max={totalPages}\n min=\"1\"\n validationInlineInternal\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n ref={(el: HTMLIcTextFieldElement) =>\n (this.pageInputEl = el)\n }\n ></ic-text-field>\n </ic-tooltip>\n <ic-button\n appearance={this.handleButtonAppearance()}\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 </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-pagination-bar.js","sourceRoot":"","sources":["../../../src/components/ic-pagination-bar/ic-pagination-bar.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n h,\n Watch,\n Host,\n} from \"@stencil/core\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { checkResizeObserver, capitalize } from \"../../utils/helpers\";\nimport { IcPageChangeEventDetail } from \"./ic-pagination-bar.types\";\nimport {\n IcPaginationAlignmentOptions,\n IcPaginationLabelTypes,\n IcPaginationTypes,\n} from \"@ukic/web-components/dist/types/components/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 PAGE_INPUT_FIELD_ID = \"go-to-page-input\";\n\n private INVALID_PAGE_ERROR = \"Please enter a valid page\";\n\n private resizeObserver: ResizeObserver = null;\n private pageDropdownEl: HTMLIcSelectElement;\n private pageInputEl: HTMLIcTextFieldElement;\n private pageInputTooltipEl: HTMLIcTooltipElement;\n private paginationBarEl: HTMLElement;\n private paginationEl: HTMLIcPaginationElement;\n\n @Element() el: HTMLIcPaginationBarElement;\n\n @State() capitalizedItemLabel: string;\n\n @State() capitalizedPageLabel: string;\n\n @State() activePage: number = 1;\n\n @State() displayedItemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @State() inputError: string = \"Please enter a valid page\";\n\n @State() itemsPerPage: number = 0;\n\n @State() itemsPerPageString: string = \"0\";\n\n @State() lowerBound: number = 1;\n\n @State() lowerCaseItemLabel: string;\n\n @State() lowerCasePageLabel: string;\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 * The current page number to be displayed on the pagination bar.\n */\n @Prop() currentPage?: number = 1;\n\n @Watch(\"currentPage\")\n watchPageNumberHandler(): void {\n this.activePage = this.currentPage;\n }\n\n /**\n * If `true`, the 'All' option will be hidden from the 'items per page' select input.\n */\n @Prop() hideAllFromItemsPerPage?: boolean = false;\n\n /**\n * The text which will be used in place of 'Item' on the pagination bar.\n */\n @Prop() itemLabel?: string = \"Item\";\n\n @Watch(\"itemLabel\")\n watchItemLabelHandler(): void {\n this.capitalizedItemLabel = capitalize(this.itemLabel);\n this.lowerCaseItemLabel = this.itemLabel.toLowerCase();\n }\n\n /**\n * The options which will be displayed for 'items per page' select input.\n */\n @Prop() itemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @Watch(\"itemsPerPageOptions\")\n watchItemsPerPageOptionsHandler(\n newVal: {\n label: string;\n value: string;\n }[],\n oldVal: {\n label: string;\n value: string;\n }[]\n ): void {\n if (JSON.stringify(newVal) === JSON.stringify(oldVal)) return;\n this.setPaginationBarContent();\n }\n\n /**\n * If `true`, the pagination bar will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * Whether the displayed pagination is simple or complex.\n */\n @Prop() type?: IcPaginationTypes = \"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() rangeLabelType?: IcPaginationLabelTypes = \"page\";\n\n /**\n * The text which will be used in place of 'Page' on the pagination bar.\n */\n @Prop() pageLabel?: string = \"Page\";\n\n @Watch(\"pageLabel\")\n watchPageLabelHandler(): void {\n this.capitalizedPageLabel = capitalize(this.pageLabel);\n this.lowerCasePageLabel = this.pageLabel.toLowerCase();\n }\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 will be hidden.\n */\n @Prop() hideRangeLabel?: boolean = false;\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 @Watch(\"totalItems\")\n watchTotalItemsHandler(): void {\n this.setPaginationBarContent();\n }\n\n /**\n If `true`, the pagination bar is set to the first page when the 'items per page' changes\n */\n @Prop() setToFirstPageOnPaginationChange?: boolean = false;\n\n @Watch(\"setToFirstPageOnPaginationChange\")\n watchSetToFirstPageOnPaginationChange(): void {\n this.setPaginationBarContent();\n }\n\n /**\n * Emitted when a page is navigated to via the 'go to' input.\n * The `detail` property contains `value` (i.e. the page number) and a `fromItemsPerPage` flag to indicate if the event was triggered by the `icItemsPerPageChange` event also occurring.\n */\n @Event() icPageChange: EventEmitter<IcPageChangeEventDetail>;\n\n /**\n * Emitted when the items per page option is changed.\n */\n @Event() icItemsPerPageChange: EventEmitter<{ value: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.watchPageNumberHandler();\n this.watchPageLabelHandler();\n this.watchItemLabelHandler();\n this.setPaginationBarContent();\n }\n\n componentDidLoad(): void {\n this.paginationWidth = this.paginationBarEl.clientWidth;\n checkResizeObserver(this.runResizeObserver);\n const textField = this.el.shadowRoot?.querySelector(\n `.${this.PAGE_INPUT_FIELD_ID}`\n );\n if (textField) {\n const input = textField?.shadowRoot?.querySelector(\"input\");\n if (input) {\n input.style.textAlign = \"center\";\n input.style.padding = \"0\";\n }\n }\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 this.setItemsPerPage(Number(this.pageDropdownEl.value));\n };\n\n private changePage = (page: number) => {\n this.activePage = page;\n this.lowerBound = page !== 1 ? (page - 1) * this.itemsPerPage + 1 : page;\n this.setUpperBound();\n };\n\n private focusElFromLabel = (el: \"ic-select\" | \"ic-text-field\") => {\n this.paginationBarEl.querySelector(el)?.setFocus();\n };\n\n private goToPage = () => {\n const input = this.pageInputEl;\n const page = Number(input.value);\n if (page <= this.totalPages && page > 0) {\n this.changePage(page);\n this.paginationEl.setCurrentPage(page);\n this.activePage = page;\n input.value = \"\";\n this.icPageChange.emit({ value: page });\n this.pageInputTooltipEl.displayTooltip(false, false);\n input.validationStatus = \"\";\n } else {\n this.setInputError(input, this.INVALID_PAGE_ERROR);\n }\n };\n\n private goToPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-text-field\");\n };\n\n private handleBlur = () => {\n const textField = this.pageInputEl;\n if (\n (Number(textField.value) <= this.totalPages &&\n Number(textField.value) > 0) ||\n textField.value === \"\"\n ) {\n textField.validationStatus = \"\";\n }\n this.pageInputTooltipEl.displayTooltip(false, false);\n };\n\n private handleFocus = () => {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleInputChange = () => {\n const inputValue = parseInt(this.pageInputEl.value);\n\n if (inputValue > this.totalPages || inputValue <= 0) {\n this.setInputError(this.pageInputEl, this.INVALID_PAGE_ERROR);\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n if (ev.key === \"Enter\") {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n } else {\n this.goToPage();\n }\n } else {\n this.pageInputTooltipEl.displayTooltip(false, false);\n this.pageInputEl.validationStatus = \"\";\n }\n };\n\n private handleKeyUp = (ev: KeyboardEvent) => {\n if (\n Number.isNaN(parseInt(this.pageInputEl.value)) &&\n ev.key !== \"Backspace\" &&\n ev.key !== \"Enter\" &&\n ev.key !== \"Tab\" &&\n ev.key !== \"Shift\"\n ) {\n this.setInputError(this.pageInputEl, \"Please enter a number\", false);\n this.pageInputTooltipEl.displayTooltip(true, false);\n }\n };\n\n private itemsPerPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-select\");\n };\n\n private paginationShouldWrap = () => {\n if (this.type === \"simple\") {\n this.paginationWrapped = this.paginationEl.clientHeight > 63;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const { clientWidth } = this.paginationBarEl;\n if (\n clientWidth - this.paginationWidth > 50 ||\n clientWidth - this.paginationWidth < -50\n ) {\n this.paginationWidth = clientWidth;\n this.paginationShouldWrap();\n }\n });\n\n this.resizeObserver.observe(this.paginationBarEl);\n };\n\n private setInputError = (\n el: HTMLIcTextFieldElement,\n error: string,\n focus = true\n ) => {\n this.inputError = error;\n el.validationStatus = \"error\";\n if (focus) el.setFocus();\n };\n\n private setToFirstPage = () => {\n const firstPage = 1;\n this.changePage(firstPage);\n this.paginationEl?.setCurrentPage(firstPage);\n this.activePage = firstPage;\n this.icPageChange.emit({ value: firstPage });\n };\n\n private setItemsPerPage = (newValue: number) => {\n if (this.itemsPerPage !== newValue) {\n this.itemsPerPage = newValue;\n this.itemsPerPageString = newValue.toString();\n this.icItemsPerPageChange.emit({ value: this.itemsPerPage });\n\n if (this.setToFirstPageOnPaginationChange) {\n this.setToFirstPage();\n }\n }\n\n this.totalPages =\n this.totalItems > this.itemsPerPage\n ? Math.ceil(this.totalItems / this.itemsPerPage)\n : 1;\n\n this.setUpperBound();\n if (this.activePage > this.totalPages) {\n this.paginationEl.setCurrentPage(this.totalPages);\n this.activePage = this.totalPages;\n }\n this.icPageChange.emit({ value: this.activePage, fromItemsPerPage: true });\n };\n\n private setPaginationBarContent = (): void => {\n const clonedItemsPerPageOptions: {\n label: string;\n value: string;\n }[] = this.itemsPerPageOptions\n ? JSON.parse(JSON.stringify(this.itemsPerPageOptions))\n : null;\n\n const displayedItemsPerPageOptions =\n clonedItemsPerPageOptions ||\n (this.totalItems <= 100\n ? [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ]\n : [\n { label: \"25\", value: \"25\" },\n { label: \"100\", value: \"100\" },\n { label: \"1000\", value: \"1000\" },\n ]);\n !this.hideAllFromItemsPerPage &&\n displayedItemsPerPageOptions.push({\n label: \"All\",\n value: String(this.totalItems),\n });\n\n this.displayedItemsPerPageOptions = displayedItemsPerPageOptions.filter(\n ({ value }) => this.totalItems >= Number(value)\n );\n\n let lastOptionValue = 0;\n const updated = this.displayedItemsPerPageOptions.some(({ value }) => {\n lastOptionValue = Number(value);\n return this.itemsPerPage <= lastOptionValue;\n });\n\n this.setItemsPerPage(\n updated || (!updated && this.itemsPerPage > lastOptionValue)\n ? lastOptionValue\n : this.itemsPerPage\n );\n };\n\n private setUpperBound = () => {\n this.upperBound = Math.min(\n this.lowerBound + this.itemsPerPage - 1,\n this.totalItems\n );\n };\n\n private handleButtonAppearance = () => {\n if (this.monochrome) {\n if (\n this.theme === \"dark\" ||\n (this.theme === \"inherit\" &&\n window.matchMedia &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches)\n ) {\n return \"light\";\n } else {\n return \"dark\";\n }\n } else {\n return \"default\";\n }\n };\n\n render() {\n const {\n alignment,\n displayedItemsPerPageOptions,\n PAGE_INPUT_FIELD_ID,\n type,\n rangeLabelType,\n hideRangeLabel,\n showItemsPerPageControl,\n showGoToPageControl,\n pageLabel,\n capitalizedPageLabel,\n lowerCasePageLabel,\n capitalizedItemLabel,\n lowerCaseItemLabel,\n totalPages,\n activePage,\n itemsPerPageString,\n theme,\n monochrome,\n } = this;\n\n return (\n <Host class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}>\n <div\n class={{\n [\"pagination-bar\"]: true,\n [`pagination-bar-${alignment}`]: true,\n }}\n ref={(el) => (this.paginationBarEl = el)}\n >\n {(!hideRangeLabel || showItemsPerPageControl) && (\n <div class=\"item-controls\">\n {showItemsPerPageControl && (\n <div class=\"items-per-page-holder\">\n <ic-typography\n class={{\n [\"items-per-page-control-label\"]: true,\n }}\n variant=\"label\"\n onClick={this.itemsPerPageLabelClickHandler}\n >\n {capitalizedItemLabel}s per {lowerCasePageLabel}\n </ic-typography>\n <ic-select\n theme={theme}\n size=\"small\"\n label=\"items-per-page-input\"\n class=\"items-per-page-input\"\n hideLabel\n options={displayedItemsPerPageOptions}\n value={itemsPerPageString}\n onIcChange={this.changeItemsPerPage}\n ref={(el: HTMLIcSelectElement) =>\n (this.pageDropdownEl = el)\n }\n ></ic-select>\n </div>\n )}\n {!hideRangeLabel &&\n (rangeLabelType === \"data\" ? (\n <ic-typography\n class={{\n [\"item-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.upperBound === 0 && `0 ${lowerCaseItemLabel}s`}\n {this.upperBound > 0 &&\n `${this.lowerBound} - ${this.upperBound} of ${\n this.totalItems\n } ${lowerCaseItemLabel}${this.totalItems > 1 ? \"s\" : \"\"}`}\n </ic-typography>\n ) : (\n <ic-typography\n class={{\n [\"page-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {capitalizedPageLabel} {activePage} of {totalPages}\n </ic-typography>\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 type={type}\n pages={totalPages}\n label={pageLabel}\n ref={(el: HTMLIcPaginationElement) => (this.paginationEl = el)}\n currentPage={activePage}\n theme={theme}\n monochrome={monochrome}\n ></ic-pagination>\n </div>\n {showGoToPageControl && (\n <div class=\"go-to-page-holder\">\n <ic-typography\n variant=\"label\"\n onClick={this.goToPageLabelClickHandler}\n >\n Go to {lowerCasePageLabel}\n </ic-typography>\n <ic-tooltip\n label={this.inputError}\n target={`#${PAGE_INPUT_FIELD_ID}`}\n disableHover\n disableClick\n ref={(el: HTMLIcTooltipElement) =>\n (this.pageInputTooltipEl = el)\n }\n >\n <ic-text-field\n theme={theme}\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={this.handleKeydown}\n onKeyUp={this.handleKeyUp}\n onInput={this.handleInputChange}\n max={totalPages}\n min=\"1\"\n validationInlineInternal\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n ref={(el: HTMLIcTextFieldElement) =>\n (this.pageInputEl = el)\n }\n ></ic-text-field>\n </ic-tooltip>\n <ic-button\n appearance={this.handleButtonAppearance()}\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 </Host>\n );\n }\n}\n"]}