on-zero 0.16.19 → 0.16.20

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 (120) hide show
  1. package/dist/cjs/createUseQuery.cjs +2 -1
  2. package/dist/cjs/createUseQuery.native.js +2 -1
  3. package/dist/cjs/createUseQuery.native.js.map +1 -1
  4. package/dist/cjs/createUseQueryDirect.cjs +2 -1
  5. package/dist/cjs/createUseQueryDirect.native.js +2 -1
  6. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  7. package/dist/cjs/createZeroClient.cjs +75 -9
  8. package/dist/cjs/createZeroClient.native.js +151 -81
  9. package/dist/cjs/createZeroClient.native.js.map +1 -1
  10. package/dist/cjs/createZeroClient.recovery.test.cjs +351 -10
  11. package/dist/cjs/createZeroClient.recovery.test.native.js +412 -12
  12. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  13. package/dist/cjs/generate.cjs +16 -11
  14. package/dist/cjs/generate.native.js +16 -11
  15. package/dist/cjs/generate.native.js.map +1 -1
  16. package/dist/cjs/generate.test.cjs +22 -0
  17. package/dist/cjs/generate.test.native.js +22 -0
  18. package/dist/cjs/generate.test.native.js.map +1 -1
  19. package/dist/cjs/helpers/recoverZeroClient.cjs +542 -52
  20. package/dist/cjs/helpers/recoverZeroClient.native.js +721 -59
  21. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  22. package/dist/cjs/helpers/recoverZeroClient.test.cjs +318 -0
  23. package/dist/cjs/helpers/recoverZeroClient.test.native.js +361 -0
  24. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  25. package/dist/cjs/kvStore.cjs +30 -0
  26. package/dist/cjs/kvStore.native.js +34 -0
  27. package/dist/cjs/kvStore.native.js.map +1 -0
  28. package/dist/cjs/queryJson.cjs +58 -0
  29. package/dist/cjs/queryJson.native.js +86 -0
  30. package/dist/cjs/queryJson.native.js.map +1 -0
  31. package/dist/cjs/resolveQuery.cjs +2 -0
  32. package/dist/cjs/resolveQuery.native.js +2 -0
  33. package/dist/cjs/resolveQuery.native.js.map +1 -1
  34. package/dist/cjs/useQuery.empty.test.cjs +11 -1
  35. package/dist/cjs/useQuery.empty.test.native.js +23 -1
  36. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  37. package/dist/cjs/useQuery.ssr.test.cjs +22 -1
  38. package/dist/cjs/useQuery.ssr.test.native.js +30 -1
  39. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  40. package/dist/esm/createUseQuery.mjs +2 -1
  41. package/dist/esm/createUseQuery.mjs.map +1 -1
  42. package/dist/esm/createUseQuery.native.js +2 -1
  43. package/dist/esm/createUseQuery.native.js.map +1 -1
  44. package/dist/esm/createUseQueryDirect.mjs +2 -1
  45. package/dist/esm/createUseQueryDirect.mjs.map +1 -1
  46. package/dist/esm/createUseQueryDirect.native.js +2 -1
  47. package/dist/esm/createUseQueryDirect.native.js.map +1 -1
  48. package/dist/esm/createZeroClient.mjs +76 -10
  49. package/dist/esm/createZeroClient.mjs.map +1 -1
  50. package/dist/esm/createZeroClient.native.js +152 -82
  51. package/dist/esm/createZeroClient.native.js.map +1 -1
  52. package/dist/esm/createZeroClient.recovery.test.mjs +352 -11
  53. package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
  54. package/dist/esm/createZeroClient.recovery.test.native.js +413 -13
  55. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  56. package/dist/esm/generate.mjs +16 -11
  57. package/dist/esm/generate.mjs.map +1 -1
  58. package/dist/esm/generate.native.js +16 -11
  59. package/dist/esm/generate.native.js.map +1 -1
  60. package/dist/esm/generate.test.mjs +22 -0
  61. package/dist/esm/generate.test.mjs.map +1 -1
  62. package/dist/esm/generate.test.native.js +22 -0
  63. package/dist/esm/generate.test.native.js.map +1 -1
  64. package/dist/esm/helpers/recoverZeroClient.mjs +542 -54
  65. package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -1
  66. package/dist/esm/helpers/recoverZeroClient.native.js +721 -61
  67. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
  68. package/dist/esm/helpers/recoverZeroClient.test.mjs +319 -1
  69. package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -1
  70. package/dist/esm/helpers/recoverZeroClient.test.native.js +362 -1
  71. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
  72. package/dist/esm/kvStore.mjs +5 -0
  73. package/dist/esm/kvStore.mjs.map +1 -0
  74. package/dist/esm/kvStore.native.js +6 -0
  75. package/dist/esm/kvStore.native.js.map +1 -0
  76. package/dist/esm/queryJson.mjs +32 -0
  77. package/dist/esm/queryJson.mjs.map +1 -0
  78. package/dist/esm/queryJson.native.js +57 -0
  79. package/dist/esm/queryJson.native.js.map +1 -0
  80. package/dist/esm/resolveQuery.mjs +2 -0
  81. package/dist/esm/resolveQuery.mjs.map +1 -1
  82. package/dist/esm/resolveQuery.native.js +2 -0
  83. package/dist/esm/resolveQuery.native.js.map +1 -1
  84. package/dist/esm/useQuery.empty.test.mjs +12 -2
  85. package/dist/esm/useQuery.empty.test.mjs.map +1 -1
  86. package/dist/esm/useQuery.empty.test.native.js +24 -2
  87. package/dist/esm/useQuery.empty.test.native.js.map +1 -1
  88. package/dist/esm/useQuery.ssr.test.mjs +23 -2
  89. package/dist/esm/useQuery.ssr.test.mjs.map +1 -1
  90. package/dist/esm/useQuery.ssr.test.native.js +31 -2
  91. package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
  92. package/package.json +11 -3
  93. package/src/createUseQuery.tsx +2 -1
  94. package/src/createUseQueryDirect.tsx +2 -1
  95. package/src/createZeroClient.recovery.test.tsx +370 -7
  96. package/src/createZeroClient.tsx +100 -10
  97. package/src/generate.test.ts +31 -0
  98. package/src/generate.ts +22 -10
  99. package/src/helpers/recoverZeroClient.test.ts +323 -0
  100. package/src/helpers/recoverZeroClient.ts +896 -78
  101. package/src/kvStore.native.ts +7 -0
  102. package/src/kvStore.ts +7 -0
  103. package/src/queryJson.ts +46 -0
  104. package/src/resolveQuery.ts +2 -0
  105. package/src/useQuery.empty.test.tsx +16 -2
  106. package/src/useQuery.ssr.test.ts +23 -2
  107. package/types/createUseQuery.d.ts.map +1 -1
  108. package/types/createUseQueryDirect.d.ts.map +1 -1
  109. package/types/createZeroClient.d.ts.map +1 -1
  110. package/types/createZeroClient.recovery.test.d.ts.map +1 -1
  111. package/types/generate.d.ts.map +1 -1
  112. package/types/helpers/recoverZeroClient.d.ts +6 -0
  113. package/types/helpers/recoverZeroClient.d.ts.map +1 -1
  114. package/types/kvStore.d.ts +2 -0
  115. package/types/kvStore.d.ts.map +1 -0
  116. package/types/kvStore.native.d.ts +3 -0
  117. package/types/kvStore.native.d.ts.map +1 -0
  118. package/types/queryJson.d.ts +3 -0
  119. package/types/queryJson.d.ts.map +1 -0
  120. package/types/resolveQuery.d.ts.map +1 -1
@@ -3,38 +3,66 @@ import { act, Suspense, useLayoutEffect } from "react";
3
3
  import { createRoot } from "react-dom/client";
4
4
  import { afterEach, beforeEach, expect, test, vi } from "vitest";
5
5
  import { createZeroClient } from "./createZeroClient.mjs";
6
- import { resetRecoveryStateForTests } from "./helpers/recoverZeroClient.mjs";
6
+ import { isGroupTransitionOpen, resetRecoveryStateForTests } from "./helpers/recoverZeroClient.mjs";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  const fakeZero = vi.hoisted(() => {
9
+ const group = {
10
+ current: "g1"
11
+ };
9
12
  class FakeZero {
10
13
  constructor(options) {
11
14
  this.options = options;
12
15
  instances.push(this);
16
+ this.clientGroupID = Promise.resolve(group.current);
17
+ const listeners = /* @__PURE__ */new Set();
18
+ this.connection = {
19
+ state: {
20
+ current: {
21
+ name: "closed"
22
+ },
23
+ subscribe: listener => {
24
+ listeners.add(listener);
25
+ return () => {
26
+ listeners.delete(listener);
27
+ };
28
+ }
29
+ },
30
+ connect: vi.fn()
31
+ };
32
+ this.__connectionListeners = listeners;
13
33
  }
14
34
  context = {};
15
- connection = {
16
- state: {
17
- current: {
18
- name: "closed"
19
- },
20
- subscribe: () => () => {}
21
- },
22
- connect: vi.fn()
23
- };
35
+ connection;
24
36
  delete = vi.fn(async () => ({
25
37
  errors: []
26
38
  }));
27
39
  close = vi.fn();
28
40
  run = vi.fn(async () => []);
41
+ mutate = {
42
+ note: {
43
+ insert: vi.fn(() => ({
44
+ client: Promise.resolve({}),
45
+ server: Promise.resolve({})
46
+ }))
47
+ }
48
+ };
29
49
  preload = vi.fn(() => ({
30
50
  cleanup: () => {},
31
51
  complete: Promise.resolve()
32
52
  }));
53
+ clientGroupID;
33
54
  }
34
55
  const instances = [];
56
+ function setConnectionState(instance, name) {
57
+ instance.connection.state.current.name = name;
58
+ const listeners = instance.__connectionListeners;
59
+ for (const listener of [...listeners]) listener();
60
+ }
35
61
  return {
36
62
  FakeZero,
37
- instances
63
+ instances,
64
+ group,
65
+ setConnectionState
38
66
  };
39
67
  });
