refactor(legacy): split legacy_shared into cohesive packages

legacy_shared was the junk drawer of the legacy app mode — 37 files
mixing device entities, command infrastructure, UI primitives, generic
formatters, and a duplicate of sf_infrastructure's dio_error_mapper.
Any module needing one piece pulled the whole bag into its graph.

Split it by responsibility, following Mandamiento 4 of Real-World Flutter:

- legacy_ui (new): 6 widget/layout primitives (PageLayout, MenuButton,
  SectionButton, PulsingLocationMarker, RefreshableErrorState,
  WeekDayChips) plus mapStyleProvider — shared UI state that was the
  only reason two modules needed a common package.
- legacy_device_state (expanded 9 → 30): absorbed device entities,
  commands infrastructure (datasource + repo + provider + guard),
  device settings update flow, and the CSV exporter. Now one package
  owns the device domain end-to-end.
- packages/utils: absorbed battery_utils and date_format_utils as pure
  formatters that never belonged in a legacy-scoped package.
- legacy_shared: deleted entirely.

The duplicate dio_error_mapper in legacy_shared is gone; callers now use
the sf_infrastructure version (which was always the superset — it adds
ApiException and the dart:io socket handling).

DeviceEntity note: legacy_device_state keeps its own DeviceEntity (with
int timestamps and typed paymentOptions) separate from sf_shared's
DeviceEntity (String timestamps, untyped paymentOptions). The legacy
one is intentionally not exported from the barrel to avoid the
ambiguous_import collision that legacy_shared quietly hid by never
exporting it in the first place. Unifying the two is a domain-model
refactor out of scope here.

0 cross-module imports remain among legacy feature modules.
This commit is contained in:
2026-04-19 05:42:31 +02:00
parent d7308229a0
commit 14720b66bf
142 changed files with 225 additions and 302 deletions

View File

@@ -3,7 +3,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -3,7 +3,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:sf_shared/sf_shared.dart';

View File

@@ -3,7 +3,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -4,7 +4,7 @@ import 'package:account/src/features/delete_account/presentation/widgets/confirm
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -4,7 +4,7 @@ import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -5,7 +5,7 @@ import 'package:account/src/features/linked_devices/presentation/widgets/delete_
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:sf_shared/sf_shared.dart';

View File

@@ -4,7 +4,7 @@ import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -45,8 +45,10 @@ dependencies:
path: ../../../../packages/utils
fonts:
path: ../../../../packages/fonts
legacy_shared:
path: ../../packages/legacy_shared
legacy_device_state:
path: ../../packages/legacy_device_state
legacy_ui:
path: ../../packages/legacy_ui
sf_shared:
path: ../../../../packages/sf_shared
#dependencies go here

View File

@@ -5,7 +5,7 @@ import 'package:control_panel/src/shared/widgets/device_map.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_infrastructure/sf_infrastructure.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -3,7 +3,9 @@ import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:latlong2/latlong.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:utils/utils.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
const _defaultCenter = LatLng(40.4168, -3.7038);

View File

@@ -50,8 +50,8 @@ dependencies:
path: ../../../../packages/sf_infrastructure
utils:
path: ../../../../packages/utils
legacy_shared:
path: ../../packages/legacy_shared
legacy_ui:
path: ../../packages/legacy_ui
legacy_device_state:
path: ../../packages/legacy_device_state
sf_shared:

View File

@@ -2,7 +2,7 @@ import 'package:customer_service/src/presentation/state/contact_view_model.dart'
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -3,7 +3,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -44,8 +44,8 @@ dependencies:
path: ../../../../packages/utils
fonts:
path: ../../../../packages/fonts
legacy_shared:
path: ../../packages/legacy_shared
legacy_ui:
path: ../../packages/legacy_ui
#dependencies go here
flutter_svg: ^2.2.2
get_it: ^9.0.5

View File

@@ -1,7 +1,7 @@
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import '../data/call_history_entity.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -3,7 +3,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:device_management/src/features/device_management/widgets/call_watch_dialog.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:lottie/lottie.dart';
import 'package:navigation/navigation.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -4,7 +4,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import '../state/locate_device_view_model.dart';
import 'package:legacy_theme/legacy_theme.dart';

View File

