@bretwardjames/ghp-cli 0.5.1 → 0.7.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 (151) hide show
  1. package/README.md +52 -8
  2. package/dist/commands/add-issue.d.ts.map +1 -1
  3. package/dist/commands/add-issue.js +16 -12
  4. package/dist/commands/add-issue.js.map +1 -1
  5. package/dist/commands/add-issue.test.d.ts +5 -0
  6. package/dist/commands/add-issue.test.d.ts.map +1 -0
  7. package/dist/commands/add-issue.test.js +237 -0
  8. package/dist/commands/add-issue.test.js.map +1 -0
  9. package/dist/commands/agents.d.ts.map +1 -1
  10. package/dist/commands/agents.js +10 -6
  11. package/dist/commands/agents.js.map +1 -1
  12. package/dist/commands/assign.d.ts.map +1 -1
  13. package/dist/commands/assign.js +5 -4
  14. package/dist/commands/assign.js.map +1 -1
  15. package/dist/commands/auth.d.ts.map +1 -1
  16. package/dist/commands/auth.js +2 -1
  17. package/dist/commands/auth.js.map +1 -1
  18. package/dist/commands/comment.d.ts.map +1 -1
  19. package/dist/commands/comment.js +6 -5
  20. package/dist/commands/comment.js.map +1 -1
  21. package/dist/commands/config.d.ts.map +1 -1
  22. package/dist/commands/config.js +11 -5
  23. package/dist/commands/config.js.map +1 -1
  24. package/dist/commands/dashboard-hooks.d.ts.map +1 -1
  25. package/dist/commands/dashboard-hooks.js +9 -8
  26. package/dist/commands/dashboard-hooks.js.map +1 -1
  27. package/dist/commands/dashboard.d.ts.map +1 -1
  28. package/dist/commands/dashboard.js +6 -2
  29. package/dist/commands/dashboard.js.map +1 -1
  30. package/dist/commands/done.d.ts.map +1 -1
  31. package/dist/commands/done.js +32 -11
  32. package/dist/commands/done.js.map +1 -1
  33. package/dist/commands/edit.d.ts.map +1 -1
  34. package/dist/commands/edit.js +7 -6
  35. package/dist/commands/edit.js.map +1 -1
  36. package/dist/commands/event-hooks.d.ts +2 -0
  37. package/dist/commands/event-hooks.d.ts.map +1 -1
  38. package/dist/commands/event-hooks.js +43 -12
  39. package/dist/commands/event-hooks.js.map +1 -1
  40. package/dist/commands/install-commands.d.ts.map +1 -1
  41. package/dist/commands/install-commands.js +2 -1
  42. package/dist/commands/install-commands.js.map +1 -1
  43. package/dist/commands/label.d.ts.map +1 -1
  44. package/dist/commands/label.js +6 -5
  45. package/dist/commands/label.js.map +1 -1
  46. package/dist/commands/link-branch.d.ts.map +1 -1
  47. package/dist/commands/link-branch.js +7 -6
  48. package/dist/commands/link-branch.js.map +1 -1
  49. package/dist/commands/mcp.d.ts.map +1 -1
  50. package/dist/commands/mcp.js +4 -3
  51. package/dist/commands/mcp.js.map +1 -1
  52. package/dist/commands/merge.d.ts +13 -0
  53. package/dist/commands/merge.d.ts.map +1 -0
  54. package/dist/commands/merge.js +229 -0
  55. package/dist/commands/merge.js.map +1 -0
  56. package/dist/commands/move.d.ts.map +1 -1
  57. package/dist/commands/move.js +8 -7
  58. package/dist/commands/move.js.map +1 -1
  59. package/dist/commands/open.d.ts.map +1 -1
  60. package/dist/commands/open.js +17 -9
  61. package/dist/commands/open.js.map +1 -1
  62. package/dist/commands/plan-epic.d.ts.map +1 -1
  63. package/dist/commands/plan-epic.js +9 -8
  64. package/dist/commands/plan-epic.js.map +1 -1
  65. package/dist/commands/plan.d.ts +17 -1
  66. package/dist/commands/plan.d.ts.map +1 -1
  67. package/dist/commands/plan.js +27 -15
  68. package/dist/commands/plan.js.map +1 -1
  69. package/dist/commands/pr.d.ts +2 -0
  70. package/dist/commands/pr.d.ts.map +1 -1
  71. package/dist/commands/pr.js +80 -30
  72. package/dist/commands/pr.js.map +1 -1
  73. package/dist/commands/progress.d.ts.map +1 -1
  74. package/dist/commands/progress.js +5 -4
  75. package/dist/commands/progress.js.map +1 -1
  76. package/dist/commands/set-field.d.ts.map +1 -1
  77. package/dist/commands/set-field.js +13 -12
  78. package/dist/commands/set-field.js.map +1 -1
  79. package/dist/commands/set-parent.d.ts.map +1 -1
  80. package/dist/commands/set-parent.js +10 -9
  81. package/dist/commands/set-parent.js.map +1 -1
  82. package/dist/commands/slice.d.ts.map +1 -1
  83. package/dist/commands/slice.js +3 -2
  84. package/dist/commands/slice.js.map +1 -1
  85. package/dist/commands/start.d.ts +2 -5
  86. package/dist/commands/start.d.ts.map +1 -1
  87. package/dist/commands/start.js +76 -47
  88. package/dist/commands/start.js.map +1 -1
  89. package/dist/commands/start.test.d.ts +5 -0
  90. package/dist/commands/start.test.d.ts.map +1 -0
  91. package/dist/commands/start.test.js +296 -0
  92. package/dist/commands/start.test.js.map +1 -0
  93. package/dist/commands/stop.d.ts.map +1 -1
  94. package/dist/commands/stop.js +30 -8
  95. package/dist/commands/stop.js.map +1 -1
  96. package/dist/commands/switch.d.ts.map +1 -1
  97. package/dist/commands/switch.js +11 -7
  98. package/dist/commands/switch.js.map +1 -1
  99. package/dist/commands/sync.d.ts.map +1 -1
  100. package/dist/commands/sync.js +3 -2
  101. package/dist/commands/sync.js.map +1 -1
  102. package/dist/commands/unlink-branch.d.ts.map +1 -1
  103. package/dist/commands/unlink-branch.js +5 -4
  104. package/dist/commands/unlink-branch.js.map +1 -1
  105. package/dist/commands/update.d.ts.map +1 -1
  106. package/dist/commands/update.js +25 -9
  107. package/dist/commands/update.js.map +1 -1
  108. package/dist/commands/work.d.ts.map +1 -1
  109. package/dist/commands/work.js +25 -10
  110. package/dist/commands/work.js.map +1 -1
  111. package/dist/commands/worktree.d.ts.map +1 -1
  112. package/dist/commands/worktree.js +55 -54
  113. package/dist/commands/worktree.js.map +1 -1
  114. package/dist/config.d.ts +34 -0
  115. package/dist/config.d.ts.map +1 -1
  116. package/dist/config.js +38 -11
  117. package/dist/config.js.map +1 -1
  118. package/dist/config.test.d.ts +5 -0
  119. package/dist/config.test.d.ts.map +1 -0
  120. package/dist/config.test.js +221 -0
  121. package/dist/config.test.js.map +1 -0
  122. package/dist/exit.d.ts +49 -0
  123. package/dist/exit.d.ts.map +1 -0
  124. package/dist/exit.js +142 -0
  125. package/dist/exit.js.map +1 -0
  126. package/dist/exit.test.d.ts +5 -0
  127. package/dist/exit.test.d.ts.map +1 -0
  128. package/dist/exit.test.js +241 -0
  129. package/dist/exit.test.js.map +1 -0
  130. package/dist/git-utils.d.ts +1 -1
  131. package/dist/git-utils.d.ts.map +1 -1
  132. package/dist/git-utils.js +3 -1
  133. package/dist/git-utils.js.map +1 -1
  134. package/dist/github-api.d.ts.map +1 -1
  135. package/dist/github-api.js +2 -1
  136. package/dist/github-api.js.map +1 -1
  137. package/dist/index.js +28 -14
  138. package/dist/index.js.map +1 -1
  139. package/dist/validation.d.ts +94 -0
  140. package/dist/validation.d.ts.map +1 -0
  141. package/dist/validation.js +169 -0
  142. package/dist/validation.js.map +1 -0
  143. package/dist/validation.test.d.ts +5 -0
  144. package/dist/validation.test.d.ts.map +1 -0
  145. package/dist/validation.test.js +230 -0
  146. package/dist/validation.test.js.map +1 -0
  147. package/dist/worktree-utils.d.ts.map +1 -1
  148. package/dist/worktree-utils.js +6 -2
  149. package/dist/worktree-utils.js.map +1 -1
  150. package/package.json +7 -4
  151. package/slash-commands/claude/create-pr.md +25 -1
