@dynamic-labs/utils 4.0.0-alpha.0 → 4.0.0-alpha.10
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 +132 -0
- package/package.cjs +8 -0
- package/package.js +4 -0
- package/package.json +7 -15
- package/src/cloneObjectWithOverrides/cloneObjectWithOverrides.cjs +10 -1
- package/src/cloneObjectWithOverrides/cloneObjectWithOverrides.js +10 -1
- package/src/eip6963/eip6963Provider.d.ts +1 -3
- package/src/errors/InvalidEmbeddedWalletSessionKeyError.cjs +14 -0
- package/src/errors/InvalidEmbeddedWalletSessionKeyError.d.ts +4 -0
- package/src/errors/InvalidEmbeddedWalletSessionKeyError.js +10 -0
- package/src/errors/RequestChannelNotHandledError.cjs +11 -0
- package/src/errors/RequestChannelNotHandledError.d.ts +3 -0
- package/src/errors/RequestChannelNotHandledError.js +7 -0
- package/src/errors/index.d.ts +2 -0
- package/src/index.cjs +9 -3
- package/src/index.d.ts +1 -1
- package/src/index.js +7 -1
- package/src/promiseWithTimeout/index.d.ts +1 -0
- package/src/promiseWithTimeout/promiseWithTimeout.cjs +19 -0
- package/src/promiseWithTimeout/promiseWithTimeout.d.ts +5 -0
- package/src/promiseWithTimeout/promiseWithTimeout.js +15 -0
- package/src/services/Oauth2Service/Oauth2Service.cjs +5 -6
- package/src/services/Oauth2Service/Oauth2Service.d.ts +1 -1
- package/src/services/Oauth2Service/Oauth2Service.js +5 -6
- package/src/services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.cjs +4 -1
- package/src/services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.js +4 -1
- package/src/nativeMobileOauthStateParam.cjs +0 -13
- package/src/nativeMobileOauthStateParam.d.ts +0 -14
- package/src/nativeMobileOauthStateParam.js +0 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,136 @@
|
|
|
1
1
|
|
|
2
|
+
## [4.0.0-alpha.10](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.9...v4.0.0-alpha.10) (2024-10-15)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* epicgames key name without dash ([#7119](https://github.com/dynamic-labs/dynamic-auth/issues/7119)) ([7388d6c](https://github.com/dynamic-labs/dynamic-auth/commit/7388d6cf98f6ee92e12003549dfd1ad81951119e))
|
|
8
|
+
|
|
9
|
+
## [4.0.0-alpha.9](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.8...v4.0.0-alpha.9) (2024-10-11)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
* add support for fordefi wallet ([#7109](https://github.com/dynamic-labs/dynamic-auth/issues/7109)) ([1adb6b1](https://github.com/dynamic-labs/dynamic-auth/commit/1adb6b15b7f8e9156207ac7addf4368d27c1e371))
|
|
15
|
+
* support ability to define additional oauth scopes ([#7105](https://github.com/dynamic-labs/dynamic-auth/issues/7105)) ([b303203](https://github.com/dynamic-labs/dynamic-auth/commit/b303203e8041c0cbf5f8968df0d3cde04ed1b22a))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* add eip6963 for exodus evm ([#7094](https://github.com/dynamic-labs/dynamic-auth/issues/7094)) ([c1ec5ef](https://github.com/dynamic-labs/dynamic-auth/commit/c1ec5ef4b6a531c563be4b690aa5f2bd4e7e6a16))
|
|
21
|
+
|
|
22
|
+
## [4.0.0-alpha.8](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.7...v4.0.0-alpha.8) (2024-10-07)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* add support for dynamic event callbacks in rn ([#6997](https://github.com/dynamic-labs/dynamic-auth/issues/6997)) ([f9ac402](https://github.com/dynamic-labs/dynamic-auth/commit/f9ac40259d9168dfe69dafd5fd44478ba0e69505))
|
|
28
|
+
* add support for dynamic handlers in rn ([#7032](https://github.com/dynamic-labs/dynamic-auth/issues/7032)) ([f61f926](https://github.com/dynamic-labs/dynamic-auth/commit/f61f92666b6df8483dde2c47304fd4fb02690f7d))
|
|
29
|
+
* Support for multi-chain AA ([#6829](https://github.com/dynamic-labs/dynamic-auth/issues/6829)) ([b4a0c0a](https://github.com/dynamic-labs/dynamic-auth/commit/b4a0c0a4de48231a3748826600407c25abf6894d))
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
### Bug Fixes
|
|
33
|
+
|
|
34
|
+
* persist isHardwareWalletEnabled on wallet connector ([#7025](https://github.com/dynamic-labs/dynamic-auth/issues/7025)) ([#7034](https://github.com/dynamic-labs/dynamic-auth/issues/7034)) ([4bfc301](https://github.com/dynamic-labs/dynamic-auth/commit/4bfc301d891f10db8c0bd31e5164c489a882c5c3))
|
|
35
|
+
|
|
36
|
+
## [4.0.0-alpha.7](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.6...v4.0.0-alpha.7) (2024-10-03)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
### Features
|
|
40
|
+
|
|
41
|
+
* add account abstraction module to client ([#7002](https://github.com/dynamic-labs/dynamic-auth/issues/7002)) ([2f06975](https://github.com/dynamic-labs/dynamic-auth/commit/2f06975083dfa9d40537ef4a99b414eda1a68e01))
|
|
42
|
+
* add support for wallet events in rn ([#7061](https://github.com/dynamic-labs/dynamic-auth/issues/7061)) ([c7c4ce5](https://github.com/dynamic-labs/dynamic-auth/commit/c7c4ce51f27a2b84a1710c120d7006a00920c1e7))
|
|
43
|
+
* add zerodev extension for react native ([#7028](https://github.com/dynamic-labs/dynamic-auth/issues/7028)) ([858b8a8](https://github.com/dynamic-labs/dynamic-auth/commit/858b8a851cfa0cddc8e4559541b03992cf5ccdfc))
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
### Bug Fixes
|
|
47
|
+
|
|
48
|
+
* do not modify sol tx blockhash as tx could have been signed already ([#7050](https://github.com/dynamic-labs/dynamic-auth/issues/7050)) ([770edb4](https://github.com/dynamic-labs/dynamic-auth/commit/770edb49ddc231b75fb45a9f6d563f22e5185df2))
|
|
49
|
+
* ensure the correct auth mode is used on social redirect ([#7047](https://github.com/dynamic-labs/dynamic-auth/issues/7047)) ([7c27172](https://github.com/dynamic-labs/dynamic-auth/commit/7c271721d5ddf19e3fd1bf56ddb1d49e0e2bca07))
|
|
50
|
+
* prevent react native message timeout before sdk is ready ([#7051](https://github.com/dynamic-labs/dynamic-auth/issues/7051)) ([6421237](https://github.com/dynamic-labs/dynamic-auth/commit/6421237d677d788b824d53432c1a75b9d571aa78))
|
|
51
|
+
* update version error text ([#7054](https://github.com/dynamic-labs/dynamic-auth/issues/7054)) ([713dacb](https://github.com/dynamic-labs/dynamic-auth/commit/713dacb79c2513323c2e6840d7418716011c2dcd))
|
|
52
|
+
* use project settings sdk network for send flow ([#7011](https://github.com/dynamic-labs/dynamic-auth/issues/7011)) ([983e796](https://github.com/dynamic-labs/dynamic-auth/commit/983e79632762f71ee0502c92057a32ea985ae19c))
|
|
53
|
+
|
|
54
|
+
## [4.0.0-alpha.6](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.5...v4.0.0-alpha.6) (2024-10-01)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
### ⚠ BREAKING CHANGES
|
|
58
|
+
|
|
59
|
+
* remove support to magic ([#7033](https://github.com/dynamic-labs/dynamic-auth/issues/7033)) ([0fdc41f](https://github.com/dynamic-labs/dynamic-auth/commit/0fdc41f05f87b32f56b73db068f984f18bdf69a0))
|
|
60
|
+
|
|
61
|
+
### Features
|
|
62
|
+
|
|
63
|
+
* global connectivity disconnect ([#7008](https://github.com/dynamic-labs/dynamic-auth/issues/7008)) ([80d705b](https://github.com/dynamic-labs/dynamic-auth/commit/80d705ba252aa3b01cbf4861507fed00e460215f))
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
### Bug Fixes
|
|
67
|
+
|
|
68
|
+
* add popper context to send balance ([#7016](https://github.com/dynamic-labs/dynamic-auth/issues/7016)) ([73aa6f1](https://github.com/dynamic-labs/dynamic-auth/commit/73aa6f122afe0db660ebb654f3e018ae7bf445c5))
|
|
69
|
+
* add retry to useConnectWithOtp ([#7012](https://github.com/dynamic-labs/dynamic-auth/issues/7012)) ([d551d72](https://github.com/dynamic-labs/dynamic-auth/commit/d551d72a463f8a03964858b30ec174d41985a7b1))
|
|
70
|
+
* don't re-fetch wallet address on network change ([#7019](https://github.com/dynamic-labs/dynamic-auth/issues/7019)) ([4e7900c](https://github.com/dynamic-labs/dynamic-auth/commit/4e7900cc24b3abda736bc81466eda7512cf7fc61))
|
|
71
|
+
* fix sign message with solana wallet standard provider ([#7014](https://github.com/dynamic-labs/dynamic-auth/issues/7014)) ([ffaf972](https://github.com/dynamic-labs/dynamic-auth/commit/ffaf972e8b190b0b8cd0103e0ef67bfdee6c8f7c))
|
|
72
|
+
* update wallet reference when user switches wallet in connect-only ([#7030](https://github.com/dynamic-labs/dynamic-auth/issues/7030)) ([75d9aa6](https://github.com/dynamic-labs/dynamic-auth/commit/75d9aa66f63fc5536caeff12d8b860c0ba86106f))
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
## [4.0.0-alpha.5](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.4...v4.0.0-alpha.5) (2024-09-25)
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
### Features
|
|
79
|
+
|
|
80
|
+
* add isInstalledOnBrowser prop to wallet options in useWalletOptions ([#6976](https://github.com/dynamic-labs/DynamicAuth/issues/6976)) ([0fda409](https://github.com/dynamic-labs/DynamicAuth/commit/0fda409b293c83d73869d791c3d38ac421dcdecb))
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
### Bug Fixes
|
|
84
|
+
|
|
85
|
+
* **client:** return user profile when using sign in with external jwt ([#7004](https://github.com/dynamic-labs/DynamicAuth/issues/7004)) ([927cfb6](https://github.com/dynamic-labs/DynamicAuth/commit/927cfb69f3dd7f8b00e3f0f975277a84c99c830b))
|
|
86
|
+
* react-native-extension to include esm ([#6965](https://github.com/dynamic-labs/DynamicAuth/issues/6965)) ([336825b](https://github.com/dynamic-labs/DynamicAuth/commit/336825b50142002bbc67c6f8850bd63030bf384b))
|
|
87
|
+
|
|
88
|
+
## [4.0.0-alpha.4](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.3...v4.0.0-alpha.4) (2024-09-23)
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
### Bug Fixes
|
|
92
|
+
|
|
93
|
+
* issue where builtin stream module was a dependency ([#6968](https://github.com/dynamic-labs/DynamicAuth/issues/6968)) ([0661129](https://github.com/dynamic-labs/DynamicAuth/commit/0661129920ba70ebbcd4d17ee5aa988c51d1b477))
|
|
94
|
+
* update in memory secure storage ([#6955](https://github.com/dynamic-labs/DynamicAuth/issues/6955)) ([697fc20](https://github.com/dynamic-labs/DynamicAuth/commit/697fc20740b243fa31ecf06e8b2ed9d09932a544))
|
|
95
|
+
|
|
96
|
+
## [4.0.0-alpha.3](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.2...v4.0.0-alpha.3) (2024-09-20)
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
### Features
|
|
100
|
+
|
|
101
|
+
* developers provide global connectivity appkit project id ([#6941](https://github.com/dynamic-labs/DynamicAuth/issues/6941)) ([83760ea](https://github.com/dynamic-labs/DynamicAuth/commit/83760ea57591685b12caee945f173f6a7f9312d1))
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
### Bug Fixes
|
|
105
|
+
|
|
106
|
+
* don't try to set up event listeners if wallet provider doesn't support it ([#6943](https://github.com/dynamic-labs/DynamicAuth/issues/6943)) ([439f1bb](https://github.com/dynamic-labs/DynamicAuth/commit/439f1bbb3c765959756cfc6eeb8429e4018e0379))
|
|
107
|
+
* dont verify all signatures for solana embedded multisig tx ([#6953](https://github.com/dynamic-labs/DynamicAuth/issues/6953)) ([7a7973e](https://github.com/dynamic-labs/DynamicAuth/commit/7a7973e05f0960421b348a55c6a00c9fd873b0b7))
|
|
108
|
+
|
|
109
|
+
## [4.0.0-alpha.2](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.1...v4.0.0-alpha.2) (2024-09-18)
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
### Features
|
|
113
|
+
|
|
114
|
+
* add iconVariant prop to DynamicBridgeWidget ([#6915](https://github.com/dynamic-labs/DynamicAuth/issues/6915)) ([8aa0f3d](https://github.com/dynamic-labs/DynamicAuth/commit/8aa0f3d8d8c41c7b5c4796106f611f208010cb6d))
|
|
115
|
+
* allow to create extra embedded wallets in react-native ([#6923](https://github.com/dynamic-labs/DynamicAuth/issues/6923)) ([ba22f7b](https://github.com/dynamic-labs/DynamicAuth/commit/ba22f7bcf41a444a4df0aff9b6aec257457e9402))
|
|
116
|
+
* **client:** add hide method for auth and userProfile ui modules ([#6928](https://github.com/dynamic-labs/DynamicAuth/issues/6928)) ([a11a4a5](https://github.com/dynamic-labs/DynamicAuth/commit/a11a4a5d6e25ce2a916ebd52f0b341020dc1a7e5))
|
|
117
|
+
|
|
118
|
+
## [4.0.0-alpha.1](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.0...v4.0.0-alpha.1) (2024-09-17)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
### Features
|
|
122
|
+
|
|
123
|
+
* blockaid website scanning for global connectivity ([#6874](https://github.com/dynamic-labs/DynamicAuth/issues/6874)) ([f8cbabd](https://github.com/dynamic-labs/DynamicAuth/commit/f8cbabd92fd4b5b096f47ff8e24c572ad7720dd8))
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
### Bug Fixes
|
|
127
|
+
|
|
128
|
+
* deeplinking on ethereum and bitcoin sats connector ([#6917](https://github.com/dynamic-labs/DynamicAuth/issues/6917)) ([3896c3a](https://github.com/dynamic-labs/DynamicAuth/commit/3896c3a97819459da74dc5b4771796d7991c1f07))
|
|
129
|
+
* emit walletAdded event when createEmbeddedWalletAccount called ([#6922](https://github.com/dynamic-labs/DynamicAuth/issues/6922)) ([2a8bdd6](https://github.com/dynamic-labs/DynamicAuth/commit/2a8bdd68c50efd946c6f9b398dfae2b3585db34f))
|
|
130
|
+
* interface for sendBitcoin on unisat ([37a1bc2](https://github.com/dynamic-labs/DynamicAuth/commit/37a1bc216f43eef817c40e23b9161327f9d29c59))
|
|
131
|
+
* remove ballet crypto and duplicate keplr entry ([#6906](https://github.com/dynamic-labs/DynamicAuth/issues/6906)) ([14aeeea](https://github.com/dynamic-labs/DynamicAuth/commit/14aeeeaa8d906344f4aeddf9e73527df346b9ea0))
|
|
132
|
+
* solana and cosmos signers not working properly ([#6898](https://github.com/dynamic-labs/DynamicAuth/issues/6898)) ([6f07981](https://github.com/dynamic-labs/DynamicAuth/commit/6f079811c0d7e45b97d2dae72f4141268ab4fe0c))
|
|
133
|
+
|
|
2
134
|
## [4.0.0-alpha.0](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0...v4.0.0-alpha.0) (2024-09-13)
|
|
3
135
|
|
|
4
136
|
|
package/package.cjs
ADDED
package/package.js
ADDED
package/package.json
CHANGED
|
@@ -1,16 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/utils",
|
|
3
|
-
"version": "4.0.0-alpha.
|
|
4
|
-
"repository": {
|
|
5
|
-
"type": "git",
|
|
6
|
-
"url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
|
|
7
|
-
"directory": "packages/utils"
|
|
8
|
-
},
|
|
3
|
+
"version": "4.0.0-alpha.10",
|
|
9
4
|
"description": "A React SDK for implementing wallet web3 authentication and authorization to your website.",
|
|
10
|
-
"bugs": {
|
|
11
|
-
"url": "https://github.com/dynamic-labs/DynamicAuth/issues"
|
|
12
|
-
},
|
|
13
|
-
"homepage": "https://github.com/dynamic-labs/DynamicAuth#readme",
|
|
14
5
|
"author": "Dynamic Labs, Inc.",
|
|
15
6
|
"license": "MIT",
|
|
16
7
|
"main": "./src/index.cjs",
|
|
@@ -25,14 +16,15 @@
|
|
|
25
16
|
},
|
|
26
17
|
"./package.json": "./package.json"
|
|
27
18
|
},
|
|
19
|
+
"homepage": "https://www.dynamic.xyz/",
|
|
28
20
|
"dependencies": {
|
|
29
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
21
|
+
"@dynamic-labs/sdk-api-core": "0.0.545",
|
|
30
22
|
"tldts": "6.0.16",
|
|
31
|
-
"@dynamic-labs/
|
|
32
|
-
"@dynamic-labs/
|
|
23
|
+
"@dynamic-labs/assert-package-version": "4.0.0-alpha.10",
|
|
24
|
+
"@dynamic-labs/logger": "4.0.0-alpha.10",
|
|
25
|
+
"@dynamic-labs/types": "4.0.0-alpha.10",
|
|
33
26
|
"buffer": "6.0.3",
|
|
34
|
-
"eventemitter3": "5.0.1"
|
|
35
|
-
"stream": "0.0.2"
|
|
27
|
+
"eventemitter3": "5.0.1"
|
|
36
28
|
},
|
|
37
29
|
"peerDependencies": {}
|
|
38
30
|
}
|
|
@@ -18,7 +18,7 @@ const cloneObjectWithOverrides = (original, overrides = {}) => {
|
|
|
18
18
|
// Get the property descriptors from the original object
|
|
19
19
|
const descriptors = Object.getOwnPropertyDescriptors(original);
|
|
20
20
|
// Create a new object using the same prototype as the original
|
|
21
|
-
const clone = Object.create(Object.getPrototypeOf(original)
|
|
21
|
+
const clone = Object.create(Object.getPrototypeOf(original));
|
|
22
22
|
// // Loop through the overrides to redefine any read-only methods
|
|
23
23
|
for (const [key, value] of Object.entries(overrides)) {
|
|
24
24
|
// Redefine the method even if it was read-only on the original object
|
|
@@ -31,6 +31,15 @@ const cloneObjectWithOverrides = (original, overrides = {}) => {
|
|
|
31
31
|
writable: true, // Preserve enumerability
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
+
const overridesKeys = Object.keys(overrides);
|
|
35
|
+
// add properties from original object if they're not in overrides
|
|
36
|
+
// if we add all of them, read-only props/methods might not get properly overwritten
|
|
37
|
+
for (const [key, descriptor] of Object.entries(descriptors)) {
|
|
38
|
+
// if has not been overwritten, add original
|
|
39
|
+
if (!overridesKeys.includes(key)) {
|
|
40
|
+
Object.defineProperty(clone, key, descriptor);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
34
43
|
return clone;
|
|
35
44
|
};
|
|
36
45
|
|
|
@@ -14,7 +14,7 @@ const cloneObjectWithOverrides = (original, overrides = {}) => {
|
|
|
14
14
|
// Get the property descriptors from the original object
|
|
15
15
|
const descriptors = Object.getOwnPropertyDescriptors(original);
|
|
16
16
|
// Create a new object using the same prototype as the original
|
|
17
|
-
const clone = Object.create(Object.getPrototypeOf(original)
|
|
17
|
+
const clone = Object.create(Object.getPrototypeOf(original));
|
|
18
18
|
// // Loop through the overrides to redefine any read-only methods
|
|
19
19
|
for (const [key, value] of Object.entries(overrides)) {
|
|
20
20
|
// Redefine the method even if it was read-only on the original object
|
|
@@ -27,6 +27,15 @@ const cloneObjectWithOverrides = (original, overrides = {}) => {
|
|
|
27
27
|
writable: true, // Preserve enumerability
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
+
const overridesKeys = Object.keys(overrides);
|
|
31
|
+
// add properties from original object if they're not in overrides
|
|
32
|
+
// if we add all of them, read-only props/methods might not get properly overwritten
|
|
33
|
+
for (const [key, descriptor] of Object.entries(descriptors)) {
|
|
34
|
+
// if has not been overwritten, add original
|
|
35
|
+
if (!overridesKeys.includes(key)) {
|
|
36
|
+
Object.defineProperty(clone, key, descriptor);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
30
39
|
return clone;
|
|
31
40
|
};
|
|
32
41
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
7
|
+
|
|
8
|
+
class InvalidEmbeddedWalletSessionKeyError extends DynamicError.DynamicError {
|
|
9
|
+
constructor(error) {
|
|
10
|
+
super(error !== null && error !== void 0 ? error : 'Invalid embedded wallet session key.');
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
exports.InvalidEmbeddedWalletSessionKeyError = InvalidEmbeddedWalletSessionKeyError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { DynamicError } from './DynamicError.js';
|
|
3
|
+
|
|
4
|
+
class InvalidEmbeddedWalletSessionKeyError extends DynamicError {
|
|
5
|
+
constructor(error) {
|
|
6
|
+
super(error !== null && error !== void 0 ? error : 'Invalid embedded wallet session key.');
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { InvalidEmbeddedWalletSessionKeyError };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
7
|
+
|
|
8
|
+
class RequestChannelNotHandledError extends DynamicError.DynamicError {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports.RequestChannelNotHandledError = RequestChannelNotHandledError;
|
package/src/errors/index.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export * from './InvalidPhoneNumberError';
|
|
|
27
27
|
export * from './MergeAccountsConfirmationError';
|
|
28
28
|
export * from './CustomFieldNotUniqueError';
|
|
29
29
|
export * from './CookieInvalidError';
|
|
30
|
+
export * from './RequestChannelNotHandledError';
|
|
30
31
|
export * from './AccessBlockedError';
|
|
31
32
|
export * from './EmbeddedWalletException';
|
|
32
33
|
export * from './MfaInvalidOtpError';
|
|
@@ -34,3 +35,4 @@ export * from './MfaRateLimitedError';
|
|
|
34
35
|
export * from './ExternalAuthError';
|
|
35
36
|
export * from './WalletAddressMismatchError';
|
|
36
37
|
export * from './UserRejectedRequestError';
|
|
38
|
+
export * from './InvalidEmbeddedWalletSessionKeyError';
|
package/src/index.cjs
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
|
+
var assertPackageVersion = require('@dynamic-labs/assert-package-version');
|
|
7
|
+
var _package = require('../package.cjs');
|
|
6
8
|
var parseChainId = require('./parseChainId.cjs');
|
|
7
9
|
var parseEvmNetworks = require('./parseEvmNetworks.cjs');
|
|
8
10
|
var AccountExistsError = require('./errors/AccountExistsError.cjs');
|
|
@@ -33,6 +35,7 @@ var InvalidPhoneNumberError = require('./errors/InvalidPhoneNumberError.cjs');
|
|
|
33
35
|
var MergeAccountsConfirmationError = require('./errors/MergeAccountsConfirmationError.cjs');
|
|
34
36
|
var CustomFieldNotUniqueError = require('./errors/CustomFieldNotUniqueError.cjs');
|
|
35
37
|
var CookieInvalidError = require('./errors/CookieInvalidError.cjs');
|
|
38
|
+
var RequestChannelNotHandledError = require('./errors/RequestChannelNotHandledError.cjs');
|
|
36
39
|
var AccessBlockedError = require('./errors/AccessBlockedError.cjs');
|
|
37
40
|
var EmbeddedWalletException = require('./errors/EmbeddedWalletException.cjs');
|
|
38
41
|
var MfaInvalidOtpError = require('./errors/MfaInvalidOtpError.cjs');
|
|
@@ -40,6 +43,7 @@ var MfaRateLimitedError = require('./errors/MfaRateLimitedError.cjs');
|
|
|
40
43
|
var ExternalAuthError = require('./errors/ExternalAuthError.cjs');
|
|
41
44
|
var WalletAddressMismatchError = require('./errors/WalletAddressMismatchError.cjs');
|
|
42
45
|
var UserRejectedRequestError = require('./errors/UserRejectedRequestError.cjs');
|
|
46
|
+
var InvalidEmbeddedWalletSessionKeyError = require('./errors/InvalidEmbeddedWalletSessionKeyError.cjs');
|
|
43
47
|
var CancellablePromise = require('./CancellablePromise/CancellablePromise.cjs');
|
|
44
48
|
var isFunction = require('./isFunction/isFunction.cjs');
|
|
45
49
|
var isMobile = require('./isMobile.cjs');
|
|
@@ -59,7 +63,6 @@ var formatNumberText = require('./formatNumberText/formatNumberText.cjs');
|
|
|
59
63
|
var ceil = require('./ceil/ceil.cjs');
|
|
60
64
|
var trimEnd = require('./trimEnd/trimEnd.cjs');
|
|
61
65
|
var isLedgerAddressViaVerifiedCredentials = require('./isLedgerAddressViaVerifiedCredentials.cjs');
|
|
62
|
-
var nativeMobileOauthStateParam = require('./nativeMobileOauthStateParam.cjs');
|
|
63
66
|
var eip6963Provider = require('./eip6963/eip6963Provider.cjs');
|
|
64
67
|
var runSafe = require('./runSafe/runSafe.cjs');
|
|
65
68
|
var PlatformService = require('./services/PlatformService/PlatformService.cjs');
|
|
@@ -74,8 +77,9 @@ var isHex = require('./isHex/isHex.cjs');
|
|
|
74
77
|
var StorageService = require('./services/StorageService/StorageService.cjs');
|
|
75
78
|
var createStorageService = require('./services/StorageService/createStorageService/createStorageService.cjs');
|
|
76
79
|
var cloneObjectWithOverrides = require('./cloneObjectWithOverrides/cloneObjectWithOverrides.cjs');
|
|
80
|
+
var promiseWithTimeout = require('./promiseWithTimeout/promiseWithTimeout.cjs');
|
|
77
81
|
|
|
78
|
-
|
|
82
|
+
assertPackageVersion.assertPackageVersion('@dynamic-labs/utils', _package.version);
|
|
79
83
|
|
|
80
84
|
exports.parseChainId = parseChainId.parseChainId;
|
|
81
85
|
exports.parseEvmNetworks = parseEvmNetworks.parseEvmNetworks;
|
|
@@ -107,6 +111,7 @@ exports.InvalidPhoneNumberError = InvalidPhoneNumberError.InvalidPhoneNumberErro
|
|
|
107
111
|
exports.MergeAccountsConfirmationError = MergeAccountsConfirmationError.MergeAccountsConfirmationError;
|
|
108
112
|
exports.CustomFieldNotUniqueError = CustomFieldNotUniqueError.CustomFieldNotUniqueError;
|
|
109
113
|
exports.CookieInvalidError = CookieInvalidError.CookieInvalidError;
|
|
114
|
+
exports.RequestChannelNotHandledError = RequestChannelNotHandledError.RequestChannelNotHandledError;
|
|
110
115
|
exports.AccessBlockedError = AccessBlockedError.AccessBlockedError;
|
|
111
116
|
exports.EmbeddedWalletException = EmbeddedWalletException.EmbeddedWalletException;
|
|
112
117
|
exports.MfaInvalidOtpError = MfaInvalidOtpError.MfaInvalidOtpError;
|
|
@@ -114,6 +119,7 @@ exports.MfaRateLimitedError = MfaRateLimitedError.MfaRateLimitedError;
|
|
|
114
119
|
exports.ExternalAuthError = ExternalAuthError.ExternalAuthError;
|
|
115
120
|
exports.WalletAddressMismatchError = WalletAddressMismatchError.WalletAddressMismatchError;
|
|
116
121
|
exports.UserRejectedRequestError = UserRejectedRequestError.UserRejectedRequestError;
|
|
122
|
+
exports.InvalidEmbeddedWalletSessionKeyError = InvalidEmbeddedWalletSessionKeyError.InvalidEmbeddedWalletSessionKeyError;
|
|
117
123
|
exports.CancellablePromise = CancellablePromise.CancellablePromise;
|
|
118
124
|
exports.isFunction = isFunction.isFunction;
|
|
119
125
|
exports.getAndroidVersion = isMobile.getAndroidVersion;
|
|
@@ -146,7 +152,6 @@ exports.formatNumberText = formatNumberText.formatNumberText;
|
|
|
146
152
|
exports.ceil = ceil.ceil;
|
|
147
153
|
exports.trimEnd = trimEnd.trimEnd;
|
|
148
154
|
exports.isLedgerAddressViaVerifiedCredentials = isLedgerAddressViaVerifiedCredentials.isLedgerAddressViaVerifiedCredentials;
|
|
149
|
-
exports.nativeMobileOauthStateParam = nativeMobileOauthStateParam.nativeMobileOauthStateParam;
|
|
150
155
|
exports.Eip6963Provider = eip6963Provider.Eip6963Provider;
|
|
151
156
|
exports.Eip6963ProviderSingleton = eip6963Provider.Eip6963ProviderSingleton;
|
|
152
157
|
exports.runSafe = runSafe.runSafe;
|
|
@@ -162,3 +167,4 @@ exports.isHex = isHex.isHex;
|
|
|
162
167
|
exports.StorageService = StorageService.StorageService;
|
|
163
168
|
exports.createStorageService = createStorageService.createStorageService;
|
|
164
169
|
exports.cloneObjectWithOverrides = cloneObjectWithOverrides.cloneObjectWithOverrides;
|
|
170
|
+
exports.promiseWithTimeout = promiseWithTimeout.promiseWithTimeout;
|
package/src/index.d.ts
CHANGED
|
@@ -20,7 +20,6 @@ export * from './formatNumberText';
|
|
|
20
20
|
export * from './ceil';
|
|
21
21
|
export * from './trimEnd';
|
|
22
22
|
export * from './isLedgerAddressViaVerifiedCredentials';
|
|
23
|
-
export * from './nativeMobileOauthStateParam';
|
|
24
23
|
export * from './eip6963';
|
|
25
24
|
export { runSafe } from './runSafe';
|
|
26
25
|
export { PlatformService, createBrowserPlatformService, type IPlatformService, } from './services/PlatformService';
|
|
@@ -32,3 +31,4 @@ export { hexToString } from './hexToString';
|
|
|
32
31
|
export { isHex } from './isHex';
|
|
33
32
|
export { type IStorageService, type StorageOptions, StorageService, createStorageService, } from './services/StorageService';
|
|
34
33
|
export { cloneObjectWithOverrides } from './cloneObjectWithOverrides';
|
|
34
|
+
export { promiseWithTimeout } from './promiseWithTimeout';
|
package/src/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
'use client'
|
|
2
|
+
import { assertPackageVersion } from '@dynamic-labs/assert-package-version';
|
|
3
|
+
import { version } from '../package.js';
|
|
2
4
|
export { parseChainId } from './parseChainId.js';
|
|
3
5
|
export { parseEvmNetworks } from './parseEvmNetworks.js';
|
|
4
6
|
export { AccountExistsError } from './errors/AccountExistsError.js';
|
|
@@ -29,6 +31,7 @@ export { InvalidPhoneNumberError } from './errors/InvalidPhoneNumberError.js';
|
|
|
29
31
|
export { MergeAccountsConfirmationError } from './errors/MergeAccountsConfirmationError.js';
|
|
30
32
|
export { CustomFieldNotUniqueError } from './errors/CustomFieldNotUniqueError.js';
|
|
31
33
|
export { CookieInvalidError } from './errors/CookieInvalidError.js';
|
|
34
|
+
export { RequestChannelNotHandledError } from './errors/RequestChannelNotHandledError.js';
|
|
32
35
|
export { AccessBlockedError } from './errors/AccessBlockedError.js';
|
|
33
36
|
export { EmbeddedWalletException } from './errors/EmbeddedWalletException.js';
|
|
34
37
|
export { MfaInvalidOtpError } from './errors/MfaInvalidOtpError.js';
|
|
@@ -36,6 +39,7 @@ export { MfaRateLimitedError } from './errors/MfaRateLimitedError.js';
|
|
|
36
39
|
export { ExternalAuthError } from './errors/ExternalAuthError.js';
|
|
37
40
|
export { WalletAddressMismatchError } from './errors/WalletAddressMismatchError.js';
|
|
38
41
|
export { UserRejectedRequestError } from './errors/UserRejectedRequestError.js';
|
|
42
|
+
export { InvalidEmbeddedWalletSessionKeyError } from './errors/InvalidEmbeddedWalletSessionKeyError.js';
|
|
39
43
|
export { CancellablePromise } from './CancellablePromise/CancellablePromise.js';
|
|
40
44
|
export { isFunction } from './isFunction/isFunction.js';
|
|
41
45
|
export { getAndroidVersion, isAndroid, isIOS, isIPad, isIPhone, isIPhone8OrEarlier, isLegacySafari, isMobile, isSafariBrowser, isSamsungBrowser, isWindows } from './isMobile.js';
|
|
@@ -55,7 +59,6 @@ export { formatNumberText } from './formatNumberText/formatNumberText.js';
|
|
|
55
59
|
export { ceil } from './ceil/ceil.js';
|
|
56
60
|
export { trimEnd } from './trimEnd/trimEnd.js';
|
|
57
61
|
export { isLedgerAddressViaVerifiedCredentials } from './isLedgerAddressViaVerifiedCredentials.js';
|
|
58
|
-
export { nativeMobileOauthStateParam } from './nativeMobileOauthStateParam.js';
|
|
59
62
|
export { Eip6963Provider, Eip6963ProviderSingleton } from './eip6963/eip6963Provider.js';
|
|
60
63
|
export { runSafe } from './runSafe/runSafe.js';
|
|
61
64
|
export { PlatformService } from './services/PlatformService/PlatformService.js';
|
|
@@ -70,3 +73,6 @@ export { isHex } from './isHex/isHex.js';
|
|
|
70
73
|
export { StorageService } from './services/StorageService/StorageService.js';
|
|
71
74
|
export { createStorageService } from './services/StorageService/createStorageService/createStorageService.js';
|
|
72
75
|
export { cloneObjectWithOverrides } from './cloneObjectWithOverrides/cloneObjectWithOverrides.js';
|
|
76
|
+
export { promiseWithTimeout } from './promiseWithTimeout/promiseWithTimeout.js';
|
|
77
|
+
|
|
78
|
+
assertPackageVersion('@dynamic-labs/utils', version);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { promiseWithTimeout } from './promiseWithTimeout';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
const promiseWithTimeout = (promise, ms, { timeoutMessage = 'Operation timed out' } = {}) => {
|
|
7
|
+
let timerId;
|
|
8
|
+
const timeoutPromise = new Promise((_, reject) => {
|
|
9
|
+
timerId = setTimeout(() => {
|
|
10
|
+
reject(new Error(timeoutMessage));
|
|
11
|
+
}, ms);
|
|
12
|
+
});
|
|
13
|
+
const wrappedPromise = promise.finally(() => {
|
|
14
|
+
clearTimeout(timerId);
|
|
15
|
+
});
|
|
16
|
+
return Promise.race([wrappedPromise, timeoutPromise]);
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
exports.promiseWithTimeout = promiseWithTimeout;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
const promiseWithTimeout = (promise, ms, { timeoutMessage = 'Operation timed out' } = {}) => {
|
|
3
|
+
let timerId;
|
|
4
|
+
const timeoutPromise = new Promise((_, reject) => {
|
|
5
|
+
timerId = setTimeout(() => {
|
|
6
|
+
reject(new Error(timeoutMessage));
|
|
7
|
+
}, ms);
|
|
8
|
+
});
|
|
9
|
+
const wrappedPromise = promise.finally(() => {
|
|
10
|
+
clearTimeout(timerId);
|
|
11
|
+
});
|
|
12
|
+
return Promise.race([wrappedPromise, timeoutPromise]);
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export { promiseWithTimeout };
|
|
@@ -28,11 +28,10 @@ class Oauth2Service {
|
|
|
28
28
|
_a = Oauth2Service;
|
|
29
29
|
_Oauth2Service_implementation = { value: void 0 };
|
|
30
30
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
-
Oauth2Service.isGetOauthCodeError = (error) => error === '
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
typeof error.message === 'string');
|
|
31
|
+
Oauth2Service.isGetOauthCodeError = (error) => typeof error === 'object' &&
|
|
32
|
+
'code' in error &&
|
|
33
|
+
Object.values(types.SocialOAuthErrorCode).includes(error.code) &&
|
|
34
|
+
'message' in error &&
|
|
35
|
+
typeof error.message === 'string';
|
|
37
36
|
|
|
38
37
|
exports.Oauth2Service = Oauth2Service;
|
|
@@ -25,7 +25,7 @@ export type GetOauthCodeProps = {
|
|
|
25
25
|
export type IOauth2Service = {
|
|
26
26
|
getOauthCode: (props: GetOauthCodeProps) => Promise<string>;
|
|
27
27
|
};
|
|
28
|
-
export type GetOauthCodeError =
|
|
28
|
+
export type GetOauthCodeError = {
|
|
29
29
|
code: SocialOAuthErrorCode;
|
|
30
30
|
message: string;
|
|
31
31
|
};
|
|
@@ -24,11 +24,10 @@ class Oauth2Service {
|
|
|
24
24
|
_a = Oauth2Service;
|
|
25
25
|
_Oauth2Service_implementation = { value: void 0 };
|
|
26
26
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
-
Oauth2Service.isGetOauthCodeError = (error) => error === '
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
typeof error.message === 'string');
|
|
27
|
+
Oauth2Service.isGetOauthCodeError = (error) => typeof error === 'object' &&
|
|
28
|
+
'code' in error &&
|
|
29
|
+
Object.values(SocialOAuthErrorCode).includes(error.code) &&
|
|
30
|
+
'message' in error &&
|
|
31
|
+
typeof error.message === 'string';
|
|
33
32
|
|
|
34
33
|
export { Oauth2Service };
|
|
@@ -167,7 +167,10 @@ const createWindowOauth2Service = () => ({
|
|
|
167
167
|
setIsProcessing(false);
|
|
168
168
|
// user didn't complete oauth
|
|
169
169
|
if (providersWaitingOauthMessage[provider])
|
|
170
|
-
typedReject(
|
|
170
|
+
typedReject({
|
|
171
|
+
code: types.SocialOAuthErrorCode.USER_CANCELLED,
|
|
172
|
+
message: 'User cancelled connection',
|
|
173
|
+
});
|
|
171
174
|
}, 2000);
|
|
172
175
|
});
|
|
173
176
|
}),
|
|
@@ -163,7 +163,10 @@ const createWindowOauth2Service = () => ({
|
|
|
163
163
|
setIsProcessing(false);
|
|
164
164
|
// user didn't complete oauth
|
|
165
165
|
if (providersWaitingOauthMessage[provider])
|
|
166
|
-
typedReject(
|
|
166
|
+
typedReject({
|
|
167
|
+
code: SocialOAuthErrorCode.USER_CANCELLED,
|
|
168
|
+
message: 'User cancelled connection',
|
|
169
|
+
});
|
|
167
170
|
}, 2000);
|
|
168
171
|
});
|
|
169
172
|
}),
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Represents the value that separates the random string from the
|
|
8
|
-
* mobile deeplink URL in the state param from the oauth messages
|
|
9
|
-
* emitted from native mobile apps.
|
|
10
|
-
*/
|
|
11
|
-
const nativeMobileOauthStateParam = '_client-redirect:';
|
|
12
|
-
|
|
13
|
-
exports.nativeMobileOauthStateParam = nativeMobileOauthStateParam;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Represents the value that separates the random string from the
|
|
3
|
-
* mobile deeplink URL in the state param from the oauth messages
|
|
4
|
-
* emitted from native mobile apps.
|
|
5
|
-
*/
|
|
6
|
-
export declare const nativeMobileOauthStateParam = "_client-redirect:";
|
|
7
|
-
/**
|
|
8
|
-
* Represents the format of the state variable exchanged in oauth2 messages
|
|
9
|
-
* by native mobile devices.
|
|
10
|
-
*
|
|
11
|
-
* It has a random state string followed byt the client redirect URL as configured
|
|
12
|
-
* in the Client.
|
|
13
|
-
*/
|
|
14
|
-
export type NativeMobileOauthState = `${string}${typeof nativeMobileOauthStateParam}${string}`;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
'use client'
|
|
2
|
-
/**
|
|
3
|
-
* Represents the value that separates the random string from the
|
|
4
|
-
* mobile deeplink URL in the state param from the oauth messages
|
|
5
|
-
* emitted from native mobile apps.
|
|
6
|
-
*/
|
|
7
|
-
const nativeMobileOauthStateParam = '_client-redirect:';
|
|
8
|
-
|
|
9
|
-
export { nativeMobileOauthStateParam };
|