mainly refactoring & addons
This commit is contained in:
@@ -3,6 +3,7 @@ import 'package:drift/native.dart';
|
||||
import 'package:lensai/features/bangs/data/database/database.dart';
|
||||
import 'package:path/path.dart' as p;
|
||||
import 'package:path_provider/path_provider.dart' as path_provider;
|
||||
import 'package:riverpod/riverpod.dart';
|
||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||
import 'package:sqlite3/sqlite3.dart';
|
||||
import 'package:sqlite3_flutter_libs/sqlite3_flutter_libs.dart';
|
||||
@@ -11,7 +12,7 @@ import 'package:universal_io/io.dart';
|
||||
part 'providers.g.dart';
|
||||
|
||||
@Riverpod(keepAlive: true)
|
||||
BangDatabase bangDatabase(BangDatabaseRef ref) {
|
||||
BangDatabase bangDatabase(Ref ref) {
|
||||
return BangDatabase(
|
||||
LazyDatabase(() async {
|
||||
// put the database file, called db.sqlite here, into the documents folder
|
||||
|
||||
@@ -6,7 +6,7 @@ part of 'providers.dart';
|
||||
// RiverpodGenerator
|
||||
// **************************************************************************
|
||||
|
||||
String _$bangDatabaseHash() => r'bbca2edf32faa378dcb6270b12019758d5156662';
|
||||
String _$bangDatabaseHash() => r'd7964e9cdbb6e60fb6d2a78f07bfd4fa34bcb236';
|
||||
|
||||
/// See also [bangDatabase].
|
||||
@ProviderFor(bangDatabase)
|
||||
@@ -19,6 +19,8 @@ final bangDatabaseProvider = Provider<BangDatabase>.internal(
|
||||
allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
typedef BangDatabaseRef = ProviderRef<BangDatabase>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -23,4 +23,4 @@ final bangSourceServiceProvider =
|
||||
|
||||
typedef _$BangSourceService = AutoDisposeNotifier<void>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -2,31 +2,32 @@ import 'package:lensai/features/bangs/data/models/bang.dart';
|
||||
import 'package:lensai/features/bangs/data/models/bang_data.dart';
|
||||
import 'package:lensai/features/bangs/domain/repositories/data.dart';
|
||||
import 'package:lensai/features/bangs/domain/repositories/sync.dart';
|
||||
import 'package:riverpod/riverpod.dart';
|
||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||
|
||||
part 'providers.g.dart';
|
||||
|
||||
@Riverpod()
|
||||
Stream<BangData?> bangData(BangDataRef ref, String? trigger) {
|
||||
Stream<BangData?> bangData(Ref ref, String? trigger) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
return repository.watchBang(trigger);
|
||||
}
|
||||
|
||||
@Riverpod(keepAlive: true)
|
||||
Stream<BangData?> kagiSearchBangData(KagiSearchBangDataRef ref) {
|
||||
Stream<BangData?> kagiSearchBangData(Ref ref) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
return repository.watchBang('kagi');
|
||||
}
|
||||
|
||||
@Riverpod()
|
||||
Stream<Map<String, List<String>>> bangCategories(BangCategoriesRef ref) {
|
||||
Stream<Map<String, List<String>>> bangCategories(Ref ref) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
return repository.watchCategories();
|
||||
}
|
||||
|
||||
@Riverpod()
|
||||
Stream<List<BangData>> bangDataList(
|
||||
BangDataListRef ref, {
|
||||
Ref ref, {
|
||||
({
|
||||
Iterable<BangGroup>? groups,
|
||||
String? domain,
|
||||
@@ -44,14 +45,14 @@ Stream<List<BangData>> bangDataList(
|
||||
}
|
||||
|
||||
@Riverpod()
|
||||
Stream<List<BangData>> frequentBangDataList(FrequentBangDataListRef ref) {
|
||||
Stream<List<BangData>> frequentBangDataList(Ref ref) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
return repository.watchFrequentBangs();
|
||||
}
|
||||
|
||||
@Riverpod()
|
||||
Future<BangData> bangDataEnsureIcon(
|
||||
BangDataEnsureIconRef ref,
|
||||
Ref ref,
|
||||
BangData bang,
|
||||
) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
@@ -62,7 +63,7 @@ Future<BangData> bangDataEnsureIcon(
|
||||
|
||||
@Riverpod()
|
||||
Stream<DateTime?> lastSyncOfGroup(
|
||||
LastSyncOfGroupRef ref,
|
||||
Ref ref,
|
||||
BangGroup group,
|
||||
) {
|
||||
final repository = ref.watch(bangSyncRepositoryProvider.notifier);
|
||||
@@ -71,7 +72,7 @@ Stream<DateTime?> lastSyncOfGroup(
|
||||
|
||||
@Riverpod()
|
||||
Stream<int> bangCountOfGroup(
|
||||
BangCountOfGroupRef ref,
|
||||
Ref ref,
|
||||
BangGroup group,
|
||||
) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
@@ -79,7 +80,7 @@ Stream<int> bangCountOfGroup(
|
||||
}
|
||||
|
||||
@Riverpod()
|
||||
Stream<double> bangIconCacheSizeMegabytes(BangIconCacheSizeMegabytesRef ref) {
|
||||
Stream<double> bangIconCacheSizeMegabytes(Ref ref) {
|
||||
final repository = ref.watch(bangDataRepositoryProvider.notifier);
|
||||
return repository.watchIconCacheSize();
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ part of 'providers.dart';
|
||||
// RiverpodGenerator
|
||||
// **************************************************************************
|
||||
|
||||
String _$bangDataHash() => r'd0e96885458be8893c6b19735b8792bdd1b9bcb8';
|
||||
String _$bangDataHash() => r'057a002de9789ab74c8f3b337a43faa26b788d8d';
|
||||
|
||||
/// Copied from Dart SDK
|
||||
class _SystemHash {
|
||||
@@ -141,6 +141,8 @@ class BangDataProvider extends AutoDisposeStreamProvider<BangData?> {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin BangDataRef on AutoDisposeStreamProviderRef<BangData?> {
|
||||
/// The parameter `trigger` of this provider.
|
||||
String? get trigger;
|
||||
@@ -155,7 +157,7 @@ class _BangDataProviderElement
|
||||
}
|
||||
|
||||
String _$kagiSearchBangDataHash() =>
|
||||
r'4dbeaab0541d7c8214d097523d139eede2e3f975';
|
||||
r'0bb5014a7af73ef6f5a36b0545d7a73e7ad0580a';
|
||||
|
||||
/// See also [kagiSearchBangData].
|
||||
@ProviderFor(kagiSearchBangData)
|
||||
@@ -169,8 +171,10 @@ final kagiSearchBangDataProvider = StreamProvider<BangData?>.internal(
|
||||
allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
typedef KagiSearchBangDataRef = StreamProviderRef<BangData?>;
|
||||
String _$bangCategoriesHash() => r'dbc63b78208be90c2aa3c3d61b08f98818f4b89d';
|
||||
String _$bangCategoriesHash() => r'947fcfd2dffcc7f585c6ed7379d319f4fe72293a';
|
||||
|
||||
/// See also [bangCategories].
|
||||
@ProviderFor(bangCategories)
|
||||
@@ -185,9 +189,11 @@ final bangCategoriesProvider =
|
||||
allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
typedef BangCategoriesRef
|
||||
= AutoDisposeStreamProviderRef<Map<String, List<String>>>;
|
||||
String _$bangDataListHash() => r'c4fbc1676be933b29ec88f503110c119fe8b6d86';
|
||||
String _$bangDataListHash() => r'cd034fdf046b156ac452edd0857ac054ab477917';
|
||||
|
||||
/// See also [bangDataList].
|
||||
@ProviderFor(bangDataList)
|
||||
@@ -317,6 +323,8 @@ class BangDataListProvider extends AutoDisposeStreamProvider<List<BangData>> {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin BangDataListRef on AutoDisposeStreamProviderRef<List<BangData>> {
|
||||
/// The parameter `filter` of this provider.
|
||||
({
|
||||
@@ -342,7 +350,7 @@ class _BangDataListProviderElement
|
||||
}
|
||||
|
||||
String _$frequentBangDataListHash() =>
|
||||
r'adf8d0b72adfa8faffadd7f1a294ce3945e22fec';
|
||||
r'27bc10ddf502266458af3910fff09bc8282a8e5c';
|
||||
|
||||
/// See also [frequentBangDataList].
|
||||
@ProviderFor(frequentBangDataList)
|
||||
@@ -357,9 +365,11 @@ final frequentBangDataListProvider =
|
||||
allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
typedef FrequentBangDataListRef = AutoDisposeStreamProviderRef<List<BangData>>;
|
||||
String _$bangDataEnsureIconHash() =>
|
||||
r'69b59b582a7b165b8076a1478d0d433ec0846ccb';
|
||||
r'423b8e92fd89ec328c2fcc8f9e55365c30633fd2';
|
||||
|
||||
/// See also [bangDataEnsureIcon].
|
||||
@ProviderFor(bangDataEnsureIcon)
|
||||
@@ -474,6 +484,8 @@ class BangDataEnsureIconProvider extends AutoDisposeFutureProvider<BangData> {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin BangDataEnsureIconRef on AutoDisposeFutureProviderRef<BangData> {
|
||||
/// The parameter `bang` of this provider.
|
||||
BangData get bang;
|
||||
@@ -488,7 +500,7 @@ class _BangDataEnsureIconProviderElement
|
||||
BangData get bang => (origin as BangDataEnsureIconProvider).bang;
|
||||
}
|
||||
|
||||
String _$lastSyncOfGroupHash() => r'4906dc24970eccda89d94697f98cf70e241ea4ec';
|
||||
String _$lastSyncOfGroupHash() => r'23d07f3132ba9bb35a31f74e3a69698d31d4c569';
|
||||
|
||||
/// See also [lastSyncOfGroup].
|
||||
@ProviderFor(lastSyncOfGroup)
|
||||
@@ -603,6 +615,8 @@ class LastSyncOfGroupProvider extends AutoDisposeStreamProvider<DateTime?> {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin LastSyncOfGroupRef on AutoDisposeStreamProviderRef<DateTime?> {
|
||||
/// The parameter `group` of this provider.
|
||||
BangGroup get group;
|
||||
@@ -617,7 +631,7 @@ class _LastSyncOfGroupProviderElement
|
||||
BangGroup get group => (origin as LastSyncOfGroupProvider).group;
|
||||
}
|
||||
|
||||
String _$bangCountOfGroupHash() => r'10b363679230c0abf6a6ba7d0be2d0367a7ed215';
|
||||
String _$bangCountOfGroupHash() => r'211ffcd7f49b637a7953f913dc5eafda344423f3';
|
||||
|
||||
/// See also [bangCountOfGroup].
|
||||
@ProviderFor(bangCountOfGroup)
|
||||
@@ -732,6 +746,8 @@ class BangCountOfGroupProvider extends AutoDisposeStreamProvider<int> {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin BangCountOfGroupRef on AutoDisposeStreamProviderRef<int> {
|
||||
/// The parameter `group` of this provider.
|
||||
BangGroup get group;
|
||||
@@ -746,7 +762,7 @@ class _BangCountOfGroupProviderElement
|
||||
}
|
||||
|
||||
String _$bangIconCacheSizeMegabytesHash() =>
|
||||
r'2199439f1b8a2692607231836769a10a24405181';
|
||||
r'e08bfdc7bb47a56c079464478f0b8b5516b2effe';
|
||||
|
||||
/// See also [bangIconCacheSizeMegabytes].
|
||||
@ProviderFor(bangIconCacheSizeMegabytes)
|
||||
@@ -761,6 +777,8 @@ final bangIconCacheSizeMegabytesProvider =
|
||||
allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
typedef BangIconCacheSizeMegabytesRef = AutoDisposeStreamProviderRef<double>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -24,4 +24,4 @@ final bangDataRepositoryProvider =
|
||||
|
||||
typedef _$BangDataRepository = Notifier<void>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -22,4 +22,4 @@ final bangSearchProvider =
|
||||
|
||||
typedef _$BangSearch = AutoDisposeStreamNotifier<List<BangData>>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -24,4 +24,4 @@ final bangSyncRepositoryProvider =
|
||||
|
||||
typedef _$BangSyncRepository = Notifier<void>;
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
Reference in New Issue
Block a user