INNER CODE UNIT · TypeScript
validateArgv
xlnfinance/xln · brainvault/src/cli/index.ts:107
function validateArgv(argv: readonly string[]): void {
const seenValueGroups = new Set<string>();
const acceptValueFlag = (flag: string): void => {
const group = VALUE_FLAG_GROUPS.get(flag);
if (group === undefined) rejectUnsafeArgv();
if (seenValueGroups.has(group)) rejectDuplicateArgv();
seenValueGroups.add(group);
};
for (let index = 0; index < argv.length; index += 1) {
const argument = argv[index]!;
if (/^--(?:unsafe-password|passphrase|pass|secret)(?:=|$)/.test(argument)
|| argument.startsWith('--password=')) rejectUnsafeArgv();
if (BOOLEAN_FLAGS.has(argument)) continue;
if (LEGACY_ENGINE_FLAGS.has(argument)) {
acceptValueFlag('--engine');
continue;
}
const equals = argument.indexOf('=');