UNPKG

yini-parser

Version:

Readable configuration without YAML foot-guns or JSON noise. The official Node.js parser for YINI config format — An INI-inspired configuration format with clear nesting, explicit types, and predictable parsing.

35 lines 1.58 kB
"use strict"; // --- Parsing Rule Values ------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); exports.isEmptyValueRule = exports.isDocumentTerminatorRule = exports.isDuplicateKeyPolicy = exports.EmptyValueRules = exports.DocumentTerminatorRules = exports.DuplicateKeyPolicies = void 0; /* NOTE: These rule values are re-exported as **types** (derived from these consants) in types/index.ts. NOTE: These constant gives runtime access as they are also used in error messages. */ exports.DuplicateKeyPolicies = [ 'error', 'warn-and-keep-first', // Keep first with a warning. 'warn-and-overwrite', // 'warn-and-overwrite' = 'warn-and-keep-last' 'keep-first', // Silent, first wins. 'overwrite', // Silent, last wins. ]; exports.DocumentTerminatorRules = [ 'optional', 'warn-if-missing', 'required', ]; exports.EmptyValueRules = [ 'allow', 'allow-with-warning', 'disallow', ]; // --- Runtime Guards ------------------------------------------------------ const isDuplicateKeyPolicy = (v) => typeof v === 'string' && exports.DuplicateKeyPolicies.includes(v); exports.isDuplicateKeyPolicy = isDuplicateKeyPolicy; const isDocumentTerminatorRule = (v) => typeof v === 'string' && exports.DocumentTerminatorRules.includes(v); exports.isDocumentTerminatorRule = isDocumentTerminatorRule; const isEmptyValueRule = (v) => typeof v === 'string' && exports.EmptyValueRules.includes(v); exports.isEmptyValueRule = isEmptyValueRule; //# sourceMappingURL=rulesConstAndGuards.js.map