Skip to main content

@terascope/core-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/core-utils/src/dates.ts:712

Variables​

getDurationFunc​

const getDurationFunc: object

Defined in: packages/core-utils/src/dates.ts:541

Type Declaration​

Day Helpers​

businessDays​

businessDays: (laterDate, earlierDate, options?) => number = differenceInBusinessDays

Parameters​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInBusinessDaysOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarDaysOptionsThe 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInDaysOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInHoursOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarISOWeeksOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarISOWeekYearsOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInISOWeekYearsOptionsThe 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe 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​
ParameterTypeDescription
dateLeftstring | number | DateThe later date
dateRightstring | number | DateThe earlier date
options?DifferenceInMinutesOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarMonthsOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInMonthsOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarQuartersOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInQuartersOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInSecondsOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInWeeksOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInCalendarYearsOptionsAn 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​
ParameterTypeDescription
laterDatestring | number | DateThe later date
earlierDatestring | number | DateThe earlier date
options?DifferenceInYearsOptionsAn 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/core-utils/src/dates.ts:53

Functions​

addToDate()​

addToDate(input, args): number

Defined in: packages/core-utils/src/dates.ts:725

Parameters​

ParameterType
inputunknown
argsAdjustDateArgs

Returns​

number


addToDateFP()​

addToDateFP(args): (input) => number

Defined in: packages/core-utils/src/dates.ts:735

Parameters​

ParameterType
argsAdjustDateArgs

Returns​

(input) => number


formatDateValue()​

formatDateValue(value, format): string | number

Defined in: packages/core-utils/src/dates.ts:511

Format the parsed date value

Parameters​

ParameterType
valuenumber | Date | DateTuple
formatstring | undefined

Returns​

string | number


getDate()​

getDate(input): number

Defined in: packages/core-utils/src/dates.ts:943

Parameters​

ParameterType
inputunknown

Returns​

number


getHours()​

getHours(input): number

Defined in: packages/core-utils/src/dates.ts:933

Parameters​

ParameterType
inputunknown

Returns​

number


getMilliseconds()​

getMilliseconds(input): number

Defined in: packages/core-utils/src/dates.ts:910

Parameters​

ParameterType
inputunknown

Returns​

number


getMinutes()​

getMinutes(input): number

Defined in: packages/core-utils/src/dates.ts:923

Parameters​

ParameterType
inputunknown

Returns​

number


getMonth()​

getMonth(input): number

Defined in: packages/core-utils/src/dates.ts:952

Parameters​

ParameterType
inputunknown

Returns​

number


getSeconds()​

getSeconds(input): number

Defined in: packages/core-utils/src/dates.ts:914

Parameters​

ParameterType
inputunknown

Returns​

number


getTime()​

getTime(val?): number | false

Defined in: packages/core-utils/src/dates.ts:236

Ensure unix time

Parameters​

ParameterType
val?DateInputTypes

Returns​

number | false


getTimeBetween()​

getTimeBetween(input, args): string | number

Defined in: packages/core-utils/src/dates.ts:561

Parameters​

ParameterType
inputunknown
argsGetTimeBetweenArgs

Returns​

string | number


getTimeBetweenFP()​

getTimeBetweenFP(args): (input) => string | number

Defined in: packages/core-utils/src/dates.ts:599

A functional version of getTimeBetween

Parameters​

ParameterType
argsGetTimeBetweenArgs

Returns​

(input) => string | number


getTimezoneOffset()​

getTimezoneOffset(input, timezone): number

Defined in: packages/core-utils/src/dates.ts:808

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​

ParameterType
inputunknown
timezonestring

Returns​

number


getTimezoneOffsetFP()​

getTimezoneOffsetFP(timezone): (input) => number

Defined in: packages/core-utils/src/dates.ts:822

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​

ParameterType
timezonestring

Returns​

(input) => number


getUnixTime()​

getUnixTime(val?): number | false

Defined in: packages/core-utils/src/dates.ts:243

Parameters​

ParameterType
val?DateInputTypes

Returns​

