client-side-date-utils-o11
Reactive icon

Client Side Date Utils O11

Stable version 1.0.0 (Compatible with OutSystems 11)
Uploaded
 on 24 Jun (17 hours ago)
 by 
0.0
 (0 ratings)
client-side-date-utils-o11

Client Side Date Utils O11

Documentation
1.0.0

AddBusinessDays: Adds a number of business days to a date while skipping weekends.

    - Example: input 2026-06-24 and 3 -> output 2026-06-29.

Age: Returns age in whole years from a date of birth.

    - Example: input 2000-06-24 -> output 26 when the current date is after the birthday in 2026.

AgeInMonths: Returns age in whole months from a date of birth.

    - Example: input 2000-06-24 -> output 312 when the current date is June 2026.

CeilingToHour: Rounds a date time up to the next whole hour when needed.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 15:00:00.

CombineDateAndTime: Combines a date and a time into one date time value.

    - Example: input 2026-06-24 and 14:30:00 -> output 2026-06-24 14:30:00.

DayName: Returns the full weekday name for a date.

    - Example: input 2026-06-24 -> output 'Wednesday'.

DaysOverdue: Returns the number of overdue days when a due date is in the past.

    - Example: input 2026-06-20 -> output 4 when today is 2026-06-24.

DaysUntilExpiry: Returns the number of days from today until an expiry date.

    - Example: input 2026-06-30 -> output 6 when today is 2026-06-24.

DurationFriendly: Formats total minutes as a friendly duration label.

    - Example: input 150 -> output '2 hrs 30 mins'.

DurationInHHMMSS: Formats total seconds as HH:MM:SS text.

    - Example: input 3661 -> output '01:01:01'.

DurationInHours: Returns the difference between two date times in whole hours.

    - Example: input 2026-06-24 09:00:00 and 2026-06-24 11:00:00 -> output 2.

DurationInMinutes: Returns the difference between two date times in whole minutes.

    - Example: input 2026-06-24 09:00:00 and 2026-06-24 11:00:00 -> output 120.

DurationToHHMM: Formats total minutes as HH:MM text.

    - Example: input 150 -> output '02:30'.

EndOfDay: Returns the last second of a date at 23:59:59.

    - Example: input 2026-06-24 -> output 2026-06-24 23:59:59.

EndOfFinancialYear: Returns the last day of the financial year that ends on 30 June.

    - Example: input 2026-06-24 -> output 2026-06-30.

EndOfHour: Returns the last second of the hour for a date time.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 14:59:59.

EndOfMinute: Returns the last second of the minute for a date time.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 14:37:59.

EndOfMonth: Returns the last day of the month for a given date.

    - Example: input 2026-06-24 -> output 2026-06-30.

EndOfNextMonth: Returns the last day of the next month for a given date.

    - Example: input 2026-06-24 -> output 2026-07-31.

EndOfPreviousMonth: Returns the last day of the previous month for a given date.

    - Example: input 2026-06-24 -> output 2026-05-31.

EndOfQuarter: Returns the last day of the quarter for a given date.

    - Example: input 2026-06-24 -> output 2026-06-30.

EndOfWeek: Returns the Sunday of the week for a given date.

    - Example: input 2026-06-24 -> output 2026-06-28.

EndOfYear: Returns the last day of the year for a given date.

    - Example: input 2026-06-24 -> output 2026-12-31.

ExactAge: Returns age as a readable text in years, months, and days.

    - Example: input 2000-06-24 -> output '26 years, 0 months, 3 days' depending on the current date.

FinancialQuarter: Returns the financial quarter number where July is quarter 1.

    - Example: input 2026-08-24 -> output 1.

FinancialWeek: Returns the week number within the financial year that starts on 1 July.

    - Example: input 2026-06-24 -> output 52.

FinancialYear: Returns the financial year label using a July start.

    - Example: input 2026-08-24 -> output 'FY2027'.

FloorToHour: Rounds a date time down to the start of the hour.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 14:00:00.

FormatDateAU: Formats a date using Australian day-month-year text.

    - Example: input 2026-06-24 -> output '24 Jun 2026'.

FormatDateISO: Formats a date using ISO year-month-day text.

    - Example: input 2026-06-24 -> output '2026-06-24'.

FormatMonthYear: Formats a date as month and year text.

    - Example: input 2026-06-24 -> output 'June 2026'.

FriendlyDate: Formats a date as a friendly relative label.

    - Example: input today -> output 'Today', input yesterday -> output 'Yesterday'.

FriendlyDateTime: Formats a date time as a friendly date label plus time.

    - Example: input 2026-06-24 14:30:00 -> output 'Today at 14:30:00' depending on the current date.

HasTimePassedToday: Returns true when a time is earlier than the current time today.

    - Example: input 09:00:00 -> output True when current time is 14:00:00.

IsAfterBusinessHours: Returns true when a weekday date time is after 17:00.

    - Example: input 2026-06-24 18:00:00 -> output True.

IsAfterTime: Returns true when the first time is later than the second time.

    - Example: input 17:00:00 and 09:00:00 -> output True.

IsBeforeTime: Returns true when the first time is earlier than the second time.

    - Example: input 09:00:00 and 17:00:00 -> output True.

IsBusinessHour: Returns true when a date time falls on a weekday between 09:00 and 17:00.

    - Example: input 2026-06-24 10:00:00 -> output True.

IsDateInFuture: Returns true when a date is after today.

    - Example: input 2026-06-25 -> output True when today is 2026-06-24.

