PHP WebShell

Текущая директория: /opt/BitGoJS/modules/utxo-staking/dist/test/unit/babylon

Просмотр файла: vendor.utils.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;
    };
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.getBitGoUtxoStakingMsgCreateBtcDelegation = getBitGoUtxoStakingMsgCreateBtcDelegation;
exports.getVendorMsgCreateBtcDelegation = getVendorMsgCreateBtcDelegation;
const vendor = __importStar(require("@bitgo/babylonlabs-io-btc-staking-ts"));
const babylonProtobuf = __importStar(require("@babylonlabs-io/babylon-proto-ts"));
const address_1 = require("bitcoinjs-lib/src/address");
const babylonlabs_io_btc_staking_ts_1 = require("@bitgo/babylonlabs-io-btc-staking-ts");
const babylon_1 = require("../../../src/babylon");
const key_utils_1 = require("./key.utils");
async function getBitGoUtxoStakingMsgCreateBtcDelegation(network, stakerKey, finalityProvider, descriptorBuilder, stakingParams, changeAddress, amount, utxo, feeRateSatB, blockHeight) {
    return await (0, babylon_1.createUnsignedPreStakeRegistrationBabylonTransactionWithBtcProvider)((0, babylon_1.getBtcProviderForECKey)(descriptorBuilder, stakerKey), network, {
        address: changeAddress,
        publicKeyNoCoordHex: (0, key_utils_1.getXOnlyPubkey)(stakerKey).toString('hex'),
    }, {
        finalityProviderPkNoCoordHex: (0, key_utils_1.getXOnlyPubkey)(finalityProvider).toString('hex'),
        stakingAmountSat: amount,
        stakingTimelock: (0, babylonlabs_io_btc_staking_ts_1.getBabylonParamByBtcHeight)(blockHeight, stakingParams).minStakingTimeBlocks,
    }, 800000, [utxo], feeRateSatB, (0, address_1.toBech32)(Buffer.from('test'), 0, 'bbn'), stakingParams);
}
async function getVendorMsgCreateBtcDelegation(network, stakerKey, finalityProvider, descriptorBuilder, stakingParams, changeAddress, amount, utxo, feeRateSatB, blockHeight) {
    const babylonProvider = {
        async signTransaction(signingStep, msg) {
            // return unsigned payload
            return babylonProtobuf.btcstakingtx.MsgCreateBTCDelegation.encode(msg.value).finish();
        },
    };
    const manager = new vendor.BabylonBtcStakingManager(network, stakingParams, (0, babylon_1.getBtcProviderForECKey)(descriptorBuilder, stakerKey), babylonProvider);
    const result = await manager.preStakeRegistrationBabylonTransaction({
        address: changeAddress,
        publicKeyNoCoordHex: (0, key_utils_1.getXOnlyPubkey)(stakerKey).toString('hex'),
    }, {
        finalityProviderPkNoCoordHex: (0, key_utils_1.getXOnlyPubkey)(finalityProvider).toString('hex'),
        stakingAmountSat: amount,
        stakingTimelock: (0, babylonlabs_io_btc_staking_ts_1.getBabylonParamByBtcHeight)(blockHeight, stakingParams).minStakingTimeBlocks,
    }, blockHeight, [utxo], feeRateSatB, (0, address_1.toBech32)(Buffer.from('test'), 0, 'bbn'));
    return {
        unsignedDelegationMsg: {
            typeUrl: '/babylon.btcstaking.v1.MsgCreateBTCDelegation',
            value: babylonProtobuf.btcstakingtx.MsgCreateBTCDelegation.decode(result.signedBabylonTx),
        },
        stakingTx: result.stakingTx,
    };
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9yLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L2JhYnlsb24vdmVuZG9yLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJBLDhGQThCQztBQUVELDBFQWtEQztBQXJHRCw2RUFBK0Q7QUFDL0Qsa0ZBQW9FO0FBQ3BFLHVEQUFxRDtBQUNyRCx3RkFBa0Y7QUFFbEYsa0RBSzhCO0FBRTlCLDJDQUE2QztBQU90QyxLQUFLLFVBQVUseUNBQXlDLENBQzdELE9BQTZCLEVBQzdCLFNBQTBCLEVBQzFCLGdCQUFpQyxFQUNqQyxpQkFBMkMsRUFDM0MsYUFBOEMsRUFDOUMsYUFBcUIsRUFDckIsTUFBYyxFQUNkLElBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLFdBQW1CO0lBRW5CLE9BQU8sTUFBTSxJQUFBLDZFQUFtRSxFQUM5RSxJQUFBLGdDQUFzQixFQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQyxFQUNwRCxPQUFPLEVBQ1A7UUFDRSxPQUFPLEVBQUUsYUFBYTtRQUN0QixtQkFBbUIsRUFBRSxJQUFBLDBCQUFjLEVBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztLQUMvRCxFQUNEO1FBQ0UsNEJBQTRCLEVBQUUsSUFBQSwwQkFBYyxFQUFDLGdCQUFnQixDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUM5RSxnQkFBZ0IsRUFBRSxNQUFNO1FBQ3hCLGVBQWUsRUFBRSxJQUFBLDBEQUEwQixFQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQyxvQkFBb0I7S0FDN0YsRUFDRCxNQUFPLEVBQ1AsQ0FBQyxJQUFJLENBQUMsRUFDTixXQUFXLEVBQ1gsSUFBQSxrQkFBUSxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUN2QyxhQUFhLENBQ2QsQ0FBQztBQUNKLENBQUM7QUFFTSxLQUFLLFVBQVUsK0JBQStCLENBQ25ELE9BQTZCLEVBQzdCLFNBQTBCLEVBQzFCLGdCQUFpQyxFQUNqQyxpQkFBMkMsRUFDM0MsYUFBOEMsRUFDOUMsYUFBcUIsRUFDckIsTUFBYyxFQUNkLElBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLFdBQW1CO0lBRW5CLE1BQU0sZUFBZSxHQUEyQjtRQUM5QyxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxHQUFHO1lBQ3BDLDBCQUEwQjtZQUMxQixPQUFPLGVBQWUsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUMvRCxHQUFHLENBQUMsS0FBNEQsQ0FDakUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNiLENBQUM7S0FDRixDQUFDO0lBQ0YsTUFBTSxPQUFPLEdBQUcsSUFBSSxNQUFNLENBQUMsd0JBQXdCLENBQ2pELE9BQU8sRUFDUCxhQUFhLEVBQ2IsSUFBQSxnQ0FBc0IsRUFBQyxpQkFBaUIsRUFBRSxTQUFTLENBQUMsRUFDcEQsZUFBZSxDQUNoQixDQUFDO0lBRUYsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsc0NBQXNDLENBQ2pFO1FBQ0UsT0FBTyxFQUFFLGFBQWE7UUFDdEIsbUJBQW1CLEVBQUUsSUFBQSwwQkFBYyxFQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7S0FDL0QsRUFDRDtRQUNFLDRCQUE0QixFQUFFLElBQUEsMEJBQWMsRUFBQyxnQkFBZ0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7UUFDOUUsZ0JBQWdCLEVBQUUsTUFBTTtRQUN4QixlQUFlLEVBQUUsSUFBQSwwREFBMEIsRUFBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUMsb0JBQW9CO0tBQzdGLEVBQ0QsV0FBVyxFQUNYLENBQUMsSUFBSSxDQUFDLEVBQ04sV0FBVyxFQUNYLElBQUEsa0JBQVEsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FDeEMsQ0FBQztJQUVGLE9BQU87UUFDTCxxQkFBcUIsRUFBRTtZQUNyQixPQUFPLEVBQUUsK0NBQStDO1lBQ3hELEtBQUssRUFBRSxlQUFlLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDO1NBQzFGO1FBQ0QsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO0tBQzVCLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYml0Y29pbmpzbGliIGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0IHsgRUNQYWlySW50ZXJmYWNlIH0gZnJvbSAnQGJpdGdvL3V0eG8tbGliJztcbmltcG9ydCAqIGFzIHZlbmRvciBmcm9tICdAYml0Z28vYmFieWxvbmxhYnMtaW8tYnRjLXN0YWtpbmctdHMnO1xuaW1wb3J0ICogYXMgYmFieWxvblByb3RvYnVmIGZyb20gJ0BiYWJ5bG9ubGFicy1pby9iYWJ5bG9uLXByb3RvLXRzJztcbmltcG9ydCB7IHRvQmVjaDMyIH0gZnJvbSAnYml0Y29pbmpzLWxpYi9zcmMvYWRkcmVzcyc7XG5pbXBvcnQgeyBnZXRCYWJ5bG9uUGFyYW1CeUJ0Y0hlaWdodCB9IGZyb20gJ0BiaXRnby9iYWJ5bG9ubGFicy1pby1idGMtc3Rha2luZy10cyc7XG5cbmltcG9ydCB7XG4gIEJhYnlsb25EZXNjcmlwdG9yQnVpbGRlcixcbiAgY3JlYXRlVW5zaWduZWRQcmVTdGFrZVJlZ2lzdHJhdGlvbkJhYnlsb25UcmFuc2FjdGlvbldpdGhCdGNQcm92aWRlcixcbiAgZ2V0QnRjUHJvdmlkZXJGb3JFQ0tleSxcbiAgVmFsdWVXaXRoVHlwZVVybCxcbn0gZnJvbSAnLi4vLi4vLi4vc3JjL2JhYnlsb24nO1xuXG5pbXBvcnQgeyBnZXRYT25seVB1YmtleSB9IGZyb20gJy4va2V5LnV0aWxzJztcblxudHlwZSBSZXN1bHQgPSB7XG4gIHVuc2lnbmVkRGVsZWdhdGlvbk1zZzogVmFsdWVXaXRoVHlwZVVybDxiYWJ5bG9uUHJvdG9idWYuYnRjc3Rha2luZ3R4Lk1zZ0NyZWF0ZUJUQ0RlbGVnYXRpb24+O1xuICBzdGFraW5nVHg6IGJpdGNvaW5qc2xpYi5UcmFuc2FjdGlvbjtcbn07XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCaXRHb1V0eG9TdGFraW5nTXNnQ3JlYXRlQnRjRGVsZWdhdGlvbihcbiAgbmV0d29yazogYml0Y29pbmpzbGliLk5ldHdvcmssXG4gIHN0YWtlcktleTogRUNQYWlySW50ZXJmYWNlLFxuICBmaW5hbGl0eVByb3ZpZGVyOiBFQ1BhaXJJbnRlcmZhY2UsXG4gIGRlc2NyaXB0b3JCdWlsZGVyOiBCYWJ5bG9uRGVzY3JpcHRvckJ1aWxkZXIsXG4gIHN0YWtpbmdQYXJhbXM6IHZlbmRvci5WZXJzaW9uZWRTdGFraW5nUGFyYW1zW10sXG4gIGNoYW5nZUFkZHJlc3M6IHN0cmluZyxcbiAgYW1vdW50OiBudW1iZXIsXG4gIHV0eG86IHZlbmRvci5VVFhPLFxuICBmZWVSYXRlU2F0QjogbnVtYmVyLFxuICBibG9ja0hlaWdodDogbnVtYmVyXG4pOiBQcm9taXNlPFJlc3VsdD4ge1xuICByZXR1cm4gYXdhaXQgY3JlYXRlVW5zaWduZWRQcmVTdGFrZVJlZ2lzdHJhdGlvbkJhYnlsb25UcmFuc2FjdGlvbldpdGhCdGNQcm92aWRlcihcbiAgICBnZXRCdGNQcm92aWRlckZvckVDS2V5KGRlc2NyaXB0b3JCdWlsZGVyLCBzdGFrZXJLZXkpLFxuICAgIG5ldHdvcmssXG4gICAge1xuICAgICAgYWRkcmVzczogY2hhbmdlQWRkcmVzcyxcbiAgICAgIHB1YmxpY0tleU5vQ29vcmRIZXg6IGdldFhPbmx5UHVia2V5KHN0YWtlcktleSkudG9TdHJpbmcoJ2hleCcpLFxuICAgIH0sXG4gICAge1xuICAgICAgZmluYWxpdHlQcm92aWRlclBrTm9Db29yZEhleDogZ2V0WE9ubHlQdWJrZXkoZmluYWxpdHlQcm92aWRlcikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgc3Rha2luZ0Ftb3VudFNhdDogYW1vdW50LFxuICAgICAgc3Rha2luZ1RpbWVsb2NrOiBnZXRCYWJ5bG9uUGFyYW1CeUJ0Y0hlaWdodChibG9ja0hlaWdodCwgc3Rha2luZ1BhcmFtcykubWluU3Rha2luZ1RpbWVCbG9ja3MsXG4gICAgfSxcbiAgICA4MDBfMDAwLFxuICAgIFt1dHhvXSxcbiAgICBmZWVSYXRlU2F0QixcbiAgICB0b0JlY2gzMihCdWZmZXIuZnJvbSgndGVzdCcpLCAwLCAnYmJuJyksXG4gICAgc3Rha2luZ1BhcmFtc1xuICApO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0VmVuZG9yTXNnQ3JlYXRlQnRjRGVsZWdhdGlvbihcbiAgbmV0d29yazogYml0Y29pbmpzbGliLk5ldHdvcmssXG4gIHN0YWtlcktleTogRUNQYWlySW50ZXJmYWNlLFxuICBmaW5hbGl0eVByb3ZpZGVyOiBFQ1BhaXJJbnRlcmZhY2UsXG4gIGRlc2NyaXB0b3JCdWlsZGVyOiBCYWJ5bG9uRGVzY3JpcHRvckJ1aWxkZXIsXG4gIHN0YWtpbmdQYXJhbXM6IHZlbmRvci5WZXJzaW9uZWRTdGFraW5nUGFyYW1zW10sXG4gIGNoYW5nZUFkZHJlc3M6IHN0cmluZyxcbiAgYW1vdW50OiBudW1iZXIsXG4gIHV0eG86IHZlbmRvci5VVFhPLFxuICBmZWVSYXRlU2F0QjogbnVtYmVyLFxuICBibG9ja0hlaWdodDogbnVtYmVyXG4pOiBQcm9taXNlPFJlc3VsdD4ge1xuICBjb25zdCBiYWJ5bG9uUHJvdmlkZXI6IHZlbmRvci5CYWJ5bG9uUHJvdmlkZXIgPSB7XG4gICAgYXN5bmMgc2lnblRyYW5zYWN0aW9uKHNpZ25pbmdTdGVwLCBtc2cpIHtcbiAgICAgIC8vIHJldHVybiB1bnNpZ25lZCBwYXlsb2FkXG4gICAgICByZXR1cm4gYmFieWxvblByb3RvYnVmLmJ0Y3N0YWtpbmd0eC5Nc2dDcmVhdGVCVENEZWxlZ2F0aW9uLmVuY29kZShcbiAgICAgICAgbXNnLnZhbHVlIGFzIGJhYnlsb25Qcm90b2J1Zi5idGNzdGFraW5ndHguTXNnQ3JlYXRlQlRDRGVsZWdhdGlvblxuICAgICAgKS5maW5pc2goKTtcbiAgICB9LFxuICB9O1xuICBjb25zdCBtYW5hZ2VyID0gbmV3IHZlbmRvci5CYWJ5bG9uQnRjU3Rha2luZ01hbmFnZXIoXG4gICAgbmV0d29yayxcbiAgICBzdGFraW5nUGFyYW1zLFxuICAgIGdldEJ0Y1Byb3ZpZGVyRm9yRUNLZXkoZGVzY3JpcHRvckJ1aWxkZXIsIHN0YWtlcktleSksXG4gICAgYmFieWxvblByb3ZpZGVyXG4gICk7XG5cbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgbWFuYWdlci5wcmVTdGFrZVJlZ2lzdHJhdGlvbkJhYnlsb25UcmFuc2FjdGlvbihcbiAgICB7XG4gICAgICBhZGRyZXNzOiBjaGFuZ2VBZGRyZXNzLFxuICAgICAgcHVibGljS2V5Tm9Db29yZEhleDogZ2V0WE9ubHlQdWJrZXkoc3Rha2VyS2V5KS50b1N0cmluZygnaGV4JyksXG4gICAgfSxcbiAgICB7XG4gICAgICBmaW5hbGl0eVByb3ZpZGVyUGtOb0Nvb3JkSGV4OiBnZXRYT25seVB1YmtleShmaW5hbGl0eVByb3ZpZGVyKS50b1N0cmluZygnaGV4JyksXG4gICAgICBzdGFraW5nQW1vdW50U2F0OiBhbW91bnQsXG4gICAgICBzdGFraW5nVGltZWxvY2s6IGdldEJhYnlsb25QYXJhbUJ5QnRjSGVpZ2h0KGJsb2NrSGVpZ2h0LCBzdGFraW5nUGFyYW1zKS5taW5TdGFraW5nVGltZUJsb2NrcyxcbiAgICB9LFxuICAgIGJsb2NrSGVpZ2h0LFxuICAgIFt1dHhvXSxcbiAgICBmZWVSYXRlU2F0QixcbiAgICB0b0JlY2gzMihCdWZmZXIuZnJvbSgndGVzdCcpLCAwLCAnYmJuJylcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIHVuc2lnbmVkRGVsZWdhdGlvbk1zZzoge1xuICAgICAgdHlwZVVybDogJy9iYWJ5bG9uLmJ0Y3N0YWtpbmcudjEuTXNnQ3JlYXRlQlRDRGVsZWdhdGlvbicsXG4gICAgICB2YWx1ZTogYmFieWxvblByb3RvYnVmLmJ0Y3N0YWtpbmd0eC5Nc2dDcmVhdGVCVENEZWxlZ2F0aW9uLmRlY29kZShyZXN1bHQuc2lnbmVkQmFieWxvblR4KSxcbiAgICB9LFxuICAgIHN0YWtpbmdUeDogcmVzdWx0LnN0YWtpbmdUeCxcbiAgfTtcbn1cbiJdfQ==

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


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