@jsenv/core 27.0.0-alpha.64 → 27.0.0-alpha.65

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 (146) hide show
  1. package/dist/html/explorer.html +557 -0
  2. package/dist/js/controllable_file.mjs +227 -0
  3. package/dist/{event_source_client.js → js/event_source_client.js} +19 -244
  4. package/dist/js/global_this.js +32 -0
  5. package/dist/js/html_supervisor_installer.js +522 -0
  6. package/dist/js/html_supervisor_setup.js +79 -0
  7. package/dist/{import_meta_hot.js → js/import_meta_hot.js} +1 -3
  8. package/dist/js/inline_content.js +8 -0
  9. package/dist/js/new_stylesheet.js +409 -0
  10. package/dist/js/regenerator_runtime.js +721 -0
  11. package/dist/js/s.js +429 -0
  12. package/dist/main.js +13362 -0
  13. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/AsyncGenerator/AsyncGenerator.js +95 -0
  14. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/AwaitValue/AwaitValue.js +3 -0
  15. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/applyDecoratorDescriptor/applyDecoratorDescriptor.js +29 -0
  16. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayLikeToArray/arrayLikeToArray.js +9 -0
  17. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayWithHoles/arrayWithHoles.js +4 -0
  18. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayWithoutHoles/arrayWithoutHoles.js +5 -0
  19. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/assertThisInitialized/assertThisInitialized.js +8 -0
  20. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncGeneratorDelegate/asyncGeneratorDelegate.js +52 -0
  21. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncIterator/asyncIterator.js +78 -0
  22. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncToGenerator/asyncToGenerator.js +39 -0
  23. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/awaitAsyncGenerator/awaitAsyncGenerator.js +4 -0
  24. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorDestructureSet/classApplyDescriptorDestructureSet.js +24 -0
  25. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorGet/classApplyDescriptorGet.js +7 -0
  26. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorSet/classApplyDescriptorSet.js +14 -0
  27. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCallCheck/classCallCheck.js +5 -0
  28. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCheckPrivateStaticAccess/classCheckPrivateStaticAccess.js +5 -0
  29. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCheckPrivateStaticFieldDescriptor/classCheckPrivateStaticFieldDescriptor.js +6 -0
  30. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classExtractFieldDescriptor/classExtractFieldDescriptor.js +8 -0
  31. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classNameTDZError/classNameTDZError.js +4 -0
  32. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldDestructureSet/classPrivateFieldDestructureSet.js +6 -0
  33. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldGet/classPrivateFieldGet.js +6 -0
  34. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldLooseBase/classPrivateFieldLooseBase.js +7 -0
  35. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldLooseKey/classPrivateFieldLooseKey.js +5 -0
  36. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldSet/classPrivateFieldSet.js +7 -0
  37. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateMethodGet/classPrivateMethodGet.js +7 -0
  38. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateMethodSet/classPrivateMethodSet.js +3 -0
  39. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateFieldSpecGet/classStaticPrivateFieldSpecGet.js +8 -0
  40. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateFieldSpecSet/classStaticPrivateFieldSpecSet.js +9 -0
  41. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateMethodGet/classStaticPrivateMethodGet.js +5 -0
  42. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateMethodSet/classStaticPrivateMethodSet.js +3 -0
  43. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/construct/construct.js +15 -0
  44. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createClass/createClass.js +18 -0
  45. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createForOfIteratorHelper/createForOfIteratorHelper.js +63 -0
  46. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createForOfIteratorHelperLoose/createForOfIteratorHelperLoose.js +22 -0
  47. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createRawReactElement/createRawReactElement.js +50 -0
  48. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createSuper/createSuper.js +22 -0
  49. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/decorate/decorate.js +622 -0
  50. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defaults/defaults.js +14 -0
  51. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defineEnumerableProperties/defineEnumerableProperties.js +26 -0
  52. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defineProperty/defineProperty.js +19 -0
  53. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/extends/extends.js +16 -0
  54. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/get/get.js +21 -0
  55. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/getPrototypeOf/getPrototypeOf.js +2 -0
  56. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/inherits/inherits.js +21 -0
  57. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/inheritsLoose/inheritsLoose.js +6 -0
  58. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/initializerDefineProperty/initializerDefineProperty.js +10 -0
  59. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/initializerWarningHelper/initializerWarningHelper.js +3 -0
  60. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/instanceof/instanceof.js +7 -0
  61. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/interopRequireDefault/interopRequireDefault.js +5 -0
  62. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/interopRequireWildcard/interopRequireWildcard.js +49 -0
  63. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/isNativeFunction/isNativeFunction.js +4 -0
  64. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/isNativeReflectConstruct/isNativeReflectConstruct.js +21 -0
  65. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArray/iterableToArray.js +3 -0
  66. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArrayLimit/iterableToArrayLimit.js +38 -0
  67. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArrayLimitLoose/iterableToArrayLimitLoose.js +13 -0
  68. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/jsx/jsx.js +49 -0
  69. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/maybeArrayLike/maybeArrayLike.js +10 -0
  70. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/newArrowCheck/newArrowCheck.js +5 -0
  71. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/nonIterableRest/nonIterableRest.js +3 -0
  72. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/nonIterableSpread/nonIterableSpread.js +3 -0
  73. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectDestructuringEmpty/objectDestructuringEmpty.js +3 -0
  74. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectSpread/objectSpread.js +22 -0
  75. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectSpread2/objectSpread2.js +41 -0
  76. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectWithoutProperties/objectWithoutProperties.js +20 -0
  77. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js +15 -0
  78. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/possibleConstructorReturn/possibleConstructorReturn.js +10 -0
  79. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/readOnlyError/readOnlyError.js +4 -0
  80. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/readme.md +8 -0
  81. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/set/set.js +51 -0
  82. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/setPrototypeOf/setPrototypeOf.js +5 -0
  83. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/skipFirstGeneratorNext/skipFirstGeneratorNext.js +8 -0
  84. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/slicedToArray/slicedToArray.js +5 -0
  85. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/slicedToArrayLoose/slicedToArrayLoose.js +7 -0
  86. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/superPropBase/superPropBase.js +10 -0
  87. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/taggedTemplateLiteral/taggedTemplateLiteral.js +11 -0
  88. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/taggedTemplateLiteralLoose/taggedTemplateLiteralLoose.js +8 -0
  89. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/tdz/tdz.js +4 -0
  90. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/temporalRef/temporalRef.js +5 -0
  91. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/temporalUndefined/temporalUndefined.js +3 -0
  92. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toArray/toArray.js +5 -0
  93. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toConsumableArray/toConsumableArray.js +5 -0
  94. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toPrimitive/toPrimitive.js +14 -0
  95. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toPropertyKey/toPropertyKey.js +5 -0
  96. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/typeof/typeof.js +7 -0
  97. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/unsupportedIterableToArray/unsupportedIterableToArray.js +10 -0
  98. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapAsyncGenerator/wrapAsyncGenerator.js +7 -0
  99. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapNativeSuper/wrapNativeSuper.js +35 -0
  100. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapRegExp/wrapRegExp.js +67 -0
  101. package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/writeOnlyError/writeOnlyError.js +4 -0
  102. package/dist/other/jsenv.png +0 -0
  103. package/package.json +15 -11
  104. package/src/build/build.js +152 -67
  105. package/src/build/build_urls_generator.js +18 -2
  106. package/src/build/inject_service_worker_urls.js +1 -1
  107. package/src/build/resync_ressource_hints.js +56 -9
  108. package/src/dev/plugins/explorer/client/explorer.html +1 -1
  109. package/src/dev/start_dev_server.js +17 -3
  110. package/src/execute/execute.js +3 -0
  111. package/src/omega/errors.js +10 -7
  112. package/src/omega/kitchen.js +209 -216
  113. package/src/omega/url_graph/url_graph_report.js +2 -2
  114. package/src/omega/url_graph.js +1 -1
  115. package/src/plugins/autoreload/dev_sse/jsenv_plugin_dev_sse_client.js +5 -10
  116. package/src/plugins/autoreload/jsenv_plugin_autoreload.js +1 -3
  117. package/src/plugins/bundling/js_module/bundle_js_module.js +66 -24
  118. package/src/plugins/file_urls/jsenv_plugin_file_urls.js +171 -53
  119. package/src/plugins/html_supervisor/jsenv_plugin_html_supervisor.js +9 -13
  120. package/src/plugins/http_urls/jsenv_plugin_http_urls.js +6 -6
  121. package/src/plugins/import_meta_hot/jsenv_plugin_import_meta_hot.js +5 -10
  122. package/src/plugins/node_esm_resolution/jsenv_plugin_node_esm_resolution.js +12 -2
  123. package/src/plugins/node_runtime/jsenv_plugin_node_runtime.js +12 -0
  124. package/src/plugins/plugin_controller.js +17 -3
  125. package/src/plugins/plugins.js +16 -19
  126. package/src/plugins/transpilation/as_js_classic/jsenv_plugin_as_js_classic.js +7 -13
  127. package/src/plugins/transpilation/as_js_classic/{jsenv_plugin_script_type_module_as_classic.js → jsenv_plugin_as_js_classic_html.js} +0 -0
  128. package/src/plugins/transpilation/jsenv_plugin_transpilation.js +1 -2
  129. package/src/plugins/url_analysis/html/html_urls.js +3 -0
  130. package/src/plugins/url_analysis/js/js_urls.js +2 -1
  131. package/src/plugins/url_analysis/jsenv_plugin_url_analysis.js +87 -1
  132. package/src/plugins/url_analysis/webmanifest/webmanifest_urls.js +3 -0
  133. package/src/plugins/url_resolution/jsenv_plugin_url_resolution.js +0 -3
  134. package/src/test/execute_plan.js +2 -0
  135. package/dist/event_source_client.js.map +0 -188
  136. package/dist/html_supervisor_installer.js +0 -1236
  137. package/dist/html_supervisor_installer.js.map +0 -337
  138. package/dist/html_supervisor_setup.js +0 -95
  139. package/dist/html_supervisor_setup.js.map +0 -57
  140. package/dist/import_meta_hot.js.map +0 -42
  141. package/dist/s.js +0 -626
  142. package/dist/s.js.map +0 -207
  143. package/src/jsenv_root_directory_url.js +0 -1
  144. package/src/omega/compat/default_runtime_compat.js +0 -11
  145. package/src/plugins/filesystem_magic/jsenv_plugin_filesystem_magic.js +0 -61
  146. package/src/plugins/transpilation/babel/new_stylesheet/client/.eslintrc.cjs +0 -24
