import * as model from './model.js'; import recipeView from './views/recipeView.js'; import searchView from './views/searchView.js'; import resultsView from './views/resultsView.js'; import 'core-js/stable'; import 'regenerator-runtime/runtime'; if (module.hot) { module.hot.accept(); } const controlRecipes = async function () { try { const id = window.location.hash.slice(1); if (!id) return; recipeView.renderSpinner(); // 1)Loading recipe await model.loadRecipe(id); // 2) Rendering recipe recipeView.render(model.state.recipe); } catch (error) { recipeView.renderError(error); } }; const controlSearchResults = async () => { try { resultsView.renderSpinner(); // 1) Get search query const query = searchView.getQuery(); if (!query) return; // 2) Load search results await model.loadSearchResults(query); // 3) Render results resultsView.render(model.state.search.results); } catch (error) { console.error(error); } }; const init = () => { recipeView.addHandleRender(controlRecipes); searchView.addHandlerSearch(controlSearchResults); }; init();