@ckb-ccc/core 0.0.8-alpha.3 → 0.0.9-alpha.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/dist/ckb/script.js +2 -2
- package/dist/ckb/transaction.js +2 -2
- package/dist/client/client.d.ts +1 -0
- package/dist/client/client.d.ts.map +1 -1
- package/dist/client/client.js +1 -0
- package/dist/client/clientPublicMainnet.advanced.d.ts.map +1 -1
- package/dist/client/clientPublicMainnet.advanced.js +35 -1
- package/dist/client/clientPublicTestnet.advanced.d.ts.map +1 -1
- package/dist/client/clientPublicTestnet.advanced.js +20 -0
- package/dist/hasher/index.d.ts +17 -2
- package/dist/hasher/index.d.ts.map +1 -1
- package/dist/hasher/index.js +19 -2
- package/dist/signer/nostr/signerNostr.js +2 -2
- package/dist/signer/signer/index.d.ts +12 -0
- package/dist/signer/signer/index.d.ts.map +1 -1
- package/dist/signer/signer/index.js +18 -0
- package/dist.commonjs/address/address.advanced.d.ts +24 -29
- package/dist.commonjs/address/address.advanced.js +89 -115
- package/dist.commonjs/address/advanced.d.ts +1 -1
- package/dist.commonjs/address/advanced.js +14 -30
- package/dist.commonjs/address/index.d.ts +44 -51
- package/dist.commonjs/address/index.js +65 -84
- package/dist.commonjs/advanced.d.ts +1 -1
- package/dist.commonjs/advanced.js +22 -47
- package/dist.commonjs/advancedBarrel.d.ts +1 -1
- package/dist.commonjs/advancedBarrel.js +14 -30
- package/dist.commonjs/barrel.d.ts +1 -1
- package/dist.commonjs/barrel.js +14 -30
- package/dist.commonjs/bytes/advanced.d.ts +2 -11
- package/dist.commonjs/bytes/index.d.ts +3 -9
- package/dist.commonjs/bytes/index.js +26 -28
- package/dist.commonjs/ckb/advanced.d.ts +1 -1
- package/dist.commonjs/ckb/advanced.js +22 -47
- package/dist.commonjs/ckb/index.d.ts +1 -1
- package/dist.commonjs/ckb/index.js +14 -30
- package/dist.commonjs/ckb/molecule.advanced/generated.d.ts +260 -420
- package/dist.commonjs/ckb/molecule.advanced/generated.js +1332 -1536
- package/dist.commonjs/ckb/molecule.advanced/index.d.ts +3 -3
- package/dist.commonjs/ckb/molecule.advanced/index.js +18 -34
- package/dist.commonjs/ckb/script.advanced.d.ts +1 -1
- package/dist.commonjs/ckb/script.advanced.js +9 -12
- package/dist.commonjs/ckb/script.d.ts +117 -121
- package/dist.commonjs/ckb/script.js +176 -220
- package/dist.commonjs/ckb/transaction.advanced.d.ts +1 -1
- package/dist.commonjs/ckb/transaction.advanced.js +4 -4
- package/dist.commonjs/ckb/transaction.d.ts +717 -792
- package/dist.commonjs/ckb/transaction.js +1155 -1383
- package/dist.commonjs/client/advanced.d.ts +1 -1
- package/dist.commonjs/client/advanced.js +14 -30
- package/dist.commonjs/client/client.advanced.d.ts +6 -23
- package/dist.commonjs/client/client.advanced.js +61 -89
- package/dist.commonjs/client/client.d.ts +54 -113
- package/dist.commonjs/client/client.d.ts.map +1 -1
- package/dist.commonjs/client/client.js +182 -214
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +4 -8
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts.map +1 -1
- package/dist.commonjs/client/clientPublicMainnet.advanced.js +161 -144
- package/dist.commonjs/client/clientPublicMainnet.d.ts +6 -8
- package/dist.commonjs/client/clientPublicMainnet.js +15 -17
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +3 -6
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts.map +1 -1
- package/dist.commonjs/client/clientPublicTestnet.advanced.js +199 -204
- package/dist.commonjs/client/clientPublicTestnet.d.ts +6 -8
- package/dist.commonjs/client/clientPublicTestnet.js +13 -13
- package/dist.commonjs/client/clientTypes.advanced.d.ts +14 -14
- package/dist.commonjs/client/clientTypes.advanced.js +1 -1
- package/dist.commonjs/client/clientTypes.d.ts +26 -51
- package/dist.commonjs/client/clientTypes.js +22 -56
- package/dist.commonjs/client/index.d.ts +1 -1
- package/dist.commonjs/client/index.js +14 -30
- package/dist.commonjs/client/jsonRpc/advanced.d.ts +1 -1
- package/dist.commonjs/client/jsonRpc/advanced.js +14 -30
- package/dist.commonjs/client/jsonRpc/index.d.ts +75 -94
- package/dist.commonjs/client/jsonRpc/index.js +108 -135
- package/dist.commonjs/client/jsonRpc/transformers.d.ts +36 -76
- package/dist.commonjs/client/jsonRpc/transformers.js +152 -174
- package/dist.commonjs/client/jsonRpc/types.d.ts +38 -38
- package/dist.commonjs/fixedPoint/index.d.ts +3 -9
- package/dist.commonjs/fixedPoint/index.js +20 -26
- package/dist.commonjs/fixedPoint/index.test.d.ts +1 -1
- package/dist.commonjs/fixedPoint/index.test.js +36 -42
- package/dist.commonjs/hasher/advanced.d.ts +1 -1
- package/dist.commonjs/hasher/index.d.ts +53 -38
- package/dist.commonjs/hasher/index.d.ts.map +1 -1
- package/dist.commonjs/hasher/index.js +69 -58
- package/dist.commonjs/hex/index.d.ts +1 -1
- package/dist.commonjs/hex/index.js +1 -1
- package/dist.commonjs/index.d.ts +1 -1
- package/dist.commonjs/index.js +22 -47
- package/dist.commonjs/num/index.d.ts +1 -1
- package/dist.commonjs/num/index.js +27 -39
- package/dist.commonjs/signer/btc/index.d.ts +1 -1
- package/dist.commonjs/signer/btc/index.js +14 -30
- package/dist.commonjs/signer/btc/signerBtc.d.ts +47 -47
- package/dist.commonjs/signer/btc/signerBtc.js +66 -89
- package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +45 -45
- package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +52 -52
- package/dist.commonjs/signer/btc/verify.d.ts +2 -6
- package/dist.commonjs/signer/btc/verify.js +3 -10
- package/dist.commonjs/signer/ckb/index.d.ts +1 -1
- package/dist.commonjs/signer/ckb/index.js +14 -30
- package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +45 -45
- package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +56 -56
- package/dist.commonjs/signer/ckb/verifyJoyId.d.ts +2 -6
- package/dist.commonjs/signer/ckb/verifyJoyId.js +8 -11
- package/dist.commonjs/signer/dummy/alwaysError.d.ts +4 -4
- package/dist.commonjs/signer/dummy/alwaysError.js +7 -7
- package/dist.commonjs/signer/dummy/dummy.d.ts +7 -7
- package/dist.commonjs/signer/dummy/dummy.js +16 -16
- package/dist.commonjs/signer/dummy/index.d.ts +1 -1
- package/dist.commonjs/signer/dummy/index.js +14 -30
- package/dist.commonjs/signer/dummy/openLink.d.ts +4 -4
- package/dist.commonjs/signer/dummy/openLink.js +7 -7
- package/dist.commonjs/signer/evm/index.d.ts +1 -1
- package/dist.commonjs/signer/evm/index.js +14 -30
- package/dist.commonjs/signer/evm/signerEvm.d.ts +38 -42
- package/dist.commonjs/signer/evm/signerEvm.js +70 -105
- package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +37 -37
- package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +42 -42
- package/dist.commonjs/signer/evm/verify.d.ts +2 -6
- package/dist.commonjs/signer/evm/verify.js +2 -7
- package/dist.commonjs/signer/index.d.ts +1 -1
- package/dist.commonjs/signer/index.js +14 -30
- package/dist.commonjs/signer/nostr/index.d.ts +1 -1
- package/dist.commonjs/signer/nostr/index.js +14 -30
- package/dist.commonjs/signer/nostr/signerNostr.d.ts +57 -57
- package/dist.commonjs/signer/nostr/signerNostr.js +71 -100
- package/dist.commonjs/signer/nostr/verify.d.ts +3 -9
- package/dist.commonjs/signer/nostr/verify.js +39 -50
- package/dist.commonjs/signer/signer/index.d.ts +162 -156
- package/dist.commonjs/signer/signer/index.d.ts.map +1 -1
- package/dist.commonjs/signer/signer/index.js +199 -208
- package/dist.commonjs/utils/index.d.ts +8 -38
- package/dist.commonjs/utils/index.js +12 -18
- package/package.json +3 -3
- package/src/ckb/script.ts +2 -2
- package/src/ckb/transaction.ts +2 -2
- package/src/client/client.ts +1 -0
- package/src/client/clientPublicMainnet.advanced.ts +40 -1
- package/src/client/clientPublicTestnet.advanced.ts +23 -0
- package/src/hasher/index.ts +27 -2
- package/src/signer/nostr/signerNostr.ts +2 -2
- package/src/signer/signer/index.ts +45 -0
package/dist/ckb/script.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { bytesFrom } from "../bytes";
|
|
2
|
-
import {
|
|
2
|
+
import { hashCkb } from "../hasher";
|
|
3
3
|
import { hexFrom } from "../hex";
|
|
4
4
|
import * as mol from "./molecule.advanced";
|
|
5
5
|
import { HASH_TYPES, HASH_TYPE_TO_NUM, NUM_TO_HASH_TYPE, } from "./script.advanced";
|
|
@@ -172,7 +172,7 @@ export class Script {
|
|
|
172
172
|
* ```
|
|
173
173
|
*/
|
|
174
174
|
hash() {
|
|
175
|
-
return
|
|
175
|
+
return hashCkb(this.toBytes());
|
|
176
176
|
}
|
|
177
177
|
/**
|
|
178
178
|
* Creates a Script instance from a byte-like value or molecule Script.
|
package/dist/ckb/transaction.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { bytesFrom } from "../bytes";
|
|
2
2
|
import { Zero, fixedPointFrom } from "../fixedPoint";
|
|
3
|
-
import { Hasher,
|
|
3
|
+
import { Hasher, hashCkb } from "../hasher";
|
|
4
4
|
import { hexFrom } from "../hex";
|
|
5
5
|
import { numFrom, numFromBytes, numToBytes, numToHex, } from "../num";
|
|
6
6
|
import { apply, reduceAsync } from "../utils";
|
|
@@ -792,7 +792,7 @@ export class Transaction {
|
|
|
792
792
|
* ```
|
|
793
793
|
*/
|
|
794
794
|
hash() {
|
|
795
|
-
return
|
|
795
|
+
return hashCkb(this.rawToBytes());
|
|
796
796
|
}
|
|
797
797
|
/**
|
|
798
798
|
* Hashes a witness and updates the hasher.
|
package/dist/client/client.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client/client.js
CHANGED
|
@@ -16,6 +16,7 @@ export var KnownScript;
|
|
|
16
16
|
KnownScript["COTA"] = "COTA";
|
|
17
17
|
KnownScript["OmniLock"] = "OmniLock";
|
|
18
18
|
KnownScript["NostrLock"] = "NostrLock";
|
|
19
|
+
KnownScript["UniqueType"] = "UniqueType";
|
|
19
20
|
KnownScript["SingleUseLock"] = "SingleUseLock";
|
|
20
21
|
KnownScript["OutputTypeProxyLock"] = "OutputTypeProxyLock";
|
|
21
22
|
})(KnownScript || (KnownScript = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientPublicMainnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicMainnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,eAAe,EAAE,MAAM,CAClC,WAAW,EACT,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,GACzE,SAAS,
|
|
1
|
+
{"version":3,"file":"clientPublicMainnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicMainnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,eAAe,EAAE,MAAM,CAClC,WAAW,EACT,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,GACzE,SAAS,CAyLZ,CAAC"}
|
|
@@ -124,7 +124,41 @@ export const MAINNET_SCRIPTS = {
|
|
|
124
124
|
},
|
|
125
125
|
],
|
|
126
126
|
},
|
|
127
|
-
[KnownScript.NostrLock]:
|
|
127
|
+
[KnownScript.NostrLock]: {
|
|
128
|
+
codeHash: "0x641a89ad2f77721b803cd50d01351c1f308444072d5fa20088567196c0574c68",
|
|
129
|
+
hashType: "type",
|
|
130
|
+
cellDeps: [
|
|
131
|
+
{
|
|
132
|
+
cellDep: {
|
|
133
|
+
outPoint: {
|
|
134
|
+
txHash: "0x1911208b136957d5f7c1708a8835edfe8ae1d02700d5cb2c3a6aacf4d5906306",
|
|
135
|
+
index: 0,
|
|
136
|
+
},
|
|
137
|
+
depType: "code",
|
|
138
|
+
},
|
|
139
|
+
type: {
|
|
140
|
+
codeHash: "0x00000000000000000000000000000000000000000000000000545950455f4944",
|
|
141
|
+
hashType: "type",
|
|
142
|
+
args: "0xfad8cb75eb0bb01718e2336002064568bc05887af107f74ed5dd501829e192f8",
|
|
143
|
+
},
|
|
144
|
+
},
|
|
145
|
+
],
|
|
146
|
+
},
|
|
147
|
+
[KnownScript.UniqueType]: {
|
|
148
|
+
codeHash: "0x2c8c11c985da60b0a330c61a85507416d6382c130ba67f0c47ab071e00aec628",
|
|
149
|
+
hashType: "data1",
|
|
150
|
+
cellDeps: [
|
|
151
|
+
{
|
|
152
|
+
cellDep: {
|
|
153
|
+
outPoint: {
|
|
154
|
+
txHash: "0x67524c01c0cb5492e499c7c7e406f2f9d823e162d6b0cf432eacde0c9808c2ad",
|
|
155
|
+
index: 0,
|
|
156
|
+
},
|
|
157
|
+
depType: "code",
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
],
|
|
161
|
+
},
|
|
128
162
|
[KnownScript.SingleUseLock]: undefined,
|
|
129
163
|
[KnownScript.OutputTypeProxyLock]: undefined,
|
|
130
164
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientPublicTestnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,eAAe,EAAE,MAAM,CAClC,WAAW,EACX,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"clientPublicTestnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,eAAe,EAAE,MAAM,CAClC,WAAW,EACX,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,CAqOxE,CAAC"}
|
|
@@ -149,6 +149,26 @@ export const TESTNET_SCRIPTS = {
|
|
|
149
149
|
},
|
|
150
150
|
],
|
|
151
151
|
},
|
|
152
|
+
[KnownScript.UniqueType]: {
|
|
153
|
+
codeHash: "0x8e341bcfec6393dcd41e635733ff2dca00a6af546949f70c57a706c0f344df8b",
|
|
154
|
+
hashType: "type",
|
|
155
|
+
cellDeps: [
|
|
156
|
+
{
|
|
157
|
+
cellDep: {
|
|
158
|
+
outPoint: {
|
|
159
|
+
txHash: "0xff91b063c78ed06f10a1ed436122bd7d671f9a72ef5f5fa28d05252c17cf4cef",
|
|
160
|
+
index: 0,
|
|
161
|
+
},
|
|
162
|
+
depType: "code",
|
|
163
|
+
},
|
|
164
|
+
type: {
|
|
165
|
+
codeHash: "0x00000000000000000000000000000000000000000000000000545950455f4944",
|
|
166
|
+
hashType: "type",
|
|
167
|
+
args: "0xe04976b67600fd25ac50305f77b33aee2c12e3c18e63ece9119e5b32117884b5",
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
},
|
|
152
172
|
[KnownScript.SingleUseLock]: {
|
|
153
173
|
codeHash: "0x8290467a512e5b9a6b816469b0edabba1f4ac474e28ffdd604c2a7c76446bbaf",
|
|
154
174
|
hashType: "data1",
|
package/dist/hasher/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { BytesLike } from "../bytes";
|
|
2
|
+
import { CellInputLike } from "../ckb";
|
|
2
3
|
import { Hex } from "../hex";
|
|
4
|
+
import { NumLike } from "../num";
|
|
3
5
|
export declare class Hasher {
|
|
4
6
|
private readonly hasher;
|
|
5
7
|
/**
|
|
@@ -45,8 +47,21 @@ export declare class Hasher {
|
|
|
45
47
|
*
|
|
46
48
|
* @example
|
|
47
49
|
* ```typescript
|
|
48
|
-
* const hash =
|
|
50
|
+
* const hash = hashCkb("some data"); // Outputs something like "0x..."
|
|
49
51
|
* ```
|
|
50
52
|
*/
|
|
51
|
-
export declare function
|
|
53
|
+
export declare function hashCkb(...data: BytesLike[]): Hex;
|
|
54
|
+
/**
|
|
55
|
+
* Computes the Type ID hash of the given data.
|
|
56
|
+
*
|
|
57
|
+
* @param cellInput - The first cell input of the transaction.
|
|
58
|
+
* @param outputIndex - The output index of the Type ID cell.
|
|
59
|
+
* @returns The hexadecimal string representation of the hash.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const hash = hashTypeId(cellInput, outputIndex); // Outputs something like "0x..."
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export declare function hashTypeId(cellInputLike: CellInputLike, outputIndex: NumLike): Hex;
|
|
52
67
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hasher/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAa,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hasher/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAa,MAAM,UAAU,CAAC;AAChD,OAAO,EAAa,aAAa,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAgB,MAAM,QAAQ,CAAC;AAG/C,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC;;;;;OAKG;gBAES,SAAS,SAAK,EAAE,QAAQ,SAAuB;IAS3D;;;;;;;;;;;;OAYG;IAEH,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;IAK/B;;;;;;;;;;;OAWG;IAEH,MAAM,IAAI,GAAG;CAGd;AAED;;;;;;;;;;GAUG;AAEH,wBAAgB,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,GAAG,CAIjD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,UAAU,CACxB,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,OAAO,GACnB,GAAG,CAKL"}
|
package/dist/hasher/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import blake2b from "blake2b";
|
|
2
2
|
import { bytesFrom } from "../bytes";
|
|
3
|
+
import { CellInput } from "../ckb";
|
|
4
|
+
import { numLeToBytes } from "../num";
|
|
3
5
|
import { CKB_BLAKE2B_PERSONAL } from "./advanced";
|
|
4
6
|
export class Hasher {
|
|
5
7
|
/**
|
|
@@ -52,11 +54,26 @@ export class Hasher {
|
|
|
52
54
|
*
|
|
53
55
|
* @example
|
|
54
56
|
* ```typescript
|
|
55
|
-
* const hash =
|
|
57
|
+
* const hash = hashCkb("some data"); // Outputs something like "0x..."
|
|
56
58
|
* ```
|
|
57
59
|
*/
|
|
58
|
-
export function
|
|
60
|
+
export function hashCkb(...data) {
|
|
59
61
|
const hasher = new Hasher();
|
|
60
62
|
data.forEach((d) => hasher.update(d));
|
|
61
63
|
return hasher.digest();
|
|
62
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Computes the Type ID hash of the given data.
|
|
67
|
+
*
|
|
68
|
+
* @param cellInput - The first cell input of the transaction.
|
|
69
|
+
* @param outputIndex - The output index of the Type ID cell.
|
|
70
|
+
* @returns The hexadecimal string representation of the hash.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const hash = hashTypeId(cellInput, outputIndex); // Outputs something like "0x..."
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export function hashTypeId(cellInputLike, outputIndex) {
|
|
78
|
+
return hashCkb(CellInput.from(cellInputLike).toBytes(), numLeToBytes(outputIndex, 8));
|
|
79
|
+
}
|
|
@@ -3,7 +3,7 @@ import { Address } from "../../address";
|
|
|
3
3
|
import { bytesConcat, bytesFrom } from "../../bytes";
|
|
4
4
|
import { Transaction, WitnessArgs } from "../../ckb";
|
|
5
5
|
import { KnownScript } from "../../client";
|
|
6
|
-
import {
|
|
6
|
+
import { hashCkb } from "../../hasher";
|
|
7
7
|
import { hexFrom } from "../../hex";
|
|
8
8
|
import { Signer, SignerSignType, SignerType } from "../signer";
|
|
9
9
|
import { buildNostrEventFromMessage } from "./verify";
|
|
@@ -38,7 +38,7 @@ export class SignerNostr extends Signer {
|
|
|
38
38
|
async getAddressObjs() {
|
|
39
39
|
const publicKey = await this.getNostrPublicKey();
|
|
40
40
|
return [
|
|
41
|
-
await Address.fromKnownScript(this.client, KnownScript.NostrLock, hexFrom(bytesConcat([0x00],
|
|
41
|
+
await Address.fromKnownScript(this.client, KnownScript.NostrLock, hexFrom(bytesConcat([0x00], hashCkb(publicKey).slice(0, 42)))),
|
|
42
42
|
];
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
@@ -20,6 +20,11 @@ export declare enum SignerType {
|
|
|
20
20
|
CKB = "CKB",
|
|
21
21
|
Nostr = "Nostr"
|
|
22
22
|
}
|
|
23
|
+
export type NetworkPreference = {
|
|
24
|
+
addressPrefix: string;
|
|
25
|
+
signerType: SignerType;
|
|
26
|
+
network: string;
|
|
27
|
+
};
|
|
23
28
|
export declare class Signature {
|
|
24
29
|
signature: string;
|
|
25
30
|
identity: string;
|
|
@@ -36,6 +41,7 @@ export declare abstract class Signer {
|
|
|
36
41
|
abstract get type(): SignerType;
|
|
37
42
|
abstract get signType(): SignerSignType;
|
|
38
43
|
get client(): Client;
|
|
44
|
+
matchNetworkPreference(preferences: NetworkPreference[], currentNetwork: string): NetworkPreference | undefined;
|
|
39
45
|
static verifyMessage(message: string | BytesLike, signature: Signature): Promise<boolean>;
|
|
40
46
|
/**
|
|
41
47
|
* Replace the current client.
|
|
@@ -48,6 +54,12 @@ export declare abstract class Signer {
|
|
|
48
54
|
* @returns A promise that resolves when the connection is complete.
|
|
49
55
|
*/
|
|
50
56
|
abstract connect(): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Disconnects to the signer.
|
|
59
|
+
*
|
|
60
|
+
* @returns A promise that resolves when the signer is disconnected.
|
|
61
|
+
*/
|
|
62
|
+
disconnect(): Promise<void>;
|
|
51
63
|
/**
|
|
52
64
|
* Check if the signer is connected.
|
|
53
65
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/signer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAMhC,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,KAAK,UAAU;IACf,UAAU,eAAe;CAC1B;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,KAAK,UAAU;CAChB;AAED,qBAAa,SAAS;IAEX,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,cAAc;gBAFxB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,cAAc;CAElC;AAED;;;GAGG;AACH,8BAAsB,MAAM;IACd,SAAS,CAAC,OAAO,EAAE,MAAM;gBAAf,OAAO,EAAE,MAAM;IAErC,QAAQ,KAAK,IAAI,IAAI,UAAU,CAAC;IAChC,QAAQ,KAAK,QAAQ,IAAI,cAAc,CAAC;IAExC,IAAI,MAAM,IAAI,MAAM,CAEnB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/signer/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,18 @@ export class Signer {
|
|
|
38
38
|
get client() {
|
|
39
39
|
return this.client_;
|
|
40
40
|
}
|
|
41
|
+
// Returns the preference if we need to switch network
|
|
42
|
+
// undefined otherwise
|
|
43
|
+
matchNetworkPreference(preferences, currentNetwork) {
|
|
44
|
+
if (preferences.some(({ signerType, addressPrefix, network }) => {
|
|
45
|
+
signerType === this.type &&
|
|
46
|
+
addressPrefix === this.client.addressPrefix &&
|
|
47
|
+
network === currentNetwork;
|
|
48
|
+
})) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
return preferences.find(({ signerType, addressPrefix }) => signerType === this.type && addressPrefix === this.client.addressPrefix);
|
|
52
|
+
}
|
|
41
53
|
static async verifyMessage(message, signature) {
|
|
42
54
|
switch (signature.signType) {
|
|
43
55
|
case SignerSignType.EvmPersonal:
|
|
@@ -60,6 +72,12 @@ export class Signer {
|
|
|
60
72
|
this.client_ = client;
|
|
61
73
|
return true;
|
|
62
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Disconnects to the signer.
|
|
77
|
+
*
|
|
78
|
+
* @returns A promise that resolves when the signer is disconnected.
|
|
79
|
+
*/
|
|
80
|
+
async disconnect() { }
|
|
63
81
|
/**
|
|
64
82
|
* Gets the identity for verifying signature, usually it's address
|
|
65
83
|
*
|
|
@@ -17,9 +17,9 @@ import { type AddressLike } from "./index";
|
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
19
|
export declare function addressPayloadFromString(address: string): {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
prefix: string;
|
|
21
|
+
format: AddressFormat;
|
|
22
|
+
payload: number[];
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Converts an address payload into an address-like object.
|
|
@@ -39,32 +39,27 @@ export declare function addressPayloadFromString(address: string): {
|
|
|
39
39
|
* console.log(address.prefix); // Outputs the address prefix
|
|
40
40
|
* ```
|
|
41
41
|
*/
|
|
42
|
-
export declare function addressFromPayload(
|
|
43
|
-
prefix: string,
|
|
44
|
-
format: AddressFormat,
|
|
45
|
-
payload: number[],
|
|
46
|
-
client: Client,
|
|
47
|
-
): Promise<AddressLike>;
|
|
42
|
+
export declare function addressFromPayload(prefix: string, format: AddressFormat, payload: number[], client: Client): Promise<AddressLike>;
|
|
48
43
|
export declare enum AddressFormat {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
44
|
+
/**
|
|
45
|
+
* full version identifies the hashType
|
|
46
|
+
*/
|
|
47
|
+
Full = 0,
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated
|
|
50
|
+
* short version for locks with Known codeHash, deprecated
|
|
51
|
+
*/
|
|
52
|
+
Short = 1,
|
|
53
|
+
/**
|
|
54
|
+
* @deprecated
|
|
55
|
+
* full version with hashType = "Data", deprecated
|
|
56
|
+
*/
|
|
57
|
+
FullData = 2,
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated
|
|
60
|
+
* full version with hashType = "Type", deprecated
|
|
61
|
+
*/
|
|
62
|
+
FullType = 4
|
|
68
63
|
}
|
|
69
64
|
export declare const ADDRESS_BECH32_LIMIT = 1023;
|
|
70
|
-
//# sourceMappingURL=address.advanced.d.ts.map
|
|
65
|
+
//# sourceMappingURL=address.advanced.d.ts.map
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ADDRESS_BECH32_LIMIT =
|
|
4
|
-
exports.AddressFormat =
|
|
5
|
-
exports.addressFromPayload =
|
|
6
|
-
exports.addressPayloadFromString =
|
|
7
|
-
void 0;
|
|
3
|
+
exports.ADDRESS_BECH32_LIMIT = exports.AddressFormat = exports.addressFromPayload = exports.addressPayloadFromString = void 0;
|
|
8
4
|
const bech32_1 = require("bech32");
|
|
9
5
|
const ckb_1 = require("../ckb");
|
|
10
6
|
const client_1 = require("../client");
|
|
@@ -26,35 +22,27 @@ const hex_1 = require("../hex");
|
|
|
26
22
|
* ```
|
|
27
23
|
*/
|
|
28
24
|
function addressPayloadFromString(address) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (formatType === AddressFormat.Full) {
|
|
37
|
-
return { prefix, format: AddressFormat.Full, payload };
|
|
25
|
+
// Try parse full format address
|
|
26
|
+
{
|
|
27
|
+
const { words, prefix } = bech32_1.bech32m.decode(address, exports.ADDRESS_BECH32_LIMIT);
|
|
28
|
+
const [formatType, ...payload] = bech32_1.bech32m.fromWords(words);
|
|
29
|
+
if (formatType === AddressFormat.Full) {
|
|
30
|
+
return { prefix, format: AddressFormat.Full, payload };
|
|
31
|
+
}
|
|
38
32
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
AddressFormat.FullType,
|
|
51
|
-
AddressFormat.Short,
|
|
52
|
-
].includes(formatType)
|
|
53
|
-
) {
|
|
54
|
-
return { prefix, format: formatType, payload };
|
|
33
|
+
// Try parse legacy 2019 format address
|
|
34
|
+
{
|
|
35
|
+
const { prefix, words } = bech32_1.bech32.decode(address, exports.ADDRESS_BECH32_LIMIT);
|
|
36
|
+
const [formatType, ...payload] = bech32_1.bech32.fromWords(words);
|
|
37
|
+
if ([
|
|
38
|
+
AddressFormat.FullData,
|
|
39
|
+
AddressFormat.FullType,
|
|
40
|
+
AddressFormat.Short,
|
|
41
|
+
].includes(formatType)) {
|
|
42
|
+
return { prefix, format: formatType, payload };
|
|
43
|
+
}
|
|
55
44
|
}
|
|
56
|
-
|
|
57
|
-
throw Error(`Unknown address format ${address}`);
|
|
45
|
+
throw Error(`Unknown address format ${address}`);
|
|
58
46
|
}
|
|
59
47
|
exports.addressPayloadFromString = addressPayloadFromString;
|
|
60
48
|
/**
|
|
@@ -76,97 +64,83 @@ exports.addressPayloadFromString = addressPayloadFromString;
|
|
|
76
64
|
* ```
|
|
77
65
|
*/
|
|
78
66
|
async function addressFromPayload(prefix, format, payload, client) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
67
|
+
if (format === AddressFormat.Full) {
|
|
68
|
+
if (payload.length < 32 + 1) {
|
|
69
|
+
throw new Error(`Invalid full address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
script: {
|
|
73
|
+
codeHash: payload.slice(0, 32),
|
|
74
|
+
hashType: (0, ckb_1.hashTypeFromBytes)(payload.slice(32, 33)),
|
|
75
|
+
args: payload.slice(33),
|
|
76
|
+
},
|
|
77
|
+
prefix,
|
|
78
|
+
};
|
|
84
79
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
`Invalid full data address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
|
|
98
|
-
);
|
|
80
|
+
if (format === AddressFormat.FullData) {
|
|
81
|
+
if (payload.length < 32) {
|
|
82
|
+
throw new Error(`Invalid full data address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
script: {
|
|
86
|
+
codeHash: payload.slice(0, 32),
|
|
87
|
+
hashType: "data",
|
|
88
|
+
args: payload.slice(32),
|
|
89
|
+
},
|
|
90
|
+
prefix,
|
|
91
|
+
};
|
|
99
92
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
93
|
+
if (format === AddressFormat.FullType) {
|
|
94
|
+
if (payload.length < 32) {
|
|
95
|
+
throw new Error(`Invalid full type address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
script: {
|
|
99
|
+
codeHash: payload.slice(0, 32),
|
|
100
|
+
hashType: "type",
|
|
101
|
+
args: payload.slice(32),
|
|
102
|
+
},
|
|
103
|
+
prefix,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
// format === AddressFormat.Short
|
|
107
|
+
if (payload.length !== 21) {
|
|
108
|
+
throw new Error(`Invalid short address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
|
|
109
|
+
}
|
|
110
|
+
const script = [
|
|
111
|
+
client_1.KnownScript.Secp256k1Blake160,
|
|
112
|
+
client_1.KnownScript.Secp256k1Multisig,
|
|
113
|
+
client_1.KnownScript.AnyoneCanPay,
|
|
114
|
+
][payload[0]];
|
|
115
|
+
if (script === undefined) {
|
|
116
|
+
throw new Error(`Invalid short address with unknown script ${(0, hex_1.hexFrom)(payload)}`);
|
|
114
117
|
}
|
|
115
118
|
return {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
hashType: "type",
|
|
119
|
-
args: payload.slice(32),
|
|
120
|
-
},
|
|
121
|
-
prefix,
|
|
119
|
+
script: await ckb_1.Script.fromKnownScript(client, script, payload.slice(1)),
|
|
120
|
+
prefix,
|
|
122
121
|
};
|
|
123
|
-
}
|
|
124
|
-
// format === AddressFormat.Short
|
|
125
|
-
if (payload.length !== 21) {
|
|
126
|
-
throw new Error(
|
|
127
|
-
`Invalid short address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
|
|
128
|
-
);
|
|
129
|
-
}
|
|
130
|
-
const script = [
|
|
131
|
-
client_1.KnownScript.Secp256k1Blake160,
|
|
132
|
-
client_1.KnownScript.Secp256k1Multisig,
|
|
133
|
-
client_1.KnownScript.AnyoneCanPay,
|
|
134
|
-
][payload[0]];
|
|
135
|
-
if (script === undefined) {
|
|
136
|
-
throw new Error(
|
|
137
|
-
`Invalid short address with unknown script ${(0, hex_1.hexFrom)(payload)}`,
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
return {
|
|
141
|
-
script: await ckb_1.Script.fromKnownScript(
|
|
142
|
-
client,
|
|
143
|
-
script,
|
|
144
|
-
payload.slice(1),
|
|
145
|
-
),
|
|
146
|
-
prefix,
|
|
147
|
-
};
|
|
148
122
|
}
|
|
149
123
|
exports.addressFromPayload = addressFromPayload;
|
|
150
124
|
var AddressFormat;
|
|
151
125
|
(function (AddressFormat) {
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
126
|
+
/**
|
|
127
|
+
* full version identifies the hashType
|
|
128
|
+
*/
|
|
129
|
+
AddressFormat[AddressFormat["Full"] = 0] = "Full";
|
|
130
|
+
/**
|
|
131
|
+
* @deprecated
|
|
132
|
+
* short version for locks with Known codeHash, deprecated
|
|
133
|
+
*/
|
|
134
|
+
AddressFormat[AddressFormat["Short"] = 1] = "Short";
|
|
135
|
+
/**
|
|
136
|
+
* @deprecated
|
|
137
|
+
* full version with hashType = "Data", deprecated
|
|
138
|
+
*/
|
|
139
|
+
AddressFormat[AddressFormat["FullData"] = 2] = "FullData";
|
|
140
|
+
/**
|
|
141
|
+
* @deprecated
|
|
142
|
+
* full version with hashType = "Type", deprecated
|
|
143
|
+
*/
|
|
144
|
+
AddressFormat[AddressFormat["FullType"] = 4] = "FullType";
|
|
171
145
|
})(AddressFormat || (exports.AddressFormat = AddressFormat = {}));
|
|
172
146
|
exports.ADDRESS_BECH32_LIMIT = 1023;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from "./address.advanced";
|
|
2
|
-
//# sourceMappingURL=advanced.d.ts.map
|
|
2
|
+
//# sourceMappingURL=advanced.d.ts.map
|