number | false


getUTCDate()​

getUTCDate(input): number

Defined in: packages/core-utils/src/dates.ts:938

Parameters​

ParameterType
inputunknown

Returns​

number


getUTCHours()​

getUTCHours(input): number

Defined in: packages/core-utils/src/dates.ts:928

Parameters​

ParameterType
inputunknown

Returns​

number


getUTCMinutes()​

getUTCMinutes(input): number

Defined in: packages/core-utils/src/dates.ts:918

Parameters​

ParameterType
inputunknown

Returns​

number


getUTCMonth()​

getUTCMonth(input): number

Defined in: packages/core-utils/src/dates.ts:948

Parameters​

ParameterType
inputunknown

Returns​

number


getUTCYear()​

getUTCYear(input): number

Defined in: packages/core-utils/src/dates.ts:956

Parameters​

ParameterType
inputunknown

Returns​

number


getValidDate()​

getValidDate(val, relativeNow?): false | Date

Defined in: packages/core-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​

ParameterType
valunknown
relativeNowDate

Returns​

false | Date


getValidDateOrNumberOrThrow()​

getValidDateOrNumberOrThrow(val): number | Date

Defined in: packages/core-utils/src/dates.ts:219

Returns a valid date or throws, getValidDate

Parameters​

ParameterType
valunknown

Returns​

number | Date


getValidDateOrThrow()​

getValidDateOrThrow(val): Date

Defined in: packages/core-utils/src/dates.ts:161

Returns a valid date or throws, getValidDate

Parameters​

ParameterType
valunknown

Returns​

Date


getValidDateWithTimezone()​

getValidDateWithTimezone(val, getUTC?): false | Date

Defined in: packages/core-utils/src/dates.ts:208

Returns a valid date with the timezone applied getValidDate

Parameters​

ParameterTypeDefault value
valunknownundefined
getUTCbooleanfalse

Returns​

false | Date


getValidDateWithTimezoneOrThrow()​

getValidDateWithTimezoneOrThrow(val, getUTC?): Date

Defined in: packages/core-utils/src/dates.ts:197

Returns a valid date with the timezone applied or throwsgetValidDate

Parameters​

ParameterTypeDefault value
valunknownundefined
getUTCbooleanfalse

Returns​

Date


getYear()​

getYear(input): number

Defined in: packages/core-utils/src/dates.ts:960

Parameters​

ParameterType
inputunknown

Returns​

number


isAfter()​

isAfter(input, date): boolean

Defined in: packages/core-utils/src/dates.ts:768

Parameters​

ParameterType
inputunknown
dateDateInputTypes

Returns​

boolean


isBefore()​

isBefore(input, date): boolean

Defined in: packages/core-utils/src/dates.ts:757

Parameters​

ParameterType
inputunknown
dateDateInputTypes

Returns​

boolean


isBetween()​

isBetween(input, args): boolean

Defined in: packages/core-utils/src/dates.ts:779

Parameters​

ParameterType
inputunknown
args{ end: DateInputTypes; start: DateInputTypes; }
args.endDateInputTypes
args.startDateInputTypes

Returns​

boolean


isDateTuple()​

isDateTuple(input): input is DateTuple

Defined in: packages/core-utils/src/dates.ts:351

Verify if an input is a Date Tuple

Parameters​

ParameterType
inputunknown

Returns​

input is DateTuple


isFriday()​

isFriday(input): boolean

Defined in: packages/core-utils/src/dates.ts:640

Parameters​

ParameterType
inputunknown

Returns​

boolean


isFuture()​

isFuture(input): boolean

Defined in: packages/core-utils/src/dates.ts:670

Parameters​

ParameterType
inputunknown

Returns​

boolean


isISO8601()​

isISO8601(input): input is string

Defined in: packages/core-utils/src/dates.ts:271

Checks to see if an input is a ISO 8601 date

Parameters​

ParameterType
inputunknown

Returns​

input is string


isLeapYear()​

isLeapYear(input): boolean

Defined in: packages/core-utils/src/dates.ts:684

