INNER CODE UNIT · TypeScript
rejectDuplicateArgv
xlnfinance/xln · brainvault/src/cli/index.ts:102
function rejectDuplicateArgv(): never {
console.error('Error: duplicate CLI options are refused; provide each setting once.');
process.exit(1);
}
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;