diff --git a/app/srv/api/flow.ts b/app/srv/api/flow.ts new file mode 100644 index 00000000..45c10b63 --- /dev/null +++ b/app/srv/api/flow.ts @@ -0,0 +1,9 @@ +import { apiContext } from "service-srv"; + +export const _ = { + url: "/_flow", + async api(opt: { action: "load"; page_id: string }) { + const { req, res } = apiContext(this); + return "This is flow.ts"; + }, +}; diff --git a/app/srv/package.json b/app/srv/package.json index 37a72e01..74d73dee 100644 --- a/app/srv/package.json +++ b/app/srv/package.json @@ -9,8 +9,8 @@ "@parcel/watcher": "^2.4.1", "@types/lodash.isequal": "^4.5.8", "@types/mime-types": "^2.1.4", - "esbuild": "^0.21.5", - "esbuild-clean-plugin": "^1.0.0", + "del": "^7.1.0", + "esbuild": "^0.23.1", "lodash.isequal": "^4.5.0", "mime-types": "^2.1.35", "msgpackr": "^1.10.0", diff --git a/app/srv/ws/sync/code/parts/init/frontend.ts b/app/srv/ws/sync/code/parts/init/frontend.ts index 2925d157..54a0d876 100644 --- a/app/srv/ws/sync/code/parts/init/frontend.ts +++ b/app/srv/ws/sync/code/parts/init/frontend.ts @@ -3,7 +3,6 @@ import style from "@hyrious/esbuild-plugin-style"; import { $ } from "bun"; import { dir } from "dir"; import { context, formatMessages } from "esbuild"; -import { cleanPlugin } from "esbuild-clean-plugin"; import { existsAsync } from "fs-jetpack"; import { appendFile } from "node:fs/promises"; import { conns } from "../../../entity/conn"; @@ -12,6 +11,7 @@ import { sendWS } from "../../../sync-handler"; import { SyncType } from "../../../type"; import { code } from "../../code"; import { Watcher } from "../watcher"; +import { cleanPlugin } from "../../utlis/esbuild-clean-plugin"; const pending = {} as any; export const initFrontEnd = async ( diff --git a/app/srv/ws/sync/code/utlis/esbuild-clean-plugin.ts b/app/srv/ws/sync/code/utlis/esbuild-clean-plugin.ts new file mode 100644 index 00000000..62b56d66 --- /dev/null +++ b/app/srv/ws/sync/code/utlis/esbuild-clean-plugin.ts @@ -0,0 +1,133 @@ +import { deleteSync } from "del"; +import type { BuildOptions, BuildResult, Plugin } from "esbuild"; +import path from "node:path"; + +export type PluginOptions = { + dry?: boolean; + initialCleanPatterns?: string[]; + verbose?: boolean; +}; + +export class CleanPlugin { + private previousAssets: string[] = []; + + public constructor( + private pluginOptions: PluginOptions, + private buildOptions: BuildOptions + ) { + this.pluginOptions = { + dry: false, + initialCleanPatterns: ["**/*"], + verbose: false, + ...pluginOptions, + }; + } + + public handleBuild(result: BuildResult): void { + const { outputs } = result.metafile ?? {}; + + if (!outputs) { + return; + } + + const outputFiles = Object.keys(outputs); + const removePatterns = this.previousAssets + .filter((asset) => { + return !outputFiles.includes(asset); + }) + .map((asset) => { + return path.basename(asset); + }); + + this.previousAssets = outputFiles; + + try { + this.removeFiles(removePatterns); + } catch (e) { + const message = e instanceof Error ? e.message : "unknown error"; + + console.error(`esbuild-clean-plugin: ${message}`); + } + } + + public initialClean(): void { + const { initialCleanPatterns } = this.pluginOptions; + + if (!initialCleanPatterns) { + return; + } + + this.removeFiles(initialCleanPatterns); + } + + protected removeFiles(patterns: string[]): void { + const { outdir } = this.buildOptions; + + if (!outdir) { + return; + } + + const deletedFiles = deleteSync(patterns, { + cwd: path.resolve(process.cwd(), outdir), + dryRun: Boolean(this.pluginOptions.dry), + }); + + this.printStats(deletedFiles); + } + + protected printStats(fileNames: string[]): void { + const { dry, verbose } = this.pluginOptions; + const { outdir } = this.buildOptions; + + if (!verbose || !outdir) { + return; + } + + const message = dry ? "dry" : "removed"; + + fileNames.forEach((fileName) => { + fileName = path.resolve(outdir, fileName); + + console.log(`esbuild-clean-plugin: ${message} ${fileName}`); + }); + } + + public validateOptions(): boolean { + const { metafile, outdir } = this.buildOptions; + + if (!metafile) { + console.warn( + 'esbuild-clean-plugin: The esbuild "metafile" option was not set, please set it to true. Stopping.' + ); + + return false; + } + + if (!outdir) { + console.warn( + 'esbuild-clean-plugin: The esbuild "outdir" option was not set, please supply it. Stopping.' + ); + + return false; + } + + return true; + } +} + +export const cleanPlugin = (pluginOptions: PluginOptions = {}): Plugin => { + return { + name: "clean", + setup(build): void { + const plugin = new CleanPlugin(pluginOptions, build.initialOptions); + + if (plugin.validateOptions()) { + plugin.initialClean(); + + build.onEnd((result) => { + plugin.handleBuild(result); + }); + } + }, + }; +}; diff --git a/bun.lockb b/bun.lockb index dea4959e..5ee1d2b3 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/dockerzip b/dockerzip index 14d513d1..5edd811b 100644 Binary files a/dockerzip and b/dockerzip differ diff --git a/package.json b/package.json index 07ddc9db..010b27b2 100644 --- a/package.json +++ b/package.json @@ -20,8 +20,8 @@ ], "dependencies": { "brotli-wasm": "^3.0.1", - "fdir": "^6.2.0", + "fdir": "^6.3.0", "react-select": "^5.8.0", - "typescript": "^5.5.4" + "typescript": "^5.6.2" } -} \ No newline at end of file +} diff --git a/pkgs/core/package.json b/pkgs/core/package.json index 33b30c30..b779840f 100644 --- a/pkgs/core/package.json +++ b/pkgs/core/package.json @@ -10,7 +10,7 @@ "@types/unzipper": "^0.10.8", "acorn-walk": "^8.3.3", "brotli-wasm": "^3.0.1", - "esbuild": "^0.21.5", + "esbuild": "^0.23.1", "esbuild-plugin-polyfill-node": "^0.3.0", "execa": "^8.0.1", "fs-jetpack": "^5.1.0", diff --git a/pkgs/local-vscode/docker-compose.yaml b/pkgs/local-vscode/docker-compose.yaml new file mode 100644 index 00000000..e0c35eec --- /dev/null +++ b/pkgs/local-vscode/docker-compose.yaml @@ -0,0 +1,18 @@ +services: + code-server: + image: lscr.io/linuxserver/code-server:latest + container_name: code-server + environment: + - PUID=1000 + - PGID=1000 + - TZ=Etc/UTC + - HASHED_PASSWORD= #optional + - SUDO_PASSWORD=123 #optional + - SUDO_PASSWORD_HASH= #optional + - DEFAULT_WORKSPACE=/config/workspace #optional + volumes: + - /Users/riz/Documents/code-config:/config + - /Users/riz/Developer/prasi-bun/data/code:/site + ports: + - 8443:8443 + restart: unless-stopped diff --git a/static-br-temp/sworker.js b/static-br-temp/sworker.js index 760025d3..b436e246 100644 Binary files a/static-br-temp/sworker.js and b/static-br-temp/sworker.js differ diff --git a/static-temp/sworker.js b/static-temp/sworker.js index 3c5bbbcf..4a82b156 100644 --- a/static-temp/sworker.js +++ b/static-temp/sworker.js @@ -1,2 +1,2 @@ -!function(e,a,s,n,o){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r="function"==typeof i[n]&&i[n],t=r.cache||{},c="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function l(a,s){if(!t[a]){if(!e[a]){var o="function"==typeof i[n]&&i[n];if(!s&&o)return o(a,!0);if(r)return r(a,!0);if(c&&"string"==typeof a)return c(a);var m=Error("Cannot find module '"+a+"'");throw m.code="MODULE_NOT_FOUND",m}f.resolve=function(s){var n=e[a][1][s];return null!=n?n:s},f.cache={};var u=t[a]=new l.Module(a);e[a][0].call(u.exports,f,u,u.exports,this)}return t[a].exports;function f(e){var a=f.resolve(e);return!1===a?{}:l(a)}}l.isParcelRequire=!0,l.Module=function(e){this.id=e,this.bundle=l,this.exports={}},l.modules=e,l.cache=t,l.parent=r,l.register=function(a,s){e[a]=[function(e,a){a.exports=s},{}]},Object.defineProperty(l,"root",{get:function(){return i[n]}}),i[n]=l;for(var m=0;mo),n.export(s,"version",()=>i),n.export(s,"_register",()=>r);let o=[],i="";function r(e,a){o=e,i=a}},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],"2vQG8":[function(e,a,s){s.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},s.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},s.exportAll=function(e,a){return Object.keys(e).forEach(function(s){"default"===s||"__esModule"===s||Object.prototype.hasOwnProperty.call(a,s)||Object.defineProperty(a,s,{enumerable:!0,get:function(){return e[s]}})}),a},s.export=function(e,a,s){Object.defineProperty(e,a,{enumerable:!0,get:s})}},{}],"5iB2w":[function(e,a,s){var n=e("@parcel/service-worker"),o=e("radix3"),i=e("../timestamp"),r=e("../public_files");let t={router:null,offline:!1,broadcast(e){self.clients.matchAll({includeUncontrolled:!0}).then(a=>{a.forEach(a=>{a.postMessage(e)})})}};async function c(){let e=await caches.open(i.version),a=[...n.manifest,...r.files];a.length>0&&(await e.addAll(a),t.broadcast({type:"installed"}))}async function l(){let e=!1;if(!t.offline){let a=await caches.keys();await Promise.all(a.map(async a=>{a!==i.version&&(await caches.delete(a),e=!0)})),t.broadcast({type:"activated",shouldRefresh:e,version:i.version})}}addEventListener("install",e=>e.waitUntil(c())),addEventListener("activate",e=>e.waitUntil(l())),addEventListener("fetch",async e=>{let a=new URL(e.request.url);if(!a.pathname.startsWith("_proxy")){if(t.router&&t.router.lookup(a.pathname))return;e.respondWith((async()=>{let a=await caches.match(e.request);if(a)return a;try{return t.offline=!1,await fetch(e.request)}catch(e){return t.offline=!0,t.broadcast({type:"offline"}),new Response}})())}}),addEventListener("message",async e=>{let a=e.data.type,s=await caches.open(i.version);switch(a){case"add-cache":await s.match(e.data.url)||await s.add(e.data.url);break;case"define-route":for(let a of(t.router=(0,o.createRouter)({strictTrailingSlash:!1}),e.data.routes))t.router.insert(a.url,a);await l();break;case"force-update":{let e=await caches.keys();await Promise.all(e.map(async e=>{e!==i.version&&await caches.delete(e)})),await c()}}})},{"@parcel/service-worker":"gnJ31",radix3:"85EDM","../timestamp":"jH99Y","../public_files":"k4EOQ"}],"85EDM":[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"NODE_TYPES",()=>o),n.export(s,"createMatcherFromExport",()=>u),n.export(s,"createRouter",()=>i),n.export(s,"exportMatcher",()=>m),n.export(s,"toRouteMatcher",()=>c);let o={NORMAL:0,WILDCARD:1,PLACEHOLDER:2};function i(e={}){let a={options:e,rootNode:t(),staticRoutesMap:{}},s=a=>e.strictTrailingSlash?a:a.replace(/\/$/,"")||"/";if(e.routes)for(let n in e.routes)r(a,s(n),e.routes[n]);return{ctx:a,lookup:e=>(function(e,a){let s=e.staticRoutesMap[a];if(s)return s.data;let n=a.split("/"),o={},i=!1,r=null,t=e.rootNode,c=null;for(let e=0;e1){let a=n.length-e;t=t.placeholderChildren.find(e=>e.maxDepth===a)||null}else t=t.placeholderChildren[0]||null;if(!t)break;t.paramName&&(o[t.paramName]=a),i=!0}else t=s}return((null===t||null===t.data)&&null!==r&&(o[(t=r).paramName||"_"]=c,i=!0),t)?i?{...t.data,params:i?o:void 0}:t.data:null})(a,s(e)),insert:(e,n)=>r(a,s(e),n),remove:e=>(function(e,a){let s=!1,n=a.split("/"),o=e.rootNode;for(let e of n)if(!(o=o.children.get(e)))return s;if(o.data){let e=n.at(-1)||"";o.data=null,0===Object.keys(o.children).length&&o.parent&&(o.parent.children.delete(e),o.parent.wildcardChildNode=null,o.parent.placeholderChildren=[]),s=!0}return s})(a,s(e))}}function r(e,a,s){let n=!0,i=a.split("/"),r=e.rootNode,c=0,l=[r];for(let e of i){let a;if(a=r.children.get(e))r=a;else{let s=e.startsWith("**")?o.WILDCARD:":"===e[0]||"*"===e?o.PLACEHOLDER:o.NORMAL;a=t({type:s,parent:r}),r.children.set(e,a),s===o.PLACEHOLDER?(a.paramName="*"===e?`_${c++}`:e.slice(1),r.placeholderChildren.push(a),n=!1):s===o.WILDCARD&&(r.wildcardChildNode=a,a.paramName=e.slice(3)||"_",n=!1),l.push(a),r=a}}for(let[e,a]of l.entries())a.maxDepth=Math.max(l.length-e,a.maxDepth||0);return r.data=s,!0===n&&(e.staticRoutesMap[a]=r),r}function t(e={}){return{type:e.type||o.NORMAL,maxDepth:0,parent:e.parent||null,children:new Map,data:e.data||null,paramName:e.paramName||null,wildcardChildNode:null,placeholderChildren:[]}}function c(e){return l(function e(a,s){let n={static:new Map,wildcard:new Map,dynamic:new Map};return!function a(s,i){if(s){if(i.type!==o.NORMAL||s.includes("*")||s.includes(":")){if(i.type===o.WILDCARD)n.wildcard.set(s.replace("/**",""),i.data);else if(i.type===o.PLACEHOLDER){let a=e("",i);i.data&&a.static.set("/",i.data),n.dynamic.set(s.replace(/\/\*|\/:\w+/,""),a);return}}else i.data&&n.static.set(s,i.data)}for(let[e,n]of i.children.entries())a(`${s}/${e}`.replace("//","/"),n)}(a,s),n}("",e.ctx.rootNode),e.ctx.options.strictTrailingSlash)}function l(e,a){return{ctx:{table:e},matchAll:s=>(function e(a,s,n){!0!==n&&a.endsWith("/")&&(a=a.slice(0,-1)||"/");let o=[];for(let[e,n]of f(s.wildcard))(a===e||a.startsWith(e+"/"))&&o.push(n);for(let[n,i]of f(s.dynamic))if(a.startsWith(n+"/")){let s="/"+a.slice(n.length).split("/").splice(2).join("/");o.push(...e(s,i))}let i=s.static.get(a);return i&&o.push(i),o.filter(Boolean)})(s,e,a)}}function m(e){return function e(a){let s=Object.create(null);for(let n in a)s[n]="dynamic"===n?Object.fromEntries([...a[n].entries()].map(([a,s])=>[a,e(s)])):Object.fromEntries(a[n].entries());return s}(e.ctx.table)}function u(e){return l(function e(a){let s={};for(let n in a)s[n]=new Map("dynamic"===n?Object.entries(a[n]).map(([a,s])=>[a,e(s)]):Object.entries(a[n]));return s}(e))}function f(e){return[...e.entries()].sort((e,a)=>e[0].length-a[0].length)}},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],jH99Y:[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"version",()=>o);let o="ojb76hk"},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],k4EOQ:[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"files",()=>o);let o=["favicon.ico","img/empty.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","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"]},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}]},["kYOjz","5iB2w"],"5iB2w","parcelRequire2d1f"); +!function(e,a,s,n,o){var i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r="function"==typeof i[n]&&i[n],t=r.cache||{},c="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function l(a,s){if(!t[a]){if(!e[a]){var o="function"==typeof i[n]&&i[n];if(!s&&o)return o(a,!0);if(r)return r(a,!0);if(c&&"string"==typeof a)return c(a);var m=Error("Cannot find module '"+a+"'");throw m.code="MODULE_NOT_FOUND",m}f.resolve=function(s){var n=e[a][1][s];return null!=n?n:s},f.cache={};var u=t[a]=new l.Module(a);e[a][0].call(u.exports,f,u,u.exports,this)}return t[a].exports;function f(e){var a=f.resolve(e);return!1===a?{}:l(a)}}l.isParcelRequire=!0,l.Module=function(e){this.id=e,this.bundle=l,this.exports={}},l.modules=e,l.cache=t,l.parent=r,l.register=function(a,s){e[a]=[function(e,a){a.exports=s},{}]},Object.defineProperty(l,"root",{get:function(){return i[n]}}),i[n]=l;for(var m=0;mo),n.export(s,"version",()=>i),n.export(s,"_register",()=>r);let o=[],i="";function r(e,a){o=e,i=a}},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],"2vQG8":[function(e,a,s){s.interopDefault=function(e){return e&&e.__esModule?e:{default:e}},s.defineInteropFlag=function(e){Object.defineProperty(e,"__esModule",{value:!0})},s.exportAll=function(e,a){return Object.keys(e).forEach(function(s){"default"===s||"__esModule"===s||Object.prototype.hasOwnProperty.call(a,s)||Object.defineProperty(a,s,{enumerable:!0,get:function(){return e[s]}})}),a},s.export=function(e,a,s){Object.defineProperty(e,a,{enumerable:!0,get:s})}},{}],"5iB2w":[function(e,a,s){var n=e("@parcel/service-worker"),o=e("radix3"),i=e("../timestamp"),r=e("../public_files");let t={router:null,offline:!1,broadcast(e){self.clients.matchAll({includeUncontrolled:!0}).then(a=>{a.forEach(a=>{a.postMessage(e)})})}};async function c(){let e=await caches.open(i.version),a=[...n.manifest,...r.files];a.length>0&&(await e.addAll(a),t.broadcast({type:"installed"}))}async function l(){let e=!1;if(!t.offline){let a=await caches.keys();await Promise.all(a.map(async a=>{a!==i.version&&(await caches.delete(a),e=!0)})),t.broadcast({type:"activated",shouldRefresh:e,version:i.version})}}addEventListener("install",e=>e.waitUntil(c())),addEventListener("activate",e=>e.waitUntil(l())),addEventListener("fetch",async e=>{let a=new URL(e.request.url);if(!a.pathname.startsWith("_proxy")){if(t.router&&t.router.lookup(a.pathname))return;e.respondWith((async()=>{let a=await caches.match(e.request);if(a)return a;try{return t.offline=!1,await fetch(e.request)}catch(e){return t.offline=!0,t.broadcast({type:"offline"}),new Response}})())}}),addEventListener("message",async e=>{let a=e.data.type,s=await caches.open(i.version);switch(a){case"add-cache":await s.match(e.data.url)||await s.add(e.data.url);break;case"define-route":for(let a of(t.router=(0,o.createRouter)({strictTrailingSlash:!1}),e.data.routes))t.router.insert(a.url,a);await l();break;case"force-update":{let e=await caches.keys();await Promise.all(e.map(async e=>{e!==i.version&&await caches.delete(e)})),await c()}}})},{"@parcel/service-worker":"gnJ31",radix3:"85EDM","../timestamp":"jH99Y","../public_files":"k4EOQ"}],"85EDM":[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"NODE_TYPES",()=>o),n.export(s,"createMatcherFromExport",()=>u),n.export(s,"createRouter",()=>i),n.export(s,"exportMatcher",()=>m),n.export(s,"toRouteMatcher",()=>c);let o={NORMAL:0,WILDCARD:1,PLACEHOLDER:2};function i(e={}){let a={options:e,rootNode:t(),staticRoutesMap:{}},s=a=>e.strictTrailingSlash?a:a.replace(/\/$/,"")||"/";if(e.routes)for(let n in e.routes)r(a,s(n),e.routes[n]);return{ctx:a,lookup:e=>(function(e,a){let s=e.staticRoutesMap[a];if(s)return s.data;let n=a.split("/"),o={},i=!1,r=null,t=e.rootNode,c=null;for(let e=0;e1){let a=n.length-e;t=t.placeholderChildren.find(e=>e.maxDepth===a)||null}else t=t.placeholderChildren[0]||null;if(!t)break;t.paramName&&(o[t.paramName]=a),i=!0}else t=s}return((null===t||null===t.data)&&null!==r&&(o[(t=r).paramName||"_"]=c,i=!0),t)?i?{...t.data,params:i?o:void 0}:t.data:null})(a,s(e)),insert:(e,n)=>r(a,s(e),n),remove:e=>(function(e,a){let s=!1,n=a.split("/"),o=e.rootNode;for(let e of n)if(!(o=o.children.get(e)))return s;if(o.data){let e=n.at(-1)||"";o.data=null,0===Object.keys(o.children).length&&o.parent&&(o.parent.children.delete(e),o.parent.wildcardChildNode=null,o.parent.placeholderChildren=[]),s=!0}return s})(a,s(e))}}function r(e,a,s){let n=!0,i=a.split("/"),r=e.rootNode,c=0,l=[r];for(let e of i){let a;if(a=r.children.get(e))r=a;else{let s=e.startsWith("**")?o.WILDCARD:":"===e[0]||"*"===e?o.PLACEHOLDER:o.NORMAL;a=t({type:s,parent:r}),r.children.set(e,a),s===o.PLACEHOLDER?(a.paramName="*"===e?`_${c++}`:e.slice(1),r.placeholderChildren.push(a),n=!1):s===o.WILDCARD&&(r.wildcardChildNode=a,a.paramName=e.slice(3)||"_",n=!1),l.push(a),r=a}}for(let[e,a]of l.entries())a.maxDepth=Math.max(l.length-e,a.maxDepth||0);return r.data=s,!0===n&&(e.staticRoutesMap[a]=r),r}function t(e={}){return{type:e.type||o.NORMAL,maxDepth:0,parent:e.parent||null,children:new Map,data:e.data||null,paramName:e.paramName||null,wildcardChildNode:null,placeholderChildren:[]}}function c(e){return l(function e(a,s){let n={static:new Map,wildcard:new Map,dynamic:new Map};return!function a(s,i){if(s){if(i.type!==o.NORMAL||s.includes("*")||s.includes(":")){if(i.type===o.WILDCARD)n.wildcard.set(s.replace("/**",""),i.data);else if(i.type===o.PLACEHOLDER){let a=e("",i);i.data&&a.static.set("/",i.data),n.dynamic.set(s.replace(/\/\*|\/:\w+/,""),a);return}}else i.data&&n.static.set(s,i.data)}for(let[e,n]of i.children.entries())a(`${s}/${e}`.replace("//","/"),n)}(a,s),n}("",e.ctx.rootNode),e.ctx.options.strictTrailingSlash)}function l(e,a){return{ctx:{table:e},matchAll:s=>(function e(a,s,n){!0!==n&&a.endsWith("/")&&(a=a.slice(0,-1)||"/");let o=[];for(let[e,n]of f(s.wildcard))(a===e||a.startsWith(e+"/"))&&o.push(n);for(let[n,i]of f(s.dynamic))if(a.startsWith(n+"/")){let s="/"+a.slice(n.length).split("/").splice(2).join("/");o.push(...e(s,i))}let i=s.static.get(a);return i&&o.push(i),o.filter(Boolean)})(s,e,a)}}function m(e){return function e(a){let s=Object.create(null);for(let n in a)s[n]="dynamic"===n?Object.fromEntries([...a[n].entries()].map(([a,s])=>[a,e(s)])):Object.fromEntries(a[n].entries());return s}(e.ctx.table)}function u(e){return l(function e(a){let s={};for(let n in a)s[n]=new Map("dynamic"===n?Object.entries(a[n]).map(([a,s])=>[a,e(s)]):Object.entries(a[n]));return s}(e))}function f(e){return[...e.entries()].sort((e,a)=>e[0].length-a[0].length)}},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],jH99Y:[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"version",()=>o);let o="m92yn6u"},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}],k4EOQ:[function(e,a,s){var n=e("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(s),n.export(s,"files",()=>o);let o=["favicon.ico","img/empty.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","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"]},{"@parcel/transformer-js/src/esmodule-helpers.js":"2vQG8"}]},["kYOjz","5iB2w"],"5iB2w","parcelRequire2d1f"); //# sourceMappingURL=sworker.js.map diff --git a/static/sworker.js b/static/sworker.js index 86b51bc2..d0ec8c09 100644 --- a/static/sworker.js +++ b/static/sworker.js @@ -192,7 +192,7 @@ const manifest = [ "/y-pojo.d28b9ce4.js", "/vi.e93512ab.js" ]; -const version = "eb699147"; +const version = "8f810dee"; (0, _serviceWorker._register)(manifest, version); },{"@parcel/service-worker":"et5Hi"}],"et5Hi":[function(require,module,exports) { @@ -566,7 +566,7 @@ function _routerNodeToTable(initialPath, initialNode) { var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js"); parcelHelpers.defineInteropFlag(exports); parcelHelpers.export(exports, "version", ()=>version); -const version = "hgr6d4r"; +const version = "dxtxosl"; },{"@parcel/transformer-js/src/esmodule-helpers.js":"jpDjm"}],"lXNsG":[function(require,module,exports) { var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");