koilib 1.5.0 → 2.3.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/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koilib",
3
- "version": "1.5.0",
3
+ "version": "2.3.0",
4
4
  "description": "JS Koinos Library",
5
5
  "author": "Julian Gonzalez",
6
6
  "repository": {
@@ -30,6 +30,7 @@
30
30
  "lint:eslint": "eslint . --ext .js,.ts",
31
31
  "lint:tsc": "tsc --noEmit --incremental false",
32
32
  "prerelease": "yarn build && yarn bundle && yarn docs",
33
+ "proto": "node generateJsonKoinosProto.js",
33
34
  "test": "jest",
34
35
  "test:unit": "jest wallet.spec.ts",
35
36
  "test:e2e": "jest wallet.e2e-spec.ts"
@@ -43,15 +44,18 @@
43
44
  "js-sha256": "^0.9.0",
44
45
  "multibase": "^4.0.4",
45
46
  "noble-ripemd160": "^0.2.0",
46
- "noble-secp256k1": "^1.2.9"
47
+ "noble-secp256k1": "^1.2.9",
48
+ "protobufjs": "^6.11.2"
47
49
  },
48
50
  "devDependencies": {
49
51
  "@tsconfig/node12": "^1.0.9",
50
52
  "@types/jest": "^26.0.24",
51
- "@types/node": "^16.4.10",
53
+ "@types/node": "^16.11.0",
52
54
  "@typescript-eslint/eslint-plugin": "^4.29.0",
53
55
  "@typescript-eslint/parser": "^4.29.0",
54
56
  "audit-ci": "^4.1.0",
57
+ "copyfiles": "^2.4.1",
58
+ "dotenv": "^10.0.0",
55
59
  "eslint": "^7.32.0",
56
60
  "eslint-config-airbnb-typescript": "^12.3.1",
57
61
  "eslint-config-prettier": "^8.3.0",
@@ -59,6 +63,9 @@
59
63
  "eslint-plugin-jest": "^24.4.0",
60
64
  "eslint-plugin-prettier": "^3.4.0",
61
65
  "eslint-plugin-tsdoc": "^0.2.14",
66
+ "fastify": "^3.23.0",
67
+ "fastify-cors": "^6.0.2",
68
+ "fastify-static": "^4.5.0",
62
69
  "jest": "^27.0.6",
63
70
  "jest-puppeteer": "^5.0.4",
64
71
  "prettier": "^2.3.2",
@@ -1,41 +0,0 @@
1
- /**
2
- * Multihash is a protocol for differentiating outputs from various
3
- * well-established cryptographic hash functions, addressing size +
4
- * encoding considerations
5
- */
6
- export declare class Multihash {
7
- /**
8
- * Hash ID
9
- *
10
- * Identifier of the hash function. See the
11
- * complete [list of IDs in this link](https://github.com/multiformats/js-multihash/blob/master/src/constants.js)
12
- *
13
- * Some relevants IDs are:
14
- * - 0x12 (sha2-256)
15
- * - 0x16 (sha3-256)
16
- * - 0x1b (keccak-256)
17
- * - 0x1053 (ripemd-160)
18
- */
19
- id: number;
20
- /**
21
- * Digest
22
- */
23
- digest: Uint8Array;
24
- /**
25
- *
26
- * @param digest - digest
27
- * @param id - hash id. By default it uses 0x12 which corresponds with sha2-256
28
- *
29
- * @example
30
- * ```ts
31
- * const buffer = new Uint8Array(32);
32
- * const multihash = new Multihash(buffer);
33
- * ```
34
- */
35
- constructor(digest: Uint8Array, id?: number);
36
- /**
37
- * @returns Encodes the multihash in base58
38
- */
39
- toString(): string;
40
- }
41
- export default Multihash;
package/lib/Multihash.js DELETED
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Multihash = void 0;
4
- const VariableBlob_1 = require("./VariableBlob");
5
- /**
6
- * Multihash is a protocol for differentiating outputs from various
7
- * well-established cryptographic hash functions, addressing size +
8
- * encoding considerations
9
- */
10
- class Multihash {
11
- /**
12
- *
13
- * @param digest - digest
14
- * @param id - hash id. By default it uses 0x12 which corresponds with sha2-256
15
- *
16
- * @example
17
- * ```ts
18
- * const buffer = new Uint8Array(32);
19
- * const multihash = new Multihash(buffer);
20
- * ```
21
- */
22
- constructor(digest, id = 0x12) {
23
- this.id = id;
24
- this.digest = digest;
25
- }
26
- /**
27
- * @returns Encodes the multihash in base58
28
- */
29
- toString() {
30
- const vb = new VariableBlob_1.VariableBlob();
31
- vb.serializeVarint(this.id);
32
- vb.serializeBuffer(this.digest);
33
- return vb.toString("z");
34
- }
35
- }
36
- exports.Multihash = Multihash;
37
- exports.default = Multihash;
38
- //# sourceMappingURL=Multihash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Multihash.js","sourceRoot":"","sources":["../src/Multihash.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAE9C;;;;GAIG;AACH,MAAa,SAAS;IAoBpB;;;;;;;;;;OAUG;IACH,YAAY,MAAkB,EAAE,EAAE,GAAG,IAAI;QACvC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,MAAM,EAAE,GAAG,IAAI,2BAAY,EAAE,CAAC;QAC9B,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACF;AA7CD,8BA6CC;AAED,kBAAe,SAAS,CAAC"}
@@ -1,35 +0,0 @@
1
- import * as multibase from "multibase";
2
- /**
3
- * Class to serialize and deserialize data in Koinos
4
- */
5
- export declare class VariableBlob {
6
- buffer: Uint8Array;
7
- offset: number;
8
- constructor(input?: string | Uint8Array);
9
- resetCursor(): VariableBlob;
10
- checkRemaining(size: number, canResize?: boolean): void;
11
- write(data: string | Uint8Array, length?: number): void;
12
- read(size: number, outputString?: boolean, nameOrCode?: multibase.BaseNameOrCode): Uint8Array | string;
13
- writeInt8(n: number): void;
14
- readInt8(): number;
15
- writeInt16(n: number): void;
16
- readInt16(): number;
17
- writeInt32(n: number): void;
18
- readInt32(): number;
19
- writeUint8(n: number): void;
20
- readUint8(): number;
21
- writeUint16(n: number): void;
22
- readUint16(): number;
23
- writeUint32(n: number): void;
24
- readUint32(): number;
25
- serializeVarint(num: number): void;
26
- deserializeVarint(): number;
27
- serializeBuffer(data: string | Uint8Array): void;
28
- deserializeBuffer(outputString?: boolean, nameOrCode?: multibase.BaseNameOrCode): Uint8Array | string;
29
- serializeString(str: string): void;
30
- deserializeString(): string;
31
- serializeBigint(num: string | number | bigint, bits: number): void;
32
- deserializeBigint(bits: number, unsigned?: boolean, outputBigint?: boolean): string | number | bigint;
33
- toString(nameOrCode?: multibase.BaseNameOrCode): string;
34
- }
35
- export default VariableBlob;
@@ -1,227 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.VariableBlob = void 0;
23
- /* eslint-disable no-bitwise, prefer-template */
24
- const multibase = __importStar(require("multibase"));
25
- /**
26
- * Class to serialize and deserialize data in Koinos
27
- */
28
- class VariableBlob {
29
- constructor(input) {
30
- if (typeof input === "string") {
31
- this.buffer = multibase.decode(input);
32
- }
33
- else {
34
- this.buffer = input || new Uint8Array();
35
- }
36
- this.offset = 0;
37
- }
38
- resetCursor() {
39
- this.offset = 0;
40
- return this;
41
- }
42
- checkRemaining(size, canResize = false) {
43
- if (this.offset + size > this.buffer.length) {
44
- if (!canResize)
45
- throw new Error("Unexpected EOF");
46
- const newSize = this.offset + size;
47
- const buffer = new Uint8Array(newSize);
48
- buffer.set(this.buffer);
49
- this.buffer = buffer;
50
- }
51
- }
52
- write(data, length = 0) {
53
- const bytes = typeof data === "string" ? multibase.decode(data) : data;
54
- if (length && bytes.length !== length)
55
- throw new Error(`Invalid length. Expected: ${length}. Received: ${bytes.length}`);
56
- this.checkRemaining(bytes.length, true);
57
- this.buffer.set(bytes, this.offset);
58
- this.offset += bytes.length;
59
- }
60
- read(size, outputString = false, nameOrCode = "M") {
61
- this.checkRemaining(size);
62
- const subBuffer = new Uint8Array(size);
63
- subBuffer.set(this.buffer.subarray(this.offset, this.offset + size));
64
- this.offset += size;
65
- if (outputString) {
66
- return new VariableBlob(subBuffer).toString(nameOrCode);
67
- }
68
- return subBuffer;
69
- }
70
- writeInt8(n) {
71
- this.checkRemaining(1, true);
72
- new DataView(this.buffer.buffer).setInt8(this.offset, n);
73
- this.offset += 1;
74
- }
75
- readInt8() {
76
- this.checkRemaining(1);
77
- const n = new DataView(this.buffer.buffer).getInt8(this.offset);
78
- this.offset += 1;
79
- return n;
80
- }
81
- writeInt16(n) {
82
- this.checkRemaining(2, true);
83
- new DataView(this.buffer.buffer).setInt16(this.offset, n);
84
- this.offset += 2;
85
- }
86
- readInt16() {
87
- this.checkRemaining(2);
88
- const n = new DataView(this.buffer.buffer).getInt16(this.offset);
89
- this.offset += 2;
90
- return n;
91
- }
92
- writeInt32(n) {
93
- this.checkRemaining(4, true);
94
- new DataView(this.buffer.buffer).setInt32(this.offset, n);
95
- this.offset += 4;
96
- }
97
- readInt32() {
98
- this.checkRemaining(4);
99
- const n = new DataView(this.buffer.buffer).getInt32(this.offset);
100
- this.offset += 4;
101
- return n;
102
- }
103
- writeUint8(n) {
104
- this.checkRemaining(1, true);
105
- // new DataView(this.buffer.buffer).setUint8(this.offset, n);
106
- this.buffer[this.offset] = n;
107
- this.offset += 1;
108
- }
109
- readUint8() {
110
- this.checkRemaining(1);
111
- // const n = new DataView(this.buffer.buffer).getUint8(this.offset);
112
- const n = this.buffer[this.offset];
113
- this.offset += 1;
114
- return n;
115
- }
116
- writeUint16(n) {
117
- this.checkRemaining(2, true);
118
- new DataView(this.buffer.buffer).setUint16(this.offset, n);
119
- this.offset += 2;
120
- }
121
- readUint16() {
122
- this.checkRemaining(2);
123
- const n = new DataView(this.buffer.buffer).getUint16(this.offset);
124
- this.offset += 2;
125
- return n;
126
- }
127
- writeUint32(n) {
128
- this.checkRemaining(4, true);
129
- new DataView(this.buffer.buffer).setUint32(this.offset, n);
130
- this.offset += 4;
131
- }
132
- readUint32() {
133
- this.checkRemaining(4);
134
- const n = new DataView(this.buffer.buffer).getUint32(this.offset);
135
- this.offset += 4;
136
- return n;
137
- }
138
- // Varint
139
- serializeVarint(num) {
140
- if (num === 0) {
141
- this.writeUint8(0);
142
- return;
143
- }
144
- let n = num;
145
- let shift7 = num;
146
- while (n > 0) {
147
- shift7 = n >> 7;
148
- const group7 = n - (shift7 << 7);
149
- const byte = shift7 > 0 ? 128 + group7 : group7;
150
- this.writeUint8(byte);
151
- n = shift7;
152
- }
153
- }
154
- deserializeVarint() {
155
- let i = 0;
156
- let n = 0;
157
- let endVarInt = false;
158
- while (!endVarInt) {
159
- const byte = this.readUint8();
160
- endVarInt = byte < 128;
161
- const mod = endVarInt ? byte : byte - 128;
162
- n += mod << (7 * i);
163
- i += 1;
164
- }
165
- return n;
166
- }
167
- // Buffer
168
- serializeBuffer(data) {
169
- const bytes = typeof data === "string" ? multibase.decode(data) : data;
170
- this.serializeVarint(bytes.length);
171
- this.write(bytes);
172
- }
173
- deserializeBuffer(outputString = false, nameOrCode = "M") {
174
- const size = this.deserializeVarint();
175
- return this.read(size, outputString, nameOrCode);
176
- }
177
- // String
178
- serializeString(str) {
179
- const bytes = new TextEncoder().encode(str);
180
- this.serializeVarint(bytes.length);
181
- this.write(bytes);
182
- }
183
- deserializeString() {
184
- const size = this.deserializeVarint();
185
- const buffer = this.read(size);
186
- return new TextDecoder().decode(buffer);
187
- }
188
- // Bigint
189
- serializeBigint(num, bits) {
190
- const bignum = BigInt(num);
191
- let numString;
192
- if (bignum >= BigInt(0)) {
193
- numString = bignum.toString(16);
194
- numString = "0".repeat(bits / 4 - numString.length) + numString;
195
- }
196
- else {
197
- numString = (BigInt("0x1" + "0".repeat(bits / 4)) + bignum).toString(16);
198
- }
199
- for (let i = 0; i < bits / 4; i += 8) {
200
- const uint32 = Number("0x" + numString.substring(i, i + 8));
201
- this.writeUint32(uint32);
202
- }
203
- }
204
- deserializeBigint(bits, unsigned = true, outputBigint = true) {
205
- let numString = "0x";
206
- for (let i = 0; i < bits / 32; i += 1) {
207
- const uint32Str = this.readUint32().toString(16);
208
- numString += "0".repeat(8 - uint32Str.length) + uint32Str;
209
- }
210
- if (!unsigned && Number(numString.substring(0, 3)) >= 8) {
211
- // signed number and starts with bit 1 (negative number)
212
- return BigInt(numString) - BigInt("0x1" + "0".repeat(bits / 4));
213
- }
214
- const result = BigInt(numString);
215
- if (outputBigint)
216
- return result;
217
- if (result <= BigInt(Number.MAX_SAFE_INTEGER))
218
- return Number(result);
219
- return result.toString();
220
- }
221
- toString(nameOrCode = "M") {
222
- return new TextDecoder().decode(multibase.encode(nameOrCode, this.buffer));
223
- }
224
- }
225
- exports.VariableBlob = VariableBlob;
226
- exports.default = VariableBlob;
227
- //# sourceMappingURL=VariableBlob.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VariableBlob.js","sourceRoot":"","sources":["../src/VariableBlob.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAgD;AAChD,qDAAuC;AAEvC;;GAEG;AACH,MAAa,YAAY;IAKvB,YAAY,KAA2B;QACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACvC;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,IAAI,UAAU,EAAE,CAAC;SACzC;QACD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,SAAS,GAAG,KAAK;QAC5C,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3C,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;IACH,CAAC;IAED,KAAK,CAAC,IAAyB,EAAE,MAAM,GAAG,CAAC;QACzC,MAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,IAAI,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;YACnC,MAAM,IAAI,KAAK,CACb,6BAA6B,MAAM,eAAe,KAAK,CAAC,MAAM,EAAE,CACjE,CAAC;QACJ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,IAAI,CACF,IAAY,EACZ,YAAY,GAAG,KAAK,EACpB,aAAuC,GAAG;QAE1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACvC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QACpB,IAAI,YAAY,EAAE;YAChB,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SACzD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,SAAS,CAAC,CAAS;QACjB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,UAAU,CAAC,CAAS;QAClB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,UAAU,CAAC,CAAS;QAClB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,UAAU,CAAC,CAAS;QAClB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,6DAA6D;QAC7D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,oEAAoE;QACpE,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,WAAW,CAAC,CAAS;QACnB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,WAAW,CAAC,CAAS;QACnB,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS;IACT,eAAe,CAAC,GAAW;QACzB,IAAI,GAAG,KAAK,CAAC,EAAE;YACb,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnB,OAAO;SACR;QACD,IAAI,CAAC,GAAG,GAAG,CAAC;QACZ,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,EAAE;YACZ,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC,GAAG,MAAM,CAAC;SACZ;IACH,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,OAAO,CAAC,SAAS,EAAE;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,SAAS,GAAG,IAAI,GAAG,GAAG,CAAC;YACvB,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;YAC1C,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpB,CAAC,IAAI,CAAC,CAAC;SACR;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS;IACT,eAAe,CAAC,IAAyB;QACvC,MAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,iBAAiB,CACf,YAAY,GAAG,KAAK,EACpB,aAAuC,GAAG;QAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,SAAS;IACT,eAAe,CAAC,GAAW;QACzB,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,iBAAiB;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,CAAC;QAC7C,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,SAAS;IACT,eAAe,CAAC,GAA6B,EAAE,IAAY;QACzD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,SAAS,CAAC;QACd,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;YACvB,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAChC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;SACjE;aAAM;YACL,SAAS,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAC1E;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;YACpC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SAC1B;IACH,CAAC;IAED,iBAAiB,CACf,IAAY,EACZ,QAAQ,GAAG,IAAI,EACf,YAAY,GAAG,IAAI;QAEnB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;YACrC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACjD,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;SAC3D;QACD,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YACvD,wDAAwD;YACxD,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;SACjE;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,YAAY;YAAE,OAAO,MAAM,CAAC;QAChC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAED,QAAQ,CAAC,aAAuC,GAAG;QACjD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7E,CAAC;CACF;AAzOD,oCAyOC;AAED,kBAAe,YAAY,CAAC"}
package/lib/Wallet.d.ts DELETED
@@ -1,250 +0,0 @@
1
- import { Contract, DecodedOperation, EncodedOperation } from "./Contract";
2
- import { Transaction } from "./interface";
3
- import { Provider } from "./Provider";
4
- import { Signer } from "./Signer";
5
- /**
6
- * The Wallet Class combines all the features of [[Signer]],
7
- * [[Contract]], and [[Provider]] classes.
8
- *
9
- * @example **How to send transactions**
10
- *
11
- * ```ts
12
- * (async () => {
13
- * // define signer, provider, and contract
14
- * const signer = Signer.fromSeed("my seed");
15
- * const provider = new Provider("http://45.56.104.152:8080");
16
- * const contract = new Contract({
17
- * id: "Mkw96mR+Hh71IWwJoT/2lJXBDl5Q=",
18
- * entries: {
19
- * transfer: {
20
- * id: 0x62efa292,
21
- * inputs: {
22
- * type: [
23
- * {
24
- * name: "from",
25
- * type: "string",
26
- * },
27
- * {
28
- * name: "to",
29
- * type: "string",
30
- * },
31
- * {
32
- * name: "value",
33
- * type: "uint64",
34
- * },
35
- * ],
36
- * },
37
- * },
38
- * balance_of: {
39
- * id: 0x15619248,
40
- * inputs: { type: "string" },
41
- * outputs: { type: "uint64" },
42
- * },
43
- * },
44
- * });
45
- *
46
- * // create a wallet with signer, provider and contract
47
- * const wallet = new Wallet({ signer, provider, contract });
48
- *
49
- * // encode a contract operation to make a transfer
50
- * const opTransfer = wallet.encodeOperation({
51
- * name: "transfer",
52
- * args: {
53
- * from: wallet.getAddress(),
54
- * to: "bob",
55
- * value: BigInt(1000),
56
- * },
57
- * });
58
- *
59
- * // create a transaction
60
- * const tx = await wallet.newTransaction({
61
- * operations: [opTransfer],
62
- * });
63
- *
64
- * // sign and send transaction
65
- * await wallet.signTransaction(tx);
66
- * await wallet.sendTransaction(tx);
67
- * })();
68
- * ```
69
- *
70
- * @example **How to read contracts**
71
- * ```ts
72
- * (async () => {
73
- * // define provider and contract
74
- * const provider = new Provider("http://45.56.104.152:8080");
75
- * const contract = new Contract({
76
- * id: "Mkw96mR+Hh71IWwJoT/2lJXBDl5Q=",
77
- * entries: {
78
- * transfer: {
79
- * id: 0x62efa292,
80
- * inputs: {
81
- * type: [
82
- * {
83
- * name: "from",
84
- * type: "string",
85
- * },
86
- * {
87
- * name: "to",
88
- * type: "string",
89
- * },
90
- * {
91
- * name: "value",
92
- * type: "uint64",
93
- * },
94
- * ],
95
- * },
96
- * },
97
- * balance_of: {
98
- * id: 0x15619248,
99
- * inputs: { type: "string" },
100
- * outputs: { type: "uint64" },
101
- * },
102
- * },
103
- * });
104
- *
105
- * // create a wallet with provider and contract (signer is optional)
106
- * const wallet = new Wallet({ provider, contract });
107
- *
108
- * // read the contract providing the name of the contract funtion
109
- * // and its arguments
110
- * const balance = await wallet.readContract({
111
- * name: "balance_of",
112
- * args: wallet.getAddress(),
113
- * });
114
- *
115
- * console.log(Number(balance) / 1e8);
116
- * })();
117
- * ```
118
- *
119
- * @example **How to upload contracts**
120
- * ```ts
121
- * (async () => {
122
- * // define signer, provider and wallet
123
- * const signer = Signer.fromSeed("my seed");
124
- * const provider = new Provider("http://45.56.104.152:8080");
125
- * const wallet = new Wallet({ signer, provider });
126
- *
127
- * // encode operation to upload the contract
128
- * const bytecode = new Uint8Array([1, 2, 3, 4]);
129
- * const op = wallet.encodeUploadContractOperation(bytecode);
130
- *
131
- * // create a transaction
132
- * const tx = await wallet.newTransaction({
133
- * operations: [op],
134
- * });
135
- *
136
- * // sign and send transaction
137
- * await wallet.signTransaction(tx);
138
- * await wallet.sendTransaction(tx);
139
- * })();
140
- * ```
141
- */
142
- export declare class Wallet {
143
- /**
144
- * Class containing the private key. It is used to sign
145
- */
146
- private signer?;
147
- /**
148
- * Class defining the contract to interact with
149
- */
150
- contract?: Contract;
151
- /**
152
- * Class to connect with the RPC node
153
- */
154
- provider?: Provider;
155
- constructor(opts?: {
156
- signer?: Signer;
157
- contract?: Contract;
158
- provider?: Provider;
159
- });
160
- /**
161
- * Creates an unsigned transaction
162
- */
163
- newTransaction(opts: {
164
- /**
165
- * Maximum resources to be used in the transaction.
166
- * By default it is 1000000
167
- */
168
- resource_limit?: number | bigint | string;
169
- /**
170
- * Array of operations.
171
- */
172
- operations?: {
173
- type: string;
174
- value: unknown;
175
- }[];
176
- /**
177
- * Boolean defining if the Provider should be used
178
- * to call the RPC node and get the nonce (see
179
- * [[Provider.getNonce]])
180
- */
181
- getNonce?: boolean;
182
- }): Promise<Transaction>;
183
- /**
184
- * The current implementation of Koinos expects a contract Id
185
- * derived from the account deploying the contract:
186
- * contractId = ripemd160(address serialized)
187
- * @returns contract id derived from address
188
- */
189
- static computeContractId(address: string): string;
190
- /**
191
- * Function to encode an operation to upload or update a contract
192
- * @param bytecode - bytecode in multibase64 or Uint8Array
193
- */
194
- encodeUploadContractOperation(bytecode: string | Uint8Array): {
195
- type: string;
196
- value: {
197
- contract_id: string;
198
- bytecode: string;
199
- extensions: unknown;
200
- };
201
- };
202
- /**
203
- * See [[Signer.getAddress]]
204
- */
205
- getAddress(compressed?: boolean): string;
206
- /**
207
- * See [[Signer.signTransaction]]
208
- */
209
- signTransaction(tx: Transaction): Promise<Transaction>;
210
- /**
211
- * See [[Contract.encodeOperation]]
212
- */
213
- encodeOperation(op: DecodedOperation): EncodedOperation;
214
- /**
215
- * See [[Contract.decodeOperation]]
216
- */
217
- decodeOperation(op: EncodedOperation): DecodedOperation;
218
- /**
219
- * See [[Contract.decodeResult]]
220
- */
221
- decodeResult(result: string, opName: string): unknown;
222
- /**
223
- * See [[Provider.call]]
224
- */
225
- call(method: string, params: unknown): Promise<unknown>;
226
- /**
227
- * See [[Provider.getNonce]]
228
- */
229
- getNonce(address: string): Promise<number>;
230
- /**
231
- * See [[Provider.sendTransaction]]
232
- */
233
- sendTransaction(transaction: Transaction): Promise<unknown>;
234
- /**
235
- * Call the RPC node to read a contract. The operation to read
236
- * must be in the decoded format (see [[DecodedOperation]]). This
237
- * function will encode the operation using the contract definition,
238
- * call the RPC node, and decode the result.
239
- *
240
- * @example
241
- * ```
242
- * const balance = await wallet.readContract({
243
- * name: "balance_of",
244
- * args: "126LgExvJrLDQBsxA1Ddur2VjXJkyAbG91",
245
- * });
246
- * ```
247
- */
248
- readContract(operation: DecodedOperation): Promise<unknown>;
249
- }
250
- export default Wallet;