@@ -1,337 +0,0 @@
1
- {
2
- "version": 3,
3
- "file": "html_supervisor_installer.js",
4
- "sources": [
5
- "../node_modules/@jsenv/uneval/src/internal/isComposite.js",
6
- "../node_modules/@jsenv/uneval/src/internal/global-value-path.js",
7
- "../node_modules/@jsenv/uneval/src/internal/decompose.js",
8
- "../node_modules/@jsenv/uneval/src/internal/sortRecipe.js",
9
- "../node_modules/@jsenv/uneval/src/internal/escapeString.js",
10
- "../node_modules/@jsenv/uneval/src/uneval.js",
11
- "../src/plugins/html_supervisor/client/uneval_exception.js",
12
- "../src/plugins/html_supervisor/client/error_in_document.js",
13
- "../src/plugins/html_supervisor/client/error_in_notification.js",
14
- "../src/plugins/html_supervisor/client/html_supervisor_installer.js"
15
- ],
16
- "sourcesContent": [
17
- "// https://developer.mozilla.org/en-US/docs/Glossary/Primitive\n\nexport const isComposite = (value) => {\n if (value === null) {\n return false\n }\n\n const type = typeof value\n if (type === \"object\") {\n return true\n }\n\n if (type === \"function\") {\n return true\n }\n\n return false\n}\n",
18
- "import { isComposite } from \"./isComposite.js\"\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap\nconst compositeWellKnownMap = new WeakMap()\nconst primitiveWellKnownMap = new Map()\n\nexport const getCompositeGlobalPath = (value) => compositeWellKnownMap.get(value)\n\nexport const getPrimitiveGlobalPath = (value) => primitiveWellKnownMap.get(value)\n\nconst visitGlobalObject = (value) => {\n const visitValue = (value, path) => {\n if (isComposite(value)) {\n // prevent infinite recursion\n if (compositeWellKnownMap.has(value)) {\n return\n }\n compositeWellKnownMap.set(value, path)\n\n const visitProperty = (property) => {\n let descriptor\n try {\n descriptor = Object.getOwnPropertyDescriptor(value, property)\n } catch (e) {\n if (e.name === \"SecurityError\") {\n return\n }\n throw e\n }\n\n if (!descriptor) {\n // it's apparently possible to have getOwnPropertyNames returning\n // a property that later returns a null descriptor\n // for instance window.showModalDialog in webkit 13.0\n return\n }\n\n // do not trigger getter/setter\n if (\"value\" in descriptor) {\n const propertyValue = descriptor.value\n visitValue(propertyValue, [...path, property])\n }\n }\n\n Object.getOwnPropertyNames(value).forEach((name) => visitProperty(name))\n Object.getOwnPropertySymbols(value).forEach((symbol) => visitProperty(symbol))\n }\n\n primitiveWellKnownMap.set(value, path)\n return\n }\n\n visitValue(value, [])\n}\n\nif (typeof window === \"object\") visitGlobalObject(window)\n\nif (typeof global === \"object\") visitGlobalObject(global)\n",
19
- "/**\n * transforms a javascript value into an object describing it.\n *\n */\n\nimport { isComposite } from \"./isComposite.js\"\nimport { getCompositeGlobalPath, getPrimitiveGlobalPath } from \"./global-value-path.js\"\n\nexport const decompose = (mainValue, { functionAllowed, prototypeStrict, ignoreSymbols }) => {\n const valueMap = {}\n const recipeArray = []\n\n const valueToIdentifier = (value, path = []) => {\n if (!isComposite(value)) {\n const existingIdentifier = identifierForPrimitive(value)\n if (existingIdentifier !== undefined) {\n return existingIdentifier\n }\n const identifier = identifierForNewValue(value)\n recipeArray[identifier] = primitiveToRecipe(value)\n return identifier\n }\n\n if (typeof Promise === \"function\" && value instanceof Promise) {\n throw new Error(createPromiseAreNotSupportedMessage({ path }))\n }\n if (typeof WeakSet === \"function\" && value instanceof WeakSet) {\n throw new Error(createWeakSetAreNotSupportedMessage({ path }))\n }\n if (typeof WeakMap === \"function\" && value instanceof WeakMap) {\n throw new Error(createWeakMapAreNotSupportedMessage({ path }))\n }\n if (typeof value === \"function\" && !functionAllowed) {\n throw new Error(createForbiddenFunctionMessage({ path }))\n }\n\n const existingIdentifier = identifierForComposite(value)\n if (existingIdentifier !== undefined) {\n return existingIdentifier\n }\n const identifier = identifierForNewValue(value)\n\n const compositeGlobalPath = getCompositeGlobalPath(value)\n if (compositeGlobalPath) {\n recipeArray[identifier] = createGlobalReferenceRecipe(compositeGlobalPath)\n return identifier\n }\n\n const propertyDescriptionArray = []\n Object.getOwnPropertyNames(value).forEach((propertyName) => {\n const propertyDescriptor = Object.getOwnPropertyDescriptor(value, propertyName)\n const propertyNameIdentifier = valueToIdentifier(propertyName, [...path, propertyName])\n const propertyDescription = computePropertyDescription(propertyDescriptor, propertyName, path)\n propertyDescriptionArray.push({ propertyNameIdentifier, propertyDescription })\n })\n\n const symbolDescriptionArray = []\n if (!ignoreSymbols) {\n Object.getOwnPropertySymbols(value).forEach((symbol) => {\n const propertyDescriptor = Object.getOwnPropertyDescriptor(value, symbol)\n const symbolIdentifier = valueToIdentifier(symbol, [...path, `[${symbol.toString()}]`])\n const propertyDescription = computePropertyDescription(propertyDescriptor, symbol, path)\n symbolDescriptionArray.push({ symbolIdentifier, propertyDescription })\n })\n }\n\n const methodDescriptionArray = computeMethodDescriptionArray(value, path)\n\n const extensible = Object.isExtensible(value)\n\n recipeArray[identifier] = createCompositeRecipe({\n propertyDescriptionArray,\n symbolDescriptionArray,\n methodDescriptionArray,\n extensible,\n })\n return identifier\n }\n\n const computePropertyDescription = (propertyDescriptor, propertyNameOrSymbol, path) => {\n if (propertyDescriptor.set && !functionAllowed) {\n throw new Error(createForbiddenPropertySetterMessage({ path, propertyNameOrSymbol }))\n }\n if (propertyDescriptor.get && !functionAllowed) {\n throw new Error(createForbiddenPropertyGetterMessage({ path, propertyNameOrSymbol }))\n }\n\n return {\n configurable: propertyDescriptor.configurable,\n writable: propertyDescriptor.writable,\n enumerable: propertyDescriptor.enumerable,\n getIdentifier:\n \"get\" in propertyDescriptor\n ? valueToIdentifier(propertyDescriptor.get, [\n ...path,\n String(propertyNameOrSymbol),\n \"[[descriptor:get]]\",\n ])\n : undefined,\n setIdentifier:\n \"set\" in propertyDescriptor\n ? valueToIdentifier(propertyDescriptor.set, [\n ...path,\n String(propertyNameOrSymbol),\n \"[[descriptor:set]]\",\n ])\n : undefined,\n valueIdentifier:\n \"value\" in propertyDescriptor\n ? valueToIdentifier(propertyDescriptor.value, [\n ...path,\n String(propertyNameOrSymbol),\n \"[[descriptor:value]]\",\n ])\n : undefined,\n }\n }\n\n const computeMethodDescriptionArray = (value, path) => {\n const methodDescriptionArray = []\n\n if (typeof Set === \"function\" && value instanceof Set) {\n const callArray = []\n value.forEach((entryValue, index) => {\n const entryValueIdentifier = valueToIdentifier(entryValue, [\n ...path,\n `[[SetEntryValue]]`,\n index,\n ])\n callArray.push([entryValueIdentifier])\n })\n methodDescriptionArray.push({ methodNameIdentifier: valueToIdentifier(\"add\"), callArray })\n }\n\n if (typeof Map === \"function\" && value instanceof Map) {\n const callArray = []\n value.forEach((entryValue, entryKey) => {\n const entryKeyIdentifier = valueToIdentifier(entryKey, [\n ...path,\n \"[[MapEntryKey]]\",\n entryKey,\n ])\n const entryValueIdentifier = valueToIdentifier(entryValue, [\n ...path,\n \"[[MapEntryValue]]\",\n entryValue,\n ])\n callArray.push([entryKeyIdentifier, entryValueIdentifier])\n })\n methodDescriptionArray.push({ methodNameIdentifier: valueToIdentifier(\"set\"), callArray })\n }\n\n return methodDescriptionArray\n }\n\n const identifierForPrimitive = (value) => {\n return Object.keys(valueMap).find((existingIdentifier) => {\n const existingValue = valueMap[existingIdentifier]\n if (Object.is(value, existingValue)) return true\n return value === existingValue\n })\n }\n\n const identifierForComposite = (value) => {\n return Object.keys(valueMap).find((existingIdentifier) => {\n const existingValue = valueMap[existingIdentifier]\n return value === existingValue\n })\n }\n\n const identifierForNewValue = (value) => {\n const identifier = nextIdentifier()\n valueMap[identifier] = value\n return identifier\n }\n\n let currentIdentifier = -1\n const nextIdentifier = () => {\n const identifier = String(parseInt(currentIdentifier) + 1)\n currentIdentifier = identifier\n return identifier\n }\n\n const mainIdentifier = valueToIdentifier(mainValue)\n\n // prototype, important to keep after the whole structure was visited\n // so that we discover if any prototype is part of the value\n const prototypeValueToIdentifier = (prototypeValue) => {\n // prototype is null\n if (prototypeValue === null) {\n return valueToIdentifier(prototypeValue)\n }\n\n // prototype found somewhere already\n const prototypeExistingIdentifier = identifierForComposite(prototypeValue)\n if (prototypeExistingIdentifier !== undefined) {\n return prototypeExistingIdentifier\n }\n\n // mark prototype as visited\n const prototypeIdentifier = identifierForNewValue(prototypeValue)\n\n // prototype is a global reference ?\n const prototypeGlobalPath = getCompositeGlobalPath(prototypeValue)\n if (prototypeGlobalPath) {\n recipeArray[prototypeIdentifier] = createGlobalReferenceRecipe(prototypeGlobalPath)\n return prototypeIdentifier\n }\n\n // otherwise prototype is unknown\n if (prototypeStrict) {\n throw new Error(createUnknownPrototypeMessage({ prototypeValue }))\n }\n\n return prototypeValueToIdentifier(Object.getPrototypeOf(prototypeValue), true)\n }\n const identifierForValueOf = (value, path = []) => {\n if (value instanceof Array) {\n return valueToIdentifier(value.length, [...path, \"length\"])\n }\n\n if (\"valueOf\" in value === false) {\n return undefined\n }\n\n if (typeof value.valueOf !== \"function\") {\n return undefined\n }\n\n const valueOfReturnValue = value.valueOf()\n if (!isComposite(valueOfReturnValue)) {\n return valueToIdentifier(valueOfReturnValue, [...path, \"valueOf()\"])\n }\n\n if (valueOfReturnValue === value) {\n return undefined\n }\n\n throw new Error(createUnexpectedValueOfReturnValueMessage())\n }\n\n recipeArray.slice().forEach((recipe, index) => {\n if (recipe.type === \"composite\") {\n const value = valueMap[index]\n\n if (typeof value === \"function\") {\n const valueOfIdentifier = nextIdentifier()\n recipeArray[valueOfIdentifier] = {\n type: \"primitive\",\n value,\n }\n recipe.valueOfIdentifier = valueOfIdentifier\n return\n }\n\n if (value instanceof RegExp) {\n const valueOfIdentifier = nextIdentifier()\n recipeArray[valueOfIdentifier] = {\n type: \"primitive\",\n value,\n }\n recipe.valueOfIdentifier = valueOfIdentifier\n return\n }\n\n // valueOf, mandatory to uneval new Date(10) for instance.\n recipe.valueOfIdentifier = identifierForValueOf(value)\n const prototypeValue = Object.getPrototypeOf(value)\n recipe.prototypeIdentifier = prototypeValueToIdentifier(prototypeValue, true)\n }\n })\n\n return {\n recipeArray,\n mainIdentifier,\n valueMap,\n }\n}\n\nconst primitiveToRecipe = (value) => {\n if (typeof value === \"symbol\") {\n return symbolToRecipe(value)\n }\n\n return createPimitiveRecipe(value)\n}\n\nconst symbolToRecipe = (symbol) => {\n const globalSymbolKey = Symbol.keyFor(symbol)\n if (globalSymbolKey !== undefined) {\n return createGlobalSymbolRecipe(globalSymbolKey)\n }\n\n const symbolGlobalPath = getPrimitiveGlobalPath(symbol)\n if (!symbolGlobalPath) {\n throw new Error(createUnknownSymbolMessage({ symbol }))\n }\n\n return createGlobalReferenceRecipe(symbolGlobalPath)\n}\n\nconst createPimitiveRecipe = (value) => {\n return {\n type: \"primitive\",\n value,\n }\n}\n\nconst createGlobalReferenceRecipe = (path) => {\n const recipe = {\n type: \"global-reference\",\n path,\n }\n return recipe\n}\n\nconst createGlobalSymbolRecipe = (key) => {\n return {\n type: \"global-symbol\",\n key,\n }\n}\n\nconst createCompositeRecipe = ({\n prototypeIdentifier,\n valueOfIdentifier,\n propertyDescriptionArray,\n symbolDescriptionArray,\n methodDescriptionArray,\n extensible,\n}) => {\n return {\n type: \"composite\",\n prototypeIdentifier,\n valueOfIdentifier,\n propertyDescriptionArray,\n symbolDescriptionArray,\n methodDescriptionArray,\n extensible,\n }\n}\n\nconst createPromiseAreNotSupportedMessage = ({ path }) => {\n if (path.length === 0) {\n return `promise are not supported.`\n }\n\n return `promise are not supported.\npromise found at: ${path.join(\"\")}`\n}\n\nconst createWeakSetAreNotSupportedMessage = ({ path }) => {\n if (path.length === 0) {\n return `weakSet are not supported.`\n }\n\n return `weakSet are not supported.\nweakSet found at: ${path.join(\"\")}`\n}\n\nconst createWeakMapAreNotSupportedMessage = ({ path }) => {\n if (path.length === 0) {\n return `weakMap are not supported.`\n }\n\n return `weakMap are not supported.\nweakMap found at: ${path.join(\"\")}`\n}\n\nconst createForbiddenFunctionMessage = ({ path }) => {\n if (path.length === 0) {\n return `function are not allowed.`\n }\n\n return `function are not allowed.\nfunction found at: ${path.join(\"\")}`\n}\n\nconst createForbiddenPropertyGetterMessage = ({\n path,\n propertyNameOrSymbol,\n}) => `property getter are not allowed.\ngetter found on property: ${String(propertyNameOrSymbol)}\nat: ${path.join(\"\")}`\n\nconst createForbiddenPropertySetterMessage = ({\n path,\n propertyNameOrSymbol,\n}) => `property setter are not allowed.\nsetter found on property: ${String(propertyNameOrSymbol)}\nat: ${path.join(\"\")}`\n\nconst createUnexpectedValueOfReturnValueMessage = () =>\n `valueOf() must return a primitive of the object itself.`\n\nconst createUnknownSymbolMessage = ({\n symbol,\n}) => `symbol must be global, like Symbol.iterator, or created using Symbol.for().\nsymbol: ${symbol.toString()}`\n\nconst createUnknownPrototypeMessage = ({ prototypeValue }) =>\n `prototype must be global, like Object.prototype, or somewhere in the value.\nprototype constructor name: ${prototypeValue.constructor.name}`\n",
20
- "// be carefull because this function is mutating recipe objects inside the recipeArray.\n// this is not an issue because each recipe object is not accessible from the outside\n// when used internally by uneval\nexport const sortRecipe = (recipeArray) => {\n const findInRecipePrototypeChain = (recipe, callback) => {\n let currentRecipe = recipe\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (currentRecipe.type !== \"composite\") {\n break\n }\n\n const prototypeIdentifier = currentRecipe.prototypeIdentifier\n if (prototypeIdentifier === undefined) {\n break\n }\n\n currentRecipe = recipeArray[prototypeIdentifier]\n\n if (callback(currentRecipe, prototypeIdentifier)) {\n return prototypeIdentifier\n }\n }\n return undefined\n }\n\n const recipeArrayOrdered = recipeArray.slice()\n recipeArrayOrdered.sort((leftRecipe, rightRecipe) => {\n const leftType = leftRecipe.type\n const rightType = rightRecipe.type\n\n if (leftType === \"composite\" && rightType === \"composite\") {\n const rightRecipeIsInLeftRecipePrototypeChain = findInRecipePrototypeChain(\n leftRecipe,\n (recipeCandidate) => recipeCandidate === rightRecipe,\n )\n // if left recipe requires right recipe, left must be after right\n if (rightRecipeIsInLeftRecipePrototypeChain) {\n return 1\n }\n\n const leftRecipeIsInRightRecipePrototypeChain = findInRecipePrototypeChain(\n rightRecipe,\n (recipeCandidate) => recipeCandidate === leftRecipe,\n )\n // if right recipe requires left recipe, right must be after left\n if (leftRecipeIsInRightRecipePrototypeChain) {\n return -1\n }\n }\n\n if (leftType !== rightType) {\n // if left is a composite, left must be after right\n if (leftType === \"composite\") {\n return 1\n }\n\n // if right is a composite, right must be after left\n if (rightType === \"composite\") {\n return -1\n }\n }\n\n const leftIndex = recipeArray.indexOf(leftRecipe)\n const rightIndex = recipeArray.indexOf(rightRecipe)\n // left was before right, don't change that\n if (leftIndex < rightIndex) {\n return -1\n }\n\n // right was after left, don't change that\n return 1\n })\n\n return recipeArrayOrdered\n}\n",
21
- "// https://github.com/joliss/js-string-escape/blob/master/index.js\n// http://javascript.crockford.com/remedial.html\nexport const escapeString = (value) => {\n const string = String(value)\n let i = 0\n const j = string.length\n var escapedString = \"\"\n while (i < j) {\n const char = string[i]\n let escapedChar\n if (char === '\"' || char === \"'\" || char === \"\\\\\") {\n escapedChar = `\\\\${char}`\n } else if (char === \"\\n\") {\n escapedChar = \"\\\\n\"\n } else if (char === \"\\r\") {\n escapedChar = \"\\\\r\"\n } else if (char === \"\\u2028\") {\n escapedChar = \"\\\\u2028\"\n } else if (char === \"\\u2029\") {\n escapedChar = \"\\\\u2029\"\n } else {\n escapedChar = char\n }\n escapedString += escapedChar\n i++\n }\n return escapedString\n}\n",
22
- "import { decompose } from \"./internal/decompose.js\"\nimport { sortRecipe } from \"./internal/sortRecipe.js\"\nimport { escapeString } from \"./internal/escapeString.js\"\n\nexport const uneval = (\n value,\n { functionAllowed = false, prototypeStrict = false, ignoreSymbols = false } = {},\n) => {\n const { recipeArray, mainIdentifier, valueMap } = decompose(value, {\n functionAllowed,\n prototypeStrict,\n ignoreSymbols,\n })\n const recipeArraySorted = sortRecipe(recipeArray)\n\n let source = `(function () {\nvar globalObject\ntry {\n globalObject = Function('return this')() || (42, eval)('this');\n} catch(e) {\n globalObject = window;\n}\n\nfunction safeDefineProperty(object, propertyNameOrSymbol, descriptor) {\n var currentDescriptor = Object.getOwnPropertyDescriptor(object, propertyNameOrSymbol);\n if (currentDescriptor && !currentDescriptor.configurable) return\n Object.defineProperty(object, propertyNameOrSymbol, descriptor)\n};\n`\n\n const variableNameMap = {}\n recipeArray.forEach((recipe, index) => {\n const indexSorted = recipeArraySorted.indexOf(recipe)\n variableNameMap[index] = `_${indexSorted}`\n })\n\n const identifierToVariableName = (identifier) => variableNameMap[identifier]\n\n const recipeToSetupSource = (recipe) => {\n if (recipe.type === \"primitive\") return primitiveRecipeToSetupSource(recipe)\n if (recipe.type === \"global-symbol\") return globalSymbolRecipeToSetupSource(recipe)\n if (recipe.type === \"global-reference\") return globalReferenceRecipeToSetupSource(recipe)\n return compositeRecipeToSetupSource(recipe)\n }\n\n const primitiveRecipeToSetupSource = ({ value }) => {\n const type = typeof value\n\n if (type === \"string\") {\n return `\"${escapeString(value)}\";`\n }\n\n if (type === \"bigint\") {\n return `${value.toString()}n`\n }\n\n if (Object.is(value, -0)) {\n return \"-0;\"\n }\n\n return `${String(value)};`\n }\n\n const globalSymbolRecipeToSetupSource = (recipe) => {\n return `Symbol.for(\"${escapeString(recipe.key)}\");`\n }\n\n const globalReferenceRecipeToSetupSource = (recipe) => {\n const pathSource = recipe.path.map((part) => `[\"${escapeString(part)}\"]`).join(\"\")\n return `globalObject${pathSource};`\n }\n\n const compositeRecipeToSetupSource = ({ prototypeIdentifier, valueOfIdentifier }) => {\n if (prototypeIdentifier === undefined) {\n return identifierToVariableName(valueOfIdentifier)\n }\n\n const prototypeValue = valueMap[prototypeIdentifier]\n if (prototypeValue === null) {\n return `Object.create(null);`\n }\n\n const prototypeConstructor = prototypeValue.constructor\n if (prototypeConstructor === Object) {\n return `Object.create(${identifierToVariableName(prototypeIdentifier)});`\n }\n\n if (valueOfIdentifier === undefined) {\n return `new ${prototypeConstructor.name}();`\n }\n\n if (prototypeConstructor.name === \"BigInt\") {\n return `Object(${identifierToVariableName(valueOfIdentifier)})`\n }\n\n return `new ${prototypeConstructor.name}(${identifierToVariableName(valueOfIdentifier)});`\n }\n\n recipeArraySorted.forEach((recipe) => {\n const recipeVariableName = identifierToVariableName(recipeArray.indexOf(recipe))\n source += `var ${recipeVariableName} = ${recipeToSetupSource(recipe, recipeVariableName)}\n`\n })\n\n const recipeToMutateSource = (recipe, recipeVariableName) => {\n if (recipe.type === \"composite\") {\n return compositeRecipeToMutateSource(recipe, recipeVariableName)\n }\n return ``\n }\n\n const compositeRecipeToMutateSource = (\n { propertyDescriptionArray, symbolDescriptionArray, methodDescriptionArray, extensible },\n recipeVariableName,\n ) => {\n let mutateSource = ``\n\n propertyDescriptionArray.forEach(({ propertyNameIdentifier, propertyDescription }) => {\n mutateSource += generateDefinePropertySource(\n recipeVariableName,\n propertyNameIdentifier,\n propertyDescription,\n )\n })\n\n symbolDescriptionArray.forEach(({ symbolIdentifier, propertyDescription }) => {\n mutateSource += generateDefinePropertySource(\n recipeVariableName,\n symbolIdentifier,\n propertyDescription,\n )\n })\n\n methodDescriptionArray.forEach(({ methodNameIdentifier, callArray }) => {\n mutateSource += generateMethodCallSource(recipeVariableName, methodNameIdentifier, callArray)\n })\n\n if (!extensible) {\n mutateSource += generatePreventExtensionSource(recipeVariableName)\n }\n\n return mutateSource\n }\n\n const generateDefinePropertySource = (\n recipeVariableName,\n propertyNameOrSymbolIdentifier,\n propertyDescription,\n ) => {\n const propertyOrSymbolVariableName = identifierToVariableName(propertyNameOrSymbolIdentifier)\n\n const propertyDescriptorSource = generatePropertyDescriptorSource(propertyDescription)\n return `safeDefineProperty(${recipeVariableName}, ${propertyOrSymbolVariableName}, ${propertyDescriptorSource});`\n }\n\n const generatePropertyDescriptorSource = ({\n configurable,\n writable,\n enumerable,\n getIdentifier,\n setIdentifier,\n valueIdentifier,\n }) => {\n if (valueIdentifier === undefined) {\n return `{\n configurable: ${configurable},\n enumerable: ${enumerable},\n get: ${getIdentifier === undefined ? undefined : identifierToVariableName(getIdentifier)},\n set: ${setIdentifier === undefined ? undefined : identifierToVariableName(setIdentifier)},\n}`\n }\n\n return `{\n configurable: ${configurable},\n writable: ${writable},\n enumerable: ${enumerable},\n value: ${valueIdentifier === undefined ? undefined : identifierToVariableName(valueIdentifier)}\n}`\n }\n\n const generateMethodCallSource = (recipeVariableName, methodNameIdentifier, callArray) => {\n let methodCallSource = ``\n\n const methodVariableName = identifierToVariableName(methodNameIdentifier)\n callArray.forEach((argumentIdentifiers) => {\n const argumentVariableNames = argumentIdentifiers.map((argumentIdentifier) =>\n identifierToVariableName(argumentIdentifier),\n )\n\n methodCallSource += `${recipeVariableName}[${methodVariableName}](${argumentVariableNames.join(\n \",\",\n )});`\n })\n\n return methodCallSource\n }\n\n const generatePreventExtensionSource = (recipeVariableName) => {\n return `Object.preventExtensions(${recipeVariableName});`\n }\n\n recipeArraySorted.forEach((recipe) => {\n const recipeVariableName = identifierToVariableName(recipeArray.indexOf(recipe))\n source += `${recipeToMutateSource(recipe, recipeVariableName)}`\n })\n\n source += `return ${identifierToVariableName(mainIdentifier)}; })()`\n\n return source\n}\n",
23
- "import { uneval } from \"@jsenv/uneval\"\n\nexport const unevalException = (value) => {\n if (value && value.hasOwnProperty(\"toString\")) {\n delete value.toString\n }\n return uneval(value, { ignoreSymbols: true })\n}\n",
24
- "export const displayErrorInDocument = (error) => {\n const title = \"An error occured\"\n let theme =\n error && error.cause && error.cause.code === \"PARSE_ERROR\"\n ? \"light\"\n : \"dark\"\n let message = errorToHTML(error)\n const css = `\n .jsenv-console {\n background: rgba(0, 0, 0, 0.95);\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n z-index: 1000;\n box-sizing: border-box;\n padding: 1em;\n }\n\n .jsenv-console h1 {\n color: red;\n display: flex;\n align-items: center;\n }\n\n #button-close-jsenv-console {\n margin-left: 10px;\n }\n\n .jsenv-console pre {\n overflow: auto;\n max-width: 70em;\n /* avoid scrollbar to hide the text behind it */\n padding: 20px;\n }\n\n .jsenv-console pre[data-theme=\"dark\"] {\n background: #111;\n border: 1px solid #333;\n color: #eee;\n }\n\n .jsenv-console pre[data-theme=\"light\"] {\n background: #1E1E1E;\n border: 1px solid white;\n color: #EEEEEE;\n }\n\n .jsenv-console pre a {\n color: inherit;\n }\n `\n const html = `\n <style type=\"text/css\">${css}></style>\n <div class=\"jsenv-console\">\n <h1>${title} <button id=\"button-close-jsenv-console\">X</button></h1>\n <pre data-theme=\"${theme}\">${message}</pre>\n </div>\n `\n const removeJsenvConsole = appendHMTLInside(html, document.body)\n\n document.querySelector(\"#button-close-jsenv-console\").onclick = () => {\n removeJsenvConsole()\n }\n}\n\nconst escapeHtml = (string) => {\n return string\n .replace(/&/g, \"&amp;\")\n .replace(/</g, \"&lt;\")\n .replace(/>/g, \"&gt;\")\n .replace(/\"/g, \"&quot;\")\n .replace(/'/g, \"&#039;\")\n}\n\nconst errorToHTML = (error) => {\n let html\n\n if (error && error instanceof Error) {\n if (error.cause && error.cause.code === \"PARSE_ERROR\") {\n html = error.messageHTML || escapeHtml(error.message)\n }\n // stackTrace formatted by V8\n else if (Error.captureStackTrace) {\n html = escapeHtml(error.stack)\n } else {\n // other stack trace such as firefox do not contain error.message\n html = escapeHtml(`${error.message}\n ${error.stack}`)\n }\n } else if (typeof error === \"string\") {\n html = error\n } else if (error === undefined) {\n html = \"undefined\"\n } else {\n html = JSON.stringify(error)\n }\n\n const htmlWithCorrectLineBreaks = html.replace(/\\n/g, \"\\n\")\n const htmlWithLinks = stringToStringWithLink(htmlWithCorrectLineBreaks, {\n transform: (url) => {\n return { href: url, text: url }\n },\n })\n return htmlWithLinks\n}\n\n// `Error: yo\n// at Object.execute (http://127.0.0.1:57300/build/src/__test__/file-throw.js:9:13)\n// at doExec (http://127.0.0.1:3000/src/__test__/file-throw.js:452:38)\n// at postOrderExec (http://127.0.0.1:3000/src/__test__/file-throw.js:448:16)\n// at http://127.0.0.1:3000/src/__test__/file-throw.js:399:18`.replace(/(?:https?|ftp|file):\\/\\/(.*+)$/gm, (...args) => {\n// debugger\n// })\nconst stringToStringWithLink = (\n source,\n {\n transform = (url) => {\n return {\n href: url,\n text: url,\n }\n },\n } = {},\n) => {\n return source.replace(/(?:https?|ftp|file):\\/\\/\\S+/gm, (match) => {\n let linkHTML = \"\"\n\n const lastChar = match[match.length - 1]\n\n // hotfix because our url regex sucks a bit\n const endsWithSeparationChar = lastChar === \")\" || lastChar === \":\"\n if (endsWithSeparationChar) {\n match = match.slice(0, -1)\n }\n\n const lineAndColumnPattern = /:([0-9]+):([0-9]+)$/\n const lineAndColumMatch = match.match(lineAndColumnPattern)\n if (lineAndColumMatch) {\n const lineAndColumnString = lineAndColumMatch[0]\n const lineNumber = lineAndColumMatch[1]\n const columnNumber = lineAndColumMatch[2]\n const url = match.slice(0, -lineAndColumnString.length)\n const { href, text } = transform(url)\n linkHTML = link({ href, text: `${text}:${lineNumber}:${columnNumber}` })\n } else {\n const linePattern = /:([0-9]+)$/\n const lineMatch = match.match(linePattern)\n if (lineMatch) {\n const lineString = lineMatch[0]\n const lineNumber = lineMatch[1]\n const url = match.slice(0, -lineString.length)\n const { href, text } = transform(url)\n linkHTML = link({\n href,\n text: `${text}:${lineNumber}`,\n })\n } else {\n const url = match\n const { href, text } = transform(url)\n linkHTML = link({ href, text })\n }\n }\n\n if (endsWithSeparationChar) {\n return `${linkHTML}${lastChar}`\n }\n return linkHTML\n })\n}\n\nconst link = ({ href, text = href }) => `<a href=\"${href}\">${text}</a>`\n\nconst appendHMTLInside = (html, parentNode) => {\n const temoraryParent = document.createElement(\"div\")\n temoraryParent.innerHTML = html\n return transferChildren(temoraryParent, parentNode)\n}\n\nconst transferChildren = (fromNode, toNode) => {\n const childNodes = [].slice.call(fromNode.childNodes, 0)\n let i = 0\n while (i < childNodes.length) {\n toNode.appendChild(childNodes[i])\n i++\n }\n return () => {\n let c = 0\n while (c < childNodes.length) {\n fromNode.appendChild(childNodes[c])\n c++\n }\n }\n}\n",
25
- "const { Notification } = window\n\nconst displayErrorNotificationNotAvailable = () => {}\n\nconst displayErrorNotificationImplementation = (error, { icon } = {}) => {\n if (Notification.permission === \"granted\") {\n const notification = new Notification(\"An error occured\", {\n lang: \"en\",\n body: error ? error.stack : \"undefined\",\n icon,\n })\n notification.onclick = () => {\n window.focus()\n }\n }\n}\n\nexport const displayErrorNotification =\n typeof Notification === \"function\"\n ? displayErrorNotificationImplementation\n : displayErrorNotificationNotAvailable\n",
26
- "import { unevalException } from \"./uneval_exception.js\"\nimport { displayErrorInDocument } from \"./error_in_document.js\"\nimport { displayErrorNotification } from \"./error_in_notification.js\"\n\nconst { __html_supervisor__ } = window\n\nexport const installHtmlSupervisor = ({ logs, measurePerf }) => {\n const errorTransformer = null // could implement error stack remapping if needed\n const scriptExecutionResults = {}\n let collectCalled = false\n let pendingExecutionCount = 0\n let resolveScriptExecutionsPromise\n const scriptExecutionsPromise = new Promise((resolve) => {\n resolveScriptExecutionsPromise = resolve\n })\n const onExecutionStart = (name) => {\n scriptExecutionResults[name] = null // ensure execution order is reflected into the object\n pendingExecutionCount++\n if (measurePerf) {\n performance.mark(`execution_start`)\n }\n }\n const onExecutionSettled = (name, executionResult) => {\n if (measurePerf) {\n performance.measure(`execution`, `execution_start`)\n }\n scriptExecutionResults[name] = executionResult\n pendingExecutionCount--\n if (pendingExecutionCount === 0 && collectCalled) {\n resolveScriptExecutionsPromise()\n }\n }\n const onExecutionError = (\n executionResult,\n {\n currentScript,\n errorExposureInNotification = false,\n errorExposureInDocument = true,\n },\n ) => {\n const error = executionResult.error\n if (error && error.code === \"NETWORK_FAILURE\") {\n if (currentScript) {\n const errorEvent = new Event(\"error\")\n currentScript.dispatchEvent(errorEvent)\n }\n } else if (typeof error === \"object\") {\n const globalErrorEvent = new Event(\"error\")\n globalErrorEvent.filename = error.filename\n globalErrorEvent.lineno = error.line || error.lineno\n globalErrorEvent.colno = error.column || error.columnno\n globalErrorEvent.message = error.message\n window.dispatchEvent(globalErrorEvent)\n }\n if (errorExposureInNotification) {\n displayErrorNotification(error)\n }\n if (errorExposureInDocument) {\n displayErrorInDocument(error)\n }\n executionResult.exceptionSource = unevalException(error)\n delete executionResult.error\n }\n const getNavigationStartTime = () => {\n try {\n return window.performance.timing.navigationStart\n } catch (e) {\n return Date.now()\n }\n }\n\n const performExecution = async ({\n src,\n type,\n currentScript,\n execute,\n // https://developer.mozilla.org/en-US/docs/web/html/element/script\n }) => {\n if (logs) {\n console.group(`[jsenv] loading ${type} ${src}`)\n }\n onExecutionStart(src)\n let completed\n let result\n let error\n try {\n result = await execute()\n completed = true\n } catch (e) {\n completed = false\n error = e\n }\n if (completed) {\n const executionResult = {\n status: \"completed\",\n namespace: result,\n coverage: window.__coverage__,\n }\n onExecutionSettled(src, executionResult)\n if (logs) {\n console.log(`${type} load ended`)\n console.groupEnd()\n }\n return\n }\n const executionResult = {\n status: \"errored\",\n coverage: window.__coverage__,\n }\n let errorExposureInConsole = true\n if (error.name === \"SyntaxError\") {\n // errorExposureInConsole = false\n }\n if (errorTransformer) {\n try {\n error = await errorTransformer(error)\n } catch (e) {}\n }\n executionResult.error = error\n onExecutionSettled(src, executionResult)\n onExecutionError(executionResult, {\n currentScript,\n })\n if (errorExposureInConsole) {\n if (typeof window.reportError === \"function\") {\n window.reportError(error)\n } else {\n console.error(error)\n }\n }\n if (logs) {\n console.groupEnd()\n }\n }\n\n const queue = []\n let previousDonePromise = null\n const dequeue = () => {\n const next = queue.shift()\n if (next) {\n __html_supervisor__.addScriptToExecute(next)\n } else {\n const nextDefered = deferQueue.shift()\n if (nextDefered) {\n __html_supervisor__.addScriptToExecute(nextDefered)\n }\n }\n }\n const deferQueue = []\n let previousDeferDonePromise = null\n __html_supervisor__.addScriptToExecute = async (scriptToExecute) => {\n if (scriptToExecute.async) {\n performExecution(scriptToExecute)\n return\n }\n const useDeferQueue =\n scriptToExecute.defer || scriptToExecute.type === \"js_module\"\n if (useDeferQueue) {\n if (document.readyState !== \"interactive\") {\n deferQueue.push(scriptToExecute)\n return\n }\n if (previousDonePromise) {\n // defer must wait for the regular script to be done\n deferQueue.push(scriptToExecute)\n return\n }\n if (previousDeferDonePromise) {\n deferQueue.push(scriptToExecute)\n return\n }\n previousDeferDonePromise = performExecution(scriptToExecute)\n await previousDeferDonePromise\n previousDeferDonePromise = null\n dequeue()\n return\n }\n if (previousDonePromise) {\n queue.push(scriptToExecute)\n return\n }\n previousDonePromise = performExecution(scriptToExecute)\n await previousDonePromise\n previousDonePromise = null\n dequeue()\n }\n if (\n document.readyState !== \"interactive\" &&\n document.readyState !== \"complete\"\n ) {\n document.addEventListener(\"readystatechange\", () => {\n if (document.readyState === \"interactive\") {\n const nextDefered = deferQueue.shift()\n if (nextDefered) {\n __html_supervisor__.addScriptToExecute(nextDefered)\n }\n }\n })\n }\n\n __html_supervisor__.collectScriptResults = async () => {\n collectCalled = true\n if (pendingExecutionCount === 0) {\n resolveScriptExecutionsPromise()\n } else {\n await scriptExecutionsPromise\n }\n\n let status = \"completed\"\n let exceptionSource = \"\"\n Object.keys(scriptExecutionResults).forEach((key) => {\n const scriptExecutionResult = scriptExecutionResults[key]\n if (scriptExecutionResult.status === \"errored\") {\n status = \"errored\"\n exceptionSource = scriptExecutionResult.exceptionSource\n }\n })\n return {\n status,\n ...(status === \"errored\" ? { exceptionSource } : {}),\n startTime: getNavigationStartTime(),\n endTime: Date.now(),\n scriptExecutionResults,\n }\n }\n\n const { scriptsToExecute } = __html_supervisor__\n const copy = scriptsToExecute.slice()\n scriptsToExecute.length = 0\n copy.forEach((scriptToExecute) => {\n __html_supervisor__.addScriptToExecute(scriptToExecute)\n })\n}\n\nexport const superviseScriptTypeModule = ({ src, isInline }) => {\n __html_supervisor__.addScriptToExecute({\n src,\n type: \"js_module\",\n isInline,\n execute: () => import(new URL(src, document.location.href).href),\n })\n}\n"
27
- ],
28
- "names": [
29
- "isComposite",
30
- "value",
31
- "type",
32
- "compositeWellKnownMap",
33
- "WeakMap",
34
- "primitiveWellKnownMap",
35
- "get",
36
- "getPrimitiveGlobalPath",
37
- "visitGlobalObject",
38
- "visitValue",
39
- "path",
40
- "has",
41
- "set",
42
- "descriptor",
43
- "Object",
44
- "getOwnPropertyDescriptor",
45
- "property",
46
- "e",
47
- "name",
48
- "getOwnPropertyNames",
49
- "visitProperty",
50
- "getOwnPropertySymbols",
51
- "forEach",
52
- "symbol",
53
- "window",
54
- "global",
55
- "functionAllowed",
56
- "ignoreSymbols",
57
- "valueMap",
58
- "recipeArray",
59
- "identifierForPrimitive",
60
- "undefined",
61
- "identifier",
62
- "identifierForNewValue",
63
- "primitiveToRecipe",
64
- "Promise",
65
- "Error",
66
- "createPromiseAreNotSupportedMessage",
67
- "createWeakSetAreNotSupportedMessage",
68
- "createForbiddenFunctionMessage",
69
- "existingIdentifier",
70
- "getCompositeGlobalPath",
71
- "compositeGlobalPath",
72
- "createGlobalReferenceRecipe",
73
- "propertyDescriptionArray",
74
- "propertyDescriptor",
75
- "propertyName",
76
- "propertyNameIdentifier",
77
- "valueToIdentifier",
78
- "propertyDescription",
79
- "computePropertyDescription",
80
- "symbolDescriptionArray",
81
- "symbolIdentifier",
82
- "toString",
83
- "push",
84
- "methodDescriptionArray",
85
- "createCompositeRecipe",
86
- "propertyNameOrSymbol",
87
- "createForbiddenPropertySetterMessage",
88
- "configurable",
89
- "writable",
90
- "String",
91
- "setIdentifier",
92
- "valueIdentifier",
93
- "computeMethodDescriptionArray",
94
- "Set",
95
- "callArray",
96
- "entryValue",
97
- "index",
98
- "entryValueIdentifier",
99
- "Map",
100
- "entryKeyIdentifier",
101
- "entryKey",
102
- "methodNameIdentifier",
103
- "find",
104
- "existingValue",
105
- "is",
106
- "identifierForComposite",
107
- "nextIdentifier",
108
- "currentIdentifier",
109
- "parseInt",
110
- "mainIdentifier",
111
- "mainValue",
112
- "prototypeValueToIdentifier",
113
- "prototypeValue",
114
- "prototypeExistingIdentifier",
115
- "prototypeGlobalPath",
116
- "prototypeIdentifier",
117
- "prototypeStrict",
118
- "createUnknownPrototypeMessage",
119
- "Array",
120
- "length",
121
- "valueOfReturnValue",
122
- "valueOf",
123
- "createUnexpectedValueOfReturnValueMessage",
124
- "slice",
125
- "valueOfIdentifier",
126
- "recipe",
127
- "RegExp",
128
- "identifierForValueOf",
129
- "getPrototypeOf",
130
- "symbolToRecipe",
131
- "createPimitiveRecipe",
132
- "globalSymbolKey",
133
- "createGlobalSymbolRecipe",
134
- "symbolGlobalPath",
135
- "createUnknownSymbolMessage",
136
- "key",
137
- "join",
138
- "createWeakMapAreNotSupportedMessage",
139
- "createForbiddenPropertyGetterMessage",
140
- "constructor",
141
- "sortRecipe",
142
- "findInRecipePrototypeChain",
143
- "callback",
144
- "currentRecipe",
145
- "recipeArrayOrdered",
146
- "sort",
147
- "leftRecipe",
148
- "rightRecipe",
149
- "leftType",
150
- "rightType",
151
- "rightRecipeIsInLeftRecipePrototypeChain",
152
- "recipeCandidate",
153
- "leftRecipeIsInRightRecipePrototypeChain",
154
- "leftIndex",
155
- "indexOf",
156
- "rightIndex",
157
- "escapeString",
158
- "string",
159
- "i",
160
- "j",
161
- "escapedString",
162
- "char",
163
- "escapedChar",
164
- "uneval",
165
- "decompose",
166
- "recipeArraySorted",
167
- "source",
168
- "variableNameMap",
169
- "indexSorted",
170
- "identifierToVariableName",
171
- "recipeToSetupSource",
172
- "primitiveRecipeToSetupSource",
173
- "globalSymbolRecipeToSetupSource",
174
- "globalReferenceRecipeToSetupSource",
175
- "pathSource",
176
- "map",
177
- "part",
178
- "compositeRecipeToSetupSource",
179
- "prototypeConstructor",
180
- "recipeVariableName",
181
- "recipeToMutateSource",
182
- "compositeRecipeToMutateSource",
183
- "mutateSource",
184
- "generateDefinePropertySource",
185
- "generateMethodCallSource",
186
- "propertyNameOrSymbolIdentifier",
187
- "propertyDescriptorSource",
188
- "generatePropertyDescriptorSource",
189
- "propertyOrSymbolVariableName",
190
- "enumerable",
191
- "getIdentifier",
192
- "methodCallSource",
193
- "argumentIdentifiers",
194
- "argumentVariableNames",
195
- "argumentIdentifier",
196
- "methodVariableName",
197
- "generatePreventExtensionSource",
198
- "unevalException",
199
- "hasOwnProperty",
200
- "displayErrorInDocument",
201
- "error",
202
- "title",
203
- "theme",
204
- "cause",
205
- "code",
206
- "message",
207
- "errorToHTML",
208
- "css",
209
- "html",
210
- "removeJsenvConsole",
211
- "appendHMTLInside",
212
- "document",
213
- "body",
214
- "querySelector",
215
- "onclick",
216
- "escapeHtml",
217
- "replace",
218
- "messageHTML",
219
- "captureStackTrace",
220
- "stack",
221
- "JSON",
222
- "stringify",
223
- "htmlWithCorrectLineBreaks",
224
- "htmlWithLinks",
225
- "stringToStringWithLink",
226
- "transform",
227
- "url",
228
- "href",
229
- "text",
230
- "match",
231
- "linkHTML",
232
- "lastChar",
233
- "endsWithSeparationChar",
234
- "lineAndColumnPattern",
235
- "lineAndColumMatch",
236
- "lineAndColumnString",
237
- "lineNumber",
238
- "columnNumber",
239
- "link",
240
- "linePattern",
241
- "lineMatch",
242
- "lineString",
243
- "parentNode",
244
- "temoraryParent",
245
- "createElement",
246
- "innerHTML",
247
- "transferChildren",
248
- "fromNode",
249
- "toNode",
250
- "childNodes",
251
- "call",
252
- "appendChild",
253
- "c",
254
- "Notification",
255
- "displayErrorNotificationNotAvailable",
256
- "displayErrorNotificationImplementation",
257
- "icon",
258
- "permission",
259
- "notification",
260
- "lang",
261
- "focus",
262
- "displayErrorNotification",
263
- "installHtmlSupervisor",
264
- "logs",
265
- "scriptExecutionResults",
266
- "pendingExecutionCount",
267
- "resolveScriptExecutionsPromise",
268
- "resolve",
269
- "onExecutionStart",
270
- "measurePerf",
271
- "performance",
272
- "mark",
273
- "onExecutionSettled",
274
- "executionResult",
275
- "measure",
276
- "collectCalled",
277
- "errorEvent",
278
- "currentScript",
279
- "dispatchEvent",
280
- "globalErrorEvent",
281
- "Event",
282
- "filename",
283
- "line",
284
- "lineno",
285
- "colno",
286
- "column",
287
- "columnno",
288
- "errorExposureInDocument",
289
- "exceptionSource",
290
- "timing",
291
- "navigationStart",
292
- "Date",
293
- "now",
294
- "performExecution",
295
- "execute",
296
- "console",
297
- "src",
298
- "completed",
299
- "result",
300
- "status",
301
- "namespace",
302
- "coverage",
303
- "__coverage__",
304
- "log",
305
- "groupEnd",
306
- "reportError",
307
- "queue",
308
- "previousDonePromise",
309
- "dequeue",
310
- "next",
311
- "shift",
312
- "addScriptToExecute",
313
- "nextDefered",
314
- "deferQueue",
315
- "__html_supervisor__",
316
- "previousDeferDonePromise",
317
- "scriptToExecute",
318
- "async",
319
- "useDeferQueue",
320
- "defer",
321
- "readyState",
322
- "addEventListener",
323
- "collectScriptResults",
324
- "keys",
325
- "scriptExecutionResult",
326
- "startTime",
327
- "getNavigationStartTime",
328
- "endTime",
329
- "scriptsToExecute",
330
- "copy",
331
- "superviseScriptTypeModule",
332
- "isInline",
333
- "URL",
334
- "location"
335
- ],
336
- "mappings": "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"
337
- }
@@ -1,95 +0,0 @@
1
- window.__html_supervisor__ = {
2
- // "html_supervisor_installer.js" will implement
3
- // - "addScriptToExecute"
4
- // - "superviseScriptTypeModule"
5
- // - "collectScriptResults"
6
- // and take all executions in "scriptsToExecute" and implement their supervision
7
- scriptsToExecute: [],
8
- addScriptToExecute: scriptToExecute => {
9
- window.__html_supervisor__.scriptsToExecute.push(scriptToExecute);
10
- },
11
- superviseScript: ({
12
- src,
13
- isInline,
14
- crossorigin,
15
- integrity
16
- }) => {
17
- window.__html_supervisor__.addScriptToExecute({
18
- src,
19
- type: "js_classic",
20
- isInline,
21
- currentScript: document.currentScript,
22
- execute: () => {
23
- return new Promise((resolve, reject) => {
24
- const script = document.createElement("script");
25
-
26
- if (crossorigin) {
27
- script.crossorigin = crossorigin;
28
- }
29
-
30
- if (integrity) {
31
- script.integrity = integrity;
32
- }
33
-
34
- script.src = src;
35
- const scriptUrl = new URL(src, window.location).href;
36
- let lastWindowErrorUrl;
37
- let lastWindowError;
38
-
39
- const windowErrorCallback = e => {
40
- lastWindowErrorUrl = e.filename;
41
- lastWindowError = e.error;
42
- };
43
-
44
- const cleanup = () => {
45
- document.body.removeChild(script);
46
- window.removeEventListener("error", windowErrorCallback);
47
- };
48
-
49
- window.addEventListener("error", windowErrorCallback);
50
- script.addEventListener("error", () => {
51
- cleanup();
52
- reject(src);
53
- });
54
- script.addEventListener("load", () => {
55
- cleanup();
56
-
57
- if (lastWindowErrorUrl === scriptUrl) {
58
- reject(lastWindowError);
59
- } else {
60
- resolve();
61
- }
62
- });
63
- document.body.appendChild(script);
64
- });
65
- }
66
- });
67
- },
68
- superviseScriptTypeModule: () => {
69
- throw new Error("htmlSupervisor not installed");
70
- },
71
- getScriptExecutionResults: () => {
72
- // wait for page to load before collecting script execution results
73
- const htmlReadyPromise = new Promise(resolve => {
74
- if (document.readyState === "complete") {
75
- resolve();
76
- return;
77
- }
78
-
79
- const loadCallback = () => {
80
- window.removeEventListener("load", loadCallback);
81
- resolve();
82
- };
83
-
84
- window.addEventListener("load", loadCallback);
85
- });
86
- return htmlReadyPromise.then(() => {
87
- return window.__html_supervisor__.collectScriptResults();
88
- });
89
- },
90
- collectScriptResults: () => {
91
- throw new Error("htmlSupervisor not installed");
92
- }
93
- };
94
-
95
- //# sourceMappingURL=html_supervisor_setup.js.map