@jsenv/core 23.1.3 → 23.2.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.
Files changed (82) hide show
  1. package/dist/jsenv_browser_system.js +36 -99
  2. package/dist/jsenv_browser_system.js.map +12 -21
  3. package/dist/jsenv_compile_proxy.js +18 -82
  4. package/dist/jsenv_compile_proxy.js.map +11 -21
  5. package/dist/jsenv_exploring_index.js +127 -274
  6. package/dist/jsenv_exploring_index.js.map +76 -90
  7. package/dist/jsenv_exploring_redirector.js +21 -89
  8. package/dist/jsenv_exploring_redirector.js.map +13 -25
  9. package/dist/jsenv_toolbar.js +81 -149
  10. package/dist/jsenv_toolbar.js.map +50 -61
  11. package/dist/jsenv_toolbar_injector.js +185 -231
  12. package/dist/jsenv_toolbar_injector.js.map +30 -42
  13. package/package.json +8 -9
  14. package/src/abort/abortable.js +172 -0
  15. package/src/abort/callback_list.js +64 -0
  16. package/src/abort/callback_race.js +34 -0
  17. package/src/abort/cleaner.js +22 -0
  18. package/src/abort/main.js +32 -0
  19. package/src/abort/process_teardown_events.js +59 -0
  20. package/src/buildProject.js +132 -123
  21. package/src/execute.js +108 -107
  22. package/src/executeTestPlan.js +107 -125
  23. package/src/importUsingChildProcess.js +2 -1
  24. package/src/internal/browser-launcher/executeHtmlFile.js +33 -12
  25. package/src/internal/browser-utils/fetch-browser.js +4 -29
  26. package/src/internal/browser-utils/fetchUsingXHR.js +5 -7
  27. package/src/internal/building/buildUsingRollup.js +60 -24
  28. package/src/internal/building/createJsenvRollupPlugin.js +13 -31
  29. package/src/internal/building/ressource_builder.js +3 -6
  30. package/src/internal/building/sourcemap_loader.js +4 -5
  31. package/src/internal/building/url_fetcher.js +2 -5
  32. package/src/internal/building/url_loader.js +3 -6
  33. package/src/internal/compiling/compileFile.js +1 -2
  34. package/src/internal/compiling/createCompiledFileService.js +8 -9
  35. package/src/internal/compiling/startCompileServer.js +74 -135
  36. package/src/internal/executing/coverage/generateCoverageJsonFile.js +20 -3
  37. package/src/internal/executing/coverage/relativeUrlToEmptyCoverage.js +19 -30
  38. package/src/internal/executing/coverage/reportToCoverage.js +44 -24
  39. package/src/internal/executing/coverage/v8CoverageFromNodeV8Directory.js +2 -15
  40. package/src/internal/executing/createSummaryLog.js +50 -37
  41. package/src/internal/executing/executeConcurrently.js +89 -47
  42. package/src/internal/executing/executePlan.js +33 -7
  43. package/src/internal/executing/executionLogs.js +25 -28
  44. package/src/internal/executing/execution_colors.js +15 -0
  45. package/src/internal/executing/generateExecutionSteps.js +3 -2
  46. package/src/internal/executing/launchAndExecute.js +217 -261
  47. package/src/internal/exploring/fetchExploringJson.js +3 -4
  48. package/src/internal/fetchUrl.js +6 -2
  49. package/src/internal/logs/log_style.js +16 -28
  50. package/src/internal/logs/msAsDuration.js +1 -1
  51. package/src/internal/node-launcher/createChildProcessOptions.js +4 -5
  52. package/src/internal/node-launcher/createControllableNodeProcess.js +117 -229
  53. package/src/internal/node-launcher/kill_process_tree.js +76 -0
  54. package/src/internal/node-launcher/nodeControllableFile.mjs +16 -10
  55. package/src/internal/{promise_track_race.js → promise_race.js} +2 -2
  56. package/src/internal/runtime/s.js +25 -24
  57. package/src/internal/toolbar/toolbar.html +157 -61
  58. package/src/internal/toolbar/toolbar.injector.js +8 -0
  59. package/src/internal/toolbar/util/animation.js +3 -7
  60. package/src/internal/toolbar/util/fetching.js +1 -30
  61. package/src/jsenvServiceWorkerFinalizer.js +1 -2
  62. package/src/launchBrowser.js +131 -127
  63. package/src/launchNode.js +29 -17
  64. package/src/playwright_browser_versions.js +3 -3
  65. package/src/requireUsingChildProcess.js +2 -1
  66. package/src/signal/signal.js +65 -0
  67. package/src/startExploring.js +70 -72
  68. package/src/internal/executeJsenvAsyncFunction.js +0 -34
  69. package/src/internal/toolbar/animation/toolbar-movie-icon.svg +0 -15
  70. package/src/internal/toolbar/compilation/flask.svg +0 -7
  71. package/src/internal/toolbar/compilation/info.svg +0 -9
  72. package/src/internal/toolbar/compilation/loupe.svg +0 -11
  73. package/src/internal/toolbar/compilation/toolbar_compilation.svg +0 -11
  74. package/src/internal/toolbar/eventsource/toolbar-power-icon.svg +0 -10
  75. package/src/internal/toolbar/eventsource/toolbar-power-off-icon.svg +0 -10
  76. package/src/internal/toolbar/responsive/toolbar-dots-icon.svg +0 -10
  77. package/src/internal/toolbar/settings/toolbar-settings-icon.svg +0 -9
  78. package/src/internal/toolbar/theme/toolbar-palette-icon.svg +0 -10
  79. package/src/internal/toolbar/toolbar-cross-icon.svg +0 -10
  80. package/src/internal/toolbar/toolbar-loading-icon.svg +0 -102
  81. package/src/internal/toolbar/toolbar-notif-icon.svg +0 -9
  82. package/src/internal/trackRessources.js +0 -23
@@ -169,29 +169,6 @@
169
169
  return target;
170
170
  });
171
171
 
172
- var createCancellationToken = function createCancellationToken() {
173
- var register = function register(callback) {
174
- if (typeof callback !== "function") {
175
- throw new Error("callback must be a function, got ".concat(callback));
176
- }
177
-
178
- return {
179
- callback: callback,
180
- unregister: function unregister() {}
181
- };
182
- };
183
-
184
- var throwIfRequested = function throwIfRequested() {
185
- return undefined;
186
- };
187
-
188
- return {
189
- register: register,
190
- cancellationRequested: false,
191
- throwIfRequested: throwIfRequested
192
- };
193
- };
194
-
195
172
  var nativeTypeOf = function nativeTypeOf(obj) {
196
173
  return typeof obj;
197
174
  };
