@radkode/neo 0.7.0 → 0.8.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.
@@ -0,0 +1,3 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ export declare function createBranchCommand(): Command;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/git/branch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AA0CtD,wBAAgB,mBAAmB,IAAI,OAAO,CA4E7C"}
@@ -0,0 +1,447 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ import { execa } from 'execa';
3
+ import inquirer from 'inquirer';
4
+ import { logger } from '../../../utils/logger.js';
5
+ import { ui } from '../../../utils/ui.js';
6
+ import { validate, isValidationError } from '../../../utils/validation.js';
7
+ import { gitBranchOptionsSchema } from '../../../types/schemas.js';
8
+ export function createBranchCommand() {
9
+ const command = new Command('branch');
10
+ command
11
+ .description('Analyze and manage local git branches')
12
+ .option('--dry-run', 'show what would be deleted without actually deleting')
13
+ .option('--force', 'force delete branches without confirmation prompts')
14
+ .action(async (options) => {
15
+ let validatedOptions;
16
+ try {
17
+ validatedOptions = validate(gitBranchOptionsSchema, options, 'git branch options');
18
+ }
19
+ catch (error) {
20
+ if (isValidationError(error)) {
21
+ process.exit(1);
22
+ }
23
+ throw error;
24
+ }
25
+ const spinner = ui.spinner('Analyzing local branches');
26
+ spinner.start();
27
+ try {
28
+ await verifyGitRepository();
29
+ const analysis = await analyzeBranches();
30
+ spinner.succeed(`Found ${analysis.totalBranches} local branches`);
31
+ displayBranchSummary(analysis);
32
+ if (analysis.cleanupCandidates.length === 0) {
33
+ ui.success('All branches are either protected or have active remote tracking - nothing to clean up!');
34
+ return;
35
+ }
36
+ displayCleanupCandidates(analysis);
37
+ if (validatedOptions.dryRun) {
38
+ ui.warn('Dry run mode - no branches will be deleted');
39
+ return;
40
+ }
41
+ await interactiveBranchCleanup(analysis.cleanupCandidates, validatedOptions.force);
42
+ }
43
+ catch (error) {
44
+ spinner.fail('Failed to analyze branches');
45
+ if (error instanceof Error) {
46
+ if (error.message.includes('not a git repository')) {
47
+ ui.error('Not a git repository!');
48
+ ui.warn('Make sure you are in a git repository directory');
49
+ process.exit(1);
50
+ }
51
+ if (error.message.includes('no branches found')) {
52
+ ui.error('No local branches found!');
53
+ ui.warn('This repository appears to have no local branches');
54
+ process.exit(1);
55
+ }
56
+ }
57
+ ui.error('An unexpected error occurred');
58
+ ui.muted(error instanceof Error ? error.message : String(error));
59
+ process.exit(1);
60
+ }
61
+ });
62
+ return command;
63
+ }
64
+ async function verifyGitRepository() {
65
+ try {
66
+ await execa('git', ['rev-parse', '--git-dir']);
67
+ }
68
+ catch {
69
+ throw new Error('not a git repository');
70
+ }
71
+ }
72
+ async function analyzeBranches() {
73
+ try {
74
+ const { stdout: branchOutput } = await execa('git', ['branch', '-vv']);
75
+ if (!branchOutput.trim()) {
76
+ throw new Error('no branches found');
77
+ }
78
+ const branchLines = branchOutput.split('\n').filter((line) => line.trim());
79
+ const branches = [];
80
+ let currentBranch = '';
81
+ const protectedBranchNames = [
82
+ 'main',
83
+ 'master',
84
+ 'develop',
85
+ 'dev',
86
+ 'staging',
87
+ 'production',
88
+ 'prod',
89
+ ];
90
+ for (const line of branchLines) {
91
+ const branchInfo = await parseBranchLine(line.trim(), protectedBranchNames);
92
+ if (branchInfo) {
93
+ branches.push(branchInfo);
94
+ if (branchInfo.isCurrent) {
95
+ currentBranch = branchInfo.name;
96
+ }
97
+ }
98
+ }
99
+ const trackedBranches = branches.filter((b) => b.hasRemoteTracking && !b.isRemoteDeleted);
100
+ const untrackedBranches = branches.filter((b) => !b.hasRemoteTracking && !b.isCurrent && !b.isProtected);
101
+ const deletedRemoteBranches = branches.filter((b) => b.isRemoteDeleted && !b.isCurrent && !b.isProtected);
102
+ const cleanupCandidates = [...untrackedBranches, ...deletedRemoteBranches];
103
+ const protectedBranches = branches.filter((b) => b.isProtected);
104
+ logger.debug(`Total branches: ${branches.length}`);
105
+ logger.debug(`Current branch: ${currentBranch}`);
106
+ logger.debug(`Tracked branches: ${trackedBranches.length}`);
107
+ logger.debug(`Untracked branches: ${untrackedBranches.length}`);
108
+ logger.debug(`Deleted remote branches: ${deletedRemoteBranches.length}`);
109
+ logger.debug(`Cleanup candidates: ${cleanupCandidates.length}`);
110
+ logger.debug(`Protected branches: ${protectedBranches.length}`);
111
+ return {
112
+ totalBranches: branches.length,
113
+ currentBranch,
114
+ trackedBranches,
115
+ untrackedBranches,
116
+ deletedRemoteBranches,
117
+ cleanupCandidates,
118
+ protectedBranches,
119
+ };
120
+ }
121
+ catch (error) {
122
+ logger.debug(`Branch analysis failed: ${error}`);
123
+ throw error;
124
+ }
125
+ }
126
+ async function parseBranchLine(line, protectedBranchNames) {
127
+ const isCurrent = line.startsWith('* ');
128
+ const cleanLine = line.replace(/^\*?\s+/, '');
129
+ const parts = cleanLine.split(/\s+/);
130
+ if (parts.length < 2) {
131
+ return null;
132
+ }
133
+ const name = parts[0];
134
+ if (!name) {
135
+ return null;
136
+ }
137
+ const isProtected = protectedBranchNames.includes(name);
138
+ const trackingMatch = cleanLine.match(/\[([^\]]+)\]/);
139
+ const hasRemoteTracking = !!trackingMatch;
140
+ const remoteTrackingBranch = trackingMatch ? trackingMatch[1] : undefined;
141
+ const isRemoteDeleted = hasRemoteTracking && !!remoteTrackingBranch?.includes(': gone');
142
+ return {
143
+ name,
144
+ isCurrent,
145
+ hasRemoteTracking,
146
+ remoteTrackingBranch,
147
+ isProtected,
148
+ isRemoteDeleted,
149
+ };
150
+ }
151
+ function displayBranchSummary(analysis) {
152
+ console.log('');
153
+ ui.section('Branch Analysis');
154
+ ui.keyValue([
155
+ ['Current branch', analysis.currentBranch],
156
+ ['Total branches', analysis.totalBranches.toString()],
157
+ ['With active remote tracking', analysis.trackedBranches.length.toString()],
158
+ ['Without remote tracking', analysis.untrackedBranches.length.toString()],
159
+ ['With deleted remotes', analysis.deletedRemoteBranches.length.toString()],
160
+ ['Available for cleanup', analysis.cleanupCandidates.length.toString()],
161
+ ['Protected branches', analysis.protectedBranches.length.toString()],
162
+ ]);
163
+ if (analysis.trackedBranches.length > 0) {
164
+ console.log('');
165
+ ui.info('Branches with active remote tracking:');
166
+ const trackedList = analysis.trackedBranches.map((b) => `${b.name} → ${b.remoteTrackingBranch}${b.isCurrent ? ' (current)' : ''}`);
167
+ ui.list(trackedList);
168
+ }
169
+ if (analysis.protectedBranches.length > 0) {
170
+ console.log('');
171
+ ui.info('Protected branches (will not be deleted):');
172
+ const protectedList = analysis.protectedBranches.map((b) => `${b.name}${b.isCurrent ? ' (current)' : ''}`);
173
+ ui.list(protectedList);
174
+ }
175
+ }
176
+ function displayCleanupCandidates(analysis) {
177
+ console.log('');
178
+ if (analysis.cleanupCandidates.length === 0) {
179
+ return;
180
+ }
181
+ ui.warn(`Found ${analysis.cleanupCandidates.length} branch(es) available for cleanup:`);
182
+ console.log('');
183
+ const cleanupList = analysis.cleanupCandidates.map((branch) => {
184
+ if (branch.isRemoteDeleted) {
185
+ return `${branch.name} (remote deleted)`;
186
+ }
187
+ else {
188
+ return `${branch.name} (no remote)`;
189
+ }
190
+ });
191
+ ui.list(cleanupList);
192
+ if (analysis.untrackedBranches.length > 0 && analysis.deletedRemoteBranches.length > 0) {
193
+ console.log('');
194
+ ui.muted(`├─ ${analysis.untrackedBranches.length} without remote tracking`);
195
+ ui.muted(`└─ ${analysis.deletedRemoteBranches.length} with deleted remotes`);
196
+ }
197
+ console.log('');
198
+ }
199
+ async function interactiveBranchCleanup(cleanupCandidates, forceMode = false) {
200
+ const { action } = await inquirer.prompt([
201
+ {
202
+ type: 'list',
203
+ name: 'action',
204
+ message: 'What would you like to do with these branches?',
205
+ choices: [
206
+ {
207
+ name: `Delete all ${cleanupCandidates.length} cleanup candidates`,
208
+ value: 'delete_all',
209
+ },
210
+ {
211
+ name: 'Select specific branches to delete',
212
+ value: 'delete_selected',
213
+ },
214
+ {
215
+ name: 'Cancel (no changes)',
216
+ value: 'cancel',
217
+ },
218
+ ],
219
+ },
220
+ ]);
221
+ switch (action) {
222
+ case 'delete_all':
223
+ await deleteBranches(cleanupCandidates, forceMode);
224
+ break;
225
+ case 'delete_selected':
226
+ await selectAndDeleteBranches(cleanupCandidates, forceMode);
227
+ break;
228
+ case 'cancel':
229
+ ui.muted('Operation cancelled. No branches were deleted.');
230
+ return;
231
+ }
232
+ }
233
+ async function selectAndDeleteBranches(cleanupCandidates, forceMode) {
234
+ const { selectedBranches } = await inquirer.prompt({
235
+ type: 'checkbox',
236
+ name: 'selectedBranches',
237
+ message: 'Select branches to delete:',
238
+ choices: cleanupCandidates.map((b) => ({
239
+ name: `${b.name}${b.isRemoteDeleted ? ' (deleted remote)' : ' (no remote)'}`,
240
+ value: b.name,
241
+ })),
242
+ validate: (choices) => {
243
+ if (!choices || choices.length === 0) {
244
+ return 'Please select at least one branch';
245
+ }
246
+ return true;
247
+ },
248
+ });
249
+ const branchesToDelete = cleanupCandidates.filter((b) => selectedBranches.includes(b.name));
250
+ await deleteBranches(branchesToDelete, forceMode);
251
+ }
252
+ async function deleteBranches(branches, forceMode) {
253
+ if (branches.length === 0) {
254
+ ui.info('No branches selected for deletion');
255
+ return;
256
+ }
257
+ if (!forceMode) {
258
+ const { confirm } = await inquirer.prompt([
259
+ {
260
+ type: 'confirm',
261
+ name: 'confirm',
262
+ message: `Are you sure you want to delete ${branches.length} branch(es)?`,
263
+ default: false,
264
+ },
265
+ ]);
266
+ if (!confirm) {
267
+ ui.muted('Operation cancelled. No branches were deleted.');
268
+ return;
269
+ }
270
+ }
271
+ const results = {
272
+ deleted: [],
273
+ failed: [],
274
+ forceDeleted: [],
275
+ };
276
+ for (const branch of branches) {
277
+ try {
278
+ await execa('git', ['branch', '-d', branch.name]);
279
+ results.deleted.push(branch.name);
280
+ ui.success(`Deleted branch "${branch.name}"`);
281
+ }
282
+ catch (error) {
283
+ const errorMessage = error instanceof Error ? error.message : String(error);
284
+ if (errorMessage.includes('not fully merged')) {
285
+ const isSquashMerged = await checkIfSquashMerged(branch.name);
286
+ if (isSquashMerged) {
287
+ await execa('git', ['branch', '-D', branch.name]);
288
+ results.deleted.push(branch.name);
289
+ ui.success(`Deleted branch "${branch.name}" (content was squash-merged)`);
290
+ }
291
+ else {
292
+ try {
293
+ if (forceMode) {
294
+ await execa('git', ['branch', '-D', branch.name]);
295
+ results.forceDeleted.push(branch.name);
296
+ ui.success(`Force deleted branch "${branch.name}"`);
297
+ ui.warn('This branch had unmerged changes');
298
+ }
299
+ else {
300
+ const { forceDelete } = await inquirer.prompt([
301
+ {
302
+ type: 'confirm',
303
+ name: 'forceDelete',
304
+ message: `Branch "${branch.name}" has unmerged changes. Force delete?`,
305
+ default: false,
306
+ },
307
+ ]);
308
+ if (forceDelete) {
309
+ await execa('git', ['branch', '-D', branch.name]);
310
+ results.forceDeleted.push(branch.name);
311
+ ui.success(`Force deleted branch "${branch.name}"`);
312
+ ui.warn('Unmerged changes were lost');
313
+ }
314
+ else {
315
+ results.failed.push({
316
+ name: branch.name,
317
+ reason: 'Has unmerged changes (skipped)',
318
+ });
319
+ ui.info(`Skipped branch "${branch.name}" (unmerged changes)`);
320
+ }
321
+ }
322
+ }
323
+ catch {
324
+ results.failed.push({ name: branch.name, reason: 'Failed to force delete' });
325
+ ui.error(`Failed to force delete branch "${branch.name}"`);
326
+ }
327
+ }
328
+ }
329
+ else {
330
+ results.failed.push({ name: branch.name, reason: errorMessage });
331
+ ui.error(`Failed to delete branch "${branch.name}": ${errorMessage}`);
332
+ }
333
+ }
334
+ }
335
+ displayDeletionSummary(results);
336
+ }
337
+ async function checkIfSquashMerged(branchName) {
338
+ try {
339
+ const defaultBranch = await findDefaultBranch();
340
+ const { stdout: mergeBase } = await execa('git', ['merge-base', branchName, defaultBranch]);
341
+ const { stdout: branchPatch } = await execa('git', [
342
+ 'diff',
343
+ `${mergeBase.trim()}..${branchName}`,
344
+ ]);
345
+ if (!branchPatch.trim()) {
346
+ return true;
347
+ }
348
+ const { stdout: recentCommits } = await execa('git', [
349
+ 'rev-list',
350
+ '--max-count=50',
351
+ defaultBranch,
352
+ ]);
353
+ const commitShas = recentCommits.trim().split('\n');
354
+ for (const commitSha of commitShas) {
355
+ try {
356
+ const { stdout: commitPatch } = await execa('git', ['show', '--format=', commitSha]);
357
+ if (patchesHaveSimilarContent(branchPatch, commitPatch)) {
358
+ return true;
359
+ }
360
+ }
361
+ catch {
362
+ continue;
363
+ }
364
+ }
365
+ return false;
366
+ }
367
+ catch (error) {
368
+ logger.debug(`Failed to check squash merge status for ${branchName}: ${error}`);
369
+ return false;
370
+ }
371
+ }
372
+ function patchesHaveSimilarContent(patch1, patch2) {
373
+ if (!patch1.trim() || !patch2.trim()) {
374
+ return false;
375
+ }
376
+ const getSignificantLines = (patch) => {
377
+ return patch
378
+ .split('\n')
379
+ .filter((line) => line.startsWith('+') || line.startsWith('-'))
380
+ .filter((line) => !line.startsWith('+++') && !line.startsWith('---'))
381
+ .map((line) => line.substring(1).trim())
382
+ .filter((line) => line.length > 0)
383
+ .filter((line) => !line.match(/^\s*(\{|\}|\(|\)|;|,)\s*$/));
384
+ };
385
+ const lines1 = getSignificantLines(patch1);
386
+ const lines2 = getSignificantLines(patch2);
387
+ if (lines1.length === 0 || lines2.length === 0) {
388
+ return false;
389
+ }
390
+ const commonLines = lines1.filter((line) => lines2.includes(line));
391
+ const similarity = commonLines.length / Math.max(lines1.length, lines2.length);
392
+ return similarity > 0.7;
393
+ }
394
+ async function findDefaultBranch() {
395
+ try {
396
+ await execa('git', ['show-ref', '--verify', '--quiet', 'refs/heads/main']);
397
+ return 'main';
398
+ }
399
+ catch {
400
+ try {
401
+ await execa('git', ['show-ref', '--verify', '--quiet', 'refs/heads/master']);
402
+ return 'master';
403
+ }
404
+ catch {
405
+ try {
406
+ const { stdout } = await execa('git', ['symbolic-ref', 'refs/remotes/origin/HEAD']);
407
+ return stdout.replace('refs/remotes/origin/', '').trim();
408
+ }
409
+ catch {
410
+ ui.warn('Could not determine default branch, using "main"');
411
+ return 'main';
412
+ }
413
+ }
414
+ }
415
+ }
416
+ function displayDeletionSummary(results) {
417
+ console.log('');
418
+ ui.section('Cleanup Summary');
419
+ const totalProcessed = results.deleted.length + results.failed.length + results.forceDeleted.length;
420
+ const successCount = results.deleted.length + results.forceDeleted.length;
421
+ ui.keyValue([
422
+ ['Total processed', totalProcessed.toString()],
423
+ ['Successfully deleted', successCount.toString()],
424
+ ['Failed to delete', results.failed.length.toString()],
425
+ ]);
426
+ if (results.deleted.length > 0) {
427
+ console.log('');
428
+ ui.success(`Successfully deleted ${results.deleted.length} branch(es):`);
429
+ ui.list(results.deleted);
430
+ }
431
+ if (results.forceDeleted.length > 0) {
432
+ console.log('');
433
+ ui.warn(`Force deleted ${results.forceDeleted.length} branch(es) with unmerged changes:`);
434
+ ui.list(results.forceDeleted);
435
+ }
436
+ if (results.failed.length > 0) {
437
+ console.log('');
438
+ ui.error(`Failed to delete ${results.failed.length} branch(es):`);
439
+ const failedList = results.failed.map((f) => `${f.name}: ${f.reason}`);
440
+ ui.list(failedList);
441
+ }
442
+ if (successCount > 0) {
443
+ console.log('');
444
+ ui.success('Branch cleanup completed!');
445
+ }
446
+ }
447
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/git/branch/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/git/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD,wBAAgB,gBAAgB,IAAI,OAAO,CAS1C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/git/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,wBAAgB,gBAAgB,IAAI,OAAO,CAU1C"}
@@ -1,12 +1,14 @@
1
1
  import { Command } from '@commander-js/extra-typings';
