improved tab & topic handling
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import 'dart:ui';
|
||||
|
||||
import 'package:lensai/features/topics/data/database/database.dart';
|
||||
import 'package:lensai/features/topics/data/models/topic_data.dart';
|
||||
import 'package:lensai/features/topics/data/providers.dart';
|
||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||
|
||||
@@ -11,8 +12,9 @@ class TopicRepository extends _$TopicRepository {
|
||||
late TabDatabase _db;
|
||||
|
||||
@override
|
||||
void build() {
|
||||
Stream<List<TopicDataWithCount>> build() {
|
||||
_db = ref.watch(tabDatabaseProvider);
|
||||
return _db.topicsWithCount().watch();
|
||||
}
|
||||
|
||||
Future<void> addTopic({required String? name, required Color color}) {
|
||||
@@ -31,18 +33,6 @@ class TopicRepository extends _$TopicRepository {
|
||||
return _db.topicDao.deleteTopic(id);
|
||||
}
|
||||
|
||||
Stream<List<TopicData>> watchTopics() {
|
||||
return _db.topics().watch();
|
||||
}
|
||||
|
||||
Stream<TopicData?> watchTopic(String? id) {
|
||||
if (id != null) {
|
||||
return _db.topicDao.getTopicData(id).watchSingleOrNull();
|
||||
} else {
|
||||
return Stream.value(null);
|
||||
}
|
||||
}
|
||||
|
||||
Future<Set<Color>> getDistinctColors() {
|
||||
return _db.topicDao
|
||||
.getDistinctColors()
|
||||
|
||||
Reference in New Issue
Block a user