canducci-datewise
v1.0.1
Published
Date and time validation and manipulation routines.
Maintainers
Readme
Datewise - DateTime Validation && Formatted
Overview
Datewise is a TypeScript library for date and time validation, formatting, and comparison using Luxon.
Installation
Assuming npm: npm install datewise
Usage
Import the main class:
import { Datewise } from 'datewise';API Documentation
Datewise
The main class that provides access to validation and formatting utilities.
Methods
validation(): Validation- Returns a Validation instance.formatted(): Formatted- Returns a Formatted instance.static createValidation(options?: IOptions): Validation- Creates a new Validation instance.static createFormatted(options?: IOptions): Formatted- Creates a new Formatted instance.
Example
const datewise = new Datewise();
const validator = datewise.validation();
const formatter = datewise.formatted();Validation
Handles date, time, and datetime validation and comparisons.
Methods
isValidDate(value: string, format = "yyyy-MM-dd"): boolean- Checks if a string is a valid date.isValidTime(value: string, format = "HH:mm"): boolean- Checks if a string is a valid time.isValidDateTime(value: string, format = "yyyy-MM-dd HH:mm:ss"): boolean- Checks if a string is a valid datetime.isBefore(date1: string, date2: string, format = "yyyy-MM-dd"): boolean- Checks if date1 is before date2.isAfter(date1: string, date2: string, format = "yyyy-MM-dd"): boolean- Checks if date1 is after date2.
Examples
const validation = new Validation();
console.log(validation.isValidDate("2023-12-25")); // true
console.log(validation.isValidTime("14:30")); // true
console.log(validation.isBefore("2023-01-01", "2023-12-31")); // trueFormatted
Formats dates, times, and datetimes.
Methods
formatDate(value: string, format = "yyyy-MM-dd"): string | null- Formats a date string.formatTime(value: string, format = "HH:mm:ss"): string | null- Formats a time string.formatDateTime(value: string, format = "yyyy-MM-dd HH:mm:ss"): string | null- Formats a datetime string.
Examples
const formatted = new Formatted();
console.log(formatted.formatDate("2023-12-25")); // "12/25/2023" (depending on locale)
console.log(formatted.formatTime("14:30:00")); // "2:30 PM"DateFormatBuilder
A builder for creating custom date format strings.
Methods
day(): DateFormatBuilder- Adds day to the format.month(): DateFormatBuilder- Adds month.year(): DateFormatBuilder- Adds year.hours(): DateFormatBuilder- Adds hours.minutes(): DateFormatBuilder- Adds minutes.seconds(): DateFormatBuilder- Adds seconds.dash(): DateFormatBuilder- Adds dash separator.slash(): DateFormatBuilder- Adds slash separator.space(): DateFormatBuilder- Adds space separator.colon(): DateFormatBuilder- Adds colon separator.build(): string- Builds and returns the format string.
Example
const format = new DateFormatBuilder()
.day()
.slash()
.month()
.slash()
.year()
.space()
.hours()
.colon()
.minutes()
.build(); // "dd/MM/yyyy HH:mm"