/home/techb158/balavpn.abdallabala.com/node_modules/eslint/lib/rules/utils
NameSizeModeActions
unicode/-0777rm
ast-utils.js793200666editdlrm
char-source.js59050666editdlrm
fix-tracker.js40300666editdlrm
keywords.js7410666editdlrm
lazy-loading-rule-map.js26220666editdlrm
regular-expressions.js13800666editdlrm
Edit: /home/techb158/balavpn.abdallabala.com/node_modules/eslint/lib/rules/utils/regular-expressions.js (1380B)
/** * @fileoverview Common utils for regular expressions. * @author Josh Goldberg * @author Toru Nagashima */ "use strict"; const { RegExpValidator } = require("@eslint-community/regexpp"); const REGEXPP_LATEST_ECMA_VERSION = 2025; /** * Checks if the given regular expression pattern would be valid with the `u` flag. * @param {number} ecmaVersion ECMAScript version to parse in. * @param {string} pattern The regular expression pattern to verify. * @param {"u"|"v"} flag The type of Unicode flag * @returns {boolean} `true` if the pattern would be valid with the `u` flag. * `false` if the pattern would be invalid with the `u` flag or the configured * ecmaVersion doesn't support the `u` flag. */ function isValidWithUnicodeFlag(ecmaVersion, pattern, flag = "u") { if (flag === "u" && ecmaVersion <= 5) { // ecmaVersion <= 5 doesn't support the 'u' flag return false; } if (flag === "v" && ecmaVersion <= 2023) { return false; } const validator = new RegExpValidator({ ecmaVersion: Math.min(ecmaVersion, REGEXPP_LATEST_ECMA_VERSION), }); try { validator.validatePattern( pattern, void 0, void 0, flag === "u" ? { unicode: /* uFlag = */ true, } : { unicodeSets: true, }, ); } catch { return false; } return true; } module.exports = { isValidWithUnicodeFlag, REGEXPP_LATEST_ECMA_VERSION, };