@arbor-education/design-system.components 0.1.5 → 0.2.1

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 (174) hide show
  1. package/.github/workflows/release.yml +1 -1
  2. package/CHANGELOG.md +12 -0
  3. package/dist/components/formField/fieldset/Fieldset.d.ts +6 -0
  4. package/dist/components/formField/fieldset/Fieldset.d.ts.map +1 -0
  5. package/dist/components/formField/fieldset/Fieldset.js +7 -0
  6. package/dist/components/formField/fieldset/Fieldset.js.map +1 -0
  7. package/dist/components/formField/fieldset/Fieldset.stories.d.ts +28 -0
  8. package/dist/components/formField/fieldset/Fieldset.stories.d.ts.map +1 -0
  9. package/dist/components/formField/fieldset/Fieldset.stories.js +51 -0
  10. package/dist/components/formField/fieldset/Fieldset.stories.js.map +1 -0
  11. package/dist/components/formField/fieldset/Fieldset.test.d.ts +2 -0
  12. package/dist/components/formField/fieldset/Fieldset.test.d.ts.map +1 -0
  13. package/dist/components/formField/fieldset/Fieldset.test.js +62 -0
  14. package/dist/components/formField/fieldset/Fieldset.test.js.map +1 -0
  15. package/dist/components/formField/inputs/checkbox/CheckboxGroup.d.ts +8 -0
  16. package/dist/components/formField/inputs/checkbox/CheckboxGroup.d.ts.map +1 -0
  17. package/dist/components/formField/inputs/checkbox/CheckboxGroup.js +8 -0
  18. package/dist/components/formField/inputs/checkbox/CheckboxGroup.js.map +1 -0
  19. package/dist/components/formField/inputs/checkbox/CheckboxGroup.test.d.ts +2 -0
  20. package/dist/components/formField/inputs/checkbox/CheckboxGroup.test.d.ts.map +1 -0
  21. package/dist/components/formField/inputs/checkbox/CheckboxGroup.test.js +86 -0
  22. package/dist/components/formField/inputs/checkbox/CheckboxGroup.test.js.map +1 -0
  23. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.d.ts +3 -1
  24. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.d.ts.map +1 -1
  25. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.js +7 -0
  26. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.js.map +1 -1
  27. package/dist/components/formField/inputs/radio/RadioButtonGroup.d.ts +11 -0
  28. package/dist/components/formField/inputs/radio/RadioButtonGroup.d.ts.map +1 -0
  29. package/dist/components/formField/inputs/radio/RadioButtonGroup.js +8 -0
  30. package/dist/components/formField/inputs/radio/RadioButtonGroup.js.map +1 -0
  31. package/dist/components/formField/inputs/radio/RadioButtonGroup.test.d.ts +2 -0
  32. package/dist/components/formField/inputs/radio/RadioButtonGroup.test.d.ts.map +1 -0
  33. package/dist/components/formField/inputs/radio/RadioButtonGroup.test.js +86 -0
  34. package/dist/components/formField/inputs/radio/RadioButtonGroup.test.js.map +1 -0
  35. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.d.ts.map +1 -1
  36. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.js +8 -2
  37. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.js.map +1 -1
  38. package/dist/components/modal/Modal.d.ts +25 -0
  39. package/dist/components/modal/Modal.d.ts.map +1 -0
  40. package/dist/components/modal/Modal.js +22 -0
  41. package/dist/components/modal/Modal.js.map +1 -0
  42. package/dist/components/modal/Modal.stories.d.ts +13 -0
  43. package/dist/components/modal/Modal.stories.d.ts.map +1 -0
  44. package/dist/components/modal/Modal.stories.js +23 -0
  45. package/dist/components/modal/Modal.stories.js.map +1 -0
  46. package/dist/components/modal/Modal.test.d.ts +2 -0
  47. package/dist/components/modal/Modal.test.d.ts.map +1 -0
  48. package/dist/components/modal/Modal.test.js +131 -0
  49. package/dist/components/modal/Modal.test.js.map +1 -0
  50. package/dist/components/modal/ModalBody.d.ts +7 -0
  51. package/dist/components/modal/ModalBody.d.ts.map +1 -0
  52. package/dist/components/modal/ModalBody.js +7 -0
  53. package/dist/components/modal/ModalBody.js.map +1 -0
  54. package/dist/components/modal/ModalCloseButton.d.ts +3 -0
  55. package/dist/components/modal/ModalCloseButton.d.ts.map +1 -0
  56. package/dist/components/modal/ModalCloseButton.js +25 -0
  57. package/dist/components/modal/ModalCloseButton.js.map +1 -0
  58. package/dist/components/modal/ModalFooter.d.ts +7 -0
  59. package/dist/components/modal/ModalFooter.d.ts.map +1 -0
  60. package/dist/components/modal/ModalFooter.js +7 -0
  61. package/dist/components/modal/ModalFooter.js.map +1 -0
  62. package/dist/components/modal/ModalHeader.d.ts +7 -0
  63. package/dist/components/modal/ModalHeader.d.ts.map +1 -0
  64. package/dist/components/modal/ModalHeader.js +8 -0
  65. package/dist/components/modal/ModalHeader.js.map +1 -0
  66. package/dist/components/modal/ModalTitle.d.ts +3 -0
  67. package/dist/components/modal/ModalTitle.d.ts.map +1 -0
  68. package/dist/components/modal/ModalTitle.js +8 -0
  69. package/dist/components/modal/ModalTitle.js.map +1 -0
  70. package/dist/components/modal/modalManager/ModalManager.d.ts +7 -0
  71. package/dist/components/modal/modalManager/ModalManager.d.ts.map +1 -0
  72. package/dist/components/modal/modalManager/ModalManager.js +22 -0
  73. package/dist/components/modal/modalManager/ModalManager.js.map +1 -0
  74. package/dist/components/modal/modalManager/ModalManager.stories.d.ts +13 -0
  75. package/dist/components/modal/modalManager/ModalManager.stories.d.ts.map +1 -0
  76. package/dist/components/modal/modalManager/ModalManager.stories.js +110 -0
  77. package/dist/components/modal/modalManager/ModalManager.stories.js.map +1 -0
  78. package/dist/components/modal/modalManager/ModalManager.test.d.ts +2 -0
  79. package/dist/components/modal/modalManager/ModalManager.test.d.ts.map +1 -0
  80. package/dist/components/modal/modalManager/ModalManager.test.js +191 -0
  81. package/dist/components/modal/modalManager/ModalManager.test.js.map +1 -0
  82. package/dist/components/separator/Separator.d.ts +7 -0
  83. package/dist/components/separator/Separator.d.ts.map +1 -0
  84. package/dist/components/separator/Separator.js +8 -0
  85. package/dist/components/separator/Separator.js.map +1 -0
  86. package/dist/components/separator/Separator.stories.d.ts +10 -0
  87. package/dist/components/separator/Separator.stories.d.ts.map +1 -0
  88. package/dist/components/separator/Separator.stories.js +12 -0
  89. package/dist/components/separator/Separator.stories.js.map +1 -0
  90. package/dist/components/separator/Separator.test.d.ts +2 -0
  91. package/dist/components/separator/Separator.test.d.ts.map +1 -0
  92. package/dist/components/separator/Separator.test.js +10 -0
  93. package/dist/components/separator/Separator.test.js.map +1 -0
  94. package/dist/components/table/Table.d.ts +20 -0
  95. package/dist/components/table/Table.d.ts.map +1 -1
  96. package/dist/components/table/Table.js +45 -7
  97. package/dist/components/table/Table.js.map +1 -1
  98. package/dist/components/table/Table.stories.d.ts.map +1 -1
  99. package/dist/components/table/Table.stories.js +14 -1
  100. package/dist/components/table/Table.stories.js.map +1 -1
  101. package/dist/components/table/Table.test.js +315 -2
  102. package/dist/components/table/Table.test.js.map +1 -1
  103. package/dist/components/table/pagination/TableSettingsDropdown.d.ts +2 -0
  104. package/dist/components/table/pagination/TableSettingsDropdown.d.ts.map +1 -0
  105. package/dist/components/table/pagination/TableSettingsDropdown.js +43 -0
  106. package/dist/components/table/pagination/TableSettingsDropdown.js.map +1 -0
  107. package/dist/components/table/useTableSettings.d.ts +22 -0
  108. package/dist/components/table/useTableSettings.d.ts.map +1 -0
  109. package/dist/components/table/useTableSettings.js +36 -0
  110. package/dist/components/table/useTableSettings.js.map +1 -0
  111. package/dist/index.css +102 -1
  112. package/dist/index.css.map +1 -1
  113. package/dist/index.d.ts +4 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +4 -0
  116. package/dist/index.js.map +1 -1
  117. package/dist/utils/Constants.d.ts +5 -0
  118. package/dist/utils/Constants.d.ts.map +1 -1
  119. package/dist/utils/Constants.js +5 -0
  120. package/dist/utils/Constants.js.map +1 -1
  121. package/dist/utils/ModalUtils.d.ts +7 -0
  122. package/dist/utils/ModalUtils.d.ts.map +1 -0
  123. package/dist/utils/ModalUtils.js +14 -0
  124. package/dist/utils/ModalUtils.js.map +1 -0
  125. package/dist/utils/hooks/useComponentDidUpdate.d.ts +7 -0
  126. package/dist/utils/hooks/useComponentDidUpdate.d.ts.map +1 -0
  127. package/dist/utils/hooks/useComponentDidUpdate.js +18 -0
  128. package/dist/utils/hooks/useComponentDidUpdate.js.map +1 -0
  129. package/dist/utils/hooks/useComponentDidUpdate.test.d.ts +2 -0
  130. package/dist/utils/hooks/useComponentDidUpdate.test.d.ts.map +1 -0
  131. package/dist/utils/hooks/useComponentDidUpdate.test.js +69 -0
  132. package/dist/utils/hooks/useComponentDidUpdate.test.js.map +1 -0
  133. package/package.json +1 -1
  134. package/src/components/formField/fieldset/Fieldset.stories.tsx +89 -0
  135. package/src/components/formField/fieldset/Fieldset.test.tsx +85 -0
  136. package/src/components/formField/fieldset/Fieldset.tsx +17 -0
  137. package/src/components/formField/fieldset/fieldset.scss +19 -0
  138. package/src/components/formField/inputs/checkbox/CheckboxGroup.test.tsx +127 -0
  139. package/src/components/formField/inputs/checkbox/CheckboxGroup.tsx +17 -0
  140. package/src/components/formField/inputs/checkbox/CheckboxInput.stories.tsx +12 -1
  141. package/src/components/formField/inputs/radio/RadioButtonGroup.test.tsx +190 -0
  142. package/src/components/formField/inputs/radio/RadioButtonGroup.tsx +22 -0
  143. package/src/components/formField/inputs/radio/RadioButtonInput.stories.tsx +16 -7
  144. package/src/components/formField/label/label.scss +1 -1
  145. package/src/components/modal/Modal.stories.tsx +37 -0
  146. package/src/components/modal/Modal.test.tsx +244 -0
  147. package/src/components/modal/Modal.tsx +65 -0
  148. package/src/components/modal/ModalBody.tsx +16 -0
  149. package/src/components/modal/ModalCloseButton.tsx +39 -0
  150. package/src/components/modal/ModalFooter.tsx +14 -0
  151. package/src/components/modal/ModalHeader.tsx +20 -0
  152. package/src/components/modal/ModalTitle.tsx +12 -0
  153. package/src/components/modal/modal.scss +74 -0
  154. package/src/components/modal/modalManager/ModalManager.stories.tsx +497 -0
  155. package/src/components/modal/modalManager/ModalManager.test.tsx +255 -0
  156. package/src/components/modal/modalManager/ModalManager.tsx +40 -0
  157. package/src/components/modal/modalManager/modalManager.scss +4 -0
  158. package/src/components/separator/Separator.stories.tsx +15 -0
  159. package/src/components/separator/Separator.test.tsx +10 -0
  160. package/src/components/separator/Separator.tsx +15 -0
  161. package/src/components/separator/separator.scss +6 -0
  162. package/src/components/table/Table.stories.tsx +14 -1
  163. package/src/components/table/Table.test.tsx +553 -1
  164. package/src/components/table/Table.tsx +80 -24
  165. package/src/components/table/pagination/TableSettingsDropdown.tsx +90 -0
  166. package/src/components/table/table.scss +8 -0
  167. package/src/components/table/useTableSettings.ts +59 -0
  168. package/src/index.scss +4 -0
  169. package/src/index.ts +4 -0
  170. package/src/tokens.scss +1 -0
  171. package/src/utils/Constants.ts +6 -0
  172. package/src/utils/ModalUtils.ts +17 -0
  173. package/src/utils/hooks/useComponentDidUpdate.test.ts +107 -0
  174. package/src/utils/hooks/useComponentDidUpdate.ts +19 -0
