@furystack/shades-common-components 12.4.0 → 12.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/CHANGELOG.md +119 -0
  2. package/esm/components/app-bar-link.spec.js +16 -19
  3. package/esm/components/app-bar-link.spec.js.map +1 -1
  4. package/esm/components/app-bar.spec.js +6 -4
  5. package/esm/components/app-bar.spec.js.map +1 -1
  6. package/esm/components/avatar.spec.js +9 -9
  7. package/esm/components/avatar.spec.js.map +1 -1
  8. package/esm/components/breadcrumb.spec.js +2 -2
  9. package/esm/components/breadcrumb.spec.js.map +1 -1
  10. package/esm/components/button-group.d.ts +32 -0
  11. package/esm/components/button-group.d.ts.map +1 -1
  12. package/esm/components/button-group.js +26 -2
  13. package/esm/components/button-group.js.map +1 -1
  14. package/esm/components/button-group.spec.js +127 -11
  15. package/esm/components/button-group.spec.js.map +1 -1
  16. package/esm/components/button.spec.js +4 -4
  17. package/esm/components/button.spec.js.map +1 -1
  18. package/esm/components/cache-view.spec.js +2 -3
  19. package/esm/components/cache-view.spec.js.map +1 -1
  20. package/esm/components/carousel.spec.js +47 -47
  21. package/esm/components/carousel.spec.js.map +1 -1
  22. package/esm/components/circular-progress.spec.js +2 -2
  23. package/esm/components/command-palette/command-palette-input.spec.js +23 -19
  24. package/esm/components/command-palette/command-palette-input.spec.js.map +1 -1
  25. package/esm/components/command-palette/command-palette-suggestion-list.spec.js +27 -27
  26. package/esm/components/command-palette/command-palette-suggestion-list.spec.js.map +1 -1
  27. package/esm/components/command-palette/index.spec.js +64 -51
  28. package/esm/components/command-palette/index.spec.js.map +1 -1
  29. package/esm/components/context-menu/context-menu.spec.js +33 -33
  30. package/esm/components/context-menu/context-menu.spec.js.map +1 -1
  31. package/esm/components/data-grid/body.spec.js +13 -13
  32. package/esm/components/data-grid/body.spec.js.map +1 -1
  33. package/esm/components/data-grid/data-grid-row.spec.js +8 -8
  34. package/esm/components/data-grid/data-grid-row.spec.js.map +1 -1
  35. package/esm/components/data-grid/data-grid.d.ts +47 -3
  36. package/esm/components/data-grid/data-grid.d.ts.map +1 -1
  37. package/esm/components/data-grid/data-grid.js +8 -11
  38. package/esm/components/data-grid/data-grid.js.map +1 -1
  39. package/esm/components/data-grid/data-grid.spec.js +71 -28
  40. package/esm/components/data-grid/data-grid.spec.js.map +1 -1
  41. package/esm/components/data-grid/filters/boolean-filter.d.ts +12 -0
  42. package/esm/components/data-grid/filters/boolean-filter.d.ts.map +1 -0
  43. package/esm/components/data-grid/filters/boolean-filter.js +27 -0
  44. package/esm/components/data-grid/filters/boolean-filter.js.map +1 -0
  45. package/esm/components/data-grid/filters/boolean-filter.spec.d.ts +2 -0
  46. package/esm/components/data-grid/filters/boolean-filter.spec.d.ts.map +1 -0
  47. package/esm/components/data-grid/filters/boolean-filter.spec.js +114 -0
  48. package/esm/components/data-grid/filters/boolean-filter.spec.js.map +1 -0
  49. package/esm/components/data-grid/filters/date-filter.d.ts +12 -0
  50. package/esm/components/data-grid/filters/date-filter.d.ts.map +1 -0
  51. package/esm/components/data-grid/filters/date-filter.js +109 -0
  52. package/esm/components/data-grid/filters/date-filter.js.map +1 -0
  53. package/esm/components/data-grid/filters/date-filter.spec.d.ts +2 -0
  54. package/esm/components/data-grid/filters/date-filter.spec.d.ts.map +1 -0
  55. package/esm/components/data-grid/filters/date-filter.spec.js +145 -0
  56. package/esm/components/data-grid/filters/date-filter.spec.js.map +1 -0
  57. package/esm/components/data-grid/filters/enum-filter.d.ts +16 -0
  58. package/esm/components/data-grid/filters/enum-filter.d.ts.map +1 -0
  59. package/esm/components/data-grid/filters/enum-filter.js +72 -0
  60. package/esm/components/data-grid/filters/enum-filter.js.map +1 -0
  61. package/esm/components/data-grid/filters/enum-filter.spec.d.ts +2 -0
  62. package/esm/components/data-grid/filters/enum-filter.spec.d.ts.map +1 -0
  63. package/esm/components/data-grid/filters/enum-filter.spec.js +136 -0
  64. package/esm/components/data-grid/filters/enum-filter.spec.js.map +1 -0
  65. package/esm/components/data-grid/filters/filter-dropdown.d.ts +6 -0
  66. package/esm/components/data-grid/filters/filter-dropdown.d.ts.map +1 -0
  67. package/esm/components/data-grid/filters/filter-dropdown.js +41 -0
  68. package/esm/components/data-grid/filters/filter-dropdown.js.map +1 -0
  69. package/esm/components/data-grid/filters/filter-dropdown.spec.d.ts +2 -0
  70. package/esm/components/data-grid/filters/filter-dropdown.spec.d.ts.map +1 -0
  71. package/esm/components/data-grid/filters/filter-dropdown.spec.js +69 -0
  72. package/esm/components/data-grid/filters/filter-dropdown.spec.js.map +1 -0
  73. package/esm/components/data-grid/filters/filter-styles.d.ts +24 -0
  74. package/esm/components/data-grid/filters/filter-styles.d.ts.map +1 -0
  75. package/esm/components/data-grid/filters/filter-styles.js +25 -0
  76. package/esm/components/data-grid/filters/filter-styles.js.map +1 -0
  77. package/esm/components/data-grid/filters/index.d.ts +7 -0
  78. package/esm/components/data-grid/filters/index.d.ts.map +1 -0
  79. package/esm/components/data-grid/filters/index.js +7 -0
  80. package/esm/components/data-grid/filters/index.js.map +1 -0
  81. package/esm/components/data-grid/filters/number-filter.d.ts +12 -0
  82. package/esm/components/data-grid/filters/number-filter.d.ts.map +1 -0
  83. package/esm/components/data-grid/filters/number-filter.js +65 -0
  84. package/esm/components/data-grid/filters/number-filter.js.map +1 -0
  85. package/esm/components/data-grid/filters/number-filter.spec.d.ts +2 -0
  86. package/esm/components/data-grid/filters/number-filter.spec.d.ts.map +1 -0
  87. package/esm/components/data-grid/filters/number-filter.spec.js +142 -0
  88. package/esm/components/data-grid/filters/number-filter.spec.js.map +1 -0
  89. package/esm/components/data-grid/filters/string-filter.d.ts +12 -0
  90. package/esm/components/data-grid/filters/string-filter.d.ts.map +1 -0
  91. package/esm/components/data-grid/filters/string-filter.js +63 -0
  92. package/esm/components/data-grid/filters/string-filter.js.map +1 -0
  93. package/esm/components/data-grid/filters/string-filter.spec.d.ts +2 -0
  94. package/esm/components/data-grid/filters/string-filter.spec.d.ts.map +1 -0
  95. package/esm/components/data-grid/filters/string-filter.spec.js +128 -0
  96. package/esm/components/data-grid/filters/string-filter.spec.js.map +1 -0
  97. package/esm/components/data-grid/footer.d.ts +1 -0
  98. package/esm/components/data-grid/footer.d.ts.map +1 -1
  99. package/esm/components/data-grid/footer.js +24 -16
  100. package/esm/components/data-grid/footer.js.map +1 -1
  101. package/esm/components/data-grid/footer.spec.js +111 -71
  102. package/esm/components/data-grid/footer.spec.js.map +1 -1
  103. package/esm/components/data-grid/header.d.ts +6 -9
  104. package/esm/components/data-grid/header.d.ts.map +1 -1
  105. package/esm/components/data-grid/header.js +51 -117
  106. package/esm/components/data-grid/header.js.map +1 -1
  107. package/esm/components/data-grid/header.spec.js +116 -187
  108. package/esm/components/data-grid/header.spec.js.map +1 -1
  109. package/esm/components/data-grid/index.d.ts +1 -0
  110. package/esm/components/data-grid/index.d.ts.map +1 -1
  111. package/esm/components/data-grid/index.js +1 -0
  112. package/esm/components/data-grid/index.js.map +1 -1
  113. package/esm/components/data-grid/selection-cell.spec.js +8 -8
  114. package/esm/components/data-grid/selection-cell.spec.js.map +1 -1
  115. package/esm/components/drawer/drawer-toggle-button.spec.js +22 -22
  116. package/esm/components/drawer/drawer-toggle-button.spec.js.map +1 -1
  117. package/esm/components/drawer/index.spec.js +36 -36
  118. package/esm/components/drawer/index.spec.js.map +1 -1
  119. package/esm/components/dropdown.spec.js +38 -30
  120. package/esm/components/dropdown.spec.js.map +1 -1
  121. package/esm/components/fab.spec.js +4 -4
  122. package/esm/components/fab.spec.js.map +1 -1
  123. package/esm/components/form.spec.js +37 -37
  124. package/esm/components/form.spec.js.map +1 -1
  125. package/esm/components/grid.d.ts +3 -0
  126. package/esm/components/grid.d.ts.map +1 -1
  127. package/esm/components/grid.js +3 -0
  128. package/esm/components/grid.js.map +1 -1
  129. package/esm/components/grid.spec.js +3 -3
  130. package/esm/components/grid.spec.js.map +1 -1
  131. package/esm/components/image.spec.js +55 -52
  132. package/esm/components/image.spec.js.map +1 -1
  133. package/esm/components/inputs/autocomplete.d.ts +3 -0
  134. package/esm/components/inputs/autocomplete.d.ts.map +1 -1
  135. package/esm/components/inputs/autocomplete.js +3 -0
  136. package/esm/components/inputs/autocomplete.js.map +1 -1
  137. package/esm/components/inputs/autocomplete.spec.js +7 -14
  138. package/esm/components/inputs/autocomplete.spec.js.map +1 -1
  139. package/esm/components/inputs/checkbox.spec.js +22 -22
  140. package/esm/components/inputs/checkbox.spec.js.map +1 -1
  141. package/esm/components/inputs/input-number.spec.js +47 -47
  142. package/esm/components/inputs/input-number.spec.js.map +1 -1
  143. package/esm/components/inputs/input.spec.js +53 -53
  144. package/esm/components/inputs/input.spec.js.map +1 -1
  145. package/esm/components/inputs/radio-group.spec.js +14 -14
  146. package/esm/components/inputs/radio-group.spec.js.map +1 -1
  147. package/esm/components/inputs/radio.spec.js +16 -16
  148. package/esm/components/inputs/radio.spec.js.map +1 -1
  149. package/esm/components/inputs/select.spec.js +74 -74
  150. package/esm/components/inputs/select.spec.js.map +1 -1
  151. package/esm/components/inputs/slider.spec.js +16 -16
  152. package/esm/components/inputs/slider.spec.js.map +1 -1
  153. package/esm/components/inputs/switch.spec.js +24 -24
  154. package/esm/components/inputs/switch.spec.js.map +1 -1
  155. package/esm/components/inputs/text-area.spec.js +17 -17
  156. package/esm/components/inputs/text-area.spec.js.map +1 -1
  157. package/esm/components/linear-progress.spec.js +2 -2
  158. package/esm/components/list/list.d.ts +10 -0
  159. package/esm/components/list/list.d.ts.map +1 -1
  160. package/esm/components/list/list.js +23 -2
  161. package/esm/components/list/list.js.map +1 -1
  162. package/esm/components/list/list.spec.js +137 -36
  163. package/esm/components/list/list.spec.js.map +1 -1
  164. package/esm/components/markdown/markdown-display.spec.js +15 -15
  165. package/esm/components/markdown/markdown-display.spec.js.map +1 -1
  166. package/esm/components/markdown/markdown-editor.spec.js +8 -8
  167. package/esm/components/markdown/markdown-editor.spec.js.map +1 -1
  168. package/esm/components/markdown/markdown-input.d.ts +14 -0
  169. package/esm/components/markdown/markdown-input.d.ts.map +1 -1
  170. package/esm/components/markdown/markdown-input.js +48 -2
  171. package/esm/components/markdown/markdown-input.js.map +1 -1
  172. package/esm/components/markdown/markdown-input.spec.js +114 -17
  173. package/esm/components/markdown/markdown-input.spec.js.map +1 -1
  174. package/esm/components/menu/menu.spec.js +28 -28
  175. package/esm/components/menu/menu.spec.js.map +1 -1
  176. package/esm/components/modal.spec.js +15 -18
  177. package/esm/components/modal.spec.js.map +1 -1
  178. package/esm/components/noty-list.spec.js +25 -23
  179. package/esm/components/noty-list.spec.js.map +1 -1
  180. package/esm/components/page-container/index.spec.js +16 -16
  181. package/esm/components/page-container/index.spec.js.map +1 -1
  182. package/esm/components/page-container/page-header.spec.js +16 -16
  183. package/esm/components/page-container/page-header.spec.js.map +1 -1
  184. package/esm/components/page-layout/index.spec.js +29 -29
  185. package/esm/components/page-layout/index.spec.js.map +1 -1
  186. package/esm/components/paper.spec.js +3 -3
  187. package/esm/components/paper.spec.js.map +1 -1
  188. package/esm/components/rating.spec.js +61 -61
  189. package/esm/components/rating.spec.js.map +1 -1
  190. package/esm/components/skeleton.spec.js +10 -6
  191. package/esm/components/skeleton.spec.js.map +1 -1
  192. package/esm/components/suggest/index.d.ts +10 -2
  193. package/esm/components/suggest/index.d.ts.map +1 -1
  194. package/esm/components/suggest/index.js +21 -1
  195. package/esm/components/suggest/index.js.map +1 -1
  196. package/esm/components/suggest/index.spec.js +50 -0
  197. package/esm/components/suggest/index.spec.js.map +1 -1
  198. package/esm/components/suggest/suggest-input.spec.js +4 -10
  199. package/esm/components/suggest/suggest-input.spec.js.map +1 -1
  200. package/esm/components/tabs.spec.js +30 -30
  201. package/esm/components/tabs.spec.js.map +1 -1
  202. package/esm/components/tree/tree.spec.js +27 -27
  203. package/esm/components/tree/tree.spec.js.map +1 -1
  204. package/esm/components/typography.spec.js +3 -3
  205. package/esm/components/typography.spec.js.map +1 -1
  206. package/esm/components/wizard/index.d.ts +8 -0
  207. package/esm/components/wizard/index.d.ts.map +1 -1
  208. package/esm/components/wizard/index.js +90 -0
  209. package/esm/components/wizard/index.js.map +1 -1
  210. package/esm/components/wizard/index.spec.js +84 -7
  211. package/esm/components/wizard/index.spec.js.map +1 -1
  212. package/esm/utils/promisify-animation.d.ts.map +1 -1
  213. package/esm/utils/promisify-animation.js +3 -0
  214. package/esm/utils/promisify-animation.js.map +1 -1
  215. package/package.json +3 -3
  216. package/src/components/app-bar-link.spec.tsx +16 -19
  217. package/src/components/app-bar.spec.tsx +6 -4
  218. package/src/components/avatar.spec.tsx +9 -9
  219. package/src/components/breadcrumb.spec.tsx +2 -2
  220. package/src/components/button-group.spec.tsx +155 -11
  221. package/src/components/button-group.tsx +49 -2
  222. package/src/components/button.spec.tsx +4 -4
  223. package/src/components/cache-view.spec.tsx +3 -3
  224. package/src/components/carousel.spec.tsx +47 -47
  225. package/src/components/circular-progress.spec.tsx +2 -2
  226. package/src/components/command-palette/command-palette-input.spec.tsx +23 -19
  227. package/src/components/command-palette/command-palette-suggestion-list.spec.tsx +27 -27
  228. package/src/components/command-palette/index.spec.tsx +64 -51
  229. package/src/components/context-menu/context-menu.spec.tsx +33 -33
  230. package/src/components/data-grid/body.spec.tsx +13 -13
  231. package/src/components/data-grid/data-grid-row.spec.tsx +8 -8
  232. package/src/components/data-grid/data-grid.spec.tsx +106 -28
  233. package/src/components/data-grid/data-grid.tsx +57 -13
  234. package/src/components/data-grid/filters/boolean-filter.spec.tsx +142 -0
  235. package/src/components/data-grid/filters/boolean-filter.tsx +45 -0
  236. package/src/components/data-grid/filters/date-filter.spec.tsx +181 -0
  237. package/src/components/data-grid/filters/date-filter.tsx +162 -0
  238. package/src/components/data-grid/filters/enum-filter.spec.tsx +168 -0
  239. package/src/components/data-grid/filters/enum-filter.tsx +119 -0
  240. package/src/components/data-grid/filters/filter-dropdown.spec.tsx +89 -0
  241. package/src/components/data-grid/filters/filter-dropdown.tsx +60 -0
  242. package/src/components/data-grid/filters/filter-styles.ts +26 -0
  243. package/src/components/data-grid/filters/index.ts +6 -0
  244. package/src/components/data-grid/filters/number-filter.spec.tsx +174 -0
  245. package/src/components/data-grid/filters/number-filter.tsx +115 -0
  246. package/src/components/data-grid/filters/string-filter.spec.tsx +157 -0
  247. package/src/components/data-grid/filters/string-filter.tsx +112 -0
  248. package/src/components/data-grid/footer.spec.tsx +130 -74
  249. package/src/components/data-grid/footer.tsx +41 -34
  250. package/src/components/data-grid/header.spec.tsx +128 -212
  251. package/src/components/data-grid/header.tsx +95 -183
  252. package/src/components/data-grid/index.tsx +1 -0
  253. package/src/components/data-grid/selection-cell.spec.tsx +8 -8
  254. package/src/components/drawer/drawer-toggle-button.spec.tsx +22 -22
  255. package/src/components/drawer/index.spec.tsx +36 -36
  256. package/src/components/dropdown.spec.tsx +38 -30
  257. package/src/components/fab.spec.tsx +4 -4
  258. package/src/components/form.spec.tsx +37 -37
  259. package/src/components/grid.spec.tsx +3 -3
  260. package/src/components/grid.tsx +3 -0
  261. package/src/components/image.spec.tsx +55 -52
  262. package/src/components/inputs/autocomplete.spec.tsx +7 -14
  263. package/src/components/inputs/autocomplete.tsx +3 -0
  264. package/src/components/inputs/checkbox.spec.tsx +22 -22
  265. package/src/components/inputs/input-number.spec.tsx +47 -47
  266. package/src/components/inputs/input.spec.tsx +53 -53
  267. package/src/components/inputs/radio-group.spec.tsx +14 -14
  268. package/src/components/inputs/radio.spec.tsx +16 -16
  269. package/src/components/inputs/select.spec.tsx +74 -74
  270. package/src/components/inputs/slider.spec.tsx +16 -16
  271. package/src/components/inputs/switch.spec.tsx +24 -24
  272. package/src/components/inputs/text-area.spec.tsx +17 -17
  273. package/src/components/linear-progress.spec.tsx +2 -2
  274. package/src/components/list/list.spec.tsx +209 -36
  275. package/src/components/list/list.tsx +56 -19
  276. package/src/components/markdown/markdown-display.spec.tsx +15 -15
  277. package/src/components/markdown/markdown-editor.spec.tsx +8 -8
  278. package/src/components/markdown/markdown-input.spec.tsx +159 -17
  279. package/src/components/markdown/markdown-input.tsx +65 -1
  280. package/src/components/menu/menu.spec.tsx +28 -28
  281. package/src/components/modal.spec.tsx +15 -18
  282. package/src/components/noty-list.spec.tsx +25 -23
  283. package/src/components/page-container/index.spec.tsx +16 -16
  284. package/src/components/page-container/page-header.spec.tsx +16 -16
  285. package/src/components/page-layout/index.spec.tsx +29 -29
  286. package/src/components/paper.spec.tsx +3 -3
  287. package/src/components/rating.spec.tsx +61 -61
  288. package/src/components/skeleton.spec.tsx +10 -6
  289. package/src/components/suggest/index.spec.tsx +83 -0
  290. package/src/components/suggest/index.tsx +36 -3
  291. package/src/components/suggest/suggest-input.spec.tsx +4 -10
  292. package/src/components/tabs.spec.tsx +30 -30
  293. package/src/components/tree/tree.spec.tsx +27 -27
  294. package/src/components/typography.spec.tsx +3 -3
  295. package/src/components/wizard/index.spec.tsx +123 -6
  296. package/src/components/wizard/index.tsx +125 -0
  297. package/src/utils/promisify-animation.ts +3 -0
