monocrate 0.4.0 → 0.6.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/README.md +72 -149
- package/dist/collect-package-locations.d.ts +7 -43
- package/dist/collect-package-locations.d.ts.map +1 -1
- package/dist/collect-package-locations.js +23 -19
- package/dist/collect-package-locations.js.map +1 -1
- package/dist/compute-package-closure.d.ts +2 -1
- package/dist/compute-package-closure.d.ts.map +1 -1
- package/dist/compute-package-closure.js +37 -12
- package/dist/compute-package-closure.js.map +1 -1
- package/dist/file-copier.d.ts +4 -4
- package/dist/file-copier.d.ts.map +1 -1
- package/dist/file-copier.js +5 -6
- package/dist/file-copier.js.map +1 -1
- package/dist/get-files-to-pack.d.ts +3 -1
- package/dist/get-files-to-pack.d.ts.map +1 -1
- package/dist/get-files-to-pack.js +7 -33
- package/dist/get-files-to-pack.js.map +1 -1
- package/dist/import-rewriter.d.ts +4 -4
- package/dist/import-rewriter.d.ts.map +1 -1
- package/dist/import-rewriter.js +5 -7
- package/dist/import-rewriter.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mirror-sources.d.ts +11 -0
- package/dist/mirror-sources.d.ts.map +1 -0
- package/dist/mirror-sources.js +90 -0
- package/dist/mirror-sources.js.map +1 -0
- package/dist/monocrate-cli.d.ts.map +1 -1
- package/dist/monocrate-cli.js +74 -38
- package/dist/monocrate-cli.js.map +1 -1
- package/dist/monocrate-options.d.ts +67 -0
- package/dist/monocrate-options.d.ts.map +1 -0
- package/dist/monocrate-options.js +2 -0
- package/dist/monocrate-options.js.map +1 -0
- package/dist/monocrate-result.d.ts +18 -0
- package/dist/monocrate-result.d.ts.map +1 -0
- package/dist/monocrate-result.js +2 -0
- package/dist/monocrate-result.js.map +1 -0
- package/dist/monocrate.d.ts +6 -32
- package/dist/monocrate.d.ts.map +1 -1
- package/dist/monocrate.js +64 -18
- package/dist/monocrate.js.map +1 -1
- package/dist/name-mangler.d.ts +2 -0
- package/dist/name-mangler.d.ts.map +1 -0
- package/dist/name-mangler.js +4 -0
- package/dist/name-mangler.js.map +1 -0
- package/dist/npm-client.d.ts +29 -0
- package/dist/npm-client.d.ts.map +1 -0
- package/dist/npm-client.js +83 -0
- package/dist/npm-client.js.map +1 -0
- package/dist/package-assembler.d.ts +16 -0
- package/dist/package-assembler.d.ts.map +1 -0
- package/dist/package-assembler.js +52 -0
- package/dist/package-assembler.js.map +1 -0
- package/dist/package-closure.d.ts +1 -1
- package/dist/package-closure.d.ts.map +1 -1
- package/dist/{package-map.d.ts → package-location.d.ts} +9 -10
- package/dist/package-location.d.ts.map +1 -0
- package/dist/package-location.js +2 -0
- package/dist/package-location.js.map +1 -0
- package/dist/paths.d.ts +37 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +59 -0
- package/dist/paths.js.map +1 -0
- package/dist/publish.d.ts +3 -1
- package/dist/publish.d.ts.map +1 -1
- package/dist/publish.js +2 -6
- package/dist/publish.js.map +1 -1
- package/dist/repo-explorer.d.ts +23 -0
- package/dist/repo-explorer.d.ts.map +1 -0
- package/dist/repo-explorer.js +121 -0
- package/dist/repo-explorer.js.map +1 -0
- package/dist/resolve-version.d.ts +4 -1
- package/dist/resolve-version.d.ts.map +1 -1
- package/dist/resolve-version.js +31 -33
- package/dist/resolve-version.js.map +1 -1
- package/dist/rewrite-package-json.d.ts +2 -1
- package/dist/rewrite-package-json.d.ts.map +1 -1
- package/dist/rewrite-package-json.js.map +1 -1
- package/dist/run-npm.d.ts +36 -0
- package/dist/run-npm.d.ts.map +1 -0
- package/dist/run-npm.js +35 -0
- package/dist/run-npm.js.map +1 -0
- package/package.json +10 -3
- package/dist/assemble.d.ts +0 -4
- package/dist/assemble.d.ts.map +0 -1
- package/dist/assemble.js +0 -21
- package/dist/assemble.js.map +0 -1
- package/dist/monorepo.d.ts +0 -9
- package/dist/monorepo.d.ts.map +0 -1
- package/dist/monorepo.js +0 -82
- package/dist/monorepo.js.map +0 -1
- package/dist/package-map.d.ts.map +0 -1
- package/dist/package-map.js +0 -2
- package/dist/package-map.js.map +0 -1
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import * as fs from 'node:fs';
|
|
2
|
+
import * as path from 'node:path';
|
|
3
|
+
import { glob } from 'glob';
|
|
4
|
+
import { PackageJson } from './package-json.js';
|
|
5
|
+
import { AbsolutePath, RelativePath } from './paths.js';
|
|
6
|
+
export class RepoExplorer {
|
|
7
|
+
repoRootDir;
|
|
8
|
+
map;
|
|
9
|
+
constructor(repoRootDir, map) {
|
|
10
|
+
this.repoRootDir = repoRootDir;
|
|
11
|
+
this.map = map;
|
|
12
|
+
}
|
|
13
|
+
static async create(monorepoRoot) {
|
|
14
|
+
const map = await this.discover(monorepoRoot);
|
|
15
|
+
// Validate all package directories are under the monorepo root
|
|
16
|
+
// Use realpath to resolve symlinks and catch cases where a symlink points outside
|
|
17
|
+
const realMonorepoRoot = AbsolutePath(fs.realpathSync(monorepoRoot));
|
|
18
|
+
for (const pkg of map.values()) {
|
|
19
|
+
const realPkgPath = AbsolutePath(fs.realpathSync(pkg.fromDir));
|
|
20
|
+
if (!AbsolutePath.contains(realMonorepoRoot, realPkgPath)) {
|
|
21
|
+
throw new Error(`Package "${pkg.name}" is located at "${realPkgPath}" which is outside the monorepo root "${realMonorepoRoot}"`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return new RepoExplorer(monorepoRoot, map);
|
|
25
|
+
}
|
|
26
|
+
listNames() {
|
|
27
|
+
return [...this.map.keys()];
|
|
28
|
+
}
|
|
29
|
+
listPackages() {
|
|
30
|
+
return [...this.map.values()];
|
|
31
|
+
}
|
|
32
|
+
getPackage(pkgName) {
|
|
33
|
+
const ret = this.lookupPackage(pkgName);
|
|
34
|
+
if (!ret) {
|
|
35
|
+
throw new Error(`Unrecognized package name: "${pkgName}"`);
|
|
36
|
+
}
|
|
37
|
+
return ret;
|
|
38
|
+
}
|
|
39
|
+
lookupPackage(pkgName) {
|
|
40
|
+
return this.map.get(pkgName);
|
|
41
|
+
}
|
|
42
|
+
static findMonorepoRoot(startDir) {
|
|
43
|
+
let dir = startDir;
|
|
44
|
+
while (dir !== AbsolutePath.dirname(dir)) {
|
|
45
|
+
const packageJsonPath = path.join(dir, 'package.json');
|
|
46
|
+
if (fs.existsSync(packageJsonPath)) {
|
|
47
|
+
const parsed = PackageJson.safeParse(JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8')));
|
|
48
|
+
if (parsed.success && parsed.data.workspaces !== undefined) {
|
|
49
|
+
return dir;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const pnpmWorkspacePath = path.join(dir, 'pnpm-workspace.yaml');
|
|
53
|
+
if (fs.existsSync(pnpmWorkspacePath)) {
|
|
54
|
+
return dir;
|
|
55
|
+
}
|
|
56
|
+
dir = AbsolutePath.dirname(dir);
|
|
57
|
+
}
|
|
58
|
+
throw new Error(`Could not find monorepo root from ${startDir}`);
|
|
59
|
+
}
|
|
60
|
+
static readPackageJson(packageDir) {
|
|
61
|
+
const packageJsonPath = path.join(packageDir, 'package.json');
|
|
62
|
+
if (!fs.existsSync(packageJsonPath)) {
|
|
63
|
+
throw new Error(`No package.json found at ${packageDir}`);
|
|
64
|
+
}
|
|
65
|
+
const content = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
66
|
+
const parsed = PackageJson.safeParse(content);
|
|
67
|
+
if (!parsed.success) {
|
|
68
|
+
throw new Error(`Invalid package.json at ${packageDir}: ${parsed.error.message}`);
|
|
69
|
+
}
|
|
70
|
+
return parsed.data;
|
|
71
|
+
}
|
|
72
|
+
static parseWorkspacePatterns(monorepoRoot) {
|
|
73
|
+
const packageJsonPath = path.join(monorepoRoot, 'package.json');
|
|
74
|
+
if (fs.existsSync(packageJsonPath)) {
|
|
75
|
+
const parsed = PackageJson.safeParse(JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8')));
|
|
76
|
+
if (parsed.success) {
|
|
77
|
+
const workspaces = parsed.data.workspaces;
|
|
78
|
+
if (Array.isArray(workspaces)) {
|
|
79
|
+
return workspaces;
|
|
80
|
+
}
|
|
81
|
+
if (workspaces && typeof workspaces === 'object' && 'packages' in workspaces) {
|
|
82
|
+
return workspaces.packages;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const pnpmWorkspacePath = path.join(monorepoRoot, 'pnpm-workspace.yaml');
|
|
87
|
+
if (fs.existsSync(pnpmWorkspacePath)) {
|
|
88
|
+
const content = fs.readFileSync(pnpmWorkspacePath, 'utf-8');
|
|
89
|
+
const match = /packages:\s*\n((?:\s+-\s+.+\n?)+)/m.exec(content);
|
|
90
|
+
if (match?.[1]) {
|
|
91
|
+
return match[1]
|
|
92
|
+
.split('\n')
|
|
93
|
+
.map((line) => line.replace(/^\s*-\s*['"]?|['"]?\s*$/g, ''))
|
|
94
|
+
.filter(Boolean);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return ['packages/*'];
|
|
98
|
+
}
|
|
99
|
+
static async discover(monorepoRoot) {
|
|
100
|
+
const patterns = this.parseWorkspacePatterns(monorepoRoot);
|
|
101
|
+
const packages = new Map();
|
|
102
|
+
for (const pattern of patterns) {
|
|
103
|
+
const fullPattern = path.join(monorepoRoot, pattern, 'package.json');
|
|
104
|
+
const matches = await glob(fullPattern, { ignore: '**/node_modules/**' });
|
|
105
|
+
for (const match of matches) {
|
|
106
|
+
const packageDir = AbsolutePath(path.dirname(match));
|
|
107
|
+
const packageJson = this.readPackageJson(packageDir);
|
|
108
|
+
if (packageJson.name) {
|
|
109
|
+
packages.set(packageJson.name, {
|
|
110
|
+
name: packageJson.name,
|
|
111
|
+
fromDir: packageDir,
|
|
112
|
+
pathInRepo: RelativePath(path.relative(monorepoRoot, packageDir)),
|
|
113
|
+
packageJson,
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
return packages;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=repo-explorer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-explorer.js","sourceRoot":"","sources":["../src/repo-explorer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import type { AbsolutePath } from './paths.js';
|
|
1
2
|
import type { VersionSpecifier } from './version-specifier.js';
|
|
2
|
-
|
|
3
|
+
import type { NpmClient } from './npm-client.js';
|
|
4
|
+
export declare function resolveVersion(npmClient: NpmClient, dir: AbsolutePath, packageName: string, versionSpecifier: VersionSpecifier): Promise<string>;
|
|
5
|
+
export declare function maxVersion(va: string, vb: string): string;
|
|
3
6
|
//# sourceMappingURL=resolve-version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-version.d.ts","sourceRoot":"","sources":["../src/resolve-version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolve-version.d.ts","sourceRoot":"","sources":["../src/resolve-version.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAUhD,wBAAsB,cAAc,CAClC,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,gBAAgB,mBAUnC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,UAiBhD"}
|
package/dist/resolve-version.js
CHANGED
|
@@ -1,40 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { z } from 'zod';
|
|
4
|
-
const execAsync = promisify(exec);
|
|
5
|
-
const NpmErrorResponse = z.object({
|
|
6
|
-
error: z.object({
|
|
7
|
-
code: z.string().optional(),
|
|
8
|
-
detail: z.string().optional(),
|
|
9
|
-
}),
|
|
10
|
-
});
|
|
11
|
-
async function getCurrentPublishedVersion(packageName) {
|
|
12
|
-
const { stdout } = await execAsync(`npm view -s --json ${packageName} version`);
|
|
13
|
-
const parsed = JSON.parse(stdout);
|
|
14
|
-
const errorResult = NpmErrorResponse.safeParse(parsed);
|
|
15
|
-
if (errorResult.success) {
|
|
16
|
-
if (errorResult.data.error.code === 'E404') {
|
|
17
|
-
return '0.0.0';
|
|
18
|
-
}
|
|
19
|
-
throw new Error(`npm view failed (${errorResult.data.error.code ?? '<No Error Code>'}): ${errorResult.data.error.detail ?? '<No Further Details>'}`);
|
|
20
|
-
}
|
|
21
|
-
if (typeof parsed !== 'string') {
|
|
22
|
-
throw new Error(`Unexpected response from npm view: ${stdout}`);
|
|
23
|
-
}
|
|
24
|
-
return parsed;
|
|
1
|
+
async function getCurrentPublishedVersion(npmClient, dir, packageName) {
|
|
2
|
+
return (await npmClient.viewVersion(packageName, dir)) ?? '0.0.0';
|
|
25
3
|
}
|
|
26
|
-
export async function resolveVersion(packageName, versionSpecifier) {
|
|
4
|
+
export async function resolveVersion(npmClient, dir, packageName, versionSpecifier) {
|
|
27
5
|
if (versionSpecifier.tag === 'explicit') {
|
|
28
6
|
return versionSpecifier.value;
|
|
29
7
|
}
|
|
30
|
-
const currentVersion = await getCurrentPublishedVersion(packageName);
|
|
31
|
-
const nums = currentVersion
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
8
|
+
const currentVersion = await getCurrentPublishedVersion(npmClient, dir, packageName);
|
|
9
|
+
const nums = parseVersion(currentVersion);
|
|
10
|
+
const indexToIncrement = { major: 0, minor: 1, patch: 2 }[versionSpecifier.tag];
|
|
11
|
+
return nums.map((n, i) => (i < indexToIncrement ? n : i === indexToIncrement ? n + 1 : 0)).join('.');
|
|
12
|
+
}
|
|
13
|
+
export function maxVersion(va, vb) {
|
|
14
|
+
const [a1, a2, a3] = parseVersion(va);
|
|
15
|
+
const [b1, b2, b3] = parseVersion(vb);
|
|
16
|
+
if (a1 !== b1) {
|
|
17
|
+
return a1 > b1 ? va : vb;
|
|
18
|
+
}
|
|
19
|
+
if (a2 !== b2) {
|
|
20
|
+
return a2 > b2 ? va : vb;
|
|
21
|
+
}
|
|
22
|
+
if (a3 !== b3) {
|
|
23
|
+
return a3 > b3 ? va : vb;
|
|
36
24
|
}
|
|
37
|
-
|
|
38
|
-
return nums.join('.');
|
|
25
|
+
return va;
|
|
39
26
|
}
|
|
27
|
+
const parseVersion = (s) => {
|
|
28
|
+
const [a, b, c] = s
|
|
29
|
+
.split('.')
|
|
30
|
+
.slice(0, 3)
|
|
31
|
+
.map(Number)
|
|
32
|
+
.filter((at) => Number.isInteger(at));
|
|
33
|
+
if (a === undefined || b === undefined || c === undefined) {
|
|
34
|
+
throw new Error(`Current version is ill-formatted: "${s}"`);
|
|
35
|
+
}
|
|
36
|
+
return [a, b, c];
|
|
37
|
+
};
|
|
40
38
|
//# sourceMappingURL=resolve-version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-version.js","sourceRoot":"","sources":["../src/resolve-version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolve-version.js","sourceRoot":"","sources":["../src/resolve-version.ts"],"names":[],"mappings":"AAIA,KAAK,UAAU,0BAA0B,CACvC,SAAoB,EACpB,GAAiB,EACjB,WAAmB;IAEnB,OAAO,CAAC,MAAM,SAAS,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,OAAO,CAAA;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAoB,EACpB,GAAiB,EACjB,WAAmB,EACnB,gBAAkC;IAElC,IAAI,gBAAgB,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO,gBAAgB,CAAC,KAAK,CAAA;IAC/B,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,SAAS,EAAE,GAAG,EAAE,WAAW,CAAC,CAAA;IACpF,MAAM,IAAI,GAAG,YAAY,CAAC,cAAc,CAAC,CAAA;IACzC,MAAM,gBAAgB,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC/E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACtG,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EAAU,EAAE,EAAU;IAC/C,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;IACrC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;IAErC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,CAAS,EAA4B,EAAE;IAC3D,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;SAChB,KAAK,CAAC,GAAG,CAAC;SACV,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,MAAM,CAAC;SACX,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;IACvC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,GAAG,CAAC,CAAA;IAC7D,CAAC;IAED,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAClB,CAAC,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { PackageClosure } from './package-closure.js';
|
|
2
|
-
|
|
2
|
+
import type { AbsolutePath } from './paths.js';
|
|
3
|
+
export declare function rewritePackageJson(closure: PackageClosure, version: string | undefined, outputDir: AbsolutePath): void;
|
|
3
4
|
//# sourceMappingURL=rewrite-package-json.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite-package-json.d.ts","sourceRoot":"","sources":["../src/rewrite-package-json.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"rewrite-package-json.d.ts","sourceRoot":"","sources":["../src/rewrite-package-json.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,YAAY,QAsB/G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite-package-json.js","sourceRoot":"","sources":["../src/rewrite-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"rewrite-package-json.js","sourceRoot":"","sources":["../src/rewrite-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAKjC,MAAM,UAAU,kBAAkB,CAAC,OAAuB,EAAE,OAA2B,EAAE,SAAuB;IAC9G,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACpF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAA;IAC1F,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,WAAW,CAAA;IAE9E,MAAM,SAAS,GAAgB;QAC7B,GAAG,IAAI;KACR,CAAA;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,SAAS,CAAC,OAAO,GAAG,OAAO,CAAA;IAC7B,CAAC;IAED,2EAA2E;IAC3E,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAA;IACpD,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;AACnG,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { AbsolutePath } from './paths.js';
|
|
2
|
+
export interface NpmOptionsBase {
|
|
3
|
+
env?: Partial<Record<string, string>>;
|
|
4
|
+
userconfig?: string;
|
|
5
|
+
}
|
|
6
|
+
interface StdioPipe {
|
|
7
|
+
stdio: 'pipe';
|
|
8
|
+
}
|
|
9
|
+
interface StdioInherit {
|
|
10
|
+
stdio?: 'inherit';
|
|
11
|
+
}
|
|
12
|
+
interface PolicyThrow {
|
|
13
|
+
nonZeroExitCodePolicy?: 'throw';
|
|
14
|
+
}
|
|
15
|
+
interface PolicyReturn {
|
|
16
|
+
nonZeroExitCodePolicy: 'return';
|
|
17
|
+
}
|
|
18
|
+
interface OutputResult {
|
|
19
|
+
stdout: string;
|
|
20
|
+
stderr: string;
|
|
21
|
+
}
|
|
22
|
+
interface PolicyThrowResult {
|
|
23
|
+
ok: true;
|
|
24
|
+
}
|
|
25
|
+
type PolicyReturnResult = {
|
|
26
|
+
ok: false;
|
|
27
|
+
error: Error;
|
|
28
|
+
} | {
|
|
29
|
+
ok: true;
|
|
30
|
+
};
|
|
31
|
+
export declare function runNpm(subcommand: string, args: string[], cwd: AbsolutePath, options: PolicyReturn & StdioInherit & NpmOptionsBase): Promise<PolicyReturnResult>;
|
|
32
|
+
export declare function runNpm(subcommand: string, args: string[], cwd: AbsolutePath, options: PolicyReturn & StdioPipe & NpmOptionsBase): Promise<PolicyReturnResult & OutputResult>;
|
|
33
|
+
export declare function runNpm(subcommand: string, args: string[], cwd: AbsolutePath, options?: PolicyThrow & StdioInherit & NpmOptionsBase): Promise<PolicyThrowResult>;
|
|
34
|
+
export declare function runNpm(subcommand: string, args: string[], cwd: AbsolutePath, options: PolicyThrow & StdioPipe & NpmOptionsBase): Promise<PolicyThrowResult & OutputResult>;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=run-npm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-npm.d.ts","sourceRoot":"","sources":["../src/run-npm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,UAAU,WAAW;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,UAAU,YAAY;IACpB,qBAAqB,EAAE,QAAQ,CAAA;CAChC;AAED,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,UAAU,iBAAiB;IACzB,EAAE,EAAE,IAAI,CAAA;CACT;AACD,KAAK,kBAAkB,GACnB;IACE,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,KAAK,CAAA;CACb,GACD;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAA;AAEhB,wBAAsB,MAAM,CAC1B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,YAAY,EACjB,OAAO,EAAE,YAAY,GAAG,YAAY,GAAG,cAAc,GACpD,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAC9B,wBAAsB,MAAM,CAC1B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,YAAY,EACjB,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,cAAc,GACjD,OAAO,CAAC,kBAAkB,GAAG,YAAY,CAAC,CAAA;AAC7C,wBAAsB,MAAM,CAC1B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,YAAY,EACjB,OAAO,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,cAAc,GACpD,OAAO,CAAC,iBAAiB,CAAC,CAAA;AAC7B,wBAAsB,MAAM,CAC1B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,YAAY,EACjB,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,cAAc,GAChD,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC,CAAA"}
|
package/dist/run-npm.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { x } from 'tinyexec';
|
|
2
|
+
export async function runNpm(subcommand, args, cwd, options) {
|
|
3
|
+
const errorPolicy = options?.nonZeroExitCodePolicy ?? 'throw';
|
|
4
|
+
const stdio = options?.stdio ?? 'inherit';
|
|
5
|
+
const uc = options?.userconfig ? ['--userconfig', options.userconfig] : [];
|
|
6
|
+
const fullArgs = [subcommand, ...args, ...uc];
|
|
7
|
+
const synopsis = `${cwd}$ npm ${fullArgs.map((a) => JSON.stringify(a)).join(' ')}`;
|
|
8
|
+
const proc = x('npm', fullArgs, {
|
|
9
|
+
nodeOptions: { env: options?.env, cwd, stdio },
|
|
10
|
+
throwOnError: false,
|
|
11
|
+
});
|
|
12
|
+
const result = await proc;
|
|
13
|
+
if (result.exitCode === undefined) {
|
|
14
|
+
throw new Error(`npm ${subcommand} terminated abnormally` + (proc.killed ? ' (killed)' : ''));
|
|
15
|
+
}
|
|
16
|
+
if (result.exitCode !== 0) {
|
|
17
|
+
let message = `An NPM command exited with code ${String(result.exitCode)} - ${synopsis}`;
|
|
18
|
+
if (stdio === 'pipe') {
|
|
19
|
+
message += `\n${result.stdout}`;
|
|
20
|
+
}
|
|
21
|
+
const error = new Error(message);
|
|
22
|
+
if (errorPolicy === 'throw') {
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
25
|
+
if (stdio === 'pipe') {
|
|
26
|
+
return { ok: false, stdout: result.stdout, stderr: result.stderr, error };
|
|
27
|
+
}
|
|
28
|
+
return { ok: false, error };
|
|
29
|
+
}
|
|
30
|
+
if (stdio === 'pipe') {
|
|
31
|
+
return { ok: true, stdout: result.stdout, stderr: result.stderr };
|
|
32
|
+
}
|
|
33
|
+
return { ok: true };
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=run-npm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-npm.js","sourceRoot":"","sources":["../src/run-npm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,UAAU,CAAA;AA+D5B,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,UAAkB,EAClB,IAAc,EACd,GAAiB,EACjB,OAAoF;IAIpF,MAAM,WAAW,GAAG,OAAO,EAAE,qBAAqB,IAAI,OAAO,CAAA;IAC7D,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,SAAS,CAAA;IAEzC,MAAM,EAAE,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1E,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,GAAG,GAAG,SAAS,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;IAClF,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE;QAC9B,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE;QAC9C,YAAY,EAAE,KAAK;KACpB,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAA;IAEzB,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,OAAO,UAAU,wBAAwB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/F,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,GAAG,mCAAmC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,EAAE,CAAA;QACxF,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,OAAO,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAA;QACjC,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QAChC,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAA;QACb,CAAC;QACD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAA;QAC3E,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAA;IACnE,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;AACrB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "monocrate",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "From monorepo to npm in one command",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -16,7 +16,9 @@
|
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
18
|
"dist",
|
|
19
|
-
"!dist/**/*.test.*"
|
|
19
|
+
"!dist/**/*.test.*",
|
|
20
|
+
"!dist/**/*.compilation-test.*",
|
|
21
|
+
"!dist/testing/**"
|
|
20
22
|
],
|
|
21
23
|
"scripts": {
|
|
22
24
|
"build": "tsc",
|
|
@@ -46,13 +48,17 @@
|
|
|
46
48
|
"devDependencies": {
|
|
47
49
|
"@eslint/js": "^9.0.0",
|
|
48
50
|
"@types/node": "^20.19.29",
|
|
51
|
+
"@types/yargs": "^17.0.35",
|
|
49
52
|
"@vitest/coverage-v8": "^1.2.0",
|
|
50
53
|
"eslint": "^9.0.0",
|
|
54
|
+
"eslint-plugin-unused-imports": "^4.3.0",
|
|
55
|
+
"get-port": "^7.1.0",
|
|
51
56
|
"husky": "^9.1.7",
|
|
52
57
|
"lint-staged": "^16.2.7",
|
|
53
58
|
"prettier": "^3.2.0",
|
|
54
59
|
"typescript": "^5.3.0",
|
|
55
60
|
"typescript-eslint": "^8.0.0",
|
|
61
|
+
"verdaccio": "^6.2.4",
|
|
56
62
|
"vitest": "^1.2.0"
|
|
57
63
|
},
|
|
58
64
|
"engines": {
|
|
@@ -65,11 +71,12 @@
|
|
|
65
71
|
]
|
|
66
72
|
},
|
|
67
73
|
"dependencies": {
|
|
68
|
-
"citty": "^0.1.6",
|
|
69
74
|
"esbuild": "^0.24.0",
|
|
70
75
|
"glob": "^13.0.0",
|
|
71
76
|
"resolve.exports": "^2.0.3",
|
|
77
|
+
"tinyexec": "^1.0.2",
|
|
72
78
|
"ts-morph": "^27.0.2",
|
|
79
|
+
"yargs": "^18.0.0",
|
|
73
80
|
"zod": "^4.3.5"
|
|
74
81
|
}
|
|
75
82
|
}
|
package/dist/assemble.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { PackageClosure } from './package-closure.js';
|
|
2
|
-
import type { VersionSpecifier } from './version-specifier.js';
|
|
3
|
-
export declare function assemble(closure: PackageClosure, monorepoRoot: string, outputDir: string, versionSpecifier: VersionSpecifier | undefined): Promise<void>;
|
|
4
|
-
//# sourceMappingURL=assemble.d.ts.map
|
package/dist/assemble.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../src/assemble.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,cAAc,EACvB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,GAC7C,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
package/dist/assemble.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import * as fsPromises from 'node:fs/promises';
|
|
2
|
-
import { collectPackageLocations } from './collect-package-locations.js';
|
|
3
|
-
import { FileCopier } from './file-copier.js';
|
|
4
|
-
import { ImportRewriter } from './import-rewriter.js';
|
|
5
|
-
import { resolveVersion } from './resolve-version.js';
|
|
6
|
-
import { rewritePackageJson } from './rewrite-package-json.js';
|
|
7
|
-
export async function assemble(closure, monorepoRoot, outputDir, versionSpecifier) {
|
|
8
|
-
const locations = await collectPackageLocations(closure, monorepoRoot);
|
|
9
|
-
const packageMap = new Map(locations.map((at) => [at.name, at]));
|
|
10
|
-
await fsPromises.mkdir(outputDir, { recursive: true });
|
|
11
|
-
const [newVersion] = await Promise.all([
|
|
12
|
-
versionSpecifier ? await resolveVersion(closure.subjectPackageName, versionSpecifier) : Promise.resolve(undefined),
|
|
13
|
-
(async () => {
|
|
14
|
-
const copiedFiles = await new FileCopier(packageMap, outputDir).copy();
|
|
15
|
-
await new ImportRewriter(packageMap, outputDir).rewriteAll(copiedFiles);
|
|
16
|
-
})(),
|
|
17
|
-
]);
|
|
18
|
-
// This must happen after file copying completes (otherwise the rewritten package.json could be overwritten)
|
|
19
|
-
rewritePackageJson(closure, newVersion, outputDir);
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=assemble.js.map
|
package/dist/assemble.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assemble.js","sourceRoot":"","sources":["../src/assemble.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAG9D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAuB,EACvB,YAAoB,EACpB,SAAiB,EACjB,gBAA8C;IAE9C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACtE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAU,CAAC,CAAC,CAAA;IAEzE,MAAM,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACtD,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACrC,gBAAgB,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;QAClH,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,WAAW,GAAG,MAAM,IAAI,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;YACtE,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACzE,CAAC,CAAC,EAAE;KACL,CAAC,CAAA;IACF,4GAA4G;IAC5G,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAA;AACpD,CAAC"}
|
package/dist/monorepo.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { PackageJson } from './package-json.js';
|
|
2
|
-
export interface MonorepoPackage {
|
|
3
|
-
name: string;
|
|
4
|
-
path: string;
|
|
5
|
-
packageJson: PackageJson;
|
|
6
|
-
}
|
|
7
|
-
export declare function findMonorepoRoot(startDir: string): string;
|
|
8
|
-
export declare function discoverMonorepoPackages(monorepoRoot: string): Promise<Map<string, MonorepoPackage>>;
|
|
9
|
-
//# sourceMappingURL=monorepo.d.ts.map
|
package/dist/monorepo.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo.d.ts","sourceRoot":"","sources":["../src/monorepo.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqBzD;AA6CD,wBAAsB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAuB1G"}
|
package/dist/monorepo.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import { glob } from 'glob';
|
|
4
|
-
import { PackageJson } from './package-json.js';
|
|
5
|
-
export function findMonorepoRoot(startDir) {
|
|
6
|
-
let dir = path.resolve(startDir);
|
|
7
|
-
while (dir !== path.dirname(dir)) {
|
|
8
|
-
const packageJsonPath = path.join(dir, 'package.json');
|
|
9
|
-
if (fs.existsSync(packageJsonPath)) {
|
|
10
|
-
const parsed = PackageJson.safeParse(JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8')));
|
|
11
|
-
if (parsed.success && parsed.data.workspaces !== undefined) {
|
|
12
|
-
return dir;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
const pnpmWorkspacePath = path.join(dir, 'pnpm-workspace.yaml');
|
|
16
|
-
if (fs.existsSync(pnpmWorkspacePath)) {
|
|
17
|
-
return dir;
|
|
18
|
-
}
|
|
19
|
-
dir = path.dirname(dir);
|
|
20
|
-
}
|
|
21
|
-
throw new Error(`Could not find monorepo root from ${startDir}`);
|
|
22
|
-
}
|
|
23
|
-
function readPackageJson(packageDir) {
|
|
24
|
-
const packageJsonPath = path.join(packageDir, 'package.json');
|
|
25
|
-
if (!fs.existsSync(packageJsonPath)) {
|
|
26
|
-
throw new Error(`No package.json found at ${packageDir}`);
|
|
27
|
-
}
|
|
28
|
-
const content = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
29
|
-
const parsed = PackageJson.safeParse(content);
|
|
30
|
-
if (!parsed.success) {
|
|
31
|
-
throw new Error(`Invalid package.json at ${packageDir}: ${parsed.error.message}`);
|
|
32
|
-
}
|
|
33
|
-
return parsed.data;
|
|
34
|
-
}
|
|
35
|
-
function parseWorkspacePatterns(monorepoRoot) {
|
|
36
|
-
const packageJsonPath = path.join(monorepoRoot, 'package.json');
|
|
37
|
-
if (fs.existsSync(packageJsonPath)) {
|
|
38
|
-
const parsed = PackageJson.safeParse(JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8')));
|
|
39
|
-
if (parsed.success) {
|
|
40
|
-
const workspaces = parsed.data.workspaces;
|
|
41
|
-
if (Array.isArray(workspaces)) {
|
|
42
|
-
return workspaces;
|
|
43
|
-
}
|
|
44
|
-
if (workspaces && typeof workspaces === 'object' && 'packages' in workspaces) {
|
|
45
|
-
return workspaces.packages;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
const pnpmWorkspacePath = path.join(monorepoRoot, 'pnpm-workspace.yaml');
|
|
50
|
-
if (fs.existsSync(pnpmWorkspacePath)) {
|
|
51
|
-
const content = fs.readFileSync(pnpmWorkspacePath, 'utf-8');
|
|
52
|
-
const match = /packages:\s*\n((?:\s+-\s+.+\n?)+)/m.exec(content);
|
|
53
|
-
if (match?.[1]) {
|
|
54
|
-
return match[1]
|
|
55
|
-
.split('\n')
|
|
56
|
-
.map((line) => line.replace(/^\s*-\s*['"]?|['"]?\s*$/g, ''))
|
|
57
|
-
.filter(Boolean);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
return ['packages/*'];
|
|
61
|
-
}
|
|
62
|
-
export async function discoverMonorepoPackages(monorepoRoot) {
|
|
63
|
-
const patterns = parseWorkspacePatterns(monorepoRoot);
|
|
64
|
-
const packages = new Map();
|
|
65
|
-
for (const pattern of patterns) {
|
|
66
|
-
const fullPattern = path.join(monorepoRoot, pattern, 'package.json');
|
|
67
|
-
const matches = await glob(fullPattern, { ignore: '**/node_modules/**' });
|
|
68
|
-
for (const match of matches) {
|
|
69
|
-
const packageDir = path.dirname(match);
|
|
70
|
-
const packageJson = readPackageJson(packageDir);
|
|
71
|
-
if (packageJson.name) {
|
|
72
|
-
packages.set(packageJson.name, {
|
|
73
|
-
name: packageJson.name,
|
|
74
|
-
path: packageDir,
|
|
75
|
-
packageJson,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return packages;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=monorepo.js.map
|
package/dist/monorepo.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"monorepo.js","sourceRoot":"","sources":["../src/monorepo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAQ/C,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEhC,OAAO,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;QACtD,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;YAC3F,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC3D,OAAO,GAAG,CAAA;YACZ,CAAC;QACH,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAA;QAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,OAAO,GAAG,CAAA;QACZ,CAAC;QAED,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,eAAe,CAAC,UAAkB;IACzC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;IAC7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAA;IAC3D,CAAC;IACD,MAAM,OAAO,GAAY,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9E,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACnF,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC;AAED,SAAS,sBAAsB,CAAC,YAAoB;IAClD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;IAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;QAC3F,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAA;YACzC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,OAAO,UAAU,CAAA;YACnB,CAAC;YACD,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;gBAC7E,OAAO,UAAU,CAAC,QAAQ,CAAA;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAA;IACxE,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAChE,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,OAAO,KAAK,CAAC,CAAC,CAAC;iBACZ,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;iBAC3D,MAAM,CAAC,OAAO,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAED,OAAO,CAAC,YAAY,CAAC,CAAA;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,YAAoB;IACjE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,YAAY,CAAC,CAAA;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAA;IAEnD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;QACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAA;QAEzE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACtC,MAAM,WAAW,GAAG,eAAe,CAAC,UAAU,CAAC,CAAA;YAE/C,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE;oBAC7B,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,IAAI,EAAE,UAAU;oBAChB,WAAW;iBACZ,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-map.d.ts","sourceRoot":"","sources":["../src/package-map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,WAAW,EAAE,MAAM,EAAE,CAAA;IAErB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA"}
|
package/dist/package-map.js
DELETED
package/dist/package-map.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-map.js","sourceRoot":"","sources":["../src/package-map.ts"],"names":[],"mappings":""}
|