@dydxfoundation/governance
Version:
dYdX governance smart contracts
42 lines (41 loc) • 2.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GovDelegationValidator = exports.GovValidator = exports.StakingValidator = void 0;
const validations_1 = require("./validations");
function StakingValidator(target, propertyName, descriptor) {
const method = descriptor.value;
// eslint-disable-next-line no-param-reassign
descriptor.value = function () {
const isParamOptional = (0, validations_1.optionalValidator)(target, propertyName, arguments);
(0, validations_1.isEthAddressValidator)(target, propertyName, arguments, isParamOptional);
(0, validations_1.amountGtThan0Validator)(target, propertyName, arguments, isParamOptional);
return method === null || method === void 0 ? void 0 : method.apply(this, arguments);
};
}
exports.StakingValidator = StakingValidator;
function GovValidator(
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
target, propertyName, descriptor) {
const method = descriptor.value;
// eslint-disable-next-line no-param-reassign
descriptor.value = function () {
(0, validations_1.isEthAddressValidator)(target, propertyName, arguments);
(0, validations_1.amount0OrPositiveValidator)(target, propertyName, arguments);
return method === null || method === void 0 ? void 0 : method.apply(this, arguments);
};
}
exports.GovValidator = GovValidator;
function GovDelegationValidator(
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
target, propertyName, descriptor) {
const method = descriptor.value;
// eslint-disable-next-line no-param-reassign
descriptor.value = function () {
(0, validations_1.isEthAddressValidator)(target, propertyName, arguments);
(0, validations_1.isEthAddressOrEnsValidator)(target, propertyName, arguments);
(0, validations_1.amountGtThan0Validator)(target, propertyName, arguments);
(0, validations_1.amount0OrPositiveValidator)(target, propertyName, arguments);
return method === null || method === void 0 ? void 0 : method.apply(this, arguments);
};
}
exports.GovDelegationValidator = GovDelegationValidator;