@n1xyz/wallet-widget 0.0.33-alpha.3 → 0.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/animations/N1Loader.js +8 -14
  2. package/dist/animations/N1Loader.js.map +1 -1
  3. package/dist/animations/Processing.js +8 -14
  4. package/dist/animations/Processing.js.map +1 -1
  5. package/dist/components/LoadingFallback.js +2 -6
  6. package/dist/components/LoadingFallback.js.map +1 -1
  7. package/dist/components/Logo.js +22 -25
  8. package/dist/components/Logo.js.map +1 -1
  9. package/dist/components/N1ConnectButton.js +12 -18
  10. package/dist/components/N1ConnectButton.js.map +1 -1
  11. package/dist/components/logos/ArbitrumLogo.js +3 -7
  12. package/dist/components/logos/ArbitrumLogo.js.map +1 -1
  13. package/dist/components/logos/BaseLogo.js +3 -7
  14. package/dist/components/logos/BaseLogo.js.map +1 -1
  15. package/dist/components/logos/BeraLogo.js +3 -7
  16. package/dist/components/logos/BeraLogo.js.map +1 -1
  17. package/dist/components/logos/BitcoinLogo.js +3 -7
  18. package/dist/components/logos/BitcoinLogo.js.map +1 -1
  19. package/dist/components/logos/EthereumLogo.js +3 -7
  20. package/dist/components/logos/EthereumLogo.js.map +1 -1
  21. package/dist/components/logos/HyperliquidLogo.js +3 -7
  22. package/dist/components/logos/HyperliquidLogo.js.map +1 -1
  23. package/dist/components/logos/OptimismLogo.js +3 -7
  24. package/dist/components/logos/OptimismLogo.js.map +1 -1
  25. package/dist/components/logos/SolanaLogo.js +3 -7
  26. package/dist/components/logos/SolanaLogo.js.map +1 -1
  27. package/dist/components/logos/ZeroOneLogo.js +3 -7
  28. package/dist/components/logos/ZeroOneLogo.js.map +1 -1
  29. package/dist/components/logos/index.js +9 -25
  30. package/dist/components/logos/index.js.map +1 -1
  31. package/dist/config/solana.js +3 -7
  32. package/dist/config/solana.js.map +1 -1
  33. package/dist/config.js +2 -5
  34. package/dist/config.js.map +1 -1
  35. package/dist/context/n1-wallet-context.js +4 -8
  36. package/dist/context/n1-wallet-context.js.map +1 -1
  37. package/dist/errors/types.js +3 -6
  38. package/dist/errors/types.js.map +1 -1
  39. package/dist/features/onboarding-flow/N1WalletModal.js +23 -59
  40. package/dist/features/onboarding-flow/N1WalletModal.js.map +1 -1
  41. package/dist/features/onboarding-flow/OnboardingFlow.js +46 -50
  42. package/dist/features/onboarding-flow/OnboardingFlow.js.map +1 -1
  43. package/dist/features/onboarding-flow/components/ChainButton.js +4 -7
  44. package/dist/features/onboarding-flow/components/ChainButton.js.map +1 -1
  45. package/dist/features/onboarding-flow/components/Header.js +11 -15
  46. package/dist/features/onboarding-flow/components/Header.js.map +1 -1
  47. package/dist/features/onboarding-flow/components/ImageWithFallback.js +6 -10
  48. package/dist/features/onboarding-flow/components/ImageWithFallback.js.map +1 -1
  49. package/dist/features/onboarding-flow/components/TransactionTable.js +10 -13
  50. package/dist/features/onboarding-flow/components/TransactionTable.js.map +1 -1
  51. package/dist/features/onboarding-flow/components/WaitingMessage.js +8 -14
  52. package/dist/features/onboarding-flow/components/WaitingMessage.js.map +1 -1
  53. package/dist/features/onboarding-flow/components/index.js +5 -21
  54. package/dist/features/onboarding-flow/components/index.js.map +1 -1
  55. package/dist/features/onboarding-flow/index.js +1 -5
  56. package/dist/features/onboarding-flow/index.js.map +1 -1
  57. package/dist/features/onboarding-flow/providers/DepositFlowProvider.js +55 -60
  58. package/dist/features/onboarding-flow/providers/DepositFlowProvider.js.map +1 -1
  59. package/dist/features/onboarding-flow/providers/OnboardingStateProvider.js +43 -48
  60. package/dist/features/onboarding-flow/providers/OnboardingStateProvider.js.map +1 -1
  61. package/dist/features/onboarding-flow/providers/StateProvider.js +7 -11
  62. package/dist/features/onboarding-flow/providers/StateProvider.js.map +1 -1
  63. package/dist/features/onboarding-flow/providers/WalletConnectionProvider.js +69 -74
  64. package/dist/features/onboarding-flow/providers/WalletConnectionProvider.js.map +1 -1
  65. package/dist/features/onboarding-flow/providers/debug.js +18 -21
  66. package/dist/features/onboarding-flow/providers/debug.js.map +1 -1
  67. package/dist/features/onboarding-flow/providers/index.js +5 -16
  68. package/dist/features/onboarding-flow/providers/index.js.map +1 -1
  69. package/dist/features/onboarding-flow/providers/onboardingStateMachine.js +15 -20
  70. package/dist/features/onboarding-flow/providers/onboardingStateMachine.js.map +1 -1
  71. package/dist/features/onboarding-flow/screens/01-ConnectWalletScreen.js +8 -11
  72. package/dist/features/onboarding-flow/screens/01-ConnectWalletScreen.js.map +1 -1
  73. package/dist/features/onboarding-flow/screens/02-ChainSelectionScreen.js +34 -38
  74. package/dist/features/onboarding-flow/screens/02-ChainSelectionScreen.js.map +1 -1
  75. package/dist/features/onboarding-flow/screens/03-AmountInputScreen.js +47 -51
  76. package/dist/features/onboarding-flow/screens/03-AmountInputScreen.js.map +1 -1
  77. package/dist/features/onboarding-flow/screens/04-DepositProgressScreen.js +8 -12
  78. package/dist/features/onboarding-flow/screens/04-DepositProgressScreen.js.map +1 -1
  79. package/dist/features/onboarding-flow/screens/05-DepositSuccessScreen.js +25 -28
  80. package/dist/features/onboarding-flow/screens/05-DepositSuccessScreen.js.map +1 -1
  81. package/dist/features/onboarding-flow/screens/06-AuthLoadingScreen.js +10 -13
  82. package/dist/features/onboarding-flow/screens/06-AuthLoadingScreen.js.map +1 -1
  83. package/dist/features/onboarding-flow/screens/07-ErrorScreen.js +7 -10
  84. package/dist/features/onboarding-flow/screens/07-ErrorScreen.js.map +1 -1
  85. package/dist/features/onboarding-flow/screens/index.js +7 -23
  86. package/dist/features/onboarding-flow/screens/index.js.map +1 -1
  87. package/dist/features/onboarding-flow/types.js +3 -6
  88. package/dist/features/onboarding-flow/types.js.map +1 -1
  89. package/dist/features/onboarding-flow/utils/depositStorage.js +3 -8
  90. package/dist/features/onboarding-flow/utils/depositStorage.js.map +1 -1
  91. package/dist/features/onboarding-flow/utils/imageUtils.js +3 -9
  92. package/dist/features/onboarding-flow/utils/imageUtils.js.map +1 -1
  93. package/dist/features/onboarding-flow/utils/nordUser.js +2 -38
  94. package/dist/features/onboarding-flow/utils/nordUser.js.map +1 -1
  95. package/dist/features/onboarding-flow/utils/nordUtils.js +5 -12
  96. package/dist/features/onboarding-flow/utils/nordUtils.js.map +1 -1
  97. package/dist/features/onboarding-flow/utils/session.js +14 -17
  98. package/dist/features/onboarding-flow/utils/session.js.map +1 -1
  99. package/dist/features/onboarding-flow/utils/transaction.js +1 -4
  100. package/dist/features/onboarding-flow/utils/transaction.js.map +1 -1
  101. package/dist/features/onboarding-flow/utils/utils.js +8 -16
  102. package/dist/features/onboarding-flow/utils/utils.js.map +1 -1
  103. package/dist/features/onboarding-flow/utils/withImageFallback.js +9 -15
  104. package/dist/features/onboarding-flow/utils/withImageFallback.js.map +1 -1
  105. package/dist/hooks/index.js +2 -18
  106. package/dist/hooks/index.js.map +1 -1
  107. package/dist/hooks/useN1Wallet.js +6 -10
  108. package/dist/hooks/useN1Wallet.js.map +1 -1
  109. package/dist/hooks/useNordUserInitialization.js +31 -34
  110. package/dist/hooks/useNordUserInitialization.js.map +1 -1
  111. package/dist/index.js +7 -21
  112. package/dist/index.js.map +1 -1
  113. package/dist/main.css +2 -0
  114. package/dist/polyfills/windowEthereumGuard.js +1 -2
  115. package/dist/polyfills/windowEthereumGuard.js.map +1 -1
  116. package/dist/providers/LazyWalletProvider.js +38 -74
  117. package/dist/providers/LazyWalletProvider.js.map +1 -1
  118. package/dist/providers/N1WalletProvider.js +70 -109
  119. package/dist/providers/N1WalletProvider.js.map +1 -1
  120. package/dist/providers/ShadowRootWrapper.js +4 -10
  121. package/dist/providers/ShadowRootWrapper.js.map +1 -1
  122. package/dist/providers/WalletErrorBoundary.js +6 -11
  123. package/dist/providers/WalletErrorBoundary.js.map +1 -1
  124. package/dist/styles/embedded-main-css.js +1 -3
  125. package/dist/styles/embedded-main-css.js.map +1 -1
  126. package/dist/styles/main.css +1 -1
  127. package/dist/types/wallet.js +4 -7
  128. package/dist/types/wallet.js.map +1 -1
  129. package/dist/utils/ed25519.js +14 -20
  130. package/dist/utils/ed25519.js.map +1 -1
  131. package/dist/utils/getPseudoName.js +7 -10
  132. package/dist/utils/getPseudoName.js.map +1 -1
  133. package/dist/utils/logger.js +3 -5
  134. package/dist/utils/logger.js.map +1 -1
  135. package/dist/utils/shortenString.js +2 -6
  136. package/dist/utils/shortenString.js.map +1 -1
  137. package/dist/utils/words.js +1 -4
  138. package/dist/utils/words.js.map +1 -1
  139. package/package.json +3 -3
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __assign = (this && this.__assign) || function () {
3
2
  __assign = Object.assign || function(t) {
4
3
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -10,39 +9,6 @@ var __assign = (this && this.__assign) || function () {
10
9
  };
11
10
  return __assign.apply(this, arguments);
12
11
  };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || (function () {
30
- var ownKeys = function(o) {
31
- ownKeys = Object.getOwnPropertyNames || function (o) {
32
- var ar = [];
33
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
- return ar;
35
- };
36
- return ownKeys(o);
37
- };
38
- return function (mod) {
39
- if (mod && mod.__esModule) return mod;
40
- var result = {};
41
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
- __setModuleDefault(result, mod);
43
- return result;
44
- };
45
- })();
46
12
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
47
13
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
48
14
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -79,30 +45,28 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
79
45
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
80
46
  }
