module LoggedIn.Home.Update exposing ( update ) import LoggedData exposing (LoggedData) import LoggedIn.Home.Msg as HomeMsg import LoggedIn.Home.Model as HomeModel import LoggedIn.Home.AddPayment.Update as AddPaymentUpdate update : LoggedData -> HomeMsg.Msg -> HomeModel.Model -> (HomeModel.Model, Cmd HomeMsg.Msg) update loggedData action homeModel = case action of HomeMsg.NoOp -> (homeModel, Cmd.none) HomeMsg.UpdateAdd addPaymentMsg -> ( { homeModel | add = AddPaymentUpdate.update addPaymentMsg homeModel.add } , Cmd.none ) HomeMsg.ToggleEdit id -> ( { homeModel | paymentEdition = if homeModel.paymentEdition == Just id then Nothing else Just id } , Cmd.none ) HomeMsg.UpdatePage page -> ( { homeModel | currentPage = page } , Cmd.none ) HomeMsg.ShowMonthlyDetail -> ( { homeModel | monthlyDetail = True } , Cmd.none ) HomeMsg.ToggleMonthlyDetail -> ( { homeModel | monthlyDetail = not homeModel.monthlyDetail } , Cmd.none )