isomorfeus-asset-manager 0.14.1 → 0.14.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,9 @@
1
- (exports=>{
1
+ (module=>{
2
2
  var __defProp = Object.defineProperty;
3
3
  var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
7
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
9
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -20,10 +22,22 @@ var __spreadValues = (a, b) => {
20
22
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
23
  var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
22
24
  var __export = (target, all) => {
23
- __markAsModule(target);
24
25
  for (var name in all)
25
26
  __defProp(target, name, { get: all[name], enumerable: true });
26
27
  };
28
+ var __reExport = (target, module2, copyDefault, desc) => {
29
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
30
+ for (let key of __getOwnPropNames(module2))
31
+ if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
32
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
33
+ }
34
+ return target;
35
+ };
36
+ var __toCommonJS = /* @__PURE__ */ ((cache) => {
37
+ return (module2, temp) => {
38
+ return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
39
+ };
40
+ })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
27
41
  var __async = (__this, __arguments, generator) => {
28
42
  return new Promise((resolve, reject) => {
29
43
  var fulfilled = (value) => {
@@ -46,7 +60,8 @@ var __async = (__this, __arguments, generator) => {
46
60
  };
47
61
 
48
62
  // lib/npm/browser.ts
49
- __export(exports, {
63
+ var browser_exports = {};
64
+ __export(browser_exports, {
50
65
  analyzeMetafile: () => analyzeMetafile,
51
66
  analyzeMetafileSync: () => analyzeMetafileSync,
52
67
  build: () => build,
@@ -577,7 +592,6 @@ function createChannel(streamIn) {
577
592
  let pluginCallbacks = /* @__PURE__ */ new Map();
578
593
  let watchCallbacks = /* @__PURE__ */ new Map();
579
594
  let serveCallbacks = /* @__PURE__ */ new Map();
580
- let nextServeID = 0;
581
595
  let isClosed = false;
582
596
  let nextRequestID = 0;
583
597
  let nextBuildKey = 0;
@@ -654,7 +668,7 @@ function createChannel(streamIn) {
654
668
  sendResponse(id, {});
655
669
  break;
656
670
  }
657
- case "start": {
671
+ case "on-start": {
658
672
  let callback = pluginCallbacks.get(request.key);
659
673
  if (!callback)
660
674
  sendResponse(id, {});
@@ -662,7 +676,7 @@ function createChannel(streamIn) {
662
676
  sendResponse(id, yield callback(request));
663
677
  break;
664
678
  }
665
- case "resolve": {
679
+ case "on-resolve": {
666
680
  let callback = pluginCallbacks.get(request.key);
667
681
  if (!callback)
668
682
  sendResponse(id, {});
@@ -670,7 +684,7 @@ function createChannel(streamIn) {
670
684
  sendResponse(id, yield callback(request));
671
685
  break;
672
686
  }
673
- case "load": {
687
+ case "on-load": {
674
688
  let callback = pluginCallbacks.get(request.key);
675
689
  if (!callback)
676
690
  sendResponse(id, {});
@@ -679,21 +693,21 @@ function createChannel(streamIn) {
679
693
  break;
680
694
  }
681
695
  case "serve-request": {
682
- let callbacks = serveCallbacks.get(request.serveID);
696
+ let callbacks = serveCallbacks.get(request.key);
683
697
  if (callbacks && callbacks.onRequest)
684
698
  callbacks.onRequest(request.args);
685
699
  sendResponse(id, {});
686
700
  break;
687
701
  }
688
702
  case "serve-wait": {
689
- let callbacks = serveCallbacks.get(request.serveID);
703
+ let callbacks = serveCallbacks.get(request.key);
690
704
  if (callbacks)
691
705
  callbacks.onWait(request.error);
692
706
  sendResponse(id, {});
693
707
  break;
694
708
  }
695
709
  case "watch-rebuild": {
696
- let callback = watchCallbacks.get(request.watchID);
710
+ let callback = watchCallbacks.get(request.key);
697
711
  try {
698
712
  if (callback)
699
713
  callback(null, request.args);
@@ -715,8 +729,8 @@ function createChannel(streamIn) {
715
729
  if (isFirstPacket) {
716
730
  isFirstPacket = false;
717
731
  let binaryVersion = String.fromCharCode(...bytes);
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)}`);
732
+ if (binaryVersion !== "0.14.8") {
733
+ throw new Error(`Cannot start service: Host version "${"0.14.8"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
720
734
  }
721
735
  return;
722
736
  }
@@ -732,7 +746,7 @@ function createChannel(streamIn) {
732
746
  callback(null, packet.value);
733
747
  }
734
748
  };
735
- let handlePlugins = (initialOptions, plugins, buildKey, stash) => __async(this, null, function* () {
749
+ let handlePlugins = (initialOptions, plugins, buildKey, stash, refs) => __async(this, null, function* () {
736
750
  let onStartCallbacks = [];
737
751
  let onEndCallbacks = [];
738
752
  let onResolveCallbacks = {};
@@ -740,12 +754,13 @@ function createChannel(streamIn) {
740
754
  let nextCallbackID = 0;
741
755
  let i = 0;
742
756
  let requestPlugins = [];
757
+ let isSetupDone = false;
743
758
  plugins = [...plugins];
744
759
  for (let item of plugins) {
745
760
  let keys = {};
746
761
  if (typeof item !== "object")
747
762
  throw new Error(`Plugin at index ${i} must be an object`);
748
- let name = getFlag(item, keys, "name", mustBeString);
763
+ const name = getFlag(item, keys, "name", mustBeString);
749
764
  if (typeof name !== "string" || name === "")
750
765
  throw new Error(`Plugin at index ${i} is missing a name`);
751
766
  try {
@@ -759,8 +774,55 @@ function createChannel(streamIn) {
759
774
  onLoad: []
760
775
  };
761
776
  i++;
777
+ let resolve = (path, options = {}) => {
778
+ if (!isSetupDone)
779
+ throw new Error('Cannot call "resolve" before plugin setup has completed');
780
+ if (typeof path !== "string")
781
+ throw new Error(`The path to resolve must be a string`);
782
+ let keys2 = Object.create(null);
783
+ let importer = getFlag(options, keys2, "importer", mustBeString);
784
+ let namespace = getFlag(options, keys2, "namespace", mustBeString);
785
+ let resolveDir = getFlag(options, keys2, "resolveDir", mustBeString);
786
+ let kind = getFlag(options, keys2, "kind", mustBeString);
787
+ let pluginData = getFlag(options, keys2, "pluginData", canBeAnything);
788
+ checkForInvalidFlags(options, keys2, "in resolve() call");
789
+ return new Promise((resolve2, reject) => {
790
+ const request = {
791
+ command: "resolve",
792
+ path,
793
+ key: buildKey,
794
+ pluginName: name
795
+ };
796
+ if (importer != null)
797
+ request.importer = importer;
798
+ if (namespace != null)
799
+ request.namespace = namespace;
800
+ if (resolveDir != null)
801
+ request.resolveDir = resolveDir;
802
+ if (kind != null)
803
+ request.kind = kind;
804
+ if (pluginData != null)
805
+ request.pluginData = stash.store(pluginData);
806
+ sendRequest(refs, request, (error, response) => {
807
+ if (error !== null)
808
+ reject(new Error(error));
809
+ else
810
+ resolve2({
811
+ errors: replaceDetailsInMessages(response.errors, stash),
812
+ warnings: replaceDetailsInMessages(response.warnings, stash),
813
+ path: response.path,
814
+ external: response.external,
815
+ sideEffects: response.sideEffects,
816
+ namespace: response.namespace,
817
+ suffix: response.suffix,
818
+ pluginData: stash.load(response.pluginData)
819
+ });
820
+ });
821
+ });
822
+ };
762
823
  let promise = setup({
763
824
  initialOptions,
825
+ resolve,
764
826
  onStart(callback2) {
765
827
  let registeredText = `This error came from the "onStart" callback registered here:`;
766
828
  let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onStart");
@@ -808,7 +870,7 @@ function createChannel(streamIn) {
808
870
  }
809
871
  const callback = (request) => __async(this, null, function* () {
810
872
  switch (request.command) {
811
- case "start": {
873
+ case "on-start": {
812
874
  let response = { errors: [], warnings: [] };
813
875
  yield Promise.all(onStartCallbacks.map((_0) => __async(this, [_0], function* ({ name, callback: callback2, note }) {
814
876
  try {
@@ -831,7 +893,7 @@ function createChannel(streamIn) {
831
893
  })));
832
894
  return response;
833
895
  }
834
- case "resolve": {
896
+ case "on-resolve": {
835
897
  let response = {}, name = "", callback2, note;
836
898
  for (let id of request.ids) {
837
899
  try {
@@ -891,7 +953,7 @@ function createChannel(streamIn) {
891
953
  }
892
954
  return response;
893
955
  }
894
- case "load": {
956
+ case "on-load": {
895
957
  let response = {}, name = "", callback2, note;
896
958
  for (let id of request.ids) {
897
959
  try {
@@ -963,6 +1025,7 @@ function createChannel(streamIn) {
963
1025
  }))().then(done);
964
1026
  };
965
1027
  }
1028
+ isSetupDone = true;
966
1029
  let refCount = 0;
967
1030
  return {
968
1031
  ok: true,
@@ -980,24 +1043,23 @@ function createChannel(streamIn) {
980
1043
  }
981
1044
  };
982
1045
  });
983
- let buildServeData = (refs, options, request) => {
1046
+ let buildServeData = (refs, options, request, key) => {
984
1047
  let keys = {};
985
1048
  let port = getFlag(options, keys, "port", mustBeInteger);
986
1049
  let host = getFlag(options, keys, "host", mustBeString);
987
1050
  let servedir = getFlag(options, keys, "servedir", mustBeString);
988
1051
  let onRequest = getFlag(options, keys, "onRequest", mustBeFunction);
989
- let serveID = nextServeID++;
990
1052
  let onWait;
991
1053
  let wait = new Promise((resolve, reject) => {
992
1054
  onWait = (error) => {
993
- serveCallbacks.delete(serveID);
1055
+ serveCallbacks.delete(key);
994
1056
  if (error !== null)
995
1057
  reject(new Error(error));
996
1058
  else
997
1059
  resolve();
998
1060
  };
999
1061
  });
1000
- request.serve = { serveID };
1062
+ request.serve = {};
1001
1063
  checkForInvalidFlags(options, keys, `in serve() call`);
1002
1064
  if (port !== void 0)
1003
1065
  request.serve.port = port;
@@ -1005,14 +1067,14 @@ function createChannel(streamIn) {
1005
1067
  request.serve.host = host;
1006
1068
  if (servedir !== void 0)
1007
1069
  request.serve.servedir = servedir;
1008
- serveCallbacks.set(serveID, {
1070
+ serveCallbacks.set(key, {
1009
1071
  onRequest,
1010
1072
  onWait
1011
1073
  });
1012
1074
  return {
1013
1075
  wait,
1014
1076
  stop() {
1015
- sendRequest(refs, { command: "serve-stop", serveID }, () => {
1077
+ sendRequest(refs, { command: "serve-stop", key }, () => {
1016
1078
  });
1017
1079
  }
1018
1080
  };
@@ -1052,7 +1114,7 @@ function createChannel(streamIn) {
1052
1114
  if (plugins && plugins.length > 0) {
1053
1115
  if (streamIn.isSync)
1054
1116
  return handleError(new Error("Cannot use plugins in synchronous API calls"), "");
1055
- handlePlugins(options, plugins, key, details).then((result) => {
1117
+ handlePlugins(options, plugins, key, details, refs).then((result) => {
1056
1118
  if (!result.ok) {
1057
1119
  handleError(result.error, result.pluginName);
1058
1120
  } else {
@@ -1140,7 +1202,7 @@ function createChannel(streamIn) {
1140
1202
  };
1141
1203
  if (requestPlugins)
1142
1204
  request.plugins = requestPlugins;
1143
- let serve2 = serveOptions && buildServeData(refs, serveOptions, request);
1205
+ let serve2 = serveOptions && buildServeData(refs, serveOptions, request, key);
1144
1206
  let rebuild;
1145
1207
  let stop;
1146
1208
  let copyResponseToResult = (response, result) => {
@@ -1161,13 +1223,13 @@ function createChannel(streamIn) {
1161
1223
  if (result.errors.length > 0) {
1162
1224
  return callback2(failureErrorWithLog("Build failed", result.errors, result.warnings), null);
1163
1225
  }
1164
- if (response.rebuildID !== void 0) {
1226
+ if (response.rebuild) {
1165
1227
  if (!rebuild) {
1166
1228
  let isDisposed = false;
1167
1229
  rebuild = () => new Promise((resolve, reject) => {
1168
1230
  if (isDisposed || isClosed)
1169
1231
  throw new Error("Cannot rebuild");
1170
- sendRequest(refs, { command: "rebuild", rebuildID: response.rebuildID }, (error2, response2) => {
1232
+ sendRequest(refs, { command: "rebuild", key }, (error2, response2) => {
1171
1233
  if (error2) {
1172
1234
  const message = { pluginName: "", text: error2, location: null, notes: [], detail: void 0 };
1173
1235
  return callback2(failureErrorWithLog("Build failed", [message], []), null);
@@ -1185,14 +1247,14 @@ function createChannel(streamIn) {
1185
1247
  if (isDisposed)
1186
1248
  return;
1187
1249
  isDisposed = true;
1188
- sendRequest(refs, { command: "rebuild-dispose", rebuildID: response.rebuildID }, () => {
1250
+ sendRequest(refs, { command: "rebuild-dispose", key }, () => {
1189
1251
  });
1190
1252
  refs.unref();
1191
1253
  };
1192
1254
  }
1193
1255
  result.rebuild = rebuild;
1194
1256
  }
1195
- if (response.watchID !== void 0) {
1257
+ if (response.watch) {
1196
1258
  if (!stop) {
1197
1259
  let isStopped = false;
1198
1260
  refs.ref();
@@ -1200,13 +1262,13 @@ function createChannel(streamIn) {
1200
1262
  if (isStopped)
1201
1263
  return;
1202
1264
  isStopped = true;
1203
- watchCallbacks.delete(response.watchID);
1204
- sendRequest(refs, { command: "watch-stop", watchID: response.watchID }, () => {
1265
+ watchCallbacks.delete(key);
1266
+ sendRequest(refs, { command: "watch-stop", key }, () => {
1205
1267
  });
1206
1268
  refs.unref();
1207
1269
  };
1208
1270
  if (watch) {
1209
- watchCallbacks.set(response.watchID, (serviceStopError, watchResponse) => {
1271
+ watchCallbacks.set(key, (serviceStopError, watchResponse) => {
1210
1272
  if (serviceStopError) {
1211
1273
  if (watch.onRebuild)
1212
1274
  watch.onRebuild(serviceStopError, null);
@@ -1593,7 +1655,7 @@ function convertOutputFiles({ path, contents }) {
1593
1655
  }
1594
1656
 
1595
1657
  // lib/npm/browser.ts
1596
- var version = "0.14.3";
1658
+ var version = "0.14.8";
1597
1659
  var build = (options) => ensureServiceIsRunning().build(options);
1598
1660
  var serve = () => {
1599
1661
  throw new Error(`The "serve" API only works in node`);
@@ -2350,7 +2412,7 @@ onmessage = ({ data: wasm }) => {
2350
2412
  callback(null, count);
2351
2413
  };
2352
2414
  let go = new global.Go();
2353
- go.argv = ["", \`--service=\${"0.14.3"}\`];
2415
+ go.argv = ["", \`--service=\${"0.14.8"}\`];
2354
2416
  WebAssembly.instantiate(wasm, go.importObject).then(({ instance }) => go.run(instance));
2355
2417
  };}`;
2356
2418
  let worker;
@@ -2375,7 +2437,7 @@ onmessage = ({ data: wasm }) => {
2375
2437
  },
2376
2438
  isSync: false,
2377
2439
  isBrowser: true,
2378
- esbuild: exports
2440
+ esbuild: browser_exports
2379
2441
  });
2380
2442
  longLivedService = {
2381
2443
  build: (options) => new Promise((resolve, reject) => service.buildOrServe({
@@ -2419,4 +2481,5 @@ onmessage = ({ data: wasm }) => {
2419
2481
  }))
2420
2482
  };
2421
2483
  });
2422
- })(typeof exports==="object"?exports:(typeof self!=="undefined"?self:this).esbuild={});
2484
+ module.exports = __toCommonJS(browser_exports);
2485
+ })(typeof module==="object"?module:{set exports(x){(typeof self!=="undefined"?self:this).esbuild=x}});
@@ -1,10 +1,10 @@
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:()=>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
- `);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
- `),"")}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+`
1
+ (module=>{
2
+ var Re=Object.defineProperty,rt=Object.defineProperties,nt=Object.getOwnPropertyDescriptor,lt=Object.getOwnPropertyDescriptors,it=Object.getOwnPropertyNames,qe=Object.getOwnPropertySymbols;var We=Object.prototype.hasOwnProperty,st=Object.prototype.propertyIsEnumerable;var Ie=(e,t,r)=>t in e?Re(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Te=(e,t)=>{for(var r in t||(t={}))We.call(t,r)&&Ie(e,r,t[r]);if(qe)for(var r of qe(t))st.call(t,r)&&Ie(e,r,t[r]);return e},De=(e,t)=>rt(e,lt(t)),ot=e=>Re(e,"__esModule",{value:!0});var at=(e,t)=>{for(var r in t)Re(e,r,{get:t[r],enumerable:!0})},ut=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let u of it(t))!We.call(e,u)&&(r||u!=="default")&&Re(e,u,{get:()=>t[u],enumerable:!(o=nt(t,u))||o.enumerable});return e};var ft=(e=>(t,r)=>e&&e.get(t)||(r=ut(ot({}),t,1),e&&e.set(t,r),r))(typeof WeakMap!="undefined"?new WeakMap:0);var fe=(e,t,r)=>new Promise((o,u)=>{var l=d=>{try{s(r.next(d))}catch(R){u(R)}},c=d=>{try{s(r.throw(d))}catch(R){u(R)}},s=d=>d.done?o(d.value):Promise.resolve(d.value).then(l,c);s((r=r.apply(e,t)).next())});var Ue={};at(Ue,{analyzeMetafile:()=>Et,analyzeMetafileSync:()=>Bt,build:()=>Ot,buildSync:()=>$t,formatMessages:()=>kt,formatMessagesSync:()=>Mt,initialize:()=>Tt,serve:()=>St,transform:()=>xt,transformSync:()=>Pt,version:()=>Rt});function Ae(e){let t=o=>{if(o===null)r.write8(0);else if(typeof o=="boolean")r.write8(1),r.write8(+o);else if(typeof o=="number")r.write8(2),r.write32(o|0);else if(typeof o=="string")r.write8(3),r.write(ce(o));else if(o instanceof Uint8Array)r.write8(4),r.write(o);else if(o instanceof Array){r.write8(5),r.write32(o.length);for(let u of o)t(u)}else{let u=Object.keys(o);r.write8(6),r.write32(u.length);for(let l of u)r.write(ce(l)),t(o[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 ze(e){let t=()=>{switch(r.read8()){case 0:return null;case 1:return!!r.read8();case 2:return r.read32();case 3:return pe(r.read());case 4:return r.read();case 5:{let c=r.read32(),s=[];for(let d=0;d<c;d++)s.push(t());return s}case 6:{let c=r.read32(),s={};for(let d=0;d<c;d++)s[pe(r.read())]=t();return s}default:throw new Error("Invalid packet")}},r=new Fe(e),o=r.read32(),u=(o&1)===0;o>>>=1;let l=t();if(r.ptr!==e.length)throw new Error("Invalid packet");return{id:o,isRequest:u,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),o=this._read(r.length);return r.set(this.buf.subarray(o,o+t)),r}},ce,pe;if(typeof TextEncoder!="undefined"&&typeof TextDecoder!="undefined"){let e=new TextEncoder,t=new TextDecoder;ce=r=>e.encode(r),pe=r=>t.decode(r)}else if(typeof Buffer!="undefined")ce=e=>{let t=Buffer.from(e);return t instanceof Uint8Array||(t=new Uint8Array(t)),t},pe=e=>{let{buffer:t,byteOffset:r,byteLength:o}=e;return Buffer.from(t,r,o).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 Ke(e){if(e+="",e.indexOf(",")>=0)throw new Error(`Invalid target: ${e}`);return e}var Oe=()=>null,U=e=>typeof e=="boolean"?null:"a boolean",dt=e=>typeof e=="boolean"||typeof e=="object"&&!Array.isArray(e)?null:"a boolean or an object",y=e=>typeof e=="string"?null:"a string",_e=e=>e instanceof RegExp?null:"a RegExp object",ye=e=>typeof e=="number"&&e===(e|0)?null:"an integer",Ce=e=>typeof e=="function"?null:"a function",_=e=>Array.isArray(e)?null:"an array",he=e=>typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"an object",pt=e=>typeof e=="object"&&e!==null?null:"an array or an object",Ve=e=>typeof e=="object"&&!Array.isArray(e)?null:"an object or null",Je=e=>typeof e=="string"||typeof e=="boolean"?null:"a string or a boolean",gt=e=>typeof e=="string"||typeof e=="object"&&e!==null&&!Array.isArray(e)?null:"a string or an object",mt=e=>typeof e=="string"||Array.isArray(e)?null:"a string or an array",yt=e=>typeof e=="string"||e instanceof Uint8Array?null:"a string or a Uint8Array";function n(e,t,r,o){let u=e[r];if(t[r+""]=!0,u===void 0)return;let l=o(u);if(l!==null)throw new Error(`"${r}" must be ${l}`);return u}function V(e,t,r){for(let o in e)if(!(o in t))throw new Error(`Invalid option ${r}: "${o}"`)}function Ye(e){let t=Object.create(null),r=n(e,t,"wasmURL",y),o=n(e,t,"worker",U);return V(e,t,"in startService() call"),{wasmURL:r,worker:o}}function Se(e,t,r,o,u){let l=n(t,r,"color",U),c=n(t,r,"logLevel",y),s=n(t,r,"logLimit",ye);l!==void 0?e.push(`--color=${l}`):o&&e.push("--color=true"),e.push(`--log-level=${c||u}`),e.push(`--log-limit=${s||0}`)}function He(e,t,r){let o=n(t,r,"legalComments",y),u=n(t,r,"sourceRoot",y),l=n(t,r,"sourcesContent",U),c=n(t,r,"target",mt),s=n(t,r,"format",y),d=n(t,r,"globalName",y),R=n(t,r,"minify",U),D=n(t,r,"minifySyntax",U),C=n(t,r,"minifyWhitespace",U),$=n(t,r,"minifyIdentifiers",U),S=n(t,r,"charset",y),ie=n(t,r,"treeShaking",U),ne=n(t,r,"ignoreAnnotations",U),le=n(t,r,"jsx",y),se=n(t,r,"jsxFactory",y),oe=n(t,r,"jsxFragment",y),ae=n(t,r,"define",he),ue=n(t,r,"pure",_),me=n(t,r,"keepNames",U);if(o&&e.push(`--legal-comments=${o}`),u!==void 0&&e.push(`--source-root=${u}`),l!==void 0&&e.push(`--sources-content=${l}`),c&&(Array.isArray(c)?e.push(`--target=${Array.from(c).map(Ke).join(",")}`):e.push(`--target=${Ke(c)}`)),s&&e.push(`--format=${s}`),d&&e.push(`--global-name=${d}`),R&&e.push("--minify"),D&&e.push("--minify-syntax"),C&&e.push("--minify-whitespace"),$&&e.push("--minify-identifiers"),S&&e.push(`--charset=${S}`),ie!==void 0&&e.push(`--tree-shaking=${ie}`),ne&&e.push("--ignore-annotations"),le&&e.push(`--jsx=${le}`),se&&e.push(`--jsx-factory=${se}`),oe&&e.push(`--jsx-fragment=${oe}`),ae)for(let Z in ae){if(Z.indexOf("=")>=0)throw new Error(`Invalid define: ${Z}`);e.push(`--define:${Z}=${ae[Z]}`)}if(ue)for(let Z of ue)e.push(`--pure:${Z}`);me&&e.push("--keep-names")}function ht(e,t,r,o,u){var b;let l=[],c=[],s=Object.create(null),d=null,R=null,D=null;Se(l,t,s,r,o),He(l,t,s);let C=n(t,s,"sourcemap",Je),$=n(t,s,"bundle",U),S=n(t,s,"watch",dt),ie=n(t,s,"splitting",U),ne=n(t,s,"preserveSymlinks",U),le=n(t,s,"metafile",U),se=n(t,s,"outfile",y),oe=n(t,s,"outdir",y),ae=n(t,s,"outbase",y),ue=n(t,s,"platform",y),me=n(t,s,"tsconfig",y),Z=n(t,s,"resolveExtensions",_),$e=n(t,s,"nodePaths",_),Pe=n(t,s,"mainFields",_),Me=n(t,s,"conditions",_),g=n(t,s,"external",_),f=n(t,s,"loader",he),a=n(t,s,"outExtension",he),p=n(t,s,"publicPath",y),j=n(t,s,"entryNames",y),F=n(t,s,"chunkNames",y),P=n(t,s,"assetNames",y),E=n(t,s,"inject",_),A=n(t,s,"banner",he),M=n(t,s,"footer",he),w=n(t,s,"entryPoints",pt),L=n(t,s,"absWorkingDir",y),k=n(t,s,"stdin",he),O=(b=n(t,s,"write",U))!=null?b:u,ee=n(t,s,"allowOverwrite",U),X=n(t,s,"incremental",U)===!0;if(s.plugins=!0,V(t,s,`in ${e}() call`),C&&l.push(`--sourcemap${C===!0?"":`=${C}`}`),$&&l.push("--bundle"),ee&&l.push("--allow-overwrite"),S)if(l.push("--watch"),typeof S=="boolean")D={};else{let i=Object.create(null),v=n(S,i,"onRebuild",Ce);V(S,i,`on "watch" in ${e}() call`),D={onRebuild:v}}if(ie&&l.push("--splitting"),ne&&l.push("--preserve-symlinks"),le&&l.push("--metafile"),se&&l.push(`--outfile=${se}`),oe&&l.push(`--outdir=${oe}`),ae&&l.push(`--outbase=${ae}`),ue&&l.push(`--platform=${ue}`),me&&l.push(`--tsconfig=${me}`),Z){let i=[];for(let v of Z){if(v+="",v.indexOf(",")>=0)throw new Error(`Invalid resolve extension: ${v}`);i.push(v)}l.push(`--resolve-extensions=${i.join(",")}`)}if(p&&l.push(`--public-path=${p}`),j&&l.push(`--entry-names=${j}`),F&&l.push(`--chunk-names=${F}`),P&&l.push(`--asset-names=${P}`),Pe){let i=[];for(let v of Pe){if(v+="",v.indexOf(",")>=0)throw new Error(`Invalid main field: ${v}`);i.push(v)}l.push(`--main-fields=${i.join(",")}`)}if(Me){let i=[];for(let v of Me){if(v+="",v.indexOf(",")>=0)throw new Error(`Invalid condition: ${v}`);i.push(v)}l.push(`--conditions=${i.join(",")}`)}if(g)for(let i of g)l.push(`--external:${i}`);if(A)for(let i in A){if(i.indexOf("=")>=0)throw new Error(`Invalid banner file type: ${i}`);l.push(`--banner:${i}=${A[i]}`)}if(M)for(let i in M){if(i.indexOf("=")>=0)throw new Error(`Invalid footer file type: ${i}`);l.push(`--footer:${i}=${M[i]}`)}if(E)for(let i of E)l.push(`--inject:${i}`);if(f)for(let i in f){if(i.indexOf("=")>=0)throw new Error(`Invalid loader extension: ${i}`);l.push(`--loader:${i}=${f[i]}`)}if(a)for(let i in a){if(i.indexOf("=")>=0)throw new Error(`Invalid out extension: ${i}`);l.push(`--out-extension:${i}=${a[i]}`)}if(w)if(Array.isArray(w))for(let i of w)c.push(["",i+""]);else for(let[i,v]of Object.entries(w))c.push([i+"",v+""]);if(k){let i=Object.create(null),v=n(k,i,"contents",y),q=n(k,i,"resolveDir",y),J=n(k,i,"sourcefile",y),h=n(k,i,"loader",y);V(k,i,'in "stdin" object'),J&&l.push(`--sourcefile=${J}`),h&&l.push(`--loader=${h}`),q&&(R=q+""),d=v?v+"":""}let x=[];if($e)for(let i of $e)i+="",x.push(i);return{entries:c,flags:l,write:O,stdinContents:d,stdinResolveDir:R,absWorkingDir:L,incremental:X,nodePaths:x,watch:D}}function bt(e,t,r,o){let u=[],l=Object.create(null);Se(u,t,l,r,o),He(u,t,l);let c=n(t,l,"sourcemap",Je),s=n(t,l,"tsconfigRaw",gt),d=n(t,l,"sourcefile",y),R=n(t,l,"loader",y),D=n(t,l,"banner",y),C=n(t,l,"footer",y);return V(t,l,`in ${e}() call`),c&&u.push(`--sourcemap=${c===!0?"external":c}`),s&&u.push(`--tsconfig-raw=${typeof s=="string"?s:JSON.stringify(s)}`),d&&u.push(`--sourcefile=${d}`),R&&u.push(`--loader=${R}`),D&&u.push(`--banner=${D}`),C&&u.push(`--footer=${C}`),u}function Ge(e){let t=new Map,r=new Map,o=new Map,u=new Map,l=!1,c=0,s=0,d=new Uint8Array(16*1024),R=0,D=g=>{let f=R+g.length;if(f>d.length){let p=new Uint8Array(f*2);p.set(d),d=p}d.set(g,R),R+=g.length;let a=0;for(;a+4<=R;){let p=Ne(d,a);if(a+4+p>R)break;a+=4,le(d.subarray(a,a+p)),a+=p}a>0&&(d.copyWithin(0,a,R),R-=a)},C=()=>{l=!0;for(let g of t.values())g("The service was stopped",null);t.clear();for(let g of u.values())g.onWait("The service was stopped");u.clear();for(let g of o.values())try{g(new Error("The service was stopped"),null)}catch(f){console.error(f)}o.clear()},$=(g,f,a)=>{if(l)return a("The service is no longer running",null);let p=c++;t.set(p,(j,F)=>{try{a(j,F)}finally{g&&g.unref()}}),g&&g.ref(),e.writeToStdin(Ae({id:p,isRequest:!0,value:f}))},S=(g,f)=>{if(l)throw new Error("The service is no longer running");e.writeToStdin(Ae({id:g,isRequest:!1,value:f}))},ie=(g,f)=>fe(this,null,function*(){try{switch(f.command){case"ping":{S(g,{});break}case"on-start":{let a=r.get(f.key);a?S(g,yield a(f)):S(g,{});break}case"on-resolve":{let a=r.get(f.key);a?S(g,yield a(f)):S(g,{});break}case"on-load":{let a=r.get(f.key);a?S(g,yield a(f)):S(g,{});break}case"serve-request":{let a=u.get(f.key);a&&a.onRequest&&a.onRequest(f.args),S(g,{});break}case"serve-wait":{let a=u.get(f.key);a&&a.onWait(f.error),S(g,{});break}case"watch-rebuild":{let a=o.get(f.key);try{a&&a(null,f.args)}catch(p){console.error(p)}S(g,{});break}default:throw new Error("Invalid command: "+f.command)}}catch(a){S(g,{errors:[be(a,e,null,void 0,"")]})}}),ne=!0,le=g=>{if(ne){ne=!1;let a=String.fromCharCode(...g);if(a!=="0.14.8")throw new Error(`Cannot start service: Host version "0.14.8" does not match binary version ${JSON.stringify(a)}`);return}let f=ze(g);if(f.isRequest)ie(f.id,f.value);else{let a=t.get(f.id);t.delete(f.id),f.value.error?a(f.value.error,{}):a(null,f.value)}},se=(g,f,a,p,j)=>fe(this,null,function*(){let F=[],P=[],E={},A={},M=0,w=0,L=[],k=!1;f=[...f];for(let x of f){let b={};if(typeof x!="object")throw new Error(`Plugin at index ${w} must be an object`);let i=n(x,b,"name",y);if(typeof i!="string"||i==="")throw new Error(`Plugin at index ${w} is missing a name`);try{let v=n(x,b,"setup",Ce);if(typeof v!="function")throw new Error("Plugin is missing a setup function");V(x,b,`on plugin ${JSON.stringify(i)}`);let q={name:i,onResolve:[],onLoad:[]};w++;let h=v({initialOptions:g,resolve:(m,N={})=>{if(!k)throw new Error('Cannot call "resolve" before plugin setup has completed');if(typeof m!="string")throw new Error("The path to resolve must be a string");let B=Object.create(null),K=n(N,B,"importer",y),W=n(N,B,"namespace",y),Y=n(N,B,"resolveDir",y),G=n(N,B,"kind",y),T=n(N,B,"pluginData",Oe);return V(N,B,"in resolve() call"),new Promise((H,I)=>{let z={command:"resolve",path:m,key:a,pluginName:i};K!=null&&(z.importer=K),W!=null&&(z.namespace=W),Y!=null&&(z.resolveDir=Y),G!=null&&(z.kind=G),T!=null&&(z.pluginData=p.store(T)),$(j,z,(te,Q)=>{te!==null?I(new Error(te)):H({errors:de(Q.errors,p),warnings:de(Q.warnings,p),path:Q.path,external:Q.external,sideEffects:Q.sideEffects,namespace:Q.namespace,suffix:Q.suffix,pluginData:p.load(Q.pluginData)})})})},onStart(m){let N='This error came from the "onStart" callback registered here:',B=xe(new Error(N),e,"onStart");F.push({name:i,callback:m,note:B})},onEnd(m){let N='This error came from the "onEnd" callback registered here:',B=xe(new Error(N),e,"onEnd");P.push({name:i,callback:m,note:B})},onResolve(m,N){let B='This error came from the "onResolve" callback registered here:',K=xe(new Error(B),e,"onResolve"),W={},Y=n(m,W,"filter",_e),G=n(m,W,"namespace",y);if(V(m,W,`in onResolve() call for plugin ${JSON.stringify(i)}`),Y==null)throw new Error("onResolve() call is missing a filter");let T=M++;E[T]={name:i,callback:N,note:K},q.onResolve.push({id:T,filter:Y.source,namespace:G||""})},onLoad(m,N){let B='This error came from the "onLoad" callback registered here:',K=xe(new Error(B),e,"onLoad"),W={},Y=n(m,W,"filter",_e),G=n(m,W,"namespace",y);if(V(m,W,`in onLoad() call for plugin ${JSON.stringify(i)}`),Y==null)throw new Error("onLoad() call is missing a filter");let T=M++;A[T]={name:i,callback:N,note:K},q.onLoad.push({id:T,filter:Y.source,namespace:G||""})},esbuild:e.esbuild});h&&(yield h),L.push(q)}catch(v){return{ok:!1,error:v,pluginName:i}}}let O=x=>fe(this,null,function*(){switch(x.command){case"on-start":{let b={errors:[],warnings:[]};return yield Promise.all(F.map(J=>fe(this,[J],function*({name:i,callback:v,note:q}){try{let h=yield v();if(h!=null){if(typeof h!="object")throw new Error(`Expected onStart() callback in plugin ${JSON.stringify(i)} to return an object`);let m={},N=n(h,m,"errors",_),B=n(h,m,"warnings",_);V(h,m,`from onStart() callback in plugin ${JSON.stringify(i)}`),N!=null&&b.errors.push(...ge(N,"errors",p,i)),B!=null&&b.warnings.push(...ge(B,"warnings",p,i))}}catch(h){b.errors.push(be(h,e,p,q&&q(),i))}}))),b}case"on-resolve":{let b={},i="",v,q;for(let J of x.ids)try{({name:i,callback:v,note:q}=E[J]);let h=yield v({path:x.path,importer:x.importer,namespace:x.namespace,resolveDir:x.resolveDir,kind:x.kind,pluginData:p.load(x.pluginData)});if(h!=null){if(typeof h!="object")throw new Error(`Expected onResolve() callback in plugin ${JSON.stringify(i)} to return an object`);let m={},N=n(h,m,"pluginName",y),B=n(h,m,"path",y),K=n(h,m,"namespace",y),W=n(h,m,"suffix",y),Y=n(h,m,"external",U),G=n(h,m,"sideEffects",U),T=n(h,m,"pluginData",Oe),H=n(h,m,"errors",_),I=n(h,m,"warnings",_),z=n(h,m,"watchFiles",_),te=n(h,m,"watchDirs",_);V(h,m,`from onResolve() callback in plugin ${JSON.stringify(i)}`),b.id=J,N!=null&&(b.pluginName=N),B!=null&&(b.path=B),K!=null&&(b.namespace=K),W!=null&&(b.suffix=W),Y!=null&&(b.external=Y),G!=null&&(b.sideEffects=G),T!=null&&(b.pluginData=p.store(T)),H!=null&&(b.errors=ge(H,"errors",p,i)),I!=null&&(b.warnings=ge(I,"warnings",p,i)),z!=null&&(b.watchFiles=ke(z,"watchFiles")),te!=null&&(b.watchDirs=ke(te,"watchDirs"));break}}catch(h){return{id:J,errors:[be(h,e,p,q&&q(),i)]}}return b}case"on-load":{let b={},i="",v,q;for(let J of x.ids)try{({name:i,callback:v,note:q}=A[J]);let h=yield v({path:x.path,namespace:x.namespace,suffix:x.suffix,pluginData:p.load(x.pluginData)});if(h!=null){if(typeof h!="object")throw new Error(`Expected onLoad() callback in plugin ${JSON.stringify(i)} to return an object`);let m={},N=n(h,m,"pluginName",y),B=n(h,m,"contents",yt),K=n(h,m,"resolveDir",y),W=n(h,m,"pluginData",Oe),Y=n(h,m,"loader",y),G=n(h,m,"errors",_),T=n(h,m,"warnings",_),H=n(h,m,"watchFiles",_),I=n(h,m,"watchDirs",_);V(h,m,`from onLoad() callback in plugin ${JSON.stringify(i)}`),b.id=J,N!=null&&(b.pluginName=N),B instanceof Uint8Array?b.contents=B:B!=null&&(b.contents=ce(B)),K!=null&&(b.resolveDir=K),W!=null&&(b.pluginData=p.store(W)),Y!=null&&(b.loader=Y),G!=null&&(b.errors=ge(G,"errors",p,i)),T!=null&&(b.warnings=ge(T,"warnings",p,i)),H!=null&&(b.watchFiles=ke(H,"watchFiles")),I!=null&&(b.watchDirs=ke(I,"watchDirs"));break}}catch(h){return{id:J,errors:[be(h,e,p,q&&q(),i)]}}return b}default:throw new Error("Invalid command: "+x.command)}}),ee=(x,b,i)=>i();P.length>0&&(ee=(x,b,i)=>{(()=>fe(this,null,function*(){for(let{name:v,callback:q,note:J}of P)try{yield q(x)}catch(h){x.errors.push(yield new Promise(m=>b(h,v,J&&J(),m)))}}))().then(i)}),k=!0;let X=0;return{ok:!0,requestPlugins:L,runOnEndCallbacks:ee,pluginRefs:{ref(){++X===1&&r.set(a,O)},unref(){--X===0&&r.delete(a)}}}}),oe=(g,f,a,p)=>{let j={},F=n(f,j,"port",ye),P=n(f,j,"host",y),E=n(f,j,"servedir",y),A=n(f,j,"onRequest",Ce),M,w=new Promise((L,k)=>{M=O=>{u.delete(p),O!==null?k(new Error(O)):L()}});return a.serve={},V(f,j,"in serve() call"),F!==void 0&&(a.serve.port=F),P!==void 0&&(a.serve.host=P),E!==void 0&&(a.serve.servedir=E),u.set(p,{onRequest:A,onWait:M}),{wait:w,stop(){$(g,{command:"serve-stop",key:p},()=>{})}}},ae="warning",ue="silent",me=g=>{let f=s++,a=Qe(),p,{refs:j,options:F,isTTY:P,callback:E}=g;if(typeof F=="object"){let w=F.plugins;if(w!==void 0){if(!Array.isArray(w))throw new Error('"plugins" must be an array');p=w}}let A=(w,L,k,O)=>{let ee=[];try{Se(ee,F,{},P,ae)}catch(x){}let X=be(w,e,a,k,L);$(j,{command:"error",flags:ee,error:X},()=>{X.detail=a.load(X.detail),O(X)})},M=(w,L)=>{A(w,L,void 0,k=>{E(we("Build failed",[k],[]),null)})};if(p&&p.length>0){if(e.isSync)return M(new Error("Cannot use plugins in synchronous API calls"),"");se(F,p,f,a,j).then(w=>{if(!w.ok)M(w.error,w.pluginName);else try{Z(De(Te({},g),{key:f,details:a,logPluginError:A,requestPlugins:w.requestPlugins,runOnEndCallbacks:w.runOnEndCallbacks,pluginRefs:w.pluginRefs}))}catch(L){M(L,"")}},w=>M(w,""))}else try{Z(De(Te({},g),{key:f,details:a,logPluginError:A,requestPlugins:null,runOnEndCallbacks:(w,L,k)=>k(),pluginRefs:null}))}catch(w){M(w,"")}},Z=({callName:g,refs:f,serveOptions:a,options:p,isTTY:j,defaultWD:F,callback:P,key:E,details:A,logPluginError:M,requestPlugins:w,runOnEndCallbacks:L,pluginRefs:k})=>{let O={ref(){k&&k.ref(),f&&f.ref()},unref(){k&&k.unref(),f&&f.unref()}},ee=!e.isBrowser,{entries:X,flags:x,write:b,stdinContents:i,stdinResolveDir:v,absWorkingDir:q,incremental:J,nodePaths:h,watch:m}=ht(g,p,j,ae,ee),N={command:"build",key:E,entries:X,flags:x,write:b,stdinContents:i,stdinResolveDir:v,absWorkingDir:q||F,incremental:J,nodePaths:h};w&&(N.plugins=w);let B=a&&oe(O,a,N,E),K,W,Y=(T,H)=>{T.outputFiles&&(H.outputFiles=T.outputFiles.map(wt)),T.metafile&&(H.metafile=JSON.parse(T.metafile)),T.writeToStdout!==void 0&&console.log(pe(T.writeToStdout).replace(/\n$/,""))},G=(T,H)=>{let I={errors:de(T.errors,A),warnings:de(T.warnings,A)};Y(T,I),L(I,M,()=>{if(I.errors.length>0)return H(we("Build failed",I.errors,I.warnings),null);if(T.rebuild){if(!K){let z=!1;K=()=>new Promise((te,Q)=>{if(z||l)throw new Error("Cannot rebuild");$(O,{command:"rebuild",key:E},(re,et)=>{if(re)return H(we("Build failed",[{pluginName:"",text:re,location:null,notes:[],detail:void 0}],[]),null);G(et,(Be,tt)=>{Be?Q(Be):te(tt)})})}),O.ref(),K.dispose=()=>{z||(z=!0,$(O,{command:"rebuild-dispose",key:E},()=>{}),O.unref())}}I.rebuild=K}if(T.watch){if(!W){let z=!1;O.ref(),W=()=>{z||(z=!0,o.delete(E),$(O,{command:"watch-stop",key:E},()=>{}),O.unref())},m&&o.set(E,(te,Q)=>{if(te){m.onRebuild&&m.onRebuild(te,null);return}let re={errors:de(Q.errors,A),warnings:de(Q.warnings,A)};Y(Q,re),L(re,M,()=>{if(re.errors.length>0){m.onRebuild&&m.onRebuild(we("Build failed",re.errors,re.warnings),null);return}Q.rebuildID!==void 0&&(re.rebuild=K),re.stop=W,m.onRebuild&&m.onRebuild(null,re)})})}I.stop=W}H(null,I)})};if(b&&e.isBrowser)throw new Error('Cannot enable "write" in the browser');if(J&&e.isSync)throw new Error('Cannot use "incremental" with a synchronous build');if(m&&e.isSync)throw new Error('Cannot use "watch" with a synchronous build');$(O,N,(T,H)=>{if(T)return P(new Error(T),null);if(B){let I=H,z=!1;O.ref();let te={port:I.port,host:I.host,wait:B.wait,stop(){z||(z=!0,B.stop(),O.unref())}};return O.ref(),B.wait.then(O.unref,O.unref),P(null,te)}return G(H,P)})};return{readFromStdout:D,afterClose:C,service:{buildOrServe:me,transform:({callName:g,refs:f,input:a,options:p,isTTY:j,fs:F,callback:P})=>{let E=Qe(),A=M=>{try{if(typeof a!="string")throw new Error('The input to "transform" must be a string');let w=bt(g,p,j,ue);$(f,{command:"transform",flags:w,inputFS:M!==null,input:M!==null?M:a},(k,O)=>{if(k)return P(new Error(k),null);let ee=de(O.errors,E),X=de(O.warnings,E),x=1,b=()=>--x===0&&P(null,{warnings:X,code:O.code,map:O.map});if(ee.length>0)return P(we("Transform failed",ee,X),null);O.codeFS&&(x++,F.readFile(O.code,(i,v)=>{i!==null?P(i,null):(O.code=v,b())})),O.mapFS&&(x++,F.readFile(O.map,(i,v)=>{i!==null?P(i,null):(O.map=v,b())})),b()})}catch(w){let L=[];try{Se(L,p,{},j,ue)}catch(O){}let k=be(w,e,E,void 0,"");$(f,{command:"error",flags:L,error:k},()=>{k.detail=E.load(k.detail),P(we("Transform failed",[k],[]),null)})}};if(typeof a=="string"&&a.length>1024*1024){let M=A;A=()=>F.writeFile(a,M)}A(null)},formatMessages:({callName:g,refs:f,messages:a,options:p,callback:j})=>{let F=ge(a,"messages",null,"");if(!p)throw new Error(`Missing second argument in ${g}() call`);let P={},E=n(p,P,"kind",y),A=n(p,P,"color",U),M=n(p,P,"terminalWidth",ye);if(V(p,P,`in ${g}() call`),E===void 0)throw new Error(`Missing "kind" in ${g}() call`);if(E!=="error"&&E!=="warning")throw new Error(`Expected "kind" to be "error" or "warning" in ${g}() call`);let w={command:"format-msgs",messages:F,isWarning:E==="warning"};A!==void 0&&(w.color=A),M!==void 0&&(w.terminalWidth=M),$(f,w,(L,k)=>{if(L)return j(new Error(L),null);j(null,k.messages)})},analyzeMetafile:({callName:g,refs:f,metafile:a,options:p,callback:j})=>{p===void 0&&(p={});let F={},P=n(p,F,"color",U),E=n(p,F,"verbose",U);V(p,F,`in ${g}() call`);let A={command:"analyze-metafile",metafile:a};P!==void 0&&(A.color=P),E!==void 0&&(A.verbose=E),$(f,A,(M,w)=>{if(M)return j(new Error(M),null);j(null,w.result)})}}}}function Qe(){let e=new Map,t=0;return{load(r){return e.get(r)},store(r){if(r===void 0)return-1;let o=t++;return e.set(o,r),o}}}function xe(e,t,r){let o,u=!1;return()=>{if(u)return o;u=!0;try{let l=(e.stack+"").split(`
3
+ `);l.splice(1,1);let c=Xe(t,l,r);if(c)return o={text:e.message,location:c},o}catch(l){}}}function be(e,t,r,o,u){let l="Internal error",c=null;try{l=(e&&e.message||e)+""}catch(s){}try{c=Xe(t,(e.stack+"").split(`
4
+ `),"")}catch(s){}return{pluginName:u,text:l,location:c,notes:o?[o]:[],detail:r?r.store(e):-1}}function Xe(e,t,r){let o=" at ";if(e.readFileSync&&!t[0].startsWith(o)&&t[1].startsWith(o))for(let u=1;u<t.length;u++){let l=t[u];if(!!l.startsWith(o))for(l=l.slice(o.length);;){let c=/^(?:new |async )?\S+ \((.*)\)$/.exec(l);if(c){l=c[1];continue}if(c=/^eval at \S+ \((.*)\)(?:, \S+:\d+:\d+)?$/.exec(l),c){l=c[1];continue}if(c=/^(\S+):(\d+):(\d+)$/.exec(l),c){let s;try{s=e.readFileSync(c[1],"utf8")}catch(C){break}let d=s.split(/\r\n|\r|\n|\u2028|\u2029/)[+c[2]-1]||"",R=+c[3]-1,D=d.slice(R,R+r.length)===r?r.length:0;return{file:c[1],namespace:"file",line:+c[2],column:ce(d.slice(0,R)).length,length:ce(d.slice(R,R+D)).length,lineText:d+`
5
5
  `+t.slice(1).join(`
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
- ...`;if(!u.location)return`
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",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
- })(typeof exports==="object"?exports:(typeof self!=="undefined"?self:this).esbuild={});
6
+ `),suggestion:""}}break}}return null}function we(e,t,r){let o=5,u=t.length<1?"":` with ${t.length} error${t.length<2?"":"s"}:`+t.slice(0,o+1).map((c,s)=>{if(s===o)return`
7
+ ...`;if(!c.location)return`
8
+ error: ${c.text}`;let{file:d,line:R,column:D}=c.location,C=c.pluginName?`[plugin: ${c.pluginName}] `:"";return`
9
+ ${d}:${R}:${D}: ERROR: ${C}${c.text}`}).join(""),l=new Error(`${e}${u}`);return l.errors=t,l.warnings=r,l}function de(e,t){for(let r of e)r.detail=t.load(r.detail);return e}function Ze(e,t){if(e==null)return null;let r={},o=n(e,r,"file",y),u=n(e,r,"namespace",y),l=n(e,r,"line",ye),c=n(e,r,"column",ye),s=n(e,r,"length",ye),d=n(e,r,"lineText",y),R=n(e,r,"suggestion",y);return V(e,r,t),{file:o||"",namespace:u||"",line:l||0,column:c||0,length:s||0,lineText:d||"",suggestion:R||""}}function ge(e,t,r,o){let u=[],l=0;for(let c of e){let s={},d=n(c,s,"pluginName",y),R=n(c,s,"text",y),D=n(c,s,"location",Ve),C=n(c,s,"notes",_),$=n(c,s,"detail",Oe),S=`in element ${l} of "${t}"`;V(c,s,S);let ie=[];if(C)for(let ne of C){let le={},se=n(ne,le,"text",y),oe=n(ne,le,"location",Ve);V(ne,le,S),ie.push({text:se||"",location:Ze(oe,S)})}u.push({pluginName:d||o,text:R||"",location:Ze(D,S),notes:ie,detail:r?r.store($):-1}),l++}return u}function ke(e,t){let r=[];for(let o of e){if(typeof o!="string")throw new Error(`${JSON.stringify(t)} must be an array of strings`);r.push(o)}return r}function wt({path:e,contents:t}){let r=null;return{path:e,contents:t,get text(){return r===null&&(r=pe(t)),r}}}var Rt="0.14.8",Ot=e=>Ee().build(e),St=()=>{throw new Error('The "serve" API only works in node')},xt=(e,t)=>Ee().transform(e,t),kt=(e,t)=>Ee().formatMessages(e,t),Et=(e,t)=>Ee().analyzeMetafile(e,t),$t=()=>{throw new Error('The "buildSync" API only works in node')},Pt=()=>{throw new Error('The "transformSync" API only works in node')},Mt=()=>{throw new Error('The "formatMessagesSync" API only works in node')},Bt=()=>{throw new Error('The "analyzeMetafileSync" API only works in node')},ve,Le,Ee=()=>{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')},Tt=e=>{e=Ye(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)=>fe(void 0,null,function*(){let r=yield fetch(e);if(!r.ok)throw new Error(`Failed to download ${JSON.stringify(e)}`);let o=yield r.arrayBuffer(),u='{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.8"],WebAssembly.instantiate(c,o.importObject).then(({instance:e})=>o.run(e))};}',l;if(t){let d=new Blob([u],{type:"text/javascript"});l=new Worker(URL.createObjectURL(d))}else{let R=new Function("postMessage",u+"var onmessage; return m => onmessage(m)")(D=>l.onmessage({data:D}));l={onmessage:null,postMessage:D=>R({data:D}),terminate(){}}}l.postMessage(o),l.onmessage=({data:d})=>c(d);let{readFromStdout:c,service:s}=Ge({writeToStdin(d){l.postMessage(d)},isSync:!1,isBrowser:!0,esbuild:Ue});Le={build:d=>new Promise((R,D)=>s.buildOrServe({callName:"build",refs:null,serveOptions:null,options:d,isTTY:!1,defaultWD:"/",callback:(C,$)=>C?D(C):R($)})),transform:(d,R)=>new Promise((D,C)=>s.transform({callName:"transform",refs:null,input:d,options:R||{},isTTY:!1,fs:{readFile($,S){S(new Error("Internal error"),null)},writeFile($,S){S(null)}},callback:($,S)=>$?C($):D(S)})),formatMessages:(d,R)=>new Promise((D,C)=>s.formatMessages({callName:"formatMessages",refs:null,messages:d,options:R,callback:($,S)=>$?C($):D(S)})),analyzeMetafile:(d,R)=>new Promise((D,C)=>s.analyzeMetafile({callName:"analyzeMetafile",refs:null,metafile:typeof d=="string"?d:JSON.stringify(d),options:R,callback:($,S)=>$?C($):D(S)}))}});module.exports=ft(Ue);
10
+ })(typeof module==="object"?module:{set exports(x){(typeof self!=="undefined"?self:this).esbuild=x}});
@@ -260,6 +260,8 @@ export interface Plugin {
260
260
 
261
261
  export interface PluginBuild {
262
262
  initialOptions: BuildOptions;
263
+ resolve(path: string, options?: ResolveOptions): Promise<ResolveResult>;
264
+
263
265
  onStart(callback: () =>
264
266
  (OnStartResult | null | void | Promise<OnStartResult | null | void>)): void;
265
267
  onEnd(callback: (result: BuildResult) =>
@@ -285,6 +287,26 @@ export interface PluginBuild {
285
287
  };
286
288
  }
287
289
 
290
+ export interface ResolveOptions {
291
+ importer?: string;
292
+ namespace?: string;
293
+ resolveDir?: string;
294
+ kind?: ImportKind;
295
+ pluginData?: any;
296
+ }
297
+
298
+ export interface ResolveResult {
299
+ errors: Message[];
300
+ warnings: Message[];
301
+
302
+ path: string;
303
+ external: boolean;
304
+ sideEffects: boolean;
305
+ namespace: string;
306
+ suffix: string;
307
+ pluginData: any;
308
+ }
309
+
288
310
  export interface OnStartResult {
289
311
  errors?: PartialMessage[];
290
312
  warnings?: PartialMessage[];