mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-09 16:07:57 -06:00
Add migration scripts, remove dependencies to codegen, and cleanups
This commit is contained in:
@@ -12,10 +12,9 @@ import 'package:paperless_mobile/features/paged_document_view/cubit/document_pag
|
||||
import 'package:paperless_mobile/features/paged_document_view/cubit/paged_documents_state.dart';
|
||||
import 'package:paperless_mobile/features/settings/model/view_type.dart';
|
||||
|
||||
part 'documents_cubit.g.dart';
|
||||
part 'documents_state.dart';
|
||||
|
||||
class DocumentsCubit extends HydratedCubit<DocumentsState>
|
||||
class DocumentsCubit extends Cubit<DocumentsState>
|
||||
with DocumentPagingBlocMixin {
|
||||
@override
|
||||
final PaperlessDocumentsApi api;
|
||||
@@ -135,13 +134,13 @@ class DocumentsCubit extends HydratedCubit<DocumentsState>
|
||||
await _userState.save();
|
||||
}
|
||||
|
||||
@override
|
||||
DocumentsState? fromJson(Map<String, dynamic> json) {
|
||||
return DocumentsState.fromJson(json);
|
||||
}
|
||||
// @override
|
||||
// DocumentsState? fromJson(Map<String, dynamic> json) {
|
||||
// return DocumentsState.fromJson(json);
|
||||
// }
|
||||
|
||||
@override
|
||||
Map<String, dynamic>? toJson(DocumentsState state) {
|
||||
return state.toJson();
|
||||
}
|
||||
// @override
|
||||
// Map<String, dynamic>? toJson(DocumentsState state) {
|
||||
// return state.toJson();
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -1,17 +1,10 @@
|
||||
part of 'documents_cubit.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class DocumentsState extends DocumentPagingState {
|
||||
@JsonKey(includeToJson: false, includeFromJson: false)
|
||||
final List<DocumentModel> selection;
|
||||
|
||||
@JsonKey(includeToJson: false, includeFromJson: false)
|
||||
final Map<int, Correspondent> correspondents;
|
||||
@JsonKey(includeToJson: false, includeFromJson: false)
|
||||
final Map<int, DocumentType> documentTypes;
|
||||
@JsonKey(includeToJson: false, includeFromJson: false)
|
||||
final Map<int, Tag> tags;
|
||||
@JsonKey(includeToJson: false, includeFromJson: false)
|
||||
final Map<int, StoragePath> storagePaths;
|
||||
|
||||
final ViewType viewType;
|
||||
@@ -85,9 +78,4 @@ class DocumentsState extends DocumentPagingState {
|
||||
value: value,
|
||||
);
|
||||
}
|
||||
|
||||
factory DocumentsState.fromJson(Map<String, dynamic> json) =>
|
||||
_$DocumentsStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$DocumentsStateToJson(this);
|
||||
}
|
||||
|
||||
@@ -252,7 +252,8 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
cubit.resetSelection();
|
||||
return false;
|
||||
}
|
||||
if (cubit.state.filter.appliedFiltersCount > 0 || cubit.state.filter.selectedView != null) {
|
||||
if (cubit.state.filter.appliedFiltersCount > 0 ||
|
||||
cubit.state.filter.selectedView != null) {
|
||||
await _onResetFilter();
|
||||
return false;
|
||||
}
|
||||
@@ -512,8 +513,8 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
void _addTagToFilter(int tagId) {
|
||||
final cubit = context.read<DocumentsCubit>();
|
||||
try {
|
||||
cubit.state.filter.tags.maybeMap(
|
||||
ids: (state) {
|
||||
switch (cubit.state.filter.tags) {
|
||||
case IdsTagsQuery state:
|
||||
if (state.include.contains(tagId)) {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
@@ -541,13 +542,13 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
),
|
||||
);
|
||||
}
|
||||
},
|
||||
orElse: () {
|
||||
break;
|
||||
default:
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(tags: TagsQuery.ids(include: [tagId])),
|
||||
(filter) => filter.copyWith(tags: IdsTagsQuery(include: [tagId])),
|
||||
);
|
||||
},
|
||||
);
|
||||
break;
|
||||
}
|
||||
} on PaperlessApiException catch (error, stackTrace) {
|
||||
showErrorMessage(context, error, stackTrace);
|
||||
}
|
||||
@@ -558,27 +559,26 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
final cubit = context.read<DocumentsCubit>();
|
||||
|
||||
try {
|
||||
cubit.state.filter.correspondent.maybeWhen(
|
||||
fromId: (id) {
|
||||
switch (cubit.state.filter.correspondent) {
|
||||
case SetIdQueryParameter(id: var id):
|
||||
if (id == correspondentId) {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
correspondent: const IdQueryParameter.unset()),
|
||||
(filter) =>
|
||||
filter.copyWith(correspondent: const UnsetIdQueryParameter()),
|
||||
);
|
||||
} else {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
correspondent: IdQueryParameter.fromId(correspondentId)),
|
||||
correspondent: SetIdQueryParameter(id: correspondentId)),
|
||||
);
|
||||
}
|
||||
},
|
||||
orElse: () {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
correspondent: IdQueryParameter.fromId(correspondentId)),
|
||||
);
|
||||
},
|
||||
);
|
||||
break;
|
||||
default:
|
||||
cubit.updateCurrentFilter((filter) => filter.copyWith(
|
||||
correspondent: SetIdQueryParameter(id: correspondentId),
|
||||
));
|
||||
break;
|
||||
}
|
||||
} on PaperlessApiException catch (error, stackTrace) {
|
||||
showErrorMessage(context, error, stackTrace);
|
||||
}
|
||||
@@ -589,27 +589,27 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
final cubit = context.read<DocumentsCubit>();
|
||||
|
||||
try {
|
||||
cubit.state.filter.documentType.maybeWhen(
|
||||
fromId: (id) {
|
||||
switch (cubit.state.filter.documentType) {
|
||||
case SetIdQueryParameter(id: var id):
|
||||
if (id == documentTypeId) {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) =>
|
||||
filter.copyWith(documentType: const IdQueryParameter.unset()),
|
||||
filter.copyWith(documentType: const UnsetIdQueryParameter()),
|
||||
);
|
||||
} else {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
documentType: IdQueryParameter.fromId(documentTypeId)),
|
||||
documentType: SetIdQueryParameter(id: documentTypeId)),
|
||||
);
|
||||
}
|
||||
},
|
||||
orElse: () {
|
||||
break;
|
||||
default:
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) => filter.copyWith(
|
||||
documentType: IdQueryParameter.fromId(documentTypeId)),
|
||||
documentType: SetIdQueryParameter(id: documentTypeId)),
|
||||
);
|
||||
},
|
||||
);
|
||||
break;
|
||||
}
|
||||
} on PaperlessApiException catch (error, stackTrace) {
|
||||
showErrorMessage(context, error, stackTrace);
|
||||
}
|
||||
@@ -620,27 +620,28 @@ class _DocumentsPageState extends State<DocumentsPage> {
|
||||
final cubit = context.read<DocumentsCubit>();
|
||||
|
||||
try {
|
||||
cubit.state.filter.storagePath.maybeWhen(
|
||||
fromId: (id) {
|
||||
if (id == pathId) {
|
||||
switch (cubit.state.filter.storagePath){
|
||||
case SetIdQueryParameter(id: var id):
|
||||
if (id == pathId) {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) =>
|
||||
filter.copyWith(storagePath: const IdQueryParameter.unset()),
|
||||
filter.copyWith(storagePath: const UnsetIdQueryParameter()),
|
||||
);
|
||||
} else {
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) =>
|
||||
filter.copyWith(storagePath: IdQueryParameter.fromId(pathId)),
|
||||
filter.copyWith(storagePath: SetIdQueryParameter(id: pathId)),
|
||||
);
|
||||
}
|
||||
},
|
||||
orElse: () {
|
||||
cubit.updateCurrentFilter(
|
||||
break;
|
||||
default:
|
||||
cubit.updateCurrentFilter(
|
||||
(filter) =>
|
||||
filter.copyWith(storagePath: IdQueryParameter.fromId(pathId)),
|
||||
filter.copyWith(storagePath: SetIdQueryParameter(id: pathId)),
|
||||
);
|
||||
},
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
} on PaperlessApiException catch (error, stackTrace) {
|
||||
showErrorMessage(context, error, stackTrace);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user