@ckb-ccc/okx 0.0.12-alpha.0 → 0.0.12-alpha.6
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/advancedBarrel.d.ts +1 -1
- package/dist/advancedBarrel.d.ts.map +1 -1
- package/dist/btc/index.d.ts.map +1 -1
- package/dist/btc/index.js +23 -11
- package/dist.commonjs/advancedBarrel.d.ts +1 -1
- package/dist.commonjs/advancedBarrel.d.ts.map +1 -1
- package/dist.commonjs/btc/index.d.ts.map +1 -1
- package/dist.commonjs/btc/index.js +23 -11
- package/package.json +5 -5
- package/src/advancedBarrel.ts +3 -1
- package/src/btc/index.ts +26 -10
package/dist/advancedBarrel.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Nip07A } from "@ckb-ccc/nip07/advanced";
|
|
2
2
|
import { UniSatA } from "@ckb-ccc/uni-sat/advanced";
|
|
3
|
-
export interface BitcoinProvider extends UniSatA.Provider {
|
|
3
|
+
export interface BitcoinProvider extends Pick<UniSatA.Provider, "on" | "removeListener" | "signMessage">, Partial<Omit<UniSatA.Provider, "on" | "removeListener" | "signMessage">> {
|
|
4
4
|
connect?(): Promise<{
|
|
5
5
|
address: string;
|
|
6
6
|
publicKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,EACrE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,CAAC;IAC1E,OAAO,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;IAEH,kBAAkB,CAAC,IAAI,OAAO,CAAC;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI,CAAC,CAAC;CACX;AAED,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,QAAQ;IACpD,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B;;OAEG;IACH,EAAE,EAAE,aAAa,CAAC;IAElB;;;;;OAKG;IACH,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACxC,aAAa,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E"}
|
package/dist/btc/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/btc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,GAAG,CAAC,SAAS;aAU5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAVpC,OAAO,CAAC,OAAO,CAAgB;IAE/B;;;;OAIG;gBAED,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKH,IAAI,QAAQ,IAAI,eAAe,CAwB9B;IAED;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/btc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,GAAG,CAAC,SAAS;aAU5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAVpC,OAAO,CAAC,OAAO,CAAgB;IAE/B;;;;OAIG;gBAED,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKH,IAAI,QAAQ,IAAI,eAAe,CAwB9B;IAED;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBtC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAgBzC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAe5C;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBrC;;;;OAIG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;CAMvE"}
|
package/dist/btc/index.js
CHANGED
|
@@ -49,6 +49,13 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
49
49
|
* @returns {Promise<string>} A promise that resolves to the Bitcoin account address.
|
|
50
50
|
*/
|
|
51
51
|
async getBtcAccount() {
|
|
52
|
+
if (this.provider.getAccounts) {
|
|
53
|
+
const address = (await this.provider.getAccounts())[0];
|
|
54
|
+
if (!address) {
|
|
55
|
+
throw Error("Not connected");
|
|
56
|
+
}
|
|
57
|
+
return address;
|
|
58
|
+
}
|
|
52
59
|
if (this.provider.getSelectedAccount) {
|
|
53
60
|
const account = await this.provider.getSelectedAccount();
|
|
54
61
|
if (!account) {
|
|
@@ -56,17 +63,16 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
56
63
|
}
|
|
57
64
|
return account.address;
|
|
58
65
|
}
|
|
59
|
-
|
|
60
|
-
if (!address) {
|
|
61
|
-
throw Error("Not connected");
|
|
62
|
-
}
|
|
63
|
-
return address;
|
|
66
|
+
throw Error("Unsupported OKX provider");
|
|
64
67
|
}
|
|
65
68
|
/**
|
|
66
69
|
* Gets the Bitcoin public key.
|
|
67
70
|
* @returns {Promise<ccc.Hex>} A promise that resolves to the Bitcoin public key.
|
|
68
71
|
*/
|
|
69
72
|
async getBtcPublicKey() {
|
|
73
|
+
if (this.provider.getPublicKey) {
|
|
74
|
+
return ccc.hexFrom(await this.provider.getPublicKey());
|
|
75
|
+
}
|
|
70
76
|
if (this.provider.getSelectedAccount) {
|
|
71
77
|
const account = await this.provider.getSelectedAccount();
|
|
72
78
|
if (!account) {
|
|
@@ -74,18 +80,22 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
74
80
|
}
|
|
75
81
|
return ccc.hexFrom(account.compressedPublicKey);
|
|
76
82
|
}
|
|
77
|
-
|
|
83
|
+
throw Error("Unsupported OKX provider");
|
|
78
84
|
}
|
|
79
85
|
/**
|
|
80
86
|
* Connects to the provider by requesting accounts.
|
|
81
87
|
* @returns {Promise<void>} A promise that resolves when the connection is established.
|
|
82
88
|
*/
|
|
83
89
|
async connect() {
|
|
90
|
+
if (this.provider.requestAccounts) {
|
|
91
|
+
await this.provider.requestAccounts();
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
84
94
|
if (this.provider.connect) {
|
|
85
95
|
await this.provider.connect();
|
|
86
96
|
return;
|
|
87
97
|
}
|
|
88
|
-
|
|
98
|
+
throw Error("Unsupported OKX provider");
|
|
89
99
|
}
|
|
90
100
|
onReplaced(listener) {
|
|
91
101
|
const stop = [];
|
|
@@ -110,13 +120,15 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
110
120
|
catch (_) {
|
|
111
121
|
return false;
|
|
112
122
|
}
|
|
113
|
-
if (this.provider.
|
|
114
|
-
if ((await this.provider.
|
|
123
|
+
if (this.provider.getAccounts) {
|
|
124
|
+
if ((await this.provider.getAccounts()).length === 0) {
|
|
115
125
|
return false;
|
|
116
126
|
}
|
|
117
127
|
}
|
|
118
|
-
else if (
|
|
119
|
-
|
|
128
|
+
else if (this.provider.getSelectedAccount) {
|
|
129
|
+
if ((await this.provider.getSelectedAccount()) === null) {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
120
132
|
}
|
|
121
133
|
await this.connect();
|
|
122
134
|
return true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Nip07A } from "@ckb-ccc/nip07/advanced";
|
|
2
2
|
import { UniSatA } from "@ckb-ccc/uni-sat/advanced";
|
|
3
|
-
export interface BitcoinProvider extends UniSatA.Provider {
|
|
3
|
+
export interface BitcoinProvider extends Pick<UniSatA.Provider, "on" | "removeListener" | "signMessage">, Partial<Omit<UniSatA.Provider, "on" | "removeListener" | "signMessage">> {
|
|
4
4
|
connect?(): Promise<{
|
|
5
5
|
address: string;
|
|
6
6
|
publicKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,EACrE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,gBAAgB,GAAG,aAAa,CAAC,CAAC;IAC1E,OAAO,CAAC,IAAI,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;IAEH,kBAAkB,CAAC,IAAI,OAAO,CAAC;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI,CAAC,CAAC;CACX;AAED,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,QAAQ;IACpD,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B;;OAEG;IACH,EAAE,EAAE,aAAa,CAAC;IAElB;;;;;OAKG;IACH,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACxC,aAAa,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/btc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,GAAG,CAAC,SAAS;aAU5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAVpC,OAAO,CAAC,OAAO,CAAgB;IAE/B;;;;OAIG;gBAED,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKH,IAAI,QAAQ,IAAI,eAAe,CAwB9B;IAED;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/btc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,GAAG,CAAC,SAAS;aAU5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAVpC,OAAO,CAAC,OAAO,CAAgB;IAE/B;;;;OAIG;gBAED,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKH,IAAI,QAAQ,IAAI,eAAe,CAwB9B;IAED;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBtC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAgBzC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAe5C;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBrC;;;;OAIG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;CAMvE"}
|
|
@@ -52,6 +52,13 @@ class BitcoinSigner extends core_1.ccc.SignerBtc {
|
|
|
52
52
|
* @returns {Promise<string>} A promise that resolves to the Bitcoin account address.
|
|
53
53
|
*/
|
|
54
54
|
async getBtcAccount() {
|
|
55
|
+
if (this.provider.getAccounts) {
|
|
56
|
+
const address = (await this.provider.getAccounts())[0];
|
|
57
|
+
if (!address) {
|
|
58
|
+
throw Error("Not connected");
|
|
59
|
+
}
|
|
60
|
+
return address;
|
|
61
|
+
}
|
|
55
62
|
if (this.provider.getSelectedAccount) {
|
|
56
63
|
const account = await this.provider.getSelectedAccount();
|
|
57
64
|
if (!account) {
|
|
@@ -59,17 +66,16 @@ class BitcoinSigner extends core_1.ccc.SignerBtc {
|
|
|
59
66
|
}
|
|
60
67
|
return account.address;
|
|
61
68
|
}
|
|
62
|
-
|
|
63
|
-
if (!address) {
|
|
64
|
-
throw Error("Not connected");
|
|
65
|
-
}
|
|
66
|
-
return address;
|
|
69
|
+
throw Error("Unsupported OKX provider");
|
|
67
70
|
}
|
|
68
71
|
/**
|
|
69
72
|
* Gets the Bitcoin public key.
|
|
70
73
|
* @returns {Promise<ccc.Hex>} A promise that resolves to the Bitcoin public key.
|
|
71
74
|
*/
|
|
72
75
|
async getBtcPublicKey() {
|
|
76
|
+
if (this.provider.getPublicKey) {
|
|
77
|
+
return core_1.ccc.hexFrom(await this.provider.getPublicKey());
|
|
78
|
+
}
|
|
73
79
|
if (this.provider.getSelectedAccount) {
|
|
74
80
|
const account = await this.provider.getSelectedAccount();
|
|
75
81
|
if (!account) {
|
|
@@ -77,18 +83,22 @@ class BitcoinSigner extends core_1.ccc.SignerBtc {
|
|
|
77
83
|
}
|
|
78
84
|
return core_1.ccc.hexFrom(account.compressedPublicKey);
|
|
79
85
|
}
|
|
80
|
-
|
|
86
|
+
throw Error("Unsupported OKX provider");
|
|
81
87
|
}
|
|
82
88
|
/**
|
|
83
89
|
* Connects to the provider by requesting accounts.
|
|
84
90
|
* @returns {Promise<void>} A promise that resolves when the connection is established.
|
|
85
91
|
*/
|
|
86
92
|
async connect() {
|
|
93
|
+
if (this.provider.requestAccounts) {
|
|
94
|
+
await this.provider.requestAccounts();
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
87
97
|
if (this.provider.connect) {
|
|
88
98
|
await this.provider.connect();
|
|
89
99
|
return;
|
|
90
100
|
}
|
|
91
|
-
|
|
101
|
+
throw Error("Unsupported OKX provider");
|
|
92
102
|
}
|
|
93
103
|
onReplaced(listener) {
|
|
94
104
|
const stop = [];
|
|
@@ -113,13 +123,15 @@ class BitcoinSigner extends core_1.ccc.SignerBtc {
|
|
|
113
123
|
catch (_) {
|
|
114
124
|
return false;
|
|
115
125
|
}
|
|
116
|
-
if (this.provider.
|
|
117
|
-
if ((await this.provider.
|
|
126
|
+
if (this.provider.getAccounts) {
|
|
127
|
+
if ((await this.provider.getAccounts()).length === 0) {
|
|
118
128
|
return false;
|
|
119
129
|
}
|
|
120
130
|
}
|
|
121
|
-
else if (
|
|
122
|
-
|
|
131
|
+
else if (this.provider.getSelectedAccount) {
|
|
132
|
+
if ((await this.provider.getSelectedAccount()) === null) {
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
123
135
|
}
|
|
124
136
|
await this.connect();
|
|
125
137
|
return true;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ckb-ccc/okx",
|
|
3
|
-
"version": "0.0.12-alpha.
|
|
3
|
+
"version": "0.0.12-alpha.6",
|
|
4
4
|
"description": "CCC - CKBer's Codebase. Common Chains Connector's support for OKX",
|
|
5
5
|
"author": "Hanssen0 <hanssen0@hanssen0.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -43,9 +43,9 @@
|
|
|
43
43
|
"access": "public"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@ckb-ccc/core": "0.0.12-alpha.
|
|
47
|
-
"@ckb-ccc/nip07": "0.0.12-alpha.
|
|
48
|
-
"@ckb-ccc/uni-sat": "0.0.12-alpha.
|
|
46
|
+
"@ckb-ccc/core": "0.0.12-alpha.1",
|
|
47
|
+
"@ckb-ccc/nip07": "0.0.12-alpha.1",
|
|
48
|
+
"@ckb-ccc/uni-sat": "0.0.12-alpha.1"
|
|
49
49
|
},
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "3679eba15c5ec5397c514444594a09b777c3ffe1"
|
|
51
51
|
}
|
package/src/advancedBarrel.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { Nip07A } from "@ckb-ccc/nip07/advanced";
|
|
2
2
|
import { UniSatA } from "@ckb-ccc/uni-sat/advanced";
|
|
3
3
|
|
|
4
|
-
export interface BitcoinProvider
|
|
4
|
+
export interface BitcoinProvider
|
|
5
|
+
extends Pick<UniSatA.Provider, "on" | "removeListener" | "signMessage">,
|
|
6
|
+
Partial<Omit<UniSatA.Provider, "on" | "removeListener" | "signMessage">> {
|
|
5
7
|
connect?(): Promise<{
|
|
6
8
|
address: string;
|
|
7
9
|
publicKey: string;
|
package/src/btc/index.ts
CHANGED
|
@@ -64,6 +64,14 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
64
64
|
* @returns {Promise<string>} A promise that resolves to the Bitcoin account address.
|
|
65
65
|
*/
|
|
66
66
|
async getBtcAccount(): Promise<string> {
|
|
67
|
+
if (this.provider.getAccounts) {
|
|
68
|
+
const address = (await this.provider.getAccounts())[0];
|
|
69
|
+
if (!address) {
|
|
70
|
+
throw Error("Not connected");
|
|
71
|
+
}
|
|
72
|
+
return address;
|
|
73
|
+
}
|
|
74
|
+
|
|
67
75
|
if (this.provider.getSelectedAccount) {
|
|
68
76
|
const account = await this.provider.getSelectedAccount();
|
|
69
77
|
if (!account) {
|
|
@@ -72,11 +80,7 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
72
80
|
return account.address;
|
|
73
81
|
}
|
|
74
82
|
|
|
75
|
-
|
|
76
|
-
if (!address) {
|
|
77
|
-
throw Error("Not connected");
|
|
78
|
-
}
|
|
79
|
-
return address;
|
|
83
|
+
throw Error("Unsupported OKX provider");
|
|
80
84
|
}
|
|
81
85
|
|
|
82
86
|
/**
|
|
@@ -84,6 +88,10 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
84
88
|
* @returns {Promise<ccc.Hex>} A promise that resolves to the Bitcoin public key.
|
|
85
89
|
*/
|
|
86
90
|
async getBtcPublicKey(): Promise<ccc.Hex> {
|
|
91
|
+
if (this.provider.getPublicKey) {
|
|
92
|
+
return ccc.hexFrom(await this.provider.getPublicKey());
|
|
93
|
+
}
|
|
94
|
+
|
|
87
95
|
if (this.provider.getSelectedAccount) {
|
|
88
96
|
const account = await this.provider.getSelectedAccount();
|
|
89
97
|
if (!account) {
|
|
@@ -92,7 +100,7 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
92
100
|
return ccc.hexFrom(account.compressedPublicKey);
|
|
93
101
|
}
|
|
94
102
|
|
|
95
|
-
|
|
103
|
+
throw Error("Unsupported OKX provider");
|
|
96
104
|
}
|
|
97
105
|
|
|
98
106
|
/**
|
|
@@ -100,11 +108,17 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
100
108
|
* @returns {Promise<void>} A promise that resolves when the connection is established.
|
|
101
109
|
*/
|
|
102
110
|
async connect(): Promise<void> {
|
|
111
|
+
if (this.provider.requestAccounts) {
|
|
112
|
+
await this.provider.requestAccounts();
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
|
|
103
116
|
if (this.provider.connect) {
|
|
104
117
|
await this.provider.connect();
|
|
105
118
|
return;
|
|
106
119
|
}
|
|
107
|
-
|
|
120
|
+
|
|
121
|
+
throw Error("Unsupported OKX provider");
|
|
108
122
|
}
|
|
109
123
|
|
|
110
124
|
onReplaced(listener: () => void): () => void {
|
|
@@ -133,12 +147,14 @@ export class BitcoinSigner extends ccc.SignerBtc {
|
|
|
133
147
|
return false;
|
|
134
148
|
}
|
|
135
149
|
|
|
136
|
-
if (this.provider.
|
|
150
|
+
if (this.provider.getAccounts) {
|
|
151
|
+
if ((await this.provider.getAccounts()).length === 0) {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
} else if (this.provider.getSelectedAccount) {
|
|
137
155
|
if ((await this.provider.getSelectedAccount()) === null) {
|
|
138
156
|
return false;
|
|
139
157
|
}
|
|
140
|
-
} else if ((await this.provider.getAccounts()).length === 0) {
|
|
141
|
-
return false;
|
|
142
158
|
}
|
|
143
159
|
|
|
144
160
|
await this.connect();
|