Utility functions for API date parsing and validation
npm install @leancodepl/api-date-utilsUtilities for parsing and working with API date types.
``bash`
npm install @leancodepl/api-date-utilsor
yarn add @leancodepl/api-date-utils
Parses ApiTimeSpan string into structured time components.
Parameters:
- timespan: ApiTimeSpan - The ApiTimeSpan string to parse
Returns: Object with sign and time component values
`typescript
import { parseApiTimeSpan } from "@leancodepl/api-date-utils"
const result = parseApiTimeSpan("1.23:45:67.890")
console.log(result.values.hours) // 23
console.log(result.values.days) // 1
console.log(result.sign) // undefined (positive)
`
`typescript
import { parseApiTimeSpan } from "@leancodepl/api-date-utils"
const result = parseApiTimeSpan("-2.10:30:45.123")
console.log(result.sign) // '-'
console.log(result.values.days) // 2
console.log(result.values.hours) // 10
console.log(result.values.minutes) // 30
console.log(result.values.milliseconds) // 123
`
`typescript
import { parseApiTimeSpan } from "@leancodepl/api-date-utils"
const calculateTotalMilliseconds = (timespan: ApiTimeSpan) => {
const parsed = parseApiTimeSpan(timespan)
const { days, hours, minutes, seconds, milliseconds } = parsed.values
const total = days 86400000 + hours 3600000 + minutes 60000 + seconds 1000 + milliseconds
return parsed.sign === "-" ? -total : total
}
``