@ic-wallet-kit/hpl
Version:
Ic middleware wallet HPL protocol
38 lines (37 loc) • 1.6 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.phraseToIdentifierService = exports.seedToIdentifierService = exports.seedToIdentity = void 0;
const agent_1 = require("@dfinity/agent");
const identity_1 = require("@dfinity/identity");
const identity_secp256k1_1 = require("@dfinity/identity-secp256k1");
const common_1 = require("@ic-wallet-kit/common");
function seedToIdentity(seed) {
const seedBuf = new Uint8Array(new ArrayBuffer(32));
seedBuf.set(new TextEncoder().encode(seed));
return identity_1.Ed25519KeyIdentity.generate(seedBuf);
}
exports.seedToIdentity = seedToIdentity;
function seedToIdentifierService(seed) {
const secpIdentity = seedToIdentity(seed);
const agent = agent_1.HttpAgent.createSync({
identity: secpIdentity,
verifyQuerySignatures: false,
host: "https://identity.ic0.app",
retryTimes: 8
});
const identifierService = new common_1.IdentifierService(agent, secpIdentity);
return identifierService;
}
exports.seedToIdentifierService = seedToIdentifierService;
async function phraseToIdentifierService(phrase) {
const secpIdentity = identity_secp256k1_1.Secp256k1KeyIdentity.fromSeedPhrase(phrase);
const agent = await agent_1.HttpAgent.create({
identity: secpIdentity,
verifyQuerySignatures: false,
host: "https://identity.ic0.app",
retryTimes: 8
});
const identifierService = new common_1.IdentifierService(agent, secpIdentity);
return identifierService;
}
exports.phraseToIdentifierService = phraseToIdentifierService;