Implemented error reporting solution

This commit is contained in:
Anton Stubenbord
2022-11-14 00:08:07 +01:00
parent b5aac36b2b
commit 511f8ca3f4
33 changed files with 475 additions and 110 deletions

View File

@@ -234,8 +234,8 @@ class _DocumentDetailsPageState extends State<DocumentDetailsPage> {
Future<void> _assignAsn(DocumentModel document) async {
try {
await BlocProvider.of<DocumentsCubit>(context).assignAsn(document);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
@@ -409,8 +409,8 @@ class _DocumentDetailsPageState extends State<DocumentDetailsPage> {
try {
await BlocProvider.of<DocumentsCubit>(context).removeDocument(document);
showSnackBar(context, S.of(context).documentDeleteSuccessMessage);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
} finally {
Navigator.pop(context);
}

View File

@@ -80,8 +80,8 @@ class _DocumentEditPageState extends State<DocumentEditPage> {
try {
await getIt<DocumentsCubit>().updateDocument(updatedDocument);
showSnackBar(context, S.of(context).documentUpdateErrorMessage);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
} finally {
Navigator.pop(context);
}

View File

@@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:paperless_mobile/core/bloc/connectivity_cubit.dart';
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
import 'package:paperless_mobile/core/model/error_message.dart';
import 'package:paperless_mobile/core/service/github_issue_service.dart';
import 'package:paperless_mobile/core/widgets/offline_banner.dart';
import 'package:paperless_mobile/di_initializer.dart';
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
@@ -53,8 +54,8 @@ class _DocumentsPageState extends State<DocumentsPage> {
Future<void> _initDocuments() async {
try {
BlocProvider.of<DocumentsCubit>(context).loadDocuments();
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
@@ -73,9 +74,20 @@ class _DocumentsPageState extends State<DocumentsPage> {
}
try {
await documentsCubit.loadMore();
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
Future.delayed(const Duration(seconds: 1), () {
try {
throw ErrorMessage(ErrorCode.tagLoadFailed);
} on ErrorMessage catch (error, stackTrace) {
showError(
context,
error,
stackTrace,
);
}
});
}
void _onSelected(DocumentModel model) {
@@ -87,8 +99,8 @@ class _DocumentsPageState extends State<DocumentsPage> {
await BlocProvider.of<DocumentsCubit>(context).updateCurrentFilter(
(filter) => filter.copyWith(page: 1),
);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}

View File

@@ -536,8 +536,8 @@ class _DocumentFilterPanelState extends State<DocumentFilterPanel> {
BlocProvider.of<SavedViewCubit>(context).resetSelection();
FocusScope.of(context).unfocus();
widget.panelController.close();
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
}

View File

@@ -87,8 +87,8 @@ class _DocumentsPageAppBarState extends State<DocumentsPageAppBar> {
context,
S.of(context).documentsPageBulkDeleteSuccessfulText,
);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
}

View File

@@ -85,8 +85,8 @@ class SavedViewSelectionWidget extends StatelessWidget {
if (newView != null) {
try {
await BlocProvider.of<SavedViewCubit>(context).add(newView);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
}
@@ -102,8 +102,8 @@ class SavedViewSelectionWidget extends StatelessWidget {
BlocProvider.of<DocumentsCubit>(context).updateFilter();
BlocProvider.of<SavedViewCubit>(context).selectView(null);
}
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
@@ -117,8 +117,8 @@ class SavedViewSelectionWidget extends StatelessWidget {
if (delete) {
try {
BlocProvider.of<SavedViewCubit>(context).remove(view);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
}
}
}

View File

@@ -50,8 +50,8 @@ class _SortDocumentsButtonState extends State<SortDocumentsButton> {
sortOrder: state.filter.sortOrder.toggle(),
),
);
} on ErrorMessage catch (error) {
showError(context, error);
} on ErrorMessage catch (error, stackTrace) {
showError(context, error, stackTrace);
} finally {
setState(() => _isLoading = false);
}