aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/lib/ts/download.ts
diff options
context:
space:
mode:
authorMatt Strapp <matt@mattstrapp.net>2023-09-28 08:42:25 -0500
committerMatt Strapp <matt@mattstrapp.net>2023-09-28 08:42:25 -0500
commitef30f835d04038a1cbec06fbe35a70037e926cd6 (patch)
tree6cb29359fc05d6d96361c786886a8d442f3dbfc2 /app/src/lib/ts/download.ts
parentGet rid of crc32, truncate instead (diff)
downloadtrinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar.gz
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar.bz2
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar.lz
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar.xz
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.tar.zst
trinkets-ef30f835d04038a1cbec06fbe35a70037e926cd6.zip
Lint
Signed-off-by: Matt Strapp <matt@mattstrapp.net>
Diffstat (limited to '')
-rw-r--r--app/src/lib/ts/download.ts59
1 files changed, 30 insertions, 29 deletions
diff --git a/app/src/lib/ts/download.ts b/app/src/lib/ts/download.ts
index a6167d7..16712fb 100644
--- a/app/src/lib/ts/download.ts
+++ b/app/src/lib/ts/download.ts
@@ -1,33 +1,34 @@
// Yoinked from https://web.dev/patterns/files/save-a-file/ for the polyfill
export default async function saveFile(blob: ArrayBuffer, suggestedName: string | undefined) {
- const supportsFSAccess = 'showSaveFilePicker' in window &&
- (() => {
- try {
- return window.self === window.top;
- } catch {
- return false;
- }
- })();
+ const supportsFSAccess =
+ 'showSaveFilePicker' in window &&
+ (() => {
+ try {
+ return window.self === window.top;
+ } catch {
+ return false;
+ }
+ })();
- if (supportsFSAccess) {
- try {
- const handle = await window.showSaveFilePicker({
- suggestedName: suggestedName,
- })
- const writable = await handle.createWritable();
- await writable.write(blob);
- await writable.close();
- } catch (err: unknown) {
- // TypeScript
- if ((err as Error)?.name !== 'AbortError') {
- console.error(err);
- }
- }
- } else {
- const anchor = document.createElement('a');
- anchor.download = suggestedName ?? 'truncated';
- anchor.href = URL.createObjectURL(new Blob([blob]));
- anchor.click();
- }
-} \ No newline at end of file
+ if (supportsFSAccess) {
+ try {
+ const handle = await window.showSaveFilePicker({
+ suggestedName: suggestedName
+ });
+ const writable = await handle.createWritable();
+ await writable.write(blob);
+ await writable.close();
+ } catch (err: unknown) {
+ // TypeScript
+ if ((err as Error)?.name !== 'AbortError') {
+ console.error(err);
+ }
+ }
+ } else {
+ const anchor = document.createElement('a');
+ anchor.download = suggestedName ?? 'truncated';
+ anchor.href = URL.createObjectURL(new Blob([blob]));
+ anchor.click();
+ }
+}