···4//
5// This worker is responsible for everything non-UI.
67-import { } from "../index.d"
89// @ts-ignore
10import * as TaskPort from "elm-taskport"
···4//
5// This worker is responsible for everything non-UI.
67+import type { } from "../index.d"
89// @ts-ignore
10import * as TaskPort from "elm-taskport"
+5-5
src/Javascript/index.ts
···4// The bit where we launch the Elm app,
5// and connect the other bits to it.
67-import { } from "./index.d"
8-9import "tocca"
1011import type { Program as OddProgram } from "@oddjs/odd"
01213import { debounce } from "throttle-debounce"
14-import { saveAs } from "file-saver"
15-import JSZip from "jszip"
1617import * as audioEngine from "./audio-engine"
18import { db, fileExtension, ODD_CONFIG } from "./common"
···597// Downloading
598// -----------
599600-function downloadTracks(group) {
000601 const zip = new JSZip()
602 const folder = zip.folder("Diffuse - " + group.name)
603 if (!folder) throw new Error("Failed to create ZIP file")
···4// The bit where we launch the Elm app,
5// and connect the other bits to it.
6007import "tocca"
89import type { Program as OddProgram } from "@oddjs/odd"
10+import type { } from "./index.d"
1112import { debounce } from "throttle-debounce"
001314import * as audioEngine from "./audio-engine"
15import { db, fileExtension, ODD_CONFIG } from "./common"
···594// Downloading
595// -----------
596597+async function downloadTracks(group) {
598+ const { saveAs } = await import("file-saver").then(a => a.default)
599+ const JSZip = await import("jszip").then(a => a.default)
600+601 const zip = new JSZip()
602 const folder = zip.folder("Diffuse - " + group.name)
603 if (!folder) throw new Error("Failed to create ZIP file")