@broxus/js-core
Version:
MobX-based JavaScript Core library
41 lines (40 loc) • 2.03 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) {
return (0, contracts_1.tokenFactoryContract)(provider, factoryAddress)
.methods.createToken({
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,
})
.sendDelayed({
amount: (0, utils_1.toInt)(5, constants_1.DEFAULT_NATIVE_CURRENCY_DECIMALS),
bounce: true,
from: (0, utils_1.resolveTvmAddress)(params.remainingGasTo),
...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;