PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-coin-near/dist/src/lib

Просмотр файла: stakingActivateBuilder.js

"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
    var ownKeys = function(o) {
        ownKeys = Object.getOwnPropertyNames || function (o) {
            var ar = [];
            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
            return ar;
        };
        return ownKeys(o);
    };
    return function (mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
        __setModuleDefault(result, mod);
        return result;
    };
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.StakingActivateBuilder = void 0;
const sdk_core_1 = require("@bitgo/sdk-core");
const bignumber_js_1 = __importDefault(require("bignumber.js"));
const NearAPI = __importStar(require("near-api-js"));
const assert_1 = __importDefault(require("assert"));
const contractCallWrapper_1 = require("./contractCallWrapper");
const transactionBuilder_1 = require("./transactionBuilder");
const constants_1 = require("./constants");
class StakingActivateBuilder extends transactionBuilder_1.TransactionBuilder {
    constructor(_coinConfig) {
        super(_coinConfig);
        this.contractCallWrapper = new contractCallWrapper_1.ContractCallWrapper();
        this.contractCallWrapper.methodName = constants_1.StakingContractMethodNames.DepositAndStake;
        this.contractCallWrapper.args = {}; // on staking activate, the amount is on the deposit field.
    }
    get transactionType() {
        return sdk_core_1.TransactionType.StakingActivate;
    }
    /**
     * Initialize the transaction builder fields using the decoded transaction data
     *
     * @param {Transaction} tx the transaction data
     */
    initBuilder(tx) {
        super.initBuilder(tx);
        const functionCall = tx.nearTransaction.actions[0].functionCall;
        if (functionCall) {
            this.contractCallWrapper.deposit = functionCall.deposit.toString();
            this.contractCallWrapper.gas = functionCall.gas.toString();
        }
    }
    /**
     * Sets the gas of this transaction.
     *
     * @param {string} gas the gas of this transaction
     * @returns {TransactionBuilder} This transaction builder
     */
    gas(gas) {
        this.validateValue(new bignumber_js_1.default(gas));
        this.contractCallWrapper.gas = gas;
        return this;
    }
    /**
     * Sets the amount of this transaction.
     *
     * @param {string} amount the amount in the minimum unit (1 Near = 1e24 yoctos) of this transaction
     * @returns {TransactionBuilder} This transaction builder
     */
    amount(amount) {
        this.validateValue(new bignumber_js_1.default(amount));
        // In the staking contract call the amount must be on deposit instead of being a arg param.
        this.contractCallWrapper.deposit = amount;
        return this;
    }
    /** @inheritdoc */
    async buildImplementation() {
        const { methodName, args, gas, deposit } = this.contractCallWrapper.getParams();
        (0, assert_1.default)(gas, new sdk_core_1.BuildTransactionError('gas is required before building staking activate'));
        (0, assert_1.default)(deposit, new sdk_core_1.BuildTransactionError('amount is required before building staking activate'));
        super.actions([NearAPI.transactions.functionCall(methodName, args, BigInt(gas), BigInt(deposit))]);
        const tx = await super.buildImplementation();
        tx.setTransactionType(sdk_core_1.TransactionType.StakingActivate);
        return tx;
    }
}
exports.StakingActivateBuilder = StakingActivateBuilder;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ0FjdGl2YXRlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvc3Rha2luZ0FjdGl2YXRlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw4Q0FBeUU7QUFFekUsZ0VBQXFDO0FBQ3JDLHFEQUF1QztBQUN2QyxvREFBNEI7QUFFNUIsK0RBQTREO0FBQzVELDZEQUEwRDtBQUMxRCwyQ0FBeUQ7QUFFekQsTUFBYSxzQkFBdUIsU0FBUSx1Q0FBa0I7SUFHNUQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUkseUNBQW1CLEVBQUUsQ0FBQztRQUNyRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxHQUFHLHNDQUEwQixDQUFDLGVBQWUsQ0FBQztRQUNqRixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLDJEQUEyRDtJQUNqRyxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxlQUFlLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsRUFBZTtRQUN6QixLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUNoRSxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0QsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEdBQUcsQ0FBQyxHQUFXO1FBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxzQkFBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsTUFBYztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFDLDJGQUEyRjtRQUMzRixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEYsSUFBQSxnQkFBTSxFQUFDLEdBQUcsRUFBRSxJQUFJLGdDQUFxQixDQUFDLGtEQUFrRCxDQUFDLENBQUMsQ0FBQztRQUMzRixJQUFBLGdCQUFNLEVBQUMsT0FBTyxFQUFFLElBQUksZ0NBQXFCLENBQUMscURBQXFELENBQUMsQ0FBQyxDQUFDO1FBRWxHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkcsTUFBTSxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM3QyxFQUFFLENBQUMsa0JBQWtCLENBQUMsMEJBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN2RCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7Q0FDRjtBQWhFRCx3REFnRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCAqIGFzIE5lYXJBUEkgZnJvbSAnbmVhci1hcGktanMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5pbXBvcnQgeyBDb250cmFjdENhbGxXcmFwcGVyIH0gZnJvbSAnLi9jb250cmFjdENhbGxXcmFwcGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFN0YWtpbmdDb250cmFjdE1ldGhvZE5hbWVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY2xhc3MgU3Rha2luZ0FjdGl2YXRlQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgY29udHJhY3RDYWxsV3JhcHBlcjogQ29udHJhY3RDYWxsV3JhcHBlcjtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5jb250cmFjdENhbGxXcmFwcGVyID0gbmV3IENvbnRyYWN0Q2FsbFdyYXBwZXIoKTtcbiAgICB0aGlzLmNvbnRyYWN0Q2FsbFdyYXBwZXIubWV0aG9kTmFtZSA9IFN0YWtpbmdDb250cmFjdE1ldGhvZE5hbWVzLkRlcG9zaXRBbmRTdGFrZTtcbiAgICB0aGlzLmNvbnRyYWN0Q2FsbFdyYXBwZXIuYXJncyA9IHt9OyAvLyBvbiBzdGFraW5nIGFjdGl2YXRlLCB0aGUgYW1vdW50IGlzIG9uIHRoZSBkZXBvc2l0IGZpZWxkLlxuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdBY3RpdmF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgY29uc3QgZnVuY3Rpb25DYWxsID0gdHgubmVhclRyYW5zYWN0aW9uLmFjdGlvbnNbMF0uZnVuY3Rpb25DYWxsO1xuICAgIGlmIChmdW5jdGlvbkNhbGwpIHtcbiAgICAgIHRoaXMuY29udHJhY3RDYWxsV3JhcHBlci5kZXBvc2l0ID0gZnVuY3Rpb25DYWxsLmRlcG9zaXQudG9TdHJpbmcoKTtcbiAgICAgIHRoaXMuY29udHJhY3RDYWxsV3JhcHBlci5nYXMgPSBmdW5jdGlvbkNhbGwuZ2FzLnRvU3RyaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGdhcyBvZiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZ2FzIHRoZSBnYXMgb2YgdGhpcyB0cmFuc2FjdGlvblxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXJcbiAgICovXG4gIHB1YmxpYyBnYXMoZ2FzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihnYXMpKTtcbiAgICB0aGlzLmNvbnRyYWN0Q2FsbFdyYXBwZXIuZ2FzID0gZ2FzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGFtb3VudCBvZiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50IHRoZSBhbW91bnQgaW4gdGhlIG1pbmltdW0gdW5pdCAoMSBOZWFyID0gMWUyNCB5b2N0b3MpIG9mIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBwdWJsaWMgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoYW1vdW50KSk7XG4gICAgLy8gSW4gdGhlIHN0YWtpbmcgY29udHJhY3QgY2FsbCB0aGUgYW1vdW50IG11c3QgYmUgb24gZGVwb3NpdCBpbnN0ZWFkIG9mIGJlaW5nIGEgYXJnIHBhcmFtLlxuICAgIHRoaXMuY29udHJhY3RDYWxsV3JhcHBlci5kZXBvc2l0ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCB7IG1ldGhvZE5hbWUsIGFyZ3MsIGdhcywgZGVwb3NpdCB9ID0gdGhpcy5jb250cmFjdENhbGxXcmFwcGVyLmdldFBhcmFtcygpO1xuICAgIGFzc2VydChnYXMsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2dhcyBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcgc3Rha2luZyBhY3RpdmF0ZScpKTtcbiAgICBhc3NlcnQoZGVwb3NpdCwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignYW1vdW50IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZyBzdGFraW5nIGFjdGl2YXRlJykpO1xuXG4gICAgc3VwZXIuYWN0aW9ucyhbTmVhckFQSS50cmFuc2FjdGlvbnMuZnVuY3Rpb25DYWxsKG1ldGhvZE5hbWUsIGFyZ3MsIEJpZ0ludChnYXMpLCBCaWdJbnQoZGVwb3NpdCkpXSk7XG4gICAgY29uc3QgdHggPSBhd2FpdCBzdXBlci5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gICAgdHguc2V0VHJhbnNhY3Rpb25UeXBlKFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGUpO1xuICAgIHJldHVybiB0eDtcbiAgfVxufVxuIl19

Выполнить команду


Для локальной разработки. Не используйте в интернете!