dillonkearns / elm-date-or-date-time / DateOrDateTime


type DateOrDateTime
    = Date Date
    | DateTime Time.Posix

Represents a Date with an optional time.

import Date
import DateOrDateTime
import Time

justADate : DateOrDateTime.DateOrDateTime
justADate =
    DateOrDateTime.Date (Date.fromRataDie 738433)

aDateWithATime : DateOrDateTime.DateOrDateTime
aDateWithATime =
    DateOrDateTime.DateTime (Time.millisToPosix 1664987219000)

justADate |> toIso8601
--> "2022-10-05"

aDateWithATime |> toIso8601
--> "2022-10-05T16:26:59.000Z"

toIso8601 : DateOrDateTime -> String

A helper for converting to ISO-8601 formatted Strings Date or DateTime Strings.