Skip to content

Commit 66bb6b0

Browse files
Merge pull request #91 from Web3Auth/fix/bug-fixes-1
login methods config and provider config bug fixed
2 parents 58b93cf + d0005f6 commit 66bb6b0

File tree

32 files changed

+878
-664
lines changed

32 files changed

+878
-664
lines changed

examples/vue-app/package-lock.json

Lines changed: 93 additions & 81 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/vue-app/src/chains/ethereum.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
</template>
2424

2525
<script lang="ts">
26+
import { OPENLOGIN_NETWORK_TYPE } from "@toruslabs/openlogin";
2627
import { ADAPTER_STATUS, CHAIN_NAMESPACES, CONNECTED_EVENT_DATA, CustomChainConfig, LoginMethodConfig } from "@web3auth/base";
2728
import { OpenloginAdapter } from "@web3auth/openlogin-adapter";
2829
// import { LOGIN_MODAL_EVENTS } from "@web3auth/ui";
@@ -33,7 +34,6 @@ import Loader from "@/components/loader.vue";
3334
3435
import config from "../config";
3536
import EthRpc from "../rpc/ethRpc.vue";
36-
import { OPENLOGIN_NETWORK_TYPE } from "@toruslabs/openlogin";
3737
3838
const ethChainConfig: Partial<CustomChainConfig> & Pick<CustomChainConfig, "chainNamespace"> = {
3939
chainNamespace: CHAIN_NAMESPACES.EIP155,

examples/vue-app/src/chains/solana.vue

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
</template>
2121

2222
<script lang="ts">
23-
import { ADAPTER_STATUS, CHAIN_NAMESPACES, CONNECTED_EVENT_DATA, CustomChainConfig, LoginMethodConfig } from "@web3auth/base";
23+
import { ADAPTER_STATUS, CHAIN_NAMESPACES, CONNECTED_EVENT_DATA, CustomChainConfig, LoginMethodConfig, WALLET_ADAPTERS } from "@web3auth/base";
2424
import { OpenloginAdapter } from "@web3auth/openlogin-adapter";
2525
import { Web3Auth } from "@web3auth/web3auth";
2626
import Vue from "vue";
@@ -117,8 +117,15 @@ export default Vue.extend({
117117
this.subscribeAuthEvents(this.web3auth);
118118
await this.web3auth.initModal({
119119
modalConfig: {
120-
name: "google",
121-
showOnModal: true,
120+
// to hide social login methods
121+
[WALLET_ADAPTERS.OPENLOGIN]: {
122+
loginMethods: {
123+
twitter: {
124+
name: "twitter",
125+
showOnModal: false,
126+
},
127+
},
128+
},
122129
},
123130
});
124131
} catch (error) {

packages/adapters/metamask-adapter/yarn.lock

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,9 @@ cross-spawn@^7.0.3:
116116
which "^2.0.1"
117117

118118
debug@^4.3.3:
119-
version "4.3.3"
120-
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
121-
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
119+
version "4.3.4"
120+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
121+
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
122122
dependencies:
123123
ms "2.1.2"
124124

@@ -205,9 +205,9 @@ lilconfig@2.0.4:
205205
integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
206206

207207
lint-staged@^12.3.5:
208-
version "12.3.5"
209-
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.5.tgz#8048ce048c3cac12f57200a06344a54dc91c8fa9"
210-
integrity sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==
208+
version "12.3.7"
209+
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.7.tgz#ad0e2014302f704f9cf2c0ebdb97ac63d0f17be0"
210+
integrity sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==
211211
dependencies:
212212
cli-truncate "^3.1.0"
213213
colorette "^2.0.16"
@@ -219,6 +219,7 @@ lint-staged@^12.3.5:
219219
micromatch "^4.0.4"
220220
normalize-path "^3.0.0"
221221
object-inspect "^1.12.0"
222+
pidtree "^0.5.0"
222223
string-argv "^0.3.1"
223224
supports-color "^9.2.1"
224225
yaml "^1.10.2"
@@ -311,6 +312,11 @@ picomatch@^2.2.3:
311312
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
312313
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
313314

315+
pidtree@^0.5.0:
316+
version "0.5.0"
317+
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1"
318+
integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==
319+
314320
restore-cursor@^3.1.0:
315321
version "3.1.0"
316322
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"

packages/adapters/openlogin-adapter/src/openloginAdapter.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import OpenLogin, { getHashQueryParams, LoginParams, OPENLOGIN_NETWORK, OpenLoginOptions } from "@toruslabs/openlogin";
1+
import OpenLogin, { getHashQueryParams, LoginParams, OPENLOGIN_NETWORK, OpenLoginOptions, UX_MODE } from "@toruslabs/openlogin";
22
import {
33
ADAPTER_CATEGORY,
44
ADAPTER_CATEGORY_TYPE,
@@ -91,12 +91,20 @@ export class OpenloginAdapter extends BaseAdapter<OpenloginLoginParams> {
9191
super.checkInitializationRequirements();
9292
if (!this.openloginOptions?.clientId) throw WalletInitializationError.invalidParams("clientId is required before openlogin's initialization");
9393
if (!this.chainConfig) throw WalletInitializationError.invalidParams("chainConfig is required before initialization");
94-
this.openloginInstance = new OpenLogin(this.openloginOptions);
95-
const redirectResult = getHashQueryParams();
96-
let isRedirectResult = true;
97-
if (Object.keys(redirectResult).length > 0 && redirectResult.result) {
98-
isRedirectResult = true;
94+
let isRedirectResult = false;
95+
96+
if (this.openloginOptions.uxMode === UX_MODE.REDIRECT) {
97+
const redirectResult = getHashQueryParams();
98+
if (Object.keys(redirectResult).length > 0 && redirectResult._pid) {
99+
isRedirectResult = true;
100+
}
99101
}
102+
this.openloginOptions = {
103+
...this.openloginOptions,
104+
replaceUrlOnRedirect: isRedirectResult,
105+
};
106+
this.openloginInstance = new OpenLogin(this.openloginOptions);
107+
100108
await this.openloginInstance.init();
101109

102110
this.status = ADAPTER_STATUS.READY;

packages/adapters/openlogin-adapter/yarn.lock

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,9 @@
7777
"@types/lodash" "*"
7878

7979
"@types/lodash@*":
80-
version "4.14.179"
81-
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.179.tgz#490ec3288088c91295780237d2497a3aa9dfb5c5"
82-
integrity sha512-uwc1x90yCKqGcIOAT6DwOSuxnrAbpkdPsUOZtwrXb4D/6wZs+6qG7QnIawDuZWg0sWpxl+ltIKCaLoMlna678w==
80+
version "4.14.180"
81+
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.180.tgz#4ab7c9ddfc92ec4a887886483bc14c79fb380670"
82+
integrity sha512-XOKXa1KIxtNXgASAnwj7cnttJxS4fksBRywK/9LzRV5YxrF80BXZIGeQSuoESQ/VkUj30Ae0+YcuHc15wJCB2g==
8383

8484
acorn@^8.4.1:
8585
version "8.7.0"
@@ -272,9 +272,9 @@ cross-spawn@^7.0.3:
272272
which "^2.0.1"
273273

274274
debug@^4.3.3:
275-
version "4.3.3"
276-
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
277-
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
275+
version "4.3.4"
276+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
277+
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
278278
dependencies:
279279
ms "2.1.2"
280280

@@ -458,9 +458,9 @@ lilconfig@2.0.4:
458458
integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
459459

460460
lint-staged@^12.3.5:
461-
version "12.3.5"
462-
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.5.tgz#8048ce048c3cac12f57200a06344a54dc91c8fa9"
463-
integrity sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==
461+
version "12.3.7"
462+
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.7.tgz#ad0e2014302f704f9cf2c0ebdb97ac63d0f17be0"
463+
integrity sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==
464464
dependencies:
465465
cli-truncate "^3.1.0"
466466
colorette "^2.0.16"
@@ -472,6 +472,7 @@ lint-staged@^12.3.5:
472472
micromatch "^4.0.4"
473473
normalize-path "^3.0.0"
474474
object-inspect "^1.12.0"
475+
pidtree "^0.5.0"
475476
string-argv "^0.3.1"
476477
supports-color "^9.2.1"
477478
yaml "^1.10.2"
@@ -615,6 +616,11 @@ picomatch@^2.2.3:
615616
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
616617
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
617618

619+
pidtree@^0.5.0:
620+
version "0.5.0"
621+
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1"
622+
integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==
623+
618624
pump@^3.0.0:
619625
version "3.0.0"
620626
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"

packages/adapters/phantom-adapter/yarn.lock

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,9 @@ cross-spawn@^7.0.3:
116116
which "^2.0.1"
117117

118118
debug@^4.3.3:
119-
version "4.3.3"
120-
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
121-
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
119+
version "4.3.4"
120+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
121+
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
122122
dependencies:
123123
ms "2.1.2"
124124

@@ -205,9 +205,9 @@ lilconfig@2.0.4:
205205
integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
206206

207207
lint-staged@^12.3.5:
208-
version "12.3.5"
209-
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.5.tgz#8048ce048c3cac12f57200a06344a54dc91c8fa9"
210-
integrity sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==
208+
version "12.3.7"
209+
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.7.tgz#ad0e2014302f704f9cf2c0ebdb97ac63d0f17be0"
210+
integrity sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==
211211
dependencies:
212212
cli-truncate "^3.1.0"
213213
colorette "^2.0.16"
@@ -219,6 +219,7 @@ lint-staged@^12.3.5:
219219
micromatch "^4.0.4"
220220
normalize-path "^3.0.0"
221221
object-inspect "^1.12.0"
222+
pidtree "^0.5.0"
222223
string-argv "^0.3.1"
223224
supports-color "^9.2.1"
224225
yaml "^1.10.2"
@@ -311,6 +312,11 @@ picomatch@^2.2.3:
311312
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
312313
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
313314

315+
pidtree@^0.5.0:
316+
version "0.5.0"
317+
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1"
318+
integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==
319+
314320
restore-cursor@^3.1.0:
315321
version "3.1.0"
316322
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"

packages/adapters/torus-evm-adapter/yarn.lock

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -263,9 +263,9 @@
263263
pump "^3.0.0"
264264

265265
"@toruslabs/torus.js@^5.0.1":
266-
version "5.0.1"
267-
resolved "https://registry.yarnpkg.com/@toruslabs/torus.js/-/torus.js-5.0.1.tgz#4c95275e7abac8956fc45c1d41837ee90a3a45cf"
268-
integrity sha512-rhICMJuAIA/LiS/IuWCqKEqpP8nezw/Hhlphr0VIMelkaQTqAZbS/g1cwlAdPezenTS2CTULfx509pifMLMl/w==
266+
version "5.1.0"
267+
resolved "https://registry.yarnpkg.com/@toruslabs/torus.js/-/torus.js-5.1.0.tgz#f021383b0a0cc6a5a29806f0f6333a4ab437544e"
268+
integrity sha512-5R9mz6ULwlW8rS+ocjq+2P4BYB/+2cSeHwTyDwA31ZTbreB3ugcUzX5+r+zlx9BTgJC2LdBkCNBJVfDMmzA4iA==
269269
dependencies:
270270
"@toruslabs/eccrypto" "^1.1.8"
271271
"@toruslabs/http-helpers" "^2.2.0"
@@ -397,9 +397,9 @@ bip66@^1.1.5:
397397
safe-buffer "^5.0.1"
398398

399399
blakejs@^1.1.0:
400-
version "1.1.1"
401-
resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.1.1.tgz#bf313053978b2cd4c444a48795710be05c785702"
402-
integrity sha512-bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg==
400+
version "1.2.1"
401+
resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814"
402+
integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==
403403

404404
bn.js@4.11.6:
405405
version "4.11.6"
@@ -592,9 +592,9 @@ debug@^2.2.0:
592592
ms "2.0.0"
593593

594594
debug@^4.3.3:
595-
version "4.3.3"
596-
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
597-
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
595+
version "4.3.4"
596+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
597+
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
598598
dependencies:
599599
ms "2.1.2"
600600

@@ -685,9 +685,9 @@ es-to-primitive@^1.2.1:
685685
is-symbol "^1.0.2"
686686

687687
es5-ext@^0.10.35, es5-ext@^0.10.50:
688-
version "0.10.58"
689-
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.58.tgz#5b97d94236285fb87c8ffc782cf42eb0a25d2ae0"
690-
integrity sha512-LHO+KBBaHGwjy32ibSaMY+ZzjpC4K4I5bPoijICMBL7gXEXfrEUrzssmNP+KigbQEp1dRUnGkry/vUnxOqptLQ==
688+
version "0.10.59"
689+
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.59.tgz#71038939730eb6f4f165f1421308fb60be363bc6"
690+
integrity sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==
691691
dependencies:
692692
es6-iterator "^2.0.3"
693693
es6-symbol "^3.1.3"
@@ -1118,9 +1118,9 @@ lilconfig@2.0.4:
11181118
integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
11191119

11201120
lint-staged@^12.3.5:
1121-
version "12.3.5"
1122-
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.5.tgz#8048ce048c3cac12f57200a06344a54dc91c8fa9"
1123-
integrity sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==
1121+
version "12.3.7"
1122+
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.7.tgz#ad0e2014302f704f9cf2c0ebdb97ac63d0f17be0"
1123+
integrity sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==
11241124
dependencies:
11251125
cli-truncate "^3.1.0"
11261126
colorette "^2.0.16"
@@ -1132,6 +1132,7 @@ lint-staged@^12.3.5:
11321132
micromatch "^4.0.4"
11331133
normalize-path "^3.0.0"
11341134
object-inspect "^1.12.0"
1135+
pidtree "^0.5.0"
11351136
string-argv "^0.3.1"
11361137
supports-color "^9.2.1"
11371138
yaml "^1.10.2"
@@ -1326,6 +1327,11 @@ picomatch@^2.2.3:
13261327
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
13271328
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
13281329

1330+
pidtree@^0.5.0:
1331+
version "0.5.0"
1332+
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1"
1333+
integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==
1334+
13291335
process-nextick-args@~2.0.0:
13301336
version "2.0.1"
13311337
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"

packages/adapters/torus-solana-adapter/src/solanaWalletAdapter.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import {
2020
WALLET_ADAPTERS,
2121
WalletInitializationError,
2222
WalletLoginError,
23+
Web3AuthError,
2324
} from "@web3auth/base";
2425
import { BaseProvider, BaseProviderConfig, BaseProviderState } from "@web3auth/base-provider";
2526
import { InjectedProvider, TorusInjectedProvider } from "@web3auth/solana-provider";
@@ -116,7 +117,19 @@ export class SolanaWalletAdapter extends BaseAdapter<void> {
116117
this.emit(ADAPTER_EVENTS.CONNECTING, { adapter: WALLET_ADAPTERS.TORUS_SOLANA });
117118
try {
118119
await this.torusInstance.login(this.loginSettings);
119-
await this.solanaProvider.setupProvider(this.torusInstance.provider as InjectedProvider);
120+
try {
121+
await this.solanaProvider.setupProvider(this.torusInstance.provider as InjectedProvider);
122+
} catch (error: unknown) {
123+
// some issue in solana wallet, always connecting to mainnet on init.
124+
// fallback to change network if not connected to correct one on login.
125+
if (error instanceof Web3AuthError && error.code === 5010) {
126+
const { chainId, blockExplorer, displayName, rpcTarget, ticker, tickerName } = this.chainConfig as CustomChainConfig;
127+
const network = { chainId, rpcTarget, blockExplorerUrl: blockExplorer, displayName, tickerName, ticker, logo: "" };
128+
await this.torusInstance.setProvider(network);
129+
} else {
130+
throw error;
131+
}
132+
}
120133
this.status = ADAPTER_STATUS.CONNECTED;
121134
this.torusInstance.showTorusButton();
122135
this.emit(ADAPTER_STATUS.CONNECTED, { adapter: WALLET_ADAPTERS.TORUS_SOLANA, reconnected: this.rehydrated } as CONNECTED_EVENT_DATA);

0 commit comments

Comments
 (0)