@@ -0,0 +1,241 @@
1
+ /**
2
+ * Tests for the exit utility module.
3
+ */
4
+ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
5
+ import { registerCleanupHandler, exit, isProcessExiting, ExitPendingError, _resetForTesting, } from './exit.js';
6
+ // Mock process.exit to not actually exit
7
+ vi.spyOn(process, 'exit').mockImplementation((() => undefined));
8
+ // Mock console.error to capture warnings
9
+ const mockConsoleError = vi.spyOn(console, 'error').mockImplementation(() => { });
10
+ describe('exit utility', () => {
11
+ beforeEach(() => {
12
+ vi.clearAllMocks();
13
+ _resetForTesting();
14
+ });
15
+ afterEach(() => {
16
+ _resetForTesting();
17
+ });
18
+ describe('registerCleanupHandler', () => {
19
+ it('should register a cleanup handler', () => {
20
+ const handler = vi.fn();
21
+ const unregister = registerCleanupHandler(handler);
22
+ expect(typeof unregister).toBe('function');
23
+ });
24
+ it('should return a function to unregister the handler', () => {
25
+ const handler = vi.fn();
26
+ const unregister = registerCleanupHandler(handler);
27
+ // Unregister should not throw
28
+ expect(() => unregister()).not.toThrow();
29
+ });
30
+ it('should allow unregistering multiple times (idempotent)', () => {
31
+ const handler = vi.fn();
32
+ const unregister = registerCleanupHandler(handler);
33
+ unregister();
34
+ expect(() => unregister()).not.toThrow();
35
+ });
36
+ it('should throw if called while process is exiting', async () => {
37
+ // Start exit process
38
+ try {
39
+ exit(0);
40
+ }
41
+ catch {
42
+ // Expected
43
+ }
44
+ // Wait for cleanup to start
45
+ await new Promise(resolve => setTimeout(resolve, 10));
46
+ // Should throw when trying to register during exit
47
+ expect(() => registerCleanupHandler(() => { })).toThrow('Cannot register cleanup handler: process is exiting');
48
+ });
49
+ });
50
+ describe('exit', () => {
51
+ it('should throw ExitPendingError', () => {
52
+ expect(() => exit(1)).toThrow(ExitPendingError);
53
+ });
54
+ it('should throw with correct exit code in error', () => {
55
+ try {
56
+ exit(1);
57
+ }
58
+ catch (error) {
59
+ expect(error).toBeInstanceOf(ExitPendingError);
60
+ expect(error.exitCode).toBe(1);
61
+ }
62
+ });
63
+ it('should set isProcessExiting to true', () => {
64
+ expect(isProcessExiting()).toBe(false);
65
+ try {
66
+ exit(0);
67
+ }
68
+ catch {
69
+ // Expected
70
+ }
71
+ expect(isProcessExiting()).toBe(true);
72
+ });
73
+ it('should call process.exit with the correct code', async () => {
74
+ try {
75
+ exit(1);
76
+ }
77
+ catch {
78
+ // Expected
79
+ }
80
+ // Wait for cleanup to complete
81
+ await new Promise(resolve => setTimeout(resolve, 50));
82
+ expect(process.exit).toHaveBeenCalledWith(1);
83
+ });
84
+ it('should run cleanup handlers before exiting', async () => {
85
+ const handler = vi.fn();
86
+ registerCleanupHandler(handler);
87
+ try {
88
+ exit(0);
89
+ }
90
+ catch {
91
+ // Expected
92
+ }
93
+ // Wait for cleanup to run
94
+ await new Promise(resolve => setTimeout(resolve, 50));
95
+ expect(handler).toHaveBeenCalled();
96
+ expect(process.exit).toHaveBeenCalledWith(0);
97
+ });
98
+ it('should run cleanup handlers in LIFO order', async () => {
99
+ const order = [];
100
+ registerCleanupHandler(() => { order.push(1); });
101
+ registerCleanupHandler(() => { order.push(2); });
102
+ registerCleanupHandler(() => { order.push(3); });
103
+ try {
104
+ exit(0);
105
+ }
106
+ catch {
107
+ // Expected
108
+ }
109
+ // Wait for cleanup to run
110
+ await new Promise(resolve => setTimeout(resolve, 50));
111
+ expect(order).toEqual([3, 2, 1]);
112
+ });
113
+ it('should handle async cleanup handlers', async () => {
114
+ const handler = vi.fn(async () => {
115
+ await new Promise(resolve => setTimeout(resolve, 10));
116
+ });
117
+ registerCleanupHandler(handler);
118
+ try {
119
+ exit(0);
120
+ }
121
+ catch {
122
+ // Expected
123
+ }
124
+ // Wait for cleanup to run
125
+ await new Promise(resolve => setTimeout(resolve, 100));
126
+ expect(handler).toHaveBeenCalled();
127
+ expect(process.exit).toHaveBeenCalledWith(0);
128
+ });
129
+ it('should continue with other handlers if one throws', async () => {
130
+ const handler1 = vi.fn();
131
+ const handler2 = vi.fn(() => { throw new Error('Handler error'); });
132
+ const handler3 = vi.fn();
133
+ registerCleanupHandler(handler1);
134
+ registerCleanupHandler(handler2);
135
+ registerCleanupHandler(handler3);
136
+ try {
137
+ exit(0);
138
+ }
139
+ catch {
140
+ // Expected
141
+ }
142
+ // Wait for cleanup to run
143
+ await new Promise(resolve => setTimeout(resolve, 50));
144
+ // All handlers should be called (LIFO order: 3, 2, 1)
145
+ expect(handler3).toHaveBeenCalled();
146
+ expect(handler2).toHaveBeenCalled();
147
+ expect(handler1).toHaveBeenCalled();
148
+ // Should log the error
149
+ expect(mockConsoleError).toHaveBeenCalled();
150
+ });
151
+ it('should log warning on recursive exit call', async () => {
152
+ // First exit call
153
+ try {
154
+ exit(0);
155
+ }
156
+ catch {
157
+ // Expected
158
+ }
159
+ // Second exit call (recursive)
160
+ try {
161
+ exit(1);
162
+ }
163
+ catch {
164
+ // Expected
165
+ }
166
+ expect(mockConsoleError).toHaveBeenCalledWith(expect.anything(), 'Recursive exit() call detected - exiting immediately', expect.anything());
167
+ });
168
+ });
169
+ describe('ExitPendingError', () => {
170
+ it('should have correct name', () => {
171
+ const error = new ExitPendingError(1);
172
+ expect(error.name).toBe('ExitPendingError');
173
+ });
174
+ it('should have correct message', () => {
175
+ const error = new ExitPendingError(1);
176
+ expect(error.message).toBe('Process exit pending');
177
+ });
178
+ it('should store exit code', () => {
179
+ const error0 = new ExitPendingError(0);
180
+ const error1 = new ExitPendingError(1);
181
+ expect(error0.exitCode).toBe(0);
182
+ expect(error1.exitCode).toBe(1);
183
+ });
184
+ it('should be instanceof Error', () => {
185
+ const error = new ExitPendingError(1);
186
+ expect(error).toBeInstanceOf(Error);
187
+ });
188
+ });
189
+ describe('isProcessExiting', () => {
190
+ it('should return false initially', () => {
191
+ expect(isProcessExiting()).toBe(false);
192
+ });
193
+ it('should return true after exit is called', () => {
194
+ try {
195
+ exit(0);
196
+ }
197
+ catch {
198
+ // Expected
199
+ }
200
+ expect(isProcessExiting()).toBe(true);
201
+ });
202
+ });
203
+ describe('cleanup timeout', () => {
204
+ it('should timeout slow handlers and log warning', async () => {
205
+ // Register a handler that takes longer than the timeout
206
+ const slowHandler = vi.fn(async () => {
207
+ await new Promise(resolve => setTimeout(resolve, 10000)); // 10 seconds
208
+ });
209
+ registerCleanupHandler(slowHandler);
210
+ try {
211
+ exit(0);
212
+ }
213
+ catch {
214
+ // Expected
215
+ }
216
+ // Wait for timeout (default is 5 seconds, but we'll wait a bit more)
217
+ // In tests, we can't easily test the full timeout, so we verify the mechanism exists
218
+ await new Promise(resolve => setTimeout(resolve, 100));
219
+ // The handler should have been called
220
+ expect(slowHandler).toHaveBeenCalled();
221
+ });
222
+ });
223
+ describe('unregistered handlers', () => {
224
+ it('should not run unregistered handlers', async () => {
225
+ const handler = vi.fn();
226
+ const unregister = registerCleanupHandler(handler);
227
+ // Unregister before exit
228
+ unregister();
229
+ try {
230
+ exit(0);
231
+ }
232
+ catch {
233
+ // Expected
234
+ }
235
+ // Wait for cleanup to run
236
+ await new Promise(resolve => setTimeout(resolve, 50));
237
+ expect(handler).not.toHaveBeenCalled();
238
+ });
239
+ });
240
+ });
241
+ //# sourceMappingURL=exit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exit.test.js","sourceRoot":"","sources":["../src/exit.test.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,6 @@
4
4
  * For CLI usage, all functions use process.cwd() by default.
