@jsenv/core 24.6.3 → 24.6.4
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.
- package/dist/browser_runtime/asset-manifest.json +1 -1
- package/dist/browser_runtime/{browser_runtime-c7288751.js → browser_runtime-bb0e3aa4.js} +78 -85
- package/dist/browser_runtime/{browser_runtime-c7288751.js.map → browser_runtime-bb0e3aa4.js.map} +3 -5
- package/dist/build_manifest.js +5 -5
- package/dist/compile_proxy/asset-manifest.json +1 -1
- package/dist/compile_proxy/{compile_proxy-28148b58.html → compile_proxy-6eb67db4.html} +16 -16
- package/dist/compile_proxy/{compile_proxy.html__inline__20-4887fb1d.js.map → compile_proxy.html__inline__20-9e168143.js.map} +2 -2
- package/dist/event_source_client/event_source_client-9f14c8b9.js +5 -11
- package/dist/event_source_client/event_source_client-9f14c8b9.js.map +1 -1
- package/dist/redirector/asset-manifest.json +1 -1
- package/dist/redirector/{redirector-3c05dbb2.html → redirector-b6ad84bf.html} +16 -16
- package/dist/redirector/{redirector.html__inline__15-19e529b9.js.map → redirector.html__inline__15-3a34a156.js.map} +2 -2
- package/dist/toolbar/asset-manifest.json +1 -1
- package/dist/toolbar/{toolbar-bab473ea.html → toolbar-1fbf8dcb.html} +28 -28
- package/dist/toolbar/{toolbar.main-eb8acf83.js.map → toolbar.main-a5ef2c60.js.map} +2 -2
- package/dist/toolbar_injector/asset-manifest.json +1 -1
- package/dist/toolbar_injector/{toolbar_injector-5e32f96a.js → toolbar_injector-997dbaa0.js} +24 -25
- package/dist/toolbar_injector/{toolbar_injector-5e32f96a.js.map → toolbar_injector-997dbaa0.js.map} +4 -5
- package/package.json +2 -2
- package/readme.md +10 -20
- package/src/buildProject.js +3 -5
- package/src/dev_server.js +6 -2
- package/src/internal/building/buildUsingRollup.js +0 -2
- package/src/internal/building/rollup_plugin_jsenv.js +6 -6
- package/src/internal/building/url_loader.js +3 -0
- package/src/internal/compiling/createCompiledFileService.js +7 -7
- package/src/internal/compiling/js-compilation-service/jsenvTransform.js +9 -55
- package/src/internal/compiling/js-compilation-service/transformJs.js +2 -4
- package/src/internal/compiling/jsenvCompilerForHtml.js +4 -4
- package/src/internal/compiling/jsenvCompilerForJavaScript.js +2 -2
- package/src/internal/compiling/startCompileServer.js +2 -2
- package/src/internal/compiling/js-compilation-service/findAsyncPluginNameInBabelPluginMap.js +0 -9
package/dist/toolbar_injector/{toolbar_injector-5e32f96a.js.map → toolbar_injector-997dbaa0.js.map}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"file": "toolbar_injector-
|
|
3
|
+
"file": "toolbar_injector-997dbaa0.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-
|
|
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-1fbf8dcb.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,7 +155,6 @@
|
|
|
155
155
|
"res",
|
|
156
156
|
"rej",
|
|
157
157
|
"originSameAsGlobalOrigin",
|
|
158
|
-
"_typeof",
|
|
159
158
|
"location",
|
|
160
159
|
"globalOrigin",
|
|
161
160
|
"origin",
|
|
@@ -203,12 +202,12 @@
|
|
|
203
202
|
"byteLength",
|
|
204
203
|
"set",
|
|
205
204
|
"_await",
|
|
205
|
+
"_async",
|
|
206
206
|
"fetchNative",
|
|
207
207
|
"mode",
|
|
208
208
|
"options",
|
|
209
209
|
"fetch",
|
|
210
210
|
"responseToHeaders",
|
|
211
|
-
"_async",
|
|
212
211
|
"fetchUrl",
|
|
213
212
|
"AbortController",
|
|
214
213
|
"fetchJson",
|
|
@@ -291,5 +290,5 @@
|
|
|
291
290
|
"baseUrl",
|
|
292
291
|
"URL"
|
|
293
292
|
],
|
|
294
|
-
"mappings": "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"
|
|
293
|
+
"mappings": "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"
|
|
295
294
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jsenv/core",
|
|
3
|
-
"version": "24.6.
|
|
3
|
+
"version": "24.6.4",
|
|
4
4
|
"description": "Tool to develop, test and build js projects",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
"@jsenv/package-publish": "1.6.2",
|
|
122
122
|
"@jsenv/performance-impact": "2.2.1",
|
|
123
123
|
"@jsenv/pwa": "4.0.0",
|
|
124
|
-
"babel-plugin-transform-async-to-promises": "0.8.
|
|
124
|
+
"babel-plugin-transform-async-to-promises": "0.8.17",
|
|
125
125
|
"eslint": "7.32.0",
|
|
126
126
|
"eslint-plugin-html": "6.2.0",
|
|
127
127
|
"eslint-plugin-import": "2.25.3",
|
package/readme.md
CHANGED
|
@@ -8,25 +8,6 @@ _@jsenv/core_ was first created to write tests that could be executed in differe
|
|
|
8
8
|
|
|
9
9
|
Jsenv integrates naturally with standard html, css and js. It can be configured to work with React and JSX.
|
|
10
10
|
|
|
11
|
-
# Jsenv iconic features
|
|
12
|
-
|
|
13
|
-
- Relies web standards
|
|
14
|
-
- Dispensable by default: as long as your code use only standards, jsenv can be removed and code still runs.
|
|
15
|
-
- Compiles when mandatory: if code can be executed without compilation, source files are used.
|
|
16
|
-
- Test files and regular files have more in common. They are easier to understand and debug.
|
|
17
|
-
- Great developer experience with explicit and coherent apis
|
|
18
|
-
|
|
19
|
-
## Web standards used by jsenv
|
|
20
|
-
|
|
21
|
-
Each standard listed in this section is potentially supported natively by the browser. When browser supports all of them, jsenv will use source files without modification. Otherwise, the files are compiled to be executable in the browser.
|
|
22
|
-
|
|
23
|
-
- `<script type="module">`
|
|
24
|
-
- `<script type="importmap">`
|
|
25
|
-
- top level await
|
|
26
|
-
- import.meta.url
|
|
27
|
-
- dynamic imports
|
|
28
|
-
- import assertions
|
|
29
|
-
|
|
30
11
|
# Test runner overview
|
|
31
12
|
|
|
32
13
|
Let's assume you want to test `countDogs` exported by _animals.js_ file.
|
|
@@ -270,11 +251,20 @@ To read more about jsenv build tool, check [jsenv build documentation](./docs/bu
|
|
|
270
251
|
|
|
271
252
|
# About
|
|
272
253
|
|
|
254
|
+
Jsenv relies on standard web features. Each standard listed below is potentially supported natively by the browser. When browser supports all of them, jsenv will use source files without modification. Otherwise, the files are compiled to be executable in the browser.
|
|
255
|
+
|
|
256
|
+
- `<script type="module">`
|
|
257
|
+
- `<script type="importmap">`
|
|
258
|
+
- top level await
|
|
259
|
+
- import.meta.url
|
|
260
|
+
- dynamic imports
|
|
261
|
+
- import assertions
|
|
262
|
+
|
|
273
263
|
## When to use it
|
|
274
264
|
|
|
275
265
|
Amongst other use cases, the ease of use and flexibility of jsenv makes it a great tool to start and learn web development.
|
|
276
266
|
|
|
277
|
-
First because jsenv is a tool that was built to run raw js, html and css. It starts from the **simplest form of coding
|
|
267
|
+
First because jsenv is a tool that was built to run raw js, html and css. It starts from the **simplest form of coding** in JavaScript. If a browser can run your code, so can jsenv without configuration or things to learn. There is no magic that will bite you right away or later. Jsenv can be configured to add more stuff later, on demand.
|
|
278
268
|
|
|
279
269
|
Second because jsenv is compatible with the latest standards. Even some that are not yet mature in the js ecosystem, such as import maps. This will makes you at ease with technologies that will be part of the ecosystem once you are confortable with coding.
|
|
280
270
|
|
package/src/buildProject.js
CHANGED
|
@@ -41,7 +41,6 @@ export const buildProject = async ({
|
|
|
41
41
|
format === "esmodule"
|
|
42
42
|
? jsenvBrowserRuntimeSupport
|
|
43
43
|
: jsenvNodeRuntimeSupport,
|
|
44
|
-
transformTopLevelAwait = true,
|
|
45
44
|
|
|
46
45
|
urlMappings = {},
|
|
47
46
|
importResolutionMethod = format === "commonjs" ? "node" : "importmap",
|
|
@@ -163,8 +162,9 @@ export const buildProject = async ({
|
|
|
163
162
|
// that is expecting esmodule format, not systemjs
|
|
164
163
|
outDirectoryName: "build",
|
|
165
164
|
importDefaultExtension,
|
|
166
|
-
moduleOutFormat: "esmodule", // rollup
|
|
167
|
-
importMetaFormat: "esmodule", // rollup
|
|
165
|
+
moduleOutFormat: "esmodule", // rollup will transform into the right format
|
|
166
|
+
importMetaFormat: "esmodule", // rollup will transform into the right format
|
|
167
|
+
topLevelAwait: "ignore", // rollup will transform if needed
|
|
168
168
|
|
|
169
169
|
protocol,
|
|
170
170
|
privateKey,
|
|
@@ -173,7 +173,6 @@ export const buildProject = async ({
|
|
|
173
173
|
port,
|
|
174
174
|
env,
|
|
175
175
|
babelPluginMap,
|
|
176
|
-
transformTopLevelAwait,
|
|
177
176
|
customCompilers,
|
|
178
177
|
runtimeSupport,
|
|
179
178
|
|
|
@@ -220,7 +219,6 @@ export const buildProject = async ({
|
|
|
220
219
|
globalName,
|
|
221
220
|
globals,
|
|
222
221
|
babelPluginMap: compileServer.babelPluginMap,
|
|
223
|
-
transformTopLevelAwait,
|
|
224
222
|
runtimeSupport,
|
|
225
223
|
|
|
226
224
|
urlVersioning,
|
package/src/dev_server.js
CHANGED
|
@@ -21,7 +21,6 @@ import {
|
|
|
21
21
|
sourcemapMainFileInfo,
|
|
22
22
|
sourcemapMappingFileInfo,
|
|
23
23
|
} from "./internal/jsenvInternalFiles.js"
|
|
24
|
-
import { jsenvRuntimeSupportDuringDev } from "./jsenvRuntimeSupportDuringDev.js"
|
|
25
24
|
|
|
26
25
|
export const startDevServer = async ({
|
|
27
26
|
signal = new AbortController().signal,
|
|
@@ -46,7 +45,12 @@ export const startDevServer = async ({
|
|
|
46
45
|
keepProcessAlive = true,
|
|
47
46
|
|
|
48
47
|
babelPluginMap,
|
|
49
|
-
runtimeSupportDuringDev =
|
|
48
|
+
runtimeSupportDuringDev = {
|
|
49
|
+
// this allows to compile nothing or almost nothing when opening files
|
|
50
|
+
// with a recent chrome. Without this we would compile all the things not yet unsupported
|
|
51
|
+
// by Firefox and Safari such as top level await, importmap, etc
|
|
52
|
+
chrome: "93",
|
|
53
|
+
},
|
|
50
54
|
logLevel,
|
|
51
55
|
compileServerCanReadFromFilesystem,
|
|
52
56
|
compileServerCanWriteOnFilesystem,
|
|
@@ -38,7 +38,6 @@ export const buildUsingRollup = async ({
|
|
|
38
38
|
globals,
|
|
39
39
|
babelPluginMap,
|
|
40
40
|
runtimeSupport,
|
|
41
|
-
transformTopLevelAwait,
|
|
42
41
|
|
|
43
42
|
urlMappings,
|
|
44
43
|
importResolutionMethod,
|
|
@@ -108,7 +107,6 @@ export const buildUsingRollup = async ({
|
|
|
108
107
|
format,
|
|
109
108
|
systemJsUrl,
|
|
110
109
|
babelPluginMap,
|
|
111
|
-
transformTopLevelAwait,
|
|
112
110
|
node,
|
|
113
111
|
browser,
|
|
114
112
|
importAssertionsSupport,
|
|
@@ -240,9 +240,10 @@ export const createRollupPlugins = async ({
|
|
|
240
240
|
let minifyHtml
|
|
241
241
|
|
|
242
242
|
const rollupPlugins = []
|
|
243
|
-
// rollup add async/await
|
|
243
|
+
// When format is systemjs, rollup add async/await
|
|
244
|
+
// that might be unsupported by the runtime.
|
|
244
245
|
// in that case we have to transform the rollup output
|
|
245
|
-
if (babelPluginMap["transform-async-to-promises"]) {
|
|
246
|
+
if (babelPluginMap["transform-async-to-promises"] && format === "systemjs") {
|
|
246
247
|
rollupPlugins.push({
|
|
247
248
|
name: "jsenv_fix_async_await",
|
|
248
249
|
async renderChunk(code, chunk) {
|
|
@@ -257,12 +258,11 @@ export const createRollupPlugins = async ({
|
|
|
257
258
|
"transform-async-to-promises":
|
|
258
259
|
babelPluginMap["transform-async-to-promises"],
|
|
259
260
|
},
|
|
261
|
+
// pass undefined when format is "systemjs" to avoid
|
|
262
|
+
// re-wrapping the code in systemjs format
|
|
263
|
+
moduleOutFormat: undefined,
|
|
260
264
|
babelHelpersInjectionAsImport: false,
|
|
261
265
|
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
266
|
})
|
|
267
267
|
code = result.code
|
|
268
268
|
map = result.map
|
|
@@ -119,6 +119,9 @@ export const createUrlLoader = ({
|
|
|
119
119
|
projectDirectoryUrl,
|
|
120
120
|
babelPluginMap,
|
|
121
121
|
// moduleOutFormat: format // we are compiling for rollup output must be "esmodule"
|
|
122
|
+
// we compile for rollup, let top level await untouched
|
|
123
|
+
// it will be converted, if needed, during "renderChunk" hook
|
|
124
|
+
topLevelAwait: "ignore",
|
|
122
125
|
})
|
|
123
126
|
let code = transformResult.code
|
|
124
127
|
let map = transformResult.map
|
|
@@ -41,10 +41,10 @@ export const createCompiledFileService = ({
|
|
|
41
41
|
outDirectoryRelativeUrl,
|
|
42
42
|
|
|
43
43
|
runtimeSupport,
|
|
44
|
-
|
|
44
|
+
babelPluginMap,
|
|
45
45
|
moduleOutFormat,
|
|
46
46
|
importMetaFormat,
|
|
47
|
-
|
|
47
|
+
topLevelAwait,
|
|
48
48
|
groupMap,
|
|
49
49
|
customCompilers,
|
|
50
50
|
|
|
@@ -185,16 +185,16 @@ export const createCompiledFileService = ({
|
|
|
185
185
|
request,
|
|
186
186
|
|
|
187
187
|
runtimeSupport,
|
|
188
|
+
babelPluginMap: babelPluginMapFromCompileId(compileId, {
|
|
189
|
+
babelPluginMap,
|
|
190
|
+
groupMap,
|
|
191
|
+
}),
|
|
188
192
|
moduleOutFormat:
|
|
189
193
|
moduleOutFormat === undefined
|
|
190
194
|
? compileIdModuleFormats[compileId]
|
|
191
195
|
: moduleOutFormat,
|
|
192
196
|
importMetaFormat,
|
|
193
|
-
|
|
194
|
-
babelPluginMap: babelPluginMapFromCompileId(compileId, {
|
|
195
|
-
babelPluginMap,
|
|
196
|
-
groupMap,
|
|
197
|
-
}),
|
|
197
|
+
topLevelAwait,
|
|
198
198
|
|
|
199
199
|
sourcemapMethod,
|
|
200
200
|
sourcemapExcludeSources,
|
|
@@ -5,11 +5,9 @@ import { babelPluginTransformImportMeta } from "@jsenv/core/src/internal/babel_p
|
|
|
5
5
|
import {
|
|
6
6
|
getMinimalBabelPluginMap,
|
|
7
7
|
babelPluginsFromBabelPluginMap,
|
|
8
|
-
extractSyntaxBabelPluginMap,
|
|
9
8
|
} from "@jsenv/core/src/internal/compiling/babel_plugins.js"
|
|
10
9
|
import { babelPluginImportMetadata } from "@jsenv/core/src/internal/compiling/babel_plugin_import_metadata.js"
|
|
11
10
|
|
|
12
|
-
import { findAsyncPluginNameInBabelPluginMap } from "./findAsyncPluginNameInBabelPluginMap.js"
|
|
13
11
|
import { ansiToHTML } from "./ansiToHTML.js"
|
|
14
12
|
import { babelPluginRegeneratorRuntimeAsJsenvImport } from "./babel_plugin_regenerator_runtime_as_jsenv_import.js"
|
|
15
13
|
import { babelPluginBabelHelpersAsJsenvImports } from "./babel_plugin_babel_helpers_as_jsenv_imports.js"
|
|
@@ -25,10 +23,9 @@ export const jsenvTransform = async ({
|
|
|
25
23
|
babelPluginMap,
|
|
26
24
|
moduleOutFormat,
|
|
27
25
|
importMetaFormat = moduleOutFormat,
|
|
26
|
+
topLevelAwait,
|
|
28
27
|
|
|
29
28
|
babelHelpersInjectionAsImport,
|
|
30
|
-
allowTopLevelAwait,
|
|
31
|
-
transformTopLevelAwait,
|
|
32
29
|
transformGenerator,
|
|
33
30
|
regeneratorRuntimeImportPath,
|
|
34
31
|
sourcemapEnabled,
|
|
@@ -50,7 +47,11 @@ export const jsenvTransform = async ({
|
|
|
50
47
|
sourceFileName: inputPath,
|
|
51
48
|
// https://babeljs.io/docs/en/options#parseropts
|
|
52
49
|
parserOpts: {
|
|
53
|
-
allowAwaitOutsideFunction:
|
|
50
|
+
allowAwaitOutsideFunction:
|
|
51
|
+
topLevelAwait === undefined ||
|
|
52
|
+
topLevelAwait === "return" ||
|
|
53
|
+
topLevelAwait === "simple" ||
|
|
54
|
+
topLevelAwait === "ignore",
|
|
54
55
|
},
|
|
55
56
|
generatorOpts: {
|
|
56
57
|
compact: false,
|
|
@@ -147,56 +148,9 @@ export const jsenvTransform = async ({
|
|
|
147
148
|
"import-metadata": [babelPluginImportMetadata],
|
|
148
149
|
}
|
|
149
150
|
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
moduleOutFormat === "systemjs" &&
|
|
154
|
-
transformTopLevelAwait &&
|
|
155
|
-
asyncPluginName
|
|
156
|
-
) {
|
|
157
|
-
const babelPluginMapWithoutAsync = {
|
|
158
|
-
...babelPluginMap,
|
|
159
|
-
"proposal-dynamic-import": [proposalDynamicImport],
|
|
160
|
-
"transform-modules-systemjs": [transformModulesSystemJs],
|
|
161
|
-
}
|
|
162
|
-
delete babelPluginMapWithoutAsync[asyncPluginName]
|
|
163
|
-
|
|
164
|
-
// put body inside something like (async () => {})()
|
|
165
|
-
const result = await babelTransform({
|
|
166
|
-
ast,
|
|
167
|
-
code,
|
|
168
|
-
options: {
|
|
169
|
-
...options,
|
|
170
|
-
plugins: babelPluginsFromBabelPluginMap(babelPluginMapWithoutAsync),
|
|
171
|
-
},
|
|
172
|
-
})
|
|
173
|
-
|
|
174
|
-
// we need to retranspile the await keywords now wrapped
|
|
175
|
-
// inside Systemjs function.
|
|
176
|
-
// They are ignored, at least by transform-async-to-promises
|
|
177
|
-
// see https://github.com/rpetrich/babel-plugin-transform-async-to-promises/issues/26
|
|
178
|
-
const { babelSyntaxPluginMap } = extractSyntaxBabelPluginMap(babelPluginMap)
|
|
179
|
-
const finalResult = await babelTransform({
|
|
180
|
-
// ast: result.ast,
|
|
181
|
-
code: result.code,
|
|
182
|
-
options: {
|
|
183
|
-
...options,
|
|
184
|
-
// about inputSourceMap see
|
|
185
|
-
// https://github.com/babel/babel/blob/eac4c5bc17133c2857f2c94c1a6a8643e3b547a7/packages/babel-core/src/transformation/file/generate.js#L57
|
|
186
|
-
// https://github.com/babel/babel/blob/090c364a90fe73d36a30707fc612ce037bdbbb24/packages/babel-core/src/transformation/file/merge-map.js#L6s
|
|
187
|
-
inputSourceMap: result.map,
|
|
188
|
-
plugins: babelPluginsFromBabelPluginMap({
|
|
189
|
-
...babelSyntaxPluginMap,
|
|
190
|
-
[asyncPluginName]: babelPluginMap[asyncPluginName],
|
|
191
|
-
}),
|
|
192
|
-
},
|
|
193
|
-
})
|
|
194
|
-
|
|
195
|
-
return {
|
|
196
|
-
...result,
|
|
197
|
-
...finalResult,
|
|
198
|
-
metadata: { ...result.metadata, ...finalResult.metadata },
|
|
199
|
-
}
|
|
151
|
+
const asyncToPromise = babelPluginMap["transform-async-to-promises"]
|
|
152
|
+
if (topLevelAwait && asyncToPromise) {
|
|
153
|
+
asyncToPromise.options.topLevelAwait = topLevelAwait
|
|
200
154
|
}
|
|
201
155
|
|
|
202
156
|
const babelTransformReturnValue = await babelTransform({
|
|
@@ -12,8 +12,7 @@ export const transformJs = async ({
|
|
|
12
12
|
moduleOutFormat = "esmodule",
|
|
13
13
|
importMetaFormat = moduleOutFormat,
|
|
14
14
|
babelHelpersInjectionAsImport = moduleOutFormat === "esmodule",
|
|
15
|
-
|
|
16
|
-
transformTopLevelAwait = true,
|
|
15
|
+
topLevelAwait,
|
|
17
16
|
transformGenerator = true,
|
|
18
17
|
sourcemapEnabled = true,
|
|
19
18
|
}) => {
|
|
@@ -52,8 +51,7 @@ export const transformJs = async ({
|
|
|
52
51
|
importMetaFormat,
|
|
53
52
|
|
|
54
53
|
babelHelpersInjectionAsImport,
|
|
55
|
-
|
|
56
|
-
transformTopLevelAwait,
|
|
54
|
+
topLevelAwait,
|
|
57
55
|
transformGenerator,
|
|
58
56
|
sourcemapEnabled,
|
|
59
57
|
})
|
|
@@ -42,10 +42,10 @@ export const compileHtml = async ({
|
|
|
42
42
|
outDirectoryRelativeUrl,
|
|
43
43
|
compileId,
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
babelPluginMap,
|
|
46
46
|
moduleOutFormat,
|
|
47
47
|
importMetaFormat,
|
|
48
|
-
|
|
48
|
+
topLevelAwait,
|
|
49
49
|
|
|
50
50
|
sourcemapMethod,
|
|
51
51
|
|
|
@@ -284,10 +284,10 @@ export const compileHtml = async ({
|
|
|
284
284
|
compiledUrl: scriptCompiledFileUrl,
|
|
285
285
|
projectDirectoryUrl,
|
|
286
286
|
|
|
287
|
-
|
|
287
|
+
babelPluginMap,
|
|
288
288
|
moduleOutFormat,
|
|
289
289
|
importMetaFormat,
|
|
290
|
-
|
|
290
|
+
topLevelAwait,
|
|
291
291
|
})
|
|
292
292
|
} catch (e) {
|
|
293
293
|
// If there is a syntax error in inline script
|
|
@@ -9,9 +9,9 @@ export const compileJavascript = async ({
|
|
|
9
9
|
projectDirectoryUrl,
|
|
10
10
|
|
|
11
11
|
babelPluginMap,
|
|
12
|
-
transformTopLevelAwait,
|
|
13
12
|
moduleOutFormat,
|
|
14
13
|
importMetaFormat,
|
|
14
|
+
topLevelAwait,
|
|
15
15
|
|
|
16
16
|
sourcemapExcludeSources,
|
|
17
17
|
sourcemapMethod,
|
|
@@ -24,9 +24,9 @@ export const compileJavascript = async ({
|
|
|
24
24
|
projectDirectoryUrl,
|
|
25
25
|
|
|
26
26
|
babelPluginMap,
|
|
27
|
-
transformTopLevelAwait,
|
|
28
27
|
moduleOutFormat,
|
|
29
28
|
importMetaFormat,
|
|
29
|
+
topLevelAwait,
|
|
30
30
|
})
|
|
31
31
|
|
|
32
32
|
return transformResultToCompilationResult(
|
|
@@ -82,9 +82,9 @@ export const startCompileServer = async ({
|
|
|
82
82
|
projectFileCacheStrategy = "mtime",
|
|
83
83
|
|
|
84
84
|
// js compile options
|
|
85
|
-
transformTopLevelAwait = true,
|
|
86
85
|
moduleOutFormat,
|
|
87
86
|
importMetaFormat,
|
|
87
|
+
topLevelAwait,
|
|
88
88
|
env = {},
|
|
89
89
|
processEnvNodeEnv = process.env.NODE_ENV,
|
|
90
90
|
replaceProcessEnvNodeEnv = true,
|
|
@@ -310,7 +310,7 @@ export const startCompileServer = async ({
|
|
|
310
310
|
importDefaultExtension,
|
|
311
311
|
|
|
312
312
|
runtimeSupport,
|
|
313
|
-
|
|
313
|
+
topLevelAwait,
|
|
314
314
|
groupMap: compileServerGroupMap,
|
|
315
315
|
babelPluginMap,
|
|
316
316
|
customCompilers,
|
package/src/internal/compiling/js-compilation-service/findAsyncPluginNameInBabelPluginMap.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const findAsyncPluginNameInBabelPluginMap = (babelPluginMap) => {
|
|
2
|
-
if ("transform-async-to-promises" in babelPluginMap) {
|
|
3
|
-
return "transform-async-to-promises"
|
|
4
|
-
}
|
|
5
|
-
if ("transform-async-to-generator" in babelPluginMap) {
|
|
6
|
-
return "transform-async-to-generator"
|
|
7
|
-
}
|
|
8
|
-
return ""
|
|
9
|
-
}
|