saito-wasm 0.0.5 → 0.0.7
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/Cargo.toml +2 -1
- package/dist/browser/index.d.ts +134 -49
- package/dist/browser/index.js +3 -3
- package/dist/server/{45d1c98d219cf5b193ae.module.wasm → 6bb7baa3750ecc83eaac.module.wasm} +0 -0
- package/dist/server/index.d.ts +71 -6
- package/dist/server/pkg_node_index_js.index.js +4 -4
- package/dist/types/index.node.d.ts +3 -1
- package/dist/types/index.node.d.ts.map +1 -1
- package/dist/types/js/msg_handler.d.ts +2 -0
- package/dist/types/js/msg_handler.d.ts.map +1 -1
- package/dist/types/pkg/node/index_bg.d.ts +121 -21
- package/dist/types/pkg/node/index_bg.d.ts.map +1 -1
- package/dist/types/pkg/node/snippets/saito-wasm-806a53ec0c43fc4b/js/msg_handler.d.ts +2 -0
- package/dist/types/pkg/node/snippets/saito-wasm-806a53ec0c43fc4b/js/msg_handler.d.ts.map +1 -1
- package/dist/types/pkg/web/index.d.ts +89 -6
- package/dist/types/pkg/web/index.d.ts.map +1 -1
- package/dist/types/pkg/web/snippets/saito-wasm-806a53ec0c43fc4b/js/msg_handler.d.ts +2 -0
- package/dist/types/pkg/web/snippets/saito-wasm-806a53ec0c43fc4b/js/msg_handler.d.ts.map +1 -1
- package/js/msg_handler.js +8 -0
- package/package.json +1 -1
- package/src/lib.rs +1 -0
- package/src/saitowasm.rs +24 -22
- package/src/wasm_block.rs +51 -2
- package/src/wasm_blockchain.rs +18 -0
- package/src/wasm_configuration.rs +5 -5
- package/src/wasm_io_handler.rs +48 -5
- package/src/wasm_peer.rs +16 -8
- package/src/wasm_peer_service.rs +66 -0
- package/src/wasm_wallet.rs +4 -2
package/Cargo.toml
CHANGED
|
@@ -9,9 +9,10 @@ crate-type = ["cdylib"]
|
|
|
9
9
|
|
|
10
10
|
[dependencies]
|
|
11
11
|
saito-core = { path = "../saito-core" }
|
|
12
|
-
wasm-bindgen = { version = "0.2.86"
|
|
12
|
+
wasm-bindgen = { version = "0.2.86" }
|
|
13
13
|
wasm-bindgen-futures = "0.4.36"
|
|
14
14
|
serde = { version = "1.0.163", features = ["derive"] }
|
|
15
|
+
serde-wasm-bindgen = "0.5.0"
|
|
15
16
|
web-sys = "0.3.63"
|
|
16
17
|
async-trait = "0.1.68"
|
|
17
18
|
hex = "0.4.3"
|
package/dist/browser/index.d.ts
CHANGED
|
@@ -19,6 +19,11 @@ export function create_transaction(public_key: string, amount: bigint, fee: bigi
|
|
|
19
19
|
*/
|
|
20
20
|
export function get_latest_block_hash(): Promise<string>;
|
|
21
21
|
/**
|
|
22
|
+
* @param {string} block_hash
|
|
23
|
+
* @returns {Promise<WasmBlock>}
|
|
24
|
+
*/
|
|
25
|
+
export function get_block(block_hash: string): Promise<WasmBlock>;
|
|
26
|
+
/**
|
|
22
27
|
* @param {bigint} index
|
|
23
28
|
* @param {any} peer_config
|
|
24
29
|
* @returns {Promise<void>}
|
|
@@ -110,12 +115,6 @@ export function send_api_success(buffer: Uint8Array, msg_index: number, peer_ind
|
|
|
110
115
|
*/
|
|
111
116
|
export function send_api_error(buffer: Uint8Array, msg_index: number, peer_index: bigint): Promise<void>;
|
|
112
117
|
/**
|
|
113
|
-
* @param {bigint} peer_index
|
|
114
|
-
* @param {any} services
|
|
115
|
-
* @returns {Promise<void>}
|
|
116
|
-
*/
|
|
117
|
-
export function propagate_services(peer_index: bigint, services: any): Promise<void>;
|
|
118
|
-
/**
|
|
119
118
|
* @returns {Promise<WasmWallet>}
|
|
120
119
|
*/
|
|
121
120
|
export function get_wallet(): Promise<WasmWallet>;
|
|
@@ -152,15 +151,39 @@ export class WasmBlock {
|
|
|
152
151
|
*/
|
|
153
152
|
serialize(): Uint8Array;
|
|
154
153
|
/**
|
|
154
|
+
* @param {Uint8Array} buffer
|
|
155
|
+
* @returns {any}
|
|
156
|
+
*/
|
|
157
|
+
deserialize(buffer: Uint8Array): any;
|
|
158
|
+
/**
|
|
159
|
+
* @param {Array<any>} keylist
|
|
160
|
+
* @returns {boolean}
|
|
161
|
+
*/
|
|
162
|
+
has_keylist_txs(keylist: Array<any>): boolean;
|
|
163
|
+
/**
|
|
164
|
+
* @param {Array<any>} keylist
|
|
165
|
+
* @returns {WasmBlock}
|
|
166
|
+
*/
|
|
167
|
+
generate_lite_block(keylist: Array<any>): WasmBlock;
|
|
168
|
+
/**
|
|
155
169
|
*/
|
|
156
170
|
creator: string;
|
|
157
171
|
/**
|
|
172
|
+
*/
|
|
173
|
+
readonly file_name: string;
|
|
174
|
+
/**
|
|
175
|
+
*/
|
|
176
|
+
readonly force_loaded: boolean;
|
|
177
|
+
/**
|
|
158
178
|
*/
|
|
159
179
|
readonly hash: string;
|
|
160
180
|
/**
|
|
161
181
|
*/
|
|
162
182
|
id: bigint;
|
|
163
183
|
/**
|
|
184
|
+
*/
|
|
185
|
+
readonly in_longest_chain: boolean;
|
|
186
|
+
/**
|
|
164
187
|
*/
|
|
165
188
|
previous_block_hash: string;
|
|
166
189
|
/**
|
|
@@ -181,6 +204,19 @@ export class WasmBlockchain {
|
|
|
181
204
|
* @returns {Promise<void>}
|
|
182
205
|
*/
|
|
183
206
|
reset(): Promise<void>;
|
|
207
|
+
/**
|
|
208
|
+
* @returns {Promise<bigint>}
|
|
209
|
+
*/
|
|
210
|
+
get_last_block_id(): Promise<bigint>;
|
|
211
|
+
/**
|
|
212
|
+
* @returns {Promise<bigint>}
|
|
213
|
+
*/
|
|
214
|
+
get_last_timestamp(): Promise<bigint>;
|
|
215
|
+
/**
|
|
216
|
+
* @param {bigint} id
|
|
217
|
+
* @returns {Promise<string>}
|
|
218
|
+
*/
|
|
219
|
+
get_longest_chain_hash_at(id: bigint): Promise<string>;
|
|
184
220
|
}
|
|
185
221
|
/**
|
|
186
222
|
*/
|
|
@@ -217,6 +253,35 @@ export class WasmPeer {
|
|
|
217
253
|
}
|
|
218
254
|
/**
|
|
219
255
|
*/
|
|
256
|
+
export class WasmPeerService {
|
|
257
|
+
free(): void;
|
|
258
|
+
/**
|
|
259
|
+
*/
|
|
260
|
+
constructor();
|
|
261
|
+
/**
|
|
262
|
+
*/
|
|
263
|
+
domain: string;
|
|
264
|
+
/**
|
|
265
|
+
*/
|
|
266
|
+
name: string;
|
|
267
|
+
/**
|
|
268
|
+
*/
|
|
269
|
+
service: string;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
*/
|
|
273
|
+
export class WasmPeerServiceList {
|
|
274
|
+
free(): void;
|
|
275
|
+
/**
|
|
276
|
+
* @param {WasmPeerService} service
|
|
277
|
+
*/
|
|
278
|
+
push(service: WasmPeerService): void;
|
|
279
|
+
/**
|
|
280
|
+
*/
|
|
281
|
+
constructor();
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
*/
|
|
220
285
|
export class WasmSlip {
|
|
221
286
|
free(): void;
|
|
222
287
|
/**
|
|
@@ -359,29 +424,38 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl
|
|
|
359
424
|
|
|
360
425
|
export interface InitOutput {
|
|
361
426
|
readonly memory: WebAssembly.Memory;
|
|
362
|
-
readonly
|
|
363
|
-
readonly
|
|
364
|
-
readonly
|
|
365
|
-
readonly
|
|
366
|
-
readonly
|
|
367
|
-
readonly
|
|
368
|
-
readonly
|
|
369
|
-
readonly
|
|
370
|
-
readonly
|
|
371
|
-
readonly
|
|
372
|
-
readonly
|
|
373
|
-
readonly
|
|
374
|
-
readonly
|
|
375
|
-
readonly
|
|
376
|
-
readonly
|
|
377
|
-
readonly
|
|
378
|
-
readonly
|
|
379
|
-
readonly
|
|
380
|
-
readonly
|
|
381
|
-
readonly
|
|
382
|
-
readonly
|
|
383
|
-
readonly
|
|
384
|
-
readonly
|
|
427
|
+
readonly __wbg_wasmblock_free: (a: number) => void;
|
|
428
|
+
readonly wasmblock_new: () => number;
|
|
429
|
+
readonly wasmblock_get_transactions: (a: number) => number;
|
|
430
|
+
readonly wasmblock_get_id: (a: number) => number;
|
|
431
|
+
readonly wasmblock_set_id: (a: number, b: number) => void;
|
|
432
|
+
readonly wasmblock_get_timestamp: (a: number) => number;
|
|
433
|
+
readonly wasmblock_set_timestamp: (a: number, b: number) => void;
|
|
434
|
+
readonly wasmblock_get_previous_block_hash: (a: number) => number;
|
|
435
|
+
readonly wasmblock_set_previous_block_hash: (a: number, b: number) => void;
|
|
436
|
+
readonly wasmblock_set_creator: (a: number, b: number) => void;
|
|
437
|
+
readonly wasmblock_get_creator: (a: number) => number;
|
|
438
|
+
readonly wasmblock_get_type: (a: number) => number;
|
|
439
|
+
readonly wasmblock_set_type: (a: number, b: number) => void;
|
|
440
|
+
readonly wasmblock_get_hash: (a: number) => number;
|
|
441
|
+
readonly wasmblock_in_longest_chain: (a: number) => number;
|
|
442
|
+
readonly wasmblock_force_loaded: (a: number) => number;
|
|
443
|
+
readonly wasmblock_get_file_name: (a: number) => number;
|
|
444
|
+
readonly wasmblock_serialize: (a: number) => number;
|
|
445
|
+
readonly wasmblock_deserialize: (a: number, b: number, c: number) => void;
|
|
446
|
+
readonly wasmblock_has_keylist_txs: (a: number, b: number) => number;
|
|
447
|
+
readonly wasmblock_generate_lite_block: (a: number, b: number) => number;
|
|
448
|
+
readonly __wbg_wasmpeerservicelist_free: (a: number) => void;
|
|
449
|
+
readonly __wbg_wasmpeerservice_free: (a: number) => void;
|
|
450
|
+
readonly wasmpeerservice_new: () => number;
|
|
451
|
+
readonly wasmpeerservice_set_service: (a: number, b: number) => void;
|
|
452
|
+
readonly wasmpeerservice_get_service: (a: number) => number;
|
|
453
|
+
readonly wasmpeerservice_set_name: (a: number, b: number) => void;
|
|
454
|
+
readonly wasmpeerservice_get_name: (a: number) => number;
|
|
455
|
+
readonly wasmpeerservice_set_domain: (a: number, b: number) => void;
|
|
456
|
+
readonly wasmpeerservice_get_domain: (a: number) => number;
|
|
457
|
+
readonly wasmpeerservicelist_push: (a: number, b: number) => void;
|
|
458
|
+
readonly wasmpeerservicelist_new: () => number;
|
|
385
459
|
readonly __wbg_wasmpeer_free: (a: number) => void;
|
|
386
460
|
readonly wasmpeer_get_public_key: (a: number) => number;
|
|
387
461
|
readonly wasmpeer_get_key_list: (a: number) => number;
|
|
@@ -408,12 +482,11 @@ export interface InitOutput {
|
|
|
408
482
|
readonly wasmslip_set_utxo_key: (a: number, b: number) => void;
|
|
409
483
|
readonly wasmslip_utxo_key: (a: number) => number;
|
|
410
484
|
readonly wasmslip_new: () => number;
|
|
411
|
-
readonly __wbg_wasmblockchain_free: (a: number) => void;
|
|
412
|
-
readonly wasmblockchain_reset: (a: number) => number;
|
|
413
485
|
readonly __wbg_saitowasm_free: (a: number) => void;
|
|
414
486
|
readonly initialize: (a: number, b: number) => number;
|
|
415
487
|
readonly create_transaction: (a: number, b: number, c: number, d: number) => number;
|
|
416
488
|
readonly get_latest_block_hash: () => number;
|
|
489
|
+
readonly get_block: (a: number) => number;
|
|
417
490
|
readonly process_new_peer: (a: number, b: number) => number;
|
|
418
491
|
readonly process_peer_disconnection: (a: number) => number;
|
|
419
492
|
readonly process_msg_buffer_from_peer: (a: number, b: number) => number;
|
|
@@ -430,27 +503,39 @@ export interface InitOutput {
|
|
|
430
503
|
readonly send_api_call: (a: number, b: number, c: number) => number;
|
|
431
504
|
readonly send_api_success: (a: number, b: number, c: number) => number;
|
|
432
505
|
readonly send_api_error: (a: number, b: number, c: number) => number;
|
|
433
|
-
readonly propagate_services: (a: number, b: number) => number;
|
|
434
506
|
readonly get_wallet: () => number;
|
|
435
507
|
readonly get_blockchain: () => number;
|
|
436
508
|
readonly test_buffer_in: (a: number) => void;
|
|
437
509
|
readonly test_buffer_out: () => number;
|
|
438
510
|
readonly test_buffer_out_async: () => number;
|
|
439
|
-
readonly
|
|
440
|
-
readonly
|
|
441
|
-
readonly
|
|
442
|
-
readonly
|
|
443
|
-
readonly
|
|
444
|
-
readonly
|
|
445
|
-
readonly
|
|
446
|
-
readonly
|
|
447
|
-
readonly
|
|
448
|
-
readonly
|
|
449
|
-
readonly
|
|
450
|
-
readonly
|
|
451
|
-
readonly
|
|
452
|
-
readonly
|
|
453
|
-
readonly
|
|
511
|
+
readonly __wbg_wasmblockchain_free: (a: number) => void;
|
|
512
|
+
readonly wasmblockchain_reset: (a: number) => number;
|
|
513
|
+
readonly wasmblockchain_get_last_block_id: (a: number) => number;
|
|
514
|
+
readonly wasmblockchain_get_last_timestamp: (a: number) => number;
|
|
515
|
+
readonly wasmblockchain_get_longest_chain_hash_at: (a: number, b: number) => number;
|
|
516
|
+
readonly __wbg_wasmtransaction_free: (a: number) => void;
|
|
517
|
+
readonly wasmtransaction_new: () => number;
|
|
518
|
+
readonly wasmtransaction_signature: (a: number) => number;
|
|
519
|
+
readonly wasmtransaction_set_signature: (a: number, b: number) => void;
|
|
520
|
+
readonly wasmtransaction_add_to_slip: (a: number, b: number) => void;
|
|
521
|
+
readonly wasmtransaction_add_from_slip: (a: number, b: number) => void;
|
|
522
|
+
readonly wasmtransaction_get_txs_replacements: (a: number) => number;
|
|
523
|
+
readonly wasmtransaction_set_txs_replacements: (a: number, b: number) => void;
|
|
524
|
+
readonly wasmtransaction_to: (a: number) => number;
|
|
525
|
+
readonly wasmtransaction_from: (a: number) => number;
|
|
526
|
+
readonly wasmtransaction_is_from: (a: number, b: number) => number;
|
|
527
|
+
readonly wasmtransaction_is_to: (a: number, b: number) => number;
|
|
528
|
+
readonly wasmtransaction_get_data: (a: number) => number;
|
|
529
|
+
readonly wasmtransaction_set_data: (a: number, b: number) => void;
|
|
530
|
+
readonly wasmtransaction_get_timestamp: (a: number) => number;
|
|
531
|
+
readonly wasmtransaction_set_timestamp: (a: number, b: number) => void;
|
|
532
|
+
readonly wasmtransaction_sign: (a: number) => number;
|
|
533
|
+
readonly wasmtransaction_sign_and_encrypt: (a: number) => number;
|
|
534
|
+
readonly wasmtransaction_get_type: (a: number) => number;
|
|
535
|
+
readonly wasmtransaction_set_type: (a: number, b: number) => void;
|
|
536
|
+
readonly wasmtransaction_total_fees: (a: number) => number;
|
|
537
|
+
readonly wasmtransaction_serialize: (a: number) => number;
|
|
538
|
+
readonly wasmtransaction_deserialize: (a: number, b: number) => void;
|
|
454
539
|
readonly __wbg_wasmwallet_free: (a: number) => void;
|
|
455
540
|
readonly wasmwallet_save: (a: number) => number;
|
|
456
541
|
readonly wasmwallet_reset: (a: number) => number;
|
|
@@ -468,11 +553,11 @@ export interface InitOutput {
|
|
|
468
553
|
readonly __wbindgen_malloc: (a: number) => number;
|
|
469
554
|
readonly __wbindgen_realloc: (a: number, b: number, c: number) => number;
|
|
470
555
|
readonly __wbindgen_export_2: WebAssembly.Table;
|
|
471
|
-
readonly
|
|
556
|
+
readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8b4540ae3fe11649: (a: number, b: number, c: number) => void;
|
|
472
557
|
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
|
473
558
|
readonly __wbindgen_exn_store: (a: number) => void;
|
|
474
559
|
readonly __wbindgen_free: (a: number, b: number) => void;
|
|
475
|
-
readonly
|
|
560
|
+
readonly wasm_bindgen__convert__closures__invoke2_mut__h96ff962a60c042de: (a: number, b: number, c: number, d: number) => void;
|
|
476
561
|
}
|
|
477
562
|
|
|
478
563
|
export type SyncInitInput = BufferSource | WebAssembly.Module;
|