Parameters​

ParameterType
inputunknown

Returns​

boolean


isMonday()​

isMonday(input): boolean

Defined in: packages/core-utils/src/dates.ts:612

Parameters​

ParameterType
inputunknown

Returns​

boolean


isPast()​

isPast(input): boolean

Defined in: packages/core-utils/src/dates.ts:677

Parameters​

ParameterType
inputunknown

Returns​

boolean


isSaturday()​

isSaturday(input): boolean

Defined in: packages/core-utils/src/dates.ts:647

Parameters​

ParameterType
inputunknown

Returns​

boolean


isSunday()​

isSunday(input): boolean

Defined in: packages/core-utils/src/dates.ts:605

Parameters​

ParameterType
inputunknown

Returns​

boolean


isThursday()​

isThursday(input): boolean

Defined in: packages/core-utils/src/dates.ts:633

Parameters​

ParameterType
inputunknown

Returns​

boolean


isToday()​

isToday(input): boolean

Defined in: packages/core-utils/src/dates.ts:698

Parameters​

ParameterType
inputunknown

Returns​

boolean


isTomorrow()​

isTomorrow(input): boolean

Defined in: packages/core-utils/src/dates.ts:691

Parameters​

ParameterType
inputunknown

Returns​

boolean


isTuesday()​

isTuesday(input): boolean

Defined in: packages/core-utils/src/dates.ts:619

Parameters​

ParameterType
inputunknown

Returns​

boolean


isUnixTime()​

isUnixTime(input, allowBefore1970?): input is number

Defined in: packages/core-utils/src/dates.ts:252

Checks to see if an input is a unix time

Parameters​

ParameterTypeDefault value
inputunknownundefined
allowBefore1970booleantrue

Returns​

input is number


isUnixTimeFP()​

isUnixTimeFP(allowBefore1970?): (input) => input is number

Defined in: packages/core-utils/src/dates.ts:262

A functional version of isUnixTime

Parameters​

ParameterType
allowBefore1970?boolean

Returns​

(input) => input is number


isValidDate()​

isValidDate(val): boolean

Defined in: packages/core-utils/src/dates.ts:71

A simplified implementation of moment(new Date(val)).isValid()

Parameters​

ParameterType
valunknown

Returns​

boolean


isValidDateInstance()​

isValidDateInstance(val): val is Date

Defined in: packages/core-utils/src/dates.ts:230

Parameters​

ParameterType
valunknown

Returns​

val is Date


isWednesday()​

isWednesday(input): boolean

Defined in: packages/core-utils/src/dates.ts:626

Parameters​

ParameterType
inputunknown

Returns​

boolean


isWeekday()​

isWeekday(input): boolean

Defined in: packages/core-utils/src/dates.ts:654

Parameters​

ParameterType
inputunknown

Returns​

boolean


isWeekend()​

isWeekend(input): boolean

Defined in: packages/core-utils/src/dates.ts:662

Parameters​

ParameterType
inputunknown

Returns​

boolean


isYesterday()​

isYesterday(input): boolean

Defined in: packages/core-utils/src/dates.ts:705

Parameters​

ParameterType
inputunknown

Returns​

boolean


makeISODate()​

makeISODate(value?): string

Defined in: packages/core-utils/src/dates.ts:58

A helper function for making an ISODate string

Parameters​

ParameterType
value?string | number | Date | DateTuple | null

Returns​

string


parseCustomDateFormat()​

parseCustomDateFormat(value, format, referenceDate): number

Defined in: packages/core-utils/src/dates.ts:459

Parameters​

ParameterType
valueunknown
formatstring
referenceDateDate

Returns​

number


parseDateValue()​

parseDateValue(value, format, referenceDate): number

Defined in: packages/core-utils/src/dates.ts:484

Parse a date value (that has already been validated) and return the epoch millis time.

Parameters​

ParameterType
valueunknown
formatstring | undefined
referenceDateDate

Returns​

number


setDate()​

setDate(date): (input) => number

