@jsenv/core 27.0.0-alpha.64 → 27.0.0-alpha.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/html/explorer.html +557 -0
- package/dist/js/controllable_file.mjs +227 -0
- package/dist/{event_source_client.js → js/event_source_client.js} +19 -244
- package/dist/js/global_this.js +32 -0
- package/dist/js/html_supervisor_installer.js +522 -0
- package/dist/js/html_supervisor_setup.js +79 -0
- package/dist/{import_meta_hot.js → js/import_meta_hot.js} +1 -3
- package/dist/js/inline_content.js +8 -0
- package/dist/js/new_stylesheet.js +409 -0
- package/dist/js/regenerator_runtime.js +721 -0
- package/dist/js/s.js +429 -0
- package/dist/main.js +13362 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/AsyncGenerator/AsyncGenerator.js +95 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/AwaitValue/AwaitValue.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/applyDecoratorDescriptor/applyDecoratorDescriptor.js +29 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayLikeToArray/arrayLikeToArray.js +9 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayWithHoles/arrayWithHoles.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/arrayWithoutHoles/arrayWithoutHoles.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/assertThisInitialized/assertThisInitialized.js +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncGeneratorDelegate/asyncGeneratorDelegate.js +52 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncIterator/asyncIterator.js +78 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/asyncToGenerator/asyncToGenerator.js +39 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/awaitAsyncGenerator/awaitAsyncGenerator.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorDestructureSet/classApplyDescriptorDestructureSet.js +24 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorGet/classApplyDescriptorGet.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classApplyDescriptorSet/classApplyDescriptorSet.js +14 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCallCheck/classCallCheck.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCheckPrivateStaticAccess/classCheckPrivateStaticAccess.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classCheckPrivateStaticFieldDescriptor/classCheckPrivateStaticFieldDescriptor.js +6 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classExtractFieldDescriptor/classExtractFieldDescriptor.js +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classNameTDZError/classNameTDZError.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldDestructureSet/classPrivateFieldDestructureSet.js +6 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldGet/classPrivateFieldGet.js +6 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldLooseBase/classPrivateFieldLooseBase.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldLooseKey/classPrivateFieldLooseKey.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateFieldSet/classPrivateFieldSet.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateMethodGet/classPrivateMethodGet.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classPrivateMethodSet/classPrivateMethodSet.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateFieldSpecGet/classStaticPrivateFieldSpecGet.js +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateFieldSpecSet/classStaticPrivateFieldSpecSet.js +9 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateMethodGet/classStaticPrivateMethodGet.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/classStaticPrivateMethodSet/classStaticPrivateMethodSet.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/construct/construct.js +15 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createClass/createClass.js +18 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createForOfIteratorHelper/createForOfIteratorHelper.js +63 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createForOfIteratorHelperLoose/createForOfIteratorHelperLoose.js +22 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createRawReactElement/createRawReactElement.js +50 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/createSuper/createSuper.js +22 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/decorate/decorate.js +622 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defaults/defaults.js +14 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defineEnumerableProperties/defineEnumerableProperties.js +26 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/defineProperty/defineProperty.js +19 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/extends/extends.js +16 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/get/get.js +21 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/getPrototypeOf/getPrototypeOf.js +2 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/inherits/inherits.js +21 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/inheritsLoose/inheritsLoose.js +6 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/initializerDefineProperty/initializerDefineProperty.js +10 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/initializerWarningHelper/initializerWarningHelper.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/instanceof/instanceof.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/interopRequireDefault/interopRequireDefault.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/interopRequireWildcard/interopRequireWildcard.js +49 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/isNativeFunction/isNativeFunction.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/isNativeReflectConstruct/isNativeReflectConstruct.js +21 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArray/iterableToArray.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArrayLimit/iterableToArrayLimit.js +38 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/iterableToArrayLimitLoose/iterableToArrayLimitLoose.js +13 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/jsx/jsx.js +49 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/maybeArrayLike/maybeArrayLike.js +10 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/newArrowCheck/newArrowCheck.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/nonIterableRest/nonIterableRest.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/nonIterableSpread/nonIterableSpread.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectDestructuringEmpty/objectDestructuringEmpty.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectSpread/objectSpread.js +22 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectSpread2/objectSpread2.js +41 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectWithoutProperties/objectWithoutProperties.js +20 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js +15 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/possibleConstructorReturn/possibleConstructorReturn.js +10 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/readOnlyError/readOnlyError.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/readme.md +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/set/set.js +51 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/setPrototypeOf/setPrototypeOf.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/skipFirstGeneratorNext/skipFirstGeneratorNext.js +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/slicedToArray/slicedToArray.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/slicedToArrayLoose/slicedToArrayLoose.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/superPropBase/superPropBase.js +10 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/taggedTemplateLiteral/taggedTemplateLiteral.js +11 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/taggedTemplateLiteralLoose/taggedTemplateLiteralLoose.js +8 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/tdz/tdz.js +4 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/temporalRef/temporalRef.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/temporalUndefined/temporalUndefined.js +3 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toArray/toArray.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toConsumableArray/toConsumableArray.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toPrimitive/toPrimitive.js +14 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/toPropertyKey/toPropertyKey.js +5 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/typeof/typeof.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/unsupportedIterableToArray/unsupportedIterableToArray.js +10 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapAsyncGenerator/wrapAsyncGenerator.js +7 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapNativeSuper/wrapNativeSuper.js +35 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/wrapRegExp/wrapRegExp.js +67 -0
- package/dist/node_modules/@jsenv/babel-plugins/src/babel_helpers/writeOnlyError/writeOnlyError.js +4 -0
- package/dist/other/jsenv.png +0 -0
- package/package.json +15 -11
- package/src/build/build.js +152 -67
- package/src/build/build_urls_generator.js +18 -2
- package/src/build/inject_service_worker_urls.js +1 -1
- package/src/build/resync_ressource_hints.js +56 -9
- package/src/dev/plugins/explorer/client/explorer.html +1 -1
- package/src/dev/start_dev_server.js +17 -3
- package/src/execute/execute.js +3 -0
- package/src/omega/errors.js +10 -7
- package/src/omega/kitchen.js +209 -216
- package/src/omega/url_graph/url_graph_report.js +2 -2
- package/src/omega/url_graph.js +1 -1
- package/src/plugins/autoreload/dev_sse/jsenv_plugin_dev_sse_client.js +5 -10
- package/src/plugins/autoreload/jsenv_plugin_autoreload.js +1 -3
- package/src/plugins/bundling/js_module/bundle_js_module.js +66 -24
- package/src/plugins/file_urls/jsenv_plugin_file_urls.js +171 -53
- package/src/plugins/html_supervisor/jsenv_plugin_html_supervisor.js +9 -13
- package/src/plugins/http_urls/jsenv_plugin_http_urls.js +6 -6
- package/src/plugins/import_meta_hot/jsenv_plugin_import_meta_hot.js +5 -10
- package/src/plugins/node_esm_resolution/jsenv_plugin_node_esm_resolution.js +12 -2
- package/src/plugins/node_runtime/jsenv_plugin_node_runtime.js +12 -0
- package/src/plugins/plugin_controller.js +17 -3
- package/src/plugins/plugins.js +16 -19
- package/src/plugins/transpilation/as_js_classic/jsenv_plugin_as_js_classic.js +7 -13
- package/src/plugins/transpilation/as_js_classic/{jsenv_plugin_script_type_module_as_classic.js → jsenv_plugin_as_js_classic_html.js} +0 -0
- package/src/plugins/transpilation/jsenv_plugin_transpilation.js +1 -2
- package/src/plugins/url_analysis/html/html_urls.js +3 -0
- package/src/plugins/url_analysis/js/js_urls.js +2 -1
- package/src/plugins/url_analysis/jsenv_plugin_url_analysis.js +87 -1
- package/src/plugins/url_analysis/webmanifest/webmanifest_urls.js +3 -0
- package/src/plugins/url_resolution/jsenv_plugin_url_resolution.js +0 -3
- package/src/test/execute_plan.js +2 -0
- package/dist/event_source_client.js.map +0 -188
- package/dist/html_supervisor_installer.js +0 -1236
- package/dist/html_supervisor_installer.js.map +0 -337
- package/dist/html_supervisor_setup.js +0 -95
- package/dist/html_supervisor_setup.js.map +0 -57
- package/dist/import_meta_hot.js.map +0 -42
- package/dist/s.js +0 -626
- package/dist/s.js.map +0 -207
- package/src/jsenv_root_directory_url.js +0 -1
- package/src/omega/compat/default_runtime_compat.js +0 -11
- package/src/plugins/filesystem_magic/jsenv_plugin_filesystem_magic.js +0 -61
- package/src/plugins/transpilation/babel/new_stylesheet/client/.eslintrc.cjs +0 -24
package/src/plugins/plugins.js
CHANGED
|
@@ -6,15 +6,17 @@ import { jsenvPluginNodeEsmResolution } from "./node_esm_resolution/jsenv_plugin
|
|
|
6
6
|
import { jsenvPluginUrlVersion } from "./url_version/jsenv_plugin_url_version.js"
|
|
7
7
|
import { jsenvPluginFileUrls } from "./file_urls/jsenv_plugin_file_urls.js"
|
|
8
8
|
import { jsenvPluginHttpUrls } from "./http_urls/jsenv_plugin_http_urls.js"
|
|
9
|
-
import { jsenvPluginFileSystemMagic } from "./filesystem_magic/jsenv_plugin_filesystem_magic.js"
|
|
10
9
|
import { jsenvPluginInline } from "./inline/jsenv_plugin_inline.js"
|
|
11
10
|
import { jsenvPluginHtmlSupervisor } from "./html_supervisor/jsenv_plugin_html_supervisor.js"
|
|
12
11
|
import { jsenvPluginCommonJsGlobals } from "./commonjs_globals/jsenv_plugin_commonjs_globals.js"
|
|
13
12
|
import { jsenvPluginImportMetaScenarios } from "./import_meta_scenarios/jsenv_plugin_import_meta_scenarios.js"
|
|
14
13
|
import { jsenvPluginInjectGlobals } from "./inject_globals/jsenv_plugin_inject_globals.js"
|
|
15
14
|
import { jsenvPluginTranspilation } from "./transpilation/jsenv_plugin_transpilation.js"
|
|
15
|
+
import { jsenvPluginNodeRuntime } from "./node_runtime/jsenv_plugin_node_runtime.js"
|
|
16
|
+
// build only
|
|
16
17
|
import { jsenvPluginBundling } from "./bundling/jsenv_plugin_bundling.js"
|
|
17
18
|
import { jsenvPluginMinification } from "./minification/jsenv_plugin_minification.js"
|
|
19
|
+
// autoreload
|
|
18
20
|
import { jsenvPluginImportMetaHot } from "./import_meta_hot/jsenv_plugin_import_meta_hot.js"
|
|
19
21
|
import { jsenvPluginAutoreload } from "./autoreload/jsenv_plugin_autoreload.js"
|
|
20
22
|
import { jsenvPluginCacheControl } from "./cache_control/jsenv_plugin_cache_control.js"
|
|
@@ -23,10 +25,13 @@ export const getCorePlugins = ({
|
|
|
23
25
|
rootDirectoryUrl,
|
|
24
26
|
urlGraph,
|
|
25
27
|
scenario,
|
|
28
|
+
runtimeCompat,
|
|
26
29
|
|
|
30
|
+
urlAnalysis = {},
|
|
27
31
|
htmlSupervisor,
|
|
28
32
|
nodeEsmResolution,
|
|
29
33
|
fileSystemMagicResolution,
|
|
34
|
+
directoryReferenceAllowed,
|
|
30
35
|
injectedGlobals,
|
|
31
36
|
transpilation = true,
|
|
32
37
|
minification = false,
|
|
@@ -43,42 +48,34 @@ export const getCorePlugins = ({
|
|
|
43
48
|
nodeEsmResolution = {}
|
|
44
49
|
}
|
|
45
50
|
return [
|
|
46
|
-
jsenvPluginUrlAnalysis(),
|
|
47
|
-
jsenvPluginTranspilation(
|
|
48
|
-
|
|
49
|
-
...transpilation,
|
|
50
|
-
}),
|
|
51
|
-
...(htmlSupervisor
|
|
52
|
-
? [
|
|
53
|
-
jsenvPluginHtmlSupervisor({
|
|
54
|
-
rootDirectoryUrl,
|
|
55
|
-
...htmlSupervisor,
|
|
56
|
-
}),
|
|
57
|
-
]
|
|
58
|
-
: []), // before inline as it turns inline <script> into <script src>
|
|
51
|
+
jsenvPluginUrlAnalysis({ rootDirectoryUrl, ...urlAnalysis }),
|
|
52
|
+
jsenvPluginTranspilation(transpilation),
|
|
53
|
+
...(htmlSupervisor ? [jsenvPluginHtmlSupervisor(htmlSupervisor)] : []), // before inline as it turns inline <script> into <script src>
|
|
59
54
|
jsenvPluginInline(), // before "file urls" to resolve and load inline urls
|
|
60
55
|
jsenvPluginImportmap(), // before node esm to handle bare specifiers before node esm
|
|
61
|
-
jsenvPluginFileUrls(
|
|
56
|
+
jsenvPluginFileUrls({
|
|
57
|
+
directoryReferenceAllowed,
|
|
58
|
+
...fileSystemMagicResolution,
|
|
59
|
+
}),
|
|
62
60
|
jsenvPluginHttpUrls(),
|
|
63
61
|
jsenvPluginLeadingSlash(),
|
|
64
62
|
// before url resolution to handle "js_import_export" resolution
|
|
65
63
|
jsenvPluginNodeEsmResolution({
|
|
66
64
|
rootDirectoryUrl,
|
|
65
|
+
runtimeCompat,
|
|
67
66
|
...nodeEsmResolution,
|
|
68
67
|
}),
|
|
69
68
|
jsenvPluginUrlResolution(),
|
|
70
|
-
jsenvPluginFileSystemMagic(fileSystemMagicResolution),
|
|
71
69
|
jsenvPluginUrlVersion(),
|
|
72
70
|
jsenvPluginInjectGlobals(injectedGlobals),
|
|
73
71
|
jsenvPluginCommonJsGlobals(),
|
|
74
72
|
jsenvPluginImportMetaScenarios(),
|
|
75
73
|
|
|
74
|
+
jsenvPluginNodeRuntime({ runtimeCompat }),
|
|
76
75
|
jsenvPluginBundling(bundling),
|
|
77
76
|
jsenvPluginMinification(minification),
|
|
78
77
|
|
|
79
|
-
jsenvPluginImportMetaHot(
|
|
80
|
-
rootDirectoryUrl,
|
|
81
|
-
}),
|
|
78
|
+
jsenvPluginImportMetaHot(),
|
|
82
79
|
...(clientAutoreload
|
|
83
80
|
? [
|
|
84
81
|
jsenvPluginAutoreload({
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
import { createRequire } from "node:module"
|
|
15
|
-
import { readFileSync, urlToFilename
|
|
15
|
+
import { readFileSync, urlToFilename } from "@jsenv/filesystem"
|
|
16
16
|
|
|
17
17
|
import { requireBabelPlugin } from "@jsenv/babel-plugins"
|
|
18
18
|
import { applyBabelPlugins } from "@jsenv/utils/js_ast/apply_babel_plugins.js"
|
|
@@ -21,23 +21,17 @@ import { createMagicSource } from "@jsenv/utils/sourcemap/magic_source.js"
|
|
|
21
21
|
import { composeTwoSourcemaps } from "@jsenv/utils/sourcemap/sourcemap_composition_v3.js"
|
|
22
22
|
import { fetchOriginalUrlInfo } from "@jsenv/utils/graph/fetch_original_url_info.js"
|
|
23
23
|
|
|
24
|
-
import { jsenvRootDirectoryUrl } from "@jsenv/core/src/jsenv_root_directory_url.js"
|
|
25
24
|
import { babelPluginTransformImportMetaUrl } from "./helpers/babel_plugin_transform_import_meta_url.js"
|
|
26
|
-
import { jsenvPluginAsJsClassicHtml } from "./
|
|
25
|
+
import { jsenvPluginAsJsClassicHtml } from "./jsenv_plugin_as_js_classic_html.js"
|
|
27
26
|
import { jsenvPluginAsJsClassicWorkers } from "./jsenv_plugin_as_js_classic_workers.js"
|
|
28
27
|
|
|
29
28
|
const require = createRequire(import.meta.url)
|
|
30
29
|
|
|
31
|
-
export const jsenvPluginAsJsClassic = ({
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
rootDirectoryUrl === jsenvRootDirectoryUrl ||
|
|
37
|
-
urlIsInsideOf(rootDirectoryUrl, jsenvRootDirectoryUrl)
|
|
38
|
-
const systemJsClientFileUrl = preferSourceFiles
|
|
39
|
-
? new URL("./client/s.js", import.meta.url).href
|
|
40
|
-
: new URL("./dist/s.js", import.meta.url).href
|
|
30
|
+
export const jsenvPluginAsJsClassic = ({ systemJsInjection }) => {
|
|
31
|
+
const systemJsClientFileUrl = new URL(
|
|
32
|
+
"./client/s.js?js_classic",
|
|
33
|
+
import.meta.url,
|
|
34
|
+
).href
|
|
41
35
|
|
|
42
36
|
return [
|
|
43
37
|
jsenvPluginAsJsClassicConversion({
|
|
File without changes
|
|
@@ -14,7 +14,6 @@ import { jsenvPluginBabel } from "./babel/jsenv_plugin_babel.js"
|
|
|
14
14
|
import { jsenvPluginTopLevelAwait } from "./jsenv_plugin_top_level_await.js"
|
|
15
15
|
|
|
16
16
|
export const jsenvPluginTranspilation = ({
|
|
17
|
-
rootDirectoryUrl,
|
|
18
17
|
importAssertions = true,
|
|
19
18
|
css = true,
|
|
20
19
|
jsModuleAsJsClassic = true,
|
|
@@ -37,7 +36,7 @@ export const jsenvPluginTranspilation = ({
|
|
|
37
36
|
// so the build function will disable jsModuleAsJsClassic during build
|
|
38
37
|
// and enable it manually during postbuild
|
|
39
38
|
...(jsModuleAsJsClassic
|
|
40
|
-
? [jsenvPluginAsJsClassic({
|
|
39
|
+
? [jsenvPluginAsJsClassic({ systemJsInjection })]
|
|
41
40
|
: []),
|
|
42
41
|
// topLevelAwait must come after js_module_as_js_classic because it's related to the module format
|
|
43
42
|
// so we want to wait to know the module format before transforming things related to top level await
|
|
@@ -51,10 +51,11 @@ export const parseAndTransformJsUrls = async (urlInfo, context) => {
|
|
|
51
51
|
typePropertyNode: jsMention.typePropertyNode,
|
|
52
52
|
})
|
|
53
53
|
actions.push(async () => {
|
|
54
|
+
const replacement = await referenceUtils.readGeneratedSpecifier(reference)
|
|
54
55
|
magicSource.replace({
|
|
55
56
|
start: jsMention.specifierStart,
|
|
56
57
|
end: jsMention.specifierEnd,
|
|
57
|
-
replacement
|
|
58
|
+
replacement,
|
|
58
59
|
})
|
|
59
60
|
if (reference.mutation) {
|
|
60
61
|
reference.mutation(magicSource)
|
|
@@ -1,18 +1,104 @@
|
|
|
1
|
+
import {
|
|
2
|
+
normalizeStructuredMetaMap,
|
|
3
|
+
urlToMeta,
|
|
4
|
+
urlToRelativeUrl,
|
|
5
|
+
} from "@jsenv/filesystem"
|
|
6
|
+
|
|
1
7
|
import { parseAndTransformHtmlUrls } from "./html/html_urls.js"
|
|
2
8
|
import { parseAndTransformCssUrls } from "./css/css_urls.js"
|
|
3
9
|
import { parseAndTransformJsUrls } from "./js/js_urls.js"
|
|
4
10
|
import { parseAndTransformWebmanifestUrls } from "./webmanifest/webmanifest_urls.js"
|
|
5
11
|
|
|
6
|
-
export const jsenvPluginUrlAnalysis = () => {
|
|
12
|
+
export const jsenvPluginUrlAnalysis = ({ rootDirectoryUrl, include }) => {
|
|
13
|
+
let getIncludeInfo = () => undefined
|
|
14
|
+
if (include) {
|
|
15
|
+
const includeMetaMap = normalizeStructuredMetaMap(
|
|
16
|
+
{
|
|
17
|
+
include,
|
|
18
|
+
},
|
|
19
|
+
rootDirectoryUrl,
|
|
20
|
+
)
|
|
21
|
+
getIncludeInfo = (url) => {
|
|
22
|
+
const meta = urlToMeta({
|
|
23
|
+
url,
|
|
24
|
+
structuredMetaMap: includeMetaMap,
|
|
25
|
+
})
|
|
26
|
+
return meta.include
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
7
30
|
return {
|
|
8
31
|
name: "jsenv:url_analysis",
|
|
9
32
|
appliesDuring: "*",
|
|
33
|
+
redirectUrl: (reference) => {
|
|
34
|
+
if (reference.specifier[0] === "#") {
|
|
35
|
+
reference.shouldHandle = false
|
|
36
|
+
return
|
|
37
|
+
}
|
|
38
|
+
const includeInfo = getIncludeInfo(reference.url)
|
|
39
|
+
if (includeInfo === true) {
|
|
40
|
+
reference.shouldHandle = true
|
|
41
|
+
return
|
|
42
|
+
}
|
|
43
|
+
if (includeInfo === false) {
|
|
44
|
+
reference.shouldHandle = false
|
|
45
|
+
return
|
|
46
|
+
}
|
|
47
|
+
if (reference.url.startsWith("data:")) {
|
|
48
|
+
reference.shouldHandle = true
|
|
49
|
+
return
|
|
50
|
+
}
|
|
51
|
+
if (reference.url.startsWith("file:")) {
|
|
52
|
+
reference.shouldHandle = true
|
|
53
|
+
return
|
|
54
|
+
}
|
|
55
|
+
},
|
|
10
56
|
transformUrlContent: {
|
|
11
57
|
html: parseAndTransformHtmlUrls,
|
|
12
58
|
css: parseAndTransformCssUrls,
|
|
13
59
|
js_classic: parseAndTransformJsUrls,
|
|
14
60
|
js_module: parseAndTransformJsUrls,
|
|
15
61
|
webmanifest: parseAndTransformWebmanifestUrls,
|
|
62
|
+
directory: (urlInfo, context) => {
|
|
63
|
+
const originalDirectoryReference = findOriginalDirectoryReference(
|
|
64
|
+
urlInfo,
|
|
65
|
+
context,
|
|
66
|
+
)
|
|
67
|
+
const directoryRelativeUrl = urlToRelativeUrl(
|
|
68
|
+
urlInfo.url,
|
|
69
|
+
context.rootDirectoryUrl,
|
|
70
|
+
)
|
|
71
|
+
JSON.parse(urlInfo.content).forEach((directoryEntry) => {
|
|
72
|
+
context.referenceUtils.found({
|
|
73
|
+
type: "filesystem",
|
|
74
|
+
subtype: "directory_entry",
|
|
75
|
+
specifier: directoryEntry,
|
|
76
|
+
trace: `"${directoryRelativeUrl}${directoryEntry}" entry in directory referenced by ${originalDirectoryReference.trace}`,
|
|
77
|
+
})
|
|
78
|
+
})
|
|
79
|
+
},
|
|
16
80
|
},
|
|
17
81
|
}
|
|
18
82
|
}
|
|
83
|
+
|
|
84
|
+
const findOriginalDirectoryReference = (urlInfo, context) => {
|
|
85
|
+
const findNonFileSystemAncestor = (urlInfo) => {
|
|
86
|
+
for (const dependentUrl of urlInfo.dependents) {
|
|
87
|
+
const dependentUrlInfo = context.urlGraph.getUrlInfo(dependentUrl)
|
|
88
|
+
if (dependentUrlInfo.type !== "directory") {
|
|
89
|
+
return [dependentUrlInfo, urlInfo]
|
|
90
|
+
}
|
|
91
|
+
const found = findNonFileSystemAncestor(dependentUrlInfo)
|
|
92
|
+
if (found) {
|
|
93
|
+
return found
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return []
|
|
97
|
+
}
|
|
98
|
+
const [ancestor, child] = findNonFileSystemAncestor(urlInfo)
|
|
99
|
+
if (!ancestor) {
|
|
100
|
+
return null
|
|
101
|
+
}
|
|
102
|
+
const ref = ancestor.references.find((ref) => ref.url === child.url)
|
|
103
|
+
return ref
|
|
104
|
+
}
|
|
@@ -12,6 +12,9 @@ export const parseAndTransformWebmanifestUrls = async (urlInfo, context) => {
|
|
|
12
12
|
icon.src = await context.referenceUtils.readGeneratedSpecifier(reference)
|
|
13
13
|
})
|
|
14
14
|
})
|
|
15
|
+
if (actions.length === 0) {
|
|
16
|
+
return null
|
|
17
|
+
}
|
|
15
18
|
await Promise.all(actions.map((action) => action()))
|
|
16
19
|
return JSON.stringify(manifest, null, " ")
|
|
17
20
|
}
|
package/src/test/execute_plan.js
CHANGED
|
@@ -132,6 +132,7 @@ export const executePlan = async (
|
|
|
132
132
|
urlGraph,
|
|
133
133
|
scenario,
|
|
134
134
|
sourcemaps,
|
|
135
|
+
runtimeCompat: runtimes,
|
|
135
136
|
writeGeneratedFiles,
|
|
136
137
|
plugins: [
|
|
137
138
|
...plugins,
|
|
@@ -139,6 +140,7 @@ export const executePlan = async (
|
|
|
139
140
|
rootDirectoryUrl,
|
|
140
141
|
urlGraph,
|
|
141
142
|
scenario,
|
|
143
|
+
runtimeCompat: runtimes,
|
|
142
144
|
|
|
143
145
|
htmlSupervisor: true,
|
|
144
146
|
nodeEsmResolution,
|