UNPKG

@funded-labs/dab-js

Version:
32 lines (31 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateActor = exports.createExtendedActorClass = void 0; const agent_1 = require("@dfinity/agent"); const principal_1 = require("@dfinity/principal"); const createExtendedActorClass = (agent, methods, canisterId, IDLFactory, blsVerify) => { class ExtendedActor extends agent_1.Actor.createActorClass(IDLFactory) { constructor() { const principalCanisterId = typeof canisterId === 'string' ? principal_1.Principal.fromText(canisterId) : canisterId; super({ agent, canisterId: principalCanisterId, blsVerify }); Object.keys(this).forEach((methodName) => { this[`_${methodName}`] = this[methodName]; }); Object.keys(methods).forEach((methodName) => { this[methodName] = ((...args) => methods[methodName](this, ...args)); }); } } return ExtendedActor; }; exports.createExtendedActorClass = createExtendedActorClass; function generateActor({ agent, canisterId, IDL, }) { return agent_1.Actor.createActor(IDL, { agent, canisterId: principal_1.Principal.fromText(canisterId), }); } exports.generateActor = generateActor; exports.default = { createExtendedActorClass: exports.createExtendedActorClass, generateActor };