env-sentinel
Version:
Zero-dependency tool that auto-validates .env files against schema.env, with optional fallback and secure warnings.
27 lines (26 loc) • 775 B
JavaScript
export function noInvalidKeyDelimiterCheck(lineNumber, lineContent) {
const equalIndex = lineContent.indexOf('=');
if (equalIndex === -1) {
return;
}
const key = lineContent.slice(0, equalIndex).trim();
if (!key) {
return;
}
const invalidDelimiters = [
...key
.replace(/^['"]|['"]$/g, '')
.slice(1)
.matchAll(/[^\p{L}\p{N}_\s]/gu),
].map((match) => match[0]);
if (invalidDelimiters.length === 0) {
return;
}
const delimiterList = invalidDelimiters.map((d) => `"${d}"`).join(', ');
return {
line: lineNumber,
issue: `Variable name contains invalid delimiter: ${delimiterList}`,
content: lineContent,
severity: 'error',
};
}