isomorfeus-asset-manager 0.13.9 → 0.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8cce6d5318588337fec0809ae31f67d65fb70327adaa340d39a59da0b915bfaf
4
- data.tar.gz: df17525856f44830a038d4c5c984c26c1fc8e99ee3315a0098d19b5c1332161d
3
+ metadata.gz: fd50fecefc50f4081bbce6efaedbf460f43f3b9acfcc015d142e2d93abbc3998
4
+ data.tar.gz: 688354a553207af2a7eece24270df04f048ff264106161fe19fae82f674aaec9
5
5
  SHA512:
6
- metadata.gz: e169ef18fdfbfa207d9bfc60cd67bf3b1344b6fe9b153d94711e397cc792551c931b189b5ebdebab226c5ef9ab0eeb6a9a7b6b142c9eb4c6bc0265bf8be278e8
7
- data.tar.gz: 36b1941c28e2e11b708c2a79f627eb9cbb5efafe5b4d93a4dd9b5c569ca4134d8fcd6b531af4911dc29bbbb4dc81f385bcb2f604e21fe6f97e3106c3e4d2d6db
6
+ metadata.gz: cab4ed06234a667a4338e8c4c5a1985f94b58424d7e0a2b56270ad5544315554cdfca6c9473d9bbae9788c9bfbfc84a3db28277214e44511c4efb19dcb68b9ed
7
+ data.tar.gz: 24c545047b35975f31f099cef12296d70d9f829d333496a7ea4b0b48cb1b79c3324a022741fdc5d5e8fc9100b86e9a07bf4d6d6acad0dbdaa1290e4e8f81f1cd
@@ -1,5 +1,5 @@
1
1
  module Isomorfeus
2
2
  class AssetManager
3
- VERSION = '0.13.9'
3
+ VERSION = '0.14.3'
4
4
  end
5
5
  end
@@ -4,9 +4,9 @@
4
4
  "requires": true,
