one 1.25.16 → 1.26.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/cjs/native-transforms.cjs +28 -0
- package/dist/cjs/native-transforms.native.js +31 -0
- package/dist/cjs/native-transforms.native.js.map +1 -0
- package/dist/cjs/router/useViteRoutes.cjs +3 -2
- package/dist/cjs/router/useViteRoutes.native.js +3 -2
- package/dist/cjs/router/useViteRoutes.native.js.map +1 -1
- package/dist/cjs/router/useViteRoutes.test.cjs +101 -1
- package/dist/cjs/router/useViteRoutes.test.native.js +109 -1
- package/dist/cjs/router/useViteRoutes.test.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.cjs +45 -44
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +64 -39
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vite/one.cjs +10 -2
- package/dist/cjs/vite/one.native.js +13 -4
- package/dist/cjs/vite/one.native.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.cjs +597 -92
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js +1358 -113
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.test.cjs +185 -0
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.test.native.js +185 -0
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/useDomPlugin.cjs +14 -37
- package/dist/cjs/vite/plugins/useDomPlugin.native.js +14 -36
- package/dist/cjs/vite/plugins/useDomPlugin.native.js.map +1 -1
- package/dist/esm/native-transforms.mjs +3 -0
- package/dist/esm/native-transforms.mjs.map +1 -0
- package/dist/esm/native-transforms.native.js +3 -0
- package/dist/esm/native-transforms.native.js.map +1 -0
- package/dist/esm/router/useViteRoutes.mjs +3 -2
- package/dist/esm/router/useViteRoutes.mjs.map +1 -1
- package/dist/esm/router/useViteRoutes.native.js +3 -2
- package/dist/esm/router/useViteRoutes.native.js.map +1 -1
- package/dist/esm/router/useViteRoutes.test.mjs +77 -1
- package/dist/esm/router/useViteRoutes.test.mjs.map +1 -1
- package/dist/esm/router/useViteRoutes.test.native.js +85 -1
- package/dist/esm/router/useViteRoutes.test.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs +45 -44
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js +64 -39
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/esm/vite/one.mjs +10 -2
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +13 -4
- package/dist/esm/vite/one.native.js.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs +597 -92
- package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js +1358 -113
- package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.test.mjs +185 -0
- package/dist/esm/vite/plugins/clientTreeShakePlugin.test.mjs.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.test.native.js +185 -0
- package/dist/esm/vite/plugins/clientTreeShakePlugin.test.native.js.map +1 -1
- package/dist/esm/vite/plugins/useDomPlugin.mjs +13 -25
- package/dist/esm/vite/plugins/useDomPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/useDomPlugin.native.js +14 -25
- package/dist/esm/vite/plugins/useDomPlugin.native.js.map +1 -1
- package/package.json +15 -10
- package/src/createApp.tsx +0 -1
- package/src/headless.tsx +0 -1
- package/src/native-transforms.ts +11 -0
- package/src/router/useViteRoutes.test.ts +91 -0
- package/src/router/useViteRoutes.tsx +7 -4
- package/src/vercel/build/generate/createApiServerlessFunction.ts +65 -112
- package/src/vite/one.ts +22 -2
- package/src/vite/plugins/clientTreeShakePlugin.test.ts +201 -0
- package/src/vite/plugins/clientTreeShakePlugin.ts +732 -152
- package/src/vite/plugins/useDomPlugin.ts +20 -32
- package/src/vite/types.ts +60 -5
- package/types/native-transforms.d.ts +11 -0
- package/types/native-transforms.d.ts.map +1 -0
- package/types/router/useViteRoutes.d.ts.map +1 -1
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts.map +1 -1
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/clientTreeShakePlugin.d.ts +1 -9
- package/types/vite/plugins/clientTreeShakePlugin.d.ts.map +1 -1
- package/types/vite/plugins/useDomPlugin.d.ts.map +1 -1
- package/types/vite/types.d.ts +57 -5
- package/types/vite/types.d.ts.map +1 -1
|
@@ -40,10 +40,8 @@ __export(clientTreeShakePlugin_exports, {
|
|
|
40
40
|
});
|
|
41
41
|
module.exports = __toCommonJS(clientTreeShakePlugin_exports);
|
|
42
42
|
var import_path = require("path");
|
|
43
|
-
var
|
|
44
|
-
var
|
|
45
|
-
var import_traverse = __toESM(require("@babel/traverse"), 1);
|
|
46
|
-
var import_babel_dead_code_elimination = require("babel-dead-code-elimination");
|
|
43
|
+
var import_magic_string = __toESM(require("magic-string"), 1);
|
|
44
|
+
var import_oxc_parser = require("oxc-parser");
|
|
47
45
|
var import_constants = require("../constants.native.js");
|
|
48
46
|
function _instanceof(left, right) {
|
|
49
47
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
@@ -52,53 +50,10 @@ function _instanceof(left, right) {
|
|
|
52
50
|
return left instanceof right;
|
|
53
51
|
}
|
|
54
52
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
traverse(ast, {
|
|
60
|
-
ImportDeclaration(path) {
|
|
61
|
-
if (path.node.importKind === "type") {
|
|
62
|
-
typeImports.push(path.node);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
return typeImports;
|
|
67
|
-
}
|
|
68
|
-
function restoreTypeImports(ast, typeImports) {
|
|
69
|
-
if (typeImports.length === 0) return;
|
|
70
|
-
var existingSources = /* @__PURE__ */new Set();
|
|
71
|
-
traverse(ast, {
|
|
72
|
-
ImportDeclaration(path) {
|
|
73
|
-
if (path.node.importKind === "type") {
|
|
74
|
-
existingSources.add(path.node.source.value);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
var _iteratorNormalCompletion = true,
|
|
79
|
-
_didIteratorError = false,
|
|
80
|
-
_iteratorError = void 0;
|
|
81
|
-
try {
|
|
82
|
-
for (var _iterator = typeImports[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
83
|
-
var typeImport = _step.value;
|
|
84
|
-
if (!existingSources.has(typeImport.source.value)) {
|
|
85
|
-
ast.program.body.unshift(typeImport);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
} catch (err) {
|
|
89
|
-
_didIteratorError = true;
|
|
90
|
-
_iteratorError = err;
|
|
91
|
-
} finally {
|
|
92
|
-
try {
|
|
93
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
94
|
-
_iterator.return();
|
|
95
|
-
}
|
|
96
|
-
} finally {
|
|
97
|
-
if (_didIteratorError) {
|
|
98
|
-
throw _iteratorError;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
53
|
+
function _type_of(obj) {
|
|
54
|
+
"@swc/helpers - typeof";
|
|
55
|
+
|
|
56
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
102
57
|
}
|
|
103
58
|
var clientTreeShakePlugin = function (opts) {
|
|
104
59
|
var _ref, _ref1;
|
|
@@ -131,96 +86,1386 @@ var clientTreeShakePlugin = function (opts) {
|
|
|
131
86
|
}
|
|
132
87
|
};
|
|
133
88
|
};
|
|
89
|
+
function extractPatternBindings(node, names) {
|
|
90
|
+
if (!node) return;
|
|
91
|
+
switch (node.type) {
|
|
92
|
+
case "Identifier":
|
|
93
|
+
names.add(node.name);
|
|
94
|
+
break;
|
|
95
|
+
case "ObjectPattern":
|
|
96
|
+
var _iteratorNormalCompletion = true,
|
|
97
|
+
_didIteratorError = false,
|
|
98
|
+
_iteratorError = void 0;
|
|
99
|
+
try {
|
|
100
|
+
for (var _iterator = node.properties[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
101
|
+
var prop = _step.value;
|
|
102
|
+
if (prop.type === "Property") {
|
|
103
|
+
extractPatternBindings(prop.value, names);
|
|
104
|
+
} else if (prop.type === "RestElement") {
|
|
105
|
+
extractPatternBindings(prop.argument, names);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
} catch (err) {
|
|
109
|
+
_didIteratorError = true;
|
|
110
|
+
_iteratorError = err;
|
|
111
|
+
} finally {
|
|
112
|
+
try {
|
|
113
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
114
|
+
_iterator.return();
|
|
115
|
+
}
|
|
116
|
+
} finally {
|
|
117
|
+
if (_didIteratorError) {
|
|
118
|
+
throw _iteratorError;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
break;
|
|
123
|
+
case "ArrayPattern":
|
|
124
|
+
var _iteratorNormalCompletion1 = true,
|
|
125
|
+
_didIteratorError1 = false,
|
|
126
|
+
_iteratorError1 = void 0;
|
|
127
|
+
try {
|
|
128
|
+
for (var _iterator1 = node.elements[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
129
|
+
var element = _step1.value;
|
|
130
|
+
if (element) {
|
|
131
|
+
extractPatternBindings(element, names);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
} catch (err) {
|
|
135
|
+
_didIteratorError1 = true;
|
|
136
|
+
_iteratorError1 = err;
|
|
137
|
+
} finally {
|
|
138
|
+
try {
|
|
139
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
140
|
+
_iterator1.return();
|
|
141
|
+
}
|
|
142
|
+
} finally {
|
|
143
|
+
if (_didIteratorError1) {
|
|
144
|
+
throw _iteratorError1;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
break;
|
|
149
|
+
case "AssignmentPattern":
|
|
150
|
+
extractPatternBindings(node.left, names);
|
|
151
|
+
break;
|
|
152
|
+
case "RestElement":
|
|
153
|
+
extractPatternBindings(node.argument, names);
|
|
154
|
+
break;
|
|
155
|
+
case "TSParameterProperty":
|
|
156
|
+
extractPatternBindings(node.parameter, names);
|
|
157
|
+
break;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
function getReferencedIdentifiers(rootNode, candidateNames) {
|
|
161
|
+
var referenced = /* @__PURE__ */new Set();
|
|
162
|
+
var scopeStack = [];
|
|
163
|
+
function isShadowed(name) {
|
|
164
|
+
for (var i = scopeStack.length - 1; i >= 0; i--) {
|
|
165
|
+
if (scopeStack[i].has(name)) return true;
|
|
166
|
+
}
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
function checkIdentifier(name) {
|
|
170
|
+
if (!isShadowed(name) && candidateNames.has(name)) {
|
|
171
|
+
referenced.add(name);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
function walk(node) {
|
|
175
|
+
if (!node || (typeof node === "undefined" ? "undefined" : _type_of(node)) !== "object") return;
|
|
176
|
+
if (node.type === "TSTypeAnnotation" || node.type === "TSTypeReference" || node.type === "TSTypeAliasDeclaration" || node.type === "TSInterfaceDeclaration" || node.type === "TSTypeParameterDeclaration" || node.type === "TSTypeParameterInstantiation") {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
if (node.type === "TSAsExpression" || node.type === "TSTypeAssertion" || node.type === "TSSatisfiesExpression" || node.type === "TSNonNullExpression") {
|
|
180
|
+
walk(node.expression);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
function walkPatternExpressions(pat) {
|
|
184
|
+
if (!pat || (typeof pat === "undefined" ? "undefined" : _type_of(pat)) !== "object") return;
|
|
185
|
+
switch (pat.type) {
|
|
186
|
+
case "AssignmentPattern":
|
|
187
|
+
walk(pat.right);
|
|
188
|
+
walkPatternExpressions(pat.left);
|
|
189
|
+
break;
|
|
190
|
+
case "ObjectPattern":
|
|
191
|
+
var _iteratorNormalCompletion8 = true,
|
|
192
|
+
_didIteratorError8 = false,
|
|
193
|
+
_iteratorError8 = void 0;
|
|
194
|
+
try {
|
|
195
|
+
for (var _iterator8 = pat.properties[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
|
|
196
|
+
var prop = _step8.value;
|
|
197
|
+
if (prop.type === "Property") {
|
|
198
|
+
if (prop.computed) {
|
|
199
|
+
walk(prop.key);
|
|
200
|
+
}
|
|
201
|
+
walkPatternExpressions(prop.value);
|
|
202
|
+
} else if (prop.type === "RestElement") {
|
|
203
|
+
walkPatternExpressions(prop.argument);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
} catch (err) {
|
|
207
|
+
_didIteratorError8 = true;
|
|
208
|
+
_iteratorError8 = err;
|
|
209
|
+
} finally {
|
|
210
|
+
try {
|
|
211
|
+
if (!_iteratorNormalCompletion8 && _iterator8.return != null) {
|
|
212
|
+
_iterator8.return();
|
|
213
|
+
}
|
|
214
|
+
} finally {
|
|
215
|
+
if (_didIteratorError8) {
|
|
216
|
+
throw _iteratorError8;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
break;
|
|
221
|
+
case "ArrayPattern":
|
|
222
|
+
var _iteratorNormalCompletion12 = true,
|
|
223
|
+
_didIteratorError12 = false,
|
|
224
|
+
_iteratorError12 = void 0;
|
|
225
|
+
try {
|
|
226
|
+
for (var _iterator12 = pat.elements[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
227
|
+
var element = _step12.value;
|
|
228
|
+
if (element) {
|
|
229
|
+
walkPatternExpressions(element);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
} catch (err) {
|
|
233
|
+
_didIteratorError12 = true;
|
|
234
|
+
_iteratorError12 = err;
|
|
235
|
+
} finally {
|
|
236
|
+
try {
|
|
237
|
+
if (!_iteratorNormalCompletion12 && _iterator12.return != null) {
|
|
238
|
+
_iterator12.return();
|
|
239
|
+
}
|
|
240
|
+
} finally {
|
|
241
|
+
if (_didIteratorError12) {
|
|
242
|
+
throw _iteratorError12;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
break;
|
|
247
|
+
case "RestElement":
|
|
248
|
+
walkPatternExpressions(pat.argument);
|
|
249
|
+
break;
|
|
250
|
+
case "TSParameterProperty":
|
|
251
|
+
walkPatternExpressions(pat.parameter);
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
if (node.type === "FunctionDeclaration" || node.type === "FunctionExpression" || node.type === "ArrowFunctionExpression") {
|
|
256
|
+
let addVars2 = function (n) {
|
|
257
|
+
if (!n || (typeof n === "undefined" ? "undefined" : _type_of(n)) !== "object") return;
|
|
258
|
+
if (n.type === "FunctionDeclaration" || n.type === "FunctionExpression" || n.type === "ArrowFunctionExpression") {
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
if (n.type === "VariableDeclaration" && n.kind === "var") {
|
|
262
|
+
var _iteratorNormalCompletion8 = true,
|
|
263
|
+
_didIteratorError8 = false,
|
|
264
|
+
_iteratorError8 = void 0;
|
|
265
|
+
try {
|
|
266
|
+
for (var _iterator8 = n.declarations[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
|
|
267
|
+
var d = _step8.value;
|
|
268
|
+
extractPatternBindings(d.id, scope);
|
|
269
|
+
}
|
|
270
|
+
} catch (err) {
|
|
271
|
+
_didIteratorError8 = true;
|
|
272
|
+
_iteratorError8 = err;
|
|
273
|
+
} finally {
|
|
274
|
+
try {
|
|
275
|
+
if (!_iteratorNormalCompletion8 && _iterator8.return != null) {
|
|
276
|
+
_iterator8.return();
|
|
277
|
+
}
|
|
278
|
+
} finally {
|
|
279
|
+
if (_didIteratorError8) {
|
|
280
|
+
throw _iteratorError8;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
var _iteratorNormalCompletion12 = true,
|
|
286
|
+
_didIteratorError12 = false,
|
|
287
|
+
_iteratorError12 = void 0;
|
|
288
|
+
try {
|
|
289
|
+
for (var _iterator12 = Object.keys(n)[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
290
|
+
var k = _step12.value;
|
|
291
|
+
if (k === "parent") continue;
|
|
292
|
+
var val = n[k];
|
|
293
|
+
if (Array.isArray(val)) {
|
|
294
|
+
var _iteratorNormalCompletion22 = true,
|
|
295
|
+
_didIteratorError22 = false,
|
|
296
|
+
_iteratorError22 = void 0;
|
|
297
|
+
try {
|
|
298
|
+
for (var _iterator22 = val[Symbol.iterator](), _step22; !(_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done); _iteratorNormalCompletion22 = true) {
|
|
299
|
+
var item2 = _step22.value;
|
|
300
|
+
addVars2(item2);
|
|
301
|
+
}
|
|
302
|
+
} catch (err) {
|
|
303
|
+
_didIteratorError22 = true;
|
|
304
|
+
_iteratorError22 = err;
|
|
305
|
+
} finally {
|
|
306
|
+
try {
|
|
307
|
+
if (!_iteratorNormalCompletion22 && _iterator22.return != null) {
|
|
308
|
+
_iterator22.return();
|
|
309
|
+
}
|
|
310
|
+
} finally {
|
|
311
|
+
if (_didIteratorError22) {
|
|
312
|
+
throw _iteratorError22;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
} else if (val && (typeof val === "undefined" ? "undefined" : _type_of(val)) === "object") {
|
|
317
|
+
addVars2(val);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
} catch (err) {
|
|
321
|
+
_didIteratorError12 = true;
|
|
322
|
+
_iteratorError12 = err;
|
|
323
|
+
} finally {
|
|
324
|
+
try {
|
|
325
|
+
if (!_iteratorNormalCompletion12 && _iterator12.return != null) {
|
|
326
|
+
_iterator12.return();
|
|
327
|
+
}
|
|
328
|
+
} finally {
|
|
329
|
+
if (_didIteratorError12) {
|
|
330
|
+
throw _iteratorError12;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
var addVars = addVars2;
|
|
336
|
+
var scope = /* @__PURE__ */new Set();
|
|
337
|
+
if (node.type === "FunctionExpression" && node.id) {
|
|
338
|
+
scope.add(node.id.name);
|
|
339
|
+
}
|
|
340
|
+
if (node.params) {
|
|
341
|
+
var _iteratorNormalCompletion = true,
|
|
342
|
+
_didIteratorError = false,
|
|
343
|
+
_iteratorError = void 0;
|
|
344
|
+
try {
|
|
345
|
+
for (var _iterator = node.params[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
346
|
+
var param = _step.value;
|
|
347
|
+
walkPatternExpressions(param);
|
|
348
|
+
extractPatternBindings(param, scope);
|
|
349
|
+
}
|
|
350
|
+
} catch (err) {
|
|
351
|
+
_didIteratorError = true;
|
|
352
|
+
_iteratorError = err;
|
|
353
|
+
} finally {
|
|
354
|
+
try {
|
|
355
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
356
|
+
_iterator.return();
|
|
357
|
+
}
|
|
358
|
+
} finally {
|
|
359
|
+
if (_didIteratorError) {
|
|
360
|
+
throw _iteratorError;
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
addVars2(node.body);
|
|
366
|
+
scopeStack.push(scope);
|
|
367
|
+
walk(node.body);
|
|
368
|
+
scopeStack.pop();
|
|
369
|
+
return;
|
|
370
|
+
}
|
|
371
|
+
if (node.type === "BlockStatement") {
|
|
372
|
+
var scope1 = /* @__PURE__ */new Set();
|
|
373
|
+
var _iteratorNormalCompletion1 = true,
|
|
374
|
+
_didIteratorError1 = false,
|
|
375
|
+
_iteratorError1 = void 0;
|
|
376
|
+
try {
|
|
377
|
+
for (var _iterator1 = node.body[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
378
|
+
var stmt = _step1.value;
|
|
379
|
+
if (stmt.type === "VariableDeclaration" && (stmt.kind === "let" || stmt.kind === "const")) {
|
|
380
|
+
var _iteratorNormalCompletion2 = true,
|
|
381
|
+
_didIteratorError2 = false,
|
|
382
|
+
_iteratorError2 = void 0;
|
|
383
|
+
try {
|
|
384
|
+
for (var _iterator2 = stmt.declarations[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
385
|
+
var decl = _step2.value;
|
|
386
|
+
extractPatternBindings(decl.id, scope1);
|
|
387
|
+
}
|
|
388
|
+
} catch (err) {
|
|
389
|
+
_didIteratorError2 = true;
|
|
390
|
+
_iteratorError2 = err;
|
|
391
|
+
} finally {
|
|
392
|
+
try {
|
|
393
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
394
|
+
_iterator2.return();
|
|
395
|
+
}
|
|
396
|
+
} finally {
|
|
397
|
+
if (_didIteratorError2) {
|
|
398
|
+
throw _iteratorError2;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
} else if (stmt.type === "FunctionDeclaration" && stmt.id) {
|
|
403
|
+
scope1.add(stmt.id.name);
|
|
404
|
+
} else if (stmt.type === "ClassDeclaration" && stmt.id) {
|
|
405
|
+
scope1.add(stmt.id.name);
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
} catch (err) {
|
|
409
|
+
_didIteratorError1 = true;
|
|
410
|
+
_iteratorError1 = err;
|
|
411
|
+
} finally {
|
|
412
|
+
try {
|
|
413
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
414
|
+
_iterator1.return();
|
|
415
|
+
}
|
|
416
|
+
} finally {
|
|
417
|
+
if (_didIteratorError1) {
|
|
418
|
+
throw _iteratorError1;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
scopeStack.push(scope1);
|
|
423
|
+
var _iteratorNormalCompletion3 = true,
|
|
424
|
+
_didIteratorError3 = false,
|
|
425
|
+
_iteratorError3 = void 0;
|
|
426
|
+
try {
|
|
427
|
+
for (var _iterator3 = node.body[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
428
|
+
var stmt1 = _step3.value;
|
|
429
|
+
walk(stmt1);
|
|
430
|
+
}
|
|
431
|
+
} catch (err) {
|
|
432
|
+
_didIteratorError3 = true;
|
|
433
|
+
_iteratorError3 = err;
|
|
434
|
+
} finally {
|
|
435
|
+
try {
|
|
436
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
437
|
+
_iterator3.return();
|
|
438
|
+
}
|
|
439
|
+
} finally {
|
|
440
|
+
if (_didIteratorError3) {
|
|
441
|
+
throw _iteratorError3;
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
scopeStack.pop();
|
|
446
|
+
return;
|
|
447
|
+
}
|
|
448
|
+
if (node.type === "CatchClause") {
|
|
449
|
+
var scope2 = /* @__PURE__ */new Set();
|
|
450
|
+
if (node.param) {
|
|
451
|
+
extractPatternBindings(node.param, scope2);
|
|
452
|
+
}
|
|
453
|
+
scopeStack.push(scope2);
|
|
454
|
+
walk(node.body);
|
|
455
|
+
scopeStack.pop();
|
|
456
|
+
return;
|
|
457
|
+
}
|
|
458
|
+
if (node.type === "ForStatement" || node.type === "ForInStatement" || node.type === "ForOfStatement") {
|
|
459
|
+
var scope3 = /* @__PURE__ */new Set();
|
|
460
|
+
var initOrLeft = node.init || node.left;
|
|
461
|
+
if (initOrLeft && initOrLeft.type === "VariableDeclaration" && initOrLeft.kind !== "var") {
|
|
462
|
+
var _iteratorNormalCompletion4 = true,
|
|
463
|
+
_didIteratorError4 = false,
|
|
464
|
+
_iteratorError4 = void 0;
|
|
465
|
+
try {
|
|
466
|
+
for (var _iterator4 = initOrLeft.declarations[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
|
467
|
+
var decl1 = _step4.value;
|
|
468
|
+
extractPatternBindings(decl1.id, scope3);
|
|
469
|
+
}
|
|
470
|
+
} catch (err) {
|
|
471
|
+
_didIteratorError4 = true;
|
|
472
|
+
_iteratorError4 = err;
|
|
473
|
+
} finally {
|
|
474
|
+
try {
|
|
475
|
+
if (!_iteratorNormalCompletion4 && _iterator4.return != null) {
|
|
476
|
+
_iterator4.return();
|
|
477
|
+
}
|
|
478
|
+
} finally {
|
|
479
|
+
if (_didIteratorError4) {
|
|
480
|
+
throw _iteratorError4;
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
scopeStack.push(scope3);
|
|
486
|
+
if (node.init) walk(node.init);
|
|
487
|
+
if (node.left) walk(node.left);
|
|
488
|
+
if (node.right) walk(node.right);
|
|
489
|
+
if (node.test) walk(node.test);
|
|
490
|
+
if (node.update) walk(node.update);
|
|
491
|
+
walk(node.body);
|
|
492
|
+
scopeStack.pop();
|
|
493
|
+
return;
|
|
494
|
+
}
|
|
495
|
+
if (node.type === "Identifier") {
|
|
496
|
+
checkIdentifier(node.name);
|
|
497
|
+
return;
|
|
498
|
+
}
|
|
499
|
+
if (node.type === "JSXOpeningElement") {
|
|
500
|
+
if (node.name) {
|
|
501
|
+
if (node.name.type === "JSXIdentifier") {
|
|
502
|
+
if (node.name.name && /^[A-Z]/.test(node.name.name)) {
|
|
503
|
+
checkIdentifier(node.name.name);
|
|
504
|
+
}
|
|
505
|
+
} else if (node.name.type === "JSXMemberExpression") {
|
|
506
|
+
var rootObj = node.name.object;
|
|
507
|
+
while (rootObj && rootObj.type === "JSXMemberExpression") {
|
|
508
|
+
rootObj = rootObj.object;
|
|
509
|
+
}
|
|
510
|
+
if (rootObj && rootObj.type === "JSXIdentifier") {
|
|
511
|
+
checkIdentifier(rootObj.name);
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
if (node.attributes) {
|
|
516
|
+
var _iteratorNormalCompletion5 = true,
|
|
517
|
+
_didIteratorError5 = false,
|
|
518
|
+
_iteratorError5 = void 0;
|
|
519
|
+
try {
|
|
520
|
+
for (var _iterator5 = node.attributes[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
521
|
+
var attr = _step5.value;
|
|
522
|
+
walk(attr);
|
|
523
|
+
}
|
|
524
|
+
} catch (err) {
|
|
525
|
+
_didIteratorError5 = true;
|
|
526
|
+
_iteratorError5 = err;
|
|
527
|
+
} finally {
|
|
528
|
+
try {
|
|
529
|
+
if (!_iteratorNormalCompletion5 && _iterator5.return != null) {
|
|
530
|
+
_iterator5.return();
|
|
531
|
+
}
|
|
532
|
+
} finally {
|
|
533
|
+
if (_didIteratorError5) {
|
|
534
|
+
throw _iteratorError5;
|
|
535
|
+
}
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
return;
|
|
540
|
+
}
|
|
541
|
+
if (node.type === "JSXAttribute") {
|
|
542
|
+
if (node.value) walk(node.value);
|
|
543
|
+
return;
|
|
544
|
+
}
|
|
545
|
+
if (node.type === "JSXClosingElement") {
|
|
546
|
+
return;
|
|
547
|
+
}
|
|
548
|
+
if (node.type === "Property") {
|
|
549
|
+
if (node.computed) {
|
|
550
|
+
walk(node.key);
|
|
551
|
+
}
|
|
552
|
+
walk(node.value);
|
|
553
|
+
return;
|
|
554
|
+
}
|
|
555
|
+
if (node.type === "MemberExpression") {
|
|
556
|
+
walk(node.object);
|
|
557
|
+
if (node.computed) {
|
|
558
|
+
walk(node.property);
|
|
559
|
+
}
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
if (node.type === "VariableDeclarator") {
|
|
563
|
+
walkPatternExpressions(node.id);
|
|
564
|
+
if (node.init) {
|
|
565
|
+
walk(node.init);
|
|
566
|
+
}
|
|
567
|
+
return;
|
|
568
|
+
}
|
|
569
|
+
if (node.type === "ExportSpecifier") {
|
|
570
|
+
if (node.local && node.local.type === "Identifier") {
|
|
571
|
+
checkIdentifier(node.local.name);
|
|
572
|
+
}
|
|
573
|
+
return;
|
|
574
|
+
}
|
|
575
|
+
var _iteratorNormalCompletion6 = true,
|
|
576
|
+
_didIteratorError6 = false,
|
|
577
|
+
_iteratorError6 = void 0;
|
|
578
|
+
try {
|
|
579
|
+
for (var _iterator6 = Object.keys(node)[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
580
|
+
var key = _step6.value;
|
|
581
|
+
if (key === "parent") continue;
|
|
582
|
+
var child = node[key];
|
|
583
|
+
if (Array.isArray(child)) {
|
|
584
|
+
var _iteratorNormalCompletion7 = true,
|
|
585
|
+
_didIteratorError7 = false,
|
|
586
|
+
_iteratorError7 = void 0;
|
|
587
|
+
try {
|
|
588
|
+
for (var _iterator7 = child[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
|
589
|
+
var item = _step7.value;
|
|
590
|
+
if (item && (typeof item === "undefined" ? "undefined" : _type_of(item)) === "object") walk(item);
|
|
591
|
+
}
|
|
592
|
+
} catch (err) {
|
|
593
|
+
_didIteratorError7 = true;
|
|
594
|
+
_iteratorError7 = err;
|
|
595
|
+
} finally {
|
|
596
|
+
try {
|
|
597
|
+
if (!_iteratorNormalCompletion7 && _iterator7.return != null) {
|
|
598
|
+
_iterator7.return();
|
|
599
|
+
}
|
|
600
|
+
} finally {
|
|
601
|
+
if (_didIteratorError7) {
|
|
602
|
+
throw _iteratorError7;
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
} else if (child && (typeof child === "undefined" ? "undefined" : _type_of(child)) === "object") {
|
|
607
|
+
walk(child);
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
} catch (err) {
|
|
611
|
+
_didIteratorError6 = true;
|
|
612
|
+
_iteratorError6 = err;
|
|
613
|
+
} finally {
|
|
614
|
+
try {
|
|
615
|
+
if (!_iteratorNormalCompletion6 && _iterator6.return != null) {
|
|
616
|
+
_iterator6.return();
|
|
617
|
+
}
|
|
618
|
+
} finally {
|
|
619
|
+
if (_didIteratorError6) {
|
|
620
|
+
throw _iteratorError6;
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
walk(rootNode);
|
|
626
|
+
return referenced;
|
|
627
|
+
}
|
|
134
628
|
async function transformTreeShakeClient(code, id, root) {
|
|
135
629
|
var routerRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "app";
|
|
136
630
|
if (!/generateStaticParams|loader/.test(code)) {
|
|
137
631
|
return;
|
|
138
632
|
}
|
|
139
|
-
var
|
|
633
|
+
var isProd = process.env.NODE_ENV === "production";
|
|
634
|
+
var filename = (id || "file.tsx").split("?")[0].split("#")[0];
|
|
635
|
+
var parseResult;
|
|
140
636
|
try {
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
637
|
+
parseResult = (0, import_oxc_parser.parseSync)(filename, code);
|
|
638
|
+
if (parseResult.errors && parseResult.errors.length > 0) {
|
|
639
|
+
var errorMessage = parseResult.errors.map(function (e) {
|
|
640
|
+
return e.message;
|
|
641
|
+
}).join("\n");
|
|
642
|
+
if (isProd) {
|
|
643
|
+
throw new Error(`[one] Failed to parse ${id} with server exports:
|
|
644
|
+
${errorMessage}`);
|
|
645
|
+
}
|
|
646
|
+
console.warn(`[one] Skipping tree shaking for ${id} due to syntax error:`, errorMessage);
|
|
647
|
+
return;
|
|
648
|
+
}
|
|
145
649
|
} catch (error) {
|
|
146
|
-
|
|
147
|
-
|
|
650
|
+
if (isProd) {
|
|
651
|
+
throw _instanceof(error, Error) ? error : new Error(String(error));
|
|
652
|
+
}
|
|
653
|
+
var errorMessage1 = _instanceof(error, Error) ? error.message : String(error);
|
|
654
|
+
console.warn(`[one] Skipping tree shaking for ${id} due to syntax error:`, errorMessage1);
|
|
148
655
|
return;
|
|
149
656
|
}
|
|
150
|
-
var
|
|
657
|
+
var ast = parseResult.program;
|
|
151
658
|
try {
|
|
152
|
-
|
|
659
|
+
return doTreeShakeClient(code, id, root, ast, routerRoot);
|
|
153
660
|
} catch (error) {
|
|
154
|
-
|
|
155
|
-
|
|
661
|
+
if (isProd) {
|
|
662
|
+
throw _instanceof(error, Error) ? error : new Error(String(error));
|
|
663
|
+
}
|
|
664
|
+
var errorMessage2 = _instanceof(error, Error) ? error.message : String(error);
|
|
665
|
+
console.warn(`[one] Skipping tree shaking for ${id} due to analysis error:`, errorMessage2);
|
|
156
666
|
return;
|
|
157
667
|
}
|
|
668
|
+
}
|
|
669
|
+
function doTreeShakeClient(code, id, root, ast, routerRoot) {
|
|
158
670
|
var removed = {
|
|
159
671
|
loader: false,
|
|
160
672
|
generateStaticParams: false
|
|
161
673
|
};
|
|
674
|
+
var serverExportStmts = /* @__PURE__ */new Map();
|
|
675
|
+
var _iteratorNormalCompletion = true,
|
|
676
|
+
_didIteratorError = false,
|
|
677
|
+
_iteratorError = void 0;
|
|
162
678
|
try {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
var
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
removed[
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
679
|
+
for (var _iterator = ast.body[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
680
|
+
var stmt = _step.value;
|
|
681
|
+
if (stmt.type === "ExportNamedDeclaration" && stmt.declaration) {
|
|
682
|
+
if (stmt.declaration.type === "FunctionDeclaration") {
|
|
683
|
+
var _stmt_declaration_id;
|
|
684
|
+
var fnName = (_stmt_declaration_id = stmt.declaration.id) === null || _stmt_declaration_id === void 0 ? void 0 : _stmt_declaration_id.name;
|
|
685
|
+
if (fnName === "loader" || fnName === "generateStaticParams") {
|
|
686
|
+
removed[fnName] = true;
|
|
687
|
+
serverExportStmts.set(stmt, {
|
|
688
|
+
names: /* @__PURE__ */new Set([fnName]),
|
|
689
|
+
replaceAll: true,
|
|
690
|
+
declaratorsToRemove: /* @__PURE__ */new Set()
|
|
691
|
+
});
|
|
692
|
+
}
|
|
693
|
+
} else if (stmt.declaration.type === "VariableDeclaration") {
|
|
694
|
+
var found = [];
|
|
695
|
+
var _iteratorNormalCompletion1 = true,
|
|
696
|
+
_didIteratorError1 = false,
|
|
697
|
+
_iteratorError1 = void 0;
|
|
698
|
+
try {
|
|
699
|
+
for (var _iterator1 = stmt.declaration.declarations[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
700
|
+
var d = _step1.value;
|
|
701
|
+
var _d_id;
|
|
702
|
+
if (((_d_id = d.id) === null || _d_id === void 0 ? void 0 : _d_id.type) === "Identifier" && (d.id.name === "loader" || d.id.name === "generateStaticParams")) {
|
|
703
|
+
found.push(d);
|
|
704
|
+
removed[d.id.name] = true;
|
|
180
705
|
}
|
|
181
706
|
}
|
|
182
|
-
})
|
|
707
|
+
} catch (err) {
|
|
708
|
+
_didIteratorError1 = true;
|
|
709
|
+
_iteratorError1 = err;
|
|
710
|
+
} finally {
|
|
711
|
+
try {
|
|
712
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
713
|
+
_iterator1.return();
|
|
714
|
+
}
|
|
715
|
+
} finally {
|
|
716
|
+
if (_didIteratorError1) {
|
|
717
|
+
throw _iteratorError1;
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
if (found.length > 0) {
|
|
722
|
+
serverExportStmts.set(stmt, {
|
|
723
|
+
names: new Set(found.map(function (d7) {
|
|
724
|
+
return d7.id.name;
|
|
725
|
+
})),
|
|
726
|
+
replaceAll: found.length === stmt.declaration.declarations.length,
|
|
727
|
+
declaratorsToRemove: new Set(found)
|
|
728
|
+
});
|
|
729
|
+
}
|
|
183
730
|
}
|
|
184
731
|
}
|
|
185
|
-
}
|
|
186
|
-
} catch (
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
732
|
+
}
|
|
733
|
+
} catch (err) {
|
|
734
|
+
_didIteratorError = true;
|
|
735
|
+
_iteratorError = err;
|
|
736
|
+
} finally {
|
|
737
|
+
try {
|
|
738
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
739
|
+
_iterator.return();
|
|
740
|
+
}
|
|
741
|
+
} finally {
|
|
742
|
+
if (_didIteratorError) {
|
|
743
|
+
throw _iteratorError;
|
|
744
|
+
}
|
|
745
|
+
}
|
|
190
746
|
}
|
|
191
|
-
var removedFunctions = Object.keys(removed).filter(function (
|
|
192
|
-
return removed[
|
|
747
|
+
var removedFunctions = Object.keys(removed).filter(function (k) {
|
|
748
|
+
return removed[k];
|
|
193
749
|
});
|
|
194
|
-
if (removedFunctions.length) {
|
|
750
|
+
if (removedFunctions.length === 0) {
|
|
751
|
+
return;
|
|
752
|
+
}
|
|
753
|
+
var moduleBindings = /* @__PURE__ */new Map();
|
|
754
|
+
var _iteratorNormalCompletion2 = true,
|
|
755
|
+
_didIteratorError2 = false,
|
|
756
|
+
_iteratorError2 = void 0;
|
|
757
|
+
try {
|
|
758
|
+
for (var _iterator2 = ast.body[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
759
|
+
var stmt1 = _step2.value;
|
|
760
|
+
if (stmt1.type === "ImportDeclaration") {
|
|
761
|
+
var isDeclType = stmt1.importKind === "type";
|
|
762
|
+
var _iteratorNormalCompletion3 = true,
|
|
763
|
+
_didIteratorError3 = false,
|
|
764
|
+
_iteratorError3 = void 0;
|
|
765
|
+
try {
|
|
766
|
+
for (var _iterator3 = stmt1.specifiers[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
767
|
+
var sp = _step3.value;
|
|
768
|
+
var isType = isDeclType || sp.importKind === "type";
|
|
769
|
+
moduleBindings.set(sp.local.name, {
|
|
770
|
+
kind: "import",
|
|
771
|
+
stmt: stmt1,
|
|
772
|
+
node: sp,
|
|
773
|
+
isType
|
|
774
|
+
});
|
|
775
|
+
}
|
|
776
|
+
} catch (err) {
|
|
777
|
+
_didIteratorError3 = true;
|
|
778
|
+
_iteratorError3 = err;
|
|
779
|
+
} finally {
|
|
780
|
+
try {
|
|
781
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
782
|
+
_iterator3.return();
|
|
783
|
+
}
|
|
784
|
+
} finally {
|
|
785
|
+
if (_didIteratorError3) {
|
|
786
|
+
throw _iteratorError3;
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
} else if (stmt1.type === "ExportNamedDeclaration" && stmt1.declaration) {
|
|
791
|
+
var decl = stmt1.declaration;
|
|
792
|
+
if (decl.type === "FunctionDeclaration" && decl.id) {
|
|
793
|
+
moduleBindings.set(decl.id.name, {
|
|
794
|
+
kind: "function",
|
|
795
|
+
stmt: stmt1,
|
|
796
|
+
node: decl
|
|
797
|
+
});
|
|
798
|
+
} else if (decl.type === "VariableDeclaration") {
|
|
799
|
+
var _iteratorNormalCompletion4 = true,
|
|
800
|
+
_didIteratorError4 = false,
|
|
801
|
+
_iteratorError4 = void 0;
|
|
802
|
+
try {
|
|
803
|
+
for (var _iterator4 = decl.declarations[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
|
804
|
+
var d1 = _step4.value;
|
|
805
|
+
var names = /* @__PURE__ */new Set();
|
|
806
|
+
extractPatternBindings(d1.id, names);
|
|
807
|
+
var _iteratorNormalCompletion5 = true,
|
|
808
|
+
_didIteratorError5 = false,
|
|
809
|
+
_iteratorError5 = void 0;
|
|
810
|
+
try {
|
|
811
|
+
for (var _iterator5 = names[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
812
|
+
var name = _step5.value;
|
|
813
|
+
moduleBindings.set(name, {
|
|
814
|
+
kind: "variable",
|
|
815
|
+
stmt: stmt1,
|
|
816
|
+
node: d1
|
|
817
|
+
});
|
|
818
|
+
}
|
|
819
|
+
} catch (err) {
|
|
820
|
+
_didIteratorError5 = true;
|
|
821
|
+
_iteratorError5 = err;
|
|
822
|
+
} finally {
|
|
823
|
+
try {
|
|
824
|
+
if (!_iteratorNormalCompletion5 && _iterator5.return != null) {
|
|
825
|
+
_iterator5.return();
|
|
826
|
+
}
|
|
827
|
+
} finally {
|
|
828
|
+
if (_didIteratorError5) {
|
|
829
|
+
throw _iteratorError5;
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
}
|
|
833
|
+
}
|
|
834
|
+
} catch (err) {
|
|
835
|
+
_didIteratorError4 = true;
|
|
836
|
+
_iteratorError4 = err;
|
|
837
|
+
} finally {
|
|
838
|
+
try {
|
|
839
|
+
if (!_iteratorNormalCompletion4 && _iterator4.return != null) {
|
|
840
|
+
_iterator4.return();
|
|
841
|
+
}
|
|
842
|
+
} finally {
|
|
843
|
+
if (_didIteratorError4) {
|
|
844
|
+
throw _iteratorError4;
|
|
845
|
+
}
|
|
846
|
+
}
|
|
847
|
+
}
|
|
848
|
+
} else if (decl.type === "ClassDeclaration" && decl.id) {
|
|
849
|
+
moduleBindings.set(decl.id.name, {
|
|
850
|
+
kind: "class",
|
|
851
|
+
stmt: stmt1,
|
|
852
|
+
node: decl
|
|
853
|
+
});
|
|
854
|
+
}
|
|
855
|
+
} else if (stmt1.type === "FunctionDeclaration" && stmt1.id) {
|
|
856
|
+
moduleBindings.set(stmt1.id.name, {
|
|
857
|
+
kind: "function",
|
|
858
|
+
stmt: stmt1,
|
|
859
|
+
node: stmt1
|
|
860
|
+
});
|
|
861
|
+
} else if (stmt1.type === "VariableDeclaration") {
|
|
862
|
+
var _iteratorNormalCompletion6 = true,
|
|
863
|
+
_didIteratorError6 = false,
|
|
864
|
+
_iteratorError6 = void 0;
|
|
865
|
+
try {
|
|
866
|
+
for (var _iterator6 = stmt1.declarations[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
867
|
+
var d2 = _step6.value;
|
|
868
|
+
var names1 = /* @__PURE__ */new Set();
|
|
869
|
+
extractPatternBindings(d2.id, names1);
|
|
870
|
+
var _iteratorNormalCompletion7 = true,
|
|
871
|
+
_didIteratorError7 = false,
|
|
872
|
+
_iteratorError7 = void 0;
|
|
873
|
+
try {
|
|
874
|
+
for (var _iterator7 = names1[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
|
875
|
+
var name1 = _step7.value;
|
|
876
|
+
moduleBindings.set(name1, {
|
|
877
|
+
kind: "variable",
|
|
878
|
+
stmt: stmt1,
|
|
879
|
+
node: d2
|
|
880
|
+
});
|
|
881
|
+
}
|
|
882
|
+
} catch (err) {
|
|
883
|
+
_didIteratorError7 = true;
|
|
884
|
+
_iteratorError7 = err;
|
|
885
|
+
} finally {
|
|
886
|
+
try {
|
|
887
|
+
if (!_iteratorNormalCompletion7 && _iterator7.return != null) {
|
|
888
|
+
_iterator7.return();
|
|
889
|
+
}
|
|
890
|
+
} finally {
|
|
891
|
+
if (_didIteratorError7) {
|
|
892
|
+
throw _iteratorError7;
|
|
893
|
+
}
|
|
894
|
+
}
|
|
895
|
+
}
|
|
896
|
+
}
|
|
897
|
+
} catch (err) {
|
|
898
|
+
_didIteratorError6 = true;
|
|
899
|
+
_iteratorError6 = err;
|
|
900
|
+
} finally {
|
|
901
|
+
try {
|
|
902
|
+
if (!_iteratorNormalCompletion6 && _iterator6.return != null) {
|
|
903
|
+
_iterator6.return();
|
|
904
|
+
}
|
|
905
|
+
} finally {
|
|
906
|
+
if (_didIteratorError6) {
|
|
907
|
+
throw _iteratorError6;
|
|
908
|
+
}
|
|
909
|
+
}
|
|
910
|
+
}
|
|
911
|
+
} else if (stmt1.type === "ClassDeclaration" && stmt1.id) {
|
|
912
|
+
moduleBindings.set(stmt1.id.name, {
|
|
913
|
+
kind: "class",
|
|
914
|
+
stmt: stmt1,
|
|
915
|
+
node: stmt1
|
|
916
|
+
});
|
|
917
|
+
} else if (stmt1.type === "TSEnumDeclaration" && stmt1.id) {
|
|
918
|
+
moduleBindings.set(stmt1.id.name, {
|
|
919
|
+
kind: "enum",
|
|
920
|
+
stmt: stmt1,
|
|
921
|
+
node: stmt1
|
|
922
|
+
});
|
|
923
|
+
}
|
|
924
|
+
}
|
|
925
|
+
} catch (err) {
|
|
926
|
+
_didIteratorError2 = true;
|
|
927
|
+
_iteratorError2 = err;
|
|
928
|
+
} finally {
|
|
195
929
|
try {
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
930
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
931
|
+
_iterator2.return();
|
|
932
|
+
}
|
|
933
|
+
} finally {
|
|
934
|
+
if (_didIteratorError2) {
|
|
935
|
+
throw _iteratorError2;
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
}
|
|
939
|
+
var allBindingNames = new Set(moduleBindings.keys());
|
|
940
|
+
var topLevelDeps = /* @__PURE__ */new Map();
|
|
941
|
+
var clientRootDeps = /* @__PURE__ */new Set();
|
|
942
|
+
var _iteratorNormalCompletion8 = true,
|
|
943
|
+
_didIteratorError8 = false,
|
|
944
|
+
_iteratorError8 = void 0;
|
|
945
|
+
try {
|
|
946
|
+
for (var _iterator8 = moduleBindings[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {
|
|
947
|
+
var [name2, info] = _step8.value;
|
|
948
|
+
if (info.kind === "import") {
|
|
949
|
+
topLevelDeps.set(name2, /* @__PURE__ */new Set());
|
|
950
|
+
} else if (info.kind === "function") {
|
|
951
|
+
topLevelDeps.set(name2, getReferencedIdentifiers(info.node, allBindingNames));
|
|
952
|
+
} else if (info.kind === "variable") {
|
|
953
|
+
var deps = getReferencedIdentifiers(info.node, allBindingNames);
|
|
954
|
+
deps.delete(name2);
|
|
955
|
+
topLevelDeps.set(name2, deps);
|
|
956
|
+
} else if (info.kind === "class") {
|
|
957
|
+
topLevelDeps.set(name2, getReferencedIdentifiers(info.node, allBindingNames));
|
|
958
|
+
} else if (info.kind === "enum") {
|
|
959
|
+
topLevelDeps.set(name2, getReferencedIdentifiers(info.node, allBindingNames));
|
|
960
|
+
}
|
|
961
|
+
}
|
|
962
|
+
} catch (err) {
|
|
963
|
+
_didIteratorError8 = true;
|
|
964
|
+
_iteratorError8 = err;
|
|
965
|
+
} finally {
|
|
966
|
+
try {
|
|
967
|
+
if (!_iteratorNormalCompletion8 && _iterator8.return != null) {
|
|
968
|
+
_iterator8.return();
|
|
969
|
+
}
|
|
970
|
+
} finally {
|
|
971
|
+
if (_didIteratorError8) {
|
|
972
|
+
throw _iteratorError8;
|
|
973
|
+
}
|
|
974
|
+
}
|
|
975
|
+
}
|
|
976
|
+
var serverNeeded = /* @__PURE__ */new Set();
|
|
977
|
+
var serverQueue = [];
|
|
978
|
+
var _iteratorNormalCompletion9 = true,
|
|
979
|
+
_didIteratorError9 = false,
|
|
980
|
+
_iteratorError9 = void 0;
|
|
981
|
+
try {
|
|
982
|
+
for (var _iterator9 = removedFunctions[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {
|
|
983
|
+
var fn = _step9.value;
|
|
984
|
+
var deps1 = topLevelDeps.get(fn);
|
|
985
|
+
if (deps1) {
|
|
986
|
+
var _iteratorNormalCompletion10 = true,
|
|
987
|
+
_didIteratorError10 = false,
|
|
988
|
+
_iteratorError10 = void 0;
|
|
989
|
+
try {
|
|
990
|
+
for (var _iterator10 = deps1[Symbol.iterator](), _step10; !(_iteratorNormalCompletion10 = (_step10 = _iterator10.next()).done); _iteratorNormalCompletion10 = true) {
|
|
991
|
+
var dep = _step10.value;
|
|
992
|
+
serverQueue.push(dep);
|
|
993
|
+
}
|
|
994
|
+
} catch (err) {
|
|
995
|
+
_didIteratorError10 = true;
|
|
996
|
+
_iteratorError10 = err;
|
|
997
|
+
} finally {
|
|
998
|
+
try {
|
|
999
|
+
if (!_iteratorNormalCompletion10 && _iterator10.return != null) {
|
|
1000
|
+
_iterator10.return();
|
|
1001
|
+
}
|
|
1002
|
+
} finally {
|
|
1003
|
+
if (_didIteratorError10) {
|
|
1004
|
+
throw _iteratorError10;
|
|
1005
|
+
}
|
|
209
1006
|
}
|
|
210
|
-
return import_constants.EMPTY_LOADER_STRING;
|
|
211
1007
|
}
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
1008
|
+
}
|
|
1009
|
+
}
|
|
1010
|
+
} catch (err) {
|
|
1011
|
+
_didIteratorError9 = true;
|
|
1012
|
+
_iteratorError9 = err;
|
|
1013
|
+
} finally {
|
|
1014
|
+
try {
|
|
1015
|
+
if (!_iteratorNormalCompletion9 && _iterator9.return != null) {
|
|
1016
|
+
_iterator9.return();
|
|
1017
|
+
}
|
|
1018
|
+
} finally {
|
|
1019
|
+
if (_didIteratorError9) {
|
|
1020
|
+
throw _iteratorError9;
|
|
1021
|
+
}
|
|
223
1022
|
}
|
|
224
1023
|
}
|
|
1024
|
+
while (serverQueue.length > 0) {
|
|
1025
|
+
var name3 = serverQueue.shift();
|
|
1026
|
+
if (serverNeeded.has(name3)) continue;
|
|
1027
|
+
serverNeeded.add(name3);
|
|
1028
|
+
var deps2 = topLevelDeps.get(name3);
|
|
1029
|
+
if (deps2) {
|
|
1030
|
+
var _iteratorNormalCompletion11 = true,
|
|
1031
|
+
_didIteratorError11 = false,
|
|
1032
|
+
_iteratorError11 = void 0;
|
|
1033
|
+
try {
|
|
1034
|
+
for (var _iterator11 = deps2[Symbol.iterator](), _step11; !(_iteratorNormalCompletion11 = (_step11 = _iterator11.next()).done); _iteratorNormalCompletion11 = true) {
|
|
1035
|
+
var dep1 = _step11.value;
|
|
1036
|
+
if (!serverNeeded.has(dep1)) serverQueue.push(dep1);
|
|
1037
|
+
}
|
|
1038
|
+
} catch (err) {
|
|
1039
|
+
_didIteratorError11 = true;
|
|
1040
|
+
_iteratorError11 = err;
|
|
1041
|
+
} finally {
|
|
1042
|
+
try {
|
|
1043
|
+
if (!_iteratorNormalCompletion11 && _iterator11.return != null) {
|
|
1044
|
+
_iterator11.return();
|
|
1045
|
+
}
|
|
1046
|
+
} finally {
|
|
1047
|
+
if (_didIteratorError11) {
|
|
1048
|
+
throw _iteratorError11;
|
|
1049
|
+
}
|
|
1050
|
+
}
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1053
|
+
}
|
|
1054
|
+
var _iteratorNormalCompletion12 = true,
|
|
1055
|
+
_didIteratorError12 = false,
|
|
1056
|
+
_iteratorError12 = void 0;
|
|
1057
|
+
try {
|
|
1058
|
+
for (var _iterator12 = ast.body[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
1059
|
+
var stmt2 = _step12.value;
|
|
1060
|
+
if (stmt2.type === "ImportDeclaration") {
|
|
1061
|
+
continue;
|
|
1062
|
+
}
|
|
1063
|
+
if (serverExportStmts.has(stmt2)) {
|
|
1064
|
+
var _stmt_declaration;
|
|
1065
|
+
var info1 = serverExportStmts.get(stmt2);
|
|
1066
|
+
if (!info1.replaceAll && ((_stmt_declaration = stmt2.declaration) === null || _stmt_declaration === void 0 ? void 0 : _stmt_declaration.declarations)) {
|
|
1067
|
+
var _iteratorNormalCompletion13 = true,
|
|
1068
|
+
_didIteratorError13 = false,
|
|
1069
|
+
_iteratorError13 = void 0;
|
|
1070
|
+
try {
|
|
1071
|
+
for (var _iterator13 = stmt2.declaration.declarations[Symbol.iterator](), _step13; !(_iteratorNormalCompletion13 = (_step13 = _iterator13.next()).done); _iteratorNormalCompletion13 = true) {
|
|
1072
|
+
var d3 = _step13.value;
|
|
1073
|
+
if (!info1.declaratorsToRemove.has(d3)) {
|
|
1074
|
+
var deps3 = getReferencedIdentifiers(d3, allBindingNames);
|
|
1075
|
+
var _iteratorNormalCompletion14 = true,
|
|
1076
|
+
_didIteratorError14 = false,
|
|
1077
|
+
_iteratorError14 = void 0;
|
|
1078
|
+
try {
|
|
1079
|
+
for (var _iterator14 = deps3[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {
|
|
1080
|
+
var dep2 = _step14.value;
|
|
1081
|
+
clientRootDeps.add(dep2);
|
|
1082
|
+
}
|
|
1083
|
+
} catch (err) {
|
|
1084
|
+
_didIteratorError14 = true;
|
|
1085
|
+
_iteratorError14 = err;
|
|
1086
|
+
} finally {
|
|
1087
|
+
try {
|
|
1088
|
+
if (!_iteratorNormalCompletion14 && _iterator14.return != null) {
|
|
1089
|
+
_iterator14.return();
|
|
1090
|
+
}
|
|
1091
|
+
} finally {
|
|
1092
|
+
if (_didIteratorError14) {
|
|
1093
|
+
throw _iteratorError14;
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1096
|
+
}
|
|
1097
|
+
}
|
|
1098
|
+
}
|
|
1099
|
+
} catch (err) {
|
|
1100
|
+
_didIteratorError13 = true;
|
|
1101
|
+
_iteratorError13 = err;
|
|
1102
|
+
} finally {
|
|
1103
|
+
try {
|
|
1104
|
+
if (!_iteratorNormalCompletion13 && _iterator13.return != null) {
|
|
1105
|
+
_iterator13.return();
|
|
1106
|
+
}
|
|
1107
|
+
} finally {
|
|
1108
|
+
if (_didIteratorError13) {
|
|
1109
|
+
throw _iteratorError13;
|
|
1110
|
+
}
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
1113
|
+
}
|
|
1114
|
+
continue;
|
|
1115
|
+
}
|
|
1116
|
+
if (stmt2.type === "VariableDeclaration") {
|
|
1117
|
+
var allInServer = stmt2.declarations.every(function (d7) {
|
|
1118
|
+
var names4 = /* @__PURE__ */new Set();
|
|
1119
|
+
extractPatternBindings(d7.id, names4);
|
|
1120
|
+
return names4.size > 0 && Array.from(names4).every(function (n) {
|
|
1121
|
+
return serverNeeded.has(n);
|
|
1122
|
+
});
|
|
1123
|
+
});
|
|
1124
|
+
if (!allInServer) {
|
|
1125
|
+
var _iteratorNormalCompletion15 = true,
|
|
1126
|
+
_didIteratorError15 = false,
|
|
1127
|
+
_iteratorError15 = void 0;
|
|
1128
|
+
try {
|
|
1129
|
+
for (var _iterator15 = stmt2.declarations[Symbol.iterator](), _step15; !(_iteratorNormalCompletion15 = (_step15 = _iterator15.next()).done); _iteratorNormalCompletion15 = true) {
|
|
1130
|
+
var d4 = _step15.value;
|
|
1131
|
+
var names2 = /* @__PURE__ */new Set();
|
|
1132
|
+
extractPatternBindings(d4.id, names2);
|
|
1133
|
+
var inServer = names2.size > 0 && Array.from(names2).every(function (n) {
|
|
1134
|
+
return serverNeeded.has(n);
|
|
1135
|
+
});
|
|
1136
|
+
if (!inServer) {
|
|
1137
|
+
var deps4 = getReferencedIdentifiers(d4, allBindingNames);
|
|
1138
|
+
var _iteratorNormalCompletion16 = true,
|
|
1139
|
+
_didIteratorError16 = false,
|
|
1140
|
+
_iteratorError16 = void 0;
|
|
1141
|
+
try {
|
|
1142
|
+
for (var _iterator16 = deps4[Symbol.iterator](), _step16; !(_iteratorNormalCompletion16 = (_step16 = _iterator16.next()).done); _iteratorNormalCompletion16 = true) {
|
|
1143
|
+
var dep3 = _step16.value;
|
|
1144
|
+
clientRootDeps.add(dep3);
|
|
1145
|
+
}
|
|
1146
|
+
} catch (err) {
|
|
1147
|
+
_didIteratorError16 = true;
|
|
1148
|
+
_iteratorError16 = err;
|
|
1149
|
+
} finally {
|
|
1150
|
+
try {
|
|
1151
|
+
if (!_iteratorNormalCompletion16 && _iterator16.return != null) {
|
|
1152
|
+
_iterator16.return();
|
|
1153
|
+
}
|
|
1154
|
+
} finally {
|
|
1155
|
+
if (_didIteratorError16) {
|
|
1156
|
+
throw _iteratorError16;
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
}
|
|
1162
|
+
} catch (err) {
|
|
1163
|
+
_didIteratorError15 = true;
|
|
1164
|
+
_iteratorError15 = err;
|
|
1165
|
+
} finally {
|
|
1166
|
+
try {
|
|
1167
|
+
if (!_iteratorNormalCompletion15 && _iterator15.return != null) {
|
|
1168
|
+
_iterator15.return();
|
|
1169
|
+
}
|
|
1170
|
+
} finally {
|
|
1171
|
+
if (_didIteratorError15) {
|
|
1172
|
+
throw _iteratorError15;
|
|
1173
|
+
}
|
|
1174
|
+
}
|
|
1175
|
+
}
|
|
1176
|
+
}
|
|
1177
|
+
continue;
|
|
1178
|
+
}
|
|
1179
|
+
if ((stmt2.type === "FunctionDeclaration" || stmt2.type === "ClassDeclaration" || stmt2.type === "TSEnumDeclaration") && stmt2.id && serverNeeded.has(stmt2.id.name)) {
|
|
1180
|
+
continue;
|
|
1181
|
+
}
|
|
1182
|
+
var deps5 = getReferencedIdentifiers(stmt2, allBindingNames);
|
|
1183
|
+
var _iteratorNormalCompletion17 = true,
|
|
1184
|
+
_didIteratorError17 = false,
|
|
1185
|
+
_iteratorError17 = void 0;
|
|
1186
|
+
try {
|
|
1187
|
+
for (var _iterator17 = deps5[Symbol.iterator](), _step17; !(_iteratorNormalCompletion17 = (_step17 = _iterator17.next()).done); _iteratorNormalCompletion17 = true) {
|
|
1188
|
+
var dep4 = _step17.value;
|
|
1189
|
+
clientRootDeps.add(dep4);
|
|
1190
|
+
}
|
|
1191
|
+
} catch (err) {
|
|
1192
|
+
_didIteratorError17 = true;
|
|
1193
|
+
_iteratorError17 = err;
|
|
1194
|
+
} finally {
|
|
1195
|
+
try {
|
|
1196
|
+
if (!_iteratorNormalCompletion17 && _iterator17.return != null) {
|
|
1197
|
+
_iterator17.return();
|
|
1198
|
+
}
|
|
1199
|
+
} finally {
|
|
1200
|
+
if (_didIteratorError17) {
|
|
1201
|
+
throw _iteratorError17;
|
|
1202
|
+
}
|
|
1203
|
+
}
|
|
1204
|
+
}
|
|
1205
|
+
}
|
|
1206
|
+
} catch (err) {
|
|
1207
|
+
_didIteratorError12 = true;
|
|
1208
|
+
_iteratorError12 = err;
|
|
1209
|
+
} finally {
|
|
1210
|
+
try {
|
|
1211
|
+
if (!_iteratorNormalCompletion12 && _iterator12.return != null) {
|
|
1212
|
+
_iterator12.return();
|
|
1213
|
+
}
|
|
1214
|
+
} finally {
|
|
1215
|
+
if (_didIteratorError12) {
|
|
1216
|
+
throw _iteratorError12;
|
|
1217
|
+
}
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1220
|
+
var clientNeeded = /* @__PURE__ */new Set();
|
|
1221
|
+
var clientQueue = Array.from(clientRootDeps);
|
|
1222
|
+
while (clientQueue.length > 0) {
|
|
1223
|
+
var name4 = clientQueue.shift();
|
|
1224
|
+
if (clientNeeded.has(name4)) continue;
|
|
1225
|
+
clientNeeded.add(name4);
|
|
1226
|
+
if (name4 === "loader" || name4 === "generateStaticParams") continue;
|
|
1227
|
+
var deps6 = topLevelDeps.get(name4);
|
|
1228
|
+
if (deps6) {
|
|
1229
|
+
var _iteratorNormalCompletion18 = true,
|
|
1230
|
+
_didIteratorError18 = false,
|
|
1231
|
+
_iteratorError18 = void 0;
|
|
1232
|
+
try {
|
|
1233
|
+
for (var _iterator18 = deps6[Symbol.iterator](), _step18; !(_iteratorNormalCompletion18 = (_step18 = _iterator18.next()).done); _iteratorNormalCompletion18 = true) {
|
|
1234
|
+
var dep5 = _step18.value;
|
|
1235
|
+
if (!clientNeeded.has(dep5)) clientQueue.push(dep5);
|
|
1236
|
+
}
|
|
1237
|
+
} catch (err) {
|
|
1238
|
+
_didIteratorError18 = true;
|
|
1239
|
+
_iteratorError18 = err;
|
|
1240
|
+
} finally {
|
|
1241
|
+
try {
|
|
1242
|
+
if (!_iteratorNormalCompletion18 && _iterator18.return != null) {
|
|
1243
|
+
_iterator18.return();
|
|
1244
|
+
}
|
|
1245
|
+
} finally {
|
|
1246
|
+
if (_didIteratorError18) {
|
|
1247
|
+
throw _iteratorError18;
|
|
1248
|
+
}
|
|
1249
|
+
}
|
|
1250
|
+
}
|
|
1251
|
+
}
|
|
1252
|
+
}
|
|
1253
|
+
var exclusiveServerBindings = /* @__PURE__ */new Set();
|
|
1254
|
+
var _iteratorNormalCompletion19 = true,
|
|
1255
|
+
_didIteratorError19 = false,
|
|
1256
|
+
_iteratorError19 = void 0;
|
|
1257
|
+
try {
|
|
1258
|
+
for (var _iterator19 = serverNeeded[Symbol.iterator](), _step19; !(_iteratorNormalCompletion19 = (_step19 = _iterator19.next()).done); _iteratorNormalCompletion19 = true) {
|
|
1259
|
+
var name5 = _step19.value;
|
|
1260
|
+
if (!clientNeeded.has(name5)) {
|
|
1261
|
+
exclusiveServerBindings.add(name5);
|
|
1262
|
+
}
|
|
1263
|
+
}
|
|
1264
|
+
} catch (err) {
|
|
1265
|
+
_didIteratorError19 = true;
|
|
1266
|
+
_iteratorError19 = err;
|
|
1267
|
+
} finally {
|
|
1268
|
+
try {
|
|
1269
|
+
if (!_iteratorNormalCompletion19 && _iterator19.return != null) {
|
|
1270
|
+
_iterator19.return();
|
|
1271
|
+
}
|
|
1272
|
+
} finally {
|
|
1273
|
+
if (_didIteratorError19) {
|
|
1274
|
+
throw _iteratorError19;
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
}
|
|
1278
|
+
var s = new import_magic_string.default(code);
|
|
1279
|
+
var _iteratorNormalCompletion20 = true,
|
|
1280
|
+
_didIteratorError20 = false,
|
|
1281
|
+
_iteratorError20 = void 0;
|
|
1282
|
+
try {
|
|
1283
|
+
for (var _iterator20 = serverExportStmts[Symbol.iterator](), _step20; !(_iteratorNormalCompletion20 = (_step20 = _iterator20.next()).done); _iteratorNormalCompletion20 = true) {
|
|
1284
|
+
var [stmt3, info2] = _step20.value;
|
|
1285
|
+
var stubs = [];
|
|
1286
|
+
if (info2.names.has("loader")) {
|
|
1287
|
+
if (root) {
|
|
1288
|
+
var fromRoot = (0, import_path.relative)(root, id).replace(/\\/g, "/");
|
|
1289
|
+
var prefix = routerRoot.replace(/^\.\//, "").replace(/\/$/, "") + "/";
|
|
1290
|
+
var routeId = "./" + (fromRoot.startsWith(prefix) ? fromRoot.slice(prefix.length) : fromRoot);
|
|
1291
|
+
stubs.push((0, import_constants.makeLoaderRouteIdStub)(routeId));
|
|
1292
|
+
} else {
|
|
1293
|
+
stubs.push(import_constants.EMPTY_LOADER_STRING);
|
|
1294
|
+
}
|
|
1295
|
+
}
|
|
1296
|
+
if (info2.names.has("generateStaticParams")) {
|
|
1297
|
+
stubs.push("export function generateStaticParams() {};");
|
|
1298
|
+
}
|
|
1299
|
+
if (info2.replaceAll) {
|
|
1300
|
+
s.overwrite(stmt3.start, stmt3.end, stubs.join("\n"));
|
|
1301
|
+
} else {
|
|
1302
|
+
var decl1 = stmt3.declaration;
|
|
1303
|
+
for (var i = decl1.declarations.length - 1; i >= 0; i--) {
|
|
1304
|
+
var d5 = decl1.declarations[i];
|
|
1305
|
+
if (info2.declaratorsToRemove.has(d5)) {
|
|
1306
|
+
if (i === 0) {
|
|
1307
|
+
var next = decl1.declarations[1];
|
|
1308
|
+
s.remove(d5.start, next.start);
|
|
1309
|
+
} else {
|
|
1310
|
+
var prev = decl1.declarations[i - 1];
|
|
1311
|
+
s.remove(prev.end, d5.end);
|
|
1312
|
+
}
|
|
1313
|
+
}
|
|
1314
|
+
}
|
|
1315
|
+
s.appendRight(stmt3.end, "\n" + stubs.join("\n"));
|
|
1316
|
+
}
|
|
1317
|
+
}
|
|
1318
|
+
} catch (err) {
|
|
1319
|
+
_didIteratorError20 = true;
|
|
1320
|
+
_iteratorError20 = err;
|
|
1321
|
+
} finally {
|
|
1322
|
+
try {
|
|
1323
|
+
if (!_iteratorNormalCompletion20 && _iterator20.return != null) {
|
|
1324
|
+
_iterator20.return();
|
|
1325
|
+
}
|
|
1326
|
+
} finally {
|
|
1327
|
+
if (_didIteratorError20) {
|
|
1328
|
+
throw _iteratorError20;
|
|
1329
|
+
}
|
|
1330
|
+
}
|
|
1331
|
+
}
|
|
1332
|
+
var _iteratorNormalCompletion21 = true,
|
|
1333
|
+
_didIteratorError21 = false,
|
|
1334
|
+
_iteratorError21 = void 0;
|
|
1335
|
+
try {
|
|
1336
|
+
for (var _iterator21 = ast.body[Symbol.iterator](), _step21; !(_iteratorNormalCompletion21 = (_step21 = _iterator21.next()).done); _iteratorNormalCompletion21 = true) {
|
|
1337
|
+
var stmt4 = _step21.value;
|
|
1338
|
+
if (serverExportStmts.has(stmt4) || stmt4.type === "ImportDeclaration") continue;
|
|
1339
|
+
if ((stmt4.type === "FunctionDeclaration" || stmt4.type === "ClassDeclaration" || stmt4.type === "TSEnumDeclaration") && stmt4.id && exclusiveServerBindings.has(stmt4.id.name)) {
|
|
1340
|
+
var end = stmt4.end;
|
|
1341
|
+
if (code[end] === ";") end++;
|
|
1342
|
+
if (code[end] === "\r" && code[end + 1] === "\n") end += 2;else if (code[end] === "\n") end += 1;
|
|
1343
|
+
s.remove(stmt4.start, end);
|
|
1344
|
+
} else if (stmt4.type === "VariableDeclaration") {
|
|
1345
|
+
var allExclusive = stmt4.declarations.every(function (d7) {
|
|
1346
|
+
var names4 = /* @__PURE__ */new Set();
|
|
1347
|
+
extractPatternBindings(d7.id, names4);
|
|
1348
|
+
return Array.from(names4).every(function (n) {
|
|
1349
|
+
return exclusiveServerBindings.has(n);
|
|
1350
|
+
});
|
|
1351
|
+
});
|
|
1352
|
+
if (allExclusive) {
|
|
1353
|
+
var end1 = stmt4.end;
|
|
1354
|
+
if (code[end1] === ";") end1++;
|
|
1355
|
+
if (code[end1] === "\r" && code[end1 + 1] === "\n") end1 += 2;else if (code[end1] === "\n") end1 += 1;
|
|
1356
|
+
s.remove(stmt4.start, end1);
|
|
1357
|
+
} else {
|
|
1358
|
+
for (var i1 = stmt4.declarations.length - 1; i1 >= 0; i1--) {
|
|
1359
|
+
var d6 = stmt4.declarations[i1];
|
|
1360
|
+
var names3 = /* @__PURE__ */new Set();
|
|
1361
|
+
extractPatternBindings(d6.id, names3);
|
|
1362
|
+
if (Array.from(names3).every(function (n) {
|
|
1363
|
+
return exclusiveServerBindings.has(n);
|
|
1364
|
+
})) {
|
|
1365
|
+
if (i1 === 0) {
|
|
1366
|
+
var next1 = stmt4.declarations[1];
|
|
1367
|
+
s.remove(d6.start, next1.start);
|
|
1368
|
+
} else {
|
|
1369
|
+
var prev1 = stmt4.declarations[i1 - 1];
|
|
1370
|
+
s.remove(prev1.end, d6.end);
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
}
|
|
1374
|
+
}
|
|
1375
|
+
} else if (stmt4.type === "ClassDeclaration" && stmt4.id && exclusiveServerBindings.has(stmt4.id.name)) {
|
|
1376
|
+
var end2 = stmt4.end;
|
|
1377
|
+
if (code[end2] === ";") end2++;
|
|
1378
|
+
if (code[end2] === "\r" && code[end2 + 1] === "\n") end2 += 2;else if (code[end2] === "\n") end2 += 1;
|
|
1379
|
+
s.remove(stmt4.start, end2);
|
|
1380
|
+
}
|
|
1381
|
+
}
|
|
1382
|
+
} catch (err) {
|
|
1383
|
+
_didIteratorError21 = true;
|
|
1384
|
+
_iteratorError21 = err;
|
|
1385
|
+
} finally {
|
|
1386
|
+
try {
|
|
1387
|
+
if (!_iteratorNormalCompletion21 && _iterator21.return != null) {
|
|
1388
|
+
_iterator21.return();
|
|
1389
|
+
}
|
|
1390
|
+
} finally {
|
|
1391
|
+
if (_didIteratorError21) {
|
|
1392
|
+
throw _iteratorError21;
|
|
1393
|
+
}
|
|
1394
|
+
}
|
|
1395
|
+
}
|
|
1396
|
+
var _iteratorNormalCompletion22 = true,
|
|
1397
|
+
_didIteratorError22 = false,
|
|
1398
|
+
_iteratorError22 = void 0;
|
|
1399
|
+
try {
|
|
1400
|
+
for (var _iterator22 = ast.body[Symbol.iterator](), _step22; !(_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done); _iteratorNormalCompletion22 = true) {
|
|
1401
|
+
var stmt5 = _step22.value;
|
|
1402
|
+
if (stmt5.type !== "ImportDeclaration") continue;
|
|
1403
|
+
if (stmt5.importKind === "type") continue;
|
|
1404
|
+
if (!stmt5.specifiers || stmt5.specifiers.length === 0) continue;
|
|
1405
|
+
var kept = stmt5.specifiers.filter(function (sp2) {
|
|
1406
|
+
if (sp2.importKind === "type") return true;
|
|
1407
|
+
return !exclusiveServerBindings.has(sp2.local.name);
|
|
1408
|
+
});
|
|
1409
|
+
if (kept.length === 0) {
|
|
1410
|
+
var end3 = stmt5.end;
|
|
1411
|
+
if (code[end3] === ";") end3++;
|
|
1412
|
+
if (code[end3] === "\r" && code[end3 + 1] === "\n") end3 += 2;else if (code[end3] === "\n") end3 += 1;
|
|
1413
|
+
s.remove(stmt5.start, end3);
|
|
1414
|
+
} else if (kept.length < stmt5.specifiers.length) {
|
|
1415
|
+
var declCode = code.slice(stmt5.start, stmt5.source.start);
|
|
1416
|
+
var prefixMatch = declCode.match(/^import\s+/);
|
|
1417
|
+
var prefixEnd = stmt5.start + (prefixMatch ? prefixMatch[0].length : 7);
|
|
1418
|
+
var pos = stmt5.source.start - 1;
|
|
1419
|
+
while (pos >= 0 && /\s/.test(code[pos])) pos--;
|
|
1420
|
+
var fromStart = pos - 3;
|
|
1421
|
+
var defaultSpec = kept.find(function (sp2) {
|
|
1422
|
+
return sp2.type === "ImportDefaultSpecifier";
|
|
1423
|
+
});
|
|
1424
|
+
var namespaceSpec = kept.find(function (sp2) {
|
|
1425
|
+
return sp2.type === "ImportNamespaceSpecifier";
|
|
1426
|
+
});
|
|
1427
|
+
var namedSpecs = kept.filter(function (sp2) {
|
|
1428
|
+
return sp2.type === "ImportSpecifier";
|
|
1429
|
+
});
|
|
1430
|
+
var parts = [];
|
|
1431
|
+
if (defaultSpec) parts.push(defaultSpec.local.name);
|
|
1432
|
+
if (namespaceSpec) parts.push("* as " + namespaceSpec.local.name);
|
|
1433
|
+
if (namedSpecs.length > 0) {
|
|
1434
|
+
var namedStr = namedSpecs.map(function (sp2) {
|
|
1435
|
+
var typePrefix = sp2.importKind === "type" ? "type " : "";
|
|
1436
|
+
var importedName = sp2.imported.raw || sp2.imported.name;
|
|
1437
|
+
if (importedName === sp2.local.name) {
|
|
1438
|
+
return typePrefix + sp2.local.name;
|
|
1439
|
+
}
|
|
1440
|
+
return typePrefix + importedName + " as " + sp2.local.name;
|
|
1441
|
+
}).join(", ");
|
|
1442
|
+
parts.push("{ " + namedStr + " }");
|
|
1443
|
+
}
|
|
1444
|
+
s.overwrite(prefixEnd, fromStart, parts.join(", ") + " ");
|
|
1445
|
+
}
|
|
1446
|
+
}
|
|
1447
|
+
} catch (err) {
|
|
1448
|
+
_didIteratorError22 = true;
|
|
1449
|
+
_iteratorError22 = err;
|
|
1450
|
+
} finally {
|
|
1451
|
+
try {
|
|
1452
|
+
if (!_iteratorNormalCompletion22 && _iterator22.return != null) {
|
|
1453
|
+
_iterator22.return();
|
|
1454
|
+
}
|
|
1455
|
+
} finally {
|
|
1456
|
+
if (_didIteratorError22) {
|
|
1457
|
+
throw _iteratorError22;
|
|
1458
|
+
}
|
|
1459
|
+
}
|
|
1460
|
+
}
|
|
1461
|
+
console.info(` \u{1F9F9} [one] ${(0, import_path.relative)(process.cwd(), id)} removed ${removedFunctions.length} server-only exports`);
|
|
1462
|
+
return {
|
|
1463
|
+
code: s.toString(),
|
|
1464
|
+
map: s.generateMap({
|
|
1465
|
+
hires: "boundary",
|
|
1466
|
+
source: id,
|
|
1467
|
+
includeContent: true
|
|
1468
|
+
})
|
|
1469
|
+
};
|
|
225
1470
|
}
|
|
226
1471
|
//# sourceMappingURL=clientTreeShakePlugin.native.js.map
|