81
47
  };
82
- Object.defineProperty(exports, "__esModule", { value: true });
83
- exports.LazyWalletProvider = LazyWalletProvider;
84
- var jsx_runtime_1 = require("react/jsx-runtime");
85
- var react_1 = require("react");
86
- var useN1Wallet_1 = require("../hooks/useN1Wallet");
87
- var logger_1 = require("../utils/logger");
48
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
49
+ import { useCallback, useEffect, useRef, useState } from 'react';
50
+ import { useN1WalletContext, useN1WalletInternalContext } from '../hooks/useN1Wallet';
51
+ import { logger } from '../utils/logger';
88
52
  var AUTH_FLOW_IDLE_CLOSE_DELAY_MS = 1200;
89
53
  function DynamicContextConsumer(_a) {
90
54
  var children = _a.children;
91
- var _b = (0, react_1.useState)(null), DynamicContext = _b[0], setDynamicContext = _b[1];
92
- var showAuthFlowRef = (0, react_1.useRef)(null);
93
- var primaryWalletStateRef = (0, react_1.useRef)(null);
94
- var prevShowAuthFlowRef = (0, react_1.useRef)(false);
55
+ var _b = useState(null), DynamicContext = _b[0], setDynamicContext = _b[1];
56
+ var showAuthFlowRef = useRef(null);
57
+ var primaryWalletStateRef = useRef(null);
58
+ var prevShowAuthFlowRef = useRef(false);
95
59
  // Use refs to track previous values and prevent unnecessary updates
96
- var prevPrimaryWalletRef = (0, react_1.useRef)(null);
97
- var prevHandleLogOutRef = (0, react_1.useRef)(null);
98
- var prevSdkHasLoadedRef = (0, react_1.useRef)(null);
99
- var _c = (0, useN1Wallet_1.useN1WalletInternalContext)(), setDynamicWallet = _c.setDynamicWallet, setDynamicHandleLogOut = _c.setDynamicHandleLogOut, setDynamicSdkHasLoaded = _c.setDynamicSdkHasLoaded, setAddress = _c.setAddress, setShowDynamicWidget = _c.setShowDynamicWidget, setStartClosingLogin = _c.setStartClosingLogin;
100
- var _d = (0, useN1Wallet_1.useN1WalletContext)(), setShowLogin = _d.setShowLogin, showLogin = _d.showLogin;
101
- var pendingAuthCloseRef = (0, react_1.useRef)(null);
60
+ var prevPrimaryWalletRef = useRef(null);
61
+ var prevHandleLogOutRef = useRef(null);
62
+ var prevSdkHasLoadedRef = useRef(null);
63
+ var _c = useN1WalletInternalContext(), setDynamicWallet = _c.setDynamicWallet, setDynamicHandleLogOut = _c.setDynamicHandleLogOut, setDynamicSdkHasLoaded = _c.setDynamicSdkHasLoaded, setAddress = _c.setAddress, setShowDynamicWidget = _c.setShowDynamicWidget, setStartClosingLogin = _c.setStartClosingLogin;
64
+ var _d = useN1WalletContext(), setShowLogin = _d.setShowLogin, showLogin = _d.showLogin;
65
+ var pendingAuthCloseRef = useRef(null);
102
66
  // Load the Dynamic context only once
103
- (0, react_1.useEffect)(function () {
67
+ useEffect(function () {
104
68
  var isMounted = true;
105
- Promise.resolve().then(function () { return __importStar(require('@dynamic-labs/sdk-react-core')); }).then(function (_a) {
69
+ import('@dynamic-labs/sdk-react-core').then(function (_a) {
106
70
  var useDynamicContext = _a.useDynamicContext;
107
71
  if (isMounted) {
108
72
  setDynamicContext(function () { return useDynamicContext; });
@@ -113,7 +77,7 @@ function DynamicContextConsumer(_a) {
113
77
  };
114
78
  }, []);
115
79
  // Set up a stable widget function that uses the ref - only once
116
- (0, react_1.useEffect)(function () {
80
+ useEffect(function () {
117
81
  var stableShowWidget = function (show) {
118
82
  if (showAuthFlowRef.current) {
119
83
  showAuthFlowRef.current(show);
@@ -122,12 +86,12 @@ function DynamicContextConsumer(_a) {
122
86
  setShowDynamicWidget(function () { return stableShowWidget; });
123
87
  }, [setShowDynamicWidget]);
124
88
  if (!DynamicContext) {
125
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
89
+ return _jsx(_Fragment, { children: children });
126
90
  }
127
91
  var DynamicComponent = function () {
128
92
  var _a = DynamicContext(), primaryWallet = _a.primaryWallet, sdkHasLoaded = _a.sdkHasLoaded, setShowAuthFlow = _a.setShowAuthFlow, handleLogOut = _a.handleLogOut, showAuthFlow = _a.showAuthFlow;
129
93
  // Store setShowAuthFlow in ref to avoid re-renders - only when it changes
130
- (0, react_1.useEffect)(function () {
94
+ useEffect(function () {
131
95
  if (!setShowAuthFlow) {
132
96
  showAuthFlowRef.current = null;
133
97
  return;
@@ -144,7 +108,7 @@ function DynamicContextConsumer(_a) {
144
108
  }, [setShowAuthFlow, setShowLogin, setStartClosingLogin]);
145
109
  // Set the dynamic wallet and address when the primary wallet changes
146
110
  // Use deep comparison to prevent unnecessary updates
147
- (0, react_1.useEffect)(function () {
111
+ useEffect(function () {
148
112
  // Skip if the wallet hasn't actually changed
149
113
  if (primaryWallet === prevPrimaryWalletRef.current) {
150
114
  return;
@@ -160,7 +124,7 @@ function DynamicContextConsumer(_a) {
160
124
  setAddress('');
161
125
  }
162
126
  }, [primaryWallet, setDynamicWallet, setAddress]);
163
- (0, react_1.useEffect)(function () {
127
+ useEffect(function () {
164
128
  var wasAuthFlowOpen = prevShowAuthFlowRef.current;
165
129
  prevShowAuthFlowRef.current = showAuthFlow;
166
130
  if (pendingAuthCloseRef.current != null) {
@@ -175,7 +139,7 @@ function DynamicContextConsumer(_a) {
175
139
  var closeIfStillIdle = function () {
176
140
  pendingAuthCloseRef.current = null;
177
141
  if (!primaryWalletStateRef.current) {
178
- logger_1.logger.debug('Dynamic auth flow closed before wallet connection; closing Nord widget');
142
+ logger.debug('Dynamic auth flow closed before wallet connection; closing Nord widget');
179
143
  setShowLogin(false);
180
144
  setStartClosingLogin(true);
181
145
  }
@@ -189,22 +153,22 @@ function DynamicContextConsumer(_a) {
189
153
  }
190
154
  }, [showAuthFlow, showLogin, setShowLogin, setStartClosingLogin]);
191
155
  // Set the logout handler when it changes - only when it actually changes
192
- (0, react_1.useEffect)(function () {
156
+ useEffect(function () {
193
157
  if (handleLogOut && handleLogOut !== prevHandleLogOutRef.current) {
194
158
  prevHandleLogOutRef.current = handleLogOut;
195
159
  setDynamicHandleLogOut(function () { return handleLogOut; });
196
160
  }
197
161
  }, [handleLogOut, setDynamicHandleLogOut]);
198
162
  // Set the SDK loaded flag when it changes - only when it actually changes
199
- (0, react_1.useEffect)(function () {
163
+ useEffect(function () {
200
164
  if (sdkHasLoaded !== prevSdkHasLoadedRef.current) {
201
165
  prevSdkHasLoadedRef.current = sdkHasLoaded;
202
166
  setDynamicSdkHasLoaded(sdkHasLoaded);
203
167
  }
204
168
  }, [sdkHasLoaded, setDynamicSdkHasLoaded]);
205
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
169
+ return _jsx(_Fragment, { children: children });
206
170
  };
207
- return (0, jsx_runtime_1.jsx)(DynamicComponent, {});
171
+ return _jsx(DynamicComponent, {});
208
172
  }
209
173
  var getSettings = function () { return ({
210
174
  initialAuthenticationMode: 'connect-only',
@@ -216,16 +180,16 @@ var getSettings = function () { return ({
216
180
  },
217
181
  events: {
218
182
  onAuthSuccess: function (args) {
219
- logger_1.logger.debug('onAuthSuccess was called', args);
183
+ logger.debug('onAuthSuccess was called', args);
220
184
  },
221
185
  },
222
186
  }); };
223
187
  function LazyInternal(props) {
224
188
  var _this = this;
225
- var _a = (0, react_1.useState)(null), Provider = _a[0], setProvider = _a[1];
226
- var _b = (0, react_1.useState)(null), DynamicWidgetComponent = _b[0], setDynamicWidgetComponent = _b[1];
227
- var _c = (0, react_1.useState)([]), walletConnectors = _c[0], setWalletConnectors = _c[1];
228
- (0, react_1.useEffect)(function () {
189
+ var _a = useState(null), Provider = _a[0], setProvider = _a[1];
190
+ var _b = useState(null), DynamicWidgetComponent = _b[0], setDynamicWidgetComponent = _b[1];
191
+ var _c = useState([]), walletConnectors = _c[0], setWalletConnectors = _c[1];
192
+ useEffect(function () {
229
193
  var loadDynamicDeps = function () { return __awaiter(_this, void 0, void 0, function () {
230
194
  var _a, _b, DynamicContextProvider_1, DynamicWidget_1, SolanaWalletConnectors, error_1;
231
195
  return __generator(this, function (_c) {
@@ -233,8 +197,8 @@ function LazyInternal(props) {
233
197
  case 0:
234
198
  _c.trys.push([0, 2, , 3]);
235
199
  return [4 /*yield*/, Promise.all([
236
- Promise.resolve().then(function () { return __importStar(require('@dynamic-labs/sdk-react-core')); }),
237
- Promise.resolve().then(function () { return __importStar(require('@dynamic-labs/solana')); }),
200
+ import('@dynamic-labs/sdk-react-core'),
201
+ import('@dynamic-labs/solana'),
238
202
  ])];
239
203
  case 1:
240
204
  _a = _c.sent(), _b = _a[0], DynamicContextProvider_1 = _b.DynamicContextProvider, DynamicWidget_1 = _b.DynamicWidget, SolanaWalletConnectors = _a[1].SolanaWalletConnectors;
@@ -244,7 +208,7 @@ function LazyInternal(props) {
244
208
  return [3 /*break*/, 3];
245
209
  case 2:
246
210
  error_1 = _c.sent();
247
- logger_1.logger.error('Failed to load Dynamic dependencies:', error_1);
211
+ logger.error('Failed to load Dynamic dependencies:', error_1);
248
212
  return [3 /*break*/, 3];
249
213
  case 3: return [2 /*return*/];
250
214
  }
@@ -253,14 +217,14 @@ function LazyInternal(props) {
253
217
  loadDynamicDeps();
254
218
  }, []);
255
219
  // Memoize the dynamic settings to prevent unnecessary re-renders
256
- var dynamicSettings = (0, react_1.useCallback)(function () { return (__assign(__assign({}, getSettings()), { walletConnectors: walletConnectors })); }, [walletConnectors]);
220
+ var dynamicSettings = useCallback(function () { return (__assign(__assign({}, getSettings()), { walletConnectors: walletConnectors })); }, [walletConnectors]);
257
221
  if (!Provider || walletConnectors.length === 0) {
258
222
  return null;
259
223
  }
260
- return ((0, jsx_runtime_1.jsxs)(Provider, { settings: dynamicSettings(), theme: "dark", children: [(0, jsx_runtime_1.jsx)(DynamicContextConsumer, { children: props.children }), DynamicWidgetComponent ? (0, jsx_runtime_1.jsx)(DynamicWidgetComponent, {}) : null] }));
224
+ return (_jsxs(Provider, { settings: dynamicSettings(), theme: "dark", children: [_jsx(DynamicContextConsumer, { children: props.children }), DynamicWidgetComponent ? _jsx(DynamicWidgetComponent, {}) : null] }));
261
225
  }
262
- function LazyWalletProvider(_a) {
226
+ export function LazyWalletProvider(_a) {
263
227
  var children = _a.children;
264
- return (0, jsx_runtime_1.jsx)(LazyInternal, { children: children });
228
+ return _jsx(LazyInternal, { children: children });
265
229
  }
266
230
  //# sourceMappingURL=LazyWalletProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LazyWalletProvider.js","sourceRoot":"","sources":["../../src/providers/LazyWalletProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useN1WalletContext, useN1WalletInternalContext } from '../hooks/useN1Wallet';\nimport { logger } from '../utils/logger';\n\nconst AUTH_FLOW_IDLE_CLOSE_DELAY_MS = 1200;\n\nfunction DynamicContextConsumer({ children }: { children: any }) {\n const [DynamicContext, setDynamicContext] = useState<any>(null);\n const showAuthFlowRef = useRef<((show: boolean) => void) | null>(null);\n const primaryWalletStateRef = useRef<any>(null);\n const prevShowAuthFlowRef = useRef<boolean>(false);\n\n // Use refs to track previous values and prevent unnecessary updates\n const prevPrimaryWalletRef = useRef<any>(null);\n const prevHandleLogOutRef = useRef<any>(null);\n const prevSdkHasLoadedRef = useRef<boolean | null>(null);\n\n const {\n setDynamicWallet,\n setDynamicHandleLogOut,\n setDynamicSdkHasLoaded,\n setAddress,\n setShowDynamicWidget,\n setStartClosingLogin,\n } = useN1WalletInternalContext();\n\n const { setShowLogin, showLogin } = useN1WalletContext();\n const pendingAuthCloseRef = useRef<number | null>(null);\n\n\n // Load the Dynamic context only once\n useEffect(() => {\n let isMounted = true;\n import('@dynamic-labs/sdk-react-core').then(({ useDynamicContext }) => {\n if (isMounted) {\n setDynamicContext(() => useDynamicContext);\n }\n });\n return () => {\n isMounted = false;\n };\n }, []);\n\n // Set up a stable widget function that uses the ref - only once\n useEffect(() => {\n const stableShowWidget = (show: boolean) => {\n if (showAuthFlowRef.current) {\n showAuthFlowRef.current(show);\n }\n };\n\n setShowDynamicWidget(() => stableShowWidget);\n }, [setShowDynamicWidget]);\n\n if (!DynamicContext) {\n return <>{children}</>;\n }\n\n const DynamicComponent = () => {\n const { primaryWallet, sdkHasLoaded, setShowAuthFlow, handleLogOut, showAuthFlow } =\n DynamicContext();\n\n // Store setShowAuthFlow in ref to avoid re-renders - only when it changes\n useEffect(() => {\n if (!setShowAuthFlow) {\n showAuthFlowRef.current = null;\n return;\n }\n\n const proxiedSetShowAuthFlow = (show: boolean) => {\n setShowAuthFlow(show);\n };\n\n showAuthFlowRef.current = proxiedSetShowAuthFlow;\n\n return () => {\n if (showAuthFlowRef.current === proxiedSetShowAuthFlow) {\n showAuthFlowRef.current = null;\n }\n };\n }, [setShowAuthFlow, setShowLogin, setStartClosingLogin]);\n\n // Set the dynamic wallet and address when the primary wallet changes\n // Use deep comparison to prevent unnecessary updates\n useEffect(() => {\n \n // Skip if the wallet hasn't actually changed\n if (primaryWallet === prevPrimaryWalletRef.current) {\n return;\n }\n\n prevPrimaryWalletRef.current = primaryWallet;\n primaryWalletStateRef.current = primaryWallet;\n\n if (primaryWallet) {\n setDynamicWallet(primaryWallet);\n setAddress(primaryWallet.address);\n } else {\n setDynamicWallet(null);\n setAddress('');\n }\n }, [primaryWallet, setDynamicWallet, setAddress]);\n\n useEffect(() => {\n const wasAuthFlowOpen = prevShowAuthFlowRef.current;\n prevShowAuthFlowRef.current = showAuthFlow;\n\n if (pendingAuthCloseRef.current != null) {\n if (typeof window !== 'undefined') {\n window.clearTimeout(pendingAuthCloseRef.current);\n }\n pendingAuthCloseRef.current = null;\n }\n\n if (\n wasAuthFlowOpen &&\n !showAuthFlow &&\n showLogin\n ) {\n const closeIfStillIdle = () => {\n pendingAuthCloseRef.current = null;\n if (!primaryWalletStateRef.current) {\n logger.debug(\n 'Dynamic auth flow closed before wallet connection; closing Nord widget'\n );\n setShowLogin(false);\n setStartClosingLogin(true);\n }\n };\n\n if (typeof window === 'undefined') {\n closeIfStillIdle();\n } else {\n pendingAuthCloseRef.current = window.setTimeout(\n closeIfStillIdle,\n AUTH_FLOW_IDLE_CLOSE_DELAY_MS\n );\n }\n }\n }, [showAuthFlow, showLogin, setShowLogin, setStartClosingLogin]);\n\n // Set the logout handler when it changes - only when it actually changes\n useEffect(() => {\n if (handleLogOut && handleLogOut !== prevHandleLogOutRef.current) {\n prevHandleLogOutRef.current = handleLogOut;\n setDynamicHandleLogOut(() => handleLogOut);\n }\n }, [handleLogOut, setDynamicHandleLogOut]);\n\n // Set the SDK loaded flag when it changes - only when it actually changes\n useEffect(() => {\n if (sdkHasLoaded !== prevSdkHasLoadedRef.current) {\n prevSdkHasLoadedRef.current = sdkHasLoaded;\n setDynamicSdkHasLoaded(sdkHasLoaded);\n }\n }, [sdkHasLoaded, setDynamicSdkHasLoaded]);\n\n return <>{children}</>;\n };\n\n return <DynamicComponent />;\n}\n\nconst getSettings = () => ({\n initialAuthenticationMode: 'connect-only',\n environmentId: '61fe6031-545b-4e27-bc05-03c8a09f190b',\n silentAuthentication: true,\n silentAuth: true,\n theme: {\n mode: 'dark',\n },\n events: {\n onAuthSuccess: (args: any) => {\n logger.debug('onAuthSuccess was called', args);\n },\n },\n});\n\nfunction LazyInternal(props: { children: any }) {\n const [Provider, setProvider] = useState<any>(null);\n const [DynamicWidgetComponent, setDynamicWidgetComponent] = useState<any>(null);\n const [walletConnectors, setWalletConnectors] = useState<any[]>([]);\n\n useEffect(() => {\n\n const loadDynamicDeps = async () => {\n try {\n const [\n { DynamicContextProvider, DynamicWidget },\n { SolanaWalletConnectors },\n ] = await Promise.all([\n import('@dynamic-labs/sdk-react-core'),\n import('@dynamic-labs/solana'),\n ]);\n\n setProvider(() => DynamicContextProvider);\n setDynamicWidgetComponent(() => DynamicWidget);\n setWalletConnectors([SolanaWalletConnectors]);\n } catch (error) {\n logger.error('Failed to load Dynamic dependencies:', error);\n }\n };\n\n loadDynamicDeps();\n }, []);\n\n // Memoize the dynamic settings to prevent unnecessary re-renders\n const dynamicSettings = useCallback(\n () => ({\n ...getSettings(),\n walletConnectors,\n }),\n [walletConnectors]\n );\n\n if (!Provider || walletConnectors.length === 0) {\n return null;\n }\n\n return (\n <Provider settings={dynamicSettings()} theme=\"dark\">\n <DynamicContextConsumer>{props.children}</DynamicContextConsumer>\n {DynamicWidgetComponent ? <DynamicWidgetComponent /> : null}\n </Provider>\n );\n}\n\nexport function LazyWalletProvider({ children }: any) {\n return <LazyInternal>{children}</LazyInternal>;\n}\n"]}
1
+ {"version":3,"file":"LazyWalletProvider.js","sourceRoot":"","sources":["../../src/providers/LazyWalletProvider.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useN1WalletContext, useN1WalletInternalContext } from '../hooks/useN1Wallet';\nimport { logger } from '../utils/logger';\n\nconst AUTH_FLOW_IDLE_CLOSE_DELAY_MS = 1200;\n\nfunction DynamicContextConsumer({ children }: { children: any }) {\n const [DynamicContext, setDynamicContext] = useState<any>(null);\n const showAuthFlowRef = useRef<((show: boolean) => void) | null>(null);\n const primaryWalletStateRef = useRef<any>(null);\n const prevShowAuthFlowRef = useRef<boolean>(false);\n\n // Use refs to track previous values and prevent unnecessary updates\n const prevPrimaryWalletRef = useRef<any>(null);\n const prevHandleLogOutRef = useRef<any>(null);\n const prevSdkHasLoadedRef = useRef<boolean | null>(null);\n\n const {\n setDynamicWallet,\n setDynamicHandleLogOut,\n setDynamicSdkHasLoaded,\n setAddress,\n setShowDynamicWidget,\n setStartClosingLogin,\n } = useN1WalletInternalContext();\n\n const { setShowLogin, showLogin } = useN1WalletContext();\n const pendingAuthCloseRef = useRef<number | null>(null);\n\n\n // Load the Dynamic context only once\n useEffect(() => {\n let isMounted = true;\n import('@dynamic-labs/sdk-react-core').then(({ useDynamicContext }) => {\n if (isMounted) {\n setDynamicContext(() => useDynamicContext);\n }\n });\n return () => {\n isMounted = false;\n };\n }, []);\n\n // Set up a stable widget function that uses the ref - only once\n useEffect(() => {\n const stableShowWidget = (show: boolean) => {\n if (showAuthFlowRef.current) {\n showAuthFlowRef.current(show);\n }\n };\n\n setShowDynamicWidget(() => stableShowWidget);\n }, [setShowDynamicWidget]);\n\n if (!DynamicContext) {\n return <>{children}</>;\n }\n\n const DynamicComponent = () => {\n const { primaryWallet, sdkHasLoaded, setShowAuthFlow, handleLogOut, showAuthFlow } =\n DynamicContext();\n\n // Store setShowAuthFlow in ref to avoid re-renders - only when it changes\n useEffect(() => {\n if (!setShowAuthFlow) {\n showAuthFlowRef.current = null;\n return;\n }\n\n const proxiedSetShowAuthFlow = (show: boolean) => {\n setShowAuthFlow(show);\n };\n\n showAuthFlowRef.current = proxiedSetShowAuthFlow;\n\n return () => {\n if (showAuthFlowRef.current === proxiedSetShowAuthFlow) {\n showAuthFlowRef.current = null;\n }\n };\n }, [setShowAuthFlow, setShowLogin, setStartClosingLogin]);\n\n // Set the dynamic wallet and address when the primary wallet changes\n // Use deep comparison to prevent unnecessary updates\n useEffect(() => {\n \n // Skip if the wallet hasn't actually changed\n if (primaryWallet === prevPrimaryWalletRef.current) {\n return;\n }\n\n prevPrimaryWalletRef.current = primaryWallet;\n primaryWalletStateRef.current = primaryWallet;\n\n if (primaryWallet) {\n setDynamicWallet(primaryWallet);\n setAddress(primaryWallet.address);\n } else {\n setDynamicWallet(null);\n setAddress('');\n }\n }, [primaryWallet, setDynamicWallet, setAddress]);\n\n useEffect(() => {\n const wasAuthFlowOpen = prevShowAuthFlowRef.current;\n prevShowAuthFlowRef.current = showAuthFlow;\n\n if (pendingAuthCloseRef.current != null) {\n if (typeof window !== 'undefined') {\n window.clearTimeout(pendingAuthCloseRef.current);\n }\n pendingAuthCloseRef.current = null;\n }\n\n if (\n wasAuthFlowOpen &&\n !showAuthFlow &&\n showLogin\n ) {\n const closeIfStillIdle = () => {\n pendingAuthCloseRef.current = null;\n if (!primaryWalletStateRef.current) {\n logger.debug(\n 'Dynamic auth flow closed before wallet connection; closing Nord widget'\n );\n setShowLogin(false);\n setStartClosingLogin(true);\n }\n };\n\n if (typeof window === 'undefined') {\n closeIfStillIdle();\n } else {\n pendingAuthCloseRef.current = window.setTimeout(\n closeIfStillIdle,\n AUTH_FLOW_IDLE_CLOSE_DELAY_MS\n );\n }\n }\n }, [showAuthFlow, showLogin, setShowLogin, setStartClosingLogin]);\n\n // Set the logout handler when it changes - only when it actually changes\n useEffect(() => {\n if (handleLogOut && handleLogOut !== prevHandleLogOutRef.current) {\n prevHandleLogOutRef.current = handleLogOut;\n setDynamicHandleLogOut(() => handleLogOut);\n }\n }, [handleLogOut, setDynamicHandleLogOut]);\n\n // Set the SDK loaded flag when it changes - only when it actually changes\n useEffect(() => {\n if (sdkHasLoaded !== prevSdkHasLoadedRef.current) {\n prevSdkHasLoadedRef.current = sdkHasLoaded;\n setDynamicSdkHasLoaded(sdkHasLoaded);\n }\n }, [sdkHasLoaded, setDynamicSdkHasLoaded]);\n\n return <>{children}</>;\n };\n\n return <DynamicComponent />;\n}\n\nconst getSettings = () => ({\n initialAuthenticationMode: 'connect-only',\n environmentId: '61fe6031-545b-4e27-bc05-03c8a09f190b',\n silentAuthentication: true,\n silentAuth: true,\n theme: {\n mode: 'dark',\n },\n events: {\n onAuthSuccess: (args: any) => {\n logger.debug('onAuthSuccess was called', args);\n },\n },\n});\n\nfunction LazyInternal(props: { children: any }) {\n const [Provider, setProvider] = useState<any>(null);\n const [DynamicWidgetComponent, setDynamicWidgetComponent] = useState<any>(null);\n const [walletConnectors, setWalletConnectors] = useState<any[]>([]);\n\n useEffect(() => {\n\n const loadDynamicDeps = async () => {\n try {\n const [\n { DynamicContextProvider, DynamicWidget },\n { SolanaWalletConnectors },\n ] = await Promise.all([\n import('@dynamic-labs/sdk-react-core'),\n import('@dynamic-labs/solana'),\n ]);\n\n setProvider(() => DynamicContextProvider);\n setDynamicWidgetComponent(() => DynamicWidget);\n setWalletConnectors([SolanaWalletConnectors]);\n } catch (error) {\n logger.error('Failed to load Dynamic dependencies:', error);\n }\n };\n\n loadDynamicDeps();\n }, []);\n\n // Memoize the dynamic settings to prevent unnecessary re-renders\n const dynamicSettings = useCallback(\n () => ({\n ...getSettings(),\n walletConnectors,\n }),\n [walletConnectors]\n );\n\n if (!Provider || walletConnectors.length === 0) {\n return null;\n }\n\n return (\n <Provider settings={dynamicSettings()} theme=\"dark\">\n <DynamicContextConsumer>{props.children}</DynamicContextConsumer>\n {DynamicWidgetComponent ? <DynamicWidgetComponent /> : null}\n </Provider>\n );\n}\n\nexport function LazyWalletProvider({ children }: any) {\n return <LazyInternal>{children}</LazyInternal>;\n}\n"]}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  'use client';
3
2
  var __assign = (this && this.__assign) || function () {
4
3
  __assign = Object.assign || function(t) {
@@ -11,39 +10,6 @@ var __assign = (this && this.__assign) || function () {
11
10
  };
12
11
  return __assign.apply(this, arguments);
13
12
  };
14
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- var desc = Object.getOwnPropertyDescriptor(m, k);
17
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
18
- desc = { enumerable: true, get: function() { return m[k]; } };
19
- }
20
- Object.defineProperty(o, k2, desc);
21
- }) : (function(o, m, k, k2) {
22
- if (k2 === undefined) k2 = k;
23
- o[k2] = m[k];
24
- }));
25
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
26
- Object.defineProperty(o, "default", { enumerable: true, value: v });
27
- }) : function(o, v) {
28
- o["default"] = v;
29
- });
30
- var __importStar = (this && this.__importStar) || (function () {
31
- var ownKeys = function(o) {
32
- ownKeys = Object.getOwnPropertyNames || function (o) {
33
- var ar = [];
34
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
35
- return ar;
36
- };
37
- return ownKeys(o);
38
- };
39
- return function (mod) {
40
- if (mod && mod.__esModule) return mod;
41
- var result = {};
42
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
43
- __setModuleDefault(result, mod);
44
- return result;
45
- };
46
- })();
47
13
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
48
14
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
49
15
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -80,94 +46,89 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
80
46
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
81
47
  }
82
48
  };
83
- var __importDefault = (this && this.__importDefault) || function (mod) {
84
- return (mod && mod.__esModule) ? mod : { "default": mod };
85
- };
86
- Object.defineProperty(exports, "__esModule", { value: true });
87
- exports.N1WalletProvider = N1WalletProvider;
88
- var jsx_runtime_1 = require("react/jsx-runtime");
89
- require("../polyfills/windowEthereumGuard");
90
- var react_1 = __importStar(require("react"));
91
- var react_shadow_1 = __importDefault(require("react-shadow"));
92
- var N1WalletModal_1 = require("../features/onboarding-flow/N1WalletModal");
93
- var providers_1 = require("../features/onboarding-flow/providers");
94
- var types_1 = require("../errors/types");
95
- var logger_1 = require("../utils/logger");
96
- var WalletErrorBoundary_1 = __importDefault(require("./WalletErrorBoundary"));
97
- var n1_wallet_context_1 = require("../context/n1-wallet-context");
98
- var useNordUserInitialization_1 = require("../hooks/useNordUserInitialization");
99
- var wallet_1 = require("../types/wallet");
100
- var embedded_main_css_1 = __importDefault(require("../styles/embedded-main-css"));
101
- var LazyWalletProvider = react_1.default.lazy(function () {
102
- return Promise.resolve().then(function () { return __importStar(require('./LazyWalletProvider')); }).then(function (mod) { return ({
49
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
50
+ import '../polyfills/windowEthereumGuard';
51
+ import React, { Suspense, useCallback, useEffect, useRef, useState } from 'react';
52
+ import root from 'react-shadow';
53
+ import { N1WalletModal } from '../features/onboarding-flow/N1WalletModal';
54
+ import { OnboardingProvider } from '../features/onboarding-flow/providers';
55
+ import { WalletError, WalletErrorCode } from '../errors/types';
56
+ import { logger } from '../utils/logger';
57
+ import WalletErrorBoundary from './WalletErrorBoundary';
58
+ import { N1InternalWalletContext, N1WalletContext } from '../context/n1-wallet-context';
59
+ import { useNordUserInitialization } from '../hooks/useNordUserInitialization';
60
+ import { N1ModalViewMode, N1SessionMode, } from '../types/wallet';
61
+ import mainCss from '../styles/embedded-main-css';
62
+ var LazyWalletProvider = React.lazy(function () {
63
+ return import('./LazyWalletProvider').then(function (mod) { return ({
103
64
  default: mod.LazyWalletProvider,
104
65
  }); });
105
66
  });
106
- var ModalContent = react_1.default.memo(function (_a) {
67
+ var ModalContent = React.memo(function (_a) {
107
68
  var css = _a.css;
108
- return ((0, jsx_runtime_1.jsxs)(react_shadow_1.default.div, { children: [(0, jsx_runtime_1.jsx)("style", { children: css }), (0, jsx_runtime_1.jsx)(N1WalletModal_1.N1WalletModal, {})] }));
69
+ return (_jsxs(root.div, { children: [_jsx("style", { children: css }), _jsx(N1WalletModal, {})] }));
109
70
  });
110
- var DynamicBridge = react_1.default.memo(function () { return null; });
71
+ var DynamicBridge = React.memo(function () { return null; });
111
72
  function NordWrapper(_a) {
112
73
  var children = _a.children;
113
74
  // Use the extracted hook for NordUser initialization
114
- (0, useNordUserInitialization_1.useNordUserInitialization)();
115
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children }));
75
+ useNordUserInitialization();
76
+ return (_jsx(_Fragment, { children: children }));
116
77
  }
117
- function N1WalletProvider(_a) {
78
+ export function N1WalletProvider(_a) {
118
79
  var _this = this;
119
80
  var children = _a.children, providedSessionMode = _a.providedSessionMode, onError = _a.onError, nord = _a.nord, colorOverrides = _a.colorOverrides, skipFinalScreen = _a.skipFinalScreen;
120
- var _b = (0, react_1.useState)(false), isConnected = _b[0], setIsConnected = _b[1];
121
- var _c = (0, react_1.useState)(null), sessionPubKey = _c[0], setSessionPubKey = _c[1];
122
- var _d = (0, react_1.useState)(null), walletPubKey = _d[0], setWalletPubKey = _d[1];
123
- var _e = (0, react_1.useState)(null), userChain = _e[0], setUserChain = _e[1];
124
- var _f = (0, react_1.useState)(''), username = _f[0], setUsername = _f[1];
81
+ var _b = useState(false), isConnected = _b[0], setIsConnected = _b[1];
82
+ var _c = useState(null), sessionPubKey = _c[0], setSessionPubKey = _c[1];
83
+ var _d = useState(null), walletPubKey = _d[0], setWalletPubKey = _d[1];
84
+ var _e = useState(null), userChain = _e[0], setUserChain = _e[1];
85
+ var _f = useState(''), username = _f[0], setUsername = _f[1];
125
86
  // TODO: Define proper types for message and transaction
126
- var _g = (0, react_1.useState)(null), signMessageWithSessionKey = _g[0], setSignMessageWithSessionKey = _g[1];
127
- var _h = (0, react_1.useState)(null), signMessageWithWalletKey = _h[0], setSignMessageWithWalletKey = _h[1];
128
- var _j = (0, react_1.useState)(null), signTransactionWithWalletKey = _j[0], setSignTransactionWithWalletKey = _j[1];
129
- var _k = (0, react_1.useState)(false), loading = _k[0], setLoading = _k[1];
130
- var _l = (0, react_1.useState)(wallet_1.N1ModalViewMode.Automatic), viewMode = _l[0], setViewMode = _l[1];
87
+ var _g = useState(null), signMessageWithSessionKey = _g[0], setSignMessageWithSessionKey = _g[1];
88
+ var _h = useState(null), signMessageWithWalletKey = _h[0], setSignMessageWithWalletKey = _h[1];
89
+ var _j = useState(null), signTransactionWithWalletKey = _j[0], setSignTransactionWithWalletKey = _j[1];
90
+ var _k = useState(false), loading = _k[0], setLoading = _k[1];
91
+ var _l = useState(N1ModalViewMode.Automatic), viewMode = _l[0], setViewMode = _l[1];
131
92
  // TODO: Import NordUser type from @n1xyz/nord-ts if available
132
- var _m = (0, react_1.useState)(null), nordUser = _m[0], setNordUser = _m[1];
133
- var _o = (0, react_1.useState)(function () { return function () {
134
- logger_1.logger.warn('disconnectWallet invoked before handler registration');
93
+ var _m = useState(null), nordUser = _m[0], setNordUser = _m[1];
94
+ var _o = useState(function () { return function () {
95
+ logger.warn('disconnectWallet invoked before handler registration');
135
96
  }; }), disconnectWalletHandler = _o[0], setDisconnectWalletHandler = _o[1];
136
97
  // dynamic
137
- var _p = (0, react_1.useState)([]), balances = _p[0], setBalances = _p[1];
138
- var _q = (0, react_1.useState)(''), chain = _q[0], setChain = _q[1];
139
- var _r = (0, react_1.useState)(null), dynamicSdkHasLoaded = _r[0], setDynamicSdkHasLoaded = _r[1];
140
- var _s = (0, react_1.useState)(false), showLogin = _s[0], setShowLoginState = _s[1];
141
- var _t = (0, react_1.useState)(false), startClosingLogin = _t[0], setStartClosingLogin = _t[1];
142
- var _u = (0, react_1.useState)(null), showDynamicWidget = _u[0], setShowDynamicWidget = _u[1];
143
- var _v = (0, react_1.useState)(0), depositFlowRequestId = _v[0], setDepositFlowRequestId = _v[1];
144
- var nextOpenAllowedAtRef = (0, react_1.useRef)(0);
145
- var pendingShowLoginRef = (0, react_1.useRef)(false);
98
+ var _p = useState([]), balances = _p[0], setBalances = _p[1];
99
+ var _q = useState(''), chain = _q[0], setChain = _q[1];
100
+ var _r = useState(null), dynamicSdkHasLoaded = _r[0], setDynamicSdkHasLoaded = _r[1];
101
+ var _s = useState(false), showLogin = _s[0], setShowLoginState = _s[1];
102
+ var _t = useState(false), startClosingLogin = _t[0], setStartClosingLogin = _t[1];
103
+ var _u = useState(null), showDynamicWidget = _u[0], setShowDynamicWidget = _u[1];
104
+ var _v = useState(0), depositFlowRequestId = _v[0], setDepositFlowRequestId = _v[1];
105
+ var nextOpenAllowedAtRef = useRef(0);
106
+ var pendingShowLoginRef = useRef(false);
146
107
  // dynamic
147
- var _w = (0, react_1.useState)(''), address = _w[0], setAddress = _w[1];
148
- var _x = (0, react_1.useState)(null), dynamicHandleLogOut = _x[0], setDynamicHandleLogOut = _x[1];
149
- var _y = (0, react_1.useState)(null), dynamicWallet = _y[0], setDynamicWallet = _y[1];
150
- var sessionMode = wallet_1.N1SessionMode.Nord;
151
- (0, react_1.useEffect)(function () {
152
- if (providedSessionMode !== wallet_1.N1SessionMode.Nord) {
153
- logger_1.logger.warn("Only Nord session mode is supported. Received ".concat(providedSessionMode, ", defaulting to Nord."));
108
+ var _w = useState(''), address = _w[0], setAddress = _w[1];
109
+ var _x = useState(null), dynamicHandleLogOut = _x[0], setDynamicHandleLogOut = _x[1];
110
+ var _y = useState(null), dynamicWallet = _y[0], setDynamicWallet = _y[1];
111
+ var sessionMode = N1SessionMode.Nord;
112
+ useEffect(function () {
113
+ if (providedSessionMode !== N1SessionMode.Nord) {
114
+ logger.warn("Only Nord session mode is supported. Received ".concat(providedSessionMode, ", defaulting to Nord."));
154
115
  }
155
116
  }, [providedSessionMode]);
156
- (0, react_1.useEffect)(function () {
117
+ useEffect(function () {
157
118
  var isDynamicReady = Boolean(dynamicSdkHasLoaded);
158
119
  setLoading(!isDynamicReady);
159
120
  }, [dynamicSdkHasLoaded, setLoading]);
160
- var handleError = (0, react_1.useCallback)(function (error) {
121
+ var handleError = useCallback(function (error) {
161
122
  onError === null || onError === void 0 ? void 0 : onError(error);
162
123
  }, [onError]);
163
124
  var throwTestError = function () { return __awaiter(_this, void 0, void 0, function () {
164
125
  return __generator(this, function (_a) {
165
- handleError(new types_1.WalletError(types_1.WalletErrorCode.WALLET_NOT_FOUND, 'Test error: No compatible wallet was found'));
126
+ handleError(new WalletError(WalletErrorCode.WALLET_NOT_FOUND, 'Test error: No compatible wallet was found'));
166
127
  return [2 /*return*/];
167
128
  });
168
129
  }); };
169
130
  // Prepare CSS with color overrides if provided
170
- var injectedCss = embedded_main_css_1.default;
131
+ var injectedCss = mainCss;
171
132
  if (Array.isArray(colorOverrides) && colorOverrides.length > 0) {
172
133
  // Apply all color overrides in order
173
134
  colorOverrides.forEach(function (_a) {
@@ -179,15 +140,15 @@ function N1WalletProvider(_a) {
179
140
  }
180
141
  });
181
142
  }
182
- var blockModalReopen = (0, react_1.useCallback)(function (duration) {
143
+ var blockModalReopen = useCallback(function (duration) {
183
144
  if (duration === void 0) { duration = 600; }
184
145
  var unblockAt = Date.now() + duration;
185
- logger_1.logger.debug('blockModalReopen invoked', { duration: duration, unblockAt: unblockAt });
146
+ logger.debug('blockModalReopen invoked', { duration: duration, unblockAt: unblockAt });
186
147
  nextOpenAllowedAtRef.current = Date.now() + duration;
187
148
  }, []);
188
- var applyShowLoginState = (0, react_1.useCallback)(function (next) {
149
+ var applyShowLoginState = useCallback(function (next) {
189
150
  setShowLoginState(function (prev) {
190
- logger_1.logger.debug('setShowLogin invoked', {
151
+ logger.debug('setShowLogin invoked', {
191
152
  next: next,
192
153
  prev: prev,
193
154
  now: Date.now(),
@@ -197,43 +158,43 @@ function N1WalletProvider(_a) {
197
158
  return prev;
198
159
  }
199
160
  if (next) {
200
- logger_1.logger.debug('setShowLogin opening request stack trace', {
161
+ logger.debug('setShowLogin opening request stack trace', {
201
162
  stack: new Error('setShowLogin stack').stack,
202
163
  });
203
164
  if (Date.now() < nextOpenAllowedAtRef.current) {
204
- logger_1.logger.debug('setShowLogin blocked by cooldown', {
165
+ logger.debug('setShowLogin blocked by cooldown', {
205
166
  next: next,
206
167
  prev: prev,
207
168
  });
208
169
  return prev;
209
170
  }
210
- logger_1.logger.debug('setShowLogin opening modal');
171
+ logger.debug('setShowLogin opening modal');
211
172
  return true;
212
173
  }
213
- logger_1.logger.debug('setShowLogin closing modal');
174
+ logger.debug('setShowLogin closing modal');
214
175
  blockModalReopen();
215
176
  return false;
216
177
  });
217
178
  }, [blockModalReopen]);
218
- (0, react_1.useEffect)(function () {
179
+ useEffect(function () {
219
180
  if (dynamicSdkHasLoaded && pendingShowLoginRef.current) {
220
- logger_1.logger.debug('setShowLogin deferred open; Dynamic SDK ready, opening modal');
181
+ logger.debug('setShowLogin deferred open; Dynamic SDK ready, opening modal');
221
182
  pendingShowLoginRef.current = false;
222
183
  applyShowLoginState(true);
223
184
  }
224
185
  }, [dynamicSdkHasLoaded, applyShowLoginState]);
225
- var setShowLogin = (0, react_1.useCallback)(function (next) {
186
+ var setShowLogin = useCallback(function (next) {
226
187
  if (next && !dynamicSdkHasLoaded) {
227
- logger_1.logger.debug('setShowLogin deferred until Dynamic SDK is ready');
188
+ logger.debug('setShowLogin deferred until Dynamic SDK is ready');
228
189
  pendingShowLoginRef.current = true;
229
190
  return;
230
191
  }
231
192
  pendingShowLoginRef.current = false;
232
193
  applyShowLoginState(next);
233
194
  }, [dynamicSdkHasLoaded, applyShowLoginState]);
234
- var startDepositFlow = (0, react_1.useCallback)(function () {
195
+ var startDepositFlow = useCallback(function () {
235
196
  if (!nordUser || !nordUser.sessionId) {
236
- logger_1.logger.warn('startDepositFlow called without an authenticated Nord session; falling back to regular flow');
197
+ logger.warn('startDepositFlow called without an authenticated Nord session; falling back to regular flow');
237
198
  setShowLogin(true);
238
199
  return false;
239
200
  }
@@ -264,7 +225,7 @@ function N1WalletProvider(_a) {
264
225
  throwTestError: throwTestError,
265
226
  nord: nord,
266
227
  nordUser: nordUser,
267
- disconnectWallet: (0, react_1.useCallback)(function () {
228
+ disconnectWallet: useCallback(function () {
268
229
  disconnectWalletHandler();
269
230
  }, [disconnectWalletHandler]),
270
231
  };
@@ -301,6 +262,6 @@ function N1WalletProvider(_a) {
301
262
  depositFlowRequestId: depositFlowRequestId,
302
263
  setDisconnectWalletHandler: setDisconnectWalletHandler,
303
264
  };
304
- return ((0, jsx_runtime_1.jsx)(WalletErrorBoundary_1.default, { onError: handleError, children: (0, jsx_runtime_1.jsx)(n1_wallet_context_1.N1WalletContext.Provider, { value: walletContextValue, children: (0, jsx_runtime_1.jsx)(n1_wallet_context_1.N1InternalWalletContext.Provider, { value: __assign(__assign({}, internalWalletContextValue), { skipFinalScreen: skipFinalScreen }), children: (0, jsx_runtime_1.jsx)(NordWrapper, { children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(providers_1.OnboardingProvider, { children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [children, (0, jsx_runtime_1.jsx)(ModalContent, { css: injectedCss })] }) }), (0, jsx_runtime_1.jsx)(react_1.Suspense, { fallback: null, children: (0, jsx_runtime_1.jsx)(LazyWalletProvider, { children: (0, jsx_runtime_1.jsx)(DynamicBridge, {}) }) })] }) }) }) }) }));
265
+ return (_jsx(WalletErrorBoundary, { onError: handleError, children: _jsx(N1WalletContext.Provider, { value: walletContextValue, children: _jsx(N1InternalWalletContext.Provider, { value: __assign(__assign({}, internalWalletContextValue), { skipFinalScreen: skipFinalScreen }), children: _jsx(NordWrapper, { children: _jsxs(_Fragment, { children: [_jsx(OnboardingProvider, { children: _jsxs(_Fragment, { children: [children, _jsx(ModalContent, { css: injectedCss })] }) }), _jsx(Suspense, { fallback: null, children: _jsx(LazyWalletProvider, { children: _jsx(DynamicBridge, {}) }) })] }) }) }) }) }));
305
266
  }
306
267
  //# sourceMappingURL=N1WalletProvider.js.map