@cedarjs/cli-helpers 3.1.1 → 3.1.2-next.126

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.
Files changed (100) hide show
  1. package/dist/auth/__tests__/authFiles.test.d.ts +2 -0
  2. package/dist/auth/__tests__/authFiles.test.d.ts.map +1 -0
  3. package/dist/auth/__tests__/authTasks.test.d.ts +2 -0
  4. package/dist/auth/__tests__/authTasks.test.d.ts.map +1 -0
  5. package/dist/auth/__tests__/mockFsFiles.d.ts +14 -0
  6. package/dist/auth/__tests__/mockFsFiles.d.ts.map +1 -0
  7. package/dist/auth/__tests__/setupHelpers.test.d.ts +2 -0
  8. package/dist/auth/__tests__/setupHelpers.test.d.ts.map +1 -0
  9. package/dist/cjs/auth/__tests__/authFiles.test.d.ts +2 -0
  10. package/dist/cjs/auth/__tests__/authFiles.test.d.ts.map +1 -0
  11. package/dist/cjs/auth/__tests__/authTasks.test.d.ts +2 -0
  12. package/dist/cjs/auth/__tests__/authTasks.test.d.ts.map +1 -0
  13. package/dist/cjs/auth/__tests__/mockFsFiles.d.ts +14 -0
  14. package/dist/cjs/auth/__tests__/mockFsFiles.d.ts.map +1 -0
  15. package/dist/cjs/auth/__tests__/setupHelpers.test.d.ts +2 -0
  16. package/dist/cjs/auth/__tests__/setupHelpers.test.d.ts.map +1 -0
  17. package/dist/cjs/index.js +11 -11
  18. package/dist/cjs/lib/__tests__/index.test.d.ts +2 -0
  19. package/dist/cjs/lib/__tests__/index.test.d.ts.map +1 -0
  20. package/dist/cjs/lib/__tests__/loadEnvFiles.test.d.ts +2 -0
  21. package/dist/cjs/lib/__tests__/loadEnvFiles.test.d.ts.map +1 -0
  22. package/dist/cjs/lib/__tests__/project.addTomlSetting.test.d.ts +2 -0
  23. package/dist/cjs/lib/__tests__/project.addTomlSetting.test.d.ts.map +1 -0
  24. package/dist/cjs/lib/__tests__/project.test.d.ts +2 -0
  25. package/dist/cjs/lib/__tests__/project.test.d.ts.map +1 -0
  26. package/dist/cjs/lib/__tests__/version.test.d.ts +2 -0
  27. package/dist/cjs/lib/__tests__/version.test.d.ts.map +1 -0
  28. package/dist/cjs/lib/colors.d.ts +7 -5
  29. package/dist/cjs/lib/colors.d.ts.map +1 -1
  30. package/dist/cjs/lib/installHelpers.d.ts.map +1 -1
  31. package/dist/cjs/lib/installHelpers.js +10 -23
  32. package/dist/cjs/lib/loadEnvFiles.js +2 -2
  33. package/dist/cjs/lib/project.js +7 -7
  34. package/dist/cjs/packageManager/__tests__/display.test.d.ts +2 -0
  35. package/dist/cjs/packageManager/__tests__/display.test.d.ts.map +1 -0
  36. package/dist/cjs/packageManager/__tests__/exec.test.d.ts +2 -0
  37. package/dist/cjs/packageManager/__tests__/exec.test.d.ts.map +1 -0
  38. package/dist/cjs/packageManager/__tests__/index.test.d.ts +2 -0
  39. package/dist/cjs/packageManager/__tests__/index.test.d.ts.map +1 -0
  40. package/dist/cjs/packageManager/__tests__/packages.test.d.ts +2 -0
  41. package/dist/cjs/packageManager/__tests__/packages.test.d.ts.map +1 -0
  42. package/dist/cjs/packageManager/display.d.ts +90 -0
  43. package/dist/cjs/packageManager/display.d.ts.map +1 -0
  44. package/dist/cjs/packageManager/display.js +142 -0
  45. package/dist/cjs/packageManager/exec.d.ts +51 -0
  46. package/dist/cjs/packageManager/exec.d.ts.map +1 -0
  47. package/dist/cjs/packageManager/exec.js +116 -0
  48. package/dist/cjs/packageManager/packages.d.ts +39 -0
  49. package/dist/cjs/packageManager/packages.d.ts.map +1 -0
  50. package/dist/cjs/packageManager/packages.js +90 -0
  51. package/dist/lib/__tests__/index.test.d.ts +2 -0
  52. package/dist/lib/__tests__/index.test.d.ts.map +1 -0
  53. package/dist/lib/__tests__/loadEnvFiles.test.d.ts +2 -0
  54. package/dist/lib/__tests__/loadEnvFiles.test.d.ts.map +1 -0
  55. package/dist/lib/__tests__/project.addTomlSetting.test.d.ts +2 -0
  56. package/dist/lib/__tests__/project.addTomlSetting.test.d.ts.map +1 -0
  57. package/dist/lib/__tests__/project.test.d.ts +2 -0
  58. package/dist/lib/__tests__/project.test.d.ts.map +1 -0
  59. package/dist/lib/__tests__/version.test.d.ts +2 -0
  60. package/dist/lib/__tests__/version.test.d.ts.map +1 -0
  61. package/dist/lib/colors.d.ts +7 -5
  62. package/dist/lib/colors.d.ts.map +1 -1
  63. package/dist/lib/installHelpers.d.ts.map +1 -1
  64. package/dist/lib/installHelpers.js +14 -13
  65. package/dist/lib/loadEnvFiles.js +2 -2
  66. package/dist/lib/project.js +7 -7
  67. package/dist/packageManager/__tests__/display.test.d.ts +2 -0
  68. package/dist/packageManager/__tests__/display.test.d.ts.map +1 -0
  69. package/dist/packageManager/__tests__/exec.test.d.ts +2 -0
  70. package/dist/packageManager/__tests__/exec.test.d.ts.map +1 -0
  71. package/dist/packageManager/__tests__/index.test.d.ts +2 -0
  72. package/dist/packageManager/__tests__/index.test.d.ts.map +1 -0
  73. package/dist/packageManager/__tests__/packages.test.d.ts +2 -0
  74. package/dist/packageManager/__tests__/packages.test.d.ts.map +1 -0
  75. package/dist/packageManager/display.d.ts +90 -0
  76. package/dist/packageManager/display.d.ts.map +1 -0
  77. package/dist/packageManager/display.js +109 -0
  78. package/dist/packageManager/exec.d.ts +51 -0
  79. package/dist/packageManager/exec.d.ts.map +1 -0
  80. package/dist/packageManager/exec.js +76 -0
  81. package/dist/packageManager/packages.d.ts +39 -0
  82. package/dist/packageManager/packages.d.ts.map +1 -0
  83. package/dist/packageManager/packages.js +53 -0
  84. package/dist/src/lib/colors.d.ts +7 -5
  85. package/dist/src/lib/colors.d.ts.map +1 -1
  86. package/dist/src/lib/installHelpers.d.ts.map +1 -1
  87. package/dist/src/packageManager/__tests__/display.test.d.ts +2 -0
  88. package/dist/src/packageManager/__tests__/display.test.d.ts.map +1 -0
  89. package/dist/src/packageManager/__tests__/exec.test.d.ts +2 -0
  90. package/dist/src/packageManager/__tests__/exec.test.d.ts.map +1 -0
  91. package/dist/src/packageManager/__tests__/packages.test.d.ts +2 -0
  92. package/dist/src/packageManager/__tests__/packages.test.d.ts.map +1 -0
  93. package/dist/src/packageManager/display.d.ts +90 -0
  94. package/dist/src/packageManager/display.d.ts.map +1 -0
  95. package/dist/src/packageManager/exec.d.ts +51 -0
  96. package/dist/src/packageManager/exec.d.ts.map +1 -0
  97. package/dist/src/packageManager/packages.d.ts +39 -0
  98. package/dist/src/packageManager/packages.d.ts.map +1 -0
  99. package/dist/tsconfig.tsbuildinfo +1 -1
  100. package/package.json +37 -7