@@ -202,10 +179,6 @@
202
179
 
203
180
  var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? nativeTypeOf : customTypeOf;
204
181
 
205
- var isCancelError = function isCancelError(value) {
206
- return value && _typeof(value) === "object" && value.name === "CANCEL_ERROR";
207
- };
208
-
209
182
  var createDetailedMessage = function createDetailedMessage(message) {
210
183
  var details = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
211
184
  var string = "".concat(message);
@@ -216,9 +189,6 @@
216
189
  return string;
217
190
  };
218
191
 
219
- // fallback to this polyfill (or even use an existing polyfill would be better)
220
- // https://github.com/github/fetch/blob/master/fetch.js
221
-
222
192
  function _await$5(value, then, direct) {
223
193
  if (direct) {
224
194
  return then ? then(value) : value;
@@ -260,8 +230,7 @@
260
230
 
261
231
  var fetchUsingXHR = _async$5(function (url) {
262
232
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
263
- _ref$cancellationToke = _ref.cancellationToken,
264
- cancellationToken = _ref$cancellationToke === void 0 ? createCancellationToken() : _ref$cancellationToke,
233
+ signal = _ref.signal,
265
234
  _ref$method = _ref.method,
266
235
  method = _ref$method === void 0 ? "GET" : _ref$method,
267
236
  _ref$credentials = _ref.credentials,
@@ -310,9 +279,11 @@
310
279
  bodyPromise.resolve();
311
280
  };
312
281
 
313
- cancellationToken.register(function (cancelError) {
282
+ signal.addEventListener("abort", function () {
314
283
  xhr.abort();
315
- failure(cancelError);
284
+ var abortError = new Error("aborted");
285
+ abortError.name = "AbortError";
286
+ failure(abortError);
316
287
  });
317
288
 
318
289
  xhr.onreadystatechange = function () {
@@ -652,7 +623,7 @@
652
623
  return view.buffer;
653
624
  };
654
625
 
655
- var _excluded = ["cancellationToken", "mode"];
626
+ var _excluded = ["mode"];
656
627
 
657
628
  function _await$4(value, then, direct) {
658
629
  if (direct) {
@@ -667,36 +638,15 @@
667
638
  }
668
639
 
669
640
  var fetchNative = _async$4(function (url) {
670
-
671
641
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
672
642
 
673
- var _ref$cancellationToke = _ref.cancellationToken,
674
- cancellationToken = _ref$cancellationToke === void 0 ? createCancellationToken() : _ref$cancellationToke,
675
- _ref$mode = _ref.mode,
643
+ var _ref$mode = _ref.mode,
676
644
  mode = _ref$mode === void 0 ? "cors" : _ref$mode,
677
645
  options = _objectWithoutProperties(_ref, _excluded);
678
646
 
679
- var abortController = new AbortController();
680
- var cancelError;
681
- cancellationToken.register(function (reason) {
682
- cancelError = reason;
683
- abortController.abort(reason);
684
- });
685
- var response;
686
- return _continue(_catch$2(function () {
687
- return _await$4(window.fetch(url, _objectSpread2({
688
- signal: abortController.signal,
689
- mode: mode
690
- }, options)), function (_window$fetch) {
691
- response = _window$fetch;
692
- });
693
- }, function (e) {
694
- if (cancelError && e.name === "AbortError") {
695
- throw cancelError;
696
- }
697
-
698
- throw e;
699
- }), function (_result) {
647
+ return _await$4(window.fetch(url, _objectSpread2({
648
+ mode: mode
649
+ }, options)), function (response) {
700
650
  return {
701
651
  url: response.url,
702
652
  status: response.status,
@@ -721,32 +671,6 @@
721
671
  });
722
672
  });
723
673
 
724
- function _catch$2(body, recover) {
725
- try {
726
- var result = body();
727
- } catch (e) {
728
- return recover(e);
729
- }
730
-
731
- if (result && result.then) {
732
- return result.then(void 0, recover);
733
- }
734
-
735
- return result;
736
- }
737
-
738
- var responseToHeaders = function responseToHeaders(response) {
739
- var headers = {};
740
- response.headers.forEach(function (value, name) {
741
- headers[name] = value;
742
- });
743
- return headers;
744
- };
745
-
746
- function _continue(value, then) {
747
- return value && value.then ? value.then(then) : then(value);
748
- }
749
-
750
674
  function _async$4(f) {
751
675
  return function () {
752
676
  for (var args = [], i = 0; i < arguments.length; i++) {
@@ -761,6 +685,14 @@
761
685
  };
762
686
  }
763
687
 
688
+ var responseToHeaders = function responseToHeaders(response) {
689
+ var headers = {};
690
+ response.headers.forEach(function (value, name) {
691
+ headers[name] = value;
692
+ });
693
+ return headers;
694
+ };
695
+
764
696
  var fetchUrl = typeof window.fetch === "function" && typeof window.AbortController === "function" ? fetchNative : fetchUsingXHR;
765
697
 
766
698
  function _await$3(value, then, direct) {
@@ -1522,14 +1454,14 @@
1522
1454
 
1523
1455
  var fetchExploringJson = _async$1(function () {
1524
1456
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1525
- cancellationToken = _ref.cancellationToken;
1457
+ signal = _ref.signal;
1526
1458
 
1527
1459
  return _catch(function () {
1528
1460
  return _await$1(fetchJson("/.jsenv/exploring.json", {
1529
- cancellationToken: cancellationToken
1461
+ signal: signal
1530
1462
  }));
1531
1463
  }, function (e) {
1532
- if (isCancelError(e)) {
1464
+ if (signal && signal.aborted && e.name === "AbortError") {
1533
1465
  throw e;
1534
1466
  }
1535
1467
 
@@ -12,9 +12,7 @@
12
12
  "../helpers/babel/objectSpread2/objectSpread2.js",
13
13
  "../helpers/babel/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js",
14
14
  "../helpers/babel/objectWithoutProperties/objectWithoutProperties.js",
15
- "../node_modules/@jsenv/cancellation/src/createCancellationToken.js",
16
15
  "../helpers/babel/typeof/typeof.js",
17
- "../node_modules/@jsenv/cancellation/src/cancelError.js",
18
16
  "../node_modules/@jsenv/logger/src/createDetailedMessage.js",
19
17
  "../src/internal/browser-utils/fetchUsingXHR.js",
20
18
  "../src/internal/browser-utils/fetch-browser.js",
@@ -52,12 +50,10 @@
52
50
  "import defineProperty from \"../defineProperty/defineProperty.js\"\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object)\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object)\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable\n })\n }\n keys.push.apply(keys, symbols)\n }\n return keys\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {}\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key])\n })\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source))\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key))\n })\n }\n }\n return target\n}\n",
53
51
  "export default (source, excluded) => {\n if (source === null) return {}\n var target = {}\n var sourceKeys = Object.keys(source)\n var key\n var i\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n target[key] = source[key]\n }\n return target\n}\n",
54
52
  "import objectWithoutPropertiesLoose from \"../objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js\"\n\nexport default (source, excluded) => {\n if (source === null) return {}\n\n var target = objectWithoutPropertiesLoose(source, excluded)\n var key\n var i\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source)\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue\n target[key] = source[key]\n }\n }\n return target\n}\n",
55
- "export const createCancellationToken = () => {\n const register = (callback) => {\n if (typeof callback !== \"function\") {\n throw new Error(`callback must be a function, got ${callback}`)\n }\n\n return {\n callback,\n unregister: () => {},\n }\n }\n\n const throwIfRequested = () => undefined\n\n return {\n register,\n cancellationRequested: false,\n throwIfRequested,\n }\n}\n",
56
53
  "const nativeTypeOf = (obj) => typeof obj\n\nconst customTypeOf = (obj) => {\n return obj &&\n typeof Symbol === \"function\" &&\n obj.constructor === Symbol &&\n obj !== Symbol.prototype\n ? \"symbol\"\n : typeof obj\n}\n\nexport default typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\"\n ? nativeTypeOf\n : customTypeOf\n",
57
- "export const createCancelError = (reason) => {\n const cancelError = new Error(`canceled because ${reason}`)\n cancelError.name = \"CANCEL_ERROR\"\n cancelError.reason = reason\n return cancelError\n}\n\nexport const isCancelError = (value) => {\n return value && typeof value === \"object\" && value.name === \"CANCEL_ERROR\"\n}\n\nexport const errorToCancelReason = (error) => {\n if (!isCancelError(error)) return \"\"\n return error.reason\n}\n",
58
54
  "export const createDetailedMessage = (message, details = {}) => {\n let string = `${message}`\n\n Object.keys(details).forEach((key) => {\n const value = details[key]\n string += `\n--- ${key} ---\n${\n Array.isArray(value)\n ? value.join(`\n`)\n : value\n}`\n })\n\n return string\n}\n",
59
- "import { createCancellationToken } from \"@jsenv/cancellation/main.browser.js\"\nimport { createDetailedMessage } from \"@jsenv/logger\"\n// ideally we should do some window.fetch detection (ensuring it has cancellation) and accordingly\n// fallback to this polyfill (or even use an existing polyfill would be better)\n// https://github.com/github/fetch/blob/master/fetch.js\n\nexport const fetchUsingXHR = async (\n url,\n {\n cancellationToken = createCancellationToken(),\n method = \"GET\",\n credentials = \"same-origin\",\n headers = {},\n body = null,\n } = {},\n) => {\n const headersPromise = createPromiseAndHooks()\n const bodyPromise = createPromiseAndHooks()\n\n const xhr = new XMLHttpRequest()\n\n const failure = (error) => {\n // if it was already resolved, we must reject the body promise\n if (headersPromise.settled) {\n bodyPromise.reject(error)\n } else {\n headersPromise.reject(error)\n }\n }\n\n const cleanup = () => {\n xhr.ontimeout = null\n xhr.onerror = null\n xhr.onload = null\n xhr.onreadystatechange = null\n }\n\n xhr.ontimeout = () => {\n cleanup()\n failure(new Error(`xhr request timeout on ${url}.`))\n }\n\n xhr.onerror = (error) => {\n cleanup()\n // unfortunately with have no clue why it fails\n // might be cors for instance\n failure(createRequestError(error, { url }))\n }\n\n xhr.onload = () => {\n cleanup()\n bodyPromise.resolve()\n }\n\n cancellationToken.register((cancelError) => {\n xhr.abort()\n failure(cancelError)\n })\n\n xhr.onreadystatechange = () => {\n // https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest/readyState\n const { readyState } = xhr\n\n if (readyState === 2) {\n headersPromise.resolve()\n } else if (readyState === 4) {\n cleanup()\n bodyPromise.resolve()\n }\n }\n\n xhr.open(method, url, true)\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key])\n })\n xhr.withCredentials = computeWithCredentials({ credentials, url })\n if (\"responseType\" in xhr && hasBlob) {\n xhr.responseType = \"blob\"\n }\n xhr.send(body)\n\n await headersPromise\n\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseURL\n const responseUrl =\n \"responseURL\" in xhr ? xhr.responseURL : headers[\"x-request-url\"]\n let responseStatus = xhr.status\n const responseStatusText = xhr.statusText\n const responseHeaders = getHeadersFromXHR(xhr)\n\n const readBody = async () => {\n await bodyPromise\n\n const { status } = xhr\n // in Chrome on file:/// URLs, status is 0\n if (status === 0) {\n responseStatus = 200\n }\n\n const body = \"response\" in xhr ? xhr.response : xhr.responseText\n\n return {\n responseBody: body,\n responseBodyType: detectBodyType(body),\n }\n }\n\n const text = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return blobToText(responseBody)\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as text\")\n }\n if (responseBodyType === \"dataView\") {\n return arrayBufferToText(responseBody.buffer)\n }\n if (responseBodyType === \"arrayBuffer\") {\n return arrayBufferToText(responseBody)\n }\n // if (responseBodyType === \"text\" || responseBodyType === 'searchParams') {\n // return body\n // }\n return String(responseBody)\n }\n\n const json = async () => {\n const responseText = await text()\n return JSON.parse(responseText)\n }\n\n const blob = async () => {\n if (!hasBlob) {\n throw new Error(`blob not supported`)\n }\n\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return responseBody\n }\n if (responseBodyType === \"dataView\") {\n return new Blob([cloneBuffer(responseBody.buffer)])\n }\n if (responseBodyType === \"arrayBuffer\") {\n return new Blob([cloneBuffer(responseBody)])\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as blob\")\n }\n return new Blob([String(responseBody)])\n }\n\n const arrayBuffer = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"arrayBuffer\") {\n return cloneBuffer(responseBody)\n }\n const responseBlob = await blob()\n return blobToArrayBuffer(responseBlob)\n }\n\n const formData = async () => {\n if (!hasFormData) {\n throw new Error(`formData not supported`)\n }\n const responseText = await text()\n return textToFormData(responseText)\n }\n\n return {\n url: responseUrl,\n status: responseStatus,\n statusText: responseStatusText,\n headers: responseHeaders,\n text,\n json,\n blob,\n arrayBuffer,\n formData,\n }\n}\n\nconst canUseBlob = () => {\n if (typeof window.FileReader !== \"function\") return false\n\n if (typeof window.Blob !== \"function\") return false\n\n try {\n // eslint-disable-next-line no-new\n new Blob()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst hasBlob = canUseBlob()\n\nconst hasFormData = typeof window.FormData === \"function\"\n\nconst hasArrayBuffer = typeof window.ArrayBuffer === \"function\"\n\nconst hasSearchParams = typeof window.URLSearchParams === \"function\"\n\nconst createRequestError = (error, { url }) => {\n return new Error(\n createDetailedMessage(`error during xhr request on ${url}.`, {\n [\"error stack\"]: error.stack,\n }),\n )\n}\n\nconst createPromiseAndHooks = () => {\n let resolve\n let reject\n const promise = new Promise((res, rej) => {\n resolve = (value) => {\n promise.settled = true\n res(value)\n }\n reject = (value) => {\n promise.settled = true\n rej(value)\n }\n })\n promise.resolve = resolve\n promise.reject = reject\n return promise\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\nconst computeWithCredentials = ({ credentials, url }) => {\n if (credentials === \"same-origin\") {\n return originSameAsGlobalOrigin(url)\n }\n return credentials === \"include\"\n}\n\nconst originSameAsGlobalOrigin = (url) => {\n // if we cannot read globalOrigin from window.location.origin, let's consider it's ok\n if (typeof window !== \"object\") return true\n if (typeof window.location !== \"object\") return true\n const globalOrigin = window.location.origin\n if (globalOrigin === \"null\") return true\n return hrefToOrigin(url) === globalOrigin\n}\n\nconst detectBodyType = (body) => {\n if (!body) {\n return \"\"\n }\n if (typeof body === \"string\") {\n return \"text\"\n }\n if (hasBlob && Blob.prototype.isPrototypeOf(body)) {\n return \"blob\"\n }\n if (hasFormData && FormData.prototype.isPrototypeOf(body)) {\n return \"formData\"\n }\n if (hasArrayBuffer) {\n if (hasBlob && isDataView(body)) {\n return `dataView`\n }\n if (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body)) {\n return `arrayBuffer`\n }\n }\n if (hasSearchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n return \"searchParams\"\n }\n return \"\"\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example\nconst getHeadersFromXHR = (xhr) => {\n const headerMap = {}\n\n const headersString = xhr.getAllResponseHeaders()\n if (headersString === \"\") return headerMap\n\n const lines = headersString.trim().split(/[\\r\\n]+/)\n lines.forEach((line) => {\n const parts = line.split(\": \")\n const name = parts.shift()\n const value = parts.join(\": \")\n headerMap[name.toLowerCase()] = value\n })\n\n return headerMap\n}\n\nconst hrefToOrigin = (href) => {\n const scheme = hrefToScheme(href)\n\n if (scheme === \"file\") {\n return \"file://\"\n }\n\n if (scheme === \"http\" || scheme === \"https\") {\n const secondProtocolSlashIndex = scheme.length + \"://\".length\n const pathnameSlashIndex = href.indexOf(\"/\", secondProtocolSlashIndex)\n\n if (pathnameSlashIndex === -1) return href\n return href.slice(0, pathnameSlashIndex)\n }\n\n return href.slice(0, scheme.length + 1)\n}\n\nconst hrefToScheme = (href) => {\n const colonIndex = href.indexOf(\":\")\n if (colonIndex === -1) return \"\"\n return href.slice(0, colonIndex)\n}\n\nconst isDataView = (obj) => {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nconst isArrayBufferView =\n ArrayBuffer.isView ||\n (() => {\n const viewClasses = [\n \"[object Int8Array]\",\n \"[object Uint8Array]\",\n \"[object Uint8ClampedArray]\",\n \"[object Int16Array]\",\n \"[object Uint16Array]\",\n \"[object Int32Array]\",\n \"[object Uint32Array]\",\n \"[object Float32Array]\",\n \"[object Float64Array]\",\n ]\n\n return (value) => {\n return (\n value && viewClasses.includes(Object.prototype.toString.call(value))\n )\n }\n })()\n\nconst textToFormData = (text) => {\n const form = new FormData()\n text\n .trim()\n .split(\"&\")\n .forEach(function (bytes) {\n if (bytes) {\n const split = bytes.split(\"=\")\n const name = split.shift().replace(/\\+/g, \" \")\n const value = split.join(\"=\").replace(/\\+/g, \" \")\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nconst blobToArrayBuffer = async (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nconst blobToText = (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nconst arrayBufferToText = (arrayBuffer) => {\n const view = new Uint8Array(arrayBuffer)\n const chars = new Array(view.length)\n let i = 0\n while (i < view.length) {\n chars[i] = String.fromCharCode(view[i])\n\n i++\n }\n return chars.join(\"\")\n}\n\nconst fileReaderReady = (reader) => {\n return new Promise(function (resolve, reject) {\n reader.onload = function () {\n resolve(reader.result)\n }\n reader.onerror = function () {\n reject(reader.error)\n }\n })\n}\n\nconst cloneBuffer = (buffer) => {\n if (buffer.slice) {\n return buffer.slice(0)\n }\n const view = new Uint8Array(buffer.byteLength)\n view.set(new Uint8Array(buffer))\n return view.buffer\n}\n",
60
- "import { createCancellationToken } from \"@jsenv/cancellation/main.browser.js\"\nimport { fetchUsingXHR } from \"./fetchUsingXHR.js\"\n\nconst fetchNative = async (\n url,\n {\n cancellationToken = createCancellationToken(),\n mode = \"cors\",\n ...options\n } = {},\n) => {\n const abortController = new AbortController()\n\n let cancelError\n cancellationToken.register((reason) => {\n cancelError = reason\n abortController.abort(reason)\n })\n\n let response\n try {\n response = await window.fetch(url, {\n signal: abortController.signal,\n mode,\n ...options,\n })\n } catch (e) {\n if (cancelError && e.name === \"AbortError\") {\n throw cancelError\n }\n throw e\n }\n\n return {\n url: response.url,\n status: response.status,\n statusText: \"\",\n headers: responseToHeaders(response),\n text: () => response.text(),\n json: () => response.json(),\n blob: () => response.blob(),\n arrayBuffer: () => response.arrayBuffer(),\n formData: () => response.formData(),\n }\n}\n\nconst responseToHeaders = (response) => {\n const headers = {}\n response.headers.forEach((value, name) => {\n headers[name] = value\n })\n return headers\n}\n\nexport const fetchUrl =\n typeof window.fetch === \"function\" &&\n typeof window.AbortController === \"function\"\n ? fetchNative\n : fetchUsingXHR\n",
55
+ "import { createDetailedMessage } from \"@jsenv/logger\"\n\nexport const fetchUsingXHR = async (\n url,\n {\n signal,\n method = \"GET\",\n credentials = \"same-origin\",\n headers = {},\n body = null,\n } = {},\n) => {\n const headersPromise = createPromiseAndHooks()\n const bodyPromise = createPromiseAndHooks()\n\n const xhr = new XMLHttpRequest()\n\n const failure = (error) => {\n // if it was already resolved, we must reject the body promise\n if (headersPromise.settled) {\n bodyPromise.reject(error)\n } else {\n headersPromise.reject(error)\n }\n }\n\n const cleanup = () => {\n xhr.ontimeout = null\n xhr.onerror = null\n xhr.onload = null\n xhr.onreadystatechange = null\n }\n\n xhr.ontimeout = () => {\n cleanup()\n failure(new Error(`xhr request timeout on ${url}.`))\n }\n\n xhr.onerror = (error) => {\n cleanup()\n // unfortunately with have no clue why it fails\n // might be cors for instance\n failure(createRequestError(error, { url }))\n }\n\n xhr.onload = () => {\n cleanup()\n bodyPromise.resolve()\n }\n\n signal.addEventListener(\"abort\", () => {\n xhr.abort()\n const abortError = new Error(\"aborted\")\n abortError.name = \"AbortError\"\n failure(abortError)\n })\n\n xhr.onreadystatechange = () => {\n // https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest/readyState\n const { readyState } = xhr\n\n if (readyState === 2) {\n headersPromise.resolve()\n } else if (readyState === 4) {\n cleanup()\n bodyPromise.resolve()\n }\n }\n\n xhr.open(method, url, true)\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key])\n })\n xhr.withCredentials = computeWithCredentials({ credentials, url })\n if (\"responseType\" in xhr && hasBlob) {\n xhr.responseType = \"blob\"\n }\n xhr.send(body)\n\n await headersPromise\n\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseURL\n const responseUrl =\n \"responseURL\" in xhr ? xhr.responseURL : headers[\"x-request-url\"]\n let responseStatus = xhr.status\n const responseStatusText = xhr.statusText\n const responseHeaders = getHeadersFromXHR(xhr)\n\n const readBody = async () => {\n await bodyPromise\n\n const { status } = xhr\n // in Chrome on file:/// URLs, status is 0\n if (status === 0) {\n responseStatus = 200\n }\n\n const body = \"response\" in xhr ? xhr.response : xhr.responseText\n\n return {\n responseBody: body,\n responseBodyType: detectBodyType(body),\n }\n }\n\n const text = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return blobToText(responseBody)\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as text\")\n }\n if (responseBodyType === \"dataView\") {\n return arrayBufferToText(responseBody.buffer)\n }\n if (responseBodyType === \"arrayBuffer\") {\n return arrayBufferToText(responseBody)\n }\n // if (responseBodyType === \"text\" || responseBodyType === 'searchParams') {\n // return body\n // }\n return String(responseBody)\n }\n\n const json = async () => {\n const responseText = await text()\n return JSON.parse(responseText)\n }\n\n const blob = async () => {\n if (!hasBlob) {\n throw new Error(`blob not supported`)\n }\n\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return responseBody\n }\n if (responseBodyType === \"dataView\") {\n return new Blob([cloneBuffer(responseBody.buffer)])\n }\n if (responseBodyType === \"arrayBuffer\") {\n return new Blob([cloneBuffer(responseBody)])\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as blob\")\n }\n return new Blob([String(responseBody)])\n }\n\n const arrayBuffer = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"arrayBuffer\") {\n return cloneBuffer(responseBody)\n }\n const responseBlob = await blob()\n return blobToArrayBuffer(responseBlob)\n }\n\n const formData = async () => {\n if (!hasFormData) {\n throw new Error(`formData not supported`)\n }\n const responseText = await text()\n return textToFormData(responseText)\n }\n\n return {\n url: responseUrl,\n status: responseStatus,\n statusText: responseStatusText,\n headers: responseHeaders,\n text,\n json,\n blob,\n arrayBuffer,\n formData,\n }\n}\n\nconst canUseBlob = () => {\n if (typeof window.FileReader !== \"function\") return false\n\n if (typeof window.Blob !== \"function\") return false\n\n try {\n // eslint-disable-next-line no-new\n new Blob()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst hasBlob = canUseBlob()\n\nconst hasFormData = typeof window.FormData === \"function\"\n\nconst hasArrayBuffer = typeof window.ArrayBuffer === \"function\"\n\nconst hasSearchParams = typeof window.URLSearchParams === \"function\"\n\nconst createRequestError = (error, { url }) => {\n return new Error(\n createDetailedMessage(`error during xhr request on ${url}.`, {\n [\"error stack\"]: error.stack,\n }),\n )\n}\n\nconst createPromiseAndHooks = () => {\n let resolve\n let reject\n const promise = new Promise((res, rej) => {\n resolve = (value) => {\n promise.settled = true\n res(value)\n }\n reject = (value) => {\n promise.settled = true\n rej(value)\n }\n })\n promise.resolve = resolve\n promise.reject = reject\n return promise\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\nconst computeWithCredentials = ({ credentials, url }) => {\n if (credentials === \"same-origin\") {\n return originSameAsGlobalOrigin(url)\n }\n return credentials === \"include\"\n}\n\nconst originSameAsGlobalOrigin = (url) => {\n // if we cannot read globalOrigin from window.location.origin, let's consider it's ok\n if (typeof window !== \"object\") return true\n if (typeof window.location !== \"object\") return true\n const globalOrigin = window.location.origin\n if (globalOrigin === \"null\") return true\n return hrefToOrigin(url) === globalOrigin\n}\n\nconst detectBodyType = (body) => {\n if (!body) {\n return \"\"\n }\n if (typeof body === \"string\") {\n return \"text\"\n }\n if (hasBlob && Blob.prototype.isPrototypeOf(body)) {\n return \"blob\"\n }\n if (hasFormData && FormData.prototype.isPrototypeOf(body)) {\n return \"formData\"\n }\n if (hasArrayBuffer) {\n if (hasBlob && isDataView(body)) {\n return `dataView`\n }\n if (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body)) {\n return `arrayBuffer`\n }\n }\n if (hasSearchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n return \"searchParams\"\n }\n return \"\"\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example\nconst getHeadersFromXHR = (xhr) => {\n const headerMap = {}\n\n const headersString = xhr.getAllResponseHeaders()\n if (headersString === \"\") return headerMap\n\n const lines = headersString.trim().split(/[\\r\\n]+/)\n lines.forEach((line) => {\n const parts = line.split(\": \")\n const name = parts.shift()\n const value = parts.join(\": \")\n headerMap[name.toLowerCase()] = value\n })\n\n return headerMap\n}\n\nconst hrefToOrigin = (href) => {\n const scheme = hrefToScheme(href)\n\n if (scheme === \"file\") {\n return \"file://\"\n }\n\n if (scheme === \"http\" || scheme === \"https\") {\n const secondProtocolSlashIndex = scheme.length + \"://\".length\n const pathnameSlashIndex = href.indexOf(\"/\", secondProtocolSlashIndex)\n\n if (pathnameSlashIndex === -1) return href\n return href.slice(0, pathnameSlashIndex)\n }\n\n return href.slice(0, scheme.length + 1)\n}\n\nconst hrefToScheme = (href) => {\n const colonIndex = href.indexOf(\":\")\n if (colonIndex === -1) return \"\"\n return href.slice(0, colonIndex)\n}\n\nconst isDataView = (obj) => {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nconst isArrayBufferView =\n ArrayBuffer.isView ||\n (() => {\n const viewClasses = [\n \"[object Int8Array]\",\n \"[object Uint8Array]\",\n \"[object Uint8ClampedArray]\",\n \"[object Int16Array]\",\n \"[object Uint16Array]\",\n \"[object Int32Array]\",\n \"[object Uint32Array]\",\n \"[object Float32Array]\",\n \"[object Float64Array]\",\n ]\n\n return (value) => {\n return (\n value && viewClasses.includes(Object.prototype.toString.call(value))\n )\n }\n })()\n\nconst textToFormData = (text) => {\n const form = new FormData()\n text\n .trim()\n .split(\"&\")\n .forEach(function (bytes) {\n if (bytes) {\n const split = bytes.split(\"=\")\n const name = split.shift().replace(/\\+/g, \" \")\n const value = split.join(\"=\").replace(/\\+/g, \" \")\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nconst blobToArrayBuffer = async (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nconst blobToText = (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nconst arrayBufferToText = (arrayBuffer) => {\n const view = new Uint8Array(arrayBuffer)\n const chars = new Array(view.length)\n let i = 0\n while (i < view.length) {\n chars[i] = String.fromCharCode(view[i])\n\n i++\n }\n return chars.join(\"\")\n}\n\nconst fileReaderReady = (reader) => {\n return new Promise(function (resolve, reject) {\n reader.onload = function () {\n resolve(reader.result)\n }\n reader.onerror = function () {\n reject(reader.error)\n }\n })\n}\n\nconst cloneBuffer = (buffer) => {\n if (buffer.slice) {\n return buffer.slice(0)\n }\n const view = new Uint8Array(buffer.byteLength)\n view.set(new Uint8Array(buffer))\n return view.buffer\n}\n",
56
+ "import { fetchUsingXHR } from \"./fetchUsingXHR.js\"\n\nconst fetchNative = async (url, { mode = \"cors\", ...options } = {}) => {\n const response = await window.fetch(url, {\n mode,\n ...options,\n })\n\n return {\n url: response.url,\n status: response.status,\n statusText: \"\",\n headers: responseToHeaders(response),\n text: () => response.text(),\n json: () => response.json(),\n blob: () => response.blob(),\n arrayBuffer: () => response.arrayBuffer(),\n formData: () => response.formData(),\n }\n}\n\nconst responseToHeaders = (response) => {\n const headers = {}\n response.headers.forEach((value, name) => {\n headers[name] = value\n })\n return headers\n}\n\nexport const fetchUrl =\n typeof window.fetch === \"function\" &&\n typeof window.AbortController === \"function\"\n ? fetchNative\n : fetchUsingXHR\n",
61
57
  "import { fetchUrl } from \"./fetch-browser.js\"\n\nexport const fetchJson = async (url, options = {}) => {\n const response = await fetchUrl(url, options)\n const object = await response.json()\n return object\n}\n",
62
58
  "export const COMPILE_ID_BEST = \"best\"\n\nexport const COMPILE_ID_OTHERWISE = \"otherwise\"\n\nexport const COMPILE_ID_BUILD_GLOBAL = \"build-global\"\n\nexport const COMPILE_ID_BUILD_GLOBAL_FILES = \"build-global-files\"\n\nexport const COMPILE_ID_BUILD_COMMONJS = \"build-commonjs\"\n\nexport const COMPILE_ID_BUILD_COMMONJS_FILES = \"build-commonjs-files\"\n",
63
59
  "import { createDetailedMessage } from \"@jsenv/logger\"\nimport { COMPILE_ID_OTHERWISE } from \"../CONSTANTS.js\"\n\nexport const computeCompileIdFromGroupId = ({ groupId, groupMap }) => {\n if (typeof groupId === \"undefined\") {\n if (COMPILE_ID_OTHERWISE in groupMap) {\n return COMPILE_ID_OTHERWISE\n }\n\n const keys = Object.keys(groupMap)\n if (keys.length === 1) {\n return keys[0]\n }\n\n throw new Error(createUnexpectedGroupIdMessage({ groupMap }))\n }\n\n if (groupId in groupMap === false) {\n throw new Error(createUnexpectedGroupIdMessage({ groupId, groupMap }))\n }\n\n return groupId\n}\n\nconst createUnexpectedGroupIdMessage = ({ compileId, groupMap }) =>\n createDetailedMessage(`unexpected groupId.`, {\n [\"expected compiled id\"]: Object.keys(groupMap),\n [\"received compile id\"]: compileId,\n })\n",
@@ -78,7 +74,7 @@
78
74
  "import { versionIsBelow } from \"./versionIsBelow.js\"\n\nexport const findHighestVersion = (...values) => {\n if (values.length === 0) throw new Error(`missing argument`)\n\n return values.reduce((highestVersion, value) => {\n if (versionIsBelow(highestVersion, value)) {\n return value\n }\n return highestVersion\n })\n}\n",
79
75
  "import { findHighestVersion } from \"../semantic-versioning/index.js\"\n\nexport const resolveGroup = ({ name, version }, groupMap) => {\n return Object.keys(groupMap).find((compileIdCandidate) => {\n const { minRuntimeVersions } = groupMap[compileIdCandidate]\n const versionForGroup = minRuntimeVersions[name]\n if (!versionForGroup) {\n return false\n }\n const highestVersion = findHighestVersion(version, versionForGroup)\n return highestVersion === version\n })\n}\n",
80
76
  "import { fetchJson } from \"../../browser-utils/fetchJson.js\"\nimport { computeCompileIdFromGroupId } from \"../computeCompileIdFromGroupId.js\"\nimport { detectBrowser } from \"../detectBrowser/detectBrowser.js\"\nimport { resolveGroup } from \"../resolveGroup.js\"\n\nexport const scanBrowserRuntimeFeatures = async ({\n coverageHandledFromOutside = false,\n failFastOnFeatureDetection = false,\n} = {}) => {\n const { outDirectoryRelativeUrl } = await fetchJson(\n \"/.jsenv/compile-meta.json\",\n )\n const groupMapUrl = `/${outDirectoryRelativeUrl}groupMap.json`\n const envFileUrl = `/${outDirectoryRelativeUrl}env.json`\n const [groupMap, envJson] = await Promise.all([\n fetchJson(groupMapUrl),\n fetchJson(envFileUrl),\n ])\n\n const browser = detectBrowser()\n const compileId = computeCompileIdFromGroupId({\n groupId: resolveGroup(browser, groupMap),\n groupMap,\n })\n const groupInfo = groupMap[compileId]\n const { inlineImportMapIntoHTML, customCompilerPatterns } = envJson\n\n const featuresReport = {\n importmap: undefined,\n dynamicImport: undefined,\n topLevelAwait: undefined,\n jsonImportAssertions: undefined,\n cssImportAssertions: undefined,\n newStylesheet: undefined,\n }\n await detectSupportedFeatures({\n featuresReport,\n failFastOnFeatureDetection,\n inlineImportMapIntoHTML,\n })\n const pluginRequiredNameArray = await pluginRequiredNamesFromGroupInfo(\n groupInfo,\n {\n featuresReport,\n coverageHandledFromOutside,\n },\n )\n\n const canAvoidCompilation =\n customCompilerPatterns.length === 0 &&\n pluginRequiredNameArray.length === 0 &&\n featuresReport.importmap &&\n featuresReport.dynamicImport &&\n featuresReport.topLevelAwait\n\n return {\n canAvoidCompilation,\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n outDirectoryRelativeUrl,\n compileId,\n browser,\n }\n}\n\nconst detectSupportedFeatures = async ({\n featuresReport,\n failFastOnFeatureDetection,\n inlineImportMapIntoHTML,\n}) => {\n // start testing importmap support first and not in paralell\n // so that there is not module script loaded beore importmap is injected\n // it would log an error in chrome console and return undefined\n const importmap = await supportsImportmap({\n // chrome supports inline but not remote importmap\n // https://github.com/WICG/import-maps/issues/235\n\n // at this stage we won't know if the html file will use\n // an importmap or not and if that importmap is inline or specified with an src\n // so we should test if browser support local and remote importmap.\n // But there exploring server can inline importmap by transforming html\n // and in that case we can test only the local importmap support\n // so we test importmap support and the remote one\n remote: !inlineImportMapIntoHTML,\n })\n featuresReport.importmap = importmap\n if (!importmap && failFastOnFeatureDetection) {\n return\n }\n\n const dynamicImport = await supportsDynamicImport()\n featuresReport.dynamicImport = dynamicImport\n if (!dynamicImport && failFastOnFeatureDetection) {\n return\n }\n\n const topLevelAwait = await supportsTopLevelAwait()\n featuresReport.topLevelAwait = topLevelAwait\n if (!topLevelAwait && failFastOnFeatureDetection) {\n return\n }\n}\n\nconst pluginRequiredNamesFromGroupInfo = async (\n groupInfo,\n { featuresReport, coverageHandledFromOutside },\n) => {\n const { pluginRequiredNameArray } = groupInfo\n const requiredPluginNames = pluginRequiredNameArray.slice()\n const markPluginAsSupported = (name) => {\n const index = requiredPluginNames.indexOf(name)\n if (index > -1) {\n requiredPluginNames.splice(index, 1)\n }\n }\n\n // When instrumentation CAN be handed by playwright\n // https://playwright.dev/docs/api/class-chromiumcoverage#chromiumcoveragestartjscoverageoptions\n // coverageHandledFromOutside is true and \"transform-instrument\" becomes non mandatory\n if (coverageHandledFromOutside) {\n markPluginAsSupported(\"transform-instrument\")\n }\n\n if (pluginRequiredNameArray.includes(\"transform-import-assertions\")) {\n const jsonImportAssertions = await supportsJsonImportAssertions()\n featuresReport.jsonImportAssertions = jsonImportAssertions\n\n const cssImportAssertions = await supportsCssImportAssertions()\n featuresReport.cssImportAssertions = cssImportAssertions\n\n if (jsonImportAssertions && cssImportAssertions) {\n markPluginAsSupported(\"transform-import-assertions\")\n }\n }\n\n if (pluginRequiredNameArray.includes(\"new-stylesheet-as-jsenv-import\")) {\n const newStylesheet = supportsNewStylesheet()\n featuresReport.newStylesheet = newStylesheet\n markPluginAsSupported(\"new-stylesheet-as-jsenv-import\")\n }\n\n return requiredPluginNames\n}\n\nconst supportsNewStylesheet = () => {\n try {\n // eslint-disable-next-line no-new\n new CSSStyleSheet()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst supportsImportmap = async ({ remote = true } = {}) => {\n const specifier = asBase64Url(`export default false`)\n\n const importMap = {\n imports: {\n [specifier]: asBase64Url(`export default true`),\n },\n }\n\n const importmapScript = document.createElement(\"script\")\n const importmapString = JSON.stringify(importMap, null, \" \")\n importmapScript.type = \"importmap\"\n if (remote) {\n importmapScript.src = `data:application/json;base64,${window.btoa(\n importmapString,\n )}`\n } else {\n importmapScript.textContent = importmapString\n }\n\n document.body.appendChild(importmapScript)\n\n const scriptModule = document.createElement(\"script\")\n scriptModule.type = \"module\"\n scriptModule.src = asBase64Url(\n `import supported from \"${specifier}\"; window.__importmap_supported = supported`,\n )\n\n return new Promise((resolve, reject) => {\n scriptModule.onload = () => {\n const supported = window.__importmap_supported\n delete window.__importmap_supported\n document.body.removeChild(scriptModule)\n document.body.removeChild(importmapScript)\n resolve(supported)\n }\n scriptModule.onerror = () => {\n document.body.removeChild(scriptModule)\n document.body.removeChild(importmapScript)\n reject()\n }\n document.body.appendChild(scriptModule)\n })\n}\n\nconst supportsDynamicImport = async () => {\n const moduleSource = asBase64Url(`export default 42`)\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsTopLevelAwait = async () => {\n const moduleSource = asBase64Url(`export default await Promise.resolve(42)`)\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsJsonImportAssertions = async () => {\n const jsonBase64Url = asBase64Url(\"42\", \"application/json\")\n const moduleSource = asBase64Url(\n `export { default } from \"${jsonBase64Url}\" assert { type: \"json\" }`,\n )\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsCssImportAssertions = async () => {\n const cssBase64Url = asBase64Url(\"p { color: red; }\", \"text/css\")\n const moduleSource = asBase64Url(\n `export { default } from \"${cssBase64Url}\" assert { type: \"css\" }`,\n )\n try {\n const namespace = await import(moduleSource)\n return namespace.default instanceof CSSStyleSheet\n } catch (e) {\n return false\n }\n}\n\nconst asBase64Url = (text, mimeType = \"application/javascript\") => {\n return `data:${mimeType};base64,${window.btoa(text)}`\n}\n",
81
- "import { createDetailedMessage } from \"@jsenv/logger\"\nimport { isCancelError } from \"@jsenv/cancellation/main.browser.js\"\n\nimport { fetchJson } from \"../browser-utils/fetchJson.js\"\n\nexport const fetchExploringJson = async ({ cancellationToken } = {}) => {\n try {\n const exploringInfo = await fetchJson(\"/.jsenv/exploring.json\", {\n cancellationToken,\n })\n return exploringInfo\n } catch (e) {\n if (isCancelError(e)) {\n throw e\n }\n throw new Error(\n createDetailedMessage(\n `Cannot communicate with exploring server due to a network error`,\n {\n [\"error stack\"]: e.stack,\n },\n ),\n )\n }\n}\n",
77
+ "import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { fetchJson } from \"../browser-utils/fetchJson.js\"\n\nexport const fetchExploringJson = async ({ signal } = {}) => {\n try {\n const exploringInfo = await fetchJson(\"/.jsenv/exploring.json\", {\n signal,\n })\n return exploringInfo\n } catch (e) {\n if (signal && signal.aborted && e.name === \"AbortError\") {\n throw e\n }\n throw new Error(\n createDetailedMessage(\n `Cannot communicate with exploring server due to a network error`,\n {\n [\"error stack\"]: e.stack,\n },\n ),\n )\n }\n}\n",
82
78
  "import { scanBrowserRuntimeFeatures } from \"../runtime/createBrowserRuntime/scanBrowserRuntimeFeatures.js\"\nimport { fetchExploringJson } from \"./fetchExploringJson.js\"\n\nconst redirect = async () => {\n const [browserRuntimeFeaturesReport, { exploringHtmlFileRelativeUrl }] =\n await Promise.all([\n scanBrowserRuntimeFeatures({\n failFastOnFeatureDetection: true,\n }),\n fetchExploringJson(),\n ])\n\n if (browserRuntimeFeaturesReport.canAvoidCompilation) {\n window.location.href = `/${exploringHtmlFileRelativeUrl}`\n return\n }\n\n const { outDirectoryRelativeUrl, compileId } = browserRuntimeFeaturesReport\n window.location.href = `/${outDirectoryRelativeUrl}${compileId}/${exploringHtmlFileRelativeUrl}`\n}\n\nredirect()\n"
83
79
  ],
84
80
  "names": [
@@ -150,17 +146,8 @@
150
146
  "objectWithoutPropertiesLoose",
151
147
  "sourceSymbolKeys",
152
148
  "propertyIsEnumerable",
153
- "createCancellationToken",
154
- "register",
155
- "callback",
156
- "Error",
157
- "unregister",
158
- "throwIfRequested",
159
- "undefined",
160
- "cancellationRequested",
161
149
  "nativeTypeOf",
162
150
  "customTypeOf",
163
- "isCancelError",
164
151
  "createDetailedMessage",
165
152
  "message",
166
153
  "details",
@@ -178,7 +165,7 @@
178
165
  "result",
179
166
  "fetchUsingXHR",
180
167
  "url",
181
- "cancellationToken",
168
+ "signal",
182
169
  "method",
183
170
  "credentials",
184
171
  "headers",
@@ -195,9 +182,11 @@
195
182
  "onerror",
196
183
  "onload",
197
184
  "onreadystatechange",
185
+ "Error",
198
186
  "createRequestError",
199
- "cancelError",
187
+ "addEventListener",
200
188
  "abort",
189
+ "abortError",
201
190
  "readyState",
202
191
  "open",
203
192
  "setRequestHeader",
@@ -295,15 +284,11 @@
295
284
  "fetchNative",
296
285
  "mode",
297
286
  "options",
298
- "abortController",
299
- "AbortController",
300
- "reason",
301
287
  "fetch",
302
- "signal",
303
288
  "responseToHeaders",
304
- "_catch",
305
- "recover",
289
+ "_async",
306
290
  "fetchUrl",
291
+ "AbortController",
307
292
  "fetchJson",
308
293
  "COMPILE_ID_OTHERWISE",
309
294
  "computeCompileIdFromGroupId",
@@ -314,6 +299,7 @@
314
299
  "firstMatch",
315
300
  "regexp",
316
301
  "match",
302
+ "undefined",
317
303
  "secondMatch",
318
304
  "userAgentToVersion",
319
305
  "userAgent",
@@ -366,6 +352,7 @@
366
352
  "compileIdCandidate",
367
353
  "minRuntimeVersions",
368
354
  "versionForGroup",
355
+ "recover",
369
356
  "scanBrowserRuntimeFeatures",
370
357
  "coverageHandledFromOutside",
371
358
  "failFastOnFeatureDetection",
@@ -426,9 +413,10 @@
426
413
  "cssBase64Url",
427
414
  "mimeType",
428
415
  "fetchExploringJson",
416
+ "aborted",
429
417
  "redirect",
430
418
  "browserRuntimeFeaturesReport",
431
419
  "exploringHtmlFileRelativeUrl"
432
420
  ],
433
- "mappings": "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"
421
+ "mappings": "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"
434
422
  }