UNPKG

@polkadot/util-crypto

Version:
26 lines (25 loc) 910 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createDualHasher = exports.createBitHasher = exports.createAsHex = void 0; const util_1 = require("@polkadot/util"); const wasm_crypto_1 = require("@polkadot/wasm-crypto"); /** @internal */ function createAsHex(fn) { return (...args) => (0, util_1.u8aToHex)(fn(...args)); } exports.createAsHex = createAsHex; /** @internal */ function createBitHasher(bitLength, fn) { return (data, onlyJs) => fn(data, bitLength, onlyJs); } exports.createBitHasher = createBitHasher; /** @internal */ function createDualHasher(wa, js) { return (value, bitLength = 256, onlyJs) => { const u8a = (0, util_1.u8aToU8a)(value); return !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)()) ? wa[bitLength](u8a) : js[bitLength](u8a); }; } exports.createDualHasher = createDualHasher;