cli-nano 1.1.0 → 1.1.1

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/dist/index.d.ts CHANGED
@@ -1,9 +1,4 @@
1
- import { ArgValueType, ArgsResult, ArgumentOptions, CommandOptions, Config, OptionsToObject, PositionalArgument, PositionalsToObject } from "./interfaces-CqSzltdU.js";
2
-
3
- //#region src/index.d.ts
4
- declare function parseArgs<C extends Config>(config: C): ArgsResult<C>;
5
- //# sourceMappingURL=index.d.ts.map
6
-
7
- //#endregion
8
- export { ArgValueType, ArgsResult, ArgumentOptions, CommandOptions, Config, OptionsToObject, PositionalArgument, PositionalsToObject, parseArgs };
1
+ import type { ArgsResult, Config } from './interfaces.js';
2
+ export type * from './interfaces.js';
3
+ export declare function parseArgs<C extends Config>(config: C): ArgsResult<C>;
9
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":";;;iBASgB,oBAAoB,gBAAgB,IAAI,WAAW;AAAnE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE3E,mBAAmB,iBAAiB,CAAC;AAOrC,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAgMpE"}
package/dist/index.js CHANGED
@@ -1,3 +1,255 @@
1
- import { parseArgs } from "./src-DQnZ842s.js";
2
-
3
- export { parseArgs };
1
+ const defaultOptions = {
2
+ help: { alias: 'h', description: 'Show help', type: 'boolean' },
3
+ version: { alias: 'v', description: 'Show version number', type: 'boolean' },
4
+ };
5
+ export function parseArgs(config) {
6
+ const { command, options, version } = config;
7
+ // Normalize args to support --option=value and -o=value
8
+ const args = process.argv.slice(2).flatMap(arg => {
9
+ if (/^--?\w[\w-]*=/.test(arg)) {
10
+ const [flag, ...rest] = arg.split('=');
11
+ return [flag, rest.join('=')];
12
+ }
13
+ return arg;
14
+ });
15
+ const result = {};
16
+ // Check for duplicate aliases
17
+ const aliasMap = new Map();
18
+ for (const [key, opt] of Object.entries(options)) {
19
+ if (opt.alias) {
20
+ if (aliasMap.has(opt.alias)) {
21
+ throw new Error(`Duplicate alias detected: "${opt.alias}" used for both "${aliasMap.get(opt.alias)}" and "${key}"`);
22
+ }
23
+ aliasMap.set(opt.alias, key);
24
+ }
25
+ }
26
+ // Handle --help and --version before anything else
27
+ if (args.includes('--help') || args.includes('-h')) {
28
+ printHelp(config);
29
+ process.exit(0);
30
+ }
31
+ if ((version && args.includes('--version')) || args.includes('-v')) {
32
+ console.log(version || 'No version specified');
33
+ process.exit(0);
34
+ }
35
+ // Validate: required positionals must come before optional ones
36
+ const positionals = command.positionals ?? [];
37
+ let foundOptional = false;
38
+ for (const pos of positionals) {
39
+ if (!pos.required) {
40
+ foundOptional = true;
41
+ }
42
+ if (foundOptional && pos.required) {
43
+ throw new Error(`Invalid positional argument configuration: required positional "${pos.name}" cannot follow optional positional(s).`);
44
+ }
45
+ }
46
+ // Handle positional arguments
47
+ let argIndex = 0;
48
+ const nonOptionArgs = [];
49
+ while (argIndex < args.length && !args[argIndex].startsWith('-')) {
50
+ nonOptionArgs.push(args[argIndex]);
51
+ argIndex++;
52
+ }
53
+ let nonOptionIndex = 0;
54
+ for (let i = 0; i < positionals.length; i++) {
55
+ const pos = positionals[i];
56
+ if (pos.variadic) {
57
+ const remaining = positionals.length - (i + 1);
58
+ const values = nonOptionArgs.slice(nonOptionIndex, nonOptionArgs.length - remaining);
59
+ if (pos.required && values.length === 0) {
60
+ const usagePositionals = buildUsagePositionals(positionals);
61
+ throw new Error(`Missing required positional argument, i.e.: "${command.name} ${usagePositionals}"`);
62
+ }
63
+ result[pos.name] = !pos.required && values.length === 0 && pos.default !== undefined ? pos.default : values;
64
+ nonOptionIndex += values.length;
65
+ }
66
+ else {
67
+ const value = nonOptionArgs[nonOptionIndex];
68
+ // Check if there are enough args left for required positionals
69
+ const requiredLeft = positionals.slice(i).filter(p => p.required).length;
70
+ const argsLeft = nonOptionArgs.length - nonOptionIndex;
71
+ if (value !== undefined && (argsLeft > requiredLeft - (pos.required ? 1 : 0) || pos.required)) {
72
+ result[pos.name] = value;
73
+ nonOptionIndex++;
74
+ }
75
+ else if (!pos.required && pos.default !== undefined) {
76
+ result[pos.name] = pos.default;
77
+ }
78
+ else if (pos.required) {
79
+ const usagePositionals = buildUsagePositionals(positionals);
80
+ throw new Error(`Missing required positional argument, i.e.: "${command.name} ${usagePositionals}"`);
81
+ }
82
+ }
83
+ }
84
+ // Handle options
85
+ argIndex = 0;
86
+ const consumedArgs = new Set();
87
+ // Mark all nonOptionArgs indices as consumed for positionals
88
+ let tempNonOptionIndex = 0;
89
+ for (let i = 0; i < positionals.length; i++) {
90
+ const pos = positionals[i];
91
+ if (pos.variadic) {
92
+ const remaining = positionals.length - (i + 1);
93
+ const values = nonOptionArgs.slice(tempNonOptionIndex, nonOptionArgs.length - remaining);
94
+ for (let j = tempNonOptionIndex; j < tempNonOptionIndex + values.length; j++) {
95
+ consumedArgs.add(args.findIndex((a, idx) => !a.startsWith('-') && !consumedArgs.has(idx) && a === nonOptionArgs[j]));
96
+ }
97
+ tempNonOptionIndex += values.length;
98
+ }
99
+ else {
100
+ const value = nonOptionArgs[tempNonOptionIndex++];
101
+ consumedArgs.add(args.findIndex((a, idx) => !a.startsWith('-') && !consumedArgs.has(idx) && a === value));
102
+ }
103
+ }
104
+ while (argIndex < args.length) {
105
+ if (consumedArgs.has(argIndex)) {
106
+ argIndex++;
107
+ continue;
108
+ }
109
+ const argOrg = args[argIndex] || '';
110
+ let arg = argOrg;
111
+ let option;
112
+ let configKey;
113
+ if (argOrg.startsWith('-')) {
114
+ if (argOrg.startsWith('--')) {
115
+ arg = argOrg.slice(2);
116
+ [option, configKey] = findOption(options, arg);
117
+ }
118
+ else if (argOrg.startsWith('-')) {
119
+ arg = argOrg.slice(1);
120
+ [option, configKey] = findOption(options, arg);
121
+ }
122
+ // Handle negated boolean in both forms
123
+ if (!option) {
124
+ const isNegated = arg.startsWith('no-');
125
+ const optionName = isNegated ? arg.slice(3) : arg;
126
+ const camelOptionName = kebabToCamel(optionName);
127
+ option = options[optionName] || options[camelOptionName];
128
+ configKey = camelOptionName in options ? camelOptionName : optionName;
129
+ if (option?.type === 'boolean') {
130
+ if (result[optionName] !== undefined || result[camelOptionName] !== undefined) {
131
+ throw new Error('Providing same negated and truthy argument are not allowed');
132
+ }
133
+ result[configKey] = !isNegated;
134
+ argIndex++;
135
+ continue;
136
+ }
137
+ }
138
+ if (!option || !configKey) {
139
+ throw new Error(`Unknown CLI option: ${arg}`);
140
+ }
141
+ switch (option.type) {
142
+ case 'boolean':
143
+ if (result[configKey] !== undefined) {
144
+ throw new Error('Providing same negated and truthy argument are not allowed');
145
+ }
146
+ result[configKey] = !argOrg.startsWith('--no-') && !argOrg.startsWith('-no-');
147
+ break;
148
+ case 'number':
149
+ if (args[argIndex + 1] === undefined || args[argIndex + 1].startsWith('-')) {
150
+ throw new Error(`Missing value for option: ${configKey}`);
151
+ }
152
+ result[configKey] = Number(args[++argIndex]);
153
+ break;
154
+ case 'array': {
155
+ if (!result[configKey])
156
+ result[configKey] = [];
157
+ const arrayValue = args[++argIndex];
158
+ if (arrayValue === undefined || arrayValue.startsWith('-')) {
159
+ throw new Error(`Missing value for array option: ${configKey}`);
160
+ }
161
+ result[configKey].push(arrayValue);
162
+ break;
163
+ }
164
+ case 'string':
165
+ default:
166
+ if (args[argIndex + 1] === undefined || args[argIndex + 1].startsWith('-')) {
167
+ throw new Error(`Missing value for option: ${configKey}`);
168
+ }
169
+ result[configKey] = args[++argIndex];
170
+ break;
171
+ }
172
+ }
173
+ else {
174
+ throw new Error(`Unknown argument: ${arg}`);
175
+ }
176
+ argIndex++;
177
+ }
178
+ // After all parsing, assign any `default` CLI options when undefined
179
+ // and check for any missing `required` CLI options
180
+ Object.entries(options).forEach(([key, opt]) => {
181
+ if (result[key] === undefined && opt.default !== undefined) {
182
+ result[key] = opt.default;
183
+ }
184
+ if (opt.required && result[key] === undefined) {
185
+ const aliasStr = opt.alias ? `-${opt.alias}, ` : '';
186
+ throw new Error(`Missing required option: ${aliasStr}--${key}`);
187
+ }
188
+ });
189
+ return result;
190
+ }
191
+ /** Format a text to a fixed length, truncating and padding as needed. */
192
+ function formatHelpText(text, max) {
193
+ const truncated = text.length > max ? `${text.slice(0, max - 3)}...` : text;
194
+ return truncated.padEnd(max);
195
+ }
196
+ /** Build the usage string for positionals, e.g. "<input..> [output]" */
197
+ function buildUsagePositionals(positionals = []) {
198
+ return positionals
199
+ .map(p => {
200
+ const variadic = p.variadic ? '..' : '';
201
+ return p.required ? `<${p.name}${variadic}>` : `[${p.name}${variadic}]`;
202
+ })
203
+ .join(' ');
204
+ }
205
+ /** Format the option/argument type for help output */
206
+ function formatOptionType(type, variadic, required) {
207
+ const t = type || 'string';
208
+ const variadicStr = variadic ? '..' : '';
209
+ return required ? `<${t}${variadicStr}>` : `[${t}${variadicStr}]`;
210
+ }
211
+ /** Helper to find an option and its config key by argument name or alias. */
212
+ function findOption(options, arg) {
213
+ // Try all forms: as-is, kebab-to-camel, camel-to-kebab
214
+ const option = options[arg] || options[kebabToCamel(arg)] || options[camelToKebab(arg).replace(/-/g, '')];
215
+ if (option) {
216
+ const configKey = Object.keys(options).find(key => options[key] === option);
217
+ return [option, configKey];
218
+ }
219
+ // Try matching alias in all forms
220
+ for (const key of Object.keys(options)) {
221
+ const opt = options[key];
222
+ if (opt.alias && (opt.alias === arg || opt.alias === kebabToCamel(arg) || opt.alias === camelToKebab(arg))) {
223
+ return [opt, key];
224
+ }
225
+ }
226
+ return [undefined, undefined];
227
+ }
228
+ /** Print CLI help documentation to the screen */
229
+ function printHelp(config) {
230
+ const { command, options, version, helpOptLength = 20, helpDescLength = 65 } = config;
231
+ const usagePositionals = buildUsagePositionals(command.positionals);
232
+ console.log('Usage:');
233
+ console.log(` ${command.name} ${usagePositionals} [options] ${command.description}`);
234
+ console.log('\nArguments:');
235
+ command.positionals?.forEach(arg => {
236
+ console.log(` ${formatHelpText(arg.name, helpOptLength)}${formatHelpText(arg.description, helpDescLength)} ${formatOptionType(arg.type, arg.variadic, arg.required)}`);
237
+ });
238
+ console.log('\nOptions:');
239
+ for (const [key, option] of Object.entries({ ...options, ...defaultOptions })) {
240
+ const aliasStr = option.alias ? `-${option.alias}, ` : '';
241
+ if (!version && key === 'version') {
242
+ continue;
243
+ }
244
+ console.log(` ${aliasStr.padEnd(4)}--${formatHelpText(key, helpOptLength - 6)}${formatHelpText(option.description || '', helpDescLength)} ${formatOptionType(option.type, false, option.required)}`);
245
+ }
246
+ }
247
+ /** Utility to convert kebab-case to camelCase */
248
+ function kebabToCamel(str) {
249
+ return str.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
250
+ }
251
+ /** Utility to convert camelCase to kebab-case */
252
+ function camelToKebab(str) {
253
+ return str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
254
+ }
255
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,92 @@
1
- import { ArgValueType, ArgsResult, ArgumentOptions, CommandOptions, Config, OptionsToObject, PositionalArgument, PositionalsToObject } from "./interfaces-CqSzltdU.js";
2
- export { ArgValueType, ArgsResult, ArgumentOptions, CommandOptions, Config, OptionsToObject, PositionalArgument, PositionalsToObject };
1
+ export interface ArgumentOptions {
2
+ /** option type */
3
+ type?: 'string' | 'boolean' | 'number' | 'array';
4
+ /** description of the flag option */
5
+ description: string;
6
+ /** defaults to undefined, provide shorter alias as command options */
7
+ alias?: string;
8
+ /** default value for the option if not provided */
9
+ default?: any;
10
+ /** defaults to false, is the option required? */
11
+ required?: boolean;
12
+ }
13
+ export interface PositionalArgument {
14
+ /** positional argument name (it will be displayed in the help docs) */
15
+ name: string;
16
+ /** positional argument description */
17
+ description: string;
18
+ /** postional argument type */
19
+ type?: 'string' | 'boolean' | 'number' | 'array';
20
+ /** defaults to false, allows multiple values for this positional argument */
21
+ variadic?: boolean;
22
+ /** default value for the option if not provided */
23
+ default?: any;
24
+ /** defaults to false, is the positional argument required? */
25
+ required?: boolean;
26
+ }
27
+ export interface CommandOptions {
28
+ /** command name, used in the help docs */
29
+ name: string;
30
+ /** command description */
31
+ description: string;
32
+ /** list of positional arguments */
33
+ positionals?: readonly PositionalArgument[];
34
+ }
35
+ /** CLI options */
36
+ export interface Config {
37
+ /** CLI definition */
38
+ command: CommandOptions;
39
+ /** option name length (w/wo alias) shown in the help (defaults to 20) */
40
+ helpOptLength?: number;
41
+ /** description length shown in the help (defaults to 65) */
42
+ helpDescLength?: number;
43
+ /** CLI list of flag options */
44
+ options: Record<string, ArgumentOptions>;
45
+ /** CLI or package version */
46
+ version?: string;
47
+ }
48
+ /** Utility type to map ArgumentOptions/PositionalArgument to their value type */
49
+ export type ArgValueType<T extends {
50
+ type?: string;
51
+ default?: any;
52
+ variadic?: boolean;
53
+ required?: boolean;
54
+ }> = T['type'] extends 'boolean' ? boolean : T['type'] extends 'number' ? number : T['type'] extends 'array' ? T extends {
55
+ variadic: true;
56
+ } ? T extends {
57
+ required: true;
58
+ } ? [string, ...string[]] : string[] : string | string[] : T['type'] extends 'string' ? T extends {
59
+ variadic: true;
60
+ } ? T extends {
61
+ required: true;
62
+ } ? [string, ...string[]] : string[] : string : T['type'] extends undefined ? T extends {
63
+ variadic: true;
64
+ } ? T extends {
65
+ required: true;
66
+ } ? [string, ...string[]] : string[] : string : T['default'] extends undefined ? string : T['default'];
67
+ /** Helper to get required keys */
68
+ type RequiredKeys<T> = {
69
+ [K in keyof T]: T[K] extends {
70
+ required: true;
71
+ } ? K : never;
72
+ }[keyof T];
73
+ /** Helper to get optional keys */
74
+ type OptionalKeys<T> = Exclude<keyof T, RequiredKeys<T>>;
75
+ /** Map options record to an object type with required/optional properties */
76
+ export type OptionsToObject<T extends Record<string, any>> = {
77
+ [K in RequiredKeys<T>]: ArgValueType<T[K]>;
78
+ } & {
79
+ [K in OptionalKeys<T>]?: ArgValueType<T[K]>;
80
+ };
81
+ /** Map positionals array to an object type with required/optional properties */
82
+ export type PositionalsToObject<T extends readonly PositionalArgument[] | undefined> = T extends readonly [infer P, ...infer Rest] ? P extends PositionalArgument ? (P['required'] extends true ? {
83
+ [K in P['name']]: ArgValueType<P>;
84
+ } : {
85
+ [K in P['name']]?: ArgValueType<P>;
86
+ }) & PositionalsToObject<Rest extends readonly PositionalArgument[] ? Rest : []> : PositionalsToObject<Rest extends readonly PositionalArgument[] ? Rest : []> : {
87
+ [key: string]: never;
88
+ };
89
+ /** The full result type for parseArgs */
90
+ export type ArgsResult<C extends Config> = PositionalsToObject<C['command']['positionals']> & OptionsToObject<C['options']>;
91
+ export {};
92
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cli-nano",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "Mini command-line tool similar to `yargs` or `parseArgs` from Node.js that accepts positional arguments, flags and options.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1 +0,0 @@
1
- export { };