isomorfeus-asset-manager 0.13.7 → 0.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +7 -4
- data/lib/isomorfeus/asset_manager/asset.rb +2 -2
- data/lib/isomorfeus/asset_manager/config.rb +7 -7
- data/lib/isomorfeus/asset_manager/version.rb +1 -1
- data/lib/isomorfeus/asset_manager.rb +11 -0
- data/node_modules/.package-lock.json +3 -3
- data/node_modules/esbuild-wasm/esbuild.wasm +0 -0
- data/node_modules/esbuild-wasm/esm/browser.d.ts +18 -0
- data/node_modules/esbuild-wasm/esm/browser.js +46 -18
- data/node_modules/esbuild-wasm/esm/browser.min.js +7 -7
- data/node_modules/esbuild-wasm/exit0.js +1 -1
- data/node_modules/esbuild-wasm/lib/browser.d.ts +18 -0
- data/node_modules/esbuild-wasm/lib/browser.js +24 -18
- data/node_modules/esbuild-wasm/lib/browser.min.js +2 -2
- data/node_modules/esbuild-wasm/lib/main.d.ts +18 -0
- data/node_modules/esbuild-wasm/lib/main.js +39 -32
- data/node_modules/esbuild-wasm/package.json +1 -1
- data/node_modules/esbuild-wasm/wasm_exec.js +2 -2
- data/package.json +1 -1
- metadata +6 -6
@@ -232,6 +232,7 @@ export interface TransformOptions extends CommonOptions {
|
|
232
232
|
jsxFragmentFactory?: string,
|
233
233
|
useDefineForClassFields?: boolean,
|
234
234
|
importsNotUsedAsValues?: 'remove' | 'preserve' | 'error',
|
235
|
+
preserveValueImports?: boolean,
|
235
236
|
},
|
236
237
|
};
|
237
238
|
|
@@ -267,6 +268,21 @@ export interface PluginBuild {
|
|
267
268
|
(OnResolveResult | null | undefined | Promise<OnResolveResult | null | undefined>)): void;
|
268
269
|
onLoad(options: OnLoadOptions, callback: (args: OnLoadArgs) =>
|
269
270
|
(OnLoadResult | null | undefined | Promise<OnLoadResult | null | undefined>)): void;
|
271
|
+
|
272
|
+
// This is a full copy of the esbuild library in case you need it
|
273
|
+
esbuild: {
|
274
|
+
serve: typeof serve,
|
275
|
+
build: typeof build,
|
276
|
+
buildSync: typeof buildSync,
|
277
|
+
transform: typeof transform,
|
278
|
+
transformSync: typeof transformSync,
|
279
|
+
formatMessages: typeof formatMessages,
|
280
|
+
formatMessagesSync: typeof formatMessagesSync,
|
281
|
+
analyzeMetafile: typeof analyzeMetafile,
|
282
|
+
analyzeMetafileSync: typeof analyzeMetafileSync,
|
283
|
+
initialize: typeof initialize,
|
284
|
+
version: typeof version,
|
285
|
+
};
|
270
286
|
}
|
271
287
|
|
272
288
|
export interface OnStartResult {
|
@@ -311,6 +327,7 @@ export interface OnResolveResult {
|
|
311
327
|
external?: boolean;
|
312
328
|
sideEffects?: boolean;
|
313
329
|
namespace?: string;
|
330
|
+
suffix?: string;
|
314
331
|
pluginData?: any;
|
315
332
|
|
316
333
|
watchFiles?: string[];
|
@@ -325,6 +342,7 @@ export interface OnLoadOptions {
|
|
325
342
|
export interface OnLoadArgs {
|
326
343
|
path: string;
|
327
344
|
namespace: string;
|
345
|
+
suffix: string;
|
328
346
|
pluginData: any;
|
329
347
|
}
|
330
348
|
|
@@ -573,10 +573,10 @@ function flagsForTransformOptions(callName, options, isTTY, logLevelDefault) {
|
|
573
573
|
return flags;
|
574
574
|
}
|
575
575
|
function createChannel(streamIn) {
|
576
|
-
let responseCallbacks = new Map();
|
577
|
-
let pluginCallbacks = new Map();
|
578
|
-
let watchCallbacks = new Map();
|
579
|
-
let serveCallbacks = new Map();
|
576
|
+
let responseCallbacks = /* @__PURE__ */ new Map();
|
577
|
+
let pluginCallbacks = /* @__PURE__ */ new Map();
|
578
|
+
let watchCallbacks = /* @__PURE__ */ new Map();
|
579
|
+
let serveCallbacks = /* @__PURE__ */ new Map();
|
580
580
|
let nextServeID = 0;
|
581
581
|
let isClosed = false;
|
582
582
|
let nextRequestID = 0;
|
@@ -715,8 +715,8 @@ function createChannel(streamIn) {
|
|
715
715
|
if (isFirstPacket) {
|
716
716
|
isFirstPacket = false;
|
717
717
|
let binaryVersion = String.fromCharCode(...bytes);
|
718
|
-
if (binaryVersion !== "0.
|
719
|
-
throw new Error(`Cannot start service: Host version "${"0.
|
718
|
+
if (binaryVersion !== "0.14.3") {
|
719
|
+
throw new Error(`Cannot start service: Host version "${"0.14.3"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
|
720
720
|
}
|
721
721
|
return;
|
722
722
|
}
|
@@ -762,17 +762,17 @@ function createChannel(streamIn) {
|
|
762
762
|
let promise = setup({
|
763
763
|
initialOptions,
|
764
764
|
onStart(callback2) {
|
765
|
-
let registeredText = `This error came from the "onStart" callback registered here
|
765
|
+
let registeredText = `This error came from the "onStart" callback registered here:`;
|
766
766
|
let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onStart");
|
767
767
|
onStartCallbacks.push({ name, callback: callback2, note: registeredNote });
|
768
768
|
},
|
769
769
|
onEnd(callback2) {
|
770
|
-
let registeredText = `This error came from the "onEnd" callback registered here
|
770
|
+
let registeredText = `This error came from the "onEnd" callback registered here:`;
|
771
771
|
let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onEnd");
|
772
772
|
onEndCallbacks.push({ name, callback: callback2, note: registeredNote });
|
773
773
|
},
|
774
774
|
onResolve(options, callback2) {
|
775
|
-
let registeredText = `This error came from the "onResolve" callback registered here
|
775
|
+
let registeredText = `This error came from the "onResolve" callback registered here:`;
|
776
776
|
let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onResolve");
|
777
777
|
let keys2 = {};
|
778
778
|
let filter = getFlag(options, keys2, "filter", mustBeRegExp);
|
@@ -785,7 +785,7 @@ function createChannel(streamIn) {
|
|
785
785
|
plugin.onResolve.push({ id, filter: filter.source, namespace: namespace || "" });
|
786
786
|
},
|
787
787
|
onLoad(options, callback2) {
|
788
|
-
let registeredText = `This error came from the "onLoad" callback registered here
|
788
|
+
let registeredText = `This error came from the "onLoad" callback registered here:`;
|
789
789
|
let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onLoad");
|
790
790
|
let keys2 = {};
|
791
791
|
let filter = getFlag(options, keys2, "filter", mustBeRegExp);
|
@@ -796,7 +796,8 @@ function createChannel(streamIn) {
|
|
796
796
|
let id = nextCallbackID++;
|
797
797
|
onLoadCallbacks[id] = { name, callback: callback2, note: registeredNote };
|
798
798
|
plugin.onLoad.push({ id, filter: filter.source, namespace: namespace || "" });
|
799
|
-
}
|
799
|
+
},
|
800
|
+
esbuild: streamIn.esbuild
|
800
801
|
});
|
801
802
|
if (promise)
|
802
803
|
yield promise;
|
@@ -850,6 +851,7 @@ function createChannel(streamIn) {
|
|
850
851
|
let pluginName = getFlag(result, keys, "pluginName", mustBeString);
|
851
852
|
let path = getFlag(result, keys, "path", mustBeString);
|
852
853
|
let namespace = getFlag(result, keys, "namespace", mustBeString);
|
854
|
+
let suffix = getFlag(result, keys, "suffix", mustBeString);
|
853
855
|
let external = getFlag(result, keys, "external", mustBeBoolean);
|
854
856
|
let sideEffects = getFlag(result, keys, "sideEffects", mustBeBoolean);
|
855
857
|
let pluginData = getFlag(result, keys, "pluginData", canBeAnything);
|
@@ -865,6 +867,8 @@ function createChannel(streamIn) {
|
|
865
867
|
response.path = path;
|
866
868
|
if (namespace != null)
|
867
869
|
response.namespace = namespace;
|
870
|
+
if (suffix != null)
|
871
|
+
response.suffix = suffix;
|
868
872
|
if (external != null)
|
869
873
|
response.external = external;
|
870
874
|
if (sideEffects != null)
|
@@ -895,6 +899,7 @@ function createChannel(streamIn) {
|
|
895
899
|
let result = yield callback2({
|
896
900
|
path: request.path,
|
897
901
|
namespace: request.namespace,
|
902
|
+
suffix: request.suffix,
|
898
903
|
pluginData: stash.load(request.pluginData)
|
899
904
|
});
|
900
905
|
if (result != null) {
|
@@ -1390,7 +1395,7 @@ function createChannel(streamIn) {
|
|
1390
1395
|
};
|
1391
1396
|
}
|
1392
1397
|
function createObjectStash() {
|
1393
|
-
const map = new Map();
|
1398
|
+
const map = /* @__PURE__ */ new Map();
|
1394
1399
|
let nextID = 0;
|
1395
1400
|
return {
|
1396
1401
|
load(id) {
|
@@ -1494,7 +1499,7 @@ error: ${e.text}`;
|
|
1494
1499
|
let { file, line, column } = e.location;
|
1495
1500
|
let pluginText = e.pluginName ? `[plugin: ${e.pluginName}] ` : "";
|
1496
1501
|
return `
|
1497
|
-
${file}:${line}:${column}:
|
1502
|
+
${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;
|
1498
1503
|
}).join("");
|
1499
1504
|
let error = new Error(`${text}${summary}`);
|
1500
1505
|
error.errors = errors;
|
@@ -1588,7 +1593,7 @@ function convertOutputFiles({ path, contents }) {
|
|
1588
1593
|
}
|
1589
1594
|
|
1590
1595
|
// lib/npm/browser.ts
|
1591
|
-
var version = "0.
|
1596
|
+
var version = "0.14.3";
|
1592
1597
|
var build = (options) => ensureServiceIsRunning().build(options);
|
1593
1598
|
var serve = () => {
|
1594
1599
|
throw new Error(`The "serve" API only works in node`);
|
@@ -2233,9 +2238,9 @@ var startRunningService = (wasmURL, useWorker) => __async(void 0, null, function
|
|
2233
2238
|
|
2234
2239
|
// The linker guarantees global data starts from at least wasmMinDataAddr.
|
2235
2240
|
// Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr.
|
2236
|
-
const wasmMinDataAddr = 4096 +
|
2241
|
+
const wasmMinDataAddr = 4096 + 8192;
|
2237
2242
|
if (offset >= wasmMinDataAddr) {
|
2238
|
-
throw new Error("command line
|
2243
|
+
throw new Error("total length of command line and environment variables exceeds limit");
|
2239
2244
|
}
|
2240
2245
|
|
2241
2246
|
this._inst.exports.run(argc, argv);
|
@@ -2345,7 +2350,7 @@ onmessage = ({ data: wasm }) => {
|
|
2345
2350
|
callback(null, count);
|
2346
2351
|
};
|
2347
2352
|
let go = new global.Go();
|
2348
|
-
go.argv = ["", \`--service=\${"0.
|
2353
|
+
go.argv = ["", \`--service=\${"0.14.3"}\`];
|
2349
2354
|
WebAssembly.instantiate(wasm, go.importObject).then(({ instance }) => go.run(instance));
|
2350
2355
|
};}`;
|
2351
2356
|
let worker;
|
@@ -2369,7 +2374,8 @@ onmessage = ({ data: wasm }) => {
|
|
2369
2374
|
worker.postMessage(bytes);
|
2370
2375
|
},
|
2371
2376
|
isSync: false,
|
2372
|
-
isBrowser: true
|
2377
|
+
isBrowser: true,
|
2378
|
+
esbuild: exports
|
2373
2379
|
});
|
2374
2380
|
longLivedService = {
|
2375
2381
|
build: (options) => new Promise((resolve, reject) => service.buildOrServe({
|
@@ -1,10 +1,10 @@
|
|
1
1
|
(exports=>{
|
2
|
-
var Me=Object.defineProperty,tt=Object.defineProperties;var rt=Object.getOwnPropertyDescriptors;var Ue=Object.getOwnPropertySymbols;var nt=Object.prototype.hasOwnProperty,lt=Object.prototype.propertyIsEnumerable;var qe=(e,t,r)=>t in e?Me(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Be=(e,t)=>{for(var r in t||(t={}))nt.call(t,r)&&qe(e,r,t[r]);if(Ue)for(var r of Ue(t))lt.call(t,r)&&qe(e,r,t[r]);return e},Te=(e,t)=>tt(e,rt(t)),it=e=>Me(e,"__esModule",{value:!0});var st=(e,t)=>{it(e);for(var r in t)Me(e,r,{get:t[r],enumerable:!0})};var ae=(e,t,r)=>new Promise((s,d)=>{var l=m=>{try{i(r.next(m))}catch(R){d(R)}},u=m=>{try{i(r.throw(m))}catch(R){d(R)}},i=m=>m.done?s(m.value):Promise.resolve(m.value).then(l,u);i((r=r.apply(e,t)).next())});st(exports,{analyzeMetafile:()=>vt,analyzeMetafileSync:()=>xt,build:()=>yt,buildSync:()=>Rt,formatMessages:()=>wt,formatMessagesSync:()=>St,initialize:()=>kt,serve:()=>ht,transform:()=>bt,transformSync:()=>Ot,version:()=>mt});function Ae(e){let t=s=>{if(s===null)r.write8(0);else if(typeof s=="boolean")r.write8(1),r.write8(+s);else if(typeof s=="number")r.write8(2),r.write32(s|0);else if(typeof s=="string")r.write8(3),r.write(ue(s));else if(s instanceof Uint8Array)r.write8(4),r.write(s);else if(s instanceof Array){r.write8(5),r.write32(s.length);for(let d of s)t(d)}else{let d=Object.keys(s);r.write8(6),r.write32(d.length);for(let l of d)r.write(ue(l)),t(s[l])}},r=new Fe;return r.write32(0),r.write32(e.id<<1|+!e.isRequest),t(e.value),je(r.buf,r.len-4,0),r.buf.subarray(0,r.len)}function We(e){let t=()=>{switch(r.read8()){case 0:return null;case 1:return!!r.read8();case 2:return r.read32();case 3:return fe(r.read());case 4:return r.read();case 5:{let u=r.read32(),i=[];for(let m=0;m<u;m++)i.push(t());return i}case 6:{let u=r.read32(),i={};for(let m=0;m<u;m++)i[fe(r.read())]=t();return i}default:throw new Error("Invalid packet")}},r=new Fe(e),s=r.read32(),d=(s&1)==0;s>>>=1;let l=t();if(r.ptr!==e.length)throw new Error("Invalid packet");return{id:s,isRequest:d,value:l}}var Fe=class{constructor(t=new Uint8Array(1024)){this.buf=t;this.len=0;this.ptr=0}_write(t){if(this.len+t>this.buf.length){let r=new Uint8Array((this.len+t)*2);r.set(this.buf),this.buf=r}return this.len+=t,this.len-t}write8(t){let r=this._write(1);this.buf[r]=t}write32(t){let r=this._write(4);je(this.buf,t,r)}write(t){let r=this._write(4+t.length);je(this.buf,t.length,r),this.buf.set(t,r+4)}_read(t){if(this.ptr+t>this.buf.length)throw new Error("Invalid packet");return this.ptr+=t,this.ptr-t}read8(){return this.buf[this._read(1)]}read32(){return Ne(this.buf,this._read(4))}read(){let t=this.read32(),r=new Uint8Array(t),s=this._read(r.length);return r.set(this.buf.subarray(s,s+t)),r}},ue,fe;if(typeof TextEncoder!="undefined"&&typeof TextDecoder!="undefined"){let e=new TextEncoder,t=new TextDecoder;ue=r=>e.encode(r),fe=r=>t.decode(r)}else if(typeof Buffer!="undefined")ue=e=>{let t=Buffer.from(e);return t instanceof Uint8Array||(t=new Uint8Array(t)),t},fe=e=>{let{buffer:t,byteOffset:r,byteLength:s}=e;return Buffer.from(t,r,s).toString()};else throw new Error("No UTF-8 codec found");function Ne(e,t){return e[t++]|e[t++]<<8|e[t++]<<16|e[t++]<<24}function je(e,t,r){e[r++]=t,e[r++]=t>>8,e[r++]=t>>16,e[r++]=t>>24}function ze(e){if(e+="",e.indexOf(",")>=0)throw new Error(`Invalid target: ${e}`);return e}var Ie=()=>null,L=e=>typeof e=="boolean"?null:"a boolean",ot=e=>typeof e=="boolean"||typeof e=="object"&&!Array.isArray(e)?null:"a boolean or an object",h=e=>typeof e=="string"?null:"a string",Ke=e=>e instanceof RegExp?null:"a RegExp object",me=e=>typeof e=="number"&&e===(e|0)?null:"an integer",Ce=e=>typeof e=="function"?null:"a function",z=e=>Array.isArray(e)?null:"an array",ye=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"an object",at=e=>typeof e=="object"&&e!==null?null:"an array or an object",_e=e=>typeof e=="object"&&!Array.isArray(e)?null:"an object or null",Ve=e=>typeof e=="string"||typeof e=="boolean"?null:"a string or a boolean",ut=e=>typeof e=="string"||typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"a string or an object",ct=e=>typeof e=="string"||Array.isArray(e)?null:"a string or an array",ft=e=>typeof e=="string"||e instanceof Uint8Array?null:"a string or a Uint8Array";function n(e,t,r,s){let d=e[r];if(t[r+""]=!0,d===void 0)return;let l=s(d);if(l!==null)throw new Error(`"${r}" must be ${l}`);return d}function _(e,t,r){for(let s in e)if(!(s in t))throw new Error(`Invalid option ${r}: "${s}"`)}function Je(e){let t=Object.create(null),r=n(e,t,"wasmURL",h),s=n(e,t,"worker",L);return _(e,t,"in startService() call"),{wasmURL:r,worker:s}}function Oe(e,t,r,s,d){let l=n(t,r,"color",L),u=n(t,r,"logLevel",h),i=n(t,r,"logLimit",me);l!==void 0?e.push(`--color=${l}`):s&&e.push("--color=true"),e.push(`--log-level=${u||d}`),e.push(`--log-limit=${i||0}`)}function Ye(e,t,r){let s=n(t,r,"legalComments",h),d=n(t,r,"sourceRoot",h),l=n(t,r,"sourcesContent",L),u=n(t,r,"target",ct),i=n(t,r,"format",h),m=n(t,r,"globalName",h),R=n(t,r,"minify",L),x=n(t,r,"minifySyntax",L),F=n(t,r,"minifyWhitespace",L),U=n(t,r,"minifyIdentifiers",L),k=n(t,r,"charset",h),q=n(t,r,"treeShaking",L),ee=n(t,r,"ignoreAnnotations",L),G=n(t,r,"jsx",h),te=n(t,r,"jsxFactory",h),re=n(t,r,"jsxFragment",h),le=n(t,r,"define",ye),ie=n(t,r,"pure",z),ce=n(t,r,"keepNames",L);if(s&&e.push(`--legal-comments=${s}`),d!==void 0&&e.push(`--source-root=${d}`),l!==void 0&&e.push(`--sources-content=${l}`),u&&(Array.isArray(u)?e.push(`--target=${Array.from(u).map(ze).join(",")}`):e.push(`--target=${ze(u)}`)),i&&e.push(`--format=${i}`),m&&e.push(`--global-name=${m}`),R&&e.push("--minify"),x&&e.push("--minify-syntax"),F&&e.push("--minify-whitespace"),U&&e.push("--minify-identifiers"),k&&e.push(`--charset=${k}`),q!==void 0&&e.push(`--tree-shaking=${q}`),ee&&e.push("--ignore-annotations"),G&&e.push(`--jsx=${G}`),te&&e.push(`--jsx-factory=${te}`),re&&e.push(`--jsx-fragment=${re}`),le)for(let Q in le){if(Q.indexOf("=")>=0)throw new Error(`Invalid define: ${Q}`);e.push(`--define:${Q}=${le[Q]}`)}if(ie)for(let Q of ie)e.push(`--pure:${Q}`);ce&&e.push("--keep-names")}function dt(e,t,r,s,d){var w;let l=[],u=[],i=Object.create(null),m=null,R=null,x=null;Oe(l,t,i,r,s),Ye(l,t,i);let F=n(t,i,"sourcemap",Ve),U=n(t,i,"bundle",L),k=n(t,i,"watch",ot),q=n(t,i,"splitting",L),ee=n(t,i,"preserveSymlinks",L),G=n(t,i,"metafile",L),te=n(t,i,"outfile",h),re=n(t,i,"outdir",h),le=n(t,i,"outbase",h),ie=n(t,i,"platform",h),ce=n(t,i,"tsconfig",h),Q=n(t,i,"resolveExtensions",z),Re=n(t,i,"nodePaths",z),Ee=n(t,i,"mainFields",z),$e=n(t,i,"conditions",z),De=n(t,i,"external",z),g=n(t,i,"loader",ye),c=n(t,i,"outExtension",ye),o=n(t,i,"publicPath",h),p=n(t,i,"entryNames",h),j=n(t,i,"chunkNames",h),M=n(t,i,"assetNames",h),P=n(t,i,"inject",z),N=n(t,i,"banner",ye),D=n(t,i,"footer",ye),E=n(t,i,"entryPoints",at),O=n(t,i,"absWorkingDir",h),B=n(t,i,"stdin",ye),T=(w=n(t,i,"write",L))!=null?w:d,S=n(t,i,"allowOverwrite",L),$=n(t,i,"incremental",L)===!0;if(i.plugins=!0,_(t,i,`in ${e}() call`),F&&l.push(`--sourcemap${F===!0?"":`=${F}`}`),U&&l.push("--bundle"),S&&l.push("--allow-overwrite"),k)if(l.push("--watch"),typeof k=="boolean")x={};else{let a=Object.create(null),b=n(k,a,"onRebuild",Ce);_(k,a,`on "watch" in ${e}() call`),x={onRebuild:b}}if(q&&l.push("--splitting"),ee&&l.push("--preserve-symlinks"),G&&l.push("--metafile"),te&&l.push(`--outfile=${te}`),re&&l.push(`--outdir=${re}`),le&&l.push(`--outbase=${le}`),ie&&l.push(`--platform=${ie}`),ce&&l.push(`--tsconfig=${ce}`),Q){let a=[];for(let b of Q){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid resolve extension: ${b}`);a.push(b)}l.push(`--resolve-extensions=${a.join(",")}`)}if(o&&l.push(`--public-path=${o}`),p&&l.push(`--entry-names=${p}`),j&&l.push(`--chunk-names=${j}`),M&&l.push(`--asset-names=${M}`),Ee){let a=[];for(let b of Ee){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid main field: ${b}`);a.push(b)}l.push(`--main-fields=${a.join(",")}`)}if($e){let a=[];for(let b of $e){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid condition: ${b}`);a.push(b)}l.push(`--conditions=${a.join(",")}`)}if(De)for(let a of De)l.push(`--external:${a}`);if(N)for(let a in N){if(a.indexOf("=")>=0)throw new Error(`Invalid banner file type: ${a}`);l.push(`--banner:${a}=${N[a]}`)}if(D)for(let a in D){if(a.indexOf("=")>=0)throw new Error(`Invalid footer file type: ${a}`);l.push(`--footer:${a}=${D[a]}`)}if(P)for(let a of P)l.push(`--inject:${a}`);if(g)for(let a in g){if(a.indexOf("=")>=0)throw new Error(`Invalid loader extension: ${a}`);l.push(`--loader:${a}=${g[a]}`)}if(c)for(let a in c){if(a.indexOf("=")>=0)throw new Error(`Invalid out extension: ${a}`);l.push(`--out-extension:${a}=${c[a]}`)}if(E)if(Array.isArray(E))for(let a of E)u.push(["",a+""]);else for(let[a,b]of Object.entries(E))u.push([a+"",b+""]);if(B){let a=Object.create(null),b=n(B,a,"contents",h),C=n(B,a,"resolveDir",h),f=n(B,a,"sourcefile",h),v=n(B,a,"loader",h);_(B,a,'in "stdin" object'),f&&l.push(`--sourcefile=${f}`),v&&l.push(`--loader=${v}`),C&&(R=C+""),m=b?b+"":""}let y=[];if(Re)for(let a of Re)a+="",y.push(a);return{entries:u,flags:l,write:T,stdinContents:m,stdinResolveDir:R,absWorkingDir:O,incremental:$,nodePaths:y,watch:x}}function pt(e,t,r,s){let d=[],l=Object.create(null);Oe(d,t,l,r,s),Ye(d,t,l);let u=n(t,l,"sourcemap",Ve),i=n(t,l,"tsconfigRaw",ut),m=n(t,l,"sourcefile",h),R=n(t,l,"loader",h),x=n(t,l,"banner",h),F=n(t,l,"footer",h);return _(t,l,`in ${e}() call`),u&&d.push(`--sourcemap=${u===!0?"external":u}`),i&&d.push(`--tsconfig-raw=${typeof i=="string"?i:JSON.stringify(i)}`),m&&d.push(`--sourcefile=${m}`),R&&d.push(`--loader=${R}`),x&&d.push(`--banner=${x}`),F&&d.push(`--footer=${F}`),d}function He(e){let t=new Map,r=new Map,s=new Map,d=new Map,l=0,u=!1,i=0,m=0,R=new Uint8Array(16*1024),x=0,F=g=>{let c=x+g.length;if(c>R.length){let p=new Uint8Array(c*2);p.set(R),R=p}R.set(g,x),x+=g.length;let o=0;for(;o+4<=x;){let p=Ne(R,o);if(o+4+p>x)break;o+=4,te(R.subarray(o,o+p)),o+=p}o>0&&(R.copyWithin(0,o,x),x-=o)},U=()=>{u=!0;for(let g of t.values())g("The service was stopped",null);t.clear();for(let g of d.values())g.onWait("The service was stopped");d.clear();for(let g of s.values())try{g(new Error("The service was stopped"),null)}catch(c){console.error(c)}s.clear()},k=(g,c,o)=>{if(u)return o("The service is no longer running",null);let p=i++;t.set(p,(j,M)=>{try{o(j,M)}finally{g&&g.unref()}}),g&&g.ref(),e.writeToStdin(Ae({id:p,isRequest:!0,value:c}))},q=(g,c)=>{if(u)throw new Error("The service is no longer running");e.writeToStdin(Ae({id:g,isRequest:!1,value:c}))},ee=(g,c)=>ae(this,null,function*(){try{switch(c.command){case"ping":{q(g,{});break}case"start":{let o=r.get(c.key);o?q(g,yield o(c)):q(g,{});break}case"resolve":{let o=r.get(c.key);o?q(g,yield o(c)):q(g,{});break}case"load":{let o=r.get(c.key);o?q(g,yield o(c)):q(g,{});break}case"serve-request":{let o=d.get(c.serveID);o&&o.onRequest&&o.onRequest(c.args),q(g,{});break}case"serve-wait":{let o=d.get(c.serveID);o&&o.onWait(c.error),q(g,{});break}case"watch-rebuild":{let o=s.get(c.watchID);try{o&&o(null,c.args)}catch(p){console.error(p)}q(g,{});break}default:throw new Error("Invalid command: "+c.command)}}catch(o){q(g,{errors:[he(o,e,null,void 0,"")]})}}),G=!0,te=g=>{if(G){G=!1;let o=String.fromCharCode(...g);if(o!=="0.13.13")throw new Error(`Cannot start service: Host version "0.13.13" does not match binary version ${JSON.stringify(o)}`);return}let c=We(g);if(c.isRequest)ee(c.id,c.value);else{let o=t.get(c.id);t.delete(c.id),c.value.error?o(c.value.error,{}):o(null,c.value)}},re=(g,c,o,p)=>ae(this,null,function*(){let j=[],M=[],P={},N={},D=0,E=0,O=[];c=[...c];for(let $ of c){let y={};if(typeof $!="object")throw new Error(`Plugin at index ${E} must be an object`);let w=n($,y,"name",h);if(typeof w!="string"||w==="")throw new Error(`Plugin at index ${E} is missing a name`);try{let a=n($,y,"setup",Ce);if(typeof a!="function")throw new Error("Plugin is missing a setup function");_($,y,`on plugin ${JSON.stringify(w)}`);let b={name:w,onResolve:[],onLoad:[]};E++;let C=a({initialOptions:g,onStart(f){let v='This error came from the "onStart" callback registered here',W=Se(new Error(v),e,"onStart");j.push({name:w,callback:f,note:W})},onEnd(f){let v='This error came from the "onEnd" callback registered here',W=Se(new Error(v),e,"onEnd");M.push({name:w,callback:f,note:W})},onResolve(f,v){let W='This error came from the "onResolve" callback registered here',I=Se(new Error(W),e,"onResolve"),K={},V=n(f,K,"filter",Ke),Y=n(f,K,"namespace",h);if(_(f,K,`in onResolve() call for plugin ${JSON.stringify(w)}`),V==null)throw new Error("onResolve() call is missing a filter");let J=D++;P[J]={name:w,callback:v,note:I},b.onResolve.push({id:J,filter:V.source,namespace:Y||""})},onLoad(f,v){let W='This error came from the "onLoad" callback registered here',I=Se(new Error(W),e,"onLoad"),K={},V=n(f,K,"filter",Ke),Y=n(f,K,"namespace",h);if(_(f,K,`in onLoad() call for plugin ${JSON.stringify(w)}`),V==null)throw new Error("onLoad() call is missing a filter");let J=D++;N[J]={name:w,callback:v,note:I},b.onLoad.push({id:J,filter:V.source,namespace:Y||""})}});C&&(yield C),O.push(b)}catch(a){return{ok:!1,error:a,pluginName:w}}}let B=$=>ae(this,null,function*(){switch($.command){case"start":{let y={errors:[],warnings:[]};return yield Promise.all(j.map(C=>ae(this,[C],function*({name:w,callback:a,note:b}){try{let f=yield a();if(f!=null){if(typeof f!="object")throw new Error(`Expected onStart() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(f,v,"errors",z),I=n(f,v,"warnings",z);_(f,v,`from onStart() callback in plugin ${JSON.stringify(w)}`),W!=null&&y.errors.push(...de(W,"errors",p,w)),I!=null&&y.warnings.push(...de(I,"warnings",p,w))}}catch(f){y.errors.push(he(f,e,p,b&&b(),w))}}))),y}case"resolve":{let y={},w="",a,b;for(let C of $.ids)try{({name:w,callback:a,note:b}=P[C]);let f=yield a({path:$.path,importer:$.importer,namespace:$.namespace,resolveDir:$.resolveDir,kind:$.kind,pluginData:p.load($.pluginData)});if(f!=null){if(typeof f!="object")throw new Error(`Expected onResolve() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(f,v,"pluginName",h),I=n(f,v,"path",h),K=n(f,v,"namespace",h),V=n(f,v,"external",L),Y=n(f,v,"sideEffects",L),J=n(f,v,"pluginData",Ie),se=n(f,v,"errors",z),oe=n(f,v,"warnings",z),A=n(f,v,"watchFiles",z),H=n(f,v,"watchDirs",z);_(f,v,`from onResolve() callback in plugin ${JSON.stringify(w)}`),y.id=C,W!=null&&(y.pluginName=W),I!=null&&(y.path=I),K!=null&&(y.namespace=K),V!=null&&(y.external=V),Y!=null&&(y.sideEffects=Y),J!=null&&(y.pluginData=p.store(J)),se!=null&&(y.errors=de(se,"errors",p,w)),oe!=null&&(y.warnings=de(oe,"warnings",p,w)),A!=null&&(y.watchFiles=xe(A,"watchFiles")),H!=null&&(y.watchDirs=xe(H,"watchDirs"));break}}catch(f){return{id:C,errors:[he(f,e,p,b&&b(),w)]}}return y}case"load":{let y={},w="",a,b;for(let C of $.ids)try{({name:w,callback:a,note:b}=N[C]);let f=yield a({path:$.path,namespace:$.namespace,pluginData:p.load($.pluginData)});if(f!=null){if(typeof f!="object")throw new Error(`Expected onLoad() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(f,v,"pluginName",h),I=n(f,v,"contents",ft),K=n(f,v,"resolveDir",h),V=n(f,v,"pluginData",Ie),Y=n(f,v,"loader",h),J=n(f,v,"errors",z),se=n(f,v,"warnings",z),oe=n(f,v,"watchFiles",z),A=n(f,v,"watchDirs",z);_(f,v,`from onLoad() callback in plugin ${JSON.stringify(w)}`),y.id=C,W!=null&&(y.pluginName=W),I instanceof Uint8Array?y.contents=I:I!=null&&(y.contents=ue(I)),K!=null&&(y.resolveDir=K),V!=null&&(y.pluginData=p.store(V)),Y!=null&&(y.loader=Y),J!=null&&(y.errors=de(J,"errors",p,w)),se!=null&&(y.warnings=de(se,"warnings",p,w)),oe!=null&&(y.watchFiles=xe(oe,"watchFiles")),A!=null&&(y.watchDirs=xe(A,"watchDirs"));break}}catch(f){return{id:C,errors:[he(f,e,p,b&&b(),w)]}}return y}default:throw new Error("Invalid command: "+$.command)}}),T=($,y,w)=>w();M.length>0&&(T=($,y,w)=>{(()=>ae(this,null,function*(){for(let{name:a,callback:b,note:C}of M)try{yield b($)}catch(f){$.errors.push(yield new Promise(v=>y(f,a,C&&C(),v)))}}))().then(w)});let S=0;return{ok:!0,requestPlugins:O,runOnEndCallbacks:T,pluginRefs:{ref(){++S==1&&r.set(o,B)},unref(){--S==0&&r.delete(o)}}}}),le=(g,c,o)=>{let p={},j=n(c,p,"port",me),M=n(c,p,"host",h),P=n(c,p,"servedir",h),N=n(c,p,"onRequest",Ce),D=l++,E,O=new Promise((B,T)=>{E=S=>{d.delete(D),S!==null?T(new Error(S)):B()}});return o.serve={serveID:D},_(c,p,"in serve() call"),j!==void 0&&(o.serve.port=j),M!==void 0&&(o.serve.host=M),P!==void 0&&(o.serve.servedir=P),d.set(D,{onRequest:N,onWait:E}),{wait:O,stop(){k(g,{command:"serve-stop",serveID:D},()=>{})}}},ie="warning",ce="silent",Q=g=>{let c=m++,o=Ge(),p,{refs:j,options:M,isTTY:P,callback:N}=g;if(typeof M=="object"){let O=M.plugins;if(O!==void 0){if(!Array.isArray(O))throw new Error('"plugins" must be an array');p=O}}let D=(O,B,T,S)=>{let $=[];try{Oe($,M,{},P,ie)}catch(w){}let y=he(O,e,o,T,B);k(j,{command:"error",flags:$,error:y},()=>{y.detail=o.load(y.detail),S(y)})},E=(O,B)=>{D(O,B,void 0,T=>{N(be("Build failed",[T],[]),null)})};if(p&&p.length>0){if(e.isSync)return E(new Error("Cannot use plugins in synchronous API calls"),"");re(M,p,c,o).then(O=>{if(!O.ok)E(O.error,O.pluginName);else try{Re(Te(Be({},g),{key:c,details:o,logPluginError:D,requestPlugins:O.requestPlugins,runOnEndCallbacks:O.runOnEndCallbacks,pluginRefs:O.pluginRefs}))}catch(B){E(B,"")}},O=>E(O,""))}else try{Re(Te(Be({},g),{key:c,details:o,logPluginError:D,requestPlugins:null,runOnEndCallbacks:(O,B,T)=>T(),pluginRefs:null}))}catch(O){E(O,"")}},Re=({callName:g,refs:c,serveOptions:o,options:p,isTTY:j,defaultWD:M,callback:P,key:N,details:D,logPluginError:E,requestPlugins:O,runOnEndCallbacks:B,pluginRefs:T})=>{let S={ref(){T&&T.ref(),c&&c.ref()},unref(){T&&T.unref(),c&&c.unref()}},$=!e.isBrowser,{entries:y,flags:w,write:a,stdinContents:b,stdinResolveDir:C,absWorkingDir:f,incremental:v,nodePaths:W,watch:I}=dt(g,p,j,ie,$),K={command:"build",key:N,entries:y,flags:w,write:a,stdinContents:b,stdinResolveDir:C,absWorkingDir:f||M,incremental:v,nodePaths:W};O&&(K.plugins=O);let V=o&&le(S,o,K),Y,J,se=(A,H)=>{A.outputFiles&&(H.outputFiles=A.outputFiles.map(gt)),A.metafile&&(H.metafile=JSON.parse(A.metafile)),A.writeToStdout!==void 0&&console.log(fe(A.writeToStdout).replace(/\n$/,""))},oe=(A,H)=>{let X={errors:we(A.errors,D),warnings:we(A.warnings,D)};se(A,X),B(X,E,()=>{if(X.errors.length>0)return H(be("Build failed",X.errors,X.warnings),null);if(A.rebuildID!==void 0){if(!Y){let ne=!1;Y=()=>new Promise((pe,ge)=>{if(ne||u)throw new Error("Cannot rebuild");k(S,{command:"rebuild",rebuildID:A.rebuildID},(Z,Ze)=>{if(Z)return H(be("Build failed",[{pluginName:"",text:Z,location:null,notes:[],detail:void 0}],[]),null);oe(Ze,(Pe,et)=>{Pe?ge(Pe):pe(et)})})}),S.ref(),Y.dispose=()=>{ne||(ne=!0,k(S,{command:"rebuild-dispose",rebuildID:A.rebuildID},()=>{}),S.unref())}}X.rebuild=Y}if(A.watchID!==void 0){if(!J){let ne=!1;S.ref(),J=()=>{ne||(ne=!0,s.delete(A.watchID),k(S,{command:"watch-stop",watchID:A.watchID},()=>{}),S.unref())},I&&s.set(A.watchID,(pe,ge)=>{if(pe){I.onRebuild&&I.onRebuild(pe,null);return}let Z={errors:we(ge.errors,D),warnings:we(ge.warnings,D)};se(ge,Z),B(Z,E,()=>{if(Z.errors.length>0){I.onRebuild&&I.onRebuild(be("Build failed",Z.errors,Z.warnings),null);return}ge.rebuildID!==void 0&&(Z.rebuild=Y),Z.stop=J,I.onRebuild&&I.onRebuild(null,Z)})})}X.stop=J}H(null,X)})};if(a&&e.isBrowser)throw new Error('Cannot enable "write" in the browser');if(v&&e.isSync)throw new Error('Cannot use "incremental" with a synchronous build');if(I&&e.isSync)throw new Error('Cannot use "watch" with a synchronous build');k(S,K,(A,H)=>{if(A)return P(new Error(A),null);if(V){let X=H,ne=!1;S.ref();let pe={port:X.port,host:X.host,wait:V.wait,stop(){ne||(ne=!0,V.stop(),S.unref())}};return S.ref(),V.wait.then(S.unref,S.unref),P(null,pe)}return oe(H,P)})};return{readFromStdout:F,afterClose:U,service:{buildOrServe:Q,transform:({callName:g,refs:c,input:o,options:p,isTTY:j,fs:M,callback:P})=>{let N=Ge(),D=E=>{try{if(typeof o!="string")throw new Error('The input to "transform" must be a string');let O=pt(g,p,j,ce);k(c,{command:"transform",flags:O,inputFS:E!==null,input:E!==null?E:o},(T,S)=>{if(T)return P(new Error(T),null);let $=we(S.errors,N),y=we(S.warnings,N),w=1,a=()=>--w==0&&P(null,{warnings:y,code:S.code,map:S.map});if($.length>0)return P(be("Transform failed",$,y),null);S.codeFS&&(w++,M.readFile(S.code,(b,C)=>{b!==null?P(b,null):(S.code=C,a())})),S.mapFS&&(w++,M.readFile(S.map,(b,C)=>{b!==null?P(b,null):(S.map=C,a())})),a()})}catch(O){let B=[];try{Oe(B,p,{},j,ce)}catch(S){}let T=he(O,e,N,void 0,"");k(c,{command:"error",flags:B,error:T},()=>{T.detail=N.load(T.detail),P(be("Transform failed",[T],[]),null)})}};if(typeof o=="string"&&o.length>1024*1024){let E=D;D=()=>M.writeFile(o,E)}D(null)},formatMessages:({callName:g,refs:c,messages:o,options:p,callback:j})=>{let M=de(o,"messages",null,"");if(!p)throw new Error(`Missing second argument in ${g}() call`);let P={},N=n(p,P,"kind",h),D=n(p,P,"color",L),E=n(p,P,"terminalWidth",me);if(_(p,P,`in ${g}() call`),N===void 0)throw new Error(`Missing "kind" in ${g}() call`);if(N!=="error"&&N!=="warning")throw new Error(`Expected "kind" to be "error" or "warning" in ${g}() call`);let O={command:"format-msgs",messages:M,isWarning:N==="warning"};D!==void 0&&(O.color=D),E!==void 0&&(O.terminalWidth=E),k(c,O,(B,T)=>{if(B)return j(new Error(B),null);j(null,T.messages)})},analyzeMetafile:({callName:g,refs:c,metafile:o,options:p,callback:j})=>{p===void 0&&(p={});let M={},P=n(p,M,"color",L),N=n(p,M,"verbose",L);_(p,M,`in ${g}() call`);let D={command:"analyze-metafile",metafile:o};P!==void 0&&(D.color=P),N!==void 0&&(D.verbose=N),k(c,D,(E,O)=>{if(E)return j(new Error(E),null);j(null,O.result)})}}}}function Ge(){let e=new Map,t=0;return{load(r){return e.get(r)},store(r){if(r===void 0)return-1;let s=t++;return e.set(s,r),s}}}function Se(e,t,r){let s,d=!1;return()=>{if(d)return s;d=!0;try{let l=(e.stack+"").split(`
|
2
|
+
var Me=Object.defineProperty,tt=Object.defineProperties;var rt=Object.getOwnPropertyDescriptors;var Ue=Object.getOwnPropertySymbols;var nt=Object.prototype.hasOwnProperty,lt=Object.prototype.propertyIsEnumerable;var qe=(e,t,r)=>t in e?Me(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Be=(e,t)=>{for(var r in t||(t={}))nt.call(t,r)&&qe(e,r,t[r]);if(Ue)for(var r of Ue(t))lt.call(t,r)&&qe(e,r,t[r]);return e},Te=(e,t)=>tt(e,rt(t)),it=e=>Me(e,"__esModule",{value:!0});var st=(e,t)=>{it(e);for(var r in t)Me(e,r,{get:t[r],enumerable:!0})};var ae=(e,t,r)=>new Promise((s,d)=>{var l=m=>{try{i(r.next(m))}catch(R){d(R)}},u=m=>{try{i(r.throw(m))}catch(R){d(R)}},i=m=>m.done?s(m.value):Promise.resolve(m.value).then(l,u);i((r=r.apply(e,t)).next())});st(exports,{analyzeMetafile:()=>Ot,analyzeMetafileSync:()=>Et,build:()=>bt,buildSync:()=>St,formatMessages:()=>Rt,formatMessagesSync:()=>kt,initialize:()=>$t,serve:()=>wt,transform:()=>vt,transformSync:()=>xt,version:()=>ht});function Ae(e){let t=s=>{if(s===null)r.write8(0);else if(typeof s=="boolean")r.write8(1),r.write8(+s);else if(typeof s=="number")r.write8(2),r.write32(s|0);else if(typeof s=="string")r.write8(3),r.write(ue(s));else if(s instanceof Uint8Array)r.write8(4),r.write(s);else if(s instanceof Array){r.write8(5),r.write32(s.length);for(let d of s)t(d)}else{let d=Object.keys(s);r.write8(6),r.write32(d.length);for(let l of d)r.write(ue(l)),t(s[l])}},r=new Fe;return r.write32(0),r.write32(e.id<<1|+!e.isRequest),t(e.value),je(r.buf,r.len-4,0),r.buf.subarray(0,r.len)}function We(e){let t=()=>{switch(r.read8()){case 0:return null;case 1:return!!r.read8();case 2:return r.read32();case 3:return ce(r.read());case 4:return r.read();case 5:{let u=r.read32(),i=[];for(let m=0;m<u;m++)i.push(t());return i}case 6:{let u=r.read32(),i={};for(let m=0;m<u;m++)i[ce(r.read())]=t();return i}default:throw new Error("Invalid packet")}},r=new Fe(e),s=r.read32(),d=(s&1)==0;s>>>=1;let l=t();if(r.ptr!==e.length)throw new Error("Invalid packet");return{id:s,isRequest:d,value:l}}var Fe=class{constructor(t=new Uint8Array(1024)){this.buf=t;this.len=0;this.ptr=0}_write(t){if(this.len+t>this.buf.length){let r=new Uint8Array((this.len+t)*2);r.set(this.buf),this.buf=r}return this.len+=t,this.len-t}write8(t){let r=this._write(1);this.buf[r]=t}write32(t){let r=this._write(4);je(this.buf,t,r)}write(t){let r=this._write(4+t.length);je(this.buf,t.length,r),this.buf.set(t,r+4)}_read(t){if(this.ptr+t>this.buf.length)throw new Error("Invalid packet");return this.ptr+=t,this.ptr-t}read8(){return this.buf[this._read(1)]}read32(){return Ne(this.buf,this._read(4))}read(){let t=this.read32(),r=new Uint8Array(t),s=this._read(r.length);return r.set(this.buf.subarray(s,s+t)),r}},ue,ce;if(typeof TextEncoder!="undefined"&&typeof TextDecoder!="undefined"){let e=new TextEncoder,t=new TextDecoder;ue=r=>e.encode(r),ce=r=>t.decode(r)}else if(typeof Buffer!="undefined")ue=e=>{let t=Buffer.from(e);return t instanceof Uint8Array||(t=new Uint8Array(t)),t},ce=e=>{let{buffer:t,byteOffset:r,byteLength:s}=e;return Buffer.from(t,r,s).toString()};else throw new Error("No UTF-8 codec found");function Ne(e,t){return e[t++]|e[t++]<<8|e[t++]<<16|e[t++]<<24}function je(e,t,r){e[r++]=t,e[r++]=t>>8,e[r++]=t>>16,e[r++]=t>>24}function ze(e){if(e+="",e.indexOf(",")>=0)throw new Error(`Invalid target: ${e}`);return e}var Ce=()=>null,L=e=>typeof e=="boolean"?null:"a boolean",at=e=>typeof e=="boolean"||typeof e=="object"&&!Array.isArray(e)?null:"a boolean or an object",h=e=>typeof e=="string"?null:"a string",Ke=e=>e instanceof RegExp?null:"a RegExp object",me=e=>typeof e=="number"&&e===(e|0)?null:"an integer",Ie=e=>typeof e=="function"?null:"a function",z=e=>Array.isArray(e)?null:"an array",ye=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"an object",ut=e=>typeof e=="object"&&e!==null?null:"an array or an object",_e=e=>typeof e=="object"&&!Array.isArray(e)?null:"an object or null",Ve=e=>typeof e=="string"||typeof e=="boolean"?null:"a string or a boolean",ft=e=>typeof e=="string"||typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"a string or an object",ct=e=>typeof e=="string"||Array.isArray(e)?null:"a string or an array",dt=e=>typeof e=="string"||e instanceof Uint8Array?null:"a string or a Uint8Array";function n(e,t,r,s){let d=e[r];if(t[r+""]=!0,d===void 0)return;let l=s(d);if(l!==null)throw new Error(`"${r}" must be ${l}`);return d}function _(e,t,r){for(let s in e)if(!(s in t))throw new Error(`Invalid option ${r}: "${s}"`)}function Je(e){let t=Object.create(null),r=n(e,t,"wasmURL",h),s=n(e,t,"worker",L);return _(e,t,"in startService() call"),{wasmURL:r,worker:s}}function Oe(e,t,r,s,d){let l=n(t,r,"color",L),u=n(t,r,"logLevel",h),i=n(t,r,"logLimit",me);l!==void 0?e.push(`--color=${l}`):s&&e.push("--color=true"),e.push(`--log-level=${u||d}`),e.push(`--log-limit=${i||0}`)}function Ye(e,t,r){let s=n(t,r,"legalComments",h),d=n(t,r,"sourceRoot",h),l=n(t,r,"sourcesContent",L),u=n(t,r,"target",ct),i=n(t,r,"format",h),m=n(t,r,"globalName",h),R=n(t,r,"minify",L),x=n(t,r,"minifySyntax",L),F=n(t,r,"minifyWhitespace",L),U=n(t,r,"minifyIdentifiers",L),k=n(t,r,"charset",h),q=n(t,r,"treeShaking",L),ee=n(t,r,"ignoreAnnotations",L),Q=n(t,r,"jsx",h),te=n(t,r,"jsxFactory",h),re=n(t,r,"jsxFragment",h),le=n(t,r,"define",ye),ie=n(t,r,"pure",z),fe=n(t,r,"keepNames",L);if(s&&e.push(`--legal-comments=${s}`),d!==void 0&&e.push(`--source-root=${d}`),l!==void 0&&e.push(`--sources-content=${l}`),u&&(Array.isArray(u)?e.push(`--target=${Array.from(u).map(ze).join(",")}`):e.push(`--target=${ze(u)}`)),i&&e.push(`--format=${i}`),m&&e.push(`--global-name=${m}`),R&&e.push("--minify"),x&&e.push("--minify-syntax"),F&&e.push("--minify-whitespace"),U&&e.push("--minify-identifiers"),k&&e.push(`--charset=${k}`),q!==void 0&&e.push(`--tree-shaking=${q}`),ee&&e.push("--ignore-annotations"),Q&&e.push(`--jsx=${Q}`),te&&e.push(`--jsx-factory=${te}`),re&&e.push(`--jsx-fragment=${re}`),le)for(let X in le){if(X.indexOf("=")>=0)throw new Error(`Invalid define: ${X}`);e.push(`--define:${X}=${le[X]}`)}if(ie)for(let X of ie)e.push(`--pure:${X}`);fe&&e.push("--keep-names")}function pt(e,t,r,s,d){var w;let l=[],u=[],i=Object.create(null),m=null,R=null,x=null;Oe(l,t,i,r,s),Ye(l,t,i);let F=n(t,i,"sourcemap",Ve),U=n(t,i,"bundle",L),k=n(t,i,"watch",at),q=n(t,i,"splitting",L),ee=n(t,i,"preserveSymlinks",L),Q=n(t,i,"metafile",L),te=n(t,i,"outfile",h),re=n(t,i,"outdir",h),le=n(t,i,"outbase",h),ie=n(t,i,"platform",h),fe=n(t,i,"tsconfig",h),X=n(t,i,"resolveExtensions",z),Re=n(t,i,"nodePaths",z),Ee=n(t,i,"mainFields",z),$e=n(t,i,"conditions",z),De=n(t,i,"external",z),g=n(t,i,"loader",ye),f=n(t,i,"outExtension",ye),o=n(t,i,"publicPath",h),p=n(t,i,"entryNames",h),j=n(t,i,"chunkNames",h),M=n(t,i,"assetNames",h),P=n(t,i,"inject",z),N=n(t,i,"banner",ye),D=n(t,i,"footer",ye),$=n(t,i,"entryPoints",ut),O=n(t,i,"absWorkingDir",h),B=n(t,i,"stdin",ye),T=(w=n(t,i,"write",L))!=null?w:d,S=n(t,i,"allowOverwrite",L),E=n(t,i,"incremental",L)===!0;if(i.plugins=!0,_(t,i,`in ${e}() call`),F&&l.push(`--sourcemap${F===!0?"":`=${F}`}`),U&&l.push("--bundle"),S&&l.push("--allow-overwrite"),k)if(l.push("--watch"),typeof k=="boolean")x={};else{let a=Object.create(null),b=n(k,a,"onRebuild",Ie);_(k,a,`on "watch" in ${e}() call`),x={onRebuild:b}}if(q&&l.push("--splitting"),ee&&l.push("--preserve-symlinks"),Q&&l.push("--metafile"),te&&l.push(`--outfile=${te}`),re&&l.push(`--outdir=${re}`),le&&l.push(`--outbase=${le}`),ie&&l.push(`--platform=${ie}`),fe&&l.push(`--tsconfig=${fe}`),X){let a=[];for(let b of X){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid resolve extension: ${b}`);a.push(b)}l.push(`--resolve-extensions=${a.join(",")}`)}if(o&&l.push(`--public-path=${o}`),p&&l.push(`--entry-names=${p}`),j&&l.push(`--chunk-names=${j}`),M&&l.push(`--asset-names=${M}`),Ee){let a=[];for(let b of Ee){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid main field: ${b}`);a.push(b)}l.push(`--main-fields=${a.join(",")}`)}if($e){let a=[];for(let b of $e){if(b+="",b.indexOf(",")>=0)throw new Error(`Invalid condition: ${b}`);a.push(b)}l.push(`--conditions=${a.join(",")}`)}if(De)for(let a of De)l.push(`--external:${a}`);if(N)for(let a in N){if(a.indexOf("=")>=0)throw new Error(`Invalid banner file type: ${a}`);l.push(`--banner:${a}=${N[a]}`)}if(D)for(let a in D){if(a.indexOf("=")>=0)throw new Error(`Invalid footer file type: ${a}`);l.push(`--footer:${a}=${D[a]}`)}if(P)for(let a of P)l.push(`--inject:${a}`);if(g)for(let a in g){if(a.indexOf("=")>=0)throw new Error(`Invalid loader extension: ${a}`);l.push(`--loader:${a}=${g[a]}`)}if(f)for(let a in f){if(a.indexOf("=")>=0)throw new Error(`Invalid out extension: ${a}`);l.push(`--out-extension:${a}=${f[a]}`)}if($)if(Array.isArray($))for(let a of $)u.push(["",a+""]);else for(let[a,b]of Object.entries($))u.push([a+"",b+""]);if(B){let a=Object.create(null),b=n(B,a,"contents",h),I=n(B,a,"resolveDir",h),c=n(B,a,"sourcefile",h),v=n(B,a,"loader",h);_(B,a,'in "stdin" object'),c&&l.push(`--sourcefile=${c}`),v&&l.push(`--loader=${v}`),I&&(R=I+""),m=b?b+"":""}let y=[];if(Re)for(let a of Re)a+="",y.push(a);return{entries:u,flags:l,write:T,stdinContents:m,stdinResolveDir:R,absWorkingDir:O,incremental:E,nodePaths:y,watch:x}}function gt(e,t,r,s){let d=[],l=Object.create(null);Oe(d,t,l,r,s),Ye(d,t,l);let u=n(t,l,"sourcemap",Ve),i=n(t,l,"tsconfigRaw",ft),m=n(t,l,"sourcefile",h),R=n(t,l,"loader",h),x=n(t,l,"banner",h),F=n(t,l,"footer",h);return _(t,l,`in ${e}() call`),u&&d.push(`--sourcemap=${u===!0?"external":u}`),i&&d.push(`--tsconfig-raw=${typeof i=="string"?i:JSON.stringify(i)}`),m&&d.push(`--sourcefile=${m}`),R&&d.push(`--loader=${R}`),x&&d.push(`--banner=${x}`),F&&d.push(`--footer=${F}`),d}function He(e){let t=new Map,r=new Map,s=new Map,d=new Map,l=0,u=!1,i=0,m=0,R=new Uint8Array(16*1024),x=0,F=g=>{let f=x+g.length;if(f>R.length){let p=new Uint8Array(f*2);p.set(R),R=p}R.set(g,x),x+=g.length;let o=0;for(;o+4<=x;){let p=Ne(R,o);if(o+4+p>x)break;o+=4,te(R.subarray(o,o+p)),o+=p}o>0&&(R.copyWithin(0,o,x),x-=o)},U=()=>{u=!0;for(let g of t.values())g("The service was stopped",null);t.clear();for(let g of d.values())g.onWait("The service was stopped");d.clear();for(let g of s.values())try{g(new Error("The service was stopped"),null)}catch(f){console.error(f)}s.clear()},k=(g,f,o)=>{if(u)return o("The service is no longer running",null);let p=i++;t.set(p,(j,M)=>{try{o(j,M)}finally{g&&g.unref()}}),g&&g.ref(),e.writeToStdin(Ae({id:p,isRequest:!0,value:f}))},q=(g,f)=>{if(u)throw new Error("The service is no longer running");e.writeToStdin(Ae({id:g,isRequest:!1,value:f}))},ee=(g,f)=>ae(this,null,function*(){try{switch(f.command){case"ping":{q(g,{});break}case"start":{let o=r.get(f.key);o?q(g,yield o(f)):q(g,{});break}case"resolve":{let o=r.get(f.key);o?q(g,yield o(f)):q(g,{});break}case"load":{let o=r.get(f.key);o?q(g,yield o(f)):q(g,{});break}case"serve-request":{let o=d.get(f.serveID);o&&o.onRequest&&o.onRequest(f.args),q(g,{});break}case"serve-wait":{let o=d.get(f.serveID);o&&o.onWait(f.error),q(g,{});break}case"watch-rebuild":{let o=s.get(f.watchID);try{o&&o(null,f.args)}catch(p){console.error(p)}q(g,{});break}default:throw new Error("Invalid command: "+f.command)}}catch(o){q(g,{errors:[he(o,e,null,void 0,"")]})}}),Q=!0,te=g=>{if(Q){Q=!1;let o=String.fromCharCode(...g);if(o!=="0.14.3")throw new Error(`Cannot start service: Host version "0.14.3" does not match binary version ${JSON.stringify(o)}`);return}let f=We(g);if(f.isRequest)ee(f.id,f.value);else{let o=t.get(f.id);t.delete(f.id),f.value.error?o(f.value.error,{}):o(null,f.value)}},re=(g,f,o,p)=>ae(this,null,function*(){let j=[],M=[],P={},N={},D=0,$=0,O=[];f=[...f];for(let E of f){let y={};if(typeof E!="object")throw new Error(`Plugin at index ${$} must be an object`);let w=n(E,y,"name",h);if(typeof w!="string"||w==="")throw new Error(`Plugin at index ${$} is missing a name`);try{let a=n(E,y,"setup",Ie);if(typeof a!="function")throw new Error("Plugin is missing a setup function");_(E,y,`on plugin ${JSON.stringify(w)}`);let b={name:w,onResolve:[],onLoad:[]};$++;let I=a({initialOptions:g,onStart(c){let v='This error came from the "onStart" callback registered here:',W=Se(new Error(v),e,"onStart");j.push({name:w,callback:c,note:W})},onEnd(c){let v='This error came from the "onEnd" callback registered here:',W=Se(new Error(v),e,"onEnd");M.push({name:w,callback:c,note:W})},onResolve(c,v){let W='This error came from the "onResolve" callback registered here:',C=Se(new Error(W),e,"onResolve"),K={},V=n(c,K,"filter",Ke),Y=n(c,K,"namespace",h);if(_(c,K,`in onResolve() call for plugin ${JSON.stringify(w)}`),V==null)throw new Error("onResolve() call is missing a filter");let J=D++;P[J]={name:w,callback:v,note:C},b.onResolve.push({id:J,filter:V.source,namespace:Y||""})},onLoad(c,v){let W='This error came from the "onLoad" callback registered here:',C=Se(new Error(W),e,"onLoad"),K={},V=n(c,K,"filter",Ke),Y=n(c,K,"namespace",h);if(_(c,K,`in onLoad() call for plugin ${JSON.stringify(w)}`),V==null)throw new Error("onLoad() call is missing a filter");let J=D++;N[J]={name:w,callback:v,note:C},b.onLoad.push({id:J,filter:V.source,namespace:Y||""})},esbuild:e.esbuild});I&&(yield I),O.push(b)}catch(a){return{ok:!1,error:a,pluginName:w}}}let B=E=>ae(this,null,function*(){switch(E.command){case"start":{let y={errors:[],warnings:[]};return yield Promise.all(j.map(I=>ae(this,[I],function*({name:w,callback:a,note:b}){try{let c=yield a();if(c!=null){if(typeof c!="object")throw new Error(`Expected onStart() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(c,v,"errors",z),C=n(c,v,"warnings",z);_(c,v,`from onStart() callback in plugin ${JSON.stringify(w)}`),W!=null&&y.errors.push(...de(W,"errors",p,w)),C!=null&&y.warnings.push(...de(C,"warnings",p,w))}}catch(c){y.errors.push(he(c,e,p,b&&b(),w))}}))),y}case"resolve":{let y={},w="",a,b;for(let I of E.ids)try{({name:w,callback:a,note:b}=P[I]);let c=yield a({path:E.path,importer:E.importer,namespace:E.namespace,resolveDir:E.resolveDir,kind:E.kind,pluginData:p.load(E.pluginData)});if(c!=null){if(typeof c!="object")throw new Error(`Expected onResolve() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(c,v,"pluginName",h),C=n(c,v,"path",h),K=n(c,v,"namespace",h),V=n(c,v,"suffix",h),Y=n(c,v,"external",L),J=n(c,v,"sideEffects",L),se=n(c,v,"pluginData",Ce),oe=n(c,v,"errors",z),A=n(c,v,"warnings",z),G=n(c,v,"watchFiles",z),H=n(c,v,"watchDirs",z);_(c,v,`from onResolve() callback in plugin ${JSON.stringify(w)}`),y.id=I,W!=null&&(y.pluginName=W),C!=null&&(y.path=C),K!=null&&(y.namespace=K),V!=null&&(y.suffix=V),Y!=null&&(y.external=Y),J!=null&&(y.sideEffects=J),se!=null&&(y.pluginData=p.store(se)),oe!=null&&(y.errors=de(oe,"errors",p,w)),A!=null&&(y.warnings=de(A,"warnings",p,w)),G!=null&&(y.watchFiles=xe(G,"watchFiles")),H!=null&&(y.watchDirs=xe(H,"watchDirs"));break}}catch(c){return{id:I,errors:[he(c,e,p,b&&b(),w)]}}return y}case"load":{let y={},w="",a,b;for(let I of E.ids)try{({name:w,callback:a,note:b}=N[I]);let c=yield a({path:E.path,namespace:E.namespace,suffix:E.suffix,pluginData:p.load(E.pluginData)});if(c!=null){if(typeof c!="object")throw new Error(`Expected onLoad() callback in plugin ${JSON.stringify(w)} to return an object`);let v={},W=n(c,v,"pluginName",h),C=n(c,v,"contents",dt),K=n(c,v,"resolveDir",h),V=n(c,v,"pluginData",Ce),Y=n(c,v,"loader",h),J=n(c,v,"errors",z),se=n(c,v,"warnings",z),oe=n(c,v,"watchFiles",z),A=n(c,v,"watchDirs",z);_(c,v,`from onLoad() callback in plugin ${JSON.stringify(w)}`),y.id=I,W!=null&&(y.pluginName=W),C instanceof Uint8Array?y.contents=C:C!=null&&(y.contents=ue(C)),K!=null&&(y.resolveDir=K),V!=null&&(y.pluginData=p.store(V)),Y!=null&&(y.loader=Y),J!=null&&(y.errors=de(J,"errors",p,w)),se!=null&&(y.warnings=de(se,"warnings",p,w)),oe!=null&&(y.watchFiles=xe(oe,"watchFiles")),A!=null&&(y.watchDirs=xe(A,"watchDirs"));break}}catch(c){return{id:I,errors:[he(c,e,p,b&&b(),w)]}}return y}default:throw new Error("Invalid command: "+E.command)}}),T=(E,y,w)=>w();M.length>0&&(T=(E,y,w)=>{(()=>ae(this,null,function*(){for(let{name:a,callback:b,note:I}of M)try{yield b(E)}catch(c){E.errors.push(yield new Promise(v=>y(c,a,I&&I(),v)))}}))().then(w)});let S=0;return{ok:!0,requestPlugins:O,runOnEndCallbacks:T,pluginRefs:{ref(){++S==1&&r.set(o,B)},unref(){--S==0&&r.delete(o)}}}}),le=(g,f,o)=>{let p={},j=n(f,p,"port",me),M=n(f,p,"host",h),P=n(f,p,"servedir",h),N=n(f,p,"onRequest",Ie),D=l++,$,O=new Promise((B,T)=>{$=S=>{d.delete(D),S!==null?T(new Error(S)):B()}});return o.serve={serveID:D},_(f,p,"in serve() call"),j!==void 0&&(o.serve.port=j),M!==void 0&&(o.serve.host=M),P!==void 0&&(o.serve.servedir=P),d.set(D,{onRequest:N,onWait:$}),{wait:O,stop(){k(g,{command:"serve-stop",serveID:D},()=>{})}}},ie="warning",fe="silent",X=g=>{let f=m++,o=Ge(),p,{refs:j,options:M,isTTY:P,callback:N}=g;if(typeof M=="object"){let O=M.plugins;if(O!==void 0){if(!Array.isArray(O))throw new Error('"plugins" must be an array');p=O}}let D=(O,B,T,S)=>{let E=[];try{Oe(E,M,{},P,ie)}catch(w){}let y=he(O,e,o,T,B);k(j,{command:"error",flags:E,error:y},()=>{y.detail=o.load(y.detail),S(y)})},$=(O,B)=>{D(O,B,void 0,T=>{N(be("Build failed",[T],[]),null)})};if(p&&p.length>0){if(e.isSync)return $(new Error("Cannot use plugins in synchronous API calls"),"");re(M,p,f,o).then(O=>{if(!O.ok)$(O.error,O.pluginName);else try{Re(Te(Be({},g),{key:f,details:o,logPluginError:D,requestPlugins:O.requestPlugins,runOnEndCallbacks:O.runOnEndCallbacks,pluginRefs:O.pluginRefs}))}catch(B){$(B,"")}},O=>$(O,""))}else try{Re(Te(Be({},g),{key:f,details:o,logPluginError:D,requestPlugins:null,runOnEndCallbacks:(O,B,T)=>T(),pluginRefs:null}))}catch(O){$(O,"")}},Re=({callName:g,refs:f,serveOptions:o,options:p,isTTY:j,defaultWD:M,callback:P,key:N,details:D,logPluginError:$,requestPlugins:O,runOnEndCallbacks:B,pluginRefs:T})=>{let S={ref(){T&&T.ref(),f&&f.ref()},unref(){T&&T.unref(),f&&f.unref()}},E=!e.isBrowser,{entries:y,flags:w,write:a,stdinContents:b,stdinResolveDir:I,absWorkingDir:c,incremental:v,nodePaths:W,watch:C}=pt(g,p,j,ie,E),K={command:"build",key:N,entries:y,flags:w,write:a,stdinContents:b,stdinResolveDir:I,absWorkingDir:c||M,incremental:v,nodePaths:W};O&&(K.plugins=O);let V=o&&le(S,o,K),Y,J,se=(A,G)=>{A.outputFiles&&(G.outputFiles=A.outputFiles.map(mt)),A.metafile&&(G.metafile=JSON.parse(A.metafile)),A.writeToStdout!==void 0&&console.log(ce(A.writeToStdout).replace(/\n$/,""))},oe=(A,G)=>{let H={errors:we(A.errors,D),warnings:we(A.warnings,D)};se(A,H),B(H,$,()=>{if(H.errors.length>0)return G(be("Build failed",H.errors,H.warnings),null);if(A.rebuildID!==void 0){if(!Y){let ne=!1;Y=()=>new Promise((pe,ge)=>{if(ne||u)throw new Error("Cannot rebuild");k(S,{command:"rebuild",rebuildID:A.rebuildID},(Z,Ze)=>{if(Z)return G(be("Build failed",[{pluginName:"",text:Z,location:null,notes:[],detail:void 0}],[]),null);oe(Ze,(Pe,et)=>{Pe?ge(Pe):pe(et)})})}),S.ref(),Y.dispose=()=>{ne||(ne=!0,k(S,{command:"rebuild-dispose",rebuildID:A.rebuildID},()=>{}),S.unref())}}H.rebuild=Y}if(A.watchID!==void 0){if(!J){let ne=!1;S.ref(),J=()=>{ne||(ne=!0,s.delete(A.watchID),k(S,{command:"watch-stop",watchID:A.watchID},()=>{}),S.unref())},C&&s.set(A.watchID,(pe,ge)=>{if(pe){C.onRebuild&&C.onRebuild(pe,null);return}let Z={errors:we(ge.errors,D),warnings:we(ge.warnings,D)};se(ge,Z),B(Z,$,()=>{if(Z.errors.length>0){C.onRebuild&&C.onRebuild(be("Build failed",Z.errors,Z.warnings),null);return}ge.rebuildID!==void 0&&(Z.rebuild=Y),Z.stop=J,C.onRebuild&&C.onRebuild(null,Z)})})}H.stop=J}G(null,H)})};if(a&&e.isBrowser)throw new Error('Cannot enable "write" in the browser');if(v&&e.isSync)throw new Error('Cannot use "incremental" with a synchronous build');if(C&&e.isSync)throw new Error('Cannot use "watch" with a synchronous build');k(S,K,(A,G)=>{if(A)return P(new Error(A),null);if(V){let H=G,ne=!1;S.ref();let pe={port:H.port,host:H.host,wait:V.wait,stop(){ne||(ne=!0,V.stop(),S.unref())}};return S.ref(),V.wait.then(S.unref,S.unref),P(null,pe)}return oe(G,P)})};return{readFromStdout:F,afterClose:U,service:{buildOrServe:X,transform:({callName:g,refs:f,input:o,options:p,isTTY:j,fs:M,callback:P})=>{let N=Ge(),D=$=>{try{if(typeof o!="string")throw new Error('The input to "transform" must be a string');let O=gt(g,p,j,fe);k(f,{command:"transform",flags:O,inputFS:$!==null,input:$!==null?$:o},(T,S)=>{if(T)return P(new Error(T),null);let E=we(S.errors,N),y=we(S.warnings,N),w=1,a=()=>--w==0&&P(null,{warnings:y,code:S.code,map:S.map});if(E.length>0)return P(be("Transform failed",E,y),null);S.codeFS&&(w++,M.readFile(S.code,(b,I)=>{b!==null?P(b,null):(S.code=I,a())})),S.mapFS&&(w++,M.readFile(S.map,(b,I)=>{b!==null?P(b,null):(S.map=I,a())})),a()})}catch(O){let B=[];try{Oe(B,p,{},j,fe)}catch(S){}let T=he(O,e,N,void 0,"");k(f,{command:"error",flags:B,error:T},()=>{T.detail=N.load(T.detail),P(be("Transform failed",[T],[]),null)})}};if(typeof o=="string"&&o.length>1024*1024){let $=D;D=()=>M.writeFile(o,$)}D(null)},formatMessages:({callName:g,refs:f,messages:o,options:p,callback:j})=>{let M=de(o,"messages",null,"");if(!p)throw new Error(`Missing second argument in ${g}() call`);let P={},N=n(p,P,"kind",h),D=n(p,P,"color",L),$=n(p,P,"terminalWidth",me);if(_(p,P,`in ${g}() call`),N===void 0)throw new Error(`Missing "kind" in ${g}() call`);if(N!=="error"&&N!=="warning")throw new Error(`Expected "kind" to be "error" or "warning" in ${g}() call`);let O={command:"format-msgs",messages:M,isWarning:N==="warning"};D!==void 0&&(O.color=D),$!==void 0&&(O.terminalWidth=$),k(f,O,(B,T)=>{if(B)return j(new Error(B),null);j(null,T.messages)})},analyzeMetafile:({callName:g,refs:f,metafile:o,options:p,callback:j})=>{p===void 0&&(p={});let M={},P=n(p,M,"color",L),N=n(p,M,"verbose",L);_(p,M,`in ${g}() call`);let D={command:"analyze-metafile",metafile:o};P!==void 0&&(D.color=P),N!==void 0&&(D.verbose=N),k(f,D,($,O)=>{if($)return j(new Error($),null);j(null,O.result)})}}}}function Ge(){let e=new Map,t=0;return{load(r){return e.get(r)},store(r){if(r===void 0)return-1;let s=t++;return e.set(s,r),s}}}function Se(e,t,r){let s,d=!1;return()=>{if(d)return s;d=!0;try{let l=(e.stack+"").split(`
|
3
3
|
`);l.splice(1,1);let u=Qe(t,l,r);if(u)return s={text:e.message,location:u},s}catch(l){}}}function he(e,t,r,s,d){let l="Internal error",u=null;try{l=(e&&e.message||e)+""}catch(i){}try{u=Qe(t,(e.stack+"").split(`
|
4
4
|
`),"")}catch(i){}return{pluginName:d,text:l,location:u,notes:s?[s]:[],detail:r?r.store(e):-1}}function Qe(e,t,r){let s=" at ";if(e.readFileSync&&!t[0].startsWith(s)&&t[1].startsWith(s))for(let d=1;d<t.length;d++){let l=t[d];if(!!l.startsWith(s))for(l=l.slice(s.length);;){let u=/^(?:new |async )?\S+ \((.*)\)$/.exec(l);if(u){l=u[1];continue}if(u=/^eval at \S+ \((.*)\)(?:, \S+:\d+:\d+)?$/.exec(l),u){l=u[1];continue}if(u=/^(\S+):(\d+):(\d+)$/.exec(l),u){let i;try{i=e.readFileSync(u[1],"utf8")}catch(F){break}let m=i.split(/\r\n|\r|\n|\u2028|\u2029/)[+u[2]-1]||"",R=+u[3]-1,x=m.slice(R,R+r.length)===r?r.length:0;return{file:u[1],namespace:"file",line:+u[2],column:ue(m.slice(0,R)).length,length:ue(m.slice(R,R+x)).length,lineText:m+`
|
5
5
|
`+t.slice(1).join(`
|
6
6
|
`),suggestion:""}}break}}return null}function be(e,t,r){let s=5,d=t.length<1?"":` with ${t.length} error${t.length<2?"":"s"}:`+t.slice(0,s+1).map((u,i)=>{if(i===s)return`
|
7
7
|
...`;if(!u.location)return`
|
8
8
|
error: ${u.text}`;let{file:m,line:R,column:x}=u.location,F=u.pluginName?`[plugin: ${u.pluginName}] `:"";return`
|
9
|
-
${m}:${R}:${x}: error: ${F}${u.text}`}).join(""),l=new Error(`${e}${d}`);return l.errors=t,l.warnings=r,l}function we(e,t){for(let r of e)r.detail=t.load(r.detail);return e}function Xe(e,t){if(e==null)return null;let r={},s=n(e,r,"file",h),d=n(e,r,"namespace",h),l=n(e,r,"line",me),u=n(e,r,"column",me),i=n(e,r,"length",me),m=n(e,r,"lineText",h),R=n(e,r,"suggestion",h);return _(e,r,t),{file:s||"",namespace:d||"",line:l||0,column:u||0,length:i||0,lineText:m||"",suggestion:R||""}}function de(e,t,r,s){let d=[],l=0;for(let u of e){let i={},m=n(u,i,"pluginName",h),R=n(u,i,"text",h),x=n(u,i,"location",_e),F=n(u,i,"notes",z),U=n(u,i,"detail",Ie),k=`in element ${l} of "${t}"`;_(u,i,k);let q=[];if(F)for(let ee of F){let G={},te=n(ee,G,"text",h),re=n(ee,G,"location",_e);_(ee,G,k),q.push({text:te||"",location:Xe(re,k)})}d.push({pluginName:m||s,text:R||"",location:Xe(x,k),notes:q,detail:r?r.store(U):-1}),l++}return d}function xe(e,t){let r=[];for(let s of e){if(typeof s!="string")throw new Error(`${JSON.stringify(t)} must be an array of strings`);r.push(s)}return r}function gt({path:e,contents:t}){let r=null;return{path:e,contents:t,get text(){return r===null&&(r=fe(t)),r}}}var mt="0.13.13",yt=e=>ke().build(e),ht=()=>{throw new Error('The "serve" API only works in node')},bt=(e,t)=>ke().transform(e,t),wt=(e,t)=>ke().formatMessages(e,t),vt=(e,t)=>ke().analyzeMetafile(e,t),Rt=()=>{throw new Error('The "buildSync" API only works in node')},Ot=()=>{throw new Error('The "transformSync" API only works in node')},St=()=>{throw new Error('The "formatMessagesSync" API only works in node')},xt=()=>{throw new Error('The "analyzeMetafileSync" API only works in node')},ve,Le,ke=()=>{if(Le)return Le;throw ve?new Error('You need to wait for the promise returned from "initialize" to be resolved before calling this'):new Error('You need to call "initialize" before calling this')},kt=e=>{e=Je(e||{});let t=e.wasmURL,r=e.worker!==!1;if(!t)throw new Error('Must provide the "wasmURL" option');if(t+="",ve)throw new Error('Cannot call "initialize" more than once');return ve=Et(t,r),ve.catch(()=>{ve=void 0}),ve},Et=(e,t)=>ae(void 0,null,function*(){let r=yield fetch(e);if(!r.ok)throw new Error(`Failed to download ${JSON.stringify(e)}`);let s=yield r.arrayBuffer(),d='{let global={};for(let o=self;o;o=Object.getPrototypeOf(o))for(let k of Object.getOwnPropertyNames(o))if(!(k in global))Object.defineProperty(global,k,{get:()=>self[k]});\n// Copyright 2018 The Go Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style\n// license that can be found in the LICENSE file.\nvar y=(a,g,f)=>new Promise((r,n)=>{var s=h=>{try{l(f.next(h))}catch(u){n(u)}},i=h=>{try{l(f.throw(h))}catch(u){n(u)}},l=h=>h.done?r(h.value):Promise.resolve(h.value).then(s,i);l((f=f.apply(a,g)).next())});(()=>{if(typeof global=="undefined")if(typeof window!="undefined")window.global=window;else if(typeof self!="undefined")self.global=self;else throw new Error("cannot export Go (neither global, window nor self is defined)");if(!global.require&&typeof require!="undefined"&&(global.require=require),!global.fs&&global.require){const r=require("fs");typeof r=="object"&&r!==null&&Object.keys(r).length!==0&&(global.fs=Object.assign({},r,{write(n,s,i,l,h,u){if(i===0&&l===s.length&&h===null){if(n===process.stdout.fd){try{process.stdout.write(s,m=>m?u(m,0,null):u(null,l,s))}catch(m){u(m,0,null)}return}if(n===process.stderr.fd){try{process.stderr.write(s,m=>m?u(m,0,null):u(null,l,s))}catch(m){u(m,0,null)}return}}r.write(n,s,i,l,h,u)}}))}const a=()=>{const r=new Error("not implemented");return r.code="ENOSYS",r};if(!global.fs){let r="";global.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1},writeSync(n,s){r+=f.decode(s);const i=r.lastIndexOf(`\n`);return i!=-1&&(console.log(r.substr(0,i)),r=r.substr(i+1)),s.length},write(n,s,i,l,h,u){if(i!==0||l!==s.length||h!==null){u(a());return}const m=this.writeSync(n,s);u(null,m)},chmod(n,s,i){i(a())},chown(n,s,i,l){l(a())},close(n,s){s(a())},fchmod(n,s,i){i(a())},fchown(n,s,i,l){l(a())},fstat(n,s){s(a())},fsync(n,s){s(null)},ftruncate(n,s,i){i(a())},lchown(n,s,i,l){l(a())},link(n,s,i){i(a())},lstat(n,s){s(a())},mkdir(n,s,i){i(a())},open(n,s,i,l){l(a())},read(n,s,i,l,h,u){u(a())},readdir(n,s){s(a())},readlink(n,s){s(a())},rename(n,s,i){i(a())},rmdir(n,s){s(a())},stat(n,s){s(a())},symlink(n,s,i){i(a())},truncate(n,s,i){i(a())},unlink(n,s){s(a())},utimes(n,s,i,l){l(a())}}}if(global.process||(global.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw a()},pid:-1,ppid:-1,umask(){throw a()},cwd(){throw a()},chdir(){throw a()}}),!global.crypto&&global.require){const r=require("crypto");global.crypto={getRandomValues(n){r.randomFillSync(n)}}}if(!global.crypto)throw new Error("global.crypto is not available, polyfill required (getRandomValues only)");if(global.performance||(global.performance={now(){const[r,n]=process.hrtime();return r*1e3+n/1e6}}),!global.TextEncoder&&global.require&&(global.TextEncoder=require("util").TextEncoder),!global.TextEncoder)throw new Error("global.TextEncoder is not available, polyfill required");if(!global.TextDecoder&&global.require&&(global.TextDecoder=require("util").TextDecoder),!global.TextDecoder)throw new Error("global.TextDecoder is not available, polyfill required");const g=new TextEncoder("utf-8"),f=new TextDecoder("utf-8");if(global.Go=class{constructor(){this.argv=["js"],this.env={},this.exit=e=>{e!==0&&console.warn("exit code:",e)},this._exitPromise=new Promise(e=>{this._resolveExitPromise=e}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;const r=(e,t)=>{this.mem.setUint32(e+0,t,!0),this.mem.setUint32(e+4,Math.floor(t/4294967296),!0)},n=e=>{const t=this.mem.getUint32(e+0,!0),o=this.mem.getInt32(e+4,!0);return t+o*4294967296},s=e=>{const t=this.mem.getFloat64(e,!0);if(t===0)return;if(!isNaN(t))return t;const o=this.mem.getUint32(e,!0);return this._values[o]},i=(e,t)=>{const o=2146959360;if(typeof t=="number"&&t!==0){if(isNaN(t)){this.mem.setUint32(e+4,o,!0),this.mem.setUint32(e,0,!0);return}this.mem.setFloat64(e,t,!0);return}if(t===void 0){this.mem.setFloat64(e,0,!0);return}let c=this._ids.get(t);c===void 0&&(c=this._idPool.pop(),c===void 0&&(c=this._values.length),this._values[c]=t,this._goRefCounts[c]=0,this._ids.set(t,c)),this._goRefCounts[c]++;let d=0;switch(typeof t){case"object":t!==null&&(d=1);break;case"string":d=2;break;case"symbol":d=3;break;case"function":d=4;break}this.mem.setUint32(e+4,o|d,!0),this.mem.setUint32(e,c,!0)},l=e=>{const t=n(e+0),o=n(e+8);return new Uint8Array(this._inst.exports.mem.buffer,t,o)},h=e=>{const t=n(e+0),o=n(e+8),c=new Array(o);for(let d=0;d<o;d++)c[d]=s(t+d*8);return c},u=e=>{const t=n(e+0),o=n(e+8);return f.decode(new DataView(this._inst.exports.mem.buffer,t,o))},m=Date.now()-performance.now();this.importObject={go:{"runtime.wasmExit":e=>{e>>>=0;const t=this.mem.getInt32(e+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(t)},"runtime.wasmWrite":e=>{e>>>=0;const t=n(e+8),o=n(e+16),c=this.mem.getInt32(e+24,!0);fs.writeSync(t,new Uint8Array(this._inst.exports.mem.buffer,o,c))},"runtime.resetMemoryDataView":e=>{e>>>=0,this.mem=new DataView(this._inst.exports.mem.buffer)},"runtime.nanotime1":e=>{e>>>=0,r(e+8,(m+performance.now())*1e6)},"runtime.walltime":e=>{e>>>=0;const t=new Date().getTime();r(e+8,t/1e3),this.mem.setInt32(e+16,t%1e3*1e6,!0)},"runtime.scheduleTimeoutEvent":e=>{e>>>=0;const t=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(t,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(t);)console.warn("scheduleTimeoutEvent: missed timeout event"),this._resume()},n(e+8)+1)),this.mem.setInt32(e+16,t,!0)},"runtime.clearTimeoutEvent":e=>{e>>>=0;const t=this.mem.getInt32(e+8,!0);clearTimeout(this._scheduledTimeouts.get(t)),this._scheduledTimeouts.delete(t)},"runtime.getRandomData":e=>{e>>>=0,crypto.getRandomValues(l(e+8))},"syscall/js.finalizeRef":e=>{e>>>=0;const t=this.mem.getUint32(e+8,!0);if(this._goRefCounts[t]--,this._goRefCounts[t]===0){const o=this._values[t];this._values[t]=null,this._ids.delete(o),this._idPool.push(t)}},"syscall/js.stringVal":e=>{e>>>=0,i(e+24,u(e+8))},"syscall/js.valueGet":e=>{e>>>=0;const t=Reflect.get(s(e+8),u(e+16));e=this._inst.exports.getsp()>>>0,i(e+32,t)},"syscall/js.valueSet":e=>{e>>>=0,Reflect.set(s(e+8),u(e+16),s(e+32))},"syscall/js.valueDelete":e=>{e>>>=0,Reflect.deleteProperty(s(e+8),u(e+16))},"syscall/js.valueIndex":e=>{e>>>=0,i(e+24,Reflect.get(s(e+8),n(e+16)))},"syscall/js.valueSetIndex":e=>{e>>>=0,Reflect.set(s(e+8),n(e+16),s(e+24))},"syscall/js.valueCall":e=>{e>>>=0;try{const t=s(e+8),o=Reflect.get(t,u(e+16)),c=h(e+32),d=Reflect.apply(o,t,c);e=this._inst.exports.getsp()>>>0,i(e+56,d),this.mem.setUint8(e+64,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+56,t),this.mem.setUint8(e+64,0)}},"syscall/js.valueInvoke":e=>{e>>>=0;try{const t=s(e+8),o=h(e+16),c=Reflect.apply(t,void 0,o);e=this._inst.exports.getsp()>>>0,i(e+40,c),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueNew":e=>{e>>>=0;try{const t=s(e+8),o=h(e+16),c=Reflect.construct(t,o);e=this._inst.exports.getsp()>>>0,i(e+40,c),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueLength":e=>{e>>>=0,r(e+16,parseInt(s(e+8).length))},"syscall/js.valuePrepareString":e=>{e>>>=0;const t=g.encode(String(s(e+8)));i(e+16,t),r(e+24,t.length)},"syscall/js.valueLoadString":e=>{e>>>=0;const t=s(e+8);l(e+16).set(t)},"syscall/js.valueInstanceOf":e=>{e>>>=0,this.mem.setUint8(e+24,s(e+8)instanceof s(e+16)?1:0)},"syscall/js.copyBytesToGo":e=>{e>>>=0;const t=l(e+8),o=s(e+32);if(!(o instanceof Uint8Array||o instanceof Uint8ClampedArray)){this.mem.setUint8(e+48,0);return}const c=o.subarray(0,t.length);t.set(c),r(e+40,c.length),this.mem.setUint8(e+48,1)},"syscall/js.copyBytesToJS":e=>{e>>>=0;const t=s(e+8),o=l(e+16);if(!(t instanceof Uint8Array||t instanceof Uint8ClampedArray)){this.mem.setUint8(e+48,0);return}const c=o.subarray(0,t.length);t.set(c),r(e+40,c.length),this.mem.setUint8(e+48,1)},debug:e=>{console.log(e)}}}}run(r){return y(this,null,function*(){if(!(r instanceof WebAssembly.Instance))throw new Error("Go.run: WebAssembly.Instance expected");this._inst=r,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,global,this],this._goRefCounts=new Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[global,5],[this,6]]),this._idPool=[],this.exited=!1;let n=4096;const s=e=>{const t=n,o=g.encode(e+"\\0");return new Uint8Array(this.mem.buffer,n,o.length).set(o),n+=o.length,n%8!=0&&(n+=8-n%8),t},i=this.argv.length,l=[];this.argv.forEach(e=>{l.push(s(e))}),l.push(0),Object.keys(this.env).sort().forEach(e=>{l.push(s(`${e}=${this.env[e]}`))}),l.push(0);const u=n;l.forEach(e=>{this.mem.setUint32(n,e,!0),this.mem.setUint32(n+4,0,!0),n+=8});const m=4096+4096;if(n>=m)throw new Error("command line too long");this._inst.exports.run(i,u),this.exited&&this._resolveExitPromise(),yield this._exitPromise})}_resume(){if(this.exited)throw new Error("Go program has already exited");this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(r){const n=this;return function(){const s={id:r,this:this,args:arguments};return n._pendingEvent=s,n._resume(),s.result}}},typeof module!="undefined"&&global.require&&global.require.main===module&&global.process&&global.process.versions&&!global.process.versions.electron){process.argv.length<3&&(console.error("usage: go_js_wasm_exec [wasm binary] [arguments]"),process.exit(1));const r=new Go;r.argv=process.argv.slice(2),r.env=Object.assign({TMPDIR:require("os").tmpdir()},process.env),r.exit=process.exit,WebAssembly.instantiate(fs.readFileSync(process.argv[2]),r.importObject).then(n=>(process.on("exit",s=>{s===0&&!r.exited&&(r._pendingEvent={id:0},r._resume())}),r.run(n.instance))).catch(n=>{console.error(n),process.exit(1)})}})();\nonmessage=({data:c})=>{let y=new TextDecoder,s=global.fs,a="";s.writeSync=(e,t)=>{if(e===1)postMessage(t);else if(e===2){a+=y.decode(t);let n=a.split(`\n`);n.length>1&&console.log(n.slice(0,-1).join(`\n`)),a=n[n.length-1]}else throw new Error("Bad write");return t.length};let l=[],i,r=0;onmessage=({data:e})=>{e.length>0&&(l.push(e),i&&i())},s.read=(e,t,n,d,h,m)=>{if(e!==0||n!==0||d!==t.length||h!==null)throw new Error("Bad read");if(l.length===0){i=()=>s.read(e,t,n,d,h,m);return}let g=l[0],u=Math.max(0,Math.min(d,g.length-r));t.set(g.subarray(r,r+u),n),r+=u,r===g.length&&(l.shift(),r=0),m(null,u)};let o=new global.Go;o.argv=["","--service=0.13.13"],WebAssembly.instantiate(c,o.importObject).then(({instance:e})=>o.run(e))};}',l;if(t){let m=new Blob([d],{type:"text/javascript"});l=new Worker(URL.createObjectURL(m))}else{let R=new Function("postMessage",d+"var onmessage; return m => onmessage(m)")(x=>l.onmessage({data:x}));l={onmessage:null,postMessage:x=>R({data:x}),terminate(){}}}l.postMessage(s),l.onmessage=({data:m})=>u(m);let{readFromStdout:u,service:i}=He({writeToStdin(m){l.postMessage(m)},isSync:!1,isBrowser:!0});Le={build:m=>new Promise((R,x)=>i.buildOrServe({callName:"build",refs:null,serveOptions:null,options:m,isTTY:!1,defaultWD:"/",callback:(F,U)=>F?x(F):R(U)})),transform:(m,R)=>new Promise((x,F)=>i.transform({callName:"transform",refs:null,input:m,options:R||{},isTTY:!1,fs:{readFile(U,k){k(new Error("Internal error"),null)},writeFile(U,k){k(null)}},callback:(U,k)=>U?F(U):x(k)})),formatMessages:(m,R)=>new Promise((x,F)=>i.formatMessages({callName:"formatMessages",refs:null,messages:m,options:R,callback:(U,k)=>U?F(U):x(k)})),analyzeMetafile:(m,R)=>new Promise((x,F)=>i.analyzeMetafile({callName:"analyzeMetafile",refs:null,metafile:typeof m=="string"?m:JSON.stringify(m),options:R,callback:(U,k)=>U?F(U):x(k)}))}});
|
9
|
+
${m}:${R}:${x}: ERROR: ${F}${u.text}`}).join(""),l=new Error(`${e}${d}`);return l.errors=t,l.warnings=r,l}function we(e,t){for(let r of e)r.detail=t.load(r.detail);return e}function Xe(e,t){if(e==null)return null;let r={},s=n(e,r,"file",h),d=n(e,r,"namespace",h),l=n(e,r,"line",me),u=n(e,r,"column",me),i=n(e,r,"length",me),m=n(e,r,"lineText",h),R=n(e,r,"suggestion",h);return _(e,r,t),{file:s||"",namespace:d||"",line:l||0,column:u||0,length:i||0,lineText:m||"",suggestion:R||""}}function de(e,t,r,s){let d=[],l=0;for(let u of e){let i={},m=n(u,i,"pluginName",h),R=n(u,i,"text",h),x=n(u,i,"location",_e),F=n(u,i,"notes",z),U=n(u,i,"detail",Ce),k=`in element ${l} of "${t}"`;_(u,i,k);let q=[];if(F)for(let ee of F){let Q={},te=n(ee,Q,"text",h),re=n(ee,Q,"location",_e);_(ee,Q,k),q.push({text:te||"",location:Xe(re,k)})}d.push({pluginName:m||s,text:R||"",location:Xe(x,k),notes:q,detail:r?r.store(U):-1}),l++}return d}function xe(e,t){let r=[];for(let s of e){if(typeof s!="string")throw new Error(`${JSON.stringify(t)} must be an array of strings`);r.push(s)}return r}function mt({path:e,contents:t}){let r=null;return{path:e,contents:t,get text(){return r===null&&(r=ce(t)),r}}}var ht="0.14.3",bt=e=>ke().build(e),wt=()=>{throw new Error('The "serve" API only works in node')},vt=(e,t)=>ke().transform(e,t),Rt=(e,t)=>ke().formatMessages(e,t),Ot=(e,t)=>ke().analyzeMetafile(e,t),St=()=>{throw new Error('The "buildSync" API only works in node')},xt=()=>{throw new Error('The "transformSync" API only works in node')},kt=()=>{throw new Error('The "formatMessagesSync" API only works in node')},Et=()=>{throw new Error('The "analyzeMetafileSync" API only works in node')},ve,Le,ke=()=>{if(Le)return Le;throw ve?new Error('You need to wait for the promise returned from "initialize" to be resolved before calling this'):new Error('You need to call "initialize" before calling this')},$t=e=>{e=Je(e||{});let t=e.wasmURL,r=e.worker!==!1;if(!t)throw new Error('Must provide the "wasmURL" option');if(t+="",ve)throw new Error('Cannot call "initialize" more than once');return ve=Dt(t,r),ve.catch(()=>{ve=void 0}),ve},Dt=(e,t)=>ae(void 0,null,function*(){let r=yield fetch(e);if(!r.ok)throw new Error(`Failed to download ${JSON.stringify(e)}`);let s=yield r.arrayBuffer(),d='{let global={};for(let o=self;o;o=Object.getPrototypeOf(o))for(let k of Object.getOwnPropertyNames(o))if(!(k in global))Object.defineProperty(global,k,{get:()=>self[k]});\n// Copyright 2018 The Go Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style\n// license that can be found in the LICENSE file.\nvar y=(a,g,f)=>new Promise((r,n)=>{var s=h=>{try{l(f.next(h))}catch(u){n(u)}},i=h=>{try{l(f.throw(h))}catch(u){n(u)}},l=h=>h.done?r(h.value):Promise.resolve(h.value).then(s,i);l((f=f.apply(a,g)).next())});(()=>{if(typeof global=="undefined")if(typeof window!="undefined")window.global=window;else if(typeof self!="undefined")self.global=self;else throw new Error("cannot export Go (neither global, window nor self is defined)");if(!global.require&&typeof require!="undefined"&&(global.require=require),!global.fs&&global.require){const r=require("fs");typeof r=="object"&&r!==null&&Object.keys(r).length!==0&&(global.fs=Object.assign({},r,{write(n,s,i,l,h,u){if(i===0&&l===s.length&&h===null){if(n===process.stdout.fd){try{process.stdout.write(s,m=>m?u(m,0,null):u(null,l,s))}catch(m){u(m,0,null)}return}if(n===process.stderr.fd){try{process.stderr.write(s,m=>m?u(m,0,null):u(null,l,s))}catch(m){u(m,0,null)}return}}r.write(n,s,i,l,h,u)}}))}const a=()=>{const r=new Error("not implemented");return r.code="ENOSYS",r};if(!global.fs){let r="";global.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1},writeSync(n,s){r+=f.decode(s);const i=r.lastIndexOf(`\n`);return i!=-1&&(console.log(r.substr(0,i)),r=r.substr(i+1)),s.length},write(n,s,i,l,h,u){if(i!==0||l!==s.length||h!==null){u(a());return}const m=this.writeSync(n,s);u(null,m)},chmod(n,s,i){i(a())},chown(n,s,i,l){l(a())},close(n,s){s(a())},fchmod(n,s,i){i(a())},fchown(n,s,i,l){l(a())},fstat(n,s){s(a())},fsync(n,s){s(null)},ftruncate(n,s,i){i(a())},lchown(n,s,i,l){l(a())},link(n,s,i){i(a())},lstat(n,s){s(a())},mkdir(n,s,i){i(a())},open(n,s,i,l){l(a())},read(n,s,i,l,h,u){u(a())},readdir(n,s){s(a())},readlink(n,s){s(a())},rename(n,s,i){i(a())},rmdir(n,s){s(a())},stat(n,s){s(a())},symlink(n,s,i){i(a())},truncate(n,s,i){i(a())},unlink(n,s){s(a())},utimes(n,s,i,l){l(a())}}}if(global.process||(global.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw a()},pid:-1,ppid:-1,umask(){throw a()},cwd(){throw a()},chdir(){throw a()}}),!global.crypto&&global.require){const r=require("crypto");global.crypto={getRandomValues(n){r.randomFillSync(n)}}}if(!global.crypto)throw new Error("global.crypto is not available, polyfill required (getRandomValues only)");if(global.performance||(global.performance={now(){const[r,n]=process.hrtime();return r*1e3+n/1e6}}),!global.TextEncoder&&global.require&&(global.TextEncoder=require("util").TextEncoder),!global.TextEncoder)throw new Error("global.TextEncoder is not available, polyfill required");if(!global.TextDecoder&&global.require&&(global.TextDecoder=require("util").TextDecoder),!global.TextDecoder)throw new Error("global.TextDecoder is not available, polyfill required");const g=new TextEncoder("utf-8"),f=new TextDecoder("utf-8");if(global.Go=class{constructor(){this.argv=["js"],this.env={},this.exit=e=>{e!==0&&console.warn("exit code:",e)},this._exitPromise=new Promise(e=>{this._resolveExitPromise=e}),this._pendingEvent=null,this._scheduledTimeouts=new Map,this._nextCallbackTimeoutID=1;const r=(e,t)=>{this.mem.setUint32(e+0,t,!0),this.mem.setUint32(e+4,Math.floor(t/4294967296),!0)},n=e=>{const t=this.mem.getUint32(e+0,!0),o=this.mem.getInt32(e+4,!0);return t+o*4294967296},s=e=>{const t=this.mem.getFloat64(e,!0);if(t===0)return;if(!isNaN(t))return t;const o=this.mem.getUint32(e,!0);return this._values[o]},i=(e,t)=>{const o=2146959360;if(typeof t=="number"&&t!==0){if(isNaN(t)){this.mem.setUint32(e+4,o,!0),this.mem.setUint32(e,0,!0);return}this.mem.setFloat64(e,t,!0);return}if(t===void 0){this.mem.setFloat64(e,0,!0);return}let c=this._ids.get(t);c===void 0&&(c=this._idPool.pop(),c===void 0&&(c=this._values.length),this._values[c]=t,this._goRefCounts[c]=0,this._ids.set(t,c)),this._goRefCounts[c]++;let d=0;switch(typeof t){case"object":t!==null&&(d=1);break;case"string":d=2;break;case"symbol":d=3;break;case"function":d=4;break}this.mem.setUint32(e+4,o|d,!0),this.mem.setUint32(e,c,!0)},l=e=>{const t=n(e+0),o=n(e+8);return new Uint8Array(this._inst.exports.mem.buffer,t,o)},h=e=>{const t=n(e+0),o=n(e+8),c=new Array(o);for(let d=0;d<o;d++)c[d]=s(t+d*8);return c},u=e=>{const t=n(e+0),o=n(e+8);return f.decode(new DataView(this._inst.exports.mem.buffer,t,o))},m=Date.now()-performance.now();this.importObject={go:{"runtime.wasmExit":e=>{e>>>=0;const t=this.mem.getInt32(e+8,!0);this.exited=!0,delete this._inst,delete this._values,delete this._goRefCounts,delete this._ids,delete this._idPool,this.exit(t)},"runtime.wasmWrite":e=>{e>>>=0;const t=n(e+8),o=n(e+16),c=this.mem.getInt32(e+24,!0);fs.writeSync(t,new Uint8Array(this._inst.exports.mem.buffer,o,c))},"runtime.resetMemoryDataView":e=>{e>>>=0,this.mem=new DataView(this._inst.exports.mem.buffer)},"runtime.nanotime1":e=>{e>>>=0,r(e+8,(m+performance.now())*1e6)},"runtime.walltime":e=>{e>>>=0;const t=new Date().getTime();r(e+8,t/1e3),this.mem.setInt32(e+16,t%1e3*1e6,!0)},"runtime.scheduleTimeoutEvent":e=>{e>>>=0;const t=this._nextCallbackTimeoutID;this._nextCallbackTimeoutID++,this._scheduledTimeouts.set(t,setTimeout(()=>{for(this._resume();this._scheduledTimeouts.has(t);)console.warn("scheduleTimeoutEvent: missed timeout event"),this._resume()},n(e+8)+1)),this.mem.setInt32(e+16,t,!0)},"runtime.clearTimeoutEvent":e=>{e>>>=0;const t=this.mem.getInt32(e+8,!0);clearTimeout(this._scheduledTimeouts.get(t)),this._scheduledTimeouts.delete(t)},"runtime.getRandomData":e=>{e>>>=0,crypto.getRandomValues(l(e+8))},"syscall/js.finalizeRef":e=>{e>>>=0;const t=this.mem.getUint32(e+8,!0);if(this._goRefCounts[t]--,this._goRefCounts[t]===0){const o=this._values[t];this._values[t]=null,this._ids.delete(o),this._idPool.push(t)}},"syscall/js.stringVal":e=>{e>>>=0,i(e+24,u(e+8))},"syscall/js.valueGet":e=>{e>>>=0;const t=Reflect.get(s(e+8),u(e+16));e=this._inst.exports.getsp()>>>0,i(e+32,t)},"syscall/js.valueSet":e=>{e>>>=0,Reflect.set(s(e+8),u(e+16),s(e+32))},"syscall/js.valueDelete":e=>{e>>>=0,Reflect.deleteProperty(s(e+8),u(e+16))},"syscall/js.valueIndex":e=>{e>>>=0,i(e+24,Reflect.get(s(e+8),n(e+16)))},"syscall/js.valueSetIndex":e=>{e>>>=0,Reflect.set(s(e+8),n(e+16),s(e+24))},"syscall/js.valueCall":e=>{e>>>=0;try{const t=s(e+8),o=Reflect.get(t,u(e+16)),c=h(e+32),d=Reflect.apply(o,t,c);e=this._inst.exports.getsp()>>>0,i(e+56,d),this.mem.setUint8(e+64,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+56,t),this.mem.setUint8(e+64,0)}},"syscall/js.valueInvoke":e=>{e>>>=0;try{const t=s(e+8),o=h(e+16),c=Reflect.apply(t,void 0,o);e=this._inst.exports.getsp()>>>0,i(e+40,c),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueNew":e=>{e>>>=0;try{const t=s(e+8),o=h(e+16),c=Reflect.construct(t,o);e=this._inst.exports.getsp()>>>0,i(e+40,c),this.mem.setUint8(e+48,1)}catch(t){e=this._inst.exports.getsp()>>>0,i(e+40,t),this.mem.setUint8(e+48,0)}},"syscall/js.valueLength":e=>{e>>>=0,r(e+16,parseInt(s(e+8).length))},"syscall/js.valuePrepareString":e=>{e>>>=0;const t=g.encode(String(s(e+8)));i(e+16,t),r(e+24,t.length)},"syscall/js.valueLoadString":e=>{e>>>=0;const t=s(e+8);l(e+16).set(t)},"syscall/js.valueInstanceOf":e=>{e>>>=0,this.mem.setUint8(e+24,s(e+8)instanceof s(e+16)?1:0)},"syscall/js.copyBytesToGo":e=>{e>>>=0;const t=l(e+8),o=s(e+32);if(!(o instanceof Uint8Array||o instanceof Uint8ClampedArray)){this.mem.setUint8(e+48,0);return}const c=o.subarray(0,t.length);t.set(c),r(e+40,c.length),this.mem.setUint8(e+48,1)},"syscall/js.copyBytesToJS":e=>{e>>>=0;const t=s(e+8),o=l(e+16);if(!(t instanceof Uint8Array||t instanceof Uint8ClampedArray)){this.mem.setUint8(e+48,0);return}const c=o.subarray(0,t.length);t.set(c),r(e+40,c.length),this.mem.setUint8(e+48,1)},debug:e=>{console.log(e)}}}}run(r){return y(this,null,function*(){if(!(r instanceof WebAssembly.Instance))throw new Error("Go.run: WebAssembly.Instance expected");this._inst=r,this.mem=new DataView(this._inst.exports.mem.buffer),this._values=[NaN,0,null,!0,!1,global,this],this._goRefCounts=new Array(this._values.length).fill(1/0),this._ids=new Map([[0,1],[null,2],[!0,3],[!1,4],[global,5],[this,6]]),this._idPool=[],this.exited=!1;let n=4096;const s=e=>{const t=n,o=g.encode(e+"\\0");return new Uint8Array(this.mem.buffer,n,o.length).set(o),n+=o.length,n%8!=0&&(n+=8-n%8),t},i=this.argv.length,l=[];this.argv.forEach(e=>{l.push(s(e))}),l.push(0),Object.keys(this.env).sort().forEach(e=>{l.push(s(`${e}=${this.env[e]}`))}),l.push(0);const u=n;l.forEach(e=>{this.mem.setUint32(n,e,!0),this.mem.setUint32(n+4,0,!0),n+=8});const m=4096+8192;if(n>=m)throw new Error("total length of command line and environment variables exceeds limit");this._inst.exports.run(i,u),this.exited&&this._resolveExitPromise(),yield this._exitPromise})}_resume(){if(this.exited)throw new Error("Go program has already exited");this._inst.exports.resume(),this.exited&&this._resolveExitPromise()}_makeFuncWrapper(r){const n=this;return function(){const s={id:r,this:this,args:arguments};return n._pendingEvent=s,n._resume(),s.result}}},typeof module!="undefined"&&global.require&&global.require.main===module&&global.process&&global.process.versions&&!global.process.versions.electron){process.argv.length<3&&(console.error("usage: go_js_wasm_exec [wasm binary] [arguments]"),process.exit(1));const r=new Go;r.argv=process.argv.slice(2),r.env=Object.assign({TMPDIR:require("os").tmpdir()},process.env),r.exit=process.exit,WebAssembly.instantiate(fs.readFileSync(process.argv[2]),r.importObject).then(n=>(process.on("exit",s=>{s===0&&!r.exited&&(r._pendingEvent={id:0},r._resume())}),r.run(n.instance))).catch(n=>{console.error(n),process.exit(1)})}})();\nonmessage=({data:c})=>{let y=new TextDecoder,s=global.fs,a="";s.writeSync=(e,t)=>{if(e===1)postMessage(t);else if(e===2){a+=y.decode(t);let n=a.split(`\n`);n.length>1&&console.log(n.slice(0,-1).join(`\n`)),a=n[n.length-1]}else throw new Error("Bad write");return t.length};let l=[],i,r=0;onmessage=({data:e})=>{e.length>0&&(l.push(e),i&&i())},s.read=(e,t,n,d,h,m)=>{if(e!==0||n!==0||d!==t.length||h!==null)throw new Error("Bad read");if(l.length===0){i=()=>s.read(e,t,n,d,h,m);return}let g=l[0],u=Math.max(0,Math.min(d,g.length-r));t.set(g.subarray(r,r+u),n),r+=u,r===g.length&&(l.shift(),r=0),m(null,u)};let o=new global.Go;o.argv=["","--service=0.14.3"],WebAssembly.instantiate(c,o.importObject).then(({instance:e})=>o.run(e))};}',l;if(t){let m=new Blob([d],{type:"text/javascript"});l=new Worker(URL.createObjectURL(m))}else{let R=new Function("postMessage",d+"var onmessage; return m => onmessage(m)")(x=>l.onmessage({data:x}));l={onmessage:null,postMessage:x=>R({data:x}),terminate(){}}}l.postMessage(s),l.onmessage=({data:m})=>u(m);let{readFromStdout:u,service:i}=He({writeToStdin(m){l.postMessage(m)},isSync:!1,isBrowser:!0,esbuild:exports});Le={build:m=>new Promise((R,x)=>i.buildOrServe({callName:"build",refs:null,serveOptions:null,options:m,isTTY:!1,defaultWD:"/",callback:(F,U)=>F?x(F):R(U)})),transform:(m,R)=>new Promise((x,F)=>i.transform({callName:"transform",refs:null,input:m,options:R||{},isTTY:!1,fs:{readFile(U,k){k(new Error("Internal error"),null)},writeFile(U,k){k(null)}},callback:(U,k)=>U?F(U):x(k)})),formatMessages:(m,R)=>new Promise((x,F)=>i.formatMessages({callName:"formatMessages",refs:null,messages:m,options:R,callback:(U,k)=>U?F(U):x(k)})),analyzeMetafile:(m,R)=>new Promise((x,F)=>i.analyzeMetafile({callName:"analyzeMetafile",refs:null,metafile:typeof m=="string"?m:JSON.stringify(m),options:R,callback:(U,k)=>U?F(U):x(k)}))}});
|
10
10
|
})(typeof exports==="object"?exports:(typeof self!=="undefined"?self:this).esbuild={});
|
@@ -232,6 +232,7 @@ export interface TransformOptions extends CommonOptions {
|
|
232
232
|
jsxFragmentFactory?: string,
|
233
233
|
useDefineForClassFields?: boolean,
|
234
234
|
importsNotUsedAsValues?: 'remove' | 'preserve' | 'error',
|
235
|
+
preserveValueImports?: boolean,
|
235
236
|
},
|
236
237
|
};
|
237
238
|
|
@@ -267,6 +268,21 @@ export interface PluginBuild {
|
|
267
268
|
(OnResolveResult | null | undefined | Promise<OnResolveResult | null | undefined>)): void;
|
268
269
|
onLoad(options: OnLoadOptions, callback: (args: OnLoadArgs) =>
|
269
270
|
(OnLoadResult | null | undefined | Promise<OnLoadResult | null | undefined>)): void;
|
271
|
+
|
272
|
+
// This is a full copy of the esbuild library in case you need it
|
273
|
+
esbuild: {
|
274
|
+
serve: typeof serve,
|
275
|
+
build: typeof build,
|
276
|
+
buildSync: typeof buildSync,
|
277
|
+
transform: typeof transform,
|
278
|
+
transformSync: typeof transformSync,
|
279
|
+
formatMessages: typeof formatMessages,
|
280
|
+
formatMessagesSync: typeof formatMessagesSync,
|
281
|
+
analyzeMetafile: typeof analyzeMetafile,
|
282
|
+
analyzeMetafileSync: typeof analyzeMetafileSync,
|
283
|
+
initialize: typeof initialize,
|
284
|
+
version: typeof version,
|
285
|
+
};
|
270
286
|
}
|
271
287
|
|
272
288
|
export interface OnStartResult {
|
@@ -311,6 +327,7 @@ export interface OnResolveResult {
|
|
311
327
|
external?: boolean;
|
312
328
|
sideEffects?: boolean;
|
313
329
|
namespace?: string;
|
330
|
+
suffix?: string;
|
314
331
|
pluginData?: any;
|
315
332
|
|
316
333
|
watchFiles?: string[];
|
@@ -325,6 +342,7 @@ export interface OnLoadOptions {
|
|
325
342
|
export interface OnLoadArgs {
|
326
343
|
path: string;
|
327
344
|
namespace: string;
|
345
|
+
suffix: string;
|
328
346
|
pluginData: any;
|
329
347
|
}
|
330
348
|
|