Reputation: 3
I've got the following bit of code that works for opening a base64 file by first caching it, and then opening it. I'm wondering if there is a way to preview it without caching it locally.
import { Filesystem, Directory } from '@capacitor/filesystem';
import { FileOpener } from '@capacitor-community/file-opener';
export type PreviewFileOptions = {
fileName: string;
contentType: string;
base64Str: string;
};
async function previewFile(args: PreviewFileOptions): Promise<void> {
try {
const response = await Filesystem.writeFile({
path: args.fileName,
data: args.base64Str,
directory: Directory.Cache,
recursive: true,
});
await FileOpener.open({
filePath: response.uri,
contentType: args.contentType,
openWithDefault: true,
});
} catch (e) {
// handle error
}
}
Upvotes: 0
Views: 28