@@ -1,10 +1,11 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { describe, expect, expectTypeOf, test, vi } from 'vitest';
3
3
  import { render, screen, waitFor } from '@testing-library/react';
4
- import { Table } from './Table';
4
+ import { Table, TABLE_SPACING } from './Table';
5
5
  import '@testing-library/jest-dom/vitest';
6
6
  import { BulkActionsDropdown } from '../table/BulkActionsDropdown';
7
7
  import { HideColumnsDropdown } from '../table/HideColumnsDropdown';
8
+ import { TableSettingsDropdown } from './pagination/TableSettingsDropdown';
8
9
  import userEvent from '@testing-library/user-event';
9
10
  describe('Table', () => {
10
11
  test('renders table container', () => {
@@ -243,5 +244,317 @@ describe('Table', () => {
243
244
  expect(container.querySelector('button')).toBeNull();
244
245
  });
245
246
  });
247
+ describe('TableSettingsDropdown', () => {
248
+ test('renders settings dropdown button in header', async () => {
249
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
250
+ await waitFor(() => {
251
+ const button = screen.getByRole('button', { name: /Table settings/i });
252
+ expect(button).toBeInTheDocument();
253
+ });
254
+ });
255
+ test('opens dropdown when settings button is clicked', async () => {
256
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
257
+ const settingsButton = screen.getByRole('button', { name: /Table settings/i });
258
+ await userEvent.click(settingsButton);
259
+ await waitFor(() => {
260
+ expect(screen.getByText('Table spacing')).toBeInTheDocument();
261
+ expect(screen.getByText('Style')).toBeInTheDocument();
262
+ expect(screen.getByText('Reset Table Settings')).toBeInTheDocument();
263
+ });
264
+ });
265
+ test('displays all table spacing options', async () => {
266
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
267
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
268
+ await waitFor(() => {
269
+ expect(screen.getByLabelText('X-Small')).toBeInTheDocument();
270
+ expect(screen.getByLabelText('Small')).toBeInTheDocument();
271
+ expect(screen.getByLabelText('Medium')).toBeInTheDocument();
272
+ expect(screen.getByLabelText('Large')).toBeInTheDocument();
273
+ });
274
+ });
275
+ test('Medium spacing is selected by default', async () => {
276
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
277
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
278
+ await waitFor(() => {
279
+ const mediumRadio = screen.getByLabelText('Medium');
280
+ expect(mediumRadio.checked).toBe(true);
281
+ });
282
+ });
283
+ test('can change table spacing to Small', async () => {
284
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
285
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
286
+ await waitFor(() => {
287
+ expect(screen.getByLabelText('Small')).toBeInTheDocument();
288
+ });
289
+ const smallRadio = screen.getByLabelText('Small');
290
+ await userEvent.click(smallRadio);
291
+ await waitFor(() => {
292
+ expect(smallRadio.checked).toBe(true);
293
+ });
294
+ });
295
+ test('can change table spacing to Large', async () => {
296
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
297
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
298
+ const largeRadio = screen.getByLabelText('Large');
299
+ await userEvent.click(largeRadio);
300
+ await waitFor(() => {
301
+ expect(largeRadio.checked).toBe(true);
302
+ });
303
+ });
304
+ test('can change table spacing to X-Small', async () => {
305
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
306
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
307
+ const xsmallRadio = screen.getByLabelText('X-Small');
308
+ await userEvent.click(xsmallRadio);
309
+ await waitFor(() => {
310
+ expect(xsmallRadio.checked).toBe(true);
311
+ });
312
+ });
313
+ test('displays style options with Column borders and Cell colours', async () => {
314
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
315
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
316
+ await waitFor(() => {
317
+ expect(screen.getByLabelText('Column borders')).toBeInTheDocument();
318
+ expect(screen.getByLabelText('Cell colours')).toBeInTheDocument();
319
+ });
320
+ });
321
+ test('Column borders checkbox is unchecked by default', async () => {
322
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
323
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
324
+ await waitFor(() => {
325
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
326
+ expect(columnBordersCheckbox.checked).toBe(false);
327
+ });
328
+ });
329
+ test('can toggle Column borders checkbox on', async () => {
330
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
331
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
332
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
333
+ await userEvent.click(columnBordersCheckbox);
334
+ await waitFor(() => {
335
+ expect(columnBordersCheckbox.checked).toBe(true);
336
+ });
337
+ });
338
+ test('can toggle Column borders checkbox off after turning it on', async () => {
339
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
340
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
341
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
342
+ await userEvent.click(columnBordersCheckbox);
343
+ await userEvent.click(columnBordersCheckbox);
344
+ await waitFor(() => {
345
+ expect(columnBordersCheckbox.checked).toBe(false);
346
+ });
347
+ });
348
+ test('Cell colours checkbox is unchecked by default', async () => {
349
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
350
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
351
+ await waitFor(() => {
352
+ const cellColoursCheckbox = screen.getByLabelText('Cell colours');
353
+ expect(cellColoursCheckbox.checked).toBe(false);
354
+ });
355
+ });
356
+ test('can toggle Cell colours checkbox on', async () => {
357
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
358
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
359
+ const cellColoursCheckbox = screen.getByLabelText('Cell colours');
360
+ await userEvent.click(cellColoursCheckbox);
361
+ await waitFor(() => {
362
+ expect(cellColoursCheckbox.checked).toBe(true);
363
+ });
364
+ });
365
+ test('can toggle Cell colours checkbox off after turning it on', async () => {
366
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
367
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
368
+ const cellColoursCheckbox = screen.getByLabelText('Cell colours');
369
+ await userEvent.click(cellColoursCheckbox);
370
+ await userEvent.click(cellColoursCheckbox);
371
+ await waitFor(() => {
372
+ expect(cellColoursCheckbox.checked).toBe(false);
373
+ });
374
+ });
375
+ test('displays Reset Table Settings button', async () => {
376
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
377
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
378
+ await waitFor(() => {
379
+ expect(screen.getByRole('button', { name: /Reset Table Settings/i })).toBeInTheDocument();
380
+ });
381
+ });
382
+ test('reset button resets table spacing to default (Medium)', async () => {
383
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
384
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
385
+ // Change to Large
386
+ const largeRadio = screen.getByLabelText('Large');
387
+ await userEvent.click(largeRadio);
388
+ await waitFor(() => {
389
+ expect(largeRadio.checked).toBe(true);
390
+ });
391
+ // Click reset button
392
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
393
+ await userEvent.click(resetButton);
394
+ await waitFor(() => {
395
+ const mediumRadio = screen.getByLabelText('Medium');
396
+ expect(mediumRadio.checked).toBe(true);
397
+ });
398
+ });
399
+ test('reset button resets column borders to default (off)', async () => {
400
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
401
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
402
+ // Turn on column borders
403
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
404
+ await userEvent.click(columnBordersCheckbox);
405
+ await waitFor(() => {
406
+ expect(columnBordersCheckbox.checked).toBe(true);
407
+ });
408
+ // Click reset button
409
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
410
+ await userEvent.click(resetButton);
411
+ await waitFor(() => {
412
+ expect(columnBordersCheckbox.checked).toBe(false);
413
+ });
414
+ });
415
+ test('reset button resets all settings together', async () => {
416
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
417
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
418
+ // Change multiple settings
419
+ const largeRadio = screen.getByLabelText('Large');
420
+ await userEvent.click(largeRadio);
421
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
422
+ await userEvent.click(columnBordersCheckbox);
423
+ await waitFor(() => {
424
+ expect(largeRadio.checked).toBe(true);
425
+ expect(columnBordersCheckbox.checked).toBe(true);
426
+ });
427
+ // Click reset button
428
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
429
+ await userEvent.click(resetButton);
430
+ await waitFor(() => {
431
+ const mediumRadio = screen.getByLabelText('Medium');
432
+ expect(mediumRadio.checked).toBe(true);
433
+ expect(columnBordersCheckbox.checked).toBe(false);
434
+ });
435
+ });
436
+ test('can combine settings dropdown with other header content', async () => {
437
+ render(_jsx(Table, { headerContent: (_jsxs(_Fragment, { children: [_jsx(BulkActionsDropdown, { actions: [
438
+ {
439
+ displayName: 'Test Action',
440
+ callback: () => { },
441
+ },
442
+ ] }), _jsx(TableSettingsDropdown, {})] })) }));
443
+ await waitFor(() => {
444
+ expect(screen.getByText('Actions (1)')).toBeInTheDocument();
445
+ expect(screen.getByRole('button', { name: /Table settings/i })).toBeInTheDocument();
446
+ });
447
+ });
448
+ test('settings persist when dropdown is closed and reopened', async () => {
449
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}) }));
450
+ // Open dropdown and change settings
451
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
452
+ const smallRadio = screen.getByLabelText('Small');
453
+ await userEvent.click(smallRadio);
454
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
455
+ await userEvent.click(columnBordersCheckbox);
456
+ // Close dropdown
457
+ await userEvent.keyboard('{Escape}');
458
+ // Reopen dropdown
459
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
460
+ // Check settings persisted
461
+ await waitFor(() => {
462
+ expect(screen.getByLabelText('Small').checked).toBe(true);
463
+ expect(screen.getByLabelText('Column borders').checked).toBe(true);
464
+ });
465
+ });
466
+ test('onTableSettingsChanged gets called appropriately', async () => {
467
+ const onTableSettingsChanged = vi.fn();
468
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onTableSettingsChanged: onTableSettingsChanged }));
469
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
470
+ const largeRadio = screen.getByLabelText('Large');
471
+ await userEvent.click(largeRadio);
472
+ await waitFor(() => {
473
+ expect(largeRadio.checked).toBe(true);
474
+ });
475
+ expect(onTableSettingsChanged).toHaveBeenCalledExactlyOnceWith(expect.objectContaining({
476
+ tableSpacing: TABLE_SPACING.L,
477
+ }));
478
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
479
+ await userEvent.click(columnBordersCheckbox);
480
+ expect(onTableSettingsChanged).toHaveBeenCalledTimes(2);
481
+ expect(onTableSettingsChanged).toHaveBeenNthCalledWith(2, expect.objectContaining({ hasColumnBorders: true }));
482
+ });
483
+ test('resetSettings is called appropriately', async () => {
484
+ const onTableSettingsReset = vi.fn();
485
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onTableSettingsReset: onTableSettingsReset }));
486
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
487
+ const largeRadio = screen.getByLabelText('Large');
488
+ await userEvent.click(largeRadio);
489
+ await waitFor(() => {
490
+ expect(largeRadio.checked).toBe(true);
491
+ });
492
+ // Click reset button
493
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
494
+ await userEvent.click(resetButton);
495
+ expect(onTableSettingsReset).toHaveBeenCalledOnce();
496
+ });
497
+ test('onColumnBordersChanged gets called when column borders toggle', async () => {
498
+ const onColumnBordersChanged = vi.fn();
499
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onColumnBordersChanged: onColumnBordersChanged }));
500
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
501
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
502
+ await userEvent.click(columnBordersCheckbox);
503
+ await waitFor(() => {
504
+ expect(onColumnBordersChanged).toHaveBeenCalledExactlyOnceWith(true);
505
+ });
506
+ await userEvent.click(columnBordersCheckbox);
507
+ await waitFor(() => {
508
+ expect(onColumnBordersChanged).toHaveBeenCalledTimes(2);
509
+ expect(onColumnBordersChanged).toHaveBeenNthCalledWith(2, false);
510
+ });
511
+ });
512
+ test('onTableSpacingChanged gets called when spacing changes', async () => {
513
+ const onTableSpacingChanged = vi.fn();
514
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onTableSpacingChanged: onTableSpacingChanged }));
515
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
516
+ const largeRadio = screen.getByLabelText('Large');
517
+ await userEvent.click(largeRadio);
518
+ await waitFor(() => {
519
+ expect(onTableSpacingChanged).toHaveBeenCalledExactlyOnceWith(TABLE_SPACING.L);
520
+ });
521
+ const xsmallRadio = screen.getByLabelText('X-Small');
522
+ await userEvent.click(xsmallRadio);
523
+ await waitFor(() => {
524
+ expect(onTableSpacingChanged).toHaveBeenCalledTimes(2);
525
+ expect(onTableSpacingChanged).toHaveBeenNthCalledWith(2, TABLE_SPACING.XS);
526
+ });
527
+ });
528
+ test('onTableSpacingChanged is called when reset button is clicked', async () => {
529
+ const onTableSpacingChanged = vi.fn();
530
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onTableSpacingChanged: onTableSpacingChanged }));
531
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
532
+ const largeRadio = screen.getByLabelText('Large');
533
+ await userEvent.click(largeRadio);
534
+ await waitFor(() => {
535
+ expect(onTableSpacingChanged).toHaveBeenCalledWith(TABLE_SPACING.L);
536
+ });
537
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
538
+ await userEvent.click(resetButton);
539
+ await waitFor(() => {
540
+ expect(onTableSpacingChanged).toHaveBeenCalledWith(TABLE_SPACING.M);
541
+ });
542
+ });
543
+ test('onColumnBordersChanged is called when reset button is clicked', async () => {
544
+ const onColumnBordersChanged = vi.fn();
545
+ render(_jsx(Table, { headerContent: _jsx(TableSettingsDropdown, {}), onColumnBordersChanged: onColumnBordersChanged }));
546
+ await userEvent.click(screen.getByRole('button', { name: /Table settings/i }));
547
+ const columnBordersCheckbox = screen.getByLabelText('Column borders');
548
+ await userEvent.click(columnBordersCheckbox);
549
+ await waitFor(() => {
550
+ expect(onColumnBordersChanged).toHaveBeenCalledWith(true);
551
+ });
552
+ const resetButton = screen.getByRole('button', { name: /Reset Table Settings/i });
553
+ await userEvent.click(resetButton);
554
+ await waitFor(() => {
555
+ expect(onColumnBordersChanged).toHaveBeenCalledWith(false);
556
+ });
557
+ });
558
+ });
246
559
  });
