From 8fd8ef6472518f7c347594b58847ef06f0f8b8b6 Mon Sep 17 00:00:00 2001 From: Rizky Date: Sat, 27 Jul 2024 15:05:48 +0700 Subject: [PATCH] fix --- app/web/public_files.ts | 308 +++++++++++++++++++++---------- pkgs/core/build.ts | 23 +-- pkgs/core/server/serve-static.ts | 14 +- pkgs/core/utils/prisma.ts | 10 +- 4 files changed, 238 insertions(+), 117 deletions(-) diff --git a/app/web/public_files.ts b/app/web/public_files.ts index 3fb9b6ae..5cf9f941 100644 --- a/app/web/public_files.ts +++ b/app/web/public_files.ts @@ -1,6 +1,109 @@ export const files = [ "favicon.ico", - "monaco/min/vs/loader.js", + "img/empty.png", + "img/logo-white.png", + "img/logo.png", + "monaco/min/vs/basic-languages/postiats/postiats.js", + "monaco/min/vs/basic-languages/scheme/scheme.js", + "monaco/min/vs/basic-languages/sb/sb.js", + "monaco/min/vs/basic-languages/mdx/mdx.js", + "monaco/min/vs/basic-languages/pascal/pascal.js", + "monaco/min/vs/basic-languages/cameligo/cameligo.js", + "monaco/min/vs/basic-languages/razor/razor.js", + "monaco/min/vs/basic-languages/typespec/typespec.js", + "monaco/min/vs/basic-languages/powerquery/powerquery.js", + "monaco/min/vs/basic-languages/apex/apex.js", + "monaco/min/vs/basic-languages/go/go.js", + "monaco/min/vs/basic-languages/systemverilog/systemverilog.js", + "monaco/min/vs/basic-languages/sparql/sparql.js", + "monaco/min/vs/basic-languages/azcli/azcli.js", + "monaco/min/vs/basic-languages/python/python.js", + "monaco/min/vs/basic-languages/css/css.js", + "monaco/min/vs/basic-languages/clojure/clojure.js", + "monaco/min/vs/basic-languages/less/less.js", + "monaco/min/vs/basic-languages/elixir/elixir.js", + "monaco/min/vs/basic-languages/redis/redis.js", + "monaco/min/vs/basic-languages/lexon/lexon.js", + "monaco/min/vs/basic-languages/dockerfile/dockerfile.js", + "monaco/min/vs/basic-languages/dart/dart.js", + "monaco/min/vs/basic-languages/shell/shell.js", + "monaco/min/vs/basic-languages/markdown/markdown.js", + "monaco/min/vs/basic-languages/scss/scss.js", + "monaco/min/vs/basic-languages/sophia/sophia.js", + "monaco/min/vs/basic-languages/perl/perl.js", + "monaco/min/vs/basic-languages/typescript/typescript.js", + "monaco/min/vs/basic-languages/rust/rust.js", + "monaco/min/vs/basic-languages/pug/pug.js", + "monaco/min/vs/basic-languages/fsharp/fsharp.js", + "monaco/min/vs/basic-languages/r/r.js", + "monaco/min/vs/basic-languages/freemarker2/freemarker2.js", + "monaco/min/vs/basic-languages/liquid/liquid.js", + "monaco/min/vs/basic-languages/java/java.js", + "monaco/min/vs/basic-languages/html/html.js", + "monaco/min/vs/basic-languages/abap/abap.js", + "monaco/min/vs/basic-languages/kotlin/kotlin.js", + "monaco/min/vs/basic-languages/cypher/cypher.js", + "monaco/min/vs/basic-languages/php/php.js", + "monaco/min/vs/basic-languages/lua/lua.js", + "monaco/min/vs/basic-languages/xml/xml.js", + "monaco/min/vs/basic-languages/pascaligo/pascaligo.js", + "monaco/min/vs/basic-languages/solidity/solidity.js", + "monaco/min/vs/basic-languages/st/st.js", + "monaco/min/vs/basic-languages/redshift/redshift.js", + "monaco/min/vs/basic-languages/vb/vb.js", + "monaco/min/vs/basic-languages/powershell/powershell.js", + "monaco/min/vs/basic-languages/mips/mips.js", + "monaco/min/vs/basic-languages/pla/pla.js", + "monaco/min/vs/basic-languages/tcl/tcl.js", + "monaco/min/vs/basic-languages/ini/ini.js", + "monaco/min/vs/basic-languages/handlebars/handlebars.js", + "monaco/min/vs/basic-languages/scala/scala.js", + "monaco/min/vs/basic-languages/hcl/hcl.js", + "monaco/min/vs/basic-languages/cpp/cpp.js", + "monaco/min/vs/basic-languages/swift/swift.js", + "monaco/min/vs/basic-languages/graphql/graphql.js", + "monaco/min/vs/basic-languages/qsharp/qsharp.js", + "monaco/min/vs/basic-languages/mysql/mysql.js", + "monaco/min/vs/basic-languages/coffee/coffee.js", + "monaco/min/vs/basic-languages/csp/csp.js", + "monaco/min/vs/basic-languages/pgsql/pgsql.js", + "monaco/min/vs/basic-languages/m3/m3.js", + "monaco/min/vs/basic-languages/yaml/yaml.js", + "monaco/min/vs/basic-languages/csharp/csharp.js", + "monaco/min/vs/basic-languages/julia/julia.js", + "monaco/min/vs/basic-languages/bat/bat.js", + "monaco/min/vs/basic-languages/javascript/javascript.js", + "monaco/min/vs/basic-languages/bicep/bicep.js", + "monaco/min/vs/basic-languages/twig/twig.js", + "monaco/min/vs/basic-languages/msdax/msdax.js", + "monaco/min/vs/basic-languages/wgsl/wgsl.js", + "monaco/min/vs/basic-languages/restructuredtext/restructuredtext.js", + "monaco/min/vs/basic-languages/objective-c/objective-c.js", + "monaco/min/vs/basic-languages/protobuf/protobuf.js", + "monaco/min/vs/basic-languages/ecl/ecl.js", + "monaco/min/vs/basic-languages/ruby/ruby.js", + "monaco/min/vs/basic-languages/flow9/flow9.js", + "monaco/min/vs/basic-languages/sql/sql.js", + "monaco/min/vs/language/css/cssMode.js", + "monaco/min/vs/language/css/cssWorker.js", + "monaco/min/vs/language/typescript/tsWorker.js", + "monaco/min/vs/language/typescript/tsMode.js", + "monaco/min/vs/language/html/htmlMode.js", + "monaco/min/vs/language/html/htmlWorker.js", + "monaco/min/vs/language/json/jsonWorker.js", + "monaco/min/vs/language/json/jsonMode.js", + "monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf", + "monaco/min/vs/base/common/worker/simpleWorker.nls.it.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.es.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.fr.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.de.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.ja.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.ru.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.zh-cn.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.zh-tw.js", + "monaco/min/vs/base/common/worker/simpleWorker.nls.ko.js", + "monaco/min/vs/base/worker/workerMain.js", "monaco/min/vs/editor/editor.main.nls.ru.js", "monaco/min/vs/editor/editor.main.css", "monaco/min/vs/editor/editor.main.nls.ko.js", @@ -13,7 +116,101 @@ export const files = [ "monaco/min/vs/editor/editor.main.nls.es.js", "monaco/min/vs/editor/editor.main.nls.js", "monaco/min/vs/editor/editor.main.nls.fr.js", - "monaco/min/vs/base/worker/workerMain.js", + "monaco/min/vs/loader.js", + "favicon.ico", + "img/empty.png", + "img/logo-white.png", + "img/logo.png", + "monaco/min/vs/basic-languages/postiats/postiats.js", + "monaco/min/vs/basic-languages/scheme/scheme.js", + "monaco/min/vs/basic-languages/sb/sb.js", + "monaco/min/vs/basic-languages/mdx/mdx.js", + "monaco/min/vs/basic-languages/pascal/pascal.js", + "monaco/min/vs/basic-languages/cameligo/cameligo.js", + "monaco/min/vs/basic-languages/razor/razor.js", + "monaco/min/vs/basic-languages/typespec/typespec.js", + "monaco/min/vs/basic-languages/powerquery/powerquery.js", + "monaco/min/vs/basic-languages/apex/apex.js", + "monaco/min/vs/basic-languages/go/go.js", + "monaco/min/vs/basic-languages/systemverilog/systemverilog.js", + "monaco/min/vs/basic-languages/sparql/sparql.js", + "monaco/min/vs/basic-languages/azcli/azcli.js", + "monaco/min/vs/basic-languages/python/python.js", + "monaco/min/vs/basic-languages/css/css.js", + "monaco/min/vs/basic-languages/clojure/clojure.js", + "monaco/min/vs/basic-languages/less/less.js", + "monaco/min/vs/basic-languages/elixir/elixir.js", + "monaco/min/vs/basic-languages/redis/redis.js", + "monaco/min/vs/basic-languages/lexon/lexon.js", + "monaco/min/vs/basic-languages/dockerfile/dockerfile.js", + "monaco/min/vs/basic-languages/dart/dart.js", + "monaco/min/vs/basic-languages/shell/shell.js", + "monaco/min/vs/basic-languages/markdown/markdown.js", + "monaco/min/vs/basic-languages/scss/scss.js", + "monaco/min/vs/basic-languages/sophia/sophia.js", + "monaco/min/vs/basic-languages/perl/perl.js", + "monaco/min/vs/basic-languages/typescript/typescript.js", + "monaco/min/vs/basic-languages/rust/rust.js", + "monaco/min/vs/basic-languages/pug/pug.js", + "monaco/min/vs/basic-languages/fsharp/fsharp.js", + "monaco/min/vs/basic-languages/r/r.js", + "monaco/min/vs/basic-languages/freemarker2/freemarker2.js", + "monaco/min/vs/basic-languages/liquid/liquid.js", + "monaco/min/vs/basic-languages/java/java.js", + "monaco/min/vs/basic-languages/html/html.js", + "monaco/min/vs/basic-languages/abap/abap.js", + "monaco/min/vs/basic-languages/kotlin/kotlin.js", + "monaco/min/vs/basic-languages/cypher/cypher.js", + "monaco/min/vs/basic-languages/php/php.js", + "monaco/min/vs/basic-languages/lua/lua.js", + "monaco/min/vs/basic-languages/xml/xml.js", + "monaco/min/vs/basic-languages/pascaligo/pascaligo.js", + "monaco/min/vs/basic-languages/solidity/solidity.js", + "monaco/min/vs/basic-languages/st/st.js", + "monaco/min/vs/basic-languages/redshift/redshift.js", + "monaco/min/vs/basic-languages/vb/vb.js", + "monaco/min/vs/basic-languages/powershell/powershell.js", + "monaco/min/vs/basic-languages/mips/mips.js", + "monaco/min/vs/basic-languages/pla/pla.js", + "monaco/min/vs/basic-languages/tcl/tcl.js", + "monaco/min/vs/basic-languages/ini/ini.js", + "monaco/min/vs/basic-languages/handlebars/handlebars.js", + "monaco/min/vs/basic-languages/scala/scala.js", + "monaco/min/vs/basic-languages/hcl/hcl.js", + "monaco/min/vs/basic-languages/cpp/cpp.js", + "monaco/min/vs/basic-languages/swift/swift.js", + "monaco/min/vs/basic-languages/graphql/graphql.js", + "monaco/min/vs/basic-languages/qsharp/qsharp.js", + "monaco/min/vs/basic-languages/mysql/mysql.js", + "monaco/min/vs/basic-languages/coffee/coffee.js", + "monaco/min/vs/basic-languages/csp/csp.js", + "monaco/min/vs/basic-languages/pgsql/pgsql.js", + "monaco/min/vs/basic-languages/m3/m3.js", + "monaco/min/vs/basic-languages/yaml/yaml.js", + "monaco/min/vs/basic-languages/csharp/csharp.js", + "monaco/min/vs/basic-languages/julia/julia.js", + "monaco/min/vs/basic-languages/bat/bat.js", + "monaco/min/vs/basic-languages/javascript/javascript.js", + "monaco/min/vs/basic-languages/bicep/bicep.js", + "monaco/min/vs/basic-languages/twig/twig.js", + "monaco/min/vs/basic-languages/msdax/msdax.js", + "monaco/min/vs/basic-languages/wgsl/wgsl.js", + "monaco/min/vs/basic-languages/restructuredtext/restructuredtext.js", + "monaco/min/vs/basic-languages/objective-c/objective-c.js", + "monaco/min/vs/basic-languages/protobuf/protobuf.js", + "monaco/min/vs/basic-languages/ecl/ecl.js", + "monaco/min/vs/basic-languages/ruby/ruby.js", + "monaco/min/vs/basic-languages/flow9/flow9.js", + "monaco/min/vs/basic-languages/sql/sql.js", + "monaco/min/vs/language/css/cssMode.js", + "monaco/min/vs/language/css/cssWorker.js", + "monaco/min/vs/language/typescript/tsWorker.js", + "monaco/min/vs/language/typescript/tsMode.js", + "monaco/min/vs/language/html/htmlMode.js", + "monaco/min/vs/language/html/htmlWorker.js", + "monaco/min/vs/language/json/jsonWorker.js", + "monaco/min/vs/language/json/jsonMode.js", + "monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf", "monaco/min/vs/base/common/worker/simpleWorker.nls.it.js", "monaco/min/vs/base/common/worker/simpleWorker.nls.es.js", "monaco/min/vs/base/common/worker/simpleWorker.nls.fr.js", @@ -24,97 +221,18 @@ export const files = [ "monaco/min/vs/base/common/worker/simpleWorker.nls.zh-cn.js", "monaco/min/vs/base/common/worker/simpleWorker.nls.zh-tw.js", "monaco/min/vs/base/common/worker/simpleWorker.nls.ko.js", - "monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf", - "monaco/min/vs/language/json/jsonWorker.js", - "monaco/min/vs/language/json/jsonMode.js", - "monaco/min/vs/language/html/htmlMode.js", - "monaco/min/vs/language/html/htmlWorker.js", - "monaco/min/vs/language/typescript/tsWorker.js", - "monaco/min/vs/language/typescript/tsMode.js", - "monaco/min/vs/language/css/cssMode.js", - "monaco/min/vs/language/css/cssWorker.js", - "monaco/min/vs/basic-languages/sql/sql.js", - "monaco/min/vs/basic-languages/flow9/flow9.js", - "monaco/min/vs/basic-languages/ruby/ruby.js", - "monaco/min/vs/basic-languages/ecl/ecl.js", - "monaco/min/vs/basic-languages/protobuf/protobuf.js", - "monaco/min/vs/basic-languages/objective-c/objective-c.js", - "monaco/min/vs/basic-languages/restructuredtext/restructuredtext.js", - "monaco/min/vs/basic-languages/wgsl/wgsl.js", - "monaco/min/vs/basic-languages/msdax/msdax.js", - "monaco/min/vs/basic-languages/twig/twig.js", - "monaco/min/vs/basic-languages/bicep/bicep.js", - "monaco/min/vs/basic-languages/javascript/javascript.js", - "monaco/min/vs/basic-languages/bat/bat.js", - "monaco/min/vs/basic-languages/julia/julia.js", - "monaco/min/vs/basic-languages/csharp/csharp.js", - "monaco/min/vs/basic-languages/yaml/yaml.js", - "monaco/min/vs/basic-languages/m3/m3.js", - "monaco/min/vs/basic-languages/pgsql/pgsql.js", - "monaco/min/vs/basic-languages/csp/csp.js", - "monaco/min/vs/basic-languages/coffee/coffee.js", - "monaco/min/vs/basic-languages/mysql/mysql.js", - "monaco/min/vs/basic-languages/qsharp/qsharp.js", - "monaco/min/vs/basic-languages/graphql/graphql.js", - "monaco/min/vs/basic-languages/swift/swift.js", - "monaco/min/vs/basic-languages/cpp/cpp.js", - "monaco/min/vs/basic-languages/hcl/hcl.js", - "monaco/min/vs/basic-languages/scala/scala.js", - "monaco/min/vs/basic-languages/handlebars/handlebars.js", - "monaco/min/vs/basic-languages/ini/ini.js", - "monaco/min/vs/basic-languages/tcl/tcl.js", - "monaco/min/vs/basic-languages/pla/pla.js", - "monaco/min/vs/basic-languages/mips/mips.js", - "monaco/min/vs/basic-languages/powershell/powershell.js", - "monaco/min/vs/basic-languages/vb/vb.js", - "monaco/min/vs/basic-languages/redshift/redshift.js", - "monaco/min/vs/basic-languages/st/st.js", - "monaco/min/vs/basic-languages/solidity/solidity.js", - "monaco/min/vs/basic-languages/pascaligo/pascaligo.js", - "monaco/min/vs/basic-languages/xml/xml.js", - "monaco/min/vs/basic-languages/lua/lua.js", - "monaco/min/vs/basic-languages/php/php.js", - "monaco/min/vs/basic-languages/cypher/cypher.js", - "monaco/min/vs/basic-languages/kotlin/kotlin.js", - "monaco/min/vs/basic-languages/abap/abap.js", - "monaco/min/vs/basic-languages/html/html.js", - "monaco/min/vs/basic-languages/java/java.js", - "monaco/min/vs/basic-languages/liquid/liquid.js", - "monaco/min/vs/basic-languages/freemarker2/freemarker2.js", - "monaco/min/vs/basic-languages/r/r.js", - "monaco/min/vs/basic-languages/fsharp/fsharp.js", - "monaco/min/vs/basic-languages/pug/pug.js", - "monaco/min/vs/basic-languages/rust/rust.js", - "monaco/min/vs/basic-languages/typescript/typescript.js", - "monaco/min/vs/basic-languages/perl/perl.js", - "monaco/min/vs/basic-languages/sophia/sophia.js", - "monaco/min/vs/basic-languages/scss/scss.js", - "monaco/min/vs/basic-languages/markdown/markdown.js", - "monaco/min/vs/basic-languages/shell/shell.js", - "monaco/min/vs/basic-languages/dart/dart.js", - "monaco/min/vs/basic-languages/dockerfile/dockerfile.js", - "monaco/min/vs/basic-languages/lexon/lexon.js", - "monaco/min/vs/basic-languages/redis/redis.js", - "monaco/min/vs/basic-languages/elixir/elixir.js", - "monaco/min/vs/basic-languages/less/less.js", - "monaco/min/vs/basic-languages/clojure/clojure.js", - "monaco/min/vs/basic-languages/css/css.js", - "monaco/min/vs/basic-languages/python/python.js", - "monaco/min/vs/basic-languages/azcli/azcli.js", - "monaco/min/vs/basic-languages/sparql/sparql.js", - "monaco/min/vs/basic-languages/systemverilog/systemverilog.js", - "monaco/min/vs/basic-languages/go/go.js", - "monaco/min/vs/basic-languages/apex/apex.js", - "monaco/min/vs/basic-languages/powerquery/powerquery.js", - "monaco/min/vs/basic-languages/typespec/typespec.js", - "monaco/min/vs/basic-languages/razor/razor.js", - "monaco/min/vs/basic-languages/cameligo/cameligo.js", - "monaco/min/vs/basic-languages/pascal/pascal.js", - "monaco/min/vs/basic-languages/mdx/mdx.js", - "monaco/min/vs/basic-languages/sb/sb.js", - "monaco/min/vs/basic-languages/scheme/scheme.js", - "monaco/min/vs/basic-languages/postiats/postiats.js", - "img/empty.png", - "img/logo-white.png", - "img/logo.png" + "monaco/min/vs/base/worker/workerMain.js", + "monaco/min/vs/editor/editor.main.nls.ru.js", + "monaco/min/vs/editor/editor.main.css", + "monaco/min/vs/editor/editor.main.nls.ko.js", + "monaco/min/vs/editor/editor.main.nls.zh-cn.js", + "monaco/min/vs/editor/editor.main.js", + "monaco/min/vs/editor/editor.main.nls.ja.js", + "monaco/min/vs/editor/editor.main.nls.zh-tw.js", + "monaco/min/vs/editor/editor.main.nls.de.js", + "monaco/min/vs/editor/editor.main.nls.it.js", + "monaco/min/vs/editor/editor.main.nls.es.js", + "monaco/min/vs/editor/editor.main.nls.js", + "monaco/min/vs/editor/editor.main.nls.fr.js", + "monaco/min/vs/loader.js" ] \ No newline at end of file diff --git a/pkgs/core/build.ts b/pkgs/core/build.ts index a2afd8c0..86220fe0 100644 --- a/pkgs/core/build.ts +++ b/pkgs/core/build.ts @@ -133,18 +133,19 @@ if (build_all) { public_files.map(async (file) => { public_files.push(file); - const br = brotli.compress( - new Uint8Array( - await Bun.file(dir.path(`app/web/public/${file}`)).arrayBuffer() - ), - { quality: 11 } - ); - if (br) { - console.log(`Compressing [public] ${file}`); - await writeAsync( - dir.path(`app/web/public-br/${file}`), - Buffer.from(br) + const bfile = Bun.file(dir.path(`app/web/public/${file}`)); + if (!(await bfile.exists())) { + const br = brotli.compress( + new Uint8Array(await bfile.arrayBuffer()), + { quality: 11 } ); + if (br) { + console.log(`Compressing [public] ${file}`); + await writeAsync( + dir.path(`app/web/public-br/${file}`), + Buffer.from(br) + ); + } } }) ); diff --git a/pkgs/core/server/serve-static.ts b/pkgs/core/server/serve-static.ts index 2499e5d4..845753aa 100644 --- a/pkgs/core/server/serve-static.ts +++ b/pkgs/core/server/serve-static.ts @@ -95,13 +95,15 @@ export const serveStatic = { if (url.pathname.endsWith(".js")) { return new Response( ` -// ${url.pathname} not found, just reload the page +console.warn("${url.pathname} not found, force reloading for clearing cache.") navigator.serviceWorker.getRegistration().then(function(reg) { - if (reg) { - reg.unregister().then(function() { window.location.reload(); }); - } else { - window.location.reload(); - } + setTimeout(() => { + if (reg) { + reg.unregister().then(function() { window.location.reload(); }); + } else { + window.location.reload(); + } + }, 2000); }); `, { diff --git a/pkgs/core/utils/prisma.ts b/pkgs/core/utils/prisma.ts index 7060f835..bf098947 100644 --- a/pkgs/core/utils/prisma.ts +++ b/pkgs/core/utils/prisma.ts @@ -8,11 +8,11 @@ export const preparePrisma = async () => { (await existsAsync(dir.path("app/db/.env"))) || process.env.DATABASE_URL ) { - if (g.mode === "prod" && exists(dir.path("app/static-br"))) { - g.log.info("Prisma: db pull & generate"); - await $({ cwd: dir.path(`app/db`) })`bun prisma db pull`; - await $({ cwd: dir.path(`app/db`) })`bun prisma generate`; - } + // if (g.mode === "prod" && exists(dir.path("app/static-br"))) { + // g.log.info("Prisma: db pull & generate"); + // await $({ cwd: dir.path(`app/db`) })`bun prisma db pull`; + // await $({ cwd: dir.path(`app/db`) })`bun prisma generate`; + // } const { PrismaClient } = await import("../../../app/db/db"); g._db = new PrismaClient();