FEATURE download a document pdf file without uploading it to server

This commit is contained in:
konrad.lys@eu.equinix.com
2023-06-01 12:59:29 +02:00
parent 3161343c35
commit dc552dc4a7
5 changed files with 119 additions and 2 deletions

View File

@@ -5,6 +5,8 @@ import 'package:equatable/equatable.dart';
import 'package:flutter/foundation.dart';
import 'package:paperless_api/paperless_api.dart';
import 'package:paperless_mobile/core/repository/label_repository.dart';
import 'package:paperless_mobile/features/notifications/services/local_notification_service.dart';
import 'package:paperless_mobile/core/service/file_service.dart';
part 'document_upload_state.dart';
@@ -13,7 +15,9 @@ class DocumentUploadCubit extends Cubit<DocumentUploadState> {
final LabelRepository _labelRepository;
DocumentUploadCubit(this._labelRepository, this._documentApi)
final LocalNotificationService _notificationService;
DocumentUploadCubit(this._labelRepository, this._documentApi, this._notificationService)
: super(const DocumentUploadState()) {
_labelRepository.addListener(
this,
@@ -49,6 +53,18 @@ class DocumentUploadCubit extends Cubit<DocumentUploadState> {
);
}
Future<void> saveLocally(
Uint8List bytes, String fileName, String preferredLocaleSubtag
) async {
var file = await FileService.saveToFile(bytes, fileName);
_notificationService.notifyFileSaved(
filename: fileName,
filePath: file.path,
finished: true,
locale: preferredLocaleSubtag,
);
}
@override
Future<void> close() async {
_labelRepository.removeListener(this);