Basic generation page

This commit is contained in:
2025-03-06 23:37:43 -06:00
parent 330f958d55
commit b46ba6fd2c
5 changed files with 369 additions and 2 deletions

View File

@@ -91,7 +91,7 @@ export default defineComponent({
.catch(error => {
if (error.response.status == 409) {
// still generating, try again
setInterval(2000, this.fetchSeed.bind(this));
setTimeout(this.fetchSeed.bind(this), 2000);
} else {
this.error = "Seed not found. :(";
}

View File

@@ -0,0 +1,43 @@
<script>
import { defineComponent } from 'vue';
import localforage from "localforage";
export default defineComponent({
data() {
return {
selected: null,
};
},
emits: [
'update:modelValue'
],
props: {
modelValue: null,
name: null,
settings: {},
},
mounted() {
this.selected = this.settings.default;
this.change();
},
methods: {
change() {
this.$emit("update:modelValue", this.selected);
},
},
});
</script>
<template>
<b>{{ settings.display ?? name }}:</b>
<div class="nav nav-pills nav-fill mt-1 mb-1">
<template v-for="value of Object.keys(settings.values)">
<input type="radio" class="btn-check" :name="name" :id="`${name}_${value}`"
autocomplete="off" :value="value" v-model="selected" @change="change" />
<label class="btn btn-outline-primary nav-item m-1" :for="`${name}_${value}`">
{{ settings.values[value].display }}
</label>
</template>
</div>
</template>