DayParser.js 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.DayParser = void 0;
  7. var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
  8. var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
  9. var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
  10. var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
  11. var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
  12. var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
  13. var _Parser2 = require("../Parser.js");
  14. var _index = _interopRequireDefault(require("../../../_lib/setUTCDay/index.js"));
  15. // Day of week
  16. var DayParser = /*#__PURE__*/function (_Parser) {
  17. (0, _inherits2.default)(DayParser, _Parser);
  18. var _super = (0, _createSuper2.default)(DayParser);
  19. function DayParser() {
  20. var _this;
  21. (0, _classCallCheck2.default)(this, DayParser);
  22. for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  23. args[_key] = arguments[_key];
  24. }
  25. _this = _super.call.apply(_super, [this].concat(args));
  26. (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "priority", 90);
  27. (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "incompatibleTokens", ['D', 'i', 'e', 'c', 't', 'T']);
  28. return _this;
  29. }
  30. (0, _createClass2.default)(DayParser, [{
  31. key: "parse",
  32. value: function parse(dateString, token, match) {
  33. switch (token) {
  34. // Tue
  35. case 'E':
  36. case 'EE':
  37. case 'EEE':
  38. return match.day(dateString, {
  39. width: 'abbreviated',
  40. context: 'formatting'
  41. }) || match.day(dateString, {
  42. width: 'short',
  43. context: 'formatting'
  44. }) || match.day(dateString, {
  45. width: 'narrow',
  46. context: 'formatting'
  47. });
  48. // T
  49. case 'EEEEE':
  50. return match.day(dateString, {
  51. width: 'narrow',
  52. context: 'formatting'
  53. });
  54. // Tu
  55. case 'EEEEEE':
  56. return match.day(dateString, {
  57. width: 'short',
  58. context: 'formatting'
  59. }) || match.day(dateString, {
  60. width: 'narrow',
  61. context: 'formatting'
  62. });
  63. // Tuesday
  64. case 'EEEE':
  65. default:
  66. return match.day(dateString, {
  67. width: 'wide',
  68. context: 'formatting'
  69. }) || match.day(dateString, {
  70. width: 'abbreviated',
  71. context: 'formatting'
  72. }) || match.day(dateString, {
  73. width: 'short',
  74. context: 'formatting'
  75. }) || match.day(dateString, {
  76. width: 'narrow',
  77. context: 'formatting'
  78. });
  79. }
  80. }
  81. }, {
  82. key: "validate",
  83. value: function validate(_date, value) {
  84. return value >= 0 && value <= 6;
  85. }
  86. }, {
  87. key: "set",
  88. value: function set(date, _flags, value, options) {
  89. date = (0, _index.default)(date, value, options);
  90. date.setUTCHours(0, 0, 0, 0);
  91. return date;
  92. }
  93. }]);
  94. return DayParser;
  95. }(_Parser2.Parser);
  96. exports.DayParser = DayParser;