public App () { var initialState = new ApplicationState { Todos = ImmutableArray<Todo>.Empty, Filter = TodosFilter.All }; // //MainPage = new MainPage (); // NavigationPage navPage = new NavigationPage ( // new DevFrame () { // TimeMachineStore = (IStore<TimeMachineState>)Store, // //Content = new TimeMachine(), // }); // var masterDetail = new MasterDetailPage (); bool enableTimeMachine = true; if (enableTimeMachine) { Store = new TimeMachineStore<ApplicationState> (initialState, ApplicationReducer.Execute); masterDetail.Master = new NavigationPage ( new DevFrame ((IStore<TimeMachineState>)Store) { Title = "Time Machine" } ) { Title = "Menu" }; } else { Store = new Store<ApplicationState>(initialState, ApplicationReducer.Execute); } masterDetail.Detail = new NavigationPage ( new MainPage () { Title = "Todo List" } ); MainPage = masterDetail; }
public static ApplicationState Execute(ApplicationState previousState, IAction action) { return new ApplicationState { Filter = action is FilterTodosAction ? ((FilterTodosAction)action).Filter : previousState.Filter, Todos = TodosReducer(previousState.Todos, action) }; }