vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
74 lines (71 loc) • 1.95 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
exports.__esModule = true;
exports.VaeDateSchema = void 0;
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _date = require("../date");
var _VaeLocale = require("./VaeLocale");
var _VaeSchema2 = require("./VaeSchema");
var VaeDateSchema = exports.VaeDateSchema = /*#__PURE__*/function (_VaeSchema) {
(0, _inheritsLoose2.default)(VaeDateSchema, _VaeSchema);
function VaeDateSchema(message) {
var _this;
if (message === void 0) {
message = _VaeLocale.VaeLocale.date.type;
}
_this = _VaeSchema.call(this, {
type: 'date'
}) || this;
_this.transform(function (v) {
return (0, _date.anyToDate)(v);
}).check({
fn: function fn(v) {
return (0, _date.isDate)(v) && (0, _date.isValid)(v);
},
message: message
});
return _this;
}
/**
* 最小日期
*/
var _proto = VaeDateSchema.prototype;
_proto.min = function min(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.date.min;
}
var minDate = (0, _date.anyToDate)(value);
var minTime = minDate.getTime();
return this.check({
fn: function fn(v) {
return minTime <= v.getTime();
},
message: message,
messageParams: {
min: minDate
},
tag: 'min'
});
}
/**
* 最大日期
*/;
_proto.max = function max(value, message) {
if (message === void 0) {
message = _VaeLocale.VaeLocale.date.max;
}
var maxDate = (0, _date.anyToDate)(value);
var maxTime = maxDate.getTime();
return this.check({
fn: function fn(v) {
return maxTime >= v.getTime();
},
message: message,
messageParams: {
max: maxDate
},
tag: 'max'
});
};
return VaeDateSchema;
}(_VaeSchema2.VaeSchema);
;