@jsenv/core 36.2.1 → 36.3.0
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/babel_helpers/AsyncGenerator/AsyncGenerator.js +45 -35
- package/dist/babel_helpers/AwaitValue/AwaitValue.js +3 -3
- package/dist/babel_helpers/applyDecoratedDescriptor/applyDecoratedDescriptor.js +13 -13
- package/dist/babel_helpers/applyDecs/applyDecs.js +227 -42
- package/dist/babel_helpers/applyDecs2203/applyDecs2203.js +559 -418
- package/dist/babel_helpers/applyDecs2203R/applyDecs2203R.js +235 -87
- package/dist/babel_helpers/applyDecs2301/applyDecs2301.js +591 -456
- package/dist/babel_helpers/applyDecs2305/applyDecs2305.js +681 -0
- package/dist/babel_helpers/arrayLikeToArray/arrayLikeToArray.js +5 -5
- package/dist/babel_helpers/arrayWithHoles/arrayWithHoles.js +3 -3
- package/dist/babel_helpers/arrayWithoutHoles/arrayWithoutHoles.js +4 -4
- package/dist/babel_helpers/assertThisInitialized/assertThisInitialized.js +4 -4
- package/dist/babel_helpers/asyncGeneratorDelegate/asyncGeneratorDelegate.js +12 -4
- package/dist/babel_helpers/asyncIterator/asyncIterator.js +13 -11
- package/dist/babel_helpers/asyncToGenerator/asyncToGenerator.js +18 -17
- package/dist/babel_helpers/awaitAsyncGenerator/awaitAsyncGenerator.js +2 -1
- package/dist/babel_helpers/checkInRHS/checkInRHS.js +8 -5
- package/dist/babel_helpers/classApplyDescriptorDestructureSet/classApplyDescriptorDestructureSet.js +7 -7
- package/dist/babel_helpers/classApplyDescriptorGet/classApplyDescriptorGet.js +3 -3
- package/dist/babel_helpers/classApplyDescriptorSet/classApplyDescriptorSet.js +4 -4
- package/dist/babel_helpers/classCallCheck/classCallCheck.js +2 -2
- package/dist/babel_helpers/classCheckPrivateStaticAccess/classCheckPrivateStaticAccess.js +2 -2
- package/dist/babel_helpers/classCheckPrivateStaticFieldDescriptor/classCheckPrivateStaticFieldDescriptor.js +2 -2
- package/dist/babel_helpers/classExtractFieldDescriptor/classExtractFieldDescriptor.js +3 -3
- package/dist/babel_helpers/classNameTDZError/classNameTDZError.js +2 -2
- package/dist/babel_helpers/classPrivateFieldDestructureSet/classPrivateFieldDestructureSet.js +6 -5
- package/dist/babel_helpers/classPrivateFieldGet/classPrivateFieldGet.js +6 -5
- package/dist/babel_helpers/classPrivateFieldLooseBase/classPrivateFieldLooseBase.js +3 -3
- package/dist/babel_helpers/classPrivateFieldLooseKey/classPrivateFieldLooseKey.js +3 -3
- package/dist/babel_helpers/classPrivateFieldSet/classPrivateFieldSet.js +7 -6
- package/dist/babel_helpers/classPrivateMethodGet/classPrivateMethodGet.js +3 -3
- package/dist/babel_helpers/classPrivateMethodSet/classPrivateMethodSet.js +2 -2
- package/dist/babel_helpers/classStaticPrivateFieldSpecGet/classStaticPrivateFieldSpecGet.js +8 -7
- package/dist/babel_helpers/classStaticPrivateFieldSpecSet/classStaticPrivateFieldSpecSet.js +15 -9
- package/dist/babel_helpers/classStaticPrivateMethodGet/classStaticPrivateMethodGet.js +5 -4
- package/dist/babel_helpers/classStaticPrivateMethodSet/classStaticPrivateMethodSet.js +2 -2
- package/dist/babel_helpers/construct/construct.js +10 -9
- package/dist/babel_helpers/createClass/createClass.js +2 -3
- package/dist/babel_helpers/createForOfIteratorHelper/createForOfIteratorHelper.js +30 -29
- package/dist/babel_helpers/createForOfIteratorHelperLoose/createForOfIteratorHelperLoose.js +18 -16
- package/dist/babel_helpers/createRawReactElement/createRawReactElement.js +23 -17
- package/dist/babel_helpers/createSuper/createSuper.js +14 -12
- package/dist/babel_helpers/decorate/decorate.js +242 -210
- package/dist/babel_helpers/defaults/defaults.js +6 -6
- package/dist/babel_helpers/defineAccessor/defineAccessor.js +1 -4
- package/dist/babel_helpers/defineEnumerableProperties/defineEnumerableProperties.js +12 -12
- package/dist/babel_helpers/defineProperty/defineProperty.js +7 -6
- package/dist/babel_helpers/extends/extends.js +5 -4
- package/dist/babel_helpers/get/get.js +2 -1
- package/dist/babel_helpers/getPrototypeOf/getPrototypeOf.js +4 -3
- package/dist/babel_helpers/inherits/inherits.js +3 -4
- package/dist/babel_helpers/inheritsLoose/inheritsLoose.js +6 -5
- package/dist/babel_helpers/initializerDefineProperty/initializerDefineProperty.js +4 -4
- package/dist/babel_helpers/initializerWarningHelper/initializerWarningHelper.js +5 -2
- package/dist/babel_helpers/instanceof/instanceof.js +3 -3
- package/dist/babel_helpers/interopRequireDefault/interopRequireDefault.js +2 -4
- package/dist/babel_helpers/interopRequireWildcard/interopRequireWildcard.js +19 -21
- package/dist/babel_helpers/isNativeFunction/isNativeFunction.js +2 -2
- package/dist/babel_helpers/isNativeReflectConstruct/isNativeReflectConstruct.js +7 -7
- package/dist/babel_helpers/iterableToArray/iterableToArray.js +6 -2
- package/dist/babel_helpers/iterableToArrayLimit/iterableToArrayLimit.js +6 -1
- package/dist/babel_helpers/iterableToArrayLimitLoose/iterableToArrayLimitLoose.js +6 -2
- package/dist/babel_helpers/jsx/jsx.js +14 -7
- package/dist/babel_helpers/maybeArrayLike/maybeArrayLike.js +6 -5
- package/dist/babel_helpers/newArrowCheck/newArrowCheck.js +2 -2
- package/dist/babel_helpers/nonIterableRest/nonIterableRest.js +5 -3
- package/dist/babel_helpers/nonIterableSpread/nonIterableSpread.js +5 -3
- package/dist/babel_helpers/objectDestructuringEmpty/objectDestructuringEmpty.js +2 -2
- package/dist/babel_helpers/objectSpread/objectSpread.js +15 -12
- package/dist/babel_helpers/objectSpread2/objectSpread2.js +7 -2
- package/dist/babel_helpers/objectWithoutProperties/objectWithoutProperties.js +15 -13
- package/dist/babel_helpers/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js +11 -11
- package/dist/babel_helpers/possibleConstructorReturn/possibleConstructorReturn.js +7 -6
- package/dist/babel_helpers/readOnlyError/readOnlyError.js +2 -2
- package/dist/babel_helpers/regeneratorRuntime/regeneratorRuntime.js +124 -73
- package/dist/babel_helpers/set/set.js +23 -20
- package/dist/babel_helpers/setPrototypeOf/setPrototypeOf.js +6 -5
- package/dist/babel_helpers/skipFirstGeneratorNext/skipFirstGeneratorNext.js +5 -5
- package/dist/babel_helpers/slicedToArray/slicedToArray.js +10 -5
- package/dist/babel_helpers/slicedToArrayLoose/slicedToArrayLoose.js +12 -6
- package/dist/babel_helpers/superPropBase/superPropBase.js +6 -5
- package/dist/babel_helpers/taggedTemplateLiteral/taggedTemplateLiteral.js +7 -7
- package/dist/babel_helpers/taggedTemplateLiteralLoose/taggedTemplateLiteralLoose.js +4 -4
- package/dist/babel_helpers/tdz/tdz.js +2 -2
- package/dist/babel_helpers/temporalRef/temporalRef.js +5 -4
- package/dist/babel_helpers/temporalUndefined/temporalUndefined.js +1 -1
- package/dist/babel_helpers/toArray/toArray.js +10 -5
- package/dist/babel_helpers/toConsumableArray/toConsumableArray.js +10 -5
- package/dist/babel_helpers/toPrimitive/toPrimitive.js +7 -7
- package/dist/babel_helpers/toPropertyKey/toPropertyKey.js +5 -4
- package/dist/babel_helpers/typeof/typeof.js +14 -5
- package/dist/babel_helpers/unsupportedIterableToArray/unsupportedIterableToArray.js +10 -8
- package/dist/babel_helpers/wrapAsyncGenerator/wrapAsyncGenerator.js +5 -4
- package/dist/babel_helpers/wrapNativeSuper/wrapNativeSuper.js +17 -15
- package/dist/babel_helpers/wrapRegExp/wrapRegExp.js +19 -8
- package/dist/babel_helpers/writeOnlyError/writeOnlyError.js +2 -2
- package/dist/js/autoreload.js +148 -133
- package/dist/js/import_meta_hot.js +19 -13
- package/dist/js/inline_content.js +1 -3
- package/dist/js/new_stylesheet.js +119 -60
- package/dist/js/regenerator_runtime.js +204 -102
- package/dist/js/ribbon.js +11 -6
- package/dist/js/server_events_client.js +122 -98
- package/dist/js/ws.js +968 -265
- package/dist/jsenv_core.js +8513 -6162
- package/package.json +9 -9
- package/src/build/build.js +497 -486
- package/src/build/version_mappings_injection.js +21 -44
- package/src/kitchen/errors.js +2 -2
- package/src/kitchen/fetched_content_compliance.js +6 -2
- package/src/kitchen/kitchen.js +285 -80
- package/src/kitchen/prepend_content.js +135 -0
- package/src/kitchen/url_graph/url_graph_visitor.js +99 -0
- package/src/kitchen/url_graph/url_info_transformations.js +140 -21
- package/src/kitchen/url_graph.js +59 -29
- package/src/plugins/autoreload/jsenv_plugin_hmr.js +1 -2
- package/src/plugins/import_meta_hot/jsenv_plugin_import_meta_hot.js +2 -2
- package/src/plugins/importmap/jsenv_plugin_importmap.js +2 -2
- package/src/plugins/inlining/jsenv_plugin_inlining_as_data_url.js +1 -1
- package/src/plugins/reference_analysis/html/jsenv_plugin_html_reference_analysis.js +44 -23
- package/src/plugins/reference_analysis/js/jsenv_plugin_js_reference_analysis.js +2 -1
- package/dist/js/global_this_js_classic.js +0 -24
- package/dist/js/global_this_js_module.js +0 -20
- package/src/build/graph_utils.js +0 -34
|
@@ -37,7 +37,6 @@ const parseAndTransformHtmlReferences = async (
|
|
|
37
37
|
context,
|
|
38
38
|
{ inlineContent, inlineConvertedScript },
|
|
39
39
|
) => {
|
|
40
|
-
const url = urlInfo.originalUrl;
|
|
41
40
|
const content = urlInfo.content;
|
|
42
41
|
const htmlAst = parseHtmlString(content);
|
|
43
42
|
|
|
@@ -75,6 +74,7 @@ const parseAndTransformHtmlReferences = async (
|
|
|
75
74
|
"modulepreload",
|
|
76
75
|
].includes(subtype);
|
|
77
76
|
const [reference] = context.referenceUtils.found({
|
|
77
|
+
node,
|
|
78
78
|
type,
|
|
79
79
|
subtype,
|
|
80
80
|
expectedType,
|
|
@@ -94,21 +94,13 @@ const parseAndTransformHtmlReferences = async (
|
|
|
94
94
|
});
|
|
95
95
|
});
|
|
96
96
|
});
|
|
97
|
+
return reference;
|
|
97
98
|
};
|
|
98
99
|
const visitHref = (node, referenceProps) => {
|
|
99
100
|
const href = getHtmlNodeAttribute(node, "href");
|
|
100
101
|
if (href) {
|
|
101
102
|
return createExternalReference(node, "href", href, referenceProps);
|
|
102
103
|
}
|
|
103
|
-
const inlinedFromHref = getHtmlNodeAttribute(node, "inlined-from-href");
|
|
104
|
-
if (inlinedFromHref) {
|
|
105
|
-
return createExternalReference(
|
|
106
|
-
node,
|
|
107
|
-
"inlined-from-href",
|
|
108
|
-
new URL(inlinedFromHref, url).href,
|
|
109
|
-
referenceProps,
|
|
110
|
-
);
|
|
111
|
-
}
|
|
112
104
|
return null;
|
|
113
105
|
};
|
|
114
106
|
const visitSrc = (node, referenceProps) => {
|
|
@@ -116,15 +108,6 @@ const parseAndTransformHtmlReferences = async (
|
|
|
116
108
|
if (src) {
|
|
117
109
|
return createExternalReference(node, "src", src, referenceProps);
|
|
118
110
|
}
|
|
119
|
-
const inlinedFromSrc = getHtmlNodeAttribute(node, "inlined-from-src");
|
|
120
|
-
if (inlinedFromSrc) {
|
|
121
|
-
return createExternalReference(
|
|
122
|
-
node,
|
|
123
|
-
"inlined-from-src",
|
|
124
|
-
new URL(inlinedFromSrc, url).href,
|
|
125
|
-
referenceProps,
|
|
126
|
-
);
|
|
127
|
-
}
|
|
128
111
|
return null;
|
|
129
112
|
};
|
|
130
113
|
const visitSrcset = (node, referenceProps) => {
|
|
@@ -146,7 +129,7 @@ const parseAndTransformHtmlReferences = async (
|
|
|
146
129
|
const createInlineReference = (
|
|
147
130
|
node,
|
|
148
131
|
inlineContent,
|
|
149
|
-
{ extension, type, expectedType, contentType },
|
|
132
|
+
{ extension, type, subtype, expectedType, contentType },
|
|
150
133
|
) => {
|
|
151
134
|
const hotAccept = getHtmlNodeAttribute(node, "hot-accept") !== undefined;
|
|
152
135
|
const { line, column, lineEnd, columnEnd, isOriginal } =
|
|
@@ -177,6 +160,35 @@ const parseAndTransformHtmlReferences = async (
|
|
|
177
160
|
debug,
|
|
178
161
|
},
|
|
179
162
|
);
|
|
163
|
+
|
|
164
|
+
const externalSpecifierAttributeName =
|
|
165
|
+
type === "script"
|
|
166
|
+
? "inlined-from-src"
|
|
167
|
+
: type === "style"
|
|
168
|
+
? "inlined-from-href"
|
|
169
|
+
: null;
|
|
170
|
+
if (externalSpecifierAttributeName) {
|
|
171
|
+
const externalSpecifier = getHtmlNodeAttribute(
|
|
172
|
+
node,
|
|
173
|
+
externalSpecifierAttributeName,
|
|
174
|
+
);
|
|
175
|
+
if (externalSpecifier) {
|
|
176
|
+
// create an external ref
|
|
177
|
+
// the goal is only to have the url in the graph (and in dependencies/implitic urls for reload)
|
|
178
|
+
// not to consider the url is actually used (at least during build)
|
|
179
|
+
// maybe we can just exlcude these urls in a special if during build, we'll see
|
|
180
|
+
const externalRef = createExternalReference(
|
|
181
|
+
node,
|
|
182
|
+
externalSpecifierAttributeName,
|
|
183
|
+
externalSpecifier,
|
|
184
|
+
{ type, subtype, expectedType },
|
|
185
|
+
);
|
|
186
|
+
inlineReference.prev = externalRef;
|
|
187
|
+
inlineReference.original = externalRef;
|
|
188
|
+
externalRef.next = inlineReference;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
180
192
|
actions.push(async () => {
|
|
181
193
|
await cookInlineContent({
|
|
182
194
|
context,
|
|
@@ -199,12 +211,11 @@ const parseAndTransformHtmlReferences = async (
|
|
|
199
211
|
}
|
|
200
212
|
});
|
|
201
213
|
});
|
|
202
|
-
|
|
203
214
|
return inlineReference;
|
|
204
215
|
};
|
|
205
216
|
const visitTextContent = (
|
|
206
217
|
node,
|
|
207
|
-
{ extension, type, expectedType, contentType },
|
|
218
|
+
{ extension, type, subtype, expectedType, contentType },
|
|
208
219
|
) => {
|
|
209
220
|
const inlineContent = getHtmlNodeText(node);
|
|
210
221
|
if (!inlineContent) {
|
|
@@ -213,6 +224,7 @@ const parseAndTransformHtmlReferences = async (
|
|
|
213
224
|
return createInlineReference(node, inlineContent, {
|
|
214
225
|
extension,
|
|
215
226
|
type,
|
|
227
|
+
subtype,
|
|
216
228
|
expectedType,
|
|
217
229
|
contentType,
|
|
218
230
|
});
|
|
@@ -254,7 +266,8 @@ const parseAndTransformHtmlReferences = async (
|
|
|
254
266
|
return;
|
|
255
267
|
}
|
|
256
268
|
|
|
257
|
-
const { type, contentType, extension } =
|
|
269
|
+
const { type, subtype, contentType, extension } =
|
|
270
|
+
analyzeScriptNode(scriptNode);
|
|
258
271
|
// ignore <script type="whatever">foobar</script>
|
|
259
272
|
// per HTML spec https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-type
|
|
260
273
|
if (type !== "text") {
|
|
@@ -286,6 +299,7 @@ const parseAndTransformHtmlReferences = async (
|
|
|
286
299
|
const inlineRef = visitTextContent(scriptNode, {
|
|
287
300
|
extension: extension || CONTENT_TYPE.asFileExtension(contentType),
|
|
288
301
|
type: "script",
|
|
302
|
+
subtype,
|
|
289
303
|
expectedType: type,
|
|
290
304
|
contentType,
|
|
291
305
|
});
|
|
@@ -427,3 +441,10 @@ const decideLinkExpectedType = (linkReference, context) => {
|
|
|
427
441
|
}
|
|
428
442
|
return undefined;
|
|
429
443
|
};
|
|
444
|
+
|
|
445
|
+
// const applyWebUrlResolution = (url, baseUrl) => {
|
|
446
|
+
// if (url[0] === "/") {
|
|
447
|
+
// return new URL(url.slice(1), baseUrl).href;
|
|
448
|
+
// }
|
|
449
|
+
// return new URL(url, baseUrl).href;
|
|
450
|
+
// };
|
|
@@ -132,9 +132,10 @@ const parseAndTransformJsReferences = async (
|
|
|
132
132
|
}
|
|
133
133
|
});
|
|
134
134
|
};
|
|
135
|
-
const jsReferenceInfos =
|
|
135
|
+
const jsReferenceInfos = parseJsUrls({
|
|
136
136
|
js: urlInfo.content,
|
|
137
137
|
url: urlInfo.originalUrl,
|
|
138
|
+
ast: urlInfo.contentAst,
|
|
138
139
|
isJsModule: urlInfo.type === "js_module",
|
|
139
140
|
isWebWorker: isWebWorkerUrlInfo(urlInfo),
|
|
140
141
|
inlineContent,
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
// https://mathiasbynens.be/notes/globalthis
|
|
2
|
-
|
|
3
|
-
/* eslint-disable no-redeclare */
|
|
4
|
-
/* global globalThis */
|
|
5
|
-
let globalObject;
|
|
6
|
-
if (typeof globalThis === "object") {
|
|
7
|
-
globalObject = globalThis;
|
|
8
|
-
} else {
|
|
9
|
-
if (typeof this === "object") {
|
|
10
|
-
globalObject = this;
|
|
11
|
-
} else {
|
|
12
|
-
// eslint-disable-next-line no-extend-native
|
|
13
|
-
Object.defineProperty(Object.prototype, "__global__", {
|
|
14
|
-
get() {
|
|
15
|
-
return this;
|
|
16
|
-
},
|
|
17
|
-
configurable: true
|
|
18
|
-
});
|
|
19
|
-
// eslint-disable-next-line no-undef
|
|
20
|
-
globalObject = __global__;
|
|
21
|
-
delete Object.prototype.__global__;
|
|
22
|
-
}
|
|
23
|
-
globalObject.globalThis = globalObject;
|
|
24
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// https://mathiasbynens.be/notes/globalthis
|
|
2
|
-
|
|
3
|
-
/* eslint-disable no-redeclare */
|
|
4
|
-
/* global globalThis */
|
|
5
|
-
let globalObject;
|
|
6
|
-
if (typeof globalThis === "object") {
|
|
7
|
-
globalObject = globalThis;
|
|
8
|
-
} else {
|
|
9
|
-
// eslint-disable-next-line no-extend-native
|
|
10
|
-
Object.defineProperty(Object.prototype, "__global__", {
|
|
11
|
-
get() {
|
|
12
|
-
return this;
|
|
13
|
-
},
|
|
14
|
-
configurable: true
|
|
15
|
-
});
|
|
16
|
-
// eslint-disable-next-line no-undef
|
|
17
|
-
globalObject = __global__;
|
|
18
|
-
delete Object.prototype.__global__;
|
|
19
|
-
}
|
|
20
|
-
globalObject.globalThis = globalObject;
|
package/src/build/graph_utils.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export const GRAPH = {
|
|
2
|
-
map: (graph, callback) => {
|
|
3
|
-
const array = [];
|
|
4
|
-
graph.urlInfoMap.forEach((urlInfo) => {
|
|
5
|
-
array.push(callback(urlInfo));
|
|
6
|
-
});
|
|
7
|
-
return array;
|
|
8
|
-
},
|
|
9
|
-
|
|
10
|
-
forEach: (graph, callback) => {
|
|
11
|
-
graph.urlInfoMap.forEach(callback);
|
|
12
|
-
},
|
|
13
|
-
|
|
14
|
-
filter: (graph, callback) => {
|
|
15
|
-
const urlInfos = [];
|
|
16
|
-
graph.urlInfoMap.forEach((urlInfo) => {
|
|
17
|
-
if (callback(urlInfo)) {
|
|
18
|
-
urlInfos.push(urlInfo);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
return urlInfos;
|
|
22
|
-
},
|
|
23
|
-
|
|
24
|
-
find: (graph, callback) => {
|
|
25
|
-
let found = null;
|
|
26
|
-
for (const urlInfo of graph.urlInfoMap.values()) {
|
|
27
|
-
if (callback(urlInfo)) {
|
|
28
|
-
found = urlInfo;
|
|
29
|
-
break;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
return found;
|
|
33
|
-
},
|
|
34
|
-
};
|