UNPKG

@randajan/regex-parser

Version:

Convert between JavaScript RegExp and its string representation. Simple, safe and lightweight.

8 lines (7 loc) 1.44 kB
{ "version": 3, "sources": ["../../src/index.js"], "sourcesContent": ["const _regex = /^\\/((?:\\\\.|[^\\\\/])+)\\/([a-z]*)$/i;\nconst _regexEsc = /[.*+?^${}()|[\\]\\\\]/g;\nconst _unsafeSlash = /(^|[^\\\\])\\//g; // lom\u00EDtko NEp\u0159edch\u00E1z\u00ED zp\u011Btn\u00E9 lom\u00EDtko\n\nexport const rgxToStr = (rgx) => {\n if (!(rgx instanceof RegExp)) throw new TypeError(\"Expected RegExp\");\n\n const pattern = rgx.source.replace(_unsafeSlash, '$1\\\\/'); // escapuj jen \u201Enah\u00E9\u201C /\n return `/${pattern}/${rgx.flags}`;\n};\n\nexport const strToRgx = (str, strict = false) => {\n if (typeof str !== \"string\") throw new TypeError(\"Expected string\");\n\n const m = str.match(_regex);\n if (m) return new RegExp(m[1], m[2]);\n if (strict) throw new SyntaxError(\"Invalid regex string\");\n\n return new RegExp(str.replace(_regexEsc, '\\\\$&'));\n};"], "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAM,SAAS;AACf,IAAM,YAAY;AAClB,IAAM,eAAe;AAEd,IAAM,WAAW,CAAC,QAAQ;AAC/B,MAAI,EAAE,eAAe,QAAS,OAAM,IAAI,UAAU,iBAAiB;AAEnE,QAAM,UAAU,IAAI,OAAO,QAAQ,cAAc,OAAO;AACxD,SAAO,IAAI,OAAO,IAAI,IAAI,KAAK;AACjC;AAEO,IAAM,WAAW,CAAC,KAAK,SAAS,UAAU;AAC/C,MAAI,OAAO,QAAQ,SAAU,OAAM,IAAI,UAAU,iBAAiB;AAElE,QAAM,IAAI,IAAI,MAAM,MAAM;AAC1B,MAAI,EAAG,QAAO,IAAI,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACnC,MAAI,OAAQ,OAAM,IAAI,YAAY,sBAAsB;AAExD,SAAO,IAAI,OAAO,IAAI,QAAQ,WAAW,MAAM,CAAC;AAClD;", "names": [] }