5
5
  * The core library accepts an optional { cwd } parameter for IDE integrations.
6
6
  */
7
- export { detectRepository, getCurrentBranch, hasUncommittedChanges, branchExists, createBranch, checkoutBranch, pullLatest, fetchOrigin, getCommitsBehind, getCommitsAhead, isGitRepository, getRepositoryRoot, sanitizeForBranchName, generateBranchName, getDefaultBranch, getLocalBranches, getRemoteBranches, getAllBranches, parseGitHubUrl, createWorktree, removeWorktree, listWorktrees, getWorktreeForBranch, worktreeExists, generateWorktreePath, } from '@bretwardjames/ghp-core';
7
+ export { detectRepository, getCurrentBranch, hasUncommittedChanges, branchExists, createBranch, checkoutBranch, pullLatest, fetchOrigin, getCommitsBehind, getCommitsAhead, isGitRepository, getRepositoryRoot, sanitizeForBranchName, generateBranchName, getDefaultBranch, getLocalBranches, getRemoteBranches, getAllBranches, parseGitHubUrl, createWorktree, removeWorktree, listWorktrees, getWorktreeForBranch, worktreeExists, generateWorktreePath, GitError, } from '@bretwardjames/ghp-core';
8
8
  export type { RepoInfo, GitOptions, WorktreeInfo } from '@bretwardjames/ghp-core';
