@leancodepl/api-date-datefns
Version:
Date-fns integration for API date type conversion
131 lines (75 loc) • 2.78 kB
Markdown
Date conversion utilities using date-fns for API date types.
```bash
npm install @leancodepl/api-date-datefns
yarn add @leancodepl/api-date-datefns
```
Converts ApiDateOnly to JavaScript Date using date-fns.
**Parameters:**
- `date: ApiDateOnly` - The API date string to convert
**Returns:** JavaScript Date object
Converts JavaScript Date to ApiDateOnly using date-fns.
**Parameters:**
- `date: Date` - The JavaScript Date to convert
**Returns:** ApiDateOnly string
Converts ApiTimeOnly to JavaScript Date using date-fns.
**Parameters:**
- `time: ApiTimeOnly` - The API time string to convert
**Returns:** JavaScript Date object
Converts JavaScript Date to ApiTimeOnly using date-fns.
**Parameters:**
- `time: Date` - The JavaScript Date to convert
**Returns:** ApiTimeOnly string
Converts ApiDateTimeOffset to JavaScript Date using date-fns.
**Parameters:**
- `dateTimeOffset: ApiDateTimeOffset` - The API datetime with offset string to convert
**Returns:** JavaScript Date object
Converts JavaScript Date to ApiDateTimeOffset using date-fns.
**Parameters:**
- `dateTimeOffset: Date` - The JavaScript Date to convert
**Returns:** ApiDateTimeOffset string
Converts ApiTimeSpan to milliseconds using date-fns.
**Parameters:**
- `timeSpan: ApiTimeSpan` - The API timespan string to convert
**Returns:** Duration in milliseconds
Converts milliseconds to ApiTimeSpan using date-fns.
**Parameters:**
- `differenceInMilliseconds: number` - The duration in milliseconds to convert
**Returns:** ApiTimeSpan string
```typescript
import { fromApiDate, toApiDate } from "@leancodepl/api-date-datefns"
const apiDate = "2023-12-25"
const jsDate = fromApiDate(apiDate)
console.log(jsDate) // Date object
const convertedBack = toApiDate(jsDate)
console.log(convertedBack) // '2023-12-25'
```
```typescript
import { fromApiTime, toApiTime } from "@leancodepl/api-date-datefns"
const apiTime = "14:30:00"
const jsDate = fromApiTime(apiTime)
const convertedBack = toApiTime(jsDate)
console.log(convertedBack) // '14:30:00'
```
```typescript
import { fromApiDateTimeOffset, toApiDateTimeOffset } from "@leancodepl/api-date-datefns"
const apiDateTime = "2023-12-25T14:30:00+01:00"
const jsDate = fromApiDateTimeOffset(apiDateTime)
const convertedBack = toApiDateTimeOffset(jsDate)
console.log(convertedBack) // '2023-12-25T14:30:00+01:00'
```