@radkode/neo 0.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/alias/setup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAiDtD,wBAAgB,kBAAkB,IAAI,OAAO,CA2E5C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/alias/setup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAgDtD,wBAAgB,kBAAkB,IAAI,OAAO,CAqF5C"}
@@ -2,6 +2,8 @@ import { Command } from '@commander-js/extra-typings';
2
2
  import inquirer from 'inquirer';
3
3
  import { ZshIntegration } from '../../../utils/shell.js';
4
4
  import { ui } from '../../../utils/ui.js';
5
+ import { validate, isValidationError } from '../../../utils/validation.js';
6
+ import { aliasSetupOptionsSchema } from '../../../types/schemas.js';
5
7
  const ALIASES = Object.freeze({
6
8
  gp: 'neo git pull',
7
9
  gpu: 'neo git push',
@@ -24,6 +26,16 @@ export function createSetupCommand() {
24
26
  .description('Setup ZSH aliases for Neo CLI (gp, gpu). Backs up ~/.zshrc before modifying.')
25
27
  .option('-f, --force', 'skip confirmation and overwrite conflicting aliases')
26
28
  .action(async (options) => {
29
+ let validatedOptions;
30
+ try {
31
+ validatedOptions = validate(aliasSetupOptionsSchema, options, 'alias setup options');
32
+ }
33
+ catch (error) {
34
+ if (isValidationError(error)) {
35
+ process.exit(1);
36
+ }
37
+ throw error;
38
+ }
27
39
  const shell = new ZshIntegration();
28
40
  try {
29
41
  const rcFile = shell.getRcFile();
@@ -37,7 +49,7 @@ export function createSetupCommand() {
37
49
  }
38
50
  })();
39
51
  const conflicts = findConflictingAliases(rcContent, ALIASES);
40
- if (conflicts.length > 0 && !options.force) {
52
+ if (conflicts.length > 0 && !validatedOptions.force) {
41
53
  ui.warn('The following aliases already exist and will be overwritten:');
42
54
  for (const c of conflicts) {
43
55
  ui.log(` ${c.alias}: currently ${c.current} -> new ${ALIASES[c.alias]}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/alias/setup/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/alias/setup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAO7D,MAAM,OAAO,GAAoB,MAAM,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,cAAc;IAClB,GAAG,EAAE,cAAc;CACpB,CAAC,CAAC;AASH,SAAS,sBAAsB,CAC7B,OAAe,EACf,OAAwB;IAExB,MAAM,SAAS,GAAyC,EAAE,CAAC;IAG3D,MAAM,UAAU,GAAG,+CAA+C,CAAC;IACnE,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACnD,MAAM,CAAC,EAAE,IAAI,EAAE,AAAD,EAAG,KAAK,CAAC,GAAG,KAAK,CAAC;QAEhC,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,CAAC,IAA6B,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9F,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAKD,MAAM,UAAU,kBAAkB;IAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAErC,OAAO;SACJ,WAAW,CAAC,8EAA8E,CAAC;SAC3F,MAAM,CAAC,aAAa,EAAE,qDAAqD,CAAC;SAC5E,MAAM,CAAC,KAAK,EAAE,OAAgB,EAAiB,EAAE;QAEhD,IAAI,gBAAmC,CAAC;QACxC,IAAI,CAAC;YACH,gBAAgB,GAAG,QAAQ,CAAC,uBAAuB,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACvF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;QAEnC,IAAI,CAAC;YAEH,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;gBAElC,IAAI,CAAC;oBACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;oBACjD,OAAO,MAAM,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;YAEL,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE7D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;gBACpD,EAAE,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBACxE,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;oBAC1B,EAAE,CAAC,GAAG,CACJ,KAAK,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC,OAAO,WAAW,OAAO,CAAC,CAAC,CAAC,KAA8B,CAAC,EAAE,CAC3F,CAAC;gBACJ,CAAC;gBAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAEtC;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,yCAAyC;wBAClD,OAAO,EAAE,KAAK;qBACf;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;YACH,CAAC;YAGD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;YACxC,IAAI,UAAU,EAAE,CAAC;gBACf,EAAE,CAAC,IAAI,CAAC,aAAa,MAAM,OAAO,UAAU,EAAE,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;YACnF,CAAC;YAGD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACrC,CAAC;YAED,EAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;YAC9C,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAClC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;YAEhF,EAAE,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,EAAE,CAAC,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAOtD,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C"}
@@ -1,6 +1,8 @@
1
1
  import { Command } from '@commander-js/extra-typings';
2
2
  import { ui } from '../../utils/ui.js';
3
3
  import { configManager } from '../../utils/config.js';
4
+ import { validateArgument, validateConfigValue, isValidationError } from '../../utils/validation.js';
5
+ import { configKeySchema } from '../../types/schemas.js';
4
6
  export function createConfigCommand() {
5
7
  const command = new Command('config');
6
8
  command
@@ -15,7 +17,17 @@ function createConfigGetCommand() {
15
17
  command
16
18
  .description('Get a configuration value')
17
19
  .argument('<key>', 'configuration key (supports dot notation, e.g., preferences.banner)')
18
- .action(async (key) => {
20
+ .action(async (rawKey) => {
21
+ let key;
22
+ try {
23
+ key = validateArgument(configKeySchema, rawKey, 'configuration key');
24
+ }
25
+ catch (error) {
26
+ if (isValidationError(error)) {
27
+ process.exit(1);
28
+ }
29
+ throw error;
30
+ }
19
31
  try {
20
32
  const config = await configManager.read();
21
33
  const value = getNestedValue(config, key);
@@ -44,31 +56,30 @@ function createConfigSetCommand() {
44
56
  .description('Set a configuration value')
45
57
  .argument('<key>', 'configuration key (supports dot notation, e.g., preferences.banner)')
46
58
  .argument('<value>', 'configuration value')
47
- .action(async (key, value) => {
59
+ .action(async (rawKey, rawValue) => {
60
+ let key;
48
61
  try {
49
- if (key === 'preferences.banner') {
50
- const validBannerValues = ['full', 'compact', 'none'];
51
- if (!validBannerValues.includes(value)) {
52
- ui.error(`Invalid banner value: ${value}. Must be one of: ${validBannerValues.join(', ')}`);
53
- process.exit(1);
54
- }
55
- }
56
- if (key === 'preferences.theme') {
57
- const validThemeValues = ['dark', 'light', 'auto'];
58
- if (!validThemeValues.includes(value)) {
59
- ui.error(`Invalid theme value: ${value}. Must be one of: ${validThemeValues.join(', ')}`);
60
- process.exit(1);
61
- }
62
+ key = validateArgument(configKeySchema, rawKey, 'configuration key');
63
+ }
64
+ catch (error) {
65
+ if (isValidationError(error)) {
66
+ process.exit(1);
62
67
  }
63
- if (key === 'shell.type') {
64
- const validShellTypes = ['zsh', 'bash', 'fish'];
65
- if (!validShellTypes.includes(value)) {
66
- ui.error(`Invalid shell type: ${value}. Must be one of: ${validShellTypes.join(', ')}`);
67
- process.exit(1);
68
- }
68
+ throw error;
69
+ }
70
+ let value;
71
+ try {
72
+ value = await validateConfigValue(key, rawValue);
73
+ }
74
+ catch (error) {
75
+ if (isValidationError(error)) {
76
+ process.exit(1);
69
77
  }
78
+ throw error;
79
+ }
80
+ try {
70
81
  const config = await configManager.read();
71
- const updated = setNestedValue(config, key, parseValue(value));
82
+ const updated = setNestedValue(config, key, value);
72
83
  await configManager.write(updated);
73
84
  ui.success(`Configuration updated: ${key} = ${value}`);
74
85
  }
@@ -102,16 +113,6 @@ function setNestedValue(obj, path, value) {
102
113
  current[lastKey] = value;
103
114
  return result;
104
115
  }
105
- function parseValue(value) {
106
- if (value === 'true')
107
- return true;
108
- if (value === 'false')
109
- return false;
110
- const num = Number(value);
111
- if (!isNaN(num) && value !== '')
112
- return num;
113
- return value;
114
- }
115
116
  function createConfigListCommand() {
116
117
  const command = new Command('list');
117
118
  command.description('List all configuration values').action(async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/config/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,OAAO;SACJ,WAAW,CAAC,sBAAsB,CAAC;SACnC,UAAU,CAAC,sBAAsB,EAAE,CAAC;SACpC,UAAU,CAAC,sBAAsB,EAAE,CAAC;SACpC,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEzC,OAAO,OAAO,CAAC;AACjB,CAAC;AAOD,SAAS,sBAAsB;IAC7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,2BAA2B,CAAC;SACxC,QAAQ,CAAC,OAAO,EAAE,qEAAqE,CAAC;SACxF,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;QAE/B,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAE1C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,EAAE,CAAC,KAAK,CAAC,gCAAgC,GAAG,EAAE,CAAC,CAAC;gBAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAOD,SAAS,sBAAsB;IAC7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,2BAA2B,CAAC;SACxC,QAAQ,CAAC,OAAO,EAAE,qEAAqE,CAAC;SACxF,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;SAC1C,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,QAAgB,EAAE,EAAE;QAEjD,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,KAAgC,CAAC;QACrC,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnC,EAAE,CAAC,OAAO,CAAC,0BAA0B,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAKD,SAAS,cAAc,CAAC,GAAwC,EAAE,IAAY;IAC5E,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAC3B,CAAC,OAAgB,EAAE,GAAW,EAAE,EAAE;QAChC,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;YAC7D,OAAQ,OAAmC,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EACD,GAA8B,CAC/B,CAAC;AACJ,CAAC;AAKD,SAAS,cAAc,CAAC,GAAc,EAAE,IAAY,EAAE,KAAc;IAClE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAc,CAAC;IAC5D,IAAI,OAAO,GAA4B,MAA4C,CAAC;IAEpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACpB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAA4B,CAAC;IACpD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;IACvC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;IACzB,OAAO,MAAM,CAAC;AAChB,CAAC;AAKD,SAAS,uBAAuB;IAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;QACrE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;YAE1C,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC1C,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnB,MAAM,SAAS,GAA4B,EAAE,CAAC;gBAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI;oBAAE,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK;oBAAE,SAAS,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAED,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAC1B,MAAM,SAAS,GAA4B;gBACzC,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;gBACrC,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;aACpC,CAAC;YACF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBAC9B,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACrF,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACpB,EAAE,CAAC,QAAQ,CAAC;gBACV,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC3B,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;aAChC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC3B,MAAM,YAAY,GAA4B;gBAC5C,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC;gBACxC,CAAC,aAAa,EAAE,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC;aACjD,CAAC;YACF,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;gBACnC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC;gBACxC,YAAY,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9E,CAAC;YACD,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,EAAE,CAAC,OAAO,EAAE,CAAC;YACb,EAAE,CAAC,KAAK,CAAC,gBAAgB,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAC1D,EAAE,CAAC,KAAK,CACN,qFAAqF,CACtF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/git/pull/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AActD,wBAAgB,iBAAiB,IAAI,OAAO,CA6J3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/git/pull/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAiBtD,wBAAgB,iBAAiB,IAAI,OAAO,CA6J3C"}
@@ -1,7 +1,10 @@
1
1
  import { Command } from '@commander-js/extra-typings';
2
2
  import { execa } from 'execa';
3
+ import inquirer from 'inquirer';
3
4
  import { logger } from '../../../utils/logger.js';
4
5
  import { ui } from '../../../utils/ui.js';
6
+ import { validate, isValidationError } from '../../../utils/validation.js';
7
+ import { gitPullOptionsSchema, deletedBranchActionSchema } from '../../../types/schemas.js';
5
8
  export function createPullCommand() {
6
9
  const command = new Command('pull');
7
10
  command
@@ -9,6 +12,16 @@ export function createPullCommand() {
9
12
  .option('--rebase', 'force rebase strategy')
10
13
  .option('--no-rebase', 'prevent automatic rebase fallback')
11
14
  .action(async (options) => {
15
+ let validatedOptions;
16
+ try {
17
+ validatedOptions = validate(gitPullOptionsSchema, options, 'git pull options');
18
+ }
19
+ catch (error) {
20
+ if (isValidationError(error)) {
21
+ process.exit(1);
22
+ }
23
+ throw error;
24
+ }
12
25
  const spinner = ui.spinner('Pulling from remote');
13
26
  let branchName = '';
14
27
  try {
@@ -27,7 +40,7 @@ export function createPullCommand() {
27
40
  process.exit(1);
28
41
  }
29
42
  spinner.start();
30
- if (options.rebase) {
43
+ if (validatedOptions.rebase) {
31
44
  logger.debug('Using rebase strategy (user specified)');
32
45
  spinner.text = 'Pulling with rebase...';
33
46
  const { stdout } = await execa('git', ['pull', '--rebase'], {
@@ -56,7 +69,7 @@ export function createPullCommand() {
56
69
  if ((errorMessage.includes('non-fast-forward') ||
57
70
  errorMessage.includes('divergent branches') ||
58
71
  errorMessage.includes('cannot fast-forward')) &&
59
- !options.noRebase) {
72
+ !validatedOptions.noRebase) {
60
73
  logger.debug('Normal pull failed, attempting rebase...');
61
74
  spinner.text = 'Cannot fast-forward, retrying with rebase...';
62
75
  const { stdout } = await execa('git', ['pull', '--rebase'], {
@@ -85,16 +98,8 @@ export function createPullCommand() {
85
98
  }
86
99
  if (errorMessage.includes('no such ref was fetched') ||
87
100
  errorMessage.includes('but no such ref was fetched')) {
88
- ui.error('Remote branch no longer exists!');
89
- ui.warn(`Your local branch "${branchName}" is tracking a remote branch that has been deleted`);
90
- console.log('');
91
- ui.info('To fix this, you can:');
92
- ui.list([
93
- `Switch to a different branch: git checkout main`,
94
- `Set a new upstream: git branch --set-upstream-to=origin/${branchName}`,
95
- `Delete this local branch if no longer needed: git branch -d ${branchName}`,
96
- ]);
97
- process.exit(1);
101
+ await handleDeletedRemoteBranch(branchName);
102
+ return;
98
103
  }
99
104
  if (errorMessage.includes('conflict')) {
100
105
  ui.error('Merge conflicts detected!');
@@ -126,4 +131,148 @@ export function createPullCommand() {
126
131
  });
127
132
  return command;
128
133
  }
134
+ async function handleDeletedRemoteBranch(branchName) {
135
+ ui.error('Remote branch no longer exists!');
136
+ ui.warn(`Your local branch "${branchName}" is tracking a remote branch that has been deleted`);
137
+ console.log('');
138
+ const { action } = await inquirer.prompt([
139
+ {
140
+ type: 'list',
141
+ name: 'action',
142
+ message: 'How would you like to resolve this?',
143
+ default: 'switch_main_delete',
144
+ choices: [
145
+ {
146
+ name: 'Switch to main and delete this branch (recommended)',
147
+ value: 'switch_main_delete',
148
+ },
149
+ {
150
+ name: 'Switch to main and keep this branch',
151
+ value: 'switch_main_keep',
152
+ },
153
+ {
154
+ name: `Set a new upstream for "${branchName}"`,
155
+ value: 'set_upstream',
156
+ },
157
+ {
158
+ name: 'Cancel (no changes)',
159
+ value: 'cancel',
160
+ },
161
+ ],
162
+ },
163
+ ]);
164
+ const validatedAction = deletedBranchActionSchema.parse(action);
165
+ switch (validatedAction) {
166
+ case 'switch_main_delete':
167
+ await switchToMainAndDelete(branchName);
168
+ break;
169
+ case 'switch_main_keep':
170
+ await switchToMain(branchName);
171
+ break;
172
+ case 'set_upstream':
173
+ await setNewUpstream(branchName);
174
+ break;
175
+ case 'cancel':
176
+ ui.muted('Operation cancelled. No changes were made.');
177
+ process.exit(0);
178
+ }
179
+ }
180
+ async function switchToMainAndDelete(branchName) {
181
+ try {
182
+ const mainBranch = await findDefaultBranch();
183
+ await execa('git', ['checkout', mainBranch]);
184
+ ui.success(`Switched to ${mainBranch} branch`);
185
+ try {
186
+ await execa('git', ['branch', '-d', branchName]);
187
+ ui.success(`Deleted branch "${branchName}"`);
188
+ }
189
+ catch (error) {
190
+ const errorMessage = error instanceof Error ? error.message : String(error);
191
+ if (errorMessage.includes('not fully merged')) {
192
+ ui.warn(`Branch "${branchName}" has unmerged changes`);
193
+ const { forceDelete } = await inquirer.prompt([
194
+ {
195
+ type: 'confirm',
196
+ name: 'forceDelete',
197
+ message: 'Force delete anyway? (This will lose any uncommitted changes)',
198
+ default: false,
199
+ },
200
+ ]);
201
+ if (forceDelete) {
202
+ await execa('git', ['branch', '-D', branchName]);
203
+ ui.success(`Force deleted branch "${branchName}"`);
204
+ ui.warn('Any uncommitted changes in that branch have been lost');
205
+ }
206
+ else {
207
+ ui.info(`Branch "${branchName}" was preserved`);
208
+ ui.muted(`You can delete it later with: git branch -D ${branchName}`);
209
+ }
210
+ }
211
+ else {
212
+ throw error;
213
+ }
214
+ }
215
+ }
216
+ catch (error) {
217
+ ui.error('Failed to switch branches or delete branch');
218
+ ui.muted(error instanceof Error ? error.message : String(error));
219
+ process.exit(1);
220
+ }
221
+ }
222
+ async function switchToMain(branchName) {
223
+ try {
224
+ const mainBranch = await findDefaultBranch();
225
+ await execa('git', ['checkout', mainBranch]);
226
+ ui.success(`Switched to ${mainBranch} branch`);
227
+ ui.info(`Branch "${branchName}" was preserved`);
228
+ ui.muted(`You can switch back with: git checkout ${branchName}`);
229
+ }
230
+ catch (error) {
231
+ ui.error('Failed to switch to main branch');
232
+ ui.muted(error instanceof Error ? error.message : String(error));
233
+ process.exit(1);
234
+ }
235
+ }
236
+ async function setNewUpstream(branchName) {
237
+ try {
238
+ await execa('git', ['branch', '--set-upstream-to', `origin/${branchName}`, branchName]);
239
+ ui.success(`Set upstream for "${branchName}" to origin/${branchName}`);
240
+ ui.info('You can now try pulling again');
241
+ }
242
+ catch (error) {
243
+ const errorMessage = error instanceof Error ? error.message : String(error);
244
+ if (errorMessage.includes('does not exist')) {
245
+ ui.error(`Remote branch origin/${branchName} does not exist`);
246
+ ui.warn('You may need to push your branch first:');
247
+ ui.muted(` git push -u origin ${branchName}`);
248
+ }
249
+ else {
250
+ ui.error('Failed to set upstream branch');
251
+ ui.muted(errorMessage);
252
+ }
253
+ process.exit(1);
254
+ }
255
+ }
256
+ async function findDefaultBranch() {
257
+ try {
258
+ await execa('git', ['show-ref', '--verify', '--quiet', 'refs/heads/main']);
259
+ return 'main';
260
+ }
261
+ catch {
262
+ try {
263
+ await execa('git', ['show-ref', '--verify', '--quiet', 'refs/heads/master']);
264
+ return 'master';
265
+ }
266
+ catch {
267
+ try {
268
+ const { stdout } = await execa('git', ['symbolic-ref', 'refs/remotes/origin/HEAD']);
269
+ return stdout.replace('refs/remotes/origin/', '').trim();
270
+ }
271
+ catch {
272
+ ui.warn('Could not determine default branch, using "main"');
273
+ return 'main';
274
+ }
275
+ }
276
+ }
277
+ }
129
278
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/git/pull/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/git/pull/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/git/push/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAOtD,wBAAgB,iBAAiB,IAAI,OAAO,CAsJ3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/git/push/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,wBAAgB,iBAAiB,IAAI,OAAO,CAgK3C"}
@@ -3,6 +3,8 @@ import { execa } from 'execa';
3
3
  import inquirer from 'inquirer';
4
4
  import { logger } from '../../../utils/logger.js';
5
5
  import { ui } from '../../../utils/ui.js';
6
+ import { validate, isValidationError } from '../../../utils/validation.js';
7
+ import { gitPushOptionsSchema } from '../../../types/schemas.js';
6
8
  export function createPushCommand() {
7
9
  const command = new Command('push');
8
10
  command
@@ -12,6 +14,16 @@ export function createPushCommand() {
12
14
  .option('--dry-run', 'show what would be pushed without actually pushing')
13
15
  .option('--tags', 'push tags along with commits')
14
16
  .action(async (options) => {
17
+ let validatedOptions;
18
+ try {
19
+ validatedOptions = validate(gitPushOptionsSchema, options, 'git push options');
20
+ }
21
+ catch (error) {
22
+ if (isValidationError(error)) {
23
+ process.exit(1);
24
+ }
25
+ throw error;
26
+ }
15
27
  let branchName = '';
16
28
  const spinner = ui.spinner('Pushing to remote');
17
29
  try {
@@ -42,11 +54,11 @@ export function createPushCommand() {
42
54
  ui.step('Proceeding with push to main branch');
43
55
  }
44
56
  spinner.start();
45
- logger.debug(`Force push: ${options.force || false}`);
46
- logger.debug(`Set upstream: ${options.setUpstream || 'none'}`);
47
- logger.debug(`Dry run: ${options.dryRun || false}`);
48
- logger.debug(`Push tags: ${options.tags || false}`);
49
- if (options.dryRun) {
57
+ logger.debug(`Force push: ${validatedOptions.force || false}`);
58
+ logger.debug(`Set upstream: ${validatedOptions.setUpstream || 'none'}`);
59
+ logger.debug(`Dry run: ${validatedOptions.dryRun || false}`);
60
+ logger.debug(`Push tags: ${validatedOptions.tags || false}`);
61
+ if (validatedOptions.dryRun) {
50
62
  spinner.stop();
51
63
  ui.warn('Dry run mode - no changes will be pushed');
52
64
  ui.info(`Would push from branch: ${branchName}`);
@@ -70,14 +82,14 @@ export function createPushCommand() {
70
82
  return;
71
83
  }
72
84
  const pushArgs = ['push'];
73
- if (options.force) {
85
+ if (validatedOptions.force) {
74
86
  pushArgs.push('--force');
75
87
  }
76
- if (options.tags) {
88
+ if (validatedOptions.tags) {
77
89
  pushArgs.push('--tags');
78
90
  }
79
- if (options.setUpstream) {
80
- pushArgs.push('-u', 'origin', options.setUpstream);
91
+ if (validatedOptions.setUpstream) {
92
+ pushArgs.push('-u', 'origin', validatedOptions.setUpstream);
81
93
  }
82
94
  else {
83
95
  pushArgs.push('origin', branchName);
@@ -91,8 +103,8 @@ export function createPushCommand() {
91
103
  if (pushResult.stdout) {
92
104
  ui.muted(pushResult.stdout);
93
105
  }
94
- if (options.setUpstream) {
95
- ui.info(`Set upstream branch: ${options.setUpstream}`);
106
+ if (validatedOptions.setUpstream) {
107
+ ui.info(`Set upstream branch: ${validatedOptions.setUpstream}`);
96
108
  }
97
109
  }
98
110
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/git/push/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/git/push/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAWtD,wBAAgB,iBAAiB,IAAI,OAAO,CAmK3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAatD,wBAAgB,iBAAiB,IAAI,OAAO,CA6K3C"}
@@ -2,6 +2,8 @@ import { Command } from '@commander-js/extra-typings';
2
2
  import inquirer from 'inquirer';
3
3
  import { logger } from '../../utils/logger.js';
4
4
  import { ui } from '../../utils/ui.js';
5
+ import { validate, isValidationError } from '../../utils/validation.js';
6
+ import { initOptionsSchema } from '../../types/schemas.js';
5
7
  import { configManager } from '../../utils/config.js';
6
8
  import { GlobalInstaller } from '../../utils/installer.js';
7
9
  import { ZshIntegration } from '../../utils/shell.js';
@@ -14,6 +16,16 @@ export function createInitCommand() {
14
16
  .option('--force', 'force reconfiguration if already initialized')
15
17
  .option('--skip-install', 'skip global installation (configuration only)')
16
18
  .action(async (options) => {
19
+ let validatedOptions;
20
+ try {
21
+ validatedOptions = validate(initOptionsSchema, options, 'init options');
22
+ }
23
+ catch (error) {
24
+ if (isValidationError(error)) {
25
+ process.exit(1);
26
+ }
27
+ throw error;
28
+ }
17
29
  const spinner = ui.spinner('Checking current setup');
18
30
  spinner.start();
19
31
  try {
@@ -22,7 +34,7 @@ export function createInitCommand() {
22
34
  const isInitialized = await configManager.isInitialized();
23
35
  const installStatus = await installer.getStatus();
24
36
  spinner.stop();
25
- if (isInitialized && !options.force) {
37
+ if (isInitialized && !validatedOptions.force) {
26
38
  const config = await configManager.read();
27
39
  ui.info(`Neo CLI is already initialized (v${config.installation.version})`);
28
40
  ui.info(`Config location: ${configManager.getConfigFile()}`);
@@ -53,7 +65,7 @@ export function createInitCommand() {
53
65
  }
54
66
  }
55
67
  }
56
- if (!options.skipInstall) {
68
+ if (!validatedOptions.skipInstall) {
57
69
  const installSpinner = ui.spinner('Installing Neo CLI globally');
58
70
  installSpinner.start();
59
71
  if (!installStatus.pnpmInstalled) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/init/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/update/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AA6GtD,wBAAgB,mBAAmB,IAAI,OAAO,CAqI7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/update/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAgHtD,wBAAgB,mBAAmB,IAAI,OAAO,CA+I7C"}
@@ -6,6 +6,8 @@ import { fileURLToPath } from 'url';
6
6
  import { dirname, join } from 'path';
7
7
  import { logger } from '../../utils/logger.js';
8
8
  import { ui } from '../../utils/ui.js';
9
+ import { validate, isValidationError } from '../../utils/validation.js';
10
+ import { updateOptionsSchema } from '../../types/schemas.js';
9
11
  const __filename = fileURLToPath(import.meta.url);
10
12
  const __dirname = dirname(__filename);
11
13
  function getCurrentVersion() {
@@ -85,6 +87,16 @@ export function createUpdateCommand() {
85
87
  .option('--check-only', 'only check for updates without installing')
86
88
  .option('--force', 'force update even if already on latest version')
87
89
  .action(async (options) => {
90
+ let validatedOptions;
91
+ try {
92
+ validatedOptions = validate(updateOptionsSchema, options, 'update options');
93
+ }
94
+ catch (error) {
95
+ if (isValidationError(error)) {
96
+ process.exit(1);
97
+ }
98
+ throw error;
99
+ }
88
100
  try {
89
101
  const currentVersion = getCurrentVersion();
90
102
  logger.debug(`Current version: ${currentVersion}`);
@@ -104,14 +116,14 @@ export function createUpdateCommand() {
104
116
  if (comparison === 0) {
105
117
  spinner.succeed('You are already on the latest version!');
106
118
  ui.info(`Current version: ${currentVersion}`);
107
- if (!options.force) {
119
+ if (!validatedOptions.force) {
108
120
  return;
109
121
  }
110
122
  ui.warn('--force flag detected, proceeding with reinstall');
111
123
  }
112
124
  else if (comparison < 0) {
113
125
  spinner.warn(`You are on a newer version (${currentVersion}) than the latest stable (${latestVersion})`);
114
- if (!options.force && !options.checkOnly) {
126
+ if (!validatedOptions.force && !validatedOptions.checkOnly) {
115
127
  const { shouldDowngrade } = await inquirer.prompt([
116
128
  {
117
129
  type: 'confirm',
@@ -125,7 +137,7 @@ export function createUpdateCommand() {
125
137
  return;
126
138
  }
127
139
  }
128
- else if (!options.force) {
140
+ else if (!validatedOptions.force) {
129
141
  return;
130
142
  }
131
143
  }
@@ -136,13 +148,13 @@ export function createUpdateCommand() {
136
148
  ['Latest version', latestVersion],
137
149
  ]);
138
150
  }
139
- if (options.checkOnly) {
151
+ if (validatedOptions.checkOnly) {
140
152
  if (comparison > 0) {
141
153
  ui.muted('Run neo update to install the latest version');
142
154
  }
143
155
  return;
144
156
  }
145
- if (!options.force && comparison !== 0) {
157
+ if (!validatedOptions.force && comparison !== 0) {
146
158
  const { confirm } = await inquirer.prompt([
147
159
  {
148
160
  type: 'confirm',
@@ -162,7 +174,7 @@ export function createUpdateCommand() {
162
174
  updateSpinner.text = `Updating via ${packageManager}...`;
163
175
  logger.debug(`Using package manager: ${packageManager}`);
164
176
  try {
165
- await executeUpdate(packageManager, options.force || false);
177
+ await executeUpdate(packageManager, validatedOptions.force || false);
166
178
  updateSpinner.succeed(`Successfully updated to version ${latestVersion}!`);
167
179
  ui.muted('Run neo --version to verify the installation');
168
180
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/update/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/update/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { z } from 'zod';
2
+ export declare const baseOptionsSchema: z.ZodObject<{
3
+ verbose: z.ZodOptional<z.ZodBoolean>;
4
+ config: z.ZodOptional<z.ZodString>;
5
+ color: z.ZodOptional<z.ZodBoolean>;
6
+ banner: z.ZodOptional<z.ZodBoolean>;
7
+ }, z.core.$strip>;
8
+ export declare const initOptionsSchema: z.ZodObject<{
9
+ verbose: z.ZodOptional<z.ZodBoolean>;
10
+ config: z.ZodOptional<z.ZodString>;
11
+ color: z.ZodOptional<z.ZodBoolean>;
12
+ banner: z.ZodOptional<z.ZodBoolean>;
13
+ force: z.ZodOptional<z.ZodBoolean>;
14
+ skipInstall: z.ZodOptional<z.ZodBoolean>;
15
+ }, z.core.$strip>;
16
+ export declare const gitPushOptionsSchema: z.ZodObject<{
17
+ verbose: z.ZodOptional<z.ZodBoolean>;
18
+ config: z.ZodOptional<z.ZodString>;
19
+ color: z.ZodOptional<z.ZodBoolean>;
20
+ banner: z.ZodOptional<z.ZodBoolean>;
21
+ dryRun: z.ZodOptional<z.ZodBoolean>;
22
+ force: z.ZodOptional<z.ZodBoolean>;
23
+ setUpstream: z.ZodOptional<z.ZodString>;
24
+ tags: z.ZodOptional<z.ZodBoolean>;
25
+ }, z.core.$strip>;
26
+ export declare const gitPullOptionsSchema: z.ZodObject<{
27
+ verbose: z.ZodOptional<z.ZodBoolean>;
28
+ config: z.ZodOptional<z.ZodString>;
29
+ color: z.ZodOptional<z.ZodBoolean>;
30
+ banner: z.ZodOptional<z.ZodBoolean>;
31
+ rebase: z.ZodOptional<z.ZodBoolean>;
32
+ noRebase: z.ZodOptional<z.ZodBoolean>;
33
+ }, z.core.$strip>;
34
+ export declare const deletedBranchActionSchema: z.ZodEnum<{
35
+ switch_main_delete: "switch_main_delete";
36
+ switch_main_keep: "switch_main_keep";
37
+ set_upstream: "set_upstream";
38
+ cancel: "cancel";
39
+ }>;
40
+ export declare const updateOptionsSchema: z.ZodObject<{
41
+ verbose: z.ZodOptional<z.ZodBoolean>;
42
+ config: z.ZodOptional<z.ZodString>;
43
+ color: z.ZodOptional<z.ZodBoolean>;
44
+ banner: z.ZodOptional<z.ZodBoolean>;
45
+ checkOnly: z.ZodOptional<z.ZodBoolean>;
46
+ force: z.ZodOptional<z.ZodBoolean>;
47
+ }, z.core.$strip>;
48
+ export declare const configKeySchema: z.ZodString;
49
+ export declare const configValueSchema: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
50
+ export declare const bannerValueSchema: z.ZodEnum<{
51
+ full: "full";
52
+ compact: "compact";
53
+ none: "none";
54
+ }>;
55
+ export declare const themeValueSchema: z.ZodEnum<{
56
+ dark: "dark";
57
+ light: "light";
58
+ auto: "auto";
59
+ }>;
60
+ export declare const shellTypeSchema: z.ZodEnum<{
61
+ zsh: "zsh";
62
+ bash: "bash";
63
+ fish: "fish";
64
+ }>;
65
+ export declare const aliasSetupOptionsSchema: z.ZodObject<{
66
+ verbose: z.ZodOptional<z.ZodBoolean>;
67
+ config: z.ZodOptional<z.ZodString>;
68
+ color: z.ZodOptional<z.ZodBoolean>;
69
+ banner: z.ZodOptional<z.ZodBoolean>;
70
+ force: z.ZodOptional<z.ZodBoolean>;
71
+ enable: z.ZodOptional<z.ZodBoolean>;
72
+ disable: z.ZodOptional<z.ZodBoolean>;
73
+ }, z.core.$strip>;
74
+ export type BaseOptions = z.infer<typeof baseOptionsSchema>;
75
+ export type InitOptions = z.infer<typeof initOptionsSchema>;
76
+ export type GitPushOptions = z.infer<typeof gitPushOptionsSchema>;
77
+ export type GitPullOptions = z.infer<typeof gitPullOptionsSchema>;
78
+ export type UpdateOptions = z.infer<typeof updateOptionsSchema>;
79
+ export type ConfigKey = z.infer<typeof configKeySchema>;
80
+ export type ConfigValue = z.infer<typeof configValueSchema>;
81
+ export type BannerValue = z.infer<typeof bannerValueSchema>;
82
+ export type ThemeValue = z.infer<typeof themeValueSchema>;
83
+ export type ShellType = z.infer<typeof shellTypeSchema>;
84
+ export type AliasSetupOptions = z.infer<typeof aliasSetupOptionsSchema>;
85
+ export type DeletedBranchAction = z.infer<typeof deletedBranchActionSchema>;
86
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,56 @@
1
+ import { z } from 'zod';
2
+ export const baseOptionsSchema = z.object({
3
+ verbose: z.boolean().optional(),
4
+ config: z.string().optional(),
5
+ color: z.boolean().optional(),
6
+ banner: z.boolean().optional(),
7
+ });
8
+ export const initOptionsSchema = baseOptionsSchema.extend({
9
+ force: z.boolean().optional(),
10
+ skipInstall: z.boolean().optional(),
11
+ });
12
+ export const gitPushOptionsSchema = baseOptionsSchema.extend({
13
+ dryRun: z.boolean().optional(),
14
+ force: z.boolean().optional(),
15
+ setUpstream: z
16
+ .string()
17
+ .min(1, 'Branch name cannot be empty')
18
+ .regex(/^[a-zA-Z0-9/._-]+$/, 'Invalid branch name format')
19
+ .optional(),
20
+ tags: z.boolean().optional(),
21
+ });
22
+ export const gitPullOptionsSchema = baseOptionsSchema.extend({
23
+ rebase: z.boolean().optional(),
24
+ noRebase: z.boolean().optional(),
25
+ });
26
+ export const deletedBranchActionSchema = z.enum(['switch_main_delete', 'switch_main_keep', 'set_upstream', 'cancel'], {
27
+ message: 'Must be one of: switch_main_delete, switch_main_keep, set_upstream, cancel',
28
+ });
29
+ export const updateOptionsSchema = baseOptionsSchema.extend({
30
+ checkOnly: z.boolean().optional(),
31
+ force: z.boolean().optional(),
32
+ });
33
+ export const configKeySchema = z
34
+ .string()
35
+ .min(1, 'Configuration key cannot be empty')
36
+ .regex(/^[a-zA-Z0-9._-]+$/, 'Invalid configuration key format');
37
+ export const configValueSchema = z.union([
38
+ z.string().min(1, 'Configuration value cannot be empty'),
39
+ z.number(),
40
+ z.boolean(),
41
+ ]);
42
+ export const bannerValueSchema = z.enum(['full', 'compact', 'none'], {
43
+ message: 'Banner must be one of: full, compact, none',
44
+ });
45
+ export const themeValueSchema = z.enum(['dark', 'light', 'auto'], {
46
+ message: 'Theme must be one of: dark, light, auto',
47
+ });
48
+ export const shellTypeSchema = z.enum(['zsh', 'bash', 'fish'], {
49
+ message: 'Shell type must be one of: zsh, bash, fish',
50
+ });
51
+ export const aliasSetupOptionsSchema = baseOptionsSchema.extend({
52
+ force: z.boolean().optional(),
53
+ enable: z.boolean().optional(),
54
+ disable: z.boolean().optional(),
55
+ });
56
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/types/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IACxD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAC3D,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,6BAA6B,CAAC;SACrC,KAAK,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;SACzD,QAAQ,EAAE;IACb,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAC3D,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAC7C,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,QAAQ,CAAC,EACpE;IACE,OAAO,EAAE,4EAA4E;CACtF,CACF,CAAC;AAKF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAC1D,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAMH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,EAAE,mCAAmC,CAAC;KAC3C,KAAK,CAAC,mBAAmB,EAAE,kCAAkC,CAAC,CAAC;AAMlE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC;IACvC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qCAAqC,CAAC;IACxD,CAAC,CAAC,MAAM,EAAE;IACV,CAAC,CAAC,OAAO,EAAE;CACZ,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE;IACnE,OAAO,EAAE,4CAA4C;CACtD,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE;IAChE,OAAO,EAAE,yCAAyC;CACnD,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;IAC7D,OAAO,EAAE,4CAA4C;CACtD,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAC9D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ export declare class ValidationError extends Error {
3
+ readonly errors: Array<{
4
+ path: string;
5
+ message: string;
6
+ }>;
7
+ constructor(message: string, errors: Array<{
8
+ path: string;
9
+ message: string;
10
+ }>);
11
+ }
12
+ export declare function validate<T extends z.ZodTypeAny>(schema: T, data: unknown, context?: string): z.infer<T>;
13
+ export declare function validateArgument<T extends z.ZodTypeAny>(schema: T, value: unknown, name: string): z.infer<T>;
14
+ export declare function validateConfigValue(key: string, value: string): Promise<string | number | boolean>;
15
+ export declare function isValidationError(error: unknown): error is ValidationError;
16
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;gBADhE,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAKnE;AAgBD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAC7C,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,MAAgB,GACxB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAyBZ;AAgBD,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EACrD,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,GACX,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAYZ;AAgBD,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CA2BpC;AAQD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E"}
@@ -0,0 +1,65 @@
1
+ import { ui } from './ui.js';
2
+ export class ValidationError extends Error {
3
+ errors;
4
+ constructor(message, errors) {
5
+ super(message);
6
+ this.errors = errors;
7
+ this.name = 'ValidationError';
8
+ }
9
+ }
10
+ export function validate(schema, data, context = 'input') {
11
+ const result = schema.safeParse(data);
12
+ if (!result.success) {
13
+ const errors = result.error.issues.map((err) => ({
14
+ path: err.path.join('.') || 'value',
15
+ message: err.message,
16
+ }));
17
+ ui.error(`Invalid ${context}`);
18
+ console.log('');
19
+ for (const error of errors) {
20
+ if (error.path === 'value') {
21
+ ui.warn(`✖ ${error.message}`);
22
+ }
23
+ else {
24
+ ui.warn(`✖ ${error.path}: ${error.message}`);
25
+ }
26
+ }
27
+ throw new ValidationError(`Invalid ${context}`, errors);
28
+ }
29
+ return result.data;
30
+ }
31
+ export function validateArgument(schema, value, name) {
32
+ const result = schema.safeParse(value);
33
+ if (!result.success) {
34
+ const error = result.error.issues[0];
35
+ if (error) {
36
+ ui.error(`Invalid ${name}: ${error.message}`);
37
+ throw new ValidationError(`Invalid ${name}`, [{ path: name, message: error.message }]);
38
+ }
39
+ }
40
+ return result.data;
41
+ }
42
+ export async function validateConfigValue(key, value) {
43
+ const { bannerValueSchema, themeValueSchema, shellTypeSchema } = await import('../types/schemas.js');
44
+ if (key === 'preferences.banner') {
45
+ return validateArgument(bannerValueSchema, value, `${key} value`);
46
+ }
47
+ if (key === 'preferences.theme') {
48
+ return validateArgument(themeValueSchema, value, `${key} value`);
49
+ }
50
+ if (key === 'shell.type') {
51
+ return validateArgument(shellTypeSchema, value, `${key} value`);
52
+ }
53
+ if (value === 'true')
54
+ return true;
55
+ if (value === 'false')
56
+ return false;
57
+ const num = Number(value);
58
+ if (!isNaN(num) && value !== '')
59
+ return num;
60
+ return value;
61
+ }
62
+ export function isValidationError(error) {
63
+ return error instanceof ValidationError;
64
+ }
65
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.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.6.1",
3
+ "version": "0.7.0",
4
4
  "description": "Modern CLI toolkit with intelligent git workflows and configuration management",
5
5
  "author": "Jacek Radko",
6
6
  "license": "MIT",
@@ -41,7 +41,8 @@
41
41
  "execa": "^9.6.0",
42
42
  "inquirer": "^12.9.6",
43
43
  "ora": "^9.0.0",
44
- "which": "^5.0.0"
44
+ "which": "^5.0.0",
45
+ "zod": "^4.1.12"
45
46
  },
46
47
  "devDependencies": {
47
48
  "@changesets/changelog-github": "^0.5.1",