@broxus/js-core
Version:
MobX-based JavaScript Core library
53 lines (52 loc) • 2.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TvmTokenFactoryUtils = void 0;
const constants_1 = require("../../constants");
const contracts_1 = require("../../models/tvm-token-factory/contracts");
const utils_1 = require("../../utils");
class TvmTokenFactoryUtils {
static async createToken(provider, factoryAddress, params, args) {
const _params = {
burnByRootDisabled: params.burnByRootDisabled,
burnPaused: params.burnPaused,
callId: params.callId,
decimals: params.decimals,
deployWalletValue: params.deployWalletValue ?? (0, utils_1.toInt)(0.1, constants_1.DEFAULT_NATIVE_CURRENCY_DECIMALS),
initialSupply: params.initialSupply ?? 0,
initialSupplyTo: (0, utils_1.resolveTvmAddress)(params.initialSupplyTo || constants_1.ZeroAddress),
mintDisabled: params.mintDisabled,
name: params.name,
remainingGasTo: (0, utils_1.resolveTvmAddress)(params.remainingGasTo),
symbol: params.symbol,
};
const _args = {
amount: (0, utils_1.toInt)(5, constants_1.DEFAULT_NATIVE_CURRENCY_DECIMALS),
bounce: true,
from: (0, utils_1.resolveTvmAddress)(params.remainingGasTo),
...args,
};
try {
return await (0, contracts_1.tokenFactoryContract)(provider, factoryAddress)
.methods.createToken(_params)
.sendDelayed(_args);
}
catch (e) {
if (!(0, utils_1.isUnsupportedAbiVersionError)(e)) {
throw e;
}
return (0, contracts_1.tokenFactoryV22Contract)(provider, factoryAddress)
.methods.createToken(_params)
.sendDelayed(_args);
}
}
static decodeEvent(connection, factoryAddress, args) {
return (0, contracts_1.tokenFactoryContract)(connection, factoryAddress).decodeEvent(args);
}
static decodeTransaction(connection, factoryAddress, args) {
return (0, contracts_1.tokenFactoryContract)(connection, factoryAddress).decodeTransaction(args);
}
static decodeTransactionEvents(connection, factoryAddress, transaction) {
return (0, contracts_1.tokenFactoryContract)(connection, factoryAddress).decodeTransactionEvents({ transaction });
}
}
exports.TvmTokenFactoryUtils = TvmTokenFactoryUtils;