@embarkai/ui-kit 0.4.110 → 0.4.111

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.
package/dist/index.cjs CHANGED
@@ -6046,32 +6046,6 @@ var init_ChainSync2 = __esm({
6046
6046
  }
6047
6047
  });
6048
6048
 
6049
- // src/internal/hooks/useAllowExternalModalsScroll.ts
6050
- function isFromExternalModal(event) {
6051
- return event.composedPath().some((node) => node instanceof Element && EXTERNAL_MODAL_TAGS.has(node.tagName));
6052
- }
6053
- function stopExternalModalScrollEvent(event) {
6054
- if (isFromExternalModal(event)) event.stopPropagation();
6055
- }
6056
- function useAllowExternalModalsScroll(enabled) {
6057
- (0, import_react7.useEffect)(() => {
6058
- if (!enabled || typeof document === "undefined") return;
6059
- const body = document.body;
6060
- SCROLL_EVENTS.forEach((type) => body.addEventListener(type, stopExternalModalScrollEvent, { passive: true }));
6061
- return () => {
6062
- SCROLL_EVENTS.forEach((type) => body.removeEventListener(type, stopExternalModalScrollEvent));
6063
- };
6064
- }, [enabled]);
6065
- }
6066
- var import_react7, EXTERNAL_MODAL_TAGS, SCROLL_EVENTS;
6067
- var init_useAllowExternalModalsScroll = __esm({
6068
- "src/internal/hooks/useAllowExternalModalsScroll.ts"() {
6069
- import_react7 = require("react");
6070
- EXTERNAL_MODAL_TAGS = /* @__PURE__ */ new Set(["W3M-MODAL", "APPKIT-MODAL", "WCM-MODAL"]);
6071
- SCROLL_EVENTS = ["wheel", "touchmove"];
6072
- }
6073
- });
6074
-
6075
6049
  // src/internal/clients/account/register-smart-account-address.ts