IsDateInPast: Returns true when a date is before today.

    - Example: input 2026-06-23 -> output True when today is 2026-06-24.

IsDateInRange: Returns true when a date falls within a start and end date range.

    - Example: input 2026-06-24, 2026-06-01, 2026-06-30 -> output True.

IsExpired: Returns true when a date is before today.

    - Example: input 2026-06-23 -> output True when today is 2026-06-24.

IsFutureTimeToday: Returns true when a time is later than the current time today.

    - Example: input 18:00:00 -> output True when current time is 14:00:00.

IsLeapYear: Returns true when a year is a leap year.

    - Example: input 2024 -> output True.

IsMidnight: Returns true when a time is midnight.

    - Example: input 00:00:00 -> output True.

IsNoon: Returns true when a time is noon.

    - Example: input 12:00:00 -> output True.

IsSameDay: Returns true when two date times fall on the same calendar day.

    - Example: input 2026-06-24 10:00:00 and 2026-06-24 18:00:00 -> output True.

IsSameHour: Returns true when two date times fall in the same hour.

    - Example: input 2026-06-24 14:10:00 and 2026-06-24 14:50:00 -> output True.

IsSameMinute: Returns true when two date times fall in the same minute.

    - Example: input 2026-06-24 14:37:10 and 2026-06-24 14:37:50 -> output True.

IsSameMonth: Returns true when two dates are in the same year and month.

    - Example: input 2026-06-01 and 2026-06-24 -> output True.

IsWeekday: Returns true when a date falls on Monday to Friday.

    - Example: input 2026-06-24 -> output True.

IsWeekend: Returns true when a date falls on Saturday or Sunday.

    - Example: input 2026-06-27 -> output True.

MonthName: Returns the full month name for a date.

    - Example: input 2026-06-24 -> output 'June'.

NextBusinessHour: Returns the next business-hour date time using weekday and 09:00-17:00 rules.

    - Example: input 2026-06-26 18:30:00 -> output 2026-06-29 09:00:00.

NextWeekday: Returns the next weekday after a given date.

    - Example: input 2026-06-26 -> output 2026-06-29.

OrdinalDay: Returns the day of month with ordinal suffix text.

    - Example: input 2026-06-24 -> output '24th'.

OverlapsTimeRange: Returns true when two time ranges overlap.

    - Example: input 09:00-11:00 and 10:00-12:00 -> output True.

PartOfDay: Returns the part of day label for a time.

    - Example: input 14:30:00 -> output 'Afternoon'.

PreviousBusinessHour: Returns the previous business-hour date time using weekday and 09:00-17:00 rules.

    - Example: input 2026-06-29 08:30:00 -> output 2026-06-26 17:00:00.

PreviousWeekday: Returns the previous weekday before a given date.

    - Example: input 2026-06-29 -> output 2026-06-26.

QuarterNumber: Returns the calendar quarter number from 1 to 4.

    - Example: input 2026-06-24 -> output 2.

RoundToNearest10Minutes: Rounds a date time to the nearest 10-minute interval.

    - Example: input 2026-06-24 14:34:00 -> output 2026-06-24 14:30:00.

RoundToNearest15Minutes: Rounds a date time to the nearest 15-minute interval.

    - Example: input 2026-06-24 14:38:00 -> output 2026-06-24 14:45:00.

RoundToNearest30Minutes: Rounds a date time to the nearest 30-minute interval.

    - Example: input 2026-06-24 14:20:00 -> output 2026-06-24 14:30:00.

RoundToNearest5Minutes: Rounds a date time to the nearest 5-minute interval.

    - Example: input 2026-06-24 14:32:00 -> output 2026-06-24 14:30:00.

ShiftNameFromTime: Returns a shift label for a time.

    - Example: input 18:00:00 -> output 'Afternoon Shift'.

ShortMonthName: Returns the short month name for a date.

    - Example: input 2026-06-24 -> output 'Jun'.

StartOfDay: Returns the first moment of a date at 00:00:00.

    - Example: input 2026-06-24 -> output 2026-06-24 00:00:00.

StartOfFinancialYear: Returns the first day of the financial year that starts on 1 July.

    - Example: input 2026-06-24 -> output 2025-07-01.

StartOfHour: Returns the first second of the hour for a date time.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 14:00:00.

StartOfMinute: Returns the first second of the minute for a date time.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24 14:37:00.

StartOfMonth: Returns the first day of the month for a given date.

    - Example: input 2026-06-24 -> output 2026-06-01.

StartOfNextMonth: Returns the first day of the next month for a given date.

    - Example: input 2026-06-24 -> output 2026-07-01.

StartOfPreviousMonth: Returns the first day of the previous month for a given date.

    - Example: input 2026-06-24 -> output 2026-05-01.

StartOfQuarter: Returns the first day of the quarter for a given date.

    - Example: input 2026-06-24 -> output 2026-04-01.

StartOfWeek: Returns the Monday of the week for a given date.

    - Example: input 2026-06-24 -> output 2026-06-22.

StartOfYear: Returns the first day of the year for a given date.

    - Example: input 2026-06-24 -> output 2026-01-01.

TimeRangeLabel: Builds a time range label from start and end times.

    - Example: input 09:00:00 and 17:00:00 -> output '09:00:00 - 17:00:00'.

TruncateToDate: Removes the time part and keeps only the date.

    - Example: input 2026-06-24 14:37:45 -> output 2026-06-24.

TruncateToMonth: Removes the day part and keeps the first day of the month.

    - Example: input 2026-06-24 -> output 2026-06-01.