workspace-tools 0.41.1 → 0.41.3
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/lib/dependencies/index.js +7 -0
- package/lib/dependencies/index.js.map +1 -1
- package/lib/dependencies/transitiveDeps.js +5 -0
- package/lib/dependencies/transitiveDeps.js.map +1 -1
- package/lib/getPackageInfo.js +4 -0
- package/lib/getPackageInfo.js.map +1 -1
- package/lib/getPackageInfos.js +4 -0
- package/lib/getPackageInfos.js.map +1 -1
- package/lib/git/getDefaultRemote.js +1 -1
- package/lib/git/getDefaultRemote.js.map +1 -1
- package/lib/git/getRepositoryName.js +1 -1
- package/lib/git/getRepositoryName.js.map +1 -1
- package/lib/git/git.js +8 -0
- package/lib/git/git.js.map +1 -1
- package/lib/git/gitUtilities.js +27 -0
- package/lib/git/gitUtilities.js.map +1 -1
- package/lib/git/index.js +10 -0
- package/lib/git/index.js.map +1 -1
- package/lib/graph/index.js +1 -0
- package/lib/graph/index.js.map +1 -1
- package/lib/index.js +39 -0
- package/lib/index.js.map +1 -1
- package/lib/isCachingEnabled.js +4 -0
- package/lib/isCachingEnabled.js.map +1 -1
- package/lib/lockfile/parseLockFile.js +1 -1
- package/lib/lockfile/parseLockFile.js.map +1 -1
- package/lib/lockfile/readYaml.js +1 -1
- package/lib/lockfile/readYaml.js.map +1 -1
- package/lib/paths.js +9 -2
- package/lib/paths.js.map +1 -1
- package/lib/workspaces/getAllPackageJsonFiles.js +5 -0
- package/lib/workspaces/getAllPackageJsonFiles.js.map +1 -1
- package/lib/workspaces/getCatalogVersion.js +4 -0
- package/lib/workspaces/getCatalogVersion.js.map +1 -1
- package/lib/workspaces/getCatalogs.js +2 -2
- package/lib/workspaces/getCatalogs.js.map +1 -1
- package/lib/workspaces/getChangedPackages.js +10 -6
- package/lib/workspaces/getChangedPackages.js.map +1 -1
- package/lib/workspaces/getWorkspaceInfos.js +4 -0
- package/lib/workspaces/getWorkspaceInfos.js.map +1 -1
- package/lib/workspaces/getWorkspaceManagerRoot.js +2 -2
- package/lib/workspaces/getWorkspaceManagerRoot.js.map +1 -1
- package/lib/workspaces/getWorkspacePackagePaths.js +6 -2
- package/lib/workspaces/getWorkspacePackagePaths.js.map +1 -1
- package/lib/workspaces/getWorkspacePatterns.js +2 -2
- package/lib/workspaces/getWorkspacePatterns.js.map +1 -1
- package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js +5 -0
- package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js.map +1 -1
- package/lib/workspaces/implementations/getWorkspaceUtilities.js +5 -5
- package/lib/workspaces/implementations/getWorkspaceUtilities.js.map +1 -1
- package/lib/workspaces/implementations/index.js +4 -0
- package/lib/workspaces/implementations/index.js.map +1 -1
- package/lib/workspaces/implementations/lerna.js +3 -3
- package/lib/workspaces/implementations/lerna.js.map +1 -1
- package/lib/workspaces/wrapWorkspaceUtility.d.ts +1 -1
- package/lib/workspaces/wrapWorkspaceUtility.js +7 -3
- package/lib/workspaces/wrapWorkspaceUtility.js.map +1 -1
- package/package.json +2 -2
- package/lib/tsdoc-metadata.json +0 -11
|
@@ -12,27 +12,27 @@ const utils = {};
|
|
|
12
12
|
function getWorkspaceUtilities(manager) {
|
|
13
13
|
switch(manager){
|
|
14
14
|
case "npm":
|
|
15
|
-
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
15
|
+
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
16
16
|
_utils;
|
|
17
17
|
(_utils = utils).npm ?? (_utils.npm = require("./npm").npmUtilities);
|
|
18
18
|
break;
|
|
19
19
|
case "pnpm":
|
|
20
|
-
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
20
|
+
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
21
21
|
_utils1;
|
|
22
22
|
(_utils1 = utils).pnpm ?? (_utils1.pnpm = require("./pnpm").pnpmUtilities);
|
|
23
23
|
break;
|
|
24
24
|
case "yarn":
|
|
25
|
-
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
25
|
+
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
26
26
|
_utils2;
|
|
27
27
|
(_utils2 = utils).yarn ?? (_utils2.yarn = require("./yarn").yarnUtilities);
|
|
28
28
|
break;
|
|
29
29
|
case "rush":
|
|
30
|
-
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
30
|
+
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
31
31
|
_utils3;
|
|
32
32
|
(_utils3 = utils).rush ?? (_utils3.rush = require("./rush").rushUtilities);
|
|
33
33
|
break;
|
|
34
34
|
case "lerna":
|
|
35
|
-
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
35
|
+
var // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
36
36
|
_utils4;
|
|
37
37
|
(_utils4 = utils).lerna ?? (_utils4.lerna = require("./lerna").lernaUtilities);
|
|
38
38
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/workspaces/implementations/getWorkspaceUtilities.ts"],"sourcesContent":["import type { WorkspaceManager } from \"../../types/WorkspaceManager.js\";\nimport type { WorkspaceUtilities } from \"./WorkspaceUtilities.js\";\n\nconst utils: Partial<Record<WorkspaceManager, WorkspaceUtilities>> = {};\n\n/**\n * Get utility implementations for the given workspace/monorepo manager.\n */\nexport function getWorkspaceUtilities(manager: WorkspaceManager): WorkspaceUtilities {\n switch (manager) {\n case \"npm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
1
|
+
{"version":3,"sources":["../../../src/workspaces/implementations/getWorkspaceUtilities.ts"],"sourcesContent":["import type { WorkspaceManager } from \"../../types/WorkspaceManager.js\";\nimport type { WorkspaceUtilities } from \"./WorkspaceUtilities.js\";\n\nconst utils: Partial<Record<WorkspaceManager, WorkspaceUtilities>> = {};\n\n/**\n * Get utility implementations for the given workspace/monorepo manager.\n */\nexport function getWorkspaceUtilities(manager: WorkspaceManager): WorkspaceUtilities {\n switch (manager) {\n case \"npm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n utils.npm ??= (require(\"./npm\") as typeof import(\"./npm\")).npmUtilities;\n break;\n\n case \"pnpm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n utils.pnpm ??= (require(\"./pnpm\") as typeof import(\"./pnpm\")).pnpmUtilities;\n break;\n\n case \"yarn\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n utils.yarn ??= (require(\"./yarn\") as typeof import(\"./yarn\")).yarnUtilities;\n break;\n\n case \"rush\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n utils.rush ??= (require(\"./rush\") as typeof import(\"./rush\")).rushUtilities;\n break;\n\n case \"lerna\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n utils.lerna ??= (require(\"./lerna\") as typeof import(\"./lerna\")).lernaUtilities;\n break;\n }\n\n return utils[manager]!;\n}\n"],"names":["getWorkspaceUtilities","utils","manager","npm","require","npmUtilities","pnpm","pnpmUtilities","yarn","yarnUtilities","rush","rushUtilities","lerna","lernaUtilities"],"mappings":";;;;+BAQgBA;;;eAAAA;;;AALhB,MAAMC,QAA+D,CAAC;AAK/D,SAASD,sBAAsBE,OAAyB;IAC7D,OAAQA;QACN,KAAK;gBACH,6GAA6G;YAC7GD;YAAAA,CAAAA,SAAAA,OAAME,GAAG,KAATF,OAAME,GAAG,GAAK,AAACC,QAAQ,SAAoCC,YAAY;YACvE;QAEF,KAAK;gBACH,6GAA6G;YAC7GJ;YAAAA,CAAAA,UAAAA,OAAMK,IAAI,KAAVL,QAAMK,IAAI,GAAK,AAACF,QAAQ,UAAsCG,aAAa;YAC3E;QAEF,KAAK;gBACH,6GAA6G;YAC7GN;YAAAA,CAAAA,UAAAA,OAAMO,IAAI,KAAVP,QAAMO,IAAI,GAAK,AAACJ,QAAQ,UAAsCK,aAAa;YAC3E;QAEF,KAAK;gBACH,6GAA6G;YAC7GR;YAAAA,CAAAA,UAAAA,OAAMS,IAAI,KAAVT,QAAMS,IAAI,GAAK,AAACN,QAAQ,UAAsCO,aAAa;YAC3E;QAEF,KAAK;gBACH,6GAA6G;YAC7GV;YAAAA,CAAAA,UAAAA,OAAMW,KAAK,KAAXX,QAAMW,KAAK,GAAK,AAACR,QAAQ,WAAwCS,cAAc;YAC/E;IACJ;IAEA,OAAOZ,KAAK,CAACC,QAAQ;AACvB"}
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
+
0 && (module.exports = {
|
|
6
|
+
getWorkspaceManagerAndRoot: null,
|
|
7
|
+
getWorkspaceUtilities: null
|
|
8
|
+
});
|
|
5
9
|
function _export(target, all) {
|
|
6
10
|
for(var name in all)Object.defineProperty(target, name, {
|
|
7
11
|
enumerable: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/workspaces/implementations/index.ts"],"sourcesContent":["export { getWorkspaceManagerAndRoot, type WorkspaceManagerAndRoot } from \"./getWorkspaceManagerAndRoot.js\";\nexport { getWorkspaceUtilities } from \"./getWorkspaceUtilities.js\";\n"],"names":["getWorkspaceManagerAndRoot","getWorkspaceUtilities"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/workspaces/implementations/index.ts"],"sourcesContent":["export { getWorkspaceManagerAndRoot, type WorkspaceManagerAndRoot } from \"./getWorkspaceManagerAndRoot.js\";\nexport { getWorkspaceUtilities } from \"./getWorkspaceUtilities.js\";\n"],"names":["getWorkspaceManagerAndRoot","getWorkspaceUtilities"],"mappings":";;;;;;;;;;;;;;;QAASA;eAAAA,sDAA0B;;QAC1BC;eAAAA,4CAAqB;;;4CAD2C;uCACnC"}
|
|
@@ -75,13 +75,13 @@ const lernaUtilities = {
|
|
|
75
75
|
function getManagerUtils(manager) {
|
|
76
76
|
switch(manager){
|
|
77
77
|
case "npm":
|
|
78
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
78
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
79
79
|
return require("./npm").npmUtilities;
|
|
80
80
|
case "yarn":
|
|
81
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
81
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
82
82
|
return require("./yarn").yarnUtilities;
|
|
83
83
|
case "pnpm":
|
|
84
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
84
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
85
85
|
return require("./pnpm").pnpmUtilities;
|
|
86
86
|
}
|
|
87
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/workspaces/implementations/lerna.ts"],"sourcesContent":["import fs from \"fs\";\nimport jju from \"jju\";\nimport path from \"path\";\nimport { isCachingEnabled } from \"../../isCachingEnabled.js\";\nimport { managerFiles } from \"./getWorkspaceManagerAndRoot.js\";\nimport type { WorkspaceUtilities } from \"./WorkspaceUtilities.js\";\n\nexport const lernaUtilities: WorkspaceUtilities = {\n getWorkspacePatterns: ({ root }) => {\n const lernaJsonPath = path.join(root, managerFiles.lerna);\n const lernaConfig = jju.parse(fs.readFileSync(lernaJsonPath, \"utf-8\")) as { packages?: string[] };\n if (lernaConfig.packages) {\n return { patterns: lernaConfig.packages, type: \"pattern\" };\n }\n\n // Newer lerna versions also pick up workspaces from the package manager.\n const actualManager = getActualManager({ root });\n if (!actualManager) {\n throw new Error(`${lernaJsonPath} does not define \"packages\", and no known package manager was found.`);\n }\n\n const managerUtils = getManagerUtils(actualManager);\n return managerUtils.getWorkspacePatterns({ root });\n },\n\n // lerna could theoretically use yarn or pnpm catalogs\n getCatalogs: ({ root }) => {\n const actualManager = getActualManager({ root });\n return actualManager && getManagerUtils(actualManager).getCatalogs?.({ root });\n },\n};\n\n/** Mapping from lerna repo root to actual package manager */\nconst managerCache = new Map<string, \"yarn\" | \"pnpm\" | \"npm\" | undefined>();\n\n/**\n * Get the actual package manager used by a lerna monorepo (with caching).\n */\nfunction getActualManager(params: { root: string }): \"yarn\" | \"pnpm\" | \"npm\" | undefined {\n const { root } = params;\n if (isCachingEnabled() && managerCache.has(root)) {\n return managerCache.get(root);\n }\n\n for (const manager of [\"npm\", \"yarn\", \"pnpm\"] as const) {\n const managerPath = path.join(root, managerFiles[manager]);\n if (fs.existsSync(managerPath)) {\n managerCache.set(root, manager);\n return manager;\n }\n }\n\n managerCache.set(root, undefined);\n return undefined;\n}\n\nfunction getManagerUtils(manager: \"npm\" | \"yarn\" | \"pnpm\"): WorkspaceUtilities {\n switch (manager) {\n case \"npm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports
|
|
1
|
+
{"version":3,"sources":["../../../src/workspaces/implementations/lerna.ts"],"sourcesContent":["import fs from \"fs\";\nimport jju from \"jju\";\nimport path from \"path\";\nimport { isCachingEnabled } from \"../../isCachingEnabled.js\";\nimport { managerFiles } from \"./getWorkspaceManagerAndRoot.js\";\nimport type { WorkspaceUtilities } from \"./WorkspaceUtilities.js\";\n\nexport const lernaUtilities: WorkspaceUtilities = {\n getWorkspacePatterns: ({ root }) => {\n const lernaJsonPath = path.join(root, managerFiles.lerna);\n const lernaConfig = jju.parse(fs.readFileSync(lernaJsonPath, \"utf-8\")) as { packages?: string[] };\n if (lernaConfig.packages) {\n return { patterns: lernaConfig.packages, type: \"pattern\" };\n }\n\n // Newer lerna versions also pick up workspaces from the package manager.\n const actualManager = getActualManager({ root });\n if (!actualManager) {\n throw new Error(`${lernaJsonPath} does not define \"packages\", and no known package manager was found.`);\n }\n\n const managerUtils = getManagerUtils(actualManager);\n return managerUtils.getWorkspacePatterns({ root });\n },\n\n // lerna could theoretically use yarn or pnpm catalogs\n getCatalogs: ({ root }) => {\n const actualManager = getActualManager({ root });\n return actualManager && getManagerUtils(actualManager).getCatalogs?.({ root });\n },\n};\n\n/** Mapping from lerna repo root to actual package manager */\nconst managerCache = new Map<string, \"yarn\" | \"pnpm\" | \"npm\" | undefined>();\n\n/**\n * Get the actual package manager used by a lerna monorepo (with caching).\n */\nfunction getActualManager(params: { root: string }): \"yarn\" | \"pnpm\" | \"npm\" | undefined {\n const { root } = params;\n if (isCachingEnabled() && managerCache.has(root)) {\n return managerCache.get(root);\n }\n\n for (const manager of [\"npm\", \"yarn\", \"pnpm\"] as const) {\n const managerPath = path.join(root, managerFiles[manager]);\n if (fs.existsSync(managerPath)) {\n managerCache.set(root, manager);\n return manager;\n }\n }\n\n managerCache.set(root, undefined);\n return undefined;\n}\n\nfunction getManagerUtils(manager: \"npm\" | \"yarn\" | \"pnpm\"): WorkspaceUtilities {\n switch (manager) {\n case \"npm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n return (require(\"./npm\") as typeof import(\"./npm\")).npmUtilities;\n case \"yarn\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n return (require(\"./yarn\") as typeof import(\"./yarn\")).yarnUtilities;\n case \"pnpm\":\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports, @typescript-eslint/no-require-imports\n return (require(\"./pnpm\") as typeof import(\"./pnpm\")).pnpmUtilities;\n }\n}\n"],"names":["lernaUtilities","getWorkspacePatterns","root","lernaJsonPath","path","join","managerFiles","lerna","lernaConfig","jju","parse","fs","readFileSync","packages","patterns","type","actualManager","getActualManager","Error","managerUtils","getManagerUtils","getCatalogs","managerCache","Map","params","isCachingEnabled","has","get","manager","managerPath","existsSync","set","undefined","require","npmUtilities","yarnUtilities","pnpmUtilities"],"mappings":";;;;+BAOaA;;;eAAAA;;;2DAPE;4DACC;6DACC;kCACgB;4CACJ;;;;;;AAGtB,MAAMA,iBAAqC;IAChDC,sBAAsB,CAAC,EAAEC,IAAI,EAAE;QAC7B,MAAMC,gBAAgBC,aAAI,CAACC,IAAI,CAACH,MAAMI,wCAAY,CAACC,KAAK;QACxD,MAAMC,cAAcC,YAAG,CAACC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACT,eAAe;QAC7D,IAAIK,YAAYK,QAAQ,EAAE;YACxB,OAAO;gBAAEC,UAAUN,YAAYK,QAAQ;gBAAEE,MAAM;YAAU;QAC3D;QAEA,yEAAyE;QACzE,MAAMC,gBAAgBC,iBAAiB;YAAEf;QAAK;QAC9C,IAAI,CAACc,eAAe;YAClB,MAAM,IAAIE,MAAM,GAAGf,cAAc,oEAAoE,CAAC;QACxG;QAEA,MAAMgB,eAAeC,gBAAgBJ;QACrC,OAAOG,aAAalB,oBAAoB,CAAC;YAAEC;QAAK;IAClD;IAEA,sDAAsD;IACtDmB,aAAa,CAAC,EAAEnB,IAAI,EAAE;QACpB,MAAMc,gBAAgBC,iBAAiB;YAAEf;QAAK;QAC9C,OAAOc,iBAAiBI,gBAAgBJ,eAAeK,WAAW,GAAG;YAAEnB;QAAK;IAC9E;AACF;AAEA,2DAA2D,GAC3D,MAAMoB,eAAe,IAAIC;AAEzB;;CAEC,GACD,SAASN,iBAAiBO,MAAwB;IAChD,MAAM,EAAEtB,IAAI,EAAE,GAAGsB;IACjB,IAAIC,IAAAA,kCAAgB,OAAMH,aAAaI,GAAG,CAACxB,OAAO;QAChD,OAAOoB,aAAaK,GAAG,CAACzB;IAC1B;IAEA,KAAK,MAAM0B,WAAW;QAAC;QAAO;QAAQ;KAAO,CAAW;QACtD,MAAMC,cAAczB,aAAI,CAACC,IAAI,CAACH,MAAMI,wCAAY,CAACsB,QAAQ;QACzD,IAAIjB,WAAE,CAACmB,UAAU,CAACD,cAAc;YAC9BP,aAAaS,GAAG,CAAC7B,MAAM0B;YACvB,OAAOA;QACT;IACF;IAEAN,aAAaS,GAAG,CAAC7B,MAAM8B;IACvB,OAAOA;AACT;AAEA,SAASZ,gBAAgBQ,OAAgC;IACvD,OAAQA;QACN,KAAK;YACH,6GAA6G;YAC7G,OAAO,AAACK,QAAQ,SAAoCC,YAAY;QAClE,KAAK;YACH,6GAA6G;YAC7G,OAAO,AAACD,QAAQ,UAAsCE,aAAa;QACrE,KAAK;YACH,6GAA6G;YAC7G,OAAO,AAACF,QAAQ,UAAsCG,aAAa;IACvE;AACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { WorkspaceManager } from "../types/WorkspaceManager.js";
|
|
2
|
-
import { type WorkspaceManagerAndRoot } from "./implementations";
|
|
2
|
+
import { type WorkspaceManagerAndRoot } from "./implementations/index.js";
|
|
3
3
|
interface WrappedUtilityParams {
|
|
4
4
|
/** Search for the root from here */
|
|
5
5
|
cwd: string;
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
+
0 && (module.exports = {
|
|
6
|
+
wrapAsyncWorkspaceUtility: null,
|
|
7
|
+
wrapWorkspaceUtility: null
|
|
8
|
+
});
|
|
5
9
|
function _export(target, all) {
|
|
6
10
|
for(var name in all)Object.defineProperty(target, name, {
|
|
7
11
|
enumerable: true,
|
|
@@ -17,12 +21,12 @@ _export(exports, {
|
|
|
17
21
|
}
|
|
18
22
|
});
|
|
19
23
|
const _logging = require("../logging.js");
|
|
20
|
-
const
|
|
24
|
+
const _index = require("./implementations/index.js");
|
|
21
25
|
function wrapWorkspaceUtility(params) {
|
|
22
26
|
const { cwd, description, impl } = params;
|
|
23
27
|
let managerInfo;
|
|
24
28
|
try {
|
|
25
|
-
managerInfo = (0,
|
|
29
|
+
managerInfo = (0, _index.getWorkspaceManagerAndRoot)(cwd, undefined, params.managerOverride);
|
|
26
30
|
if (managerInfo) {
|
|
27
31
|
return impl(managerInfo);
|
|
28
32
|
}
|
|
@@ -35,7 +39,7 @@ async function wrapAsyncWorkspaceUtility(params) {
|
|
|
35
39
|
const { cwd, description, impl } = params;
|
|
36
40
|
let managerInfo;
|
|
37
41
|
try {
|
|
38
|
-
managerInfo = (0,
|
|
42
|
+
managerInfo = (0, _index.getWorkspaceManagerAndRoot)(cwd, undefined, params.managerOverride);
|
|
39
43
|
if (managerInfo) {
|
|
40
44
|
return await impl(managerInfo);
|
|
41
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/workspaces/wrapWorkspaceUtility.ts"],"sourcesContent":["import { logVerboseWarning } from \"../logging.js\";\nimport type { WorkspaceManager } from \"../types/WorkspaceManager.js\";\nimport { getWorkspaceManagerAndRoot, type WorkspaceManagerAndRoot } from \"./implementations\";\n\ninterface WrappedUtilityParams {\n /** Search for the root from here */\n cwd: string;\n /** Optional manager to use instead of auto-detecting */\n managerOverride: WorkspaceManager | undefined;\n /** What the utility is getting (for logging) */\n description: string;\n}\n\n/**\n * Wrap a workspace utility function with common error handling and messaging.\n * Also handle getting the manager and root.\n *\n * @returns The utility's return value, or undefined on error (will verbose log on error)\n */\nexport function wrapWorkspaceUtility<TReturn>(\n params: WrappedUtilityParams & {\n /** Implementation of the utility, which receives the detected manager and root */\n impl: (params: WorkspaceManagerAndRoot) => TReturn | undefined;\n }\n): TReturn | undefined {\n const { cwd, description, impl } = params;\n let managerInfo: WorkspaceManagerAndRoot | undefined;\n try {\n managerInfo = getWorkspaceManagerAndRoot(cwd, undefined, params.managerOverride);\n if (managerInfo) {\n return impl(managerInfo);\n }\n } catch (err) {\n const manager = params.managerOverride || managerInfo?.manager || \"unknown manager\";\n logVerboseWarning(`Error getting ${manager} ${description} for ${cwd}:`, err);\n }\n}\n\n/**\n * Wrap a workspace utility function with common error handling and messaging.\n * Also handle getting the manager and root.\n *\n * @returns The utility's return value, or undefined on error (will verbose log on error)\n */\nexport async function wrapAsyncWorkspaceUtility<TReturn>(\n params: WrappedUtilityParams & {\n /** Implementation of the utility, which receives the detected manager and root */\n impl: (params: WorkspaceManagerAndRoot) => Promise<TReturn | undefined>;\n }\n): Promise<TReturn | undefined> {\n const { cwd, description, impl } = params;\n let managerInfo: WorkspaceManagerAndRoot | undefined;\n try {\n managerInfo = getWorkspaceManagerAndRoot(cwd, undefined, params.managerOverride);\n if (managerInfo) {\n return await impl(managerInfo);\n }\n } catch (err) {\n const manager = params.managerOverride || managerInfo?.manager || \"unknown manager\";\n logVerboseWarning(`Error getting ${manager} ${description} for ${cwd}:`, err);\n }\n return undefined;\n}\n"],"names":["wrapAsyncWorkspaceUtility","wrapWorkspaceUtility","params","cwd","description","impl","managerInfo","getWorkspaceManagerAndRoot","undefined","managerOverride","err","manager","logVerboseWarning"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/workspaces/wrapWorkspaceUtility.ts"],"sourcesContent":["import { logVerboseWarning } from \"../logging.js\";\nimport type { WorkspaceManager } from \"../types/WorkspaceManager.js\";\nimport { getWorkspaceManagerAndRoot, type WorkspaceManagerAndRoot } from \"./implementations/index.js\";\n\ninterface WrappedUtilityParams {\n /** Search for the root from here */\n cwd: string;\n /** Optional manager to use instead of auto-detecting */\n managerOverride: WorkspaceManager | undefined;\n /** What the utility is getting (for logging) */\n description: string;\n}\n\n/**\n * Wrap a workspace utility function with common error handling and messaging.\n * Also handle getting the manager and root.\n *\n * @returns The utility's return value, or undefined on error (will verbose log on error)\n */\nexport function wrapWorkspaceUtility<TReturn>(\n params: WrappedUtilityParams & {\n /** Implementation of the utility, which receives the detected manager and root */\n impl: (params: WorkspaceManagerAndRoot) => TReturn | undefined;\n }\n): TReturn | undefined {\n const { cwd, description, impl } = params;\n let managerInfo: WorkspaceManagerAndRoot | undefined;\n try {\n managerInfo = getWorkspaceManagerAndRoot(cwd, undefined, params.managerOverride);\n if (managerInfo) {\n return impl(managerInfo);\n }\n } catch (err) {\n const manager = params.managerOverride || managerInfo?.manager || \"unknown manager\";\n logVerboseWarning(`Error getting ${manager} ${description} for ${cwd}:`, err);\n }\n}\n\n/**\n * Wrap a workspace utility function with common error handling and messaging.\n * Also handle getting the manager and root.\n *\n * @returns The utility's return value, or undefined on error (will verbose log on error)\n */\nexport async function wrapAsyncWorkspaceUtility<TReturn>(\n params: WrappedUtilityParams & {\n /** Implementation of the utility, which receives the detected manager and root */\n impl: (params: WorkspaceManagerAndRoot) => Promise<TReturn | undefined>;\n }\n): Promise<TReturn | undefined> {\n const { cwd, description, impl } = params;\n let managerInfo: WorkspaceManagerAndRoot | undefined;\n try {\n managerInfo = getWorkspaceManagerAndRoot(cwd, undefined, params.managerOverride);\n if (managerInfo) {\n return await impl(managerInfo);\n }\n } catch (err) {\n const manager = params.managerOverride || managerInfo?.manager || \"unknown manager\";\n logVerboseWarning(`Error getting ${manager} ${description} for ${cwd}:`, err);\n }\n return undefined;\n}\n"],"names":["wrapAsyncWorkspaceUtility","wrapWorkspaceUtility","params","cwd","description","impl","managerInfo","getWorkspaceManagerAndRoot","undefined","managerOverride","err","manager","logVerboseWarning"],"mappings":";;;;;;;;;;;;;;;QA4CsBA;eAAAA;;QAzBNC;eAAAA;;;yBAnBkB;uBAEuC;AAiBlE,SAASA,qBACdC,MAGC;IAED,MAAM,EAAEC,GAAG,EAAEC,WAAW,EAAEC,IAAI,EAAE,GAAGH;IACnC,IAAII;IACJ,IAAI;QACFA,cAAcC,IAAAA,iCAA0B,EAACJ,KAAKK,WAAWN,OAAOO,eAAe;QAC/E,IAAIH,aAAa;YACf,OAAOD,KAAKC;QACd;IACF,EAAE,OAAOI,KAAK;QACZ,MAAMC,UAAUT,OAAOO,eAAe,IAAIH,aAAaK,WAAW;QAClEC,IAAAA,0BAAiB,EAAC,CAAC,cAAc,EAAED,QAAQ,CAAC,EAAEP,YAAY,KAAK,EAAED,IAAI,CAAC,CAAC,EAAEO;IAC3E;AACF;AAQO,eAAeV,0BACpBE,MAGC;IAED,MAAM,EAAEC,GAAG,EAAEC,WAAW,EAAEC,IAAI,EAAE,GAAGH;IACnC,IAAII;IACJ,IAAI;QACFA,cAAcC,IAAAA,iCAA0B,EAACJ,KAAKK,WAAWN,OAAOO,eAAe;QAC/E,IAAIH,aAAa;YACf,OAAO,MAAMD,KAAKC;QACpB;IACF,EAAE,OAAOI,KAAK;QACZ,MAAMC,UAAUT,OAAOO,eAAe,IAAIH,aAAaK,WAAW;QAClEC,IAAAA,0BAAiB,EAAC,CAAC,cAAc,EAAED,QAAQ,CAAC,EAAEP,YAAY,KAAK,EAAED,IAAI,CAAC,CAAC,EAAEO;IAC3E;IACA,OAAOF;AACT"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workspace-tools",
|
|
3
|
-
"version": "0.41.
|
|
3
|
+
"version": "0.41.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@lage-run/monorepo-scripts": "^1.0.0",
|
|
34
34
|
"@lage-run/test-utilities": "^0.1.0",
|
|
35
35
|
"@types/git-url-parse": "^16.0.0",
|
|
36
|
-
"@types/jju": "^1.4.
|
|
36
|
+
"@types/jju": "^1.4.5",
|
|
37
37
|
"@types/js-yaml": "^4.0.5",
|
|
38
38
|
"@types/micromatch": "^4.0.0",
|
|
39
39
|
"@types/yarnpkg__lockfile": "^1.1.5",
|
package/lib/tsdoc-metadata.json
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
|
2
|
-
// It should be published with your NPM package. It should not be tracked by Git.
|
|
3
|
-
{
|
|
4
|
-
"tsdocVersion": "0.12",
|
|
5
|
-
"toolPackages": [
|
|
6
|
-
{
|
|
7
|
-
"packageName": "@microsoft/api-extractor",
|
|
8
|
-
"packageVersion": "7.52.9"
|
|
9
|
-
}
|
|
10
|
-
]
|
|
11
|
-
}
|