247
560
  //# sourceMappingURL=Table.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table.test.js","sourceRoot":"","sources":["../../../src/components/table/Table.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Table.test.js","sourceRoot":"","sources":["../../../src/components/table/Table.test.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAGpD,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,KAAK,KAAG,CAAC,CAAC;QACxC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAEnC,MAAM,CAAC,KAAC,KAAK,IAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAI,CAAC,CAAC;QAC5D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACtD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,KAAK,IAAC,gBAAgB,EAAC,cAAc,GAAG,CAC1C,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,KAAC,KAAK,mBAAa,YAAY,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACzD,MAAM,CAAC,KAAC,KAAK,IAAC,aAAa,EAAE,2CAAyB,GAAI,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACrE,MAAM,CAAC,KAAC,KAAK,KAAG,CAAC,CAAC;YAClB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC1C,MAAM,CAAC,KAAC,KAAK,IAAC,aAAa,EAAE,mCAAiB,EAAE,YAAY,EAAC,sBAAsB,GAAG,CAAC,CAAC;YACxF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACvE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACzD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,KAAK,IAAC,aAAa,EAAE,2CAAyB,GAAI,CACpD,CAAC;YACF,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACrE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,KAAK,KAAG,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC1C,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,mCAAiB,EAChC,YAAY,EAAC,sBAAsB,GACnC,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACvE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC1C,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,CACb,0BACE,wCAAyB,EACzB,0CAAyB,EACzB,oCAAqB,IACjB,CACP,GACD,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC7D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,CACb,KAAC,mBAAmB,IAClB,OAAO,EAAE;wBACP;4BACE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;gCACxC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;4BACpD,CAAC;yBACF;wBACD;4BACE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;gCACxC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;4BACpD,CAAC,EAAE,QAAQ,EAAE,IAAI;yBAClB;qBACF,GACD,CACH,GACD,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC5D,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;YACvD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC5C,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,CACb,KAAC,mBAAmB,IAClB,OAAO,EAAE;wBACP;4BACE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY;yBAC3C;qBACF,GACD,CACH,GACD,CACH,CAAC;YACF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;YACvD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzE,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACxC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAW,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,CACb,KAAC,mBAAmB,IAClB,OAAO,EAAE;wBACP;4BACE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY;4BAC1C,QAAQ,EAAE,IAAI;yBACf;qBACF,GACD,CACH,GACD,CACH,CAAC;YACF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;YACvD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACzE,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,MAAM,UAAU,GAAG;YACjB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;YACrC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACnC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE;SACxC,CAAC;QAEF,MAAM,OAAO,GAAG;YACd,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE;YACxD,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE;SAC3D,CAAC;QAEF,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,CACJ,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,KAAC,mBAAmB,KAAG,GACtC,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,CACJ,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,KAAC,mBAAmB,KAAG,GACtC,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAExD,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;gBAC9D,MAAM,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEnC,MAAM,CACJ,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,CACb,KAAC,mBAAmB,IAClB,kBAAkB,EAAE,kBAAkB,EACtC,oBAAoB,SACpB,CACH,GACD,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAExD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;YAErE,MAAM,SAAS,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC;YAEjC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBAC9C,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,KAAC,mBAAmB,KAAG,GACtC,CACH,CAAC;YAEF,4BAA4B;YAC5B,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAE1E,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClF,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YACxD,MAAM,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAEtC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;YAErE,MAAM,SAAS,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC;YAEjC,0CAA0C;YAC1C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;gBACnE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBAChE,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,CACb,KAAC,mBAAmB,IAClB,kBAAkB,EAAE,kBAAkB,EACtC,oBAAoB,SACpB,CACH,GACD,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAE1E,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAExD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;YAErE,MAAM,SAAS,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC;YAEjC,uEAAuE;YACvE,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;gBACnE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBAChE,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,CAAC;YAChD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,KAAC,mBAAmB,KAAG,GACtC,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAE1E,uCAAuC;YACvC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACtG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;YAE5E,IAAI,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;YACrE,MAAM,SAAS,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC;YAEjC,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAErC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;YAEpD,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC;YACnE,MAAM,SAAS,CAAC,KAAK,CAAC,OAAQ,CAAC,CAAC;YAEhC,gCAAgC;YAChC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;gBACnE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBAChE,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC1C,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACzC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,CACJ,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,KAAC,mBAAmB,KAAG,GACtC,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAExD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;YAErE,MAAM,SAAS,CAAC,KAAK,CAAC,QAAS,CAAC,CAAC;YAEjC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,UAAU,GAAG;gBACjB,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;gBAClD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;gBACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ;aACzB,CAAC;YAEF,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEnC,MAAM,CACJ,KAAC,KAAK,IACJ,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,CACb,KAAC,mBAAmB;gBAClB,6DAA6D;gBAC7D,mBAAmB;;oBADnB,6DAA6D;oBAC7D,mBAAmB;oBACnB,OAAO,EAAE,CAAC,UAAU,CAAC,EACrB,kBAAkB,EAAE,kBAAkB,EACtC,oBAAoB,SACpB,CACH,GACD,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;YAExD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YACjE,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACtD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,wBAAK,KAAC,mBAAmB,IAAC,OAAO,EAAE,EAAE,GAAI,GAAM,CAChD,CAAC;YAEF,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,IAAI,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBACvE,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;YAC/E,MAAM,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAEtC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBACtD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACvE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC7D,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC3D,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC5D,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAqB,CAAC;gBACxE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC7D,CAAC,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,WAAgC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBACpE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACpE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAqB,CAAC;gBAC1F,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC7C,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,mBAAmB,GAAG,MAAM,CAAC,cAAc,CAAC,cAAc,CAAqB,CAAC;gBACtF,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,mBAAmB,GAAG,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAClE,MAAM,SAAS,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAE3C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,mBAAwC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,mBAAmB,GAAG,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAClE,MAAM,SAAS,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC3C,MAAM,SAAS,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAE3C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,mBAAwC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC5F,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,kBAAkB;YAClB,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,qBAAqB;YACrB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAqB,CAAC;gBACxE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,yBAAyB;YACzB,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;YAEH,qBAAqB;YACrB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,2BAA2B;YAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5D,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;YAEH,qBAAqB;YACrB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAqB,CAAC;gBACxE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,CAAE,qBAA0C,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,CACb,8BACE,KAAC,mBAAmB,IAClB,OAAO,EAAE;gCACP;oCACE,WAAW,EAAE,aAAa;oCAC1B,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;iCACnB;6BACF,GACD,EACF,KAAC,qBAAqB,KAAG,IACxB,CACJ,GACD,CACH,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC5D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACtF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,GACxC,CACH,CAAC;YAEF,oCAAoC;YACpC,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,iBAAiB;YACjB,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAErC,kBAAkB;YAClB,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,2BAA2B;YAC3B,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,MAAM,CAAC,cAAc,CAAC,OAAO,CAAsB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChF,MAAM,CAAE,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAsB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3F,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,sBAAsB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEvC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,sBAAsB,CAAC,CAAC,+BAA+B,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBACrF,YAAY,EAAE,aAAa,CAAC,CAAC;aAC9B,CAAC,CAAC,CAAC;YAEJ,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,CAAC,sBAAsB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACxD,MAAM,CAAC,sBAAsB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACjH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,oBAAoB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAErC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,oBAAoB,EAAE,oBAAoB,GAC1C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAE,UAA+B,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,qBAAqB;YACrB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,CAAC,oBAAoB,CAAC,CAAC,oBAAoB,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,sBAAsB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEvC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,sBAAsB,CAAC,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,sBAAsB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;gBACxD,MAAM,CAAC,sBAAsB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,qBAAqB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEtC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,qBAAqB,EAAE,qBAAqB,GAC5C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,qBAAqB,CAAC,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACjF,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;YAC7E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,qBAAqB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEtC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,qBAAqB,EAAE,qBAAqB,GAC5C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAElC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,sBAAsB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEvC,MAAM,CACJ,KAAC,KAAK,IACJ,aAAa,EAAE,KAAC,qBAAqB,KAAG,EACxC,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,CAAC;YAEF,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAE/E,MAAM,qBAAqB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAE7C,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,sBAAsB,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAEnC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,sBAAsB,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const TableSettingsDropdown: () => import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=TableSettingsDropdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsDropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/table/pagination/TableSettingsDropdown.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,qBAAqB,+CA0EjC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Button } from '../../button/Button';
