@mxpicture/build-cli 0.2.14 → 0.2.17
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/cli.common.d.ts +22 -0
- package/dist/cli.common.js +33 -0
- package/dist/cli.js +34 -51
- package/package.json +3 -2
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Argument, Command } from "@commander-js/extra-typings";
|
|
2
|
+
import { DepsProcessMode, DepsReplacementMode, RunPackagesDirParams, RunRepoRootWsParams } from "@mxpicture/build-api/types";
|
|
3
|
+
export declare const repoRootArgument: Argument<"[repoRoot]", string, undefined, undefined, undefined>;
|
|
4
|
+
export declare const workspacesNameArgument: Argument<"[workspacesName]", "packages", undefined, undefined, undefined>;
|
|
5
|
+
export declare const processModeArgument: Argument<"<mode>", undefined, undefined, undefined, DepsProcessMode>;
|
|
6
|
+
export declare const replacementModeArgument: Argument<"<replacement>", undefined, undefined, undefined, DepsReplacementMode>;
|
|
7
|
+
export declare const resolveRoot: (repoRoot: string) => string;
|
|
8
|
+
export declare const readVersion: () => string;
|
|
9
|
+
export declare const repoRootWsMap: (repoRoot: string, workspacesName: string) => RunRepoRootWsParams;
|
|
10
|
+
export declare const packagesMap: (repoRoot: string, workspacesName: string) => RunPackagesDirParams;
|
|
11
|
+
export declare const createRepoRootWsCommand: (p: {
|
|
12
|
+
prog: Command;
|
|
13
|
+
name: string;
|
|
14
|
+
description: string;
|
|
15
|
+
run: (params: RunRepoRootWsParams) => Promise<void>;
|
|
16
|
+
}) => void;
|
|
17
|
+
export declare const createPackagesCommand: (p: {
|
|
18
|
+
prog: Command;
|
|
19
|
+
name: string;
|
|
20
|
+
description: string;
|
|
21
|
+
run: (params: RunPackagesDirParams) => Promise<void>;
|
|
22
|
+
}) => void;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Argument } from "@commander-js/extra-typings";
|
|
2
|
+
import { DepsProcessMode, DepsReplacementMode, } from "@mxpicture/build-api/types";
|
|
3
|
+
import { readPackageJsonSync } from "@mxpicture/build-api/workspace";
|
|
4
|
+
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
5
|
+
import { cwd } from "node:process";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
7
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
8
|
+
export const repoRootArgument = new Argument("[repoRoot]", "Repo root path").default(cwd());
|
|
9
|
+
export const workspacesNameArgument = new Argument("[workspacesName]", "Name of workspaces location").default("packages");
|
|
10
|
+
export const processModeArgument = new Argument("<mode>", "Process mode").choices(Object.values(DepsProcessMode));
|
|
11
|
+
export const replacementModeArgument = new Argument("<replacement>", "Replacement mode").choices(Object.values(DepsReplacementMode));
|
|
12
|
+
export const resolveRoot = (repoRoot) => isAbsolute(repoRoot) ? repoRoot : resolve(cwd(), repoRoot);
|
|
13
|
+
export const readVersion = () => readPackageJsonSync(resolve(__dirname, "../package.json")).version;
|
|
14
|
+
export const repoRootWsMap = (repoRoot, workspacesName) => ({ repoRoot: resolveRoot(repoRoot), workspacesName });
|
|
15
|
+
export const packagesMap = (repoRoot, workspacesName) => ({
|
|
16
|
+
packagesDir: join(resolveRoot(repoRoot), workspacesName),
|
|
17
|
+
});
|
|
18
|
+
export const createRepoRootWsCommand = (p) => {
|
|
19
|
+
p.prog
|
|
20
|
+
.command(p.name)
|
|
21
|
+
.description(p.description)
|
|
22
|
+
.addArgument(repoRootArgument)
|
|
23
|
+
.addArgument(workspacesNameArgument)
|
|
24
|
+
.action(async (repoRoot, workspacesName) => p.run(repoRootWsMap(repoRoot, workspacesName)));
|
|
25
|
+
};
|
|
26
|
+
export const createPackagesCommand = (p) => {
|
|
27
|
+
p.prog
|
|
28
|
+
.command(p.name)
|
|
29
|
+
.description(p.description)
|
|
30
|
+
.addArgument(repoRootArgument)
|
|
31
|
+
.addArgument(workspacesNameArgument)
|
|
32
|
+
.action(async (repoRoot, workspacesName) => p.run(packagesMap(repoRoot, workspacesName)));
|
|
33
|
+
};
|
package/dist/cli.js
CHANGED
|
@@ -1,67 +1,50 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
import { argv
|
|
2
|
+
import { program } from "@commander-js/extra-typings";
|
|
3
|
+
import { argv } from "node:process";
|
|
4
4
|
import { runCleanup } from "@mxpicture/build-api/cleanup";
|
|
5
|
-
import { DepsProcessMode, DepsReplacementMode, } from "@mxpicture/build-api/types";
|
|
6
5
|
import { runFixDeps } from "@mxpicture/build-api/deps";
|
|
7
|
-
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
8
6
|
import { runNpmPublisher } from "@mxpicture/build-api/npmPublish";
|
|
9
|
-
import { consoleLogger,
|
|
7
|
+
import { consoleLogger, initLogger } from "@mxpicture/build-api/logger";
|
|
10
8
|
import { runBarrel } from "@mxpicture/build-api/barrel";
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
program
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
.description("Cleanup e.g. node_modules and dist")
|
|
22
|
-
.addArgument(new Argument("[repoRoot]", "Repo root path").default(cwd()))
|
|
23
|
-
.addArgument(new Argument("[workspacesName]", "Name of workspaces location").default("packages"))
|
|
24
|
-
.action(async (repoRoot, workspacesName) => runCleanup({
|
|
25
|
-
repoRoot: resolveRoot(repoRoot),
|
|
26
|
-
workspacesName,
|
|
27
|
-
}));
|
|
9
|
+
import { createPackagesCommand, createRepoRootWsCommand, processModeArgument, readVersion, replacementModeArgument, repoRootArgument, resolveRoot, } from "./cli.common.js";
|
|
10
|
+
import { runSyncPkgVersion } from "@mxpicture/build-api/pkg";
|
|
11
|
+
initLogger(consoleLogger);
|
|
12
|
+
program.name("build-cli").version(readVersion()).description("Build CLI");
|
|
13
|
+
createRepoRootWsCommand({
|
|
14
|
+
name: "cleanup",
|
|
15
|
+
description: "Cleanup e.g. node_modules and dist",
|
|
16
|
+
prog: program,
|
|
17
|
+
run: runCleanup,
|
|
18
|
+
});
|
|
28
19
|
program
|
|
29
20
|
.command("deps")
|
|
30
21
|
.description("Manipulate dependencies for deployment (publish)")
|
|
31
|
-
.addArgument(
|
|
32
|
-
.addArgument(
|
|
33
|
-
.addArgument(
|
|
22
|
+
.addArgument(processModeArgument)
|
|
23
|
+
.addArgument(replacementModeArgument)
|
|
24
|
+
.addArgument(repoRootArgument)
|
|
34
25
|
.action(async (mode, replacement, repoRoot) => runFixDeps({
|
|
35
26
|
repoRoot: resolveRoot(repoRoot),
|
|
36
27
|
mode,
|
|
37
28
|
replacement,
|
|
38
29
|
}));
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
.command("changeset")
|
|
58
|
-
.description("Create changeset")
|
|
59
|
-
.addArgument(new Argument("[repoRoot]", "Repo root path").default(cwd()))
|
|
60
|
-
.addArgument(new Argument("[workspacesName]", "Name of workspaces location").default("packages"))
|
|
61
|
-
.action(async (repoRoot, workspacesName) => runChangeset({
|
|
62
|
-
repoRoot,
|
|
63
|
-
workspacesName,
|
|
64
|
-
}));
|
|
30
|
+
createPackagesCommand({
|
|
31
|
+
name: "npm-publish",
|
|
32
|
+
description: "Publish to npmjs",
|
|
33
|
+
prog: program,
|
|
34
|
+
run: runNpmPublisher,
|
|
35
|
+
});
|
|
36
|
+
createRepoRootWsCommand({
|
|
37
|
+
name: "barrel",
|
|
38
|
+
description: "Create barrel files",
|
|
39
|
+
prog: program,
|
|
40
|
+
run: runBarrel,
|
|
41
|
+
});
|
|
42
|
+
createRepoRootWsCommand({
|
|
43
|
+
name: "sync-versions",
|
|
44
|
+
description: "Sync package.json versions",
|
|
45
|
+
prog: program,
|
|
46
|
+
run: runSyncPkgVersion,
|
|
47
|
+
});
|
|
65
48
|
// program
|
|
66
49
|
// .command("extract-imports")
|
|
67
50
|
// .description("Extract Typescript Imports")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mxpicture/build-cli",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.17",
|
|
4
4
|
"description": "Build utilities CLI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "MXPicture",
|
|
@@ -32,7 +32,8 @@
|
|
|
32
32
|
"access": "public"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@mxpicture/build-api": "^0.2.
|
|
35
|
+
"@mxpicture/build-api": "^0.2.17",
|
|
36
|
+
"commander": "^14.0.3"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"@commander-js/extra-typings": "^14.0.0",
|