summaryrefslogtreecommitdiff
path: root/client-web/watch-builder.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client-web/watch-builder.ts')
-rw-r--r--client-web/watch-builder.ts36
1 files changed, 0 insertions, 36 deletions
diff --git a/client-web/watch-builder.ts b/client-web/watch-builder.ts
deleted file mode 100644
index 05871e1..0000000
--- a/client-web/watch-builder.ts
+++ /dev/null
@@ -1,36 +0,0 @@
-
-// `emit` uses fetch to *download* was, that is just stupid
-// import { bundle } from "https://deno.land/x/emit@0.1.1/mod.ts";
-
-// instead, lets run `deno bundle` manually
-
-async function bundle(entry: string, options: { compilerOptions: { checkJs: boolean } }) {
- const proc = Deno.run({ cmd: ["deno", "bundle", options.compilerOptions.checkJs ? "--check" : "--no-check", "--unstable", entry], stdout: "piped" })
- const out = await proc.output()
- const code = new TextDecoder().decode(out)
- return { code }
-}
-
-let refresh_needed = false
-let refresh_pending = false
-async function refresh() {
- refresh_needed = true
- if (refresh_pending) return
- refresh_needed = false
- refresh_pending = true
-
- try {
- const { code } = await bundle("source/index.ts", { compilerOptions: { checkJs: false } })
- await Deno.writeTextFile("public/assets/bundle.js", code)
- } catch (e) { console.error(e) }
-
- refresh_pending = false
- if (refresh_needed) refresh()
-}
-
-refresh()
-for await (const event of Deno.watchFs("source")) {
- if (event.kind == "modify" || event.kind == "create") {
- refresh()
- }
-}