FractionOfSecondParser.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
  2. import _createClass from "@babel/runtime/helpers/esm/createClass";
  3. import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
  4. import _inherits from "@babel/runtime/helpers/esm/inherits";
  5. import _createSuper from "@babel/runtime/helpers/esm/createSuper";
  6. import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
  7. import { Parser } from "../Parser.js";
  8. import { mapValue, parseNDigits } from "../utils.js";
  9. export var FractionOfSecondParser = /*#__PURE__*/function (_Parser) {
  10. _inherits(FractionOfSecondParser, _Parser);
  11. var _super = _createSuper(FractionOfSecondParser);
  12. function FractionOfSecondParser() {
  13. var _this;
  14. _classCallCheck(this, FractionOfSecondParser);
  15. for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  16. args[_key] = arguments[_key];
  17. }
  18. _this = _super.call.apply(_super, [this].concat(args));
  19. _defineProperty(_assertThisInitialized(_this), "priority", 30);
  20. _defineProperty(_assertThisInitialized(_this), "incompatibleTokens", ['t', 'T']);
  21. return _this;
  22. }
  23. _createClass(FractionOfSecondParser, [{
  24. key: "parse",
  25. value: function parse(dateString, token) {
  26. var valueCallback = function valueCallback(value) {
  27. return Math.floor(value * Math.pow(10, -token.length + 3));
  28. };
  29. return mapValue(parseNDigits(token.length, dateString), valueCallback);
  30. }
  31. }, {
  32. key: "set",
  33. value: function set(date, _flags, value) {
  34. date.setUTCMilliseconds(value);
  35. return date;
  36. }
  37. }]);
  38. return FractionOfSecondParser;
  39. }(Parser);