@totemsdk/core 1.2.6 → 1.2.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.
Files changed (95) hide show
  1. package/dist/canonical.d.ts +3 -0
  2. package/dist/canonical.js +22 -0
  3. package/dist/cjs/MiniNumber.d.ts +47 -0
  4. package/dist/cjs/MiniNumber.js +302 -0
  5. package/dist/cjs/Streamable.d.ts +268 -0
  6. package/dist/cjs/Streamable.js +439 -0
  7. package/dist/cjs/adapters/index.d.ts +190 -0
  8. package/dist/cjs/adapters/index.js +118 -0
  9. package/dist/cjs/adapters/types.d.ts +150 -0
  10. package/dist/cjs/adapters/types.js +81 -0
  11. package/dist/cjs/binio.d.ts +9 -0
  12. package/dist/cjs/binio.js +25 -0
  13. package/dist/cjs/bip39.d.ts +91 -0
  14. package/dist/cjs/bip39.js +434 -0
  15. package/dist/cjs/canonical.d.ts +3 -0
  16. package/dist/cjs/canonical.js +27 -0
  17. package/dist/cjs/derive.d.ts +2 -0
  18. package/dist/cjs/derive.js +13 -0
  19. package/dist/cjs/index.d.ts +49 -0
  20. package/dist/cjs/index.js +231 -0
  21. package/dist/cjs/javaStreamables.d.ts +254 -0
  22. package/dist/cjs/javaStreamables.js +391 -0
  23. package/dist/cjs/lease/LeaseMonitor.d.ts +44 -0
  24. package/dist/cjs/lease/LeaseMonitor.js +115 -0
  25. package/dist/cjs/lease/LeaseStore.d.ts +58 -0
  26. package/dist/cjs/lease/LeaseStore.js +151 -0
  27. package/dist/cjs/lease/WatermarkStore.d.ts +61 -0
  28. package/dist/cjs/lease/WatermarkStore.js +209 -0
  29. package/dist/cjs/lease/index.d.ts +14 -0
  30. package/dist/cjs/lease/index.js +22 -0
  31. package/dist/cjs/lease-client.d.ts +31 -0
  32. package/dist/cjs/lease-client.js +44 -0
  33. package/dist/cjs/legacy.d.ts +23 -0
  34. package/dist/cjs/legacy.js +163 -0
  35. package/dist/cjs/minima32.d.ts +18 -0
  36. package/dist/cjs/minima32.js +121 -0
  37. package/dist/cjs/minimaWireSerializer.d.ts +60 -0
  38. package/dist/cjs/minimaWireSerializer.js +77 -0
  39. package/dist/cjs/mmr.d.ts +157 -0
  40. package/dist/cjs/mmr.js +352 -0
  41. package/dist/cjs/mx.d.ts +1 -0
  42. package/dist/cjs/mx.js +10 -0
  43. package/dist/cjs/package.json +1 -0
  44. package/dist/cjs/params.d.ts +29 -0
  45. package/dist/cjs/params.js +20 -0
  46. package/dist/cjs/script.d.ts +7 -0
  47. package/dist/cjs/script.js +27 -0
  48. package/dist/cjs/scripts/contract-helpers.d.ts +252 -0
  49. package/dist/cjs/scripts/contract-helpers.js +407 -0
  50. package/dist/cjs/scripts/dapp-types.d.ts +119 -0
  51. package/dist/cjs/scripts/dapp-types.js +77 -0
  52. package/dist/cjs/scripts/index.d.ts +4 -0
  53. package/dist/cjs/scripts/index.js +38 -0
  54. package/dist/cjs/scripts/types.d.ts +81 -0
  55. package/dist/cjs/scripts/types.js +159 -0
  56. package/dist/cjs/scripts/witness-serializer.d.ts +29 -0
  57. package/dist/cjs/scripts/witness-serializer.js +306 -0
  58. package/dist/cjs/transaction.d.ts +106 -0
  59. package/dist/cjs/transaction.js +293 -0
  60. package/dist/cjs/treekey.d.ts +399 -0
  61. package/dist/cjs/treekey.js +827 -0
  62. package/dist/cjs/tx/TransactionLifecycle.d.ts +55 -0
  63. package/dist/cjs/tx/TransactionLifecycle.js +205 -0
  64. package/dist/cjs/tx/TransactionReceiptStore.d.ts +36 -0
  65. package/dist/cjs/tx/TransactionReceiptStore.js +93 -0
  66. package/dist/cjs/tx/TransactionService.d.ts +50 -0
  67. package/dist/cjs/tx/TransactionService.js +186 -0
  68. package/dist/cjs/tx/index.d.ts +13 -0
  69. package/dist/cjs/tx/index.js +20 -0
  70. package/dist/cjs/tx/types.d.ts +115 -0
  71. package/dist/cjs/tx/types.js +6 -0
  72. package/dist/cjs/util.d.ts +1 -0
  73. package/dist/cjs/util.js +5 -0
  74. package/dist/cjs/utils.d.ts +8 -0
  75. package/dist/cjs/utils.js +42 -0
  76. package/dist/cjs/verify.d.ts +18 -0
  77. package/dist/cjs/verify.js +174 -0
  78. package/dist/cjs/version.d.ts +12 -0
  79. package/dist/cjs/version.js +15 -0
  80. package/dist/cjs/wasm-sync.d.ts +71 -0
  81. package/dist/cjs/wasm-sync.js +97 -0
  82. package/dist/cjs/wots.d.ts +232 -0
  83. package/dist/cjs/wots.js +589 -0
  84. package/dist/index.d.ts +9 -3
  85. package/dist/index.js +25 -2
  86. package/dist/minimaWireSerializer.js +2 -2
  87. package/dist/mmr.js +1 -1
  88. package/dist/transaction.js +10 -10
  89. package/dist/treekey.js +14 -0
  90. package/dist/wasm-sync.d.ts +2 -2
  91. package/dist/wasm-sync.js +3 -1
  92. package/dist/wots.d.ts +1 -1
  93. package/package.json +84 -45
  94. package/dist/wasm-bridge.d.ts +0 -54
  95. package/dist/wasm-bridge.js +0 -303
