UNPKG

@etherspot/prime-sdk

Version:

Etherspot Prime (Account Abstraction) SDK

30 lines (29 loc) 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.keccak256 = void 0; const ethers_1 = require("ethers"); const is_address_1 = require("./is-address"); const is_hex_1 = require("./is-hex"); function keccak256(data) { let result = null; if (data) { switch (typeof data) { case 'string': if ((0, is_address_1.isAddress)(data)) { result = ethers_1.utils.solidityKeccak256(['address'], [data]); } else if ((0, is_hex_1.isHex)(data)) { result = ethers_1.utils.solidityKeccak256(['bytes'], [data]); } else { result = ethers_1.utils.solidityKeccak256(['string'], [data]); } break; case 'object': result = ethers_1.utils.solidityKeccak256(['bytes'], [data]); break; } } return result; } exports.keccak256 = keccak256;