@dynamic-labs/multi-wallet 0.16.16 → 0.16.17
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 +8 -0
- package/package.json +4 -4
- package/src/multi-wallet.cjs +4 -10
- package/src/multi-wallet.js +5 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
|
|
2
|
+
### [0.16.17](https://github.com/dynamic-labs/DynamicAuth/compare/v0.16.16...v0.16.17) (2023-05-30)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* **DYN-2327:** user profile is not loaded properly on the first load ([#2125](https://github.com/dynamic-labs/DynamicAuth/issues/2125)) ([aeeb5c2](https://github.com/dynamic-labs/DynamicAuth/commit/aeeb5c24e5d62caab0b17575b03a0fb452a7e6a2))
|
|
8
|
+
* use getWalletLinks in handleMobileWalletFilter ([#2185](https://github.com/dynamic-labs/DynamicAuth/issues/2185)) ([#2186](https://github.com/dynamic-labs/DynamicAuth/issues/2186)) ([c542f3c](https://github.com/dynamic-labs/DynamicAuth/commit/c542f3c83cc229daa60a2de146823530285ea028))
|
|
9
|
+
|
|
2
10
|
### [0.16.16](https://github.com/dynamic-labs/DynamicAuth/compare/v0.16.15...v0.16.16) (2023-05-11)
|
|
3
11
|
|
|
4
12
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/multi-wallet",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.17",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"buffer": "^6.0.3",
|
|
11
11
|
"deepmerge": "^4.3.1",
|
|
12
12
|
"@dynamic-labs/sdk-api": "0.0.174",
|
|
13
|
-
"@dynamic-labs/wallet-book": "^0.0.
|
|
13
|
+
"@dynamic-labs/wallet-book": "^0.0.18",
|
|
14
14
|
"starknet": "^3.19.0",
|
|
15
15
|
"ethers": "^5.7.2",
|
|
16
16
|
"@randlabs/myalgo-connect": "^1.4.2",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"magic-sdk": "^16.0.1",
|
|
29
29
|
"@keplr-wallet/provider": "0.11.56",
|
|
30
30
|
"@keplr-wallet/types": "^0.11.51",
|
|
31
|
-
"@dynamic-labs/logger": "0.16.
|
|
32
|
-
"@dynamic-labs/wallet-connector-core": "0.16.
|
|
31
|
+
"@dynamic-labs/logger": "0.16.17",
|
|
32
|
+
"@dynamic-labs/wallet-connector-core": "0.16.17"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@walletconnect/types": "^2.2.1"
|
package/src/multi-wallet.cjs
CHANGED
|
@@ -192,10 +192,10 @@ const filterWalletsForPlatform = (wallets) => wallets.filter((wallet) => {
|
|
|
192
192
|
return true;
|
|
193
193
|
}
|
|
194
194
|
else {
|
|
195
|
-
return handleMobileWalletFilter(wallet, metadata);
|
|
195
|
+
return handleMobileWalletFilter(wallet.name, metadata);
|
|
196
196
|
}
|
|
197
197
|
});
|
|
198
|
-
const handleMobileWalletFilter = (
|
|
198
|
+
const handleMobileWalletFilter = (walletName, metadata) => {
|
|
199
199
|
if (!metadata.mobile)
|
|
200
200
|
return false;
|
|
201
201
|
/**
|
|
@@ -206,20 +206,14 @@ const handleMobileWalletFilter = (wallet, metadata) => {
|
|
|
206
206
|
*/
|
|
207
207
|
const hasWalletConnectLink = Boolean(metadata.mobile.universal) || Boolean(metadata.mobile.native);
|
|
208
208
|
const isWalletConnectWallet = metadata.walletConnect !== undefined;
|
|
209
|
-
/**
|
|
210
|
-
* wallets-links.json is the source of truth for wallet support on mobile platforms.
|
|
211
|
-
* if a wallet has a non-empty value for ios, that means that wallet has an ios app
|
|
212
|
-
* and we support that app. the same goes for android
|
|
213
|
-
*/
|
|
214
209
|
if (isMobile.isIPad() || isMobile.isIPhone()) {
|
|
215
|
-
const hasIOSLink =
|
|
210
|
+
const hasIOSLink = Boolean(walletBook.getWalletLinks(walletName).ios);
|
|
216
211
|
return !isWalletConnectWallet
|
|
217
212
|
? hasIOSLink
|
|
218
213
|
: hasIOSLink && hasWalletConnectLink;
|
|
219
|
-
// It is an android device
|
|
220
214
|
}
|
|
221
215
|
else {
|
|
222
|
-
const hasAndroidLink =
|
|
216
|
+
const hasAndroidLink = Boolean(walletBook.getWalletLinks(walletName).android);
|
|
223
217
|
return !isWalletConnectWallet
|
|
224
218
|
? hasAndroidLink
|
|
225
219
|
: hasAndroidLink && hasWalletConnectLink;
|
package/src/multi-wallet.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __awaiter } from 'tslib';
|
|
2
|
-
import { getWalletBookWallet } from '@dynamic-labs/wallet-book';
|
|
2
|
+
import { getWalletBookWallet, getWalletLinks } from '@dynamic-labs/wallet-book';
|
|
3
3
|
import Phantom from './wallets/solana/phantom.js';
|
|
4
4
|
import Coinbase from './wallets/ethereum/coinbase.js';
|
|
5
5
|
import Slope from './wallets/solana/slope.js';
|
|
@@ -189,10 +189,10 @@ const filterWalletsForPlatform = (wallets) => wallets.filter((wallet) => {
|
|
|
189
189
|
return true;
|
|
190
190
|
}
|
|
191
191
|
else {
|
|
192
|
-
return handleMobileWalletFilter(wallet, metadata);
|
|
192
|
+
return handleMobileWalletFilter(wallet.name, metadata);
|
|
193
193
|
}
|
|
194
194
|
});
|
|
195
|
-
const handleMobileWalletFilter = (
|
|
195
|
+
const handleMobileWalletFilter = (walletName, metadata) => {
|
|
196
196
|
if (!metadata.mobile)
|
|
197
197
|
return false;
|
|
198
198
|
/**
|
|
@@ -203,20 +203,14 @@ const handleMobileWalletFilter = (wallet, metadata) => {
|
|
|
203
203
|
*/
|
|
204
204
|
const hasWalletConnectLink = Boolean(metadata.mobile.universal) || Boolean(metadata.mobile.native);
|
|
205
205
|
const isWalletConnectWallet = metadata.walletConnect !== undefined;
|
|
206
|
-
/**
|
|
207
|
-
* wallets-links.json is the source of truth for wallet support on mobile platforms.
|
|
208
|
-
* if a wallet has a non-empty value for ios, that means that wallet has an ios app
|
|
209
|
-
* and we support that app. the same goes for android
|
|
210
|
-
*/
|
|
211
206
|
if (isIPad() || isIPhone()) {
|
|
212
|
-
const hasIOSLink =
|
|
207
|
+
const hasIOSLink = Boolean(getWalletLinks(walletName).ios);
|
|
213
208
|
return !isWalletConnectWallet
|
|
214
209
|
? hasIOSLink
|
|
215
210
|
: hasIOSLink && hasWalletConnectLink;
|
|
216
|
-
// It is an android device
|
|
217
211
|
}
|
|
218
212
|
else {
|
|
219
|
-
const hasAndroidLink =
|
|
213
|
+
const hasAndroidLink = Boolean(getWalletLinks(walletName).android);
|
|
220
214
|
return !isWalletConnectWallet
|
|
221
215
|
? hasAndroidLink
|
|
222
216
|
: hasAndroidLink && hasWalletConnectLink;
|