-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
36 lines (28 loc) · 1.43 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import { recipes } from './scripts/data/recipes.js'
import { ViewRecipes } from './scripts/view/recipeView.js'
import { ControllerRecipes } from './scripts/controller/recipeController.js'
import { Recipes } from './scripts/model/recipeModel.js'
// je crée un tableau vide pour pouvoir y stocker les recettes filtrées
let recipesToShow = []
let ingredientArray = []
let applianceArray = []
let ustensilsArray = []
function init() {
// je crée un tableau avec toutes les recettes pour pouvoir les afficher à partir du tableau d'origine
recipesToShow = recipes.slice()
// je crée une instance de mes controleurs pour pouvoir utiliser les méthodes avec les données de mon tableau de recettes
const controller = new ControllerRecipes(new Recipes(recipesToShow))
// je récupère les données des mots-clés à afficher depuis mon controleur
ingredientArray = controller.getBaseIngredients()
applianceArray = controller.getBaseAppliances()
ustensilsArray = controller.getBaseUstensils()
// je crée une instance de ma vue et de mon controleur pour pouvoir afficher les recettes et gérer les mots-clés lors de la première ouverture de la page
const recipesDisplay = new ViewRecipes()
recipesDisplay.displayRecipesList(recipesToShow)
recipesDisplay.displayButtonLists(ingredientArray, applianceArray, ustensilsArray)
controller.handleTagSelected()
controller.handleTagUnSelected()
controller.mainSearch()
}
init()
export { recipesToShow }