@@ -1,6 +1,6 @@
1
1
  import { Injector } from '@furystack/inject';
2
- import { createComponent, initializeShadeRoot } from '@furystack/shades';
3
- import { sleepAsync, usingAsync } from '@furystack/utils';
2
+ import { createComponent, flushUpdates, initializeShadeRoot } from '@furystack/shades';
3
+ import { usingAsync } from '@furystack/utils';
4
4
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
5
5
  import { ListService } from '../../services/list-service.js';
6
6
  import { List } from './list.js';
@@ -29,7 +29,7 @@ describe('List', () => {
29
29
  rootElement,
30
30
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
31
31
  });
32
- await sleepAsync(50);
32
+ await flushUpdates();
33
33
  const list = document.querySelector('shade-list');
34
34
  expect(list).not.toBeNull();
35
35
  service[Symbol.dispose]();
@@ -44,7 +44,7 @@ describe('List', () => {
44
44
  rootElement,
45
45
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
46
46
  });
47
- await sleepAsync(50);
47
+ await flushUpdates();
48
48
  const list = document.querySelector('shade-list');
49
49
  const items = list?.querySelectorAll('shade-list-item');
50
50
  expect(items?.length).toBe(3);
@@ -60,7 +60,7 @@ describe('List', () => {
60
60
  rootElement,
61
61
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
62
62
  });
