saito-wasm 0.0.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 (50) hide show
  1. package/Cargo.toml +30 -0
  2. package/dist/browser/index.d.ts +428 -0
  3. package/dist/browser/index.js +220 -0
  4. package/dist/server/113b3ee1c6c31ca8f96e.module.wasm +0 -0
  5. package/dist/server/index.d.ts +300 -0
  6. package/dist/server/index.js +283 -0
  7. package/dist/server/pkg_node_index_js.index.js +55 -0
  8. package/dist/server/vendors-node_modules_text-encoding_index_js.index.js +44 -0
  9. package/dist/types/dist/browser/index.d.ts +3 -0
  10. package/dist/types/dist/browser/index.d.ts.map +1 -0
  11. package/dist/types/dist/server/index.d.ts +3 -0
  12. package/dist/types/dist/server/index.d.ts.map +1 -0
  13. package/dist/types/dist/server/pkg_node_index_js.index.d.ts +9 -0
  14. package/dist/types/dist/server/pkg_node_index_js.index.d.ts.map +1 -0
  15. package/dist/types/dist/server/vendors-node_modules_text-encoding_index_js.index.d.ts +8 -0
  16. package/dist/types/dist/server/vendors-node_modules_text-encoding_index_js.index.d.ts.map +1 -0
  17. package/dist/types/index.node.d.ts +34 -0
  18. package/dist/types/index.node.d.ts.map +1 -0
  19. package/dist/types/index.web.d.ts +3 -0
  20. package/dist/types/index.web.d.ts.map +1 -0
  21. package/dist/types/js/msg_handler.d.ts +17 -0
  22. package/dist/types/js/msg_handler.d.ts.map +1 -0
  23. package/dist/types/pkg/node/index.d.ts +2 -0
  24. package/dist/types/pkg/node/index.d.ts.map +1 -0
  25. package/dist/types/pkg/node/index_bg.d.ts +476 -0
  26. package/dist/types/pkg/node/index_bg.d.ts.map +1 -0
  27. package/dist/types/pkg/node/snippets/saito-wasm-10de7e358f6ef4db/js/msg_handler.d.ts +17 -0
  28. package/dist/types/pkg/node/snippets/saito-wasm-10de7e358f6ef4db/js/msg_handler.d.ts.map +1 -0
  29. package/dist/types/pkg/web/index.d.ts +406 -0
  30. package/dist/types/pkg/web/index.d.ts.map +1 -0
  31. package/dist/types/pkg/web/snippets/saito-wasm-10de7e358f6ef4db/js/msg_handler.d.ts +17 -0
  32. package/dist/types/pkg/web/snippets/saito-wasm-10de7e358f6ef4db/js/msg_handler.d.ts.map +1 -0
  33. package/dist/types/webpack.config.d.ts +14 -0
  34. package/dist/types/webpack.config.d.ts.map +1 -0
  35. package/index.node.ts +5 -0
  36. package/index.web.ts +8 -0
  37. package/js/msg_handler.js +60 -0
  38. package/package.json +39 -0
  39. package/src/lib.rs +18 -0
  40. package/src/saitowasm.rs +718 -0
  41. package/src/wasm_block.rs +97 -0
  42. package/src/wasm_configuration.rs +94 -0
  43. package/src/wasm_io_handler.rs +258 -0
  44. package/src/wasm_peer.rs +80 -0
  45. package/src/wasm_slip.rs +101 -0
  46. package/src/wasm_task_runner.rs +12 -0
  47. package/src/wasm_time_keeper.rs +12 -0
  48. package/src/wasm_transaction.rs +177 -0
  49. package/tsconfig.json +116 -0
  50. package/webpack.config.js +171 -0