9
9
  //# sourceMappingURL=git-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-utils.d.ts","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc,EAEd,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACvB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"git-utils.d.ts","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc,EAEd,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EAEpB,QAAQ,GACX,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/git-utils.js CHANGED
@@ -8,5 +8,7 @@
8
8
  // These all use process.cwd() by default, which is correct for CLI usage
9
9
  export { detectRepository, getCurrentBranch, hasUncommittedChanges, branchExists, createBranch, checkoutBranch, pullLatest, fetchOrigin, getCommitsBehind, getCommitsAhead, isGitRepository, getRepositoryRoot, sanitizeForBranchName, generateBranchName, getDefaultBranch, getLocalBranches, getRemoteBranches, getAllBranches, parseGitHubUrl,
10
10
  // Worktree operations
11
- createWorktree, removeWorktree, listWorktrees, getWorktreeForBranch, worktreeExists, generateWorktreePath, } from '@bretwardjames/ghp-core';
11
+ createWorktree, removeWorktree, listWorktrees, getWorktreeForBranch, worktreeExists, generateWorktreePath,
12
+ // Error class for handling git failures
13
+ GitError, } from '@bretwardjames/ghp-core';
12
14
  //# sourceMappingURL=git-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-utils.js","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wCAAwC;AACxC,yEAAyE;AACzE,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc;AACd,sBAAsB;AACtB,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACvB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"git-utils.js","sourceRoot":"","sources":["../src/git-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wCAAwC;AACxC,yEAAyE;AACzE,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc;AACd,sBAAsB;AACtB,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,oBAAoB;AACpB,wCAAwC;AACxC,QAAQ,GACX,MAAM,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"github-api.d.ts","sourceRoot":"","sources":["../src/github-api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EACH,SAAS,IAAI,aAAa,EAG7B,MAAM,yBAAyB,CAAC;AAgDjC;;GAEG;AACH,cAAM,YAAa,SAAQ,aAAa;;CAOvC;AAGD,YAAY,EACR,QAAQ,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,GACrB,MAAM,yBAAyB,CAAC;AAGjC,eAAO,MAAM,GAAG,cAAqB,CAAC;AAGtC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"github-api.d.ts","sourceRoot":"","sources":["../src/github-api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EACH,SAAS,IAAI,aAAa,EAG7B,MAAM,yBAAyB,CAAC;AAiDjC;;GAEG;AACH,cAAM,YAAa,SAAQ,aAAa;;CAOvC;AAGD,YAAY,EACR,QAAQ,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,GACrB,MAAM,yBAAyB,CAAC;AAGjC,eAAO,MAAM,GAAG,cAAqB,CAAC;AAGtC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC"}