63
- await sleepAsync(50);
63
+ await flushUpdates();
64
64
  const list = document.querySelector('shade-list');
65
65
  const listbox = list?.querySelector('[role="listbox"]');
66
66
  expect(listbox).not.toBeNull();
@@ -77,7 +77,7 @@ describe('List', () => {
77
77
  rootElement,
78
78
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
79
79
  });
80
- await sleepAsync(50);
80
+ await flushUpdates();
81
81
  const list = document.querySelector('shade-list');
82
82
  const options = list?.querySelectorAll('[role="option"]');
83
83
  expect(options?.length).toBe(3);
@@ -93,7 +93,7 @@ describe('List', () => {
93
93
  rootElement,
94
94
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), renderIcon: () => createComponent("span", { "data-testid": "icon" }, "icon") })),
95
95
  });
96
- await sleepAsync(50);
96
+ await flushUpdates();
97
97
  const list = document.querySelector('shade-list');
98
98
  const icons = list?.querySelectorAll('[data-testid="icon"]');
99
99
  expect(icons?.length).toBe(3);
@@ -109,7 +109,7 @@ describe('List', () => {
109
109
  rootElement,
110
110
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), renderSecondaryActions: () => [createComponent("button", { "data-testid": "action" }, "Edit")] })),
111
111
  });
