gitgrip 0.2.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.
Files changed (132) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +211 -0
  3. package/actions/cross-repo-sync/action.yml +55 -0
  4. package/assets/banner.svg +73 -0
  5. package/assets/icon.svg +30 -0
  6. package/assets/logo-dark.svg +36 -0
  7. package/assets/logo.svg +36 -0
  8. package/dist/commands/add.d.ts +9 -0
  9. package/dist/commands/add.d.ts.map +1 -0
  10. package/dist/commands/add.js +80 -0
  11. package/dist/commands/add.js.map +1 -0
  12. package/dist/commands/bench.d.ts +12 -0
  13. package/dist/commands/bench.d.ts.map +1 -0
  14. package/dist/commands/bench.js +136 -0
  15. package/dist/commands/bench.js.map +1 -0
  16. package/dist/commands/branch.d.ts +15 -0
  17. package/dist/commands/branch.d.ts.map +1 -0
  18. package/dist/commands/branch.js +159 -0
  19. package/dist/commands/branch.js.map +1 -0
  20. package/dist/commands/checkout.d.ts +10 -0
  21. package/dist/commands/checkout.d.ts.map +1 -0
  22. package/dist/commands/checkout.js +85 -0
  23. package/dist/commands/checkout.js.map +1 -0
  24. package/dist/commands/commit.d.ts +10 -0
  25. package/dist/commands/commit.d.ts.map +1 -0
  26. package/dist/commands/commit.js +94 -0
  27. package/dist/commands/commit.js.map +1 -0
  28. package/dist/commands/diff.d.ts +11 -0
  29. package/dist/commands/diff.d.ts.map +1 -0
  30. package/dist/commands/diff.js +105 -0
  31. package/dist/commands/diff.js.map +1 -0
  32. package/dist/commands/env.d.ts +8 -0
  33. package/dist/commands/env.d.ts.map +1 -0
  34. package/dist/commands/env.js +35 -0
  35. package/dist/commands/env.js.map +1 -0
  36. package/dist/commands/forall.d.ts +13 -0
  37. package/dist/commands/forall.d.ts.map +1 -0
  38. package/dist/commands/forall.js +116 -0
  39. package/dist/commands/forall.js.map +1 -0
  40. package/dist/commands/init.d.ts +15 -0
  41. package/dist/commands/init.d.ts.map +1 -0
  42. package/dist/commands/init.js +106 -0
  43. package/dist/commands/init.js.map +1 -0
  44. package/dist/commands/link.d.ts +11 -0
  45. package/dist/commands/link.d.ts.map +1 -0
  46. package/dist/commands/link.js +205 -0
  47. package/dist/commands/link.js.map +1 -0
  48. package/dist/commands/migrate.d.ts +17 -0
  49. package/dist/commands/migrate.d.ts.map +1 -0
  50. package/dist/commands/migrate.js +180 -0
  51. package/dist/commands/migrate.js.map +1 -0
  52. package/dist/commands/pr/create.d.ts +13 -0
  53. package/dist/commands/pr/create.d.ts.map +1 -0
  54. package/dist/commands/pr/create.js +202 -0
  55. package/dist/commands/pr/create.js.map +1 -0
  56. package/dist/commands/pr/index.d.ts +4 -0
  57. package/dist/commands/pr/index.d.ts.map +1 -0
  58. package/dist/commands/pr/index.js +4 -0
  59. package/dist/commands/pr/index.js.map +1 -0
  60. package/dist/commands/pr/merge.d.ts +11 -0
  61. package/dist/commands/pr/merge.d.ts.map +1 -0
  62. package/dist/commands/pr/merge.js +168 -0
  63. package/dist/commands/pr/merge.js.map +1 -0
  64. package/dist/commands/pr/status.d.ts +9 -0
  65. package/dist/commands/pr/status.d.ts.map +1 -0
  66. package/dist/commands/pr/status.js +139 -0
  67. package/dist/commands/pr/status.js.map +1 -0
  68. package/dist/commands/push.d.ts +10 -0
  69. package/dist/commands/push.d.ts.map +1 -0
  70. package/dist/commands/push.js +101 -0
  71. package/dist/commands/push.js.map +1 -0
  72. package/dist/commands/run.d.ts +8 -0
  73. package/dist/commands/run.d.ts.map +1 -0
  74. package/dist/commands/run.js +75 -0
  75. package/dist/commands/run.js.map +1 -0
  76. package/dist/commands/status.d.ts +9 -0
  77. package/dist/commands/status.d.ts.map +1 -0
  78. package/dist/commands/status.js +201 -0
  79. package/dist/commands/status.js.map +1 -0
  80. package/dist/commands/sync.d.ts +13 -0
  81. package/dist/commands/sync.d.ts.map +1 -0
  82. package/dist/commands/sync.js +183 -0
  83. package/dist/commands/sync.js.map +1 -0
  84. package/dist/index.d.ts +3 -0
  85. package/dist/index.d.ts.map +1 -0
  86. package/dist/index.js +352 -0
  87. package/dist/index.js.map +1 -0
  88. package/dist/lib/__bench__/files.bench.d.ts +2 -0
  89. package/dist/lib/__bench__/files.bench.d.ts.map +1 -0
  90. package/dist/lib/__bench__/files.bench.js +52 -0
  91. package/dist/lib/__bench__/files.bench.js.map +1 -0
  92. package/dist/lib/__bench__/manifest.bench.d.ts +2 -0
  93. package/dist/lib/__bench__/manifest.bench.d.ts.map +1 -0
  94. package/dist/lib/__bench__/manifest.bench.js +74 -0
  95. package/dist/lib/__bench__/manifest.bench.js.map +1 -0
  96. package/dist/lib/files.d.ts +84 -0
  97. package/dist/lib/files.d.ts.map +1 -0
  98. package/dist/lib/files.js +492 -0
  99. package/dist/lib/files.js.map +1 -0
  100. package/dist/lib/git.d.ts +125 -0
  101. package/dist/lib/git.d.ts.map +1 -0
  102. package/dist/lib/git.js +370 -0
  103. package/dist/lib/git.js.map +1 -0
  104. package/dist/lib/github.d.ts +92 -0
  105. package/dist/lib/github.d.ts.map +1 -0
  106. package/dist/lib/github.js +284 -0
  107. package/dist/lib/github.js.map +1 -0
  108. package/dist/lib/hooks.d.ts +19 -0
  109. package/dist/lib/hooks.d.ts.map +1 -0
  110. package/dist/lib/hooks.js +63 -0
  111. package/dist/lib/hooks.js.map +1 -0
  112. package/dist/lib/linker.d.ts +56 -0
  113. package/dist/lib/linker.d.ts.map +1 -0
  114. package/dist/lib/linker.js +185 -0
  115. package/dist/lib/linker.js.map +1 -0
  116. package/dist/lib/manifest.d.ts +73 -0
  117. package/dist/lib/manifest.d.ts.map +1 -0
  118. package/dist/lib/manifest.js +400 -0
  119. package/dist/lib/manifest.js.map +1 -0
  120. package/dist/lib/scripts.d.ts +26 -0
  121. package/dist/lib/scripts.d.ts.map +1 -0
  122. package/dist/lib/scripts.js +123 -0
  123. package/dist/lib/scripts.js.map +1 -0
  124. package/dist/lib/timing.d.ts +100 -0
  125. package/dist/lib/timing.d.ts.map +1 -0
  126. package/dist/lib/timing.js +293 -0
  127. package/dist/lib/timing.js.map +1 -0
  128. package/dist/types.d.ts +312 -0
  129. package/dist/types.d.ts.map +1 -0
  130. package/dist/types.js +2 -0
  131. package/dist/types.js.map +1 -0
  132. package/package.json +60 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/pr/create.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { createPR } from './create.js';
