@rolly-dev/wasm-signer 1.5.1 → 1.9.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/dist/node/rolly_wasm_signer.d.ts +57 -0
- package/dist/node/rolly_wasm_signer.js +138 -0
- package/dist/node/rolly_wasm_signer_bg.wasm +0 -0
- package/dist/node/rolly_wasm_signer_bg.wasm.d.ts +5 -0
- package/dist/node-inline/rolly_wasm_signer.d.ts +57 -0
- package/dist/node-inline/rolly_wasm_signer.js +139 -1
- package/dist/node-inline/rolly_wasm_signer.mjs +135 -2
- package/dist/node-inline/rolly_wasm_signer_bg.wasm.d.ts +5 -0
- package/dist/web/rolly_wasm_signer.d.ts +62 -0
- package/dist/web/rolly_wasm_signer.js +133 -0
- package/dist/web/rolly_wasm_signer_bg.wasm +0 -0
- package/dist/web/rolly_wasm_signer_bg.wasm.d.ts +5 -0
- package/js/browser.mjs +5 -0
- package/js/index.d.ts +5 -0
- package/js/node-inline.cjs +5 -0
- package/js/node-inline.mjs +5 -0
- package/js/node.cjs +5 -0
- package/js/node.mjs +5 -0
- package/js/react.mjs +10 -0
- package/package.json +1 -1
|
@@ -4,12 +4,17 @@ export const memory: WebAssembly.Memory;
|
|
|
4
4
|
export const amount_split: (a: number, b: bigint) => void;
|
|
5
5
|
export const compute_address_hash: (a: number, b: number, c: number) => void;
|
|
6
6
|
export const compute_multi_dice: (a: number) => bigint;
|
|
7
|
+
export const compute_payout_coinflip: (a: number, b: number, c: number, d: bigint, e: number) => void;
|
|
7
8
|
export const compute_payout_dice: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
8
9
|
export const compute_payout_plinko: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
10
|
+
export const compute_prediction_hash: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
11
|
+
export const compute_roll_coinflip: (a: number, b: number) => number;
|
|
9
12
|
export const compute_roll_dice: (a: number, b: number) => number;
|
|
10
13
|
export const compute_roll_plinko: (a: number, b: number, c: number) => number;
|
|
11
14
|
export const compute_server_seed_hash: (a: number, b: number, c: number) => void;
|
|
15
|
+
export const compute_user_seed_binding: (a: number, b: number, c: bigint, d: number, e: number, f: number, g: number) => void;
|
|
12
16
|
export const derive_session_key: (a: number, b: number, c: number) => void;
|
|
17
|
+
export const generate_user_secret: (a: number) => void;
|
|
13
18
|
export const generate_user_seed: (a: number) => void;
|
|
14
19
|
export const goldilocks_fields_to_hex: (a: number, b: number, c: number) => void;
|
|
15
20
|
export const goldilocks_reduce: (a: bigint) => bigint;
|
|
@@ -26,6 +26,17 @@ export function compute_address_hash(address_hex: string): BigUint64Array;
|
|
|
26
26
|
*/
|
|
27
27
|
export function compute_multi_dice(win_numbers: number): bigint;
|
|
28
28
|
|
|
29
|
+
/**
|
|
30
|
+
* Full coinflip payout computation — pure integer arithmetic, zero floats.
|
|
31
|
+
*
|
|
32
|
+
* `random`: 4 Goldilocks field elements (Poseidon2 output).
|
|
33
|
+
* `bet_atomic`: bet in atomic units (1 USDT = 1_000_000).
|
|
34
|
+
* `prediction`: 0 or 1.
|
|
35
|
+
*
|
|
36
|
+
* Returns `BigUint64Array[4]`: `[win_amount, roll (0|1), is_win (0|1), multiplier×10000]`.
|
|
37
|
+
*/
|
|
38
|
+
export function compute_payout_coinflip(random: BigUint64Array, bet_atomic: bigint, prediction: number): BigUint64Array;
|
|
39
|
+
|
|
29
40
|
/**
|
|
30
41
|
* Full dice payout computation — pure integer arithmetic, zero floats.
|
|
31
42
|
*
|
|
@@ -51,6 +62,26 @@ export function compute_payout_dice(random: BigUint64Array, bet_atomic: bigint,
|
|
|
51
62
|
*/
|
|
52
63
|
export function compute_payout_plinko(random: BigUint64Array, bet_atomic: bigint, sector: number, rows: number, is_extreme: boolean): BigUint64Array;
|
|
53
64
|
|
|
65
|
+
/**
|
|
66
|
+
* Compute prediction hash: `Poseidon2(game_id, p0, p1, p2)` → 4 field elements.
|
|
67
|
+
*
|
|
68
|
+
* Matches `compute_prediction_hash_native` in the circuit (`games/shared.rs`)
|
|
69
|
+
* and the in-circuit `build_prediction_hash`.
|
|
70
|
+
*
|
|
71
|
+
* Semantics of p0–p2 depend on the game:
|
|
72
|
+
* Dice: `(mode, pred_lo, pred_hi)`
|
|
73
|
+
* Plinko: `(sector, rows, is_extreme)`
|
|
74
|
+
* CoinFlip: `(prediction, 0, 0)`
|
|
75
|
+
*/
|
|
76
|
+
export function compute_prediction_hash(game_id: number, p0: number, p1: number, p2: number): BigUint64Array;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Extract coinflip roll (0 or 1) from Poseidon2 random output.
|
|
80
|
+
*
|
|
81
|
+
* `random` must be exactly 4 elements. Returns `random[0] % 2`.
|
|
82
|
+
*/
|
|
83
|
+
export function compute_roll_coinflip(random: BigUint64Array): number;
|
|
84
|
+
|
|
54
85
|
/**
|
|
55
86
|
* Extract dice roll number [0, 1000) from Poseidon2 random output.
|
|
56
87
|
*
|
|
@@ -79,6 +110,19 @@ export function compute_roll_plinko(random: BigUint64Array, rows: number): numbe
|
|
|
79
110
|
*/
|
|
80
111
|
export function compute_server_seed_hash(server_seed: BigUint64Array): BigUint64Array;
|
|
81
112
|
|
|
113
|
+
/**
|
|
114
|
+
* Compute user seed with bet-parameter binding:
|
|
115
|
+
* `Poseidon2(game_id, bet, pred_hash[4], secret[4])` → 4 field elements.
|
|
116
|
+
*
|
|
117
|
+
* Matches the circuit constraint in `slot/fairness.rs`.
|
|
118
|
+
* Prevents the operator from swapping bet parameters after the user commits.
|
|
119
|
+
*
|
|
120
|
+
* `bet` is the full bet amount in atomic units (u64).
|
|
121
|
+
* `pred_hash` must be 4 elements (output of `compute_prediction_hash`).
|
|
122
|
+
* `secret` must be 4 elements (output of `generate_user_secret`).
|
|
123
|
+
*/
|
|
124
|
+
export function compute_user_seed_binding(game_id: number, bet: bigint, pred_hash: BigUint64Array, secret: BigUint64Array): BigUint64Array;
|
|
125
|
+
|
|
82
126
|
/**
|
|
83
127
|
* Derive a session key from 32 bytes of entropy (e.g. MetaMask signature).
|
|
84
128
|
*
|
|
@@ -97,6 +141,19 @@ export function compute_server_seed_hash(server_seed: BigUint64Array): BigUint64
|
|
|
97
141
|
*/
|
|
98
142
|
export function derive_session_key(sig_bytes: Uint8Array): BigUint64Array;
|
|
99
143
|
|
|
144
|
+
/**
|
|
145
|
+
* Generate a cryptographically random user secret — 4 Goldilocks field elements.
|
|
146
|
+
*
|
|
147
|
+
* Each element is reduced mod p for canonical representation (safe for circuit use).
|
|
148
|
+
* Uses `getrandom` (`crypto.getRandomValues` in browser, OS entropy in Node.js).
|
|
149
|
+
*
|
|
150
|
+
* ```js
|
|
151
|
+
* const secret = generate_user_secret();
|
|
152
|
+
* // secret.length === 4, each < GOLDILOCKS_P
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
export function generate_user_secret(): BigUint64Array;
|
|
156
|
+
|
|
100
157
|
/**
|
|
101
158
|
* Generate a random user seed — 10 alphanumeric characters.
|
|
102
159
|
*
|
|
@@ -256,12 +313,17 @@ export interface InitOutput {
|
|
|
256
313
|
readonly amount_split: (a: number, b: bigint) => void;
|
|
257
314
|
readonly compute_address_hash: (a: number, b: number, c: number) => void;
|
|
258
315
|
readonly compute_multi_dice: (a: number) => bigint;
|
|
316
|
+
readonly compute_payout_coinflip: (a: number, b: number, c: number, d: bigint, e: number) => void;
|
|
259
317
|
readonly compute_payout_dice: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
260
318
|
readonly compute_payout_plinko: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
319
|
+
readonly compute_prediction_hash: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
320
|
+
readonly compute_roll_coinflip: (a: number, b: number) => number;
|
|
261
321
|
readonly compute_roll_dice: (a: number, b: number) => number;
|
|
262
322
|
readonly compute_roll_plinko: (a: number, b: number, c: number) => number;
|
|
263
323
|
readonly compute_server_seed_hash: (a: number, b: number, c: number) => void;
|
|
324
|
+
readonly compute_user_seed_binding: (a: number, b: number, c: bigint, d: number, e: number, f: number, g: number) => void;
|
|
264
325
|
readonly derive_session_key: (a: number, b: number, c: number) => void;
|
|
326
|
+
readonly generate_user_secret: (a: number) => void;
|
|
265
327
|
readonly generate_user_seed: (a: number) => void;
|
|
266
328
|
readonly goldilocks_fields_to_hex: (a: number, b: number, c: number) => void;
|
|
267
329
|
readonly goldilocks_reduce: (a: bigint) => bigint;
|
|
@@ -60,6 +60,35 @@ export function compute_multi_dice(win_numbers) {
|
|
|
60
60
|
return BigInt.asUintN(64, ret);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
+
/**
|
|
64
|
+
* Full coinflip payout computation — pure integer arithmetic, zero floats.
|
|
65
|
+
*
|
|
66
|
+
* `random`: 4 Goldilocks field elements (Poseidon2 output).
|
|
67
|
+
* `bet_atomic`: bet in atomic units (1 USDT = 1_000_000).
|
|
68
|
+
* `prediction`: 0 or 1.
|
|
69
|
+
*
|
|
70
|
+
* Returns `BigUint64Array[4]`: `[win_amount, roll (0|1), is_win (0|1), multiplier×10000]`.
|
|
71
|
+
* @param {BigUint64Array} random
|
|
72
|
+
* @param {bigint} bet_atomic
|
|
73
|
+
* @param {number} prediction
|
|
74
|
+
* @returns {BigUint64Array}
|
|
75
|
+
*/
|
|
76
|
+
export function compute_payout_coinflip(random, bet_atomic, prediction) {
|
|
77
|
+
try {
|
|
78
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
79
|
+
const ptr0 = passArray64ToWasm0(random, wasm.__wbindgen_export3);
|
|
80
|
+
const len0 = WASM_VECTOR_LEN;
|
|
81
|
+
wasm.compute_payout_coinflip(retptr, ptr0, len0, bet_atomic, prediction);
|
|
82
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
83
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
84
|
+
var v2 = getArrayU64FromWasm0(r0, r1).slice();
|
|
85
|
+
wasm.__wbindgen_export2(r0, r1 * 8, 8);
|
|
86
|
+
return v2;
|
|
87
|
+
} finally {
|
|
88
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
63
92
|
/**
|
|
64
93
|
* Full dice payout computation — pure integer arithmetic, zero floats.
|
|
65
94
|
*
|
|
@@ -125,6 +154,50 @@ export function compute_payout_plinko(random, bet_atomic, sector, rows, is_extre
|
|
|
125
154
|
}
|
|
126
155
|
}
|
|
127
156
|
|
|
157
|
+
/**
|
|
158
|
+
* Compute prediction hash: `Poseidon2(game_id, p0, p1, p2)` → 4 field elements.
|
|
159
|
+
*
|
|
160
|
+
* Matches `compute_prediction_hash_native` in the circuit (`games/shared.rs`)
|
|
161
|
+
* and the in-circuit `build_prediction_hash`.
|
|
162
|
+
*
|
|
163
|
+
* Semantics of p0–p2 depend on the game:
|
|
164
|
+
* Dice: `(mode, pred_lo, pred_hi)`
|
|
165
|
+
* Plinko: `(sector, rows, is_extreme)`
|
|
166
|
+
* CoinFlip: `(prediction, 0, 0)`
|
|
167
|
+
* @param {number} game_id
|
|
168
|
+
* @param {number} p0
|
|
169
|
+
* @param {number} p1
|
|
170
|
+
* @param {number} p2
|
|
171
|
+
* @returns {BigUint64Array}
|
|
172
|
+
*/
|
|
173
|
+
export function compute_prediction_hash(game_id, p0, p1, p2) {
|
|
174
|
+
try {
|
|
175
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
176
|
+
wasm.compute_prediction_hash(retptr, game_id, p0, p1, p2);
|
|
177
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
178
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
179
|
+
var v1 = getArrayU64FromWasm0(r0, r1).slice();
|
|
180
|
+
wasm.__wbindgen_export2(r0, r1 * 8, 8);
|
|
181
|
+
return v1;
|
|
182
|
+
} finally {
|
|
183
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Extract coinflip roll (0 or 1) from Poseidon2 random output.
|
|
189
|
+
*
|
|
190
|
+
* `random` must be exactly 4 elements. Returns `random[0] % 2`.
|
|
191
|
+
* @param {BigUint64Array} random
|
|
192
|
+
* @returns {number}
|
|
193
|
+
*/
|
|
194
|
+
export function compute_roll_coinflip(random) {
|
|
195
|
+
const ptr0 = passArray64ToWasm0(random, wasm.__wbindgen_export3);
|
|
196
|
+
const len0 = WASM_VECTOR_LEN;
|
|
197
|
+
const ret = wasm.compute_roll_coinflip(ptr0, len0);
|
|
198
|
+
return ret >>> 0;
|
|
199
|
+
}
|
|
200
|
+
|
|
128
201
|
/**
|
|
129
202
|
* Extract dice roll number [0, 1000) from Poseidon2 random output.
|
|
130
203
|
*
|
|
@@ -184,6 +257,40 @@ export function compute_server_seed_hash(server_seed) {
|
|
|
184
257
|
}
|
|
185
258
|
}
|
|
186
259
|
|
|
260
|
+
/**
|
|
261
|
+
* Compute user seed with bet-parameter binding:
|
|
262
|
+
* `Poseidon2(game_id, bet, pred_hash[4], secret[4])` → 4 field elements.
|
|
263
|
+
*
|
|
264
|
+
* Matches the circuit constraint in `slot/fairness.rs`.
|
|
265
|
+
* Prevents the operator from swapping bet parameters after the user commits.
|
|
266
|
+
*
|
|
267
|
+
* `bet` is the full bet amount in atomic units (u64).
|
|
268
|
+
* `pred_hash` must be 4 elements (output of `compute_prediction_hash`).
|
|
269
|
+
* `secret` must be 4 elements (output of `generate_user_secret`).
|
|
270
|
+
* @param {number} game_id
|
|
271
|
+
* @param {bigint} bet
|
|
272
|
+
* @param {BigUint64Array} pred_hash
|
|
273
|
+
* @param {BigUint64Array} secret
|
|
274
|
+
* @returns {BigUint64Array}
|
|
275
|
+
*/
|
|
276
|
+
export function compute_user_seed_binding(game_id, bet, pred_hash, secret) {
|
|
277
|
+
try {
|
|
278
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
279
|
+
const ptr0 = passArray64ToWasm0(pred_hash, wasm.__wbindgen_export3);
|
|
280
|
+
const len0 = WASM_VECTOR_LEN;
|
|
281
|
+
const ptr1 = passArray64ToWasm0(secret, wasm.__wbindgen_export3);
|
|
282
|
+
const len1 = WASM_VECTOR_LEN;
|
|
283
|
+
wasm.compute_user_seed_binding(retptr, game_id, bet, ptr0, len0, ptr1, len1);
|
|
284
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
285
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
286
|
+
var v3 = getArrayU64FromWasm0(r0, r1).slice();
|
|
287
|
+
wasm.__wbindgen_export2(r0, r1 * 8, 8);
|
|
288
|
+
return v3;
|
|
289
|
+
} finally {
|
|
290
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
187
294
|
/**
|
|
188
295
|
* Derive a session key from 32 bytes of entropy (e.g. MetaMask signature).
|
|
189
296
|
*
|
|
@@ -218,6 +325,32 @@ export function derive_session_key(sig_bytes) {
|
|
|
218
325
|
}
|
|
219
326
|
}
|
|
220
327
|
|
|
328
|
+
/**
|
|
329
|
+
* Generate a cryptographically random user secret — 4 Goldilocks field elements.
|
|
330
|
+
*
|
|
331
|
+
* Each element is reduced mod p for canonical representation (safe for circuit use).
|
|
332
|
+
* Uses `getrandom` (`crypto.getRandomValues` in browser, OS entropy in Node.js).
|
|
333
|
+
*
|
|
334
|
+
* ```js
|
|
335
|
+
* const secret = generate_user_secret();
|
|
336
|
+
* // secret.length === 4, each < GOLDILOCKS_P
|
|
337
|
+
* ```
|
|
338
|
+
* @returns {BigUint64Array}
|
|
339
|
+
*/
|
|
340
|
+
export function generate_user_secret() {
|
|
341
|
+
try {
|
|
342
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
343
|
+
wasm.generate_user_secret(retptr);
|
|
344
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
345
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
346
|
+
var v1 = getArrayU64FromWasm0(r0, r1).slice();
|
|
347
|
+
wasm.__wbindgen_export2(r0, r1 * 8, 8);
|
|
348
|
+
return v1;
|
|
349
|
+
} finally {
|
|
350
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
|
|
221
354
|
/**
|
|
222
355
|
* Generate a random user seed — 10 alphanumeric characters.
|
|
223
356
|
*
|
|
Binary file
|
|
@@ -4,12 +4,17 @@ export const memory: WebAssembly.Memory;
|
|
|
4
4
|
export const amount_split: (a: number, b: bigint) => void;
|
|
5
5
|
export const compute_address_hash: (a: number, b: number, c: number) => void;
|
|
6
6
|
export const compute_multi_dice: (a: number) => bigint;
|
|
7
|
+
export const compute_payout_coinflip: (a: number, b: number, c: number, d: bigint, e: number) => void;
|
|
7
8
|
export const compute_payout_dice: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
8
9
|
export const compute_payout_plinko: (a: number, b: number, c: number, d: bigint, e: number, f: number, g: number) => void;
|
|
10
|
+
export const compute_prediction_hash: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
11
|
+
export const compute_roll_coinflip: (a: number, b: number) => number;
|
|
9
12
|
export const compute_roll_dice: (a: number, b: number) => number;
|
|
10
13
|
export const compute_roll_plinko: (a: number, b: number, c: number) => number;
|
|
11
14
|
export const compute_server_seed_hash: (a: number, b: number, c: number) => void;
|
|
15
|
+
export const compute_user_seed_binding: (a: number, b: number, c: bigint, d: number, e: number, f: number, g: number) => void;
|
|
12
16
|
export const derive_session_key: (a: number, b: number, c: number) => void;
|
|
17
|
+
export const generate_user_secret: (a: number) => void;
|
|
13
18
|
export const generate_user_seed: (a: number) => void;
|
|
14
19
|
export const goldilocks_fields_to_hex: (a: number, b: number, c: number) => void;
|
|
15
20
|
export const goldilocks_reduce: (a: bigint) => bigint;
|
package/js/browser.mjs
CHANGED
|
@@ -4,12 +4,17 @@ export {
|
|
|
4
4
|
amount_split,
|
|
5
5
|
compute_address_hash,
|
|
6
6
|
compute_multi_dice,
|
|
7
|
+
compute_payout_coinflip,
|
|
7
8
|
compute_payout_dice,
|
|
8
9
|
compute_payout_plinko,
|
|
10
|
+
compute_prediction_hash,
|
|
11
|
+
compute_roll_coinflip,
|
|
9
12
|
compute_roll_dice,
|
|
10
13
|
compute_roll_plinko,
|
|
11
14
|
compute_server_seed_hash,
|
|
15
|
+
compute_user_seed_binding,
|
|
12
16
|
derive_session_key,
|
|
17
|
+
generate_user_secret,
|
|
13
18
|
generate_user_seed,
|
|
14
19
|
goldilocks_fields_to_hex,
|
|
15
20
|
goldilocks_modulus,
|
package/js/index.d.ts
CHANGED
|
@@ -2,12 +2,17 @@ export {
|
|
|
2
2
|
amount_split,
|
|
3
3
|
compute_address_hash,
|
|
4
4
|
compute_multi_dice,
|
|
5
|
+
compute_payout_coinflip,
|
|
5
6
|
compute_payout_dice,
|
|
6
7
|
compute_payout_plinko,
|
|
8
|
+
compute_prediction_hash,
|
|
9
|
+
compute_roll_coinflip,
|
|
7
10
|
compute_roll_dice,
|
|
8
11
|
compute_roll_plinko,
|
|
9
12
|
compute_server_seed_hash,
|
|
13
|
+
compute_user_seed_binding,
|
|
10
14
|
derive_session_key,
|
|
15
|
+
generate_user_secret,
|
|
11
16
|
generate_user_seed,
|
|
12
17
|
goldilocks_fields_to_hex,
|
|
13
18
|
goldilocks_modulus,
|
package/js/node-inline.cjs
CHANGED
|
@@ -6,12 +6,17 @@ module.exports = {
|
|
|
6
6
|
amount_split: wasm.amount_split,
|
|
7
7
|
compute_address_hash: wasm.compute_address_hash,
|
|
8
8
|
compute_multi_dice: wasm.compute_multi_dice,
|
|
9
|
+
compute_payout_coinflip: wasm.compute_payout_coinflip,
|
|
9
10
|
compute_payout_dice: wasm.compute_payout_dice,
|
|
10
11
|
compute_payout_plinko: wasm.compute_payout_plinko,
|
|
12
|
+
compute_prediction_hash: wasm.compute_prediction_hash,
|
|
13
|
+
compute_roll_coinflip: wasm.compute_roll_coinflip,
|
|
11
14
|
compute_roll_dice: wasm.compute_roll_dice,
|
|
12
15
|
compute_roll_plinko: wasm.compute_roll_plinko,
|
|
13
16
|
compute_server_seed_hash: wasm.compute_server_seed_hash,
|
|
17
|
+
compute_user_seed_binding: wasm.compute_user_seed_binding,
|
|
14
18
|
derive_session_key: wasm.derive_session_key,
|
|
19
|
+
generate_user_secret: wasm.generate_user_secret,
|
|
15
20
|
generate_user_seed: wasm.generate_user_seed,
|
|
16
21
|
goldilocks_fields_to_hex: wasm.goldilocks_fields_to_hex,
|
|
17
22
|
goldilocks_modulus: wasm.goldilocks_modulus,
|
package/js/node-inline.mjs
CHANGED
|
@@ -2,12 +2,17 @@ export {
|
|
|
2
2
|
amount_split,
|
|
3
3
|
compute_address_hash,
|
|
4
4
|
compute_multi_dice,
|
|
5
|
+
compute_payout_coinflip,
|
|
5
6
|
compute_payout_dice,
|
|
6
7
|
compute_payout_plinko,
|
|
8
|
+
compute_prediction_hash,
|
|
9
|
+
compute_roll_coinflip,
|
|
7
10
|
compute_roll_dice,
|
|
8
11
|
compute_roll_plinko,
|
|
9
12
|
compute_server_seed_hash,
|
|
13
|
+
compute_user_seed_binding,
|
|
10
14
|
derive_session_key,
|
|
15
|
+
generate_user_secret,
|
|
11
16
|
generate_user_seed,
|
|
12
17
|
goldilocks_fields_to_hex,
|
|
13
18
|
goldilocks_modulus,
|
package/js/node.cjs
CHANGED
|
@@ -6,12 +6,17 @@ module.exports = {
|
|
|
6
6
|
amount_split: wasm.amount_split,
|
|
7
7
|
compute_address_hash: wasm.compute_address_hash,
|
|
8
8
|
compute_multi_dice: wasm.compute_multi_dice,
|
|
9
|
+
compute_payout_coinflip: wasm.compute_payout_coinflip,
|
|
9
10
|
compute_payout_dice: wasm.compute_payout_dice,
|
|
10
11
|
compute_payout_plinko: wasm.compute_payout_plinko,
|
|
12
|
+
compute_prediction_hash: wasm.compute_prediction_hash,
|
|
13
|
+
compute_roll_coinflip: wasm.compute_roll_coinflip,
|
|
11
14
|
compute_roll_dice: wasm.compute_roll_dice,
|
|
12
15
|
compute_roll_plinko: wasm.compute_roll_plinko,
|
|
13
16
|
compute_server_seed_hash: wasm.compute_server_seed_hash,
|
|
17
|
+
compute_user_seed_binding: wasm.compute_user_seed_binding,
|
|
14
18
|
derive_session_key: wasm.derive_session_key,
|
|
19
|
+
generate_user_secret: wasm.generate_user_secret,
|
|
15
20
|
generate_user_seed: wasm.generate_user_seed,
|
|
16
21
|
goldilocks_fields_to_hex: wasm.goldilocks_fields_to_hex,
|
|
17
22
|
goldilocks_modulus: wasm.goldilocks_modulus,
|
package/js/node.mjs
CHANGED
|
@@ -7,12 +7,17 @@ export const {
|
|
|
7
7
|
amount_split,
|
|
8
8
|
compute_address_hash,
|
|
9
9
|
compute_multi_dice,
|
|
10
|
+
compute_payout_coinflip,
|
|
10
11
|
compute_payout_dice,
|
|
11
12
|
compute_payout_plinko,
|
|
13
|
+
compute_prediction_hash,
|
|
14
|
+
compute_roll_coinflip,
|
|
12
15
|
compute_roll_dice,
|
|
13
16
|
compute_roll_plinko,
|
|
14
17
|
compute_server_seed_hash,
|
|
18
|
+
compute_user_seed_binding,
|
|
15
19
|
derive_session_key,
|
|
20
|
+
generate_user_secret,
|
|
16
21
|
generate_user_seed,
|
|
17
22
|
goldilocks_fields_to_hex,
|
|
18
23
|
goldilocks_modulus,
|
package/js/react.mjs
CHANGED
|
@@ -3,12 +3,17 @@ import init, {
|
|
|
3
3
|
amount_split,
|
|
4
4
|
compute_address_hash,
|
|
5
5
|
compute_multi_dice,
|
|
6
|
+
compute_payout_coinflip,
|
|
6
7
|
compute_payout_dice,
|
|
7
8
|
compute_payout_plinko,
|
|
9
|
+
compute_prediction_hash,
|
|
10
|
+
compute_roll_coinflip,
|
|
8
11
|
compute_roll_dice,
|
|
9
12
|
compute_roll_plinko,
|
|
10
13
|
compute_server_seed_hash,
|
|
14
|
+
compute_user_seed_binding,
|
|
11
15
|
derive_session_key,
|
|
16
|
+
generate_user_secret,
|
|
12
17
|
generate_user_seed,
|
|
13
18
|
goldilocks_fields_to_hex,
|
|
14
19
|
goldilocks_modulus,
|
|
@@ -37,12 +42,17 @@ const fns = {
|
|
|
37
42
|
amount_split: guard(amount_split),
|
|
38
43
|
compute_address_hash: guard(compute_address_hash),
|
|
39
44
|
compute_multi_dice: guard(compute_multi_dice),
|
|
45
|
+
compute_payout_coinflip: guard(compute_payout_coinflip),
|
|
40
46
|
compute_payout_dice: guard(compute_payout_dice),
|
|
41
47
|
compute_payout_plinko: guard(compute_payout_plinko),
|
|
48
|
+
compute_prediction_hash: guard(compute_prediction_hash),
|
|
49
|
+
compute_roll_coinflip: guard(compute_roll_coinflip),
|
|
42
50
|
compute_roll_dice: guard(compute_roll_dice),
|
|
43
51
|
compute_roll_plinko: guard(compute_roll_plinko),
|
|
44
52
|
compute_server_seed_hash: guard(compute_server_seed_hash),
|
|
53
|
+
compute_user_seed_binding: guard(compute_user_seed_binding),
|
|
45
54
|
derive_session_key: guard(derive_session_key),
|
|
55
|
+
generate_user_secret: guard(generate_user_secret),
|
|
46
56
|
generate_user_seed: guard(generate_user_seed),
|
|
47
57
|
goldilocks_fields_to_hex: guard(goldilocks_fields_to_hex),
|
|
48
58
|
goldilocks_modulus: guard(goldilocks_modulus),
|