112
- await sleepAsync(50);
112
+ await flushUpdates();
113
113
  const list = document.querySelector('shade-list');
114
114
  const actions = list?.querySelectorAll('[data-testid="action"]');
115
115
  expect(actions?.length).toBe(3);
@@ -125,7 +125,7 @@ describe('List', () => {
125
125
  rootElement,
126
126
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), variant: "contained" })),
127
127
  });
128
- await sleepAsync(50);
128
+ await flushUpdates();
129
129
  const list = document.querySelector('shade-list');
130
130
  expect(list?.getAttribute('data-variant')).toBe('contained');
131
131
  service[Symbol.dispose]();
@@ -140,7 +140,7 @@ describe('List', () => {
140
140
  rootElement,
141
141
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
142
142
  });
143
- await sleepAsync(50);
143
+ await flushUpdates();
144
144
  expect(service.items.getValue()).toEqual(testItems);
145
145
  service[Symbol.dispose]();
146
146
  });
@@ -157,7 +157,7 @@ describe('List', () => {
157
157
  rootElement,
158
158
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
159
159
  });
160
- await sleepAsync(50);
160
+ await flushUpdates();
161
161
  const list = document.querySelector('shade-list');
162
162
  const wrapper = list?.querySelector('.shade-list-wrapper');
