@terascope/utils / dates
dates
Type Aliases
AdjustDateArgs
AdjustDateArgs: {
expr
:string
; } | {days
:number
;hours
:number
;milliseconds
:number
;minutes
:number
;months
:number
;seconds
:number
;weeks
:number
;years
:number
; }
Defined in: packages/utils/src/dates.ts:724
Variables
getDurationFunc
const
getDurationFunc:object
Defined in: packages/utils/src/dates.ts:553
Type declaration
Day Helpers
businessDays()
businessDays: (
laterDate
,earlierDate
,options
?) =>number
=differenceInBusinessDays
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInBusinessDaysOptions | An object with options |
Returns
number
The number of business days
Name
differenceInBusinessDays
Description
Get the number of business day periods between the given dates.
Business days being days that aren't in the weekend.
Like differenceInCalendarDays
, the function removes the times from
the dates before calculating the difference.
Example
// How many business days are between
// 10 January 2014 and 20 July 2014?
const result = differenceInBusinessDays(
new Date(2014, 6, 20),
new Date(2014, 0, 10)
)
//=> 136
// How many business days are between
// 30 November 2021 and 1 November 2021?
const result = differenceInBusinessDays(
new Date(2021, 10, 30),
new Date(2021, 10, 1)
)
//=> 21
// How many business days are between
// 1 November 2021 and 1 December 2021?
const result = differenceInBusinessDays(
new Date(2021, 10, 1),
new Date(2021, 11, 1)
)
//=> -22
// How many business days are between
// 1 November 2021 and 1 November 2021 ?
const result = differenceInBusinessDays(
new Date(2021, 10, 1),
new Date(2021, 10, 1)
)
//=> 0
calendarDays()
calendarDays: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarDays
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarDaysOptions | The options object |
Returns
number
The number of calendar days
Name
differenceInCalendarDays
Description
Get the number of calendar days between the given dates. This means that the times are removed from the dates and then the difference in days is calculated.
Example
// How many calendar days are between
// 2 July 2011 23:00:00 and 2 July 2012 00:00:00?
const result = differenceInCalendarDays(
new Date(2012, 6, 2, 0, 0),
new Date(2011, 6, 2, 23, 0)
)
//=> 366
// How many calendar days are between
// 2 July 2011 23:59:00 and 3 July 2011 00:01:00?
const result = differenceInCalendarDays(
new Date(2011, 6, 3, 0, 1),
new Date(2011, 6, 2, 23, 59)
)
//=> 1
days()
days: (
laterDate
,earlierDate
,options
?) =>number
=differenceInDays
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInDaysOptions | An object with options |
Returns
number
The number of full days according to the local timezone
Name
differenceInDays
Description
Get the number of full day periods between two dates. Fractional days are truncated towards zero.
One "full day" is the distance between a local time in one day to the same local time on the next or previous day. A full day can sometimes be less than or more than 24 hours if a daylight savings change happens between two dates.
To ignore DST and only measure exact 24-hour periods, use this instead:
Math.trunc(differenceInHours(dateLeft, dateRight)/24)|0
.
Examples
// How many full days are between
// 2 July 2011 23:00:00 and 2 July 2012 00:00:00?
const result = differenceInDays(
new Date(2012, 6, 2, 0, 0),
new Date(2011, 6, 2, 23, 0)
)
//=> 365
// How many full days are between
// 2 July 2011 23:59:00 and 3 July 2011 00:01:00?
const result = differenceInDays(
new Date(2011, 6, 3, 0, 1),
new Date(2011, 6, 2, 23, 59)
)
//=> 0
// How many full days are between
// 1 March 2020 0:00 and 1 June 2020 0:00 ?
// Note: because local time is used, the
// result will always be 92 days, even in
// time zones where DST starts and the
// period has only 92*24-1 hours.
const result = differenceInDays(
new Date(2020, 5, 1),
new Date(2020, 2, 1)
)
//=> 92
Hour Helpers
hours()
hours: (
laterDate
,earlierDate
,options
?) =>number
=differenceInHours
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInHoursOptions | An object with options. |
Returns
number
The number of hours
Name
differenceInHours
Description
Get the number of hours between the given dates.
Example
// How many hours are between 2 July 2014 06:50:00 and 2 July 2014 19:00:00?
const result = differenceInHours(
new Date(2014, 6, 2, 19, 0),
new Date(2014, 6, 2, 6, 50)
)
//=> 12
ISO Week Helpers
calendarWeeks()
calendarWeeks: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarISOWeeks
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarISOWeeksOptions | An object with options |
Returns
number
The number of calendar ISO weeks
Name
differenceInCalendarISOWeeks
Description
Get the number of calendar ISO weeks between the given dates.
ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
Example
// How many calendar ISO weeks are between 6 July 2014 and 21 July 2014?
const result = differenceInCalendarISOWeeks(
new Date(2014, 6, 21),
new Date(2014, 6, 6),
);
//=> 3
ISO Week-Numbering Year Helpers
calendarISOWeekYears()
calendarISOWeekYears: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarISOWeekYears
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarISOWeekYearsOptions | An object with options |
Returns
number
The number of calendar ISO week-numbering years
Name
differenceInCalendarISOWeekYears
Description
Get the number of calendar ISO week-numbering years between the given dates.
ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
Example
// How many calendar ISO week-numbering years are 1 January 2010 and 1 January 2012?
const result = differenceInCalendarISOWeekYears(
new Date(2012, 0, 1),
new Date(2010, 0, 1)
)
//=> 2
ISOWeekYears()
ISOWeekYears: (
laterDate
,earlierDate
,options
?) =>number
=differenceInISOWeekYears
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInISOWeekYearsOptions | The options |
Returns
number
The number of full ISO week-numbering years
Name
differenceInISOWeekYears
Description
Get the number of full ISO week-numbering years between the given dates.
ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
Example
// How many full ISO week-numbering years are between 1 January 2010 and 1 January 2012?
const result = differenceInISOWeekYears(
new Date(2012, 0, 1),
new Date(2010, 0, 1)
)
// => 1
Millisecond Helpers
milliseconds()
milliseconds: (
laterDate
,earlierDate
) =>number
=differenceInMilliseconds
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
Returns
number
The number of milliseconds
Name
differenceInMilliseconds
Description
Get the number of milliseconds between the given dates.
Example
// How many milliseconds are between
// 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?
const result = differenceInMilliseconds(
new Date(2014, 6, 2, 12, 30, 21, 700),
new Date(2014, 6, 2, 12, 30, 20, 600)
)
//=> 1100
Minute Helpers
minutes()
minutes: (
dateLeft
,dateRight
,options
?) =>number
=differenceInMinutes
Parameters
Parameter | Type | Description |
---|---|---|
dateLeft | string | number | Date | The later date |
dateRight | string | number | Date | The earlier date |
options ? | DifferenceInMinutesOptions | An object with options. |
Returns
number
The number of minutes
Name
differenceInMinutes
Description
Get the signed number of full (rounded towards 0) minutes between the given dates.
Examples
// How many minutes are between 2 July 2014 12:07:59 and 2 July 2014 12:20:00?
const result = differenceInMinutes(
new Date(2014, 6, 2, 12, 20, 0),
new Date(2014, 6, 2, 12, 7, 59)
)
//=> 12
// How many minutes are between 10:01:59 and 10:00:00
const result = differenceInMinutes(
new Date(2000, 0, 1, 10, 0, 0),
new Date(2000, 0, 1, 10, 1, 59)
)
//=> -1
Month Helpers
calendarMonths()
calendarMonths: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarMonths
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarMonthsOptions | An object with options |
Returns
number
The number of calendar months
Name
differenceInCalendarMonths
Description
Get the number of calendar months between the given dates.
Example
// How many calendar months are between 31 January 2014 and 1 September 2014?
const result = differenceInCalendarMonths(
new Date(2014, 8, 1),
new Date(2014, 0, 31)
)
//=> 8
months()
months: (
laterDate
,earlierDate
,options
?) =>number
=differenceInMonths
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInMonthsOptions | An object with options |
Returns
number
The number of full months
Name
differenceInMonths
Example
// How many full months are between 31 January 2014 and 1 September 2014?
const result = differenceInMonths(new Date(2014, 8, 1), new Date(2014, 0, 31))
//=> 7
Quarter Helpers
calendarQuarters()
calendarQuarters: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarQuarters
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarQuartersOptions | An object with options |
Returns
number
The number of calendar quarters
Name
differenceInCalendarQuarters
Description
Get the number of calendar quarters between the given dates.
Example
// How many calendar quarters are between 31 December 2013 and 2 July 2014?
const result = differenceInCalendarQuarters(
new Date(2014, 6, 2),
new Date(2013, 11, 31)
)
//=> 3
quarters()
quarters: (
laterDate
,earlierDate
,options
?) =>number
=differenceInQuarters
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInQuartersOptions | An object with options. |
Returns
number
The number of full quarters
Name
differenceInQuarters
Description
Get the number of quarters between the given dates.
Example
// How many full quarters are between 31 December 2013 and 2 July 2014?
const result = differenceInQuarters(new Date(2014, 6, 2), new Date(2013, 11, 31))
//=> 2
Second Helpers
seconds()
seconds: (
laterDate
,earlierDate
,options
?) =>number
=differenceInSeconds
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInSecondsOptions | An object with options. |
Returns
number
The number of seconds
Name
differenceInSeconds
Description
Get the number of seconds between the given dates.
Example
// How many seconds are between
// 2 July 2014 12:30:07.999 and 2 July 2014 12:30:20.000?
const result = differenceInSeconds(
new Date(2014, 6, 2, 12, 30, 20, 0),
new Date(2014, 6, 2, 12, 30, 7, 999)
)
//=> 12
Week Helpers
weeks()
weeks: (
laterDate
,earlierDate
,options
?) =>number
=differenceInWeeks
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInWeeksOptions | An object with options |
Returns
number
The number of full weeks
Name
differenceInWeeks
Description
Get the number of full weeks between two dates. Fractional weeks are truncated towards zero by default.
One "full week" is the distance between a local time in one day to the same local time 7 days earlier or later. A full week can sometimes be less than or more than 7*24 hours if a daylight savings change happens between two dates.
To ignore DST and only measure exact 7*24-hour periods, use this instead:
Math.trunc(differenceInHours(dateLeft, dateRight)/(7*24))|0
.
Examples
// How many full weeks are between 5 July 2014 and 20 July 2014?
const result = differenceInWeeks(new Date(2014, 6, 20), new Date(2014, 6, 5))
//=> 2
// How many full weeks are between
// 1 March 2020 0:00 and 6 June 2020 0:00 ?
// Note: because local time is used, the
// result will always be 8 weeks (54 days),
// even if DST starts and the period has
// only 54*24-1 hours.
const result = differenceInWeeks(
new Date(2020, 5, 1),
new Date(2020, 2, 6)
)
//=> 8
Year Helpers
calendarYears()
calendarYears: (
laterDate
,earlierDate
,options
?) =>number
=differenceInCalendarYears
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInCalendarYearsOptions | An object with options |
Returns
number
The number of calendar years
Name
differenceInCalendarYears
Description
Get the number of calendar years between the given dates.
Example
// How many calendar years are between 31 December 2013 and 11 February 2015?
const result = differenceInCalendarYears(
new Date(2015, 1, 11),
new Date(2013, 11, 31)
);
//=> 2
years()
years: (
laterDate
,earlierDate
,options
?) =>number
=differenceInYears
Parameters
Parameter | Type | Description |
---|---|---|
laterDate | string | number | Date | The later date |
earlierDate | string | number | Date | The earlier date |
options ? | DifferenceInYearsOptions | An object with options |
Returns
number
The number of full years
Name
differenceInYears
Description
Get the number of full years between the given dates.
Example
// How many full years are between 31 December 2013 and 11 February 2015?
const result = differenceInYears(new Date(2015, 1, 11), new Date(2013, 11, 31))
//=> 1
timezoneOffset
const
timezoneOffset:number
Defined in: packages/utils/src/dates.ts:53
Functions
addToDate()
addToDate(
input
,args
):number
Defined in: packages/utils/src/dates.ts:737
Parameters
Parameter | Type |
---|---|
input | unknown |
args | AdjustDateArgs |
Returns
number
addToDateFP()
addToDateFP(
args
): (input
) =>number
Defined in: packages/utils/src/dates.ts:747
Parameters
Parameter | Type |
---|---|
args | AdjustDateArgs |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
formatDateValue()
formatDateValue(
value
,format
):string
|number
Defined in: packages/utils/src/dates.ts:523
Format the parsed date value
Parameters
Parameter | Type |
---|---|
value | number | Date | DateTuple |
format | undefined | string |
Returns
string
| number
getDate()
getDate(
input
):number
Defined in: packages/utils/src/dates.ts:955
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getHours()
getHours(
input
):number
Defined in: packages/utils/src/dates.ts:945
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getMilliseconds()
getMilliseconds(
input
):number
Defined in: packages/utils/src/dates.ts:922
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getMinutes()
getMinutes(
input
):number
Defined in: packages/utils/src/dates.ts:935
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getMonth()
getMonth(
input
):number
Defined in: packages/utils/src/dates.ts:964
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getSeconds()
getSeconds(
input
):number
Defined in: packages/utils/src/dates.ts:926
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getTime()
getTime(
val
?):number
|false
Defined in: packages/utils/src/dates.ts:248
Ensure unix time
Parameters
Parameter | Type |
---|---|
val ? | DateInputTypes |
Returns
number
| false
getTimeBetween()
getTimeBetween(
input
,args
):string
|number
Defined in: packages/utils/src/dates.ts:573
Parameters
Parameter | Type |
---|---|
input | unknown |
args | GetTimeBetweenArgs |
Returns
string
| number
getTimeBetweenFP()
getTimeBetweenFP(
args
): (input
) =>string
|number
Defined in: packages/utils/src/dates.ts:611
A functional version of getTimeBetween
Parameters
Parameter | Type |
---|---|
args | GetTimeBetweenArgs |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
string
| number
getTimezoneOffset()
getTimezoneOffset(
input
,timezone
):number
Defined in: packages/utils/src/dates.ts:820
Given a date and timezone, it will return the offset from UTC in minutes. This is more accurate than timezoneToOffset as it can better account for day lights saving time
Parameters
Parameter | Type |
---|---|
input | unknown |
timezone | string |
Returns
number
getTimezoneOffsetFP()
getTimezoneOffsetFP(
timezone
): (input
) =>number
Defined in: packages/utils/src/dates.ts:834
Given a timezone, it will return a function that will take in dates that will be converted the offset in minutes. This is more accurate than timezoneToOffset as it can better account for day lights saving time
Parameters
Parameter | Type |
---|---|
timezone | string |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getUnixTime()
getUnixTime(
val
?):number
|false
Defined in: packages/utils/src/dates.ts:255
Parameters
Parameter | Type |
---|---|
val ? | DateInputTypes |
Returns
number
| false
getUTCDate()
getUTCDate(
input
):number
Defined in: packages/utils/src/dates.ts:950
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getUTCHours()
getUTCHours(
input
):number
Defined in: packages/utils/src/dates.ts:940
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getUTCMinutes()
getUTCMinutes(
input
):number
Defined in: packages/utils/src/dates.ts:930
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getUTCMonth()
getUTCMonth(
input
):number
Defined in: packages/utils/src/dates.ts:960
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getUTCYear()
getUTCYear(
input
):number
Defined in: packages/utils/src/dates.ts:968
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
getValidDate()
getValidDate(
val
,relativeNow
):false
|Date
Defined in: packages/utils/src/dates.ts:121
Coerces value into a valid date, returns false if it is invalid. Has added support for converting from date math (i.e. now+1h, now-1m, now+2d/y, 2021-01-01||+2d)
Parameters
Parameter | Type |
---|---|
val | unknown |
relativeNow | Date |
Returns
false
| Date
getValidDateOrNumberOrThrow()
getValidDateOrNumberOrThrow(
val
):number
|Date
Defined in: packages/utils/src/dates.ts:231
Returns a valid date or throws, {@see getValidDate}
Parameters
Parameter | Type |
---|---|
val | unknown |
Returns
number
| Date
getValidDateOrThrow()
getValidDateOrThrow(
val
):Date
Defined in: packages/utils/src/dates.ts:158
Returns a valid date or throws, {@see getValidDate}
Parameters
Parameter | Type |
---|---|
val | unknown |
Returns
Date
getValidDateWithTimezone()
getValidDateWithTimezone(
val
,getUTC
):false
|Date
Defined in: packages/utils/src/dates.ts:220
Returns a valid date with the timezone applied {@see getValidDate}
Parameters
Parameter | Type | Default value |
---|---|---|
val | unknown | undefined |
getUTC | boolean | false |
Returns
false
| Date
getValidDateWithTimezoneOrThrow()
getValidDateWithTimezoneOrThrow(
val
,getUTC
):Date
Defined in: packages/utils/src/dates.ts:209
Returns a valid date with the timezone applied or throws{@see getValidDate}
Parameters
Parameter | Type | Default value |
---|---|---|
val | unknown | undefined |
getUTC | boolean | false |
Returns
Date
getYear()
getYear(
input
):number
Defined in: packages/utils/src/dates.ts:972
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
isAfter()
isAfter(
input
,date
):boolean
Defined in: packages/utils/src/dates.ts:780
Parameters
Parameter | Type |
---|---|
input | unknown |
date | DateInputTypes |
Returns
boolean
isBefore()
isBefore(
input
,date
):boolean
Defined in: packages/utils/src/dates.ts:769
Parameters
Parameter | Type |
---|---|
input | unknown |
date | DateInputTypes |
Returns
boolean
isBetween()
isBetween(
input
,args
):boolean
Defined in: packages/utils/src/dates.ts:791
Parameters
Parameter | Type |
---|---|
input | unknown |
args | { end : DateInputTypes ; start : DateInputTypes ; } |
args.end | DateInputTypes |
args.start | DateInputTypes |
Returns
boolean
isDateTuple()
isDateTuple(
input
):input is DateTuple
Defined in: packages/utils/src/dates.ts:363
Verify if an input is a Date Tuple
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
input is DateTuple
isFriday()
isFriday(
input
):boolean
Defined in: packages/utils/src/dates.ts:652
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isFuture()
isFuture(
input
):boolean
Defined in: packages/utils/src/dates.ts:682
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isISO8601()
isISO8601(
input
):input is string
Defined in: packages/utils/src/dates.ts:283
Checks to see if an input is a ISO 8601 date
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
input is string
isLeapYear()
isLeapYear(
input
):boolean
Defined in: packages/utils/src/dates.ts:696
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isMonday()
isMonday(
input
):boolean
Defined in: packages/utils/src/dates.ts:624
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isPast()
isPast(
input
):boolean
Defined in: packages/utils/src/dates.ts:689
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isSaturday()
isSaturday(
input
):boolean
Defined in: packages/utils/src/dates.ts:659
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isSunday()
isSunday(
input
):boolean
Defined in: packages/utils/src/dates.ts:617
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isThursday()
isThursday(
input
):boolean
Defined in: packages/utils/src/dates.ts:645
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isToday()
isToday(
input
):boolean
Defined in: packages/utils/src/dates.ts:710
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isTomorrow()
isTomorrow(
input
):boolean
Defined in: packages/utils/src/dates.ts:703
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isTuesday()
isTuesday(
input
):boolean
Defined in: packages/utils/src/dates.ts:631
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isUnixTime()
isUnixTime(
input
,allowBefore1970
):input is number
Defined in: packages/utils/src/dates.ts:264
Checks to see if an input is a unix time
Parameters
Parameter | Type | Default value |
---|---|---|
input | unknown | undefined |
allowBefore1970 | boolean | true |
Returns
input is number
isUnixTimeFP()
isUnixTimeFP(
allowBefore1970
?): (input
) =>input is number
Defined in: packages/utils/src/dates.ts:274
A functional version of isUnixTime
Parameters
Parameter | Type |
---|---|
allowBefore1970 ? | boolean |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
input is number
isValidDate()
isValidDate(
val
):boolean
Defined in: packages/utils/src/dates.ts:71
A simplified implementation of moment(new Date(val)).isValid()
Parameters
Parameter | Type |
---|---|
val | unknown |
Returns
boolean
isValidDateInstance()
isValidDateInstance(
val
):val is Date
Defined in: packages/utils/src/dates.ts:242
Parameters
Parameter | Type |
---|---|
val | unknown |
Returns
val is Date
isWednesday()
isWednesday(
input
):boolean
Defined in: packages/utils/src/dates.ts:638
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isWeekday()
isWeekday(
input
):boolean
Defined in: packages/utils/src/dates.ts:666
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isWeekend()
isWeekend(
input
):boolean
Defined in: packages/utils/src/dates.ts:674
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
isYesterday()
isYesterday(
input
):boolean
Defined in: packages/utils/src/dates.ts:717
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
boolean
makeISODate()
makeISODate(
value
?):string
Defined in: packages/utils/src/dates.ts:58
A helper function for making an ISODate string
Parameters
Parameter | Type |
---|---|
value ? | null | string | number | Date | DateTuple |
Returns
string
parseCustomDateFormat()
parseCustomDateFormat(
value
,format
,referenceDate
):number
Defined in: packages/utils/src/dates.ts:471
Parameters
Parameter | Type |
---|---|
value | unknown |
format | string |
referenceDate | Date |
Returns
number
parseDateValue()
parseDateValue(
value
,format
,referenceDate
):number
Defined in: packages/utils/src/dates.ts:496
Parse a date value (that has already been validated) and return the epoch millis time.
Parameters
Parameter | Type |
---|---|
value | unknown |
format | undefined | string |
referenceDate | Date |
Returns
number
setDate()
setDate(
date
): (input
) =>number
Defined in: packages/utils/src/dates.ts:889
Parameters
Parameter | Type |
---|---|
date | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setHours()
setHours(
hours
): (input
) =>number
Defined in: packages/utils/src/dates.ts:878
Parameters
Parameter | Type |
---|---|
hours | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setMilliseconds()
setMilliseconds(
ms
): (input
) =>number
Defined in: packages/utils/src/dates.ts:845
Parameters
Parameter | Type |
---|---|
ms | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setMinutes()
setMinutes(
minutes
): (input
) =>number
Defined in: packages/utils/src/dates.ts:867
Parameters
Parameter | Type |
---|---|
minutes | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setMonth()
setMonth(
month
): (input
) =>number
Defined in: packages/utils/src/dates.ts:900
Parameters
Parameter | Type |
---|---|
month | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setSeconds()
setSeconds(
seconds
): (input
) =>number
Defined in: packages/utils/src/dates.ts:856
Parameters
Parameter | Type |
---|---|
seconds | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
setTimezone()
setTimezone(
input
,timezone
):DateTuple
Defined in: packages/utils/src/dates.ts:336
Set the timezone offset of a date, returns a date tuple
Parameters
Parameter | Type |
---|---|
input | unknown |
timezone | string | number |
Returns
DateTuple
setTimezoneFP()
setTimezoneFP(
timezone
): (input
) =>DateTuple
Defined in: packages/utils/src/dates.ts:344
A curried version of setTimezone
Parameters
Parameter | Type |
---|---|
timezone | string | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
DateTuple
setYear()
setYear(
year
): (input
) =>number
Defined in: packages/utils/src/dates.ts:911
Parameters
Parameter | Type |
---|---|
year | number |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
subtractFromDate()
subtractFromDate(
input
,args
):number
Defined in: packages/utils/src/dates.ts:753
Parameters
Parameter | Type |
---|---|
input | unknown |
args | AdjustDateArgs |
Returns
number
subtractFromDateFP()
subtractFromDateFP(
args
): (input
) =>number
Defined in: packages/utils/src/dates.ts:763
Parameters
Parameter | Type |
---|---|
args | AdjustDateArgs |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
timezoneToOffset()
timezoneToOffset(
timezone
):number
Defined in: packages/utils/src/dates.ts:809
Given a timezone, it will return the minutes of its offset from UTC time
Parameters
Parameter | Type |
---|---|
timezone | unknown |
Returns
number
toEpochMSOrThrow()
toEpochMSOrThrow(
input
):number
|DateTuple
Defined in: packages/utils/src/dates.ts:977
Will convert a date to its epoch millisecond format or throw if invalid
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number
| DateTuple
toHumanTime()
toHumanTime(
ms
):string
Defined in: packages/utils/src/dates.ts:451
converts smaller than a week milliseconds to human readable time
Parameters
Parameter | Type |
---|---|
ms | number |
Returns
string
toISO8601()
toISO8601(
value
):string
Defined in: packages/utils/src/dates.ts:293
Convert a value to an ISO 8601 date string. This should be used over makeISODate
Parameters
Parameter | Type |
---|---|
value | unknown |
Returns
string
toTimeZone()
toTimeZone(
val
,timezone
):null
|DateTuple
Defined in: packages/utils/src/dates.ts:166
Parameters
Parameter | Type |
---|---|
val | unknown |
timezone | string |
Returns
null
| DateTuple
toTimeZoneUsingLocation()
toTimeZoneUsingLocation(
val
,location
):null
|DateTuple
Defined in: packages/utils/src/dates.ts:180
Parameters
Parameter | Type |
---|---|
val | unknown |
location | unknown |
Returns
null
| DateTuple
toTimeZoneUsingLocationFP()
toTimeZoneUsingLocationFP(
location
): (val
) =>null
|DateTuple
Defined in: packages/utils/src/dates.ts:186
Parameters
Parameter | Type |
---|---|
location | unknown |
Returns
Function
Parameters
Parameter | Type |
---|---|
val | unknown |
Returns
null
| DateTuple
trackTimeout()
trackTimeout(
timeoutMs
): () =>number
|false
Defined in: packages/utils/src/dates.ts:438
track a timeout to see if it expires
Parameters
Parameter | Type |
---|---|
timeoutMs | number |
Returns
Function
a function that will returns false if the time elapsed
Returns
number
| false
trimISODateSegment()
trimISODateSegment(
segment
): (input
) =>number
Defined in: packages/utils/src/dates.ts:378
Returns a function to trim the ISO 8601 date segment useful for creating yearly, monthly, daily or hourly dates
Parameters
Parameter | Type |
---|---|
segment | ISO8601DateSegment |
Returns
Function
Parameters
Parameter | Type |
---|---|
input | unknown |
Returns
number