Defined in: packages/core-utils/src/dates.ts:877

Parameters​

ParameterType
datenumber

Returns​

(input) => number


setHours()​

setHours(hours): (input) => number

Defined in: packages/core-utils/src/dates.ts:866

Parameters​

ParameterType
hoursnumber

Returns​

(input) => number


setMilliseconds()​

setMilliseconds(ms): (input) => number

Defined in: packages/core-utils/src/dates.ts:833

Parameters​

ParameterType
msnumber

Returns​

(input) => number


setMinutes()​

setMinutes(minutes): (input) => number

Defined in: packages/core-utils/src/dates.ts:855

Parameters​

ParameterType
minutesnumber

Returns​

(input) => number


setMonth()​

setMonth(month): (input) => number

Defined in: packages/core-utils/src/dates.ts:888

Parameters​

ParameterType
monthnumber

Returns​

(input) => number


setSeconds()​

setSeconds(seconds): (input) => number

Defined in: packages/core-utils/src/dates.ts:844

Parameters​

ParameterType
secondsnumber

Returns​

(input) => number


setTimezone()​

setTimezone(input, timezone): DateTuple

Defined in: packages/core-utils/src/dates.ts:324

Set the timezone offset of a date, returns a date tuple

Parameters​

ParameterType
inputunknown
timezonestring | number

Returns​

DateTuple


setTimezoneFP()​

setTimezoneFP(timezone): (input) => DateTuple

Defined in: packages/core-utils/src/dates.ts:332

A curried version of setTimezone

Parameters​

ParameterType
timezonestring | number

Returns​

(input) => DateTuple


setYear()​

setYear(year): (input) => number

Defined in: packages/core-utils/src/dates.ts:899

Parameters​

ParameterType
yearnumber

Returns​

(input) => number


subtractFromDate()​

subtractFromDate(input, args): number

Defined in: packages/core-utils/src/dates.ts:741

Parameters​

ParameterType
inputunknown
argsAdjustDateArgs

Returns​

number


subtractFromDateFP()​

subtractFromDateFP(args): (input) => number

Defined in: packages/core-utils/src/dates.ts:751

Parameters​

ParameterType
argsAdjustDateArgs

Returns​

(input) => number


timezoneToOffset()​

timezoneToOffset(timezone): number

Defined in: packages/core-utils/src/dates.ts:797

Given a timezone, it will return the minutes of its offset from UTC time

Parameters​

ParameterType
timezoneunknown

Returns​

number


toEpochMSOrThrow()​

toEpochMSOrThrow(input): number | DateTuple

Defined in: packages/core-utils/src/dates.ts:965

Will convert a date to its epoch millisecond format or throw if invalid

Parameters​

ParameterType
inputunknown

Returns​

number | DateTuple


toHumanTime()​

toHumanTime(ms): string

Defined in: packages/core-utils/src/dates.ts:439

converts smaller than a week milliseconds to human readable time

Parameters​

ParameterType
msnumber

Returns​

string


toISO8601()​

toISO8601(value): string

Defined in: packages/core-utils/src/dates.ts:281

Convert a value to an ISO 8601 date string. This should be used over makeISODate

Parameters​

ParameterType
valueunknown

Returns​

string


toTimeZone()​

toTimeZone(val, timezone): DateTuple | null

Defined in: packages/core-utils/src/dates.ts:169

Parameters​

ParameterType
valunknown
timezonestring

Returns​

DateTuple | null


trackTimeout()​

trackTimeout(timeoutMs): () => number | false

Defined in: packages/core-utils/src/dates.ts:426

track a timeout to see if it expires

Parameters​

ParameterType
timeoutMsnumber

Returns​

a function that will returns false if the time elapsed

() => number | false


trimISODateSegment()​

trimISODateSegment(segment): (input) => number

Defined in: packages/core-utils/src/dates.ts:366

Returns a function to trim the ISO 8601 date segment useful for creating yearly, monthly, daily or hourly dates

Parameters​

ParameterType
segmentISO8601DateSegment

Returns​

(input) => number