163
163
  wrapper?.click();
@@ -176,7 +176,7 @@ describe('List', () => {
176
176
  createComponent("div", { "data-testid": "outside" }, "Outside"),
177
177
  createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) }))),
178
178
  });
179
- await sleepAsync(50);
179
+ await flushUpdates();
180
180
  const list = document.querySelector('shade-list');
181
181
  const wrapper = list?.querySelector('.shade-list-wrapper');
182
182
  wrapper?.click();
@@ -196,7 +196,7 @@ describe('List', () => {
196
196
  rootElement,
197
197
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
198
198
  });
199
- await sleepAsync(50);
199
+ await flushUpdates();
200
200
  const list = document.querySelector('shade-list');
201
201
  const listItems = list?.querySelectorAll('shade-list-item');
202
202
  listItems[1]?.click();
@@ -213,9 +213,9 @@ describe('List', () => {
213
213
  rootElement,
214
214
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
215
215
  });
216
- await sleepAsync(50);
216
+ await flushUpdates();
217
217
  service.focusedItem.setValue(testItems[1]);
218
- await sleepAsync(10);
218
+ await flushUpdates();
219
219
  const list = document.querySelector('shade-list');
220
220
  const listItems = list?.querySelectorAll('shade-list-item');
221
221
  expect(listItems[1]?.hasAttribute('data-focused')).toBe(true);
@@ -234,9 +234,9 @@ describe('List', () => {
234
234
  rootElement,
235
235
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
236
236
  });
237
- await sleepAsync(50);
237
+ await flushUpdates();
238
238
  service.selection.setValue([testItems[0], testItems[2]]);
239
- await sleepAsync(10);
239
+ await flushUpdates();
240
240
  const list = document.querySelector('shade-list');
241
241
  const listItems = list?.querySelectorAll('shade-list-item');
242
242
  expect(listItems[0]?.hasAttribute('data-selected')).toBe(true);
@@ -254,9 +254,9 @@ describe('List', () => {
254
254
  rootElement,
255
255
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
256
256
  });
257
- await sleepAsync(50);
257
+ await flushUpdates();
258
258
  service.selection.setValue([testItems[0]]);
259
- await sleepAsync(10);
259
+ await flushUpdates();
260
260
  const list = document.querySelector('shade-list');
261
261
  const listItems = list?.querySelectorAll('shade-list-item');
262
262
  expect(listItems[0]?.getAttribute('aria-selected')).toBe('true');
@@ -274,9 +274,9 @@ describe('List', () => {
274
274
  rootElement,
275
275
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), onSelectionChange: onSelectionChange })),
276
276
  });
277
- await sleepAsync(50);
277
+ await flushUpdates();
278
278
  service.selection.setValue([testItems[0]]);
279
- await sleepAsync(10);
279
+ await flushUpdates();
280
280
  expect(onSelectionChange).toHaveBeenCalledWith([testItems[0]]);
281
281
  service[Symbol.dispose]();
282
282
  });
@@ -294,7 +294,7 @@ describe('List', () => {
294
294
  rootElement,
295
295
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
296
296
  });
297
- await sleepAsync(50);
297
+ await flushUpdates();
298
298
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowDown', bubbles: true }));
299
299
  expect(service.focusedItem.getValue()).toEqual(testItems[1]);
300
300
  service[Symbol.dispose]();
@@ -311,7 +311,7 @@ describe('List', () => {
311
311
  rootElement,
312
312
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
313
313
  });
