@dynamic-labs/sdk-react-core 4.46.0 → 4.46.2
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 +9 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +12 -12
- package/src/lib/utils/hooks/useDynamicWaas/useDynamicWaas.cjs +2 -2
- package/src/lib/utils/hooks/useDynamicWaas/useDynamicWaas.js +2 -2
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.cjs +12 -5
- package/src/lib/utils/hooks/useWalletUiUtils/useWalletUiUtils.js +12 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
|
|
2
|
+
### [4.46.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.46.1...v4.46.2) (2025-11-20)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* patch vulnerability with package @hpke/core ([#9923](https://github.com/dynamic-labs/dynamic-auth/issues/9923)) ([24133c6](https://github.com/dynamic-labs/dynamic-auth/commit/24133c6155fa36cd65cd2befabbdd9cbaa239b61))
|
|
8
|
+
|
|
9
|
+
### [4.46.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.46.0...v4.46.1) (2025-11-20)
|
|
10
|
+
|
|
2
11
|
## [4.46.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.45.3...v4.46.0) (2025-11-19)
|
|
3
12
|
|
|
4
13
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "4.46.
|
|
3
|
+
"version": "4.46.2",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"@dynamic-labs/sdk-api-core": "0.0.821",
|
|
6
6
|
"@dynamic-labs-sdk/client": "0.1.0-alpha.28",
|
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
"yup": "0.32.11",
|
|
16
16
|
"react-international-phone": "4.5.0",
|
|
17
17
|
"bs58": "5.0.0",
|
|
18
|
-
"@dynamic-labs/assert-package-version": "4.46.
|
|
19
|
-
"@dynamic-labs/iconic": "4.46.
|
|
20
|
-
"@dynamic-labs/locale": "4.46.
|
|
21
|
-
"@dynamic-labs/logger": "4.46.
|
|
22
|
-
"@dynamic-labs/multi-wallet": "4.46.
|
|
23
|
-
"@dynamic-labs/rpc-providers": "4.46.
|
|
24
|
-
"@dynamic-labs/store": "4.46.
|
|
25
|
-
"@dynamic-labs/types": "4.46.
|
|
26
|
-
"@dynamic-labs/utils": "4.46.
|
|
27
|
-
"@dynamic-labs/wallet-book": "4.46.
|
|
28
|
-
"@dynamic-labs/wallet-connector-core": "4.46.
|
|
18
|
+
"@dynamic-labs/assert-package-version": "4.46.2",
|
|
19
|
+
"@dynamic-labs/iconic": "4.46.2",
|
|
20
|
+
"@dynamic-labs/locale": "4.46.2",
|
|
21
|
+
"@dynamic-labs/logger": "4.46.2",
|
|
22
|
+
"@dynamic-labs/multi-wallet": "4.46.2",
|
|
23
|
+
"@dynamic-labs/rpc-providers": "4.46.2",
|
|
24
|
+
"@dynamic-labs/store": "4.46.2",
|
|
25
|
+
"@dynamic-labs/types": "4.46.2",
|
|
26
|
+
"@dynamic-labs/utils": "4.46.2",
|
|
27
|
+
"@dynamic-labs/wallet-book": "4.46.2",
|
|
28
|
+
"@dynamic-labs/wallet-connector-core": "4.46.2",
|
|
29
29
|
"eventemitter3": "5.0.1"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
@@ -288,7 +288,7 @@ const useDynamicWaas = () => {
|
|
|
288
288
|
}
|
|
289
289
|
}
|
|
290
290
|
catch (error) {
|
|
291
|
-
walletConnectorCore.logger.
|
|
291
|
+
walletConnectorCore.logger.error('Error initializing waas wallet client', {
|
|
292
292
|
chain,
|
|
293
293
|
error,
|
|
294
294
|
sessionId: user.sessionId,
|
|
@@ -298,7 +298,7 @@ const useDynamicWaas = () => {
|
|
|
298
298
|
})));
|
|
299
299
|
}
|
|
300
300
|
catch (error) {
|
|
301
|
-
walletConnectorCore.logger.
|
|
301
|
+
walletConnectorCore.logger.error('Error initializing waas', {
|
|
302
302
|
error,
|
|
303
303
|
sessionId: user.sessionId,
|
|
304
304
|
userId: user.id,
|
|
@@ -284,7 +284,7 @@ const useDynamicWaas = () => {
|
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
286
|
catch (error) {
|
|
287
|
-
logger.
|
|
287
|
+
logger.error('Error initializing waas wallet client', {
|
|
288
288
|
chain,
|
|
289
289
|
error,
|
|
290
290
|
sessionId: user.sessionId,
|
|
@@ -294,7 +294,7 @@ const useDynamicWaas = () => {
|
|
|
294
294
|
})));
|
|
295
295
|
}
|
|
296
296
|
catch (error) {
|
|
297
|
-
logger.
|
|
297
|
+
logger.error('Error initializing waas', {
|
|
298
298
|
error,
|
|
299
299
|
sessionId: user.sessionId,
|
|
300
300
|
userId: user.id,
|
|
@@ -125,16 +125,23 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
125
125
|
const { modal: zkSyncCreateSessionModal, open: openZkSyncCreateSession } = useConfirmationModal.useConfirmationModal({
|
|
126
126
|
elementId: 'dynamic-zksync-approval',
|
|
127
127
|
});
|
|
128
|
-
const shouldConfirmAction = React.useCallback(() => {
|
|
128
|
+
const shouldConfirmAction = React.useCallback(({ walletConnector }) => {
|
|
129
|
+
// For Dynamic Waas connector, we disable confirmation if hideEmbeddedWalletTransactionUIs is true
|
|
130
|
+
// V2 wallets require the UI component to be rendered even if the confirmation is disabled
|
|
131
|
+
// Waas does not require the UI component to be rendered so it can be skipped
|
|
132
|
+
if ((walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.overrideKey) === 'dynamicwaas' &&
|
|
133
|
+
hideEmbeddedWalletTransactionUIs) {
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
129
136
|
if (confirmationStateRef.current === 'disabled') {
|
|
130
137
|
confirmationStateRef.current = 'enabled';
|
|
131
138
|
return false;
|
|
132
139
|
}
|
|
133
140
|
return true;
|
|
134
|
-
}, [confirmationStateRef]);
|
|
141
|
+
}, [hideEmbeddedWalletTransactionUIs, confirmationStateRef]);
|
|
135
142
|
const signMessage = React.useCallback((_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ walletConnector, message, handler }) {
|
|
136
143
|
// prevent the modal from opening itself again
|
|
137
|
-
if (!shouldConfirmAction())
|
|
144
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
138
145
|
return handler();
|
|
139
146
|
return openSignMessage((resolve, reject) => (jsxRuntime.jsx(SignMessageConfirmationModal.SignMessageConfirmationModal, { message: message, handler: handler, onSignMessage: resolve, onReject: reject, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
140
147
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedMessage) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -146,7 +153,7 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
146
153
|
}), [hideEmbeddedWalletTransactionUIs, openSignMessage, shouldConfirmAction]);
|
|
147
154
|
const sendTransaction = React.useCallback((walletConnector, transaction) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
148
155
|
// prevent the modal from opening itself again
|
|
149
|
-
if (!shouldConfirmAction())
|
|
156
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
150
157
|
return transaction.submit();
|
|
151
158
|
return openSendTransaction((resolve, reject) => (jsxRuntime.jsx(TransactionConfirmationModal.TransactionConfirmationModal, { copykey: 'dyn_send_transaction.confirmation.title', title: t('dyn_send_transaction.confirmation.title'), transaction: transaction, onTransactionResponseSuccess: resolve, onReject: reject, walletConnector: walletConnector, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
152
159
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedTransaction) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -164,7 +171,7 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
164
171
|
// Solana only
|
|
165
172
|
const signTransaction = React.useCallback((walletConnector, transaction) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
166
173
|
// prevent the modal from opening itself again
|
|
167
|
-
if (!shouldConfirmAction())
|
|
174
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
168
175
|
return transaction.submit();
|
|
169
176
|
return openSendTransaction((resolve, reject) => (jsxRuntime.jsx(TransactionConfirmationModal.TransactionConfirmationModal, { copykey: 'dyn_send_transaction.confirmation.title', title: t('dyn_send_transaction.confirmation.title'), transaction: transaction, onTransactionResponseSuccess: resolve, onReject: reject, walletConnector: walletConnector, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
170
177
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedTransaction) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -121,16 +121,23 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
121
121
|
const { modal: zkSyncCreateSessionModal, open: openZkSyncCreateSession } = useConfirmationModal({
|
|
122
122
|
elementId: 'dynamic-zksync-approval',
|
|
123
123
|
});
|
|
124
|
-
const shouldConfirmAction = useCallback(() => {
|
|
124
|
+
const shouldConfirmAction = useCallback(({ walletConnector }) => {
|
|
125
|
+
// For Dynamic Waas connector, we disable confirmation if hideEmbeddedWalletTransactionUIs is true
|
|
126
|
+
// V2 wallets require the UI component to be rendered even if the confirmation is disabled
|
|
127
|
+
// Waas does not require the UI component to be rendered so it can be skipped
|
|
128
|
+
if ((walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.overrideKey) === 'dynamicwaas' &&
|
|
129
|
+
hideEmbeddedWalletTransactionUIs) {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
125
132
|
if (confirmationStateRef.current === 'disabled') {
|
|
126
133
|
confirmationStateRef.current = 'enabled';
|
|
127
134
|
return false;
|
|
128
135
|
}
|
|
129
136
|
return true;
|
|
130
|
-
}, [confirmationStateRef]);
|
|
137
|
+
}, [hideEmbeddedWalletTransactionUIs, confirmationStateRef]);
|
|
131
138
|
const signMessage = useCallback((_a) => __awaiter(void 0, [_a], void 0, function* ({ walletConnector, message, handler }) {
|
|
132
139
|
// prevent the modal from opening itself again
|
|
133
|
-
if (!shouldConfirmAction())
|
|
140
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
134
141
|
return handler();
|
|
135
142
|
return openSignMessage((resolve, reject) => (jsx(SignMessageConfirmationModal, { message: message, handler: handler, onSignMessage: resolve, onReject: reject, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
136
143
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedMessage) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -142,7 +149,7 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
142
149
|
}), [hideEmbeddedWalletTransactionUIs, openSignMessage, shouldConfirmAction]);
|
|
143
150
|
const sendTransaction = useCallback((walletConnector, transaction) => __awaiter(void 0, void 0, void 0, function* () {
|
|
144
151
|
// prevent the modal from opening itself again
|
|
145
|
-
if (!shouldConfirmAction())
|
|
152
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
146
153
|
return transaction.submit();
|
|
147
154
|
return openSendTransaction((resolve, reject) => (jsx(TransactionConfirmationModal, { copykey: 'dyn_send_transaction.confirmation.title', title: t('dyn_send_transaction.confirmation.title'), transaction: transaction, onTransactionResponseSuccess: resolve, onReject: reject, walletConnector: walletConnector, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
148
155
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedTransaction) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -160,7 +167,7 @@ const useWalletUiUtils = ({ hideEmbeddedWalletTransactionUIs = false, }) => {
|
|
|
160
167
|
// Solana only
|
|
161
168
|
const signTransaction = useCallback((walletConnector, transaction) => __awaiter(void 0, void 0, void 0, function* () {
|
|
162
169
|
// prevent the modal from opening itself again
|
|
163
|
-
if (!shouldConfirmAction())
|
|
170
|
+
if (!shouldConfirmAction({ walletConnector }))
|
|
164
171
|
return transaction.submit();
|
|
165
172
|
return openSendTransaction((resolve, reject) => (jsx(TransactionConfirmationModal, { copykey: 'dyn_send_transaction.confirmation.title', title: t('dyn_send_transaction.confirmation.title'), transaction: transaction, onTransactionResponseSuccess: resolve, onReject: reject, walletConnector: walletConnector, hideModal: hideEmbeddedWalletTransactionUIs &&
|
|
166
173
|
!(walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.isGlobalTransaction) }))).then((signedTransaction) => __awaiter(void 0, void 0, void 0, function* () {
|