@@ -10,6 +10,7 @@ import { exec } from 'child_process';
10
10
  import { promisify } from 'util';
11
11
  import chalk from 'chalk';
12
12
  import { GitHubAPI as CoreGitHubAPI, } from '@bretwardjames/ghp-core';
13
+ import { exit } from './exit.js';
13
14
  const execAsync = promisify(exec);
14
15
  /**
15
16
  * CLI token provider that gets tokens from environment or gh CLI
@@ -53,7 +54,7 @@ function handleAuthError(error) {
53
54
  else {
54
55
  console.error(chalk.red('\nError:'), error.message);
55
56
  }
56
- process.exit(1);
57
+ exit(1);
57
58
  }
58
59
  /**
59
60
  * Extended GitHubAPI class for CLI with pre-configured token provider
@@ -1 +1 @@
1
- {"version":3,"file":"github-api.js","sourceRoot":"","sources":["../src/github-api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,SAAS,IAAI,aAAa,GAG7B,MAAM,yBAAyB,CAAC;AAEjC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC;;GAEG;AACH,MAAM,gBAAgB,GAAkB;IACpC,KAAK,CAAC,QAAQ;QACV,kCAAkC;QAClC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,CAAC;QAED,aAAa;QACb,IAAI,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;CACJ,CAAC;AAEF;;GAEG;AACH,SAAS,eAAe,CAAC,KAAgB;IACrC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,+CAA+C,CAAC,CAAC;QACtF,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1G,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,oDAAoD,CAAC,CAAC;QAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,YAAa,SAAQ,aAAa;IACpC;QACI,KAAK,CAAC;YACF,aAAa,EAAE,gBAAgB;YAC/B,WAAW,EAAE,eAAe;SAC/B,CAAC,CAAC;IACP,CAAC;CACJ;AAcD,mCAAmC;AACnC,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;AAEtC,oCAAoC;AACpC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"github-api.js","sourceRoot":"","sources":["../src/github-api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,SAAS,IAAI,aAAa,GAG7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC;;GAEG;AACH,MAAM,gBAAgB,GAAkB;IACpC,KAAK,CAAC,QAAQ;QACV,kCAAkC;QAClC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,CAAC;QAED,aAAa;QACb,IAAI,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;CACJ,CAAC;AAEF;;GAEG;AACH,SAAS,eAAe,CAAC,KAAgB;IACrC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,+CAA+C,CAAC,CAAC;QACtF,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1G,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,oDAAoD,CAAC,CAAC;QAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,YAAa,SAAQ,aAAa;IACpC;QACI,KAAK,CAAC;YACF,aAAa,EAAE,gBAAgB;YAC/B,WAAW,EAAE,eAAe;SAC/B,CAAC,CAAC;IACP,CAAC;CACJ;AAcD,mCAAmC;AACnC,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;AAEtC,oCAAoC;AACpC,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ import { switchCommand } from './commands/switch.js';
14
14
  import { linkBranchCommand } from './commands/link-branch.js';
15
15
  import { unlinkBranchCommand } from './commands/unlink-branch.js';
16
16
  import { prCommand } from './commands/pr.js';
17
+ import { mergeCommand } from './commands/merge.js';
17
18
  import { assignCommand } from './commands/assign.js';
18
19
  import { labelCommand } from './commands/label.js';
19
20
  import { authCommand } from './commands/auth.js';
@@ -53,7 +54,7 @@ program
53
54
  .description('View or set configuration (supports dotted paths like mcp.tools.workflows)')
54
55
  .argument('[key]', 'Config key or dotted path to get/set (e.g., mcp.tools.workflows)')
55
56
  .argument('[value]', 'Value to set')
56
- .option('-s, --show', 'Show config (use with -w/-u to filter by scope, add key for section)')
57
+ .option('--show', 'Show config (use with -w/-u to filter by scope, add key for section)')
57
58
  .option('-e, --edit', 'Open config file in editor (explicit)')
58
59
  .option('-w, --workspace', 'Target workspace config (.ghp/config.json)')
59
60
  .option('-u, --user', 'Target user config (~/.config/ghp-cli/config.json)')
@@ -82,7 +83,7 @@ program
82
83
  .option('-s, --status <status>', 'Filter by status')
83
84
  .option('--hide-done', 'Hide completed items')
84
85
  .option('-l, --list', 'Output as simple list (one item per line, for pickers)')
85
- .option('-f, --flat', 'Output as flat table instead of grouped by status')
86
+ .option('--flat', 'Output as flat table instead of grouped by status')
86
87
  .option('-g, --group <field>', 'Group items by field (status, type, assignee, priority, size, labels)')
87
88
  .option('--sort <fields>', 'Sort by fields (comma-separated, prefix with - for ascending)')
88
89
  .option('--slice <field=value>', 'Filter by field (repeatable)', (val, acc) => { acc.push(val); return acc; }, [])
@@ -96,7 +97,7 @@ program
96
97
  .option('-p, --project <project>', 'Filter by project name')
97
98
  .option('-s, --status <status>', 'Show only items in this status (list view)')
98
99
  .option('-a, --all', 'Show all items in table view (overrides board view)')
99
- .option('-m, --mine', 'Show only items assigned to me')
100
+ .option('--mine', 'Show only items assigned to me')
100
101
  .option('-u, --unassigned', 'Show only unassigned items')
101
102
  .option('-l, --list', 'Output as table view')
102
103
  .option('-g, --group <field>', 'Group items by field (status, type, assignee, priority, size, labels)')
@@ -111,7 +112,7 @@ program
111
112
  .alias('pg')
112
113
  .description('Show feature progress grouped by epic (parent issues with sub-issues)')
113
114
  .option('-p, --project <project>', 'Filter by project name')
114
- .option('-t, --type <type>', 'Filter parent issues by type (e.g., Epic)')
115
+ .option('--type <type>', 'Filter parent issues by type (e.g., Epic)')
115
116
  .option('-a, --all', 'Show all sub-issues (default: collapse if >10)')
116
117
  .action(progressCommand);
117
118
  // Dashboard with hooks subcommands
@@ -175,10 +176,12 @@ eventHooksCmd
175
176
  eventHooksCmd
176
177
  .command('add <name>')
177
178
  .description('Add a new event hook')
178
- .option('-e, --event <event>', 'Event to trigger on (issue-created, issue-started, worktree-created, pr-created, pr-merged)')
179
+ .option('-e, --event <event>', 'Event to trigger on (issue-created, issue-started, pre-pr, pr-creating, pr-created, pr-merged, worktree-created, worktree-removed)')
179
180
  .option('-c, --command <cmd>', 'Shell command to execute (supports ${var} templates)')
180
181
  .option('-d, --display-name <name>', 'Human-readable display name')
181
182
  .option('-t, --timeout <ms>', 'Timeout in milliseconds (default: 30000)')
183
+ .option('-m, --mode <mode>', 'Execution mode: fire-and-forget, blocking, or interactive (default: fire-and-forget)')
184
+ .option('--continue-prompt <text>', 'Custom prompt text for interactive mode (default: "Continue?")')
182
185
  .action(eventHooksAddCommand);
183
186
  eventHooksCmd
184
187
  .command('remove <name>')
@@ -267,9 +270,20 @@ program
267
270
  .command('pr [issue]')
268
271
  .description('Create or view PR for an issue')
269
272
  .option('--create', 'Create a new PR')
270
- .option('--open', 'Open PR in browser')
273
+ .option('-o, --open', 'Open PR in browser')
271
274
  .option('--ai-description', 'Generate PR description using AI (follows CLAUDE.md conventions)')
275
+ .option('-f, --force', 'Force PR creation even if blocking hooks fail')
276
+ .option('--no-hooks', 'Skip all hooks (pre-pr, pr-creating, pr-created)')
272
277
  .action(prCommand);
278
+ program
279
+ .command('merge [pr-number]')
280
+ .description('Merge a PR and fire pr-merged hook')
281
+ .option('--squash', 'Squash merge')
282
+ .option('--rebase', 'Rebase merge')
283
+ .option('--no-delete-branch', 'Keep branch after merge (default: delete)')
284
+ .option('--auto', 'Enable auto-merge (merge when requirements are met)')
285
+ .option('--auto-clean', 'Automatically remove worktree if branch is in use')
286
+ .action(mergeCommand);
273
287
  // Assignment
274
288
  program
275
289
  .command('assign <issue> [users...]')
@@ -298,8 +312,8 @@ addCmd
298
312
  .option('--list-templates', 'List available issue templates')
299
313
  .option('--ai', 'Expand brief title into full issue using AI')
300
314
  .option('--parent <issue>', 'Set parent issue number (links as sub-issue)')
301
- .option('-l, --labels <labels>', 'Labels to apply (comma-separated)')
302
- .option('-a, --assign [users]', 'Assign users (comma-separated, empty for self)')
315
+ .option('-L, --labels <labels>', 'Labels to apply (comma-separated)')
316
+ .option('--assign [users]', 'Assign users (comma-separated, empty for self)')
303
317
  .option('-F, --field <field=value>', 'Set project field (repeatable)', (val, acc) => { acc.push(val); return acc; }, [])
304
318
  .option('--no-template', 'Skip template selection (blank issue)')
305
319
  .option('-fd, --force-defaults', 'Use default values for all prompts (non-interactive mode)')
@@ -319,8 +333,8 @@ addCmd
319
333
  .option('-c, --context <context>', 'Additional context for AI planning')
320
334
  .option('--dry-run', 'Show what would be created without creating')
321
335
  .option('--parent <issue>', 'Set parent issue number (links as sub-issue)')
322
- .option('-l, --labels <labels>', 'Labels to apply (comma-separated)')
323
- .option('-a, --assign [users]', 'Assign users (comma-separated, empty for self)')
336
+ .option('-L, --labels <labels>', 'Labels to apply (comma-separated)')
337
+ .option('--assign [users]', 'Assign users (comma-separated, empty for self)')
324
338
  .option('-F, --field <field=value>', 'Set project field (repeatable)', (val, acc) => { acc.push(val); return acc; }, [])
325
339
  .option('--no-template', 'Skip template selection (blank issue)')
326
340
  .option('-fd, --force-defaults', 'Use default values for all prompts (non-interactive mode)')
@@ -336,8 +350,8 @@ addCmd
336
350
  .option('--list-templates', 'List available issue templates')
337
351
  .option('--ai', 'Expand brief title into full issue using AI')
338
352
  .option('--parent <issue>', 'Set parent issue number (links as sub-issue)')
339
- .option('-l, --labels <labels>', 'Labels to apply (comma-separated)')
340
- .option('-a, --assign [users]', 'Assign users (comma-separated, empty for self)')
353
+ .option('-L, --labels <labels>', 'Labels to apply (comma-separated)')
354
+ .option('--assign [users]', 'Assign users (comma-separated, empty for self)')
341
355
  .option('-F, --field <field=value>', 'Set project field (repeatable)', (val, acc) => { acc.push(val); return acc; }, [])
342
356
  .option('--no-template', 'Skip template selection (blank issue)')
343
357
  .option('-fd, --force-defaults', 'Use default values for all prompts (non-interactive mode)')
@@ -359,7 +373,7 @@ addCmd
359
373
  program
360
374
  .command('set-parent <issue>')
361
375
  .description('Set or remove parent issue (sub-issue relationship)')
362
- .option('-p, --parent <issue>', 'Parent issue number')
376
+ .option('--parent <issue>', 'Parent issue number')
363
377
  .option('--remove', 'Remove current parent')
364
378
  .action(setParentCommand);
365
379
  // Field management
@@ -381,7 +395,7 @@ program
381
395
  .command('open <issue>')
382
396
  .alias('o')
383
397
  .description('View issue details')
384
- .option('-b, --browser', 'Open in browser instead of terminal')
398
+ .option('--browser', 'Open in browser instead of terminal')
385
399
  .action(openCommand);
386
400
  program
387
401
  .command('comment <issue>')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * CLI Flag Validation Utilities
3
+ *
4
+ * Provides validation functions for CLI flags that accept specific values.
5
+ * Used to provide clear error messages when invalid values are provided.
6
+ *
7
+ * ## Usage
8
+ *
9
+ * ```typescript
10
+ * import { validateEnum, validateMutualExclusion, validatePositiveNumber } from './validation.js';
11
+ *
12
+ * // In command handler:
13
+ * validateEnum(options.branchAction, BRANCH_ACTIONS, '--branch-action');
14
+ * validateMutualExclusion(['--squash', '--rebase'], [options.squash, options.rebase]);
15
+ * validatePositiveNumber(options.timeout, '--timeout');
16
+ * ```
17
+ */
18
+ /** Valid values for --branch-action flag in start command */
19
+ export declare const BRANCH_ACTIONS: readonly ["create", "link", "skip"];
20
+ export type BranchAction = typeof BRANCH_ACTIONS[number];
21
+ /** Valid values for --assign flag (action mode) in start command */
22
+ export declare const ASSIGN_ACTIONS: readonly ["reassign", "add", "skip"];
23
+ export type AssignAction = typeof ASSIGN_ACTIONS[number];
24
+ /** Valid values for --group flag in work/plan commands */
25
+ export declare const GROUP_FIELDS: readonly ["status", "type", "assignee", "priority", "size", "labels"];
26
+ export type GroupField = typeof GROUP_FIELDS[number];
27
+ /** Valid values for --mode flag in event hooks */
28
+ export declare const HOOK_MODES: readonly ["fire-and-forget", "blocking", "interactive"];
29
+ export type HookMode = typeof HOOK_MODES[number];
30
+ /**
31
+ * Note: HOOK_MODES is defined here for documentation but validation is handled
32
+ * by getValidModes() from @bretwardjames/ghp-core in event-hooks.ts.
33
+ * Terminal modes are validated via mutual exclusion of --nvim/--claude/--terminal-only flags.
34
+ */
35
+ /**
36
+ * Validate that a value is one of the allowed options.
37
+ * Exits with helpful error message if invalid.
38
+ *
39
+ * @param value - The value to validate (may be undefined)
40
+ * @param allowed - Array of valid values
41
+ * @param flagName - Name of the flag (for error messages)
42
+ * @param exitOnError - Whether to exit on error (default: true)
43
+ * @returns true if valid, false if invalid (only when exitOnError is false)
44
+ */
45
+ export declare function validateEnum<T extends string>(value: string | undefined, allowed: readonly T[], flagName: string, exitOnError?: boolean): value is T | undefined;
46
+ /**
47
+ * Validate that mutually exclusive flags aren't used together.
48
+ * Exits with helpful error message if multiple are set.
49
+ *
50
+ * @param flagNames - Names of the mutually exclusive flags
51
+ * @param flagValues - Corresponding values (truthy means flag is set)
52
+ * @param exitOnError - Whether to exit on error (default: true)
53
+ * @returns true if valid, false if invalid (only when exitOnError is false)
54
+ */
55
+ export declare function validateMutualExclusion(flagNames: string[], flagValues: (boolean | string | undefined)[], exitOnError?: boolean): boolean;
56
+ /**
57
+ * Validate that a numeric value is positive.
58
+ * Exits with helpful error message if invalid.
59
+ *
60
+ * @param value - The value to validate (may be undefined or string)
61
+ * @param flagName - Name of the flag (for error messages)
62
+ * @param min - Minimum allowed value (default: 1)
63
+ * @param max - Maximum allowed value (optional)
64
+ * @param exitOnError - Whether to exit on error (default: true)
65
+ * @returns The parsed number if valid, undefined if not provided
66
+ */
67
+ export declare function validatePositiveNumber(value: string | number | undefined, flagName: string, min?: number, max?: number, exitOnError?: boolean): number | undefined;
68
+ /**
69
+ * Validate that a required value is provided.
70
+ * Exits with helpful error message if missing.
71
+ *
72
+ * @param value - The value to check
73
+ * @param flagName - Name of the flag (for error messages)
74
+ * @param exitOnError - Whether to exit on error (default: true)
75
+ * @returns true if valid, false if missing (only when exitOnError is false)
76
+ */
77
+ export declare function validateRequired(value: unknown, flagName: string, exitOnError?: boolean): boolean;
78
+ /**
79
+ * Create a commander argParser that validates enum values.
80
+ * Use this with .argParser() to validate during option parsing.
81
+ *
82
+ * @param allowed - Array of valid values
83
+ * @param flagName - Name of the flag (for error messages)
84
+ * @returns A parser function for commander
85
+ */
86
+ export declare function enumArgParser<T extends string>(allowed: readonly T[], flagName: string): (value: string) => T;
87
+ /**
88
+ * Print a deprecation warning for a renamed flag.
89
+ *
90
+ * @param oldFlag - The deprecated flag name
91
+ * @param newFlag - The new flag name to use
92
+ */
93
+ export declare function warnDeprecatedFlag(oldFlag: string, newFlag: string): void;
94
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AASH,6DAA6D;AAC7D,eAAO,MAAM,cAAc,qCAAsC,CAAC;AAClE,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD,oEAAoE;AACpE,eAAO,MAAM,cAAc,sCAAuC,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD,0DAA0D;AAC1D,eAAO,MAAM,YAAY,uEAAwE,CAAC;AAClG,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAErD,kDAAkD;AAClD,eAAO,MAAM,UAAU,yDAA0D,CAAC;AAClF,MAAM,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAEjD;;;;GAIG;AAMH;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,UAAO,GACnB,KAAK,IAAI,CAAC,GAAG,SAAS,CAexB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACnC,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,EAC5C,WAAW,UAAO,GACnB,OAAO,CAaT;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClC,QAAQ,EAAE,MAAM,EAChB,GAAG,SAAI,EACP,GAAG,CAAC,EAAE,MAAM,EACZ,WAAW,UAAO,GACnB,MAAM,GAAG,SAAS,CAgCpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC5B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,UAAO,GACnB,OAAO,CAUT;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAC1C,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,QAAQ,EAAE,MAAM,GACjB,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAStB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAKzE"}