314
- await sleepAsync(50);
314
+ await flushUpdates();
315
315
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowUp', bubbles: true }));
316
316
  expect(service.focusedItem.getValue()).toEqual(testItems[0]);
317
317
  service[Symbol.dispose]();
@@ -328,7 +328,7 @@ describe('List', () => {
328
328
  rootElement,
329
329
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
330
330
  });
331
- await sleepAsync(50);
331
+ await flushUpdates();
332
332
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Home', bubbles: true }));
333
333
  expect(service.focusedItem.getValue()).toEqual(testItems[0]);
334
334
  service[Symbol.dispose]();
@@ -345,7 +345,7 @@ describe('List', () => {
345
345
  rootElement,
346
346
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
347
347
  });
348
- await sleepAsync(50);
348
+ await flushUpdates();
349
349
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'End', bubbles: true }));
350
350
  expect(service.focusedItem.getValue()).toEqual(testItems[2]);
351
351
  service[Symbol.dispose]();
@@ -362,7 +362,7 @@ describe('List', () => {
362
362
  rootElement,
363
363
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
364
364
  });
365
- await sleepAsync(50);
365
+ await flushUpdates();
366
366
  window.dispatchEvent(new KeyboardEvent('keydown', { key: ' ', bubbles: true }));
367
367
  expect(service.selection.getValue()).toContain(testItems[0]);
368
368
  window.dispatchEvent(new KeyboardEvent('keydown', { key: ' ', bubbles: true }));
@@ -380,7 +380,7 @@ describe('List', () => {
380
380
  rootElement,
381
381
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
382
382
  });
383
- await sleepAsync(50);
383
+ await flushUpdates();
384
384
  window.dispatchEvent(new KeyboardEvent('keydown', { key: '+', bubbles: true }));
385
385
  expect(service.selection.getValue().length).toBe(3);
386
386
  service[Symbol.dispose]();
@@ -397,7 +397,7 @@ describe('List', () => {
397
397
  rootElement,
398
398
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
399
399
  });
400
- await sleepAsync(50);
400
+ await flushUpdates();
401
401
  window.dispatchEvent(new KeyboardEvent('keydown', { key: '-', bubbles: true }));
402
402
  expect(service.selection.getValue().length).toBe(0);
403
403
  service[Symbol.dispose]();
@@ -414,7 +414,7 @@ describe('List', () => {
414
414
  rootElement,
415
415
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
416
416
  });
417
- await sleepAsync(50);
417
+ await flushUpdates();
418
418
  window.dispatchEvent(new KeyboardEvent('keydown', { key: '*', bubbles: true }));
419
419
  const selection = service.selection.getValue();
420
420
  expect(selection).not.toContain(testItems[0]);
@@ -435,7 +435,7 @@ describe('List', () => {
435
435
  rootElement,
436
436
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
437
437
  });
438
- await sleepAsync(50);
438
+ await flushUpdates();
439
439
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape', bubbles: true }));
440
440
  expect(service.selection.getValue()).toEqual([]);
441
441
  expect(service.searchTerm.getValue()).toBe('');
@@ -452,7 +452,7 @@ describe('List', () => {
452
452
  rootElement,
453
453
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
454
454
  });
455
- await sleepAsync(50);
455
+ await flushUpdates();
456
456
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Tab', bubbles: true }));
457
457
  expect(service.hasFocus.getValue()).toBe(false);
458
458
  service[Symbol.dispose]();
@@ -469,7 +469,7 @@ describe('List', () => {
469
469
  rootElement,
470
470
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
471
471
  });
472
- await sleepAsync(50);
472
+ await flushUpdates();
473
473
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowDown', bubbles: true }));
474
474
  expect(service.focusedItem.getValue()).toEqual(testItems[0]);
475
475
  service[Symbol.dispose]();
@@ -489,7 +489,7 @@ describe('List', () => {
489
489
  rootElement,
490
490
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), onItemActivate: onItemActivate })),
491
491
  });
492
- await sleepAsync(50);
492
+ await flushUpdates();
493
493
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'Enter', bubbles: true }));
494
494
  expect(onItemActivate).toHaveBeenCalledWith(testItems[1]);
495
495
  service[Symbol.dispose]();
@@ -505,7 +505,7 @@ describe('List', () => {
505
505
  rootElement,
506
506
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), onItemActivate: onItemActivate })),
507
507
  });
508
- await sleepAsync(50);
508
+ await flushUpdates();
509
509
  const list = document.querySelector('shade-list');
510
510
  const listItems = list?.querySelectorAll('shade-list-item');
511
511
  listItems[0]?.dispatchEvent(new MouseEvent('dblclick', { bubbles: true }));
@@ -514,6 +514,107 @@ describe('List', () => {
514
514
  });
515
515
  });
516
516
  });
