@dynamic-labs/sdk-react-core 0.18.100-viem.13 → 0.18.100-viem.14

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/CHANGELOG.md CHANGED
@@ -1,4 +1,16 @@
1
1
 
2
+ ### [0.18.100-viem.14](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.100-viem.13...v0.18.100-viem.14) (2023-09-05)
3
+
4
+
5
+ ### Features
6
+
7
+ * add onSignedMessage callback ([#3214](https://github.com/dynamic-labs/DynamicAuth/issues/3214)) ([92fd070](https://github.com/dynamic-labs/DynamicAuth/commit/92fd070c8edabce5ed991cfd92b3745c7afb0b43))
8
+
9
+
10
+ ### Bug Fixes
11
+
12
+ * prefer mainnet chain id when connecting with WCv2 ([#3220](https://github.com/dynamic-labs/DynamicAuth/issues/3220)) ([55eb097](https://github.com/dynamic-labs/DynamicAuth/commit/55eb09739f4c8912a9de2198f69cd925923270c4))
13
+
2
14
  ### [0.18.100-viem.13](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.100-viem.12...v0.18.100-viem.13) (2023-09-01)
3
15
 
4
16
 
package/package.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var version = "0.18.100-viem.13";
5
+ var version = "0.18.100-viem.14";
6
6
  var dependencies = {
7
7
  "react-focus-lock": "2.9.2",
8
8
  "@dynamic-labs/iconic": "0.1.27",
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
- var version = "0.18.100-viem.13";
1
+ var version = "0.18.100-viem.14";
2
2
  var dependencies = {
3
3
  "react-focus-lock": "2.9.2",
4
4
  "@dynamic-labs/iconic": "0.1.27",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/sdk-react-core",
3
- "version": "0.18.100-viem.13",
3
+ "version": "0.18.100-viem.14",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/dynamic-labs/DynamicAuth.git",
@@ -15,13 +15,13 @@
15
15
  "yup": "0.32.11",
16
16
  "formik": "2.2.9",
17
17
  "qrcode": "1.5.1",
18
- "@dynamic-labs/logger": "0.18.100-viem.13",
19
- "@dynamic-labs/multi-wallet": "0.18.100-viem.13",
20
- "@dynamic-labs/rpc-providers": "0.18.100-viem.13",
21
- "@dynamic-labs/types": "0.18.100-viem.13",
22
- "@dynamic-labs/utils": "0.18.100-viem.13",
23
- "@dynamic-labs/wallet-book": "0.18.100-viem.13",
24
- "@dynamic-labs/wallet-connector-core": "0.18.100-viem.13",
18
+ "@dynamic-labs/logger": "0.18.100-viem.14",
19
+ "@dynamic-labs/multi-wallet": "0.18.100-viem.14",
20
+ "@dynamic-labs/rpc-providers": "0.18.100-viem.14",
21
+ "@dynamic-labs/types": "0.18.100-viem.14",
22
+ "@dynamic-labs/utils": "0.18.100-viem.14",
23
+ "@dynamic-labs/wallet-book": "0.18.100-viem.14",
24
+ "@dynamic-labs/wallet-connector-core": "0.18.100-viem.14",
25
25
  "eventemitter3": "5.0.1"
26
26
  },
27
27
  "devDependencies": {
@@ -142,6 +142,10 @@ export type DynamicRPCProviders = {
142
142
  solanaProviders: SolanaRpcProvider[] | undefined;
143
143
  };
144
144
  export type DynamicEventsCallbacks = {
145
+ onSignedMessage?: (params: {
146
+ messageToSign: string;
147
+ signedMessage: string;
148
+ }) => void;
145
149
  onAuthFlowClose?: () => void;
146
150
  onAuthFlowOpen?: () => void;
147
151
  onAuthSuccess?: OnAuthSuccess;
@@ -38,7 +38,7 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
38
38
  const { setExistentAccountData } = AccountExistsContext.useAccountExistsContext();
39
39
  const { setView, goToInitialView } = ViewContext.useViewContext();
40
40
  const { setErrorMessage, setError } = ErrorContext.useErrorContext();
41
- const { setUser, multiWalletWidgetState, debugError, multiWallet: multiWalletEnabled, appName, primaryWalletId, setCallback, setShowAuthFlow, setPrimaryWalletId, siweStatement, connectedWallet, authMode, setOnboardingOnlyJwt, authToken, setAuthMode, removeConnectedWalletsInfo, setIsVerificationInProgress, } = useInternalDynamicContext.useInternalDynamicContext();
41
+ const { setUser, multiWalletWidgetState, debugError, multiWallet: multiWalletEnabled, appName, primaryWalletId, setCallback, setShowAuthFlow, setPrimaryWalletId, siweStatement, connectedWallet, authMode, setOnboardingOnlyJwt, authToken, setAuthMode, removeConnectedWalletsInfo, setIsVerificationInProgress, eventsCallbacks, } = useInternalDynamicContext.useInternalDynamicContext();
42
42
  // If the user is not already logged it means that we only need to verify
43
43
  // We need this boolean for the part of the logic where we already persisted a new authToken,
44
44
  // and need to distinguish between logic for verify or linking.
@@ -68,7 +68,7 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
68
68
  if (Jwt === undefined)
69
69
  throw new utils.DynamicError('Could not obtain a valid JWT');
70
70
  // TODO DYN-523: add verification here that the JWT is valid with the publicKey
71
- return Jwt;
71
+ return { Jwt, verifyArgs };
72
72
  });
73
73
  // Overrides the stored primary wallet id when the
74
74
  // user logs in for the first time.
@@ -143,13 +143,23 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
143
143
  }
144
144
  };
145
145
  return ({ walletConnector, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth, }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
146
+ var _a;
146
147
  const walletProvider = getWalletProvider.getWalletProvider(walletConnector);
147
148
  try {
148
149
  setIsVerificationInProgress(true);
149
- const Jwt = yield generateJWT(walletConnector, walletProvider, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth);
150
+ const { Jwt, verifyArgs } = yield generateJWT(walletConnector, walletProvider, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth);
150
151
  const decodedJwt = decodeJwt.decodeJwt(Jwt);
151
152
  if (decodedJwt === undefined)
152
153
  throw new utils.DynamicError('Invalid token!');
154
+ try {
155
+ (_a = eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onSignedMessage) === null || _a === void 0 ? void 0 : _a.call(eventsCallbacks, {
156
+ messageToSign: verifyArgs.messageToSign,
157
+ signedMessage: verifyArgs.signedMessage,
158
+ });
159
+ }
160
+ catch (_b) {
161
+ logger.logger.warn('Error calling onSignedMessage callback');
162
+ }
153
163
  const user = yield createUserProfile.createUserProfile(decodedJwt);
154
164
  const isKycRequired = decodedJwt.missingFields.length;
155
165
  setOnboardingOnlyJwt(Jwt);
@@ -34,7 +34,7 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
34
34
  const { setExistentAccountData } = useAccountExistsContext();
35
35
  const { setView, goToInitialView } = useViewContext();
36
36
  const { setErrorMessage, setError } = useErrorContext();
37
- const { setUser, multiWalletWidgetState, debugError, multiWallet: multiWalletEnabled, appName, primaryWalletId, setCallback, setShowAuthFlow, setPrimaryWalletId, siweStatement, connectedWallet, authMode, setOnboardingOnlyJwt, authToken, setAuthMode, removeConnectedWalletsInfo, setIsVerificationInProgress, } = useInternalDynamicContext();
37
+ const { setUser, multiWalletWidgetState, debugError, multiWallet: multiWalletEnabled, appName, primaryWalletId, setCallback, setShowAuthFlow, setPrimaryWalletId, siweStatement, connectedWallet, authMode, setOnboardingOnlyJwt, authToken, setAuthMode, removeConnectedWalletsInfo, setIsVerificationInProgress, eventsCallbacks, } = useInternalDynamicContext();
38
38
  // If the user is not already logged it means that we only need to verify
39
39
  // We need this boolean for the part of the logic where we already persisted a new authToken,
40
40
  // and need to distinguish between logic for verify or linking.
@@ -64,7 +64,7 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
64
64
  if (Jwt === undefined)
65
65
  throw new DynamicError('Could not obtain a valid JWT');
66
66
  // TODO DYN-523: add verification here that the JWT is valid with the publicKey
67
- return Jwt;
67
+ return { Jwt, verifyArgs };
68
68
  });
69
69
  // Overrides the stored primary wallet id when the
70
70
  // user logs in for the first time.
@@ -139,13 +139,23 @@ const useVerifyWallet = ({ consumeNonce, displaySiweStatement, environmentId, pr
139
139
  }
140
140
  };
141
141
  return ({ walletConnector, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth, }) => __awaiter(void 0, void 0, void 0, function* () {
142
+ var _a;
142
143
  const walletProvider = getWalletProvider(walletConnector);
143
144
  try {
144
145
  setIsVerificationInProgress(true);
145
- const Jwt = yield generateJWT(walletConnector, walletProvider, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth);
146
+ const { Jwt, verifyArgs } = yield generateJWT(walletConnector, walletProvider, fetchPublicAddressOpts, publicWalletAddress, captchaToken, oauth);
146
147
  const decodedJwt = decodeJwt(Jwt);
147
148
  if (decodedJwt === undefined)
148
149
  throw new DynamicError('Invalid token!');
150
+ try {
151
+ (_a = eventsCallbacks === null || eventsCallbacks === void 0 ? void 0 : eventsCallbacks.onSignedMessage) === null || _a === void 0 ? void 0 : _a.call(eventsCallbacks, {
152
+ messageToSign: verifyArgs.messageToSign,
153
+ signedMessage: verifyArgs.signedMessage,
154
+ });
155
+ }
156
+ catch (_b) {
157
+ logger.warn('Error calling onSignedMessage callback');
158
+ }
149
159
  const user = yield createUserProfile(decodedJwt);
150
160
  const isKycRequired = decodedJwt.missingFields.length;
151
161
  setOnboardingOnlyJwt(Jwt);