PHP WebShell

Текущая директория: /opt/BitGoJS/modules/sdk-core/dist/src/bitgo/wallet

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

"use strict";
/* eslint no-redeclare: off */
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.buildParamKeys = exports.BuildParams = exports.BuildParamsOffchain = exports.BuildParamsStacks = exports.BuildParamsUTXO = void 0;
const t = __importStar(require("io-ts"));
const codecProps_1 = require("../utils/codecProps");
exports.BuildParamsUTXO = t.partial({
    /* deprecated. the change address type */
    addressType: t.unknown,
    /* the change address type */
    changeAddressType: t.unknown,
    /* a fixed change address */
    changeAddress: t.unknown,
    allowExternalChangeAddress: t.boolean,
    cpfpFeeRate: t.unknown,
    cpfpTxIds: t.unknown,
    unspents: t.unknown,
    minValue: t.unknown,
    minConfirms: t.unknown,
    maxValue: t.unknown,
    targetWalletUnspents: t.unknown,
    /* unspent selection strategy */
    strategy: t.unknown,
    strategyAllowFallback: t.unknown,
    noSplitChange: t.unknown,
    smallestChangeSplitSize: t.unknown,
    enforceMinConfirmsForChange: t.unknown,
    /* legacy or psbt */
    txFormat: t.unknown,
    maxChangeOutputs: t.unknown,
    /* rbf */
    rbfTxIds: t.array(t.string),
    isReplaceableByFee: t.boolean,
});
exports.BuildParamsStacks = t.partial({
    contractName: t.unknown,
    functionName: t.unknown,
    functionArgs: t.unknown,
});
exports.BuildParamsOffchain = t.partial({
    idfSignedTimestamp: t.unknown,
    idfVersion: t.unknown,
    idfUserId: t.unknown,
});
exports.BuildParams = t.exact(t.intersection([
    exports.BuildParamsUTXO,
    exports.BuildParamsStacks,
    exports.BuildParamsOffchain,
    t.partial({
        apiVersion: t.unknown,
        consolidateAddresses: t.unknown,
        consolidateId: t.unknown,
        comment: t.string,
        delayMs: t.unknown,
        fee: t.unknown,
        feeRate: t.unknown,
        feeMultiplier: t.unknown,
        enableTokens: t.unknown,
        gasLimit: t.unknown,
        gasPrice: t.unknown,
        hopParams: t.unknown,
        instant: t.unknown,
        lastLedgerSequence: t.unknown,
        ledgerSequenceDelta: t.unknown,
        maxFee: t.unknown,
        maxFeeRate: t.unknown,
        memo: t.unknown,
        transferId: t.unknown,
        message: t.unknown,
        numBlocks: t.unknown,
        nonce: t.unknown,
        pendingApprovalId: t.unknown,
        preview: t.unknown,
        previewPendingTxs: t.unknown,
        senderAddress: t.unknown,
        receiveAddress: t.unknown,
        recipients: t.unknown,
        reservation: t.unknown,
        refundOptions: t.unknown,
        sequenceId: t.unknown,
        sourceChain: t.unknown,
        destinationChain: t.unknown,
        trustlines: t.unknown,
        type: t.unknown,
        limit: t.unknown,
        timeBounds: t.unknown,
        startTime: t.unknown,
        stateProofKey: t.unknown,
        nonParticipation: t.unknown,
        validFromBlock: t.unknown,
        validToBlock: t.unknown,
        messageKey: t.unknown,
        stakingParams: t.unknown,
        stakingOptions: t.unknown,
        unstakingOptions: t.unknown,
        eip1559: t.unknown,
        keyregTxBase64: t.unknown,
        closeRemainderTo: t.unknown,
        tokenName: t.unknown,
        prebuildTx: t.unknown,
        // param to set emergency flag on a custodial transaction.
        // This transaction should be performed in less than 1 hour or it will fail.
        emergency: t.unknown,
    }),
]));
exports.buildParamKeys = (0, codecProps_1.getCodecProperties)(exports.BuildParams);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnVpbGRQYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vd2FsbGV0L0J1aWxkUGFyYW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw4QkFBOEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU5Qix5Q0FBMkI7QUFDM0Isb0RBQXlEO0FBRTVDLFFBQUEsZUFBZSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDdkMseUNBQXlDO0lBQ3pDLFdBQVcsRUFBRSxDQUFDLENBQUMsT0FBTztJQUN0Qiw2QkFBNkI7SUFDN0IsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLE9BQU87SUFDNUIsNEJBQTRCO0lBQzVCLGFBQWEsRUFBRSxDQUFDLENBQUMsT0FBTztJQUN4QiwwQkFBMEIsRUFBRSxDQUFDLENBQUMsT0FBTztJQUNyQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU87SUFDdEIsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ3BCLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTztJQUNuQixRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU87SUFDbkIsV0FBVyxFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ3RCLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTztJQUNuQixvQkFBb0IsRUFBRSxDQUFDLENBQUMsT0FBTztJQUMvQixnQ0FBZ0M7SUFDaEMsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ25CLHFCQUFxQixFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ2hDLGFBQWEsRUFBRSxDQUFDLENBQUMsT0FBTztJQUN4Qix1QkFBdUIsRUFBRSxDQUFDLENBQUMsT0FBTztJQUNsQywyQkFBMkIsRUFBRSxDQUFDLENBQUMsT0FBTztJQUN0QyxvQkFBb0I7SUFDcEIsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ25CLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQzNCLFNBQVM7SUFD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QUFDLE9BQU87UUFDekIsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPO1FBQ3ZCLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTztRQUNyQixhQUFhLEVBQUUsQ0FBQyxDQUFDLE9BQU87UUFDeEIsY0FBYyxFQUFFLENBQUMsQ0FBQyxPQUFPO1FBQ3pCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPO1FBQzNCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTztRQUNsQixjQUFjLEVBQUUsQ0FBQyxDQUFDLE9BQU87UUFDekIsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLE9BQU87UUFDM0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPO1FBQ3BCLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTztRQUNyQiwwREFBMEQ7UUFDMUQsNEVBQTRFO1FBQzVFLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTztLQUNyQixDQUFDO0NBQ0gsQ0FBQyxDQUNILENBQUM7QUFHVyxRQUFBLGNBQWMsR0FBRyxJQUFBLCtCQUFrQixFQUFDLG1CQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludCBuby1yZWRlY2xhcmU6IG9mZiAqL1xuXG5pbXBvcnQgKiBhcyB0IGZyb20gJ2lvLXRzJztcbmltcG9ydCB7IGdldENvZGVjUHJvcGVydGllcyB9IGZyb20gJy4uL3V0aWxzL2NvZGVjUHJvcHMnO1xuXG5leHBvcnQgY29uc3QgQnVpbGRQYXJhbXNVVFhPID0gdC5wYXJ0aWFsKHtcbiAgLyogZGVwcmVjYXRlZC4gdGhlIGNoYW5nZSBhZGRyZXNzIHR5cGUgKi9cbiAgYWRkcmVzc1R5cGU6IHQudW5rbm93bixcbiAgLyogdGhlIGNoYW5nZSBhZGRyZXNzIHR5cGUgKi9cbiAgY2hhbmdlQWRkcmVzc1R5cGU6IHQudW5rbm93bixcbiAgLyogYSBmaXhlZCBjaGFuZ2UgYWRkcmVzcyAqL1xuICBjaGFuZ2VBZGRyZXNzOiB0LnVua25vd24sXG4gIGFsbG93RXh0ZXJuYWxDaGFuZ2VBZGRyZXNzOiB0LmJvb2xlYW4sXG4gIGNwZnBGZWVSYXRlOiB0LnVua25vd24sXG4gIGNwZnBUeElkczogdC51bmtub3duLFxuICB1bnNwZW50czogdC51bmtub3duLFxuICBtaW5WYWx1ZTogdC51bmtub3duLFxuICBtaW5Db25maXJtczogdC51bmtub3duLFxuICBtYXhWYWx1ZTogdC51bmtub3duLFxuICB0YXJnZXRXYWxsZXRVbnNwZW50czogdC51bmtub3duLFxuICAvKiB1bnNwZW50IHNlbGVjdGlvbiBzdHJhdGVneSAqL1xuICBzdHJhdGVneTogdC51bmtub3duLFxuICBzdHJhdGVneUFsbG93RmFsbGJhY2s6IHQudW5rbm93bixcbiAgbm9TcGxpdENoYW5nZTogdC51bmtub3duLFxuICBzbWFsbGVzdENoYW5nZVNwbGl0U2l6ZTogdC51bmtub3duLFxuICBlbmZvcmNlTWluQ29uZmlybXNGb3JDaGFuZ2U6IHQudW5rbm93bixcbiAgLyogbGVnYWN5IG9yIHBzYnQgKi9cbiAgdHhGb3JtYXQ6IHQudW5rbm93bixcbiAgbWF4Q2hhbmdlT3V0cHV0czogdC51bmtub3duLFxuICAvKiByYmYgKi9cbiAgcmJmVHhJZHM6IHQuYXJyYXkodC5zdHJpbmcpLFxuICBpc1JlcGxhY2VhYmxlQnlGZWU6IHQuYm9vbGVhbixcbn0pO1xuXG5leHBvcnQgY29uc3QgQnVpbGRQYXJhbXNTdGFja3MgPSB0LnBhcnRpYWwoe1xuICBjb250cmFjdE5hbWU6IHQudW5rbm93bixcbiAgZnVuY3Rpb25OYW1lOiB0LnVua25vd24sXG4gIGZ1bmN0aW9uQXJnczogdC51bmtub3duLFxufSk7XG5cbmV4cG9ydCBjb25zdCBCdWlsZFBhcmFtc09mZmNoYWluID0gdC5wYXJ0aWFsKHtcbiAgaWRmU2lnbmVkVGltZXN0YW1wOiB0LnVua25vd24sXG4gIGlkZlZlcnNpb246IHQudW5rbm93bixcbiAgaWRmVXNlcklkOiB0LnVua25vd24sXG59KTtcblxuZXhwb3J0IGNvbnN0IEJ1aWxkUGFyYW1zID0gdC5leGFjdChcbiAgdC5pbnRlcnNlY3Rpb24oW1xuICAgIEJ1aWxkUGFyYW1zVVRYTyxcbiAgICBCdWlsZFBhcmFtc1N0YWNrcyxcbiAgICBCdWlsZFBhcmFtc09mZmNoYWluLFxuICAgIHQucGFydGlhbCh7XG4gICAgICBhcGlWZXJzaW9uOiB0LnVua25vd24sXG4gICAgICBjb25zb2xpZGF0ZUFkZHJlc3NlczogdC51bmtub3duLFxuICAgICAgY29uc29saWRhdGVJZDogdC51bmtub3duLFxuICAgICAgY29tbWVudDogdC5zdHJpbmcsXG4gICAgICBkZWxheU1zOiB0LnVua25vd24sXG4gICAgICBmZWU6IHQudW5rbm93bixcbiAgICAgIGZlZVJhdGU6IHQudW5rbm93bixcbiAgICAgIGZlZU11bHRpcGxpZXI6IHQudW5rbm93bixcbiAgICAgIGVuYWJsZVRva2VuczogdC51bmtub3duLFxuICAgICAgZ2FzTGltaXQ6IHQudW5rbm93bixcbiAgICAgIGdhc1ByaWNlOiB0LnVua25vd24sXG4gICAgICBob3BQYXJhbXM6IHQudW5rbm93bixcbiAgICAgIGluc3RhbnQ6IHQudW5rbm93bixcbiAgICAgIGxhc3RMZWRnZXJTZXF1ZW5jZTogdC51bmtub3duLFxuICAgICAgbGVkZ2VyU2VxdWVuY2VEZWx0YTogdC51bmtub3duLFxuICAgICAgbWF4RmVlOiB0LnVua25vd24sXG4gICAgICBtYXhGZWVSYXRlOiB0LnVua25vd24sXG4gICAgICBtZW1vOiB0LnVua25vd24sXG4gICAgICB0cmFuc2ZlcklkOiB0LnVua25vd24sXG4gICAgICBtZXNzYWdlOiB0LnVua25vd24sXG4gICAgICBudW1CbG9ja3M6IHQudW5rbm93bixcbiAgICAgIG5vbmNlOiB0LnVua25vd24sXG4gICAgICBwZW5kaW5nQXBwcm92YWxJZDogdC51bmtub3duLFxuICAgICAgcHJldmlldzogdC51bmtub3duLFxuICAgICAgcHJldmlld1BlbmRpbmdUeHM6IHQudW5rbm93bixcbiAgICAgIHNlbmRlckFkZHJlc3M6IHQudW5rbm93bixcbiAgICAgIHJlY2VpdmVBZGRyZXNzOiB0LnVua25vd24sXG4gICAgICByZWNpcGllbnRzOiB0LnVua25vd24sXG4gICAgICByZXNlcnZhdGlvbjogdC51bmtub3duLFxuICAgICAgcmVmdW5kT3B0aW9uczogdC51bmtub3duLFxuICAgICAgc2VxdWVuY2VJZDogdC51bmtub3duLFxuICAgICAgc291cmNlQ2hhaW46IHQudW5rbm93bixcbiAgICAgIGRlc3RpbmF0aW9uQ2hhaW46IHQudW5rbm93bixcbiAgICAgIHRydXN0bGluZXM6IHQudW5rbm93bixcbiAgICAgIHR5cGU6IHQudW5rbm93bixcbiAgICAgIGxpbWl0OiB0LnVua25vd24sXG4gICAgICB0aW1lQm91bmRzOiB0LnVua25vd24sXG4gICAgICBzdGFydFRpbWU6IHQudW5rbm93bixcbiAgICAgIHN0YXRlUHJvb2ZLZXk6IHQudW5rbm93bixcbiAgICAgIG5vblBhcnRpY2lwYXRpb246IHQudW5rbm93bixcbiAgICAgIHZhbGlkRnJvbUJsb2NrOiB0LnVua25vd24sXG4gICAgICB2YWxpZFRvQmxvY2s6IHQudW5rbm93bixcbiAgICAgIG1lc3NhZ2VLZXk6IHQudW5rbm93bixcbiAgICAgIHN0YWtpbmdQYXJhbXM6IHQudW5rbm93bixcbiAgICAgIHN0YWtpbmdPcHRpb25zOiB0LnVua25vd24sXG4gICAgICB1bnN0YWtpbmdPcHRpb25zOiB0LnVua25vd24sXG4gICAgICBlaXAxNTU5OiB0LnVua25vd24sXG4gICAgICBrZXlyZWdUeEJhc2U2NDogdC51bmtub3duLFxuICAgICAgY2xvc2VSZW1haW5kZXJUbzogdC51bmtub3duLFxuICAgICAgdG9rZW5OYW1lOiB0LnVua25vd24sXG4gICAgICBwcmVidWlsZFR4OiB0LnVua25vd24sXG4gICAgICAvLyBwYXJhbSB0byBzZXQgZW1lcmdlbmN5IGZsYWcgb24gYSBjdXN0b2RpYWwgdHJhbnNhY3Rpb24uXG4gICAgICAvLyBUaGlzIHRyYW5zYWN0aW9uIHNob3VsZCBiZSBwZXJmb3JtZWQgaW4gbGVzcyB0aGFuIDEgaG91ciBvciBpdCB3aWxsIGZhaWwuXG4gICAgICBlbWVyZ2VuY3k6IHQudW5rbm93bixcbiAgICB9KSxcbiAgXSlcbik7XG5cbmV4cG9ydCB0eXBlIEJ1aWxkUGFyYW1zID0gdC5UeXBlT2Y8dHlwZW9mIEJ1aWxkUGFyYW1zPjtcbmV4cG9ydCBjb25zdCBidWlsZFBhcmFtS2V5cyA9IGdldENvZGVjUHJvcGVydGllcyhCdWlsZFBhcmFtcyk7XG4iXX0=

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


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