Made price range slider non-strict and added sensible default values
parent
b05fb94547
commit
0383876b54
|
|
@ -65,7 +65,7 @@ function mapValuesToModel(values: Object): SearchPreferences {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
const { values, handleSubmit, defineField } = useForm({
|
const { errors, values, handleSubmit, defineField } = useForm({
|
||||||
validationSchema: toTypedSchema(
|
validationSchema: toTypedSchema(
|
||||||
yup.object({
|
yup.object({
|
||||||
priceRangeEnabled: yup.boolean(),
|
priceRangeEnabled: yup.boolean(),
|
||||||
|
|
@ -87,8 +87,10 @@ const { values, handleSubmit, defineField } = useForm({
|
||||||
includeRestaurantsEnabled: searchPreferences.value?.includeRestaurantsEnabled,
|
includeRestaurantsEnabled: searchPreferences.value?.includeRestaurantsEnabled,
|
||||||
excludeRestaurantsEnabled: searchPreferences.value?.excludeRestaurantsEnabled,
|
excludeRestaurantsEnabled: searchPreferences.value?.excludeRestaurantsEnabled,
|
||||||
priceRange: [
|
priceRange: [
|
||||||
Number(Object.keys(priceTicks).find((key) => priceTicks[key] == searchPreferences.value?.lowerPriceBound)),
|
Number(Object.keys(priceTicks).find((key) => priceTicks[key] == searchPreferences.value?.lowerPriceBound ?? "€")),
|
||||||
Number(Object.keys(priceTicks).find((key) => priceTicks[key] == searchPreferences.value?.upperPriceBound)),
|
Number(
|
||||||
|
Object.keys(priceTicks).find((key) => priceTicks[key] == searchPreferences.value?.upperPriceBound ?? "€€€€")
|
||||||
|
),
|
||||||
],
|
],
|
||||||
includedTags: searchPreferences.value?.includedTags,
|
includedTags: searchPreferences.value?.includedTags,
|
||||||
excludedTags: searchPreferences.value?.excludedTags,
|
excludedTags: searchPreferences.value?.excludedTags,
|
||||||
|
|
@ -134,7 +136,7 @@ const emit = defineEmits({
|
||||||
const onSubmit = handleSubmit(async (values) => {
|
const onSubmit = handleSubmit(async (values) => {
|
||||||
try {
|
try {
|
||||||
const data = mapValuesToModel(values);
|
const data = mapValuesToModel(values);
|
||||||
|
console.log(values);
|
||||||
await pb.collection("search_preferences").update(searchPreferences.value!.id!, data);
|
await pb.collection("search_preferences").update(searchPreferences.value!.id!, data);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
|
@ -161,7 +163,6 @@ const onSubmit = handleSubmit(async (values) => {
|
||||||
:ticks="priceTicks"
|
:ticks="priceTicks"
|
||||||
track-size="8"
|
track-size="8"
|
||||||
:disabled="!priceRangeEnabled"
|
:disabled="!priceRangeEnabled"
|
||||||
strict
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -226,6 +227,7 @@ const onSubmit = handleSubmit(async (values) => {
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-1"></div>
|
<div class="flex-1"></div>
|
||||||
<div>
|
<div>
|
||||||
|
{{ errors }}
|
||||||
{{ filteredRestaurants }} filtered restaurants
|
{{ filteredRestaurants }} filtered restaurants
|
||||||
<button @click="onSubmit" class="btn btn-outline w-full">Save preferences</button>
|
<button @click="onSubmit" class="btn btn-outline w-full">Save preferences</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue