From fc08a98532eed84db73e4193e7c02b3e8f0fe545 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Sat, 24 Feb 2024 01:06:34 +0100 Subject: refactor(frontend): improve save dialog label --- subprojects/frontend/src/utils/fileIO.ts | 26 ++++---------------------- 1 file changed, 4 insertions(+), 22 deletions(-) (limited to 'subprojects/frontend/src/utils') diff --git a/subprojects/frontend/src/utils/fileIO.ts b/subprojects/frontend/src/utils/fileIO.ts index abcc43eb..4f376882 100644 --- a/subprojects/frontend/src/utils/fileIO.ts +++ b/subprojects/frontend/src/utils/fileIO.ts @@ -7,28 +7,13 @@ export async function saveBlob( blob: Blob, name: string, - mimeType: string, - id?: string, + options: FilePickerOptions, ): Promise { if ('showSaveFilePicker' in window) { - const options: FilePickerOptions = { + const handle = await window.showSaveFilePicker({ + ...options, suggestedName: name, - }; - if (id !== undefined) { - options.id = id; - } - const extensionIndex = name.lastIndexOf('.'); - if (extensionIndex >= 0) { - options.types = [ - { - description: `${name.substring(extensionIndex + 1)} files`, - accept: { - [mimeType]: [name.substring(extensionIndex)], - }, - }, - ]; - } - const handle = await window.showSaveFilePicker(options); + }); const writable = await handle.createWritable(); try { await writable.write(blob); @@ -42,12 +27,9 @@ export async function saveBlob( try { link.href = url; link.download = name; - link.style.display = 'none'; - document.body.appendChild(link); link.click(); } finally { window.URL.revokeObjectURL(url); - document.body.removeChild(link); } } -- cgit v1.2.3-54-g00ecf