@ckb-ccc/xverse 1.0.33 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/dist/advanced.d.mts +2 -0
- package/dist/advanced.mjs +1 -0
- package/dist/advancedBarrel-C-ThB6-A.d.mts +481 -0
- package/dist/advancedBarrel-C-ThB6-A.d.mts.map +1 -0
- package/dist/advancedBarrel-DIYsVxWE.mjs +2 -0
- package/dist/advancedBarrel-DIYsVxWE.mjs.map +1 -0
- package/dist/advancedBarrel.d.mts +2 -0
- package/dist/advancedBarrel.mjs +1 -0
- package/dist/barrel.d.mts +101 -0
- package/dist/barrel.d.mts.map +1 -0
- package/dist/barrel.mjs +2 -0
- package/dist/barrel.mjs.map +1 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.mjs +1 -0
- package/dist/rolldown-runtime-DK3Fl9T5.mjs +1 -0
- package/dist.commonjs/advanced.d.ts +2 -2
- package/dist.commonjs/advanced.js +1 -37
- package/dist.commonjs/advancedBarrel-BCHIO_V8.d.ts +483 -0
- package/dist.commonjs/advancedBarrel-BCHIO_V8.d.ts.map +1 -0
- package/dist.commonjs/advancedBarrel-DA4O2d7u.js +2 -0
- package/dist.commonjs/advancedBarrel-DA4O2d7u.js.map +1 -0
- package/dist.commonjs/advancedBarrel.d.ts +2 -2
- package/dist.commonjs/advancedBarrel.js +1 -17
- package/dist.commonjs/barrel.d.ts +100 -2
- package/dist.commonjs/barrel.d.ts.map +1 -1
- package/dist.commonjs/barrel.js +2 -18
- package/dist.commonjs/barrel.js.map +1 -0
- package/dist.commonjs/index.d.ts +2 -2
- package/dist.commonjs/index.js +1 -37
- package/package.json +28 -31
- package/src/sat-connect-core/types.advanced.ts +6 -4
- package/src/signer.ts +2 -1
- package/tsdown.config.mts +43 -0
- package/dist/advanced.d.ts +0 -2
- package/dist/advanced.d.ts.map +0 -1
- package/dist/advanced.js +0 -1
- package/dist/advancedBarrel.d.ts +0 -2
- package/dist/advancedBarrel.d.ts.map +0 -1
- package/dist/advancedBarrel.js +0 -1
- package/dist/barrel.d.ts +0 -3
- package/dist/barrel.d.ts.map +0 -1
- package/dist/barrel.js +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -1
- package/dist/sat-connect-core/advanced.d.ts +0 -5
- package/dist/sat-connect-core/advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/advanced.js +0 -4
- package/dist/sat-connect-core/btcMethods.advanced.d.ts +0 -280
- package/dist/sat-connect-core/btcMethods.advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/btcMethods.advanced.js +0 -179
- package/dist/sat-connect-core/provider.advanced.d.ts +0 -48
- package/dist/sat-connect-core/provider.advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/provider.advanced.js +0 -21
- package/dist/sat-connect-core/requests.advanced.d.ts +0 -21
- package/dist/sat-connect-core/requests.advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/requests.advanced.js +0 -1
- package/dist/sat-connect-core/types.advanced.d.ts +0 -124
- package/dist/sat-connect-core/types.advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/types.advanced.js +0 -80
- package/dist/sat-connect-core/walletMethods.advanced.d.ts +0 -36
- package/dist/sat-connect-core/walletMethods.advanced.d.ts.map +0 -1
- package/dist/sat-connect-core/walletMethods.advanced.js +0 -37
- package/dist/signer.d.ts +0 -81
- package/dist/signer.d.ts.map +0 -1
- package/dist/signer.js +0 -225
- package/dist/signersFactory.d.ts +0 -13
- package/dist/signersFactory.d.ts.map +0 -1
- package/dist/signersFactory.js +0 -33
- package/dist.commonjs/advanced.d.ts.map +0 -1
- package/dist.commonjs/advancedBarrel.d.ts.map +0 -1
- package/dist.commonjs/index.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/advanced.d.ts +0 -5
- package/dist.commonjs/sat-connect-core/advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/advanced.js +0 -20
- package/dist.commonjs/sat-connect-core/btcMethods.advanced.d.ts +0 -280
- package/dist.commonjs/sat-connect-core/btcMethods.advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/btcMethods.advanced.js +0 -215
- package/dist.commonjs/sat-connect-core/provider.advanced.d.ts +0 -48
- package/dist.commonjs/sat-connect-core/provider.advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/provider.advanced.js +0 -57
- package/dist.commonjs/sat-connect-core/requests.advanced.d.ts +0 -21
- package/dist.commonjs/sat-connect-core/requests.advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/requests.advanced.js +0 -2
- package/dist.commonjs/sat-connect-core/types.advanced.d.ts +0 -124
- package/dist.commonjs/sat-connect-core/types.advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/types.advanced.js +0 -116
- package/dist.commonjs/sat-connect-core/walletMethods.advanced.d.ts +0 -36
- package/dist.commonjs/sat-connect-core/walletMethods.advanced.d.ts.map +0 -1
- package/dist.commonjs/sat-connect-core/walletMethods.advanced.js +0 -73
- package/dist.commonjs/signer.d.ts +0 -81
- package/dist.commonjs/signer.d.ts.map +0 -1
- package/dist.commonjs/signer.js +0 -262
- package/dist.commonjs/signersFactory.d.ts +0 -13
- package/dist.commonjs/signersFactory.d.ts.map +0 -1
- package/dist.commonjs/signersFactory.js +0 -36
package/dist.commonjs/signer.js
DELETED
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.Signer = void 0;
|
|
37
|
-
const core_1 = require("@ckb-ccc/core");
|
|
38
|
-
const bitcoinjs_lib_1 = require("bitcoinjs-lib");
|
|
39
|
-
const v = __importStar(require("valibot"));
|
|
40
|
-
const advancedBarrel_js_1 = require("./advancedBarrel.js");
|
|
41
|
-
async function checkResponse(response) {
|
|
42
|
-
const res = await response;
|
|
43
|
-
if (v.is(advancedBarrel_js_1.rpcErrorResponseMessageSchema, res)) {
|
|
44
|
-
// eslint-disable-next-line @typescript-eslint/only-throw-error
|
|
45
|
-
throw res.error;
|
|
46
|
-
}
|
|
47
|
-
if (v.is(advancedBarrel_js_1.rpcSuccessResponseMessageSchema, res)) {
|
|
48
|
-
return res.result;
|
|
49
|
-
}
|
|
50
|
-
// eslint-disable-next-line @typescript-eslint/only-throw-error
|
|
51
|
-
throw {
|
|
52
|
-
code: advancedBarrel_js_1.RpcErrorCode.INTERNAL_ERROR,
|
|
53
|
-
message: "Received unknown response from provider.",
|
|
54
|
-
data: res,
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Class representing a Bitcoin signer that extends SignerBtc
|
|
59
|
-
* @public
|
|
60
|
-
*/
|
|
61
|
-
class Signer extends core_1.ccc.SignerBtc {
|
|
62
|
-
/**
|
|
63
|
-
* Creates an instance of Signer.
|
|
64
|
-
* @param client - The client instance.
|
|
65
|
-
* @param provider - The provider instance.
|
|
66
|
-
*/
|
|
67
|
-
constructor(client, provider, preferredNetworks = [
|
|
68
|
-
{
|
|
69
|
-
addressPrefix: "ckb",
|
|
70
|
-
signerType: core_1.ccc.SignerType.BTC,
|
|
71
|
-
network: "btc",
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
addressPrefix: "ckt",
|
|
75
|
-
signerType: core_1.ccc.SignerType.BTC,
|
|
76
|
-
network: "btcTestnet",
|
|
77
|
-
},
|
|
78
|
-
]) {
|
|
79
|
-
super(client);
|
|
80
|
-
this.provider = provider;
|
|
81
|
-
this.preferredNetworks = preferredNetworks;
|
|
82
|
-
}
|
|
83
|
-
async assertAddress() {
|
|
84
|
-
this.addressCache =
|
|
85
|
-
this.addressCache ??
|
|
86
|
-
(async () => {
|
|
87
|
-
if (!(await this.isConnected())) {
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
return (await checkResponse(this.provider.request("getAddresses", {
|
|
91
|
-
purposes: [advancedBarrel_js_1.AddressPurpose.Payment],
|
|
92
|
-
}))).addresses[0];
|
|
93
|
-
})();
|
|
94
|
-
const address = await this.addressCache;
|
|
95
|
-
if (address) {
|
|
96
|
-
return address;
|
|
97
|
-
}
|
|
98
|
-
throw Error("Not connected");
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Gets the Bitcoin account address.
|
|
102
|
-
* @returns A promise that resolves to the Bitcoin account address.
|
|
103
|
-
*/
|
|
104
|
-
async getBtcAccount() {
|
|
105
|
-
return (await this.assertAddress()).address;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Gets the Bitcoin public key.
|
|
109
|
-
* @returns A promise that resolves to the Bitcoin public key.
|
|
110
|
-
*/
|
|
111
|
-
async getBtcPublicKey() {
|
|
112
|
-
return core_1.ccc.hexFrom((await this.assertAddress()).publicKey);
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Connects to the provider by requesting accounts.
|
|
116
|
-
* @returns A promise that resolves when the connection is established.
|
|
117
|
-
*/
|
|
118
|
-
async connect() {
|
|
119
|
-
if (await this.isConnected()) {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
await checkResponse(this.provider.request("wallet_requestPermissions", undefined));
|
|
123
|
-
}
|
|
124
|
-
async disconnect() {
|
|
125
|
-
this.addressCache = undefined;
|
|
126
|
-
}
|
|
127
|
-
onReplaced(listener) {
|
|
128
|
-
const stop = [];
|
|
129
|
-
const replacer = () => {
|
|
130
|
-
listener();
|
|
131
|
-
stop[0]?.();
|
|
132
|
-
};
|
|
133
|
-
stop.push(this.provider.addListener("accountChange", replacer), this.provider.addListener("networkChange", replacer));
|
|
134
|
-
return stop[0];
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Checks if the signer is connected.
|
|
138
|
-
* @returns A promise that resolves to true if connected, false otherwise.
|
|
139
|
-
*/
|
|
140
|
-
async isConnected() {
|
|
141
|
-
try {
|
|
142
|
-
await checkResponse(this.provider.request("getBalance", undefined));
|
|
143
|
-
return true;
|
|
144
|
-
}
|
|
145
|
-
catch (_error) {
|
|
146
|
-
return false;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Signs a raw message with the Bitcoin account.
|
|
151
|
-
* @param message - The message to sign.
|
|
152
|
-
* @returns A promise that resolves to the signed message.
|
|
153
|
-
*/
|
|
154
|
-
async signMessageRaw(message) {
|
|
155
|
-
const challenge = typeof message === "string" ? message : core_1.ccc.hexFrom(message).slice(2);
|
|
156
|
-
return (await checkResponse(this.provider.request("signMessage", {
|
|
157
|
-
message: challenge,
|
|
158
|
-
address: (await this.assertAddress()).address,
|
|
159
|
-
protocol: advancedBarrel_js_1.MessageSigningProtocols.ECDSA,
|
|
160
|
-
}))).signature;
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Build default inputsToSign for all unsigned inputs
|
|
164
|
-
*/
|
|
165
|
-
buildDefaultinputsToSign(psbtHex, address) {
|
|
166
|
-
const inputsToSign = [];
|
|
167
|
-
try {
|
|
168
|
-
// Collect all unsigned inputs
|
|
169
|
-
const psbt = bitcoinjs_lib_1.Psbt.fromHex(psbtHex.slice(2));
|
|
170
|
-
psbt.data.inputs.forEach((input, index) => {
|
|
171
|
-
const isSigned = input.finalScriptSig ||
|
|
172
|
-
input.finalScriptWitness ||
|
|
173
|
-
input.tapKeySig ||
|
|
174
|
-
(input.partialSig && input.partialSig.length > 0) ||
|
|
175
|
-
(input.tapScriptSig && input.tapScriptSig.length > 0);
|
|
176
|
-
if (!isSigned) {
|
|
177
|
-
inputsToSign.push({ index, address });
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
// If no unsigned inputs found, the PSBT is already fully signed
|
|
181
|
-
// Let the wallet handle this case (likely a no-op or error)
|
|
182
|
-
}
|
|
183
|
-
catch (error) {
|
|
184
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
185
|
-
throw new Error(`Failed to parse PSBT hex. Please provide inputsToSign explicitly in options. Original error: ${errorMessage}`);
|
|
186
|
-
}
|
|
187
|
-
return inputsToSign;
|
|
188
|
-
}
|
|
189
|
-
async prepareSignPsbtParams(psbtHex, options) {
|
|
190
|
-
let inputsToSign = options?.inputsToSign;
|
|
191
|
-
if (!inputsToSign || !inputsToSign.length) {
|
|
192
|
-
const address = await this.getBtcAccount();
|
|
193
|
-
inputsToSign = this.buildDefaultinputsToSign(psbtHex, address);
|
|
194
|
-
}
|
|
195
|
-
const psbtBase64 = core_1.ccc.bytesTo(psbtHex, "base64");
|
|
196
|
-
const signInputs = inputsToSign.reduce((acc, input) => {
|
|
197
|
-
if (!input.address) {
|
|
198
|
-
throw new Error("Xverse only supports signing with address. Please provide 'address' in inputsToSign.");
|
|
199
|
-
}
|
|
200
|
-
if (acc[input.address]) {
|
|
201
|
-
acc[input.address].push(input.index);
|
|
202
|
-
}
|
|
203
|
-
else {
|
|
204
|
-
acc[input.address] = [input.index];
|
|
205
|
-
}
|
|
206
|
-
return acc;
|
|
207
|
-
}, {});
|
|
208
|
-
return { psbtBase64, signInputs };
|
|
209
|
-
}
|
|
210
|
-
/**
|
|
211
|
-
* Signs a PSBT using Xverse wallet.
|
|
212
|
-
*
|
|
213
|
-
* @param psbtHex - The hex string of PSBT to sign.
|
|
214
|
-
* @param options - Options for signing the PSBT
|
|
215
|
-
* @returns A promise that resolves to the signed PSBT as a Hex string
|
|
216
|
-
*
|
|
217
|
-
* @remarks
|
|
218
|
-
* Xverse accepts:
|
|
219
|
-
* - psbt: A string representing the PSBT to sign, encoded in base64
|
|
220
|
-
* - signInputs: A Record<string, number[]> where:
|
|
221
|
-
* - keys are the addresses to use for signing
|
|
222
|
-
* - values are the indexes of the inputs to sign with each address
|
|
223
|
-
*
|
|
224
|
-
* Xverse returns:
|
|
225
|
-
* - psbt: The base64 encoded signed PSBT
|
|
226
|
-
*
|
|
227
|
-
* @see https://docs.xverse.app/sats-connect/bitcoin-methods/signpsbt
|
|
228
|
-
*/
|
|
229
|
-
async signPsbt(psbtHex, options) {
|
|
230
|
-
const { psbtBase64, signInputs } = await this.prepareSignPsbtParams(core_1.ccc.hexFrom(psbtHex), options);
|
|
231
|
-
const signedPsbtBase64 = (await checkResponse(this.provider.request("signPsbt", {
|
|
232
|
-
psbt: psbtBase64,
|
|
233
|
-
signInputs,
|
|
234
|
-
broadcast: false,
|
|
235
|
-
}))).psbt;
|
|
236
|
-
return core_1.ccc.hexFrom(core_1.ccc.bytesFrom(signedPsbtBase64, "base64"));
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* Broadcasts a PSBT to the Bitcoin network.
|
|
240
|
-
*
|
|
241
|
-
* @remarks
|
|
242
|
-
* Xverse does not support broadcasting a signed PSBT directly.
|
|
243
|
-
* It only supports "Sign and Broadcast" as a single atomic operation via `signAndBroadcastPsbt`.
|
|
244
|
-
*/
|
|
245
|
-
async broadcastPsbt(_psbtHex, _options) {
|
|
246
|
-
throw new Error("Xverse does not support broadcasting signed PSBTs directly. Use signAndBroadcastPsbt instead.");
|
|
247
|
-
}
|
|
248
|
-
async signAndBroadcastPsbt(psbtHex, options) {
|
|
249
|
-
// ccc.hexFrom adds 0x prefix, but BTC expects non-0x
|
|
250
|
-
const { psbtBase64, signInputs } = await this.prepareSignPsbtParams(core_1.ccc.hexFrom(psbtHex), options);
|
|
251
|
-
const result = await checkResponse(this.provider.request("signPsbt", {
|
|
252
|
-
psbt: psbtBase64,
|
|
253
|
-
signInputs,
|
|
254
|
-
broadcast: true,
|
|
255
|
-
}));
|
|
256
|
-
if (!result.txid) {
|
|
257
|
-
throw new Error("Failed to broadcast PSBT");
|
|
258
|
-
}
|
|
259
|
-
return core_1.ccc.hexFrom(result.txid);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
exports.Signer = Signer;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ccc } from "@ckb-ccc/core";
|
|
2
|
-
/**
|
|
3
|
-
* Retrieves the Xverse signer if available.
|
|
4
|
-
* @public
|
|
5
|
-
*
|
|
6
|
-
* @param client - The client instance.
|
|
7
|
-
* @returns All Xverse Signer instances
|
|
8
|
-
*/
|
|
9
|
-
export declare function getXverseSigners(client: ccc.Client, preferredNetworks?: ccc.NetworkPreference[]): {
|
|
10
|
-
wallet: ccc.Wallet;
|
|
11
|
-
signerInfo: ccc.SignerInfo;
|
|
12
|
-
}[];
|
|
13
|
-
//# sourceMappingURL=signersFactory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signersFactory.d.ts","sourceRoot":"","sources":["../src/signersFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAapC;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,iBAAiB,CAAC,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAC1C;IAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAA;CAAE,EAAE,CA+BtD"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getXverseSigners = getXverseSigners;
|
|
4
|
-
const signer_js_1 = require("./signer.js");
|
|
5
|
-
function getProviderById(providerId) {
|
|
6
|
-
return providerId
|
|
7
|
-
?.split(".")
|
|
8
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-return
|
|
9
|
-
.reduce((acc, part) => acc?.[part], window);
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Retrieves the Xverse signer if available.
|
|
13
|
-
* @public
|
|
14
|
-
*
|
|
15
|
-
* @param client - The client instance.
|
|
16
|
-
* @returns All Xverse Signer instances
|
|
17
|
-
*/
|
|
18
|
-
function getXverseSigners(client, preferredNetworks) {
|
|
19
|
-
const windowRef = window;
|
|
20
|
-
const signers = (() => {
|
|
21
|
-
if (windowRef.btc_providers) {
|
|
22
|
-
return windowRef.btc_providers.map((provider) => ({
|
|
23
|
-
wallet: {
|
|
24
|
-
name: provider.name,
|
|
25
|
-
icon: provider.icon,
|
|
26
|
-
},
|
|
27
|
-
signerInfo: {
|
|
28
|
-
name: "BTC",
|
|
29
|
-
signer: new signer_js_1.Signer(client, getProviderById(provider.id), preferredNetworks),
|
|
30
|
-
},
|
|
31
|
-
}));
|
|
32
|
-
}
|
|
33
|
-
return [];
|
|
34
|
-
})();
|
|
35
|
-
return signers;
|
|
36
|
-
}
|