Feature(custom): filter list in gallery page now sync with visiable setting

This commit is contained in:
Kuingsmile
2026-01-16 14:31:08 +08:00
parent fa4ef9f507
commit 085a12d890

View File

@@ -74,7 +74,7 @@
<ChevronDownIcon :size="16" />
</button>
<div v-show="picBedDropdownOpen" class="multiselect-dropdown">
<label v-for="item in picBedG" :key="item.type" class="multiselect-option">
<label v-for="item in filteredPicBedG" :key="item.type" class="multiselect-option">
<input v-model="choosedPicBed" type="checkbox" :value="item.type" />
{{ item.name }}
</label>
@@ -602,6 +602,13 @@ const effectiveGridBreakpoints = computed(() => {
return [{ min: 0, cols: userGridColumns.value }]
})
const filteredPicBedG = computed(() => {
if (galleryPicBedFilterSetting.value.length === 0) {
return picBedG.value
}
return picBedG.value.filter(item => galleryPicBedFilterSetting.value.includes(item.type))
})
const imageLoadStates = reactive<Record<string, boolean>>({})
const imageErrorStates = reactive<Record<string, boolean>>({})