From af65ee93785c0f4ab618fcbd7cd40b31cc95fac9 Mon Sep 17 00:00:00 2001 From: John Cleaver Date: Fri, 8 Mar 2019 20:35:44 -0500 Subject: [PATCH] Add Ability to Hide Completed (#108) * Disable ES Lint warning * Add methods to filter competled bundles * Add completed items filter --- src/components/bundles/BundleItems.vue | 10 +++++++++- src/components/search/Search.vue | 4 ++++ src/store/index.js | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/components/bundles/BundleItems.vue b/src/components/bundles/BundleItems.vue index c299c13..c274249 100644 --- a/src/components/bundles/BundleItems.vue +++ b/src/components/bundles/BundleItems.vue @@ -26,7 +26,7 @@
-
+
@@ -44,6 +44,14 @@ export default { }, hideBundleItems: function () { return this.$store.state.HideSpoilers && this.$store.state.BundleRewardsSpoilers + }, + bundleItems: function () { + return this.bundle.items.filter(item => !(this.$store.state.HideCompleted && this.isItemComplete(item))) + } + }, + methods: { + isItemComplete: function (item) { + return item.item.bundles.every(this.$store.getters.IsBundleItemRedeemed) } }, components: { diff --git a/src/components/search/Search.vue b/src/components/search/Search.vue index 73b2b9b..09b77ca 100644 --- a/src/components/search/Search.vue +++ b/src/components/search/Search.vue @@ -42,6 +42,7 @@ export default { var self = this return _.orderBy( self.$store.state.items + .filter(item => !(this.$store.state.HideCompleted && this.isItemComplete(item))) .filter(item => item.name.toLowerCase().indexOf(self.search.name_filter.toLowerCase()) !== -1) .filter(item => this.FilterSeasons(item.seasons.map(ssn => ssn.id), this.search.season_filter)) .filter(item => this.FilterSkills(item.skills.map(skl => skl.id), this.search.skill_filter)) @@ -96,6 +97,9 @@ export default { } return false } + }, + isItemComplete: function (item) { + return item.bundles.every(this.$store.getters.IsBundleItemRedeemed) } } diff --git a/src/store/index.js b/src/store/index.js index 8c284c7..7e92ab6 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -81,6 +81,7 @@ export default new Vuex.Store({ }) function getById (array, id) { + // eslint-disable-next-line return array.find(x => x.id == id) }