package Ġcom . to g gl . domain . mappings Ċ Ċ import Ġcom . to g gl . domain . App Action Ċ import Ġcom . to g gl . domain . AppState Ċ import Ġcom . to g gl . timer . common . domain . Timer Action Ċ import Ġcom . to g gl . timer . common . domain . Timer State Ċ Ċ fun Ġmap AppState To Timer State ( app State : ĠApp State ): ĠTimer State Ġ= ĊĠĠĠ ĠTimer State ( ĊĠĠĠĠĠĠĠ Ġapp State . time Entries , ĊĠĠĠĠĠĠĠ Ġapp State . projects , ĊĠĠĠĠĠĠĠ Ġapp State . timer Local State ĊĠĠĠ Ġ) Ċ Ċ fun Ġmap App Action To Timer Action ( app Action : ĠApp Action ): ĠTimer Action ? Ġ= ĊĠĠĠ Ġif Ġ( app Action Ġis ĠApp Action . Timer ) Ġapp Action . timer Ġelse Ġnull Ċ Ċ fun Ġmap Timer State To AppState ( app State : ĠApp State , Ġtimer State : ĠTimer State ): ĠApp State Ġ= ĊĠĠĠ Ġapp State . copy ( time Entries Ġ= Ġtimer State . time Entries , Ġtimer Local State Ġ= Ġtimer State . local State ) Ċ Ċ fun Ġmap Timer Action To App Action ( timer Action : ĠTimer Action ): ĠApp Action Ġ= ĊĠĠĠ ĠApp Action . Timer ( timer Action ) Ċ