@dynamic-labs/utils 4.88.6 → 4.90.0
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 +34 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +5 -5
- package/src/errors/WaasAuthScopePendingError.cjs +27 -0
- package/src/errors/WaasAuthScopePendingError.d.ts +14 -0
- package/src/errors/WaasAuthScopePendingError.js +22 -0
- package/src/errors/index.d.ts +1 -0
- package/src/index.cjs +3 -0
- package/src/index.js +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,38 @@
|
|
|
1
1
|
|
|
2
|
+
## [4.90.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.89.0...v4.90.0) (2026-06-19)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* add microsoft to social providers list ([#11631](https://github.com/dynamic-labs/dynamic-auth/issues/11631)) ([761b82d](https://github.com/dynamic-labs/dynamic-auth/commit/761b82dea2e2e86ec1c8b3fc8bab32ed72492132))
|
|
8
|
+
* **sdk-react-core:** preconnect to waas iframe origin at auth-flow start ([#11549](https://github.com/dynamic-labs/dynamic-auth/issues/11549)) ([1bb810c](https://github.com/dynamic-labs/dynamic-auth/commit/1bb810c4eb3d592b43f62c1eaf5450a0e42981c9)), closes [dynamic-labs/dynamic-wallet-sdk#1314](https://github.com/dynamic-labs/dynamic-wallet-sdk/issues/1314)
|
|
9
|
+
* **waas:** opt into SDK eager key-share recovery, drop host RECOVER loop (DYNT-1125) ([#11620](https://github.com/dynamic-labs/dynamic-auth/issues/11620)) ([4bef955](https://github.com/dynamic-labs/dynamic-auth/commit/4bef955b902a7e484ba8bd6323582843bb692a17))
|
|
10
|
+
* **wallet-connector-core:** add isMidnightConnector util + Midnight interface hooks ([#11005](https://github.com/dynamic-labs/dynamic-auth/issues/11005)) ([55117a8](https://github.com/dynamic-labs/dynamic-auth/commit/55117a8cf59640d00b358f68be8df6b29231fab5))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* **sdk-react-core:** gate smart-wallet init on user:basic scope ([#11624](https://github.com/dynamic-labs/dynamic-auth/issues/11624)) ([9f891a4](https://github.com/dynamic-labs/dynamic-auth/commit/9f891a46a191532acdd4a91b74c4586089ef0e1a)), closes [#11623](https://github.com/dynamic-labs/dynamic-auth/issues/11623) [#11623](https://github.com/dynamic-labs/dynamic-auth/issues/11623) [#11626](https://github.com/dynamic-labs/dynamic-auth/issues/11626)
|
|
16
|
+
* **sdk-react-core:** search wallet list by metadata name in addition to connector name ([#11638](https://github.com/dynamic-labs/dynamic-auth/issues/11638)) ([a647614](https://github.com/dynamic-labs/dynamic-auth/commit/a647614bcba769e09ef59bf1ddb925ce9835842e))
|
|
17
|
+
* **waas:** rebuild WaaS client on session change after step-up reauth ([#11581](https://github.com/dynamic-labs/dynamic-auth/issues/11581)) ([2b7093e](https://github.com/dynamic-labs/dynamic-auth/commit/2b7093e27f57f1dfcdd303361d436d9bf33e28a9))
|
|
18
|
+
* **waas:** refuse to build WaaS client while auth scope is pending (createRooms 401 chokepoint) ([#11623](https://github.com/dynamic-labs/dynamic-auth/issues/11623)) ([08755f0](https://github.com/dynamic-labs/dynamic-auth/commit/08755f0bda2b74c7bcdff3d0ac9c228a5205ad6e)), closes [#11624](https://github.com/dynamic-labs/dynamic-auth/issues/11624)
|
|
19
|
+
* **wallet-connect:** skip address comparison on reconnect when expectedAddress is empty ([#11639](https://github.com/dynamic-labs/dynamic-auth/issues/11639)) ([8d665cf](https://github.com/dynamic-labs/dynamic-auth/commit/8d665cf3bf1fb0e498d71f14cc8a53d91593c23d))
|
|
20
|
+
|
|
21
|
+
## [4.89.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.88.6...v4.89.0) (2026-06-16)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
### Features
|
|
25
|
+
|
|
26
|
+
* **moonpay:** add useMoonPayOnramp hook ([#11405](https://github.com/dynamic-labs/dynamic-auth/issues/11405)) ([48cb62f](https://github.com/dynamic-labs/dynamic-auth/commit/48cb62fefecb511fcba9359ee6f6096dfef0b125))
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Bug Fixes
|
|
30
|
+
|
|
31
|
+
* get wallet metadata from wallet-book when its present ([#11566](https://github.com/dynamic-labs/dynamic-auth/issues/11566)) ([a1a8ad5](https://github.com/dynamic-labs/dynamic-auth/commit/a1a8ad53c063157b189aea138fa338fcc67dc4dd))
|
|
32
|
+
* **waas:** instant logout — clear key share host-side, background iframe cleanup ([#11583](https://github.com/dynamic-labs/dynamic-auth/issues/11583)) ([0ab3378](https://github.com/dynamic-labs/dynamic-auth/commit/0ab3378efdbbe233069b17fad62b0c126397bc3a))
|
|
33
|
+
* **wagmi-connector:** await disconnect before connect to defuse SyncDynamicWagmi race DYNT-549 ([#11579](https://github.com/dynamic-labs/dynamic-auth/issues/11579)) ([6ac7c0e](https://github.com/dynamic-labs/dynamic-auth/commit/6ac7c0e02ed863342047bc5a1e60be3a66b8a425)), closes [#11131](https://github.com/dynamic-labs/dynamic-auth/issues/11131) [#11513](https://github.com/dynamic-labs/dynamic-auth/issues/11513) [#11516](https://github.com/dynamic-labs/dynamic-auth/issues/11516) [#11496](https://github.com/dynamic-labs/dynamic-auth/issues/11496) [#11513](https://github.com/dynamic-labs/dynamic-auth/issues/11513) [/github.com/dynamic-labs/dynamic-auth/blob/main/packages/wagmi-connector/src/lib/hooks/useConnectorId/useConnectorId.ts#L19-L26](https://github.com/dynamic-labs//github.com/dynamic-labs/dynamic-auth/blob/main/packages/wagmi-connector/src/lib/hooks/useConnectorId/useConnectorId.ts/issues/L19-L26) [#11131](https://github.com/dynamic-labs/dynamic-auth/issues/11131) [#11516](https://github.com/dynamic-labs/dynamic-auth/issues/11516) [#11513](https://github.com/dynamic-labs/dynamic-auth/issues/11513)
|
|
34
|
+
* **react-native:** resolve intermittent "Wallet with id <uuid> not found" after login ([#11575](https://github.com/dynamic-labs/dynamic-auth/issues/11575)) ([9d7a246](https://github.com/dynamic-labs/dynamic-auth/commit/9d7a246167927b9339dc33c10977c6d12783ab88))
|
|
35
|
+
|
|
2
36
|
### [4.88.6](https://github.com/dynamic-labs/dynamic-auth/compare/v4.88.5...v4.88.6) (2026-06-13)
|
|
3
37
|
|
|
4
38
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/utils",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.90.0",
|
|
4
4
|
"description": "A React SDK for implementing wallet web3 authentication and authorization to your website.",
|
|
5
5
|
"author": "Dynamic Labs, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,11 +18,11 @@
|
|
|
18
18
|
},
|
|
19
19
|
"homepage": "https://www.dynamic.xyz/",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
21
|
+
"@dynamic-labs/sdk-api-core": "0.0.1046",
|
|
22
22
|
"tldts": "6.0.16",
|
|
23
|
-
"@dynamic-labs/assert-package-version": "4.
|
|
24
|
-
"@dynamic-labs/logger": "4.
|
|
25
|
-
"@dynamic-labs/types": "4.
|
|
23
|
+
"@dynamic-labs/assert-package-version": "4.90.0",
|
|
24
|
+
"@dynamic-labs/logger": "4.90.0",
|
|
25
|
+
"@dynamic-labs/types": "4.90.0",
|
|
26
26
|
"buffer": "6.0.3",
|
|
27
27
|
"eventemitter3": "5.0.1"
|
|
28
28
|
},
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
7
|
+
|
|
8
|
+
// Stable string code so consumers in other packages can recognize this error
|
|
9
|
+
// without importing the class (e.g. to swallow it in a fire-and-forget catch).
|
|
10
|
+
const WAAS_AUTH_SCOPE_PENDING_CODE = 'WAAS_AUTH_SCOPE_PENDING';
|
|
11
|
+
/**
|
|
12
|
+
* Thrown when a WaaS client is requested while the auth token still carries a
|
|
13
|
+
* pending-authentication scope (MFA / KYC / device registration). Building the
|
|
14
|
+
* client at that point lets the iframe's init-time room-cache pre-warm fire
|
|
15
|
+
* `createRooms` with the construction-time token (before any per-operation
|
|
16
|
+
* resync), which 401s and triggers a forced logout. Callers should treat this
|
|
17
|
+
* as "not ready yet" (retry once the token upgrades), not a hard failure to
|
|
18
|
+
* surface to the user.
|
|
19
|
+
*/
|
|
20
|
+
class WaasAuthScopePendingError extends DynamicError.DynamicError {
|
|
21
|
+
constructor() {
|
|
22
|
+
super('WaaS client not initialized: auth token scope is still pending (MFA/KYC/device registration). Wait for user:basic before creating or accessing the embedded wallet.', WAAS_AUTH_SCOPE_PENDING_CODE);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
exports.WAAS_AUTH_SCOPE_PENDING_CODE = WAAS_AUTH_SCOPE_PENDING_CODE;
|
|
27
|
+
exports.WaasAuthScopePendingError = WaasAuthScopePendingError;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DynamicError } from './DynamicError';
|
|
2
|
+
export declare const WAAS_AUTH_SCOPE_PENDING_CODE = "WAAS_AUTH_SCOPE_PENDING";
|
|
3
|
+
/**
|
|
4
|
+
* Thrown when a WaaS client is requested while the auth token still carries a
|
|
5
|
+
* pending-authentication scope (MFA / KYC / device registration). Building the
|
|
6
|
+
* client at that point lets the iframe's init-time room-cache pre-warm fire
|
|
7
|
+
* `createRooms` with the construction-time token (before any per-operation
|
|
8
|
+
* resync), which 401s and triggers a forced logout. Callers should treat this
|
|
9
|
+
* as "not ready yet" (retry once the token upgrades), not a hard failure to
|
|
10
|
+
* surface to the user.
|
|
11
|
+
*/
|
|
12
|
+
export declare class WaasAuthScopePendingError extends DynamicError {
|
|
13
|
+
constructor();
|
|
14
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { DynamicError } from './DynamicError.js';
|
|
3
|
+
|
|
4
|
+
// Stable string code so consumers in other packages can recognize this error
|
|
5
|
+
// without importing the class (e.g. to swallow it in a fire-and-forget catch).
|
|
6
|
+
const WAAS_AUTH_SCOPE_PENDING_CODE = 'WAAS_AUTH_SCOPE_PENDING';
|
|
7
|
+
/**
|
|
8
|
+
* Thrown when a WaaS client is requested while the auth token still carries a
|
|
9
|
+
* pending-authentication scope (MFA / KYC / device registration). Building the
|
|
10
|
+
* client at that point lets the iframe's init-time room-cache pre-warm fire
|
|
11
|
+
* `createRooms` with the construction-time token (before any per-operation
|
|
12
|
+
* resync), which 401s and triggers a forced logout. Callers should treat this
|
|
13
|
+
* as "not ready yet" (retry once the token upgrades), not a hard failure to
|
|
14
|
+
* surface to the user.
|
|
15
|
+
*/
|
|
16
|
+
class WaasAuthScopePendingError extends DynamicError {
|
|
17
|
+
constructor() {
|
|
18
|
+
super('WaaS client not initialized: auth token scope is still pending (MFA/KYC/device registration). Wait for user:basic before creating or accessing the embedded wallet.', WAAS_AUTH_SCOPE_PENDING_CODE);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export { WAAS_AUTH_SCOPE_PENDING_CODE, WaasAuthScopePendingError };
|
package/src/errors/index.d.ts
CHANGED
|
@@ -43,6 +43,7 @@ export * from './UsernameAlreadyExistsError';
|
|
|
43
43
|
export * from './UserRejectedRequestError';
|
|
44
44
|
export * from './UserRejectedTransactionError';
|
|
45
45
|
export * from './VerificationDataCollectionError';
|
|
46
|
+
export * from './WaasAuthScopePendingError';
|
|
46
47
|
export * from './WalletAddressMismatchError';
|
|
47
48
|
export * from './WalletNotDeployedError';
|
|
48
49
|
export * from './WalletUsedError';
|
package/src/index.cjs
CHANGED
|
@@ -54,6 +54,7 @@ var UsernameAlreadyExistsError = require('./errors/UsernameAlreadyExistsError.cj
|
|
|
54
54
|
var UserRejectedRequestError = require('./errors/UserRejectedRequestError.cjs');
|
|
55
55
|
var UserRejectedTransactionError = require('./errors/UserRejectedTransactionError.cjs');
|
|
56
56
|
var VerificationDataCollectionError = require('./errors/VerificationDataCollectionError.cjs');
|
|
57
|
+
var WaasAuthScopePendingError = require('./errors/WaasAuthScopePendingError.cjs');
|
|
57
58
|
var WalletAddressMismatchError = require('./errors/WalletAddressMismatchError.cjs');
|
|
58
59
|
var WalletNotDeployedError = require('./errors/WalletNotDeployedError.cjs');
|
|
59
60
|
var WalletUsedError = require('./errors/WalletUsedError.cjs');
|
|
@@ -176,6 +177,8 @@ exports.UsernameAlreadyExistsError = UsernameAlreadyExistsError.UsernameAlreadyE
|
|
|
176
177
|
exports.UserRejectedRequestError = UserRejectedRequestError.UserRejectedRequestError;
|
|
177
178
|
exports.UserRejectedTransactionError = UserRejectedTransactionError.UserRejectedTransactionError;
|
|
178
179
|
exports.VerificationDataCollectionError = VerificationDataCollectionError.VerificationDataCollectionError;
|
|
180
|
+
exports.WAAS_AUTH_SCOPE_PENDING_CODE = WaasAuthScopePendingError.WAAS_AUTH_SCOPE_PENDING_CODE;
|
|
181
|
+
exports.WaasAuthScopePendingError = WaasAuthScopePendingError.WaasAuthScopePendingError;
|
|
179
182
|
exports.WalletAddressMismatchError = WalletAddressMismatchError.WalletAddressMismatchError;
|
|
180
183
|
exports.WalletNotDeployedError = WalletNotDeployedError.WalletNotDeployedError;
|
|
181
184
|
exports.WalletUsedError = WalletUsedError.WalletUsedError;
|
package/src/index.js
CHANGED
|
@@ -50,6 +50,7 @@ export { UsernameAlreadyExistsError } from './errors/UsernameAlreadyExistsError.
|
|
|
50
50
|
export { UserRejectedRequestError } from './errors/UserRejectedRequestError.js';
|
|
51
51
|
export { UserRejectedTransactionError } from './errors/UserRejectedTransactionError.js';
|
|
52
52
|
export { VerificationDataCollectionError } from './errors/VerificationDataCollectionError.js';
|
|
53
|
+
export { WAAS_AUTH_SCOPE_PENDING_CODE, WaasAuthScopePendingError } from './errors/WaasAuthScopePendingError.js';
|
|
53
54
|
export { WalletAddressMismatchError } from './errors/WalletAddressMismatchError.js';
|
|
54
55
|
export { WalletNotDeployedError } from './errors/WalletNotDeployedError.js';
|
|
55
56
|
export { WalletUsedError } from './errors/WalletUsedError.js';
|