6076
6050
  async function registerSmartAccountAddress(chainId, smartAccountAddress, factoryAddress) {
6077
6051
  const accessToken = import_auth25.jwtTokenManager.getAccessToken();
@@ -7024,7 +6998,7 @@ function useAutoConnect() {
7024
6998
  setIsIframeReady,
7025
6999
  setIsLoading
7026
7000
  } = useSession();
7027
- const createSessionWithKeyshare = (0, import_react8.useCallback)(
7001
+ const createSessionWithKeyshare = (0, import_react7.useCallback)(
7028
7002
  async (userId, hasServerKeyshare, isNewUser) => {
7029
7003
  try {
7030
7004
  try {
@@ -7062,8 +7036,8 @@ function useAutoConnect() {
7062
7036
  },
7063
7037
  [usePaymaster, setStatus, activeChainId]
7064
7038
  );
7065
- const autoConnectAttemptedRef = (0, import_react8.useRef)(false);
7066
- (0, import_react8.useEffect)(() => {
7039
+ const autoConnectAttemptedRef = (0, import_react7.useRef)(false);
7040
+ (0, import_react7.useEffect)(() => {
7067
7041
  if (!hasHydrated) return;
7068
7042
  if (autoConnectAttemptedRef.current) return;
7069
7043
  setIsLoading(true);
@@ -7193,12 +7167,12 @@ function useAutoConnect() {
7193
7167
  }, [hasHydrated]);
7194
7168
  return null;
7195
7169
  }
7196
- var import_react8;
7170
+ var import_react7;
7197
7171
  var init_useAutoConnect = __esm({
7198
7172
  "src/internal/hooks/useAutoConnect.ts"() {
7199
7173
  init_ProviderContext();
7200
7174
  init_SessionContext();
7201
- import_react8 = require("react");
7175
+ import_react7 = require("react");
7202
7176
  init_useLayoutDataStore();
7203
7177
  }
7204
7178
  });
@@ -7210,7 +7184,7 @@ function useOpenPage() {
7210
7184
  const setPageParams = useLayoutDataStore((st) => st.setPageParams);
7211
7185
  const setPostAuthNavigation = useLayoutDataStore((st) => st.setPostAuthNavigation);
7212
7186
  const address = useSession((st) => st.address);
7213
- const open = (0, import_react9.useCallback)(
7187
+ const open = (0, import_react8.useCallback)(
7214
7188
  (passportPage, params) => {
7215
7189
  if (!address) {
7216
7190
  if (passportPage !== "auth" /* AUTH */) {
@@ -7224,7 +7198,7 @@ function useOpenPage() {
7224
7198
  },
7225
7199
  [setPage, setPageParams, setPostAuthNavigation, address]
7226
7200
  );
7227
- const close = (0, import_react9.useCallback)(() => {
7201
+ const close = (0, import_react8.useCallback)(() => {
7228
7202
  setPageParams(null);
7229
7203
  setPostAuthNavigation(null);
7230
7204
  setPage(null);
@@ -7232,8 +7206,8 @@ function useOpenPage() {
7232
7206
  return { open, close, isOpen: page !== null };
7233
7207
  }
7234
7208
  function usePageParams() {
7235
- const currentParams = (0, import_react9.useRef)({});
7236
- (0, import_react9.useEffect)(() => {
7209
+ const currentParams = (0, import_react8.useRef)({});
7210
+ (0, import_react8.useEffect)(() => {
7237
7211
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
7238
7212
  if (!pageParams) return;
7239
7213
  currentParams.current = pageParams;
@@ -7241,10 +7215,10 @@ function usePageParams() {
7241
7215
  }, []);
7242
7216
  return currentParams;
7243
7217
  }
7244
- var import_react9;
7218
+ var import_react8;
7245
7219
  var init_useOpenPage = __esm({
7246
7220
  "src/hooks/useOpenPage.ts"() {
7247
- import_react9 = require("react");
7221
+ import_react8 = require("react");
7248
7222
  init_SessionContext();
7249
7223
  init_useLayoutDataStore();
7250
7224
  }
@@ -7253,10 +7227,10 @@ var init_useOpenPage = __esm({
7253
7227
  // src/internal/hooks/useBackupStatusChanges.ts
7254
7228
  function useBackupStatusChanges() {
7255
7229
  const { open: openPage } = useOpenPage();
7256
- const requestSeqRef = (0, import_react10.useRef)(0);
7257
- const openPageRef = (0, import_react10.useRef)(openPage);
7230
+ const requestSeqRef = (0, import_react9.useRef)(0);
7231
+ const openPageRef = (0, import_react9.useRef)(openPage);
7258
7232
  openPageRef.current = openPage;
7259
- (0, import_react10.useEffect)(() => {
7233
+ (0, import_react9.useEffect)(() => {
7260
7234
  async function handleBackupStatusChanged(event) {
7261
7235
  const detail = event?.detail;
7262
7236
  console.log("[BACKUP STATUS] changed:", detail);
@@ -7288,12 +7262,12 @@ function useBackupStatusChanges() {
7288
7262
  };
7289
7263
  }, []);
7290
7264
  }
7291
- var import_react10;
7265
+ var import_react9;
7292
7266
  var init_useBackupStatusChanges = __esm({
7293
7267
  "src/internal/hooks/useBackupStatusChanges.ts"() {
7294
7268
  init_SessionContext();
7295
7269
  init_useOpenPage();
7296
- import_react10 = require("react");
7270
+ import_react9 = require("react");
7297
7271
  init_vaultClient();
7298
7272
  }
7299
7273
  });
@@ -7303,7 +7277,7 @@ function useDetectMaxScrollHeight() {
7303
7277
  const page = useLayoutDataStore((state) => state.page);
7304
7278
  const setIsMobileView = useLayoutStore((state) => state.setIsMobileView);
7305
7279
  const setMaxScrollHeight = useLayoutStore((state) => state.setMaxScrollHeight);
7306
- const onResize = (0, import_react11.useCallback)(
7280
+ const onResize = (0, import_react10.useCallback)(
7307
7281
  (0, import_lodash_es2.debounce)(({ width, height }) => {
7308
7282
  const headerHeight = page === "auth" /* AUTH */ || page === "keyshare-restore" /* KEYSHARE_RESTORE */ ? 0 : 116;
7309
7283
  const limContentHeight = height * 0.92 - headerHeight - 57;
@@ -7312,18 +7286,18 @@ function useDetectMaxScrollHeight() {
7312
7286
  }, DEBOUNCE_DELAY),
7313
7287
  [page, setMaxScrollHeight, setIsMobileView]
7314
7288
  );
7315
- (0, import_react11.useEffect)(() => {
7289
+ (0, import_react10.useEffect)(() => {
7316
7290
  const obs = new ResizeObserver(([entry]) => onResize(entry.contentRect));
7317
7291
  const doc = window.document.getElementsByTagName("html")[0];
7318
7292
  if (doc) obs.observe(doc);
7319
7293
  return () => obs.disconnect();
7320
7294
  }, [onResize]);
7321
7295
  }
7322
- var import_lodash_es2, import_react11, DEBOUNCE_DELAY;
7296
+ var import_lodash_es2, import_react10, DEBOUNCE_DELAY;
7323
7297
  var init_useDetectMaxScrollHeight = __esm({
7324
7298
  "src/internal/hooks/useDetectMaxScrollHeight.ts"() {
7325
7299
  import_lodash_es2 = require("lodash-es");
7326
- import_react11 = require("react");
7300
+ import_react10 = require("react");
7327
7301
  init_constants();
7328
7302
  init_useLayoutDataStore();
7329
7303
  init_useLayoutStore();
@@ -7335,7 +7309,7 @@ var init_useDetectMaxScrollHeight = __esm({
7335
7309
  function useListenIframeAuthEvents() {
7336
7310
  const setPage = useLayoutDataStore((state) => state.setPage);
7337
7311
  const setIsIframeReady = useSession((state) => state.setIsIframeReady);
7338
- const handleIframeMessage = (0, import_react12.useCallback)(
7312
+ const handleIframeMessage = (0, import_react11.useCallback)(
7339
7313
  (event) => {
7340
7314
  const type = event.data?.type?.startsWith?.("LUMIA_PASSPORT_") ? event.data.type.replace("LUMIA_PASSPORT_", "IFRAME_MSG_") : event.data?.type;
7341
7315
  if (type === "IFRAME_MSG_IFRAME_READY") {
@@ -7351,36 +7325,36 @@ function useListenIframeAuthEvents() {
7351
7325
  },
7352
7326
  [setPage, setIsIframeReady]
7353
7327
  );
7354
- (0, import_react12.useEffect)(() => {
7328
+ (0, import_react11.useEffect)(() => {
7355
7329
  window.addEventListener("message", handleIframeMessage);
7356
7330
  return () => window.removeEventListener("message", handleIframeMessage);
7357
7331
  }, [handleIframeMessage]);
7358
7332
  }
7359
- var import_react12;
7333
+ var import_react11;
7360
7334
  var init_useListenIframeAuthEvents = __esm({
7361
7335
  "src/internal/hooks/useListenIframeAuthEvents.ts"() {
7362
7336
  init_SessionContext();
7363
- import_react12 = require("react");
7337
+ import_react11 = require("react");
7364
7338
  init_useLayoutDataStore();
7365
7339
  }
7366
7340
  });
7367
7341
 
7368
7342
  // src/internal/components/Expandable/hooks/useExpandable.ts
7369
- var import_react13, DEFERRED_DELAY, useExpandable;
7343
+ var import_react12, DEFERRED_DELAY, useExpandable;
7370
7344
  var init_useExpandable = __esm({
7371
7345
  "src/internal/components/Expandable/hooks/useExpandable.ts"() {
7372
- import_react13 = require("react");
7346
+ import_react12 = require("react");
7373
7347
  DEFERRED_DELAY = 100;
7374
7348
  useExpandable = (props) => {
7375
7349
  const { isExpanded = false, initHeight = 0, minHeight = 0 } = props;
7376
- const expandableRef = (0, import_react13.useRef)(null);
7377
- const contentRef = (0, import_react13.useRef)(null);
7378
- (0, import_react13.useEffect)(() => {
7350
+ const expandableRef = (0, import_react12.useRef)(null);
7351
+ const contentRef = (0, import_react12.useRef)(null);
7352
+ (0, import_react12.useEffect)(() => {
7379
7353
  if (!expandableRef.current) return;
7380
7354
  expandableRef.current.style.setProperty("--ui-kit-expandable-h", `${initHeight}px )`);
7381
7355
  }, []);
7382
- const expandableHeightTimerRef = (0, import_react13.useRef)(null);
7383
- const setExpandableHeight = (0, import_react13.useCallback)((minHeight2, isExpanded2) => {
7356
+ const expandableHeightTimerRef = (0, import_react12.useRef)(null);
7357
+ const setExpandableHeight = (0, import_react12.useCallback)((minHeight2, isExpanded2) => {
7384
7358
  if (expandableHeightTimerRef.current) clearTimeout(expandableHeightTimerRef.current);
7385
7359
  expandableHeightTimerRef.current = setTimeout(() => {
7386
7360
  if (!contentRef.current || !expandableRef.current) return;
@@ -7391,7 +7365,7 @@ var init_useExpandable = __esm({
7391
7365
  expandableHeightTimerRef.current = null;
7392
7366
  }, DEFERRED_DELAY);
7393
7367
  }, []);
7394
- (0, import_react13.useEffect)(() => {
7368
+ (0, import_react12.useEffect)(() => {
7395
7369
  if (!contentRef.current || !expandableRef.current) return;
7396
7370
  const resizeObs = new ResizeObserver(() => setExpandableHeight(minHeight, isExpanded));
7397
7371
  const domMutationObs = new MutationObserver(() => setExpandableHeight(minHeight, isExpanded));
@@ -7411,17 +7385,17 @@ var init_useExpandable = __esm({
7411
7385
  });
7412
7386
 
7413
7387
  // src/internal/components/Expandable/Expandable.tsx
7414
- var import_react14, import_jsx_runtime6, Expandable;
7388
+ var import_react13, import_jsx_runtime6, Expandable;
7415
7389
  var init_Expandable = __esm({
7416
7390
  "src/internal/components/Expandable/Expandable.tsx"() {
7417
7391
  init_utils();
7418
- import_react14 = require("react");
7392
+ import_react13 = require("react");
7419
7393
  init_useExpandable();
7420
7394
  import_jsx_runtime6 = require("react/jsx-runtime");
7421
- Expandable = (0, import_react14.forwardRef)((props, ref) => {
7395
+ Expandable = (0, import_react13.forwardRef)((props, ref) => {
7422
7396
  const { children, className, contentClassName, minHeight, divProps } = props;
7423
7397
  const { expandableRef, contentRef } = useExpandable(props);
7424
- (0, import_react14.useImperativeHandle)(ref, () => expandableRef.current);
7398
+ (0, import_react13.useImperativeHandle)(ref, () => expandableRef.current);
7425
7399
  return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
7426
7400
  "div",
7427
7401
  {
@@ -9660,18 +9634,18 @@ var init_useActivityLog = __esm({
9660
9634
 
9661
9635
  // src/internal/components/ActivityLogMenu/useActivityLogMenuParams.ts
9662
9636
  function useActivityLogMenuParams() {
9663
- (0, import_react15.useEffect)(() => {
9637
+ (0, import_react14.useEffect)(() => {
9664
9638
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
9665
9639
  if (!pageParams || !(0, import_lodash_es5.keys)(pageParams).length) return;
9666
9640
  setTimeout(() => useActivityLogFilters.setState(pageParams), 0);
9667
9641
  setPageParams(null);
9668
9642
  }, []);
9669
9643
  }
9670
- var import_lodash_es5, import_react15;
9644
+ var import_lodash_es5, import_react14;
9671
9645
  var init_useActivityLogMenuParams = __esm({
9672
9646
  "src/internal/components/ActivityLogMenu/useActivityLogMenuParams.ts"() {
9673
9647
  import_lodash_es5 = require("lodash-es");
9674
- import_react15 = require("react");
9648
+ import_react14 = require("react");
9675
9649
  init_useLayoutDataStore();
9676
9650
  init_useActivityLogFilters();
9677
9651
  }
@@ -9729,10 +9703,10 @@ var init_ActivityLogMenu2 = __esm({
9729
9703
  });
9730
9704
 
9731
9705
  // src/internal/components/ui/highlight.tsx
9732
- var import_react16, import_jsx_runtime10, CARD_STYLES, Highlight;
9706
+ var import_react15, import_jsx_runtime10, CARD_STYLES, Highlight;
9733
9707
  var init_highlight = __esm({
9734
9708
  "src/internal/components/ui/highlight.tsx"() {
9735
- import_react16 = require("react");
9709
+ import_react15 = require("react");
9736
9710
  init_utils();
9737
9711
  import_jsx_runtime10 = require("react/jsx-runtime");
9738
9712
  CARD_STYLES = {
@@ -9741,7 +9715,7 @@ var init_highlight = __esm({
9741
9715
  warning: "text-[var(--ui-kit-warning)] bg-[var(--ui-kit-bg-warning)]",
9742
9716
  error: "text-[var(--ui-kit-error)] bg-[var(--ui-kit-bg-error)]"
9743
9717
  };
9744
- Highlight = (0, import_react16.forwardRef)((props, ref) => {
9718
+ Highlight = (0, import_react15.forwardRef)((props, ref) => {
9745
9719
  const { type = "info", children, className, ...rest } = props;
9746
9720
  return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9747
9721
  "div",
@@ -9967,7 +9941,7 @@ function PassKeyStep(props) {
9967
9941
  const setIsLoading = useSession((st) => st.setIsLoading);
9968
9942
  const autoCloseOnSuccess = !recoveryUserId;
9969
9943
  const { passkeyStatus, setStep, setPasskeyStatus, setAlert, setEmail, setFailedType } = useAuthStore();
9970
- const onPasskeyRegister = (0, import_react17.useCallback)(async () => {
9944
+ const onPasskeyRegister = (0, import_react16.useCallback)(async () => {
9971
9945
  setAlert(null);
9972
9946
  setPasskeyStatus("registering passkey...");
9973
9947
  setIsLoading(true);
@@ -10026,7 +10000,7 @@ function PassKeyStep(props) {
10026
10000
  setIsLoading(false);
10027
10001
  }
10028
10002
  }, [onAuthSuccess, setPage]);
10029
- const onPasskeyAuth = (0, import_react17.useCallback)(async () => {
10003
+ const onPasskeyAuth = (0, import_react16.useCallback)(async () => {
10030
10004
  setAlert(null);
10031
10005
  setPasskeyStatus("checking available passkeys...");
10032
10006
  setIsLoading(true);
@@ -10144,14 +10118,14 @@ function PassKeyStep(props) {
10144
10118
  ] })
10145
10119
  ] });
10146
10120
  }
10147
- var import_lucide_react7, import_react17, import_jsx_runtime18;
10121
+ var import_lucide_react7, import_react16, import_jsx_runtime18;
10148
10122
  var init_PassKeyStep = __esm({
10149
10123
  "src/internal/components/AuthMenu/PassKeyStep.tsx"() {
10150
10124
  init_ProviderContext();
10151
10125
  init_SessionContext();
10152
10126
  init_i18n();
10153
10127
  import_lucide_react7 = require("lucide-react");
10154
- import_react17 = require("react");
10128
+ import_react16 = require("react");
10155
10129
  init_icons();
10156
10130
  init_auth();
10157
10131
  init_useLayoutDataStore();
@@ -10163,16 +10137,16 @@ var init_PassKeyStep = __esm({
10163
10137
  });
10164
10138
 
10165
10139
  // src/internal/components/ui/input.tsx
10166
- var import_react18, import_jsx_runtime19, Input;
10140
+ var import_react17, import_jsx_runtime19, Input;
10167
10141
  var init_input = __esm({
10168
10142
  "src/internal/components/ui/input.tsx"() {
10169
- import_react18 = __toESM(require("react"), 1);
10143
+ import_react17 = __toESM(require("react"), 1);
10170
10144
  init_utils();
10171
10145
  import_jsx_runtime19 = require("react/jsx-runtime");
10172
- Input = import_react18.default.forwardRef((props, ref) => {
10146
+ Input = import_react17.default.forwardRef((props, ref) => {
10173
10147
  const { className, disabled, error, Icon: Icon2, element, inputClassName, ...inputProps } = props;
10174
- const internalRef = (0, import_react18.useRef)(null);
10175
- (0, import_react18.useImperativeHandle)(ref, () => internalRef.current);
10148
+ const internalRef = (0, import_react17.useRef)(null);
10149
+ (0, import_react17.useImperativeHandle)(ref, () => internalRef.current);
10176
10150
  return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: cn2("w-full min-w-0 flex flex-col gap-1", className), children: [
10177
10151
  /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
10178
10152
  "div",
@@ -10242,9 +10216,9 @@ var init_emailChallenge = __esm({
10242
10216
  function Email() {
10243
10217
  const { callbacksRef } = useProviderConfig();
10244
10218
  const { t } = useT();
10245
- const focusRef = (0, import_react19.useRef)(null);
10246
- const inputRef = (0, import_react19.useRef)(null);
10247
- const buttonRef = (0, import_react19.useRef)(null);
10219
+ const focusRef = (0, import_react18.useRef)(null);
10220
+ const inputRef = (0, import_react18.useRef)(null);
10221
+ const buttonRef = (0, import_react18.useRef)(null);
10248
10222
  const isLoading = useSession((st) => st.isLoading);
10249
10223
  const setIsLoading = useSession((st) => st.setIsLoading);
10250
10224
  const isMobileView = useLayoutStore((st) => st.isMobileView);
@@ -10308,7 +10282,7 @@ function Email() {
10308
10282
  }
10309
10283
  onSendVerificationCode(email);
10310
10284
  };
10311
- (0, import_react19.useEffect)(() => {
10285
+ (0, import_react18.useEffect)(() => {
10312
10286
  if (!focusRef.current || !isMobileView) return;
10313
10287
  focusRef.current?.focus();
10314
10288
  setTimeout(() => {
@@ -10370,7 +10344,7 @@ function Email() {
10370
10344
  )
10371
10345
  ] });
10372
10346
  }
10373
- var import_react_query5, import_lucide_react8, import_react19, import_jsx_runtime20;
10347
+ var import_react_query5, import_lucide_react8, import_react18, import_jsx_runtime20;
10374
10348
  var init_Email = __esm({
10375
10349
  "src/internal/components/AuthMenu/SignInStep/Email.tsx"() {
10376
10350
  init_initial();
@@ -10379,7 +10353,7 @@ var init_Email = __esm({
10379
10353
  init_i18n();
10380
10354
  import_react_query5 = require("@tanstack/react-query");
10381
10355
  import_lucide_react8 = require("lucide-react");
10382
- import_react19 = require("react");
10356
+ import_react18 = require("react");
10383
10357
  init_useLayoutStore();
10384
10358
  init_projectId();
10385
10359
  init_button();
@@ -10544,7 +10518,7 @@ function Social(props) {
10544
10518
  const { t } = useT();
10545
10519
  const isLoading = useSession((st) => st.isLoading);
10546
10520
  const setIsLoading = useSession((st) => st.setIsLoading);
10547
- const onSocialAuth = (0, import_react20.useCallback)(
10521
+ const onSocialAuth = (0, import_react19.useCallback)(
10548
10522
  async (providerId) => {
10549
10523
  const { setStep, setEmail, setFailedType, setAlert, setPasskeyStatus } = useAuthStore.getState();
10550
10524
  const normalizedProviderId = providerId.toLowerCase();
@@ -10816,7 +10790,7 @@ function Social(props) {
10816
10790
  }
10817
10791
  );
10818
10792
  }
10819
- var import_react20, import_jsx_runtime21, SUPPORTED_PROVIDERS, SOCIAL_ICONS, fetchTokensFromRefreshEndpoint, enrichLoginResponseWithTokens;
10793
+ var import_react19, import_jsx_runtime21, SUPPORTED_PROVIDERS, SOCIAL_ICONS, fetchTokensFromRefreshEndpoint, enrichLoginResponseWithTokens;
10820
10794
  var init_Social = __esm({
10821
10795
  "src/internal/components/AuthMenu/SignInStep/Social.tsx"() {
10822
10796
  init_assets();
@@ -10825,7 +10799,7 @@ var init_Social = __esm({
10825
10799
  init_SessionContext();
10826
10800
  init_i18n();
10827
10801
  init_useLayoutDataStore();
10828
- import_react20 = require("react");
10802
+ import_react19 = require("react");
10829
10803
  init_auth();
10830
10804
  init_constants();
10831
10805
  init_utils();
@@ -10990,7 +10964,7 @@ function SignInStep(props) {
10990
10964
  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_lucide_react9.UserCircle, { className: "w-6 h-6" }),
10991
10965
  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "font-bold text-xl leading-6", children: t("passport:auth.signin") })
10992
10966
  ] }),
10993
- enabledSigninMethods.map((kind, idx) => /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_react21.Fragment, { children: [
10967
+ enabledSigninMethods.map((kind, idx) => /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_react20.Fragment, { children: [
10994
10968
  idx > 0 && /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex items-center h-4", children: [
10995
10969
  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { style: { borderTop: "1px solid var(--ui-kit-bd)" }, className: "flex-1" }),
10996
10970
  /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "text-[10px] px-2 flex-none leading-4", children: t("passport:auth.orSeparator") }),
@@ -11014,13 +10988,13 @@ function SignInStep(props) {
11014
10988
  ] })
11015
10989
  ] });
11016
10990
  }
11017
- var import_lucide_react9, import_react21, import_jsx_runtime23, TERMS_OF_SERVICE_URL;
10991
+ var import_lucide_react9, import_react20, import_jsx_runtime23, TERMS_OF_SERVICE_URL;
11018
10992
  var init_SignInStep = __esm({
11019
10993
  "src/internal/components/AuthMenu/SignInStep/SignInStep.tsx"() {
11020
10994
  init_ProviderContext();
11021
10995
  init_i18n();
11022
10996
  import_lucide_react9 = require("lucide-react");
11023
- import_react21 = require("react");
10997
+ import_react20 = require("react");
11024
10998
  init_button();
11025
10999
  init_Email();
11026
11000
  init_Social();
@@ -11051,14 +11025,14 @@ var init_constants5 = __esm({
11051
11025
  function useAuthMenuHandlers() {
11052
11026
  const { config, callbacksRef } = useProviderConfig();
11053
11027
  const qc = (0, import_react_query6.useQueryClient)();
11054
- const pendingLoginResponseRef = (0, import_react22.useRef)(null);
11055
- const [telegramCleanup, setTelegramCleanup] = (0, import_react22.useState)(null);
11028
+ const pendingLoginResponseRef = (0, import_react21.useRef)(null);
11029
+ const [telegramCleanup, setTelegramCleanup] = (0, import_react21.useState)(null);
11056
11030
  const usePaymaster = useSession((st) => st.usePaymaster);
11057
11031
  const publicClient = useSession((st) => st.publicClient);
11058
11032
  const activeChainId = useSession((st) => st.activeChainId);
11059
11033
  const setStep = useAuthStore((st) => st.setStep);
11060
11034
  const setAlert = useAuthStore((st) => st.setAlert);
11061
- const createSessionWithKeyshare = (0, import_react22.useCallback)(
11035
+ const createSessionWithKeyshare = (0, import_react21.useCallback)(
11062
11036
  async (userId, hasServerKeyshare, isNewUser) => {
11063
11037
  const { setStatus } = useSession.getState();
11064
11038
  try {
@@ -11100,7 +11074,7 @@ function useAuthMenuHandlers() {
11100
11074
  },
11101
11075
  [usePaymaster, activeChainId]
11102
11076
  );
11103
- const onAuthSuccess = (0, import_react22.useCallback)(async () => {
11077
+ const onAuthSuccess = (0, import_react21.useCallback)(async () => {
11104
11078
  const {
11105
11079
  //
11106
11080
  setSession,
@@ -11208,7 +11182,7 @@ function useAuthMenuHandlers() {
11208
11182
  setStep("signin");
11209
11183
  }
11210
11184
  }, [qc, setStep, setAlert, createSessionWithKeyshare]);
11211
- const goBackToSignIn = (0, import_react22.useCallback)(() => {
11185
+ const goBackToSignIn = (0, import_react21.useCallback)(() => {
11212
11186
  setStep("signin");
11213
11187
  setAlert(null);
11214
11188
  if (telegramCleanup) {
@@ -11222,13 +11196,13 @@ function useAuthMenuHandlers() {
11222
11196
  goBackToSignIn
11223
11197
  };
11224
11198
  }
11225
- var import_react_query6, import_react22;
11199
+ var import_react_query6, import_react21;
11226
11200
  var init_useAuthMenuHanders = __esm({
11227
11201
  "src/internal/components/AuthMenu/useAuthMenuHanders.ts"() {
11228
11202
  init_ProviderContext();
11229
11203
  init_SessionContext();
11230
11204
  import_react_query6 = require("@tanstack/react-query");
11231
- import_react22 = require("react");
11205
+ import_react21 = require("react");
11232
11206
  init_auth();
11233
11207
  init_useLayoutDataStore();
11234
11208
  init_useLayoutStore();
@@ -11238,11 +11212,11 @@ var init_useAuthMenuHanders = __esm({
11238
11212
  });
11239
11213
 
11240
11214
  // src/internal/components/AuthMenu/VerifyStep/VerificationCodeInput.tsx
11241
- var import_react23, import_jsx_runtime24, getRemainingSeconds, VerificationCodeInput;
11215
+ var import_react22, import_jsx_runtime24, getRemainingSeconds, VerificationCodeInput;
11242
11216
  var init_VerificationCodeInput = __esm({
11243
11217
  "src/internal/components/AuthMenu/VerifyStep/VerificationCodeInput.tsx"() {
11244
11218
  init_i18n();
11245
- import_react23 = require("react");
11219
+ import_react22 = require("react");
11246
11220
  init_utils();
11247
11221
  init_button();
11248
11222
  init_useAuthStore();
@@ -11252,8 +11226,8 @@ var init_VerificationCodeInput = __esm({
11252
11226
  const { onVerifyCode, onResendCode, isLoading, expiresAt } = props;
11253
11227
  const { t } = useT();
11254
11228
  const setAlert = useAuthStore((st) => st.setAlert);
11255
- const [timeLeft, setTimeLeft] = (0, import_react23.useState)(() => getRemainingSeconds(expiresAt));
11256
- (0, import_react23.useEffect)(() => {
11229
+ const [timeLeft, setTimeLeft] = (0, import_react22.useState)(() => getRemainingSeconds(expiresAt));
11230
+ (0, import_react22.useEffect)(() => {
11257
11231
  let intervalId;
11258
11232
  const syncTimeLeft = () => {
11259
11233
  const remaining = getRemainingSeconds(expiresAt);
@@ -11274,10 +11248,10 @@ var init_VerificationCodeInput = __esm({
11274
11248
  document.removeEventListener("visibilitychange", syncTimeLeft);
11275
11249
  };
11276
11250
  }, [expiresAt]);
11277
- const lastSubmittedRef = (0, import_react23.useRef)(null);
11278
- const inputsRef = (0, import_react23.useRef)([]);
11279
- const [digits, setDigits] = (0, import_react23.useState)(["", "", "", "", "", ""]);
11280
- (0, import_react23.useEffect)(() => {
11251
+ const lastSubmittedRef = (0, import_react22.useRef)(null);
11252
+ const inputsRef = (0, import_react22.useRef)([]);
11253
+ const [digits, setDigits] = (0, import_react22.useState)(["", "", "", "", "", ""]);
11254
+ (0, import_react22.useEffect)(() => {
11281
11255
  const code = digits.join("");
11282
11256
  if (code.length === 6 && digits.every((d) => d !== "") && !isLoading) {
11283
11257
  if (lastSubmittedRef.current !== code) {
@@ -11286,7 +11260,7 @@ var init_VerificationCodeInput = __esm({
11286
11260
  }
11287
11261
  }
11288
11262
  }, [digits, isLoading, onVerifyCode]);
11289
- (0, import_react23.useEffect)(() => {
11263
+ (0, import_react22.useEffect)(() => {
11290
11264
  const t2 = setTimeout(() => {
11291
11265
  inputsRef.current[0]?.focus();
11292
11266
  }, 0);
@@ -11411,7 +11385,7 @@ function VerifyStep(props) {
11411
11385
  setEmailChallenge,
11412
11386
  setAlert
11413
11387
  } = useAuthStore();
11414
- const [resendCount, setResendCount] = (0, import_react24.useState)(0);
11388
+ const [resendCount, setResendCount] = (0, import_react23.useState)(0);
11415
11389
  const { mutate: onVerifyCode, isPending: isCodeVerifying } = (0, import_react_query7.useMutation)({
11416
11390
  mutationFn: async (code) => {
11417
11391
  setIsLoading(true);
@@ -11563,7 +11537,7 @@ function VerifyStep(props) {
11563
11537
  )
11564
11538
  ] });
11565
11539
  }
11566
- var import_react_query7, import_lucide_react10, import_react24, import_jsx_runtime25;
11540
+ var import_react_query7, import_lucide_react10, import_react23, import_jsx_runtime25;
11567
11541
  var init_VerifyStep = __esm({
11568
11542
  "src/internal/components/AuthMenu/VerifyStep/VerifyStep.tsx"() {
11569
11543
  init_initial();
@@ -11572,7 +11546,7 @@ var init_VerifyStep = __esm({
11572
11546
  init_i18n();
11573
11547
  import_react_query7 = require("@tanstack/react-query");
11574
11548
  import_lucide_react10 = require("lucide-react");
11575
- import_react24 = require("react");
11549
+ import_react23 = require("react");
11576
11550
  init_icons();
11577
11551
  init_projectId();
11578
11552
  init_button();
@@ -11591,13 +11565,13 @@ var init_VerifyStep2 = __esm({
11591
11565
  });
11592
11566
 
11593
11567
  // src/internal/components/AuthMenu/AuthMenu.tsx
11594
- var import_lucide_react11, import_react25, import_jsx_runtime26, AuthMenu;
11568
+ var import_lucide_react11, import_react24, import_jsx_runtime26, AuthMenu;
11595
11569
  var init_AuthMenu = __esm({
11596
11570
  "src/internal/components/AuthMenu/AuthMenu.tsx"() {
11597
11571
  init_SessionContext();
11598
11572
  init_useT();
11599
11573
  import_lucide_react11 = require("lucide-react");
11600
- import_react25 = require("react");
11574
+ import_react24 = require("react");
11601
11575
  init_auth();
11602
11576
  init_constants();
11603
11577
  init_useLayoutDataStore();
@@ -11619,7 +11593,7 @@ var init_AuthMenu = __esm({
11619
11593
  const step = useAuthStore((st) => st.step);
11620
11594
  const alert2 = useAuthStore((st) => st.alert);
11621
11595
  const { pendingLoginResponseRef, onAuthSuccess, goBackToSignIn } = useAuthMenuHandlers();
11622
- (0, import_react25.useEffect)(() => {
11596
+ (0, import_react24.useEffect)(() => {
11623
11597
  if (!pendingWalletLogin) return;
11624
11598
  const loginResponse = pendingWalletLogin;
11625
11599
  useLayoutDataStore.getState().setPendingWalletLogin(null);
@@ -11629,7 +11603,7 @@ var init_AuthMenu = __esm({
11629
11603
  onAuthSuccess();
11630
11604
  });
11631
11605
  }, [pendingWalletLogin]);
11632
- (0, import_react25.useEffect)(() => {
11606
+ (0, import_react24.useEffect)(() => {
11633
11607
  useLayoutDataStore.getState().setTransitionPageHeight(DEFAULT_AUTH_MENU_HEIGHT);
11634
11608
  return () => {
11635
11609
  const { setStep, setPasskeyStatus, setEmail, setEmailChallenge, setAlert } = useAuthStore.getState();
@@ -11646,7 +11620,7 @@ var init_AuthMenu = __esm({
11646
11620
  /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "text-sm text-[var(--ui-kit-fg-muted)]", children: "Initializing wallet..." })
11647
11621
  ] });
11648
11622
  }
11649
- const stepContent = (0, import_react25.useMemo)(
11623
+ const stepContent = (0, import_react24.useMemo)(
11650
11624
  () => ({
11651
11625
  "loading": /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(LoadingStep, {}),
11652
11626
  "failed": /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(AuthFailedStep, {}),
@@ -11843,7 +11817,7 @@ function getTooltipYPos(params) {
11843
11817
  function OnboardingOverlay() {
11844
11818
  const { t } = useT();
11845
11819
  const page = useLayoutDataStore((st) => st.page);
11846
- (0, import_react26.useEffect)(() => {
11820
+ (0, import_react25.useEffect)(() => {
11847
11821
  setTimeout(() => {
11848
11822
  if (!page) {
11849
11823
  useOnboardingStore.getState().setMountIntoNode(document.body);
@@ -11861,7 +11835,7 @@ function OnboardingOverlay() {
11861
11835
  const isMobileView = useLayoutStore((st) => st.isMobileView);
11862
11836
  const colorMode = useLayoutStore((st) => st.colorMode);
11863
11837
  const { elRect, mountIntoNode } = useOnboardingStore();
11864
- const [continueCountdown, setContinueCountdown] = (0, import_react26.useState)(null);
11838
+ const [continueCountdown, setContinueCountdown] = (0, import_react25.useState)(null);
11865
11839
  const {
11866
11840
  actions: tourStepActions = [],
11867
11841
  waitSecs = null,
@@ -11869,7 +11843,7 @@ function OnboardingOverlay() {
11869
11843
  description,
11870
11844
  forced = false
11871
11845
  } = onboarder.getCurrentStep() || {};
11872
- const position = (0, import_react26.useMemo)(() => {
11846
+ const position = (0, import_react25.useMemo)(() => {
11873
11847
  const posParams = {
11874
11848
  x: elRect.x,
11875
11849
  y: elRect.y,
@@ -11879,7 +11853,7 @@ function OnboardingOverlay() {
11879
11853
  };
11880
11854
  return { ...getTooltipXPos(posParams), ...getTooltipYPos(posParams) };
11881
11855
  }, [elRect, isMobileView]);
11882
- (0, import_react26.useEffect)(() => {
11856
+ (0, import_react25.useEffect)(() => {
11883
11857
  if (!waitSecs) return;
11884
11858
  setContinueCountdown(waitSecs);
11885
11859
  const countdownInterval = setInterval(() => {
@@ -12021,12 +11995,12 @@ function OnboardingOverlay() {
12021
11995
  mountIntoNode
12022
11996
  );
12023
11997
  }
12024
- var import_lucide_react12, import_react26, import_react_dom2, import_jsx_runtime27, EXPAND, TOOLTIP_MIN_WIDTH, TOP_POS_OFFSET;
11998
+ var import_lucide_react12, import_react25, import_react_dom2, import_jsx_runtime27, EXPAND, TOOLTIP_MIN_WIDTH, TOP_POS_OFFSET;
12025
11999
  var init_OnboardingOverlay = __esm({
12026
12000
  "src/internal/components/Onboarding/OnboardingOverlay.tsx"() {
12027
12001
  init_i18n();
12028
12002
  import_lucide_react12 = require("lucide-react");
12029
- import_react26 = require("react");
12003
+ import_react25 = require("react");
12030
12004
  import_react_dom2 = require("react-dom");
12031
12005
  init_useLayoutDataStore();
12032
12006
  init_useLayoutStore();
@@ -12043,15 +12017,15 @@ var init_OnboardingOverlay = __esm({
12043
12017
 
12044
12018
  // src/internal/components/Onboarding/useOnboardingTouirAvailable.ts
12045
12019
  function useOnboardingTourAvailable(isAvailable) {
12046
- (0, import_react27.useEffect)(() => {
12020
+ (0, import_react26.useEffect)(() => {
12047
12021
  useOnboardingStore.getState().setIsTourAvailable(isAvailable);
12048
12022
  return () => useOnboardingStore.getState().setIsTourAvailable(false);
12049
12023
  }, [isAvailable]);
12050
12024
  }
12051
- var import_react27;
12025
+ var import_react26;
12052
12026
  var init_useOnboardingTouirAvailable = __esm({
12053
12027
  "src/internal/components/Onboarding/useOnboardingTouirAvailable.ts"() {
12054
- import_react27 = require("react");
12028
+ import_react26 = require("react");
12055
12029
  init_useOnboardingStore();
12056
12030
  }
12057
12031
  });
@@ -12067,17 +12041,17 @@ var init_Onboarding = __esm({
12067
12041
  });
12068
12042
 
12069
12043
  // src/internal/components/ui/switch.tsx
12070
- var import_react28, import_jsx_runtime28, Switch;
12044
+ var import_react27, import_jsx_runtime28, Switch;
12071
12045
  var init_switch = __esm({
12072
12046
  "src/internal/components/ui/switch.tsx"() {
12073
- import_react28 = require("react");
12047
+ import_react27 = require("react");
12074
12048
  init_useLayoutStore();
12075
12049
  init_utils();
12076
12050
  import_jsx_runtime28 = require("react/jsx-runtime");
12077
- Switch = (0, import_react28.forwardRef)((props, ref) => {
12051
+ Switch = (0, import_react27.forwardRef)((props, ref) => {
12078
12052
  const { className, labels, ...inputProps } = props;
12079
12053
  const colorMode = useLayoutStore((st) => st.colorMode);
12080
- const [labelW, setLabelW] = (0, import_react28.useState)(0);
12054
+ const [labelW, setLabelW] = (0, import_react27.useState)(0);
12081
12055
  return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
12082
12056
  "div",
12083
12057
  {
@@ -12618,7 +12592,7 @@ var init_priceFormatter = __esm({
12618
12592
 
12619
12593
  // src/internal/components/BuyMenu/useBuyMenuStore.ts
12620
12594
  function useBuyMenuParams() {
12621
- (0, import_react29.useEffect)(() => {
12595
+ (0, import_react28.useEffect)(() => {
12622
12596
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
12623
12597
  if (!pageParams || !(0, import_lodash_es7.keys)(pageParams).length) return;
12624
12598
  const { amount, crypto: crypto2, onRampWidgetRedirected } = pageParams || {};
@@ -12634,11 +12608,11 @@ function useBuyMenuParams() {
12634
12608
  setPageParams(null);
12635
12609
  }, []);
12636
12610
  }
12637
- var import_lodash_es7, import_react29, import_zustand7, import_middleware2, DEFAULT_MENU_SWITCHES, DEFAULT_AMOUNT, DEFAULT_PROVIDER, useBuyMenuStore;
12611
+ var import_lodash_es7, import_react28, import_zustand7, import_middleware2, DEFAULT_MENU_SWITCHES, DEFAULT_AMOUNT, DEFAULT_PROVIDER, useBuyMenuStore;
12638
12612
  var init_useBuyMenuStore = __esm({
12639
12613
  "src/internal/components/BuyMenu/useBuyMenuStore.ts"() {
12640
12614
  import_lodash_es7 = require("lodash-es");
12641
- import_react29 = require("react");
12615
+ import_react28 = require("react");
12642
12616
  import_zustand7 = require("zustand");
12643
12617
  import_middleware2 = require("zustand/middleware");
12644
12618
  init_useLayoutDataStore();
@@ -12757,13 +12731,13 @@ function CryptoSelector(props) {
12757
12731
  const { coins } = props;
12758
12732
  const { t } = useT();
12759
12733
  const chainConfig = useSession((st) => st.chainConfig);
12760
- const [searchValue, setSearchValue] = (0, import_react30.useState)("");
12761
- const [target, setTarget] = (0, import_react30.useState)("");
12762
- const setSearchDebounced = (0, import_react30.useCallback)(
12734
+ const [searchValue, setSearchValue] = (0, import_react29.useState)("");
12735
+ const [target, setTarget] = (0, import_react29.useState)("");
12736
+ const setSearchDebounced = (0, import_react29.useCallback)(
12763
12737
  (0, import_lodash_es8.debounce)((value) => setTarget(value), 1e3),
12764
12738
  []
12765
12739
  );
12766
- const filteredCoins = (0, import_react30.useMemo)(() => {
12740
+ const filteredCoins = (0, import_react29.useMemo)(() => {
12767
12741
  const sorted = [...coins].sort((a, b) => {
12768
12742
  const aIdx = POPULAR_CRYPTOS.indexOf(a.symbol.toUpperCase());
12769
12743
  const bIdx = POPULAR_CRYPTOS.indexOf(b.symbol.toUpperCase());
@@ -12869,7 +12843,7 @@ function CryptoSelectorTrigger(props) {
12869
12843
  }
12870
12844
  );
12871
12845
  }
12872
- var import_lodash_es8, import_lucide_react13, import_react30, import_jsx_runtime41, POPULAR_CRYPTOS;
12846
+ var import_lodash_es8, import_lucide_react13, import_react29, import_jsx_runtime41, POPULAR_CRYPTOS;
12873
12847
  var init_CryptoSelector = __esm({
12874
12848
  "src/internal/components/BuyMenu/components/CryptoSelector.tsx"() {
12875
12849
  init_tokens();
@@ -12878,7 +12852,7 @@ var init_CryptoSelector = __esm({
12878
12852
  init_i18n();
12879
12853
  import_lodash_es8 = require("lodash-es");
12880
12854
  import_lucide_react13 = require("lucide-react");
12881
- import_react30 = require("react");
12855
+ import_react29 = require("react");
12882
12856
  init_priceFormatter();
12883
12857
  init_button();
12884
12858
  init_highlight();
@@ -12980,13 +12954,13 @@ function FiatSelector(props) {
12980
12954
  const { fiats } = props;
12981
12955
  const { t, i18n } = useT();
12982
12956
  const locale = i18n.resolvedLanguage || "en";
12983
- const [searchValue, setSearchValue] = (0, import_react31.useState)("");
12984
- const [target, setTarget] = (0, import_react31.useState)("");
12985
- const setSearchDebounced = (0, import_react31.useCallback)(
12957
+ const [searchValue, setSearchValue] = (0, import_react30.useState)("");
12958
+ const [target, setTarget] = (0, import_react30.useState)("");
12959
+ const setSearchDebounced = (0, import_react30.useCallback)(
12986
12960
  (0, import_lodash_es9.debounce)((value) => setTarget(value), 1e3),
12987
12961
  []
12988
12962
  );
12989
- const filteredFiats = (0, import_react31.useMemo)(() => {
12963
+ const filteredFiats = (0, import_react30.useMemo)(() => {
12990
12964
  const sorted = [...fiats].sort((a, b) => {
12991
12965
  const aIdx = POPULAR_FIATS.indexOf(a.ticker.toUpperCase());
12992
12966
  const bIdx = POPULAR_FIATS.indexOf(b.ticker.toUpperCase());
@@ -13051,13 +13025,13 @@ function FiatSelectorTrigger(props) {
13051
13025
  }
13052
13026
  );
13053
13027
  }
13054
- var import_lodash_es9, import_lucide_react14, import_react31, import_jsx_runtime43, POPULAR_FIATS;
13028
+ var import_lodash_es9, import_lucide_react14, import_react30, import_jsx_runtime43, POPULAR_FIATS;
13055
13029
  var init_FiatSelector = __esm({
13056
13030
  "src/internal/components/BuyMenu/components/FiatSelector.tsx"() {
13057
13031
  init_i18n();
13058
13032
  import_lodash_es9 = require("lodash-es");
13059
13033
  import_lucide_react14 = require("lucide-react");
13060
- import_react31 = require("react");
13034
+ import_react30 = require("react");
13061
13035
  init_button();
13062
13036
  init_highlight();
13063
13037
  init_input();
@@ -13749,7 +13723,7 @@ function BinanceTxHistory() {
13749
13723
  txStatuses: SHOW_STATUSES
13750
13724
  })
13751
13725
  });
13752
- const txList = (0, import_react32.useMemo)(
13726
+ const txList = (0, import_react31.useMemo)(
13753
13727
  () => historyData?.pages?.map((p) => p.data).flat(Infinity) || [],
13754
13728
  [historyData]
13755
13729
  );
@@ -13774,7 +13748,7 @@ function BinanceTxHistory() {
13774
13748
  )
13775
13749
  ] });
13776
13750
  }
13777
- var import_react_query9, import_dayjs2, import_lucide_react17, import_react32, import_jsx_runtime46, TRANSACTIONS_PAGESIZE, SHOW_STATUSES;
13751
+ var import_react_query9, import_dayjs2, import_lucide_react17, import_react31, import_jsx_runtime46, TRANSACTIONS_PAGESIZE, SHOW_STATUSES;
13778
13752
  var init_BinanceTxHistory = __esm({
13779
13753
  "src/internal/components/BuyMenu/binance/BinanceTxHistory.tsx"() {
13780
13754
  init_tokens();
@@ -13784,7 +13758,7 @@ var init_BinanceTxHistory = __esm({
13784
13758
  import_react_query9 = require("@tanstack/react-query");
13785
13759
  import_dayjs2 = __toESM(require("dayjs"), 1);
13786
13760
  import_lucide_react17 = require("lucide-react");
13787
- import_react32 = require("react");
13761
+ import_react31 = require("react");
13788
13762
  init_priceFormatter();
13789
13763
  init_badge();
13790
13764
  init_button();
@@ -13801,8 +13775,8 @@ var init_BinanceTxHistory = __esm({
13801
13775
  // src/internal/components/BuyMenu/binance/useBinanceSseTracing.ts
13802
13776
  function useBinanceSseTxTracing(walletAddress) {
13803
13777
  const qc = (0, import_react_query10.useQueryClient)();
13804
- const debounceRef = (0, import_react33.useRef)(null);
13805
- (0, import_react33.useEffect)(() => {
13778
+ const debounceRef = (0, import_react32.useRef)(null);
13779
+ (0, import_react32.useEffect)(() => {
13806
13780
  if (!walletAddress) return;
13807
13781
  const iframeManager = getIframeManager();
13808
13782
  if (!iframeManager) return;
@@ -13824,11 +13798,11 @@ function useBinanceSseTxTracing(walletAddress) {
13824
13798
  };
13825
13799
  }, [walletAddress, qc]);
13826
13800
  }
13827
- var import_react_query10, import_react33;
13801
+ var import_react_query10, import_react32;
13828
13802
  var init_useBinanceSseTracing = __esm({
13829
13803
  "src/internal/components/BuyMenu/binance/useBinanceSseTracing.ts"() {
13830
13804
  import_react_query10 = require("@tanstack/react-query");
13831
- import_react33 = require("react");
13805
+ import_react32 = require("react");
13832
13806
  init_iframe_manager();
13833
13807
  init_queryKeys();
13834
13808
  init_api2();
@@ -13896,7 +13870,7 @@ function Binance() {
13896
13870
  });
13897
13871
  const paymentModes = paymentModesData?.data?.paymentMethods || [];
13898
13872
  const selectedPaymentMode = paymentModes?.find((el) => getPayMethodID(el) === paymentMode) || null;
13899
- (0, import_react34.useEffect)(() => {
13873
+ (0, import_react33.useEffect)(() => {
13900
13874
  useBuyMenuStore.getState().setMinAmount(Number(selectedPaymentMode?.fiatMinLimit || "0"));
13901
13875
  }, [selectedPaymentMode]);
13902
13876
  const { mutate: estimateQuote, isPending: isQuoteEstimating } = (0, import_react_query11.useMutation)({
@@ -13924,22 +13898,22 @@ function Binance() {
13924
13898
  }
13925
13899
  });
13926
13900
  const availableFiats = (tradingPairsData?.data?.fiatCurrencies || []).map((ticker) => ({ ticker }));
13927
- (0, import_react34.useEffect)(() => {
13901
+ (0, import_react33.useEffect)(() => {
13928
13902
  if (!!selectedFiat || !availableFiats?.length) return;
13929
13903
  const targetFiat = availableFiats.find((item) => PREFERRED_FIATS.includes(item.ticker)) || availableFiats[0];
13930
13904
  useBuyMenuStore.getState().setSelectedFiat(targetFiat.ticker);
13931
13905
  }, [availableFiats, selectedFiat]);
13932
- (0, import_react34.useEffect)(() => {
13906
+ (0, import_react33.useEffect)(() => {
13933
13907
  if (!!selectedCrypto || !networkAvailableCryptoList?.length) return;
13934
13908
  const targetCrypto = networkAvailableCryptoList.find((item) => PREFERRED_CRYPTOS.includes(item.cryptoCurrency)) || networkAvailableCryptoList[0];
13935
13909
  useBuyMenuStore.getState().setSelectedCrypto(targetCrypto.cryptoCurrency);
13936
13910
  }, [networkAvailableCryptoList, selectedCrypto]);
13937
- (0, import_react34.useEffect)(() => {
13911
+ (0, import_react33.useEffect)(() => {
13938
13912
  if (!!paymentMode || !paymentModes.length) return;
13939
13913
  const targetPaymentMode = paymentModes.find((item) => item.payMethodCode === PREFERRED_PAYMENT_METHOD) || paymentModes[0];
13940
13914
  useBinanceStore.getState().setPaymentMode(getPayMethodID(targetPaymentMode));
13941
13915
  }, [paymentModes]);
13942
- (0, import_react34.useEffect)(() => {
13916
+ (0, import_react33.useEffect)(() => {
13943
13917
  return () => {
13944
13918
  useBinanceStore.getState().setPaymentMode(null);
13945
13919
  qc.resetQueries({ queryKey: [QUERY_KEYS2.binanceTradingPairs] });
@@ -14068,7 +14042,7 @@ function Binance() {
14068
14042
  }
14069
14043
  );
14070
14044
  }
14071
- var import_react_query11, import_lucide_react18, import_react34, import_jsx_runtime47, PREFERRED_PAYMENT_METHOD, PREFERRED_FIATS, PREFERRED_CRYPTOS;
14045
+ var import_react_query11, import_lucide_react18, import_react33, import_jsx_runtime47, PREFERRED_PAYMENT_METHOD, PREFERRED_FIATS, PREFERRED_CRYPTOS;
14072
14046
  var init_Binance = __esm({
14073
14047
  "src/internal/components/BuyMenu/binance/Binance.tsx"() {
14074
14048
  init_utils();
@@ -14076,7 +14050,7 @@ var init_Binance = __esm({
14076
14050
  init_i18n();
14077
14051
  import_react_query11 = require("@tanstack/react-query");
14078
14052
  import_lucide_react18 = require("lucide-react");
14079
- import_react34 = require("react");
14053
+ import_react33 = require("react");
14080
14054
  init_Onboarding();
14081
14055
  init_button();
14082
14056
  init_highlight();
@@ -14351,7 +14325,7 @@ function FinchPayTxHistoryItem(props) {
14351
14325
  function FinchPayTxHistory() {
14352
14326
  const { t } = useT();
14353
14327
  const walletAddress = useSession((st) => st.address);
14354
- const [cursor, setCursor] = (0, import_react35.useState)(1);
14328
+ const [cursor, setCursor] = (0, import_react34.useState)(1);
14355
14329
  const {
14356
14330
  data: txData,
14357
14331
  isLoading: isTxDataLoading,
@@ -14373,7 +14347,7 @@ function FinchPayTxHistory() {
14373
14347
  const pageCount = loadedPages[loadedPages.length - 1]?.pageCount || 1;
14374
14348
  const txList = loadedPages.map((p) => p.data)[cursor - 1] || [];
14375
14349
  console.log("[FINCHPAY] txList", txData);
14376
- const handleNextPage = (0, import_react35.useCallback)(
14350
+ const handleNextPage = (0, import_react34.useCallback)(
14377
14351
  async (curCursor, curPageParams) => {
14378
14352
  const maxLoadedPage = Math.max(...curPageParams);
14379
14353
  if (curCursor !== maxLoadedPage) {
@@ -14428,7 +14402,7 @@ function FinchPayTxHistory() {
14428
14402
  ] })
14429
14403
  ] });
14430
14404
  }
14431
- var import_react_query13, import_dayjs3, import_lucide_react20, import_react35, import_jsx_runtime49, TRANSACTIONS_PAGESIZE2;
14405
+ var import_react_query13, import_dayjs3, import_lucide_react20, import_react34, import_jsx_runtime49, TRANSACTIONS_PAGESIZE2;
14432
14406
  var init_FinchPayTxHistory = __esm({
14433
14407
  "src/internal/components/BuyMenu/finchpay/FinchPayTxHistory.tsx"() {
14434
14408
  init_utils();
@@ -14437,7 +14411,7 @@ var init_FinchPayTxHistory = __esm({
14437
14411
  import_react_query13 = require("@tanstack/react-query");
14438
14412
  import_dayjs3 = __toESM(require("dayjs"), 1);
14439
14413
  import_lucide_react20 = require("lucide-react");
14440
- import_react35 = require("react");
14414
+ import_react34 = require("react");
14441
14415
  init_priceFormatter();
14442
14416
  init_badge();
14443
14417
  init_button();
@@ -14464,8 +14438,8 @@ var init_networks = __esm({
14464
14438
  // src/internal/components/BuyMenu/finchpay/useFinchpaySseTxTracing.ts
14465
14439
  function useFinchpaySseTxTracing(walletAddress) {
14466
14440
  const qc = (0, import_react_query14.useQueryClient)();
14467
- const debounceRef = (0, import_react36.useRef)(null);
14468
- (0, import_react36.useEffect)(() => {
14441
+ const debounceRef = (0, import_react35.useRef)(null);
14442
+ (0, import_react35.useEffect)(() => {
14469
14443
  if (!walletAddress) return;
14470
14444
  const iframeManager = getIframeManager();
14471
14445
  if (!iframeManager) return;
@@ -14487,11 +14461,11 @@ function useFinchpaySseTxTracing(walletAddress) {
14487
14461
  };
14488
14462
  }, [walletAddress, qc]);
14489
14463
  }
14490
- var import_react_query14, import_react36;
14464
+ var import_react_query14, import_react35;
14491
14465
  var init_useFinchpaySseTxTracing = __esm({
14492
14466
  "src/internal/components/BuyMenu/finchpay/useFinchpaySseTxTracing.ts"() {
14493
14467
  import_react_query14 = require("@tanstack/react-query");
14494
- import_react36 = require("react");
14468
+ import_react35 = require("react");
14495
14469
  init_iframe_manager();
14496
14470
  init_queryKeys();
14497
14471
  init_api3();
@@ -14589,7 +14563,7 @@ function FinchPay() {
14589
14563
  })
14590
14564
  });
14591
14565
  const minimum = Number(limitsData?.min_amount || "0");
14592
- (0, import_react37.useEffect)(() => {
14566
+ (0, import_react36.useEffect)(() => {
14593
14567
  if (minimum <= 0) return;
14594
14568
  useBuyMenuStore.getState().setMinAmount(minimum);
14595
14569
  }, [minimum]);
@@ -14617,23 +14591,23 @@ function FinchPay() {
14617
14591
  // defaults to CARD estimation, widgetUrl
14618
14592
  })
14619
14593
  });
14620
- (0, import_react37.useEffect)(() => {
14594
+ (0, import_react36.useEffect)(() => {
14621
14595
  const { error: errorTitle, message: errorMessage } = handleErrors([currenciesError, limitsError, estimateError]);
14622
14596
  if (!errorTitle && !errorMessage) return;
14623
14597
  console.error(`[BuyModal][Binance] ${errorTitle}: ${errorMessage}`);
14624
14598
  useBuyMenuStore.getState().setError(errorMessage);
14625
14599
  }, [currenciesError, limitsError, estimateError]);
14626
- (0, import_react37.useEffect)(() => {
14600
+ (0, import_react36.useEffect)(() => {
14627
14601
  if (!!selectedFiat || currenciesData.fiats.length === 0) return;
14628
14602
  const fallbackFiat = currenciesData.fiats[0];
14629
14603
  const targetFiat = currenciesData.fiats.find((f) => f.ticker.toUpperCase() === "USD") || fallbackFiat;
14630
14604
  useBuyMenuStore.getState().setSelectedFiat(targetFiat.ticker);
14631
14605
  }, [currenciesData, selectedFiat]);
14632
- (0, import_react37.useEffect)(() => {
14606
+ (0, import_react36.useEffect)(() => {
14633
14607
  if (!!selectedCrypto || currenciesData.currentNetworkCoins.length === 0) return;
14634
14608
  useBuyMenuStore.getState().setSelectedCrypto(currenciesData.currentNetworkCoins[0].ticker);
14635
14609
  }, [currenciesData, selectedCrypto]);
14636
- (0, import_react37.useEffect)(() => {
14610
+ (0, import_react36.useEffect)(() => {
14637
14611
  return () => {
14638
14612
  qc.resetQueries({ queryKey: [QUERY_KEYS2.finchPayCurrencies] });
14639
14613
  qc.resetQueries({ queryKey: [QUERY_KEYS2.finchPayLimits] });
@@ -14755,7 +14729,7 @@ function FinchPay() {
14755
14729
  )
14756
14730
  ] });
14757
14731
  }
14758
- var import_react_query15, import_lucide_react21, import_react37, import_jsx_runtime50;
14732
+ var import_react_query15, import_lucide_react21, import_react36, import_jsx_runtime50;
14759
14733
  var init_FinchPay = __esm({
14760
14734
  "src/internal/components/BuyMenu/finchpay/FinchPay.tsx"() {
14761
14735
  init_priceFormatter();
@@ -14764,7 +14738,7 @@ var init_FinchPay = __esm({
14764
14738
  init_i18n();
14765
14739
  import_react_query15 = require("@tanstack/react-query");
14766
14740
  import_lucide_react21 = require("lucide-react");
14767
- import_react37 = require("react");
14741
+ import_react36 = require("react");
14768
14742
  init_button();
14769
14743
  init_highlight();
14770
14744
  init_input();
@@ -14893,20 +14867,20 @@ var init_ProviderSelector = __esm({
14893
14867
  });
14894
14868
 
14895
14869
  // src/internal/components/BuyMenu/useHandleInputAmount.ts
14896
- var import_react38, ON_INPUT_QUERY_DELAY, useHandleInputAmount;
14870
+ var import_react37, ON_INPUT_QUERY_DELAY, useHandleInputAmount;
14897
14871
  var init_useHandleInputAmount = __esm({
14898
14872
  "src/internal/components/BuyMenu/useHandleInputAmount.ts"() {
14899
- import_react38 = require("react");
14873
+ import_react37 = require("react");
14900
14874
  init_contants();
14901
14875
  init_useBuyMenuStore();
14902
14876
  ON_INPUT_QUERY_DELAY = 1500;
14903
14877
  useHandleInputAmount = () => {
14904
- const lastRampProviderRef = (0, import_react38.useRef)(DEFAULT_PROVIDER2);
14878
+ const lastRampProviderRef = (0, import_react37.useRef)(DEFAULT_PROVIDER2);
14905
14879
  const rampProvider = useBuyMenuStore((st) => st.rampProvider);
14906
14880
  const srcInputAmount = useBuyMenuStore((st) => st.srcInputAmount);
14907
14881
  const minAmount = useBuyMenuStore((st) => st.minAmount);
14908
- const queryAmountTimer = (0, import_react38.useRef)(null);
14909
- (0, import_react38.useEffect)(() => {
14882
+ const queryAmountTimer = (0, import_react37.useRef)(null);
14883
+ (0, import_react37.useEffect)(() => {
14910
14884
  if (queryAmountTimer.current) clearTimeout(queryAmountTimer.current);
14911
14885
  queryAmountTimer.current = setTimeout(() => {
14912
14886
  const checkedValue = Math.ceil(Math.max(Number(srcInputAmount), Number(minAmount)));
@@ -14914,7 +14888,7 @@ var init_useHandleInputAmount = __esm({
14914
14888
  useBuyMenuStore.getState().setSrcQueryAmount(checkedValue);
14915
14889
  }, ON_INPUT_QUERY_DELAY);
14916
14890
  }, [minAmount, srcInputAmount]);
14917
- (0, import_react38.useEffect)(() => {
14891
+ (0, import_react37.useEffect)(() => {
14918
14892
  if (lastRampProviderRef.current === rampProvider) return;
14919
14893
  const {
14920
14894
  setIsProviderSummary,
@@ -15408,10 +15382,10 @@ function ChainsMenu() {
15408
15382
  const { t } = useT();
15409
15383
  const config = useProviderConfig().config;
15410
15384
  const activeChainId = useSession((st) => st.activeChainId);
15411
- const [isTestnets, setIsTestnets] = (0, import_react39.useState)(false);
15412
- const [nextChainId, setNextChainId] = (0, import_react39.useState)(null);
15385
+ const [isTestnets, setIsTestnets] = (0, import_react38.useState)(false);
15386
+ const [nextChainId, setNextChainId] = (0, import_react38.useState)(null);
15413
15387
  useOnboardingTourAvailable(true);
15414
- const visibleNetworks = (0, import_react39.useMemo)(() => {
15388
+ const visibleNetworks = (0, import_react38.useMemo)(() => {
15415
15389
  return NETWORK_OPTIONS.filter(
15416
15390
  (option) => option.isActive && (isTestnets ? true : import_read15.SUPPORTED_MAINNETS.includes(option.chainId))
15417
15391
  );
@@ -15478,7 +15452,7 @@ function ChainsMenu() {
15478
15452
  )) })
15479
15453
  ] });
15480
15454
  }
15481
- var import_core3, import_read15, import_react_query16, import_lucide_react24, import_react39, import_jsx_runtime60;
15455
+ var import_core3, import_read15, import_react_query16, import_lucide_react24, import_react38, import_jsx_runtime60;
15482
15456
  var init_ChainsMenu = __esm({
15483
15457
  "src/internal/components/ChainsMenu/ChainsMenu.tsx"() {
15484
15458
  init_networks3();
@@ -15489,7 +15463,7 @@ var init_ChainsMenu = __esm({
15489
15463
  import_read15 = require("@embarkai/core/read");
15490
15464
  import_react_query16 = require("@tanstack/react-query");
15491
15465
  import_lucide_react24 = require("lucide-react");
15492
- import_react39 = require("react");
15466
+ import_react38 = require("react");
15493
15467
  init_resolve_paymaster();
15494
15468
  init_useLayoutDataStore();
15495
15469
  init_Expandable2();
@@ -15866,16 +15840,16 @@ function useLinkedProfiles() {
15866
15840
  }
15867
15841
  });
15868
15842
  const { profiles = [], avatar = null } = data || {};
15869
- const refresh = (0, import_react40.useCallback)(async () => {
15843
+ const refresh = (0, import_react39.useCallback)(async () => {
15870
15844
  await qc.invalidateQueries({ queryKey: [LINKED_PROFILES_QUERY_KEY, address] });
15871
15845
  }, [qc, address]);
15872
15846
  return { profiles, avatar, isLoading, isFetching, error, refresh };
15873
15847
  }
15874
- var import_react_query17, import_react40, LINKED_PROFILES_QUERY_KEY;
15848
+ var import_react_query17, import_react39, LINKED_PROFILES_QUERY_KEY;
15875
15849
  var init_linkedProfiles = __esm({
15876
15850
  "src/modules/linkedProfiles.ts"() {
15877
15851
  import_react_query17 = require("@tanstack/react-query");
15878
- import_react40 = require("react");
15852
+ import_react39 = require("react");
15879
15853
  init_SessionContext();
15880
15854
  init_auth();
15881
15855
  init_common();
@@ -16613,7 +16587,7 @@ function useLinkSocial() {
16613
16587
  } = useProviderConfig();
16614
16588
  const setPage = useLayoutDataStore((st) => st.setPage);
16615
16589
  const { providerType, linkIsLoading, setProviderType, setAlert, setLinkIsLoading } = useManageWalletStore();
16616
- const handleLinkSocialProvider = import_react41.default.useCallback(
16590
+ const handleLinkSocialProvider = import_react40.default.useCallback(
16617
16591
  async (providerIdRaw) => {
16618
16592
  const providerKey = providerIdRaw.toLowerCase();
16619
16593
  const normalizedKey = providerKey === "twitter" ? "x" : providerKey;
@@ -16671,8 +16645,8 @@ function useLinkSocial() {
16671
16645
  },
16672
16646
  [config.social?.providers]
16673
16647
  );
16674
- const [socialLinkStarted, setSocialLinkStarted] = import_react41.default.useState(false);
16675
- (0, import_react41.useEffect)(() => {
16648
+ const [socialLinkStarted, setSocialLinkStarted] = import_react40.default.useState(false);
16649
+ (0, import_react40.useEffect)(() => {
16676
16650
  const key = providerType?.toLowerCase();
16677
16651
  console.log("[useLinkSocial] Effect triggered:", { key, linkIsLoading, socialLinkStarted });
16678
16652
  if (key && key !== "telegram" && key !== "email" && key !== "passkey" && key !== "wallet") {
@@ -16686,7 +16660,7 @@ function useLinkSocial() {
16686
16660
  }
16687
16661
  }, [providerType, linkIsLoading, socialLinkStarted, handleLinkSocialProvider]);
16688
16662
  }
16689
- var import_react_query22, import_react41;
16663
+ var import_react_query22, import_react40;
16690
16664
  var init_useLinkSocial = __esm({
16691
16665
  "src/internal/components/ManageWalletMenu/hooks/useLinkSocial.ts"() {
16692
16666
  init_useLayoutDataStore();
@@ -16694,7 +16668,7 @@ var init_useLinkSocial = __esm({
16694
16668
  init_SessionContext();
16695
16669
  init_linkedProfiles();
16696
16670
  import_react_query22 = require("@tanstack/react-query");
16697
- import_react41 = __toESM(require("react"), 1);
16671
+ import_react40 = __toESM(require("react"), 1);
16698
16672
  init_auth();
16699
16673
  init_telegramBrowser();
16700
16674
  init_useProvidersList();
@@ -16762,7 +16736,7 @@ function useLinkTelegram() {
16762
16736
  const address = useSession((st) => st.address);
16763
16737
  const { providerType, linkIsLoading, setLinkIsLoading, setProviderType, setAlert } = useManageWalletStore();
16764
16738
  const setPage = useLayoutDataStore((st) => st.setPage);
16765
- const handleLinkTelegram = (0, import_react42.useCallback)(async () => {
16739
+ const handleLinkTelegram = (0, import_react41.useCallback)(async () => {
16766
16740
  try {
16767
16741
  if (shouldBlockSocialAuthInTelegram("telegram")) {
16768
16742
  setAlert(buildTelegramBrowserRestriction("Telegram", "linking"));
@@ -16809,8 +16783,8 @@ function useLinkTelegram() {
16809
16783
  setLinkIsLoading(false);
16810
16784
  }
16811
16785
  }, [config.social?.providers]);
16812
- const [telegramLinkStarted, setTelegramLinkStarted] = (0, import_react42.useState)(false);
16813
- (0, import_react42.useEffect)(() => {
16786
+ const [telegramLinkStarted, setTelegramLinkStarted] = (0, import_react41.useState)(false);
16787
+ (0, import_react41.useEffect)(() => {
16814
16788
  console.log("[useLinkTelegram] Effect triggered:", { providerType, linkIsLoading, telegramLinkStarted });
16815
16789
  if (providerType === "telegram" && !linkIsLoading && !telegramLinkStarted) {
16816
16790
  console.log("[useLinkTelegram] Starting Telegram link flow");
@@ -16818,20 +16792,20 @@ function useLinkTelegram() {
16818
16792
  handleLinkTelegram();
16819
16793
  }
16820
16794
  }, [providerType, handleLinkTelegram, linkIsLoading, telegramLinkStarted]);
16821
- (0, import_react42.useEffect)(() => {
16795
+ (0, import_react41.useEffect)(() => {
16822
16796
  if (providerType !== "telegram") {
16823
16797
  setTelegramLinkStarted(false);
16824
16798
  }
16825
16799
  }, [providerType]);
16826
16800
  }
16827
- var import_react_query23, import_react42;
16801
+ var import_react_query23, import_react41;
16828
16802
  var init_useLinkTelegram = __esm({
16829
16803
  "src/internal/components/ManageWalletMenu/hooks/useLinkTelegram.ts"() {
16830
16804
  init_ProviderContext();
16831
16805
  init_SessionContext();
16832
16806
  init_linkedProfiles();
16833
16807
  import_react_query23 = require("@tanstack/react-query");
16834
- import_react42 = require("react");
16808
+ import_react41 = require("react");
16835
16809
  init_telegram2();
16836
16810
  init_useLayoutDataStore();
16837
16811
  init_telegramBrowser();
@@ -17031,7 +17005,7 @@ function ManageWalletMenu() {
17031
17005
  } = useManageWalletStore();
17032
17006
  const configuredProviders = getConfiguredProviders(config.current);
17033
17007
  const { data: providers = [], isLoading: isProvidersLoading, error: providersError } = useProvidersList();
17034
- const renderProviders = (0, import_react43.useMemo)(() => {
17008
+ const renderProviders = (0, import_react42.useMemo)(() => {
17035
17009
  const normalizeProviderName = (name) => {
17036
17010
  if (name === "x") return "twitter";
17037
17011
  return name;
@@ -17156,7 +17130,7 @@ function ManageWalletMenu() {
17156
17130
  ] })
17157
17131
  ] });
17158
17132
  }
17159
- var import_lodash_es11, import_lucide_react31, import_react43, import_jsx_runtime72, POSSIBLE_PROVIDERS, MULTI_PROVIDERS;
17133
+ var import_lodash_es11, import_lucide_react31, import_react42, import_jsx_runtime72, POSSIBLE_PROVIDERS, MULTI_PROVIDERS;
17160
17134
  var init_ManageWallet = __esm({
17161
17135
  "src/internal/components/ManageWalletMenu/ManageWallet.tsx"() {
17162
17136
  init_useLayoutDataStore();
@@ -17165,7 +17139,7 @@ var init_ManageWallet = __esm({
17165
17139
  init_i18n();
17166
17140
  import_lodash_es11 = require("lodash-es");
17167
17141
  import_lucide_react31 = require("lucide-react");
17168
- import_react43 = require("react");
17142
+ import_react42 = require("react");
17169
17143
  init_constants();
17170
17144
  init_telegramBrowser();
17171
17145
  init_Expandable2();
@@ -17203,7 +17177,7 @@ function UnlinkProviderMenu() {
17203
17177
  const { t } = useT();
17204
17178
  const setPage = useLayoutDataStore((st) => st.setPage);
17205
17179
  const { confirmUnlink, setConfirmUnlink, setAlert } = useManageWalletStore();
17206
- const [confirmInput, setConfirmInput] = (0, import_react44.useState)("");
17180
+ const [confirmInput, setConfirmInput] = (0, import_react43.useState)("");
17207
17181
  const { mutate: handleUnlinkProvider, isPending: isProviderUnlinking } = (0, import_react_query24.useMutation)({
17208
17182
  mutationFn: async () => {
17209
17183
  if (!confirmUnlink) {
@@ -17285,7 +17259,7 @@ function UnlinkProviderMenu() {
17285
17259
  ] })
17286
17260
  ] });
17287
17261
  }
17288
- var import_react_query24, import_lucide_react32, import_react44, import_wagmi2, import_jsx_runtime73;
17262
+ var import_react_query24, import_lucide_react32, import_react43, import_wagmi2, import_jsx_runtime73;
17289
17263
  var init_UnlinkProviderMenu = __esm({
17290
17264
  "src/internal/components/ManageWalletMenu/UnlinkProviderMenu.tsx"() {
17291
17265
  init_useLayoutDataStore();
@@ -17295,7 +17269,7 @@ var init_UnlinkProviderMenu = __esm({
17295
17269
  init_linkedProfiles();
17296
17270
  import_react_query24 = require("@tanstack/react-query");
17297
17271
  import_lucide_react32 = require("lucide-react");
17298
- import_react44 = require("react");
17272
+ import_react43 = require("react");
17299
17273
  import_wagmi2 = require("wagmi");
17300
17274
  init_auth();
17301
17275
  init_useExternalWalletStore();
@@ -17336,8 +17310,8 @@ var init_ManageWalletMenu = __esm({
17336
17310
 
17337
17311
  // src/internal/components/ConnectExternalWalletMenu/useConnectExternalWalletMenuParams.ts
17338
17312
  function useConnectExternalWalletMenuParams() {
17339
- const paramsRef = (0, import_react45.useRef)(null);
17340
- (0, import_react45.useEffect)(() => {
17313
+ const paramsRef = (0, import_react44.useRef)(null);
17314
+ (0, import_react44.useEffect)(() => {
17341
17315
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
17342
17316
  if (!pageParams || !(0, import_lodash_es12.keys)(pageParams).length) return;
17343
17317
  paramsRef.current = pageParams;
@@ -17345,11 +17319,11 @@ function useConnectExternalWalletMenuParams() {
17345
17319
  }, []);
17346
17320
  return paramsRef;
17347
17321
  }
17348
- var import_lodash_es12, import_react45;
17322
+ var import_lodash_es12, import_react44;
17349
17323
  var init_useConnectExternalWalletMenuParams = __esm({
17350
17324
  "src/internal/components/ConnectExternalWalletMenu/useConnectExternalWalletMenuParams.ts"() {
17351
17325
  import_lodash_es12 = require("lodash-es");
17352
- import_react45 = require("react");
17326
+ import_react44 = require("react");
17353
17327
  init_useLayoutDataStore();
17354
17328
  }
17355
17329
  });
@@ -17360,18 +17334,18 @@ function hasInjectedWallet() {
17360
17334
  return mipdStore.getProviders().length > 0 || !!window.ethereum;
17361
17335
  }
17362
17336
  function useHasInjectedWallet() {
17363
- return (0, import_react46.useSyncExternalStore)(
17337
+ return (0, import_react45.useSyncExternalStore)(
17364
17338
  (onStoreChange) => mipdStore?.subscribe(onStoreChange) ?? (() => {
17365
17339
  }),
17366
17340
  hasInjectedWallet,
17367
17341
  () => false
17368
17342
  );
17369
17343
  }
17370
- var import_mipd, import_react46, mipdStore;
17344
+ var import_mipd, import_react45, mipdStore;
17371
17345
  var init_useHasInjectedWallet = __esm({
17372
17346
  "src/internal/components/ConnectExternalWalletMenu/useHasInjectedWallet.ts"() {
17373
17347
  import_mipd = require("mipd");
17374
- import_react46 = require("react");
17348
+ import_react45 = require("react");
17375
17349
  mipdStore = typeof window !== "undefined" ? (0, import_mipd.createStore)() : void 0;
17376
17350
  }
17377
17351
  });
@@ -17399,7 +17373,7 @@ function ConnectExternalWalletMenu() {
17399
17373
  const { mutateAsync: signMessageAsync } = (0, import_wagmi3.useSignMessage)();
17400
17374
  const { mutateAsync: switchChainAsync } = (0, import_wagmi3.useSwitchChain)();
17401
17375
  const { mutateAsync: switchConnectionAsync } = (0, import_wagmi3.useSwitchConnection)();
17402
- const [isPreparingConnect, setIsPreparingConnect] = (0, import_react47.useState)(false);
17376
+ const [isPreparingConnect, setIsPreparingConnect] = (0, import_react46.useState)(false);
17403
17377
  const signOnSupportedChain = async (params) => {
17404
17378
  const { connector, account, message } = params;
17405
17379
  const signOnce = async (viaFallback = false) => {
@@ -17425,7 +17399,7 @@ function ConnectExternalWalletMenu() {
17425
17399
  queryKey: [PROVIDERS_QUERY_KEY, embarkAiAddress],
17426
17400
  queryFn: async () => getLinkedProviders()
17427
17401
  });
17428
- const [connectError, setConnectError] = (0, import_react47.useState)(null);
17402
+ const [connectError, setConnectError] = (0, import_react46.useState)(null);
17429
17403
  const { mutateAsync: onLinkingComplete } = (0, import_react_query25.useMutation)({
17430
17404
  mutationFn: async (success) => {
17431
17405
  useManageWalletStore.getState().setProviderType(null);
@@ -17579,7 +17553,7 @@ function ConnectExternalWalletMenu() {
17579
17553
  }, 100);
17580
17554
  await dropFailedConnectorSession(error, connector, wagmiConfig3);
17581
17555
  }
17582
- const visibleConnectors = (0, import_react47.useMemo)(() => {
17556
+ const visibleConnectors = (0, import_react46.useMemo)(() => {
17583
17557
  const seen = /* @__PURE__ */ new Set();
17584
17558
  const unique = connectors.filter((connector) => {
17585
17559
  const skipConnector = seen.has(connector.uid);
@@ -17597,7 +17571,7 @@ function ConnectExternalWalletMenu() {
17597
17571
  (connector) => allowed.includes(connector.id.toLowerCase()) || allowed.includes(connector.name.toLowerCase())
17598
17572
  );
17599
17573
  }, [connectors, allowedWallets, hasInjectedWallet2]);
17600
- const getInstructionSteps = (0, import_react47.useCallback)(() => {
17574
+ const getInstructionSteps = (0, import_react46.useCallback)(() => {
17601
17575
  const connectFlowType = getConnectFlowType({
17602
17576
  isEmbarkAI: !!embarkAiAddress,
17603
17577
  connectFlow: menuParams.current?.connectFlowType || "auth"
@@ -17661,14 +17635,7 @@ function ConnectExternalWalletMenu() {
17661
17635
  } finally {
17662
17636
  setIsPreparingConnect(false);
17663
17637
  }
17664
- switch (true) {
17665
- case (connector.id === "metaMaskSDK" && !hasInjectedWallet2):
17666
- closeEmbarkAI();
17667
- break;
17668
- default:
17669
- useLayoutStore.getState().setIsDialogForced(true);
17670
- break;
17671
- }
17638
+ useLayoutStore.getState().setIsDialogForced(true);
17672
17639
  try {
17673
17640
  await connect({ connector });
17674
17641
  } catch {
@@ -17712,7 +17679,7 @@ function ConnectExternalWalletMenu() {
17712
17679
  ] })
17713
17680
  ] });
17714
17681
  }
17715
- var import_react_query25, import_lucide_react33, import_react47, import_wagmi3, import_chains, import_jsx_runtime74, SIGN_FALLBACK_CHAIN_ID;
17682
+ var import_react_query25, import_lucide_react33, import_react46, import_wagmi3, import_chains, import_jsx_runtime74, SIGN_FALLBACK_CHAIN_ID;
17716
17683
  var init_ConnectExternalWalletMenu = __esm({
17717
17684
  "src/internal/components/ConnectExternalWalletMenu/ConnectExternalWalletMenu.tsx"() {
17718
17685
  init_ProviderContext();
@@ -17724,7 +17691,7 @@ var init_ConnectExternalWalletMenu = __esm({
17724
17691
  init_linkedProfiles();
17725
17692
  import_react_query25 = require("@tanstack/react-query");
17726
17693
  import_lucide_react33 = require("lucide-react");
17727
- import_react47 = require("react");
17694
+ import_react46 = require("react");
17728
17695
  import_wagmi3 = require("wagmi");
17729
17696
  import_chains = require("wagmi/chains");
17730
17697
  init_common();
@@ -17750,67 +17717,74 @@ function useExternalWalletConnnect(options) {
17750
17717
  const walletMode = config.current?.wallet?.mode;
17751
17718
  const wagmiConfig3 = (0, import_wagmi4.useConfig)();
17752
17719
  const connectors = (0, import_wagmi4.useConnectors)();
17753
- const { mutate: disconnect } = (0, import_wagmi4.useDisconnect)();
17754
- const { mutate: connect, ...restUseConnect } = (0, import_wagmi4.useConnect)({
17755
- mutation: {
17756
- onSuccess: (connectionData, { connector }) => {
17757
- const { chainId, accounts } = connectionData;
17758
- const signingWalletAddress = accounts[0];
17759
- useExternalWalletStore.getState().setExternalWallet({
17760
- address: signingWalletAddress,
17761
- chainId,
17762
- connectorName: connector.name || "Unknown Wallet"
17763
- });
17764
- onSuccess?.({ connected: true, address: signingWalletAddress });
17765
- useLayoutStore.getState().setIsDialogForced(false);
17766
- },
17767
- onError: async (error, { connector }) => {
17768
- await dropFailedConnectorSession(error, connector, wagmiConfig3);
17769
- onError?.({
17770
- connected: false,
17771
- connector: connector?.name || "Unknown Wallet",
17772
- error
17773
- });
17774
- useLayoutStore.getState().setIsDialogForced(false);
17775
- }
17776
- }
17777
- });
17778
- const disconnectExternalWallet = (0, import_react48.useCallback)(() => {
17779
- try {
17780
- disconnect();
17781
- } catch {
17782
- return;
17783
- }
17784
- useExternalWalletStore.getState().clearExternalWallet();
17785
- }, [disconnect]);
17786
- const connectExternalWallet = (0, import_react48.useCallback)(
17720
+ const connections = (0, import_wagmi4.useConnections)();
17721
+ const { mutate: connect, mutateAsync: connectAsync, ...restUseConnect } = (0, import_wagmi4.useConnect)();
17722
+ const { mutateAsync: disconnectAsync } = (0, import_wagmi4.useDisconnect)();
17723
+ const disconnectExternalWallet = (0, import_react47.useCallback)(async () => {
17724
+ await disconnectAsync();
17725
+ const { externalAddress, clearExternalWallet } = useExternalWalletStore.getState();
17726
+ if (!!externalAddress) clearExternalWallet();
17727
+ }, [disconnectAsync]);
17728
+ const connectExternalWallet = (0, import_react47.useCallback)(
17787
17729
  async (walletConnectorType) => {
17788
- disconnectExternalWallet();
17789
17730
  const connector = connectors.find((c) => c.id === walletConnectorType);
17790
17731
  if (!connector) {
17791
- console.error("[ExternalWalletConnnect] Connector not found for:", walletConnectorType);
17732
+ console.warn("[useExternalWalletConnect] Connector not found for:", walletConnectorType);
17792
17733
  return;
17793
17734
  }
17735
+ const existingConnection = connections.find((c) => c.connector.uid === connector.uid);
17736
+ if (!!existingConnection?.connector) {
17737
+ console.warn("[useExternalWalletConnect] Disconnecting existing connection");
17738
+ await disconnectExternalWallet();
17739
+ }
17794
17740
  useLayoutStore.getState().setIsDialogForced(true);
17795
17741
  try {
17796
- await connect({ connector });
17797
- } catch {
17742
+ connect(
17743
+ { connector },
17744
+ {
17745
+ onSuccess: (connectionData, { connector: connector2 }) => {
17746
+ const { chainId, accounts } = connectionData;
17747
+ const signingWalletAddress = accounts[0];
17748
+ useExternalWalletStore.getState().setExternalWallet({
17749
+ address: signingWalletAddress,
17750
+ chainId,
17751
+ connectorName: connector2.name || "Unknown Wallet"
17752
+ });
17753
+ onSuccess?.({ connected: true, address: signingWalletAddress });
17754
+ setTimeout(() => useLayoutStore.getState().setIsDialogForced(false), 100);
17755
+ },
17756
+ onError: async (error, { connector: connector2 }) => {
17757
+ await dropFailedConnectorSession(error, connector2, wagmiConfig3);
17758
+ onError?.({
17759
+ connected: false,
17760
+ connector: connector2?.name || "Unknown Wallet",
17761
+ error
17762
+ });
17763
+ setTimeout(() => useLayoutStore.getState().setIsDialogForced(false), 100);
17764
+ }
17765
+ }
17766
+ );
17767
+ } catch (connectionError) {
17768
+ console.warn("[useExternalWalletConnect] Error:", connectionError);
17769
+ return;
17798
17770
  }
17799
17771
  },
17800
- [connectors]
17772
+ [connections, connectors, onSuccess, onError]
17801
17773
  );
17802
17774
  return {
17803
17775
  isAvailable: walletMode === "direct" || walletMode === "both",
17804
17776
  mutate: connectExternalWallet,
17777
+ mutateAsync: connectExternalWallet,
17805
17778
  disconnect: disconnectExternalWallet,
17806
- ...restUseConnect
17779
+ ...(0, import_lodash_es13.omit)(restUseConnect, ["mutate", "mutateAsync"])
17807
17780
  };
17808
17781
  }
17809
- var import_react48, import_wagmi4;
17782
+ var import_lodash_es13, import_react47, import_wagmi4;
17810
17783
  var init_useExternalWalletConnect = __esm({
17811
17784
  "src/internal/components/ConnectExternalWalletMenu/useExternalWalletConnect.ts"() {
17812
17785
  init_ProviderContext();
17813
- import_react48 = require("react");
17786
+ import_lodash_es13 = require("lodash-es");
17787
+ import_react47 = require("react");
17814
17788
  import_wagmi4 = require("wagmi");
17815
17789
  init_useLayoutStore();
17816
17790
  init_connect_errors();
@@ -17903,8 +17877,8 @@ function getErrorMessage(err) {
17903
17877
  function DeviceLinkScreen() {
17904
17878
  const setPage = useLayoutDataStore((s) => s.setPage);
17905
17879
  const { mutate: link, isPending } = useLinkDevice();
17906
- const [code, setCode] = (0, import_react49.useState)("");
17907
- const [error, setError] = (0, import_react49.useState)(null);
17880
+ const [code, setCode] = (0, import_react48.useState)("");
17881
+ const [error, setError] = (0, import_react48.useState)(null);
17908
17882
  const isValid = code.length === 6 && VALID_CHARS.test(code);
17909
17883
  function handleCodeChange(value) {
17910
17884
  const upper = value.toUpperCase().slice(0, 6);
@@ -17946,11 +17920,11 @@ function DeviceLinkScreen() {
17946
17920
  /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Button, { variant: "default", size: "large", className: "w-full", disabled: !isValid || isPending, onClick: handleLink, children: isPending ? /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react34.Loader2, { className: "w-4 h-4 animate-spin" }) : "Link" })
17947
17921
  ] });
17948
17922
  }
17949
- var import_lucide_react34, import_react49, import_jsx_runtime75, VALID_CHARS;
17923
+ var import_lucide_react34, import_react48, import_jsx_runtime75, VALID_CHARS;
17950
17924
  var init_DeviceLinkScreen = __esm({
17951
17925
  "src/internal/components/DevicesMenu/DeviceLinkScreen.tsx"() {
17952
17926
  import_lucide_react34 = require("lucide-react");
17953
- import_react49 = require("react");
17927
+ import_react48 = require("react");
17954
17928
  init_devices();
17955
17929
  init_useLayoutDataStore();
17956
17930
  init_Expandable2();
@@ -18489,19 +18463,19 @@ function DeviceManageScreen() {
18489
18463
  const userId = session?.mpcUserId || "";
18490
18464
  const deviceId = pageParams?.deviceId;
18491
18465
  const deviceName = pageParams?.deviceName;
18492
- const guardianRef = (0, import_react50.useRef)(null);
18493
- const [screen, setScreen] = (0, import_react50.useState)({ step: "connecting" });
18494
- const [actionState, setActionState] = (0, import_react50.useState)(null);
18495
- const [password, setPassword] = (0, import_react50.useState)("");
18496
- const [statusMessage, setStatusMessage] = (0, import_react50.useState)(null);
18497
- const [errorMessage, setErrorMessage] = (0, import_react50.useState)(null);
18498
- const [waitingConfirm, setWaitingConfirm] = (0, import_react50.useState)(false);
18499
- (0, import_react50.useEffect)(() => {
18466
+ const guardianRef = (0, import_react49.useRef)(null);
18467
+ const [screen, setScreen] = (0, import_react49.useState)({ step: "connecting" });
18468
+ const [actionState, setActionState] = (0, import_react49.useState)(null);
18469
+ const [password, setPassword] = (0, import_react49.useState)("");
18470
+ const [statusMessage, setStatusMessage] = (0, import_react49.useState)(null);
18471
+ const [errorMessage, setErrorMessage] = (0, import_react49.useState)(null);
18472
+ const [waitingConfirm, setWaitingConfirm] = (0, import_react49.useState)(false);
18473
+ (0, import_react49.useEffect)(() => {
18500
18474
  if (!statusMessage) return;
18501
18475
  const t = setTimeout(() => setStatusMessage(null), 3e3);
18502
18476
  return () => clearTimeout(t);
18503
18477
  }, [statusMessage]);
18504
- (0, import_react50.useEffect)(() => {
18478
+ (0, import_react49.useEffect)(() => {
18505
18479
  if (!deviceId || !isWebSerialAvailable()) {
18506
18480
  setScreen({ step: "error", message: "WebSerial not available" });
18507
18481
  return;
@@ -18533,7 +18507,7 @@ function DeviceManageScreen() {
18533
18507
  guardianRef.current?.close();
18534
18508
  };
18535
18509
  }, [deviceId]);
18536
- const refreshList = (0, import_react50.useCallback)(async () => {
18510
+ const refreshList = (0, import_react49.useCallback)(async () => {
18537
18511
  const guardian = guardianRef.current;
18538
18512
  if (!guardian || screen.step !== "connected") return;
18539
18513
  try {
@@ -18542,7 +18516,7 @@ function DeviceManageScreen() {
18542
18516
  } catch {
18543
18517
  }
18544
18518
  }, [screen]);
18545
- const handleBackup = (0, import_react50.useCallback)(async () => {
18519
+ const handleBackup = (0, import_react49.useCallback)(async () => {
18546
18520
  const guardian = guardianRef.current;
18547
18521
  const iframe6 = getIframeManager();
18548
18522
  if (!guardian || !iframe6 || !userId) return;
@@ -18566,7 +18540,7 @@ function DeviceManageScreen() {
18566
18540
  setActionState(null);
18567
18541
  }
18568
18542
  }, [password, userId, refreshList]);
18569
- const handleOverwrite = (0, import_react50.useCallback)(async () => {
18543
+ const handleOverwrite = (0, import_react49.useCallback)(async () => {
18570
18544
  const guardian = guardianRef.current;
18571
18545
  const iframe6 = getIframeManager();
18572
18546
  if (!guardian || !iframe6 || !userId) return;
@@ -18586,7 +18560,7 @@ function DeviceManageScreen() {
18586
18560
  setActionState(null);
18587
18561
  }
18588
18562
  }, [password, userId, refreshList]);
18589
- const handleDelete = (0, import_react50.useCallback)(
18563
+ const handleDelete = (0, import_react49.useCallback)(
18590
18564
  async (keyshareId) => {
18591
18565
  const guardian = guardianRef.current;
18592
18566
  if (!guardian) return;
@@ -18773,12 +18747,12 @@ function DeviceManageScreen() {
18773
18747
  ] })
18774
18748
  ] });
18775
18749
  }
18776
- var import_lucide_react35, import_react50, import_jsx_runtime76;
18750
+ var import_lucide_react35, import_react49, import_jsx_runtime76;
18777
18751
  var init_DeviceManageScreen = __esm({
18778
18752
  "src/internal/components/DevicesMenu/DeviceManageScreen.tsx"() {
18779
18753
  init_SessionContext();
18780
18754
  import_lucide_react35 = require("lucide-react");
18781
- import_react50 = require("react");
18755
+ import_react49 = require("react");
18782
18756
  init_guardian_backup();
18783
18757
  init_useLayoutDataStore();
18784
18758
  init_iframe_manager();
@@ -18797,11 +18771,11 @@ function DeviceRestoreScreen() {
18797
18771
  const keyshareId = pageParams?.keyshareId;
18798
18772
  const deviceId = pageParams?.deviceId;
18799
18773
  const deviceName = pageParams?.deviceName;
18800
- const [password, setPassword] = (0, import_react51.useState)("");
18801
- const [isWorking, setIsWorking] = (0, import_react51.useState)(false);
18802
- const [statusMessage, setStatusMessage] = (0, import_react51.useState)(null);
18803
- const [errorMessage, setErrorMessage] = (0, import_react51.useState)(null);
18804
- const handleRestore = (0, import_react51.useCallback)(async () => {
18774
+ const [password, setPassword] = (0, import_react50.useState)("");
18775
+ const [isWorking, setIsWorking] = (0, import_react50.useState)(false);
18776
+ const [statusMessage, setStatusMessage] = (0, import_react50.useState)(null);
18777
+ const [errorMessage, setErrorMessage] = (0, import_react50.useState)(null);
18778
+ const handleRestore = (0, import_react50.useCallback)(async () => {
18805
18779
  if (!password || !keyshareId || !userId) return;
18806
18780
  const iframe6 = getIframeManager();
18807
18781
  if (!iframe6) {
@@ -18881,12 +18855,12 @@ function DeviceRestoreScreen() {
18881
18855
  errorMessage && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { className: "text-sm text-[var(--ui-kit-bg-error)] p-2 text-center", children: errorMessage })
18882
18856
  ] });
18883
18857
  }
18884
- var import_lucide_react36, import_react51, import_jsx_runtime77;
18858
+ var import_lucide_react36, import_react50, import_jsx_runtime77;
18885
18859
  var init_DeviceRestoreScreen = __esm({
18886
18860
  "src/internal/components/DevicesMenu/DeviceRestoreScreen.tsx"() {
18887
18861
  init_SessionContext();
18888
18862
  import_lucide_react36 = require("lucide-react");
18889
- import_react51 = require("react");
18863
+ import_react50 = require("react");
18890
18864
  init_guardian_backup();
18891
18865
  init_useLayoutDataStore();
18892
18866
  init_iframe_manager();
@@ -18906,8 +18880,8 @@ function truncateAddress(address) {
18906
18880
  return `${address.slice(0, 6)}...${address.slice(-4)}`;
18907
18881
  }
18908
18882
  function DeviceRow({ device }) {
18909
- const [confirmingUnlink, setConfirmingUnlink] = (0, import_react52.useState)(false);
18910
- const [unlinkError, setUnlinkError] = (0, import_react52.useState)(null);
18883
+ const [confirmingUnlink, setConfirmingUnlink] = (0, import_react51.useState)(false);
18884
+ const [unlinkError, setUnlinkError] = (0, import_react51.useState)(null);
18911
18885
  const { mutate: unlink, isPending } = useUnlinkDevice();
18912
18886
  if (confirmingUnlink) {
18913
18887
  return /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("div", { className: "flex flex-col gap-2 p-3 rounded-lg bg-[var(--ui-kit-bg)]", children: [
@@ -19008,11 +18982,11 @@ function DevicesMenu() {
19008
18982
  ] })
19009
18983
  ] });
19010
18984
  }
19011
- var import_lucide_react37, import_react52, import_jsx_runtime78;
18985
+ var import_lucide_react37, import_react51, import_jsx_runtime78;
19012
18986
  var init_DevicesMenu = __esm({
19013
18987
  "src/internal/components/DevicesMenu/DevicesMenu.tsx"() {
19014
18988
  import_lucide_react37 = require("lucide-react");
19015
- import_react52 = require("react");
18989
+ import_react51 = require("react");
19016
18990
  init_devices();
19017
18991
  init_guardian_backup();
19018
18992
  init_useLayoutDataStore();
@@ -19072,7 +19046,7 @@ function useOnRestoreSuccess() {
19072
19046
  setStatus
19073
19047
  } = useSession();
19074
19048
  const { setError, setSuccess } = useRestoreStore();
19075
- const createSessionWithKeyshare = (0, import_react53.useCallback)(
19049
+ const createSessionWithKeyshare = (0, import_react52.useCallback)(
19076
19050
  async (userId, hasServerKeyshare, isNewUser) => {
19077
19051
  try {
19078
19052
  try {
@@ -19113,7 +19087,7 @@ function useOnRestoreSuccess() {
19113
19087
  },
19114
19088
  [setStatus, usePaymaster, activeChainId, publicClient]
19115
19089
  );
19116
- const onRestoreSuccess = (0, import_react53.useCallback)(async () => {
19090
+ const onRestoreSuccess = (0, import_react52.useCallback)(async () => {
19117
19091
  const { verifyToken: verifyToken2, jwtTokenManager: jwtTokenManager4 } = await Promise.resolve().then(() => (init_auth(), auth_exports));
19118
19092
  const verify = await verifyToken2();
19119
19093
  const hasServerKeyshare = verify?.hasKeyshare ?? jwtTokenManager4.getHasKeyshare() ?? false;
@@ -19179,12 +19153,12 @@ function useOnRestoreSuccess() {
19179
19153
  ]);
19180
19154
  return { onRestoreSuccess };
19181
19155
  }
19182
- var import_react53;
19156
+ var import_react52;
19183
19157
  var init_useOnRestoreSuccess = __esm({
19184
19158
  "src/internal/components/KeyshareRestoreMenu/hooks/useOnRestoreSuccess.ts"() {
19185
19159
  init_ProviderContext();
19186
19160
  init_SessionContext();
19187
- import_react53 = require("react");
19161
+ import_react52 = require("react");
19188
19162
  init_useLayoutDataStore();
19189
19163
  init_useLayoutStore();
19190
19164
  init_useRestoreStore();
@@ -19447,7 +19421,7 @@ function useCreateBackup() {
19447
19421
  const usePasskey = useRestoreStore((st) => st.usePasskey);
19448
19422
  const restorePassword = useRestoreStore((st) => st.restorePassword);
19449
19423
  const selectedCloudProvider = useRestoreStore((st) => st.selectedCloudProvider);
19450
- (0, import_react54.useEffect)(() => {
19424
+ (0, import_react53.useEffect)(() => {
19451
19425
  if (!hasServerVault) {
19452
19426
  useRestoreStore.getState().setMethod("server");
19453
19427
  useLayoutStore.getState().setIsDialogForced(true);
@@ -19455,7 +19429,7 @@ function useCreateBackup() {
19455
19429
  }, [hasServerVault]);
19456
19430
  const recoveryUserId = useSession((st) => st.recoveryUserId);
19457
19431
  const passportUserId = session?.mpcUserId || recoveryUserId || "";
19458
- const onBackupSuccess = (0, import_react54.useCallback)((method) => {
19432
+ const onBackupSuccess = (0, import_react53.useCallback)((method) => {
19459
19433
  console.log(`[EMBARKAI BACKUP] ${method} backup created successfully`);
19460
19434
  if (method !== "server") return;
19461
19435
  const { setIsDialogForced } = useLayoutStore.getState();
@@ -19628,12 +19602,12 @@ function useCreateBackup() {
19628
19602
  createPasskey
19629
19603
  };
19630
19604
  }
19631
- var import_react_query27, import_react54;
19605
+ var import_react_query27, import_react53;
19632
19606
  var init_useCreateBackup = __esm({
19633
19607
  "src/internal/components/KeyshareRestoreMenu/hooks/useCreateBackup.ts"() {
19634
19608
  init_SessionContext();
19635
19609
  import_react_query27 = require("@tanstack/react-query");
19636
- import_react54 = require("react");
19610
+ import_react53 = require("react");
19637
19611
  init_auth();
19638
19612
  init_useLayoutDataStore();
19639
19613
  init_useLayoutStore();
@@ -19770,7 +19744,7 @@ function useValidateFileBackup() {
19770
19744
  const restoreFile = useRestoreStore((st) => st.restoreFile);
19771
19745
  const setError = useRestoreStore((st) => st.setError);
19772
19746
  const setUsePasskey = useRestoreStore((st) => st.setUsePasskey);
19773
- (0, import_react55.useEffect)(() => {
19747
+ (0, import_react54.useEffect)(() => {
19774
19748
  if (!restoreFile) {
19775
19749
  return;
19776
19750
  }
@@ -19791,10 +19765,10 @@ function useValidateFileBackup() {
19791
19765
  reader.readAsText(restoreFile);
19792
19766
  }, [restoreFile]);
19793
19767
  }
19794
- var import_react55;
19768
+ var import_react54;
19795
19769
  var init_useValidateFileBackup = __esm({
19796
19770
  "src/internal/components/KeyshareRestoreMenu/hooks/useValidateFileBackup.ts"() {
19797
- import_react55 = require("react");
19771
+ import_react54 = require("react");
19798
19772
  init_useRestoreStore();
19799
19773
  }
19800
19774
  });
@@ -19822,7 +19796,7 @@ function MethodSelector(props) {
19822
19796
  setError,
19823
19797
  setSuccess
19824
19798
  } = useRestoreStore();
19825
- const recoveryRenderMethods = (0, import_react56.useMemo)(() => {
19799
+ const recoveryRenderMethods = (0, import_react55.useMemo)(() => {
19826
19800
  const methodsWithBackupData = getRecoveryRenderMethods(mode).map((mt) => {
19827
19801
  let data = null;
19828
19802
  switch (true) {
@@ -19837,7 +19811,7 @@ function MethodSelector(props) {
19837
19811
  return methodsWithBackupData;
19838
19812
  }, [mode, serverRecoveryStatus]);
19839
19813
  if (!!selectedRecoveryMethod) return null;
19840
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react56.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
19814
+ return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react55.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
19841
19815
  "div",
19842
19816
  {
19843
19817
  style: { gridTemplateColumns: `repeat(${recoveryRenderMethods.length}, minmax(0, 1fr))` },
@@ -19871,12 +19845,12 @@ function MethodSelector(props) {
19871
19845
  }
19872
19846
  ) });
19873
19847
  }
19874
- var import_lucide_react38, import_react56, import_jsx_runtime79, getRecoveryRenderMethods;
19848
+ var import_lucide_react38, import_react55, import_jsx_runtime79, getRecoveryRenderMethods;
19875
19849
  var init_MethodSelector = __esm({
19876
19850
  "src/internal/components/KeyshareRestoreMenu/components/MethodSelector.tsx"() {
19877
19851
  init_useT();
19878
19852
  import_lucide_react38 = require("lucide-react");
19879
- import_react56 = require("react");
19853
+ import_react55 = require("react");
19880
19854
  init_icons();
19881
19855
  init_guardian_backup();
19882
19856
  init_button();
@@ -20012,7 +19986,7 @@ function PasswordPasskey(props) {
20012
19986
  onCreatePasskey
20013
19987
  } = props;
20014
19988
  const hasServerVault = useSession((st) => st.hasServerVault);
20015
- const actionRef = (0, import_react57.useRef)(null);
19989
+ const actionRef = (0, import_react56.useRef)(null);
20016
19990
  const {
20017
19991
  showPassword,
20018
19992
  restorePassword,
@@ -20026,7 +20000,7 @@ function PasswordPasskey(props) {
20026
20000
  } = useRestoreStore();
20027
20001
  const { config } = useProviderConfig();
20028
20002
  const isPasskeyEnabled = config.current.passkey.enabled;
20029
- (0, import_react57.useEffect)(() => {
20003
+ (0, import_react56.useEffect)(() => {
20030
20004
  if (!isPasskeyEnabled && usePasskey) setUsePasskey(false);
20031
20005
  }, [isPasskeyEnabled, usePasskey]);
20032
20006
  return /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_jsx_runtime80.Fragment, { children: [
@@ -20190,7 +20164,7 @@ function PasswordPasskey(props) {
20190
20164
  ] })
20191
20165
  ] });
20192
20166
  }
20193
- var import_lucide_react39, import_react57, import_jsx_runtime80;
20167
+ var import_lucide_react39, import_react56, import_jsx_runtime80;
20194
20168
  var init_PasswordPasskey = __esm({
20195
20169
  "src/internal/components/KeyshareRestoreMenu/components/PasswordPasskey.tsx"() {
20196
20170
  init_ProviderContext();
@@ -20198,7 +20172,7 @@ var init_PasswordPasskey = __esm({
20198
20172
  init_i18n();
20199
20173
  init_utils();
20200
20174
  import_lucide_react39 = require("lucide-react");
20201
- import_react57 = require("react");
20175
+ import_react56 = require("react");
20202
20176
  init_icons();
20203
20177
  init_Onboarding();
20204
20178
  init_button();
@@ -20375,7 +20349,7 @@ function Server(props) {
20375
20349
  const usePasskey = useRestoreStore((st) => st.usePasskey);
20376
20350
  const setUsePasskey = useRestoreStore((st) => st.setUsePasskey);
20377
20351
  const serverRecoveryStatus = qc.getQueryData([CHECK_BACKUP_QUERY_KEY, address]);
20378
- (0, import_react58.useEffect)(() => {
20352
+ (0, import_react57.useEffect)(() => {
20379
20353
  if (mode === "backup" || !serverRecoveryStatus?.created?.encryptionMethod) return;
20380
20354
  setUsePasskey(serverRecoveryStatus.created.encryptionMethod === "passkey");
20381
20355
  }, [mode, serverRecoveryStatus, setUsePasskey]);
@@ -20418,7 +20392,7 @@ function Server(props) {
20418
20392
  )
20419
20393
  ] });
20420
20394
  }
20421
- var import_react_query29, import_dayjs4, import_lucide_react42, import_react58, import_jsx_runtime83;
20395
+ var import_react_query29, import_dayjs4, import_lucide_react42, import_react57, import_jsx_runtime83;
20422
20396
  var init_Server = __esm({
20423
20397
  "src/internal/components/KeyshareRestoreMenu/methods/Server.tsx"() {
20424
20398
  init_SessionContext();
@@ -20427,7 +20401,7 @@ var init_Server = __esm({
20427
20401
  import_react_query29 = require("@tanstack/react-query");
20428
20402
  import_dayjs4 = __toESM(require("dayjs"), 1);
20429
20403
  import_lucide_react42 = require("lucide-react");
20430
- import_react58 = require("react");
20404
+ import_react57 = require("react");
20431
20405
  init_Onboarding();
20432
20406
  init_highlight();
20433
20407
  init_PasswordPasskey();
@@ -20591,7 +20565,7 @@ function Cloud2(props) {
20591
20565
  return availableProviders.map((p) => ({ id: p.id, name: p.name, available: p.isAvailable() }));
20592
20566
  }
20593
20567
  });
20594
- (0, import_react59.useEffect)(() => {
20568
+ (0, import_react58.useEffect)(() => {
20595
20569
  if (isCloudProvidersLoading) return;
20596
20570
  if (!!cloudProvidersError) {
20597
20571
  console.error("[KeyshareBackup] Failed to load cloud providers:", cloudProvidersError);
@@ -20655,13 +20629,13 @@ function Cloud2(props) {
20655
20629
  )
20656
20630
  ] });
20657
20631
  }
20658
- var import_react_query30, import_lucide_react44, import_react59, import_jsx_runtime85;
20632
+ var import_react_query30, import_lucide_react44, import_react58, import_jsx_runtime85;
20659
20633
  var init_Cloud = __esm({
20660
20634
  "src/internal/components/KeyshareRestoreMenu/methods/Cloud.tsx"() {
20661
20635
  init_SessionContext();
20662
20636
  import_react_query30 = require("@tanstack/react-query");
20663
20637
  import_lucide_react44 = require("lucide-react");
20664
- import_react59 = require("react");
20638
+ import_react58 = require("react");
20665
20639
  init_button();
20666
20640
  init_select();
20667
20641
  init_PasswordPasskey();
@@ -20678,8 +20652,8 @@ function Guardian(props) {
20678
20652
  const session = useSession((st) => st.session);
20679
20653
  const recoveryUserId = useSession((st) => st.recoveryUserId);
20680
20654
  const { onRestoreSuccess } = useOnRestoreSuccess();
20681
- const [isWorking, setIsWorking] = (0, import_react60.useState)(false);
20682
- const [step, setStep] = (0, import_react60.useState)("idle");
20655
+ const [isWorking, setIsWorking] = (0, import_react59.useState)(false);
20656
+ const [step, setStep] = (0, import_react59.useState)("idle");
20683
20657
  const handleGuardianBackup = async () => {
20684
20658
  if (!restorePassword) {
20685
20659
  setError("Please enter a password");
@@ -20808,11 +20782,11 @@ function Guardian(props) {
20808
20782
  ] })
20809
20783
  ] });
20810
20784
  }
20811
- var import_react60, import_lucide_react45, import_jsx_runtime86;
20785
+ var import_react59, import_lucide_react45, import_jsx_runtime86;
20812
20786
  var init_Guardian = __esm({
20813
20787
  "src/internal/components/KeyshareRestoreMenu/methods/Guardian.tsx"() {
20814
20788
  init_SessionContext();
20815
- import_react60 = require("react");
20789
+ import_react59 = require("react");
20816
20790
  import_lucide_react45 = require("lucide-react");
20817
20791
  init_iframe_manager();
20818
20792
  init_guardian_backup();
@@ -20835,7 +20809,7 @@ var init_methods = __esm({
20835
20809
  });
20836
20810
 
20837
20811
  // src/internal/components/KeyshareRestoreMenu/KeyshareRestoreMenu.tsx
20838
- var import_react_query31, import_lucide_react46, import_react61, import_wagmi5, import_jsx_runtime87, RESTORE_COMPONENTS, KeyshareRestoreMenu;
20812
+ var import_react_query31, import_lucide_react46, import_react60, import_wagmi5, import_jsx_runtime87, RESTORE_COMPONENTS, KeyshareRestoreMenu;
20839
20813
  var init_KeyshareRestoreMenu = __esm({
20840
20814
  "src/internal/components/KeyshareRestoreMenu/KeyshareRestoreMenu.tsx"() {
20841
20815
  init_ProviderContext();
@@ -20843,7 +20817,7 @@ var init_KeyshareRestoreMenu = __esm({
20843
20817
  init_i18n();
20844
20818
  import_react_query31 = require("@tanstack/react-query");
20845
20819
  import_lucide_react46 = require("lucide-react");
20846
- import_react61 = require("react");
20820
+ import_react60 = require("react");
20847
20821
  import_wagmi5 = require("wagmi");
20848
20822
  init_useLayoutDataStore();
20849
20823
  init_useLayoutStore();
@@ -20873,7 +20847,7 @@ var init_KeyshareRestoreMenu = __esm({
20873
20847
  const error = useRestoreStore((st) => st.error);
20874
20848
  const success = useRestoreStore((st) => st.success);
20875
20849
  const currentRestoreMethod = useRestoreStore((st) => st.method);
20876
- (0, import_react61.useEffect)(() => {
20850
+ (0, import_react60.useEffect)(() => {
20877
20851
  const { setIsDialogForced } = useLayoutStore.getState();
20878
20852
  const { setRestorePassword, setRestoreFile, setShowPassword, setUsePasskey, setMethod } = useRestoreStore.getState();
20879
20853
  setIsDialogForced(true);
@@ -20912,7 +20886,7 @@ var init_KeyshareRestoreMenu = __esm({
20912
20886
  queryFn: async () => await getShareRecoveryStats()
20913
20887
  });
20914
20888
  const hasServerBackup = serverRecoveryStatus?.created || serverRecoveryStatus?.devices?.length > 0;
20915
- (0, import_react61.useEffect)(() => {
20889
+ (0, import_react60.useEffect)(() => {
20916
20890
  if (!!hasServerBackup) useRestoreStore.getState().setMethod("server");
20917
20891
  }, [hasServerBackup]);
20918
20892
  const { mutate: disconnect, isPending: isDisconnecting } = (0, import_react_query31.useMutation)({
@@ -21059,7 +21033,7 @@ function KeyshareBackupMenu() {
21059
21033
  const usePasskey = useRestoreStore((st) => st.usePasskey);
21060
21034
  const error = useRestoreStore((st) => st.error);
21061
21035
  const success = useRestoreStore((st) => st.success);
21062
- (0, import_react62.useEffect)(() => {
21036
+ (0, import_react61.useEffect)(() => {
21063
21037
  const { setSuccess, setError, setRestorePassword, setRestoreFile, setShowPassword, setUsePasskey, setMethod } = useRestoreStore.getState();
21064
21038
  return () => {
21065
21039
  setSuccess(null);
@@ -21079,7 +21053,7 @@ function KeyshareBackupMenu() {
21079
21053
  });
21080
21054
  useOnboardingTourAvailable(!isRecoveryLoading && currentBackupMethod === "server" && !usePasskey);
21081
21055
  const hasRecoveryData2 = serverRecoveryStatus?.created || serverRecoveryStatus?.devices?.length > 0;
21082
- (0, import_react62.useEffect)(() => {
21056
+ (0, import_react61.useEffect)(() => {
21083
21057
  if (!!hasRecoveryData2) useRestoreStore.getState().setMethod("server");
21084
21058
  }, [hasRecoveryData2]);
21085
21059
  const {
@@ -21198,14 +21172,14 @@ function KeyshareBackupMenu() {
21198
21172
  ] })
21199
21173
  ] });
21200
21174
  }
21201
- var import_react_query32, import_lucide_react47, import_react62, import_jsx_runtime88, COMPONENTS;
21175
+ var import_react_query32, import_lucide_react47, import_react61, import_jsx_runtime88, COMPONENTS;
21202
21176
  var init_KeyshareBackupMenu = __esm({
21203
21177
  "src/internal/components/KeyshareRestoreMenu/KeyshareBackupMenu.tsx"() {
21204
21178
  init_SessionContext();
21205
21179
  init_i18n();
21206
21180
  import_react_query32 = require("@tanstack/react-query");
21207
21181
  import_lucide_react47 = require("lucide-react");
21208
- import_react62 = require("react");
21182
+ import_react61 = require("react");
21209
21183
  init_useLayoutDataStore();
21210
21184
  init_vaultClient();
21211
21185
  init_Expandable2();
@@ -21333,13 +21307,13 @@ var init_SumsubIframeManager = __esm({
21333
21307
  function useSumsubIframe({ iframeUrl }) {
21334
21308
  const config = useProviderConfig().config;
21335
21309
  const { colorMode } = useColorMode();
21336
- const iframeRef = (0, import_react63.useRef)(null);
21337
- const [isLoading, setIsLoading] = (0, import_react63.useState)(true);
21338
- const [error, setError] = (0, import_react63.useState)(null);
21339
- const [height, setHeight] = (0, import_react63.useState)(0);
21340
- const [status, setStatus] = (0, import_react63.useState)("");
21310
+ const iframeRef = (0, import_react62.useRef)(null);
21311
+ const [isLoading, setIsLoading] = (0, import_react62.useState)(true);
21312
+ const [error, setError] = (0, import_react62.useState)(null);
21313
+ const [height, setHeight] = (0, import_react62.useState)(0);
21314
+ const [status, setStatus] = (0, import_react62.useState)("");
21341
21315
  const levelName = config.current?.kyc?.options?.levelName;
21342
- (0, import_react63.useEffect)(() => {
21316
+ (0, import_react62.useEffect)(() => {
21343
21317
  setError(null);
21344
21318
  setIsLoading(true);
21345
21319
  setStatus("Preparing verification...");
@@ -21380,12 +21354,12 @@ function useSumsubIframe({ iframeUrl }) {
21380
21354
  status
21381
21355
  };
21382
21356
  }
21383
- var import_react63;
21357
+ var import_react62;
21384
21358
  var init_useSumsubIframe = __esm({
21385
21359
  "src/internal/components/KYC/useSumsubIframe.ts"() {
21386
21360
  init_ProviderContext();
21387
21361
  init_useColorMode();
21388
- import_react63 = require("react");
21362
+ import_react62 = require("react");
21389
21363
  init_sumsub();
21390
21364
  init_SumsubIframeManager();
21391
21365
  }
@@ -21593,11 +21567,11 @@ function useResolvedPublicClient(chainId, logScope = "useResolvedPublicClient")
21593
21567
  const activeChainConfig = useSession((st) => st.chainConfig);
21594
21568
  const resolvedChainId = chainId ?? activeChainId;
21595
21569
  const shouldUseActiveClient = !chainId || chainId === activeChainId;
21596
- const chainConfig = (0, import_react64.useMemo)(() => {
21570
+ const chainConfig = (0, import_react63.useMemo)(() => {
21597
21571
  if (shouldUseActiveClient) return activeChainConfig;
21598
21572
  return (0, import_read16.getChainConfig)(chainId);
21599
21573
  }, [activeChainConfig, chainId, shouldUseActiveClient]);
21600
- const publicClient = (0, import_react64.useMemo)(() => {
21574
+ const publicClient = (0, import_react63.useMemo)(() => {
21601
21575
  if (shouldUseActiveClient) return activePublicClient;
21602
21576
  if (!chainId) return activePublicClient;
21603
21577
  try {
@@ -21614,12 +21588,12 @@ function useResolvedPublicClient(chainId, logScope = "useResolvedPublicClient")
21614
21588
  resolvedChainId
21615
21589
  };
21616
21590
  }
21617
- var import_read16, import_react64, publicClientByChainId;
21591
+ var import_read16, import_react63, publicClientByChainId;
21618
21592
  var init_useResolvedPublicClient = __esm({
21619
21593
  "src/internal/hooks/useResolvedPublicClient.ts"() {
21620
21594
  init_SessionContext();
21621
21595
  import_read16 = require("@embarkai/core/read");
21622
- import_react64 = require("react");
21596
+ import_react63 = require("react");
21623
21597
  publicClientByChainId = /* @__PURE__ */ new Map();
21624
21598
  }
21625
21599
  });
@@ -21683,7 +21657,7 @@ var init_useNativeBalance = __esm({
21683
21657
  function useWatchTokens(options) {
21684
21658
  const { address, chainId, enabled, publicClient } = options;
21685
21659
  const { config } = useProviderConfig();
21686
- const watchTokens = (0, import_react65.useMemo)(() => {
21660
+ const watchTokens = (0, import_react64.useMemo)(() => {
21687
21661
  const allWatchTokens = config.current.watchTokens;
21688
21662
  const tokensForChain = chainId ? allWatchTokens?.[chainId] || [] : [];
21689
21663
  return tokensForChain;
@@ -21751,12 +21725,12 @@ function useWatchTokens(options) {
21751
21725
  }
21752
21726
  });
21753
21727
  }
21754
- var import_react_query35, import_react65, import_viem8;
21728
+ var import_react_query35, import_react64, import_viem8;
21755
21729
  var init_useWatchTokens = __esm({
21756
21730
  "src/internal/hooks/useBlockscoutAssets/useWatchTokens.ts"() {
21757
21731
  init_ProviderContext();
21758
21732
  import_react_query35 = require("@tanstack/react-query");
21759
- import_react65 = require("react");
21733
+ import_react64 = require("react");
21760
21734
  import_viem8 = require("viem");
21761
21735
  init_constants6();
21762
21736
  }
@@ -21905,11 +21879,11 @@ function useBlockscoutAssets(options) {
21905
21879
  tokenBalancesQueryKey: customTokenBalancesQueryKey
21906
21880
  } = useProviderConfig().config?.current?.portfolio || {};
21907
21881
  const blockscoutApiUrl = getBlockscoutApiUrl(chainConfig);
21908
- const blockscoutClient = (0, import_react66.useMemo)(
21882
+ const blockscoutClient = (0, import_react65.useMemo)(
21909
21883
  () => blockscoutApiUrl ? (0, import_core4.createBlockscoutClient)({ baseUrl: blockscoutApiUrl }) : null,
21910
21884
  [blockscoutApiUrl]
21911
21885
  );
21912
- const lastRefreshRef = (0, import_react66.useRef)(0);
21886
+ const lastRefreshRef = (0, import_react65.useRef)(0);
21913
21887
  const {
21914
21888
  data: watchTokenAssets = [],
21915
21889
  isLoading: watchTokensLoading,
@@ -21981,7 +21955,7 @@ function useBlockscoutAssets(options) {
21981
21955
  queryKey: [BLOCKSCOUT_QUERY_KEY, "nfts", resolvedChainId, blockscoutApiUrl, address],
21982
21956
  queryFn: () => blockscoutClient.getNfts(address)
21983
21957
  });
21984
- const erc20TokenAddresses = (0, import_react66.useMemo)(() => {
21958
+ const erc20TokenAddresses = (0, import_react65.useMemo)(() => {
21985
21959
  if (!blockscoutItems) return [];
21986
21960
  return blockscoutItems.filter((tb) => tb.token.type === "ERC-20").map((tb) => tb.token.address_hash);
21987
21961
  }, [blockscoutItems]);
@@ -22026,7 +22000,7 @@ function useBlockscoutAssets(options) {
22026
22000
  // 1 minute
22027
22001
  // gcTime: BLOCKSCOUT_QUERY_GC_TIME,
22028
22002
  });
22029
- const assets = (0, import_react66.useMemo)(() => {
22003
+ const assets = (0, import_react65.useMemo)(() => {
22030
22004
  const result = [];
22031
22005
  const addedAddresses = /* @__PURE__ */ new Set();
22032
22006
  if (nativeBalanceData) {
@@ -22120,7 +22094,7 @@ function useBlockscoutAssets(options) {
22120
22094
  watchTokenAssets,
22121
22095
  chainConfig
22122
22096
  ]);
22123
- const nativeBalance = (0, import_react66.useMemo)(() => {
22097
+ const nativeBalance = (0, import_react65.useMemo)(() => {
22124
22098
  if (!nativeBalanceData) return null;
22125
22099
  return {
22126
22100
  value: nativeBalanceData.value,
@@ -22128,11 +22102,11 @@ function useBlockscoutAssets(options) {
22128
22102
  symbol: nativeBalanceData.symbol
22129
22103
  };
22130
22104
  }, [nativeBalanceData]);
22131
- const error = (0, import_react66.useMemo)(() => {
22105
+ const error = (0, import_react65.useMemo)(() => {
22132
22106
  if (!blockscoutError) return null;
22133
22107
  return createError(blockscoutError);
22134
22108
  }, [blockscoutError]);
22135
- const refreshBalances = (0, import_react66.useCallback)(async () => {
22109
+ const refreshBalances = (0, import_react65.useCallback)(async () => {
22136
22110
  const now = Date.now();
22137
22111
  if (now - lastRefreshRef.current < BLOCKSCOUT_REFRESH_DEBOUNCE) {
22138
22112
  return;
@@ -22148,7 +22122,7 @@ function useBlockscoutAssets(options) {
22148
22122
  qc.invalidateQueries({ queryKey: [WATCH_TOKENS_QUERY_KEY] })
22149
22123
  ]);
22150
22124
  }, [qc, customTokenBalancesQueryKey]);
22151
- const getTokenBalance = (0, import_react66.useCallback)(
22125
+ const getTokenBalance = (0, import_react65.useCallback)(
22152
22126
  (tokenAddress) => {
22153
22127
  return assets.find((a) => a.address?.toLowerCase() === tokenAddress.toLowerCase()) || null;
22154
22128
  },
@@ -22167,13 +22141,13 @@ function useBlockscoutAssets(options) {
22167
22141
  lastUpdated: dataUpdatedAt || null
22168
22142
  };
22169
22143
  }
22170
- var import_core4, import_react_query36, import_react66;
22144
+ var import_core4, import_react_query36, import_react65;
22171
22145
  var init_useBlockscoutAssets = __esm({
22172
22146
  "src/internal/hooks/useBlockscoutAssets/useBlockscoutAssets.ts"() {
22173
22147
  init_ProviderContext();
22174
22148
  import_core4 = require("@embarkai/core");
22175
22149
  import_react_query36 = require("@tanstack/react-query");
22176
- import_react66 = require("react");
22150
+ import_react65 = require("react");
22177
22151
  init_initial();
22178
22152
  init_constants();
22179
22153
  init_useResolvedPublicClient();
@@ -22293,9 +22267,9 @@ function SecurityTokenBadge() {
22293
22267
  }
22294
22268
  function PortfolioItemImage(props) {
22295
22269
  const { asset } = props;
22296
- const [logoError, setLogoError] = (0, import_react67.useState)(false);
22297
- const [nftImageError, setNftImageError] = (0, import_react67.useState)(false);
22298
- const resolvedImage = (0, import_react67.useMemo)(() => {
22270
+ const [logoError, setLogoError] = (0, import_react66.useState)(false);
22271
+ const [nftImageError, setNftImageError] = (0, import_react66.useState)(false);
22272
+ const resolvedImage = (0, import_react66.useMemo)(() => {
22299
22273
  const isNft = isNftAsset(asset);
22300
22274
  const nftImage = getNftImage(asset);
22301
22275
  const isSecurity = isSecurityToken(asset);
@@ -22450,13 +22424,13 @@ function PortfolioItem(props) {
22450
22424
  }
22451
22425
  );
22452
22426
  }
22453
- var import_react_query37, import_lucide_react51, import_react67, import_viem11, import_jsx_runtime94, PORTFOLIO_ASSET_RATE_QUERY_KEY;
22427
+ var import_react_query37, import_lucide_react51, import_react66, import_viem11, import_jsx_runtime94, PORTFOLIO_ASSET_RATE_QUERY_KEY;
22454
22428
  var init_PortfolioItem = __esm({
22455
22429
  "src/internal/components/PortfolioMenu/PortfolioItem.tsx"() {
22456
22430
  init_ProviderContext();
22457
22431
  import_react_query37 = require("@tanstack/react-query");
22458
22432
  import_lucide_react51 = require("lucide-react");
22459
- import_react67 = require("react");
22433
+ import_react66 = require("react");
22460
22434
  import_viem11 = require("viem");
22461
22435
  init_tokens();
22462
22436
  init_base3();
@@ -22488,7 +22462,7 @@ function PortfolioMenu() {
22488
22462
  enabled: !!address
22489
22463
  });
22490
22464
  const shownProjectAssets = projectAssets.filter((asset) => !asset.hideInPortfolio);
22491
- const refreshAllAssetsBalances = (0, import_react68.useCallback)(() => {
22465
+ const refreshAllAssetsBalances = (0, import_react67.useCallback)(() => {
22492
22466
  Promise.all(shownProjectAssets.map((asset) => qc.invalidateQueries({ queryKey: asset.balanceQueryKey })));
22493
22467
  refreshBlockscoutBalances();
22494
22468
  }, [qc, shownProjectAssets, refreshBlockscoutBalances]);
@@ -22534,7 +22508,7 @@ function PortfolioMenu() {
22534
22508
  blockscoutError && /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Highlight, { type: "error", children: blockscoutError?.message })
22535
22509
  ] });
22536
22510
  }
22537
- var import_react_query38, import_lucide_react52, import_react68, import_jsx_runtime95;
22511
+ var import_react_query38, import_lucide_react52, import_react67, import_jsx_runtime95;
22538
22512
  var init_PortfolioMenu = __esm({
22539
22513
  "src/internal/components/PortfolioMenu/PortfolioMenu.tsx"() {
22540
22514
  init_ProviderContext();
@@ -22542,7 +22516,7 @@ var init_PortfolioMenu = __esm({
22542
22516
  init_i18n();
22543
22517
  import_react_query38 = require("@tanstack/react-query");
22544
22518
  import_lucide_react52 = require("lucide-react");
22545
- import_react68 = require("react");
22519
+ import_react67 = require("react");
22546
22520
  init_useBlockscoutAssets2();
22547
22521
  init_useLayoutDataStore();
22548
22522
  init_Expandable2();
@@ -22853,7 +22827,7 @@ var init_useNicknameStore = __esm({
22853
22827
  function useNicknameAvailability(currentNickname) {
22854
22828
  const { t } = useT();
22855
22829
  const nicknameValue = useNicknameStore((st) => st.nicknameValue);
22856
- (0, import_react69.useEffect)(() => {
22830
+ (0, import_react68.useEffect)(() => {
22857
22831
  if (!currentNickname) return;
22858
22832
  useNicknameStore.getState().setNicknameValue(currentNickname);
22859
22833
  }, [currentNickname]);
@@ -22874,8 +22848,8 @@ function useNicknameAvailability(currentNickname) {
22874
22848
  useNicknameStore.getState().setError(error?.message || "Failed to check nickname availability");
22875
22849
  }
22876
22850
  });
22877
- const debouncedCheckAvailability = (0, import_react69.useCallback)((0, import_lodash_es13.debounce)(checkAvailability, DEBOUNCE_MS), [checkAvailability]);
22878
- (0, import_react69.useEffect)(() => {
22851
+ const debouncedCheckAvailability = (0, import_react68.useCallback)((0, import_lodash_es14.debounce)(checkAvailability, DEBOUNCE_MS), [checkAvailability]);
22852
+ (0, import_react68.useEffect)(() => {
22879
22853
  if (!currentNickname) return;
22880
22854
  const normalizedInputValue = normalizeNickname(nicknameValue);
22881
22855
  const { valid: isNicknameValid } = validateNickname(nicknameValue);
@@ -22889,13 +22863,13 @@ function useNicknameAvailability(currentNickname) {
22889
22863
  }, [nicknameValue, currentNickname, debouncedCheckAvailability]);
22890
22864
  return { isCheckingAvailability };
22891
22865
  }
22892
- var import_react_query39, import_lodash_es13, import_react69, DEBOUNCE_MS;
22866
+ var import_react_query39, import_lodash_es14, import_react68, DEBOUNCE_MS;
22893
22867
  var init_useNicknameAvailability = __esm({
22894
22868
  "src/internal/components/NicknameMenu/useNicknameAvailability.ts"() {
22895
22869
  init_i18n();
22896
22870
  import_react_query39 = require("@tanstack/react-query");
22897
- import_lodash_es13 = require("lodash-es");
22898
- import_react69 = require("react");
22871
+ import_lodash_es14 = require("lodash-es");
22872
+ import_react68 = require("react");
22899
22873
  init_nickname();
22900
22874
  init_nickname_errors();
22901
22875
  init_nickname_validation();
@@ -22916,9 +22890,9 @@ function NicknameEditForm(props) {
22916
22890
  const nicknameValue = useNicknameStore((st) => st.nicknameValue);
22917
22891
  const nicknameAvailability = useNicknameStore((st) => st.availability);
22918
22892
  const { isCheckingAvailability } = useNicknameAvailability(nicknameInfo ? nicknameInfo.handle : "");
22919
- const [isNicknameCopied, setIsNicknameCopied] = (0, import_react70.useState)(false);
22920
- const exitTimerRef = (0, import_react70.useRef)(null);
22921
- (0, import_react70.useEffect)(() => () => {
22893
+ const [isNicknameCopied, setIsNicknameCopied] = (0, import_react69.useState)(false);
22894
+ const exitTimerRef = (0, import_react69.useRef)(null);
22895
+ (0, import_react69.useEffect)(() => () => {
22922
22896
  if (exitTimerRef.current) clearTimeout(exitTimerRef.current);
22923
22897
  }, []);
22924
22898
  const { mutate: changeNickname2, isPending: isNicknameChanging } = (0, import_react_query40.useMutation)({
@@ -22952,7 +22926,7 @@ function NicknameEditForm(props) {
22952
22926
  );
22953
22927
  }
22954
22928
  });
22955
- const handleNicknameInputChange = (0, import_react70.useCallback)(
22929
+ const handleNicknameInputChange = (0, import_react69.useCallback)(
22956
22930
  (e) => {
22957
22931
  const { error, setError, setNicknameValue } = useNicknameStore.getState();
22958
22932
  const nextInputValue = e.target.value;
@@ -22966,7 +22940,7 @@ function NicknameEditForm(props) {
22966
22940
  },
22967
22941
  [t]
22968
22942
  );
22969
- const handleSubmit = (0, import_react70.useCallback)(
22943
+ const handleSubmit = (0, import_react69.useCallback)(
22970
22944
  (e) => {
22971
22945
  const { nicknameValue: nicknameValue2, setError } = useNicknameStore.getState();
22972
22946
  if (!canChange) {
@@ -23058,7 +23032,7 @@ function NicknameEditForm(props) {
23058
23032
  !!canChange && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)("span", { className: "w-full flex items-center leadding-4 text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:nicknameMenu.hint") })
23059
23033
  ] });
23060
23034
  }
23061
- var import_react_query40, import_lucide_react55, import_react70, import_jsx_runtime98;
23035
+ var import_react_query40, import_lucide_react55, import_react69, import_jsx_runtime98;
23062
23036
  var init_NicknameEditForm = __esm({
23063
23037
  "src/internal/components/NicknameMenu/NicknameEditForm.tsx"() {
23064
23038
  init_ProviderContext();
@@ -23066,7 +23040,7 @@ var init_NicknameEditForm = __esm({
23066
23040
  init_i18n();
23067
23041
  import_react_query40 = require("@tanstack/react-query");
23068
23042
  import_lucide_react55 = require("lucide-react");
23069
- import_react70 = require("react");
23043
+ import_react69 = require("react");
23070
23044
  init_icons();
23071
23045
  init_nickname();
23072
23046
  init_profile();
@@ -23102,7 +23076,7 @@ function NicknameMenu() {
23102
23076
  queryFn: async () => await getNicknameInfo()
23103
23077
  });
23104
23078
  const resolvedError = nicknameError || nicknameInfoError?.message || null;
23105
- (0, import_react71.useEffect)(() => () => useNicknameStore.getState().reset(), []);
23079
+ (0, import_react70.useEffect)(() => () => useNicknameStore.getState().reset(), []);
23106
23080
  return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
23107
23081
  /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)] ", children: [
23108
23082
  /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
@@ -23169,7 +23143,7 @@ function NicknameMenu() {
23169
23143
  !!resolvedError?.length && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Highlight, { type: "error", children: resolvedError })
23170
23144
  ] });
23171
23145
  }
23172
- var import_react_query41, import_dayjs5, import_lucide_react56, import_react71, import_jsx_runtime99;
23146
+ var import_react_query41, import_dayjs5, import_lucide_react56, import_react70, import_jsx_runtime99;
23173
23147
  var init_NicknameMenu = __esm({
23174
23148
  "src/internal/components/NicknameMenu/NicknameMenu.tsx"() {
23175
23149
  init_SessionContext();
@@ -23178,7 +23152,7 @@ var init_NicknameMenu = __esm({
23178
23152
  import_react_query41 = require("@tanstack/react-query");
23179
23153
  import_dayjs5 = __toESM(require("dayjs"), 1);
23180
23154
  import_lucide_react56 = require("lucide-react");
23181
- import_react71 = require("react");
23155
+ import_react70 = require("react");
23182
23156
  init_nickname();
23183
23157
  init_profile();
23184
23158
  init_useLayoutDataStore();
@@ -23308,12 +23282,12 @@ function ReceiveMenu() {
23308
23282
  queryKey: [QUERY_KEYS.nicknameInfo, address],
23309
23283
  queryFn: async () => await getNicknameInfo()
23310
23284
  });
23311
- const [qrCodeUrl, setQrCodeUrl] = (0, import_react72.useState)("");
23312
- const [isAddressCopied, setAddressCopied] = (0, import_react72.useState)(false);
23313
- const [isNicknameCopied, setNicknameCopied] = (0, import_react72.useState)(false);
23314
- const [fingerprintCopied, setFingerprintCopied] = (0, import_react72.useState)(false);
23285
+ const [qrCodeUrl, setQrCodeUrl] = (0, import_react71.useState)("");
23286
+ const [isAddressCopied, setAddressCopied] = (0, import_react71.useState)(false);
23287
+ const [isNicknameCopied, setNicknameCopied] = (0, import_react71.useState)(false);
23288
+ const [fingerprintCopied, setFingerprintCopied] = (0, import_react71.useState)(false);
23315
23289
  useOnboardingTourAvailable(true);
23316
- const fingerprint = (0, import_react72.useMemo)(() => {
23290
+ const fingerprint = (0, import_react71.useMemo)(() => {
23317
23291
  if (!session?.ownerAddress) return null;
23318
23292
  try {
23319
23293
  return generateFingerprint(session.ownerAddress);
@@ -23321,7 +23295,7 @@ function ReceiveMenu() {
23321
23295
  return null;
23322
23296
  }
23323
23297
  }, [session?.ownerAddress]);
23324
- (0, import_react72.useEffect)(() => {
23298
+ (0, import_react71.useEffect)(() => {
23325
23299
  if (!address) return;
23326
23300
  import_qrcode.default.toDataURL(address, {
23327
23301
  width: 200,
@@ -23420,7 +23394,7 @@ function ReceiveMenu() {
23420
23394
  ] })
23421
23395
  ] });
23422
23396
  }
23423
- var import_react_query42, import_lucide_react57, import_qrcode, import_react72, import_jsx_runtime100;
23397
+ var import_react_query42, import_lucide_react57, import_qrcode, import_react71, import_jsx_runtime100;
23424
23398
  var init_ReceiveMenu = __esm({
23425
23399
  "src/internal/components/ReceiveMenu/ReceiveMenu.tsx"() {
23426
23400
  init_SessionContext();
@@ -23428,7 +23402,7 @@ var init_ReceiveMenu = __esm({
23428
23402
  import_react_query42 = require("@tanstack/react-query");
23429
23403
  import_lucide_react57 = require("lucide-react");
23430
23404
  import_qrcode = __toESM(require("qrcode"), 1);
23431
- import_react72 = require("react");
23405
+ import_react71 = require("react");
23432
23406
  init_nickname();
23433
23407
  init_profile();
23434
23408
  init_useLayoutDataStore();
@@ -23808,14 +23782,14 @@ var init_ConnectedApps2 = __esm({
23808
23782
  });
23809
23783
 
23810
23784
  // src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx
23811
- var import_lucide_react60, import_react73, import_jsx_runtime103, KeyshareStatus;
23785
+ var import_lucide_react60, import_react72, import_jsx_runtime103, KeyshareStatus;
23812
23786
  var init_KeyshareStatus = __esm({
23813
23787
  "src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx"() {
23814
23788
  import_lucide_react60 = require("lucide-react");
23815
- import_react73 = require("react");
23789
+ import_react72 = require("react");
23816
23790
  init_utils();
23817
23791
  import_jsx_runtime103 = require("react/jsx-runtime");
23818
- KeyshareStatus = (0, import_react73.forwardRef)((props, ref) => {
23792
+ KeyshareStatus = (0, import_react72.forwardRef)((props, ref) => {
23819
23793
  const { isLoading, content, icon: Icon2, children } = props;
23820
23794
  if (isLoading) return /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(import_lucide_react60.Loader, { className: "w-4 h-4 animate-spin" });
23821
23795
  return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)("div", { ref, className: "group relative w-full h-full", children: [
@@ -24142,10 +24116,10 @@ function updateLimits(patch) {
24142
24116
  usePolicyForm.setState((st) => ({ ...st, limits: { ...st?.limits, ...patch } }));
24143
24117
  }
24144
24118
  function useWatchFormData() {
24145
- const [showFormErrors, setShowFormErrors] = (0, import_react74.useState)(false);
24119
+ const [showFormErrors, setShowFormErrors] = (0, import_react73.useState)(false);
24146
24120
  const formData = usePolicyForm();
24147
24121
  const formState = usePolicyFormValidation();
24148
- (0, import_react74.useEffect)(() => {
24122
+ (0, import_react73.useEffect)(() => {
24149
24123
  if (!formData) return;
24150
24124
  setShowFormErrors(false);
24151
24125
  const errors = {};
@@ -24172,7 +24146,7 @@ function useWatchFormData() {
24172
24146
  }
24173
24147
  usePolicyFormValidation.setState(errors, true);
24174
24148
  }, [formData]);
24175
- (0, import_react74.useEffect)(() => () => usePolicyFormValidation.setState({}, true), []);
24149
+ (0, import_react73.useEffect)(() => () => usePolicyFormValidation.setState({}, true), []);
24176
24150
  const formErrorItem = Object.entries(formState).find(([_, value]) => value?.error);
24177
24151
  const formErrorMessage = formErrorItem ? `${formErrorItem[0].toUpperCase()}: ${formErrorItem[1]?.error}` : "";
24178
24152
  return {
@@ -24183,10 +24157,10 @@ function useWatchFormData() {
24183
24157
  setShowFormErrors
24184
24158
  };
24185
24159
  }
24186
- var import_react74, import_zustand14, usePolicyForm, usePolicyFormValidation;
24160
+ var import_react73, import_zustand14, usePolicyForm, usePolicyFormValidation;
24187
24161
  var init_usePolicyForm = __esm({
24188
24162
  "src/internal/components/SecurityMenu/UserPolicies/usePolicyForm.ts"() {
24189
- import_react74 = require("react");
24163
+ import_react73 = require("react");
24190
24164
  import_zustand14 = require("zustand");
24191
24165
  init_utils10();
24192
24166
  usePolicyForm = (0, import_zustand14.create)(() => null);
@@ -24217,10 +24191,10 @@ var init_useUserAssetsPolicies = __esm({
24217
24191
  // src/internal/components/SecurityMenu/UserPolicies/PolicyForm.tsx
24218
24192
  function AddressListEditor(props) {
24219
24193
  const { label, assets = [], addresses, onChange } = props;
24220
- const [isAssetSelector, setIsAssetSelector] = (0, import_react75.useState)(false);
24221
- const [customAddress, setCustomAddress] = (0, import_react75.useState)("");
24222
- const [customAddressError, setCustomAddressError] = (0, import_react75.useState)(null);
24223
- const handleAddress = (0, import_react75.useCallback)(
24194
+ const [isAssetSelector, setIsAssetSelector] = (0, import_react74.useState)(false);
24195
+ const [customAddress, setCustomAddress] = (0, import_react74.useState)("");
24196
+ const [customAddressError, setCustomAddressError] = (0, import_react74.useState)(null);
24197
+ const handleAddress = (0, import_react74.useCallback)(
24224
24198
  (addressToAdd) => {
24225
24199
  if (!isValidAddress(addressToAdd)) {
24226
24200
  setCustomAddressError("Bad address");
@@ -24447,14 +24421,14 @@ function PolicyForm() {
24447
24421
  showFormErrors && formErrorMessage && /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(Highlight, { type: "error", children: formErrorMessage })
24448
24422
  ] });
24449
24423
  }
24450
- var import_react_query47, import_lucide_react63, import_react75, import_jsx_runtime106;
24424
+ var import_react_query47, import_lucide_react63, import_react74, import_jsx_runtime106;
24451
24425
  var init_PolicyForm = __esm({
24452
24426
  "src/internal/components/SecurityMenu/UserPolicies/PolicyForm.tsx"() {
24453
24427
  init_SessionContext();
24454
24428
  init_useT();
24455
24429
  import_react_query47 = require("@tanstack/react-query");
24456
24430
  import_lucide_react63 = require("lucide-react");
24457
- import_react75 = require("react");
24431
+ import_react74 = require("react");
24458
24432
  init_button();
24459
24433
  init_highlight();
24460
24434
  init_input();
@@ -24536,7 +24510,7 @@ function UserPolicies() {
24536
24510
  const config = useProviderConfig().config;
24537
24511
  const mpcUserId = useSession((st) => st.session?.mpcUserId);
24538
24512
  const activeChainId = useSession((st) => st.activeChainId);
24539
- const [isConfirmingDelete, setIsConfirmingDelete] = (0, import_react76.useState)(false);
24513
+ const [isConfirmingDelete, setIsConfirmingDelete] = (0, import_react75.useState)(false);
24540
24514
  const { data: policyView, isLoading: isPolicyLoading } = useUserAssetsPolicies(activeChainId);
24541
24515
  const { mutate: cancelPending, isPending: isCancellingPending } = (0, import_react_query48.useMutation)({
24542
24516
  mutationFn: async () => {
@@ -24649,7 +24623,7 @@ function UserPolicies() {
24649
24623
  ] })
24650
24624
  ] });
24651
24625
  }
24652
- var import_react_query48, import_clsx3, import_lucide_react64, import_react76, import_jsx_runtime107;
24626
+ var import_react_query48, import_clsx3, import_lucide_react64, import_react75, import_jsx_runtime107;
24653
24627
  var init_UserPolicies = __esm({
24654
24628
  "src/internal/components/SecurityMenu/UserPolicies/UserPolicies.tsx"() {
24655
24629
  init_ProviderContext();
@@ -24658,7 +24632,7 @@ var init_UserPolicies = __esm({
24658
24632
  import_react_query48 = require("@tanstack/react-query");
24659
24633
  import_clsx3 = __toESM(require("clsx"), 1);
24660
24634
  import_lucide_react64 = require("lucide-react");
24661
- import_react76 = require("react");
24635
+ import_react75 = require("react");
24662
24636
  init_button();
24663
24637
  init_highlight();
24664
24638
  init_api4();
@@ -24683,9 +24657,9 @@ var init_UserPolicies2 = __esm({
24683
24657
 
24684
24658
  // src/internal/components/SecurityMenu/useSecurityMenuParams.ts
24685
24659
  function useSecurityMenuParams() {
24686
- (0, import_react77.useEffect)(() => {
24660
+ (0, import_react76.useEffect)(() => {
24687
24661
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
24688
- if (!pageParams || !(0, import_lodash_es14.keys)(pageParams).length) return;
24662
+ if (!pageParams || !(0, import_lodash_es15.keys)(pageParams).length) return;
24689
24663
  const { submenu } = pageParams;
24690
24664
  setTimeout(() => {
24691
24665
  switch (submenu) {
@@ -24707,11 +24681,11 @@ function useSecurityMenuParams() {
24707
24681
  setPageParams(null);
24708
24682
  }, []);
24709
24683
  }
24710
- var import_lodash_es14, import_react77;
24684
+ var import_lodash_es15, import_react76;
24711
24685
  var init_useSecurityMenuParams = __esm({
24712
24686
  "src/internal/components/SecurityMenu/useSecurityMenuParams.ts"() {
24713
- import_lodash_es14 = require("lodash-es");
24714
- import_react77 = require("react");
24687
+ import_lodash_es15 = require("lodash-es");
24688
+ import_react76 = require("react");
24715
24689
  init_useLayoutDataStore();
24716
24690
  init_UserPolicies2();
24717
24691
  init_useSecurityStore();
@@ -24726,7 +24700,7 @@ function SecurityMenuContent() {
24726
24700
  const { appToUntrust, showConnectedApps, showAssetsPolicies } = useSecurityStore();
24727
24701
  const policyForm = usePolicyForm();
24728
24702
  useOnboardingTourAvailable(!showConnectedApps && !showAssetsPolicies);
24729
- (0, import_react78.useEffect)(() => {
24703
+ (0, import_react77.useEffect)(() => {
24730
24704
  let securityTitle = "";
24731
24705
  switch (true) {
24732
24706
  case showConnectedApps:
@@ -24747,7 +24721,7 @@ function SecurityMenuContent() {
24747
24721
  return () => {
24748
24722
  };
24749
24723
  }, [t, showConnectedApps, showAssetsPolicies, policyForm]);
24750
- (0, import_react78.useEffect)(
24724
+ (0, import_react77.useEffect)(
24751
24725
  () => () => {
24752
24726
  usePolicyForm.setState(null, true);
24753
24727
  useSecurityStore.setState(
@@ -24841,13 +24815,13 @@ function SecurityMenu() {
24841
24815
  /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(SecurityMenuContent, {})
24842
24816
  ] });
24843
24817
  }
24844
- var import_lucide_react65, import_react78, import_jsx_runtime108;
24818
+ var import_lucide_react65, import_react77, import_jsx_runtime108;
24845
24819
  var init_SecurityMenu = __esm({
24846
24820
  "src/internal/components/SecurityMenu/SecurityMenu.tsx"() {
24847
24821
  init_ProviderContext();
24848
24822
  init_i18n();
24849
24823
  import_lucide_react65 = require("lucide-react");
24850
- import_react78 = require("react");
24824
+ import_react77 = require("react");
24851
24825
  init_useLayoutDataStore();
24852
24826
  init_Expandable2();
24853
24827
  init_Onboarding();
@@ -25051,8 +25025,8 @@ var init_SenderSelector = __esm({
25051
25025
  function useAvailableSenders() {
25052
25026
  const address = useSession((st) => st.address);
25053
25027
  const { profiles } = useLinkedProfiles();
25054
- const lastCalcedSenders = (0, import_react79.useRef)([]);
25055
- (0, import_react79.useEffect)(() => {
25028
+ const lastCalcedSenders = (0, import_react78.useRef)([]);
25029
+ (0, import_react78.useEffect)(() => {
25056
25030
  const sendersAccumulator = [
25057
25031
  {
25058
25032
  type: "embarkai-wallet",
@@ -25086,13 +25060,13 @@ function useAvailableSenders() {
25086
25060
  directWalletProfiles: profiles.filter((p) => p.provider === "wallet")
25087
25061
  };
25088
25062
  }
25089
- var import_react79;
25063
+ var import_react78;
25090
25064
  var init_useAvailableSenders = __esm({
25091
25065
  "src/internal/components/SendMenu/hyperbridge/hooks/useAvailableSenders.ts"() {
25092
25066
  init_SessionContext();
25093
25067
  init_tokens();
25094
25068
  init_linkedProfiles();
25095
- import_react79 = require("react");
25069
+ import_react78 = require("react");
25096
25070
  init_wallets();
25097
25071
  init_useBridgeStore();
25098
25072
  }
@@ -25507,18 +25481,18 @@ function useHyperlaneHistory() {
25507
25481
  getNextPageParam: (lastPage) => lastPage.page < lastPage.pageCount ? lastPage.page + 1 : void 0,
25508
25482
  queryFn: async ({ pageParam }) => await getHyperlaneBridgeHistory({ page: pageParam, pageSize: TX_HISTORY_PAGE_SIZE })
25509
25483
  });
25510
- const txList = (0, import_react80.useMemo)(
25484
+ const txList = (0, import_react79.useMemo)(
25511
25485
  () => query?.data?.pages?.map((p) => p.data).flat(Infinity) || [],
25512
25486
  [query?.data]
25513
25487
  );
25514
25488
  return { query, txList };
25515
25489
  }
25516
- var import_react_query49, import_react80, HYPERLANE_HISTORY_QUERY_KEY, TX_HISTORY_PAGE_SIZE, TX_HISTORY_POLLING_INTERVAL;
25490
+ var import_react_query49, import_react79, HYPERLANE_HISTORY_QUERY_KEY, TX_HISTORY_PAGE_SIZE, TX_HISTORY_POLLING_INTERVAL;
25517
25491
  var init_useHyperlaneHistory = __esm({
25518
25492
  "src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneHistory.ts"() {
25519
25493
  init_SessionContext();
25520
25494
  import_react_query49 = require("@tanstack/react-query");
25521
- import_react80 = require("react");
25495
+ import_react79 = require("react");
25522
25496
  init_useLayoutDataStore();
25523
25497
  init_useFlowSelector();
25524
25498
  init_api5();
@@ -25550,7 +25524,7 @@ function useBridge() {
25550
25524
  const address = useSession((st) => st.address);
25551
25525
  const { data: walletClient } = (0, import_wagmi6.useWalletClient)();
25552
25526
  const { mutateAsync: switchChainAsync } = (0, import_wagmi6.useSwitchChain)();
25553
- const swapDirection = (0, import_react81.useCallback)(() => {
25527
+ const swapDirection = (0, import_react80.useCallback)(() => {
25554
25528
  const {
25555
25529
  // bridgeStep,
25556
25530
  originChain,
@@ -25601,7 +25575,7 @@ function useBridge() {
25601
25575
  useFlowSelectorStore.getState().setError(error instanceof Error ? error.message : String(error));
25602
25576
  }
25603
25577
  });
25604
- const handleQuoteEstimation = (0, import_react81.useCallback)((amnt) => {
25578
+ const handleQuoteEstimation = (0, import_react80.useCallback)((amnt) => {
25605
25579
  const { originChain, destinationChain, bridgeSender } = useBridgeStore.getState();
25606
25580
  if (!amnt || !Number(amnt)) {
25607
25581
  useBridgeStore.getState().setQuote(null);
@@ -25736,13 +25710,13 @@ function useBridge() {
25736
25710
  isAssetBridging
25737
25711
  };
25738
25712
  }
25739
- var import_react_query50, import_react81, import_wagmi6;
25713
+ var import_react_query50, import_react80, import_wagmi6;
25740
25714
  var init_useBridge = __esm({
25741
25715
  "src/internal/components/SendMenu/hyperbridge/hooks/useBridge.ts"() {
25742
25716
  init_SessionContext();
25743
25717
  init_i18n();
25744
25718
  import_react_query50 = require("@tanstack/react-query");
25745
- import_react81 = require("react");
25719
+ import_react80 = require("react");
25746
25720
  import_wagmi6 = require("wagmi");
25747
25721
  init_useLayoutStore();
25748
25722
  init_useExternalWalletStore();
@@ -25773,7 +25747,7 @@ function useHyperlaneRoutes() {
25773
25747
  queryKey: [HYPERLANE_WARP_ROUTES_QUERY_KEY, address],
25774
25748
  queryFn: async () => await getHyperlaneWarpRoutes()
25775
25749
  });
25776
- (0, import_react82.useEffect)(() => {
25750
+ (0, import_react81.useEffect)(() => {
25777
25751
  if (!errorWarpRoutes) return;
25778
25752
  useFlowSelectorStore.getState().setError(errorWarpRoutes.message);
25779
25753
  const { resetSelections, setRecipient, setOriginChain, setDestinationChain } = useBridgeStore.getState();
@@ -25782,7 +25756,7 @@ function useHyperlaneRoutes() {
25782
25756
  setOriginChain(null);
25783
25757
  setDestinationChain(null);
25784
25758
  }, [errorWarpRoutes]);
25785
- (0, import_react82.useEffect)(() => {
25759
+ (0, import_react81.useEffect)(() => {
25786
25760
  if (!!hyperRoute || !hyperlaneWarpRoutes.length) return;
25787
25761
  let targetHyperRouteToSelect = hyperlaneWarpRoutes.find((route) => route.routeId === hyperRoute);
25788
25762
  if (!targetHyperRouteToSelect) {
@@ -25807,12 +25781,12 @@ function useHyperlaneRoutes() {
25807
25781
  }, [hyperRoute, hyperlaneWarpRoutes]);
25808
25782
  return { hyperlaneWarpRoutes, isLoadingWarpRoutes };
25809
25783
  }
25810
- var import_react_query51, import_react82, HYPERLANE_WARP_ROUTES_QUERY_KEY;
25784
+ var import_react_query51, import_react81, HYPERLANE_WARP_ROUTES_QUERY_KEY;
25811
25785
  var init_useHyperlaneRoutes = __esm({
25812
25786
  "src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneRoutes.ts"() {
25813
25787
  init_SessionContext();
25814
25788
  import_react_query51 = require("@tanstack/react-query");
25815
- import_react82 = require("react");
25789
+ import_react81 = require("react");
25816
25790
  init_useLayoutDataStore();
25817
25791
  init_useFlowSelector();
25818
25792
  init_api5();
@@ -25828,7 +25802,7 @@ function useMenuTitle(warpRoutes) {
25828
25802
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
25829
25803
  const hyperRoute = useBridgeStore((st) => st.hyperRoute);
25830
25804
  const hyperRouteMeta = warpRoutes?.length ? warpRoutes.find((route) => route.routeId === hyperRoute) : null;
25831
- (0, import_react83.useEffect)(() => {
25805
+ (0, import_react82.useEffect)(() => {
25832
25806
  const updateMenuTitle = useFlowSelectorStore.getState().setMenuTitle;
25833
25807
  switch (true) {
25834
25808
  case bridgeStep === "sender-selector":
@@ -25856,11 +25830,11 @@ function useMenuTitle(warpRoutes) {
25856
25830
  }
25857
25831
  }, [bridgeStep, hyperRouteMeta, t]);
25858
25832
  }
25859
- var import_react83;
25833
+ var import_react82;
25860
25834
  var init_useMenuTitle = __esm({
25861
25835
  "src/internal/components/SendMenu/hyperbridge/hooks/useMenuTitle.ts"() {
25862
25836
  init_i18n();
25863
- import_react83 = require("react");
25837
+ import_react82 = require("react");
25864
25838
  init_useFlowSelector();
25865
25839
  init_useBridgeStore();
25866
25840
  }
@@ -26110,7 +26084,7 @@ function useBridgeBalance(isLoadingWarpRoutes, hyperlaneWarpRoutes) {
26110
26084
  };
26111
26085
  }
26112
26086
  });
26113
- const refreshRouteTokenBalance = (0, import_react84.useCallback)(
26087
+ const refreshRouteTokenBalance = (0, import_react83.useCallback)(
26114
26088
  (senderWallet) => {
26115
26089
  switch (true) {
26116
26090
  case senderWallet === "embarkai-wallet":
@@ -26126,7 +26100,7 @@ function useBridgeBalance(isLoadingWarpRoutes, hyperlaneWarpRoutes) {
26126
26100
  },
26127
26101
  [refreshBalances, qc]
26128
26102
  );
26129
- (0, import_react84.useEffect)(() => {
26103
+ (0, import_react83.useEffect)(() => {
26130
26104
  if (!!isLoadingWarpRoutes || !bridgeSender || !originChain) return;
26131
26105
  switch (bridgeSender) {
26132
26106
  case "embarkai-wallet":
@@ -26157,14 +26131,14 @@ function useBridgeBalance(isLoadingWarpRoutes, hyperlaneWarpRoutes) {
26157
26131
  isRouteTokenBalanceLoading: isAssetsLoading || isExternalBalanceLoading || isExternalNativeBalanceLoading
26158
26132
  };
26159
26133
  }
26160
- var import_core8, import_react_query52, import_react84, import_viem15, import_wagmi7, EXTERNAL_WALLET_BRIDGING_BALANCE_QUERY, EXTERNAL_WALLET_BRIDGING_NATIVE_BALANCE_QUERY;
26134
+ var import_core8, import_react_query52, import_react83, import_viem15, import_wagmi7, EXTERNAL_WALLET_BRIDGING_BALANCE_QUERY, EXTERNAL_WALLET_BRIDGING_NATIVE_BALANCE_QUERY;
26161
26135
  var init_useBridgeBalance = __esm({
26162
26136
  "src/internal/components/SendMenu/hyperbridge/hooks/useBridgeBalance.ts"() {
26163
26137
  init_SessionContext();
26164
26138
  init_i18n();
26165
26139
  import_core8 = require("@embarkai/core");
26166
26140
  import_react_query52 = require("@tanstack/react-query");
26167
- import_react84 = require("react");
26141
+ import_react83 = require("react");
26168
26142
  import_viem15 = require("viem");
26169
26143
  import_wagmi7 = require("wagmi");
26170
26144
  init_useBlockscoutAssets2();
@@ -26293,7 +26267,7 @@ function SelectStep(props) {
26293
26267
  variant: "outline",
26294
26268
  size: "medium",
26295
26269
  className: "bg-[var(--ui-kit-bg)] flex items-center gap-[var(--ui-kit-gap)]",
26296
- children: selectedWarpRoute.chainPair.map((chain, chIdx) => /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)(import_react85.Fragment, { children: [
26270
+ children: selectedWarpRoute.chainPair.map((chain, chIdx) => /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)(import_react84.Fragment, { children: [
26297
26271
  chIdx > 0 && /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_lucide_react67.ArrowLeftRightIcon, { className: "w-4 h-4 " }),
26298
26272
  /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(ResolveChainIcon, { chainName: chain.chainName, className: "w-4 h-4" })
26299
26273
  ] }, `${selectedWarpRoute.id}-icon-${chain.chainID}-${chIdx}`))
@@ -26437,13 +26411,13 @@ function SelectStep(props) {
26437
26411
  )
26438
26412
  ] });
26439
26413
  }
26440
- var import_lucide_react67, import_react85, import_jsx_runtime111;
26414
+ var import_lucide_react67, import_react84, import_jsx_runtime111;
26441
26415
  var init_SelectStep = __esm({
26442
26416
  "src/internal/components/SendMenu/hyperbridge/steps/SelectStep.tsx"() {
26443
26417
  init_tokens();
26444
26418
  init_i18n();
26445
26419
  import_lucide_react67 = require("lucide-react");
26446
- import_react85 = require("react");
26420
+ import_react84 = require("react");
26447
26421
  init_priceFormatter();
26448
26422
  init_utils();
26449
26423
  init_useExternalWalletStore();
@@ -26494,7 +26468,7 @@ var init_checkbox = __esm({
26494
26468
  // src/internal/components/SendMenu/hyperbridge/steps/ConfirmStep.tsx
26495
26469
  function ConfirmStep(props) {
26496
26470
  const { isAssetBridging, bridgeAsset, hyperlaneWarpRoutes } = props;
26497
- const [userConsent, setUserConsent] = (0, import_react86.useState)(false);
26471
+ const [userConsent, setUserConsent] = (0, import_react85.useState)(false);
26498
26472
  const { t } = useT();
26499
26473
  const address = useSession((st) => st.address);
26500
26474
  const bridgeSender = useBridgeStore((st) => st.bridgeSenders.find((s) => s.type === st.bridgeSender));
@@ -26610,13 +26584,13 @@ function ConfirmStep(props) {
26610
26584
  }
26611
26585
  );
26612
26586
  }
26613
- var import_lucide_react69, import_react86, import_jsx_runtime113, P_CN;
26587
+ var import_lucide_react69, import_react85, import_jsx_runtime113, P_CN;
26614
26588
  var init_ConfirmStep = __esm({
26615
26589
  "src/internal/components/SendMenu/hyperbridge/steps/ConfirmStep.tsx"() {
26616
26590
  init_SessionContext();
26617
26591
  init_i18n();
26618
26592
  import_lucide_react69 = require("lucide-react");
26619
- import_react86 = require("react");
26593
+ import_react85 = require("react");
26620
26594
  init_priceFormatter();
26621
26595
  init_utils();
26622
26596
  init_Onboarding();
@@ -26993,7 +26967,7 @@ function SelectAssetRoute(props) {
26993
26967
  const { hyperlaneWarpRoutes } = props;
26994
26968
  const { t } = useT();
26995
26969
  const selectedAssetSymbol = useBridgeStore((st) => st.bridgeAssetSymbol);
26996
- const tokenList = (0, import_react87.useMemo)(() => {
26970
+ const tokenList = (0, import_react86.useMemo)(() => {
26997
26971
  const tokens = hyperlaneWarpRoutes.map((route) => route.symbol);
26998
26972
  const uniqueTokens = Array.from(new Set(tokens));
26999
26973
  return uniqueTokens.map((symbol) => ({
@@ -27070,13 +27044,13 @@ function SelectAssetRoute(props) {
27070
27044
  ] })
27071
27045
  ] });
27072
27046
  }
27073
- var import_lucide_react71, import_react87, import_jsx_runtime116;
27047
+ var import_lucide_react71, import_react86, import_jsx_runtime116;
27074
27048
  var init_SelectAssetRoute = __esm({
27075
27049
  "src/internal/components/SendMenu/hyperbridge/steps/SelectAssetRoute.tsx"() {
27076
27050
  init_tokens();
27077
27051
  init_i18n();
27078
27052
  import_lucide_react71 = require("lucide-react");
27079
- import_react87 = require("react");
27053
+ import_react86 = require("react");
27080
27054
  init_button();
27081
27055
  init_ResolveChainIcon();
27082
27056
  init_useBridgeStore();
@@ -27103,7 +27077,7 @@ function HyperlaneBridge() {
27103
27077
  const { hyperlaneWarpRoutes, isLoadingWarpRoutes } = useHyperlaneRoutes();
27104
27078
  const { directWalletProfiles } = useAvailableSenders();
27105
27079
  useMenuTitle(hyperlaneWarpRoutes);
27106
- (0, import_react88.useEffect)(() => {
27080
+ (0, import_react87.useEffect)(() => {
27107
27081
  return () => {
27108
27082
  useBridgeStore.getState().resetSelections();
27109
27083
  };
@@ -27136,10 +27110,10 @@ function HyperlaneBridge() {
27136
27110
  bridgeStep === "tx-history-details" && /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(HistoryDetailsStep, {})
27137
27111
  ] });
27138
27112
  }
27139
- var import_react88, import_jsx_runtime117;
27113
+ var import_react87, import_jsx_runtime117;
27140
27114
  var init_HyperlaneBridge = __esm({
27141
27115
  "src/internal/components/SendMenu/hyperbridge/HyperlaneBridge.tsx"() {
27142
- import_react88 = require("react");
27116
+ import_react87 = require("react");
27143
27117
  init_SenderSelector();
27144
27118
  init_useAvailableSenders();
27145
27119
  init_useBridge();
@@ -27157,7 +27131,7 @@ function BridgeHistorySwitch(props) {
27157
27131
  const selectorFlow = useFlowSelectorStore((st) => st.flow);
27158
27132
  const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
27159
27133
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
27160
- const lastBridgeStepRef = (0, import_react89.useRef)(null);
27134
+ const lastBridgeStepRef = (0, import_react88.useRef)(null);
27161
27135
  if (selectorFlow !== "bridge" || bridgeStep === "confirm" || bridgeStep === "success" || bridgeStep === "sender-selector" || bridgeStep === "select-token" || bridgeStep === "tx-history-details") {
27162
27136
  return null;
27163
27137
  }
@@ -27176,10 +27150,10 @@ function BridgeHistorySwitch(props) {
27176
27150
  }
27177
27151
  );
27178
27152
  }
27179
- var import_react89, import_jsx_runtime118;
27153
+ var import_react88, import_jsx_runtime118;
27180
27154
  var init_HistorySwitch = __esm({
27181
27155
  "src/internal/components/SendMenu/hyperbridge/components/HistorySwitch.tsx"() {
27182
- import_react89 = require("react");
27156
+ import_react88 = require("react");
27183
27157
  init_switch();
27184
27158
  init_useFlowSelector();
27185
27159
  init_useBridgeStore();
@@ -27270,11 +27244,11 @@ function looksLikeNickname(input) {
27270
27244
  }
27271
27245
  function useNicknameResolve(input, options) {
27272
27246
  const { enabled = true, chainId } = options;
27273
- const [debouncedInput, setDebouncedInput] = (0, import_react90.useState)("");
27274
- const [isDebouncing, setIsDebouncing] = (0, import_react90.useState)(false);
27247
+ const [debouncedInput, setDebouncedInput] = (0, import_react89.useState)("");
27248
+ const [isDebouncing, setIsDebouncing] = (0, import_react89.useState)(false);
27275
27249
  const normalized = normalizeNickname(input);
27276
27250
  const isNicknameInput = looksLikeNickname(input) && normalized.length >= 3;
27277
- (0, import_react90.useEffect)(() => {
27251
+ (0, import_react89.useEffect)(() => {
27278
27252
  if (!isNicknameInput || !enabled) {
27279
27253
  setDebouncedInput("");
27280
27254
  setIsDebouncing(false);
@@ -27300,7 +27274,7 @@ function useNicknameResolve(input, options) {
27300
27274
  const isNotFound = query.isError && query.error?.code === "NICKNAME_NOT_FOUND";
27301
27275
  const isWalletNotSetup = !!query.data && query.data.resolvedTarget === null;
27302
27276
  const isFrozen = query.data?.isFrozen ?? false;
27303
- const fingerprintVerification = (0, import_react90.useMemo)(() => {
27277
+ const fingerprintVerification = (0, import_react89.useMemo)(() => {
27304
27278
  if (!query.data?.owner || !query.data?.fingerprint) {
27305
27279
  return null;
27306
27280
  }
@@ -27322,11 +27296,11 @@ function useNicknameResolve(input, options) {
27322
27296
  resolvedAddress
27323
27297
  };
27324
27298
  }
27325
- var import_react_query54, import_react90, DEBOUNCE_MS2;
27299
+ var import_react_query54, import_react89, DEBOUNCE_MS2;
27326
27300
  var init_useNicknameResolve = __esm({
27327
27301
  "src/hooks/useNicknameResolve.ts"() {
27328
27302
  import_react_query54 = require("@tanstack/react-query");
27329
- import_react90 = require("react");
27303
+ import_react89 = require("react");
27330
27304
  init_nickname();
27331
27305
  init_profile();
27332
27306
  init_nickname_fingerprint();
@@ -27339,10 +27313,10 @@ var init_useNicknameResolve = __esm({
27339
27313
  function useSendTransaction() {
27340
27314
  const session = useSession((st) => st.session);
27341
27315
  const address = useSession((st) => st.address);
27342
- const [isLoading, setIsLoading] = (0, import_react91.useState)(false);
27343
- const [error, setError] = (0, import_react91.useState)(null);
27344
- const [userOpHash, setUserOpHash] = (0, import_react91.useState)(null);
27345
- const sendTransaction = (0, import_react91.useCallback)(
27316
+ const [isLoading, setIsLoading] = (0, import_react90.useState)(false);
27317
+ const [error, setError] = (0, import_react90.useState)(null);
27318
+ const [userOpHash, setUserOpHash] = (0, import_react90.useState)(null);
27319
+ const sendTransaction = (0, import_react90.useCallback)(
27346
27320
  async (params) => {
27347
27321
  if (!session || !address) {
27348
27322
  setError("No active session");
@@ -27439,7 +27413,7 @@ function useSendTransaction() {
27439
27413
  },
27440
27414
  [session, address]
27441
27415
  );
27442
- const reset = (0, import_react91.useCallback)(() => {
27416
+ const reset = (0, import_react90.useCallback)(() => {
27443
27417
  setError(null);
27444
27418
  setUserOpHash(null);
27445
27419
  setIsLoading(false);
@@ -27452,10 +27426,10 @@ function useSendTransaction() {
27452
27426
  reset
27453
27427
  };
27454
27428
  }
27455
- var import_react91, import_viem16, ERC20_TRANSFER_ABI, ERC721_SAFE_TRANSFER_ABI, ERC1155_SAFE_TRANSFER_ABI;
27429
+ var import_react90, import_viem16, ERC20_TRANSFER_ABI, ERC721_SAFE_TRANSFER_ABI, ERC1155_SAFE_TRANSFER_ABI;
27456
27430
  var init_useSendTransaction = __esm({
27457
27431
  "src/hooks/useSendTransaction.ts"() {
27458
- import_react91 = require("react");
27432
+ import_react90 = require("react");
27459
27433
  import_viem16 = require("viem");
27460
27434
  init_SessionContext();
27461
27435
  init_account2();
@@ -27606,7 +27580,7 @@ var init_AssetInputIcon = __esm({
27606
27580
 
27607
27581
  // src/internal/components/SendMenu/send/components/NftDisplayCard.tsx
27608
27582
  function NftDisplayCard({ asset }) {
27609
- const [imageError, setImageError] = (0, import_react92.useState)(false);
27583
+ const [imageError, setImageError] = (0, import_react91.useState)(false);
27610
27584
  const nftImage = asset.image || asset.nftMetadata?.image;
27611
27585
  return /* @__PURE__ */ (0, import_jsx_runtime120.jsxs)("div", { className: "flex items-center gap-3 p-3 rounded-[var(--ui-kit-el-bdrs)] bg-[var(--ui-kit-bg-secondary)]", children: [
27612
27586
  nftImage && !imageError ? /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
@@ -27634,11 +27608,11 @@ function NftDisplayCard({ asset }) {
27634
27608
  ] })
27635
27609
  ] });
27636
27610
  }
27637
- var import_lucide_react73, import_react92, import_jsx_runtime120;
27611
+ var import_lucide_react73, import_react91, import_jsx_runtime120;
27638
27612
  var init_NftDisplayCard = __esm({
27639
27613
  "src/internal/components/SendMenu/send/components/NftDisplayCard.tsx"() {
27640
27614
  import_lucide_react73 = require("lucide-react");
27641
- import_react92 = require("react");
27615
+ import_react91 = require("react");
27642
27616
  import_jsx_runtime120 = require("react/jsx-runtime");
27643
27617
  }
27644
27618
  });
@@ -27758,7 +27732,7 @@ function NicknameData(props) {
27758
27732
  isWalletNotSetup,
27759
27733
  isFrozen
27760
27734
  } = resolvedNicknameData;
27761
- (0, import_react93.useEffect)(() => {
27735
+ (0, import_react92.useEffect)(() => {
27762
27736
  if (isResolving) return;
27763
27737
  let errMessage = null;
27764
27738
  switch (true) {
@@ -27813,11 +27787,11 @@ function NicknameData(props) {
27813
27787
  ] })
27814
27788
  ] });
27815
27789
  }
27816
- var import_lucide_react74, import_react93, import_jsx_runtime122;
27790
+ var import_lucide_react74, import_react92, import_jsx_runtime122;
27817
27791
  var init_NicknameData = __esm({
27818
27792
  "src/internal/components/SendMenu/send/components/NicknameData.tsx"() {
27819
27793
  import_lucide_react74 = require("lucide-react");
27820
- import_react93 = require("react");
27794
+ import_react92 = require("react");
27821
27795
  init_no_image();
27822
27796
  init_utils();
27823
27797
  init_useFlowSelector();
@@ -28350,16 +28324,16 @@ function SendMenu() {
28350
28324
  userOpHash,
28351
28325
  reset
28352
28326
  } = useSendTransaction();
28353
- (0, import_react94.useEffect)(() => {
28327
+ (0, import_react93.useEffect)(() => {
28354
28328
  useFlowSelectorStore.getState().setIsUiLocked(isAssetsLoading || isTransactionPending);
28355
28329
  }, [isAssetsLoading, isTransactionPending]);
28356
- (0, import_react94.useEffect)(() => {
28330
+ (0, import_react93.useEffect)(() => {
28357
28331
  useFlowSelectorStore.getState().setError(sendTransactionError || null);
28358
28332
  }, [sendTransactionError]);
28359
28333
  const { txStep, recipient, amount, selectedAsset, setSelectedAsset } = useSendStore();
28360
28334
  const isNft = isNftAsset3(selectedAsset);
28361
28335
  const isSecurity = isSecurityToken2(selectedAsset);
28362
- (0, import_react94.useEffect)(() => {
28336
+ (0, import_react93.useEffect)(() => {
28363
28337
  const shouldDefaultAsset = assets.length > 0 && !selectedAsset;
28364
28338
  if (!shouldDefaultAsset) return;
28365
28339
  const chainNativeCurrency = useSession.getState().chainConfig?.nativeCurrency;
@@ -28369,7 +28343,7 @@ function SendMenu() {
28369
28343
  if (isBalance(erc20)) return setSelectedAsset(erc20);
28370
28344
  setSelectedAsset(assets[0]);
28371
28345
  }, [assets, selectedAsset]);
28372
- (0, import_react94.useEffect)(
28346
+ (0, import_react93.useEffect)(
28373
28347
  () => () => {
28374
28348
  useSendStore.getState().reset();
28375
28349
  reset();
@@ -28379,7 +28353,7 @@ function SendMenu() {
28379
28353
  const isNicknameInput = looksLikeNickname(recipient);
28380
28354
  const resolvedNicknameData = useNicknameResolve(recipient, { enabled: isNicknameInput, chainId: activeChainId });
28381
28355
  const effectiveAddress = isNicknameInput ? resolvedNicknameData?.resolvedAddress : recipient;
28382
- const complianceAmount = (0, import_react94.useMemo)(() => {
28356
+ const complianceAmount = (0, import_react93.useMemo)(() => {
28383
28357
  if (!isSecurity || !amount || !selectedAsset) return void 0;
28384
28358
  try {
28385
28359
  return (0, import_viem21.parseUnits)(amount, selectedAsset.decimals || 18);
@@ -28394,7 +28368,7 @@ function SendMenu() {
28394
28368
  enabled: isSecurity && !!effectiveAddress && !!complianceAmount,
28395
28369
  chainId: activeChainId
28396
28370
  });
28397
- (0, import_react94.useEffect)(() => {
28371
+ (0, import_react93.useEffect)(() => {
28398
28372
  const updateMenuTitle = useFlowSelectorStore.getState().setMenuTitle;
28399
28373
  switch (true) {
28400
28374
  case txStep === "select-asset":
@@ -28464,7 +28438,7 @@ function SendMenu() {
28464
28438
  ] })
28465
28439
  ] });
28466
28440
  }
28467
- var import_lucide_react77, import_react94, import_viem21, import_jsx_runtime125;
28441
+ var import_lucide_react77, import_react93, import_viem21, import_jsx_runtime125;
28468
28442
  var init_SendMenu = __esm({
28469
28443
  "src/internal/components/SendMenu/send/SendMenu.tsx"() {
28470
28444
  init_SessionContext();
@@ -28473,7 +28447,7 @@ var init_SendMenu = __esm({
28473
28447
  init_useSendTransaction();
28474
28448
  init_useT();
28475
28449
  import_lucide_react77 = require("lucide-react");
28476
- import_react94 = require("react");
28450
+ import_react93 = require("react");
28477
28451
  import_viem21 = require("viem");
28478
28452
  init_useBlockscoutAssets2();
28479
28453
  init_useLayoutDataStore();
@@ -28499,9 +28473,9 @@ var init_send = __esm({
28499
28473
  // src/internal/components/SendMenu/useSendMenuParams.ts
28500
28474
  function useSendMenuParams() {
28501
28475
  const { config } = useProviderConfig();
28502
- (0, import_react95.useEffect)(() => {
28476
+ (0, import_react94.useEffect)(() => {
28503
28477
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
28504
- if (!pageParams || !(0, import_lodash_es15.keys)(pageParams).length) return;
28478
+ if (!pageParams || !(0, import_lodash_es16.keys)(pageParams).length) return;
28505
28479
  const { sendFlow, send, bridge } = pageParams || {};
28506
28480
  if (sendFlow === "bridge" && !config?.current?.features?.showAssetBridge) {
28507
28481
  setPageParams(null);
@@ -28552,12 +28526,12 @@ function useSendMenuParams() {
28552
28526
  setPageParams(null);
28553
28527
  }, []);
28554
28528
  }
28555
- var import_lodash_es15, import_react95;
28529
+ var import_lodash_es16, import_react94;
28556
28530
  var init_useSendMenuParams = __esm({
28557
28531
  "src/internal/components/SendMenu/useSendMenuParams.ts"() {
28558
28532
  init_ProviderContext();
28559
- import_lodash_es15 = require("lodash-es");
28560
- import_react95 = require("react");
28533
+ import_lodash_es16 = require("lodash-es");
28534
+ import_react94 = require("react");
28561
28535
  init_useLayoutDataStore();
28562
28536
  init_useBridgeStore();
28563
28537
  init_useSendStore();
@@ -28625,17 +28599,17 @@ function SendFlowSelector() {
28625
28599
  const sendStep = useSendStore((st) => st.txStep);
28626
28600
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
28627
28601
  useOnboardingTourAvailable(sendStep === "input" && bridgeStep === "select");
28628
- (0, import_react96.useEffect)(
28602
+ (0, import_react95.useEffect)(
28629
28603
  () => () => {
28630
28604
  useFlowSelectorStore.getState().setError(null);
28631
28605
  },
28632
28606
  []
28633
28607
  );
28634
- (0, import_react96.useEffect)(() => {
28608
+ (0, import_react95.useEffect)(() => {
28635
28609
  if (!!config?.current?.features?.showAssetBridge) return;
28636
28610
  if (selectorFlow === "bridge") useFlowSelectorStore.getState().setFlow("send");
28637
28611
  }, [selectorFlow]);
28638
- const availableFlows = (0, import_react96.useMemo)(() => {
28612
+ const availableFlows = (0, import_react95.useMemo)(() => {
28639
28613
  const selectorFlows = { send: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(SendMenu, {}) };
28640
28614
  if (!!config?.current?.features?.showAssetBridge) selectorFlows.bridge = /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(HyperlaneBridge, {});
28641
28615
  return selectorFlows;
@@ -28700,13 +28674,13 @@ function SendFlowSelector() {
28700
28674
  ] })
28701
28675
  ] });
28702
28676
  }
28703
- var import_lucide_react78, import_react96, import_jsx_runtime126;
28677
+ var import_lucide_react78, import_react95, import_jsx_runtime126;
28704
28678
  var init_SendFlowSelector = __esm({
28705
28679
  "src/internal/components/SendMenu/SendFlowSelector.tsx"() {
28706
28680
  init_ProviderContext();
28707
28681
  init_i18n();
28708
28682
  import_lucide_react78 = require("lucide-react");
28709
- import_react96 = require("react");
28683
+ import_react95 = require("react");
28710
28684
  init_useLayoutDataStore();
28711
28685
  init_utils();
28712
28686
  init_Expandable2();
@@ -28769,12 +28743,12 @@ function getServerSnapshot() {
28769
28743
  return false;
28770
28744
  }
28771
28745
  function useProMode() {
28772
- return (0, import_react97.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot);
28746
+ return (0, import_react96.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot);
28773
28747
  }
28774
- var import_react97, STORAGE_KEY, EVENT_NAME;
28748
+ var import_react96, STORAGE_KEY, EVENT_NAME;
28775
28749
  var init_pro_mode = __esm({
28776
28750
  "src/internal/lib/pro-mode.ts"() {
28777
- import_react97 = require("react");
28751
+ import_react96 = require("react");
28778
28752
  STORAGE_KEY = "embarkai_pro_mode";
28779
28753
  EVENT_NAME = "embarkai-pro-mode-changed";
28780
28754
  }
@@ -29580,7 +29554,7 @@ function TransactionsMenu() {
29580
29554
  const { t } = useT();
29581
29555
  useOnboardingTourAvailable(true);
29582
29556
  const setPage = useLayoutDataStore((st) => st.setPage);
29583
- const [expandedGroups, setExpandedGroups] = (0, import_react98.useState)({});
29557
+ const [expandedGroups, setExpandedGroups] = (0, import_react97.useState)({});
29584
29558
  const historySupported = isTransactionHistorySupported(chainConfig?.id);
29585
29559
  const {
29586
29560
  data: txHistoryGroups = [],
@@ -29593,7 +29567,7 @@ function TransactionsMenu() {
29593
29567
  queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address],
29594
29568
  queryFn: () => getTransactionsListQuery({ address, chainConfig })
29595
29569
  });
29596
- const refreshTxHistory = (0, import_react98.useCallback)(
29570
+ const refreshTxHistory = (0, import_react97.useCallback)(
29597
29571
  () => qc.invalidateQueries({ queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address] }),
29598
29572
  [qc, chainConfig.id, address]
29599
29573
  );
@@ -29632,14 +29606,14 @@ function TransactionsMenu() {
29632
29606
  )) })
29633
29607
  ] });
29634
29608
  }
29635
- var import_react_query57, import_lucide_react80, import_react98, import_jsx_runtime128;
29609
+ var import_react_query57, import_lucide_react80, import_react97, import_jsx_runtime128;
29636
29610
  var init_TransactionsMenu = __esm({
29637
29611
  "src/internal/components/TransactionsMenu/TransactionsMenu.tsx"() {
29638
29612
  init_SessionContext();
29639
29613
  init_i18n();
29640
29614
  import_react_query57 = require("@tanstack/react-query");
29641
29615
  import_lucide_react80 = require("lucide-react");
29642
- import_react98 = require("react");
29616
+ import_react97 = require("react");
29643
29617
  init_useLayoutDataStore();
29644
29618
  init_Expandable2();
29645
29619
  init_Onboarding();
@@ -29979,7 +29953,7 @@ var init_PageMap = __esm({
29979
29953
  // src/internal/hooks/usePageMapper.tsx
29980
29954
  function usePageMapper() {
29981
29955
  const page = useLayoutDataStore((st) => st.page);
29982
- const closeDialog = (0, import_react99.useCallback)(() => {
29956
+ const closeDialog = (0, import_react98.useCallback)(() => {
29983
29957
  useLayoutStore.setState({ isDialogAnimating: true });
29984
29958
  setTimeout(() => {
29985
29959
  useLayoutStore.setState({
@@ -29991,14 +29965,14 @@ function usePageMapper() {
29991
29965
  });
29992
29966
  }, CLEAR_DIALOG_TIMEOUT);
29993
29967
  }, []);
29994
- const openDialog = (0, import_react99.useCallback)((pageItem) => {
29968
+ const openDialog = (0, import_react98.useCallback)((pageItem) => {
29995
29969
  useLayoutStore.setState({
29996
29970
  dialogContent: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(pageItem.component, {}),
29997
29971
  isDialogOpen: true
29998
29972
  // isDialogAnimating: true
29999
29973
  });
30000
29974
  }, []);
30001
- (0, import_react99.useEffect)(() => {
29975
+ (0, import_react98.useEffect)(() => {
30002
29976
  if (page === null) return closeDialog();
30003
29977
  const pageItem = PAGE_MAP[page];
30004
29978
  if (!pageItem) {
@@ -30009,10 +29983,10 @@ function usePageMapper() {
30009
29983
  openDialog(pageItem);
30010
29984
  }, [page, closeDialog, openDialog]);
30011
29985
  }
30012
- var import_react99, import_jsx_runtime130, CLEAR_DIALOG_TIMEOUT;
29986
+ var import_react98, import_jsx_runtime130, CLEAR_DIALOG_TIMEOUT;
30013
29987
  var init_usePageMapper = __esm({
30014
29988
  "src/internal/hooks/usePageMapper.tsx"() {
30015
- import_react99 = require("react");
29989
+ import_react98 = require("react");
30016
29990
  init_PageMap();
30017
29991
  init_constants();
30018
29992
  init_useLayoutDataStore();
@@ -30028,24 +30002,24 @@ function useSettingsNotifications() {
30028
30002
  const providers = import_auth25.jwtTokenManager.getProviders();
30029
30003
  const hasEmail = providers.includes("email");
30030
30004
  const { data: userProfile = null } = useUserProfile();
30031
- (0, import_react100.useEffect)(() => {
30005
+ (0, import_react99.useEffect)(() => {
30032
30006
  const isKYCVerified = userProfile?.kycDetails?.kycStatus === "verified";
30033
30007
  setSettingsNotifications({
30034
30008
  ...COMPLETE_KYC_PROGRESS,
30035
30009
  status: isKYCVerified ? "resolved" : "active"
30036
30010
  });
30037
30011
  }, [userProfile, setSettingsNotifications]);
30038
- (0, import_react100.useEffect)(() => {
30012
+ (0, import_react99.useEffect)(() => {
30039
30013
  setSettingsNotifications({
30040
30014
  ...EMAIL_NOT_CONNECTED_NOTIFICATION,
30041
30015
  status: hasEmail ? "resolved" : "active"
30042
30016
  });
30043
30017
  }, [hasEmail, setSettingsNotifications]);
30044
30018
  }
30045
- var import_react100, EMAIL_NOT_CONNECTED_NOTIFICATION, COMPLETE_KYC_PROGRESS;
30019
+ var import_react99, EMAIL_NOT_CONNECTED_NOTIFICATION, COMPLETE_KYC_PROGRESS;
30046
30020
  var init_useSettingsNotifications = __esm({
30047
30021
  "src/internal/hooks/useSettingsNotifications.ts"() {
30048
- import_react100 = require("react");
30022
+ import_react99 = require("react");
30049
30023
  init_auth();
30050
30024
  init_useLayoutDataStore();
30051
30025
  init_useUserProfile();
@@ -30068,7 +30042,7 @@ var init_package = __esm({
30068
30042
  "package.json"() {
30069
30043
  package_default = {
30070
30044
  name: "@embarkai/ui-kit",
30071
- version: "0.4.110",
30045
+ version: "0.4.111",
30072
30046
  description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
30073
30047
  type: "module",
30074
30048
  main: "./dist/index.cjs",
@@ -30403,11 +30377,11 @@ function Header() {
30403
30377
  const embarkPage = useLayoutDataStore((st) => st.page);
30404
30378
  const isOnboardingTourAvailable = useOnboardingStore((st) => st.isTourAvailable);
30405
30379
  const proMode = useProMode();
30406
- const [proToast, setProToast] = (0, import_react101.useState)(false);
30407
- const [copied, setCopied] = (0, import_react101.useState)(false);
30408
- const clickCountRef = (0, import_react101.useRef)(0);
30409
- const clickTimerRef = (0, import_react101.useRef)(null);
30410
- const handleAvatarClick = (0, import_react101.useCallback)(() => {
30380
+ const [proToast, setProToast] = (0, import_react100.useState)(false);
30381
+ const [copied, setCopied] = (0, import_react100.useState)(false);
30382
+ const clickCountRef = (0, import_react100.useRef)(0);
30383
+ const clickTimerRef = (0, import_react100.useRef)(null);
30384
+ const handleAvatarClick = (0, import_react100.useCallback)(() => {
30411
30385
  clickCountRef.current += 1;
30412
30386
  if (clickTimerRef.current) {
30413
30387
  clearTimeout(clickTimerRef.current);
@@ -30513,7 +30487,7 @@ function Header() {
30513
30487
  }
30514
30488
  );
30515
30489
  }
30516
- var import_lucide_react84, import_react101, import_jsx_runtime132;
30490
+ var import_lucide_react84, import_react100, import_jsx_runtime132;
30517
30491
  var init_Header = __esm({
30518
30492
  "src/internal/components/Header/Header.tsx"() {
30519
30493
  init_lumia2();
@@ -30521,7 +30495,7 @@ var init_Header = __esm({
30521
30495
  init_ProviderContext();
30522
30496
  init_SessionContext();
30523
30497
  import_lucide_react84 = require("lucide-react");
30524
- import_react101 = require("react");
30498
+ import_react100 = require("react");
30525
30499
  init_icons();
30526
30500
  init_auth();
30527
30501
  init_useLayoutDataStore();
@@ -30553,48 +30527,46 @@ function useDecideContentStyles() {
30553
30527
  return {
30554
30528
  isClosing,
30555
30529
  isMobileView,
30556
- style: (0, import_lodash_es16.merge)({}, mobileStyles)
30530
+ style: (0, import_lodash_es17.merge)({}, mobileStyles)
30557
30531
  };
30558
30532
  }
30559
- var DialogPrimitive, import_lodash_es16, import_lucide_react85, import_react102, import_jsx_runtime133, Dialog, DialogPortal, DialogOverlay, CONTENT_BG_SETUP, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription;
30533
+ var DialogPrimitive, import_lodash_es17, import_lucide_react85, import_react101, import_jsx_runtime133, Dialog, DialogPortal, DialogOverlay, CONTENT_BG_SETUP, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription;
30560
30534
  var init_dialog = __esm({
30561
30535
  "src/internal/components/ui/dialog.tsx"() {
30562
30536
  init_utils();
30563
30537
  init_SessionContext();
30564
30538
  init_i18n();
30565
30539
  DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
30566
- import_lodash_es16 = require("lodash-es");
30540
+ import_lodash_es17 = require("lodash-es");
30567
30541
  import_lucide_react85 = require("lucide-react");
30568
- import_react102 = require("react");
30542
+ import_react101 = require("react");
30569
30543
  init_useLayoutDataStore();
30570
30544
  init_useLayoutStore();
30571
30545
  init_button();
30572
30546
  import_jsx_runtime133 = require("react/jsx-runtime");
30573
30547
  Dialog = DialogPrimitive.Root;
30574
30548
  DialogPortal = DialogPrimitive.Portal;
30575
- DialogOverlay = (0, import_react102.forwardRef)(
30576
- ({ className, closing, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
30577
- DialogPrimitive.Overlay,
30578
- {
30579
- ref,
30580
- style: { backdropFilter: "blur(var(--ui-kit-backdrop-blur))" },
30581
- className: cn2(
30582
- "w-[100dvw] h-[100dvh]",
30583
- "fixed inset-0 z-[9998] bg-[var(--ui-kit-overlay)]",
30584
- closing ? "animate-dialog-out" : "animate-dialog-in",
30585
- className
30586
- ),
30587
- ...props
30588
- }
30589
- )
30590
- );
30591
- DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
30549
+ DialogOverlay = (0, import_react101.forwardRef)(({ className, closing, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
30550
+ "div",
30551
+ {
30552
+ ref,
30553
+ style: { backdropFilter: "blur(var(--ui-kit-backdrop-blur))" },
30554
+ className: cn2(
30555
+ "w-[100dvw] h-[100dvh]",
30556
+ "fixed inset-0 z-[9998] bg-[var(--ui-kit-overlay)]",
30557
+ closing ? "animate-dialog-out" : "animate-dialog-in",
30558
+ className
30559
+ ),
30560
+ ...props
30561
+ }
30562
+ ));
30563
+ DialogOverlay.displayName = "DialogOverlay";
30592
30564
  CONTENT_BG_SETUP = {
30593
30565
  backgroundColor: "var(--ui-kit-bg)",
30594
30566
  border: "1px solid var(--ui-kit-bd)",
30595
30567
  boxShadow: "var(--ui-kit-shadow, 0px 4px 10px var(--ui-kit-shadow-c, rgba(0, 0, 0, 0.1)))"
30596
30568
  };
30597
- DialogContent = (0, import_react102.forwardRef)(
30569
+ DialogContent = (0, import_react101.forwardRef)(
30598
30570
  ({ className, children, colorMode, ...props }, ref) => {
30599
30571
  const { t, i18n } = useT();
30600
30572
  const isSessionLoading = useSession((st) => st.isLoading);
@@ -30705,7 +30677,7 @@ var init_dialog = __esm({
30705
30677
  DialogHeader.displayName = "DialogHeader";
30706
30678
  DialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("div", { className: cn2("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
30707
30679
  DialogFooter.displayName = "DialogFooter";
30708
- DialogTitle = (0, import_react102.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
30680
+ DialogTitle = (0, import_react101.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
30709
30681
  DialogPrimitive.Title,
30710
30682
  {
30711
30683
  ref,
@@ -30714,7 +30686,7 @@ var init_dialog = __esm({
30714
30686
  }
30715
30687
  ));
30716
30688
  DialogTitle.displayName = DialogPrimitive.Title.displayName;
30717
- DialogDescription = (0, import_react102.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(DialogPrimitive.Description, { ref, className: cn2("text-sm text-muted-foreground", className), ...props }));
30689
+ DialogDescription = (0, import_react101.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(DialogPrimitive.Description, { ref, className: cn2("text-sm text-muted-foreground", className), ...props }));
30718
30690
  DialogDescription.displayName = DialogPrimitive.Description.displayName;
30719
30691
  }
30720
30692
  });
@@ -30737,19 +30709,19 @@ function Dialog2() {
30737
30709
  const { colorMode, maxScrollHeight, isDialogOpen, dialogContent, isDialogForced } = useLayoutStore();
30738
30710
  const page = useLayoutDataStore((st) => st.page);
30739
30711
  const transitionPageHeight = useLayoutDataStore((st) => st.transitionPageHeight);
30740
- (0, import_react104.useEffect)(() => useLayoutStore.setState({ isSettings: !!session }), [session]);
30712
+ (0, import_react103.useEffect)(() => useLayoutStore.setState({ isSettings: !!session }), [session]);
30741
30713
  usePageMapper();
30742
30714
  useAutoConnect();
30743
30715
  useBackupStatusChanges();
30744
30716
  useDetectMaxScrollHeight();
30745
30717
  useSettingsNotifications();
30746
30718
  useListenIframeAuthEvents();
30747
- useAllowExternalModalsScroll(isDialogOpen);
30748
30719
  const isHeaderHidden = !session || page === "keysare-backup" /* KEYSARE_BACKUP */ && !hasServerVault;
30749
30720
  return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
30750
30721
  Dialog,
30751
30722
  {
30752
30723
  open: isDialogOpen,
30724
+ modal: false,
30753
30725
  onOpenChange: (open) => {
30754
30726
  if (isDialogForced) return;
30755
30727
  if (!open) {
@@ -30768,8 +30740,8 @@ function Dialog2() {
30768
30740
  /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(DialogTitle, { children: "embarkAI" }) }),
30769
30741
  /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(DialogDescription, { className: "sr-only", children: "embarkAI wallet" }),
30770
30742
  !isHeaderHidden && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(Header, {}),
30771
- /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(import_react103.AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
30772
- import_react103.motion.div,
30743
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(import_react102.AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
30744
+ import_react102.motion.div,
30773
30745
  {
30774
30746
  style: { overflow: "hidden" },
30775
30747
  initial: { opacity: 0, height: transitionPageHeight },
@@ -30798,15 +30770,14 @@ function Dialog2() {
30798
30770
  }
30799
30771
  );
30800
30772
  }
30801
- var import_react103, import_react104, import_jsx_runtime135;
30773
+ var import_react102, import_react103, import_jsx_runtime135;
30802
30774
  var init_Dialog = __esm({
30803
30775
  "src/internal/components/Dialog/Dialog.tsx"() {
30804
30776
  init_ProviderContext();
30805
30777
  init_SessionContext();
30806
- import_react103 = require("motion/react");
30807
- import_react104 = require("react");
30778
+ import_react102 = require("motion/react");
30779
+ import_react103 = require("react");
30808
30780
  init_constants();
30809
- init_useAllowExternalModalsScroll();
30810
30781
  init_useAutoConnect();
30811
30782
  init_useBackupStatusChanges();
30812
30783
  init_useDetectMaxScrollHeight();
@@ -30837,12 +30808,12 @@ function DirectWalletHandler() {
30837
30808
  const externalAddress = useExternalWalletStore((st) => st.externalAddress);
30838
30809
  const isExternalConnected = useExternalWalletStore((st) => st.isExternalConnected);
30839
30810
  const { address, isConnected, chain, connector } = (0, import_wagmi10.useConnection)();
30840
- (0, import_react105.useEffect)(() => {
30811
+ (0, import_react104.useEffect)(() => {
30841
30812
  const { setConfigMode, setActiveMode } = useExternalWalletStore.getState();
30842
30813
  setConfigMode(walletMode);
30843
30814
  if (walletMode !== "both") setActiveMode(walletMode);
30844
30815
  }, [walletMode]);
30845
- (0, import_react105.useEffect)(() => {
30816
+ (0, import_react104.useEffect)(() => {
30846
30817
  if ((!!externalAddress || isExternalConnected) && !isConnected) {
30847
30818
  useExternalWalletStore.getState().clearExternalWallet();
30848
30819
  return;
@@ -30857,10 +30828,10 @@ function DirectWalletHandler() {
30857
30828
  }, [isConnected, address, isExternalConnected, externalAddress, connector, chain]);
30858
30829
  return null;
30859
30830
  }
30860
- var import_react105, import_wagmi10;
30831
+ var import_react104, import_wagmi10;
30861
30832
  var init_DirectWalletHandler = __esm({
30862
30833
  "src/internal/components/DirectWalletHandler.tsx"() {
30863
- import_react105 = require("react");
30834
+ import_react104 = require("react");
30864
30835
  import_wagmi10 = require("wagmi");
30865
30836
  init_ProviderContext();
30866
30837
  init_useExternalWalletStore();
@@ -30868,14 +30839,14 @@ var init_DirectWalletHandler = __esm({
30868
30839
  });
30869
30840
 
30870
30841
  // src/internal/components/TssManager.tsx
30871
- var import_react106, TssManagerWithRef;
30842
+ var import_react105, TssManagerWithRef;
30872
30843
  var init_TssManager = __esm({
30873
30844
  "src/internal/components/TssManager.tsx"() {
30874
30845
  init_SessionContext();
30875
- import_react106 = __toESM(require("react"), 1);
30846
+ import_react105 = __toESM(require("react"), 1);
30876
30847
  init_auth();
30877
30848
  init_clients();
30878
- TssManagerWithRef = import_react106.default.forwardRef((props, ref) => {
30849
+ TssManagerWithRef = import_react105.default.forwardRef((props, ref) => {
30879
30850
  const { mpcPin } = props;
30880
30851
  const usePaymaster = useSession((st) => st.usePaymaster);
30881
30852
  const publicClient = useSession((st) => st.publicClient);
@@ -30883,14 +30854,14 @@ var init_TssManager = __esm({
30883
30854
  const setStatus = useSession((st) => st.setStatus);
30884
30855
  const setSession = useSession((st) => st.setSession);
30885
30856
  const setAddress = useSession((st) => st.setAddress);
30886
- const onSessionCreated = (0, import_react106.useCallback)(
30857
+ const onSessionCreated = (0, import_react105.useCallback)(
30887
30858
  (session, address) => {
30888
30859
  setSession(session);
30889
30860
  setAddress(address);
30890
30861
  },
30891
30862
  [setSession, setAddress]
30892
30863
  );
30893
- const createSessionWithKeyshare = import_react106.default.useCallback(
30864
+ const createSessionWithKeyshare = import_react105.default.useCallback(
30894
30865
  async (userId, hasServerKeyshare, isNewUser) => {
30895
30866
  setStatus("checking key management setup...");
30896
30867
  await ensureKeyshare(userId, hasServerKeyshare, setStatus, isNewUser);
@@ -30915,7 +30886,7 @@ var init_TssManager = __esm({
30915
30886
  },
30916
30887
  [setStatus, usePaymaster, activeChainId, publicClient, mpcPin]
30917
30888
  );
30918
- import_react106.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
30889
+ import_react105.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
30919
30890
  return null;
30920
30891
  });
30921
30892
  }
@@ -30939,7 +30910,7 @@ function waitForStoreHydration() {
30939
30910
  }
30940
30911
  function SessionProvider({ children }) {
30941
30912
  const config = useProviderConfig().config;
30942
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)(import_react107.Fragment, {
30913
+ return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)(import_react106.Fragment, {
30943
30914
  /** dApp's router might have its own error boundaries setup via imported @embarkai/ui-kitErrorBoundary */
30944
30915
  children: [
30945
30916
  children,
@@ -30959,11 +30930,11 @@ function SessionProvider({ children }) {
30959
30930
  ]
30960
30931
  });
30961
30932
  }
30962
- var import_read22, import_react107, import_zustand19, import_middleware5, import_jsx_runtime136, useSession, requireActiveChainId;
30933
+ var import_read22, import_react106, import_zustand19, import_middleware5, import_jsx_runtime136, useSession, requireActiveChainId;
30963
30934
  var init_SessionContext = __esm({
30964
30935
  "src/context/SessionContext.tsx"() {
30965
30936
  import_read22 = require("@embarkai/core/read");
30966
- import_react107 = require("react");
30937
+ import_react106 = require("react");
30967
30938
  import_zustand19 = require("zustand");
30968
30939
  import_middleware5 = require("zustand/middleware");
30969
30940
  init_ErrorBoundary2();
@@ -33418,11 +33389,11 @@ function clearLegacyWagmiStorage() {
33418
33389
  }
33419
33390
  function Provider(props) {
33420
33391
  const { children, projectId, initialConfig = {}, callbacks } = props;
33421
- const callbacksRef = (0, import_react108.useRef)(callbacks);
33422
- (0, import_react108.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
33423
- const config = (0, import_react108.useRef)((0, import_lodash_es17.merge)({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
33424
- const wagmiConfig3 = (0, import_react108.useRef)((0, import_core9.getWagmiConfig)(config.current?.wallet?.walletConnectId || null));
33425
- const updateConfig = (0, import_react108.useCallback)((updates) => {
33392
+ const callbacksRef = (0, import_react107.useRef)(callbacks);
33393
+ (0, import_react107.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
33394
+ const config = (0, import_react107.useRef)((0, import_lodash_es18.merge)({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
33395
+ const wagmiConfig3 = (0, import_react107.useRef)((0, import_core9.getWagmiConfig)(config.current?.wallet?.walletConnectId || null));
33396
+ const updateConfig = (0, import_react107.useCallback)((updates) => {
33426
33397
  const prev = config.current;
33427
33398
  const next = { ...prev };
33428
33399
  if (updates.projectId !== void 0) next.projectId = updates.projectId;
@@ -33456,14 +33427,14 @@ function Provider(props) {
33456
33427
  if (updates.translations) next.translations = { ...next.translations, ...updates.translations };
33457
33428
  config.current = next;
33458
33429
  }, []);
33459
- const updateCallbacks = (0, import_react108.useCallback)((updates) => {
33430
+ const updateCallbacks = (0, import_react107.useCallback)((updates) => {
33460
33431
  const prev = callbacksRef.current;
33461
33432
  const next = updates ? { ...prev, ...updates } : void 0;
33462
33433
  callbacksRef.current = next;
33463
33434
  }, []);
33464
- (0, import_react108.useEffect)(() => {
33435
+ (0, import_react107.useEffect)(() => {
33465
33436
  if (typeof window === "undefined" || !projectId) return;
33466
- const mergedConfig = (0, import_lodash_es17.merge)(DEFAULT_PROVIDER_CONFIG, initialConfig);
33437
+ const mergedConfig = (0, import_lodash_es18.merge)(DEFAULT_PROVIDER_CONFIG, initialConfig);
33467
33438
  updateConfig(mergedConfig);
33468
33439
  if (mergedConfig.wallet?.enabled) {
33469
33440
  clearLegacyWagmiStorage();
@@ -33481,7 +33452,7 @@ function Provider(props) {
33481
33452
  useSession.getState().setActiveChainId(mergedConfig.network.chainId);
33482
33453
  }
33483
33454
  }, [projectId, initialConfig]);
33484
- (0, import_react108.useEffect)(() => {
33455
+ (0, import_react107.useEffect)(() => {
33485
33456
  if (typeof window === "undefined" || !projectId) return;
33486
33457
  try {
33487
33458
  (0, import_error_tracking4.initSdkErrorTracking)();
@@ -33510,7 +33481,7 @@ function Provider(props) {
33510
33481
  console.error("[PROVIDER] Error setting up iframe manager:", error);
33511
33482
  }
33512
33483
  }, [projectId]);
33513
- const contextValue = (0, import_react108.useMemo)(
33484
+ const contextValue = (0, import_react107.useMemo)(
33514
33485
  () => ({
33515
33486
  config,
33516
33487
  updateConfig,
@@ -33523,22 +33494,22 @@ function Provider(props) {
33523
33494
  );
33524
33495
  return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(UIContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(import_wagmi11.WagmiProvider, { config: wagmiConfig3.current, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(SessionProvider, { children }) }) });
33525
33496
  }
33526
- var import_core9, import_error_tracking4, import_lodash_es17, import_react108, import_wagmi11, import_jsx_runtime137, UIContext, useProviderConfig;
33497
+ var import_core9, import_error_tracking4, import_lodash_es18, import_react107, import_wagmi11, import_jsx_runtime137, UIContext, useProviderConfig;
33527
33498
  var init_ProviderContext = __esm({
33528
33499
  "src/context/ProviderContext.tsx"() {
33529
33500
  import_core9 = require("@embarkai/core");
33530
33501
  import_error_tracking4 = require("@embarkai/core/internal/error-tracking");
33531
- import_lodash_es17 = require("lodash-es");
33532
- import_react108 = require("react");
33502
+ import_lodash_es18 = require("lodash-es");
33503
+ import_react107 = require("react");
33533
33504
  import_wagmi11 = require("wagmi");
33534
33505
  init_initial();
33535
33506
  init_iframe_manager();
33536
33507
  init_SessionContext();
33537
33508
  init_utils14();
33538
33509
  import_jsx_runtime137 = require("react/jsx-runtime");
33539
- UIContext = (0, import_react108.createContext)(void 0);
33510
+ UIContext = (0, import_react107.createContext)(void 0);
33540
33511
  useProviderConfig = () => {
33541
- const ctx = (0, import_react108.useContext)(UIContext);
33512
+ const ctx = (0, import_react107.useContext)(UIContext);
33542
33513
  if (!ctx) throw new Error("useProviderConfig must be used within a Provider");
33543
33514
  return ctx;
33544
33515
  };
@@ -33661,7 +33632,7 @@ init_ErrorBoundary2();
33661
33632
  init_lumia2();
33662
33633
  init_embarkAI2();
33663
33634
  var import_lucide_react86 = require("lucide-react");
33664
- var import_react109 = require("react");
33635
+ var import_react108 = require("react");
33665
33636
  init_SessionContext();
33666
33637
  init_auth();
33667
33638
  init_BalanceView2();
@@ -33694,10 +33665,10 @@ function ConnectWalletButton(props) {
33694
33665
  const colorMode = useLayoutStore((st) => st.colorMode);
33695
33666
  const { session, address, hasServerVault, isLoading, isIframeReady, status, setUsePaymaster } = useSession();
33696
33667
  const connectButtonLabel = getFormattedStatus(label || "Connect", status, isIframeReady);
33697
- (0, import_react109.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
33668
+ (0, import_react108.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
33698
33669
  const { data: profile, isLoading: isProfileLoading } = useUserProfile();
33699
33670
  const displayName = profile?.nicknameDisplay || profile?.displayName || import_auth25.jwtTokenManager.getDisplayName();
33700
- const indicators = (0, import_react109.useMemo)(() => {
33671
+ const indicators = (0, import_react108.useMemo)(() => {
33701
33672
  const userId = session?.mpcUserId;
33702
33673
  if (!userId) return { server: false, local: false, backup: false };
33703
33674
  const server = import_auth25.jwtTokenManager.getHasKeyshare() ?? false;
@@ -34336,14 +34307,14 @@ var Hash = ({
34336
34307
  };
34337
34308
 
34338
34309
  // src/internal/components/TransactionsMenu/TransactionsList.tsx
34339
- var import_react110 = require("react");
34310
+ var import_react109 = require("react");
34340
34311
  init_base3();
34341
34312
  var import_jsx_runtime144 = require("react/jsx-runtime");
34342
34313
  var TransactionsList = ({ address, itemsCount = 10 }) => {
34343
- const [transactions, setTransactions] = (0, import_react110.useState)([]);
34344
- const [loading, setLoading] = (0, import_react110.useState)(true);
34345
- const [error, setError] = (0, import_react110.useState)(null);
34346
- (0, import_react110.useEffect)(() => {
34314
+ const [transactions, setTransactions] = (0, import_react109.useState)([]);
34315
+ const [loading, setLoading] = (0, import_react109.useState)(true);
34316
+ const [error, setError] = (0, import_react109.useState)(null);
34317
+ (0, import_react109.useEffect)(() => {
34347
34318
  const fetchTransactions2 = async () => {
34348
34319
  try {
34349
34320
  setLoading(true);
@@ -34634,13 +34605,13 @@ function useUserOpStatus(options = {}) {
34634
34605
  init_useErc3643Compliance();
34635
34606
 
34636
34607
  // src/hooks/useWalletMode.ts
34637
- var import_react111 = require("react");
34608
+ var import_react110 = require("react");
34638
34609
  init_useExternalWalletStore();
34639
34610
  function useWalletMode() {
34640
34611
  const configMode = useExternalWalletStore((st) => st.configMode);
34641
34612
  const activeMode = useExternalWalletStore((st) => st.activeMode);
34642
34613
  const setActiveMode = useExternalWalletStore((st) => st.setActiveMode);
34643
- const switchMode = (0, import_react111.useCallback)(
34614
+ const switchMode = (0, import_react110.useCallback)(
34644
34615
  (mode) => {
34645
34616
  if (configMode !== "both") return;
34646
34617
  setActiveMode(mode);
@@ -34657,7 +34628,7 @@ function useWalletMode() {
34657
34628
 
34658
34629
  // src/hooks/useDirectWallet.ts
34659
34630
  init_useOpenPage();
34660
- var import_react112 = require("react");
34631
+ var import_react111 = require("react");
34661
34632
  var import_wagmi12 = require("wagmi");
34662
34633
  init_useExternalWalletStore();
34663
34634
  function useDirectWallet() {
@@ -34667,10 +34638,10 @@ function useDirectWallet() {
34667
34638
  const connectorName = useExternalWalletStore((st) => st.connectorName);
34668
34639
  const { open: openEmbarkAI } = useOpenPage();
34669
34640
  const { mutate: wagmiDisconnect } = (0, import_wagmi12.useDisconnect)();
34670
- const connect = (0, import_react112.useCallback)((connectFlowType = "connect") => {
34641
+ const connect = (0, import_react111.useCallback)((connectFlowType = "connect") => {
34671
34642
  openEmbarkAI("connect-external-wallet" /* CONNECT_EXTERNAL_WALLET */, { connectFlowType });
34672
34643
  }, []);
34673
- const disconnect = (0, import_react112.useCallback)(() => {
34644
+ const disconnect = (0, import_react111.useCallback)(() => {
34674
34645
  wagmiDisconnect();
34675
34646
  useExternalWalletStore.getState().clearExternalWallet();
34676
34647
  }, [wagmiDisconnect]);
@@ -34686,7 +34657,7 @@ function useDirectWallet() {
34686
34657
  }
34687
34658
 
34688
34659
  // src/hooks/useSendDirectTransaction.ts
34689
- var import_react113 = require("react");
34660
+ var import_react112 = require("react");
34690
34661
  var import_viem23 = require("viem");
34691
34662
  var import_wagmi13 = require("wagmi");
34692
34663
  init_useExternalWalletStore();
@@ -34695,10 +34666,10 @@ function useSendDirectTransaction() {
34695
34666
  const externalChainId = useExternalWalletStore((st) => st.externalChainId);
34696
34667
  const { sendTransactionAsync } = (0, import_wagmi13.useSendTransaction)();
34697
34668
  const { switchChainAsync } = (0, import_wagmi13.useSwitchChain)();
34698
- const [isPending, setIsPending] = (0, import_react113.useState)(false);
34699
- const [error, setError] = (0, import_react113.useState)(null);
34700
- const [txHash, setTxHash] = (0, import_react113.useState)(null);
34701
- const sendTransaction = (0, import_react113.useCallback)(
34669
+ const [isPending, setIsPending] = (0, import_react112.useState)(false);
34670
+ const [error, setError] = (0, import_react112.useState)(null);
34671
+ const [txHash, setTxHash] = (0, import_react112.useState)(null);
34672
+ const sendTransaction = (0, import_react112.useCallback)(
34702
34673
  async (params) => {
34703
34674
  if (!isConnected) {
34704
34675
  setError("No external wallet connected");
@@ -34732,7 +34703,7 @@ function useSendDirectTransaction() {
34732
34703
  },
34733
34704
  [isConnected, externalChainId, sendTransactionAsync, switchChainAsync]
34734
34705
  );
34735
- const reset = (0, import_react113.useCallback)(() => {
34706
+ const reset = (0, import_react112.useCallback)(() => {
34736
34707
  setError(null);
34737
34708
  setTxHash(null);
34738
34709
  setIsPending(false);
@@ -34741,7 +34712,7 @@ function useSendDirectTransaction() {
34741
34712
  }
34742
34713
 
34743
34714
  // src/hooks/useTransferToLinkedWallet.ts
34744
- var import_react114 = require("react");
34715
+ var import_react113 = require("react");
34745
34716
  var import_viem24 = require("viem");
34746
34717
  init_SessionContext();
34747
34718
  init_account2();
@@ -34760,14 +34731,14 @@ var ERC20_TRANSFER_ABI2 = [
34760
34731
  function useTransferToLinkedWallet() {
34761
34732
  const session = useSession((st) => st.session);
34762
34733
  const { profiles } = useLinkedProfiles();
34763
- const [isPending, setIsPending] = (0, import_react114.useState)(false);
34764
- const [error, setError] = (0, import_react114.useState)(null);
34765
- const [userOpHash, setUserOpHash] = (0, import_react114.useState)(null);
34766
- const linkedWallets = (0, import_react114.useMemo)(
34734
+ const [isPending, setIsPending] = (0, import_react113.useState)(false);
34735
+ const [error, setError] = (0, import_react113.useState)(null);
34736
+ const [userOpHash, setUserOpHash] = (0, import_react113.useState)(null);
34737
+ const linkedWallets = (0, import_react113.useMemo)(
34767
34738
  () => (profiles || []).filter((p) => p.provider === "wallet" && p.externalId).map((p) => p.externalId),
34768
34739
  [profiles]
34769
34740
  );
34770
- const transfer = (0, import_react114.useCallback)(
34741
+ const transfer = (0, import_react113.useCallback)(
34771
34742
  async (params) => {
34772
34743
  if (!session) {
34773
34744
  setError("No active session");
@@ -34818,7 +34789,7 @@ function useTransferToLinkedWallet() {
34818
34789
  },
34819
34790
  [session, linkedWallets]
34820
34791
  );
34821
- const reset = (0, import_react114.useCallback)(() => {
34792
+ const reset = (0, import_react113.useCallback)(() => {
34822
34793
  setError(null);
34823
34794
  setUserOpHash(null);
34824
34795
  setIsPending(false);
@@ -34842,7 +34813,7 @@ function useNativeWalletSignature() {
34842
34813
 
34843
34814
  // src/hooks/useLogout.ts
34844
34815
  var import_auth27 = require("@embarkai/core/auth");
34845
- var import_react115 = require("react");
34816
+ var import_react114 = require("react");
34846
34817
  var import_wagmi15 = require("wagmi");
34847
34818
  init_ProviderContext();
34848
34819
  init_SessionContext();
@@ -34861,7 +34832,7 @@ function useLogout() {
34861
34832
  }
34862
34833
  }
34863
34834
  });
34864
- const logout2 = (0, import_react115.useCallback)(async () => {
34835
+ const logout2 = (0, import_react114.useCallback)(async () => {
34865
34836
  const { setSession, setIsLoading, setAddress, setStatus, setError } = useSession.getState();
34866
34837
  const prevAddress = address;
34867
34838
  let userId = null;
@@ -34980,7 +34951,7 @@ function useTransactions() {
34980
34951
 
34981
34952
  // src/modules/assets.ts
34982
34953
  init_SessionContext();
34983
- var import_react116 = __toESM(require("react"), 1);
34954
+ var import_react115 = __toESM(require("react"), 1);
34984
34955
  var import_viem26 = require("viem");
34985
34956
  var import_wagmi17 = require("wagmi");
34986
34957
  var COMMON_TOKENS = [
@@ -35135,7 +35106,7 @@ function useTokenBalance2(tokenAddress, userAddress) {
35135
35106
  }
35136
35107
  });
35137
35108
  const { tokenInfo } = useTokenInfo(tokenAddress);
35138
- const formattedBalance = import_react116.default.useMemo(() => {
35109
+ const formattedBalance = import_react115.default.useMemo(() => {
35139
35110
  if (!balance || !tokenInfo) return "0";
35140
35111
  return (0, import_viem26.formatUnits)(balance, tokenInfo.decimals);
35141
35112
  }, [balance, tokenInfo]);