@atlaspack/core 2.38.3 → 2.38.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/CHANGELOG.md +22 -0
- package/dist/BundleGraph.js +4 -3
- package/dist/SymbolPropagation.js +8 -4
- package/lib/BundleGraph.js +6 -6
- package/lib/SymbolPropagation.js +8 -8
- package/package.json +15 -15
- package/src/BundleGraph.ts +5 -3
- package/src/SymbolPropagation.ts +14 -5
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# @atlaspack/core
|
|
2
2
|
|
|
3
|
+
## 2.38.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#1080](https://github.com/atlassian-labs/atlaspack/pull/1080) [`39b1fdf`](https://github.com/atlassian-labs/atlaspack/commit/39b1fdf59d317a9e862dceba0495dda9f1fda77c) Thanks [@mattcompiles](https://github.com/mattcompiles)! - Fix scope hoisting crash when a module has both `import * as ns from 'x'` and `export * from 'x'` for the same specifier. The wildcard re-export was overwriting the namespace import binding on the shared dependency, causing a ReferenceError in the bundled output. Gated behind `fixExportStarNamespaceOverwrite` feature flag.
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`39b1fdf`](https://github.com/atlassian-labs/atlaspack/commit/39b1fdf59d317a9e862dceba0495dda9f1fda77c)]:
|
|
10
|
+
- @atlaspack/feature-flags@2.31.2
|
|
11
|
+
- @atlaspack/rust@3.29.1
|
|
12
|
+
- @atlaspack/build-cache@2.13.16
|
|
13
|
+
- @atlaspack/cache@3.2.57
|
|
14
|
+
- @atlaspack/fs@2.15.57
|
|
15
|
+
- @atlaspack/graph@3.6.24
|
|
16
|
+
- @atlaspack/utils@3.4.4
|
|
17
|
+
- @atlaspack/logger@2.14.54
|
|
18
|
+
- @atlaspack/source-map@3.3.6
|
|
19
|
+
- @atlaspack/package-manager@2.14.62
|
|
20
|
+
- @atlaspack/workers@2.14.62
|
|
21
|
+
- @atlaspack/plugin@2.14.62
|
|
22
|
+
- @atlaspack/profiler@2.15.23
|
|
23
|
+
- @atlaspack/types@2.15.52
|
|
24
|
+
|
|
3
25
|
## 2.38.3
|
|
4
26
|
|
|
5
27
|
### Patch Changes
|
package/dist/BundleGraph.js
CHANGED
|
@@ -199,7 +199,8 @@ class BundleGraph {
|
|
|
199
199
|
// Don't retarget because this cannot be resolved without also changing the asset symbols
|
|
200
200
|
// (and the asset content itself).
|
|
201
201
|
[...targets].every(([, t]) => new Set([...t.values()]).size === t.size)) {
|
|
202
|
-
let isReexportAll = nodeValueSymbols.get('*')?.local === '*'
|
|
202
|
+
let isReexportAll = nodeValueSymbols.get('*')?.local === '*' ||
|
|
203
|
+
node.value.meta?.hasExportStar;
|
|
203
204
|
let reexportAllLoc = isReexportAll
|
|
204
205
|
? (0, nullthrows_1.default)(nodeValueSymbols.get('*')).loc
|
|
205
206
|
: undefined;
|
|
@@ -1565,7 +1566,7 @@ class BundleGraph {
|
|
|
1565
1566
|
// Default exports are excluded from wildcard exports.
|
|
1566
1567
|
// Wildcard reexports are never listed in the reexporting asset's symbols.
|
|
1567
1568
|
if (identifier == null &&
|
|
1568
|
-
depSymbols.get('*')?.local === '*' &&
|
|
1569
|
+
(depSymbols.get('*')?.local === '*' || dep.meta?.hasExportStar) &&
|
|
1569
1570
|
symbol !== 'default') {
|
|
1570
1571
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
1571
1572
|
if (!resolved) {
|
|
@@ -1694,7 +1695,7 @@ class BundleGraph {
|
|
|
1694
1695
|
let depSymbols = dep.symbols;
|
|
1695
1696
|
if (!depSymbols)
|
|
1696
1697
|
continue;
|
|
1697
|
-
if (depSymbols.get('*')?.local === '*') {
|
|
1698
|
+
if (depSymbols.get('*')?.local === '*' || dep.meta?.hasExportStar) {
|
|
1698
1699
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
1699
1700
|
if (!resolved)
|
|
1700
1701
|
continue;
|
|
@@ -49,7 +49,8 @@ function propagateSymbols({ options, assetGraph, changedAssetsPropagation, asset
|
|
|
49
49
|
set.add(s);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
-
let hasNamespaceOutgoingDeps = outgoingDeps.some((d) => d.value.symbols?.get('*')?.local === '*'
|
|
52
|
+
let hasNamespaceOutgoingDeps = outgoingDeps.some((d) => d.value.symbols?.get('*')?.local === '*' ||
|
|
53
|
+
d.value.meta?.hasExportStar);
|
|
53
54
|
// 1) Determine what the incomingDeps requests from the asset
|
|
54
55
|
// ----------------------------------------------------------
|
|
55
56
|
let isEntry = false;
|
|
@@ -124,7 +125,8 @@ function propagateSymbols({ options, assetGraph, changedAssetsPropagation, asset
|
|
|
124
125
|
let depSymbols = dep.value.symbols;
|
|
125
126
|
if (!depSymbols)
|
|
126
127
|
continue;
|
|
127
|
-
if (depSymbols.get('*')?.local === '*'
|
|
128
|
+
if (depSymbols.get('*')?.local === '*' ||
|
|
129
|
+
dep.value.meta?.hasExportStar) {
|
|
128
130
|
if (addAll) {
|
|
129
131
|
depUsedSymbolsDown.add('*');
|
|
130
132
|
}
|
|
@@ -220,7 +222,8 @@ function propagateSymbols({ options, assetGraph, changedAssetsPropagation, asset
|
|
|
220
222
|
if (isExcluded) {
|
|
221
223
|
outgoingDep.usedSymbolsDown.forEach((_, s) => outgoingDep.usedSymbolsUp.set(s, null));
|
|
222
224
|
}
|
|
223
|
-
if (outgoingDepSymbols.get('*')?.local === '*'
|
|
225
|
+
if (outgoingDepSymbols.get('*')?.local === '*' ||
|
|
226
|
+
outgoingDep.value.meta?.hasExportStar) {
|
|
224
227
|
outgoingDep.usedSymbolsUp.forEach((sResolved, s) => {
|
|
225
228
|
if (s === 'default') {
|
|
226
229
|
return;
|
|
@@ -289,7 +292,8 @@ function propagateSymbols({ options, assetGraph, changedAssetsPropagation, asset
|
|
|
289
292
|
let incomingDepSymbols = incomingDep.value.symbols;
|
|
290
293
|
if (!incomingDepSymbols)
|
|
291
294
|
continue;
|
|
292
|
-
let hasNamespaceReexport = incomingDepSymbols.get('*')?.local === '*'
|
|
295
|
+
let hasNamespaceReexport = incomingDepSymbols.get('*')?.local === '*' ||
|
|
296
|
+
incomingDep.value.meta?.hasExportStar;
|
|
293
297
|
for (let s of incomingDep.usedSymbolsDown) {
|
|
294
298
|
if (assetSymbols == null || // Assume everything could be provided if symbols are cleared
|
|
295
299
|
assetNode.value.bundleBehavior === types_1.BundleBehavior.isolated ||
|
package/lib/BundleGraph.js
CHANGED
|
@@ -257,8 +257,8 @@ class BundleGraph {
|
|
|
257
257
|
// Don't retarget because this cannot be resolved without also changing the asset symbols
|
|
258
258
|
// (and the asset content itself).
|
|
259
259
|
[...targets].every(([, t]) => new Set([...t.values()]).size === t.size)) {
|
|
260
|
-
var _nodeValueSymbols$get;
|
|
261
|
-
let isReexportAll = ((_nodeValueSymbols$get = nodeValueSymbols.get('*')) === null || _nodeValueSymbols$get === void 0 ? void 0 : _nodeValueSymbols$get.local) === '*';
|
|
260
|
+
var _nodeValueSymbols$get, _node$value$meta;
|
|
261
|
+
let isReexportAll = ((_nodeValueSymbols$get = nodeValueSymbols.get('*')) === null || _nodeValueSymbols$get === void 0 ? void 0 : _nodeValueSymbols$get.local) === '*' || ((_node$value$meta = node.value.meta) === null || _node$value$meta === void 0 ? void 0 : _node$value$meta.hasExportStar);
|
|
262
262
|
let reexportAllLoc = isReexportAll ? (0, _nullthrows().default)(nodeValueSymbols.get('*')).loc : undefined;
|
|
263
263
|
|
|
264
264
|
// TODO adjust sourceAssetIdNode.value.dependencies ?
|
|
@@ -1503,7 +1503,7 @@ class BundleGraph {
|
|
|
1503
1503
|
let deps = this.getDependencies(asset).reverse();
|
|
1504
1504
|
let potentialResults = [];
|
|
1505
1505
|
for (let dep of deps) {
|
|
1506
|
-
var _depSymbols$get;
|
|
1506
|
+
var _depSymbols$get, _dep$meta2;
|
|
1507
1507
|
let depSymbols = dep.symbols;
|
|
1508
1508
|
if (!depSymbols) {
|
|
1509
1509
|
nonStaticDependency = true;
|
|
@@ -1555,7 +1555,7 @@ class BundleGraph {
|
|
|
1555
1555
|
// If this module exports wildcards, resolve the original module.
|
|
1556
1556
|
// Default exports are excluded from wildcard exports.
|
|
1557
1557
|
// Wildcard reexports are never listed in the reexporting asset's symbols.
|
|
1558
|
-
if (identifier == null && ((_depSymbols$get = depSymbols.get('*')) === null || _depSymbols$get === void 0 ? void 0 : _depSymbols$get.local) === '*' && symbol !== 'default') {
|
|
1558
|
+
if (identifier == null && (((_depSymbols$get = depSymbols.get('*')) === null || _depSymbols$get === void 0 ? void 0 : _depSymbols$get.local) === '*' || (_dep$meta2 = dep.meta) !== null && _dep$meta2 !== void 0 && _dep$meta2.hasExportStar) && symbol !== 'default') {
|
|
1559
1559
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
1560
1560
|
if (!resolved) {
|
|
1561
1561
|
continue;
|
|
@@ -1681,10 +1681,10 @@ class BundleGraph {
|
|
|
1681
1681
|
}
|
|
1682
1682
|
let deps = this.getDependencies(asset);
|
|
1683
1683
|
for (let dep of deps) {
|
|
1684
|
-
var _depSymbols$get2;
|
|
1684
|
+
var _depSymbols$get2, _dep$meta3;
|
|
1685
1685
|
let depSymbols = dep.symbols;
|
|
1686
1686
|
if (!depSymbols) continue;
|
|
1687
|
-
if (((_depSymbols$get2 = depSymbols.get('*')) === null || _depSymbols$get2 === void 0 ? void 0 : _depSymbols$get2.local) === '*') {
|
|
1687
|
+
if (((_depSymbols$get2 = depSymbols.get('*')) === null || _depSymbols$get2 === void 0 ? void 0 : _depSymbols$get2.local) === '*' || (_dep$meta3 = dep.meta) !== null && _dep$meta3 !== void 0 && _dep$meta3.hasExportStar) {
|
|
1688
1688
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
1689
1689
|
if (!resolved) continue;
|
|
1690
1690
|
let exported = this.getExportedSymbols(resolved, boundary).filter(s => s.exportSymbol !== 'default').map(s => s.exportSymbol !== '*' ? {
|
package/lib/SymbolPropagation.js
CHANGED
|
@@ -94,8 +94,8 @@ function propagateSymbols({
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
let hasNamespaceOutgoingDeps = outgoingDeps.some(d => {
|
|
97
|
-
var _d$value$symbols;
|
|
98
|
-
return ((_d$value$symbols = d.value.symbols) === null || _d$value$symbols === void 0 || (_d$value$symbols = _d$value$symbols.get('*')) === null || _d$value$symbols === void 0 ? void 0 : _d$value$symbols.local) === '*';
|
|
97
|
+
var _d$value$symbols, _d$value$meta;
|
|
98
|
+
return ((_d$value$symbols = d.value.symbols) === null || _d$value$symbols === void 0 || (_d$value$symbols = _d$value$symbols.get('*')) === null || _d$value$symbols === void 0 ? void 0 : _d$value$symbols.local) === '*' || ((_d$value$meta = d.value.meta) === null || _d$value$meta === void 0 ? void 0 : _d$value$meta.hasExportStar);
|
|
99
99
|
});
|
|
100
100
|
|
|
101
101
|
// 1) Determine what the incomingDeps requests from the asset
|
|
@@ -168,10 +168,10 @@ function propagateSymbols({
|
|
|
168
168
|
// lib/index.js: `export * from "./foo.js"; export * from "./bar.js";`
|
|
169
169
|
// lib/foo.js: `import { data } from "./bar.js"; export const foo = data + " esm2";`
|
|
170
170
|
assetNode.usedSymbols.size > 0 || namespaceReexportedSymbols.size > 0) {
|
|
171
|
-
var _depSymbols$get;
|
|
171
|
+
var _depSymbols$get, _dep$value$meta;
|
|
172
172
|
let depSymbols = dep.value.symbols;
|
|
173
173
|
if (!depSymbols) continue;
|
|
174
|
-
if (((_depSymbols$get = depSymbols.get('*')) === null || _depSymbols$get === void 0 ? void 0 : _depSymbols$get.local) === '*') {
|
|
174
|
+
if (((_depSymbols$get = depSymbols.get('*')) === null || _depSymbols$get === void 0 ? void 0 : _depSymbols$get.local) === '*' || (_dep$value$meta = dep.value.meta) !== null && _dep$value$meta !== void 0 && _dep$value$meta.hasExportStar) {
|
|
175
175
|
if (addAll) {
|
|
176
176
|
depUsedSymbolsDown.add('*');
|
|
177
177
|
} else {
|
|
@@ -258,7 +258,7 @@ function propagateSymbols({
|
|
|
258
258
|
// analyzable exports
|
|
259
259
|
let reexportedSymbolsSource = new Map();
|
|
260
260
|
for (let outgoingDep of outgoingDeps) {
|
|
261
|
-
var _outgoingDepSymbols$g;
|
|
261
|
+
var _outgoingDepSymbols$g, _outgoingDep$value$me;
|
|
262
262
|
let outgoingDepSymbols = outgoingDep.value.symbols;
|
|
263
263
|
if (!outgoingDepSymbols) continue;
|
|
264
264
|
let isExcluded = assetGraph.getNodeIdsConnectedFrom(assetGraph.getNodeIdByContentKey(outgoingDep.id)).length === 0;
|
|
@@ -266,7 +266,7 @@ function propagateSymbols({
|
|
|
266
266
|
if (isExcluded) {
|
|
267
267
|
outgoingDep.usedSymbolsDown.forEach((_, s) => outgoingDep.usedSymbolsUp.set(s, null));
|
|
268
268
|
}
|
|
269
|
-
if (((_outgoingDepSymbols$g = outgoingDepSymbols.get('*')) === null || _outgoingDepSymbols$g === void 0 ? void 0 : _outgoingDepSymbols$g.local) === '*') {
|
|
269
|
+
if (((_outgoingDepSymbols$g = outgoingDepSymbols.get('*')) === null || _outgoingDepSymbols$g === void 0 ? void 0 : _outgoingDepSymbols$g.local) === '*' || (_outgoingDep$value$me = outgoingDep.value.meta) !== null && _outgoingDep$value$me !== void 0 && _outgoingDep$value$me.hasExportStar) {
|
|
270
270
|
outgoingDep.usedSymbolsUp.forEach((sResolved, s) => {
|
|
271
271
|
if (s === 'default') {
|
|
272
272
|
return;
|
|
@@ -334,12 +334,12 @@ function propagateSymbols({
|
|
|
334
334
|
current.set(s, value);
|
|
335
335
|
}
|
|
336
336
|
for (let incomingDep of incomingDeps) {
|
|
337
|
-
var _incomingDepSymbols$g;
|
|
337
|
+
var _incomingDepSymbols$g, _incomingDep$value$me;
|
|
338
338
|
let incomingDepUsedSymbolsUpOld = incomingDep.usedSymbolsUp;
|
|
339
339
|
incomingDep.usedSymbolsUp = new Map();
|
|
340
340
|
let incomingDepSymbols = incomingDep.value.symbols;
|
|
341
341
|
if (!incomingDepSymbols) continue;
|
|
342
|
-
let hasNamespaceReexport = ((_incomingDepSymbols$g = incomingDepSymbols.get('*')) === null || _incomingDepSymbols$g === void 0 ? void 0 : _incomingDepSymbols$g.local) === '*';
|
|
342
|
+
let hasNamespaceReexport = ((_incomingDepSymbols$g = incomingDepSymbols.get('*')) === null || _incomingDepSymbols$g === void 0 ? void 0 : _incomingDepSymbols$g.local) === '*' || ((_incomingDep$value$me = incomingDep.value.meta) === null || _incomingDep$value$me === void 0 ? void 0 : _incomingDep$value$me.hasExportStar);
|
|
343
343
|
for (let s of incomingDep.usedSymbolsDown) {
|
|
344
344
|
if (assetSymbols == null ||
|
|
345
345
|
// Assume everything could be provided if symbols are cleared
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaspack/core",
|
|
3
|
-
"version": "2.38.
|
|
3
|
+
"version": "2.38.4",
|
|
4
4
|
"license": "(MIT OR Apache-2.0)",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -23,22 +23,22 @@
|
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@mischnic/json-sourcemap": "^0.1.0",
|
|
26
|
-
"@atlaspack/build-cache": "2.13.
|
|
27
|
-
"@atlaspack/cache": "3.2.
|
|
26
|
+
"@atlaspack/build-cache": "2.13.16",
|
|
27
|
+
"@atlaspack/cache": "3.2.57",
|
|
28
28
|
"@atlaspack/diagnostic": "2.14.4",
|
|
29
29
|
"@atlaspack/events": "2.14.4",
|
|
30
|
-
"@atlaspack/feature-flags": "2.31.
|
|
31
|
-
"@atlaspack/fs": "2.15.
|
|
32
|
-
"@atlaspack/graph": "3.6.
|
|
33
|
-
"@atlaspack/logger": "2.14.
|
|
34
|
-
"@atlaspack/package-manager": "2.14.
|
|
35
|
-
"@atlaspack/plugin": "2.14.
|
|
36
|
-
"@atlaspack/profiler": "2.15.
|
|
37
|
-
"@atlaspack/rust": "3.29.
|
|
38
|
-
"@atlaspack/types": "2.15.
|
|
39
|
-
"@atlaspack/utils": "3.4.
|
|
40
|
-
"@atlaspack/workers": "2.14.
|
|
41
|
-
"@atlaspack/source-map": "3.3.
|
|
30
|
+
"@atlaspack/feature-flags": "2.31.2",
|
|
31
|
+
"@atlaspack/fs": "2.15.57",
|
|
32
|
+
"@atlaspack/graph": "3.6.24",
|
|
33
|
+
"@atlaspack/logger": "2.14.54",
|
|
34
|
+
"@atlaspack/package-manager": "2.14.62",
|
|
35
|
+
"@atlaspack/plugin": "2.14.62",
|
|
36
|
+
"@atlaspack/profiler": "2.15.23",
|
|
37
|
+
"@atlaspack/rust": "3.29.1",
|
|
38
|
+
"@atlaspack/types": "2.15.52",
|
|
39
|
+
"@atlaspack/utils": "3.4.4",
|
|
40
|
+
"@atlaspack/workers": "2.14.62",
|
|
41
|
+
"@atlaspack/source-map": "3.3.6",
|
|
42
42
|
"base-x": "^3.0.8",
|
|
43
43
|
"browserslist": "^4.6.6",
|
|
44
44
|
"clone": "^2.1.1",
|
package/src/BundleGraph.ts
CHANGED
|
@@ -335,7 +335,9 @@ export default class BundleGraph {
|
|
|
335
335
|
([, t]: [any, any]) => new Set([...t.values()]).size === t.size,
|
|
336
336
|
)
|
|
337
337
|
) {
|
|
338
|
-
let isReexportAll =
|
|
338
|
+
let isReexportAll =
|
|
339
|
+
nodeValueSymbols.get('*')?.local === '*' ||
|
|
340
|
+
node.value.meta?.hasExportStar;
|
|
339
341
|
let reexportAllLoc = isReexportAll
|
|
340
342
|
? nullthrows(nodeValueSymbols.get('*')).loc
|
|
341
343
|
: undefined;
|
|
@@ -2317,7 +2319,7 @@ export default class BundleGraph {
|
|
|
2317
2319
|
// Wildcard reexports are never listed in the reexporting asset's symbols.
|
|
2318
2320
|
if (
|
|
2319
2321
|
identifier == null &&
|
|
2320
|
-
depSymbols.get('*')?.local === '*' &&
|
|
2322
|
+
(depSymbols.get('*')?.local === '*' || dep.meta?.hasExportStar) &&
|
|
2321
2323
|
symbol !== 'default'
|
|
2322
2324
|
) {
|
|
2323
2325
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
@@ -2455,7 +2457,7 @@ export default class BundleGraph {
|
|
|
2455
2457
|
let depSymbols = dep.symbols;
|
|
2456
2458
|
if (!depSymbols) continue;
|
|
2457
2459
|
|
|
2458
|
-
if (depSymbols.get('*')?.local === '*') {
|
|
2460
|
+
if (depSymbols.get('*')?.local === '*' || dep.meta?.hasExportStar) {
|
|
2459
2461
|
let resolved = this.getResolvedAsset(dep, boundary);
|
|
2460
2462
|
if (!resolved) continue;
|
|
2461
2463
|
let exported = this.getExportedSymbols(resolved, boundary)
|
package/src/SymbolPropagation.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type {ContentKey, NodeId} from '@atlaspack/graph';
|
|
2
2
|
import type {Meta, Symbol} from '@atlaspack/types';
|
|
3
3
|
import type {Diagnostic} from '@atlaspack/diagnostic';
|
|
4
|
-
import {getFeatureFlag} from '@atlaspack/feature-flags';
|
|
5
4
|
import type {
|
|
6
5
|
AssetNode,
|
|
7
6
|
DependencyNode,
|
|
@@ -95,7 +94,9 @@ export function propagateSymbols({
|
|
|
95
94
|
}
|
|
96
95
|
}
|
|
97
96
|
let hasNamespaceOutgoingDeps = outgoingDeps.some(
|
|
98
|
-
(d) =>
|
|
97
|
+
(d) =>
|
|
98
|
+
d.value.symbols?.get('*')?.local === '*' ||
|
|
99
|
+
d.value.meta?.hasExportStar,
|
|
99
100
|
);
|
|
100
101
|
|
|
101
102
|
// 1) Determine what the incomingDeps requests from the asset
|
|
@@ -192,7 +193,10 @@ export function propagateSymbols({
|
|
|
192
193
|
let depSymbols = dep.value.symbols;
|
|
193
194
|
if (!depSymbols) continue;
|
|
194
195
|
|
|
195
|
-
if (
|
|
196
|
+
if (
|
|
197
|
+
depSymbols.get('*')?.local === '*' ||
|
|
198
|
+
dep.value.meta?.hasExportStar
|
|
199
|
+
) {
|
|
196
200
|
if (addAll) {
|
|
197
201
|
depUsedSymbolsDown.add('*');
|
|
198
202
|
} else {
|
|
@@ -335,7 +339,10 @@ export function propagateSymbols({
|
|
|
335
339
|
);
|
|
336
340
|
}
|
|
337
341
|
|
|
338
|
-
if (
|
|
342
|
+
if (
|
|
343
|
+
outgoingDepSymbols.get('*')?.local === '*' ||
|
|
344
|
+
outgoingDep.value.meta?.hasExportStar
|
|
345
|
+
) {
|
|
339
346
|
outgoingDep.usedSymbolsUp.forEach((sResolved, s) => {
|
|
340
347
|
if (s === 'default') {
|
|
341
348
|
return;
|
|
@@ -453,7 +460,9 @@ export function propagateSymbols({
|
|
|
453
460
|
let incomingDepSymbols = incomingDep.value.symbols;
|
|
454
461
|
if (!incomingDepSymbols) continue;
|
|
455
462
|
|
|
456
|
-
let hasNamespaceReexport =
|
|
463
|
+
let hasNamespaceReexport =
|
|
464
|
+
incomingDepSymbols.get('*')?.local === '*' ||
|
|
465
|
+
incomingDep.value.meta?.hasExportStar;
|
|
457
466
|
for (let s of incomingDep.usedSymbolsDown) {
|
|
458
467
|
if (
|
|
459
468
|
assetSymbols == null || // Assume everything could be provided if symbols are cleared
|