108108 :min =" getFilterMinValue (c .name )"
109109 :max =" getFilterMaxValue (c .name )"
110110 :valueStart =" getFilterItem ({ column: c , operator: ' gte' })"
111- @update :valueStart =" onFilterInput [c .name ]({ column: c , operator: ' gte' , value: $event || undefined })"
111+ @update :valueStart =" onFilterInput [c .name ]({ column: c , operator: ' gte' , value: ( $event !== ' ' && $event !== null ) ? $event : undefined })"
112112 :valueEnd =" getFilterItem ({ column: c , operator: ' lte' })"
113- @update :valueEnd =" onFilterInput [c .name ]({ column: c , operator: ' lte' , value: $event || undefined })"
113+ @update :valueEnd =" onFilterInput [c .name ]({ column: c , operator: ' lte' , value: ( $event !== ' ' && $event !== null ) ? $event : undefined })"
114114 />
115115
116116 <div v-else-if =" ['integer', 'decimal', 'float'].includes(c.type)" class =" flex gap-2" >
117117 <Input
118118 type="number"
119119 aria-describedby="helper-text-explanation"
120120 :placeholder =" $t (' From' )"
121- @update :modelValue =" onFilterInput [c .name ]({ column: c , operator: ' gte' , value: $event || undefined })"
121+ @update :modelValue =" onFilterInput [c .name ]({ column: c , operator: ' gte' , value: ( $event !== ' ' && $event !== null ) ? $event : undefined })"
122122 :modelValue =" getFilterItem ({ column: c , operator: ' gte' })"
123123 />
124124 <Input
125125 type="number"
126126 aria-describedby="helper-text-explanation"
127127 :placeholder =" $t (' To' )"
128- @update :modelValue =" onFilterInput [c .name ]({ column: c , operator: ' lte' , value: $event || undefined })"
128+ @update :modelValue =" onFilterInput [c .name ]({ column: c , operator: ' lte' , value: ( $event !== ' ' && $event !== null ) ? $event : undefined })"
129129 :modelValue =" getFilterItem ({ column: c , operator: ' lte' })"
130130 />
131131 </div >
@@ -269,7 +269,7 @@ const onSearchInput = computed(() => {
269269function setFilterItem ({ column, operator, value }) {
270270
271271 const index = filtersStore .filters .findIndex (f => f .field === column .name && f .operator === operator);
272- if (value === undefined ) {
272+ if (value === undefined || value === ' ' || value === null ) {
273273 if (index !== - 1 ) {
274274 filtersStore .filters .splice (index, 1 );
275275 }
@@ -284,7 +284,8 @@ function setFilterItem({ column, operator, value }) {
284284}
285285
286286function getFilterItem ({ column, operator }) {
287- return filtersStore .filters .find (f => f .field === column .name && f .operator === operator)? .value || ' ' ;
287+ const filterValue = filtersStore .filters .find (f => f .field === column .name && f .operator === operator)? .value ;
288+ return filterValue !== undefined ? filterValue : ' ' ;
288289}
289290
290291async function clear () {
0 commit comments