@jsenv/core 24.6.2 → 24.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. package/dist/browser_runtime/browser_runtime-c7288751.js +58 -41
  2. package/dist/browser_runtime/browser_runtime-c7288751.js.map +3 -1
  3. package/dist/build_manifest.js +4 -4
  4. package/dist/compile_proxy/asset-manifest.json +1 -1
  5. package/dist/compile_proxy/{compile_proxy-a3969633.html → compile_proxy-28148b58.html} +25 -20
  6. package/dist/compile_proxy/{compile_proxy.html__inline__20-9c92c170.js.map → compile_proxy.html__inline__20-4887fb1d.js.map} +2 -1
  7. package/dist/event_source_client/event_source_client-9f14c8b9.js +11 -5
  8. package/dist/event_source_client/event_source_client-9f14c8b9.js.map +1 -1
  9. package/dist/redirector/asset-manifest.json +1 -1
  10. package/dist/redirector/{redirector-a6b8d640.html → redirector-3c05dbb2.html} +25 -20
  11. package/dist/redirector/{redirector.html__inline__15-58430672.js.map → redirector.html__inline__15-19e529b9.js.map} +2 -1
  12. package/dist/toolbar/asset-manifest.json +1 -1
  13. package/dist/toolbar/{toolbar-84985f43.html → toolbar-bab473ea.html} +60 -35
  14. package/dist/toolbar/{toolbar.main-7aa01366.js.map → toolbar.main-eb8acf83.js.map} +2 -1
  15. package/dist/toolbar_injector/asset-manifest.json +1 -1
  16. package/dist/toolbar_injector/{toolbar_injector-8edcae04.js → toolbar_injector-5e32f96a.js} +11 -10
  17. package/dist/toolbar_injector/{toolbar_injector-8edcae04.js.map → toolbar_injector-5e32f96a.js.map} +4 -3
  18. package/package.json +4 -3
  19. package/src/internal/building/buildUsingRollup.js +15 -9
  20. package/src/internal/building/rollup_plugin_jsenv.js +65 -53
  21. package/src/internal/compiling/js-compilation-service/transformJs.js +6 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "file": "toolbar_injector-8edcae04.js",
