aboutsummaryrefslogtreecommitdiff
path: root/src/Model/Model.elm
diff options
context:
space:
mode:
Diffstat (limited to 'src/Model/Model.elm')
-rw-r--r--src/Model/Model.elm32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/Model/Model.elm b/src/Model/Model.elm
new file mode 100644
index 0000000..fa97d7b
--- /dev/null
+++ b/src/Model/Model.elm
@@ -0,0 +1,32 @@
+module Model.Model
+ ( Model
+ , initialModel
+ , substractTimersTime
+ ) where
+
+import Dict (Dict)
+import Dict
+import Time (Time)
+
+import Model.Timer (..)
+import Model.Id (..)
+import Model.IdGenerator (..)
+
+type alias Model =
+ { currentTime : Time
+ , newTimerName : String
+ , timers : Dict Id Timer
+ , timerIdGenerator : IdGenerator
+ }
+
+initialModel : Time -> Model
+initialModel initialTime =
+ { currentTime = initialTime
+ , newTimerName = ""
+ , timers = Dict.empty
+ , timerIdGenerator = initialIdGenerator
+ }
+
+substractTimersTime : Time -> Dict Id Timer -> Dict Id Timer
+substractTimersTime t timers =
+ Dict.map (\id timer -> substractTimerTime t timer) timers