517
+ describe('pagination', () => {
518
+ const manyItems = Array.from({ length: 25 }, (_, i) => ({ id: i + 1, name: `Item ${i + 1}` }));
519
+ it('should render only current page items when pagination is provided', async () => {
520
+ await usingAsync(new Injector(), async (injector) => {
521
+ const rootElement = document.getElementById('root');
522
+ const service = createTestService();
523
+ initializeShadeRoot({
524
+ injector,
525
+ rootElement,
526
+ jsxElement: (createComponent(List, { items: manyItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), pagination: { itemsPerPage: 10, page: 1, onPageChange: () => { } } })),
527
+ });
528
+ await flushUpdates();
529
+ const list = document.querySelector('shade-list');
530
+ const listItems = list?.querySelectorAll('shade-list-item');
531
+ expect(listItems?.length).toBe(10);
532
+ service[Symbol.dispose]();
533
+ });
534
+ });
535
+ it('should render the Pagination component', async () => {
536
+ await usingAsync(new Injector(), async (injector) => {
537
+ const rootElement = document.getElementById('root');
538
+ const service = createTestService();
539
+ initializeShadeRoot({
540
+ injector,
541
+ rootElement,
542
+ jsxElement: (createComponent(List, { items: manyItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), pagination: { itemsPerPage: 10, page: 1, onPageChange: () => { } } })),
543
+ });
544
+ await flushUpdates();
545
+ const pagination = document.querySelector('shade-list shade-pagination');
546
+ expect(pagination).not.toBeNull();
547
+ service[Symbol.dispose]();
548
+ });
549
+ });
550
+ it('should show last page items correctly', async () => {
551
+ await usingAsync(new Injector(), async (injector) => {
552
+ const rootElement = document.getElementById('root');
553
+ const service = createTestService();
554
+ initializeShadeRoot({
555
+ injector,
556
+ rootElement,
557
+ jsxElement: (createComponent(List, { items: manyItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), pagination: { itemsPerPage: 10, page: 3, onPageChange: () => { } } })),
558
+ });
559
+ await flushUpdates();
560
+ const list = document.querySelector('shade-list');
561
+ const listItems = list?.querySelectorAll('shade-list-item');
562
+ expect(listItems?.length).toBe(5);
563
+ service[Symbol.dispose]();
564
+ });
565
+ });
566
+ it('should not render Pagination when all items fit on one page', async () => {
567
+ await usingAsync(new Injector(), async (injector) => {
568
+ const rootElement = document.getElementById('root');
569
+ const service = createTestService();
570
+ initializeShadeRoot({
571
+ injector,
572
+ rootElement,
573
+ jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), pagination: { itemsPerPage: 10, page: 1, onPageChange: () => { } } })),
574
+ });
575
+ await flushUpdates();
576
+ const pagination = document.querySelector('shade-list shade-pagination');
577
+ expect(pagination).toBeNull();
578
+ service[Symbol.dispose]();
579
+ });
580
+ });
581
+ it('should call onPageChange when a pagination button is clicked', async () => {
582
+ const onPageChange = vi.fn();
583
+ await usingAsync(new Injector(), async (injector) => {
584
+ const rootElement = document.getElementById('root');
585
+ const service = createTestService();
586
+ initializeShadeRoot({
587
+ injector,
588
+ rootElement,
589
+ jsxElement: (createComponent(List, { items: manyItems, listService: service, renderItem: (item) => createComponent("span", null, item.name), pagination: { itemsPerPage: 10, page: 1, onPageChange } })),
590
+ });
591
+ await flushUpdates();
592
+ const nextButton = document.querySelector('shade-list shade-pagination [aria-label="Go to next page"]');
593
+ expect(nextButton).not.toBeNull();
594
+ nextButton.click();
595
+ expect(onPageChange).toHaveBeenCalledWith(2);
596
+ service[Symbol.dispose]();
597
+ });
598
+ });
599
+ it('should render all items when pagination is not provided', async () => {
600
+ await usingAsync(new Injector(), async (injector) => {
601
+ const rootElement = document.getElementById('root');
602
+ const service = createTestService();
603
+ initializeShadeRoot({
604
+ injector,
605
+ rootElement,
606
+ jsxElement: (createComponent(List, { items: manyItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
607
+ });
608
+ await flushUpdates();
609
+ const list = document.querySelector('shade-list');
610
+ const listItems = list?.querySelectorAll('shade-list-item');
611
+ expect(listItems?.length).toBe(25);
612
+ const pagination = document.querySelector('shade-list shade-pagination');
613
+ expect(pagination).toBeNull();
614
+ service[Symbol.dispose]();
615
+ });
616
+ });
617
+ });
517
618
  describe('keyboard listener cleanup', () => {
518
619
  it('should remove keyboard listener when component is disconnected', async () => {
519
620
  await usingAsync(new Injector(), async (injector) => {
@@ -526,10 +627,10 @@ describe('List', () => {
526
627
  rootElement,
527
628
  jsxElement: (createComponent(List, { items: testItems, listService: service, renderItem: (item) => createComponent("span", null, item.name) })),
528
629
  });
529
- await sleepAsync(50);
630
+ await flushUpdates();
530
631
  const list = document.querySelector('shade-list');
531
632
  list.remove();
532
- await sleepAsync(10);
633
+ await flushUpdates();
533
634
  window.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowDown', bubbles: true }));
534
635
  expect(service.focusedItem.getValue()).toEqual(testItems[0]);
535
636
  service[Symbol.dispose]();
@@ -1 +1 @@
1
- {"version":3,"file":"list.spec.js","sourceRoot":"","sources":["../../../src/components/list/list.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.spec.js","sourceRoot":"","sources":["../../../src/components/list/list.spec.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Injector } from '@furystack/inject';
2
- import { createComponent, initializeShadeRoot } from '@furystack/shades';
3
- import { sleepAsync, usingAsync } from '@furystack/utils';
2
+ import { createComponent, flushUpdates, initializeShadeRoot } from '@furystack/shades';
3
+ import { usingAsync } from '@furystack/utils';
4
4
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
5
5
  import { MarkdownDisplay } from './markdown-display.js';
6
6
  describe('MarkdownDisplay', () => {
@@ -19,7 +19,7 @@ describe('MarkdownDisplay', () => {
19
19
  rootElement,
20
20
  jsxElement: createComponent(MarkdownDisplay, { content: "Hello" }),
21
21
  });
22
- await sleepAsync(50);
22
+ await flushUpdates();
23
23
  const el = document.querySelector('shade-markdown-display');
24
24
  expect(el).not.toBeNull();
25
25
  });
@@ -32,7 +32,7 @@ describe('MarkdownDisplay', () => {
32
32
  rootElement,
33
33
  jsxElement: createComponent(MarkdownDisplay, { content: "# Hello World" }),
34
34
  });
35
- await sleepAsync(50);
35
+ await flushUpdates();
36
36
  const typography = document.querySelector('shade-markdown-display shade-typography');
37
37
  expect(typography).not.toBeNull();
38
38
  expect(typography?.getAttribute('data-variant')).toBe('h1');
@@ -47,7 +47,7 @@ describe('MarkdownDisplay', () => {
47
47
  rootElement,
48
48
  jsxElement: createComponent(MarkdownDisplay, { content: "Just a paragraph." }),
49
49
  });
50
- await sleepAsync(50);
50
+ await flushUpdates();
51
51
  const typography = document.querySelector('shade-markdown-display shade-typography[data-variant="body1"]');
52
52
  expect(typography).not.toBeNull();
53
53
  expect(typography?.textContent).toContain('Just a paragraph.');
@@ -61,7 +61,7 @@ describe('MarkdownDisplay', () => {
61
61
  rootElement,
62
62
  jsxElement: createComponent(MarkdownDisplay, { content: '```js\nconsole.log("hi")\n```' }),
63
63
  });
64
- await sleepAsync(50);
64
+ await flushUpdates();
65
65
  const codeBlock = document.querySelector('shade-markdown-display .md-code-block');
66
66
  expect(codeBlock).not.toBeNull();
67
67
  expect(codeBlock?.textContent).toContain('console.log("hi")');
@@ -75,7 +75,7 @@ describe('MarkdownDisplay', () => {
75
75
  rootElement,
76
76
  jsxElement: createComponent(MarkdownDisplay, { content: '- Item A\n- Item B' }),
77
77
  });
78
- await sleepAsync(50);
78
+ await flushUpdates();
79
79
  const list = document.querySelector('shade-markdown-display ul');
80
80
  expect(list).not.toBeNull();
81
81
  const items = document.querySelectorAll('shade-markdown-display .md-list-item');
@@ -90,7 +90,7 @@ describe('MarkdownDisplay', () => {
90
90
  rootElement,
91
91
  jsxElement: createComponent(MarkdownDisplay, { content: "- [ ] Task" }),
92
92
  });
93
- await sleepAsync(50);
93
+ await flushUpdates();
94
94
  const checkbox = document.querySelector('shade-markdown-display shade-checkbox');
95
95
  expect(checkbox).not.toBeNull();
96
96
  expect(checkbox?.hasAttribute('data-disabled')).toBe(true);
@@ -105,14 +105,14 @@ describe('MarkdownDisplay', () => {
105
105
  rootElement,
106
106
  jsxElement: createComponent(MarkdownDisplay, { content: "- [ ] Task", readOnly: false, onChange: onChange }),
107
107
  });
108
- await sleepAsync(50);
108
+ await flushUpdates();
109
109
  const checkbox = document.querySelector('shade-markdown-display shade-checkbox');
110
110
  expect(checkbox).not.toBeNull();
111
111
  expect(checkbox?.hasAttribute('data-disabled')).toBe(false);
112
112
  const input = checkbox?.querySelector('input[type="checkbox"]');
113
113
  expect(input).not.toBeNull();
114
114
  input.click();
115
- await sleepAsync(50);
115
+ await flushUpdates();
116
116
  expect(onChange).toHaveBeenCalledOnce();
117
117
  expect(onChange).toHaveBeenCalledWith('- [x] Task');
118
118
  });
@@ -125,7 +125,7 @@ describe('MarkdownDisplay', () => {
125
125
  rootElement,
126
126
  jsxElement: createComponent(MarkdownDisplay, { content: "> Quote text" }),
127
127
  });
128
- await sleepAsync(50);
128
+ await flushUpdates();
129
129
  const bq = document.querySelector('shade-markdown-display .md-blockquote');
130
130
  expect(bq).not.toBeNull();
131
131
  expect(bq?.textContent).toContain('Quote text');
@@ -139,7 +139,7 @@ describe('MarkdownDisplay', () => {
139
139
  rootElement,
140
140
  jsxElement: createComponent(MarkdownDisplay, { content: "---" }),
141
141
  });
142
- await sleepAsync(50);
142
+ await flushUpdates();
143
143
  const hr = document.querySelector('shade-markdown-display .md-hr');
144
144
  expect(hr).not.toBeNull();
145
145
  });
@@ -152,7 +152,7 @@ describe('MarkdownDisplay', () => {
152
152
  rootElement,
153
153
  jsxElement: createComponent(MarkdownDisplay, { content: "[Click here](https://example.com)" }),
154
154
  });
155
- await sleepAsync(50);
155
+ await flushUpdates();
156
156
  const link = document.querySelector('shade-markdown-display .md-link');
157
157
  expect(link).not.toBeNull();
158
158
  expect(link?.href).toContain('example.com');
@@ -167,7 +167,7 @@ describe('MarkdownDisplay', () => {
167
167
  rootElement,
168
168
  jsxElement: createComponent(MarkdownDisplay, { content: "![alt text](image.png)" }),
169
169
  });
170
- await sleepAsync(50);
170
+ await flushUpdates();
171
171
  const img = document.querySelector('shade-markdown-display .md-image');
172
172
  expect(img).not.toBeNull();
173
173
  expect(img?.alt).toBe('alt text');
@@ -181,7 +181,7 @@ describe('MarkdownDisplay', () => {
181
181
  rootElement,
182
182
  jsxElement: createComponent(MarkdownDisplay, { content: "" }),
183
183
  });
184
- await sleepAsync(50);
184
+ await flushUpdates();
185
185
  const root = document.querySelector('shade-markdown-display .md-root');
186
186
  expect(root).not.toBeNull();
187
187
  expect(root?.children.length).toBe(0);