3
+ "file": "toolbar_injector-5e32f96a.js",
4
4
  "sources": [
5
5
  "../../helpers/babel/typeof/typeof.js",
6
6
  "../../helpers/babel/defineProperty/defineProperty.js",
@@ -25,7 +25,7 @@
25
25
  "import { fetchUrl } from \"./fetch-browser.js\"\n\nexport const fetchJson = async (url, options = {}) => {\n const response = await fetchUrl(url, options)\n const object = await response.json()\n return object\n}\n",
26
26
  "import { fetchJson } from \"../../browser_utils/fetchJson.js\"\n\nexport const fetchExploringJson = async ({ signal } = {}) => {\n try {\n const exploringInfo = await fetchJson(\"/.jsenv/exploring.json\", {\n signal,\n })\n return exploringInfo\n } catch (e) {\n if (signal && signal.aborted && e.name === \"AbortError\") {\n throw e\n }\n throw new Error(\n `Cannot communicate with exploring server due to a network error\n--- error stack ---\n${e.stack}`,\n )\n }\n}\n",
27
27
  "export const updateIframeOverflowOnParentWindow = () => {\n if (!window.parent) {\n // can happen while parent iframe reloads\n return\n }\n\n const aTooltipIsOpened =\n document.querySelector(\"[data-tooltip-visible]\") ||\n document.querySelector(\"[data-tooltip-auto-visible]\")\n const settingsAreOpened = document.querySelector(\"#settings[data-active]\")\n\n if (aTooltipIsOpened || settingsAreOpened) {\n enableIframeOverflowOnParentWindow()\n } else {\n disableIframeOverflowOnParentWindow()\n }\n}\n\nlet iframeOverflowEnabled = false\nconst enableIframeOverflowOnParentWindow = () => {\n if (iframeOverflowEnabled) return\n iframeOverflowEnabled = true\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"100%\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nconst disableIframeOverflowOnParentWindow = () => {\n if (!iframeOverflowEnabled) return\n iframeOverflowEnabled = false\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"40px\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nexport const getToolbarIframe = () => {\n const iframes = Array.from(window.parent.document.querySelectorAll(\"iframe\"))\n return iframes.find((iframe) => iframe.contentWindow === window)\n}\n\nexport const forceHideElement = (element) => {\n element.setAttribute(\"data-force-hide\", \"\")\n}\n\nexport const removeForceHideElement = (element) => {\n element.removeAttribute(\"data-force-hide\")\n}\n\nexport const setStyles = (element, styles) => {\n const elementStyle = element.style\n const restoreStyles = Object.keys(styles).map((styleName) => {\n let restore\n if (styleName in elementStyle) {\n const currentStyle = elementStyle[styleName]\n restore = () => {\n elementStyle[styleName] = currentStyle\n }\n } else {\n restore = () => {\n delete elementStyle[styleName]\n }\n }\n\n elementStyle[styleName] = styles[styleName]\n\n return restore\n })\n return () => {\n restoreStyles.forEach((restore) => restore())\n }\n}\n\nexport const setAttributes = (element, attributes) => {\n Object.keys(attributes).forEach((name) => {\n element.setAttribute(name, attributes[name])\n })\n}\n\nexport const getDocumentScroll = () => {\n return {\n x: document.documentElement.scrollLeft,\n y: document.documentElement.scrollTop,\n }\n}\n\nexport const toolbarSectionIsActive = (element) => {\n return element.hasAttribute(\"data-active\")\n}\n\nexport const activateToolbarSection = (element) => {\n element.setAttribute(\"data-active\", \"\")\n}\n\nexport const deactivateToolbarSection = (element) => {\n element.removeAttribute(\"data-active\")\n}\n",
28
- "import { fetchExploringJson } from \"@jsenv/core/src/internal/dev_server/exploring/fetchExploringJson.js\"\nimport { setAttributes, setStyles } from \"./util/dom.js\"\n\n// eslint-disable-next-line no-undef\nconst TOOLBAR_BUILD_RELATIVE_URL = \"dist/toolbar/toolbar-84985f43.html\"\nconst jsenvLogoSvgUrl = new URL(\"./jsenv-logo.svg\", import.meta.url)\n\nconst injectToolbar = async () => {\n await new Promise((resolve) => {\n if (window.requestIdleCallback) {\n window.requestIdleCallback(resolve)\n } else {\n window.requestAnimationFrame(resolve)\n }\n })\n\n const { jsenvDirectoryRelativeUrl } = await fetchExploringJson()\n const jsenvDirectoryServerUrl = resolveUrl(\n jsenvDirectoryRelativeUrl,\n document.location.origin,\n )\n\n const placeholder = getToolbarPlaceholder()\n\n const iframe = document.createElement(\"iframe\")\n setAttributes(iframe, {\n tabindex: -1,\n // sandbox: \"allow-forms allow-modals allow-pointer-lock allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation\",\n // allow: \"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; microphone; midi; payment; vr\",\n allowtransparency: true,\n })\n setStyles(iframe, {\n \"position\": \"fixed\",\n \"zIndex\": 1000,\n \"bottom\": 0,\n \"left\": 0,\n \"width\": \"100%\",\n \"height\": 0,\n /* ensure toolbar children are not focusable when hidden */\n \"visibility\": \"hidden\",\n \"transition-duration\": \"300ms\",\n \"transition-property\": \"height, visibility\",\n \"border\": \"none\",\n })\n const iframeLoadedPromise = iframeToLoadedPromise(iframe)\n const jsenvToolbarHtmlServerUrl = resolveUrl(\n TOOLBAR_BUILD_RELATIVE_URL,\n jsenvDirectoryServerUrl,\n )\n // set iframe src BEFORE putting it into the DOM (prevent firefox adding an history entry)\n iframe.setAttribute(\"src\", jsenvToolbarHtmlServerUrl)\n placeholder.parentNode.replaceChild(iframe, placeholder)\n\n await iframeLoadedPromise\n iframe.removeAttribute(\"tabindex\")\n\n const div = document.createElement(\"div\")\n div.innerHTML = `\n<div id=\"jsenv-toolbar-trigger\">\n <svg id=\"jsenv-toolbar-trigger-icon\">\n <use xlink:href=\"${jsenvLogoSvgUrl}#jsenv-logo\"></use>\n </svg>\n <style>\n #jsenv-toolbar-trigger {\n display: block;\n overflow: hidden;\n position: fixed;\n z-index: 1000;\n bottom: -32px;\n right: 20px;\n height: 40px;\n width: 40px;\n padding: 0;\n margin: 0;\n border-radius: 5px 5px 0 0;\n border: 1px solid rgba(0, 0, 0, 0.33);\n border-bottom: none;\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\n background: transparent;\n text-align: center;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger:hover {\n cursor: pointer;\n }\n\n #jsenv-toolbar-trigger[data-expanded] {\n bottom: 0;\n }\n\n #jsenv-toolbar-trigger-icon {\n width: 35px;\n height: 35px;\n opacity: 0;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger[data-expanded] #jsenv-toolbar-trigger-icon {\n opacity: 1;\n }\n </style>\n</div>`\n const toolbarTrigger = div.firstElementChild\n iframe.parentNode.appendChild(toolbarTrigger)\n\n let timer\n toolbarTrigger.onmouseenter = () => {\n toolbarTrigger.setAttribute(\"data-animate\", \"\")\n timer = setTimeout(expandToolbarTrigger, 500)\n }\n toolbarTrigger.onmouseleave = () => {\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onfocus = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n expandToolbarTrigger()\n }\n toolbarTrigger.onblur = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onclick = () => {\n sendCommandToToolbar(iframe, \"showToolbar\")\n }\n\n const showToolbarTrigger = () => {\n toolbarTrigger.style.display = \"block\"\n }\n\n const hideToolbarTrigger = () => {\n toolbarTrigger.style.display = \"none\"\n }\n\n const expandToolbarTrigger = () => {\n toolbarTrigger.setAttribute(\"data-expanded\", \"\")\n }\n\n const collapseToolbarTrigger = () => {\n toolbarTrigger.removeAttribute(\"data-expanded\", \"\")\n }\n\n hideToolbarTrigger()\n addToolbarEventCallback(iframe, \"toolbar-visibility-change\", (visible) => {\n if (visible) {\n hideToolbarTrigger()\n } else {\n showToolbarTrigger()\n }\n })\n addToolbarEventCallback(iframe, \"toolbar_ready\", () => {\n sendCommandToToolbar(iframe, \"renderToolbar\")\n })\n\n return iframe\n}\n\nconst addToolbarEventCallback = (iframe, eventName, callback) => {\n const messageEventCallback = (messageEvent) => {\n const { data } = messageEvent\n if (typeof data !== \"object\") {\n return\n }\n const { __jsenv__ } = data\n if (!__jsenv__) {\n return\n }\n if (__jsenv__.event !== eventName) {\n return\n }\n callback(__jsenv__.data)\n }\n\n window.addEventListener(\"message\", messageEventCallback, false)\n return () => {\n window.removeEventListener(\"message\", messageEventCallback, false)\n }\n}\n\nconst sendCommandToToolbar = (iframe, command, ...args) => {\n iframe.contentWindow.postMessage(\n {\n __jsenv__: {\n command,\n args,\n },\n },\n window.origin,\n )\n}\n\nconst getToolbarPlaceholder = () => {\n const placeholder = queryPlaceholder()\n if (placeholder) {\n if (document.body.contains(placeholder)) {\n return placeholder\n }\n // otherwise iframe would not be visible because in <head>\n console.warn(\n \"element with [data-jsenv-toolbar-placeholder] must be inside document.body\",\n )\n return createTooolbarPlaceholder()\n }\n return createTooolbarPlaceholder()\n}\n\nconst queryPlaceholder = () => {\n return document.querySelector(\"[data-jsenv-toolbar-placeholder]\")\n}\n\nconst createTooolbarPlaceholder = () => {\n const placeholder = document.createElement(\"span\")\n document.body.appendChild(placeholder)\n return placeholder\n}\n\nconst iframeToLoadedPromise = (iframe) => {\n return new Promise((resolve) => {\n const onload = () => {\n iframe.removeEventListener(\"load\", onload, true)\n resolve()\n }\n iframe.addEventListener(\"load\", onload, true)\n })\n}\n\nconst resolveUrl = (url, baseUrl) => String(new URL(url, baseUrl))\n\nif (document.readyState === \"complete\") {\n injectToolbar()\n} else {\n window.addEventListener(\"load\", injectToolbar)\n}\n"
28
+ "import { fetchExploringJson } from \"@jsenv/core/src/internal/dev_server/exploring/fetchExploringJson.js\"\nimport { setAttributes, setStyles } from \"./util/dom.js\"\n\n// eslint-disable-next-line no-undef\nconst TOOLBAR_BUILD_RELATIVE_URL = \"dist/toolbar/toolbar-bab473ea.html\"\nconst jsenvLogoSvgUrl = new URL(\"./jsenv-logo.svg\", import.meta.url)\n\nconst injectToolbar = async () => {\n await new Promise((resolve) => {\n if (window.requestIdleCallback) {\n window.requestIdleCallback(resolve)\n } else {\n window.requestAnimationFrame(resolve)\n }\n })\n\n const { jsenvDirectoryRelativeUrl } = await fetchExploringJson()\n const jsenvDirectoryServerUrl = resolveUrl(\n jsenvDirectoryRelativeUrl,\n document.location.origin,\n )\n\n const placeholder = getToolbarPlaceholder()\n\n const iframe = document.createElement(\"iframe\")\n setAttributes(iframe, {\n tabindex: -1,\n // sandbox: \"allow-forms allow-modals allow-pointer-lock allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation\",\n // allow: \"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; microphone; midi; payment; vr\",\n allowtransparency: true,\n })\n setStyles(iframe, {\n \"position\": \"fixed\",\n \"zIndex\": 1000,\n \"bottom\": 0,\n \"left\": 0,\n \"width\": \"100%\",\n \"height\": 0,\n /* ensure toolbar children are not focusable when hidden */\n \"visibility\": \"hidden\",\n \"transition-duration\": \"300ms\",\n \"transition-property\": \"height, visibility\",\n \"border\": \"none\",\n })\n const iframeLoadedPromise = iframeToLoadedPromise(iframe)\n const jsenvToolbarHtmlServerUrl = resolveUrl(\n TOOLBAR_BUILD_RELATIVE_URL,\n jsenvDirectoryServerUrl,\n )\n // set iframe src BEFORE putting it into the DOM (prevent firefox adding an history entry)\n iframe.setAttribute(\"src\", jsenvToolbarHtmlServerUrl)\n placeholder.parentNode.replaceChild(iframe, placeholder)\n\n await iframeLoadedPromise\n iframe.removeAttribute(\"tabindex\")\n\n const div = document.createElement(\"div\")\n div.innerHTML = `\n<div id=\"jsenv-toolbar-trigger\">\n <svg id=\"jsenv-toolbar-trigger-icon\">\n <use xlink:href=\"${jsenvLogoSvgUrl}#jsenv-logo\"></use>\n </svg>\n <style>\n #jsenv-toolbar-trigger {\n display: block;\n overflow: hidden;\n position: fixed;\n z-index: 1000;\n bottom: -32px;\n right: 20px;\n height: 40px;\n width: 40px;\n padding: 0;\n margin: 0;\n border-radius: 5px 5px 0 0;\n border: 1px solid rgba(0, 0, 0, 0.33);\n border-bottom: none;\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\n background: transparent;\n text-align: center;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger:hover {\n cursor: pointer;\n }\n\n #jsenv-toolbar-trigger[data-expanded] {\n bottom: 0;\n }\n\n #jsenv-toolbar-trigger-icon {\n width: 35px;\n height: 35px;\n opacity: 0;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger[data-expanded] #jsenv-toolbar-trigger-icon {\n opacity: 1;\n }\n </style>\n</div>`\n const toolbarTrigger = div.firstElementChild\n iframe.parentNode.appendChild(toolbarTrigger)\n\n let timer\n toolbarTrigger.onmouseenter = () => {\n toolbarTrigger.setAttribute(\"data-animate\", \"\")\n timer = setTimeout(expandToolbarTrigger, 500)\n }\n toolbarTrigger.onmouseleave = () => {\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onfocus = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n expandToolbarTrigger()\n }\n toolbarTrigger.onblur = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onclick = () => {\n sendCommandToToolbar(iframe, \"showToolbar\")\n }\n\n const showToolbarTrigger = () => {\n toolbarTrigger.style.display = \"block\"\n }\n\n const hideToolbarTrigger = () => {\n toolbarTrigger.style.display = \"none\"\n }\n\n const expandToolbarTrigger = () => {\n toolbarTrigger.setAttribute(\"data-expanded\", \"\")\n }\n\n const collapseToolbarTrigger = () => {\n toolbarTrigger.removeAttribute(\"data-expanded\", \"\")\n }\n\n hideToolbarTrigger()\n addToolbarEventCallback(iframe, \"toolbar-visibility-change\", (visible) => {\n if (visible) {\n hideToolbarTrigger()\n } else {\n showToolbarTrigger()\n }\n })\n addToolbarEventCallback(iframe, \"toolbar_ready\", () => {\n sendCommandToToolbar(iframe, \"renderToolbar\")\n })\n\n return iframe\n}\n\nconst addToolbarEventCallback = (iframe, eventName, callback) => {\n const messageEventCallback = (messageEvent) => {\n const { data } = messageEvent\n if (typeof data !== \"object\") {\n return\n }\n const { __jsenv__ } = data\n if (!__jsenv__) {\n return\n }\n if (__jsenv__.event !== eventName) {\n return\n }\n callback(__jsenv__.data)\n }\n\n window.addEventListener(\"message\", messageEventCallback, false)\n return () => {\n window.removeEventListener(\"message\", messageEventCallback, false)\n }\n}\n\nconst sendCommandToToolbar = (iframe, command, ...args) => {\n iframe.contentWindow.postMessage(\n {\n __jsenv__: {\n command,\n args,\n },\n },\n window.origin,\n )\n}\n\nconst getToolbarPlaceholder = () => {\n const placeholder = queryPlaceholder()\n if (placeholder) {\n if (document.body.contains(placeholder)) {\n return placeholder\n }\n // otherwise iframe would not be visible because in <head>\n console.warn(\n \"element with [data-jsenv-toolbar-placeholder] must be inside document.body\",\n )\n return createTooolbarPlaceholder()\n }\n return createTooolbarPlaceholder()\n}\n\nconst queryPlaceholder = () => {\n return document.querySelector(\"[data-jsenv-toolbar-placeholder]\")\n}\n\nconst createTooolbarPlaceholder = () => {\n const placeholder = document.createElement(\"span\")\n document.body.appendChild(placeholder)\n return placeholder\n}\n\nconst iframeToLoadedPromise = (iframe) => {\n return new Promise((resolve) => {\n const onload = () => {\n iframe.removeEventListener(\"load\", onload, true)\n resolve()\n }\n iframe.addEventListener(\"load\", onload, true)\n })\n}\n\nconst resolveUrl = (url, baseUrl) => String(new URL(url, baseUrl))\n\nif (document.readyState === \"complete\") {\n injectToolbar()\n} else {\n window.addEventListener(\"load\", injectToolbar)\n}\n"
29
29
  ],
30
30
  "names": [
31
31
  "nativeTypeOf",
@@ -155,6 +155,7 @@
155
155
  "res",
156
156
  "rej",
157
157
  "originSameAsGlobalOrigin",
158
+ "_typeof",
158
159
  "location",
159
160
  "globalOrigin",
160
161
  "origin",
@@ -290,5 +291,5 @@
290
291
  "baseUrl",
291
292
  "URL"
292
293
  ],
293
- "mappings": "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"
294
+ "mappings": "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"
294
295
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsenv/core",
3
- "version": "24.6.2",
3
+ "version": "24.6.3",
4
4
  "description": "Tool to develop, test and build js projects",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -11,7 +11,8 @@
11
11
  "node": ">=14.9.0"
12
12
  },
