@@ -127,21 +127,23 @@ class App extends React.Component {
127127 featuredObject : { msg : "Click a table row to select object" } ,
128128 extraColumns : [ ] ,
129129 toggleOptions : Object . fromEntries ( ALL_TOGGLES . map ( ( t ) => [ t . id , false ] ) ) ,
130- logTypeFilters : {
131- createVehicle : true ,
132- getVehicle : true ,
133- updateVehicle : true ,
134- createTrip : true ,
135- getTrip : true ,
136- updateTrip : true ,
137- createDeliveryVehicle : true ,
138- getDeliveryVehicle : true ,
139- updateDeliveryVehicle : true ,
140- createTask : true ,
141- getTask : true ,
142- updateTask : true ,
130+ filters : {
131+ logTypes : {
132+ createVehicle : true ,
133+ getVehicle : true ,
134+ updateVehicle : true ,
135+ createTrip : true ,
136+ getTrip : true ,
137+ updateTrip : true ,
138+ createDeliveryVehicle : true ,
139+ getDeliveryVehicle : true ,
140+ updateDeliveryVehicle : true ,
141+ createTask : true ,
142+ getTask : true ,
143+ updateTask : true ,
144+ } ,
145+ tripId : "" ,
143146 } ,
144- tripIdFilter : "" ,
145147 uploadedDatasets : [ null , null , null , null , null ] ,
146148 activeDatasetIndex : null ,
147149 activeMenuIndex : null ,
@@ -263,9 +265,7 @@ class App extends React.Component {
263265 this . setState ( ( prevState ) => {
264266 const minDate = new Date ( prevState . timeRange . minTime ) ;
265267 const maxDate = new Date ( prevState . timeRange . maxTime ) ;
266- const logs = this . state . currentLogData . tripLogs
267- . getLogs_ ( minDate , maxDate , prevState . logTypeFilters , prevState . tripIdFilter )
268- . value ( ) ;
268+ const logs = this . state . currentLogData . tripLogs . getLogs_ ( minDate , maxDate , prevState . filters ) . value ( ) ;
269269 if ( logs . length > 0 ) {
270270 const firstRow = logs [ 0 ] ;
271271 setTimeout ( ( ) => this . focusOnSelectedRow ( ) , 0 ) ;
@@ -283,12 +283,7 @@ class App extends React.Component {
283283 selectLastRow = ( ) => {
284284 const minDate = new Date ( this . state . timeRange . minTime ) ;
285285 const maxDate = new Date ( this . state . timeRange . maxTime ) ;
286- const logsWrapper = this . state . currentLogData . tripLogs . getLogs_ (
287- minDate ,
288- maxDate ,
289- this . state . logTypeFilters ,
290- this . state . tripIdFilter
291- ) ;
286+ const logsWrapper = this . state . currentLogData . tripLogs . getLogs_ ( minDate , maxDate , this . state . filters ) ;
292287 const logs = logsWrapper . value ( ) ;
293288 if ( logs . length > 0 ) {
294289 const lastRow = logs [ logs . length - 1 ] ;
@@ -300,10 +295,10 @@ class App extends React.Component {
300295 } ;
301296
302297 handleRowChange = async ( direction ) => {
303- const { featuredObject, logTypeFilters , tripIdFilter } = this . state ;
298+ const { featuredObject, filters } = this . state ;
304299 const minDate = new Date ( this . state . timeRange . minTime ) ;
305300 const maxDate = new Date ( this . state . timeRange . maxTime ) ;
306- const logs = this . state . currentLogData . tripLogs . getLogs_ ( minDate , maxDate , logTypeFilters , tripIdFilter ) . value ( ) ;
301+ const logs = this . state . currentLogData . tripLogs . getLogs_ ( minDate , maxDate , filters ) . value ( ) ;
307302 let newFeaturedObject = featuredObject ;
308303 const currentIndex = logs . findIndex ( ( log ) => log . timestamp === featuredObject . timestamp ) ;
309304
@@ -892,19 +887,25 @@ class App extends React.Component {
892887 }
893888
894889 handleLogTypeFilterChange = ( filterType ) => {
895- log ( `Filter toggled for: ${ filterType } ` ) ;
896890 this . setState ( ( prevState ) => ( {
897- logTypeFilters : {
898- ...prevState . logTypeFilters ,
899- [ filterType ] : ! prevState . logTypeFilters [ filterType ] ,
891+ filters : {
892+ ...prevState . filters ,
893+ logTypes : {
894+ ...prevState . filters . logTypes ,
895+ [ filterType ] : ! prevState . filters . logTypes [ filterType ] ,
896+ } ,
900897 } ,
901898 } ) ) ;
902899 } ;
903900
904901 handleTripIdFilterChange = ( event ) => {
905- const value = event . target . value ;
906- log ( `Trip ID filter changed to: "${ value } "` ) ;
907- this . setState ( { tripIdFilter : value } ) ;
902+ const newTripId = event . target . value ;
903+ this . setState ( ( prevState ) => ( {
904+ filters : {
905+ ...prevState . filters ,
906+ tripId : newTripId ,
907+ } ,
908+ } ) ) ;
908909 } ;
909910
910911 render ( ) {
@@ -916,8 +917,7 @@ class App extends React.Component {
916917 extraColumns,
917918 dynamicMarkerLocations,
918919 visibleToggles,
919- logTypeFilters,
920- tripIdFilter,
920+ filters,
921921 } = this . state ;
922922 const selectedEventTime = featuredObject ?. timestamp ? new Date ( featuredObject . timestamp ) . getTime ( ) : null ;
923923 const availableFilters = currentLogData . solutionType === "ODRD" ? ODRD_FILTERS : [ ] ;
@@ -942,8 +942,7 @@ class App extends React.Component {
942942 setRenderMarkerOnMap = { this . setRenderMarkerOnMap }
943943 focusSelectedRow = { this . focusOnSelectedRow }
944944 initialMapBounds = { this . state . initialMapBounds }
945- logTypeFilters = { logTypeFilters }
946- tripIdFilter = { tripIdFilter }
945+ filters = { filters }
947946 />
948947 </ div >
949948 < TimeSlider
@@ -955,8 +954,7 @@ class App extends React.Component {
955954 onRowSelect = { ( row , rowIndex ) => this . onSelectionChange ( row , rowIndex ) }
956955 centerOnLocation = { this . centerOnLocation }
957956 focusSelectedRow = { this . focusOnSelectedRow }
958- logTypeFilters = { logTypeFilters }
959- tripIdFilter = { tripIdFilter }
957+ filters = { filters }
960958 />
961959 < div className = "togglebar-button-group" >
962960 < ToggleBar
@@ -966,10 +964,10 @@ class App extends React.Component {
966964 />
967965 < FilterBar
968966 availableFilters = { availableFilters }
969- filterState = { logTypeFilters }
967+ filterState = { filters . logTypes }
970968 clickHandler = { this . handleLogTypeFilterChange }
971969 />
972- < TripIdFilter value = { tripIdFilter } onChange = { this . handleTripIdFilterChange } />
970+ < TripIdFilter value = { filters . tripId } onChange = { this . handleTripIdFilterChange } />
973971 </ div >
974972 < div className = "nav-controls" >
975973 < div className = "button-row" >
@@ -1016,8 +1014,7 @@ class App extends React.Component {
10161014 onSelectionChange = { ( rowData , rowIndex ) => this . onSelectionChange ( rowData , rowIndex ) }
10171015 setFocusOnRowFunction = { this . setFocusOnRowFunction }
10181016 centerOnLocation = { this . centerOnLocation }
1019- logTypeFilters = { logTypeFilters }
1020- tripIdFilter = { tripIdFilter }
1017+ filters = { filters }
10211018 />
10221019 </ div >
10231020 </ div >
0 commit comments