env-sentinel
Version:
Zero-dependency tool that auto-validates .env files against schema.env, with optional fallback and secure warnings.
7 lines (6 loc) • 475 B
JavaScript
export const REFERENCE_REGEX = /(?<!\\)(\$\{(?<key1>[A-Za-z_][A-Za-z0-9_]*)\}|\{\$(?<key2>[A-Za-z_][A-Za-z0-9_]*)\}|\$(?<key3>[A-Za-z_][A-Za-z0-9_]*)(?![A-Za-z0-9_]*\$))/g;
export function getReferencedKey(key) {
const regex = /(?<!\\)(\$\{(?<key1>[A-Za-z_][A-Za-z0-9_]*)\}|\{\$(?<key2>[A-Za-z_][A-Za-z0-9_]*)\}|\$(?<key3>[A-Za-z_][A-Za-z0-9_]*)(?![A-Za-z0-9_]*\$))/;
const { groups } = regex.exec(key);
return groups.key1 || groups.key2 || groups.key3 || key;
}