11<template >
22 <!-- eslint-disable max-len -->
3- <div v-bind:class =" {
4- 'mx-4': true,
5- 'sm:mx-16': true,
6- 'lg:mx-32': true,
7- 'md:flex': searchedAtLeastOnce}" >
3+ <div class =" mx-4 sm:mx-16 lg:mx-32" >
84 <div v-if =" !recommendationsAnalysisDone && !sliderValuesFetched" class =" mx-auto flex items-center justify-center mt-32" >
95 <img class =" h-36" src =" ../../assets/loading.svg" >
106 </div >
2016 <section v-on:click =" setError(null)"
2117 v-if =" !recommendationsAnalysisDone && sliderValuesFetched"
2218 class =" flex flex-col my-8 md:my-12" >
23- <div class = " md:hidden " ><img src =" ../../assets/search.png" class =" w-20 mb-4 mx-auto" ></div >
24- <div >
25- <FilterSlider
26- v-bind:min =" sliders.age.min"
27- v-bind:max =" sliders.age.max"
28- v-bind:name =" 'age'"
29- v-on:save-filter =" saveFilter" ></FilterSlider >
30- <FilterSlider
31- v-bind:min =" 1"
32- v-bind:max =" 2000"
33- v-bind:unit =" 'km'"
34- v-bind:oneHandle =" true"
35- v-bind:name =" 'distance'"
36- v-on:save-filter =" saveFilter" ></FilterSlider >
37- <FilterSlider
38- v-bind:min =" sliders.popularity.min"
39- v-bind:max =" sliders.popularity.max"
40- v-bind:unit =" 'pts'"
41- v-bind:name =" 'popularity'"
42- v-on:save-filter =" saveFilter" ></FilterSlider >
43- </div >
44- <div >
45- <MultipleFilters
46- v-bind:options =" [
19+ <div ><img src =" ../../assets/search.png" class =" w-20 mb-4 mx-auto" ></div >
20+ <div >
21+ <FilterSlider
22+ v-bind:min =" sliders.age.min"
23+ v-bind:max =" sliders.age.max"
24+ v-bind:name =" 'age'"
25+ v-on:save-filter =" saveFilter" ></FilterSlider >
26+ <FilterSlider
27+ v-bind:min =" 1"
28+ v-bind:max =" 2000"
29+ v-bind:unit =" 'km'"
30+ v-bind:oneHandle =" true"
31+ v-bind:name =" 'distance'"
32+ v-on:save-filter =" saveFilter" ></FilterSlider >
33+ <FilterSlider
34+ v-bind:min =" sliders.popularity.min"
35+ v-bind:max =" sliders.popularity.max"
36+ v-bind:unit =" 'pts'"
37+ v-bind:name =" 'popularity'"
38+ v-on:save-filter =" saveFilter" ></FilterSlider >
39+ </div >
40+ <div >
41+ <MultipleFilters
42+ v-bind:options =" [
4743 'swimming', 'wine', 'reading', 'foodie', 'netflix', 'music', 'yoga', 'golf',
4844 'photography', 'baking', 'shopping', 'outdoors', 'art', 'travel', 'hiking',
4945 'running', 'volunteering', 'cycling', 'climbing', 'tea', 'fishing', 'soccer',
5450 'language exchange', 'sports', 'comedy', 'fashion', 'disney', 'vlogging',
5551 'astrology', 'board games', 'craft beer', 'coffee', 'writer',
5652 ]"
57- v-bind:name =" 'interests'"
58- v-bind:info =" 'If no selected, all are accounted.'"
59- v-on:save-filter-multiple =" saveFilterMultiple" ></MultipleFilters >
60- </div >
53+ v-bind:name =" 'interests'"
54+ v-bind:info =" 'If no selected, all are accounted.'"
55+ v-on:save-filter-multiple =" saveFilterMultiple" ></MultipleFilters >
56+ </div >
6157 <div class =" auth-sub-container-error mx-auto max-w-md" v-if =" error" ><h1 class =" auth-sub-container-error-message" >{{ error }}</h1 ></div >
6258 <div class =" mx-auto w-full max-w-md" >
6359 <h1 v-if =" !submitted" v-on:click =" search()" class =" onboarding-sub-container-content-button-outline w-48 text-lg font-normal max-w-full bg-purple-matcha w-full text-white-matcha mx-auto" >
@@ -98,22 +94,21 @@ export default {
9894 sliderValuesFetched: false ,
9995 filters: {
10096 age: {
101- min: - 1 ,
102- max: - 1 ,
97+ min: null ,
98+ max: null ,
10399 },
104100 distance: {
105101 min: 0 ,
106- max: - 1 ,
102+ max: null ,
107103 },
108104 popularity: {
109- min: - 1 ,
110- max: - 1 ,
105+ min: null ,
106+ max: null ,
111107 },
112108 interests: [],
113109 },
114110 recommendationsAnalysisDone: false ,
115111 error: null ,
116- searchedAtLeastOnce: false ,
117112 submitted: false ,
118113 }),
119114 methods: {
@@ -134,12 +129,17 @@ export default {
134129 const sliderRangesRequest = await this .$http .get (' /search/values' );
135130 const values = sliderRangesRequest .data .search_minmax ;
136131 this .sliders .age .min = values .min_age ;
132+ this .filters .age .min = values .min_age ;
137133 if (this .sliders .age .min < 18 ) {
138134 this .sliders .age .min = 18 ;
135+ this .filters .age .min = 18 ;
139136 }
140137 this .sliders .age .max = values .max_age ;
138+ this .filters .age .max = values .max_age ;
141139 this .sliders .popularity .min = values .min_score ;
140+ this .filters .popularity .min = values .min_score ;
142141 this .sliders .popularity .max = values .max_score ;
142+ this .filters .popularity .max = values .max_score ;
143143 this .sliderValuesFetched = true ;
144144 },
145145 async search () {
@@ -184,7 +184,6 @@ export default {
184184 }
185185 }
186186 this .submitted = false ;
187- this .searchedAtLeastOnce = true ;
188187 this .recommendationsAnalysisDone = true ;
189188 this .scrollToTop ();
190189 },
0 commit comments