@@ -1,303 +0,0 @@
1
- "use strict";
2
- /**
3
- * WASM Bridge — thin TypeScript wrappers around @totemsdk/core-wasm.
4
- *
5
- * This module provides the same public API as the legacy JS implementations
6
- * but delegates to Rust/WASM for all cryptographic operations.
7
- *
8
- * The legacy JS implementations remain available via:
9
- * import { ... } from '@totemsdk/core/legacy';
10
- */
11
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- var desc = Object.getOwnPropertyDescriptor(m, k);
14
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
15
- desc = { enumerable: true, get: function() { return m[k]; } };
16
- }
17
- Object.defineProperty(o, k2, desc);
18
- }) : (function(o, m, k, k2) {
19
- if (k2 === undefined) k2 = k;
20
- o[k2] = m[k];
21
- }));
22
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
23
- Object.defineProperty(o, "default", { enumerable: true, value: v });
24
- }) : function(o, v) {
25
- o["default"] = v;
26
- });
27
- var __importStar = (this && this.__importStar) || (function () {
28
- var ownKeys = function(o) {
29
- ownKeys = Object.getOwnPropertyNames || function (o) {
30
- var ar = [];
31
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
32
- return ar;
33
- };
34
- return ownKeys(o);
35
- };
36
- return function (mod) {
37
- if (mod && mod.__esModule) return mod;
38
- var result = {};
39
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
40
- __setModuleDefault(result, mod);
41
- return result;
42
- };
43
- })();
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.getParamSet = void 0;
46
- exports.getParams = getParams;
47
- exports.sha3_256 = sha3_256;
48
- exports.expandPrivateKey = expandPrivateKey;
49
- exports.hashChain = hashChain;
50
- exports.derivePKdigest = derivePKdigest;
51
- exports.deriveFullPublicKey = deriveFullPublicKey;
52
- exports.wotsSign = wotsSign;
53
- exports.wotsVerify = wotsVerify;
54
- exports.wotsVerifyDigest = wotsVerifyDigest;
55
- exports.wotsPkFromSig = wotsPkFromSig;
56
- exports.wotsPublicKeyFromSeed = wotsPublicKeyFromSeed;
57
- exports.wotsKeypairFromSeed = wotsKeypairFromSeed;
58
- exports.deriveChainSeedJava = deriveChainSeedJava;
59
- exports.derivePerAddressSeed = derivePerAddressSeed;
60
- exports.deriveRootPrivSeed = deriveRootPrivSeed;
61
- exports.phraseToSeed = phraseToSeed;
62
- exports.generateWordList = generateWordList;
63
- exports.validatePhrase = validatePhrase;
64
- exports.cleanSeedPhrase = cleanSeedPhrase;
65
- exports.makeMxAddress = makeMxAddress;
66
- exports.parseMxAddress = parseMxAddress;
67
- exports.wotsAddressFromKeypair = wotsAddressFromKeypair;
68
- exports.serializeTransaction = serializeTransaction;
69
- exports.computeTransactionDigest = computeTransactionDigest;
70
- exports.precomputeTransactionCoinID = precomputeTransactionCoinID;
71
- exports.verifyTreeSignature = verifyTreeSignature;
72
- exports.timingSafeEqual = timingSafeEqual;
73
- exports.createChallenge = createChallenge;
74
- exports.validateChallenge = validateChallenge;
75
- exports.writeMiniNumber = writeMiniNumber;
76
- exports.writeMiniData = writeMiniData;
77
- exports.writeMiniString = writeMiniString;
78
- exports.bytesToHex = bytesToHex;
79
- exports.hexToBytes = hexToBytes;
80
- exports.concatBytes = concatBytes;
81
- // ---------------------------------------------------------------------------
82
- // Dynamic WASM import — works in browser, Node.js, and Pear/Bare
83
- // ---------------------------------------------------------------------------
84
- let wasmModule = null;
85
- let wasmInitPromise = null;
86
- async function getWasm() {
87
- if (wasmModule)
88
- return wasmModule;
89
- if (wasmInitPromise)
90
- return wasmInitPromise;
91
- wasmInitPromise = (async () => {
92
- try {
93
- // Try the bundled WASM package first
94
- const mod = await Promise.resolve().then(() => __importStar(require('@totemsdk/core-wasm')));
95
- wasmModule = mod;
96
- return mod;
97
- }
98
- catch {
99
- // Fallback: try direct WASM import
100
- try {
101
- const mod = await Promise.resolve().then(() => __importStar(require('../wasm/totemsdk_core_wasm.js')));
102
- wasmModule = mod;
103
- return mod;
104
- }
105
- catch {
106
- throw new Error('@totemsdk/core-wasm is not installed. ' +
107
- 'Install it with: npm install @totemsdk/core-wasm');
108
- }
109
- }
110
- })();
111
- return wasmInitPromise;
112
- }
113
- // ---------------------------------------------------------------------------
114
- // Utility helpers
115
- // ---------------------------------------------------------------------------
116
- function toUint8Array(data) {
117
- if (data instanceof Uint8Array)
118
- return data;
119
- if (data instanceof ArrayBuffer)
120
- return new Uint8Array(data);
121
- return new Uint8Array(data);
122
- }
123
- function fromWasmVec(vec) {
124
- return toUint8Array(vec);
125
- }
126
- // ---------------------------------------------------------------------------
127
- // WOTS Parameters
128
- // ---------------------------------------------------------------------------
129
- async function getParams() {
130
- const wasm = await getWasm();
131
- return wasm.get_params();
132
- }
133
- // ---------------------------------------------------------------------------
134
- // SHA3-256
135
- // ---------------------------------------------------------------------------
136
- async function sha3_256(data) {
137
- const wasm = await getWasm();
138
- return fromWasmVec(wasm.sha3_256_wasm(data));
139
- }
140
- // ---------------------------------------------------------------------------
141
- // WOTS Signatures
142
- // ---------------------------------------------------------------------------
143
- async function expandPrivateKey(seed) {
144
- const wasm = await getWasm();
145
- const keys = wasm.expand_private_key_wasm(seed);
146
- return keys.map((k) => fromWasmVec(k));
147
- }
148
- async function hashChain(x, rounds) {
149
- const wasm = await getWasm();
150
- return fromWasmVec(wasm.hash_chain_wasm(x, rounds));
151
- }
152
- async function derivePKdigest(seed, keyIndex) {
153
- const wasm = await getWasm();
154
- return fromWasmVec(wasm.derive_pk_digest_wasm(seed, keyIndex));
155
- }
156
- async function deriveFullPublicKey(seed, keyIndex) {
157
- const wasm = await getWasm();
158
- return fromWasmVec(wasm.derive_full_public_key_wasm(seed, keyIndex));
159
- }
160
- async function wotsSign(seed, keyIndex, message) {
161
- const wasm = await getWasm();
162
- return fromWasmVec(wasm.wots_sign_wasm(seed, keyIndex, message));
163
- }
164
- async function wotsVerify(sig, message, pkFull) {
165
- const wasm = await getWasm();
166
- return wasm.wots_verify_wasm(sig, message, pkFull);
167
- }
168
- async function wotsVerifyDigest(sig, message, pkDigest) {
169
- const wasm = await getWasm();
170
- return wasm.wots_verify_digest_wasm(sig, message, pkDigest);
171
- }
172
- async function wotsPkFromSig(message, signature) {
173
- const wasm = await getWasm();
174
- return fromWasmVec(wasm.wots_pk_from_sig_wasm(message, signature));
175
- }
176
- async function wotsPublicKeyFromSeed(seed, keyIndex) {
177
- const wasm = await getWasm();
178
- return fromWasmVec(wasm.derive_pk_digest_wasm(seed, keyIndex ?? 0));
179
- }
180
- async function wotsKeypairFromSeed(seed, index) {
181
- const pk = await derivePKdigest(seed, index);
182
- return { seed, index, pk };
183
- }
184
- // ---------------------------------------------------------------------------
185
- // Seed Derivation (Java-compatible)
186
- // ---------------------------------------------------------------------------
187
- async function deriveChainSeedJava(seed, keyIndex) {
188
- const wasm = await getWasm();
189
- return fromWasmVec(wasm.derive_chain_seed_wasm(seed, keyIndex));
190
- }
191
- async function derivePerAddressSeed(rootSeed, addressIndex) {
192
- const wasm = await getWasm();
193
- return fromWasmVec(wasm.derive_per_address_seed_wasm(rootSeed, addressIndex));
194
- }
195
- async function deriveRootPrivSeed(bip39Seed) {
196
- const wasm = await getWasm();
197
- return fromWasmVec(wasm.derive_root_priv_seed_wasm(bip39Seed));
198
- }
199
- // ---------------------------------------------------------------------------
200
- // BIP39
201
- // ---------------------------------------------------------------------------
202
- async function phraseToSeed(phrase) {
203
- const wasm = await getWasm();
204
- return fromWasmVec(wasm.phrase_to_seed_wasm(phrase));
205
- }
206
- async function generateWordList() {
207
- const wasm = await getWasm();
208
- return wasm.generate_mnemonic_wasm();
209
- }
210
- async function validatePhrase(phrase) {
211
- const wasm = await getWasm();
212
- return wasm.validate_phrase_wasm(phrase);
213
- }
214
- async function cleanSeedPhrase(phrase) {
215
- const wasm = await getWasm();
216
- return wasm.clean_seed_phrase_wasm(phrase);
217
- }
218
- // ---------------------------------------------------------------------------
219
- // Addresses
220
- // ---------------------------------------------------------------------------
221
- async function makeMxAddress(root32) {
222
- const wasm = await getWasm();
223
- return wasm.make_mx_address_wasm(root32);
224
- }
225
- async function parseMxAddress(address) {
226
- const wasm = await getWasm();
227
- return fromWasmVec(wasm.parse_mx_address_wasm(address));
228
- }
229
- async function wotsAddressFromKeypair(seed, keyIndex) {
230
- const wasm = await getWasm();
231
- return wasm.wots_address_from_keypair_wasm(seed, keyIndex);
232
- }
233
- // ---------------------------------------------------------------------------
234
- // Transactions
235
- // ---------------------------------------------------------------------------
236
- async function serializeTransaction(tx) {
237
- const wasm = await getWasm();
238
- const json = JSON.stringify(tx);
239
- return fromWasmVec(wasm.serialize_transaction_wasm(json));
240
- }
241
- async function computeTransactionDigest(serializedTx) {
242
- const wasm = await getWasm();
243
- return fromWasmVec(wasm.compute_transaction_digest_wasm(serializedTx));
244
- }
245
- async function precomputeTransactionCoinID(txid, outputIndex) {
246
- const wasm = await getWasm();
247
- return fromWasmVec(wasm.precompute_transaction_coin_id_wasm(txid, outputIndex));
248
- }
249
- // ---------------------------------------------------------------------------
250
- // Verification
251
- // ---------------------------------------------------------------------------
252
- async function verifyTreeSignature(rootPublicKey, message, signature) {
253
- const wasm = await getWasm();
254
- const json = typeof signature === 'string' ? signature : JSON.stringify(signature);
255
- return wasm.verify_tree_signature_wasm(rootPublicKey, message, json);
256
- }
257
- async function timingSafeEqual(a, b) {
258
- const wasm = await getWasm();
259
- return wasm.timing_safe_equal_wasm(a, b);
260
- }
261
- async function createChallenge(domain, statement) {
262
- const wasm = await getWasm();
263
- return wasm.create_challenge_wasm(domain, statement);
264
- }
265
- async function validateChallenge(challengeJson, domain) {
266
- const wasm = await getWasm();
267
- return wasm.validate_challenge_wasm(challengeJson, domain);
268
- }
269
- // ---------------------------------------------------------------------------
270
- // Serialization (Java-compatible)
271
- // ---------------------------------------------------------------------------
272
- async function writeMiniNumber(value, scale) {
273
- const wasm = await getWasm();
274
- return fromWasmVec(wasm.write_mini_number_wasm(value, scale ?? 0));
275
- }
276
- async function writeMiniData(data) {
277
- const wasm = await getWasm();
278
- return fromWasmVec(wasm.write_mini_data_wasm(data));
279
- }
280
- async function writeMiniString(s) {
281
- const wasm = await getWasm();
282
- return fromWasmVec(wasm.write_mini_string_wasm(s));
283
- }
284
- // ---------------------------------------------------------------------------
285
- // Utility
286
- // ---------------------------------------------------------------------------
287
- async function bytesToHex(bytes) {
288
- const wasm = await getWasm();
289
- return wasm.bytes_to_hex_wasm(bytes);
290
- }
291
- async function hexToBytes(hexStr) {
292
- const wasm = await getWasm();
293
- return fromWasmVec(wasm.hex_to_bytes_wasm(hexStr));
294
- }
295
- async function concatBytes(...arrays) {
296
- const wasm = await getWasm();
297
- return fromWasmVec(wasm.concat_bytes_wasm(arrays));
298
- }
299
- // ---------------------------------------------------------------------------
300
- // Re-exports for backward compatibility
301
- // ---------------------------------------------------------------------------
302
- var wasm_bridge_js_1 = require("./wasm-bridge.js");
303
- Object.defineProperty(exports, "getParamSet", { enumerable: true, get: function () { return wasm_bridge_js_1.getParams; } });