5757 optionValue =" value" optionLabel =" label" dataKey =" value" dropdown-icon =" pi pi-plus-circle" showClear />
5858 <label for =" num_annotations" >Annotations</label >
5959 </FloatLabel >
60+ <FloatLabel variant =" on" >
61+ <IdentificationTaskReviewActionSelect id =" review_action" v-model =" selectedReviewAction"
62+ class =" min-w-30" />
63+ <label for =" review_action" >Review</label >
64+ </FloatLabel >
6065 <FloatLabel variant =" on" >
6166 <Select id =" is_flagged" v-model =" isFlagged" :options =" [true, false]" showClear />
6267 <label for =" is_flagged" >Flag</label >
@@ -101,13 +106,14 @@ import TaxonTreeSelect from '@/components/taxa/TaxonTreeSelect.vue';
101106
102107import { identificationTasksApi } from ' @/services/apiService' ;
103108
104- import type { IdentificationTask , IdentificationTaskResultSource , Country , Taxon } from ' mosquito-alert' ;
109+ import type { IdentificationTask , IdentificationTaskResultSource , IdentificationtasksListReviewActionParameter , Country , Taxon } from ' mosquito-alert' ;
105110import { IdentificationTaskStatus } from ' mosquito-alert' ;
106111import { IdentificationtasksListOrderByParameter } from ' mosquito-alert' ;
107112import type { IdentificationTasksApiListRequest } from ' mosquito-alert' ;
108113
109114import { useAbility } from ' @casl/vue' ;
110115import type { AppAbility } from ' @/services/ability' ;
116+ import IdentificationTaskReviewActionSelect from ' @/components/identificationTasks/IdentificationTaskReviewActionSelect.vue' ;
111117
112118const ability = useAbility <AppAbility >();
113119
@@ -155,6 +161,7 @@ const selectedCountryIds = computed<number[]>(() => {
155161 return selectedCountries .value ?.map (c => c .id ) ?? [];
156162});
157163const selectedNumAnnotation = ref <{ min: number | undefined ; max: number | undefined }>();
164+ const selectedReviewAction = ref <IdentificationtasksListReviewActionParameter >();
158165const numAnnotationOptions = ref <Array <{ value: { min: number | undefined ; max: number | undefined }; label: string }>>([
159166 { value: { min: 0 , max: 0 }, label: ' 0' },
160167 { value: { min: 1 , max: 1 }, label: ' 1' },
@@ -172,6 +179,7 @@ function clearFilters() {
172179 selectedSources .value = [];
173180 selectedCountries .value = [];
174181 selectedNumAnnotation .value = undefined ;
182+ selectedReviewAction .value = undefined ;
175183 isFlagged .value = undefined ;
176184}
177185
@@ -252,6 +260,7 @@ watchEffect(async () => {
252260 observationCountryIds: selectedCountryIds .value || undefined ,
253261 resultSource: selectedSources .value || undefined ,
254262 resultTaxonIds: selectedTaxon .value ? [selectedTaxon .value .id ] : undefined ,
263+ reviewAction: selectedReviewAction .value || undefined ,
255264 page: pageSelected .value + 1 ,
256265 pageSize: numRows .value ,
257266 orderBy: selectedOrderBy .value ? [selectedOrderBy .value .value ] : undefined
0 commit comments