PHP WebShell
Текущая директория: /opt/BitGoJS/modules/sdk-coin-hash/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 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.HashUtils(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.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, new utils_1.HashUtils(this._coinConfig.network.type)));
}
/** @inheritdoc */
getStakingActivateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingActivateBuilder(this._coinConfig, new utils_1.HashUtils(this._coinConfig.network.type)));
}
/** @inheritdoc */
getStakingDeactivateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingDeactivateBuilder(this._coinConfig, new utils_1.HashUtils(this._coinConfig.network.type)));
}
/** @inheritdoc */
getStakingWithdrawRewardsBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingWithdrawRewardsBuilder(this._coinConfig, new utils_1.HashUtils(this._coinConfig.network.type)));
}
getContractCallBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.ContractCallBuilder(this._coinConfig, new utils_1.HashUtils(this._coinConfig.network.type)));
}
getStakingRedelegateBuilder(tx) {
return this.initializeBuilder(tx, new abstract_cosmos_1.StakingRedelegateBuilder(this._coinConfig, new utils_1.HashUtils(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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFTZ0M7QUFDaEMsOENBQTBHO0FBRTFHLG1DQUFvQztBQUVwQyxNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSxtQ0FBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksaUJBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUM7WUFDSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsS0FBSywwQkFBZSxDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzVDLEtBQUssMEJBQWUsQ0FBQyxpQkFBaUI7b0JBQ3BDLE9BQU8sSUFBSSxDQUFDLDJCQUEyQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5QyxLQUFLLDBCQUFlLENBQUMsZUFBZTtvQkFDbEMsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ25ELEtBQUssMEJBQWUsQ0FBQyxZQUFZO29CQUMvQixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDekMsS0FBSywwQkFBZSxDQUFDLGlCQUFpQjtvQkFDcEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlDO29CQUNFLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzdELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx1QkFBdUIsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCLENBQUMsRUFBc0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQzNCLEVBQUUsRUFDRixJQUFJLHVDQUFxQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQzFGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHlCQUF5QixDQUFDLEVBQXNCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUMzQixFQUFFLEVBQ0YsSUFBSSx3Q0FBc0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksaUJBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUMzRixDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtJQUNsQiwyQkFBMkIsQ0FBQyxFQUFzQjtRQUNoRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FDM0IsRUFBRSxFQUNGLElBQUksMENBQXdCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLGlCQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDN0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0NBQWdDLENBQUMsRUFBc0I7UUFDckQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQzNCLEVBQUUsRUFDRixJQUFJLCtDQUE2QixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ2xHLENBQUM7SUFDSixDQUFDO0lBRUQsc0JBQXNCLENBQUMsRUFBc0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQzNCLEVBQUUsRUFDRixJQUFJLHFDQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3hGLENBQUM7SUFDSixDQUFDO0lBRUQsMkJBQTJCLENBQUMsRUFBc0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQzNCLEVBQUUsRUFDRixJQUFJLDBDQUF3QixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxpQkFBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQzdGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNPLGlCQUFpQixDQUFxQyxFQUFpQyxFQUFFLE9BQVU7UUFDM0csSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQS9GRCw4REErRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb3Ntb3NUcmFuc2FjdGlvbixcbiAgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIsXG4gIFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIsXG4gIFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcixcbiAgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIsXG4gIENvbnRyYWN0Q2FsbEJ1aWxkZXIsXG4gIFN0YWtpbmdSZWRlbGVnYXRlQnVpbGRlcixcbn0gZnJvbSAnQGJpdGdvL2Fic3RyYWN0LWNvc21vcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSGFzaFV0aWxzIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IHN0cmluZyk6IENvc21vc1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgY29uc3QgdHggPSBuZXcgQ29zbW9zVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZywgbmV3IEhhc2hVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpO1xuICAgIHR4LmVucmljaFRyYW5zYWN0aW9uRGV0YWlsc0Zyb21SYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZDpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGU6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdzpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkNvbnRyYWN0Q2FsbDpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRDb250cmFjdENhbGxCdWlsZGVyKHR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ1JlZGVsZWdhdGU6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyKHR4KTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb24nKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246ICcgKyBlLm1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRUcmFuc2ZlckJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IENvc21vc1RyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIoXG4gICAgICB0eCxcbiAgICAgIG5ldyBDb3Ntb3NUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgbmV3IEhhc2hVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nQWN0aXZhdGVCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBTdGFraW5nQWN0aXZhdGVCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcihcbiAgICAgIHR4LFxuICAgICAgbmV3IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgbmV3IEhhc2hVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIoXG4gICAgICB0eCxcbiAgICAgIG5ldyBTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgbmV3IEhhc2hVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0eD86IENvc21vc1RyYW5zYWN0aW9uKTogU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIodGhpcy5fY29pbkNvbmZpZywgbmV3IEhhc2hVdGlscyh0aGlzLl9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIGdldENvbnRyYWN0Q2FsbEJ1aWxkZXIodHg/OiBDb3Ntb3NUcmFuc2FjdGlvbik6IENvbnRyYWN0Q2FsbEJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgQ29udHJhY3RDYWxsQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnLCBuZXcgSGFzaFV0aWxzKHRoaXMuX2NvaW5Db25maWcubmV0d29yay50eXBlKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyKHR4PzogQ29zbW9zVHJhbnNhY3Rpb24pOiBTdGFraW5nUmVkZWxlZ2F0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKFxuICAgICAgdHgsXG4gICAgICBuZXcgU3Rha2luZ1JlZGVsZWdhdGVCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcsIG5ldyBIYXNoVXRpbHModGhpcy5fY29pbkNvbmZpZy5uZXR3b3JrLnR5cGUpKVxuICAgICk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0V2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBidWlsZGVyIHdpdGggdGhlIGdpdmVuIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7Q29zbW9zVHJhbnNhY3Rpb24gfCB1bmRlZmluZWR9IHR4IC0gdGhlIHRyYW5zYWN0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgYnVpbGRlclxuICAgKiBAcGFyYW0ge0Nvc21vc1RyYW5zYWN0aW9uQnVpbGRlcn0gYnVpbGRlciAtIHRoZSBidWlsZGVyIHRvIGJlIGluaXRpYWxpemVkXG4gICAqIEByZXR1cm5zIHtDb3Ntb3NUcmFuc2FjdGlvbkJ1aWxkZXJ9IHRoZSBidWlsZGVyIGluaXRpYWxpemVkXG4gICAqL1xuICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIENvc21vc1RyYW5zYWN0aW9uQnVpbGRlcj4odHg6IENvc21vc1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cbn1cbiJdfQ==Выполнить команду
Для локальной разработки. Не используйте в интернете!