PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-coin-dot/dist/src/lib
Просмотр файла: txnSchema.js
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ClaimTransactionSchema = exports.WithdrawUnstakedTransactionSchema = exports.UnstakeTransactionSchema = exports.ProxyTransactionSchema = exports.BatchTransactionSchema = exports.AnonymousAddressInitializationSchema = exports.AddressInitializationSchema = exports.StakeTransactionSchema = exports.TransferAllTransactionSchema = exports.TransferTransactionSchema = exports.SignedTransactionSchema = exports.SigningPayloadTransactionSchema = exports.BaseTransactionSchema = void 0;
const joi_1 = __importDefault(require("joi"));
const utils_1 = __importDefault(require("./utils"));
const addressSchema = joi_1.default.string().custom((addr) => utils_1.default.isValidAddress(addr));
const proxyTypes = [
'Any',
'NonTransfer',
'Governance',
'Staking',
'UnusedSudoBalances',
'IdentityJudgement',
'CancelProxy',
];
exports.BaseTransactionSchema = joi_1.default.object({
sender: addressSchema.required(),
blockNumber: joi_1.default.number().required(),
blockHash: joi_1.default.string().required(),
genesisHash: joi_1.default.string().required(),
specVersion: joi_1.default.number().required(),
specName: joi_1.default.string().valid('kusama', 'polkadot', 'westend', 'statemint', 'statemine').required(),
transactionVersion: joi_1.default.number().required(),
chainName: joi_1.default.string().required(),
eraPeriod: joi_1.default.number().required(),
nonce: joi_1.default.number().required(),
tip: joi_1.default.number().optional(),
});
exports.SigningPayloadTransactionSchema = joi_1.default.object({
eraPeriod: joi_1.default.number().optional(),
blockHash: joi_1.default.string().required(),
nonce: joi_1.default.number().required(),
tip: joi_1.default.number().optional(),
});
exports.SignedTransactionSchema = joi_1.default.object({
sender: addressSchema.required(),
nonce: joi_1.default.number().required(),
eraPeriod: joi_1.default.number().optional(),
tip: joi_1.default.number().optional(),
});
exports.TransferTransactionSchema = joi_1.default.object({
amount: joi_1.default.string().required(),
to: addressSchema.required(),
});
exports.TransferAllTransactionSchema = joi_1.default.object({
to: addressSchema.required(),
});
const CreateStakeTransactionSchema = joi_1.default.object({
value: joi_1.default.string().required(),
controller: joi_1.default.string().optional(),
payee: [
joi_1.default.string(),
joi_1.default.object({
account: joi_1.default.string().optional(),
controller: joi_1.default.equal(null).optional(),
staked: joi_1.default.equal(null).optional(),
stash: joi_1.default.equal(null).optional(),
}),
joi_1.default.object({
Account: joi_1.default.string().required(),
}),
],
addToStake: joi_1.default.boolean().equal(false).optional(),
});
const StakeMoreTransactionSchema = joi_1.default.object({
value: joi_1.default.string().required(),
addToStake: joi_1.default.boolean().equal(true).required(),
controller: joi_1.default.forbidden(), // Only allow undefined
payee: joi_1.default.forbidden(), // Only allow undefined
});
exports.StakeTransactionSchema = joi_1.default
.alternatives(CreateStakeTransactionSchema, StakeMoreTransactionSchema)
.match('one');
exports.AddressInitializationSchema = joi_1.default.object({
proxyType: joi_1.default
.string()
.valid(...proxyTypes)
.required(),
delegate: addressSchema.required(),
delay: joi_1.default.string().required(),
});
exports.AnonymousAddressInitializationSchema = joi_1.default.object({
proxyType: joi_1.default
.string()
.valid(...proxyTypes)
.required(),
index: joi_1.default.number().required(),
delay: joi_1.default.number().required(),
});
exports.BatchTransactionSchema = joi_1.default.object({
calls: joi_1.default
.alternatives()
.try(joi_1.default.array().items(joi_1.default.string()), joi_1.default.array().items(joi_1.default.object({ callIndex: joi_1.default.string(), args: joi_1.default.object() }))),
});
exports.ProxyTransactionSchema = joi_1.default.object({
real: addressSchema.required(),
forceProxyType: joi_1.default
.string()
.valid(...proxyTypes)
.required(),
amount: joi_1.default.string().required(),
to: addressSchema.required(),
});
exports.UnstakeTransactionSchema = joi_1.default.object({
value: joi_1.default.string().required(),
});
exports.WithdrawUnstakedTransactionSchema = joi_1.default.object({
value: joi_1.default.number().required(),
});
exports.ClaimTransactionSchema = joi_1.default.object({
claimEra: joi_1.default.string().required(),
validatorStash: addressSchema.required(),
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90eG5TY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQXNCO0FBQ3RCLG9EQUE0QjtBQUU1QixNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxlQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFFaEYsTUFBTSxVQUFVLEdBQUc7SUFDakIsS0FBSztJQUNMLGFBQWE7SUFDYixZQUFZO0lBQ1osU0FBUztJQUNULG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsYUFBYTtDQUNkLENBQUM7QUFFVyxRQUFBLHFCQUFxQixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDOUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsU0FBUyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsV0FBVyxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsUUFBUSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNsRyxrQkFBa0IsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNDLFNBQVMsRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFNBQVMsRUFBRSxhQUFH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QUVVLFFBQUEsc0JBQXNCLEdBQUcsYUFBRyxDQUFDLE1BQU0sQ0FBQztJQUMvQyxJQUFJLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRTtJQUM5QixjQUFjLEVBQUUsYUFBRztTQUNoQixNQUFNLEVBQUU7U0FDUixLQUFLLENBQUMsR0FBRyxVQUFVLENBQUM7U0FDcEIsUUFBUSxFQUFFO0lBQ2IsTUFBTSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsRUFBRSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Q0FDN0IsQ0FBQyxDQUFDO0FBRVUsUUFBQSx3QkFBd0IsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQ2pELEtBQUssRUFBRSxhQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQy9CLENBQUMsQ0FBQztBQUVVLFFBQUEsaUNBQWlDLEdBQUcsYUFBRyxDQUFDLE1BQU0sQ0FBQztJQUMxRCxLQUFLLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUMvQixDQUFDLENBQUM7QUFFVSxRQUFBLHNCQUFzQixHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDL0MsUUFBUSxFQUFFLGFBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDakMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Q0FDekMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGpvaSBmcm9tICdqb2knO1xuaW1wb3J0IFV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBhZGRyZXNzU2NoZW1hID0gam9pLnN0cmluZygpLmN1c3RvbSgoYWRkcikgPT4gVXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcikpO1xuXG5jb25zdCBwcm94eVR5cGVzID0gW1xuICAnQW55JyxcbiAgJ05vblRyYW5zZmVyJyxcbiAgJ0dvdmVybmFuY2UnLFxuICAnU3Rha2luZycsXG4gICdVbnVzZWRTdWRvQmFsYW5jZXMnLFxuICAnSWRlbnRpdHlKdWRnZW1lbnQnLFxuICAnQ2FuY2VsUHJveHknLFxuXTtcblxuZXhwb3J0IGNvbnN0IEJhc2VUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBzZW5kZXI6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgYmxvY2tOdW1iZXI6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICBibG9ja0hhc2g6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBnZW5lc2lzSGFzaDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIHNwZWNWZXJzaW9uOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgc3BlY05hbWU6IGpvaS5zdHJpbmcoKS52YWxpZCgna3VzYW1hJywgJ3BvbGthZG90JywgJ3dlc3RlbmQnLCAnc3RhdGVtaW50JywgJ3N0YXRlbWluZScpLnJlcXVpcmVkKCksXG4gIHRyYW5zYWN0aW9uVmVyc2lvbjogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIGNoYWluTmFtZTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIGVyYVBlcmlvZDogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIG5vbmNlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgdGlwOiBqb2kubnVtYmVyKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgU2lnbmluZ1BheWxvYWRUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBlcmFQZXJpb2Q6IGpvaS5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBibG9ja0hhc2g6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBub25jZTogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIHRpcDogam9pLm51bWJlcigpLm9wdGlvbmFsKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFNpZ25lZFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHNlbmRlcjogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxuICBub25jZTogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIGVyYVBlcmlvZDogam9pLm51bWJlcigpLm9wdGlvbmFsKCksXG4gIHRpcDogam9pLm51bWJlcigpLm9wdGlvbmFsKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFRyYW5zZmVyVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgYW1vdW50OiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdG86IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgVHJhbnNmZXJBbGxUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICB0bzogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxufSk7XG5cbmNvbnN0IENyZWF0ZVN0YWtlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmFsdWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBjb250cm9sbGVyOiBqb2kuc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgcGF5ZWU6IFtcbiAgICBqb2kuc3RyaW5nKCksXG4gICAgam9pLm9iamVjdCh7XG4gICAgICBhY2NvdW50OiBqb2kuc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICAgIGNvbnRyb2xsZXI6IGpvaS5lcXVhbChudWxsKS5vcHRpb25hbCgpLFxuICAgICAgc3Rha2VkOiBqb2kuZXF1YWwobnVsbCkub3B0aW9uYWwoKSxcbiAgICAgIHN0YXNoOiBqb2kuZXF1YWwobnVsbCkub3B0aW9uYWwoKSxcbiAgICB9KSxcbiAgICBqb2kub2JqZWN0KHtcbiAgICAgIEFjY291bnQ6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICAgIH0pLFxuICBdLFxuICBhZGRUb1N0YWtlOiBqb2kuYm9vbGVhbigpLmVxdWFsKGZhbHNlKS5vcHRpb25hbCgpLFxufSk7XG5cbmNvbnN0IFN0YWtlTW9yZVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHZhbHVlOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgYWRkVG9TdGFrZTogam9pLmJvb2xlYW4oKS5lcXVhbCh0cnVlKS5yZXF1aXJlZCgpLFxuICBjb250cm9sbGVyOiBqb2kuZm9yYmlkZGVuKCksIC8vIE9ubHkgYWxsb3cgdW5kZWZpbmVkXG4gIHBheWVlOiBqb2kuZm9yYmlkZGVuKCksIC8vIE9ubHkgYWxsb3cgdW5kZWZpbmVkXG59KTtcblxuZXhwb3J0IGNvbnN0IFN0YWtlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2lcbiAgLmFsdGVybmF0aXZlcyhDcmVhdGVTdGFrZVRyYW5zYWN0aW9uU2NoZW1hLCBTdGFrZU1vcmVUcmFuc2FjdGlvblNjaGVtYSlcbiAgLm1hdGNoKCdvbmUnKTtcblxuZXhwb3J0IGNvbnN0IEFkZHJlc3NJbml0aWFsaXphdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBwcm94eVR5cGU6IGpvaVxuICAgIC5zdHJpbmcoKVxuICAgIC52YWxpZCguLi5wcm94eVR5cGVzKVxuICAgIC5yZXF1aXJlZCgpLFxuICBkZWxlZ2F0ZTogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxuICBkZWxheTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IEFub255bW91c0FkZHJlc3NJbml0aWFsaXphdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBwcm94eVR5cGU6IGpvaVxuICAgIC5zdHJpbmcoKVxuICAgIC52YWxpZCguLi5wcm94eVR5cGVzKVxuICAgIC5yZXF1aXJlZCgpLFxuICBpbmRleDogam9pLm51bWJlcigpLnJlcXVpcmVkKCksXG4gIGRlbGF5OiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgQmF0Y2hUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBjYWxsczogam9pXG4gICAgLmFsdGVybmF0aXZlcygpXG4gICAgLnRyeShcbiAgICAgIGpvaS5hcnJheSgpLml0ZW1zKGpvaS5zdHJpbmcoKSksXG4gICAgICBqb2kuYXJyYXkoKS5pdGVtcyhqb2kub2JqZWN0KHsgY2FsbEluZGV4OiBqb2kuc3RyaW5nKCksIGFyZ3M6IGpvaS5vYmplY3QoKSB9KSlcbiAgICApLFxufSk7XG5cbmV4cG9ydCBjb25zdCBQcm94eVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHJlYWw6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgZm9yY2VQcm94eVR5cGU6IGpvaVxuICAgIC5zdHJpbmcoKVxuICAgIC52YWxpZCguLi5wcm94eVR5cGVzKVxuICAgIC5yZXF1aXJlZCgpLFxuICBhbW91bnQ6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICB0bzogYWRkcmVzc1NjaGVtYS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBVbnN0YWtlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmFsdWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBXaXRoZHJhd1Vuc3Rha2VkVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmFsdWU6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBDbGFpbVRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIGNsYWltRXJhOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgdmFsaWRhdG9yU3Rhc2g6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbn0pO1xuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!