This library provides functions for working with typed time. For example,
equal (seconds 60) (minutes 1)
--> True
add (hours 1) (minutes 20) |> toString Minutes
--> "01:20"
add (hours 1) (minutes 20) |> toString Seconds
--> "01:20:00"milliseconds 1000 |> toString Seconds
--> "00:00:01"equal (milliseconds 1000) (seconds 1)
--> True
equal (hours 1) (minutes 60)
--> True
equal (minutes 1) (seconds 60)
--> TrueGreater than or equal to:
gte (seconds 1) (seconds 1)
--> True
gte (seconds 1.001) (seconds 1)
--> TrueLess than or equal to:
lte (seconds 1) (seconds 1)
--> True
lte (seconds 1) (seconds 1.001)
--> Trueequal (sum [seconds 30, minutes 1]) (milliseconds 90000)
--> True
equal (sum [seconds 30, minutes 1]) (minutes 1.5)
--> Trueabs ((ratio (minutes 1) (seconds 60)) - 1.0) < 0.000001
--> Trueabs( (toSeconds (seconds 1)) - 1.0) < 0.00001
--> True
abs( (toSeconds (minutes 1)) - 60.0) < 0.00001
--> TruetoString Seconds (minutes 30)
--> "00:30:00"
toString Seconds (hours 0.5)
--> "00:30:00"
toString Minutes (hours 0.5)
--> "00:30"fromString Milliseconds "123"
--> Just (milliseconds 123)
fromString Seconds "23"
--> Just (seconds 23)
fromString Seconds "2.17"
--> Just (seconds 2.17)
fromString Seconds "4:23"
--> Just (add (minutes 4) (seconds 23))
fromString Seconds "04:03"
--> Just (add (minutes 4) (seconds 3))
fromString Minutes "04:03"
--> Just (add (hours 4) (minutes 3))
fromString Minutes "4.7"
--> Just (minutes 4.7)
The data type for the package