mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-15 06:12:29 -06:00
Updated onboarding, reformatted files, improved referenced documents view, updated error handling
This commit is contained in:
@@ -4,7 +4,7 @@ import 'package:injectable/injectable.dart';
|
||||
|
||||
@singleton
|
||||
class CorrespondentCubit extends LabelCubit<Correspondent> {
|
||||
CorrespondentCubit(super.metaDataService);
|
||||
CorrespondentCubit(super.metaDataService, super.errorCubit);
|
||||
|
||||
@override
|
||||
Future<void> initialize() async {
|
||||
@@ -12,11 +12,14 @@ class CorrespondentCubit extends LabelCubit<Correspondent> {
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Correspondent> save(Correspondent item) => labelRepository.saveCorrespondent(item);
|
||||
Future<Correspondent> save(Correspondent item) =>
|
||||
labelRepository.saveCorrespondent(item);
|
||||
|
||||
@override
|
||||
Future<Correspondent> update(Correspondent item) => labelRepository.updateCorrespondent(item);
|
||||
Future<Correspondent> update(Correspondent item) =>
|
||||
labelRepository.updateCorrespondent(item);
|
||||
|
||||
@override
|
||||
Future<int> delete(Correspondent item) => labelRepository.deleteCorrespondent(item);
|
||||
Future<int> delete(Correspondent item) =>
|
||||
labelRepository.deleteCorrespondent(item);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:paperless_mobile/core/type/json.dart';
|
||||
import 'package:paperless_mobile/core/type/types.dart';
|
||||
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||
@@ -20,7 +20,8 @@ class Correspondent extends Label {
|
||||
});
|
||||
|
||||
Correspondent.fromJson(JSON json)
|
||||
: lastCorrespondence = DateTime.tryParse(json[lastCorrespondenceKey] ?? ''),
|
||||
: lastCorrespondence =
|
||||
DateTime.tryParse(json[lastCorrespondenceKey] ?? ''),
|
||||
super.fromJson(json);
|
||||
|
||||
@override
|
||||
|
||||
@@ -23,19 +23,16 @@ class EditCorrespondentPage extends StatelessWidget {
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _onDelete(Correspondent correspondent, BuildContext context) async {
|
||||
try {
|
||||
await BlocProvider.of<CorrespondentCubit>(context).remove(correspondent);
|
||||
final cubit = BlocProvider.of<DocumentsCubit>(context);
|
||||
if (cubit.state.filter.correspondent.id == correspondent.id) {
|
||||
cubit.updateFilter(
|
||||
filter: cubit.state.filter.copyWith(correspondent: const CorrespondentQuery.unset()),
|
||||
);
|
||||
}
|
||||
} on ErrorMessage catch (e) {
|
||||
showSnackBar(context, translateError(context, e.code));
|
||||
} finally {
|
||||
Navigator.pop(context);
|
||||
Future<void> _onDelete(
|
||||
Correspondent correspondent, BuildContext context) async {
|
||||
await BlocProvider.of<CorrespondentCubit>(context).remove(correspondent);
|
||||
final cubit = BlocProvider.of<DocumentsCubit>(context);
|
||||
if (cubit.state.filter.correspondent.id == correspondent.id) {
|
||||
cubit.updateFilter(
|
||||
filter: cubit.state.filter
|
||||
.copyWith(correspondent: const CorrespondentQuery.unset()),
|
||||
);
|
||||
}
|
||||
Navigator.pop(context);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,11 +46,13 @@ class CorrespondentWidget extends StatelessWidget {
|
||||
final cubit = BlocProvider.of<DocumentsCubit>(context);
|
||||
if (cubit.state.filter.correspondent.id == correspondentId) {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(correspondent: const CorrespondentQuery.unset()),
|
||||
(filter) =>
|
||||
filter.copyWith(correspondent: const CorrespondentQuery.unset()),
|
||||
);
|
||||
} else {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(correspondent: CorrespondentQuery.fromId(correspondentId)),
|
||||
(filter) => filter.copyWith(
|
||||
correspondent: CorrespondentQuery.fromId(correspondentId)),
|
||||
);
|
||||
}
|
||||
afterSelected?.call();
|
||||
|
||||
Reference in New Issue
Block a user