From e4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Sat, 28 Jun 2025 17:26:46 -0700 Subject: initial commit: scaffolding --- node_modules/date-fns/parse/_lib/Parser.js | 39 ++ node_modules/date-fns/parse/_lib/Setter.js | 88 ++++ node_modules/date-fns/parse/_lib/constants.js | 55 +++ .../parse/_lib/parsers/AMPMMidnightParser.js | 72 +++ .../date-fns/parse/_lib/parsers/AMPMParser.js | 72 +++ .../date-fns/parse/_lib/parsers/DateParser.js | 72 +++ .../date-fns/parse/_lib/parsers/DayOfYearParser.js | 68 +++ .../date-fns/parse/_lib/parsers/DayParser.js | 97 ++++ .../date-fns/parse/_lib/parsers/DayPeriodParser.js | 73 +++ .../date-fns/parse/_lib/parsers/EraParser.js | 70 +++ .../parse/_lib/parsers/ExtendedYearParser.js | 48 ++ .../parse/_lib/parsers/FractionOfSecondParser.js | 47 ++ .../date-fns/parse/_lib/parsers/Hour0To11Parser.js | 64 +++ .../date-fns/parse/_lib/parsers/Hour0to23Parser.js | 59 +++ .../date-fns/parse/_lib/parsers/Hour1To24Parser.js | 60 +++ .../date-fns/parse/_lib/parsers/Hour1to12Parser.js | 66 +++ .../date-fns/parse/_lib/parsers/ISODayParser.js | 112 +++++ .../parse/_lib/parsers/ISOTimezoneParser.js | 60 +++ .../parse/_lib/parsers/ISOTimezoneWithZParser.js | 60 +++ .../date-fns/parse/_lib/parsers/ISOWeekParser.js | 61 +++ .../parse/_lib/parsers/ISOWeekYearParser.js | 51 ++ .../date-fns/parse/_lib/parsers/LocalDayParser.js | 110 +++++ .../date-fns/parse/_lib/parsers/LocalWeekParser.js | 61 +++ .../parse/_lib/parsers/LocalWeekYearParser.js | 76 +++ .../date-fns/parse/_lib/parsers/MinuteParser.js | 59 +++ .../date-fns/parse/_lib/parsers/MonthParser.js | 94 ++++ .../date-fns/parse/_lib/parsers/QuarterParser.js | 89 ++++ .../date-fns/parse/_lib/parsers/SecondParser.js | 59 +++ .../parse/_lib/parsers/StandAloneLocalDayParser.js | 110 +++++ .../parse/_lib/parsers/StandAloneMonthParser.js | 94 ++++ .../parse/_lib/parsers/StandAloneQuarterParser.js | 89 ++++ .../_lib/parsers/TimestampMillisecondsParser.js | 45 ++ .../parse/_lib/parsers/TimestampSecondsParser.js | 45 ++ .../date-fns/parse/_lib/parsers/YearParser.js | 81 ++++ node_modules/date-fns/parse/_lib/parsers/index.js | 114 +++++ node_modules/date-fns/parse/_lib/types.js | 5 + node_modules/date-fns/parse/_lib/utils.js | 126 +++++ node_modules/date-fns/parse/index.d.ts | 4 + node_modules/date-fns/parse/index.js | 514 +++++++++++++++++++++ node_modules/date-fns/parse/index.js.flow | 63 +++ node_modules/date-fns/parse/package.json | 5 + 41 files changed, 3237 insertions(+) create mode 100644 node_modules/date-fns/parse/_lib/Parser.js create mode 100644 node_modules/date-fns/parse/_lib/Setter.js create mode 100644 node_modules/date-fns/parse/_lib/constants.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/AMPMParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/DateParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/DayParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/EraParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ISODayParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/MinuteParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/MonthParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/QuarterParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/SecondParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/YearParser.js create mode 100644 node_modules/date-fns/parse/_lib/parsers/index.js create mode 100644 node_modules/date-fns/parse/_lib/types.js create mode 100644 node_modules/date-fns/parse/_lib/utils.js create mode 100644 node_modules/date-fns/parse/index.d.ts create mode 100644 node_modules/date-fns/parse/index.js create mode 100644 node_modules/date-fns/parse/index.js.flow create mode 100644 node_modules/date-fns/parse/package.json (limited to 'node_modules/date-fns/parse') diff --git a/node_modules/date-fns/parse/_lib/Parser.js b/node_modules/date-fns/parse/_lib/Parser.js new file mode 100644 index 0000000..c425ac7 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/Parser.js @@ -0,0 +1,39 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Parser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Setter = require("./Setter.js"); +var Parser = /*#__PURE__*/function () { + function Parser() { + (0, _classCallCheck2.default)(this, Parser); + (0, _defineProperty2.default)(this, "incompatibleTokens", void 0); + (0, _defineProperty2.default)(this, "priority", void 0); + (0, _defineProperty2.default)(this, "subPriority", void 0); + } + (0, _createClass2.default)(Parser, [{ + key: "run", + value: function run(dateString, token, match, options) { + var result = this.parse(dateString, token, match, options); + if (!result) { + return null; + } + return { + setter: new _Setter.ValueSetter(result.value, this.validate, this.set, this.priority, this.subPriority), + rest: result.rest + }; + } + }, { + key: "validate", + value: function validate(_utcDate, _value, _options) { + return true; + } + }]); + return Parser; +}(); +exports.Parser = Parser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/Setter.js b/node_modules/date-fns/parse/_lib/Setter.js new file mode 100644 index 0000000..5e82c6e --- /dev/null +++ b/node_modules/date-fns/parse/_lib/Setter.js @@ -0,0 +1,88 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ValueSetter = exports.Setter = exports.DateToSystemTimezoneSetter = void 0; +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var TIMEZONE_UNIT_PRIORITY = 10; +var Setter = /*#__PURE__*/function () { + function Setter() { + (0, _classCallCheck2.default)(this, Setter); + (0, _defineProperty2.default)(this, "priority", void 0); + (0, _defineProperty2.default)(this, "subPriority", 0); + } + (0, _createClass2.default)(Setter, [{ + key: "validate", + value: function validate(_utcDate, _options) { + return true; + } + }]); + return Setter; +}(); +exports.Setter = Setter; +var ValueSetter = /*#__PURE__*/function (_Setter) { + (0, _inherits2.default)(ValueSetter, _Setter); + var _super = (0, _createSuper2.default)(ValueSetter); + function ValueSetter(value, validateValue, setValue, priority, subPriority) { + var _this; + (0, _classCallCheck2.default)(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; + } + (0, _createClass2.default)(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); +exports.ValueSetter = ValueSetter; +var DateToSystemTimezoneSetter = /*#__PURE__*/function (_Setter2) { + (0, _inherits2.default)(DateToSystemTimezoneSetter, _Setter2); + var _super2 = (0, _createSuper2.default)(DateToSystemTimezoneSetter); + function DateToSystemTimezoneSetter() { + var _this2; + (0, _classCallCheck2.default)(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)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "priority", TIMEZONE_UNIT_PRIORITY); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "subPriority", -1); + return _this2; + } + (0, _createClass2.default)(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); +exports.DateToSystemTimezoneSetter = DateToSystemTimezoneSetter; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/constants.js b/node_modules/date-fns/parse/_lib/constants.js new file mode 100644 index 0000000..e8697d8 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/constants.js @@ -0,0 +1,55 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.timezonePatterns = exports.numericPatterns = void 0; +var numericPatterns = { + month: /^(1[0-2]|0?\d)/, + // 0 to 12 + date: /^(3[0-1]|[0-2]?\d)/, + // 0 to 31 + dayOfYear: /^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/, + // 0 to 366 + week: /^(5[0-3]|[0-4]?\d)/, + // 0 to 53 + hour23h: /^(2[0-3]|[0-1]?\d)/, + // 0 to 23 + hour24h: /^(2[0-4]|[0-1]?\d)/, + // 0 to 24 + hour11h: /^(1[0-1]|0?\d)/, + // 0 to 11 + hour12h: /^(1[0-2]|0?\d)/, + // 0 to 12 + minute: /^[0-5]?\d/, + // 0 to 59 + second: /^[0-5]?\d/, + // 0 to 59 + + singleDigit: /^\d/, + // 0 to 9 + twoDigits: /^\d{1,2}/, + // 0 to 99 + threeDigits: /^\d{1,3}/, + // 0 to 999 + fourDigits: /^\d{1,4}/, + // 0 to 9999 + + anyDigitsSigned: /^-?\d+/, + singleDigitSigned: /^-?\d/, + // 0 to 9, -0 to -9 + twoDigitsSigned: /^-?\d{1,2}/, + // 0 to 99, -0 to -99 + threeDigitsSigned: /^-?\d{1,3}/, + // 0 to 999, -0 to -999 + fourDigitsSigned: /^-?\d{1,4}/ // 0 to 9999, -0 to -9999 +}; +exports.numericPatterns = numericPatterns; +var timezonePatterns = { + basicOptionalMinutes: /^([+-])(\d{2})(\d{2})?|Z/, + basic: /^([+-])(\d{2})(\d{2})|Z/, + basicOptionalSeconds: /^([+-])(\d{2})(\d{2})((\d{2}))?|Z/, + extended: /^([+-])(\d{2}):(\d{2})|Z/, + extendedOptionalSeconds: /^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/ +}; +exports.timezonePatterns = timezonePatterns; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js b/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js new file mode 100644 index 0000000..20735c7 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js @@ -0,0 +1,72 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.AMPMMidnightParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var AMPMMidnightParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(AMPMMidnightParser, _Parser); + var _super = (0, _createSuper2.default)(AMPMMidnightParser); + function AMPMMidnightParser() { + var _this; + (0, _classCallCheck2.default)(this, AMPMMidnightParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['a', 'B', 'H', 'k', 't', 'T']); + return _this; + } + (0, _createClass2.default)(AMPMMidnightParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'b': + case 'bb': + case 'bbb': + return match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'bbbbb': + return match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'bbbb': + default: + return match.dayPeriod(dateString, { + width: 'wide', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return AMPMMidnightParser; +}(_Parser2.Parser); +exports.AMPMMidnightParser = AMPMMidnightParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js b/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js new file mode 100644 index 0000000..67797e9 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js @@ -0,0 +1,72 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.AMPMParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var AMPMParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(AMPMParser, _Parser); + var _super = (0, _createSuper2.default)(AMPMParser); + function AMPMParser() { + var _this; + (0, _classCallCheck2.default)(this, AMPMParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['b', 'B', 'H', 'k', 't', 'T']); + return _this; + } + (0, _createClass2.default)(AMPMParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'a': + case 'aa': + case 'aaa': + return match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'aaaaa': + return match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'aaaa': + default: + return match.dayPeriod(dateString, { + width: 'wide', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return AMPMParser; +}(_Parser2.Parser); +exports.AMPMParser = AMPMParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/DateParser.js b/node_modules/date-fns/parse/_lib/parsers/DateParser.js new file mode 100644 index 0000000..c14f8c7 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/DateParser.js @@ -0,0 +1,72 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DateParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _utils = require("../utils.js"); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + +// Day of the month +var DateParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(DateParser, _Parser); + var _super = (0, _createSuper2.default)(DateParser); + function DateParser() { + var _this; + (0, _classCallCheck2.default)(this, DateParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subPriority", 1); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'q', 'Q', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(DateParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'd': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.date, dateString); + case 'do': + return match.ordinalNumber(dateString, { + unit: 'date' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(date, value) { + var year = date.getUTCFullYear(); + var isLeapYear = (0, _utils.isLeapYearIndex)(year); + var month = date.getUTCMonth(); + if (isLeapYear) { + return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month]; + } else { + return value >= 1 && value <= DAYS_IN_MONTH[month]; + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCDate(value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DateParser; +}(_Parser2.Parser); +exports.DateParser = DateParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js b/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js new file mode 100644 index 0000000..a2ea9f3 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js @@ -0,0 +1,68 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DayOfYearParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var DayOfYearParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(DayOfYearParser, _Parser); + var _super = (0, _createSuper2.default)(DayOfYearParser); + function DayOfYearParser() { + var _this; + (0, _classCallCheck2.default)(this, DayOfYearParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subpriority", 1); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'q', 'Q', 'M', 'L', 'w', 'I', 'd', 'E', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(DayOfYearParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'D': + case 'DD': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.dayOfYear, dateString); + case 'Do': + return match.ordinalNumber(dateString, { + unit: 'date' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(date, value) { + var year = date.getUTCFullYear(); + var isLeapYear = (0, _utils.isLeapYearIndex)(year); + if (isLeapYear) { + return value >= 1 && value <= 366; + } else { + return value >= 1 && value <= 365; + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(0, value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DayOfYearParser; +}(_Parser2.Parser); +exports.DayOfYearParser = DayOfYearParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/DayParser.js b/node_modules/date-fns/parse/_lib/parsers/DayParser.js new file mode 100644 index 0000000..0ff2ce1 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/DayParser.js @@ -0,0 +1,97 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DayParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCDay/index.js")); +// Day of week +var DayParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(DayParser, _Parser); + var _super = (0, _createSuper2.default)(DayParser); + function DayParser() { + var _this; + (0, _classCallCheck2.default)(this, DayParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['D', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(DayParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + // Tue + case 'E': + case 'EE': + case 'EEE': + return match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // T + case 'EEEEE': + return match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // Tu + case 'EEEEEE': + return match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // Tuesday + case 'EEEE': + default: + return match.day(dateString, { + width: 'wide', + context: 'formatting' + }) || match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options) { + date = (0, _index.default)(date, value, options); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return DayParser; +}(_Parser2.Parser); +exports.DayParser = DayParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js b/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js new file mode 100644 index 0000000..b29da73 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js @@ -0,0 +1,73 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DayPeriodParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +// in the morning, in the afternoon, in the evening, at night +var DayPeriodParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(DayPeriodParser, _Parser); + var _super = (0, _createSuper2.default)(DayPeriodParser); + function DayPeriodParser() { + var _this; + (0, _classCallCheck2.default)(this, DayPeriodParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 80); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['a', 'b', 't', 'T']); + return _this; + } + (0, _createClass2.default)(DayPeriodParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'B': + case 'BB': + case 'BBB': + return match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'BBBBB': + return match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + case 'BBBB': + default: + return match.dayPeriod(dateString, { + width: 'wide', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.dayPeriod(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours((0, _utils.dayPeriodEnumToHours)(value), 0, 0, 0); + return date; + } + }]); + return DayPeriodParser; +}(_Parser2.Parser); +exports.DayPeriodParser = DayPeriodParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/EraParser.js b/node_modules/date-fns/parse/_lib/parsers/EraParser.js new file mode 100644 index 0000000..8c4402e --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/EraParser.js @@ -0,0 +1,70 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.EraParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var EraParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(EraParser, _Parser); + var _super = (0, _createSuper2.default)(EraParser); + function EraParser() { + var _this; + (0, _classCallCheck2.default)(this, EraParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 140); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['R', 'u', 't', 'T']); + return _this; + } + (0, _createClass2.default)(EraParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + // AD, BC + case 'G': + case 'GG': + case 'GGG': + return match.era(dateString, { + width: 'abbreviated' + }) || match.era(dateString, { + width: 'narrow' + }); + // A, B + case 'GGGGG': + return match.era(dateString, { + width: 'narrow' + }); + // Anno Domini, Before Christ + case 'GGGG': + default: + return match.era(dateString, { + width: 'wide' + }) || match.era(dateString, { + width: 'abbreviated' + }) || match.era(dateString, { + width: 'narrow' + }); + } + } + }, { + key: "set", + value: function set(date, flags, value) { + flags.era = value; + date.setUTCFullYear(value, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return EraParser; +}(_Parser2.Parser); +exports.EraParser = EraParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js b/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js new file mode 100644 index 0000000..445d2ac --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js @@ -0,0 +1,48 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ExtendedYearParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var ExtendedYearParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ExtendedYearParser, _Parser); + var _super = (0, _createSuper2.default)(ExtendedYearParser); + function ExtendedYearParser() { + var _this; + (0, _classCallCheck2.default)(this, ExtendedYearParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['G', 'y', 'Y', 'R', 'w', 'I', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(ExtendedYearParser, [{ + key: "parse", + value: function parse(dateString, token) { + if (token === 'u') { + return (0, _utils.parseNDigitsSigned)(4, dateString); + } + return (0, _utils.parseNDigitsSigned)(token.length, dateString); + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCFullYear(value, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return ExtendedYearParser; +}(_Parser2.Parser); +exports.ExtendedYearParser = ExtendedYearParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js b/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js new file mode 100644 index 0000000..11a2d48 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js @@ -0,0 +1,47 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.FractionOfSecondParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var FractionOfSecondParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(FractionOfSecondParser, _Parser); + var _super = (0, _createSuper2.default)(FractionOfSecondParser); + function FractionOfSecondParser() { + var _this; + (0, _classCallCheck2.default)(this, FractionOfSecondParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 30); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['t', 'T']); + return _this; + } + (0, _createClass2.default)(FractionOfSecondParser, [{ + key: "parse", + value: function parse(dateString, token) { + var valueCallback = function valueCallback(value) { + return Math.floor(value * Math.pow(10, -token.length + 3)); + }; + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMilliseconds(value); + return date; + } + }]); + return FractionOfSecondParser; +}(_Parser2.Parser); +exports.FractionOfSecondParser = FractionOfSecondParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js b/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js new file mode 100644 index 0000000..5528875 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js @@ -0,0 +1,64 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Hour0To11Parser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var Hour0To11Parser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(Hour0To11Parser, _Parser); + var _super = (0, _createSuper2.default)(Hour0To11Parser); + function Hour0To11Parser() { + var _this; + (0, _classCallCheck2.default)(this, Hour0To11Parser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['h', 'H', 'k', 't', 'T']); + return _this; + } + (0, _createClass2.default)(Hour0To11Parser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'K': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour11h, dateString); + case 'Ko': + return match.ordinalNumber(dateString, { + unit: 'hour' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var isPM = date.getUTCHours() >= 12; + if (isPM && value < 12) { + date.setUTCHours(value + 12, 0, 0, 0); + } else { + date.setUTCHours(value, 0, 0, 0); + } + return date; + } + }]); + return Hour0To11Parser; +}(_Parser2.Parser); +exports.Hour0To11Parser = Hour0To11Parser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js b/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js new file mode 100644 index 0000000..b65bfca --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js @@ -0,0 +1,59 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Hour0to23Parser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var Hour0to23Parser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(Hour0to23Parser, _Parser); + var _super = (0, _createSuper2.default)(Hour0to23Parser); + function Hour0to23Parser() { + var _this; + (0, _classCallCheck2.default)(this, Hour0to23Parser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['a', 'b', 'h', 'K', 'k', 't', 'T']); + return _this; + } + (0, _createClass2.default)(Hour0to23Parser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'H': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour23h, dateString); + case 'Ho': + return match.ordinalNumber(dateString, { + unit: 'hour' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 23; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCHours(value, 0, 0, 0); + return date; + } + }]); + return Hour0to23Parser; +}(_Parser2.Parser); +exports.Hour0to23Parser = Hour0to23Parser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js b/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js new file mode 100644 index 0000000..7d25565 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js @@ -0,0 +1,60 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Hour1To24Parser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var Hour1To24Parser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(Hour1To24Parser, _Parser); + var _super = (0, _createSuper2.default)(Hour1To24Parser); + function Hour1To24Parser() { + var _this; + (0, _classCallCheck2.default)(this, Hour1To24Parser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['a', 'b', 'h', 'H', 'K', 't', 'T']); + return _this; + } + (0, _createClass2.default)(Hour1To24Parser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'k': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour24h, dateString); + case 'ko': + return match.ordinalNumber(dateString, { + unit: 'hour' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 24; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var hours = value <= 24 ? value % 24 : value; + date.setUTCHours(hours, 0, 0, 0); + return date; + } + }]); + return Hour1To24Parser; +}(_Parser2.Parser); +exports.Hour1To24Parser = Hour1To24Parser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js b/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js new file mode 100644 index 0000000..432d5ed --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js @@ -0,0 +1,66 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.Hour1to12Parser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var Hour1to12Parser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(Hour1to12Parser, _Parser); + var _super = (0, _createSuper2.default)(Hour1to12Parser); + function Hour1to12Parser() { + var _this; + (0, _classCallCheck2.default)(this, Hour1to12Parser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 70); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['H', 'K', 'k', 't', 'T']); + return _this; + } + (0, _createClass2.default)(Hour1to12Parser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'h': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.hour12h, dateString); + case 'ho': + return match.ordinalNumber(dateString, { + unit: 'hour' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 12; + } + }, { + key: "set", + value: function set(date, _flags, value) { + var isPM = date.getUTCHours() >= 12; + if (isPM && value < 12) { + date.setUTCHours(value + 12, 0, 0, 0); + } else if (!isPM && value === 12) { + date.setUTCHours(0, 0, 0, 0); + } else { + date.setUTCHours(value, 0, 0, 0); + } + return date; + } + }]); + return Hour1to12Parser; +}(_Parser2.Parser); +exports.Hour1to12Parser = Hour1to12Parser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js b/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js new file mode 100644 index 0000000..5cda6b3 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js @@ -0,0 +1,112 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ISODayParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCISODay/index.js")); +// ISO day of week +var ISODayParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ISODayParser, _Parser); + var _super = (0, _createSuper2.default)(ISODayParser); + function ISODayParser() { + var _this; + (0, _classCallCheck2.default)(this, ISODayParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'E', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(ISODayParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + var valueCallback = function valueCallback(value) { + if (value === 0) { + return 7; + } + return value; + }; + switch (token) { + // 2 + case 'i': + case 'ii': + // 02 + return (0, _utils.parseNDigits)(token.length, dateString); + // 2nd + case 'io': + return match.ordinalNumber(dateString, { + unit: 'day' + }); + // Tue + case 'iii': + return (0, _utils.mapValue)(match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }), valueCallback); + // T + case 'iiiii': + return (0, _utils.mapValue)(match.day(dateString, { + width: 'narrow', + context: 'formatting' + }), valueCallback); + // Tu + case 'iiiiii': + return (0, _utils.mapValue)(match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }), valueCallback); + // Tuesday + case 'iiii': + default: + return (0, _utils.mapValue)(match.day(dateString, { + width: 'wide', + context: 'formatting' + }) || match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 7; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date = (0, _index.default)(date, value); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return ISODayParser; +}(_Parser2.Parser); +exports.ISODayParser = ISODayParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js b/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js new file mode 100644 index 0000000..b80445e --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js @@ -0,0 +1,60 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ISOTimezoneParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +// Timezone (ISO-8601) +var ISOTimezoneParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ISOTimezoneParser, _Parser); + var _super = (0, _createSuper2.default)(ISOTimezoneParser); + function ISOTimezoneParser() { + var _this; + (0, _classCallCheck2.default)(this, ISOTimezoneParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 10); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['t', 'T', 'X']); + return _this; + } + (0, _createClass2.default)(ISOTimezoneParser, [{ + key: "parse", + value: function parse(dateString, token) { + switch (token) { + case 'x': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalMinutes, dateString); + case 'xx': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basic, dateString); + case 'xxxx': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalSeconds, dateString); + case 'xxxxx': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extendedOptionalSeconds, dateString); + case 'xxx': + default: + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extended, dateString); + } + } + }, { + key: "set", + value: function set(date, flags, value) { + if (flags.timestampIsSet) { + return date; + } + return new Date(date.getTime() - value); + } + }]); + return ISOTimezoneParser; +}(_Parser2.Parser); +exports.ISOTimezoneParser = ISOTimezoneParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js b/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js new file mode 100644 index 0000000..08c70e3 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js @@ -0,0 +1,60 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ISOTimezoneWithZParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +// Timezone (ISO-8601. +00:00 is `'Z'`) +var ISOTimezoneWithZParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ISOTimezoneWithZParser, _Parser); + var _super = (0, _createSuper2.default)(ISOTimezoneWithZParser); + function ISOTimezoneWithZParser() { + var _this; + (0, _classCallCheck2.default)(this, ISOTimezoneWithZParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 10); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['t', 'T', 'x']); + return _this; + } + (0, _createClass2.default)(ISOTimezoneWithZParser, [{ + key: "parse", + value: function parse(dateString, token) { + switch (token) { + case 'X': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalMinutes, dateString); + case 'XX': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basic, dateString); + case 'XXXX': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.basicOptionalSeconds, dateString); + case 'XXXXX': + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extendedOptionalSeconds, dateString); + case 'XXX': + default: + return (0, _utils.parseTimezonePattern)(_constants.timezonePatterns.extended, dateString); + } + } + }, { + key: "set", + value: function set(date, flags, value) { + if (flags.timestampIsSet) { + return date; + } + return new Date(date.getTime() - value); + } + }]); + return ISOTimezoneWithZParser; +}(_Parser2.Parser); +exports.ISOTimezoneWithZParser = ISOTimezoneWithZParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js b/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js new file mode 100644 index 0000000..f60150b --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js @@ -0,0 +1,61 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ISOWeekParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCISOWeek/index.js")); +var _index2 = _interopRequireDefault(require("../../../_lib/startOfUTCISOWeek/index.js")); +// ISO week of year +var ISOWeekParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ISOWeekParser, _Parser); + var _super = (0, _createSuper2.default)(ISOWeekParser); + function ISOWeekParser() { + var _this; + (0, _classCallCheck2.default)(this, ISOWeekParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 100); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(ISOWeekParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'I': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.week, dateString); + case 'Io': + return match.ordinalNumber(dateString, { + unit: 'week' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 53; + } + }, { + key: "set", + value: function set(date, _flags, value) { + return (0, _index2.default)((0, _index.default)(date, value)); + } + }]); + return ISOWeekParser; +}(_Parser2.Parser); +exports.ISOWeekParser = ISOWeekParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js b/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js new file mode 100644 index 0000000..00edb39 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js @@ -0,0 +1,51 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ISOWeekYearParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/startOfUTCISOWeek/index.js")); +// ISO week-numbering year +var ISOWeekYearParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(ISOWeekYearParser, _Parser); + var _super = (0, _createSuper2.default)(ISOWeekYearParser); + function ISOWeekYearParser() { + var _this; + (0, _classCallCheck2.default)(this, ISOWeekYearParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['G', 'y', 'Y', 'u', 'Q', 'q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(ISOWeekYearParser, [{ + key: "parse", + value: function parse(dateString, token) { + if (token === 'R') { + return (0, _utils.parseNDigitsSigned)(4, dateString); + } + return (0, _utils.parseNDigitsSigned)(token.length, dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + var firstWeekOfYear = new Date(0); + firstWeekOfYear.setUTCFullYear(value, 0, 4); + firstWeekOfYear.setUTCHours(0, 0, 0, 0); + return (0, _index.default)(firstWeekOfYear); + } + }]); + return ISOWeekYearParser; +}(_Parser2.Parser); +exports.ISOWeekYearParser = ISOWeekYearParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js b/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js new file mode 100644 index 0000000..49d91da --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js @@ -0,0 +1,110 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.LocalDayParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCDay/index.js")); +// Local day of week +var LocalDayParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(LocalDayParser, _Parser); + var _super = (0, _createSuper2.default)(LocalDayParser); + function LocalDayParser() { + var _this; + (0, _classCallCheck2.default)(this, LocalDayParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(LocalDayParser, [{ + key: "parse", + value: function parse(dateString, token, match, options) { + var valueCallback = function valueCallback(value) { + var wholeWeekDays = Math.floor((value - 1) / 7) * 7; + return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays; + }; + switch (token) { + // 3 + case 'e': + case 'ee': + // 03 + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + // 3rd + case 'eo': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'day' + }), valueCallback); + // Tue + case 'eee': + return match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // T + case 'eeeee': + return match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // Tu + case 'eeeeee': + return match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + // Tuesday + case 'eeee': + default: + return match.day(dateString, { + width: 'wide', + context: 'formatting' + }) || match.day(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.day(dateString, { + width: 'short', + context: 'formatting' + }) || match.day(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options) { + date = (0, _index.default)(date, value, options); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return LocalDayParser; +}(_Parser2.Parser); +exports.LocalDayParser = LocalDayParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js b/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js new file mode 100644 index 0000000..5c01c41 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js @@ -0,0 +1,61 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.LocalWeekParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCWeek/index.js")); +var _index2 = _interopRequireDefault(require("../../../_lib/startOfUTCWeek/index.js")); +// Local week of year +var LocalWeekParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(LocalWeekParser, _Parser); + var _super = (0, _createSuper2.default)(LocalWeekParser); + function LocalWeekParser() { + var _this; + (0, _classCallCheck2.default)(this, LocalWeekParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 100); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']); + return _this; + } + (0, _createClass2.default)(LocalWeekParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'w': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.week, dateString); + case 'wo': + return match.ordinalNumber(dateString, { + unit: 'week' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 53; + } + }, { + key: "set", + value: function set(date, _flags, value, options) { + return (0, _index2.default)((0, _index.default)(date, value, options), options); + } + }]); + return LocalWeekParser; +}(_Parser2.Parser); +exports.LocalWeekParser = LocalWeekParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js b/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js new file mode 100644 index 0000000..c9b5887 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js @@ -0,0 +1,76 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.LocalWeekYearParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/getUTCWeekYear/index.js")); +var _index2 = _interopRequireDefault(require("../../../_lib/startOfUTCWeek/index.js")); +// Local week-numbering year +var LocalWeekYearParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(LocalWeekYearParser, _Parser); + var _super = (0, _createSuper2.default)(LocalWeekYearParser); + function LocalWeekYearParser() { + var _this; + (0, _classCallCheck2.default)(this, LocalWeekYearParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'R', 'u', 'Q', 'q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']); + return _this; + } + (0, _createClass2.default)(LocalWeekYearParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + var valueCallback = function valueCallback(year) { + return { + year: year, + isTwoDigitYear: token === 'YY' + }; + }; + switch (token) { + case 'Y': + return (0, _utils.mapValue)((0, _utils.parseNDigits)(4, dateString), valueCallback); + case 'Yo': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'year' + }), valueCallback); + default: + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value.isTwoDigitYear || value.year > 0; + } + }, { + key: "set", + value: function set(date, flags, value, options) { + var currentYear = (0, _index.default)(date, options); + if (value.isTwoDigitYear) { + var normalizedTwoDigitYear = (0, _utils.normalizeTwoDigitYear)(value.year, currentYear); + date.setUTCFullYear(normalizedTwoDigitYear, 0, options.firstWeekContainsDate); + date.setUTCHours(0, 0, 0, 0); + return (0, _index2.default)(date, options); + } + var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; + date.setUTCFullYear(year, 0, options.firstWeekContainsDate); + date.setUTCHours(0, 0, 0, 0); + return (0, _index2.default)(date, options); + } + }]); + return LocalWeekYearParser; +}(_Parser2.Parser); +exports.LocalWeekYearParser = LocalWeekYearParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js b/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js new file mode 100644 index 0000000..93e551b --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js @@ -0,0 +1,59 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.MinuteParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var MinuteParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(MinuteParser, _Parser); + var _super = (0, _createSuper2.default)(MinuteParser); + function MinuteParser() { + var _this; + (0, _classCallCheck2.default)(this, MinuteParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 60); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['t', 'T']); + return _this; + } + (0, _createClass2.default)(MinuteParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 'm': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.minute, dateString); + case 'mo': + return match.ordinalNumber(dateString, { + unit: 'minute' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 59; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMinutes(value, 0, 0); + return date; + } + }]); + return MinuteParser; +}(_Parser2.Parser); +exports.MinuteParser = MinuteParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/MonthParser.js b/node_modules/date-fns/parse/_lib/parsers/MonthParser.js new file mode 100644 index 0000000..f856c72 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/MonthParser.js @@ -0,0 +1,94 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.MonthParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _utils = require("../utils.js"); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var MonthParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(MonthParser, _Parser); + var _super = (0, _createSuper2.default)(MonthParser); + function MonthParser() { + var _this; + (0, _classCallCheck2.default)(this, MonthParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'q', 'Q', 'L', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 110); + return _this; + } + (0, _createClass2.default)(MonthParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + var valueCallback = function valueCallback(value) { + return value - 1; + }; + switch (token) { + // 1, 2, ..., 12 + case 'M': + return (0, _utils.mapValue)((0, _utils.parseNumericPattern)(_constants.numericPatterns.month, dateString), valueCallback); + // 01, 02, ..., 12 + case 'MM': + return (0, _utils.mapValue)((0, _utils.parseNDigits)(2, dateString), valueCallback); + // 1st, 2nd, ..., 12th + case 'Mo': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'month' + }), valueCallback); + // Jan, Feb, ..., Dec + case 'MMM': + return match.month(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.month(dateString, { + width: 'narrow', + context: 'formatting' + }); + // J, F, ..., D + case 'MMMMM': + return match.month(dateString, { + width: 'narrow', + context: 'formatting' + }); + // January, February, ..., December + case 'MMMM': + default: + return match.month(dateString, { + width: 'wide', + context: 'formatting' + }) || match.month(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.month(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(value, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return MonthParser; +}(_Parser2.Parser); +exports.MonthParser = MonthParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js b/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js new file mode 100644 index 0000000..3b88da0 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js @@ -0,0 +1,89 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.QuarterParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var QuarterParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(QuarterParser, _Parser); + var _super = (0, _createSuper2.default)(QuarterParser); + function QuarterParser() { + var _this; + (0, _classCallCheck2.default)(this, QuarterParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 120); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(QuarterParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + // 1, 2, 3, 4 + case 'Q': + case 'QQ': + // 01, 02, 03, 04 + return (0, _utils.parseNDigits)(token.length, dateString); + // 1st, 2nd, 3rd, 4th + case 'Qo': + return match.ordinalNumber(dateString, { + unit: 'quarter' + }); + // Q1, Q2, Q3, Q4 + case 'QQQ': + return match.quarter(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.quarter(dateString, { + width: 'narrow', + context: 'formatting' + }); + // 1, 2, 3, 4 (narrow quarter; could be not numerical) + case 'QQQQQ': + return match.quarter(dateString, { + width: 'narrow', + context: 'formatting' + }); + // 1st quarter, 2nd quarter, ... + case 'QQQQ': + default: + return match.quarter(dateString, { + width: 'wide', + context: 'formatting' + }) || match.quarter(dateString, { + width: 'abbreviated', + context: 'formatting' + }) || match.quarter(dateString, { + width: 'narrow', + context: 'formatting' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 4; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth((value - 1) * 3, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return QuarterParser; +}(_Parser2.Parser); +exports.QuarterParser = QuarterParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/SecondParser.js b/node_modules/date-fns/parse/_lib/parsers/SecondParser.js new file mode 100644 index 0000000..705511e --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/SecondParser.js @@ -0,0 +1,59 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.SecondParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var SecondParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(SecondParser, _Parser); + var _super = (0, _createSuper2.default)(SecondParser); + function SecondParser() { + var _this; + (0, _classCallCheck2.default)(this, SecondParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 50); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['t', 'T']); + return _this; + } + (0, _createClass2.default)(SecondParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + case 's': + return (0, _utils.parseNumericPattern)(_constants.numericPatterns.second, dateString); + case 'so': + return match.ordinalNumber(dateString, { + unit: 'second' + }); + default: + return (0, _utils.parseNDigits)(token.length, dateString); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 59; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCSeconds(value, 0); + return date; + } + }]); + return SecondParser; +}(_Parser2.Parser); +exports.SecondParser = SecondParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js b/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js new file mode 100644 index 0000000..96bed0a --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js @@ -0,0 +1,110 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.StandAloneLocalDayParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var _index = _interopRequireDefault(require("../../../_lib/setUTCDay/index.js")); +// Stand-alone local day of week +var StandAloneLocalDayParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(StandAloneLocalDayParser, _Parser); + var _super = (0, _createSuper2.default)(StandAloneLocalDayParser); + function StandAloneLocalDayParser() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneLocalDayParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'e', 't', 'T']); + return _this; + } + (0, _createClass2.default)(StandAloneLocalDayParser, [{ + key: "parse", + value: function parse(dateString, token, match, options) { + var valueCallback = function valueCallback(value) { + var wholeWeekDays = Math.floor((value - 1) / 7) * 7; + return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays; + }; + switch (token) { + // 3 + case 'c': + case 'cc': + // 03 + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + // 3rd + case 'co': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'day' + }), valueCallback); + // Tue + case 'ccc': + return match.day(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.day(dateString, { + width: 'short', + context: 'standalone' + }) || match.day(dateString, { + width: 'narrow', + context: 'standalone' + }); + // T + case 'ccccc': + return match.day(dateString, { + width: 'narrow', + context: 'standalone' + }); + // Tu + case 'cccccc': + return match.day(dateString, { + width: 'short', + context: 'standalone' + }) || match.day(dateString, { + width: 'narrow', + context: 'standalone' + }); + // Tuesday + case 'cccc': + default: + return match.day(dateString, { + width: 'wide', + context: 'standalone' + }) || match.day(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.day(dateString, { + width: 'short', + context: 'standalone' + }) || match.day(dateString, { + width: 'narrow', + context: 'standalone' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 6; + } + }, { + key: "set", + value: function set(date, _flags, value, options) { + date = (0, _index.default)(date, value, options); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneLocalDayParser; +}(_Parser2.Parser); +exports.StandAloneLocalDayParser = StandAloneLocalDayParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js b/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js new file mode 100644 index 0000000..524740b --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js @@ -0,0 +1,94 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.StandAloneMonthParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _constants = require("../constants.js"); +var _utils = require("../utils.js"); +var StandAloneMonthParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(StandAloneMonthParser, _Parser); + var _super = (0, _createSuper2.default)(StandAloneMonthParser); + function StandAloneMonthParser() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneMonthParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 110); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'q', 'Q', 'M', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(StandAloneMonthParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + var valueCallback = function valueCallback(value) { + return value - 1; + }; + switch (token) { + // 1, 2, ..., 12 + case 'L': + return (0, _utils.mapValue)((0, _utils.parseNumericPattern)(_constants.numericPatterns.month, dateString), valueCallback); + // 01, 02, ..., 12 + case 'LL': + return (0, _utils.mapValue)((0, _utils.parseNDigits)(2, dateString), valueCallback); + // 1st, 2nd, ..., 12th + case 'Lo': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'month' + }), valueCallback); + // Jan, Feb, ..., Dec + case 'LLL': + return match.month(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.month(dateString, { + width: 'narrow', + context: 'standalone' + }); + // J, F, ..., D + case 'LLLLL': + return match.month(dateString, { + width: 'narrow', + context: 'standalone' + }); + // January, February, ..., December + case 'LLLL': + default: + return match.month(dateString, { + width: 'wide', + context: 'standalone' + }) || match.month(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.month(dateString, { + width: 'narrow', + context: 'standalone' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 0 && value <= 11; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth(value, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneMonthParser; +}(_Parser2.Parser); +exports.StandAloneMonthParser = StandAloneMonthParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js b/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js new file mode 100644 index 0000000..7f18d8e --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js @@ -0,0 +1,89 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.StandAloneQuarterParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var StandAloneQuarterParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(StandAloneQuarterParser, _Parser); + var _super = (0, _createSuper2.default)(StandAloneQuarterParser); + function StandAloneQuarterParser() { + var _this; + (0, _classCallCheck2.default)(this, StandAloneQuarterParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 120); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'Q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(StandAloneQuarterParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + switch (token) { + // 1, 2, 3, 4 + case 'q': + case 'qq': + // 01, 02, 03, 04 + return (0, _utils.parseNDigits)(token.length, dateString); + // 1st, 2nd, 3rd, 4th + case 'qo': + return match.ordinalNumber(dateString, { + unit: 'quarter' + }); + // Q1, Q2, Q3, Q4 + case 'qqq': + return match.quarter(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.quarter(dateString, { + width: 'narrow', + context: 'standalone' + }); + // 1, 2, 3, 4 (narrow quarter; could be not numerical) + case 'qqqqq': + return match.quarter(dateString, { + width: 'narrow', + context: 'standalone' + }); + // 1st quarter, 2nd quarter, ... + case 'qqqq': + default: + return match.quarter(dateString, { + width: 'wide', + context: 'standalone' + }) || match.quarter(dateString, { + width: 'abbreviated', + context: 'standalone' + }) || match.quarter(dateString, { + width: 'narrow', + context: 'standalone' + }); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value >= 1 && value <= 4; + } + }, { + key: "set", + value: function set(date, _flags, value) { + date.setUTCMonth((value - 1) * 3, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return StandAloneQuarterParser; +}(_Parser2.Parser); +exports.StandAloneQuarterParser = StandAloneQuarterParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js b/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js new file mode 100644 index 0000000..fd3eafd --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js @@ -0,0 +1,45 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TimestampMillisecondsParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var TimestampMillisecondsParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(TimestampMillisecondsParser, _Parser); + var _super = (0, _createSuper2.default)(TimestampMillisecondsParser); + function TimestampMillisecondsParser() { + var _this; + (0, _classCallCheck2.default)(this, TimestampMillisecondsParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 20); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", '*'); + return _this; + } + (0, _createClass2.default)(TimestampMillisecondsParser, [{ + key: "parse", + value: function parse(dateString) { + return (0, _utils.parseAnyDigitsSigned)(dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + return [new Date(value), { + timestampIsSet: true + }]; + } + }]); + return TimestampMillisecondsParser; +}(_Parser2.Parser); +exports.TimestampMillisecondsParser = TimestampMillisecondsParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js b/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js new file mode 100644 index 0000000..cd38cda --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js @@ -0,0 +1,45 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TimestampSecondsParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +var TimestampSecondsParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(TimestampSecondsParser, _Parser); + var _super = (0, _createSuper2.default)(TimestampSecondsParser); + function TimestampSecondsParser() { + var _this; + (0, _classCallCheck2.default)(this, TimestampSecondsParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 40); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", '*'); + return _this; + } + (0, _createClass2.default)(TimestampSecondsParser, [{ + key: "parse", + value: function parse(dateString) { + return (0, _utils.parseAnyDigitsSigned)(dateString); + } + }, { + key: "set", + value: function set(_date, _flags, value) { + return [new Date(value * 1000), { + timestampIsSet: true + }]; + } + }]); + return TimestampSecondsParser; +}(_Parser2.Parser); +exports.TimestampSecondsParser = TimestampSecondsParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/YearParser.js b/node_modules/date-fns/parse/_lib/parsers/YearParser.js new file mode 100644 index 0000000..45e3d2b --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/YearParser.js @@ -0,0 +1,81 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.YearParser = void 0; +var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); +var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); +var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); +var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper")); +var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); +var _Parser2 = require("../Parser.js"); +var _utils = require("../utils.js"); +// From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns +// | Year | y | yy | yyy | yyyy | yyyyy | +// |----------|-------|----|-------|-------|-------| +// | AD 1 | 1 | 01 | 001 | 0001 | 00001 | +// | AD 12 | 12 | 12 | 012 | 0012 | 00012 | +// | AD 123 | 123 | 23 | 123 | 0123 | 00123 | +// | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 | +// | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 | +var YearParser = /*#__PURE__*/function (_Parser) { + (0, _inherits2.default)(YearParser, _Parser); + var _super = (0, _createSuper2.default)(YearParser); + function YearParser() { + var _this; + (0, _classCallCheck2.default)(this, YearParser); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _super.call.apply(_super, [this].concat(args)); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 130); + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['Y', 'R', 'u', 'w', 'I', 'i', 'e', 'c', 't', 'T']); + return _this; + } + (0, _createClass2.default)(YearParser, [{ + key: "parse", + value: function parse(dateString, token, match) { + var valueCallback = function valueCallback(year) { + return { + year: year, + isTwoDigitYear: token === 'yy' + }; + }; + switch (token) { + case 'y': + return (0, _utils.mapValue)((0, _utils.parseNDigits)(4, dateString), valueCallback); + case 'yo': + return (0, _utils.mapValue)(match.ordinalNumber(dateString, { + unit: 'year' + }), valueCallback); + default: + return (0, _utils.mapValue)((0, _utils.parseNDigits)(token.length, dateString), valueCallback); + } + } + }, { + key: "validate", + value: function validate(_date, value) { + return value.isTwoDigitYear || value.year > 0; + } + }, { + key: "set", + value: function set(date, flags, value) { + var currentYear = date.getUTCFullYear(); + if (value.isTwoDigitYear) { + var normalizedTwoDigitYear = (0, _utils.normalizeTwoDigitYear)(value.year, currentYear); + date.setUTCFullYear(normalizedTwoDigitYear, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year; + date.setUTCFullYear(year, 0, 1); + date.setUTCHours(0, 0, 0, 0); + return date; + } + }]); + return YearParser; +}(_Parser2.Parser); +exports.YearParser = YearParser; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/parsers/index.js b/node_modules/date-fns/parse/_lib/parsers/index.js new file mode 100644 index 0000000..9bd3f90 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/parsers/index.js @@ -0,0 +1,114 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parsers = void 0; +var _EraParser = require("./EraParser.js"); +var _YearParser = require("./YearParser.js"); +var _LocalWeekYearParser = require("./LocalWeekYearParser.js"); +var _ISOWeekYearParser = require("./ISOWeekYearParser.js"); +var _ExtendedYearParser = require("./ExtendedYearParser.js"); +var _QuarterParser = require("./QuarterParser.js"); +var _StandAloneQuarterParser = require("./StandAloneQuarterParser.js"); +var _MonthParser = require("./MonthParser.js"); +var _StandAloneMonthParser = require("./StandAloneMonthParser.js"); +var _LocalWeekParser = require("./LocalWeekParser.js"); +var _ISOWeekParser = require("./ISOWeekParser.js"); +var _DateParser = require("./DateParser.js"); +var _DayOfYearParser = require("./DayOfYearParser.js"); +var _DayParser = require("./DayParser.js"); +var _LocalDayParser = require("./LocalDayParser.js"); +var _StandAloneLocalDayParser = require("./StandAloneLocalDayParser.js"); +var _ISODayParser = require("./ISODayParser.js"); +var _AMPMParser = require("./AMPMParser.js"); +var _AMPMMidnightParser = require("./AMPMMidnightParser.js"); +var _DayPeriodParser = require("./DayPeriodParser.js"); +var _Hour1to12Parser = require("./Hour1to12Parser.js"); +var _Hour0to23Parser = require("./Hour0to23Parser.js"); +var _Hour0To11Parser = require("./Hour0To11Parser.js"); +var _Hour1To24Parser = require("./Hour1To24Parser.js"); +var _MinuteParser = require("./MinuteParser.js"); +var _SecondParser = require("./SecondParser.js"); +var _FractionOfSecondParser = require("./FractionOfSecondParser.js"); +var _ISOTimezoneWithZParser = require("./ISOTimezoneWithZParser.js"); +var _ISOTimezoneParser = require("./ISOTimezoneParser.js"); +var _TimestampSecondsParser = require("./TimestampSecondsParser.js"); +var _TimestampMillisecondsParser = require("./TimestampMillisecondsParser.js"); +/* + * | | Unit | | Unit | + * |-----|--------------------------------|-----|--------------------------------| + * | a | AM, PM | A* | Milliseconds in day | + * | b | AM, PM, noon, midnight | B | Flexible day period | + * | c | Stand-alone local day of week | C* | Localized hour w/ day period | + * | d | Day of month | D | Day of year | + * | e | Local day of week | E | Day of week | + * | f | | F* | Day of week in month | + * | g* | Modified Julian day | G | Era | + * | h | Hour [1-12] | H | Hour [0-23] | + * | i! | ISO day of week | I! | ISO week of year | + * | j* | Localized hour w/ day period | J* | Localized hour w/o day period | + * | k | Hour [1-24] | K | Hour [0-11] | + * | l* | (deprecated) | L | Stand-alone month | + * | m | Minute | M | Month | + * | n | | N | | + * | o! | Ordinal number modifier | O* | Timezone (GMT) | + * | p | | P | | + * | q | Stand-alone quarter | Q | Quarter | + * | r* | Related Gregorian year | R! | ISO week-numbering year | + * | s | Second | S | Fraction of second | + * | t! | Seconds timestamp | T! | Milliseconds timestamp | + * | u | Extended year | U* | Cyclic year | + * | v* | Timezone (generic non-locat.) | V* | Timezone (location) | + * | w | Local week of year | W* | Week of month | + * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) | + * | y | Year (abs) | Y | Local week-numbering year | + * | z* | Timezone (specific non-locat.) | Z* | Timezone (aliases) | + * + * Letters marked by * are not implemented but reserved by Unicode standard. + * + * Letters marked by ! are non-standard, but implemented by date-fns: + * - `o` modifies the previous token to turn it into an ordinal (see `parse` docs) + * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days, + * i.e. 7 for Sunday, 1 for Monday, etc. + * - `I` is ISO week of year, as opposed to `w` which is local week of year. + * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year. + * `R` is supposed to be used in conjunction with `I` and `i` + * for universal ISO week-numbering date, whereas + * `Y` is supposed to be used in conjunction with `w` and `e` + * for week-numbering date specific to the locale. + */ +var parsers = { + G: new _EraParser.EraParser(), + y: new _YearParser.YearParser(), + Y: new _LocalWeekYearParser.LocalWeekYearParser(), + R: new _ISOWeekYearParser.ISOWeekYearParser(), + u: new _ExtendedYearParser.ExtendedYearParser(), + Q: new _QuarterParser.QuarterParser(), + q: new _StandAloneQuarterParser.StandAloneQuarterParser(), + M: new _MonthParser.MonthParser(), + L: new _StandAloneMonthParser.StandAloneMonthParser(), + w: new _LocalWeekParser.LocalWeekParser(), + I: new _ISOWeekParser.ISOWeekParser(), + d: new _DateParser.DateParser(), + D: new _DayOfYearParser.DayOfYearParser(), + E: new _DayParser.DayParser(), + e: new _LocalDayParser.LocalDayParser(), + c: new _StandAloneLocalDayParser.StandAloneLocalDayParser(), + i: new _ISODayParser.ISODayParser(), + a: new _AMPMParser.AMPMParser(), + b: new _AMPMMidnightParser.AMPMMidnightParser(), + B: new _DayPeriodParser.DayPeriodParser(), + h: new _Hour1to12Parser.Hour1to12Parser(), + H: new _Hour0to23Parser.Hour0to23Parser(), + K: new _Hour0To11Parser.Hour0To11Parser(), + k: new _Hour1To24Parser.Hour1To24Parser(), + m: new _MinuteParser.MinuteParser(), + s: new _SecondParser.SecondParser(), + S: new _FractionOfSecondParser.FractionOfSecondParser(), + X: new _ISOTimezoneWithZParser.ISOTimezoneWithZParser(), + x: new _ISOTimezoneParser.ISOTimezoneParser(), + t: new _TimestampSecondsParser.TimestampSecondsParser(), + T: new _TimestampMillisecondsParser.TimestampMillisecondsParser() +}; +exports.parsers = parsers; \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/types.js b/node_modules/date-fns/parse/_lib/types.js new file mode 100644 index 0000000..430afc1 --- /dev/null +++ b/node_modules/date-fns/parse/_lib/types.js @@ -0,0 +1,5 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); \ No newline at end of file diff --git a/node_modules/date-fns/parse/_lib/utils.js b/node_modules/date-fns/parse/_lib/utils.js new file mode 100644 index 0000000..dba676c --- /dev/null +++ b/node_modules/date-fns/parse/_lib/utils.js @@ -0,0 +1,126 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.dayPeriodEnumToHours = dayPeriodEnumToHours; +exports.isLeapYearIndex = isLeapYearIndex; +exports.mapValue = mapValue; +exports.normalizeTwoDigitYear = normalizeTwoDigitYear; +exports.parseAnyDigitsSigned = parseAnyDigitsSigned; +exports.parseNDigits = parseNDigits; +exports.parseNDigitsSigned = parseNDigitsSigned; +exports.parseNumericPattern = parseNumericPattern; +exports.parseTimezonePattern = parseTimezonePattern; +var _index = require("../../constants/index.js"); +var _constants = require("./constants.js"); +function mapValue(parseFnResult, mapFn) { + if (!parseFnResult) { + return parseFnResult; + } + return { + value: mapFn(parseFnResult.value), + rest: parseFnResult.rest + }; +} +function parseNumericPattern(pattern, dateString) { + var matchResult = dateString.match(pattern); + if (!matchResult) { + return null; + } + return { + value: parseInt(matchResult[0], 10), + rest: dateString.slice(matchResult[0].length) + }; +} +function parseTimezonePattern(pattern, dateString) { + var matchResult = dateString.match(pattern); + if (!matchResult) { + return null; + } + + // Input is 'Z' + if (matchResult[0] === 'Z') { + return { + value: 0, + rest: dateString.slice(1) + }; + } + var sign = matchResult[1] === '+' ? 1 : -1; + var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0; + var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0; + var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0; + return { + value: sign * (hours * _index.millisecondsInHour + minutes * _index.millisecondsInMinute + seconds * _index.millisecondsInSecond), + rest: dateString.slice(matchResult[0].length) + }; +} +function parseAnyDigitsSigned(dateString) { + return parseNumericPattern(_constants.numericPatterns.anyDigitsSigned, dateString); +} +function parseNDigits(n, dateString) { + switch (n) { + case 1: + return parseNumericPattern(_constants.numericPatterns.singleDigit, dateString); + case 2: + return parseNumericPattern(_constants.numericPatterns.twoDigits, dateString); + case 3: + return parseNumericPattern(_constants.numericPatterns.threeDigits, dateString); + case 4: + return parseNumericPattern(_constants.numericPatterns.fourDigits, dateString); + default: + return parseNumericPattern(new RegExp('^\\d{1,' + n + '}'), dateString); + } +} +function parseNDigitsSigned(n, dateString) { + switch (n) { + case 1: + return parseNumericPattern(_constants.numericPatterns.singleDigitSigned, dateString); + case 2: + return parseNumericPattern(_constants.numericPatterns.twoDigitsSigned, dateString); + case 3: + return parseNumericPattern(_constants.numericPatterns.threeDigitsSigned, dateString); + case 4: + return parseNumericPattern(_constants.numericPatterns.fourDigitsSigned, dateString); + default: + return parseNumericPattern(new RegExp('^-?\\d{1,' + n + '}'), dateString); + } +} +function dayPeriodEnumToHours(dayPeriod) { + switch (dayPeriod) { + case 'morning': + return 4; + case 'evening': + return 17; + case 'pm': + case 'noon': + case 'afternoon': + return 12; + case 'am': + case 'midnight': + case 'night': + default: + return 0; + } +} +function normalizeTwoDigitYear(twoDigitYear, currentYear) { + var isCommonEra = currentYear > 0; + // Absolute number of the current year: + // 1 -> 1 AC + // 0 -> 1 BC + // -1 -> 2 BC + var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear; + var result; + if (absCurrentYear <= 50) { + result = twoDigitYear || 100; + } else { + var rangeEnd = absCurrentYear + 50; + var rangeEndCentury = Math.floor(rangeEnd / 100) * 100; + var isPreviousCentury = twoDigitYear >= rangeEnd % 100; + result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0); + } + return isCommonEra ? result : 1 - result; +} +function isLeapYearIndex(year) { + return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0; +} \ No newline at end of file diff --git a/node_modules/date-fns/parse/index.d.ts b/node_modules/date-fns/parse/index.d.ts new file mode 100644 index 0000000..2c5eb60 --- /dev/null +++ b/node_modules/date-fns/parse/index.d.ts @@ -0,0 +1,4 @@ +// This file is generated automatically by `scripts/build/typings.js`. Please, don't change it. + +import { parse } from 'date-fns' +export default parse diff --git a/node_modules/date-fns/parse/index.js b/node_modules/date-fns/parse/index.js new file mode 100644 index 0000000..324fe25 --- /dev/null +++ b/node_modules/date-fns/parse/index.js @@ -0,0 +1,514 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = parse; +var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); +var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper")); +var _index = _interopRequireDefault(require("../_lib/defaultLocale/index.js")); +var _index2 = _interopRequireDefault(require("../subMilliseconds/index.js")); +var _index3 = _interopRequireDefault(require("../toDate/index.js")); +var _index4 = _interopRequireDefault(require("../_lib/assign/index.js")); +var _index5 = _interopRequireDefault(require("../_lib/format/longFormatters/index.js")); +var _index6 = _interopRequireDefault(require("../_lib/getTimezoneOffsetInMilliseconds/index.js")); +var _index7 = require("../_lib/protectedTokens/index.js"); +var _index8 = _interopRequireDefault(require("../_lib/toInteger/index.js")); +var _index9 = _interopRequireDefault(require("../_lib/requiredArgs/index.js")); +var _Setter = require("./_lib/Setter.js"); +var _index10 = require("./_lib/parsers/index.js"); +var _index11 = require("../_lib/defaultOptions/index.js"); +// This RegExp consists of three parts separated by `|`: +// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token +// (one of the certain letters followed by `o`) +// - (\w)\1* matches any sequences of the same letter +// - '' matches two quote characters in a row +// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('), +// except a single quote symbol, which ends the sequence. +// Two quote characters do not end the sequence. +// If there is no matching single quote +// then the sequence will continue until the end of the string. +// - . matches any single character unmatched by previous parts of the RegExps +var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; + +// This RegExp catches symbols escaped by quotes, and also +// sequences of symbols P, p, and the combinations like `PPPPPPPppppp` +var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; +var escapedStringRegExp = /^'([^]*?)'?$/; +var doubleQuoteRegExp = /''/g; +var notWhitespaceRegExp = /\S/; +var unescapedLatinCharacterRegExp = /[a-zA-Z]/; + +/** + * @name parse + * @category Common Helpers + * @summary Parse the date. + * + * @description + * Return the date parsed from string using the given format string. + * + * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries. + * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * The characters in the format string wrapped between two single quotes characters (') are escaped. + * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote. + * + * Format of the format string is based on Unicode Technical Standard #35: + * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table + * with a few additions (see note 5 below the table). + * + * Not all tokens are compatible. Combinations that don't make sense or could lead to bugs are prohibited + * and will throw `RangeError`. For example usage of 24-hour format token with AM/PM token will throw an exception: + * + * ```javascript + * parse('23 AM', 'HH a', new Date()) + * //=> RangeError: The format string mustn't contain `HH` and `a` at the same time + * ``` + * + * See the compatibility table: https://docs.google.com/spreadsheets/d/e/2PACX-1vQOPU3xUhplll6dyoMmVUXHKl_8CRDs6_ueLmex3SoqwhuolkuN3O05l4rqx5h1dKX8eb46Ul-CCSrq/pubhtml?gid=0&single=true + * + * Accepted format string patterns: + * | Unit |Prior| Pattern | Result examples | Notes | + * |---------------------------------|-----|---------|-----------------------------------|-------| + * | Era | 140 | G..GGG | AD, BC | | + * | | | GGGG | Anno Domini, Before Christ | 2 | + * | | | GGGGG | A, B | | + * | Calendar year | 130 | y | 44, 1, 1900, 2017, 9999 | 4 | + * | | | yo | 44th, 1st, 1900th, 9999999th | 4,5 | + * | | | yy | 44, 01, 00, 17 | 4 | + * | | | yyy | 044, 001, 123, 999 | 4 | + * | | | yyyy | 0044, 0001, 1900, 2017 | 4 | + * | | | yyyyy | ... | 2,4 | + * | Local week-numbering year | 130 | Y | 44, 1, 1900, 2017, 9000 | 4 | + * | | | Yo | 44th, 1st, 1900th, 9999999th | 4,5 | + * | | | YY | 44, 01, 00, 17 | 4,6 | + * | | | YYY | 044, 001, 123, 999 | 4 | + * | | | YYYY | 0044, 0001, 1900, 2017 | 4,6 | + * | | | YYYYY | ... | 2,4 | + * | ISO week-numbering year | 130 | R | -43, 1, 1900, 2017, 9999, -9999 | 4,5 | + * | | | RR | -43, 01, 00, 17 | 4,5 | + * | | | RRR | -043, 001, 123, 999, -999 | 4,5 | + * | | | RRRR | -0043, 0001, 2017, 9999, -9999 | 4,5 | + * | | | RRRRR | ... | 2,4,5 | + * | Extended year | 130 | u | -43, 1, 1900, 2017, 9999, -999 | 4 | + * | | | uu | -43, 01, 99, -99 | 4 | + * | | | uuu | -043, 001, 123, 999, -999 | 4 | + * | | | uuuu | -0043, 0001, 2017, 9999, -9999 | 4 | + * | | | uuuuu | ... | 2,4 | + * | Quarter (formatting) | 120 | Q | 1, 2, 3, 4 | | + * | | | Qo | 1st, 2nd, 3rd, 4th | 5 | + * | | | QQ | 01, 02, 03, 04 | | + * | | | QQQ | Q1, Q2, Q3, Q4 | | + * | | | QQQQ | 1st quarter, 2nd quarter, ... | 2 | + * | | | QQQQQ | 1, 2, 3, 4 | 4 | + * | Quarter (stand-alone) | 120 | q | 1, 2, 3, 4 | | + * | | | qo | 1st, 2nd, 3rd, 4th | 5 | + * | | | qq | 01, 02, 03, 04 | | + * | | | qqq | Q1, Q2, Q3, Q4 | | + * | | | qqqq | 1st quarter, 2nd quarter, ... | 2 | + * | | | qqqqq | 1, 2, 3, 4 | 3 | + * | Month (formatting) | 110 | M | 1, 2, ..., 12 | | + * | | | Mo | 1st, 2nd, ..., 12th | 5 | + * | | | MM | 01, 02, ..., 12 | | + * | | | MMM | Jan, Feb, ..., Dec | | + * | | | MMMM | January, February, ..., December | 2 | + * | | | MMMMM | J, F, ..., D | | + * | Month (stand-alone) | 110 | L | 1, 2, ..., 12 | | + * | | | Lo | 1st, 2nd, ..., 12th | 5 | + * | | | LL | 01, 02, ..., 12 | | + * | | | LLL | Jan, Feb, ..., Dec | | + * | | | LLLL | January, February, ..., December | 2 | + * | | | LLLLL | J, F, ..., D | | + * | Local week of year | 100 | w | 1, 2, ..., 53 | | + * | | | wo | 1st, 2nd, ..., 53th | 5 | + * | | | ww | 01, 02, ..., 53 | | + * | ISO week of year | 100 | I | 1, 2, ..., 53 | 5 | + * | | | Io | 1st, 2nd, ..., 53th | 5 | + * | | | II | 01, 02, ..., 53 | 5 | + * | Day of month | 90 | d | 1, 2, ..., 31 | | + * | | | do | 1st, 2nd, ..., 31st | 5 | + * | | | dd | 01, 02, ..., 31 | | + * | Day of year | 90 | D | 1, 2, ..., 365, 366 | 7 | + * | | | Do | 1st, 2nd, ..., 365th, 366th | 5 | + * | | | DD | 01, 02, ..., 365, 366 | 7 | + * | | | DDD | 001, 002, ..., 365, 366 | | + * | | | DDDD | ... | 2 | + * | Day of week (formatting) | 90 | E..EEE | Mon, Tue, Wed, ..., Sun | | + * | | | EEEE | Monday, Tuesday, ..., Sunday | 2 | + * | | | EEEEE | M, T, W, T, F, S, S | | + * | | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | | + * | ISO day of week (formatting) | 90 | i | 1, 2, 3, ..., 7 | 5 | + * | | | io | 1st, 2nd, ..., 7th | 5 | + * | | | ii | 01, 02, ..., 07 | 5 | + * | | | iii | Mon, Tue, Wed, ..., Sun | 5 | + * | | | iiii | Monday, Tuesday, ..., Sunday | 2,5 | + * | | | iiiii | M, T, W, T, F, S, S | 5 | + * | | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 5 | + * | Local day of week (formatting) | 90 | e | 2, 3, 4, ..., 1 | | + * | | | eo | 2nd, 3rd, ..., 1st | 5 | + * | | | ee | 02, 03, ..., 01 | | + * | | | eee | Mon, Tue, Wed, ..., Sun | | + * | | | eeee | Monday, Tuesday, ..., Sunday | 2 | + * | | | eeeee | M, T, W, T, F, S, S | | + * | | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | | + * | Local day of week (stand-alone) | 90 | c | 2, 3, 4, ..., 1 | | + * | | | co | 2nd, 3rd, ..., 1st | 5 | + * | | | cc | 02, 03, ..., 01 | | + * | | | ccc | Mon, Tue, Wed, ..., Sun | | + * | | | cccc | Monday, Tuesday, ..., Sunday | 2 | + * | | | ccccc | M, T, W, T, F, S, S | | + * | | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | | + * | AM, PM | 80 | a..aaa | AM, PM | | + * | | | aaaa | a.m., p.m. | 2 | + * | | | aaaaa | a, p | | + * | AM, PM, noon, midnight | 80 | b..bbb | AM, PM, noon, midnight | | + * | | | bbbb | a.m., p.m., noon, midnight | 2 | + * | | | bbbbb | a, p, n, mi | | + * | Flexible day period | 80 | B..BBB | at night, in the morning, ... | | + * | | | BBBB | at night, in the morning, ... | 2 | + * | | | BBBBB | at night, in the morning, ... | | + * | Hour [1-12] | 70 | h | 1, 2, ..., 11, 12 | | + * | | | ho | 1st, 2nd, ..., 11th, 12th | 5 | + * | | | hh | 01, 02, ..., 11, 12 | | + * | Hour [0-23] | 70 | H | 0, 1, 2, ..., 23 | | + * | | | Ho | 0th, 1st, 2nd, ..., 23rd | 5 | + * | | | HH | 00, 01, 02, ..., 23 | | + * | Hour [0-11] | 70 | K | 1, 2, ..., 11, 0 | | + * | | | Ko | 1st, 2nd, ..., 11th, 0th | 5 | + * | | | KK | 01, 02, ..., 11, 00 | | + * | Hour [1-24] | 70 | k | 24, 1, 2, ..., 23 | | + * | | | ko | 24th, 1st, 2nd, ..., 23rd | 5 | + * | | | kk | 24, 01, 02, ..., 23 | | + * | Minute | 60 | m | 0, 1, ..., 59 | | + * | | | mo | 0th, 1st, ..., 59th | 5 | + * | | | mm | 00, 01, ..., 59 | | + * | Second | 50 | s | 0, 1, ..., 59 | | + * | | | so | 0th, 1st, ..., 59th | 5 | + * | | | ss | 00, 01, ..., 59 | | + * | Seconds timestamp | 40 | t | 512969520 | | + * | | | tt | ... | 2 | + * | Fraction of second | 30 | S | 0, 1, ..., 9 | | + * | | | SS | 00, 01, ..., 99 | | + * | | | SSS | 000, 001, ..., 999 | | + * | | | SSSS | ... | 2 | + * | Milliseconds timestamp | 20 | T | 512969520900 | | + * | | | TT | ... | 2 | + * | Timezone (ISO-8601 w/ Z) | 10 | X | -08, +0530, Z | | + * | | | XX | -0800, +0530, Z | | + * | | | XXX | -08:00, +05:30, Z | | + * | | | XXXX | -0800, +0530, Z, +123456 | 2 | + * | | | XXXXX | -08:00, +05:30, Z, +12:34:56 | | + * | Timezone (ISO-8601 w/o Z) | 10 | x | -08, +0530, +00 | | + * | | | xx | -0800, +0530, +0000 | | + * | | | xxx | -08:00, +05:30, +00:00 | 2 | + * | | | xxxx | -0800, +0530, +0000, +123456 | | + * | | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | | + * | Long localized date | NA | P | 05/29/1453 | 5,8 | + * | | | PP | May 29, 1453 | | + * | | | PPP | May 29th, 1453 | | + * | | | PPPP | Sunday, May 29th, 1453 | 2,5,8 | + * | Long localized time | NA | p | 12:00 AM | 5,8 | + * | | | pp | 12:00:00 AM | | + * | Combination of date and time | NA | Pp | 05/29/1453, 12:00 AM | | + * | | | PPpp | May 29, 1453, 12:00:00 AM | | + * | | | PPPpp | May 29th, 1453 at ... | | + * | | | PPPPpp | Sunday, May 29th, 1453 at ... | 2,5,8 | + * Notes: + * 1. "Formatting" units (e.g. formatting quarter) in the default en-US locale + * are the same as "stand-alone" units, but are different in some languages. + * "Formatting" units are declined according to the rules of the language + * in the context of a date. "Stand-alone" units are always nominative singular. + * In `format` function, they will produce different result: + * + * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'` + * + * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'` + * + * `parse` will try to match both formatting and stand-alone units interchangably. + * + * 2. Any sequence of the identical letters is a pattern, unless it is escaped by + * the single quote characters (see below). + * If the sequence is longer than listed in table: + * - for numerical units (`yyyyyyyy`) `parse` will try to match a number + * as wide as the sequence + * - for text units (`MMMMMMMM`) `parse` will try to match the widest variation of the unit. + * These variations are marked with "2" in the last column of the table. + * + * 3. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales. + * These tokens represent the shortest form of the quarter. + * + * 4. The main difference between `y` and `u` patterns are B.C. years: + * + * | Year | `y` | `u` | + * |------|-----|-----| + * | AC 1 | 1 | 1 | + * | BC 1 | 1 | 0 | + * | BC 2 | 2 | -1 | + * + * Also `yy` will try to guess the century of two digit year by proximity with `referenceDate`: + * + * `parse('50', 'yy', new Date(2018, 0, 1)) //=> Sat Jan 01 2050 00:00:00` + * + * `parse('75', 'yy', new Date(2018, 0, 1)) //=> Wed Jan 01 1975 00:00:00` + * + * while `uu` will just assign the year as is: + * + * `parse('50', 'uu', new Date(2018, 0, 1)) //=> Sat Jan 01 0050 00:00:00` + * + * `parse('75', 'uu', new Date(2018, 0, 1)) //=> Tue Jan 01 0075 00:00:00` + * + * The same difference is true for local and ISO week-numbering years (`Y` and `R`), + * except local week-numbering years are dependent on `options.weekStartsOn` + * and `options.firstWeekContainsDate` (compare [setISOWeekYear]{@link https://date-fns.org/docs/setISOWeekYear} + * and [setWeekYear]{@link https://date-fns.org/docs/setWeekYear}). + * + * 5. These patterns are not in the Unicode Technical Standard #35: + * - `i`: ISO day of week + * - `I`: ISO week of year + * - `R`: ISO week-numbering year + * - `o`: ordinal number modifier + * - `P`: long localized date + * - `p`: long localized time + * + * 6. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years. + * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * 7. `D` and `DD` tokens represent days of the year but they are ofthen confused with days of the month. + * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * 8. `P+` tokens do not have a defined priority since they are merely aliases to other tokens based + * on the given locale. + * + * using `en-US` locale: `P` => `MM/dd/yyyy` + * using `en-US` locale: `p` => `hh:mm a` + * using `pt-BR` locale: `P` => `dd/MM/yyyy` + * using `pt-BR` locale: `p` => `HH:mm` + * + * Values will be assigned to the date in the descending order of its unit's priority. + * Units of an equal priority overwrite each other in the order of appearance. + * + * If no values of higher priority are parsed (e.g. when parsing string 'January 1st' without a year), + * the values will be taken from 3rd argument `referenceDate` which works as a context of parsing. + * + * `referenceDate` must be passed for correct work of the function. + * If you're not sure which `referenceDate` to supply, create a new instance of Date: + * `parse('02/11/2014', 'MM/dd/yyyy', new Date())` + * In this case parsing will be done in the context of the current date. + * If `referenceDate` is `Invalid Date` or a value not convertible to valid `Date`, + * then `Invalid Date` will be returned. + * + * The result may vary by locale. + * + * If `formatString` matches with `dateString` but does not provides tokens, `referenceDate` will be returned. + * + * If parsing failed, `Invalid Date` will be returned. + * Invalid Date is a Date, whose time value is NaN. + * Time value of Date: http://es5.github.io/#x15.9.1.1 + * + * @param {String} dateString - the string to parse + * @param {String} formatString - the string of tokens + * @param {Date|Number} referenceDate - defines values missing from the parsed dateString + * @param {Object} [options] - an object with options. + * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale} + * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday) + * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year + * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`; + * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`; + * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @returns {Date} the parsed date + * @throws {TypeError} 3 arguments required + * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6 + * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7 + * @throws {RangeError} `options.locale` must contain `match` property + * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws {RangeError} format string contains an unescaped latin alphabet character + * + * @example + * // Parse 11 February 2014 from middle-endian format: + * var result = parse('02/11/2014', 'MM/dd/yyyy', new Date()) + * //=> Tue Feb 11 2014 00:00:00 + * + * @example + * // Parse 28th of February in Esperanto locale in the context of 2010 year: + * import eo from 'date-fns/locale/eo' + * var result = parse('28-a de februaro', "do 'de' MMMM", new Date(2010, 0, 1), { + * locale: eo + * }) + * //=> Sun Feb 28 2010 00:00:00 + */ +function parse(dirtyDateString, dirtyFormatString, dirtyReferenceDate, options) { + var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4; + (0, _index9.default)(3, arguments); + var dateString = String(dirtyDateString); + var formatString = String(dirtyFormatString); + var defaultOptions = (0, _index11.getDefaultOptions)(); + var locale = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : _index.default; + if (!locale.match) { + throw new RangeError('locale must contain match property'); + } + var firstWeekContainsDate = (0, _index8.default)((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale2 = options.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1); + + // Test if weekStartsOn is between 1 and 7 _and_ is not NaN + if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) { + throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively'); + } + var weekStartsOn = (0, _index8.default)((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale3 = options.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0); + + // Test if weekStartsOn is between 0 and 6 _and_ is not NaN + if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) { + throw new RangeError('weekStartsOn must be between 0 and 6 inclusively'); + } + if (formatString === '') { + if (dateString === '') { + return (0, _index3.default)(dirtyReferenceDate); + } else { + return new Date(NaN); + } + } + var subFnOptions = { + firstWeekContainsDate: firstWeekContainsDate, + weekStartsOn: weekStartsOn, + locale: locale + }; + + // If timezone isn't specified, it will be set to the system timezone + var setters = [new _Setter.DateToSystemTimezoneSetter()]; + var tokens = formatString.match(longFormattingTokensRegExp).map(function (substring) { + var firstCharacter = substring[0]; + if (firstCharacter in _index5.default) { + var longFormatter = _index5.default[firstCharacter]; + return longFormatter(substring, locale.formatLong); + } + return substring; + }).join('').match(formattingTokensRegExp); + var usedTokens = []; + var _iterator = (0, _createForOfIteratorHelper2.default)(tokens), + _step; + try { + var _loop = function _loop() { + var token = _step.value; + if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && (0, _index7.isProtectedWeekYearToken)(token)) { + (0, _index7.throwProtectedError)(token, formatString, dirtyDateString); + } + if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && (0, _index7.isProtectedDayOfYearToken)(token)) { + (0, _index7.throwProtectedError)(token, formatString, dirtyDateString); + } + var firstCharacter = token[0]; + var parser = _index10.parsers[firstCharacter]; + if (parser) { + var incompatibleTokens = parser.incompatibleTokens; + if (Array.isArray(incompatibleTokens)) { + var incompatibleToken = usedTokens.find(function (usedToken) { + return incompatibleTokens.includes(usedToken.token) || usedToken.token === firstCharacter; + }); + if (incompatibleToken) { + throw new RangeError("The format string mustn't contain `".concat(incompatibleToken.fullToken, "` and `").concat(token, "` at the same time")); + } + } else if (parser.incompatibleTokens === '*' && usedTokens.length > 0) { + throw new RangeError("The format string mustn't contain `".concat(token, "` and any other token at the same time")); + } + usedTokens.push({ + token: firstCharacter, + fullToken: token + }); + var parseResult = parser.run(dateString, token, locale.match, subFnOptions); + if (!parseResult) { + return { + v: new Date(NaN) + }; + } + setters.push(parseResult.setter); + dateString = parseResult.rest; + } else { + if (firstCharacter.match(unescapedLatinCharacterRegExp)) { + throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`'); + } + + // Replace two single quote characters with one single quote character + if (token === "''") { + token = "'"; + } else if (firstCharacter === "'") { + token = cleanEscapedString(token); + } + + // Cut token from string, or, if string doesn't match the token, return Invalid Date + if (dateString.indexOf(token) === 0) { + dateString = dateString.slice(token.length); + } else { + return { + v: new Date(NaN) + }; + } + } + }; + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var _ret = _loop(); + if ((0, _typeof2.default)(_ret) === "object") return _ret.v; + } + + // Check if the remaining input contains something other than whitespace + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + if (dateString.length > 0 && notWhitespaceRegExp.test(dateString)) { + return new Date(NaN); + } + var uniquePrioritySetters = setters.map(function (setter) { + return setter.priority; + }).sort(function (a, b) { + return b - a; + }).filter(function (priority, index, array) { + return array.indexOf(priority) === index; + }).map(function (priority) { + return setters.filter(function (setter) { + return setter.priority === priority; + }).sort(function (a, b) { + return b.subPriority - a.subPriority; + }); + }).map(function (setterArray) { + return setterArray[0]; + }); + var date = (0, _index3.default)(dirtyReferenceDate); + if (isNaN(date.getTime())) { + return new Date(NaN); + } + + // Convert the date in system timezone to the same date in UTC+00:00 timezone. + var utcDate = (0, _index2.default)(date, (0, _index6.default)(date)); + var flags = {}; + var _iterator2 = (0, _createForOfIteratorHelper2.default)(uniquePrioritySetters), + _step2; + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var setter = _step2.value; + if (!setter.validate(utcDate, subFnOptions)) { + return new Date(NaN); + } + var result = setter.set(utcDate, flags, subFnOptions); + // Result is tuple (date, flags) + if (Array.isArray(result)) { + utcDate = result[0]; + (0, _index4.default)(flags, result[1]); + // Result is date + } else { + utcDate = result; + } + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + return utcDate; +} +function cleanEscapedString(input) { + return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, "'"); +} +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/date-fns/parse/index.js.flow b/node_modules/date-fns/parse/index.js.flow new file mode 100644 index 0000000..f8e1cfe --- /dev/null +++ b/node_modules/date-fns/parse/index.js.flow @@ -0,0 +1,63 @@ +// @flow +// This file is generated automatically by `scripts/build/typings.js`. Please, don't change it. + +export type Interval = { + start: Date | number, + end: Date | number, +} + +export type Locale = { + code?: string, + formatDistance?: (...args: Array) => any, + formatRelative?: (...args: Array) => any, + localize?: { + ordinalNumber: (...args: Array) => any, + era: (...args: Array) => any, + quarter: (...args: Array) => any, + month: (...args: Array) => any, + day: (...args: Array) => any, + dayPeriod: (...args: Array) => any, + }, + formatLong?: { + date: (...args: Array) => any, + time: (...args: Array) => any, + dateTime: (...args: Array) => any, + }, + match?: { + ordinalNumber: (...args: Array) => any, + era: (...args: Array) => any, + quarter: (...args: Array) => any, + month: (...args: Array) => any, + day: (...args: Array) => any, + dayPeriod: (...args: Array) => any, + }, + options?: { + weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6, + firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7, + }, +} + +export type Duration = { + years?: number, + months?: number, + weeks?: number, + days?: number, + hours?: number, + minutes?: number, + seconds?: number, +} + +export type Day = 0 | 1 | 2 | 3 | 4 | 5 | 6 + +declare module.exports: ( + dateString: string, + formatString: string, + referenceDate: Date | number, + options?: { + locale?: Locale, + weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6, + firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7, + useAdditionalWeekYearTokens?: boolean, + useAdditionalDayOfYearTokens?: boolean, + } +) => Date diff --git a/node_modules/date-fns/parse/package.json b/node_modules/date-fns/parse/package.json new file mode 100644 index 0000000..8e25092 --- /dev/null +++ b/node_modules/date-fns/parse/package.json @@ -0,0 +1,5 @@ +{ + "sideEffects": false, + "module": "../esm/parse/index.js", + "typings": "../typings.d.ts" +} \ No newline at end of file -- cgit v1.2.3