@modern-js/monorepo-tools 2.35.0 → 2.36.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/cli/build.js +26 -9
- package/dist/cjs/cli/buildWatch.js +26 -9
- package/dist/cjs/cli/clear.js +26 -9
- package/dist/cjs/cli/deploy.js +26 -9
- package/dist/cjs/cli/index.js +30 -9
- package/dist/cjs/cli/install.js +26 -9
- package/dist/cjs/cli/new.js +29 -12
- package/dist/cjs/commands/build.js +33 -16
- package/dist/cjs/commands/buildWatch.js +32 -15
- package/dist/cjs/commands/clear.js +30 -13
- package/dist/cjs/commands/deploy.js +34 -17
- package/dist/cjs/commands/index.js +28 -8
- package/dist/cjs/commands/install.js +32 -15
- package/dist/cjs/constants.js +25 -15
- package/dist/cjs/dag/create.js +25 -9
- package/dist/cjs/dag/edgeManager.js +26 -9
- package/dist/cjs/dag/index.js +28 -11
- package/dist/cjs/dag/operator.js +59 -34
- package/dist/cjs/dag/task.js +46 -20
- package/dist/cjs/dag/utils.js +33 -25
- package/dist/cjs/features/build/index.js +51 -32
- package/dist/cjs/features/clear/index.js +47 -28
- package/dist/cjs/features/deploy/index.js +66 -41
- package/dist/cjs/features/dev/cmds.js +24 -7
- package/dist/cjs/features/dev/createTask.js +50 -31
- package/dist/cjs/features/dev/index.js +47 -21
- package/dist/cjs/features/dev/watchProjectsState.js +43 -17
- package/dist/cjs/features/install/index.js +55 -29
- package/dist/cjs/hooks/index.js +26 -9
- package/dist/cjs/index.js +45 -35
- package/dist/cjs/locale/en.js +24 -7
- package/dist/cjs/locale/index.js +31 -21
- package/dist/cjs/locale/zh.js +24 -7
- package/dist/cjs/log/error.js +24 -7
- package/dist/cjs/log/multiTasksLog.js +33 -16
- package/dist/cjs/log/time.js +29 -20
- package/dist/cjs/log/utils.js +24 -7
- package/dist/cjs/package/index.js +28 -11
- package/dist/cjs/parse-config/index.js +39 -13
- package/dist/cjs/parse-config/monorepo.js +55 -39
- package/dist/cjs/projects/checkProjectChange.js +65 -50
- package/dist/cjs/projects/clearMemoryFiles.js +39 -13
- package/dist/cjs/projects/getProjects.js +37 -27
- package/dist/cjs/projects/getProjectsByPackagesConfig.js +51 -33
- package/dist/cjs/projects/getProjectsByWorkspaceFile.js +63 -44
- package/dist/cjs/type.js +15 -3
- package/dist/cjs/utils/install.js +43 -24
- package/dist/cjs/utils/types.js +15 -3
- package/dist/esm/cli/build.js +4 -1
- package/dist/esm/cli/buildWatch.js +4 -1
- package/dist/esm/cli/clear.js +4 -1
- package/dist/esm/cli/deploy.js +4 -1
- package/dist/esm/cli/install.js +4 -1
- package/dist/esm/cli/new.js +4 -1
- package/dist/esm/commands/build.js +4 -1
- package/dist/esm/commands/buildWatch.js +4 -1
- package/dist/esm/commands/clear.js +4 -1
- package/dist/esm/commands/deploy.js +4 -1
- package/dist/esm/commands/install.js +4 -1
- package/dist/esm/constants.js +6 -2
- package/dist/esm/dag/create.js +5 -3
- package/dist/esm/dag/edgeManager.js +4 -1
- package/dist/esm/dag/index.js +4 -1
- package/dist/esm/dag/operator.js +5 -3
- package/dist/esm/dag/task.js +4 -1
- package/dist/esm/dag/utils.js +10 -4
- package/dist/esm/features/build/index.js +6 -2
- package/dist/esm/features/clear/index.js +6 -2
- package/dist/esm/features/deploy/index.js +5 -3
- package/dist/esm/features/dev/cmds.js +4 -1
- package/dist/esm/features/dev/createTask.js +6 -2
- package/dist/esm/features/dev/index.js +4 -1
- package/dist/esm/features/dev/watchProjectsState.js +4 -1
- package/dist/esm/features/install/index.js +6 -3
- package/dist/esm/hooks/index.js +4 -1
- package/dist/esm/index.js +6 -2
- package/dist/esm/locale/en.js +4 -1
- package/dist/esm/locale/index.js +4 -1
- package/dist/esm/locale/zh.js +4 -1
- package/dist/esm/log/error.js +4 -1
- package/dist/esm/log/multiTasksLog.js +4 -1
- package/dist/esm/log/time.js +8 -3
- package/dist/esm/log/utils.js +4 -1
- package/dist/esm/package/index.js +4 -1
- package/dist/esm/parse-config/index.js +4 -1
- package/dist/esm/parse-config/monorepo.js +12 -5
- package/dist/esm/projects/checkProjectChange.js +12 -5
- package/dist/esm/projects/clearMemoryFiles.js +4 -1
- package/dist/esm/projects/getProjects.js +6 -2
- package/dist/esm/projects/getProjectsByPackagesConfig.js +6 -2
- package/dist/esm/projects/getProjectsByWorkspaceFile.js +10 -6
- package/dist/esm/type.js +0 -1
- package/dist/esm/utils/install.js +6 -2
- package/dist/esm/utils/types.js +0 -1
- package/package.json +11 -11
package/dist/esm/cli/install.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { install } from "../commands";
|
|
2
|
-
|
|
2
|
+
const installCli = (program, api) => {
|
|
3
3
|
program.command("install [project...]").usage("[options]").description("install deps for some projects").action(async (installProjectNames, option) => {
|
|
4
4
|
await install(installProjectNames, option, api);
|
|
5
5
|
});
|
|
6
6
|
};
|
|
7
|
+
export {
|
|
8
|
+
installCli
|
|
9
|
+
};
|
package/dist/esm/cli/new.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MonorepoNewAction } from "@modern-js/new-action";
|
|
2
2
|
import { i18n, localeKeys } from "../locale";
|
|
3
|
-
|
|
3
|
+
const newCli = (program, locale) => {
|
|
4
4
|
program.command("new").usage("[options]").description(i18n.t(localeKeys.command.new.describe)).option("--config-file <configFile>", i18n.t(localeKeys.command.shared.config)).option("--lang <lang>", i18n.t(localeKeys.command.new.lang)).option("-c, --config <config>", i18n.t(localeKeys.command.new.config)).option("-p, --plugin <plugin>", i18n.t(localeKeys.command.new.plugin), (val, memo) => {
|
|
5
5
|
memo.push(val);
|
|
6
6
|
return memo;
|
|
@@ -11,3 +11,6 @@ export const newCli = (program, locale) => {
|
|
|
11
11
|
});
|
|
12
12
|
});
|
|
13
13
|
};
|
|
14
|
+
export {
|
|
15
|
+
newCli
|
|
16
|
+
};
|
|
@@ -2,7 +2,7 @@ import { getMonorepoBaseData } from "../parse-config/monorepo";
|
|
|
2
2
|
import { runBuildTask, runAllBuildTask } from "../features/build";
|
|
3
3
|
import { getProjects } from "../projects/getProjects";
|
|
4
4
|
import { initDAG } from "../dag";
|
|
5
|
-
|
|
5
|
+
const build = async (targetProjectName, option, api) => {
|
|
6
6
|
const { appDirectory } = api.useAppContext();
|
|
7
7
|
const { self = true, dept = false, deps = true, onlySelf = false, all = false, contentHash = false, gitHash = false } = option;
|
|
8
8
|
const projects = await getProjects({
|
|
@@ -44,3 +44,6 @@ export const build = async (targetProjectName, option, api) => {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
|
+
export {
|
|
48
|
+
build
|
|
49
|
+
};
|
|
@@ -2,7 +2,7 @@ import { getMonorepoBaseData } from "../parse-config/monorepo";
|
|
|
2
2
|
import { runBuildWatchTask } from "../features/dev";
|
|
3
3
|
import { getProjects } from "../projects/getProjects";
|
|
4
4
|
import { initDAG } from "../dag";
|
|
5
|
-
|
|
5
|
+
const buildWatch = async (targetProjectName, option, api) => {
|
|
6
6
|
const { appDirectory } = api.useAppContext();
|
|
7
7
|
const { onlySelf = false, init = false } = option;
|
|
8
8
|
const projects = await getProjects({
|
|
@@ -20,3 +20,6 @@ export const buildWatch = async (targetProjectName, option, api) => {
|
|
|
20
20
|
needInit: init
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
|
+
export {
|
|
24
|
+
buildWatch
|
|
25
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getProjects } from "../projects/getProjects";
|
|
2
2
|
import { getMonorepoBaseData } from "../parse-config/monorepo";
|
|
3
3
|
import { runClearTask } from "../features/clear";
|
|
4
|
-
|
|
4
|
+
const clear = async (projectNames, option, api) => {
|
|
5
5
|
const { removeDirs } = option;
|
|
6
6
|
const { appDirectory } = api.useAppContext();
|
|
7
7
|
const projects = await getProjects({
|
|
@@ -15,3 +15,6 @@ export const clear = async (projectNames, option, api) => {
|
|
|
15
15
|
removeDirs
|
|
16
16
|
});
|
|
17
17
|
};
|
|
18
|
+
export {
|
|
19
|
+
clear
|
|
20
|
+
};
|
|
@@ -3,7 +3,7 @@ import { initDAG } from "../dag";
|
|
|
3
3
|
import { getMonorepoBaseData } from "../parse-config/monorepo";
|
|
4
4
|
import { getProjects } from "../projects/getProjects";
|
|
5
5
|
import { deploy as runDeployTask } from "../features/deploy";
|
|
6
|
-
|
|
6
|
+
const deploy = async (api, deployProjectNames, option, ignoreMatchs = []) => {
|
|
7
7
|
const { deployPath = "output" } = option;
|
|
8
8
|
const { appDirectory } = api.useAppContext();
|
|
9
9
|
logger.info(`start deploy ${deployProjectNames.join(",")}`);
|
|
@@ -26,3 +26,6 @@ export const deploy = async (api, deployProjectNames, option, ignoreMatchs = [])
|
|
|
26
26
|
deployProjectNames
|
|
27
27
|
});
|
|
28
28
|
};
|
|
29
|
+
export {
|
|
30
|
+
deploy
|
|
31
|
+
};
|
|
@@ -2,7 +2,7 @@ import { runInstallTask } from "../features/install";
|
|
|
2
2
|
import { getMonorepoBaseData } from "../parse-config/monorepo";
|
|
3
3
|
import { getProjects } from "../projects/getProjects";
|
|
4
4
|
import { initDAG } from "../dag";
|
|
5
|
-
|
|
5
|
+
const install = async (projectNames = [], option, api) => {
|
|
6
6
|
const { appDirectory } = api.useAppContext();
|
|
7
7
|
const { auto } = option;
|
|
8
8
|
const projects = await getProjects({
|
|
@@ -19,3 +19,6 @@ export const install = async (projectNames = [], option, api) => {
|
|
|
19
19
|
auto
|
|
20
20
|
});
|
|
21
21
|
};
|
|
22
|
+
export {
|
|
23
|
+
install
|
|
24
|
+
};
|
package/dist/esm/constants.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
const WORKSPACE_FILE = {
|
|
2
2
|
LERNA: "lerna.json",
|
|
3
3
|
YARN: "package.json",
|
|
4
4
|
PNPM: "pnpm-workspace.yaml"
|
|
5
5
|
};
|
|
6
|
-
|
|
6
|
+
const LOCK_FILE = {
|
|
7
7
|
YARN: "yarn.lock",
|
|
8
8
|
PNPM: "pnpm-lock.yaml",
|
|
9
9
|
NPM: "package-lock.json"
|
|
10
10
|
};
|
|
11
|
+
export {
|
|
12
|
+
LOCK_FILE,
|
|
13
|
+
WORKSPACE_FILE
|
|
14
|
+
};
|
package/dist/esm/dag/create.js
CHANGED
|
@@ -9,9 +9,8 @@ const initProjectDependencyAndDependent = (project, projectsName, projectsMap) =
|
|
|
9
9
|
}).filter((depName) => projectsName.includes(depName));
|
|
10
10
|
project.dependent = project.dependent || [];
|
|
11
11
|
project.dependency = DependencyProjectsName.map((projectName) => {
|
|
12
|
-
var _dependencyProject;
|
|
13
12
|
const dependencyProject = projectsMap.get(projectName);
|
|
14
|
-
const dependent = (
|
|
13
|
+
const dependent = (dependencyProject === null || dependencyProject === void 0 ? void 0 : dependencyProject.dependent) || [];
|
|
15
14
|
if (
|
|
16
15
|
// 消除重复添加的情况
|
|
17
16
|
!dependent.some((p) => p.name === project.name)
|
|
@@ -26,7 +25,7 @@ const initProjectDependencyAndDependent = (project, projectsName, projectsMap) =
|
|
|
26
25
|
});
|
|
27
26
|
project.dependencyEdge = project.dependency.length;
|
|
28
27
|
};
|
|
29
|
-
|
|
28
|
+
const create = (projects) => {
|
|
30
29
|
const projectsName = [];
|
|
31
30
|
const projectsMap = /* @__PURE__ */ new Map();
|
|
32
31
|
for (const project of projects) {
|
|
@@ -41,3 +40,6 @@ export const create = (projects) => {
|
|
|
41
40
|
projectList: projectsName
|
|
42
41
|
};
|
|
43
42
|
};
|
|
43
|
+
export {
|
|
44
|
+
create
|
|
45
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
|
-
|
|
2
|
+
class EdgeManager {
|
|
3
3
|
reduceOneEdge(project) {
|
|
4
4
|
if (!(project.name in this._dependencyEdgeHash)) {
|
|
5
5
|
this._dependencyEdgeHash[project.name] = project.dependencyEdge;
|
|
@@ -26,3 +26,6 @@ export class EdgeManager {
|
|
|
26
26
|
this._dependencyEdgeHash = {};
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
+
export {
|
|
30
|
+
EdgeManager
|
|
31
|
+
};
|
package/dist/esm/dag/index.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { create } from "./create";
|
|
2
2
|
import { DagOperator } from "./operator";
|
|
3
|
-
|
|
3
|
+
const initDAG = (projects) => {
|
|
4
4
|
const { projectsMap } = create(projects);
|
|
5
5
|
const operator = new DagOperator(projects, projectsMap);
|
|
6
6
|
return operator;
|
|
7
7
|
};
|
|
8
|
+
export {
|
|
9
|
+
initDAG
|
|
10
|
+
};
|
package/dist/esm/dag/operator.js
CHANGED
|
@@ -4,7 +4,7 @@ import { errorLog } from "../log/error";
|
|
|
4
4
|
import { TaskRunner } from "./task";
|
|
5
5
|
import { EdgeManager } from "./edgeManager";
|
|
6
6
|
import { recursiveGetDependency, sortProjects } from "./utils";
|
|
7
|
-
|
|
7
|
+
class DagOperator {
|
|
8
8
|
checkNodeDataExist(name) {
|
|
9
9
|
return this._projectsMap.has(name);
|
|
10
10
|
}
|
|
@@ -131,13 +131,12 @@ export class DagOperator {
|
|
|
131
131
|
*/
|
|
132
132
|
// TODO: 执行顺序还需要再确定一下
|
|
133
133
|
async traverseDependenciesToProject(name, task, { withSelf = false, runTaskConcurrency } = {}) {
|
|
134
|
-
var _leafNodes;
|
|
135
134
|
if (!this._projectsMap.has(name)) {
|
|
136
135
|
errorLog(`No '${name}' project exist`);
|
|
137
136
|
}
|
|
138
137
|
const traverseTargetNode = this._projectsMap.get(name);
|
|
139
138
|
const leafNodes = this._getDependencyLeafNodes(traverseTargetNode);
|
|
140
|
-
if ((
|
|
139
|
+
if ((leafNodes === null || leafNodes === void 0 ? void 0 : leafNodes.length) === 0) {
|
|
141
140
|
await this._createTask(traverseTargetNode, task)();
|
|
142
141
|
return;
|
|
143
142
|
}
|
|
@@ -226,3 +225,6 @@ export class DagOperator {
|
|
|
226
225
|
this._sortedProjects = [];
|
|
227
226
|
}
|
|
228
227
|
}
|
|
228
|
+
export {
|
|
229
|
+
DagOperator
|
|
230
|
+
};
|
package/dist/esm/dag/task.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
2
|
import { EventEmitter } from "events";
|
|
3
3
|
import pMap from "p-map";
|
|
4
|
-
|
|
4
|
+
class TaskRunner extends EventEmitter {
|
|
5
5
|
async run() {
|
|
6
6
|
const tasks = this._tasks.splice(0, this._concurrency);
|
|
7
7
|
this._usableConcurrency = this._concurrency - tasks.length;
|
|
@@ -50,3 +50,6 @@ export class TaskRunner extends EventEmitter {
|
|
|
50
50
|
}
|
|
51
51
|
_define_property(TaskRunner, "DefaultConcurrency", 10);
|
|
52
52
|
_define_property(TaskRunner, "TASK_FINISH", "task-finish");
|
|
53
|
+
export {
|
|
54
|
+
TaskRunner
|
|
55
|
+
};
|
package/dist/esm/dag/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { errorLog } from "../log/error";
|
|
2
2
|
import { EdgeManager } from "./edgeManager";
|
|
3
|
-
|
|
3
|
+
const calculateCriticalPaths = (project) => {
|
|
4
4
|
var _project_dependent;
|
|
5
5
|
if (project.criticalPathLength !== void 0) {
|
|
6
6
|
return project.criticalPathLength;
|
|
@@ -42,7 +42,7 @@ const _recursiveGetDependencySkipCircleDeps = (node) => {
|
|
|
42
42
|
}
|
|
43
43
|
return allDeps;
|
|
44
44
|
};
|
|
45
|
-
|
|
45
|
+
const recursiveGetDependency = (project, skipCircleProjects = false) => {
|
|
46
46
|
if (skipCircleProjects) {
|
|
47
47
|
return _recursiveGetDependencySkipCircleDeps(project);
|
|
48
48
|
}
|
|
@@ -58,7 +58,7 @@ export const recursiveGetDependency = (project, skipCircleProjects = false) => {
|
|
|
58
58
|
}
|
|
59
59
|
return allDependency;
|
|
60
60
|
};
|
|
61
|
-
|
|
61
|
+
const sortProjects = (projects) => {
|
|
62
62
|
const sortedQueue = [];
|
|
63
63
|
let readyIntoSortedQueue = [];
|
|
64
64
|
let queue = [];
|
|
@@ -98,7 +98,7 @@ export const sortProjects = (projects) => {
|
|
|
98
98
|
}
|
|
99
99
|
return sortedQueue;
|
|
100
100
|
};
|
|
101
|
-
|
|
101
|
+
const findCircle = (projects) => {
|
|
102
102
|
let result = projects.reduce((circleNodes, project) => {
|
|
103
103
|
if (project.dependencyEdge > 0) {
|
|
104
104
|
return [
|
|
@@ -114,3 +114,9 @@ export const findCircle = (projects) => {
|
|
|
114
114
|
checkNode.dependencyEdge--;
|
|
115
115
|
}
|
|
116
116
|
};
|
|
117
|
+
export {
|
|
118
|
+
calculateCriticalPaths,
|
|
119
|
+
findCircle,
|
|
120
|
+
recursiveGetDependency,
|
|
121
|
+
sortProjects
|
|
122
|
+
};
|
|
@@ -60,7 +60,7 @@ const createTask = (config, taskCmds = defaultBuildCmds, taskLogger) => {
|
|
|
60
60
|
const defaultBuildCmds = [
|
|
61
61
|
"build"
|
|
62
62
|
];
|
|
63
|
-
|
|
63
|
+
const runBuildTask = async (projectName, operator, config, taskCmds = defaultBuildCmds) => {
|
|
64
64
|
const { withSelf = true, onlySelf = false, disableWithDeps = false, withDept = false } = config;
|
|
65
65
|
const taskLogger = new MultitasksLogger();
|
|
66
66
|
const task = createTask(config, taskCmds, taskLogger);
|
|
@@ -85,8 +85,12 @@ export const runBuildTask = async (projectName, operator, config, taskCmds = def
|
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
};
|
|
88
|
-
|
|
88
|
+
const runAllBuildTask = async (operator, config, taskCmds = defaultBuildCmds) => {
|
|
89
89
|
const taskLogger = new MultitasksLogger();
|
|
90
90
|
const task = createTask(config, taskCmds, taskLogger);
|
|
91
91
|
await operator.traverseAllNodes(task);
|
|
92
92
|
};
|
|
93
|
+
export {
|
|
94
|
+
runAllBuildTask,
|
|
95
|
+
runBuildTask
|
|
96
|
+
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as path from "path";
|
|
2
2
|
import { logger } from "@modern-js/utils";
|
|
3
3
|
import { FileSystem } from "@rushstack/node-core-library";
|
|
4
|
-
|
|
4
|
+
const defaultRemoveDirs = [
|
|
5
5
|
"node_modules"
|
|
6
6
|
];
|
|
7
|
-
|
|
7
|
+
const runClearTask = (projectNames, projects, config) => {
|
|
8
8
|
const { removeDirs = defaultRemoveDirs, rootPath } = config;
|
|
9
9
|
if (projectNames.length > 0) {
|
|
10
10
|
projects.forEach((project) => {
|
|
@@ -31,3 +31,7 @@ export const runClearTask = (projectNames, projects, config) => {
|
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
|
+
export {
|
|
35
|
+
defaultRemoveDirs,
|
|
36
|
+
runClearTask
|
|
37
|
+
};
|
|
@@ -101,10 +101,9 @@ const checkAndRunDeployCommand = async (monorepoPath, targetProject, packageMana
|
|
|
101
101
|
}
|
|
102
102
|
};
|
|
103
103
|
const installDependency = async (deployDir, packageManager) => {
|
|
104
|
-
var _packageJson;
|
|
105
104
|
const packageJsonPath = path.join(deployDir, "package.json");
|
|
106
105
|
const packageJson = JsonFile.load(packageJsonPath);
|
|
107
|
-
const scripts = (
|
|
106
|
+
const scripts = (packageJson === null || packageJson === void 0 ? void 0 : packageJson.scripts) || {};
|
|
108
107
|
let commands = [];
|
|
109
108
|
if (scripts.setup) {
|
|
110
109
|
logger.info(`The 'setup' command is detected, execute '${packageManager} run setup' to start installing the dependencies`);
|
|
@@ -130,7 +129,7 @@ const installDependency = async (deployDir, packageManager) => {
|
|
|
130
129
|
};
|
|
131
130
|
const excludeDirs = (filePath, dirs) => dirs.some((dir) => filePath.includes(dir));
|
|
132
131
|
const defaultDeployPath = "output";
|
|
133
|
-
|
|
132
|
+
const deploy = async (deployProjectNames, operator, config) => {
|
|
134
133
|
const { rootPath, packageManager, deployPath = defaultDeployPath } = config;
|
|
135
134
|
const realDeployPath = path.isAbsolute(deployPath) ? deployPath : path.join(rootPath, deployPath);
|
|
136
135
|
FileSystem.deleteFolder(realDeployPath);
|
|
@@ -163,3 +162,6 @@ export const deploy = async (deployProjectNames, operator, config) => {
|
|
|
163
162
|
generatorAndCopyRequiredFiles(rootPath, realDeployPath);
|
|
164
163
|
logger.success(`Deploy success. The deploy dir is in '${rootPath}/output'`);
|
|
165
164
|
};
|
|
165
|
+
export {
|
|
166
|
+
deploy
|
|
167
|
+
};
|
|
@@ -21,7 +21,7 @@ const getFinalTaskCmds = (taskCmds, project) => {
|
|
|
21
21
|
}
|
|
22
22
|
return finalTaskCmds;
|
|
23
23
|
};
|
|
24
|
-
|
|
24
|
+
const createDependenciesTask = (config, taskCmds = defaultBuildWatchCmds, taskLogger) => {
|
|
25
25
|
const { packageManager } = config;
|
|
26
26
|
const timelogInstance = timeLog.initTimeLog();
|
|
27
27
|
const task = async (project) => {
|
|
@@ -61,7 +61,7 @@ export const createDependenciesTask = (config, taskCmds = defaultBuildWatchCmds,
|
|
|
61
61
|
};
|
|
62
62
|
return task;
|
|
63
63
|
};
|
|
64
|
-
|
|
64
|
+
const createDevTask = (config, taskCmds = defaultBuildWatchCmds, taskLogger) => {
|
|
65
65
|
const { packageManager } = config;
|
|
66
66
|
const task = async (project) => {
|
|
67
67
|
const devCmds = [
|
|
@@ -97,3 +97,7 @@ export const createDevTask = (config, taskCmds = defaultBuildWatchCmds, taskLogg
|
|
|
97
97
|
};
|
|
98
98
|
return task;
|
|
99
99
|
};
|
|
100
|
+
export {
|
|
101
|
+
createDependenciesTask,
|
|
102
|
+
createDevTask
|
|
103
|
+
};
|
|
@@ -14,7 +14,7 @@ const getIgnored = (config) => (watchFilePath) => {
|
|
|
14
14
|
}
|
|
15
15
|
return false;
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
const runBuildWatchTask = async (projectName, operator, config, taskCmds = defaultBuildWatchCmds) => {
|
|
18
18
|
const { needInit = true } = config;
|
|
19
19
|
const taskLogger = new MultitasksLogger();
|
|
20
20
|
const dependenciesTask = createDependenciesTask(config, taskCmds, taskLogger);
|
|
@@ -67,3 +67,6 @@ export const runBuildWatchTask = async (projectName, operator, config, taskCmds
|
|
|
67
67
|
checkExist: true
|
|
68
68
|
}));
|
|
69
69
|
};
|
|
70
|
+
export {
|
|
71
|
+
runBuildWatchTask
|
|
72
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
2
|
import * as path from "path";
|
|
3
3
|
import { globby } from "@modern-js/utils";
|
|
4
|
-
|
|
4
|
+
class WatchedProjectsState {
|
|
5
5
|
_initState() {
|
|
6
6
|
const globOption = {
|
|
7
7
|
cwd: this._config.rootPath,
|
|
@@ -56,3 +56,6 @@ export class WatchedProjectsState {
|
|
|
56
56
|
this._initState();
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
+
export {
|
|
60
|
+
WatchedProjectsState
|
|
61
|
+
};
|
|
@@ -17,9 +17,9 @@ const replaceWorkspaces = ({ rootPath, projectsInWorkspaces }) => {
|
|
|
17
17
|
}
|
|
18
18
|
const pkgFilePath = path.join(rootPath, WORKSPACE_FILE.YARN);
|
|
19
19
|
if (fs.existsSync(pkgFilePath)) {
|
|
20
|
-
var _pkg_workspaces
|
|
20
|
+
var _pkg_workspaces;
|
|
21
21
|
const pkg = JsonFile.load(pkgFilePath);
|
|
22
|
-
if (
|
|
22
|
+
if (pkg === null || pkg === void 0 ? void 0 : (_pkg_workspaces = pkg.workspaces) === null || _pkg_workspaces === void 0 ? void 0 : _pkg_workspaces.packages) {
|
|
23
23
|
const originalPkg = pkg;
|
|
24
24
|
pkg.workspaces.packages = projectsInWorkspaces;
|
|
25
25
|
JsonFile.save(pkg, pkgFilePath);
|
|
@@ -30,7 +30,7 @@ const replaceWorkspaces = ({ rootPath, projectsInWorkspaces }) => {
|
|
|
30
30
|
}
|
|
31
31
|
return false;
|
|
32
32
|
};
|
|
33
|
-
|
|
33
|
+
const runInstallTask = async (projectNames, operator, config) => {
|
|
34
34
|
const { rootPath, packageManager } = config;
|
|
35
35
|
let projectsInWorkspaces = [];
|
|
36
36
|
if (projectNames.length === 0) {
|
|
@@ -58,3 +58,6 @@ export const runInstallTask = async (projectNames, operator, config) => {
|
|
|
58
58
|
restorWorkspace();
|
|
59
59
|
}
|
|
60
60
|
};
|
|
61
|
+
export {
|
|
62
|
+
runInstallTask
|
|
63
|
+
};
|
package/dist/esm/hooks/index.js
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { newCli, deployCli, clearCli } from "./cli";
|
|
|
7
7
|
import { hooks } from "./hooks";
|
|
8
8
|
export * from "./projects/getProjects";
|
|
9
9
|
const upgradeModel = Import.lazy("@modern-js/upgrade", require);
|
|
10
|
-
|
|
10
|
+
const monorepoTools = () => ({
|
|
11
11
|
name: "@modern-js/monorepo-tools",
|
|
12
12
|
usePlugins: [
|
|
13
13
|
changesetPlugin(),
|
|
@@ -37,4 +37,8 @@ export const monorepoTools = () => ({
|
|
|
37
37
|
"@modern-js/plugin-changeset"
|
|
38
38
|
]
|
|
39
39
|
});
|
|
40
|
-
|
|
40
|
+
var src_default = monorepoTools;
|
|
41
|
+
export {
|
|
42
|
+
src_default as default,
|
|
43
|
+
monorepoTools
|
|
44
|
+
};
|
package/dist/esm/locale/en.js
CHANGED
package/dist/esm/locale/index.js
CHANGED
package/dist/esm/locale/zh.js
CHANGED
package/dist/esm/log/error.js
CHANGED
|
@@ -27,7 +27,7 @@ const createListenHandler = (name, config) => {
|
|
|
27
27
|
stderr
|
|
28
28
|
};
|
|
29
29
|
};
|
|
30
|
-
|
|
30
|
+
class MultitasksLogger {
|
|
31
31
|
addLogProvider(name, config) {
|
|
32
32
|
if (this._taskNameList.includes(name)) {
|
|
33
33
|
var _this__taskStdoutListenerMap_get, _this__taskStderrListenerMap_get;
|
|
@@ -66,3 +66,6 @@ export class MultitasksLogger {
|
|
|
66
66
|
this._taskLogConfigMap = /* @__PURE__ */ new Map();
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
+
export {
|
|
70
|
+
MultitasksLogger
|
|
71
|
+
};
|
package/dist/esm/log/time.js
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import { Signale } from "@modern-js/utils";
|
|
2
|
-
|
|
2
|
+
const initTimeLog = (option = {}) => new Signale({
|
|
3
3
|
interactive: true,
|
|
4
4
|
scope: "time-log",
|
|
5
5
|
...option
|
|
6
6
|
});
|
|
7
|
-
|
|
7
|
+
const startTime = (signaleInstance, prefix = "") => {
|
|
8
8
|
signaleInstance.time(prefix);
|
|
9
9
|
};
|
|
10
|
-
|
|
10
|
+
const endTime = (signaleInstance, prefix = "") => {
|
|
11
11
|
signaleInstance.timeEnd(prefix);
|
|
12
12
|
};
|
|
13
|
+
export {
|
|
14
|
+
endTime,
|
|
15
|
+
initTimeLog,
|
|
16
|
+
startTime
|
|
17
|
+
};
|
package/dist/esm/log/utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
const formatLog = (log) => {
|
|
2
2
|
const strs = log.split(/\r\n|\n\r|\r|\n/g);
|
|
3
3
|
if (strs[0].trim() === "") {
|
|
4
4
|
return `
|
|
@@ -6,3 +6,6 @@ ${strs.slice(1).filter((s) => Boolean(s)).join("\n")}`;
|
|
|
6
6
|
}
|
|
7
7
|
return strs.filter((s) => Boolean(s)).join("\n");
|
|
8
8
|
};
|
|
9
|
+
export {
|
|
10
|
+
formatLog
|
|
11
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as _define_property } from "@swc/helpers/_/_define_property";
|
|
2
|
-
|
|
2
|
+
class Package {
|
|
3
3
|
get name() {
|
|
4
4
|
return this.json.name;
|
|
5
5
|
}
|
|
@@ -18,3 +18,6 @@ export class Package {
|
|
|
18
18
|
this.json = packageJson;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
+
export {
|
|
22
|
+
Package
|
|
23
|
+
};
|
|
@@ -2,7 +2,7 @@ import * as path from "path";
|
|
|
2
2
|
import { JsonFile } from "@rushstack/node-core-library";
|
|
3
3
|
import { getMonorepoBaseData } from "./monorepo";
|
|
4
4
|
const defaultConfig = {};
|
|
5
|
-
|
|
5
|
+
const getFinalConfig = async (currentPath = process.cwd()) => {
|
|
6
6
|
const monorepo = getMonorepoBaseData(currentPath);
|
|
7
7
|
const userConfig = await JsonFile.loadAsync(path.resolve(monorepo.rootPath, "mono-config.json"));
|
|
8
8
|
const config = {
|
|
@@ -14,3 +14,6 @@ export const getFinalConfig = async (currentPath = process.cwd()) => {
|
|
|
14
14
|
config
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
+
export {
|
|
18
|
+
getFinalConfig
|
|
19
|
+
};
|
|
@@ -29,7 +29,7 @@ const isMonorepo = (monorepoRootPath) => {
|
|
|
29
29
|
}
|
|
30
30
|
return false;
|
|
31
31
|
};
|
|
32
|
-
|
|
32
|
+
const findMonorepoRoot = (starFindPath) => {
|
|
33
33
|
let inMonorepo = false;
|
|
34
34
|
let findPath = starFindPath;
|
|
35
35
|
while (findPath !== "/") {
|
|
@@ -41,7 +41,7 @@ export const findMonorepoRoot = (starFindPath) => {
|
|
|
41
41
|
}
|
|
42
42
|
return inMonorepo ? findPath : void 0;
|
|
43
43
|
};
|
|
44
|
-
|
|
44
|
+
const getWorkspaceFile = (startFindPath) => {
|
|
45
45
|
const rootPath = findMonorepoRoot(startFindPath);
|
|
46
46
|
if (!rootPath) {
|
|
47
47
|
throw new Error("[Auto Find Mode]: not find any monorepo workspace file, you can set `packagesMatchs.workspaceFile`");
|
|
@@ -56,7 +56,7 @@ export const getWorkspaceFile = (startFindPath) => {
|
|
|
56
56
|
throw new Error("[Auto Find Mode]: not find any monorepo workspace file, you can set `packagesMatchs.workspaceFile`");
|
|
57
57
|
}
|
|
58
58
|
};
|
|
59
|
-
|
|
59
|
+
const packageManagerFlag = {
|
|
60
60
|
pnpm: [
|
|
61
61
|
WORKSPACE_FILE.PNPM,
|
|
62
62
|
"pnpm-lock.yaml"
|
|
@@ -76,7 +76,7 @@ const useYarnPackageManager = (monorepoRootPath) => packageManagerFlag.yarn.some
|
|
|
76
76
|
}
|
|
77
77
|
return FileSystem.exists(path.join(monorepoRootPath, flag));
|
|
78
78
|
});
|
|
79
|
-
|
|
79
|
+
const getPackageManager = (monorepoRootPath) => {
|
|
80
80
|
if (usePnpmPackageManager(monorepoRootPath)) {
|
|
81
81
|
return "pnpm";
|
|
82
82
|
} else if (useYarnPackageManager(monorepoRootPath)) {
|
|
@@ -84,7 +84,7 @@ export const getPackageManager = (monorepoRootPath) => {
|
|
|
84
84
|
}
|
|
85
85
|
return "npm";
|
|
86
86
|
};
|
|
87
|
-
|
|
87
|
+
const getMonorepoBaseData = (root = process.cwd()) => {
|
|
88
88
|
const rootPath = findMonorepoRoot(root);
|
|
89
89
|
if (!rootPath) {
|
|
90
90
|
throw new Error("not find any monorepo, you can add lerna、pnpm or yarn workspace file");
|
|
@@ -94,3 +94,10 @@ export const getMonorepoBaseData = (root = process.cwd()) => {
|
|
|
94
94
|
packageManager: getPackageManager(rootPath)
|
|
95
95
|
};
|
|
96
96
|
};
|
|
97
|
+
export {
|
|
98
|
+
findMonorepoRoot,
|
|
99
|
+
getMonorepoBaseData,
|
|
100
|
+
getPackageManager,
|
|
101
|
+
getWorkspaceFile,
|
|
102
|
+
packageManagerFlag
|
|
103
|
+
};
|