import Vue from "vue"; import Vuex from "vuex"; Vue.use(Vuex); export default new Vuex.Store({ state: { inventory: [ { id: 1, name: "Beach Box", quantity: 5, cents: 1100, imgPath: "/beach_box.jpg", description: "This is a beach box." }, { id: 2, name: "Wind Chime", quantity: 2, cents: 4500, imgPath: "/wind-chime.jpg", description: "Makes noise when the wind blows." }, { id: 3, name: "Beach Box", quantity: 5, cents: 1100, imgPath: "/beach_box.jpg", description: "This is a beach box." }, { id: 4, name: "Wind Chime", quantity: 2, cents: 4500, imgPath: "/wind-chime.jpg", description: "Makes noise when the wind blows." }, { id: 5, name: "Beach Box", quantity: 5, cents: 1100, imgPath: "/beach_box.jpg", description: "This is a beach box." }, { id: 6, name: "Wind Chime", quantity: 2, cents: 4500, imgPath: "/wind-chime.jpg", description: "Makes noise when the wind blows." }, { id: 7, name: "Beach Box", quantity: 5, cents: 1100, imgPath: "/beach_box.jpg", description: "This is a beach box." }, { id: 8, name: "Wind Chime", quantity: 2, cents: 4500, imgPath: "/wind-chime.jpg", description: "Makes noise when the wind blows." }, { id: 9, name: "Wind Chime", quantity: 2, cents: 4500, imgPath: "/wind-chime.jpg", description: "Makes noise when the wind blows." } ], term: "" }, getters: { inventory(state) { const term = state.term.toLowerCase(); return state.inventory.filter(item => { // TODO: move into class for items return ( item.name.toLowerCase().indexOf(term) != -1 || item.description.toLowerCase().indexOf(term) != -1 ); }); } }, mutations: { filterTerm(state, term) { state.term = term; } }, actions: {}, modules: {} });