argv-flags 1.0.1 → 1.0.2
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/CHANGELOG.md +7 -0
- package/README.md +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +215 -138
- package/dist/index.js.map +1 -1
- package/package.json +13 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.0.2 - 2026-01-30
|
|
4
|
+
|
|
5
|
+
- Enforce schema boolean fields and allowNo/allowEmpty validation.
|
|
6
|
+
- Export the JSON Schema subpath and verify it in tests.
|
|
7
|
+
- Add fixture-driven contract tests plus additional claim falsification cases.
|
|
8
|
+
- Document array default append behavior.
|
|
9
|
+
|
|
3
10
|
## 1.0.1 - 2026-01-30
|
|
4
11
|
|
|
5
12
|
- Publish a formal JSON Schema for ParseResult and add JSON-safe conversion helper.
|
package/README.md
CHANGED
|
@@ -56,6 +56,7 @@ interface FlagSpec<T extends FlagType = FlagType> {
|
|
|
56
56
|
Notes:
|
|
57
57
|
- `flags` must include at least one flag token (`-x` or `--long`).
|
|
58
58
|
- `default` is cloned for arrays to avoid shared references.
|
|
59
|
+
- Array defaults act as a base; explicit array values append rather than replace.
|
|
59
60
|
- `allowNo` enables `--no-<flag>` for boolean specs (default: `true`).
|
|
60
61
|
- `allowEmpty` allows empty string/array values (default: `false`).
|
|
61
62
|
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEjE,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS,QAAQ,GAC3D,MAAM,GACN,CAAC,SAAS,SAAS,GAClB,OAAO,GACP,CAAC,SAAS,QAAQ,GACjB,MAAM,GACN,CAAC,SAAS,OAAO,GAChB,MAAM,EAAE,GACR,KAAK,CAAC;AAEZ,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IACtD,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,SAAS,GAClB,cAAc,GACd,eAAe,GACf,eAAe,GACf,UAAU,GACV,WAAW,GACX,aAAa,CAAC;AAEjB,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS;CACnD,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI;KAC5C,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO;CACvB,CAAC;AAEF,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM;IAC5C,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,EAAE,EAAE,OAAO,CAAC;CACZ;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;AAExE,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,EAAE,EAAE,OAAO,CAAC;CACZ;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ const isNumericValue = (value) => {
|
|
|
19
19
|
};
|
|
20
20
|
const cloneDefault = (value, type) => {
|
|
21
21
|
if (type === 'array' && Array.isArray(value)) {
|
|
22
|
-
return
|
|
22
|
+
return value.slice();
|
|
23
23
|
}
|
|
24
24
|
return value;
|
|
25
25
|
};
|
|
@@ -29,44 +29,104 @@ const splitInlineValue = (token) => {
|
|
|
29
29
|
return { flag: token };
|
|
30
30
|
return { flag: token.slice(0, eqIndex), value: token.slice(eqIndex + 1) };
|
|
31
31
|
};
|
|
32
|
+
const isStringArray = (value) => Array.isArray(value) && value.every((entry) => typeof entry === 'string');
|
|
33
|
+
const normalizeDefaultValue = (key, value, type) => {
|
|
34
|
+
if (value === undefined) {
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
switch (type) {
|
|
38
|
+
case 'string':
|
|
39
|
+
if (typeof value !== 'string') {
|
|
40
|
+
throw new TypeError(`Schema entry "${key}" default must be a string.`);
|
|
41
|
+
}
|
|
42
|
+
return value;
|
|
43
|
+
case 'boolean':
|
|
44
|
+
if (typeof value !== 'boolean') {
|
|
45
|
+
throw new TypeError(`Schema entry "${key}" default must be a boolean.`);
|
|
46
|
+
}
|
|
47
|
+
return value;
|
|
48
|
+
case 'number':
|
|
49
|
+
if (typeof value !== 'number' || !Number.isFinite(value)) {
|
|
50
|
+
throw new TypeError(`Schema entry "${key}" default must be a finite number.`);
|
|
51
|
+
}
|
|
52
|
+
return value;
|
|
53
|
+
case 'array':
|
|
54
|
+
if (!isStringArray(value)) {
|
|
55
|
+
throw new TypeError(`Schema entry "${key}" default must be a string array.`);
|
|
56
|
+
}
|
|
57
|
+
return value;
|
|
58
|
+
default: {
|
|
59
|
+
const exhaustive = type;
|
|
60
|
+
throw new TypeError(`Schema entry "${key}" has invalid type "${String(exhaustive)}".`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
32
64
|
const validateSchema = (schema) => {
|
|
33
|
-
if (
|
|
65
|
+
if (schema === null || typeof schema !== 'object' || Array.isArray(schema)) {
|
|
34
66
|
throw new TypeError('Schema must be an object.');
|
|
35
67
|
}
|
|
36
68
|
const flagToKey = new Map();
|
|
37
69
|
const normalized = new Map();
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
const
|
|
41
|
-
if (
|
|
42
|
-
throw new TypeError(`Schema entry for "${
|
|
70
|
+
const typedSchema = schema;
|
|
71
|
+
for (const key of Object.keys(typedSchema)) {
|
|
72
|
+
const rawSpec = typedSchema[key];
|
|
73
|
+
if (rawSpec === null || typeof rawSpec !== 'object' || Array.isArray(rawSpec)) {
|
|
74
|
+
throw new TypeError(`Schema entry for "${key}" must be an object.`);
|
|
43
75
|
}
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
76
|
+
const specRecord = rawSpec;
|
|
77
|
+
const type = specRecord['type'];
|
|
78
|
+
if (type !== 'string' && type !== 'boolean' && type !== 'number' && type !== 'array') {
|
|
79
|
+
throw new TypeError(`Schema entry "${key}" has invalid type.`);
|
|
47
80
|
}
|
|
48
|
-
const flagsInput =
|
|
81
|
+
const flagsInput = specRecord['flags'];
|
|
49
82
|
if (!Array.isArray(flagsInput) || flagsInput.length === 0) {
|
|
50
|
-
throw new TypeError(`Schema entry "${
|
|
83
|
+
throw new TypeError(`Schema entry "${key}" must define at least one flag.`);
|
|
51
84
|
}
|
|
52
85
|
const flags = [];
|
|
53
86
|
for (const flag of flagsInput) {
|
|
54
87
|
if (typeof flag !== 'string' || flag.length < 2 || !flag.startsWith('-')) {
|
|
55
|
-
throw new TypeError(`Schema entry "${
|
|
88
|
+
throw new TypeError(`Schema entry "${key}" has invalid flag "${String(flag)}".`);
|
|
56
89
|
}
|
|
57
90
|
if (flagToKey.has(flag)) {
|
|
58
91
|
const existing = flagToKey.get(flag);
|
|
59
|
-
throw new TypeError(`Flag "${flag}" is already assigned to "${
|
|
92
|
+
throw new TypeError(`Flag "${flag}" is already assigned to "${existing ?? ''}".`);
|
|
60
93
|
}
|
|
61
94
|
flagToKey.set(flag, key);
|
|
62
95
|
flags.push(flag);
|
|
63
96
|
}
|
|
97
|
+
const requiredValue = specRecord['required'];
|
|
98
|
+
if (requiredValue !== undefined && typeof requiredValue !== 'boolean') {
|
|
99
|
+
throw new TypeError(`Schema entry "${key}" required must be a boolean.`);
|
|
100
|
+
}
|
|
101
|
+
const allowNoValue = specRecord['allowNo'];
|
|
102
|
+
if (allowNoValue !== undefined && typeof allowNoValue !== 'boolean') {
|
|
103
|
+
throw new TypeError(`Schema entry "${key}" allowNo must be a boolean.`);
|
|
104
|
+
}
|
|
105
|
+
if (allowNoValue !== undefined && type !== 'boolean') {
|
|
106
|
+
throw new TypeError(`Schema entry "${key}" allowNo is only valid for boolean types.`);
|
|
107
|
+
}
|
|
108
|
+
const allowEmptyValue = specRecord['allowEmpty'];
|
|
109
|
+
if (allowEmptyValue !== undefined && typeof allowEmptyValue !== 'boolean') {
|
|
110
|
+
throw new TypeError(`Schema entry "${key}" allowEmpty must be a boolean.`);
|
|
111
|
+
}
|
|
112
|
+
if (allowEmptyValue !== undefined && type !== 'string' && type !== 'array') {
|
|
113
|
+
throw new TypeError(`Schema entry "${key}" allowEmpty is only valid for string or array types.`);
|
|
114
|
+
}
|
|
115
|
+
const defaultValue = normalizeDefaultValue(key, specRecord['default'], type);
|
|
116
|
+
const spec = {
|
|
117
|
+
type,
|
|
118
|
+
flags,
|
|
119
|
+
...(requiredValue === true ? { required: true } : {}),
|
|
120
|
+
...(allowEmptyValue === true ? { allowEmpty: true } : {}),
|
|
121
|
+
...(allowNoValue === false ? { allowNo: false } : {}),
|
|
122
|
+
...(defaultValue !== undefined ? { default: defaultValue } : {})
|
|
123
|
+
};
|
|
64
124
|
const longFlag = flags.find((flag) => flag.startsWith('--'));
|
|
65
125
|
const normalizedSpec = {
|
|
66
126
|
...spec,
|
|
67
127
|
type,
|
|
68
128
|
flags,
|
|
69
|
-
...(longFlag ? { longFlag } : {})
|
|
129
|
+
...(typeof longFlag === 'string' ? { longFlag } : {})
|
|
70
130
|
};
|
|
71
131
|
normalized.set(key, normalizedSpec);
|
|
72
132
|
}
|
|
@@ -75,7 +135,7 @@ const validateSchema = (schema) => {
|
|
|
75
135
|
export const defineSchema = (schema) => schema;
|
|
76
136
|
export const parseArgs = (schema, options = {}) => {
|
|
77
137
|
const { flagToKey, normalized } = validateSchema(schema);
|
|
78
|
-
const argv =
|
|
138
|
+
const argv = options.argv !== undefined ? [...options.argv] : process.argv.slice(2);
|
|
79
139
|
const allowUnknown = options.allowUnknown === true;
|
|
80
140
|
const stopAtDoubleDash = options.stopAtDoubleDash !== false;
|
|
81
141
|
const values = {};
|
|
@@ -92,6 +152,9 @@ export const parseArgs = (schema, options = {}) => {
|
|
|
92
152
|
};
|
|
93
153
|
for (let i = 0; i < argv.length; i += 1) {
|
|
94
154
|
const token = argv[i];
|
|
155
|
+
if (token === undefined) {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
95
158
|
if (stopAtDoubleDash && token === '--') {
|
|
96
159
|
rest.push(...argv.slice(i + 1));
|
|
97
160
|
break;
|
|
@@ -105,16 +168,16 @@ export const parseArgs = (schema, options = {}) => {
|
|
|
105
168
|
if (flag.startsWith('--no-') && !flagToKey.has(flag)) {
|
|
106
169
|
const base = `--${flag.slice(5)}`;
|
|
107
170
|
const baseKey = flagToKey.get(base);
|
|
108
|
-
if (baseKey) {
|
|
171
|
+
if (baseKey !== undefined) {
|
|
109
172
|
const baseSpec = normalized.get(baseKey);
|
|
110
173
|
if (baseSpec?.type === 'boolean' && baseSpec.allowNo !== false) {
|
|
111
|
-
if (present[baseKey]) {
|
|
174
|
+
if (present[baseKey] === true) {
|
|
112
175
|
pushIssue({
|
|
113
176
|
code: 'DUPLICATE',
|
|
114
177
|
severity: 'warning',
|
|
115
178
|
message: `Duplicate flag ${base}.`,
|
|
116
179
|
flag: base,
|
|
117
|
-
key:
|
|
180
|
+
key: baseKey,
|
|
118
181
|
index: i
|
|
119
182
|
});
|
|
120
183
|
}
|
|
@@ -125,7 +188,7 @@ export const parseArgs = (schema, options = {}) => {
|
|
|
125
188
|
}
|
|
126
189
|
}
|
|
127
190
|
const key = flagToKey.get(flag);
|
|
128
|
-
if (
|
|
191
|
+
if (key === undefined) {
|
|
129
192
|
if (!allowUnknown) {
|
|
130
193
|
pushIssue({
|
|
131
194
|
code: 'UNKNOWN_FLAG',
|
|
@@ -141,174 +204,182 @@ export const parseArgs = (schema, options = {}) => {
|
|
|
141
204
|
continue;
|
|
142
205
|
}
|
|
143
206
|
const spec = normalized.get(key);
|
|
144
|
-
if (
|
|
207
|
+
if (spec === undefined) {
|
|
145
208
|
continue;
|
|
146
209
|
}
|
|
147
|
-
const wasPresent = present[key];
|
|
210
|
+
const wasPresent = present[key] === true;
|
|
148
211
|
if (wasPresent && spec.type !== 'array') {
|
|
149
212
|
pushIssue({
|
|
150
213
|
code: 'DUPLICATE',
|
|
151
214
|
severity: 'warning',
|
|
152
215
|
message: `Duplicate flag ${flag}.`,
|
|
153
216
|
flag,
|
|
154
|
-
key
|
|
217
|
+
key,
|
|
155
218
|
index: i
|
|
156
219
|
});
|
|
157
220
|
}
|
|
158
221
|
present[key] = true;
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
222
|
+
switch (spec.type) {
|
|
223
|
+
case 'boolean': {
|
|
224
|
+
let raw = inlineValue;
|
|
225
|
+
let consumedNext = false;
|
|
226
|
+
if (raw === undefined) {
|
|
227
|
+
const nextValue = argv[i + 1];
|
|
228
|
+
const normalizedValue = normalizeBoolean(nextValue);
|
|
229
|
+
if (normalizedValue !== undefined) {
|
|
230
|
+
raw = nextValue;
|
|
231
|
+
consumedNext = true;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
if (raw !== undefined) {
|
|
235
|
+
const normalizedValue = normalizeBoolean(raw);
|
|
236
|
+
if (normalizedValue === undefined) {
|
|
237
|
+
pushIssue({
|
|
238
|
+
code: 'INVALID_VALUE',
|
|
239
|
+
severity: 'error',
|
|
240
|
+
message: `Invalid boolean value for ${flag}: ${raw}.`,
|
|
241
|
+
flag,
|
|
242
|
+
key,
|
|
243
|
+
value: raw,
|
|
244
|
+
index: i
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
values[key] = normalizedValue;
|
|
249
|
+
if (consumedNext) {
|
|
250
|
+
i += 1;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
168
253
|
}
|
|
254
|
+
else {
|
|
255
|
+
values[key] = true;
|
|
256
|
+
}
|
|
257
|
+
break;
|
|
169
258
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
if (
|
|
259
|
+
case 'string': {
|
|
260
|
+
let raw = inlineValue;
|
|
261
|
+
if (raw === undefined) {
|
|
262
|
+
const nextValue = argv[i + 1];
|
|
263
|
+
if (typeof nextValue !== 'string' || isFlagToken(nextValue)) {
|
|
264
|
+
pushIssue({
|
|
265
|
+
code: 'MISSING_VALUE',
|
|
266
|
+
severity: 'error',
|
|
267
|
+
message: `Missing value for ${flag}.`,
|
|
268
|
+
flag,
|
|
269
|
+
key,
|
|
270
|
+
index: i
|
|
271
|
+
});
|
|
272
|
+
break;
|
|
273
|
+
}
|
|
274
|
+
raw = nextValue;
|
|
275
|
+
i += 1;
|
|
276
|
+
}
|
|
277
|
+
if (raw.length === 0 && spec.allowEmpty !== true) {
|
|
173
278
|
pushIssue({
|
|
174
|
-
code: '
|
|
279
|
+
code: 'EMPTY_VALUE',
|
|
175
280
|
severity: 'error',
|
|
176
|
-
message: `
|
|
281
|
+
message: `Empty value not allowed for ${flag}.`,
|
|
177
282
|
flag,
|
|
178
|
-
key
|
|
179
|
-
value: raw,
|
|
283
|
+
key,
|
|
180
284
|
index: i
|
|
181
285
|
});
|
|
286
|
+
break;
|
|
182
287
|
}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
288
|
+
values[key] = raw;
|
|
289
|
+
break;
|
|
290
|
+
}
|
|
291
|
+
case 'number': {
|
|
292
|
+
let raw = inlineValue;
|
|
293
|
+
if (raw === undefined) {
|
|
294
|
+
const nextValue = argv[i + 1];
|
|
295
|
+
if (typeof nextValue !== 'string' || (!isNumericValue(nextValue) && isFlagToken(nextValue))) {
|
|
296
|
+
pushIssue({
|
|
297
|
+
code: 'MISSING_VALUE',
|
|
298
|
+
severity: 'error',
|
|
299
|
+
message: `Missing value for ${flag}.`,
|
|
300
|
+
flag,
|
|
301
|
+
key,
|
|
302
|
+
index: i
|
|
303
|
+
});
|
|
304
|
+
break;
|
|
187
305
|
}
|
|
306
|
+
raw = nextValue;
|
|
307
|
+
i += 1;
|
|
188
308
|
}
|
|
189
|
-
|
|
190
|
-
else {
|
|
191
|
-
values[key] = true;
|
|
192
|
-
}
|
|
193
|
-
continue;
|
|
194
|
-
}
|
|
195
|
-
if (spec.type === 'string') {
|
|
196
|
-
let raw = inlineValue;
|
|
197
|
-
if (raw === undefined) {
|
|
198
|
-
const nextValue = argv[i + 1];
|
|
199
|
-
if (typeof nextValue !== 'string' || isFlagToken(nextValue)) {
|
|
309
|
+
if (!isNumericValue(raw)) {
|
|
200
310
|
pushIssue({
|
|
201
|
-
code: '
|
|
311
|
+
code: 'INVALID_VALUE',
|
|
202
312
|
severity: 'error',
|
|
203
|
-
message: `
|
|
313
|
+
message: `Invalid number value for ${flag}: ${raw}.`,
|
|
204
314
|
flag,
|
|
205
|
-
key
|
|
315
|
+
key,
|
|
316
|
+
value: raw,
|
|
206
317
|
index: i
|
|
207
318
|
});
|
|
208
|
-
|
|
319
|
+
break;
|
|
209
320
|
}
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
}
|
|
213
|
-
if (raw.length === 0 && spec.allowEmpty !== true) {
|
|
214
|
-
pushIssue({
|
|
215
|
-
code: 'EMPTY_VALUE',
|
|
216
|
-
severity: 'error',
|
|
217
|
-
message: `Empty value not allowed for ${flag}.`,
|
|
218
|
-
flag,
|
|
219
|
-
key: String(key),
|
|
220
|
-
index: i
|
|
221
|
-
});
|
|
222
|
-
continue;
|
|
321
|
+
values[key] = Number(raw);
|
|
322
|
+
break;
|
|
223
323
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
324
|
+
case 'array': {
|
|
325
|
+
const collected = [];
|
|
326
|
+
if (inlineValue !== undefined && inlineValue.length > 0) {
|
|
327
|
+
collected.push(inlineValue);
|
|
328
|
+
}
|
|
329
|
+
let cursor = i + 1;
|
|
330
|
+
while (cursor < argv.length) {
|
|
331
|
+
const nextValue = argv[cursor];
|
|
332
|
+
if (nextValue === undefined) {
|
|
333
|
+
cursor += 1;
|
|
334
|
+
continue;
|
|
335
|
+
}
|
|
336
|
+
if (stopAtDoubleDash && nextValue === '--') {
|
|
337
|
+
break;
|
|
338
|
+
}
|
|
339
|
+
if (isFlagToken(nextValue)) {
|
|
340
|
+
break;
|
|
341
|
+
}
|
|
342
|
+
collected.push(nextValue);
|
|
343
|
+
cursor += 1;
|
|
344
|
+
}
|
|
345
|
+
if (cursor > i + 1) {
|
|
346
|
+
i = cursor - 1;
|
|
347
|
+
}
|
|
348
|
+
if (collected.length === 0 && spec.allowEmpty !== true) {
|
|
232
349
|
pushIssue({
|
|
233
350
|
code: 'MISSING_VALUE',
|
|
234
351
|
severity: 'error',
|
|
235
352
|
message: `Missing value for ${flag}.`,
|
|
236
353
|
flag,
|
|
237
|
-
key
|
|
354
|
+
key,
|
|
238
355
|
index: i
|
|
239
356
|
});
|
|
240
|
-
continue;
|
|
241
|
-
}
|
|
242
|
-
raw = nextValue;
|
|
243
|
-
i += 1;
|
|
244
|
-
}
|
|
245
|
-
if (!isNumericValue(raw)) {
|
|
246
|
-
pushIssue({
|
|
247
|
-
code: 'INVALID_VALUE',
|
|
248
|
-
severity: 'error',
|
|
249
|
-
message: `Invalid number value for ${flag}: ${raw}.`,
|
|
250
|
-
flag,
|
|
251
|
-
key: String(key),
|
|
252
|
-
value: raw,
|
|
253
|
-
index: i
|
|
254
|
-
});
|
|
255
|
-
continue;
|
|
256
|
-
}
|
|
257
|
-
values[key] = Number(raw);
|
|
258
|
-
continue;
|
|
259
|
-
}
|
|
260
|
-
if (spec.type === 'array') {
|
|
261
|
-
const collected = [];
|
|
262
|
-
if (inlineValue !== undefined && inlineValue.length > 0) {
|
|
263
|
-
collected.push(inlineValue);
|
|
264
|
-
}
|
|
265
|
-
let cursor = i + 1;
|
|
266
|
-
while (cursor < argv.length) {
|
|
267
|
-
const nextValue = argv[cursor];
|
|
268
|
-
if (stopAtDoubleDash && nextValue === '--') {
|
|
269
357
|
break;
|
|
270
358
|
}
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
collected.push(nextValue);
|
|
275
|
-
cursor += 1;
|
|
276
|
-
}
|
|
277
|
-
if (cursor > i + 1) {
|
|
278
|
-
i = cursor - 1;
|
|
359
|
+
const existing = Array.isArray(values[key]) ? values[key] : [];
|
|
360
|
+
values[key] = [...existing, ...collected];
|
|
361
|
+
break;
|
|
279
362
|
}
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
code: 'MISSING_VALUE',
|
|
283
|
-
severity: 'error',
|
|
284
|
-
message: `Missing value for ${flag}.`,
|
|
285
|
-
flag,
|
|
286
|
-
key: String(key),
|
|
287
|
-
index: i
|
|
288
|
-
});
|
|
289
|
-
continue;
|
|
290
|
-
}
|
|
291
|
-
const existing = Array.isArray(values[key]) ? values[key] : [];
|
|
292
|
-
values[key] = [...existing, ...collected];
|
|
293
|
-
continue;
|
|
363
|
+
default:
|
|
364
|
+
break;
|
|
294
365
|
}
|
|
295
366
|
}
|
|
296
367
|
for (const [key, spec] of normalized.entries()) {
|
|
297
|
-
if (spec.required &&
|
|
368
|
+
if (spec.required === true && present[key] !== true) {
|
|
298
369
|
const primaryFlag = spec.flags[0];
|
|
299
370
|
pushIssue({
|
|
300
371
|
code: 'REQUIRED',
|
|
301
372
|
severity: 'error',
|
|
302
373
|
message: `Missing required flag ${primaryFlag ?? ''}.`,
|
|
303
|
-
...(primaryFlag ? { flag: primaryFlag } : {}),
|
|
304
|
-
key
|
|
374
|
+
...(typeof primaryFlag === 'string' ? { flag: primaryFlag } : {}),
|
|
375
|
+
key
|
|
305
376
|
});
|
|
306
377
|
}
|
|
307
378
|
}
|
|
308
379
|
const ok = issues.every((issue) => issue.severity !== 'error');
|
|
309
380
|
return {
|
|
310
|
-
values,
|
|
311
|
-
present,
|
|
381
|
+
values: values,
|
|
382
|
+
present: present,
|
|
312
383
|
rest,
|
|
313
384
|
unknown,
|
|
314
385
|
issues,
|
|
@@ -318,16 +389,22 @@ export const parseArgs = (schema, options = {}) => {
|
|
|
318
389
|
export default parseArgs;
|
|
319
390
|
export const toJsonResult = (result) => {
|
|
320
391
|
const values = {};
|
|
321
|
-
|
|
392
|
+
const valueEntries = result.values;
|
|
393
|
+
for (const [key, value] of Object.entries(valueEntries)) {
|
|
322
394
|
if (value === undefined) {
|
|
323
395
|
values[key] = null;
|
|
324
396
|
continue;
|
|
325
397
|
}
|
|
326
398
|
values[key] = value;
|
|
327
399
|
}
|
|
400
|
+
const presentEntries = result.present;
|
|
401
|
+
const present = {};
|
|
402
|
+
for (const [key, value] of Object.entries(presentEntries)) {
|
|
403
|
+
present[key] = value;
|
|
404
|
+
}
|
|
328
405
|
return {
|
|
329
406
|
values,
|
|
330
|
-
present
|
|
407
|
+
present,
|
|
331
408
|
rest: [...result.rest],
|
|
332
409
|
unknown: [...result.unknown],
|
|
333
410
|
issues: [...result.issues],
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "argv-flags",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Schema-based CLI flag parser for Node.js.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
".": {
|
|
10
10
|
"types": "./dist/index.d.ts",
|
|
11
11
|
"default": "./dist/index.js"
|
|
12
|
-
}
|
|
12
|
+
},
|
|
13
|
+
"./schema/parse-result.schema.json": "./schema/parse-result.schema.json"
|
|
13
14
|
},
|
|
14
15
|
"files": [
|
|
15
16
|
"CHANGELOG.md",
|
|
@@ -20,7 +21,8 @@
|
|
|
20
21
|
],
|
|
21
22
|
"scripts": {
|
|
22
23
|
"build": "tsc -p tsconfig.json",
|
|
23
|
-
"
|
|
24
|
+
"lint": "eslint .",
|
|
25
|
+
"test": "npm run build && npm run lint && node --test"
|
|
24
26
|
},
|
|
25
27
|
"repository": {
|
|
26
28
|
"type": "git",
|
|
@@ -42,8 +44,16 @@
|
|
|
42
44
|
"node": ">=24"
|
|
43
45
|
},
|
|
44
46
|
"devDependencies": {
|
|
47
|
+
"@eslint/js": "^9.39.2",
|
|
45
48
|
"@types/node": "^24.0.0",
|
|
49
|
+
"@typescript-eslint/eslint-plugin": "^8.54.0",
|
|
50
|
+
"@typescript-eslint/parser": "^8.54.0",
|
|
46
51
|
"ajv": "^8.17.1",
|
|
52
|
+
"eslint": "^9.39.2",
|
|
53
|
+
"eslint-plugin-n": "^17.23.2",
|
|
54
|
+
"eslint-plugin-promise": "^7.2.1",
|
|
55
|
+
"eslint-plugin-security": "^3.0.1",
|
|
56
|
+
"globals": "^17.2.0",
|
|
47
57
|
"typescript": "^5.5.4"
|
|
48
58
|
}
|
|
49
59
|
}
|