feat: add local backup export import core
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -15,6 +15,8 @@ abstract interface class AppDependencies {
|
||||
WorkoutHistoryUseCases get workoutHistoryUseCases;
|
||||
ProgressionStatsUseCase get progressionStatsUseCase;
|
||||
ExercisePerformanceReferenceUseCase get exercisePerformanceReferenceUseCase;
|
||||
DataExportUseCase get dataExportUseCase;
|
||||
DataImportUseCase get dataImportUseCase;
|
||||
SyncUseCases get syncUseCases;
|
||||
ShareUseCases get shareUseCases;
|
||||
}
|
||||
@ -33,6 +35,8 @@ final class AppBootstrap implements AppDependencies {
|
||||
required this.workoutHistoryUseCases,
|
||||
required this.progressionStatsUseCase,
|
||||
required this.exercisePerformanceReferenceUseCase,
|
||||
required this.dataExportUseCase,
|
||||
required this.dataImportUseCase,
|
||||
required this.syncUseCases,
|
||||
required this.shareUseCases,
|
||||
required this.syncGateway,
|
||||
@ -62,6 +66,10 @@ final class AppBootstrap implements AppDependencies {
|
||||
@override
|
||||
final ExercisePerformanceReferenceUseCase exercisePerformanceReferenceUseCase;
|
||||
@override
|
||||
final DataExportUseCase dataExportUseCase;
|
||||
@override
|
||||
final DataImportUseCase dataImportUseCase;
|
||||
@override
|
||||
final SyncUseCases syncUseCases;
|
||||
@override
|
||||
final ShareUseCases shareUseCases;
|
||||
@ -90,6 +98,8 @@ final class AppBootstrap implements AppDependencies {
|
||||
);
|
||||
final performanceReferenceRepository =
|
||||
DriftExercisePerformanceReferenceRepository(database);
|
||||
final localDataBackupRepository = DriftLocalDataBackupRepository(database);
|
||||
const localBackupMediaStore = PathProviderLocalMediaStorage();
|
||||
final ids = LocalIdGenerator();
|
||||
const clock = SystemClock();
|
||||
const originDeviceId = 'local-device';
|
||||
@ -179,6 +189,16 @@ final class AppBootstrap implements AppDependencies {
|
||||
exercisePerformanceReferenceUseCase: ExercisePerformanceReferenceUseCase(
|
||||
repository: performanceReferenceRepository,
|
||||
),
|
||||
dataExportUseCase: DataExportUseCase(
|
||||
repository: localDataBackupRepository,
|
||||
mediaStore: localBackupMediaStore,
|
||||
clock: clock,
|
||||
),
|
||||
dataImportUseCase: DataImportUseCase(
|
||||
repository: localDataBackupRepository,
|
||||
mediaStore: localBackupMediaStore,
|
||||
clock: clock,
|
||||
),
|
||||
syncUseCases: SyncUseCases(
|
||||
tokenStore: const SecureStorageAuthTokenStore(),
|
||||
remoteSyncApi: remoteSyncApi,
|
||||
|
||||
Reference in New Issue
Block a user