@@ -210,24 +210,32 @@ export function useFilterState({
210210
211211 // Remove a filter value from a specific group
212212 const handleRemoveFilter = useCallback ( ( groupIndex : number , value : string ) => {
213+ const group = activeFiltersRef . current [ groupIndex ] ;
214+ if ( group ) {
215+ onTrackEvent ( 'filter_remove' , { category : group . category , value } ) ;
216+ }
213217 setActiveFilters ( ( prev ) => {
214218 const newFilters = [ ...prev ] ;
215- const group = newFilters [ groupIndex ] ;
216- if ( ! group ) return prev ;
219+ const grp = newFilters [ groupIndex ] ;
220+ if ( ! grp ) return prev ;
217221
218- const updatedValues = group . values . filter ( ( v ) => v !== value ) ;
222+ const updatedValues = grp . values . filter ( ( v ) => v !== value ) ;
219223 if ( updatedValues . length === 0 ) {
220224 return newFilters . filter ( ( _ , i ) => i !== groupIndex ) ;
221225 }
222- newFilters [ groupIndex ] = { ...group , values : updatedValues } ;
226+ newFilters [ groupIndex ] = { ...grp , values : updatedValues } ;
223227 return newFilters ;
224228 } ) ;
225- } , [ ] ) ;
229+ } , [ onTrackEvent ] ) ;
226230
227231 // Remove entire group by index
228232 const handleRemoveGroup = useCallback ( ( groupIndex : number ) => {
233+ const group = activeFiltersRef . current [ groupIndex ] ;
234+ if ( group ) {
235+ onTrackEvent ( 'filter_remove' , { category : group . category , value : group . values . join ( ',' ) } ) ;
236+ }
229237 setActiveFilters ( ( prev ) => prev . filter ( ( _ , i ) => i !== groupIndex ) ) ;
230- } , [ ] ) ;
238+ } , [ onTrackEvent ] ) ;
231239
232240 // Random filter - replaces last filter slot (or adds first one)
233241 const handleRandom = useCallback (
0 commit comments