@modern-js/app-tools 2.63.2 → 2.63.3
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/compat/hooks.js +16 -1
- package/dist/cjs/compat/index.js +3 -1
- package/dist/cjs/compat/utils.js +29 -8
- package/dist/cjs/plugins/deploy/platforms/netlify.js +7 -4
- package/dist/cjs/plugins/deploy/platforms/node.js +6 -3
- package/dist/cjs/plugins/deploy/platforms/vercel.js +7 -4
- package/dist/esm/compat/hooks.js +83 -24
- package/dist/esm/compat/index.js +4 -2
- package/dist/esm/compat/utils.js +29 -8
- package/dist/esm/plugins/deploy/platforms/netlify.js +6 -3
- package/dist/esm/plugins/deploy/platforms/node.js +5 -2
- package/dist/esm/plugins/deploy/platforms/vercel.js +6 -3
- package/dist/esm-node/compat/hooks.js +16 -1
- package/dist/esm-node/compat/index.js +4 -2
- package/dist/esm-node/compat/utils.js +29 -8
- package/dist/esm-node/plugins/deploy/platforms/netlify.js +6 -3
- package/dist/esm-node/plugins/deploy/platforms/node.js +5 -2
- package/dist/esm-node/plugins/deploy/platforms/vercel.js +6 -3
- package/dist/types/compat/utils.d.ts +8 -1
- package/package.json +19 -23
- package/dist/cjs/plugins/deploy/dependencies/index.js +0 -237
- package/dist/cjs/plugins/deploy/dependencies/utils.js +0 -179
- package/dist/cjs/plugins/deploy/exports.js +0 -28
- package/dist/esm/plugins/deploy/dependencies/index.js +0 -615
- package/dist/esm/plugins/deploy/dependencies/utils.js +0 -421
- package/dist/esm/plugins/deploy/exports.js +0 -4
- package/dist/esm-node/plugins/deploy/dependencies/index.js +0 -202
- package/dist/esm-node/plugins/deploy/dependencies/utils.js +0 -137
- package/dist/esm-node/plugins/deploy/exports.js +0 -4
- package/dist/types/plugins/deploy/dependencies/index.d.ts +0 -20
- package/dist/types/plugins/deploy/dependencies/utils.d.ts +0 -44
- package/dist/types/plugins/deploy/exports.d.ts +0 -1
package/dist/cjs/compat/hooks.js
CHANGED
@@ -71,6 +71,14 @@ function getHookRunners(context) {
|
|
71
71
|
const result = await (hooks === null || hooks === void 0 ? void 0 : hooks.appendEntryCode.call(params));
|
72
72
|
return result;
|
73
73
|
},
|
74
|
+
// test plugin hooks
|
75
|
+
jestConfig: async (utils) => {
|
76
|
+
const result = await (hooks === null || hooks === void 0 ? void 0 : hooks.jestConfig.call(utils, (utils2) => utils2));
|
77
|
+
return result;
|
78
|
+
},
|
79
|
+
afterTest: async () => {
|
80
|
+
return hooks.afterTest.call();
|
81
|
+
},
|
74
82
|
/**
|
75
83
|
* common hooks
|
76
84
|
*/
|
@@ -160,7 +168,14 @@ function handleSetupResult(setupResult, api) {
|
|
160
168
|
if (typeof fn === "function") {
|
161
169
|
const newAPI = (0, import_utils.transformHookRunner)(key);
|
162
170
|
if (api[newAPI]) {
|
163
|
-
api[newAPI](async (params) =>
|
171
|
+
api[newAPI](async (...params) => {
|
172
|
+
const { isMultiple, params: transformParams } = (0, import_utils.transformHookParams)(key, params);
|
173
|
+
if (isMultiple) {
|
174
|
+
return (0, import_utils.transformHookResult)(key, await fn(...transformParams));
|
175
|
+
} else {
|
176
|
+
return (0, import_utils.transformHookResult)(key, await fn(transformParams));
|
177
|
+
}
|
178
|
+
});
|
164
179
|
}
|
165
180
|
}
|
166
181
|
});
|
package/dist/cjs/compat/index.js
CHANGED
@@ -49,7 +49,9 @@ const compatPlugin = () => ({
|
|
49
49
|
};
|
50
50
|
},
|
51
51
|
registryHooks: {
|
52
|
-
appendEntryCode: (0, import_plugin_v2.createCollectAsyncHook)()
|
52
|
+
appendEntryCode: (0, import_plugin_v2.createCollectAsyncHook)(),
|
53
|
+
jestConfig: (0, import_plugin_v2.createAsyncHook)(),
|
54
|
+
afterTest: (0, import_plugin_v2.createAsyncHook)()
|
53
55
|
},
|
54
56
|
setup: (api) => {
|
55
57
|
api.updateAppContext({
|
package/dist/cjs/compat/utils.js
CHANGED
@@ -23,6 +23,7 @@ __export(utils_exports, {
|
|
23
23
|
transformHookRunner: () => transformHookRunner
|
24
24
|
});
|
25
25
|
module.exports = __toCommonJS(utils_exports);
|
26
|
+
var import_getHtmlTemplate = require("../plugins/analyze/getHtmlTemplate");
|
26
27
|
function transformHookRunner(hookRunnerName) {
|
27
28
|
switch (hookRunnerName) {
|
28
29
|
case "beforeConfig":
|
@@ -73,25 +74,45 @@ function transformHookParams(hookRunnerName, params) {
|
|
73
74
|
switch (hookRunnerName) {
|
74
75
|
case "resolvedConfig":
|
75
76
|
return {
|
76
|
-
|
77
|
+
isMultiple: false,
|
78
|
+
params: {
|
79
|
+
resolved: params[0]
|
80
|
+
}
|
77
81
|
};
|
78
82
|
case "htmlPartials":
|
79
83
|
return {
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
84
|
+
isMultiple: false,
|
85
|
+
params: {
|
86
|
+
partials: {
|
87
|
+
top: params[0].partials.top.current,
|
88
|
+
head: params[0].partials.head.current,
|
89
|
+
body: params[0].partials.body.current
|
90
|
+
},
|
91
|
+
entrypoint: params[0].entrypoint
|
92
|
+
}
|
86
93
|
};
|
94
|
+
case "jestConfig": {
|
95
|
+
return {
|
96
|
+
isMultiple: true,
|
97
|
+
params
|
98
|
+
};
|
99
|
+
}
|
87
100
|
default:
|
88
|
-
return
|
101
|
+
return {
|
102
|
+
isMultiple: false,
|
103
|
+
params: params[0]
|
104
|
+
};
|
89
105
|
}
|
90
106
|
}
|
91
107
|
function transformHookResult(hookRunnerName, result) {
|
92
108
|
switch (hookRunnerName) {
|
93
109
|
case "resolvedConfig":
|
94
110
|
return result.resolved;
|
111
|
+
case "htmlPartials":
|
112
|
+
return {
|
113
|
+
partials: (0, import_getHtmlTemplate.getModifyHtmlPartials)(result.partials),
|
114
|
+
entrypoint: result.entrypoint
|
115
|
+
};
|
95
116
|
default:
|
96
117
|
return result;
|
97
118
|
}
|
@@ -33,8 +33,8 @@ __export(netlify_exports, {
|
|
33
33
|
module.exports = __toCommonJS(netlify_exports);
|
34
34
|
var import_node_path = __toESM(require("node:path"));
|
35
35
|
var import_utils = require("@modern-js/utils");
|
36
|
+
var import_ndepe = require("ndepe");
|
36
37
|
var import_routes = require("../../../utils/routes");
|
37
|
-
var import_dependencies = require("../dependencies");
|
38
38
|
var import_utils2 = require("../utils");
|
39
39
|
async function cleanDistDirectory(dir) {
|
40
40
|
try {
|
@@ -136,12 +136,15 @@ const createNetlifyPreset = (appContext, modernConfig, needModernServer) => {
|
|
136
136
|
if (!needModernServer) {
|
137
137
|
return;
|
138
138
|
}
|
139
|
-
await (0,
|
139
|
+
await (0, import_ndepe.nodeDepEmit)({
|
140
140
|
appDir: appDirectory,
|
141
|
-
|
141
|
+
sourceDir: funcsDirectory,
|
142
142
|
includeEntries: [
|
143
143
|
require.resolve("@modern-js/prod-server")
|
144
|
-
]
|
144
|
+
],
|
145
|
+
copyWholePackage(pkgName) {
|
146
|
+
return pkgName === "@modern-js/utils";
|
147
|
+
}
|
145
148
|
});
|
146
149
|
}
|
147
150
|
};
|
@@ -33,7 +33,7 @@ __export(node_exports, {
|
|
33
33
|
module.exports = __toCommonJS(node_exports);
|
34
34
|
var import_node_path = __toESM(require("node:path"));
|
35
35
|
var import_utils = require("@modern-js/utils");
|
36
|
-
var
|
36
|
+
var import_ndepe = require("ndepe");
|
37
37
|
var import_utils2 = require("../utils");
|
38
38
|
const createNodePreset = (appContext, config) => {
|
39
39
|
const { appDirectory, distDirectory, serverPlugins, moduleType } = appContext;
|
@@ -90,12 +90,15 @@ const createNodePreset = (appContext, config) => {
|
|
90
90
|
const filter = (filePath) => {
|
91
91
|
return !filePath.startsWith(staticDirectory);
|
92
92
|
};
|
93
|
-
await (0,
|
93
|
+
await (0, import_ndepe.nodeDepEmit)({
|
94
94
|
appDir: appDirectory,
|
95
|
-
|
95
|
+
sourceDir: outputDirectory,
|
96
96
|
includeEntries: [
|
97
97
|
require.resolve("@modern-js/prod-server")
|
98
98
|
],
|
99
|
+
copyWholePackage(pkgName) {
|
100
|
+
return pkgName === "@modern-js/utils";
|
101
|
+
},
|
99
102
|
entryFilter: filter
|
100
103
|
});
|
101
104
|
}
|
@@ -33,8 +33,8 @@ __export(vercel_exports, {
|
|
33
33
|
module.exports = __toCommonJS(vercel_exports);
|
34
34
|
var import_node_path = __toESM(require("node:path"));
|
35
35
|
var import_utils = require("@modern-js/utils");
|
36
|
+
var import_ndepe = require("ndepe");
|
36
37
|
var import_routes = require("../../../utils/routes");
|
37
|
-
var import_dependencies = require("../dependencies");
|
38
38
|
var import_utils2 = require("../utils");
|
39
39
|
const createVercelPreset = (appContext, modernConfig, needModernServer) => {
|
40
40
|
const { appDirectory, distDirectory, entrypoints, serverPlugins, moduleType } = appContext;
|
@@ -148,12 +148,15 @@ const createVercelPreset = (appContext, modernConfig, needModernServer) => {
|
|
148
148
|
if (!needModernServer) {
|
149
149
|
return;
|
150
150
|
}
|
151
|
-
await (0,
|
151
|
+
await (0, import_ndepe.nodeDepEmit)({
|
152
152
|
appDir: appDirectory,
|
153
|
-
|
153
|
+
sourceDir: funcsDirectory,
|
154
154
|
includeEntries: [
|
155
155
|
require.resolve("@modern-js/prod-server")
|
156
|
-
]
|
156
|
+
],
|
157
|
+
copyWholePackage(pkgName) {
|
158
|
+
return pkgName === "@modern-js/utils";
|
159
|
+
}
|
157
160
|
});
|
158
161
|
}
|
159
162
|
};
|
package/dist/esm/compat/hooks.js
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
2
|
+
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
|
2
3
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
3
4
|
import { getModifyHtmlPartials } from "../plugins/analyze/getHtmlTemplate";
|
4
5
|
import { transformHookParams, transformHookResult, transformHookRunner } from "./utils";
|
@@ -173,6 +174,40 @@ function getHookRunners(context) {
|
|
173
174
|
return _ref.apply(this, arguments);
|
174
175
|
};
|
175
176
|
}(),
|
177
|
+
// test plugin hooks
|
178
|
+
jestConfig: function() {
|
179
|
+
var _ref = _async_to_generator(function(utils) {
|
180
|
+
var result;
|
181
|
+
return _ts_generator(this, function(_state) {
|
182
|
+
switch (_state.label) {
|
183
|
+
case 0:
|
184
|
+
return [
|
185
|
+
4,
|
186
|
+
hooks === null || hooks === void 0 ? void 0 : hooks.jestConfig.call(utils, function(utils2) {
|
187
|
+
return utils2;
|
188
|
+
})
|
189
|
+
];
|
190
|
+
case 1:
|
191
|
+
result = _state.sent();
|
192
|
+
return [
|
193
|
+
2,
|
194
|
+
result
|
195
|
+
];
|
196
|
+
}
|
197
|
+
});
|
198
|
+
});
|
199
|
+
return function(utils) {
|
200
|
+
return _ref.apply(this, arguments);
|
201
|
+
};
|
202
|
+
}(),
|
203
|
+
afterTest: /* @__PURE__ */ _async_to_generator(function() {
|
204
|
+
return _ts_generator(this, function(_state) {
|
205
|
+
return [
|
206
|
+
2,
|
207
|
+
hooks.afterTest.call()
|
208
|
+
];
|
209
|
+
});
|
210
|
+
}),
|
176
211
|
/**
|
177
212
|
* common hooks
|
178
213
|
*/
|
@@ -415,33 +450,57 @@ function handleSetupResult(setupResult, api) {
|
|
415
450
|
if (typeof fn === "function") {
|
416
451
|
var newAPI = transformHookRunner(key);
|
417
452
|
if (api[newAPI]) {
|
418
|
-
api[newAPI](function() {
|
419
|
-
var
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
fn(transformHookParams(key, params))
|
430
|
-
];
|
431
|
-
case 1:
|
453
|
+
api[newAPI](/* @__PURE__ */ _async_to_generator(function() {
|
454
|
+
var _len, params, _key, _transformHookParams, isMultiple, transformParams, _tmp, _tmp1;
|
455
|
+
var _arguments = arguments;
|
456
|
+
return _ts_generator(this, function(_state) {
|
457
|
+
switch (_state.label) {
|
458
|
+
case 0:
|
459
|
+
for (_len = _arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {
|
460
|
+
params[_key] = _arguments[_key];
|
461
|
+
}
|
462
|
+
_transformHookParams = transformHookParams(key, params), isMultiple = _transformHookParams.isMultiple, transformParams = _transformHookParams.params;
|
463
|
+
if (!isMultiple)
|
432
464
|
return [
|
433
|
-
|
434
|
-
|
435
|
-
_state.sent()
|
436
|
-
]))
|
465
|
+
3,
|
466
|
+
2
|
437
467
|
];
|
438
|
-
|
439
|
-
|
468
|
+
_tmp = [
|
469
|
+
key
|
470
|
+
];
|
471
|
+
return [
|
472
|
+
4,
|
473
|
+
fn.apply(void 0, _to_consumable_array(transformParams))
|
474
|
+
];
|
475
|
+
case 1:
|
476
|
+
return [
|
477
|
+
2,
|
478
|
+
transformHookResult.apply(void 0, _tmp.concat([
|
479
|
+
_state.sent()
|
480
|
+
]))
|
481
|
+
];
|
482
|
+
case 2:
|
483
|
+
_tmp1 = [
|
484
|
+
key
|
485
|
+
];
|
486
|
+
return [
|
487
|
+
4,
|
488
|
+
fn(transformParams)
|
489
|
+
];
|
490
|
+
case 3:
|
491
|
+
return [
|
492
|
+
2,
|
493
|
+
transformHookResult.apply(void 0, _tmp1.concat([
|
494
|
+
_state.sent()
|
495
|
+
]))
|
496
|
+
];
|
497
|
+
case 4:
|
498
|
+
return [
|
499
|
+
2
|
500
|
+
];
|
501
|
+
}
|
440
502
|
});
|
441
|
-
|
442
|
-
return _ref.apply(this, arguments);
|
443
|
-
};
|
444
|
-
}());
|
503
|
+
}));
|
445
504
|
}
|
446
505
|
}
|
447
506
|
});
|
package/dist/esm/compat/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { _ as _object_without_properties } from "@swc/helpers/_/_object_without_properties";
|
2
|
-
import { createCollectAsyncHook } from "@modern-js/plugin-v2";
|
2
|
+
import { createAsyncHook, createCollectAsyncHook } from "@modern-js/plugin-v2";
|
3
3
|
import { getHookRunners } from "./hooks";
|
4
4
|
var compatPlugin = function() {
|
5
5
|
return {
|
@@ -30,7 +30,9 @@ var compatPlugin = function() {
|
|
30
30
|
};
|
31
31
|
},
|
32
32
|
registryHooks: {
|
33
|
-
appendEntryCode: createCollectAsyncHook()
|
33
|
+
appendEntryCode: createCollectAsyncHook(),
|
34
|
+
jestConfig: createAsyncHook(),
|
35
|
+
afterTest: createAsyncHook()
|
34
36
|
},
|
35
37
|
setup: function(api) {
|
36
38
|
api.updateAppContext({
|
package/dist/esm/compat/utils.js
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getModifyHtmlPartials } from "../plugins/analyze/getHtmlTemplate";
|
1
2
|
function transformHookRunner(hookRunnerName) {
|
2
3
|
switch (hookRunnerName) {
|
3
4
|
case "beforeConfig":
|
@@ -48,25 +49,45 @@ function transformHookParams(hookRunnerName, params) {
|
|
48
49
|
switch (hookRunnerName) {
|
49
50
|
case "resolvedConfig":
|
50
51
|
return {
|
51
|
-
|
52
|
+
isMultiple: false,
|
53
|
+
params: {
|
54
|
+
resolved: params[0]
|
55
|
+
}
|
52
56
|
};
|
53
57
|
case "htmlPartials":
|
54
58
|
return {
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
59
|
+
isMultiple: false,
|
60
|
+
params: {
|
61
|
+
partials: {
|
62
|
+
top: params[0].partials.top.current,
|
63
|
+
head: params[0].partials.head.current,
|
64
|
+
body: params[0].partials.body.current
|
65
|
+
},
|
66
|
+
entrypoint: params[0].entrypoint
|
67
|
+
}
|
61
68
|
};
|
69
|
+
case "jestConfig": {
|
70
|
+
return {
|
71
|
+
isMultiple: true,
|
72
|
+
params
|
73
|
+
};
|
74
|
+
}
|
62
75
|
default:
|
63
|
-
return
|
76
|
+
return {
|
77
|
+
isMultiple: false,
|
78
|
+
params: params[0]
|
79
|
+
};
|
64
80
|
}
|
65
81
|
}
|
66
82
|
function transformHookResult(hookRunnerName, result) {
|
67
83
|
switch (hookRunnerName) {
|
68
84
|
case "resolvedConfig":
|
69
85
|
return result.resolved;
|
86
|
+
case "htmlPartials":
|
87
|
+
return {
|
88
|
+
partials: getModifyHtmlPartials(result.partials),
|
89
|
+
entrypoint: result.entrypoint
|
90
|
+
};
|
70
91
|
default:
|
71
92
|
return result;
|
72
93
|
}
|
@@ -2,8 +2,8 @@ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
3
3
|
import path from "node:path";
|
4
4
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, fs as fse } from "@modern-js/utils";
|
5
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
5
6
|
import { isMainEntry } from "../../../utils/routes";
|
6
|
-
import { handleDependencies } from "../dependencies";
|
7
7
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
8
8
|
function cleanDistDirectory(dir) {
|
9
9
|
return _cleanDistDirectory.apply(this, arguments);
|
@@ -306,10 +306,13 @@ var createNetlifyPreset = function(appContext, modernConfig, needModernServer) {
|
|
306
306
|
4,
|
307
307
|
handleDependencies({
|
308
308
|
appDir: appDirectory,
|
309
|
-
|
309
|
+
sourceDir: funcsDirectory,
|
310
310
|
includeEntries: [
|
311
311
|
require.resolve("@modern-js/prod-server")
|
312
|
-
]
|
312
|
+
],
|
313
|
+
copyWholePackage: function copyWholePackage(pkgName) {
|
314
|
+
return pkgName === "@modern-js/utils";
|
315
|
+
}
|
313
316
|
})
|
314
317
|
];
|
315
318
|
case 3:
|
@@ -2,7 +2,7 @@ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
3
3
|
import path from "node:path";
|
4
4
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, chalk, fs as fse } from "@modern-js/utils";
|
5
|
-
import { handleDependencies } from "
|
5
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
6
6
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
7
7
|
var createNodePreset = function(appContext, config) {
|
8
8
|
var appDirectory = appContext.appDirectory, distDirectory = appContext.distDirectory, serverPlugins = appContext.serverPlugins, moduleType = appContext.moduleType;
|
@@ -139,10 +139,13 @@ var createNodePreset = function(appContext, config) {
|
|
139
139
|
4,
|
140
140
|
handleDependencies({
|
141
141
|
appDir: appDirectory,
|
142
|
-
|
142
|
+
sourceDir: outputDirectory,
|
143
143
|
includeEntries: [
|
144
144
|
require.resolve("@modern-js/prod-server")
|
145
145
|
],
|
146
|
+
copyWholePackage: function copyWholePackage(pkgName) {
|
147
|
+
return pkgName === "@modern-js/utils";
|
148
|
+
},
|
146
149
|
entryFilter: filter
|
147
150
|
})
|
148
151
|
];
|
@@ -2,8 +2,8 @@ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
|
|
2
2
|
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
|
3
3
|
import path from "node:path";
|
4
4
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, fs as fse } from "@modern-js/utils";
|
5
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
5
6
|
import { isMainEntry } from "../../../utils/routes";
|
6
|
-
import { handleDependencies } from "../dependencies";
|
7
7
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
8
8
|
var createVercelPreset = function(appContext, modernConfig, needModernServer) {
|
9
9
|
var appDirectory = appContext.appDirectory, distDirectory = appContext.distDirectory, entrypoints = appContext.entrypoints, serverPlugins = appContext.serverPlugins, moduleType = appContext.moduleType;
|
@@ -240,10 +240,13 @@ var createVercelPreset = function(appContext, modernConfig, needModernServer) {
|
|
240
240
|
4,
|
241
241
|
handleDependencies({
|
242
242
|
appDir: appDirectory,
|
243
|
-
|
243
|
+
sourceDir: funcsDirectory,
|
244
244
|
includeEntries: [
|
245
245
|
require.resolve("@modern-js/prod-server")
|
246
|
-
]
|
246
|
+
],
|
247
|
+
copyWholePackage: function copyWholePackage(pkgName) {
|
248
|
+
return pkgName === "@modern-js/utils";
|
249
|
+
}
|
247
250
|
})
|
248
251
|
];
|
249
252
|
case 1:
|
@@ -47,6 +47,14 @@ function getHookRunners(context) {
|
|
47
47
|
const result = await (hooks === null || hooks === void 0 ? void 0 : hooks.appendEntryCode.call(params));
|
48
48
|
return result;
|
49
49
|
},
|
50
|
+
// test plugin hooks
|
51
|
+
jestConfig: async (utils) => {
|
52
|
+
const result = await (hooks === null || hooks === void 0 ? void 0 : hooks.jestConfig.call(utils, (utils2) => utils2));
|
53
|
+
return result;
|
54
|
+
},
|
55
|
+
afterTest: async () => {
|
56
|
+
return hooks.afterTest.call();
|
57
|
+
},
|
50
58
|
/**
|
51
59
|
* common hooks
|
52
60
|
*/
|
@@ -136,7 +144,14 @@ function handleSetupResult(setupResult, api) {
|
|
136
144
|
if (typeof fn === "function") {
|
137
145
|
const newAPI = transformHookRunner(key);
|
138
146
|
if (api[newAPI]) {
|
139
|
-
api[newAPI](async (params) =>
|
147
|
+
api[newAPI](async (...params) => {
|
148
|
+
const { isMultiple, params: transformParams } = transformHookParams(key, params);
|
149
|
+
if (isMultiple) {
|
150
|
+
return transformHookResult(key, await fn(...transformParams));
|
151
|
+
} else {
|
152
|
+
return transformHookResult(key, await fn(transformParams));
|
153
|
+
}
|
154
|
+
});
|
140
155
|
}
|
141
156
|
}
|
142
157
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { createCollectAsyncHook } from "@modern-js/plugin-v2";
|
1
|
+
import { createAsyncHook, createCollectAsyncHook } from "@modern-js/plugin-v2";
|
2
2
|
import { getHookRunners } from "./hooks";
|
3
3
|
const compatPlugin = () => ({
|
4
4
|
name: "@modern-js/app-tools-compat",
|
@@ -26,7 +26,9 @@ const compatPlugin = () => ({
|
|
26
26
|
};
|
27
27
|
},
|
28
28
|
registryHooks: {
|
29
|
-
appendEntryCode: createCollectAsyncHook()
|
29
|
+
appendEntryCode: createCollectAsyncHook(),
|
30
|
+
jestConfig: createAsyncHook(),
|
31
|
+
afterTest: createAsyncHook()
|
30
32
|
},
|
31
33
|
setup: (api) => {
|
32
34
|
api.updateAppContext({
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getModifyHtmlPartials } from "../plugins/analyze/getHtmlTemplate";
|
1
2
|
function transformHookRunner(hookRunnerName) {
|
2
3
|
switch (hookRunnerName) {
|
3
4
|
case "beforeConfig":
|
@@ -48,25 +49,45 @@ function transformHookParams(hookRunnerName, params) {
|
|
48
49
|
switch (hookRunnerName) {
|
49
50
|
case "resolvedConfig":
|
50
51
|
return {
|
51
|
-
|
52
|
+
isMultiple: false,
|
53
|
+
params: {
|
54
|
+
resolved: params[0]
|
55
|
+
}
|
52
56
|
};
|
53
57
|
case "htmlPartials":
|
54
58
|
return {
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
59
|
+
isMultiple: false,
|
60
|
+
params: {
|
61
|
+
partials: {
|
62
|
+
top: params[0].partials.top.current,
|
63
|
+
head: params[0].partials.head.current,
|
64
|
+
body: params[0].partials.body.current
|
65
|
+
},
|
66
|
+
entrypoint: params[0].entrypoint
|
67
|
+
}
|
61
68
|
};
|
69
|
+
case "jestConfig": {
|
70
|
+
return {
|
71
|
+
isMultiple: true,
|
72
|
+
params
|
73
|
+
};
|
74
|
+
}
|
62
75
|
default:
|
63
|
-
return
|
76
|
+
return {
|
77
|
+
isMultiple: false,
|
78
|
+
params: params[0]
|
79
|
+
};
|
64
80
|
}
|
65
81
|
}
|
66
82
|
function transformHookResult(hookRunnerName, result) {
|
67
83
|
switch (hookRunnerName) {
|
68
84
|
case "resolvedConfig":
|
69
85
|
return result.resolved;
|
86
|
+
case "htmlPartials":
|
87
|
+
return {
|
88
|
+
partials: getModifyHtmlPartials(result.partials),
|
89
|
+
entrypoint: result.entrypoint
|
90
|
+
};
|
70
91
|
default:
|
71
92
|
return result;
|
72
93
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import path from "node:path";
|
2
2
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, fs as fse } from "@modern-js/utils";
|
3
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
3
4
|
import { isMainEntry } from "../../../utils/routes";
|
4
|
-
import { handleDependencies } from "../dependencies";
|
5
5
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
6
6
|
async function cleanDistDirectory(dir) {
|
7
7
|
try {
|
@@ -105,10 +105,13 @@ const createNetlifyPreset = (appContext, modernConfig, needModernServer) => {
|
|
105
105
|
}
|
106
106
|
await handleDependencies({
|
107
107
|
appDir: appDirectory,
|
108
|
-
|
108
|
+
sourceDir: funcsDirectory,
|
109
109
|
includeEntries: [
|
110
110
|
require.resolve("@modern-js/prod-server")
|
111
|
-
]
|
111
|
+
],
|
112
|
+
copyWholePackage(pkgName) {
|
113
|
+
return pkgName === "@modern-js/utils";
|
114
|
+
}
|
112
115
|
});
|
113
116
|
}
|
114
117
|
};
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import path from "node:path";
|
2
2
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, chalk, fs as fse } from "@modern-js/utils";
|
3
|
-
import { handleDependencies } from "
|
3
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
4
4
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
5
5
|
const createNodePreset = (appContext, config) => {
|
6
6
|
const { appDirectory, distDirectory, serverPlugins, moduleType } = appContext;
|
@@ -59,10 +59,13 @@ const createNodePreset = (appContext, config) => {
|
|
59
59
|
};
|
60
60
|
await handleDependencies({
|
61
61
|
appDir: appDirectory,
|
62
|
-
|
62
|
+
sourceDir: outputDirectory,
|
63
63
|
includeEntries: [
|
64
64
|
require.resolve("@modern-js/prod-server")
|
65
65
|
],
|
66
|
+
copyWholePackage(pkgName) {
|
67
|
+
return pkgName === "@modern-js/utils";
|
68
|
+
},
|
66
69
|
entryFilter: filter
|
67
70
|
});
|
68
71
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import path from "node:path";
|
2
2
|
import { DEFAULT_SERVER_CONFIG, ROUTE_SPEC_FILE, fs as fse } from "@modern-js/utils";
|
3
|
+
import { nodeDepEmit as handleDependencies } from "ndepe";
|
3
4
|
import { isMainEntry } from "../../../utils/routes";
|
4
|
-
import { handleDependencies } from "../dependencies";
|
5
5
|
import { genPluginImportsCode, getPluginsCode, serverAppContenxtTemplate } from "../utils";
|
6
6
|
const createVercelPreset = (appContext, modernConfig, needModernServer) => {
|
7
7
|
const { appDirectory, distDirectory, entrypoints, serverPlugins, moduleType } = appContext;
|
@@ -117,10 +117,13 @@ const createVercelPreset = (appContext, modernConfig, needModernServer) => {
|
|
117
117
|
}
|
118
118
|
await handleDependencies({
|
119
119
|
appDir: appDirectory,
|
120
|
-
|
120
|
+
sourceDir: funcsDirectory,
|
121
121
|
includeEntries: [
|
122
122
|
require.resolve("@modern-js/prod-server")
|
123
|
-
]
|
123
|
+
],
|
124
|
+
copyWholePackage(pkgName) {
|
125
|
+
return pkgName === "@modern-js/utils";
|
126
|
+
}
|
124
127
|
});
|
125
128
|
}
|
126
129
|
};
|