mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2026-01-31 20:24:53 -06:00
feat: Add improved date input, fix bugs, restructurings
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import 'package:collection/collection.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:paperless_api/paperless_api.dart';
|
||||
|
||||
extension DocumentModelIterableExtension on Iterable<DocumentModel> {
|
||||
Iterable<int> get ids => map((e) => e.id);
|
||||
|
||||
Iterable<DocumentModel> withDocumentreplaced(DocumentModel document) {
|
||||
return map((e) => e.id == document.id ? document : e);
|
||||
}
|
||||
|
||||
bool containsDocument(DocumentModel document) {
|
||||
return ids.contains(document.id);
|
||||
}
|
||||
|
||||
Iterable<DocumentModel> withDocumentRemoved(DocumentModel document) {
|
||||
return whereNot((element) => element.id == document.id);
|
||||
}
|
||||
}
|
||||
|
||||
extension SessionAwareDownloadIdExtension on DocumentModel {
|
||||
String buildThumbnailUrl(BuildContext context) =>
|
||||
context.read<PaperlessDocumentsApi>().getThumbnailUrl(id);
|
||||
}
|
||||
Reference in New Issue
Block a user