@contember/cli-common 2.1.0-alpha.30 → 2.1.0-alpha.35
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/package.json +11 -6
- package/src/application/Application.ts +6 -4
- package/src/index.ts +1 -1
- package/src/npm/CommandRunner.ts +0 -1
- package/src/npm/PackageWorkspace.ts +0 -2
- package/src/npm/packageManagers/PackageManagerHelpers.ts +3 -1
- package/src/npm/packageManagers/Yarn.ts +2 -1
- package/dist/development/index.cjs +0 -32
- package/dist/development/index.cjs.map +0 -1
- package/dist/development/index.js +0 -32
- package/dist/development/index.js.map +0 -1
- package/dist/development/src/application/Application.cjs +0 -82
- package/dist/development/src/application/Application.cjs.map +0 -1
- package/dist/development/src/application/Application.js +0 -82
- package/dist/development/src/application/Application.js.map +0 -1
- package/dist/development/src/application/Argument.cjs +0 -25
- package/dist/development/src/application/Argument.cjs.map +0 -1
- package/dist/development/src/application/Argument.js +0 -25
- package/dist/development/src/application/Argument.js.map +0 -1
- package/dist/development/src/application/Command.cjs +0 -28
- package/dist/development/src/application/Command.cjs.map +0 -1
- package/dist/development/src/application/Command.js +0 -28
- package/dist/development/src/application/Command.js.map +0 -1
- package/dist/development/src/application/CommandConfiguration.cjs +0 -44
- package/dist/development/src/application/CommandConfiguration.cjs.map +0 -1
- package/dist/development/src/application/CommandConfiguration.js +0 -44
- package/dist/development/src/application/CommandConfiguration.js.map +0 -1
- package/dist/development/src/application/CommandManager.cjs +0 -37
- package/dist/development/src/application/CommandManager.cjs.map +0 -1
- package/dist/development/src/application/CommandManager.js +0 -37
- package/dist/development/src/application/CommandManager.js.map +0 -1
- package/dist/development/src/application/Input.cjs +0 -16
- package/dist/development/src/application/Input.cjs.map +0 -1
- package/dist/development/src/application/Input.js +0 -16
- package/dist/development/src/application/Input.js.map +0 -1
- package/dist/development/src/application/InputParser.cjs +0 -117
- package/dist/development/src/application/InputParser.cjs.map +0 -1
- package/dist/development/src/application/InputParser.js +0 -117
- package/dist/development/src/application/InputParser.js.map +0 -1
- package/dist/development/src/application/Option.cjs +0 -49
- package/dist/development/src/application/Option.cjs.map +0 -1
- package/dist/development/src/application/Option.js +0 -49
- package/dist/development/src/application/Option.js.map +0 -1
- package/dist/development/src/application/UsageFormatter.cjs +0 -61
- package/dist/development/src/application/UsageFormatter.cjs.map +0 -1
- package/dist/development/src/application/UsageFormatter.js +0 -61
- package/dist/development/src/application/UsageFormatter.js.map +0 -1
- package/dist/development/src/application/assertNever.cjs +0 -7
- package/dist/development/src/application/assertNever.cjs.map +0 -1
- package/dist/development/src/application/assertNever.js +0 -7
- package/dist/development/src/application/assertNever.js.map +0 -1
- package/dist/development/src/npm/CommandRunner.cjs +0 -59
- package/dist/development/src/npm/CommandRunner.cjs.map +0 -1
- package/dist/development/src/npm/CommandRunner.js +0 -59
- package/dist/development/src/npm/CommandRunner.js.map +0 -1
- package/dist/development/src/npm/Package.cjs +0 -11
- package/dist/development/src/npm/Package.cjs.map +0 -1
- package/dist/development/src/npm/Package.js +0 -11
- package/dist/development/src/npm/Package.js.map +0 -1
- package/dist/development/src/npm/PackageWorkspace.cjs +0 -79
- package/dist/development/src/npm/PackageWorkspace.cjs.map +0 -1
- package/dist/development/src/npm/PackageWorkspace.js +0 -79
- package/dist/development/src/npm/PackageWorkspace.js.map +0 -1
- package/dist/development/src/npm/PackageWorkspaceResolver.cjs +0 -48
- package/dist/development/src/npm/PackageWorkspaceResolver.cjs.map +0 -1
- package/dist/development/src/npm/PackageWorkspaceResolver.js +0 -48
- package/dist/development/src/npm/PackageWorkspaceResolver.js.map +0 -1
- package/dist/development/src/npm/packageManagers/Bun.cjs +0 -34
- package/dist/development/src/npm/packageManagers/Bun.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/Bun.js +0 -34
- package/dist/development/src/npm/packageManagers/Bun.js.map +0 -1
- package/dist/development/src/npm/packageManagers/Npm.cjs +0 -34
- package/dist/development/src/npm/packageManagers/Npm.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/Npm.js +0 -34
- package/dist/development/src/npm/packageManagers/Npm.js.map +0 -1
- package/dist/development/src/npm/packageManagers/PackageManagerHelpers.cjs +0 -32
- package/dist/development/src/npm/packageManagers/PackageManagerHelpers.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/PackageManagerHelpers.js +0 -32
- package/dist/development/src/npm/packageManagers/PackageManagerHelpers.js.map +0 -1
- package/dist/development/src/npm/packageManagers/Pnpm.cjs +0 -39
- package/dist/development/src/npm/packageManagers/Pnpm.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/Pnpm.js +0 -39
- package/dist/development/src/npm/packageManagers/Pnpm.js.map +0 -1
- package/dist/development/src/npm/packageManagers/Yarn.cjs +0 -34
- package/dist/development/src/npm/packageManagers/Yarn.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/Yarn.js +0 -34
- package/dist/development/src/npm/packageManagers/Yarn.js.map +0 -1
- package/dist/development/src/npm/packageManagers/YarnClassic.cjs +0 -35
- package/dist/development/src/npm/packageManagers/YarnClassic.cjs.map +0 -1
- package/dist/development/src/npm/packageManagers/YarnClassic.js +0 -35
- package/dist/development/src/npm/packageManagers/YarnClassic.js.map +0 -1
- package/dist/development/src/utils/findPackageRoot.cjs +0 -20
- package/dist/development/src/utils/findPackageRoot.cjs.map +0 -1
- package/dist/development/src/utils/findPackageRoot.js +0 -20
- package/dist/development/src/utils/findPackageRoot.js.map +0 -1
- package/dist/production/index.cjs +0 -32
- package/dist/production/index.cjs.map +0 -1
- package/dist/production/index.js +0 -32
- package/dist/production/index.js.map +0 -1
- package/dist/production/src/application/Application.cjs +0 -82
- package/dist/production/src/application/Application.cjs.map +0 -1
- package/dist/production/src/application/Application.js +0 -82
- package/dist/production/src/application/Application.js.map +0 -1
- package/dist/production/src/application/Argument.cjs +0 -25
- package/dist/production/src/application/Argument.cjs.map +0 -1
- package/dist/production/src/application/Argument.js +0 -25
- package/dist/production/src/application/Argument.js.map +0 -1
- package/dist/production/src/application/Command.cjs +0 -28
- package/dist/production/src/application/Command.cjs.map +0 -1
- package/dist/production/src/application/Command.js +0 -28
- package/dist/production/src/application/Command.js.map +0 -1
- package/dist/production/src/application/CommandConfiguration.cjs +0 -44
- package/dist/production/src/application/CommandConfiguration.cjs.map +0 -1
- package/dist/production/src/application/CommandConfiguration.js +0 -44
- package/dist/production/src/application/CommandConfiguration.js.map +0 -1
- package/dist/production/src/application/CommandManager.cjs +0 -37
- package/dist/production/src/application/CommandManager.cjs.map +0 -1
- package/dist/production/src/application/CommandManager.js +0 -37
- package/dist/production/src/application/CommandManager.js.map +0 -1
- package/dist/production/src/application/Input.cjs +0 -16
- package/dist/production/src/application/Input.cjs.map +0 -1
- package/dist/production/src/application/Input.js +0 -16
- package/dist/production/src/application/Input.js.map +0 -1
- package/dist/production/src/application/InputParser.cjs +0 -117
- package/dist/production/src/application/InputParser.cjs.map +0 -1
- package/dist/production/src/application/InputParser.js +0 -117
- package/dist/production/src/application/InputParser.js.map +0 -1
- package/dist/production/src/application/Option.cjs +0 -49
- package/dist/production/src/application/Option.cjs.map +0 -1
- package/dist/production/src/application/Option.js +0 -49
- package/dist/production/src/application/Option.js.map +0 -1
- package/dist/production/src/application/UsageFormatter.cjs +0 -61
- package/dist/production/src/application/UsageFormatter.cjs.map +0 -1
- package/dist/production/src/application/UsageFormatter.js +0 -61
- package/dist/production/src/application/UsageFormatter.js.map +0 -1
- package/dist/production/src/application/assertNever.cjs +0 -7
- package/dist/production/src/application/assertNever.cjs.map +0 -1
- package/dist/production/src/application/assertNever.js +0 -7
- package/dist/production/src/application/assertNever.js.map +0 -1
- package/dist/production/src/npm/CommandRunner.cjs +0 -59
- package/dist/production/src/npm/CommandRunner.cjs.map +0 -1
- package/dist/production/src/npm/CommandRunner.js +0 -59
- package/dist/production/src/npm/CommandRunner.js.map +0 -1
- package/dist/production/src/npm/Package.cjs +0 -11
- package/dist/production/src/npm/Package.cjs.map +0 -1
- package/dist/production/src/npm/Package.js +0 -11
- package/dist/production/src/npm/Package.js.map +0 -1
- package/dist/production/src/npm/PackageWorkspace.cjs +0 -79
- package/dist/production/src/npm/PackageWorkspace.cjs.map +0 -1
- package/dist/production/src/npm/PackageWorkspace.js +0 -79
- package/dist/production/src/npm/PackageWorkspace.js.map +0 -1
- package/dist/production/src/npm/PackageWorkspaceResolver.cjs +0 -48
- package/dist/production/src/npm/PackageWorkspaceResolver.cjs.map +0 -1
- package/dist/production/src/npm/PackageWorkspaceResolver.js +0 -48
- package/dist/production/src/npm/PackageWorkspaceResolver.js.map +0 -1
- package/dist/production/src/npm/packageManagers/Bun.cjs +0 -34
- package/dist/production/src/npm/packageManagers/Bun.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/Bun.js +0 -34
- package/dist/production/src/npm/packageManagers/Bun.js.map +0 -1
- package/dist/production/src/npm/packageManagers/Npm.cjs +0 -34
- package/dist/production/src/npm/packageManagers/Npm.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/Npm.js +0 -34
- package/dist/production/src/npm/packageManagers/Npm.js.map +0 -1
- package/dist/production/src/npm/packageManagers/PackageManagerHelpers.cjs +0 -32
- package/dist/production/src/npm/packageManagers/PackageManagerHelpers.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/PackageManagerHelpers.js +0 -32
- package/dist/production/src/npm/packageManagers/PackageManagerHelpers.js.map +0 -1
- package/dist/production/src/npm/packageManagers/Pnpm.cjs +0 -39
- package/dist/production/src/npm/packageManagers/Pnpm.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/Pnpm.js +0 -39
- package/dist/production/src/npm/packageManagers/Pnpm.js.map +0 -1
- package/dist/production/src/npm/packageManagers/Yarn.cjs +0 -34
- package/dist/production/src/npm/packageManagers/Yarn.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/Yarn.js +0 -34
- package/dist/production/src/npm/packageManagers/Yarn.js.map +0 -1
- package/dist/production/src/npm/packageManagers/YarnClassic.cjs +0 -35
- package/dist/production/src/npm/packageManagers/YarnClassic.cjs.map +0 -1
- package/dist/production/src/npm/packageManagers/YarnClassic.js +0 -35
- package/dist/production/src/npm/packageManagers/YarnClassic.js.map +0 -1
- package/dist/production/src/utils/findPackageRoot.cjs +0 -20
- package/dist/production/src/utils/findPackageRoot.cjs.map +0 -1
- package/dist/production/src/utils/findPackageRoot.js +0 -20
- package/dist/production/src/utils/findPackageRoot.js.map +0 -1
- package/dist/types/application/Application.d.ts +0 -18
- package/dist/types/application/Application.d.ts.map +0 -1
- package/dist/types/application/Argument.d.ts +0 -16
- package/dist/types/application/Argument.d.ts.map +0 -1
- package/dist/types/application/Command.d.ts +0 -10
- package/dist/types/application/Command.d.ts.map +0 -1
- package/dist/types/application/CommandConfiguration.d.ts +0 -23
- package/dist/types/application/CommandConfiguration.d.ts.map +0 -1
- package/dist/types/application/CommandManager.d.ts +0 -11
- package/dist/types/application/CommandManager.d.ts.map +0 -1
- package/dist/types/application/Input.d.ts +0 -10
- package/dist/types/application/Input.d.ts.map +0 -1
- package/dist/types/application/InputParser.d.ts +0 -13
- package/dist/types/application/InputParser.d.ts.map +0 -1
- package/dist/types/application/Option.d.ts +0 -27
- package/dist/types/application/Option.d.ts.map +0 -1
- package/dist/types/application/UsageFormatter.d.ts +0 -11
- package/dist/types/application/UsageFormatter.d.ts.map +0 -1
- package/dist/types/application/assertNever.d.ts +0 -2
- package/dist/types/application/assertNever.d.ts.map +0 -1
- package/dist/types/application/index.d.ts +0 -11
- package/dist/types/application/index.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/npm/CommandRunner.d.ts +0 -22
- package/dist/types/npm/CommandRunner.d.ts.map +0 -1
- package/dist/types/npm/FileSystem.d.ts +0 -7
- package/dist/types/npm/FileSystem.d.ts.map +0 -1
- package/dist/types/npm/Package.d.ts +0 -8
- package/dist/types/npm/Package.d.ts.map +0 -1
- package/dist/types/npm/PackageJson.d.ts +0 -13
- package/dist/types/npm/PackageJson.d.ts.map +0 -1
- package/dist/types/npm/PackageWorkspace.d.ts +0 -25
- package/dist/types/npm/PackageWorkspace.d.ts.map +0 -1
- package/dist/types/npm/PackageWorkspaceResolver.d.ts +0 -13
- package/dist/types/npm/PackageWorkspaceResolver.d.ts.map +0 -1
- package/dist/types/npm/index.d.ts +0 -9
- package/dist/types/npm/index.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/Bun.d.ts +0 -24
- package/dist/types/npm/packageManagers/Bun.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/Npm.d.ts +0 -24
- package/dist/types/npm/packageManagers/Npm.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/PackageManager.d.ts +0 -18
- package/dist/types/npm/packageManagers/PackageManager.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/PackageManagerHelpers.d.ts +0 -15
- package/dist/types/npm/packageManagers/PackageManagerHelpers.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/Pnpm.d.ts +0 -24
- package/dist/types/npm/packageManagers/Pnpm.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/Yarn.d.ts +0 -24
- package/dist/types/npm/packageManagers/Yarn.d.ts.map +0 -1
- package/dist/types/npm/packageManagers/YarnClassic.d.ts +0 -24
- package/dist/types/npm/packageManagers/YarnClassic.d.ts.map +0 -1
- package/dist/types/tsconfig.tsbuildinfo +0 -1
- package/dist/types/utils/findPackageRoot.d.ts +0 -2
- package/dist/types/utils/findPackageRoot.d.ts.map +0 -1
- package/dist/types/utils/index.d.ts +0 -2
- package/dist/types/utils/index.d.ts.map +0 -1
- package/src/.eslintrc.cjs +0 -5
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node_path = require("node:path");
|
|
4
|
-
class PackageWorkspace {
|
|
5
|
-
constructor(packageManager, fs, rootPackage, packages) {
|
|
6
|
-
this.packageManager = packageManager;
|
|
7
|
-
this.fs = fs;
|
|
8
|
-
this.rootPackage = rootPackage;
|
|
9
|
-
this.packages = packages;
|
|
10
|
-
}
|
|
11
|
-
get allPackages() {
|
|
12
|
-
return [this.rootPackage, ...this.packages];
|
|
13
|
-
}
|
|
14
|
-
findDefinedDependencies(packageName) {
|
|
15
|
-
return this.allPackages.flatMap((it) => {
|
|
16
|
-
for (const type of ["dependencies", "devDependencies"]) {
|
|
17
|
-
const version = it.packageJson[type]?.[packageName];
|
|
18
|
-
if (version) {
|
|
19
|
-
return [{ pckg: it, isDev: type === "devDependencies", version, name: packageName }];
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return [];
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
async findInstalledDependencies(packageName) {
|
|
26
|
-
const definedDependencies = this.findDefinedDependencies(packageName);
|
|
27
|
-
const deps = [];
|
|
28
|
-
for (const defined of definedDependencies) {
|
|
29
|
-
const packageJsonPath = await this.resolvePackageJson(defined.pckg.dir, packageName);
|
|
30
|
-
if (!packageJsonPath) {
|
|
31
|
-
deps.push({ defined });
|
|
32
|
-
continue;
|
|
33
|
-
}
|
|
34
|
-
const packageJson = JSON.parse(await this.fs.readFile(packageJsonPath, "utf-8"));
|
|
35
|
-
deps.push({ defined, installed: { ...defined, version: packageJson?.version ?? "" } });
|
|
36
|
-
}
|
|
37
|
-
return deps;
|
|
38
|
-
}
|
|
39
|
-
async resolvePackageJson(dir, packageName) {
|
|
40
|
-
while (true) {
|
|
41
|
-
const fullPath = node_path.join(dir, "node_modules", packageName, "package.json");
|
|
42
|
-
if (await this.fs.pathExists(fullPath)) {
|
|
43
|
-
return fullPath;
|
|
44
|
-
}
|
|
45
|
-
if (dir === "/") {
|
|
46
|
-
return null;
|
|
47
|
-
}
|
|
48
|
-
dir = node_path.dirname(dir);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
async updateEverywhere(updates) {
|
|
52
|
-
const defined = Object.keys(updates).flatMap((it) => this.findDefinedDependencies(it));
|
|
53
|
-
const byPckg = /* @__PURE__ */ new Map();
|
|
54
|
-
for (const it of defined) {
|
|
55
|
-
const arr = byPckg.get(it.pckg) ?? [];
|
|
56
|
-
byPckg.set(it.pckg, arr);
|
|
57
|
-
arr.push(it);
|
|
58
|
-
}
|
|
59
|
-
const updated = [];
|
|
60
|
-
for (const [pckg, deps] of byPckg.entries()) {
|
|
61
|
-
const prod = deps.filter((it) => !it.isDev);
|
|
62
|
-
const dev = deps.filter((it) => it.isDev);
|
|
63
|
-
for (const [isDev, deps2] of [[false, prod], [true, dev]]) {
|
|
64
|
-
if (deps2.length === 0) {
|
|
65
|
-
continue;
|
|
66
|
-
}
|
|
67
|
-
await this.packageManager.install({
|
|
68
|
-
pckg,
|
|
69
|
-
isDev,
|
|
70
|
-
dependencies: Object.fromEntries(deps2.map((it) => [it.name, updates[it.name]]))
|
|
71
|
-
});
|
|
72
|
-
updated.push(...deps2);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return updated;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
exports.PackageWorkspace = PackageWorkspace;
|
|
79
|
-
//# sourceMappingURL=PackageWorkspace.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageWorkspace.cjs","sources":["../../../../../packages/cli-common/src/npm/PackageWorkspace.ts"],"sourcesContent":["import { PackageManager } from './packageManagers/PackageManager'\nimport { Package } from './Package'\nimport { dirname, join } from 'node:path'\nimport { PackageJson } from './PackageJson'\nimport { FileSystem } from './FileSystem'\n\nexport type Dependency = {\n\tpckg: Package\n\tisDev: boolean\n\tversion: string\n\tname: string\n}\n\n\nexport class PackageWorkspace {\n\tconstructor(\n\t\tprivate readonly packageManager: PackageManager,\n\t\tprivate readonly fs: FileSystem,\n\t\tpublic readonly rootPackage: Package,\n\t\tpublic readonly packages: Package[],\n\t) {\n\t}\n\n\tget allPackages() {\n\t\treturn [this.rootPackage, ...this.packages]\n\t}\n\n\tpublic findDefinedDependencies(packageName: string): Dependency[] {\n\t\treturn this.allPackages.flatMap<Dependency>(it => {\n\t\t\tfor (const type of ['dependencies', 'devDependencies'] as const) {\n\t\t\t\tconst version = it.packageJson[type]?.[packageName]\n\t\t\t\tif (version) {\n\t\t\t\t\treturn [{ pckg: it, isDev: type === 'devDependencies', version: version, name: packageName }]\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn []\n\t\t})\n\t}\n\n\tpublic async findInstalledDependencies(packageName: string): Promise<{ installed?: Dependency; defined: Dependency }[]> {\n\t\tconst definedDependencies = this.findDefinedDependencies(packageName)\n\n\t\tconst deps: { installed?: Dependency; defined: Dependency }[] = []\n\t\tfor (const defined of definedDependencies) {\n\t\t\tconst packageJsonPath = await this.resolvePackageJson(defined.pckg.dir, packageName)\n\t\t\tif (!packageJsonPath) {\n\t\t\t\tdeps.push({ defined })\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst packageJson = JSON.parse(await this.fs.readFile(packageJsonPath, 'utf-8'))\n\t\t\tdeps.push({ defined, installed: { ...defined, version: packageJson?.version ?? '' } })\n\t\t}\n\t\treturn deps\n\t}\n\n\tprivate async resolvePackageJson(dir: string, packageName: string) {\n\t\twhile (true) {\n\t\t\tconst fullPath = join(dir, 'node_modules', packageName, 'package.json')\n\t\t\tif (await this.fs.pathExists(fullPath)) {\n\t\t\t\treturn fullPath\n\t\t\t}\n\t\t\tif (dir === '/') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tdir = dirname(dir)\n\t\t}\n\t}\n\n\tasync updateEverywhere(updates: Record<string, string>): Promise<Dependency[]> {\n\t\tconst defined = Object.keys(updates).flatMap(it => this.findDefinedDependencies(it))\n\t\tconst byPckg = new Map<Package, Dependency[]>()\n\t\tfor (const it of defined) {\n\t\t\tconst arr = byPckg.get(it.pckg) ?? []\n\t\t\tbyPckg.set(it.pckg, arr)\n\t\t\tarr.push(it)\n\t\t}\n\n\t\tconst updated: Dependency[] = []\n\t\tfor (const [pckg, deps] of byPckg.entries()) {\n\t\t\tconst prod = deps.filter(it => !it.isDev)\n\t\t\tconst dev = deps.filter(it => it.isDev)\n\t\t\tfor (const [isDev, deps] of [[false, prod], [true, dev]] as const) {\n\t\t\t\tif (deps.length === 0) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tawait this.packageManager.install({\n\t\t\t\t\tpckg,\n\t\t\t\t\tisDev,\n\t\t\t\t\tdependencies: Object.fromEntries(deps.map(it => [it.name, updates[it.name]])),\n\t\t\t\t})\n\t\t\t\tupdated.push(...deps)\n\t\t\t}\n\t\t}\n\t\treturn updated\n\t}\n}\n\n"],"names":["join","dirname","deps"],"mappings":";;;AAcO,MAAM,iBAAiB;AAAA,EAC7B,YACkB,gBACA,IACD,aACA,UACf;AAJgB,SAAA,iBAAA;AACA,SAAA,KAAA;AACD,SAAA,cAAA;AACA,SAAA,WAAA;AAAA,EAAA;AAAA,EAIjB,IAAI,cAAc;AACjB,WAAO,CAAC,KAAK,aAAa,GAAG,KAAK,QAAQ;AAAA,EAAA;AAAA,EAGpC,wBAAwB,aAAmC;AAC1D,WAAA,KAAK,YAAY,QAAoB,CAAM,OAAA;AACjD,iBAAW,QAAQ,CAAC,gBAAgB,iBAAiB,GAAY;AAChE,cAAM,UAAU,GAAG,YAAY,IAAI,IAAI,WAAW;AAClD,YAAI,SAAS;AACL,iBAAA,CAAC,EAAE,MAAM,IAAI,OAAO,SAAS,mBAAmB,SAAkB,MAAM,aAAa;AAAA,QAAA;AAAA,MAC7F;AAED,aAAO,CAAC;AAAA,IAAA,CACR;AAAA,EAAA;AAAA,EAGF,MAAa,0BAA0B,aAAiF;AACjH,UAAA,sBAAsB,KAAK,wBAAwB,WAAW;AAEpE,UAAM,OAA0D,CAAC;AACjE,eAAW,WAAW,qBAAqB;AAC1C,YAAM,kBAAkB,MAAM,KAAK,mBAAmB,QAAQ,KAAK,KAAK,WAAW;AACnF,UAAI,CAAC,iBAAiB;AAChB,aAAA,KAAK,EAAE,SAAS;AACrB;AAAA,MAAA;AAEK,YAAA,cAAc,KAAK,MAAM,MAAM,KAAK,GAAG,SAAS,iBAAiB,OAAO,CAAC;AAC/E,WAAK,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,SAAS,aAAa,WAAW,GAAG,EAAA,CAAG;AAAA,IAAA;AAE/E,WAAA;AAAA,EAAA;AAAA,EAGR,MAAc,mBAAmB,KAAa,aAAqB;AAClE,WAAO,MAAM;AACZ,YAAM,WAAWA,UAAAA,KAAK,KAAK,gBAAgB,aAAa,cAAc;AACtE,UAAI,MAAM,KAAK,GAAG,WAAW,QAAQ,GAAG;AAChC,eAAA;AAAA,MAAA;AAER,UAAI,QAAQ,KAAK;AACT,eAAA;AAAA,MAAA;AAER,YAAMC,kBAAQ,GAAG;AAAA,IAAA;AAAA,EAClB;AAAA,EAGD,MAAM,iBAAiB,SAAwD;AACxE,UAAA,UAAU,OAAO,KAAK,OAAO,EAAE,QAAQ,CAAM,OAAA,KAAK,wBAAwB,EAAE,CAAC;AAC7E,UAAA,6BAAa,IAA2B;AAC9C,eAAW,MAAM,SAAS;AACzB,YAAM,MAAM,OAAO,IAAI,GAAG,IAAI,KAAK,CAAC;AAC7B,aAAA,IAAI,GAAG,MAAM,GAAG;AACvB,UAAI,KAAK,EAAE;AAAA,IAAA;AAGZ,UAAM,UAAwB,CAAC;AAC/B,eAAW,CAAC,MAAM,IAAI,KAAK,OAAO,WAAW;AAC5C,YAAM,OAAO,KAAK,OAAO,CAAM,OAAA,CAAC,GAAG,KAAK;AACxC,YAAM,MAAM,KAAK,OAAO,CAAA,OAAM,GAAG,KAAK;AACtC,iBAAW,CAAC,OAAOC,KAAI,KAAK,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAY;AAC9DA,YAAAA,MAAK,WAAW,GAAG;AACtB;AAAA,QAAA;AAEK,cAAA,KAAK,eAAe,QAAQ;AAAA,UACjC;AAAA,UACA;AAAA,UACA,cAAc,OAAO,YAAYA,MAAK,IAAI,CAAM,OAAA,CAAC,GAAG,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;AAAA,QAAA,CAC5E;AACO,gBAAA,KAAK,GAAGA,KAAI;AAAA,MAAA;AAAA,IACrB;AAEM,WAAA;AAAA,EAAA;AAET;;"}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { join, dirname } from "node:path";
|
|
2
|
-
class PackageWorkspace {
|
|
3
|
-
constructor(packageManager, fs, rootPackage, packages) {
|
|
4
|
-
this.packageManager = packageManager;
|
|
5
|
-
this.fs = fs;
|
|
6
|
-
this.rootPackage = rootPackage;
|
|
7
|
-
this.packages = packages;
|
|
8
|
-
}
|
|
9
|
-
get allPackages() {
|
|
10
|
-
return [this.rootPackage, ...this.packages];
|
|
11
|
-
}
|
|
12
|
-
findDefinedDependencies(packageName) {
|
|
13
|
-
return this.allPackages.flatMap((it) => {
|
|
14
|
-
for (const type of ["dependencies", "devDependencies"]) {
|
|
15
|
-
const version = it.packageJson[type]?.[packageName];
|
|
16
|
-
if (version) {
|
|
17
|
-
return [{ pckg: it, isDev: type === "devDependencies", version, name: packageName }];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return [];
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
async findInstalledDependencies(packageName) {
|
|
24
|
-
const definedDependencies = this.findDefinedDependencies(packageName);
|
|
25
|
-
const deps = [];
|
|
26
|
-
for (const defined of definedDependencies) {
|
|
27
|
-
const packageJsonPath = await this.resolvePackageJson(defined.pckg.dir, packageName);
|
|
28
|
-
if (!packageJsonPath) {
|
|
29
|
-
deps.push({ defined });
|
|
30
|
-
continue;
|
|
31
|
-
}
|
|
32
|
-
const packageJson = JSON.parse(await this.fs.readFile(packageJsonPath, "utf-8"));
|
|
33
|
-
deps.push({ defined, installed: { ...defined, version: packageJson?.version ?? "" } });
|
|
34
|
-
}
|
|
35
|
-
return deps;
|
|
36
|
-
}
|
|
37
|
-
async resolvePackageJson(dir, packageName) {
|
|
38
|
-
while (true) {
|
|
39
|
-
const fullPath = join(dir, "node_modules", packageName, "package.json");
|
|
40
|
-
if (await this.fs.pathExists(fullPath)) {
|
|
41
|
-
return fullPath;
|
|
42
|
-
}
|
|
43
|
-
if (dir === "/") {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
dir = dirname(dir);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
async updateEverywhere(updates) {
|
|
50
|
-
const defined = Object.keys(updates).flatMap((it) => this.findDefinedDependencies(it));
|
|
51
|
-
const byPckg = /* @__PURE__ */ new Map();
|
|
52
|
-
for (const it of defined) {
|
|
53
|
-
const arr = byPckg.get(it.pckg) ?? [];
|
|
54
|
-
byPckg.set(it.pckg, arr);
|
|
55
|
-
arr.push(it);
|
|
56
|
-
}
|
|
57
|
-
const updated = [];
|
|
58
|
-
for (const [pckg, deps] of byPckg.entries()) {
|
|
59
|
-
const prod = deps.filter((it) => !it.isDev);
|
|
60
|
-
const dev = deps.filter((it) => it.isDev);
|
|
61
|
-
for (const [isDev, deps2] of [[false, prod], [true, dev]]) {
|
|
62
|
-
if (deps2.length === 0) {
|
|
63
|
-
continue;
|
|
64
|
-
}
|
|
65
|
-
await this.packageManager.install({
|
|
66
|
-
pckg,
|
|
67
|
-
isDev,
|
|
68
|
-
dependencies: Object.fromEntries(deps2.map((it) => [it.name, updates[it.name]]))
|
|
69
|
-
});
|
|
70
|
-
updated.push(...deps2);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
return updated;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
export {
|
|
77
|
-
PackageWorkspace
|
|
78
|
-
};
|
|
79
|
-
//# sourceMappingURL=PackageWorkspace.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageWorkspace.js","sources":["../../../../../packages/cli-common/src/npm/PackageWorkspace.ts"],"sourcesContent":["import { PackageManager } from './packageManagers/PackageManager'\nimport { Package } from './Package'\nimport { dirname, join } from 'node:path'\nimport { PackageJson } from './PackageJson'\nimport { FileSystem } from './FileSystem'\n\nexport type Dependency = {\n\tpckg: Package\n\tisDev: boolean\n\tversion: string\n\tname: string\n}\n\n\nexport class PackageWorkspace {\n\tconstructor(\n\t\tprivate readonly packageManager: PackageManager,\n\t\tprivate readonly fs: FileSystem,\n\t\tpublic readonly rootPackage: Package,\n\t\tpublic readonly packages: Package[],\n\t) {\n\t}\n\n\tget allPackages() {\n\t\treturn [this.rootPackage, ...this.packages]\n\t}\n\n\tpublic findDefinedDependencies(packageName: string): Dependency[] {\n\t\treturn this.allPackages.flatMap<Dependency>(it => {\n\t\t\tfor (const type of ['dependencies', 'devDependencies'] as const) {\n\t\t\t\tconst version = it.packageJson[type]?.[packageName]\n\t\t\t\tif (version) {\n\t\t\t\t\treturn [{ pckg: it, isDev: type === 'devDependencies', version: version, name: packageName }]\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn []\n\t\t})\n\t}\n\n\tpublic async findInstalledDependencies(packageName: string): Promise<{ installed?: Dependency; defined: Dependency }[]> {\n\t\tconst definedDependencies = this.findDefinedDependencies(packageName)\n\n\t\tconst deps: { installed?: Dependency; defined: Dependency }[] = []\n\t\tfor (const defined of definedDependencies) {\n\t\t\tconst packageJsonPath = await this.resolvePackageJson(defined.pckg.dir, packageName)\n\t\t\tif (!packageJsonPath) {\n\t\t\t\tdeps.push({ defined })\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst packageJson = JSON.parse(await this.fs.readFile(packageJsonPath, 'utf-8'))\n\t\t\tdeps.push({ defined, installed: { ...defined, version: packageJson?.version ?? '' } })\n\t\t}\n\t\treturn deps\n\t}\n\n\tprivate async resolvePackageJson(dir: string, packageName: string) {\n\t\twhile (true) {\n\t\t\tconst fullPath = join(dir, 'node_modules', packageName, 'package.json')\n\t\t\tif (await this.fs.pathExists(fullPath)) {\n\t\t\t\treturn fullPath\n\t\t\t}\n\t\t\tif (dir === '/') {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tdir = dirname(dir)\n\t\t}\n\t}\n\n\tasync updateEverywhere(updates: Record<string, string>): Promise<Dependency[]> {\n\t\tconst defined = Object.keys(updates).flatMap(it => this.findDefinedDependencies(it))\n\t\tconst byPckg = new Map<Package, Dependency[]>()\n\t\tfor (const it of defined) {\n\t\t\tconst arr = byPckg.get(it.pckg) ?? []\n\t\t\tbyPckg.set(it.pckg, arr)\n\t\t\tarr.push(it)\n\t\t}\n\n\t\tconst updated: Dependency[] = []\n\t\tfor (const [pckg, deps] of byPckg.entries()) {\n\t\t\tconst prod = deps.filter(it => !it.isDev)\n\t\t\tconst dev = deps.filter(it => it.isDev)\n\t\t\tfor (const [isDev, deps] of [[false, prod], [true, dev]] as const) {\n\t\t\t\tif (deps.length === 0) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tawait this.packageManager.install({\n\t\t\t\t\tpckg,\n\t\t\t\t\tisDev,\n\t\t\t\t\tdependencies: Object.fromEntries(deps.map(it => [it.name, updates[it.name]])),\n\t\t\t\t})\n\t\t\t\tupdated.push(...deps)\n\t\t\t}\n\t\t}\n\t\treturn updated\n\t}\n}\n\n"],"names":["deps"],"mappings":";AAcO,MAAM,iBAAiB;AAAA,EAC7B,YACkB,gBACA,IACD,aACA,UACf;AAJgB,SAAA,iBAAA;AACA,SAAA,KAAA;AACD,SAAA,cAAA;AACA,SAAA,WAAA;AAAA,EAAA;AAAA,EAIjB,IAAI,cAAc;AACjB,WAAO,CAAC,KAAK,aAAa,GAAG,KAAK,QAAQ;AAAA,EAAA;AAAA,EAGpC,wBAAwB,aAAmC;AAC1D,WAAA,KAAK,YAAY,QAAoB,CAAM,OAAA;AACjD,iBAAW,QAAQ,CAAC,gBAAgB,iBAAiB,GAAY;AAChE,cAAM,UAAU,GAAG,YAAY,IAAI,IAAI,WAAW;AAClD,YAAI,SAAS;AACL,iBAAA,CAAC,EAAE,MAAM,IAAI,OAAO,SAAS,mBAAmB,SAAkB,MAAM,aAAa;AAAA,QAAA;AAAA,MAC7F;AAED,aAAO,CAAC;AAAA,IAAA,CACR;AAAA,EAAA;AAAA,EAGF,MAAa,0BAA0B,aAAiF;AACjH,UAAA,sBAAsB,KAAK,wBAAwB,WAAW;AAEpE,UAAM,OAA0D,CAAC;AACjE,eAAW,WAAW,qBAAqB;AAC1C,YAAM,kBAAkB,MAAM,KAAK,mBAAmB,QAAQ,KAAK,KAAK,WAAW;AACnF,UAAI,CAAC,iBAAiB;AAChB,aAAA,KAAK,EAAE,SAAS;AACrB;AAAA,MAAA;AAEK,YAAA,cAAc,KAAK,MAAM,MAAM,KAAK,GAAG,SAAS,iBAAiB,OAAO,CAAC;AAC/E,WAAK,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,SAAS,aAAa,WAAW,GAAG,EAAA,CAAG;AAAA,IAAA;AAE/E,WAAA;AAAA,EAAA;AAAA,EAGR,MAAc,mBAAmB,KAAa,aAAqB;AAClE,WAAO,MAAM;AACZ,YAAM,WAAW,KAAK,KAAK,gBAAgB,aAAa,cAAc;AACtE,UAAI,MAAM,KAAK,GAAG,WAAW,QAAQ,GAAG;AAChC,eAAA;AAAA,MAAA;AAER,UAAI,QAAQ,KAAK;AACT,eAAA;AAAA,MAAA;AAER,YAAM,QAAQ,GAAG;AAAA,IAAA;AAAA,EAClB;AAAA,EAGD,MAAM,iBAAiB,SAAwD;AACxE,UAAA,UAAU,OAAO,KAAK,OAAO,EAAE,QAAQ,CAAM,OAAA,KAAK,wBAAwB,EAAE,CAAC;AAC7E,UAAA,6BAAa,IAA2B;AAC9C,eAAW,MAAM,SAAS;AACzB,YAAM,MAAM,OAAO,IAAI,GAAG,IAAI,KAAK,CAAC;AAC7B,aAAA,IAAI,GAAG,MAAM,GAAG;AACvB,UAAI,KAAK,EAAE;AAAA,IAAA;AAGZ,UAAM,UAAwB,CAAC;AAC/B,eAAW,CAAC,MAAM,IAAI,KAAK,OAAO,WAAW;AAC5C,YAAM,OAAO,KAAK,OAAO,CAAM,OAAA,CAAC,GAAG,KAAK;AACxC,YAAM,MAAM,KAAK,OAAO,CAAA,OAAM,GAAG,KAAK;AACtC,iBAAW,CAAC,OAAOA,KAAI,KAAK,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAY;AAC9DA,YAAAA,MAAK,WAAW,GAAG;AACtB;AAAA,QAAA;AAEK,cAAA,KAAK,eAAe,QAAQ;AAAA,UACjC;AAAA,UACA;AAAA,UACA,cAAc,OAAO,YAAYA,MAAK,IAAI,CAAM,OAAA,CAAC,GAAG,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;AAAA,QAAA,CAC5E;AACO,gBAAA,KAAK,GAAGA,KAAI;AAAA,MAAA;AAAA,IACrB;AAEM,WAAA;AAAA,EAAA;AAET;"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node_path = require("node:path");
|
|
4
|
-
const Package = require("./Package.cjs");
|
|
5
|
-
const PackageWorkspace = require("./PackageWorkspace.cjs");
|
|
6
|
-
class PackageWorkspaceResolver {
|
|
7
|
-
constructor(dir, fs, packageManagers) {
|
|
8
|
-
this.dir = dir;
|
|
9
|
-
this.fs = fs;
|
|
10
|
-
this.packageManagers = packageManagers;
|
|
11
|
-
}
|
|
12
|
-
async resolve() {
|
|
13
|
-
return await this.resolveInternal(this.dir);
|
|
14
|
-
}
|
|
15
|
-
async resolveInternal(dir, packageJsonFound = false) {
|
|
16
|
-
if (!await this.fs.pathExists(node_path.join(dir, "package.json"))) {
|
|
17
|
-
if (dir === "/") {
|
|
18
|
-
if (packageJsonFound) {
|
|
19
|
-
throw `No lockfile found. Please install dependencies using package manager of your choice.`;
|
|
20
|
-
} else {
|
|
21
|
-
throw `package.json not found.`;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return await this.resolveInternal(node_path.dirname(dir), packageJsonFound);
|
|
25
|
-
}
|
|
26
|
-
const packageJson = JSON.parse(await this.fs.readFile(node_path.join(dir, "package.json"), "utf-8"));
|
|
27
|
-
const pm = await this.resolvePackageManager({ dir, packageJson });
|
|
28
|
-
if (!pm) {
|
|
29
|
-
if (dir === "/") {
|
|
30
|
-
throw `No lockfile found. Please install dependencies using package manager of your choice.`;
|
|
31
|
-
}
|
|
32
|
-
return await this.resolveInternal(node_path.dirname(dir), true);
|
|
33
|
-
}
|
|
34
|
-
const rootPackage = new Package.Package(dir, true, packageJson);
|
|
35
|
-
const workspacePackages = await pm.readWorkspacePackages({ dir, packageJson });
|
|
36
|
-
return new PackageWorkspace.PackageWorkspace(pm, this.fs, rootPackage, workspacePackages);
|
|
37
|
-
}
|
|
38
|
-
async resolvePackageManager(args) {
|
|
39
|
-
for (const pm of this.packageManagers) {
|
|
40
|
-
if (await pm.isActive(args)) {
|
|
41
|
-
return pm;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
exports.PackageWorkspaceResolver = PackageWorkspaceResolver;
|
|
48
|
-
//# sourceMappingURL=PackageWorkspaceResolver.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageWorkspaceResolver.cjs","sources":["../../../../../packages/cli-common/src/npm/PackageWorkspaceResolver.ts"],"sourcesContent":["import { PackageManager } from './packageManagers/PackageManager'\nimport { Yarn } from './packageManagers/Yarn'\nimport { YarnClassic } from './packageManagers/YarnClassic'\nimport { Pnpm } from './packageManagers/Pnpm'\nimport { Npm } from './packageManagers/Npm'\nimport { PackageJson } from './PackageJson'\nimport { dirname, join } from 'node:path'\nimport { Package } from './Package'\nimport { PackageWorkspace } from './PackageWorkspace'\nimport { FileSystem } from './FileSystem'\n\nexport class PackageWorkspaceResolver {\n\tconstructor(\n\t\tprivate readonly dir: string,\n\t\tprivate fs: FileSystem,\n\t\tprivate packageManagers: PackageManager[],\n\t) {\n\t}\n\n\tpublic async resolve(): Promise<PackageWorkspace> {\n\t\treturn await this.resolveInternal(this.dir)\n\t}\n\n\tpublic async resolveInternal(dir: string, packageJsonFound: boolean = false): Promise<PackageWorkspace> {\n\t\tif (!(await this.fs.pathExists(join(dir, 'package.json')))) {\n\t\t\tif (dir === '/') {\n\t\t\t\tif (packageJsonFound) {\n\t\t\t\t\tthrow `No lockfile found. Please install dependencies using package manager of your choice.`\n\t\t\t\t} else {\n\t\t\t\t\tthrow `package.json not found.`\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn await this.resolveInternal(dirname(dir), packageJsonFound)\n\t\t}\n\n\t\tconst packageJson = JSON.parse(await this.fs.readFile(join(dir, 'package.json'), 'utf-8')) as PackageJson\n\n\t\tconst pm = await this.resolvePackageManager({ dir, packageJson })\n\t\tif (!pm) {\n\t\t\tif (dir === '/') {\n\t\t\t\tthrow `No lockfile found. Please install dependencies using package manager of your choice.`\n\t\t\t}\n\t\t\treturn await this.resolveInternal(dirname(dir), true)\n\t\t}\n\n\t\tconst rootPackage = new Package(dir, true, packageJson)\n\t\tconst workspacePackages = await pm.readWorkspacePackages({ dir, packageJson })\n\n\t\treturn new PackageWorkspace(pm, this.fs, rootPackage, workspacePackages)\n\t}\n\n\tprivate async resolvePackageManager(args: { dir: string; packageJson: PackageJson }): Promise<PackageManager | null> {\n\t\tfor (const pm of this.packageManagers) {\n\t\t\tif (await pm.isActive(args)) {\n\t\t\t\treturn pm\n\t\t\t}\n\t\t}\n\t\treturn null\n\t}\n}\n"],"names":["join","dirname","Package","PackageWorkspace"],"mappings":";;;;;AAWO,MAAM,yBAAyB;AAAA,EACrC,YACkB,KACT,IACA,iBACP;AAHgB,SAAA,MAAA;AACT,SAAA,KAAA;AACA,SAAA,kBAAA;AAAA,EAAA;AAAA,EAIT,MAAa,UAAqC;AACjD,WAAO,MAAM,KAAK,gBAAgB,KAAK,GAAG;AAAA,EAAA;AAAA,EAG3C,MAAa,gBAAgB,KAAa,mBAA4B,OAAkC;AACnG,QAAA,CAAE,MAAM,KAAK,GAAG,WAAWA,UAAAA,KAAK,KAAK,cAAc,CAAC,GAAI;AAC3D,UAAI,QAAQ,KAAK;AAChB,YAAI,kBAAkB;AACf,gBAAA;AAAA,QAAA,OACA;AACA,gBAAA;AAAA,QAAA;AAAA,MACP;AAED,aAAO,MAAM,KAAK,gBAAgBC,UAAQ,QAAA,GAAG,GAAG,gBAAgB;AAAA,IAAA;AAGjE,UAAM,cAAc,KAAK,MAAM,MAAM,KAAK,GAAG,SAASD,UAAA,KAAK,KAAK,cAAc,GAAG,OAAO,CAAC;AAEzF,UAAM,KAAK,MAAM,KAAK,sBAAsB,EAAE,KAAK,aAAa;AAChE,QAAI,CAAC,IAAI;AACR,UAAI,QAAQ,KAAK;AACV,cAAA;AAAA,MAAA;AAEP,aAAO,MAAM,KAAK,gBAAgBC,UAAQ,QAAA,GAAG,GAAG,IAAI;AAAA,IAAA;AAGrD,UAAM,cAAc,IAAIC,QAAAA,QAAQ,KAAK,MAAM,WAAW;AACtD,UAAM,oBAAoB,MAAM,GAAG,sBAAsB,EAAE,KAAK,aAAa;AAE7E,WAAO,IAAIC,iBAAiB,iBAAA,IAAI,KAAK,IAAI,aAAa,iBAAiB;AAAA,EAAA;AAAA,EAGxE,MAAc,sBAAsB,MAAiF;AACzG,eAAA,MAAM,KAAK,iBAAiB;AACtC,UAAI,MAAM,GAAG,SAAS,IAAI,GAAG;AACrB,eAAA;AAAA,MAAA;AAAA,IACR;AAEM,WAAA;AAAA,EAAA;AAET;;"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { join, dirname } from "node:path";
|
|
2
|
-
import { Package } from "./Package.js";
|
|
3
|
-
import { PackageWorkspace } from "./PackageWorkspace.js";
|
|
4
|
-
class PackageWorkspaceResolver {
|
|
5
|
-
constructor(dir, fs, packageManagers) {
|
|
6
|
-
this.dir = dir;
|
|
7
|
-
this.fs = fs;
|
|
8
|
-
this.packageManagers = packageManagers;
|
|
9
|
-
}
|
|
10
|
-
async resolve() {
|
|
11
|
-
return await this.resolveInternal(this.dir);
|
|
12
|
-
}
|
|
13
|
-
async resolveInternal(dir, packageJsonFound = false) {
|
|
14
|
-
if (!await this.fs.pathExists(join(dir, "package.json"))) {
|
|
15
|
-
if (dir === "/") {
|
|
16
|
-
if (packageJsonFound) {
|
|
17
|
-
throw `No lockfile found. Please install dependencies using package manager of your choice.`;
|
|
18
|
-
} else {
|
|
19
|
-
throw `package.json not found.`;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return await this.resolveInternal(dirname(dir), packageJsonFound);
|
|
23
|
-
}
|
|
24
|
-
const packageJson = JSON.parse(await this.fs.readFile(join(dir, "package.json"), "utf-8"));
|
|
25
|
-
const pm = await this.resolvePackageManager({ dir, packageJson });
|
|
26
|
-
if (!pm) {
|
|
27
|
-
if (dir === "/") {
|
|
28
|
-
throw `No lockfile found. Please install dependencies using package manager of your choice.`;
|
|
29
|
-
}
|
|
30
|
-
return await this.resolveInternal(dirname(dir), true);
|
|
31
|
-
}
|
|
32
|
-
const rootPackage = new Package(dir, true, packageJson);
|
|
33
|
-
const workspacePackages = await pm.readWorkspacePackages({ dir, packageJson });
|
|
34
|
-
return new PackageWorkspace(pm, this.fs, rootPackage, workspacePackages);
|
|
35
|
-
}
|
|
36
|
-
async resolvePackageManager(args) {
|
|
37
|
-
for (const pm of this.packageManagers) {
|
|
38
|
-
if (await pm.isActive(args)) {
|
|
39
|
-
return pm;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return null;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
export {
|
|
46
|
-
PackageWorkspaceResolver
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=PackageWorkspaceResolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageWorkspaceResolver.js","sources":["../../../../../packages/cli-common/src/npm/PackageWorkspaceResolver.ts"],"sourcesContent":["import { PackageManager } from './packageManagers/PackageManager'\nimport { Yarn } from './packageManagers/Yarn'\nimport { YarnClassic } from './packageManagers/YarnClassic'\nimport { Pnpm } from './packageManagers/Pnpm'\nimport { Npm } from './packageManagers/Npm'\nimport { PackageJson } from './PackageJson'\nimport { dirname, join } from 'node:path'\nimport { Package } from './Package'\nimport { PackageWorkspace } from './PackageWorkspace'\nimport { FileSystem } from './FileSystem'\n\nexport class PackageWorkspaceResolver {\n\tconstructor(\n\t\tprivate readonly dir: string,\n\t\tprivate fs: FileSystem,\n\t\tprivate packageManagers: PackageManager[],\n\t) {\n\t}\n\n\tpublic async resolve(): Promise<PackageWorkspace> {\n\t\treturn await this.resolveInternal(this.dir)\n\t}\n\n\tpublic async resolveInternal(dir: string, packageJsonFound: boolean = false): Promise<PackageWorkspace> {\n\t\tif (!(await this.fs.pathExists(join(dir, 'package.json')))) {\n\t\t\tif (dir === '/') {\n\t\t\t\tif (packageJsonFound) {\n\t\t\t\t\tthrow `No lockfile found. Please install dependencies using package manager of your choice.`\n\t\t\t\t} else {\n\t\t\t\t\tthrow `package.json not found.`\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn await this.resolveInternal(dirname(dir), packageJsonFound)\n\t\t}\n\n\t\tconst packageJson = JSON.parse(await this.fs.readFile(join(dir, 'package.json'), 'utf-8')) as PackageJson\n\n\t\tconst pm = await this.resolvePackageManager({ dir, packageJson })\n\t\tif (!pm) {\n\t\t\tif (dir === '/') {\n\t\t\t\tthrow `No lockfile found. Please install dependencies using package manager of your choice.`\n\t\t\t}\n\t\t\treturn await this.resolveInternal(dirname(dir), true)\n\t\t}\n\n\t\tconst rootPackage = new Package(dir, true, packageJson)\n\t\tconst workspacePackages = await pm.readWorkspacePackages({ dir, packageJson })\n\n\t\treturn new PackageWorkspace(pm, this.fs, rootPackage, workspacePackages)\n\t}\n\n\tprivate async resolvePackageManager(args: { dir: string; packageJson: PackageJson }): Promise<PackageManager | null> {\n\t\tfor (const pm of this.packageManagers) {\n\t\t\tif (await pm.isActive(args)) {\n\t\t\t\treturn pm\n\t\t\t}\n\t\t}\n\t\treturn null\n\t}\n}\n"],"names":[],"mappings":";;;AAWO,MAAM,yBAAyB;AAAA,EACrC,YACkB,KACT,IACA,iBACP;AAHgB,SAAA,MAAA;AACT,SAAA,KAAA;AACA,SAAA,kBAAA;AAAA,EAAA;AAAA,EAIT,MAAa,UAAqC;AACjD,WAAO,MAAM,KAAK,gBAAgB,KAAK,GAAG;AAAA,EAAA;AAAA,EAG3C,MAAa,gBAAgB,KAAa,mBAA4B,OAAkC;AACnG,QAAA,CAAE,MAAM,KAAK,GAAG,WAAW,KAAK,KAAK,cAAc,CAAC,GAAI;AAC3D,UAAI,QAAQ,KAAK;AAChB,YAAI,kBAAkB;AACf,gBAAA;AAAA,QAAA,OACA;AACA,gBAAA;AAAA,QAAA;AAAA,MACP;AAED,aAAO,MAAM,KAAK,gBAAgB,QAAQ,GAAG,GAAG,gBAAgB;AAAA,IAAA;AAGjE,UAAM,cAAc,KAAK,MAAM,MAAM,KAAK,GAAG,SAAS,KAAK,KAAK,cAAc,GAAG,OAAO,CAAC;AAEzF,UAAM,KAAK,MAAM,KAAK,sBAAsB,EAAE,KAAK,aAAa;AAChE,QAAI,CAAC,IAAI;AACR,UAAI,QAAQ,KAAK;AACV,cAAA;AAAA,MAAA;AAEP,aAAO,MAAM,KAAK,gBAAgB,QAAQ,GAAG,GAAG,IAAI;AAAA,IAAA;AAGrD,UAAM,cAAc,IAAI,QAAQ,KAAK,MAAM,WAAW;AACtD,UAAM,oBAAoB,MAAM,GAAG,sBAAsB,EAAE,KAAK,aAAa;AAE7E,WAAO,IAAI,iBAAiB,IAAI,KAAK,IAAI,aAAa,iBAAiB;AAAA,EAAA;AAAA,EAGxE,MAAc,sBAAsB,MAAiF;AACzG,eAAA,MAAM,KAAK,iBAAiB;AACtC,UAAI,MAAM,GAAG,SAAS,IAAI,GAAG;AACrB,eAAA;AAAA,MAAA;AAAA,IACR;AAEM,WAAA;AAAA,EAAA;AAET;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node_path = require("node:path");
|
|
4
|
-
const PackageManagerHelpers = require("./PackageManagerHelpers.cjs");
|
|
5
|
-
class Bun {
|
|
6
|
-
constructor(fs, commandRunner) {
|
|
7
|
-
this.fs = fs;
|
|
8
|
-
this.commandRunner = commandRunner;
|
|
9
|
-
}
|
|
10
|
-
async install({ pckg, dependencies, isDev }) {
|
|
11
|
-
const { output } = this.commandRunner.runCommand("bun", [
|
|
12
|
-
"add",
|
|
13
|
-
isDev ? "--dev" : void 0,
|
|
14
|
-
...PackageManagerHelpers.PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
15
|
-
], {
|
|
16
|
-
cwd: pckg.dir,
|
|
17
|
-
stderr: process.stderr,
|
|
18
|
-
stdout: process.stdout
|
|
19
|
-
});
|
|
20
|
-
await output;
|
|
21
|
-
}
|
|
22
|
-
async isActive({ dir }) {
|
|
23
|
-
return await this.fs.pathExists(node_path.join(dir, "bun.lock")) || await this.fs.pathExists(node_path.join(dir, "bun.lockb"));
|
|
24
|
-
}
|
|
25
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
26
|
-
return await PackageManagerHelpers.PackageManagerHelpers.readWorkspacePackages({
|
|
27
|
-
fs: this.fs,
|
|
28
|
-
dir,
|
|
29
|
-
workspaces: PackageManagerHelpers.PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson })
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.Bun = Bun;
|
|
34
|
-
//# sourceMappingURL=Bun.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Bun.cjs","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/Bun.ts"],"sourcesContent":["import { PackageManager } from './PackageManager'\nimport { FileSystem } from '../FileSystem'\nimport { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { PackageManagerHelpers } from './PackageManagerHelpers'\nimport { CommandRunner } from '../CommandRunner'\n\nexport class Bun implements PackageManager {\n\tconstructor(\n\t\tprivate readonly fs: FileSystem,\n\t\tprivate readonly commandRunner: CommandRunner,\n\t) {\n\t}\n\n\tasync install({ pckg, dependencies, isDev }: { pckg: Package; isDev: boolean; dependencies: Record<string, string> }): Promise<void> {\n\t\tconst { output } = this.commandRunner.runCommand('bun', [\n\t\t\t'add',\n\t\t\tisDev ? '--dev' : undefined,\n\t\t\t...PackageManagerHelpers.formatPackagesToInstall(dependencies),\n\t\t], {\n\t\t\tcwd: pckg.dir,\n\t\t\tstderr: process.stderr,\n\t\t\tstdout: process.stdout,\n\t\t})\n\t\tawait output\n\t}\n\n\tasync isActive({ dir }: { dir: string; packageJson: PackageJson }): Promise<boolean> {\n\t\treturn await this.fs.pathExists(join(dir, 'bun.lock')) || await this.fs.pathExists(join(dir, 'bun.lockb'))\n\t}\n\n\tasync readWorkspacePackages({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<Package[]> {\n\t\treturn await PackageManagerHelpers.readWorkspacePackages({\n\t\t\tfs: this.fs,\n\t\t\tdir,\n\t\t\tworkspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson }),\n\t\t})\n\t}\n}\n"],"names":["PackageManagerHelpers","join"],"mappings":";;;;AAQO,MAAM,IAA8B;AAAA,EAC1C,YACkB,IACA,eAChB;AAFgB,SAAA,KAAA;AACA,SAAA,gBAAA;AAAA,EAAA;AAAA,EAIlB,MAAM,QAAQ,EAAE,MAAM,cAAc,SAAiG;AACpI,UAAM,EAAE,OAAO,IAAI,KAAK,cAAc,WAAW,OAAO;AAAA,MACvD;AAAA,MACA,QAAQ,UAAU;AAAA,MAClB,GAAGA,sBAAAA,sBAAsB,wBAAwB,YAAY;AAAA,IAAA,GAC3D;AAAA,MACF,KAAK,KAAK;AAAA,MACV,QAAQ,QAAQ;AAAA,MAChB,QAAQ,QAAQ;AAAA,IAAA,CAChB;AACK,UAAA;AAAA,EAAA;AAAA,EAGP,MAAM,SAAS,EAAE,OAAoE;AACpF,WAAO,MAAM,KAAK,GAAG,WAAWC,UAAA,KAAK,KAAK,UAAU,CAAC,KAAK,MAAM,KAAK,GAAG,WAAWA,UAAAA,KAAK,KAAK,WAAW,CAAC;AAAA,EAAA;AAAA,EAG1G,MAAM,sBAAsB,EAAE,KAAK,eAA8E;AACzG,WAAA,MAAMD,4CAAsB,sBAAsB;AAAA,MACxD,IAAI,KAAK;AAAA,MACT;AAAA,MACA,YAAYA,sBAAA,sBAAsB,6BAA6B,EAAE,YAAa,CAAA;AAAA,IAAA,CAC9E;AAAA,EAAA;AAEH;;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { PackageManagerHelpers } from "./PackageManagerHelpers.js";
|
|
3
|
-
class Bun {
|
|
4
|
-
constructor(fs, commandRunner) {
|
|
5
|
-
this.fs = fs;
|
|
6
|
-
this.commandRunner = commandRunner;
|
|
7
|
-
}
|
|
8
|
-
async install({ pckg, dependencies, isDev }) {
|
|
9
|
-
const { output } = this.commandRunner.runCommand("bun", [
|
|
10
|
-
"add",
|
|
11
|
-
isDev ? "--dev" : void 0,
|
|
12
|
-
...PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
13
|
-
], {
|
|
14
|
-
cwd: pckg.dir,
|
|
15
|
-
stderr: process.stderr,
|
|
16
|
-
stdout: process.stdout
|
|
17
|
-
});
|
|
18
|
-
await output;
|
|
19
|
-
}
|
|
20
|
-
async isActive({ dir }) {
|
|
21
|
-
return await this.fs.pathExists(join(dir, "bun.lock")) || await this.fs.pathExists(join(dir, "bun.lockb"));
|
|
22
|
-
}
|
|
23
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
24
|
-
return await PackageManagerHelpers.readWorkspacePackages({
|
|
25
|
-
fs: this.fs,
|
|
26
|
-
dir,
|
|
27
|
-
workspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson })
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export {
|
|
32
|
-
Bun
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=Bun.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Bun.js","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/Bun.ts"],"sourcesContent":["import { PackageManager } from './PackageManager'\nimport { FileSystem } from '../FileSystem'\nimport { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { PackageManagerHelpers } from './PackageManagerHelpers'\nimport { CommandRunner } from '../CommandRunner'\n\nexport class Bun implements PackageManager {\n\tconstructor(\n\t\tprivate readonly fs: FileSystem,\n\t\tprivate readonly commandRunner: CommandRunner,\n\t) {\n\t}\n\n\tasync install({ pckg, dependencies, isDev }: { pckg: Package; isDev: boolean; dependencies: Record<string, string> }): Promise<void> {\n\t\tconst { output } = this.commandRunner.runCommand('bun', [\n\t\t\t'add',\n\t\t\tisDev ? '--dev' : undefined,\n\t\t\t...PackageManagerHelpers.formatPackagesToInstall(dependencies),\n\t\t], {\n\t\t\tcwd: pckg.dir,\n\t\t\tstderr: process.stderr,\n\t\t\tstdout: process.stdout,\n\t\t})\n\t\tawait output\n\t}\n\n\tasync isActive({ dir }: { dir: string; packageJson: PackageJson }): Promise<boolean> {\n\t\treturn await this.fs.pathExists(join(dir, 'bun.lock')) || await this.fs.pathExists(join(dir, 'bun.lockb'))\n\t}\n\n\tasync readWorkspacePackages({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<Package[]> {\n\t\treturn await PackageManagerHelpers.readWorkspacePackages({\n\t\t\tfs: this.fs,\n\t\t\tdir,\n\t\t\tworkspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson }),\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;AAQO,MAAM,IAA8B;AAAA,EAC1C,YACkB,IACA,eAChB;AAFgB,SAAA,KAAA;AACA,SAAA,gBAAA;AAAA,EAAA;AAAA,EAIlB,MAAM,QAAQ,EAAE,MAAM,cAAc,SAAiG;AACpI,UAAM,EAAE,OAAO,IAAI,KAAK,cAAc,WAAW,OAAO;AAAA,MACvD;AAAA,MACA,QAAQ,UAAU;AAAA,MAClB,GAAG,sBAAsB,wBAAwB,YAAY;AAAA,IAAA,GAC3D;AAAA,MACF,KAAK,KAAK;AAAA,MACV,QAAQ,QAAQ;AAAA,MAChB,QAAQ,QAAQ;AAAA,IAAA,CAChB;AACK,UAAA;AAAA,EAAA;AAAA,EAGP,MAAM,SAAS,EAAE,OAAoE;AACpF,WAAO,MAAM,KAAK,GAAG,WAAW,KAAK,KAAK,UAAU,CAAC,KAAK,MAAM,KAAK,GAAG,WAAW,KAAK,KAAK,WAAW,CAAC;AAAA,EAAA;AAAA,EAG1G,MAAM,sBAAsB,EAAE,KAAK,eAA8E;AACzG,WAAA,MAAM,sBAAsB,sBAAsB;AAAA,MACxD,IAAI,KAAK;AAAA,MACT;AAAA,MACA,YAAY,sBAAsB,6BAA6B,EAAE,YAAa,CAAA;AAAA,IAAA,CAC9E;AAAA,EAAA;AAEH;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node_path = require("node:path");
|
|
4
|
-
const PackageManagerHelpers = require("./PackageManagerHelpers.cjs");
|
|
5
|
-
class Npm {
|
|
6
|
-
constructor(fs, commandRunner) {
|
|
7
|
-
this.fs = fs;
|
|
8
|
-
this.commandRunner = commandRunner;
|
|
9
|
-
}
|
|
10
|
-
async install({ pckg, dependencies, isDev }) {
|
|
11
|
-
const { output } = this.commandRunner.runCommand("npm", [
|
|
12
|
-
"install",
|
|
13
|
-
isDev ? "--save-dev" : "--save",
|
|
14
|
-
...PackageManagerHelpers.PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
15
|
-
], {
|
|
16
|
-
cwd: pckg.dir,
|
|
17
|
-
stderr: process.stderr,
|
|
18
|
-
stdout: process.stdout
|
|
19
|
-
});
|
|
20
|
-
await output;
|
|
21
|
-
}
|
|
22
|
-
async isActive({ dir, packageJson }) {
|
|
23
|
-
return await this.fs.pathExists(node_path.join(dir, "package-lock.json"));
|
|
24
|
-
}
|
|
25
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
26
|
-
return await PackageManagerHelpers.PackageManagerHelpers.readWorkspacePackages({
|
|
27
|
-
fs: this.fs,
|
|
28
|
-
dir,
|
|
29
|
-
workspaces: PackageManagerHelpers.PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson })
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.Npm = Npm;
|
|
34
|
-
//# sourceMappingURL=Npm.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Npm.cjs","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/Npm.ts"],"sourcesContent":["import { PackageManager } from './PackageManager'\nimport { FileSystem } from '../FileSystem'\nimport { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { PackageManagerHelpers } from './PackageManagerHelpers'\nimport { CommandRunner } from '../CommandRunner'\n\nexport class Npm implements PackageManager {\n\tconstructor(\n\t\tprivate readonly fs: FileSystem,\n\t\tprivate readonly commandRunner: CommandRunner,\n\t) {\n\t}\n\n\tasync install({ pckg, dependencies, isDev }: { pckg: Package; isDev: boolean; dependencies: Record<string, string> }): Promise<void> {\n\t\tconst { output } = this.commandRunner.runCommand('npm', [\n\t\t\t'install',\n\t\t\tisDev ? '--save-dev' : '--save',\n\t\t\t...PackageManagerHelpers.formatPackagesToInstall(dependencies),\n\t\t], {\n\t\t\tcwd: pckg.dir,\n\t\t\tstderr: process.stderr,\n\t\t\tstdout: process.stdout,\n\t\t})\n\t\tawait output\n\t}\n\n\tasync isActive({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<boolean> {\n\t\treturn await this.fs.pathExists(join(dir, 'package-lock.json'))\n\t}\n\n\tasync readWorkspacePackages({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<Package[]> {\n\t\treturn await PackageManagerHelpers.readWorkspacePackages({\n\t\t\tfs: this.fs,\n\t\t\tdir,\n\t\t\tworkspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson }),\n\t\t})\n\t}\n}\n"],"names":["PackageManagerHelpers","join"],"mappings":";;;;AAQO,MAAM,IAA8B;AAAA,EAC1C,YACkB,IACA,eAChB;AAFgB,SAAA,KAAA;AACA,SAAA,gBAAA;AAAA,EAAA;AAAA,EAIlB,MAAM,QAAQ,EAAE,MAAM,cAAc,SAAiG;AACpI,UAAM,EAAE,OAAO,IAAI,KAAK,cAAc,WAAW,OAAO;AAAA,MACvD;AAAA,MACA,QAAQ,eAAe;AAAA,MACvB,GAAGA,sBAAAA,sBAAsB,wBAAwB,YAAY;AAAA,IAAA,GAC3D;AAAA,MACF,KAAK,KAAK;AAAA,MACV,QAAQ,QAAQ;AAAA,MAChB,QAAQ,QAAQ;AAAA,IAAA,CAChB;AACK,UAAA;AAAA,EAAA;AAAA,EAGP,MAAM,SAAS,EAAE,KAAK,eAA4E;AACjG,WAAO,MAAM,KAAK,GAAG,WAAWC,UAAAA,KAAK,KAAK,mBAAmB,CAAC;AAAA,EAAA;AAAA,EAG/D,MAAM,sBAAsB,EAAE,KAAK,eAA8E;AACzG,WAAA,MAAMD,4CAAsB,sBAAsB;AAAA,MACxD,IAAI,KAAK;AAAA,MACT;AAAA,MACA,YAAYA,sBAAA,sBAAsB,6BAA6B,EAAE,YAAa,CAAA;AAAA,IAAA,CAC9E;AAAA,EAAA;AAEH;;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { PackageManagerHelpers } from "./PackageManagerHelpers.js";
|
|
3
|
-
class Npm {
|
|
4
|
-
constructor(fs, commandRunner) {
|
|
5
|
-
this.fs = fs;
|
|
6
|
-
this.commandRunner = commandRunner;
|
|
7
|
-
}
|
|
8
|
-
async install({ pckg, dependencies, isDev }) {
|
|
9
|
-
const { output } = this.commandRunner.runCommand("npm", [
|
|
10
|
-
"install",
|
|
11
|
-
isDev ? "--save-dev" : "--save",
|
|
12
|
-
...PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
13
|
-
], {
|
|
14
|
-
cwd: pckg.dir,
|
|
15
|
-
stderr: process.stderr,
|
|
16
|
-
stdout: process.stdout
|
|
17
|
-
});
|
|
18
|
-
await output;
|
|
19
|
-
}
|
|
20
|
-
async isActive({ dir, packageJson }) {
|
|
21
|
-
return await this.fs.pathExists(join(dir, "package-lock.json"));
|
|
22
|
-
}
|
|
23
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
24
|
-
return await PackageManagerHelpers.readWorkspacePackages({
|
|
25
|
-
fs: this.fs,
|
|
26
|
-
dir,
|
|
27
|
-
workspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson })
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export {
|
|
32
|
-
Npm
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=Npm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Npm.js","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/Npm.ts"],"sourcesContent":["import { PackageManager } from './PackageManager'\nimport { FileSystem } from '../FileSystem'\nimport { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { PackageManagerHelpers } from './PackageManagerHelpers'\nimport { CommandRunner } from '../CommandRunner'\n\nexport class Npm implements PackageManager {\n\tconstructor(\n\t\tprivate readonly fs: FileSystem,\n\t\tprivate readonly commandRunner: CommandRunner,\n\t) {\n\t}\n\n\tasync install({ pckg, dependencies, isDev }: { pckg: Package; isDev: boolean; dependencies: Record<string, string> }): Promise<void> {\n\t\tconst { output } = this.commandRunner.runCommand('npm', [\n\t\t\t'install',\n\t\t\tisDev ? '--save-dev' : '--save',\n\t\t\t...PackageManagerHelpers.formatPackagesToInstall(dependencies),\n\t\t], {\n\t\t\tcwd: pckg.dir,\n\t\t\tstderr: process.stderr,\n\t\t\tstdout: process.stdout,\n\t\t})\n\t\tawait output\n\t}\n\n\tasync isActive({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<boolean> {\n\t\treturn await this.fs.pathExists(join(dir, 'package-lock.json'))\n\t}\n\n\tasync readWorkspacePackages({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<Package[]> {\n\t\treturn await PackageManagerHelpers.readWorkspacePackages({\n\t\t\tfs: this.fs,\n\t\t\tdir,\n\t\t\tworkspaces: PackageManagerHelpers.getWorkspacesFromPackageJson({ packageJson }),\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;AAQO,MAAM,IAA8B;AAAA,EAC1C,YACkB,IACA,eAChB;AAFgB,SAAA,KAAA;AACA,SAAA,gBAAA;AAAA,EAAA;AAAA,EAIlB,MAAM,QAAQ,EAAE,MAAM,cAAc,SAAiG;AACpI,UAAM,EAAE,OAAO,IAAI,KAAK,cAAc,WAAW,OAAO;AAAA,MACvD;AAAA,MACA,QAAQ,eAAe;AAAA,MACvB,GAAG,sBAAsB,wBAAwB,YAAY;AAAA,IAAA,GAC3D;AAAA,MACF,KAAK,KAAK;AAAA,MACV,QAAQ,QAAQ;AAAA,MAChB,QAAQ,QAAQ;AAAA,IAAA,CAChB;AACK,UAAA;AAAA,EAAA;AAAA,EAGP,MAAM,SAAS,EAAE,KAAK,eAA4E;AACjG,WAAO,MAAM,KAAK,GAAG,WAAW,KAAK,KAAK,mBAAmB,CAAC;AAAA,EAAA;AAAA,EAG/D,MAAM,sBAAsB,EAAE,KAAK,eAA8E;AACzG,WAAA,MAAM,sBAAsB,sBAAsB;AAAA,MACxD,IAAI,KAAK;AAAA,MACT;AAAA,MACA,YAAY,sBAAsB,6BAA6B,EAAE,YAAa,CAAA;AAAA,IAAA,CAC9E;AAAA,EAAA;AAEH;"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const Package = require("../Package.cjs");
|
|
4
|
-
const node_path = require("node:path");
|
|
5
|
-
class PackageManagerHelpers {
|
|
6
|
-
static async readWorkspacePackages({ fs, dir, workspaces }) {
|
|
7
|
-
const dirs = await fs.listDirectories(dir, workspaces);
|
|
8
|
-
const packageJson = await Promise.all(dirs.map(async (it) => {
|
|
9
|
-
const packageJsonPath = node_path.join(dir, it, "package.json");
|
|
10
|
-
if (!await fs.pathExists(packageJsonPath)) {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
const packageJson2 = JSON.parse(await fs.readFile(packageJsonPath, "utf-8"));
|
|
14
|
-
return [packageJson2, it];
|
|
15
|
-
}));
|
|
16
|
-
return packageJson.filter((it) => it !== null).map(([packageJson2, subDir]) => new Package.Package(node_path.join(dir, subDir), false, packageJson2));
|
|
17
|
-
}
|
|
18
|
-
static getWorkspacesFromPackageJson({ packageJson }) {
|
|
19
|
-
if (!packageJson.workspaces) {
|
|
20
|
-
return [];
|
|
21
|
-
}
|
|
22
|
-
if (Array.isArray(packageJson.workspaces)) {
|
|
23
|
-
return packageJson.workspaces;
|
|
24
|
-
}
|
|
25
|
-
return [...packageJson.workspaces?.packages ?? [], ...packageJson.workspaces?.nohoist ?? []];
|
|
26
|
-
}
|
|
27
|
-
static formatPackagesToInstall(packages) {
|
|
28
|
-
return Object.entries(packages).map(([name, version]) => `${name}@${version}`);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.PackageManagerHelpers = PackageManagerHelpers;
|
|
32
|
-
//# sourceMappingURL=PackageManagerHelpers.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageManagerHelpers.cjs","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/PackageManagerHelpers.ts"],"sourcesContent":["import { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { FileSystem } from '../FileSystem'\n\nexport class PackageManagerHelpers {\n\tstatic async readWorkspacePackages({ fs, dir, workspaces }: {\n\t\tfs: FileSystem\n\t\tdir: string\n\t\tworkspaces: string[]\n\t}): Promise<Package[]> {\n\t\tconst dirs = await fs.listDirectories(dir, workspaces)\n\n\t\tconst packageJson = await Promise.all(dirs.map(async it => {\n\t\t\tconst packageJsonPath = join(dir, it, 'package.json')\n\t\t\tif (!(await fs.pathExists(packageJsonPath))) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst packageJson: PackageJson = JSON.parse(await fs.readFile(packageJsonPath, 'utf-8'))\n\t\t\treturn [packageJson, it] as const\n\t\t}))\n\n\t\treturn packageJson.filter(<T>(it: T | null): it is T => it !== null).map(([packageJson, subDir]) => new Package(join(dir, subDir), false, packageJson))\n\t}\n\n\tstatic getWorkspacesFromPackageJson({ packageJson }: { packageJson: PackageJson }): string[] {\n\t\tif (!packageJson.workspaces) {\n\t\t\treturn []\n\t\t}\n\t\tif (Array.isArray(packageJson.workspaces)) {\n\t\t\treturn packageJson.workspaces\n\t\t}\n\t\treturn [...packageJson.workspaces?.packages ?? [], ...packageJson.workspaces?.nohoist ?? []]\n\t}\n\n\tstatic formatPackagesToInstall(packages: Record<string, string>): string[] {\n\t\treturn Object.entries(packages).map(([name, version]) => `${name}@${version}`)\n\t}\n}\n"],"names":["join","packageJson","Package"],"mappings":";;;;AAKO,MAAM,sBAAsB;AAAA,EAClC,aAAa,sBAAsB,EAAE,IAAI,KAAK,cAIvB;AACtB,UAAM,OAAO,MAAM,GAAG,gBAAgB,KAAK,UAAU;AAErD,UAAM,cAAc,MAAM,QAAQ,IAAI,KAAK,IAAI,OAAM,OAAM;AAC1D,YAAM,kBAAkBA,UAAA,KAAK,KAAK,IAAI,cAAc;AACpD,UAAI,CAAE,MAAM,GAAG,WAAW,eAAe,GAAI;AACrC,eAAA;AAAA,MAAA;AAEFC,YAAAA,eAA2B,KAAK,MAAM,MAAM,GAAG,SAAS,iBAAiB,OAAO,CAAC;AAChF,aAAA,CAACA,cAAa,EAAE;AAAA,IAAA,CACvB,CAAC;AAEK,WAAA,YAAY,OAAO,CAAI,OAA0B,OAAO,IAAI,EAAE,IAAI,CAAC,CAACA,cAAa,MAAM,MAAM,IAAIC,QAAQ,QAAAF,eAAK,KAAK,MAAM,GAAG,OAAOC,YAAW,CAAC;AAAA,EAAA;AAAA,EAGvJ,OAAO,6BAA6B,EAAE,eAAuD;AACxF,QAAA,CAAC,YAAY,YAAY;AAC5B,aAAO,CAAC;AAAA,IAAA;AAET,QAAI,MAAM,QAAQ,YAAY,UAAU,GAAG;AAC1C,aAAO,YAAY;AAAA,IAAA;AAEpB,WAAO,CAAC,GAAG,YAAY,YAAY,YAAY,IAAI,GAAG,YAAY,YAAY,WAAW,EAAE;AAAA,EAAA;AAAA,EAG5F,OAAO,wBAAwB,UAA4C;AAC1E,WAAO,OAAO,QAAQ,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,OAAO,MAAM,GAAG,IAAI,IAAI,OAAO,EAAE;AAAA,EAAA;AAE/E;;"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Package } from "../Package.js";
|
|
2
|
-
import { join } from "node:path";
|
|
3
|
-
class PackageManagerHelpers {
|
|
4
|
-
static async readWorkspacePackages({ fs, dir, workspaces }) {
|
|
5
|
-
const dirs = await fs.listDirectories(dir, workspaces);
|
|
6
|
-
const packageJson = await Promise.all(dirs.map(async (it) => {
|
|
7
|
-
const packageJsonPath = join(dir, it, "package.json");
|
|
8
|
-
if (!await fs.pathExists(packageJsonPath)) {
|
|
9
|
-
return null;
|
|
10
|
-
}
|
|
11
|
-
const packageJson2 = JSON.parse(await fs.readFile(packageJsonPath, "utf-8"));
|
|
12
|
-
return [packageJson2, it];
|
|
13
|
-
}));
|
|
14
|
-
return packageJson.filter((it) => it !== null).map(([packageJson2, subDir]) => new Package(join(dir, subDir), false, packageJson2));
|
|
15
|
-
}
|
|
16
|
-
static getWorkspacesFromPackageJson({ packageJson }) {
|
|
17
|
-
if (!packageJson.workspaces) {
|
|
18
|
-
return [];
|
|
19
|
-
}
|
|
20
|
-
if (Array.isArray(packageJson.workspaces)) {
|
|
21
|
-
return packageJson.workspaces;
|
|
22
|
-
}
|
|
23
|
-
return [...packageJson.workspaces?.packages ?? [], ...packageJson.workspaces?.nohoist ?? []];
|
|
24
|
-
}
|
|
25
|
-
static formatPackagesToInstall(packages) {
|
|
26
|
-
return Object.entries(packages).map(([name, version]) => `${name}@${version}`);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
export {
|
|
30
|
-
PackageManagerHelpers
|
|
31
|
-
};
|
|
32
|
-
//# sourceMappingURL=PackageManagerHelpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PackageManagerHelpers.js","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/PackageManagerHelpers.ts"],"sourcesContent":["import { Package } from '../Package'\nimport { PackageJson } from '../PackageJson'\nimport { join } from 'node:path'\nimport { FileSystem } from '../FileSystem'\n\nexport class PackageManagerHelpers {\n\tstatic async readWorkspacePackages({ fs, dir, workspaces }: {\n\t\tfs: FileSystem\n\t\tdir: string\n\t\tworkspaces: string[]\n\t}): Promise<Package[]> {\n\t\tconst dirs = await fs.listDirectories(dir, workspaces)\n\n\t\tconst packageJson = await Promise.all(dirs.map(async it => {\n\t\t\tconst packageJsonPath = join(dir, it, 'package.json')\n\t\t\tif (!(await fs.pathExists(packageJsonPath))) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\tconst packageJson: PackageJson = JSON.parse(await fs.readFile(packageJsonPath, 'utf-8'))\n\t\t\treturn [packageJson, it] as const\n\t\t}))\n\n\t\treturn packageJson.filter(<T>(it: T | null): it is T => it !== null).map(([packageJson, subDir]) => new Package(join(dir, subDir), false, packageJson))\n\t}\n\n\tstatic getWorkspacesFromPackageJson({ packageJson }: { packageJson: PackageJson }): string[] {\n\t\tif (!packageJson.workspaces) {\n\t\t\treturn []\n\t\t}\n\t\tif (Array.isArray(packageJson.workspaces)) {\n\t\t\treturn packageJson.workspaces\n\t\t}\n\t\treturn [...packageJson.workspaces?.packages ?? [], ...packageJson.workspaces?.nohoist ?? []]\n\t}\n\n\tstatic formatPackagesToInstall(packages: Record<string, string>): string[] {\n\t\treturn Object.entries(packages).map(([name, version]) => `${name}@${version}`)\n\t}\n}\n"],"names":["packageJson"],"mappings":";;AAKO,MAAM,sBAAsB;AAAA,EAClC,aAAa,sBAAsB,EAAE,IAAI,KAAK,cAIvB;AACtB,UAAM,OAAO,MAAM,GAAG,gBAAgB,KAAK,UAAU;AAErD,UAAM,cAAc,MAAM,QAAQ,IAAI,KAAK,IAAI,OAAM,OAAM;AAC1D,YAAM,kBAAkB,KAAK,KAAK,IAAI,cAAc;AACpD,UAAI,CAAE,MAAM,GAAG,WAAW,eAAe,GAAI;AACrC,eAAA;AAAA,MAAA;AAEFA,YAAAA,eAA2B,KAAK,MAAM,MAAM,GAAG,SAAS,iBAAiB,OAAO,CAAC;AAChF,aAAA,CAACA,cAAa,EAAE;AAAA,IAAA,CACvB,CAAC;AAEK,WAAA,YAAY,OAAO,CAAI,OAA0B,OAAO,IAAI,EAAE,IAAI,CAAC,CAACA,cAAa,MAAM,MAAM,IAAI,QAAQ,KAAK,KAAK,MAAM,GAAG,OAAOA,YAAW,CAAC;AAAA,EAAA;AAAA,EAGvJ,OAAO,6BAA6B,EAAE,eAAuD;AACxF,QAAA,CAAC,YAAY,YAAY;AAC5B,aAAO,CAAC;AAAA,IAAA;AAET,QAAI,MAAM,QAAQ,YAAY,UAAU,GAAG;AAC1C,aAAO,YAAY;AAAA,IAAA;AAEpB,WAAO,CAAC,GAAG,YAAY,YAAY,YAAY,IAAI,GAAG,YAAY,YAAY,WAAW,EAAE;AAAA,EAAA;AAAA,EAG5F,OAAO,wBAAwB,UAA4C;AAC1E,WAAO,OAAO,QAAQ,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,OAAO,MAAM,GAAG,IAAI,IAAI,OAAO,EAAE;AAAA,EAAA;AAE/E;"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const node_path = require("node:path");
|
|
4
|
-
const PackageManagerHelpers = require("./PackageManagerHelpers.cjs");
|
|
5
|
-
class Pnpm {
|
|
6
|
-
constructor(fs, commandRunner) {
|
|
7
|
-
this.fs = fs;
|
|
8
|
-
this.commandRunner = commandRunner;
|
|
9
|
-
}
|
|
10
|
-
async install({ pckg, dependencies, isDev }) {
|
|
11
|
-
const { output } = this.commandRunner.runCommand("pnpm", [
|
|
12
|
-
"add",
|
|
13
|
-
isDev ? "--save-dev" : "--save",
|
|
14
|
-
pckg.isRoot ? "--ignore-workspace-root-check" : void 0,
|
|
15
|
-
...PackageManagerHelpers.PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
16
|
-
], {
|
|
17
|
-
cwd: pckg.dir,
|
|
18
|
-
stderr: process.stderr,
|
|
19
|
-
stdout: process.stdout
|
|
20
|
-
});
|
|
21
|
-
await output;
|
|
22
|
-
}
|
|
23
|
-
async isActive({ dir, packageJson }) {
|
|
24
|
-
return await this.fs.pathExists(node_path.join(dir, "pnpm-lock.yaml"));
|
|
25
|
-
}
|
|
26
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
27
|
-
let pnpmWorkspaces;
|
|
28
|
-
if (await this.fs.pathExists(node_path.join(dir, "pnpm-workspace.yaml"))) {
|
|
29
|
-
pnpmWorkspaces = JSON.parse(await this.fs.readFile(node_path.join(dir, "pnpm-workspace.yaml"), "utf-8"));
|
|
30
|
-
}
|
|
31
|
-
return await PackageManagerHelpers.PackageManagerHelpers.readWorkspacePackages({
|
|
32
|
-
fs: this.fs,
|
|
33
|
-
dir,
|
|
34
|
-
workspaces: pnpmWorkspaces.packages
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
exports.Pnpm = Pnpm;
|
|
39
|
-
//# sourceMappingURL=Pnpm.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Pnpm.cjs","sources":["../../../../../../packages/cli-common/src/npm/packageManagers/Pnpm.ts"],"sourcesContent":["import { FileSystem } from '../FileSystem'\nimport { join } from 'node:path'\n\nimport { PackageJson } from '../PackageJson'\nimport { PackageManager } from './PackageManager'\nimport { Package } from '../Package'\nimport { PackageManagerHelpers } from './PackageManagerHelpers'\nimport { CommandRunner } from '../CommandRunner'\n\nexport class Pnpm implements PackageManager {\n\tconstructor(\n\t\tprivate readonly fs: FileSystem,\n\t\tprivate readonly commandRunner: CommandRunner,\n\t) {\n\t}\n\n\tasync install({ pckg, dependencies, isDev }: { pckg: Package; isDev: boolean; dependencies: Record<string, string> }): Promise<void> {\n\t\tconst { output } = this.commandRunner.runCommand('pnpm', [\n\t\t\t'add',\n\t\t\tisDev ? '--save-dev' : '--save',\n\t\t\tpckg.isRoot ? '--ignore-workspace-root-check' : undefined,\n\t\t\t...PackageManagerHelpers.formatPackagesToInstall(dependencies),\n\t\t], {\n\t\t\tcwd: pckg.dir,\n\t\t\tstderr: process.stderr,\n\t\t\tstdout: process.stdout,\n\t\t})\n\t\tawait output\n\t}\n\n\tasync isActive({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<boolean> {\n\t\treturn await this.fs.pathExists(join(dir, 'pnpm-lock.yaml'))\n\t}\n\n\tasync readWorkspacePackages({ dir, packageJson }: { dir: string; packageJson: PackageJson }): Promise<Package[]> {\n\t\tlet pnpmWorkspaces: any\n\t\tif (await this.fs.pathExists(join(dir, 'pnpm-workspace.yaml'))) {\n\t\t\tpnpmWorkspaces = JSON.parse(await this.fs.readFile(join(dir, 'pnpm-workspace.yaml'), 'utf-8'))\n\t\t}\n\t\treturn await PackageManagerHelpers.readWorkspacePackages({\n\t\t\tfs: this.fs,\n\t\t\tdir,\n\t\t\tworkspaces: pnpmWorkspaces.packages,\n\t\t})\n\t}\n}\n"],"names":["PackageManagerHelpers","join"],"mappings":";;;;AASO,MAAM,KAA+B;AAAA,EAC3C,YACkB,IACA,eAChB;AAFgB,SAAA,KAAA;AACA,SAAA,gBAAA;AAAA,EAAA;AAAA,EAIlB,MAAM,QAAQ,EAAE,MAAM,cAAc,SAAiG;AACpI,UAAM,EAAE,OAAO,IAAI,KAAK,cAAc,WAAW,QAAQ;AAAA,MACxD;AAAA,MACA,QAAQ,eAAe;AAAA,MACvB,KAAK,SAAS,kCAAkC;AAAA,MAChD,GAAGA,sBAAAA,sBAAsB,wBAAwB,YAAY;AAAA,IAAA,GAC3D;AAAA,MACF,KAAK,KAAK;AAAA,MACV,QAAQ,QAAQ;AAAA,MAChB,QAAQ,QAAQ;AAAA,IAAA,CAChB;AACK,UAAA;AAAA,EAAA;AAAA,EAGP,MAAM,SAAS,EAAE,KAAK,eAA4E;AACjG,WAAO,MAAM,KAAK,GAAG,WAAWC,UAAAA,KAAK,KAAK,gBAAgB,CAAC;AAAA,EAAA;AAAA,EAG5D,MAAM,sBAAsB,EAAE,KAAK,eAA8E;AAC5G,QAAA;AACA,QAAA,MAAM,KAAK,GAAG,WAAWA,UAAAA,KAAK,KAAK,qBAAqB,CAAC,GAAG;AAC9C,uBAAA,KAAK,MAAM,MAAM,KAAK,GAAG,SAASA,UAAAA,KAAK,KAAK,qBAAqB,GAAG,OAAO,CAAC;AAAA,IAAA;AAEvF,WAAA,MAAMD,4CAAsB,sBAAsB;AAAA,MACxD,IAAI,KAAK;AAAA,MACT;AAAA,MACA,YAAY,eAAe;AAAA,IAAA,CAC3B;AAAA,EAAA;AAEH;;"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { PackageManagerHelpers } from "./PackageManagerHelpers.js";
|
|
3
|
-
class Pnpm {
|
|
4
|
-
constructor(fs, commandRunner) {
|
|
5
|
-
this.fs = fs;
|
|
6
|
-
this.commandRunner = commandRunner;
|
|
7
|
-
}
|
|
8
|
-
async install({ pckg, dependencies, isDev }) {
|
|
9
|
-
const { output } = this.commandRunner.runCommand("pnpm", [
|
|
10
|
-
"add",
|
|
11
|
-
isDev ? "--save-dev" : "--save",
|
|
12
|
-
pckg.isRoot ? "--ignore-workspace-root-check" : void 0,
|
|
13
|
-
...PackageManagerHelpers.formatPackagesToInstall(dependencies)
|
|
14
|
-
], {
|
|
15
|
-
cwd: pckg.dir,
|
|
16
|
-
stderr: process.stderr,
|
|
17
|
-
stdout: process.stdout
|
|
18
|
-
});
|
|
19
|
-
await output;
|
|
20
|
-
}
|
|
21
|
-
async isActive({ dir, packageJson }) {
|
|
22
|
-
return await this.fs.pathExists(join(dir, "pnpm-lock.yaml"));
|
|
23
|
-
}
|
|
24
|
-
async readWorkspacePackages({ dir, packageJson }) {
|
|
25
|
-
let pnpmWorkspaces;
|
|
26
|
-
if (await this.fs.pathExists(join(dir, "pnpm-workspace.yaml"))) {
|
|
27
|
-
pnpmWorkspaces = JSON.parse(await this.fs.readFile(join(dir, "pnpm-workspace.yaml"), "utf-8"));
|
|
28
|
-
}
|
|
29
|
-
return await PackageManagerHelpers.readWorkspacePackages({
|
|
30
|
-
fs: this.fs,
|
|
31
|
-
dir,
|
|
32
|
-
workspaces: pnpmWorkspaces.packages
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
export {
|
|
37
|
-
Pnpm
|
|
38
|
-
};
|
|
39
|
-
//# sourceMappingURL=Pnpm.js.map
|