78 lines
2.8 KiB
JavaScript
Raw Normal View History

2024-01-29 09:26:07 +08:00
import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
import _inherits from "@babel/runtime/helpers/esm/inherits";
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
import _createClass from "@babel/runtime/helpers/esm/createClass";
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
var TIMEZONE_UNIT_PRIORITY = 10;
export var Setter = /*#__PURE__*/function () {
function Setter() {
_classCallCheck(this, Setter);
_defineProperty(this, "priority", void 0);
_defineProperty(this, "subPriority", 0);
}
_createClass(Setter, [{
key: "validate",
value: function validate(_utcDate, _options) {
return true;
}
}]);
return Setter;
}();
export var ValueSetter = /*#__PURE__*/function (_Setter) {
_inherits(ValueSetter, _Setter);
var _super = _createSuper(ValueSetter);
function ValueSetter(value, validateValue, setValue, priority, subPriority) {
var _this;
_classCallCheck(this, ValueSetter);
_this = _super.call(this);
_this.value = value;
_this.validateValue = validateValue;
_this.setValue = setValue;
_this.priority = priority;
if (subPriority) {
_this.subPriority = subPriority;
}
return _this;
}
_createClass(ValueSetter, [{
key: "validate",
value: function validate(utcDate, options) {
return this.validateValue(utcDate, this.value, options);
}
}, {
key: "set",
value: function set(utcDate, flags, options) {
return this.setValue(utcDate, flags, this.value, options);
}
}]);
return ValueSetter;
}(Setter);
export var DateToSystemTimezoneSetter = /*#__PURE__*/function (_Setter2) {
_inherits(DateToSystemTimezoneSetter, _Setter2);
var _super2 = _createSuper(DateToSystemTimezoneSetter);
function DateToSystemTimezoneSetter() {
var _this2;
_classCallCheck(this, DateToSystemTimezoneSetter);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this2 = _super2.call.apply(_super2, [this].concat(args));
_defineProperty(_assertThisInitialized(_this2), "priority", TIMEZONE_UNIT_PRIORITY);
_defineProperty(_assertThisInitialized(_this2), "subPriority", -1);
return _this2;
}
_createClass(DateToSystemTimezoneSetter, [{
key: "set",
value: function set(date, flags) {
if (flags.timestampIsSet) {
return date;
}
var convertedDate = new Date(0);
convertedDate.setFullYear(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate());
convertedDate.setHours(date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
return convertedDate;
}
}]);
return DateToSystemTimezoneSetter;
}(Setter);