5
5
  "packages": {
6
6
  "node_modules/esbuild-wasm": {
7
- "version": "0.13.15",
8
- "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.13.15.tgz",
9
- "integrity": "sha512-QO/ZqlnpXtiMKrPp8lgwsNJFKGKwm0EcIN6Og3vbhkFaauRTgGsX0t96gW7pFIY5UAARW/O+i1B/YLid6jW6eQ==",
7
+ "version": "0.14.10",
8
+ "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.10.tgz",
9
+ "integrity": "sha512-csltbEadNW5WwidgZ8vVGZHESRbeeY8jVJ1GJTqxtq/1wGqTI2WO0/Sk3i0O3G6SuXglNnnj+NjEw4N8aHd4bQ==",
10
10
  "bin": {
11
11
  "esbuild": "bin/esbuild"
12
12
  },
Binary file
@@ -3,6 +3,7 @@ export type Format = 'iife' | 'cjs' | 'esm';
3
3
  export type Loader = 'js' | 'jsx' | 'ts' | 'tsx' | 'css' | 'json' | 'text' | 'base64' | 'file' | 'dataurl' | 'binary' | 'default';
4
4
  export type LogLevel = 'verbose' | 'debug' | 'info' | 'warning' | 'error' | 'silent';
5
5
  export type Charset = 'ascii' | 'utf8';
6
+ export type Drop = 'console' | 'debugger';
6
7
 
7
8
  interface CommonOptions {
8
9
  /** Documentation: https://esbuild.github.io/api/#sourcemap */
@@ -21,6 +22,7 @@ interface CommonOptions {
21
22
  /** Documentation: https://esbuild.github.io/api/#target */
22
23
  target?: string | string[];
23
24
 
25
+ drop?: Drop[];
24
26
  /** Documentation: https://esbuild.github.io/api/#minify */
25
27
  minify?: boolean;
26
28
  /** Documentation: https://esbuild.github.io/api/#minify */
@@ -232,6 +234,7 @@ export interface TransformOptions extends CommonOptions {
232
234
  jsxFragmentFactory?: string,
233
235
  useDefineForClassFields?: boolean,
234
236
  importsNotUsedAsValues?: 'remove' | 'preserve' | 'error',
237
+ preserveValueImports?: boolean,
235
238
  },
236
239
  };
237
240
 
@@ -259,6 +262,8 @@ export interface Plugin {
259
262
 
260
263
  export interface PluginBuild {
261
264
  initialOptions: BuildOptions;
265
+ resolve(path: string, options?: ResolveOptions): Promise<ResolveResult>;
266
+
262
267
  onStart(callback: () =>
263
268
  (OnStartResult | null | void | Promise<OnStartResult | null | void>)): void;
264
269
  onEnd(callback: (result: BuildResult) =>
@@ -267,6 +272,42 @@ export interface PluginBuild {
267
272
  (OnResolveResult | null | undefined | Promise<OnResolveResult | null | undefined>)): void;
268
273
  onLoad(options: OnLoadOptions, callback: (args: OnLoadArgs) =>
269
274
  (OnLoadResult | null | undefined | Promise<OnLoadResult | null | undefined>)): void;
275
+
276
+ // This is a full copy of the esbuild library in case you need it
277
+ esbuild: {
278
+ serve: typeof serve,
279
+ build: typeof build,
280
+ buildSync: typeof buildSync,
281
+ transform: typeof transform,
282
+ transformSync: typeof transformSync,
283
+ formatMessages: typeof formatMessages,
284
+ formatMessagesSync: typeof formatMessagesSync,
285
+ analyzeMetafile: typeof analyzeMetafile,
286
+ analyzeMetafileSync: typeof analyzeMetafileSync,
287
+ initialize: typeof initialize,
288
+ version: typeof version,
289
+ };
290
+ }
291
+
292
+ export interface ResolveOptions {
293
+ pluginName?: string;
294
+ importer?: string;
295
+ namespace?: string;
296
+ resolveDir?: string;
297
+ kind?: ImportKind;
298
+ pluginData?: any;
299
+ }
300
+
301
+ export interface ResolveResult {
302
+ errors: Message[];
303
+ warnings: Message[];
304
+
305
+ path: string;
306
+ external: boolean;
307
+ sideEffects: boolean;
308
+ namespace: string;
309
+ suffix: string;
310
+ pluginData: any;
270
311
  }
271
312
 
272
313
  export interface OnStartResult {
@@ -311,6 +352,7 @@ export interface OnResolveResult {
311
352
  external?: boolean;
312
353
  sideEffects?: boolean;
313
354
  namespace?: string;
355
+ suffix?: string;
314
356
  pluginData?: any;
315
357
 
316
358
  watchFiles?: string[];
@@ -325,6 +367,7 @@ export interface OnLoadOptions {
325
367
  export interface OnLoadArgs {
326
368
  path: string;
327
369
  namespace: string;
370
+ suffix: string;
328
371
  pluginData: any;
329
372
  }
330
373
 
@@ -17,6 +17,26 @@ var __spreadValues = (a, b) => {
17
17
  return a;
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __export = (target, all) => {
21
+ for (var name in all)
22
+ __defProp(target, name, { get: all[name], enumerable: true });
23
+ };
24
+
25
+ // lib/npm/browser.ts
26
+ var browser_exports = {};
27
+ __export(browser_exports, {
28
+ analyzeMetafile: () => analyzeMetafile,
29
+ analyzeMetafileSync: () => analyzeMetafileSync,
30
+ build: () => build,
31
+ buildSync: () => buildSync,
32
+ formatMessages: () => formatMessages,
33
+ formatMessagesSync: () => formatMessagesSync,
34
+ initialize: () => initialize,
35
+ serve: () => serve,
36
+ transform: () => transform,
37
+ transformSync: () => transformSync,
38
+ version: () => version
39
+ });
20
40
 
21
41
  // lib/shared/stdio_protocol.ts
22
42
  function encodePacket(packet) {
@@ -222,7 +242,7 @@ function checkForInvalidFlags(object, keys, where) {
222
242
  }
223
243
  }
224
244
  function validateInitializeOptions(options) {
225
- let keys = Object.create(null);
245
+ let keys = /* @__PURE__ */ Object.create(null);
226
246
  let wasmURL = getFlag(options, keys, "wasmURL", mustBeString);
227
247
  let worker = getFlag(options, keys, "worker", mustBeBoolean);
228
248
  checkForInvalidFlags(options, keys, "in startService() call");
@@ -253,6 +273,7 @@ function pushCommonFlags(flags, options, keys) {
253
273
  let minifySyntax = getFlag(options, keys, "minifySyntax", mustBeBoolean);
254
274
  let minifyWhitespace = getFlag(options, keys, "minifyWhitespace", mustBeBoolean);
255
275
  let minifyIdentifiers = getFlag(options, keys, "minifyIdentifiers", mustBeBoolean);
276
+ let drop = getFlag(options, keys, "drop", mustBeArray);
256
277
  let charset = getFlag(options, keys, "charset", mustBeString);
257
278
  let treeShaking = getFlag(options, keys, "treeShaking", mustBeBoolean);
258
279
  let ignoreAnnotations = getFlag(options, keys, "ignoreAnnotations", mustBeBoolean);
@@ -292,6 +313,9 @@ function pushCommonFlags(flags, options, keys) {
292
313
  flags.push(`--tree-shaking=${treeShaking}`);
293
314
  if (ignoreAnnotations)
294
315
  flags.push(`--ignore-annotations`);
316
+ if (drop)
317
+ for (let what of drop)
318
+ flags.push(`--drop:${what}`);
295
319
  if (jsx)
296
320
  flags.push(`--jsx=${jsx}`);
297
321
  if (jsxFactory)
@@ -315,7 +339,7 @@ function flagsForBuildOptions(callName, options, isTTY, logLevelDefault, writeDe
315
339
  var _a;
316
340
  let flags = [];
317
341
  let entries = [];
318
- let keys = Object.create(null);
342
+ let keys = /* @__PURE__ */ Object.create(null);
319
343
  let stdinContents = null;
320
344
  let stdinResolveDir = null;
321
345
  let watchMode = null;
@@ -365,7 +389,7 @@ function flagsForBuildOptions(callName, options, isTTY, logLevelDefault, writeDe
365
389
  if (typeof watch === "boolean") {
366
390
  watchMode = {};
367
391
  } else {
368
- let watchKeys = Object.create(null);
392
+ let watchKeys = /* @__PURE__ */ Object.create(null);
369
393
  let onRebuild = getFlag(watch, watchKeys, "onRebuild", mustBeFunction);
370
394
  checkForInvalidFlags(watch, watchKeys, `on "watch" in ${callName}() call`);
371
395
  watchMode = { onRebuild };
@@ -471,7 +495,7 @@ function flagsForBuildOptions(callName, options, isTTY, logLevelDefault, writeDe
471
495
  }
472
496
  }
473
497
  if (stdin) {
474
- let stdinKeys = Object.create(null);
498
+ let stdinKeys = /* @__PURE__ */ Object.create(null);
475
499
  let contents = getFlag(stdin, stdinKeys, "contents", mustBeString);
476
500
  let resolveDir = getFlag(stdin, stdinKeys, "resolveDir", mustBeString);
477
501
  let sourcefile = getFlag(stdin, stdinKeys, "sourcefile", mustBeString);
@@ -506,7 +530,7 @@ function flagsForBuildOptions(callName, options, isTTY, logLevelDefault, writeDe
506
530
  }
507
531
  function flagsForTransformOptions(callName, options, isTTY, logLevelDefault) {
508
532
  let flags = [];
509
- let keys = Object.create(null);
533
+ let keys = /* @__PURE__ */ Object.create(null);
510
534
  pushLogFlags(flags, options, keys, isTTY, logLevelDefault);
511
535
  pushCommonFlags(flags, options, keys);
512
536
  let sourcemap = getFlag(options, keys, "sourcemap", mustBeStringOrBoolean);
@@ -531,11 +555,10 @@ function flagsForTransformOptions(callName, options, isTTY, logLevelDefault) {
531
555
  return flags;
532
556
  }
533
557
  function createChannel(streamIn) {
534
- let responseCallbacks = new Map();
535
- let pluginCallbacks = new Map();
536
- let watchCallbacks = new Map();
537
- let serveCallbacks = new Map();
538
- let nextServeID = 0;
558
+ let responseCallbacks = /* @__PURE__ */ new Map();
559
+ let pluginCallbacks = /* @__PURE__ */ new Map();
560
+ let watchCallbacks = /* @__PURE__ */ new Map();
561
+ let serveCallbacks = /* @__PURE__ */ new Map();
539
562
  let isClosed = false;
540
563
  let nextRequestID = 0;
541
564
  let nextBuildKey = 0;
@@ -612,7 +635,7 @@ function createChannel(streamIn) {
612
635
  sendResponse(id, {});
613
636
  break;
614
637
  }
615
- case "start": {
638
+ case "on-start": {
616
639
  let callback = pluginCallbacks.get(request.key);
617
640
  if (!callback)
618
641
  sendResponse(id, {});
@@ -620,7 +643,7 @@ function createChannel(streamIn) {
620
643
  sendResponse(id, await callback(request));
621
644
  break;
622
645
  }
623
- case "resolve": {
646
+ case "on-resolve": {
624
647
  let callback = pluginCallbacks.get(request.key);
625
648
  if (!callback)
626
649
  sendResponse(id, {});
@@ -628,7 +651,7 @@ function createChannel(streamIn) {
628
651
  sendResponse(id, await callback(request));
629
652
  break;
630
653
  }
631
- case "load": {
654
+ case "on-load": {
632
655
  let callback = pluginCallbacks.get(request.key);
633
656
  if (!callback)
634
657
  sendResponse(id, {});
@@ -637,21 +660,21 @@ function createChannel(streamIn) {
637
660
  break;
638
661
  }
639
662
  case "serve-request": {
640
- let callbacks = serveCallbacks.get(request.serveID);
663
+ let callbacks = serveCallbacks.get(request.key);
641
664
  if (callbacks && callbacks.onRequest)
642
665
  callbacks.onRequest(request.args);
643
666
  sendResponse(id, {});
644
667
  break;
645
668
  }
646
669
  case "serve-wait": {
647
- let callbacks = serveCallbacks.get(request.serveID);
670
+ let callbacks = serveCallbacks.get(request.key);
648
671
  if (callbacks)
649
672
  callbacks.onWait(request.error);
650
673
  sendResponse(id, {});
651
674
  break;
652
675
  }
653
676
  case "watch-rebuild": {
654
- let callback = watchCallbacks.get(request.watchID);
677
+ let callback = watchCallbacks.get(request.key);
655
678
  try {
656
679
  if (callback)
657
680
  callback(null, request.args);
@@ -673,8 +696,8 @@ function createChannel(streamIn) {
673
696
  if (isFirstPacket) {
674
697
  isFirstPacket = false;
675
698
  let binaryVersion = String.fromCharCode(...bytes);
676
- if (binaryVersion !== "0.13.15") {
677
- throw new Error(`Cannot start service: Host version "${"0.13.15"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
699
+ if (binaryVersion !== "0.14.10") {
700
+ throw new Error(`Cannot start service: Host version "${"0.14.10"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
678
701
  }
679
702
  return;
680
703
  }
@@ -690,7 +713,7 @@ function createChannel(streamIn) {
690
713
  callback(null, packet.value);
691
714
  }
692
715
  };
693
- let handlePlugins = async (initialOptions, plugins, buildKey, stash) => {
716
+ let handlePlugins = async (initialOptions, plugins, buildKey, stash, refs) => {
694
717
  let onStartCallbacks = [];
695
718
  let onEndCallbacks = [];
696
719
  let onResolveCallbacks = {};
@@ -698,12 +721,13 @@ function createChannel(streamIn) {
698
721
  let nextCallbackID = 0;
699
722
  let i = 0;
700
723
  let requestPlugins = [];
724
+ let isSetupDone = false;
701
725
  plugins = [...plugins];
702
726
  for (let item of plugins) {
703
727
  let keys = {};
704
728
  if (typeof item !== "object")
705
729
  throw new Error(`Plugin at index ${i} must be an object`);
706
- let name = getFlag(item, keys, "name", mustBeString);
730
+ const name = getFlag(item, keys, "name", mustBeString);
707
731
  if (typeof name !== "string" || name === "")
708
732
  throw new Error(`Plugin at index ${i} is missing a name`);
709
733
  try {
@@ -717,20 +741,70 @@ function createChannel(streamIn) {
717
741
  onLoad: []
718
742
  };
719
743
  i++;
744
+ let resolve = (path, options = {}) => {
745
+ if (!isSetupDone)
746
+ throw new Error('Cannot call "resolve" before plugin setup has completed');
747
+ if (typeof path !== "string")
748
+ throw new Error(`The path to resolve must be a string`);
749
+ let keys2 = /* @__PURE__ */ Object.create(null);
750
+ let pluginName = getFlag(options, keys2, "pluginName", mustBeString);
751
+ let importer = getFlag(options, keys2, "importer", mustBeString);
752
+ let namespace = getFlag(options, keys2, "namespace", mustBeString);
753
+ let resolveDir = getFlag(options, keys2, "resolveDir", mustBeString);
754
+ let kind = getFlag(options, keys2, "kind", mustBeString);
755
+ let pluginData = getFlag(options, keys2, "pluginData", canBeAnything);
756
+ checkForInvalidFlags(options, keys2, "in resolve() call");
757
+ return new Promise((resolve2, reject) => {
758
+ const request = {
759
+ command: "resolve",
760
+ path,
761
+ key: buildKey,
762
+ pluginName: name
763
+ };
764
+ if (pluginName != null)
765
+ request.pluginName = pluginName;
766
+ if (importer != null)
767
+ request.importer = importer;
768
+ if (namespace != null)
769
+ request.namespace = namespace;
770
+ if (resolveDir != null)
771
+ request.resolveDir = resolveDir;
772
+ if (kind != null)
773
+ request.kind = kind;
774
+ if (pluginData != null)
775
+ request.pluginData = stash.store(pluginData);
776
+ sendRequest(refs, request, (error, response) => {
777
+ if (error !== null)
778
+ reject(new Error(error));
779
+ else
780
+ resolve2({
781
+ errors: replaceDetailsInMessages(response.errors, stash),
782
+ warnings: replaceDetailsInMessages(response.warnings, stash),
783
+ path: response.path,
784
+ external: response.external,
785
+ sideEffects: response.sideEffects,
786
+ namespace: response.namespace,
787
+ suffix: response.suffix,
788
+ pluginData: stash.load(response.pluginData)
789
+ });
790
+ });
791
+ });
792
+ };
720
793
  let promise = setup({
721
794
  initialOptions,
795
+ resolve,
722
796
  onStart(callback2) {
723
- let registeredText = `This error came from the "onStart" callback registered here`;
797
+ let registeredText = `This error came from the "onStart" callback registered here:`;
724
798
  let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onStart");
725
799
  onStartCallbacks.push({ name, callback: callback2, note: registeredNote });
726
800
  },
727
801
  onEnd(callback2) {
728
- let registeredText = `This error came from the "onEnd" callback registered here`;
802
+ let registeredText = `This error came from the "onEnd" callback registered here:`;
729
803
  let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onEnd");
730
804
  onEndCallbacks.push({ name, callback: callback2, note: registeredNote });
731
805
  },
732
806
  onResolve(options, callback2) {
733
- let registeredText = `This error came from the "onResolve" callback registered here`;
807
+ let registeredText = `This error came from the "onResolve" callback registered here:`;
734
808
  let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onResolve");
735
809
  let keys2 = {};
736
810
  let filter = getFlag(options, keys2, "filter", mustBeRegExp);
@@ -743,7 +817,7 @@ function createChannel(streamIn) {
743
817
  plugin.onResolve.push({ id, filter: filter.source, namespace: namespace || "" });
744
818
  },
745
819
  onLoad(options, callback2) {
746
- let registeredText = `This error came from the "onLoad" callback registered here`;
820
+ let registeredText = `This error came from the "onLoad" callback registered here:`;
747
821
  let registeredNote = extractCallerV8(new Error(registeredText), streamIn, "onLoad");
748
822
  let keys2 = {};
749
823
  let filter = getFlag(options, keys2, "filter", mustBeRegExp);
@@ -754,7 +828,8 @@ function createChannel(streamIn) {
754
828
  let id = nextCallbackID++;
755
829
  onLoadCallbacks[id] = { name, callback: callback2, note: registeredNote };
756
830
  plugin.onLoad.push({ id, filter: filter.source, namespace: namespace || "" });
757
- }
831
+ },
832
+ esbuild: streamIn.esbuild
758
833
  });
759
834
  if (promise)
760
835
  await promise;
@@ -765,7 +840,7 @@ function createChannel(streamIn) {
765
840
  }
766
841
  const callback = async (request) => {
767
842
  switch (request.command) {
768
- case "start": {
843
+ case "on-start": {
769
844
  let response = { errors: [], warnings: [] };
770
845
  await Promise.all(onStartCallbacks.map(async ({ name, callback: callback2, note }) => {
771
846
  try {
@@ -788,7 +863,7 @@ function createChannel(streamIn) {
788
863
  }));
789
864
  return response;
790
865
  }
791
- case "resolve": {
866
+ case "on-resolve": {
792
867
  let response = {}, name = "", callback2, note;
793
868
  for (let id of request.ids) {
794
869
  try {
@@ -808,6 +883,7 @@ function createChannel(streamIn) {
808
883
  let pluginName = getFlag(result, keys, "pluginName", mustBeString);
809
884
  let path = getFlag(result, keys, "path", mustBeString);
810
885
  let namespace = getFlag(result, keys, "namespace", mustBeString);
886
+ let suffix = getFlag(result, keys, "suffix", mustBeString);
811
887
  let external = getFlag(result, keys, "external", mustBeBoolean);
812
888
  let sideEffects = getFlag(result, keys, "sideEffects", mustBeBoolean);
813
889
  let pluginData = getFlag(result, keys, "pluginData", canBeAnything);
@@ -823,6 +899,8 @@ function createChannel(streamIn) {
823
899
  response.path = path;
824
900
  if (namespace != null)
825
901
  response.namespace = namespace;
902
+ if (suffix != null)
903
+ response.suffix = suffix;
826
904
  if (external != null)
827
905
  response.external = external;
828
906
  if (sideEffects != null)
@@ -845,7 +923,7 @@ function createChannel(streamIn) {
845
923
  }
846
924
  return response;
847
925
  }
848
- case "load": {
926
+ case "on-load": {
849
927
  let response = {}, name = "", callback2, note;
850
928
  for (let id of request.ids) {
851
929
  try {
@@ -853,6 +931,7 @@ function createChannel(streamIn) {
853
931
  let result = await callback2({
854
932
  path: request.path,
855
933
  namespace: request.namespace,
934
+ suffix: request.suffix,
856
935
  pluginData: stash.load(request.pluginData)
857
936
  });
858
937
  if (result != null) {
@@ -916,6 +995,7 @@ function createChannel(streamIn) {
916
995
  })().then(done);
917
996
  };
918
997
  }
998
+ isSetupDone = true;
919
999
  let refCount = 0;
920
1000
  return {
921
1001
  ok: true,
@@ -933,24 +1013,23 @@ function createChannel(streamIn) {
933
1013
  }
934
1014
  };
935
1015
  };
936
- let buildServeData = (refs, options, request) => {
1016
+ let buildServeData = (refs, options, request, key) => {
937
1017
  let keys = {};
938
1018
  let port = getFlag(options, keys, "port", mustBeInteger);
939
1019
  let host = getFlag(options, keys, "host", mustBeString);
940
1020
  let servedir = getFlag(options, keys, "servedir", mustBeString);
941
1021
  let onRequest = getFlag(options, keys, "onRequest", mustBeFunction);
942
- let serveID = nextServeID++;
943
1022
  let onWait;
944
1023
  let wait = new Promise((resolve, reject) => {
945
1024
  onWait = (error) => {
946
- serveCallbacks.delete(serveID);
1025
+ serveCallbacks.delete(key);
947
1026
  if (error !== null)
948
1027
  reject(new Error(error));
949
1028
  else
950
1029
  resolve();
951
1030
  };
952
1031
  });
953
- request.serve = { serveID };
1032
+ request.serve = {};
954
1033
  checkForInvalidFlags(options, keys, `in serve() call`);
955
1034
  if (port !== void 0)
956
1035
  request.serve.port = port;
@@ -958,14 +1037,14 @@ function createChannel(streamIn) {
958
1037
  request.serve.host = host;
959
1038
  if (servedir !== void 0)
960
1039
  request.serve.servedir = servedir;
961
- serveCallbacks.set(serveID, {
1040
+ serveCallbacks.set(key, {
962
1041
  onRequest,
963
1042
  onWait
964
1043
  });
965
1044
  return {
966
1045
  wait,
967
1046
  stop() {
968
- sendRequest(refs, { command: "serve-stop", serveID }, () => {
1047
+ sendRequest(refs, { command: "serve-stop", key }, () => {
969
1048
  });
970
1049
  }
971
1050
  };
@@ -1005,7 +1084,7 @@ function createChannel(streamIn) {
1005
1084
  if (plugins && plugins.length > 0) {
1006
1085
  if (streamIn.isSync)
1007
1086
  return handleError(new Error("Cannot use plugins in synchronous API calls"), "");
1008
- handlePlugins(options, plugins, key, details).then((result) => {
1087
+ handlePlugins(options, plugins, key, details, refs).then((result) => {
1009
1088
  if (!result.ok) {
1010
1089
  handleError(result.error, result.pluginName);
1011
1090
  } else {
@@ -1093,7 +1172,7 @@ function createChannel(streamIn) {
1093
1172
  };
1094
1173
  if (requestPlugins)
1095
1174
  request.plugins = requestPlugins;
1096
- let serve2 = serveOptions && buildServeData(refs, serveOptions, request);
1175
+ let serve2 = serveOptions && buildServeData(refs, serveOptions, request, key);
1097
1176
  let rebuild;
1098
1177
  let stop;
1099
1178
  let copyResponseToResult = (response, result) => {
@@ -1114,13 +1193,13 @@ function createChannel(streamIn) {
1114
1193
  if (result.errors.length > 0) {
1115
1194
  return callback2(failureErrorWithLog("Build failed", result.errors, result.warnings), null);
1116
1195
  }
1117
- if (response.rebuildID !== void 0) {
1196
+ if (response.rebuild) {
1118
1197
  if (!rebuild) {
1119
1198
  let isDisposed = false;
1120
1199
  rebuild = () => new Promise((resolve, reject) => {
1121
1200
  if (isDisposed || isClosed)
1122
1201
  throw new Error("Cannot rebuild");
1123
- sendRequest(refs, { command: "rebuild", rebuildID: response.rebuildID }, (error2, response2) => {
1202
+ sendRequest(refs, { command: "rebuild", key }, (error2, response2) => {
1124
1203
  if (error2) {
1125
1204
  const message = { pluginName: "", text: error2, location: null, notes: [], detail: void 0 };
1126
1205
  return callback2(failureErrorWithLog("Build failed", [message], []), null);
@@ -1138,14 +1217,14 @@ function createChannel(streamIn) {
1138
1217
  if (isDisposed)
1139
1218
  return;
1140
1219
  isDisposed = true;
1141
- sendRequest(refs, { command: "rebuild-dispose", rebuildID: response.rebuildID }, () => {
1220
+ sendRequest(refs, { command: "rebuild-dispose", key }, () => {
1142
1221
  });
1143
1222
  refs.unref();
1144
1223
  };
1145
1224
  }
1146
1225
  result.rebuild = rebuild;
1147
1226
  }
1148
- if (response.watchID !== void 0) {
1227
+ if (response.watch) {
1149
1228
  if (!stop) {
1150
1229
  let isStopped = false;
1151
1230
  refs.ref();
@@ -1153,13 +1232,13 @@ function createChannel(streamIn) {
1153
1232
  if (isStopped)
1154
1233
  return;
1155
1234
  isStopped = true;
1156
- watchCallbacks.delete(response.watchID);
1157
- sendRequest(refs, { command: "watch-stop", watchID: response.watchID }, () => {
1235
+ watchCallbacks.delete(key);
1236
+ sendRequest(refs, { command: "watch-stop", key }, () => {
1158
1237
  });
1159
1238
  refs.unref();
1160
1239
  };
1161
1240
  if (watch) {
1162
- watchCallbacks.set(response.watchID, (serviceStopError, watchResponse) => {
1241
+ watchCallbacks.set(key, (serviceStopError, watchResponse) => {
1163
1242
  if (serviceStopError) {
1164
1243
  if (watch.onRebuild)
1165
1244
  watch.onRebuild(serviceStopError, null);
@@ -1348,7 +1427,7 @@ function createChannel(streamIn) {
1348
1427
  };
1349
1428
  }
1350
1429
  function createObjectStash() {
1351
- const map = new Map();
1430
+ const map = /* @__PURE__ */ new Map();
1352
1431
  let nextID = 0;
1353
1432
  return {
1354
1433
  load(id) {
@@ -1452,7 +1531,7 @@ error: ${e.text}`;
1452
1531
  let { file, line, column } = e.location;
1453
1532
  let pluginText = e.pluginName ? `[plugin: ${e.pluginName}] ` : "";
1454
1533
  return `
1455
- ${file}:${line}:${column}: error: ${pluginText}${e.text}`;
1534
+ ${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;
1456
1535
  }).join("");
1457
1536
  let error = new Error(`${text}${summary}`);
1458
1537
  error.errors = errors;
@@ -1546,7 +1625,7 @@ function convertOutputFiles({ path, contents }) {
1546
1625
  }
1547
1626
 
1548
1627
  // lib/npm/browser.ts
1549
- var version = "0.13.15";
1628
+ var version = "0.14.10";
1550
1629
  var build = (options) => ensureServiceIsRunning().build(options);
1551
1630
  var serve = () => {
1552
1631
  throw new Error(`The "serve" API only works in node`);
@@ -2191,9 +2270,9 @@ var startRunningService = async (wasmURL, useWorker) => {
2191
2270
 
2192
2271
  // The linker guarantees global data starts from at least wasmMinDataAddr.
2193
2272
  // Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr.
2194
- const wasmMinDataAddr = 4096 + 4096;
2273
+ const wasmMinDataAddr = 4096 + 8192;
2195
2274
  if (offset >= wasmMinDataAddr) {
2196
- throw new Error("command line too long");
2275
+ throw new Error("total length of command line and environment variables exceeds limit");
2197
2276
  }
2198
2277
 
2199
2278
  this._inst.exports.run(argc, argv);
@@ -2303,7 +2382,7 @@ onmessage = ({ data: wasm }) => {
2303
2382
  callback(null, count);
2304
2383
  };
2305
2384
  let go = new global.Go();
2306
- go.argv = ["", \`--service=\${"0.13.15"}\`];
2385
+ go.argv = ["", \`--service=\${"0.14.10"}\`];
2307
2386
  WebAssembly.instantiate(wasm, go.importObject).then(({ instance }) => go.run(instance));
2308
2387
  };}`;
2309
2388
  let worker;
@@ -2327,7 +2406,8 @@ onmessage = ({ data: wasm }) => {
2327
2406
  worker.postMessage(bytes);
2328
2407
  },
2329
2408
  isSync: false,
2330
- isBrowser: true
2409
+ isBrowser: true,
2410
+ esbuild: browser_exports
2331
2411
  });
2332
2412
  longLivedService = {
2333
2413
  build: (options) => new Promise((resolve, reject) => service.buildOrServe({