2
+ export { prStatus } from './status.js';
3
+ export { mergePRs } from './merge.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { createPR } from './create.js';
2
+ export { prStatus } from './status.js';
3
+ export { mergePRs } from './merge.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface MergeOptions {
2
+ method?: 'merge' | 'squash' | 'rebase';
3
+ deleteBranch?: boolean;
4
+ force?: boolean;
5
+ }
6
+ /**
7
+ * Merge all PRs for current branch
8
+ */
9
+ export declare function mergePRs(options?: MergeOptions): Promise<void>;
10
+ export {};
11
+ //# sourceMappingURL=merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/merge.ts"],"names":[],"mappings":"AAQA,UAAU,YAAY;IACpB,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4LxE"}
@@ -0,0 +1,168 @@
1
+ import chalk from 'chalk';
2
+ import ora from 'ora';
3
+ import inquirer from 'inquirer';
4
+ import { loadManifest, getAllRepoInfo, getManifestRepoInfo } from '../../lib/manifest.js';
5
+ import { pathExists, getCurrentBranch, isGitRepo } from '../../lib/git.js';
6
+ import { findPRByBranch, getLinkedPRInfo, mergePullRequest } from '../../lib/github.js';
7
+ /**
8
+ * Merge all PRs for current branch
9
+ */
10
+ export async function mergePRs(options = {}) {
11
+ const { manifest, rootDir } = await loadManifest();
12
+ const repos = getAllRepoInfo(manifest, rootDir);
13
+ // Check if any repos are cloned
14
+ const clonedRepos = [];
15
+ for (const repo of repos) {
16
+ if (await pathExists(repo.absolutePath)) {
17
+ clonedRepos.push(repo);
18
+ }
19
+ }
20
+ if (clonedRepos.length === 0) {
21
+ console.log(chalk.yellow('No repositories are cloned.'));
22
+ return;
23
+ }
24
+ const spinner = ora('Checking PR status...').start();
25
+ try {
26
+ // Find all PRs for each repo based on its own current branch
27
+ const prResults = await Promise.all(clonedRepos.map(async (repo) => {
28
+ const branch = await getCurrentBranch(repo.absolutePath);
29
+ // Skip repos on their default branch (no PR expected)
30
+ if (branch === repo.default_branch) {
31
+ return null;
32
+ }
33
+ const pr = await findPRByBranch(repo.owner, repo.repo, branch);
34
+ if (!pr) {
35
+ return null;
36
+ }
37
+ const prInfo = await getLinkedPRInfo(repo.owner, repo.repo, pr.number, repo.name);
38
+ return { ...prInfo, branch };
39
+ }));
40
+ // Check for manifest PR too
41
+ const manifestInfo = getManifestRepoInfo(manifest, rootDir);
42
+ let manifestPR = null;
43
+ if (manifestInfo && await isGitRepo(manifestInfo.absolutePath)) {
44
+ const manifestBranch = await getCurrentBranch(manifestInfo.absolutePath);
45
+ if (manifestBranch !== manifestInfo.default_branch) {
46
+ const pr = await findPRByBranch(manifestInfo.owner, manifestInfo.repo, manifestBranch);
47
+ if (pr) {
48
+ const prInfo = await getLinkedPRInfo(manifestInfo.owner, manifestInfo.repo, pr.number, manifestInfo.name);
49
+ manifestPR = { ...prInfo, branch: manifestBranch };
50
+ }
51
+ }
52
+ }
53
+ const prsToMerge = prResults.filter((pr) => pr !== null);
54
+ if (manifestPR) {
55
+ prsToMerge.push(manifestPR);
56
+ }
57
+ spinner.stop();
58
+ if (prsToMerge.length === 0) {
59
+ console.log(chalk.yellow('No open PRs found.'));
60
+ return;
61
+ }
62
+ // Determine the branch name for display
63
+ const branches = [...new Set(prsToMerge.map(pr => pr.branch))];
64
+ const branchDisplay = branches.length === 1 ? branches[0] : `${branches.length} branches`;
65
+ console.log(chalk.blue(`Merging PRs for branch: ${chalk.cyan(branchDisplay)}\n`));
66
+ // Check if all PRs are ready
67
+ const notReady = prsToMerge.filter((pr) => pr.state !== 'open' || !pr.approved || !pr.checksPass || !pr.mergeable);
68
+ if (notReady.length > 0 && !options.force) {
69
+ console.log(chalk.yellow('Some PRs are not ready to merge:\n'));
70
+ for (const pr of notReady) {
71
+ const issues = [];
72
+ if (pr.state !== 'open')
73
+ issues.push(`state: ${pr.state}`);
74
+ if (!pr.approved)
75
+ issues.push('not approved');
76
+ if (!pr.checksPass)
77
+ issues.push('checks not passing');
78
+ if (!pr.mergeable)
79
+ issues.push('not mergeable');
80
+ console.log(` ${pr.repoName} #${pr.number}: ${chalk.dim(issues.join(', '))}`);
81
+ }
82
+ console.log('');
83
+ console.log(chalk.dim('Use --force to merge anyway (not recommended).'));
84
+ return;
85
+ }
86
+ // Show what will be merged
87
+ console.log('PRs to merge:');
88
+ for (const pr of prsToMerge) {
89
+ const statusIcon = pr.approved && pr.checksPass ? chalk.green('✓') : chalk.yellow('⚠');
90
+ console.log(` ${statusIcon} ${pr.repoName} #${pr.number}`);
91
+ }
92
+ console.log('');
93
+ // Confirm unless --force
94
+ if (!options.force) {
95
+ const { confirm } = await inquirer.prompt([
96
+ {
97
+ type: 'confirm',
98
+ name: 'confirm',
99
+ message: `Merge ${prsToMerge.length} PRs?`,
100
+ default: false,
101
+ },
102
+ ]);
103
+ if (!confirm) {
104
+ console.log('Cancelled.');
105
+ return;
106
+ }
107
+ }
108
+ // Merge PRs one by one
109
+ console.log('');
110
+ const mergeOptions = {
111
+ method: options.method ?? 'merge',
112
+ deleteBranch: options.deleteBranch ?? true,
113
+ };
114
+ const results = [];
115
+ for (const pr of prsToMerge) {
116
+ const prSpinner = ora(`Merging ${pr.repoName} #${pr.number}...`).start();
117
+ try {
118
+ const success = await mergePullRequest(pr.owner, pr.repo, pr.number, mergeOptions);
119
+ if (success) {
120
+ prSpinner.succeed(`${pr.repoName} #${pr.number}: merged`);
121
+ results.push({ pr, success: true });
122
+ }
123
+ else {
124
+ prSpinner.fail(`${pr.repoName} #${pr.number}: merge failed`);
125
+ results.push({ pr, success: false, error: 'Merge API call failed' });
126
+ // Stop on first failure for all-or-nothing
127
+ if (manifest.settings.merge_strategy === 'all-or-nothing') {
128
+ console.log('');
129
+ console.log(chalk.red('Stopping due to merge failure (all-or-nothing merge strategy).'));
130
+ break;
131
+ }
132
+ }
133
+ }
134
+ catch (error) {
135
+ const errorMsg = error instanceof Error ? error.message : String(error);
136
+ prSpinner.fail(`${pr.repoName} #${pr.number}: ${errorMsg}`);
137
+ results.push({ pr, success: false, error: errorMsg });
138
+ if (manifest.settings.merge_strategy === 'all-or-nothing') {
139
+ console.log('');
140
+ console.log(chalk.red('Stopping due to merge failure (all-or-nothing merge strategy).'));
141
+ break;
142
+ }
143
+ }
144
+ }
145
+ // Summary
146
+ console.log('');
147
+ const succeeded = results.filter((r) => r.success).length;
148
+ const failed = results.filter((r) => !r.success).length;
149
+ if (failed === 0) {
150
+ console.log(chalk.green(`All ${succeeded} PRs merged successfully!`));
151
+ if (mergeOptions.deleteBranch) {
152
+ console.log(chalk.dim('\nRemote branches have been deleted.'));
153
+ console.log(chalk.dim('Switch to default branch with: gitgrip checkout main'));
154
+ }
155
+ }
156
+ else {
157
+ console.log(chalk.yellow(`Merged ${succeeded}/${prsToMerge.length} PRs. ${failed} failed.`));
158
+ for (const result of results.filter((r) => !r.success)) {
159
+ console.log(chalk.red(` ✗ ${result.pr.repoName}: ${result.error}`));
160
+ }
161
+ }
162
+ }
163
+ catch (error) {
164
+ spinner.fail('Error during merge');
165
+ console.error(chalk.red(error instanceof Error ? error.message : String(error)));
166
+ }
167
+ }
168
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../src/commands/pr/merge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ interface StatusOptions {
2
+ json?: boolean;
3
+ }
4
+ /**
5
+ * Show status of PRs for current branch
6
+ */
7
+ export declare function prStatus(options?: StatusOptions): Promise<void>;
8
+ export {};
9
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/status.ts"],"names":[],"mappings":"AAOA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyJzE"}
@@ -0,0 +1,139 @@
1
+ import chalk from 'chalk';
2
+ import ora from 'ora';
3
+ import { loadManifest, getAllRepoInfo, getManifestRepoInfo } from '../../lib/manifest.js';
4
+ import { pathExists, getCurrentBranch, isGitRepo } from '../../lib/git.js';
5
+ import { findPRByBranch, getLinkedPRInfo } from '../../lib/github.js';
6
+ /**
7
+ * Show status of PRs for current branch
8
+ */
9
+ export async function prStatus(options = {}) {
10
+ const { manifest, rootDir } = await loadManifest();
11
+ const repos = getAllRepoInfo(manifest, rootDir);
12
+ // Check if any repos are cloned
13
+ const clonedRepos = [];
14
+ for (const repo of repos) {
15
+ if (await pathExists(repo.absolutePath)) {
16
+ clonedRepos.push(repo);
17
+ }
18
+ }
19
+ if (clonedRepos.length === 0) {
20
+ console.log(chalk.yellow('No repositories are cloned.'));
21
+ return;
22
+ }
23
+ const spinner = ora('Fetching PR status...').start();
24
+ try {
25
+ // Find PRs for each repo based on its own current branch (not a single global branch)
26
+ const prStatuses = await Promise.all(clonedRepos.map(async (repo) => {
27
+ const branch = await getCurrentBranch(repo.absolutePath);
28
+ // Skip repos on their default branch (no PR expected)
29
+ if (branch === repo.default_branch) {
30
+ return null;
31
+ }
32
+ // Find PR for this repo's current branch
33
+ const pr = await findPRByBranch(repo.owner, repo.repo, branch);
34
+ if (!pr) {
35
+ return null;
36
+ }
37
+ // Get full PR info
38
+ const prInfo = await getLinkedPRInfo(repo.owner, repo.repo, pr.number, repo.name);
39
+ return { ...prInfo, branch };
40
+ }));
41
+ // Check for manifest PR too
42
+ const manifestInfo = getManifestRepoInfo(manifest, rootDir);
43
+ let manifestPR = null;
44
+ if (manifestInfo && await isGitRepo(manifestInfo.absolutePath)) {
45
+ const manifestBranch = await getCurrentBranch(manifestInfo.absolutePath);
46
+ if (manifestBranch !== manifestInfo.default_branch) {
47
+ const pr = await findPRByBranch(manifestInfo.owner, manifestInfo.repo, manifestBranch);
48
+ if (pr) {
49
+ const prInfo = await getLinkedPRInfo(manifestInfo.owner, manifestInfo.repo, pr.number, manifestInfo.name);
50
+ manifestPR = { ...prInfo, branch: manifestBranch };
51
+ }
52
+ }
53
+ }
54
+ spinner.stop();
55
+ const foundPRs = prStatuses.filter((pr) => pr !== null);
56
+ if (manifestPR) {
57
+ foundPRs.push(manifestPR);
58
+ }
59
+ if (foundPRs.length === 0) {
60
+ console.log(chalk.yellow('No open PRs found.'));
61
+ console.log(chalk.dim('\nCreate PRs with: gitgrip pr create'));
62
+ return;
63
+ }
64
+ // Determine the branch name for display (use the common branch if all same, otherwise show per-PR)
65
+ const branches = [...new Set(foundPRs.map(pr => pr.branch))];
66
+ const branchDisplay = branches.length === 1 ? branches[0] : `${branches.length} branches`;
67
+ console.log(chalk.blue(`PR Status for branch: ${chalk.cyan(branchDisplay)}\n`));
68
+ if (options.json) {
69
+ console.log(JSON.stringify(foundPRs, null, 2));
70
+ return;
71
+ }
72
+ // Display as table
73
+ console.log(chalk.dim(' Repo PR Status Approved Checks Mergeable'));
74
+ console.log(chalk.dim(' ' + '-'.repeat(76)));
75
+ for (const pr of foundPRs) {
76
+ const repoName = pr.repoName.padEnd(20);
77
+ const prNum = `#${pr.number}`.padEnd(8);
78
+ let statusIcon;
79
+ let statusText;
80
+ switch (pr.state) {
81
+ case 'open':
82
+ statusIcon = chalk.green('●');
83
+ statusText = chalk.green('open'.padEnd(10));
84
+ break;
85
+ case 'merged':
86
+ statusIcon = chalk.magenta('●');
87
+ statusText = chalk.magenta('merged'.padEnd(10));
88
+ break;
89
+ case 'closed':
90
+ statusIcon = chalk.red('●');
91
+ statusText = chalk.red('closed'.padEnd(10));
92
+ break;
93
+ }
94
+ const approved = pr.approved
95
+ ? chalk.green('✓'.padEnd(10))
96
+ : chalk.yellow('pending'.padEnd(10));
97
+ const checks = pr.checksPass
98
+ ? chalk.green('✓'.padEnd(10))
99
+ : chalk.yellow('pending'.padEnd(10));
100
+ const mergeable = pr.mergeable
101
+ ? chalk.green('✓')
102
+ : chalk.red('✗');
103
+ console.log(` ${repoName} ${prNum} ${statusText} ${approved} ${checks} ${mergeable}`);
104
+ }
105
+ // Summary
106
+ console.log('');
107
+ const allApproved = foundPRs.every((pr) => pr.approved);
108
+ const allChecksPass = foundPRs.every((pr) => pr.checksPass);
109
+ const allMergeable = foundPRs.every((pr) => pr.mergeable && pr.state === 'open');
110
+ const allOpen = foundPRs.every((pr) => pr.state === 'open');
111
+ if (allOpen && allApproved && allChecksPass && allMergeable) {
112
+ console.log(chalk.green(' ✓ All PRs are ready to merge'));
113
+ console.log(chalk.dim('\n Run `gitgrip pr merge` to merge all PRs.'));
114
+ }
115
+ else {
116
+ const issues = [];
117
+ if (!allOpen)
118
+ issues.push('some PRs are not open');
119
+ if (!allApproved)
120
+ issues.push('some PRs need approval');
121
+ if (!allChecksPass)
122
+ issues.push('some checks are pending');
123
+ if (!allMergeable)
124
+ issues.push('some PRs are not mergeable');
125
+ console.log(chalk.yellow(` ⚠ Not ready to merge: ${issues.join(', ')}`));
126
+ }
127
+ // Show links
128
+ console.log('');
129
+ console.log(chalk.dim(' Links:'));
130
+ for (const pr of foundPRs) {
131
+ console.log(chalk.dim(` ${pr.repoName}: ${pr.url}`));
132
+ }
133
+ }
134
+ catch (error) {
135
+ spinner.fail('Failed to fetch PR status');
136
+ console.error(chalk.red(error instanceof Error ? error.message : String(error)));
137
+ }
138
+ }
139
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/pr/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAOtE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,UAAyB,EAAE;IACxD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IACnD,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEhD,gCAAgC;IAChC,MAAM,WAAW,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;IAErD,IAAI,CAAC;QACH,sFAAsF;QACtF,MAAM,UAAU,GAA6C,MAAM,OAAO,CAAC,GAAG,CAC5E,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC7B,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEzD,sDAAsD;YACtD,IAAI,MAAM,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,yCAAyC;YACzC,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC/D,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mBAAmB;YACnB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAClF,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC;QAC/B,CAAC,CAAC,CACH,CAAC;QAEF,4BAA4B;QAC5B,MAAM,YAAY,GAAG,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,UAAU,GAA2C,IAAI,CAAC;QAC9D,IAAI,YAAY,IAAI,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YACzE,IAAI,cAAc,KAAK,YAAY,CAAC,cAAc,EAAE,CAAC;gBACnD,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;gBACvF,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC1G,UAAU,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;gBACrD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,EAAuC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAC7F,IAAI,UAAU,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,mGAAmG;QACnG,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,WAAW,CAAC;QAE1F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,6EAA6E,CAC9E,CACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAE9C,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAExC,IAAI,UAAkB,CAAC;YACvB,IAAI,UAAkB,CAAC;YACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC;gBACjB,KAAK,MAAM;oBACT,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC9B,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5C,MAAM;gBACR,KAAK,QAAQ;oBACX,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBAChC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;oBAChD,MAAM;gBACR,KAAK,QAAQ;oBACX,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC5B,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5C,MAAM;YACV,CAAC;YAED,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ;gBAC1B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAEvC,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU;gBAC1B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAEvC,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS;gBAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;gBAClB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEnB,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,KAAK,KAAK,KAAK,UAAU,KAAK,QAAQ,KAAK,MAAM,KAAK,SAAS,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,UAAU;QACV,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;QAE5D,IAAI,OAAO,IAAI,WAAW,IAAI,aAAa,IAAI,YAAY,EAAE,CAAC;YAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxD,IAAI,CAAC,aAAa;gBAAE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC3D,IAAI,CAAC,YAAY;gBAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2BAA2B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,aAAa;QACb,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACnC,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ interface PushOptions {
2
+ setUpstream?: boolean;
3
+ force?: boolean;
4
+ }
5
+ /**
6
+ * Push current branch to remote across all repositories
7
+ */
8
+ export declare function push(options?: PushOptions): Promise<void>;
9
+ export {};
10
+ //# sourceMappingURL=push.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AAMA,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAsCD;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+EnE"}
@@ -0,0 +1,101 @@
1
+ import chalk from 'chalk';
2
+ import ora from 'ora';
3
+ import { loadManifest, getAllRepoInfo, getManifestRepoInfo } from '../lib/manifest.js';
4
+ import { pathExists, getCurrentBranch, getGitInstance, isGitRepo } from '../lib/git.js';
5
+ /**
6
+ * Check if current branch has commits ahead of remote
7
+ */
8
+ async function hasCommitsAheadOfRemote(repoPath) {
9
+ const git = getGitInstance(repoPath);
10
+ try {
11
+ const status = await git.status();
12
+ return status.ahead > 0;
13
+ }
14
+ catch {
15
+ // If we can't determine, assume we might need to push
16
+ return true;
17
+ }
18
+ }
19
+ /**
20
+ * Check if branch has an upstream configured
21
+ */
22
+ async function hasUpstream(repoPath) {
23
+ const git = getGitInstance(repoPath);
24
+ try {
25
+ const branch = await getCurrentBranch(repoPath);
26
+ const result = await git.raw(['config', '--get', `branch.${branch}.remote`]);
27
+ return result.trim().length > 0;
28
+ }
29
+ catch {
30
+ return false;
31
+ }
32
+ }
33
+ /**
34
+ * Push current branch to remote across all repositories
35
+ */
36
+ export async function push(options = {}) {
37
+ const { setUpstream = false, force = false } = options;
38
+ const { manifest, rootDir } = await loadManifest();
39
+ let repos = getAllRepoInfo(manifest, rootDir);
40
+ // Include manifest repo if it exists
41
+ const manifestInfo = getManifestRepoInfo(manifest, rootDir);
42
+ if (manifestInfo && await isGitRepo(manifestInfo.absolutePath)) {
43
+ repos = [...repos, manifestInfo];
44
+ }
45
+ const results = [];
46
+ let hasCommits = false;
47
+ console.log(chalk.blue('Checking repositories for commits to push...\n'));
48
+ for (const repo of repos) {
49
+ const exists = await pathExists(repo.absolutePath);
50
+ if (!exists) {
51
+ continue;
52
+ }
53
+ const branch = await getCurrentBranch(repo.absolutePath);
54
+ const hasUpstreamConfigured = await hasUpstream(repo.absolutePath);
55
+ // Check if there are commits to push
56
+ const needsPush = await hasCommitsAheadOfRemote(repo.absolutePath);
57
+ // Also push if no upstream and --set-upstream is specified
58
+ const needsUpstreamPush = !hasUpstreamConfigured && setUpstream;
59
+ if (!needsPush && !needsUpstreamPush) {
60
+ continue;
61
+ }
62
+ hasCommits = true;
63
+ const spinner = ora(`Pushing ${repo.name} (${branch})...`).start();
64
+ try {
65
+ const git = getGitInstance(repo.absolutePath);
66
+ const pushOptions = [];
67
+ if (setUpstream || !hasUpstreamConfigured) {
68
+ pushOptions.push('-u', 'origin', branch);
69
+ }
70
+ else {
71
+ pushOptions.push('origin', branch);
72
+ }
73
+ if (force) {
74
+ pushOptions.unshift('--force');
75
+ }
76
+ await git.push(pushOptions);
77
+ spinner.succeed(`${repo.name} (${chalk.cyan(branch)}): pushed`);
78
+ results.push({ repo, success: true, pushed: true, branch });
79
+ }
80
+ catch (error) {
81
+ const errorMsg = error instanceof Error ? error.message : String(error);
82
+ spinner.fail(`${repo.name}: ${errorMsg}`);
83
+ results.push({ repo, success: false, pushed: false, branch, error: errorMsg });
84
+ }
85
+ }
86
+ if (!hasCommits) {
87
+ console.log(chalk.yellow('No commits to push in any repository.'));
88
+ return;
89
+ }
90
+ // Summary
91
+ console.log('');
92
+ const pushed = results.filter((r) => r.pushed).length;
93
+ const failed = results.filter((r) => !r.success).length;
94
+ if (failed === 0) {
95
+ console.log(chalk.green(`Pushed ${pushed} repository(s).`));
96
+ }
97
+ else {
98
+ console.log(chalk.yellow(`Pushed ${pushed} repository(s). ${failed} failed.`));
99
+ }
100
+ }
101
+ //# sourceMappingURL=push.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface RunOptions {
2
+ list?: boolean;
3
+ }
4
+ /**
5
+ * Main run command handler
6
+ */
7
+ export declare function run(scriptName?: string, args?: string[], options?: RunOptions): Promise<void>;
8
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAuED;;GAEG;AACH,wBAAsB,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAM3G"}
@@ -0,0 +1,75 @@
1
+ import chalk from 'chalk';
2
+ import { loadManifest } from '../lib/manifest.js';
3
+ import { runScript, listScripts } from '../lib/scripts.js';
4
+ /**
5
+ * Show available scripts
6
+ */
7
+ async function showScripts() {
8
+ const { manifest } = await loadManifest();
9
+ const scripts = listScripts(manifest);
10
+ if (scripts.length === 0) {
11
+ console.log(chalk.dim('No scripts defined in manifest.'));
12
+ console.log(chalk.dim('\nAdd scripts to your manifest.yaml:'));
13
+ console.log(chalk.dim(`
14
+ workspace:
15
+ scripts:
16
+ build:
17
+ description: "Build all packages"
18
+ command: "pnpm -r build"
19
+ `));
20
+ return;
21
+ }
22
+ console.log(chalk.blue('Available Scripts\n'));
23
+ // Find longest name for alignment
24
+ const maxNameLength = Math.max(...scripts.map((s) => s.name.length));
25
+ for (const script of scripts) {
26
+ const paddedName = script.name.padEnd(maxNameLength);
27
+ const desc = script.description ?? chalk.dim('(no description)');
28
+ console.log(` ${chalk.cyan(paddedName)} ${desc}`);
29
+ }
30
+ console.log('');
31
+ console.log(chalk.dim(`Run a script with: cr run <name>`));
32
+ console.log(chalk.dim(`Pass extra args with: cr run <name> -- <args>`));
33
+ }
34
+ /**
35
+ * Run a named script
36
+ */
37
+ async function executeScript(scriptName, args) {
38
+ const { manifest, rootDir } = await loadManifest();
39
+ console.log(chalk.blue(`Running script: ${scriptName}\n`));
40
+ const result = await runScript(scriptName, manifest, rootDir, args);
41
+ console.log('');
42
+ if (result.success) {
43
+ if (result.steps.length > 1) {
44
+ console.log(chalk.green(`\u2713 Script '${scriptName}' completed (${result.steps.length} steps)`));
45
+ }
46
+ else {
47
+ console.log(chalk.green(`\u2713 Script '${scriptName}' completed`));
48
+ }
49
+ }
50
+ else {
51
+ const failedStep = result.steps.find((s) => !s.success);
52
+ if (failedStep) {
53
+ console.log(chalk.red(`\u2717 Script '${scriptName}' failed at step '${failedStep.name}'`));
54
+ if (failedStep.error) {
55
+ console.log(chalk.dim(` Error: ${failedStep.error}`));
56
+ }
57
+ if (failedStep.exitCode !== null) {
58
+ console.log(chalk.dim(` Exit code: ${failedStep.exitCode}`));
59
+ }
60
+ }
61
+ process.exit(1);
62
+ }
63
+ }
64
+ /**
65
+ * Main run command handler
66
+ */
67
+ export async function run(scriptName, args = [], options = {}) {
68
+ if (options.list || !scriptName) {
69
+ await showScripts();
70
+ }
71
+ else {
72
+ await executeScript(scriptName, args);
73
+ }
74
+ }
75
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ interface StatusOptions {
2
+ json?: boolean;
3
+ }
4
+ /**
5
+ * Show status of all repositories
6
+ */
7
+ export declare function status(options?: StatusOptions): Promise<void>;
8
+ export {};
9
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAOA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA+CD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwKvE"}