@nockchain/rose-ts 0.1.1-alpha → 0.1.1-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/dist/grpc/balance-decode.d.ts +3 -0
- package/dist/grpc/balance-decode.d.ts.map +1 -0
- package/dist/grpc/balance-decode.js +112 -0
- package/dist/grpc/balance-decode.js.map +1 -0
- package/dist/grpc/convert.d.ts +11 -0
- package/dist/grpc/convert.d.ts.map +1 -0
- package/dist/grpc/convert.js +89 -0
- package/dist/grpc/convert.js.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/blockchain.d.ts +150 -0
- package/dist/grpc/gen/nockchain/common/v1/blockchain.d.ts.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/blockchain.js +1683 -0
- package/dist/grpc/gen/nockchain/common/v1/blockchain.js.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/pagination.d.ts +38 -0
- package/dist/grpc/gen/nockchain/common/v1/pagination.d.ts.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/pagination.js +158 -0
- package/dist/grpc/gen/nockchain/common/v1/pagination.js.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/primitives.d.ts +136 -0
- package/dist/grpc/gen/nockchain/common/v1/primitives.d.ts.map +1 -0
- package/dist/grpc/gen/nockchain/common/v1/primitives.js +1407 -0
- package/dist/grpc/gen/nockchain/common/v1/primitives.js.map +1 -0
- package/dist/grpc/gen/nockchain/common/v2/blockchain.d.ts +181 -0
- package/dist/grpc/gen/nockchain/common/v2/blockchain.d.ts.map +1 -0
- package/dist/grpc/gen/nockchain/common/v2/blockchain.js +1981 -0
- package/dist/grpc/gen/nockchain/common/v2/blockchain.js.map +1 -0
- package/dist/grpc/gen/nockchain/public/v2/nockchain.d.ts +376 -0
- package/dist/grpc/gen/nockchain/public/v2/nockchain.d.ts.map +1 -0
- package/dist/grpc/gen/nockchain/public/v2/nockchain.js +4344 -0
- package/dist/grpc/gen/nockchain/public/v2/nockchain.js.map +1 -0
- package/dist/grpc/proto.d.ts +2 -4
- package/dist/grpc/proto.d.ts.map +1 -1
- package/dist/grpc/proto.js +27 -118
- package/dist/grpc/proto.js.map +1 -1
- package/dist/grpc/rawTx.d.ts +5 -0
- package/dist/grpc/rawTx.d.ts.map +1 -0
- package/dist/grpc/rawTx.js +207 -0
- package/dist/grpc/rawTx.js.map +1 -0
- package/dist/grpc/rpc.d.ts +18 -0
- package/dist/grpc/rpc.d.ts.map +1 -0
- package/dist/grpc/rpc.js +65 -0
- package/dist/grpc/rpc.js.map +1 -0
- package/dist/grpc/transport.d.ts +5 -0
- package/dist/grpc/transport.d.ts.map +1 -0
- package/dist/grpc/transport.js +54 -0
- package/dist/grpc/transport.js.map +1 -0
- package/dist/rpc/client.d.ts +2 -1
- package/dist/rpc/client.d.ts.map +1 -1
- package/dist/rpc/client.js +12 -20
- package/dist/rpc/client.js.map +1 -1
- package/dist/rpc/wire/read.d.ts +14 -0
- package/dist/rpc/wire/read.d.ts.map +1 -0
- package/dist/rpc/wire/read.js +110 -0
- package/dist/rpc/wire/read.js.map +1 -0
- package/package.json +5 -2
package/dist/grpc/proto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proto.js","sourceRoot":"","sources":["../../src/grpc/proto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"proto.js","sourceRoot":"","sources":["../../src/grpc/proto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { RawTxV1 } from "../types.js";
|
|
2
|
+
import { type RawTransaction } from "./gen/nockchain/common/v2/blockchain.js";
|
|
3
|
+
export declare function rawTxV1ToGrpc(tx: RawTxV1): RawTransaction;
|
|
4
|
+
export declare function encodeRawTransactionBytes(tx: RawTxV1): Uint8Array;
|
|
5
|
+
//# sourceMappingURL=rawTx.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rawTx.d.ts","sourceRoot":"","sources":["../../src/grpc/rawTx.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAQV,OAAO,EAOR,MAAM,aAAa,CAAC;AACrB,OAAO,EASL,KAAK,cAAc,EAMpB,MAAM,yCAAyC,CAAC;AAyNjD,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,cAAc,CAMzD;AAGD,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,CAEjE"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { mustAt } from "../core/must.js";
|
|
2
|
+
import { U256 } from "../core/u256.js";
|
|
3
|
+
import { cheetahPointFromBase58 } from "../crypto/cheetah.js";
|
|
4
|
+
import { jam } from "../noun/index.js";
|
|
5
|
+
import { RawTransaction as GrpcRawTransaction, } from "./gen/nockchain/common/v2/blockchain.js";
|
|
6
|
+
import { digestToGrpcHash, nameToGrpcName } from "./convert.js";
|
|
7
|
+
function belt(value) {
|
|
8
|
+
return { value: String(value) };
|
|
9
|
+
}
|
|
10
|
+
function sixBelt(f6) {
|
|
11
|
+
return {
|
|
12
|
+
belt_1: belt(mustAt(f6, 0)),
|
|
13
|
+
belt_2: belt(mustAt(f6, 1)),
|
|
14
|
+
belt_3: belt(mustAt(f6, 2)),
|
|
15
|
+
belt_4: belt(mustAt(f6, 3)),
|
|
16
|
+
belt_5: belt(mustAt(f6, 4)),
|
|
17
|
+
belt_6: belt(mustAt(f6, 5)),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function eightBelt(belts) {
|
|
21
|
+
return {
|
|
22
|
+
belt_1: belt(mustAt(belts, 0)),
|
|
23
|
+
belt_2: belt(mustAt(belts, 1)),
|
|
24
|
+
belt_3: belt(mustAt(belts, 2)),
|
|
25
|
+
belt_4: belt(mustAt(belts, 3)),
|
|
26
|
+
belt_5: belt(mustAt(belts, 4)),
|
|
27
|
+
belt_6: belt(mustAt(belts, 5)),
|
|
28
|
+
belt_7: belt(mustAt(belts, 6)),
|
|
29
|
+
belt_8: belt(mustAt(belts, 7)),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function beltsFromLeBytes(bytes) {
|
|
33
|
+
const belts = [];
|
|
34
|
+
for (let i = 0; i < bytes.length; i += 4) {
|
|
35
|
+
const chunk = bytes.subarray(i, Math.min(i + 4, bytes.length));
|
|
36
|
+
let v = 0n;
|
|
37
|
+
for (let j = 0; j < chunk.length; j++)
|
|
38
|
+
v |= BigInt(mustAt(chunk, j)) << BigInt(j * 8);
|
|
39
|
+
belts.push(v);
|
|
40
|
+
}
|
|
41
|
+
while (belts.length < 8)
|
|
42
|
+
belts.push(0n);
|
|
43
|
+
return belts;
|
|
44
|
+
}
|
|
45
|
+
function schnorrSignatureToGrpc(sig) {
|
|
46
|
+
const c = beltsFromLeBytes(U256.fromLeHex(sig.c).toLeBytes());
|
|
47
|
+
const s = beltsFromLeBytes(U256.fromLeHex(sig.s).toLeBytes());
|
|
48
|
+
return { chal: eightBelt(c), sig: eightBelt(s) };
|
|
49
|
+
}
|
|
50
|
+
function schnorrPubkeyToGrpc(pk) {
|
|
51
|
+
const point = cheetahPointFromBase58(pk);
|
|
52
|
+
return {
|
|
53
|
+
value: {
|
|
54
|
+
x: sixBelt(point.x),
|
|
55
|
+
y: sixBelt(point.y),
|
|
56
|
+
inf: point.inf,
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function timelockRangeAbsolute(range) {
|
|
61
|
+
const out = {};
|
|
62
|
+
if (range.min != null)
|
|
63
|
+
out.min = { value: String(range.min) };
|
|
64
|
+
if (range.max != null)
|
|
65
|
+
out.max = { value: String(range.max) };
|
|
66
|
+
return out;
|
|
67
|
+
}
|
|
68
|
+
function timelockRangeRelative(range) {
|
|
69
|
+
const out = {};
|
|
70
|
+
if (range.min != null)
|
|
71
|
+
out.min = { value: String(range.min) };
|
|
72
|
+
if (range.max != null)
|
|
73
|
+
out.max = { value: String(range.max) };
|
|
74
|
+
return out;
|
|
75
|
+
}
|
|
76
|
+
function lockPrimitiveToGrpc(prim) {
|
|
77
|
+
switch (prim.tag) {
|
|
78
|
+
case "pkh": {
|
|
79
|
+
const hashes = Array.isArray(prim.hashes) ? prim.hashes : [];
|
|
80
|
+
return {
|
|
81
|
+
primitive: {
|
|
82
|
+
$case: "pkh",
|
|
83
|
+
pkh: { m: String(prim.m), hashes: hashes.map(digestToGrpcHash) },
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
case "tim":
|
|
88
|
+
return {
|
|
89
|
+
primitive: {
|
|
90
|
+
$case: "tim",
|
|
91
|
+
tim: {
|
|
92
|
+
rel: timelockRangeRelative(prim.rel),
|
|
93
|
+
abs: timelockRangeAbsolute(prim.abs),
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
case "hax": {
|
|
98
|
+
const hashes = Array.isArray(prim.preimages) ? prim.preimages : [];
|
|
99
|
+
return {
|
|
100
|
+
primitive: {
|
|
101
|
+
$case: "hax",
|
|
102
|
+
hax: { hashes: hashes.map(digestToGrpcHash) },
|
|
103
|
+
},
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
case "brn":
|
|
107
|
+
return { primitive: { $case: "burn", burn: {} } };
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function spendConditionToGrpc(sc) {
|
|
111
|
+
return { primitives: sc.map(lockPrimitiveToGrpc) };
|
|
112
|
+
}
|
|
113
|
+
function merkleProofToGrpc(proof) {
|
|
114
|
+
return {
|
|
115
|
+
root: digestToGrpcHash(proof.root),
|
|
116
|
+
path: proof.path.map(digestToGrpcHash),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function lockMerkleProofToGrpc(lmp) {
|
|
120
|
+
const axis = "version" in lmp && lmp.version === "full" ? lmp.axis : 1;
|
|
121
|
+
const out = {
|
|
122
|
+
spend_condition: spendConditionToGrpc(lmp.spend_condition),
|
|
123
|
+
axis: String(axis),
|
|
124
|
+
proof: merkleProofToGrpc(lmp.proof),
|
|
125
|
+
};
|
|
126
|
+
if ("version" in lmp && lmp.version === "full")
|
|
127
|
+
out.lmp_version = "1";
|
|
128
|
+
return out;
|
|
129
|
+
}
|
|
130
|
+
function pkhSignatureToGrpc(sig) {
|
|
131
|
+
const pairs = Array.isArray(sig) ? sig : [];
|
|
132
|
+
return {
|
|
133
|
+
entries: pairs.map(([hash, [pubkey, signature]]) => ({
|
|
134
|
+
hash: digestToGrpcHash(hash),
|
|
135
|
+
pubkey: schnorrPubkeyToGrpc(pubkey),
|
|
136
|
+
signature: schnorrSignatureToGrpc(signature),
|
|
137
|
+
})),
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function haxPreimagesToGrpc(haxMap) {
|
|
141
|
+
return haxMap.map(([hash, noun]) => ({
|
|
142
|
+
hash: digestToGrpcHash(hash),
|
|
143
|
+
value: jam(noun),
|
|
144
|
+
}));
|
|
145
|
+
}
|
|
146
|
+
function noteDataToGrpc(data) {
|
|
147
|
+
return {
|
|
148
|
+
entries: data.map(([key, noun]) => ({ key, blob: jam(noun) })),
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
function sourceToGrpc(source) {
|
|
152
|
+
if (source == null)
|
|
153
|
+
return undefined;
|
|
154
|
+
if ("Parent" in source)
|
|
155
|
+
return undefined;
|
|
156
|
+
const out = { coinbase: source.is_coinbase };
|
|
157
|
+
out.hash = digestToGrpcHash(source.hash);
|
|
158
|
+
return out;
|
|
159
|
+
}
|
|
160
|
+
function lockRootDigest(lockRoot) {
|
|
161
|
+
return typeof lockRoot === "string" ? lockRoot : "";
|
|
162
|
+
}
|
|
163
|
+
function seedToGrpc(seed) {
|
|
164
|
+
const out = {
|
|
165
|
+
lock_root: digestToGrpcHash(lockRootDigest(seed.lock_root)),
|
|
166
|
+
note_data: noteDataToGrpc(seed.note_data),
|
|
167
|
+
gift: { value: seed.gift },
|
|
168
|
+
parent_hash: digestToGrpcHash(seed.parent_hash),
|
|
169
|
+
};
|
|
170
|
+
const source = sourceToGrpc(seed.output_source);
|
|
171
|
+
if (source)
|
|
172
|
+
out.output_source = source;
|
|
173
|
+
return out;
|
|
174
|
+
}
|
|
175
|
+
function witnessSpendToGrpc(spend) {
|
|
176
|
+
return {
|
|
177
|
+
witness: {
|
|
178
|
+
lock_merkle_proof: lockMerkleProofToGrpc(spend.witness.lock_merkle_proof),
|
|
179
|
+
pkh_signature: pkhSignatureToGrpc(spend.witness.pkh_signature),
|
|
180
|
+
hax: haxPreimagesToGrpc(Array.isArray(spend.witness.hax_map) ? spend.witness.hax_map : []),
|
|
181
|
+
},
|
|
182
|
+
seeds: (Array.isArray(spend.seeds) ? spend.seeds : []).map(seedToGrpc),
|
|
183
|
+
fee: { value: spend.fee },
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
function spendToGrpc(spend) {
|
|
187
|
+
if (spend.tag !== 1)
|
|
188
|
+
return undefined;
|
|
189
|
+
return { spend_kind: { $case: "witness", witness: witnessSpendToGrpc(spend) } };
|
|
190
|
+
}
|
|
191
|
+
function spendEntryToGrpc(name, spend) {
|
|
192
|
+
return {
|
|
193
|
+
name: nameToGrpcName(name),
|
|
194
|
+
spend: spendToGrpc(spend),
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
export function rawTxV1ToGrpc(tx) {
|
|
198
|
+
return {
|
|
199
|
+
version: { value: tx.version },
|
|
200
|
+
id: digestToGrpcHash(tx.id),
|
|
201
|
+
spends: tx.spends.map(([name, spend]) => spendEntryToGrpc(name, spend)),
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
export function encodeRawTransactionBytes(tx) {
|
|
205
|
+
return GrpcRawTransaction.encode(rawTxV1ToGrpc(tx)).finish();
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=rawTx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rawTx.js","sourceRoot":"","sources":["../../src/grpc/rawTx.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Digest, PbCom2Balance, RawTxV1 } from "../types.js";
|
|
2
|
+
export declare function encodeWalletGetBalanceByFirstName(firstName: string): Uint8Array;
|
|
3
|
+
export declare function encodeWalletGetBalanceByAddress(address: string): Uint8Array;
|
|
4
|
+
export declare function encodeTransactionAccepted(txId: string): Uint8Array;
|
|
5
|
+
export declare function encodeWalletSendTransaction(txId: Digest, rawTx: RawTxV1): Uint8Array;
|
|
6
|
+
export declare function decodeWalletGetBalanceResponse(body: Uint8Array): {
|
|
7
|
+
balance?: PbCom2Balance;
|
|
8
|
+
error?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function decodeWalletSendTransactionResponse(body: Uint8Array): {
|
|
11
|
+
ack?: true;
|
|
12
|
+
error?: string;
|
|
13
|
+
};
|
|
14
|
+
export declare function decodeTransactionAcceptedResponse(body: Uint8Array): {
|
|
15
|
+
accepted?: boolean;
|
|
16
|
+
error?: string;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=rpc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/grpc/rpc.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AASlE,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAM/E;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAM3E;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAGlE;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,UAAU,CAMpF;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,UAAU,GAAG;IAChE,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CASA;AAED,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,UAAU,GAAG;IAAE,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAOpG;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,UAAU,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAO1G"}
|
package/dist/grpc/rpc.js
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { TransactionAcceptedRequest, TransactionAcceptedResponse, WalletGetBalanceRequest, WalletGetBalanceResponse, WalletSendTransactionRequest, WalletSendTransactionResponse, } from "./gen/nockchain/public/v2/nockchain.js";
|
|
2
|
+
import { digestToGrpcHash, grpcBalanceToPb } from "./convert.js";
|
|
3
|
+
import { rawTxV1ToGrpc } from "./rawTx.js";
|
|
4
|
+
import { grpcWebFrame, unwrapGrpcWebFrames } from "./transport.js";
|
|
5
|
+
function decodeFirstFrame(body, decode) {
|
|
6
|
+
const frames = unwrapGrpcWebFrames(body);
|
|
7
|
+
const frame = frames[0];
|
|
8
|
+
if (!frame)
|
|
9
|
+
throw new Error("Empty response from server");
|
|
10
|
+
return decode(frame);
|
|
11
|
+
}
|
|
12
|
+
export function encodeWalletGetBalanceByFirstName(firstName) {
|
|
13
|
+
const req = WalletGetBalanceRequest.encode({
|
|
14
|
+
selector: { $case: "first_name", first_name: { hash: firstName } },
|
|
15
|
+
page: { client_page_items_limit: 0, page_token: "", max_bytes: "0" },
|
|
16
|
+
}).finish();
|
|
17
|
+
return grpcWebFrame(req);
|
|
18
|
+
}
|
|
19
|
+
export function encodeWalletGetBalanceByAddress(address) {
|
|
20
|
+
const req = WalletGetBalanceRequest.encode({
|
|
21
|
+
selector: { $case: "address", address: { key: address } },
|
|
22
|
+
page: { client_page_items_limit: 0, page_token: "", max_bytes: "0" },
|
|
23
|
+
}).finish();
|
|
24
|
+
return grpcWebFrame(req);
|
|
25
|
+
}
|
|
26
|
+
export function encodeTransactionAccepted(txId) {
|
|
27
|
+
const req = TransactionAcceptedRequest.encode({ tx_id: { hash: txId } }).finish();
|
|
28
|
+
return grpcWebFrame(req);
|
|
29
|
+
}
|
|
30
|
+
export function encodeWalletSendTransaction(txId, rawTx) {
|
|
31
|
+
const req = WalletSendTransactionRequest.encode({
|
|
32
|
+
tx_id: digestToGrpcHash(txId),
|
|
33
|
+
raw_tx: rawTxV1ToGrpc(rawTx),
|
|
34
|
+
}).finish();
|
|
35
|
+
return grpcWebFrame(req);
|
|
36
|
+
}
|
|
37
|
+
export function decodeWalletGetBalanceResponse(body) {
|
|
38
|
+
const resp = decodeFirstFrame(body, WalletGetBalanceResponse.decode);
|
|
39
|
+
if (resp.result?.$case === "error") {
|
|
40
|
+
return { error: resp.result.error.message || "Server error" };
|
|
41
|
+
}
|
|
42
|
+
if (resp.result?.$case === "balance") {
|
|
43
|
+
return { balance: grpcBalanceToPb(resp.result.balance) };
|
|
44
|
+
}
|
|
45
|
+
throw new Error("Empty response from server");
|
|
46
|
+
}
|
|
47
|
+
export function decodeWalletSendTransactionResponse(body) {
|
|
48
|
+
const resp = decodeFirstFrame(body, WalletSendTransactionResponse.decode);
|
|
49
|
+
if (resp.result?.$case === "error") {
|
|
50
|
+
return { error: resp.result.error.message || "Server error" };
|
|
51
|
+
}
|
|
52
|
+
if (resp.result?.$case === "ack")
|
|
53
|
+
return { ack: true };
|
|
54
|
+
throw new Error("Empty response from server");
|
|
55
|
+
}
|
|
56
|
+
export function decodeTransactionAcceptedResponse(body) {
|
|
57
|
+
const resp = decodeFirstFrame(body, TransactionAcceptedResponse.decode);
|
|
58
|
+
if (resp.result?.$case === "error") {
|
|
59
|
+
return { error: resp.result.error.message || "Server error" };
|
|
60
|
+
}
|
|
61
|
+
if (resp.result?.$case === "accepted")
|
|
62
|
+
return { accepted: resp.result.accepted };
|
|
63
|
+
throw new Error("Empty response from server");
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=rpc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/grpc/rpc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type FetchFn = typeof fetch;
|
|
2
|
+
export declare function grpcWebFrame(message: Uint8Array): Uint8Array;
|
|
3
|
+
export declare function unwrapGrpcWebFrames(body: Uint8Array): Uint8Array[];
|
|
4
|
+
export declare function grpcWebCall(endpoint: string, method: string, body: Uint8Array, fetchFn: FetchFn): Promise<Uint8Array>;
|
|
5
|
+
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/grpc/transport.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC;AAEnC,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CAS5D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,CAclE;AAYD,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC,CAiBrB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { mustAt } from "../core/must.js";
|
|
2
|
+
export function grpcWebFrame(message) {
|
|
3
|
+
const out = new Uint8Array(5 + message.length);
|
|
4
|
+
out[0] = 0;
|
|
5
|
+
out[1] = (message.length >>> 24) & 0xff;
|
|
6
|
+
out[2] = (message.length >>> 16) & 0xff;
|
|
7
|
+
out[3] = (message.length >>> 8) & 0xff;
|
|
8
|
+
out[4] = message.length & 0xff;
|
|
9
|
+
out.set(message, 5);
|
|
10
|
+
return out;
|
|
11
|
+
}
|
|
12
|
+
export function unwrapGrpcWebFrames(body) {
|
|
13
|
+
const messages = [];
|
|
14
|
+
let off = 0;
|
|
15
|
+
while (off + 5 <= body.length) {
|
|
16
|
+
const len = (mustAt(body, off + 1) << 24) |
|
|
17
|
+
(mustAt(body, off + 2) << 16) |
|
|
18
|
+
(mustAt(body, off + 3) << 8) |
|
|
19
|
+
mustAt(body, off + 4);
|
|
20
|
+
off += 5;
|
|
21
|
+
messages.push(body.subarray(off, off + len));
|
|
22
|
+
off += len;
|
|
23
|
+
}
|
|
24
|
+
return messages;
|
|
25
|
+
}
|
|
26
|
+
function grpcStatusError(response) {
|
|
27
|
+
const status = response.headers.get("grpc-status");
|
|
28
|
+
if (status == null || status === "0")
|
|
29
|
+
return null;
|
|
30
|
+
const message = response.headers.get("grpc-message");
|
|
31
|
+
const detail = message ? decodeURIComponent(message) : `grpc-status ${status}`;
|
|
32
|
+
return new Error(`gRPC error: ${detail}`);
|
|
33
|
+
}
|
|
34
|
+
const SERVICE = "nockchain.public.v2.NockchainService";
|
|
35
|
+
export async function grpcWebCall(endpoint, method, body, fetchFn) {
|
|
36
|
+
const url = `${endpoint.replace(/\/$/, "")}/${SERVICE}/${method}`;
|
|
37
|
+
const response = await fetchFn(url, {
|
|
38
|
+
method: "POST",
|
|
39
|
+
headers: {
|
|
40
|
+
"content-type": "application/grpc-web+proto",
|
|
41
|
+
"x-grpc-web": "1",
|
|
42
|
+
},
|
|
43
|
+
body: new Uint8Array(body),
|
|
44
|
+
});
|
|
45
|
+
if (!response.ok) {
|
|
46
|
+
throw new Error(`gRPC error: ${response.status} ${response.statusText}`);
|
|
47
|
+
}
|
|
48
|
+
const bytes = new Uint8Array(await response.arrayBuffer());
|
|
49
|
+
const grpcErr = grpcStatusError(response);
|
|
50
|
+
if (grpcErr && bytes.length === 0)
|
|
51
|
+
throw grpcErr;
|
|
52
|
+
return bytes;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/grpc/transport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC,MAAM,UAAU,YAAY,CAAC,OAAmB;IAC9C,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACX,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACxC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACxC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC;IACvC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAC/B,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAClC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,GAAG,GACP,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7B,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7B,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACxB,GAAG,IAAI,CAAC,CAAC;QACT,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7C,GAAG,IAAI,GAAG,CAAC;IACb,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,QAAkB;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACnD,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAClD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,MAAM,EAAE,CAAC;IAC/E,OAAO,IAAI,KAAK,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,OAAO,GAAG,sCAAsC,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,MAAc,EACd,IAAgB,EAChB,OAAgB;IAEhB,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;QAClC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,4BAA4B;YAC5C,YAAY,EAAE,GAAG;SAClB;QACD,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,OAAO,CAAC;IACjD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/rpc/client.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { NockchainTx } from "../types.js";
|
|
2
|
+
import { type FetchFn } from "../grpc/transport.js";
|
|
2
3
|
import type { Balance } from "./types.js";
|
|
3
|
-
export type FetchFn
|
|
4
|
+
export type { FetchFn };
|
|
4
5
|
export declare class RpcClient {
|
|
5
6
|
private readonly endpoint;
|
|
6
7
|
private readonly fetchFn;
|
package/dist/rpc/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/rpc/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAW/C,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,YAAY,CAAC;AAExD,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/rpc/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAW/C,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,YAAY,CAAC;AAExD,YAAY,EAAE,OAAO,EAAE,CAAC;AAGxB,qBAAa,SAAS;IAElB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,OAAe;IAGrC,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAUjD,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASnD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe7C,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAcjE"}
|
package/dist/rpc/client.js
CHANGED
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
import { nockchainTxToRawTx } from "../tx/index.js";
|
|
2
|
-
import { decodeTransactionAcceptedResponse, decodeWalletGetBalanceResponse, decodeWalletSendTransactionResponse, encodeTransactionAccepted, encodeWalletGetBalanceByAddress, encodeWalletGetBalanceByFirstName, } from "../grpc/
|
|
3
|
-
import {
|
|
4
|
-
const SERVICE = "nockchain.public.v2.NockchainService";
|
|
5
|
-
async function grpcWebCall(endpoint, method, body, fetchFn) {
|
|
6
|
-
const url = `${endpoint.replace(/\/$/, "")}/${SERVICE}/${method}`;
|
|
7
|
-
const response = await fetchFn(url, {
|
|
8
|
-
method: "POST",
|
|
9
|
-
headers: {
|
|
10
|
-
"content-type": "application/grpc-web+proto",
|
|
11
|
-
"x-grpc-web": "1",
|
|
12
|
-
},
|
|
13
|
-
body: new Uint8Array(body),
|
|
14
|
-
});
|
|
15
|
-
if (!response.ok) {
|
|
16
|
-
throw new Error(`gRPC error: ${response.status} ${response.statusText}`);
|
|
17
|
-
}
|
|
18
|
-
return new Uint8Array(await response.arrayBuffer());
|
|
19
|
-
}
|
|
2
|
+
import { decodeTransactionAcceptedResponse, decodeWalletGetBalanceResponse, decodeWalletSendTransactionResponse, encodeTransactionAccepted, encodeWalletGetBalanceByAddress, encodeWalletGetBalanceByFirstName, encodeWalletSendTransaction, } from "../grpc/rpc.js";
|
|
3
|
+
import { grpcWebCall } from "../grpc/transport.js";
|
|
20
4
|
export class RpcClient {
|
|
21
5
|
endpoint;
|
|
22
6
|
fetchFn;
|
|
@@ -53,10 +37,14 @@ export class RpcClient {
|
|
|
53
37
|
throw new Error(`Server error: ${decoded.error}`);
|
|
54
38
|
if (!decoded.balance)
|
|
55
39
|
throw new Error("Empty response from server");
|
|
56
|
-
|
|
40
|
+
const out = {
|
|
57
41
|
notes: decoded.balance.notes,
|
|
58
42
|
block_id: decoded.balance.block_id,
|
|
59
43
|
};
|
|
44
|
+
const height = decoded.balance.height?.value;
|
|
45
|
+
if (height != null)
|
|
46
|
+
out.height = height;
|
|
47
|
+
return out;
|
|
60
48
|
}
|
|
61
49
|
async getBalanceByFirstName(firstName) {
|
|
62
50
|
const body = encodeWalletGetBalanceByFirstName(firstName);
|
|
@@ -66,10 +54,14 @@ export class RpcClient {
|
|
|
66
54
|
throw new Error(`Server error: ${decoded.error}`);
|
|
67
55
|
if (!decoded.balance)
|
|
68
56
|
throw new Error("Empty response from server");
|
|
69
|
-
|
|
57
|
+
const out = {
|
|
70
58
|
notes: decoded.balance.notes,
|
|
71
59
|
block_id: decoded.balance.block_id,
|
|
72
60
|
};
|
|
61
|
+
const height = decoded.balance.height?.value;
|
|
62
|
+
if (height != null)
|
|
63
|
+
out.height = height;
|
|
64
|
+
return out;
|
|
73
65
|
}
|
|
74
66
|
}
|
|
75
67
|
//# sourceMappingURL=client.js.map
|
package/dist/rpc/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/rpc/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,mCAAmC,EACnC,yBAAyB,EACzB,+BAA+B,EAC/B,iCAAiC,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/rpc/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function readVarint(data: Uint8Array, offset: number): [number, number];
|
|
2
|
+
export declare function readVarintBigint(data: Uint8Array, offset: number): [bigint, number];
|
|
3
|
+
export declare function readLengthDelimited(data: Uint8Array, offset: number): [Uint8Array, number];
|
|
4
|
+
export declare function skipField(data: Uint8Array, offset: number, wireType: number): number;
|
|
5
|
+
export type ParsedField = {
|
|
6
|
+
wire: number;
|
|
7
|
+
value: bigint | Uint8Array;
|
|
8
|
+
};
|
|
9
|
+
export declare function parseFields(data: Uint8Array): Map<number, ParsedField[]>;
|
|
10
|
+
export declare function fieldBytes(fields: Map<number, ParsedField[]>, num: number): Uint8Array | undefined;
|
|
11
|
+
export declare function fieldVarint(fields: Map<number, ParsedField[]>, num: number): bigint | undefined;
|
|
12
|
+
export declare function fieldMessages(fields: Map<number, ParsedField[]>, num: number): Uint8Array[];
|
|
13
|
+
export declare function parseGrpcWebFrames(body: Uint8Array): Uint8Array[];
|
|
14
|
+
//# sourceMappingURL=read.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../src/rpc/wire/read.ts"],"names":[],"mappings":"AAIA,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAY7E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYnF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAK1F;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYpF;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,CAAC;AAEvE,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CA0BxE;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGlG;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG/F;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,EAAE,CAI3F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,CAcjE"}
|