13
13
  "publishConfig": {
14
- "access": "public"
14
+ "access": "public",
15
+ "registry": "https://registry.npmjs.org"
15
16
  },
16
17
  "type": "module",
17
18
  "exports": {
@@ -135,4 +136,4 @@
135
136
  "redux": "4.1.2",
136
137
  "rollup-plugin-import-assert": "1.1.1"
137
138
  }
138
- }
139
+ }
@@ -15,7 +15,7 @@ import {
15
15
  } from "@jsenv/core/src/internal/generateGroupMap/runtime_support.js"
16
16
  import { featuresCompatMap } from "@jsenv/core/src/internal/generateGroupMap/featuresCompatMap.js"
17
17
  import { createRuntimeCompat } from "@jsenv/core/src/internal/generateGroupMap/runtime_compat.js"
18
- import { createJsenvRollupPlugin } from "./rollup_plugin_jsenv.js"
18
+ import { createRollupPlugins } from "./rollup_plugin_jsenv.js"
19
19
 
20
20
  export const buildUsingRollup = async ({
21
21
  buildOperation,
@@ -90,12 +90,12 @@ export const buildUsingRollup = async ({
90
90
  }
91
91
 
92
92
  const {
93
- jsenvRollupPlugin,
93
+ rollupPlugins,
94
94
  getLastErrorMessage,
95
95
  getResult,
96
96
  asOriginalUrl,
97
97
  asProjectUrl,
98
- } = await createJsenvRollupPlugin({
98
+ } = await createRollupPlugins({
99
99
  buildOperation,
100
100
  logger,
101
101
 
@@ -142,7 +142,8 @@ export const buildUsingRollup = async ({
142
142
  buildOperation,
143
143
  logger,
144
144
 
145
- jsenvRollupPlugin,
145
+ rollupPlugins,
146
+ babelPluginMap,
146
147
  format,
147
148
  globals,
148
149
  globalName,
@@ -247,7 +248,8 @@ export const buildUsingRollup = async ({
247
248
  const useRollup = async ({
248
249
  buildOperation,
249
250
  logger,
250
- jsenvRollupPlugin,
251
+ rollupPlugins,
252
+ babelPluginMap,
251
253
  format,
252
254
  globals,
253
255
  globalName,
@@ -312,15 +314,19 @@ const useRollup = async ({
312
314
  input: [],
313
315
  preserveEntrySignatures,
314
316
  treeshake,
315
- plugins: [jsenvRollupPlugin],
317
+ plugins: rollupPlugins,
316
318
  acornInjectPlugins: [importAssertions],
317
319
  }
318
320
  const rollupOutputOptions = {
319
321
  // https://rollupjs.org/guide/en#experimentaltoplevelawait
320
322
  // experimentalTopLevelAwait: true,
321
- // we could put prefConst to true by checking 'transform-block-scoping'
322
- // presence in babelPluginMap
323
- preferConst: false,
323
+ // https://rollupjs.org/guide/en/#outputgeneratedcode
324
+ generatedCode: {
325
+ arrowFunctions: !babelPluginMap["transform-arrow-functions"],
326
+ constBindings: !babelPluginMap["transform-block-scoping"],
327
+ objectShorthand: !babelPluginMap["transform-shorthand-properties"],
328
+ reservedNamesAsProps: !babelPluginMap["transform-reserved-words"],
329
+ },
324
330
  // https://rollupjs.org/guide/en#output-dir
325
331
  dir: urlToFileSystemPath(buildDirectoryUrl),
326
332
  // https://rollupjs.org/guide/en#output-format
@@ -17,6 +17,7 @@ import {
17
17
  } from "@jsenv/filesystem"
18
18
  import { UNICODE } from "@jsenv/log"
19
19
 
20
+ import { transformJs } from "@jsenv/core/src/internal/compiling/js-compilation-service/transformJs.js"
20
21
  import { createUrlConverter } from "@jsenv/core/src/internal/url_conversion.js"
21
22
  import { createUrlFetcher } from "@jsenv/core/src/internal/building/url_fetcher.js"
22
23
  import { createUrlLoader } from "@jsenv/core/src/internal/building/url_loader.js"
@@ -48,7 +49,7 @@ import { getDefaultImportMap } from "../import-resolution/importmap-default.js"
48
49
  import { injectSourcemapInRollupBuild } from "./rollup_build_sourcemap.js"
49
50
  import { createBuildStats } from "./build_stats.js"
50
51
 
51
- export const createJsenvRollupPlugin = async ({
52
+ export const createRollupPlugins = async ({
52
53
  buildOperation,
53
54
  logger,
54
55
 
@@ -72,7 +73,6 @@ export const createJsenvRollupPlugin = async ({
72
73
  format,
73
74
  systemJsUrl,
74
75
  babelPluginMap,
75
- transformTopLevelAwait,
76
76
  node,
77
77
  importAssertionsSupport,
78
78
 
@@ -239,8 +239,40 @@ export const createJsenvRollupPlugin = async ({
239
239
  let minifyJs
240
240
  let minifyHtml
241
241
 
242
- const jsenvRollupPlugin = {}
243
-
242
+ const rollupPlugins = []
243
+ // rollup add async/await that might be unsupported by the runtime
244
+ // in that case we have to transform the rollup output
245
+ if (babelPluginMap["transform-async-to-promises"]) {
246
+ rollupPlugins.push({
247
+ name: "jsenv_fix_async_await",
248
+ async renderChunk(code, chunk) {
249
+ let map = chunk.map
250
+ const result = await transformJs({
251
+ code,
252
+ url: chunk.facadeModuleId
253
+ ? asOriginalUrl(chunk.facadeModuleId)
254
+ : resolveUrl(chunk.fileName, buildDirectoryUrl),
255
+ projectDirectoryUrl,
256
+ babelPluginMap: {
257
+ "transform-async-to-promises":
258
+ babelPluginMap["transform-async-to-promises"],
259
+ },
260
+ babelHelpersInjectionAsImport: false,
261
+ transformGenerator: false,
262
+ moduleOutFormat:
263
+ // pass undefined when format is "systemjs" to avoid
264
+ // re-wrapping the code in systemjs format
265
+ format === "systemjs" ? undefined : format,
266
+ })
267
+ code = result.code
268
+ map = result.map
269
+ return {
270
+ code,
271
+ map,
272
+ }
273
+ },
274
+ })
275
+ }
244
276
  if (minify) {
245
277
  const methodHooks = {
246
278
  minifyJs: async (...args) => {
@@ -271,27 +303,29 @@ export const createJsenvRollupPlugin = async ({
271
303
  return methodHooks.minifyHtml(html, minifyHtmlOptions)
272
304
  }
273
305
 
274
- jsenvRollupPlugin.renderChunk = async (code, chunk) => {
275
- let map = chunk.map
276
- const result = await minifyJs({
277
- url: chunk.facadeModuleId
278
- ? asOriginalUrl(chunk.facadeModuleId)
279
- : resolveUrl(chunk.fileName, buildDirectoryUrl),
280
- code,
281
- map,
282
- ...(format === "global" ? { toplevel: false } : { toplevel: true }),
283
- })
306
+ rollupPlugins.push({
307
+ name: "jsenv_minifier",
308
+ async renderChunk(code, chunk) {
309
+ let map = chunk.map
310
+ const result = await minifyJs({
311
+ url: chunk.facadeModuleId
312
+ ? asOriginalUrl(chunk.facadeModuleId)
313
+ : resolveUrl(chunk.fileName, buildDirectoryUrl),
314
+ code,
315
+ map,
316
+ ...(format === "global" ? { toplevel: false } : { toplevel: true }),
317
+ })
284
318
 
285
- code = result.code
286
- map = result.map
287
- return {
288
- code,
289
- map,
290
- }
291
- }
319
+ code = result.code
320
+ map = result.map
321
+ return {
322
+ code,
323
+ map,
324
+ }
325
+ },
326
+ })
292
327
  }
293
-
294
- Object.assign(jsenvRollupPlugin, {
328
+ rollupPlugins.unshift({
295
329
  name: "jsenv",
296
330
 
297
331
  async buildStart() {
@@ -1105,8 +1139,8 @@ export const createJsenvRollupPlugin = async ({
1105
1139
 
1106
1140
  async generateBundle(outputOptions, rollupResult) {
1107
1141
  const jsChunks = {}
1108
- // rollupResult can be mutated by late asset emission
1109
- // howeverl late chunk (js module) emission is not possible
1142
+ // To keep in mind: rollupResult object can be mutated by late asset emission
1143
+ // however late chunk (js module) emission is not possible
1110
1144
  // as rollup rightfully prevent late js emission
1111
1145
  Object.keys(rollupResult).forEach((fileName) => {
1112
1146
  const file = rollupResult[fileName]
@@ -1137,10 +1171,6 @@ export const createJsenvRollupPlugin = async ({
1137
1171
  jsChunks[fileName] = fileCopy
1138
1172
  }
1139
1173
  })
1140
- await ensureTopLevelAwaitTranspilationIfNeeded({
1141
- format,
1142
- transformTopLevelAwait,
1143
- })
1144
1174
 
1145
1175
  const jsModuleBuild = {}
1146
1176
  Object.keys(jsChunks).forEach((fileName) => {
@@ -1152,10 +1182,12 @@ export const createJsenvRollupPlugin = async ({
1152
1182
  !file.isEntry
1153
1183
 
1154
1184
  if (file.url in inlineModuleScripts && format === "systemjs") {
1155
- const magicString = new MagicString(file.code)
1185
+ const code = file.code
1186
+ const systemRegisterIndex = code.indexOf("System.register([")
1187
+ const magicString = new MagicString(code)
1156
1188
  magicString.overwrite(
1157
- 0,
1158
- "System.register([".length,
1189
+ systemRegisterIndex,
1190
+ systemRegisterIndex + "System.register([".length,
1159
1191
  `System.register("${fileName}", [`,
1160
1192
  )
1161
1193
  file.code = magicString.toString()
@@ -1366,7 +1398,7 @@ export const createJsenvRollupPlugin = async ({
1366
1398
  }
1367
1399
 
1368
1400
  return {
1369
- jsenvRollupPlugin,
1401
+ rollupPlugins,
1370
1402
  getLastErrorMessage: () => lastErrorMessage,
1371
1403
  getResult: () => {
1372
1404
  return {
@@ -1386,26 +1418,6 @@ export const createJsenvRollupPlugin = async ({
1386
1418
  }
1387
1419
  }
1388
1420
 
1389
- const ensureTopLevelAwaitTranspilationIfNeeded = async ({
1390
- format,
1391
- transformTopLevelAwait,
1392
- }) => {
1393
- if (!transformTopLevelAwait) {
1394
- return
1395
- }
1396
-
1397
- if (format === "esmodule") {
1398
- // transform-async-to-promises won't be able to transform top level await
1399
- // for "esmodule", so it would be useless
1400
- return
1401
- }
1402
-
1403
- if (format === "systemjs") {
1404
- // top level await is an async function for systemjs
1405
- return
1406
- }
1407
- }
1408
-
1409
1421
  const prepareEntryPoints = async (
1410
1422
  entryPointMap,
1411
1423
  {
@@ -11,7 +11,7 @@ export const transformJs = async ({
11
11
  babelPluginMap,
12
12
  moduleOutFormat = "esmodule",
13
13
  importMetaFormat = moduleOutFormat,
14
- babelHelpersInjectionAsImport = true,
14
+ babelHelpersInjectionAsImport = moduleOutFormat === "esmodule",
15
15
  allowTopLevelAwait = true,
16
16
  transformTopLevelAwait = true,
17
17
  transformGenerator = true,
@@ -33,6 +33,11 @@ export const transformJs = async ({
33
33
  if (typeof url !== "string") {
34
34
  throw new TypeError(`url must be a string, got ${url}`)
35
35
  }
36
+ if (babelHelpersInjectionAsImport && moduleOutFormat !== "esmodule") {
37
+ throw new Error(
38
+ `babelHelpersInjectionAsImport can be enabled only when "moduleOutFormat" is "esmodule"`,
39
+ )
40
+ }
36
41
 
37
42
  const transformResult = await jsenvTransform({
38
43
  code,