mirror of
https://github.com/jhillyerd/inbucket.git
synced 2025-12-18 10:07:02 +00:00
ui: Add friendly date to Mailbox message view
- Refactor some date stuff
This commit is contained in:
21
ui/src/Data/Date.elm
Normal file
21
ui/src/Data/Date.elm
Normal file
@@ -0,0 +1,21 @@
|
||||
module Data.Date exposing (..)
|
||||
|
||||
import Date exposing (Date)
|
||||
import Json.Decode as Decode exposing (..)
|
||||
|
||||
|
||||
{-| Decode an ISO 8601 date
|
||||
-}
|
||||
date : Decoder Date
|
||||
date =
|
||||
let
|
||||
convert : String -> Decoder Date
|
||||
convert raw =
|
||||
case Date.fromString raw of
|
||||
Ok date ->
|
||||
succeed date
|
||||
|
||||
Err error ->
|
||||
fail error
|
||||
in
|
||||
string |> andThen convert
|
||||
@@ -1,5 +1,7 @@
|
||||
module Data.Message exposing (..)
|
||||
|
||||
import Data.Date exposing (date)
|
||||
import Date exposing (Date)
|
||||
import Json.Decode as Decode exposing (..)
|
||||
import Json.Decode.Pipeline exposing (..)
|
||||
|
||||
@@ -10,7 +12,7 @@ type alias Message =
|
||||
, from : String
|
||||
, to : List String
|
||||
, subject : String
|
||||
, date : String
|
||||
, date : Date
|
||||
, size : Int
|
||||
, seen : Bool
|
||||
, text : String
|
||||
@@ -34,7 +36,7 @@ decoder =
|
||||
|> optional "from" string ""
|
||||
|> required "to" (list string)
|
||||
|> optional "subject" string ""
|
||||
|> required "date" string
|
||||
|> required "date" date
|
||||
|> required "size" int
|
||||
|> required "seen" bool
|
||||
|> required "text" string
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
module Data.MessageHeader exposing (..)
|
||||
|
||||
import Data.Date exposing (date)
|
||||
import Date exposing (Date)
|
||||
import Json.Decode as Decode exposing (..)
|
||||
import Json.Decode.Pipeline exposing (..)
|
||||
@@ -28,18 +29,3 @@ decoder =
|
||||
|> required "date" date
|
||||
|> required "size" int
|
||||
|> required "seen" bool
|
||||
|
||||
|
||||
date : Decoder Date
|
||||
date =
|
||||
let
|
||||
convert : String -> Decoder Date
|
||||
convert raw =
|
||||
case Date.fromString raw of
|
||||
Ok date ->
|
||||
succeed date
|
||||
|
||||
Err error ->
|
||||
fail error
|
||||
in
|
||||
string |> andThen convert
|
||||
|
||||
Reference in New Issue
Block a user