|
|
@ -37,4 +37,19 @@ viewPost post = div [] [
|
|
37
|
37
|
span [] [text "Written ", viewDate post.created]
|
|
38
|
38
|
]
|
|
39
|
39
|
|
|
40
|
|
main = div [] (List.map viewPost posts)
|
|
|
40
|
flipOrder : Order -> Order
|
|
|
41
|
flipOrder o = case o of
|
|
|
42
|
LT -> GT
|
|
|
43
|
EQ -> EQ
|
|
|
44
|
GT -> LT
|
|
|
45
|
|
|
|
46
|
flipCompare : (a -> a -> Order) -> a -> a -> Order
|
|
|
47
|
flipCompare compare' a b = flipOrder <| compare' a b
|
|
|
48
|
|
|
|
49
|
compareBy : (a -> comparable) -> a -> a -> Order
|
|
|
50
|
compareBy f a b = compare (f a) (f b)
|
|
|
51
|
|
|
|
52
|
sortByDate = List.sortBy (.created >> Date.toTime)
|
|
|
53
|
sortByDateReverse = List.sortWith (flipCompare <| compareBy (.created >> Date.toTime))
|
|
|
54
|
|
|
|
55
|
main = div [] (List.map viewPost (sortByDateReverse posts))
|