PHP WebShell

Текущая директория: /opt/BitGoJS/modules/sdk-coin-rune/dist/src/lib

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

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TransactionBuilderFactory = void 0;
const abstract_cosmos_1 = require("@bitgo/abstract-cosmos");
const sdk_core_1 = require("@bitgo/sdk-core");
const transferBuilder_1 = require("./transferBuilder");
const utils_1 = require("./utils");
class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
    constructor(_coinConfig) {
        super(_coinConfig);
    }
    /** @inheritdoc */
    from(raw) {
        const tx = new abstract_cosmos_1.CosmosTransaction(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type));
        tx.enrichTransactionDetailsFromRawTransaction(raw);
        try {
            switch (tx.type) {
                case sdk_core_1.TransactionType.Send:
                    return this.getTransferBuilder(tx);
                case sdk_core_1.TransactionType.StakingActivate:
                    return this.getStakingActivateBuilder(tx);
                case sdk_core_1.TransactionType.StakingDeactivate:
                    return this.getStakingDeactivateBuilder(tx);
                case sdk_core_1.TransactionType.StakingWithdraw:
                    return this.getStakingWithdrawRewardsBuilder(tx);
                case sdk_core_1.TransactionType.StakingRedelegate:
                    return this.getStakingRedelegateBuilder(tx);
                default:
                    throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
            }
        }
        catch (e) {
            throw new sdk_core_1.InvalidTransactionError('Invalid transaction: ' + e.message);
        }
    }
    /** @inheritdoc */
    getTransferBuilder(tx) {
        return this.initializeBuilder(tx, new transferBuilder_1.RuneTransferBuilder(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type)));
    }
    /** @inheritdoc */
    getStakingActivateBuilder(tx) {
        return this.initializeBuilder(tx, new abstract_cosmos_1.StakingActivateBuilder(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type)));
    }
    /** @inheritdoc */
    getStakingDeactivateBuilder(tx) {
        return this.initializeBuilder(tx, new abstract_cosmos_1.StakingDeactivateBuilder(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type)));
    }
    /** @inheritdoc */
    getStakingWithdrawRewardsBuilder(tx) {
        return this.initializeBuilder(tx, new abstract_cosmos_1.StakingWithdrawRewardsBuilder(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type)));
    }
    getStakingRedelegateBuilder(tx) {
        return this.initializeBuilder(tx, new abstract_cosmos_1.StakingRedelegateBuilder(this._coinConfig, new utils_1.RuneUtils(this._coinConfig.network.type)));
    }
    /** @inheritdoc */
    getWalletInitializationBuilder() {
        throw new Error('Method not implemented.');
    }
    /**
     * Initialize the builder with the given transaction
     *
     * @param {CosmosTransaction | undefined} tx - the transaction used to initialize the builder
     * @param {CosmosTransactionBuilder} builder - the builder to be initialized
     * @returns {CosmosTransactionBuilder} the builder initialized
     */
    initializeBuilder(tx, builder) {
        if (tx) {
            builder.initBuilder(tx);
        }
        return builder;
    }
}
exports.TransactionBuilderFactory = TransactionBuilderFactory;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFRZ0M7QUFDaEMsOENBQTBHO0FBRTFHLHVEQUF3RDtBQUN4RCxtQ0FBb0M7QUFFcEMsTUFBYSx5QkFBMEIsU0FBUSx3Q0FBNkI7SUFDMUUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixJQUFJLENBQUMsR0FBVztRQUNkLE1BQU0sRUFBRSxHQUFHLElBQUksbUNBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLGlCQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqRyxFQUFFLENBQUMsMENBQTBDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDO1lBQ0gsUUFBUSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssMEJBQWUsQ0FBQyxJQUFJO29CQUN2QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDckMsS0FBSywwQkFBZSxDQUFDLGVBQWU7b0JBQ2xDLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM1QyxLQUFLLDBCQUFlLENBQUMsaUJBQWlCO29CQUNwQyxPQUFPLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDOUMsS0FBSywwQkFBZSxDQUFDLGVBQWU7b0JBQ2xDLE9BQU8sSUFBSSxDQUFDLGdDQUFnQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRCxLQUFLLDBCQUFlLENBQUMsaUJBQWlCO29CQUNwQyxPQUFPLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDOUM7b0JBQ0UsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDN0QsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHVCQUF1QixHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6RSxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixrQkFBa0IsQ0FBQyxFQUFzQjtRQUN2QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FDM0IsRUFBRSxFQUNGLElBQUkscUNBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLGlCQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDeEYsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIseUJBQXlCLENBQUMsRUFBc0I7UUFDOUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQzNCLEVBQUUsRUFDRixJQUFJLHdDQUFzQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQzNGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDJCQUEyQixDQUFDLEVBQXNCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUMzQixFQUFFLEVBQ0YsSUFBSSwwQ0FBd0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksaUJBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUM3RixDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtJQUNsQixnQ0FBZ0MsQ0FBQyxFQUFzQjtRQUNyRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FDM0IsRUFBRSxFQUNGLElBQUksK0NBQTZCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLGlCQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDbEcsQ0FBQztJQUNKLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxFQUFzQjtRQUNoRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FDM0IsRUFBRSxFQUNGLElBQUksMENBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLGlCQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDN0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQThCO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ08saUJBQWlCLENBQXFDLEVBQWlDLEVBQUUsT0FBVTtRQUMzRyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1AsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBdEZELDhEQXNGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvc21vc1RyYW5zYWN0aW9uLFxuICBDb3Ntb3NUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIENvc21vc1RyYW5zZmVyQnVpbGRlcixcbiAgU3Rha2luZ0FjdGl2YXRlQnVpbGRlcixcbiAgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyLFxuICBTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcixcbiAgU3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyLFxufSBmcm9tICdAYml0Z28vYWJzdHJhY3QtY29zbW9zJztcbmltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBSdW5lVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgUnVuZVV0aWxzIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IHN0cmluZyk6IENvc21vc1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgY29uc3QgdHggPSBuZXcgQ29zbW9zVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZywgbmV3IFJ1bmVVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpO1xuICAgIHR4LmVucmljaFRyYW5zYWN0aW9uRGV0YWlsc0Zyb21SYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZDpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGU6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdzpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdSZWRlbGVnYXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiAnICsgZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgUnVuZVRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCBuZXcgUnVuZVV0aWxzKHRoaXMuX2NvaW5Db25maWcubmV0d29yay50eXBlKSlcbiAgICApO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgU3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCBuZXcgUnVuZVV0aWxzKHRoaXMuX2NvaW5Db25maWcubmV0d29yay50eXBlKSlcbiAgICApO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0eD86IENvc21vc1RyYW5zYWN0aW9uKTogU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcihcbiAgICAgIHR4LFxuICAgICAgbmV3IFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCBuZXcgUnVuZVV0aWxzKHRoaXMuX2NvaW5Db25maWcubmV0d29yay50eXBlKSlcbiAgICApO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIoXG4gICAgICB0eCxcbiAgICAgIG5ldyBTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCBuZXcgUnVuZVV0aWxzKHRoaXMuX2NvaW5Db25maWcubmV0d29yay50eXBlKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBTdGFraW5nUmVkZWxlZ2F0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgU3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIG5ldyBSdW5lVXRpbHModGhpcy5fY29pbkNvbmZpZy5uZXR3b3JrLnR5cGUpKVxuICAgICk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0V2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBidWlsZGVyIHdpdGggdGhlIGdpdmVuIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7Q29zbW9zVHJhbnNhY3Rpb24gfCB1bmRlZmluZWR9IHR4IC0gdGhlIHRyYW5zYWN0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgYnVpbGRlclxuICAgKiBAcGFyYW0ge0Nvc21vc1RyYW5zYWN0aW9uQnVpbGRlcn0gYnVpbGRlciAtIHRoZSBidWlsZGVyIHRvIGJlIGluaXRpYWxpemVkXG4gICAqIEByZXR1cm5zIHtDb3Ntb3NUcmFuc2FjdGlvbkJ1aWxkZXJ9IHRoZSBidWlsZGVyIGluaXRpYWxpemVkXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIENvc21vc1RyYW5zYWN0aW9uQnVpbGRlcj4odHg6IENvc21vc1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cbn1cbiJdfQ==

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


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