workspace-tools 0.31.0 → 0.33.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/CHANGELOG.json +63 -1
- package/CHANGELOG.md +28 -2
- package/README.md +4 -0
- package/lib/dependencies/transitiveDeps.js +2 -1
- package/lib/dependencies/transitiveDeps.js.map +1 -1
- package/lib/getPackagePaths.d.ts +10 -2
- package/lib/getPackagePaths.js +32 -33
- package/lib/getPackagePaths.js.map +1 -1
- package/lib/graph/createDependencyMap.js +2 -1
- package/lib/graph/createDependencyMap.js.map +1 -1
- package/lib/graph/getPackageDependencies.d.ts +2 -2
- package/lib/graph/getPackageDependencies.js +23 -6
- package/lib/graph/getPackageDependencies.js.map +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.js +10 -3
- package/lib/index.js.map +1 -1
- package/lib/lockfile/index.js +1 -1
- package/lib/lockfile/index.js.map +1 -1
- package/lib/logging.d.ts +5 -0
- package/lib/logging.js +15 -0
- package/lib/logging.js.map +1 -0
- package/lib/paths.js +7 -1
- package/lib/paths.js.map +1 -1
- package/lib/types/WorkspaceInfo.d.ts +7 -0
- package/lib/workspaces/findWorkspacePath.d.ts +7 -0
- package/lib/workspaces/findWorkspacePath.js +9 -4
- package/lib/workspaces/findWorkspacePath.js.map +1 -1
- package/lib/workspaces/getWorkspacePackageInfo.d.ts +22 -2
- package/lib/workspaces/getWorkspacePackageInfo.js +43 -22
- package/lib/workspaces/getWorkspacePackageInfo.js.map +1 -1
- package/lib/workspaces/getWorkspaceRoot.d.ts +8 -1
- package/lib/workspaces/getWorkspaceRoot.js +9 -18
- package/lib/workspaces/getWorkspaceRoot.js.map +1 -1
- package/lib/workspaces/getWorkspaces.d.ts +16 -0
- package/lib/workspaces/getWorkspaces.js +25 -28
- package/lib/workspaces/getWorkspaces.js.map +1 -1
- package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.d.ts +22 -0
- package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js +63 -0
- package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js.map +1 -0
- package/lib/workspaces/implementations/getWorkspaceUtilities.d.ts +18 -0
- package/lib/workspaces/implementations/getWorkspaceUtilities.js +26 -0
- package/lib/workspaces/implementations/getWorkspaceUtilities.js.map +1 -0
- package/lib/workspaces/implementations/index.d.ts +2 -14
- package/lib/workspaces/implementations/index.js +5 -55
- package/lib/workspaces/implementations/index.js.map +1 -1
- package/lib/workspaces/implementations/lerna.d.ts +6 -2
- package/lib/workspaces/implementations/lerna.js +17 -10
- package/lib/workspaces/implementations/lerna.js.map +1 -1
- package/lib/workspaces/implementations/npm.d.ts +10 -1
- package/lib/workspaces/implementations/npm.js +19 -8
- package/lib/workspaces/implementations/npm.js.map +1 -1
- package/lib/workspaces/implementations/packageJsonWorkspaces.d.ts +8 -1
- package/lib/workspaces/implementations/packageJsonWorkspaces.js +26 -24
- package/lib/workspaces/implementations/packageJsonWorkspaces.js.map +1 -1
- package/lib/workspaces/implementations/pnpm.d.ts +6 -0
- package/lib/workspaces/implementations/pnpm.js +16 -7
- package/lib/workspaces/implementations/pnpm.js.map +1 -1
- package/lib/workspaces/implementations/rush.d.ts +6 -0
- package/lib/workspaces/implementations/rush.js +16 -7
- package/lib/workspaces/implementations/rush.js.map +1 -1
- package/lib/workspaces/implementations/yarn.d.ts +11 -0
- package/lib/workspaces/implementations/yarn.js +20 -7
- package/lib/workspaces/implementations/yarn.js.map +1 -1
- package/lib/workspaces/workspaces.d.ts +11 -3
- package/lib/workspaces/workspaces.js +13 -5
- package/lib/workspaces/workspaces.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,69 @@
|
|
|
2
2
|
"name": "workspace-tools",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "Thu,
|
|
5
|
+
"date": "Thu, 13 Apr 2023 08:01:40 GMT",
|
|
6
|
+
"tag": "workspace-tools_v0.33.0",
|
|
7
|
+
"version": "0.33.0",
|
|
8
|
+
"comments": {
|
|
9
|
+
"minor": [
|
|
10
|
+
{
|
|
11
|
+
"author": "elcraig@microsoft.com",
|
|
12
|
+
"package": "workspace-tools",
|
|
13
|
+
"commit": "2826670b707d724b5bddbdf67c06e307c87620d5",
|
|
14
|
+
"comment": "Improve workspace manager utility naming. None of the modified methods/types are exported from the root, but if you were deep importing them, the changes are as follows:\n - Change `getWorkspaceImplementationAndLockFile` to `getWorkspaceManagerAndRoot`, with return type `WorkspaceManagerAndRoot` (replacing `ImplementationAndLockFile`) to be more relevant for actual usage.\n - Remove `WorkspaceImplementations` type (use the identical existing type `WorkspaceManager` instead)"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "elcraig@microsoft.com",
|
|
18
|
+
"package": "workspace-tools",
|
|
19
|
+
"commit": "2826670b707d724b5bddbdf67c06e307c87620d5",
|
|
20
|
+
"comment": "Rename `_resetCache` to `_resetPackageJsonFilesCache` to reflect what it does"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"patch": [
|
|
24
|
+
{
|
|
25
|
+
"author": "elcraig@microsoft.com",
|
|
26
|
+
"package": "workspace-tools",
|
|
27
|
+
"commit": "bdfbb181a70336b2c53aa443edcf91c4ae858185",
|
|
28
|
+
"comment": "Add optional verbose logging for getWorkspaces helpers"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"author": "elcraig@microsoft.com",
|
|
32
|
+
"package": "workspace-tools",
|
|
33
|
+
"commit": "18d27beb3d030f2d482b1cd9bd2031fc9b1149d3",
|
|
34
|
+
"comment": "Add more doc comments for getWorkspaces and related"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"author": "elcraig@microsoft.com",
|
|
38
|
+
"package": "workspace-tools",
|
|
39
|
+
"commit": "b697288732789f631f51cbdc85fb48e41b3b0a76",
|
|
40
|
+
"comment": "Simplify workspace root utilities, and deprecate individual manager `get___WorkspaceRoot` utilities (use `getWorkspaceRoot` instead). This includes moving, deleting, or renaming certain private methods, but has no public-facing changes."
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"author": "elcraig@microsoft.com",
|
|
44
|
+
"package": "workspace-tools",
|
|
45
|
+
"commit": "1dc1125ea5bd87a7496c8b7a1d1d317a5ec74dc1",
|
|
46
|
+
"comment": "Minor fixes to new async workspace/package methods"
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"date": "Thu, 06 Apr 2023 22:06:24 GMT",
|
|
53
|
+
"tag": "workspace-tools_v0.32.0",
|
|
54
|
+
"version": "0.32.0",
|
|
55
|
+
"comments": {
|
|
56
|
+
"minor": [
|
|
57
|
+
{
|
|
58
|
+
"author": "kchau@microsoft.com",
|
|
59
|
+
"package": "workspace-tools",
|
|
60
|
+
"commit": "2ce8ddc9819094b14fd1cadf7a5b92af3f61d626",
|
|
61
|
+
"comment": "making the dep graph generation to be much faster"
|
|
62
|
+
}
|
|
63
|
+
]
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"date": "Thu, 06 Apr 2023 19:44:34 GMT",
|
|
6
68
|
"tag": "workspace-tools_v0.31.0",
|
|
7
69
|
"version": "0.31.0",
|
|
8
70
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,38 @@
|
|
|
1
1
|
# Change Log - workspace-tools
|
|
2
2
|
|
|
3
|
-
This log was last generated on Thu,
|
|
3
|
+
This log was last generated on Thu, 13 Apr 2023 08:01:40 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.33.0
|
|
8
|
+
|
|
9
|
+
Thu, 13 Apr 2023 08:01:40 GMT
|
|
10
|
+
|
|
11
|
+
### Minor changes
|
|
12
|
+
|
|
13
|
+
- Improve workspace manager utility naming. None of the modified methods/types are exported from the root, but if you were deep importing them, the changes are as follows:
|
|
14
|
+
- Change `getWorkspaceImplementationAndLockFile` to `getWorkspaceManagerAndRoot`, with return type `WorkspaceManagerAndRoot` (replacing `ImplementationAndLockFile`) to be more relevant for actual usage.
|
|
15
|
+
- Remove `WorkspaceImplementations` type (use the identical existing type `WorkspaceManager` instead) (elcraig@microsoft.com)
|
|
16
|
+
- Rename `_resetCache` to `_resetPackageJsonFilesCache` to reflect what it does (elcraig@microsoft.com)
|
|
17
|
+
|
|
18
|
+
### Patches
|
|
19
|
+
|
|
20
|
+
- Add optional verbose logging for getWorkspaces helpers (elcraig@microsoft.com)
|
|
21
|
+
- Add more doc comments for getWorkspaces and related (elcraig@microsoft.com)
|
|
22
|
+
- Simplify workspace root utilities, and deprecate individual manager `get___WorkspaceRoot` utilities (use `getWorkspaceRoot` instead). This includes moving, deleting, or renaming certain private methods, but has no public-facing changes. (elcraig@microsoft.com)
|
|
23
|
+
- Minor fixes to new async workspace/package methods (elcraig@microsoft.com)
|
|
24
|
+
|
|
25
|
+
## 0.32.0
|
|
26
|
+
|
|
27
|
+
Thu, 06 Apr 2023 22:06:24 GMT
|
|
28
|
+
|
|
29
|
+
### Minor changes
|
|
30
|
+
|
|
31
|
+
- making the dep graph generation to be much faster (kchau@microsoft.com)
|
|
32
|
+
|
|
7
33
|
## 0.31.0
|
|
8
34
|
|
|
9
|
-
Thu, 06 Apr 2023 19:44:
|
|
35
|
+
Thu, 06 Apr 2023 19:44:34 GMT
|
|
10
36
|
|
|
11
37
|
### Minor changes
|
|
12
38
|
|
package/README.md
CHANGED
|
@@ -21,3 +21,7 @@ Override the `maxBuffer` value for git processes, for example if the repo is ver
|
|
|
21
21
|
### PREFERRED_WORKSPACE_MANAGER
|
|
22
22
|
|
|
23
23
|
Sometimes if multiple workspace manager files are checked in, it's necessary to hint which manager is used: `npm`, `yarn`, `pnpm`, `rush`, or `lerna`.
|
|
24
|
+
|
|
25
|
+
### VERBOSE
|
|
26
|
+
|
|
27
|
+
Log additional output from certain functions.
|
|
@@ -7,6 +7,7 @@ function memoizedKey(packages, scope = []) {
|
|
|
7
7
|
return JSON.stringify({ packages, scope });
|
|
8
8
|
}
|
|
9
9
|
function getPackageGraph(packages, scope = []) {
|
|
10
|
+
const internalPackages = new Set(Object.keys(packages));
|
|
10
11
|
const key = memoizedKey(packages, scope);
|
|
11
12
|
if (graphCache.has(key)) {
|
|
12
13
|
return graphCache.get(key);
|
|
@@ -21,7 +22,7 @@ function getPackageGraph(packages, scope = []) {
|
|
|
21
22
|
}
|
|
22
23
|
visited.add(pkg);
|
|
23
24
|
const info = packages[pkg];
|
|
24
|
-
const deps = (0, getPackageDependencies_1.getPackageDependencies)(info,
|
|
25
|
+
const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, internalPackages);
|
|
25
26
|
if (deps.length > 0) {
|
|
26
27
|
for (const dep of deps) {
|
|
27
28
|
stack.push(dep);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transitiveDeps.js","sourceRoot":"","sources":["../../src/dependencies/transitiveDeps.ts"],"names":[],"mappings":";;;AACA,4EAAyE;AAEzE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAqC,CAAC;AAEhE,SAAS,WAAW,CAAC,QAAsB,EAAE,QAAkB,EAAE;IAC/D,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,eAAe,CAAC,QAAsB,EAAE,QAAkB,EAAE;IACnE,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEzC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACvB,OAAO,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;KAC7B;IAED,MAAM,KAAK,GAA8B,EAAE,CAAC;IAE5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,KAAK,GAAa,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE9E,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACvB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAEzB,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACpB,SAAS;SACV;QAED,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjB,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"transitiveDeps.js","sourceRoot":"","sources":["../../src/dependencies/transitiveDeps.ts"],"names":[],"mappings":"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"}
|
package/lib/getPackagePaths.d.ts
CHANGED
|
@@ -1,2 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Given package folder globs (such as those from package.json `workspaces`) and a workspace root
|
|
3
|
+
* directory, get paths to actual package folders.
|
|
4
|
+
*/
|
|
5
|
+
export declare function getPackagePaths(root: string, packageGlobs: string[]): string[];
|
|
6
|
+
/**
|
|
7
|
+
* Given package folder globs (such as those from package.json `workspaces`) and a workspace root
|
|
8
|
+
* directory, get paths to actual package folders.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getPackagePathsAsync(root: string, packageGlobs: string[]): Promise<string[]>;
|
package/lib/getPackagePaths.js
CHANGED
|
@@ -7,43 +7,42 @@ exports.getPackagePathsAsync = exports.getPackagePaths = void 0;
|
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const fast_glob_1 = __importDefault(require("fast-glob"));
|
|
9
9
|
const packagePathsCache = {};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (path_1.default.sep === "/") {
|
|
23
|
-
packagePathsCache[workspacesRoot] = packagePaths;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
packagePathsCache[workspacesRoot] = packagePaths.map((p) => p.replace(/\//g, path_1.default.sep));
|
|
10
|
+
const globOptions = {
|
|
11
|
+
absolute: true,
|
|
12
|
+
ignore: ["**/node_modules/**", "**/__fixtures__/**"],
|
|
13
|
+
stats: false,
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Given package folder globs (such as those from package.json `workspaces`) and a workspace root
|
|
17
|
+
* directory, get paths to actual package folders.
|
|
18
|
+
*/
|
|
19
|
+
function getPackagePaths(root, packageGlobs) {
|
|
20
|
+
if (packagePathsCache[root]) {
|
|
21
|
+
return packagePathsCache[root];
|
|
27
22
|
}
|
|
28
|
-
|
|
23
|
+
packagePathsCache[root] = fast_glob_1.default
|
|
24
|
+
.sync(getPackageJsonGlobs(packageGlobs), { cwd: root, ...globOptions })
|
|
25
|
+
.map(getResultPackagePath);
|
|
26
|
+
return packagePathsCache[root];
|
|
29
27
|
}
|
|
30
28
|
exports.getPackagePaths = getPackagePaths;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
stats: false,
|
|
39
|
-
})).map((p) => path_1.default.join(workspacesRoot, path_1.default.dirname(p)));
|
|
40
|
-
if (path_1.default.sep === "/") {
|
|
41
|
-
packagePathsCache[workspacesRoot] = packagePaths;
|
|
29
|
+
/**
|
|
30
|
+
* Given package folder globs (such as those from package.json `workspaces`) and a workspace root
|
|
31
|
+
* directory, get paths to actual package folders.
|
|
32
|
+
*/
|
|
33
|
+
async function getPackagePathsAsync(root, packageGlobs) {
|
|
34
|
+
if (packagePathsCache[root]) {
|
|
35
|
+
return packagePathsCache[root];
|
|
42
36
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
return packagePathsCache[workspacesRoot];
|
|
37
|
+
packagePathsCache[root] = (await (0, fast_glob_1.default)(getPackageJsonGlobs(packageGlobs), { cwd: root, ...globOptions })).map(getResultPackagePath);
|
|
38
|
+
return packagePathsCache[root];
|
|
47
39
|
}
|
|
48
40
|
exports.getPackagePathsAsync = getPackagePathsAsync;
|
|
41
|
+
function getPackageJsonGlobs(packageGlobs) {
|
|
42
|
+
return packageGlobs.map((glob) => path_1.default.join(glob, "package.json").replace(/\\/g, "/"));
|
|
43
|
+
}
|
|
44
|
+
function getResultPackagePath(packageJsonPath) {
|
|
45
|
+
const packagePath = path_1.default.dirname(packageJsonPath);
|
|
46
|
+
return path_1.default.sep === "/" ? packagePath : packagePath.replace(/\//g, path_1.default.sep);
|
|
47
|
+
}
|
|
49
48
|
//# sourceMappingURL=getPackagePaths.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackagePaths.js","sourceRoot":"","sources":["../src/getPackagePaths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"getPackagePaths.js","sourceRoot":"","sources":["../src/getPackagePaths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,0DAA8D;AAE9D,MAAM,iBAAiB,GAAiC,EAAE,CAAC;AAC3D,MAAM,WAAW,GAAgB;IAC/B,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,KAAK,EAAE,KAAK;CACb,CAAC;AAEF;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAY,EAAE,YAAsB;IAClE,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;QAC3B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAChC;IAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,mBAAI;SAC3B,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;SACtE,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAE7B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAVD,0CAUC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CAAC,IAAY,EAAE,YAAsB;IAC7E,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;QAC3B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAChC;IAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAA,mBAAI,EAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAC1G,oBAAoB,CACrB,CAAC;IAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAVD,oDAUC;AAED,SAAS,mBAAmB,CAAC,YAAsB;IACjD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,oBAAoB,CAAC,eAAuB;IACnD,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAClD,OAAO,cAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,cAAI,CAAC,GAAG,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -7,8 +7,9 @@ function createDependencyMap(packages, options = { withDevDependencies: true, wi
|
|
|
7
7
|
dependencies: new Map(),
|
|
8
8
|
dependents: new Map(),
|
|
9
9
|
};
|
|
10
|
+
const internalPackages = new Set(Object.keys(packages));
|
|
10
11
|
for (const [pkg, info] of Object.entries(packages)) {
|
|
11
|
-
const deps = (0, getPackageDependencies_1.getPackageDependencies)(info,
|
|
12
|
+
const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, internalPackages, options);
|
|
12
13
|
for (const dep of deps) {
|
|
13
14
|
if (!map.dependencies.has(pkg)) {
|
|
14
15
|
map.dependencies.set(pkg, new Set());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDependencyMap.js","sourceRoot":"","sources":["../../src/graph/createDependencyMap.ts"],"names":[],"mappings":";;;AAAA,qEAA8F;
|
|
1
|
+
{"version":3,"file":"createDependencyMap.js","sourceRoot":"","sources":["../../src/graph/createDependencyMap.ts"],"names":[],"mappings":";;;AAAA,qEAA8F;AAS9F,SAAgB,mBAAmB,CACjC,QAAsB,EACtB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAEhG,MAAM,GAAG,GAAG;QACV,YAAY,EAAE,IAAI,GAAG,EAAuB;QAC5C,UAAU,EAAE,IAAI,GAAG,EAAuB;KAC3C,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAExD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAClD,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACrE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC9B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACtC;YACD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEpC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC5B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACpC;YACD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACnC;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA1BD,kDA0BC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { PackageInfo
|
|
1
|
+
import { PackageInfo } from "../types/PackageInfo";
|
|
2
2
|
export interface PackageDependenciesOptions {
|
|
3
3
|
withDevDependencies?: boolean;
|
|
4
4
|
withPeerDependencies?: boolean;
|
|
5
5
|
}
|
|
6
|
-
export declare function getPackageDependencies(info: PackageInfo, packages:
|
|
6
|
+
export declare function getPackageDependencies(info: PackageInfo, packages: Set<string>, options?: PackageDependenciesOptions): string[];
|
|
@@ -2,12 +2,29 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getPackageDependencies = void 0;
|
|
4
4
|
function getPackageDependencies(info, packages, options = { withDevDependencies: true }) {
|
|
5
|
-
const deps =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
const deps = [];
|
|
6
|
+
if (info.dependencies) {
|
|
7
|
+
for (const dep of Object.keys(info.dependencies)) {
|
|
8
|
+
if (dep !== info.name && packages.has(dep)) {
|
|
9
|
+
deps.push(dep);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
if (info.devDependencies && options.withDevDependencies) {
|
|
14
|
+
for (const dep of Object.keys(info.devDependencies)) {
|
|
15
|
+
if (dep !== info.name && packages.has(dep)) {
|
|
16
|
+
deps.push(dep);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
if (info.peerDependencies && options.withPeerDependencies) {
|
|
21
|
+
for (const dep of Object.keys(info.peerDependencies)) {
|
|
22
|
+
if (dep !== info.name && packages.has(dep)) {
|
|
23
|
+
deps.push(dep);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return deps;
|
|
11
28
|
}
|
|
12
29
|
exports.getPackageDependencies = getPackageDependencies;
|
|
13
30
|
//# sourceMappingURL=getPackageDependencies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackageDependencies.js","sourceRoot":"","sources":["../../src/graph/getPackageDependencies.ts"],"names":[],"mappings":";;;AAOA,SAAgB,sBAAsB,CACpC,IAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"getPackageDependencies.js","sourceRoot":"","sources":["../../src/graph/getPackageDependencies.ts"],"names":[],"mappings":";;;AAOA,SAAgB,sBAAsB,CACpC,IAAiB,EACjB,QAAqB,EACrB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE;IAEnE,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,IAAI,CAAC,YAAY,EAAE;QACrB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAChD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,mBAAmB,EAAE;QACvD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;YACnD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,IAAI,IAAI,CAAC,gBAAgB,IAAI,OAAO,CAAC,oBAAoB,EAAE;QACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YACpD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAhCD,wDAgCC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -11,9 +11,9 @@ export * from "./types/WorkspaceInfo";
|
|
|
11
11
|
export * from "./workspaces/findWorkspacePath";
|
|
12
12
|
export * from "./workspaces/getWorkspaces";
|
|
13
13
|
export * from "./workspaces/getWorkspaceRoot";
|
|
14
|
-
export
|
|
15
|
-
export
|
|
16
|
-
export
|
|
14
|
+
export { getPnpmWorkspaceRoot, getPnpmWorkspaces } from "./workspaces/implementations/pnpm";
|
|
15
|
+
export { getRushWorkspaceRoot, getRushWorkspaces } from "./workspaces/implementations/rush";
|
|
16
|
+
export { getYarnWorkspaceRoot, getYarnWorkspaces } from "./workspaces/implementations/yarn";
|
|
17
17
|
export * from "./workspaces/getChangedPackages";
|
|
18
18
|
export * from "./workspaces/getPackagesByFiles";
|
|
19
19
|
export * from "./workspaces/listOfWorkspacePackageNames";
|
package/lib/index.js
CHANGED
|
@@ -10,6 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.getYarnWorkspaces = exports.getYarnWorkspaceRoot = exports.getRushWorkspaces = exports.getRushWorkspaceRoot = exports.getPnpmWorkspaces = exports.getPnpmWorkspaceRoot = void 0;
|
|
13
14
|
__exportStar(require("./dependencies/index"), exports);
|
|
14
15
|
__exportStar(require("./getPackageInfos"), exports);
|
|
15
16
|
__exportStar(require("./git"), exports);
|
|
@@ -23,9 +24,15 @@ __exportStar(require("./types/WorkspaceInfo"), exports);
|
|
|
23
24
|
__exportStar(require("./workspaces/findWorkspacePath"), exports);
|
|
24
25
|
__exportStar(require("./workspaces/getWorkspaces"), exports);
|
|
25
26
|
__exportStar(require("./workspaces/getWorkspaceRoot"), exports);
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
var pnpm_1 = require("./workspaces/implementations/pnpm");
|
|
28
|
+
Object.defineProperty(exports, "getPnpmWorkspaceRoot", { enumerable: true, get: function () { return pnpm_1.getPnpmWorkspaceRoot; } });
|
|
29
|
+
Object.defineProperty(exports, "getPnpmWorkspaces", { enumerable: true, get: function () { return pnpm_1.getPnpmWorkspaces; } });
|
|
30
|
+
var rush_1 = require("./workspaces/implementations/rush");
|
|
31
|
+
Object.defineProperty(exports, "getRushWorkspaceRoot", { enumerable: true, get: function () { return rush_1.getRushWorkspaceRoot; } });
|
|
32
|
+
Object.defineProperty(exports, "getRushWorkspaces", { enumerable: true, get: function () { return rush_1.getRushWorkspaces; } });
|
|
33
|
+
var yarn_1 = require("./workspaces/implementations/yarn");
|
|
34
|
+
Object.defineProperty(exports, "getYarnWorkspaceRoot", { enumerable: true, get: function () { return yarn_1.getYarnWorkspaceRoot; } });
|
|
35
|
+
Object.defineProperty(exports, "getYarnWorkspaces", { enumerable: true, get: function () { return yarn_1.getYarnWorkspaces; } });
|
|
29
36
|
__exportStar(require("./workspaces/getChangedPackages"), exports);
|
|
30
37
|
__exportStar(require("./workspaces/getPackagesByFiles"), exports);
|
|
31
38
|
__exportStar(require("./workspaces/listOfWorkspacePackageNames"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,uDAAqC;AACrC,oDAAkC;AAClC,wCAAsB;AACtB,gDAA8B;AAC9B,6CAA2B;AAC3B,0CAAwB;AACxB,0CAAwB;AACxB,uDAAqC;AACrC,sDAAoC;AACpC,wDAAsC;AACtC,iEAA+C;AAC/C,6DAA2C;AAC3C,gEAA8C;AAC9C,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,kEAAgD;AAChD,kEAAgD;AAChD,2EAAyD;AACzD,0DAAwC"}
|
package/lib/lockfile/index.js
CHANGED
|
@@ -83,7 +83,7 @@ async function parseLockFile(packageRoot) {
|
|
|
83
83
|
npmLockJson = fs_1.default.readFileSync(npmLockPath, "utf-8");
|
|
84
84
|
}
|
|
85
85
|
catch {
|
|
86
|
-
throw new Error("Couldn
|
|
86
|
+
throw new Error("Couldn't read package-lock.json");
|
|
87
87
|
}
|
|
88
88
|
const npmLock = JSON.parse(npmLockJson.toString());
|
|
89
89
|
if (!(npmLock === null || npmLock === void 0 ? void 0 : npmLock.lockfileVersion) || npmLock.lockfileVersion < 2) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lockfile/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wGAAwG;AACxG,4CAAoB;AACpB,gDAAwB;AAExB,mDAAgD;AA2FvC,8FA3FA,6BAAa,OA2FA;AA1FtB,oCAAoC;AACpC,mDAAgD;AAChD,iDAA8C;AAC9C,yCAAsC;AACtC,qDAAkD;AAElD,MAAM,WAAW,GAAmC,EAAE,CAAC;AAEhD,KAAK,UAAU,aAAa,CAAC,WAAmB;IACrD,MAAM,YAAY,GAAG,IAAA,gBAAQ,EAAC,CAAC,WAAW,EAAE,8BAA8B,CAAC,EAAE,WAAW,CAAC,CAAC;IAE1F,8CAA8C;IAC9C,IAAI,YAAY,EAAE;QAChB,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;YAC7B,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;SAClC;QAED,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAExD,MAAM,OAAO,GACX,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAE/G,IAAI,MAAM,GAGN;YACF,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,MAAM,IAAI,GAAG,IAAA,mBAAQ,EAAgB,YAAY,CAAC,CAAC;YACnD,MAAM,GAAG,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC;SAC/B;aAAM;YACL,MAAM,aAAa,GAAG,CAAC,wDAAa,mBAAmB,GAAC,CAAC,CAAC,KAAK,CAAC;YAChE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;SAClC;QAED,WAAW,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;QAEnC,OAAO,MAAM,CAAC;KACf;IAED,+CAA+C;IAC/C,IAAI,YAAY,GAAG,IAAA,gBAAQ,EAAC,CAAC,gBAAgB,EAAE,mCAAmC,CAAC,EAAE,WAAW,CAAC,CAAC;IAElG,IAAI,YAAY,EAAE;QAChB,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;YAC7B,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;SAClC;QAED,MAAM,IAAI,GAAG,IAAA,mBAAQ,EAAe,YAAY,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAC;QACnC,WAAW,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;QAEnC,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;KAClC;IAED,gCAAgC;IAChC,IAAI,WAAW,GAAG,IAAA,gBAAQ,EAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;IAE7D,IAAI,WAAW,EAAE;QACf,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE;YAC5B,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC;SACjC;QAED,IAAI,WAAW,CAAC;QAChB,IAAI;YACF,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;SACrD;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lockfile/index.ts"],"names":[],"mappings":"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"}
|
package/lib/logging.d.ts
ADDED
package/lib/logging.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.logVerboseWarning = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Helper that logs an error to `console.warn` if `process.env.VERBOSE` is set.
|
|
6
|
+
* This should be replaced with a proper logging system eventually.
|
|
7
|
+
*/
|
|
8
|
+
function logVerboseWarning(description, err) {
|
|
9
|
+
var _a;
|
|
10
|
+
if (process.env.VERBOSE) {
|
|
11
|
+
console.warn(`${description}${err ? ":\n" : ""}`, ((_a = err) === null || _a === void 0 ? void 0 : _a.stack) || err || "");
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.logVerboseWarning = logVerboseWarning;
|
|
15
|
+
//# sourceMappingURL=logging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,WAAmB,EAAE,GAAa;;IAClE,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;QACvB,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAA,MAAC,GAAyB,0CAAE,KAAK,KAAI,GAAG,IAAI,EAAE,CAAC,CAAC;KACnG;AACH,CAAC;AAJD,8CAIC"}
|
package/lib/paths.js
CHANGED
|
@@ -8,6 +8,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const getWorkspaceRoot_1 = require("./workspaces/getWorkspaceRoot");
|
|
10
10
|
const git_1 = require("./git");
|
|
11
|
+
const logging_1 = require("./logging");
|
|
11
12
|
/**
|
|
12
13
|
* Starting from `cwd`, searches up the directory hierarchy for `filePath`.
|
|
13
14
|
* If multiple strings are given, searches each directory level for any of them.
|
|
@@ -56,7 +57,12 @@ function findProjectRoot(cwd) {
|
|
|
56
57
|
try {
|
|
57
58
|
workspaceRoot = (0, getWorkspaceRoot_1.getWorkspaceRoot)(cwd);
|
|
58
59
|
}
|
|
59
|
-
catch {
|
|
60
|
+
catch (err) {
|
|
61
|
+
(0, logging_1.logVerboseWarning)(`Error getting workspace root for ${cwd}`, err);
|
|
62
|
+
}
|
|
63
|
+
if (!workspaceRoot) {
|
|
64
|
+
(0, logging_1.logVerboseWarning)(`Could not find workspace root for ${cwd}. Falling back to git root.`);
|
|
65
|
+
}
|
|
60
66
|
return workspaceRoot || findGitRoot(cwd);
|
|
61
67
|
}
|
|
62
68
|
exports.findProjectRoot = findProjectRoot;
|
package/lib/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AACpB,oEAAiE;AACjE,+BAA4B;
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AACpB,oEAAiE;AACjE,+BAA4B;AAC5B,uCAA8C;AAE9C;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,QAA2B,EAAE,GAAW;IAC/D,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,IAAI,GAAG,cAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAElC,IAAI,SAA6B,CAAC;IAElC,OAAO,CAAC,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;QACjC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,SAAS,EAAE;YACb,MAAM;SACP;QAED,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,SAAS,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAhBD,4BAgBC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,MAAM,GAAG,IAAA,SAAG,EAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,8BAA8B,CAAC,CAAC;KAClE;IAED,OAAO,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAPD,kCAOC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,QAAQ,IAAI,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAHD,0CAGC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,IAAI,aAAiC,CAAC;IACtC,IAAI;QACF,aAAa,GAAG,IAAA,mCAAgB,EAAC,GAAG,CAAC,CAAC;KACvC;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,2BAAiB,EAAC,oCAAoC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;KACnE;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,IAAA,2BAAiB,EAAC,qCAAqC,GAAG,6BAA6B,CAAC,CAAC;KAC1F;IACD,OAAO,aAAa,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAZD,0CAYC;AAED,SAAgB,SAAS,CAAC,KAAa,EAAE,MAAc;IACrD,MAAM,YAAY,GAAG,cAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzC,CAAC;AAHD,8BAGC"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { PackageInfo } from "./PackageInfo";
|
|
2
|
+
/**
|
|
3
|
+
* Array with names, paths, and package.json contents for each package in a workspace.
|
|
4
|
+
*
|
|
5
|
+
* The method name is somewhat misleading due to the double meaning of "workspace", but it's retained
|
|
6
|
+
* for compatibility. "Workspace" here refers to an individual package, in the sense of the `workspaces`
|
|
7
|
+
* package.json config used by npm/yarn (instead of referring to the entire monorepo).
|
|
8
|
+
*/
|
|
2
9
|
export declare type WorkspaceInfo = {
|
|
3
10
|
name: string;
|
|
4
11
|
path: string;
|
|
@@ -1,2 +1,9 @@
|
|
|
1
1
|
import { WorkspaceInfo } from "../types/WorkspaceInfo";
|
|
2
|
+
/**
|
|
3
|
+
* Find the path for a particular package name from an array of info about packages within a workspace.
|
|
4
|
+
* (See `../getWorkspaces` for why it's named this way.)
|
|
5
|
+
* @param workspaces Array of info about packages within a workspace
|
|
6
|
+
* @param packageName Package name to find
|
|
7
|
+
* @returns Package path if found, or undefined
|
|
8
|
+
*/
|
|
2
9
|
export declare function findWorkspacePath(workspaces: WorkspaceInfo, packageName: string): string | undefined;
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.findWorkspacePath = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Find the path for a particular package name from an array of info about packages within a workspace.
|
|
6
|
+
* (See `../getWorkspaces` for why it's named this way.)
|
|
7
|
+
* @param workspaces Array of info about packages within a workspace
|
|
8
|
+
* @param packageName Package name to find
|
|
9
|
+
* @returns Package path if found, or undefined
|
|
10
|
+
*/
|
|
4
11
|
function findWorkspacePath(workspaces, packageName) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
return workspace.path;
|
|
8
|
-
}
|
|
12
|
+
var _a;
|
|
13
|
+
return (_a = workspaces.find(({ name }) => name === packageName)) === null || _a === void 0 ? void 0 : _a.path;
|
|
9
14
|
}
|
|
10
15
|
exports.findWorkspacePath = findWorkspacePath;
|
|
11
16
|
//# sourceMappingURL=findWorkspacePath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findWorkspacePath.js","sourceRoot":"","sources":["../../src/workspaces/findWorkspacePath.ts"],"names":[],"mappings":";;;AAEA,SAAgB,iBAAiB,CAAC,UAAyB,EAAE,WAAmB
|
|
1
|
+
{"version":3,"file":"findWorkspacePath.js","sourceRoot":"","sources":["../../src/workspaces/findWorkspacePath.ts"],"names":[],"mappings":";;;AAEA;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAC,UAAyB,EAAE,WAAmB;;IAC9E,OAAO,MAAA,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,0CAAE,IAAI,CAAC;AACnE,CAAC;AAFD,8CAEC"}
|
|
@@ -1,3 +1,23 @@
|
|
|
1
1
|
import { WorkspaceInfo } from "../types/WorkspaceInfo";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Get an array with names, paths, and package.json contents for each of the given package paths
|
|
4
|
+
* within a workspace.
|
|
5
|
+
*
|
|
6
|
+
* This is an internal helper used by `getWorkspaces` implementations for different managers.
|
|
7
|
+
* (See `../getWorkspaces` for why it's named this way.)
|
|
8
|
+
* @param packagePaths Paths to packages within a workspace
|
|
9
|
+
* @returns Array of workspace package infos
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare function getWorkspacePackageInfo(packagePaths: string[]): WorkspaceInfo;
|
|
13
|
+
/**
|
|
14
|
+
* Get an array with names, paths, and package.json contents for each of the given package paths
|
|
15
|
+
* within a workspace.
|
|
16
|
+
*
|
|
17
|
+
* This is an internal helper used by `getWorkspaces` implementations for different managers.
|
|
18
|
+
* (See `../getWorkspaces` for why it's named this way.)
|
|
19
|
+
* @param packagePaths Paths to packages within a workspace
|
|
20
|
+
* @returns Array of workspace package infos
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
export declare function getWorkspacePackageInfoAsync(packagePaths: string[]): Promise<WorkspaceInfo>;
|