@web3auth/modal 4.5.0-beta.0 → 4.6.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/dist/modal.cjs.js +396 -711
- package/dist/modal.cjs.js.map +1 -1
- package/dist/modal.esm.js +378 -652
- package/dist/modal.esm.js.map +1 -1
- package/dist/modal.umd.min.js +1 -1
- package/dist/modal.umd.min.js.map +1 -1
- package/dist/types/default.d.ts +3 -0
- package/dist/types/utils.d.ts +1 -0
- package/package.json +14 -14
- package/src/config.ts +2 -2
- package/src/default.ts +13 -9
- package/src/modalManager.ts +7 -3
- package/src/utils.ts +1 -0
package/dist/types/default.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import type { OPENLOGIN_NETWORK_TYPE } from "@toruslabs/openlogin";
|
|
1
2
|
import { CustomChainConfig, IAdapter, WALLET_ADAPTER_TYPE } from "@web3auth/base";
|
|
2
3
|
export declare const getDefaultAdapterModule: (params: {
|
|
3
4
|
name: WALLET_ADAPTER_TYPE;
|
|
4
5
|
clientId: string;
|
|
5
6
|
customChainConfig: Partial<CustomChainConfig> & Pick<CustomChainConfig, "chainNamespace">;
|
|
7
|
+
sessionTime?: number;
|
|
8
|
+
web3AuthNetwork?: OPENLOGIN_NETWORK_TYPE;
|
|
6
9
|
}) => Promise<IAdapter<unknown>>;
|
package/dist/types/utils.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@web3auth/modal",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.6.0",
|
|
4
4
|
"homepage": "https://github.com/Web3Auth/Web3Auth#readme",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"main": "dist/modal.cjs.js",
|
|
@@ -19,24 +19,24 @@
|
|
|
19
19
|
"pre-commit": "lint-staged --cwd ."
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@web3auth/base": "^4.
|
|
23
|
-
"@web3auth/core": "^4.
|
|
24
|
-
"@web3auth/metamask-adapter": "^4.
|
|
25
|
-
"@web3auth/openlogin-adapter": "^4.
|
|
26
|
-
"@web3auth/phantom-adapter": "^4.
|
|
27
|
-
"@web3auth/torus-evm-adapter": "^4.
|
|
28
|
-
"@web3auth/torus-solana-adapter": "^4.
|
|
29
|
-
"@web3auth/ui": "^4.
|
|
30
|
-
"@web3auth/wallet-connect-v1-adapter": "^4.
|
|
22
|
+
"@web3auth/base": "^4.6.0",
|
|
23
|
+
"@web3auth/core": "^4.6.0",
|
|
24
|
+
"@web3auth/metamask-adapter": "^4.6.0",
|
|
25
|
+
"@web3auth/openlogin-adapter": "^4.6.0",
|
|
26
|
+
"@web3auth/phantom-adapter": "^4.6.0",
|
|
27
|
+
"@web3auth/torus-evm-adapter": "^4.6.0",
|
|
28
|
+
"@web3auth/torus-solana-adapter": "^4.6.0",
|
|
29
|
+
"@web3auth/ui": "^4.6.0",
|
|
30
|
+
"@web3auth/wallet-connect-v1-adapter": "^4.6.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@svgr/webpack": "^6.5.1",
|
|
34
34
|
"@toruslabs/isomorphic-style-loader": "^5.3.3",
|
|
35
|
-
"@toruslabs/openlogin": "^
|
|
36
|
-
"css-loader": "^6.7.
|
|
35
|
+
"@toruslabs/openlogin": "^3.1.0",
|
|
36
|
+
"css-loader": "^6.7.3",
|
|
37
37
|
"postcss-prefix-selector": "^1.16.0",
|
|
38
38
|
"style-loader": "^3.3.1",
|
|
39
|
-
"tailwindcss": "^3.2.
|
|
39
|
+
"tailwindcss": "^3.2.6",
|
|
40
40
|
"url-loader": "^4.1.1"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"publishConfig": {
|
|
64
64
|
"access": "public"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "8ec9b078da6781b1225488bc45b41a10a15c8a0b"
|
|
67
67
|
}
|
package/src/config.ts
CHANGED
|
@@ -20,7 +20,7 @@ export const defaultSolanaDappModalConfig: AdaptersModalConfig = {
|
|
|
20
20
|
[SOLANA_ADAPTERS.PHANTOM]: {
|
|
21
21
|
label: "Phantom",
|
|
22
22
|
showOnModal: true,
|
|
23
|
-
showOnMobile:
|
|
23
|
+
showOnMobile: true,
|
|
24
24
|
showOnDesktop: true,
|
|
25
25
|
},
|
|
26
26
|
},
|
|
@@ -38,7 +38,7 @@ export const defaultEvmDappModalConfig: AdaptersModalConfig = {
|
|
|
38
38
|
[EVM_ADAPTERS.METAMASK]: {
|
|
39
39
|
label: "MetaMask",
|
|
40
40
|
showOnModal: true,
|
|
41
|
-
showOnMobile:
|
|
41
|
+
showOnMobile: true,
|
|
42
42
|
showOnDesktop: true,
|
|
43
43
|
},
|
|
44
44
|
[EVM_ADAPTERS.OPENLOGIN]: {
|
package/src/default.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import type { OpenLoginOptions } from "@toruslabs/openlogin";
|
|
1
|
+
import type { OPENLOGIN_NETWORK_TYPE, OpenLoginOptions } from "@toruslabs/openlogin";
|
|
2
2
|
import { CHAIN_NAMESPACES, CustomChainConfig, getChainConfig, IAdapter, WALLET_ADAPTER_TYPE, WALLET_ADAPTERS } from "@web3auth/base";
|
|
3
3
|
|
|
4
|
-
// warning: this function is not compatible with "OTHER"
|
|
4
|
+
// warning: this function is not compatible with "OTHER" chain namespace.
|
|
5
5
|
export const getDefaultAdapterModule = async (params: {
|
|
6
6
|
name: WALLET_ADAPTER_TYPE;
|
|
7
7
|
clientId: string;
|
|
8
8
|
customChainConfig: Partial<CustomChainConfig> & Pick<CustomChainConfig, "chainNamespace">;
|
|
9
|
+
sessionTime?: number;
|
|
10
|
+
web3AuthNetwork?: OPENLOGIN_NETWORK_TYPE;
|
|
9
11
|
}): Promise<IAdapter<unknown>> => {
|
|
10
|
-
const { name, customChainConfig, clientId } = params;
|
|
12
|
+
const { name, customChainConfig, clientId, sessionTime, web3AuthNetwork } = params;
|
|
11
13
|
if (!Object.values(CHAIN_NAMESPACES).includes(customChainConfig.chainNamespace))
|
|
12
14
|
throw new Error(`Invalid chainNamespace: ${customChainConfig.chainNamespace}`);
|
|
13
15
|
const finalChainConfig = {
|
|
@@ -16,23 +18,23 @@ export const getDefaultAdapterModule = async (params: {
|
|
|
16
18
|
};
|
|
17
19
|
if (name === WALLET_ADAPTERS.TORUS_EVM) {
|
|
18
20
|
const { TorusWalletAdapter } = await import("@web3auth/torus-evm-adapter");
|
|
19
|
-
const adapter = new TorusWalletAdapter({ chainConfig: finalChainConfig, clientId });
|
|
21
|
+
const adapter = new TorusWalletAdapter({ chainConfig: finalChainConfig, clientId, sessionTime, web3AuthNetwork });
|
|
20
22
|
return adapter;
|
|
21
23
|
} else if (name === WALLET_ADAPTERS.TORUS_SOLANA) {
|
|
22
24
|
const { SolanaWalletAdapter } = await import("@web3auth/torus-solana-adapter");
|
|
23
|
-
const adapter = new SolanaWalletAdapter({ chainConfig: finalChainConfig, clientId });
|
|
25
|
+
const adapter = new SolanaWalletAdapter({ chainConfig: finalChainConfig, clientId, sessionTime, web3AuthNetwork });
|
|
24
26
|
return adapter;
|
|
25
27
|
} else if (name === WALLET_ADAPTERS.METAMASK) {
|
|
26
28
|
const { MetamaskAdapter } = await import("@web3auth/metamask-adapter");
|
|
27
|
-
const adapter = new MetamaskAdapter({ chainConfig: finalChainConfig, clientId });
|
|
29
|
+
const adapter = new MetamaskAdapter({ chainConfig: finalChainConfig, clientId, sessionTime, web3AuthNetwork });
|
|
28
30
|
return adapter;
|
|
29
31
|
} else if (name === WALLET_ADAPTERS.PHANTOM) {
|
|
30
32
|
const { PhantomAdapter } = await import("@web3auth/phantom-adapter");
|
|
31
|
-
const adapter = new PhantomAdapter({ chainConfig: finalChainConfig, clientId });
|
|
33
|
+
const adapter = new PhantomAdapter({ chainConfig: finalChainConfig, clientId, sessionTime, web3AuthNetwork });
|
|
32
34
|
return adapter;
|
|
33
35
|
} else if (name === WALLET_ADAPTERS.WALLET_CONNECT_V1) {
|
|
34
36
|
const { WalletConnectV1Adapter } = await import("@web3auth/wallet-connect-v1-adapter");
|
|
35
|
-
const adapter = new WalletConnectV1Adapter({ chainConfig: finalChainConfig, clientId });
|
|
37
|
+
const adapter = new WalletConnectV1Adapter({ chainConfig: finalChainConfig, clientId, sessionTime, web3AuthNetwork });
|
|
36
38
|
return adapter;
|
|
37
39
|
} else if (name === WALLET_ADAPTERS.OPENLOGIN) {
|
|
38
40
|
const { OpenloginAdapter, getOpenloginDefaultOptions } = await import("@web3auth/openlogin-adapter");
|
|
@@ -41,7 +43,9 @@ export const getDefaultAdapterModule = async (params: {
|
|
|
41
43
|
...defaultOptions,
|
|
42
44
|
clientId,
|
|
43
45
|
chainConfig: { ...finalChainConfig },
|
|
44
|
-
adapterSettings: { ...(defaultOptions.adapterSettings as OpenLoginOptions), clientId },
|
|
46
|
+
adapterSettings: { ...(defaultOptions.adapterSettings as OpenLoginOptions), clientId, network: web3AuthNetwork },
|
|
47
|
+
sessionTime,
|
|
48
|
+
web3AuthNetwork,
|
|
45
49
|
});
|
|
46
50
|
return adapter;
|
|
47
51
|
}
|
package/src/modalManager.ts
CHANGED
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
CustomChainConfig,
|
|
8
8
|
getChainConfig,
|
|
9
9
|
log,
|
|
10
|
+
LoginMethodConfig,
|
|
10
11
|
SafeEventEmitterProvider,
|
|
11
12
|
WALLET_ADAPTER_TYPE,
|
|
12
13
|
WALLET_ADAPTERS,
|
|
@@ -40,6 +41,7 @@ export interface Web3AuthOptions extends Web3AuthCoreOptions {
|
|
|
40
41
|
*/
|
|
41
42
|
uiConfig?: Omit<UIConfig, "adapterListener">;
|
|
42
43
|
}
|
|
44
|
+
|
|
43
45
|
export class Web3Auth extends Web3AuthCore implements IWeb3AuthModal {
|
|
44
46
|
public loginModal: LoginModal;
|
|
45
47
|
|
|
@@ -123,6 +125,8 @@ export class Web3Auth extends Web3AuthCore implements IWeb3AuthModal {
|
|
|
123
125
|
name: adapterName,
|
|
124
126
|
customChainConfig: this.options.chainConfig,
|
|
125
127
|
clientId: this.options.clientId,
|
|
128
|
+
sessionTime: this.options.sessionTime,
|
|
129
|
+
web3AuthNetwork: this.options.web3AuthNetwork,
|
|
126
130
|
});
|
|
127
131
|
|
|
128
132
|
this.walletAdapters[adapterName] = ad;
|
|
@@ -155,14 +159,14 @@ export class Web3Auth extends Web3AuthCore implements IWeb3AuthModal {
|
|
|
155
159
|
const adapterNames = await Promise.all(adapterConfigurationPromises);
|
|
156
160
|
const hasInAppWallets = Object.values(this.walletAdapters).some((adapter) => {
|
|
157
161
|
if (adapter.type !== ADAPTER_CATEGORY.IN_APP) return false;
|
|
158
|
-
if (this.modalConfig.adapters[adapter.name]
|
|
159
|
-
if (!this.modalConfig.adapters[adapter.name]
|
|
162
|
+
if (this.modalConfig.adapters?.[adapter.name]?.showOnModal !== true) return false;
|
|
163
|
+
if (!this.modalConfig.adapters?.[adapter.name]?.loginMethods) return true;
|
|
160
164
|
const mergedLoginMethods = getAdapterSocialLogins(
|
|
161
165
|
adapter.name,
|
|
162
166
|
this.walletAdapters[adapter.name],
|
|
163
167
|
(this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapter.name]?.loginMethods
|
|
164
168
|
);
|
|
165
|
-
if (Object.values(mergedLoginMethods).some((method) => method.showOnModal)) return true;
|
|
169
|
+
if (Object.values(mergedLoginMethods).some((method: LoginMethodConfig[keyof LoginMethodConfig]) => method.showOnModal)) return true;
|
|
166
170
|
return false;
|
|
167
171
|
});
|
|
168
172
|
log.debug(hasInAppWallets, this.walletAdapters, "hasInAppWallets");
|