module Versions exposing (..) import Decisions.Model import ArrayBased.Model import Decisions.InitialData import Decisions.GetTableData import ArrayBased.InitialData import ArrayBased.GetTableData import MainMessages type Versions = Decisions Decisions.Model.Model | ArrayBased ArrayBased.Model.Model | Unknown flagsToVersionAndCmd : { version : String, initialGetUrl : String } -> ( Versions, Cmd MainMessages.Msg ) flagsToVersionAndCmd { version, initialGetUrl } = case version of "decisions" -> ( Decisions Decisions.InitialData.initialModel , Cmd.map MainMessages.Decisions (Decisions.GetTableData.fetchDataFromServer initialGetUrl) ) "arrayBased" -> ( ArrayBased ArrayBased.InitialData.initialModel , Cmd.map MainMessages.ArrayBased (ArrayBased.GetTableData.fetchDataFromServer initialGetUrl) ) _ -> ( Unknown, Cmd.none )