{"_id":"regexpp","_rev":"11-12ba54d344586a5ca6f6ec7ae02d22f7","name":"regexpp","dist-tags":{"latest":"3.2.0","next":"2.0.0-beta.0"},"versions":{"0.0.0":{"name":"regexpp","version":"0.0.0","description":"RegExp parser.","engines":{"node":">=4.0.0"},"main":"index.js","files":["index.d.ts","index.js.map"],"devDependencies":{"@types/mocha":"^2.2.48","@types/node":"^9.4.6","dts-bundle":"^0.7.3","eslint":"^4.18.0","eslint-config-mysticatea":"^13.0.2","eslint-config-prettier":"^2.9.0","eslint-plugin-prettier":"^2.4.0","mocha":"^5.0.1","npm-run-all":"^4.1.2","nyc":"^11.4.1","opener":"^1.4.3","prettier":"^1.9.2","rollup":"^0.56.1","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^5.0.0","typescript":"^2.8.0-dev.20180228","typescript-eslint-parser":"^14.0.0","wait-on":"^2.1.0","warun":"^1.0.0"},"scripts":{"_mocha":"_mocha --require ts-node/register --reporter dot --timeout 10000 \"test/*.js\"","prebuild":"npm run -s clean","build":"tsc --project tsconfig.prod.json && rollup -c -o index.js && dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .nyc_output .temp coverage index.*","codecov":"nyc report --reporter lcovonly && codecov","coverage":"nyc report --reporter lcov && opener ./coverage/lcov-report/index.html","lint":"eslint src test --ext .ts","setup":"git submodule update --init && cd test/fixtures/eslint && npm install","pretest":"run-s build lint","test":"nyc npm run _mocha","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","update:fixtures":"ts-node test/tools/update-fixtures.ts","watch":"run-p watch:*","watch:tsc":"tsc --watch","watch:rollup":"wait-on .temp/index.js && rollup -c -o index.js --watch","watch:test":"wait-on index.js && warun index.js \"test/*.ts\" --debounce 1000 --no-initial -- nyc -r lcov npm run -s _mocha","watch:coverage-report":"wait-on coverage/lcov-report/index.html && opener coverage/lcov-report/index.html"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":[],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"c3af648a9f7f66ca025bbb338e039340d1a1cadb","_id":"regexpp@0.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-yT96c0L1zrkimBLB19Ot6FxW6EInDSdfMeuEe57s/cWofG9b20HWvhupqXtM7eIh0i9qhwXEh2/kEwV+rBRohg==","shasum":"6681c892b2494e530fd4c93f44b8de32ae0bfb18","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-0.0.0.tgz","fileCount":3,"unpackedSize":3623,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICVsJRq4U1mjkJXJ1rTsxIao9Y0La6Pefhh0B/r6f3RBAiALoWimZ1Q98oRDaLenV/4Za3yskDvUX3e2guYbQa21qw=="}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_0.0.0_1519813031685_0.46808276769335033"},"_hasShrinkwrap":false},"1.0.0":{"name":"regexpp","version":"1.0.0","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=4.0.0"},"main":"index.js","files":["index.d.ts","index.js.map"],"devDependencies":{"@types/eslint":"^4.16.0","@types/mocha":"^2.2.48","@types/node":"^9.4.6","dts-bundle":"^0.7.3","eslint":"^4.18.0","eslint-config-mysticatea":"^13.0.2","eslint-config-prettier":"^2.9.0","eslint-plugin-prettier":"^2.4.0","mocha":"^5.0.1","npm-run-all":"^4.1.2","prettier":"^1.9.2","rollup":"^0.56.1","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^5.0.0","typescript":"^2.7.2","typescript-eslint-parser":"^14.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"tsc --project tsconfig.prod.json && rollup -c -o index.js && dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","lint":"eslint src test tools --ext .ts","pretest":"run-s build lint","test":"_mocha --require ts-node/register --reporter dot --timeout 10000 \"test/*.ts\"","update:test":"ts-node tools/update-fixtures.ts","update:ids":"ts-node tools/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"npm run -s test -- --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"cc2aa524c952a5c7e5f9c5c9b6cdcd2868fa6b4c","_id":"regexpp@1.0.0","_npmVersion":"5.7.1","_nodeVersion":"8.9.3","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-LYAIipA6zfYVrOo+nxzvVc91xsXD0X9Hpqjb/zS5bh9gEkVgg3cdf61MtT8ZTclw7FdkF189oKKug2Ig1hI+4w==","shasum":"4bdc81199247f4a0109444e1f6273baa8ea0a5ee","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-1.0.0.tgz","fileCount":6,"unpackedSize":608232,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHvQnZj7x2g44avPjmoyRyZkPWQKXdYvgijaol8czDNwAiAEjDaRGhnMyXQatKriPNHVh8BgHNKmOAfLnDZQe5vJ8Q=="}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_1.0.0_1520249334973_0.6225448336418906"},"_hasShrinkwrap":false},"1.0.1":{"name":"regexpp","version":"1.0.1","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=4.0.0"},"main":"index.js","files":["index.d.ts","index.js.map"],"devDependencies":{"@types/eslint":"^4.16.0","@types/mocha":"^2.2.48","@types/node":"^9.4.6","dts-bundle":"^0.7.3","eslint":"^4.18.0","eslint-config-mysticatea":"^13.0.2","eslint-config-prettier":"^2.9.0","eslint-plugin-prettier":"^2.4.0","mocha":"^5.0.1","npm-run-all":"^4.1.2","prettier":"^1.9.2","rimraf":"^2.6.2","rollup":"^0.56.1","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^5.0.0","typescript":"^2.7.2","typescript-eslint-parser":"^14.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"tsc --project tsconfig.prod.json && rollup -c -o index.js && dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","lint":"eslint src test tools --ext .ts","pretest":"run-s build lint","test":"_mocha --require ts-node/register --reporter dot --timeout 10000 \"test/*.ts\"","update:test":"ts-node tools/update-fixtures.ts","update:ids":"ts-node tools/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"npm run -s test -- --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"46c894e4c842d4cefda0ff827f962586e2e0395a","_id":"regexpp@1.0.1","_npmVersion":"5.7.1","_nodeVersion":"4.8.7","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-8Ph721maXiOYSLtaDGKVmDn5wdsNaF6Px85qFNeMPQq0r8K5Y10tgP6YuR65Ws35n4DvzFcCxEnRNBIXQunzLw==","shasum":"d857c3a741dce075c2848dcb019a0a975b190d43","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-1.0.1.tgz","fileCount":6,"unpackedSize":618893,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6E3/OzVF2xMmVCeTII2H2ZCwwxjPf3OFhIl357pKZ1AIgNFcaRX8A4Odxu2m3uKZa6xA75BCQPWQct/qUv1WXPQE="}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_1.0.1_1520343616447_0.3437533717937047"},"_hasShrinkwrap":false},"1.1.0":{"name":"regexpp","version":"1.1.0","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=4.0.0"},"main":"index","files":["index.*"],"dependencies":{},"devDependencies":{"@types/eslint":"^4.16.0","@types/mocha":"^2.2.48","@types/node":"^9.4.6","babel-core":"^6.26.0","babel-plugin-transform-es2015-destructuring":"^6.23.0","babel-plugin-transform-es2015-parameters":"^6.24.1","babel-plugin-transform-es2015-spread":"^6.22.0","dts-bundle":"^0.7.3","eslint":"^4.18.0","eslint-config-mysticatea":"^13.0.2","eslint-config-prettier":"^2.9.0","eslint-plugin-prettier":"^2.4.0","mocha":"^5.0.1","npm-run-all":"^4.1.2","prettier":"^1.9.2","rimraf":"^2.6.2","rollup":"^0.56.1","rollup-plugin-babel":"^3.0.3","rollup-plugin-node-resolve":"^3.0.3","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^5.0.0","typescript":"^2.7.2","typescript-eslint-parser":"^14.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015 --target es2015","build:mjs":"rollup -c rollup-mjs.config.js","build:js":"rollup -c rollup-js.config.js","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","lint":"eslint src test tools --ext .ts","pretest":"run-s build lint","test":"_mocha --require ts-node/register --reporter dot --timeout 10000 \"test/*.ts\"","update:test":"ts-node tools/update-fixtures.ts","update:ids":"ts-node tools/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"npm run -s test -- --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"258651ef294c23faaa4bc25861a9e77c21136c48","_id":"regexpp@1.1.0","_npmVersion":"5.8.0","_nodeVersion":"8.11.1","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==","shasum":"0e3516dd0b7904f413d2d4193dce4618c3a689ab","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz","fileCount":8,"unpackedSize":1110886,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFb2JfFGB+PXEKdwHgiVFXtemSPfxtS2ZbfMyckKMr4zAiEArzTaCoXzNXF2rzKGlS+JP9CJHbf+FvNVluMoZd92wDk="}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_1.1.0_1522403159299_0.2810022828991172"},"_hasShrinkwrap":false},"2.0.0-beta.0":{"name":"regexpp","version":"2.0.0-beta.0","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=6.5.0"},"main":"index","files":["index.*"],"dependencies":{},"devDependencies":{"@types/eslint":"^4.16.2","@types/mocha":"^5.2.2","@types/node":"^10.3.3","coveralls":"^3.0.1","dts-bundle":"^0.7.3","eslint":"^4.19.1","eslint-plugin-mysticatea":"^5.0.0-beta.15","mocha":"^5.2.0","npm-run-all":"^4.1.3","nyc":"^12.0.2","rimraf":"^2.6.2","rollup":"^0.60.7","rollup-plugin-node-resolve":"^3.3.0","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^6.1.1","typescript":"^2.9.2","typescript-eslint-parser":"^16.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","coveralls":"nyc report --reporter=text-lcov | coveralls","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:ids":"ts-node scripts/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","readme":"# regexpp\n\n[![npm version](https://img.shields.io/npm/v/regexpp.svg)](https://www.npmjs.com/package/regexpp)\n[![Downloads/month](https://img.shields.io/npm/dm/regexpp.svg)](http://www.npmtrends.com/regexpp)\n[![Build Status](https://travis-ci.org/mysticatea/regexpp.svg?branch=master)](https://travis-ci.org/mysticatea/regexpp)\n[![Coverage Status](https://coveralls.io/repos/github/mysticatea/regexpp/badge.svg)](https://coveralls.io/github/mysticatea/regexpp)\n[![Dependency Status](https://david-dm.org/mysticatea/regexpp.svg)](https://david-dm.org/mysticatea/regexpp)\n\nThe regular expression parser for ECMAScript.\n\n## 💿 Installation\n\n```bash\n$ npm install regexpp\n```\n\n- require Node.js 6.5.0 or newer.\n\n## 📖 Usage\n\n```ts\nimport {\n    AST,\n    RegExpParser,\n    RegExpValidator,\n    RegExpVisitor,\n    parseRegExpLiteral,\n    validateRegExpLiteral,\n    visitRegExpAST\n} from \"regexpp\"\n```\n\n### parseRegExpLiteral(source, options?)\n\nParse a given regular expression literal then make AST object.\n\nThis is equivalent to `new RegExpParser(options).parseLiteral(source)`.\n\n- **Parameters:**\n    - `source` (`string | RegExp`) The source code to parse.\n    - `options?` ([`RegExpParser.Options`]) The options to parse.\n- **Return:**\n    - The AST of the regular expression.\n\n### validateRegExpLiteral(source, options?)\n\nValidate a given regular expression literal.\n\nThis is equivalent to `new RegExpValidator(options).validateLiteral(source)`.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `options?` ([`RegExpValidator.Options`]) The options to validate.\n\n### visitRegExpAST(ast, handlers)\n\nVisit each node of a given AST.\n\nThis is equivalent to `new RegExpVisitor(handlers).visit(ast)`.\n\n- **Parameters:**\n    - `ast` ([`AST.Node`]) The AST to visit.\n    - `handlers` ([`RegExpVisitor.Handlers`]) The callbacks.\n\n### RegExpParser\n\n#### new RegExpParser(options?)\n\n- **Parameters:**\n    - `options?` ([`RegExpParser.Options`]) The options to parse.\n\n#### parser.parseLiteral(source, start?, end?)\n\nParse a regular expression literal.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"/abc/g\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n- **Return:**\n    - The AST of the regular expression.\n\n#### parser.parsePattern(source, start?, end?, uFlag?)\n\nParse a regular expression pattern.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"abc\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n    - `uFlag?` (`boolean`) The flag to enable Unicode mode.\n- **Return:**\n    - The AST of the regular expression pattern.\n\n#### parser.parseFlags(source, start?, end?)\n\nParse a regular expression flags.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"gim\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n- **Return:**\n    - The AST of the regular expression flags.\n\n### RegExpValidator\n\n#### new RegExpValidator(options)\n\n- **Parameters:**\n    - `options` ([`RegExpValidator.Options`]) The options to validate.\n\n#### validator.validateLiteral(source, start, end)\n\nValidate a regular expression literal.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n\n#### validator.validatePattern(source, start, end, uFlag)\n\nValidate a regular expression pattern.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n    - `uFlag?` (`boolean`) The flag to enable Unicode mode.\n\n#### validator.validateFlags(source, start, end)\n\nValidate a regular expression flags.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n\n### RegExpVisitor\n\n#### new RegExpVisitor(handlers)\n\n- **Parameters:**\n    - `handlers` ([`RegExpVisitor.Handlers`]) The callbacks.\n\n#### visitor.visit(ast)\n\nValidate a regular expression literal.\n\n- **Parameters:**\n    - `ast` ([`AST.Node`]) The AST to visit.\n\n## 📰 Changelog\n\n- [GitHub Releases](https://github.com/mysticatea/regexpp/releases)\n\n## 🍻 Contributing\n\nWelcome contributing!\n\nPlease use GitHub's Issues/PRs.\n\n### Development Tools\n\n- `npm test` runs tests and measures coverage.\n- `npm run build` compiles TypeScript source code to `index.js`, `index.js.map`, and `index.d.ts`.\n- `npm run clean` removes the temporary files which are created by `npm test` and `npm run build`.\n- `npm run lint` runs ESLint.\n- `npm run update:test` updates test fixtures.\n- `npm run update:ids` updates `src/unicode/ids.ts`.\n- `npm run watch` runs tests with `--watch` option.\n\n[`AST.Node`]: src/ast.ts#L4\n[`RegExpParser.Options`]: src/parser.ts#L539\n[`RegExpValidator.Options`]: src/validator.ts#L127\n[`RegExpVisitor.Handlers`]: src/visitor.ts#L204\n","readmeFilename":"README.md","gitHead":"3938ad4f7d7d64618a89fe9476587cd5f4c14af5","_id":"regexpp@2.0.0-beta.0","_npmVersion":"6.1.0","_nodeVersion":"10.4.0","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-jTmmohvR5ADdpDhN6odv4gsDy5wKLNJVMqH5DBlLYSIvcdyELo9atEg6Hyeb4tjARCBFcQvJc7gG1dB3V9JSsg==","shasum":"14d47dec39c4cd37090a12ac243fc981b73b63df","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-2.0.0-beta.0.tgz","fileCount":8,"unpackedSize":1251124,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbK1ApCRA9TVsSAnZWagAAN4MP/ja5hO6miy1QmasvPRq0\nk8cSH/VPL3s3JDAhVyWeuyyHHDOVazMyuwLIbSUj+6z7h8XAJfabWxVcY/yr\nkGnRy+MtVXjqysBbyDcS9ez1bFaGuQB/3INsn46Q2xaFoPahrDDt/MAxbQsJ\nhKKMTXaCVI73eIuqADHy1KIKbJ9YlXEGupTu3fsnetZ81TYbI5Fg8HK4K6EP\nq4fylk9wu1gt2fOXx05bT4Q/XjxKWw3yzuW5CuLl9rBfWnNCD3XQ1E4IMuTz\n1jJgBVViMDbnmIWeBh1R1SJNM0Sr8rjf3MnTXemDDV4r97p2eUpN0UMfM/MD\nDf/BhNVD8v8M0HnEWefWnnHX5434lIhBBM0iZyRyWoKhP9EHqIHReZwCPkUp\n2ajiwBdT7f860J19IlD9yWk0Now2UtanO1ydksz2JtfSXnQc185xEH7sqkd7\nneQFFjhIatqNUuBT8k37Bsk4GI9396cv7rOI0612wDoCwP/J5/vvb0zqfBAX\nrGkL1ciqCMbOJ99mZqhZO7zt/JxbFfeZX5mq2DnN0Zat0Cwzqf5q8aeVgaAf\nv9XGCHpMCMhR/WVsN1d+PXqittX2hECT4NBgv2h5BA+2k3OAS8gb9IJgOI6m\nFUPCx0hPURv9gd5/VTf18isZrCf7OpXKL2CVo4aMv5n4fzUY/5DGSBAXRCwC\nY0YQ\r\n=Quws\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJMaZY2k+90w8qCzaF2nw/Zal9Jws16SQGA9BAWk8yKwIhAIWwRR/k/MZQbaXbGKMOdB9A4AhK43Ts5HXKDLfotM3k"}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_2.0.0-beta.0_1529565224684_0.0593522495032206"},"_hasShrinkwrap":false},"2.0.0":{"name":"regexpp","version":"2.0.0","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=6.5.0"},"main":"index","files":["index.*"],"dependencies":{},"devDependencies":{"@types/eslint":"^4.16.2","@types/mocha":"^5.2.2","@types/node":"^10.3.3","coveralls":"^3.0.1","dts-bundle":"^0.7.3","eslint":"^4.19.1","eslint-plugin-mysticatea":"^5.0.0-beta.15","mocha":"^5.2.0","npm-run-all":"^4.1.3","nyc":"^12.0.2","rimraf":"^2.6.2","rollup":"^0.60.7","rollup-plugin-node-resolve":"^3.3.0","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^6.1.1","typescript":"^2.9.2","typescript-eslint-parser":"^16.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","coveralls":"nyc report --reporter=text-lcov | coveralls","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:ids":"ts-node scripts/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"813344e7f2d08f4ab729df57da5cd56c022c7417","_id":"regexpp@2.0.0","_npmVersion":"6.1.0","_nodeVersion":"10.4.0","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-g2FAVtR8Uh8GO1Nv5wpxW7VFVwHcCEr4wyA8/MHiRkO8uHoR5ntAA8Uq3P1vvMTX/BeQiRVSpDGLd+Wn5HNOTA==","shasum":"b2a7534a85ca1b033bcf5ce9ff8e56d4e0755365","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-2.0.0.tgz","fileCount":8,"unpackedSize":1251117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbLjtVCRA9TVsSAnZWagAAGt0P/0I6LQ/X/pSQ61HccWjP\n1Dqqt5VQRXUicC5Pl+Rx//eghwqPmSAR8qovAHe7YxxwqfKZg3fyBmOdU2UU\nzqKlRhfXsqZpfym9KMFfSrnEdZSkJ8SfkWjo4VBcQdEo8ng003E+NWAW/ce2\nb6PDFhX87begWQhnO1v61u3rurXLNS51rKq+FyGwffqmQmK5SAaQla9T24CG\nTu5HMUh1YP9unNhIyoVemKrwhATSEuBXBAGm63bU9xtarmfoUwAy1xZi2knM\nhzhXukcwKjDYVAVcH5R0wxM0vEpMKtoF+96b0XP4MF2vobQq3QiYpXzMMsGt\nMQju1O+4f3Vgt1fhozeE7yAH7WziIr2pfz0JIEGfC3fxBhrrVm4iIxzGQVBb\nyU86KzRI2dxa5d9RReAC3ghwRSFesV3VEULl90BQ8TgV6j8ySMB/YQx2AiaX\n0uZtuzfleI1z4PnZtFIeQPQa6+l/UIqOsWY1lB6N201BAt2DVrlPJADQr1m+\nPTtaR5VrVpp7NUdWFOuUw/PYhmQI4MSUre38Fmk8o293gbjp+LsSiIB42QcU\nrBvF9nZpcHaXxusXSwICO0aGHaWb7ynpQtQofu34PRXGB8cy6I6FKWp+R4nE\npY1Cy59BsNGKZR/7RIfToeO3WSYM4/tm6sWDyhMk2mF3uOsRDP+aUcA2gLKA\nsNL1\r\n=1nBw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDndddKOiquC7b8JkbS8hBTkWMPxmi1kzqMystbFhYyWAiBhLyXydgEiilXkdfXlvEWrHP1JYyK+A09L68XXvI0H3Q=="}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_2.0.0_1529756501513_0.18740514059504432"},"_hasShrinkwrap":false},"2.0.1":{"name":"regexpp","version":"2.0.1","description":"Regular expression parser for ECMAScript 2018.","engines":{"node":">=6.5.0"},"main":"index","dependencies":{},"devDependencies":{"@types/eslint":"^4.16.2","@types/mocha":"^5.2.2","@types/node":"^10.3.3","coveralls":"^3.0.1","dts-bundle":"^0.7.3","eslint":"^4.19.1","eslint-plugin-mysticatea":"^5.0.0-beta.15","mocha":"^5.2.0","npm-run-all":"^4.1.3","nyc":"^12.0.2","rimraf":"^2.6.2","rollup":"^0.60.7","rollup-plugin-node-resolve":"^3.3.0","rollup-plugin-sourcemaps":"^0.4.2","rollup-watch":"^4.3.1","ts-node":"^6.1.1","typescript":"^2.9.2","typescript-eslint-parser":"^16.0.0"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","coveralls":"nyc report --reporter=text-lcov | coveralls","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:ids":"ts-node scripts/update-unicode-ids.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"d68b435cbf6d37e3fa6af186965a7b6c738bf685","_id":"regexpp@2.0.1","_npmVersion":"6.2.0","_nodeVersion":"10.11.0","_npmUser":{"name":"mysticatea","email":"star.ctor@gmail.com"},"dist":{"integrity":"sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==","shasum":"8d19d31cf632482b589049f8281f93dbcba4d07f","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz","fileCount":8,"unpackedSize":1254503,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtzEHCRA9TVsSAnZWagAAJ+wP/RmHGA/KF2dK7DXUMybr\np/9RenpuMVLg5ycBV08EhE2L0Xs4DNckRWKNaWdNnV6NeMHsz9xhwHTPapdU\n7ZxVXCAnpTav3VySek6vdGsb5J5uE4sBFkTBVLKkTT70JUEbJx5kFWTkyooC\nslUjs7gHc5hPRJju8UvupNmDGGnSVMH0nCZP3XCXSeFuv5fRpHheHRFwoVD3\nMlKbcEmQGMGo5wNCiBmpleLlmP1ox7w+IVnVJYdGXBh9ctV2PF9vN0ApANNF\n6HsqZTrIWF6Cy7hRTnp+lQ9eM813hDD8aq4DALWt4eS82iTN4e4G8SiQFopn\nki2f8S6qsSd9rfP4cRTYToj0RhyxHEpvenFkveYncJrMcKKA45q/WSvMaq3c\nWX3RW8v93f3PsHF1AwaP9FRmxWX0ImnEeTcafHWlU8bR+613K7eCFjTPB9Bf\nCxObX7bTL3AGO2Yt5xMMMwepN01r25sWmJGA+7Ruwq7w0LQAZEZB2CAEayq2\nBrkC6qlWSHrnKlr5FdCoGjk48Rlh+zZ8yDhIbrr2QZjSm6/JNyGINaYvRcU5\n5hHCwRowkGPAVM9puqc57hVcStA+PO3gB17kesu1/+ToWFNWNU97log8iHib\n99KgGUmroAvaIkUkf5Hu/y6psrD9oGR4nwXUWIFprQvB13yXsvhrDnmbZTQ6\n2hqA\r\n=fkdW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEx2POhiXOZYMNXg6WRNKDw3w5rvFcd+W0rApmZSfrIAIhAO200neSbWVNqe/rmDXD/tvFAGy2RN6xJy9vx2Mw4w7Y"}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_2.0.1_1538732295013_0.4707850604874946"},"_hasShrinkwrap":false},"3.0.0":{"name":"regexpp","version":"3.0.0","description":"Regular expression parser for ECMAScript.","engines":{"node":">=8"},"main":"index","dependencies":{},"devDependencies":{"@mysticatea/eslint-plugin":"^11.0.0","@types/eslint":"^4.16.2","@types/jsdom":"^12.2.4","@types/mocha":"^5.2.2","@types/node":"^12.6.8","codecov":"^3.5.0","dts-bundle":"^0.7.3","eslint":"^6.1.0","jsdom":"^15.1.1","mocha":"^6.2.0","npm-run-all":"^4.1.5","nyc":"^14.1.1","rimraf":"^2.6.2","rollup":"^1.17.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-sourcemaps":"^0.4.2","ts-node":"^8.3.0","typescript":"^3.5.3"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","codecov":"nyc report -r lcovonly && codecov -t ${CODECOV_TOKEN} --disable=gcov","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:unicode":"run-s update:unicode:*","update:unicode:ids":"ts-node scripts/update-unicode-ids.ts","update:unicode:props":"ts-node scripts/update-unicode-properties.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions .ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","es2019","es2020","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","gitHead":"b4d683df665e3b9a5d014eea34222fdb3d6f2e7c","_id":"regexpp@3.0.0","_nodeVersion":"12.6.0","_npmVersion":"6.11.2","dist":{"integrity":"sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g==","shasum":"dd63982ee3300e67b41c1956f850aa680d9d330e","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-3.0.0.tgz","fileCount":8,"unpackedSize":331440,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdaI2bCRA9TVsSAnZWagAArb4P/jW9yLLpWiahpfqe1Bcb\noxfNci9004GeGHBnrjehjL1Qv3SClL6Pf9N7ZMNIzDqWDnF0y8a0zGfoTW4G\n/M4AV9okqft4a9R8jAU/rKEclaA9e5HIZivvj5mG7STVz6fa5DM4yJ+akNMk\nmd/UArhFom5JtfNj/LMJuYuaFGX3oxhXUjMzIP7ierYpjCg09IWNVgfgq7j3\n9ibvVxkYHrTMsjYeN0dEkZdhQIR9UVX3wQv8mw+kJ0lB/00OvgALJNM2r4Fa\nhBnKbiwUZ18hjCuwbLBs2gUMFR9k/LR/Ypydf0reauopb9RH7bmvm2IdP2h+\nNM3zFV4Q3yp4sdjPZ9HMYoO5m4fv7S5sY69AcD51q8HUD0iebtsiwTDEGEzS\na84ulxH5SOIFN0ue+vEtAjglzv90DR722Cq7m9atm5ulPOi9hq0ITtwiOzmk\nHaCoTG6mhruTFH/Fnb8Bq0Xf3V3Y1p//sLHwYFPYzYcSyI7u07F8QL842Fk8\n0YAFh76SNsjCzqd7QoV5nQeMphZjmNCNwc+uuKnbZu+4AZRsnf0gl6ciFWmo\nsAZRLD0rc2NffmkYQA/+paYfUxYVysVnxU8xUlJjicVgWOBB1P2M2nvoFp9R\nErOQ0Gy6lQpEfIudHKFzpOtlhDuBRNSY5bMQzFzc1CYheJeEwgNavd334vPC\n9fx0\r\n=wkHo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAMO5M7tmpNnbxy4+YhvE2mj4VmqhrL6O93qCK/WIAbwIhAMMVgyQNkOdFFcMJJr7UAk6X53xvLCbQd3cl0M1wiTi3"}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"_npmUser":{"name":"mysticatea","email":"public@mysticatea.dev"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_3.0.0_1567133082487_0.36859641486891404"},"_hasShrinkwrap":false},"3.1.0":{"name":"regexpp","version":"3.1.0","description":"Regular expression parser for ECMAScript.","engines":{"node":">=8"},"main":"index","dependencies":{},"devDependencies":{"@mysticatea/eslint-plugin":"^11.0.0","@types/eslint":"^4.16.2","@types/jsdom":"^12.2.4","@types/mocha":"^5.2.2","@types/node":"^12.6.8","codecov":"^3.5.0","dts-bundle":"^0.7.3","eslint":"^6.1.0","jsdom":"^15.1.1","mocha":"^6.2.0","npm-run-all":"^4.1.5","nyc":"^14.1.1","rimraf":"^2.6.2","rollup":"^1.17.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-sourcemaps":"^0.4.2","ts-node":"^8.3.0","typescript":"^3.5.3"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","codecov":"nyc report -r lcovonly && codecov -t ${CODECOV_TOKEN} --disable=gcov","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:unicode":"run-s update:unicode:*","update:unicode:ids":"ts-node scripts/update-unicode-ids.ts","update:unicode:props":"ts-node scripts/update-unicode-properties.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","es2019","es2020","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","funding":"https://github.com/sponsors/mysticatea","gitHead":"5563cf33c4976d01a348472b818221fc199bbeb6","_id":"regexpp@3.1.0","_nodeVersion":"12.12.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==","shasum":"206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz","fileCount":8,"unpackedSize":300946,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeiLnFCRA9TVsSAnZWagAAGW4P/2DVgNzSQ+VFPYXcsi9k\nCGD1JwB2gGMNi9EDCBESo2oojc4sQ/yApudDf1RarzqXV43iE4A5I+1GG36F\ntmbWr78LBthyP9fyf1r4RSpAE5l9TYx2Fw/isN6NkcWnWYa/0mFebiu6EQSc\n/nyU7U98xBamWVvbLLlcbP+jYvSDn8IcJzzGOEQ1862XdP9EwGc1Gy2xOsxt\nLaTvVlMwPGxi2TQihy18W+52Twq9FOCnYHOFbqHUIilTBtQqUMjb+Pn+B2Gy\nNmN1g9zpaRwQE9kBexdrzq8BK72UfxpuxIdmFOyrXqWu5H6Zz0tVx9lOUAJa\n7kPCWEXgZVDvt3OqanB3NUytaK43gwmoUeEtH+lL3JUbP3rJqNHt7kfVB2aM\nKZ/rt+H/RNLeACD7btYL+gXSH3PHnhIIwhIJr+gjy9vTFfRGM3f89ShVW55y\ndcchX0WclyMnAlzEH+POuLu+bD3WXzrqXij/gIhlE/TFa2vTPJyJ92NEbg26\nbstB4sZzM/xaRdYLaGZRgB2B1tAH0Y9xu9wc0SaDs2I0MU8VnQ855cJ88BNZ\n3AxU2XrJgUs628KVqH3RRl1et383trKeh1l2KW1e6Hk1Jl02ekcTxLs1SAYz\noA9FarTc5tDlHHvvWhFB6cFtE1xyIZXW1QkI9KOpQ6EqRChn0ceq1/m4eqh5\n8DEo\r\n=ruP1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDKV0sOvc9ks0EIuWSsJT5VEi5SbaJUNf4QA4EU+TyWVQIhAKdkpe2qcsfim7z8jT8bG162QXKprvrc1T8039RMUpEL"}]},"maintainers":[{"name":"mysticatea","email":"star.ctor@gmail.com"}],"_npmUser":{"name":"mysticatea","email":"public@mysticatea.dev"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_3.1.0_1586018756638_0.30465495628858386"},"_hasShrinkwrap":false},"3.2.0":{"name":"regexpp","version":"3.2.0","description":"Regular expression parser for ECMAScript.","engines":{"node":">=8"},"main":"index","exports":{".":{"import":"./index.mjs","default":"./index.js"},"./package.json":"./package.json"},"dependencies":{},"devDependencies":{"@mysticatea/eslint-plugin":"^11.0.0","@types/eslint":"^4.16.2","@types/jsdom":"^12.2.4","@types/mocha":"^5.2.2","@types/node":"^12.6.8","codecov":"^3.5.0","dts-bundle":"^0.7.3","eslint":"^6.1.0","jsdom":"^15.1.1","mocha":"^6.2.0","npm-run-all":"^4.1.5","nyc":"^14.1.1","rimraf":"^2.6.2","rollup":"^1.17.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-sourcemaps":"^0.4.2","ts-node":"^8.3.0","typescript":"^3.5.3"},"scripts":{"prebuild":"npm run -s clean","build":"run-s build:*","build:tsc":"tsc --module es2015","build:rollup":"rollup -c","build:dts":"dts-bundle --name regexpp --main .temp/index.d.ts --out ../index.d.ts","clean":"rimraf .temp index.*","codecov":"nyc report -r lcovonly && codecov -t ${CODECOV_TOKEN} --disable=gcov","lint":"eslint scripts src test --ext .ts","pretest":"run-s build lint","test":"nyc _mocha \"test/*.ts\" --reporter dot --timeout 10000","update:test":"ts-node scripts/update-fixtures.ts","update:unicode":"run-s update:unicode:*","update:unicode:ids":"ts-node scripts/update-unicode-ids.ts","update:unicode:props":"ts-node scripts/update-unicode-properties.ts","preversion":"npm test","version":"npm run -s build","postversion":"git push && git push --tags","prewatch":"npm run -s clean","watch":"_mocha \"test/*.ts\" --require ts-node/register --reporter dot --timeout 10000 --watch-extensions ts --watch --growl"},"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","es2019","es2020","annexB"],"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"license":"MIT","bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"homepage":"https://github.com/mysticatea/regexpp#readme","funding":"https://github.com/sponsors/mysticatea","gitHead":"b8bc4e82885a9cff44b908d247685cde129cd863","_id":"regexpp@3.2.0","_nodeVersion":"16.1.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==","shasum":"0425a2768d8f23bad70ca4b90461fa2f1213e1b2","tarball":"https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz","fileCount":8,"unpackedSize":302373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxzhSCRA9TVsSAnZWagAAc2kP/iQ10uHVSls0lXs9H+As\nB65WOCkL/wl8JbJm01/MUQyMAEuDpK4FuQDZjeya3aIuI1BQ6nuQFyLWCzwJ\nmaov4vDMFrPicMarBVCf3DM7fWih/mSkNSFF0NASAuaiP5x5BuzukFNcuos2\nfEHxTfxB05W3QxuONhsHJTg5XnUqlgT98LpM/7QTlvShqFdT08FwLYwNhu3k\nkS4yHtyCRTsLNLbKVYxUs4uh0Z32QdhqVJhw8nIHmQVCqfXMR6S/FSo8vmkZ\nGRDDQuzd9hhwUo4WPdBcWKvVQTfCDT7e4nStPb1rDvu373ppzkbyP6m8TLAz\nGE7du6qSKFcwDQMsOfoO3mVUdir+erB9sxv4Hk0WrNFyTzxmunCDj1bLou9b\nwJMaOGOLU9MLAW/G96l/ofoQVARo47MpSkGch22LbgOf/buByj133GlOjPJm\nioCuPCqTimWeG9KgGTi8Kzj5efx9NXfOuqbOqsoL0lb9K4CfNPsmiA7emoA+\n2sqOlQo5SrF/Rw1HUhohC/8RfOVOCsdnIW7jBVoCvaJqLrpNKGZY4W4qf6Nr\n6cr+chlhfV0Bb32f7ce5qAZ1zBsXuxv4Mb3LZCRNEJDRECrM3o3MkA7WqpYG\nRRCjRYQLLat/43GvFsdfkfGoedTv0TyTUSqb+JO9nyWdqUwY5+4gjsYVRvsH\nW+1a\r\n=L6qP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYmHh3ywpyYAIMLELscDqvI63euhKyOhTIN8U7p8D0FQIhAMvcwZBngkLO10wh51PbIry4wd+nzRNdJI3jmbL+r5jH"}]},"_npmUser":{"name":"mysticatea","email":"public@mysticatea.dev"},"directories":{},"maintainers":[{"name":"mysticatea","email":"public@mysticatea.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexpp_3.2.0_1623668818163_0.22320183446534858"},"_hasShrinkwrap":false}},"time":{"created":"2018-02-28T10:17:11.684Z","0.0.0":"2018-02-28T10:17:11.737Z","modified":"2022-05-15T17:03:11.010Z","1.0.0":"2018-03-05T11:28:55.155Z","1.0.1":"2018-03-06T13:40:16.526Z","1.1.0":"2018-03-30T09:45:59.374Z","2.0.0-beta.0":"2018-06-21T07:13:44.761Z","2.0.0":"2018-06-23T12:21:41.579Z","2.0.1":"2018-10-05T09:38:15.306Z","3.0.0":"2019-08-30T02:44:42.581Z","3.1.0":"2020-04-04T16:45:56.795Z","3.2.0":"2021-06-14T11:06:58.407Z"},"maintainers":[{"name":"mysticatea","email":"public@mysticatea.dev"}],"description":"Regular expression parser for ECMAScript.","homepage":"https://github.com/mysticatea/regexpp#readme","keywords":["regexp","regular","expression","parser","validator","ast","abstract","syntax","tree","ecmascript","es2015","es2016","es2017","es2018","es2019","es2020","annexB"],"repository":{"type":"git","url":"git+https://github.com/mysticatea/regexpp.git"},"author":{"name":"Toru Nagashima","url":"https://github.com/mysticatea"},"bugs":{"url":"https://github.com/mysticatea/regexpp/issues"},"license":"MIT","readme":"# regexpp\n\n[![npm version](https://img.shields.io/npm/v/regexpp.svg)](https://www.npmjs.com/package/regexpp)\n[![Downloads/month](https://img.shields.io/npm/dm/regexpp.svg)](http://www.npmtrends.com/regexpp)\n[![Build Status](https://github.com/mysticatea/regexpp/workflows/CI/badge.svg)](https://github.com/mysticatea/regexpp/actions)\n[![codecov](https://codecov.io/gh/mysticatea/regexpp/branch/master/graph/badge.svg)](https://codecov.io/gh/mysticatea/regexpp)\n[![Dependency Status](https://david-dm.org/mysticatea/regexpp.svg)](https://david-dm.org/mysticatea/regexpp)\n\nA regular expression parser for ECMAScript.\n\n## 💿 Installation\n\n```bash\n$ npm install regexpp\n```\n\n- require Node.js 8 or newer.\n\n## 📖 Usage\n\n```ts\nimport {\n    AST,\n    RegExpParser,\n    RegExpValidator,\n    RegExpVisitor,\n    parseRegExpLiteral,\n    validateRegExpLiteral,\n    visitRegExpAST\n} from \"regexpp\"\n```\n\n### parseRegExpLiteral(source, options?)\n\nParse a given regular expression literal then make AST object.\n\nThis is equivalent to `new RegExpParser(options).parseLiteral(source)`.\n\n- **Parameters:**\n    - `source` (`string | RegExp`) The source code to parse.\n    - `options?` ([`RegExpParser.Options`]) The options to parse.\n- **Return:**\n    - The AST of the regular expression.\n\n### validateRegExpLiteral(source, options?)\n\nValidate a given regular expression literal.\n\nThis is equivalent to `new RegExpValidator(options).validateLiteral(source)`.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `options?` ([`RegExpValidator.Options`]) The options to validate.\n\n### visitRegExpAST(ast, handlers)\n\nVisit each node of a given AST.\n\nThis is equivalent to `new RegExpVisitor(handlers).visit(ast)`.\n\n- **Parameters:**\n    - `ast` ([`AST.Node`]) The AST to visit.\n    - `handlers` ([`RegExpVisitor.Handlers`]) The callbacks.\n\n### RegExpParser\n\n#### new RegExpParser(options?)\n\n- **Parameters:**\n    - `options?` ([`RegExpParser.Options`]) The options to parse.\n\n#### parser.parseLiteral(source, start?, end?)\n\nParse a regular expression literal.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"/abc/g\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n- **Return:**\n    - The AST of the regular expression.\n\n#### parser.parsePattern(source, start?, end?, uFlag?)\n\nParse a regular expression pattern.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"abc\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n    - `uFlag?` (`boolean`) The flag to enable Unicode mode.\n- **Return:**\n    - The AST of the regular expression pattern.\n\n#### parser.parseFlags(source, start?, end?)\n\nParse a regular expression flags.\n\n- **Parameters:**\n    - `source` (`string`) The source code to parse. E.g. `\"gim\"`.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n- **Return:**\n    - The AST of the regular expression flags.\n\n### RegExpValidator\n\n#### new RegExpValidator(options)\n\n- **Parameters:**\n    - `options` ([`RegExpValidator.Options`]) The options to validate.\n\n#### validator.validateLiteral(source, start, end)\n\nValidate a regular expression literal.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n\n#### validator.validatePattern(source, start, end, uFlag)\n\nValidate a regular expression pattern.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n    - `uFlag?` (`boolean`) The flag to enable Unicode mode.\n\n#### validator.validateFlags(source, start, end)\n\nValidate a regular expression flags.\n\n- **Parameters:**\n    - `source` (`string`) The source code to validate.\n    - `start?` (`number`) The start index in the source code. Default is `0`.\n    - `end?` (`number`) The end index in the source code. Default is `source.length`.\n\n### RegExpVisitor\n\n#### new RegExpVisitor(handlers)\n\n- **Parameters:**\n    - `handlers` ([`RegExpVisitor.Handlers`]) The callbacks.\n\n#### visitor.visit(ast)\n\nValidate a regular expression literal.\n\n- **Parameters:**\n    - `ast` ([`AST.Node`]) The AST to visit.\n\n## 📰 Changelog\n\n- [GitHub Releases](https://github.com/mysticatea/regexpp/releases)\n\n## 🍻 Contributing\n\nWelcome contributing!\n\nPlease use GitHub's Issues/PRs.\n\n### Development Tools\n\n- `npm test` runs tests and measures coverage.\n- `npm run build` compiles TypeScript source code to `index.js`, `index.js.map`, and `index.d.ts`.\n- `npm run clean` removes the temporary files which are created by `npm test` and `npm run build`.\n- `npm run lint` runs ESLint.\n- `npm run update:test` updates test fixtures.\n- `npm run update:ids` updates `src/unicode/ids.ts`.\n- `npm run watch` runs tests with `--watch` option.\n\n[`AST.Node`]: src/ast.ts#L4\n[`RegExpParser.Options`]: src/parser.ts#L539\n[`RegExpValidator.Options`]: src/validator.ts#L127\n[`RegExpVisitor.Handlers`]: src/visitor.ts#L204\n","readmeFilename":"README.md"}