mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-14 18:12:24 -06:00
Changed saved views handling, changed repository structure with automatic persistence.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/repository/state/repository_state.dart';
|
||||
|
||||
part 'correspondent_repository_state.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class CorrespondentRepositoryState
|
||||
extends RepositoryState<Map<int, Correspondent>> {
|
||||
const CorrespondentRepositoryState({
|
||||
super.values = const {},
|
||||
super.hasLoaded,
|
||||
});
|
||||
|
||||
@override
|
||||
CorrespondentRepositoryState copyWith({
|
||||
Map<int, Correspondent>? values,
|
||||
bool? hasLoaded,
|
||||
}) {
|
||||
return CorrespondentRepositoryState(
|
||||
values: values ?? this.values,
|
||||
hasLoaded: hasLoaded ?? this.hasLoaded,
|
||||
);
|
||||
}
|
||||
|
||||
factory CorrespondentRepositoryState.fromJson(Map<String, dynamic> json) =>
|
||||
_$CorrespondentRepositoryStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$CorrespondentRepositoryStateToJson(this);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'correspondent_repository_state.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
CorrespondentRepositoryState _$CorrespondentRepositoryStateFromJson(
|
||||
Map<String, dynamic> json) =>
|
||||
CorrespondentRepositoryState(
|
||||
values: (json['values'] as Map<String, dynamic>?)?.map(
|
||||
(k, e) => MapEntry(int.parse(k),
|
||||
Correspondent.fromJson(e as Map<String, dynamic>)),
|
||||
) ??
|
||||
const {},
|
||||
hasLoaded: json['hasLoaded'] as bool? ?? false,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$CorrespondentRepositoryStateToJson(
|
||||
CorrespondentRepositoryState instance) =>
|
||||
<String, dynamic>{
|
||||
'values': instance.values.map((k, e) => MapEntry(k.toString(), e)),
|
||||
'hasLoaded': instance.hasLoaded,
|
||||
};
|
||||
@@ -0,0 +1,28 @@
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/repository/state/repository_state.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'document_type_repository_state.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class DocumentTypeRepositoryState
|
||||
extends RepositoryState<Map<int, DocumentType>> {
|
||||
const DocumentTypeRepositoryState({
|
||||
super.values = const {},
|
||||
super.hasLoaded,
|
||||
});
|
||||
|
||||
@override
|
||||
DocumentTypeRepositoryState copyWith(
|
||||
{Map<int, DocumentType>? values, bool? hasLoaded}) {
|
||||
return DocumentTypeRepositoryState(
|
||||
values: values ?? this.values,
|
||||
hasLoaded: hasLoaded ?? this.hasLoaded,
|
||||
);
|
||||
}
|
||||
|
||||
factory DocumentTypeRepositoryState.fromJson(Map<String, dynamic> json) =>
|
||||
_$DocumentTypeRepositoryStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$DocumentTypeRepositoryStateToJson(this);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'document_type_repository_state.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
DocumentTypeRepositoryState _$DocumentTypeRepositoryStateFromJson(
|
||||
Map<String, dynamic> json) =>
|
||||
DocumentTypeRepositoryState(
|
||||
values: (json['values'] as Map<String, dynamic>?)?.map(
|
||||
(k, e) => MapEntry(
|
||||
int.parse(k), DocumentType.fromJson(e as Map<String, dynamic>)),
|
||||
) ??
|
||||
const {},
|
||||
hasLoaded: json['hasLoaded'] as bool? ?? false,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$DocumentTypeRepositoryStateToJson(
|
||||
DocumentTypeRepositoryState instance) =>
|
||||
<String, dynamic>{
|
||||
'values': instance.values.map((k, e) => MapEntry(k.toString(), e)),
|
||||
'hasLoaded': instance.hasLoaded,
|
||||
};
|
||||
@@ -0,0 +1,29 @@
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/repository/state/repository_state.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'saved_view_repository_state.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class SavedViewRepositoryState extends RepositoryState<Map<int, SavedView>> {
|
||||
const SavedViewRepositoryState({
|
||||
super.values = const {},
|
||||
super.hasLoaded = false,
|
||||
});
|
||||
|
||||
@override
|
||||
SavedViewRepositoryState copyWith({
|
||||
Map<int, SavedView>? values,
|
||||
bool? hasLoaded,
|
||||
}) {
|
||||
return SavedViewRepositoryState(
|
||||
values: values ?? this.values,
|
||||
hasLoaded: hasLoaded ?? this.hasLoaded,
|
||||
);
|
||||
}
|
||||
|
||||
factory SavedViewRepositoryState.fromJson(Map<String, dynamic> json) =>
|
||||
_$SavedViewRepositoryStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$SavedViewRepositoryStateToJson(this);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'saved_view_repository_state.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
SavedViewRepositoryState _$SavedViewRepositoryStateFromJson(
|
||||
Map<String, dynamic> json) =>
|
||||
SavedViewRepositoryState(
|
||||
values: (json['values'] as Map<String, dynamic>?)?.map(
|
||||
(k, e) => MapEntry(
|
||||
int.parse(k), SavedView.fromJson(e as Map<String, dynamic>)),
|
||||
) ??
|
||||
const {},
|
||||
hasLoaded: json['hasLoaded'] as bool? ?? false,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$SavedViewRepositoryStateToJson(
|
||||
SavedViewRepositoryState instance) =>
|
||||
<String, dynamic>{
|
||||
'values': instance.values.map((k, e) => MapEntry(k.toString(), e)),
|
||||
'hasLoaded': instance.hasLoaded,
|
||||
};
|
||||
@@ -0,0 +1,28 @@
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/repository/state/repository_state.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'storage_path_repository_state.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class StoragePathRepositoryState
|
||||
extends RepositoryState<Map<int, StoragePath>> {
|
||||
const StoragePathRepositoryState({
|
||||
super.values = const {},
|
||||
super.hasLoaded = false,
|
||||
});
|
||||
|
||||
@override
|
||||
StoragePathRepositoryState copyWith(
|
||||
{Map<int, StoragePath>? values, bool? hasLoaded}) {
|
||||
return StoragePathRepositoryState(
|
||||
values: values ?? this.values,
|
||||
hasLoaded: hasLoaded ?? this.hasLoaded,
|
||||
);
|
||||
}
|
||||
|
||||
factory StoragePathRepositoryState.fromJson(Map<String, dynamic> json) =>
|
||||
_$StoragePathRepositoryStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$StoragePathRepositoryStateToJson(this);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'storage_path_repository_state.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
StoragePathRepositoryState _$StoragePathRepositoryStateFromJson(
|
||||
Map<String, dynamic> json) =>
|
||||
StoragePathRepositoryState(
|
||||
values: (json['values'] as Map<String, dynamic>?)?.map(
|
||||
(k, e) => MapEntry(
|
||||
int.parse(k), StoragePath.fromJson(e as Map<String, dynamic>)),
|
||||
) ??
|
||||
const {},
|
||||
hasLoaded: json['hasLoaded'] as bool? ?? false,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$StoragePathRepositoryStateToJson(
|
||||
StoragePathRepositoryState instance) =>
|
||||
<String, dynamic>{
|
||||
'values': instance.values.map((k, e) => MapEntry(k.toString(), e)),
|
||||
'hasLoaded': instance.hasLoaded,
|
||||
};
|
||||
26
lib/core/repository/state/impl/tag_repository_state.dart
Normal file
26
lib/core/repository/state/impl/tag_repository_state.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
import 'package:paperless_mobile/core/repository/state/repository_state.dart';
|
||||
|
||||
part 'tag_repository_state.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class TagRepositoryState extends RepositoryState<Map<int, Tag>> {
|
||||
const TagRepositoryState({
|
||||
super.values = const {},
|
||||
super.hasLoaded = false,
|
||||
});
|
||||
|
||||
@override
|
||||
TagRepositoryState copyWith({Map<int, Tag>? values, bool? hasLoaded}) {
|
||||
return TagRepositoryState(
|
||||
values: values ?? this.values,
|
||||
hasLoaded: hasLoaded ?? this.hasLoaded,
|
||||
);
|
||||
}
|
||||
|
||||
factory TagRepositoryState.fromJson(Map<String, dynamic> json) =>
|
||||
_$TagRepositoryStateFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$TagRepositoryStateToJson(this);
|
||||
}
|
||||
23
lib/core/repository/state/impl/tag_repository_state.g.dart
Normal file
23
lib/core/repository/state/impl/tag_repository_state.g.dart
Normal file
@@ -0,0 +1,23 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'tag_repository_state.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
TagRepositoryState _$TagRepositoryStateFromJson(Map<String, dynamic> json) =>
|
||||
TagRepositoryState(
|
||||
values: (json['values'] as Map<String, dynamic>?)?.map(
|
||||
(k, e) =>
|
||||
MapEntry(int.parse(k), Tag.fromJson(e as Map<String, dynamic>)),
|
||||
) ??
|
||||
const {},
|
||||
hasLoaded: json['hasLoaded'] as bool? ?? false,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$TagRepositoryStateToJson(TagRepositoryState instance) =>
|
||||
<String, dynamic>{
|
||||
'values': instance.values.map((k, e) => MapEntry(k.toString(), e)),
|
||||
'hasLoaded': instance.hasLoaded,
|
||||
};
|
||||
Reference in New Issue
Block a user