a664e414dbb6aeb6370f6d02728b213341ccb449c9a8c135888558d07a64ecb8b72021ebfbf7b75d1b9c5dbbc1bfe46b0b87bbe71fa978cb6058232be88230 737 B

12345678910111213141516171819202122232425262728
  1. import { addFormatToken } from '../format/format';
  2. import { addRegexToken, match3, match1to3 } from '../parse/regex';
  3. import { addParseToken } from '../parse/token';
  4. import toInt from '../utils/to-int';
  5. // FORMATTING
  6. addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');
  7. // PARSING
  8. addRegexToken('DDD', match1to3);
  9. addRegexToken('DDDD', match3);
  10. addParseToken(['DDD', 'DDDD'], function (input, array, config) {
  11. config._dayOfYear = toInt(input);
  12. });
  13. // HELPERS
  14. // MOMENTS
  15. export function getSetDayOfYear(input) {
  16. var dayOfYear =
  17. Math.round(
  18. (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5
  19. ) + 1;
  20. return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');
  21. }