on-zero 0.9.3 → 0.9.5

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.
@@ -581,6 +581,7 @@ function createZeroClientInternal({
581
581
  scheduleReload,
582
582
  guardStorage,
583
583
  benignLogPatterns,
584
+ refreshAuth,
584
585
  ...options
585
586
  } = props;
586
587
  (0, import_state.setAuthData)(authData ?? null);
@@ -594,33 +595,38 @@ function createZeroClientInternal({
594
595
  });
595
596
  publishZeroInstance(zeroInstance);
596
597
  zeroInstanceVersion?.emit(zeroInstanceVersion.value + 1);
598
+ const unwatch = watchZeroConnection({
599
+ zeroInstance,
600
+ refreshAuth
601
+ });
597
602
  return {
598
603
  zero: zeroInstance,
599
604
  close: async () => {
605
+ unwatch();
600
606
  clearZeroInstanceReferences(zeroInstance);
601
607
  mutationLifecycle.fence();
602
608
  await zeroInstance.close();
603
609
  }
604
610
  };
605
611
  }
606
- const ConnectionMonitor = (0, import_react2.memo)(({
607
- zeroEvents: zeroEvents2,
608
- refreshAuth,
609
- exposeDataset,
610
- datasetCacheUrl
611
- }) => {
612
- const zeroInstance = (0, import_react.useZero)();
613
- const state = (0, import_react.useConnectionState)();
614
- const prevState = (0, import_react2.useRef)(state.name);
615
- const hasConnectedRef = (0, import_react2.useRef)(false);
616
- const currentReconnect = zeroEvents2.value?.type === "reconnect" && zeroEvents2.value.status !== "connected" ? zeroEvents2.value : null;
617
- const reconnectRef = (0, import_react2.useRef)(currentReconnect ? {
612
+ function watchZeroConnection(args) {
613
+ const {
614
+ zeroInstance,
615
+ refreshAuth,
616
+ exposeDataset,
617
+ datasetCacheUrl
618
+ } = args;
619
+ let prevState = zeroInstance.connection.state.current.name;
620
+ let hasConnected = false;
621
+ const currentReconnect = zeroEvents.value?.type === "reconnect" && zeroEvents.value.status !== "connected" ? zeroEvents.value : null;
622
+ let reconnect = currentReconnect ? {
618
623
  reasonKey: currentReconnect.reasonKey,
619
624
  reason: currentReconnect.reason
620
- } : null);
621
- const recoverableErrorRef = (0, import_react2.useRef)(null);
622
- const needsAuthRef = (0, import_react2.useRef)(false);
623
- (0, import_react2.useEffect)(() => {
625
+ } : null;
626
+ let recoverableError = null;
627
+ let needsAuth = false;
628
+ const handle = () => {
629
+ const state = zeroInstance.connection.state.current;
624
630
  const name = state.name;
625
631
  const reason = "reason" in state && typeof state.reason === "string" ? state.reason : "";
626
632
  if (exposeDataset && typeof document !== "undefined" && document.body) {
@@ -630,10 +636,10 @@ function createZeroClientInternal({
630
636
  if (name === "connected") document.body.dataset.zeroConnected = "true";else delete document.body.dataset.zeroConnected;
631
637
  }
632
638
  if (name === "connected") {
633
- hasConnectedRef.current = true;
634
- recoverableErrorRef.current = null;
635
- if (reconnectRef.current) {
636
- reconnectRef.current = null;
639
+ hasConnected = true;
640
+ recoverableError = null;
641
+ if (reconnect) {
642
+ reconnect = null;
637
643
  emitReconnectStatus({
638
644
  type: "reconnect",
639
645
  status: "connected"
@@ -642,46 +648,46 @@ function createZeroClientInternal({
642
648
  }
643
649
  const reconnectReasonKey = reason.includes("ServerOverloaded") ? "server-overloaded" : reason.includes("Failed to fetch") || reason.includes("fetch failed") || reason.includes("NetworkError when attempting to fetch resource") || reason.includes("Network request failed") || reason.includes("Load failed") ? "transport" : void 0;
644
650
  if (name === "error" && ((0, import_recoverZeroClient.isRecoverableZeroStalePokeMessage)(reason) || reconnectReasonKey)) {
645
- if (recoverableErrorRef.current !== reason) {
646
- recoverableErrorRef.current = reason;
647
- reconnectRef.current = {
651
+ if (recoverableError !== reason) {
652
+ recoverableError = reason;
653
+ reconnect = {
648
654
  reasonKey: reconnectReasonKey ?? "transport",
649
655
  reason
650
656
  };
651
657
  emitReconnectStatus({
652
658
  type: "reconnect",
653
659
  status: "trying",
654
- ...reconnectRef.current
660
+ ...reconnect
655
661
  });
656
662
  void Promise.resolve(zeroInstance.connection?.connect?.()).catch(() => {});
657
663
  }
658
664
  return;
659
665
  }
660
- if (name !== "error") recoverableErrorRef.current = null;
661
- if (name === "connecting" && (reconnectRef.current || hasConnectedRef.current || Boolean(reason))) {
662
- reconnectRef.current = {
663
- reasonKey: reconnectReasonKey ?? reconnectRef.current?.reasonKey ?? "transport",
664
- reason: reason || reconnectRef.current?.reason || "connection interrupted"
666
+ if (name !== "error") recoverableError = null;
667
+ if (name === "connecting" && (reconnect || hasConnected || Boolean(reason))) {
668
+ reconnect = {
669
+ reasonKey: reconnectReasonKey ?? reconnect?.reasonKey ?? "transport",
670
+ reason: reason || reconnect?.reason || "connection interrupted"
665
671
  };
666
672
  emitReconnectStatus({
667
673
  type: "reconnect",
668
674
  status: reason ? "waiting" : "trying",
669
- ...reconnectRef.current
675
+ ...reconnect
670
676
  });
671
- } else if (name === "disconnected" && (reconnectRef.current || hasConnectedRef.current)) {
672
- reconnectRef.current = {
673
- reasonKey: reconnectRef.current?.reasonKey ?? "transport",
674
- reason: reason || reconnectRef.current?.reason || "connection interrupted"
677
+ } else if (name === "disconnected" && (reconnect || hasConnected)) {
678
+ reconnect = {
679
+ reasonKey: reconnect?.reasonKey ?? "transport",
680
+ reason: reason || reconnect?.reason || "connection interrupted"
675
681
  };
676
682
  emitReconnectStatus({
677
683
  type: "reconnect",
678
684
  status: "waiting",
679
- ...reconnectRef.current
685
+ ...reconnect
680
686
  });
681
687
  }
682
688
  if (name === "needs-auth") {
683
- if (refreshAuth && !needsAuthRef.current) {
684
- needsAuthRef.current = true;
689
+ if (refreshAuth && !needsAuth) {
690
+ needsAuth = true;
685
691
  void refreshAuth().then(token => {
686
692
  if (token) zeroInstance.connection?.connect?.({
687
693
  auth: token
@@ -689,19 +695,36 @@ function createZeroClientInternal({
689
695
  }).catch(() => {});
690
696
  }
691
697
  } else {
692
- needsAuthRef.current = false;
698
+ needsAuth = false;
693
699
  }
694
- if (name !== prevState.current) {
695
- prevState.current = name;
700
+ if (name !== prevState) {
701
+ prevState = name;
696
702
  if (name === "error" || name === "needs-auth") {
697
- zeroEvents2.emit({
703
+ zeroEvents.emit({
698
704
  type: "error",
699
705
  reasonKey: name === "needs-auth" ? "connection-needs-auth" : "connection-error",
700
706
  message: reason || name
701
707
  });
702
708
  }
703
709
  }
704
- }, [state, zeroEvents2, zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
710
+ };
711
+ const unsubscribe = zeroInstance.connection.state.subscribe(handle);
712
+ handle();
713
+ return unsubscribe;
714
+ }
715
+ const ConnectionMonitor = (0, import_react2.memo)(({
716
+ zeroEvents: _zeroEvents,
717
+ refreshAuth,
718
+ exposeDataset,
719
+ datasetCacheUrl
720
+ }) => {
721
+ const zeroInstance = (0, import_react.useZero)();
722
+ (0, import_react2.useEffect)(() => watchZeroConnection({
723
+ zeroInstance,
724
+ refreshAuth,
725
+ exposeDataset,
726
+ datasetCacheUrl
727
+ }), [zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
705
728
  return null;
706
729
  });
707
730
  function preload(fnArg, paramsOrOptions, optionsArg) {
@@ -298,4 +298,36 @@ async function mount(extraProps = {}, userID = "conn") {
298
298
  } finally {
299
299
  import_vitest.vi.useRealTimers();
300
300
  }
301
+ });
302
+ (0, import_vitest.test)("connectHeadless refreshes auth on needs-auth with no react tree", async () => {
303
+ const headlessClient = (0, import_createZeroClient.createZeroClient)({
304
+ schema,
305
+ models: {},
306
+ groupedQueries: {},
307
+ instanceName: "headless-auth-test"
308
+ });
309
+ const refreshAuth = import_vitest.vi.fn(async () => "headless-fresh-token");
310
+ const connection = headlessClient.connectHeadless({
311
+ userID: "headless-auth",
312
+ cacheURL: "http://127.0.0.1:7788/zero",
313
+ refreshAuth
314
+ });
315
+ const instance = fakeZero.instances.at(-1);
316
+ instance.connection.state.set({
317
+ name: "needs-auth",
318
+ reason: "token expired"
319
+ });
320
+ await Promise.resolve();
321
+ (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);
322
+ await Promise.resolve();
323
+ (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({
324
+ auth: "headless-fresh-token"
325
+ });
326
+ instance.connection.state.set({
327
+ name: "needs-auth",
328
+ reason: "token expired again"
329
+ });
330
+ await Promise.resolve();
331
+ (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);
332
+ await connection.close();
301
333
  });
@@ -375,4 +375,38 @@ async function mount() {
375
375
  import_vitest.vi.useRealTimers();
376
376
  }
377
377
  });
378
+ (0, import_vitest.test)("connectHeadless refreshes auth on needs-auth with no react tree", async function () {
379
+ var headlessClient = (0, import_createZeroClient.createZeroClient)({
380
+ schema,
381
+ models: {},
382
+ groupedQueries: {},
383
+ instanceName: "headless-auth-test"
384
+ });
385
+ var refreshAuth = import_vitest.vi.fn(async function () {
386
+ return "headless-fresh-token";
387
+ });
388
+ var connection = headlessClient.connectHeadless({
389
+ userID: "headless-auth",
390
+ cacheURL: "http://127.0.0.1:7788/zero",
391
+ refreshAuth
392
+ });
393
+ var instance = fakeZero.instances.at(-1);
394
+ instance.connection.state.set({
395
+ name: "needs-auth",
396
+ reason: "token expired"
397
+ });
398
+ await Promise.resolve();
399
+ (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);
400
+ await Promise.resolve();
401
+ (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({
402
+ auth: "headless-fresh-token"
403
+ });
404
+ instance.connection.state.set({
405
+ name: "needs-auth",
406
+ reason: "token expired again"
407
+ });
408
+ await Promise.resolve();
409
+ (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);
410
+ await connection.close();
411
+ });
378
412
  //# sourceMappingURL=createZeroClient.connection.test.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["import_jsx_runtime","require","import_zero","import_react","import_client","import_vitest","import_createZeroClient","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","fakeZero","vi","hoisted","FakeConnectionState","FakeConnectionState2","initial","_this","Set","cb","listeners","add","delete","current","set","next","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","err","return","FakeZero","FakeZero2","state","name","connect","fn","errors","cleanup","complete","Promise","resolve","instances","push","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","table","columns","id","string","body","primaryKey","schema","createSchema","tables","client","createZeroClient","models","groupedQueries","instanceName","container","root","beforeEach","document","createElement","dataset","zeroState","zeroConnected","zeroReason","afterEach","act","unmount","mount","extraProps","arguments","userID","createRoot","render","jsx","ProvideZero","cacheURL","children","at","test","readinessClient","ready","waitForZero","expect","toBe","install","transport","toHaveBeenCalledOnce","toHaveBeenCalledWith","refreshAuth","events","off","zeroEvents","listen","event","connection","reason","toHaveBeenCalledTimes","auth","toContainEqual","type","reasonKey","message","some"],"sources":["../../src/createZeroClient.connection.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["import_jsx_runtime","require","import_zero","import_react","import_client","import_vitest","import_createZeroClient","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","fakeZero","vi","hoisted","FakeConnectionState","FakeConnectionState2","initial","_this","Set","cb","listeners","add","delete","current","set","next","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","err","return","FakeZero","FakeZero2","state","name","connect","fn","errors","cleanup","complete","Promise","resolve","instances","push","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","table","columns","id","string","body","primaryKey","schema","createSchema","tables","client","createZeroClient","models","groupedQueries","instanceName","container","root","beforeEach","document","createElement","dataset","zeroState","zeroConnected","zeroReason","afterEach","act","unmount","mount","extraProps","arguments","userID","createRoot","render","jsx","ProvideZero","cacheURL","children","at","test","readinessClient","ready","waitForZero","expect","toBe","install","transport","toHaveBeenCalledOnce","toHaveBeenCalledWith","refreshAuth","events","off","zeroEvents","listen","event","connection","reason","toHaveBeenCalledTimes","auth","toContainEqual","type","reasonKey","message","some","status"],"sources":["../../src/createZeroClient.connection.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -785,6 +785,7 @@ function createZeroClientInternal(param) {
785
785
  scheduleReload,
786
786
  guardStorage,
787
787
  benignLogPatterns,
788
+ refreshAuth,
788
789
  ...options
789
790
  } = props;
790
791
  (0, import_state.setAuthData)(authData !== null && authData !== void 0 ? authData : null);
@@ -798,35 +799,39 @@ function createZeroClientInternal(param) {
798
799
  });
799
800
  publishZeroInstance(zeroInstance);
800
801
  zeroInstanceVersion === null || zeroInstanceVersion === void 0 ? void 0 : zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
802
+ var unwatch = watchZeroConnection({
803
+ zeroInstance,
804
+ refreshAuth
805
+ });
801
806
  return {
802
807
  zero: zeroInstance,
803
808
  close: async function close() {
809
+ unwatch();
804
810
  clearZeroInstanceReferences(zeroInstance);
805
811
  mutationLifecycle.fence();
806
812
  await zeroInstance.close();
807
813
  }
808
814
  };
809
815
  }
810
- var ConnectionMonitor = /* @__PURE__ */(0, import_react2.memo)(function (param2) {
816
+ function watchZeroConnection(args) {
817
+ var _zeroEvents_value;
811
818
  var {
812
- zeroEvents: zeroEvents2,
819
+ zeroInstance,
813
820
  refreshAuth,
814
821
  exposeDataset,
815
822
  datasetCacheUrl
816
- } = param2;
817
- var _zeroEvents_value;
818
- var zeroInstance = (0, import_react.useZero)();
819
- var state = (0, import_react.useConnectionState)();
820
- var prevState = (0, import_react2.useRef)(state.name);
821
- var hasConnectedRef = (0, import_react2.useRef)(false);
822
- var currentReconnect = ((_zeroEvents_value = zeroEvents2.value) === null || _zeroEvents_value === void 0 ? void 0 : _zeroEvents_value.type) === "reconnect" && zeroEvents2.value.status !== "connected" ? zeroEvents2.value : null;
823
- var reconnectRef = (0, import_react2.useRef)(currentReconnect ? {
823
+ } = args;
824
+ var prevState = zeroInstance.connection.state.current.name;
825
+ var hasConnected = false;
826
+ var currentReconnect = ((_zeroEvents_value = zeroEvents.value) === null || _zeroEvents_value === void 0 ? void 0 : _zeroEvents_value.type) === "reconnect" && zeroEvents.value.status !== "connected" ? zeroEvents.value : null;
827
+ var reconnect = currentReconnect ? {
824
828
  reasonKey: currentReconnect.reasonKey,
825
829
  reason: currentReconnect.reason
826
- } : null);
827
- var recoverableErrorRef = (0, import_react2.useRef)(null);
828
- var needsAuthRef = (0, import_react2.useRef)(false);
829
- (0, import_react2.useEffect)(function () {
830
+ } : null;
831
+ var recoverableError = null;
832
+ var needsAuth = false;
833
+ var handle = function handle2() {
834
+ var state = zeroInstance.connection.state.current;
830
835
  var name = state.name;
831
836
  var reason = "reason" in state && typeof state.reason === "string" ? state.reason : "";
832
837
  if (exposeDataset && typeof document !== "undefined" && document.body) {
@@ -836,10 +841,10 @@ function createZeroClientInternal(param) {
836
841
  if (name === "connected") document.body.dataset.zeroConnected = "true";else delete document.body.dataset.zeroConnected;
837
842
  }
838
843
  if (name === "connected") {
839
- hasConnectedRef.current = true;
840
- recoverableErrorRef.current = null;
841
- if (reconnectRef.current) {
842
- reconnectRef.current = null;
844
+ hasConnected = true;
845
+ recoverableError = null;
846
+ if (reconnect) {
847
+ reconnect = null;
843
848
  emitReconnectStatus({
844
849
  type: "reconnect",
845
850
  status: "connected"
@@ -848,51 +853,49 @@ function createZeroClientInternal(param) {
848
853
  }
849
854
  var reconnectReasonKey = reason.includes("ServerOverloaded") ? "server-overloaded" : reason.includes("Failed to fetch") || reason.includes("fetch failed") || reason.includes("NetworkError when attempting to fetch resource") || reason.includes("Network request failed") || reason.includes("Load failed") ? "transport" : void 0;
850
855
  if (name === "error" && ((0, import_recoverZeroClient.isRecoverableZeroStalePokeMessage)(reason) || reconnectReasonKey)) {
851
- if (recoverableErrorRef.current !== reason) {
856
+ if (recoverableError !== reason) {
852
857
  var _zeroInstance_connection_connect, _zeroInstance_connection;
853
- recoverableErrorRef.current = reason;
854
- reconnectRef.current = {
858
+ recoverableError = reason;
859
+ reconnect = {
855
860
  reasonKey: reconnectReasonKey !== null && reconnectReasonKey !== void 0 ? reconnectReasonKey : "transport",
856
861
  reason
857
862
  };
858
863
  emitReconnectStatus({
859
864
  type: "reconnect",
860
865
  status: "trying",
861
- ...reconnectRef.current
866
+ ...reconnect
862
867
  });
863
868
  void Promise.resolve((_zeroInstance_connection = zeroInstance.connection) === null || _zeroInstance_connection === void 0 ? void 0 : (_zeroInstance_connection_connect = _zeroInstance_connection.connect) === null || _zeroInstance_connection_connect === void 0 ? void 0 : _zeroInstance_connection_connect.call(_zeroInstance_connection)).catch(function () {});
864
869
  }
865
870
  return;
866
871
  }
867
- if (name !== "error") recoverableErrorRef.current = null;
868
- if (name === "connecting" && (reconnectRef.current || hasConnectedRef.current || Boolean(reason))) {
872
+ if (name !== "error") recoverableError = null;
873
+ if (name === "connecting" && (reconnect || hasConnected || Boolean(reason))) {
869
874
  var _ref;
870
- var _reconnectRef_current, _reconnectRef_current1;
871
- reconnectRef.current = {
872
- reasonKey: (_ref = reconnectReasonKey !== null && reconnectReasonKey !== void 0 ? reconnectReasonKey : (_reconnectRef_current = reconnectRef.current) === null || _reconnectRef_current === void 0 ? void 0 : _reconnectRef_current.reasonKey) !== null && _ref !== void 0 ? _ref : "transport",
873
- reason: reason || ((_reconnectRef_current1 = reconnectRef.current) === null || _reconnectRef_current1 === void 0 ? void 0 : _reconnectRef_current1.reason) || "connection interrupted"
875
+ reconnect = {
876
+ reasonKey: (_ref = reconnectReasonKey !== null && reconnectReasonKey !== void 0 ? reconnectReasonKey : reconnect === null || reconnect === void 0 ? void 0 : reconnect.reasonKey) !== null && _ref !== void 0 ? _ref : "transport",
877
+ reason: reason || (reconnect === null || reconnect === void 0 ? void 0 : reconnect.reason) || "connection interrupted"
874
878
  };
875
879
  emitReconnectStatus({
876
880
  type: "reconnect",
877
881
  status: reason ? "waiting" : "trying",
878
- ...reconnectRef.current
882
+ ...reconnect
879
883
  });
880
- } else if (name === "disconnected" && (reconnectRef.current || hasConnectedRef.current)) {
884
+ } else if (name === "disconnected" && (reconnect || hasConnected)) {
881
885
  var _ref1;
882
- var _reconnectRef_current2, _reconnectRef_current3;
883
- reconnectRef.current = {
884
- reasonKey: (_ref1 = (_reconnectRef_current2 = reconnectRef.current) === null || _reconnectRef_current2 === void 0 ? void 0 : _reconnectRef_current2.reasonKey) !== null && _ref1 !== void 0 ? _ref1 : "transport",
885
- reason: reason || ((_reconnectRef_current3 = reconnectRef.current) === null || _reconnectRef_current3 === void 0 ? void 0 : _reconnectRef_current3.reason) || "connection interrupted"
886
+ reconnect = {
887
+ reasonKey: (_ref1 = reconnect === null || reconnect === void 0 ? void 0 : reconnect.reasonKey) !== null && _ref1 !== void 0 ? _ref1 : "transport",
888
+ reason: reason || (reconnect === null || reconnect === void 0 ? void 0 : reconnect.reason) || "connection interrupted"
886
889
  };
887
890
  emitReconnectStatus({
888
891
  type: "reconnect",
889
892
  status: "waiting",
890
- ...reconnectRef.current
893
+ ...reconnect
891
894
  });
892
895
  }
893
896
  if (name === "needs-auth") {
894
- if (refreshAuth && !needsAuthRef.current) {
895
- needsAuthRef.current = true;
897
+ if (refreshAuth && !needsAuth) {
898
+ needsAuth = true;
896
899
  void refreshAuth().then(function (token) {
897
900
  var _zeroInstance_connection_connect2, _zeroInstance_connection2;
898
901
  if (token) (_zeroInstance_connection2 = zeroInstance.connection) === null || _zeroInstance_connection2 === void 0 ? void 0 : (_zeroInstance_connection_connect2 = _zeroInstance_connection2.connect) === null || _zeroInstance_connection_connect2 === void 0 ? void 0 : _zeroInstance_connection_connect2.call(_zeroInstance_connection2, {
@@ -901,19 +904,39 @@ function createZeroClientInternal(param) {
901
904
  }).catch(function () {});
902
905
  }
903
906
  } else {
904
- needsAuthRef.current = false;
907
+ needsAuth = false;
905
908
  }
906
- if (name !== prevState.current) {
907
- prevState.current = name;
909
+ if (name !== prevState) {
910
+ prevState = name;
908
911
  if (name === "error" || name === "needs-auth") {
909
- zeroEvents2.emit({
912
+ zeroEvents.emit({
910
913
  type: "error",
911
914
  reasonKey: name === "needs-auth" ? "connection-needs-auth" : "connection-error",
912
915
  message: reason || name
913
916
  });
914
917
  }
915
918
  }
916
- }, [state, zeroEvents2, zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
919
+ };
920
+ var unsubscribe = zeroInstance.connection.state.subscribe(handle);
921
+ handle();
922
+ return unsubscribe;
923
+ }
924
+ var ConnectionMonitor = /* @__PURE__ */(0, import_react2.memo)(function (param2) {
925
+ var {
926
+ zeroEvents: _zeroEvents,
927
+ refreshAuth,
928
+ exposeDataset,
929
+ datasetCacheUrl
930
+ } = param2;
931
+ var zeroInstance = (0, import_react.useZero)();
932
+ (0, import_react2.useEffect)(function () {
933
+ return watchZeroConnection({
934
+ zeroInstance,
935
+ refreshAuth,
936
+ exposeDataset,
937
+ datasetCacheUrl
938
+ });
939
+ }, [zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
917
940
  return null;
918
941
  });
919
942
  function preload(fnArg, paramsOrOptions, optionsArg) {
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","createZeroClientInternal","module","exports","import_jsx_runtime","require","import_zero","import_react","import_react2","import_createPermissions","import_createUseQuery","import_clearZeroClientData","import_createMutators","import_emitter","import_getAuth","import_hostStorageScope","import_mutationLifecycle","import_platform","import_recoverZeroClient","import_instanceRegistry","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","_type_of","obj","Symbol","constructor","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","setSchema","createBuilder","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","createPermissionCheckFn2","table","fn2","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","registerClientInstance","namespaces","keys","queryNames","flatMap","namespace2","queries2","map","setCustomQueries","DisabledContext","createContext","clientMutators","getClientMutators","createMutators","authData","can","constructZeroInstance","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","_ref","_options_logSink","_options_onUpdateNeeded","_options_onClientStateNotFound","_transport_logClassifications","_options_cacheURL","serverURL","cacheURL","server","install","instanceRef","current","recoveryDeps","deleteLocalState","deleteZeroInstance","zeroEvents","logClassifications","benign","onRecovery","mutationLifecycle","fence","recovery","makeZeroRecovery","createdInstance","Zero","kvStore","mutators","logSink","composeRecoveryLogSink","onUpdateNeeded","onClientStateNotFound","latestZeroInstance","zeroReadyWaiters","Set","publishZeroInstance","zeroInstance","activate","runner","runner2","query","run","setRunner","waiters","clear","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","onReady","waitForZero","signal","arguments","length","Promise","resolve","aborted","_signal_reason","reject","reason","onReady2","instance2","removeEventListener","onAbort","onAbort2","delete","add","addEventListener","once","lazyMutatePath","path","resolve2","target","mutate","Proxy","lazyMutator","_","apply","__","zero","instanceToDelete","emitterScope","createEmitter","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","createMutationLifecycle","recoverFromAckTimeout","input","reconnectInPlace","label","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","createUsePermission2","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","usePermission","usePermissionDirect","cachedZero","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","clearZeroInstanceReferences","invalidateZeroInstance","emit","close","unused","remint","opts","now","Date","sinceLast","dropLocalState","catch","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","ProvideZeroServer2","children","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","ProvideZeroClient2","refreshAuth","connectionDataset","disable","props","_props_storageKey","_props_cacheURL","hasAuth","stableAuthDataRef","setAuthData","hostScope","readHostStorageScope","scopedProps","storageKey","__testZero","useEffect","window","URLSearchParams","search","has","url","URL","href","searchParams","clearZeroClientData","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","useState","generation","instanceKey","JSON","stringify","filter","param3","sort","param1","a","b","pattern","source","flags","setInstance","useLayoutEffect","cached","prevAuthRef","prevAuth","connect","liveInstance","SetZeroInstance","ConnectionMonitor","exposeDataset","datasetCacheUrl"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","createZeroClientInternal","module","exports","import_jsx_runtime","require","import_zero","import_react","import_react2","import_createPermissions","import_createUseQuery","import_clearZeroClientData","import_createMutators","import_emitter","import_getAuth","import_hostStorageScope","import_mutationLifecycle","import_platform","import_recoverZeroClient","import_instanceRegistry","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","_type_of","obj","Symbol","constructor","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","setSchema","createBuilder","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","createPermissionCheckFn2","table","fn2","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","registerClientInstance","namespaces","keys","queryNames","flatMap","namespace2","queries2","map","setCustomQueries","DisabledContext","createContext","clientMutators","getClientMutators","createMutators","authData","can","constructZeroInstance","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","_ref","_options_logSink","_options_onUpdateNeeded","_options_onClientStateNotFound","_transport_logClassifications","_options_cacheURL","serverURL","cacheURL","server","install","instanceRef","current","recoveryDeps","deleteLocalState","deleteZeroInstance","zeroEvents","logClassifications","benign","onRecovery","mutationLifecycle","fence","recovery","makeZeroRecovery","createdInstance","Zero","kvStore","mutators","logSink","composeRecoveryLogSink","onUpdateNeeded","onClientStateNotFound","latestZeroInstance","zeroReadyWaiters","Set","publishZeroInstance","zeroInstance","activate","runner","runner2","query","run","setRunner","waiters","clear","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","onReady","waitForZero","signal","arguments","length","Promise","resolve","aborted","_signal_reason","reject","reason","onReady2","instance2","removeEventListener","onAbort","onAbort2","delete","add","addEventListener","once","lazyMutatePath","path","resolve2","target","mutate","Proxy","lazyMutator","_","apply","__","zero","instanceToDelete","emitterScope","createEmitter","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","createMutationLifecycle","recoverFromAckTimeout","input","reconnectInPlace","label","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","createUsePermission2","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","usePermission","usePermissionDirect","cachedZero","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","clearZeroInstanceReferences","invalidateZeroInstance","emit","close","unused","remint","opts","now","Date","sinceLast","dropLocalState","catch","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","ProvideZeroServer2","children","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","ProvideZeroClient2","refreshAuth","connectionDataset","disable","props","_props_storageKey","_props_cacheURL","hasAuth","stableAuthDataRef","setAuthData","hostScope","readHostStorageScope","scopedProps","storageKey","__testZero","useEffect","window","URLSearchParams","search","has","url","URL","href","searchParams","clearZeroClientData","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","useState","generation","instanceKey","JSON","stringify","filter","param3","sort","param1","a","b","pattern","source","flags","setInstance","useLayoutEffect","cached","prevAuthRef","prevAuth","connect","liveInstance","SetZeroInstance","ConnectionMonitor","exposeDataset","datasetCacheUrl"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,wBAAA;AAAAC,QAAA,CAAAD,wBAAA;EAAAE,gBAAA,EAAAA,CAAA,KAAAA,gBAAA;EAAAC,wBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAKO,CAAAK,wBAAA;AACP,IAAAM,kBAKO,GAAAC,OAAA;AACP,IAAAC,WAAA,GAAAD,OAWO;AAEP,IAAAE,YAAA,GAAAF,OAAA,uBAAkC;AAClC,IAAAG,aAAA,GAAAH,OAAA,CAIO;AACP,IAAAI,wBAAA,GAAAJ,OAAoC;AACpC,IAAAK,qBAAA,GAA+BL,OAAA;AAC/B,IAAAM,0BAA4C,GAAAN,OAAA;AAC5C,IAAAO,qBAAwB,GAAAP,OAAA;AACxB,IAAAQ,cAAA,GAAAR,OAAA,8BAAqC;AACrC,IAAAS,cAAA,GAAAT,OAAA,8BAAwC;AACxC,IAAAU,uBAAkC,GAAAV,OAAA;AAClC,IAAAW,wBAAA,GAQOX,OAAA;AACP,IAAAY,eAAA,GAAAZ,OAAA,CAAuC;AACvC,IAAAa,wBAAoE,GAAAb,OAAA;AACpE,IAAAc,uBAA8B,GAAAd,OAAA;AAC9B,IAAAe,oBAAA,GAAgDf,OAAA;AAChD,IAAAgB,oBAAiC,GAAAhB,OAAA;AACjC,IAAAiB,mBAAuE,GAAAjB,OAAA;AACvE,IAAAkB,UAAA,GAAAlB,OAAqD;AACrD,IAAAmB,YAAA,GAAAnB,OAA2C;AAC3C,IAAAoB,YAAA,GAAoBpB,OAAA;AA6tBZ,IAAAqB,iBAAA,GAAArB,OAAA;AA7pBR,IAAAsB,UAAS,GAAAtB,OAAA,kBAAkB;AACzB,SAAMuB,QAAQA,CAAAC,GAAA;EACd,uBAAqB;;EAErB,OAAMA,GAAA,IAAQ,OAAMC,MAAK,gBAAQ,IAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AACjC;AACE,SAAIG,iBAAaA,CAAAC,QAAY,EAAAC,GAAA;EAC3B,IAAArC,KAAA,GAAAsC,OAAA,CAAAC,GAAA,CAAAH,QAAA,EAAAC,GAAA,EAAAD,QAAA;EAAA,IACF,OAAApC,KAAA,wBAAAA,KAAA;EACA,IAAAwC,KAAM,GAAAxC,KAAA,CAAAyC,IAAa,CAAAL,QAAO;EAC1B,IAAAM,yBAAgB;IAAAC,iBAAA;IAAAC,cAAA;EACd;IACF,SAAAC,SAAA,GAAAP,OAAA,CAAAQ,OAAA,CAAA9C,KAAA,EAAAiC,MAAA,CAAAc,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MACF,IAAAS,QAAA,GAAAH,KAAA,CAAAhD,KAAA;MACA,IAAOmD,QAAA,iBAAAA,QAAA,eAAAA,QAAA;QACT;MAEA;MAGE,IAAAC,UAAS,GAAAC,MAAwB,CAAAC,wBAAA,CAAAtD,KAAA,EAAAmD,QAAA;MAC/B,IAAMC,UAAI;QACRC,MAAA,CAAAE,cAAA,CAAAf,KAAA,EAAAW,QAAA,EAAAC,UAAA;MACF;IACF;EAEA,SAAOI,GAAA;IACTb,iBAAA;IAEOC,cAAS,GAAAY,GAAA;EAGd,UAAO;IACT;MAEO,IAAS,CAAAd,yBAGd,IAAAG,SAAA,CAAAY,MAAA;QACAZ,SAAA,CAAAY,MAAA;MACA;IACA;MACA,IAAAd,iBAAqB;QACrB,MAAAC,cAAe;MACf;IACA;EACF;EAOE,OAAAJ,KAAA;AAIA;AACE,SAAAkB,+BAAeA,CAAA;EACjB,SAAAC,eAAA;IAEA,MAAM,IAAAC,KAAA,4JAA+C;EAAA;EACnD,OACAD,cAAa;AAAA;AAKf,SAAMxD,iBAAA0D,OAGD;EAEL,OAAAzD,wBAA8B,CAAAyD,OAAK;AACjC;AACA,SAAAzD,wBAAyBA,CAAA0D,KAAO;EAC9B;IAAAC,MAAA;IAAAC,MAAA;IAAAC,cAAA;IAAAC,kBAAqB,eAAmB;IAAAC,YAAA;IAAAC,iCAAA;IAAAC;EAAA,IAAAP,KAAA;EAExC,IAAAnC,YAAA,CAAA2C,SAAkB,EAAAP,MAAW,GAAI,GAAAtD,WAAI,CAAA8D,aAAA,EAAAR,MAAA;EAAA,MAAY,EAACpC,YAChD,CAAA6C,cAAO;IAAA,EACT,EAAA7C,YAAA,CAAA8C,cAAA;EAAA;EAEJ,IAAAC,kBAAA,OAAA9D,wBAAA,CAAA+D,iBAAA;IAKAZ,MAAM;IAKNa,WAAM;EACJ;EACE,IAAAC,iBAAa;EACb,IAAAnC,yBAAc,GAAY;IAAKC,iBAAA;IAAAC,cAAA;EAE/B;IACE,SAAAC,SAAY,GAAAQ,MAAO,CAAAyB,OAAe,CAAAb,cAAa,CAAK,CAAAhC,MAAM,CAAEc,QAAI,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MAClE,KAAAqC,SAAA,EAAAC,OAAA,IAAAhC,KAAA,CAAAhD,KAAA;MAEA6E,iBAAI,CAAAE,SAAuB;MAGzB,IAAAE,0BAAuB;QAAAC,kBAAY,GAAI,KAAK;QAAAC,eAAO;MACnD;QAEI,IAAAC,KAAA,YAAAA,CAAA;UACA,IAAI,CAAAC,IAAA,EAAAC,EAAA,IAAAC,MAAA,CAAAvF,KAAA;UACF,IAAAwB,oBAAO,CAAAgE,aAAmB,EAAAF,EAAA,KAAAP,SAAA,IAAAM,IAAA;UAAAR,iBACxB,CAAAE,SAAA,EAAAM,IAAQ,QAAA5E,WAAA,CAAAgF,WAAA,YAAAC,MAAA;YAAA,IACR;cAAAC;YAAA,IAAAD,MAAA;YAAA,OACAJ,EAAA,CAAAK,IAAY,CAAC;UAAiB;QACzB;QACL,KACF,IAAAC,UAAA,GAAAvC,MAAA,CAAAyB,OAAA,CAAAE,OAAA,EAAA/C,MAAA,CAAAc,QAAA,KAAAwC,MAAA,IAAAN,0BAAA,IAAAM,MAAA,GAAAK,UAAA,CAAA3C,IAAA,IAAAC,IAAA,GAAA+B,0BAAA,SAAAG,KAAA;MAAA,SACF5B,GAAA,EAAE;QACA0B,kBAAA;QAA6BC,eAC/B,GAAA3B,GAAA;MAAA,UAEG;QACT;UAEI,KAAAyB,0BAAuB,IAAAW,UAAmB,CAAAnC,MAAA;YAE5CmC,UAAY,CAAAnC,MAAO;UACrB;QAKA,UACG;UACC,IAAAyB,kBAAO,EAAmB;YAAA,MACxBC,eAAA;UACA;QAAA;MAC2B;IACtB;EACL,SACF3B,GAAA;IAAAb,iBAEG;IACTC,cAAA,GAAAY,GAAA;EACA;IACA;MACA,KAAOd,yBAAA,IAAAG,SAAA,CAAAY,MAAA;QACTZ,SAAA,CAAAY,MAAA;MAEA;IACA,UAAY;MACV,IAAMd,iBAAK;QACX,MAAAC,cAAkB;MACpB;IAGA;EAKA;EAAwC,IACtCiD,kBAAM;EAAA,IACNC,uBAAwB,YAAMC,yBAAAC,KAAA;IAC9B,IAAAV,EAAA,YAAAW,IAAAN,IAAA;MACA,IAAAO,IAAA,GAAY,IAAA3E,oBAAe,CAAA4E,uBAAgB,EAAAH,KAAA;MAAQ,IAAEI,IAAA,GAAAtE,UAAkB,CAAAuE,GAAA,CACrEL,KAAA;MACF,KAAAL,IAAA,CAAAW,OAAA;QACD,OAAAF,IAAA,CAAAG,KAAA,WAAAC,EAAA;UAGD,OAAAA,EAAA,CAAAC,MAAA,UAAiB;QAEX,GAAAC,GAAA;MAMF;MACJ,IAAAxC,kBAAS,KAAoB;QAC3B,IAAAyC,OAAA,GAAAT,IAAA,GAAmB,IAAAtE,YAAA,CAAAgF,WAAA,EAAAV,IAAA,KAAeA,IAAA,GAAAA,IAAA;QAChC,OAAAE,IAAA,CAAAG,KAAA,WAAAC,EAAA;UACA,IAAA5E,YAAa,CAAAiF,uBAAA;UACb;YACK,OAAAnC,kBAAmB,CAAAoC,oBAAA,KAAA7F,cAAA,CAAA8F,OAAA,KAAAP,EAAA,EAAAG,OAAA,cAAAK,CAAA;cACzB,OAAAA,CAAA,CAAAC,GAAA;YACM,GAAAtB,IAAA,CAAAW,OAAA,EAAAN,KAAA;UACT;YAeS,IAAApE,YAAA,CAAAiF,uBAAsB;UAC7B;QACA,GAAAH,GAAA;MACA;MACA,IAAAxC,kBAAA;QACA,OAAAkC,IAAA,CAAAG,KAAA,WAAAC,EAAA;UACA,OAAAA,EAAA,CAAAC,MAAA;QAC0C,GAAAC,GAAA;MAI1C;MAGE,OAAMN,IAAA,CAAAG,KAAA,CAAY,UAAQC,EAAA;QAC1B,OAAI9B,kBAAqB,CAAAoC,oBAAU,KAAA7F,cAAA,CAAA8F,OAAA,KAAAP,EAAA,EAAAN,IAAA,cAAAc,CAAA;UACjC,OAAMA,CAAI,CAAAC,GAAA,EAAM;QAClB,GAAAtB,IAAA,CAAAW,OAAA,EAAAN,KAAA;MACA,GAAAU,GAAA;IACF;IAIAb,kBAAM,CAAAG,KAAkD,IAAAV,EAAA;IACxD,IAAA9D,oBAAuC,CAAAgE,aAAA,EAAAF,EAAA,gBAAAU,KAAA;IAAA,OACrCV,EAAA;EAA8D;EAC9DT,iBACA;EAAA,IACAqC,0BAAA;IAAAC,kBAAA;IAAAC,eAAA;EAAA,IACA;IAAA,IACAC,MAAA,YAAAA,CAAA,EAAmB;MAAA,IACjB,CAAIrB,KAAA,IAAAsB,MAAW,CAAAtH,KAAA;MAA+B,IAC9CsF,EAAI,GAAAQ,uBAAsB,CAAAE,KAAA;MAC5BnB,iBAAA,eAAAmB,KAAA,QAAAvF,WAAA,CAAAgF,WAAA,YAAAC,MAAA;QACA;UAAAC;QAAY,IAAAD,MAAM;QACpB,OAAAJ,EAAA,CAAAK,IAAA;MACA;IACA;IAA6D,KAC3D,IAAA4B,UAAS,OAAAhG,oBAAA,CAAAiG,0BAAA,IAAAvF,MAAA,CAAAc,QAAA,KAAAuE,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAC,UAAA,CAAAtE,IAAA,IAAAC,IAAA,GAAAgE,0BAAA,SAAAG,MAAA;EAAA,SACN7D,GAAA;IAAA2D,kBACH;IAAAC,eAAA,GAAA5D,GAAA;EAAA,UAEA;IAA4B;MAAA,KAAA0D,0BAAA,IAAAK,UAAA,CAAA9D,MAAA;QAAA8D,UAAA,CAAA9D,MAAA;MAAA;IAAA,UAK5B;MAA+D,IAAA0D,kBAAA;QAAA,MAAAC,eAAA;MAAA;IAAA;EAAA;EAKZ,IACnDK,aAAA,OAAAhH,WACU,CAAAiH,aAAA,EAAA7C,iBAAyB,CAAS;EAAA,IAC7CzC,QAAA,OAAAd,uBAAA,CAAAqG,sBAAA;IACDtC,IAAA,EAAAlB,YAAY;IACZyD,UAAO,EAAAvE,MAAA,CAAAwE,IAAA,CAAA7D,MAAA;IACTyD,aAAA;IAEAK,UAAI,EAAAzE,MAAA,CAAAyB,OAA0C,CAAAb,cAAA,EAAA8D,OAAA,WAAArC,MAAA;MAC9C,IAAM,CAAAsC,UAAA,EAAAC,QAAmB,IAAAvC,MAAA;MAMzB,OAASrC,MAAA,CAAAwE,IAAA,CAAAI,QAAoB,EAAAC,GAAA,WAAqC7C,IAAA;QAC5D,UAAA2C,UAAiB,IAAA3C,IAAA;MACrB;IACA;EACA;EAGA,IAAA3D,UAAS,CAAAyG,gBAAS,EAAAV,aAAA;EAClB,IAAAW,eAAA,kBAAU,IAAMzH,aAAA,CAAA0H,aAAA;EAChB,IAAAC,cAAgB,GAAC,IAAG;EACpB,SAAAC,iBAAuBA,CAAA;IACvBD,cAAW,SAAW,IAAAA,cAAiB,UAAY,IAAAA,cAAA,GAAAA,cAAA,OAAAvH,qBAAA,CAAAyH,cAAA;MACnDxE,MAAO;MACTY,WAAA;MAEA6D,QAAS;MACPC,GAAI,EAAAhE,kBAAoB,CAAAgE;IACxB;IACE,OAAAJ,cAAe;EAAA;EACyD,SACxEK,sBAAAjD,MAAA;IACF;MAAA7B,OAAA;MAAA+E,SAAA;MAAAC,YAAA;MAAAC,cAAA;MAAAC,YAAA;MAAAC;IAAA,IAAAtD,MAAA;IAEA,IAAAuD,IAAO,EAAAC,gBAAa,EAAAC,uBAAoB,EAAAC,8BAAA;IACtC,IAAAC,6BAA4C;IAC1C,IAAAT,SAAQ;MACR,IAAAU,iBAAgB;MAClB,IAAAC,SAAA,IAAAD,iBAAA,GAAAzF,OAAA,CAAA2F,QAAA,cAAAF,iBAAA,cAAAA,iBAAA,GAAAzF,OAAA,CAAA4F,MAAA;MACA,WAAMF,SAAU,KAAM;QACpB,UAAA3F,KAAA,yCAA+B;MAC/B;MACFgF,SAAA,CAAAc,OAAA,CAAAH,SAAA;IACA;IACA,IAAAI,WAAQ;MACTC,OAAA;IACH;IAQA,IAAAC,YAAS;MACPC,gBAAgB,WAAMA,iBAAA;QACpB,OAAIC,kBAAuB,CAAAJ,WAAM,CAAAC,OAAA;MAC/B;MAAUI,UACR;MAAAnB,YACF;MACFC,cAAA;MACAC,YAAI;MACJC,iBAAW,EAAO,CAClB,KAAAC,IAAO,GAAAL,SAAA,aAAAA,SAAA,wBAAAS,6BAAA,GAAAT,SAAA,CAAAqB,kBAAA,cAAAZ,6BAAA,uBAAAA,6BAAA,CAAAa,MAAA,cAAAjB,IAAA,cAAAA,IAAA,QACT,IAAAD,iBAAA,aAAAA,iBAAA,cAAAA,iBAAA,OACA;MAAyCmB,UAAU,WAAAA,WAAA;QACjD,OAAOC,iBAAK,CAAAC,KAAA;MACV;IACA;IAAoC,IACtCC,QAAA,OAAAjJ,wBAAA,CAAAkJ,gBAAA,EAAAV,YAAA;IAAA,IACAW,eAAa,GAAM,IAAA/J,WAAA,CAAAgK,IAAA;MACjBC,OAAA,EAAO;MACT,GAAA7G,OAAA;MACDE,MAAA;MACH;MAIA4G,QAAM,EAAqBpC,iBAAuB;MAChD;MACE;MACE;MACA;MAAUqC,OACR,GAAA1B,gBAAA,GAAArF,OAAA,CAAA+G,OAAA,cAAA1B,gBAAA,cAAAA,gBAAA,OAAA7H,wBAAA,CAAAwJ,sBAAA,EAAAhB,YAAA;MAAA;MAEJ;MACA;MACE;MACAiB,cAAO,EAAM,CAAA3B,uBAAmB,GAAAtF,OAAgB,CAAAiH,cAAA,cAAA3B,uBAAA,cAAAA,uBAAA,GAAAmB,QAAA,CAAAQ,cAAA;MAClDC,qBAAA,GAAA3B,8BAAA,GAAAvF,OAAA,CAAAkH,qBAAA,cAAA3B,8BAAA,cAAAA,8BAAA,GAAAkB,QAAA,CAAAS;IACA;IACFpB,WAAA,CAAAC,OAAA,GAAAY,eAAA;IACD,OAAAA,eAAA;EAKD;EAEA,IAAAQ,kBAAM,GAAgC;EAAA,IACpCC,gBAAO,GAAY,mBAAAC,GAAA;EAAA,SACnBC,oBAAAC,YAAA;IACF,IAAAA,YAAA,KAAAJ,kBAAA;IAEAA,kBAAM,GAAAI,YAAA;IAKNhB,iBAAM,CAAAiB,QAAA,EAAoB;IACxB,IAAAC,MAAA,YAAAC,QAAAC,KAAA,EAAA3H,OAAA;MACA,OAAAuH,YAAA,CAAAK,GAAwB,CAAAD,KAAA,EAAA3H,OAAU;IAChC;IAAKzB,QACH,CAAAkJ,MAAA,GAAAA,MAAA;IAAA,IACAzJ,iBAAc,CAAA6J,SAAA,EAAAJ,MAAA;IAAoG,IACpHK,OAAA,IACF,GAAAV,gBAAA,CACD;IAEDA,gBAAM,CAAAW,KAAA;IAIN,IAAMC,0BAAkB;MAAAC,kBAAsC;MAAAC,eAAA;IAE9D,IAAM;MACJ,SAAAC,UAAA,GAAAL,OAAA,CAAA1J,MAAA,CAAAc,QAAA,KAAAkJ,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA/I,IAAA,IAAAC,IAAA,GAAA2I,0BAAA;QACA,IAAAK,OAAA,GAAAD,MAAA,CAAAjM,KAAA;QACDkM,OAAA,CAAAd,YAAA;MAED;IAEM,SAAA5H,GAAA;MACAsI,kBAAA;MACAC,eAAe,GAAAvI,GAAA;IACf;MACD,IACD;QASE,KAAAqI,0BAAuB,IAAAG,UAAuC,CAAAvI,MAAA;UAC9DuI,UAAA,CAAAvI,MAAA;QACF;MAMF;QACA,IAAOqI,kBAAS;UAMd,MAAMC,eAAc;QACpB;MACA;IACA;IAIA,WAAM;EACN;EAEA,SAAAI,WAAaA,CAAA,EAAM;IAAI,IACrB;MAAAC;IAAA,IAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAAA,IACArB,kBAAgC,SAAAuB,OAAA,CAAAC,OAAA,CAAAxB,kBAAA;IAAA,IAChCoB,MAAE,KAAS,QAAQA,MAAC,UAAe,aAAWA,MAAA,CAAAK,OAAW,EAAO;MAClE,IAAAC,cAAA;MAEA,OAAIH,OAAO,CAAAI,MAAA,EAAAD,cAAA,GAAAN,MAAA,CAAAQ,MAAA,cAAAF,cAAA,cAAAA,cAAA,OAAA9I,KAAA;IACT;IAAgE,OAClE,IAAA2I,OAAA,WAAAC,OAAA,EAAAG,MAAA;MAEA,IAAIT,OAAC,GAAS,SAAOW,SAAAC,SAAA;QAGrBV,MAAM,SAAS,IAAAA,MAAO,KAAS,cAAY,IAAOA,MAAA,CAAAW,mBAAY,UAAAC,OAAA;QAE9DR,OAAK,CAAAM,SAAa;MAChB;MACA,IAAAE,OAAO,YAAAC,SAAA;QACT,IAAAhE,IAAA;QAEAgC,gBAAI,CAAAiC,MAAgB,CAAAhB,OAAA,CAAc;QAChCS,MAAA,CAAO,CAAA1D,IAAA,GAAQmD,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAQ,MAAA,cAAA3D,IAAA,cAAAA,IAAA,OAAArF,KAAA;MACjB;MAEAqH,gBAAO,CAAAkC,GAAA,CAAAjB,OAAA;MACTE,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAgB,gBAAA,UAAAJ,OAAA;QACFK,IAAA;MAEA,EAAM;IACN;EAeA;EASA,SAAMC,eAAkBC,IAAA;IACxB,IAAMf,OAAA,YAAAgB,QAAsBA,CAAA;MAC5B,IAAMxC,kBAAA,SAA0B;QAC1B,UAAApH,KAAA,CAA+C,wFAAa;MAC9D;MACA,IAAA6J,MAAA,GAAAzC,kBAAiB,CAAA0C,MAAA;MAErB,IAAA7B,0BAA+B;QAAAC,kBAA6C;QAAAC,eAAA;MAC1E,IAAI;QACJ,SAAAC,UAAqB,GAAAuB,IAAA,CAAAtL,MAAA,CAAAc,QAAA,KAAAkJ,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA/I,IAAA,IAAAC,IAAA,GAAA2I,0BAAA;UACrB,IAASxJ,GAAA,GAAA4J,MAAS,CAAAjM,KAAA;UAClByN,MAAA,GAAAA,MAAA,CAAApL,GAAA;QACA;MACF,SAAAmB,GAAA;QAEAsI,kBAAS;QACHC,eAAY,GAAAvI,GAAA;MACd;QACF;UACA,IAAO,CAAAqI,0BAAsB,IAAAG,UAAoB,CAAAvI,MAAA;YACnDuI,UAAA,CAAAvI,MAAA;UAEA;QACM,CAAC;UAEL,IAAAqI,kBAAwB;YACpB,MAAAC,eAAA;UACF;QACF;MACA;MACE,OAAA0B,MAAA;IACF;IAEA,WAAAE,KAAA,UAAAC,YAAA,GACF;MAEArL,IAAAsL,CAAA,EAAAxL,GAAA,EAAe;QAGb,YAAAA,GAAkB,KAAM,4BAAAN,QAAA,CAAAM,GAAA;QACpB,OAAAiL,cAAA,EACF,GAAOC,IAAA,EACTlL,GAAA,CACE;MACF;MACFyL,MAAAD,CAAA,EAAAE,EAAA,EAAApI,IAAA;QAOA,OAAA6G,OAAe,EAAO,IAAA7G,IAAsC;MAG1D;IACA;EACA;EACA,IAAAqI,IAAI,OAAAL,KAAA,CAAe;IACnBpL,IAAIsL,CAAA,EAAAxL,GAAA;MACJ,IAAI2I,kBAAkB;QACtB,IAAA3I,GAAA,KAAe,iBAAAiL,cAAA;QACf,UAAA1J,KAAkB;MAElB;MACA,IAAIvB,GAAA,aAAkB;QACpB,IAAM4L,gBAAA,GAAmBjD,kBAAkB;QAAgB;UAC7D,OAAAjB,kBAAA,CAAAkE,gBAAA;QAEA;MACA;MACA,OAAK9L,iBAAA,CAAA6I,kBAAA,EAAA3I,GAAA;IACL;EACF;EAEA,IAAA6L,YAAS,GAAA/J,YAAoB,KAAwD,qBAAAA,YAAA;EACnF,IAAA6F,UAAM,IAAU,GAAAhJ,cAAW,CAAAmN,aAAA,SAAAD,YAAA;EAC3B,IAAAE,2BACoB,GAAAC,MAClB,CAAAC,QAAQ,CAAAlK,iCACP,KAAAA,iCAA6C,QAAAmK,IAC3C,CAAAC,KAAA,CAAApK,iCAA6B,CAAY;EAI5C,IAAAgG,iBAAA,OAAAjJ,wBAAA,CAAAsN,uBAAA;IACFL,2BAAA;IACAM,qBAAqB,WAAAA,sBAAAC,KAAA;MACvB,KAAAC,gBAAA,0BAAAD,KAAA,CAAAE,KAAA,qCAAAF,KAAA,CAAAG,mBAAA,uBAAAH,KAAA,CAAAI,SAAA;IAEA;EAIE;EACA,IAAAC,mBAAgB,GAAA3K,oBAAuB,OAAArD,cAAA,CAAAmN,aAAA,0BAAAD,YAAA;EACzC,IAAAe,eAAA,sBAAAtO,aAAA,CAAA0H,aAAA;EAEA,IAAA6G,QAAS,OAAArO,qBAAsB,CAAAsO,cAAA;IAC7B/G,eAAM;IACNX;EACA;EACA,IAAA9D,cAAO,GAAAU,oBAAA,GAAAA,oBAAA;IACT+D,eAAA;IAqBAX,aAAM;IACJ2H,OAAA,EAAS,SAAQA,QAAA,EAAkB;MACnC,OAAApE,kBAAuB;IAAC;IAC1BqE,WAAA,EAAAL;EACA,KAAAtL,+BAA2B;EAAA,IACzB4L,mBAAU,YAAAC,qBAAAC,YAAA;IACV,IAAApO,eAAU,CAAAqO,iBAAA;MACV,mBAAc;QACd,WAAa;MACX;IAAmB;IAAC,OACpB,SAASC,cAAMA,CAAA1J,KAAA,EAAAM,OAAA;MAAC,IAAAqJ,OAAA,GAAAtD,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA,aAAA/F,OAAA;QAAAsJ,KAAA,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;MAChB,IAAAwD,WAAW,GAAM,IAAAlP,aAAA,CAAAmP,UAAA,EAAA1H,eAAA;MAAC,IAAA2H,OAAA,OAAApP,aAAA,CAAAqP,MAAA;MACpB,IAAAC,QAAA,GAAAjK,KAAA;MACF,IAAAkK,OAAA,GAAArK,kBAAA,CAAAoK,QAAA;MA+CA,IAAME,IAAA,OAAAlP,cAAuB,CAAA8F,OAAU;MACrC,IAAAqJ,IACE,IAAAD,IAAA,aAAAA,IAAA,mBAAC,IAAAA,IAAA,CAAAE,EAAA,KAAgB;MAUV,KAAAC,IAAA,EAAAC,MAAA,IAAAf,YAAA,CAAAU,OAAA;QACA5J,OAAA;QACA8J;MAAA,CACH;QAIRT,OAAA,EAAAa,OAAA,EAAAX,WAAA,IAAAF,OAAA,IAAArJ,OAAA,IAAA4J,OAAA;MAEA,EAAM;MACJ,IAAAN,KAAA;QACAa,OAAU,CAAAC,IAAA;UACV1K,KAAA;UACAM,OAAA;UACAgK,IAAA;UACAC;QACA;MACA;MACA,KAAAjK,OAAA;MACA,IAAAqK,MAAA,GAAAJ,MAAA,CAAAK,IAAA,wBAAAJ,OAAA,CAAAF,IAAA;MACA,IAAG,CAAAT,WAAA;QACmBE,OAAA,CAAAnG,OAAA,GAAA+G,MAAA;QAKtB,OAAMA,MAAO;MACb;MAMA,IAAMd,WAAA,iBAAoB;QACtB,OAAAE,OAAY,CAAAnG,OAAA;MACd;MACF,WAAY;IACV;EAA4B;EAE9B,IAAAiH,aAAM,GAAYvB,mBAAc,CAAAJ,QAAA;EAIhC,IAAA4B,mBAAA,GAAAxB,mBAAoB,CAAA3L,cAAA;EAKpB,IAAAoN,UAAM;EACN,IAAAC,eAAM,GAAc;EAOnB,IAACC,mBAAwC,GAAa;EAIvD,IAAAC,uBAAA,MAAU;EACR,IAAAC,aAAW;IACXC,IAAA,EAAI;EACJ;EACA,IAAAC,YAAI;EACJ,IAAAC,cAAK;EAAoB,SACvBC,qBAAuBA,CAAAC,oBAAW;IAAA,IAClCxG,kBAAQ,KAAAwG,oBAAA;IAAAxG,kBACI;IACZ5I,QAAA,CAAAkJ,MAAO,OAAS;IAAsB,EACxC,EAACzJ,iBAAA,CAAA6J,SAAA;IACH,OAAK;EAML;EACA,SAAA+F,2BAAUA,CAAMD,oBAAA;IACd,KAAAT,UAAA,KAAc,IAAO,IAAAA,UAAM,WAAoB,GAAC,SAAAA,UAAe,CAAA3O,QAAc,MAAAoP,oBAAA;MAC7ET,UAAO,GAAM;IACX;IAAqB,OACvBQ,qBAAA,CAAAC,oBAAA;EAAA;EAQF,SAAME,sBAAmBA,CAAAF,oBAAU;IAAA,IACjC,CAAAA,oBAAiB;IACdpH,iBACa,CAAAC,KACV;IAA2D,IAE9DoH,2BAA4B,CAAAD,oBAAO;MACtCxC,mBAAA,aAAAA,mBAAA,uBAAAA,mBAAA,CAAA2C,IAAA,CAAA3C,mBAAA,CAAAhP,KAAA;IAAA;IACA,IACA;MAAmBwR,oBACjB,CAAAI,KAAO;IAAoE,EAC7E,OAAAC,MAAA;EACA;EASF,eAAO9H,kBAAqB3H,CAAA6L,gBAAI;IAKhC7D,iBAAA,CAAAC,KAAA;IACE;MACE,cAAA4D,gBAAwB,aAAAA,gBAAA,uBAAAA,gBAAA,CAAAf,MAAA;IACxB;MACFwE,sBAAA,CAAAzD,gBAAA;IACF;EAEA;EAKE,eAAI6D,MAASA,CAAA;IACX,IAAAC,IAAI,GAAA1F,SAAA,CAAAC,MAAa,GAAW,KAAAD,SAAY,QAAS,SAAAA,SAAA;IACjD,KAAA8E,aAAA,CAAAC,IAAA;IAAA,IACFY,GAAA,GAAAC,IAAA,CAAAD,GAAA;IACA,IAAAE,SAAI,GAASF,GAAA,GAAAX,YAAA;IACb,IAAAA,YAAM,GAAU,KAAAa,SAAA,GAAAlB,eAAA;IAKhB,IAAAkB,SAAI,GAAQhB,uBAAqB,EAAAI,cAAA;IAC/B,IAAAA,cAAY,IAAAL,mBAAA;IAGVI,YAAA,GAAAW,GAAA;IACAV,cAAA;IACA;MAAAa,cAAO,GAAS;IAAM,IAAAJ,IAAA;IAAA,IACxBI,cAAA,IAAAnH,kBAAA;MACA,MAAAjB,kBAAS,CAAAiB,kBAAA,EAAAoH,KAAA;IACF;IAC2B,IAAAhB,IAC9B,GAAAD,aAAA,CAAAC,IAAA;IAAA,KAAAA,IACA;IAAAA,IAAA;IACA,WACA;EAAA;EACA,SAAAiB,mBACAA,CAAAC,KAAA;IAAA,IAAA1I,OACD,GAAAI,UAAA,CAAAhK,KAAA;IAAA,IACH,CAAA4J,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAAAgH,IAAA,qBAAAhH,OAAA,CAAA2G,MAAA,KAAA+B,KAAA,CAAA/B,MAAA,oBAAA3G,OAAA,GAAAA,OAAA,CAAA2I,SAAA,+BAAAD,KAAA,GAAAA,KAAA,CAAAC,SAAA,2BAAA3I,OAAA,GAAAA,OAAA,CAAAgD,MAAA,4BAAA0F,KAAA,GAAAA,KAAA,CAAA1F,MAAA;MACA;IAAa;IAEf5C,UAAA,CAAA2H,IAAY,CAAAW,KAAO;EAAQ;EAW7B,eAAM1D,gBAAcA,CAAA2D,SAAA,EAAA3F,MAAO;IAC3ByF,mBAAA;MACEzB,IAAA,EAAM,WAAW;MACjBL,MAAA,UAAY;MACZgC,SACE;MAKA3F;IAAoC,EACtC;IACF,OAAIkF,MAAA;MAUJK,cAAM;IACN;EAIS;EAAqC,SACrCK,UACCA,CAAA;IAAA,IAACC,QAAA,GAAAC,UAAA,CAAAD,QAAA;IAAA,MAAAA,QAAA,aAAAA,QAAA,uBAAAA,QAAA,CAAAE,MAAA;IAAAF,QACC,CAAAE,MAAA;IAAA,OACA;EAAA;EACe,IAAAC,mCAEb;IAGIhJ,OAAA;MAERvE,IACE;IAAA;IACHwN,SAGP,WAAAA,UAAA;MAEJ,oBAEA;IAEA;EACE;EAGA,IAAAC,kBAAoB;IAEpBC,QAAA;IACEC,OAAA;IACFC,UAAI;MAEJC,KAAO,EAAAN;IACT;IAWAO,WAAS,WAAAA,WAa6CA,CAAA;MACpD,OAAM;QACJC,WAAA,WAAAA,YAAA,GACA;QACAC,OAAA,WAAAA,QAAA,GACA;QACAC,SAAA,WAAAA,UAAA,GACA;MACA;IAAA;EACG;EAIL,IAAAC,iBAAA,YAAaC,kBAA6BA,CAAA9N,MAAA;IAC1C;MAAM+N,QAAA;MAAAhL,QAAe,EAAAiL;IAAA,IAAAhO,MAAsB;IAAA,OACzC,mBAAAnF,kBAAA,CAAAoT,GAAA,EAAA1E,eAAA,CAAA2E,QAAA;MACA5T,KAAA,EAAA0T,UAAA,aAAAA,UAAA,cAAAA,UAAA;MACAD,QAAA,qBAAAlT,kBAAA,CAAAoT,GAAA,EAAAvL,eAAA,CAAAwL,QAAA;QACA5T,KAAA;QACAyT,QAAA,qBAAAlT,kBAAA,CAAAsT,IAAA,EAAAnT,YAAA,CAAAoT,WAAA,CAAAF,QAAA;UACA5T,KAAA,EAAA8S,kBAAA;UACDW,QAAA;UACD;AACA;AACA;AACA;AAAO;AACC;AAEJ;UACA,MACA,MACAA,QAAM;QAEV;MACF;IAOA;EAME;EACA,IAAAM,iBAAgB,YAAaC,kBAAiBA,CAAAtO,MAAQ;IACtD,IAAI;MAAA+N,QAAA;MAAAhL,QAAe,EAAAiL,UAAA;MAAA9K,SAAA;MAAAC,YAAA;MAAAC,cAAA;MAAAC,YAAA;MAAAC,iBAAA;MAAAiL,WAAA;MAAAC,iBAAA;MAAAC,OAAA;MAAA,GAAAC;IAAA,IAAA1O,MAAA;IACnB,IAAAuD,IAAM,EAAAoL,iBACJ,EAAAC,eAAkB;IAGpB,IAAInE,IAAA,SACF,IAAAiE,KAAA,GAAAA,KAAA,CACIjE,IAAE,SAAW;IAInB,IAAIoE,OAAA,UAAApE,IAAkC;IACtC,IAAIqE,iBAAY,OAAA7T,aAAA,CAAAqP,MAAA,EAAA0D,UAAA,aAAAA,UAAA,cAAAA,UAAA;IAEhB,IAAAA,UAAM,EAAS;MACbc,iBAAc,CAAA5K,OAAA,GAAa8J,UAAW;IACtC,WAAM,CAAAa,OAAO,EAAM;MACnBC,iBACE,CAAA5K,OAAA,GAAY;IAId;IACE,IAAAnB,QAAA,GAAS,CAAAQ,IAAK,GAAAyK,UAAQ,KAAY,QAAAA,UAAA,cAAAA,UAAA,GAAAc,iBAAA,CAAA5K,OAAA,cAAAX,IAAA,cAAAA,IAAA;IAClC,IAAAtH,YAAI,CAAA8S,WAAiB,EAAAhM,QAAS,CAAK;IACnC,IAAAiM,SAAI,GAAQ,IAAAxT,uBAAsB,CAAAyT,oBAA0B,GAAG;IAAG,IAAAC,WAC7D,GAAOF,SAAS,GAAK;MAC1B,GAAAN,KAAI;MAA4DS,UAC3D,KAAOH,SAAS,IAAK,CAAAL,iBAAQ,GAAAD,KAAA,CAAAS,UAAA,cAAAR,iBAAA,cAAAA,iBAAA;IAAA,IACpCD,KAAA;IAEA1B,UAAI,CAAAoC,UAAS,GAAA9G,IAAa;IACxB,IAAArN,aAAA,CAAAoU,SAAe;MACf,WAAAC,MAAA,KAAmB,sBAAAA,MAAA,CAAAvC,QAAA;MACnB,SAAIwC,eAAW,CAAAD,MAAA,CAAAvC,QAAA,CAAAyC,MAAA,EAAAC,GAAA;MACb,IAAAC,GAAA,OAAAC,GAAY,CAAAL,MAAA,CAAAvC,QAAA,CAAA6C,IAAA;MACZF,GAAA,CAAAG,YAAA,CAAArI,MAAA,CAAoB,OAAE,CAAM;MAAkC,KAChE,IAAApM,0BAAA,CAAA0U,mBAAA;QACFC,SAAA,iBAAAA,UAAA;UAEA,OAAMzH,IAAA,CAAA4D,KAAA;QACJ;QACFe,MACI;MAWJ,GAAA+C,IACE,aAAS;QAGTV,MAAI,CAAAvC,QAAA,CAAAkD,OAAA,CAAAP,GAAqB,CAAAQ,QAAQ;MAC/B;IACA;IACA,KAAAC,gBAAA,EAAAC,mBAA4B,KAAa,GAAAnV,aAAQ,CAAAoV,QAAa;IAC9D,IAAApV,aAAK,CAAAoU,SAAgB,cAAa;MAAqC5D,aAAE,CAAAC,IAAA;QAC3E,OAAA0E,mBAAA,WAAAE,UAAA;UACA,OAAAA,UAAA;QACF;MACA;MAEA,OAAI,YAAS;QACX7E,aAAY,CAAAC,IAAA;MAAA;IAC+C,MACzD;IAAuC,IACzC6E,WAAA,GAAAC,IAAA,CAAAC,SAAA,EACA9S,MAAA,CAAAyB,OAAA;MAAoB4F,OAClB,EAAM;MAAA,GACNkK;IAA6B,GAAAwB,MAC1B,WAAAC,MAAA;MACL,IAAC,CAAAhU,GAAA,EAAArC,KAAA,IAAAqW,MAAA;MACH,OAAAhU,GAAW,WAAS,WAAArC,KAAmB,eAAa,IAAAA,KAAA,KAAe;IACjE,GAAAsW,IAAA,WAAYD,MAAA,EAAAE,MAAA;MAAA,IACV,CAAAC,CAAA,IAAAH,MAAW;QAAA,CAAAI,CAAA,IAAWF,MAAA;MAAa,OACnCC,CAAA,GAAQC,CAAA,QAAU;IAAqB,EACzC,EACAlC,OAAA,EACF3L,SAAA,EAIAI,iBAAa,aAAcA,iBAAA,uBAAAA,iBAAA,CAAAd,GAAA,WAAAwO,OAAA;MACzB,OAAI,OAAAA,OAAgB,aAAW,GAAAA,OAAA,OAAAA,OAAA,CAAAC,MAAA,IAAAD,OAAA,CAAAE,KAAA;IAC7B,IACAf,gBAAK,CAED;IAA6D,KAAA/I,SAE9D,EAAM+J,WAAM,QAAAlW,aAAA,CAAAoV,QAAA;IAAA,IAAApV,aAAE,CAAAmW,eAAA;MAAA,IACnB9L,kBAAA,KAAAmJ,OAAA,KAAApD,UAAA,aAAAA,UAAA,uBAAAA,UAAA,CAAA1O,GAAA,MAAA4T,WAAA;QACF7L,iBAAO,CAAAC,KAAA;QACLkH,qBAAY,CAAAvG,kBAAA;MACd;IAEA,IACEmJ,OAAA,EACA8B,WAAI,CACF;IAAgB,IAAAtV,aACR,CAAAoU,SAAA,cACN;MACoD,IACpDZ,OAAA,EAAS;QACX,IAACrH,SAAA,aAAA+J,WAAA;QACH;MACF;MACF,IAAAE,MAAA,GAAAhG,UAAA;MAEA,IAAMlN,OAAA,GAAA+Q,WAAc;MACpB,IAAO,CAAAmC,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAA1U,GAAA,MAAA4T,WAAA;QACP,IAAOc,MAAA;UACTtF,2BAAA,CAAAsF,MAAA,CAAA3U,QAAA;UAMMgI,iBAAA,CAAAC,KAAoB;UACvB0M,MAAA,CAAA3U,QAAA,CAAAwP,KAAA;QACC;QACAmF,MAAA;UACA1U,GAAA,EAAA4T,WAAA;UACA7T,QAAA,EAAAuG,qBAAA;YAMI9E,OAAA;YACE+E,SAAA;YAINC,YAAA;YAEIC,cAAA;YACEC,YAAA;YACAC;UACA;QACA;QACD+H,UAAA,GAAAgG,MAAA;MACH;MACFF,WAAA,CAAAE,MAAA,CAAA3U,QAAA;IACA;IACF;IACF;IAaA;IAKE;IAEA,CACA6T,WAAM,EAEN9B,OAAM,EACNvL,SAAY,CAUd;IACE,IAAAoO,WAAO,OAAArW,aAAA,CAAAqP,MAAA,EAAAG,IAAe;IACxB,IAAAxP,aAAA,CAAAoU,SAAA;MAEA,IAAAkC,QAAS,GAAAD,WAAe,CAAApN,OAAA;MACtBoN,WAAA,CAAApN,OAAA,GAAAuG,IAAA;MACA,IAAArD,SAAS,WAAAmK,QAAA,wBAAA9G,IAAA,iBAAA8G,QAAA,KAAA9G,IAAA;QACTrD,SAAA,CAAAmG,UAAe,CAAAiE,OAAA;UAKd/G;QACD,EAAM;MACN;IACF,IAEArD,SAAO,EACLqD,IAAA,CACA;IACA,IAAAgH,YAAA,GAAAhD,OAAA,YAAArH,SAAA;IACA,0BAAAvM,kBAAA,CAAAoT,GAAA,EAAA1E,eAAA,CAAA2E,QAAA;MACA5T,KAAA,EAAAyI,QAAA;MACAgL,QAAA,qBAAAlT,kBAAA,CAAAoT,GAAA,EAAAvL,eAAA,CAAAwL,QAAA;QACA5T,KAAA,EAAAmX,YAAA;QACA1D,QAAA,qBAAAlT,kBAAA,CAAAsT,IAAA,EAAAnT,YAAA,CAAAoT,WAAA,CAAAF,QAAA;UACA5T,KAAA,EAAAmX,YAAA,aAAAA,YAAA,cAAAA,YAAA,GAAArE,kBAAA;UACAW,QAAA,GACA0D,YAAA,sBAAA5W,kBAAA,CAAAoT,GAAA,EAAAyD,eAAA,cACAD,YAAA,sBAAA5W,kBAAA,CAAAoT,GAAA,EAAA0D,iBAAA;YACArN,UAAA;YACAiK,WAAA;YACAqD,aAAA,EAAApD,iBAAA;YACAqD,eAAA,EAA2BrD,iBAAA,GAAkB,CAAAI,eAAA,GAAAF,KAAA,CAAA5K,QAAA,cAAA8K,eAAA,cAAAA,eAAA,GAAAF,KAAA,CAAA3K,MAAA;UAC7C,WACAgK,QAAA;QAEJ","ignoreList":[]}