@kodus/cli 0.4.8 → 0.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +2 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/config.d.ts +1 -5
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +10 -71
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/hook/install.d.ts +1 -1
- package/dist/commands/hook/install.d.ts.map +1 -1
- package/dist/commands/hook/uninstall.d.ts +1 -1
- package/dist/commands/hook/uninstall.d.ts.map +1 -1
- package/dist/commands/memory/disable.d.ts +1 -1
- package/dist/commands/memory/disable.d.ts.map +1 -1
- package/dist/commands/pr.d.ts +1 -2
- package/dist/commands/pr.d.ts.map +1 -1
- package/dist/commands/pr.js +1 -243
- package/dist/commands/pr.js.map +1 -1
- package/dist/commands/review.d.ts +1 -2
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +1 -314
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +2 -14
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/update.d.ts +1 -0
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +24 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/features/pr/command.d.ts +4 -0
- package/dist/features/pr/command.d.ts.map +1 -0
- package/dist/features/pr/command.js +222 -0
- package/dist/features/pr/command.js.map +1 -0
- package/dist/features/repo-config/actions.d.ts +33 -0
- package/dist/features/repo-config/actions.d.ts.map +1 -0
- package/dist/features/repo-config/actions.js +260 -0
- package/dist/features/repo-config/actions.js.map +1 -0
- package/dist/features/repo-config/command.d.ts +15 -0
- package/dist/features/repo-config/command.d.ts.map +1 -0
- package/dist/features/repo-config/command.js +135 -0
- package/dist/features/repo-config/command.js.map +1 -0
- package/dist/features/review/command.d.ts +4 -0
- package/dist/features/review/command.d.ts.map +1 -0
- package/dist/features/review/command.js +248 -0
- package/dist/features/review/command.js.map +1 -0
- package/dist/features/review/diff.d.ts +23 -0
- package/dist/features/review/diff.d.ts.map +1 -0
- package/dist/features/review/diff.js +47 -0
- package/dist/features/review/diff.js.map +1 -0
- package/dist/features/review/errors.d.ts +3 -0
- package/dist/features/review/errors.d.ts.map +1 -0
- package/dist/features/review/errors.js +26 -0
- package/dist/features/review/errors.js.map +1 -0
- package/dist/features/review/no-changes.d.ts +6 -0
- package/dist/features/review/no-changes.d.ts.map +1 -0
- package/dist/features/review/no-changes.js +31 -0
- package/dist/features/review/no-changes.js.map +1 -0
- package/dist/features/review/options.d.ts +7 -0
- package/dist/features/review/options.d.ts.map +1 -0
- package/dist/features/review/options.js +18 -0
- package/dist/features/review/options.js.map +1 -0
- package/dist/features/review/result.d.ts +11 -0
- package/dist/features/review/result.d.ts.map +1 -0
- package/dist/features/review/result.js +49 -0
- package/dist/features/review/result.js.map +1 -0
- package/dist/formatters/json.d.ts +1 -1
- package/dist/formatters/json.d.ts.map +1 -1
- package/dist/formatters/markdown.d.ts +1 -1
- package/dist/formatters/markdown.d.ts.map +1 -1
- package/dist/formatters/markdown.js.map +1 -1
- package/dist/formatters/prompt.d.ts +1 -1
- package/dist/formatters/prompt.d.ts.map +1 -1
- package/dist/formatters/repo-config.d.ts +7 -0
- package/dist/formatters/repo-config.d.ts.map +1 -0
- package/dist/formatters/repo-config.js +99 -0
- package/dist/formatters/repo-config.js.map +1 -0
- package/dist/formatters/terminal.d.ts +1 -1
- package/dist/formatters/terminal.d.ts.map +1 -1
- package/dist/formatters/terminal.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/services/api/api-core.d.ts +15 -0
- package/dist/services/api/api-core.d.ts.map +1 -0
- package/dist/services/api/api-core.js +292 -0
- package/dist/services/api/api-core.js.map +1 -0
- package/dist/services/api/api.interface.d.ts +16 -1
- package/dist/services/api/api.interface.d.ts.map +1 -1
- package/dist/services/api/api.real.d.ts +12 -20
- package/dist/services/api/api.real.d.ts.map +1 -1
- package/dist/services/api/api.real.js +8 -545
- package/dist/services/api/api.real.js.map +1 -1
- package/dist/services/api/auth.api.d.ts +17 -0
- package/dist/services/api/auth.api.d.ts.map +1 -0
- package/dist/services/api/auth.api.js +73 -0
- package/dist/services/api/auth.api.js.map +1 -0
- package/dist/services/api/config.api.d.ts +24 -0
- package/dist/services/api/config.api.d.ts.map +1 -0
- package/dist/services/api/config.api.js +78 -0
- package/dist/services/api/config.api.js.map +1 -0
- package/dist/services/api/memory.api.d.ts +10 -0
- package/dist/services/api/memory.api.d.ts.map +1 -0
- package/dist/services/api/memory.api.js +19 -0
- package/dist/services/api/memory.api.js.map +1 -0
- package/dist/services/api/review.api.d.ts +26 -0
- package/dist/services/api/review.api.d.ts.map +1 -0
- package/dist/services/api/review.api.js +117 -0
- package/dist/services/api/review.api.js.map +1 -0
- package/dist/services/api/sessions.api.js +1 -1
- package/dist/services/api/sessions.api.js.map +1 -1
- package/dist/services/api/trial.api.d.ts +10 -0
- package/dist/services/api/trial.api.d.ts.map +1 -0
- package/dist/services/api/trial.api.js +11 -0
- package/dist/services/api/trial.api.js.map +1 -0
- package/dist/services/auth.service.d.ts +1 -1
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +1 -1
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/context.service.d.ts +1 -1
- package/dist/services/context.service.d.ts.map +1 -1
- package/dist/services/fix.service.d.ts +1 -1
- package/dist/services/fix.service.d.ts.map +1 -1
- package/dist/services/git.service.d.ts +2 -2
- package/dist/services/git.service.d.ts.map +1 -1
- package/dist/services/git.service.js +25 -172
- package/dist/services/git.service.js.map +1 -1
- package/dist/services/lifecycle-events.d.ts +49 -0
- package/dist/services/lifecycle-events.d.ts.map +1 -0
- package/dist/services/lifecycle-events.js +86 -0
- package/dist/services/lifecycle-events.js.map +1 -0
- package/dist/services/lifecycle-git-context.d.ts +15 -0
- package/dist/services/lifecycle-git-context.d.ts.map +1 -0
- package/dist/services/lifecycle-git-context.js +23 -0
- package/dist/services/lifecycle-git-context.js.map +1 -0
- package/dist/services/lifecycle-local-turn-state.d.ts +14 -0
- package/dist/services/lifecycle-local-turn-state.d.ts.map +1 -0
- package/dist/services/lifecycle-local-turn-state.js +18 -0
- package/dist/services/lifecycle-local-turn-state.js.map +1 -0
- package/dist/services/lifecycle-transcript.d.ts +25 -0
- package/dist/services/lifecycle-transcript.d.ts.map +1 -0
- package/dist/services/lifecycle-transcript.js +29 -0
- package/dist/services/lifecycle-transcript.js.map +1 -0
- package/dist/services/lifecycle-turn-data.d.ts +11 -0
- package/dist/services/lifecycle-turn-data.d.ts.map +1 -0
- package/dist/services/lifecycle-turn-data.js +23 -0
- package/dist/services/lifecycle-turn-data.js.map +1 -0
- package/dist/services/lifecycle.service.d.ts.map +1 -1
- package/dist/services/lifecycle.service.js +63 -132
- package/dist/services/lifecycle.service.js.map +1 -1
- package/dist/services/repo-config.service.d.ts.map +1 -1
- package/dist/services/repo-config.service.js +2 -8
- package/dist/services/repo-config.service.js.map +1 -1
- package/dist/services/repo-settings-wizard.service.d.ts +19 -0
- package/dist/services/repo-settings-wizard.service.d.ts.map +1 -0
- package/dist/services/repo-settings-wizard.service.js +260 -0
- package/dist/services/repo-settings-wizard.service.js.map +1 -0
- package/dist/services/repo-settings.service.d.ts +20 -0
- package/dist/services/repo-settings.service.d.ts.map +1 -0
- package/dist/services/repo-settings.service.js +86 -0
- package/dist/services/repo-settings.service.js.map +1 -0
- package/dist/services/review-auth-fallback.d.ts +7 -0
- package/dist/services/review-auth-fallback.d.ts.map +1 -0
- package/dist/services/review-auth-fallback.js +25 -0
- package/dist/services/review-auth-fallback.js.map +1 -0
- package/dist/services/review-config-builder.d.ts +19 -0
- package/dist/services/review-config-builder.d.ts.map +1 -0
- package/dist/services/review-config-builder.js +17 -0
- package/dist/services/review-config-builder.js.map +1 -0
- package/dist/services/review-file-filter.d.ts +3 -0
- package/dist/services/review-file-filter.d.ts.map +1 -0
- package/dist/services/review-file-filter.js +35 -0
- package/dist/services/review-file-filter.js.map +1 -0
- package/dist/services/review-normalizer.d.ts +6 -0
- package/dist/services/review-normalizer.d.ts.map +1 -0
- package/dist/services/review-normalizer.js +62 -0
- package/dist/services/review-normalizer.js.map +1 -0
- package/dist/services/review-verbose.d.ts +28 -0
- package/dist/services/review-verbose.d.ts.map +1 -0
- package/dist/services/review-verbose.js +52 -0
- package/dist/services/review-verbose.js.map +1 -0
- package/dist/services/review.service.d.ts +1 -5
- package/dist/services/review.service.d.ts.map +1 -1
- package/dist/services/review.service.js +55 -182
- package/dist/services/review.service.js.map +1 -1
- package/dist/types/auth.d.ts +18 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/auth.js +2 -0
- package/dist/types/auth.js.map +1 -0
- package/dist/types/cli.d.ts +33 -0
- package/dist/types/cli.d.ts.map +1 -0
- package/dist/types/cli.js +2 -0
- package/dist/types/cli.js.map +1 -0
- package/dist/types/config.d.ts +47 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +2 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/errors.d.ts +8 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +15 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/index.d.ts +8 -191
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -14
- package/dist/types/index.js.map +1 -1
- package/dist/types/repo-config.d.ts +24 -0
- package/dist/types/repo-config.d.ts.map +1 -0
- package/dist/types/repo-config.js +2 -0
- package/dist/types/repo-config.js.map +1 -0
- package/dist/types/review.d.ts +112 -0
- package/dist/types/review.d.ts.map +1 -0
- package/dist/types/review.js +2 -0
- package/dist/types/review.js.map +1 -0
- package/dist/types/trial.d.ts +10 -0
- package/dist/types/trial.d.ts.map +1 -0
- package/dist/types/trial.js +2 -0
- package/dist/types/trial.js.map +1 -0
- package/dist/ui/interactive-formatters.d.ts +6 -0
- package/dist/ui/interactive-formatters.d.ts.map +1 -0
- package/dist/ui/interactive-formatters.js +61 -0
- package/dist/ui/interactive-formatters.js.map +1 -0
- package/dist/ui/interactive-helpers.d.ts +12 -0
- package/dist/ui/interactive-helpers.d.ts.map +1 -0
- package/dist/ui/interactive-helpers.js +51 -0
- package/dist/ui/interactive-helpers.js.map +1 -0
- package/dist/ui/interactive-renderers.d.ts +6 -0
- package/dist/ui/interactive-renderers.d.ts.map +1 -0
- package/dist/ui/interactive-renderers.js +82 -0
- package/dist/ui/interactive-renderers.js.map +1 -0
- package/dist/ui/interactive.d.ts +1 -9
- package/dist/ui/interactive.d.ts.map +1 -1
- package/dist/ui/interactive.js +11 -187
- package/dist/ui/interactive.js.map +1 -1
- package/dist/utils/auth-mode.d.ts +7 -0
- package/dist/utils/auth-mode.d.ts.map +1 -0
- package/dist/utils/auth-mode.js +42 -0
- package/dist/utils/auth-mode.js.map +1 -0
- package/dist/utils/banner.d.ts.map +1 -1
- package/dist/utils/banner.js +2 -14
- package/dist/utils/banner.js.map +1 -1
- package/dist/utils/command-context.d.ts +1 -1
- package/dist/utils/command-context.d.ts.map +1 -1
- package/dist/utils/command-errors.d.ts.map +1 -1
- package/dist/utils/command-errors.js +25 -1
- package/dist/utils/command-errors.js.map +1 -1
- package/dist/utils/commander-errors.d.ts +8 -0
- package/dist/utils/commander-errors.d.ts.map +1 -0
- package/dist/utils/commander-errors.js +79 -0
- package/dist/utils/commander-errors.js.map +1 -0
- package/dist/utils/commander-setup.d.ts +3 -0
- package/dist/utils/commander-setup.d.ts.map +1 -0
- package/dist/utils/commander-setup.js +10 -0
- package/dist/utils/commander-setup.js.map +1 -0
- package/dist/utils/credentials.d.ts +1 -1
- package/dist/utils/credentials.d.ts.map +1 -1
- package/dist/utils/git-diff.d.ts +5 -0
- package/dist/utils/git-diff.d.ts.map +1 -0
- package/dist/utils/git-diff.js +14 -0
- package/dist/utils/git-diff.js.map +1 -0
- package/dist/utils/git-file-reader.d.ts +22 -0
- package/dist/utils/git-file-reader.d.ts.map +1 -0
- package/dist/utils/git-file-reader.js +45 -0
- package/dist/utils/git-file-reader.js.map +1 -0
- package/dist/utils/git-file-selection.d.ts +14 -0
- package/dist/utils/git-file-selection.d.ts.map +1 -0
- package/dist/utils/git-file-selection.js +20 -0
- package/dist/utils/git-file-selection.js.map +1 -0
- package/dist/utils/git-file-targets.d.ts +4 -0
- package/dist/utils/git-file-targets.d.ts.map +1 -0
- package/dist/utils/git-file-targets.js +11 -0
- package/dist/utils/git-file-targets.js.map +1 -0
- package/dist/utils/git-remote.d.ts +7 -0
- package/dist/utils/git-remote.d.ts.map +1 -0
- package/dist/utils/git-remote.js +60 -0
- package/dist/utils/git-remote.js.map +1 -0
- package/dist/utils/git-status.d.ts +7 -0
- package/dist/utils/git-status.d.ts.map +1 -0
- package/dist/utils/git-status.js +36 -0
- package/dist/utils/git-status.js.map +1 -0
- package/dist/utils/input-validation.d.ts +1 -1
- package/dist/utils/input-validation.d.ts.map +1 -1
- package/dist/utils/rate-limit.d.ts +1 -1
- package/dist/utils/repo-settings-dashboard.d.ts +6 -0
- package/dist/utils/repo-settings-dashboard.d.ts.map +1 -0
- package/dist/utils/repo-settings-dashboard.js +36 -0
- package/dist/utils/repo-settings-dashboard.js.map +1 -0
- package/dist/utils/repo-settings-patterns.d.ts +7 -0
- package/dist/utils/repo-settings-patterns.d.ts.map +1 -0
- package/dist/utils/repo-settings-patterns.js +66 -0
- package/dist/utils/repo-settings-patterns.js.map +1 -0
- package/dist/utils/repo-settings-schema.d.ts +6 -0
- package/dist/utils/repo-settings-schema.d.ts.map +1 -0
- package/dist/utils/repo-settings-schema.js +70 -0
- package/dist/utils/repo-settings-schema.js.map +1 -0
- package/dist/utils/review-output.d.ts +4 -0
- package/dist/utils/review-output.d.ts.map +1 -0
- package/dist/utils/review-output.js +18 -0
- package/dist/utils/review-output.js.map +1 -0
- package/dist/utils/skills-sync-manifest.d.ts +5 -0
- package/dist/utils/skills-sync-manifest.d.ts.map +1 -0
- package/dist/utils/skills-sync-manifest.js +39 -0
- package/dist/utils/skills-sync-manifest.js.map +1 -0
- package/dist/utils/skills-sync-paths.d.ts +5 -0
- package/dist/utils/skills-sync-paths.d.ts.map +1 -0
- package/dist/utils/skills-sync-paths.js +60 -0
- package/dist/utils/skills-sync-paths.js.map +1 -0
- package/dist/utils/skills-sync-targets.d.ts +3 -0
- package/dist/utils/skills-sync-targets.d.ts.map +1 -0
- package/dist/utils/skills-sync-targets.js +211 -0
- package/dist/utils/skills-sync-targets.js.map +1 -0
- package/dist/utils/skills-sync.d.ts.map +1 -1
- package/dist/utils/skills-sync.js +4 -253
- package/dist/utils/skills-sync.js.map +1 -1
- package/dist/utils/team-key-auth.d.ts +5 -0
- package/dist/utils/team-key-auth.d.ts.map +1 -0
- package/dist/utils/team-key-auth.js +14 -0
- package/dist/utils/team-key-auth.js.map +1 -0
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-errors.js","sourceRoot":"","sources":["../../src/utils/command-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"command-errors.js","sourceRoot":"","sources":["../../src/utils/command-errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commander-errors.d.ts","sourceRoot":"","sources":["../../src/utils/commander-errors.ts"],"names":[],"mappings":"AAAA,KAAK,sBAAsB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAoEF,wBAAgB,oBAAoB,CAChC,KAAK,EAAE,sBAAsB,EAC7B,IAAI,EAAE,MAAM,EAAE,GACf,MAAM,CA6CR"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
function matchQuotedValue(message, pattern) {
|
|
2
|
+
const value = message?.match(pattern)?.[1];
|
|
3
|
+
return value && value.length > 0 ? value : undefined;
|
|
4
|
+
}
|
|
5
|
+
function getProgramName(args) {
|
|
6
|
+
if (args.length === 0) {
|
|
7
|
+
return 'kodus';
|
|
8
|
+
}
|
|
9
|
+
if (args[0] === 'config') {
|
|
10
|
+
return 'kodus config';
|
|
11
|
+
}
|
|
12
|
+
return `kodus ${args[0]}`;
|
|
13
|
+
}
|
|
14
|
+
function formatConfigShortcutMisuse(args) {
|
|
15
|
+
if (args[0] !== 'config' ||
|
|
16
|
+
!(args.includes('-r') || args.includes('--remote')) ||
|
|
17
|
+
!args.includes('setup')) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const remoteIndex = args.findIndex((arg) => arg === '-r' || arg === '--remote');
|
|
21
|
+
const repository = remoteIndex >= 0 &&
|
|
22
|
+
args[remoteIndex + 1] &&
|
|
23
|
+
!args[remoteIndex + 1].startsWith('-') &&
|
|
24
|
+
args[remoteIndex + 1] !== 'setup'
|
|
25
|
+
? args[remoteIndex + 1]
|
|
26
|
+
: undefined;
|
|
27
|
+
const target = repository ?? '.';
|
|
28
|
+
return [
|
|
29
|
+
"The '-r, --remote' shortcut only adds a repository.",
|
|
30
|
+
`Use \`kodus config -r ${target}\` to add it.`,
|
|
31
|
+
`Use \`kodus config remote setup ${target}\` to run onboarding.`,
|
|
32
|
+
].join('\n');
|
|
33
|
+
}
|
|
34
|
+
function formatUnknownCommand(args, message) {
|
|
35
|
+
const command = matchQuotedValue(message, /unknown command '([^']+)'/i);
|
|
36
|
+
const lines = [
|
|
37
|
+
command
|
|
38
|
+
? `Unknown command: \`${command}\`.`
|
|
39
|
+
: 'Unknown command.',
|
|
40
|
+
`Run \`${getProgramName(args)} --help\` to see available commands.`,
|
|
41
|
+
];
|
|
42
|
+
if (args[0] === 'config') {
|
|
43
|
+
lines.push('For repository settings, use `kodus config remote <command>`.');
|
|
44
|
+
}
|
|
45
|
+
return lines.join('\n');
|
|
46
|
+
}
|
|
47
|
+
export function formatCommanderError(error, args) {
|
|
48
|
+
const shortcutMisuse = formatConfigShortcutMisuse(args);
|
|
49
|
+
if (shortcutMisuse) {
|
|
50
|
+
return shortcutMisuse;
|
|
51
|
+
}
|
|
52
|
+
if (error.code === 'commander.excessArguments') {
|
|
53
|
+
return `Too many arguments.\nRun \`${getProgramName(args)} --help\` to see the expected syntax.`;
|
|
54
|
+
}
|
|
55
|
+
if (error.code === 'commander.unknownOption' ||
|
|
56
|
+
error.message?.includes('unknown option')) {
|
|
57
|
+
const option = matchQuotedValue(error.message, /unknown option '([^']+)'/i);
|
|
58
|
+
return [
|
|
59
|
+
option ? `Unknown option: \`${option}\`.` : 'Unknown option.',
|
|
60
|
+
`Run \`${getProgramName(args)} --help\` to see available options.`,
|
|
61
|
+
].join('\n');
|
|
62
|
+
}
|
|
63
|
+
if (error.code === 'commander.unknownCommand' ||
|
|
64
|
+
error.message?.includes('unknown command')) {
|
|
65
|
+
return formatUnknownCommand(args, error.message);
|
|
66
|
+
}
|
|
67
|
+
if (error.code === 'commander.missingArgument' ||
|
|
68
|
+
error.message?.includes('missing required argument')) {
|
|
69
|
+
const argument = matchQuotedValue(error.message, /missing required argument '([^']+)'/i);
|
|
70
|
+
return [
|
|
71
|
+
argument
|
|
72
|
+
? `Missing required argument: \`${argument}\`.`
|
|
73
|
+
: 'Missing required argument.',
|
|
74
|
+
`Run \`${getProgramName(args)} --help\` to see the expected syntax.`,
|
|
75
|
+
].join('\n');
|
|
76
|
+
}
|
|
77
|
+
return error.message ?? 'Command failed.';
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=commander-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commander-errors.js","sourceRoot":"","sources":["../../src/utils/commander-errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commander-setup.d.ts","sourceRoot":"","sources":["../../src/utils/commander-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS7D"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function applyCommanderBehavior(command) {
|
|
2
|
+
command.exitOverride();
|
|
3
|
+
command.configureOutput({
|
|
4
|
+
outputError: () => { },
|
|
5
|
+
});
|
|
6
|
+
for (const subcommand of command.commands) {
|
|
7
|
+
applyCommanderBehavior(subcommand);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=commander-setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commander-setup.js","sourceRoot":"","sources":["../../src/utils/commander-setup.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACnD,OAAO,CAAC,YAAY,EAAE,CAAC;IACvB,OAAO,CAAC,eAAe,CAAC;QACpB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;KACxB,CAAC,CAAC;IAEH,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACxC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;AACL,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StoredCredentials } from '../types/
|
|
1
|
+
import type { StoredCredentials } from '../types/auth.js';
|
|
2
2
|
export declare function loadCredentials(): Promise<StoredCredentials | null>;
|
|
3
3
|
export declare function saveCredentials(credentials: StoredCredentials): Promise<void>;
|
|
4
4
|
export declare function clearCredentials(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/utils/credentials.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/utils/credentials.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAmB1D,wBAAsB,eAAe,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAmBzE;AAED,wBAAsB,eAAe,CACjC,WAAW,EAAE,iBAAiB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQtD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAOzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-diff.d.ts","sourceRoot":"","sources":["../../src/utils/git-diff.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB,CAcA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function countDiffChanges(diff) {
|
|
2
|
+
let additions = 0;
|
|
3
|
+
let deletions = 0;
|
|
4
|
+
for (const line of diff.split('\n')) {
|
|
5
|
+
if (line.startsWith('+') && !line.startsWith('+++')) {
|
|
6
|
+
additions++;
|
|
7
|
+
}
|
|
8
|
+
if (line.startsWith('-') && !line.startsWith('---')) {
|
|
9
|
+
deletions++;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return { additions, deletions };
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=git-diff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-diff.js","sourceRoot":"","sources":["../../src/utils/git-diff.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAIzC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,SAAS,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,SAAS,EAAE,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export type GitFileReadOptions = {
|
|
2
|
+
staged?: boolean;
|
|
3
|
+
commit?: string;
|
|
4
|
+
branch?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function buildFileDiffReadPlan(filePath: string, options?: GitFileReadOptions): {
|
|
7
|
+
mode: 'single-diff';
|
|
8
|
+
args: string[];
|
|
9
|
+
} | {
|
|
10
|
+
mode: 'working-tree-diff';
|
|
11
|
+
stagedArgs: string[];
|
|
12
|
+
unstagedArgs: string[];
|
|
13
|
+
};
|
|
14
|
+
export declare function buildFileContentReadPlan(filePath: string, options?: GitFileReadOptions): {
|
|
15
|
+
mode: 'git-show';
|
|
16
|
+
args: string[];
|
|
17
|
+
} | {
|
|
18
|
+
mode: 'fs';
|
|
19
|
+
path: string;
|
|
20
|
+
encoding: 'utf-8';
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=git-file-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-reader.d.ts","sourceRoot":"","sources":["../../src/utils/git-file-reader.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAE1B;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CA2BhF;AAED,wBAAgB,wBAAwB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAE1B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAoBpD"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export function buildFileDiffReadPlan(filePath, options) {
|
|
2
|
+
if (options?.branch) {
|
|
3
|
+
return {
|
|
4
|
+
mode: 'single-diff',
|
|
5
|
+
args: [`${options.branch}...HEAD`, '--', filePath],
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
if (options?.commit) {
|
|
9
|
+
return {
|
|
10
|
+
mode: 'single-diff',
|
|
11
|
+
args: [`${options.commit}^`, options.commit, '--', filePath],
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
if (options?.staged) {
|
|
15
|
+
return {
|
|
16
|
+
mode: 'single-diff',
|
|
17
|
+
args: ['--cached', '--', filePath],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
mode: 'working-tree-diff',
|
|
22
|
+
stagedArgs: ['--cached', '--', filePath],
|
|
23
|
+
unstagedArgs: ['--', filePath],
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export function buildFileContentReadPlan(filePath, options) {
|
|
27
|
+
if (options?.commit) {
|
|
28
|
+
return {
|
|
29
|
+
mode: 'git-show',
|
|
30
|
+
args: [`${options.commit}:${filePath}`],
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
if (options?.branch) {
|
|
34
|
+
return {
|
|
35
|
+
mode: 'git-show',
|
|
36
|
+
args: [`HEAD:${filePath}`],
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
mode: 'fs',
|
|
41
|
+
path: filePath,
|
|
42
|
+
encoding: 'utf-8',
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=git-file-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-reader.js","sourceRoot":"","sources":["../../src/utils/git-file-reader.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,qBAAqB,CACjC,QAAgB,EAChB,OAA4B;IAI5B,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO;YACH,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC;SACrD,CAAC;IACN,CAAC;IAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO;YACH,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;SAC/D,CAAC;IACN,CAAC;IAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO;YACH,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC;SACrC,CAAC;IACN,CAAC;IAED,OAAO;QACH,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC;QACxC,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;KACjC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,QAAgB,EAChB,OAA4B;IAI5B,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO;YACH,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;SAC1C,CAAC;IACN,CAAC;IAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO;YACH,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,CAAC,QAAQ,QAAQ,EAAE,CAAC;SAC7B,CAAC;IACN,CAAC;IAED,OAAO;QACH,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,OAAO;KACpB,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { FileDiff } from '../types/cli.js';
|
|
2
|
+
export declare function createFileSelectionFromPaths(files: string[]): {
|
|
3
|
+
filesToRead: string[];
|
|
4
|
+
fileStatusMap: Map<string, FileDiff['status']>;
|
|
5
|
+
};
|
|
6
|
+
export declare function createFileSelectionFromNameStatus(nameStatus: string): {
|
|
7
|
+
filesToRead: string[];
|
|
8
|
+
fileStatusMap: Map<string, FileDiff['status']>;
|
|
9
|
+
};
|
|
10
|
+
export declare function createFileSelectionFromModifiedFiles(files: FileDiff[]): {
|
|
11
|
+
filesToRead: string[];
|
|
12
|
+
fileStatusMap: Map<string, FileDiff['status']>;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=git-file-selection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-selection.d.ts","sourceRoot":"","sources":["../../src/utils/git-file-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG;IAC3D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;CAClD,CAKA;AAED,wBAAgB,iCAAiC,CAAC,UAAU,EAAE,MAAM,GAAG;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;CAClD,CAKA;AAED,wBAAgB,oCAAoC,CAChD,KAAK,EAAE,QAAQ,EAAE,GAClB;IACC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;CAClD,CAKA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { buildFileStatusMap, listFilesFromNameStatus } from './git-file-targets.js';
|
|
2
|
+
export function createFileSelectionFromPaths(files) {
|
|
3
|
+
return {
|
|
4
|
+
filesToRead: files,
|
|
5
|
+
fileStatusMap: new Map(),
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export function createFileSelectionFromNameStatus(nameStatus) {
|
|
9
|
+
return {
|
|
10
|
+
filesToRead: listFilesFromNameStatus(nameStatus),
|
|
11
|
+
fileStatusMap: buildFileStatusMap(nameStatus),
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export function createFileSelectionFromModifiedFiles(files) {
|
|
15
|
+
return {
|
|
16
|
+
filesToRead: files.map((file) => file.file),
|
|
17
|
+
fileStatusMap: new Map(files.map((file) => [file.file, file.status])),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=git-file-selection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-selection.js","sourceRoot":"","sources":["../../src/utils/git-file-selection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,MAAM,UAAU,4BAA4B,CAAC,KAAe;IAIxD,OAAO;QACH,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,IAAI,GAAG,EAAE;KAC3B,CAAC;AACN,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,UAAkB;IAIhE,OAAO;QACH,WAAW,EAAE,uBAAuB,CAAC,UAAU,CAAC;QAChD,aAAa,EAAE,kBAAkB,CAAC,UAAU,CAAC;KAChD,CAAC;AACN,CAAC;AAED,MAAM,UAAU,oCAAoC,CAChD,KAAiB;IAKjB,OAAO;QACH,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3C,aAAa,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;KACxE,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FileDiff } from '../types/cli.js';
|
|
2
|
+
export declare function listFilesFromNameStatus(nameStatus: string): string[];
|
|
3
|
+
export declare function buildFileStatusMap(nameStatus: string): Map<string, FileDiff['status']>;
|
|
4
|
+
//# sourceMappingURL=git-file-targets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-targets.d.ts","sourceRoot":"","sources":["../../src/utils/git-file-targets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAEpE;AAED,wBAAgB,kBAAkB,CAC9B,UAAU,EAAE,MAAM,GACnB,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAOjC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { parseGitNameStatusOutput } from './git-status.js';
|
|
2
|
+
export function listFilesFromNameStatus(nameStatus) {
|
|
3
|
+
return parseGitNameStatusOutput(nameStatus).map((entry) => entry.file);
|
|
4
|
+
}
|
|
5
|
+
export function buildFileStatusMap(nameStatus) {
|
|
6
|
+
return new Map(parseGitNameStatusOutput(nameStatus).map((entry) => [
|
|
7
|
+
entry.file,
|
|
8
|
+
entry.status,
|
|
9
|
+
]));
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=git-file-targets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-file-targets.js","sourceRoot":"","sources":["../../src/utils/git-file-targets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACtD,OAAO,wBAAwB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAC9B,UAAkB;IAElB,OAAO,IAAI,GAAG,CACV,wBAAwB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;QAChD,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,MAAM;KACf,CAAC,CACL,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PlatformType } from '../types/cli.js';
|
|
2
|
+
export declare function extractOrgRepoFromRemote(remoteUrl: string | null | undefined): {
|
|
3
|
+
org: string;
|
|
4
|
+
repo: string;
|
|
5
|
+
} | null;
|
|
6
|
+
export declare function inferPlatformFromRemote(remote: string | null | undefined): PlatformType;
|
|
7
|
+
//# sourceMappingURL=git-remote.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-remote.d.ts","sourceRoot":"","sources":["../../src/utils/git-remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACrC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAmBtC;AAED,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAClC,YAAY,CA6Bd"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export function extractOrgRepoFromRemote(remoteUrl) {
|
|
2
|
+
if (!remoteUrl) {
|
|
3
|
+
return null;
|
|
4
|
+
}
|
|
5
|
+
const patterns = [
|
|
6
|
+
/github\.com[:/]([^/]+)\/([^/.]+)/,
|
|
7
|
+
/gitlab\.com[:/]([^/]+)\/([^/.]+)/,
|
|
8
|
+
/bitbucket\.org[:/]([^/]+)\/([^/.]+)/,
|
|
9
|
+
];
|
|
10
|
+
for (const pattern of patterns) {
|
|
11
|
+
const match = remoteUrl.match(pattern);
|
|
12
|
+
if (match) {
|
|
13
|
+
return { org: match[1], repo: match[2] };
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
export function inferPlatformFromRemote(remote) {
|
|
19
|
+
if (!remote) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
const host = extractRemoteHost(remote);
|
|
23
|
+
if (!host) {
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
if (host === 'github.com') {
|
|
27
|
+
return 'GITHUB';
|
|
28
|
+
}
|
|
29
|
+
if (host === 'gitlab.com') {
|
|
30
|
+
return 'GITLAB';
|
|
31
|
+
}
|
|
32
|
+
if (host === 'bitbucket.org') {
|
|
33
|
+
return 'BITBUCKET';
|
|
34
|
+
}
|
|
35
|
+
if (host === 'dev.azure.com' ||
|
|
36
|
+
host === 'ssh.dev.azure.com' ||
|
|
37
|
+
host === 'visualstudio.com' ||
|
|
38
|
+
host.endsWith('.visualstudio.com')) {
|
|
39
|
+
return 'AZURE_REPOS';
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
function extractRemoteHost(remote) {
|
|
44
|
+
const value = remote.trim().toLowerCase();
|
|
45
|
+
if (!value) {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
try {
|
|
49
|
+
const url = new URL(value);
|
|
50
|
+
if (url.hostname) {
|
|
51
|
+
return url.hostname.toLowerCase();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
// Fallback below for SCP-like syntax.
|
|
56
|
+
}
|
|
57
|
+
const scpLike = value.match(/^(?:[^@/]+@)?([^:/]+):.+$/);
|
|
58
|
+
return scpLike?.[1];
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=git-remote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-remote.js","sourceRoot":"","sources":["../../src/utils/git-remote.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,wBAAwB,CACpC,SAAoC;IAEpC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG;QACb,kCAAkC;QAClC,kCAAkC;QAClC,qCAAqC;KACxC,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACnC,MAAiC;IAEjC,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACvB,CAAC;IACD,IACI,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,mBAAmB;QAC5B,IAAI,KAAK,kBAAkB;QAC3B,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EACpC,CAAC;QACC,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACtC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,sCAAsC;IAC1C,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACzD,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { FileDiff } from '../types/cli.js';
|
|
2
|
+
export declare function parseGitStatus(statusChar: string): FileDiff['status'];
|
|
3
|
+
export declare function parseGitNameStatusOutput(nameStatus: string): Array<{
|
|
4
|
+
file: string;
|
|
5
|
+
status: FileDiff['status'];
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=git-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-status.d.ts","sourceRoot":"","sources":["../../src/utils/git-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAYrE;AAED,wBAAgB,wBAAwB,CACpC,UAAU,EAAE,MAAM,GACnB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;CAAE,CAAC,CA2BrD"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export function parseGitStatus(statusChar) {
|
|
2
|
+
const char = statusChar.charAt(0).toUpperCase();
|
|
3
|
+
switch (char) {
|
|
4
|
+
case 'A':
|
|
5
|
+
return 'added';
|
|
6
|
+
case 'D':
|
|
7
|
+
return 'deleted';
|
|
8
|
+
case 'R':
|
|
9
|
+
return 'renamed';
|
|
10
|
+
default:
|
|
11
|
+
return 'modified';
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export function parseGitNameStatusOutput(nameStatus) {
|
|
15
|
+
const files = [];
|
|
16
|
+
for (const line of nameStatus.split('\n')) {
|
|
17
|
+
const trimmed = line.trim();
|
|
18
|
+
if (!trimmed) {
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
const parts = trimmed.split('\t');
|
|
22
|
+
const statusChar = parts[0];
|
|
23
|
+
const fileName = statusChar.startsWith('R') || statusChar.startsWith('C')
|
|
24
|
+
? parts[parts.length - 1]
|
|
25
|
+
: parts[1];
|
|
26
|
+
if (!fileName) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
files.push({
|
|
30
|
+
file: fileName,
|
|
31
|
+
status: parseGitStatus(statusChar),
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return files;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=git-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-status.js","sourceRoot":"","sources":["../../src/utils/git-status.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,GAAG;YACJ,OAAO,OAAO,CAAC;QACnB,KAAK,GAAG;YACJ,OAAO,SAAS,CAAC;QACrB,KAAK,GAAG;YACJ,OAAO,SAAS,CAAC;QACrB;YACI,OAAO,UAAU,CAAC;IAC1B,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,UAAkB;IAElB,MAAM,KAAK,GAAwD,EAAE,CAAC;IAEtE,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,SAAS;QACb,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,QAAQ,GACV,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;YACpD,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YACzB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEnB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,SAAS;QACb,CAAC;QAED,KAAK,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;SACrC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OutputFormat } from '../types/
|
|
1
|
+
import type { OutputFormat } from '../types/cli.js';
|
|
2
2
|
export declare function parseOptionalNumber(raw: string | undefined, flag: string): number | undefined;
|
|
3
3
|
export declare function parseCsvEnumList(raw: string | undefined, flag: string, allowed: readonly string[]): string[] | undefined;
|
|
4
4
|
export declare function validateHttpUrl(raw: string, flag: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-validation.d.ts","sourceRoot":"","sources":["../../src/utils/input-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"input-validation.d.ts","sourceRoot":"","sources":["../../src/utils/input-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpD,wBAAgB,mBAAmB,CAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAmBpB;AAED,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,MAAM,EAAE,GAC3B,MAAM,EAAE,GAAG,SAAS,CA+BtB;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAajE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAe5E;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CACpB,GAAG,IAAI,CAaP"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { TrialStatus } from '../types/
|
|
1
|
+
import type { TrialStatus } from '../types/trial.js';
|
|
2
2
|
export declare function getTrialIdentifier(): Promise<string>;
|
|
3
3
|
export declare function checkTrialStatus(): Promise<TrialStatus>;
|
|
4
4
|
export declare function showTrialLimitPrompt(status: TrialStatus): void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const SUPPORTED_REPO_SETTINGS_SECTIONS: readonly ["general", "review-categories", "custom-prompts", "suggestion-control", "pr-summary", "kody-rules", "custom-messages", "business-rules"];
|
|
2
|
+
export type RepositorySettingsSection = (typeof SUPPORTED_REPO_SETTINGS_SECTIONS)[number];
|
|
3
|
+
export declare function getKodusAppUrl(): string;
|
|
4
|
+
export declare function validateRepositorySettingsSection(section: string | undefined): RepositorySettingsSection;
|
|
5
|
+
export declare function getRepositorySettingsSectionLabel(section: RepositorySettingsSection): string;
|
|
6
|
+
//# sourceMappingURL=repo-settings-dashboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-settings-dashboard.d.ts","sourceRoot":"","sources":["../../src/utils/repo-settings-dashboard.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gCAAgC,oJASnC,CAAC;AAEX,MAAM,MAAM,yBAAyB,GACjC,CAAC,OAAO,gCAAgC,CAAC,CAAC,MAAM,CAAC,CAAC;AAatD,wBAAgB,cAAc,IAAI,MAAM,CAGvC;AAED,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,MAAM,GAAG,SAAS,GAC5B,yBAAyB,CAc3B;AAED,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,yBAAyB,GACnC,MAAM,CAER"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { CommandError } from './command-errors.js';
|
|
2
|
+
export const SUPPORTED_REPO_SETTINGS_SECTIONS = [
|
|
3
|
+
'general',
|
|
4
|
+
'review-categories',
|
|
5
|
+
'custom-prompts',
|
|
6
|
+
'suggestion-control',
|
|
7
|
+
'pr-summary',
|
|
8
|
+
'kody-rules',
|
|
9
|
+
'custom-messages',
|
|
10
|
+
'business-rules',
|
|
11
|
+
];
|
|
12
|
+
const SECTION_LABELS = {
|
|
13
|
+
'general': 'General',
|
|
14
|
+
'review-categories': 'Review Categories',
|
|
15
|
+
'custom-prompts': 'Custom Prompts',
|
|
16
|
+
'suggestion-control': 'Suggestion Control',
|
|
17
|
+
'pr-summary': 'PR Summary',
|
|
18
|
+
'kody-rules': 'Kody Rules',
|
|
19
|
+
'custom-messages': 'Custom Messages',
|
|
20
|
+
'business-rules': 'Business Rules',
|
|
21
|
+
};
|
|
22
|
+
export function getKodusAppUrl() {
|
|
23
|
+
const configuredUrl = process.env.KODUS_APP_URL?.trim();
|
|
24
|
+
return configuredUrl || 'https://app.kodus.io';
|
|
25
|
+
}
|
|
26
|
+
export function validateRepositorySettingsSection(section) {
|
|
27
|
+
const normalized = section?.trim().toLowerCase() || 'general';
|
|
28
|
+
if (!SUPPORTED_REPO_SETTINGS_SECTIONS.includes(normalized)) {
|
|
29
|
+
throw new CommandError('INVALID_INPUT', `Unsupported section '${section}'. Supported sections: ${SUPPORTED_REPO_SETTINGS_SECTIONS.join(', ')}`);
|
|
30
|
+
}
|
|
31
|
+
return normalized;
|
|
32
|
+
}
|
|
33
|
+
export function getRepositorySettingsSectionLabel(section) {
|
|
34
|
+
return SECTION_LABELS[section];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=repo-settings-dashboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-settings-dashboard.js","sourceRoot":"","sources":["../../src/utils/repo-settings-dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC5C,SAAS;IACT,mBAAmB;IACnB,gBAAgB;IAChB,oBAAoB;IACpB,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,gBAAgB;CACV,CAAC;AAKX,MAAM,cAAc,GAA8C;IAC9D,SAAS,EAAE,SAAS;IACpB,mBAAmB,EAAE,mBAAmB;IACxC,gBAAgB,EAAE,gBAAgB;IAClC,oBAAoB,EAAE,oBAAoB;IAC1C,YAAY,EAAE,YAAY;IAC1B,YAAY,EAAE,YAAY;IAC1B,iBAAiB,EAAE,iBAAiB;IACpC,gBAAgB,EAAE,gBAAgB;CACrC,CAAC;AAEF,MAAM,UAAU,cAAc;IAC1B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;IACxD,OAAO,aAAa,IAAI,sBAAsB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC7C,OAA2B;IAE3B,MAAM,UAAU,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,SAAS,CAAC;IAC9D,IACI,CAAC,gCAAgC,CAAC,QAAQ,CACtC,UAAuC,CAC1C,EACH,CAAC;QACC,MAAM,IAAI,YAAY,CAClB,eAAe,EACf,wBAAwB,OAAO,0BAA0B,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzG,CAAC;IACN,CAAC;IAED,OAAO,UAAuC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC7C,OAAkC;IAElC,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RepositorySettings } from '../types/repo-config.js';
|
|
2
|
+
export declare const SUPPORTED_REPO_PATTERN_FIELDS: readonly ["ignore-files", "base-branches", "ignore-titles"];
|
|
3
|
+
export type RepositoryPatternField = (typeof SUPPORTED_REPO_PATTERN_FIELDS)[number];
|
|
4
|
+
export declare function validateRepositoryPatternField(field: string): RepositoryPatternField;
|
|
5
|
+
export declare function addRepositoryPattern(settings: RepositorySettings, field: string, pattern: string): RepositorySettings;
|
|
6
|
+
export declare function removeRepositoryPattern(settings: RepositorySettings, field: string, pattern: string): RepositorySettings;
|
|
7
|
+
//# sourceMappingURL=repo-settings-patterns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-settings-patterns.d.ts","sourceRoot":"","sources":["../../src/utils/repo-settings-patterns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,eAAO,MAAM,6BAA6B,6DAIhC,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAC9B,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,wBAAgB,8BAA8B,CAC1C,KAAK,EAAE,MAAM,GACd,sBAAsB,CAcxB;AAwCD,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAChB,kBAAkB,CAmBpB;AAED,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAChB,kBAAkB,CAiBpB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { CommandError } from './command-errors.js';
|
|
2
|
+
export const SUPPORTED_REPO_PATTERN_FIELDS = [
|
|
3
|
+
'ignore-files',
|
|
4
|
+
'base-branches',
|
|
5
|
+
'ignore-titles',
|
|
6
|
+
];
|
|
7
|
+
export function validateRepositoryPatternField(field) {
|
|
8
|
+
const normalized = field.trim().toLowerCase();
|
|
9
|
+
if (!SUPPORTED_REPO_PATTERN_FIELDS.includes(normalized)) {
|
|
10
|
+
throw new CommandError('INVALID_INPUT', `Unsupported pattern field '${field}'. Supported pattern fields: ${SUPPORTED_REPO_PATTERN_FIELDS.join(', ')}`);
|
|
11
|
+
}
|
|
12
|
+
return normalized;
|
|
13
|
+
}
|
|
14
|
+
function getPatterns(settings, field) {
|
|
15
|
+
switch (field) {
|
|
16
|
+
case 'ignore-files':
|
|
17
|
+
return settings.ignoredFilePatterns;
|
|
18
|
+
case 'base-branches':
|
|
19
|
+
return settings.baseBranchPatterns;
|
|
20
|
+
case 'ignore-titles':
|
|
21
|
+
return settings.ignoredTitlePatterns;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function withPatterns(settings, field, patterns) {
|
|
25
|
+
switch (field) {
|
|
26
|
+
case 'ignore-files':
|
|
27
|
+
return {
|
|
28
|
+
...settings,
|
|
29
|
+
ignoredFilePatterns: patterns,
|
|
30
|
+
};
|
|
31
|
+
case 'base-branches':
|
|
32
|
+
return {
|
|
33
|
+
...settings,
|
|
34
|
+
baseBranchPatterns: patterns,
|
|
35
|
+
};
|
|
36
|
+
case 'ignore-titles':
|
|
37
|
+
return {
|
|
38
|
+
...settings,
|
|
39
|
+
ignoredTitlePatterns: patterns,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export function addRepositoryPattern(settings, field, pattern) {
|
|
44
|
+
const supportedField = validateRepositoryPatternField(field);
|
|
45
|
+
const normalizedPattern = pattern.trim();
|
|
46
|
+
if (!normalizedPattern) {
|
|
47
|
+
throw new CommandError('INVALID_INPUT', 'Pattern value cannot be empty.');
|
|
48
|
+
}
|
|
49
|
+
const existing = getPatterns(settings, supportedField);
|
|
50
|
+
if (existing.includes(normalizedPattern)) {
|
|
51
|
+
return settings;
|
|
52
|
+
}
|
|
53
|
+
return withPatterns(settings, supportedField, [
|
|
54
|
+
...existing,
|
|
55
|
+
normalizedPattern,
|
|
56
|
+
]);
|
|
57
|
+
}
|
|
58
|
+
export function removeRepositoryPattern(settings, field, pattern) {
|
|
59
|
+
const supportedField = validateRepositoryPatternField(field);
|
|
60
|
+
const normalizedPattern = pattern.trim();
|
|
61
|
+
if (!normalizedPattern) {
|
|
62
|
+
throw new CommandError('INVALID_INPUT', 'Pattern value cannot be empty.');
|
|
63
|
+
}
|
|
64
|
+
return withPatterns(settings, supportedField, getPatterns(settings, supportedField).filter((existingPattern) => existingPattern !== normalizedPattern));
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=repo-settings-patterns.js.map
|