@web3auth/modal 8.12.6 → 9.0.0-alpha.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/LICENSE +2 -2
- package/dist/lib.cjs/config.js +97 -0
- package/dist/lib.cjs/index.js +14 -0
- package/dist/lib.cjs/modalManager.js +426 -0
- package/dist/lib.esm/config.js +90 -0
- package/dist/lib.esm/index.js +2 -0
- package/dist/lib.esm/modalManager.js +424 -0
- package/dist/modal.cjs.js +37 -18
- package/dist/modal.esm.js +31 -11
- package/dist/modal.umd.min.js +1 -1
- package/dist/modal.umd.min.js.LICENSE.txt +0 -2
- package/dist/types/config.d.ts +1 -0
- package/dist/types/interface.d.ts +1 -1
- package/package.json +10 -11
package/dist/modal.esm.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { CHAIN_NAMESPACES, SOLANA_ADAPTERS, EVM_ADAPTERS, WalletInitializationError, fetchProjectConfig, log, WALLET_ADAPTERS, getChainConfig, ADAPTER_CATEGORY, ADAPTER_STATUS, ADAPTER_EVENTS } from '@web3auth/base';
|
|
1
|
+
import { CHAIN_NAMESPACES, SOLANA_ADAPTERS, EVM_ADAPTERS, cloneDeep, WalletInitializationError, fetchProjectConfig, log, fetchWalletRegistry, WALLET_ADAPTERS, getChainConfig, ADAPTER_CATEGORY, ADAPTER_STATUS, ADAPTER_EVENTS } from '@web3auth/base';
|
|
2
2
|
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
3
3
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
4
4
|
import { CommonJRPCProvider } from '@web3auth/base-provider';
|
|
5
5
|
import { Web3AuthNoModal } from '@web3auth/no-modal';
|
|
6
6
|
import { LOGIN_PROVIDER, getOpenloginDefaultOptions, OpenloginAdapter } from '@web3auth/openlogin-adapter';
|
|
7
7
|
import { getUserLanguage, LoginModal, capitalizeFirstLetter, getAdapterSocialLogins, LOGIN_MODAL_EVENTS, OPENLOGIN_PROVIDERS } from '@web3auth/ui';
|
|
8
|
-
import
|
|
9
|
-
import merge from 'lodash.merge';
|
|
8
|
+
import deepmerge from 'deepmerge';
|
|
10
9
|
|
|
11
10
|
const defaultSolanaDappModalConfig = {
|
|
12
11
|
chainNamespace: CHAIN_NAMESPACES.SOLANA,
|
|
@@ -93,13 +92,14 @@ const defaultOtherModalConfig = {
|
|
|
93
92
|
}
|
|
94
93
|
}
|
|
95
94
|
};
|
|
95
|
+
const walletRegistryUrl = "https://assets.web3auth.io/v1/wallet-registry.json";
|
|
96
96
|
|
|
97
97
|
class Web3Auth extends Web3AuthNoModal {
|
|
98
98
|
constructor(options) {
|
|
99
99
|
super(options);
|
|
100
100
|
_defineProperty(this, "loginModal", void 0);
|
|
101
101
|
_defineProperty(this, "options", void 0);
|
|
102
|
-
_defineProperty(this, "modalConfig", defaultOtherModalConfig);
|
|
102
|
+
_defineProperty(this, "modalConfig", cloneDeep(defaultOtherModalConfig));
|
|
103
103
|
this.options = _objectSpread({}, options);
|
|
104
104
|
if (!this.options.uiConfig) this.options.uiConfig = {};
|
|
105
105
|
if (!this.coreOptions.privateKeyProvider) throw WalletInitializationError.invalidParams("privateKeyProvider is required");
|
|
@@ -120,16 +120,25 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
120
120
|
const {
|
|
121
121
|
whitelabel
|
|
122
122
|
} = projectConfig;
|
|
123
|
-
this.options.uiConfig =
|
|
123
|
+
this.options.uiConfig = deepmerge(cloneDeep(whitelabel), this.options.uiConfig);
|
|
124
124
|
if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);
|
|
125
125
|
if (!this.options.uiConfig.mode) this.options.uiConfig.mode = "light";
|
|
126
|
+
let walletRegistry = {};
|
|
127
|
+
try {
|
|
128
|
+
walletRegistry = await fetchWalletRegistry(walletRegistryUrl);
|
|
129
|
+
} catch (e) {
|
|
130
|
+
log.error("Failed to fetch wallet registry", e);
|
|
131
|
+
}
|
|
126
132
|
this.loginModal = new LoginModal(_objectSpread(_objectSpread({}, this.options.uiConfig), {}, {
|
|
127
|
-
adapterListener: this
|
|
133
|
+
adapterListener: this,
|
|
134
|
+
chainNamespace: this.options.chainConfig.chainNamespace,
|
|
135
|
+
walletRegistry
|
|
128
136
|
}));
|
|
129
137
|
this.subscribeToLoginModalEvents();
|
|
130
138
|
const {
|
|
131
139
|
sms_otp_enabled: smsOtpEnabled,
|
|
132
|
-
whitelist
|
|
140
|
+
whitelist,
|
|
141
|
+
key_export_enabled: keyExportEnabled
|
|
133
142
|
} = projectConfig;
|
|
134
143
|
if (smsOtpEnabled !== undefined) {
|
|
135
144
|
var _params;
|
|
@@ -149,7 +158,7 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
149
158
|
if (!((_params = params) !== null && _params !== void 0 && _params.modalConfig)) params = {
|
|
150
159
|
modalConfig: {}
|
|
151
160
|
};
|
|
152
|
-
params.modalConfig =
|
|
161
|
+
params.modalConfig = deepmerge(cloneDeep(params.modalConfig), adapterConfig);
|
|
153
162
|
}
|
|
154
163
|
await this.loginModal.initModal();
|
|
155
164
|
const providedChainConfig = this.options.chainConfig;
|
|
@@ -360,6 +369,11 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
360
369
|
this.commonJRPCProvider = await CommonJRPCProvider.getProviderInstance({
|
|
361
370
|
chainConfig: this.coreOptions.chainConfig
|
|
362
371
|
});
|
|
372
|
+
if (typeof keyExportEnabled === "boolean") {
|
|
373
|
+
this.coreOptions.privateKeyProvider.setKeyExportFlag(keyExportEnabled);
|
|
374
|
+
// dont know if we need to do this.
|
|
375
|
+
this.commonJRPCProvider.setKeyExportFlag(keyExportEnabled);
|
|
376
|
+
}
|
|
363
377
|
await Promise.all(initPromises);
|
|
364
378
|
if (this.status === ADAPTER_STATUS.NOT_READY) {
|
|
365
379
|
this.status = ADAPTER_STATUS.READY;
|
|
@@ -418,14 +432,20 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
418
432
|
await adapter.init({
|
|
419
433
|
autoConnect: this.cachedAdapter === adapterName
|
|
420
434
|
}).then(() => {
|
|
421
|
-
|
|
435
|
+
const adapterModalConfig = this.modalConfig.adapters[adapterName];
|
|
436
|
+
adaptersConfig[adapterName] = _objectSpread(_objectSpread({}, adapterModalConfig), {}, {
|
|
437
|
+
isInjected: adapter.isInjected
|
|
438
|
+
});
|
|
422
439
|
this.loginModal.addWalletLogins(adaptersConfig, {
|
|
423
440
|
showExternalWalletsOnly: !!(options !== null && options !== void 0 && options.showExternalWalletsOnly)
|
|
424
441
|
});
|
|
425
442
|
return undefined;
|
|
426
443
|
}).catch(error => log.error(error, "error while initializing adapter", adapterName));
|
|
427
444
|
} else if (adapter.status === ADAPTER_STATUS.READY) {
|
|
428
|
-
|
|
445
|
+
const adapterModalConfig = this.modalConfig.adapters[adapterName];
|
|
446
|
+
adaptersConfig[adapterName] = _objectSpread(_objectSpread({}, adapterModalConfig), {}, {
|
|
447
|
+
isInjected: adapter.isInjected
|
|
448
|
+
});
|
|
429
449
|
this.loginModal.addWalletLogins(adaptersConfig, {
|
|
430
450
|
showExternalWalletsOnly: !!(options !== null && options !== void 0 && options.showExternalWalletsOnly)
|
|
431
451
|
});
|
|
@@ -487,4 +507,4 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
487
507
|
}
|
|
488
508
|
}
|
|
489
509
|
|
|
490
|
-
export { Web3Auth, defaultEvmDappModalConfig, defaultEvmWalletModalConfig, defaultOtherModalConfig, defaultSolanaDappModalConfig, defaultSolanaWalletModalConfig };
|
|
510
|
+
export { Web3Auth, defaultEvmDappModalConfig, defaultEvmWalletModalConfig, defaultOtherModalConfig, defaultSolanaDappModalConfig, defaultSolanaWalletModalConfig, walletRegistryUrl };
|