UNPKG

910 BJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.createDualHasher = exports.createBitHasher = exports.createAsHex = void 0;
4const util_1 = require("@polkadot/util");
5const wasm_crypto_1 = require("@polkadot/wasm-crypto");
6/** @internal */
7function createAsHex(fn) {
8 return (...args) => (0, util_1.u8aToHex)(fn(...args));
9}
10exports.createAsHex = createAsHex;
11/** @internal */
12function createBitHasher(bitLength, fn) {
13 return (data, onlyJs) => fn(data, bitLength, onlyJs);
14}
15exports.createBitHasher = createBitHasher;
16/** @internal */
17function createDualHasher(wa, js) {
18 return (value, bitLength = 256, onlyJs) => {
19 const u8a = (0, util_1.u8aToU8a)(value);
20 return !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
21 ? wa[bitLength](u8a)
22 : js[bitLength](u8a);
23 };
24}
25exports.createDualHasher = createDualHasher;