11<template >
2-   <div  class =" flex flex-col max-w-md gap-2 mx-auto" 
3-     <div  class =" flex flex-col gap-2" 
4-       <div  class =" pl-0.5 flex flex-wrap gap-2" 
5-         <input 
6-           v-model =" searchQuery" 
7-           name =" search" 
8-           type =" text" 
9-           class =" h-8 border-2 input input-bordered rounded-2xl placeholder-neutral-content" 
10-           :placeholder =" `Filter by username`" 
11-         >
12-         <TorrustSelect  v-model:selected =" selectedSorting" class =" ml-auto" :options =" sortingOptions" label =" Sort by" 
2+   <div  class =" flex flex-col gap-6" 
3+     <div  class =" flex w-full" 
4+       <div  class =" flex flex-wrap justify-between  gap-2" 
5+         <div  class =" pl-0.5 flex flex-wrap gap-2" 
6+           <input 
7+             v-model =" searchQuery" 
8+             name =" search" 
9+             type =" text" 
10+             class =" h-8 border-2 input input-bordered rounded-2xl placeholder-neutral-content" 
11+             :placeholder =" `Filter by username`" 
12+           >
13+           <div  class =" flex flex-wrap gap-1" 
14+             <TorrustSelect 
15+               v-model:selected =" selectedFilters" 
16+               class =" ml-auto" 
17+               :options =" filteringOptions" 
18+               label =" Filter by" 
19+             />
20+             <TorrustSelect 
21+               v-model:selected =" selectedSorting" 
22+               class =" ml-auto" 
23+               :options =" sortingOptions" 
24+               label =" Sort by" 
25+             />
26+           </div >
27+           <UserTable  :user-profiles =" userProfiles" 
28+           <Pagination 
29+             v-model:current-page =" currentPage" 
30+             v-model:page-size =" pageSize" 
31+             :total-results =" userProfilesTotal" 
32+           />
33+         </div >
1334      </div >
14-       <UserTable  :user-profiles =" userProfiles" 
15-       <Pagination  v-model:current-page =" currentPage" v-model:page-size =" pageSize" :total-results =" userProfilesTotal" 
1635    </div >
1736  </div >
1837</template >
@@ -25,6 +44,12 @@ import { onMounted, ref, watch } from "#imports";
2544import  { useRestApi  } from  " ~/composables/states" 
2645import  type  { TorrustSelectOption  } from  " components/TorrustSelect.vue" 
2746
47+ const :  Array <TorrustSelectOption > =  [
48+   { name: " Email verified" " EmailVerified"  
49+   { name: " Email not verified" " EmailNotVerified"  
50+   { name: " Torrent uploader" " TorrentUploader"  
51+ ]; 
52+ 
2853const :  Array <TorrustSelectOption > =  [
2954  { name: " Registration date (Newest first)" " DateRegisteredNewest"  
3055  { name: " Registration date (Oldest first)" " DateRegisteredOldest"  
@@ -35,6 +60,7 @@ const sortingOptions: Array<TorrustSelectOption> = [
3560const =  useRoute ();
3661const =  useRouter ();
3762const =  useRestApi ();
63+ //  const filters = useFilters();
3864
3965const =  50 ;
4066const =  isNaN (route .query ?.pageSize ) ?  defaultPageSize  :  parseInt (route .query ?.pageSize  as  string , 10 );
0 commit comments