@@ -9,7 +9,8 @@ import 'package:device_management/src/features/remote_connection/presentation/wi
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
class RemoteCameraScreen extends ConsumerWidget {
final NavigationContract navigationContract;

View File

@@ -4,7 +4,8 @@ import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:device_management/src/features/remote_connection/presentation/remote_camera_screen.dart';
import 'package:device_management/src/features/remote_connection/presentation/widgets/spy_call_dialog.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -4,7 +4,7 @@ import 'package:device_management/src/core/providers/pictures_repository_provide
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:device_management/src/features/remote_connection/presentation/state/remote_connection_view_state.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:device_management/src/features/remote_connection/presentation/state/remote_connection_view_model.dart';
import 'package:device_management/src/features/remote_connection/presentation/state/remote_connection_view_state.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,7 @@ import 'dart:async';
import 'package:flutter/cupertino.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,8 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'state/volume_control_view_model.dart';

View File

@@ -44,8 +44,10 @@ dependencies:
path: ../../../../packages/utils
fonts:
path: ../../../../packages/fonts
legacy_shared:
path: ../../packages/legacy_shared
legacy_device_state:
path: ../../packages/legacy_device_state
legacy_ui:
path: ../../packages/legacy_ui
sf_shared:
path: ../../../../packages/sf_shared
#dependencies go here

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
abstract class LegacyDeviceSetupRemoteDatasource {
Future<void> generateActivationKey({required String identificator});

View File

@@ -1,5 +1,5 @@
import 'package:legacy_auth/src/core/data/datasource/device_setup_remote_datasource.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_infrastructure/sf_infrastructure.dart';
class LegacyDeviceSetupRemoteDatasourceImpl

View File

@@ -29,8 +29,8 @@ dependencies:
path: ../../../../packages/sf_shared
sf_tracking:
path: ../../../../packages/sf_tracking
legacy_shared:
path: ../../packages/legacy_shared
legacy_device_state:
path: ../../packages/legacy_device_state
fonts:
path: ../../../../packages/fonts
#dependencies go here

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/data/models/create_frequent_place_request_model.dart';
import 'package:location/src/core/data/models/create_geofence_request_model.dart';
import 'package:location/src/core/data/models/update_frequent_place_request_model.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:utils/utils.dart';
import 'package:dio/dio.dart';
import 'package:location/src/core/data/datasource/location_remote_datasource.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'position_history_response_model.freezed.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/data/datasource/location_remote_datasource.dart';
import 'package:location/src/core/data/models/create_frequent_place_request_model.dart';
import 'package:location/src/core/data/models/create_geofence_request_model.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/data/models/create_frequent_place_request_model.dart';
import 'package:location/src/core/data/models/create_geofence_request_model.dart';
import 'package:location/src/core/data/models/update_frequent_place_request_model.dart';

View File

@@ -2,7 +2,7 @@ import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:design_system/design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:location/src/features/location/presentation/state/location_view_model.dart';
import 'package:location/src/features/location/presentation/state/location_view_state.dart';
import 'package:location/src/features/location/presentation/widgets/location_map.dart';

View File

@@ -1,6 +1,6 @@
import 'dart:async';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:latlong2/latlong.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:latlong2/latlong.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/data/models/create_frequent_place_request_model.dart';
import 'package:location/src/core/data/models/create_geofence_request_model.dart';
import 'package:location/src/core/data/models/frequent_places_response_model.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';
import 'package:location/src/core/domain/entities/frequent_place_entity.dart';

View File

@@ -2,7 +2,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:latlong2/latlong.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/domain/entities/frequent_place_entity.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:latlong2/latlong.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,4 +1,5 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

View File

@@ -1,6 +1,6 @@
import 'dart:async';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';

View File

@@ -6,7 +6,8 @@ import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:latlong2/latlong.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:location/src/core/domain/entities/geofence_entity.dart';
import 'package:location/src/core/domain/entities/frequent_place_entity.dart';
import 'package:location/src/features/location/presentation/state/location_map_view_model.dart';

View File

@@ -3,7 +3,7 @@ import 'dart:async';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:flutter/material.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -1,6 +1,6 @@
import 'dart:math' as math;
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:flutter/material.dart';
import 'package:flutter_map/flutter_map.dart';
import 'package:intl/intl.dart';

View File

@@ -21,8 +21,8 @@ dependencies:
path: ../../../../packages/sf_localizations
sf_infrastructure:
path: ../../../../packages/sf_infrastructure
legacy_shared:
path: ../../packages/legacy_shared
legacy_ui:
path: ../../packages/legacy_ui
sf_shared:
path: ../../../../packages/sf_shared
sf_tracking:

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'language_remote_datasource.dart';

View File

@@ -1,5 +1,5 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:settings/src/core/data/datasources/language_remote_datasource.dart';
import 'package:settings/src/core/data/datasources/language_remote_datasource_impl.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:navigation/navigation.dart';
import 'package:settings/src/features/alarm/domain/entities/alarm_entity.dart';
import 'package:settings/src/features/alarm/presentation/state/alarm_view_model.dart';

View File

@@ -2,7 +2,7 @@ import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:settings/src/features/alarm/domain/entities/alarm_entity.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
class AppStoreScreen extends ConsumerWidget {

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:settings/src/features/language/presentation/state/language_view_model.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
class LegacyNotificationsScreen extends ConsumerWidget {

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:settings/src/features/remote_management/presentation/state/remote_management_view_model.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
class RemoteOnOffScreen extends ConsumerWidget {

View File

@@ -1,7 +1,7 @@
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';

View File

@@ -1,7 +1,7 @@
import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,8 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:legacy_ui/legacy_ui.dart';
import 'package:sf_localizations/sf_localizations.dart';
import '../timezone_data.dart';

View File

@@ -2,7 +2,7 @@ import 'dart:async';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:get_it/get_it.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:sf_shared/sf_shared.dart';
import 'package:sf_infrastructure/sf_infrastructure.dart';
import 'package:sf_tracking/sf_tracking.dart';

View File

@@ -2,7 +2,7 @@ import 'package:design_system/design_system.dart';
import 'package:legacy_theme/legacy_theme.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:legacy_shared/legacy_shared.dart';
import 'package:legacy_device_state/legacy_device_state.dart';
import 'package:navigation/navigation.dart';
import 'package:sf_localizations/sf_localizations.dart';
import 'package:utils/utils.dart';

View File

@@ -44,8 +44,10 @@ dependencies:
path: ../../../../packages/utils
fonts:
path: ../../../../packages/fonts
legacy_shared:
path: ../../packages/legacy_shared
legacy_device_state:
path: ../../packages/legacy_device_state
legacy_ui:
path: ../../packages/legacy_ui
sf_shared:
path: ../../../../packages/sf_shared
#dependencies go here

View File

@@ -1,3 +1,30 @@
// Entities
export 'src/data/models/entities/position_entity.dart';
export 'src/data/models/entities/address_entity.dart';
export 'src/data/models/entities/network_entity.dart';
// Response models
export 'src/data/models/device_response_model.dart';
export 'src/data/models/latest_positions_response_model.dart';
export 'src/data/models/send_command_request_model.dart';
// Commands
export 'src/data/datasources/commands_remote_datatsource.dart';
export 'src/data/datasources/commands_remote_datasource_impl.dart';
export 'src/data/repositories/commands_repository_impl.dart';
export 'src/domain/repositories/command_repository.dart';
export 'src/providers/commands_remote_datasource_provider.dart';
export 'src/providers/commands_repository_provider.dart';
// Device settings update
export 'src/data/datasources/device_settings_update_datasource.dart';
export 'src/providers/device_settings_update_provider.dart';
// Utils
export 'src/utils/device_command_guard.dart';
export 'src/utils/device_csv_builder.dart';
// State (positions polling — pre-existing)
export 'src/legacy_device_repository.dart';
export 'src/legacy_device_repository_impl.dart';
export 'src/legacy_device_remote_datasource.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/src/data/models/send_command_request_model.dart';
import 'package:legacy_device_state/src/data/models/send_command_request_model.dart';
import 'package:sf_infrastructure/sf_infrastructure.dart';
import 'commands_remote_datatsource.dart';

View File

@@ -1,4 +1,4 @@
import 'package:legacy_shared/src/data/models/send_command_request_model.dart';
import 'package:legacy_device_state/src/data/models/send_command_request_model.dart';
abstract class CommandsRemoteDatasource {
Future<void> send({required SendCommandRequestModel request});

Some files were not shown because too many files have changed in this diff Show More