@jsenv/core 26.0.1 → 27.0.0-alpha.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 (465) hide show
  1. package/main.js +17 -24
  2. package/package.json +35 -71
  3. package/readme.md +30 -37
  4. package/src/build/build.js +737 -0
  5. package/src/build/build_urls_generator.js +64 -0
  6. package/src/build/inject_version_mappings.js +62 -0
  7. package/src/build/plugins/bundle_js_module/jsenv_plugin_bundle_js_module.js +225 -0
  8. package/src/build/plugins/minify_html/jsenv_plugin_minify_html.js +30 -0
  9. package/src/build/plugins/minify_js/jsenv_plugin_minify_js.js +47 -0
  10. package/src/dev/plugins/autoreload/babel_plugin_metadata_import_meta_hot.js +98 -0
  11. package/src/dev/plugins/autoreload/client/autoreload_preference.js +11 -0
  12. package/src/dev/plugins/autoreload/client/event_source_client.js +186 -0
  13. package/src/{internal/dev_server/event_source_client → dev/plugins/autoreload/client}/event_source_connection.js +21 -25
  14. package/src/dev/plugins/autoreload/client/import_meta_hot.js +80 -0
  15. package/src/dev/plugins/autoreload/client/reload.js +101 -0
  16. package/src/dev/plugins/autoreload/client/url_helpers.js +20 -0
  17. package/src/dev/plugins/autoreload/html_hot_dependencies.js +156 -0
  18. package/src/dev/plugins/autoreload/jsenv_plugin_autoreload.js +374 -0
  19. package/src/dev/plugins/autoreload/sse_service.js +149 -0
  20. package/src/dev/plugins/explorer/client/explorer.html +607 -0
  21. package/src/{internal → dev/plugins/explorer/client}/jsenv.png +0 -0
  22. package/src/dev/plugins/explorer/jsenv_plugin_explorer.js +74 -0
  23. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/animation/toolbar_animation.js +0 -0
  24. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/eventsource/eventsource.css +2 -2
  25. package/src/dev/plugins/toolbar/client/eventsource/toolbar_eventsource.js +57 -0
  26. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/execution/execution.css +0 -0
  27. package/src/dev/plugins/toolbar/client/execution/toolbar_execution.js +88 -0
  28. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/focus/focus.css +0 -0
  29. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/focus/toolbar_focus.js +0 -0
  30. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/jsenv_logo.svg +0 -0
  31. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/notification/toolbar_notification.js +0 -0
  32. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/responsive/overflow_menu.css +0 -0
  33. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/responsive/toolbar_responsive.js +0 -0
  34. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/settings/settings.css +0 -0
  35. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/settings/toolbar_settings.js +1 -0
  36. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/jsenv_theme.css +1 -15
  37. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/light_theme.css +0 -17
  38. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/theme/toolbar_theme.js +0 -0
  39. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar.html +40 -199
  40. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_injector.js +8 -28
  41. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_main.css +0 -24
  42. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/toolbar_main.js +10 -56
  43. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/tooltip/tooltip.css +1 -1
  44. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/tooltip/tooltip.js +0 -0
  45. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/animation.js +0 -0
  46. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/dom.js +0 -0
  47. package/src/{internal/browser_utils → dev/plugins/toolbar/client/util}/fetch_using_xhr.js +0 -0
  48. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/fetching.js +2 -4
  49. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/iframe_to_parent_href.js +0 -0
  50. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/jsenv_logger.js +0 -0
  51. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/preferences.js +0 -0
  52. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/responsive.js +0 -0
  53. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/util/util.js +0 -0
  54. package/src/{internal/dev_server/toolbar → dev/plugins/toolbar/client}/variant/variant.js +0 -0
  55. package/src/dev/plugins/toolbar/jsenv_plugin_toolbar.js +62 -0
  56. package/src/dev/start_dev_server.js +105 -0
  57. package/src/execute/execute.js +132 -0
  58. package/src/execute/run.js +208 -0
  59. package/src/execute/runtimes/browsers/chromium.js +8 -0
  60. package/src/execute/runtimes/browsers/firefox.js +7 -0
  61. package/src/execute/runtimes/browsers/from_playwright.js +464 -0
  62. package/src/{browser_runtimes.js → execute/runtimes/browsers/webkit.js} +4 -18
  63. package/src/{internal/node_launcher/child_process_options.js → execute/runtimes/node/child_exec_options.js} +25 -36
  64. package/src/{internal/node_launcher/node_controllable_file.mjs → execute/runtimes/node/controllable_file.mjs} +1 -18
  65. package/src/{internal/node_launcher/node_controllable_process.js → execute/runtimes/node/controlled_process.js} +128 -150
  66. package/src/execute/runtimes/node/exec_options.js +44 -0
  67. package/src/{internal/node_launcher → execute/runtimes/node}/kill_process_tree.js +3 -1
  68. package/src/execute/runtimes/node/node_process.js +92 -0
  69. package/src/execute/runtimes/node/node_worker_thread.js +28 -0
  70. package/src/omega/core_plugins/babel/babel_helper/babel_helper_directory.js +29 -0
  71. package/src/{internal/compile_server/js → omega/core_plugins/babel/babel_helper}/babel_plugin_babel_helpers_as_jsenv_imports.js +15 -19
  72. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/.eslintrc.cjs +0 -0
  73. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/AsyncGenerator/AsyncGenerator.js +0 -0
  74. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/AwaitValue/AwaitValue.js +0 -0
  75. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/applyDecoratorDescriptor/applyDecoratorDescriptor.js +0 -0
  76. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayLikeToArray/arrayLikeToArray.js +0 -0
  77. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayWithHoles/arrayWithHoles.js +0 -0
  78. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/arrayWithoutHoles/arrayWithoutHoles.js +0 -0
  79. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/assertThisInitialized/assertThisInitialized.js +0 -0
  80. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncGeneratorDelegate/asyncGeneratorDelegate.js +0 -0
  81. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncIterator/asyncIterator.js +0 -0
  82. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/asyncToGenerator/asyncToGenerator.js +0 -0
  83. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/awaitAsyncGenerator/awaitAsyncGenerator.js +0 -0
  84. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorDestructureSet/classApplyDescriptorDestructureSet.js +0 -0
  85. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorGet/classApplyDescriptorGet.js +0 -0
  86. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classApplyDescriptorSet/classApplyDescriptorSet.js +0 -0
  87. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCallCheck/classCallCheck.js +0 -0
  88. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCheckPrivateStaticAccess/classCheckPrivateStaticAccess.js +0 -0
  89. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classCheckPrivateStaticFieldDescriptor/classCheckPrivateStaticFieldDescriptor.js +0 -0
  90. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classExtractFieldDescriptor/classExtractFieldDescriptor.js +0 -0
  91. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classNameTDZError/classNameTDZError.js +0 -0
  92. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldDestructureSet/classPrivateFieldDestructureSet.js +0 -0
  93. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldGet/classPrivateFieldGet.js +0 -0
  94. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldLooseBase/classPrivateFieldLooseBase.js +0 -0
  95. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldLooseKey/classPrivateFieldLooseKey.js +0 -0
  96. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateFieldSet/classPrivateFieldSet.js +0 -0
  97. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateMethodGet/classPrivateMethodGet.js +0 -0
  98. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classPrivateMethodSet/classPrivateMethodSet.js +0 -0
  99. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateFieldSpecGet/classStaticPrivateFieldSpecGet.js +0 -0
  100. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateFieldSpecSet/classStaticPrivateFieldSpecSet.js +0 -0
  101. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateMethodGet/classStaticPrivateMethodGet.js +0 -0
  102. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/classStaticPrivateMethodSet/classStaticPrivateMethodSet.js +0 -0
  103. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/construct/construct.js +0 -0
  104. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createClass/createClass.js +0 -0
  105. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createForOfIteratorHelper/createForOfIteratorHelper.js +0 -0
  106. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createForOfIteratorHelperLoose/createForOfIteratorHelperLoose.js +0 -0
  107. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createRawReactElement/createRawReactElement.js +0 -0
  108. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/createSuper/createSuper.js +0 -0
  109. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/decorate/decorate.js +0 -0
  110. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defaults/defaults.js +0 -0
  111. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defineEnumerableProperties/defineEnumerableProperties.js +0 -0
  112. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/defineProperty/defineProperty.js +0 -0
  113. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/extends/extends.js +0 -0
  114. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/get/get.js +0 -0
  115. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/getPrototypeOf/getPrototypeOf.js +0 -0
  116. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/inherits/inherits.js +0 -0
  117. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/inheritsLoose/inheritsLoose.js +0 -0
  118. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/initializerDefineProperty/initializerDefineProperty.js +0 -0
  119. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/initializerWarningHelper/initializerWarningHelper.js +0 -0
  120. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/instanceof/instanceof.js +0 -0
  121. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/interopRequireDefault/interopRequireDefault.js +0 -0
  122. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/interopRequireWildcard/interopRequireWildcard.js +0 -0
  123. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/isNativeFunction/isNativeFunction.js +0 -0
  124. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/isNativeReflectConstruct/isNativeReflectConstruct.js +0 -0
  125. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArray/iterableToArray.js +0 -0
  126. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArrayLimit/iterableToArrayLimit.js +0 -0
  127. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/iterableToArrayLimitLoose/iterableToArrayLimitLoose.js +0 -0
  128. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/jsx/jsx.js +0 -0
  129. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/maybeArrayLike/maybeArrayLike.js +0 -0
  130. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/newArrowCheck/newArrowCheck.js +0 -0
  131. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/nonIterableRest/nonIterableRest.js +0 -0
  132. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/nonIterableSpread/nonIterableSpread.js +0 -0
  133. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectDestructuringEmpty/objectDestructuringEmpty.js +0 -0
  134. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectSpread/objectSpread.js +0 -0
  135. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectSpread2/objectSpread2.js +0 -0
  136. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectWithoutProperties/objectWithoutProperties.js +0 -0
  137. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js +0 -0
  138. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/possibleConstructorReturn/possibleConstructorReturn.js +0 -0
  139. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/readOnlyError/readOnlyError.js +0 -0
  140. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/readme.md +0 -0
  141. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/set/set.js +0 -0
  142. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/setPrototypeOf/setPrototypeOf.js +0 -0
  143. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/skipFirstGeneratorNext/skipFirstGeneratorNext.js +0 -0
  144. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/slicedToArray/slicedToArray.js +0 -0
  145. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/slicedToArrayLoose/slicedToArrayLoose.js +0 -0
  146. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/superPropBase/superPropBase.js +0 -0
  147. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/taggedTemplateLiteral/taggedTemplateLiteral.js +0 -0
  148. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/taggedTemplateLiteralLoose/taggedTemplateLiteralLoose.js +0 -0
  149. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/tdz/tdz.js +0 -0
  150. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/temporalRef/temporalRef.js +0 -0
  151. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/temporalUndefined/temporalUndefined.js +0 -0
  152. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toArray/toArray.js +0 -0
  153. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toConsumableArray/toConsumableArray.js +0 -0
  154. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toPrimitive/toPrimitive.js +0 -0
  155. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/toPropertyKey/toPropertyKey.js +0 -0
  156. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/typeof/typeof.js +0 -0
  157. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/unsupportedIterableToArray/unsupportedIterableToArray.js +0 -0
  158. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapAsyncGenerator/wrapAsyncGenerator.js +0 -0
  159. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapNativeSuper/wrapNativeSuper.js +0 -0
  160. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/wrapRegExp/wrapRegExp.js +0 -0
  161. package/{helpers/babel → src/omega/core_plugins/babel/babel_helper/client}/writeOnlyError/writeOnlyError.js +0 -0
  162. package/src/omega/core_plugins/babel/global_this/babel_plugin_global_this_as_jsenv_import.js +35 -0
  163. package/{helpers/global-this/global-this.js → src/omega/core_plugins/babel/global_this/client/global_this.js} +0 -0
  164. package/src/omega/core_plugins/babel/helpers/babel_plugin_structure.js +187 -0
  165. package/src/{internal/features → omega/core_plugins/babel/helpers}/babel_plugins_compatibility.js +1 -24
  166. package/src/omega/core_plugins/babel/jsenv_plugin_babel.js +97 -0
  167. package/src/omega/core_plugins/babel/new_stylesheet/babel_plugin_new_stylesheet_as_jsenv_import.js +117 -0
  168. package/src/omega/core_plugins/babel/new_stylesheet/client/.eslintrc.cjs +24 -0
  169. package/{helpers/new_stylesheet → src/omega/core_plugins/babel/new_stylesheet/client}/new_stylesheet.js +0 -0
  170. package/src/omega/core_plugins/babel/regenerator_runtime/babel_plugin_regenerator_runtime_as_jsenv_import.js +34 -0
  171. package/{helpers/regenerator-runtime/regenerator-runtime.js → src/omega/core_plugins/babel/regenerator_runtime/client/regenerator_runtime.js} +0 -0
  172. package/src/omega/core_plugins/commonjs_globals/jsenv_plugin_commonjs_globals.js +169 -0
  173. package/src/omega/core_plugins/file_urls/jsenv_plugin_file_urls.js +67 -0
  174. package/src/omega/core_plugins/filesystem_magic/jsenv_plugin_filesystem_magic.js +58 -0
  175. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/error_in_document.js +10 -16
  176. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/error_in_notification.js +0 -0
  177. package/src/omega/core_plugins/html_supervisor/client/html_supervisor_installer.js +168 -0
  178. package/src/omega/core_plugins/html_supervisor/client/html_supervisor_setup.js +77 -0
  179. package/src/{internal/browser_client → omega/core_plugins/html_supervisor/client}/perf_browser.js +0 -0
  180. package/src/{internal/runtime_client → omega/core_plugins/html_supervisor/client}/uneval_exception.js +0 -0
  181. package/src/omega/core_plugins/html_supervisor/jsenv_plugin_html_supervisor.js +233 -0
  182. package/src/omega/core_plugins/import_assertions/helpers/babel_plugin_metadata_import_assertions.js +98 -0
  183. package/src/{internal/building/import_assertions → omega/core_plugins/import_assertions/helpers}/json_module.js +3 -2
  184. package/src/omega/core_plugins/import_assertions/helpers/text_module.js +6 -0
  185. package/src/omega/core_plugins/import_assertions/jsenv_plugin_import_assertions.js +211 -0
  186. package/src/omega/core_plugins/import_meta_scenarios/jsenv_plugin_import_meta_scenarios.js +80 -0
  187. package/src/omega/core_plugins/importmap/jsenv_plugin_importmap.js +212 -0
  188. package/src/omega/core_plugins/inline/client/inline_content.js +6 -0
  189. package/src/omega/core_plugins/inline/jsenv_plugin_data_urls.js +70 -0
  190. package/src/omega/core_plugins/inline/jsenv_plugin_inline.js +13 -0
  191. package/src/omega/core_plugins/inline/jsenv_plugin_inline_query_param.js +42 -0
  192. package/src/omega/core_plugins/inline/jsenv_plugin_js_and_css_inside_html.js +142 -0
  193. package/src/omega/core_plugins/inline/jsenv_plugin_new_inline_content.js +210 -0
  194. package/src/omega/core_plugins/leading_slash/jsenv_plugin_leading_slash.js +12 -0
  195. package/src/omega/core_plugins/node_esm_resolution/jsenv_plugin_node_esm_resolution.js +77 -0
  196. package/src/omega/core_plugins/url_resolution/jsenv_plugin_url_resolution.js +28 -0
  197. package/src/omega/core_plugins/url_version/jsenv_plugin_url_version.js +50 -0
  198. package/src/omega/core_plugins.js +39 -0
  199. package/src/omega/errors.js +168 -0
  200. package/src/omega/file_url_converter.js +63 -0
  201. package/src/omega/kitchen.js +777 -0
  202. package/src/omega/omega_server.js +129 -0
  203. package/src/omega/plugin_controller.js +240 -0
  204. package/src/omega/runtime_support/default_runtime_support.js +13 -0
  205. package/src/omega/runtime_support/features_compatibility.js +91 -0
  206. package/src/omega/runtime_support/runtime_support.js +20 -0
  207. package/src/omega/server/file_service.js +155 -0
  208. package/src/omega/server/user_agent.js +22 -0
  209. package/src/omega/url_graph/url_graph_load.js +68 -0
  210. package/src/omega/url_graph/url_graph_report.js +151 -0
  211. package/src/omega/url_graph/url_graph_sort.js +29 -0
  212. package/src/omega/url_graph/url_info_transformations.js +161 -0
  213. package/src/omega/url_graph.js +132 -0
  214. package/src/omega/url_mentions/css_url_mentions.js +63 -0
  215. package/src/omega/url_mentions/html_url_mentions.js +185 -0
  216. package/src/omega/url_mentions/js_module_url_mentions.js +91 -0
  217. package/src/omega/url_mentions/parse_url_mentions.js +37 -0
  218. package/src/omega/url_mentions/worker_classic_url_mentions.js +37 -0
  219. package/src/{internal/executing → test}/execute_plan.js +154 -211
  220. package/src/{execute_test_plan.js → test/execute_test_plan.js} +26 -81
  221. package/src/{internal/executing → test}/execution_colors.js +0 -0
  222. package/src/{internal/executing → test}/execution_steps.js +2 -8
  223. package/src/{internal/executing → test}/gc.js +0 -0
  224. package/src/test/logs_file_execution.js +223 -0
  225. package/dist/browser_client/asset-manifest.json +0 -4
  226. package/dist/browser_client/browser_client_fb33eaa4.js +0 -5320
  227. package/dist/browser_client/browser_client_fb33eaa4.js.map +0 -1089
  228. package/dist/build_manifest.js +0 -12
  229. package/dist/compile_proxy/asset-manifest.json +0 -4
  230. package/dist/compile_proxy/compile_proxy.html__inline__20_651d1e7b.js.map +0 -343
  231. package/dist/compile_proxy/compile_proxy_62f952c4.html +0 -2245
  232. package/dist/event_source_client/asset-manifest.json +0 -4
  233. package/dist/event_source_client/event_source_client_69f48287.js +0 -354
  234. package/dist/event_source_client/event_source_client_69f48287.js.map +0 -128
  235. package/dist/redirector/asset-manifest.json +0 -4
  236. package/dist/redirector/redirector.html__inline__12_171e07b4.js.map +0 -349
  237. package/dist/redirector/redirector_8117ec92.html +0 -2290
  238. package/dist/toolbar/asset-manifest.json +0 -13
  239. package/dist/toolbar/assets/compilation.css_7421bd55.map +0 -12
  240. package/dist/toolbar/assets/eventsource.css_c0c71e7b.map +0 -12
  241. package/dist/toolbar/assets/execution.css_f3377c10.map +0 -12
  242. package/dist/toolbar/assets/focus.css_896f3e45.map +0 -12
  243. package/dist/toolbar/assets/light_theme.css_5bff0336.map +0 -12
  244. package/dist/toolbar/assets/overflow_menu.css_9a0fc3d8.map +0 -12
  245. package/dist/toolbar/assets/settings.css_942b5a9e.map +0 -12
  246. package/dist/toolbar/assets/toolbar_main.css_b1c67dd7.map +0 -28
  247. package/dist/toolbar/assets/tooltip.css_a94a8bdd.map +0 -12
  248. package/dist/toolbar/toolbar_b0c9100c.html +0 -4976
  249. package/dist/toolbar/toolbar_main_f54c1bb0.js.map +0 -776
  250. package/dist/toolbar_injector/asset-manifest.json +0 -5
  251. package/dist/toolbar_injector/assets/jsenv_logo_192011c2.svg +0 -95
  252. package/dist/toolbar_injector/toolbar_injector_65b501eb.js +0 -976
  253. package/dist/toolbar_injector/toolbar_injector_65b501eb.js.map +0 -294
  254. package/helpers/import-meta/import-meta-url-commonjs.js +0 -9
  255. package/helpers/import-meta/import-meta-url-global.js +0 -54
  256. package/src/build_project.js +0 -336
  257. package/src/commonjs_to_js_module.js +0 -180
  258. package/src/dev_server.js +0 -302
  259. package/src/execute.js +0 -184
  260. package/src/import_using_child_process.js +0 -68
  261. package/src/internal/browser_client/browser_client.js +0 -220
  262. package/src/internal/browser_client/browser_client_factory.js +0 -144
  263. package/src/internal/browser_client/browser_error_stack_remap.js +0 -43
  264. package/src/internal/browser_client/browser_system.js +0 -216
  265. package/src/internal/browser_client/module_namespace_transfer.js +0 -90
  266. package/src/internal/browser_detection/browser_detection.js +0 -65
  267. package/src/internal/browser_detection/detect_android.js +0 -13
  268. package/src/internal/browser_detection/detect_chrome.js +0 -28
  269. package/src/internal/browser_detection/detect_edge.js +0 -13
  270. package/src/internal/browser_detection/detect_electron.js +0 -1
  271. package/src/internal/browser_detection/detect_firefox.js +0 -17
  272. package/src/internal/browser_detection/detect_internet_explorer.js +0 -14
  273. package/src/internal/browser_detection/detect_ios.js +0 -19
  274. package/src/internal/browser_detection/detect_opera.js +0 -27
  275. package/src/internal/browser_detection/detect_safari.js +0 -13
  276. package/src/internal/browser_detection/user_agent_data.js +0 -25
  277. package/src/internal/browser_detection/util.js +0 -13
  278. package/src/internal/browser_launcher/browser_runtime_profile.js +0 -81
  279. package/src/internal/browser_launcher/execute_html_file.js +0 -355
  280. package/src/internal/browser_launcher/from_playwright.js +0 -320
  281. package/src/internal/browser_launcher/page_errors_and_logs.js +0 -77
  282. package/src/internal/browser_utils/fetch_and_eval.js +0 -27
  283. package/src/internal/browser_utils/fetch_and_eval_using_script.js +0 -47
  284. package/src/internal/browser_utils/fetch_browser.js +0 -34
  285. package/src/internal/browser_utils/fetch_json.js +0 -7
  286. package/src/internal/building/build_logs.js +0 -134
  287. package/src/internal/building/build_stats.js +0 -100
  288. package/src/internal/building/build_url_generator.js +0 -153
  289. package/src/internal/building/build_using_rollup.js +0 -359
  290. package/src/internal/building/css/apply_post_css.js +0 -55
  291. package/src/internal/building/css/jsenv_parse_css.js +0 -260
  292. package/src/internal/building/css/move_css_urls.js +0 -44
  293. package/src/internal/building/css/parse_css_urls.js +0 -38
  294. package/src/internal/building/css/postcss_plugin_url_visitor.js +0 -245
  295. package/src/internal/building/css/replace_css_urls.js +0 -68
  296. package/src/internal/building/global_format/es_to_system.js +0 -34
  297. package/src/internal/building/html/html_node_mutations.js +0 -29
  298. package/src/internal/building/html/html_scan.js +0 -70
  299. package/src/internal/building/html/jsenv_parse_html.js +0 -813
  300. package/src/internal/building/html/minify_html.js +0 -7
  301. package/src/internal/building/import_assertions/css_module.js +0 -43
  302. package/src/internal/building/import_references.js +0 -80
  303. package/src/internal/building/importmap/jsenv_parse_importmap.js +0 -28
  304. package/src/internal/building/js/babel_plugin_inline_worker_imports.js +0 -96
  305. package/src/internal/building/js/jsenv_parse_js.js +0 -122
  306. package/src/internal/building/js/minify_js.js +0 -33
  307. package/src/internal/building/js/transform_worker.js +0 -55
  308. package/src/internal/building/json/jsenv_parse_json.js +0 -11
  309. package/src/internal/building/parse_ressource.js +0 -207
  310. package/src/internal/building/ressource_builder.js +0 -1098
  311. package/src/internal/building/ressource_builder_util.js +0 -194
  312. package/src/internal/building/rollup_plugin_jsenv.js +0 -1965
  313. package/src/internal/building/sort_pathnames.js +0 -10
  314. package/src/internal/building/sourcemap/sourcemap_loader.js +0 -70
  315. package/src/internal/building/svg/jsenv_parse_svg.js +0 -112
  316. package/src/internal/building/url_fetcher.js +0 -85
  317. package/src/internal/building/url_loader.js +0 -127
  318. package/src/internal/building/url_trace.js +0 -229
  319. package/src/internal/building/url_versioning/resolve_import_url_helper.js +0 -12
  320. package/src/internal/building/url_versioning/url_versioning.js +0 -65
  321. package/src/internal/building/webmanifest/jsenv_parse_webmanifest.js +0 -48
  322. package/src/internal/compile_server/commonjs/rollup_plugin_commonjs_named_exports.js +0 -187
  323. package/src/internal/compile_server/compile_file.js +0 -273
  324. package/src/internal/compile_server/compile_server.js +0 -519
  325. package/src/internal/compile_server/compiled_file_service.js +0 -264
  326. package/src/internal/compile_server/html/html_ast.js +0 -534
  327. package/src/internal/compile_server/html/html_source_file_service.js +0 -453
  328. package/src/internal/compile_server/html/jsenv_compile_html.js +0 -674
  329. package/src/internal/compile_server/importmap/jsenv_compile_importmap.js +0 -28
  330. package/src/internal/compile_server/js/ansi_to_html.js +0 -9
  331. package/src/internal/compile_server/js/babelHelper.js +0 -145
  332. package/src/internal/compile_server/js/babel_parse_error.js +0 -9
  333. package/src/internal/compile_server/js/babel_plugin_global_this_as_jsenv_import.js +0 -34
  334. package/src/internal/compile_server/js/babel_plugin_import_assertions.js +0 -121
  335. package/src/internal/compile_server/js/babel_plugin_import_metadata.js +0 -18
  336. package/src/internal/compile_server/js/babel_plugin_import_visitor.js +0 -84
  337. package/src/internal/compile_server/js/babel_plugin_new_stylesheet_as_jsenv_import.js +0 -113
  338. package/src/internal/compile_server/js/babel_plugin_proxy_external_imports.js +0 -31
  339. package/src/internal/compile_server/js/babel_plugin_regenerator_runtime_as_jsenv_import.js +0 -48
  340. package/src/internal/compile_server/js/babel_plugin_replace_expressions.js +0 -101
  341. package/src/internal/compile_server/js/babel_plugin_systemjs_prepend.js +0 -23
  342. package/src/internal/compile_server/js/babel_plugin_transform_import_meta.js +0 -134
  343. package/src/internal/compile_server/js/babel_plugins.js +0 -37
  344. package/src/internal/compile_server/js/generateBabelHelper.js +0 -36
  345. package/src/internal/compile_server/js/js_transformer.js +0 -195
  346. package/src/internal/compile_server/js/jsenv_compile_js.js +0 -62
  347. package/src/internal/compile_server/js/load_babel_plugin_map_from_file.js +0 -49
  348. package/src/internal/compile_server/jsenv_directory/comparison_utils.js +0 -27
  349. package/src/internal/compile_server/jsenv_directory/compilation_result.js +0 -243
  350. package/src/internal/compile_server/jsenv_directory/compilation_result_from_build.js +0 -184
  351. package/src/internal/compile_server/jsenv_directory/compile_asset.js +0 -24
  352. package/src/internal/compile_server/jsenv_directory/compile_context.js +0 -60
  353. package/src/internal/compile_server/jsenv_directory/compile_profile.js +0 -217
  354. package/src/internal/compile_server/jsenv_directory/file_lock_registry.js +0 -24
  355. package/src/internal/compile_server/jsenv_directory/file_lock_registry.test.js +0 -47
  356. package/src/internal/compile_server/jsenv_directory/fs_optimized_for_cache.js +0 -57
  357. package/src/internal/compile_server/jsenv_directory/jsenv_directory.js +0 -183
  358. package/src/internal/compile_server/jsenv_directory/reuse_or_create_compiled_file.js +0 -269
  359. package/src/internal/compile_server/jsenv_directory/update_compile_cache.js +0 -131
  360. package/src/internal/compile_server/jsenv_directory/validate_compile_cache.js +0 -264
  361. package/src/internal/compile_server/sse_service/sse_service.js +0 -369
  362. package/src/internal/coverage/babel_plugin_instrument.js +0 -90
  363. package/src/internal/coverage/coverage_reporter_html_directory.js +0 -37
  364. package/src/internal/coverage/coverage_reporter_json_file.js +0 -22
  365. package/src/internal/coverage/coverage_reporter_text_log.js +0 -20
  366. package/src/internal/coverage/empty_coverage_factory.js +0 -70
  367. package/src/internal/coverage/file_by_file_coverage.js +0 -28
  368. package/src/internal/coverage/istanbul_coverage_composition.js +0 -28
  369. package/src/internal/coverage/istanbul_coverage_map_from_coverage.js +0 -16
  370. package/src/internal/coverage/list_files_not_covered.js +0 -20
  371. package/src/internal/coverage/missing_coverage.js +0 -46
  372. package/src/internal/coverage/report_to_coverage.js +0 -198
  373. package/src/internal/coverage/v8_and_istanbul.js +0 -38
  374. package/src/internal/coverage/v8_coverage_composition.js +0 -23
  375. package/src/internal/coverage/v8_coverage_from_directory.js +0 -86
  376. package/src/internal/coverage/v8_coverage_to_istanbul.js +0 -100
  377. package/src/internal/data_url.js +0 -54
  378. package/src/internal/dev_server/event_source_client/event_source_client.js +0 -63
  379. package/src/internal/dev_server/event_source_client/file_changes.js +0 -82
  380. package/src/internal/dev_server/event_source_client/livereload_preference.js +0 -13
  381. package/src/internal/dev_server/exploring/exploring.css +0 -237
  382. package/src/internal/dev_server/exploring/exploring.html +0 -79
  383. package/src/internal/dev_server/exploring/exploring.js +0 -243
  384. package/src/internal/dev_server/exploring/fetch_exploring_json.js +0 -19
  385. package/src/internal/dev_server/toolbar/compilation/compilation.css +0 -23
  386. package/src/internal/dev_server/toolbar/compilation/toolbar_compilation.js +0 -202
  387. package/src/internal/dev_server/toolbar/eventsource/toolbar_eventsource.js +0 -83
  388. package/src/internal/dev_server/toolbar/execution/toolbar_execution.js +0 -91
  389. package/src/internal/error_stack_remap/install_error_stack_remapping.js +0 -142
  390. package/src/internal/error_stack_remap/remap_call_site.js +0 -315
  391. package/src/internal/error_stack_remap/remap_stack.js +0 -218
  392. package/src/internal/error_stack_remap/stringify_stack.js +0 -9
  393. package/src/internal/executing/launch_and_execute.js +0 -458
  394. package/src/internal/executing/logs_file_execution.js +0 -160
  395. package/src/internal/executing/logs_plan_summary.js +0 -144
  396. package/src/internal/features/browser_feature_detection/browser_feature_detect_dynamic_import.js +0 -20
  397. package/src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_css.js +0 -23
  398. package/src/internal/features/browser_feature_detection/browser_feature_detect_import_assertions_json.js +0 -25
  399. package/src/internal/features/browser_feature_detection/browser_feature_detect_importmap.js +0 -37
  400. package/src/internal/features/browser_feature_detection/browser_feature_detect_new_stylesheet.js +0 -9
  401. package/src/internal/features/browser_feature_detection/browser_feature_detect_top_level_await.js +0 -14
  402. package/src/internal/features/browser_feature_detection/browser_feature_detection.js +0 -89
  403. package/src/internal/features/browser_feature_detection/compile_proxy.html +0 -27
  404. package/src/internal/features/browser_feature_detection/execute_with_script_module.js +0 -24
  405. package/src/internal/features/features_compat_from_runtime.js +0 -38
  406. package/src/internal/features/features_compat_from_runtime_support.js +0 -31
  407. package/src/internal/features/features_compatibility.js +0 -37
  408. package/src/internal/features/node_feature_detection/feature_detect_dynamic_import.mjs +0 -5
  409. package/src/internal/features/node_feature_detection/feature_detect_top_level_await.mjs +0 -1
  410. package/src/internal/features/node_feature_detection/node_feature_detect_dynamic_import.js +0 -5
  411. package/src/internal/features/node_feature_detection/node_feature_detect_top_level_await.js +0 -16
  412. package/src/internal/features/node_feature_detection/node_feature_detection.js +0 -66
  413. package/src/internal/fetching.js +0 -28
  414. package/src/internal/import_resolution/default_extension.js +0 -40
  415. package/src/internal/import_resolution/import_resolver_importmap.js +0 -64
  416. package/src/internal/import_resolution/import_resolver_node.js +0 -254
  417. package/src/internal/import_resolution/importmap_default.js +0 -37
  418. package/src/internal/jsenv_builds.js +0 -19
  419. package/src/internal/jsenv_params_assertions.js +0 -12
  420. package/src/internal/jsenv_remote_directory.js +0 -156
  421. package/src/internal/logs/byte.js +0 -10
  422. package/src/internal/logs/byte_as_file_size.js +0 -9
  423. package/src/internal/logs/ms_as_duration.js +0 -12
  424. package/src/internal/memoize.js +0 -24
  425. package/src/internal/node_launcher/eval_source.js +0 -6
  426. package/src/internal/node_launcher/fetch_source.js +0 -8
  427. package/src/internal/node_launcher/node_error_stack_remap.js +0 -22
  428. package/src/internal/node_launcher/node_execution_dynamic_import.js +0 -75
  429. package/src/internal/node_launcher/node_execution_performance.js +0 -67
  430. package/src/internal/node_launcher/node_execution_systemjs.js +0 -125
  431. package/src/internal/node_launcher/node_runtime_report.js +0 -77
  432. package/src/internal/node_launcher/node_system.js +0 -192
  433. package/src/internal/node_launcher/perf_node.js +0 -13
  434. package/src/internal/node_launcher/process_options.js +0 -46
  435. package/src/internal/node_launcher/value_install.js +0 -14
  436. package/src/internal/origin_directory_converter.js +0 -62
  437. package/src/internal/promise_race.js +0 -19
  438. package/src/internal/redirector/redirector.html +0 -40
  439. package/src/internal/regexp_escape.js +0 -34
  440. package/src/internal/require.js +0 -3
  441. package/src/internal/response_validation.js +0 -130
  442. package/src/internal/runtime_client/module_registration.js +0 -207
  443. package/src/internal/runtime_client/s.js +0 -864
  444. package/src/internal/runtime_client/s.js.md +0 -1
  445. package/src/internal/runtime_support/jsenv_runtime_support.js +0 -15
  446. package/src/internal/runtime_support/runtime_support.js +0 -70
  447. package/src/internal/semantic_versioning/compare_versions.js +0 -28
  448. package/src/internal/semantic_versioning/highest_version.js +0 -11
  449. package/src/internal/semantic_versioning/is_above.js +0 -5
  450. package/src/internal/semantic_versioning/is_below.js +0 -5
  451. package/src/internal/semantic_versioning/is_equal.js +0 -3
  452. package/src/internal/semantic_versioning/lowest_version.js +0 -11
  453. package/src/internal/semantic_versioning/version_from_value.js +0 -42
  454. package/src/internal/sourcemap_utils.js +0 -112
  455. package/src/internal/template_string_escape.js +0 -20
  456. package/src/internal/url_conversion.js +0 -313
  457. package/src/internal/url_utils.js +0 -33
  458. package/src/internal/url_utils.test.js +0 -39
  459. package/src/internal/windows_file_path_utils.js +0 -16
  460. package/src/jsenv_file_urls.js +0 -35
  461. package/src/jsenv_service_worker_finalizer.js +0 -55
  462. package/src/json_to_js_module.js +0 -13
  463. package/src/node_runtime.js +0 -227
  464. package/src/require_using_child_process.js +0 -67
  465. package/src/text_to_js_module.js +0 -13
