@ckb-ccc/spore 0.1.0-alpha.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/CHANGELOG.md +12 -0
- package/README.md +61 -0
- package/dist/advanced.d.ts +5 -0
- package/dist/advanced.d.ts.map +1 -0
- package/dist/advanced.js +4 -0
- package/dist/cluster/index.d.ts +56 -0
- package/dist/cluster/index.d.ts.map +1 -0
- package/dist/cluster/index.js +96 -0
- package/dist/cobuild/index.d.ts +13 -0
- package/dist/cobuild/index.d.ts.map +1 -0
- package/dist/cobuild/index.js +168 -0
- package/dist/codec/base.d.ts +6 -0
- package/dist/codec/base.d.ts.map +1 -0
- package/dist/codec/base.js +10 -0
- package/dist/codec/cluster.d.ts +41 -0
- package/dist/codec/cluster.d.ts.map +1 -0
- package/dist/codec/cluster.js +73 -0
- package/dist/codec/cobuild/buildingPacket.d.ts +465 -0
- package/dist/codec/cobuild/buildingPacket.d.ts.map +1 -0
- package/dist/codec/cobuild/buildingPacket.js +44 -0
- package/dist/codec/cobuild/index.d.ts +4 -0
- package/dist/codec/cobuild/index.d.ts.map +1 -0
- package/dist/codec/cobuild/index.js +3 -0
- package/dist/codec/cobuild/sporeAction.d.ts +314 -0
- package/dist/codec/cobuild/sporeAction.d.ts.map +1 -0
- package/dist/codec/cobuild/sporeAction.js +104 -0
- package/dist/codec/cobuild/witnessLayout.d.ts +43 -0
- package/dist/codec/cobuild/witnessLayout.d.ts.map +1 -0
- package/dist/codec/cobuild/witnessLayout.js +27 -0
- package/dist/codec/index.d.ts +4 -0
- package/dist/codec/index.d.ts.map +1 -0
- package/dist/codec/index.js +3 -0
- package/dist/codec/spore.d.ts +15 -0
- package/dist/codec/spore.d.ts.map +1 -0
- package/dist/codec/spore.js +24 -0
- package/dist/dob/api/decode.d.ts +6 -0
- package/dist/dob/api/decode.d.ts.map +1 -0
- package/dist/dob/api/decode.js +44 -0
- package/dist/dob/api/encode.d.ts +5 -0
- package/dist/dob/api/encode.d.ts.map +1 -0
- package/dist/dob/api/encode.js +77 -0
- package/dist/dob/api/index.d.ts +3 -0
- package/dist/dob/api/index.d.ts.map +1 -0
- package/dist/dob/api/index.js +2 -0
- package/dist/dob/config/index.d.ts +2 -0
- package/dist/dob/config/index.d.ts.map +1 -0
- package/dist/dob/config/index.js +1 -0
- package/dist/dob/config/predefined.d.ts +8 -0
- package/dist/dob/config/predefined.d.ts.map +1 -0
- package/dist/dob/config/predefined.js +59 -0
- package/dist/dob/helper/check.d.ts +5 -0
- package/dist/dob/helper/check.d.ts.map +1 -0
- package/dist/dob/helper/check.js +75 -0
- package/dist/dob/helper/error.d.ts +2 -0
- package/dist/dob/helper/error.d.ts.map +1 -0
- package/dist/dob/helper/error.js +40 -0
- package/dist/dob/helper/index.d.ts +3 -0
- package/dist/dob/helper/index.d.ts.map +1 -0
- package/dist/dob/helper/index.js +2 -0
- package/dist/dob/helper/object.d.ts +59 -0
- package/dist/dob/helper/object.d.ts.map +1 -0
- package/dist/dob/helper/object.js +1 -0
- package/dist/dob/index.d.ts +4 -0
- package/dist/dob/index.d.ts.map +1 -0
- package/dist/dob/index.js +3 -0
- package/dist/helper/index.d.ts +9 -0
- package/dist/helper/index.d.ts.map +1 -0
- package/dist/helper/index.js +37 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/package.json +3 -0
- package/dist/predefined/advanced.d.ts +3 -0
- package/dist/predefined/advanced.d.ts.map +1 -0
- package/dist/predefined/advanced.js +2 -0
- package/dist/predefined/index.d.ts +3 -0
- package/dist/predefined/index.d.ts.map +1 -0
- package/dist/predefined/index.js +2 -0
- package/dist/predefined/mainnet.advanced.d.ts +4 -0
- package/dist/predefined/mainnet.advanced.d.ts.map +1 -0
- package/dist/predefined/mainnet.advanced.js +61 -0
- package/dist/predefined/testnet.advanced.d.ts +4 -0
- package/dist/predefined/testnet.advanced.d.ts.map +1 -0
- package/dist/predefined/testnet.advanced.js +88 -0
- package/dist/predefined/types.d.ts +17 -0
- package/dist/predefined/types.d.ts.map +1 -0
- package/dist/predefined/types.js +18 -0
- package/dist/predefined/utils.d.ts +7 -0
- package/dist/predefined/utils.d.ts.map +1 -0
- package/dist/predefined/utils.js +26 -0
- package/dist/spore/advanced.d.ts +5 -0
- package/dist/spore/advanced.d.ts.map +1 -0
- package/dist/spore/advanced.js +62 -0
- package/dist/spore/index.d.ts +80 -0
- package/dist/spore/index.d.ts.map +1 -0
- package/dist/spore/index.js +135 -0
- package/dist.commonjs/advanced.d.ts +5 -0
- package/dist.commonjs/advanced.d.ts.map +1 -0
- package/dist.commonjs/advanced.js +20 -0
- package/dist.commonjs/cluster/index.d.ts +56 -0
- package/dist.commonjs/cluster/index.d.ts.map +1 -0
- package/dist.commonjs/cluster/index.js +102 -0
- package/dist.commonjs/cobuild/index.d.ts +13 -0
- package/dist.commonjs/cobuild/index.d.ts.map +1 -0
- package/dist.commonjs/cobuild/index.js +179 -0
- package/dist.commonjs/codec/base.d.ts +6 -0
- package/dist.commonjs/codec/base.d.ts.map +1 -0
- package/dist.commonjs/codec/base.js +13 -0
- package/dist.commonjs/codec/cluster.d.ts +41 -0
- package/dist.commonjs/codec/cluster.d.ts.map +1 -0
- package/dist.commonjs/codec/cluster.js +82 -0
- package/dist.commonjs/codec/cobuild/buildingPacket.d.ts +465 -0
- package/dist.commonjs/codec/cobuild/buildingPacket.d.ts.map +1 -0
- package/dist.commonjs/codec/cobuild/buildingPacket.js +47 -0
- package/dist.commonjs/codec/cobuild/index.d.ts +4 -0
- package/dist.commonjs/codec/cobuild/index.d.ts.map +1 -0
- package/dist.commonjs/codec/cobuild/index.js +19 -0
- package/dist.commonjs/codec/cobuild/sporeAction.d.ts +314 -0
- package/dist.commonjs/codec/cobuild/sporeAction.d.ts.map +1 -0
- package/dist.commonjs/codec/cobuild/sporeAction.js +107 -0
- package/dist.commonjs/codec/cobuild/witnessLayout.d.ts +43 -0
- package/dist.commonjs/codec/cobuild/witnessLayout.d.ts.map +1 -0
- package/dist.commonjs/codec/cobuild/witnessLayout.js +30 -0
- package/dist.commonjs/codec/index.d.ts +4 -0
- package/dist.commonjs/codec/index.d.ts.map +1 -0
- package/dist.commonjs/codec/index.js +19 -0
- package/dist.commonjs/codec/spore.d.ts +15 -0
- package/dist.commonjs/codec/spore.d.ts.map +1 -0
- package/dist.commonjs/codec/spore.js +29 -0
- package/dist.commonjs/dob/api/decode.d.ts +6 -0
- package/dist.commonjs/dob/api/decode.d.ts.map +1 -0
- package/dist.commonjs/dob/api/decode.js +49 -0
- package/dist.commonjs/dob/api/encode.d.ts +5 -0
- package/dist.commonjs/dob/api/encode.d.ts.map +1 -0
- package/dist.commonjs/dob/api/encode.js +82 -0
- package/dist.commonjs/dob/api/index.d.ts +3 -0
- package/dist.commonjs/dob/api/index.d.ts.map +1 -0
- package/dist.commonjs/dob/api/index.js +18 -0
- package/dist.commonjs/dob/config/index.d.ts +2 -0
- package/dist.commonjs/dob/config/index.d.ts.map +1 -0
- package/dist.commonjs/dob/config/index.js +17 -0
- package/dist.commonjs/dob/config/predefined.d.ts +8 -0
- package/dist.commonjs/dob/config/predefined.d.ts.map +1 -0
- package/dist.commonjs/dob/config/predefined.js +63 -0
- package/dist.commonjs/dob/helper/check.d.ts +5 -0
- package/dist.commonjs/dob/helper/check.d.ts.map +1 -0
- package/dist.commonjs/dob/helper/check.js +80 -0
- package/dist.commonjs/dob/helper/error.d.ts +2 -0
- package/dist.commonjs/dob/helper/error.d.ts.map +1 -0
- package/dist.commonjs/dob/helper/error.js +43 -0
- package/dist.commonjs/dob/helper/index.d.ts +3 -0
- package/dist.commonjs/dob/helper/index.d.ts.map +1 -0
- package/dist.commonjs/dob/helper/index.js +18 -0
- package/dist.commonjs/dob/helper/object.d.ts +59 -0
- package/dist.commonjs/dob/helper/object.d.ts.map +1 -0
- package/dist.commonjs/dob/helper/object.js +2 -0
- package/dist.commonjs/dob/index.d.ts +4 -0
- package/dist.commonjs/dob/index.d.ts.map +1 -0
- package/dist.commonjs/dob/index.js +19 -0
- package/dist.commonjs/helper/index.d.ts +9 -0
- package/dist.commonjs/helper/index.d.ts.map +1 -0
- package/dist.commonjs/helper/index.js +42 -0
- package/dist.commonjs/index.d.ts +5 -0
- package/dist.commonjs/index.d.ts.map +1 -0
- package/dist.commonjs/index.js +33 -0
- package/dist.commonjs/package.json +3 -0
- package/dist.commonjs/predefined/advanced.d.ts +3 -0
- package/dist.commonjs/predefined/advanced.d.ts.map +1 -0
- package/dist.commonjs/predefined/advanced.js +18 -0
- package/dist.commonjs/predefined/index.d.ts +3 -0
- package/dist.commonjs/predefined/index.d.ts.map +1 -0
- package/dist.commonjs/predefined/index.js +18 -0
- package/dist.commonjs/predefined/mainnet.advanced.d.ts +4 -0
- package/dist.commonjs/predefined/mainnet.advanced.d.ts.map +1 -0
- package/dist.commonjs/predefined/mainnet.advanced.js +64 -0
- package/dist.commonjs/predefined/testnet.advanced.d.ts +4 -0
- package/dist.commonjs/predefined/testnet.advanced.d.ts.map +1 -0
- package/dist.commonjs/predefined/testnet.advanced.js +91 -0
- package/dist.commonjs/predefined/types.d.ts +17 -0
- package/dist.commonjs/predefined/types.d.ts.map +1 -0
- package/dist.commonjs/predefined/types.js +22 -0
- package/dist.commonjs/predefined/utils.d.ts +7 -0
- package/dist.commonjs/predefined/utils.d.ts.map +1 -0
- package/dist.commonjs/predefined/utils.js +32 -0
- package/dist.commonjs/spore/advanced.d.ts +5 -0
- package/dist.commonjs/spore/advanced.d.ts.map +1 -0
- package/dist.commonjs/spore/advanced.js +65 -0
- package/dist.commonjs/spore/index.d.ts +80 -0
- package/dist.commonjs/spore/index.d.ts.map +1 -0
- package/dist.commonjs/spore/index.js +142 -0
- package/package.json +52 -0
- package/src/advanced.ts +4 -0
- package/src/cluster/index.ts +180 -0
- package/src/cobuild/index.ts +220 -0
- package/src/codec/base.ts +11 -0
- package/src/codec/cluster.ts +133 -0
- package/src/codec/cobuild/buildingPacket.ts +72 -0
- package/src/codec/cobuild/index.ts +3 -0
- package/src/codec/cobuild/sporeAction.ts +153 -0
- package/src/codec/cobuild/witnessLayout.ts +40 -0
- package/src/codec/index.ts +3 -0
- package/src/codec/spore.ts +36 -0
- package/src/dob/api/decode.ts +61 -0
- package/src/dob/api/encode.ts +84 -0
- package/src/dob/api/index.ts +2 -0
- package/src/dob/config/index.ts +1 -0
- package/src/dob/config/predefined.ts +71 -0
- package/src/dob/helper/check.ts +107 -0
- package/src/dob/helper/error.ts +41 -0
- package/src/dob/helper/index.ts +2 -0
- package/src/dob/helper/object.ts +66 -0
- package/src/dob/index.ts +3 -0
- package/src/helper/index.ts +68 -0
- package/src/index.ts +4 -0
- package/src/predefined/advanced.ts +2 -0
- package/src/predefined/index.ts +2 -0
- package/src/predefined/mainnet.advanced.ts +76 -0
- package/src/predefined/testnet.advanced.ts +107 -0
- package/src/predefined/types.ts +37 -0
- package/src/predefined/utils.ts +56 -0
- package/src/spore/advanced.ts +88 -0
- package/src/spore/index.ts +236 -0
- package/typedoc.json +6 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.decodeDobBySporeId = decodeDobBySporeId;
|
|
4
|
+
exports.decodeDobBySporeCell = decodeDobBySporeCell;
|
|
5
|
+
exports.decodeDobBySporeOutpoint = decodeDobBySporeOutpoint;
|
|
6
|
+
const core_1 = require("@ckb-ccc/core");
|
|
7
|
+
const axios_1 = require("axios");
|
|
8
|
+
const error_js_1 = require("../helper/error.js");
|
|
9
|
+
async function decodeDobBySporeId(sporeId, dobServerUrl) {
|
|
10
|
+
const axios = new axios_1.Axios({
|
|
11
|
+
baseURL: dobServerUrl,
|
|
12
|
+
method: "POST",
|
|
13
|
+
headers: {
|
|
14
|
+
"Content-Type": "application/json",
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
const result = await axios.post("/", JSON.stringify({
|
|
18
|
+
id: 0,
|
|
19
|
+
jsonrpc: "2.0",
|
|
20
|
+
method: "dob_decode",
|
|
21
|
+
params: [core_1.ccc.hexFrom(sporeId).replace(/^0x/, "")],
|
|
22
|
+
}));
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-argument
|
|
24
|
+
const decoderResult = JSON.parse(result.data);
|
|
25
|
+
if ("error" in decoderResult) {
|
|
26
|
+
const serverError = (0, error_js_1.getErrorByCode)(decoderResult.error.code);
|
|
27
|
+
throw new Error(`Decode DOB failed: ${serverError}`);
|
|
28
|
+
}
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-argument
|
|
30
|
+
const renderResult = JSON.parse(decoderResult.result);
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-argument
|
|
32
|
+
const renderOutput = JSON.parse(renderResult.render_output);
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
34
|
+
return renderOutput;
|
|
35
|
+
}
|
|
36
|
+
async function decodeDobBySporeCell(sporeOutput, dobServerUrl) {
|
|
37
|
+
const sporeId = sporeOutput.type?.args;
|
|
38
|
+
if (sporeId === undefined) {
|
|
39
|
+
throw new Error("Invalid spore cell: missing spore id");
|
|
40
|
+
}
|
|
41
|
+
return decodeDobBySporeId(core_1.ccc.hexFrom(sporeId), dobServerUrl);
|
|
42
|
+
}
|
|
43
|
+
async function decodeDobBySporeOutpoint(client, sporeOutpoint, dobServerUrl) {
|
|
44
|
+
const liveCell = await client.getCell(sporeOutpoint);
|
|
45
|
+
if (!liveCell) {
|
|
46
|
+
throw new Error("Invalid spore outpoint: missing spore cell");
|
|
47
|
+
}
|
|
48
|
+
return decodeDobBySporeCell(liveCell.cellOutput, dobServerUrl);
|
|
49
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DNA, Dob0, Dob1 } from "../helper/index.js";
|
|
2
|
+
export declare function encodeDna(dna: DNA): ArrayBuffer;
|
|
3
|
+
export declare function encodeClusterDescriptionForDob0(dob0: Dob0): string;
|
|
4
|
+
export declare function encodeClusterDescriptionForDob1(dob1: Dob1): string;
|
|
5
|
+
//# sourceMappingURL=encode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../../src/dob/api/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,GAAG,EACH,IAAI,EACJ,IAAI,EACL,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAG/C;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CA0BlE;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAyClE"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.encodeDna = encodeDna;
|
|
4
|
+
exports.encodeClusterDescriptionForDob0 = encodeClusterDescriptionForDob0;
|
|
5
|
+
exports.encodeClusterDescriptionForDob1 = encodeClusterDescriptionForDob1;
|
|
6
|
+
const index_js_1 = require("../helper/index.js");
|
|
7
|
+
function encodeDna(dna) {
|
|
8
|
+
const encoder = new TextEncoder();
|
|
9
|
+
return encoder.encode(JSON.stringify(dna));
|
|
10
|
+
}
|
|
11
|
+
function encodeClusterDescriptionForDob0(dob0) {
|
|
12
|
+
(0, index_js_1.checkDecoder)(dob0.dob.decoder);
|
|
13
|
+
dob0.dob.pattern.forEach((v) => {
|
|
14
|
+
(0, index_js_1.checkPatternDob0)(v);
|
|
15
|
+
v.toJSON = function () {
|
|
16
|
+
if (v.traitArgs) {
|
|
17
|
+
return [
|
|
18
|
+
v.traitName,
|
|
19
|
+
v.dobType,
|
|
20
|
+
v.dnaOffset,
|
|
21
|
+
v.dnaLength,
|
|
22
|
+
v.patternType,
|
|
23
|
+
v.traitArgs,
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return [
|
|
28
|
+
v.traitName,
|
|
29
|
+
v.dobType,
|
|
30
|
+
v.dnaOffset,
|
|
31
|
+
v.dnaLength,
|
|
32
|
+
v.patternType,
|
|
33
|
+
];
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
});
|
|
37
|
+
return JSON.stringify(dob0);
|
|
38
|
+
}
|
|
39
|
+
function encodeClusterDescriptionForDob1(dob1) {
|
|
40
|
+
dob1.dob.decoders.forEach((value) => {
|
|
41
|
+
(0, index_js_1.checkDecoder)(value.decoder);
|
|
42
|
+
value.pattern.forEach((v) => {
|
|
43
|
+
if ("dnaOffset" in v) {
|
|
44
|
+
(0, index_js_1.checkPatternDob0)(v);
|
|
45
|
+
v.toJSON = function () {
|
|
46
|
+
if (v.traitArgs) {
|
|
47
|
+
return [
|
|
48
|
+
v.traitName,
|
|
49
|
+
v.dobType,
|
|
50
|
+
v.dnaOffset,
|
|
51
|
+
v.dnaLength,
|
|
52
|
+
v.patternType,
|
|
53
|
+
v.traitArgs,
|
|
54
|
+
];
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
return [
|
|
58
|
+
v.traitName,
|
|
59
|
+
v.dobType,
|
|
60
|
+
v.dnaOffset,
|
|
61
|
+
v.dnaLength,
|
|
62
|
+
v.patternType,
|
|
63
|
+
];
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
(0, index_js_1.checkPatternDob1)(v);
|
|
69
|
+
v.toJSON = () => {
|
|
70
|
+
return [
|
|
71
|
+
v.imageName,
|
|
72
|
+
v.svgFields,
|
|
73
|
+
v.traitName,
|
|
74
|
+
v.patternType,
|
|
75
|
+
v.traitArgs,
|
|
76
|
+
];
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
return JSON.stringify(dob1);
|
|
82
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dob/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./decode.js"), exports);
|
|
18
|
+
__exportStar(require("./encode.js"), exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dob/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./predefined.js"), exports);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ccc } from "@ckb-ccc/core";
|
|
2
|
+
import { Decoder } from "../helper/index.js";
|
|
3
|
+
export type DobType = "dob0" | "dob1";
|
|
4
|
+
export type DobScriptInfo = Record<DobType, Decoder>;
|
|
5
|
+
export declare const DOB_TESTNET_DECODERS: DobScriptInfo;
|
|
6
|
+
export declare const DOB_MAINNET_DECODERS: DobScriptInfo;
|
|
7
|
+
export declare function getDecoder(client: ccc.Client, dobType: DobType, dobScriptInfo?: DobScriptInfo): Decoder;
|
|
8
|
+
//# sourceMappingURL=predefined.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"predefined.d.ts","sourceRoot":"","sources":["../../../src/dob/config/predefined.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AACtC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAErD,eAAO,MAAM,oBAAoB,EAAE,aAwBjC,CAAC;AAEH,eAAO,MAAM,oBAAoB,EAAE,aAwBjC,CAAC;AAEH,wBAAgB,UAAU,CACxB,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,OAAO,EAAE,OAAO,EAChB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAQT"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DOB_MAINNET_DECODERS = exports.DOB_TESTNET_DECODERS = void 0;
|
|
4
|
+
exports.getDecoder = getDecoder;
|
|
5
|
+
exports.DOB_TESTNET_DECODERS = Object.freeze({
|
|
6
|
+
["dob0"]: {
|
|
7
|
+
type: "code_hash",
|
|
8
|
+
hash: "0x13cac78ad8482202f18f9df4ea707611c35f994375fa03ae79121312dda9925c",
|
|
9
|
+
},
|
|
10
|
+
// another avaliable options:
|
|
11
|
+
// {
|
|
12
|
+
// type: "type_id",
|
|
13
|
+
// hash: "0x784e32cef202b9d4759ea96e80d806f94051e8069fd34d761f452553700138d7",
|
|
14
|
+
// }
|
|
15
|
+
// or
|
|
16
|
+
// {
|
|
17
|
+
// type: "type_script",
|
|
18
|
+
// script: {
|
|
19
|
+
// code_hash:
|
|
20
|
+
// "0x00000000000000000000000000000000000000000000000000545950455f4944",
|
|
21
|
+
// hash_type: "type",
|
|
22
|
+
// args: "0x784e32cef202b9d4759ea96e80d806f94051e8069fd34d761f452553700138d7",
|
|
23
|
+
// }
|
|
24
|
+
// }
|
|
25
|
+
["dob1"]: {
|
|
26
|
+
type: "code_hash",
|
|
27
|
+
hash: "0xda3525549b72970b4c95f5b5749357f20d1293d335710b674f09c32f7d54b6dc",
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
exports.DOB_MAINNET_DECODERS = Object.freeze({
|
|
31
|
+
["dob0"]: {
|
|
32
|
+
type: "code_hash",
|
|
33
|
+
hash: "0x13cac78ad8482202f18f9df4ea707611c35f994375fa03ae79121312dda9925c",
|
|
34
|
+
},
|
|
35
|
+
// another avaliable options:
|
|
36
|
+
// {
|
|
37
|
+
// type: "type_id",
|
|
38
|
+
// hash: "0x8892bea4405a1f077921799bc0f4516e0ebaef7aea0dfc6614a8898fb47d5372",
|
|
39
|
+
// },
|
|
40
|
+
// or
|
|
41
|
+
// {
|
|
42
|
+
// type: "type_script",
|
|
43
|
+
// script: {
|
|
44
|
+
// code_hash:
|
|
45
|
+
// "0x00000000000000000000000000000000000000000000000000545950455f4944",
|
|
46
|
+
// hash_type: "type",
|
|
47
|
+
// args: "0x8892bea4405a1f077921799bc0f4516e0ebaef7aea0dfc6614a8898fb47d5372",
|
|
48
|
+
// }
|
|
49
|
+
// }
|
|
50
|
+
["dob1"]: {
|
|
51
|
+
type: "code_hash",
|
|
52
|
+
hash: "0xda3525549b72970b4c95f5b5749357f20d1293d335710b674f09c32f7d54b6dc",
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
function getDecoder(client, dobType, dobScriptInfo) {
|
|
56
|
+
if (dobScriptInfo) {
|
|
57
|
+
return dobScriptInfo[dobType];
|
|
58
|
+
}
|
|
59
|
+
if (client.addressPrefix === "ckb") {
|
|
60
|
+
return exports.DOB_MAINNET_DECODERS[dobType];
|
|
61
|
+
}
|
|
62
|
+
return exports.DOB_TESTNET_DECODERS[dobType];
|
|
63
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Decoder, PatternElementDob0, PatternElementDob1 } from "./object.js";
|
|
2
|
+
export declare function checkDecoder(decoder: Decoder): void;
|
|
3
|
+
export declare function checkPatternDob0(value: PatternElementDob0): void;
|
|
4
|
+
export declare function checkPatternDob1(value: PatternElementDob1): void;
|
|
5
|
+
//# sourceMappingURL=check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/dob/helper/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE9E,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,QAW5C;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,QAiCzD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,QAwDzD"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkDecoder = checkDecoder;
|
|
4
|
+
exports.checkPatternDob0 = checkPatternDob0;
|
|
5
|
+
exports.checkPatternDob1 = checkPatternDob1;
|
|
6
|
+
function checkDecoder(decoder) {
|
|
7
|
+
if (decoder.type === "code_hash" || decoder.type === "type_id") {
|
|
8
|
+
if (decoder.hash === undefined) {
|
|
9
|
+
throw new Error("Invalid decoder: 'hash' is required for 'code_hash' and 'type_id'");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
if (decoder.type === "type_script" && decoder.script === undefined) {
|
|
13
|
+
throw new Error("Invalid decoder: 'script' is required for 'type_script'");
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function checkPatternDob0(value) {
|
|
17
|
+
switch (value.patternType) {
|
|
18
|
+
case "options": {
|
|
19
|
+
if (value.traitArgs === undefined) {
|
|
20
|
+
throw new Error("Invalid pattern: 'traitArgs' is required for 'options'");
|
|
21
|
+
}
|
|
22
|
+
if (value.traitArgs.length === 0) {
|
|
23
|
+
throw new Error("Invalid pattern: 'traitArgs' should not be empty for 'options'");
|
|
24
|
+
}
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
case "range": {
|
|
28
|
+
if (value.traitArgs === undefined) {
|
|
29
|
+
throw new Error("Invalid pattern: 'traitArgs' is required for 'range'");
|
|
30
|
+
}
|
|
31
|
+
if (value.traitArgs.length !== 2 ||
|
|
32
|
+
value.traitArgs.filter((v) => typeof v === "number").length !== 2) {
|
|
33
|
+
throw new Error("Invalid pattern: 'traitArgs' should contain exactly 2 numbers for 'range'");
|
|
34
|
+
}
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (value.dnaLength === 0) {
|
|
39
|
+
throw new Error("Invalid pattern: 'dnaLength' should be greater than 0");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function checkPatternDob1(value) {
|
|
43
|
+
switch (value.patternType) {
|
|
44
|
+
case "options": {
|
|
45
|
+
if (!Array.isArray(value.traitArgs)) {
|
|
46
|
+
throw new Error("Invalid pattern: 'traitArgs' should be an array for 'options'");
|
|
47
|
+
}
|
|
48
|
+
for (const args of value.traitArgs) {
|
|
49
|
+
if (args.length !== 2) {
|
|
50
|
+
throw new Error("Invalid pattern: 'traitArgs' should contain exactly 2 elements for 'options'");
|
|
51
|
+
}
|
|
52
|
+
if (typeof args[0] !== "string") {
|
|
53
|
+
if (!Array.isArray(args[0])) {
|
|
54
|
+
throw new Error("Invalid pattern: 'traitArgs[0]' should be a string or an array that contains only 2 numbers or the '*' for 'options'");
|
|
55
|
+
}
|
|
56
|
+
if (args[0].length === 1 && args[0][0] !== "*") {
|
|
57
|
+
throw new Error("Invalid pattern: 'traitArgs[0]' should be a string or an array that contains only 2 numbers or the '*' for 'options'");
|
|
58
|
+
}
|
|
59
|
+
if (args[0].length === 2 &&
|
|
60
|
+
(typeof args[0][0] !== "number" || typeof args[0][1] !== "number")) {
|
|
61
|
+
throw new Error("Invalid pattern: 'traitArgs[0]' should be a string or an array that contains only 2 numbers or the '*' for 'options'");
|
|
62
|
+
}
|
|
63
|
+
if (args[0].length === 0 || args[0].length > 2) {
|
|
64
|
+
throw new Error("Invalid pattern: 'traitArgs[0]' should be a string or an array that contains only 2 numbers or the '*' for 'options'");
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (typeof args[1] !== "string") {
|
|
68
|
+
throw new Error("Invalid pattern: 'traitArgs[1]' should be a string for 'options'");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
case "raw": {
|
|
74
|
+
if (value.traitName !== "" || typeof value.traitArgs !== "string") {
|
|
75
|
+
throw new Error("Invalid pattern: 'traitName' should be empty and 'traitArgs' should be a string for 'raw'");
|
|
76
|
+
}
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../src/dob/helper/error.ts"],"names":[],"mappings":"AAkCA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMnD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getErrorByCode = getErrorByCode;
|
|
4
|
+
const errors = {
|
|
5
|
+
1001: "DnaLengthNotMatch",
|
|
6
|
+
1002: "SporeIdLengthInvalid",
|
|
7
|
+
1003: "NativeDecoderNotFound",
|
|
8
|
+
1004: "SporeIdNotFound",
|
|
9
|
+
1005: "SporeDataUncompatible",
|
|
10
|
+
1006: "SporeDataContentTypeUncompatible",
|
|
11
|
+
1007: "DOBVersionUnexpected",
|
|
12
|
+
1008: "ClusterIdNotSet",
|
|
13
|
+
1009: "ClusterIdNotFound",
|
|
14
|
+
1010: "ClusterDataUncompatible",
|
|
15
|
+
1011: "DecoderIdNotFound",
|
|
16
|
+
1012: "DecoderOutputInvalid",
|
|
17
|
+
1013: "HexedDNAParseError",
|
|
18
|
+
1014: "HexedSporeIdParseError",
|
|
19
|
+
1015: "DecoderBinaryPathInvalid",
|
|
20
|
+
1016: "DecoderExecutionError",
|
|
21
|
+
1017: "DecoderExecutionInternalError",
|
|
22
|
+
1018: "FetchLiveCellsError",
|
|
23
|
+
1019: "FetchTransactionError",
|
|
24
|
+
1020: "NoOutputCellInTransaction",
|
|
25
|
+
1021: "DOBContentUnexpected",
|
|
26
|
+
1022: "DOBMetadataUnexpected",
|
|
27
|
+
1023: "DOBRenderCacheNotFound",
|
|
28
|
+
1024: "DOBRenderCacheModified",
|
|
29
|
+
1025: "DecoderBinaryHashInvalid",
|
|
30
|
+
1026: "DecoderBinaryNotFoundInCell",
|
|
31
|
+
1027: "JsonRpcRequestError",
|
|
32
|
+
1028: "SystemTimeError",
|
|
33
|
+
1029: "DecoderHashNotFound",
|
|
34
|
+
1030: "DecoderScriptNotFound",
|
|
35
|
+
1031: "DecoderChainIsEmpty",
|
|
36
|
+
};
|
|
37
|
+
function getErrorByCode(code) {
|
|
38
|
+
const errorIndex = Object.keys(errors).indexOf(code.toString());
|
|
39
|
+
if (errorIndex < 0) {
|
|
40
|
+
throw new Error(`Error code ${code} not found`);
|
|
41
|
+
}
|
|
42
|
+
return Object.values(errors)[errorIndex];
|
|
43
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dob/helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./check.js"), exports);
|
|
18
|
+
__exportStar(require("./object.js"), exports);
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
export type DNA = string | {
|
|
2
|
+
dna: string;
|
|
3
|
+
} | string[];
|
|
4
|
+
export interface Decoder {
|
|
5
|
+
type: "code_hash" | "type_id" | "type_script";
|
|
6
|
+
hash?: string;
|
|
7
|
+
script?: {
|
|
8
|
+
code_hash: string;
|
|
9
|
+
hash_type: string;
|
|
10
|
+
args: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export interface PatternElementDob0 {
|
|
14
|
+
traitName: string;
|
|
15
|
+
dobType: string;
|
|
16
|
+
dnaOffset: number;
|
|
17
|
+
dnaLength: number;
|
|
18
|
+
patternType: "options" | "range" | "rawNumber" | "rawString" | "utf8";
|
|
19
|
+
traitArgs?: string[] | number[];
|
|
20
|
+
toJSON?: () => unknown;
|
|
21
|
+
}
|
|
22
|
+
export interface PatternDob0 {
|
|
23
|
+
ver: 0;
|
|
24
|
+
decoder: Decoder;
|
|
25
|
+
pattern: PatternElementDob0[];
|
|
26
|
+
}
|
|
27
|
+
export interface Dob0 {
|
|
28
|
+
description: string;
|
|
29
|
+
dob: PatternDob0;
|
|
30
|
+
}
|
|
31
|
+
export type Dob1PatternArgs = string | number[] | ["*"];
|
|
32
|
+
export interface PatternElementDob1 {
|
|
33
|
+
imageName: string;
|
|
34
|
+
svgFields: "attributes" | "elements";
|
|
35
|
+
traitName: string;
|
|
36
|
+
patternType: "options" | "raw";
|
|
37
|
+
traitArgs: Dob1PatternArgs[][] | string;
|
|
38
|
+
toJSON?: () => unknown;
|
|
39
|
+
}
|
|
40
|
+
export interface PatternDob1 {
|
|
41
|
+
ver: 1;
|
|
42
|
+
decoders: {
|
|
43
|
+
decoder: Decoder;
|
|
44
|
+
pattern: PatternElementDob0[] | PatternElementDob1[];
|
|
45
|
+
}[];
|
|
46
|
+
}
|
|
47
|
+
export interface Dob1 {
|
|
48
|
+
description: string;
|
|
49
|
+
dob: PatternDob1;
|
|
50
|
+
}
|
|
51
|
+
export interface DecodeElement {
|
|
52
|
+
name: string;
|
|
53
|
+
traits: {
|
|
54
|
+
type: string;
|
|
55
|
+
value: number | string;
|
|
56
|
+
}[];
|
|
57
|
+
}
|
|
58
|
+
export type RenderOutput = DecodeElement[];
|
|
59
|
+
//# sourceMappingURL=object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/dob/helper/object.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,EAAE,CAAC;AAEtD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;IACtE,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,CAAC,CAAC;IACP,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,IAAI;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,WAAW,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAExD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,GAAG,UAAU,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,SAAS,GAAG,KAAK,CAAC;IAC/B,SAAS,EAAE,eAAe,EAAE,EAAE,GAAG,MAAM,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,CAAC,CAAC;IACP,QAAQ,EAAE;QACR,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAAC;KACtD,EAAE,CAAC;CACL;AAED,MAAM,WAAW,IAAI;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,WAAW,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;KACxB,EAAE,CAAC;CACL;AAED,MAAM,MAAM,YAAY,GAAG,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dob/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./api/index.js"), exports);
|
|
18
|
+
__exportStar(require("./config/index.js"), exports);
|
|
19
|
+
__exportStar(require("./helper/index.js"), exports);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ccc } from "@ckb-ccc/core";
|
|
2
|
+
import { SporeScriptInfo, SporeScriptInfoLike } from "../predefined/index.js";
|
|
3
|
+
export declare function findSingletonCellByArgs(client: ccc.Client, args: ccc.HexLike, scripts: (SporeScriptInfoLike | undefined)[]): Promise<{
|
|
4
|
+
cell: ccc.Cell;
|
|
5
|
+
scriptInfo: SporeScriptInfo;
|
|
6
|
+
} | undefined>;
|
|
7
|
+
export declare function searchOneCellBySigner(signer: ccc.Signer): Promise<ccc.Cell | undefined>;
|
|
8
|
+
export declare function injectOneCapacityCell(signer: ccc.Signer, tx: ccc.Transaction): Promise<void>;
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helper/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,IAAI,EAAE,GAAG,CAAC,OAAO,EACjB,OAAO,EAAE,CAAC,mBAAmB,GAAG,SAAS,CAAC,EAAE,GAC3C,OAAO,CACN;IACE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC;IACf,UAAU,EAAE,eAAe,CAAC;CAC7B,GACD,SAAS,CACZ,CAqBA;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,GAAG,CAAC,MAAM,GACjB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC,CAY/B;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,EAAE,EAAE,GAAG,CAAC,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findSingletonCellByArgs = findSingletonCellByArgs;
|
|
4
|
+
exports.searchOneCellBySigner = searchOneCellBySigner;
|
|
5
|
+
exports.injectOneCapacityCell = injectOneCapacityCell;
|
|
6
|
+
const core_1 = require("@ckb-ccc/core");
|
|
7
|
+
const index_js_1 = require("../predefined/index.js");
|
|
8
|
+
async function findSingletonCellByArgs(client, args, scripts) {
|
|
9
|
+
for (const scriptInfo of scripts) {
|
|
10
|
+
if (!scriptInfo) {
|
|
11
|
+
continue;
|
|
12
|
+
}
|
|
13
|
+
const cell = await client.findSingletonCellByType({
|
|
14
|
+
...scriptInfo,
|
|
15
|
+
args,
|
|
16
|
+
}, true);
|
|
17
|
+
if (cell) {
|
|
18
|
+
return {
|
|
19
|
+
cell,
|
|
20
|
+
scriptInfo: index_js_1.SporeScriptInfo.from(scriptInfo),
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
async function searchOneCellBySigner(signer) {
|
|
26
|
+
for await (const cell of signer.findCells({
|
|
27
|
+
scriptLenRange: [0, 1],
|
|
28
|
+
outputDataLenRange: [0, 1],
|
|
29
|
+
}, true, undefined, 1)) {
|
|
30
|
+
return cell;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
async function injectOneCapacityCell(signer, tx) {
|
|
34
|
+
const liveCell = await searchOneCellBySigner(signer);
|
|
35
|
+
if (!liveCell) {
|
|
36
|
+
throw new Error("No live cell found");
|
|
37
|
+
}
|
|
38
|
+
tx.inputs.push(core_1.ccc.CellInput.from({
|
|
39
|
+
previousOutput: liveCell.outPoint,
|
|
40
|
+
...liveCell,
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
+
};
|
|
21
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
22
|
+
if (mod && mod.__esModule) return mod;
|
|
23
|
+
var result = {};
|
|
24
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
25
|
+
__setModuleDefault(result, mod);
|
|
26
|
+
return result;
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.dob = void 0;
|
|
30
|
+
__exportStar(require("./cluster/index.js"), exports);
|
|
31
|
+
exports.dob = __importStar(require("./dob/index.js"));
|
|
32
|
+
__exportStar(require("./predefined/index.js"), exports);
|
|
33
|
+
__exportStar(require("./spore/index.js"), exports);
|