@@ -0,0 +1,406 @@
1
+ /**
2
+ * @param {string} json
3
+ * @returns {Promise<any>}
4
+ */
5
+ export function initialize(json: string): Promise<any>;
6
+ /**
7
+ * @param {string} public_key
8
+ * @param {bigint} amount
9
+ * @param {bigint} fee
10
+ * @param {boolean} force_merge
11
+ * @returns {Promise<WasmTransaction>}
12
+ */
13
+ export function create_transaction(public_key: string, amount: bigint, fee: bigint, force_merge: boolean): Promise<WasmTransaction>;
14
+ /**
15
+ * @returns {Promise<string>}
16
+ */
17
+ export function get_latest_block_hash(): Promise<string>;
18
+ /**
19
+ * @param {bigint} index
20
+ * @param {any} peer_config
21
+ * @returns {Promise<void>}
22
+ */
23
+ export function process_new_peer(index: bigint, peer_config: any): Promise<void>;
24
+ /**
25
+ * @param {bigint} peer_index
26
+ * @returns {Promise<void>}
27
+ */
28
+ export function process_peer_disconnection(peer_index: bigint): Promise<void>;
29
+ /**
30
+ * @param {Uint8Array} buffer
31
+ * @param {bigint} peer_index
32
+ * @returns {Promise<void>}
33
+ */
34
+ export function process_msg_buffer_from_peer(buffer: Uint8Array, peer_index: bigint): Promise<void>;
35
+ /**
36
+ * @param {Uint8Array} buffer
37
+ * @param {Uint8Array} hash
38
+ * @param {bigint} peer_index
39
+ * @returns {Promise<void>}
40
+ */
41
+ export function process_fetched_block(buffer: Uint8Array, hash: Uint8Array, peer_index: bigint): Promise<void>;
42
+ /**
43
+ * @param {bigint} duration_in_ms
44
+ * @returns {Promise<void>}
45
+ */
46
+ export function process_timer_event(duration_in_ms: bigint): Promise<void>;
47
+ /**
48
+ * @param {Uint8Array} buffer
49
+ * @returns {string}
50
+ */
51
+ export function hash(buffer: Uint8Array): string;
52
+ /**
53
+ * @param {Uint8Array} buffer
54
+ * @param {string} private_key
55
+ * @returns {string}
56
+ */
57
+ export function sign_buffer(buffer: Uint8Array, private_key: string): string;
58
+ /**
59
+ * @param {Uint8Array} buffer
60
+ * @param {string} signature
61
+ * @param {string} public_key
62
+ * @returns {boolean}
63
+ */
64
+ export function verify_signature(buffer: Uint8Array, signature: string, public_key: string): boolean;
65
+ /**
66
+ * @returns {Promise<Array<any>>}
67
+ */
68
+ export function get_peers(): Promise<Array<any>>;
69
+ /**
70
+ * @param {bigint} peer_index
71
+ * @returns {Promise<WasmPeer | undefined>}
72
+ */
73
+ export function get_peer(peer_index: bigint): Promise<WasmPeer | undefined>;
74
+ /**
75
+ * @returns {Promise<string>}
76
+ */
77
+ export function get_public_key(): Promise<string>;
78
+ /**
79
+ * @returns {Promise<string>}
80
+ */
81
+ export function get_private_key(): Promise<string>;
82
+ /**
83
+ * @returns {Promise<Array<any>>}
84
+ */
85
+ export function get_pending_txs(): Promise<Array<any>>;
86
+ /**
87
+ * @param {string} _ticker
88
+ * @returns {Promise<bigint>}
89
+ */
90
+ export function get_balance(_ticker: string): Promise<bigint>;
91
+ /**
92
+ * @returns {string}
93
+ */
94
+ export function generate_private_key(): string;
95
+ /**
96
+ * @param {string} private_key
97
+ * @returns {string}
98
+ */
99
+ export function generate_public_key(private_key: string): string;
100
+ /**
101
+ * @param {WasmTransaction} tx
102
+ * @returns {Promise<void>}
103
+ */
104
+ export function propagate_transaction(tx: WasmTransaction): Promise<void>;
105
+ /**
106
+ * @param {Uint8Array} buffer
107
+ * @param {number} msg_index
108
+ * @param {bigint} peer_index
109
+ * @returns {Promise<void>}
110
+ */
111
+ export function send_api_call(buffer: Uint8Array, msg_index: number, peer_index: bigint): Promise<void>;
112
+ /**
113
+ * @param {Uint8Array} buffer
114
+ * @param {number} msg_index
115
+ * @param {bigint} peer_index
116
+ * @returns {Promise<void>}
117
+ */
118
+ export function send_api_success(buffer: Uint8Array, msg_index: number, peer_index: bigint): Promise<void>;
119
+ /**
120
+ * @param {Uint8Array} buffer
121
+ * @param {number} msg_index
122
+ * @param {bigint} peer_index
123
+ * @returns {Promise<void>}
124
+ */
125
+ export function send_api_error(buffer: Uint8Array, msg_index: number, peer_index: bigint): Promise<void>;
126
+ /**
127
+ * @param {bigint} peer_index
128
+ * @param {any} services
129
+ * @returns {Promise<void>}
130
+ */
131
+ export function propagate_services(peer_index: bigint, services: any): Promise<void>;
132
+ /**
133
+ */
134
+ export class SaitoWasm {
135
+ __destroy_into_raw(): number;
136
+ ptr: number;
137
+ free(): void;
138
+ }
139
+ /**
140
+ */
141
+ export class WasmBlock {
142
+ static __wrap(ptr: any): any;
143
+ __destroy_into_raw(): number;
144
+ ptr: number;
145
+ free(): void;
146
+ /**
147
+ * @returns {Array<any>}
148
+ */
149
+ get transactions(): any[];
150
+ /**
151
+ * @param {bigint} id
152
+ */
153
+ set id(arg: bigint);
154
+ /**
155
+ * @returns {bigint}
156
+ */
157
+ get id(): bigint;
158
+ /**
159
+ * @param {bigint} timestamp
160
+ */
161
+ set timestamp(arg: bigint);
162
+ /**
163
+ * @returns {bigint}
164
+ */
165
+ get timestamp(): bigint;
166
+ /**
167
+ * @param {string} hash
168
+ */
169
+ set previous_block_hash(arg: string);
170
+ /**
171
+ * @returns {string}
172
+ */
173
+ get previous_block_hash(): string;
174
+ /**
175
+ * @param {string} key
176
+ */
177
+ set creator(arg: string);
178
+ /**
179
+ * @returns {string}
180
+ */
181
+ get creator(): string;
182
+ /**
183
+ * @param {number} t
184
+ */
185
+ set type(arg: number);
186
+ /**
187
+ * @returns {number}
188
+ */
189
+ get type(): number;
190
+ /**
191
+ * @returns {string}
192
+ */
193
+ get hash(): string;
194
+ /**
195
+ * @returns {Uint8Array}
196
+ */
197
+ serialize(): Uint8Array;
198
+ }
199
+ /**
200
+ */
201
+ export class WasmPeer {
202
+ static __wrap(ptr: any): any;
203
+ /**
204
+ * @param {bigint} peer_index
205
+ */
206
+ constructor(peer_index: bigint);
207
+ __destroy_into_raw(): number;
208
+ ptr: number;
209
+ free(): void;
210
+ /**
211
+ * @returns {string}
212
+ */
213
+ get public_key(): string;
214
+ /**
215
+ * @returns {Array<any>}
216
+ */
217
+ get key_list(): any[];
218
+ /**
219
+ * @returns {bigint}
220
+ */
221
+ get peer_index(): bigint;
222
+ /**
223
+ * @returns {string}
224
+ */
225
+ get sync_type(): string;
226
+ /**
227
+ * @param {any} services
228
+ */
229
+ set services(arg: any);
230
+ /**
231
+ * @returns {any}
232
+ */
233
+ get services(): any;
234
+ /**
235
+ * @param {string} service
236
+ * @returns {boolean}
237
+ */
238
+ has_service(service: string): boolean;
239
+ /**
240
+ * @returns {boolean}
241
+ */
242
+ is_main_peer(): boolean;
243
+ }
244
+ /**
245
+ */
246
+ export class WasmSlip {
247
+ static __wrap(ptr: any): any;
248
+ __destroy_into_raw(): number;
249
+ ptr: number;
250
+ free(): void;
251
+ /**
252
+ * @param {bigint} amount
253
+ */
254
+ set amount(arg: bigint);
255
+ /**
256
+ * @returns {bigint}
257
+ */
258
+ get amount(): bigint;
259
+ /**
260
+ * @param {number} slip_type
261
+ */
262
+ set slip_type(arg: number);
263
+ /**
264
+ * @returns {number}
265
+ */
266
+ get slip_type(): number;
267
+ /**
268
+ * @param {string} key
269
+ */
270
+ set public_key(arg: string);
271
+ /**
272
+ * @returns {string}
273
+ */
274
+ get public_key(): string;
275
+ /**
276
+ * @param {number} index
277
+ */
278
+ set slip_index(arg: number);
279
+ /**
280
+ * @returns {number}
281
+ */
282
+ get slip_index(): number;
283
+ /**
284
+ * @param {bigint} id
285
+ */
286
+ set block_id(arg: bigint);
287
+ /**
288
+ * @returns {bigint}
289
+ */
290
+ get block_id(): bigint;
291
+ /**
292
+ * @param {bigint} ordinal
293
+ */
294
+ set tx_ordinal(arg: bigint);
295
+ /**
296
+ * @returns {bigint}
297
+ */
298
+ get tx_ordinal(): bigint;
299
+ /**
300
+ * @param {string} key
301
+ */
302
+ set utxo_key(arg: string);
303
+ /**
304
+ * @returns {string}
305
+ */
306
+ get utxo_key(): string;
307
+ }
308
+ /**
309
+ */
310
+ export class WasmTransaction {
311
+ static __wrap(ptr: any): any;
312
+ /**
313
+ * @param {Uint8Array} buffer
314
+ * @returns {WasmTransaction}
315
+ */
316
+ static deserialize(buffer: Uint8Array): WasmTransaction;
317
+ __destroy_into_raw(): number;
318
+ ptr: number;
319
+ free(): void;
320
+ /**
321
+ * @param {string} signature
322
+ */
323
+ set signature(arg: string);
324
+ /**
325
+ * @returns {string}
326
+ */
327
+ get signature(): string;
328
+ /**
329
+ * @param {WasmSlip} slip
330
+ */
331
+ add_to_slip(slip: WasmSlip): void;
332
+ /**
333
+ * @param {WasmSlip} slip
334
+ */
335
+ add_from_slip(slip: WasmSlip): void;
336
+ /**
337
+ * @param {number} r
338
+ */
339
+ set txs_replacements(arg: number);
340
+ /**
341
+ * @returns {number}
342
+ */
343
+ get txs_replacements(): number;
344
+ /**
345
+ * @returns {Array<any>}
346
+ */
347
+ get to(): any[];
348
+ /**
349
+ * @returns {Array<any>}
350
+ */
351
+ get from(): any[];
352
+ /**
353
+ * @param {string} key
354
+ * @returns {boolean}
355
+ */
356
+ is_from(key: string): boolean;
357
+ /**
358
+ * @param {string} key
359
+ * @returns {boolean}
360
+ */
361
+ is_to(key: string): boolean;
362
+ /**
363
+ * @param {Uint8Array} buffer
364
+ */
365
+ set data(arg: Uint8Array);
366
+ /**
367
+ * @returns {Uint8Array}
368
+ */
369
+ get data(): Uint8Array;
370
+ /**
371
+ * @param {bigint} timestamp
372
+ */
373
+ set timestamp(arg: bigint);
374
+ /**
375
+ * @returns {bigint}
376
+ */
377
+ get timestamp(): bigint;
378
+ /**
379
+ * @returns {Promise<void>}
380
+ */
381
+ sign(): Promise<void>;
382
+ /**
383
+ * @returns {Promise<void>}
384
+ */
385
+ sign_and_encrypt(): Promise<void>;
386
+ /**
387
+ * @param {number} t
388
+ */
389
+ set type(arg: number);
390
+ /**
391
+ * @returns {number}
392
+ */
393
+ get type(): number;
394
+ /**
395
+ * @returns {bigint}
396
+ */
397
+ get total_fees(): bigint;
398
+ /**
399
+ * @returns {Uint8Array}
400
+ */
401
+ serialize(): Uint8Array;
402
+ }
403
+ export default init;
404
+ export function initSync(module: any): any;
405
+ declare function init(input: any): Promise<any>;
406
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../pkg/web/index.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export class MsgHandler {
2
+ static send_message(peer_index: any, buffer: any): any;
3
+ static send_message_to_all(buffer: any, exceptions: any): any;
4
+ static connect_to_peer(peer_data: any): any;
5
+ static write_value(key: any, value: any): any;
6
+ static read_value(key: any): any;
7
+ static load_block_file_list(): any;
8
+ static is_existing_file(key: any): any;
9
+ static remove_value(key: any): any;
10
+ static disconnect_from_peer(peer_index: any): any;
11
+ static fetch_block_from_peer(hash: any, peer_index: any, url: any): any;
12
+ static process_api_call(buffer: any, msgIndex: any, peerIndex: any): any;
13
+ static process_api_success(buffer: any, msgIndex: any, peerIndex: any): any;
14
+ static process_api_error(buffer: any, msgIndex: any, peerIndex: any): any;
15
+ static send_interface_event(event: any, peerIndex: any): any;
16
+ }
17
+ //# sourceMappingURL=msg_handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"msg_handler.d.ts","sourceRoot":"","sources":["../../../../../../../pkg/web/snippets/saito-wasm-10de7e358f6ef4db/js/msg_handler.js"],"names":[],"mappings":"AAAA;IACI,uDAGC;IAED,8DAGC;IAED,4CAEC;IAED,8CAEC;IAED,iCAEC;IAED,mCAEC;IAED,uCAEC;IAED,mCAEC;IAED,kDAEC;IAED,wEAEC;IAED,yEAEC;IAGD,4EAEC;IAED,0EAEC;IAED,6DAEC;CACJ"}
@@ -0,0 +1,14 @@
1
+ declare const _exports: {
2
+ devtool: string;
3
+ optimization: {
4
+ minimize: boolean;
5
+ };
6
+ experiments: {
7
+ asyncWebAssembly: boolean;
8
+ topLevelAwait: boolean;
9
+ syncWebAssembly: boolean;
10
+ };
11
+ mode: string;
12
+ }[];
13
+ export = _exports;
14
+ //# sourceMappingURL=webpack.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpack.config.d.ts","sourceRoot":"","sources":["../../webpack.config.js"],"names":[],"mappings":""}
package/index.node.ts ADDED
@@ -0,0 +1,5 @@
1
+ export default import("./pkg/node").then(s => {
2
+ return s;
3
+ }).catch(error => {
4
+ console.error(error);
5
+ });
package/index.web.ts ADDED
@@ -0,0 +1,8 @@
1
+ export default import("./pkg/web")
2
+ .then(saito => {
3
+ // @ts-ignore
4
+ return saito.default(undefined).then(() => saito);
5
+ })
6
+ .catch(error => {
7
+ console.error(error);
8
+ })
@@ -0,0 +1,60 @@
1
+ export class MsgHandler {
2
+ static send_message(peer_index, buffer) {
3
+ console.debug("MsgHandler::send_message : " + peer_index);
4
+ return global.shared_methods.send_message(peer_index, buffer);
5
+ }
6
+
7
+ static send_message_to_all(buffer, exceptions) {
8
+ console.debug("MsgHandler::send_message_to_all");
9
+ return global.shared_methods.send_message_to_all(buffer, exceptions);
10
+ }
11
+
12
+ static connect_to_peer(peer_data) {
13
+ return global.shared_methods.connect_to_peer(peer_data);
14
+ }
15
+
16
+ static write_value(key, value) {
17
+ return global.shared_methods.write_value(key, value);
18
+ }
19
+
20
+ static read_value(key) {
21
+ return global.shared_methods.read_value(key);
22
+ }
23
+
24
+ static load_block_file_list() {
25
+ return global.shared_methods.load_block_file_list();
26
+ }
27
+
28
+ static is_existing_file(key) {
29
+ return global.shared_methods.is_existing_file(key);
30
+ }
31
+
32
+ static remove_value(key) {
33
+ return global.shared_methods.remove_value(key);
34
+ }
35
+
36
+ static disconnect_from_peer(peer_index) {
37
+ return global.shared_methods.disconnect_from_peer(peer_index);
38
+ }
39
+
40
+ static fetch_block_from_peer(hash, peer_index, url) {
41
+ return global.shared_methods.fetch_block_from_peer(hash, peer_index, url);
42
+ }
43
+
44
+ static process_api_call(buffer, msgIndex, peerIndex) {
45
+ return global.shared_methods.process_api_call(buffer, msgIndex, peerIndex);
46
+ }
47
+
48
+
49
+ static process_api_success(buffer, msgIndex, peerIndex) {
50
+ return global.shared_methods.process_api_success(buffer, msgIndex, peerIndex);
51
+ }
52
+
53
+ static process_api_error(buffer, msgIndex, peerIndex) {
54
+ return global.shared_methods.process_api_error(buffer, msgIndex, peerIndex);
55
+ }
56
+
57
+ static send_interface_event(event, peerIndex) {
58
+ return global.shared_methods.send_interface_event(event, peerIndex);
59
+ }
60
+ }
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "saito-wasm",
3
+ "version": "0.0.2",
4
+ "description": "js wrappings around saito-core using wasm",
5
+ "scripts": {
6
+ "test": "./node_modules/.bin/jest",
7
+ "start": "ts-node-dev index.ts",
8
+ "build": "webpack",
9
+ "serve": "webpack-dev-server"
10
+ },
11
+ "author": "",
12
+ "license": "ISC",
13
+ "devDependencies": {
14
+ "@babel/preset-env": "^7.20.2",
15
+ "@babel/preset-typescript": "^7.18.6",
16
+ "@types/jest": "^29.2.5",
17
+ "@wasm-tool/wasm-pack-plugin": "1.6.0",
18
+ "babel-loader": "^9.1.2",
19
+ "babel-regenerator-runtime": "^6.5.0",
20
+ "copy-webpack-plugin": "^11.0.0",
21
+ "file-loader": "^6.2.0",
22
+ "html-webpack-plugin": "^5.5.0",
23
+ "jest": "^29.3.1",
24
+ "path-browserify": "^1.0.1",
25
+ "source-map-loader": "^4.0.1",
26
+ "text-encoding": "^0.7.0",
27
+ "ts-loader": "^9.4.2",
28
+ "ts-node-dev": "^2.0.0",
29
+ "typescript": "^4.9.4",
30
+ "webpack": "^5.75.0",
31
+ "webpack-cli": "^5.0.1",
32
+ "webpack-dev-server": "^4.11.1",
33
+ "webpack-merge": "^5.8.0",
34
+ "node-fetch": "^3.3.0"
35
+ },
36
+ "dependencies": {
37
+ "node-fetch": "^3.3.0"
38
+ }
39
+ }
package/src/lib.rs ADDED
@@ -0,0 +1,18 @@
1
+ pub mod saitowasm;
2
+ mod wasm_block;
3
+ mod wasm_configuration;
4
+ mod wasm_io_handler;
5
+ mod wasm_peer;
6
+ mod wasm_slip;
7
+ mod wasm_task_runner;
8
+ mod wasm_time_keeper;
9
+ mod wasm_transaction;
10
+
11
+ #[cfg(test)]
12
+ mod tests {
13
+ #[test]
14
+ fn it_works() {
15
+ let result = 2 + 2;
16
+ assert_eq!(result, 4);
17
+ }
18
+ }