40
68
  vi.mock("@rocicorp/zero", async importOriginal => {
@@ -64,6 +92,7 @@ beforeEach(() => {
64
92
  window.sessionStorage.clear();
65
93
  resetRecoveryStateForTests();
66
94
  fakeZero.instances.length = 0;
95
+ fakeZero.group.current = "g1";
67
96
  container = document.createElement("div");
68
97
  root = null;
69
98
  });
@@ -422,4 +451,316 @@ test("headless NewClientGroup recovery reconstructs its client without a provide
422
451
  expect(first.close).toHaveBeenCalledOnce();
423
452
  await connection.close();
424
453
  });
454
+ function makeTransitionClient(instanceName) {
455
+ return createZeroClient({
456
+ schema,
457
+ models: {},
458
+ groupedQueries: {},
459
+ instanceName
460
+ });
461
+ }
462
+ function collectClientEvents(client2) {
463
+ const events = [];
464
+ const off = client2.zeroEvents.listen(event => {
465
+ if (event) events.push(event);
466
+ });
467
+ return {
468
+ events,
469
+ off
470
+ };
471
+ }
472
+ async function mountTransitionClient(client2, userID) {
473
+ const el = document.createElement("div");
474
+ const mountedRoot = createRoot(el);
475
+ await act(async () => {
476
+ mountedRoot.render(/* @__PURE__ */jsx(client2.ProvideZero, {
477
+ cacheURL: "http://127.0.0.1:7777/zero",
478
+ userID,
479
+ children: /* @__PURE__ */jsx("span", {
480
+ children: "ok"
481
+ })
482
+ }));
483
+ await Promise.resolve();
484
+ });
485
+ return {
486
+ el,
487
+ root: mountedRoot,
488
+ instance: fakeZero.instances.at(-1)
489
+ };
490
+ }
491
+ async function unmountTransitionClient(mounted) {
492
+ await act(async () => {
493
+ mounted.root.unmount();
494
+ });
495
+ }
496
+ function withoutPageReload() {
497
+ const originalLocation = globalThis.location;
498
+ Object.defineProperty(globalThis, "location", {
499
+ configurable: true,
500
+ value: void 0
501
+ });
502
+ return () => {
503
+ Object.defineProperty(globalThis, "location", {
504
+ configurable: true,
505
+ value: originalLocation
506
+ });
507
+ };
508
+ }
509
+ test("two providers ride one group transition and keep querying and mutating", async () => {
510
+ const restoreLocation = withoutPageReload();
511
+ const clientA = makeTransitionClient("transition-two-a");
512
+ const clientB = makeTransitionClient("transition-two-b");
513
+ const collectedA = collectClientEvents(clientA);
514
+ const collectedB = collectClientEvents(clientB);
515
+ const mountedA = await mountTransitionClient(clientA, "transition-user");
516
+ const mountedB = await mountTransitionClient(clientB, "transition-user");
517
+ const firstA = mountedA.instance;
518
+ const firstB = mountedB.instance;
519
+ const countBefore = fakeZero.instances.length;
520
+ try {
521
+ firstA.options.onUpdateNeeded({
522
+ type: "NewClientGroup"
523
+ });
524
+ firstB.options.onUpdateNeeded({
525
+ type: "NewClientGroup"
526
+ });
527
+ await act(async () => {
528
+ await new Promise(resolve => setTimeout(resolve, 0));
529
+ });
530
+ expect(fakeZero.instances).toHaveLength(countBefore + 2);
531
+ const secondA = fakeZero.instances[countBefore];
532
+ const secondB = fakeZero.instances[countBefore + 1];
533
+ expect(secondA).not.toBe(firstA);
534
+ expect(secondB).not.toBe(firstB);
535
+ expect(firstA.close).toHaveBeenCalledTimes(1);
536
+ expect(firstB.close).toHaveBeenCalledTimes(1);
537
+ expect(isGroupTransitionOpen()).toBe(true);
538
+ await act(async () => {
539
+ fakeZero.setConnectionState(secondA, "connected");
540
+ fakeZero.setConnectionState(secondB, "connected");
541
+ await Promise.resolve();
542
+ });
543
+ await vi.waitFor(() => expect(isGroupTransitionOpen()).toBe(false));
544
+ const allEvents = [...collectedA.events, ...collectedB.events];
545
+ expect(allEvents.filter(event => event.type === "recovering")).toHaveLength(1);
546
+ expect(allEvents.filter(event => event.type === "fatal")).toHaveLength(0);
547
+ expect(firstA.delete).not.toHaveBeenCalled();
548
+ expect(firstB.delete).not.toHaveBeenCalled();
549
+ await clientA.zero.run({});
550
+ await clientB.zero.run({});
551
+ expect(secondA.run).toHaveBeenCalled();
552
+ expect(secondB.run).toHaveBeenCalled();
553
+ clientA.zero.mutate.note.insert({
554
+ id: "a1"
555
+ });
556
+ clientB.zero.mutate.note.insert({
557
+ id: "b1"
558
+ });
559
+ expect(secondA.mutate.note.insert).toHaveBeenCalledTimes(1);
560
+ expect(secondB.mutate.note.insert).toHaveBeenCalledTimes(1);
561
+ } finally {
562
+ collectedA.off();
563
+ collectedB.off();
564
+ await unmountTransitionClient(mountedA);
565
+ await unmountTransitionClient(mountedB);
566
+ restoreLocation();
567
+ }
568
+ });
569
+ test("a second registry change after recovery remints again without fatal", async () => {
570
+ const restoreLocation = withoutPageReload();
571
+ const clientA = makeTransitionClient("transition-second-a");
572
+ const clientB = makeTransitionClient("transition-second-b");
573
+ const collectedA = collectClientEvents(clientA);
574
+ const collectedB = collectClientEvents(clientB);
575
+ const mountedA = await mountTransitionClient(clientA, "transition-second-user");
576
+ const mountedB = await mountTransitionClient(clientB, "transition-second-user");
577
+ try {
578
+ const fireBoth = instances => {
579
+ instances[0].options.onUpdateNeeded({
580
+ type: "NewClientGroup"
581
+ });
582
+ instances[1].options.onUpdateNeeded({
583
+ type: "NewClientGroup"
584
+ });
585
+ };
586
+ const settleRemints = async countBefore2 => {
587
+ await act(async () => {
588
+ await new Promise(resolve => setTimeout(resolve, 0));
589
+ });
590
+ expect(fakeZero.instances).toHaveLength(countBefore2 + 2);
591
+ const next = fakeZero.instances.slice(countBefore2);
592
+ await act(async () => {
593
+ for (const instance of next) fakeZero.setConnectionState(instance, "connected");
594
+ await Promise.resolve();
595
+ });
596
+ await vi.waitFor(() => expect(isGroupTransitionOpen()).toBe(false));
597
+ return next;
598
+ };
599
+ const countBeforeFirst = fakeZero.instances.length;
600
+ fireBoth(fakeZero.instances.slice(-2));
601
+ await settleRemints(countBeforeFirst);
602
+ fakeZero.group.current = "g2";
603
+ const countBefore = fakeZero.instances.length;
604
+ fireBoth(fakeZero.instances.slice(-2));
605
+ const third = await settleRemints(countBefore);
606
+ const allEvents = [...collectedA.events, ...collectedB.events];
607
+ expect(allEvents.filter(event => event.type === "recovering")).toHaveLength(2);
608
+ expect(allEvents.filter(event => event.type === "fatal")).toHaveLength(0);
609
+ await clientA.zero.run({});
610
+ await clientB.zero.run({});
611
+ expect(third[0].run).toHaveBeenCalled();
612
+ expect(third[1].run).toHaveBeenCalled();
613
+ } finally {
614
+ collectedA.off();
615
+ collectedB.off();
616
+ await unmountTransitionClient(mountedA);
617
+ await unmountTransitionClient(mountedB);
618
+ restoreLocation();
619
+ }
620
+ });
621
+ test("negative control: an incompatible schema emits exactly one terminal error, never a loop", async () => {
622
+ const restoreLocation = withoutPageReload();
623
+ const consoleError = vi.spyOn(console, "error").mockImplementation(() => {});
624
+ const clientA = makeTransitionClient("transition-negative-a");
625
+ const clientB = makeTransitionClient("transition-negative-b");
626
+ const collectedA = collectClientEvents(clientA);
627
+ const collectedB = collectClientEvents(clientB);
628
+ const mountedA = await mountTransitionClient(clientA, "transition-negative-user");
629
+ const mountedB = await mountTransitionClient(clientB, "transition-negative-user");
630
+ const firstA = mountedA.instance;
631
+ const firstB = mountedB.instance;
632
+ const countBefore = fakeZero.instances.length;
633
+ try {
634
+ firstA.options.onUpdateNeeded({
635
+ type: "SchemaVersionNotSupported"
636
+ });
637
+ firstB.options.onUpdateNeeded({
638
+ type: "SchemaVersionNotSupported"
639
+ });
640
+ await act(async () => {
641
+ await new Promise(resolve => setTimeout(resolve, 0));
642
+ });
643
+ expect(firstA.delete).toHaveBeenCalledTimes(1);
644
+ expect(firstB.delete).toHaveBeenCalledTimes(1);
645
+ expect(fakeZero.instances).toHaveLength(countBefore + 2);
646
+ const secondA = fakeZero.instances[countBefore];
647
+ const secondB = fakeZero.instances[countBefore + 1];
648
+ expect(isGroupTransitionOpen()).toBe(true);
649
+ secondA.options.onUpdateNeeded({
650
+ type: "SchemaVersionNotSupported"
651
+ });
652
+ await act(async () => {
653
+ await new Promise(resolve => setTimeout(resolve, 0));
654
+ });
655
+ const allEvents = () => [...collectedA.events, ...collectedB.events];
656
+ expect(allEvents().filter(event => event.type === "fatal")).toHaveLength(1);
657
+ const [fatal] = allEvents().filter(event => event.type === "fatal");
658
+ expect(fatal).toMatchObject({
659
+ reasonKey: "SchemaVersionNotSupported",
660
+ reason: expect.stringContaining("g1")
661
+ });
662
+ expect(consoleError).toHaveBeenCalledTimes(1);
663
+ expect(consoleError.mock.calls[0][0]).toContain("g1");
664
+ secondB.options.onUpdateNeeded({
665
+ type: "SchemaVersionNotSupported"
666
+ });
667
+ secondA.options.onUpdateNeeded({
668
+ type: "SchemaVersionNotSupported"
669
+ });
670
+ await act(async () => {
671
+ await new Promise(resolve => setTimeout(resolve, 0));
672
+ });
673
+ expect(allEvents().filter(event => event.type === "fatal")).toHaveLength(1);
674
+ expect(consoleError).toHaveBeenCalledTimes(1);
675
+ expect(fakeZero.instances).toHaveLength(countBefore + 2);
676
+ } finally {
677
+ collectedA.off();
678
+ collectedB.off();
679
+ await unmountTransitionClient(mountedA);
680
+ await unmountTransitionClient(mountedB);
681
+ restoreLocation();
682
+ consoleError.mockRestore();
683
+ }
684
+ });
685
+ test("concurrent update signals across providers schedule a single reload", async () => {
686
+ const reloadPage = vi.fn();
687
+ const originalLocation = globalThis.location;
688
+ Object.defineProperty(globalThis, "location", {
689
+ configurable: true,
690
+ value: {
691
+ href: "http://localhost/reload-test",
692
+ reload: reloadPage
693
+ }
694
+ });
695
+ const scheduleA = vi.fn();
696
+ const scheduleB = vi.fn();
697
+ const clientA = makeTransitionClient("transition-reload-a");
698
+ const clientB = makeTransitionClient("transition-reload-b");
699
+ const collectedA = collectClientEvents(clientA);
700
+ const collectedB = collectClientEvents(clientB);
701
+ const elA = document.createElement("div");
702
+ const elB = document.createElement("div");
703
+ const rootA = createRoot(elA);
704
+ const rootB = createRoot(elB);
705
+ try {
706
+ await act(async () => {
707
+ rootA.render(/* @__PURE__ */jsx(clientA.ProvideZero, {
708
+ cacheURL: "http://127.0.0.1:7777/zero",
709
+ userID: "transition-reload-user",
710
+ scheduleReload: scheduleA,
711
+ children: /* @__PURE__ */jsx("span", {
712
+ children: "ok"
713
+ })
714
+ }));
715
+ await Promise.resolve();
716
+ });
717
+ await act(async () => {
718
+ rootB.render(/* @__PURE__ */jsx(clientB.ProvideZero, {
719
+ cacheURL: "http://127.0.0.1:7777/zero",
720
+ userID: "transition-reload-user",
721
+ scheduleReload: scheduleB,
722
+ children: /* @__PURE__ */jsx("span", {
723
+ children: "ok"
724
+ })
725
+ }));
726
+ await Promise.resolve();
727
+ });
728
+ const firstA = fakeZero.instances.at(-2);
729
+ const firstB = fakeZero.instances.at(-1);
730
+ firstA.options.onUpdateNeeded({
731
+ type: "NewClientGroup"
732
+ });
733
+ firstB.options.onUpdateNeeded({
734
+ type: "NewClientGroup"
735
+ });
736
+ await act(async () => {
737
+ await new Promise(resolve => setTimeout(resolve, 0));
738
+ });
739
+ expect(scheduleA.mock.calls.length + scheduleB.mock.calls.length).toBe(1);
740
+ expect(reloadPage).not.toHaveBeenCalled();
741
+ const allEvents = [...collectedA.events, ...collectedB.events];
742
+ expect(allEvents.filter(event => event.type === "fatal")).toHaveLength(0);
743
+ const ctx = (scheduleA.mock.calls[0] ?? scheduleB.mock.calls[0])[0];
744
+ await act(async () => {
745
+ await ctx.performReload();
746
+ });
747
+ expect(reloadPage).toHaveBeenCalledTimes(1);
748
+ expect(isGroupTransitionOpen()).toBe(false);
749
+ const marker = window.sessionStorage.getItem("on-zero-recover-http://localhost/reload-test-NewClientGroup");
750
+ expect(marker).toContain("g1");
751
+ } finally {
752
+ collectedA.off();
753
+ collectedB.off();
754
+ await act(async () => {
755
+ rootA.unmount();
756
+ });
757
+ await act(async () => {
758
+ rootB.unmount();
759
+ });
760
+ Object.defineProperty(globalThis, "location", {
761
+ configurable: true,
762
+ value: originalLocation
763
+ });
764
+ }
765
+ });
425
766
  //# sourceMappingURL=createZeroClient.recovery.test.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["createSchema","string","table","UpdateNeededReasonType","act","Suspense","useLayoutEffect","createRoot","afterEach","beforeEach","expect","test","vi","createZeroClient","resetRecoveryStateForTests","jsx","fakeZero","hoisted","FakeZero","constructor","options","instances","push","context","connection","state","current","name","subscribe","connect","fn","delete","errors","close","run","preload","cleanup","complete","Promise","resolve","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","columns","id","body","primaryKey","schema","tables","client","models","groupedQueries","instanceName","container","root","window","sessionStorage","clear","length","document","createElement","unmount","mount","render","ProvideZero","cacheURL","userID","children","first","toBeDefined","deleteZero","zero","toHaveBeenCalledTimes","toHaveLength","not","toBe","at","countBefore","result","remint","isolated","connectHeadless","kvStore","storageKey","instance","consoleError","spyOn","console","mockImplementation","onUpdateNeeded","type","NewClientGroup","setTimeout","toHaveBeenCalledWith","mockRestore","generationClient","generations","GenerationProbe","generation","useZeroProviderGeneration","firstGeneration","isCurrent","dropLocalState","hidden","hiddenUntil","MaybeHidden","App","fallback","settleServer","server","settled","acknowledgement","awaitMutationServer","finally","textContent","toContain","resolves","useFakeTimers","scheduleReload","events","off","zeroEvents","listen","event","timeout","label","timedOut","rejects","toMatchObject","phase","advanceTimersByTimeAsync","toEqual","toContainEqual","status","reasonKey","reason","toHaveBeenCalled","useRealTimers","install","transport","logClassifications","benign","benignLogPatterns","logSink","log","toHaveBeenCalledOnce","retire","second","waitFor","waitForZero"],"sources":["../../src/createZeroClient.recovery.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createSchema","string","table","UpdateNeededReasonType","act","Suspense","useLayoutEffect","createRoot","afterEach","beforeEach","expect","test","vi","createZeroClient","isGroupTransitionOpen","resetRecoveryStateForTests","jsx","fakeZero","hoisted","group","current","FakeZero","constructor","options","instances","push","clientGroupID","Promise","resolve","listeners","Set","connection","state","name","subscribe","listener","add","delete","connect","fn","__connectionListeners","context","errors","close","run","mutate","note","insert","client","server","preload","cleanup","complete","setConnectionState","instance","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","columns","id","body","primaryKey","schema","tables","models","groupedQueries","instanceName","container","root","window","sessionStorage","clear","length","document","createElement","unmount","mount","render","ProvideZero","cacheURL","userID","children","first","toBeDefined","deleteZero","zero","toHaveBeenCalledTimes","toHaveLength","not","toBe","at","countBefore","result","remint","isolated","connectHeadless","kvStore","storageKey","consoleError","spyOn","console","mockImplementation","onUpdateNeeded","type","NewClientGroup","setTimeout","toHaveBeenCalledWith","mockRestore","generationClient","generations","GenerationProbe","generation","useZeroProviderGeneration","firstGeneration","isCurrent","dropLocalState","hidden","hiddenUntil","MaybeHidden","App","fallback","settleServer","settled","acknowledgement","awaitMutationServer","finally","textContent","toContain","resolves","useFakeTimers","scheduleReload","events","off","zeroEvents","listen","event","timeout","label","timedOut","rejects","toMatchObject","phase","advanceTimersByTimeAsync","toEqual","toContainEqual","status","reasonKey","reason","toHaveBeenCalled","useRealTimers","install","transport","logClassifications","benign","benignLogPatterns","logSink","log","toHaveBeenCalledOnce","retire","second","waitFor","waitForZero","makeTransitionClient","collectClientEvents","mountTransitionClient","client2","el","mountedRoot","unmountTransitionClient","mounted","withoutPageReload","originalLocation","location","Object","defineProperty","configurable","value","restoreLocation","clientA","clientB","collectedA","collectedB","mountedA","mountedB","firstA","firstB","secondA","secondB","allEvents","filter","fireBoth","settleRemints","next","slice","countBeforeFirst","third","fatal","stringContaining","calls","reloadPage","href","reload","scheduleA","scheduleB","elA","elB","rootA","rootB","ctx","performReload","marker","getItem"],"sources":["../../src/createZeroClient.recovery.test.tsx"],"sourcesContent":[null],"mappings":"AAEA,SAASA,YAAA,EAAcC,MAAA,EAAQC,KAAA,EAAOC,sBAAA,QAA8B;AACpE,SAASC,GAAA,EAAKC,QAAA,EAAUC,eAAA,QAAuB;AAC/C,SAASC,UAAA,QAA6B;AACtC,SAASC,SAAA,EAAWC,UAAA,EAAYC,MAAA,EAAQC,IAAA,EAAMC,EAAA,QAAU;AAwExD,SAASC,gBAAA,QAAwB;AACjC,SACEC,qBAAA,EACAC,0BAAA,QACK;AAyCC,SAAAC,GAAA;AAnHR,MAAMC,QAAA,GAAWL,EAAA,CAAGM,OAAA,CAAQ,MAAM;EAGhC,MAAMC,KAAA,GAAQ;IAAEC,OAAA,EAAS;EAAK;EAE9B,MAAMC,QAAA,CAAS;IA0BbC,YAAqBC,OAAA,EAA8B;MAA9B,KAAAA,OAAA,GAAAA,OAAA;MACnBC,SAAA,CAAUC,IAAA,CAAK,IAAI;MACnB,KAAKC,aAAA,GAAgBC,OAAA,CAAQC,OAAA,CAAQT,KAAA,CAAMC,OAAO;MAClD,MAAMS,SAAA,GAAY,mBAAIC,GAAA,CAAgB;MACtC,KAAKC,UAAA,GAAa;QAChBC,KAAA,EAAO;UACLZ,OAAA,EAAS;YAAEa,IAAA,EAAM;UAAS;UAC1BC,SAAA,EAAYC,QAAA,IAAyB;YACnCN,SAAA,CAAUO,GAAA,CAAID,QAAQ;YACtB,OAAO,MAAM;cACXN,SAAA,CAAUQ,MAAA,CAAOF,QAAQ;YAC3B;UACF;QACF;QACAG,OAAA,EAAS1B,EAAA,CAAG2B,EAAA,CAAG;MACjB;MACE,KAAaC,qBAAA,GAAwBX,SAAA;IACzC;IA1CSY,OAAA,GAAU,CAAC;IACXV,UAAA;IAOAM,MAAA,GAASzB,EAAA,CAAG2B,EAAA,CAAG,aAAa;MAAEG,MAAA,EAAQ;IAAG,EAAE;IAC3CC,KAAA,GAAQ/B,EAAA,CAAG2B,EAAA,CAAG;IACdK,GAAA,GAAMhC,EAAA,CAAG2B,EAAA,CAAG,YAAY,EAAE;IAC1BM,MAAA,GAAS;MAChBC,IAAA,EAAM;QACJC,MAAA,EAAQnC,EAAA,CAAG2B,EAAA,CAAG,OAAO;UACnBS,MAAA,EAAQrB,OAAA,CAAQC,OAAA,CAAQ,CAAC,CAAC;UAC1BqB,MAAA,EAAQtB,OAAA,CAAQC,OAAA,CAAQ,CAAC,CAAC;QAC5B,EAAE;MACJ;IACF;IACSsB,OAAA,GAAUtC,EAAA,CAAG2B,EAAA,CAAG,OAAO;MAC9BY,OAAA,EAASA,CAAA,KAAM,CAAC;MAChBC,QAAA,EAAUzB,OAAA,CAAQC,OAAA,CAAQ;IAC5B,EAAE;IACOF,aAAA;EAoBX;EAEA,MAAMF,SAAA,GAAwB,EAAC;EAE/B,SAAS6B,mBAAmBC,QAAA,EAAoBrB,IAAA,EAAc;IAC5DqB,QAAA,CAASvB,UAAA,CAAWC,KAAA,CAAMZ,OAAA,CAAQa,IAAA,GAAOA,IAAA;IACzC,MAAMJ,SAAA,GAAayB,QAAA,CAAiBd,qBAAA;IACpC,WAAWL,QAAA,IAAY,CAAC,GAAGN,SAAS,GAAGM,QAAA,CAAS;EAClD;EAEA,OAAO;IAAEd,QAAA;IAAUG,SAAA;IAAWL,KAAA;IAAOkC;EAAmB;AAC1D,CAAC;AAEDzC,EAAA,CAAG2C,IAAA,CAAK,kBAAkB,MAAOC,cAAA,IAAmB;EAClD,MAAMC,MAAA,GAAS,MAAMD,cAAA,CAAgD;EACrE,OAAO;IACL,GAAGC,MAAA;IACHC,IAAA,EAAMzC,QAAA,CAASI;EACjB;AACF,CAAC;AAcDsC,UAAA,CAAWC,wBAAA,GAA2B;AAEtC,MAAMC,SAAA,GAAY3D,KAAA,CAAM,MAAM,EAAE4D,OAAA,CAAQ;EAAEC,EAAA,EAAI9D,MAAA,CAAO;EAAG+D,IAAA,EAAM/D,MAAA,CAAO;AAAE,CAAC,EAAEgE,UAAA,CAAW,IAAI;AACzF,MAAMC,MAAA,GAASlE,YAAA,CAAa;EAAEmE,MAAA,EAAQ,CAACN,SAAS;AAAE,CAAC;AAEnD,MAAMb,MAAA,GAASnC,gBAAA,CAAiB;EAC9BqD,MAAA;EACAE,MAAA,EAAQ,CAAC;EACTC,cAAA,EAAgB,CAAC;EACjBC,YAAA,EAAc;AAChB,CAAC;AAED,IAAIC,SAAA;AACJ,IAAIC,IAAA;AAEJ/D,UAAA,CAAW,MAAM;EACfgE,MAAA,CAAOC,cAAA,CAAeC,KAAA,CAAM;EAC5B5D,0BAAA,CAA2B;EAC3BE,QAAA,CAASO,SAAA,CAAUoD,MAAA,GAAS;EAC5B3D,QAAA,CAASE,KAAA,CAAMC,OAAA,GAAU;EACzBmD,SAAA,GAAYM,QAAA,CAASC,aAAA,CAAc,KAAK;EACxCN,IAAA,GAAO;AACT,CAAC;AAEDhE,SAAA,CAAU,MAAM;EACd,IAAIgE,IAAA,EAAMpE,GAAA,CAAI,MAAMoE,IAAA,EAAMO,OAAA,CAAQ,CAAC;AACrC,CAAC;AAED,eAAeC,MAAA,EAAQ;EACrBR,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACgC,MAAA,CAAOkC,WAAA,EAAP;MAAmBC,QAAA,EAAS;MAA6BC,MAAA,EAAO;MAC/DC,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;AACH;AAEAjB,IAAA,CAAK,qEAAqE,YAAY;EACpF,MAAMqE,KAAA,CAAM;EACZ,MAAMM,KAAA,GAAQrE,QAAA,CAASO,SAAA,CAAU,CAAC;EAClCd,MAAA,CAAO4E,KAAK,EAAEC,WAAA,CAAY;EAE1B,MAAMC,UAAA,GAAaxC,MAAA,CAAOyC,IAAA,CAAKpD,MAAA;EAC/B,MAAMjC,GAAA,CAAI,YAAY;IACpB,MAAMoF,UAAA,CAAW;EACnB,CAAC;EAED9E,MAAA,CAAO4E,KAAA,EAAOjD,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;EAC7ChF,MAAA,CAAO4E,KAAA,EAAO3C,KAAK,EAAE+C,qBAAA,CAAsB,CAAC;EAE5CtF,GAAA,CAAI,MAAMoE,IAAA,EAAMO,OAAA,CAAQ,CAAC;EACzB,MAAMC,KAAA,CAAM;EAEZtE,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAa,CAAC;EACzCjF,MAAA,CAAOO,QAAA,CAASO,SAAA,CAAU,CAAC,CAAC,EAAEoE,GAAA,CAAIC,IAAA,CAAKP,KAAK;AAC9C,CAAC;AAED3E,IAAA,CAAK,uEAAuE,YAAY;EAGtF6D,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACgC,MAAA,CAAOkC,WAAA,EAAP;MAAmBC,QAAA,EAAS;MAA6BC,MAAA,EAAO;MAC/DC,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EACD,MAAM0D,KAAA,GAAQrE,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACtCpF,MAAA,CAAO4E,KAAK,EAAEC,WAAA,CAAY;EAC1B,MAAMQ,WAAA,GAAc9E,QAAA,CAASO,SAAA,CAAUoD,MAAA;EAEvC,IAAIoB,MAAA;EACJ,MAAM5F,GAAA,CAAI,YAAY;IACpB4F,MAAA,GAAS,MAAMhD,MAAA,CAAOiD,MAAA,CAAO;IAE7B,MAAMtE,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAEDlB,MAAA,CAAOsF,MAAM,EAAEH,IAAA,CAAK,IAAI;EAGxBnF,MAAA,CAAO4E,KAAA,EAAOjD,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;EAC7ChF,MAAA,CAAOO,QAAA,CAASO,SAAA,CAAUoD,MAAM,EAAEiB,IAAA,CAAKE,WAAA,GAAc,CAAC;EACtDrF,MAAA,CAAOO,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE,CAAC,EAAEF,GAAA,CAAIC,IAAA,CAAKP,KAAK;AAClD,CAAC;AAED3E,IAAA,CAAK,6EAA6E,YAAY;EAC5F,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EACD,MAAMvC,UAAA,GAAamE,QAAA,CAASC,eAAA,CAAgB;IAC1ChB,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRgB,OAAA,EAAS;IACTC,UAAA,EAAY;EACd,CAAC;EACD,MAAM/C,QAAA,GAAWrC,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACzCpF,MAAA,CAAO4C,QAAQ,EAAEiC,WAAA,CAAY;EAC7B,MAAMxD,UAAA,CAAWY,KAAA,CAAM;EAEvB,MAAM2D,YAAA,GAAe1F,EAAA,CAAG2F,KAAA,CAAMC,OAAA,EAAS,OAAO,EAAEC,kBAAA,CAAmB,MAAM,CAAC,CAAC;EAC3E,IAAI;IACFnD,QAAA,EAAU/B,OAAA,CAAQmF,cAAA,CAAe;MAC/BC,IAAA,EAAMxG,sBAAA,CAAuByG;IAC/B,CAAC;IACD,MAAM,IAAIjF,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACrDlB,MAAA,CAAO4F,YAAY,EAAEV,GAAA,CAAIkB,oBAAA,CACvB,+DACF;EACF,UAAE;IACAR,YAAA,CAAaS,WAAA,CAAY;EAC3B;AACF,CAAC;AAEDpG,IAAA,CAAK,sEAAsE,YAAY;EACrF,MAAMqG,gBAAA,GAAmBnG,gBAAA,CAAiB;IACxCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EACD,MAAM2C,WAAA,GAEF,EAAC;EAEL,SAASC,gBAAA,EAAkB;IACzB,MAAMC,UAAA,GAAaH,gBAAA,CAAiBI,yBAAA,CAA0B;IAC9D9G,eAAA,CAAgB,MAAM;MACpB,IAAI6G,UAAA,EAAYF,WAAA,CAAYxF,IAAA,CAAK0F,UAAU;IAC7C,GAAG,CAACA,UAAU,CAAC;IACf,OAAO;EACT;EAEA3C,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACgG,gBAAA,CAAiB9B,WAAA,EAAjB;MACCC,QAAA,EAAS;MACTC,MAAA,EAAO;MAEPC,QAAA,iBAAArE,GAAA,CAACkG,eAAA,IAAgB;IAAA,CACnB,CACF;IACA,MAAMvF,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAEDlB,MAAA,CAAOuG,WAAW,EAAEtB,YAAA,CAAa,CAAC;EAClC,MAAM0B,eAAA,GAAkBJ,WAAA,CAAY,CAAC;EACrCvG,MAAA,CAAO2G,eAAA,EAAiBC,SAAA,CAAU,CAAC,EAAEzB,IAAA,CAAK,IAAI;EAE9C,MAAMzF,GAAA,CAAI,YAAY;IACpBM,MAAA,CAAO,MAAMsG,gBAAA,CAAiBf,MAAA,CAAO;MAAEsB,cAAA,EAAgB;IAAM,CAAC,CAAC,EAAE1B,IAAA,CAAK,IAAI;IAC1E,MAAMlE,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAEDlB,MAAA,CAAOuG,WAAW,EAAEtB,YAAA,CAAa,CAAC;EAClCjF,MAAA,CAAOuG,WAAA,CAAY,CAAC,CAAC,EAAErB,GAAA,CAAIC,IAAA,CAAKwB,eAAe;EAC/C3G,MAAA,CAAO2G,eAAA,EAAiBC,SAAA,CAAU,CAAC,EAAEzB,IAAA,CAAK,KAAK;EAC/CnF,MAAA,CAAOuG,WAAA,CAAY,CAAC,GAAGK,SAAA,CAAU,CAAC,EAAEzB,IAAA,CAAK,IAAI;EAE7CzF,GAAA,CAAI,MAAMoE,IAAA,EAAMO,OAAA,CAAQ,CAAC;EACzBP,IAAA,GAAO;EACP9D,MAAA,CAAOuG,WAAA,CAAY,CAAC,GAAGK,SAAA,CAAU,CAAC,EAAEzB,IAAA,CAAK,KAAK;AAChD,CAAC;AAEDlF,IAAA,CAAK,kEAAkE,YAAY;EACjF,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EACD,IAAIkD,MAAA,GAAS;EACb,MAAMC,WAAA,GAAc,IAAI9F,OAAA,CAAc,MAAM,CAAC,CAAC;EAE9C,SAAS+F,YAAA,EAAc;IACrB,IAAIF,MAAA,EAAQ,MAAMC,WAAA;IAClB,OAAO,eAAAzG,GAAA,CAAC;MAAKqE,QAAA;IAAA,CAAK;EACpB;EAEA,SAASsC,IAAA,EAAM;IACb,OACE,eAAA3G,GAAA,CAACX,QAAA;MAASuH,QAAA,EAAU,eAAA5G,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAO;MAC/BA,QAAA,iBAAArE,GAAA,CAACkF,QAAA,CAAShB,WAAA,EAAT;QACCC,QAAA,EAAS;QACTC,MAAA,EAAO;QAEPC,QAAA,iBAAArE,GAAA,CAAC0G,WAAA,IAAY;MAAA,CACf;IAAA,CACF;EAEJ;EAEAlD,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CAAO,eAAAjE,GAAA,CAAC2G,GAAA,IAAI,CAAE;IACpB,MAAMhG,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAED,IAAIiG,YAAA,GAAwCA,CAAA,KAAM,CAAC;EACnD,MAAM5E,MAAA,GAAS,IAAItB,OAAA,CAAiBC,OAAA,IAAY;IAC9CiG,YAAA,GAAejG,OAAA;EACjB,CAAC;EACD,IAAIkG,OAAA,GAAU;EACd,MAAMC,eAAA,GAAkB7B,QAAA,CACrB8B,mBAAA,CACC;IAAEhF,MAAA,EAAQrB,OAAA,CAAQC,OAAA,CAAQ,QAAQ;IAAGqB;EAAO,GAC5C,0BACF,EACCgF,OAAA,CAAQ,MAAM;IACbH,OAAA,GAAU;EACZ,CAAC;EAEHN,MAAA,GAAS;EACT,MAAMpH,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CAAO,eAAAjE,GAAA,CAAC2G,GAAA,IAAI,CAAE;IACpB,MAAMhG,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAEDlB,MAAA,CAAO6D,SAAA,CAAU2D,WAAW,EAAEC,SAAA,CAAU,SAAS;EACjDzH,MAAA,CAAOoH,OAAO,EAAEjC,IAAA,CAAK,KAAK;EAC1BgC,YAAA,CAAa,QAAQ;EACrB,MAAMnH,MAAA,CAAOqH,eAAe,EAAEK,QAAA,CAASvC,IAAA,CAAK,QAAQ;AACtD,CAAC;AAEDlF,IAAA,CAAK,kFAAkF,YAAY;EAEjG,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EAID5D,MAAA,CAAO,MAAMwF,QAAA,CAASD,MAAA,CAAO,CAAC,EAAEJ,IAAA,CAAK,KAAK;EAC1CnF,MAAA,CAAO,MAAMwF,QAAA,CAASD,MAAA,CAAO,CAAC,EAAEJ,IAAA,CAAK,KAAK;EAE1CrB,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACkF,QAAA,CAAShB,WAAA,EAAT;MACCC,QAAA,EAAS;MACTC,MAAA,EAAO;MAEPC,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAID,IAAIoE,MAAA;EACJ,MAAM5F,GAAA,CAAI,YAAY;IACpB4F,MAAA,GAAS,MAAME,QAAA,CAASD,MAAA,CAAO;IAC/B,MAAMtE,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EACDlB,MAAA,CAAOsF,MAAM,EAAEH,IAAA,CAAK,IAAI;AAC1B,CAAC;AAEDlF,IAAA,CAAK,sFAAsF,YAAY;EACrGC,EAAA,CAAGyH,aAAA,CAAc;EACjB,IAAI;IACF,MAAMnC,QAAA,GAAWrF,gBAAA,CAAiB;MAChCqD,MAAA;MACAE,MAAA,EAAQ,CAAC;MACTC,cAAA,EAAgB,CAAC;MACjBC,YAAA,EAAc;IAChB,CAAC;IACD,MAAMgE,cAAA,GAAiB1H,EAAA,CAAG2B,EAAA,CAAG;IAC7B,MAAMgG,MAAA,GAAuE,EAAC;IAC9E,MAAMC,GAAA,GAAMtC,QAAA,CAASuC,UAAA,CAAWC,MAAA,CAAQC,KAAA,IAAU;MAChD,IAAIA,KAAA,EAAOJ,MAAA,CAAO9G,IAAA,CAAKkH,KAAK;IAC9B,CAAC;IAEDnE,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;IAC3B,MAAMnE,GAAA,CAAI,YAAY;MACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACkF,QAAA,CAAShB,WAAA,EAAT;QACCC,QAAA,EAAS;QACTC,MAAA,EAAO;QACPkD,cAAA;QAEAjD,QAAA,iBAAArE,GAAA,CAAC;UAAKqE,QAAA;QAAA,CAAE;MAAA,CACV,CACF;MACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;IACxB,CAAC;IAED,MAAMgH,OAAA,GAAU,MAAOC,KAAA,IAAkB;MACvC,MAAM7C,MAAA,GAASE,QAAA,CAAS8B,mBAAA,CACtB;QAAEhF,MAAA,EAAQrB,OAAA,CAAQC,OAAA,CAAQ,CAAC,CAAC;QAAGqB,MAAA,EAAQ,IAAItB,OAAA,CAAQ,MAAM,CAAC,CAAC;MAAE,GAC7DkH,KAAA,EACA,EACF;MACA,MAAMC,QAAA,GAAWpI,MAAA,CAAOsF,MAAM,EAAE+C,OAAA,CAAQC,aAAA,CAAc;QACpD/G,IAAA,EAAM;QACNgH,KAAA,EAAO;MACT,CAAC;MACD,MAAM7I,GAAA,CAAI,YAAY;QACpB,MAAMQ,EAAA,CAAGsI,wBAAA,CAAyB,EAAE;MACtC,CAAC;MACD,MAAMJ,QAAA;IACR;IAEA,MAAMF,OAAA,CAAQ,aAAa;IAC3BlI,MAAA,CAAO6H,MAAM,EAAEY,OAAA,CAAQ,EAAE;IACzB,MAAMP,OAAA,CAAQ,cAAc;IAC5B,MAAMxI,GAAA,CAAI,YAAY;MACpB,MAAMuB,OAAA,CAAQC,OAAA,CAAQ;IACxB,CAAC;IACDlB,MAAA,CAAO6H,MAAM,EAAEa,cAAA,CAAe;MAC5BzC,IAAA,EAAM;MACN0C,MAAA,EAAQ;MACRC,SAAA,EAAW;MACXC,MAAA,EACE;IACJ,CAAC;IACD7I,MAAA,CAAO4H,cAAc,EAAE1C,GAAA,CAAI4D,gBAAA,CAAiB;IAC5C9I,MAAA,CAAOO,QAAA,CAASO,SAAA,CAAU,CAAC,GAAGa,MAAM,EAAEuD,GAAA,CAAI4D,gBAAA,CAAiB;IAC3DhB,GAAA,CAAI;EACN,UAAE;IACA5H,EAAA,CAAG6I,aAAA,CAAc;EACnB;AACF,CAAC;AAED9I,IAAA,CAAK,sEAAsE,YAAY;EACrF,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EACD,MAAMgE,cAAA,GAAiB1H,EAAA,CAAG2B,EAAA,CAAG;EAC7B,MAAMmH,OAAA,GAAU9I,EAAA,CAAG2B,EAAA,CAAG;EACtBiC,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACkF,QAAA,CAAShB,WAAA,EAAT;MACCC,QAAA,EAAS;MACTC,MAAA,EAAO;MACPuE,SAAA,EAAW;QACTD,OAAA;QACAE,kBAAA,EAAoB;UAAEC,MAAA,EAAQ,CAAC,gBAAgB;QAAE;MACnD;MACAC,iBAAA,EAAmB,CAAC,kCAAkC;MACtDxB,cAAA;MAEAjD,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAED,MAAM0B,QAAA,GAAWrC,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACzCxC,QAAA,CAAS/B,OAAA,CAAQwI,OAAA,CAAQC,GAAA,CAAI,SAAS,QAAW,2BAA2B;EAC5E1G,QAAA,CAAS/B,OAAA,CAAQwI,OAAA,CAAQC,GAAA,CAAI,SAAS,QAAW,mCAAmC;EACpF,MAAMrI,OAAA,CAAQC,OAAA,CAAQ;EACtBlB,MAAA,CAAOgJ,OAAO,EAAEO,oBAAA,CAAqB;EACrCvJ,MAAA,CAAO4H,cAAc,EAAE1C,GAAA,CAAI4D,gBAAA,CAAiB;AAC9C,CAAC;AAED7I,IAAA,CAAK,6EAA6E,YAAY;EAE5F,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EAEDE,IAAA,GAAOjE,UAAA,CAAWgE,SAAS;EAC3B,MAAMnE,GAAA,CAAI,YAAY;IACpBoE,IAAA,EAAMS,MAAA,CACJ,eAAAjE,GAAA,CAACkF,QAAA,CAAShB,WAAA,EAAT;MAAqBC,QAAA,EAAS;MAA6BC,MAAA,EAAO;MACjEC,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAED,MAAM0D,KAAA,GAAQrE,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACtCpF,MAAA,CAAO4E,KAAK,EAAEC,WAAA,CAAY;EAE1B,MAAMnF,GAAA,CAAI,YAAY;IACpB,MAAM8F,QAAA,CAASgE,MAAA,CAAO;IACtB,MAAMvI,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAGDlB,MAAA,CAAO4E,KAAA,EAAOjD,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;EAC7ChF,MAAA,CAAO4E,KAAA,EAAO3C,KAAK,EAAE+C,qBAAA,CAAsB,CAAC;EAC5C,MAAMyE,MAAA,GAASlJ,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACvCpF,MAAA,CAAOyJ,MAAM,EAAEvE,GAAA,CAAIC,IAAA,CAAKP,KAAK;EAK7B,MAAMlF,GAAA,CAAI,YAAY;IACpB,MAAM8F,QAAA,CAASgE,MAAA,CAAO;IACtB,MAAMvI,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EAEDlB,MAAA,CAAOyJ,MAAA,EAAQ9H,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;EAC9ChF,MAAA,CAAOO,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE,CAAC,EAAEF,GAAA,CAAIC,IAAA,CAAKsE,MAAM;AACnD,CAAC;AAEDxJ,IAAA,CAAK,+EAA+E,YAAY;EAC9F,MAAMuF,QAAA,GAAWrF,gBAAA,CAAiB;IAChCqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC,YAAA,EAAc;EAChB,CAAC;EACD,MAAMvC,UAAA,GAAamE,QAAA,CAASC,eAAA,CAAgB;IAC1ChB,QAAA,EAAU;IACVC,MAAA,EAAQ;EACV,CAAC;EACD,MAAME,KAAA,GAAQrE,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EACtC,MAAMC,WAAA,GAAc9E,QAAA,CAASO,SAAA,CAAUoD,MAAA;EAEvCU,KAAA,CAAM/D,OAAA,CAAQmF,cAAA,CAAe;IAAEC,IAAA,EAAM;EAAiB,CAAC;EAEvD,MAAM/F,EAAA,CAAGwJ,OAAA,CAAQ,MAAM1J,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAaI,WAAA,GAAc,CAAC,CAAC;EAC/ErF,MAAA,CAAOqB,UAAA,CAAW0D,IAAI,EAAEG,GAAA,CAAIC,IAAA,CAAKP,KAAK;EACtC5E,MAAA,CAAO,MAAMwF,QAAA,CAASmE,WAAA,CAAY,CAAC,EAAExE,IAAA,CAAK9D,UAAA,CAAW0D,IAAI;EACzD/E,MAAA,CAAO4E,KAAA,CAAM3C,KAAK,EAAEsH,oBAAA,CAAqB;EAEzC,MAAMlI,UAAA,CAAWY,KAAA,CAAM;AACzB,CAAC;AAED,SAAS2H,qBAAqBhG,YAAA,EAAsB;EAClD,OAAOzD,gBAAA,CAAiB;IACtBqD,MAAA;IACAE,MAAA,EAAQ,CAAC;IACTC,cAAA,EAAgB,CAAC;IACjBC;EACF,CAAC;AACH;AAEA,SAASiG,oBAAoBvH,OAAA,EAE1B;EACD,MAAMuF,MAAA,GAAsB,EAAC;EAC7B,MAAMC,GAAA,GAAMxF,OAAA,CAAOyF,UAAA,CAAWC,MAAA,CAAQC,KAAA,IAAU;IAC9C,IAAIA,KAAA,EAAOJ,MAAA,CAAO9G,IAAA,CAAKkH,KAAK;EAC9B,CAAC;EACD,OAAO;IAAEJ,MAAA;IAAQC;EAAI;AACvB;AAEA,eAAegC,sBACbC,OAAA,EACArF,MAAA,EACA;EACA,MAAMsF,EAAA,GAAK7F,QAAA,CAASC,aAAA,CAAc,KAAK;EACvC,MAAM6F,WAAA,GAAcpK,UAAA,CAAWmK,EAAE;EACjC,MAAMtK,GAAA,CAAI,YAAY;IACpBuK,WAAA,CAAY1F,MAAA,CACV,eAAAjE,GAAA,CAACyJ,OAAA,CAAOvF,WAAA,EAAP;MAAmBC,QAAA,EAAS;MAA6BC,MAAA;MACxDC,QAAA,iBAAArE,GAAA,CAAC;QAAKqE,QAAA;MAAA,CAAE;IAAA,CACV,CACF;IACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;EACxB,CAAC;EACD,OAAO;IAAE8I,EAAA;IAAIlG,IAAA,EAAMmG,WAAA;IAAarH,QAAA,EAAUrC,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;EAAG;AACvE;AAEA,eAAe8E,wBAAwBC,OAAA,EAAyB;EAC9D,MAAMzK,GAAA,CAAI,YAAY;IACpByK,OAAA,CAAQrG,IAAA,CAAKO,OAAA,CAAQ;EACvB,CAAC;AACH;AAEA,SAAS+F,kBAAA,EAAoB;EAC3B,MAAMC,gBAAA,GAAmBpH,UAAA,CAAWqH,QAAA;EACpCC,MAAA,CAAOC,cAAA,CAAevH,UAAA,EAAY,YAAY;IAC5CwH,YAAA,EAAc;IACdC,KAAA,EAAO;EACT,CAAC;EACD,OAAO,MAAM;IACXH,MAAA,CAAOC,cAAA,CAAevH,UAAA,EAAY,YAAY;MAC5CwH,YAAA,EAAc;MACdC,KAAA,EAAOL;IACT,CAAC;EACH;AACF;AAEApK,IAAA,CAAK,0EAA0E,YAAY;EACzF,MAAM0K,eAAA,GAAkBP,iBAAA,CAAkB;EAC1C,MAAMQ,OAAA,GAAUhB,oBAAA,CAAqB,kBAAkB;EACvD,MAAMiB,OAAA,GAAUjB,oBAAA,CAAqB,kBAAkB;EACvD,MAAMkB,UAAA,GAAajB,mBAAA,CAAoBe,OAAO;EAC9C,MAAMG,UAAA,GAAalB,mBAAA,CAAoBgB,OAAO;EAE9C,MAAMG,QAAA,GAAW,MAAMlB,qBAAA,CAAsBc,OAAA,EAAS,iBAAiB;EACvE,MAAMK,QAAA,GAAW,MAAMnB,qBAAA,CAAsBe,OAAA,EAAS,iBAAiB;EACvE,MAAMK,MAAA,GAASF,QAAA,CAASpI,QAAA;EACxB,MAAMuI,MAAA,GAASF,QAAA,CAASrI,QAAA;EACxB,MAAMyC,WAAA,GAAc9E,QAAA,CAASO,SAAA,CAAUoD,MAAA;EACvC,IAAI;IAEFgH,MAAA,CAAOrK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAAiB,CAAC;IACxDkF,MAAA,CAAOtK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAAiB,CAAC;IACxD,MAAMvG,GAAA,CAAI,YAAY;MACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACvD,CAAC;IAGDlB,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAaI,WAAA,GAAc,CAAC;IACvD,MAAM+F,OAAA,GAAU7K,QAAA,CAASO,SAAA,CAAUuE,WAAW;IAC9C,MAAMgG,OAAA,GAAU9K,QAAA,CAASO,SAAA,CAAUuE,WAAA,GAAc,CAAC;IAClDrF,MAAA,CAAOoL,OAAO,EAAElG,GAAA,CAAIC,IAAA,CAAK+F,MAAM;IAC/BlL,MAAA,CAAOqL,OAAO,EAAEnG,GAAA,CAAIC,IAAA,CAAKgG,MAAM;IAC/BnL,MAAA,CAAOkL,MAAA,CAAOjJ,KAAK,EAAE+C,qBAAA,CAAsB,CAAC;IAC5ChF,MAAA,CAAOmL,MAAA,CAAOlJ,KAAK,EAAE+C,qBAAA,CAAsB,CAAC;IAG5ChF,MAAA,CAAOI,qBAAA,CAAsB,CAAC,EAAE+E,IAAA,CAAK,IAAI;IACzC,MAAMzF,GAAA,CAAI,YAAY;MACpBa,QAAA,CAASoC,kBAAA,CAAmByI,OAAA,EAAS,WAAW;MAChD7K,QAAA,CAASoC,kBAAA,CAAmB0I,OAAA,EAAS,WAAW;MAChD,MAAMpK,OAAA,CAAQC,OAAA,CAAQ;IACxB,CAAC;IACD,MAAMhB,EAAA,CAAGwJ,OAAA,CAAQ,MAAM1J,MAAA,CAAOI,qBAAA,CAAsB,CAAC,EAAE+E,IAAA,CAAK,KAAK,CAAC;IAGlE,MAAMmG,SAAA,GAAY,CAAC,GAAGR,UAAA,CAAWjD,MAAA,EAAQ,GAAGkD,UAAA,CAAWlD,MAAM;IAC7D7H,MAAA,CAAOsL,SAAA,CAAUC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,YAAY,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAC/EjF,MAAA,CAAOsL,SAAA,CAAUC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAE1EjF,MAAA,CAAOkL,MAAA,CAAOvJ,MAAM,EAAEuD,GAAA,CAAI4D,gBAAA,CAAiB;IAC3C9I,MAAA,CAAOmL,MAAA,CAAOxJ,MAAM,EAAEuD,GAAA,CAAI4D,gBAAA,CAAiB;IAG3C,MAAM8B,OAAA,CAAQ7F,IAAA,CAAK7C,GAAA,CAAI,CAAC,CAAU;IAClC,MAAM2I,OAAA,CAAQ9F,IAAA,CAAK7C,GAAA,CAAI,CAAC,CAAU;IAClClC,MAAA,CAAOoL,OAAA,CAAQlJ,GAAG,EAAE4G,gBAAA,CAAiB;IACrC9I,MAAA,CAAOqL,OAAA,CAAQnJ,GAAG,EAAE4G,gBAAA,CAAiB;IAGnC8B,OAAA,CAAQ7F,IAAA,CAAK5C,MAAA,CAAeC,IAAA,CAAKC,MAAA,CAAO;MAAEgB,EAAA,EAAI;IAAK,CAAC;IACpDwH,OAAA,CAAQ9F,IAAA,CAAK5C,MAAA,CAAeC,IAAA,CAAKC,MAAA,CAAO;MAAEgB,EAAA,EAAI;IAAK,CAAC;IACtDrD,MAAA,CAAOoL,OAAA,CAAQjJ,MAAA,CAAOC,IAAA,CAAKC,MAAM,EAAE2C,qBAAA,CAAsB,CAAC;IAC1DhF,MAAA,CAAOqL,OAAA,CAAQlJ,MAAA,CAAOC,IAAA,CAAKC,MAAM,EAAE2C,qBAAA,CAAsB,CAAC;EAC5D,UAAE;IACA8F,UAAA,CAAWhD,GAAA,CAAI;IACfiD,UAAA,CAAWjD,GAAA,CAAI;IACf,MAAMoC,uBAAA,CAAwBc,QAAQ;IACtC,MAAMd,uBAAA,CAAwBe,QAAQ;IACtCN,eAAA,CAAgB;EAClB;AACF,CAAC;AAED1K,IAAA,CAAK,uEAAuE,YAAY;EACtF,MAAM0K,eAAA,GAAkBP,iBAAA,CAAkB;EAC1C,MAAMQ,OAAA,GAAUhB,oBAAA,CAAqB,qBAAqB;EAC1D,MAAMiB,OAAA,GAAUjB,oBAAA,CAAqB,qBAAqB;EAC1D,MAAMkB,UAAA,GAAajB,mBAAA,CAAoBe,OAAO;EAC9C,MAAMG,UAAA,GAAalB,mBAAA,CAAoBgB,OAAO;EAC9C,MAAMG,QAAA,GAAW,MAAMlB,qBAAA,CAAsBc,OAAA,EAAS,wBAAwB;EAC9E,MAAMK,QAAA,GAAW,MAAMnB,qBAAA,CAAsBe,OAAA,EAAS,wBAAwB;EAC9E,IAAI;IACF,MAAMW,QAAA,GAAY1K,SAAA,IAAuD;MACvEA,SAAA,CAAU,CAAC,EAAGD,OAAA,CAAQmF,cAAA,CAAe;QAAEC,IAAA,EAAM;MAAiB,CAAC;MAC/DnF,SAAA,CAAU,CAAC,EAAGD,OAAA,CAAQmF,cAAA,CAAe;QAAEC,IAAA,EAAM;MAAiB,CAAC;IACjE;IACA,MAAMwF,aAAA,GAAgB,MAAOpG,YAAA,IAAwB;MACnD,MAAM3F,GAAA,CAAI,YAAY;QACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;MACvD,CAAC;MACDlB,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAaI,YAAA,GAAc,CAAC;MACvD,MAAMqG,IAAA,GAAOnL,QAAA,CAASO,SAAA,CAAU6K,KAAA,CAAMtG,YAAW;MACjD,MAAM3F,GAAA,CAAI,YAAY;QACpB,WAAWkD,QAAA,IAAY8I,IAAA,EAAMnL,QAAA,CAASoC,kBAAA,CAAmBC,QAAA,EAAU,WAAW;QAC9E,MAAM3B,OAAA,CAAQC,OAAA,CAAQ;MACxB,CAAC;MACD,MAAMhB,EAAA,CAAGwJ,OAAA,CAAQ,MAAM1J,MAAA,CAAOI,qBAAA,CAAsB,CAAC,EAAE+E,IAAA,CAAK,KAAK,CAAC;MAClE,OAAOuG,IAAA;IACT;IAGA,MAAME,gBAAA,GAAmBrL,QAAA,CAASO,SAAA,CAAUoD,MAAA;IAC5CsH,QAAA,CAASjL,QAAA,CAASO,SAAA,CAAU6K,KAAA,CAAM,EAAE,CAAC;IACrC,MAAMF,aAAA,CAAcG,gBAAgB;IAGpCrL,QAAA,CAASE,KAAA,CAAMC,OAAA,GAAU;IACzB,MAAM2E,WAAA,GAAc9E,QAAA,CAASO,SAAA,CAAUoD,MAAA;IACvCsH,QAAA,CAASjL,QAAA,CAASO,SAAA,CAAU6K,KAAA,CAAM,EAAE,CAAC;IACrC,MAAME,KAAA,GAAQ,MAAMJ,aAAA,CAAcpG,WAAW;IAE7C,MAAMiG,SAAA,GAAY,CAAC,GAAGR,UAAA,CAAWjD,MAAA,EAAQ,GAAGkD,UAAA,CAAWlD,MAAM;IAC7D7H,MAAA,CAAOsL,SAAA,CAAUC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,YAAY,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAC/EjF,MAAA,CAAOsL,SAAA,CAAUC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAE1E,MAAM2F,OAAA,CAAQ7F,IAAA,CAAK7C,GAAA,CAAI,CAAC,CAAU;IAClC,MAAM2I,OAAA,CAAQ9F,IAAA,CAAK7C,GAAA,CAAI,CAAC,CAAU;IAClClC,MAAA,CAAO6L,KAAA,CAAM,CAAC,EAAG3J,GAAG,EAAE4G,gBAAA,CAAiB;IACvC9I,MAAA,CAAO6L,KAAA,CAAM,CAAC,EAAG3J,GAAG,EAAE4G,gBAAA,CAAiB;EACzC,UAAE;IACAgC,UAAA,CAAWhD,GAAA,CAAI;IACfiD,UAAA,CAAWjD,GAAA,CAAI;IACf,MAAMoC,uBAAA,CAAwBc,QAAQ;IACtC,MAAMd,uBAAA,CAAwBe,QAAQ;IACtCN,eAAA,CAAgB;EAClB;AACF,CAAC;AAED1K,IAAA,CAAK,2FAA2F,YAAY;EAC1G,MAAM0K,eAAA,GAAkBP,iBAAA,CAAkB;EAC1C,MAAMxE,YAAA,GAAe1F,EAAA,CAAG2F,KAAA,CAAMC,OAAA,EAAS,OAAO,EAAEC,kBAAA,CAAmB,MAAM,CAAC,CAAC;EAC3E,MAAM6E,OAAA,GAAUhB,oBAAA,CAAqB,uBAAuB;EAC5D,MAAMiB,OAAA,GAAUjB,oBAAA,CAAqB,uBAAuB;EAC5D,MAAMkB,UAAA,GAAajB,mBAAA,CAAoBe,OAAO;EAC9C,MAAMG,UAAA,GAAalB,mBAAA,CAAoBgB,OAAO;EAC9C,MAAMG,QAAA,GAAW,MAAMlB,qBAAA,CAAsBc,OAAA,EAAS,0BAA0B;EAChF,MAAMK,QAAA,GAAW,MAAMnB,qBAAA,CAAsBe,OAAA,EAAS,0BAA0B;EAChF,MAAMK,MAAA,GAASF,QAAA,CAASpI,QAAA;EACxB,MAAMuI,MAAA,GAASF,QAAA,CAASrI,QAAA;EACxB,MAAMyC,WAAA,GAAc9E,QAAA,CAASO,SAAA,CAAUoD,MAAA;EACvC,IAAI;IACFgH,MAAA,CAAOrK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAA4B,CAAC;IACnEkF,MAAA,CAAOtK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAA4B,CAAC;IACnE,MAAMvG,GAAA,CAAI,YAAY;MACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACvD,CAAC;IAEDlB,MAAA,CAAOkL,MAAA,CAAOvJ,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;IAC7ChF,MAAA,CAAOmL,MAAA,CAAOxJ,MAAM,EAAEqD,qBAAA,CAAsB,CAAC;IAC7ChF,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAaI,WAAA,GAAc,CAAC;IACvD,MAAM+F,OAAA,GAAU7K,QAAA,CAASO,SAAA,CAAUuE,WAAW;IAC9C,MAAMgG,OAAA,GAAU9K,QAAA,CAASO,SAAA,CAAUuE,WAAA,GAAc,CAAC;IAClDrF,MAAA,CAAOI,qBAAA,CAAsB,CAAC,EAAE+E,IAAA,CAAK,IAAI;IAGzCiG,OAAA,CAAQvK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAA4B,CAAC;IACpE,MAAMvG,GAAA,CAAI,YAAY;MACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACvD,CAAC;IAED,MAAMoK,SAAA,GAAYA,CAAA,KAAM,CAAC,GAAGR,UAAA,CAAWjD,MAAA,EAAQ,GAAGkD,UAAA,CAAWlD,MAAM;IACnE7H,MAAA,CAAOsL,SAAA,CAAU,EAAEC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAC5E,MAAM,CAAC6G,KAAK,IAAIR,SAAA,CAAU,EAAEC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO;IACpEjG,MAAA,CAAO8L,KAAK,EAAExD,aAAA,CAAc;MAC1BM,SAAA,EAAW;MACXC,MAAA,EAAQ7I,MAAA,CAAO+L,gBAAA,CAAiB,IAAI;IACtC,CAAC;IACD/L,MAAA,CAAO4F,YAAY,EAAEZ,qBAAA,CAAsB,CAAC;IAC5ChF,MAAA,CAAO4F,YAAA,CAAa/C,IAAA,CAAKmJ,KAAA,CAAM,CAAC,EAAG,CAAC,CAAC,EAAEvE,SAAA,CAAU,IAAI;IAGrD4D,OAAA,CAAQxK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAA4B,CAAC;IACpEmF,OAAA,CAAQvK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAA4B,CAAC;IACpE,MAAMvG,GAAA,CAAI,YAAY;MACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACvD,CAAC;IACDlB,MAAA,CAAOsL,SAAA,CAAU,EAAEC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAC5EjF,MAAA,CAAO4F,YAAY,EAAEZ,qBAAA,CAAsB,CAAC;IAC5ChF,MAAA,CAAOO,QAAA,CAASO,SAAS,EAAEmE,YAAA,CAAaI,WAAA,GAAc,CAAC;EACzD,UAAE;IACAyF,UAAA,CAAWhD,GAAA,CAAI;IACfiD,UAAA,CAAWjD,GAAA,CAAI;IACf,MAAMoC,uBAAA,CAAwBc,QAAQ;IACtC,MAAMd,uBAAA,CAAwBe,QAAQ;IACtCN,eAAA,CAAgB;IAChB/E,YAAA,CAAaS,WAAA,CAAY;EAC3B;AACF,CAAC;AAEDpG,IAAA,CAAK,uEAAuE,YAAY;EACtF,MAAMgM,UAAA,GAAa/L,EAAA,CAAG2B,EAAA,CAAG;EACzB,MAAMwI,gBAAA,GAAmBpH,UAAA,CAAWqH,QAAA;EACpCC,MAAA,CAAOC,cAAA,CAAevH,UAAA,EAAY,YAAY;IAC5CwH,YAAA,EAAc;IACdC,KAAA,EAAO;MAAEwB,IAAA,EAAM;MAAgCC,MAAA,EAAQF;IAAW;EACpE,CAAC;EACD,MAAMG,SAAA,GAAYlM,EAAA,CAAG2B,EAAA,CAAG;EACxB,MAAMwK,SAAA,GAAYnM,EAAA,CAAG2B,EAAA,CAAG;EACxB,MAAM+I,OAAA,GAAUhB,oBAAA,CAAqB,qBAAqB;EAC1D,MAAMiB,OAAA,GAAUjB,oBAAA,CAAqB,qBAAqB;EAC1D,MAAMkB,UAAA,GAAajB,mBAAA,CAAoBe,OAAO;EAC9C,MAAMG,UAAA,GAAalB,mBAAA,CAAoBgB,OAAO;EAC9C,MAAMyB,GAAA,GAAMnI,QAAA,CAASC,aAAA,CAAc,KAAK;EACxC,MAAMmI,GAAA,GAAMpI,QAAA,CAASC,aAAA,CAAc,KAAK;EACxC,MAAMoI,KAAA,GAAQ3M,UAAA,CAAWyM,GAAG;EAC5B,MAAMG,KAAA,GAAQ5M,UAAA,CAAW0M,GAAG;EAC5B,IAAI;IACF,MAAM7M,GAAA,CAAI,YAAY;MACpB8M,KAAA,CAAMjI,MAAA,CACJ,eAAAjE,GAAA,CAACsK,OAAA,CAAQpG,WAAA,EAAR;QACCC,QAAA,EAAS;QACTC,MAAA,EAAO;QACPkD,cAAA,EAAgBwE,SAAA;QAEhBzH,QAAA,iBAAArE,GAAA,CAAC;UAAKqE,QAAA;QAAA,CAAE;MAAA,CACV,CACF;MACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;IACxB,CAAC;IACD,MAAMxB,GAAA,CAAI,YAAY;MACpB+M,KAAA,CAAMlI,MAAA,CACJ,eAAAjE,GAAA,CAACuK,OAAA,CAAQrG,WAAA,EAAR;QACCC,QAAA,EAAS;QACTC,MAAA,EAAO;QACPkD,cAAA,EAAgByE,SAAA;QAEhB1H,QAAA,iBAAArE,GAAA,CAAC;UAAKqE,QAAA;QAAA,CAAE;MAAA,CACV,CACF;MACA,MAAM1D,OAAA,CAAQC,OAAA,CAAQ;IACxB,CAAC;IACD,MAAMgK,MAAA,GAAS3K,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;IACvC,MAAM+F,MAAA,GAAS5K,QAAA,CAASO,SAAA,CAAUsE,EAAA,CAAG,EAAE;IAEvC8F,MAAA,CAAOrK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAAiB,CAAC;IACxDkF,MAAA,CAAOtK,OAAA,CAAQmF,cAAA,CAAe;MAAEC,IAAA,EAAM;IAAiB,CAAC;IACxD,MAAMvG,GAAA,CAAI,YAAY;MACpB,MAAM,IAAIuB,OAAA,CAASC,OAAA,IAAYiF,UAAA,CAAWjF,OAAA,EAAS,CAAC,CAAC;IACvD,CAAC;IAGDlB,MAAA,CAAOoM,SAAA,CAAUvJ,IAAA,CAAKmJ,KAAA,CAAM9H,MAAA,GAASmI,SAAA,CAAUxJ,IAAA,CAAKmJ,KAAA,CAAM9H,MAAM,EAAEiB,IAAA,CAAK,CAAC;IACxEnF,MAAA,CAAOiM,UAAU,EAAE/G,GAAA,CAAI4D,gBAAA,CAAiB;IACxC,MAAMwC,SAAA,GAAY,CAAC,GAAGR,UAAA,CAAWjD,MAAA,EAAQ,GAAGkD,UAAA,CAAWlD,MAAM;IAC7D7H,MAAA,CAAOsL,SAAA,CAAUC,MAAA,CAAQtD,KAAA,IAAUA,KAAA,CAAMhC,IAAA,KAAS,OAAO,CAAC,EAAEhB,YAAA,CAAa,CAAC;IAE1E,MAAMyH,GAAA,IAAON,SAAA,CAAUvJ,IAAA,CAAKmJ,KAAA,CAAM,CAAC,KAAKK,SAAA,CAAUxJ,IAAA,CAAKmJ,KAAA,CAAM,CAAC,GAAI,CAAC;IACnE,MAAMtM,GAAA,CAAI,YAAY;MACpB,MAAMgN,GAAA,CAAIC,aAAA,CAAc;IAC1B,CAAC;IACD3M,MAAA,CAAOiM,UAAU,EAAEjH,qBAAA,CAAsB,CAAC;IAC1ChF,MAAA,CAAOI,qBAAA,CAAsB,CAAC,EAAE+E,IAAA,CAAK,KAAK;IAE1C,MAAMyH,MAAA,GAAS7I,MAAA,CAAOC,cAAA,CAAe6I,OAAA,CACnC,6DACF;IACA7M,MAAA,CAAO4M,MAAM,EAAEnF,SAAA,CAAU,IAAI;EAC/B,UAAE;IACAqD,UAAA,CAAWhD,GAAA,CAAI;IACfiD,UAAA,CAAWjD,GAAA,CAAI;IACf,MAAMpI,GAAA,CAAI,YAAY;MACpB8M,KAAA,CAAMnI,OAAA,CAAQ;IAChB,CAAC;IACD,MAAM3E,GAAA,CAAI,YAAY;MACpB+M,KAAA,CAAMpI,OAAA,CAAQ;IAChB,CAAC;IACDkG,MAAA,CAAOC,cAAA,CAAevH,UAAA,EAAY,YAAY;MAC5CwH,YAAA,EAAc;MACdC,KAAA,EAAOL;IACT,CAAC;EACH;AACF,CAAC","ignoreList":[]}