UNPKG

@signumjs/contracts

Version:

Smart Contracts package for Signum Network

28 lines 1.22 kB
"use strict"; /** * Copyright (c) 2019 Burst Apps Team * Modified (c) 2022 Signum Network * * Credits to AJ ONeal for the two-complements stuff * https://coolaj86.com/articles/convert-decimal-to-hex-with-js-bigints/ */ Object.defineProperty(exports, "__esModule", { value: true }); exports.generateMethodCall = void 0; const util_1 = require("@signumjs/util"); const convertContractData_1 = require("./internal/convertContractData"); /** * Generates a method call message of a contracts public method. The message can be sent using for example * {@link core.MessageApi.sendMessage} with `messageIsText = false` or {@link core.ContractApi.callContractMethod}] * @param args The argument object * @return A hex string that can be used as contracts transaction message */ const generateMethodCall = (args) => { const argArray = args.methodArgs ? [args.methodId, ...args.methodArgs] : [args.methodId]; return argArray .map(convertContractData_1.convertContractData) .map(long => (0, util_1.convertDecStringToHexString)(long, 16)) .map(util_1.convertHexEndianess) .join(''); }; exports.generateMethodCall = generateMethodCall; //# sourceMappingURL=generateMethodCall.js.map