PHP WebShell
Текущая директория: /opt/BitGoJS/modules/sdk-coin-init/dist/src/lib
Просмотр файла: transactionBuilderFactory.js
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
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 utils_1 = __importDefault(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, utils_1.default);
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.ContractCall:
return this.getContractCallBuilder(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 abstract_cosmos_1.CosmosTransferBuilder(this._coinConfig, utils_1.default));
}
/** @inheritdoc */
getStakingActivateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingActivateBuilder(this._coinConfig, utils_1.default));
}
/** @inheritdoc */
getStakingDeactivateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingDeactivateBuilder(this._coinConfig, utils_1.default));
}
/** @inheritdoc */
getStakingWithdrawRewardsBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingWithdrawRewardsBuilder(this._coinConfig, utils_1.default));
}
getContractCallBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.ContractCallBuilder(this._coinConfig, utils_1.default));
}
getStakingRedelegateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingRedelegateBuilder(this._coinConfig, utils_1.default));
}
/** @inheritdoc */
getWalletInitializationBuilder() {
throw new Error('Method not implemented.');
}
/**
* Initialize the builder with the given transaction
*
* @param {Transaction | undefined} tx - the transaction used to initialize the builder
* @param {TransactionBuilder} builder - the builder to be initialized
* @returns {TransactionBuilder} the builder initialized
*/
initializeBuilder(tx, builder) {
if (tx) {
builder.initBuilder(tx);
}
return builder;
}
}
exports.TransactionBuilderFactory = TransactionBuilderFactory;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw0REFTZ0M7QUFDaEMsOENBQTBHO0FBRTFHLG9EQUE0QjtBQUU1QixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSxtQ0FBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGVBQUssQ0FBQyxDQUFDO1FBQzFELEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUM7WUFDSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsS0FBSywwQkFBZSxDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzVDLEtBQUssMEJBQWUsQ0FBQyxpQkFBaUI7b0JBQ3BDLE9BQU8sSUFBSSxDQUFDLDJCQUEyQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5QyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ25ELEtBQUssMEJBQWUsQ0FBQyxZQUFZO29CQUMvQixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDekMsS0FBSywwQkFBZSxDQUFDLGlCQUFpQjtvQkFDcEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlDO29CQUNFLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzdELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx1QkFBdUIsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCLENBQUMsRUFBc0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksdUNBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIseUJBQXlCLENBQUMsRUFBc0I7UUFDOUMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksd0NBQXNCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIsMkJBQTJCLENBQUMsRUFBc0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksMENBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDRCxrQkFBa0I7SUFDbEIsZ0NBQWdDLENBQUMsRUFBc0I7UUFDckQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksK0NBQTZCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxFQUFzQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxxQ0FBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGVBQUssQ0FBQyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELDJCQUEyQixDQUFDLEVBQXNCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLDBDQUF3QixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsZUFBSyxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLGlCQUFpQixDQUFxQyxFQUFpQyxFQUFFLE9BQVU7UUFDekcsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQTFFRCw4REEwRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb3Ntb3NUcmFuc2FjdGlvbixcbiAgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIsXG4gIFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIsXG4gIFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcixcbiAgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIsXG4gIENvbnRyYWN0Q2FsbEJ1aWxkZXIsXG4gIFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcixcbn0gZnJvbSAnQGJpdGdvL2Fic3RyYWN0LWNvc21vcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGZyb20ocmF3OiBzdHJpbmcpOiBDb3Ntb3NUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIGNvbnN0IHR4ID0gbmV3IENvc21vc1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKTtcbiAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICB0cnkge1xuICAgICAgc3dpdGNoICh0eC50eXBlKSB7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKHR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVhY3RpdmF0ZTpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5Db250cmFjdENhbGw6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29udHJhY3RDYWxsQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdSZWRlbGVnYXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiAnICsgZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgQ29zbW9zVHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKSk7XG4gIH1cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgU3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCB1dGlscykpO1xuICB9XG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgdXRpbHMpKTtcbiAgfVxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0U3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIHV0aWxzKSk7XG4gIH1cblxuICBnZXRDb250cmFjdENhbGxCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBDb250cmFjdENhbGxCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IENvbnRyYWN0Q2FsbEJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgdXRpbHMpKTtcbiAgfVxuXG4gIGdldFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0eD86IENvc21vc1RyYW5zYWN0aW9uKTogU3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCB1dGlscykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQnVpbGRlcjxUIGV4dGVuZHMgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyPih0eDogQ29zbW9zVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxufVxuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!