Add saveToDownloads

This commit is contained in:
Ashita Prasad
2024-12-09 04:45:28 +05:30
parent e96ca90c38
commit 79b12f4e4a
3 changed files with 35 additions and 22 deletions

View File

@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:apidash/utils/utils.dart';
import 'package:apidash/widgets/widgets.dart';
@ -20,3 +21,30 @@ Future<void> saveCollection(
sm.hideCurrentSnackBar();
sm.showSnackBar(getSnackBar(message, small: false));
}
Future<void> saveToDownloads(
ScaffoldMessengerState sm, {
Uint8List? content,
String? mimeType,
String? ext,
String? name,
}) async {
var message = "";
var path = await getFileDownloadpath(
name,
ext ?? getFileExtension(mimeType),
);
if (path != null) {
try {
await saveFile(path, content!);
var sp = getShortPath(path);
message = 'Saved to $sp';
} catch (e) {
message = "An error occurred while saving file.";
}
} else {
message = "Unable to determine the download path.";
}
sm.hideCurrentSnackBar();
sm.showSnackBar(getSnackBar(message, small: false));
}