UNPKG

@funded-labs/plug-controller

Version:

Internet Computer Plug wallet's controller

30 lines (29 loc) 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateToken = exports.validateCanisterId = exports.validateAccountId = exports.validatePrincipalId = exports.isValidPrincipal = void 0; const principal_1 = require("@dfinity/principal"); const constants_1 = require("../utils/dfx/constants"); const isValidPrincipal = (text) => principal_1.Principal.fromText(text).toText() === text; exports.isValidPrincipal = isValidPrincipal; const validatePrincipalId = (text) => { try { return Boolean(constants_1.PRINCIPAL_REGEX.test(text) && (0, exports.isValidPrincipal)(text)); } catch (e) { return false; } }; exports.validatePrincipalId = validatePrincipalId; const validateAccountId = (text) => text.length === 64 && constants_1.ALPHANUM_REGEX.test(text); exports.validateAccountId = validateAccountId; const validateCanisterId = (text) => { try { return Boolean(text.length <= constants_1.CANISTER_MAX_LENGTH && (0, exports.isValidPrincipal)(text)); } catch (e) { return false; } }; exports.validateCanisterId = validateCanisterId; const validateToken = (metadata) => Boolean(!!metadata.decimal && !!metadata.name && !!metadata.symbol); exports.validateToken = validateToken;