@web3auth/modal 8.0.0-alpha.3 → 8.0.0-alpha.7
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 +39 -4
- package/dist/modal.cjs.js.map +1 -1
- package/dist/modal.esm.js +36 -3
- 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/package.json +5 -9
- package/src/modalManager.ts +24 -1
package/dist/modal.cjs.js
CHANGED
|
@@ -110,7 +110,7 @@ const defaultOtherModalConfig = {
|
|
|
110
110
|
|
|
111
111
|
/***/ }),
|
|
112
112
|
|
|
113
|
-
/***/
|
|
113
|
+
/***/ 579:
|
|
114
114
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
115
115
|
|
|
116
116
|
"use strict";
|
|
@@ -132,6 +132,8 @@ var base_ = __webpack_require__(612);
|
|
|
132
132
|
const base_provider_namespaceObject = require("@web3auth/base-provider");
|
|
133
133
|
;// CONCATENATED MODULE: external "@web3auth/no-modal"
|
|
134
134
|
const no_modal_namespaceObject = require("@web3auth/no-modal");
|
|
135
|
+
;// CONCATENATED MODULE: external "@web3auth/openlogin-adapter"
|
|
136
|
+
const openlogin_adapter_namespaceObject = require("@web3auth/openlogin-adapter");
|
|
135
137
|
;// CONCATENATED MODULE: external "@web3auth/ui"
|
|
136
138
|
const ui_namespaceObject = require("@web3auth/ui");
|
|
137
139
|
// EXTERNAL MODULE: ./src/config.ts
|
|
@@ -144,6 +146,7 @@ var config = __webpack_require__(591);
|
|
|
144
146
|
|
|
145
147
|
|
|
146
148
|
|
|
149
|
+
|
|
147
150
|
class Web3Auth extends no_modal_namespaceObject.Web3AuthNoModal {
|
|
148
151
|
constructor(options) {
|
|
149
152
|
super(options);
|
|
@@ -212,6 +215,38 @@ class Web3Auth extends no_modal_namespaceObject.Web3AuthNoModal {
|
|
|
212
215
|
// and if adapter is not hidden by user
|
|
213
216
|
if (!adapter && (_this$modalConfig$ada3 = this.modalConfig.adapters) !== null && _this$modalConfig$ada3 !== void 0 && _this$modalConfig$ada3[adapterName].showOnModal) {
|
|
214
217
|
// Adapters to be shown on modal should be pre-configured.
|
|
218
|
+
if (adapterName === base_.WALLET_ADAPTERS.OPENLOGIN) {
|
|
219
|
+
var _this$coreOptions$cha;
|
|
220
|
+
const defaultOptions = (0,openlogin_adapter_namespaceObject.getOpenloginDefaultOptions)();
|
|
221
|
+
const {
|
|
222
|
+
clientId,
|
|
223
|
+
useCoreKitKey,
|
|
224
|
+
chainConfig,
|
|
225
|
+
web3AuthNetwork,
|
|
226
|
+
uiConfig,
|
|
227
|
+
sessionTime,
|
|
228
|
+
privateKeyProvider
|
|
229
|
+
} = this.coreOptions;
|
|
230
|
+
const finalChainConfig = objectSpread2_default()(objectSpread2_default()({}, (0,base_.getChainConfig)(providedChainConfig.chainNamespace, (_this$coreOptions$cha = this.coreOptions.chainConfig) === null || _this$coreOptions$cha === void 0 ? void 0 : _this$coreOptions$cha.chainId)), chainConfig);
|
|
231
|
+
if (!privateKeyProvider) {
|
|
232
|
+
throw base_.WalletInitializationError.invalidParams("privateKeyProvider is required");
|
|
233
|
+
}
|
|
234
|
+
const openloginAdapter = new openlogin_adapter_namespaceObject.OpenloginAdapter(objectSpread2_default()(objectSpread2_default()({}, defaultOptions), {}, {
|
|
235
|
+
clientId,
|
|
236
|
+
useCoreKitKey,
|
|
237
|
+
chainConfig: objectSpread2_default()({}, finalChainConfig),
|
|
238
|
+
adapterSettings: objectSpread2_default()(objectSpread2_default()({}, defaultOptions.adapterSettings), {}, {
|
|
239
|
+
clientId,
|
|
240
|
+
network: web3AuthNetwork,
|
|
241
|
+
whiteLabel: uiConfig
|
|
242
|
+
}),
|
|
243
|
+
sessionTime,
|
|
244
|
+
web3AuthNetwork,
|
|
245
|
+
privateKeyProvider
|
|
246
|
+
}));
|
|
247
|
+
this.walletAdapters[adapterName] = openloginAdapter;
|
|
248
|
+
return adapterName;
|
|
249
|
+
}
|
|
215
250
|
throw base_.WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);
|
|
216
251
|
} else if ((adapter === null || adapter === void 0 ? void 0 : adapter.type) === base_.ADAPTER_CATEGORY.IN_APP || (adapter === null || adapter === void 0 ? void 0 : adapter.type) === base_.ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {
|
|
217
252
|
var _this$modalConfig$ada4;
|
|
@@ -228,8 +263,8 @@ class Web3Auth extends no_modal_namespaceObject.Web3AuthNoModal {
|
|
|
228
263
|
// if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace
|
|
229
264
|
// and chainNamespace.
|
|
230
265
|
if (!adapter.chainConfigProxy) {
|
|
231
|
-
var _this$coreOptions$
|
|
232
|
-
const chainConfig = objectSpread2_default()(objectSpread2_default()({}, (0,base_.getChainConfig)(providedChainConfig.chainNamespace, (_this$coreOptions$
|
|
266
|
+
var _this$coreOptions$cha2;
|
|
267
|
+
const chainConfig = objectSpread2_default()(objectSpread2_default()({}, (0,base_.getChainConfig)(providedChainConfig.chainNamespace, (_this$coreOptions$cha2 = this.coreOptions.chainConfig) === null || _this$coreOptions$cha2 === void 0 ? void 0 : _this$coreOptions$cha2.chainId)), this.coreOptions.chainConfig);
|
|
233
268
|
this.walletAdapters[adapterName].setAdapterSettings({
|
|
234
269
|
chainConfig
|
|
235
270
|
});
|
|
@@ -525,7 +560,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
525
560
|
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
526
561
|
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _interface__WEBPACK_IMPORTED_MODULE_1__) if(["default","defaultEvmDappModalConfig","defaultEvmWalletModalConfig","defaultOtherModalConfig","defaultSolanaDappModalConfig","defaultSolanaWalletModalConfig"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _interface__WEBPACK_IMPORTED_MODULE_1__[__WEBPACK_IMPORT_KEY__]
|
|
527
562
|
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
528
|
-
/* harmony import */ var _modalManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(
|
|
563
|
+
/* harmony import */ var _modalManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(579);
|
|
529
564
|
|
|
530
565
|
|
|
531
566
|
|
package/dist/modal.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.cjs.js","mappings":";;;;;;;;;;;;;;;;AAAiF;AAI1E,MAAMG,4BAAiD,GAAG;EAC/DC,cAAc,EAAEJ,4DAAgB,CAACK,MAAM;EACvCC,QAAQ,EAAE;IACR,CAACJ,2DAAe,CAACK,YAAY,GAAG;MAC9BC,KAAK,EAAE,cAAc;MACrBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB,CAAC;IACD,CAACT,2DAAe,CAACU,SAAS,GAAG;MAC3BJ,KAAK,EAAE,WAAW;MAClBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB,CAAC;IACD,CAACT,2DAAe,CAACW,OAAO,GAAG;MACzBL,KAAK,EAAE,SAAS;MAChBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB;EACF;AACF,CAAC;AAEM,MAAMG,yBAA8C,GAAG;EAC5DV,cAAc,EAAEJ,4DAAgB,CAACe,MAAM;EACvCT,QAAQ,EAAE;IACR,CAACL,wDAAY,CAACe,SAAS,GAAG;MACxBR,KAAK,EAAE,cAAc;MACrBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB,CAAC;IACD,CAACV,wDAAY,CAACgB,QAAQ,GAAG;MACvBT,KAAK,EAAE,UAAU;MACjBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB,CAAC;IACD,CAACV,wDAAY,CAACW,SAAS,GAAG;MACxBJ,KAAK,EAAE,WAAW;MAClBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB,CAAC;IACD,CAACV,wDAAY,CAACiB,iBAAiB,GAAG;MAChCV,KAAK,EAAE,gBAAgB;MACvBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB;EACF;AACF,CAAC;AAEM,MAAMQ,8BAAmD,GAAG;EACjEf,cAAc,EAAEJ,4DAAgB,CAACK,MAAM;EACvCC,QAAQ,EAAE;IACR,CAACJ,2DAAe,CAACU,SAAS,GAAG;MAC3BJ,KAAK,EAAE,WAAW;MAClBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB;EACF;AACF,CAAC;AAEM,MAAMS,2BAAgD,GAAG;EAC9DhB,cAAc,EAAEJ,4DAAgB,CAACe,MAAM;EACvCT,QAAQ,EAAE;IACR,CAACL,wDAAY,CAACW,SAAS,GAAG;MACxBJ,KAAK,EAAE,WAAW;MAClBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB;EACF;AACF,CAAC;AAEM,MAAMU,uBAA4C,GAAG;EAC1DjB,cAAc,EAAEJ,4DAAgB,CAACsB,KAAK;EACtChB,QAAQ,EAAE;IACR,CAACL,wDAAY,CAACW,SAAS,GAAG;MACxBJ,KAAK,EAAE,WAAW;MAClBC,WAAW,EAAE,IAAI;MACjBC,YAAY,EAAE,IAAI;MAClBC,aAAa,EAAE;IACjB;EACF;AACF,CAAC;;;;;;;;;;;;;;;;;;;;;;AC5FD,MAAM,6BAA4B;;;ACAlC,MAAM,8BAA4B;;;;;ACAlC,MAAM,6BAA4B;;ACAlC,MAAM,wBAA4B;;ACAlC,MAAM,kBAA4B;;;;;;ACeV;AACqC;AACR;AAEiF;AASpH;AAmBX,MAAM0B,QAAQ,SAASN,wCAAe,CAA2B;EAOtEO,WAAWA,CAACC,OAAwB,EAAE;IACpC,KAAK,CAACA,OAAO,CAAC;IAACC,wBAAA;IAAAA,wBAAA;IAAAA,wBAAA,sBAH0B1B,wCAAyB;IAIlE,IAAI,CAACyB,OAAO,GAAAE,uBAAA,KAAQF,OAAO,CAAE;IAC7B,MAAMG,mBAAmB,GAAG,IAAI,CAACH,OAAO,CAACI,WAAW;IACpD,IAAID,mBAAmB,CAACtC,cAAc,KAAKJ,sBAAgB,CAACK,MAAM,EAAE;MAClE,IAAIkC,OAAO,CAACK,QAAQ,KAAK,QAAQ,EAAE;QACjC;QACA,IAAI,CAACC,WAAW,GAAG1B,6CAA8B;MACnD,CAAC,MAAM;QACL;QACA,IAAI,CAAC0B,WAAW,GAAG1C,2CAA4B;MACjD;IACF,CAAC,MAAM,IAAIuC,mBAAmB,CAACtC,cAAc,KAAKJ,sBAAgB,CAACe,MAAM,EAAE;MACzE,IAAIwB,OAAO,CAACK,QAAQ,KAAK,QAAQ,EAAE;QACjC;QACA,IAAI,CAACC,WAAW,GAAGzB,0CAA2B;MAChD,CAAC,MAAM;QACL;QACA,IAAI,CAACyB,WAAW,GAAG/B,wCAAyB;MAC9C;IACF,CAAC,MAAM,IAAI4B,mBAAmB,CAACtC,cAAc,KAAKJ,sBAAgB,CAACsB,KAAK,EAAE;MACxE,IAAI,CAACuB,WAAW,GAAGxB,sCAAuB;IAC5C,CAAC,MAAM;MACL,MAAM,IAAIyB,KAAK,CAAE,oCAAmCJ,mBAAmB,CAACtC,cAAe,EAAC,CAAC;IAC3F;IAEA,IAAI,CAAC,IAAI,CAACmC,OAAO,CAACQ,QAAQ,EAAE,IAAI,CAACR,OAAO,CAACQ,QAAQ,GAAG,CAAC,CAAC;IACtD,IAAI,CAAC,IAAI,CAACR,OAAO,CAACQ,QAAQ,CAACC,eAAe,EAAE,IAAI,CAACT,OAAO,CAACQ,QAAQ,CAACC,eAAe,GAAGf,sCAAe,CAAC,IAAI,CAACM,OAAO,CAACQ,QAAQ,CAACC,eAAe,CAAC;IAC1I,IAAI,CAAC,IAAI,CAACT,OAAO,CAACQ,QAAQ,CAACE,IAAI,EAAE,IAAI,CAACV,OAAO,CAACQ,QAAQ,CAACE,IAAI,GAAG,MAAM;IAEpE,IAAI,CAACC,UAAU,GAAG,IAAIf,6BAAU,CAAAM,uBAAA,CAAAA,uBAAA,KAC3B,IAAI,CAACF,OAAO,CAACQ,QAAQ;MACxBI,eAAe,EAAE;IAAI,EACtB,CAAC;IACF,IAAI,CAACC,2BAA2B,CAAC,CAAC;EACpC;EAEA,MAAaC,SAASA,CAACC,MAAmE,EAAiB;IACzG,KAAK,CAACC,qBAAqB,CAAC,CAAC;IAC7B,MAAM,IAAI,CAACL,UAAU,CAACG,SAAS,CAAC,CAAC;IACjC,MAAMX,mBAAmB,GAAG,IAAI,CAACH,OAAO,CAACI,WAAW;IACpD;IACA;IACA,MAAMa,WAAW,GAAG,CAAC,GAAG,IAAIC,GAAG,CAAC,CAAC,GAAGC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACd,WAAW,CAACvC,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAGoD,MAAM,CAACC,IAAI,CAAC,IAAI,CAACC,cAAc,CAAC,CAAC,CAAC,CAAC;IAExH,MAAMC,4BAA4B,GAAGL,WAAW,CAACM,GAAG,CAAC,MAAOC,WAAW,IAAK;MAAA,IAAAC,qBAAA,EAAAC,mBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MAC1E;MACA,IAAIC,aAAa,GAAG,EAAAJ,qBAAA,OAAI,CAACnB,WAAW,CAACvC,QAAQ,cAAA0D,qBAAA,uBAAzBA,qBAAA,CAA4BD,WAAW,CAAC,KAAI;QAC9DvD,KAAK,EAAEuD,WAAW;QAClBtD,WAAW,EAAE,IAAI;QACjBC,YAAY,EAAE,IAAI;QAClBC,aAAa,EAAE;MACjB,CAAC;;MAED;MACA,IAAI2C,MAAM,aAANA,MAAM,gBAAAW,mBAAA,GAANX,MAAM,CAAET,WAAW,cAAAoB,mBAAA,eAAnBA,mBAAA,CAAsBF,WAAW,CAAC,EAAE;QACtCK,aAAa,GAAA3B,uBAAA,CAAAA,uBAAA,KAAQ2B,aAAa,GAAKd,MAAM,CAACT,WAAW,CAACkB,WAAW,CAAC,CAAE;MAC1E;MACC,IAAI,CAAClB,WAAW,CAACvC,QAAQ,CAA8CyD,WAAW,CAAC,GAAGK,aAA4B;;MAEnH;MACA,MAAMC,OAAO,GAAG,IAAI,CAACT,cAAc,CAACG,WAAW,CAAC;MAChDpC,SAAG,CAAC2C,KAAK,CAAC,gBAAgB,EAAEP,WAAW,GAAAG,sBAAA,GAAE,IAAI,CAACrB,WAAW,CAACvC,QAAQ,cAAA4D,sBAAA,uBAAzBA,sBAAA,CAA4BH,WAAW,CAAC,CAACtD,WAAW,EAAE4D,OAAO,CAAC;;MAEvG;MACA;MACA,IAAI,CAACA,OAAO,KAAAF,sBAAA,GAAI,IAAI,CAACtB,WAAW,CAACvC,QAAQ,cAAA6D,sBAAA,eAAzBA,sBAAA,CAA4BJ,WAAW,CAAC,CAACtD,WAAW,EAAE;QACpE;QACA,MAAMoB,+BAAyB,CAAC0C,aAAa,CAAE,WAAUR,WAAY,oBAAmB,CAAC;MAC3F,CAAC,MAAM,IAAI,CAAAM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG,IAAI,MAAKjD,sBAAgB,CAACkD,MAAM,IAAI,CAAAJ,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG,IAAI,MAAKjD,sBAAgB,CAACmD,QAAQ,IAAIX,WAAW,KAAK,IAAI,CAACY,aAAa,EAAE;QAAA,IAAAC,sBAAA;QACzI,IAAI,GAAAA,sBAAA,GAAC,IAAI,CAAC/B,WAAW,CAACvC,QAAQ,cAAAsE,sBAAA,eAAzBA,sBAAA,CAA4Bb,WAAW,CAAC,CAACtD,WAAW,GAAE;QAC3D;QACA;QACA,IAAI,CAACmD,cAAc,CAACG,WAAW,CAAC,CAACc,kBAAkB,CAAC;UAClDC,QAAQ,EAAE,IAAI,CAACvC,OAAO,CAACuC,QAAQ;UAC/BC,WAAW,EAAE,IAAI,CAACxC,OAAO,CAACwC,WAAW;UACrCC,eAAe,EAAE,IAAI,CAACzC,OAAO,CAACyC,eAAe;UAC7CC,aAAa,EAAE,IAAI,CAACC,WAAW,CAACD;QAClC,CAAC,CAAC;;QAEF;QACA;QACA,IAAI,CAACZ,OAAO,CAACc,gBAAgB,EAAE;UAAA,IAAAC,qBAAA;UAC7B,MAAMzC,WAAW,GAAAF,uBAAA,CAAAA,uBAAA,KACZf,wBAAc,CAACgB,mBAAmB,CAACtC,cAAc,GAAAgF,qBAAA,GAAE,IAAI,CAACF,WAAW,CAACvC,WAAW,cAAAyC,qBAAA,uBAA5BA,qBAAA,CAA8BC,OAAO,CAAC,GACzF,IAAI,CAACH,WAAW,CAACvC,WAAW,CACX;UACtB,IAAI,CAACiB,cAAc,CAACG,WAAW,CAAC,CAACc,kBAAkB,CAAC;YAAElC;UAAY,CAAC,CAAC;QACtE;QAEA,IAAIoB,WAAW,KAAKnC,qBAAe,CAAChB,SAAS,EAAE;UAC7C,MAAM0E,gBAAgB,GAAG,IAAI,CAAC1B,cAAc,CAACG,WAAW,CAAqB;UAC7E,IAAI,IAAI,CAACmB,WAAW,CAACK,kBAAkB,EAAE;YACvC,IAAID,gBAAgB,CAACE,qBAAqB,KAAK,IAAI,CAACN,WAAW,CAACK,kBAAkB,CAACE,kBAAkB,CAACrF,cAAc,EAAE;cACpH,MAAMyB,+BAAyB,CAAC6D,0BAA0B,CACxD,2FACF,CAAC;YACH;YACAJ,gBAAgB,CAACT,kBAAkB,CAAC;cAAEU,kBAAkB,EAAE,IAAI,CAACL,WAAW,CAACK;YAAmB,CAAC,CAAC;UAClG;UACAD,gBAAgB,CAACT,kBAAkB,CAAC;YAAEc,UAAU,EAAE,IAAI,CAACpD,OAAO,CAACQ;UAAS,CAAC,CAAC;UAC1E,IAAI,CAACuC,gBAAgB,CAACC,kBAAkB,EAAE;YACxC,MAAM1D,+BAAyB,CAAC0C,aAAa,CAAC,sDAAsD,CAAC;UACvG;QACF,CAAC,MAAM,IAAIR,WAAW,KAAKnC,qBAAe,CAACV,iBAAiB,EAAE;UAC5D,MAAM0E,oBAAoB,GAAG,IAAI,CAAChC,cAAc,CAACG,WAAW,CAA2B;UACvF6B,oBAAoB,CAACf,kBAAkB,CAAC;YACtCgB,eAAe,EAAE;cACfC,wBAAwB,EAAE;gBACxB;gBACAC,SAAS,EAAE,kCAAkC,CAAE;cACjD;YACF;UACF,CAAC,CAAC;QACJ;QAEA,OAAOhC,WAAW;MACpB;IACF,CAAC,CAAC;IAEF,MAAMiC,YAAY,GAAG,MAAMC,OAAO,CAACC,GAAG,CAACrC,4BAA4B,CAAC;IACpE,MAAMsC,eAAe,GAAGzC,MAAM,CAAC0C,MAAM,CAAC,IAAI,CAACxC,cAAc,CAAC,CAACyC,IAAI,CAAEhC,OAAO,IAAK;MAAA,IAAAiC,sBAAA,EAAAC,sBAAA,EAAAC,aAAA;MAC3E,IAAInC,OAAO,CAACG,IAAI,KAAKjD,sBAAgB,CAACkD,MAAM,EAAE,OAAO,KAAK;MAC1D,IAAI,EAAA6B,sBAAA,OAAI,CAACzD,WAAW,CAACvC,QAAQ,cAAAgG,sBAAA,gBAAAA,sBAAA,GAAzBA,sBAAA,CAA4BjC,OAAO,CAACoC,IAAI,CAAC,cAAAH,sBAAA,uBAAzCA,sBAAA,CAA2C7F,WAAW,MAAK,IAAI,EAAE,OAAO,KAAK;MACjF,IAAI,GAAA8F,sBAAA,GAAC,IAAI,CAAC1D,WAAW,CAACvC,QAAQ,cAAAiG,sBAAA,gBAAAA,sBAAA,GAAzBA,sBAAA,CAA4BlC,OAAO,CAACoC,IAAI,CAAC,cAAAF,sBAAA,eAAzCA,sBAAA,CAA2CG,YAAY,GAAE,OAAO,IAAI;MACzE,MAAMC,kBAAkB,GAAG3E,6CAAsB,CAC/CqC,OAAO,CAACoC,IAAI,GAAAD,aAAA,GACX,IAAI,CAAC3D,WAAW,CAACvC,QAAQ,CAA8C+D,OAAO,CAACoC,IAAI,CAAC,cAAAD,aAAA,uBAArFA,aAAA,CAAuFE,YACzF,CAAC;MACD,IAAIhD,MAAM,CAAC0C,MAAM,CAACO,kBAAkB,CAAC,CAACN,IAAI,CAAEO,MAAkD,IAAKA,MAAM,CAACnG,WAAW,CAAC,EAAE,OAAO,IAAI;MACnI,OAAO,KAAK;IACd,CAAC,CAAC;IACFkB,SAAG,CAAC2C,KAAK,CAAC6B,eAAe,EAAE,IAAI,CAACvC,cAAc,EAAEoC,YAAY,EAAE,iBAAiB,CAAC;;IAEhF;IACA,MAAMa,YAAY,GAAGb,YAAY,CAAClC,GAAG,CAAC,MAAOC,WAAW,IAAK;MAC3D,IAAI,CAACA,WAAW,EAAE;MAClB,IAAI;QACF,MAAMM,OAAO,GAAG,IAAI,CAACT,cAAc,CAACG,WAAW,CAAC;QAChD;QACA,IAAI,IAAI,CAACY,aAAa,KAAKZ,WAAW,IAAIM,OAAO,CAACG,IAAI,KAAKjD,sBAAgB,CAACmD,QAAQ,EAAE;UACpF;QACF;QACA;QACA;QACA;QACA,IAAI,CAACoC,wBAAwB,CAACzC,OAAO,CAAC;QACtC,IAAIA,OAAO,CAAC0C,MAAM,KAAKtF,oBAAc,CAACuF,SAAS,EAAE,MAAM3C,OAAO,CAAC4C,IAAI,CAAC;UAAEC,WAAW,EAAE,IAAI,CAACvC,aAAa,KAAKZ;QAAY,CAAC,CAAC;QACxH;QACA;QACA,IAAIM,OAAO,CAACG,IAAI,KAAKjD,sBAAgB,CAACkD,MAAM,EAAE;UAC5C,IAAI,CAAC0C,qBAAqB,CAACpD,WAAW,CAAC;QACzC;MACF,CAAC,CAAC,OAAOqD,KAAK,EAAE;QACdzF,SAAG,CAACyF,KAAK,CAACA,KAAK,EAAE,kCAAkC,CAAC;MACtD;IACF,CAAC,CAAC;IAEF,IAAI,CAACC,kBAAkB,GAAG,MAAMvF,gDAAkB,CAACwF,mBAAmB,CAAC;MAAE3E,WAAW,EAAE,IAAI,CAACuC,WAAW,CAACvC;IAAiC,CAAC,CAAC;IAC1I,IAAI,CAACoE,MAAM,GAAGtF,oBAAc,CAAC8F,KAAK;IAClC,MAAMtB,OAAO,CAACC,GAAG,CAACW,YAAY,CAAC;IAE/B,MAAMW,kBAAkB,GAAGhE,WAAW,CAAC6C,IAAI,CAAEtC,WAAW,IAAK;MAAA,IAAA0D,qBAAA,EAAAC,sBAAA;MAC3D,OAAO,EAAAD,qBAAA,OAAI,CAAC7D,cAAc,CAACG,WAAW,CAAC,cAAA0D,qBAAA,uBAAhCA,qBAAA,CAAkCjD,IAAI,MAAKjD,sBAAgB,CAACmD,QAAQ,MAAAgD,sBAAA,GAAI,IAAI,CAAC7E,WAAW,CAACvC,QAAQ,cAAAoH,sBAAA,uBAAzBA,sBAAA,CAA4B3D,WAAW,CAAC,CAACtD,WAAW;IACrI,CAAC,CAAC;IAEF,IAAI+G,kBAAkB,EAAE;MACtB,IAAI,CAACtE,UAAU,CAACyE,2BAA2B,CAAC,CAAC;IAC/C;;IAEA;IACA;IACA,IAAI,CAACxB,eAAe,IAAIqB,kBAAkB,EAAE;MAC1C;MACA,MAAM,IAAI,CAACI,0BAA0B,CAAC,KAAK,EAAE;QAAEC,uBAAuB,EAAE;MAAK,CAAC,CAAC;IACjF;EACF;EAEA,MAAaC,OAAOA,CAAA,EAA8B;IAChD;IACA;IACA,IAAI,IAAI,CAACC,oBAAoB,IAAI,IAAI,CAAChB,MAAM,KAAKtF,oBAAc,CAACuG,SAAS,IAAI,IAAI,CAACC,QAAQ,EAAE,OAAO,IAAI,CAACA,QAAQ;IAChH,IAAI,CAAC/E,UAAU,CAACgF,IAAI,CAAC,CAAC;IACtB,OAAO,IAAIjC,OAAO,CAAC,CAACkC,OAAO,EAAEC,MAAM,KAAK;MACtC,IAAI,CAACC,IAAI,CAAC7G,oBAAc,CAACwG,SAAS,EAAE,MAAM;QACxC,OAAOG,OAAO,CAAC,IAAI,CAACF,QAAQ,CAAC;MAC/B,CAAC,CAAC;MACF,IAAI,CAACI,IAAI,CAAC7G,oBAAc,CAAC8G,OAAO,EAAGC,GAAY,IAAK;QAClD,OAAOH,MAAM,CAACG,GAAG,CAAC;MACpB,CAAC,CAAC;MACF,IAAI,CAACF,IAAI,CAACnG,qCAAkB,CAACsG,gBAAgB,EAAGC,UAAmB,IAAK;QACtE;QACA,IAAI,CAACA,UAAU,IAAI,IAAI,CAAC1B,MAAM,KAAKtF,oBAAc,CAACuG,SAAS,EAAE;UAC3D,OAAOI,MAAM,CAAC,IAAItF,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACnD;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA,MAAc8E,0BAA0BA,CAACc,0BAAmC,EAAEnG,OAA8C,EAAiB;IAC3I,IAAImG,0BAA0B,EAAE;IAChC,MAAMC,cAAiD,GAAG,CAAC,CAAC;IAC5DjF,MAAM,CAACC,IAAI,CAAC,IAAI,CAACC,cAAc,CAAC,CAACgF,OAAO,CAAC,MAAO7E,WAAW,IAAK;MAC9D,MAAMM,OAAO,GAAG,IAAI,CAACT,cAAc,CAACG,WAAW,CAAC;MAChD,IAAI,CAAAM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG,IAAI,MAAKjD,sBAAgB,CAACmD,QAAQ,EAAE;QAC/C/C,SAAG,CAAC2C,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAACK,aAAa,EAAEZ,WAAW,CAAC;QAClE,IAAI,CAAC+C,wBAAwB,CAACzC,OAAO,CAAC;QACtC;QACA,IAAI,IAAI,CAACM,aAAa,KAAKZ,WAAW,EAAE;UACtC;QACF;QACA,IAAIM,OAAO,CAAC0C,MAAM,KAAKtF,oBAAc,CAACuF,SAAS,EAAE;UAC/C,MAAM3C,OAAO,CACV4C,IAAI,CAAC;YAAEC,WAAW,EAAE,IAAI,CAACvC,aAAa,KAAKZ;UAAY,CAAC,CAAC,CACzD8E,IAAI,CAAC,MAAM;YACVF,cAAc,CAAC5E,WAAW,CAAC,GAAI,IAAI,CAAClB,WAAW,CAACvC,QAAQ,CAA8CyD,WAAW,CAAC;YAClH,IAAI,CAACb,UAAU,CAAC4F,eAAe,CAACH,cAAc,EAAE;cAAEd,uBAAuB,EAAE,CAAC,EAACtF,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEsF,uBAAuB;YAAC,CAAC,CAAC;YAChH,OAAOkB,SAAS;UAClB,CAAC,CAAC,CACDC,KAAK,CAAE5B,KAAK,IAAKzF,SAAG,CAACyF,KAAK,CAACA,KAAK,EAAE,kCAAkC,CAAC,CAAC;QAC3E,CAAC,MAAM,IAAI/C,OAAO,CAAC0C,MAAM,KAAKtF,oBAAc,CAAC8F,KAAK,EAAE;UAClDoB,cAAc,CAAC5E,WAAW,CAAC,GAAI,IAAI,CAAClB,WAAW,CAACvC,QAAQ,CAA8CyD,WAAW,CAAC;UAClH,IAAI,CAACb,UAAU,CAAC4F,eAAe,CAACH,cAAc,EAAE;YAAEd,uBAAuB,EAAE,CAAC,EAACtF,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEsF,uBAAuB;UAAC,CAAC,CAAC;QAClH;MACF;IACF,CAAC,CAAC;EACJ;EAEQV,qBAAqBA,CAACpD,WAAmB,EAAQ;IACvDpC,SAAG,CAACsH,IAAI,CAAC,oBAAoB,EAAElF,WAAW,CAAC;IAC3C,IAAI,IAAI,CAACH,cAAc,CAACG,WAAW,CAAC,CAACS,IAAI,KAAKjD,sBAAgB,CAACkD,MAAM,EAAE;MAAA,IAAAyE,YAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MACrE,IAAI,CAACnG,UAAU,CAACoG,eAAe,CAC7BvF,WAAW,EACX/B,6CAAsB,CAAC+B,WAAW,GAAAmF,YAAA,GAAG,IAAI,CAACrG,WAAW,CAACvC,QAAQ,CAA8CyD,WAAW,CAAC,cAAAmF,YAAA,uBAApFA,YAAA,CAAsFxC,YAAY,CAAC,EACvI,EAAAyC,qBAAA,OAAI,CAAC5G,OAAO,CAACQ,QAAQ,cAAAoG,qBAAA,uBAArBA,qBAAA,CAAuBI,iBAAiB,KAAInH,sCAAmB,EAAAK,uBAAA,CAAAA,uBAAA,KAE1D,IAAI,CAACF,OAAO,CAACQ,QAAQ;QACxByG,YAAY,EAAE,EAAAJ,sBAAA,OAAI,CAAC7G,OAAO,CAACQ,QAAQ,cAAAqG,sBAAA,uBAArBA,sBAAA,CAAuBI,YAAY,KAAI,CAAC;QACtDC,aAAa,EAAE,EAAAJ,sBAAA,OAAI,CAAC9G,OAAO,CAACQ,QAAQ,cAAAsG,sBAAA,uBAArBA,sBAAA,CAAuBI,aAAa,KAAI;MAAa,EAExE,CAAC;IACH;EACF;EAEQrG,2BAA2BA,CAAA,EAAS;IAC1C,IAAI,CAACF,UAAU,CAACwG,EAAE,CAACxH,qCAAkB,CAACyH,KAAK,EAAE,MAAOrG,MAA8D,IAAK;MACrH,IAAI;QACF,MAAM,IAAI,CAACsG,SAAS,CAAUtG,MAAM,CAACe,OAAO,EAAEf,MAAM,CAACuG,WAAW,CAAC;MACnE,CAAC,CAAC,OAAOzC,KAAK,EAAE;QACdzF,SAAG,CAACyF,KAAK,CAAE,sCAAqC9D,MAAM,CAACe,OAAQ,EAAC,EAAE+C,KAAK,CAAC;MAC1E;IACF,CAAC,CAAC;IACF,IAAI,CAAClE,UAAU,CAACwG,EAAE,CAACxH,qCAAkB,CAAC4H,qBAAqB,EAAE,MAAOxG,MAA+C,IAAK;MACtH,MAAM,IAAI,CAACsE,0BAA0B,CAACtE,MAAM,CAACoF,0BAA0B,CAAC;IAC1E,CAAC,CAAC;IACF,IAAI,CAACxF,UAAU,CAACwG,EAAE,CAACxH,qCAAkB,CAAC6H,UAAU,EAAE,YAAY;MAC5D,IAAI;QACF,MAAM,IAAI,CAACC,MAAM,CAAC,CAAC;MACrB,CAAC,CAAC,OAAO5C,KAAK,EAAE;QACdzF,SAAG,CAACyF,KAAK,CAAE,2BAA0B,EAAEA,KAAK,CAAC;MAC/C;IACF,CAAC,CAAC;IACF,IAAI,CAAClE,UAAU,CAACwG,EAAE,CAACxH,qCAAkB,CAACsG,gBAAgB,EAAE,MAAOC,UAAmB,IAAK;MACrF9G,SAAG,CAAC2C,KAAK,CAAC,wBAAwB,EAAEmE,UAAU,CAAC;MAC/C,IAAI,CAACwB,IAAI,CAAC/H,qCAAkB,CAACsG,gBAAgB,EAAEC,UAAU,CAAC;MAC1D,MAAMpE,OAAO,GAAG,IAAI,CAACT,cAAc,CAAChC,qBAAe,CAACV,iBAAiB,CAAC;MACtE,IAAImD,OAAO,EAAE;QACX,MAAM6F,mBAAmB,GAAG7F,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE0C,MAAM;QAC3CpF,SAAG,CAAC2C,KAAK,CAAC,8BAA8B,EAAEmE,UAAU,EAAEyB,mBAAmB,CAAC;QAC1E,IAAIzB,UAAU,KAAKyB,mBAAmB,KAAKzI,oBAAc,CAAC8F,KAAK,IAAI2C,mBAAmB,KAAKzI,oBAAc,CAAC0I,UAAU,CAAC,EAAE;UACrHxI,SAAG,CAAC2C,KAAK,CAAC,uBAAuB,CAAC;;UAElC;UACA,IAAI;YACFD,OAAO,CAACyD,OAAO,CAAC,CAAC;UACnB,CAAC,CAAC,OAAOV,KAAK,EAAE;YACdzF,SAAG,CAACyF,KAAK,CAAE,qDAAoD,EAAEA,KAAK,CAAC;UACzE;QACF;QACA,IACE,CAACqB,UAAU,IACX,IAAI,CAAC1B,MAAM,KAAKtF,oBAAc,CAACuG,SAAS,KACvCkC,mBAAmB,KAAKzI,oBAAc,CAAC8F,KAAK,IAAI2C,mBAAmB,KAAKzI,oBAAc,CAAC0I,UAAU,CAAC,EACnG;UACAxI,SAAG,CAAC2C,KAAK,CAAC,sEAAsE,CAAC;UACjFD,OAAO,CAAC0C,MAAM,GAAGtF,oBAAc,CAAC8F,KAAK;QACvC;MACF;IACF,CAAC,CAAC;EACJ;AACF;;;;;;;;ACxVA;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;;;;;;;;;;;;;ACNyB;AACG","sources":["webpack://@web3auth/modal/./src/config.ts","webpack://@web3auth/modal/external commonjs2 \"@babel/runtime/helpers/objectSpread2\"","webpack://@web3auth/modal/external commonjs2 \"@babel/runtime/helpers/defineProperty\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/base-provider\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/no-modal\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/ui\"","webpack://@web3auth/modal/./src/modalManager.ts","webpack://@web3auth/modal/external commonjs2 \"@web3auth/base\"","webpack://@web3auth/modal/webpack/bootstrap","webpack://@web3auth/modal/webpack/runtime/compat get default export","webpack://@web3auth/modal/webpack/runtime/define property getters","webpack://@web3auth/modal/webpack/runtime/hasOwnProperty shorthand","webpack://@web3auth/modal/webpack/runtime/make namespace object","webpack://@web3auth/modal/./src/index.ts"],"sourcesContent":["import { CHAIN_NAMESPACES, EVM_ADAPTERS, SOLANA_ADAPTERS } from \"@web3auth/base\";\n\nimport { AdaptersModalConfig } from \"./interface\";\n\nexport const defaultSolanaDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.TORUS_SOLANA]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.PHANTOM]: {\n label: \"Phantom\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.TORUS_EVM]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.METAMASK]: {\n label: \"MetaMask\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.WALLET_CONNECT_V2]: {\n label: \"Wallet Connect\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultSolanaWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultOtherModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.OTHER,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@babel/runtime/helpers/objectSpread2\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@babel/runtime/helpers/defineProperty\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/base-provider\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/no-modal\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/ui\");","import {\n ADAPTER_CATEGORY,\n ADAPTER_EVENTS,\n ADAPTER_STATUS,\n BaseAdapterConfig,\n CHAIN_NAMESPACES,\n CustomChainConfig,\n getChainConfig,\n IProvider,\n log,\n LoginMethodConfig,\n WALLET_ADAPTER_TYPE,\n WALLET_ADAPTERS,\n WalletInitializationError,\n Web3AuthNoModalOptions,\n} from \"@web3auth/base\";\nimport { CommonJRPCProvider } from \"@web3auth/base-provider\";\nimport { Web3AuthNoModal } from \"@web3auth/no-modal\";\nimport type { OpenloginAdapter } from \"@web3auth/openlogin-adapter\";\nimport { getAdapterSocialLogins, getUserLanguage, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from \"@web3auth/ui\";\nimport type { WalletConnectV2Adapter } from \"@web3auth/wallet-connect-v2-adapter\";\n\nimport {\n defaultEvmDappModalConfig,\n defaultEvmWalletModalConfig,\n defaultOtherModalConfig,\n defaultSolanaDappModalConfig,\n defaultSolanaWalletModalConfig,\n} from \"./config\";\nimport { AdaptersModalConfig, IWeb3AuthModal, ModalConfig } from \"./interface\";\n\nexport interface Web3AuthOptions extends Web3AuthNoModalOptions {\n /**\n * web3auth instance provides different adapters for different type of usages. If you are dapp and want to\n * use external wallets like metamask, then you can use the `DAPP` authMode.\n * If you are a wallet and only want to use you own wallet implementations along with openlogin,\n * then you should use `WALLET` authMode.\n *\n * @defaultValue `DAPP`\n */\n authMode?: \"DAPP\" | \"WALLET\";\n /**\n * Config for configuring modal ui display properties\n */\n uiConfig?: Omit<UIConfig, \"adapterListener\">;\n}\n\nexport class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {\n public loginModal: LoginModal;\n\n readonly options: Web3AuthOptions;\n\n private modalConfig: AdaptersModalConfig = defaultEvmDappModalConfig;\n\n constructor(options: Web3AuthOptions) {\n super(options);\n this.options = { ...options };\n const providedChainConfig = this.options.chainConfig;\n if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.SOLANA) {\n if (options.authMode === \"WALLET\") {\n // default config for solana wallet modal\n this.modalConfig = defaultSolanaWalletModalConfig;\n } else {\n // default config for solana dapp modal\n this.modalConfig = defaultSolanaDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.EIP155) {\n if (options.authMode === \"WALLET\") {\n // default config for evm wallet modal\n this.modalConfig = defaultEvmWalletModalConfig;\n } else {\n // default config for evm dapp modal\n this.modalConfig = defaultEvmDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.OTHER) {\n this.modalConfig = defaultOtherModalConfig;\n } else {\n throw new Error(`Invalid chainNamespace provided: ${providedChainConfig.chainNamespace}`);\n }\n\n if (!this.options.uiConfig) this.options.uiConfig = {};\n if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);\n if (!this.options.uiConfig.mode) this.options.uiConfig.mode = \"auto\";\n\n this.loginModal = new LoginModal({\n ...this.options.uiConfig,\n adapterListener: this,\n });\n this.subscribeToLoginModalEvents();\n }\n\n public async initModal(params?: { modalConfig?: Record<WALLET_ADAPTER_TYPE, ModalConfig> }): Promise<void> {\n super.checkInitRequirements();\n await this.loginModal.initModal();\n const providedChainConfig = this.options.chainConfig;\n // TODO: get stuff from dashboard here\n // merge default adapters with the custom configured adapters.\n const allAdapters = [...new Set([...Object.keys(this.modalConfig.adapters || {}), ...Object.keys(this.walletAdapters)])];\n\n const adapterConfigurationPromises = allAdapters.map(async (adapterName) => {\n // start with the default config of adapter.\n let adapterConfig = this.modalConfig.adapters?.[adapterName] || {\n label: adapterName,\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n };\n\n // override the default config of adapter if some config is being provided by the user.\n if (params?.modalConfig?.[adapterName]) {\n adapterConfig = { ...adapterConfig, ...params.modalConfig[adapterName] };\n }\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName] = adapterConfig as ModalConfig;\n\n // check if adapter is configured/added by user and exist in walletAdapters map.\n const adapter = this.walletAdapters[adapterName];\n log.debug(\"adapter config\", adapterName, this.modalConfig.adapters?.[adapterName].showOnModal, adapter);\n\n // if adapter is not custom configured then check if it is available in default adapters.\n // and if adapter is not hidden by user\n if (!adapter && this.modalConfig.adapters?.[adapterName].showOnModal) {\n // Adapters to be shown on modal should be pre-configured.\n throw WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);\n } else if (adapter?.type === ADAPTER_CATEGORY.IN_APP || adapter?.type === ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {\n if (!this.modalConfig.adapters?.[adapterName].showOnModal) return;\n // add client id to adapter, same web3auth client id can be used in adapter.\n // this id is being overridden if user is also passing client id in adapter's constructor.\n this.walletAdapters[adapterName].setAdapterSettings({\n clientId: this.options.clientId,\n sessionTime: this.options.sessionTime,\n web3AuthNetwork: this.options.web3AuthNetwork,\n useCoreKitKey: this.coreOptions.useCoreKitKey,\n });\n\n // if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace\n // and chainNamespace.\n if (!adapter.chainConfigProxy) {\n const chainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...this.coreOptions.chainConfig,\n } as CustomChainConfig;\n this.walletAdapters[adapterName].setAdapterSettings({ chainConfig });\n }\n\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const openloginAdapter = this.walletAdapters[adapterName] as OpenloginAdapter;\n if (this.coreOptions.privateKeyProvider) {\n if (openloginAdapter.currentChainNamespace !== this.coreOptions.privateKeyProvider.currentChainConfig.chainNamespace) {\n throw WalletInitializationError.incompatibleChainNameSpace(\n \"private key provider is not compatible with provided chainNamespace for openlogin adapter\"\n );\n }\n openloginAdapter.setAdapterSettings({ privateKeyProvider: this.coreOptions.privateKeyProvider });\n }\n openloginAdapter.setAdapterSettings({ whiteLabel: this.options.uiConfig });\n if (!openloginAdapter.privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required for openlogin adapter\");\n }\n } else if (adapterName === WALLET_ADAPTERS.WALLET_CONNECT_V2) {\n const walletConnectAdapter = this.walletAdapters[adapterName] as WalletConnectV2Adapter;\n walletConnectAdapter.setAdapterSettings({\n adapterSettings: {\n walletConnectInitOptions: {\n // Using a default wallet connect project id for web3auth modal integration\n projectId: \"d3c63f19f9582f8ba48e982057eb096b\", // TODO: get from dashboard\n },\n },\n });\n }\n\n return adapterName;\n }\n });\n\n const adapterNames = await Promise.all(adapterConfigurationPromises);\n const hasInAppWallets = Object.values(this.walletAdapters).some((adapter) => {\n if (adapter.type !== ADAPTER_CATEGORY.IN_APP) return false;\n if (this.modalConfig.adapters?.[adapter.name]?.showOnModal !== true) return false;\n if (!this.modalConfig.adapters?.[adapter.name]?.loginMethods) return true;\n const mergedLoginMethods = getAdapterSocialLogins(\n adapter.name,\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapter.name]?.loginMethods\n );\n if (Object.values(mergedLoginMethods).some((method: LoginMethodConfig[keyof LoginMethodConfig]) => method.showOnModal)) return true;\n return false;\n });\n log.debug(hasInAppWallets, this.walletAdapters, adapterNames, \"hasInAppWallets\");\n\n // Now, initialize the adapters.\n const initPromises = adapterNames.map(async (adapterName) => {\n if (!adapterName) return;\n try {\n const adapter = this.walletAdapters[adapterName];\n // only initialize a external adapter here if it is a cached adapter.\n if (this.cachedAdapter !== adapterName && adapter.type === ADAPTER_CATEGORY.EXTERNAL) {\n return;\n }\n // in-app wallets or cached wallet (being connected or already connected) are initialized first.\n // if adapter is configured thn only initialize in app or cached adapter.\n // external wallets are initialized on INIT_EXTERNAL_WALLET event.\n this.subscribeToAdapterEvents(adapter);\n if (adapter.status === ADAPTER_STATUS.NOT_READY) await adapter.init({ autoConnect: this.cachedAdapter === adapterName });\n // note: not adding cachedWallet to modal if it is external wallet.\n // adding it later if no in-app wallets are available.\n if (adapter.type === ADAPTER_CATEGORY.IN_APP) {\n this.initializeInAppWallet(adapterName);\n }\n } catch (error) {\n log.error(error, \"error while initializing adapter\");\n }\n });\n\n this.commonJRPCProvider = await CommonJRPCProvider.getProviderInstance({ chainConfig: this.coreOptions.chainConfig as CustomChainConfig });\n this.status = ADAPTER_STATUS.READY;\n await Promise.all(initPromises);\n\n const hasExternalWallets = allAdapters.some((adapterName) => {\n return this.walletAdapters[adapterName]?.type === ADAPTER_CATEGORY.EXTERNAL && this.modalConfig.adapters?.[adapterName].showOnModal;\n });\n\n if (hasExternalWallets) {\n this.loginModal.initExternalWalletContainer();\n }\n\n // variable to check if we have any in app wallets\n // currently all default in app and external wallets can be hidden or shown based on config.\n if (!hasInAppWallets && hasExternalWallets) {\n // if no in app wallet is available then initialize external wallets in modal\n await this.initExternalWalletAdapters(false, { showExternalWalletsOnly: true });\n }\n }\n\n public async connect(): Promise<IProvider | null> {\n // if (!this.loginModal.initialized) throw new Error(\"Login modal is not initialized\");\n // if already connected return provider\n if (this.connectedAdapterName && this.status === ADAPTER_STATUS.CONNECTED && this.provider) return this.provider;\n this.loginModal.open();\n return new Promise((resolve, reject) => {\n this.once(ADAPTER_EVENTS.CONNECTED, () => {\n return resolve(this.provider);\n });\n this.once(ADAPTER_EVENTS.ERRORED, (err: unknown) => {\n return reject(err);\n });\n this.once(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, (visibility: boolean) => {\n // modal is closed but user is not connected to any wallet.\n if (!visibility && this.status !== ADAPTER_STATUS.CONNECTED) {\n return reject(new Error(\"User closed the modal\"));\n }\n });\n });\n }\n\n private async initExternalWalletAdapters(externalWalletsInitialized: boolean, options?: { showExternalWalletsOnly: boolean }): Promise<void> {\n if (externalWalletsInitialized) return;\n const adaptersConfig: Record<string, BaseAdapterConfig> = {};\n Object.keys(this.walletAdapters).forEach(async (adapterName) => {\n const adapter = this.walletAdapters[adapterName];\n if (adapter?.type === ADAPTER_CATEGORY.EXTERNAL) {\n log.debug(\"init external wallet\", this.cachedAdapter, adapterName);\n this.subscribeToAdapterEvents(adapter);\n // we are not initializing cached adapter here as it is already being initialized in initModal before.\n if (this.cachedAdapter === adapterName) {\n return;\n }\n if (adapter.status === ADAPTER_STATUS.NOT_READY) {\n await adapter\n .init({ autoConnect: this.cachedAdapter === adapterName })\n .then(() => {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n return undefined;\n })\n .catch((error) => log.error(error, \"error while initializing adapter\"));\n } else if (adapter.status === ADAPTER_STATUS.READY) {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n }\n }\n });\n }\n\n private initializeInAppWallet(adapterName: string): void {\n log.info(\"adapterInitResults\", adapterName);\n if (this.walletAdapters[adapterName].type === ADAPTER_CATEGORY.IN_APP) {\n this.loginModal.addSocialLogins(\n adapterName,\n getAdapterSocialLogins(adapterName, (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName]?.loginMethods),\n this.options.uiConfig?.loginMethodsOrder || OPENLOGIN_PROVIDERS,\n {\n ...this.options.uiConfig,\n loginGridCol: this.options.uiConfig?.loginGridCol || 3,\n primaryButton: this.options.uiConfig?.primaryButton || \"socialLogin\",\n }\n );\n }\n }\n\n private subscribeToLoginModalEvents(): void {\n this.loginModal.on(LOGIN_MODAL_EVENTS.LOGIN, async (params: { adapter: WALLET_ADAPTER_TYPE; loginParams: unknown }) => {\n try {\n await this.connectTo<unknown>(params.adapter, params.loginParams);\n } catch (error) {\n log.error(`Error while connecting to adapter: ${params.adapter}`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.INIT_EXTERNAL_WALLETS, async (params: { externalWalletsInitialized: boolean }) => {\n await this.initExternalWalletAdapters(params.externalWalletsInitialized);\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.DISCONNECT, async () => {\n try {\n await this.logout();\n } catch (error) {\n log.error(`Error while disconnecting`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, async (visibility: boolean) => {\n log.debug(\"is login modal visible\", visibility);\n this.emit(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, visibility);\n const adapter = this.walletAdapters[WALLET_ADAPTERS.WALLET_CONNECT_V2];\n if (adapter) {\n const walletConnectStatus = adapter?.status;\n log.debug(\"trying refreshing wc session\", visibility, walletConnectStatus);\n if (visibility && (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)) {\n log.debug(\"refreshing wc session\");\n\n // refreshing session for wallet connect whenever modal is opened.\n try {\n adapter.connect();\n } catch (error) {\n log.error(`Error while disconnecting to wallet connect in core`, error);\n }\n }\n if (\n !visibility &&\n this.status === ADAPTER_STATUS.CONNECTED &&\n (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)\n ) {\n log.debug(\"this stops wc adapter from trying to reconnect once proposal expires\");\n adapter.status = ADAPTER_STATUS.READY;\n }\n }\n });\n }\n}\n","module.exports = require(\"@web3auth/base\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export * from \"./config\";\nexport * from \"./interface\";\nexport * from \"./modalManager\";\n"],"names":["CHAIN_NAMESPACES","EVM_ADAPTERS","SOLANA_ADAPTERS","defaultSolanaDappModalConfig","chainNamespace","SOLANA","adapters","TORUS_SOLANA","label","showOnModal","showOnMobile","showOnDesktop","OPENLOGIN","PHANTOM","defaultEvmDappModalConfig","EIP155","TORUS_EVM","METAMASK","WALLET_CONNECT_V2","defaultSolanaWalletModalConfig","defaultEvmWalletModalConfig","defaultOtherModalConfig","OTHER","ADAPTER_CATEGORY","ADAPTER_EVENTS","ADAPTER_STATUS","getChainConfig","log","WALLET_ADAPTERS","WalletInitializationError","CommonJRPCProvider","Web3AuthNoModal","getAdapterSocialLogins","getUserLanguage","LOGIN_MODAL_EVENTS","LoginModal","OPENLOGIN_PROVIDERS","Web3Auth","constructor","options","_defineProperty","_objectSpread","providedChainConfig","chainConfig","authMode","modalConfig","Error","uiConfig","defaultLanguage","mode","loginModal","adapterListener","subscribeToLoginModalEvents","initModal","params","checkInitRequirements","allAdapters","Set","Object","keys","walletAdapters","adapterConfigurationPromises","map","adapterName","_this$modalConfig$ada","_params$modalConfig","_this$modalConfig$ada2","_this$modalConfig$ada3","adapterConfig","adapter","debug","invalidParams","type","IN_APP","EXTERNAL","cachedAdapter","_this$modalConfig$ada4","setAdapterSettings","clientId","sessionTime","web3AuthNetwork","useCoreKitKey","coreOptions","chainConfigProxy","_this$coreOptions$cha","chainId","openloginAdapter","privateKeyProvider","currentChainNamespace","currentChainConfig","incompatibleChainNameSpace","whiteLabel","walletConnectAdapter","adapterSettings","walletConnectInitOptions","projectId","adapterNames","Promise","all","hasInAppWallets","values","some","_this$modalConfig$ada5","_this$modalConfig$ada6","_adapter$name","name","loginMethods","mergedLoginMethods","method","initPromises","subscribeToAdapterEvents","status","NOT_READY","init","autoConnect","initializeInAppWallet","error","commonJRPCProvider","getProviderInstance","READY","hasExternalWallets","_this$walletAdapters$","_this$modalConfig$ada7","initExternalWalletContainer","initExternalWalletAdapters","showExternalWalletsOnly","connect","connectedAdapterName","CONNECTED","provider","open","resolve","reject","once","ERRORED","err","MODAL_VISIBILITY","visibility","externalWalletsInitialized","adaptersConfig","forEach","then","addWalletLogins","undefined","catch","info","_adapterName","_this$options$uiConfi","_this$options$uiConfi2","_this$options$uiConfi3","addSocialLogins","loginMethodsOrder","loginGridCol","primaryButton","on","LOGIN","connectTo","loginParams","INIT_EXTERNAL_WALLETS","DISCONNECT","logout","emit","walletConnectStatus","CONNECTING"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"modal.cjs.js","mappings":"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","sources":["webpack://@web3auth/modal/./src/config.ts","webpack://@web3auth/modal/external commonjs2 \"@babel/runtime/helpers/objectSpread2\"","webpack://@web3auth/modal/external commonjs2 \"@babel/runtime/helpers/defineProperty\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/base-provider\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/no-modal\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/openlogin-adapter\"","webpack://@web3auth/modal/external commonjs2 \"@web3auth/ui\"","webpack://@web3auth/modal/./src/modalManager.ts","webpack://@web3auth/modal/external commonjs2 \"@web3auth/base\"","webpack://@web3auth/modal/webpack/bootstrap","webpack://@web3auth/modal/webpack/runtime/compat get default export","webpack://@web3auth/modal/webpack/runtime/define property getters","webpack://@web3auth/modal/webpack/runtime/hasOwnProperty shorthand","webpack://@web3auth/modal/webpack/runtime/make namespace object","webpack://@web3auth/modal/./src/index.ts"],"sourcesContent":["import { CHAIN_NAMESPACES, EVM_ADAPTERS, SOLANA_ADAPTERS } from \"@web3auth/base\";\n\nimport { AdaptersModalConfig } from \"./interface\";\n\nexport const defaultSolanaDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.TORUS_SOLANA]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.PHANTOM]: {\n label: \"Phantom\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.TORUS_EVM]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.METAMASK]: {\n label: \"MetaMask\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.WALLET_CONNECT_V2]: {\n label: \"Wallet Connect\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultSolanaWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultOtherModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.OTHER,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@babel/runtime/helpers/objectSpread2\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@babel/runtime/helpers/defineProperty\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/base-provider\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/no-modal\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/openlogin-adapter\");","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@web3auth/ui\");","import {\n ADAPTER_CATEGORY,\n ADAPTER_EVENTS,\n ADAPTER_STATUS,\n BaseAdapterConfig,\n CHAIN_NAMESPACES,\n CustomChainConfig,\n getChainConfig,\n IProvider,\n log,\n LoginMethodConfig,\n WALLET_ADAPTER_TYPE,\n WALLET_ADAPTERS,\n WalletInitializationError,\n Web3AuthNoModalOptions,\n} from \"@web3auth/base\";\nimport { CommonJRPCProvider } from \"@web3auth/base-provider\";\nimport { Web3AuthNoModal } from \"@web3auth/no-modal\";\nimport { getOpenloginDefaultOptions, OpenloginAdapter } from \"@web3auth/openlogin-adapter\";\nimport { getAdapterSocialLogins, getUserLanguage, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from \"@web3auth/ui\";\nimport type { WalletConnectV2Adapter } from \"@web3auth/wallet-connect-v2-adapter\";\n\nimport {\n defaultEvmDappModalConfig,\n defaultEvmWalletModalConfig,\n defaultOtherModalConfig,\n defaultSolanaDappModalConfig,\n defaultSolanaWalletModalConfig,\n} from \"./config\";\nimport { AdaptersModalConfig, IWeb3AuthModal, ModalConfig } from \"./interface\";\n\nexport interface Web3AuthOptions extends Web3AuthNoModalOptions {\n /**\n * web3auth instance provides different adapters for different type of usages. If you are dapp and want to\n * use external wallets like metamask, then you can use the `DAPP` authMode.\n * If you are a wallet and only want to use you own wallet implementations along with openlogin,\n * then you should use `WALLET` authMode.\n *\n * @defaultValue `DAPP`\n */\n authMode?: \"DAPP\" | \"WALLET\";\n /**\n * Config for configuring modal ui display properties\n */\n uiConfig?: Omit<UIConfig, \"adapterListener\">;\n}\n\nexport class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {\n public loginModal: LoginModal;\n\n readonly options: Web3AuthOptions;\n\n private modalConfig: AdaptersModalConfig = defaultEvmDappModalConfig;\n\n constructor(options: Web3AuthOptions) {\n super(options);\n this.options = { ...options };\n const providedChainConfig = this.options.chainConfig;\n if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.SOLANA) {\n if (options.authMode === \"WALLET\") {\n // default config for solana wallet modal\n this.modalConfig = defaultSolanaWalletModalConfig;\n } else {\n // default config for solana dapp modal\n this.modalConfig = defaultSolanaDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.EIP155) {\n if (options.authMode === \"WALLET\") {\n // default config for evm wallet modal\n this.modalConfig = defaultEvmWalletModalConfig;\n } else {\n // default config for evm dapp modal\n this.modalConfig = defaultEvmDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.OTHER) {\n this.modalConfig = defaultOtherModalConfig;\n } else {\n throw new Error(`Invalid chainNamespace provided: ${providedChainConfig.chainNamespace}`);\n }\n\n if (!this.options.uiConfig) this.options.uiConfig = {};\n if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);\n if (!this.options.uiConfig.mode) this.options.uiConfig.mode = \"auto\";\n\n this.loginModal = new LoginModal({\n ...this.options.uiConfig,\n adapterListener: this,\n });\n this.subscribeToLoginModalEvents();\n }\n\n public async initModal(params?: { modalConfig?: Record<WALLET_ADAPTER_TYPE, ModalConfig> }): Promise<void> {\n super.checkInitRequirements();\n await this.loginModal.initModal();\n const providedChainConfig = this.options.chainConfig;\n // TODO: get stuff from dashboard here\n // merge default adapters with the custom configured adapters.\n const allAdapters = [...new Set([...Object.keys(this.modalConfig.adapters || {}), ...Object.keys(this.walletAdapters)])];\n\n const adapterConfigurationPromises = allAdapters.map(async (adapterName) => {\n // start with the default config of adapter.\n let adapterConfig = this.modalConfig.adapters?.[adapterName] || {\n label: adapterName,\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n };\n\n // override the default config of adapter if some config is being provided by the user.\n if (params?.modalConfig?.[adapterName]) {\n adapterConfig = { ...adapterConfig, ...params.modalConfig[adapterName] };\n }\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName] = adapterConfig as ModalConfig;\n\n // check if adapter is configured/added by user and exist in walletAdapters map.\n const adapter = this.walletAdapters[adapterName];\n log.debug(\"adapter config\", adapterName, this.modalConfig.adapters?.[adapterName].showOnModal, adapter);\n\n // if adapter is not custom configured then check if it is available in default adapters.\n // and if adapter is not hidden by user\n if (!adapter && this.modalConfig.adapters?.[adapterName].showOnModal) {\n // Adapters to be shown on modal should be pre-configured.\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const defaultOptions = getOpenloginDefaultOptions();\n const { clientId, useCoreKitKey, chainConfig, web3AuthNetwork, uiConfig, sessionTime, privateKeyProvider } = this.coreOptions;\n const finalChainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...chainConfig,\n } as CustomChainConfig;\n if (!privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required\");\n }\n const openloginAdapter = new OpenloginAdapter({\n ...defaultOptions,\n clientId,\n useCoreKitKey,\n chainConfig: { ...finalChainConfig },\n adapterSettings: { ...defaultOptions.adapterSettings, clientId, network: web3AuthNetwork, whiteLabel: uiConfig },\n sessionTime,\n web3AuthNetwork,\n privateKeyProvider,\n });\n this.walletAdapters[adapterName] = openloginAdapter;\n return adapterName;\n }\n throw WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);\n } else if (adapter?.type === ADAPTER_CATEGORY.IN_APP || adapter?.type === ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {\n if (!this.modalConfig.adapters?.[adapterName].showOnModal) return;\n // add client id to adapter, same web3auth client id can be used in adapter.\n // this id is being overridden if user is also passing client id in adapter's constructor.\n this.walletAdapters[adapterName].setAdapterSettings({\n clientId: this.options.clientId,\n sessionTime: this.options.sessionTime,\n web3AuthNetwork: this.options.web3AuthNetwork,\n useCoreKitKey: this.coreOptions.useCoreKitKey,\n });\n\n // if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace\n // and chainNamespace.\n if (!adapter.chainConfigProxy) {\n const chainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...this.coreOptions.chainConfig,\n } as CustomChainConfig;\n this.walletAdapters[adapterName].setAdapterSettings({ chainConfig });\n }\n\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const openloginAdapter = this.walletAdapters[adapterName] as OpenloginAdapter;\n if (this.coreOptions.privateKeyProvider) {\n if (openloginAdapter.currentChainNamespace !== this.coreOptions.privateKeyProvider.currentChainConfig.chainNamespace) {\n throw WalletInitializationError.incompatibleChainNameSpace(\n \"private key provider is not compatible with provided chainNamespace for openlogin adapter\"\n );\n }\n openloginAdapter.setAdapterSettings({ privateKeyProvider: this.coreOptions.privateKeyProvider });\n }\n openloginAdapter.setAdapterSettings({ whiteLabel: this.options.uiConfig });\n if (!openloginAdapter.privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required for openlogin adapter\");\n }\n } else if (adapterName === WALLET_ADAPTERS.WALLET_CONNECT_V2) {\n const walletConnectAdapter = this.walletAdapters[adapterName] as WalletConnectV2Adapter;\n walletConnectAdapter.setAdapterSettings({\n adapterSettings: {\n walletConnectInitOptions: {\n // Using a default wallet connect project id for web3auth modal integration\n projectId: \"d3c63f19f9582f8ba48e982057eb096b\", // TODO: get from dashboard\n },\n },\n });\n }\n\n return adapterName;\n }\n });\n\n const adapterNames = await Promise.all(adapterConfigurationPromises);\n const hasInAppWallets = Object.values(this.walletAdapters).some((adapter) => {\n if (adapter.type !== ADAPTER_CATEGORY.IN_APP) return false;\n if (this.modalConfig.adapters?.[adapter.name]?.showOnModal !== true) return false;\n if (!this.modalConfig.adapters?.[adapter.name]?.loginMethods) return true;\n const mergedLoginMethods = getAdapterSocialLogins(\n adapter.name,\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapter.name]?.loginMethods\n );\n if (Object.values(mergedLoginMethods).some((method: LoginMethodConfig[keyof LoginMethodConfig]) => method.showOnModal)) return true;\n return false;\n });\n log.debug(hasInAppWallets, this.walletAdapters, adapterNames, \"hasInAppWallets\");\n\n // Now, initialize the adapters.\n const initPromises = adapterNames.map(async (adapterName) => {\n if (!adapterName) return;\n try {\n const adapter = this.walletAdapters[adapterName];\n // only initialize a external adapter here if it is a cached adapter.\n if (this.cachedAdapter !== adapterName && adapter.type === ADAPTER_CATEGORY.EXTERNAL) {\n return;\n }\n // in-app wallets or cached wallet (being connected or already connected) are initialized first.\n // if adapter is configured thn only initialize in app or cached adapter.\n // external wallets are initialized on INIT_EXTERNAL_WALLET event.\n this.subscribeToAdapterEvents(adapter);\n if (adapter.status === ADAPTER_STATUS.NOT_READY) await adapter.init({ autoConnect: this.cachedAdapter === adapterName });\n // note: not adding cachedWallet to modal if it is external wallet.\n // adding it later if no in-app wallets are available.\n if (adapter.type === ADAPTER_CATEGORY.IN_APP) {\n this.initializeInAppWallet(adapterName);\n }\n } catch (error) {\n log.error(error, \"error while initializing adapter\");\n }\n });\n\n this.commonJRPCProvider = await CommonJRPCProvider.getProviderInstance({ chainConfig: this.coreOptions.chainConfig as CustomChainConfig });\n this.status = ADAPTER_STATUS.READY;\n await Promise.all(initPromises);\n\n const hasExternalWallets = allAdapters.some((adapterName) => {\n return this.walletAdapters[adapterName]?.type === ADAPTER_CATEGORY.EXTERNAL && this.modalConfig.adapters?.[adapterName].showOnModal;\n });\n\n if (hasExternalWallets) {\n this.loginModal.initExternalWalletContainer();\n }\n\n // variable to check if we have any in app wallets\n // currently all default in app and external wallets can be hidden or shown based on config.\n if (!hasInAppWallets && hasExternalWallets) {\n // if no in app wallet is available then initialize external wallets in modal\n await this.initExternalWalletAdapters(false, { showExternalWalletsOnly: true });\n }\n }\n\n public async connect(): Promise<IProvider | null> {\n // if (!this.loginModal.initialized) throw new Error(\"Login modal is not initialized\");\n // if already connected return provider\n if (this.connectedAdapterName && this.status === ADAPTER_STATUS.CONNECTED && this.provider) return this.provider;\n this.loginModal.open();\n return new Promise((resolve, reject) => {\n this.once(ADAPTER_EVENTS.CONNECTED, () => {\n return resolve(this.provider);\n });\n this.once(ADAPTER_EVENTS.ERRORED, (err: unknown) => {\n return reject(err);\n });\n this.once(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, (visibility: boolean) => {\n // modal is closed but user is not connected to any wallet.\n if (!visibility && this.status !== ADAPTER_STATUS.CONNECTED) {\n return reject(new Error(\"User closed the modal\"));\n }\n });\n });\n }\n\n private async initExternalWalletAdapters(externalWalletsInitialized: boolean, options?: { showExternalWalletsOnly: boolean }): Promise<void> {\n if (externalWalletsInitialized) return;\n const adaptersConfig: Record<string, BaseAdapterConfig> = {};\n Object.keys(this.walletAdapters).forEach(async (adapterName) => {\n const adapter = this.walletAdapters[adapterName];\n if (adapter?.type === ADAPTER_CATEGORY.EXTERNAL) {\n log.debug(\"init external wallet\", this.cachedAdapter, adapterName);\n this.subscribeToAdapterEvents(adapter);\n // we are not initializing cached adapter here as it is already being initialized in initModal before.\n if (this.cachedAdapter === adapterName) {\n return;\n }\n if (adapter.status === ADAPTER_STATUS.NOT_READY) {\n await adapter\n .init({ autoConnect: this.cachedAdapter === adapterName })\n .then(() => {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n return undefined;\n })\n .catch((error) => log.error(error, \"error while initializing adapter\"));\n } else if (adapter.status === ADAPTER_STATUS.READY) {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n }\n }\n });\n }\n\n private initializeInAppWallet(adapterName: string): void {\n log.info(\"adapterInitResults\", adapterName);\n if (this.walletAdapters[adapterName].type === ADAPTER_CATEGORY.IN_APP) {\n this.loginModal.addSocialLogins(\n adapterName,\n getAdapterSocialLogins(adapterName, (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName]?.loginMethods),\n this.options.uiConfig?.loginMethodsOrder || OPENLOGIN_PROVIDERS,\n {\n ...this.options.uiConfig,\n loginGridCol: this.options.uiConfig?.loginGridCol || 3,\n primaryButton: this.options.uiConfig?.primaryButton || \"socialLogin\",\n }\n );\n }\n }\n\n private subscribeToLoginModalEvents(): void {\n this.loginModal.on(LOGIN_MODAL_EVENTS.LOGIN, async (params: { adapter: WALLET_ADAPTER_TYPE; loginParams: unknown }) => {\n try {\n await this.connectTo<unknown>(params.adapter, params.loginParams);\n } catch (error) {\n log.error(`Error while connecting to adapter: ${params.adapter}`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.INIT_EXTERNAL_WALLETS, async (params: { externalWalletsInitialized: boolean }) => {\n await this.initExternalWalletAdapters(params.externalWalletsInitialized);\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.DISCONNECT, async () => {\n try {\n await this.logout();\n } catch (error) {\n log.error(`Error while disconnecting`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, async (visibility: boolean) => {\n log.debug(\"is login modal visible\", visibility);\n this.emit(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, visibility);\n const adapter = this.walletAdapters[WALLET_ADAPTERS.WALLET_CONNECT_V2];\n if (adapter) {\n const walletConnectStatus = adapter?.status;\n log.debug(\"trying refreshing wc session\", visibility, walletConnectStatus);\n if (visibility && (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)) {\n log.debug(\"refreshing wc session\");\n\n // refreshing session for wallet connect whenever modal is opened.\n try {\n adapter.connect();\n } catch (error) {\n log.error(`Error while disconnecting to wallet connect in core`, error);\n }\n }\n if (\n !visibility &&\n this.status === ADAPTER_STATUS.CONNECTED &&\n (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)\n ) {\n log.debug(\"this stops wc adapter from trying to reconnect once proposal expires\");\n adapter.status = ADAPTER_STATUS.READY;\n }\n }\n });\n }\n}\n","module.exports = require(\"@web3auth/base\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export * from \"./config\";\nexport * from \"./interface\";\nexport * from \"./modalManager\";\n"],"names":["CHAIN_NAMESPACES","EVM_ADAPTERS","SOLANA_ADAPTERS","defaultSolanaDappModalConfig","chainNamespace","SOLANA","adapters","TORUS_SOLANA","label","showOnModal","showOnMobile","showOnDesktop","OPENLOGIN","PHANTOM","defaultEvmDappModalConfig","EIP155","TORUS_EVM","METAMASK","WALLET_CONNECT_V2","defaultSolanaWalletModalConfig","defaultEvmWalletModalConfig","defaultOtherModalConfig","OTHER","ADAPTER_CATEGORY","ADAPTER_EVENTS","ADAPTER_STATUS","getChainConfig","log","WALLET_ADAPTERS","WalletInitializationError","CommonJRPCProvider","Web3AuthNoModal","getOpenloginDefaultOptions","OpenloginAdapter","getAdapterSocialLogins","getUserLanguage","LOGIN_MODAL_EVENTS","LoginModal","OPENLOGIN_PROVIDERS","Web3Auth","constructor","options","_defineProperty","_objectSpread","providedChainConfig","chainConfig","authMode","modalConfig","Error","uiConfig","defaultLanguage","mode","loginModal","adapterListener","subscribeToLoginModalEvents","initModal","params","checkInitRequirements","allAdapters","Set","Object","keys","walletAdapters","adapterConfigurationPromises","map","adapterName","_this$modalConfig$ada","_params$modalConfig","_this$modalConfig$ada2","_this$modalConfig$ada3","adapterConfig","adapter","debug","_this$coreOptions$cha","defaultOptions","clientId","useCoreKitKey","web3AuthNetwork","sessionTime","privateKeyProvider","coreOptions","finalChainConfig","chainId","invalidParams","openloginAdapter","adapterSettings","network","whiteLabel","type","IN_APP","EXTERNAL","cachedAdapter","_this$modalConfig$ada4","setAdapterSettings","chainConfigProxy","_this$coreOptions$cha2","currentChainNamespace","currentChainConfig","incompatibleChainNameSpace","walletConnectAdapter","walletConnectInitOptions","projectId","adapterNames","Promise","all","hasInAppWallets","values","some","_this$modalConfig$ada5","_this$modalConfig$ada6","_adapter$name","name","loginMethods","mergedLoginMethods","method","initPromises","subscribeToAdapterEvents","status","NOT_READY","init","autoConnect","initializeInAppWallet","error","commonJRPCProvider","getProviderInstance","READY","hasExternalWallets","_this$walletAdapters$","_this$modalConfig$ada7","initExternalWalletContainer","initExternalWalletAdapters","showExternalWalletsOnly","connect","connectedAdapterName","CONNECTED","provider","open","resolve","reject","once","ERRORED","err","MODAL_VISIBILITY","visibility","externalWalletsInitialized","adaptersConfig","forEach","then","addWalletLogins","undefined","catch","info","_adapterName","_this$options$uiConfi","_this$options$uiConfi2","_this$options$uiConfi3","addSocialLogins","loginMethodsOrder","loginGridCol","primaryButton","on","LOGIN","connectTo","loginParams","INIT_EXTERNAL_WALLETS","DISCONNECT","logout","emit","walletConnectStatus","CONNECTING"],"sourceRoot":""}
|
package/dist/modal.esm.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { CHAIN_NAMESPACES, SOLANA_ADAPTERS, EVM_ADAPTERS, log,
|
|
1
|
+
import { CHAIN_NAMESPACES, SOLANA_ADAPTERS, EVM_ADAPTERS, log, WALLET_ADAPTERS, getChainConfig, WalletInitializationError, 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
|
+
import { getOpenloginDefaultOptions, OpenloginAdapter } from '@web3auth/openlogin-adapter';
|
|
6
7
|
import { getUserLanguage, LoginModal, getAdapterSocialLogins, LOGIN_MODAL_EVENTS, OPENLOGIN_PROVIDERS } from '@web3auth/ui';
|
|
7
8
|
|
|
8
9
|
const defaultSolanaDappModalConfig = {
|
|
@@ -159,6 +160,38 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
159
160
|
// and if adapter is not hidden by user
|
|
160
161
|
if (!adapter && (_this$modalConfig$ada3 = this.modalConfig.adapters) !== null && _this$modalConfig$ada3 !== void 0 && _this$modalConfig$ada3[adapterName].showOnModal) {
|
|
161
162
|
// Adapters to be shown on modal should be pre-configured.
|
|
163
|
+
if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {
|
|
164
|
+
var _this$coreOptions$cha;
|
|
165
|
+
const defaultOptions = getOpenloginDefaultOptions();
|
|
166
|
+
const {
|
|
167
|
+
clientId,
|
|
168
|
+
useCoreKitKey,
|
|
169
|
+
chainConfig,
|
|
170
|
+
web3AuthNetwork,
|
|
171
|
+
uiConfig,
|
|
172
|
+
sessionTime,
|
|
173
|
+
privateKeyProvider
|
|
174
|
+
} = this.coreOptions;
|
|
175
|
+
const finalChainConfig = _objectSpread(_objectSpread({}, getChainConfig(providedChainConfig.chainNamespace, (_this$coreOptions$cha = this.coreOptions.chainConfig) === null || _this$coreOptions$cha === void 0 ? void 0 : _this$coreOptions$cha.chainId)), chainConfig);
|
|
176
|
+
if (!privateKeyProvider) {
|
|
177
|
+
throw WalletInitializationError.invalidParams("privateKeyProvider is required");
|
|
178
|
+
}
|
|
179
|
+
const openloginAdapter = new OpenloginAdapter(_objectSpread(_objectSpread({}, defaultOptions), {}, {
|
|
180
|
+
clientId,
|
|
181
|
+
useCoreKitKey,
|
|
182
|
+
chainConfig: _objectSpread({}, finalChainConfig),
|
|
183
|
+
adapterSettings: _objectSpread(_objectSpread({}, defaultOptions.adapterSettings), {}, {
|
|
184
|
+
clientId,
|
|
185
|
+
network: web3AuthNetwork,
|
|
186
|
+
whiteLabel: uiConfig
|
|
187
|
+
}),
|
|
188
|
+
sessionTime,
|
|
189
|
+
web3AuthNetwork,
|
|
190
|
+
privateKeyProvider
|
|
191
|
+
}));
|
|
192
|
+
this.walletAdapters[adapterName] = openloginAdapter;
|
|
193
|
+
return adapterName;
|
|
194
|
+
}
|
|
162
195
|
throw WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);
|
|
163
196
|
} else if ((adapter === null || adapter === void 0 ? void 0 : adapter.type) === ADAPTER_CATEGORY.IN_APP || (adapter === null || adapter === void 0 ? void 0 : adapter.type) === ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {
|
|
164
197
|
var _this$modalConfig$ada4;
|
|
@@ -175,8 +208,8 @@ class Web3Auth extends Web3AuthNoModal {
|
|
|
175
208
|
// if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace
|
|
176
209
|
// and chainNamespace.
|
|
177
210
|
if (!adapter.chainConfigProxy) {
|
|
178
|
-
var _this$coreOptions$
|
|
179
|
-
const chainConfig = _objectSpread(_objectSpread({}, getChainConfig(providedChainConfig.chainNamespace, (_this$coreOptions$
|
|
211
|
+
var _this$coreOptions$cha2;
|
|
212
|
+
const chainConfig = _objectSpread(_objectSpread({}, getChainConfig(providedChainConfig.chainNamespace, (_this$coreOptions$cha2 = this.coreOptions.chainConfig) === null || _this$coreOptions$cha2 === void 0 ? void 0 : _this$coreOptions$cha2.chainId)), this.coreOptions.chainConfig);
|
|
180
213
|
this.walletAdapters[adapterName].setAdapterSettings({
|
|
181
214
|
chainConfig
|
|
182
215
|
});
|
package/dist/modal.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.esm.js","sources":["../src/config.ts","../src/modalManager.ts"],"sourcesContent":["import { CHAIN_NAMESPACES, EVM_ADAPTERS, SOLANA_ADAPTERS } from \"@web3auth/base\";\n\nimport { AdaptersModalConfig } from \"./interface\";\n\nexport const defaultSolanaDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.TORUS_SOLANA]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.PHANTOM]: {\n label: \"Phantom\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.TORUS_EVM]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.METAMASK]: {\n label: \"MetaMask\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.WALLET_CONNECT_V2]: {\n label: \"Wallet Connect\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultSolanaWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultOtherModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.OTHER,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n","import {\n ADAPTER_CATEGORY,\n ADAPTER_EVENTS,\n ADAPTER_STATUS,\n BaseAdapterConfig,\n CHAIN_NAMESPACES,\n CustomChainConfig,\n getChainConfig,\n IProvider,\n log,\n LoginMethodConfig,\n WALLET_ADAPTER_TYPE,\n WALLET_ADAPTERS,\n WalletInitializationError,\n Web3AuthNoModalOptions,\n} from \"@web3auth/base\";\nimport { CommonJRPCProvider } from \"@web3auth/base-provider\";\nimport { Web3AuthNoModal } from \"@web3auth/no-modal\";\nimport type { OpenloginAdapter } from \"@web3auth/openlogin-adapter\";\nimport { getAdapterSocialLogins, getUserLanguage, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from \"@web3auth/ui\";\nimport type { WalletConnectV2Adapter } from \"@web3auth/wallet-connect-v2-adapter\";\n\nimport {\n defaultEvmDappModalConfig,\n defaultEvmWalletModalConfig,\n defaultOtherModalConfig,\n defaultSolanaDappModalConfig,\n defaultSolanaWalletModalConfig,\n} from \"./config\";\nimport { AdaptersModalConfig, IWeb3AuthModal, ModalConfig } from \"./interface\";\n\nexport interface Web3AuthOptions extends Web3AuthNoModalOptions {\n /**\n * web3auth instance provides different adapters for different type of usages. If you are dapp and want to\n * use external wallets like metamask, then you can use the `DAPP` authMode.\n * If you are a wallet and only want to use you own wallet implementations along with openlogin,\n * then you should use `WALLET` authMode.\n *\n * @defaultValue `DAPP`\n */\n authMode?: \"DAPP\" | \"WALLET\";\n /**\n * Config for configuring modal ui display properties\n */\n uiConfig?: Omit<UIConfig, \"adapterListener\">;\n}\n\nexport class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {\n public loginModal: LoginModal;\n\n readonly options: Web3AuthOptions;\n\n private modalConfig: AdaptersModalConfig = defaultEvmDappModalConfig;\n\n constructor(options: Web3AuthOptions) {\n super(options);\n this.options = { ...options };\n const providedChainConfig = this.options.chainConfig;\n if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.SOLANA) {\n if (options.authMode === \"WALLET\") {\n // default config for solana wallet modal\n this.modalConfig = defaultSolanaWalletModalConfig;\n } else {\n // default config for solana dapp modal\n this.modalConfig = defaultSolanaDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.EIP155) {\n if (options.authMode === \"WALLET\") {\n // default config for evm wallet modal\n this.modalConfig = defaultEvmWalletModalConfig;\n } else {\n // default config for evm dapp modal\n this.modalConfig = defaultEvmDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.OTHER) {\n this.modalConfig = defaultOtherModalConfig;\n } else {\n throw new Error(`Invalid chainNamespace provided: ${providedChainConfig.chainNamespace}`);\n }\n\n if (!this.options.uiConfig) this.options.uiConfig = {};\n if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);\n if (!this.options.uiConfig.mode) this.options.uiConfig.mode = \"auto\";\n\n this.loginModal = new LoginModal({\n ...this.options.uiConfig,\n adapterListener: this,\n });\n this.subscribeToLoginModalEvents();\n }\n\n public async initModal(params?: { modalConfig?: Record<WALLET_ADAPTER_TYPE, ModalConfig> }): Promise<void> {\n super.checkInitRequirements();\n await this.loginModal.initModal();\n const providedChainConfig = this.options.chainConfig;\n // TODO: get stuff from dashboard here\n // merge default adapters with the custom configured adapters.\n const allAdapters = [...new Set([...Object.keys(this.modalConfig.adapters || {}), ...Object.keys(this.walletAdapters)])];\n\n const adapterConfigurationPromises = allAdapters.map(async (adapterName) => {\n // start with the default config of adapter.\n let adapterConfig = this.modalConfig.adapters?.[adapterName] || {\n label: adapterName,\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n };\n\n // override the default config of adapter if some config is being provided by the user.\n if (params?.modalConfig?.[adapterName]) {\n adapterConfig = { ...adapterConfig, ...params.modalConfig[adapterName] };\n }\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName] = adapterConfig as ModalConfig;\n\n // check if adapter is configured/added by user and exist in walletAdapters map.\n const adapter = this.walletAdapters[adapterName];\n log.debug(\"adapter config\", adapterName, this.modalConfig.adapters?.[adapterName].showOnModal, adapter);\n\n // if adapter is not custom configured then check if it is available in default adapters.\n // and if adapter is not hidden by user\n if (!adapter && this.modalConfig.adapters?.[adapterName].showOnModal) {\n // Adapters to be shown on modal should be pre-configured.\n throw WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);\n } else if (adapter?.type === ADAPTER_CATEGORY.IN_APP || adapter?.type === ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {\n if (!this.modalConfig.adapters?.[adapterName].showOnModal) return;\n // add client id to adapter, same web3auth client id can be used in adapter.\n // this id is being overridden if user is also passing client id in adapter's constructor.\n this.walletAdapters[adapterName].setAdapterSettings({\n clientId: this.options.clientId,\n sessionTime: this.options.sessionTime,\n web3AuthNetwork: this.options.web3AuthNetwork,\n useCoreKitKey: this.coreOptions.useCoreKitKey,\n });\n\n // if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace\n // and chainNamespace.\n if (!adapter.chainConfigProxy) {\n const chainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...this.coreOptions.chainConfig,\n } as CustomChainConfig;\n this.walletAdapters[adapterName].setAdapterSettings({ chainConfig });\n }\n\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const openloginAdapter = this.walletAdapters[adapterName] as OpenloginAdapter;\n if (this.coreOptions.privateKeyProvider) {\n if (openloginAdapter.currentChainNamespace !== this.coreOptions.privateKeyProvider.currentChainConfig.chainNamespace) {\n throw WalletInitializationError.incompatibleChainNameSpace(\n \"private key provider is not compatible with provided chainNamespace for openlogin adapter\"\n );\n }\n openloginAdapter.setAdapterSettings({ privateKeyProvider: this.coreOptions.privateKeyProvider });\n }\n openloginAdapter.setAdapterSettings({ whiteLabel: this.options.uiConfig });\n if (!openloginAdapter.privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required for openlogin adapter\");\n }\n } else if (adapterName === WALLET_ADAPTERS.WALLET_CONNECT_V2) {\n const walletConnectAdapter = this.walletAdapters[adapterName] as WalletConnectV2Adapter;\n walletConnectAdapter.setAdapterSettings({\n adapterSettings: {\n walletConnectInitOptions: {\n // Using a default wallet connect project id for web3auth modal integration\n projectId: \"d3c63f19f9582f8ba48e982057eb096b\", // TODO: get from dashboard\n },\n },\n });\n }\n\n return adapterName;\n }\n });\n\n const adapterNames = await Promise.all(adapterConfigurationPromises);\n const hasInAppWallets = Object.values(this.walletAdapters).some((adapter) => {\n if (adapter.type !== ADAPTER_CATEGORY.IN_APP) return false;\n if (this.modalConfig.adapters?.[adapter.name]?.showOnModal !== true) return false;\n if (!this.modalConfig.adapters?.[adapter.name]?.loginMethods) return true;\n const mergedLoginMethods = getAdapterSocialLogins(\n adapter.name,\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapter.name]?.loginMethods\n );\n if (Object.values(mergedLoginMethods).some((method: LoginMethodConfig[keyof LoginMethodConfig]) => method.showOnModal)) return true;\n return false;\n });\n log.debug(hasInAppWallets, this.walletAdapters, adapterNames, \"hasInAppWallets\");\n\n // Now, initialize the adapters.\n const initPromises = adapterNames.map(async (adapterName) => {\n if (!adapterName) return;\n try {\n const adapter = this.walletAdapters[adapterName];\n // only initialize a external adapter here if it is a cached adapter.\n if (this.cachedAdapter !== adapterName && adapter.type === ADAPTER_CATEGORY.EXTERNAL) {\n return;\n }\n // in-app wallets or cached wallet (being connected or already connected) are initialized first.\n // if adapter is configured thn only initialize in app or cached adapter.\n // external wallets are initialized on INIT_EXTERNAL_WALLET event.\n this.subscribeToAdapterEvents(adapter);\n if (adapter.status === ADAPTER_STATUS.NOT_READY) await adapter.init({ autoConnect: this.cachedAdapter === adapterName });\n // note: not adding cachedWallet to modal if it is external wallet.\n // adding it later if no in-app wallets are available.\n if (adapter.type === ADAPTER_CATEGORY.IN_APP) {\n this.initializeInAppWallet(adapterName);\n }\n } catch (error) {\n log.error(error, \"error while initializing adapter\");\n }\n });\n\n this.commonJRPCProvider = await CommonJRPCProvider.getProviderInstance({ chainConfig: this.coreOptions.chainConfig as CustomChainConfig });\n this.status = ADAPTER_STATUS.READY;\n await Promise.all(initPromises);\n\n const hasExternalWallets = allAdapters.some((adapterName) => {\n return this.walletAdapters[adapterName]?.type === ADAPTER_CATEGORY.EXTERNAL && this.modalConfig.adapters?.[adapterName].showOnModal;\n });\n\n if (hasExternalWallets) {\n this.loginModal.initExternalWalletContainer();\n }\n\n // variable to check if we have any in app wallets\n // currently all default in app and external wallets can be hidden or shown based on config.\n if (!hasInAppWallets && hasExternalWallets) {\n // if no in app wallet is available then initialize external wallets in modal\n await this.initExternalWalletAdapters(false, { showExternalWalletsOnly: true });\n }\n }\n\n public async connect(): Promise<IProvider | null> {\n // if (!this.loginModal.initialized) throw new Error(\"Login modal is not initialized\");\n // if already connected return provider\n if (this.connectedAdapterName && this.status === ADAPTER_STATUS.CONNECTED && this.provider) return this.provider;\n this.loginModal.open();\n return new Promise((resolve, reject) => {\n this.once(ADAPTER_EVENTS.CONNECTED, () => {\n return resolve(this.provider);\n });\n this.once(ADAPTER_EVENTS.ERRORED, (err: unknown) => {\n return reject(err);\n });\n this.once(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, (visibility: boolean) => {\n // modal is closed but user is not connected to any wallet.\n if (!visibility && this.status !== ADAPTER_STATUS.CONNECTED) {\n return reject(new Error(\"User closed the modal\"));\n }\n });\n });\n }\n\n private async initExternalWalletAdapters(externalWalletsInitialized: boolean, options?: { showExternalWalletsOnly: boolean }): Promise<void> {\n if (externalWalletsInitialized) return;\n const adaptersConfig: Record<string, BaseAdapterConfig> = {};\n Object.keys(this.walletAdapters).forEach(async (adapterName) => {\n const adapter = this.walletAdapters[adapterName];\n if (adapter?.type === ADAPTER_CATEGORY.EXTERNAL) {\n log.debug(\"init external wallet\", this.cachedAdapter, adapterName);\n this.subscribeToAdapterEvents(adapter);\n // we are not initializing cached adapter here as it is already being initialized in initModal before.\n if (this.cachedAdapter === adapterName) {\n return;\n }\n if (adapter.status === ADAPTER_STATUS.NOT_READY) {\n await adapter\n .init({ autoConnect: this.cachedAdapter === adapterName })\n .then(() => {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n return undefined;\n })\n .catch((error) => log.error(error, \"error while initializing adapter\"));\n } else if (adapter.status === ADAPTER_STATUS.READY) {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n }\n }\n });\n }\n\n private initializeInAppWallet(adapterName: string): void {\n log.info(\"adapterInitResults\", adapterName);\n if (this.walletAdapters[adapterName].type === ADAPTER_CATEGORY.IN_APP) {\n this.loginModal.addSocialLogins(\n adapterName,\n getAdapterSocialLogins(adapterName, (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName]?.loginMethods),\n this.options.uiConfig?.loginMethodsOrder || OPENLOGIN_PROVIDERS,\n {\n ...this.options.uiConfig,\n loginGridCol: this.options.uiConfig?.loginGridCol || 3,\n primaryButton: this.options.uiConfig?.primaryButton || \"socialLogin\",\n }\n );\n }\n }\n\n private subscribeToLoginModalEvents(): void {\n this.loginModal.on(LOGIN_MODAL_EVENTS.LOGIN, async (params: { adapter: WALLET_ADAPTER_TYPE; loginParams: unknown }) => {\n try {\n await this.connectTo<unknown>(params.adapter, params.loginParams);\n } catch (error) {\n log.error(`Error while connecting to adapter: ${params.adapter}`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.INIT_EXTERNAL_WALLETS, async (params: { externalWalletsInitialized: boolean }) => {\n await this.initExternalWalletAdapters(params.externalWalletsInitialized);\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.DISCONNECT, async () => {\n try {\n await this.logout();\n } catch (error) {\n log.error(`Error while disconnecting`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, async (visibility: boolean) => {\n log.debug(\"is login modal visible\", visibility);\n this.emit(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, visibility);\n const adapter = this.walletAdapters[WALLET_ADAPTERS.WALLET_CONNECT_V2];\n if (adapter) {\n const walletConnectStatus = adapter?.status;\n log.debug(\"trying refreshing wc session\", visibility, walletConnectStatus);\n if (visibility && (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)) {\n log.debug(\"refreshing wc session\");\n\n // refreshing session for wallet connect whenever modal is opened.\n try {\n adapter.connect();\n } catch (error) {\n log.error(`Error while disconnecting to wallet connect in core`, error);\n }\n }\n if (\n !visibility &&\n this.status === ADAPTER_STATUS.CONNECTED &&\n (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)\n ) {\n log.debug(\"this stops wc adapter from trying to reconnect once proposal expires\");\n adapter.status = ADAPTER_STATUS.READY;\n }\n }\n });\n }\n}\n"],"names":["defaultSolanaDappModalConfig","chainNamespace","CHAIN_NAMESPACES","SOLANA","adapters","SOLANA_ADAPTERS","TORUS_SOLANA","label","showOnModal","showOnMobile","showOnDesktop","OPENLOGIN","PHANTOM","defaultEvmDappModalConfig","EIP155","EVM_ADAPTERS","TORUS_EVM","METAMASK","WALLET_CONNECT_V2","defaultSolanaWalletModalConfig","defaultEvmWalletModalConfig","defaultOtherModalConfig","OTHER","Web3Auth","Web3AuthNoModal","constructor","options","_defineProperty","_objectSpread","providedChainConfig","chainConfig","authMode","modalConfig","Error","uiConfig","defaultLanguage","getUserLanguage","mode","loginModal","LoginModal","adapterListener","subscribeToLoginModalEvents","initModal","params","checkInitRequirements","allAdapters","Set","Object","keys","walletAdapters","adapterConfigurationPromises","map","adapterName","_this$modalConfig$ada","_params$modalConfig","_this$modalConfig$ada2","_this$modalConfig$ada3","adapterConfig","adapter","log","debug","WalletInitializationError","invalidParams","type","ADAPTER_CATEGORY","IN_APP","EXTERNAL","cachedAdapter","_this$modalConfig$ada4","setAdapterSettings","clientId","sessionTime","web3AuthNetwork","useCoreKitKey","coreOptions","chainConfigProxy","_this$coreOptions$cha","getChainConfig","chainId","WALLET_ADAPTERS","openloginAdapter","privateKeyProvider","currentChainNamespace","currentChainConfig","incompatibleChainNameSpace","whiteLabel","walletConnectAdapter","adapterSettings","walletConnectInitOptions","projectId","adapterNames","Promise","all","hasInAppWallets","values","some","_this$modalConfig$ada5","_this$modalConfig$ada6","_adapter$name","name","loginMethods","mergedLoginMethods","getAdapterSocialLogins","method","initPromises","subscribeToAdapterEvents","status","ADAPTER_STATUS","NOT_READY","init","autoConnect","initializeInAppWallet","error","commonJRPCProvider","CommonJRPCProvider","getProviderInstance","READY","hasExternalWallets","_this$walletAdapters$","_this$modalConfig$ada7","initExternalWalletContainer","initExternalWalletAdapters","showExternalWalletsOnly","connect","connectedAdapterName","CONNECTED","provider","open","resolve","reject","once","ADAPTER_EVENTS","ERRORED","err","LOGIN_MODAL_EVENTS","MODAL_VISIBILITY","visibility","externalWalletsInitialized","adaptersConfig","forEach","then","addWalletLogins","undefined","catch","info","_adapterName","_this$options$uiConfi","_this$options$uiConfi2","_this$options$uiConfi3","addSocialLogins","loginMethodsOrder","OPENLOGIN_PROVIDERS","loginGridCol","primaryButton","on","LOGIN","connectTo","loginParams","INIT_EXTERNAL_WALLETS","DISCONNECT","logout","emit","walletConnectStatus","CONNECTING"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modal.esm.js","sources":["../src/config.ts","../src/modalManager.ts"],"sourcesContent":["import { CHAIN_NAMESPACES, EVM_ADAPTERS, SOLANA_ADAPTERS } from \"@web3auth/base\";\n\nimport { AdaptersModalConfig } from \"./interface\";\n\nexport const defaultSolanaDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.TORUS_SOLANA]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [SOLANA_ADAPTERS.PHANTOM]: {\n label: \"Phantom\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmDappModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.TORUS_EVM]: {\n label: \"Torus Wallet\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.METAMASK]: {\n label: \"MetaMask\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n [EVM_ADAPTERS.WALLET_CONNECT_V2]: {\n label: \"Wallet Connect\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultSolanaWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.SOLANA,\n adapters: {\n [SOLANA_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultEvmWalletModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.EIP155,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n\nexport const defaultOtherModalConfig: AdaptersModalConfig = {\n chainNamespace: CHAIN_NAMESPACES.OTHER,\n adapters: {\n [EVM_ADAPTERS.OPENLOGIN]: {\n label: \"OpenLogin\",\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n },\n },\n};\n","import {\n ADAPTER_CATEGORY,\n ADAPTER_EVENTS,\n ADAPTER_STATUS,\n BaseAdapterConfig,\n CHAIN_NAMESPACES,\n CustomChainConfig,\n getChainConfig,\n IProvider,\n log,\n LoginMethodConfig,\n WALLET_ADAPTER_TYPE,\n WALLET_ADAPTERS,\n WalletInitializationError,\n Web3AuthNoModalOptions,\n} from \"@web3auth/base\";\nimport { CommonJRPCProvider } from \"@web3auth/base-provider\";\nimport { Web3AuthNoModal } from \"@web3auth/no-modal\";\nimport { getOpenloginDefaultOptions, OpenloginAdapter } from \"@web3auth/openlogin-adapter\";\nimport { getAdapterSocialLogins, getUserLanguage, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from \"@web3auth/ui\";\nimport type { WalletConnectV2Adapter } from \"@web3auth/wallet-connect-v2-adapter\";\n\nimport {\n defaultEvmDappModalConfig,\n defaultEvmWalletModalConfig,\n defaultOtherModalConfig,\n defaultSolanaDappModalConfig,\n defaultSolanaWalletModalConfig,\n} from \"./config\";\nimport { AdaptersModalConfig, IWeb3AuthModal, ModalConfig } from \"./interface\";\n\nexport interface Web3AuthOptions extends Web3AuthNoModalOptions {\n /**\n * web3auth instance provides different adapters for different type of usages. If you are dapp and want to\n * use external wallets like metamask, then you can use the `DAPP` authMode.\n * If you are a wallet and only want to use you own wallet implementations along with openlogin,\n * then you should use `WALLET` authMode.\n *\n * @defaultValue `DAPP`\n */\n authMode?: \"DAPP\" | \"WALLET\";\n /**\n * Config for configuring modal ui display properties\n */\n uiConfig?: Omit<UIConfig, \"adapterListener\">;\n}\n\nexport class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {\n public loginModal: LoginModal;\n\n readonly options: Web3AuthOptions;\n\n private modalConfig: AdaptersModalConfig = defaultEvmDappModalConfig;\n\n constructor(options: Web3AuthOptions) {\n super(options);\n this.options = { ...options };\n const providedChainConfig = this.options.chainConfig;\n if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.SOLANA) {\n if (options.authMode === \"WALLET\") {\n // default config for solana wallet modal\n this.modalConfig = defaultSolanaWalletModalConfig;\n } else {\n // default config for solana dapp modal\n this.modalConfig = defaultSolanaDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.EIP155) {\n if (options.authMode === \"WALLET\") {\n // default config for evm wallet modal\n this.modalConfig = defaultEvmWalletModalConfig;\n } else {\n // default config for evm dapp modal\n this.modalConfig = defaultEvmDappModalConfig;\n }\n } else if (providedChainConfig.chainNamespace === CHAIN_NAMESPACES.OTHER) {\n this.modalConfig = defaultOtherModalConfig;\n } else {\n throw new Error(`Invalid chainNamespace provided: ${providedChainConfig.chainNamespace}`);\n }\n\n if (!this.options.uiConfig) this.options.uiConfig = {};\n if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);\n if (!this.options.uiConfig.mode) this.options.uiConfig.mode = \"auto\";\n\n this.loginModal = new LoginModal({\n ...this.options.uiConfig,\n adapterListener: this,\n });\n this.subscribeToLoginModalEvents();\n }\n\n public async initModal(params?: { modalConfig?: Record<WALLET_ADAPTER_TYPE, ModalConfig> }): Promise<void> {\n super.checkInitRequirements();\n await this.loginModal.initModal();\n const providedChainConfig = this.options.chainConfig;\n // TODO: get stuff from dashboard here\n // merge default adapters with the custom configured adapters.\n const allAdapters = [...new Set([...Object.keys(this.modalConfig.adapters || {}), ...Object.keys(this.walletAdapters)])];\n\n const adapterConfigurationPromises = allAdapters.map(async (adapterName) => {\n // start with the default config of adapter.\n let adapterConfig = this.modalConfig.adapters?.[adapterName] || {\n label: adapterName,\n showOnModal: true,\n showOnMobile: true,\n showOnDesktop: true,\n };\n\n // override the default config of adapter if some config is being provided by the user.\n if (params?.modalConfig?.[adapterName]) {\n adapterConfig = { ...adapterConfig, ...params.modalConfig[adapterName] };\n }\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName] = adapterConfig as ModalConfig;\n\n // check if adapter is configured/added by user and exist in walletAdapters map.\n const adapter = this.walletAdapters[adapterName];\n log.debug(\"adapter config\", adapterName, this.modalConfig.adapters?.[adapterName].showOnModal, adapter);\n\n // if adapter is not custom configured then check if it is available in default adapters.\n // and if adapter is not hidden by user\n if (!adapter && this.modalConfig.adapters?.[adapterName].showOnModal) {\n // Adapters to be shown on modal should be pre-configured.\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const defaultOptions = getOpenloginDefaultOptions();\n const { clientId, useCoreKitKey, chainConfig, web3AuthNetwork, uiConfig, sessionTime, privateKeyProvider } = this.coreOptions;\n const finalChainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...chainConfig,\n } as CustomChainConfig;\n if (!privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required\");\n }\n const openloginAdapter = new OpenloginAdapter({\n ...defaultOptions,\n clientId,\n useCoreKitKey,\n chainConfig: { ...finalChainConfig },\n adapterSettings: { ...defaultOptions.adapterSettings, clientId, network: web3AuthNetwork, whiteLabel: uiConfig },\n sessionTime,\n web3AuthNetwork,\n privateKeyProvider,\n });\n this.walletAdapters[adapterName] = openloginAdapter;\n return adapterName;\n }\n throw WalletInitializationError.invalidParams(`Adapter ${adapterName} is not configured`);\n } else if (adapter?.type === ADAPTER_CATEGORY.IN_APP || adapter?.type === ADAPTER_CATEGORY.EXTERNAL || adapterName === this.cachedAdapter) {\n if (!this.modalConfig.adapters?.[adapterName].showOnModal) return;\n // add client id to adapter, same web3auth client id can be used in adapter.\n // this id is being overridden if user is also passing client id in adapter's constructor.\n this.walletAdapters[adapterName].setAdapterSettings({\n clientId: this.options.clientId,\n sessionTime: this.options.sessionTime,\n web3AuthNetwork: this.options.web3AuthNetwork,\n useCoreKitKey: this.coreOptions.useCoreKitKey,\n });\n\n // if adapter doesn't have any chainConfig then we will set the chainConfig based of passed chainNamespace\n // and chainNamespace.\n if (!adapter.chainConfigProxy) {\n const chainConfig = {\n ...getChainConfig(providedChainConfig.chainNamespace, this.coreOptions.chainConfig?.chainId),\n ...this.coreOptions.chainConfig,\n } as CustomChainConfig;\n this.walletAdapters[adapterName].setAdapterSettings({ chainConfig });\n }\n\n if (adapterName === WALLET_ADAPTERS.OPENLOGIN) {\n const openloginAdapter = this.walletAdapters[adapterName] as OpenloginAdapter;\n if (this.coreOptions.privateKeyProvider) {\n if (openloginAdapter.currentChainNamespace !== this.coreOptions.privateKeyProvider.currentChainConfig.chainNamespace) {\n throw WalletInitializationError.incompatibleChainNameSpace(\n \"private key provider is not compatible with provided chainNamespace for openlogin adapter\"\n );\n }\n openloginAdapter.setAdapterSettings({ privateKeyProvider: this.coreOptions.privateKeyProvider });\n }\n openloginAdapter.setAdapterSettings({ whiteLabel: this.options.uiConfig });\n if (!openloginAdapter.privateKeyProvider) {\n throw WalletInitializationError.invalidParams(\"privateKeyProvider is required for openlogin adapter\");\n }\n } else if (adapterName === WALLET_ADAPTERS.WALLET_CONNECT_V2) {\n const walletConnectAdapter = this.walletAdapters[adapterName] as WalletConnectV2Adapter;\n walletConnectAdapter.setAdapterSettings({\n adapterSettings: {\n walletConnectInitOptions: {\n // Using a default wallet connect project id for web3auth modal integration\n projectId: \"d3c63f19f9582f8ba48e982057eb096b\", // TODO: get from dashboard\n },\n },\n });\n }\n\n return adapterName;\n }\n });\n\n const adapterNames = await Promise.all(adapterConfigurationPromises);\n const hasInAppWallets = Object.values(this.walletAdapters).some((adapter) => {\n if (adapter.type !== ADAPTER_CATEGORY.IN_APP) return false;\n if (this.modalConfig.adapters?.[adapter.name]?.showOnModal !== true) return false;\n if (!this.modalConfig.adapters?.[adapter.name]?.loginMethods) return true;\n const mergedLoginMethods = getAdapterSocialLogins(\n adapter.name,\n (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapter.name]?.loginMethods\n );\n if (Object.values(mergedLoginMethods).some((method: LoginMethodConfig[keyof LoginMethodConfig]) => method.showOnModal)) return true;\n return false;\n });\n log.debug(hasInAppWallets, this.walletAdapters, adapterNames, \"hasInAppWallets\");\n\n // Now, initialize the adapters.\n const initPromises = adapterNames.map(async (adapterName) => {\n if (!adapterName) return;\n try {\n const adapter = this.walletAdapters[adapterName];\n // only initialize a external adapter here if it is a cached adapter.\n if (this.cachedAdapter !== adapterName && adapter.type === ADAPTER_CATEGORY.EXTERNAL) {\n return;\n }\n // in-app wallets or cached wallet (being connected or already connected) are initialized first.\n // if adapter is configured thn only initialize in app or cached adapter.\n // external wallets are initialized on INIT_EXTERNAL_WALLET event.\n this.subscribeToAdapterEvents(adapter);\n if (adapter.status === ADAPTER_STATUS.NOT_READY) await adapter.init({ autoConnect: this.cachedAdapter === adapterName });\n // note: not adding cachedWallet to modal if it is external wallet.\n // adding it later if no in-app wallets are available.\n if (adapter.type === ADAPTER_CATEGORY.IN_APP) {\n this.initializeInAppWallet(adapterName);\n }\n } catch (error) {\n log.error(error, \"error while initializing adapter\");\n }\n });\n\n this.commonJRPCProvider = await CommonJRPCProvider.getProviderInstance({ chainConfig: this.coreOptions.chainConfig as CustomChainConfig });\n this.status = ADAPTER_STATUS.READY;\n await Promise.all(initPromises);\n\n const hasExternalWallets = allAdapters.some((adapterName) => {\n return this.walletAdapters[adapterName]?.type === ADAPTER_CATEGORY.EXTERNAL && this.modalConfig.adapters?.[adapterName].showOnModal;\n });\n\n if (hasExternalWallets) {\n this.loginModal.initExternalWalletContainer();\n }\n\n // variable to check if we have any in app wallets\n // currently all default in app and external wallets can be hidden or shown based on config.\n if (!hasInAppWallets && hasExternalWallets) {\n // if no in app wallet is available then initialize external wallets in modal\n await this.initExternalWalletAdapters(false, { showExternalWalletsOnly: true });\n }\n }\n\n public async connect(): Promise<IProvider | null> {\n // if (!this.loginModal.initialized) throw new Error(\"Login modal is not initialized\");\n // if already connected return provider\n if (this.connectedAdapterName && this.status === ADAPTER_STATUS.CONNECTED && this.provider) return this.provider;\n this.loginModal.open();\n return new Promise((resolve, reject) => {\n this.once(ADAPTER_EVENTS.CONNECTED, () => {\n return resolve(this.provider);\n });\n this.once(ADAPTER_EVENTS.ERRORED, (err: unknown) => {\n return reject(err);\n });\n this.once(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, (visibility: boolean) => {\n // modal is closed but user is not connected to any wallet.\n if (!visibility && this.status !== ADAPTER_STATUS.CONNECTED) {\n return reject(new Error(\"User closed the modal\"));\n }\n });\n });\n }\n\n private async initExternalWalletAdapters(externalWalletsInitialized: boolean, options?: { showExternalWalletsOnly: boolean }): Promise<void> {\n if (externalWalletsInitialized) return;\n const adaptersConfig: Record<string, BaseAdapterConfig> = {};\n Object.keys(this.walletAdapters).forEach(async (adapterName) => {\n const adapter = this.walletAdapters[adapterName];\n if (adapter?.type === ADAPTER_CATEGORY.EXTERNAL) {\n log.debug(\"init external wallet\", this.cachedAdapter, adapterName);\n this.subscribeToAdapterEvents(adapter);\n // we are not initializing cached adapter here as it is already being initialized in initModal before.\n if (this.cachedAdapter === adapterName) {\n return;\n }\n if (adapter.status === ADAPTER_STATUS.NOT_READY) {\n await adapter\n .init({ autoConnect: this.cachedAdapter === adapterName })\n .then(() => {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n return undefined;\n })\n .catch((error) => log.error(error, \"error while initializing adapter\"));\n } else if (adapter.status === ADAPTER_STATUS.READY) {\n adaptersConfig[adapterName] = (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName];\n this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly });\n }\n }\n });\n }\n\n private initializeInAppWallet(adapterName: string): void {\n log.info(\"adapterInitResults\", adapterName);\n if (this.walletAdapters[adapterName].type === ADAPTER_CATEGORY.IN_APP) {\n this.loginModal.addSocialLogins(\n adapterName,\n getAdapterSocialLogins(adapterName, (this.modalConfig.adapters as Record<WALLET_ADAPTER_TYPE, ModalConfig>)[adapterName]?.loginMethods),\n this.options.uiConfig?.loginMethodsOrder || OPENLOGIN_PROVIDERS,\n {\n ...this.options.uiConfig,\n loginGridCol: this.options.uiConfig?.loginGridCol || 3,\n primaryButton: this.options.uiConfig?.primaryButton || \"socialLogin\",\n }\n );\n }\n }\n\n private subscribeToLoginModalEvents(): void {\n this.loginModal.on(LOGIN_MODAL_EVENTS.LOGIN, async (params: { adapter: WALLET_ADAPTER_TYPE; loginParams: unknown }) => {\n try {\n await this.connectTo<unknown>(params.adapter, params.loginParams);\n } catch (error) {\n log.error(`Error while connecting to adapter: ${params.adapter}`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.INIT_EXTERNAL_WALLETS, async (params: { externalWalletsInitialized: boolean }) => {\n await this.initExternalWalletAdapters(params.externalWalletsInitialized);\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.DISCONNECT, async () => {\n try {\n await this.logout();\n } catch (error) {\n log.error(`Error while disconnecting`, error);\n }\n });\n this.loginModal.on(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, async (visibility: boolean) => {\n log.debug(\"is login modal visible\", visibility);\n this.emit(LOGIN_MODAL_EVENTS.MODAL_VISIBILITY, visibility);\n const adapter = this.walletAdapters[WALLET_ADAPTERS.WALLET_CONNECT_V2];\n if (adapter) {\n const walletConnectStatus = adapter?.status;\n log.debug(\"trying refreshing wc session\", visibility, walletConnectStatus);\n if (visibility && (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)) {\n log.debug(\"refreshing wc session\");\n\n // refreshing session for wallet connect whenever modal is opened.\n try {\n adapter.connect();\n } catch (error) {\n log.error(`Error while disconnecting to wallet connect in core`, error);\n }\n }\n if (\n !visibility &&\n this.status === ADAPTER_STATUS.CONNECTED &&\n (walletConnectStatus === ADAPTER_STATUS.READY || walletConnectStatus === ADAPTER_STATUS.CONNECTING)\n ) {\n log.debug(\"this stops wc adapter from trying to reconnect once proposal expires\");\n adapter.status = ADAPTER_STATUS.READY;\n }\n }\n });\n }\n}\n"],"names":["defaultSolanaDappModalConfig","chainNamespace","CHAIN_NAMESPACES","SOLANA","adapters","SOLANA_ADAPTERS","TORUS_SOLANA","label","showOnModal","showOnMobile","showOnDesktop","OPENLOGIN","PHANTOM","defaultEvmDappModalConfig","EIP155","EVM_ADAPTERS","TORUS_EVM","METAMASK","WALLET_CONNECT_V2","defaultSolanaWalletModalConfig","defaultEvmWalletModalConfig","defaultOtherModalConfig","OTHER","Web3Auth","Web3AuthNoModal","constructor","options","_defineProperty","_objectSpread","providedChainConfig","chainConfig","authMode","modalConfig","Error","uiConfig","defaultLanguage","getUserLanguage","mode","loginModal","LoginModal","adapterListener","subscribeToLoginModalEvents","initModal","params","checkInitRequirements","allAdapters","Set","Object","keys","walletAdapters","adapterConfigurationPromises","map","adapterName","_this$modalConfig$ada","_params$modalConfig","_this$modalConfig$ada2","_this$modalConfig$ada3","adapterConfig","adapter","log","debug","WALLET_ADAPTERS","_this$coreOptions$cha","defaultOptions","getOpenloginDefaultOptions","clientId","useCoreKitKey","web3AuthNetwork","sessionTime","privateKeyProvider","coreOptions","finalChainConfig","getChainConfig","chainId","WalletInitializationError","invalidParams","openloginAdapter","OpenloginAdapter","adapterSettings","network","whiteLabel","type","ADAPTER_CATEGORY","IN_APP","EXTERNAL","cachedAdapter","_this$modalConfig$ada4","setAdapterSettings","chainConfigProxy","_this$coreOptions$cha2","currentChainNamespace","currentChainConfig","incompatibleChainNameSpace","walletConnectAdapter","walletConnectInitOptions","projectId","adapterNames","Promise","all","hasInAppWallets","values","some","_this$modalConfig$ada5","_this$modalConfig$ada6","_adapter$name","name","loginMethods","mergedLoginMethods","getAdapterSocialLogins","method","initPromises","subscribeToAdapterEvents","status","ADAPTER_STATUS","NOT_READY","init","autoConnect","initializeInAppWallet","error","commonJRPCProvider","CommonJRPCProvider","getProviderInstance","READY","hasExternalWallets","_this$walletAdapters$","_this$modalConfig$ada7","initExternalWalletContainer","initExternalWalletAdapters","showExternalWalletsOnly","connect","connectedAdapterName","CONNECTED","provider","open","resolve","reject","once","ADAPTER_EVENTS","ERRORED","err","LOGIN_MODAL_EVENTS","MODAL_VISIBILITY","visibility","externalWalletsInitialized","adaptersConfig","forEach","then","addWalletLogins","undefined","catch","info","_adapterName","_this$options$uiConfi","_this$options$uiConfi2","_this$options$uiConfi3","addSocialLogins","loginMethodsOrder","OPENLOGIN_PROVIDERS","loginGridCol","primaryButton","on","LOGIN","connectTo","loginParams","INIT_EXTERNAL_WALLETS","DISCONNECT","logout","emit","walletConnectStatus","CONNECTING"],"mappings":"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"}
|