isomorfeus-asset-manager 0.14.1 → 0.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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[];