Date Utils
GitHubDate range presets, validation, and boundary helpers for date-based filters.
Installation
bash
pnpm dlx shadcn@latest add @cs/date-utilsUsage
tsx
import { dateRangeOptionToDates } from "@/lib/cs/date-utils";tsx
const range = dateRangeOptionToDates("last30Days");API Reference
DATE_RADIO_OPTIONS
Named date-range presets and helpers for date filters.
DateRange
tsx
type DateRange = {
from: Date
to: Date
option: DateRadioOption
}isDateRange
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| obj * | any | undefined | - | - |
Returns: obj is DateRange
tryGetDateRange
tsx
tryGetDateRange(value: any | undefined | null): DateRange
tryGetDateRange(value: any | undefined | null, opt: "nullable"): DateRange | null
tryGetDateRange(value: any | undefined | null, opt?: "nullable"): unknownParameters
| Name | Type | Default | Description |
|---|---|---|---|
| value * | any | undefined | null | - | - |
| opt | "nullable" | - | - |
dateRangeOptionToDates
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| option * | DateRadioOption | - | - |
| from | Date | - | - |
| to | Date | - | - |
Returns: DateRange
isDate
Checking if the string really represents a date.
addDays
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| date * | Date | - | - |
| days * | number | - | - |
Returns: unknown
weekStart
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| date * | Date | - | - |
Returns: unknown
monthStart
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| date * | Date | - | - |
| previous * | boolean | - | - |
Returns: unknown
monthEnd
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| date * | Date | - | - |
| previous * | boolean | - | - |
Returns: unknown