@turnkey/core 1.0.0 → 1.1.2
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/__clients__/core.d.ts +162 -334
- package/dist/__clients__/core.d.ts.map +1 -1
- package/dist/__clients__/core.js +418 -275
- package/dist/__clients__/core.js.map +1 -1
- package/dist/__clients__/core.mjs +369 -226
- package/dist/__clients__/core.mjs.map +1 -1
- package/dist/__generated__/sdk-client-base.d.ts +4 -2
- package/dist/__generated__/sdk-client-base.d.ts.map +1 -1
- package/dist/__generated__/sdk-client-base.js +36 -6
- package/dist/__generated__/sdk-client-base.js.map +1 -1
- package/dist/__generated__/sdk-client-base.mjs +31 -1
- package/dist/__generated__/sdk-client-base.mjs.map +1 -1
- package/dist/__generated__/version.d.ts +1 -1
- package/dist/__generated__/version.js +1 -1
- package/dist/__generated__/version.mjs +1 -1
- package/dist/__inputs__/public_api.types.d.ts +49 -0
- package/dist/__inputs__/public_api.types.d.ts.map +1 -1
- package/dist/__polyfills__/window.js.map +1 -1
- package/dist/__polyfills__/window.mjs.map +1 -1
- package/dist/__stampers__/api/base.d.ts +1 -1
- package/dist/__stampers__/api/base.d.ts.map +1 -1
- package/dist/__stampers__/api/base.js.map +1 -1
- package/dist/__stampers__/api/base.mjs.map +1 -1
- package/dist/__stampers__/api/mobile/stamper.d.ts +1 -1
- package/dist/__stampers__/api/mobile/stamper.d.ts.map +1 -1
- package/dist/__stampers__/api/mobile/stamper.js.map +1 -1
- package/dist/__stampers__/api/mobile/stamper.mjs.map +1 -1
- package/dist/__stampers__/api/web/stamper.d.ts +1 -1
- package/dist/__stampers__/api/web/stamper.d.ts.map +1 -1
- package/dist/__stampers__/api/web/stamper.js.map +1 -1
- package/dist/__stampers__/api/web/stamper.mjs.map +1 -1
- package/dist/__stampers__/passkey/base.d.ts +1 -1
- package/dist/__stampers__/passkey/base.d.ts.map +1 -1
- package/dist/__stampers__/passkey/base.js.map +1 -1
- package/dist/__stampers__/passkey/base.mjs.map +1 -1
- package/dist/__storage__/base.d.ts +1 -1
- package/dist/__storage__/base.d.ts.map +1 -1
- package/dist/__storage__/base.js.map +1 -1
- package/dist/__storage__/base.mjs.map +1 -1
- package/dist/__storage__/mobile/storage.d.ts +1 -1
- package/dist/__storage__/mobile/storage.d.ts.map +1 -1
- package/dist/__storage__/mobile/storage.js +3 -3
- package/dist/__storage__/mobile/storage.js.map +1 -1
- package/dist/__storage__/mobile/storage.mjs +1 -1
- package/dist/__storage__/mobile/storage.mjs.map +1 -1
- package/dist/__storage__/web/storage.d.ts +1 -1
- package/dist/__storage__/web/storage.d.ts.map +1 -1
- package/dist/__storage__/web/storage.js +3 -3
- package/dist/__storage__/web/storage.js.map +1 -1
- package/dist/__storage__/web/storage.mjs +1 -1
- package/dist/__storage__/web/storage.mjs.map +1 -1
- package/dist/__typedoc-entry__/index.d.ts +3 -0
- package/dist/__typedoc-entry__/index.d.ts.map +1 -0
- package/dist/__types__/auth.d.ts +119 -0
- package/dist/__types__/auth.d.ts.map +1 -0
- package/dist/__types__/auth.js +7 -0
- package/dist/__types__/auth.js.map +1 -0
- package/dist/__types__/auth.mjs +5 -0
- package/dist/__types__/auth.mjs.map +1 -0
- package/dist/__types__/config.d.ts +140 -0
- package/dist/__types__/config.d.ts.map +1 -0
- package/dist/__types__/enums.d.ts +59 -0
- package/dist/__types__/enums.d.ts.map +1 -0
- package/dist/__types__/{base.js → enums.js} +28 -45
- package/dist/__types__/enums.js.map +1 -0
- package/dist/__types__/{base.mjs → enums.mjs} +29 -44
- package/dist/__types__/enums.mjs.map +1 -0
- package/dist/__types__/error.d.ts +13 -0
- package/dist/__types__/error.d.ts.map +1 -0
- package/dist/__types__/error.js +18 -0
- package/dist/__types__/error.js.map +1 -0
- package/dist/__types__/error.mjs +16 -0
- package/dist/__types__/error.mjs.map +1 -0
- package/dist/__types__/export.d.ts +10 -0
- package/dist/__types__/export.d.ts.map +1 -0
- package/dist/__types__/external-wallets.d.ts +176 -0
- package/dist/__types__/external-wallets.d.ts.map +1 -0
- package/dist/__types__/index.d.ts +8 -0
- package/dist/__types__/index.d.ts.map +1 -0
- package/dist/__types__/method-types.d.ts +315 -0
- package/dist/__types__/method-types.d.ts.map +1 -0
- package/dist/__wallet__/base.d.ts +1 -1
- package/dist/__wallet__/base.d.ts.map +1 -1
- package/dist/__wallet__/base.js.map +1 -1
- package/dist/__wallet__/base.mjs.map +1 -1
- package/dist/__wallet__/connector.d.ts +3 -3
- package/dist/__wallet__/connector.d.ts.map +1 -1
- package/dist/__wallet__/connector.js +4 -4
- package/dist/__wallet__/connector.js.map +1 -1
- package/dist/__wallet__/connector.mjs +3 -3
- package/dist/__wallet__/connector.mjs.map +1 -1
- package/dist/__wallet__/mobile/manager.d.ts +1 -1
- package/dist/__wallet__/mobile/manager.d.ts.map +1 -1
- package/dist/__wallet__/mobile/manager.js +4 -4
- package/dist/__wallet__/mobile/manager.js.map +1 -1
- package/dist/__wallet__/mobile/manager.mjs +1 -1
- package/dist/__wallet__/mobile/manager.mjs.map +1 -1
- package/dist/__wallet__/stamper.d.ts +1 -1
- package/dist/__wallet__/stamper.d.ts.map +1 -1
- package/dist/__wallet__/stamper.js +8 -8
- package/dist/__wallet__/stamper.js.map +1 -1
- package/dist/__wallet__/stamper.mjs +1 -1
- package/dist/__wallet__/stamper.mjs.map +1 -1
- package/dist/__wallet__/wallet-connect/base.d.ts +4 -2
- package/dist/__wallet__/wallet-connect/base.d.ts.map +1 -1
- package/dist/__wallet__/wallet-connect/base.js +68 -26
- package/dist/__wallet__/wallet-connect/base.js.map +1 -1
- package/dist/__wallet__/wallet-connect/base.mjs +53 -11
- package/dist/__wallet__/wallet-connect/base.mjs.map +1 -1
- package/dist/__wallet__/wallet-connect/client.d.ts +30 -9
- package/dist/__wallet__/wallet-connect/client.d.ts.map +1 -1
- package/dist/__wallet__/wallet-connect/client.js +73 -11
- package/dist/__wallet__/wallet-connect/client.js.map +1 -1
- package/dist/__wallet__/wallet-connect/client.mjs +73 -11
- package/dist/__wallet__/wallet-connect/client.mjs.map +1 -1
- package/dist/__wallet__/web/manager.d.ts +1 -1
- package/dist/__wallet__/web/manager.d.ts.map +1 -1
- package/dist/__wallet__/web/manager.js +10 -10
- package/dist/__wallet__/web/manager.js.map +1 -1
- package/dist/__wallet__/web/manager.mjs +1 -1
- package/dist/__wallet__/web/manager.mjs.map +1 -1
- package/dist/__wallet__/web/native/ethereum.d.ts +3 -3
- package/dist/__wallet__/web/native/ethereum.d.ts.map +1 -1
- package/dist/__wallet__/web/native/ethereum.js +10 -10
- package/dist/__wallet__/web/native/ethereum.js.map +1 -1
- package/dist/__wallet__/web/native/ethereum.mjs +3 -3
- package/dist/__wallet__/web/native/ethereum.mjs.map +1 -1
- package/dist/__wallet__/web/native/solana.d.ts +3 -3
- package/dist/__wallet__/web/native/solana.d.ts.map +1 -1
- package/dist/__wallet__/web/native/solana.js +11 -11
- package/dist/__wallet__/web/native/solana.js.map +1 -1
- package/dist/__wallet__/web/native/solana.mjs +6 -6
- package/dist/__wallet__/web/native/solana.mjs.map +1 -1
- package/dist/index.d.ts +8 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -2
- package/dist/index.mjs.map +1 -1
- package/dist/turnkey-helpers.js.map +1 -1
- package/dist/turnkey-helpers.mjs.map +1 -1
- package/dist/utils.d.ts +4 -18
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +95 -32
- package/dist/utils.js.map +1 -1
- package/dist/utils.mjs +74 -13
- package/dist/utils.mjs.map +1 -1
- package/package.json +6 -6
- package/dist/__types__/base.d.ts +0 -527
- package/dist/__types__/base.d.ts.map +0 -1
- package/dist/__types__/base.js.map +0 -1
- package/dist/__types__/base.mjs.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CrossPlatformWalletStamper } from "../stamper";
|
|
2
2
|
import { CrossPlatformWalletConnector } from "../connector";
|
|
3
|
-
import { TWalletManagerConfig, WalletInterface, WalletProvider, WalletInterfaceType, Chain } from "
|
|
3
|
+
import { TWalletManagerConfig, WalletInterface, WalletProvider, WalletInterfaceType, Chain } from "../../__types__";
|
|
4
4
|
export declare class MobileWalletManager {
|
|
5
5
|
private initializers;
|
|
6
6
|
private wcClient?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/__wallet__/mobile/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,KAAK,EACN,MAAM,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/__wallet__/mobile/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,KAAK,EACN,MAAM,iBAAiB,CAAC;AAIzB,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,YAAY,CAAkC;IAGtD,OAAO,CAAC,QAAQ,CAAC,CAAsB;IAGvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC,CAAM;IAG7E,OAAO,CAAC,iBAAiB,CAAqD;IAG9E,QAAQ,CAAC,OAAO,CAAC,EAAE,0BAA0B,CAAC;IAG9C,QAAQ,CAAC,SAAS,CAAC,EAAE,4BAA4B,CAAC;IAElD;;;;;;;;;OASG;gBACS,GAAG,EAAE,oBAAoB;IA2CrC;;;;;;;OAOG;IACG,IAAI,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpD;;;;;;;;;;OAUG;IACG,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IA4B5D;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAMvB;CACH"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var stamper = require('../stamper.js');
|
|
4
4
|
var connector = require('../connector.js');
|
|
5
|
-
var
|
|
5
|
+
var enums = require('../../__types__/enums.js');
|
|
6
6
|
var client = require('../wallet-connect/client.js');
|
|
7
7
|
var base = require('../wallet-connect/base.js');
|
|
8
8
|
|
|
@@ -43,15 +43,15 @@ class MobileWalletManager {
|
|
|
43
43
|
if (cfg.walletConnect && enableWalletConnect) {
|
|
44
44
|
this.wcClient = new client.WalletConnectClient();
|
|
45
45
|
const wcUnified = new base.WalletConnectWallet(this.wcClient);
|
|
46
|
-
this.wallets[
|
|
46
|
+
this.wallets[enums.WalletInterfaceType.WalletConnect] = wcUnified;
|
|
47
47
|
// add async init step to the initializer queue
|
|
48
48
|
this.initializers.push(() => wcUnified.init({ ethereumNamespaces, solanaNamespaces }));
|
|
49
49
|
// register WalletConnect as a wallet interface for each enabled chain
|
|
50
50
|
if (enableWalletConnectEvm) {
|
|
51
|
-
this.addChainInterface(
|
|
51
|
+
this.addChainInterface(enums.Chain.Ethereum, enums.WalletInterfaceType.WalletConnect);
|
|
52
52
|
}
|
|
53
53
|
if (enableWalletConnectSol) {
|
|
54
|
-
this.addChainInterface(
|
|
54
|
+
this.addChainInterface(enums.Chain.Solana, enums.WalletInterfaceType.WalletConnect);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
if (cfg.features?.auth) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sources":["../../../src/__wallet__/mobile/manager.ts"],"sourcesContent":[null],"names":["WalletConnectClient","WalletConnectWallet","WalletInterfaceType","Chain","CrossPlatformWalletStamper","CrossPlatformWalletConnector"],"mappings":";;;;;;;;MAYa,mBAAmB,CAAA;AAmB9B;;;;;;;;;AASG;AACH,IAAA,WAAA,CAAY,GAAyB,EAAA;;QA3B7B,
|
|
1
|
+
{"version":3,"file":"manager.js","sources":["../../../src/__wallet__/mobile/manager.ts"],"sourcesContent":[null],"names":["WalletConnectClient","WalletConnectWallet","WalletInterfaceType","Chain","CrossPlatformWalletStamper","CrossPlatformWalletConnector"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CrossPlatformWalletStamper } from '../stamper.mjs';
|
|
2
2
|
import { CrossPlatformWalletConnector } from '../connector.mjs';
|
|
3
|
-
import { WalletInterfaceType, Chain } from '../../__types__/
|
|
3
|
+
import { WalletInterfaceType, Chain } from '../../__types__/enums.mjs';
|
|
4
4
|
import { WalletConnectClient } from '../wallet-connect/client.mjs';
|
|
5
5
|
import { WalletConnectWallet } from '../wallet-connect/base.mjs';
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.mjs","sources":["../../../src/__wallet__/mobile/manager.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;MAYa,mBAAmB,CAAA;AAmB9B;;;;;;;;;AASG;AACH,IAAA,WAAA,CAAY,GAAyB,EAAA;;QA3B7B,
|
|
1
|
+
{"version":3,"file":"manager.mjs","sources":["../../../src/__wallet__/mobile/manager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type WalletInterface, type TStamp, type TStamper, type WalletProvider, WalletInterfaceType } from "
|
|
1
|
+
import { type WalletInterface, type TStamp, type TStamper, type WalletProvider, WalletInterfaceType } from "../__types__";
|
|
2
2
|
export declare class CrossPlatformWalletStamper implements TStamper {
|
|
3
3
|
private readonly ctx;
|
|
4
4
|
private activeInterfaceType?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stamper.d.ts","sourceRoot":"","sources":["../../src/__wallet__/stamper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,mBAAmB,EACpB,MAAM,
|
|
1
|
+
{"version":3,"file":"stamper.d.ts","sourceRoot":"","sources":["../../src/__wallet__/stamper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAuBtB,qBAAa,0BAA2B,YAAW,QAAQ;IACzD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,OAAO,CAAC,mBAAmB,CAAC,CAAsB;IAElD;;;;;;;;;OASG;gBACS,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAiB1E;;;;;;;;;;;OAWG;IACG,KAAK,CACT,OAAO,EAAE,MAAM,EACf,aAAa,GAAE,mBAA6C,EAC5D,QAAQ,CAAC,EAAE,cAAc,GACxB,OAAO,CAAC,MAAM,CAAC;IAalB;;;;;;OAMG;IACG,YAAY,CAChB,aAAa,iCAA+C,EAC5D,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC;IAIlB;;;;;;;OAOG;IACH,WAAW,CACT,aAAa,EAAE,mBAAmB,EAClC,QAAQ,EAAE,cAAc,GACvB,IAAI;IAKP;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAwBxB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM;CASf;AAED,qBAAa,aAAa;IAMZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC;;;;OAIG;gBAC0B,MAAM,EAAE,eAAe;IAEpD;;;;;;;;;;;;;;;OAeG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAyDxE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var enums = require('../__types__/enums.js');
|
|
4
4
|
var encoding = require('@turnkey/encoding');
|
|
5
5
|
var utils = require('../utils.js');
|
|
6
6
|
|
|
@@ -82,14 +82,14 @@ class CrossPlatformWalletStamper {
|
|
|
82
82
|
return this.activeInterfaceType;
|
|
83
83
|
}
|
|
84
84
|
const initializedInterfaces = Object.keys(this.ctx);
|
|
85
|
-
if (initializedInterfaces.includes(
|
|
86
|
-
return
|
|
85
|
+
if (initializedInterfaces.includes(enums.WalletInterfaceType.Ethereum)) {
|
|
86
|
+
return enums.WalletInterfaceType.Ethereum;
|
|
87
87
|
}
|
|
88
|
-
if (initializedInterfaces.includes(
|
|
89
|
-
return
|
|
88
|
+
if (initializedInterfaces.includes(enums.WalletInterfaceType.Solana)) {
|
|
89
|
+
return enums.WalletInterfaceType.Solana;
|
|
90
90
|
}
|
|
91
|
-
if (initializedInterfaces.includes(
|
|
92
|
-
return
|
|
91
|
+
if (initializedInterfaces.includes(enums.WalletInterfaceType.WalletConnect)) {
|
|
92
|
+
return enums.WalletInterfaceType.WalletConnect;
|
|
93
93
|
}
|
|
94
94
|
throw new Error("No interfaces initialized");
|
|
95
95
|
}
|
|
@@ -137,7 +137,7 @@ class WalletStamper {
|
|
|
137
137
|
let signature;
|
|
138
138
|
let publicKey;
|
|
139
139
|
try {
|
|
140
|
-
signature = await this.wallet.sign(payload, provider,
|
|
140
|
+
signature = await this.wallet.sign(payload, provider, enums.SignIntent.SignMessage);
|
|
141
141
|
}
|
|
142
142
|
catch (error) {
|
|
143
143
|
throw new Error(`Failed to sign the message: ${error}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stamper.js","sources":["../../src/__wallet__/stamper.ts"],"sourcesContent":[null],"names":["WalletInterfaceType","SignIntent","getSignatureSchemeFromProvider","isEthereumProvider","uint8ArrayFromHexString","uint8ArrayToHexString","isSolanaProvider","stringToBase64urlString"],"mappings":";;;;;;AAoBA,MAAM,iBAAiB,GAAG,SAAS;MAUtB,0BAA0B,CAAA;AAIrC;;;;;;;;;AASG;AACH,IAAA,WAAA,CAAY,OAA8D,EAAA;QAbzD,
|
|
1
|
+
{"version":3,"file":"stamper.js","sources":["../../src/__wallet__/stamper.ts"],"sourcesContent":[null],"names":["WalletInterfaceType","SignIntent","getSignatureSchemeFromProvider","isEthereumProvider","uint8ArrayFromHexString","uint8ArrayToHexString","isSolanaProvider","stringToBase64urlString"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { WalletInterfaceType, SignIntent } from '../__types__/
|
|
1
|
+
import { WalletInterfaceType, SignIntent } from '../__types__/enums.mjs';
|
|
2
2
|
import { uint8ArrayFromHexString, uint8ArrayToHexString, stringToBase64urlString } from '@turnkey/encoding';
|
|
3
3
|
import { getSignatureSchemeFromProvider, isEthereumProvider, isSolanaProvider } from '../utils.mjs';
|
|
4
4
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stamper.mjs","sources":["../../src/__wallet__/stamper.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAoBA,MAAM,iBAAiB,GAAG,SAAS;MAUtB,0BAA0B,CAAA;AAIrC;;;;;;;;;AASG;AACH,IAAA,WAAA,CAAY,OAA8D,EAAA;QAbzD,
|
|
1
|
+
{"version":3,"file":"stamper.mjs","sources":["../../src/__wallet__/stamper.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { WalletInterfaceType, WalletProvider, SignIntent, WalletConnectInterface, SwitchableChain } from "
|
|
1
|
+
import { WalletInterfaceType, WalletProvider, SignIntent, WalletConnectInterface, SwitchableChain } from "../../__types__";
|
|
2
2
|
import type { WalletConnectClient } from "./client";
|
|
3
3
|
export declare class WalletConnectWallet implements WalletConnectInterface {
|
|
4
4
|
private client;
|
|
@@ -8,6 +8,7 @@ export declare class WalletConnectWallet implements WalletConnectInterface {
|
|
|
8
8
|
private ethChain;
|
|
9
9
|
private solChain;
|
|
10
10
|
private uri?;
|
|
11
|
+
private isRegeneratingUri;
|
|
11
12
|
private changeListeners;
|
|
12
13
|
private addChangeListener;
|
|
13
14
|
private notifyChange;
|
|
@@ -51,9 +52,10 @@ export declare class WalletConnectWallet implements WalletConnectInterface {
|
|
|
51
52
|
* - Throws if the approved session contains no connected accounts.
|
|
52
53
|
*
|
|
53
54
|
* @param _provider - Unused (present for interface compatibility).
|
|
55
|
+
* @returns A promise that resolves with the connected wallet's address.
|
|
54
56
|
* @throws {Error} If the session contains no accounts.
|
|
55
57
|
*/
|
|
56
|
-
connectWalletAccount(
|
|
58
|
+
connectWalletAccount(provider: WalletProvider): Promise<string>;
|
|
57
59
|
/**
|
|
58
60
|
* Switches the user’s WalletConnect session to a new EVM chain.
|
|
59
61
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/__wallet__/wallet-connect/base.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,mBAAmB,EACnB,cAAc,EAEd,UAAU,EAEV,sBAAsB,EACtB,eAAe,EAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/__wallet__/wallet-connect/base.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,mBAAmB,EACnB,cAAc,EAEd,UAAU,EAEV,sBAAsB,EACtB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAUpD,qBAAa,mBAAoB,YAAW,sBAAsB;IAmCpD,OAAO,CAAC,MAAM;IAlC1B,QAAQ,CAAC,aAAa,qCAAqC;IAE3D,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,gBAAgB,CAAgB;IAExC,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,QAAQ,CAAU;IAE1B,OAAO,CAAC,GAAG,CAAC,CAAS;IACrB,OAAO,CAAC,iBAAiB,CAAS;IAElC,OAAO,CAAC,eAAe,CAEnB;IAEJ,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,YAAY;IAIpB;;;;;;;OAOG;gBACiB,MAAM,EAAE,mBAAmB;IAkD/C;;;;;;;;;;OAUG;IACG,IAAI,CAAC,IAAI,EAAE;QACf,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAC7B,gBAAgB,EAAE,MAAM,EAAE,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjB;;;;;;;OAOG;IACG,YAAY,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAqB/C;;;;;;;;;OASG;IACG,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBrE;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CACf,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,MAAM,GAAG,eAAe,GAClC,OAAO,CAAC,IAAI,CAAC;IAmChB;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,IAAI,CACR,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,CAAC;IAuGlB;;;;;;;;;OASG;IACG,YAAY,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAyC7D;;;;;OAKG;IACG,uBAAuB,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAavE;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAepB;;;;;;;;;;;;OAYG;YACW,aAAa;IAU3B;;;;;;;;;OASG;YACW,gBAAgB;IAuB9B;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;CA+BxB"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var encoding = require('@turnkey/encoding');
|
|
4
4
|
var viem = require('viem');
|
|
5
5
|
var crypto = require('@turnkey/crypto');
|
|
6
|
-
var
|
|
6
|
+
var enums = require('../../__types__/enums.js');
|
|
7
7
|
var ethers = require('ethers');
|
|
8
8
|
|
|
9
9
|
class WalletConnectWallet {
|
|
@@ -24,14 +24,11 @@ class WalletConnectWallet {
|
|
|
24
24
|
*/
|
|
25
25
|
constructor(client) {
|
|
26
26
|
this.client = client;
|
|
27
|
-
this.interfaceType =
|
|
27
|
+
this.interfaceType = enums.WalletInterfaceType.WalletConnect;
|
|
28
28
|
this.ethereumNamespaces = [];
|
|
29
29
|
this.solanaNamespaces = [];
|
|
30
|
+
this.isRegeneratingUri = false;
|
|
30
31
|
this.changeListeners = new Set();
|
|
31
|
-
// session disconnected
|
|
32
|
-
this.client.onSessionDelete(() => {
|
|
33
|
-
this.notifyChange({ type: "disconnect" });
|
|
34
|
-
});
|
|
35
32
|
// session updated (actual update to the session for example adding a chain to namespaces)
|
|
36
33
|
this.client.onSessionUpdate(() => {
|
|
37
34
|
this.notifyChange({ type: "update" });
|
|
@@ -45,6 +42,34 @@ class WalletConnectWallet {
|
|
|
45
42
|
this.notifyChange({ type: "chainChanged", chainId });
|
|
46
43
|
}
|
|
47
44
|
});
|
|
45
|
+
// session disconnected
|
|
46
|
+
this.client.onSessionDelete(() => {
|
|
47
|
+
this.notifyChange({ type: "disconnect" });
|
|
48
|
+
});
|
|
49
|
+
// pairing expired without a session being established
|
|
50
|
+
this.client.onPairingExpire(async () => {
|
|
51
|
+
// prevent multiple simultaneous regenerations
|
|
52
|
+
if (this.isRegeneratingUri)
|
|
53
|
+
return;
|
|
54
|
+
this.isRegeneratingUri = true;
|
|
55
|
+
try {
|
|
56
|
+
// we cancel the previous pairing, if any
|
|
57
|
+
// this is to avoid multiple pairings
|
|
58
|
+
// we also error if there is an active pairing
|
|
59
|
+
// and we try to create a new one
|
|
60
|
+
await this.client.cancelPairing();
|
|
61
|
+
const namespaces = this.buildNamespaces();
|
|
62
|
+
const newUri = await this.client.pair(namespaces);
|
|
63
|
+
this.uri = newUri;
|
|
64
|
+
this.notifyChange({ type: "proposalExpired" });
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
console.error("failed to regenerate URI:", error);
|
|
68
|
+
}
|
|
69
|
+
finally {
|
|
70
|
+
this.isRegeneratingUri = false;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
48
73
|
}
|
|
49
74
|
/**
|
|
50
75
|
* Initializes WalletConnect pairing flow with the specified namespaces.
|
|
@@ -78,7 +103,9 @@ class WalletConnectWallet {
|
|
|
78
103
|
return;
|
|
79
104
|
}
|
|
80
105
|
const namespaces = this.buildNamespaces();
|
|
81
|
-
|
|
106
|
+
await this.client.pair(namespaces).then((newUri) => {
|
|
107
|
+
this.uri = newUri;
|
|
108
|
+
});
|
|
82
109
|
}
|
|
83
110
|
/**
|
|
84
111
|
* Returns WalletConnect providers with associated chain/account metadata.
|
|
@@ -110,12 +137,26 @@ class WalletConnectWallet {
|
|
|
110
137
|
* - Throws if the approved session contains no connected accounts.
|
|
111
138
|
*
|
|
112
139
|
* @param _provider - Unused (present for interface compatibility).
|
|
140
|
+
* @returns A promise that resolves with the connected wallet's address.
|
|
113
141
|
* @throws {Error} If the session contains no accounts.
|
|
114
142
|
*/
|
|
115
|
-
async connectWalletAccount(
|
|
143
|
+
async connectWalletAccount(provider) {
|
|
116
144
|
const session = await this.client.approve();
|
|
117
|
-
|
|
118
|
-
|
|
145
|
+
let address;
|
|
146
|
+
switch (provider.chainInfo.namespace) {
|
|
147
|
+
case enums.Chain.Ethereum:
|
|
148
|
+
address = getConnectedEthereum(session);
|
|
149
|
+
break;
|
|
150
|
+
case enums.Chain.Solana:
|
|
151
|
+
address = getConnectedSolana(session);
|
|
152
|
+
break;
|
|
153
|
+
default:
|
|
154
|
+
throw new Error(`Unsupported namespace: ${provider.chainInfo}`);
|
|
155
|
+
}
|
|
156
|
+
if (!address) {
|
|
157
|
+
throw new Error("No connected account found");
|
|
158
|
+
}
|
|
159
|
+
return address;
|
|
119
160
|
}
|
|
120
161
|
/**
|
|
121
162
|
* Switches the user’s WalletConnect session to a new EVM chain.
|
|
@@ -134,7 +175,7 @@ class WalletConnectWallet {
|
|
|
134
175
|
* or the switch RPC fails.
|
|
135
176
|
*/
|
|
136
177
|
async switchChain(provider, chainOrId) {
|
|
137
|
-
if (provider.chainInfo.namespace !==
|
|
178
|
+
if (provider.chainInfo.namespace !== enums.Chain.Ethereum) {
|
|
138
179
|
throw new Error("Only EVM wallets support chain switching");
|
|
139
180
|
}
|
|
140
181
|
const session = this.client.getSession();
|
|
@@ -183,18 +224,18 @@ class WalletConnectWallet {
|
|
|
183
224
|
if (!hasConnectedAccounts(session)) {
|
|
184
225
|
await this.connectWalletAccount(provider);
|
|
185
226
|
}
|
|
186
|
-
if (provider.chainInfo.namespace ===
|
|
227
|
+
if (provider.chainInfo.namespace === enums.Chain.Ethereum) {
|
|
187
228
|
const address = getConnectedEthereum(session);
|
|
188
229
|
if (!address) {
|
|
189
230
|
throw new Error("no Ethereum account to sign with");
|
|
190
231
|
}
|
|
191
232
|
switch (intent) {
|
|
192
|
-
case
|
|
233
|
+
case enums.SignIntent.SignMessage:
|
|
193
234
|
return (await this.client.request(this.ethChain, "personal_sign", [
|
|
194
235
|
payload,
|
|
195
236
|
address,
|
|
196
237
|
]));
|
|
197
|
-
case
|
|
238
|
+
case enums.SignIntent.SignAndSendTransaction:
|
|
198
239
|
const account = provider.connectedAddresses[0];
|
|
199
240
|
const tx = ethers.Transaction.from(payload);
|
|
200
241
|
const txParams = {
|
|
@@ -213,13 +254,13 @@ class WalletConnectWallet {
|
|
|
213
254
|
throw new Error(`Unsupported Ethereum intent: ${intent}`);
|
|
214
255
|
}
|
|
215
256
|
}
|
|
216
|
-
if (provider.chainInfo.namespace ===
|
|
257
|
+
if (provider.chainInfo.namespace === enums.Chain.Solana) {
|
|
217
258
|
const address = getConnectedSolana(session);
|
|
218
259
|
if (!address) {
|
|
219
260
|
throw new Error("no Solana account to sign with");
|
|
220
261
|
}
|
|
221
262
|
switch (intent) {
|
|
222
|
-
case
|
|
263
|
+
case enums.SignIntent.SignMessage: {
|
|
223
264
|
const msgBytes = new TextEncoder().encode(payload);
|
|
224
265
|
const msgB58 = encoding.bs58.encode(msgBytes);
|
|
225
266
|
const { signature: sigB58 } = await this.client.request(this.solChain, "solana_signMessage", {
|
|
@@ -228,7 +269,7 @@ class WalletConnectWallet {
|
|
|
228
269
|
});
|
|
229
270
|
return encoding.uint8ArrayToHexString(encoding.bs58.decode(sigB58));
|
|
230
271
|
}
|
|
231
|
-
case
|
|
272
|
+
case enums.SignIntent.SignTransaction: {
|
|
232
273
|
const txBytes = encoding.uint8ArrayFromHexString(payload);
|
|
233
274
|
const txBase64 = encoding.stringToBase64urlString(String.fromCharCode(...txBytes));
|
|
234
275
|
const { signature: sigB58 } = await this.client.request(this.solChain, "solana_signTransaction", {
|
|
@@ -237,7 +278,7 @@ class WalletConnectWallet {
|
|
|
237
278
|
});
|
|
238
279
|
return encoding.uint8ArrayToHexString(encoding.bs58.decode(sigB58));
|
|
239
280
|
}
|
|
240
|
-
case
|
|
281
|
+
case enums.SignIntent.SignAndSendTransaction: {
|
|
241
282
|
const txBytes = encoding.uint8ArrayFromHexString(payload);
|
|
242
283
|
const txBase64 = encoding.stringToBase64urlString(String.fromCharCode(...txBytes));
|
|
243
284
|
const sigB58 = await this.client.request(this.solChain, "solana_sendTransaction", {
|
|
@@ -265,7 +306,7 @@ class WalletConnectWallet {
|
|
|
265
306
|
*/
|
|
266
307
|
async getPublicKey(provider) {
|
|
267
308
|
const session = this.client.getSession();
|
|
268
|
-
if (provider.chainInfo.namespace ===
|
|
309
|
+
if (provider.chainInfo.namespace === enums.Chain.Ethereum) {
|
|
269
310
|
const address = getConnectedEthereum(session);
|
|
270
311
|
if (!address) {
|
|
271
312
|
throw new Error("No Ethereum account to retrieve public key");
|
|
@@ -285,7 +326,7 @@ class WalletConnectWallet {
|
|
|
285
326
|
const publicKeyBytesCompressed = crypto.compressRawPublicKey(publicKeyBytes);
|
|
286
327
|
return encoding.uint8ArrayToHexString(publicKeyBytesCompressed);
|
|
287
328
|
}
|
|
288
|
-
if (provider.chainInfo.namespace ===
|
|
329
|
+
if (provider.chainInfo.namespace === enums.Chain.Solana) {
|
|
289
330
|
const address = getConnectedSolana(session);
|
|
290
331
|
if (!address) {
|
|
291
332
|
throw new Error("No Solana account to retrieve public key");
|
|
@@ -307,6 +348,8 @@ class WalletConnectWallet {
|
|
|
307
348
|
await this.client.pair(namespaces).then((newUri) => {
|
|
308
349
|
this.uri = newUri;
|
|
309
350
|
});
|
|
351
|
+
// we emit a disconnect event because WalletConnect doesn't
|
|
352
|
+
this.notifyChange({ type: "disconnect" });
|
|
310
353
|
}
|
|
311
354
|
/**
|
|
312
355
|
* Builds a lightweight provider interface for the given chain.
|
|
@@ -362,15 +405,14 @@ class WalletConnectWallet {
|
|
|
362
405
|
* @returns A WalletProvider object for Ethereum.
|
|
363
406
|
*/
|
|
364
407
|
async buildEthProvider(session, info) {
|
|
365
|
-
const
|
|
366
|
-
const address = raw.split(":")[2];
|
|
408
|
+
const address = getConnectedEthereum(session);
|
|
367
409
|
const chainIdString = this.ethChain.split(":")[1] ?? "1";
|
|
368
410
|
const chainIdDecimal = Number(chainIdString);
|
|
369
411
|
const chainidHex = `0x${chainIdDecimal.toString(16)}`;
|
|
370
412
|
return {
|
|
371
|
-
interfaceType:
|
|
413
|
+
interfaceType: enums.WalletInterfaceType.WalletConnect,
|
|
372
414
|
chainInfo: {
|
|
373
|
-
namespace:
|
|
415
|
+
namespace: enums.Chain.Ethereum,
|
|
374
416
|
chainId: chainidHex,
|
|
375
417
|
},
|
|
376
418
|
info,
|
|
@@ -393,8 +435,8 @@ class WalletConnectWallet {
|
|
|
393
435
|
const raw = session?.namespaces.solana?.accounts?.[0] ?? "";
|
|
394
436
|
const address = raw.split(":")[2];
|
|
395
437
|
return {
|
|
396
|
-
interfaceType:
|
|
397
|
-
chainInfo: { namespace:
|
|
438
|
+
interfaceType: enums.WalletInterfaceType.WalletConnect,
|
|
439
|
+
chainInfo: { namespace: enums.Chain.Solana },
|
|
398
440
|
info,
|
|
399
441
|
provider: this.makeProvider(this.solChain),
|
|
400
442
|
connectedAddresses: address ? [address] : [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sources":["../../../src/__wallet__/wallet-connect/base.ts"],"sourcesContent":[null],"names":["WalletInterfaceType","Chain","SignIntent","Transaction","toHex","bs58","uint8ArrayToHexString","uint8ArrayFromHexString","stringToBase64urlString","recoverPublicKey","hashMessage","compressRawPublicKey"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../src/__wallet__/wallet-connect/base.ts"],"sourcesContent":[null],"names":["WalletInterfaceType","Chain","SignIntent","Transaction","toHex","bs58","uint8ArrayToHexString","uint8ArrayFromHexString","stringToBase64urlString","recoverPublicKey","hashMessage","compressRawPublicKey"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { uint8ArrayFromHexString, stringToBase64urlString, uint8ArrayToHexString, bs58 } from '@turnkey/encoding';
|
|
2
2
|
import { toHex, recoverPublicKey, hashMessage } from 'viem';
|
|
3
3
|
import { compressRawPublicKey } from '@turnkey/crypto';
|
|
4
|
-
import { WalletInterfaceType, Chain, SignIntent } from '../../__types__/
|
|
4
|
+
import { WalletInterfaceType, Chain, SignIntent } from '../../__types__/enums.mjs';
|
|
5
5
|
import { Transaction } from 'ethers';
|
|
6
6
|
|
|
7
7
|
class WalletConnectWallet {
|
|
@@ -25,11 +25,8 @@ class WalletConnectWallet {
|
|
|
25
25
|
this.interfaceType = WalletInterfaceType.WalletConnect;
|
|
26
26
|
this.ethereumNamespaces = [];
|
|
27
27
|
this.solanaNamespaces = [];
|
|
28
|
+
this.isRegeneratingUri = false;
|
|
28
29
|
this.changeListeners = new Set();
|
|
29
|
-
// session disconnected
|
|
30
|
-
this.client.onSessionDelete(() => {
|
|
31
|
-
this.notifyChange({ type: "disconnect" });
|
|
32
|
-
});
|
|
33
30
|
// session updated (actual update to the session for example adding a chain to namespaces)
|
|
34
31
|
this.client.onSessionUpdate(() => {
|
|
35
32
|
this.notifyChange({ type: "update" });
|
|
@@ -43,6 +40,34 @@ class WalletConnectWallet {
|
|
|
43
40
|
this.notifyChange({ type: "chainChanged", chainId });
|
|
44
41
|
}
|
|
45
42
|
});
|
|
43
|
+
// session disconnected
|
|
44
|
+
this.client.onSessionDelete(() => {
|
|
45
|
+
this.notifyChange({ type: "disconnect" });
|
|
46
|
+
});
|
|
47
|
+
// pairing expired without a session being established
|
|
48
|
+
this.client.onPairingExpire(async () => {
|
|
49
|
+
// prevent multiple simultaneous regenerations
|
|
50
|
+
if (this.isRegeneratingUri)
|
|
51
|
+
return;
|
|
52
|
+
this.isRegeneratingUri = true;
|
|
53
|
+
try {
|
|
54
|
+
// we cancel the previous pairing, if any
|
|
55
|
+
// this is to avoid multiple pairings
|
|
56
|
+
// we also error if there is an active pairing
|
|
57
|
+
// and we try to create a new one
|
|
58
|
+
await this.client.cancelPairing();
|
|
59
|
+
const namespaces = this.buildNamespaces();
|
|
60
|
+
const newUri = await this.client.pair(namespaces);
|
|
61
|
+
this.uri = newUri;
|
|
62
|
+
this.notifyChange({ type: "proposalExpired" });
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
console.error("failed to regenerate URI:", error);
|
|
66
|
+
}
|
|
67
|
+
finally {
|
|
68
|
+
this.isRegeneratingUri = false;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
46
71
|
}
|
|
47
72
|
/**
|
|
48
73
|
* Initializes WalletConnect pairing flow with the specified namespaces.
|
|
@@ -76,7 +101,9 @@ class WalletConnectWallet {
|
|
|
76
101
|
return;
|
|
77
102
|
}
|
|
78
103
|
const namespaces = this.buildNamespaces();
|
|
79
|
-
|
|
104
|
+
await this.client.pair(namespaces).then((newUri) => {
|
|
105
|
+
this.uri = newUri;
|
|
106
|
+
});
|
|
80
107
|
}
|
|
81
108
|
/**
|
|
82
109
|
* Returns WalletConnect providers with associated chain/account metadata.
|
|
@@ -108,12 +135,26 @@ class WalletConnectWallet {
|
|
|
108
135
|
* - Throws if the approved session contains no connected accounts.
|
|
109
136
|
*
|
|
110
137
|
* @param _provider - Unused (present for interface compatibility).
|
|
138
|
+
* @returns A promise that resolves with the connected wallet's address.
|
|
111
139
|
* @throws {Error} If the session contains no accounts.
|
|
112
140
|
*/
|
|
113
|
-
async connectWalletAccount(
|
|
141
|
+
async connectWalletAccount(provider) {
|
|
114
142
|
const session = await this.client.approve();
|
|
115
|
-
|
|
116
|
-
|
|
143
|
+
let address;
|
|
144
|
+
switch (provider.chainInfo.namespace) {
|
|
145
|
+
case Chain.Ethereum:
|
|
146
|
+
address = getConnectedEthereum(session);
|
|
147
|
+
break;
|
|
148
|
+
case Chain.Solana:
|
|
149
|
+
address = getConnectedSolana(session);
|
|
150
|
+
break;
|
|
151
|
+
default:
|
|
152
|
+
throw new Error(`Unsupported namespace: ${provider.chainInfo}`);
|
|
153
|
+
}
|
|
154
|
+
if (!address) {
|
|
155
|
+
throw new Error("No connected account found");
|
|
156
|
+
}
|
|
157
|
+
return address;
|
|
117
158
|
}
|
|
118
159
|
/**
|
|
119
160
|
* Switches the user’s WalletConnect session to a new EVM chain.
|
|
@@ -305,6 +346,8 @@ class WalletConnectWallet {
|
|
|
305
346
|
await this.client.pair(namespaces).then((newUri) => {
|
|
306
347
|
this.uri = newUri;
|
|
307
348
|
});
|
|
349
|
+
// we emit a disconnect event because WalletConnect doesn't
|
|
350
|
+
this.notifyChange({ type: "disconnect" });
|
|
308
351
|
}
|
|
309
352
|
/**
|
|
310
353
|
* Builds a lightweight provider interface for the given chain.
|
|
@@ -360,8 +403,7 @@ class WalletConnectWallet {
|
|
|
360
403
|
* @returns A WalletProvider object for Ethereum.
|
|
361
404
|
*/
|
|
362
405
|
async buildEthProvider(session, info) {
|
|
363
|
-
const
|
|
364
|
-
const address = raw.split(":")[2];
|
|
406
|
+
const address = getConnectedEthereum(session);
|
|
365
407
|
const chainIdString = this.ethChain.split(":")[1] ?? "1";
|
|
366
408
|
const chainIdDecimal = Number(chainIdString);
|
|
367
409
|
const chainidHex = `0x${chainIdDecimal.toString(16)}`;
|