diff options
Diffstat (limited to 'node_modules/date-fns/getWeek')
| -rw-r--r-- | node_modules/date-fns/getWeek/index.d.ts | 4 | ||||
| -rw-r--r-- | node_modules/date-fns/getWeek/index.js | 63 | ||||
| -rw-r--r-- | node_modules/date-fns/getWeek/index.js.flow | 59 | ||||
| -rw-r--r-- | node_modules/date-fns/getWeek/package.json | 5 |
4 files changed, 131 insertions, 0 deletions
diff --git a/node_modules/date-fns/getWeek/index.d.ts b/node_modules/date-fns/getWeek/index.d.ts new file mode 100644 index 0000000..dfa1327 --- /dev/null +++ b/node_modules/date-fns/getWeek/index.d.ts @@ -0,0 +1,4 @@ +// This file is generated automatically by `scripts/build/typings.js`. Please, don't change it. + +import { getWeek } from 'date-fns' +export default getWeek diff --git a/node_modules/date-fns/getWeek/index.js b/node_modules/date-fns/getWeek/index.js new file mode 100644 index 0000000..01435ab --- /dev/null +++ b/node_modules/date-fns/getWeek/index.js @@ -0,0 +1,63 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = getWeek; +var _index = _interopRequireDefault(require("../startOfWeek/index.js")); +var _index2 = _interopRequireDefault(require("../startOfWeekYear/index.js")); +var _index3 = _interopRequireDefault(require("../toDate/index.js")); +var _index4 = _interopRequireDefault(require("../_lib/requiredArgs/index.js")); +var MILLISECONDS_IN_WEEK = 604800000; + +/** + * @name getWeek + * @category Week Helpers + * @summary Get the local week index of the given date. + * + * @description + * Get the local week index of the given date. + * The exact calculation depends on the values of + * `options.weekStartsOn` (which is the index of the first day of the week) + * and `options.firstWeekContainsDate` (which is the day of January, which is always in + * the first week of the week-numbering year) + * + * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering + * + * @param {Date|Number} date - the given date + * @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 + * @returns {Number} the week + * @throws {TypeError} 1 argument required + * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6 + * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7 + * + * @example + * // Which week of the local week numbering year is 2 January 2005 with default options? + * const result = getWeek(new Date(2005, 0, 2)) + * //=> 2 + * + * // Which week of the local week numbering year is 2 January 2005, + * // if Monday is the first day of the week, + * // and the first week of the year always contains 4 January? + * const result = getWeek(new Date(2005, 0, 2), { + * weekStartsOn: 1, + * firstWeekContainsDate: 4 + * }) + * //=> 53 + */ + +function getWeek(dirtyDate, options) { + (0, _index4.default)(1, arguments); + var date = (0, _index3.default)(dirtyDate); + var diff = (0, _index.default)(date, options).getTime() - (0, _index2.default)(date, options).getTime(); + + // Round the number of days to the nearest integer + // because the number of milliseconds in a week is not constant + // (e.g. it's different in the week of the daylight saving time clock shift) + return Math.round(diff / MILLISECONDS_IN_WEEK) + 1; +} +module.exports = exports.default;
\ No newline at end of file diff --git a/node_modules/date-fns/getWeek/index.js.flow b/node_modules/date-fns/getWeek/index.js.flow new file mode 100644 index 0000000..2c948ae --- /dev/null +++ b/node_modules/date-fns/getWeek/index.js.flow @@ -0,0 +1,59 @@ +// @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>) => any, + formatRelative?: (...args: Array<any>) => any, + localize?: { + ordinalNumber: (...args: Array<any>) => any, + era: (...args: Array<any>) => any, + quarter: (...args: Array<any>) => any, + month: (...args: Array<any>) => any, + day: (...args: Array<any>) => any, + dayPeriod: (...args: Array<any>) => any, + }, + formatLong?: { + date: (...args: Array<any>) => any, + time: (...args: Array<any>) => any, + dateTime: (...args: Array<any>) => any, + }, + match?: { + ordinalNumber: (...args: Array<any>) => any, + era: (...args: Array<any>) => any, + quarter: (...args: Array<any>) => any, + month: (...args: Array<any>) => any, + day: (...args: Array<any>) => any, + dayPeriod: (...args: Array<any>) => 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: ( + date: Date | number, + options?: { + locale?: Locale, + weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6, + firstWeekContainsDate?: 1 | 2 | 3 | 4 | 5 | 6 | 7, + } +) => number diff --git a/node_modules/date-fns/getWeek/package.json b/node_modules/date-fns/getWeek/package.json new file mode 100644 index 0000000..deb1966 --- /dev/null +++ b/node_modules/date-fns/getWeek/package.json @@ -0,0 +1,5 @@ +{ + "sideEffects": false, + "module": "../esm/getWeek/index.js", + "typings": "../typings.d.ts" +}
\ No newline at end of file |
