@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.
Files changed (53) hide show
  1. package/dist/grpc/balance-decode.d.ts +3 -0
  2. package/dist/grpc/balance-decode.d.ts.map +1 -0
  3. package/dist/grpc/balance-decode.js +112 -0
  4. package/dist/grpc/balance-decode.js.map +1 -0
  5. package/dist/grpc/convert.d.ts +11 -0
  6. package/dist/grpc/convert.d.ts.map +1 -0
  7. package/dist/grpc/convert.js +89 -0
  8. package/dist/grpc/convert.js.map +1 -0
  9. package/dist/grpc/gen/nockchain/common/v1/blockchain.d.ts +150 -0
  10. package/dist/grpc/gen/nockchain/common/v1/blockchain.d.ts.map +1 -0
  11. package/dist/grpc/gen/nockchain/common/v1/blockchain.js +1683 -0
  12. package/dist/grpc/gen/nockchain/common/v1/blockchain.js.map +1 -0
  13. package/dist/grpc/gen/nockchain/common/v1/pagination.d.ts +38 -0
  14. package/dist/grpc/gen/nockchain/common/v1/pagination.d.ts.map +1 -0
  15. package/dist/grpc/gen/nockchain/common/v1/pagination.js +158 -0
  16. package/dist/grpc/gen/nockchain/common/v1/pagination.js.map +1 -0
  17. package/dist/grpc/gen/nockchain/common/v1/primitives.d.ts +136 -0
  18. package/dist/grpc/gen/nockchain/common/v1/primitives.d.ts.map +1 -0
  19. package/dist/grpc/gen/nockchain/common/v1/primitives.js +1407 -0
  20. package/dist/grpc/gen/nockchain/common/v1/primitives.js.map +1 -0
  21. package/dist/grpc/gen/nockchain/common/v2/blockchain.d.ts +181 -0
  22. package/dist/grpc/gen/nockchain/common/v2/blockchain.d.ts.map +1 -0
  23. package/dist/grpc/gen/nockchain/common/v2/blockchain.js +1981 -0
  24. package/dist/grpc/gen/nockchain/common/v2/blockchain.js.map +1 -0
  25. package/dist/grpc/gen/nockchain/public/v2/nockchain.d.ts +376 -0
  26. package/dist/grpc/gen/nockchain/public/v2/nockchain.d.ts.map +1 -0
  27. package/dist/grpc/gen/nockchain/public/v2/nockchain.js +4344 -0
  28. package/dist/grpc/gen/nockchain/public/v2/nockchain.js.map +1 -0
  29. package/dist/grpc/proto.d.ts +2 -4
  30. package/dist/grpc/proto.d.ts.map +1 -1
  31. package/dist/grpc/proto.js +27 -118
  32. package/dist/grpc/proto.js.map +1 -1
  33. package/dist/grpc/rawTx.d.ts +5 -0
  34. package/dist/grpc/rawTx.d.ts.map +1 -0
  35. package/dist/grpc/rawTx.js +207 -0
  36. package/dist/grpc/rawTx.js.map +1 -0
  37. package/dist/grpc/rpc.d.ts +18 -0
  38. package/dist/grpc/rpc.d.ts.map +1 -0
  39. package/dist/grpc/rpc.js +65 -0
  40. package/dist/grpc/rpc.js.map +1 -0
  41. package/dist/grpc/transport.d.ts +5 -0
  42. package/dist/grpc/transport.d.ts.map +1 -0
  43. package/dist/grpc/transport.js +54 -0
  44. package/dist/grpc/transport.js.map +1 -0
  45. package/dist/rpc/client.d.ts +2 -1
  46. package/dist/rpc/client.d.ts.map +1 -1
  47. package/dist/rpc/client.js +12 -20
  48. package/dist/rpc/client.js.map +1 -1
  49. package/dist/rpc/wire/read.d.ts +14 -0
  50. package/dist/rpc/wire/read.d.ts.map +1 -0
  51. package/dist/rpc/wire/read.js +110 -0
  52. package/dist/rpc/wire/read.js.map +1 -0
  53. package/package.json +5 -2
