mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-15 06:12:29 -06:00
Cleaned up code, implemented message queue to notify subscribers of document updates.
This commit is contained in:
@@ -34,7 +34,9 @@ class SavedViewCubit extends Cubit<SavedViewState> {
|
||||
Future<void> initialize() async {
|
||||
final views = await _repository.findAll();
|
||||
final values = {for (var element in views) element.id!: element};
|
||||
emit(SavedViewState(value: values, hasLoaded: true));
|
||||
if (!isClosed) {
|
||||
emit(SavedViewState(value: values, hasLoaded: true));
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> reload() => initialize();
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'package:bloc/bloc.dart';
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/notifier/document_changed_notifier.dart';
|
||||
import 'package:paperless_mobile/features/paged_document_view/model/paged_documents_state.dart';
|
||||
import 'package:paperless_mobile/features/paged_document_view/paged_documents_mixin.dart';
|
||||
|
||||
@@ -10,11 +11,20 @@ class SavedViewDetailsCubit extends Cubit<SavedViewDetailsState>
|
||||
@override
|
||||
final PaperlessDocumentsApi api;
|
||||
|
||||
@override
|
||||
final DocumentChangedNotifier notifier;
|
||||
|
||||
final SavedView savedView;
|
||||
SavedViewDetailsCubit(
|
||||
this.api, {
|
||||
this.api,
|
||||
this.notifier, {
|
||||
required this.savedView,
|
||||
}) : super(const SavedViewDetailsState()) {
|
||||
notifier.subscribe(
|
||||
this,
|
||||
onDeleted: remove,
|
||||
onUpdated: replace,
|
||||
);
|
||||
updateFilter(filter: savedView.toDocumentFilter());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user