@date-io/date-fns
Advanced tools
Comparing version 2.17.0 to 3.0.0
import { IUtils, DateIOFormats, Unit } from "@date-io/core/IUtils"; | ||
import defaultLocale from "date-fns/locale/en-US"; | ||
import { enUS as defaultLocale } from "date-fns/locale/en-US"; | ||
type Locale = typeof defaultLocale; | ||
export default class DateFnsUtils implements IUtils<Date> { | ||
export default class DateFnsUtils implements IUtils<Date, Locale> { | ||
lib: string; | ||
@@ -11,2 +11,3 @@ locale?: Locale; | ||
locale?: Locale; | ||
instance?: any; | ||
}); | ||
@@ -48,3 +49,3 @@ is12HourCycleInCurrentLocale: () => boolean; | ||
setYear: (value: Date, count: number) => Date; | ||
date: (value?: any) => Date | null; | ||
date<TArg extends unknown = undefined, TRes extends unknown = TArg extends null ? null : TArg extends undefined ? Date : Date | null>(value?: TArg): TRes; | ||
toJsDate: (value: Date) => Date; | ||
@@ -51,0 +52,0 @@ parse: (value: string, formatString: string) => Date | null; |
@@ -1,2 +0,1 @@ | ||
import "../type/index"; | ||
export { default } from "./date-fns-utils"; |
@@ -1,55 +0,54 @@ | ||
import addDays from 'date-fns/addDays'; | ||
import addSeconds from 'date-fns/addSeconds'; | ||
import addMinutes from 'date-fns/addMinutes'; | ||
import addHours from 'date-fns/addHours'; | ||
import addWeeks from 'date-fns/addWeeks'; | ||
import addMonths from 'date-fns/addMonths'; | ||
import addYears from 'date-fns/addYears'; | ||
import differenceInYears from 'date-fns/differenceInYears'; | ||
import differenceInQuarters from 'date-fns/differenceInQuarters'; | ||
import differenceInMonths from 'date-fns/differenceInMonths'; | ||
import differenceInWeeks from 'date-fns/differenceInWeeks'; | ||
import differenceInDays from 'date-fns/differenceInDays'; | ||
import differenceInHours from 'date-fns/differenceInHours'; | ||
import differenceInMinutes from 'date-fns/differenceInMinutes'; | ||
import differenceInSeconds from 'date-fns/differenceInSeconds'; | ||
import differenceInMilliseconds from 'date-fns/differenceInMilliseconds'; | ||
import eachDayOfInterval from 'date-fns/eachDayOfInterval'; | ||
import endOfDay from 'date-fns/endOfDay'; | ||
import endOfWeek from 'date-fns/endOfWeek'; | ||
import endOfYear from 'date-fns/endOfYear'; | ||
import format from 'date-fns/format'; | ||
import getDate from 'date-fns/getDate'; | ||
import getDay from 'date-fns/getDay'; | ||
import getDaysInMonth from 'date-fns/getDaysInMonth'; | ||
import getHours from 'date-fns/getHours'; | ||
import getMinutes from 'date-fns/getMinutes'; | ||
import getMonth from 'date-fns/getMonth'; | ||
import getSeconds from 'date-fns/getSeconds'; | ||
import getYear from 'date-fns/getYear'; | ||
import isAfter from 'date-fns/isAfter'; | ||
import isBefore from 'date-fns/isBefore'; | ||
import isEqual from 'date-fns/isEqual'; | ||
import isSameDay from 'date-fns/isSameDay'; | ||
import isSameYear from 'date-fns/isSameYear'; | ||
import isSameMonth from 'date-fns/isSameMonth'; | ||
import isSameHour from 'date-fns/isSameHour'; | ||
import isValid from 'date-fns/isValid'; | ||
import dateFnsParse from 'date-fns/parse'; | ||
import setDate from 'date-fns/setDate'; | ||
import setHours from 'date-fns/setHours'; | ||
import setMinutes from 'date-fns/setMinutes'; | ||
import setMonth from 'date-fns/setMonth'; | ||
import setSeconds from 'date-fns/setSeconds'; | ||
import setYear from 'date-fns/setYear'; | ||
import startOfDay from 'date-fns/startOfDay'; | ||
import startOfMonth from 'date-fns/startOfMonth'; | ||
import endOfMonth from 'date-fns/endOfMonth'; | ||
import startOfWeek from 'date-fns/startOfWeek'; | ||
import startOfYear from 'date-fns/startOfYear'; | ||
import parseISO from 'date-fns/parseISO'; | ||
import formatISO from 'date-fns/formatISO'; | ||
import isWithinInterval from 'date-fns/isWithinInterval'; | ||
import longFormatters from 'date-fns/_lib/format/longFormatters'; | ||
import defaultLocale from 'date-fns/locale/en-US'; | ||
import { addDays } from 'date-fns/addDays'; | ||
import { addSeconds } from 'date-fns/addSeconds'; | ||
import { addMinutes } from 'date-fns/addMinutes'; | ||
import { addHours } from 'date-fns/addHours'; | ||
import { addWeeks } from 'date-fns/addWeeks'; | ||
import { addMonths } from 'date-fns/addMonths'; | ||
import { addYears } from 'date-fns/addYears'; | ||
import { differenceInYears } from 'date-fns/differenceInYears'; | ||
import { differenceInQuarters } from 'date-fns/differenceInQuarters'; | ||
import { differenceInMonths } from 'date-fns/differenceInMonths'; | ||
import { differenceInWeeks } from 'date-fns/differenceInWeeks'; | ||
import { differenceInDays } from 'date-fns/differenceInDays'; | ||
import { differenceInHours } from 'date-fns/differenceInHours'; | ||
import { differenceInMinutes } from 'date-fns/differenceInMinutes'; | ||
import { differenceInSeconds } from 'date-fns/differenceInSeconds'; | ||
import { differenceInMilliseconds } from 'date-fns/differenceInMilliseconds'; | ||
import { eachDayOfInterval } from 'date-fns/eachDayOfInterval'; | ||
import { endOfDay } from 'date-fns/endOfDay'; | ||
import { endOfWeek } from 'date-fns/endOfWeek'; | ||
import { endOfYear } from 'date-fns/endOfYear'; | ||
import { longFormatters, format } from 'date-fns/format'; | ||
import { getDate } from 'date-fns/getDate'; | ||
import { getDay } from 'date-fns/getDay'; | ||
import { getDaysInMonth } from 'date-fns/getDaysInMonth'; | ||
import { getHours } from 'date-fns/getHours'; | ||
import { getMinutes } from 'date-fns/getMinutes'; | ||
import { getMonth } from 'date-fns/getMonth'; | ||
import { getSeconds } from 'date-fns/getSeconds'; | ||
import { getYear } from 'date-fns/getYear'; | ||
import { isAfter } from 'date-fns/isAfter'; | ||
import { isBefore } from 'date-fns/isBefore'; | ||
import { isEqual } from 'date-fns/isEqual'; | ||
import { isSameDay } from 'date-fns/isSameDay'; | ||
import { isSameYear } from 'date-fns/isSameYear'; | ||
import { isSameMonth } from 'date-fns/isSameMonth'; | ||
import { isSameHour } from 'date-fns/isSameHour'; | ||
import { isValid } from 'date-fns/isValid'; | ||
import { parse } from 'date-fns/parse'; | ||
import { setDate } from 'date-fns/setDate'; | ||
import { setHours } from 'date-fns/setHours'; | ||
import { setMinutes } from 'date-fns/setMinutes'; | ||
import { setMonth } from 'date-fns/setMonth'; | ||
import { setSeconds } from 'date-fns/setSeconds'; | ||
import { setYear } from 'date-fns/setYear'; | ||
import { startOfDay } from 'date-fns/startOfDay'; | ||
import { startOfMonth } from 'date-fns/startOfMonth'; | ||
import { endOfMonth } from 'date-fns/endOfMonth'; | ||
import { startOfWeek } from 'date-fns/startOfWeek'; | ||
import { startOfYear } from 'date-fns/startOfYear'; | ||
import { parseISO } from 'date-fns/parseISO'; | ||
import { formatISO } from 'date-fns/formatISO'; | ||
import { isWithinInterval } from 'date-fns/isWithinInterval'; | ||
import { enUS } from 'date-fns/locale/en-US'; | ||
@@ -61,6 +60,6 @@ const defaultFormats = { | ||
fullDateTime: "PP p", | ||
fullDateTime12h: "PP hh:mm aaa", | ||
fullDateTime12h: "PP hh:mm aa", | ||
fullDateTime24h: "PP HH:mm", | ||
fullTime: "p", | ||
fullTime12h: "hh:mm aaa", | ||
fullTime12h: "hh:mm aa", | ||
fullTime24h: "HH:mm", | ||
@@ -71,3 +70,3 @@ hours12h: "hh", | ||
keyboardDateTime: "P p", | ||
keyboardDateTime12h: "P hh:mm aaa", | ||
keyboardDateTime12h: "P hh:mm aa", | ||
keyboardDateTime24h: "P HH:mm", | ||
@@ -95,3 +94,3 @@ minutes: "mm", | ||
if (this.locale) { | ||
return /a/.test((_a = this.locale.formatLong) === null || _a === void 0 ? void 0 : _a.time()); | ||
return /a/.test((_a = this.locale.formatLong) === null || _a === void 0 ? void 0 : _a.time({})); | ||
} | ||
@@ -105,3 +104,3 @@ // By default date-fns is using en-US locale with am/pm enabled | ||
const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; | ||
const locale = this.locale || defaultLocale; | ||
const locale = this.locale || enUS; | ||
return ((_b = (_a = format | ||
@@ -112,3 +111,3 @@ .match(longFormatRegexp)) === null || _a === void 0 ? void 0 : _a.map((token) => { | ||
const longFormatter = longFormatters[firstCharacter]; | ||
return longFormatter(token, locale.formatLong, {}); | ||
return longFormatter(token, locale.formatLong); | ||
} | ||
@@ -244,11 +243,2 @@ return token; | ||
}; | ||
this.date = (value) => { | ||
if (typeof value === "undefined") { | ||
return new Date(); | ||
} | ||
if (value === null) { | ||
return null; | ||
} | ||
return new Date(value); | ||
}; | ||
this.toJsDate = (value) => { | ||
@@ -261,3 +251,3 @@ return value; | ||
} | ||
return dateFnsParse(value, formatString, new Date(), { locale: this.locale }); | ||
return parse(value, formatString, new Date(), { locale: this.locale }); | ||
}; | ||
@@ -377,2 +367,11 @@ this.format = (date, formatKey) => { | ||
} | ||
date(value) { | ||
if (typeof value === "undefined") { | ||
return new Date(); | ||
} | ||
if (value === null) { | ||
return null; | ||
} | ||
return new Date(value); | ||
} | ||
isBeforeMonth(value, comparing) { | ||
@@ -379,0 +378,0 @@ return isBefore(value, startOfMonth(comparing)); |
@@ -40,3 +40,3 @@ 'use strict'; | ||
var isValid = require('date-fns/isValid'); | ||
var dateFnsParse = require('date-fns/parse'); | ||
var parse = require('date-fns/parse'); | ||
var setDate = require('date-fns/setDate'); | ||
@@ -56,62 +56,4 @@ var setHours = require('date-fns/setHours'); | ||
var isWithinInterval = require('date-fns/isWithinInterval'); | ||
var longFormatters = require('date-fns/_lib/format/longFormatters'); | ||
var defaultLocale = require('date-fns/locale/en-US'); | ||
var enUS = require('date-fns/locale/en-US'); | ||
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } | ||
var addDays__default = /*#__PURE__*/_interopDefaultLegacy(addDays); | ||
var addSeconds__default = /*#__PURE__*/_interopDefaultLegacy(addSeconds); | ||
var addMinutes__default = /*#__PURE__*/_interopDefaultLegacy(addMinutes); | ||
var addHours__default = /*#__PURE__*/_interopDefaultLegacy(addHours); | ||
var addWeeks__default = /*#__PURE__*/_interopDefaultLegacy(addWeeks); | ||
var addMonths__default = /*#__PURE__*/_interopDefaultLegacy(addMonths); | ||
var addYears__default = /*#__PURE__*/_interopDefaultLegacy(addYears); | ||
var differenceInYears__default = /*#__PURE__*/_interopDefaultLegacy(differenceInYears); | ||
var differenceInQuarters__default = /*#__PURE__*/_interopDefaultLegacy(differenceInQuarters); | ||
var differenceInMonths__default = /*#__PURE__*/_interopDefaultLegacy(differenceInMonths); | ||
var differenceInWeeks__default = /*#__PURE__*/_interopDefaultLegacy(differenceInWeeks); | ||
var differenceInDays__default = /*#__PURE__*/_interopDefaultLegacy(differenceInDays); | ||
var differenceInHours__default = /*#__PURE__*/_interopDefaultLegacy(differenceInHours); | ||
var differenceInMinutes__default = /*#__PURE__*/_interopDefaultLegacy(differenceInMinutes); | ||
var differenceInSeconds__default = /*#__PURE__*/_interopDefaultLegacy(differenceInSeconds); | ||
var differenceInMilliseconds__default = /*#__PURE__*/_interopDefaultLegacy(differenceInMilliseconds); | ||
var eachDayOfInterval__default = /*#__PURE__*/_interopDefaultLegacy(eachDayOfInterval); | ||
var endOfDay__default = /*#__PURE__*/_interopDefaultLegacy(endOfDay); | ||
var endOfWeek__default = /*#__PURE__*/_interopDefaultLegacy(endOfWeek); | ||
var endOfYear__default = /*#__PURE__*/_interopDefaultLegacy(endOfYear); | ||
var format__default = /*#__PURE__*/_interopDefaultLegacy(format); | ||
var getDate__default = /*#__PURE__*/_interopDefaultLegacy(getDate); | ||
var getDay__default = /*#__PURE__*/_interopDefaultLegacy(getDay); | ||
var getDaysInMonth__default = /*#__PURE__*/_interopDefaultLegacy(getDaysInMonth); | ||
var getHours__default = /*#__PURE__*/_interopDefaultLegacy(getHours); | ||
var getMinutes__default = /*#__PURE__*/_interopDefaultLegacy(getMinutes); | ||
var getMonth__default = /*#__PURE__*/_interopDefaultLegacy(getMonth); | ||
var getSeconds__default = /*#__PURE__*/_interopDefaultLegacy(getSeconds); | ||
var getYear__default = /*#__PURE__*/_interopDefaultLegacy(getYear); | ||
var isAfter__default = /*#__PURE__*/_interopDefaultLegacy(isAfter); | ||
var isBefore__default = /*#__PURE__*/_interopDefaultLegacy(isBefore); | ||
var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual); | ||
var isSameDay__default = /*#__PURE__*/_interopDefaultLegacy(isSameDay); | ||
var isSameYear__default = /*#__PURE__*/_interopDefaultLegacy(isSameYear); | ||
var isSameMonth__default = /*#__PURE__*/_interopDefaultLegacy(isSameMonth); | ||
var isSameHour__default = /*#__PURE__*/_interopDefaultLegacy(isSameHour); | ||
var isValid__default = /*#__PURE__*/_interopDefaultLegacy(isValid); | ||
var dateFnsParse__default = /*#__PURE__*/_interopDefaultLegacy(dateFnsParse); | ||
var setDate__default = /*#__PURE__*/_interopDefaultLegacy(setDate); | ||
var setHours__default = /*#__PURE__*/_interopDefaultLegacy(setHours); | ||
var setMinutes__default = /*#__PURE__*/_interopDefaultLegacy(setMinutes); | ||
var setMonth__default = /*#__PURE__*/_interopDefaultLegacy(setMonth); | ||
var setSeconds__default = /*#__PURE__*/_interopDefaultLegacy(setSeconds); | ||
var setYear__default = /*#__PURE__*/_interopDefaultLegacy(setYear); | ||
var startOfDay__default = /*#__PURE__*/_interopDefaultLegacy(startOfDay); | ||
var startOfMonth__default = /*#__PURE__*/_interopDefaultLegacy(startOfMonth); | ||
var endOfMonth__default = /*#__PURE__*/_interopDefaultLegacy(endOfMonth); | ||
var startOfWeek__default = /*#__PURE__*/_interopDefaultLegacy(startOfWeek); | ||
var startOfYear__default = /*#__PURE__*/_interopDefaultLegacy(startOfYear); | ||
var parseISO__default = /*#__PURE__*/_interopDefaultLegacy(parseISO); | ||
var formatISO__default = /*#__PURE__*/_interopDefaultLegacy(formatISO); | ||
var isWithinInterval__default = /*#__PURE__*/_interopDefaultLegacy(isWithinInterval); | ||
var longFormatters__default = /*#__PURE__*/_interopDefaultLegacy(longFormatters); | ||
var defaultLocale__default = /*#__PURE__*/_interopDefaultLegacy(defaultLocale); | ||
const defaultFormats = { | ||
@@ -122,6 +64,6 @@ dayOfMonth: "d", | ||
fullDateTime: "PP p", | ||
fullDateTime12h: "PP hh:mm aaa", | ||
fullDateTime12h: "PP hh:mm aa", | ||
fullDateTime24h: "PP HH:mm", | ||
fullTime: "p", | ||
fullTime12h: "hh:mm aaa", | ||
fullTime12h: "hh:mm aa", | ||
fullTime24h: "HH:mm", | ||
@@ -132,3 +74,3 @@ hours12h: "hh", | ||
keyboardDateTime: "P p", | ||
keyboardDateTime12h: "P hh:mm aaa", | ||
keyboardDateTime12h: "P hh:mm aa", | ||
keyboardDateTime24h: "P HH:mm", | ||
@@ -156,3 +98,3 @@ minutes: "mm", | ||
if (this.locale) { | ||
return /a/.test((_a = this.locale.formatLong) === null || _a === void 0 ? void 0 : _a.time()); | ||
return /a/.test((_a = this.locale.formatLong) === null || _a === void 0 ? void 0 : _a.time({})); | ||
} | ||
@@ -162,22 +104,22 @@ // By default date-fns is using en-US locale with am/pm enabled | ||
}; | ||
this.getFormatHelperText = (format) => { | ||
this.getFormatHelperText = (format$1) => { | ||
var _a, _b; | ||
// @see https://github.com/date-fns/date-fns/blob/master/src/format/index.js#L31 | ||
const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; | ||
const locale = this.locale || defaultLocale__default["default"]; | ||
return ((_b = (_a = format | ||
const locale = this.locale || enUS.enUS; | ||
return ((_b = (_a = format$1 | ||
.match(longFormatRegexp)) === null || _a === void 0 ? void 0 : _a.map((token) => { | ||
const firstCharacter = token[0]; | ||
if (firstCharacter === "p" || firstCharacter === "P") { | ||
const longFormatter = longFormatters__default["default"][firstCharacter]; | ||
return longFormatter(token, locale.formatLong, {}); | ||
const longFormatter = format.longFormatters[firstCharacter]; | ||
return longFormatter(token, locale.formatLong); | ||
} | ||
return token; | ||
}).join("").replace(/(aaa|aa|a)/g, "(a|p)m").toLocaleLowerCase()) !== null && _b !== void 0 ? _b : format); | ||
}).join("").replace(/(aaa|aa|a)/g, "(a|p)m").toLocaleLowerCase()) !== null && _b !== void 0 ? _b : format$1); | ||
}; | ||
this.parseISO = (isoString) => { | ||
return parseISO__default["default"](isoString); | ||
return parseISO.parseISO(isoString); | ||
}; | ||
this.toISO = (value) => { | ||
return formatISO__default["default"](value, { format: "extended" }); | ||
return formatISO.formatISO(value, { format: "extended" }); | ||
}; | ||
@@ -189,24 +131,24 @@ this.getCurrentLocaleCode = () => { | ||
this.addSeconds = (value, count) => { | ||
return addSeconds__default["default"](value, count); | ||
return addSeconds.addSeconds(value, count); | ||
}; | ||
this.addMinutes = (value, count) => { | ||
return addMinutes__default["default"](value, count); | ||
return addMinutes.addMinutes(value, count); | ||
}; | ||
this.addHours = (value, count) => { | ||
return addHours__default["default"](value, count); | ||
return addHours.addHours(value, count); | ||
}; | ||
this.addDays = (value, count) => { | ||
return addDays__default["default"](value, count); | ||
return addDays.addDays(value, count); | ||
}; | ||
this.addWeeks = (value, count) => { | ||
return addWeeks__default["default"](value, count); | ||
return addWeeks.addWeeks(value, count); | ||
}; | ||
this.addMonths = (value, count) => { | ||
return addMonths__default["default"](value, count); | ||
return addMonths.addMonths(value, count); | ||
}; | ||
this.addYears = (value, count) => { | ||
return addYears__default["default"](value, count); | ||
return addYears.addYears(value, count); | ||
}; | ||
this.isValid = (value) => { | ||
return isValid__default["default"](this.date(value)); | ||
return isValid.isValid(this.date(value)); | ||
}; | ||
@@ -222,19 +164,19 @@ this.getDiff = (value, comparing, unit) => { | ||
case "years": | ||
return differenceInYears__default["default"](value, dateToCompare); | ||
return differenceInYears.differenceInYears(value, dateToCompare); | ||
case "quarters": | ||
return differenceInQuarters__default["default"](value, dateToCompare); | ||
return differenceInQuarters.differenceInQuarters(value, dateToCompare); | ||
case "months": | ||
return differenceInMonths__default["default"](value, dateToCompare); | ||
return differenceInMonths.differenceInMonths(value, dateToCompare); | ||
case "weeks": | ||
return differenceInWeeks__default["default"](value, dateToCompare); | ||
return differenceInWeeks.differenceInWeeks(value, dateToCompare); | ||
case "days": | ||
return differenceInDays__default["default"](value, dateToCompare); | ||
return differenceInDays.differenceInDays(value, dateToCompare); | ||
case "hours": | ||
return differenceInHours__default["default"](value, dateToCompare); | ||
return differenceInHours.differenceInHours(value, dateToCompare); | ||
case "minutes": | ||
return differenceInMinutes__default["default"](value, dateToCompare); | ||
return differenceInMinutes.differenceInMinutes(value, dateToCompare); | ||
case "seconds": | ||
return differenceInSeconds__default["default"](value, dateToCompare); | ||
return differenceInSeconds.differenceInSeconds(value, dateToCompare); | ||
default: { | ||
return differenceInMilliseconds__default["default"](value, dateToCompare); | ||
return differenceInMilliseconds.differenceInMilliseconds(value, dateToCompare); | ||
} | ||
@@ -244,73 +186,64 @@ } | ||
this.isAfter = (value, comparing) => { | ||
return isAfter__default["default"](value, comparing); | ||
return isAfter.isAfter(value, comparing); | ||
}; | ||
this.isBefore = (value, comparing) => { | ||
return isBefore__default["default"](value, comparing); | ||
return isBefore.isBefore(value, comparing); | ||
}; | ||
this.startOfDay = (value) => { | ||
return startOfDay__default["default"](value); | ||
return startOfDay.startOfDay(value); | ||
}; | ||
this.endOfDay = (value) => { | ||
return endOfDay__default["default"](value); | ||
return endOfDay.endOfDay(value); | ||
}; | ||
this.getHours = (value) => { | ||
return getHours__default["default"](value); | ||
return getHours.getHours(value); | ||
}; | ||
this.setHours = (value, count) => { | ||
return setHours__default["default"](value, count); | ||
return setHours.setHours(value, count); | ||
}; | ||
this.setMinutes = (value, count) => { | ||
return setMinutes__default["default"](value, count); | ||
return setMinutes.setMinutes(value, count); | ||
}; | ||
this.getSeconds = (value) => { | ||
return getSeconds__default["default"](value); | ||
return getSeconds.getSeconds(value); | ||
}; | ||
this.setSeconds = (value, count) => { | ||
return setSeconds__default["default"](value, count); | ||
return setSeconds.setSeconds(value, count); | ||
}; | ||
this.isSameDay = (value, comparing) => { | ||
return isSameDay__default["default"](value, comparing); | ||
return isSameDay.isSameDay(value, comparing); | ||
}; | ||
this.isSameMonth = (value, comparing) => { | ||
return isSameMonth__default["default"](value, comparing); | ||
return isSameMonth.isSameMonth(value, comparing); | ||
}; | ||
this.isSameYear = (value, comparing) => { | ||
return isSameYear__default["default"](value, comparing); | ||
return isSameYear.isSameYear(value, comparing); | ||
}; | ||
this.isSameHour = (value, comparing) => { | ||
return isSameHour__default["default"](value, comparing); | ||
return isSameHour.isSameHour(value, comparing); | ||
}; | ||
this.startOfYear = (value) => { | ||
return startOfYear__default["default"](value); | ||
return startOfYear.startOfYear(value); | ||
}; | ||
this.endOfYear = (value) => { | ||
return endOfYear__default["default"](value); | ||
return endOfYear.endOfYear(value); | ||
}; | ||
this.startOfMonth = (value) => { | ||
return startOfMonth__default["default"](value); | ||
return startOfMonth.startOfMonth(value); | ||
}; | ||
this.endOfMonth = (value) => { | ||
return endOfMonth__default["default"](value); | ||
return endOfMonth.endOfMonth(value); | ||
}; | ||
this.startOfWeek = (value) => { | ||
return startOfWeek__default["default"](value, { locale: this.locale }); | ||
return startOfWeek.startOfWeek(value, { locale: this.locale }); | ||
}; | ||
this.endOfWeek = (value) => { | ||
return endOfWeek__default["default"](value, { locale: this.locale }); | ||
return endOfWeek.endOfWeek(value, { locale: this.locale }); | ||
}; | ||
this.getYear = (value) => { | ||
return getYear__default["default"](value); | ||
return getYear.getYear(value); | ||
}; | ||
this.setYear = (value, count) => { | ||
return setYear__default["default"](value, count); | ||
return setYear.setYear(value, count); | ||
}; | ||
this.date = (value) => { | ||
if (typeof value === "undefined") { | ||
return new Date(); | ||
} | ||
if (value === null) { | ||
return null; | ||
} | ||
return new Date(value); | ||
}; | ||
this.toJsDate = (value) => { | ||
@@ -323,3 +256,3 @@ return value; | ||
} | ||
return dateFnsParse__default["default"](value, formatString, new Date(), { locale: this.locale }); | ||
return parse.parse(value, formatString, new Date(), { locale: this.locale }); | ||
}; | ||
@@ -330,3 +263,3 @@ this.format = (date, formatKey) => { | ||
this.formatByString = (date, formatString) => { | ||
return format__default["default"](date, formatString, { locale: this.locale }); | ||
return format.format(date, formatString, { locale: this.locale }); | ||
}; | ||
@@ -337,3 +270,3 @@ this.isEqual = (date, comparing) => { | ||
} | ||
return isEqual__default["default"](date, comparing); | ||
return isEqual.isEqual(date, comparing); | ||
}; | ||
@@ -344,15 +277,15 @@ this.isNull = (date) => { | ||
this.isAfterDay = (date, value) => { | ||
return isAfter__default["default"](date, endOfDay__default["default"](value)); | ||
return isAfter.isAfter(date, endOfDay.endOfDay(value)); | ||
}; | ||
this.isBeforeDay = (date, value) => { | ||
return isBefore__default["default"](date, startOfDay__default["default"](value)); | ||
return isBefore.isBefore(date, startOfDay.startOfDay(value)); | ||
}; | ||
this.isBeforeYear = (date, value) => { | ||
return isBefore__default["default"](date, startOfYear__default["default"](value)); | ||
return isBefore.isBefore(date, startOfYear.startOfYear(value)); | ||
}; | ||
this.isAfterYear = (date, value) => { | ||
return isAfter__default["default"](date, endOfYear__default["default"](value)); | ||
return isAfter.isAfter(date, endOfYear.endOfYear(value)); | ||
}; | ||
this.isWithinRange = (date, [start, end]) => { | ||
return isWithinInterval__default["default"](date, { start, end }); | ||
return isWithinInterval.isWithinInterval(date, { start, end }); | ||
}; | ||
@@ -363,18 +296,18 @@ this.formatNumber = (numberToFormat) => { | ||
this.getMinutes = (date) => { | ||
return getMinutes__default["default"](date); | ||
return getMinutes.getMinutes(date); | ||
}; | ||
this.getDate = (date) => { | ||
return getDate__default["default"](date); | ||
return getDate.getDate(date); | ||
}; | ||
this.setDate = (date, count) => { | ||
return setDate__default["default"](date, count); | ||
return setDate.setDate(date, count); | ||
}; | ||
this.getMonth = (date) => { | ||
return getMonth__default["default"](date); | ||
return getMonth.getMonth(date); | ||
}; | ||
this.getDaysInMonth = (date) => { | ||
return getDaysInMonth__default["default"](date); | ||
return getDaysInMonth.getDaysInMonth(date); | ||
}; | ||
this.setMonth = (date, count) => { | ||
return setMonth__default["default"](date, count); | ||
return setMonth.setMonth(date, count); | ||
}; | ||
@@ -385,9 +318,9 @@ this.getMeridiemText = (ampm) => { | ||
this.getNextMonth = (date) => { | ||
return addMonths__default["default"](date, 1); | ||
return addMonths.addMonths(date, 1); | ||
}; | ||
this.getPreviousMonth = (date) => { | ||
return addMonths__default["default"](date, -1); | ||
return addMonths.addMonths(date, -1); | ||
}; | ||
this.getMonthArray = (date) => { | ||
const firstMonth = startOfYear__default["default"](date); | ||
const firstMonth = startOfYear.startOfYear(date); | ||
const monthArray = [firstMonth]; | ||
@@ -405,10 +338,10 @@ while (monthArray.length < 12) { | ||
const now = new Date(); | ||
return eachDayOfInterval__default["default"]({ | ||
start: startOfWeek__default["default"](now, { locale: this.locale }), | ||
end: endOfWeek__default["default"](now, { locale: this.locale }), | ||
return eachDayOfInterval.eachDayOfInterval({ | ||
start: startOfWeek.startOfWeek(now, { locale: this.locale }), | ||
end: endOfWeek.endOfWeek(now, { locale: this.locale }), | ||
}).map((day) => this.formatByString(day, "EEEEEE")); | ||
}; | ||
this.getWeekArray = (date) => { | ||
const start = startOfWeek__default["default"](startOfMonth__default["default"](date), { locale: this.locale }); | ||
const end = endOfWeek__default["default"](endOfMonth__default["default"](date), { locale: this.locale }); | ||
const start = startOfWeek.startOfWeek(startOfMonth.startOfMonth(date), { locale: this.locale }); | ||
const end = endOfWeek.endOfWeek(endOfMonth.endOfMonth(date), { locale: this.locale }); | ||
let count = 0; | ||
@@ -418,6 +351,6 @@ let current = start; | ||
let lastDay = null; | ||
while (isBefore__default["default"](current, end)) { | ||
while (isBefore.isBefore(current, end)) { | ||
const weekNumber = Math.floor(count / 7); | ||
nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || []; | ||
const day = getDay__default["default"](current); | ||
const day = getDay.getDay(current); | ||
if (lastDay !== day) { | ||
@@ -428,3 +361,3 @@ lastDay = day; | ||
} | ||
current = addDays__default["default"](current, 1); | ||
current = addDays.addDays(current, 1); | ||
} | ||
@@ -434,9 +367,9 @@ return nestedWeeks; | ||
this.getYearRange = (start, end) => { | ||
const startDate = startOfYear__default["default"](start); | ||
const endDate = endOfYear__default["default"](end); | ||
const startDate = startOfYear.startOfYear(start); | ||
const endDate = endOfYear.endOfYear(end); | ||
const years = []; | ||
let current = startDate; | ||
while (isBefore__default["default"](current, endDate)) { | ||
while (isBefore.isBefore(current, endDate)) { | ||
years.push(current); | ||
current = addYears__default["default"](current, 1); | ||
current = addYears.addYears(current, 1); | ||
} | ||
@@ -448,7 +381,16 @@ return years; | ||
} | ||
date(value) { | ||
if (typeof value === "undefined") { | ||
return new Date(); | ||
} | ||
if (value === null) { | ||
return null; | ||
} | ||
return new Date(value); | ||
} | ||
isBeforeMonth(value, comparing) { | ||
return isBefore__default["default"](value, startOfMonth__default["default"](comparing)); | ||
return isBefore.isBefore(value, startOfMonth.startOfMonth(comparing)); | ||
} | ||
isAfterMonth(value, comparing) { | ||
return isAfter__default["default"](value, startOfMonth__default["default"](comparing)); | ||
return isAfter.isAfter(value, startOfMonth.startOfMonth(comparing)); | ||
} | ||
@@ -455,0 +397,0 @@ } |
{ | ||
"name": "@date-io/date-fns", | ||
"version": "2.17.0", | ||
"version": "3.0.0", | ||
"description": "Abstraction over common javascript date management libraries", | ||
@@ -33,3 +33,3 @@ "main": "build/index.js", | ||
"peerDependencies": { | ||
"date-fns": "^2.0.0" | ||
"date-fns": "^3.2.0" | ||
}, | ||
@@ -42,10 +42,10 @@ "peerDependenciesMeta": { | ||
"dependencies": { | ||
"@date-io/core": "^2.17.0" | ||
"@date-io/core": "^3.0.0" | ||
}, | ||
"devDependencies": { | ||
"date-fns": "2.16.1", | ||
"date-fns": "^3.2.0", | ||
"rollup": "^2.0.2", | ||
"typescript": "^5.0.0" | ||
}, | ||
"gitHead": "e497a04c456f04211c8b0877d002c85e72ea98a2" | ||
"gitHead": "9d304288545a0a9c9f4e3b8aefd428da3757d330" | ||
} |
@@ -1,57 +0,55 @@ | ||
import addDays from "date-fns/addDays"; | ||
import addSeconds from "date-fns/addSeconds"; | ||
import addMinutes from "date-fns/addMinutes"; | ||
import addHours from "date-fns/addHours"; | ||
import addWeeks from "date-fns/addWeeks"; | ||
import addMonths from "date-fns/addMonths"; | ||
import addYears from "date-fns/addYears"; | ||
import differenceInYears from "date-fns/differenceInYears"; | ||
import differenceInQuarters from "date-fns/differenceInQuarters"; | ||
import differenceInMonths from "date-fns/differenceInMonths"; | ||
import differenceInWeeks from "date-fns/differenceInWeeks"; | ||
import differenceInDays from "date-fns/differenceInDays"; | ||
import differenceInHours from "date-fns/differenceInHours"; | ||
import differenceInMinutes from "date-fns/differenceInMinutes"; | ||
import differenceInSeconds from "date-fns/differenceInSeconds"; | ||
import differenceInMilliseconds from "date-fns/differenceInMilliseconds"; | ||
import eachDayOfInterval from "date-fns/eachDayOfInterval"; | ||
import endOfDay from "date-fns/endOfDay"; | ||
import endOfWeek from "date-fns/endOfWeek"; | ||
import endOfYear from "date-fns/endOfYear"; | ||
import format from "date-fns/format"; | ||
import getDate from "date-fns/getDate"; | ||
import getDay from "date-fns/getDay"; | ||
import getDaysInMonth from "date-fns/getDaysInMonth"; | ||
import getHours from "date-fns/getHours"; | ||
import getMinutes from "date-fns/getMinutes"; | ||
import getMonth from "date-fns/getMonth"; | ||
import getSeconds from "date-fns/getSeconds"; | ||
import getYear from "date-fns/getYear"; | ||
import isAfter from "date-fns/isAfter"; | ||
import isBefore from "date-fns/isBefore"; | ||
import isEqual from "date-fns/isEqual"; | ||
import isSameDay from "date-fns/isSameDay"; | ||
import isSameYear from "date-fns/isSameYear"; | ||
import isSameMonth from "date-fns/isSameMonth"; | ||
import isSameHour from "date-fns/isSameHour"; | ||
import isValid from "date-fns/isValid"; | ||
import dateFnsParse from "date-fns/parse"; | ||
import setDate from "date-fns/setDate"; | ||
import setHours from "date-fns/setHours"; | ||
import setMinutes from "date-fns/setMinutes"; | ||
import setMonth from "date-fns/setMonth"; | ||
import setSeconds from "date-fns/setSeconds"; | ||
import setYear from "date-fns/setYear"; | ||
import startOfDay from "date-fns/startOfDay"; | ||
import startOfMonth from "date-fns/startOfMonth"; | ||
import endOfMonth from "date-fns/endOfMonth"; | ||
import startOfWeek from "date-fns/startOfWeek"; | ||
import startOfYear from "date-fns/startOfYear"; | ||
import parseISO from "date-fns/parseISO"; | ||
import formatISO from "date-fns/formatISO"; | ||
import { addDays } from "date-fns/addDays"; | ||
import { addSeconds } from "date-fns/addSeconds"; | ||
import { addMinutes } from "date-fns/addMinutes"; | ||
import { addHours } from "date-fns/addHours"; | ||
import { addWeeks } from "date-fns/addWeeks"; | ||
import { addMonths } from "date-fns/addMonths"; | ||
import { addYears } from "date-fns/addYears"; | ||
import { differenceInYears } from "date-fns/differenceInYears"; | ||
import { differenceInQuarters } from "date-fns/differenceInQuarters"; | ||
import { differenceInMonths } from "date-fns/differenceInMonths"; | ||
import { differenceInWeeks } from "date-fns/differenceInWeeks"; | ||
import { differenceInDays } from "date-fns/differenceInDays"; | ||
import { differenceInHours } from "date-fns/differenceInHours"; | ||
import { differenceInMinutes } from "date-fns/differenceInMinutes"; | ||
import { differenceInSeconds } from "date-fns/differenceInSeconds"; | ||
import { differenceInMilliseconds } from "date-fns/differenceInMilliseconds"; | ||
import { eachDayOfInterval } from "date-fns/eachDayOfInterval"; | ||
import { endOfDay } from "date-fns/endOfDay"; | ||
import { endOfWeek } from "date-fns/endOfWeek"; | ||
import { endOfYear } from "date-fns/endOfYear"; | ||
import { format, longFormatters } from "date-fns/format"; | ||
import { getDate } from "date-fns/getDate"; | ||
import { getDay } from "date-fns/getDay"; | ||
import { getDaysInMonth } from "date-fns/getDaysInMonth"; | ||
import { getHours } from "date-fns/getHours"; | ||
import { getMinutes } from "date-fns/getMinutes"; | ||
import { getMonth } from "date-fns/getMonth"; | ||
import { getSeconds } from "date-fns/getSeconds"; | ||
import { getYear } from "date-fns/getYear"; | ||
import { isAfter } from "date-fns/isAfter"; | ||
import { isBefore } from "date-fns/isBefore"; | ||
import { isEqual } from "date-fns/isEqual"; | ||
import { isSameDay } from "date-fns/isSameDay"; | ||
import { isSameYear } from "date-fns/isSameYear"; | ||
import { isSameMonth } from "date-fns/isSameMonth"; | ||
import { isSameHour } from "date-fns/isSameHour"; | ||
import { isValid } from "date-fns/isValid"; | ||
import { parse as dateFnsParse } from "date-fns/parse"; | ||
import { setDate } from "date-fns/setDate"; | ||
import { setHours } from "date-fns/setHours"; | ||
import { setMinutes } from "date-fns/setMinutes"; | ||
import { setMonth } from "date-fns/setMonth"; | ||
import { setSeconds } from "date-fns/setSeconds"; | ||
import { setYear } from "date-fns/setYear"; | ||
import { startOfDay } from "date-fns/startOfDay"; | ||
import { startOfMonth } from "date-fns/startOfMonth"; | ||
import { endOfMonth } from "date-fns/endOfMonth"; | ||
import { startOfWeek } from "date-fns/startOfWeek"; | ||
import { startOfYear } from "date-fns/startOfYear"; | ||
import { parseISO } from "date-fns/parseISO"; | ||
import { formatISO } from "date-fns/formatISO"; | ||
import { IUtils, DateIOFormats, Unit } from "@date-io/core/IUtils"; | ||
import isWithinInterval from "date-fns/isWithinInterval"; | ||
// @ts-ignore | ||
import longFormatters from "date-fns/_lib/format/longFormatters"; | ||
import defaultLocale from "date-fns/locale/en-US"; | ||
import { isWithinInterval } from "date-fns/isWithinInterval"; | ||
import { enUS as defaultLocale } from "date-fns/locale/en-US"; | ||
@@ -65,6 +63,6 @@ type Locale = typeof defaultLocale; | ||
fullDateTime: "PP p", | ||
fullDateTime12h: "PP hh:mm aaa", | ||
fullDateTime12h: "PP hh:mm aa", | ||
fullDateTime24h: "PP HH:mm", | ||
fullTime: "p", | ||
fullTime12h: "hh:mm aaa", | ||
fullTime12h: "hh:mm aa", | ||
fullTime24h: "HH:mm", | ||
@@ -75,3 +73,3 @@ hours12h: "hh", | ||
keyboardDateTime: "P p", | ||
keyboardDateTime12h: "P hh:mm aaa", | ||
keyboardDateTime12h: "P hh:mm aa", | ||
keyboardDateTime24h: "P HH:mm", | ||
@@ -92,3 +90,3 @@ minutes: "mm", | ||
export default class DateFnsUtils implements IUtils<Date> { | ||
export default class DateFnsUtils implements IUtils<Date, Locale> { | ||
public lib = "date-fns"; | ||
@@ -101,3 +99,3 @@ public locale?: Locale; | ||
formats, | ||
}: { formats?: Partial<DateIOFormats>; locale?: Locale } = {}) { | ||
}: { formats?: Partial<DateIOFormats>; locale?: Locale; instance?: any } = {}) { | ||
this.locale = locale; | ||
@@ -111,3 +109,3 @@ this.formats = Object.assign({}, defaultFormats, formats); | ||
if (this.locale) { | ||
return /a/.test(this.locale.formatLong?.time()); | ||
return /a/.test(this.locale.formatLong?.time({})); | ||
} | ||
@@ -131,3 +129,3 @@ | ||
const longFormatter = longFormatters[firstCharacter]; | ||
return longFormatter(token, locale.formatLong, {}); | ||
return longFormatter(token, locale.formatLong); | ||
} | ||
@@ -299,13 +297,20 @@ return token; | ||
public date = (value?: any) => { | ||
date< | ||
TArg extends unknown = undefined, | ||
TRes extends unknown = TArg extends null | ||
? null | ||
: TArg extends undefined | ||
? Date | ||
: Date | null | ||
>(value?: TArg): TRes { | ||
if (typeof value === "undefined") { | ||
return new Date(); | ||
return new Date() as TRes; | ||
} | ||
if (value === null) { | ||
return null; | ||
return null as TRes; | ||
} | ||
return new Date(value); | ||
}; | ||
return new Date(value as string | number) as TRes; | ||
} | ||
@@ -446,3 +451,3 @@ public toJsDate = (value: Date) => { | ||
const nestedWeeks: Date[][] = []; | ||
let lastDay = null; | ||
let lastDay = null as null | number; | ||
while (isBefore(current, end)) { | ||
@@ -449,0 +454,0 @@ const weekNumber = Math.floor(count / 7); |
@@ -1,2 +0,1 @@ | ||
import "../type/index"; | ||
export { default } from "./date-fns-utils"; |
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
Unidentified License
License(Experimental) Something that seems like a license was found, but its contents could not be matched with a known license
Found 1 instance in 1 package
0
100
49994
11
1234
+ Added@date-io/core@3.0.0(transitive)
+ Addeddate-fns@3.6.0(transitive)
- Removed@babel/runtime@7.24.5(transitive)
- Removed@date-io/core@2.17.0(transitive)
- Removeddate-fns@2.30.0(transitive)
- Removedregenerator-runtime@0.14.1(transitive)
Updated@date-io/core@^3.0.0