@particle-network/connectkit 2.0.14 → 2.0.16

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.
@@ -55,7 +55,7 @@ module.exports = __toCommonJS(src_exports);
55
55
  var EmailRegExp = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
56
56
 
57
57
  // src/hooks/useIconColor.ts
58
- var import_react52 = require("react");
58
+ var import_react51 = require("react");
59
59
 
60
60
  // src/utils/theme.ts
61
61
  function getSystemMode() {
@@ -67,13 +67,13 @@ function getSystemMode() {
67
67
  }
68
68
 
69
69
  // src/hooks/useAppearance.ts
70
- var import_react51 = require("react");
70
+ var import_react50 = require("react");
71
71
 
72
72
  // src/context/index.tsx
73
- var import_react50 = __toESM(require("react"), 1);
73
+ var import_react49 = __toESM(require("react"), 1);
74
74
 
75
75
  // src/components/connectModal/index.tsx
76
- var import_react48 = require("react");
76
+ var import_react47 = require("react");
77
77
 
78
78
  // src/actions/getAccount.ts
79
79
  var import_viem = require("viem");
@@ -265,7 +265,7 @@ function useAccount() {
265
265
  }
266
266
 
267
267
  // src/hooks/useLocales.ts
268
- var import_react3 = require("react");
268
+ var import_react2 = require("react");
269
269
 
270
270
  // src/locales/en-US.json
271
271
  var en_US_default = {
@@ -815,22 +815,20 @@ String.prototype.format = function(...values) {
815
815
  return formatValue;
816
816
  };
817
817
 
818
- // src/hooks/useLanguage.ts
819
- var import_react2 = require("react");
820
- var useLanguage = () => {
818
+ // src/hooks/useLocales.ts
819
+ function useLocales() {
821
820
  const { appearance } = useAppearance();
822
821
  const language = (0, import_react2.useMemo)(() => {
823
822
  return appearance?.language ?? "en-US";
824
823
  }, [appearance.language]);
825
- return language;
826
- };
827
-
828
- // src/hooks/useLocales.ts
829
- function useLocales() {
830
- const language = useLanguage();
831
- const translations = (0, import_react3.useMemo)(() => {
832
- return getLocale(language);
833
- }, [language]);
824
+ const overrideLocales = (0, import_react2.useMemo)(() => {
825
+ return appearance.overrideLocales;
826
+ }, [appearance.overrideLocales]);
827
+ const translations = (0, import_react2.useMemo)(() => {
828
+ const locales = getLocale(language);
829
+ const overrideLanguage = overrideLocales?.[language];
830
+ return { ...locales, ...overrideLanguage };
831
+ }, [language, overrideLocales]);
834
832
  if (!translations) {
835
833
  throw new Error(`Missing translations for ${language}`);
836
834
  }
@@ -860,7 +858,7 @@ var import_zustand5 = require("zustand");
860
858
 
861
859
  // src/pages/captcha/index.tsx
862
860
  var import_connector_core3 = require("@particle-network/connector-core");
863
- var import_react9 = require("react");
861
+ var import_react8 = require("react");
864
862
 
865
863
  // src/assets/icons.tsx
866
864
  var import_framer_motion = require("framer-motion");
@@ -1500,7 +1498,7 @@ var CircleSpinner = ({
1500
1498
  var circleSpinner_default = CircleSpinner;
1501
1499
 
1502
1500
  // src/components/codeInput/index.tsx
1503
- var import_react4 = __toESM(require("react"), 1);
1501
+ var import_react3 = __toESM(require("react"), 1);
1504
1502
 
1505
1503
  // src/components/codeInput/styles.ts
1506
1504
  var import_styled_components2 = require("styled-components");
@@ -1604,7 +1602,7 @@ var propsMap = {
1604
1602
  max: "9"
1605
1603
  }
1606
1604
  };
1607
- var CodeInput = (0, import_react4.forwardRef)(
1605
+ var CodeInput = (0, import_react3.forwardRef)(
1608
1606
  ({
1609
1607
  allowedCharacters = "alphanumeric",
1610
1608
  ariaLabel,
@@ -1623,12 +1621,12 @@ var CodeInput = (0, import_react4.forwardRef)(
1623
1621
  if (!allowedCharactersValues.some((value) => value === allowedCharacters)) {
1624
1622
  throw new Error("Invalid value for allowedCharacters. Use alpha, numeric, or alphanumeric");
1625
1623
  }
1626
- const [focusIndex, setFocusIndex] = import_react4.default.useState(0);
1627
- const [showFocusBorder, setShowFocusBorder] = import_react4.default.useState(false);
1628
- const inputsRef = (0, import_react4.useRef)([]);
1624
+ const [focusIndex, setFocusIndex] = import_react3.default.useState(0);
1625
+ const [showFocusBorder, setShowFocusBorder] = import_react3.default.useState(false);
1626
+ const inputsRef = (0, import_react3.useRef)([]);
1629
1627
  const inputProps = propsMap[allowedCharacters];
1630
- const codeInputContainerRef = (0, import_react4.useRef)(null);
1631
- (0, import_react4.useImperativeHandle)(ref, () => ({
1628
+ const codeInputContainerRef = (0, import_react3.useRef)(null);
1629
+ (0, import_react3.useImperativeHandle)(ref, () => ({
1632
1630
  focus: () => {
1633
1631
  if (inputsRef.current) {
1634
1632
  inputsRef.current[0]?.focus();
@@ -1646,7 +1644,7 @@ var CodeInput = (0, import_react4.forwardRef)(
1646
1644
  sendResult();
1647
1645
  }
1648
1646
  }));
1649
- (0, import_react4.useEffect)(() => {
1647
+ (0, import_react3.useEffect)(() => {
1650
1648
  if (code) {
1651
1649
  for (let i = 0; i < inputsRef.current.length; i++) {
1652
1650
  inputsRef.current[i].value = "";
@@ -2088,7 +2086,7 @@ var FlexBetween = import_styled_components3.styled.div`
2088
2086
  `;
2089
2087
 
2090
2088
  // src/components/reSend/index.tsx
2091
- var import_react5 = require("react");
2089
+ var import_react4 = require("react");
2092
2090
 
2093
2091
  // src/components/loadingSpinner/styles.ts
2094
2092
  var import_framer_motion5 = require("framer-motion");
@@ -2175,11 +2173,11 @@ var import_jsx_runtime5 = require("react/jsx-runtime");
2175
2173
  var DownTime = 60;
2176
2174
  var ReSend = ({ reSendCode }) => {
2177
2175
  const locales = useLocales();
2178
- const [downTimeStatus, setDownTimeStatus] = (0, import_react5.useState)(0 /* NotStarted */);
2176
+ const [downTimeStatus, setDownTimeStatus] = (0, import_react4.useState)(0 /* NotStarted */);
2179
2177
  const { showError } = useModalError();
2180
- const [downTime, setDownTime] = (0, import_react5.useState)(DownTime);
2181
- const [loading, setLoading] = (0, import_react5.useState)(false);
2182
- const timerRef = (0, import_react5.useRef)(null);
2178
+ const [downTime, setDownTime] = (0, import_react4.useState)(DownTime);
2179
+ const [loading, setLoading] = (0, import_react4.useState)(false);
2180
+ const timerRef = (0, import_react4.useRef)(null);
2183
2181
  const downTimeCount = () => {
2184
2182
  setDownTime(DownTime);
2185
2183
  setDownTimeStatus(1 /* InProgress */);
@@ -2210,7 +2208,7 @@ var ReSend = ({ reSendCode }) => {
2210
2208
  setLoading(false);
2211
2209
  }, 100);
2212
2210
  };
2213
- (0, import_react5.useEffect)(() => {
2211
+ (0, import_react4.useEffect)(() => {
2214
2212
  downTimeCount();
2215
2213
  return () => {
2216
2214
  clearInterval(timerRef.current);
@@ -2292,12 +2290,12 @@ var useLastConnectorId = (0, import_zustand3.create)((set) => ({
2292
2290
  }));
2293
2291
 
2294
2292
  // src/hooks/useMutation.ts
2295
- var import_react6 = require("react");
2293
+ var import_react5 = require("react");
2296
2294
  var useMutation = (mutationFn, options) => {
2297
- const [status, setStatus] = (0, import_react6.useState)("idle");
2298
- const [data, setData] = (0, import_react6.useState)(null);
2299
- const [error, setError] = (0, import_react6.useState)(null);
2300
- const mutateAsync = (0, import_react6.useCallback)(
2295
+ const [status, setStatus] = (0, import_react5.useState)("idle");
2296
+ const [data, setData] = (0, import_react5.useState)(null);
2297
+ const [error, setError] = (0, import_react5.useState)(null);
2298
+ const mutateAsync = (0, import_react5.useCallback)(
2301
2299
  async (variables) => {
2302
2300
  if (options?.onMutate) {
2303
2301
  options.onMutate(variables);
@@ -2330,7 +2328,7 @@ var useMutation = (mutationFn, options) => {
2330
2328
  },
2331
2329
  [mutationFn, options]
2332
2330
  );
2333
- const mutate = (0, import_react6.useCallback)(
2331
+ const mutate = (0, import_react5.useCallback)(
2334
2332
  (variables) => {
2335
2333
  mutateAsync(variables).catch(() => {
2336
2334
  });
@@ -2380,7 +2378,7 @@ function useConnect(parameters) {
2380
2378
  }
2381
2379
 
2382
2380
  // src/hooks/useConnectors.ts
2383
- var import_react7 = require("react");
2381
+ var import_react6 = require("react");
2384
2382
 
2385
2383
  // src/actions/getConnectors.ts
2386
2384
  var previousConnectors = [];
@@ -2403,7 +2401,7 @@ function watchConnectors(config, parameters) {
2403
2401
  // src/hooks/useConnectors.ts
2404
2402
  var useConnectors = () => {
2405
2403
  const { config } = useContext();
2406
- return (0, import_react7.useSyncExternalStore)(
2404
+ return (0, import_react6.useSyncExternalStore)(
2407
2405
  (onChange) => watchConnectors(config, { onChange }),
2408
2406
  () => getConnectors(config),
2409
2407
  () => getConnectors(config)
@@ -2415,7 +2413,7 @@ function useConnector(id) {
2415
2413
  }
2416
2414
 
2417
2415
  // src/hooks/useRouter.ts
2418
- var import_react8 = require("react");
2416
+ var import_react7 = require("react");
2419
2417
  var useRouter = () => {
2420
2418
  const { setOpen, open } = useModalState();
2421
2419
  const setRoute = useRouteState((state) => state.setRoute);
@@ -2439,7 +2437,7 @@ var useRouter = () => {
2439
2437
  }
2440
2438
  setRoute({ path: validRoute, state });
2441
2439
  };
2442
- const close = (0, import_react8.useCallback)(() => {
2440
+ const close = (0, import_react7.useCallback)(() => {
2443
2441
  setOpen(false);
2444
2442
  }, [setOpen]);
2445
2443
  return {
@@ -2542,8 +2540,8 @@ var Page = ({ value, type }) => {
2542
2540
  const connector = useConnector((0, import_connector_core3.isEVMChain)(config.chains[0]) ? "particleEVM" : "particleSolana");
2543
2541
  const { connectAsync } = useConnect();
2544
2542
  const { appearance } = useAppearance();
2545
- const [loading, setLoading] = (0, import_react9.useState)(false);
2546
- const emailCaptchaWrapperRef = (0, import_react9.useRef)(null);
2543
+ const [loading, setLoading] = (0, import_react8.useState)(false);
2544
+ const emailCaptchaWrapperRef = (0, import_react8.useRef)(null);
2547
2545
  const walletConnector = useWalletConnector("particleAuth");
2548
2546
  const { navigate } = useRouter();
2549
2547
  const loginHandler = async (params) => {
@@ -2644,7 +2642,7 @@ var captcha_default = Page;
2644
2642
 
2645
2643
  // src/pages/connecting/index.tsx
2646
2644
  var import_framer_motion9 = require("framer-motion");
2647
- var import_react14 = require("react");
2645
+ var import_react13 = require("react");
2648
2646
 
2649
2647
  // src/components/squircleSpinner/index.tsx
2650
2648
  var import_framer_motion7 = require("framer-motion");
@@ -2761,7 +2759,7 @@ var SquircleSpinner = ({ logo, connecting = true }) => {
2761
2759
  var squircleSpinner_default = SquircleSpinner;
2762
2760
 
2763
2761
  // src/assets/wallets.tsx
2764
- var import_react10 = require("react");
2762
+ var import_react9 = require("react");
2765
2763
  var import_jsx_runtime8 = require("react/jsx-runtime");
2766
2764
  var Injected = ({ ...props }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2767
2765
  "path",
@@ -2794,10 +2792,10 @@ var Coinbase = ({ ...props }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("
2794
2792
  ] });
2795
2793
  var Trust = ({ ...props }) => {
2796
2794
  const { currentMode } = useIconColor_default();
2797
- const id = (0, import_react10.useMemo)(() => {
2795
+ const id = (0, import_react9.useMemo)(() => {
2798
2796
  return Math.random().toString(36).substring(7);
2799
2797
  }, []);
2800
- const id2 = (0, import_react10.useMemo)(() => {
2798
+ const id2 = (0, import_react9.useMemo)(() => {
2801
2799
  return Math.random().toString(36).substring(7);
2802
2800
  }, []);
2803
2801
  return currentMode === "light" ? /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "22", height: "24", viewBox: "0 0 22 24", fill: "none", ...props, children: [
@@ -3813,7 +3811,7 @@ var MetaMask = ({ ...props }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("
3813
3811
  )
3814
3812
  ] });
3815
3813
  var OKX = ({ ...props }) => {
3816
- const id1 = (0, import_react10.useMemo)(() => {
3814
+ const id1 = (0, import_react9.useMemo)(() => {
3817
3815
  return `okx_${Math.random().toString(36).substring(7)}_1`;
3818
3816
  }, []);
3819
3817
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", ...props, children: [
@@ -3859,22 +3857,22 @@ var OKX = ({ ...props }) => {
3859
3857
  ] });
3860
3858
  };
3861
3859
  var BitKeep = ({ ...props }) => {
3862
- const id1 = (0, import_react10.useMemo)(() => {
3860
+ const id1 = (0, import_react9.useMemo)(() => {
3863
3861
  return `bitKeep_${Math.random().toString(36).substring(7)}_1`;
3864
3862
  }, []);
3865
- const id2 = (0, import_react10.useMemo)(() => {
3863
+ const id2 = (0, import_react9.useMemo)(() => {
3866
3864
  return `bitKeep_${Math.random().toString(36).substring(7)}_2`;
3867
3865
  }, []);
3868
- const id3 = (0, import_react10.useMemo)(() => {
3866
+ const id3 = (0, import_react9.useMemo)(() => {
3869
3867
  return `bitKeep_${Math.random().toString(36).substring(7)}_3`;
3870
3868
  }, []);
3871
- const id4 = (0, import_react10.useMemo)(() => {
3869
+ const id4 = (0, import_react9.useMemo)(() => {
3872
3870
  return `bitKeep_${Math.random().toString(36).substring(7)}_4`;
3873
3871
  }, []);
3874
- const id5 = (0, import_react10.useMemo)(() => {
3872
+ const id5 = (0, import_react9.useMemo)(() => {
3875
3873
  return `bitKeep_${Math.random().toString(36).substring(7)}_5`;
3876
3874
  }, []);
3877
- const id6 = (0, import_react10.useMemo)(() => {
3875
+ const id6 = (0, import_react9.useMemo)(() => {
3878
3876
  return `bitKeep_${Math.random().toString(36).substring(7)}_6`;
3879
3877
  }, []);
3880
3878
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", ...props, children: [
@@ -4993,10 +4991,10 @@ var isPasskeySmartWallet = (id) => {
4993
4991
  };
4994
4992
 
4995
4993
  // src/hooks/useIsMobile.ts
4996
- var import_react11 = require("react");
4994
+ var import_react10 = require("react");
4997
4995
  function useIsMobile() {
4998
- const [mobile, setMobile] = (0, import_react11.useState)(isMobile());
4999
- (0, import_react11.useEffect)(() => {
4996
+ const [mobile, setMobile] = (0, import_react10.useState)(isMobile());
4997
+ (0, import_react10.useEffect)(() => {
5000
4998
  const handleResize = () => {
5001
4999
  setMobile(isMobile());
5002
5000
  };
@@ -5007,13 +5005,13 @@ function useIsMobile() {
5007
5005
  }
5008
5006
 
5009
5007
  // src/hooks/useWalletConnectModal.tsx
5010
- var import_react12 = require("react");
5008
+ var import_react11 = require("react");
5011
5009
  function useWalletConnectModal() {
5012
5010
  const { connectAsync } = useConnect();
5013
5011
  const { config } = useContext();
5014
5012
  const walletConnector = useWalletConnector("evmWallet");
5015
5013
  const { updateLastConnectorId } = useLastConnectorId();
5016
- const [error, setError] = (0, import_react12.useState)();
5014
+ const [error, setError] = (0, import_react11.useState)();
5017
5015
  const openW3m = async () => {
5018
5016
  setError(void 0);
5019
5017
  if (walletConnector && walletConnector.w3mConnector) {
@@ -5040,20 +5038,20 @@ function useWalletConnectModal() {
5040
5038
  }
5041
5039
 
5042
5040
  // src/hooks/useWalletConnectUri.ts
5043
- var import_react13 = require("react");
5041
+ var import_react12 = require("react");
5044
5042
  function useWalletConnectUri(connectorId) {
5045
5043
  const connector = useConnector("walletConnect");
5046
5044
  const { connectAsync } = useConnect();
5047
5045
  const { updateLastConnectorId } = useLastConnectorId();
5048
- const [uri, setUri] = (0, import_react13.useState)();
5049
- const [error, setError] = (0, import_react13.useState)();
5050
- const handleMessage = (0, import_react13.useCallback)((message) => {
5046
+ const [uri, setUri] = (0, import_react12.useState)();
5047
+ const [error, setError] = (0, import_react12.useState)();
5048
+ const handleMessage = (0, import_react12.useCallback)((message) => {
5051
5049
  const { type, data } = message;
5052
5050
  if (type === "display_uri") {
5053
5051
  setUri(data);
5054
5052
  }
5055
5053
  }, []);
5056
- const connectWalletConnect = (0, import_react13.useCallback)(
5054
+ const connectWalletConnect = (0, import_react12.useCallback)(
5057
5055
  async (connector2) => {
5058
5056
  setError(void 0);
5059
5057
  try {
@@ -5067,7 +5065,7 @@ function useWalletConnectUri(connectorId) {
5067
5065
  },
5068
5066
  [connectAsync, connectorId, updateLastConnectorId]
5069
5067
  );
5070
- const requestUri = (0, import_react13.useCallback)(() => {
5068
+ const requestUri = (0, import_react12.useCallback)(() => {
5071
5069
  if (connector) {
5072
5070
  connectWalletConnect(connector);
5073
5071
  connector.emitter.on("message", handleMessage);
@@ -5237,7 +5235,7 @@ var Page2 = ({
5237
5235
  passkeyParams
5238
5236
  }) => {
5239
5237
  const locales = useLocales();
5240
- const [status, setStatus] = (0, import_react14.useState)(States.CONNECTING);
5238
+ const [status, setStatus] = (0, import_react13.useState)(States.CONNECTING);
5241
5239
  const controller = (0, import_framer_motion9.useAnimationControls)();
5242
5240
  const { config } = useContext();
5243
5241
  const {
@@ -5250,7 +5248,7 @@ var Page2 = ({
5250
5248
  const { updateLastConnectorId } = useLastConnectorId();
5251
5249
  const { openW3m, error: openW3mError } = useWalletConnectModal();
5252
5250
  const { isConnected } = useAccount();
5253
- const handleError = (0, import_react14.useCallback)((error) => {
5251
+ const handleError = (0, import_react13.useCallback)((error) => {
5254
5252
  if (error) {
5255
5253
  if (error.code) {
5256
5254
  switch (error.code) {
@@ -5278,7 +5276,7 @@ var Page2 = ({
5278
5276
  }
5279
5277
  }
5280
5278
  }, []);
5281
- const connectCallback = (0, import_react14.useMemo)(
5279
+ const connectCallback = (0, import_react13.useMemo)(
5282
5280
  () => ({
5283
5281
  onMutate: ({ connector }) => {
5284
5282
  if (connector) {
@@ -5294,10 +5292,10 @@ var Page2 = ({
5294
5292
  [handleError]
5295
5293
  );
5296
5294
  const { connect: connect2 } = useConnect(connectCallback);
5297
- const isPasskey = (0, import_react14.useMemo)(() => {
5295
+ const isPasskey = (0, import_react13.useMemo)(() => {
5298
5296
  return wallet.connector.id === "passkeySmartWallet";
5299
5297
  }, [wallet]);
5300
- const walletInfo = (0, import_react14.useMemo)(() => {
5298
+ const walletInfo = (0, import_react13.useMemo)(() => {
5301
5299
  let icon = wallet.icon;
5302
5300
  if (authParams?.socialType) {
5303
5301
  const Icon10 = getSocialIcon(authParams.socialType);
@@ -5315,7 +5313,7 @@ var Page2 = ({
5315
5313
  passkey
5316
5314
  };
5317
5315
  }, [wallet, authParams, passkeyParams, isPasskey]);
5318
- const suggestedExtension = (0, import_react14.useMemo)(() => {
5316
+ const suggestedExtension = (0, import_react13.useMemo)(() => {
5319
5317
  return wallet?.downloadUrls ? {
5320
5318
  name: Object.keys(wallet?.downloadUrls)[0],
5321
5319
  label: Object.keys(wallet.downloadUrls)[0].charAt(0).toUpperCase() + Object.keys(wallet.downloadUrls)[0].slice(1),
@@ -5348,29 +5346,29 @@ var Page2 = ({
5348
5346
  setStatus(States.UNAVAILABLE);
5349
5347
  }
5350
5348
  };
5351
- (0, import_react14.useEffect)(() => {
5349
+ (0, import_react13.useEffect)(() => {
5352
5350
  const connectTimeout = setTimeout(onConnect, 200);
5353
5351
  return () => {
5354
5352
  clearTimeout(connectTimeout);
5355
5353
  };
5356
5354
  }, []);
5357
- (0, import_react14.useEffect)(() => {
5355
+ (0, import_react13.useEffect)(() => {
5358
5356
  if (uri && isMobile2 && wallet.connector.chainType === "evm" && wallet.getWalletConnectDeeplink) {
5359
5357
  const url = wallet.getWalletConnectDeeplink(uri);
5360
5358
  openMobileUrl(url);
5361
5359
  }
5362
5360
  }, [uri]);
5363
- (0, import_react14.useEffect)(() => {
5361
+ (0, import_react13.useEffect)(() => {
5364
5362
  if (isMobile2 && requestWCUriError) {
5365
5363
  handleError(requestWCUriError);
5366
5364
  }
5367
5365
  }, [requestWCUriError, handleError]);
5368
- (0, import_react14.useEffect)(() => {
5366
+ (0, import_react13.useEffect)(() => {
5369
5367
  if (isMobile2 && isWalletConnect(wallet.connector.id) && openW3mError) {
5370
5368
  handleError(openW3mError);
5371
5369
  }
5372
5370
  }, [openW3mError, handleError]);
5373
- (0, import_react14.useEffect)(() => {
5371
+ (0, import_react13.useEffect)(() => {
5374
5372
  return () => {
5375
5373
  if (!isConnected) {
5376
5374
  config.setState((x) => ({
@@ -5380,7 +5378,7 @@ var Page2 = ({
5380
5378
  }
5381
5379
  };
5382
5380
  }, [isConnected]);
5383
- const connectingH = (0, import_react14.useMemo)(() => {
5381
+ const connectingH = (0, import_react13.useMemo)(() => {
5384
5382
  const walletName = walletInfo.shortName || walletInfo.name || "Wallet";
5385
5383
  if (status == States.CONNECTED) {
5386
5384
  return locales.connectingConnected;
@@ -5402,7 +5400,7 @@ var Page2 = ({
5402
5400
  }
5403
5401
  return locales.connectingRequest;
5404
5402
  }, [status, locales, walletInfo, suggestedExtension]);
5405
- const connectingP = (0, import_react14.useMemo)(() => {
5403
+ const connectingP = (0, import_react13.useMemo)(() => {
5406
5404
  const walletName = walletInfo.shortName || walletInfo.name || "Wallet";
5407
5405
  if (status == States.CONNECTED) {
5408
5406
  return locales.connectingConnectedDesc;
@@ -5433,7 +5431,7 @@ var Page2 = ({
5433
5431
  }
5434
5432
  return locales.connectingRequestDesc;
5435
5433
  }, [status, locales, walletInfo, suggestedExtension]);
5436
- (0, import_react14.useEffect)(() => {
5434
+ (0, import_react13.useEffect)(() => {
5437
5435
  if (connectingH) {
5438
5436
  toggleAnim();
5439
5437
  }
@@ -5514,7 +5512,7 @@ var connecting_default = Page2;
5514
5512
 
5515
5513
  // src/components/socialLogin/index.tsx
5516
5514
  var import_connector_core4 = require("@particle-network/connector-core");
5517
- var import_react15 = require("react");
5515
+ var import_react14 = require("react");
5518
5516
 
5519
5517
  // src/assets/toggle.tsx
5520
5518
  var import_framer_motion10 = require("framer-motion");
@@ -5948,14 +5946,14 @@ var SocialLogin = ({ expandList }) => {
5948
5946
  const evmWalletConnector = useWalletConnector("evmWallet");
5949
5947
  const { lastConnectorId } = useLastConnectorId();
5950
5948
  const connectWallet = useConnectWithWallet();
5951
- const recentConnectSocialAuthType = (0, import_react15.useMemo)(() => {
5949
+ const recentConnectSocialAuthType = (0, import_react14.useMemo)(() => {
5952
5950
  if (lastConnectorId !== "particleSolana" && lastConnectorId !== "particleEVM") {
5953
5951
  return lastConnectorId;
5954
5952
  }
5955
5953
  const lastAuthType = walletConnector.auth.getLatestAuthType();
5956
5954
  return lastAuthType;
5957
5955
  }, [lastConnectorId, walletConnector.auth]);
5958
- const authTypes = (0, import_react15.useMemo)(() => {
5956
+ const authTypes = (0, import_react14.useMemo)(() => {
5959
5957
  if (!walletConnector) {
5960
5958
  return [];
5961
5959
  }
@@ -5968,15 +5966,15 @@ var SocialLogin = ({ expandList }) => {
5968
5966
  }
5969
5967
  return walletConnector.supportAuthTypes;
5970
5968
  }, [walletConnector, evmWalletConnector, appearance.collapsePasskeyButton, config.plugins]);
5971
- const socialAuthTypes2 = (0, import_react15.useMemo)(() => {
5969
+ const socialAuthTypes2 = (0, import_react14.useMemo)(() => {
5972
5970
  return authTypes.filter((item) => isSocialAuthType(item) || item === "passkeySmartWallet");
5973
5971
  }, [authTypes]);
5974
- const _expandList = (0, import_react15.useMemo)(() => {
5972
+ const _expandList = (0, import_react14.useMemo)(() => {
5975
5973
  const evmConnector = config.getWalletConnector("evmWallet");
5976
5974
  const solanaConnector = config.getWalletConnector("solanaWallet");
5977
5975
  return expandList || !authTypes.includes("email") && !authTypes.includes("phone") && !evmConnector && !solanaConnector;
5978
5976
  }, [expandList, authTypes, config]);
5979
- const renderAuthTypes = (0, import_react15.useMemo)(() => {
5977
+ const renderAuthTypes = (0, import_react14.useMemo)(() => {
5980
5978
  if (_expandList) {
5981
5979
  return socialAuthTypes2;
5982
5980
  }
@@ -6008,7 +6006,7 @@ var SocialLogin = ({ expandList }) => {
6008
6006
  navigate("login-passkey" /* LoginPasskey */);
6009
6007
  }
6010
6008
  };
6011
- const felxRow = (0, import_react15.useMemo)(() => {
6009
+ const felxRow = (0, import_react14.useMemo)(() => {
6012
6010
  if (_expandList) {
6013
6011
  return false;
6014
6012
  }
@@ -6016,7 +6014,7 @@ var SocialLogin = ({ expandList }) => {
6016
6014
  }, [_expandList, socialAuthTypes2]);
6017
6015
  return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SocialLoginContainer, { $felxRow: felxRow, children: renderAuthTypes.map((authType, index) => {
6018
6016
  const Icon10 = getSocialIcon(authType);
6019
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_react15.Fragment, { children: [
6017
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_react14.Fragment, { children: [
6020
6018
  /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(SocialItem, { $felxRow: felxRow, onClick: () => onSocialLogin(authType), children: [
6021
6019
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon10, {}),
6022
6020
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { children: authType === "passkeySmartWallet" ? "Passkey" : authType }),
@@ -6032,7 +6030,7 @@ var SocialLogin = ({ expandList }) => {
6032
6030
  var socialLogin_default = SocialLogin;
6033
6031
 
6034
6032
  // src/components/wallets/index.tsx
6035
- var import_react16 = require("react");
6033
+ var import_react15 = require("react");
6036
6034
 
6037
6035
  // src/components/button/styles.ts
6038
6036
  var import_framer_motion13 = require("framer-motion");
@@ -6161,7 +6159,7 @@ var Wallets = ({ expandList }) => {
6161
6159
  const { lastConnectorId } = useLastConnectorId();
6162
6160
  const connectWallet = useConnectWithWallet();
6163
6161
  const { appearance } = useAppearance();
6164
- const walletData = (0, import_react16.useMemo)(() => {
6162
+ const walletData = (0, import_react15.useMemo)(() => {
6165
6163
  const _wallets = wallets.filter(
6166
6164
  (wallet) => wallet.connector.type !== "particleAuth" && wallet.connector.id !== "passkeySmartWallet"
6167
6165
  );
@@ -6223,7 +6221,7 @@ var Wallets = ({ expandList }) => {
6223
6221
  });
6224
6222
  return datas;
6225
6223
  }, [locales, wallets, appearance?.recommendedWallets, lastConnectorId]);
6226
- const renderWallets = (0, import_react16.useMemo)(() => {
6224
+ const renderWallets = (0, import_react15.useMemo)(() => {
6227
6225
  if (expandList) {
6228
6226
  return walletData;
6229
6227
  }
@@ -6235,7 +6233,7 @@ var Wallets = ({ expandList }) => {
6235
6233
  }
6236
6234
  return walletData;
6237
6235
  }, [walletData, expandList, appearance?.collapseWalletList]);
6238
- const displayActionBtn = (0, import_react16.useMemo)(() => {
6236
+ const displayActionBtn = (0, import_react15.useMemo)(() => {
6239
6237
  return !expandList && (appearance?.collapseWalletList || walletData.length > 3);
6240
6238
  }, [expandList, appearance?.collapseWalletList, walletData]);
6241
6239
  const onWalletClick = (data) => {
@@ -6285,7 +6283,7 @@ var Connectors = ({ type = "wallet" }) => {
6285
6283
  var connectors_default = Connectors;
6286
6284
 
6287
6285
  // src/pages/downloadApp/index.tsx
6288
- var import_react18 = require("react");
6286
+ var import_react17 = require("react");
6289
6287
 
6290
6288
  // src/assets/browser/android.tsx
6291
6289
  var import_jsx_runtime17 = require("react/jsx-runtime");
@@ -6980,7 +6978,7 @@ var import_framer_motion15 = require("framer-motion");
6980
6978
 
6981
6979
  // src/components/CustomQRCode/QRCode.tsx
6982
6980
  var import_qrcode = __toESM(require("qrcode"), 1);
6983
- var import_react17 = require("react");
6981
+ var import_react16 = require("react");
6984
6982
  var import_jsx_runtime24 = require("react/jsx-runtime");
6985
6983
  var generateMatrix = (value, errorCorrectionLevel) => {
6986
6984
  const arr = Array.prototype.slice.call(import_qrcode.default.create(value, { errorCorrectionLevel }).modules.data, 0);
@@ -7000,7 +6998,7 @@ function QRCode({
7000
6998
  }) {
7001
6999
  const logoSize = clearArea ? 76 : 0;
7002
7000
  const size = sizeProp - 10 * 2;
7003
- const dots = (0, import_react17.useMemo)(() => {
7001
+ const dots = (0, import_react16.useMemo)(() => {
7004
7002
  const dots2 = [];
7005
7003
  const matrix = generateMatrix(uri, ecl);
7006
7004
  const cellSize = size / matrix.length;
@@ -7426,8 +7424,8 @@ var Tip = (0, import_styled_components13.styled)(Subtitle)`
7426
7424
  var import_jsx_runtime26 = require("react/jsx-runtime");
7427
7425
  var Page3 = ({ wallet }) => {
7428
7426
  const locales = useLocales();
7429
- const [viewType, setViewType] = (0, import_react18.useState)();
7430
- const downloadUrls = (0, import_react18.useMemo)(() => {
7427
+ const [viewType, setViewType] = (0, import_react17.useState)();
7428
+ const downloadUrls = (0, import_react17.useMemo)(() => {
7431
7429
  if (wallet?.downloadUrls) {
7432
7430
  return Object.keys(wallet.downloadUrls).map((key) => {
7433
7431
  const url = wallet?.downloadUrls?.[key] || "";
@@ -7450,7 +7448,7 @@ var Page3 = ({ wallet }) => {
7450
7448
  return [];
7451
7449
  }
7452
7450
  }, [wallet, locales]);
7453
- (0, import_react18.useEffect)(() => {
7451
+ (0, import_react17.useEffect)(() => {
7454
7452
  const { website } = wallet?.downloadUrls || {};
7455
7453
  if (downloadUrls?.length) {
7456
7454
  setViewType("List" /* List */);
@@ -7520,8 +7518,6 @@ var TipText = import_styled_components14.styled.div`
7520
7518
  var import_jsx_runtime27 = require("react/jsx-runtime");
7521
7519
  var LoginPasskey = () => {
7522
7520
  const locales = useLocales();
7523
- const { appearance } = useAppearance();
7524
- const language = useLanguage();
7525
7521
  const { navigate } = useRouter();
7526
7522
  const connectWallet = useConnectWithWallet();
7527
7523
  const wallet = useWalletProps("passkeySmartWallet");
@@ -7549,9 +7545,9 @@ var LoginPasskey = () => {
7549
7545
  };
7550
7546
  return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(PageContent, { children: [
7551
7547
  /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(IconWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(PasskeyIcon, {}) }),
7552
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(TipText, { children: appearance?.overrideLocales?.[language]?.usePasskeyToLoginSmartAccount ?? locales.usePasskeyToLoginSmartAccount }),
7548
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(TipText, { children: locales.usePasskeyToLoginSmartAccount }),
7553
7549
  /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
7554
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(button_default, { style: { marginTop: 16 }, onClick: onRegistration, children: appearance?.overrideLocales?.[language]?.btnCreatePasskeyWallet ?? locales.createNewPasskey }),
7550
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(button_default, { style: { marginTop: 16 }, onClick: onRegistration, children: locales.createNewPasskey }),
7555
7551
  /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
7556
7552
  button_default,
7557
7553
  {
@@ -7560,7 +7556,7 @@ var LoginPasskey = () => {
7560
7556
  },
7561
7557
  onClick: onAuthentication,
7562
7558
  color: "secondary",
7563
- children: appearance?.overrideLocales?.[language]?.btnLoginWithPasskey ?? locales.loginWithPasskey
7559
+ children: locales.loginWithPasskey
7564
7560
  }
7565
7561
  )
7566
7562
  ] })
@@ -7691,7 +7687,7 @@ var passkeySetup_default = Signup;
7691
7687
  var import_connector_core5 = require("@particle-network/connector-core");
7692
7688
 
7693
7689
  // src/components/copyToClipboard/index.tsx
7694
- var import_react19 = require("react");
7690
+ var import_react18 = require("react");
7695
7691
 
7696
7692
  // src/components/copyToClipboard/CopyToClipboardIcon.tsx
7697
7693
  var import_framer_motion17 = require("framer-motion");
@@ -7799,8 +7795,8 @@ var OffsetContainer = import_styled_components17.styled.div`
7799
7795
  // src/components/copyToClipboard/index.tsx
7800
7796
  var import_jsx_runtime30 = require("react/jsx-runtime");
7801
7797
  var CopyToClipboard = ({ string, children, variant }) => {
7802
- const [clipboard, setClipboard] = (0, import_react19.useState)(false);
7803
- const [className, setClassName] = (0, import_react19.useState)("copied-0");
7798
+ const [clipboard, setClipboard] = (0, import_react18.useState)(false);
7799
+ const [className, setClassName] = (0, import_react18.useState)("copied-0");
7804
7800
  let timeout;
7805
7801
  function copyToClipboard(str) {
7806
7802
  if (navigator.clipboard && window.isSecureContext) {
@@ -7883,11 +7879,11 @@ var CopyToClipboard = ({ string, children, variant }) => {
7883
7879
  var copyToClipboard_default = CopyToClipboard;
7884
7880
 
7885
7881
  // src/hooks/useAddress.ts
7886
- var import_react21 = require("react");
7882
+ var import_react20 = require("react");
7887
7883
  var import_viem2 = require("viem");
7888
7884
 
7889
7885
  // src/hooks/useDisconnect.ts
7890
- var import_react20 = require("react");
7886
+ var import_react19 = require("react");
7891
7887
 
7892
7888
  // src/actions/disconnect.ts
7893
7889
  async function disconnect(config, parameters = {}) {
@@ -7937,7 +7933,7 @@ async function disconnect(config, parameters = {}) {
7937
7933
  // src/hooks/useDisconnect.ts
7938
7934
  function useDisconnect(parameters) {
7939
7935
  const { config } = useContext();
7940
- const mutationFn = (0, import_react20.useCallback)(async (parameters2) => {
7936
+ const mutationFn = (0, import_react19.useCallback)(async (parameters2) => {
7941
7937
  await disconnect(config, parameters2 ?? void 0);
7942
7938
  }, []);
7943
7939
  const { status, data, error, mutate, mutateAsync } = useMutation(mutationFn, parameters);
@@ -7971,8 +7967,8 @@ var useAddress = () => {
7971
7967
  const smartAccount = useSmartAccount();
7972
7968
  const { disconnect: disconnect2 } = useDisconnect();
7973
7969
  const { showError } = useModalError();
7974
- const [address, setAddress] = (0, import_react21.useState)();
7975
- (0, import_react21.useEffect)(() => {
7970
+ const [address, setAddress] = (0, import_react20.useState)();
7971
+ (0, import_react20.useEffect)(() => {
7976
7972
  if (smartAccount && eoaAddress && eoaAddress.startsWith("0x")) {
7977
7973
  setAddress(void 0);
7978
7974
  if (chain) {
@@ -8096,7 +8092,7 @@ var Page4 = () => {
8096
8092
  var receive_default = Page4;
8097
8093
 
8098
8094
  // src/pages/selectChain/index.tsx
8099
- var import_react22 = require("react");
8095
+ var import_react21 = require("react");
8100
8096
 
8101
8097
  // src/assets/chains/eth.tsx
8102
8098
  var import_jsx_runtime32 = require("react/jsx-runtime");
@@ -8183,7 +8179,7 @@ var Page5 = ({ walletData }) => {
8183
8179
  const locales = useLocales();
8184
8180
  const connectWallet = useConnectWithWallet();
8185
8181
  return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(PageContent, { style: { marginTop: 0 }, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(Wrapper, { children: [
8186
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(WalletIconContainer2, { children: !!walletData?.props?.[0]?.icon && (0, import_react22.cloneElement)(walletData?.props?.[0].icon, {}) }),
8182
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(WalletIconContainer2, { children: !!walletData?.props?.[0]?.icon && (0, import_react21.cloneElement)(walletData?.props?.[0].icon, {}) }),
8187
8183
  /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
8188
8184
  Title,
8189
8185
  {
@@ -8218,7 +8214,7 @@ var Page5 = ({ walletData }) => {
8218
8214
  var selectChain_default = Page5;
8219
8215
 
8220
8216
  // src/pages/signup/index.tsx
8221
- var import_react27 = __toESM(require("react"), 1);
8217
+ var import_react26 = __toESM(require("react"), 1);
8222
8218
 
8223
8219
  // src/assets/logo.svg
8224
8220
  var logo_default = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA5IiBoZWlnaHQ9IjQxIiB2aWV3Qm94PSIwIDAgMjA5IDQxIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMF82NzY2KSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNTkuOTMwMSAyMi40NzlDNTkuODE0OSAyMy43MDk1IDU5LjE1NiAyNC44MjUzIDU4LjEzMTkgMjUuNTI0M0M1Ni45MzUzIDI2LjMyNjEgNTUuNTEyNyAyNi43MjY1IDU0LjA3MTQgMjYuNjY3MkM1Mi40NjA1IDI2Ljc1MDQgNTAuODc2MSAyNi4yMzQgNDkuNjI2OCAyNS4yMTg1QzQ4LjUxNTggMjQuMjQwNyA0Ny45MDcgMjIuODE2NSA0Ny45Njk0IDIxLjM0MThDNDcuOTA2NyAxOS44NjU0IDQ4LjUxNTQgMTguNDM5NCA0OS42MjY4IDE3LjQ1OTRDNTAuODc1MiAxNi40NDI1IDUyLjQ1OTcgMTUuOTI1MyA1NC4wNzA4IDE2LjAwODdDNTUuNDkzNyAxNS45NTI3IDU2Ljg5OTUgMTYuMzMzNyA1OC4wOTczIDE3LjEwMDFDNTkuMTAxNiAxNy43MzQ4IDU5Ljc2MTMgMTguNzg5OCA1OS44ODk4IDE5Ljk2N0w1Ny4xMTAyIDE5Ljk2N0M1Ni45NjY5IDE5LjM4NCA1Ni41OTkgMTguODgwNiA1Ni4wODYgMTguNTY1NEM1NS40NzAyIDE4LjIyNDYgNTQuNzcxMyAxOC4wNjEyIDU0LjA2NzUgMTguMDkzM0M1My4xNzkgMTguMDQ1NCA1Mi4zMDkgMTguMzU5MSA1MS42NTc0IDE4Ljk2MjNDNTEuMDQ4MSAxOS42MDA2IDUwLjczMDQgMjAuNDYwOCA1MC43NzkxIDIxLjMzOTlDNTAuNzMxMyAyMi4yMTczIDUxLjA0OTggMjMuMDc1NCA1MS42NTkzIDIzLjcxMTFDNTIuMzEyNyAyNC4zMTM2IDUzLjE4NCAyNC42MjYxIDU0LjA3MzMgMjQuNTc2OUM1NC44MjUxIDI0LjYxMjkgNTUuNTY5OSAyNC40MTk1IDU2LjIwODIgMjQuMDIyN0M1Ni43MzQgMjMuNjcxOSA1Ny4wNzQ5IDIzLjEwNTggNTcuMTM3NyAyMi40NzlMNTkuOTMwMSAyMi40NzlaTTIyLjIyODEgMTYuMjc1N1YyNi4zOTc3TDI0Ljc3NCAyNi4zOTcxVjIyLjY2NzZMMjcuNzE4NyAyMi42Njc2QzI4LjIzMDMgMjIuNjAyMyAyOC43NDUzIDIyLjc1OTQgMjkuMTMyMiAyMy4wOTg5QzI5LjQzNjkgMjMuNjU3MSAyOS41NjI5IDI0LjI5NDYgMjkuNDkzMyAyNC45MjYxVjI1LjYxMDNDMjkuNDkyNCAyNS43NTMzIDI5LjUwOTggMjUuODk1OSAyOS41NDUxIDI2LjAzNDZDMjkuNTc3OCAyNi4xNjI2IDI5LjYzIDI2LjI4NDkgMjkuNyAyNi4zOTcxSDMyLjU1NzdDMzIuMjU1MSAyNi4wNTAxIDMyLjA3NjMgMjUuMjQ5MyAzMi4wMjEyIDIzLjk5NDZDMzIuMDE3IDIzLjg3NjEgMzIuMDEyNSAyMy43ODI3IDMyLjAwNzggMjMuNzE0M0MzMi4wMjIxIDIzLjIwODcgMzEuOTEyMyAyMi43MDcyIDMxLjY4NzcgMjIuMjUzNUMzMS40NDg5IDIxLjkzMzYgMzEuMTE5NyAyMS42OTE4IDMwLjc0MjIgMjEuNTU5QzMxLjI1MyAyMS4zNzI4IDMxLjY4OTYgMjEuMDI3MSAzMS45ODY3IDIwLjU3MzVDMzIuMjg5OCAyMC4xMDQ2IDMyLjQ0NTggMTkuNTU2NiAzMi40MzQ4IDE4Ljk5OTJDMzIuNDk0OCAxOC4xOTM1IDMyLjEzMTUgMTcuNDE0MiAzMS40NzQ1IDE2LjkzOTVDMzAuNTYyIDE2LjQzMDUgMjkuNTE5MyAxNi4xOTk2IDI4LjQ3NiAxNi4yNzU3SDIyLjIyODFaTTAgMTYuMjc1N1YyNi4zOTc3SDIuNTUxMDJWMjMuMTYwN0w2LjAyMzg2IDIzLjE2MDdDNy4wMjg4OCAyMy4yMjEgOC4wMTg5OSAyMi44OTY0IDguNzkxMjYgMjIuMjUzNUM5LjQ3NTc1IDIxLjU5NSA5LjgzODQyIDIwLjY3MjcgOS43ODQ3OCAxOS43MjY4QzkuODM4MDcgMTguNzc4MyA5LjQ3NTY2IDE3Ljg1MzQgOC43OTEyNiAxNy4xOTEyQzguMDIxMTggMTYuNTQzNiA3LjAzMDI0IDE2LjIxNTggNi4wMjM4NiAxNi4yNzU3SDBaTTQuODg4ODcgMjEuMTgyNUgyLjU1MTAyVjE4LjM1SDUuMDUyNzVDNS42Mzk1IDE4LjI5NjIgNi4yMjk3NyAxOC40MDUxIDYuNzU4MTIgMTguNjY0N0M3LjA4MzM4IDE4LjkzNDEgNy4yNTE1OSAxOS4zNDc2IDcuMjA2MjMgMTkuNzY2M0M3LjI0NTY0IDIwLjE5NjIgNy4wNDgyNSAyMC42MTM3IDYuNjkwMjcgMjAuODU3NkM2LjEyODE4IDIxLjExOTMgNS41MDc0NyAyMS4yMzEyIDQuODg4ODcgMjEuMTgyNVpNMTQuMjExNSAyMi4yMDk1SDE2LjkwMDFMMTUuNTM0IDE5LjA4MTRMMTQuMjExNSAyMi4yMDk1Wk0xNC40OTU3IDE2LjI3NTdMOS42NzI3NSAyNi4zOTc3TDEyLjQyNTQgMjYuMzk3N0wxMy4zNDAyIDI0LjI1NThIMTcuODE3NUwxOC43NDU3IDI2LjM5NzdIMjEuNTc4NEwxNi45NDM2IDE2LjI3NTdIMTQuNDk1N1pNMjQuNzc0IDIwLjU5NDVIMjcuNjU0N0MyOC4yMDQ3IDIwLjYzNTcgMjguNzU2NCAyMC41NDA1IDI5LjI2MDIgMjAuMzE3NEMyOS41NzQ5IDIwLjEyMzUgMjkuNzU0IDE5Ljc3MDggMjkuNzI0MyAxOS40MDM4QzI5Ljc1NzggMTkuMDU3NCAyOS41ODk1IDE4LjcyMjMgMjkuMjkxIDE4LjU0MTJDMjguNzM0MSAxOC4zMzE2IDI4LjEzNzUgMTguMjQ3NCAyNy41NDQgMTguMjk0NkgyNC43NzY2TDI0Ljc3NCAyMC41OTQ1Wk0zOS4wNzk2IDE4LjMyMlYyNi4zOTc3SDM2LjU0OVYxOC4zMjJIMzMuMDY5OFYxNi4yNzU3SDQyLjU1OTVWMTguMzIySDM5LjA3OTZaTTQzLjY1OTMgMTYuMjc1N1YyNi4zOTc3SDQ2LjIxMDNWMTYuMjc1N0g0My42NTkzWk02MS42MzU1IDE2LjI3NTdWMjYuNDAwM0w2OS40MTk4IDI2LjM5NzdWMjQuMjY5Mkg2NC4xODY1VjE2LjI3NTdINjEuNjM1NVpNNzAuOTc0MSAyNi40MDAzVjE2LjI3NTdIODAuMDAwM1YxOC4zMjJINzMuNTI1MVYyMC4wMzMySDc5LjI5NDhWMjIuMDkyOUg3My41MjUxVjI0LjI2OTJIODAuMDAyOFYyNi4zOTc3TDcwLjk3NDEgMjYuNDAwM1pNODYuODA0NSAxNi4yNzU3VjI2LjQwMDNMODkuMjM4MyAyNi4zOTc3VjE5LjE5MUw5NC4zNjg2IDI2LjM5NzdIOTcuNDYzMVYxNi4yNzU3SDk1LjAxNTFWMjMuNDExMUw4OS45MzM2IDE2LjI3NTdIODYuODA0NVpNOTkuNzQ2NSAyNi40MDAzVjE2LjI3NTdIMTA4Ljc3M1YxOC4zMjJIMTAyLjI5N1YyMC4wMzMySDEwOC4wNjdWMjIuMDkyOUgxMDIuMjk3VjI0LjI2OTJIMTA4Ljc3N1YyNi4zOTc3TDk5Ljc0NjUgMjYuNDAwM1pNMTE1LjIzMiAyNi4zOTc3VjE4LjMyMkgxMTguNzExVjE3LjE5OEwxMjEuNjU1IDI2LjM5NzdIMTI0LjE2N0wxMjYuNzE4IDE5LjAyNzJMMTI5LjE1IDI2LjM5NzdIMTMxLjc0M0wxMzUuMDM3IDE2LjI3NTdIMTMyLjM4OUwxMzAuMzA2IDIzLjA5MjVMMTI3Ljk5NSAxNi4yNzU3SDEyNS40ODVMMTIzLjA5MiAyMy4wOTI1TDEyMS4wNjQgMTYuMjc1N0gxMTguNzExVjE3LjE5OEwxMTguNDE2IDE2LjI3NTdIMTA5LjIyMVYxOC4zMjJIMTEyLjcwMVYyNi4zOTc3SDExNS4yMzJaTTE0My45MDMgMjMuNzExOEMxNDMuMjUzIDI0LjMxMzQgMTQyLjM4NSAyNC42MjYgMTQxLjQ5OSAyNC41Nzc2TDE0MS41MDEgMjQuNTc2OUMxNDAuNjExIDI0LjYyNjYgMTM5LjczOSAyNC4zMTQxIDEzOS4wODUgMjMuNzExMUMxMzguNDc2IDIzLjA3NTQgMTM4LjE1NyAyMi4yMTczIDEzOC4yMDUgMjEuMzM5OUMxMzguMTU3IDIwLjQ1ODcgMTM4LjQ3NiAxOS41OTY5IDEzOS4wODkgMTguOTU4NEMxNDAuNDgyIDE3LjgwMDggMTQyLjUwOCAxNy43OTk1IDE0My45MDIgMTguOTU1M0MxNDQuNTEyIDE5LjU5NjQgMTQ0LjgyOSAyMC40NTkyIDE0NC43OCAyMS4zNDA1QzE0NC44MjggMjIuMjE3NCAxNDQuNTEgMjMuMDc1MiAxNDMuOTAzIDIzLjcxMThaTTEzNS40MDEgMjEuMzM5OUMxMzUuMzM5IDE5Ljg2NDEgMTM1Ljk0OCAxOC40Mzg5IDEzNy4wNTkgMTcuNDU5NEMxMzkuNjk5IDE1LjUyNTkgMTQzLjI5NiAxNS41MjU5IDE0NS45MzYgMTcuNDU5NEMxNDcuMDQzIDE4LjQ0MTEgMTQ3LjY0OSAxOS44NjU1IDE0Ny41ODcgMjEuMzM5OUMxNDcuNjQ5IDIyLjgxMzIgMTQ3LjA0NCAyNC4yMzY2IDE0NS45MzYgMjUuMjE2NkMxNDMuMjk1IDI3LjE0NjUgMTM5LjcgMjcuMTQ2NSAxMzcuMDU5IDI1LjIxNjZDMTM1Ljk0OCAyNC4yMzg3IDEzNS4zMzkgMjIuODE0NiAxMzUuNDAxIDIxLjMzOTlaTTE1NC43NjUgMjAuNTkzOUgxNTEuODg1TDE1MS44ODMgMTguMjk0TDE1NC42NTUgMTguMjk0QzE1NS4yNDggMTguMjQ2OCAxNTUuODQ1IDE4LjMzMSAxNTYuNDAyIDE4LjU0MDVDMTU2LjcgMTguNzIxNyAxNTYuODY4IDE5LjA1NjcgMTU2LjgzNSAxOS40MDMxQzE1Ni44NjUgMTkuNzcwMiAxNTYuNjg1IDIwLjEyMjkgMTU2LjM3MSAyMC4zMTY3QzE1NS44NjcgMjAuNTM5OSAxNTUuMzE1IDIwLjYzNTEgMTU0Ljc2NSAyMC41OTM5Wk0xNDkuMzM0IDI2LjM5NzFWMTYuMjc1N0gxNTUuNTg1QzE1Ni42MjcgMTYuMiAxNTcuNjY5IDE2LjQzMDkgMTU4LjU4MSAxNi45Mzk1QzE1OS4yMzggMTcuNDE0MiAxNTkuNjAxIDE4LjE5MzUgMTU5LjU0MiAxOC45OTkyQzE1OS41NTIgMTkuNTU2NiAxNTkuMzk2IDIwLjEwNDYgMTU5LjA5MyAyMC41NzM1QzE1OC43OTcgMjEuMDI2NSAxNTguMzYyIDIxLjM3MjIgMTU3Ljg1MiAyMS41NTlDMTU4LjIzIDIxLjY5MTggMTU4LjU1OSAyMS45MzM2IDE1OC43OTggMjIuMjUzNUMxNTkuMDIyIDIyLjcwNzIgMTU5LjEzMiAyMy4yMDg3IDE1OS4xMTggMjMuNzE0M0MxNTkuMTIyIDIzLjc4MjcgMTU5LjEyNyAyMy44NzYxIDE1OS4xMzEgMjMuOTk0NkMxNTkuMTg2IDI1LjI0OTMgMTU5LjM2NSAyNi4wNTAxIDE1OS42NjggMjYuMzk3MUgxNTYuODA3QzE1Ni43MzcgMjYuMjg0OSAxNTYuNjg1IDI2LjE2MjYgMTU2LjY1MiAyNi4wMzQ2QzE1Ni42MTcgMjUuODk1OSAxNTYuNTk5IDI1Ljc1MzMgMTU2LjYgMjUuNjEwM1YyNC45MjYxQzE1Ni42NyAyNC4yOTQ2IDE1Ni41NDQgMjMuNjU3MSAxNTYuMjM5IDIzLjA5ODlDMTU1Ljg1MiAyMi43NTk0IDE1NS4zMzcgMjIuNjAyMyAxNTQuODI2IDIyLjY2NzZMMTUxLjg4MSAyMi42Njc2VjI2LjM5NzFMMTQ5LjMzNCAyNi4zOTcxWk0xNjEuMzg4IDE2LjI3NTdWMjYuMzk3MUwxNjMuOTM5IDI2LjM5NzdWMjIuODkzN0wxNjUuMjMyIDIxLjc1NzhMMTY4LjkyNiAyNi4zOTc3SDE3Mi4wNDhMMTY3LjAyIDIwLjIwNEwxNzEuNDk3IDE2LjI3NTdIMTY4LjIxN0wxNjMuOTM5IDIwLjE2MTlWMTYuMjc1N0gxNjEuMzg4WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzBfNjc2NikiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xODMuODc2IDEuMDgxNzRDMTgzLjAyOCAyLjI1Njg5IDE4My4yODUgMy44OTEyMiAxODQuNDUyIDQuNzUzMjlIMTg0LjQ0NUMxODUuMDA0IDUuMTY0MTQgMTg1LjcwNiA1LjMzMzk4IDE4Ni4zOTIgNS4yMjQ1OEMxODcuMDc4IDUuMTE1MTggMTg3LjY5MSA0LjczNTczIDE4OC4wOTQgNC4xNzE2MkMxODguOTQxIDIuOTk2NDggMTg4LjY4NCAxLjM2MjE1IDE4Ny41MTcgMC41MDAwOEMxODYuOTU5IDAuMDkxNjQ2MyAxODYuMjU5IC0wLjA3Njc1NjQgMTg1LjU3NCAwLjAzMjU3MDJDMTg0Ljg5IDAuMTQxODk3IDE4NC4yNzggMC41MTk4MjIgMTgzLjg3NiAxLjA4MTc0Wk0xODkuNDgxIDQuMjU5NTRDMTg4LjYzNCAzLjA4NDMxIDE4OC44OTEgMS40NTAyNiAxOTAuMDU4IDAuNTg3OTk4QzE5MC42MTcgMC4xNzc0ODkgMTkxLjMxOCAwLjAwNzg2Mzc1IDE5Mi4wMDUgMC4xMTcyNDdDMTkyLjY5MSAwLjIyNjYzIDE5My4zMDQgMC42MDU4NDUgMTkzLjcwNiAxLjE2OTY2QzE5NC41NTMgMi4zNDQ4OSAxOTQuMjk3IDMuOTc4OTUgMTkzLjEzIDQuODQxMjFDMTkyLjU3MSA1LjI1MTg5IDE5MS44NyA1LjQyMTYyIDE5MS4xODMgNS4zMTIyM0MxOTAuNDk3IDUuMjAyODQgMTg5Ljg4NCA0LjgyMzUgMTg5LjQ4MSA0LjI1OTU0Wk0xNzguMTQzIDMuNDc1OTJDMTc3LjY5NCA0Ljg1MDc1IDE3OC40NDIgNi4zMjg3NCAxNzkuODE5IDYuNzg4NzlMMTc5LjgxNyA2Ljc4ODc3QzE4MC4wNzggNi44NzQ0NSAxODAuMzUxIDYuOTE4MTIgMTgwLjYyNiA2LjkxODEyQzE4MS43NjIgNi45MTM2OCAxODIuNzY1IDYuMTc5MjcgMTgzLjEwNyA1LjEwMTE0QzE4My41NTcgMy43MjY0NyAxODIuODA5IDIuMjQ4MzEgMTgxLjQzMiAxLjc4ODI3QzE4MC43NzEgMS41NzQzMyAxODAuMDUyIDEuNjMyMzEgMTc5LjQzNCAxLjk0OTNDMTc4LjgxNiAyLjI2NjI5IDE3OC4zNTEgMi44MTU5NyAxNzguMTQzIDMuNDc1OTJaTTE5NC40MTQgNS4zNTUzNEMxOTMuOTY2IDMuOTgwNTEgMTk0LjcxMyAyLjUwMjUyIDE5Ni4wOSAyLjA0MjQ3QzE5Ni43NTEgMS44Mjg3MyAxOTcuNDcxIDEuODg2ODEgMTk4LjA4OCAyLjIwMzc4QzE5OC43MDYgMi41MjA3NSAxOTkuMTcxIDMuMDcwMzIgMTk5LjM3OSAzLjczMDEyQzE5OS44MjggNS4xMDQ5NSAxOTkuMDggNi41ODI5NCAxOTcuNzAzIDcuMDQyOTlDMTk3LjQ0MyA3LjEyNzg1IDE5Ny4xNyA3LjE3MDg3IDE5Ni44OTYgNy4xNzA0QzE5NS43NjEgNy4xNjYwMyAxOTQuNzU4IDYuNDMyNTkgMTk0LjQxNCA1LjM1NTM0Wk0xNzYuMDM1IDQuOTEwMDFDMTc0LjU4NSA0LjkxODQzIDE3My40MTYgNi4wOTU1MyAxNzMuNDI2IDcuNTM4NjRDMTczLjQxNiA4Ljk4MTc1IDE3NC41ODUgMTAuMTU4OSAxNzYuMDM1IDEwLjE2NzNDMTc3LjQ5NCAxMC4xNjczIDE3OC42NzYgOC45OTA0IDE3OC42NzYgNy41Mzg2NEMxNzguNjc2IDYuMDg2ODkgMTc3LjQ5NCA0LjkxMDAxIDE3Ni4wMzUgNC45MTAwMVpNMTk4Ljc0MSA3LjkzM0MxOTguNzI4IDYuODY3MDIgMTk5LjM2NCA1Ljg5ODc5IDIwMC4zNDkgNS40ODE4N0MyMDEuMzM1IDUuMDY0OTUgMjAyLjQ3NyA1LjI4MTkyIDIwMy4yMzkgNi4wMzExM0MyMDQuMDAxIDYuNzgwMzQgMjA0LjIzMyA3LjkxMzQyIDIwMy44MjYgOC44OTk1OUMyMDMuNDE5IDkuODg1NzUgMjAyLjQ1NCAxMC41Mjk3IDIwMS4zODMgMTAuNTI5OEMxOTkuOTMzIDEwLjUzODYgMTk4Ljc1IDkuMzc1ODYgMTk4Ljc0MiA3LjkzM0gxOTguNzQxWk0xODkuMzQxIDcuNzcyNDVDMTg4LjY0MiA4LjI5MDUgMTg4LjQ4OCA5LjI2OTc5IDE4OC45OTQgOS45NzU1MUMxODkuMjM2IDEwLjMxMzUgMTg5LjYwMyAxMC41NDA4IDE5MC4wMTQgMTAuNjA2NUMxOTAuNDI2IDEwLjY3MjEgMTkwLjg0NiAxMC41NzA2IDE5MS4xODIgMTAuMzI0NkMxOTEuODgxIDkuODA2NTkgMTkyLjAzNSA4LjgyNzMgMTkxLjUyOCA4LjEyMTU4QzE5MS4yODcgNy43ODM4OSAxOTAuOTE5IDcuNTU2NzYgMTkwLjUwOCA3LjQ5MTEzQzE5MC4wOTcgNy40MjU0OSAxODkuNjc2IDcuNTI2ODQgMTg5LjM0MSA3Ljc3MjQ1Wk0xODUuODEgMTAuMzM1NUMxODUuMTExIDkuODE3NDIgMTg0Ljk1NyA4LjgzODEzIDE4NS40NjMgOC4xMzI0MUMxODUuNzA1IDcuNzk0NzIgMTg2LjA3MiA3LjU2NzU5IDE4Ni40ODMgNy41MDE5NkMxODYuODk1IDcuNDM2MzIgMTg3LjMxNSA3LjUzNzY3IDE4Ny42NTEgNy43ODMyOEMxODguMzQ5IDguMzAxMzMgMTg4LjUwMyA5LjI4MDYyIDE4Ny45OTcgOS45ODYzNEMxODcuNzU2IDEwLjMyNDMgMTg3LjM4OCAxMC41NTE3IDE4Ni45NzcgMTAuNjE3M0MxODYuNTY1IDEwLjY4MyAxODYuMTQ1IDEwLjU4MTQgMTg1LjgxIDEwLjMzNTVaTTE5My4xNCA4LjYzNzYyQzE5Mi4zMTQgOC45MTM1NSAxOTEuODY1IDkuNzk5OTYgMTkyLjEzNCAxMC42MjQ3QzE5Mi4zNCAxMS4yNzE1IDE5Mi45NDIgMTEuNzEyIDE5My42MjMgMTEuNzE0OEMxOTMuNzg4IDExLjcxNDcgMTkzLjk1MSAxMS42ODg0IDE5NC4xMDggMTEuNjM3QzE5NC45MzQgMTEuMzYxMSAxOTUuMzgyIDEwLjQ3NDcgMTk1LjExNCA5LjY0OTk2QzE5NC45ODkgOS4yNTM5OCAxOTQuNzEgOC45MjQxOSAxOTQuMzM5IDguNzM0MDRDMTkzLjk2OCA4LjU0Mzg5IDE5My41MzcgOC41MDkxNyAxOTMuMTQgOC42Mzc2MlpNMTgyLjg5MSAxMS42Njk1QzE4Mi4wNjUgMTEuMzkzMyAxODEuNjE3IDEwLjUwNjYgMTgxLjg4NiA5LjY4MTgxQzE4Mi4wMTEgOS4yODU4MyAxODIuMjkgOC45NTYwNCAxODIuNjYxIDguNzY1ODlDMTgzLjAzMSA4LjU3NTc0IDE4My40NjMgOC41NDEwMiAxODMuODYgOC42Njk0OEMxODQuNjg2IDguOTQ1MTIgMTg1LjEzNSA5LjgzMTc5IDE4NC44NjUgMTAuNjU2NkMxODQuNjYgMTEuMzAzMyAxODQuMDU4IDExLjc0MzkgMTgzLjM3NiAxMS43NDY2QzE4My4yMTEgMTEuNzQ2OCAxODMuMDQ4IDExLjcyMDggMTgyLjg5MSAxMS42Njk1Wk0yMDIuMTIyIDExLjc0MDlDMjAxLjY3MyAxMy4xMTU3IDIwMi40MjEgMTQuNTkzNyAyMDMuNzk4IDE1LjA1MzdMMjAzLjgwMSAxNS4wNTM3QzIwNC4wNiAxNS4xMzg5IDIwNC4zMzIgMTUuMTgyNSAyMDQuNjA0IDE1LjE4MzFDMjA1Ljc0MSAxNS4xNzg2IDIwNi43NDQgMTQuNDQ0MiAyMDcuMDg2IDEzLjM2NjFDMjA3LjUzNiAxMS45OTE0IDIwNi43ODggMTAuNTEzMyAyMDUuNDExIDEwLjA1MzJDMjA0Ljc1IDkuODM5NDcgMjA0LjAzMSA5Ljg5NzUzIDIwMy40MTMgMTAuMjE0NUMyMDIuNzk1IDEwLjUzMTUgMjAyLjMzIDExLjA4MSAyMDIuMTIyIDExLjc0MDlaTTE5Ny4wODIgMTQuNjAzM0MxOTYuODEzIDE1LjQyODEgMTk3LjI2MiAxNi4zMTQ1IDE5OC4wODggMTYuNTkwNEwxOTguMDg4IDE2LjU5MDVDMTk4LjI0NCAxNi42NDE1IDE5OC40MDcgMTYuNjY3NSAxOTguNTcxIDE2LjY2NzVDMTk5LjI1MyAxNi42NjQ4IDE5OS44NTQgMTYuMjI0MiAyMDAuMDYgMTUuNTc3NEMyMDAuMzI5IDE0Ljc1MjcgMTk5Ljg4MSAxMy44NjYgMTk5LjA1NCAxMy41OTA0QzE5OC42NTggMTMuNDYyMyAxOTguMjI2IDEzLjQ5NzMgMTk3Ljg1NiAxMy42ODc2QzE5Ny40ODYgMTMuODc3OCAxOTcuMjA3IDE0LjIwNzUgMTk3LjA4MiAxNC42MDMzWk0xODIuNjE0IDE1Ljg0NzZDMTgyLjYyMiAxNS4zOTIgMTgyLjk5OCAxNS4wMjc5IDE4My40NTYgMTUuMDMyOEMxODMuOTEzIDE1LjAzNzcgMTg0LjI4MSAxNS40MDk3IDE4NC4yNzkgMTUuODY1M0MxODQuMjc2IDE2LjMyMSAxODMuOTA1IDE2LjY4OTEgMTgzLjQ0NyAxNi42ODkyQzE4My4yMjQgMTYuNjg3MyAxODMuMDExIDE2LjU5NzMgMTgyLjg1NSAxNi40Mzg5QzE4Mi42OTkgMTYuMjgwNSAxODIuNjEyIDE2LjA2NjkgMTgyLjYxNCAxNS44NDVWMTUuODQ3NlpNMjA0LjcyNCAyMC4wNzg1QzIwMy41NTcgMTkuMjE2NCAyMDMuMyAxNy41ODIxIDIwNC4xNDcgMTYuNDA2OUMyMDQuNTUgMTUuODQzMSAyMDUuMTYzIDE1LjQ2MzkgMjA1Ljg0OSAxNS4zNTQ1QzIwNi41MzUgMTUuMjQ1MSAyMDcuMjM3IDE1LjQxNDggMjA3Ljc5NiAxNS44MjUzQzIwOC45NjMgMTYuNjg3MyAyMDkuMjIgMTguMzIxNyAyMDguMzcyIDE5LjQ5NjhDMjA3Ljk3IDIwLjA2MDkgMjA3LjM1NyAyMC40NDA0IDIwNi42NzEgMjAuNTQ5OEMyMDUuOTg0IDIwLjY1OTIgMjA1LjI4MyAyMC40ODkzIDIwNC43MjQgMjAuMDc4NVpNMTkzLjQ2NSAyMC40NTA1QzE5My4wOTEgMjAuNzI2MSAxOTMuMDA5IDIxLjI0OTIgMTkzLjI4IDIxLjYyNTNDMTkzLjQwOSAyMS44MDU1IDE5My42MDUgMjEuOTI2NiAxOTMuODI0IDIxLjk2MTZDMTk0LjA0MyAyMS45OTY2IDE5NC4yNjggMjEuOTQyNCAxOTQuNDQ2IDIxLjgxMTRDMTk0LjgyIDIxLjUzNTYgMTk0LjkwMiAyMS4wMTI4IDE5NC42MzIgMjAuNjM2NkMxOTQuNTAzIDIwLjQ1NjQgMTk0LjMwNyAyMC4zMzUzIDE5NC4wODcgMjAuMzAwM0MxOTMuODY4IDIwLjI2NTMgMTkzLjY0NCAyMC4zMTk0IDE5My40NjUgMjAuNDUwNVpNMTk4LjQxNyAyMi45NTM3QzE5Ny45MSAyMi4yNDc5IDE5OC4wNjQgMjEuMjY4NiAxOTguNzYzIDIwLjc1MDZDMTk5LjA5OCAyMC41MDQ4IDE5OS41MTkgMjAuNDAzNCAxOTkuOTMgMjAuNDY5QzIwMC4zNDIgMjAuNTM0NiAyMDAuNzA5IDIwLjc2MTkgMjAwLjk1IDIxLjA5OTdDMjAxLjQ1NyAyMS44MDU0IDIwMS4zMDMgMjIuNzg0NyAyMDAuNjA0IDIzLjMwMjhDMjAwLjI2OSAyMy41NDg2IDE5OS44NDggMjMuNjUgMTk5LjQzNyAyMy41ODQ0QzE5OS4wMjYgMjMuNTE4NyAxOTguNjU4IDIzLjI5MTUgMTk4LjQxNyAyMi45NTM3Wk0yMDQuMDYyIDI1LjE0NDZDMjAzLjIxNCAyMy45Njk1IDIwMy40NzEgMjIuMzM1MSAyMDQuNjM4IDIxLjQ3MzFDMjA1LjE5NyAyMS4wNjM2IDIwNS44OTggMjAuODk0NiAyMDYuNTgzIDIxLjAwMzlDMjA3LjI2OCAyMS4xMTMzIDIwNy44ODEgMjEuNDkxOCAyMDguMjgzIDIyLjA1NDdDMjA5LjEzIDIzLjIzIDIwOC44NzQgMjQuODY0IDIwNy43MDcgMjUuNzI2M0MyMDcuMTQ4IDI2LjEzNzEgMjA2LjQ0NyAyNi4zMDcgMjA1Ljc2IDI2LjE5NzZDMjA1LjA3NCAyNi4wODgyIDIwNC40NjEgMjUuNzA4NyAyMDQuMDU4IDI1LjE0NDZMMjA0LjA2MiAyNS4xNDQ2Wk0xOTguMTIgMjMuOTEyNUMxOTcuMjk0IDI0LjE4ODQgMTk2Ljg0NSAyNS4wNzQ4IDE5Ny4xMTQgMjUuODk5NkMxOTcuMzIgMjYuNTQ2NSAxOTcuOTIyIDI2Ljk4NzIgMTk4LjYwNCAyNi45ODk2QzE5OC43NjggMjYuOTg5NSAxOTguOTMxIDI2Ljk2MzIgMTk5LjA4OCAyNi45MTE5QzE5OS45MTMgMjYuNjM1NyAyMDAuMzYyIDI1Ljc0OTQgMjAwLjA5MyAyNC45MjQ4QzE5OS45NjggMjQuNTI5IDE5OS42ODkgMjQuMTk5MyAxOTkuMzE4IDI0LjAwOTJDMTk4Ljk0OCAyMy44MTkgMTk4LjUxNiAyMy43ODQyIDE5OC4xMiAyMy45MTI1Wk0xODguMzczIDI3LjAyMjFDMTg3Ljk5OSAyNi43NDY0IDE4Ny45MTcgMjYuMjIzNSAxODguMTg4IDI1Ljg0NzNDMTg4LjMxNiAyNS42NjcyIDE4OC41MTIgMjUuNTQ2IDE4OC43MzIgMjUuNTExQzE4OC45NTEgMjUuNDc2MSAxODkuMTc1IDI1LjUzMDIgMTg5LjM1NCAyNS42NjEzQzE4OS43MjggMjUuOTM3IDE4OS44MSAyNi40NTk5IDE4OS41MzkgMjYuODM2MUMxODkuNDEgMjcuMDE2MiAxODkuMjE0IDI3LjEzNzQgMTg4Ljk5NSAyNy4xNzI0QzE4OC43NzYgMjcuMjA3MyAxODguNTUyIDI3LjE1MzIgMTg4LjM3MyAyNy4wMjIxWk0xODYuNDQzIDI1LjY3NjZDMTg2LjA2OSAyNS45NTE1IDE4NS45ODUgMjYuNDc0NSAxODYuMjU2IDI2Ljg1MTRMMTg2LjI1OCAyNi44NTE0QzE4Ni4zODYgMjcuMDMxNyAxODYuNTgyIDI3LjE1MyAxODYuODAyIDI3LjE4OEMxODcuMDIxIDI3LjIyMjkgMTg3LjI0NiAyNy4xNjg3IDE4Ny40MjUgMjcuMDM3NEMxODcuNzk4IDI2Ljc2MTcgMTg3Ljg4IDI2LjIzODggMTg3LjYxIDI1Ljg2MjZDMTg3LjQ4MSAyNS42ODI1IDE4Ny4yODUgMjUuNTYxMyAxODcuMDY2IDI1LjUyNjNDMTg2Ljg0NiAyNS40OTE0IDE4Ni42MjIgMjUuNTQ1NSAxODYuNDQzIDI1LjY3NjZaTTIwMS44NzEgMjkuNzU1OUMyMDEuNDIyIDI4LjM4MTIgMjAyLjE2OSAyNi45MDMgMjAzLjU0NiAyNi40NDNDMjA0LjIwNyAyNi4yMjkxIDIwNC45MjcgMjYuMjg3IDIwNS41NDUgMjYuNjA0QzIwNi4xNjIgMjYuOTIxIDIwNi42MjcgMjcuNDcwNyAyMDYuODM1IDI4LjEzMDZDMjA3LjI4NCAyOS41MDU1IDIwNi41MzYgMzAuOTgzNSAyMDUuMTYgMzEuNDQzNUMyMDQuODk5IDMxLjUyODQgMjA0LjYyNiAzMS41NzE0IDIwNC4zNTIgMzEuNTcwOUMyMDMuMjE3IDMxLjU2NjMgMjAyLjIxNCAzMC44MzI5IDIwMS44NzEgMjkuNzU1OVpNMTkyLjE5NiAyOS45MDgxQzE5MS45MjcgMzAuNzMyOSAxOTIuMzc2IDMxLjYxOTMgMTkzLjIwMiAzMS44OTUyQzE5My4zNTggMzEuOTQ2NSAxOTMuNTIyIDMxLjk3MjggMTkzLjY4NiAzMS45NzI5QzE5NC4zNjggMzEuOTcwNCAxOTQuOTcgMzEuNTI5OCAxOTUuMTc1IDMwLjg4MjlDMTk1LjQ0NCAzMC4wNTgxIDE5NC45OTUgMjkuMTcxNyAxOTQuMTY5IDI4Ljg5NThDMTkzLjc3MyAyOC43Njc1IDE5My4zNDEgMjguODAyMyAxOTIuOTcxIDI4Ljk5MjVDMTkyLjYgMjkuMTgyNiAxOTIuMzIxIDI5LjUxMjMgMTkyLjE5NiAyOS45MDgxWk0xODEuOTQ4IDMwLjkxNDdDMTgxLjY3OSAzMC4wOSAxODIuMTI4IDI5LjIwMzYgMTgyLjk1NCAyOC45Mjc2QzE4My4zNSAyOC43OTk2IDE4My43ODIgMjguODM0NyAxODQuMTUzIDI5LjAyNTFDMTg0LjUyMyAyOS4yMTU0IDE4NC44MDIgMjkuNTQ1MyAxODQuOTI3IDI5Ljk0MTJDMTg1LjE5NiAzMC43NjYgMTg0Ljc0NyAzMS42NTI0IDE4My45MjEgMzEuOTI4M0MxODMuNzY1IDMxLjk3OTcgMTgzLjYwMSAzMi4wMDYgMTgzLjQzNiAzMi4wMDYxQzE4Mi43NTUgMzIuMDAyOSAxODIuMTUzIDMxLjU2MTggMTgxLjk0OCAzMC45MTQ3Wk0xODkuMDY0IDMwLjU3ODNDMTg4LjU1OSAzMS4yODM2IDE4OC43MTMgMzIuMjYxIDE4OS40MSAzMi43Nzg4TDE4OS40MSAzMi43ODE0QzE4OS43NDYgMzMuMDI3MyAxOTAuMTY2IDMzLjEyODkgMTkwLjU3OCAzMy4wNjMzQzE5MC45ODkgMzIuOTk3NiAxOTEuMzU3IDMyLjc3MDMgMTkxLjU5OCAzMi40MzIzQzE5Mi4xMDQgMzEuNzI2NiAxOTEuOTUgMzAuNzQ3MyAxOTEuMjUxIDMwLjIyOTJDMTkwLjkxNiAyOS45ODM0IDE5MC40OTYgMjkuODgyIDE5MC4wODQgMjkuOTQ3NkMxODkuNjczIDMwLjAxMzMgMTg5LjMwNSAzMC4yNDA1IDE4OS4wNjQgMzAuNTc4M1pNMTg1LjUzMiAzMi40NDEyQzE4NS4wMjYgMzEuNzM1NSAxODUuMTggMzAuNzU2MiAxODUuODc5IDMwLjIzODFDMTg2LjIxNCAyOS45OTI0IDE4Ni42MzUgMjkuODkwOSAxODcuMDQ2IDI5Ljk1NjVDMTg3LjQ1NyAzMC4wMjIyIDE4Ny44MjUgMzAuMjQ5NCAxODguMDY2IDMwLjU4NzNDMTg4LjU3NSAzMS4yOTI1IDE4OC40MjEgMzIuMjczNCAxODcuNzIgMzIuNzkwM0MxODcuMzg0IDMzLjAzNjMgMTg2Ljk2NCAzMy4xMzc4IDE4Ni41NTIgMzMuMDcyMkMxODYuMTQxIDMzLjAwNjUgMTg1Ljc3NCAzMi43NzkyIDE4NS41MzIgMzIuNDQxMlpNMTc1LjY0MSAzMC40NjYyQzE3NC4xOTEgMzAuNDU3IDE3My4wMDggMzEuNjE5OSAxNzMgMzMuMDYzQzE3My4wMDggMzQuNTA2MSAxNzQuMTkxIDM1LjY2ODkgMTc1LjY0MSAzNS42NTk4QzE3Ny4wODIgMzUuNjU5OCAxNzguMjUxIDM0LjQ5NzEgMTc4LjI1MSAzMy4wNjNDMTc4LjI1MSAzMS42Mjg4IDE3Ny4wODIgMzAuNDY2MiAxNzUuNjQxIDMwLjQ2NjJaTTE5OC4zOCAzMy40NjE4QzE5OC4zOTggMzIuMDMxOSAxOTkuNTc0IDMwLjg4NTMgMjAxLjAxMSAzMC44OTdDMjAyLjQ0NyAzMC45MDg2IDIwMy42MDQgMzIuMDc0MiAyMDMuNTk5IDMzLjUwNDFDMjAzLjU5MyAzNC45MzQxIDIwMi40MjYgMzYuMDkwMyAyMDAuOTkgMzYuMDkwNEMxOTkuNTM5IDM2LjA4MiAxOTguMzcxIDM0LjkwNDkgMTk4LjM4IDMzLjQ2MThaTTE3OS4zMjEgMzMuOTU0OUMxNzcuOTQ0IDM0LjQxNDkgMTc3LjE5NiAzNS44OTMxIDE3Ny42NDYgMzcuMjY3OEMxNzcuOTg5IDM4LjM0NDkgMTc4Ljk5MSAzOS4wNzg0IDE4MC4xMjcgMzkuMDgyOEMxODAuNDAxIDM5LjA4MzMgMTgwLjY3NCAzOS4wNDAzIDE4MC45MzQgMzguOTU1NEMxODIuMzExIDM4LjQ5NTQgMTgzLjA1OSAzNy4wMTc0IDE4Mi42MSAzNS42NDI2QzE4Mi40MDIgMzQuOTgyNyAxODEuOTM3IDM0LjQzMzEgMTgxLjMxOSAzNC4xMTYyQzE4MC43MDEgMzMuNzk5MiAxNzkuOTgyIDMzLjc0MTIgMTc5LjMyMSAzMy45NTQ5Wk0xOTUuNTk3IDM5LjIwOTZDMTk0LjIyMSAzOC43NDk2IDE5My40NzMgMzcuMjcxNiAxOTMuOTIyIDM1Ljg5NjhDMTk0LjEzIDM1LjIzNzUgMTk0LjU5NCAzNC42ODg1IDE5NS4yMTIgMzQuMzcxN0MxOTUuODI5IDM0LjA1NDkgMTk2LjU0OCAzMy45OTY2IDE5Ny4yMDggMzQuMjA5N0MxOTguNTg1IDM0LjY2OTggMTk5LjMzMyAzNi4xNDc5IDE5OC44ODMgMzcuNTIyNkMxOTguNTQxIDM4LjYwMDcgMTk3LjUzOCAzOS4zMzUyIDE5Ni40MDIgMzkuMzM5NkMxOTYuMTI4IDM5LjMzODkgMTk1Ljg1NyAzOS4yOTUxIDE5NS41OTcgMzkuMjA5NlpNMTgzLjg5OSAzNi4xNTczQzE4Mi43MzIgMzcuMDE5NCAxODIuNDc1IDM4LjY1MzcgMTgzLjMyMyAzOS44Mjg5SDE4My4zMTlDMTgzLjcyMiA0MC4zOTMgMTg0LjMzNSA0MC43NzI0IDE4NS4wMjEgNDAuODgxOEMxODUuNzA3IDQwLjk5MTIgMTg2LjQwOSA0MC44MjE0IDE4Ni45NjggNDAuNDEwNUMxODguMTM1IDM5LjU0ODUgMTg4LjM5MiAzNy45MTQxIDE4Ny41NDQgMzYuNzM5QzE4Ny4xNDIgMzYuMTc2MSAxODYuNTI5IDM1Ljc5NzUgMTg1Ljg0NCAzNS42ODgyQzE4NS4xNTkgMzUuNTc4OCAxODQuNDU4IDM1Ljc0NzggMTgzLjg5OSAzNi4xNTczWk0xODguOTMyIDM2LjgyNjNDMTg4LjA4NCAzOC4wMDE0IDE4OC4zNDEgMzkuNjM1NyAxODkuNTA4IDQwLjQ5NzhDMTkwLjA2NyA0MC45MDc2IDE5MC43NjggNDEuMDc2OSAxOTEuNDUzIDQwLjk2NzVDMTkyLjEzOSA0MC44NTgxIDE5Mi43NTEgNDAuNDc5MyAxOTMuMTUzIDM5LjkxNjJDMTk0LjAwMSAzOC43NDEgMTkzLjc0NCAzNy4xMDY3IDE5Mi41NzcgMzYuMjQ0NkMxOTIuMDE4IDM1LjgzNTEgMTkxLjMxNyAzNS42NjYxIDE5MC42MzIgMzUuNzc1NUMxODkuOTQ3IDM1Ljg4NDggMTg5LjMzNCAzNi4yNjM0IDE4OC45MzIgMzYuODI2M1pNMTc5Ljk1MyAyNi44NzExQzE3OS4zNjEgMjcuMTIxOSAxNzguOTggMjcuNzAzOCAxNzguOTg4IDI4LjM0NDFDMTc4Ljk5NCAyOS4yMTAzIDE3OS43MDQgMjkuOTA4IDE4MC41NzQgMjkuOTAyNEMxODEuMjE4IDI5LjkwMjMgMTgxLjc5NyAyOS41MTU0IDE4Mi4wNDIgMjguOTIzQzE4Mi4yODYgMjguMzMwNiAxODIuMTQ3IDI3LjY1IDE4MS42ODkgMjcuMjAwMUMxODEuMjMxIDI2Ljc1MDMgMTgwLjU0NSAyNi42MjAzIDE3OS45NTMgMjYuODcxMVpNMTk0Ljk3IDI4LjI5NUMxOTQuOTgxIDI3LjQzNzEgMTk1LjY4NyAyNi43NDk3IDE5Ni41NDkgMjYuNzU3MUMxOTcuNDExIDI2Ljc2NDYgMTk4LjEwNSAyNy40NjQyIDE5OC4xMDEgMjguMzIyMUMxOTguMDk3IDI5LjE4MDEgMTk3LjM5NyAyOS44NzM2IDE5Ni41MzUgMjkuODczN0MxOTUuNjY1IDI5Ljg2ODEgMTk0Ljk2NCAyOS4xNjEzIDE5NC45NyAyOC4yOTVaTTE4NC4yOTUgMjYuMDMwMkMxODQuMTUxIDI1LjU5MDIgMTg0LjM5MSAyNS4xMTcyIDE4NC44MzEgMjQuOTdDMTg1LjA0MyAyNC45MDE0IDE4NS4yNzMgMjQuOTE5OCAxODUuNDcxIDI1LjAyMTRDMTg1LjY2OSAyNS4xMjI5IDE4NS44MTcgMjUuMjk4OSAxODUuODg0IDI1LjUxMDNDMTg2LjAyNyAyNS45NTAzIDE4NS43ODggMjYuNDIzMiAxODUuMzQ3IDI2LjU3MDRDMTg1LjI2NSAyNi41OTc2IDE4NS4xNzggMjYuNjExNSAxODUuMDkxIDI2LjYxMThDMTg0LjcyNyAyNi42MTEyIDE4NC40MDUgMjYuMzc1OSAxODQuMjk1IDI2LjAzMDJaTTE4OS45MDQgMjUuNDY1N0MxODkuNzYgMjUuOTA1NyAxOTAgMjYuMzc4NiAxOTAuNDQgMjYuNTI1OEwxOTAuNDM4IDI2LjUyNThDMTkwLjUyMiAyNi41NTM0IDE5MC42MSAyNi41NjczIDE5MC42OTggMjYuNTY3MkMxOTEuMDYyIDI2LjU2NTggMTkxLjM4MyAyNi4zMzA3IDE5MS40OTMgMjUuOTg1NkMxOTEuNjM2IDI1LjU0NTYgMTkxLjM5NyAyNS4wNzI2IDE5MC45NTYgMjQuOTI1NEMxOTAuNzQ1IDI0Ljg1NjggMTkwLjUxNCAyNC44NzUyIDE5MC4zMTcgMjQuOTc2OEMxOTAuMTE5IDI1LjA3ODMgMTg5Ljk3IDI1LjI1NDQgMTg5LjkwNCAyNS40NjU3Wk0xODMuMTg1IDIzLjg1MjRDMTgyLjg3IDIzLjk4NjkgMTgyLjY2NyAyNC4yOTc4IDE4Mi42NzMgMjQuNjM5NEMxODIuNjc3IDI1LjEwMDMgMTgzLjA1NSAyNS40NzA4IDE4My41MTggMjUuNDY3NkMxODMuODYyIDI1LjQ2NzYgMTg0LjE3MSAyNS4yNjEgMTg0LjMwMSAyNC45NDQ5QzE4NC40MzEgMjQuNjI4OCAxODQuMzU2IDI0LjI2NTggMTg0LjExMSAyNC4wMjYyQzE4My44NjcgMjMuNzg2NiAxODMuNTAxIDIzLjcxNzkgMTgzLjE4NSAyMy44NTI0Wk0xOTEuNDE1IDI0LjU3QzE5MS40MjMgMjQuMTE0NCAxOTEuNzk5IDIzLjc1MDMgMTkyLjI1NiAyMy43NTUyQzE5Mi43MTQgMjMuNzYgMTkzLjA4MiAyNC4xMzIxIDE5My4wOCAyNC41ODc3QzE5My4wNzcgMjUuMDQzNCAxOTIuNzA1IDI1LjQxMTUgMTkyLjI0OCAyNS40MTE1QzE5MS43ODQgMjUuNDA3IDE5MS40MTIgMjUuMDMwMiAxOTEuNDE2IDI0LjU2OTNMMTkxLjQxNSAyNC41N1pNMTkzLjExNCAyMi4xODY2QzE5Mi42NzQgMjIuMzMzOCAxOTIuNDM1IDIyLjgwNjkgMTkyLjU3OSAyMy4yNDY3TDE5Mi41NzkgMjMuMjQ2MUMxOTIuNjg5IDIzLjU5MTkgMTkzLjAxMSAyMy44Mjc0IDE5My4zNzUgMjMuODI4NEMxOTMuNDYyIDIzLjgyODEgMTkzLjU0OCAyMy44MTQxIDE5My42MzEgMjMuNzg3QzE5NC4wNzIgMjMuNjM5OCAxOTQuMzExIDIzLjE2NjcgMTk0LjE2NyAyMi43MjY4QzE5NC4xIDIyLjUxNTUgMTkzLjk1MiAyMi4zMzk0IDE5My43NTQgMjIuMjM3OUMxOTMuNTU2IDIyLjEzNjQgMTkzLjMyNiAyMi4xMTc5IDE5My4xMTQgMjIuMTg2NlpNMTk4LjQwNiAxNy41NDQ4QzE5Ny45IDE4LjI1MDUgMTk4LjA1NCAxOS4yMjk4IDE5OC43NTMgMTkuNzQ3OEMxOTkuMDg4IDE5Ljk5MzYgMTk5LjUwOSAyMC4wOTUxIDE5OS45MiAyMC4wMjk0QzIwMC4zMzEgMTkuOTYzOCAyMDAuNjk5IDE5LjczNjUgMjAwLjk0IDE5LjM5ODdDMjAxLjQ0NyAxOC42OTMgMjAxLjI5MyAxNy43MTM3IDIwMC41OTQgMTcuMTk1NkMyMDAuMjU4IDE2Ljk0OTkgMTk5LjgzOCAxNi44NDg0IDE5OS40MjcgMTYuOTE0QzE5OS4wMTUgMTYuOTc5NyAxOTguNjQ4IDE3LjIwNjkgMTk4LjQwNiAxNy41NDQ4Wk0xOTMuNDQ5IDE5Ljg2NzZDMTkzLjA3NiAxOS41OTE5IDE5Mi45OTMgMTkuMDY5IDE5My4yNjQgMTguNjkyOEMxOTMuMzkzIDE4LjUxMjcgMTkzLjU4OSAxOC4zOTE1IDE5My44MDggMTguMzU2NUMxOTQuMDI3IDE4LjMyMTYgMTk0LjI1MiAxOC4zNzU3IDE5NC40MyAxOC41MDY4QzE5NC44MDQgMTguNzgyMyAxOTQuODg3IDE5LjMwNTQgMTk0LjYxNiAxOS42ODE2QzE5NC40ODcgMTkuODYxOSAxOTQuMjkxIDE5Ljk4MzIgMTk0LjA3MSAyMC4wMTgyQzE5My44NTIgMjAuMDUzMSAxOTMuNjI3IDE5Ljk5ODkgMTkzLjQ0OCAxOS44Njc2SDE5My40NDlaTTE5Mi41MzQgMTcuMDgxQzE5Mi4zOTEgMTcuNTIwOSAxOTIuNjMgMTcuOTkzOSAxOTMuMDcxIDE4LjE0MTFWMTguMTM5MkMxOTMuMTU1IDE4LjE2NjggMTkzLjI0MyAxOC4xODA4IDE5My4zMzEgMTguMTgwNkMxOTMuNjk1IDE4LjE3ODkgMTk0LjAxNiAxNy45NDM4IDE5NC4xMjUgMTcuNTk4OUMxOTQuMjY3IDE3LjE1OSAxOTQuMDI3IDE2LjY4NzEgMTkzLjU4NyAxNi41NDA3QzE5My4zNzUgMTYuNDcyIDE5My4xNDUgMTYuNDkwNSAxOTIuOTQ3IDE2LjU5MkMxOTIuNzQ5IDE2LjY5MzUgMTkyLjYwMSAxNi44Njk2IDE5Mi41MzQgMTcuMDgxWk0xOTEuMzM0IDE1Ljc3M0MxOTEuMzI5IDE1LjQzMTUgMTkxLjUzMSAxNS4xMjA1IDE5MS44NDcgMTQuOTg2QzE5Mi4xNjIgMTQuODUxNSAxOTIuNTI4IDE0LjkyMDIgMTkyLjc3MyAxNS4xNTk4QzE5My4wMTcgMTUuMzk5NCAxOTMuMDkyIDE1Ljc2MjQgMTkyLjk2MiAxNi4wNzg1QzE5Mi44MzIgMTYuMzk0NyAxOTIuNTIzIDE2LjYwMTIgMTkyLjE4IDE2LjYwMTJDMTkxLjcxNyAxNi42MDQ0IDE5MS4zMzggMTYuMjMzOSAxOTEuMzM0IDE1Ljc3M1pNMTg0LjIwNSAxNC40Mjc1QzE4NC4wNjEgMTQuODY3MyAxODQuMyAxNS4zNDAxIDE4NC43NCAxNS40ODc2TDE4NC43NDQgMTUuNDg3NkMxODQuODI2IDE1LjUxNDYgMTg0LjkxMiAxNS41Mjg2IDE4NC45OTggMTUuNTI5QzE4NS4zNjIgMTUuNTI3NiAxODUuNjgzIDE1LjI5MjUgMTg1Ljc5MyAxNC45NDc0QzE4NS45MzcgMTQuNTA3NSAxODUuNjk4IDE0LjAzNDQgMTg1LjI1NyAxMy44ODcyQzE4NS4wNDYgMTMuODE4NiAxODQuODE1IDEzLjgzNyAxODQuNjE3IDEzLjkzODVDMTg0LjQyIDE0LjA0MDEgMTg0LjI3MSAxNC4yMTYxIDE4NC4yMDUgMTQuNDI3NVpNMTg5LjgxMSAxNC45MDI4QzE4OS42NjcgMTQuNDYyOSAxODkuOTA2IDEzLjk4OTggMTkwLjM0NyAxMy44NDI2QzE5MC41NTggMTMuNzc0IDE5MC43ODkgMTMuNzkyNCAxOTAuOTg3IDEzLjg5MzlDMTkxLjE4NCAxMy45OTU1IDE5MS4zMzMgMTQuMTcxNSAxOTEuMzk5IDE0LjM4MjlDMTkxLjU0MyAxNC44MjI3IDE5MS4zMDQgMTUuMjk1OCAxOTAuODY0IDE1LjQ0M0MxOTAuNzgxIDE1LjQ3MDIgMTkwLjY5NCAxNS40ODQxIDE5MC42MDcgMTUuNDg0NEMxOTAuMjQ0IDE1LjQ4MjQgMTg5LjkyNCAxNS4yNDc0IDE4OS44MTQgMTQuOTAyOEgxODkuODExWk0xODYuMzQgMTQuNzUyNEMxODUuOTY3IDE0LjQ3NjcgMTg1Ljg4NCAxMy45NTM4IDE4Ni4xNTUgMTMuNTc3NkMxODYuMjg1IDEzLjM5ODMgMTg2LjQ4IDEzLjI3NzkgMTg2LjY5OSAxMy4yNDI5QzE4Ni45MTggMTMuMjA4IDE4Ny4xNDIgMTMuMjYxNSAxODcuMzIyIDEzLjM5MTZDMTg3LjY5NSAxMy42NjcxIDE4Ny43NzggMTQuMTkwMiAxODcuNTA3IDE0LjU2NjRDMTg3LjM3OCAxNC43NDY1IDE4Ny4xODIgMTQuODY3NyAxODYuOTYzIDE0LjkwMjZDMTg2Ljc0MyAxNC45Mzc2IDE4Ni41MTkgMTQuODgzNSAxODYuMzQgMTQuNzUyNFpNMTg4LjI3NiAxMy4zNzY5QzE4Ny45MDIgMTMuNjUxNSAxODcuODE4IDE0LjE3NDIgMTg4LjA4OCAxNC41NTExTDE4OC4wOTEgMTQuNTUxN0MxODguMjIgMTQuNzMxOSAxODguNDE2IDE0Ljg1MyAxODguNjM1IDE0Ljg4OEMxODguODU0IDE0LjkyMyAxODkuMDc5IDE0Ljg2ODggMTg5LjI1NyAxNC43Mzc4QzE4OS42MzEgMTQuNDYyIDE4OS43MTMgMTMuOTM5MiAxODkuNDQyIDEzLjU2M0MxODkuMzEzIDEzLjM4MzcgMTg5LjExNyAxMy4yNjMyIDE4OC44OTggMTMuMjI4M0MxODguNjc5IDEzLjE5MzQgMTg4LjQ1NSAxMy4yNDY5IDE4OC4yNzYgMTMuMzc2OVpNMTc4Ljk1OSAxMi4yNjc4QzE3OC45NyAxMS40MDk5IDE3OS42NzYgMTAuNzIyNCAxODAuNTM4IDEwLjcyOTlDMTgxLjQgMTAuNzM3MyAxODIuMDk0IDExLjQzNjkgMTgyLjA5IDEyLjI5NDlDMTgyLjA4NiAxMy4xNTI4IDE4MS4zODYgMTMuODQ2NCAxODAuNTI0IDEzLjg0NjVDMTc5LjY1NCAxMy44NDA4IDE3OC45NTMgMTMuMTM0IDE3OC45NTkgMTIuMjY3OFpNMTk1Ljg2NyAxMC43NDU2QzE5NS4yNzUgMTAuOTk2NCAxOTQuODk0IDExLjU3ODMgMTk0LjkwMiAxMi4yMTg3QzE5NC45MDggMTMuMDg0OSAxOTUuNjE4IDEzLjc4MjcgMTk2LjQ4OCAxMy43NzdDMTk3LjEzMSAxMy43NzcyIDE5Ny43MTEgMTMuMzkwNSAxOTcuOTU2IDEyLjc5ODFDMTk4LjIgMTIuMjA1NyAxOTguMDYxIDExLjUyNSAxOTcuNjAzIDExLjA3NUMxOTcuMTQ1IDEwLjYyNSAxOTYuNDU5IDEwLjQ5NDkgMTk1Ljg2NyAxMC43NDU2WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzBfNjc2NikiLz4KPC9nPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzBfNjc2NiIgeDE9IjE4Ny41NCIgeTE9IjE2IiB4Mj0iMTY4LjY5IiB5Mj0iLTM4LjcwNzQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzg2NERFQiIvPgo8c3RvcCBvZmZzZXQ9IjAuNjg5NjU1IiBzdG9wLWNvbG9yPSIjRTY0QkUwIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0YzNTBEQSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MV9saW5lYXJfMF82NzY2IiB4MT0iMjA5LjE3NCIgeTE9IjAuNjg5NjI4IiB4Mj0iMTczLjI5OSIgeTI9IjAuMTYxNjg1IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiM4NjRERUIiLz4KPHN0b3Agb2Zmc2V0PSIwLjY4OTY1NSIgc3RvcC1jb2xvcj0iI0U2NEJFMCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGMzUwREEiLz4KPC9saW5lYXJHcmFkaWVudD4KPGNsaXBQYXRoIGlkPSJjbGlwMF8wXzY3NjYiPgo8cmVjdCB3aWR0aD0iMjA4Ljg3MiIgaGVpZ2h0PSI0MSIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K";
@@ -8265,7 +8261,7 @@ var Divider = ({ children, style }) => {
8265
8261
  var divider_default = Divider;
8266
8262
 
8267
8263
  // src/components/emailLogin/index.tsx
8268
- var import_react23 = require("react");
8264
+ var import_react22 = require("react");
8269
8265
 
8270
8266
  // src/components/emailLogin/styles.ts
8271
8267
  var import_styled_components20 = require("styled-components");
@@ -8346,13 +8342,13 @@ var StyleInputError = import_styled_components20.styled.div`
8346
8342
  var import_jsx_runtime36 = require("react/jsx-runtime");
8347
8343
  var EmailLogin = () => {
8348
8344
  const { navigate } = useRouter();
8349
- const inputRef = (0, import_react23.useRef)(null);
8345
+ const inputRef = (0, import_react22.useRef)(null);
8350
8346
  const locales = useLocales();
8351
8347
  const { appearance } = useAppearance();
8352
- const [emailError, setEmailError] = (0, import_react23.useState)("");
8353
- const [emailValue, setEmailValue] = (0, import_react23.useState)("");
8354
- const [isFocus, setIsFocus] = (0, import_react23.useState)(false);
8355
- const [loading, setLoading] = (0, import_react23.useState)(false);
8348
+ const [emailError, setEmailError] = (0, import_react22.useState)("");
8349
+ const [emailValue, setEmailValue] = (0, import_react22.useState)("");
8350
+ const [isFocus, setIsFocus] = (0, import_react22.useState)(false);
8351
+ const [loading, setLoading] = (0, import_react22.useState)(false);
8356
8352
  const walletConnector = useWalletConnector("particleAuth");
8357
8353
  const sendCode = async () => {
8358
8354
  try {
@@ -8379,10 +8375,10 @@ var EmailLogin = () => {
8379
8375
  }
8380
8376
  setLoading(false);
8381
8377
  };
8382
- const buttonDisabled = (0, import_react23.useMemo)(() => {
8378
+ const buttonDisabled = (0, import_react22.useMemo)(() => {
8383
8379
  return !emailValue || !EmailRegExp.test(emailValue) || loading;
8384
8380
  }, [emailValue, loading]);
8385
- const hideContinueButton = (0, import_react23.useMemo)(() => {
8381
+ const hideContinueButton = (0, import_react22.useMemo)(() => {
8386
8382
  return appearance?.hideContinueButton;
8387
8383
  }, [appearance?.hideContinueButton]);
8388
8384
  return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(EmailLoginContainer, { children: [
@@ -8452,14 +8448,13 @@ var PasskeyButtons = () => {
8452
8448
  const { navigate } = useRouter();
8453
8449
  const locales = useLocales();
8454
8450
  const { appearance } = useAppearance();
8455
- const language = useLanguage();
8456
8451
  const connectWallet = useConnectWithWallet();
8457
8452
  const wallet = useWalletProps("passkeySmartWallet");
8458
8453
  const login = () => {
8459
8454
  navigate("login-passkey" /* LoginPasskey */);
8460
8455
  };
8461
8456
  if (appearance.collapsePasskeyButton) {
8462
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(button_default, { style: { marginTop: 16 }, onClick: login, children: appearance?.overrideLocales?.[language]?.btnContinueWithPasskey ?? locales.continueWithSmartWalletPasskey });
8457
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(button_default, { style: { marginTop: 16 }, onClick: login, children: locales.continueWithSmartWalletPasskey });
8463
8458
  }
8464
8459
  return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { children: [
8465
8460
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
@@ -8478,7 +8473,7 @@ var PasskeyButtons = () => {
8478
8473
  });
8479
8474
  }
8480
8475
  },
8481
- children: appearance?.overrideLocales?.[language]?.btnCreatePasskeyWallet ?? locales.createNewPasskey
8476
+ children: locales.createNewPasskey
8482
8477
  }
8483
8478
  ),
8484
8479
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
@@ -8495,7 +8490,7 @@ var PasskeyButtons = () => {
8495
8490
  }
8496
8491
  });
8497
8492
  },
8498
- children: appearance?.overrideLocales?.[language]?.btnLoginWithPasskey ?? locales.loginWithPasskey
8493
+ children: locales.loginWithPasskey
8499
8494
  }
8500
8495
  )
8501
8496
  ] });
@@ -8504,12 +8499,12 @@ var passkeyButtons_default = PasskeyButtons;
8504
8499
 
8505
8500
  // src/components/phoneLogin/index.tsx
8506
8501
  var import_unicode = __toESM(require("country-flag-icons/unicode"), 1);
8507
- var import_react26 = require("react");
8502
+ var import_react25 = require("react");
8508
8503
 
8509
8504
  // src/hooks/useClickAway.ts
8510
- var import_react24 = require("react");
8505
+ var import_react23 = require("react");
8511
8506
  var useClickAway = (callback, refs) => {
8512
- (0, import_react24.useEffect)(() => {
8507
+ (0, import_react23.useEffect)(() => {
8513
8508
  const handleClickOutside = (event) => {
8514
8509
  if (refs.every((ref) => ref.current && !ref.current.contains(event.target))) {
8515
8510
  callback();
@@ -9382,14 +9377,14 @@ var StyleHoverBg = import_styled_components22.styled.div`
9382
9377
  `;
9383
9378
 
9384
9379
  // src/components/dropdown/index.tsx
9385
- var import_react25 = require("react");
9380
+ var import_react24 = require("react");
9386
9381
  var import_react_dom = require("react-dom");
9387
9382
  var import_jsx_runtime38 = require("react/jsx-runtime");
9388
- var Dropdown = (0, import_react25.forwardRef)((props, ref) => {
9383
+ var Dropdown = (0, import_react24.forwardRef)((props, ref) => {
9389
9384
  const { trigger, content, dropdownWidth, dropdownHeight, offsetX = 0, offsetY = 0, onChange } = props;
9390
- const [isOpen, setIsOpen] = (0, import_react25.useState)(false);
9391
- const triggerRef = (0, import_react25.useRef)(null);
9392
- const dropdownRef = (0, import_react25.useRef)(null);
9385
+ const [isOpen, setIsOpen] = (0, import_react24.useState)(false);
9386
+ const triggerRef = (0, import_react24.useRef)(null);
9387
+ const dropdownRef = (0, import_react24.useRef)(null);
9393
9388
  const updateDropdownPosition = () => {
9394
9389
  if (triggerRef.current && dropdownRef.current) {
9395
9390
  const rect = triggerRef.current.getBoundingClientRect();
@@ -9402,7 +9397,7 @@ var Dropdown = (0, import_react25.forwardRef)((props, ref) => {
9402
9397
  dropdownRef.current.style.left = `${rect.left}px`;
9403
9398
  }
9404
9399
  };
9405
- (0, import_react25.useEffect)(() => {
9400
+ (0, import_react24.useEffect)(() => {
9406
9401
  if (isOpen) {
9407
9402
  updateDropdownPosition();
9408
9403
  window.addEventListener("scroll", updateDropdownPosition, true);
@@ -9424,7 +9419,7 @@ var Dropdown = (0, import_react25.forwardRef)((props, ref) => {
9424
9419
  toggleDropdown();
9425
9420
  }
9426
9421
  };
9427
- (0, import_react25.useImperativeHandle)(ref, () => ({
9422
+ (0, import_react24.useImperativeHandle)(ref, () => ({
9428
9423
  toggleDropdown
9429
9424
  }));
9430
9425
  return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
@@ -9648,23 +9643,23 @@ var PhoneInputItem = () => {
9648
9643
  const { appearance } = useAppearance();
9649
9644
  const { navigate } = useRouter();
9650
9645
  const locales = useLocales();
9651
- const [countryData, setCountryData] = (0, import_react26.useState)([]);
9652
- const [phoneValue, setPhoneValue] = (0, import_react26.useState)("");
9653
- const [visbSelectCountry, setVisbSelectCountry] = (0, import_react26.useState)(false);
9654
- const [searchValue, setSearchValue] = (0, import_react26.useState)("");
9655
- const [phoneError, setPhoneError] = (0, import_react26.useState)("");
9656
- const [loading, setLoading] = (0, import_react26.useState)(false);
9657
- const [listPosition, setListPosition] = (0, import_react26.useState)("bottom");
9658
- const [listMaxHeight, setListMaxHeight] = (0, import_react26.useState)(300);
9659
- const [hoverIndex, setHoverIndex] = (0, import_react26.useState)(-1);
9660
- const [inputFocus, setInputFocus] = (0, import_react26.useState)(false);
9661
- const clickRef = (0, import_react26.useRef)(null);
9662
- const searchInputRef = (0, import_react26.useRef)(null);
9663
- const countryListWrapRef = (0, import_react26.useRef)(null);
9664
- const footerRef = (0, import_react26.useRef)(null);
9665
- const phoneContainerRef = (0, import_react26.useRef)(null);
9666
- const timer = (0, import_react26.useRef)();
9667
- const dropdownRef = (0, import_react26.useRef)(null);
9646
+ const [countryData, setCountryData] = (0, import_react25.useState)([]);
9647
+ const [phoneValue, setPhoneValue] = (0, import_react25.useState)("");
9648
+ const [visbSelectCountry, setVisbSelectCountry] = (0, import_react25.useState)(false);
9649
+ const [searchValue, setSearchValue] = (0, import_react25.useState)("");
9650
+ const [phoneError, setPhoneError] = (0, import_react25.useState)("");
9651
+ const [loading, setLoading] = (0, import_react25.useState)(false);
9652
+ const [listPosition, setListPosition] = (0, import_react25.useState)("bottom");
9653
+ const [listMaxHeight, setListMaxHeight] = (0, import_react25.useState)(300);
9654
+ const [hoverIndex, setHoverIndex] = (0, import_react25.useState)(-1);
9655
+ const [inputFocus, setInputFocus] = (0, import_react25.useState)(false);
9656
+ const clickRef = (0, import_react25.useRef)(null);
9657
+ const searchInputRef = (0, import_react25.useRef)(null);
9658
+ const countryListWrapRef = (0, import_react25.useRef)(null);
9659
+ const footerRef = (0, import_react25.useRef)(null);
9660
+ const phoneContainerRef = (0, import_react25.useRef)(null);
9661
+ const timer = (0, import_react25.useRef)();
9662
+ const dropdownRef = (0, import_react25.useRef)(null);
9668
9663
  const walletConnector = useWalletConnector("particleAuth");
9669
9664
  const sendCode = async () => {
9670
9665
  try {
@@ -9703,7 +9698,7 @@ var PhoneInputItem = () => {
9703
9698
  }
9704
9699
  setLoading(false);
9705
9700
  };
9706
- const countriesList = (0, import_react26.useMemo)(() => {
9701
+ const countriesList = (0, import_react25.useMemo)(() => {
9707
9702
  let filterCountryCodes = countryCodes;
9708
9703
  if (appearance?.filterCountryCallingCode) {
9709
9704
  filterCountryCodes = appearance?.filterCountryCallingCode(countryCodes);
@@ -9714,15 +9709,15 @@ var PhoneInputItem = () => {
9714
9709
  return defaultCountriesData.find((item) => item[1]?.toLowerCase() === countryCode?.toLowerCase());
9715
9710
  }).filter((item) => !!item);
9716
9711
  }, []);
9717
- const searclCountriesList = (0, import_react26.useMemo)(() => {
9712
+ const searclCountriesList = (0, import_react25.useMemo)(() => {
9718
9713
  return countriesList.filter((item) => {
9719
9714
  return item.join("+").toLowerCase().includes(searchValue.toLowerCase());
9720
9715
  });
9721
9716
  }, [countriesList, searchValue]);
9722
- const hideContinueButton = (0, import_react26.useMemo)(() => {
9717
+ const hideContinueButton = (0, import_react25.useMemo)(() => {
9723
9718
  return appearance?.hideContinueButton;
9724
9719
  }, [appearance]);
9725
- const disabled = (0, import_react26.useMemo)(() => {
9720
+ const disabled = (0, import_react25.useMemo)(() => {
9726
9721
  try {
9727
9722
  if (!countryData[1] || !countryData[2] || !phoneValue) {
9728
9723
  return true;
@@ -9733,19 +9728,19 @@ var PhoneInputItem = () => {
9733
9728
  }
9734
9729
  return true;
9735
9730
  }, [countryData, phoneValue, locales]);
9736
- const hoverBgColor = (0, import_react26.useMemo)(() => {
9731
+ const hoverBgColor = (0, import_react25.useMemo)(() => {
9737
9732
  const color = appearance.theme?.["--pcm-accent-color"] || "#A257FA";
9738
9733
  return hexToRgbaColor(color, 0.1);
9739
9734
  }, [appearance]);
9740
9735
  useClickAway_default(() => {
9741
9736
  setVisbSelectCountry(false);
9742
9737
  }, [clickRef, countryListWrapRef]);
9743
- (0, import_react26.useEffect)(() => {
9738
+ (0, import_react25.useEffect)(() => {
9744
9739
  if (visbSelectCountry) {
9745
9740
  setSearchValue("");
9746
9741
  }
9747
9742
  }, [visbSelectCountry]);
9748
- (0, import_react26.useEffect)(() => {
9743
+ (0, import_react25.useEffect)(() => {
9749
9744
  const language = navigator.languages && navigator.languages.length ? navigator.languages[0] : navigator.language;
9750
9745
  const locales2 = language?.split("-");
9751
9746
  const region = (locales2 || []).length > 1 ? locales2?.[1] : locales2?.[0];
@@ -9760,7 +9755,7 @@ var PhoneInputItem = () => {
9760
9755
  }
9761
9756
  }
9762
9757
  }, [countriesList]);
9763
- (0, import_react26.useEffect)(() => {
9758
+ (0, import_react25.useEffect)(() => {
9764
9759
  const { topDistance, bottomDistance } = getElementDimensionsRelativeToParent(phoneContainerRef) || {};
9765
9760
  if (bottomDistance && topDistance && bottomDistance > topDistance || (bottomDistance || 0) > 200) {
9766
9761
  setListPosition("bottom");
@@ -9993,11 +9988,11 @@ var SwitchEmailOrPhone = ({
9993
9988
  };
9994
9989
  var Signup2 = () => {
9995
9990
  const { config } = useContext();
9996
- const [toggleEmailOrPhone, setToggleEmailOrPhone] = (0, import_react27.useState)("email" /* Email */);
9991
+ const [toggleEmailOrPhone, setToggleEmailOrPhone] = (0, import_react26.useState)("email" /* Email */);
9997
9992
  const locales = useLocales();
9998
9993
  const { appearance } = useAppearance();
9999
9994
  const { currentMode } = useIconColor_default();
10000
- const connectorsOrder = (0, import_react27.useMemo)(() => {
9995
+ const connectorsOrder = (0, import_react26.useMemo)(() => {
10001
9996
  let orders = appearance?.connectorsOrder;
10002
9997
  if (!orders) {
10003
9998
  orders = [
@@ -10028,13 +10023,13 @@ var Signup2 = () => {
10028
10023
  fillConnectorsOrder(enablePasskey, "passkey" /* Passkey */, orders);
10029
10024
  return orders;
10030
10025
  }, [appearance?.connectorsOrder, appearance.collapsePasskeyButton, config.walletConnectors]);
10031
- (0, import_react27.useEffect)(() => {
10026
+ (0, import_react26.useEffect)(() => {
10032
10027
  const connectorType = connectorsOrder.find((item) => item === "email" /* Email */ || item === "phone" /* Phone */);
10033
10028
  if (connectorType) {
10034
10029
  setToggleEmailOrPhone(connectorType);
10035
10030
  }
10036
10031
  }, [connectorsOrder]);
10037
- const connectorComponents = (0, import_react27.useMemo)(() => {
10032
+ const connectorComponents = (0, import_react26.useMemo)(() => {
10038
10033
  if (appearance?.splitEmailAndPhone) {
10039
10034
  return {
10040
10035
  email: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(emailLogin_default, {}),
@@ -10054,7 +10049,7 @@ var Signup2 = () => {
10054
10049
  };
10055
10050
  }, [appearance?.splitEmailAndPhone, toggleEmailOrPhone]);
10056
10051
  const switchEmailOrPhoneComponent = /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(SwitchEmailOrPhone, { toggleEmailOrPhone, setToggleEmailOrPhone });
10057
- const content = (0, import_react27.useMemo)(() => {
10052
+ const content = (0, import_react26.useMemo)(() => {
10058
10053
  const emailIndex = connectorsOrder.indexOf("email" /* Email */);
10059
10054
  const phoneIndex = connectorsOrder.indexOf("phone" /* Phone */);
10060
10055
  const collapseEmailAndPhone = !appearance?.splitEmailAndPhone && emailIndex != -1 && phoneIndex != -1;
@@ -10067,14 +10062,14 @@ var Signup2 = () => {
10067
10062
  }
10068
10063
  const component = connectorComponents[connector];
10069
10064
  const dividerStartIndex = collapseEmailAndPhone && emailOrPhoneIndex === 0 ? 1 : 0;
10070
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_react27.default.Fragment, { children: [
10065
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_react26.default.Fragment, { children: [
10071
10066
  index > dividerStartIndex && connectorsOrder.length !== 1 && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(divider_default, { children: locales.or }),
10072
10067
  component,
10073
10068
  collapseEmailAndPhone && showSwitchConnector === connector && switchEmailOrPhoneComponent
10074
10069
  ] }, `${connector}-${index}`);
10075
10070
  });
10076
10071
  }, [connectorComponents, connectorsOrder, appearance?.splitEmailAndPhone, switchEmailOrPhoneComponent]);
10077
- const logoUrl = (0, import_react27.useMemo)(() => {
10072
+ const logoUrl = (0, import_react26.useMemo)(() => {
10078
10073
  if (!appearance?.logo) {
10079
10074
  return logo_default;
10080
10075
  }
@@ -10095,15 +10090,15 @@ var signup_default = Signup2;
10095
10090
 
10096
10091
  // src/pages/walletInfo/index.tsx
10097
10092
  var import_connector_core12 = require("@particle-network/connector-core");
10098
- var import_react37 = require("react");
10093
+ var import_react36 = require("react");
10099
10094
 
10100
10095
  // src/components/chainDropdown/index.tsx
10101
10096
  var import_connector_core8 = require("@particle-network/connector-core");
10102
10097
  var import_framer_motion21 = require("framer-motion");
10103
- var import_react32 = require("react");
10098
+ var import_react31 = require("react");
10104
10099
 
10105
10100
  // src/hooks/useChainId.ts
10106
- var import_react28 = require("react");
10101
+ var import_react27 = require("react");
10107
10102
 
10108
10103
  // src/actions/getChainId.ts
10109
10104
  function getChainId(config) {
@@ -10119,7 +10114,7 @@ function watchChainId(config, parameters) {
10119
10114
  // src/hooks/useChainId.ts
10120
10115
  function useChainId() {
10121
10116
  const { config } = useContext();
10122
- return (0, import_react28.useSyncExternalStore)(
10117
+ return (0, import_react27.useSyncExternalStore)(
10123
10118
  (onChange) => watchChainId(config, { onChange }),
10124
10119
  () => getChainId(config),
10125
10120
  () => getChainId(config)
@@ -10127,11 +10122,11 @@ function useChainId() {
10127
10122
  }
10128
10123
 
10129
10124
  // src/hooks/useChains.ts
10130
- var import_react29 = require("react");
10125
+ var import_react28 = require("react");
10131
10126
  var useChains = () => {
10132
10127
  const { config } = useContext();
10133
10128
  const { connector } = useAccount();
10134
- const chains2 = (0, import_react29.useMemo)(() => {
10129
+ const chains2 = (0, import_react28.useMemo)(() => {
10135
10130
  const walletConnectorType = connector?.walletConnectorType;
10136
10131
  if (walletConnectorType) {
10137
10132
  const walletConnector = config.getWalletConnector(walletConnectorType);
@@ -10145,7 +10140,7 @@ var useChains = () => {
10145
10140
  };
10146
10141
 
10147
10142
  // src/hooks/useConnections.ts
10148
- var import_react30 = require("react");
10143
+ var import_react29 = require("react");
10149
10144
 
10150
10145
  // src/actions/getConnections.ts
10151
10146
  var previousConnections = [];
@@ -10180,7 +10175,7 @@ function watchConnections(config, parameters) {
10180
10175
  // src/hooks/useConnections.ts
10181
10176
  function useConnections() {
10182
10177
  const { config } = useContext();
10183
- return (0, import_react30.useSyncExternalStore)(
10178
+ return (0, import_react29.useSyncExternalStore)(
10184
10179
  (onChange) => watchConnections(config, { onChange }),
10185
10180
  () => getConnections(config),
10186
10181
  () => getConnections(config)
@@ -10259,14 +10254,14 @@ var useSwitchChain = (parameters) => {
10259
10254
  };
10260
10255
 
10261
10256
  // src/hooks/useWalletConnections.tsx
10262
- var import_react31 = require("react");
10257
+ var import_react30 = require("react");
10263
10258
  var import_jsx_runtime41 = require("react/jsx-runtime");
10264
10259
  var useWalletConnections = () => {
10265
10260
  const connections = useConnections();
10266
10261
  const wallets = useWalletsProps_default();
10267
10262
  const { config } = useContext();
10268
10263
  const { lastConnectorId } = useLastConnectorId();
10269
- const walletConnections = (0, import_react31.useMemo)(() => {
10264
+ const walletConnections = (0, import_react30.useMemo)(() => {
10270
10265
  const props = [];
10271
10266
  for (const connection of connections) {
10272
10267
  const id = connection.connector.id;
@@ -10321,22 +10316,22 @@ var ChainDropdown = ({
10321
10316
  const connectors = useConnectors();
10322
10317
  const { connectAsync } = useConnect();
10323
10318
  const connections = useConnections();
10324
- const [hoverIndex, setHoverIndex] = (0, import_react32.useState)(-1);
10325
- const [targetChainId, setTargetChainId] = (0, import_react32.useState)();
10326
- const dropdownRef = (0, import_react32.useRef)(null);
10327
- const timer = (0, import_react32.useRef)();
10328
- const dropdownWrapperRef = (0, import_react32.useRef)(null);
10329
- const selectedItemRef = (0, import_react32.useRef)(null);
10330
- const isParticle = (0, import_react32.useMemo)(() => {
10319
+ const [hoverIndex, setHoverIndex] = (0, import_react31.useState)(-1);
10320
+ const [targetChainId, setTargetChainId] = (0, import_react31.useState)();
10321
+ const dropdownRef = (0, import_react31.useRef)(null);
10322
+ const timer = (0, import_react31.useRef)();
10323
+ const dropdownWrapperRef = (0, import_react31.useRef)(null);
10324
+ const selectedItemRef = (0, import_react31.useRef)(null);
10325
+ const isParticle = (0, import_react31.useMemo)(() => {
10331
10326
  return Boolean(walletConnection && walletConnection.walletProps.connector.walletConnectorType === "particleAuth");
10332
10327
  }, [walletConnection]);
10333
- const currentChainId = (0, import_react32.useMemo)(() => {
10328
+ const currentChainId = (0, import_react31.useMemo)(() => {
10334
10329
  return supportChain ? chainId : -1;
10335
10330
  }, [chainId, supportChain]);
10336
- const switchSuccess = (0, import_react32.useMemo)(() => {
10331
+ const switchSuccess = (0, import_react31.useMemo)(() => {
10337
10332
  return targetChainId === currentChainId;
10338
10333
  }, [targetChainId, currentChainId]);
10339
- const currentChainType = (0, import_react32.useMemo)(() => {
10334
+ const currentChainType = (0, import_react31.useMemo)(() => {
10340
10335
  if (chainList && chainList?.length && currentChainId) {
10341
10336
  const chain = chainList.find((item) => item.id === currentChainId);
10342
10337
  if (chain) {
@@ -10347,18 +10342,18 @@ var ChainDropdown = ({
10347
10342
  return "";
10348
10343
  }
10349
10344
  }, [chainList, currentChainId]);
10350
- (0, import_react32.useEffect)(() => {
10345
+ (0, import_react31.useEffect)(() => {
10351
10346
  if (switchSuccess && visible) {
10352
10347
  setVisible(false);
10353
10348
  setTargetChainId(void 0);
10354
10349
  }
10355
10350
  }, [switchSuccess, visible, setVisible]);
10356
- (0, import_react32.useEffect)(() => {
10351
+ (0, import_react31.useEffect)(() => {
10357
10352
  }, [currentChainId]);
10358
10353
  useClickAway_default(() => {
10359
10354
  setVisible(false);
10360
10355
  }, [dropdownRef, ...clickAwayElements]);
10361
- (0, import_react32.useEffect)(() => {
10356
+ (0, import_react31.useEffect)(() => {
10362
10357
  setTimeout(() => {
10363
10358
  if (visible && dropdownWrapperRef.current && selectedItemRef.current) {
10364
10359
  const dropdownWrapper = dropdownWrapperRef.current;
@@ -10572,7 +10567,7 @@ var StyleSwitchNetwork = import_styled_components25.styled.div`
10572
10567
 
10573
10568
  // src/components/refreshIcon/index.tsx
10574
10569
  var import_framer_motion22 = require("framer-motion");
10575
- var import_react33 = require("react");
10570
+ var import_react32 = require("react");
10576
10571
  var import_styled_components26 = require("styled-components");
10577
10572
  var import_jsx_runtime43 = require("react/jsx-runtime");
10578
10573
  var StyleRefreshIcon = import_styled_components26.styled.div`
@@ -10590,8 +10585,8 @@ var StyleRefreshIcon = import_styled_components26.styled.div`
10590
10585
  `;
10591
10586
  var RefreshIcon = ({ spin, ...props }) => {
10592
10587
  const controls = (0, import_framer_motion22.useAnimation)();
10593
- const [isSpinning, setIsSpinning] = (0, import_react33.useState)(false);
10594
- (0, import_react33.useEffect)(() => {
10588
+ const [isSpinning, setIsSpinning] = (0, import_react32.useState)(false);
10589
+ (0, import_react32.useEffect)(() => {
10595
10590
  let animation;
10596
10591
  const startSpinning = async () => {
10597
10592
  if (isSpinning) {
@@ -10650,17 +10645,17 @@ var RefreshIcon = ({ spin, ...props }) => {
10650
10645
  var refreshIcon_default = RefreshIcon;
10651
10646
 
10652
10647
  // src/hooks/useEmbeddedWallet.ts
10653
- var import_react34 = require("react");
10648
+ var import_react33 = require("react");
10654
10649
  var useEmbeddedWallet = () => {
10655
10650
  const { config } = useContext();
10656
- const walletPlugin = (0, import_react34.useMemo)(() => {
10651
+ const walletPlugin = (0, import_react33.useMemo)(() => {
10657
10652
  const plugin = config.plugins.find((plugin2) => plugin2.id === "wallet");
10658
10653
  if (plugin) {
10659
10654
  return plugin;
10660
10655
  }
10661
10656
  return void 0;
10662
10657
  }, []);
10663
- const isCanOpen = (0, import_react34.useMemo)(() => {
10658
+ const isCanOpen = (0, import_react33.useMemo)(() => {
10664
10659
  return walletPlugin?.getPlugin().walletOptions.widgetIntegration !== "embedded";
10665
10660
  }, [walletPlugin]);
10666
10661
  if (!walletPlugin) {
@@ -10675,19 +10670,19 @@ var useEmbeddedWallet = () => {
10675
10670
  };
10676
10671
 
10677
10672
  // src/hooks/useParticleAuth.ts
10678
- var import_react35 = require("react");
10673
+ var import_react34 = require("react");
10679
10674
  var useParticleAuth = () => {
10680
10675
  const { connector } = useAccount();
10681
- const isParticle = (0, import_react35.useMemo)(() => {
10676
+ const isParticle = (0, import_react34.useMemo)(() => {
10682
10677
  return connector?.walletConnectorType === "particleAuth";
10683
10678
  }, [connector]);
10684
- const particle = (0, import_react35.useMemo)(() => {
10679
+ const particle = (0, import_react34.useMemo)(() => {
10685
10680
  if (isParticle && "particle" in window && window.particle?._internal) {
10686
10681
  return window?.particle;
10687
10682
  }
10688
10683
  return null;
10689
10684
  }, [isParticle]);
10690
- const createParticleMethod = (0, import_react35.useCallback)(
10685
+ const createParticleMethod = (0, import_react34.useCallback)(
10691
10686
  (methodName) => {
10692
10687
  return (...args) => {
10693
10688
  if (!isParticle || !particle || !particle._internal || !particle._internal[methodName]) {
@@ -10742,7 +10737,7 @@ function usePublicClient(parameters = {}) {
10742
10737
  }
10743
10738
 
10744
10739
  // src/context/web3Provider/index.tsx
10745
- var import_react36 = __toESM(require("react"), 1);
10740
+ var import_react35 = __toESM(require("react"), 1);
10746
10741
 
10747
10742
  // src/actions/getSolanaWalletClient.ts
10748
10743
  var import_connector_core10 = require("@particle-network/connector-core");
@@ -10879,12 +10874,12 @@ var mapWalletClient = async (parameters) => {
10879
10874
 
10880
10875
  // src/context/web3Provider/index.tsx
10881
10876
  var import_jsx_runtime44 = require("react/jsx-runtime");
10882
- var Web3Context = (0, import_react36.createContext)(null);
10877
+ var Web3Context = (0, import_react35.createContext)(null);
10883
10878
  var Web3Provder = ({ children }) => {
10884
10879
  const connections = useConnections();
10885
10880
  const { config } = useContext();
10886
10881
  const { data: wallets, mutate: connectionMutate } = useMutation(mapWalletClient);
10887
- (0, import_react36.useEffect)(() => {
10882
+ (0, import_react35.useEffect)(() => {
10888
10883
  connectionMutate({ connections, config });
10889
10884
  }, [connections]);
10890
10885
  return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
@@ -10898,7 +10893,7 @@ var Web3Provder = ({ children }) => {
10898
10893
  );
10899
10894
  };
10900
10895
  var useWeb3Context = () => {
10901
- const context = import_react36.default.useContext(Web3Context);
10896
+ const context = import_react35.default.useContext(Web3Context);
10902
10897
  if (!context)
10903
10898
  throw Error("Web3 Hook must be inside a Provider.");
10904
10899
  return context;
@@ -11103,13 +11098,13 @@ var Page6 = () => {
11103
11098
  onSettled(data, error) {
11104
11099
  }
11105
11100
  });
11106
- const [refreshBalance, setRefreshBalance] = (0, import_react37.useState)(false);
11107
- const [chainDropdownVisible, setChainDropdownVisible] = (0, import_react37.useState)(false);
11108
- const [balance, setBalance] = (0, import_react37.useState)(null);
11109
- const timer = (0, import_react37.useRef)();
11110
- const walletInfoLeftRef = (0, import_react37.useRef)(null);
11111
- const [disconnectLoading, setDisconnectLoading] = (0, import_react37.useState)(false);
11112
- const currentChainType = (0, import_react37.useMemo)(() => {
11101
+ const [refreshBalance, setRefreshBalance] = (0, import_react36.useState)(false);
11102
+ const [chainDropdownVisible, setChainDropdownVisible] = (0, import_react36.useState)(false);
11103
+ const [balance, setBalance] = (0, import_react36.useState)(null);
11104
+ const timer = (0, import_react36.useRef)();
11105
+ const walletInfoLeftRef = (0, import_react36.useRef)(null);
11106
+ const [disconnectLoading, setDisconnectLoading] = (0, import_react36.useState)(false);
11107
+ const currentChainType = (0, import_react36.useMemo)(() => {
11113
11108
  if (chainList && chainList?.length && currentChainId) {
11114
11109
  const chain2 = chainList.find((item) => item.id === currentChainId);
11115
11110
  if (chain2) {
@@ -11120,7 +11115,7 @@ var Page6 = () => {
11120
11115
  return "";
11121
11116
  }
11122
11117
  }, [chainList, currentChainId]);
11123
- const supportChain = (0, import_react37.useMemo)(() => {
11118
+ const supportChain = (0, import_react36.useMemo)(() => {
11124
11119
  return chains2.some((item) => item.id === chain?.id);
11125
11120
  }, [chain, chains2]);
11126
11121
  const getBalance = async () => {
@@ -11139,7 +11134,7 @@ var Page6 = () => {
11139
11134
  });
11140
11135
  }
11141
11136
  };
11142
- const isParticle = (0, import_react37.useMemo)(() => {
11137
+ const isParticle = (0, import_react36.useMemo)(() => {
11143
11138
  return Boolean(walletConnection && walletConnection.walletProps.connector.walletConnectorType === "particleAuth");
11144
11139
  }, [walletConnection]);
11145
11140
  const getCachedBalance = () => {
@@ -11147,19 +11142,19 @@ var Page6 = () => {
11147
11142
  return localStorage.getItem(key) || "0";
11148
11143
  };
11149
11144
  const { appearance } = useAppearance();
11150
- const buyUrl = (0, import_react37.useMemo)(() => {
11145
+ const buyUrl = (0, import_react36.useMemo)(() => {
11151
11146
  if (address) {
11152
11147
  return getBuyUrl(currentChainId, address, "", appearance.mode);
11153
11148
  }
11154
11149
  return void 0;
11155
11150
  }, [address, currentChainId, appearance.mode]);
11156
- (0, import_react37.useEffect)(() => {
11151
+ (0, import_react36.useEffect)(() => {
11157
11152
  if (address && chain && client && primaryWallet) {
11158
11153
  setBalance(getCachedBalance());
11159
11154
  getBalance();
11160
11155
  }
11161
11156
  }, [address, client, chain, primaryWallet]);
11162
- (0, import_react37.useEffect)(() => {
11157
+ (0, import_react36.useEffect)(() => {
11163
11158
  if (chain?.id && address) {
11164
11159
  setBalance(getCachedBalance());
11165
11160
  }
@@ -11422,10 +11417,10 @@ var walletInfo_default = Page6;
11422
11417
 
11423
11418
  // src/pages/walletInfo/title.tsx
11424
11419
  var import_connector_core13 = require("@particle-network/connector-core");
11425
- var import_react40 = require("react");
11420
+ var import_react39 = require("react");
11426
11421
 
11427
11422
  // src/components/walletAAIcon/index.tsx
11428
- var import_react38 = require("react");
11423
+ var import_react37 = require("react");
11429
11424
 
11430
11425
  // src/assets/aa.tsx
11431
11426
  var import_jsx_runtime46 = require("react/jsx-runtime");
@@ -11640,13 +11635,13 @@ var StyleCMWrapper = import_styled_components28.styled.div`
11640
11635
  var import_jsx_runtime47 = require("react/jsx-runtime");
11641
11636
  var WalletIcon2 = ({ size = 20, aaName = "" }) => {
11642
11637
  const [walletConnection] = useWalletConnections();
11643
- const cmSize = (0, import_react38.useMemo)(() => {
11638
+ const cmSize = (0, import_react37.useMemo)(() => {
11644
11639
  return Math.floor(size / 1.6);
11645
11640
  }, [size]);
11646
11641
  const AAIcon = getAAIcon(aaName);
11647
11642
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(StyleWalletIconContainer, { width: size, height: size, children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(StyleAAWrapper, { children: [
11648
11643
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(AAIcon, {}),
11649
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(StyleCMWrapper, { width: cmSize, height: cmSize, children: walletConnection?.walletProps.icon && (0, import_react38.cloneElement)(walletConnection?.walletProps.icon, {
11644
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(StyleCMWrapper, { width: cmSize, height: cmSize, children: walletConnection?.walletProps.icon && (0, import_react37.cloneElement)(walletConnection?.walletProps.icon, {
11650
11645
  width: cmSize,
11651
11646
  height: cmSize
11652
11647
  }) })
@@ -11655,11 +11650,11 @@ var WalletIcon2 = ({ size = 20, aaName = "" }) => {
11655
11650
  var walletAAIcon_default = WalletIcon2;
11656
11651
 
11657
11652
  // src/components/walletIcon/index.tsx
11658
- var import_react39 = require("react");
11653
+ var import_react38 = require("react");
11659
11654
  var import_jsx_runtime48 = require("react/jsx-runtime");
11660
11655
  var WalletIcon3 = ({ size = 20 }) => {
11661
11656
  const [walletConnection] = useWalletConnections();
11662
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyleWalletIconContainer, { width: size, height: size, children: walletConnection?.walletProps.icon && (0, import_react39.cloneElement)(walletConnection?.walletProps.icon, {
11657
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyleWalletIconContainer, { width: size, height: size, children: walletConnection?.walletProps.icon && (0, import_react38.cloneElement)(walletConnection?.walletProps.icon, {
11663
11658
  width: size,
11664
11659
  height: size
11665
11660
  }) });
@@ -11674,7 +11669,7 @@ var Title2 = () => {
11674
11669
  const smartAccount = useSmartAccount();
11675
11670
  const address = useAddress();
11676
11671
  const aaIconName = smartAccount?.smartAccountContract?.name?.toUpperCase();
11677
- const blockExplorerUrl = (0, import_react40.useMemo)(() => {
11672
+ const blockExplorerUrl = (0, import_react39.useMemo)(() => {
11678
11673
  if (!currentChainId || !address || !chainList) {
11679
11674
  return "";
11680
11675
  }
@@ -11707,7 +11702,7 @@ var Title2 = () => {
11707
11702
  var title_default = Title2;
11708
11703
 
11709
11704
  // src/pages/walletconnect/index.tsx
11710
- var import_react41 = require("react");
11705
+ var import_react40 = require("react");
11711
11706
 
11712
11707
  // src/pages/walletconnect/styles.ts
11713
11708
  var import_framer_motion23 = require("framer-motion");
@@ -11771,10 +11766,10 @@ var Page7 = ({ wallet }) => {
11771
11766
  const { uri: walletConnectUri = "", requestUri, error } = useWalletConnectUri(wallet?.connector?.id);
11772
11767
  const { config } = useContext();
11773
11768
  const { isConnected } = useAccount();
11774
- (0, import_react41.useEffect)(() => {
11769
+ (0, import_react40.useEffect)(() => {
11775
11770
  requestUri();
11776
11771
  }, []);
11777
- (0, import_react41.useEffect)(() => {
11772
+ (0, import_react40.useEffect)(() => {
11778
11773
  return () => {
11779
11774
  if (!isConnected) {
11780
11775
  config.setState((x) => ({
@@ -11784,7 +11779,7 @@ var Page7 = ({ wallet }) => {
11784
11779
  }
11785
11780
  };
11786
11781
  }, [isConnected]);
11787
- const visiableWalletButton = (0, import_react41.useMemo)(() => {
11782
+ const visiableWalletButton = (0, import_react40.useMemo)(() => {
11788
11783
  if (mobile || wallet?.id === "walletConnect") {
11789
11784
  return false;
11790
11785
  } else {
@@ -11934,18 +11929,18 @@ var useRouteState = (0, import_zustand5.create)((set) => ({
11934
11929
 
11935
11930
  // src/components/modal/index.tsx
11936
11931
  var import_framer_motion24 = require("framer-motion");
11937
- var import_react47 = require("react");
11932
+ var import_react46 = require("react");
11938
11933
  var import_react_transition_state = __toESM(require("react-transition-state"), 1);
11939
11934
  var import_resize_observer_polyfill = __toESM(require("resize-observer-polyfill"), 1);
11940
11935
 
11941
11936
  // src/components/focusTrap/index.tsx
11942
- var import_react43 = require("react");
11937
+ var import_react42 = require("react");
11943
11938
 
11944
11939
  // src/hooks/useFocusTrap.ts
11945
- var import_react42 = require("react");
11940
+ var import_react41 = require("react");
11946
11941
  var KEYCODE_TAB = 9;
11947
11942
  function useFocusTrap() {
11948
- const elRef = (0, import_react42.useRef)(null);
11943
+ const elRef = (0, import_react41.useRef)(null);
11949
11944
  function handleFocus(e) {
11950
11945
  if (!elRef.current)
11951
11946
  return;
@@ -11974,7 +11969,7 @@ function useFocusTrap() {
11974
11969
  }
11975
11970
  }
11976
11971
  }
11977
- (0, import_react42.useEffect)(() => {
11972
+ (0, import_react41.useEffect)(() => {
11978
11973
  if (elRef.current) {
11979
11974
  elRef.current.addEventListener("keydown", handleFocus);
11980
11975
  elRef.current.focus({ preventScroll: true });
@@ -11992,7 +11987,7 @@ function useFocusTrap() {
11992
11987
  var import_jsx_runtime51 = require("react/jsx-runtime");
11993
11988
  function FocusTrap(props) {
11994
11989
  const elRef = useFocusTrap();
11995
- (0, import_react43.useEffect)(() => {
11990
+ (0, import_react42.useEffect)(() => {
11996
11991
  if (!elRef.current)
11997
11992
  return;
11998
11993
  elRef.current.focus({ preventScroll: true });
@@ -12001,7 +11996,7 @@ function FocusTrap(props) {
12001
11996
  }
12002
11997
 
12003
11998
  // src/components/footer/index.tsx
12004
- var import_react44 = require("react");
11999
+ var import_react43 = require("react");
12005
12000
 
12006
12001
  // src/assets/powerdBy.tsx
12007
12002
  var import_jsx_runtime52 = require("react/jsx-runtime");
@@ -12056,7 +12051,7 @@ var FooterContainer = import_styled_components30.styled.div`
12056
12051
  // src/components/footer/index.tsx
12057
12052
  var import_jsx_runtime53 = require("react/jsx-runtime");
12058
12053
  var Footer = () => {
12059
- const onClick = (0, import_react44.useCallback)(() => {
12054
+ const onClick = (0, import_react43.useCallback)(() => {
12060
12055
  window.open("https://particle.network", "_blank");
12061
12056
  }, []);
12062
12057
  return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(FooterContainer, { children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(PowerdBy, { onClick }) });
@@ -12064,9 +12059,9 @@ var Footer = () => {
12064
12059
  var footer_default = Footer;
12065
12060
 
12066
12061
  // src/components/lockBody/index.tsx
12067
- var import_react45 = require("react");
12062
+ var import_react44 = require("react");
12068
12063
  var import_jsx_runtime54 = require("react/jsx-runtime");
12069
- var useIsomorphicLayoutEffect = typeof window !== "undefined" ? import_react45.useLayoutEffect : import_react45.useEffect;
12064
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? import_react44.useLayoutEffect : import_react44.useEffect;
12070
12065
  var LockBody = ({ children }) => {
12071
12066
  useIsomorphicLayoutEffect(() => {
12072
12067
  const original = {
@@ -12094,11 +12089,11 @@ var LockBody = ({ children }) => {
12094
12089
  var lockBody_default = LockBody;
12095
12090
 
12096
12091
  // src/components/portal/index.tsx
12097
- var import_react46 = require("react");
12092
+ var import_react45 = require("react");
12098
12093
  var import_react_dom2 = require("react-dom");
12099
12094
 
12100
12095
  // src/version.ts
12101
- var version = "2.0.14";
12096
+ var version = "2.0.16";
12102
12097
 
12103
12098
  // src/components/portal/index.tsx
12104
12099
  var Portal = (props) => {
@@ -12107,9 +12102,9 @@ var Portal = (props) => {
12107
12102
  ...props
12108
12103
  };
12109
12104
  const { selector, children } = props;
12110
- const ref = (0, import_react46.useRef)(null);
12111
- const [mounted, setMounted] = (0, import_react46.useState)(false);
12112
- (0, import_react46.useEffect)(() => {
12105
+ const ref = (0, import_react45.useRef)(null);
12106
+ const [mounted, setMounted] = (0, import_react45.useState)(false);
12107
+ (0, import_react45.useEffect)(() => {
12113
12108
  const selectorPrefixed = "#" + selector?.replace(/^#/, "");
12114
12109
  ref.current = document.querySelector(selectorPrefixed);
12115
12110
  if (!ref.current) {
@@ -12144,11 +12139,11 @@ var Modal = (props) => {
12144
12139
  });
12145
12140
  const mounted = !(state === "exited" || state === "unmounted");
12146
12141
  const rendered = state === "preEnter" || state !== "exiting";
12147
- (0, import_react47.useEffect)(() => {
12142
+ (0, import_react46.useEffect)(() => {
12148
12143
  setOpen(open);
12149
12144
  }, [open]);
12150
- const ref = (0, import_react47.useRef)(null);
12151
- const [dimensions, setDimensions] = (0, import_react47.useState)({
12145
+ const ref = (0, import_react46.useRef)(null);
12146
+ const [dimensions, setDimensions] = (0, import_react46.useState)({
12152
12147
  width: void 0,
12153
12148
  height: void 0
12154
12149
  });
@@ -12162,24 +12157,24 @@ var Modal = (props) => {
12162
12157
  height: `${roundToEven(bounds?.height)}px`
12163
12158
  });
12164
12159
  };
12165
- const contentRef = (0, import_react47.useCallback)((node) => {
12160
+ const contentRef = (0, import_react46.useCallback)((node) => {
12166
12161
  if (!node)
12167
12162
  return;
12168
12163
  ref.current = node;
12169
12164
  updateBounds(node);
12170
12165
  }, []);
12171
- const dimensionsCSS = (0, import_react47.useMemo)(
12166
+ const dimensionsCSS = (0, import_react46.useMemo)(
12172
12167
  () => ({
12173
12168
  "--height": dimensions.height,
12174
12169
  "--width": dimensions.width
12175
12170
  }),
12176
12171
  [dimensions]
12177
12172
  );
12178
- (0, import_react47.useEffect)(() => {
12173
+ (0, import_react46.useEffect)(() => {
12179
12174
  if (ref.current)
12180
12175
  updateBounds(ref.current);
12181
12176
  }, [route.path]);
12182
- (0, import_react47.useEffect)(() => {
12177
+ (0, import_react46.useEffect)(() => {
12183
12178
  const element = ref.current;
12184
12179
  if (!element)
12185
12180
  return;
@@ -12195,7 +12190,7 @@ var Modal = (props) => {
12195
12190
  resizeObserver.unobserve(element);
12196
12191
  };
12197
12192
  }, [ref.current]);
12198
- (0, import_react47.useEffect)(() => {
12193
+ (0, import_react46.useEffect)(() => {
12199
12194
  if (!mounted) {
12200
12195
  setDimensions({
12201
12196
  width: void 0,
@@ -12276,27 +12271,27 @@ var ConnectModal = () => {
12276
12271
  const locales = useLocales();
12277
12272
  const { hideError } = useModalError();
12278
12273
  const { isConnected } = useAccount();
12279
- (0, import_react48.useEffect)(() => {
12274
+ (0, import_react47.useEffect)(() => {
12280
12275
  setOpen(false);
12281
12276
  }, [isConnected, setOpen]);
12282
- (0, import_react48.useEffect)(() => {
12277
+ (0, import_react47.useEffect)(() => {
12283
12278
  hideError();
12284
12279
  }, [route, hideError]);
12285
12280
  const {
12286
12281
  element: PageElement,
12287
12282
  title,
12288
12283
  state
12289
- } = (0, import_react48.useMemo)(() => {
12284
+ } = (0, import_react47.useMemo)(() => {
12290
12285
  const page = getPage(route.path);
12291
12286
  return { ...page, state: route.state };
12292
12287
  }, [route]);
12293
- const onClose = (0, import_react48.useCallback)(() => {
12288
+ const onClose = (0, import_react47.useCallback)(() => {
12294
12289
  setOpen(false);
12295
12290
  }, [setOpen]);
12296
- const onBack = (0, import_react48.useCallback)(() => {
12291
+ const onBack = (0, import_react47.useCallback)(() => {
12297
12292
  navigate("signup" /* Signup */);
12298
12293
  }, [navigate]);
12299
- const isCanBack = (0, import_react48.useMemo)(() => route.path !== "signup" /* Signup */ && route.path !== "wallet-info" /* WalletInfo */, [route.path]);
12294
+ const isCanBack = (0, import_react47.useMemo)(() => route.path !== "signup" /* Signup */ && route.path !== "wallet-info" /* WalletInfo */, [route.path]);
12300
12295
  return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
12301
12296
  modal_default,
12302
12297
  {
@@ -12311,7 +12306,7 @@ var ConnectModal = () => {
12311
12306
  var connectModal_default = ConnectModal;
12312
12307
 
12313
12308
  // src/context/modalProvider/index.tsx
12314
- var import_react49 = __toESM(require("react"), 1);
12309
+ var import_react48 = __toESM(require("react"), 1);
12315
12310
 
12316
12311
  // src/actions/filterConnectors.ts
12317
12312
  var filterConnectors = (connectors) => {
@@ -12440,7 +12435,7 @@ function hydrate(config, parameters) {
12440
12435
 
12441
12436
  // src/context/modalProvider/index.tsx
12442
12437
  var import_jsx_runtime57 = require("react/jsx-runtime");
12443
- var ModalContext = (0, import_react49.createContext)(null);
12438
+ var ModalContext = (0, import_react48.createContext)(null);
12444
12439
  var reconnectConfigUid;
12445
12440
  var ModalProvider = (props) => {
12446
12441
  const { reconnectOnMount } = props;
@@ -12461,9 +12456,9 @@ var ModalProvider = (props) => {
12461
12456
  const aaPlugin = config.plugins.find((plugin) => plugin.id === "aa");
12462
12457
  setSmartAccount(aaPlugin?.smartAccount ?? null);
12463
12458
  };
12464
- (0, import_react49.useEffect)(() => {
12459
+ (0, import_react48.useEffect)(() => {
12465
12460
  }, [account]);
12466
- const reconnectRef = (0, import_react49.useRef)(false);
12461
+ const reconnectRef = (0, import_react48.useRef)(false);
12467
12462
  const { onMount } = hydrate(config, {
12468
12463
  reconnectOnMount
12469
12464
  });
@@ -12472,20 +12467,20 @@ var ModalProvider = (props) => {
12472
12467
  reconnectConfigUid = config.uid;
12473
12468
  onMount();
12474
12469
  }
12475
- (0, import_react49.useEffect)(() => {
12470
+ (0, import_react48.useEffect)(() => {
12476
12471
  if (config.uid !== reconnectConfigUid) {
12477
12472
  reconnectConfigUid = config.uid;
12478
12473
  onMount();
12479
12474
  }
12480
12475
  }, [config.uid, onMount]);
12481
- const walletPlugin = (0, import_react49.useMemo)(() => {
12476
+ const walletPlugin = (0, import_react48.useMemo)(() => {
12482
12477
  const plugin = config.plugins.find((plugin2) => plugin2.id === "wallet");
12483
12478
  if (plugin) {
12484
12479
  return plugin;
12485
12480
  }
12486
12481
  return void 0;
12487
12482
  }, [config.plugins]);
12488
- (0, import_react49.useEffect)(() => {
12483
+ (0, import_react48.useEffect)(() => {
12489
12484
  if (walletPlugin) {
12490
12485
  const aaPlugin = config.plugins.find((plugin) => plugin.id === "aa");
12491
12486
  const erc4337 = aaPlugin ? aaPlugin.erc4337 : void 0;
@@ -12494,7 +12489,7 @@ var ModalProvider = (props) => {
12494
12489
  });
12495
12490
  }
12496
12491
  }, [walletPlugin, config.plugins]);
12497
- (0, import_react49.useEffect)(() => {
12492
+ (0, import_react48.useEffect)(() => {
12498
12493
  if (walletPlugin) {
12499
12494
  const walletOption = getWalletOption(appearance);
12500
12495
  walletPlugin.overrideWalletOption({
@@ -12503,7 +12498,7 @@ var ModalProvider = (props) => {
12503
12498
  });
12504
12499
  }
12505
12500
  }, [appearance, walletPlugin]);
12506
- (0, import_react49.useEffect)(() => {
12501
+ (0, import_react48.useEffect)(() => {
12507
12502
  handlePlugin(connections, config.plugins);
12508
12503
  }, [connections, config.plugins]);
12509
12504
  return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(ModalContext.Provider, { value: {}, children: props.children });
@@ -12511,14 +12506,14 @@ var ModalProvider = (props) => {
12511
12506
 
12512
12507
  // src/context/index.tsx
12513
12508
  var import_jsx_runtime58 = require("react/jsx-runtime");
12514
- var Context = (0, import_react50.createContext)(null);
12509
+ var Context = (0, import_react49.createContext)(null);
12515
12510
  var ConnectKitProvider = (parameters) => {
12516
- if (import_react50.default.useContext(Context)) {
12511
+ if (import_react49.default.useContext(Context)) {
12517
12512
  throw new Error("Multiple, nested usages of ConnectKitProvider detected. Please use only one.");
12518
12513
  }
12519
12514
  const { children, config, reconnectOnMount = true } = parameters;
12520
12515
  const { appearance } = useAppearance(config);
12521
- const { AuthCoreContextProvider, authOptions } = (0, import_react50.useMemo)(() => {
12516
+ const { AuthCoreContextProvider, authOptions } = (0, import_react49.useMemo)(() => {
12522
12517
  const authWalletConnector = config.getWalletConnector("particleAuth");
12523
12518
  const aaPlugin = config.plugins.find((plugin) => plugin.id === "aa");
12524
12519
  const erc4337 = aaPlugin ? aaPlugin.erc4337 : void 0;
@@ -12527,7 +12522,7 @@ var ConnectKitProvider = (parameters) => {
12527
12522
  theme = getSystemMode();
12528
12523
  }
12529
12524
  return {
12530
- AuthCoreContextProvider: authWalletConnector?.AuthCoreContextProvider ?? import_react50.default.Fragment,
12525
+ AuthCoreContextProvider: authWalletConnector?.AuthCoreContextProvider ?? import_react49.default.Fragment,
12531
12526
  authOptions: authWalletConnector ? {
12532
12527
  options: {
12533
12528
  themeType: theme,
@@ -12547,7 +12542,7 @@ var ConnectKitProvider = (parameters) => {
12547
12542
  options: config.options,
12548
12543
  config
12549
12544
  };
12550
- return (0, import_react50.createElement)(
12545
+ return (0, import_react49.createElement)(
12551
12546
  Context.Provider,
12552
12547
  { value },
12553
12548
  /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_jsx_runtime58.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(AuthCoreContextProvider, { ...authOptions, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(Web3Provder, { children: [
@@ -12557,7 +12552,7 @@ var ConnectKitProvider = (parameters) => {
12557
12552
  );
12558
12553
  };
12559
12554
  var useContext = () => {
12560
- const context = import_react50.default.useContext(Context);
12555
+ const context = import_react49.default.useContext(Context);
12561
12556
  if (!context)
12562
12557
  throw Error("ConnectKit Hook must be inside a Provider.");
12563
12558
  return context;
@@ -12577,13 +12572,13 @@ function useAppearance(config) {
12577
12572
  const { config: globalConfig } = useContext();
12578
12573
  config = globalConfig;
12579
12574
  }
12580
- const setAppearance = (0, import_react51.useCallback)(
12575
+ const setAppearance = (0, import_react50.useCallback)(
12581
12576
  (value) => {
12582
12577
  config.appearanceStore.setState(value || {}, true);
12583
12578
  },
12584
12579
  [config.appearanceStore]
12585
12580
  );
12586
- const appearance = (0, import_react51.useSyncExternalStore)(
12581
+ const appearance = (0, import_react50.useSyncExternalStore)(
12587
12582
  config.appearanceStore.subscribe,
12588
12583
  () => getAppearance(config),
12589
12584
  () => getAppearance(config)
@@ -12596,23 +12591,23 @@ function useAppearance(config) {
12596
12591
 
12597
12592
  // src/hooks/useIconColor.ts
12598
12593
  var useIconColor = () => {
12599
- const [currentMode, setCurrentMode] = (0, import_react52.useState)();
12594
+ const [currentMode, setCurrentMode] = (0, import_react51.useState)();
12600
12595
  const { appearance } = useAppearance();
12601
- (0, import_react52.useEffect)(() => {
12596
+ (0, import_react51.useEffect)(() => {
12602
12597
  if (appearance?.mode && appearance?.mode !== "auto") {
12603
12598
  setCurrentMode(appearance?.mode);
12604
12599
  } else {
12605
12600
  setCurrentMode(getSystemMode());
12606
12601
  }
12607
12602
  }, [appearance?.mode]);
12608
- const foreground = (0, import_react52.useMemo)(() => {
12603
+ const foreground = (0, import_react51.useMemo)(() => {
12609
12604
  if (currentMode === "dark") {
12610
12605
  return "#000000";
12611
12606
  } else {
12612
12607
  return "#ffffff";
12613
12608
  }
12614
12609
  }, [currentMode]);
12615
- const background = (0, import_react52.useMemo)(() => {
12610
+ const background = (0, import_react51.useMemo)(() => {
12616
12611
  if (currentMode === "dark") {
12617
12612
  return "#ffffff";
12618
12613
  } else {
@@ -12911,14 +12906,14 @@ function getSocialIcon(authType) {
12911
12906
  }
12912
12907
 
12913
12908
  // src/components/connectButton/index.tsx
12914
- var import_react55 = require("react");
12909
+ var import_react54 = require("react");
12915
12910
 
12916
12911
  // src/components/connectedWidget/index.tsx
12917
12912
  var import_connector_core14 = require("@particle-network/connector-core");
12918
- var import_react54 = require("react");
12913
+ var import_react53 = require("react");
12919
12914
 
12920
12915
  // src/components/horizontalResizeAnimation/index.tsx
12921
- var import_react53 = require("react");
12916
+ var import_react52 = require("react");
12922
12917
  var import_styled_components31 = require("styled-components");
12923
12918
  var import_jsx_runtime71 = require("react/jsx-runtime");
12924
12919
  var AnimationContainer = import_styled_components31.styled.div`
@@ -12934,10 +12929,10 @@ var HorizontalResizeAnimation = ({
12934
12929
  style,
12935
12930
  ...props
12936
12931
  }) => {
12937
- const containerRef = (0, import_react53.useRef)(null);
12938
- const contentRef = (0, import_react53.useRef)(null);
12939
- const [width, setWidth] = (0, import_react53.useState)(0);
12940
- (0, import_react53.useEffect)(() => {
12932
+ const containerRef = (0, import_react52.useRef)(null);
12933
+ const contentRef = (0, import_react52.useRef)(null);
12934
+ const [width, setWidth] = (0, import_react52.useState)(0);
12935
+ (0, import_react52.useEffect)(() => {
12941
12936
  if (containerRef.current && contentRef.current) {
12942
12937
  requestAnimationFrame(() => {
12943
12938
  const newWidth = contentRef.current?.offsetWidth || 0;
@@ -12959,12 +12954,12 @@ var ConnectedWidget = () => {
12959
12954
  const chains2 = useChains();
12960
12955
  const smartAccount = useSmartAccount();
12961
12956
  const aaIconName = smartAccount?.smartAccountContract?.name?.toUpperCase();
12962
- const [chainDropdownVisible, setChainDropdownVisible] = (0, import_react54.useState)(false);
12963
- const leftRef = (0, import_react54.useRef)(null);
12964
- const supportChain = (0, import_react54.useMemo)(() => {
12957
+ const [chainDropdownVisible, setChainDropdownVisible] = (0, import_react53.useState)(false);
12958
+ const leftRef = (0, import_react53.useRef)(null);
12959
+ const supportChain = (0, import_react53.useMemo)(() => {
12965
12960
  return chains2.some((item) => item.id === chain?.id);
12966
12961
  }, [chain, chains2]);
12967
- const chainName = (0, import_react54.useMemo)(() => {
12962
+ const chainName = (0, import_react53.useMemo)(() => {
12968
12963
  const chainName2 = getChainDisplayName(chain);
12969
12964
  const maxChainNameLength = window.screen.width < 400 ? 9 : 18;
12970
12965
  return chainName2?.length > maxChainNameLength ? `${chainName2.slice(0, maxChainNameLength)}...` : chainName2;
@@ -13056,10 +13051,10 @@ var ConnectButton = (props) => {
13056
13051
  const { label } = props;
13057
13052
  const { isConnected, status } = useAccount();
13058
13053
  const { navigate } = useRouter();
13059
- const [loading, setLoading] = (0, import_react55.useState)(true);
13054
+ const [loading, setLoading] = (0, import_react54.useState)(true);
13060
13055
  const { appearance } = useAppearance();
13061
13056
  const locales = useLocales();
13062
- (0, import_react55.useEffect)(() => {
13057
+ (0, import_react54.useEffect)(() => {
13063
13058
  setLoading(false);
13064
13059
  }, [status]);
13065
13060
  if (loading) {