2025-04-17 20:55:27 +05:30
|
|
|
import 'dart:async';
|
|
|
|
|
|
2025-03-09 20:30:58 -05:00
|
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
2025-04-17 20:55:27 +05:30
|
|
|
import 'package:immich_mobile/infrastructure/repositories/db.repository.dart';
|
2025-02-20 00:35:24 +05:30
|
|
|
import 'package:isar/isar.dart';
|
|
|
|
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
|
|
|
|
|
|
|
|
|
part 'db.provider.g.dart';
|
|
|
|
|
|
|
|
|
|
@Riverpod(keepAlive: true)
|
2025-03-09 20:30:58 -05:00
|
|
|
Isar isar(Ref ref) => throw UnimplementedError('isar');
|
2025-04-17 20:55:27 +05:30
|
|
|
|
2025-08-22 01:28:50 +05:30
|
|
|
Drift Function(Ref ref) driftOverride(Drift drift) => (ref) {
|
2025-04-17 20:55:27 +05:30
|
|
|
ref.onDispose(() => unawaited(drift.close()));
|
2025-07-17 21:42:29 +05:30
|
|
|
ref.keepAlive();
|
2025-04-17 20:55:27 +05:30
|
|
|
return drift;
|
2025-08-22 01:28:50 +05:30
|
|
|
};
|
|
|
|
|
|
|
|
|
|
final driftProvider = Provider<Drift>(
|
|
|
|
|
(ref) => throw UnimplementedError("driftProvider must be overridden in the isolate's ProviderContainer before use"),
|
|
|
|
|
);
|