UNPKG

@funded-labs/plug-controller

Version:

Internet Computer Plug wallet's controller

26 lines (25 loc) 1.06 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.IdentityFactory = void 0; const identity_1 = __importDefault(require("./secpk256k1/identity")); const ed25519Identity_1 = __importDefault(require("./ed25519/ed25519Identity")); const constants_1 = require("../account/constants"); const errors_1 = require("../../errors"); class IdentityFactory { static createIdentity(type, secretKey) { switch (type) { case constants_1.Types.secretKey256k1: case constants_1.Types.pem256k1: case constants_1.Types.mnemonic: return identity_1.default.fromJSON(secretKey); case constants_1.Types.pem25519: return ed25519Identity_1.default.fromJSON(secretKey); default: throw new Error(errors_1.ERRORS.INVALID_TYPE_ERROR); } } } exports.IdentityFactory = IdentityFactory;