mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-09 08:08:14 -06:00
fix: Add custom fields, translations, add app logs to login routes
This commit is contained in:
@@ -6,7 +6,6 @@ import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/features/logging/data/logger.dart';
|
||||
import 'package:paperless_mobile/core/notifier/document_changed_notifier.dart';
|
||||
import 'package:paperless_mobile/core/repository/label_repository.dart';
|
||||
import 'package:paperless_mobile/core/repository/label_repository_state.dart';
|
||||
import 'package:paperless_mobile/core/service/connectivity_status_service.dart';
|
||||
import 'package:paperless_mobile/features/paged_document_view/cubit/document_paging_bloc_mixin.dart';
|
||||
import 'package:paperless_mobile/features/paged_document_view/cubit/paged_documents_state.dart';
|
||||
@@ -37,7 +36,7 @@ class InboxCubit extends HydratedCubit<InboxState>
|
||||
this._labelRepository,
|
||||
this.notifier,
|
||||
this.connectivityStatusService,
|
||||
) : super(InboxState(labels: _labelRepository.state)) {
|
||||
) : super(const InboxState()) {
|
||||
notifier.addListener(
|
||||
this,
|
||||
onDeleted: remove,
|
||||
@@ -62,12 +61,6 @@ class InboxCubit extends HydratedCubit<InboxState>
|
||||
}
|
||||
},
|
||||
);
|
||||
_labelRepository.addListener(
|
||||
this,
|
||||
onChanged: (labels) {
|
||||
emit(state.copyWith(labels: labels));
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -112,7 +105,7 @@ class InboxCubit extends HydratedCubit<InboxState>
|
||||
|
||||
if (inboxTags.isEmpty) {
|
||||
// no inbox tags = no inbox items.
|
||||
return emit(
|
||||
return emit(
|
||||
state.copyWith(
|
||||
hasLoaded: true,
|
||||
value: [],
|
||||
@@ -256,7 +249,6 @@ class InboxCubit extends HydratedCubit<InboxState>
|
||||
|
||||
@override
|
||||
Future<void> close() {
|
||||
_labelRepository.removeListener(this);
|
||||
return super.close();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,8 +4,6 @@ part of 'inbox_cubit.dart';
|
||||
class InboxState extends DocumentPagingState {
|
||||
final Iterable<int> inboxTags;
|
||||
|
||||
final LabelRepositoryState labels;
|
||||
|
||||
final int itemsInInboxCount;
|
||||
|
||||
@JsonKey()
|
||||
@@ -19,7 +17,6 @@ class InboxState extends DocumentPagingState {
|
||||
this.inboxTags = const [],
|
||||
this.isHintAcknowledged = false,
|
||||
this.itemsInInboxCount = 0,
|
||||
this.labels = const LabelRepositoryState(),
|
||||
});
|
||||
|
||||
@override
|
||||
@@ -32,7 +29,6 @@ class InboxState extends DocumentPagingState {
|
||||
documents,
|
||||
isHintAcknowledged,
|
||||
itemsInInboxCount,
|
||||
labels,
|
||||
];
|
||||
|
||||
InboxState copyWith({
|
||||
@@ -42,7 +38,6 @@ class InboxState extends DocumentPagingState {
|
||||
List<PagedSearchResult<DocumentModel>>? value,
|
||||
DocumentFilter? filter,
|
||||
bool? isHintAcknowledged,
|
||||
LabelRepositoryState? labels,
|
||||
Map<int, FieldSuggestions>? suggestions,
|
||||
int? itemsInInboxCount,
|
||||
}) {
|
||||
@@ -52,7 +47,6 @@ class InboxState extends DocumentPagingState {
|
||||
value: value ?? super.value,
|
||||
inboxTags: inboxTags ?? this.inboxTags,
|
||||
isHintAcknowledged: isHintAcknowledged ?? this.isHintAcknowledged,
|
||||
labels: labels ?? this.labels,
|
||||
filter: filter ?? super.filter,
|
||||
itemsInInboxCount: itemsInInboxCount ?? this.itemsInInboxCount,
|
||||
);
|
||||
|
||||
@@ -4,6 +4,8 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/database/tables/local_user_account.dart';
|
||||
import 'package:paperless_mobile/core/extensions/document_extensions.dart';
|
||||
import 'package:paperless_mobile/core/repository/label_repository.dart';
|
||||
import 'package:paperless_mobile/core/util/lambda_utils.dart';
|
||||
import 'package:paperless_mobile/core/widgets/shimmer_placeholder.dart';
|
||||
import 'package:paperless_mobile/core/workarounds/colored_chip.dart';
|
||||
import 'package:paperless_mobile/core/extensions/flutter_extensions.dart';
|
||||
@@ -148,6 +150,7 @@ class _InboxItemState extends State<InboxItem> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final labelRepository = context.read<LabelRepository>();
|
||||
return BlocBuilder<InboxCubit, InboxState>(
|
||||
builder: (context, state) {
|
||||
return GestureDetector(
|
||||
@@ -193,7 +196,7 @@ class _InboxItemState extends State<InboxItem> {
|
||||
?.fontSize,
|
||||
),
|
||||
LabelText<Correspondent>(
|
||||
label: state.labels.correspondents[
|
||||
label: labelRepository.correspondents[
|
||||
widget.document.correspondent],
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
placeholder: "-",
|
||||
@@ -208,7 +211,7 @@ class _InboxItemState extends State<InboxItem> {
|
||||
?.fontSize,
|
||||
),
|
||||
LabelText<DocumentType>(
|
||||
label: state.labels.documentTypes[
|
||||
label: labelRepository.documentTypes[
|
||||
widget.document.documentType],
|
||||
style: Theme.of(context).textTheme.bodyMedium,
|
||||
placeholder: "-",
|
||||
@@ -217,8 +220,8 @@ class _InboxItemState extends State<InboxItem> {
|
||||
const Spacer(),
|
||||
TagsWidget(
|
||||
tags: widget.document.tags
|
||||
.map((e) => state.labels.tags[e])
|
||||
.whereNot((e) => e == null)
|
||||
.map((e) => labelRepository.tags[e])
|
||||
.where(isNotNull)
|
||||
.toList()
|
||||
.cast<Tag>(),
|
||||
isClickable: false,
|
||||
|
||||
Reference in New Issue
Block a user