vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
208 lines (196 loc) • 4.72 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
exports.__esModule = true;
exports.VaeNumberSchema = void 0;
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _utils = require("../utils");
var _VaeLocale = require("./VaeLocale");
var _VaeSchema2 = require("./VaeSchema");
var VaeNumberSchema = exports.VaeNumberSchema = /*#__PURE__*/function (_VaeSchema) {
(0, _inheritsLoose2.default)(VaeNumberSchema, _VaeSchema);
function VaeNumberSchema(message) {
var _this;
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.type;
}
_this = _VaeSchema.call(this, {
type: 'number'
}) || this;
_this.check({
fn: _utils.isNumeric,
message: message
}).transform(_utils.toNumber);
return _this;
}
/**
* 最小值
*/
var _proto = VaeNumberSchema.prototype;
_proto.min = function min(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.min;
}
return this.check({
fn: function fn(v) {
return v >= value;
},
message: message,
messageParams: {
min: value
},
tag: 'min'
});
}
/**
* 最大值
*/;
_proto.max = function max(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.max;
}
return this.check({
fn: function fn(v) {
return v <= value;
},
message: message,
messageParams: {
max: value
},
tag: 'max'
});
}
/**
* 小于
*/;
_proto.lessThan = function lessThan(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.lessThan;
}
return this.check({
fn: function fn(v) {
return v < value;
},
message: message,
messageParams: {
lessThan: value
},
tag: 'lessThan'
});
}
/**
* 大于
*/;
_proto.moreThan = function moreThan(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.moreThan;
}
return this.check({
fn: function fn(v) {
return v > value;
},
message: message,
messageParams: {
moreThan: value
},
tag: 'moreThan'
});
}
/**
* 整数,即 -100, -1, 0, 1, 2, 100, ...
*/;
_proto.integer = function integer(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.integer;
}
return this.check({
fn: _utils.isInteger,
message: message,
tag: 'integer'
});
}
/**
* 正数,即 0.01, 0.1, 1, 2, 3, ...
*/;
_proto.positive = function positive(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.positive;
}
return this.check({
fn: function fn(v) {
return v > 0;
},
message: message,
tag: 'positive'
});
}
/**
* 非正数,即 0, -0.01, -1, -100, ...
*/;
_proto.nonpositive = function nonpositive(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.nonpositive;
}
return this.check({
fn: function fn(v) {
return v <= 0;
},
message: message,
tag: 'nonpositive'
});
}
/**
* 负数,即 -0.01, -1, -100, ...
*/;
_proto.negative = function negative(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.negative;
}
return this.check({
fn: function fn(v) {
return v < 0;
},
message: message,
tag: 'negative'
});
}
/**
* 非负数,即 0, 0.01, 0.1, 1, 2.1, 100, ...
*/;
_proto.nonnegative = function nonnegative(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.nonnegative;
}
return this.check({
fn: function fn(v) {
return v >= 0;
},
message: message,
tag: 'nonnegative'
});
}
/**
* 正整数,即 1, 2, 3, 4, 5, ...
*/;
_proto.positiveInteger = function positiveInteger(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.positiveInteger;
}
return this.check({
fn: function fn(v) {
return v > 0 && (0, _utils.isInteger)(v);
},
message: message,
tag: 'positiveInteger'
});
}
/**
* ID,即正整数,即 1, 2, 3, 4, 5, ...
*/;
_proto.id = function id(message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.number.positiveInteger;
}
return this.positiveInteger(message);
};
return VaeNumberSchema;
}(_VaeSchema2.VaeSchema);
;