@@ -0,0 +1,3 @@
1
+ import type { PbCom2Balance } from "../types.js";
2
+ export declare function decodeBalanceMessage(bytes: Uint8Array): PbCom2Balance;
3
+ //# sourceMappingURL=balance-decode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance-decode.d.ts","sourceRoot":"","sources":["../../src/grpc/balance-decode.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAkC,MAAM,aAAa,CAAC;AAwGjF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,CAmBrE"}
@@ -0,0 +1,112 @@
1
+ import { digestFromProtobuf } from "../proto/digest.js";
2
+ import { fieldBytes, fieldMessages, fieldVarint, parseFields, } from "../rpc/wire/read.js";
3
+ function fieldUint64(bytes, fieldNum) {
4
+ return fieldVarint(parseFields(bytes), fieldNum) ?? 0n;
5
+ }
6
+ function decodeBelt(bytes) {
7
+ return { value: String(fieldUint64(bytes, 1)) };
8
+ }
9
+ function decodeHash(bytes) {
10
+ const fields = parseFields(bytes);
11
+ return {
12
+ belt_1: decodeBelt(fieldBytes(fields, 1) ?? new Uint8Array(0)),
13
+ belt_2: decodeBelt(fieldBytes(fields, 2) ?? new Uint8Array(0)),
14
+ belt_3: decodeBelt(fieldBytes(fields, 3) ?? new Uint8Array(0)),
15
+ belt_4: decodeBelt(fieldBytes(fields, 4) ?? new Uint8Array(0)),
16
+ belt_5: decodeBelt(fieldBytes(fields, 5) ?? new Uint8Array(0)),
17
+ };
18
+ }
19
+ function decodeName(bytes) {
20
+ const fields = parseFields(bytes);
21
+ const firstBytes = fieldBytes(fields, 1);
22
+ const lastBytes = fieldBytes(fields, 2);
23
+ if (!firstBytes || !lastBytes)
24
+ throw new Error("Name missing first/last hash");
25
+ return {
26
+ first: digestFromProtobuf(decodeHash(firstBytes)),
27
+ last: digestFromProtobuf(decodeHash(lastBytes)),
28
+ };
29
+ }
30
+ function decodeNoteData(bytes) {
31
+ const fields = parseFields(bytes);
32
+ const entries = fieldMessages(fields, 1).map((entryBytes) => {
33
+ const entry = parseFields(entryBytes);
34
+ const keyBytes = fieldBytes(entry, 1);
35
+ const blob = fieldBytes(entry, 2);
36
+ if (!keyBytes)
37
+ throw new Error("NoteDataEntry missing key");
38
+ return {
39
+ key: new TextDecoder().decode(keyBytes),
40
+ blob: blob ? [...blob] : [],
41
+ };
42
+ });
43
+ return { entries };
44
+ }
45
+ function decodeNoteV1(bytes) {
46
+ const fields = parseFields(bytes);
47
+ const versionBytes = fieldBytes(fields, 1);
48
+ const originBytes = fieldBytes(fields, 2);
49
+ const nameBytes = fieldBytes(fields, 3);
50
+ const noteDataBytes = fieldBytes(fields, 4);
51
+ const assetsBytes = fieldBytes(fields, 5);
52
+ if (!nameBytes)
53
+ throw new Error("NoteV1 missing name");
54
+ const version = versionBytes ? { value: String(fieldUint64(versionBytes, 1) || 1n) } : { value: "1" };
55
+ const origin_page = originBytes
56
+ ? { value: String(fieldUint64(originBytes, 1)) }
57
+ : { value: "0" };
58
+ const assets = assetsBytes
59
+ ? { value: String(fieldUint64(assetsBytes, 1)) }
60
+ : { value: "0" };
61
+ return {
62
+ version,
63
+ origin_page,
64
+ name: decodeName(nameBytes),
65
+ note_data: noteDataBytes ? decodeNoteData(noteDataBytes) : { entries: [] },
66
+ assets,
67
+ };
68
+ }
69
+ function decodeNote(bytes) {
70
+ const fields = parseFields(bytes);
71
+ const legacy = fieldBytes(fields, 1);
72
+ const v1 = fieldBytes(fields, 2);
73
+ if (v1) {
74
+ return { note_version: { V1: decodeNoteV1(v1) } };
75
+ }
76
+ if (legacy) {
77
+ return { note_version: { Legacy: {} } };
78
+ }
79
+ throw new Error("Note missing note_version");
80
+ }
81
+ function decodeBalanceEntry(bytes) {
82
+ const fields = parseFields(bytes);
83
+ const nameBytes = fieldBytes(fields, 1);
84
+ const noteBytes = fieldBytes(fields, 2);
85
+ const entry = {
86
+ note: noteBytes ? decodeNote(noteBytes) : null,
87
+ };
88
+ if (nameBytes)
89
+ entry.name = decodeName(nameBytes);
90
+ return entry;
91
+ }
92
+ export function decodeBalanceMessage(bytes) {
93
+ const fields = parseFields(bytes);
94
+ const notes = fieldMessages(fields, 1)
95
+ .filter((entry) => entry.length > 0)
96
+ .map(decodeBalanceEntry);
97
+ const heightBytes = fieldBytes(fields, 2);
98
+ const blockIdBytes = fieldBytes(fields, 3);
99
+ const pageBytes = fieldBytes(fields, 4);
100
+ const height = heightBytes ? { value: String(fieldUint64(heightBytes, 1)) } : undefined;
101
+ const block_id = blockIdBytes ? digestFromProtobuf(decodeHash(blockIdBytes)) : "";
102
+ const page = pageBytes
103
+ ? { next_page_token: new TextDecoder().decode(fieldBytes(parseFields(pageBytes), 1) ?? new Uint8Array(0)) }
104
+ : undefined;
105
+ const balance = { notes, block_id };
106
+ if (height)
107
+ balance.height = height;
108
+ if (page)
109
+ balance.page = page;
110
+ return balance;
111
+ }
112
+ //# sourceMappingURL=balance-decode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance-decode.js","sourceRoot":"","sources":["../../src/grpc/balance-decode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { PbCom2Balance } from "../types.js";
2
+ import type { Balance as GrpcBalance } from "./gen/nockchain/common/v2/blockchain.js";
3
+ import type { Hash } from "./gen/nockchain/common/v1/primitives.js";
4
+ import type { Name as GrpcName } from "./gen/nockchain/common/v1/blockchain.js";
5
+ export declare function grpcBalanceToPb(balance: GrpcBalance): PbCom2Balance;
6
+ export declare function digestToGrpcHash(digest: string): Hash;
7
+ export declare function nameToGrpcName(name: {
8
+ first: string;
9
+ last: string;
10
+ }): GrpcName;
11
+ //# sourceMappingURL=convert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/grpc/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAU,aAAa,EAAgD,MAAM,aAAa,CAAC;AACvG,OAAO,KAAK,EAAE,OAAO,IAAI,WAAW,EAAoB,MAAM,yCAAyC,CAAC;AACxG,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAuDhF,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAUnE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CASrD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,CAK9E"}
@@ -0,0 +1,89 @@
1
+ import { digestFromBase58 } from "../core/digest.js";
2
+ import { digestFromProtobuf } from "../proto/digest.js";
3
+ function grpcHashToPb(h) {
4
+ const pb = {};
5
+ if (h.belt_1)
6
+ pb.belt_1 = { value: String(h.belt_1.value) };
7
+ if (h.belt_2)
8
+ pb.belt_2 = { value: String(h.belt_2.value) };
9
+ if (h.belt_3)
10
+ pb.belt_3 = { value: String(h.belt_3.value) };
11
+ if (h.belt_4)
12
+ pb.belt_4 = { value: String(h.belt_4.value) };
13
+ if (h.belt_5)
14
+ pb.belt_5 = { value: String(h.belt_5.value) };
15
+ return pb;
16
+ }
17
+ function grpcHashToDigest(h) {
18
+ if (!h)
19
+ return "";
20
+ return digestFromProtobuf(grpcHashToPb(h));
21
+ }
22
+ function grpcNameToPb(name) {
23
+ if (!name?.first || !name.last)
24
+ return undefined;
25
+ return { first: grpcHashToDigest(name.first), last: grpcHashToDigest(name.last) };
26
+ }
27
+ function grpcNoteToPb(note) {
28
+ if (!note?.note_version)
29
+ return null;
30
+ if (note.note_version.$case === "v1") {
31
+ const v1 = note.note_version.v1;
32
+ const pbV1 = {
33
+ version: { value: String(v1.version?.value ?? 1) },
34
+ origin_page: { value: String(v1.origin_page?.value ?? 0) },
35
+ note_data: {
36
+ entries: (v1.note_data?.entries ?? []).map((e) => ({
37
+ key: e.key,
38
+ blob: [...e.blob],
39
+ })),
40
+ },
41
+ assets: { value: String(v1.assets?.value ?? 0) },
42
+ };
43
+ const name = grpcNameToPb(v1.name);
44
+ if (name)
45
+ pbV1.name = name;
46
+ return { note_version: { V1: pbV1 } };
47
+ }
48
+ if (note.note_version.$case === "legacy") {
49
+ return { note_version: { Legacy: note.note_version.legacy } };
50
+ }
51
+ return null;
52
+ }
53
+ function balanceEntryToPb(entry) {
54
+ const out = { note: grpcNoteToPb(entry.note) };
55
+ const name = grpcNameToPb(entry.name);
56
+ if (name)
57
+ out.name = name;
58
+ return out;
59
+ }
60
+ export function grpcBalanceToPb(balance) {
61
+ const out = {
62
+ notes: balance.notes
63
+ .filter((entry) => entry.name != null || entry.note != null)
64
+ .map(balanceEntryToPb),
65
+ block_id: grpcHashToDigest(balance.block_id),
66
+ };
67
+ if (balance.height)
68
+ out.height = { value: String(balance.height.value) };
69
+ if (balance.page)
70
+ out.page = { next_page_token: balance.page.next_page_token };
71
+ return out;
72
+ }
73
+ export function digestToGrpcHash(digest) {
74
+ const belts = digestFromBase58(digest);
75
+ return {
76
+ belt_1: { value: String(belts[0]) },
77
+ belt_2: { value: String(belts[1]) },
78
+ belt_3: { value: String(belts[2]) },
79
+ belt_4: { value: String(belts[3]) },
80
+ belt_5: { value: String(belts[4]) },
81
+ };
82
+ }
83
+ export function nameToGrpcName(name) {
84
+ return {
85
+ first: digestToGrpcHash(name.first),
86
+ last: digestToGrpcHash(name.last),
87
+ };
88
+ }
89
+ //# sourceMappingURL=convert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/grpc/convert.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
+ import { PageResponse } from "./pagination.js";
3
+ import { BlockHeight, BlockHeightDelta, EightBelt, Hash, Nicks, NoteVersion, SchnorrPubkey } from "./primitives.js";
4
+ export declare const protobufPackage = "nockchain.common.v1";
5
+ export interface WalletBalanceData {
6
+ notes: BalanceEntry[];
7
+ height?: BlockHeight | undefined;
8
+ block_id?: Hash | undefined;
9
+ page?: PageResponse | undefined;
10
+ }
11
+ export interface BalanceEntry {
12
+ name?: Name | undefined;
13
+ note?: Note | undefined;
14
+ }
15
+ export interface RawTransaction {
16
+ named_inputs: NamedInput[];
17
+ timelock_range?: TimeLockRangeAbsolute | undefined;
18
+ total_fees?: Nicks | undefined;
19
+ id?: Hash | undefined;
20
+ }
21
+ export interface NamedInput {
22
+ name?: Name | undefined;
23
+ input?: Input | undefined;
24
+ }
25
+ export interface Input {
26
+ note?: Note | undefined;
27
+ spend?: Spend | undefined;
28
+ }
29
+ export interface Spend {
30
+ signature?: Signature | undefined;
31
+ seeds: Seed[];
32
+ miner_fee_nicks?: Nicks | undefined;
33
+ }
34
+ export interface Seed {
35
+ output_source?: OutputSource | undefined;
36
+ recipient?: Lock | undefined;
37
+ timelock_intent?: TimeLockIntent | undefined;
38
+ gift?: Nicks | undefined;
39
+ parent_hash?: Hash | undefined;
40
+ }
41
+ export interface OutputSource {
42
+ source?: Source | undefined;
43
+ }
44
+ export interface Source {
45
+ hash?: Hash | undefined;
46
+ coinbase: boolean;
47
+ }
48
+ export interface TimeLockIntent {
49
+ value?: {
50
+ $case: "absolute";
51
+ absolute: TimeLockRangeAbsolute;
52
+ } | {
53
+ $case: "relative";
54
+ relative: TimeLockRangeRelative;
55
+ } | {
56
+ $case: "absolute_and_relative";
57
+ absolute_and_relative: TimeLockRangeAbsoluteAndRelative;
58
+ } | {
59
+ $case: "neither";
60
+ neither: TimeLockRangeNeither;
61
+ } | undefined;
62
+ }
63
+ export interface TimeLockRangeNeither {
64
+ }
65
+ export interface TimeLockRangeAbsoluteAndRelative {
66
+ absolute?: TimeLockRangeAbsolute | undefined;
67
+ relative?: TimeLockRangeRelative | undefined;
68
+ }
69
+ export interface TimeLockRangeAbsolute {
70
+ min?: BlockHeight | undefined;
71
+ max?: BlockHeight | undefined;
72
+ }
73
+ export interface TimeLockRangeRelative {
74
+ min?: BlockHeightDelta | undefined;
75
+ max?: BlockHeightDelta | undefined;
76
+ }
77
+ export interface Lock {
78
+ keys_required: number;
79
+ schnorr_pubkeys: SchnorrPubkey[];
80
+ }
81
+ export interface Name {
82
+ first?: Hash | undefined;
83
+ last?: Hash | undefined;
84
+ }
85
+ export interface Note {
86
+ origin_page?: BlockHeight | undefined;
87
+ timelock?: TimeLockIntent | undefined;
88
+ name?: Name | undefined;
89
+ lock?: Lock | undefined;
90
+ source?: Source | undefined;
91
+ assets?: Nicks | undefined;
92
+ version?: NoteVersion | undefined;
93
+ }
94
+ export interface Signature {
95
+ entries: SignatureEntry[];
96
+ }
97
+ export interface SignatureEntry {
98
+ schnorr_pubkey?: SchnorrPubkey | undefined;
99
+ signature?: SchnorrSignature | undefined;
100
+ }
101
+ export interface SchnorrSignature {
102
+ chal?: EightBelt | undefined;
103
+ sig?: EightBelt | undefined;
104
+ }
105
+ export declare const WalletBalanceData: MessageFns<WalletBalanceData>;
106
+ export declare const BalanceEntry: MessageFns<BalanceEntry>;
107
+ export declare const RawTransaction: MessageFns<RawTransaction>;
108
+ export declare const NamedInput: MessageFns<NamedInput>;
109
+ export declare const Input: MessageFns<Input>;
110
+ export declare const Spend: MessageFns<Spend>;
111
+ export declare const Seed: MessageFns<Seed>;
112
+ export declare const OutputSource: MessageFns<OutputSource>;
113
+ export declare const Source: MessageFns<Source>;
114
+ export declare const TimeLockIntent: MessageFns<TimeLockIntent>;
115
+ export declare const TimeLockRangeNeither: MessageFns<TimeLockRangeNeither>;
116
+ export declare const TimeLockRangeAbsoluteAndRelative: MessageFns<TimeLockRangeAbsoluteAndRelative>;
117
+ export declare const TimeLockRangeAbsolute: MessageFns<TimeLockRangeAbsolute>;
118
+ export declare const TimeLockRangeRelative: MessageFns<TimeLockRangeRelative>;
119
+ export declare const Lock: MessageFns<Lock>;
120
+ export declare const Name: MessageFns<Name>;
121
+ export declare const Note: MessageFns<Note>;
122
+ export declare const Signature: MessageFns<Signature>;
123
+ export declare const SignatureEntry: MessageFns<SignatureEntry>;
124
+ export declare const SchnorrSignature: MessageFns<SchnorrSignature>;
125
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
126
+ export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {
127
+ $case: string;
128
+ } ? {
129
+ [K in keyof Omit<T, "$case">]?: DeepPartial<T[K]>;
130
+ } & {
131
+ $case: T["$case"];
132
+ } : T extends {} ? {
133
+ [K in keyof T]?: DeepPartial<T[K]>;
134
+ } : Partial<T>;
135
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
136
+ export type Exact<P, I extends P> = P extends Builtin ? P : P & {
137
+ [K in keyof P]: Exact<P[K], I[K]>;
138
+ } & {
139
+ [K in Exclude<keyof I, KeysOfUnion<P>>]: never;
140
+ };
141
+ export interface MessageFns<T> {
142
+ encode(message: T, writer?: BinaryWriter): BinaryWriter;
143
+ decode(input: BinaryReader | Uint8Array, length?: number): T;
144
+ fromJSON(object: any): T;
145
+ toJSON(message: T): unknown;
146
+ create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;
147
+ fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;
148
+ }
149
+ export {};
150
+ //# sourceMappingURL=blockchain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockchain.d.ts","sourceRoot":"","sources":["../../../../../../src/grpc/gen/nockchain/common/v1/blockchain.ts"],"names":[],"mappings":"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"}