UNPKG

@krakaw/wallet-decoder-nodejs

Version:

Tari Address Generator WASM module for Node.js

735 lines (647 loc) 21.9 kB
let imports = {}; imports['__wbindgen_placeholder__'] = module.exports; let wasm; const { TextEncoder, TextDecoder } = require(`util`); let WASM_VECTOR_LEN = 0; let cachedUint8ArrayMemory0 = null; function getUint8ArrayMemory0() { if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) { cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer); } return cachedUint8ArrayMemory0; } let cachedTextEncoder = new TextEncoder('utf-8'); const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' ? function (arg, view) { return cachedTextEncoder.encodeInto(arg, view); } : function (arg, view) { const buf = cachedTextEncoder.encode(arg); view.set(buf); return { read: arg.length, written: buf.length }; }); function passStringToWasm0(arg, malloc, realloc) { if (realloc === undefined) { const buf = cachedTextEncoder.encode(arg); const ptr = malloc(buf.length, 1) >>> 0; getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf); WASM_VECTOR_LEN = buf.length; return ptr; } let len = arg.length; let ptr = malloc(len, 1) >>> 0; const mem = getUint8ArrayMemory0(); let offset = 0; for (; offset < len; offset++) { const code = arg.charCodeAt(offset); if (code > 0x7F) break; mem[ptr + offset] = code; } if (offset !== len) { if (offset !== 0) { arg = arg.slice(offset); } ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len); const ret = encodeString(arg, view); offset += ret.written; ptr = realloc(ptr, len, offset, 1) >>> 0; } WASM_VECTOR_LEN = offset; return ptr; } let cachedDataViewMemory0 = null; function getDataViewMemory0() { if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) { cachedDataViewMemory0 = new DataView(wasm.memory.buffer); } return cachedDataViewMemory0; } function addToExternrefTable0(obj) { const idx = wasm.__externref_table_alloc(); wasm.__wbindgen_export_4.set(idx, obj); return idx; } function handleError(f, args) { try { return f.apply(this, args); } catch (e) { const idx = addToExternrefTable0(e); wasm.__wbindgen_exn_store(idx); } } let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); cachedTextDecoder.decode(); function getStringFromWasm0(ptr, len) { ptr = ptr >>> 0; return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len)); } function isLikeNone(x) { return x === undefined || x === null; } module.exports.init = function() { wasm.init(); }; function takeFromExternrefTable0(idx) { const value = wasm.__wbindgen_export_4.get(idx); wasm.__externref_table_dealloc(idx); return value; } function getArrayU8FromWasm0(ptr, len) { ptr = ptr >>> 0; return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len); } /** * @param {string} address_str * @returns {any} */ module.exports.decode_tari_address = function(address_str) { const ptr0 = passStringToWasm0(address_str, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.decode_tari_address(ptr0, len0); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return takeFromExternrefTable0(ret[0]); }; /** * @param {string} address_str * @returns {any} */ module.exports.decode_tari_address_with_breakdown = function(address_str) { const ptr0 = passStringToWasm0(address_str, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.decode_tari_address_with_breakdown(ptr0, len0); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return takeFromExternrefTable0(ret[0]); }; module.exports.init_panic_hook = function() { wasm.init_panic_hook(); }; const WasmTariAddressFinalization = (typeof FinalizationRegistry === 'undefined') ? { register: () => {}, unregister: () => {} } : new FinalizationRegistry(ptr => wasm.__wbg_wasmtariaddress_free(ptr >>> 0, 1)); class WasmTariAddress { static __wrap(ptr) { ptr = ptr >>> 0; const obj = Object.create(WasmTariAddress.prototype); obj.__wbg_ptr = ptr; WasmTariAddressFinalization.register(obj, obj.__wbg_ptr, obj); return obj; } __destroy_into_raw() { const ptr = this.__wbg_ptr; this.__wbg_ptr = 0; WasmTariAddressFinalization.unregister(this); return ptr; } free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_wasmtariaddress_free(ptr, 0); } /** * Get the address in Base58 format * @returns {string} */ to_base58() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariaddress_to_base58(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the address in emoji format * @returns {string} */ to_emoji() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariaddress_to_emoji(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the network as a string * @returns {string} */ network() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariaddress_network(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Check if the address has a payment ID * @returns {boolean} */ has_payment_id() { const ret = wasm.wasmtariaddress_has_payment_id(this.__wbg_ptr); return ret !== 0; } /** * Get the payment ID if present * @returns {Uint8Array | undefined} */ payment_id() { const ret = wasm.wasmtariaddress_payment_id(this.__wbg_ptr); let v1; if (ret[0] !== 0) { v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice(); wasm.__wbindgen_free(ret[0], ret[1] * 1, 1); } return v1; } } module.exports.WasmTariAddress = WasmTariAddress; const WasmTariAddressGeneratorFinalization = (typeof FinalizationRegistry === 'undefined') ? { register: () => {}, unregister: () => {} } : new FinalizationRegistry(ptr => wasm.__wbg_wasmtariaddressgenerator_free(ptr >>> 0, 1)); class WasmTariAddressGenerator { __destroy_into_raw() { const ptr = this.__wbg_ptr; this.__wbg_ptr = 0; WasmTariAddressGeneratorFinalization.unregister(this); return ptr; } free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_wasmtariaddressgenerator_free(ptr, 0); } constructor() { const ret = wasm.wasmtariaddressgenerator_new(); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } this.__wbg_ptr = ret[0] >>> 0; WasmTariAddressGeneratorFinalization.register(this, this.__wbg_ptr, this); return this; } /** * Generate a new wallet for the specified network * @param {string} network * @returns {WasmTariWallet} */ generate_new_wallet(network) { const ptr0 = passStringToWasm0(network, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.wasmtariaddressgenerator_generate_new_wallet(this.__wbg_ptr, ptr0, len0); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return WasmTariWallet.__wrap(ret[0]); } /** * Restore a wallet from a seed phrase * @param {string} seed_phrase * @param {string} network * @returns {WasmTariWallet} */ restore_from_seed_phrase(seed_phrase, network) { const ptr0 = passStringToWasm0(seed_phrase, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ptr1 = passStringToWasm0(network, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; const ret = wasm.wasmtariaddressgenerator_restore_from_seed_phrase(this.__wbg_ptr, ptr0, len0, ptr1, len1); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return WasmTariWallet.__wrap(ret[0]); } /** * Parse an address from string (auto-detects format) * @param {string} address * @returns {WasmTariAddress} */ parse_address(address) { const ptr0 = passStringToWasm0(address, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.wasmtariaddressgenerator_parse_address(this.__wbg_ptr, ptr0, len0); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return WasmTariAddress.__wrap(ret[0]); } /** * Validate a seed phrase * @param {string} seed_phrase * @returns {boolean} */ validate_seed_phrase(seed_phrase) { const ptr0 = passStringToWasm0(seed_phrase, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.wasmtariaddressgenerator_validate_seed_phrase(this.__wbg_ptr, ptr0, len0); return ret !== 0; } } module.exports.WasmTariAddressGenerator = WasmTariAddressGenerator; const WasmTariWalletFinalization = (typeof FinalizationRegistry === 'undefined') ? { register: () => {}, unregister: () => {} } : new FinalizationRegistry(ptr => wasm.__wbg_wasmtariwallet_free(ptr >>> 0, 1)); class WasmTariWallet { static __wrap(ptr) { ptr = ptr >>> 0; const obj = Object.create(WasmTariWallet.prototype); obj.__wbg_ptr = ptr; WasmTariWalletFinalization.register(obj, obj.__wbg_ptr, obj); return obj; } __destroy_into_raw() { const ptr = this.__wbg_ptr; this.__wbg_ptr = 0; WasmTariWalletFinalization.unregister(this); return ptr; } free() { const ptr = this.__destroy_into_raw(); wasm.__wbg_wasmtariwallet_free(ptr, 0); } /** * Get the address in Base58 format * @returns {string} */ address_base58() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_address_base58(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the address in emoji format * @returns {string} */ address_emoji() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_address_emoji(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the seed phrase * @returns {string} */ seed_phrase() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_seed_phrase(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the network as a string * @returns {string} */ network() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_network(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * @param {string} payment_id * @returns {WasmTariAddress} */ new_address_with_payment_id(payment_id) { const ptr0 = passStringToWasm0(payment_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; const ret = wasm.wasmtariwallet_new_address_with_payment_id(this.__wbg_ptr, ptr0, len0); if (ret[2]) { throw takeFromExternrefTable0(ret[1]); } return WasmTariAddress.__wrap(ret[0]); } /** * Get the view private key as hex string * @returns {string} */ view_private_key_hex() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_view_private_key_hex(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the spend private key as hex string * @returns {string} */ spend_private_key_hex() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_spend_private_key_hex(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the view public key as hex string * @returns {string} */ view_public_key_hex() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_view_public_key_hex(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } /** * Get the spend public key as hex string * @returns {string} */ spend_public_key_hex() { let deferred1_0; let deferred1_1; try { const ret = wasm.wasmtariwallet_spend_public_key_hex(this.__wbg_ptr); deferred1_0 = ret[0]; deferred1_1 = ret[1]; return getStringFromWasm0(ret[0], ret[1]); } finally { wasm.__wbindgen_free(deferred1_0, deferred1_1, 1); } } } module.exports.WasmTariWallet = WasmTariWallet; module.exports.__wbg_String_8f0eb39a4a4c2f66 = function(arg0, arg1) { const ret = String(arg1); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; module.exports.__wbg_buffer_609cc3eee51ed158 = function(arg0) { const ret = arg0.buffer; return ret; }; module.exports.__wbg_call_672a4d21634d4a24 = function() { return handleError(function (arg0, arg1) { const ret = arg0.call(arg1); return ret; }, arguments) }; module.exports.__wbg_call_7cccdd69e0791ae2 = function() { return handleError(function (arg0, arg1, arg2) { const ret = arg0.call(arg1, arg2); return ret; }, arguments) }; module.exports.__wbg_crypto_574e78ad8b13b65f = function(arg0) { const ret = arg0.crypto; return ret; }; module.exports.__wbg_error_7534b8e9a36f1ab4 = function(arg0, arg1) { let deferred0_0; let deferred0_1; try { deferred0_0 = arg0; deferred0_1 = arg1; console.error(getStringFromWasm0(arg0, arg1)); } finally { wasm.__wbindgen_free(deferred0_0, deferred0_1, 1); } }; module.exports.__wbg_getRandomValues_b8f5dbd5f3995a9e = function() { return handleError(function (arg0, arg1) { arg0.getRandomValues(arg1); }, arguments) }; module.exports.__wbg_msCrypto_a61aeb35a24c1329 = function(arg0) { const ret = arg0.msCrypto; return ret; }; module.exports.__wbg_new_405e22f390576ce2 = function() { const ret = new Object(); return ret; }; module.exports.__wbg_new_78feb108b6472713 = function() { const ret = new Array(); return ret; }; module.exports.__wbg_new_8a6f238a6ece86ea = function() { const ret = new Error(); return ret; }; module.exports.__wbg_new_a12002a7f91c75be = function(arg0) { const ret = new Uint8Array(arg0); return ret; }; module.exports.__wbg_newnoargs_105ed471475aaf50 = function(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return ret; }; module.exports.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a = function(arg0, arg1, arg2) { const ret = new Uint8Array(arg0, arg1 >>> 0, arg2 >>> 0); return ret; }; module.exports.__wbg_newwithlength_a381634e90c276d4 = function(arg0) { const ret = new Uint8Array(arg0 >>> 0); return ret; }; module.exports.__wbg_node_905d3e251edff8a2 = function(arg0) { const ret = arg0.node; return ret; }; module.exports.__wbg_now_807e54c39636c349 = function() { const ret = Date.now(); return ret; }; module.exports.__wbg_process_dc0fbacc7c1c06f7 = function(arg0) { const ret = arg0.process; return ret; }; module.exports.__wbg_randomFillSync_ac0988aba3254290 = function() { return handleError(function (arg0, arg1) { arg0.randomFillSync(arg1); }, arguments) }; module.exports.__wbg_require_60cc747a6bc5215a = function() { return handleError(function () { const ret = module.require; return ret; }, arguments) }; module.exports.__wbg_set_37837023f3d740e8 = function(arg0, arg1, arg2) { arg0[arg1 >>> 0] = arg2; }; module.exports.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) { arg0[arg1] = arg2; }; module.exports.__wbg_set_65595bdd868b3009 = function(arg0, arg1, arg2) { arg0.set(arg1, arg2 >>> 0); }; module.exports.__wbg_stack_0ed75d68575b0f3c = function(arg0, arg1) { const ret = arg1.stack; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; module.exports.__wbg_static_accessor_GLOBAL_88a902d13a557d07 = function() { const ret = typeof global === 'undefined' ? null : global; return isLikeNone(ret) ? 0 : addToExternrefTable0(ret); }; module.exports.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0 = function() { const ret = typeof globalThis === 'undefined' ? null : globalThis; return isLikeNone(ret) ? 0 : addToExternrefTable0(ret); }; module.exports.__wbg_static_accessor_SELF_37c5d418e4bf5819 = function() { const ret = typeof self === 'undefined' ? null : self; return isLikeNone(ret) ? 0 : addToExternrefTable0(ret); }; module.exports.__wbg_static_accessor_WINDOW_5de37043a91a9c40 = function() { const ret = typeof window === 'undefined' ? null : window; return isLikeNone(ret) ? 0 : addToExternrefTable0(ret); }; module.exports.__wbg_subarray_aa9065fa9dc5df96 = function(arg0, arg1, arg2) { const ret = arg0.subarray(arg1 >>> 0, arg2 >>> 0); return ret; }; module.exports.__wbg_versions_c01dfd4722a88165 = function(arg0) { const ret = arg0.versions; return ret; }; module.exports.__wbindgen_bigint_from_u64 = function(arg0) { const ret = BigInt.asUintN(64, arg0); return ret; }; module.exports.__wbindgen_error_new = function(arg0, arg1) { const ret = new Error(getStringFromWasm0(arg0, arg1)); return ret; }; module.exports.__wbindgen_init_externref_table = function() { const table = wasm.__wbindgen_export_4; const offset = table.grow(4); table.set(0, undefined); table.set(offset + 0, undefined); table.set(offset + 1, null); table.set(offset + 2, true); table.set(offset + 3, false); ; }; module.exports.__wbindgen_is_function = function(arg0) { const ret = typeof(arg0) === 'function'; return ret; }; module.exports.__wbindgen_is_object = function(arg0) { const val = arg0; const ret = typeof(val) === 'object' && val !== null; return ret; }; module.exports.__wbindgen_is_string = function(arg0) { const ret = typeof(arg0) === 'string'; return ret; }; module.exports.__wbindgen_is_undefined = function(arg0) { const ret = arg0 === undefined; return ret; }; module.exports.__wbindgen_memory = function() { const ret = wasm.memory; return ret; }; module.exports.__wbindgen_number_new = function(arg0) { const ret = arg0; return ret; }; module.exports.__wbindgen_string_new = function(arg0, arg1) { const ret = getStringFromWasm0(arg0, arg1); return ret; }; module.exports.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; const path = require('path').join(__dirname, 'tari_address_generator_bg.wasm'); const bytes = require('fs').readFileSync(path); const wasmModule = new WebAssembly.Module(bytes); const wasmInstance = new WebAssembly.Instance(wasmModule, imports); wasm = wasmInstance.exports; module.exports.__wasm = wasm; wasm.__wbindgen_start();