UNPKG

@ivandt/json-rules

Version:

Rule parsing engine for JSON rules

29 lines (28 loc) 1.16 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateDomain = validateDomain; const isFQDN_1 = __importDefault(require("validator/lib/isFQDN")); /** * Validates domain names with configurable options */ function validateDomain(value, config = null) { // Must be a string if (typeof value !== "string") { return false; } // Use default config if none provided const validationConfig = config || {}; // Convert our config to validator.js options const options = { require_tld: validationConfig.requireTld !== false, // Default true allow_underscores: validationConfig.allowUnderscores || false, allow_trailing_dot: validationConfig.allowTrailingDot || false, allow_numeric_tld: validationConfig.allowNumericTld || false, allow_wildcard: validationConfig.allowWildcard || false, ignore_max_length: validationConfig.ignoreMaxLength || false, }; return (0, isFQDN_1.default)(value, options); }