2
2
  import { createPushCommand } from '../git/push/index.js';
3
3
  import { createPullCommand } from '../git/pull/index.js';
4
+ import { createBranchCommand } from '../git/branch/index.js';
4
5
  export function createGitCommand() {
5
6
  const command = new Command('git');
6
7
  command
7
8
  .description('Git operations and utilities')
8
9
  .addCommand(createPushCommand())
9
- .addCommand(createPullCommand());
10
+ .addCommand(createPullCommand())
11
+ .addCommand(createBranchCommand());
10
12
  return command;
11
13
  }
12
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/git/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,8BAA8B,CAAC;SAC3C,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEnC,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/git/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,8BAA8B,CAAC;SAC3C,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAC/B,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErC,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -31,6 +31,14 @@ export declare const gitPullOptionsSchema: z.ZodObject<{
31
31
  rebase: z.ZodOptional<z.ZodBoolean>;
32
32
  noRebase: z.ZodOptional<z.ZodBoolean>;
33
33
  }, z.core.$strip>;
34
+ export declare const gitBranchOptionsSchema: z.ZodObject<{
35
+ verbose: z.ZodOptional<z.ZodBoolean>;
36
+ config: z.ZodOptional<z.ZodString>;
37
+ color: z.ZodOptional<z.ZodBoolean>;
38
+ banner: z.ZodOptional<z.ZodBoolean>;
39
+ dryRun: z.ZodOptional<z.ZodBoolean>;
40
+ force: z.ZodOptional<z.ZodBoolean>;
41
+ }, z.core.$strip>;
34
42
  export declare const deletedBranchActionSchema: z.ZodEnum<{
35
43
  switch_main_delete: "switch_main_delete";
36
44
  switch_main_keep: "switch_main_keep";
@@ -75,6 +83,7 @@ export type BaseOptions = z.infer<typeof baseOptionsSchema>;
75
83
  export type InitOptions = z.infer<typeof initOptionsSchema>;
76
84
  export type GitPushOptions = z.infer<typeof gitPushOptionsSchema>;
77
85
  export type GitPullOptions = z.infer<typeof gitPullOptionsSchema>;
86
+ export type GitBranchOptions = z.infer<typeof gitBranchOptionsSchema>;
78
87
  export type UpdateOptions = z.infer<typeof updateOptionsSchema>;
79
88
  export type ConfigKey = z.infer<typeof configKeySchema>;
80
89
  export type ConfigValue = z.infer<typeof configValueSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAC;AAKH,eAAO,MAAM,iBAAiB;;;;;;;iBAG5B,CAAC;AAKH,eAAO,MAAM,oBAAoB;;;;;;;;;iBAS/B,CAAC;AAKH,eAAO,MAAM,oBAAoB;;;;;;;iBAG/B,CAAC;AAKH,eAAO,MAAM,yBAAyB;;;;;EAKrC,CAAC;AAKF,eAAO,MAAM,mBAAmB;;;;;;;iBAG9B,CAAC;AAMH,eAAO,MAAM,eAAe,aAGqC,CAAC;AAMlE,eAAO,MAAM,iBAAiB,+DAI5B,CAAC;AAKH,eAAO,MAAM,iBAAiB;;;;EAE5B,CAAC;AAKH,eAAO,MAAM,gBAAgB;;;;EAE3B,CAAC;AAKH,eAAO,MAAM,eAAe;;;;EAE1B,CAAC;AAKH,eAAO,MAAM,uBAAuB;;;;;;;;iBAIlC,CAAC;AAKH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAC;AAKH,eAAO,MAAM,iBAAiB;;;;;;;iBAG5B,CAAC;AAKH,eAAO,MAAM,oBAAoB;;;;;;;;;iBAS/B,CAAC;AAKH,eAAO,MAAM,oBAAoB;;;;;;;iBAG/B,CAAC;AAKH,eAAO,MAAM,sBAAsB;;;;;;;iBAGjC,CAAC;AAKH,eAAO,MAAM,yBAAyB;;;;;EAKrC,CAAC;AAKF,eAAO,MAAM,mBAAmB;;;;;;;iBAG9B,CAAC;AAMH,eAAO,MAAM,eAAe,aAGqC,CAAC;AAMlE,eAAO,MAAM,iBAAiB,+DAI5B,CAAC;AAKH,eAAO,MAAM,iBAAiB;;;;EAE5B,CAAC;AAKH,eAAO,MAAM,gBAAgB;;;;EAE3B,CAAC;AAKH,eAAO,MAAM,eAAe;;;;EAE1B,CAAC;AAKH,eAAO,MAAM,uBAAuB;;;;;;;;iBAIlC,CAAC;AAKH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -23,6 +23,10 @@ export const gitPullOptionsSchema = baseOptionsSchema.extend({
23
23
  rebase: z.boolean().optional(),
24
24
  noRebase: z.boolean().optional(),
25
25
  });
26
+ export const gitBranchOptionsSchema = baseOptionsSchema.extend({
27
+ dryRun: z.boolean().optional(),
28
+ force: z.boolean().optional(),
29
+ });
26
30
  export const deletedBranchActionSchema = z.enum(['switch_main_delete', 'switch_main_keep', 'set_upstream', 'cancel'], {
27
31
  message: 'Must be one of: switch_main_delete, switch_main_keep, set_upstream, cancel',
28
32
  });
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radkode/neo",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Modern CLI toolkit with intelligent git workflows and configuration management",
5
5
  "author": "Jacek Radko",
6
6
  "license": "MIT",