3
+ import { Dropdown } from '../../dropdown/Dropdown';
4
+ import { CheckboxGroup } from '../../formField/inputs/checkbox/CheckboxGroup';
5
+ import { RadioButtonGroup } from '../../formField/inputs/radio/RadioButtonGroup';
6
+ import { Separator } from '../../separator/Separator';
7
+ import { useContext, useState } from 'react';
8
+ import { TABLE_SPACING, TableSettingsContext } from '../Table';
9
+ const TABLE_SPACING_NAMES = {
10
+ XS: 'X-Small',
11
+ S: 'Small',
12
+ M: 'Medium',
13
+ L: 'Large',
14
+ };
15
+ export const TableSettingsDropdown = () => {
16
+ const { settings: { hasColumnBorders, tableSpacing, }, setTableSpacing, setHasColumnBorders, resetSettings, } = useContext(TableSettingsContext);
17
+ const [cellColours, setCellColours] = useState(false);
18
+ return (_jsxs(Dropdown, { children: [_jsx(Dropdown.Trigger, { children: _jsx(Button, { variant: "secondary", iconRightName: "settings", iconRightScreenReaderText: "Table settings", borderless: true }) }), _jsxs(Dropdown.Content, { children: [_jsx(RadioButtonGroup, { legend: "Table spacing", options: Object.values(TABLE_SPACING).map((option) => {
19
+ return {
20
+ name: 'ds-table-spacing',
21
+ label: TABLE_SPACING_NAMES[option],
22
+ value: option,
23
+ };
24
+ }), name: "ds-table-spacing", checkedValue: tableSpacing, onChange: (e) => {
25
+ setTableSpacing(e.target.value);
26
+ } }), _jsx(Separator, {}), _jsx(CheckboxGroup, { legend: "Style", options: [
27
+ {
28
+ label: 'Column borders',
29
+ checked: hasColumnBorders,
30
+ onChange: () => {
31
+ setHasColumnBorders(!hasColumnBorders);
32
+ },
33
+ },
34
+ {
35
+ label: 'Cell colours',
36
+ checked: cellColours,
37
+ onChange: () => {
38
+ setCellColours(!cellColours);
39
+ },
40
+ },
41
+ ] }), _jsx(Separator, {}), _jsx(Button, { variant: "tertiary", iconLeftName: "redo", onClick: resetSettings, children: "Reset Table Settings" })] })] }));
42
+ };
43
+ //# sourceMappingURL=TableSettingsDropdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsDropdown.js","sourceRoot":"","sources":["../../../../src/components/table/pagination/TableSettingsDropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAoB,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE/D,MAAM,mBAAmB,GAAG;IAC1B,EAAE,EAAE,SAAS;IACb,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,OAAO;CACX,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,MAAM,EACJ,QAAQ,EAAE,EACR,gBAAgB,EAChB,YAAY,GACb,EACD,eAAe,EACf,mBAAmB,EACnB,aAAa,GACd,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAErC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAE/D,OAAO,CACL,MAAC,QAAQ,eACP,KAAC,QAAQ,CAAC,OAAO,cACf,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,aAAa,EAAC,UAAU,EACxB,yBAAyB,EAAC,gBAAgB,EAC1C,UAAU,SACV,GACe,EACnB,MAAC,QAAQ,CAAC,OAAO,eACf,KAAC,gBAAgB,IACf,MAAM,EAAC,eAAe,EACtB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;4BACnD,OAAO;gCACL,IAAI,EAAE,kBAAkB;gCACxB,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC;gCAClC,KAAK,EAAE,MAAM;6BACd,CAAC;wBACJ,CAAC,CAAC,EACF,IAAI,EAAC,kBAAkB,EACvB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,CAAC,CAAgC,EAAE,EAAE;4BAC7C,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAsB,CAAC,CAAC;wBACnD,CAAC,GACD,EAEF,KAAC,SAAS,KAAG,EAEb,KAAC,aAAa,IACZ,MAAM,EAAC,OAAO,EACd,OAAO,EAAE;4BACP;gCACE,KAAK,EAAE,gBAAgB;gCACvB,OAAO,EAAE,gBAAgB;gCACzB,QAAQ,EAAE,GAAG,EAAE;oCACb,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAC;gCACzC,CAAC;6BACF;4BACD;gCACE,KAAK,EAAE,cAAc;gCACrB,OAAO,EAAE,WAAW;gCACpB,QAAQ,EAAE,GAAG,EAAE;oCACb,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;gCAC/B,CAAC;6BACF;yBACF,GACD,EAEF,KAAC,SAAS,KAAG,EAEb,KAAC,MAAM,IACL,OAAO,EAAC,UAAU,EAClB,YAAY,EAAC,MAAM,EACnB,OAAO,EAAE,aAAa,qCAGf,IACQ,IACV,CACZ,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { TABLE_SPACING } from './Table';
2
+ export type TableSettings = {
3
+ hasColumnBorders?: boolean;
4
+ tableSpacing: TABLE_SPACING;
5
+ };
6
+ type UseTableSettingsParams = {
7
+ onTableSettingsChanged?: (val: TableSettings) => void;
8
+ onTableSettingsReset?: () => void;
9
+ onColumnBordersChanged?: (val: boolean) => void;
10
+ onTableSpacingChanged?: (val: TABLE_SPACING) => void;
11
+ };
12
+ export declare const useTableSettings: (params?: UseTableSettingsParams) => {
13
+ settings: {
14
+ hasColumnBorders: boolean;
15
+ tableSpacing: TABLE_SPACING;
16
+ };
17
+ resetSettings: () => void;
18
+ setHasColumnBorders: import("react").Dispatch<import("react").SetStateAction<boolean>>;
19
+ setTableSpacing: import("react").Dispatch<import("react").SetStateAction<TABLE_SPACING>>;
20
+ };
21
+ export {};
22
+ //# sourceMappingURL=useTableSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableSettings.d.ts","sourceRoot":"","sources":["../../../src/components/table/useTableSettings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,MAAM,MAAM,aAAa,GAAG;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,aAAa,CAAC;CAC7B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;IACtD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;CACtD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAQ,sBAA2B;;;;;;;;CA0CnE,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { useState } from 'react';
2
+ import { TABLE_SPACING } from './Table';
3
+ import { useComponentDidUpdate } from '../../utils/hooks/useComponentDidUpdate';
4
+ export const useTableSettings = (params = {}) => {
5
+ const { onTableSettingsChanged, onTableSettingsReset, onColumnBordersChanged, onTableSpacingChanged, } = params;
6
+ const [hasColumnBorders, setHasColumnBorders] = useState(false);
7
+ const [tableSpacing, setTableSpacing] = useState(TABLE_SPACING.M);
8
+ const settings = {
9
+ hasColumnBorders,
10
+ tableSpacing,
11
+ };
12
+ const resetSettings = () => {
13
+ setHasColumnBorders(false);
14
+ setTableSpacing(TABLE_SPACING.M);
15
+ if (onTableSettingsReset) {
16
+ onTableSettingsReset();
17
+ }
18
+ };
19
+ useComponentDidUpdate(() => {
20
+ if (onColumnBordersChanged) {
21
+ onColumnBordersChanged(hasColumnBorders);
22
+ }
23
+ }, [hasColumnBorders]);
24
+ useComponentDidUpdate(() => {
25
+ if (onTableSpacingChanged) {
26
+ onTableSpacingChanged(tableSpacing);
27
+ }
28
+ }, [tableSpacing]);
29
+ useComponentDidUpdate(() => {
30
+ if (onTableSettingsChanged) {
31
+ onTableSettingsChanged(settings);
32
+ }
33
+ }, [hasColumnBorders, tableSpacing]);
34
+ return { settings, resetSettings, setHasColumnBorders, setTableSpacing };
35
+ };
36
+ //# sourceMappingURL=useTableSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableSettings.js","sourceRoot":"","sources":["../../../src/components/table/useTableSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAc1E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAiC,EAAE,EAAE,EAAE;IACtE,MAAM,EACJ,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,GACtB,GAAG,MAAM,CAAC;IACX,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG;QACf,gBAAgB;QAChB,YAAY;KACb,CAAC;IAEF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3B,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,oBAAoB,EAAE,CAAC;YACzB,oBAAoB,EAAE,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;IAEF,qBAAqB,CAAC,GAAG,EAAE;QACzB,IAAI,sBAAsB,EAAE,CAAC;YAC3B,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,qBAAqB,CAAC,GAAG,EAAE;QACzB,IAAI,qBAAqB,EAAE,CAAC;YAC1B,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,qBAAqB,CAAC,GAAG,EAAE;QACzB,IAAI,sBAAsB,EAAE,CAAC;YAC3B,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,EAAE,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC;IAErC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAC;AAC3E,CAAC,CAAC"}