UNPKG

@signumjs/core

Version:

Principal package with functions and models for building Signum Network applications.

42 lines 1.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.publishContract = void 0; /** * Copyright (c) 2019 Burst Apps Team * Modified (c) 2022 Signum Network */ const contracts_1 = require("@signumjs/contracts"); const constants_1 = require("../../../constants"); const signIfPrivateKey_1 = require("../../../internal/signIfPrivateKey"); const contracts_2 = require("@signumjs/contracts"); /** * Use with {@link ApiComposer} and belongs to {@link ContractApi}. * * See details at {@link ContractApi.publishContract} * * @category factories */ const publishContract = (service) => (args) => (0, signIfPrivateKey_1.signIfPrivateKey)(service, args, async (a) => { const { dataHex, dataPageCount } = (0, contracts_2.generateDataStack)(a.data || []); const feeNQT = a.feePlanck || (0, contracts_1.calculateMinimumCreationFee)({ dataHex, codeHex: a.codeHex }).getPlanck(); const parameters = { code: a.codeHex, deadline: a.deadline || constants_1.DefaultDeadline, description: a.description, feeNQT, minActivationAmountNQT: a.activationAmountPlanck, name: a.name, publicKey: a.senderPublicKey, data: dataHex || undefined, dpages: dataPageCount || 1, cspages: 1, uspages: 1, broadcast: true, }; return service.send('createATProgram', parameters); }); exports.publishContract = publishContract; //# sourceMappingURL=publishContract.js.map