@@ -0,0 +1,109 @@
1
+ import { getPackageManager } from "@cedarjs/project-config/packageManager";
2
+ function formatInstallCommand() {
3
+ return `${getPackageManager()} install`;
4
+ }
5
+ function formatCedarCommand(args) {
6
+ const pm = getPackageManager();
7
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
8
+ if (pm === "npm") {
9
+ return `npx cedar${argStr}`;
10
+ }
11
+ if (pm === "pnpm") {
12
+ return `pnpm exec cedar${argStr}`;
13
+ }
14
+ return `yarn cedar${argStr}`;
15
+ }
16
+ function formatRunScriptCommand(script, args = []) {
17
+ const pm = getPackageManager();
18
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
19
+ if (pm === "npm") {
20
+ const separator = args.length > 0 ? " -- " : "";
21
+ return `npm run ${script}${separator}${args.join(" ")}`;
22
+ }
23
+ return `${pm} ${script}${argStr}`;
24
+ }
25
+ function formatRunWorkspaceScriptCommand(workspace, script, args = []) {
26
+ const pm = getPackageManager();
27
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
28
+ if (pm === "yarn") {
29
+ return `yarn workspace ${workspace} ${script}${argStr}`;
30
+ }
31
+ if (pm === "npm") {
32
+ const separator2 = args.length > 0 ? " -- " : "";
33
+ return `npm run ${script} -w ${workspace}${separator2}${args.join(" ")}`;
34
+ }
35
+ const separator = args.length > 0 ? " -- " : "";
36
+ return `pnpm ${script} --filter ${workspace}${separator}${args.join(" ")}`;
37
+ }
38
+ function formatRunBinCommand(bin, args = []) {
39
+ const pm = getPackageManager();
40
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
41
+ if (pm === "npm") {
42
+ return `npx ${bin}${argStr}`;
43
+ }
44
+ if (pm === "pnpm") {
45
+ return `pnpm exec ${bin}${argStr}`;
46
+ }
47
+ return `yarn ${bin}${argStr}`;
48
+ }
49
+ function formatRunWorkspaceBinCommand(workspace, bin, args = []) {
50
+ const pm = getPackageManager();
51
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
52
+ if (pm === "yarn") {
53
+ return `yarn workspace ${workspace} ${bin}${argStr}`;
54
+ }
55
+ if (pm === "npm") {
56
+ return `npm exec -w ${workspace} -- ${bin}${argStr}`;
57
+ }
58
+ return `pnpm exec --filter ${workspace} ${bin}${argStr}`;
59
+ }
60
+ function formatDlxCommand(command, args = []) {
61
+ const pm = getPackageManager();
62
+ const argStr = args.length > 0 ? ` ${args.join(" ")}` : "";
63
+ if (pm === "npm") {
64
+ return `npx ${command}${argStr}`;
65
+ }
66
+ return `${pm} dlx ${command}${argStr}`;
67
+ }
68
+ function formatAddRootPackagesCommand(packages, dev = false) {
69
+ const pm = getPackageManager();
70
+ const devFlag = dev ? " -D" : "";
71
+ const pkgStr = packages.join(" ");
72
+ const addCmd = pm === "npm" ? "install" : "add";
73
+ return `${pm} ${addCmd}${devFlag} ${pkgStr}`;
74
+ }
75
+ function formatAddWorkspacePackagesCommand(workspace, packages, dev = false) {
76
+ const pm = getPackageManager();
77
+ const devFlag = dev ? " -D" : "";
78
+ const pkgStr = packages.join(" ");
79
+ if (pm === "yarn") {
80
+ return `yarn workspace ${workspace} add${devFlag} ${pkgStr}`;
81
+ }
82
+ if (pm === "npm") {
83
+ return `npm install${devFlag} ${pkgStr} -w ${workspace}`;
84
+ }
85
+ return `pnpm add${devFlag} ${pkgStr} --filter ${workspace}`;
86
+ }
87
+ function formatRemoveWorkspacePackagesCommand(workspace, packages) {
88
+ const pm = getPackageManager();
89
+ const pkgStr = packages.join(" ");
90
+ if (pm === "yarn") {
91
+ return `yarn workspace ${workspace} remove ${pkgStr}`;
92
+ }
93
+ if (pm === "npm") {
94
+ return `npm uninstall ${pkgStr} -w ${workspace}`;
95
+ }
96
+ return `pnpm remove ${pkgStr} --filter ${workspace}`;
97
+ }
98
+ export {
99
+ formatAddRootPackagesCommand,
100
+ formatAddWorkspacePackagesCommand,
101
+ formatCedarCommand,
102
+ formatDlxCommand,
103
+ formatInstallCommand,
104
+ formatRemoveWorkspacePackagesCommand,
105
+ formatRunBinCommand,
106
+ formatRunScriptCommand,
107
+ formatRunWorkspaceBinCommand,
108
+ formatRunWorkspaceScriptCommand
109
+ };
@@ -0,0 +1,51 @@
1
+ import execa from 'execa';
2
+ import type { Options as ExecaOptions, SyncOptions as ExecaSyncOptions } from 'execa';
3
+ /**
4
+ * Run a script defined in package.json "scripts".
5
+ *
6
+ * - yarn: `yarn <script> [args]`
7
+ * - npm: `npm run <script> [-- args]`
8
+ * - pnpm: `pnpm <script> [args]`
9
+ */
10
+ export declare function runScript(script: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
11
+ /**
12
+ * Synchronous variant of {@link runScript}.
13
+ */
14
+ export declare function runScriptSync(script: string, args?: string[], options?: ExecaSyncOptions): execa.ExecaSyncReturnValue<string>;
15
+ /**
16
+ * Run a script in a workspace.
17
+ *
18
+ * - yarn: `yarn workspace <workspace> <script> [args]`
19
+ * - npm: `npm run <script> -w <workspace> [-- args]`
20
+ * - pnpm: `pnpm <script> --filter <workspace> [-- args]`
21
+ */
22
+ export declare function runWorkspaceScript(workspace: string, script: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
23
+ /**
24
+ * Run a local binary from node_modules/.bin (PnP-safe for Yarn).
25
+ *
26
+ * - yarn: `yarn <bin> [args]`
27
+ * - npm: `npx <bin> [args]`
28
+ * - pnpm: `pnpm exec <bin> [args]`
29
+ */
30
+ export declare function runBin(bin: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
31
+ /**
32
+ * Synchronous variant of {@link runBin}.
33
+ */
34
+ export declare function runBinSync(bin: string, args?: string[], options?: ExecaSyncOptions): execa.ExecaSyncReturnValue<string>;
35
+ /**
36
+ * Run a local binary in a workspace context.
37
+ *
38
+ * - yarn: `yarn workspace <workspace> <bin> [args]`
39
+ * - npm: `npm exec -w <workspace> -- <bin> [args]`
40
+ * - pnpm: `pnpm exec --filter <workspace> <bin> [args]`
41
+ */
42
+ export declare function runWorkspaceBin(workspace: string, bin: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
43
+ /**
44
+ * One-off package execution (equivalent to `npx`).
45
+ *
46
+ * - yarn: `yarn dlx <command> [args]`
47
+ * - npm: `npx <command> [args]`
48
+ * - pnpm: `pnpm dlx <command> [args]`
49
+ */
50
+ export declare function dlx(command: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
51
+ //# sourceMappingURL=exec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/packageManager/exec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EACV,OAAO,IAAI,YAAY,EACvB,WAAW,IAAI,gBAAgB,EAChC,MAAM,OAAO,CAAA;AAId;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAWvB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,gBAAgB,sCAW3B;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAsBvB;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,gBAAgB,sCAc3B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CACjB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCASvB"}
@@ -0,0 +1,76 @@
1
+ import execa from "execa";
2
+ import { getPackageManager } from "@cedarjs/project-config/packageManager";
3
+ function runScript(script, args = [], options) {
4
+ const pm = getPackageManager();
5
+ if (pm === "npm") {
6
+ const npmArgs = args.length > 0 ? ["run", script, "--", ...args] : ["run", script];
7
+ return execa(pm, npmArgs, options);
8
+ }
9
+ return execa(pm, [script, ...args], options);
10
+ }
11
+ function runScriptSync(script, args = [], options) {
12
+ const pm = getPackageManager();
13
+ if (pm === "npm") {
14
+ const npmArgs = args.length > 0 ? ["run", script, "--", ...args] : ["run", script];
15
+ return execa.sync(pm, npmArgs, options);
16
+ }
17
+ return execa.sync(pm, [script, ...args], options);
18
+ }
19
+ function runWorkspaceScript(workspace, script, args = [], options) {
20
+ const pm = getPackageManager();
21
+ if (pm === "yarn") {
22
+ return execa(pm, ["workspace", workspace, script, ...args], options);
23
+ }
24
+ if (pm === "npm") {
25
+ const npmArgs = args.length > 0 ? ["run", script, "-w", workspace, "--", ...args] : ["run", script, "-w", workspace];
26
+ return execa(pm, npmArgs, options);
27
+ }
28
+ const pnpmArgs = args.length > 0 ? [script, "--filter", workspace, "--", ...args] : [script, "--filter", workspace];
29
+ return execa(pm, pnpmArgs, options);
30
+ }
31
+ function runBin(bin, args = [], options) {
32
+ const pm = getPackageManager();
33
+ if (pm === "npm") {
34
+ return execa("npx", [bin, ...args], options);
35
+ }
36
+ if (pm === "pnpm") {
37
+ return execa(pm, ["exec", bin, ...args], options);
38
+ }
39
+ return execa(pm, [bin, ...args], options);
40
+ }
41
+ function runBinSync(bin, args = [], options) {
42
+ const pm = getPackageManager();
43
+ if (pm === "npm") {
44
+ return execa.sync("npx", [bin, ...args], options);
45
+ }
46
+ if (pm === "pnpm") {
47
+ return execa.sync(pm, ["exec", bin, ...args], options);
48
+ }
49
+ return execa.sync(pm, [bin, ...args], options);
50
+ }
51
+ function runWorkspaceBin(workspace, bin, args = [], options) {
52
+ const pm = getPackageManager();
53
+ if (pm === "yarn") {
54
+ return execa(pm, ["workspace", workspace, bin, ...args], options);
55
+ }
56
+ if (pm === "npm") {
57
+ return execa(pm, ["exec", "-w", workspace, "--", bin, ...args], options);
58
+ }
59
+ return execa(pm, ["exec", "--filter", workspace, bin, ...args], options);
60
+ }
61
+ function dlx(command, args = [], options) {
62
+ const pm = getPackageManager();
63
+ if (pm === "npm") {
64
+ return execa("npx", [command, ...args], options);
65
+ }
66
+ return execa(pm, ["dlx", command, ...args], options);
67
+ }
68
+ export {
69
+ dlx,
70
+ runBin,
71
+ runBinSync,
72
+ runScript,
73
+ runScriptSync,
74
+ runWorkspaceBin,
75
+ runWorkspaceScript
76
+ };
@@ -0,0 +1,39 @@
1
+ import execa from 'execa';
2
+ import type { Options as ExecaOptions } from 'execa';
3
+ type AddOptions = ExecaOptions & {
4
+ dev?: boolean;
5
+ };
6
+ /**
7
+ * Add packages to the project root.
8
+ *
9
+ * - yarn: `yarn add [-D] <packages>`
10
+ * - npm: `npm install [-D] <packages>`
11
+ * - pnpm: `pnpm add [-D] <packages>`
12
+ */
13
+ export declare function addRootPackages(packages: string[], options?: AddOptions): execa.ExecaChildProcess<string>;
14
+ /**
15
+ * Add packages to a specific workspace.
16
+ *
17
+ * - yarn: `yarn workspace <workspace> add [-D] <packages>`
18
+ * - npm: `npm install [-D] <packages> -w <workspace>`
19
+ * - pnpm: `pnpm add [-D] <packages> --filter <workspace>`
20
+ */
21
+ export declare function addWorkspacePackages(workspace: string, packages: string[], options?: AddOptions): execa.ExecaChildProcess<string>;
22
+ /**
23
+ * Remove packages from a specific workspace.
24
+ *
25
+ * - yarn: `yarn workspace <workspace> remove <packages>`
26
+ * - npm: `npm uninstall <packages> -w <workspace>`
27
+ * - pnpm: `pnpm remove <packages> --filter <workspace>`
28
+ */
29
+ export declare function removeWorkspacePackages(workspace: string, packages: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
30
+ /**
31
+ * Install all project dependencies.
32
+ *
33
+ * - yarn: `yarn install`
34
+ * - npm: `npm install`
35
+ * - pnpm: `pnpm install`
36
+ */
37
+ export declare function installPackages(options?: ExecaOptions): execa.ExecaChildProcess<string>;
38
+ export {};
39
+ //# sourceMappingURL=packages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packages.d.ts","sourceRoot":"","sources":["../../src/packageManager/packages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,OAAO,CAAA;AAIpD,KAAK,UAAU,GAAG,YAAY,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAElD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,mCAOvE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE,UAAU,mCA4BrB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,mCAGrD"}
@@ -0,0 +1,53 @@
1
+ import execa from "execa";
2
+ import { getPackageManager } from "@cedarjs/project-config/packageManager";
3
+ function addRootPackages(packages, options) {
4
+ const pm = getPackageManager();
5
+ const { dev, ...execaOptions } = options ?? {};
6
+ const addCmd = pm === "npm" ? "install" : "add";
7
+ const devFlag = dev ? ["-D"] : [];
8
+ return execa(pm, [addCmd, ...devFlag, ...packages], execaOptions);
9
+ }
10
+ function addWorkspacePackages(workspace, packages, options) {
11
+ const pm = getPackageManager();
12
+ const { dev, ...execaOptions } = options ?? {};
13
+ const devFlag = dev ? ["-D"] : [];
14
+ if (pm === "yarn") {
15
+ return execa(
16
+ pm,
17
+ ["workspace", workspace, "add", ...devFlag, ...packages],
18
+ execaOptions
19
+ );
20
+ }
21
+ if (pm === "npm") {
22
+ return execa(
23
+ pm,
24
+ ["install", ...devFlag, ...packages, "-w", workspace],
25
+ execaOptions
26
+ );
27
+ }
28
+ return execa(
29
+ pm,
30
+ ["add", ...devFlag, ...packages, "--filter", workspace],
31
+ execaOptions
32
+ );
33
+ }
34
+ function removeWorkspacePackages(workspace, packages, options) {
35
+ const pm = getPackageManager();
36
+ if (pm === "yarn") {
37
+ return execa(pm, ["workspace", workspace, "remove", ...packages], options);
38
+ }
39
+ if (pm === "npm") {
40
+ return execa(pm, ["uninstall", ...packages, "-w", workspace], options);
41
+ }
42
+ return execa(pm, ["remove", ...packages, "--filter", workspace], options);
43
+ }
44
+ function installPackages(options) {
45
+ const pm = getPackageManager();
46
+ return execa(pm, ["install"], options);
47
+ }
48
+ export {
49
+ addRootPackages,
50
+ addWorkspacePackages,
51
+ installPackages,
52
+ removeWorkspacePackages
53
+ };
@@ -1,9 +1,11 @@
1
1
  /**
2
- * To keep a consistent color/style palette between cli packages, such as
3
- * @redwood/cli and @redwood/create-cedar-app, please only use the colors
4
- * defined here. If you *really* can't find a color that fits your needs,
5
- * it's better to add it here than to introduce a new one-off color in whatever
6
- * package you're going to use it in.
2
+ * Canonical color/style palette for all Cedar CLI packages.
3
+ *
4
+ * Import from here rather than defining local copies:
5
+ * import { colors } from '@cedarjs/cli-helpers'
6
+ *
7
+ * If you need a color that isn't here, add it here rather than
8
+ * introducing a one-off in another package.
7
9
  */
8
10
  export declare const colors: {
9
11
  error: import("ansis").Ansis;
@@ -1 +1 @@
1
- {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../src/lib/colors.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAalB,CAAA"}
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../src/lib/colors.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAalB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"installHelpers.d.ts","sourceRoot":"","sources":["../../../src/lib/installHelpers.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,cAAc,GAAI,aAAa,MAAM,EAAE;;;CAMlD,CAAA;AAEF,eAAO,MAAM,cAAc,GAAI,aAAa,MAAM,EAAE;;;CAMlD,CAAA;AAEF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,EAAE,uBAAqB;;;CASxE,CAAA;AAED,eAAO,MAAM,eAAe;;;CAM3B,CAAA"}
1
+ {"version":3,"file":"installHelpers.d.ts","sourceRoot":"","sources":["../../../src/lib/installHelpers.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,cAAc,GAAI,aAAa,MAAM,EAAE;;;CAMlD,CAAA;AAEF,eAAO,MAAM,cAAc,GAAI,aAAa,MAAM,EAAE;;;CAMlD,CAAA;AAEF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,EAAE,uBAAqB;;;CAQxE,CAAA;AAED,eAAO,MAAM,eAAe;;;CAM3B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=display.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display.test.d.ts","sourceRoot":"","sources":["../../../../src/packageManager/__tests__/display.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=exec.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.test.d.ts","sourceRoot":"","sources":["../../../../src/packageManager/__tests__/exec.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=packages.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packages.test.d.ts","sourceRoot":"","sources":["../../../../src/packageManager/__tests__/packages.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Returns the formatted install command for the detected package manager.
3
+ *
4
+ * yarn → `yarn install`
5
+ * npm → `npm install`
6
+ * pnpm → `pnpm install`
7
+ */
8
+ export declare function formatInstallCommand(): string;
9
+ /**
10
+ * Returns a formatted string for running a Cedar CLI command via the detected
11
+ * package manager.
12
+ *
13
+ * yarn → `yarn cedar <args>`
14
+ * npm → `npx cedar <args>`
15
+ * pnpm → `pnpm exec cedar <args>`
16
+ */
17
+ export declare function formatCedarCommand(args: string[]): string;
18
+ /**
19
+ * Returns a formatted string for running a package.json script via the
20
+ * detected package manager.
21
+ *
22
+ * yarn → `yarn <script> [args]`
23
+ * npm → `npm run <script>[ -- args]`
24
+ * pnpm → `pnpm <script> [args]`
25
+ */
26
+ export declare function formatRunScriptCommand(script: string, args?: string[]): string;
27
+ /**
28
+ * Returns a formatted string for running a package.json script in a workspace
29
+ * via the detected package manager.
30
+ *
31
+ * yarn → `yarn workspace <workspace> <script> [args]`
32
+ * npm → `npm run <script> -w <workspace>[ -- args]`
33
+ * pnpm → `pnpm <script> --filter <workspace>[-- args]`
34
+ */
35
+ export declare function formatRunWorkspaceScriptCommand(workspace: string, script: string, args?: string[]): string;
36
+ /**
37
+ * Returns a formatted string for running a local binary (from
38
+ * node_modules/.bin) via the detected package manager.
39
+ *
40
+ * yarn → `yarn <bin> [args]` (PnP-safe)
41
+ * npm → `npx <bin> [args]`
42
+ * pnpm → `pnpm exec <bin> [args]`
43
+ */
44
+ export declare function formatRunBinCommand(bin: string, args?: string[]): string;
45
+ /**
46
+ * Returns a formatted string for running a local binary in a workspace context
47
+ * via the detected package manager.
48
+ *
49
+ * yarn → `yarn workspace <workspace> <bin> [args]`
50
+ * npm → `npm exec -w <workspace> -- <bin> [args]`
51
+ * pnpm → `pnpm exec --filter <workspace> <bin> [args]`
52
+ */
53
+ export declare function formatRunWorkspaceBinCommand(workspace: string, bin: string, args?: string[]): string;
54
+ /**
55
+ * Returns a formatted string for a one-off package execution via the detected
56
+ * package manager.
57
+ *
58
+ * yarn → `yarn dlx <command> [args]`
59
+ * npm → `npx <command> [args]`
60
+ * pnpm → `pnpm dlx <command> [args]`
61
+ */
62
+ export declare function formatDlxCommand(command: string, args?: string[]): string;
63
+ /**
64
+ * Returns a formatted string for adding packages to the project root via the
65
+ * detected package manager.
66
+ *
67
+ * yarn → `yarn add [-D] <packages>`
68
+ * npm → `npm install [-D] <packages>`
69
+ * pnpm → `pnpm add [-D] <packages>`
70
+ */
71
+ export declare function formatAddRootPackagesCommand(packages: string[], dev?: boolean): string;
72
+ /**
73
+ * Returns a formatted string for adding packages to a workspace via the
74
+ * detected package manager.
75
+ *
76
+ * yarn → `yarn workspace <workspace> add [-D] <packages>`
77
+ * npm → `npm install [-D] <packages> -w <workspace>`
78
+ * pnpm → `pnpm add [-D] <packages> --filter <workspace>`
79
+ */
80
+ export declare function formatAddWorkspacePackagesCommand(workspace: string, packages: string[], dev?: boolean): string;
81
+ /**
82
+ * Returns a formatted string for removing packages from a workspace via the
83
+ * detected package manager.
84
+ *
85
+ * yarn → `yarn workspace <workspace> remove <packages>`
86
+ * npm → `npm uninstall <packages> -w <workspace>`
87
+ * pnpm → `pnpm remove <packages> --filter <workspace>`
88
+ */
89
+ export declare function formatRemoveWorkspacePackagesCommand(workspace: string, packages: string[]): string;
90
+ //# sourceMappingURL=display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../src/packageManager/display.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAazD;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,GAClB,MAAM,CAUR;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,GAClB,MAAM,CAgBR;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM,CAa5E;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,GAClB,MAAM,CAcR;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM,CAS7E;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAAE,EAClB,GAAG,UAAQ,GACV,MAAM,CAOR;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,GAAG,UAAQ,GACV,MAAM,CAeR;AAED;;;;;;;GAOG;AACH,wBAAgB,oCAAoC,CAClD,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,GACjB,MAAM,CAcR"}
@@ -0,0 +1,51 @@
1
+ import execa from 'execa';
2
+ import type { Options as ExecaOptions, SyncOptions as ExecaSyncOptions } from 'execa';
3
+ /**
4
+ * Run a script defined in package.json "scripts".
5
+ *
6
+ * - yarn: `yarn <script> [args]`
7
+ * - npm: `npm run <script> [-- args]`
8
+ * - pnpm: `pnpm <script> [args]`
9
+ */
10
+ export declare function runScript(script: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
11
+ /**
12
+ * Synchronous variant of {@link runScript}.
13
+ */
14
+ export declare function runScriptSync(script: string, args?: string[], options?: ExecaSyncOptions): execa.ExecaSyncReturnValue<string>;
15
+ /**
16
+ * Run a script in a workspace.
17
+ *
18
+ * - yarn: `yarn workspace <workspace> <script> [args]`
19
+ * - npm: `npm run <script> -w <workspace> [-- args]`
20
+ * - pnpm: `pnpm <script> --filter <workspace> [-- args]`
21
+ */
22
+ export declare function runWorkspaceScript(workspace: string, script: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
23
+ /**
24
+ * Run a local binary from node_modules/.bin (PnP-safe for Yarn).
25
+ *
26
+ * - yarn: `yarn <bin> [args]`
27
+ * - npm: `npx <bin> [args]`
28
+ * - pnpm: `pnpm exec <bin> [args]`
29
+ */
30
+ export declare function runBin(bin: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
31
+ /**
32
+ * Synchronous variant of {@link runBin}.
33
+ */
34
+ export declare function runBinSync(bin: string, args?: string[], options?: ExecaSyncOptions): execa.ExecaSyncReturnValue<string>;
35
+ /**
36
+ * Run a local binary in a workspace context.
37
+ *
38
+ * - yarn: `yarn workspace <workspace> <bin> [args]`
39
+ * - npm: `npm exec -w <workspace> -- <bin> [args]`
40
+ * - pnpm: `pnpm exec --filter <workspace> <bin> [args]`
41
+ */
42
+ export declare function runWorkspaceBin(workspace: string, bin: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
43
+ /**
44
+ * One-off package execution (equivalent to `npx`).
45
+ *
46
+ * - yarn: `yarn dlx <command> [args]`
47
+ * - npm: `npx <command> [args]`
48
+ * - pnpm: `pnpm dlx <command> [args]`
49
+ */
50
+ export declare function dlx(command: string, args?: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
51
+ //# sourceMappingURL=exec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../../src/packageManager/exec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EACV,OAAO,IAAI,YAAY,EACvB,WAAW,IAAI,gBAAgB,EAChC,MAAM,OAAO,CAAA;AAId;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAWvB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,gBAAgB,sCAW3B;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAsBvB;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,gBAAgB,sCAc3B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CACjB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,YAAY,mCASvB"}
@@ -0,0 +1,39 @@
1
+ import execa from 'execa';
2
+ import type { Options as ExecaOptions } from 'execa';
3
+ type AddOptions = ExecaOptions & {
4
+ dev?: boolean;
5
+ };
6
+ /**
7
+ * Add packages to the project root.
8
+ *
9
+ * - yarn: `yarn add [-D] <packages>`
10
+ * - npm: `npm install [-D] <packages>`
11
+ * - pnpm: `pnpm add [-D] <packages>`
12
+ */
13
+ export declare function addRootPackages(packages: string[], options?: AddOptions): execa.ExecaChildProcess<string>;
14
+ /**
15
+ * Add packages to a specific workspace.
16
+ *
17
+ * - yarn: `yarn workspace <workspace> add [-D] <packages>`
18
+ * - npm: `npm install [-D] <packages> -w <workspace>`
19
+ * - pnpm: `pnpm add [-D] <packages> --filter <workspace>`
20
+ */
21
+ export declare function addWorkspacePackages(workspace: string, packages: string[], options?: AddOptions): execa.ExecaChildProcess<string>;
22
+ /**
23
+ * Remove packages from a specific workspace.
24
+ *
25
+ * - yarn: `yarn workspace <workspace> remove <packages>`
26
+ * - npm: `npm uninstall <packages> -w <workspace>`
27
+ * - pnpm: `pnpm remove <packages> --filter <workspace>`
28
+ */
29
+ export declare function removeWorkspacePackages(workspace: string, packages: string[], options?: ExecaOptions): execa.ExecaChildProcess<string>;
30
+ /**
31
+ * Install all project dependencies.
32
+ *
33
+ * - yarn: `yarn install`
34
+ * - npm: `npm install`
35
+ * - pnpm: `pnpm install`
36
+ */
37
+ export declare function installPackages(options?: ExecaOptions): execa.ExecaChildProcess<string>;
38
+ export {};
39
+ //# sourceMappingURL=packages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packages.d.ts","sourceRoot":"","sources":["../../../src/packageManager/packages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,OAAO,CAAA;AAIpD,KAAK,UAAU,GAAG,YAAY,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAElD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,mCAOvE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE,UAAU,mCA4BrB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE,YAAY,mCAcvB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,mCAGrD"}