@@ -1,1089 +0,0 @@
1
- {
2
- "version": 3,
3
- "file": "browser_client_fb33eaa4.js",
4
- "sources": [
5
- "../../helpers/babel/typeof/typeof.js",
6
- "../../helpers/babel/defineProperty/defineProperty.js",
7
- "../../helpers/babel/objectSpread2/objectSpread2.js",
8
- "../../helpers/babel/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js",
9
- "../../helpers/babel/objectWithoutProperties/objectWithoutProperties.js",
10
- "../../src/internal/browser_utils/fetch_using_xhr.js",
11
- "../../src/internal/browser_utils/fetch_browser.js",
12
- "../../node_modules/@jsenv/logger/src/createDetailedMessage.js",
13
- "../../src/internal/browser_utils/fetch_and_eval.js",
14
- "../../helpers/babel/arrayLikeToArray/arrayLikeToArray.js",
15
- "../../helpers/babel/arrayWithoutHoles/arrayWithoutHoles.js",
16
- "../../helpers/babel/iterableToArray/iterableToArray.js",
17
- "../../helpers/babel/unsupportedIterableToArray/unsupportedIterableToArray.js",
18
- "../../helpers/babel/nonIterableSpread/nonIterableSpread.js",
19
- "../../helpers/babel/toConsumableArray/toConsumableArray.js",
20
- "../../node_modules/@jsenv/uneval/src/internal/isComposite.js",
21
- "../../node_modules/@jsenv/uneval/src/internal/global-value-path.js",
22
- "../../node_modules/@jsenv/uneval/src/internal/decompose.js",
23
- "../../node_modules/@jsenv/uneval/src/internal/sortRecipe.js",
24
- "../../node_modules/@jsenv/uneval/src/internal/escapeString.js",
25
- "../../node_modules/@jsenv/uneval/src/uneval.js",
26
- "../../src/internal/runtime_client/uneval_exception.js",
27
- "../../src/internal/memoize.js",
28
- "../../node_modules/@jsenv/importmap/src/internal/assertImportMap.js",
29
- "../../node_modules/@jsenv/importmap/src/internal/hasScheme.js",
30
- "../../node_modules/@jsenv/importmap/src/internal/urlToScheme.js",
31
- "../../node_modules/@jsenv/importmap/src/internal/urlToPathname.js",
32
- "../../node_modules/@jsenv/importmap/src/internal/urlToOrigin.js",
33
- "../../node_modules/@jsenv/importmap/src/internal/pathnameToParentPathname.js",
34
- "../../node_modules/@jsenv/importmap/src/resolveUrl.js",
35
- "../../node_modules/@jsenv/importmap/src/internal/tryUrlResolution.js",
36
- "../../node_modules/@jsenv/importmap/src/resolveSpecifier.js",
37
- "../../node_modules/@jsenv/importmap/src/sortImportMap.js",
38
- "../../node_modules/@jsenv/importmap/src/normalizeImportMap.js",
39
- "../../node_modules/@jsenv/importmap/src/internal/pathnameToExtension.js",
40
- "../../node_modules/@jsenv/importmap/src/applyImportMap.js",
41
- "../../node_modules/@jsenv/importmap/src/resolveImport.js",
42
- "../../src/internal/runtime_client/module_registration.js",
43
- "../../src/internal/import_resolution/default_extension.js",
44
- "../../src/internal/import_resolution/import_resolver_importmap.js",
45
- "../../src/internal/runtime_client/s.js",
46
- "../../src/internal/browser_client/browser_system.js",
47
- "../../src/internal/browser_client/perf_browser.js",
48
- "../../src/internal/browser_client/module_namespace_transfer.js",
49
- "../../src/internal/browser_client/browser_client_factory.js",
50
- "../../src/internal/data_url.js",
51
- "../../src/internal/sourcemap_utils.js",
52
- "../../src/internal/windows_file_path_utils.js",
53
- "../../src/internal/error_stack_remap/remap_call_site.js",
54
- "../../src/internal/error_stack_remap/remap_stack.js",
55
- "../../src/internal/error_stack_remap/stringify_stack.js",
56
- "../../src/internal/error_stack_remap/install_error_stack_remapping.js",
57
- "../../src/internal/browser_client/browser_error_stack_remap.js",
58
- "../../src/internal/browser_client/error_in_document.js",
59
- "../../src/internal/browser_client/error_in_notification.js",
60
- "../../src/internal/browser_client/browser_client.js"
61
- ],
62
- "sourcesContent": [
63
- "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",
64
- "export default (obj, key, value) => {\n // Shortcircuit the slow defineProperty path when possible.\n // We are trying to avoid issues where setters defined on the\n // prototype cause side effects under the fast path of simple\n // assignment. By checking for existence of the property with\n // the in operator, we can optimize most of this overhead away.\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true,\n })\n } else {\n obj[key] = value\n }\n return obj\n}\n",
65
- "import defineProperty from \"../defineProperty/defineProperty.js\"\n\n// This function is different to \"Reflect.ownKeys\". The enumerableOnly\n// filters on symbol properties only. Returned string properties are always\n// enumerable. It is good to use in objectSpread.\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(\n target,\n key,\n Object.getOwnPropertyDescriptor(source, key)\n );\n });\n }\n }\n return target;\n}",
66
- "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",
67
- "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",
68
- "export 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 `error during xhr request on ${url}.\n--- error stack ---\n${error.stack}`,\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",
69
- "import { fetchUsingXHR } from \"./fetch_using_xhr.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",
70
- "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",
71
- "import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { fetchUrl } from \"./fetch_browser.js\"\n\nexport const fetchAndEval = async (url) => {\n const response = await fetchUrl(url)\n\n if (response.status >= 200 && response.status <= 299) {\n const text = await response.text()\n // eslint-disable-next-line no-eval\n window.eval(appendSourceURL(text, url))\n } else {\n const text = await response.text()\n throw new Error(\n createDetailedMessage(`Unexpected response for script.`, {\n [\"script url\"]: url,\n [\"response body\"]: text,\n [\"response status\"]: response.status,\n }),\n )\n }\n}\n\nconst appendSourceURL = (code, sourceURL) => {\n return `${code}\n${\"//#\"} sourceURL=${sourceURL}`\n}\n",
72
- "/* eslint-disable no-eq-null, eqeqeq */\nexport default function arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length\n var arr2 = new Array(len)\n for (var i = 0; i < len; i++) arr2[i] = arr[i]\n return arr2\n}\n",
73
- "import arrayLikeToArray from \"../arrayLikeToArray/arrayLikeToArray.js\"\n\n// eslint-disable-next-line consistent-return\nexport default (arr) => {\n if (Array.isArray(arr)) return arrayLikeToArray(arr)\n}\n",
74
- "export default function _iterableToArray(iter) {\n if (\n (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null) ||\n iter[\"@@iterator\"] != null\n )\n return Array.from(iter)\n}\n",
75
- "/* eslint-disable consistent-return */\nimport arrayLikeToArray from \"../arrayLikeToArray/arrayLikeToArray.js\"\n\nexport default function unsupportedIterableToArray(o, minLen) {\n if (!o) return\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen)\n var n = Object.prototype.toString.call(o).slice(8, -1)\n if (n === \"Object\" && o.constructor) n = o.constructor.name\n if (n === \"Map\" || n === \"Set\") return Array.from(o)\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))\n return arrayLikeToArray(o, minLen)\n}\n",
76
- "export default () => {\n throw new TypeError(\n \"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\",\n )\n}\n",
77
- "import arrayWithoutHoles from \"../arrayWithoutHoles/arrayWithoutHoles.js\"\nimport iterableToArray from \"../iterableToArray/iterableToArray.js\"\nimport unsupportedIterableToArray from \"../unsupportedIterableToArray/unsupportedIterableToArray.js\"\nimport nonIterableSpread from \"../nonIterableSpread/nonIterableSpread.js\"\n\nexport default (arr) =>\n arrayWithoutHoles(arr) ||\n iterableToArray(arr) ||\n unsupportedIterableToArray(arr) ||\n nonIterableSpread()\n",
78
- "// 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",
79
- "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",
80
- "/**\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",
81
- "// 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",
82
- "// 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",
83
- "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",
84
- "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",
85
- "export const memoize = (compute) => {\n let memoized = false\n let memoizedValue\n\n const fnWithMemoization = (...args) => {\n if (memoized) {\n return memoizedValue\n }\n // if compute is recursive wait for it to be fully done before storing the lockValue\n // so set locked later\n memoizedValue = compute(...args)\n memoized = true\n return memoizedValue\n }\n\n fnWithMemoization.forget = () => {\n const value = memoizedValue\n memoized = false\n memoizedValue = undefined\n return value\n }\n\n return fnWithMemoization\n}\n",
86
- "export const assertImportMap = (value) => {\n if (value === null) {\n throw new TypeError(`an importMap must be an object, got null`)\n }\n\n const type = typeof value\n if (type !== \"object\") {\n throw new TypeError(`an importMap must be an object, received ${value}`)\n }\n\n if (Array.isArray(value)) {\n throw new TypeError(\n `an importMap must be an object, received array ${value}`,\n )\n }\n}\n",
87
- "export const hasScheme = (string) => {\n return /^[a-zA-Z]{2,}:/.test(string)\n}\n",
88
- "export const urlToScheme = (urlString) => {\n const colonIndex = urlString.indexOf(\":\")\n if (colonIndex === -1) return \"\"\n return urlString.slice(0, colonIndex)\n}\n",
89
- "import { urlToScheme } from \"./urlToScheme.js\"\n\nexport const urlToPathname = (urlString) => {\n return ressourceToPathname(urlToRessource(urlString))\n}\n\nconst urlToRessource = (urlString) => {\n const scheme = urlToScheme(urlString)\n\n if (scheme === \"file\") {\n return urlString.slice(\"file://\".length)\n }\n\n if (scheme === \"https\" || scheme === \"http\") {\n // remove origin\n const afterProtocol = urlString.slice(scheme.length + \"://\".length)\n const pathnameSlashIndex = afterProtocol.indexOf(\"/\", \"://\".length)\n return afterProtocol.slice(pathnameSlashIndex)\n }\n\n return urlString.slice(scheme.length + 1)\n}\n\nconst ressourceToPathname = (ressource) => {\n const searchSeparatorIndex = ressource.indexOf(\"?\")\n return searchSeparatorIndex === -1\n ? ressource\n : ressource.slice(0, searchSeparatorIndex)\n}\n",
90
- "import { urlToScheme } from \"./urlToScheme.js\"\n\nexport const urlToOrigin = (urlString) => {\n const scheme = urlToScheme(urlString)\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 = urlString.indexOf(\"/\", secondProtocolSlashIndex)\n\n if (pathnameSlashIndex === -1) return urlString\n return urlString.slice(0, pathnameSlashIndex)\n }\n\n return urlString.slice(0, scheme.length + 1)\n}\n",
91
- "export const pathnameToParentPathname = (pathname) => {\n const slashLastIndex = pathname.lastIndexOf(\"/\")\n if (slashLastIndex === -1) {\n return \"/\"\n }\n\n return pathname.slice(0, slashLastIndex + 1)\n}\n",
92
- "// could be useful: https://url.spec.whatwg.org/#url-miscellaneous\n\nimport { urlToScheme } from \"./internal/urlToScheme.js\"\nimport { urlToPathname } from \"./internal/urlToPathname.js\"\nimport { urlToOrigin } from \"./internal/urlToOrigin.js\"\nimport { pathnameToParentPathname } from \"./internal/pathnameToParentPathname.js\"\nimport { hasScheme } from \"./internal/hasScheme.js\"\n\nexport const resolveUrl = (specifier, baseUrl) => {\n if (baseUrl) {\n if (typeof baseUrl !== \"string\") {\n throw new TypeError(writeBaseUrlMustBeAString({ baseUrl, specifier }))\n }\n if (!hasScheme(baseUrl)) {\n throw new Error(writeBaseUrlMustBeAbsolute({ baseUrl, specifier }))\n }\n }\n\n if (hasScheme(specifier)) {\n return specifier\n }\n\n if (!baseUrl) {\n throw new Error(writeBaseUrlRequired({ baseUrl, specifier }))\n }\n\n // scheme relative\n if (specifier.slice(0, 2) === \"//\") {\n return `${urlToScheme(baseUrl)}:${specifier}`\n }\n\n // origin relative\n if (specifier[0] === \"/\") {\n return `${urlToOrigin(baseUrl)}${specifier}`\n }\n\n const baseOrigin = urlToOrigin(baseUrl)\n const basePathname = urlToPathname(baseUrl)\n\n if (specifier === \".\") {\n const baseDirectoryPathname = pathnameToParentPathname(basePathname)\n return `${baseOrigin}${baseDirectoryPathname}`\n }\n\n // pathname relative inside\n if (specifier.slice(0, 2) === \"./\") {\n const baseDirectoryPathname = pathnameToParentPathname(basePathname)\n return `${baseOrigin}${baseDirectoryPathname}${specifier.slice(2)}`\n }\n\n // pathname relative outside\n if (specifier.slice(0, 3) === \"../\") {\n let unresolvedPathname = specifier\n const importerFolders = basePathname.split(\"/\")\n importerFolders.pop()\n\n while (unresolvedPathname.slice(0, 3) === \"../\") {\n unresolvedPathname = unresolvedPathname.slice(3)\n // when there is no folder left to resolved\n // we just ignore '../'\n if (importerFolders.length) {\n importerFolders.pop()\n }\n }\n\n const resolvedPathname = `${importerFolders.join(\n \"/\",\n )}/${unresolvedPathname}`\n return `${baseOrigin}${resolvedPathname}`\n }\n\n // bare\n if (basePathname === \"\") {\n return `${baseOrigin}/${specifier}`\n }\n if (basePathname[basePathname.length] === \"/\") {\n return `${baseOrigin}${basePathname}${specifier}`\n }\n return `${baseOrigin}${pathnameToParentPathname(basePathname)}${specifier}`\n}\n\nconst writeBaseUrlMustBeAString = ({\n baseUrl,\n specifier,\n}) => `baseUrl must be a string.\n--- base url ---\n${baseUrl}\n--- specifier ---\n${specifier}`\n\nconst writeBaseUrlMustBeAbsolute = ({\n baseUrl,\n specifier,\n}) => `baseUrl must be absolute.\n--- base url ---\n${baseUrl}\n--- specifier ---\n${specifier}`\n\nconst writeBaseUrlRequired = ({\n baseUrl,\n specifier,\n}) => `baseUrl required to resolve relative specifier.\n--- base url ---\n${baseUrl}\n--- specifier ---\n${specifier}`\n",
93
- "import { hasScheme } from \"./hasScheme.js\"\nimport { resolveUrl } from \"../resolveUrl.js\"\n\nexport const tryUrlResolution = (string, url) => {\n const result = resolveUrl(string, url)\n return hasScheme(result) ? result : null\n}\n",
94
- "import { hasScheme } from \"./internal/hasScheme.js\"\nimport { resolveUrl } from \"./resolveUrl.js\"\n\nexport const resolveSpecifier = (specifier, importer) => {\n if (\n specifier === \".\" ||\n specifier[0] === \"/\" ||\n specifier.startsWith(\"./\") ||\n specifier.startsWith(\"../\")\n ) {\n return resolveUrl(specifier, importer)\n }\n\n if (hasScheme(specifier)) {\n return specifier\n }\n\n return null\n}\n",
95
- "import { assertImportMap } from \"./internal/assertImportMap.js\"\n\nexport const sortImportMap = (importMap) => {\n assertImportMap(importMap)\n\n const { imports, scopes } = importMap\n\n return {\n ...(imports ? { imports: sortImports(imports) } : {}),\n ...(scopes ? { scopes: sortScopes(scopes) } : {}),\n }\n}\n\nexport const sortImports = (imports) => {\n const mappingsSorted = {}\n\n Object.keys(imports)\n .sort(compareLengthOrLocaleCompare)\n .forEach((name) => {\n mappingsSorted[name] = imports[name]\n })\n\n return mappingsSorted\n}\n\nexport const sortScopes = (scopes) => {\n const scopesSorted = {}\n\n Object.keys(scopes)\n .sort(compareLengthOrLocaleCompare)\n .forEach((scopeSpecifier) => {\n scopesSorted[scopeSpecifier] = sortImports(scopes[scopeSpecifier])\n })\n\n return scopesSorted\n}\n\nconst compareLengthOrLocaleCompare = (a, b) => {\n return b.length - a.length || a.localeCompare(b)\n}\n",
96
- "import { assertImportMap } from \"./internal/assertImportMap.js\"\nimport { tryUrlResolution } from \"./internal/tryUrlResolution.js\"\nimport { resolveSpecifier } from \"./resolveSpecifier.js\"\nimport { sortImports, sortScopes } from \"./sortImportMap.js\"\n\nexport const normalizeImportMap = (importMap, baseUrl) => {\n assertImportMap(importMap)\n\n if (!isStringOrUrl(baseUrl)) {\n throw new TypeError(formulateBaseUrlMustBeStringOrUrl({ baseUrl }))\n }\n\n const { imports, scopes } = importMap\n\n return {\n imports: imports ? normalizeMappings(imports, baseUrl) : undefined,\n scopes: scopes ? normalizeScopes(scopes, baseUrl) : undefined,\n }\n}\n\nconst isStringOrUrl = (value) => {\n if (typeof value === \"string\") {\n return true\n }\n\n if (typeof URL === \"function\" && value instanceof URL) {\n return true\n }\n\n return false\n}\n\nconst normalizeMappings = (mappings, baseUrl) => {\n const mappingsNormalized = {}\n\n Object.keys(mappings).forEach((specifier) => {\n const address = mappings[specifier]\n\n if (typeof address !== \"string\") {\n console.warn(\n formulateAddressMustBeAString({\n address,\n specifier,\n }),\n )\n return\n }\n\n const specifierResolved = resolveSpecifier(specifier, baseUrl) || specifier\n\n const addressUrl = tryUrlResolution(address, baseUrl)\n if (addressUrl === null) {\n console.warn(\n formulateAdressResolutionFailed({\n address,\n baseUrl,\n specifier,\n }),\n )\n return\n }\n\n if (specifier.endsWith(\"/\") && !addressUrl.endsWith(\"/\")) {\n console.warn(\n formulateAddressUrlRequiresTrailingSlash({\n addressUrl,\n address,\n specifier,\n }),\n )\n return\n }\n mappingsNormalized[specifierResolved] = addressUrl\n })\n\n return sortImports(mappingsNormalized)\n}\n\nconst normalizeScopes = (scopes, baseUrl) => {\n const scopesNormalized = {}\n\n Object.keys(scopes).forEach((scopeSpecifier) => {\n const scopeMappings = scopes[scopeSpecifier]\n const scopeUrl = tryUrlResolution(scopeSpecifier, baseUrl)\n if (scopeUrl === null) {\n console.warn(\n formulateScopeResolutionFailed({\n scope: scopeSpecifier,\n baseUrl,\n }),\n )\n return\n }\n const scopeValueNormalized = normalizeMappings(scopeMappings, baseUrl)\n scopesNormalized[scopeUrl] = scopeValueNormalized\n })\n\n return sortScopes(scopesNormalized)\n}\n\nconst formulateBaseUrlMustBeStringOrUrl = ({\n baseUrl,\n}) => `baseUrl must be a string or an url.\n--- base url ---\n${baseUrl}`\n\nconst formulateAddressMustBeAString = ({\n specifier,\n address,\n}) => `Address must be a string.\n--- address ---\n${address}\n--- specifier ---\n${specifier}`\n\nconst formulateAdressResolutionFailed = ({\n address,\n baseUrl,\n specifier,\n}) => `Address url resolution failed.\n--- address ---\n${address}\n--- base url ---\n${baseUrl}\n--- specifier ---\n${specifier}`\n\nconst formulateAddressUrlRequiresTrailingSlash = ({\n addressURL,\n address,\n specifier,\n}) => `Address must end with /.\n--- address url ---\n${addressURL}\n--- address ---\n${address}\n--- specifier ---\n${specifier}`\n\nconst formulateScopeResolutionFailed = ({\n scope,\n baseUrl,\n}) => `Scope url resolution failed.\n--- scope ---\n${scope}\n--- base url ---\n${baseUrl}`\n",
97
- "export const pathnameToExtension = (pathname) => {\n const slashLastIndex = pathname.lastIndexOf(\"/\")\n if (slashLastIndex !== -1) {\n pathname = pathname.slice(slashLastIndex + 1)\n }\n\n const dotLastIndex = pathname.lastIndexOf(\".\")\n if (dotLastIndex === -1) return \"\"\n // if (dotLastIndex === pathname.length - 1) return \"\"\n return pathname.slice(dotLastIndex)\n}\n",
98
- "import { createDetailedMessage } from \"@jsenv/logger\"\nimport { assertImportMap } from \"./internal/assertImportMap.js\"\nimport { hasScheme } from \"./internal/hasScheme.js\"\nimport { tryUrlResolution } from \"./internal/tryUrlResolution.js\"\nimport { resolveSpecifier } from \"./resolveSpecifier.js\"\n\nexport const applyImportMap = ({\n importMap,\n specifier,\n importer,\n createBareSpecifierError = ({ specifier, importer }) => {\n return new Error(\n createDetailedMessage(`Unmapped bare specifier.`, {\n specifier,\n importer,\n }),\n )\n },\n onImportMapping = () => {},\n}) => {\n assertImportMap(importMap)\n if (typeof specifier !== \"string\") {\n throw new TypeError(\n createDetailedMessage(\"specifier must be a string.\", {\n specifier,\n importer,\n }),\n )\n }\n if (importer) {\n if (typeof importer !== \"string\") {\n throw new TypeError(\n createDetailedMessage(\"importer must be a string.\", {\n importer,\n specifier,\n }),\n )\n }\n if (!hasScheme(importer)) {\n throw new Error(\n createDetailedMessage(`importer must be an absolute url.`, {\n importer,\n specifier,\n }),\n )\n }\n }\n\n const specifierUrl = resolveSpecifier(specifier, importer)\n const specifierNormalized = specifierUrl || specifier\n\n const { scopes } = importMap\n if (scopes && importer) {\n const scopeSpecifierMatching = Object.keys(scopes).find(\n (scopeSpecifier) => {\n return (\n scopeSpecifier === importer ||\n specifierIsPrefixOf(scopeSpecifier, importer)\n )\n },\n )\n if (scopeSpecifierMatching) {\n const scopeMappings = scopes[scopeSpecifierMatching]\n const mappingFromScopes = applyMappings(\n scopeMappings,\n specifierNormalized,\n scopeSpecifierMatching,\n onImportMapping,\n )\n if (mappingFromScopes !== null) {\n return mappingFromScopes\n }\n }\n }\n\n const { imports } = importMap\n if (imports) {\n const mappingFromImports = applyMappings(\n imports,\n specifierNormalized,\n undefined,\n onImportMapping,\n )\n if (mappingFromImports !== null) {\n return mappingFromImports\n }\n }\n\n if (specifierUrl) {\n return specifierUrl\n }\n\n throw createBareSpecifierError({ specifier, importer })\n}\n\nconst applyMappings = (\n mappings,\n specifierNormalized,\n scope,\n onImportMapping,\n) => {\n const specifierCandidates = Object.keys(mappings)\n\n let i = 0\n while (i < specifierCandidates.length) {\n const specifierCandidate = specifierCandidates[i]\n i++\n if (specifierCandidate === specifierNormalized) {\n const address = mappings[specifierCandidate]\n onImportMapping({\n scope,\n from: specifierCandidate,\n to: address,\n before: specifierNormalized,\n after: address,\n })\n return address\n }\n if (specifierIsPrefixOf(specifierCandidate, specifierNormalized)) {\n const address = mappings[specifierCandidate]\n const afterSpecifier = specifierNormalized.slice(\n specifierCandidate.length,\n )\n const addressFinal = tryUrlResolution(afterSpecifier, address)\n onImportMapping({\n scope,\n from: specifierCandidate,\n to: address,\n before: specifierNormalized,\n after: addressFinal,\n })\n return addressFinal\n }\n }\n\n return null\n}\n\nconst specifierIsPrefixOf = (specifierHref, href) => {\n return (\n specifierHref[specifierHref.length - 1] === \"/\" &&\n href.startsWith(specifierHref)\n )\n}\n",
99
- "import { urlToPathname } from \"./internal/urlToPathname.js\"\nimport { pathnameToExtension } from \"./internal/pathnameToExtension.js\"\nimport { resolveUrl } from \"./resolveUrl.js\"\nimport { applyImportMap } from \"./applyImportMap.js\"\n\nexport const resolveImport = ({\n specifier,\n importer,\n importMap,\n defaultExtension = false,\n createBareSpecifierError,\n onImportMapping = () => {},\n}) => {\n let url\n if (importMap) {\n url = applyImportMap({\n importMap,\n specifier,\n importer,\n createBareSpecifierError,\n onImportMapping,\n })\n } else {\n url = resolveUrl(specifier, importer)\n }\n\n if (defaultExtension) {\n url = applyDefaultExtension({ url, importer, defaultExtension })\n }\n\n return url\n}\n\nconst applyDefaultExtension = ({ url, importer, defaultExtension }) => {\n if (urlToPathname(url).endsWith(\"/\")) {\n return url\n }\n\n if (typeof defaultExtension === \"string\") {\n const extension = pathnameToExtension(url)\n if (extension === \"\") {\n return `${url}${defaultExtension}`\n }\n return url\n }\n\n if (defaultExtension === true) {\n const extension = pathnameToExtension(url)\n if (extension === \"\" && importer) {\n const importerPathname = urlToPathname(importer)\n const importerExtension = pathnameToExtension(importerPathname)\n return `${url}${importerExtension}`\n }\n }\n\n return url\n}\n",
100
- "import { createDetailedMessage } from \"@jsenv/logger\"\n\nexport const fromFunctionReturningNamespace = (fn, data) => {\n return fromFunctionReturningRegisteredModule(() => {\n // should we compute the namespace here\n // or as it is done below, defer to execute ?\n // I think defer to execute is better\n return [\n [],\n (_export) => {\n return {\n execute: () => {\n const namespace = fn()\n _export(namespace)\n },\n }\n },\n ]\n }, data)\n}\n\nexport const getJavaScriptModuleResponseError = async (\n response,\n {\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n jsonContentTypeAccepted,\n },\n) => {\n if (response.status === 404) {\n return new Error(\n createDetailedMessage(\n `JavaScript module file cannot be found`,\n getModuleDetails({\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n notFound: true,\n }),\n ),\n )\n }\n\n const contentType = response.headers[\"content-type\"] || \"\"\n if (response.status === 500 && contentType === \"application/json\") {\n const bodyAsJson = await response.json()\n if (\n bodyAsJson.message &&\n bodyAsJson.filename &&\n \"columnNumber\" in bodyAsJson\n ) {\n const error = new Error(\n createDetailedMessage(`JavaScript module file cannot be parsed`, {\n [\"parsing error message\"]: bodyAsJson.message,\n ...getModuleDetails({\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n }),\n }),\n )\n error.parsingError = bodyAsJson\n return error\n }\n }\n\n if (response.status < 200 || response.status >= 300) {\n return new Error(\n createDetailedMessage(\n `JavaScript module file response status is unexpected`,\n {\n [\"status\"]: response.status,\n [\"allowed status\"]: \"200 to 299\",\n [\"statusText\"]: response.statusText,\n ...getModuleDetails({\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n }),\n },\n ),\n )\n }\n\n if (\n jsonContentTypeAccepted &&\n (contentType === \"application/json\" || contentType.endsWith(\"+json\"))\n ) {\n return null\n }\n\n if (\n contentType !== \"application/javascript\" &&\n contentType !== \"text/javascript\"\n ) {\n return new Error(\n createDetailedMessage(\n `Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of \"${contentType}\". Strict MIME type checking is enforced for module scripts per HTML spec.`,\n {\n ...getModuleDetails({\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n }),\n suggestion: `Use import.meta.url or import assertions as documented in https://github.com/jsenv/jsenv-core/blob/master/docs/building/readme.md#How-to-reference-assets`,\n },\n ),\n )\n }\n\n return null\n}\n\nexport const fromFunctionReturningRegisteredModule = (fn, data) => {\n try {\n return fn()\n } catch (error) {\n if (error.name === \"SyntaxError\") {\n throw new Error(\n createDetailedMessage(`Syntax error in module.`, {\n \"syntax error stack\": error.stack,\n ...getModuleDetails(data),\n }),\n )\n }\n throw new Error(\n createDetailedMessage(`Module instantiation error.`, {\n [\"instantiation error stack\"]: error.stack,\n ...getModuleDetails(data),\n }),\n )\n }\n}\n\nexport const getModuleDetails = ({\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n notFound = false,\n}) => {\n const relativeUrl = tryToFindProjectRelativeUrl(url, {\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n })\n\n const importerRelativeUrl = tryToFindProjectRelativeUrl(importerUrl, {\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n })\n\n const details = notFound\n ? {\n ...(importerUrl\n ? { [\"import declared in\"]: importerRelativeUrl || importerUrl }\n : {}),\n ...(relativeUrl ? { file: relativeUrl } : {}),\n [\"file url\"]: url,\n }\n : {\n ...(relativeUrl ? { file: relativeUrl } : {}),\n [\"file url\"]: url,\n ...(importerUrl\n ? { [\"imported by\"]: importerRelativeUrl || importerUrl }\n : {}),\n }\n\n return details\n}\n\nexport const tryToFindProjectRelativeUrl = (\n url,\n { compileServerOrigin, compileDirectoryRelativeUrl },\n) => {\n if (!url) {\n return null\n }\n\n if (!url.startsWith(`${compileServerOrigin}/`)) {\n return null\n }\n\n if (url === compileServerOrigin) {\n return null\n }\n\n const afterOrigin = url.slice(`${compileServerOrigin}/`.length)\n if (!afterOrigin.startsWith(compileDirectoryRelativeUrl)) {\n return null\n }\n\n const afterCompileDirectory = afterOrigin.slice(\n compileDirectoryRelativeUrl.length,\n )\n return afterCompileDirectory\n}\n\n// const textToBase64 =\n// typeof window === \"object\"\n// ? (text) => window.btoa(window.unescape(window.encodeURIComponent(text)))\n// : (text) => Buffer.from(text, \"utf8\").toString(\"base64\")\n",
101
- "export const applyDefaultExtension = (specifier, importer) => {\n if (!importer) {\n return specifier\n }\n\n const importerExtension = urlToExtension(importer)\n const fakeUrl = new URL(specifier, importer).href\n const specifierExtension = urlToExtension(fakeUrl)\n if (specifierExtension !== \"\") {\n return specifier\n }\n\n // I guess typescript still expect default extension to be .ts\n // in a tsx file.\n if (importerExtension === \"tsx\") {\n return `${specifier}.ts`\n }\n\n // extension magic\n return `${specifier}${importerExtension}`\n}\n\nconst urlToExtension = (url) => {\n return pathnameToExtension(urlToPathname(url))\n}\n\nconst urlToPathname = (url) => new URL(url).pathname\n\nconst pathnameToExtension = (pathname) => {\n const slashLastIndex = pathname.lastIndexOf(\"/\")\n if (slashLastIndex !== -1) {\n pathname = pathname.slice(slashLastIndex + 1)\n }\n\n const dotLastIndex = pathname.lastIndexOf(\".\")\n if (dotLastIndex === -1) return \"\"\n // if (dotLastIndex === pathname.length - 1) return \"\"\n const extension = pathname.slice(dotLastIndex)\n return extension\n}\n",
102
- "import { createDetailedMessage } from \"@jsenv/logger\"\nimport { resolveImport } from \"@jsenv/importmap/src/resolveImport.js\"\n\nimport { tryToFindProjectRelativeUrl } from \"@jsenv/core/src/internal/runtime_client/module_registration.js\"\n\nimport { applyDefaultExtension } from \"./default_extension.js\"\n\nexport const createImportResolverForImportmap = async ({\n // projectDirectoryUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n importMap,\n importMapUrl,\n importDefaultExtension,\n onBareSpecifierError = () => {},\n}) => {\n const _resolveImport = (specifier, importer) => {\n if (importDefaultExtension) {\n specifier = applyDefaultExtension(specifier, importer)\n }\n return resolveImport({\n specifier,\n importer,\n importMap,\n createBareSpecifierError: ({ specifier, importer }) => {\n const bareSpecifierError = createBareSpecifierError({\n specifier,\n importer:\n tryToFindProjectRelativeUrl(importer, {\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n }) || importer,\n importMapUrl:\n tryToFindProjectRelativeUrl(importMapUrl, {\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n }) || importMapUrl,\n importMap,\n })\n onBareSpecifierError(bareSpecifierError)\n return bareSpecifierError\n },\n })\n }\n\n return { resolveImport: _resolveImport }\n}\n\nconst createBareSpecifierError = ({ specifier, importer, importMapUrl }) => {\n const detailedMessage = createDetailedMessage(\"Unmapped bare specifier.\", {\n specifier,\n importer,\n ...(importMapUrl\n ? {\n \"how to fix\": `Add a mapping for \"${specifier}\" into the importmap file at \"${importMapUrl}\"`,\n }\n : {\n \"how to fix\": `Add an importmap with a mapping for \"${specifier}\"`,\n \"suggestion\": `Generate importmap using https://github.com/jsenv/importmap-node-module`,\n }),\n })\n\n return new Error(detailedMessage)\n}\n",
103
- "/*\n* SJS 6.11.0\n* Minimal SystemJS Build\n*/\n(function () {\n\n function errMsg(errCode, msg) {\n return (msg || \"\") + \" (SystemJS https://git.io/JvFET#\" + errCode + \")\";\n }\n\n var hasSymbol = typeof Symbol !== 'undefined';\n var hasSelf = typeof self !== 'undefined';\n var hasDocument = typeof document !== 'undefined';\n\n var envGlobal = hasSelf ? self : global;\n\n var baseUrl;\n\n if (hasDocument) {\n var baseEl = document.querySelector('base[href]');\n if (baseEl)\n baseUrl = baseEl.href;\n }\n\n if (!baseUrl && typeof location !== 'undefined') {\n baseUrl = location.href.split('#')[0].split('?')[0];\n var lastSepIndex = baseUrl.lastIndexOf('/');\n if (lastSepIndex !== -1)\n baseUrl = baseUrl.slice(0, lastSepIndex + 1);\n }\n\n var backslashRegEx = /\\\\/g;\n function resolveIfNotPlainOrUrl (relUrl, parentUrl) {\n if (relUrl.indexOf('\\\\') !== -1)\n relUrl = relUrl.replace(backslashRegEx, '/');\n // protocol-relative\n if (relUrl[0] === '/' && relUrl[1] === '/') {\n return parentUrl.slice(0, parentUrl.indexOf(':') + 1) + relUrl;\n }\n // relative-url\n else if (relUrl[0] === '.' && (relUrl[1] === '/' || relUrl[1] === '.' && (relUrl[2] === '/' || relUrl.length === 2 && (relUrl += '/')) ||\n relUrl.length === 1 && (relUrl += '/')) ||\n relUrl[0] === '/') {\n var parentProtocol = parentUrl.slice(0, parentUrl.indexOf(':') + 1);\n // Disabled, but these cases will give inconsistent results for deep backtracking\n //if (parentUrl[parentProtocol.length] !== '/')\n // throw Error('Cannot resolve');\n // read pathname from parent URL\n // pathname taken to be part after leading \"/\"\n var pathname;\n if (parentUrl[parentProtocol.length + 1] === '/') {\n // resolving to a :// so we need to read out the auth and host\n if (parentProtocol !== 'file:') {\n pathname = parentUrl.slice(parentProtocol.length + 2);\n pathname = pathname.slice(pathname.indexOf('/') + 1);\n }\n else {\n pathname = parentUrl.slice(8);\n }\n }\n else {\n // resolving to :/ so pathname is the /... part\n pathname = parentUrl.slice(parentProtocol.length + (parentUrl[parentProtocol.length] === '/'));\n }\n\n if (relUrl[0] === '/')\n return parentUrl.slice(0, parentUrl.length - pathname.length - 1) + relUrl;\n\n // join together and split for removal of .. and . segments\n // looping the string instead of anything fancy for perf reasons\n // '../../../../../z' resolved to 'x/y' is just 'z'\n var segmented = pathname.slice(0, pathname.lastIndexOf('/') + 1) + relUrl;\n\n var output = [];\n var segmentIndex = -1;\n for (var i = 0; i < segmented.length; i++) {\n // busy reading a segment - only terminate on '/'\n if (segmentIndex !== -1) {\n if (segmented[i] === '/') {\n output.push(segmented.slice(segmentIndex, i + 1));\n segmentIndex = -1;\n }\n }\n\n // new segment - check if it is relative\n else if (segmented[i] === '.') {\n // ../ segment\n if (segmented[i + 1] === '.' && (segmented[i + 2] === '/' || i + 2 === segmented.length)) {\n output.pop();\n i += 2;\n }\n // ./ segment\n else if (segmented[i + 1] === '/' || i + 1 === segmented.length) {\n i += 1;\n }\n else {\n // the start of a new segment as below\n segmentIndex = i;\n }\n }\n // it is the start of a new segment\n else {\n segmentIndex = i;\n }\n }\n // finish reading out the last segment\n if (segmentIndex !== -1)\n output.push(segmented.slice(segmentIndex));\n return parentUrl.slice(0, parentUrl.length - pathname.length) + output.join('');\n }\n }\n\n /*\n * Import maps implementation\n *\n * To make lookups fast we pre-resolve the entire import map\n * and then match based on backtracked hash lookups\n *\n */\n\n function resolveUrl (relUrl, parentUrl) {\n return resolveIfNotPlainOrUrl(relUrl, parentUrl) || (relUrl.indexOf(':') !== -1 ? relUrl : resolveIfNotPlainOrUrl('./' + relUrl, parentUrl));\n }\n\n function resolveAndComposePackages (packages, outPackages, baseUrl, parentMap, parentUrl) {\n for (var p in packages) {\n var resolvedLhs = resolveIfNotPlainOrUrl(p, baseUrl) || p;\n var rhs = packages[p];\n // package fallbacks not currently supported\n if (typeof rhs !== 'string')\n continue;\n var mapped = resolveImportMap(parentMap, resolveIfNotPlainOrUrl(rhs, baseUrl) || rhs, parentUrl);\n if (!mapped) {\n targetWarning('W1', p, rhs);\n }\n else\n outPackages[resolvedLhs] = mapped;\n }\n }\n\n function resolveAndComposeImportMap (json, baseUrl, outMap) {\n if (json.imports)\n resolveAndComposePackages(json.imports, outMap.imports, baseUrl, outMap, null);\n\n var u;\n for (u in json.scopes || {}) {\n var resolvedScope = resolveUrl(u, baseUrl);\n resolveAndComposePackages(json.scopes[u], outMap.scopes[resolvedScope] || (outMap.scopes[resolvedScope] = {}), baseUrl, outMap, resolvedScope);\n }\n\n for (u in json.depcache || {})\n outMap.depcache[resolveUrl(u, baseUrl)] = json.depcache[u];\n\n for (u in json.integrity || {})\n outMap.integrity[resolveUrl(u, baseUrl)] = json.integrity[u];\n }\n\n function getMatch (path, matchObj) {\n if (matchObj[path])\n return path;\n var sepIndex = path.length;\n do {\n var segment = path.slice(0, sepIndex + 1);\n if (segment in matchObj)\n return segment;\n } while ((sepIndex = path.lastIndexOf('/', sepIndex - 1)) !== -1)\n }\n\n function applyPackages (id, packages) {\n var pkgName = getMatch(id, packages);\n if (pkgName) {\n var pkg = packages[pkgName];\n if (pkg === null) return;\n if (id.length > pkgName.length && pkg[pkg.length - 1] !== '/') {\n targetWarning('W2', pkgName, pkg);\n }\n else\n return pkg + id.slice(pkgName.length);\n }\n }\n\n function targetWarning (code, match, target, msg) {\n console.warn(errMsg(code, [target, match].join(', ') ));\n }\n\n function resolveImportMap (importMap, resolvedOrPlain, parentUrl) {\n var scopes = importMap.scopes;\n var scopeUrl = parentUrl && getMatch(parentUrl, scopes);\n while (scopeUrl) {\n var packageResolution = applyPackages(resolvedOrPlain, scopes[scopeUrl]);\n if (packageResolution)\n return packageResolution;\n scopeUrl = getMatch(scopeUrl.slice(0, scopeUrl.lastIndexOf('/')), scopes);\n }\n return applyPackages(resolvedOrPlain, importMap.imports) || resolvedOrPlain.indexOf(':') !== -1 && resolvedOrPlain;\n }\n\n /*\n * SystemJS Core\n *\n * Provides\n * - System.import\n * - System.register support for\n * live bindings, function hoisting through circular references,\n * reexports, dynamic import, import.meta.url, top-level await\n * - System.getRegister to get the registration\n * - Symbol.toStringTag support in Module objects\n * - Hookable System.createContext to customize import.meta\n * - System.onload(err, id, deps) handler for tracing / hot-reloading\n *\n * Core comes with no System.prototype.resolve or\n * System.prototype.instantiate implementations\n */\n\n var toStringTag = hasSymbol && Symbol.toStringTag;\n var REGISTRY = hasSymbol ? Symbol() : '@';\n\n function SystemJS () {\n this[REGISTRY] = {};\n }\n\n var systemJSPrototype = SystemJS.prototype;\n\n systemJSPrototype.import = function (id, parentUrl) {\n var loader = this;\n return Promise.resolve(loader.prepareImport())\n .then(function() {\n return loader.resolve(String(id), parentUrl);\n })\n .then(function (id) {\n var load = getOrCreateLoad(loader, id);\n return load.C || topLevelLoad(loader, load);\n });\n };\n\n // Hookable createContext function -> allowing eg custom import meta\n systemJSPrototype.createContext = function (parentId) {\n var loader = this;\n return {\n url: parentId,\n resolve: function (id, parentUrl) {\n return Promise.resolve(loader.resolve(id, parentUrl || parentId));\n }\n };\n };\n function loadToId (load) {\n return load.id;\n }\n function triggerOnload (loader, load, err, isErrSource) {\n loader.onload(err, load.id, load.d && load.d.map(loadToId), !!isErrSource);\n if (err)\n throw err;\n }\n\n var lastRegister;\n systemJSPrototype.register = function (deps, declare) {\n lastRegister = [deps, declare];\n };\n\n /*\n * getRegister provides the last anonymous System.register call\n */\n systemJSPrototype.getRegister = function () {\n var _lastRegister = lastRegister;\n lastRegister = undefined;\n return _lastRegister;\n };\n\n function getOrCreateLoad (loader, id, firstParentUrl) {\n var load = loader[REGISTRY][id];\n if (load)\n return load;\n\n var importerSetters = [];\n var ns = Object.create(null);\n if (toStringTag)\n Object.defineProperty(ns, toStringTag, { value: 'Module' });\n\n var instantiatePromise = Promise.resolve()\n .then(function () {\n return loader.instantiate(id, firstParentUrl);\n })\n .then(function (registration) {\n if (!registration)\n throw Error(errMsg(2, id ));\n function _export (name, value) {\n // note if we have hoisted exports (including reexports)\n load.h = true;\n var changed = false;\n if (typeof name === 'string') {\n if (!(name in ns) || ns[name] !== value) {\n ns[name] = value;\n changed = true;\n }\n }\n else {\n for (var p in name) {\n var value = name[p];\n if (!(p in ns) || ns[p] !== value) {\n ns[p] = value;\n changed = true;\n }\n }\n\n if (name && name.__esModule) {\n ns.__esModule = name.__esModule;\n }\n }\n if (changed)\n for (var i = 0; i < importerSetters.length; i++) {\n var setter = importerSetters[i];\n if (setter) setter(ns);\n }\n return value;\n }\n var declared = registration[1](_export, registration[1].length === 2 ? {\n import: function (importId) {\n return loader.import(importId, id);\n },\n meta: loader.createContext(id)\n } : undefined);\n load.e = declared.execute || function () {};\n return [registration[0], declared.setters || []];\n }, function (err) {\n load.e = null;\n load.er = err;\n throw err;\n });\n\n var linkPromise = instantiatePromise\n .then(function (instantiation) {\n return Promise.all(instantiation[0].map(function (dep, i) {\n var setter = instantiation[1][i];\n return Promise.resolve(loader.resolve(dep, id))\n .then(function (depId) {\n var depLoad = getOrCreateLoad(loader, depId, id);\n // depLoad.I may be undefined for already-evaluated\n return Promise.resolve(depLoad.I)\n .then(function () {\n if (setter) {\n depLoad.i.push(setter);\n // only run early setters when there are hoisted exports of that module\n // the timing works here as pending hoisted export calls will trigger through importerSetters\n if (depLoad.h || !depLoad.I)\n setter(depLoad.n);\n }\n return depLoad;\n });\n });\n }))\n .then(function (depLoads) {\n load.d = depLoads;\n });\n });\n\n // Capital letter = a promise function\n return load = loader[REGISTRY][id] = {\n id: id,\n // importerSetters, the setters functions registered to this dependency\n // we retain this to add more later\n i: importerSetters,\n // module namespace object\n n: ns,\n\n // instantiate\n I: instantiatePromise,\n // link\n L: linkPromise,\n // whether it has hoisted exports\n h: false,\n\n // On instantiate completion we have populated:\n // dependency load records\n d: undefined,\n // execution function\n e: undefined,\n\n // On execution we have populated:\n // the execution error if any\n er: undefined,\n // in the case of TLA, the execution promise\n E: undefined,\n\n // On execution, L, I, E cleared\n\n // Promise for top-level completion\n C: undefined,\n\n // parent instantiator / executor\n p: undefined\n };\n }\n\n function instantiateAll (loader, load, parent, loaded) {\n if (!loaded[load.id]) {\n loaded[load.id] = true;\n // load.L may be undefined for already-instantiated\n return Promise.resolve(load.L)\n .then(function () {\n if (!load.p || load.p.e === null)\n load.p = parent;\n return Promise.all(load.d.map(function (dep) {\n return instantiateAll(loader, dep, parent, loaded);\n }));\n })\n .catch(function (err) {\n if (load.er)\n throw err;\n load.e = null;\n throw err;\n });\n }\n }\n\n function topLevelLoad (loader, load) {\n return load.C = instantiateAll(loader, load, load, {})\n .then(function () {\n return postOrderExec(loader, load, {});\n })\n .then(function () {\n return load.n;\n });\n }\n\n // the closest we can get to call(undefined)\n var nullContext = Object.freeze(Object.create(null));\n\n // returns a promise if and only if a top-level await subgraph\n // throws on sync errors\n function postOrderExec (loader, load, seen) {\n if (seen[load.id])\n return;\n seen[load.id] = true;\n\n if (!load.e) {\n if (load.er)\n throw load.er;\n if (load.E)\n return load.E;\n return;\n }\n\n // deps execute first, unless circular\n var depLoadPromises;\n load.d.forEach(function (depLoad) {\n try {\n var depLoadPromise = postOrderExec(loader, depLoad, seen);\n if (depLoadPromise)\n (depLoadPromises = depLoadPromises || []).push(depLoadPromise);\n }\n catch (err) {\n load.e = null;\n load.er = err;\n throw err;\n }\n });\n if (depLoadPromises)\n return Promise.all(depLoadPromises).then(doExec);\n\n return doExec();\n\n function doExec () {\n try {\n var execPromise = load.e.call(nullContext);\n if (execPromise) {\n execPromise = execPromise.then(function () {\n load.C = load.n;\n load.E = null; // indicates completion\n if (!true) ;\n }, function (err) {\n load.er = err;\n load.E = null;\n if (!true) ;\n throw err;\n });\n return load.E = execPromise;\n }\n // (should be a promise, but a minify optimization to leave out Promise.resolve)\n load.C = load.n;\n load.L = load.I = undefined;\n }\n catch (err) {\n load.er = err;\n throw err;\n }\n finally {\n load.e = null;\n }\n }\n }\n\n envGlobal.System = new SystemJS();\n\n /*\n * SystemJS browser attachments for script and import map processing\n */\n\n var importMapPromise = Promise.resolve();\n var importMap = { imports: {}, scopes: {}, depcache: {}, integrity: {} };\n systemJSPrototype.importMap = importMap;\n systemJSPrototype.baseUrl = baseUrl;\n\n // Scripts are processed immediately, on the first System.import, and on DOMReady.\n // Import map scripts are processed only once (by being marked) and in order for each phase.\n // This is to avoid using DOM mutation observers in core, although that would be an alternative.\n var processFirst = hasDocument;\n systemJSPrototype.prepareImport = function (doProcessScripts) {\n if (processFirst || doProcessScripts) {\n processScripts();\n processFirst = false;\n }\n return importMapPromise;\n };\n if (hasDocument) {\n processScripts();\n window.addEventListener('DOMContentLoaded', processScripts);\n }\n\n function processScripts () {\n [].forEach.call(document.querySelectorAll('script'), function (script) {\n if (script.sp) // sp marker = systemjs processed\n return;\n // TODO: deprecate systemjs-module in next major now that we have auto import\n if (script.type === 'systemjs-module') {\n script.sp = true;\n if (!script.src)\n return;\n System.import(script.src.slice(0, 7) === 'import:' ? script.src.slice(7) : resolveUrl(script.src, baseUrl)).catch(function (e) {\n // if there is a script load error, dispatch an \"error\" event\n // on the script tag.\n if (e.message.indexOf('https://git.io/JvFET#3') > -1) {\n var event = document.createEvent('Event');\n event.initEvent('error', false, false);\n script.dispatchEvent(event);\n }\n return Promise.reject(e);\n });\n }\n else if (script.type === 'systemjs-importmap') {\n script.sp = true;\n var fetchPromise = script.src ? fetch(script.src, { integrity: script.integrity }).then(function (res) {\n if (!res.ok)\n throw Error( res.status );\n return res.text();\n }).catch(function (err) {\n err.message = errMsg('W4', script.src ) + '\\n' + err.message;\n console.warn(err);\n if (typeof script.onerror === 'function') {\n script.onerror();\n }\n return '{}';\n }) : script.innerHTML;\n importMapPromise = importMapPromise.then(function () {\n return fetchPromise;\n }).then(function (text) {\n extendImportMap(importMap, text, script.src || baseUrl);\n return importMap\n });\n }\n });\n }\n\n function extendImportMap (importMap, newMapText, newMapUrl) {\n var newMap = {};\n try {\n newMap = JSON.parse(newMapText);\n } catch (err) {\n console.warn(Error(( errMsg('W5') )));\n }\n resolveAndComposeImportMap(newMap, newMapUrl, importMap);\n }\n System.extendImportMap = extendImportMap\n\n /*\n * Script instantiation loading\n */\n\n if (hasDocument) {\n window.addEventListener('error', function (evt) {\n lastWindowErrorUrl = evt.filename;\n lastWindowError = evt.error;\n });\n var baseOrigin = location.origin;\n }\n\n systemJSPrototype.createScript = function (url) {\n var script = document.createElement('script');\n script.async = true;\n // Only add cross origin for actual cross origin\n // this is because Safari triggers for all\n // - https://bugs.webkit.org/show_bug.cgi?id=171566\n if (url.indexOf(baseOrigin + '/'))\n script.crossOrigin = 'anonymous';\n var integrity = importMap.integrity[url];\n if (integrity)\n script.integrity = integrity;\n script.src = url;\n return script;\n };\n\n // Auto imports -> script tags can be inlined directly for load phase\n var lastAutoImportDeps, lastAutoImportTimeout;\n var autoImportCandidates = {};\n var systemRegister = systemJSPrototype.register;\n var inlineScriptCount = 0;\n systemJSPrototype.register = function (deps, declare, autoUrl) {\n if (hasDocument && document.readyState === 'loading' && typeof deps !== 'string') {\n var scripts = document.querySelectorAll('script[src]');\n var lastScript = scripts[scripts.length - 1];\n var lastAutoImportUrl\n lastAutoImportDeps = deps;\n if (lastScript && lastScript.src) {\n lastAutoImportUrl = lastScript.src;\n }\n else if (autoUrl) {\n lastAutoImportUrl = autoUrl\n }\n else {\n inlineScriptCount++\n lastAutoImportUrl = document.location.href + \"__inline_script__\" + inlineScriptCount;\n }\n // if this is already a System load, then the instantiate has already begun\n // so this re-import has no consequence\n var loader = this;\n lastAutoImportTimeout = setTimeout(function () {\n autoImportCandidates[lastAutoImportUrl] = [deps, declare];\n loader.import(lastAutoImportUrl);\n });\n }\n else {\n lastAutoImportDeps = undefined;\n }\n return systemRegister.call(this, deps, declare);\n };\n\n var lastWindowErrorUrl, lastWindowError;\n systemJSPrototype.instantiate = function (url, firstParentUrl) {\n var autoImportRegistration = autoImportCandidates[url];\n if (autoImportRegistration) {\n delete autoImportCandidates[url];\n return autoImportRegistration;\n }\n var loader = this;\n return Promise.resolve(systemJSPrototype.createScript(url)).then(function (script) {\n return new Promise(function (resolve, reject) {\n script.addEventListener('error', function () {\n reject(Error(errMsg(3, [url, firstParentUrl].join(', ') )));\n });\n script.addEventListener('load', function () {\n document.head.removeChild(script);\n // Note that if an error occurs that isn't caught by this if statement,\n // that getRegister will return null and a \"did not instantiate\" error will be thrown.\n if (lastWindowErrorUrl === url) {\n reject(lastWindowError);\n }\n else {\n var register = loader.getRegister(url);\n // Clear any auto import registration for dynamic import scripts during load\n if (register && register[0] === lastAutoImportDeps)\n clearTimeout(lastAutoImportTimeout);\n resolve(register);\n }\n });\n document.head.appendChild(script);\n });\n });\n };\n\n /*\n * Fetch loader, sets up shouldFetch and fetch hooks\n */\n systemJSPrototype.shouldFetch = function () {\n return false;\n };\n if (typeof fetch !== 'undefined')\n systemJSPrototype.fetch = fetch;\n\n var instantiate = systemJSPrototype.instantiate;\n var jsContentTypeRegEx = /^(text|application)\\/(x-)?javascript(;|$)/;\n systemJSPrototype.instantiate = function (url, parent) {\n var loader = this;\n if (!this.shouldFetch(url))\n return instantiate.apply(this, arguments);\n return this.fetch(url, {\n credentials: 'same-origin',\n integrity: importMap.integrity[url]\n })\n .then(function (res) {\n if (!res.ok)\n throw Error(errMsg(7, [res.status, res.statusText, url, parent].join(', ') ));\n var contentType = res.headers.get('content-type');\n if (!contentType || !jsContentTypeRegEx.test(contentType))\n throw Error(errMsg(4, contentType ));\n return res.text().then(function (source) {\n if (source.indexOf('//# sourceURL=') < 0)\n source += '\\n//# sourceURL=' + url;\n (0, eval)(source);\n return loader.getRegister(url);\n });\n });\n };\n\n systemJSPrototype.resolve = function (id, parentUrl) {\n parentUrl = parentUrl || !true || baseUrl;\n return resolveImportMap(( importMap), resolveIfNotPlainOrUrl(id, parentUrl) || id, parentUrl) || throwUnresolved(id, parentUrl);\n };\n\n function throwUnresolved (id, parentUrl) {\n throw Error(errMsg(8, [id, parentUrl].join(', ') ));\n }\n\n var systemInstantiate = systemJSPrototype.instantiate;\n systemJSPrototype.instantiate = function (url, firstParentUrl) {\n var preloads = ( importMap).depcache[url];\n if (preloads) {\n for (var i = 0; i < preloads.length; i++)\n getOrCreateLoad(this, this.resolve(preloads[i], url), url);\n }\n return systemInstantiate.call(this, url, firstParentUrl);\n };\n\n /*\n * Supports loading System.register in workers\n */\n\n if (hasSelf && typeof importScripts === 'function') {\n systemJSPrototype.instantiate = function (url) {\n var loader = this;\n return self.fetch(url, {\n credentials: 'same-origin',\n }).then(function (response) {\n if (!response.ok) {\n throw Error(errMsg(7, [response.status, response.statusText, url].join(', ') ));\n }\n return response.text()\n }).then(function (source) {\n if (source.indexOf('//# sourceURL=') < 0) source += '\\n//# sourceURL=' + url;\n (0, eval)(source);\n return loader.getRegister(url);\n })\n };\n }\n\n}());\n\n(function(){\n var envGlobal = typeof self !== 'undefined' ? self : global;\n var System = envGlobal.System;\n\n var registerRegistry = Object.create(null)\n var register = System.register;\n System.registerRegistry = registerRegistry;\n System.register = function (name, deps, declare) {\n if (typeof name !== 'string') return register.apply(this, arguments);\n var define = [deps, declare];\n return System.prepareImport().then(function () {\n var url = System.resolve(`./${name}`);\n registerRegistry[url] = define;\n return register.call(System, deps, declare, url);\n })\n };\n\n var instantiate = System.instantiate;\n System.instantiate = function (url, firstParentUrl) {\n var result = registerRegistry[url];\n\n if (result) {\n registerRegistry[url] = null;\n return result;\n } else {\n return instantiate.call(this, url, firstParentUrl);\n }\n };\n\n var getRegister = System.getRegister;\n System.getRegister = function (url) {\n // Calling getRegister() because other extras need to know it was called so they can perform side effects\n var register = getRegister.call(this, url);\n var result = registerRegistry[url] || register;\n return result;\n };\n}());\n\n(function () {\n // worker or service worker\n if (typeof WorkerGlobalScope === 'function' && self instanceof WorkerGlobalScope) {\n var importMapFromParentPromise = new Promise((resolve) => {\n var importmapMessageCallback = function (e) {\n if (e.data === \"__importmap_init__\") {\n self.removeEventListener(\"message\", importmapMessageCallback)\n e.ports[0].onmessage = (message) => {\n resolve(message.data)\n }\n e.ports[0].postMessage('__importmap_request__') \n }\n };\n self.addEventListener(\"message\", importmapMessageCallback)\n })\n // var prepareImport = System.prepareImport\n System.prepareImport = function () {\n return importMapFromParentPromise.then(function (importmap) {\n System.extendImportMap(System.importMap, JSON.stringify(importmap), System.baseUrl)\n })\n }\n\n // auto import first register\n var messageEvents = []\n var messageCallback = (event) => {\n messageEvents.push(event)\n }\n self.addEventListener('message', messageCallback)\n var register = System.register;\n System.register = function(deps, declare) {\n System.register = register;\n System.registerRegistry[self.location.href] = [deps, declare];\n return System.import(self.location.href).then((result) => {\n self.removeEventListener('message', messageCallback)\n messageEvents.forEach((messageEvent) => {\n self.dispatchEvent(messageEvent)\n })\n messageEvents = null\n return result\n })\n }\n }\n else if (typeof window === 'object') {\n var WorkerConstructor = window.Worker;\n if (typeof WorkerConstructor === 'function') {\n window.Worker = function (url, options) {\n var worker = new WorkerConstructor(url, options);\n var importmapChannel = new MessageChannel();\n importmapChannel.port1.onmessage = function (message) {\n System.prepareImport().then(function (importmap) {\n message.target.postMessage(importmap);\n });\n }\n worker.postMessage('__importmap_init__', [importmapChannel.port2]);\n return worker\n }\n }\n\n var serviceWorker = navigator.serviceWorker;\n if (serviceWorker) {\n var register = serviceWorker.register;\n serviceWorker.register = function(url, options) {\n var registrationPromise = register.call(this, url, options);\n registrationPromise.then(function(registration) {\n var installing = registration.installing;\n var waiting = registration.waiting;\n var active = registration.active;\n var worker = installing || waiting || active;\n var importmapChannel = new MessageChannel();\n importmapChannel.port1.onmessage = function (message) {\n System.prepareImport().then(function (importmap) {\n message.target.postMessage(importmap)\n });\n }\n worker.postMessage('__importmap_init__', [importmapChannel.port2]);\n })\n return registrationPromise\n }\n }\n }\n}());",
104
- "import { getJavaScriptModuleResponseError } from \"@jsenv/core/src/internal/runtime_client/module_registration.js\"\nimport \"@jsenv/core/src/internal/runtime_client/s.js\"\n\nexport const createBrowserSystem = ({\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n importResolver,\n fetchSource,\n}) => {\n if (typeof window.System === \"undefined\") {\n throw new Error(`window.System is undefined`)\n }\n\n const browserSystem = window.System\n\n const resolve = (specifier, importer = document.location.href) => {\n return importResolver.resolveImport(specifier, importer)\n }\n\n browserSystem.resolve = resolve\n\n const instantiate = browserSystem.instantiate\n browserSystem.instantiate = async function (url, importerUrl) {\n const { importType, urlWithoutImportType } = extractImportTypeFromUrl(url)\n if (importType === \"json\") {\n const jsonModule = await instantiateAsJsonModule(urlWithoutImportType, {\n browserSystem,\n fetchSource,\n })\n return jsonModule\n }\n\n if (importType === \"css\") {\n const cssModule = await instantiateAsCssModule(urlWithoutImportType, {\n browserSystem,\n importerUrl,\n compileDirectoryRelativeUrl,\n fetchSource,\n })\n return cssModule\n }\n\n try {\n const registration = await instantiate.call(this, url, importerUrl)\n if (!registration) {\n throw new Error(\n `no registration found for JS at ${url}\n--- importer url ---\n${importerUrl}\n--- navigator.vendor ---\n${window.navigator.vendor}`,\n )\n }\n return registration\n } catch (e) {\n const jsenvError = await createDetailedInstantiateError({\n instantiateError: e,\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n fetchSource,\n })\n throw jsenvError\n }\n }\n\n browserSystem.createContext = (importerUrl) => {\n return {\n url: importerUrl,\n resolve: (specifier) => resolve(specifier, importerUrl),\n }\n }\n\n return browserSystem\n}\n\nconst extractImportTypeFromUrl = (url) => {\n const urlObject = new URL(url)\n const { search } = urlObject\n const searchParams = new URLSearchParams(search)\n\n const importType = searchParams.get(\"import_type\")\n if (!importType) {\n return {}\n }\n\n searchParams.delete(\"import_type\")\n urlObject.search = String(searchParams)\n return {\n importType,\n urlWithoutImportType: urlObject.href,\n }\n}\n\nconst instantiateAsJsonModule = async (url, { browserSystem, fetchSource }) => {\n const response = await fetchSource(url, {\n contentTypeExpected: \"application/json\",\n })\n const json = await response.json()\n browserSystem.register([], (_export) => {\n return {\n execute: () => {\n _export(\"default\", json)\n },\n }\n })\n const registration = browserSystem.getRegister(url)\n if (!registration) {\n throw new Error(\n `no registration found for JSON at ${url}. Navigator.vendor: ${window.navigator.vendor}. JSON text: ${json}`,\n )\n }\n return registration\n}\n\nconst instantiateAsCssModule = async (\n url,\n { importerUrl, compileDirectoryRelativeUrl, browserSystem, fetchSource },\n) => {\n const response = await fetchSource(url, {\n contentTypeExpected: \"text/css\",\n })\n\n // There is a logic inside \"toolbar.eventsource.js\" which is reloading\n // all link rel=\"stylesheet\" when file ending with \".css\" are modified\n // But here it would not work because we have to replace the css in\n // the adopted stylsheet + all module importing this css module\n // should be reinstantiated\n // -> store a livereload callback forcing whole page reload\n const compileDirectoryServerUrl = `${window.location.origin}/${compileDirectoryRelativeUrl}`\n const originalFileRelativeUrl = response.url.slice(\n compileDirectoryServerUrl.length,\n )\n window.__jsenv__.livereloadingCallbacks[originalFileRelativeUrl] = ({\n reloadPage,\n }) => {\n reloadPage()\n }\n\n const cssText = await response.text()\n const cssTextWithBaseUrl = cssWithBaseUrl({\n cssText,\n cssUrl: url,\n baseUrl: importerUrl,\n })\n\n browserSystem.register([], (_export) => {\n return {\n execute: () => {\n const sheet = new CSSStyleSheet()\n sheet.replaceSync(cssTextWithBaseUrl)\n _export(\"default\", sheet)\n },\n }\n })\n const registration = browserSystem.getRegister(url)\n if (!registration) {\n throw new Error(\n `no registration found for CSS at ${url}. Navigator.vendor: ${window.navigator.vendor}. CSS text: ${cssTextWithBaseUrl}`,\n )\n }\n return registration\n}\n\n// CSSStyleSheet accepts a \"baseUrl\" parameter\n// as documented in https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/CSSStyleSheet#parameters\n// Unfortunately the polyfill do not seems to implement it\n// So we reuse \"systemjs\" strategy from https://github.com/systemjs/systemjs/blob/98609dbeef01ec62447e4b21449ce47e55f818bd/src/extras/module-types.js#L37\nconst cssWithBaseUrl = ({ cssUrl, cssText, baseUrl }) => {\n const cssDirectoryUrl = new URL(\"./\", cssUrl).href\n const baseDirectoryUrl = new URL(\"./\", baseUrl).href\n if (cssDirectoryUrl === baseDirectoryUrl) {\n return cssText\n }\n\n const cssTextRelocated = cssText.replace(\n /url\\(\\s*(?:([\"'])((?:\\\\.|[^\\n\\\\\"'])+)\\1|((?:\\\\.|[^\\s,\"'()\\\\])+))\\s*\\)/g,\n (match, quotes, relUrl1, relUrl2) => {\n const absoluteUrl = new URL(relUrl1 || relUrl2, cssUrl).href\n return `url(${quotes}${absoluteUrl}${quotes})`\n },\n )\n return cssTextRelocated\n}\n\nconst createDetailedInstantiateError = async ({\n instantiateError,\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n fetchSource,\n}) => {\n let response\n try {\n response = await fetchSource(url, {\n importerUrl,\n contentTypeExpected: \"application/javascript\",\n })\n } catch (e) {\n e.code = \"NETWORK_FAILURE\"\n return e\n }\n\n const jsModuleResponseError = await getJavaScriptModuleResponseError(\n response,\n {\n url,\n importerUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n },\n )\n return jsModuleResponseError || instantiateError\n}\n",
105
- "const { performance } = window\n\nexport const measureAsyncFnPerf = performance\n ? async (fn, name) => {\n const perfMarkStartName = `${name}_start`\n\n performance.mark(perfMarkStartName)\n try {\n const value = await fn()\n return value\n } finally {\n performance.measure(name, perfMarkStartName)\n }\n }\n : async (fn) => {\n return fn()\n }\n",
106
- "export const makeModuleNamespaceTransferable = (namespace) => {\n const transferableNamespace = {}\n Object.keys(namespace).forEach((key) => {\n const value = namespace[key]\n transferableNamespace[key] = isTransferable(value)\n ? value\n : hideNonTransferableValue(value)\n })\n return transferableNamespace\n}\n\nconst hideNonTransferableValue = (value) => {\n if (typeof value === \"function\") {\n return `[[HIDDEN: ${value.name} function cannot be transfered]]`\n }\n\n if (typeof value === \"symbol\") {\n return `[[HIDDEN: symbol function cannot be transfered]]`\n }\n\n return `[[HIDDEN: ${\n value.constructor ? value.constructor.name : \"object\"\n } cannot be transfered]]`\n}\n\n// https://stackoverflow.com/a/32673910/2634179\nconst isTransferable = (value) => {\n const seenArray = []\n const visit = () => {\n if (typeof value === \"function\") return false\n\n if (typeof value === \"symbol\") return false\n\n if (value === null) return false\n\n if (typeof value === \"object\") {\n const constructorName = value.constructor.namespace\n\n if (supportedTypes.includes(constructorName)) {\n return true\n }\n\n const maybe = maybeTypes.includes(constructorName)\n if (maybe) {\n const visited = seenArray.includes(value)\n if (visited) {\n // we don't really know until we are done visiting the object\n // implementing it properly means waiting for the recursion to be done\n // let's just\n return true\n }\n seenArray.push(value)\n\n if (constructorName === \"Array\" || constructorName === \"Object\") {\n return Object.keys(value).every((key) => isTransferable(value[key]))\n }\n if (constructorName === \"Map\") {\n return (\n [...value.keys()].every(isTransferable) &&\n [...value.values()].every(isTransferable)\n )\n }\n if (constructorName === \"Set\") {\n return [...value.keys()].every(isTransferable)\n }\n }\n\n // Error, DOM Node and others\n return false\n }\n return true\n }\n\n return visit(value)\n}\n\nconst supportedTypes = [\n \"Boolean\",\n \"Number\",\n \"String\",\n \"Date\",\n \"RegExp\",\n \"Blob\",\n \"FileList\",\n \"ImageData\",\n \"ImageBitmap\",\n \"ArrayBuffer\",\n]\n\nconst maybeTypes = [\"Array\", \"Object\", \"Map\", \"Set\"]\n",
107
- "import { normalizeImportMap } from \"@jsenv/importmap/src/normalizeImportMap.js\"\n\n// do not use memoize from @jsenv/filesystem to avoid pulling @jsenv/filesystem code into the browser build\nimport { fetchUrl } from \"@jsenv/core/src/internal/browser_utils/fetch_browser.js\"\nimport { createImportResolverForImportmap } from \"@jsenv/core/src/internal/import_resolution/import_resolver_importmap.js\"\nimport { memoize } from \"@jsenv/core/src/internal/memoize.js\"\n\nimport { createBrowserSystem } from \"./browser_system.js\"\nimport { measureAsyncFnPerf } from \"./perf_browser.js\"\nimport { makeModuleNamespaceTransferable } from \"./module_namespace_transfer.js\"\n\nconst memoizedCreateBrowserSystem = memoize(createBrowserSystem)\n\nexport const createBrowserClient = async ({\n compileServerOrigin,\n jsenvDirectoryRelativeUrl,\n compileId,\n}) => {\n const fetchSource = (url, { contentTypeExpected }) => {\n return fetchUrl(url, {\n credentials: \"same-origin\",\n contentTypeExpected,\n })\n }\n\n const fetchJson = async (url) => {\n const response = await fetchSource(url, {\n contentTypeExpected: \"application/json\",\n })\n const json = await response.json()\n return json\n }\n\n const compileServerMetaUrl = String(\n new URL(\"__jsenv_compile_profile__\", `${compileServerOrigin}/`),\n )\n const { importDefaultExtension } = await fetchJson(compileServerMetaUrl)\n const compileDirectoryRelativeUrl = `${jsenvDirectoryRelativeUrl}${compileId}/`\n // if there is an importmap in the document we use it instead of fetching.\n // systemjs style with systemjs-importmap\n const importmapScript = document.querySelector(\n `script[type=\"systemjs-importmap\"]`,\n )\n let importMap\n let importMapUrl\n if (importmapScript) {\n let importmapRaw\n if (importmapScript.src) {\n importMapUrl = importmapScript.src\n const importmapFileResponse = await fetchSource(importMapUrl, {\n contentTypeExpected: \"application/importmap+json\",\n })\n importmapRaw =\n importmapFileResponse.status === 404\n ? {}\n : await importmapFileResponse.json()\n } else {\n importMapUrl = document.location.href\n importmapRaw = JSON.parse(importmapScript.textContent) || {}\n }\n importMap = normalizeImportMap(importmapRaw, importMapUrl)\n }\n\n const importResolver = await createImportResolverForImportmap({\n // projectDirectoryUrl,\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n importMap,\n importMapUrl,\n importDefaultExtension,\n })\n\n const importFile = async (specifier) => {\n const browserSystem = await memoizedCreateBrowserSystem({\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n fetchSource,\n importResolver,\n })\n return browserSystem.import(specifier)\n }\n\n const executeFile = async (\n specifier,\n {\n transferableNamespace = false,\n executionExposureOnWindow = false,\n errorTransform = (error) => error,\n measurePerformance,\n } = {},\n ) => {\n const browserSystem = await memoizedCreateBrowserSystem({\n compileServerOrigin,\n compileDirectoryRelativeUrl,\n fetchSource,\n importResolver,\n })\n\n const importUsingSystemJs = async () => {\n try {\n let namespace = await browserSystem.import(specifier)\n\n if (transferableNamespace) {\n namespace = makeModuleNamespaceTransferable(namespace)\n }\n\n return {\n status: \"completed\",\n namespace,\n coverage: readCoverage(),\n }\n } catch (error) {\n let transformedError\n try {\n transformedError = await errorTransform(error)\n } catch (e) {\n transformedError = error\n }\n\n return {\n status: \"errored\",\n error: transformedError,\n coverage: readCoverage(),\n }\n }\n }\n\n const executionResult = await (measurePerformance\n ? measureAsyncFnPerf(importUsingSystemJs, `jsenv_file_import`)\n : importUsingSystemJs())\n if (executionExposureOnWindow) {\n window.__executionResult__ = executionResult\n }\n return executionResult\n }\n\n return {\n compileDirectoryRelativeUrl,\n importFile,\n executeFile,\n }\n}\n\nconst readCoverage = () => window.__coverage__\n",
108
- "/* eslint-env browser, node */\n\nexport const DataUrl = {\n parse: (string, { as = \"raw\" } = {}) => {\n const afterDataProtocol = string.slice(\"data:\".length)\n const commaIndex = afterDataProtocol.indexOf(\",\")\n const beforeComma = afterDataProtocol.slice(0, commaIndex)\n\n let mediaType\n let base64Flag\n if (beforeComma.endsWith(`;base64`)) {\n mediaType = beforeComma.slice(0, -`;base64`.length)\n base64Flag = true\n } else {\n mediaType = beforeComma\n base64Flag = false\n }\n\n const afterComma = afterDataProtocol.slice(commaIndex + 1)\n return {\n mediaType: mediaType === \"\" ? \"text/plain;charset=US-ASCII\" : mediaType,\n base64Flag,\n data:\n as === \"string\" && base64Flag ? base64ToString(afterComma) : afterComma,\n }\n },\n\n stringify: ({ mediaType, base64Flag = true, data }) => {\n if (!mediaType || mediaType === \"text/plain;charset=US-ASCII\") {\n // can be a buffer or a string, hence check on data.length instead of !data or data === ''\n if (data.length === 0) {\n return `data:,`\n }\n if (base64Flag) {\n return `data:,${data}`\n }\n return `data:,${dataToBase64(data)}`\n }\n if (base64Flag) {\n return `data:${mediaType};base64,${dataToBase64(data)}`\n }\n return `data:${mediaType},${data}`\n },\n}\n\nconst dataToBase64 =\n typeof window === \"object\"\n ? window.atob\n : (data) => Buffer.from(data).toString(\"base64\")\n\nconst base64ToString =\n typeof window === \"object\"\n ? window.btoa\n : (base64String) => Buffer.from(base64String, \"base64\").toString(\"utf8\")\n",
109
- "export const generateSourcemapUrl = (url) => {\n // we want to remove eventual search params from url\n const urlString = String(url)\n const urlObject = new URL(url)\n const origin = urlString.startsWith(\"file://\") ? \"file://\" : urlObject.origin\n const pathname = urlObject.pathname\n const sourcemapUrl = `${origin}${pathname}.map`\n return sourcemapUrl\n}\n\nexport const getJavaScriptSourceMappingUrl = (javaScriptSource) => {\n let sourceMappingUrl\n replaceSourceMappingUrl(\n javaScriptSource,\n javascriptSourceMappingUrlCommentRegexp,\n (value) => {\n sourceMappingUrl = value\n },\n )\n return sourceMappingUrl\n}\n\nexport const setJavaScriptSourceMappingUrl = (\n javaScriptSource,\n sourceMappingFileUrl,\n) => {\n let replaced\n const sourceAfterReplace = replaceSourceMappingUrl(\n javaScriptSource,\n javascriptSourceMappingUrlCommentRegexp,\n () => {\n replaced = true\n return sourceMappingFileUrl\n ? writeJavaScriptSourceMappingURL(sourceMappingFileUrl)\n : \"\"\n },\n )\n if (replaced) {\n return sourceAfterReplace\n }\n\n return sourceMappingFileUrl\n ? `${javaScriptSource}\n${writeJavaScriptSourceMappingURL(sourceMappingFileUrl)}`\n : javaScriptSource\n}\n\nexport const getCssSourceMappingUrl = (cssSource) => {\n let sourceMappingUrl\n replaceSourceMappingUrl(\n cssSource,\n cssSourceMappingUrlCommentRegExp,\n (value) => {\n sourceMappingUrl = value\n },\n )\n return sourceMappingUrl\n}\n\nexport const setCssSourceMappingUrl = (cssSource, sourceMappingFileUrl) => {\n let replaced\n const sourceAfterReplace = replaceSourceMappingUrl(\n cssSource,\n cssSourceMappingUrlCommentRegExp,\n () => {\n replaced = true\n return sourceMappingFileUrl\n ? writeCssSourceMappingUrl(sourceMappingFileUrl)\n : \"\"\n },\n )\n if (replaced) {\n return sourceAfterReplace\n }\n return sourceMappingFileUrl\n ? `${cssSource}\n${writeCssSourceMappingUrl(sourceMappingFileUrl)}`\n : cssSource\n}\n\nconst javascriptSourceMappingUrlCommentRegexp =\n /\\/\\/ ?# ?sourceMappingURL=([^\\s'\"]+)/g\nconst cssSourceMappingUrlCommentRegExp =\n /\\/\\*# ?sourceMappingURL=([^\\s'\"]+) \\*\\//g\n\n// ${\"//#\"} is to avoid a parser thinking there is a sourceMappingUrl for this file\nconst writeJavaScriptSourceMappingURL = (value) =>\n `${\"//#\"} sourceMappingURL=${value}`\nconst writeCssSourceMappingUrl = (value) => `/*# sourceMappingURL=${value} */`\n\nexport const sourcemapToBase64Url = (sourcemap) => {\n const asBase64 = Buffer.from(JSON.stringify(sourcemap)).toString(\"base64\")\n return `data:application/json;charset=utf-8;base64,${asBase64}`\n}\n\nconst replaceSourceMappingUrl = (source, regexp, callback) => {\n let lastSourceMappingUrl\n let matchSourceMappingUrl\n while ((matchSourceMappingUrl = regexp.exec(source))) {\n lastSourceMappingUrl = matchSourceMappingUrl\n }\n if (lastSourceMappingUrl) {\n const index = lastSourceMappingUrl.index\n const before = source.slice(0, index)\n const after = source.slice(index)\n const mappedAfter = after.replace(regexp, (match, firstGroup) => {\n return callback(firstGroup)\n })\n return `${before}${mappedAfter}`\n }\n return source\n}\n",
110
- "export const startsWithWindowsDriveLetter = (string) => {\n const firstChar = string[0]\n if (!/[a-zA-Z]/.test(firstChar)) return false\n\n const secondChar = string[1]\n if (secondChar !== \":\") return false\n\n return true\n}\n\nexport const windowsFilePathToUrl = (windowsFilePath) => {\n return `file:///${replaceBackSlashesWithSlashes(windowsFilePath)}`\n}\n\nexport const replaceBackSlashesWithSlashes = (string) =>\n string.replace(/\\\\/g, \"/\")\n",
111
- "import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport {\n startsWithWindowsDriveLetter,\n windowsFilePathToUrl,\n} from \"@jsenv/core/src/internal/windows_file_path_utils.js\"\n\nexport const remapCallSite = async (\n callSite,\n { urlToSourcemapConsumer, resolveFile, readErrorStack, onFailure },\n) => {\n if (callSite.isNative()) {\n return callSite\n }\n\n // Most call sites will return the source file from getFileName(), but code\n // passed to eval() ending in \"//# sourceURL=...\" will return the source file\n // from getScriptNameOrSourceURL() instead\n const source = callSite.getFileName() || callSite.getScriptNameOrSourceURL()\n if (source) {\n const line = callSite.getLineNumber()\n const column = callSite.getColumnNumber() - 1\n const originalPosition = await remapSourcePosition({\n source,\n line,\n column,\n resolveFile,\n urlToSourcemapConsumer,\n readErrorStack,\n onFailure,\n })\n\n const callSiteClone = cloneCallSite(callSite)\n\n callSiteClone.getFunctionName = () =>\n originalPosition.name || callSite.getFunctionName()\n callSiteClone.getFileName = () => originalPosition.source\n callSiteClone.getLineNumber = () => originalPosition.line\n callSiteClone.getColumnNumber = () => originalPosition.column + 1\n callSiteClone.getScriptNameOrSourceURL = () => originalPosition.source\n\n return callSiteClone\n }\n\n // Code called using eval() needs special handling\n if (callSite.isEval()) {\n const origin = callSite.getEvalOrigin()\n if (origin) {\n const callSiteClone = cloneCallSite(callSite)\n const originalEvalOrigin = await remapEvalOrigin(origin, {\n resolveFile,\n urlToSourcemapConsumer,\n readErrorStack,\n onFailure,\n })\n callSiteClone.getEvalOrigin = () => originalEvalOrigin\n return callSiteClone\n }\n return callSite\n }\n\n // If we get here then we were unable to change the source position\n return callSite\n}\n\nconst cloneCallSite = (callSite) => {\n const callSiteClone = {}\n methods.forEach((name) => {\n callSiteClone[name] = () => callSite[name]()\n })\n callSiteClone.toString = () => callSiteToFunctionCall(callSiteClone)\n\n return callSiteClone\n}\n\nconst methods = [\n \"getColumnNumber\",\n \"getEvalOrigin\",\n \"getFileName\",\n \"getFunction\",\n \"getFunctionName\",\n \"getLineNumber\",\n \"getMethodName\",\n \"getPosition\",\n \"getScriptNameOrSourceURL\",\n \"getThis\",\n \"getTypeName\",\n \"isConstructor\",\n \"isEval\",\n \"isNative\",\n \"isToplevel\",\n \"toString\",\n]\n\nconst callSiteToFunctionCall = (callSite) => {\n const fileLocation = callSiteToFileLocation(callSite)\n const isConstructor = callSite.isConstructor()\n const isMethodCall = !callSite.isToplevel() && !isConstructor\n\n if (isMethodCall) {\n return `${callSiteToMethodCall(callSite)} (${fileLocation})`\n }\n\n const functionName = callSite.getFunctionName()\n if (isConstructor) {\n return `new ${functionName || \"<anonymous>\"} (${fileLocation})`\n }\n\n if (functionName) {\n return `${functionName} (${fileLocation})`\n }\n\n return `${fileLocation}`\n}\n\nconst callSiteToMethodCall = (callSite) => {\n const functionName = callSite.getFunctionName()\n const typeName = callSiteToType(callSite)\n\n if (!functionName) {\n return `${typeName}.<anonymous>`\n }\n\n const methodName = callSite.getMethodName()\n const as = generateAs({ methodName, functionName })\n\n if (typeName && !functionName.startsWith(typeName)) {\n return `${typeName}.${functionName}${as}`\n }\n\n return `${functionName}${as}`\n}\n\nconst generateAs = ({ methodName, functionName }) => {\n if (!methodName) return \"\"\n if (\n functionName.indexOf(`.${methodName}`) ===\n functionName.length - methodName.length - 1\n )\n return \"\"\n return ` [as ${methodName}]`\n}\n\nconst callSiteToType = (callSite) => {\n const typeName = callSite.getTypeName()\n // Fixes shim to be backward compatible with Node v0 to v4\n if (typeName === \"[object Object]\") {\n return \"null\"\n }\n return typeName\n}\n\nconst callSiteToFileLocation = (callSite) => {\n if (callSite.isNative()) return \"native\"\n\n const sourceFile = callSiteToSourceFile(callSite)\n const lineNumber = callSite.getLineNumber()\n if (lineNumber === null) {\n return sourceFile\n }\n\n const columnNumber = callSite.getColumnNumber()\n if (!columnNumber) {\n return `${sourceFile}:${lineNumber}`\n }\n\n return `${sourceFile}:${lineNumber}:${columnNumber}`\n}\n\nconst callSiteToSourceFile = (callSite) => {\n const fileName = callSite.getScriptNameOrSourceURL()\n\n if (fileName) {\n return fileName\n }\n\n // Source code does not originate from a file and is not native, but we\n // can still get the source position inside the source string, e.g. in\n // an eval string.\n if (callSite.isEval()) {\n return `${callSite.getEvalOrigin()}, <anonymous>`\n }\n\n return \"<anonymous>\"\n}\n\n// Parses code generated by FormatEvalOrigin(), a function inside V8:\n// https://code.google.com/p/v8/source/browse/trunk/src/messages.js\nconst remapEvalOrigin = async (\n origin,\n { resolveFile, urlToSourcemapConsumer, onFailure },\n) => {\n // Most eval() calls are in this format\n const topLevelEvalMatch = /^eval at ([^(]+) \\((.+):(\\d+):(\\d+)\\)$/.exec(\n origin,\n )\n if (topLevelEvalMatch) {\n const source = topLevelEvalMatch[2]\n const line = Number(topLevelEvalMatch[3])\n const column = topLevelEvalMatch[4] - 1\n const originalPosition = await remapSourcePosition({\n source,\n line,\n column,\n resolveFile,\n urlToSourcemapConsumer,\n onFailure,\n })\n return `eval at ${topLevelEvalMatch[1]} (${originalPosition.source}:${\n originalPosition.line\n }:${originalPosition.column + 1})`\n }\n\n // Parse nested eval() calls using recursion\n const nestedEvalMatch = /^eval at ([^(]+) \\((.+)\\)$/.exec(origin)\n if (nestedEvalMatch) {\n const originalEvalOrigin = await remapEvalOrigin(nestedEvalMatch[2], {\n resolveFile,\n urlToSourcemapConsumer,\n onFailure,\n })\n return `eval at ${nestedEvalMatch[1]} (${originalEvalOrigin})`\n }\n\n // Make sure we still return useful information if we didn't find anything\n return origin\n}\n\nconst remapSourcePosition = async ({\n source,\n line,\n column,\n resolveFile,\n urlToSourcemapConsumer,\n readErrorStack,\n onFailure,\n}) => {\n const position = { source, line, column }\n\n const url = sourceToUrl(source, { resolveFile })\n if (!url) return position\n\n const sourceMapConsumer = await urlToSourcemapConsumer(url)\n\n if (!sourceMapConsumer) return position\n\n try {\n const originalPosition = sourceMapConsumer.originalPositionFor(position)\n\n // Only return the original position if a matching line was found. If no\n // matching line is found then we return position instead, which will cause\n // the stack trace to print the path and line for the compiled file. It is\n // better to give a precise location in the compiled file than a vague\n // location in the original file.\n const originalSource = originalPosition.source\n\n if (originalSource === null) return position\n originalPosition.source = resolveFile(originalSource, url, {\n type: \"file-original\",\n })\n\n return originalPosition\n } catch (e) {\n onFailure(\n createDetailedMessage(`error while remapping position.`, {\n [\"error stack\"]: readErrorStack(e),\n [\"source\"]: source,\n [\"line\"]: line,\n [\"column\"]: column,\n }),\n )\n return position\n }\n}\n\nconst sourceToUrl = (source, { resolveFile }) => {\n if (startsWithScheme(source)) {\n return source\n }\n\n // linux filesystem path\n if (source[0] === \"/\") {\n return resolveFile(source)\n }\n\n // be careful, due to babel or something like that we might receive paths like\n // C:/directory/file.js (without backslashes we would expect on windows)\n // In that case we consider C: is the signe we are on windows\n // And I avoid to rely on process.platform === \"win32\" because this file might be executed in chrome\n if (startsWithWindowsDriveLetter(source)) {\n return windowsFilePathToUrl(source)\n }\n\n // I don't think we will ever encounter relative file in the stack trace\n // but if it ever happens we are safe :)\n if (source.slice(0, 2) === \"./\" || source.slice(0, 3) === \"../\") {\n return resolveFile(source)\n }\n\n // we have received a \"bare specifier\" for the source\n // it happens for internal/process/task_queues.js for instance\n // if we do return resolveFile(source) it will be converted to\n // file:///C:/project-directory/internal/process/task_queues.js in node\n // and\n // http://domain.com/internal/process/task_queues.js\n // but the file will certainly be a 404\n // and if not it won't be the right file anyway\n // for now we assume \"bare specifier\" in the stack trace\n // are internal files that are pointless to try to remap\n return null\n}\n\nconst startsWithScheme = (string) => {\n return /^[a-zA-Z]{2,}:/.test(string)\n}\n",
112
- "import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { DataUrl } from \"@jsenv/core/src/internal/data_url.js\"\nimport { getJavaScriptSourceMappingUrl } from \"@jsenv/core/src/internal/sourcemap_utils.js\"\n\nimport { remapCallSite } from \"./remap_call_site.js\"\n\nexport const remapStack = async ({\n stack,\n resolveFile,\n fetchFile,\n SourceMapConsumer,\n readErrorStack,\n onFailure,\n}) => {\n const urlToSourcemapConsumer = memoizeByFirstArgStringValue(\n async (stackTraceFileUrl) => {\n if (stackTraceFileUrl.startsWith(\"node:\")) {\n return null\n }\n\n try {\n let text\n try {\n const fileResponse = await fetchFile(stackTraceFileUrl)\n const { status } = fileResponse\n if (status !== 200) {\n if (status === 404) {\n onFailure(`stack trace file not found at ${stackTraceFileUrl}`)\n } else {\n onFailure(\n createDetailedMessage(\n `unexpected response fetching stack trace file.`,\n {\n [\"response status\"]: status,\n [\"response text\"]: fileResponse.body,\n [\"stack trace file\"]: stackTraceFileUrl,\n },\n ),\n )\n }\n return null\n }\n text = await fileResponse.text()\n } catch (e) {\n onFailure(\n createDetailedMessage(`error while fetching stack trace file.`, {\n [\"fetch error stack\"]: readErrorStack(e),\n [\"stack trace file\"]: stackTraceFileUrl,\n }),\n )\n\n return null\n }\n\n const jsSourcemapUrl = getJavaScriptSourceMappingUrl(text)\n if (!jsSourcemapUrl) {\n return null\n }\n\n let sourcemapUrl\n let sourcemapString\n if (jsSourcemapUrl.startsWith(\"data:\")) {\n sourcemapUrl = stackTraceFileUrl\n sourcemapString = DataUrl.parse(jsSourcemapUrl, { as: \"string\" })\n } else {\n sourcemapUrl = resolveFile(jsSourcemapUrl, stackTraceFileUrl, {\n type: \"source-map\",\n })\n\n try {\n const sourcemapResponse = await fetchFile(sourcemapUrl)\n const { status } = sourcemapResponse\n if (status !== 200) {\n if (status === 404) {\n onFailure(`sourcemap file not found at ${sourcemapUrl}`)\n } else {\n onFailure(\n createDetailedMessage(\n `unexpected response for sourcemap file.`,\n {\n [\"response status\"]: status,\n [\"response text\"]: await sourcemapResponse.text(),\n [\"sourcemap url\"]: sourcemapUrl,\n },\n ),\n )\n }\n return null\n }\n sourcemapString = await sourcemapResponse.text()\n } catch (e) {\n onFailure(\n createDetailedMessage(`error while fetching sourcemap.`, {\n [\"fetch error stack\"]: readErrorStack(e),\n [\"sourcemap url\"]: sourcemapUrl,\n }),\n )\n return null\n }\n }\n\n let sourceMap\n try {\n sourceMap = JSON.parse(sourcemapString)\n } catch (e) {\n onFailure(\n createDetailedMessage(`error while parsing sourcemap.`, {\n [\"parse error stack\"]: readErrorStack(e),\n [\"sourcemap url\"]: sourcemapUrl,\n }),\n )\n return null\n }\n\n let { sourcesContent } = sourceMap\n\n if (!sourcesContent) {\n sourcesContent = []\n sourceMap.sourcesContent = sourcesContent\n }\n\n let firstSourceMapSourceFailure = null\n\n await Promise.all(\n sourceMap.sources.map(async (source, index) => {\n if (index in sourcesContent) return\n\n const sourcemapSourceUrl = resolveFile(source, sourcemapUrl, {\n type: \"source\",\n })\n try {\n const sourceResponse = await fetchFile(sourcemapSourceUrl)\n const { status } = sourceResponse\n if (status !== 200) {\n if (firstSourceMapSourceFailure) return\n\n if (status === 404) {\n firstSourceMapSourceFailure = createDetailedMessage(\n `sourcemap source not found.`,\n {\n [\"sourcemap source url\"]: sourcemapSourceUrl,\n [\"sourcemap url\"]: sourcemapUrl,\n },\n )\n return\n }\n firstSourceMapSourceFailure = createDetailedMessage(\n `unexpected response for sourcemap source.`,\n {\n [\"response status\"]: status,\n [\"response text\"]: await sourceResponse.text(),\n [\"sourcemap source url\"]: sourcemapSourceUrl,\n [\"sourcemap url\"]: sourcemapUrl,\n },\n )\n return\n }\n\n const sourceString = await sourceResponse.text()\n sourcesContent[index] = sourceString\n } catch (e) {\n if (firstSourceMapSourceFailure) return\n firstSourceMapSourceFailure = createDetailedMessage(\n `error while fetching sourcemap source.`,\n {\n [\"fetch error stack\"]: readErrorStack(e),\n [\"sourcemap source url\"]: sourcemapSourceUrl,\n [\"sourcemap url\"]: sourcemapUrl,\n },\n )\n }\n }),\n )\n\n if (firstSourceMapSourceFailure) {\n onFailure(firstSourceMapSourceFailure)\n return null\n }\n\n return new SourceMapConsumer(sourceMap)\n } catch (e) {\n onFailure(\n createDetailedMessage(\n `error while preparing a sourceMap consumer for a stack trace file.`,\n {\n [\"error stack\"]: readErrorStack(e),\n [\"stack trace file\"]: stackTraceFileUrl,\n },\n ),\n )\n return null\n }\n },\n )\n const originalCallsites = await Promise.all(\n stack.map((callSite) =>\n remapCallSite(callSite, {\n resolveFile,\n urlToSourcemapConsumer,\n readErrorStack,\n onFailure,\n }),\n ),\n )\n return originalCallsites\n}\n\nconst memoizeByFirstArgStringValue = (fn) => {\n const stringValueCache = {}\n return (firstArgValue) => {\n if (firstArgValue in stringValueCache)\n return stringValueCache[firstArgValue]\n const value = fn(firstArgValue)\n stringValueCache[firstArgValue] = value\n return value\n }\n}\n",
113
- "export const stringifyStack = (stack, { error, indent }) => {\n const name = error.name || \"Error\"\n const message = error.message || \"\"\n const stackString = stack\n .map((callSite) => `\\n${indent}at ${callSite}`)\n .join(\"\")\n\n return `${name}: ${message}${stackString}`\n}\n",
114
- "import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { remapStack } from \"./remap_stack.js\"\nimport { stringifyStack } from \"./stringify_stack.js\"\n\nexport const installErrorStackRemapping = ({\n fetchFile,\n resolveFile,\n SourceMapConsumer,\n indent = \" \",\n}) => {\n if (typeof fetchFile !== \"function\") {\n throw new TypeError(`fetchFile must be a function, got ${fetchFile}`)\n }\n if (typeof SourceMapConsumer !== \"function\") {\n throw new TypeError(\n `sourceMapConsumer must be a function, got ${SourceMapConsumer}`,\n )\n }\n if (typeof indent !== \"string\") {\n throw new TypeError(`indent must be a string, got ${indent}`)\n }\n\n const errorRemappingCache = new WeakMap()\n const errorRemapFailureCallbackMap = new WeakMap()\n\n let installed = false\n const previousPrepareStackTrace = Error.prepareStackTrace\n const install = () => {\n if (installed) return\n installed = true\n Error.prepareStackTrace = prepareStackTrace\n }\n\n const uninstall = () => {\n if (!installed) return\n installed = false\n Error.prepareStackTrace = previousPrepareStackTrace\n }\n\n // ensure we do not use prepareStackTrace for thoose error\n // otherwise we would recursively remap error stack\n // and if the reason causing the failure is still here\n // it would create an infinite loop\n const readErrorStack = (error) => {\n uninstall()\n const stack = error.stack\n install()\n return stack\n }\n\n const prepareStackTrace = (error, stack) => {\n const onFailure = (failureData) => {\n const failureCallbackArray = errorRemapFailureCallbackMap.get(error)\n if (failureCallbackArray) {\n failureCallbackArray.forEach((callback) => callback(failureData))\n }\n }\n\n const stackRemappingPromise = remapStack({\n stack,\n error,\n resolveFile,\n fetchFile: memoizeFetch(fetchFile),\n SourceMapConsumer,\n readErrorStack,\n indent,\n onFailure,\n })\n errorRemappingCache.set(error, stackRemappingPromise)\n\n return stringifyStack(stack, { error, indent })\n }\n\n const getErrorOriginalStackString = async (\n error,\n {\n onFailure = (message) => {\n console.warn(message)\n },\n } = {},\n ) => {\n if (onFailure) {\n const remapFailureCallbackArray = errorRemapFailureCallbackMap.get(error)\n if (remapFailureCallbackArray) {\n errorRemapFailureCallbackMap.set(error, [\n ...remapFailureCallbackArray,\n onFailure,\n ])\n } else {\n errorRemapFailureCallbackMap.set(error, [onFailure])\n }\n }\n\n // ensure Error.prepareStackTrace gets triggered by reading error.stack now\n const { stack } = error\n const promise = errorRemappingCache.get(error)\n\n if (promise) {\n try {\n const originalCallsites = await promise\n errorRemapFailureCallbackMap.get(error)\n\n const firstCall = originalCallsites[0]\n if (firstCall) {\n Object.assign(error, {\n filename: firstCall.getFileName(),\n lineno: firstCall.getLineNumber(),\n columnno: firstCall.getColumnNumber(),\n })\n }\n return stringifyStack(originalCallsites, { error, indent })\n } catch (e) {\n onFailure(\n createDetailedMessage(`error while computing original stack.`, {\n [\"stack from error while computing\"]: readErrorStack(e),\n [\"stack from error to remap\"]: stack,\n }),\n )\n return stack\n }\n }\n\n return stack\n }\n\n install()\n\n return { getErrorOriginalStackString, uninstall }\n}\n\nconst memoizeFetch = (fetchUrl) => {\n const urlCache = {}\n return async (url) => {\n if (url in urlCache) {\n return urlCache[url]\n }\n const responsePromise = fetchUrl(url)\n urlCache[url] = responsePromise\n return responsePromise\n }\n}\n",
115
- "import { installErrorStackRemapping } from \"@jsenv/core/src/internal/error_stack_remap/install_error_stack_remapping.js\"\n\nexport const installBrowserErrorStackRemapping = (options = {}) =>\n installErrorStackRemapping({\n fetchFile: async (url) => {\n // browser having Error.captureStackTrace got window.fetch\n // and this executes only when Error.captureStackTrace exists\n // so no need for polyfill or whatever here\n const response = await window.fetch(url, {\n // by default a script tag is in \"no-cors\"\n // so we also fetch url with \"no-cors\"\n mode: \"no-cors\",\n })\n // we read response test before anything because once memoized fetch\n // gets annoying preventing you to read\n // body multiple times, even using response.clone()\n const text = await response.text()\n return {\n status: response.status,\n url: response.url,\n statusText: response.statusText,\n headers: responseToHeaders(response),\n text: () => text,\n json: response.json.bind(response),\n blob: response.blob.bind(response),\n arrayBuffer: response.arrayBuffer.bind(response),\n }\n },\n resolveFile: (specifier, importer = window.location.href) => {\n // browsers having Error.captureStrackTrace got window.URL\n // and this executes only when Error.captureStackTrace exists\n return String(new URL(specifier, importer))\n },\n ...options,\n })\n\nconst responseToHeaders = (response) => {\n const headers = {}\n response.headers.forEach((value, name) => {\n headers[name] = value\n })\n return headers\n}\n",
116
- "export const displayErrorInDocument = (error) => {\n const title = \"An error occured\"\n let theme\n let message\n\n if (error && error.parsingError) {\n theme = \"light\"\n const { parsingError } = error\n message = errorToHTML(\n parsingError.messageHTML || escapeHtml(parsingError.message),\n )\n } else {\n theme = \"dark\"\n message = errorToHTML(error)\n }\n\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 // stackTrace formatted by V8\n 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",
117
- "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",
118
- "import { fetchUrl } from \"@jsenv/core/src/internal/browser_utils/fetch_browser.js\"\nimport { fetchAndEval } from \"@jsenv/core/src/internal/browser_utils/fetch_and_eval.js\"\nimport { unevalException } from \"@jsenv/core/src/internal/runtime_client/uneval_exception.js\"\nimport { memoize } from \"@jsenv/core/src/internal/memoize.js\"\n\nimport { createBrowserClient } from \"./browser_client_factory.js\"\nimport { installBrowserErrorStackRemapping } from \"./browser_error_stack_remap.js\"\nimport { displayErrorInDocument } from \"./error_in_document.js\"\nimport { displayErrorNotification } from \"./error_in_notification.js\"\n\nconst getNavigationStartTime = () => {\n try {\n return window.performance.timing.navigationStart\n } catch (e) {\n return Date.now()\n }\n}\n\nconst navigationStartTime = getNavigationStartTime()\n\nconst readyPromise = new Promise((resolve) => {\n if (document.readyState === \"complete\") {\n resolve()\n } else {\n const loadCallback = () => {\n window.removeEventListener(\"load\", loadCallback)\n resolve()\n }\n window.addEventListener(\"load\", loadCallback)\n }\n})\n\nconst fileExecutionMap = {}\n\nconst executionResultPromise = readyPromise.then(async () => {\n const fileExecutionResultMap = {}\n const fileExecutionResultPromises = []\n let status = \"completed\"\n let exceptionSource = \"\"\n Object.keys(fileExecutionMap).forEach((key) => {\n fileExecutionResultMap[key] = null // to get always same order for Object.keys(executionResult)\n const fileExecutionResultPromise = fileExecutionMap[key]\n fileExecutionResultPromises.push(fileExecutionResultPromise)\n fileExecutionResultPromise.then((fileExecutionResult) => {\n fileExecutionResultMap[key] = fileExecutionResult\n if (fileExecutionResult.status === \"errored\") {\n status = \"errored\"\n exceptionSource = fileExecutionResult.exceptionSource\n }\n })\n })\n await Promise.all(fileExecutionResultPromises)\n\n return {\n status,\n ...(status === \"errored\" ? { exceptionSource } : {}),\n startTime: navigationStartTime,\n endTime: Date.now(),\n fileExecutionResultMap,\n }\n})\n\nconst executeFileUsingDynamicImport = async (\n specifier,\n identifier = specifier,\n) => {\n const { currentScript } = document\n const fileExecutionResultPromise = (async () => {\n try {\n const url = new URL(specifier, document.location.href).href\n performance.mark(`jsenv_file_import_start`)\n const namespace = await import(url)\n performance.measure(`jsenv_file_import`, `jsenv_file_import_start`)\n const executionResult = {\n status: \"completed\",\n namespace,\n coverage: readCoverage(),\n }\n return executionResult\n } catch (e) {\n performance.measure(`jsenv_file_import`, `jsenv_file_import_start`)\n const executionResult = {\n status: \"errored\",\n error: e,\n coverage: readCoverage(),\n }\n onExecutionError(executionResult, { currentScript })\n return executionResult\n }\n })()\n fileExecutionMap[identifier] = fileExecutionResultPromise\n return fileExecutionResultPromise\n}\n\nconst executeFileUsingSystemJs = (specifier) => {\n // si on a déja importer ce fichier ??\n // if (specifier in fileExecutionMap) {\n\n // }\n\n const { currentScript } = document\n\n const fileExecutionResultPromise = (async () => {\n const browserRuntime = await getBrowserRuntime()\n const executionResult = await browserRuntime.executeFile(specifier, {\n measurePerformance: true,\n collectPerformance: true,\n })\n if (executionResult.status === \"errored\") {\n onExecutionError(executionResult, { currentScript })\n }\n return executionResult\n })()\n fileExecutionMap[specifier] = fileExecutionResultPromise\n return fileExecutionResultPromise\n}\n\nconst onExecutionError = (\n executionResult,\n {\n currentScript,\n errorExposureInConsole = true,\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 { parsingError } = error\n const globalErrorEvent = new Event(\"error\")\n if (parsingError) {\n globalErrorEvent.filename = parsingError.filename\n globalErrorEvent.lineno = parsingError.lineNumber\n globalErrorEvent.message = parsingError.message\n globalErrorEvent.colno = parsingError.columnNumber\n } else {\n globalErrorEvent.filename = error.filename\n globalErrorEvent.lineno = error.lineno\n globalErrorEvent.message = error.message\n globalErrorEvent.colno = error.columnno\n }\n window.dispatchEvent(globalErrorEvent)\n }\n\n if (errorExposureInConsole) {\n console.error(error)\n }\n if (errorExposureInNotification) {\n displayErrorNotification(error)\n }\n if (errorExposureInDocument) {\n displayErrorInDocument(error)\n }\n\n executionResult.exceptionSource = unevalException(error)\n delete executionResult.error\n}\n\nconst getBrowserRuntime = memoize(async () => {\n const compileServerOrigin = document.location.origin\n const compileServerResponse = await fetchUrl(\n `${compileServerOrigin}/__jsenv_compile_profile__`,\n )\n const compileServerMeta = await compileServerResponse.json()\n const { jsenvDirectoryRelativeUrl, errorStackRemapping } = compileServerMeta\n const jsenvDirectoryServerUrl = `${compileServerOrigin}/${jsenvDirectoryRelativeUrl}`\n const afterJsenvDirectory = document.location.href.slice(\n jsenvDirectoryServerUrl.length,\n )\n const parts = afterJsenvDirectory.split(\"/\")\n const compileId = parts[0]\n\n const browserClient = await createBrowserClient({\n compileServerOrigin,\n jsenvDirectoryRelativeUrl,\n compileId,\n })\n\n if (errorStackRemapping && Error.captureStackTrace) {\n const { sourcemapMainFileRelativeUrl, sourcemapMappingFileRelativeUrl } =\n compileServerMeta\n await fetchAndEval(`${compileServerOrigin}/${sourcemapMainFileRelativeUrl}`)\n const { SourceMapConsumer } = window.sourceMap\n SourceMapConsumer.initialize({\n \"lib/mappings.wasm\": `${compileServerOrigin}/${sourcemapMappingFileRelativeUrl}`,\n })\n const { getErrorOriginalStackString } = installBrowserErrorStackRemapping({\n SourceMapConsumer,\n })\n const errorTransform = async (error) => {\n // code can throw something else than an error\n // in that case return it unchanged\n if (!error || !(error instanceof Error)) return error\n const originalStack = await getErrorOriginalStackString(error)\n error.stack = originalStack\n return error\n }\n const executeFile = browserClient.executeFile\n browserClient.executeFile = (file, options = {}) => {\n return executeFile(file, { errorTransform, ...options })\n }\n }\n return browserClient\n})\n\nconst livereloadingCallbacks = {}\n\nconst readCoverage = () => window.__coverage__\n\nwindow.__jsenv__ = {\n livereloadingCallbacks,\n executionResultPromise,\n executeFileUsingDynamicImport,\n executeFileUsingSystemJs,\n}\n"
119
- ],
120
- "names": [
121
- "nativeTypeOf",
122
- "obj",
123
- "customTypeOf",
124
- "Symbol",
125
- "constructor",
126
- "prototype",
127
- "iterator",
128
- "key",
129
- "value",
130
- "Object",
131
- "defineProperty",
132
- "enumerable",
133
- "configurable",
134
- "writable",
135
- "ownKeys",
136
- "object",
137
- "enumerableOnly",
138
- "keys",
139
- "getOwnPropertySymbols",
140
- "symbols",
141
- "filter",
142
- "sym",
143
- "getOwnPropertyDescriptor",
144
- "push",
145
- "apply",
146
- "_objectSpread2",
147
- "target",
148
- "i",
149
- "arguments",
150
- "length",
151
- "source",
152
- "forEach",
153
- "getOwnPropertyDescriptors",
154
- "defineProperties",
155
- "excluded",
156
- "sourceKeys",
157
- "indexOf",
158
- "objectWithoutPropertiesLoose",
159
- "sourceSymbolKeys",
160
- "propertyIsEnumerable",
161
- "call",
162
- "then",
163
- "direct",
164
- "Promise",
165
- "resolve",
166
- "f",
167
- "args",
168
- "e",
169
- "reject",
170
- "body",
171
- "result",
172
- "fetchUsingXHR",
173
- "url",
174
- "signal",
175
- "method",
176
- "credentials",
177
- "headers",
178
- "headersPromise",
179
- "createPromiseAndHooks",
180
- "bodyPromise",
181
- "xhr",
182
- "XMLHttpRequest",
183
- "failure",
184
- "error",
185
- "settled",
186
- "cleanup",
187
- "ontimeout",
188
- "onerror",
189
- "onload",
190
- "onreadystatechange",
191
- "Error",
192
- "createRequestError",
193
- "addEventListener",
194
- "abort",
195
- "abortError",
196
- "name",
197
- "readyState",
198
- "open",
199
- "setRequestHeader",
200
- "withCredentials",
201
- "computeWithCredentials",
202
- "hasBlob",
203
- "responseType",
204
- "send",
205
- "responseUrl",
206
- "responseURL",
207
- "responseStatus",
208
- "status",
209
- "responseStatusText",
210
- "statusText",
211
- "responseHeaders",
212
- "getHeadersFromXHR",
213
- "readBody",
214
- "response",
215
- "responseText",
216
- "responseBody",
217
- "responseBodyType",
218
- "detectBodyType",
219
- "text",
220
- "blobToText",
221
- "arrayBufferToText",
222
- "buffer",
223
- "String",
224
- "json",
225
- "JSON",
226
- "parse",
227
- "blob",
228
- "Blob",
229
- "cloneBuffer",
230
- "arrayBuffer",
231
- "blobToArrayBuffer",
232
- "formData",
233
- "hasFormData",
234
- "textToFormData",
235
- "canUseBlob",
236
- "window",
237
- "FileReader",
238
- "FormData",
239
- "hasArrayBuffer",
240
- "ArrayBuffer",
241
- "hasSearchParams",
242
- "URLSearchParams",
243
- "stack",
244
- "promise",
245
- "res",
246
- "rej",
247
- "originSameAsGlobalOrigin",
248
- "location",
249
- "globalOrigin",
250
- "origin",
251
- "hrefToOrigin",
252
- "isPrototypeOf",
253
- "isDataView",
254
- "isArrayBufferView",
255
- "headerMap",
256
- "headersString",
257
- "getAllResponseHeaders",
258
- "lines",
259
- "trim",
260
- "split",
261
- "line",
262
- "parts",
263
- "shift",
264
- "join",
265
- "toLowerCase",
266
- "href",
267
- "scheme",
268
- "hrefToScheme",
269
- "secondProtocolSlashIndex",
270
- "pathnameSlashIndex",
271
- "slice",
272
- "colonIndex",
273
- "DataView",
274
- "isView",
275
- "viewClasses",
276
- "includes",
277
- "toString",
278
- "form",
279
- "bytes",
280
- "replace",
281
- "append",
282
- "decodeURIComponent",
283
- "reader",
284
- "fileReaderReady",
285
- "readAsArrayBuffer",
286
- "readAsText",
287
- "view",
288
- "Uint8Array",
289
- "chars",
290
- "Array",
291
- "fromCharCode",
292
- "byteLength",
293
- "set",
294
- "_await",
295
- "_async",
296
- "fetchNative",
297
- "mode",
298
- "options",
299
- "fetch",
300
- "responseToHeaders",
301
- "fetchUrl",
302
- "AbortController",
303
- "createDetailedMessage",
304
- "message",
305
- "details",
306
- "string",
307
- "isArray",
308
- "fetchAndEval",
309
- "eval",
310
- "appendSourceURL",
311
- "code",
312
- "sourceURL",
313
- "arrayLikeToArray",
314
- "arr",
315
- "len",
316
- "arr2",
317
- "_iterableToArray",
318
- "iter",
319
- "from",
320
- "unsupportedIterableToArray",
321
- "o",
322
- "minLen",
323
- "n",
324
- "test",
325
- "TypeError",
326
- "arrayWithoutHoles",
327
- "iterableToArray",
328
- "nonIterableSpread",
329
- "isComposite",
330
- "type",
331
- "compositeWellKnownMap",
332
- "WeakMap",
333
- "primitiveWellKnownMap",
334
- "Map",
335
- "getCompositeGlobalPath",
336
- "get",
337
- "getPrimitiveGlobalPath",
338
- "visitGlobalObject",
339
- "visitValue",
340
- "path",
341
- "has",
342
- "visitProperty",
343
- "property",
344
- "descriptor",
345
- "propertyValue",
346
- "getOwnPropertyNames",
347
- "symbol",
348
- "global",
349
- "decompose",
350
- "mainValue",
351
- "functionAllowed",
352
- "prototypeStrict",
353
- "ignoreSymbols",
354
- "valueMap",
355
- "recipeArray",
356
- "valueToIdentifier",
357
- "existingIdentifier",
358
- "identifierForPrimitive",
359
- "undefined",
360
- "identifier",
361
- "identifierForNewValue",
362
- "primitiveToRecipe",
363
- "createPromiseAreNotSupportedMessage",
364
- "WeakSet",
365
- "createWeakSetAreNotSupportedMessage",
366
- "createWeakMapAreNotSupportedMessage",
367
- "createForbiddenFunctionMessage",
368
- "identifierForComposite",
369
- "compositeGlobalPath",
370
- "createGlobalReferenceRecipe",
371
- "propertyDescriptionArray",
372
- "propertyName",
373
- "propertyDescriptor",
374
- "propertyNameIdentifier",
375
- "propertyDescription",
376
- "computePropertyDescription",
377
- "symbolDescriptionArray",
378
- "symbolIdentifier",
379
- "methodDescriptionArray",
380
- "computeMethodDescriptionArray",
381
- "extensible",
382
- "isExtensible",
383
- "createCompositeRecipe",
384
- "propertyNameOrSymbol",
385
- "createForbiddenPropertySetterMessage",
386
- "createForbiddenPropertyGetterMessage",
387
- "getIdentifier",
388
- "setIdentifier",
389
- "valueIdentifier",
390
- "Set",
391
- "callArray",
392
- "entryValue",
393
- "index",
394
- "entryValueIdentifier",
395
- "methodNameIdentifier",
396
- "entryKey",
397
- "entryKeyIdentifier",
398
- "find",
399
- "existingValue",
400
- "is",
401
- "nextIdentifier",
402
- "currentIdentifier",
403
- "parseInt",
404
- "mainIdentifier",
405
- "prototypeValueToIdentifier",
406
- "prototypeValue",
407
- "prototypeExistingIdentifier",
408
- "prototypeIdentifier",
409
- "prototypeGlobalPath",
410
- "createUnknownPrototypeMessage",
411
- "getPrototypeOf",
412
- "identifierForValueOf",
413
- "valueOf",
414
- "valueOfReturnValue",
415
- "createUnexpectedValueOfReturnValueMessage",
416
- "recipe",
417
- "valueOfIdentifier",
418
- "RegExp",
419
- "symbolToRecipe",
420
- "createPimitiveRecipe",
421
- "globalSymbolKey",
422
- "keyFor",
423
- "createGlobalSymbolRecipe",
424
- "symbolGlobalPath",
425
- "createUnknownSymbolMessage",
426
- "sortRecipe",
427
- "findInRecipePrototypeChain",
428
- "callback",
429
- "currentRecipe",
430
- "recipeArrayOrdered",
431
- "sort",
432
- "leftRecipe",
433
- "rightRecipe",
434
- "leftType",
435
- "rightType",
436
- "rightRecipeIsInLeftRecipePrototypeChain",
437
- "recipeCandidate",
438
- "leftRecipeIsInRightRecipePrototypeChain",
439
- "leftIndex",
440
- "rightIndex",
441
- "escapeString",
442
- "j",
443
- "escapedString",
444
- "char",
445
- "escapedChar",
446
- "uneval",
447
- "recipeArraySorted",
448
- "variableNameMap",
449
- "indexSorted",
450
- "identifierToVariableName",
451
- "recipeToSetupSource",
452
- "primitiveRecipeToSetupSource",
453
- "globalSymbolRecipeToSetupSource",
454
- "globalReferenceRecipeToSetupSource",
455
- "compositeRecipeToSetupSource",
456
- "pathSource",
457
- "map",
458
- "part",
459
- "prototypeConstructor",
460
- "recipeVariableName",
461
- "recipeToMutateSource",
462
- "compositeRecipeToMutateSource",
463
- "mutateSource",
464
- "generateDefinePropertySource",
465
- "generateMethodCallSource",
466
- "generatePreventExtensionSource",
467
- "propertyNameOrSymbolIdentifier",
468
- "propertyOrSymbolVariableName",
469
- "propertyDescriptorSource",
470
- "generatePropertyDescriptorSource",
471
- "methodCallSource",
472
- "methodVariableName",
473
- "argumentIdentifiers",
474
- "argumentVariableNames",
475
- "argumentIdentifier",
476
- "unevalException",
477
- "hasOwnProperty",
478
- "memoize",
479
- "compute",
480
- "memoized",
481
- "memoizedValue",
482
- "fnWithMemoization",
483
- "forget",
484
- "assertImportMap",
485
- "hasScheme",
486
- "urlToScheme",
487
- "urlString",
488
- "urlToPathname",
489
- "ressourceToPathname",
490
- "urlToRessource",
491
- "afterProtocol",
492
- "ressource",
493
- "searchSeparatorIndex",
494
- "urlToOrigin",
495
- "pathnameToParentPathname",
496
- "pathname",
497
- "slashLastIndex",
498
- "lastIndexOf",
499
- "resolveUrl",
500
- "specifier",
501
- "baseUrl",
502
- "writeBaseUrlMustBeAString",
503
- "writeBaseUrlMustBeAbsolute",
504
- "writeBaseUrlRequired",
505
- "baseOrigin",
506
- "basePathname",
507
- "baseDirectoryPathname",
508
- "unresolvedPathname",
509
- "importerFolders",
510
- "pop",
511
- "resolvedPathname",
512
- "tryUrlResolution",
513
- "resolveSpecifier",
514
- "importer",
515
- "startsWith",
516
- "sortImports",
517
- "imports",
518
- "mappingsSorted",
519
- "compareLengthOrLocaleCompare",
520
- "sortScopes",
521
- "scopes",
522
- "scopesSorted",
523
- "scopeSpecifier",
524
- "a",
525
- "b",
526
- "localeCompare",
527
- "normalizeImportMap",
528
- "importMap",
529
- "isStringOrUrl",
530
- "formulateBaseUrlMustBeStringOrUrl",
531
- "normalizeMappings",
532
- "normalizeScopes",
533
- "URL",
534
- "mappings",
535
- "mappingsNormalized",
536
- "address",
537
- "console",
538
- "warn",
539
- "formulateAddressMustBeAString",
540
- "specifierResolved",
541
- "addressUrl",
542
- "formulateAdressResolutionFailed",
543
- "endsWith",
544
- "formulateAddressUrlRequiresTrailingSlash",
545
- "scopesNormalized",
546
- "scopeMappings",
547
- "scopeUrl",
548
- "formulateScopeResolutionFailed",
549
- "scope",
550
- "scopeValueNormalized",
551
- "addressURL",
552
- "pathnameToExtension",
553
- "dotLastIndex",
554
- "applyImportMap",
555
- "createBareSpecifierError",
556
- "onImportMapping",
557
- "specifierUrl",
558
- "specifierNormalized",
559
- "scopeSpecifierMatching",
560
- "specifierIsPrefixOf",
561
- "mappingFromScopes",
562
- "applyMappings",
563
- "mappingFromImports",
564
- "specifierCandidates",
565
- "specifierCandidate",
566
- "to",
567
- "before",
568
- "after",
569
- "afterSpecifier",
570
- "addressFinal",
571
- "specifierHref",
572
- "resolveImport",
573
- "defaultExtension",
574
- "applyDefaultExtension",
575
- "extension",
576
- "importerPathname",
577
- "importerExtension",
578
- "getJavaScriptModuleResponseError",
579
- "importerUrl",
580
- "compileServerOrigin",
581
- "compileDirectoryRelativeUrl",
582
- "jsonContentTypeAccepted",
583
- "getModuleDetails",
584
- "notFound",
585
- "contentType",
586
- "bodyAsJson",
587
- "filename",
588
- "parsingError",
589
- "suggestion",
590
- "relativeUrl",
591
- "tryToFindProjectRelativeUrl",
592
- "importerRelativeUrl",
593
- "file",
594
- "afterOrigin",
595
- "afterCompileDirectory",
596
- "urlToExtension",
597
- "fakeUrl",
598
- "specifierExtension",
599
- "createImportResolverForImportmap",
600
- "importMapUrl",
601
- "importDefaultExtension",
602
- "onBareSpecifierError",
603
- "_resolveImport",
604
- "bareSpecifierError",
605
- "detailedMessage",
606
- "errMsg",
607
- "errCode",
608
- "msg",
609
- "hasSymbol",
610
- "hasSelf",
611
- "self",
612
- "hasDocument",
613
- "document",
614
- "envGlobal",
615
- "baseEl",
616
- "querySelector",
617
- "lastSepIndex",
618
- "backslashRegEx",
619
- "resolveIfNotPlainOrUrl",
620
- "relUrl",
621
- "parentUrl",
622
- "parentProtocol",
623
- "segmented",
624
- "output",
625
- "segmentIndex",
626
- "resolveAndComposePackages",
627
- "packages",
628
- "outPackages",
629
- "parentMap",
630
- "p",
631
- "resolvedLhs",
632
- "rhs",
633
- "mapped",
634
- "resolveImportMap",
635
- "targetWarning",
636
- "resolveAndComposeImportMap",
637
- "outMap",
638
- "u",
639
- "resolvedScope",
640
- "depcache",
641
- "integrity",
642
- "getMatch",
643
- "matchObj",
644
- "sepIndex",
645
- "segment",
646
- "applyPackages",
647
- "id",
648
- "pkgName",
649
- "pkg",
650
- "match",
651
- "resolvedOrPlain",
652
- "packageResolution",
653
- "toStringTag",
654
- "REGISTRY",
655
- "SystemJS",
656
- "systemJSPrototype",
657
- "import",
658
- "loader",
659
- "prepareImport",
660
- "load",
661
- "getOrCreateLoad",
662
- "C",
663
- "topLevelLoad",
664
- "createContext",
665
- "parentId",
666
- "lastRegister",
667
- "register",
668
- "deps",
669
- "declare",
670
- "getRegister",
671
- "_lastRegister",
672
- "firstParentUrl",
673
- "importerSetters",
674
- "ns",
675
- "create",
676
- "instantiatePromise",
677
- "instantiate",
678
- "registration",
679
- "_export",
680
- "h",
681
- "changed",
682
- "__esModule",
683
- "setter",
684
- "declared",
685
- "importId",
686
- "meta",
687
- "execute",
688
- "setters",
689
- "err",
690
- "er",
691
- "linkPromise",
692
- "instantiation",
693
- "all",
694
- "dep",
695
- "depId",
696
- "depLoad",
697
- "I",
698
- "depLoads",
699
- "d",
700
- "L",
701
- "E",
702
- "instantiateAll",
703
- "parent",
704
- "loaded",
705
- "catch",
706
- "postOrderExec",
707
- "nullContext",
708
- "freeze",
709
- "seen",
710
- "depLoadPromises",
711
- "depLoadPromise",
712
- "doExec",
713
- "execPromise",
714
- "System",
715
- "importMapPromise",
716
- "processFirst",
717
- "doProcessScripts",
718
- "processScripts",
719
- "querySelectorAll",
720
- "script",
721
- "sp",
722
- "src",
723
- "event",
724
- "createEvent",
725
- "initEvent",
726
- "dispatchEvent",
727
- "fetchPromise",
728
- "ok",
729
- "innerHTML",
730
- "extendImportMap",
731
- "newMapText",
732
- "newMapUrl",
733
- "newMap",
734
- "evt",
735
- "lastWindowErrorUrl",
736
- "lastWindowError",
737
- "createScript",
738
- "createElement",
739
- "async",
740
- "crossOrigin",
741
- "lastAutoImportDeps",
742
- "lastAutoImportTimeout",
743
- "autoImportCandidates",
744
- "systemRegister",
745
- "inlineScriptCount",
746
- "autoUrl",
747
- "scripts",
748
- "lastScript",
749
- "lastAutoImportUrl",
750
- "setTimeout",
751
- "autoImportRegistration",
752
- "head",
753
- "removeChild",
754
- "clearTimeout",
755
- "appendChild",
756
- "shouldFetch",
757
- "jsContentTypeRegEx",
758
- "throwUnresolved",
759
- "systemInstantiate",
760
- "preloads",
761
- "importScripts",
762
- "registerRegistry",
763
- "define",
764
- "WorkerGlobalScope",
765
- "importMapFromParentPromise",
766
- "importmapMessageCallback",
767
- "data",
768
- "removeEventListener",
769
- "ports",
770
- "onmessage",
771
- "postMessage",
772
- "importmap",
773
- "stringify",
774
- "messageEvents",
775
- "messageCallback",
776
- "messageEvent",
777
- "WorkerConstructor",
778
- "Worker",
779
- "worker",
780
- "importmapChannel",
781
- "MessageChannel",
782
- "port1",
783
- "port2",
784
- "serviceWorker",
785
- "navigator",
786
- "registrationPromise",
787
- "installing",
788
- "waiting",
789
- "active",
790
- "recover",
791
- "createBrowserSystem",
792
- "importResolver",
793
- "fetchSource",
794
- "browserSystem",
795
- "extractImportTypeFromUrl",
796
- "importType",
797
- "urlWithoutImportType",
798
- "instantiateAsJsonModule",
799
- "jsonModule",
800
- "instantiateAsCssModule",
801
- "cssModule",
802
- "vendor",
803
- "createDetailedInstantiateError",
804
- "instantiateError",
805
- "jsenvError",
806
- "urlObject",
807
- "search",
808
- "searchParams",
809
- "delete",
810
- "contentTypeExpected",
811
- "compileDirectoryServerUrl",
812
- "originalFileRelativeUrl",
813
- "__jsenv__",
814
- "livereloadingCallbacks",
815
- "reloadPage",
816
- "cssText",
817
- "cssTextWithBaseUrl",
818
- "cssWithBaseUrl",
819
- "cssUrl",
820
- "sheet",
821
- "CSSStyleSheet",
822
- "replaceSync",
823
- "cssDirectoryUrl",
824
- "baseDirectoryUrl",
825
- "cssTextRelocated",
826
- "quotes",
827
- "relUrl1",
828
- "relUrl2",
829
- "absoluteUrl",
830
- "jsModuleResponseError",
831
- "performance",
832
- "thrown",
833
- "finalizer",
834
- "bind",
835
- "measureAsyncFnPerf",
836
- "fn",
837
- "perfMarkStartName",
838
- "mark",
839
- "measure",
840
- "makeModuleNamespaceTransferable",
841
- "namespace",
842
- "transferableNamespace",
843
- "isTransferable",
844
- "hideNonTransferableValue",
845
- "seenArray",
846
- "visit",
847
- "constructorName",
848
- "supportedTypes",
849
- "maybe",
850
- "maybeTypes",
851
- "visited",
852
- "every",
853
- "values",
854
- "memoizedCreateBrowserSystem",
855
- "createBrowserClient",
856
- "jsenvDirectoryRelativeUrl",
857
- "compileId",
858
- "fetchJson",
859
- "compileServerMetaUrl",
860
- "importmapScript",
861
- "importmapRaw",
862
- "importmapFileResponse",
863
- "textContent",
864
- "importFile",
865
- "executeFile",
866
- "executionExposureOnWindow",
867
- "errorTransform",
868
- "measurePerformance",
869
- "importUsingSystemJs",
870
- "coverage",
871
- "readCoverage",
872
- "transformedError",
873
- "executionResult",
874
- "__executionResult__",
875
- "__coverage__",
876
- "DataUrl",
877
- "as",
878
- "afterDataProtocol",
879
- "commaIndex",
880
- "beforeComma",
881
- "mediaType",
882
- "base64Flag",
883
- "afterComma",
884
- "base64ToString",
885
- "dataToBase64",
886
- "atob",
887
- "Buffer",
888
- "btoa",
889
- "base64String",
890
- "getJavaScriptSourceMappingUrl",
891
- "javaScriptSource",
892
- "sourceMappingUrl",
893
- "replaceSourceMappingUrl",
894
- "javascriptSourceMappingUrlCommentRegexp",
895
- "regexp",
896
- "lastSourceMappingUrl",
897
- "matchSourceMappingUrl",
898
- "exec",
899
- "mappedAfter",
900
- "firstGroup",
901
- "startsWithWindowsDriveLetter",
902
- "firstChar",
903
- "secondChar",
904
- "windowsFilePathToUrl",
905
- "windowsFilePath",
906
- "replaceBackSlashesWithSlashes",
907
- "remapCallSite",
908
- "callSite",
909
- "urlToSourcemapConsumer",
910
- "resolveFile",
911
- "readErrorStack",
912
- "onFailure",
913
- "isNative",
914
- "getFileName",
915
- "getScriptNameOrSourceURL",
916
- "getLineNumber",
917
- "column",
918
- "getColumnNumber",
919
- "remapSourcePosition",
920
- "originalPosition",
921
- "callSiteClone",
922
- "cloneCallSite",
923
- "getFunctionName",
924
- "isEval",
925
- "getEvalOrigin",
926
- "remapEvalOrigin",
927
- "originalEvalOrigin",
928
- "methods",
929
- "callSiteToFunctionCall",
930
- "fileLocation",
931
- "callSiteToFileLocation",
932
- "isConstructor",
933
- "isMethodCall",
934
- "isToplevel",
935
- "callSiteToMethodCall",
936
- "functionName",
937
- "typeName",
938
- "callSiteToType",
939
- "methodName",
940
- "getMethodName",
941
- "generateAs",
942
- "getTypeName",
943
- "sourceFile",
944
- "callSiteToSourceFile",
945
- "lineNumber",
946
- "columnNumber",
947
- "fileName",
948
- "topLevelEvalMatch",
949
- "Number",
950
- "nestedEvalMatch",
951
- "position",
952
- "sourceToUrl",
953
- "sourceMapConsumer",
954
- "originalPositionFor",
955
- "originalSource",
956
- "startsWithScheme",
957
- "remapStack",
958
- "fetchFile",
959
- "SourceMapConsumer",
960
- "memoizeByFirstArgStringValue",
961
- "stackTraceFileUrl",
962
- "fileResponse",
963
- "jsSourcemapUrl",
964
- "sourcemapUrl",
965
- "sourcemapString",
966
- "sourcemapResponse",
967
- "sourceMap",
968
- "sourcesContent",
969
- "firstSourceMapSourceFailure",
970
- "sources",
971
- "sourcemapSourceUrl",
972
- "sourceResponse",
973
- "sourceString",
974
- "stringValueCache",
975
- "firstArgValue",
976
- "stringifyStack",
977
- "indent",
978
- "stackString",
979
- "installErrorStackRemapping",
980
- "errorRemappingCache",
981
- "errorRemapFailureCallbackMap",
982
- "installed",
983
- "previousPrepareStackTrace",
984
- "prepareStackTrace",
985
- "install",
986
- "uninstall",
987
- "failureData",
988
- "failureCallbackArray",
989
- "stackRemappingPromise",
990
- "memoizeFetch",
991
- "getErrorOriginalStackString",
992
- "remapFailureCallbackArray",
993
- "originalCallsites",
994
- "firstCall",
995
- "assign",
996
- "lineno",
997
- "columnno",
998
- "urlCache",
999
- "responsePromise",
1000
- "installBrowserErrorStackRemapping",
1001
- "displayErrorInDocument",
1002
- "title",
1003
- "theme",
1004
- "errorToHTML",
1005
- "messageHTML",
1006
- "escapeHtml",
1007
- "css",
1008
- "html",
1009
- "removeJsenvConsole",
1010
- "appendHMTLInside",
1011
- "onclick",
1012
- "captureStackTrace",
1013
- "htmlWithCorrectLineBreaks",
1014
- "htmlWithLinks",
1015
- "stringToStringWithLink",
1016
- "transform",
1017
- "linkHTML",
1018
- "lastChar",
1019
- "endsWithSeparationChar",
1020
- "lineAndColumnPattern",
1021
- "lineAndColumMatch",
1022
- "lineAndColumnString",
1023
- "link",
1024
- "linePattern",
1025
- "lineMatch",
1026
- "lineString",
1027
- "parentNode",
1028
- "temoraryParent",
1029
- "transferChildren",
1030
- "fromNode",
1031
- "toNode",
1032
- "childNodes",
1033
- "c",
1034
- "Notification",
1035
- "displayErrorNotificationNotAvailable",
1036
- "displayErrorNotificationImplementation",
1037
- "icon",
1038
- "permission",
1039
- "notification",
1040
- "lang",
1041
- "focus",
1042
- "displayErrorNotification",
1043
- "getNavigationStartTime",
1044
- "timing",
1045
- "navigationStart",
1046
- "Date",
1047
- "now",
1048
- "navigationStartTime",
1049
- "_catch",
1050
- "readyPromise",
1051
- "loadCallback",
1052
- "_call",
1053
- "fileExecutionMap",
1054
- "_invoke",
1055
- "executionResultPromise",
1056
- "fileExecutionResultMap",
1057
- "fileExecutionResultPromises",
1058
- "exceptionSource",
1059
- "fileExecutionResultPromise",
1060
- "fileExecutionResult",
1061
- "startTime",
1062
- "endTime",
1063
- "executeFileUsingDynamicImport",
1064
- "currentScript",
1065
- "onExecutionError",
1066
- "executeFileUsingSystemJs",
1067
- "getBrowserRuntime",
1068
- "browserRuntime",
1069
- "collectPerformance",
1070
- "errorExposureInConsole",
1071
- "errorExposureInNotification",
1072
- "errorExposureInDocument",
1073
- "errorEvent",
1074
- "Event",
1075
- "globalErrorEvent",
1076
- "colno",
1077
- "compileServerResponse",
1078
- "compileServerMeta",
1079
- "errorStackRemapping",
1080
- "jsenvDirectoryServerUrl",
1081
- "afterJsenvDirectory",
1082
- "browserClient",
1083
- "sourcemapMainFileRelativeUrl",
1084
- "sourcemapMappingFileRelativeUrl",
1085
- "initialize",
1086
- "originalStack"
1087
- ],
1088
- "mappings": "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"
1089
- }