Fix preset issues

This commit is contained in:
2026-01-17 12:31:32 -06:00
parent 2b9a453f3a
commit c47fd80ae8
3 changed files with 11 additions and 9 deletions

View File

@@ -28,7 +28,6 @@ export default defineComponent({
], ],
props: { props: {
generator: null, generator: null,
prefix: null,
}, },
computed: { computed: {
...mapState(usePresetStore, { ...mapState(usePresetStore, {

View File

@@ -48,7 +48,12 @@ export default defineComponent({
async mounted() { async mounted() {
this.$refs.tips?.forEach(el => new Tooltip(el)); this.$refs.tips?.forEach(el => new Tooltip(el));
if (this.settings) { if (this.settings) {
this.selected = await localforage.getItem(`${this.prefix}setting_${this.name}`) ?? this.settings.default; const saved = await localforage.getItem(`${this.prefix}setting_${this.name}`) ?? this.settings.default;
if (this.modelValue) {
this.selected = this.modelValue;
} else {
this.selected = saved;
}
this.change(); this.change();
} }
}, },

View File

@@ -39,7 +39,7 @@ export default defineComponent({
computed: { computed: {
settings() { settings() {
return generatorSettings[this.generator]; return generatorSettings[this.generator];
} },
}, },
async mounted() { async mounted() {
this.modal = new Modal(this.$refs.savePresetModal, {}); this.modal = new Modal(this.$refs.savePresetModal, {});
@@ -75,10 +75,8 @@ export default defineComponent({
}); });
}, },
presetSelected(preset) { presetSelected(preset) {
for (const setting of Object.keys(this.set)) { for (const setting of Object.keys(preset)) {
if (preset[setting] != undefined) { this.set[setting] = preset[setting];
this.set[setting] = preset[setting];
}
} }
}, },
savePreset(names) { savePreset(names) {
@@ -143,7 +141,7 @@ export default defineComponent({
<div id="settings" class="accordion accordion-flush"> <div id="settings" class="accordion accordion-flush">
<AccordionItem> <AccordionItem>
<PresetPicker ref="preset" :generator="generator" @selected="presetSelected" <PresetPicker ref="preset" :generator="generator" @selected="presetSelected"
@save="savePreset" :prefix="prefix" /> @save="savePreset" />
</AccordionItem> </AccordionItem>
<AccordionItem :expanded="true"> <AccordionItem :expanded="true">
<template #header> <template #header>
@@ -180,7 +178,7 @@ export default defineComponent({
</template> </template>
<SettingPicker color="danger" v-model="set.door_shuffle" name="door_shuffle" :generator="generator" :prefix="prefix" /> <SettingPicker color="danger" v-model="set.door_shuffle" name="door_shuffle" :generator="generator" :prefix="prefix" />
<SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'" <SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'"
v-model="set.lobbies" name="door_lobbies" :generator="generator" :prefix="prefix" /> v-model="set.door_lobbies" name="door_lobbies" :generator="generator" :prefix="prefix" />
<SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'" <SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'"
v-model="set.door_type_mode" name="door_type_mode" :generator="generator" :prefix="prefix" /> v-model="set.door_type_mode" name="door_type_mode" :generator="generator" :prefix="prefix" />
<SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'" <SettingPicker color="danger" v-if="this.set.door_shuffle != 'vanilla'"