summaryrefslogtreecommitdiff
path: root/iridescence/src/store/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'iridescence/src/store/index.js')
-rw-r--r--iridescence/src/store/index.js80
1 files changed, 18 insertions, 62 deletions
diff --git a/iridescence/src/store/index.js b/iridescence/src/store/index.js
index b5b0445..e2b40b4 100644
--- a/iridescence/src/store/index.js
+++ b/iridescence/src/store/index.js
@@ -1,82 +1,38 @@
import Vue from "vue";
import Vuex from "vuex";
+import Dichroism from "@/api/dichroism.js";
Vue.use(Vuex);
export default new Vuex.Store({
state: {
- inventory: [
- {
- id: 1,
- name: "Beach Box",
- quantity: 0,
- cents: 1100,
- imgPath: "/beach_box.jpg",
- description: "This is a beach box.",
- featured: false,
- category: { name: "Stained Glass", subcategory: { name: "Gardeny" } }
- },
- {
- id: 2,
- name: "Wind Chime",
- quantity: 0,
- cents: 4500,
- imgPath: "/wind-chime.jpg",
- description: "Makes noise when the wind blows.",
- featured: false,
- categories: ["Fused Glass", ["Beachy"]]
- },
- {
- id: 3,
- name: "Beach Box",
- quantity: 5,
- cents: 1100,
- imgPath: "/beach_box.jpg",
- description: "This is a beach box.",
- featured: false,
- categories: ["Stained Glass", ["Christmas"]]
- },
- {
- id: 4,
- name: "Wind Chime",
- quantity: 2,
- cents: 4500,
- imgPath: "/wind-chime.jpg",
- description: "Makes noise when the wind blows.",
- featured: false,
- categories: ["Fused Glass", ["Kiln-y"]]
- },
- {
- id: 5,
- name: "Beach Box (New!)",
- quantity: 5,
- cents: 1100,
- imgPath: "/beach_box.jpg",
- description: "This is a beach box.",
- featured: true,
- categories: ["Stained Glass", ["Christmas"]]
- }
- ],
- term: ""
+ searchTerm: "",
+ products: []
},
getters: {
- inventory(state) {
- const term = state.term.toLowerCase();
+ products(state) {
+ const searchTerm = state.searchTerm.toLowerCase();
- return state.inventory.filter(item => {
- // TODO: move into class for items
+ return state.products.filter(item => {
return (
- item.name.toLowerCase().indexOf(term) != -1 ||
- item.description.toLowerCase().indexOf(term) != -1
+ item.name.toLowerCase().indexOf(searchTerm) != -1 ||
+ item.description.toLowerCase().indexOf(searchTerm) != -1
);
});
}
},
mutations: {
- filterTerm(state, term) {
- state.term = term;
+ searchTerm(state, term) {
+ state.searchTerm = term;
+ },
+ setProducts(state, products) {
+ state.products = products;
+ }
+ },
+ actions: {
+ refreshProducts({ commit }) {
+ commit("setProducts", Dichroism.getProducts());
}
},
- actions: {},
modules: {}
});