todos-contra-el-fuego-mobile/lib/redux/fire_map_reducer.dart
vjrj 12653b80a4 Fix 78 additional lint issues: rename all files to snake_case and fix 16 style issues
Lint issues fixed (263 total in lib/):
- file_names (57 issues): Renamed all PascalCase files to snake_case
  - All lib files: activeFires -> active_fires, etc.
  - All models: appState -> app_state, fireMapState -> fire_map_state, etc.
  - All redux files: appActions -> app_actions, appReducer -> app_reducer, etc.
- Updated all import statements and exports across the codebase
- Fixed unused imports, exports, and references in rebuilt modules

Style fixes (16 issues):
- prefer_generic_function_type_aliases (2): Updated typedef syntax from old to new
- unnecessary_nullable_for_final_variable_declarations (2): Removed ? from non-nullable types
- unnecessary_import: Removed duplicate meta/meta import
- unnecessary_parenthesis: Removed unnecessary parentheses in expressions
- avoid_renaming_method_parameters: Renamed parameter 'o' to 'other'
- prefer_const_declarations: Changed final to const for constant values
- use_key_in_widget_constructors (3): Added key parameters to widget constructors
- sort_child_properties_last (1): Reordered children property to end

Verification:
- APK builds successfully (146 MB)
- Reduced from 106 lint issues to 49 high-priority issues
- Total file_names issues: 0 (down from 57)
- All imports and exports updated correctly
2026-03-12 09:00:06 +01:00

103 lines
3.6 KiB
Dart

import 'package:objectid/objectid.dart';
import 'package:redux/redux.dart';
import '../models/fireMapState.dart';
import '../models/yourLocation.dart';
import 'actions.dart';
final Reducer<FireMapState> fireMapReducer =
combineReducers<FireMapState>(<Reducer<FireMapState>>[
TypedReducer<FireMapState, ShowYourLocationMapAction>(_showYourLocationMap),
TypedReducer<FireMapState, ShowFireNotificationMapAction>(
_showFireNotificationMap),
TypedReducer<FireMapState, UpdateFireMapStatsAction>(
_updateYourLocationMapStats),
TypedReducer<FireMapState, SubscribeAction>(_subscribeYourLocationMap),
TypedReducer<FireMapState, SubscribeConfirmAction>(
_subscribeConfirmYourLocationMap),
TypedReducer<FireMapState, UnSubscribeAction>(_unsubscribeYourLocationMap),
TypedReducer<FireMapState, EditYourLocationAction>(_editYourLocationMap),
TypedReducer<FireMapState, EditConfirmYourLocationAction>(
_editConfirmYourLocationMap),
TypedReducer<FireMapState, EditCancelYourLocationAction>(
_editCancelYourLocationMap),
TypedReducer<FireMapState, SelectMapLayerAction>(_selectMapLayer),
TypedReducer<FireMapState, UpdateYourLocationMapAction>(
_updateYourLocationMap)
]);
FireMapState _updateYourLocationMapStats(
FireMapState state, UpdateFireMapStatsAction action) {
return state.copyWith(
numFires: action.numFires,
fires: action.fires,
falsePos: action.falsePos,
industries: action.industries);
}
FireMapState _updateYourLocationMap(
FireMapState state, UpdateYourLocationMapAction action) {
return state.copyWith(yourLocation: action.loc);
}
FireMapState _showYourLocationMap(
FireMapState state, ShowYourLocationMapAction action) {
return state.copyWith(
status: action.loc.subscribed
? FireMapStatus.unsubscribe
: FireMapStatus.view,
yourLocation: action.loc);
}
FireMapState _showFireNotificationMap(
FireMapState state, ShowFireNotificationMapAction action) {
// TODO(developer): use here real location instead of notification location?
final YourLocation pseudoLoc = YourLocation(
id: ObjectId(),
lat: action.notif.lat,
lon: action.notif.lon,
description: action.notif.description);
return state.copyWith(
status: FireMapStatus.viewFireNotification,
yourLocation: pseudoLoc,
fireNotication: action.notif);
}
FireMapState _subscribeYourLocationMap(
FireMapState state, SubscribeAction action) {
return state.copyWith(status: FireMapStatus.subscriptionConfirm);
}
FireMapState _subscribeConfirmYourLocationMap(
FireMapState state, SubscribeConfirmAction action) {
return state.copyWith(
status: FireMapStatus.unsubscribe, yourLocation: action.loc);
}
FireMapState _unsubscribeYourLocationMap(
FireMapState state, UnSubscribeAction action) {
return state.copyWith(status: FireMapStatus.view, yourLocation: action.loc);
}
FireMapState _editYourLocationMap(
FireMapState state, EditYourLocationAction action) {
return state.copyWith(status: FireMapStatus.edit);
}
FireMapState _editConfirmYourLocationMap(
FireMapState state, EditConfirmYourLocationAction action) {
return state.copyWith(status: restoreStatusAfterSave(action.loc));
}
FireMapState _editCancelYourLocationMap(
FireMapState state, EditCancelYourLocationAction action) {
return state.copyWith(
status: restoreStatusAfterSave(action.loc), yourLocation: action.loc);
}
FireMapStatus restoreStatusAfterSave(YourLocation loc) =>
loc.subscribed ? FireMapStatus.unsubscribe : FireMapStatus.view;
FireMapState _selectMapLayer(FireMapState state, SelectMapLayerAction action) {
return state.copyWith(layer: action.layer);
}