diff --git a/web/src/components/mod.rs b/web/src/components/mod.rs index 0e30fa5..a69eb0e 100644 --- a/web/src/components/mod.rs +++ b/web/src/components/mod.rs @@ -16,7 +16,6 @@ pub mod recipe; pub mod recipe_list; pub mod recipe_selection; pub mod recipe_selector; -pub mod root; pub mod shopping_list; pub mod tabs; @@ -25,6 +24,5 @@ pub use recipe::*; pub use recipe_list::*; pub use recipe_selection::*; pub use recipe_selector::*; -pub use root::*; pub use shopping_list::*; pub use tabs::*; diff --git a/web/src/components/root.rs b/web/src/components/root.rs deleted file mode 100644 index 59cd26c..0000000 --- a/web/src/components/root.rs +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2022 Jeremy Wall -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -use crate::components::*; -use crate::service::AppService; - -use recipes; -use sycamore::{context::use_context, prelude::*}; - -#[component(Start)] -pub fn start() -> View { - view! { - div { "hello chefs!" } - RecipeList() - } -} - -#[component(RecipeView)] -pub fn recipe_view(idx: usize) -> View { - let idx = Signal::new(idx); - view! { - div { "hello chefs!"} - RecipeList() - Recipe(idx.handle()) - } -} - -/// Component to list available recipes. -#[component(RecipeList)] -pub fn recipe_list() -> View { - let app_service = use_context::(); - - let titles = create_memo(cloned!(app_service => move || { - app_service.get_recipes().get().iter().map(|(i, r)| (*i, r.clone())).collect::)>>() - })); - view! { - ul(class="recipe_list") { - Indexed(IndexedProps{ - iterable: titles, - template: |(i, recipe)| { - view! { li { a(href=format!("/ui/recipe/{}", i)) { (recipe.get().title) } } } - }, - }) - } - } -}