@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
  };
@@ -212,9 +189,6 @@
212
189
  return string;
213
190
  };
214
191
 
215
- // fallback to this polyfill (or even use an existing polyfill would be better)
216
- // https://github.com/github/fetch/blob/master/fetch.js
217
-
218
192
  function _await$3(value, then, direct) {
219
193
  if (direct) {
220
194
  return then ? then(value) : value;
@@ -256,8 +230,7 @@
256
230
 
257
231
  var fetchUsingXHR = _async$3(function (url) {
258
232
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
259
- _ref$cancellationToke = _ref.cancellationToken,
260
- cancellationToken = _ref$cancellationToke === void 0 ? createCancellationToken() : _ref$cancellationToke,
233
+ signal = _ref.signal,
261
234
  _ref$method = _ref.method,
262
235
  method = _ref$method === void 0 ? "GET" : _ref$method,
263
236
  _ref$credentials = _ref.credentials,
@@ -306,9 +279,11 @@
306
279
  bodyPromise.resolve();
307
280
  };
308
281
 
309
- cancellationToken.register(function (cancelError) {
282
+ signal.addEventListener("abort", function () {
310
283
  xhr.abort();
311
- failure(cancelError);
284
+ var abortError = new Error("aborted");
285
+ abortError.name = "AbortError";
286
+ failure(abortError);
312
287
  });
313
288
 
314
289
  xhr.onreadystatechange = function () {
@@ -648,7 +623,7 @@
648
623
  return view.buffer;
649
624
  };
650
625
 
651
- var _excluded = ["cancellationToken", "mode"];
626
+ var _excluded = ["mode"];
652
627
 
653
628
  function _await$2(value, then, direct) {
654
629
  if (direct) {
@@ -663,36 +638,15 @@
663
638
  }
664
639
 
665
640
  var fetchNative = _async$2(function (url) {
666
-
667
641
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
668
642
 
669
- var _ref$cancellationToke = _ref.cancellationToken,
670
- cancellationToken = _ref$cancellationToke === void 0 ? createCancellationToken() : _ref$cancellationToke,
671
- _ref$mode = _ref.mode,
643
+ var _ref$mode = _ref.mode,
672
644
  mode = _ref$mode === void 0 ? "cors" : _ref$mode,
673
645
  options = _objectWithoutProperties(_ref, _excluded);
674
646
 
675
- var abortController = new AbortController();
676
- var cancelError;
677
- cancellationToken.register(function (reason) {
678
- cancelError = reason;
679
- abortController.abort(reason);
680
- });
681
- var response;
682
- return _continue(_catch$1(function () {
683
- return _await$2(window.fetch(url, _objectSpread2({
684
- signal: abortController.signal,
685
- mode: mode
686
- }, options)), function (_window$fetch) {
687
- response = _window$fetch;
688
- });
689
- }, function (e) {
690
- if (cancelError && e.name === "AbortError") {
691
- throw cancelError;
692
- }
693
-
694
- throw e;
695
- }), function (_result) {
647
+ return _await$2(window.fetch(url, _objectSpread2({
648
+ mode: mode
649
+ }, options)), function (response) {
696
650
  return {
697
651
  url: response.url,
698
652
  status: response.status,
@@ -717,32 +671,6 @@
717
671
  });
718
672
  });
719
673
 
720
- function _catch$1(body, recover) {
721
- try {
722
- var result = body();
723
- } catch (e) {
724
- return recover(e);
725
- }
726
-
727
- if (result && result.then) {
728
- return result.then(void 0, recover);
729
- }
730
-
731
- return result;
732
- }
733
-
734
- var responseToHeaders = function responseToHeaders(response) {
735
- var headers = {};
736
- response.headers.forEach(function (value, name) {
737
- headers[name] = value;
738
- });
739
- return headers;
740
- };
741
-
742
- function _continue(value, then) {
743
- return value && value.then ? value.then(then) : then(value);
744
- }
745
-
746
674
  function _async$2(f) {
747
675
  return function () {
748
676
  for (var args = [], i = 0; i < arguments.length; i++) {
@@ -757,6 +685,14 @@
757
685
  };
758
686
  }
759
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
+
760
696
  var fetchUrl = typeof window.fetch === "function" && typeof window.AbortController === "function" ? fetchNative : fetchUsingXHR;
761
697
 
762
698
  function _await$1(value, then, direct) {
@@ -12,7 +12,6 @@
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
16
  "../node_modules/@jsenv/logger/src/createDetailedMessage.js",
18
17
  "../src/internal/browser-utils/fetchUsingXHR.js",
@@ -50,11 +49,10 @@
50
49
  "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",
51
50
  "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",
52
51
  "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",
53
- "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",
54
52
  "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",
55
53
  "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",
56
- "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",
57
- "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",
54
+ "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",
55
+ "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",
58
56
  "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",
59
57
  "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",
60
58
  "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",
@@ -146,14 +144,6 @@
146
144
  "objectWithoutPropertiesLoose",
147
145
  "sourceSymbolKeys",
148
146
  "propertyIsEnumerable",
149
- "createCancellationToken",
150
- "register",
151
- "callback",
152
- "Error",
153
- "unregister",
154
- "throwIfRequested",
155
- "undefined",
156
- "cancellationRequested",
157
147
  "nativeTypeOf",
158
148
  "customTypeOf",
159
149
  "createDetailedMessage",
@@ -173,7 +163,7 @@
173
163
  "result",
174
164
  "fetchUsingXHR",
175
165
  "url",
176
- "cancellationToken",
166
+ "signal",
177
167
  "method",
178
168
  "credentials",
179
169
  "headers",
@@ -190,9 +180,11 @@
190
180
  "onerror",
191
181
  "onload",
192
182
  "onreadystatechange",
183
+ "Error",
193
184
  "createRequestError",
194
- "cancelError",
185
+ "addEventListener",
195
186
  "abort",
187
+ "abortError",
196
188
  "readyState",
197
189
  "open",
198
190
  "setRequestHeader",
@@ -290,15 +282,11 @@
290
282
  "fetchNative",
291
283
  "mode",
292
284
  "options",
293
- "abortController",
294
- "AbortController",
295
- "reason",
296
285
  "fetch",
297
- "signal",
298
286
  "responseToHeaders",
299
- "_catch",
300
- "recover",
287
+ "_async",
301
288
  "fetchUrl",
289
+ "AbortController",
302
290
  "fetchJson",
303
291
  "COMPILE_ID_OTHERWISE",
304
292
  "computeCompileIdFromGroupId",
@@ -309,6 +297,7 @@
309
297
  "firstMatch",
310
298
  "regexp",
311
299
  "match",
300
+ "undefined",
312
301
  "secondMatch",
313
302
  "userAgentToVersion",
314
303
  "userAgent",
@@ -361,6 +350,7 @@
361
350
  "compileIdCandidate",
362
351
  "minRuntimeVersions",
363
352
  "versionForGroup",
353
+ "recover",
364
354
  "scanBrowserRuntimeFeatures",
365
355
  "coverageHandledFromOutside",
366
356
  "failFastOnFeatureDetection",
@@ -421,5 +411,5 @@
421
411
  "cssBase64Url",
422
412
  "mimeType"
423
413
  ],
424
- "mappings": "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"
414
+ "mappings": "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"
425
415
  }