mirror of
https://github.com/kihashi/stardew_community_checklist.git
synced 2025-10-19 08:03:17 +00:00
Add Ability to Hide Completed (#108)
* Disable ES Lint warning * Add methods to filter competled bundles * Add completed items filter
This commit is contained in:
parent
409bc00101
commit
af65ee9378
@ -26,7 +26,7 @@
|
|||||||
<!-- </section>
|
<!-- </section>
|
||||||
<section class="section"> -->
|
<section class="section"> -->
|
||||||
<div class="columns is-multiline">
|
<div class="columns is-multiline">
|
||||||
<div class="column is-3 is-flex" v-for="bundleitem in bundle.items" :key="bundleitem.id">
|
<div class="column is-3 is-flex" v-for="bundleitem in bundleItems" :key="bundleitem.id">
|
||||||
<item-card :item="bundleitem.item"></item-card>
|
<item-card :item="bundleitem.item"></item-card>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -44,6 +44,14 @@ export default {
|
|||||||
},
|
},
|
||||||
hideBundleItems: function () {
|
hideBundleItems: function () {
|
||||||
return this.$store.state.HideSpoilers && this.$store.state.BundleRewardsSpoilers
|
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: {
|
components: {
|
||||||
|
|||||||
@ -42,6 +42,7 @@ export default {
|
|||||||
var self = this
|
var self = this
|
||||||
return _.orderBy(
|
return _.orderBy(
|
||||||
self.$store.state.items
|
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 => 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.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))
|
.filter(item => this.FilterSkills(item.skills.map(skl => skl.id), this.search.skill_filter))
|
||||||
@ -96,6 +97,9 @@ export default {
|
|||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
isItemComplete: function (item) {
|
||||||
|
return item.bundles.every(this.$store.getters.IsBundleItemRedeemed)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -81,6 +81,7 @@ export default new Vuex.Store({
|
|||||||
})
|
})
|
||||||
|
|
||||||
function getById (array, id) {
|
function getById (array, id) {
|
||||||
|
// eslint-disable-next-line
|
||||||
return array.find(x => x.id == id)
|
return array.find(x => x.id == id)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user