protobufjs 6.11.2 → 6.11.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/pbjs +0 -0
- package/bin/pbts +0 -0
- package/cli/bin/pbjs +0 -0
- package/cli/bin/pbts +0 -0
- package/cli/node_modules/.package-lock.json +281 -64
- package/cli/node_modules/@babel/parser/CHANGELOG.md +1073 -0
- package/cli/node_modules/{word-wrap → @babel/parser}/LICENSE +1 -3
- package/cli/node_modules/@babel/parser/README.md +19 -0
- package/cli/node_modules/@babel/parser/bin/babel-parser.js +15 -0
- package/cli/node_modules/@babel/parser/index.cjs +5 -0
- package/cli/node_modules/@babel/parser/lib/index.js +16800 -0
- package/cli/node_modules/@babel/parser/lib/index.js.map +1 -0
- package/cli/node_modules/@babel/parser/package.json +46 -0
- package/cli/node_modules/@babel/parser/typings/babel-parser.d.ts +214 -0
- package/cli/node_modules/@types/linkify-it/LICENSE +21 -0
- package/cli/node_modules/@types/linkify-it/README.md +89 -0
- package/cli/node_modules/@types/linkify-it/index.d.ts +69 -0
- package/cli/node_modules/@types/linkify-it/package.json +39 -0
- package/cli/node_modules/@types/markdown-it/LICENSE +21 -0
- package/cli/node_modules/@types/markdown-it/README.md +16 -0
- package/cli/node_modules/@types/markdown-it/index.d.ts +13 -0
- package/cli/node_modules/@types/markdown-it/lib/common/entities.d.ts +7 -0
- package/cli/node_modules/@types/markdown-it/lib/common/html_blocks.d.ts +3 -0
- package/cli/node_modules/@types/markdown-it/lib/common/html_re.d.ts +8 -0
- package/cli/node_modules/@types/markdown-it/lib/common/utils.d.ts +70 -0
- package/cli/node_modules/@types/markdown-it/lib/helpers/index.d.ts +13 -0
- package/cli/node_modules/@types/markdown-it/lib/helpers/parse_link_destination.d.ts +12 -0
- package/cli/node_modules/@types/markdown-it/lib/helpers/parse_link_label.d.ts +5 -0
- package/cli/node_modules/@types/markdown-it/lib/helpers/parse_link_title.d.ts +5 -0
- package/cli/node_modules/@types/markdown-it/lib/index.d.ts +406 -0
- package/cli/node_modules/@types/markdown-it/lib/parser_block.d.ts +29 -0
- package/cli/node_modules/@types/markdown-it/lib/parser_core.d.ts +19 -0
- package/cli/node_modules/@types/markdown-it/lib/parser_inline.d.ts +42 -0
- package/cli/node_modules/@types/markdown-it/lib/renderer.d.ts +96 -0
- package/cli/node_modules/@types/markdown-it/lib/ruler.d.ts +167 -0
- package/cli/node_modules/@types/markdown-it/lib/rules_block/state_block.d.ts +134 -0
- package/cli/node_modules/@types/markdown-it/lib/rules_core/state_core.d.ts +20 -0
- package/cli/node_modules/@types/markdown-it/lib/rules_inline/state_inline.d.ts +78 -0
- package/cli/node_modules/@types/markdown-it/lib/token.d.ts +111 -0
- package/cli/node_modules/@types/markdown-it/package.json +43 -0
- package/cli/node_modules/@types/mdurl/LICENSE +21 -0
- package/cli/node_modules/@types/mdurl/README.md +16 -0
- package/cli/node_modules/@types/mdurl/decode.d.ts +7 -0
- package/cli/node_modules/@types/mdurl/encode.d.ts +7 -0
- package/cli/node_modules/@types/mdurl/format.d.ts +5 -0
- package/cli/node_modules/@types/mdurl/index.d.ts +26 -0
- package/cli/node_modules/@types/mdurl/package.json +23 -0
- package/cli/node_modules/@types/mdurl/parse.d.ts +5 -0
- package/cli/node_modules/acorn/CHANGELOG.md +190 -0
- package/cli/node_modules/acorn/LICENSE +1 -1
- package/cli/node_modules/acorn/README.md +31 -27
- package/cli/node_modules/acorn/bin/acorn +2 -2
- package/cli/node_modules/acorn/dist/acorn.d.ts +50 -7
- package/cli/node_modules/acorn/dist/acorn.js +1313 -894
- package/cli/node_modules/acorn/dist/acorn.mjs +1308 -889
- package/cli/node_modules/acorn/dist/bin.js +48 -21
- package/cli/node_modules/acorn/package.json +19 -4
- package/cli/node_modules/acorn-jsx/index.d.ts +12 -0
- package/cli/node_modules/acorn-jsx/package.json +1 -1
- package/cli/node_modules/argparse/CHANGELOG.md +216 -0
- package/cli/node_modules/argparse/LICENSE +254 -0
- package/cli/node_modules/argparse/README.md +84 -0
- package/cli/node_modules/argparse/argparse.js +3707 -0
- package/cli/node_modules/argparse/lib/sub.js +67 -0
- package/cli/node_modules/argparse/lib/textwrap.js +440 -0
- package/cli/node_modules/argparse/package.json +31 -0
- package/cli/node_modules/balanced-match/.github/FUNDING.yml +2 -0
- package/cli/node_modules/balanced-match/README.md +6 -0
- package/cli/node_modules/balanced-match/index.js +3 -0
- package/cli/node_modules/balanced-match/package.json +3 -4
- package/cli/node_modules/bluebird/LICENSE +21 -0
- package/cli/node_modules/bluebird/README.md +57 -0
- package/cli/node_modules/bluebird/changelog.md +1 -0
- package/cli/node_modules/bluebird/js/browser/bluebird.core.js +3914 -0
- package/cli/node_modules/bluebird/js/browser/bluebird.core.min.js +31 -0
- package/cli/node_modules/bluebird/js/browser/bluebird.js +5778 -0
- package/cli/node_modules/bluebird/js/browser/bluebird.min.js +31 -0
- package/cli/node_modules/bluebird/js/release/any.js +21 -0
- package/cli/node_modules/bluebird/js/release/assert.js +55 -0
- package/cli/node_modules/bluebird/js/release/async.js +120 -0
- package/cli/node_modules/bluebird/js/release/bind.js +67 -0
- package/cli/node_modules/bluebird/js/release/bluebird.js +11 -0
- package/cli/node_modules/bluebird/js/release/call_get.js +123 -0
- package/cli/node_modules/bluebird/js/release/cancel.js +129 -0
- package/cli/node_modules/bluebird/js/release/catch_filter.js +42 -0
- package/cli/node_modules/bluebird/js/release/context.js +69 -0
- package/cli/node_modules/bluebird/js/release/debuggability.js +1009 -0
- package/cli/node_modules/bluebird/js/release/direct_resolve.js +46 -0
- package/cli/node_modules/bluebird/js/release/each.js +30 -0
- package/cli/node_modules/bluebird/js/release/errors.js +116 -0
- package/cli/node_modules/bluebird/js/release/es5.js +80 -0
- package/cli/node_modules/bluebird/js/release/filter.js +12 -0
- package/cli/node_modules/bluebird/js/release/finally.js +146 -0
- package/cli/node_modules/bluebird/js/release/generators.js +223 -0
- package/cli/node_modules/bluebird/js/release/join.js +165 -0
- package/cli/node_modules/bluebird/js/release/map.js +175 -0
- package/cli/node_modules/bluebird/js/release/method.js +55 -0
- package/cli/node_modules/bluebird/js/release/nodeback.js +51 -0
- package/cli/node_modules/bluebird/js/release/nodeify.js +58 -0
- package/cli/node_modules/bluebird/js/release/promise.js +819 -0
- package/cli/node_modules/bluebird/js/release/promise_array.js +186 -0
- package/cli/node_modules/bluebird/js/release/promisify.js +314 -0
- package/cli/node_modules/bluebird/js/release/props.js +118 -0
- package/cli/node_modules/bluebird/js/release/queue.js +73 -0
- package/cli/node_modules/bluebird/js/release/race.js +49 -0
- package/cli/node_modules/bluebird/js/release/reduce.js +183 -0
- package/cli/node_modules/bluebird/js/release/schedule.js +62 -0
- package/cli/node_modules/bluebird/js/release/settle.js +47 -0
- package/cli/node_modules/bluebird/js/release/some.js +148 -0
- package/cli/node_modules/bluebird/js/release/synchronous_inspection.js +103 -0
- package/cli/node_modules/bluebird/js/release/thenables.js +86 -0
- package/cli/node_modules/bluebird/js/release/timers.js +93 -0
- package/cli/node_modules/bluebird/js/release/using.js +226 -0
- package/cli/node_modules/bluebird/js/release/util.js +421 -0
- package/cli/node_modules/bluebird/package.json +78 -0
- package/cli/node_modules/catharsis/LICENSE +17 -0
- package/cli/node_modules/catharsis/README.md +393 -0
- package/cli/node_modules/catharsis/bin/parse.js +55 -0
- package/cli/node_modules/catharsis/catharsis.js +169 -0
- package/cli/node_modules/catharsis/lib/describe.js +563 -0
- package/cli/node_modules/catharsis/lib/parser.js +5776 -0
- package/cli/node_modules/catharsis/lib/schema.js +72 -0
- package/cli/node_modules/catharsis/lib/stringify.js +277 -0
- package/cli/node_modules/catharsis/lib/types.js +22 -0
- package/cli/node_modules/catharsis/package.json +30 -0
- package/cli/node_modules/catharsis/res/en.json +92 -0
- package/cli/node_modules/entities/LICENSE +11 -0
- package/cli/node_modules/entities/lib/decode.d.ts +7 -0
- package/cli/node_modules/entities/lib/decode.d.ts.map +1 -0
- package/cli/node_modules/entities/lib/decode.js +54 -0
- package/cli/node_modules/entities/lib/decode_codepoint.d.ts +2 -0
- package/cli/node_modules/entities/lib/decode_codepoint.d.ts.map +1 -0
- package/cli/node_modules/entities/lib/decode_codepoint.js +24 -0
- package/cli/node_modules/entities/lib/encode.d.ts +4 -0
- package/cli/node_modules/entities/lib/encode.d.ts.map +1 -0
- package/cli/node_modules/entities/lib/encode.js +73 -0
- package/cli/node_modules/entities/lib/index.d.ts +24 -0
- package/cli/node_modules/entities/lib/index.d.ts.map +1 -0
- package/cli/node_modules/entities/lib/index.js +52 -0
- package/cli/node_modules/entities/lib/maps/decode.json +1 -0
- package/cli/node_modules/entities/lib/maps/entities.json +1 -0
- package/cli/node_modules/entities/lib/maps/legacy.json +1 -0
- package/cli/node_modules/entities/lib/maps/xml.json +1 -0
- package/cli/node_modules/entities/package.json +63 -0
- package/cli/node_modules/entities/readme.md +50 -0
- package/cli/node_modules/escape-string-regexp/index.d.ts +18 -0
- package/cli/node_modules/escape-string-regexp/index.js +11 -0
- package/cli/node_modules/escape-string-regexp/license +9 -0
- package/cli/node_modules/escape-string-regexp/package.json +43 -0
- package/cli/node_modules/escape-string-regexp/readme.md +29 -0
- package/cli/node_modules/escodegen/escodegen.js +42 -22
- package/cli/node_modules/escodegen/package.json +9 -8
- package/cli/node_modules/espree/node_modules/acorn/CHANGELOG.md +620 -0
- package/cli/node_modules/espree/node_modules/acorn/LICENSE +21 -0
- package/cli/node_modules/espree/node_modules/acorn/README.md +269 -0
- package/cli/node_modules/espree/node_modules/acorn/bin/acorn +4 -0
- package/cli/node_modules/espree/node_modules/acorn/dist/acorn.d.ts +209 -0
- package/cli/node_modules/espree/node_modules/acorn/dist/acorn.js +5186 -0
- package/cli/node_modules/espree/node_modules/acorn/dist/acorn.mjs +5155 -0
- package/cli/node_modules/espree/node_modules/acorn/dist/acorn.mjs.d.ts +2 -0
- package/cli/node_modules/espree/node_modules/acorn/dist/bin.js +64 -0
- package/cli/node_modules/espree/node_modules/acorn/package.json +35 -0
- package/cli/node_modules/estraverse/estraverse.js +4 -0
- package/cli/node_modules/estraverse/package.json +1 -1
- package/cli/node_modules/glob/README.md +4 -1
- package/cli/node_modules/glob/common.js +6 -8
- package/cli/node_modules/glob/glob.js +8 -8
- package/cli/node_modules/glob/package.json +13 -4
- package/cli/node_modules/glob/sync.js +10 -10
- package/cli/node_modules/graceful-fs/LICENSE +15 -0
- package/cli/node_modules/graceful-fs/README.md +143 -0
- package/cli/node_modules/graceful-fs/clone.js +23 -0
- package/cli/node_modules/graceful-fs/graceful-fs.js +448 -0
- package/cli/node_modules/graceful-fs/legacy-streams.js +118 -0
- package/cli/node_modules/graceful-fs/package.json +50 -0
- package/cli/node_modules/graceful-fs/polyfills.js +355 -0
- package/cli/node_modules/js2xmlparser/CHANGES.md +133 -0
- package/cli/node_modules/js2xmlparser/LICENSE +201 -0
- package/cli/node_modules/js2xmlparser/NOTICE +10 -0
- package/cli/node_modules/js2xmlparser/README.md +155 -0
- package/cli/node_modules/js2xmlparser/lib/main.d.ts +49 -0
- package/cli/node_modules/js2xmlparser/lib/main.js +282 -0
- package/cli/node_modules/js2xmlparser/lib/options.d.ts +477 -0
- package/cli/node_modules/js2xmlparser/lib/options.js +155 -0
- package/cli/node_modules/js2xmlparser/lib/utils.d.ts +32 -0
- package/cli/node_modules/js2xmlparser/lib/utils.js +67 -0
- package/cli/node_modules/js2xmlparser/package.json +65 -0
- package/cli/node_modules/jsdoc/Apache_License_2.0.txt +202 -0
- package/cli/node_modules/jsdoc/LICENSE.md +102 -0
- package/cli/node_modules/jsdoc/README.md +100 -0
- package/cli/node_modules/jsdoc/cli.js +465 -0
- package/cli/node_modules/jsdoc/conf.json.EXAMPLE +17 -0
- package/cli/node_modules/jsdoc/jsdoc.js +94 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/app.js +19 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/augment.js +608 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/borrow.js +52 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/config.js +74 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/doclet.js +562 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/env.js +77 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/fs.js +109 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/name.js +595 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/opts/argparser.js +306 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/opts/args.js +82 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/package.js +257 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/path.js +169 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/plugins.js +35 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/readme.js +24 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/schema.js +664 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/astbuilder.js +72 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/astnode.js +555 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/filter.js +63 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/handlers.js +372 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/parser.js +673 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/scanner.js +62 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/syntax.js +96 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/visitor.js +859 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/src/walker.js +704 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag/dictionary/definitions.js +1089 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag/dictionary.js +120 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag/inline.js +135 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag/type.js +306 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag/validator.js +51 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tag.js +198 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/template.js +80 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tutorial/resolver.js +183 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/tutorial.js +153 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/cast.js +95 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/doop.js +79 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/dumper.js +146 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/error.js +32 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/logger.js +254 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/markdown.js +282 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/stripbom.js +14 -0
- package/cli/node_modules/jsdoc/lib/jsdoc/util/templateHelper.js +1018 -0
- package/cli/node_modules/jsdoc/package.json +80 -0
- package/cli/node_modules/jsdoc/plugins/commentConvert.js +21 -0
- package/cli/node_modules/jsdoc/plugins/commentsOnly.js +17 -0
- package/cli/node_modules/jsdoc/plugins/escapeHtml.js +18 -0
- package/cli/node_modules/jsdoc/plugins/eventDumper.js +98 -0
- package/cli/node_modules/jsdoc/plugins/markdown.js +88 -0
- package/cli/node_modules/jsdoc/plugins/overloadHelper.js +181 -0
- package/cli/node_modules/jsdoc/plugins/partial.js +30 -0
- package/cli/node_modules/jsdoc/plugins/railsTemplate.js +19 -0
- package/cli/node_modules/jsdoc/plugins/shout.js +15 -0
- package/cli/node_modules/jsdoc/plugins/sourcetag.js +49 -0
- package/cli/node_modules/jsdoc/plugins/summarize.js +58 -0
- package/cli/node_modules/jsdoc/plugins/test/fixtures/markdown.js +31 -0
- package/cli/node_modules/jsdoc/plugins/test/fixtures/overloadHelper.js +50 -0
- package/cli/node_modules/jsdoc/plugins/test/fixtures/railsTemplate.js.erb +19 -0
- package/cli/node_modules/jsdoc/plugins/test/fixtures/underscore.js +22 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/commentConvert.js +20 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/escapeHtml.js +20 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/markdown.js +60 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/overloadHelper.js +102 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/railsTemplate.js +19 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/shout.js +20 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/sourcetag.js +22 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/summarize.js +112 -0
- package/cli/node_modules/jsdoc/plugins/test/specs/underscore.js +35 -0
- package/cli/node_modules/jsdoc/plugins/underscore.js +16 -0
- package/cli/node_modules/jsdoc/templates/README.md +27 -0
- package/cli/node_modules/jsdoc/templates/default/README.md +12 -0
- package/cli/node_modules/jsdoc/templates/default/publish.js +692 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Bold-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Bold-webfont.svg +1830 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Bold-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Italic-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Italic-webfont.svg +1830 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Italic-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Light-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Light-webfont.svg +1831 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Light-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-LightItalic-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-LightItalic-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Regular-webfont.eot +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Regular-webfont.svg +1831 -0
- package/cli/node_modules/jsdoc/templates/default/static/fonts/OpenSans-Regular-webfont.woff +0 -0
- package/cli/node_modules/jsdoc/templates/default/static/scripts/linenumber.js +25 -0
- package/cli/node_modules/jsdoc/templates/default/static/scripts/prettify/Apache-License-2.0.txt +202 -0
- package/cli/node_modules/jsdoc/templates/default/static/scripts/prettify/lang-css.js +2 -0
- package/cli/node_modules/jsdoc/templates/default/static/scripts/prettify/prettify.js +28 -0
- package/cli/node_modules/jsdoc/templates/default/static/styles/jsdoc-default.css +358 -0
- package/cli/node_modules/jsdoc/templates/default/static/styles/prettify-jsdoc.css +111 -0
- package/cli/node_modules/jsdoc/templates/default/static/styles/prettify-tomorrow.css +132 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/augments.tmpl +10 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/container.tmpl +196 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/details.tmpl +143 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/example.tmpl +2 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/examples.tmpl +13 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/exceptions.tmpl +32 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/layout.tmpl +38 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/mainpage.tmpl +14 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/members.tmpl +38 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/method.tmpl +131 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/modifies.tmpl +14 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/params.tmpl +131 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/properties.tmpl +108 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/returns.tmpl +19 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/source.tmpl +8 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/tutorial.tmpl +19 -0
- package/cli/node_modules/jsdoc/templates/default/tmpl/type.tmpl +7 -0
- package/cli/node_modules/jsdoc/templates/haruki/README.md +39 -0
- package/cli/node_modules/jsdoc/templates/haruki/publish.js +224 -0
- package/cli/node_modules/jsdoc/templates/silent/README.md +11 -0
- package/cli/node_modules/jsdoc/templates/silent/publish.js +7 -0
- package/cli/node_modules/klaw/CHANGELOG.md +68 -0
- package/cli/node_modules/klaw/LICENSE +15 -0
- package/cli/node_modules/klaw/README.md +253 -0
- package/cli/node_modules/klaw/package.json +40 -0
- package/cli/node_modules/klaw/src/index.js +64 -0
- package/cli/node_modules/linkify-it/CHANGELOG.md +182 -0
- package/cli/node_modules/{prelude-ls → linkify-it}/LICENSE +1 -1
- package/cli/node_modules/linkify-it/README.md +188 -0
- package/cli/node_modules/linkify-it/index.js +636 -0
- package/cli/node_modules/linkify-it/lib/re.js +181 -0
- package/cli/node_modules/linkify-it/package.json +48 -0
- package/cli/node_modules/lodash/LICENSE +47 -0
- package/cli/node_modules/lodash/README.md +39 -0
- package/cli/node_modules/lodash/_DataView.js +7 -0
- package/cli/node_modules/lodash/_Hash.js +32 -0
- package/cli/node_modules/lodash/_LazyWrapper.js +28 -0
- package/cli/node_modules/lodash/_ListCache.js +32 -0
- package/cli/node_modules/lodash/_LodashWrapper.js +22 -0
- package/cli/node_modules/lodash/_Map.js +7 -0
- package/cli/node_modules/lodash/_MapCache.js +32 -0
- package/cli/node_modules/lodash/_Promise.js +7 -0
- package/cli/node_modules/lodash/_Set.js +7 -0
- package/cli/node_modules/lodash/_SetCache.js +27 -0
- package/cli/node_modules/lodash/_Stack.js +27 -0
- package/cli/node_modules/lodash/_Symbol.js +6 -0
- package/cli/node_modules/lodash/_Uint8Array.js +6 -0
- package/cli/node_modules/lodash/_WeakMap.js +7 -0
- package/cli/node_modules/lodash/_apply.js +21 -0
- package/cli/node_modules/lodash/_arrayAggregator.js +22 -0
- package/cli/node_modules/lodash/_arrayEach.js +22 -0
- package/cli/node_modules/lodash/_arrayEachRight.js +21 -0
- package/cli/node_modules/lodash/_arrayEvery.js +23 -0
- package/cli/node_modules/lodash/_arrayFilter.js +25 -0
- package/cli/node_modules/lodash/_arrayIncludes.js +17 -0
- package/cli/node_modules/lodash/_arrayIncludesWith.js +22 -0
- package/cli/node_modules/lodash/_arrayLikeKeys.js +49 -0
- package/cli/node_modules/lodash/_arrayMap.js +21 -0
- package/cli/node_modules/lodash/_arrayPush.js +20 -0
- package/cli/node_modules/lodash/_arrayReduce.js +26 -0
- package/cli/node_modules/lodash/_arrayReduceRight.js +24 -0
- package/cli/node_modules/lodash/_arraySample.js +15 -0
- package/cli/node_modules/lodash/_arraySampleSize.js +17 -0
- package/cli/node_modules/lodash/_arrayShuffle.js +15 -0
- package/cli/node_modules/lodash/_arraySome.js +23 -0
- package/cli/node_modules/lodash/_asciiSize.js +12 -0
- package/cli/node_modules/lodash/_asciiToArray.js +12 -0
- package/cli/node_modules/lodash/_asciiWords.js +15 -0
- package/cli/node_modules/lodash/_assignMergeValue.js +20 -0
- package/cli/node_modules/lodash/_assignValue.js +28 -0
- package/cli/node_modules/lodash/_assocIndexOf.js +21 -0
- package/cli/node_modules/lodash/_baseAggregator.js +21 -0
- package/cli/node_modules/lodash/_baseAssign.js +17 -0
- package/cli/node_modules/lodash/_baseAssignIn.js +17 -0
- package/cli/node_modules/lodash/_baseAssignValue.js +25 -0
- package/cli/node_modules/lodash/_baseAt.js +23 -0
- package/cli/node_modules/lodash/_baseClamp.js +22 -0
- package/cli/node_modules/lodash/_baseClone.js +166 -0
- package/cli/node_modules/lodash/_baseConforms.js +18 -0
- package/cli/node_modules/lodash/_baseConformsTo.js +27 -0
- package/cli/node_modules/lodash/_baseCreate.js +30 -0
- package/cli/node_modules/lodash/_baseDelay.js +21 -0
- package/cli/node_modules/lodash/_baseDifference.js +67 -0
- package/cli/node_modules/lodash/_baseEach.js +14 -0
- package/cli/node_modules/lodash/_baseEachRight.js +14 -0
- package/cli/node_modules/lodash/_baseEvery.js +21 -0
- package/cli/node_modules/lodash/_baseExtremum.js +32 -0
- package/cli/node_modules/lodash/_baseFill.js +32 -0
- package/cli/node_modules/lodash/_baseFilter.js +21 -0
- package/cli/node_modules/lodash/_baseFindIndex.js +24 -0
- package/cli/node_modules/lodash/_baseFindKey.js +23 -0
- package/cli/node_modules/lodash/_baseFlatten.js +38 -0
- package/cli/node_modules/lodash/_baseFor.js +16 -0
- package/cli/node_modules/lodash/_baseForOwn.js +16 -0
- package/cli/node_modules/lodash/_baseForOwnRight.js +16 -0
- package/cli/node_modules/lodash/_baseForRight.js +15 -0
- package/cli/node_modules/lodash/_baseFunctions.js +19 -0
- package/cli/node_modules/lodash/_baseGet.js +24 -0
- package/cli/node_modules/lodash/_baseGetAllKeys.js +20 -0
- package/cli/node_modules/lodash/_baseGetTag.js +28 -0
- package/cli/node_modules/lodash/_baseGt.js +14 -0
- package/cli/node_modules/lodash/_baseHas.js +19 -0
- package/cli/node_modules/lodash/_baseHasIn.js +13 -0
- package/cli/node_modules/lodash/_baseInRange.js +18 -0
- package/cli/node_modules/lodash/_baseIndexOf.js +20 -0
- package/cli/node_modules/lodash/_baseIndexOfWith.js +23 -0
- package/cli/node_modules/lodash/_baseIntersection.js +74 -0
- package/cli/node_modules/lodash/_baseInverter.js +21 -0
- package/cli/node_modules/lodash/_baseInvoke.js +24 -0
- package/cli/node_modules/lodash/_baseIsArguments.js +18 -0
- package/cli/node_modules/lodash/_baseIsArrayBuffer.js +17 -0
- package/cli/node_modules/lodash/_baseIsDate.js +18 -0
- package/cli/node_modules/lodash/_baseIsEqual.js +28 -0
- package/cli/node_modules/lodash/_baseIsEqualDeep.js +83 -0
- package/cli/node_modules/lodash/_baseIsMap.js +18 -0
- package/cli/node_modules/lodash/_baseIsMatch.js +62 -0
- package/cli/node_modules/lodash/_baseIsNaN.js +12 -0
- package/cli/node_modules/lodash/_baseIsNative.js +47 -0
- package/cli/node_modules/lodash/_baseIsRegExp.js +18 -0
- package/cli/node_modules/lodash/_baseIsSet.js +18 -0
- package/cli/node_modules/lodash/_baseIsTypedArray.js +60 -0
- package/cli/node_modules/lodash/_baseIteratee.js +31 -0
- package/cli/node_modules/lodash/_baseKeys.js +30 -0
- package/cli/node_modules/lodash/_baseKeysIn.js +33 -0
- package/cli/node_modules/lodash/_baseLodash.js +10 -0
- package/cli/node_modules/lodash/_baseLt.js +14 -0
- package/cli/node_modules/lodash/_baseMap.js +22 -0
- package/cli/node_modules/lodash/_baseMatches.js +22 -0
- package/cli/node_modules/lodash/_baseMatchesProperty.js +33 -0
- package/cli/node_modules/lodash/_baseMean.js +20 -0
- package/cli/node_modules/lodash/_baseMerge.js +42 -0
- package/cli/node_modules/lodash/_baseMergeDeep.js +94 -0
- package/cli/node_modules/lodash/_baseNth.js +20 -0
- package/cli/node_modules/lodash/_baseOrderBy.js +49 -0
- package/cli/node_modules/lodash/_basePick.js +19 -0
- package/cli/node_modules/lodash/_basePickBy.js +30 -0
- package/cli/node_modules/lodash/_baseProperty.js +14 -0
- package/cli/node_modules/lodash/_basePropertyDeep.js +16 -0
- package/cli/node_modules/lodash/_basePropertyOf.js +14 -0
- package/cli/node_modules/lodash/_basePullAll.js +51 -0
- package/cli/node_modules/lodash/_basePullAt.js +37 -0
- package/cli/node_modules/lodash/_baseRandom.js +18 -0
- package/cli/node_modules/lodash/_baseRange.js +28 -0
- package/cli/node_modules/lodash/_baseReduce.js +23 -0
- package/cli/node_modules/lodash/_baseRepeat.js +35 -0
- package/cli/node_modules/lodash/_baseRest.js +17 -0
- package/cli/node_modules/lodash/_baseSample.js +15 -0
- package/cli/node_modules/lodash/_baseSampleSize.js +18 -0
- package/cli/node_modules/lodash/_baseSet.js +51 -0
- package/cli/node_modules/lodash/_baseSetData.js +17 -0
- package/cli/node_modules/lodash/_baseSetToString.js +22 -0
- package/cli/node_modules/lodash/_baseShuffle.js +15 -0
- package/cli/node_modules/lodash/_baseSlice.js +31 -0
- package/cli/node_modules/lodash/_baseSome.js +22 -0
- package/cli/node_modules/lodash/_baseSortBy.js +21 -0
- package/cli/node_modules/lodash/_baseSortedIndex.js +42 -0
- package/cli/node_modules/lodash/_baseSortedIndexBy.js +67 -0
- package/cli/node_modules/lodash/_baseSortedUniq.js +30 -0
- package/cli/node_modules/lodash/_baseSum.js +24 -0
- package/cli/node_modules/lodash/_baseTimes.js +20 -0
- package/cli/node_modules/lodash/_baseToNumber.js +24 -0
- package/cli/node_modules/lodash/_baseToPairs.js +18 -0
- package/cli/node_modules/lodash/_baseToString.js +37 -0
- package/cli/node_modules/lodash/_baseTrim.js +19 -0
- package/cli/node_modules/lodash/_baseUnary.js +14 -0
- package/cli/node_modules/lodash/_baseUniq.js +72 -0
- package/cli/node_modules/lodash/_baseUnset.js +20 -0
- package/cli/node_modules/lodash/_baseUpdate.js +18 -0
- package/cli/node_modules/lodash/_baseValues.js +19 -0
- package/cli/node_modules/lodash/_baseWhile.js +26 -0
- package/cli/node_modules/lodash/_baseWrapperValue.js +25 -0
- package/cli/node_modules/lodash/_baseXor.js +36 -0
- package/cli/node_modules/lodash/_baseZipObject.js +23 -0
- package/cli/node_modules/lodash/_cacheHas.js +13 -0
- package/cli/node_modules/lodash/_castArrayLikeObject.js +14 -0
- package/cli/node_modules/lodash/_castFunction.js +14 -0
- package/cli/node_modules/lodash/_castPath.js +21 -0
- package/cli/node_modules/lodash/_castRest.js +14 -0
- package/cli/node_modules/lodash/_castSlice.js +18 -0
- package/cli/node_modules/lodash/_charsEndIndex.js +19 -0
- package/cli/node_modules/lodash/_charsStartIndex.js +20 -0
- package/cli/node_modules/lodash/_cloneArrayBuffer.js +16 -0
- package/cli/node_modules/lodash/_cloneBuffer.js +35 -0
- package/cli/node_modules/lodash/_cloneDataView.js +16 -0
- package/cli/node_modules/lodash/_cloneRegExp.js +17 -0
- package/cli/node_modules/lodash/_cloneSymbol.js +18 -0
- package/cli/node_modules/lodash/_cloneTypedArray.js +16 -0
- package/cli/node_modules/lodash/_compareAscending.js +41 -0
- package/cli/node_modules/lodash/_compareMultiple.js +44 -0
- package/cli/node_modules/lodash/_composeArgs.js +39 -0
- package/cli/node_modules/lodash/_composeArgsRight.js +41 -0
- package/cli/node_modules/lodash/_copyArray.js +20 -0
- package/cli/node_modules/lodash/_copyObject.js +40 -0
- package/cli/node_modules/lodash/_copySymbols.js +16 -0
- package/cli/node_modules/lodash/_copySymbolsIn.js +16 -0
- package/cli/node_modules/lodash/_coreJsData.js +6 -0
- package/cli/node_modules/lodash/_countHolders.js +21 -0
- package/cli/node_modules/lodash/_createAggregator.js +23 -0
- package/cli/node_modules/lodash/_createAssigner.js +37 -0
- package/cli/node_modules/lodash/_createBaseEach.js +32 -0
- package/cli/node_modules/lodash/_createBaseFor.js +25 -0
- package/cli/node_modules/lodash/_createBind.js +28 -0
- package/cli/node_modules/lodash/_createCaseFirst.js +33 -0
- package/cli/node_modules/lodash/_createCompounder.js +24 -0
- package/cli/node_modules/lodash/_createCtor.js +37 -0
- package/cli/node_modules/lodash/_createCurry.js +46 -0
- package/cli/node_modules/lodash/_createFind.js +25 -0
- package/cli/node_modules/lodash/_createFlow.js +78 -0
- package/cli/node_modules/lodash/_createHybrid.js +92 -0
- package/cli/node_modules/lodash/_createInverter.js +17 -0
- package/cli/node_modules/lodash/_createMathOperation.js +38 -0
- package/cli/node_modules/lodash/_createOver.js +27 -0
- package/cli/node_modules/lodash/_createPadding.js +33 -0
- package/cli/node_modules/lodash/_createPartial.js +43 -0
- package/cli/node_modules/lodash/_createRange.js +30 -0
- package/cli/node_modules/lodash/_createRecurry.js +56 -0
- package/cli/node_modules/lodash/_createRelationalOperation.js +20 -0
- package/cli/node_modules/lodash/_createRound.js +35 -0
- package/cli/node_modules/lodash/_createSet.js +19 -0
- package/cli/node_modules/lodash/_createToPairs.js +30 -0
- package/cli/node_modules/lodash/_createWrap.js +106 -0
- package/cli/node_modules/lodash/_customDefaultsAssignIn.js +29 -0
- package/cli/node_modules/lodash/_customDefaultsMerge.js +28 -0
- package/cli/node_modules/lodash/_customOmitClone.js +16 -0
- package/cli/node_modules/lodash/_deburrLetter.js +71 -0
- package/cli/node_modules/lodash/_defineProperty.js +11 -0
- package/cli/node_modules/lodash/_equalArrays.js +84 -0
- package/cli/node_modules/lodash/_equalByTag.js +112 -0
- package/cli/node_modules/lodash/_equalObjects.js +90 -0
- package/cli/node_modules/lodash/_escapeHtmlChar.js +21 -0
- package/cli/node_modules/lodash/_escapeStringChar.js +22 -0
- package/cli/node_modules/lodash/_flatRest.js +16 -0
- package/cli/node_modules/lodash/_freeGlobal.js +4 -0
- package/cli/node_modules/lodash/_getAllKeys.js +16 -0
- package/cli/node_modules/lodash/_getAllKeysIn.js +17 -0
- package/cli/node_modules/lodash/_getData.js +15 -0
- package/cli/node_modules/lodash/_getFuncName.js +31 -0
- package/cli/node_modules/lodash/_getHolder.js +13 -0
- package/cli/node_modules/lodash/_getMapData.js +18 -0
- package/cli/node_modules/lodash/_getMatchData.js +24 -0
- package/cli/node_modules/lodash/_getNative.js +17 -0
- package/cli/node_modules/lodash/_getPrototype.js +6 -0
- package/cli/node_modules/lodash/_getRawTag.js +46 -0
- package/cli/node_modules/lodash/_getSymbols.js +30 -0
- package/cli/node_modules/lodash/_getSymbolsIn.js +25 -0
- package/cli/node_modules/lodash/_getTag.js +58 -0
- package/cli/node_modules/lodash/_getValue.js +13 -0
- package/cli/node_modules/lodash/_getView.js +33 -0
- package/cli/node_modules/lodash/_getWrapDetails.js +17 -0
- package/cli/node_modules/lodash/_hasPath.js +39 -0
- package/cli/node_modules/lodash/_hasUnicode.js +26 -0
- package/cli/node_modules/lodash/_hasUnicodeWord.js +15 -0
- package/cli/node_modules/lodash/_hashClear.js +15 -0
- package/cli/node_modules/lodash/_hashDelete.js +17 -0
- package/cli/node_modules/lodash/_hashGet.js +30 -0
- package/cli/node_modules/lodash/_hashHas.js +23 -0
- package/cli/node_modules/lodash/_hashSet.js +23 -0
- package/cli/node_modules/lodash/_initCloneArray.js +26 -0
- package/cli/node_modules/lodash/_initCloneByTag.js +77 -0
- package/cli/node_modules/lodash/_initCloneObject.js +18 -0
- package/cli/node_modules/lodash/_insertWrapDetails.js +23 -0
- package/cli/node_modules/lodash/_isFlattenable.js +20 -0
- package/cli/node_modules/lodash/_isIndex.js +25 -0
- package/cli/node_modules/lodash/_isIterateeCall.js +30 -0
- package/cli/node_modules/lodash/_isKey.js +29 -0
- package/cli/node_modules/lodash/_isKeyable.js +15 -0
- package/cli/node_modules/lodash/_isLaziable.js +28 -0
- package/cli/node_modules/lodash/_isMaskable.js +14 -0
- package/cli/node_modules/lodash/_isMasked.js +20 -0
- package/cli/node_modules/lodash/_isPrototype.js +18 -0
- package/cli/node_modules/lodash/_isStrictComparable.js +15 -0
- package/cli/node_modules/lodash/_iteratorToArray.js +18 -0
- package/cli/node_modules/lodash/_lazyClone.js +23 -0
- package/cli/node_modules/lodash/_lazyReverse.js +23 -0
- package/cli/node_modules/lodash/_lazyValue.js +69 -0
- package/cli/node_modules/lodash/_listCacheClear.js +13 -0
- package/cli/node_modules/lodash/_listCacheDelete.js +35 -0
- package/cli/node_modules/lodash/_listCacheGet.js +19 -0
- package/cli/node_modules/lodash/_listCacheHas.js +16 -0
- package/cli/node_modules/lodash/_listCacheSet.js +26 -0
- package/cli/node_modules/lodash/_mapCacheClear.js +21 -0
- package/cli/node_modules/lodash/_mapCacheDelete.js +18 -0
- package/cli/node_modules/lodash/_mapCacheGet.js +16 -0
- package/cli/node_modules/lodash/_mapCacheHas.js +16 -0
- package/cli/node_modules/lodash/_mapCacheSet.js +22 -0
- package/cli/node_modules/lodash/_mapToArray.js +18 -0
- package/cli/node_modules/lodash/_matchesStrictComparable.js +20 -0
- package/cli/node_modules/lodash/_memoizeCapped.js +26 -0
- package/cli/node_modules/lodash/_mergeData.js +90 -0
- package/cli/node_modules/lodash/_metaMap.js +6 -0
- package/cli/node_modules/lodash/_nativeCreate.js +6 -0
- package/cli/node_modules/lodash/_nativeKeys.js +6 -0
- package/cli/node_modules/lodash/_nativeKeysIn.js +20 -0
- package/cli/node_modules/lodash/_nodeUtil.js +30 -0
- package/cli/node_modules/lodash/_objectToString.js +22 -0
- package/cli/node_modules/lodash/_overArg.js +15 -0
- package/cli/node_modules/lodash/_overRest.js +36 -0
- package/cli/node_modules/lodash/_parent.js +16 -0
- package/cli/node_modules/lodash/_reEscape.js +4 -0
- package/cli/node_modules/lodash/_reEvaluate.js +4 -0
- package/cli/node_modules/lodash/_reInterpolate.js +4 -0
- package/cli/node_modules/lodash/_realNames.js +4 -0
- package/cli/node_modules/lodash/_reorder.js +29 -0
- package/cli/node_modules/lodash/_replaceHolders.js +29 -0
- package/cli/node_modules/lodash/_root.js +9 -0
- package/cli/node_modules/lodash/_safeGet.js +21 -0
- package/cli/node_modules/lodash/_setCacheAdd.js +19 -0
- package/cli/node_modules/lodash/_setCacheHas.js +14 -0
- package/cli/node_modules/lodash/_setData.js +20 -0
- package/cli/node_modules/lodash/_setToArray.js +18 -0
- package/cli/node_modules/lodash/_setToPairs.js +18 -0
- package/cli/node_modules/lodash/_setToString.js +14 -0
- package/cli/node_modules/lodash/_setWrapToString.js +21 -0
- package/cli/node_modules/lodash/_shortOut.js +37 -0
- package/cli/node_modules/lodash/_shuffleSelf.js +28 -0
- package/cli/node_modules/lodash/_stackClear.js +15 -0
- package/cli/node_modules/lodash/_stackDelete.js +18 -0
- package/cli/node_modules/lodash/_stackGet.js +14 -0
- package/cli/node_modules/lodash/_stackHas.js +14 -0
- package/cli/node_modules/lodash/_stackSet.js +34 -0
- package/cli/node_modules/lodash/_strictIndexOf.js +23 -0
- package/cli/node_modules/lodash/_strictLastIndexOf.js +21 -0
- package/cli/node_modules/lodash/_stringSize.js +18 -0
- package/cli/node_modules/lodash/_stringToArray.js +18 -0
- package/cli/node_modules/lodash/_stringToPath.js +27 -0
- package/cli/node_modules/lodash/_toKey.js +21 -0
- package/cli/node_modules/lodash/_toSource.js +26 -0
- package/cli/node_modules/lodash/_trimmedEndIndex.js +19 -0
- package/cli/node_modules/lodash/_unescapeHtmlChar.js +21 -0
- package/cli/node_modules/lodash/_unicodeSize.js +44 -0
- package/cli/node_modules/lodash/_unicodeToArray.js +40 -0
- package/cli/node_modules/lodash/_unicodeWords.js +69 -0
- package/cli/node_modules/lodash/_updateWrapDetails.js +46 -0
- package/cli/node_modules/lodash/_wrapperClone.js +23 -0
- package/cli/node_modules/lodash/add.js +22 -0
- package/cli/node_modules/lodash/after.js +42 -0
- package/cli/node_modules/lodash/array.js +67 -0
- package/cli/node_modules/lodash/ary.js +29 -0
- package/cli/node_modules/lodash/assign.js +58 -0
- package/cli/node_modules/lodash/assignIn.js +40 -0
- package/cli/node_modules/lodash/assignInWith.js +38 -0
- package/cli/node_modules/lodash/assignWith.js +37 -0
- package/cli/node_modules/lodash/at.js +23 -0
- package/cli/node_modules/lodash/attempt.js +35 -0
- package/cli/node_modules/lodash/before.js +40 -0
- package/cli/node_modules/lodash/bind.js +57 -0
- package/cli/node_modules/lodash/bindAll.js +41 -0
- package/cli/node_modules/lodash/bindKey.js +68 -0
- package/cli/node_modules/lodash/camelCase.js +29 -0
- package/cli/node_modules/lodash/capitalize.js +23 -0
- package/cli/node_modules/lodash/castArray.js +44 -0
- package/cli/node_modules/lodash/ceil.js +26 -0
- package/cli/node_modules/lodash/chain.js +38 -0
- package/cli/node_modules/lodash/chunk.js +50 -0
- package/cli/node_modules/lodash/clamp.js +39 -0
- package/cli/node_modules/lodash/clone.js +36 -0
- package/cli/node_modules/lodash/cloneDeep.js +29 -0
- package/cli/node_modules/lodash/cloneDeepWith.js +40 -0
- package/cli/node_modules/lodash/cloneWith.js +42 -0
- package/cli/node_modules/lodash/collection.js +30 -0
- package/cli/node_modules/lodash/commit.js +33 -0
- package/cli/node_modules/lodash/compact.js +31 -0
- package/cli/node_modules/lodash/concat.js +43 -0
- package/cli/node_modules/lodash/cond.js +60 -0
- package/cli/node_modules/lodash/conforms.js +35 -0
- package/cli/node_modules/lodash/conformsTo.js +32 -0
- package/cli/node_modules/lodash/constant.js +26 -0
- package/cli/node_modules/lodash/core.js +3877 -0
- package/cli/node_modules/lodash/core.min.js +29 -0
- package/cli/node_modules/lodash/countBy.js +40 -0
- package/cli/node_modules/lodash/create.js +43 -0
- package/cli/node_modules/lodash/curry.js +57 -0
- package/cli/node_modules/lodash/curryRight.js +54 -0
- package/cli/node_modules/lodash/date.js +3 -0
- package/cli/node_modules/lodash/debounce.js +191 -0
- package/cli/node_modules/lodash/deburr.js +45 -0
- package/cli/node_modules/lodash/defaultTo.js +25 -0
- package/cli/node_modules/lodash/defaults.js +64 -0
- package/cli/node_modules/lodash/defaultsDeep.js +30 -0
- package/cli/node_modules/lodash/defer.js +26 -0
- package/cli/node_modules/lodash/delay.js +28 -0
- package/cli/node_modules/lodash/difference.js +33 -0
- package/cli/node_modules/lodash/differenceBy.js +44 -0
- package/cli/node_modules/lodash/differenceWith.js +40 -0
- package/cli/node_modules/lodash/divide.js +22 -0
- package/cli/node_modules/lodash/drop.js +38 -0
- package/cli/node_modules/lodash/dropRight.js +39 -0
- package/cli/node_modules/lodash/dropRightWhile.js +45 -0
- package/cli/node_modules/lodash/dropWhile.js +45 -0
- package/cli/node_modules/lodash/each.js +1 -0
- package/cli/node_modules/lodash/eachRight.js +1 -0
- package/cli/node_modules/lodash/endsWith.js +43 -0
- package/cli/node_modules/lodash/entries.js +1 -0
- package/cli/node_modules/lodash/entriesIn.js +1 -0
- package/cli/node_modules/lodash/eq.js +37 -0
- package/cli/node_modules/lodash/escape.js +43 -0
- package/cli/node_modules/lodash/escapeRegExp.js +32 -0
- package/cli/node_modules/lodash/every.js +56 -0
- package/cli/node_modules/lodash/extend.js +1 -0
- package/cli/node_modules/lodash/extendWith.js +1 -0
- package/cli/node_modules/lodash/fill.js +45 -0
- package/cli/node_modules/lodash/filter.js +52 -0
- package/cli/node_modules/lodash/find.js +42 -0
- package/cli/node_modules/lodash/findIndex.js +55 -0
- package/cli/node_modules/lodash/findKey.js +44 -0
- package/cli/node_modules/lodash/findLast.js +25 -0
- package/cli/node_modules/lodash/findLastIndex.js +59 -0
- package/cli/node_modules/lodash/findLastKey.js +44 -0
- package/cli/node_modules/lodash/first.js +1 -0
- package/cli/node_modules/lodash/flake.lock +40 -0
- package/cli/node_modules/lodash/flake.nix +20 -0
- package/cli/node_modules/lodash/flatMap.js +29 -0
- package/cli/node_modules/lodash/flatMapDeep.js +31 -0
- package/cli/node_modules/lodash/flatMapDepth.js +31 -0
- package/cli/node_modules/lodash/flatten.js +22 -0
- package/cli/node_modules/lodash/flattenDeep.js +25 -0
- package/cli/node_modules/lodash/flattenDepth.js +33 -0
- package/cli/node_modules/lodash/flip.js +28 -0
- package/cli/node_modules/lodash/floor.js +26 -0
- package/cli/node_modules/lodash/flow.js +27 -0
- package/cli/node_modules/lodash/flowRight.js +26 -0
- package/cli/node_modules/lodash/forEach.js +41 -0
- package/cli/node_modules/lodash/forEachRight.js +31 -0
- package/cli/node_modules/lodash/forIn.js +39 -0
- package/cli/node_modules/lodash/forInRight.js +37 -0
- package/cli/node_modules/lodash/forOwn.js +36 -0
- package/cli/node_modules/lodash/forOwnRight.js +34 -0
- package/cli/node_modules/lodash/fp/F.js +1 -0
- package/cli/node_modules/lodash/fp/T.js +1 -0
- package/cli/node_modules/lodash/fp/__.js +1 -0
- package/cli/node_modules/lodash/fp/_baseConvert.js +569 -0
- package/cli/node_modules/lodash/fp/_convertBrowser.js +18 -0
- package/cli/node_modules/lodash/fp/_falseOptions.js +7 -0
- package/cli/node_modules/lodash/fp/_mapping.js +358 -0
- package/cli/node_modules/lodash/fp/_util.js +16 -0
- package/cli/node_modules/lodash/fp/add.js +5 -0
- package/cli/node_modules/lodash/fp/after.js +5 -0
- package/cli/node_modules/lodash/fp/all.js +1 -0
- package/cli/node_modules/lodash/fp/allPass.js +1 -0
- package/cli/node_modules/lodash/fp/always.js +1 -0
- package/cli/node_modules/lodash/fp/any.js +1 -0
- package/cli/node_modules/lodash/fp/anyPass.js +1 -0
- package/cli/node_modules/lodash/fp/apply.js +1 -0
- package/cli/node_modules/lodash/fp/array.js +2 -0
- package/cli/node_modules/lodash/fp/ary.js +5 -0
- package/cli/node_modules/lodash/fp/assign.js +5 -0
- package/cli/node_modules/lodash/fp/assignAll.js +5 -0
- package/cli/node_modules/lodash/fp/assignAllWith.js +5 -0
- package/cli/node_modules/lodash/fp/assignIn.js +5 -0
- package/cli/node_modules/lodash/fp/assignInAll.js +5 -0
- package/cli/node_modules/lodash/fp/assignInAllWith.js +5 -0
- package/cli/node_modules/lodash/fp/assignInWith.js +5 -0
- package/cli/node_modules/lodash/fp/assignWith.js +5 -0
- package/cli/node_modules/lodash/fp/assoc.js +1 -0
- package/cli/node_modules/lodash/fp/assocPath.js +1 -0
- package/cli/node_modules/lodash/fp/at.js +5 -0
- package/cli/node_modules/lodash/fp/attempt.js +5 -0
- package/cli/node_modules/lodash/fp/before.js +5 -0
- package/cli/node_modules/lodash/fp/bind.js +5 -0
- package/cli/node_modules/lodash/fp/bindAll.js +5 -0
- package/cli/node_modules/lodash/fp/bindKey.js +5 -0
- package/cli/node_modules/lodash/fp/camelCase.js +5 -0
- package/cli/node_modules/lodash/fp/capitalize.js +5 -0
- package/cli/node_modules/lodash/fp/castArray.js +5 -0
- package/cli/node_modules/lodash/fp/ceil.js +5 -0
- package/cli/node_modules/lodash/fp/chain.js +5 -0
- package/cli/node_modules/lodash/fp/chunk.js +5 -0
- package/cli/node_modules/lodash/fp/clamp.js +5 -0
- package/cli/node_modules/lodash/fp/clone.js +5 -0
- package/cli/node_modules/lodash/fp/cloneDeep.js +5 -0
- package/cli/node_modules/lodash/fp/cloneDeepWith.js +5 -0
- package/cli/node_modules/lodash/fp/cloneWith.js +5 -0
- package/cli/node_modules/lodash/fp/collection.js +2 -0
- package/cli/node_modules/lodash/fp/commit.js +5 -0
- package/cli/node_modules/lodash/fp/compact.js +5 -0
- package/cli/node_modules/lodash/fp/complement.js +1 -0
- package/cli/node_modules/lodash/fp/compose.js +1 -0
- package/cli/node_modules/lodash/fp/concat.js +5 -0
- package/cli/node_modules/lodash/fp/cond.js +5 -0
- package/cli/node_modules/lodash/fp/conforms.js +1 -0
- package/cli/node_modules/lodash/fp/conformsTo.js +5 -0
- package/cli/node_modules/lodash/fp/constant.js +5 -0
- package/cli/node_modules/lodash/fp/contains.js +1 -0
- package/cli/node_modules/lodash/fp/convert.js +18 -0
- package/cli/node_modules/lodash/fp/countBy.js +5 -0
- package/cli/node_modules/lodash/fp/create.js +5 -0
- package/cli/node_modules/lodash/fp/curry.js +5 -0
- package/cli/node_modules/lodash/fp/curryN.js +5 -0
- package/cli/node_modules/lodash/fp/curryRight.js +5 -0
- package/cli/node_modules/lodash/fp/curryRightN.js +5 -0
- package/cli/node_modules/lodash/fp/date.js +2 -0
- package/cli/node_modules/lodash/fp/debounce.js +5 -0
- package/cli/node_modules/lodash/fp/deburr.js +5 -0
- package/cli/node_modules/lodash/fp/defaultTo.js +5 -0
- package/cli/node_modules/lodash/fp/defaults.js +5 -0
- package/cli/node_modules/lodash/fp/defaultsAll.js +5 -0
- package/cli/node_modules/lodash/fp/defaultsDeep.js +5 -0
- package/cli/node_modules/lodash/fp/defaultsDeepAll.js +5 -0
- package/cli/node_modules/lodash/fp/defer.js +5 -0
- package/cli/node_modules/lodash/fp/delay.js +5 -0
- package/cli/node_modules/lodash/fp/difference.js +5 -0
- package/cli/node_modules/lodash/fp/differenceBy.js +5 -0
- package/cli/node_modules/lodash/fp/differenceWith.js +5 -0
- package/cli/node_modules/lodash/fp/dissoc.js +1 -0
- package/cli/node_modules/lodash/fp/dissocPath.js +1 -0
- package/cli/node_modules/lodash/fp/divide.js +5 -0
- package/cli/node_modules/lodash/fp/drop.js +5 -0
- package/cli/node_modules/lodash/fp/dropLast.js +1 -0
- package/cli/node_modules/lodash/fp/dropLastWhile.js +1 -0
- package/cli/node_modules/lodash/fp/dropRight.js +5 -0
- package/cli/node_modules/lodash/fp/dropRightWhile.js +5 -0
- package/cli/node_modules/lodash/fp/dropWhile.js +5 -0
- package/cli/node_modules/lodash/fp/each.js +1 -0
- package/cli/node_modules/lodash/fp/eachRight.js +1 -0
- package/cli/node_modules/lodash/fp/endsWith.js +5 -0
- package/cli/node_modules/lodash/fp/entries.js +1 -0
- package/cli/node_modules/lodash/fp/entriesIn.js +1 -0
- package/cli/node_modules/lodash/fp/eq.js +5 -0
- package/cli/node_modules/lodash/fp/equals.js +1 -0
- package/cli/node_modules/lodash/fp/escape.js +5 -0
- package/cli/node_modules/lodash/fp/escapeRegExp.js +5 -0
- package/cli/node_modules/lodash/fp/every.js +5 -0
- package/cli/node_modules/lodash/fp/extend.js +1 -0
- package/cli/node_modules/lodash/fp/extendAll.js +1 -0
- package/cli/node_modules/lodash/fp/extendAllWith.js +1 -0
- package/cli/node_modules/lodash/fp/extendWith.js +1 -0
- package/cli/node_modules/lodash/fp/fill.js +5 -0
- package/cli/node_modules/lodash/fp/filter.js +5 -0
- package/cli/node_modules/lodash/fp/find.js +5 -0
- package/cli/node_modules/lodash/fp/findFrom.js +5 -0
- package/cli/node_modules/lodash/fp/findIndex.js +5 -0
- package/cli/node_modules/lodash/fp/findIndexFrom.js +5 -0
- package/cli/node_modules/lodash/fp/findKey.js +5 -0
- package/cli/node_modules/lodash/fp/findLast.js +5 -0
- package/cli/node_modules/lodash/fp/findLastFrom.js +5 -0
- package/cli/node_modules/lodash/fp/findLastIndex.js +5 -0
- package/cli/node_modules/lodash/fp/findLastIndexFrom.js +5 -0
- package/cli/node_modules/lodash/fp/findLastKey.js +5 -0
- package/cli/node_modules/lodash/fp/first.js +1 -0
- package/cli/node_modules/lodash/fp/flatMap.js +5 -0
- package/cli/node_modules/lodash/fp/flatMapDeep.js +5 -0
- package/cli/node_modules/lodash/fp/flatMapDepth.js +5 -0
- package/cli/node_modules/lodash/fp/flatten.js +5 -0
- package/cli/node_modules/lodash/fp/flattenDeep.js +5 -0
- package/cli/node_modules/lodash/fp/flattenDepth.js +5 -0
- package/cli/node_modules/lodash/fp/flip.js +5 -0
- package/cli/node_modules/lodash/fp/floor.js +5 -0
- package/cli/node_modules/lodash/fp/flow.js +5 -0
- package/cli/node_modules/lodash/fp/flowRight.js +5 -0
- package/cli/node_modules/lodash/fp/forEach.js +5 -0
- package/cli/node_modules/lodash/fp/forEachRight.js +5 -0
- package/cli/node_modules/lodash/fp/forIn.js +5 -0
- package/cli/node_modules/lodash/fp/forInRight.js +5 -0
- package/cli/node_modules/lodash/fp/forOwn.js +5 -0
- package/cli/node_modules/lodash/fp/forOwnRight.js +5 -0
- package/cli/node_modules/lodash/fp/fromPairs.js +5 -0
- package/cli/node_modules/lodash/fp/function.js +2 -0
- package/cli/node_modules/lodash/fp/functions.js +5 -0
- package/cli/node_modules/lodash/fp/functionsIn.js +5 -0
- package/cli/node_modules/lodash/fp/get.js +5 -0
- package/cli/node_modules/lodash/fp/getOr.js +5 -0
- package/cli/node_modules/lodash/fp/groupBy.js +5 -0
- package/cli/node_modules/lodash/fp/gt.js +5 -0
- package/cli/node_modules/lodash/fp/gte.js +5 -0
- package/cli/node_modules/lodash/fp/has.js +5 -0
- package/cli/node_modules/lodash/fp/hasIn.js +5 -0
- package/cli/node_modules/lodash/fp/head.js +5 -0
- package/cli/node_modules/lodash/fp/identical.js +1 -0
- package/cli/node_modules/lodash/fp/identity.js +5 -0
- package/cli/node_modules/lodash/fp/inRange.js +5 -0
- package/cli/node_modules/lodash/fp/includes.js +5 -0
- package/cli/node_modules/lodash/fp/includesFrom.js +5 -0
- package/cli/node_modules/lodash/fp/indexBy.js +1 -0
- package/cli/node_modules/lodash/fp/indexOf.js +5 -0
- package/cli/node_modules/lodash/fp/indexOfFrom.js +5 -0
- package/cli/node_modules/lodash/fp/init.js +1 -0
- package/cli/node_modules/lodash/fp/initial.js +5 -0
- package/cli/node_modules/lodash/fp/intersection.js +5 -0
- package/cli/node_modules/lodash/fp/intersectionBy.js +5 -0
- package/cli/node_modules/lodash/fp/intersectionWith.js +5 -0
- package/cli/node_modules/lodash/fp/invert.js +5 -0
- package/cli/node_modules/lodash/fp/invertBy.js +5 -0
- package/cli/node_modules/lodash/fp/invertObj.js +1 -0
- package/cli/node_modules/lodash/fp/invoke.js +5 -0
- package/cli/node_modules/lodash/fp/invokeArgs.js +5 -0
- package/cli/node_modules/lodash/fp/invokeArgsMap.js +5 -0
- package/cli/node_modules/lodash/fp/invokeMap.js +5 -0
- package/cli/node_modules/lodash/fp/isArguments.js +5 -0
- package/cli/node_modules/lodash/fp/isArray.js +5 -0
- package/cli/node_modules/lodash/fp/isArrayBuffer.js +5 -0
- package/cli/node_modules/lodash/fp/isArrayLike.js +5 -0
- package/cli/node_modules/lodash/fp/isArrayLikeObject.js +5 -0
- package/cli/node_modules/lodash/fp/isBoolean.js +5 -0
- package/cli/node_modules/lodash/fp/isBuffer.js +5 -0
- package/cli/node_modules/lodash/fp/isDate.js +5 -0
- package/cli/node_modules/lodash/fp/isElement.js +5 -0
- package/cli/node_modules/lodash/fp/isEmpty.js +5 -0
- package/cli/node_modules/lodash/fp/isEqual.js +5 -0
- package/cli/node_modules/lodash/fp/isEqualWith.js +5 -0
- package/cli/node_modules/lodash/fp/isError.js +5 -0
- package/cli/node_modules/lodash/fp/isFinite.js +5 -0
- package/cli/node_modules/lodash/fp/isFunction.js +5 -0
- package/cli/node_modules/lodash/fp/isInteger.js +5 -0
- package/cli/node_modules/lodash/fp/isLength.js +5 -0
- package/cli/node_modules/lodash/fp/isMap.js +5 -0
- package/cli/node_modules/lodash/fp/isMatch.js +5 -0
- package/cli/node_modules/lodash/fp/isMatchWith.js +5 -0
- package/cli/node_modules/lodash/fp/isNaN.js +5 -0
- package/cli/node_modules/lodash/fp/isNative.js +5 -0
- package/cli/node_modules/lodash/fp/isNil.js +5 -0
- package/cli/node_modules/lodash/fp/isNull.js +5 -0
- package/cli/node_modules/lodash/fp/isNumber.js +5 -0
- package/cli/node_modules/lodash/fp/isObject.js +5 -0
- package/cli/node_modules/lodash/fp/isObjectLike.js +5 -0
- package/cli/node_modules/lodash/fp/isPlainObject.js +5 -0
- package/cli/node_modules/lodash/fp/isRegExp.js +5 -0
- package/cli/node_modules/lodash/fp/isSafeInteger.js +5 -0
- package/cli/node_modules/lodash/fp/isSet.js +5 -0
- package/cli/node_modules/lodash/fp/isString.js +5 -0
- package/cli/node_modules/lodash/fp/isSymbol.js +5 -0
- package/cli/node_modules/lodash/fp/isTypedArray.js +5 -0
- package/cli/node_modules/lodash/fp/isUndefined.js +5 -0
- package/cli/node_modules/lodash/fp/isWeakMap.js +5 -0
- package/cli/node_modules/lodash/fp/isWeakSet.js +5 -0
- package/cli/node_modules/lodash/fp/iteratee.js +5 -0
- package/cli/node_modules/lodash/fp/join.js +5 -0
- package/cli/node_modules/lodash/fp/juxt.js +1 -0
- package/cli/node_modules/lodash/fp/kebabCase.js +5 -0
- package/cli/node_modules/lodash/fp/keyBy.js +5 -0
- package/cli/node_modules/lodash/fp/keys.js +5 -0
- package/cli/node_modules/lodash/fp/keysIn.js +5 -0
- package/cli/node_modules/lodash/fp/lang.js +2 -0
- package/cli/node_modules/lodash/fp/last.js +5 -0
- package/cli/node_modules/lodash/fp/lastIndexOf.js +5 -0
- package/cli/node_modules/lodash/fp/lastIndexOfFrom.js +5 -0
- package/cli/node_modules/lodash/fp/lowerCase.js +5 -0
- package/cli/node_modules/lodash/fp/lowerFirst.js +5 -0
- package/cli/node_modules/lodash/fp/lt.js +5 -0
- package/cli/node_modules/lodash/fp/lte.js +5 -0
- package/cli/node_modules/lodash/fp/map.js +5 -0
- package/cli/node_modules/lodash/fp/mapKeys.js +5 -0
- package/cli/node_modules/lodash/fp/mapValues.js +5 -0
- package/cli/node_modules/lodash/fp/matches.js +1 -0
- package/cli/node_modules/lodash/fp/matchesProperty.js +5 -0
- package/cli/node_modules/lodash/fp/math.js +2 -0
- package/cli/node_modules/lodash/fp/max.js +5 -0
- package/cli/node_modules/lodash/fp/maxBy.js +5 -0
- package/cli/node_modules/lodash/fp/mean.js +5 -0
- package/cli/node_modules/lodash/fp/meanBy.js +5 -0
- package/cli/node_modules/lodash/fp/memoize.js +5 -0
- package/cli/node_modules/lodash/fp/merge.js +5 -0
- package/cli/node_modules/lodash/fp/mergeAll.js +5 -0
- package/cli/node_modules/lodash/fp/mergeAllWith.js +5 -0
- package/cli/node_modules/lodash/fp/mergeWith.js +5 -0
- package/cli/node_modules/lodash/fp/method.js +5 -0
- package/cli/node_modules/lodash/fp/methodOf.js +5 -0
- package/cli/node_modules/lodash/fp/min.js +5 -0
- package/cli/node_modules/lodash/fp/minBy.js +5 -0
- package/cli/node_modules/lodash/fp/mixin.js +5 -0
- package/cli/node_modules/lodash/fp/multiply.js +5 -0
- package/cli/node_modules/lodash/fp/nAry.js +1 -0
- package/cli/node_modules/lodash/fp/negate.js +5 -0
- package/cli/node_modules/lodash/fp/next.js +5 -0
- package/cli/node_modules/lodash/fp/noop.js +5 -0
- package/cli/node_modules/lodash/fp/now.js +5 -0
- package/cli/node_modules/lodash/fp/nth.js +5 -0
- package/cli/node_modules/lodash/fp/nthArg.js +5 -0
- package/cli/node_modules/lodash/fp/number.js +2 -0
- package/cli/node_modules/lodash/fp/object.js +2 -0
- package/cli/node_modules/lodash/fp/omit.js +5 -0
- package/cli/node_modules/lodash/fp/omitAll.js +1 -0
- package/cli/node_modules/lodash/fp/omitBy.js +5 -0
- package/cli/node_modules/lodash/fp/once.js +5 -0
- package/cli/node_modules/lodash/fp/orderBy.js +5 -0
- package/cli/node_modules/lodash/fp/over.js +5 -0
- package/cli/node_modules/lodash/fp/overArgs.js +5 -0
- package/cli/node_modules/lodash/fp/overEvery.js +5 -0
- package/cli/node_modules/lodash/fp/overSome.js +5 -0
- package/cli/node_modules/lodash/fp/pad.js +5 -0
- package/cli/node_modules/lodash/fp/padChars.js +5 -0
- package/cli/node_modules/lodash/fp/padCharsEnd.js +5 -0
- package/cli/node_modules/lodash/fp/padCharsStart.js +5 -0
- package/cli/node_modules/lodash/fp/padEnd.js +5 -0
- package/cli/node_modules/lodash/fp/padStart.js +5 -0
- package/cli/node_modules/lodash/fp/parseInt.js +5 -0
- package/cli/node_modules/lodash/fp/partial.js +5 -0
- package/cli/node_modules/lodash/fp/partialRight.js +5 -0
- package/cli/node_modules/lodash/fp/partition.js +5 -0
- package/cli/node_modules/lodash/fp/path.js +1 -0
- package/cli/node_modules/lodash/fp/pathEq.js +1 -0
- package/cli/node_modules/lodash/fp/pathOr.js +1 -0
- package/cli/node_modules/lodash/fp/paths.js +1 -0
- package/cli/node_modules/lodash/fp/pick.js +5 -0
- package/cli/node_modules/lodash/fp/pickAll.js +1 -0
- package/cli/node_modules/lodash/fp/pickBy.js +5 -0
- package/cli/node_modules/lodash/fp/pipe.js +1 -0
- package/cli/node_modules/lodash/fp/placeholder.js +6 -0
- package/cli/node_modules/lodash/fp/plant.js +5 -0
- package/cli/node_modules/lodash/fp/pluck.js +1 -0
- package/cli/node_modules/lodash/fp/prop.js +1 -0
- package/cli/node_modules/lodash/fp/propEq.js +1 -0
- package/cli/node_modules/lodash/fp/propOr.js +1 -0
- package/cli/node_modules/lodash/fp/property.js +1 -0
- package/cli/node_modules/lodash/fp/propertyOf.js +5 -0
- package/cli/node_modules/lodash/fp/props.js +1 -0
- package/cli/node_modules/lodash/fp/pull.js +5 -0
- package/cli/node_modules/lodash/fp/pullAll.js +5 -0
- package/cli/node_modules/lodash/fp/pullAllBy.js +5 -0
- package/cli/node_modules/lodash/fp/pullAllWith.js +5 -0
- package/cli/node_modules/lodash/fp/pullAt.js +5 -0
- package/cli/node_modules/lodash/fp/random.js +5 -0
- package/cli/node_modules/lodash/fp/range.js +5 -0
- package/cli/node_modules/lodash/fp/rangeRight.js +5 -0
- package/cli/node_modules/lodash/fp/rangeStep.js +5 -0
- package/cli/node_modules/lodash/fp/rangeStepRight.js +5 -0
- package/cli/node_modules/lodash/fp/rearg.js +5 -0
- package/cli/node_modules/lodash/fp/reduce.js +5 -0
- package/cli/node_modules/lodash/fp/reduceRight.js +5 -0
- package/cli/node_modules/lodash/fp/reject.js +5 -0
- package/cli/node_modules/lodash/fp/remove.js +5 -0
- package/cli/node_modules/lodash/fp/repeat.js +5 -0
- package/cli/node_modules/lodash/fp/replace.js +5 -0
- package/cli/node_modules/lodash/fp/rest.js +5 -0
- package/cli/node_modules/lodash/fp/restFrom.js +5 -0
- package/cli/node_modules/lodash/fp/result.js +5 -0
- package/cli/node_modules/lodash/fp/reverse.js +5 -0
- package/cli/node_modules/lodash/fp/round.js +5 -0
- package/cli/node_modules/lodash/fp/sample.js +5 -0
- package/cli/node_modules/lodash/fp/sampleSize.js +5 -0
- package/cli/node_modules/lodash/fp/seq.js +2 -0
- package/cli/node_modules/lodash/fp/set.js +5 -0
- package/cli/node_modules/lodash/fp/setWith.js +5 -0
- package/cli/node_modules/lodash/fp/shuffle.js +5 -0
- package/cli/node_modules/lodash/fp/size.js +5 -0
- package/cli/node_modules/lodash/fp/slice.js +5 -0
- package/cli/node_modules/lodash/fp/snakeCase.js +5 -0
- package/cli/node_modules/lodash/fp/some.js +5 -0
- package/cli/node_modules/lodash/fp/sortBy.js +5 -0
- package/cli/node_modules/lodash/fp/sortedIndex.js +5 -0
- package/cli/node_modules/lodash/fp/sortedIndexBy.js +5 -0
- package/cli/node_modules/lodash/fp/sortedIndexOf.js +5 -0
- package/cli/node_modules/lodash/fp/sortedLastIndex.js +5 -0
- package/cli/node_modules/lodash/fp/sortedLastIndexBy.js +5 -0
- package/cli/node_modules/lodash/fp/sortedLastIndexOf.js +5 -0
- package/cli/node_modules/lodash/fp/sortedUniq.js +5 -0
- package/cli/node_modules/lodash/fp/sortedUniqBy.js +5 -0
- package/cli/node_modules/lodash/fp/split.js +5 -0
- package/cli/node_modules/lodash/fp/spread.js +5 -0
- package/cli/node_modules/lodash/fp/spreadFrom.js +5 -0
- package/cli/node_modules/lodash/fp/startCase.js +5 -0
- package/cli/node_modules/lodash/fp/startsWith.js +5 -0
- package/cli/node_modules/lodash/fp/string.js +2 -0
- package/cli/node_modules/lodash/fp/stubArray.js +5 -0
- package/cli/node_modules/lodash/fp/stubFalse.js +5 -0
- package/cli/node_modules/lodash/fp/stubObject.js +5 -0
- package/cli/node_modules/lodash/fp/stubString.js +5 -0
- package/cli/node_modules/lodash/fp/stubTrue.js +5 -0
- package/cli/node_modules/lodash/fp/subtract.js +5 -0
- package/cli/node_modules/lodash/fp/sum.js +5 -0
- package/cli/node_modules/lodash/fp/sumBy.js +5 -0
- package/cli/node_modules/lodash/fp/symmetricDifference.js +1 -0
- package/cli/node_modules/lodash/fp/symmetricDifferenceBy.js +1 -0
- package/cli/node_modules/lodash/fp/symmetricDifferenceWith.js +1 -0
- package/cli/node_modules/lodash/fp/tail.js +5 -0
- package/cli/node_modules/lodash/fp/take.js +5 -0
- package/cli/node_modules/lodash/fp/takeLast.js +1 -0
- package/cli/node_modules/lodash/fp/takeLastWhile.js +1 -0
- package/cli/node_modules/lodash/fp/takeRight.js +5 -0
- package/cli/node_modules/lodash/fp/takeRightWhile.js +5 -0
- package/cli/node_modules/lodash/fp/takeWhile.js +5 -0
- package/cli/node_modules/lodash/fp/tap.js +5 -0
- package/cli/node_modules/lodash/fp/template.js +5 -0
- package/cli/node_modules/lodash/fp/templateSettings.js +5 -0
- package/cli/node_modules/lodash/fp/throttle.js +5 -0
- package/cli/node_modules/lodash/fp/thru.js +5 -0
- package/cli/node_modules/lodash/fp/times.js +5 -0
- package/cli/node_modules/lodash/fp/toArray.js +5 -0
- package/cli/node_modules/lodash/fp/toFinite.js +5 -0
- package/cli/node_modules/lodash/fp/toInteger.js +5 -0
- package/cli/node_modules/lodash/fp/toIterator.js +5 -0
- package/cli/node_modules/lodash/fp/toJSON.js +5 -0
- package/cli/node_modules/lodash/fp/toLength.js +5 -0
- package/cli/node_modules/lodash/fp/toLower.js +5 -0
- package/cli/node_modules/lodash/fp/toNumber.js +5 -0
- package/cli/node_modules/lodash/fp/toPairs.js +5 -0
- package/cli/node_modules/lodash/fp/toPairsIn.js +5 -0
- package/cli/node_modules/lodash/fp/toPath.js +5 -0
- package/cli/node_modules/lodash/fp/toPlainObject.js +5 -0
- package/cli/node_modules/lodash/fp/toSafeInteger.js +5 -0
- package/cli/node_modules/lodash/fp/toString.js +5 -0
- package/cli/node_modules/lodash/fp/toUpper.js +5 -0
- package/cli/node_modules/lodash/fp/transform.js +5 -0
- package/cli/node_modules/lodash/fp/trim.js +5 -0
- package/cli/node_modules/lodash/fp/trimChars.js +5 -0
- package/cli/node_modules/lodash/fp/trimCharsEnd.js +5 -0
- package/cli/node_modules/lodash/fp/trimCharsStart.js +5 -0
- package/cli/node_modules/lodash/fp/trimEnd.js +5 -0
- package/cli/node_modules/lodash/fp/trimStart.js +5 -0
- package/cli/node_modules/lodash/fp/truncate.js +5 -0
- package/cli/node_modules/lodash/fp/unapply.js +1 -0
- package/cli/node_modules/lodash/fp/unary.js +5 -0
- package/cli/node_modules/lodash/fp/unescape.js +5 -0
- package/cli/node_modules/lodash/fp/union.js +5 -0
- package/cli/node_modules/lodash/fp/unionBy.js +5 -0
- package/cli/node_modules/lodash/fp/unionWith.js +5 -0
- package/cli/node_modules/lodash/fp/uniq.js +5 -0
- package/cli/node_modules/lodash/fp/uniqBy.js +5 -0
- package/cli/node_modules/lodash/fp/uniqWith.js +5 -0
- package/cli/node_modules/lodash/fp/uniqueId.js +5 -0
- package/cli/node_modules/lodash/fp/unnest.js +1 -0
- package/cli/node_modules/lodash/fp/unset.js +5 -0
- package/cli/node_modules/lodash/fp/unzip.js +5 -0
- package/cli/node_modules/lodash/fp/unzipWith.js +5 -0
- package/cli/node_modules/lodash/fp/update.js +5 -0
- package/cli/node_modules/lodash/fp/updateWith.js +5 -0
- package/cli/node_modules/lodash/fp/upperCase.js +5 -0
- package/cli/node_modules/lodash/fp/upperFirst.js +5 -0
- package/cli/node_modules/lodash/fp/useWith.js +1 -0
- package/cli/node_modules/lodash/fp/util.js +2 -0
- package/cli/node_modules/lodash/fp/value.js +5 -0
- package/cli/node_modules/lodash/fp/valueOf.js +5 -0
- package/cli/node_modules/lodash/fp/values.js +5 -0
- package/cli/node_modules/lodash/fp/valuesIn.js +5 -0
- package/cli/node_modules/lodash/fp/where.js +1 -0
- package/cli/node_modules/lodash/fp/whereEq.js +1 -0
- package/cli/node_modules/lodash/fp/without.js +5 -0
- package/cli/node_modules/lodash/fp/words.js +5 -0
- package/cli/node_modules/lodash/fp/wrap.js +5 -0
- package/cli/node_modules/lodash/fp/wrapperAt.js +5 -0
- package/cli/node_modules/lodash/fp/wrapperChain.js +5 -0
- package/cli/node_modules/lodash/fp/wrapperLodash.js +5 -0
- package/cli/node_modules/lodash/fp/wrapperReverse.js +5 -0
- package/cli/node_modules/lodash/fp/wrapperValue.js +5 -0
- package/cli/node_modules/lodash/fp/xor.js +5 -0
- package/cli/node_modules/lodash/fp/xorBy.js +5 -0
- package/cli/node_modules/lodash/fp/xorWith.js +5 -0
- package/cli/node_modules/lodash/fp/zip.js +5 -0
- package/cli/node_modules/lodash/fp/zipAll.js +5 -0
- package/cli/node_modules/lodash/fp/zipObj.js +1 -0
- package/cli/node_modules/lodash/fp/zipObject.js +5 -0
- package/cli/node_modules/lodash/fp/zipObjectDeep.js +5 -0
- package/cli/node_modules/lodash/fp/zipWith.js +5 -0
- package/cli/node_modules/lodash/fp.js +2 -0
- package/cli/node_modules/lodash/fromPairs.js +28 -0
- package/cli/node_modules/lodash/function.js +25 -0
- package/cli/node_modules/lodash/functions.js +31 -0
- package/cli/node_modules/lodash/functionsIn.js +31 -0
- package/cli/node_modules/lodash/get.js +33 -0
- package/cli/node_modules/lodash/groupBy.js +41 -0
- package/cli/node_modules/lodash/gt.js +29 -0
- package/cli/node_modules/lodash/gte.js +30 -0
- package/cli/node_modules/lodash/has.js +35 -0
- package/cli/node_modules/lodash/hasIn.js +34 -0
- package/cli/node_modules/lodash/head.js +23 -0
- package/cli/node_modules/lodash/identity.js +21 -0
- package/cli/node_modules/lodash/inRange.js +55 -0
- package/cli/node_modules/lodash/includes.js +53 -0
- package/cli/node_modules/lodash/index.js +1 -0
- package/cli/node_modules/lodash/indexOf.js +42 -0
- package/cli/node_modules/lodash/initial.js +22 -0
- package/cli/node_modules/lodash/intersection.js +30 -0
- package/cli/node_modules/lodash/intersectionBy.js +45 -0
- package/cli/node_modules/lodash/intersectionWith.js +41 -0
- package/cli/node_modules/lodash/invert.js +42 -0
- package/cli/node_modules/lodash/invertBy.js +56 -0
- package/cli/node_modules/lodash/invoke.js +24 -0
- package/cli/node_modules/lodash/invokeMap.js +41 -0
- package/cli/node_modules/lodash/isArguments.js +36 -0
- package/cli/node_modules/lodash/isArray.js +26 -0
- package/cli/node_modules/lodash/isArrayBuffer.js +27 -0
- package/cli/node_modules/lodash/isArrayLike.js +33 -0
- package/cli/node_modules/lodash/isArrayLikeObject.js +33 -0
- package/cli/node_modules/lodash/isBoolean.js +29 -0
- package/cli/node_modules/lodash/isBuffer.js +38 -0
- package/cli/node_modules/lodash/isDate.js +27 -0
- package/cli/node_modules/lodash/isElement.js +25 -0
- package/cli/node_modules/lodash/isEmpty.js +77 -0
- package/cli/node_modules/lodash/isEqual.js +35 -0
- package/cli/node_modules/lodash/isEqualWith.js +41 -0
- package/cli/node_modules/lodash/isError.js +36 -0
- package/cli/node_modules/lodash/isFinite.js +36 -0
- package/cli/node_modules/lodash/isFunction.js +37 -0
- package/cli/node_modules/lodash/isInteger.js +33 -0
- package/cli/node_modules/lodash/isLength.js +35 -0
- package/cli/node_modules/lodash/isMap.js +27 -0
- package/cli/node_modules/lodash/isMatch.js +36 -0
- package/cli/node_modules/lodash/isMatchWith.js +41 -0
- package/cli/node_modules/lodash/isNaN.js +38 -0
- package/cli/node_modules/lodash/isNative.js +40 -0
- package/cli/node_modules/lodash/isNil.js +25 -0
- package/cli/node_modules/lodash/isNull.js +22 -0
- package/cli/node_modules/lodash/isNumber.js +38 -0
- package/cli/node_modules/lodash/isObject.js +31 -0
- package/cli/node_modules/lodash/isObjectLike.js +29 -0
- package/cli/node_modules/lodash/isPlainObject.js +62 -0
- package/cli/node_modules/lodash/isRegExp.js +27 -0
- package/cli/node_modules/lodash/isSafeInteger.js +37 -0
- package/cli/node_modules/lodash/isSet.js +27 -0
- package/cli/node_modules/lodash/isString.js +30 -0
- package/cli/node_modules/lodash/isSymbol.js +29 -0
- package/cli/node_modules/lodash/isTypedArray.js +27 -0
- package/cli/node_modules/lodash/isUndefined.js +22 -0
- package/cli/node_modules/lodash/isWeakMap.js +28 -0
- package/cli/node_modules/lodash/isWeakSet.js +28 -0
- package/cli/node_modules/lodash/iteratee.js +53 -0
- package/cli/node_modules/lodash/join.js +26 -0
- package/cli/node_modules/lodash/kebabCase.js +28 -0
- package/cli/node_modules/lodash/keyBy.js +36 -0
- package/cli/node_modules/lodash/keys.js +37 -0
- package/cli/node_modules/lodash/keysIn.js +32 -0
- package/cli/node_modules/lodash/lang.js +58 -0
- package/cli/node_modules/lodash/last.js +20 -0
- package/cli/node_modules/lodash/lastIndexOf.js +46 -0
- package/cli/node_modules/lodash/lodash.js +17209 -0
- package/cli/node_modules/lodash/lodash.min.js +140 -0
- package/cli/node_modules/lodash/lowerCase.js +27 -0
- package/cli/node_modules/lodash/lowerFirst.js +22 -0
- package/cli/node_modules/lodash/lt.js +29 -0
- package/cli/node_modules/lodash/lte.js +30 -0
- package/cli/node_modules/lodash/map.js +53 -0
- package/cli/node_modules/lodash/mapKeys.js +36 -0
- package/cli/node_modules/lodash/mapValues.js +43 -0
- package/cli/node_modules/lodash/matches.js +46 -0
- package/cli/node_modules/lodash/matchesProperty.js +44 -0
- package/cli/node_modules/lodash/math.js +17 -0
- package/cli/node_modules/lodash/max.js +29 -0
- package/cli/node_modules/lodash/maxBy.js +34 -0
- package/cli/node_modules/lodash/mean.js +22 -0
- package/cli/node_modules/lodash/meanBy.js +31 -0
- package/cli/node_modules/lodash/memoize.js +73 -0
- package/cli/node_modules/lodash/merge.js +39 -0
- package/cli/node_modules/lodash/mergeWith.js +39 -0
- package/cli/node_modules/lodash/method.js +34 -0
- package/cli/node_modules/lodash/methodOf.js +33 -0
- package/cli/node_modules/lodash/min.js +29 -0
- package/cli/node_modules/lodash/minBy.js +34 -0
- package/cli/node_modules/lodash/mixin.js +74 -0
- package/cli/node_modules/lodash/multiply.js +22 -0
- package/cli/node_modules/lodash/negate.js +40 -0
- package/cli/node_modules/lodash/next.js +35 -0
- package/cli/node_modules/lodash/noop.js +17 -0
- package/cli/node_modules/lodash/now.js +23 -0
- package/cli/node_modules/lodash/nth.js +29 -0
- package/cli/node_modules/lodash/nthArg.js +32 -0
- package/cli/node_modules/lodash/number.js +5 -0
- package/cli/node_modules/lodash/object.js +49 -0
- package/cli/node_modules/lodash/omit.js +57 -0
- package/cli/node_modules/lodash/omitBy.js +29 -0
- package/cli/node_modules/lodash/once.js +25 -0
- package/cli/node_modules/lodash/orderBy.js +47 -0
- package/cli/node_modules/lodash/over.js +24 -0
- package/cli/node_modules/lodash/overArgs.js +61 -0
- package/cli/node_modules/lodash/overEvery.js +34 -0
- package/cli/node_modules/lodash/overSome.js +37 -0
- package/cli/node_modules/lodash/package.json +17 -0
- package/cli/node_modules/lodash/pad.js +49 -0
- package/cli/node_modules/lodash/padEnd.js +39 -0
- package/cli/node_modules/lodash/padStart.js +39 -0
- package/cli/node_modules/lodash/parseInt.js +43 -0
- package/cli/node_modules/lodash/partial.js +50 -0
- package/cli/node_modules/lodash/partialRight.js +49 -0
- package/cli/node_modules/lodash/partition.js +43 -0
- package/cli/node_modules/lodash/pick.js +25 -0
- package/cli/node_modules/lodash/pickBy.js +37 -0
- package/cli/node_modules/lodash/plant.js +48 -0
- package/cli/node_modules/lodash/property.js +32 -0
- package/cli/node_modules/lodash/propertyOf.js +30 -0
- package/cli/node_modules/lodash/pull.js +29 -0
- package/cli/node_modules/lodash/pullAll.js +29 -0
- package/cli/node_modules/lodash/pullAllBy.js +33 -0
- package/cli/node_modules/lodash/pullAllWith.js +32 -0
- package/cli/node_modules/lodash/pullAt.js +43 -0
- package/cli/node_modules/lodash/random.js +82 -0
- package/cli/node_modules/lodash/range.js +46 -0
- package/cli/node_modules/lodash/rangeRight.js +41 -0
- package/cli/node_modules/lodash/rearg.js +33 -0
- package/cli/node_modules/lodash/reduce.js +51 -0
- package/cli/node_modules/lodash/reduceRight.js +36 -0
- package/cli/node_modules/lodash/reject.js +46 -0
- package/cli/node_modules/lodash/release.md +48 -0
- package/cli/node_modules/lodash/remove.js +53 -0
- package/cli/node_modules/lodash/repeat.js +37 -0
- package/cli/node_modules/lodash/replace.js +29 -0
- package/cli/node_modules/lodash/rest.js +40 -0
- package/cli/node_modules/lodash/result.js +56 -0
- package/cli/node_modules/lodash/reverse.js +34 -0
- package/cli/node_modules/lodash/round.js +26 -0
- package/cli/node_modules/lodash/sample.js +24 -0
- package/cli/node_modules/lodash/sampleSize.js +37 -0
- package/cli/node_modules/lodash/seq.js +16 -0
- package/cli/node_modules/lodash/set.js +35 -0
- package/cli/node_modules/lodash/setWith.js +32 -0
- package/cli/node_modules/lodash/shuffle.js +25 -0
- package/cli/node_modules/lodash/size.js +46 -0
- package/cli/node_modules/lodash/slice.js +37 -0
- package/cli/node_modules/lodash/snakeCase.js +28 -0
- package/cli/node_modules/lodash/some.js +51 -0
- package/cli/node_modules/lodash/sortBy.js +48 -0
- package/cli/node_modules/lodash/sortedIndex.js +24 -0
- package/cli/node_modules/lodash/sortedIndexBy.js +33 -0
- package/cli/node_modules/lodash/sortedIndexOf.js +31 -0
- package/cli/node_modules/lodash/sortedLastIndex.js +25 -0
- package/cli/node_modules/lodash/sortedLastIndexBy.js +33 -0
- package/cli/node_modules/lodash/sortedLastIndexOf.js +31 -0
- package/cli/node_modules/lodash/sortedUniq.js +24 -0
- package/cli/node_modules/lodash/sortedUniqBy.js +26 -0
- package/cli/node_modules/lodash/split.js +52 -0
- package/cli/node_modules/lodash/spread.js +63 -0
- package/cli/node_modules/lodash/startCase.js +29 -0
- package/cli/node_modules/lodash/startsWith.js +39 -0
- package/cli/node_modules/lodash/string.js +33 -0
- package/cli/node_modules/lodash/stubArray.js +23 -0
- package/cli/node_modules/lodash/stubFalse.js +18 -0
- package/cli/node_modules/lodash/stubObject.js +23 -0
- package/cli/node_modules/lodash/stubString.js +18 -0
- package/cli/node_modules/lodash/stubTrue.js +18 -0
- package/cli/node_modules/lodash/subtract.js +22 -0
- package/cli/node_modules/lodash/sum.js +24 -0
- package/cli/node_modules/lodash/sumBy.js +33 -0
- package/cli/node_modules/lodash/tail.js +22 -0
- package/cli/node_modules/lodash/take.js +37 -0
- package/cli/node_modules/lodash/takeRight.js +39 -0
- package/cli/node_modules/lodash/takeRightWhile.js +45 -0
- package/cli/node_modules/lodash/takeWhile.js +45 -0
- package/cli/node_modules/lodash/tap.js +29 -0
- package/cli/node_modules/lodash/template.js +272 -0
- package/cli/node_modules/lodash/templateSettings.js +67 -0
- package/cli/node_modules/lodash/throttle.js +69 -0
- package/cli/node_modules/lodash/thru.js +28 -0
- package/cli/node_modules/lodash/times.js +51 -0
- package/cli/node_modules/lodash/toArray.js +58 -0
- package/cli/node_modules/lodash/toFinite.js +42 -0
- package/cli/node_modules/lodash/toInteger.js +36 -0
- package/cli/node_modules/lodash/toIterator.js +23 -0
- package/cli/node_modules/lodash/toJSON.js +1 -0
- package/cli/node_modules/lodash/toLength.js +38 -0
- package/cli/node_modules/lodash/toLower.js +28 -0
- package/cli/node_modules/lodash/toNumber.js +64 -0
- package/cli/node_modules/lodash/toPairs.js +30 -0
- package/cli/node_modules/lodash/toPairsIn.js +30 -0
- package/cli/node_modules/lodash/toPath.js +33 -0
- package/cli/node_modules/lodash/toPlainObject.js +32 -0
- package/cli/node_modules/lodash/toSafeInteger.js +37 -0
- package/cli/node_modules/lodash/toString.js +28 -0
- package/cli/node_modules/lodash/toUpper.js +28 -0
- package/cli/node_modules/lodash/transform.js +65 -0
- package/cli/node_modules/lodash/trim.js +47 -0
- package/cli/node_modules/lodash/trimEnd.js +41 -0
- package/cli/node_modules/lodash/trimStart.js +43 -0
- package/cli/node_modules/lodash/truncate.js +111 -0
- package/cli/node_modules/lodash/unary.js +22 -0
- package/cli/node_modules/lodash/unescape.js +34 -0
- package/cli/node_modules/lodash/union.js +26 -0
- package/cli/node_modules/lodash/unionBy.js +39 -0
- package/cli/node_modules/lodash/unionWith.js +34 -0
- package/cli/node_modules/lodash/uniq.js +25 -0
- package/cli/node_modules/lodash/uniqBy.js +31 -0
- package/cli/node_modules/lodash/uniqWith.js +28 -0
- package/cli/node_modules/lodash/uniqueId.js +28 -0
- package/cli/node_modules/lodash/unset.js +34 -0
- package/cli/node_modules/lodash/unzip.js +45 -0
- package/cli/node_modules/lodash/unzipWith.js +39 -0
- package/cli/node_modules/lodash/update.js +35 -0
- package/cli/node_modules/lodash/updateWith.js +33 -0
- package/cli/node_modules/lodash/upperCase.js +27 -0
- package/cli/node_modules/lodash/upperFirst.js +22 -0
- package/cli/node_modules/lodash/util.js +34 -0
- package/cli/node_modules/lodash/value.js +1 -0
- package/cli/node_modules/lodash/valueOf.js +1 -0
- package/cli/node_modules/lodash/values.js +34 -0
- package/cli/node_modules/lodash/valuesIn.js +32 -0
- package/cli/node_modules/lodash/without.js +31 -0
- package/cli/node_modules/lodash/words.js +35 -0
- package/cli/node_modules/lodash/wrap.js +30 -0
- package/cli/node_modules/lodash/wrapperAt.js +48 -0
- package/cli/node_modules/lodash/wrapperChain.js +34 -0
- package/cli/node_modules/lodash/wrapperLodash.js +147 -0
- package/cli/node_modules/lodash/wrapperReverse.js +44 -0
- package/cli/node_modules/lodash/wrapperValue.js +21 -0
- package/cli/node_modules/lodash/xor.js +28 -0
- package/cli/node_modules/lodash/xorBy.js +39 -0
- package/cli/node_modules/lodash/xorWith.js +34 -0
- package/cli/node_modules/lodash/zip.js +22 -0
- package/cli/node_modules/lodash/zipObject.js +24 -0
- package/cli/node_modules/lodash/zipObjectDeep.js +23 -0
- package/cli/node_modules/lodash/zipWith.js +32 -0
- package/cli/node_modules/{levn → markdown-it}/LICENSE +1 -1
- package/cli/node_modules/markdown-it/README.md +307 -0
- package/cli/node_modules/markdown-it/bin/markdown-it.js +117 -0
- package/cli/node_modules/markdown-it/dist/markdown-it.js +8356 -0
- package/cli/node_modules/markdown-it/dist/markdown-it.min.js +3 -0
- package/cli/node_modules/markdown-it/index.js +4 -0
- package/cli/node_modules/markdown-it/lib/common/entities.js +6 -0
- package/cli/node_modules/markdown-it/lib/common/html_blocks.js +70 -0
- package/cli/node_modules/markdown-it/lib/common/html_re.js +28 -0
- package/cli/node_modules/markdown-it/lib/common/utils.js +317 -0
- package/cli/node_modules/markdown-it/lib/helpers/index.js +7 -0
- package/cli/node_modules/markdown-it/lib/helpers/parse_link_destination.js +82 -0
- package/cli/node_modules/markdown-it/lib/helpers/parse_link_label.js +48 -0
- package/cli/node_modules/markdown-it/lib/helpers/parse_link_title.js +55 -0
- package/cli/node_modules/markdown-it/lib/index.js +582 -0
- package/cli/node_modules/markdown-it/lib/parser_block.js +122 -0
- package/cli/node_modules/markdown-it/lib/parser_core.js +58 -0
- package/cli/node_modules/markdown-it/lib/parser_inline.js +177 -0
- package/cli/node_modules/markdown-it/lib/presets/commonmark.js +80 -0
- package/cli/node_modules/markdown-it/lib/presets/default.js +41 -0
- package/cli/node_modules/markdown-it/lib/presets/zero.js +62 -0
- package/cli/node_modules/markdown-it/lib/renderer.js +341 -0
- package/cli/node_modules/markdown-it/lib/ruler.js +352 -0
- package/cli/node_modules/markdown-it/lib/rules_block/blockquote.js +284 -0
- package/cli/node_modules/markdown-it/lib/rules_block/code.js +34 -0
- package/cli/node_modules/markdown-it/lib/rules_block/fence.js +98 -0
- package/cli/node_modules/markdown-it/lib/rules_block/heading.js +55 -0
- package/cli/node_modules/markdown-it/lib/rules_block/hr.js +45 -0
- package/cli/node_modules/markdown-it/lib/rules_block/html_block.js +74 -0
- package/cli/node_modules/markdown-it/lib/rules_block/lheading.js +83 -0
- package/cli/node_modules/markdown-it/lib/rules_block/list.js +364 -0
- package/cli/node_modules/markdown-it/lib/rules_block/paragraph.js +52 -0
- package/cli/node_modules/markdown-it/lib/rules_block/reference.js +198 -0
- package/cli/node_modules/markdown-it/lib/rules_block/state_block.js +231 -0
- package/cli/node_modules/markdown-it/lib/rules_block/table.js +221 -0
- package/cli/node_modules/markdown-it/lib/rules_core/block.js +16 -0
- package/cli/node_modules/markdown-it/lib/rules_core/inline.js +13 -0
- package/cli/node_modules/markdown-it/lib/rules_core/linkify.js +133 -0
- package/cli/node_modules/markdown-it/lib/rules_core/normalize.js +21 -0
- package/cli/node_modules/markdown-it/lib/rules_core/replacements.js +107 -0
- package/cli/node_modules/markdown-it/lib/rules_core/smartquotes.js +201 -0
- package/cli/node_modules/markdown-it/lib/rules_core/state_core.js +20 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/autolink.js +76 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/backticks.js +63 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/balance_pairs.js +130 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/emphasis.js +130 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/entity.js +48 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/escape.js +52 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/html_inline.js +47 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/image.js +152 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/link.js +148 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/newline.js +46 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/state_inline.js +154 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/strikethrough.js +130 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/text.js +89 -0
- package/cli/node_modules/markdown-it/lib/rules_inline/text_collapse.js +41 -0
- package/cli/node_modules/markdown-it/lib/token.js +201 -0
- package/cli/node_modules/markdown-it/package.json +87 -0
- package/cli/node_modules/markdown-it-anchor/README.md +561 -0
- package/cli/node_modules/markdown-it-anchor/UNLICENSE +24 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.js +2 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.js.map +1 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.mjs +2 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.mjs.map +1 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.modern.js +2 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.modern.js.map +1 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.umd.js +2 -0
- package/cli/node_modules/markdown-it-anchor/dist/markdownItAnchor.umd.js.map +1 -0
- package/cli/node_modules/markdown-it-anchor/package.json +53 -0
- package/cli/node_modules/markdown-it-anchor/runkit.js +22 -0
- package/cli/node_modules/markdown-it-anchor/types/index.d.ts +71 -0
- package/cli/node_modules/marked/LICENSE.md +44 -0
- package/cli/node_modules/marked/README.md +98 -0
- package/cli/node_modules/marked/bin/marked.js +217 -0
- package/cli/node_modules/marked/lib/marked.cjs +3056 -0
- package/cli/node_modules/marked/lib/marked.esm.js +2796 -0
- package/cli/node_modules/marked/lib/marked.umd.js +3062 -0
- package/cli/node_modules/marked/man/marked.1 +92 -0
- package/cli/node_modules/marked/man/marked.1.txt +86 -0
- package/cli/node_modules/marked/marked.min.js +6 -0
- package/cli/node_modules/marked/package.json +97 -0
- package/cli/node_modules/marked/src/Lexer.js +502 -0
- package/cli/node_modules/marked/src/Parser.js +286 -0
- package/cli/node_modules/marked/src/Renderer.js +203 -0
- package/cli/node_modules/marked/src/Slugger.js +55 -0
- package/cli/node_modules/marked/src/TextRenderer.js +42 -0
- package/cli/node_modules/marked/src/Tokenizer.js +785 -0
- package/cli/node_modules/marked/src/defaults.js +29 -0
- package/cli/node_modules/marked/src/helpers.js +276 -0
- package/cli/node_modules/marked/src/marked.js +351 -0
- package/cli/node_modules/marked/src/rules.js +302 -0
- package/cli/node_modules/mdurl/CHANGELOG.md +16 -0
- package/cli/node_modules/mdurl/LICENSE +45 -0
- package/cli/node_modules/mdurl/README.md +102 -0
- package/cli/node_modules/mdurl/decode.js +122 -0
- package/cli/node_modules/mdurl/encode.js +98 -0
- package/cli/node_modules/mdurl/format.js +25 -0
- package/cli/node_modules/mdurl/index.js +7 -0
- package/cli/node_modules/mdurl/package.json +16 -0
- package/cli/node_modules/mdurl/parse.js +312 -0
- package/cli/node_modules/minimatch/README.md +22 -1
- package/cli/node_modules/minimatch/minimatch.js +93 -69
- package/cli/node_modules/minimatch/package.json +6 -3
- package/cli/node_modules/mkdirp/CHANGELOG.md +15 -0
- package/cli/node_modules/mkdirp/LICENSE +21 -0
- package/cli/node_modules/mkdirp/bin/cmd.js +68 -0
- package/cli/node_modules/mkdirp/index.js +31 -0
- package/cli/node_modules/mkdirp/lib/find-made.js +29 -0
- package/cli/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
- package/cli/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
- package/cli/node_modules/mkdirp/lib/opts-arg.js +23 -0
- package/cli/node_modules/mkdirp/lib/path-arg.js +29 -0
- package/cli/node_modules/mkdirp/lib/use-native.js +10 -0
- package/cli/node_modules/mkdirp/package.json +44 -0
- package/cli/node_modules/mkdirp/readme.markdown +266 -0
- package/cli/node_modules/requizzle/.editorconfig +12 -0
- package/cli/node_modules/requizzle/.travis.yml +8 -0
- package/cli/node_modules/requizzle/LICENSE +22 -0
- package/cli/node_modules/requizzle/README.md +171 -0
- package/cli/node_modules/requizzle/index.js +28 -0
- package/cli/node_modules/requizzle/lib/loader.js +165 -0
- package/cli/node_modules/requizzle/lib/requizzle.js +93 -0
- package/cli/node_modules/requizzle/lib/wrappers/extras.js +21 -0
- package/cli/node_modules/requizzle/lib/wrappers/requirepaths.js +46 -0
- package/cli/node_modules/requizzle/lib/wrappers/strict.js +13 -0
- package/cli/node_modules/requizzle/package.json +36 -0
- package/cli/node_modules/strip-json-comments/index.d.ts +36 -0
- package/cli/node_modules/strip-json-comments/index.js +77 -0
- package/cli/node_modules/strip-json-comments/license +9 -0
- package/cli/node_modules/strip-json-comments/package.json +47 -0
- package/cli/node_modules/strip-json-comments/readme.md +78 -0
- package/cli/node_modules/taffydb/package.json +47 -0
- package/cli/node_modules/taffydb/taffy-test.html +84 -0
- package/cli/node_modules/taffydb/taffy.js +1973 -0
- package/cli/node_modules/uc.micro/CHANGELOG.md +52 -0
- package/cli/node_modules/uc.micro/LICENSE.txt +20 -0
- package/cli/node_modules/uc.micro/README.md +14 -0
- package/cli/node_modules/uc.micro/categories/Cc/regex.js +1 -0
- package/cli/node_modules/uc.micro/categories/Cf/regex.js +1 -0
- package/cli/node_modules/uc.micro/categories/P/regex.js +1 -0
- package/cli/node_modules/uc.micro/categories/Z/regex.js +1 -0
- package/cli/node_modules/uc.micro/index.js +7 -0
- package/cli/node_modules/uc.micro/package.json +21 -0
- package/cli/node_modules/uc.micro/properties/Any/regex.js +1 -0
- package/cli/node_modules/{type-check → underscore}/LICENSE +1 -1
- package/cli/node_modules/underscore/README.md +34 -0
- package/cli/node_modules/underscore/amd/_baseCreate.js +21 -0
- package/cli/node_modules/underscore/amd/_baseIteratee.js +15 -0
- package/cli/node_modules/underscore/amd/_cb.js +12 -0
- package/cli/node_modules/underscore/amd/_chainResult.js +10 -0
- package/cli/node_modules/underscore/amd/_collectNonEnumProps.js +42 -0
- package/cli/node_modules/underscore/amd/_createAssigner.js +24 -0
- package/cli/node_modules/underscore/amd/_createEscaper.js +21 -0
- package/cli/node_modules/underscore/amd/_createIndexFinder.js +30 -0
- package/cli/node_modules/underscore/amd/_createPredicateIndexFinder.js +18 -0
- package/cli/node_modules/underscore/amd/_createReduce.js +30 -0
- package/cli/node_modules/underscore/amd/_createSizePropertyCheck.js +13 -0
- package/cli/node_modules/underscore/amd/_deepGet.js +15 -0
- package/cli/node_modules/underscore/amd/_escapeMap.js +15 -0
- package/cli/node_modules/underscore/amd/_executeBound.js +16 -0
- package/cli/node_modules/underscore/amd/_flatten.js +32 -0
- package/cli/node_modules/underscore/amd/_getByteLength.js +8 -0
- package/cli/node_modules/underscore/amd/_getLength.js +8 -0
- package/cli/node_modules/underscore/amd/_group.js +18 -0
- package/cli/node_modules/underscore/amd/_has.js +10 -0
- package/cli/node_modules/underscore/amd/_hasObjectTag.js +7 -0
- package/cli/node_modules/underscore/amd/_isArrayLike.js +11 -0
- package/cli/node_modules/underscore/amd/_isBufferLike.js +9 -0
- package/cli/node_modules/underscore/amd/_keyInObj.js +11 -0
- package/cli/node_modules/underscore/amd/_methodFingerprint.js +44 -0
- package/cli/node_modules/underscore/amd/_optimizeCb.js +27 -0
- package/cli/node_modules/underscore/amd/_setup.js +70 -0
- package/cli/node_modules/underscore/amd/_shallowProperty.js +12 -0
- package/cli/node_modules/underscore/amd/_stringTagBug.js +16 -0
- package/cli/node_modules/underscore/amd/_tagTester.js +13 -0
- package/cli/node_modules/underscore/amd/_toBufferView.js +15 -0
- package/cli/node_modules/underscore/amd/_toPath.js +11 -0
- package/cli/node_modules/underscore/amd/_unescapeMap.js +8 -0
- package/cli/node_modules/underscore/amd/after.js +14 -0
- package/cli/node_modules/underscore/amd/allKeys.js +15 -0
- package/cli/node_modules/underscore/amd/before.js +18 -0
- package/cli/node_modules/underscore/amd/bind.js +15 -0
- package/cli/node_modules/underscore/amd/bindAll.js +19 -0
- package/cli/node_modules/underscore/amd/chain.js +12 -0
- package/cli/node_modules/underscore/amd/chunk.js +17 -0
- package/cli/node_modules/underscore/amd/clone.js +11 -0
- package/cli/node_modules/underscore/amd/compact.js +10 -0
- package/cli/node_modules/underscore/amd/compose.js +18 -0
- package/cli/node_modules/underscore/amd/constant.js +12 -0
- package/cli/node_modules/underscore/amd/contains.js +12 -0
- package/cli/node_modules/underscore/amd/countBy.js +12 -0
- package/cli/node_modules/underscore/amd/create.js +14 -0
- package/cli/node_modules/underscore/amd/debounce.js +43 -0
- package/cli/node_modules/underscore/amd/defaults.js +8 -0
- package/cli/node_modules/underscore/amd/defer.js +9 -0
- package/cli/node_modules/underscore/amd/delay.js +13 -0
- package/cli/node_modules/underscore/amd/difference.js +14 -0
- package/cli/node_modules/underscore/amd/each.js +25 -0
- package/cli/node_modules/underscore/amd/escape.js +8 -0
- package/cli/node_modules/underscore/amd/every.js +17 -0
- package/cli/node_modules/underscore/amd/extend.js +8 -0
- package/cli/node_modules/underscore/amd/extendOwn.js +10 -0
- package/cli/node_modules/underscore/amd/filter.js +15 -0
- package/cli/node_modules/underscore/amd/find.js +12 -0
- package/cli/node_modules/underscore/amd/findIndex.js +8 -0
- package/cli/node_modules/underscore/amd/findKey.js +15 -0
- package/cli/node_modules/underscore/amd/findLastIndex.js +8 -0
- package/cli/node_modules/underscore/amd/findWhere.js +11 -0
- package/cli/node_modules/underscore/amd/first.js +13 -0
- package/cli/node_modules/underscore/amd/flatten.js +11 -0
- package/cli/node_modules/underscore/amd/functions.js +14 -0
- package/cli/node_modules/underscore/amd/get.js +14 -0
- package/cli/node_modules/underscore/amd/groupBy.js +11 -0
- package/cli/node_modules/underscore/amd/has.js +19 -0
- package/cli/node_modules/underscore/amd/identity.js +10 -0
- package/cli/node_modules/underscore/amd/index-default.js +12 -0
- package/cli/node_modules/underscore/amd/index.js +154 -0
- package/cli/node_modules/underscore/amd/indexBy.js +11 -0
- package/cli/node_modules/underscore/amd/indexOf.js +11 -0
- package/cli/node_modules/underscore/amd/initial.js +12 -0
- package/cli/node_modules/underscore/amd/intersection.js +22 -0
- package/cli/node_modules/underscore/amd/invert.js +15 -0
- package/cli/node_modules/underscore/amd/invoke.js +28 -0
- package/cli/node_modules/underscore/amd/isArguments.js +19 -0
- package/cli/node_modules/underscore/amd/isArray.js +9 -0
- package/cli/node_modules/underscore/amd/isArrayBuffer.js +7 -0
- package/cli/node_modules/underscore/amd/isBoolean.js +10 -0
- package/cli/node_modules/underscore/amd/isDataView.js +15 -0
- package/cli/node_modules/underscore/amd/isDate.js +7 -0
- package/cli/node_modules/underscore/amd/isElement.js +10 -0
- package/cli/node_modules/underscore/amd/isEmpty.js +18 -0
- package/cli/node_modules/underscore/amd/isEqual.js +133 -0
- package/cli/node_modules/underscore/amd/isError.js +7 -0
- package/cli/node_modules/underscore/amd/isFinite.js +10 -0
- package/cli/node_modules/underscore/amd/isFunction.js +18 -0
- package/cli/node_modules/underscore/amd/isMap.js +7 -0
- package/cli/node_modules/underscore/amd/isMatch.js +17 -0
- package/cli/node_modules/underscore/amd/isNaN.js +10 -0
- package/cli/node_modules/underscore/amd/isNull.js +10 -0
- package/cli/node_modules/underscore/amd/isNumber.js +7 -0
- package/cli/node_modules/underscore/amd/isObject.js +11 -0
- package/cli/node_modules/underscore/amd/isRegExp.js +7 -0
- package/cli/node_modules/underscore/amd/isSet.js +7 -0
- package/cli/node_modules/underscore/amd/isString.js +7 -0
- package/cli/node_modules/underscore/amd/isSymbol.js +7 -0
- package/cli/node_modules/underscore/amd/isTypedArray.js +16 -0
- package/cli/node_modules/underscore/amd/isUndefined.js +10 -0
- package/cli/node_modules/underscore/amd/isWeakMap.js +7 -0
- package/cli/node_modules/underscore/amd/isWeakSet.js +7 -0
- package/cli/node_modules/underscore/amd/iteratee.js +13 -0
- package/cli/node_modules/underscore/amd/keys.js +17 -0
- package/cli/node_modules/underscore/amd/last.js +13 -0
- package/cli/node_modules/underscore/amd/lastIndexOf.js +9 -0
- package/cli/node_modules/underscore/amd/map.js +18 -0
- package/cli/node_modules/underscore/amd/mapObject.js +19 -0
- package/cli/node_modules/underscore/amd/matcher.js +14 -0
- package/cli/node_modules/underscore/amd/max.js +30 -0
- package/cli/node_modules/underscore/amd/memoize.js +17 -0
- package/cli/node_modules/underscore/amd/min.js +30 -0
- package/cli/node_modules/underscore/amd/mixin.js +18 -0
- package/cli/node_modules/underscore/amd/negate.js +12 -0
- package/cli/node_modules/underscore/amd/noop.js +8 -0
- package/cli/node_modules/underscore/amd/now.js +10 -0
- package/cli/node_modules/underscore/amd/object.js +20 -0
- package/cli/node_modules/underscore/amd/omit.js +20 -0
- package/cli/node_modules/underscore/amd/once.js +9 -0
- package/cli/node_modules/underscore/amd/pairs.js +17 -0
- package/cli/node_modules/underscore/amd/partial.js +25 -0
- package/cli/node_modules/underscore/amd/partition.js +11 -0
- package/cli/node_modules/underscore/amd/pick.js +25 -0
- package/cli/node_modules/underscore/amd/pluck.js +10 -0
- package/cli/node_modules/underscore/amd/property.js +14 -0
- package/cli/node_modules/underscore/amd/propertyOf.js +13 -0
- package/cli/node_modules/underscore/amd/random.js +14 -0
- package/cli/node_modules/underscore/amd/range.js +27 -0
- package/cli/node_modules/underscore/amd/reduce.js +9 -0
- package/cli/node_modules/underscore/amd/reduceRight.js +8 -0
- package/cli/node_modules/underscore/amd/reject.js +10 -0
- package/cli/node_modules/underscore/amd/rest.js +12 -0
- package/cli/node_modules/underscore/amd/restArguments.js +33 -0
- package/cli/node_modules/underscore/amd/result.js +25 -0
- package/cli/node_modules/underscore/amd/sample.js +27 -0
- package/cli/node_modules/underscore/amd/shuffle.js +10 -0
- package/cli/node_modules/underscore/amd/size.js +11 -0
- package/cli/node_modules/underscore/amd/some.js +17 -0
- package/cli/node_modules/underscore/amd/sortBy.js +26 -0
- package/cli/node_modules/underscore/amd/sortedIndex.js +18 -0
- package/cli/node_modules/underscore/amd/tap.js +13 -0
- package/cli/node_modules/underscore/amd/template.js +103 -0
- package/cli/node_modules/underscore/amd/templateSettings.js +13 -0
- package/cli/node_modules/underscore/amd/throttle.js +51 -0
- package/cli/node_modules/underscore/amd/times.js +13 -0
- package/cli/node_modules/underscore/amd/toArray.js +18 -0
- package/cli/node_modules/underscore/amd/toPath.js +12 -0
- package/cli/node_modules/underscore/amd/underscore-array-methods.js +30 -0
- package/cli/node_modules/underscore/amd/underscore.js +29 -0
- package/cli/node_modules/underscore/amd/unescape.js +8 -0
- package/cli/node_modules/underscore/amd/union.js +11 -0
- package/cli/node_modules/underscore/amd/uniq.js +37 -0
- package/cli/node_modules/underscore/amd/uniqueId.js +13 -0
- package/cli/node_modules/underscore/amd/unzip.js +17 -0
- package/cli/node_modules/underscore/amd/values.js +16 -0
- package/cli/node_modules/underscore/amd/where.js +11 -0
- package/cli/node_modules/underscore/amd/without.js +10 -0
- package/cli/node_modules/underscore/amd/wrap.js +12 -0
- package/cli/node_modules/underscore/amd/zip.js +9 -0
- package/cli/node_modules/underscore/cjs/_baseCreate.js +20 -0
- package/cli/node_modules/underscore/cjs/_baseIteratee.js +19 -0
- package/cli/node_modules/underscore/cjs/_cb.js +12 -0
- package/cli/node_modules/underscore/cjs/_chainResult.js +8 -0
- package/cli/node_modules/underscore/cjs/_collectNonEnumProps.js +42 -0
- package/cli/node_modules/underscore/cjs/_createAssigner.js +20 -0
- package/cli/node_modules/underscore/cjs/_createEscaper.js +19 -0
- package/cli/node_modules/underscore/cjs/_createIndexFinder.js +30 -0
- package/cli/node_modules/underscore/cjs/_createPredicateIndexFinder.js +17 -0
- package/cli/node_modules/underscore/cjs/_createReduce.js +30 -0
- package/cli/node_modules/underscore/cjs/_createSizePropertyCheck.js +11 -0
- package/cli/node_modules/underscore/cjs/_deepGet.js +11 -0
- package/cli/node_modules/underscore/cjs/_escapeMap.js +11 -0
- package/cli/node_modules/underscore/cjs/_executeBound.js +15 -0
- package/cli/node_modules/underscore/cjs/_flatten.js +33 -0
- package/cli/node_modules/underscore/cjs/_getByteLength.js +6 -0
- package/cli/node_modules/underscore/cjs/_getLength.js +6 -0
- package/cli/node_modules/underscore/cjs/_group.js +17 -0
- package/cli/node_modules/underscore/cjs/_has.js +8 -0
- package/cli/node_modules/underscore/cjs/_hasObjectTag.js +5 -0
- package/cli/node_modules/underscore/cjs/_isArrayLike.js +10 -0
- package/cli/node_modules/underscore/cjs/_isBufferLike.js +8 -0
- package/cli/node_modules/underscore/cjs/_keyInObj.js +7 -0
- package/cli/node_modules/underscore/cjs/_methodFingerprint.js +44 -0
- package/cli/node_modules/underscore/cjs/_optimizeCb.js +23 -0
- package/cli/node_modules/underscore/cjs/_setup.js +66 -0
- package/cli/node_modules/underscore/cjs/_shallowProperty.js +8 -0
- package/cli/node_modules/underscore/cjs/_stringTagBug.js +15 -0
- package/cli/node_modules/underscore/cjs/_tagTester.js +11 -0
- package/cli/node_modules/underscore/cjs/_toBufferView.js +13 -0
- package/cli/node_modules/underscore/cjs/_toPath.js +10 -0
- package/cli/node_modules/underscore/cjs/_unescapeMap.js +7 -0
- package/cli/node_modules/underscore/cjs/after.js +10 -0
- package/cli/node_modules/underscore/cjs/allKeys.js +15 -0
- package/cli/node_modules/underscore/cjs/before.js +14 -0
- package/cli/node_modules/underscore/cjs/bind.js +15 -0
- package/cli/node_modules/underscore/cjs/bindAll.js +19 -0
- package/cli/node_modules/underscore/cjs/chain.js +10 -0
- package/cli/node_modules/underscore/cjs/chunk.js +15 -0
- package/cli/node_modules/underscore/cjs/clone.js +11 -0
- package/cli/node_modules/underscore/cjs/compact.js +8 -0
- package/cli/node_modules/underscore/cjs/compose.js +14 -0
- package/cli/node_modules/underscore/cjs/constant.js +8 -0
- package/cli/node_modules/underscore/cjs/contains.js +12 -0
- package/cli/node_modules/underscore/cjs/countBy.js +11 -0
- package/cli/node_modules/underscore/cjs/create.js +13 -0
- package/cli/node_modules/underscore/cjs/debounce.js +42 -0
- package/cli/node_modules/underscore/cjs/defaults.js +7 -0
- package/cli/node_modules/underscore/cjs/defer.js +9 -0
- package/cli/node_modules/underscore/cjs/delay.js +11 -0
- package/cli/node_modules/underscore/cjs/difference.js +15 -0
- package/cli/node_modules/underscore/cjs/each.js +25 -0
- package/cli/node_modules/underscore/cjs/escape.js +7 -0
- package/cli/node_modules/underscore/cjs/every.js +17 -0
- package/cli/node_modules/underscore/cjs/extend.js +7 -0
- package/cli/node_modules/underscore/cjs/extendOwn.js +9 -0
- package/cli/node_modules/underscore/cjs/filter.js +14 -0
- package/cli/node_modules/underscore/cjs/find.js +12 -0
- package/cli/node_modules/underscore/cjs/findIndex.js +6 -0
- package/cli/node_modules/underscore/cjs/findKey.js +14 -0
- package/cli/node_modules/underscore/cjs/findLastIndex.js +6 -0
- package/cli/node_modules/underscore/cjs/findWhere.js +10 -0
- package/cli/node_modules/underscore/cjs/first.js +11 -0
- package/cli/node_modules/underscore/cjs/flatten.js +9 -0
- package/cli/node_modules/underscore/cjs/functions.js +12 -0
- package/cli/node_modules/underscore/cjs/get.js +14 -0
- package/cli/node_modules/underscore/cjs/groupBy.js +10 -0
- package/cli/node_modules/underscore/cjs/has.js +18 -0
- package/cli/node_modules/underscore/cjs/identity.js +6 -0
- package/cli/node_modules/underscore/cjs/index-default.js +11 -0
- package/cli/node_modules/underscore/cjs/index.js +278 -0
- package/cli/node_modules/underscore/cjs/indexBy.js +9 -0
- package/cli/node_modules/underscore/cjs/indexOf.js +11 -0
- package/cli/node_modules/underscore/cjs/initial.js +10 -0
- package/cli/node_modules/underscore/cjs/intersection.js +21 -0
- package/cli/node_modules/underscore/cjs/invert.js +13 -0
- package/cli/node_modules/underscore/cjs/invoke.js +30 -0
- package/cli/node_modules/underscore/cjs/isArguments.js +18 -0
- package/cli/node_modules/underscore/cjs/isArray.js +8 -0
- package/cli/node_modules/underscore/cjs/isArrayBuffer.js +5 -0
- package/cli/node_modules/underscore/cjs/isBoolean.js +8 -0
- package/cli/node_modules/underscore/cjs/isDataView.js +16 -0
- package/cli/node_modules/underscore/cjs/isDate.js +5 -0
- package/cli/node_modules/underscore/cjs/isElement.js +6 -0
- package/cli/node_modules/underscore/cjs/isEmpty.js +20 -0
- package/cli/node_modules/underscore/cjs/isEqual.js +140 -0
- package/cli/node_modules/underscore/cjs/isError.js +5 -0
- package/cli/node_modules/underscore/cjs/isFinite.js +9 -0
- package/cli/node_modules/underscore/cjs/isFunction.js +17 -0
- package/cli/node_modules/underscore/cjs/isMap.js +7 -0
- package/cli/node_modules/underscore/cjs/isMatch.js +15 -0
- package/cli/node_modules/underscore/cjs/isNaN.js +9 -0
- package/cli/node_modules/underscore/cjs/isNull.js +6 -0
- package/cli/node_modules/underscore/cjs/isNumber.js +5 -0
- package/cli/node_modules/underscore/cjs/isObject.js +7 -0
- package/cli/node_modules/underscore/cjs/isRegExp.js +5 -0
- package/cli/node_modules/underscore/cjs/isSet.js +7 -0
- package/cli/node_modules/underscore/cjs/isString.js +5 -0
- package/cli/node_modules/underscore/cjs/isSymbol.js +5 -0
- package/cli/node_modules/underscore/cjs/isTypedArray.js +17 -0
- package/cli/node_modules/underscore/cjs/isUndefined.js +6 -0
- package/cli/node_modules/underscore/cjs/isWeakMap.js +7 -0
- package/cli/node_modules/underscore/cjs/isWeakSet.js +5 -0
- package/cli/node_modules/underscore/cjs/iteratee.js +12 -0
- package/cli/node_modules/underscore/cjs/keys.js +18 -0
- package/cli/node_modules/underscore/cjs/last.js +11 -0
- package/cli/node_modules/underscore/cjs/lastIndexOf.js +8 -0
- package/cli/node_modules/underscore/cjs/map.js +18 -0
- package/cli/node_modules/underscore/cjs/mapObject.js +18 -0
- package/cli/node_modules/underscore/cjs/matcher.js +13 -0
- package/cli/node_modules/underscore/cjs/max.js +31 -0
- package/cli/node_modules/underscore/cjs/memoize.js +15 -0
- package/cli/node_modules/underscore/cjs/min.js +31 -0
- package/cli/node_modules/underscore/cjs/mixin.js +20 -0
- package/cli/node_modules/underscore/cjs/negate.js +8 -0
- package/cli/node_modules/underscore/cjs/noop.js +4 -0
- package/cli/node_modules/underscore/cjs/now.js +6 -0
- package/cli/node_modules/underscore/cjs/object.js +18 -0
- package/cli/node_modules/underscore/cjs/omit.js +24 -0
- package/cli/node_modules/underscore/cjs/once.js +8 -0
- package/cli/node_modules/underscore/cjs/pairs.js +15 -0
- package/cli/node_modules/underscore/cjs/partial.js +25 -0
- package/cli/node_modules/underscore/cjs/partition.js +9 -0
- package/cli/node_modules/underscore/cjs/pick.js +28 -0
- package/cli/node_modules/underscore/cjs/pluck.js +9 -0
- package/cli/node_modules/underscore/cjs/property.js +13 -0
- package/cli/node_modules/underscore/cjs/propertyOf.js +12 -0
- package/cli/node_modules/underscore/cjs/random.js +10 -0
- package/cli/node_modules/underscore/cjs/range.js +23 -0
- package/cli/node_modules/underscore/cjs/reduce.js +7 -0
- package/cli/node_modules/underscore/cjs/reduceRight.js +6 -0
- package/cli/node_modules/underscore/cjs/reject.js +10 -0
- package/cli/node_modules/underscore/cjs/rest.js +10 -0
- package/cli/node_modules/underscore/cjs/restArguments.js +29 -0
- package/cli/node_modules/underscore/cjs/result.js +24 -0
- package/cli/node_modules/underscore/cjs/sample.js +29 -0
- package/cli/node_modules/underscore/cjs/shuffle.js +8 -0
- package/cli/node_modules/underscore/cjs/size.js +10 -0
- package/cli/node_modules/underscore/cjs/some.js +17 -0
- package/cli/node_modules/underscore/cjs/sortBy.js +26 -0
- package/cli/node_modules/underscore/cjs/sortedIndex.js +17 -0
- package/cli/node_modules/underscore/cjs/tap.js +9 -0
- package/cli/node_modules/underscore/cjs/template.js +103 -0
- package/cli/node_modules/underscore/cjs/templateSettings.js +11 -0
- package/cli/node_modules/underscore/cjs/throttle.js +49 -0
- package/cli/node_modules/underscore/cjs/times.js +11 -0
- package/cli/node_modules/underscore/cjs/toArray.js +22 -0
- package/cli/node_modules/underscore/cjs/toPath.js +11 -0
- package/cli/node_modules/underscore/cjs/underscore-array-methods.js +31 -0
- package/cli/node_modules/underscore/cjs/underscore.js +27 -0
- package/cli/node_modules/underscore/cjs/unescape.js +7 -0
- package/cli/node_modules/underscore/cjs/union.js +11 -0
- package/cli/node_modules/underscore/cjs/uniq.js +38 -0
- package/cli/node_modules/underscore/cjs/uniqueId.js +9 -0
- package/cli/node_modules/underscore/cjs/unzip.js +17 -0
- package/cli/node_modules/underscore/cjs/values.js +14 -0
- package/cli/node_modules/underscore/cjs/where.js +10 -0
- package/cli/node_modules/underscore/cjs/without.js +9 -0
- package/cli/node_modules/underscore/cjs/wrap.js +10 -0
- package/cli/node_modules/underscore/cjs/zip.js +8 -0
- package/cli/node_modules/underscore/modules/.eslintrc +21 -0
- package/cli/node_modules/underscore/modules/_baseCreate.js +18 -0
- package/cli/node_modules/underscore/modules/_baseIteratee.js +17 -0
- package/cli/node_modules/underscore/modules/_cb.js +10 -0
- package/cli/node_modules/underscore/modules/_chainResult.js +6 -0
- package/cli/node_modules/underscore/modules/_collectNonEnumProps.js +40 -0
- package/cli/node_modules/underscore/modules/_createAssigner.js +18 -0
- package/cli/node_modules/underscore/modules/_createEscaper.js +17 -0
- package/cli/node_modules/underscore/modules/_createIndexFinder.js +28 -0
- package/cli/node_modules/underscore/modules/_createPredicateIndexFinder.js +15 -0
- package/cli/node_modules/underscore/modules/_createReduce.js +28 -0
- package/cli/node_modules/underscore/modules/_createSizePropertyCheck.js +9 -0
- package/cli/node_modules/underscore/modules/_deepGet.js +9 -0
- package/cli/node_modules/underscore/modules/_escapeMap.js +9 -0
- package/cli/node_modules/underscore/modules/_executeBound.js +13 -0
- package/cli/node_modules/underscore/modules/_flatten.js +31 -0
- package/cli/node_modules/underscore/modules/_getByteLength.js +4 -0
- package/cli/node_modules/underscore/modules/_getLength.js +4 -0
- package/cli/node_modules/underscore/modules/_group.js +15 -0
- package/cli/node_modules/underscore/modules/_has.js +6 -0
- package/cli/node_modules/underscore/modules/_hasObjectTag.js +3 -0
- package/cli/node_modules/underscore/modules/_isArrayLike.js +8 -0
- package/cli/node_modules/underscore/modules/_isBufferLike.js +6 -0
- package/cli/node_modules/underscore/modules/_keyInObj.js +5 -0
- package/cli/node_modules/underscore/modules/_methodFingerprint.js +37 -0
- package/cli/node_modules/underscore/modules/_optimizeCb.js +21 -0
- package/cli/node_modules/underscore/modules/_setup.js +43 -0
- package/cli/node_modules/underscore/modules/_shallowProperty.js +6 -0
- package/cli/node_modules/underscore/modules/_stringTagBug.js +10 -0
- package/cli/node_modules/underscore/modules/_tagTester.js +9 -0
- package/cli/node_modules/underscore/modules/_toBufferView.js +11 -0
- package/cli/node_modules/underscore/modules/_toPath.js +8 -0
- package/cli/node_modules/underscore/modules/_unescapeMap.js +5 -0
- package/cli/node_modules/underscore/modules/after.js +8 -0
- package/cli/node_modules/underscore/modules/allKeys.js +13 -0
- package/cli/node_modules/underscore/modules/before.js +12 -0
- package/cli/node_modules/underscore/modules/bind.js +13 -0
- package/cli/node_modules/underscore/modules/bindAll.js +17 -0
- package/cli/node_modules/underscore/modules/chain.js +8 -0
- package/cli/node_modules/underscore/modules/chunk.js +13 -0
- package/cli/node_modules/underscore/modules/clone.js +9 -0
- package/cli/node_modules/underscore/modules/compact.js +6 -0
- package/cli/node_modules/underscore/modules/compose.js +12 -0
- package/cli/node_modules/underscore/modules/constant.js +6 -0
- package/cli/node_modules/underscore/modules/contains.js +10 -0
- package/cli/node_modules/underscore/modules/countBy.js +9 -0
- package/cli/node_modules/underscore/modules/create.js +11 -0
- package/cli/node_modules/underscore/modules/debounce.js +40 -0
- package/cli/node_modules/underscore/modules/defaults.js +5 -0
- package/cli/node_modules/underscore/modules/defer.js +7 -0
- package/cli/node_modules/underscore/modules/delay.js +9 -0
- package/cli/node_modules/underscore/modules/difference.js +13 -0
- package/cli/node_modules/underscore/modules/each.js +23 -0
- package/cli/node_modules/underscore/modules/escape.js +5 -0
- package/cli/node_modules/underscore/modules/every.js +15 -0
- package/cli/node_modules/underscore/modules/extend.js +5 -0
- package/cli/node_modules/underscore/modules/extendOwn.js +7 -0
- package/cli/node_modules/underscore/modules/filter.js +12 -0
- package/cli/node_modules/underscore/modules/find.js +10 -0
- package/cli/node_modules/underscore/modules/findIndex.js +4 -0
- package/cli/node_modules/underscore/modules/findKey.js +12 -0
- package/cli/node_modules/underscore/modules/findLastIndex.js +4 -0
- package/cli/node_modules/underscore/modules/findWhere.js +8 -0
- package/cli/node_modules/underscore/modules/first.js +9 -0
- package/cli/node_modules/underscore/modules/flatten.js +7 -0
- package/cli/node_modules/underscore/modules/functions.js +10 -0
- package/cli/node_modules/underscore/modules/get.js +12 -0
- package/cli/node_modules/underscore/modules/groupBy.js +8 -0
- package/cli/node_modules/underscore/modules/has.js +16 -0
- package/cli/node_modules/underscore/modules/identity.js +4 -0
- package/cli/node_modules/underscore/modules/index-all.js +18 -0
- package/cli/node_modules/underscore/modules/index-default.js +27 -0
- package/cli/node_modules/underscore/modules/index.js +200 -0
- package/cli/node_modules/underscore/modules/indexBy.js +7 -0
- package/cli/node_modules/underscore/modules/indexOf.js +9 -0
- package/cli/node_modules/underscore/modules/initial.js +8 -0
- package/cli/node_modules/underscore/modules/intersection.js +19 -0
- package/cli/node_modules/underscore/modules/invert.js +11 -0
- package/cli/node_modules/underscore/modules/invoke.js +28 -0
- package/cli/node_modules/underscore/modules/isArguments.js +16 -0
- package/cli/node_modules/underscore/modules/isArray.js +6 -0
- package/cli/node_modules/underscore/modules/isArrayBuffer.js +3 -0
- package/cli/node_modules/underscore/modules/isBoolean.js +6 -0
- package/cli/node_modules/underscore/modules/isDataView.js +14 -0
- package/cli/node_modules/underscore/modules/isDate.js +3 -0
- package/cli/node_modules/underscore/modules/isElement.js +4 -0
- package/cli/node_modules/underscore/modules/isEmpty.js +18 -0
- package/cli/node_modules/underscore/modules/isEqual.js +138 -0
- package/cli/node_modules/underscore/modules/isError.js +3 -0
- package/cli/node_modules/underscore/modules/isFinite.js +7 -0
- package/cli/node_modules/underscore/modules/isFunction.js +15 -0
- package/cli/node_modules/underscore/modules/isMap.js +5 -0
- package/cli/node_modules/underscore/modules/isMatch.js +13 -0
- package/cli/node_modules/underscore/modules/isNaN.js +7 -0
- package/cli/node_modules/underscore/modules/isNull.js +4 -0
- package/cli/node_modules/underscore/modules/isNumber.js +3 -0
- package/cli/node_modules/underscore/modules/isObject.js +5 -0
- package/cli/node_modules/underscore/modules/isRegExp.js +3 -0
- package/cli/node_modules/underscore/modules/isSet.js +5 -0
- package/cli/node_modules/underscore/modules/isString.js +3 -0
- package/cli/node_modules/underscore/modules/isSymbol.js +3 -0
- package/cli/node_modules/underscore/modules/isTypedArray.js +15 -0
- package/cli/node_modules/underscore/modules/isUndefined.js +4 -0
- package/cli/node_modules/underscore/modules/isWeakMap.js +5 -0
- package/cli/node_modules/underscore/modules/isWeakSet.js +3 -0
- package/cli/node_modules/underscore/modules/iteratee.js +10 -0
- package/cli/node_modules/underscore/modules/keys.js +16 -0
- package/cli/node_modules/underscore/modules/last.js +9 -0
- package/cli/node_modules/underscore/modules/lastIndexOf.js +6 -0
- package/cli/node_modules/underscore/modules/map.js +16 -0
- package/cli/node_modules/underscore/modules/mapObject.js +16 -0
- package/cli/node_modules/underscore/modules/matcher.js +11 -0
- package/cli/node_modules/underscore/modules/max.js +29 -0
- package/cli/node_modules/underscore/modules/memoize.js +13 -0
- package/cli/node_modules/underscore/modules/min.js +29 -0
- package/cli/node_modules/underscore/modules/mixin.js +18 -0
- package/cli/node_modules/underscore/modules/negate.js +6 -0
- package/cli/node_modules/underscore/modules/noop.js +2 -0
- package/cli/node_modules/underscore/modules/now.js +4 -0
- package/cli/node_modules/underscore/modules/object.js +16 -0
- package/cli/node_modules/underscore/modules/omit.js +22 -0
- package/cli/node_modules/underscore/modules/once.js +6 -0
- package/cli/node_modules/underscore/modules/package.json +1 -0
- package/cli/node_modules/underscore/modules/pairs.js +13 -0
- package/cli/node_modules/underscore/modules/partial.js +24 -0
- package/cli/node_modules/underscore/modules/partition.js +7 -0
- package/cli/node_modules/underscore/modules/pick.js +26 -0
- package/cli/node_modules/underscore/modules/pluck.js +7 -0
- package/cli/node_modules/underscore/modules/property.js +11 -0
- package/cli/node_modules/underscore/modules/propertyOf.js +10 -0
- package/cli/node_modules/underscore/modules/random.js +8 -0
- package/cli/node_modules/underscore/modules/range.js +21 -0
- package/cli/node_modules/underscore/modules/reduce.js +5 -0
- package/cli/node_modules/underscore/modules/reduceRight.js +4 -0
- package/cli/node_modules/underscore/modules/reject.js +8 -0
- package/cli/node_modules/underscore/modules/rest.js +8 -0
- package/cli/node_modules/underscore/modules/restArguments.js +27 -0
- package/cli/node_modules/underscore/modules/result.js +22 -0
- package/cli/node_modules/underscore/modules/sample.js +27 -0
- package/cli/node_modules/underscore/modules/shuffle.js +6 -0
- package/cli/node_modules/underscore/modules/size.js +8 -0
- package/cli/node_modules/underscore/modules/some.js +15 -0
- package/cli/node_modules/underscore/modules/sortBy.js +24 -0
- package/cli/node_modules/underscore/modules/sortedIndex.js +15 -0
- package/cli/node_modules/underscore/modules/tap.js +7 -0
- package/cli/node_modules/underscore/modules/template.js +101 -0
- package/cli/node_modules/underscore/modules/templateSettings.js +9 -0
- package/cli/node_modules/underscore/modules/throttle.js +47 -0
- package/cli/node_modules/underscore/modules/times.js +9 -0
- package/cli/node_modules/underscore/modules/toArray.js +20 -0
- package/cli/node_modules/underscore/modules/toPath.js +9 -0
- package/cli/node_modules/underscore/modules/underscore-array-methods.js +31 -0
- package/cli/node_modules/underscore/modules/underscore.js +25 -0
- package/cli/node_modules/underscore/modules/unescape.js +5 -0
- package/cli/node_modules/underscore/modules/union.js +9 -0
- package/cli/node_modules/underscore/modules/uniq.js +36 -0
- package/cli/node_modules/underscore/modules/uniqueId.js +7 -0
- package/cli/node_modules/underscore/modules/unzip.js +15 -0
- package/cli/node_modules/underscore/modules/values.js +12 -0
- package/cli/node_modules/underscore/modules/where.js +8 -0
- package/cli/node_modules/underscore/modules/without.js +7 -0
- package/cli/node_modules/underscore/modules/wrap.js +8 -0
- package/cli/node_modules/underscore/modules/zip.js +6 -0
- package/cli/node_modules/underscore/package.json +122 -0
- package/cli/node_modules/underscore/underscore-esm-min.js +5 -0
- package/cli/node_modules/underscore/underscore-esm-min.js.map +1 -0
- package/cli/node_modules/underscore/underscore-esm.js +2034 -0
- package/cli/node_modules/underscore/underscore-esm.js.map +1 -0
- package/cli/node_modules/underscore/underscore-min.js +6 -0
- package/cli/node_modules/underscore/underscore-min.js.map +1 -0
- package/cli/node_modules/underscore/underscore-node-f.cjs +2158 -0
- package/cli/node_modules/underscore/underscore-node-f.cjs.map +1 -0
- package/cli/node_modules/underscore/underscore-node.cjs +11 -0
- package/cli/node_modules/underscore/underscore-node.cjs.map +1 -0
- package/cli/node_modules/underscore/underscore-node.mjs +7 -0
- package/cli/node_modules/underscore/underscore-node.mjs.map +1 -0
- package/cli/node_modules/underscore/underscore-umd-min.js +6 -0
- package/cli/node_modules/underscore/underscore-umd-min.js.map +1 -0
- package/cli/node_modules/underscore/underscore-umd.js +2042 -0
- package/cli/node_modules/underscore/underscore-umd.js.map +1 -0
- package/cli/node_modules/underscore/underscore.js +2042 -0
- package/cli/node_modules/xmlcreate/CHANGES.md +53 -0
- package/cli/node_modules/xmlcreate/LICENSE +201 -0
- package/cli/node_modules/xmlcreate/NOTICE +2 -0
- package/cli/node_modules/xmlcreate/README.md +141 -0
- package/cli/node_modules/xmlcreate/lib/error.d.ts +19 -0
- package/cli/node_modules/xmlcreate/lib/error.js +47 -0
- package/cli/node_modules/xmlcreate/lib/escape.d.ts +37 -0
- package/cli/node_modules/xmlcreate/lib/escape.js +55 -0
- package/cli/node_modules/xmlcreate/lib/main.d.ts +38 -0
- package/cli/node_modules/xmlcreate/lib/main.js +64 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlAttribute.d.ts +88 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlAttribute.js +146 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlAttributeText.d.ts +58 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlAttributeText.js +80 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCdata.d.ts +63 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCdata.js +88 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCharData.d.ts +59 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCharData.js +82 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCharRef.d.ts +89 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlCharRef.js +136 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlComment.d.ts +62 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlComment.js +99 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDecl.d.ts +92 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDecl.js +180 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDocument.d.ts +96 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDocument.js +166 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtd.d.ts +147 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtd.js +312 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdAttlist.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdAttlist.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdElement.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdElement.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdEntity.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdEntity.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdNotation.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdNotation.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdParamEntityRef.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlDtdParamEntityRef.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlElement.d.ts +153 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlElement.js +302 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlEntityRef.d.ts +56 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlEntityRef.js +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlProcInst.d.ts +71 -0
- package/cli/node_modules/xmlcreate/lib/nodes/XmlProcInst.js +112 -0
- package/cli/node_modules/xmlcreate/lib/options.d.ts +51 -0
- package/cli/node_modules/xmlcreate/lib/options.js +45 -0
- package/cli/node_modules/xmlcreate/lib/validate.d.ts +46 -0
- package/cli/node_modules/xmlcreate/lib/validate.js +274 -0
- package/cli/node_modules/xmlcreate/package.json +55 -0
- package/cli/package.json +3 -1
- package/dist/light/protobuf.js +11 -7
- package/dist/light/protobuf.js.map +1 -1
- package/dist/light/protobuf.min.js +3 -3
- package/dist/light/protobuf.min.js.map +1 -1
- package/dist/minimal/protobuf.js +2 -2
- package/dist/minimal/protobuf.min.js +3 -3
- package/dist/minimal/protobuf.min.js.map +1 -1
- package/dist/protobuf.js +11 -7
- package/dist/protobuf.js.map +1 -1
- package/dist/protobuf.min.js +3 -3
- package/dist/protobuf.min.js.map +1 -1
- package/package.json +4 -4
- package/src/util.js +3 -0
- package/CHANGELOG.md +0 -1019
- package/cli/node_modules/balanced-match/.npmignore +0 -5
- package/cli/node_modules/deep-is/.npmignore +0 -1
- package/cli/node_modules/deep-is/.travis.yml +0 -6
- package/cli/node_modules/deep-is/LICENSE +0 -22
- package/cli/node_modules/deep-is/README.markdown +0 -70
- package/cli/node_modules/deep-is/example/cmp.js +0 -11
- package/cli/node_modules/deep-is/index.js +0 -102
- package/cli/node_modules/deep-is/package.json +0 -61
- package/cli/node_modules/deep-is/test/NaN.js +0 -16
- package/cli/node_modules/deep-is/test/cmp.js +0 -23
- package/cli/node_modules/deep-is/test/neg-vs-pos-0.js +0 -15
- package/cli/node_modules/fast-levenshtein/LICENSE.md +0 -25
- package/cli/node_modules/fast-levenshtein/README.md +0 -104
- package/cli/node_modules/fast-levenshtein/levenshtein.js +0 -136
- package/cli/node_modules/fast-levenshtein/package.json +0 -39
- package/cli/node_modules/glob/changelog.md +0 -67
- package/cli/node_modules/levn/README.md +0 -196
- package/cli/node_modules/levn/lib/cast.js +0 -298
- package/cli/node_modules/levn/lib/coerce.js +0 -285
- package/cli/node_modules/levn/lib/index.js +0 -22
- package/cli/node_modules/levn/lib/parse-string.js +0 -113
- package/cli/node_modules/levn/lib/parse.js +0 -102
- package/cli/node_modules/levn/package.json +0 -47
- package/cli/node_modules/optionator/CHANGELOG.md +0 -56
- package/cli/node_modules/optionator/LICENSE +0 -22
- package/cli/node_modules/optionator/README.md +0 -238
- package/cli/node_modules/optionator/lib/help.js +0 -260
- package/cli/node_modules/optionator/lib/index.js +0 -465
- package/cli/node_modules/optionator/lib/util.js +0 -54
- package/cli/node_modules/optionator/package.json +0 -44
- package/cli/node_modules/prelude-ls/CHANGELOG.md +0 -99
- package/cli/node_modules/prelude-ls/README.md +0 -15
- package/cli/node_modules/prelude-ls/lib/Func.js +0 -65
- package/cli/node_modules/prelude-ls/lib/List.js +0 -686
- package/cli/node_modules/prelude-ls/lib/Num.js +0 -130
- package/cli/node_modules/prelude-ls/lib/Obj.js +0 -154
- package/cli/node_modules/prelude-ls/lib/Str.js +0 -92
- package/cli/node_modules/prelude-ls/lib/index.js +0 -178
- package/cli/node_modules/prelude-ls/package.json +0 -52
- package/cli/node_modules/type-check/README.md +0 -210
- package/cli/node_modules/type-check/lib/check.js +0 -126
- package/cli/node_modules/type-check/lib/index.js +0 -16
- package/cli/node_modules/type-check/lib/parse-type.js +0 -196
- package/cli/node_modules/type-check/package.json +0 -40
- package/cli/node_modules/word-wrap/README.md +0 -182
- package/cli/node_modules/word-wrap/index.d.ts +0 -50
- package/cli/node_modules/word-wrap/index.js +0 -46
- package/cli/node_modules/word-wrap/package.json +0 -77
- /package/cli/node_modules/{acorn → espree/node_modules/acorn}/dist/acorn.js.map +0 -0
- /package/cli/node_modules/{acorn → espree/node_modules/acorn}/dist/acorn.mjs.map +0 -0
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
// This file was generated. Do not modify manually!
|
|
2
|
+
var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 154, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 19306, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 262, 6, 10, 9, 357, 0, 62, 13, 1495, 6, 110, 6, 6, 9, 4759, 9, 787719, 239];
|
|
3
|
+
|
|
4
|
+
// This file was generated. Do not modify manually!
|
|
5
|
+
var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 85, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 190, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1070, 4050, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 46, 2, 18, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 482, 44, 11, 6, 17, 0, 322, 29, 19, 43, 1269, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4152, 8, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938];
|
|
6
|
+
|
|
7
|
+
// This file was generated. Do not modify manually!
|
|
8
|
+
var nonASCIIidentifierChars = "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0898-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1ace\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f";
|
|
9
|
+
|
|
10
|
+
// This file was generated. Do not modify manually!
|
|
11
|
+
var nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088e\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7ca\ua7d0\ua7d1\ua7d3\ua7d5-\ua7d9\ua7f2-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc";
|
|
12
|
+
|
|
13
|
+
// These are a run-length and offset encoded representation of the
|
|
14
|
+
|
|
1
15
|
// Reserved word lists for various dialects of the language
|
|
2
16
|
|
|
3
17
|
var reservedWords = {
|
|
@@ -12,7 +26,7 @@ var reservedWords = {
|
|
|
12
26
|
|
|
13
27
|
var ecma5AndLessKeywords = "break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this";
|
|
14
28
|
|
|
15
|
-
var keywords = {
|
|
29
|
+
var keywords$1 = {
|
|
16
30
|
5: ecma5AndLessKeywords,
|
|
17
31
|
"5module": ecma5AndLessKeywords + " export import",
|
|
18
32
|
6: ecma5AndLessKeywords + " const class extends export import super"
|
|
@@ -22,31 +36,9 @@ var keywordRelationalOperator = /^in(stanceof)?$/;
|
|
|
22
36
|
|
|
23
37
|
// ## Character categories
|
|
24
38
|
|
|
25
|
-
// Big ugly regular expressions that match characters in the
|
|
26
|
-
// whitespace, identifier, and identifier-start categories. These
|
|
27
|
-
// are only applied when a character is found to actually have a
|
|
28
|
-
// code point above 128.
|
|
29
|
-
// Generated by `bin/generate-identifier-regex.js`.
|
|
30
|
-
var nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u08a0-\u08b4\u08b6-\u08c7\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\u9ffc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7bf\ua7c2-\ua7ca\ua7f5-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc";
|
|
31
|
-
var nonASCIIidentifierChars = "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08d3-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf\u1ac0\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1df9\u1dfb-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f";
|
|
32
|
-
|
|
33
39
|
var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
|
|
34
40
|
var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
|
|
35
41
|
|
|
36
|
-
nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
|
|
37
|
-
|
|
38
|
-
// These are a run-length and offset encoded representation of the
|
|
39
|
-
// >0xffff code points that are a valid part of identifiers. The
|
|
40
|
-
// offset starts at 0x10000, and each pair of numbers represents an
|
|
41
|
-
// offset to the next range, and then a size of the range. They were
|
|
42
|
-
// generated by bin/generate-identifier-regex.js
|
|
43
|
-
|
|
44
|
-
// eslint-disable-next-line comma-spacing
|
|
45
|
-
var astralIdentifierStartCodes = [0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,107,20,28,22,13,52,76,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,230,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,35,56,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8952,286,50,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,2357,44,11,6,17,0,370,43,1301,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42717,35,4148,12,221,3,5761,15,7472,3104,541,1507,4938];
|
|
46
|
-
|
|
47
|
-
// eslint-disable-next-line comma-spacing
|
|
48
|
-
var astralIdentifierCodes = [509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,176,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,135,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,419,13,1495,6,110,6,6,9,4759,9,787719,239];
|
|
49
|
-
|
|
50
42
|
// This has a complexity linear to the value of the code. The
|
|
51
43
|
// assumption is that looking up astral identifier characters is
|
|
52
44
|
// rare.
|
|
@@ -131,21 +123,22 @@ var beforeExpr = {beforeExpr: true}, startsExpr = {startsExpr: true};
|
|
|
131
123
|
|
|
132
124
|
// Map keyword names to token types.
|
|
133
125
|
|
|
134
|
-
var keywords
|
|
126
|
+
var keywords = {};
|
|
135
127
|
|
|
136
128
|
// Succinct definitions of keyword token types
|
|
137
129
|
function kw(name, options) {
|
|
138
130
|
if ( options === void 0 ) options = {};
|
|
139
131
|
|
|
140
132
|
options.keyword = name;
|
|
141
|
-
return keywords
|
|
133
|
+
return keywords[name] = new TokenType(name, options)
|
|
142
134
|
}
|
|
143
135
|
|
|
144
|
-
var types = {
|
|
136
|
+
var types$1 = {
|
|
145
137
|
num: new TokenType("num", startsExpr),
|
|
146
138
|
regexp: new TokenType("regexp", startsExpr),
|
|
147
139
|
string: new TokenType("string", startsExpr),
|
|
148
140
|
name: new TokenType("name", startsExpr),
|
|
141
|
+
privateId: new TokenType("privateId", startsExpr),
|
|
149
142
|
eof: new TokenType("eof"),
|
|
150
143
|
|
|
151
144
|
// Punctuation token types.
|
|
@@ -245,8 +238,19 @@ var types = {
|
|
|
245
238
|
var lineBreak = /\r\n?|\n|\u2028|\u2029/;
|
|
246
239
|
var lineBreakG = new RegExp(lineBreak.source, "g");
|
|
247
240
|
|
|
248
|
-
function isNewLine(code
|
|
249
|
-
return code === 10 || code === 13 ||
|
|
241
|
+
function isNewLine(code) {
|
|
242
|
+
return code === 10 || code === 13 || code === 0x2028 || code === 0x2029
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
function nextLineBreak(code, from, end) {
|
|
246
|
+
if ( end === void 0 ) end = code.length;
|
|
247
|
+
|
|
248
|
+
for (var i = from; i < end; i++) {
|
|
249
|
+
var next = code.charCodeAt(i);
|
|
250
|
+
if (isNewLine(next))
|
|
251
|
+
{ return i < end - 1 && next === 13 && code.charCodeAt(i + 1) === 10 ? i + 2 : i + 1 }
|
|
252
|
+
}
|
|
253
|
+
return -1
|
|
250
254
|
}
|
|
251
255
|
|
|
252
256
|
var nonASCIIwhitespace = /[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/;
|
|
@@ -257,11 +261,9 @@ var ref = Object.prototype;
|
|
|
257
261
|
var hasOwnProperty = ref.hasOwnProperty;
|
|
258
262
|
var toString = ref.toString;
|
|
259
263
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
return hasOwnProperty.call(obj, propName)
|
|
264
|
-
}
|
|
264
|
+
var hasOwn = Object.hasOwn || (function (obj, propName) { return (
|
|
265
|
+
hasOwnProperty.call(obj, propName)
|
|
266
|
+
); });
|
|
265
267
|
|
|
266
268
|
var isArray = Array.isArray || (function (obj) { return (
|
|
267
269
|
toString.call(obj) === "[object Array]"
|
|
@@ -271,6 +273,15 @@ function wordsRegexp(words) {
|
|
|
271
273
|
return new RegExp("^(?:" + words.replace(/ /g, "|") + ")$")
|
|
272
274
|
}
|
|
273
275
|
|
|
276
|
+
function codePointToString(code) {
|
|
277
|
+
// UTF-16 Decoding
|
|
278
|
+
if (code <= 0xFFFF) { return String.fromCharCode(code) }
|
|
279
|
+
code -= 0x10000;
|
|
280
|
+
return String.fromCharCode((code >> 10) + 0xD800, (code & 1023) + 0xDC00)
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
var loneSurrogate = /(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/;
|
|
284
|
+
|
|
274
285
|
// These are used when `options.locations` is on, for the
|
|
275
286
|
// `startLoc` and `endLoc` properties.
|
|
276
287
|
|
|
@@ -297,27 +308,24 @@ var SourceLocation = function SourceLocation(p, start, end) {
|
|
|
297
308
|
|
|
298
309
|
function getLineInfo(input, offset) {
|
|
299
310
|
for (var line = 1, cur = 0;;) {
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
cur = match.index + match[0].length;
|
|
305
|
-
} else {
|
|
306
|
-
return new Position(line, offset - cur)
|
|
307
|
-
}
|
|
311
|
+
var nextBreak = nextLineBreak(input, cur, offset);
|
|
312
|
+
if (nextBreak < 0) { return new Position(line, offset - cur) }
|
|
313
|
+
++line;
|
|
314
|
+
cur = nextBreak;
|
|
308
315
|
}
|
|
309
316
|
}
|
|
310
317
|
|
|
311
|
-
// A second
|
|
312
|
-
//
|
|
318
|
+
// A second argument must be given to configure the parser process.
|
|
319
|
+
// These options are recognized (only `ecmaVersion` is required):
|
|
313
320
|
|
|
314
321
|
var defaultOptions = {
|
|
315
322
|
// `ecmaVersion` indicates the ECMAScript version to parse. Must be
|
|
316
|
-
// either 3, 5, 6 (2015), 7 (2016), 8 (2017), 9 (2018),
|
|
317
|
-
// (2019)
|
|
318
|
-
//
|
|
319
|
-
//
|
|
320
|
-
|
|
323
|
+
// either 3, 5, 6 (or 2015), 7 (2016), 8 (2017), 9 (2018), 10
|
|
324
|
+
// (2019), 11 (2020), 12 (2021), 13 (2022), 14 (2023), or `"latest"`
|
|
325
|
+
// (the latest version the library supports). This influences
|
|
326
|
+
// support for strict mode, the set of reserved words, and support
|
|
327
|
+
// for new syntax features.
|
|
328
|
+
ecmaVersion: null,
|
|
321
329
|
// `sourceType` indicates the mode the code should be parsed in.
|
|
322
330
|
// Can be either `"script"` or `"module"`. This influences global
|
|
323
331
|
// strict mode and parsing of `import` and `export` declarations.
|
|
@@ -340,13 +348,19 @@ var defaultOptions = {
|
|
|
340
348
|
// error.
|
|
341
349
|
allowReturnOutsideFunction: false,
|
|
342
350
|
// When enabled, import/export statements are not constrained to
|
|
343
|
-
// appearing at the top of the program.
|
|
351
|
+
// appearing at the top of the program, and an import.meta expression
|
|
352
|
+
// in a script isn't considered an error.
|
|
344
353
|
allowImportExportEverywhere: false,
|
|
354
|
+
// By default, await identifiers are allowed to appear at the top-level scope only if ecmaVersion >= 2022.
|
|
345
355
|
// When enabled, await identifiers are allowed to appear at the top-level scope,
|
|
346
356
|
// but they are still not allowed in non-async functions.
|
|
347
|
-
allowAwaitOutsideFunction:
|
|
348
|
-
// When enabled,
|
|
349
|
-
//
|
|
357
|
+
allowAwaitOutsideFunction: null,
|
|
358
|
+
// When enabled, super identifiers are not constrained to
|
|
359
|
+
// appearing in methods and do not raise an error when they appear elsewhere.
|
|
360
|
+
allowSuperOutsideMethod: null,
|
|
361
|
+
// When enabled, hashbang directive in the beginning of file is
|
|
362
|
+
// allowed and treated as a line comment. Enabled by default when
|
|
363
|
+
// `ecmaVersion` >= 2023.
|
|
350
364
|
allowHashBang: false,
|
|
351
365
|
// When `locations` is on, `loc` properties holding objects with
|
|
352
366
|
// `start` and `end` properties in `{line, column}` form (with
|
|
@@ -398,18 +412,32 @@ var defaultOptions = {
|
|
|
398
412
|
|
|
399
413
|
// Interpret and default an options object
|
|
400
414
|
|
|
415
|
+
var warnedAboutEcmaVersion = false;
|
|
416
|
+
|
|
401
417
|
function getOptions(opts) {
|
|
402
418
|
var options = {};
|
|
403
419
|
|
|
404
420
|
for (var opt in defaultOptions)
|
|
405
|
-
{ options[opt] = opts &&
|
|
406
|
-
|
|
407
|
-
if (options.ecmaVersion
|
|
408
|
-
|
|
421
|
+
{ options[opt] = opts && hasOwn(opts, opt) ? opts[opt] : defaultOptions[opt]; }
|
|
422
|
+
|
|
423
|
+
if (options.ecmaVersion === "latest") {
|
|
424
|
+
options.ecmaVersion = 1e8;
|
|
425
|
+
} else if (options.ecmaVersion == null) {
|
|
426
|
+
if (!warnedAboutEcmaVersion && typeof console === "object" && console.warn) {
|
|
427
|
+
warnedAboutEcmaVersion = true;
|
|
428
|
+
console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.");
|
|
429
|
+
}
|
|
430
|
+
options.ecmaVersion = 11;
|
|
431
|
+
} else if (options.ecmaVersion >= 2015) {
|
|
432
|
+
options.ecmaVersion -= 2009;
|
|
433
|
+
}
|
|
409
434
|
|
|
410
435
|
if (options.allowReserved == null)
|
|
411
436
|
{ options.allowReserved = options.ecmaVersion < 5; }
|
|
412
437
|
|
|
438
|
+
if (opts.allowHashBang == null)
|
|
439
|
+
{ options.allowHashBang = options.ecmaVersion >= 14; }
|
|
440
|
+
|
|
413
441
|
if (isArray(options.onToken)) {
|
|
414
442
|
var tokens = options.onToken;
|
|
415
443
|
options.onToken = function (token) { return tokens.push(token); };
|
|
@@ -440,19 +468,20 @@ function pushComment(options, array) {
|
|
|
440
468
|
var
|
|
441
469
|
SCOPE_TOP = 1,
|
|
442
470
|
SCOPE_FUNCTION = 2,
|
|
443
|
-
SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION,
|
|
444
471
|
SCOPE_ASYNC = 4,
|
|
445
472
|
SCOPE_GENERATOR = 8,
|
|
446
473
|
SCOPE_ARROW = 16,
|
|
447
474
|
SCOPE_SIMPLE_CATCH = 32,
|
|
448
475
|
SCOPE_SUPER = 64,
|
|
449
|
-
SCOPE_DIRECT_SUPER = 128
|
|
476
|
+
SCOPE_DIRECT_SUPER = 128,
|
|
477
|
+
SCOPE_CLASS_STATIC_BLOCK = 256,
|
|
478
|
+
SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION | SCOPE_CLASS_STATIC_BLOCK;
|
|
450
479
|
|
|
451
480
|
function functionFlags(async, generator) {
|
|
452
481
|
return SCOPE_FUNCTION | (async ? SCOPE_ASYNC : 0) | (generator ? SCOPE_GENERATOR : 0)
|
|
453
482
|
}
|
|
454
483
|
|
|
455
|
-
// Used in checkLVal and declareName to determine the type of a binding
|
|
484
|
+
// Used in checkLVal* and declareName to determine the type of a binding
|
|
456
485
|
var
|
|
457
486
|
BIND_NONE = 0, // Not a binding
|
|
458
487
|
BIND_VAR = 1, // Var-style binding
|
|
@@ -464,11 +493,10 @@ var
|
|
|
464
493
|
var Parser = function Parser(options, input, startPos) {
|
|
465
494
|
this.options = options = getOptions(options);
|
|
466
495
|
this.sourceFile = options.sourceFile;
|
|
467
|
-
this.keywords = wordsRegexp(keywords[options.ecmaVersion >= 6 ? 6 : options.sourceType === "module" ? "5module" : 5]);
|
|
496
|
+
this.keywords = wordsRegexp(keywords$1[options.ecmaVersion >= 6 ? 6 : options.sourceType === "module" ? "5module" : 5]);
|
|
468
497
|
var reserved = "";
|
|
469
498
|
if (options.allowReserved !== true) {
|
|
470
|
-
|
|
471
|
-
{ if (reserved = reservedWords[v]) { break } }
|
|
499
|
+
reserved = reservedWords[options.ecmaVersion >= 6 ? 6 : options.ecmaVersion === 5 ? 5 : 3];
|
|
472
500
|
if (options.sourceType === "module") { reserved += " await"; }
|
|
473
501
|
}
|
|
474
502
|
this.reservedWords = wordsRegexp(reserved);
|
|
@@ -496,7 +524,7 @@ var Parser = function Parser(options, input, startPos) {
|
|
|
496
524
|
|
|
497
525
|
// Properties of the current token:
|
|
498
526
|
// Its type
|
|
499
|
-
this.type = types.eof;
|
|
527
|
+
this.type = types$1.eof;
|
|
500
528
|
// For tokens that include more information than their type, the value
|
|
501
529
|
this.value = null;
|
|
502
530
|
// Its start and end offset
|
|
@@ -521,13 +549,14 @@ var Parser = function Parser(options, input, startPos) {
|
|
|
521
549
|
|
|
522
550
|
// Used to signify the start of a potential arrow function
|
|
523
551
|
this.potentialArrowAt = -1;
|
|
552
|
+
this.potentialArrowInForAwait = false;
|
|
524
553
|
|
|
525
554
|
// Positions to delayed-check that yield/await does not exist in default parameters.
|
|
526
555
|
this.yieldPos = this.awaitPos = this.awaitIdentPos = 0;
|
|
527
556
|
// Labels in scope.
|
|
528
557
|
this.labels = [];
|
|
529
558
|
// Thus-far undefined exports.
|
|
530
|
-
this.undefinedExports =
|
|
559
|
+
this.undefinedExports = Object.create(null);
|
|
531
560
|
|
|
532
561
|
// If enabled, skip leading hashbang line.
|
|
533
562
|
if (this.pos === 0 && options.allowHashBang && this.input.slice(0, 2) === "#!")
|
|
@@ -539,9 +568,14 @@ var Parser = function Parser(options, input, startPos) {
|
|
|
539
568
|
|
|
540
569
|
// For RegExp validation
|
|
541
570
|
this.regexpState = null;
|
|
571
|
+
|
|
572
|
+
// The stack of private names.
|
|
573
|
+
// Each element has two properties: 'declared' and 'used'.
|
|
574
|
+
// When it exited from the outermost class definition, all used private names must be declared.
|
|
575
|
+
this.privateNameStack = [];
|
|
542
576
|
};
|
|
543
577
|
|
|
544
|
-
var prototypeAccessors = { inFunction: { configurable: true },inGenerator: { configurable: true },inAsync: { configurable: true },allowSuper: { configurable: true },allowDirectSuper: { configurable: true },treatFunctionsAsVar: { configurable: true } };
|
|
578
|
+
var prototypeAccessors = { inFunction: { configurable: true },inGenerator: { configurable: true },inAsync: { configurable: true },canAwait: { configurable: true },allowSuper: { configurable: true },allowDirectSuper: { configurable: true },treatFunctionsAsVar: { configurable: true },allowNewDotTarget: { configurable: true },inClassStaticBlock: { configurable: true } };
|
|
545
579
|
|
|
546
580
|
Parser.prototype.parse = function parse () {
|
|
547
581
|
var node = this.options.program || this.startNode();
|
|
@@ -550,14 +584,41 @@ Parser.prototype.parse = function parse () {
|
|
|
550
584
|
};
|
|
551
585
|
|
|
552
586
|
prototypeAccessors.inFunction.get = function () { return (this.currentVarScope().flags & SCOPE_FUNCTION) > 0 };
|
|
553
|
-
|
|
554
|
-
prototypeAccessors.
|
|
555
|
-
|
|
587
|
+
|
|
588
|
+
prototypeAccessors.inGenerator.get = function () { return (this.currentVarScope().flags & SCOPE_GENERATOR) > 0 && !this.currentVarScope().inClassFieldInit };
|
|
589
|
+
|
|
590
|
+
prototypeAccessors.inAsync.get = function () { return (this.currentVarScope().flags & SCOPE_ASYNC) > 0 && !this.currentVarScope().inClassFieldInit };
|
|
591
|
+
|
|
592
|
+
prototypeAccessors.canAwait.get = function () {
|
|
593
|
+
for (var i = this.scopeStack.length - 1; i >= 0; i--) {
|
|
594
|
+
var scope = this.scopeStack[i];
|
|
595
|
+
if (scope.inClassFieldInit || scope.flags & SCOPE_CLASS_STATIC_BLOCK) { return false }
|
|
596
|
+
if (scope.flags & SCOPE_FUNCTION) { return (scope.flags & SCOPE_ASYNC) > 0 }
|
|
597
|
+
}
|
|
598
|
+
return (this.inModule && this.options.ecmaVersion >= 13) || this.options.allowAwaitOutsideFunction
|
|
599
|
+
};
|
|
600
|
+
|
|
601
|
+
prototypeAccessors.allowSuper.get = function () {
|
|
602
|
+
var ref = this.currentThisScope();
|
|
603
|
+
var flags = ref.flags;
|
|
604
|
+
var inClassFieldInit = ref.inClassFieldInit;
|
|
605
|
+
return (flags & SCOPE_SUPER) > 0 || inClassFieldInit || this.options.allowSuperOutsideMethod
|
|
606
|
+
};
|
|
607
|
+
|
|
556
608
|
prototypeAccessors.allowDirectSuper.get = function () { return (this.currentThisScope().flags & SCOPE_DIRECT_SUPER) > 0 };
|
|
609
|
+
|
|
557
610
|
prototypeAccessors.treatFunctionsAsVar.get = function () { return this.treatFunctionsAsVarInScope(this.currentScope()) };
|
|
558
611
|
|
|
559
|
-
|
|
560
|
-
|
|
612
|
+
prototypeAccessors.allowNewDotTarget.get = function () {
|
|
613
|
+
var ref = this.currentThisScope();
|
|
614
|
+
var flags = ref.flags;
|
|
615
|
+
var inClassFieldInit = ref.inClassFieldInit;
|
|
616
|
+
return (flags & (SCOPE_FUNCTION | SCOPE_CLASS_STATIC_BLOCK)) > 0 || inClassFieldInit
|
|
617
|
+
};
|
|
618
|
+
|
|
619
|
+
prototypeAccessors.inClassStaticBlock.get = function () {
|
|
620
|
+
return (this.currentVarScope().flags & SCOPE_CLASS_STATIC_BLOCK) > 0
|
|
621
|
+
};
|
|
561
622
|
|
|
562
623
|
Parser.extend = function extend () {
|
|
563
624
|
var plugins = [], len = arguments.length;
|
|
@@ -584,12 +645,13 @@ Parser.tokenizer = function tokenizer (input, options) {
|
|
|
584
645
|
|
|
585
646
|
Object.defineProperties( Parser.prototype, prototypeAccessors );
|
|
586
647
|
|
|
587
|
-
var pp = Parser.prototype;
|
|
648
|
+
var pp$9 = Parser.prototype;
|
|
588
649
|
|
|
589
650
|
// ## Parser utilities
|
|
590
651
|
|
|
591
652
|
var literal = /^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;
|
|
592
|
-
pp.strictDirective = function(start) {
|
|
653
|
+
pp$9.strictDirective = function(start) {
|
|
654
|
+
if (this.options.ecmaVersion < 5) { return false }
|
|
593
655
|
for (;;) {
|
|
594
656
|
// Try to find string literal.
|
|
595
657
|
skipWhiteSpace.lastIndex = start;
|
|
@@ -617,7 +679,7 @@ pp.strictDirective = function(start) {
|
|
|
617
679
|
// Predicate that tests whether the next token is of the given
|
|
618
680
|
// type, and if yes, consumes it as a side effect.
|
|
619
681
|
|
|
620
|
-
pp.eat = function(type) {
|
|
682
|
+
pp$9.eat = function(type) {
|
|
621
683
|
if (this.type === type) {
|
|
622
684
|
this.next();
|
|
623
685
|
return true
|
|
@@ -628,13 +690,13 @@ pp.eat = function(type) {
|
|
|
628
690
|
|
|
629
691
|
// Tests whether parsed token is a contextual keyword.
|
|
630
692
|
|
|
631
|
-
pp.isContextual = function(name) {
|
|
632
|
-
return this.type === types.name && this.value === name && !this.containsEsc
|
|
693
|
+
pp$9.isContextual = function(name) {
|
|
694
|
+
return this.type === types$1.name && this.value === name && !this.containsEsc
|
|
633
695
|
};
|
|
634
696
|
|
|
635
697
|
// Consumes contextual keyword if possible.
|
|
636
698
|
|
|
637
|
-
pp.eatContextual = function(name) {
|
|
699
|
+
pp$9.eatContextual = function(name) {
|
|
638
700
|
if (!this.isContextual(name)) { return false }
|
|
639
701
|
this.next();
|
|
640
702
|
return true
|
|
@@ -642,19 +704,19 @@ pp.eatContextual = function(name) {
|
|
|
642
704
|
|
|
643
705
|
// Asserts that following token is given contextual keyword.
|
|
644
706
|
|
|
645
|
-
pp.expectContextual = function(name) {
|
|
707
|
+
pp$9.expectContextual = function(name) {
|
|
646
708
|
if (!this.eatContextual(name)) { this.unexpected(); }
|
|
647
709
|
};
|
|
648
710
|
|
|
649
711
|
// Test whether a semicolon can be inserted at the current position.
|
|
650
712
|
|
|
651
|
-
pp.canInsertSemicolon = function() {
|
|
652
|
-
return this.type === types.eof ||
|
|
653
|
-
this.type === types.braceR ||
|
|
713
|
+
pp$9.canInsertSemicolon = function() {
|
|
714
|
+
return this.type === types$1.eof ||
|
|
715
|
+
this.type === types$1.braceR ||
|
|
654
716
|
lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
|
655
717
|
};
|
|
656
718
|
|
|
657
|
-
pp.insertSemicolon = function() {
|
|
719
|
+
pp$9.insertSemicolon = function() {
|
|
658
720
|
if (this.canInsertSemicolon()) {
|
|
659
721
|
if (this.options.onInsertedSemicolon)
|
|
660
722
|
{ this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc); }
|
|
@@ -665,11 +727,11 @@ pp.insertSemicolon = function() {
|
|
|
665
727
|
// Consume a semicolon, or, failing that, see if we are allowed to
|
|
666
728
|
// pretend that there is a semicolon at this position.
|
|
667
729
|
|
|
668
|
-
pp.semicolon = function() {
|
|
669
|
-
if (!this.eat(types.semi) && !this.insertSemicolon()) { this.unexpected(); }
|
|
730
|
+
pp$9.semicolon = function() {
|
|
731
|
+
if (!this.eat(types$1.semi) && !this.insertSemicolon()) { this.unexpected(); }
|
|
670
732
|
};
|
|
671
733
|
|
|
672
|
-
pp.afterTrailingComma = function(tokType, notNext) {
|
|
734
|
+
pp$9.afterTrailingComma = function(tokType, notNext) {
|
|
673
735
|
if (this.type === tokType) {
|
|
674
736
|
if (this.options.onTrailingComma)
|
|
675
737
|
{ this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc); }
|
|
@@ -682,34 +744,34 @@ pp.afterTrailingComma = function(tokType, notNext) {
|
|
|
682
744
|
// Expect a token of a given type. If found, consume it, otherwise,
|
|
683
745
|
// raise an unexpected token error.
|
|
684
746
|
|
|
685
|
-
pp.expect = function(type) {
|
|
747
|
+
pp$9.expect = function(type) {
|
|
686
748
|
this.eat(type) || this.unexpected();
|
|
687
749
|
};
|
|
688
750
|
|
|
689
751
|
// Raise an unexpected token error.
|
|
690
752
|
|
|
691
|
-
pp.unexpected = function(pos) {
|
|
753
|
+
pp$9.unexpected = function(pos) {
|
|
692
754
|
this.raise(pos != null ? pos : this.start, "Unexpected token");
|
|
693
755
|
};
|
|
694
756
|
|
|
695
|
-
function DestructuringErrors() {
|
|
757
|
+
var DestructuringErrors = function DestructuringErrors() {
|
|
696
758
|
this.shorthandAssign =
|
|
697
759
|
this.trailingComma =
|
|
698
760
|
this.parenthesizedAssign =
|
|
699
761
|
this.parenthesizedBind =
|
|
700
762
|
this.doubleProto =
|
|
701
763
|
-1;
|
|
702
|
-
}
|
|
764
|
+
};
|
|
703
765
|
|
|
704
|
-
pp.checkPatternErrors = function(refDestructuringErrors, isAssign) {
|
|
766
|
+
pp$9.checkPatternErrors = function(refDestructuringErrors, isAssign) {
|
|
705
767
|
if (!refDestructuringErrors) { return }
|
|
706
768
|
if (refDestructuringErrors.trailingComma > -1)
|
|
707
769
|
{ this.raiseRecoverable(refDestructuringErrors.trailingComma, "Comma is not permitted after the rest element"); }
|
|
708
770
|
var parens = isAssign ? refDestructuringErrors.parenthesizedAssign : refDestructuringErrors.parenthesizedBind;
|
|
709
|
-
if (parens > -1) { this.raiseRecoverable(parens, "Parenthesized pattern"); }
|
|
771
|
+
if (parens > -1) { this.raiseRecoverable(parens, isAssign ? "Assigning to rvalue" : "Parenthesized pattern"); }
|
|
710
772
|
};
|
|
711
773
|
|
|
712
|
-
pp.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
|
774
|
+
pp$9.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
|
713
775
|
if (!refDestructuringErrors) { return false }
|
|
714
776
|
var shorthandAssign = refDestructuringErrors.shorthandAssign;
|
|
715
777
|
var doubleProto = refDestructuringErrors.doubleProto;
|
|
@@ -720,20 +782,20 @@ pp.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
|
|
720
782
|
{ this.raiseRecoverable(doubleProto, "Redefinition of __proto__ property"); }
|
|
721
783
|
};
|
|
722
784
|
|
|
723
|
-
pp.checkYieldAwaitInDefaultParams = function() {
|
|
785
|
+
pp$9.checkYieldAwaitInDefaultParams = function() {
|
|
724
786
|
if (this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos))
|
|
725
787
|
{ this.raise(this.yieldPos, "Yield expression cannot be a default value"); }
|
|
726
788
|
if (this.awaitPos)
|
|
727
789
|
{ this.raise(this.awaitPos, "Await expression cannot be a default value"); }
|
|
728
790
|
};
|
|
729
791
|
|
|
730
|
-
pp.isSimpleAssignTarget = function(expr) {
|
|
792
|
+
pp$9.isSimpleAssignTarget = function(expr) {
|
|
731
793
|
if (expr.type === "ParenthesizedExpression")
|
|
732
794
|
{ return this.isSimpleAssignTarget(expr.expression) }
|
|
733
795
|
return expr.type === "Identifier" || expr.type === "MemberExpression"
|
|
734
796
|
};
|
|
735
797
|
|
|
736
|
-
var pp$
|
|
798
|
+
var pp$8 = Parser.prototype;
|
|
737
799
|
|
|
738
800
|
// ### Statement parsing
|
|
739
801
|
|
|
@@ -742,10 +804,10 @@ var pp$1 = Parser.prototype;
|
|
|
742
804
|
// `program` argument. If present, the statements will be appended
|
|
743
805
|
// to its body instead of creating a new node.
|
|
744
806
|
|
|
745
|
-
pp$
|
|
746
|
-
var exports =
|
|
807
|
+
pp$8.parseTopLevel = function(node) {
|
|
808
|
+
var exports = Object.create(null);
|
|
747
809
|
if (!node.body) { node.body = []; }
|
|
748
|
-
while (this.type !== types.eof) {
|
|
810
|
+
while (this.type !== types$1.eof) {
|
|
749
811
|
var stmt = this.parseStatement(null, true, exports);
|
|
750
812
|
node.body.push(stmt);
|
|
751
813
|
}
|
|
@@ -764,7 +826,7 @@ pp$1.parseTopLevel = function(node) {
|
|
|
764
826
|
|
|
765
827
|
var loopLabel = {kind: "loop"}, switchLabel = {kind: "switch"};
|
|
766
828
|
|
|
767
|
-
pp$
|
|
829
|
+
pp$8.isLet = function(context) {
|
|
768
830
|
if (this.options.ecmaVersion < 6 || !this.isContextual("let")) { return false }
|
|
769
831
|
skipWhiteSpace.lastIndex = this.pos;
|
|
770
832
|
var skip = skipWhiteSpace.exec(this.input);
|
|
@@ -773,13 +835,14 @@ pp$1.isLet = function(context) {
|
|
|
773
835
|
// Statement) is allowed here. If context is not empty then only a Statement
|
|
774
836
|
// is allowed. However, `let [` is an explicit negative lookahead for
|
|
775
837
|
// ExpressionStatement, so special-case it first.
|
|
776
|
-
if (nextCh === 91) { return true } // '['
|
|
838
|
+
if (nextCh === 91 || nextCh === 92 || nextCh > 0xd7ff && nextCh < 0xdc00) { return true } // '[', '/', astral
|
|
777
839
|
if (context) { return false }
|
|
778
840
|
|
|
779
841
|
if (nextCh === 123) { return true } // '{'
|
|
780
842
|
if (isIdentifierStart(nextCh, true)) {
|
|
781
843
|
var pos = next + 1;
|
|
782
|
-
while (isIdentifierChar(this.input.charCodeAt(pos), true)) { ++pos; }
|
|
844
|
+
while (isIdentifierChar(nextCh = this.input.charCodeAt(pos), true)) { ++pos; }
|
|
845
|
+
if (nextCh === 92 || nextCh > 0xd7ff && nextCh < 0xdc00) { return true }
|
|
783
846
|
var ident = this.input.slice(next, pos);
|
|
784
847
|
if (!keywordRelationalOperator.test(ident)) { return true }
|
|
785
848
|
}
|
|
@@ -789,16 +852,17 @@ pp$1.isLet = function(context) {
|
|
|
789
852
|
// check 'async [no LineTerminator here] function'
|
|
790
853
|
// - 'async /*foo*/ function' is OK.
|
|
791
854
|
// - 'async /*\n*/ function' is invalid.
|
|
792
|
-
pp$
|
|
855
|
+
pp$8.isAsyncFunction = function() {
|
|
793
856
|
if (this.options.ecmaVersion < 8 || !this.isContextual("async"))
|
|
794
857
|
{ return false }
|
|
795
858
|
|
|
796
859
|
skipWhiteSpace.lastIndex = this.pos;
|
|
797
860
|
var skip = skipWhiteSpace.exec(this.input);
|
|
798
|
-
var next = this.pos + skip[0].length;
|
|
861
|
+
var next = this.pos + skip[0].length, after;
|
|
799
862
|
return !lineBreak.test(this.input.slice(this.pos, next)) &&
|
|
800
863
|
this.input.slice(next, next + 8) === "function" &&
|
|
801
|
-
(next + 8 === this.input.length ||
|
|
864
|
+
(next + 8 === this.input.length ||
|
|
865
|
+
!(isIdentifierChar(after = this.input.charCodeAt(next + 8)) || after > 0xd7ff && after < 0xdc00))
|
|
802
866
|
};
|
|
803
867
|
|
|
804
868
|
// Parse a single statement.
|
|
@@ -808,11 +872,11 @@ pp$1.isAsyncFunction = function() {
|
|
|
808
872
|
// `if (foo) /blah/.exec(foo)`, where looking at the previous token
|
|
809
873
|
// does not help.
|
|
810
874
|
|
|
811
|
-
pp$
|
|
875
|
+
pp$8.parseStatement = function(context, topLevel, exports) {
|
|
812
876
|
var starttype = this.type, node = this.startNode(), kind;
|
|
813
877
|
|
|
814
878
|
if (this.isLet(context)) {
|
|
815
|
-
starttype = types._var;
|
|
879
|
+
starttype = types$1._var;
|
|
816
880
|
kind = "let";
|
|
817
881
|
}
|
|
818
882
|
|
|
@@ -821,35 +885,35 @@ pp$1.parseStatement = function(context, topLevel, exports) {
|
|
|
821
885
|
// complexity.
|
|
822
886
|
|
|
823
887
|
switch (starttype) {
|
|
824
|
-
case types._break: case types._continue: return this.parseBreakContinueStatement(node, starttype.keyword)
|
|
825
|
-
case types._debugger: return this.parseDebuggerStatement(node)
|
|
826
|
-
case types._do: return this.parseDoStatement(node)
|
|
827
|
-
case types._for: return this.parseForStatement(node)
|
|
828
|
-
case types._function:
|
|
888
|
+
case types$1._break: case types$1._continue: return this.parseBreakContinueStatement(node, starttype.keyword)
|
|
889
|
+
case types$1._debugger: return this.parseDebuggerStatement(node)
|
|
890
|
+
case types$1._do: return this.parseDoStatement(node)
|
|
891
|
+
case types$1._for: return this.parseForStatement(node)
|
|
892
|
+
case types$1._function:
|
|
829
893
|
// Function as sole body of either an if statement or a labeled statement
|
|
830
894
|
// works, but not when it is part of a labeled statement that is the sole
|
|
831
895
|
// body of an if statement.
|
|
832
896
|
if ((context && (this.strict || context !== "if" && context !== "label")) && this.options.ecmaVersion >= 6) { this.unexpected(); }
|
|
833
897
|
return this.parseFunctionStatement(node, false, !context)
|
|
834
|
-
case types._class:
|
|
898
|
+
case types$1._class:
|
|
835
899
|
if (context) { this.unexpected(); }
|
|
836
900
|
return this.parseClass(node, true)
|
|
837
|
-
case types._if: return this.parseIfStatement(node)
|
|
838
|
-
case types._return: return this.parseReturnStatement(node)
|
|
839
|
-
case types._switch: return this.parseSwitchStatement(node)
|
|
840
|
-
case types._throw: return this.parseThrowStatement(node)
|
|
841
|
-
case types._try: return this.parseTryStatement(node)
|
|
842
|
-
case types._const: case types._var:
|
|
901
|
+
case types$1._if: return this.parseIfStatement(node)
|
|
902
|
+
case types$1._return: return this.parseReturnStatement(node)
|
|
903
|
+
case types$1._switch: return this.parseSwitchStatement(node)
|
|
904
|
+
case types$1._throw: return this.parseThrowStatement(node)
|
|
905
|
+
case types$1._try: return this.parseTryStatement(node)
|
|
906
|
+
case types$1._const: case types$1._var:
|
|
843
907
|
kind = kind || this.value;
|
|
844
908
|
if (context && kind !== "var") { this.unexpected(); }
|
|
845
909
|
return this.parseVarStatement(node, kind)
|
|
846
|
-
case types._while: return this.parseWhileStatement(node)
|
|
847
|
-
case types._with: return this.parseWithStatement(node)
|
|
848
|
-
case types.braceL: return this.parseBlock(true, node)
|
|
849
|
-
case types.semi: return this.parseEmptyStatement(node)
|
|
850
|
-
case types._export:
|
|
851
|
-
case types._import:
|
|
852
|
-
if (this.options.ecmaVersion > 10 && starttype === types._import) {
|
|
910
|
+
case types$1._while: return this.parseWhileStatement(node)
|
|
911
|
+
case types$1._with: return this.parseWithStatement(node)
|
|
912
|
+
case types$1.braceL: return this.parseBlock(true, node)
|
|
913
|
+
case types$1.semi: return this.parseEmptyStatement(node)
|
|
914
|
+
case types$1._export:
|
|
915
|
+
case types$1._import:
|
|
916
|
+
if (this.options.ecmaVersion > 10 && starttype === types$1._import) {
|
|
853
917
|
skipWhiteSpace.lastIndex = this.pos;
|
|
854
918
|
var skip = skipWhiteSpace.exec(this.input);
|
|
855
919
|
var next = this.pos + skip[0].length, nextCh = this.input.charCodeAt(next);
|
|
@@ -863,7 +927,7 @@ pp$1.parseStatement = function(context, topLevel, exports) {
|
|
|
863
927
|
if (!this.inModule)
|
|
864
928
|
{ this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'"); }
|
|
865
929
|
}
|
|
866
|
-
return starttype === types._import ? this.parseImport(node) : this.parseExport(node, exports)
|
|
930
|
+
return starttype === types$1._import ? this.parseImport(node) : this.parseExport(node, exports)
|
|
867
931
|
|
|
868
932
|
// If the statement does not start with a statement keyword or a
|
|
869
933
|
// brace, it's an ExpressionStatement or LabeledStatement. We
|
|
@@ -878,17 +942,17 @@ pp$1.parseStatement = function(context, topLevel, exports) {
|
|
|
878
942
|
}
|
|
879
943
|
|
|
880
944
|
var maybeName = this.value, expr = this.parseExpression();
|
|
881
|
-
if (starttype === types.name && expr.type === "Identifier" && this.eat(types.colon))
|
|
945
|
+
if (starttype === types$1.name && expr.type === "Identifier" && this.eat(types$1.colon))
|
|
882
946
|
{ return this.parseLabeledStatement(node, maybeName, expr, context) }
|
|
883
947
|
else { return this.parseExpressionStatement(node, expr) }
|
|
884
948
|
}
|
|
885
949
|
};
|
|
886
950
|
|
|
887
|
-
pp$
|
|
951
|
+
pp$8.parseBreakContinueStatement = function(node, keyword) {
|
|
888
952
|
var isBreak = keyword === "break";
|
|
889
953
|
this.next();
|
|
890
|
-
if (this.eat(types.semi) || this.insertSemicolon()) { node.label = null; }
|
|
891
|
-
else if (this.type !== types.name) { this.unexpected(); }
|
|
954
|
+
if (this.eat(types$1.semi) || this.insertSemicolon()) { node.label = null; }
|
|
955
|
+
else if (this.type !== types$1.name) { this.unexpected(); }
|
|
892
956
|
else {
|
|
893
957
|
node.label = this.parseIdent();
|
|
894
958
|
this.semicolon();
|
|
@@ -908,21 +972,21 @@ pp$1.parseBreakContinueStatement = function(node, keyword) {
|
|
|
908
972
|
return this.finishNode(node, isBreak ? "BreakStatement" : "ContinueStatement")
|
|
909
973
|
};
|
|
910
974
|
|
|
911
|
-
pp$
|
|
975
|
+
pp$8.parseDebuggerStatement = function(node) {
|
|
912
976
|
this.next();
|
|
913
977
|
this.semicolon();
|
|
914
978
|
return this.finishNode(node, "DebuggerStatement")
|
|
915
979
|
};
|
|
916
980
|
|
|
917
|
-
pp$
|
|
981
|
+
pp$8.parseDoStatement = function(node) {
|
|
918
982
|
this.next();
|
|
919
983
|
this.labels.push(loopLabel);
|
|
920
984
|
node.body = this.parseStatement("do");
|
|
921
985
|
this.labels.pop();
|
|
922
|
-
this.expect(types._while);
|
|
986
|
+
this.expect(types$1._while);
|
|
923
987
|
node.test = this.parseParenExpression();
|
|
924
988
|
if (this.options.ecmaVersion >= 6)
|
|
925
|
-
{ this.eat(types.semi); }
|
|
989
|
+
{ this.eat(types$1.semi); }
|
|
926
990
|
else
|
|
927
991
|
{ this.semicolon(); }
|
|
928
992
|
return this.finishNode(node, "DoWhileStatement")
|
|
@@ -936,25 +1000,25 @@ pp$1.parseDoStatement = function(node) {
|
|
|
936
1000
|
// part (semicolon immediately after the opening parenthesis), it
|
|
937
1001
|
// is a regular `for` loop.
|
|
938
1002
|
|
|
939
|
-
pp$
|
|
1003
|
+
pp$8.parseForStatement = function(node) {
|
|
940
1004
|
this.next();
|
|
941
|
-
var awaitAt = (this.options.ecmaVersion >= 9 &&
|
|
1005
|
+
var awaitAt = (this.options.ecmaVersion >= 9 && this.canAwait && this.eatContextual("await")) ? this.lastTokStart : -1;
|
|
942
1006
|
this.labels.push(loopLabel);
|
|
943
1007
|
this.enterScope(0);
|
|
944
|
-
this.expect(types.parenL);
|
|
945
|
-
if (this.type === types.semi) {
|
|
1008
|
+
this.expect(types$1.parenL);
|
|
1009
|
+
if (this.type === types$1.semi) {
|
|
946
1010
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
947
1011
|
return this.parseFor(node, null)
|
|
948
1012
|
}
|
|
949
1013
|
var isLet = this.isLet();
|
|
950
|
-
if (this.type === types._var || this.type === types._const || isLet) {
|
|
1014
|
+
if (this.type === types$1._var || this.type === types$1._const || isLet) {
|
|
951
1015
|
var init$1 = this.startNode(), kind = isLet ? "let" : this.value;
|
|
952
1016
|
this.next();
|
|
953
1017
|
this.parseVar(init$1, true, kind);
|
|
954
1018
|
this.finishNode(init$1, "VariableDeclaration");
|
|
955
|
-
if ((this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) && init$1.declarations.length === 1) {
|
|
1019
|
+
if ((this.type === types$1._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) && init$1.declarations.length === 1) {
|
|
956
1020
|
if (this.options.ecmaVersion >= 9) {
|
|
957
|
-
if (this.type === types._in) {
|
|
1021
|
+
if (this.type === types$1._in) {
|
|
958
1022
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
959
1023
|
} else { node.await = awaitAt > -1; }
|
|
960
1024
|
}
|
|
@@ -963,16 +1027,18 @@ pp$1.parseForStatement = function(node) {
|
|
|
963
1027
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
964
1028
|
return this.parseFor(node, init$1)
|
|
965
1029
|
}
|
|
1030
|
+
var startsWithLet = this.isContextual("let"), isForOf = false;
|
|
966
1031
|
var refDestructuringErrors = new DestructuringErrors;
|
|
967
|
-
var init = this.parseExpression(true, refDestructuringErrors);
|
|
968
|
-
if (this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) {
|
|
1032
|
+
var init = this.parseExpression(awaitAt > -1 ? "await" : true, refDestructuringErrors);
|
|
1033
|
+
if (this.type === types$1._in || (isForOf = this.options.ecmaVersion >= 6 && this.isContextual("of"))) {
|
|
969
1034
|
if (this.options.ecmaVersion >= 9) {
|
|
970
|
-
if (this.type === types._in) {
|
|
1035
|
+
if (this.type === types$1._in) {
|
|
971
1036
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
972
1037
|
} else { node.await = awaitAt > -1; }
|
|
973
1038
|
}
|
|
1039
|
+
if (startsWithLet && isForOf) { this.raise(init.start, "The left-hand side of a for-of loop may not start with 'let'."); }
|
|
974
1040
|
this.toAssignable(init, false, refDestructuringErrors);
|
|
975
|
-
this.
|
|
1041
|
+
this.checkLValPattern(init);
|
|
976
1042
|
return this.parseForIn(node, init)
|
|
977
1043
|
} else {
|
|
978
1044
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
@@ -981,21 +1047,21 @@ pp$1.parseForStatement = function(node) {
|
|
|
981
1047
|
return this.parseFor(node, init)
|
|
982
1048
|
};
|
|
983
1049
|
|
|
984
|
-
pp$
|
|
1050
|
+
pp$8.parseFunctionStatement = function(node, isAsync, declarationPosition) {
|
|
985
1051
|
this.next();
|
|
986
1052
|
return this.parseFunction(node, FUNC_STATEMENT | (declarationPosition ? 0 : FUNC_HANGING_STATEMENT), false, isAsync)
|
|
987
1053
|
};
|
|
988
1054
|
|
|
989
|
-
pp$
|
|
1055
|
+
pp$8.parseIfStatement = function(node) {
|
|
990
1056
|
this.next();
|
|
991
1057
|
node.test = this.parseParenExpression();
|
|
992
1058
|
// allow function declarations in branches, but only in non-strict mode
|
|
993
1059
|
node.consequent = this.parseStatement("if");
|
|
994
|
-
node.alternate = this.eat(types._else) ? this.parseStatement("if") : null;
|
|
1060
|
+
node.alternate = this.eat(types$1._else) ? this.parseStatement("if") : null;
|
|
995
1061
|
return this.finishNode(node, "IfStatement")
|
|
996
1062
|
};
|
|
997
1063
|
|
|
998
|
-
pp$
|
|
1064
|
+
pp$8.parseReturnStatement = function(node) {
|
|
999
1065
|
if (!this.inFunction && !this.options.allowReturnOutsideFunction)
|
|
1000
1066
|
{ this.raise(this.start, "'return' outside of function"); }
|
|
1001
1067
|
this.next();
|
|
@@ -1004,16 +1070,16 @@ pp$1.parseReturnStatement = function(node) {
|
|
|
1004
1070
|
// optional arguments, we eagerly look for a semicolon or the
|
|
1005
1071
|
// possibility to insert one.
|
|
1006
1072
|
|
|
1007
|
-
if (this.eat(types.semi) || this.insertSemicolon()) { node.argument = null; }
|
|
1073
|
+
if (this.eat(types$1.semi) || this.insertSemicolon()) { node.argument = null; }
|
|
1008
1074
|
else { node.argument = this.parseExpression(); this.semicolon(); }
|
|
1009
1075
|
return this.finishNode(node, "ReturnStatement")
|
|
1010
1076
|
};
|
|
1011
1077
|
|
|
1012
|
-
pp$
|
|
1078
|
+
pp$8.parseSwitchStatement = function(node) {
|
|
1013
1079
|
this.next();
|
|
1014
1080
|
node.discriminant = this.parseParenExpression();
|
|
1015
1081
|
node.cases = [];
|
|
1016
|
-
this.expect(types.braceL);
|
|
1082
|
+
this.expect(types$1.braceL);
|
|
1017
1083
|
this.labels.push(switchLabel);
|
|
1018
1084
|
this.enterScope(0);
|
|
1019
1085
|
|
|
@@ -1022,9 +1088,9 @@ pp$1.parseSwitchStatement = function(node) {
|
|
|
1022
1088
|
// adding statements to.
|
|
1023
1089
|
|
|
1024
1090
|
var cur;
|
|
1025
|
-
for (var sawDefault = false; this.type !== types.braceR;) {
|
|
1026
|
-
if (this.type === types._case || this.type === types._default) {
|
|
1027
|
-
var isCase = this.type === types._case;
|
|
1091
|
+
for (var sawDefault = false; this.type !== types$1.braceR;) {
|
|
1092
|
+
if (this.type === types$1._case || this.type === types$1._default) {
|
|
1093
|
+
var isCase = this.type === types$1._case;
|
|
1028
1094
|
if (cur) { this.finishNode(cur, "SwitchCase"); }
|
|
1029
1095
|
node.cases.push(cur = this.startNode());
|
|
1030
1096
|
cur.consequent = [];
|
|
@@ -1036,7 +1102,7 @@ pp$1.parseSwitchStatement = function(node) {
|
|
|
1036
1102
|
sawDefault = true;
|
|
1037
1103
|
cur.test = null;
|
|
1038
1104
|
}
|
|
1039
|
-
this.expect(types.colon);
|
|
1105
|
+
this.expect(types$1.colon);
|
|
1040
1106
|
} else {
|
|
1041
1107
|
if (!cur) { this.unexpected(); }
|
|
1042
1108
|
cur.consequent.push(this.parseStatement(null));
|
|
@@ -1049,7 +1115,7 @@ pp$1.parseSwitchStatement = function(node) {
|
|
|
1049
1115
|
return this.finishNode(node, "SwitchStatement")
|
|
1050
1116
|
};
|
|
1051
1117
|
|
|
1052
|
-
pp$
|
|
1118
|
+
pp$8.parseThrowStatement = function(node) {
|
|
1053
1119
|
this.next();
|
|
1054
1120
|
if (lineBreak.test(this.input.slice(this.lastTokEnd, this.start)))
|
|
1055
1121
|
{ this.raise(this.lastTokEnd, "Illegal newline after throw"); }
|
|
@@ -1060,21 +1126,21 @@ pp$1.parseThrowStatement = function(node) {
|
|
|
1060
1126
|
|
|
1061
1127
|
// Reused empty array added for node fields that are always empty.
|
|
1062
1128
|
|
|
1063
|
-
var empty = [];
|
|
1129
|
+
var empty$1 = [];
|
|
1064
1130
|
|
|
1065
|
-
pp$
|
|
1131
|
+
pp$8.parseTryStatement = function(node) {
|
|
1066
1132
|
this.next();
|
|
1067
1133
|
node.block = this.parseBlock();
|
|
1068
1134
|
node.handler = null;
|
|
1069
|
-
if (this.type === types._catch) {
|
|
1135
|
+
if (this.type === types$1._catch) {
|
|
1070
1136
|
var clause = this.startNode();
|
|
1071
1137
|
this.next();
|
|
1072
|
-
if (this.eat(types.parenL)) {
|
|
1138
|
+
if (this.eat(types$1.parenL)) {
|
|
1073
1139
|
clause.param = this.parseBindingAtom();
|
|
1074
1140
|
var simple = clause.param.type === "Identifier";
|
|
1075
1141
|
this.enterScope(simple ? SCOPE_SIMPLE_CATCH : 0);
|
|
1076
|
-
this.
|
|
1077
|
-
this.expect(types.parenR);
|
|
1142
|
+
this.checkLValPattern(clause.param, simple ? BIND_SIMPLE_CATCH : BIND_LEXICAL);
|
|
1143
|
+
this.expect(types$1.parenR);
|
|
1078
1144
|
} else {
|
|
1079
1145
|
if (this.options.ecmaVersion < 10) { this.unexpected(); }
|
|
1080
1146
|
clause.param = null;
|
|
@@ -1084,20 +1150,20 @@ pp$1.parseTryStatement = function(node) {
|
|
|
1084
1150
|
this.exitScope();
|
|
1085
1151
|
node.handler = this.finishNode(clause, "CatchClause");
|
|
1086
1152
|
}
|
|
1087
|
-
node.finalizer = this.eat(types._finally) ? this.parseBlock() : null;
|
|
1153
|
+
node.finalizer = this.eat(types$1._finally) ? this.parseBlock() : null;
|
|
1088
1154
|
if (!node.handler && !node.finalizer)
|
|
1089
1155
|
{ this.raise(node.start, "Missing catch or finally clause"); }
|
|
1090
1156
|
return this.finishNode(node, "TryStatement")
|
|
1091
1157
|
};
|
|
1092
1158
|
|
|
1093
|
-
pp$
|
|
1159
|
+
pp$8.parseVarStatement = function(node, kind) {
|
|
1094
1160
|
this.next();
|
|
1095
1161
|
this.parseVar(node, false, kind);
|
|
1096
1162
|
this.semicolon();
|
|
1097
1163
|
return this.finishNode(node, "VariableDeclaration")
|
|
1098
1164
|
};
|
|
1099
1165
|
|
|
1100
|
-
pp$
|
|
1166
|
+
pp$8.parseWhileStatement = function(node) {
|
|
1101
1167
|
this.next();
|
|
1102
1168
|
node.test = this.parseParenExpression();
|
|
1103
1169
|
this.labels.push(loopLabel);
|
|
@@ -1106,7 +1172,7 @@ pp$1.parseWhileStatement = function(node) {
|
|
|
1106
1172
|
return this.finishNode(node, "WhileStatement")
|
|
1107
1173
|
};
|
|
1108
1174
|
|
|
1109
|
-
pp$
|
|
1175
|
+
pp$8.parseWithStatement = function(node) {
|
|
1110
1176
|
if (this.strict) { this.raise(this.start, "'with' in strict mode"); }
|
|
1111
1177
|
this.next();
|
|
1112
1178
|
node.object = this.parseParenExpression();
|
|
@@ -1114,12 +1180,12 @@ pp$1.parseWithStatement = function(node) {
|
|
|
1114
1180
|
return this.finishNode(node, "WithStatement")
|
|
1115
1181
|
};
|
|
1116
1182
|
|
|
1117
|
-
pp$
|
|
1183
|
+
pp$8.parseEmptyStatement = function(node) {
|
|
1118
1184
|
this.next();
|
|
1119
1185
|
return this.finishNode(node, "EmptyStatement")
|
|
1120
1186
|
};
|
|
1121
1187
|
|
|
1122
|
-
pp$
|
|
1188
|
+
pp$8.parseLabeledStatement = function(node, maybeName, expr, context) {
|
|
1123
1189
|
for (var i$1 = 0, list = this.labels; i$1 < list.length; i$1 += 1)
|
|
1124
1190
|
{
|
|
1125
1191
|
var label = list[i$1];
|
|
@@ -1127,7 +1193,7 @@ pp$1.parseLabeledStatement = function(node, maybeName, expr, context) {
|
|
|
1127
1193
|
if (label.name === maybeName)
|
|
1128
1194
|
{ this.raise(expr.start, "Label '" + maybeName + "' is already declared");
|
|
1129
1195
|
} }
|
|
1130
|
-
var kind = this.type.isLoop ? "loop" : this.type === types._switch ? "switch" : null;
|
|
1196
|
+
var kind = this.type.isLoop ? "loop" : this.type === types$1._switch ? "switch" : null;
|
|
1131
1197
|
for (var i = this.labels.length - 1; i >= 0; i--) {
|
|
1132
1198
|
var label$1 = this.labels[i];
|
|
1133
1199
|
if (label$1.statementStart === node.start) {
|
|
@@ -1143,7 +1209,7 @@ pp$1.parseLabeledStatement = function(node, maybeName, expr, context) {
|
|
|
1143
1209
|
return this.finishNode(node, "LabeledStatement")
|
|
1144
1210
|
};
|
|
1145
1211
|
|
|
1146
|
-
pp$
|
|
1212
|
+
pp$8.parseExpressionStatement = function(node, expr) {
|
|
1147
1213
|
node.expression = expr;
|
|
1148
1214
|
this.semicolon();
|
|
1149
1215
|
return this.finishNode(node, "ExpressionStatement")
|
|
@@ -1153,14 +1219,14 @@ pp$1.parseExpressionStatement = function(node, expr) {
|
|
|
1153
1219
|
// strict"` declarations when `allowStrict` is true (used for
|
|
1154
1220
|
// function bodies).
|
|
1155
1221
|
|
|
1156
|
-
pp$
|
|
1222
|
+
pp$8.parseBlock = function(createNewLexicalScope, node, exitStrict) {
|
|
1157
1223
|
if ( createNewLexicalScope === void 0 ) createNewLexicalScope = true;
|
|
1158
1224
|
if ( node === void 0 ) node = this.startNode();
|
|
1159
1225
|
|
|
1160
1226
|
node.body = [];
|
|
1161
|
-
this.expect(types.braceL);
|
|
1227
|
+
this.expect(types$1.braceL);
|
|
1162
1228
|
if (createNewLexicalScope) { this.enterScope(0); }
|
|
1163
|
-
while (this.type !== types.braceR) {
|
|
1229
|
+
while (this.type !== types$1.braceR) {
|
|
1164
1230
|
var stmt = this.parseStatement(null);
|
|
1165
1231
|
node.body.push(stmt);
|
|
1166
1232
|
}
|
|
@@ -1174,13 +1240,13 @@ pp$1.parseBlock = function(createNewLexicalScope, node, exitStrict) {
|
|
|
1174
1240
|
// `parseStatement` will already have parsed the init statement or
|
|
1175
1241
|
// expression.
|
|
1176
1242
|
|
|
1177
|
-
pp$
|
|
1243
|
+
pp$8.parseFor = function(node, init) {
|
|
1178
1244
|
node.init = init;
|
|
1179
|
-
this.expect(types.semi);
|
|
1180
|
-
node.test = this.type === types.semi ? null : this.parseExpression();
|
|
1181
|
-
this.expect(types.semi);
|
|
1182
|
-
node.update = this.type === types.parenR ? null : this.parseExpression();
|
|
1183
|
-
this.expect(types.parenR);
|
|
1245
|
+
this.expect(types$1.semi);
|
|
1246
|
+
node.test = this.type === types$1.semi ? null : this.parseExpression();
|
|
1247
|
+
this.expect(types$1.semi);
|
|
1248
|
+
node.update = this.type === types$1.parenR ? null : this.parseExpression();
|
|
1249
|
+
this.expect(types$1.parenR);
|
|
1184
1250
|
node.body = this.parseStatement("for");
|
|
1185
1251
|
this.exitScope();
|
|
1186
1252
|
this.labels.pop();
|
|
@@ -1190,8 +1256,8 @@ pp$1.parseFor = function(node, init) {
|
|
|
1190
1256
|
// Parse a `for`/`in` and `for`/`of` loop, which are almost
|
|
1191
1257
|
// same from parser's perspective.
|
|
1192
1258
|
|
|
1193
|
-
pp$
|
|
1194
|
-
var isForIn = this.type === types._in;
|
|
1259
|
+
pp$8.parseForIn = function(node, init) {
|
|
1260
|
+
var isForIn = this.type === types$1._in;
|
|
1195
1261
|
this.next();
|
|
1196
1262
|
|
|
1197
1263
|
if (
|
|
@@ -1209,12 +1275,10 @@ pp$1.parseForIn = function(node, init) {
|
|
|
1209
1275
|
init.start,
|
|
1210
1276
|
((isForIn ? "for-in" : "for-of") + " loop variable declaration may not have an initializer")
|
|
1211
1277
|
);
|
|
1212
|
-
} else if (init.type === "AssignmentPattern") {
|
|
1213
|
-
this.raise(init.start, "Invalid left-hand side in for-loop");
|
|
1214
1278
|
}
|
|
1215
1279
|
node.left = init;
|
|
1216
1280
|
node.right = isForIn ? this.parseExpression() : this.parseMaybeAssign();
|
|
1217
|
-
this.expect(types.parenR);
|
|
1281
|
+
this.expect(types$1.parenR);
|
|
1218
1282
|
node.body = this.parseStatement("for");
|
|
1219
1283
|
this.exitScope();
|
|
1220
1284
|
this.labels.pop();
|
|
@@ -1223,30 +1287,30 @@ pp$1.parseForIn = function(node, init) {
|
|
|
1223
1287
|
|
|
1224
1288
|
// Parse a list of variable declarations.
|
|
1225
1289
|
|
|
1226
|
-
pp$
|
|
1290
|
+
pp$8.parseVar = function(node, isFor, kind) {
|
|
1227
1291
|
node.declarations = [];
|
|
1228
1292
|
node.kind = kind;
|
|
1229
1293
|
for (;;) {
|
|
1230
1294
|
var decl = this.startNode();
|
|
1231
1295
|
this.parseVarId(decl, kind);
|
|
1232
|
-
if (this.eat(types.eq)) {
|
|
1296
|
+
if (this.eat(types$1.eq)) {
|
|
1233
1297
|
decl.init = this.parseMaybeAssign(isFor);
|
|
1234
|
-
} else if (kind === "const" && !(this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of")))) {
|
|
1298
|
+
} else if (kind === "const" && !(this.type === types$1._in || (this.options.ecmaVersion >= 6 && this.isContextual("of")))) {
|
|
1235
1299
|
this.unexpected();
|
|
1236
|
-
} else if (decl.id.type !== "Identifier" && !(isFor && (this.type === types._in || this.isContextual("of")))) {
|
|
1300
|
+
} else if (decl.id.type !== "Identifier" && !(isFor && (this.type === types$1._in || this.isContextual("of")))) {
|
|
1237
1301
|
this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value");
|
|
1238
1302
|
} else {
|
|
1239
1303
|
decl.init = null;
|
|
1240
1304
|
}
|
|
1241
1305
|
node.declarations.push(this.finishNode(decl, "VariableDeclarator"));
|
|
1242
|
-
if (!this.eat(types.comma)) { break }
|
|
1306
|
+
if (!this.eat(types$1.comma)) { break }
|
|
1243
1307
|
}
|
|
1244
1308
|
return node
|
|
1245
1309
|
};
|
|
1246
1310
|
|
|
1247
|
-
pp$
|
|
1311
|
+
pp$8.parseVarId = function(decl, kind) {
|
|
1248
1312
|
decl.id = this.parseBindingAtom();
|
|
1249
|
-
this.
|
|
1313
|
+
this.checkLValPattern(decl.id, kind === "var" ? BIND_VAR : BIND_LEXICAL, false);
|
|
1250
1314
|
};
|
|
1251
1315
|
|
|
1252
1316
|
var FUNC_STATEMENT = 1, FUNC_HANGING_STATEMENT = 2, FUNC_NULLABLE_ID = 4;
|
|
@@ -1255,24 +1319,24 @@ var FUNC_STATEMENT = 1, FUNC_HANGING_STATEMENT = 2, FUNC_NULLABLE_ID = 4;
|
|
|
1255
1319
|
// `statement & FUNC_STATEMENT`).
|
|
1256
1320
|
|
|
1257
1321
|
// Remove `allowExpressionBody` for 7.0.0, as it is only called with false
|
|
1258
|
-
pp$
|
|
1322
|
+
pp$8.parseFunction = function(node, statement, allowExpressionBody, isAsync, forInit) {
|
|
1259
1323
|
this.initFunction(node);
|
|
1260
1324
|
if (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !isAsync) {
|
|
1261
|
-
if (this.type === types.star && (statement & FUNC_HANGING_STATEMENT))
|
|
1325
|
+
if (this.type === types$1.star && (statement & FUNC_HANGING_STATEMENT))
|
|
1262
1326
|
{ this.unexpected(); }
|
|
1263
|
-
node.generator = this.eat(types.star);
|
|
1327
|
+
node.generator = this.eat(types$1.star);
|
|
1264
1328
|
}
|
|
1265
1329
|
if (this.options.ecmaVersion >= 8)
|
|
1266
1330
|
{ node.async = !!isAsync; }
|
|
1267
1331
|
|
|
1268
1332
|
if (statement & FUNC_STATEMENT) {
|
|
1269
|
-
node.id = (statement & FUNC_NULLABLE_ID) && this.type !== types.name ? null : this.parseIdent();
|
|
1333
|
+
node.id = (statement & FUNC_NULLABLE_ID) && this.type !== types$1.name ? null : this.parseIdent();
|
|
1270
1334
|
if (node.id && !(statement & FUNC_HANGING_STATEMENT))
|
|
1271
1335
|
// If it is a regular function declaration in sloppy mode, then it is
|
|
1272
1336
|
// subject to Annex B semantics (BIND_FUNCTION). Otherwise, the binding
|
|
1273
1337
|
// mode depends on properties of the current scope (see
|
|
1274
1338
|
// treatFunctionsAsVar).
|
|
1275
|
-
{ this.
|
|
1339
|
+
{ this.checkLValSimple(node.id, (this.strict || node.generator || node.async) ? this.treatFunctionsAsVar ? BIND_VAR : BIND_LEXICAL : BIND_FUNCTION); }
|
|
1276
1340
|
}
|
|
1277
1341
|
|
|
1278
1342
|
var oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
@@ -1282,10 +1346,10 @@ pp$1.parseFunction = function(node, statement, allowExpressionBody, isAsync) {
|
|
|
1282
1346
|
this.enterScope(functionFlags(node.async, node.generator));
|
|
1283
1347
|
|
|
1284
1348
|
if (!(statement & FUNC_STATEMENT))
|
|
1285
|
-
{ node.id = this.type === types.name ? this.parseIdent() : null; }
|
|
1349
|
+
{ node.id = this.type === types$1.name ? this.parseIdent() : null; }
|
|
1286
1350
|
|
|
1287
1351
|
this.parseFunctionParams(node);
|
|
1288
|
-
this.parseFunctionBody(node, allowExpressionBody, false);
|
|
1352
|
+
this.parseFunctionBody(node, allowExpressionBody, false, forInit);
|
|
1289
1353
|
|
|
1290
1354
|
this.yieldPos = oldYieldPos;
|
|
1291
1355
|
this.awaitPos = oldAwaitPos;
|
|
@@ -1293,16 +1357,16 @@ pp$1.parseFunction = function(node, statement, allowExpressionBody, isAsync) {
|
|
|
1293
1357
|
return this.finishNode(node, (statement & FUNC_STATEMENT) ? "FunctionDeclaration" : "FunctionExpression")
|
|
1294
1358
|
};
|
|
1295
1359
|
|
|
1296
|
-
pp$
|
|
1297
|
-
this.expect(types.parenL);
|
|
1298
|
-
node.params = this.parseBindingList(types.parenR, false, this.options.ecmaVersion >= 8);
|
|
1360
|
+
pp$8.parseFunctionParams = function(node) {
|
|
1361
|
+
this.expect(types$1.parenL);
|
|
1362
|
+
node.params = this.parseBindingList(types$1.parenR, false, this.options.ecmaVersion >= 8);
|
|
1299
1363
|
this.checkYieldAwaitInDefaultParams();
|
|
1300
1364
|
};
|
|
1301
1365
|
|
|
1302
1366
|
// Parse a class declaration or literal (depending on the
|
|
1303
1367
|
// `isStatement` parameter).
|
|
1304
1368
|
|
|
1305
|
-
pp$
|
|
1369
|
+
pp$8.parseClass = function(node, isStatement) {
|
|
1306
1370
|
this.next();
|
|
1307
1371
|
|
|
1308
1372
|
// ecma-262 14.6 Class Definitions
|
|
@@ -1312,93 +1376,193 @@ pp$1.parseClass = function(node, isStatement) {
|
|
|
1312
1376
|
|
|
1313
1377
|
this.parseClassId(node, isStatement);
|
|
1314
1378
|
this.parseClassSuper(node);
|
|
1379
|
+
var privateNameMap = this.enterClassBody();
|
|
1315
1380
|
var classBody = this.startNode();
|
|
1316
1381
|
var hadConstructor = false;
|
|
1317
1382
|
classBody.body = [];
|
|
1318
|
-
this.expect(types.braceL);
|
|
1319
|
-
while (this.type !== types.braceR) {
|
|
1383
|
+
this.expect(types$1.braceL);
|
|
1384
|
+
while (this.type !== types$1.braceR) {
|
|
1320
1385
|
var element = this.parseClassElement(node.superClass !== null);
|
|
1321
1386
|
if (element) {
|
|
1322
1387
|
classBody.body.push(element);
|
|
1323
1388
|
if (element.type === "MethodDefinition" && element.kind === "constructor") {
|
|
1324
1389
|
if (hadConstructor) { this.raise(element.start, "Duplicate constructor in the same class"); }
|
|
1325
1390
|
hadConstructor = true;
|
|
1391
|
+
} else if (element.key && element.key.type === "PrivateIdentifier" && isPrivateNameConflicted(privateNameMap, element)) {
|
|
1392
|
+
this.raiseRecoverable(element.key.start, ("Identifier '#" + (element.key.name) + "' has already been declared"));
|
|
1326
1393
|
}
|
|
1327
1394
|
}
|
|
1328
1395
|
}
|
|
1329
1396
|
this.strict = oldStrict;
|
|
1330
1397
|
this.next();
|
|
1331
1398
|
node.body = this.finishNode(classBody, "ClassBody");
|
|
1399
|
+
this.exitClassBody();
|
|
1332
1400
|
return this.finishNode(node, isStatement ? "ClassDeclaration" : "ClassExpression")
|
|
1333
1401
|
};
|
|
1334
1402
|
|
|
1335
|
-
pp$
|
|
1336
|
-
|
|
1403
|
+
pp$8.parseClassElement = function(constructorAllowsSuper) {
|
|
1404
|
+
if (this.eat(types$1.semi)) { return null }
|
|
1337
1405
|
|
|
1338
|
-
|
|
1406
|
+
var ecmaVersion = this.options.ecmaVersion;
|
|
1407
|
+
var node = this.startNode();
|
|
1408
|
+
var keyName = "";
|
|
1409
|
+
var isGenerator = false;
|
|
1410
|
+
var isAsync = false;
|
|
1411
|
+
var kind = "method";
|
|
1412
|
+
var isStatic = false;
|
|
1413
|
+
|
|
1414
|
+
if (this.eatContextual("static")) {
|
|
1415
|
+
// Parse static init block
|
|
1416
|
+
if (ecmaVersion >= 13 && this.eat(types$1.braceL)) {
|
|
1417
|
+
this.parseClassStaticBlock(node);
|
|
1418
|
+
return node
|
|
1419
|
+
}
|
|
1420
|
+
if (this.isClassElementNameStart() || this.type === types$1.star) {
|
|
1421
|
+
isStatic = true;
|
|
1422
|
+
} else {
|
|
1423
|
+
keyName = "static";
|
|
1424
|
+
}
|
|
1425
|
+
}
|
|
1426
|
+
node.static = isStatic;
|
|
1427
|
+
if (!keyName && ecmaVersion >= 8 && this.eatContextual("async")) {
|
|
1428
|
+
if ((this.isClassElementNameStart() || this.type === types$1.star) && !this.canInsertSemicolon()) {
|
|
1429
|
+
isAsync = true;
|
|
1430
|
+
} else {
|
|
1431
|
+
keyName = "async";
|
|
1432
|
+
}
|
|
1433
|
+
}
|
|
1434
|
+
if (!keyName && (ecmaVersion >= 9 || !isAsync) && this.eat(types$1.star)) {
|
|
1435
|
+
isGenerator = true;
|
|
1436
|
+
}
|
|
1437
|
+
if (!keyName && !isAsync && !isGenerator) {
|
|
1438
|
+
var lastValue = this.value;
|
|
1439
|
+
if (this.eatContextual("get") || this.eatContextual("set")) {
|
|
1440
|
+
if (this.isClassElementNameStart()) {
|
|
1441
|
+
kind = lastValue;
|
|
1442
|
+
} else {
|
|
1443
|
+
keyName = lastValue;
|
|
1444
|
+
}
|
|
1445
|
+
}
|
|
1446
|
+
}
|
|
1339
1447
|
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1448
|
+
// Parse element name
|
|
1449
|
+
if (keyName) {
|
|
1450
|
+
// 'async', 'get', 'set', or 'static' were not a keyword contextually.
|
|
1451
|
+
// The last token is any of those. Make it the element name.
|
|
1452
|
+
node.computed = false;
|
|
1453
|
+
node.key = this.startNodeAt(this.lastTokStart, this.lastTokStartLoc);
|
|
1454
|
+
node.key.name = keyName;
|
|
1455
|
+
this.finishNode(node.key, "Identifier");
|
|
1456
|
+
} else {
|
|
1457
|
+
this.parseClassElementName(node);
|
|
1458
|
+
}
|
|
1343
1459
|
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
method
|
|
1349
|
-
method
|
|
1350
|
-
|
|
1351
|
-
this
|
|
1352
|
-
|
|
1353
|
-
|
|
1460
|
+
// Parse element value
|
|
1461
|
+
if (ecmaVersion < 13 || this.type === types$1.parenL || kind !== "method" || isGenerator || isAsync) {
|
|
1462
|
+
var isConstructor = !node.static && checkKeyName(node, "constructor");
|
|
1463
|
+
var allowsDirectSuper = isConstructor && constructorAllowsSuper;
|
|
1464
|
+
// Couldn't move this check into the 'parseClassMethod' method for backward compatibility.
|
|
1465
|
+
if (isConstructor && kind !== "method") { this.raise(node.key.start, "Constructor can't have get/set modifier"); }
|
|
1466
|
+
node.kind = isConstructor ? "constructor" : kind;
|
|
1467
|
+
this.parseClassMethod(node, isGenerator, isAsync, allowsDirectSuper);
|
|
1468
|
+
} else {
|
|
1469
|
+
this.parseClassField(node);
|
|
1470
|
+
}
|
|
1354
1471
|
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1472
|
+
return node
|
|
1473
|
+
};
|
|
1474
|
+
|
|
1475
|
+
pp$8.isClassElementNameStart = function() {
|
|
1476
|
+
return (
|
|
1477
|
+
this.type === types$1.name ||
|
|
1478
|
+
this.type === types$1.privateId ||
|
|
1479
|
+
this.type === types$1.num ||
|
|
1480
|
+
this.type === types$1.string ||
|
|
1481
|
+
this.type === types$1.bracketL ||
|
|
1482
|
+
this.type.keyword
|
|
1483
|
+
)
|
|
1484
|
+
};
|
|
1485
|
+
|
|
1486
|
+
pp$8.parseClassElementName = function(element) {
|
|
1487
|
+
if (this.type === types$1.privateId) {
|
|
1488
|
+
if (this.value === "constructor") {
|
|
1489
|
+
this.raise(this.start, "Classes can't have an element named '#constructor'");
|
|
1367
1490
|
}
|
|
1491
|
+
element.computed = false;
|
|
1492
|
+
element.key = this.parsePrivateIdent();
|
|
1493
|
+
} else {
|
|
1494
|
+
this.parsePropertyName(element);
|
|
1368
1495
|
}
|
|
1369
|
-
|
|
1496
|
+
};
|
|
1497
|
+
|
|
1498
|
+
pp$8.parseClassMethod = function(method, isGenerator, isAsync, allowsDirectSuper) {
|
|
1499
|
+
// Check key and flags
|
|
1370
1500
|
var key = method.key;
|
|
1371
|
-
|
|
1372
|
-
if (!method.computed && !method.static && (key.type === "Identifier" && key.name === "constructor" ||
|
|
1373
|
-
key.type === "Literal" && key.value === "constructor")) {
|
|
1374
|
-
if (method.kind !== "method") { this.raise(key.start, "Constructor can't have get/set modifier"); }
|
|
1501
|
+
if (method.kind === "constructor") {
|
|
1375
1502
|
if (isGenerator) { this.raise(key.start, "Constructor can't be a generator"); }
|
|
1376
1503
|
if (isAsync) { this.raise(key.start, "Constructor can't be an async method"); }
|
|
1377
|
-
|
|
1378
|
-
allowsDirectSuper = constructorAllowsSuper;
|
|
1379
|
-
} else if (method.static && key.type === "Identifier" && key.name === "prototype") {
|
|
1504
|
+
} else if (method.static && checkKeyName(method, "prototype")) {
|
|
1380
1505
|
this.raise(key.start, "Classes may not have a static property named prototype");
|
|
1381
1506
|
}
|
|
1382
|
-
this.parseClassMethod(method, isGenerator, isAsync, allowsDirectSuper);
|
|
1383
|
-
if (method.kind === "get" && method.value.params.length !== 0)
|
|
1384
|
-
{ this.raiseRecoverable(method.value.start, "getter should have no params"); }
|
|
1385
|
-
if (method.kind === "set" && method.value.params.length !== 1)
|
|
1386
|
-
{ this.raiseRecoverable(method.value.start, "setter should have exactly one param"); }
|
|
1387
|
-
if (method.kind === "set" && method.value.params[0].type === "RestElement")
|
|
1388
|
-
{ this.raiseRecoverable(method.value.params[0].start, "Setter cannot use rest params"); }
|
|
1389
|
-
return method
|
|
1390
|
-
};
|
|
1391
1507
|
|
|
1392
|
-
|
|
1393
|
-
method.value = this.parseMethod(isGenerator, isAsync, allowsDirectSuper);
|
|
1508
|
+
// Parse value
|
|
1509
|
+
var value = method.value = this.parseMethod(isGenerator, isAsync, allowsDirectSuper);
|
|
1510
|
+
|
|
1511
|
+
// Check value
|
|
1512
|
+
if (method.kind === "get" && value.params.length !== 0)
|
|
1513
|
+
{ this.raiseRecoverable(value.start, "getter should have no params"); }
|
|
1514
|
+
if (method.kind === "set" && value.params.length !== 1)
|
|
1515
|
+
{ this.raiseRecoverable(value.start, "setter should have exactly one param"); }
|
|
1516
|
+
if (method.kind === "set" && value.params[0].type === "RestElement")
|
|
1517
|
+
{ this.raiseRecoverable(value.params[0].start, "Setter cannot use rest params"); }
|
|
1518
|
+
|
|
1394
1519
|
return this.finishNode(method, "MethodDefinition")
|
|
1395
1520
|
};
|
|
1396
1521
|
|
|
1397
|
-
pp$
|
|
1398
|
-
if (
|
|
1522
|
+
pp$8.parseClassField = function(field) {
|
|
1523
|
+
if (checkKeyName(field, "constructor")) {
|
|
1524
|
+
this.raise(field.key.start, "Classes can't have a field named 'constructor'");
|
|
1525
|
+
} else if (field.static && checkKeyName(field, "prototype")) {
|
|
1526
|
+
this.raise(field.key.start, "Classes can't have a static field named 'prototype'");
|
|
1527
|
+
}
|
|
1528
|
+
|
|
1529
|
+
if (this.eat(types$1.eq)) {
|
|
1530
|
+
// To raise SyntaxError if 'arguments' exists in the initializer.
|
|
1531
|
+
var scope = this.currentThisScope();
|
|
1532
|
+
var inClassFieldInit = scope.inClassFieldInit;
|
|
1533
|
+
scope.inClassFieldInit = true;
|
|
1534
|
+
field.value = this.parseMaybeAssign();
|
|
1535
|
+
scope.inClassFieldInit = inClassFieldInit;
|
|
1536
|
+
} else {
|
|
1537
|
+
field.value = null;
|
|
1538
|
+
}
|
|
1539
|
+
this.semicolon();
|
|
1540
|
+
|
|
1541
|
+
return this.finishNode(field, "PropertyDefinition")
|
|
1542
|
+
};
|
|
1543
|
+
|
|
1544
|
+
pp$8.parseClassStaticBlock = function(node) {
|
|
1545
|
+
node.body = [];
|
|
1546
|
+
|
|
1547
|
+
var oldLabels = this.labels;
|
|
1548
|
+
this.labels = [];
|
|
1549
|
+
this.enterScope(SCOPE_CLASS_STATIC_BLOCK | SCOPE_SUPER);
|
|
1550
|
+
while (this.type !== types$1.braceR) {
|
|
1551
|
+
var stmt = this.parseStatement(null);
|
|
1552
|
+
node.body.push(stmt);
|
|
1553
|
+
}
|
|
1554
|
+
this.next();
|
|
1555
|
+
this.exitScope();
|
|
1556
|
+
this.labels = oldLabels;
|
|
1557
|
+
|
|
1558
|
+
return this.finishNode(node, "StaticBlock")
|
|
1559
|
+
};
|
|
1560
|
+
|
|
1561
|
+
pp$8.parseClassId = function(node, isStatement) {
|
|
1562
|
+
if (this.type === types$1.name) {
|
|
1399
1563
|
node.id = this.parseIdent();
|
|
1400
1564
|
if (isStatement)
|
|
1401
|
-
{ this.
|
|
1565
|
+
{ this.checkLValSimple(node.id, BIND_LEXICAL, false); }
|
|
1402
1566
|
} else {
|
|
1403
1567
|
if (isStatement === true)
|
|
1404
1568
|
{ this.unexpected(); }
|
|
@@ -1406,39 +1570,98 @@ pp$1.parseClassId = function(node, isStatement) {
|
|
|
1406
1570
|
}
|
|
1407
1571
|
};
|
|
1408
1572
|
|
|
1409
|
-
pp$
|
|
1410
|
-
node.superClass = this.eat(types._extends) ? this.parseExprSubscripts() : null;
|
|
1573
|
+
pp$8.parseClassSuper = function(node) {
|
|
1574
|
+
node.superClass = this.eat(types$1._extends) ? this.parseExprSubscripts(false) : null;
|
|
1575
|
+
};
|
|
1576
|
+
|
|
1577
|
+
pp$8.enterClassBody = function() {
|
|
1578
|
+
var element = {declared: Object.create(null), used: []};
|
|
1579
|
+
this.privateNameStack.push(element);
|
|
1580
|
+
return element.declared
|
|
1581
|
+
};
|
|
1582
|
+
|
|
1583
|
+
pp$8.exitClassBody = function() {
|
|
1584
|
+
var ref = this.privateNameStack.pop();
|
|
1585
|
+
var declared = ref.declared;
|
|
1586
|
+
var used = ref.used;
|
|
1587
|
+
var len = this.privateNameStack.length;
|
|
1588
|
+
var parent = len === 0 ? null : this.privateNameStack[len - 1];
|
|
1589
|
+
for (var i = 0; i < used.length; ++i) {
|
|
1590
|
+
var id = used[i];
|
|
1591
|
+
if (!hasOwn(declared, id.name)) {
|
|
1592
|
+
if (parent) {
|
|
1593
|
+
parent.used.push(id);
|
|
1594
|
+
} else {
|
|
1595
|
+
this.raiseRecoverable(id.start, ("Private field '#" + (id.name) + "' must be declared in an enclosing class"));
|
|
1596
|
+
}
|
|
1597
|
+
}
|
|
1598
|
+
}
|
|
1411
1599
|
};
|
|
1412
1600
|
|
|
1601
|
+
function isPrivateNameConflicted(privateNameMap, element) {
|
|
1602
|
+
var name = element.key.name;
|
|
1603
|
+
var curr = privateNameMap[name];
|
|
1604
|
+
|
|
1605
|
+
var next = "true";
|
|
1606
|
+
if (element.type === "MethodDefinition" && (element.kind === "get" || element.kind === "set")) {
|
|
1607
|
+
next = (element.static ? "s" : "i") + element.kind;
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
// `class { get #a(){}; static set #a(_){} }` is also conflict.
|
|
1611
|
+
if (
|
|
1612
|
+
curr === "iget" && next === "iset" ||
|
|
1613
|
+
curr === "iset" && next === "iget" ||
|
|
1614
|
+
curr === "sget" && next === "sset" ||
|
|
1615
|
+
curr === "sset" && next === "sget"
|
|
1616
|
+
) {
|
|
1617
|
+
privateNameMap[name] = "true";
|
|
1618
|
+
return false
|
|
1619
|
+
} else if (!curr) {
|
|
1620
|
+
privateNameMap[name] = next;
|
|
1621
|
+
return false
|
|
1622
|
+
} else {
|
|
1623
|
+
return true
|
|
1624
|
+
}
|
|
1625
|
+
}
|
|
1626
|
+
|
|
1627
|
+
function checkKeyName(node, name) {
|
|
1628
|
+
var computed = node.computed;
|
|
1629
|
+
var key = node.key;
|
|
1630
|
+
return !computed && (
|
|
1631
|
+
key.type === "Identifier" && key.name === name ||
|
|
1632
|
+
key.type === "Literal" && key.value === name
|
|
1633
|
+
)
|
|
1634
|
+
}
|
|
1635
|
+
|
|
1413
1636
|
// Parses module export declaration.
|
|
1414
1637
|
|
|
1415
|
-
pp$
|
|
1638
|
+
pp$8.parseExport = function(node, exports) {
|
|
1416
1639
|
this.next();
|
|
1417
1640
|
// export * from '...'
|
|
1418
|
-
if (this.eat(types.star)) {
|
|
1641
|
+
if (this.eat(types$1.star)) {
|
|
1419
1642
|
if (this.options.ecmaVersion >= 11) {
|
|
1420
1643
|
if (this.eatContextual("as")) {
|
|
1421
|
-
node.exported = this.
|
|
1422
|
-
this.checkExport(exports, node.exported
|
|
1644
|
+
node.exported = this.parseModuleExportName();
|
|
1645
|
+
this.checkExport(exports, node.exported, this.lastTokStart);
|
|
1423
1646
|
} else {
|
|
1424
1647
|
node.exported = null;
|
|
1425
1648
|
}
|
|
1426
1649
|
}
|
|
1427
1650
|
this.expectContextual("from");
|
|
1428
|
-
if (this.type !== types.string) { this.unexpected(); }
|
|
1651
|
+
if (this.type !== types$1.string) { this.unexpected(); }
|
|
1429
1652
|
node.source = this.parseExprAtom();
|
|
1430
1653
|
this.semicolon();
|
|
1431
1654
|
return this.finishNode(node, "ExportAllDeclaration")
|
|
1432
1655
|
}
|
|
1433
|
-
if (this.eat(types._default)) { // export default ...
|
|
1656
|
+
if (this.eat(types$1._default)) { // export default ...
|
|
1434
1657
|
this.checkExport(exports, "default", this.lastTokStart);
|
|
1435
1658
|
var isAsync;
|
|
1436
|
-
if (this.type === types._function || (isAsync = this.isAsyncFunction())) {
|
|
1659
|
+
if (this.type === types$1._function || (isAsync = this.isAsyncFunction())) {
|
|
1437
1660
|
var fNode = this.startNode();
|
|
1438
1661
|
this.next();
|
|
1439
1662
|
if (isAsync) { this.next(); }
|
|
1440
1663
|
node.declaration = this.parseFunction(fNode, FUNC_STATEMENT | FUNC_NULLABLE_ID, false, isAsync);
|
|
1441
|
-
} else if (this.type === types._class) {
|
|
1664
|
+
} else if (this.type === types$1._class) {
|
|
1442
1665
|
var cNode = this.startNode();
|
|
1443
1666
|
node.declaration = this.parseClass(cNode, "nullableID");
|
|
1444
1667
|
} else {
|
|
@@ -1453,14 +1676,14 @@ pp$1.parseExport = function(node, exports) {
|
|
|
1453
1676
|
if (node.declaration.type === "VariableDeclaration")
|
|
1454
1677
|
{ this.checkVariableExport(exports, node.declaration.declarations); }
|
|
1455
1678
|
else
|
|
1456
|
-
{ this.checkExport(exports, node.declaration.id
|
|
1679
|
+
{ this.checkExport(exports, node.declaration.id, node.declaration.id.start); }
|
|
1457
1680
|
node.specifiers = [];
|
|
1458
1681
|
node.source = null;
|
|
1459
1682
|
} else { // export { x, y as z } [from '...']
|
|
1460
1683
|
node.declaration = null;
|
|
1461
1684
|
node.specifiers = this.parseExportSpecifiers(exports);
|
|
1462
1685
|
if (this.eatContextual("from")) {
|
|
1463
|
-
if (this.type !== types.string) { this.unexpected(); }
|
|
1686
|
+
if (this.type !== types$1.string) { this.unexpected(); }
|
|
1464
1687
|
node.source = this.parseExprAtom();
|
|
1465
1688
|
} else {
|
|
1466
1689
|
for (var i = 0, list = node.specifiers; i < list.length; i += 1) {
|
|
@@ -1470,6 +1693,10 @@ pp$1.parseExport = function(node, exports) {
|
|
|
1470
1693
|
this.checkUnreserved(spec.local);
|
|
1471
1694
|
// check if export is defined
|
|
1472
1695
|
this.checkLocalExport(spec.local);
|
|
1696
|
+
|
|
1697
|
+
if (spec.local.type === "Literal") {
|
|
1698
|
+
this.raise(spec.local.start, "A string literal cannot be used as an exported binding without `from`.");
|
|
1699
|
+
}
|
|
1473
1700
|
}
|
|
1474
1701
|
|
|
1475
1702
|
node.source = null;
|
|
@@ -1479,17 +1706,19 @@ pp$1.parseExport = function(node, exports) {
|
|
|
1479
1706
|
return this.finishNode(node, "ExportNamedDeclaration")
|
|
1480
1707
|
};
|
|
1481
1708
|
|
|
1482
|
-
pp$
|
|
1709
|
+
pp$8.checkExport = function(exports, name, pos) {
|
|
1483
1710
|
if (!exports) { return }
|
|
1484
|
-
if (
|
|
1711
|
+
if (typeof name !== "string")
|
|
1712
|
+
{ name = name.type === "Identifier" ? name.name : name.value; }
|
|
1713
|
+
if (hasOwn(exports, name))
|
|
1485
1714
|
{ this.raiseRecoverable(pos, "Duplicate export '" + name + "'"); }
|
|
1486
1715
|
exports[name] = true;
|
|
1487
1716
|
};
|
|
1488
1717
|
|
|
1489
|
-
pp$
|
|
1718
|
+
pp$8.checkPatternExport = function(exports, pat) {
|
|
1490
1719
|
var type = pat.type;
|
|
1491
1720
|
if (type === "Identifier")
|
|
1492
|
-
{ this.checkExport(exports, pat
|
|
1721
|
+
{ this.checkExport(exports, pat, pat.start); }
|
|
1493
1722
|
else if (type === "ObjectPattern")
|
|
1494
1723
|
{ for (var i = 0, list = pat.properties; i < list.length; i += 1)
|
|
1495
1724
|
{
|
|
@@ -1513,7 +1742,7 @@ pp$1.checkPatternExport = function(exports, pat) {
|
|
|
1513
1742
|
{ this.checkPatternExport(exports, pat.expression); }
|
|
1514
1743
|
};
|
|
1515
1744
|
|
|
1516
|
-
pp$
|
|
1745
|
+
pp$8.checkVariableExport = function(exports, decls) {
|
|
1517
1746
|
if (!exports) { return }
|
|
1518
1747
|
for (var i = 0, list = decls; i < list.length; i += 1)
|
|
1519
1748
|
{
|
|
@@ -1523,7 +1752,7 @@ pp$1.checkVariableExport = function(exports, decls) {
|
|
|
1523
1752
|
}
|
|
1524
1753
|
};
|
|
1525
1754
|
|
|
1526
|
-
pp$
|
|
1755
|
+
pp$8.shouldParseExportStatement = function() {
|
|
1527
1756
|
return this.type.keyword === "var" ||
|
|
1528
1757
|
this.type.keyword === "const" ||
|
|
1529
1758
|
this.type.keyword === "class" ||
|
|
@@ -1534,20 +1763,24 @@ pp$1.shouldParseExportStatement = function() {
|
|
|
1534
1763
|
|
|
1535
1764
|
// Parses a comma-separated list of module exports.
|
|
1536
1765
|
|
|
1537
|
-
pp$
|
|
1766
|
+
pp$8.parseExportSpecifiers = function(exports) {
|
|
1538
1767
|
var nodes = [], first = true;
|
|
1539
1768
|
// export { x, y as z } [from '...']
|
|
1540
|
-
this.expect(types.braceL);
|
|
1541
|
-
while (!this.eat(types.braceR)) {
|
|
1769
|
+
this.expect(types$1.braceL);
|
|
1770
|
+
while (!this.eat(types$1.braceR)) {
|
|
1542
1771
|
if (!first) {
|
|
1543
|
-
this.expect(types.comma);
|
|
1544
|
-
if (this.afterTrailingComma(types.braceR)) { break }
|
|
1772
|
+
this.expect(types$1.comma);
|
|
1773
|
+
if (this.afterTrailingComma(types$1.braceR)) { break }
|
|
1545
1774
|
} else { first = false; }
|
|
1546
1775
|
|
|
1547
1776
|
var node = this.startNode();
|
|
1548
|
-
node.local = this.
|
|
1549
|
-
node.exported = this.eatContextual("as") ? this.
|
|
1550
|
-
this.checkExport(
|
|
1777
|
+
node.local = this.parseModuleExportName();
|
|
1778
|
+
node.exported = this.eatContextual("as") ? this.parseModuleExportName() : node.local;
|
|
1779
|
+
this.checkExport(
|
|
1780
|
+
exports,
|
|
1781
|
+
node.exported,
|
|
1782
|
+
node.exported.start
|
|
1783
|
+
);
|
|
1551
1784
|
nodes.push(this.finishNode(node, "ExportSpecifier"));
|
|
1552
1785
|
}
|
|
1553
1786
|
return nodes
|
|
@@ -1555,16 +1788,16 @@ pp$1.parseExportSpecifiers = function(exports) {
|
|
|
1555
1788
|
|
|
1556
1789
|
// Parses import declaration.
|
|
1557
1790
|
|
|
1558
|
-
pp$
|
|
1791
|
+
pp$8.parseImport = function(node) {
|
|
1559
1792
|
this.next();
|
|
1560
1793
|
// import '...'
|
|
1561
|
-
if (this.type === types.string) {
|
|
1562
|
-
node.specifiers = empty;
|
|
1794
|
+
if (this.type === types$1.string) {
|
|
1795
|
+
node.specifiers = empty$1;
|
|
1563
1796
|
node.source = this.parseExprAtom();
|
|
1564
1797
|
} else {
|
|
1565
1798
|
node.specifiers = this.parseImportSpecifiers();
|
|
1566
1799
|
this.expectContextual("from");
|
|
1567
|
-
node.source = this.type === types.string ? this.parseExprAtom() : this.unexpected();
|
|
1800
|
+
node.source = this.type === types$1.string ? this.parseExprAtom() : this.unexpected();
|
|
1568
1801
|
}
|
|
1569
1802
|
this.semicolon();
|
|
1570
1803
|
return this.finishNode(node, "ImportDeclaration")
|
|
@@ -1572,54 +1805,66 @@ pp$1.parseImport = function(node) {
|
|
|
1572
1805
|
|
|
1573
1806
|
// Parses a comma-separated list of module imports.
|
|
1574
1807
|
|
|
1575
|
-
pp$
|
|
1808
|
+
pp$8.parseImportSpecifiers = function() {
|
|
1576
1809
|
var nodes = [], first = true;
|
|
1577
|
-
if (this.type === types.name) {
|
|
1810
|
+
if (this.type === types$1.name) {
|
|
1578
1811
|
// import defaultObj, { x, y as z } from '...'
|
|
1579
1812
|
var node = this.startNode();
|
|
1580
1813
|
node.local = this.parseIdent();
|
|
1581
|
-
this.
|
|
1814
|
+
this.checkLValSimple(node.local, BIND_LEXICAL);
|
|
1582
1815
|
nodes.push(this.finishNode(node, "ImportDefaultSpecifier"));
|
|
1583
|
-
if (!this.eat(types.comma)) { return nodes }
|
|
1816
|
+
if (!this.eat(types$1.comma)) { return nodes }
|
|
1584
1817
|
}
|
|
1585
|
-
if (this.type === types.star) {
|
|
1818
|
+
if (this.type === types$1.star) {
|
|
1586
1819
|
var node$1 = this.startNode();
|
|
1587
1820
|
this.next();
|
|
1588
1821
|
this.expectContextual("as");
|
|
1589
1822
|
node$1.local = this.parseIdent();
|
|
1590
|
-
this.
|
|
1823
|
+
this.checkLValSimple(node$1.local, BIND_LEXICAL);
|
|
1591
1824
|
nodes.push(this.finishNode(node$1, "ImportNamespaceSpecifier"));
|
|
1592
1825
|
return nodes
|
|
1593
1826
|
}
|
|
1594
|
-
this.expect(types.braceL);
|
|
1595
|
-
while (!this.eat(types.braceR)) {
|
|
1827
|
+
this.expect(types$1.braceL);
|
|
1828
|
+
while (!this.eat(types$1.braceR)) {
|
|
1596
1829
|
if (!first) {
|
|
1597
|
-
this.expect(types.comma);
|
|
1598
|
-
if (this.afterTrailingComma(types.braceR)) { break }
|
|
1830
|
+
this.expect(types$1.comma);
|
|
1831
|
+
if (this.afterTrailingComma(types$1.braceR)) { break }
|
|
1599
1832
|
} else { first = false; }
|
|
1600
1833
|
|
|
1601
1834
|
var node$2 = this.startNode();
|
|
1602
|
-
node$2.imported = this.
|
|
1835
|
+
node$2.imported = this.parseModuleExportName();
|
|
1603
1836
|
if (this.eatContextual("as")) {
|
|
1604
1837
|
node$2.local = this.parseIdent();
|
|
1605
1838
|
} else {
|
|
1606
1839
|
this.checkUnreserved(node$2.imported);
|
|
1607
1840
|
node$2.local = node$2.imported;
|
|
1608
1841
|
}
|
|
1609
|
-
this.
|
|
1842
|
+
this.checkLValSimple(node$2.local, BIND_LEXICAL);
|
|
1610
1843
|
nodes.push(this.finishNode(node$2, "ImportSpecifier"));
|
|
1611
1844
|
}
|
|
1612
1845
|
return nodes
|
|
1613
1846
|
};
|
|
1614
1847
|
|
|
1848
|
+
pp$8.parseModuleExportName = function() {
|
|
1849
|
+
if (this.options.ecmaVersion >= 13 && this.type === types$1.string) {
|
|
1850
|
+
var stringLiteral = this.parseLiteral(this.value);
|
|
1851
|
+
if (loneSurrogate.test(stringLiteral.value)) {
|
|
1852
|
+
this.raise(stringLiteral.start, "An export name cannot include a lone surrogate.");
|
|
1853
|
+
}
|
|
1854
|
+
return stringLiteral
|
|
1855
|
+
}
|
|
1856
|
+
return this.parseIdent(true)
|
|
1857
|
+
};
|
|
1858
|
+
|
|
1615
1859
|
// Set `ExpressionStatement#directive` property for directive prologues.
|
|
1616
|
-
pp$
|
|
1860
|
+
pp$8.adaptDirectivePrologue = function(statements) {
|
|
1617
1861
|
for (var i = 0; i < statements.length && this.isDirectiveCandidate(statements[i]); ++i) {
|
|
1618
1862
|
statements[i].directive = statements[i].expression.raw.slice(1, -1);
|
|
1619
1863
|
}
|
|
1620
1864
|
};
|
|
1621
|
-
pp$
|
|
1865
|
+
pp$8.isDirectiveCandidate = function(statement) {
|
|
1622
1866
|
return (
|
|
1867
|
+
this.options.ecmaVersion >= 5 &&
|
|
1623
1868
|
statement.type === "ExpressionStatement" &&
|
|
1624
1869
|
statement.expression.type === "Literal" &&
|
|
1625
1870
|
typeof statement.expression.value === "string" &&
|
|
@@ -1628,12 +1873,12 @@ pp$1.isDirectiveCandidate = function(statement) {
|
|
|
1628
1873
|
)
|
|
1629
1874
|
};
|
|
1630
1875
|
|
|
1631
|
-
var pp$
|
|
1876
|
+
var pp$7 = Parser.prototype;
|
|
1632
1877
|
|
|
1633
1878
|
// Convert existing expression atom to assignable pattern
|
|
1634
1879
|
// if possible.
|
|
1635
1880
|
|
|
1636
|
-
pp$
|
|
1881
|
+
pp$7.toAssignable = function(node, isBinding, refDestructuringErrors) {
|
|
1637
1882
|
if (this.options.ecmaVersion >= 6 && node) {
|
|
1638
1883
|
switch (node.type) {
|
|
1639
1884
|
case "Identifier":
|
|
@@ -1643,6 +1888,7 @@ pp$2.toAssignable = function(node, isBinding, refDestructuringErrors) {
|
|
|
1643
1888
|
|
|
1644
1889
|
case "ObjectPattern":
|
|
1645
1890
|
case "ArrayPattern":
|
|
1891
|
+
case "AssignmentPattern":
|
|
1646
1892
|
case "RestElement":
|
|
1647
1893
|
break
|
|
1648
1894
|
|
|
@@ -1691,9 +1937,6 @@ pp$2.toAssignable = function(node, isBinding, refDestructuringErrors) {
|
|
|
1691
1937
|
node.type = "AssignmentPattern";
|
|
1692
1938
|
delete node.operator;
|
|
1693
1939
|
this.toAssignable(node.left, isBinding);
|
|
1694
|
-
// falls through to AssignmentPattern
|
|
1695
|
-
|
|
1696
|
-
case "AssignmentPattern":
|
|
1697
1940
|
break
|
|
1698
1941
|
|
|
1699
1942
|
case "ParenthesizedExpression":
|
|
@@ -1716,7 +1959,7 @@ pp$2.toAssignable = function(node, isBinding, refDestructuringErrors) {
|
|
|
1716
1959
|
|
|
1717
1960
|
// Convert list of expression atoms to binding list.
|
|
1718
1961
|
|
|
1719
|
-
pp$
|
|
1962
|
+
pp$7.toAssignableList = function(exprList, isBinding) {
|
|
1720
1963
|
var end = exprList.length;
|
|
1721
1964
|
for (var i = 0; i < end; i++) {
|
|
1722
1965
|
var elt = exprList[i];
|
|
@@ -1732,19 +1975,19 @@ pp$2.toAssignableList = function(exprList, isBinding) {
|
|
|
1732
1975
|
|
|
1733
1976
|
// Parses spread element.
|
|
1734
1977
|
|
|
1735
|
-
pp$
|
|
1978
|
+
pp$7.parseSpread = function(refDestructuringErrors) {
|
|
1736
1979
|
var node = this.startNode();
|
|
1737
1980
|
this.next();
|
|
1738
1981
|
node.argument = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
1739
1982
|
return this.finishNode(node, "SpreadElement")
|
|
1740
1983
|
};
|
|
1741
1984
|
|
|
1742
|
-
pp$
|
|
1985
|
+
pp$7.parseRestBinding = function() {
|
|
1743
1986
|
var node = this.startNode();
|
|
1744
1987
|
this.next();
|
|
1745
1988
|
|
|
1746
1989
|
// RestElement inside of a function parameter must be an identifier
|
|
1747
|
-
if (this.options.ecmaVersion === 6 && this.type !== types.name)
|
|
1990
|
+
if (this.options.ecmaVersion === 6 && this.type !== types$1.name)
|
|
1748
1991
|
{ this.unexpected(); }
|
|
1749
1992
|
|
|
1750
1993
|
node.argument = this.parseBindingAtom();
|
|
@@ -1754,36 +1997,36 @@ pp$2.parseRestBinding = function() {
|
|
|
1754
1997
|
|
|
1755
1998
|
// Parses lvalue (assignable) atom.
|
|
1756
1999
|
|
|
1757
|
-
pp$
|
|
2000
|
+
pp$7.parseBindingAtom = function() {
|
|
1758
2001
|
if (this.options.ecmaVersion >= 6) {
|
|
1759
2002
|
switch (this.type) {
|
|
1760
|
-
case types.bracketL:
|
|
2003
|
+
case types$1.bracketL:
|
|
1761
2004
|
var node = this.startNode();
|
|
1762
2005
|
this.next();
|
|
1763
|
-
node.elements = this.parseBindingList(types.bracketR, true, true);
|
|
2006
|
+
node.elements = this.parseBindingList(types$1.bracketR, true, true);
|
|
1764
2007
|
return this.finishNode(node, "ArrayPattern")
|
|
1765
2008
|
|
|
1766
|
-
case types.braceL:
|
|
2009
|
+
case types$1.braceL:
|
|
1767
2010
|
return this.parseObj(true)
|
|
1768
2011
|
}
|
|
1769
2012
|
}
|
|
1770
2013
|
return this.parseIdent()
|
|
1771
2014
|
};
|
|
1772
2015
|
|
|
1773
|
-
pp$
|
|
2016
|
+
pp$7.parseBindingList = function(close, allowEmpty, allowTrailingComma) {
|
|
1774
2017
|
var elts = [], first = true;
|
|
1775
2018
|
while (!this.eat(close)) {
|
|
1776
2019
|
if (first) { first = false; }
|
|
1777
|
-
else { this.expect(types.comma); }
|
|
1778
|
-
if (allowEmpty && this.type === types.comma) {
|
|
2020
|
+
else { this.expect(types$1.comma); }
|
|
2021
|
+
if (allowEmpty && this.type === types$1.comma) {
|
|
1779
2022
|
elts.push(null);
|
|
1780
2023
|
} else if (allowTrailingComma && this.afterTrailingComma(close)) {
|
|
1781
2024
|
break
|
|
1782
|
-
} else if (this.type === types.ellipsis) {
|
|
2025
|
+
} else if (this.type === types$1.ellipsis) {
|
|
1783
2026
|
var rest = this.parseRestBinding();
|
|
1784
2027
|
this.parseBindingListItem(rest);
|
|
1785
2028
|
elts.push(rest);
|
|
1786
|
-
if (this.type === types.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2029
|
+
if (this.type === types$1.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
1787
2030
|
this.expect(close);
|
|
1788
2031
|
break
|
|
1789
2032
|
} else {
|
|
@@ -1795,43 +2038,104 @@ pp$2.parseBindingList = function(close, allowEmpty, allowTrailingComma) {
|
|
|
1795
2038
|
return elts
|
|
1796
2039
|
};
|
|
1797
2040
|
|
|
1798
|
-
pp$
|
|
2041
|
+
pp$7.parseBindingListItem = function(param) {
|
|
1799
2042
|
return param
|
|
1800
2043
|
};
|
|
1801
2044
|
|
|
1802
2045
|
// Parses assignment pattern around given atom if possible.
|
|
1803
2046
|
|
|
1804
|
-
pp$
|
|
2047
|
+
pp$7.parseMaybeDefault = function(startPos, startLoc, left) {
|
|
1805
2048
|
left = left || this.parseBindingAtom();
|
|
1806
|
-
if (this.options.ecmaVersion < 6 || !this.eat(types.eq)) { return left }
|
|
2049
|
+
if (this.options.ecmaVersion < 6 || !this.eat(types$1.eq)) { return left }
|
|
1807
2050
|
var node = this.startNodeAt(startPos, startLoc);
|
|
1808
2051
|
node.left = left;
|
|
1809
2052
|
node.right = this.parseMaybeAssign();
|
|
1810
2053
|
return this.finishNode(node, "AssignmentPattern")
|
|
1811
2054
|
};
|
|
1812
2055
|
|
|
1813
|
-
//
|
|
1814
|
-
// to.
|
|
1815
|
-
//
|
|
1816
|
-
//
|
|
1817
|
-
//
|
|
1818
|
-
//
|
|
2056
|
+
// The following three functions all verify that a node is an lvalue —
|
|
2057
|
+
// something that can be bound, or assigned to. In order to do so, they perform
|
|
2058
|
+
// a variety of checks:
|
|
2059
|
+
//
|
|
2060
|
+
// - Check that none of the bound/assigned-to identifiers are reserved words.
|
|
2061
|
+
// - Record name declarations for bindings in the appropriate scope.
|
|
2062
|
+
// - Check duplicate argument names, if checkClashes is set.
|
|
2063
|
+
//
|
|
2064
|
+
// If a complex binding pattern is encountered (e.g., object and array
|
|
2065
|
+
// destructuring), the entire pattern is recursively checked.
|
|
2066
|
+
//
|
|
2067
|
+
// There are three versions of checkLVal*() appropriate for different
|
|
2068
|
+
// circumstances:
|
|
2069
|
+
//
|
|
2070
|
+
// - checkLValSimple() shall be used if the syntactic construct supports
|
|
2071
|
+
// nothing other than identifiers and member expressions. Parenthesized
|
|
2072
|
+
// expressions are also correctly handled. This is generally appropriate for
|
|
2073
|
+
// constructs for which the spec says
|
|
2074
|
+
//
|
|
2075
|
+
// > It is a Syntax Error if AssignmentTargetType of [the production] is not
|
|
2076
|
+
// > simple.
|
|
2077
|
+
//
|
|
2078
|
+
// It is also appropriate for checking if an identifier is valid and not
|
|
2079
|
+
// defined elsewhere, like import declarations or function/class identifiers.
|
|
2080
|
+
//
|
|
2081
|
+
// Examples where this is used include:
|
|
2082
|
+
// a += …;
|
|
2083
|
+
// import a from '…';
|
|
2084
|
+
// where a is the node to be checked.
|
|
2085
|
+
//
|
|
2086
|
+
// - checkLValPattern() shall be used if the syntactic construct supports
|
|
2087
|
+
// anything checkLValSimple() supports, as well as object and array
|
|
2088
|
+
// destructuring patterns. This is generally appropriate for constructs for
|
|
2089
|
+
// which the spec says
|
|
2090
|
+
//
|
|
2091
|
+
// > It is a Syntax Error if [the production] is neither an ObjectLiteral nor
|
|
2092
|
+
// > an ArrayLiteral and AssignmentTargetType of [the production] is not
|
|
2093
|
+
// > simple.
|
|
2094
|
+
//
|
|
2095
|
+
// Examples where this is used include:
|
|
2096
|
+
// (a = …);
|
|
2097
|
+
// const a = …;
|
|
2098
|
+
// try { … } catch (a) { … }
|
|
2099
|
+
// where a is the node to be checked.
|
|
2100
|
+
//
|
|
2101
|
+
// - checkLValInnerPattern() shall be used if the syntactic construct supports
|
|
2102
|
+
// anything checkLValPattern() supports, as well as default assignment
|
|
2103
|
+
// patterns, rest elements, and other constructs that may appear within an
|
|
2104
|
+
// object or array destructuring pattern.
|
|
2105
|
+
//
|
|
2106
|
+
// As a special case, function parameters also use checkLValInnerPattern(),
|
|
2107
|
+
// as they also support defaults and rest constructs.
|
|
2108
|
+
//
|
|
2109
|
+
// These functions deliberately support both assignment and binding constructs,
|
|
2110
|
+
// as the logic for both is exceedingly similar. If the node is the target of
|
|
2111
|
+
// an assignment, then bindingType should be set to BIND_NONE. Otherwise, it
|
|
2112
|
+
// should be set to the appropriate BIND_* constant, like BIND_VAR or
|
|
2113
|
+
// BIND_LEXICAL.
|
|
2114
|
+
//
|
|
2115
|
+
// If the function is called with a non-BIND_NONE bindingType, then
|
|
2116
|
+
// additionally a checkClashes object may be specified to allow checking for
|
|
2117
|
+
// duplicate argument names. checkClashes is ignored if the provided construct
|
|
2118
|
+
// is an assignment (i.e., bindingType is BIND_NONE).
|
|
1819
2119
|
|
|
1820
|
-
pp$
|
|
2120
|
+
pp$7.checkLValSimple = function(expr, bindingType, checkClashes) {
|
|
1821
2121
|
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
1822
2122
|
|
|
2123
|
+
var isBind = bindingType !== BIND_NONE;
|
|
2124
|
+
|
|
1823
2125
|
switch (expr.type) {
|
|
1824
2126
|
case "Identifier":
|
|
1825
|
-
if (bindingType === BIND_LEXICAL && expr.name === "let")
|
|
1826
|
-
{ this.raiseRecoverable(expr.start, "let is disallowed as a lexically bound name"); }
|
|
1827
2127
|
if (this.strict && this.reservedWordsStrictBind.test(expr.name))
|
|
1828
|
-
{ this.raiseRecoverable(expr.start, (
|
|
1829
|
-
if (
|
|
1830
|
-
if (
|
|
1831
|
-
{ this.raiseRecoverable(expr.start, "
|
|
1832
|
-
checkClashes
|
|
2128
|
+
{ this.raiseRecoverable(expr.start, (isBind ? "Binding " : "Assigning to ") + expr.name + " in strict mode"); }
|
|
2129
|
+
if (isBind) {
|
|
2130
|
+
if (bindingType === BIND_LEXICAL && expr.name === "let")
|
|
2131
|
+
{ this.raiseRecoverable(expr.start, "let is disallowed as a lexically bound name"); }
|
|
2132
|
+
if (checkClashes) {
|
|
2133
|
+
if (hasOwn(checkClashes, expr.name))
|
|
2134
|
+
{ this.raiseRecoverable(expr.start, "Argument name clash"); }
|
|
2135
|
+
checkClashes[expr.name] = true;
|
|
2136
|
+
}
|
|
2137
|
+
if (bindingType !== BIND_OUTSIDE) { this.declareName(expr.name, bindingType, expr.start); }
|
|
1833
2138
|
}
|
|
1834
|
-
if (bindingType !== BIND_NONE && bindingType !== BIND_OUTSIDE) { this.declareName(expr.name, bindingType, expr.start); }
|
|
1835
2139
|
break
|
|
1836
2140
|
|
|
1837
2141
|
case "ChainExpression":
|
|
@@ -1839,58 +2143,230 @@ pp$2.checkLVal = function(expr, bindingType, checkClashes) {
|
|
|
1839
2143
|
break
|
|
1840
2144
|
|
|
1841
2145
|
case "MemberExpression":
|
|
1842
|
-
if (
|
|
2146
|
+
if (isBind) { this.raiseRecoverable(expr.start, "Binding member expression"); }
|
|
1843
2147
|
break
|
|
1844
2148
|
|
|
1845
|
-
case "
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
var prop = list[i];
|
|
2149
|
+
case "ParenthesizedExpression":
|
|
2150
|
+
if (isBind) { this.raiseRecoverable(expr.start, "Binding parenthesized expression"); }
|
|
2151
|
+
return this.checkLValSimple(expr.expression, bindingType, checkClashes)
|
|
1849
2152
|
|
|
1850
|
-
|
|
2153
|
+
default:
|
|
2154
|
+
this.raise(expr.start, (isBind ? "Binding" : "Assigning to") + " rvalue");
|
|
1851
2155
|
}
|
|
1852
|
-
|
|
2156
|
+
};
|
|
1853
2157
|
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
2158
|
+
pp$7.checkLValPattern = function(expr, bindingType, checkClashes) {
|
|
2159
|
+
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
2160
|
+
|
|
2161
|
+
switch (expr.type) {
|
|
2162
|
+
case "ObjectPattern":
|
|
2163
|
+
for (var i = 0, list = expr.properties; i < list.length; i += 1) {
|
|
2164
|
+
var prop = list[i];
|
|
2165
|
+
|
|
2166
|
+
this.checkLValInnerPattern(prop, bindingType, checkClashes);
|
|
2167
|
+
}
|
|
1857
2168
|
break
|
|
1858
2169
|
|
|
1859
2170
|
case "ArrayPattern":
|
|
1860
2171
|
for (var i$1 = 0, list$1 = expr.elements; i$1 < list$1.length; i$1 += 1) {
|
|
1861
2172
|
var elem = list$1[i$1];
|
|
1862
2173
|
|
|
1863
|
-
if (elem) { this.
|
|
2174
|
+
if (elem) { this.checkLValInnerPattern(elem, bindingType, checkClashes); }
|
|
1864
2175
|
}
|
|
1865
2176
|
break
|
|
1866
2177
|
|
|
1867
|
-
|
|
1868
|
-
this.
|
|
2178
|
+
default:
|
|
2179
|
+
this.checkLValSimple(expr, bindingType, checkClashes);
|
|
2180
|
+
}
|
|
2181
|
+
};
|
|
2182
|
+
|
|
2183
|
+
pp$7.checkLValInnerPattern = function(expr, bindingType, checkClashes) {
|
|
2184
|
+
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
2185
|
+
|
|
2186
|
+
switch (expr.type) {
|
|
2187
|
+
case "Property":
|
|
2188
|
+
// AssignmentProperty has type === "Property"
|
|
2189
|
+
this.checkLValInnerPattern(expr.value, bindingType, checkClashes);
|
|
1869
2190
|
break
|
|
1870
2191
|
|
|
1871
|
-
case "
|
|
1872
|
-
this.
|
|
2192
|
+
case "AssignmentPattern":
|
|
2193
|
+
this.checkLValPattern(expr.left, bindingType, checkClashes);
|
|
1873
2194
|
break
|
|
1874
2195
|
|
|
1875
|
-
case "
|
|
1876
|
-
this.
|
|
2196
|
+
case "RestElement":
|
|
2197
|
+
this.checkLValPattern(expr.argument, bindingType, checkClashes);
|
|
1877
2198
|
break
|
|
1878
2199
|
|
|
1879
2200
|
default:
|
|
1880
|
-
this.
|
|
2201
|
+
this.checkLValPattern(expr, bindingType, checkClashes);
|
|
1881
2202
|
}
|
|
1882
2203
|
};
|
|
1883
2204
|
|
|
2205
|
+
// The algorithm used to determine whether a regexp can appear at a
|
|
2206
|
+
|
|
2207
|
+
var TokContext = function TokContext(token, isExpr, preserveSpace, override, generator) {
|
|
2208
|
+
this.token = token;
|
|
2209
|
+
this.isExpr = !!isExpr;
|
|
2210
|
+
this.preserveSpace = !!preserveSpace;
|
|
2211
|
+
this.override = override;
|
|
2212
|
+
this.generator = !!generator;
|
|
2213
|
+
};
|
|
2214
|
+
|
|
2215
|
+
var types = {
|
|
2216
|
+
b_stat: new TokContext("{", false),
|
|
2217
|
+
b_expr: new TokContext("{", true),
|
|
2218
|
+
b_tmpl: new TokContext("${", false),
|
|
2219
|
+
p_stat: new TokContext("(", false),
|
|
2220
|
+
p_expr: new TokContext("(", true),
|
|
2221
|
+
q_tmpl: new TokContext("`", true, true, function (p) { return p.tryReadTemplateToken(); }),
|
|
2222
|
+
f_stat: new TokContext("function", false),
|
|
2223
|
+
f_expr: new TokContext("function", true),
|
|
2224
|
+
f_expr_gen: new TokContext("function", true, false, null, true),
|
|
2225
|
+
f_gen: new TokContext("function", false, false, null, true)
|
|
2226
|
+
};
|
|
2227
|
+
|
|
2228
|
+
var pp$6 = Parser.prototype;
|
|
2229
|
+
|
|
2230
|
+
pp$6.initialContext = function() {
|
|
2231
|
+
return [types.b_stat]
|
|
2232
|
+
};
|
|
2233
|
+
|
|
2234
|
+
pp$6.curContext = function() {
|
|
2235
|
+
return this.context[this.context.length - 1]
|
|
2236
|
+
};
|
|
2237
|
+
|
|
2238
|
+
pp$6.braceIsBlock = function(prevType) {
|
|
2239
|
+
var parent = this.curContext();
|
|
2240
|
+
if (parent === types.f_expr || parent === types.f_stat)
|
|
2241
|
+
{ return true }
|
|
2242
|
+
if (prevType === types$1.colon && (parent === types.b_stat || parent === types.b_expr))
|
|
2243
|
+
{ return !parent.isExpr }
|
|
2244
|
+
|
|
2245
|
+
// The check for `tt.name && exprAllowed` detects whether we are
|
|
2246
|
+
// after a `yield` or `of` construct. See the `updateContext` for
|
|
2247
|
+
// `tt.name`.
|
|
2248
|
+
if (prevType === types$1._return || prevType === types$1.name && this.exprAllowed)
|
|
2249
|
+
{ return lineBreak.test(this.input.slice(this.lastTokEnd, this.start)) }
|
|
2250
|
+
if (prevType === types$1._else || prevType === types$1.semi || prevType === types$1.eof || prevType === types$1.parenR || prevType === types$1.arrow)
|
|
2251
|
+
{ return true }
|
|
2252
|
+
if (prevType === types$1.braceL)
|
|
2253
|
+
{ return parent === types.b_stat }
|
|
2254
|
+
if (prevType === types$1._var || prevType === types$1._const || prevType === types$1.name)
|
|
2255
|
+
{ return false }
|
|
2256
|
+
return !this.exprAllowed
|
|
2257
|
+
};
|
|
2258
|
+
|
|
2259
|
+
pp$6.inGeneratorContext = function() {
|
|
2260
|
+
for (var i = this.context.length - 1; i >= 1; i--) {
|
|
2261
|
+
var context = this.context[i];
|
|
2262
|
+
if (context.token === "function")
|
|
2263
|
+
{ return context.generator }
|
|
2264
|
+
}
|
|
2265
|
+
return false
|
|
2266
|
+
};
|
|
2267
|
+
|
|
2268
|
+
pp$6.updateContext = function(prevType) {
|
|
2269
|
+
var update, type = this.type;
|
|
2270
|
+
if (type.keyword && prevType === types$1.dot)
|
|
2271
|
+
{ this.exprAllowed = false; }
|
|
2272
|
+
else if (update = type.updateContext)
|
|
2273
|
+
{ update.call(this, prevType); }
|
|
2274
|
+
else
|
|
2275
|
+
{ this.exprAllowed = type.beforeExpr; }
|
|
2276
|
+
};
|
|
2277
|
+
|
|
2278
|
+
// Used to handle egde cases when token context could not be inferred correctly during tokenization phase
|
|
2279
|
+
|
|
2280
|
+
pp$6.overrideContext = function(tokenCtx) {
|
|
2281
|
+
if (this.curContext() !== tokenCtx) {
|
|
2282
|
+
this.context[this.context.length - 1] = tokenCtx;
|
|
2283
|
+
}
|
|
2284
|
+
};
|
|
2285
|
+
|
|
2286
|
+
// Token-specific context update code
|
|
2287
|
+
|
|
2288
|
+
types$1.parenR.updateContext = types$1.braceR.updateContext = function() {
|
|
2289
|
+
if (this.context.length === 1) {
|
|
2290
|
+
this.exprAllowed = true;
|
|
2291
|
+
return
|
|
2292
|
+
}
|
|
2293
|
+
var out = this.context.pop();
|
|
2294
|
+
if (out === types.b_stat && this.curContext().token === "function") {
|
|
2295
|
+
out = this.context.pop();
|
|
2296
|
+
}
|
|
2297
|
+
this.exprAllowed = !out.isExpr;
|
|
2298
|
+
};
|
|
2299
|
+
|
|
2300
|
+
types$1.braceL.updateContext = function(prevType) {
|
|
2301
|
+
this.context.push(this.braceIsBlock(prevType) ? types.b_stat : types.b_expr);
|
|
2302
|
+
this.exprAllowed = true;
|
|
2303
|
+
};
|
|
2304
|
+
|
|
2305
|
+
types$1.dollarBraceL.updateContext = function() {
|
|
2306
|
+
this.context.push(types.b_tmpl);
|
|
2307
|
+
this.exprAllowed = true;
|
|
2308
|
+
};
|
|
2309
|
+
|
|
2310
|
+
types$1.parenL.updateContext = function(prevType) {
|
|
2311
|
+
var statementParens = prevType === types$1._if || prevType === types$1._for || prevType === types$1._with || prevType === types$1._while;
|
|
2312
|
+
this.context.push(statementParens ? types.p_stat : types.p_expr);
|
|
2313
|
+
this.exprAllowed = true;
|
|
2314
|
+
};
|
|
2315
|
+
|
|
2316
|
+
types$1.incDec.updateContext = function() {
|
|
2317
|
+
// tokExprAllowed stays unchanged
|
|
2318
|
+
};
|
|
2319
|
+
|
|
2320
|
+
types$1._function.updateContext = types$1._class.updateContext = function(prevType) {
|
|
2321
|
+
if (prevType.beforeExpr && prevType !== types$1._else &&
|
|
2322
|
+
!(prevType === types$1.semi && this.curContext() !== types.p_stat) &&
|
|
2323
|
+
!(prevType === types$1._return && lineBreak.test(this.input.slice(this.lastTokEnd, this.start))) &&
|
|
2324
|
+
!((prevType === types$1.colon || prevType === types$1.braceL) && this.curContext() === types.b_stat))
|
|
2325
|
+
{ this.context.push(types.f_expr); }
|
|
2326
|
+
else
|
|
2327
|
+
{ this.context.push(types.f_stat); }
|
|
2328
|
+
this.exprAllowed = false;
|
|
2329
|
+
};
|
|
2330
|
+
|
|
2331
|
+
types$1.backQuote.updateContext = function() {
|
|
2332
|
+
if (this.curContext() === types.q_tmpl)
|
|
2333
|
+
{ this.context.pop(); }
|
|
2334
|
+
else
|
|
2335
|
+
{ this.context.push(types.q_tmpl); }
|
|
2336
|
+
this.exprAllowed = false;
|
|
2337
|
+
};
|
|
2338
|
+
|
|
2339
|
+
types$1.star.updateContext = function(prevType) {
|
|
2340
|
+
if (prevType === types$1._function) {
|
|
2341
|
+
var index = this.context.length - 1;
|
|
2342
|
+
if (this.context[index] === types.f_expr)
|
|
2343
|
+
{ this.context[index] = types.f_expr_gen; }
|
|
2344
|
+
else
|
|
2345
|
+
{ this.context[index] = types.f_gen; }
|
|
2346
|
+
}
|
|
2347
|
+
this.exprAllowed = true;
|
|
2348
|
+
};
|
|
2349
|
+
|
|
2350
|
+
types$1.name.updateContext = function(prevType) {
|
|
2351
|
+
var allowed = false;
|
|
2352
|
+
if (this.options.ecmaVersion >= 6 && prevType !== types$1.dot) {
|
|
2353
|
+
if (this.value === "of" && !this.exprAllowed ||
|
|
2354
|
+
this.value === "yield" && this.inGeneratorContext())
|
|
2355
|
+
{ allowed = true; }
|
|
2356
|
+
}
|
|
2357
|
+
this.exprAllowed = allowed;
|
|
2358
|
+
};
|
|
2359
|
+
|
|
1884
2360
|
// A recursive descent parser operates by defining functions for all
|
|
1885
2361
|
|
|
1886
|
-
var pp$
|
|
2362
|
+
var pp$5 = Parser.prototype;
|
|
1887
2363
|
|
|
1888
2364
|
// Check if property name clashes with already added.
|
|
1889
2365
|
// Object/class getters and setters are not allowed to clash —
|
|
1890
2366
|
// either with each other or with an init property — and in
|
|
1891
2367
|
// strict mode, init properties are also not allowed to be repeated.
|
|
1892
2368
|
|
|
1893
|
-
pp$
|
|
2369
|
+
pp$5.checkPropClash = function(prop, propHash, refDestructuringErrors) {
|
|
1894
2370
|
if (this.options.ecmaVersion >= 9 && prop.type === "SpreadElement")
|
|
1895
2371
|
{ return }
|
|
1896
2372
|
if (this.options.ecmaVersion >= 6 && (prop.computed || prop.method || prop.shorthand))
|
|
@@ -1907,10 +2383,12 @@ pp$3.checkPropClash = function(prop, propHash, refDestructuringErrors) {
|
|
|
1907
2383
|
if (name === "__proto__" && kind === "init") {
|
|
1908
2384
|
if (propHash.proto) {
|
|
1909
2385
|
if (refDestructuringErrors) {
|
|
1910
|
-
if (refDestructuringErrors.doubleProto < 0)
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
} else {
|
|
2386
|
+
if (refDestructuringErrors.doubleProto < 0) {
|
|
2387
|
+
refDestructuringErrors.doubleProto = key.start;
|
|
2388
|
+
}
|
|
2389
|
+
} else {
|
|
2390
|
+
this.raiseRecoverable(key.start, "Redefinition of __proto__ property");
|
|
2391
|
+
}
|
|
1914
2392
|
}
|
|
1915
2393
|
propHash.proto = true;
|
|
1916
2394
|
}
|
|
@@ -1952,13 +2430,13 @@ pp$3.checkPropClash = function(prop, propHash, refDestructuringErrors) {
|
|
|
1952
2430
|
// and object pattern might appear (so it's possible to raise
|
|
1953
2431
|
// delayed syntax error at correct position).
|
|
1954
2432
|
|
|
1955
|
-
pp$
|
|
2433
|
+
pp$5.parseExpression = function(forInit, refDestructuringErrors) {
|
|
1956
2434
|
var startPos = this.start, startLoc = this.startLoc;
|
|
1957
|
-
var expr = this.parseMaybeAssign(
|
|
1958
|
-
if (this.type === types.comma) {
|
|
2435
|
+
var expr = this.parseMaybeAssign(forInit, refDestructuringErrors);
|
|
2436
|
+
if (this.type === types$1.comma) {
|
|
1959
2437
|
var node = this.startNodeAt(startPos, startLoc);
|
|
1960
2438
|
node.expressions = [expr];
|
|
1961
|
-
while (this.eat(types.comma)) { node.expressions.push(this.parseMaybeAssign(
|
|
2439
|
+
while (this.eat(types$1.comma)) { node.expressions.push(this.parseMaybeAssign(forInit, refDestructuringErrors)); }
|
|
1962
2440
|
return this.finishNode(node, "SequenceExpression")
|
|
1963
2441
|
}
|
|
1964
2442
|
return expr
|
|
@@ -1967,18 +2445,19 @@ pp$3.parseExpression = function(noIn, refDestructuringErrors) {
|
|
|
1967
2445
|
// Parse an assignment expression. This includes applications of
|
|
1968
2446
|
// operators like `+=`.
|
|
1969
2447
|
|
|
1970
|
-
pp$
|
|
2448
|
+
pp$5.parseMaybeAssign = function(forInit, refDestructuringErrors, afterLeftParse) {
|
|
1971
2449
|
if (this.isContextual("yield")) {
|
|
1972
|
-
if (this.inGenerator) { return this.parseYield(
|
|
2450
|
+
if (this.inGenerator) { return this.parseYield(forInit) }
|
|
1973
2451
|
// The tokenizer will assume an expression is allowed after
|
|
1974
2452
|
// `yield`, but this isn't that kind of yield
|
|
1975
2453
|
else { this.exprAllowed = false; }
|
|
1976
2454
|
}
|
|
1977
2455
|
|
|
1978
|
-
var ownDestructuringErrors = false, oldParenAssign = -1, oldTrailingComma = -1;
|
|
2456
|
+
var ownDestructuringErrors = false, oldParenAssign = -1, oldTrailingComma = -1, oldDoubleProto = -1;
|
|
1979
2457
|
if (refDestructuringErrors) {
|
|
1980
2458
|
oldParenAssign = refDestructuringErrors.parenthesizedAssign;
|
|
1981
2459
|
oldTrailingComma = refDestructuringErrors.trailingComma;
|
|
2460
|
+
oldDoubleProto = refDestructuringErrors.doubleProto;
|
|
1982
2461
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = -1;
|
|
1983
2462
|
} else {
|
|
1984
2463
|
refDestructuringErrors = new DestructuringErrors;
|
|
@@ -1986,22 +2465,30 @@ pp$3.parseMaybeAssign = function(noIn, refDestructuringErrors, afterLeftParse) {
|
|
|
1986
2465
|
}
|
|
1987
2466
|
|
|
1988
2467
|
var startPos = this.start, startLoc = this.startLoc;
|
|
1989
|
-
if (this.type === types.parenL || this.type === types.name)
|
|
1990
|
-
|
|
1991
|
-
|
|
2468
|
+
if (this.type === types$1.parenL || this.type === types$1.name) {
|
|
2469
|
+
this.potentialArrowAt = this.start;
|
|
2470
|
+
this.potentialArrowInForAwait = forInit === "await";
|
|
2471
|
+
}
|
|
2472
|
+
var left = this.parseMaybeConditional(forInit, refDestructuringErrors);
|
|
1992
2473
|
if (afterLeftParse) { left = afterLeftParse.call(this, left, startPos, startLoc); }
|
|
1993
2474
|
if (this.type.isAssign) {
|
|
1994
2475
|
var node = this.startNodeAt(startPos, startLoc);
|
|
1995
2476
|
node.operator = this.value;
|
|
1996
|
-
|
|
2477
|
+
if (this.type === types$1.eq)
|
|
2478
|
+
{ left = this.toAssignable(left, false, refDestructuringErrors); }
|
|
1997
2479
|
if (!ownDestructuringErrors) {
|
|
1998
2480
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = refDestructuringErrors.doubleProto = -1;
|
|
1999
2481
|
}
|
|
2000
|
-
if (refDestructuringErrors.shorthandAssign >=
|
|
2482
|
+
if (refDestructuringErrors.shorthandAssign >= left.start)
|
|
2001
2483
|
{ refDestructuringErrors.shorthandAssign = -1; } // reset because shorthand default was used correctly
|
|
2002
|
-
this.
|
|
2484
|
+
if (this.type === types$1.eq)
|
|
2485
|
+
{ this.checkLValPattern(left); }
|
|
2486
|
+
else
|
|
2487
|
+
{ this.checkLValSimple(left); }
|
|
2488
|
+
node.left = left;
|
|
2003
2489
|
this.next();
|
|
2004
|
-
node.right = this.parseMaybeAssign(
|
|
2490
|
+
node.right = this.parseMaybeAssign(forInit);
|
|
2491
|
+
if (oldDoubleProto > -1) { refDestructuringErrors.doubleProto = oldDoubleProto; }
|
|
2005
2492
|
return this.finishNode(node, "AssignmentExpression")
|
|
2006
2493
|
} else {
|
|
2007
2494
|
if (ownDestructuringErrors) { this.checkExpressionErrors(refDestructuringErrors, true); }
|
|
@@ -2013,16 +2500,16 @@ pp$3.parseMaybeAssign = function(noIn, refDestructuringErrors, afterLeftParse) {
|
|
|
2013
2500
|
|
|
2014
2501
|
// Parse a ternary conditional (`?:`) operator.
|
|
2015
2502
|
|
|
2016
|
-
pp$
|
|
2503
|
+
pp$5.parseMaybeConditional = function(forInit, refDestructuringErrors) {
|
|
2017
2504
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2018
|
-
var expr = this.parseExprOps(
|
|
2505
|
+
var expr = this.parseExprOps(forInit, refDestructuringErrors);
|
|
2019
2506
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2020
|
-
if (this.eat(types.question)) {
|
|
2507
|
+
if (this.eat(types$1.question)) {
|
|
2021
2508
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2022
2509
|
node.test = expr;
|
|
2023
2510
|
node.consequent = this.parseMaybeAssign();
|
|
2024
|
-
this.expect(types.colon);
|
|
2025
|
-
node.alternate = this.parseMaybeAssign(
|
|
2511
|
+
this.expect(types$1.colon);
|
|
2512
|
+
node.alternate = this.parseMaybeAssign(forInit);
|
|
2026
2513
|
return this.finishNode(node, "ConditionalExpression")
|
|
2027
2514
|
}
|
|
2028
2515
|
return expr
|
|
@@ -2030,11 +2517,11 @@ pp$3.parseMaybeConditional = function(noIn, refDestructuringErrors) {
|
|
|
2030
2517
|
|
|
2031
2518
|
// Start the precedence parser.
|
|
2032
2519
|
|
|
2033
|
-
pp$
|
|
2520
|
+
pp$5.parseExprOps = function(forInit, refDestructuringErrors) {
|
|
2034
2521
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2035
|
-
var expr = this.parseMaybeUnary(refDestructuringErrors, false);
|
|
2522
|
+
var expr = this.parseMaybeUnary(refDestructuringErrors, false, false, forInit);
|
|
2036
2523
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2037
|
-
return expr.start === startPos && expr.type === "ArrowFunctionExpression" ? expr : this.parseExprOp(expr, startPos, startLoc, -1,
|
|
2524
|
+
return expr.start === startPos && expr.type === "ArrowFunctionExpression" ? expr : this.parseExprOp(expr, startPos, startLoc, -1, forInit)
|
|
2038
2525
|
};
|
|
2039
2526
|
|
|
2040
2527
|
// Parse binary operators with the operator precedence parsing
|
|
@@ -2043,32 +2530,33 @@ pp$3.parseExprOps = function(noIn, refDestructuringErrors) {
|
|
|
2043
2530
|
// defer further parser to one of its callers when it encounters an
|
|
2044
2531
|
// operator that has a lower precedence than the set it is parsing.
|
|
2045
2532
|
|
|
2046
|
-
pp$
|
|
2533
|
+
pp$5.parseExprOp = function(left, leftStartPos, leftStartLoc, minPrec, forInit) {
|
|
2047
2534
|
var prec = this.type.binop;
|
|
2048
|
-
if (prec != null && (!
|
|
2535
|
+
if (prec != null && (!forInit || this.type !== types$1._in)) {
|
|
2049
2536
|
if (prec > minPrec) {
|
|
2050
|
-
var logical = this.type === types.logicalOR || this.type === types.logicalAND;
|
|
2051
|
-
var coalesce = this.type === types.coalesce;
|
|
2537
|
+
var logical = this.type === types$1.logicalOR || this.type === types$1.logicalAND;
|
|
2538
|
+
var coalesce = this.type === types$1.coalesce;
|
|
2052
2539
|
if (coalesce) {
|
|
2053
2540
|
// Handle the precedence of `tt.coalesce` as equal to the range of logical expressions.
|
|
2054
2541
|
// In other words, `node.right` shouldn't contain logical expressions in order to check the mixed error.
|
|
2055
|
-
prec = types.logicalAND.binop;
|
|
2542
|
+
prec = types$1.logicalAND.binop;
|
|
2056
2543
|
}
|
|
2057
2544
|
var op = this.value;
|
|
2058
2545
|
this.next();
|
|
2059
2546
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2060
|
-
var right = this.parseExprOp(this.parseMaybeUnary(null, false), startPos, startLoc, prec,
|
|
2547
|
+
var right = this.parseExprOp(this.parseMaybeUnary(null, false, false, forInit), startPos, startLoc, prec, forInit);
|
|
2061
2548
|
var node = this.buildBinary(leftStartPos, leftStartLoc, left, right, op, logical || coalesce);
|
|
2062
|
-
if ((logical && this.type === types.coalesce) || (coalesce && (this.type === types.logicalOR || this.type === types.logicalAND))) {
|
|
2549
|
+
if ((logical && this.type === types$1.coalesce) || (coalesce && (this.type === types$1.logicalOR || this.type === types$1.logicalAND))) {
|
|
2063
2550
|
this.raiseRecoverable(this.start, "Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses");
|
|
2064
2551
|
}
|
|
2065
|
-
return this.parseExprOp(node, leftStartPos, leftStartLoc, minPrec,
|
|
2552
|
+
return this.parseExprOp(node, leftStartPos, leftStartLoc, minPrec, forInit)
|
|
2066
2553
|
}
|
|
2067
2554
|
}
|
|
2068
2555
|
return left
|
|
2069
2556
|
};
|
|
2070
2557
|
|
|
2071
|
-
pp$
|
|
2558
|
+
pp$5.buildBinary = function(startPos, startLoc, left, right, op, logical) {
|
|
2559
|
+
if (right.type === "PrivateIdentifier") { this.raise(right.start, "Private identifier can only be left side of binary expression"); }
|
|
2072
2560
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2073
2561
|
node.left = left;
|
|
2074
2562
|
node.operator = op;
|
|
@@ -2078,67 +2566,86 @@ pp$3.buildBinary = function(startPos, startLoc, left, right, op, logical) {
|
|
|
2078
2566
|
|
|
2079
2567
|
// Parse unary operators, both prefix and postfix.
|
|
2080
2568
|
|
|
2081
|
-
pp$
|
|
2569
|
+
pp$5.parseMaybeUnary = function(refDestructuringErrors, sawUnary, incDec, forInit) {
|
|
2082
2570
|
var startPos = this.start, startLoc = this.startLoc, expr;
|
|
2083
|
-
if (this.isContextual("await") &&
|
|
2084
|
-
expr = this.parseAwait();
|
|
2571
|
+
if (this.isContextual("await") && this.canAwait) {
|
|
2572
|
+
expr = this.parseAwait(forInit);
|
|
2085
2573
|
sawUnary = true;
|
|
2086
2574
|
} else if (this.type.prefix) {
|
|
2087
|
-
var node = this.startNode(), update = this.type === types.incDec;
|
|
2575
|
+
var node = this.startNode(), update = this.type === types$1.incDec;
|
|
2088
2576
|
node.operator = this.value;
|
|
2089
2577
|
node.prefix = true;
|
|
2090
2578
|
this.next();
|
|
2091
|
-
node.argument = this.parseMaybeUnary(null, true);
|
|
2579
|
+
node.argument = this.parseMaybeUnary(null, true, update, forInit);
|
|
2092
2580
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
2093
|
-
if (update) { this.
|
|
2581
|
+
if (update) { this.checkLValSimple(node.argument); }
|
|
2094
2582
|
else if (this.strict && node.operator === "delete" &&
|
|
2095
2583
|
node.argument.type === "Identifier")
|
|
2096
2584
|
{ this.raiseRecoverable(node.start, "Deleting local variable in strict mode"); }
|
|
2585
|
+
else if (node.operator === "delete" && isPrivateFieldAccess(node.argument))
|
|
2586
|
+
{ this.raiseRecoverable(node.start, "Private fields can not be deleted"); }
|
|
2097
2587
|
else { sawUnary = true; }
|
|
2098
2588
|
expr = this.finishNode(node, update ? "UpdateExpression" : "UnaryExpression");
|
|
2589
|
+
} else if (!sawUnary && this.type === types$1.privateId) {
|
|
2590
|
+
if (forInit || this.privateNameStack.length === 0) { this.unexpected(); }
|
|
2591
|
+
expr = this.parsePrivateIdent();
|
|
2592
|
+
// only could be private fields in 'in', such as #x in obj
|
|
2593
|
+
if (this.type !== types$1._in) { this.unexpected(); }
|
|
2099
2594
|
} else {
|
|
2100
|
-
expr = this.parseExprSubscripts(refDestructuringErrors);
|
|
2595
|
+
expr = this.parseExprSubscripts(refDestructuringErrors, forInit);
|
|
2101
2596
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2102
2597
|
while (this.type.postfix && !this.canInsertSemicolon()) {
|
|
2103
2598
|
var node$1 = this.startNodeAt(startPos, startLoc);
|
|
2104
2599
|
node$1.operator = this.value;
|
|
2105
2600
|
node$1.prefix = false;
|
|
2106
2601
|
node$1.argument = expr;
|
|
2107
|
-
this.
|
|
2602
|
+
this.checkLValSimple(expr);
|
|
2108
2603
|
this.next();
|
|
2109
2604
|
expr = this.finishNode(node$1, "UpdateExpression");
|
|
2110
2605
|
}
|
|
2111
2606
|
}
|
|
2112
2607
|
|
|
2113
|
-
if (!
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2608
|
+
if (!incDec && this.eat(types$1.starstar)) {
|
|
2609
|
+
if (sawUnary)
|
|
2610
|
+
{ this.unexpected(this.lastTokStart); }
|
|
2611
|
+
else
|
|
2612
|
+
{ return this.buildBinary(startPos, startLoc, expr, this.parseMaybeUnary(null, false, false, forInit), "**", false) }
|
|
2613
|
+
} else {
|
|
2614
|
+
return expr
|
|
2615
|
+
}
|
|
2117
2616
|
};
|
|
2118
2617
|
|
|
2618
|
+
function isPrivateFieldAccess(node) {
|
|
2619
|
+
return (
|
|
2620
|
+
node.type === "MemberExpression" && node.property.type === "PrivateIdentifier" ||
|
|
2621
|
+
node.type === "ChainExpression" && isPrivateFieldAccess(node.expression)
|
|
2622
|
+
)
|
|
2623
|
+
}
|
|
2624
|
+
|
|
2119
2625
|
// Parse call, dot, and `[]`-subscript expressions.
|
|
2120
2626
|
|
|
2121
|
-
pp$
|
|
2627
|
+
pp$5.parseExprSubscripts = function(refDestructuringErrors, forInit) {
|
|
2122
2628
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2123
|
-
var expr = this.parseExprAtom(refDestructuringErrors);
|
|
2629
|
+
var expr = this.parseExprAtom(refDestructuringErrors, forInit);
|
|
2124
2630
|
if (expr.type === "ArrowFunctionExpression" && this.input.slice(this.lastTokStart, this.lastTokEnd) !== ")")
|
|
2125
2631
|
{ return expr }
|
|
2126
|
-
var result = this.parseSubscripts(expr, startPos, startLoc);
|
|
2632
|
+
var result = this.parseSubscripts(expr, startPos, startLoc, false, forInit);
|
|
2127
2633
|
if (refDestructuringErrors && result.type === "MemberExpression") {
|
|
2128
2634
|
if (refDestructuringErrors.parenthesizedAssign >= result.start) { refDestructuringErrors.parenthesizedAssign = -1; }
|
|
2129
2635
|
if (refDestructuringErrors.parenthesizedBind >= result.start) { refDestructuringErrors.parenthesizedBind = -1; }
|
|
2636
|
+
if (refDestructuringErrors.trailingComma >= result.start) { refDestructuringErrors.trailingComma = -1; }
|
|
2130
2637
|
}
|
|
2131
2638
|
return result
|
|
2132
2639
|
};
|
|
2133
2640
|
|
|
2134
|
-
pp$
|
|
2641
|
+
pp$5.parseSubscripts = function(base, startPos, startLoc, noCalls, forInit) {
|
|
2135
2642
|
var maybeAsyncArrow = this.options.ecmaVersion >= 8 && base.type === "Identifier" && base.name === "async" &&
|
|
2136
2643
|
this.lastTokEnd === base.end && !this.canInsertSemicolon() && base.end - base.start === 5 &&
|
|
2137
2644
|
this.potentialArrowAt === base.start;
|
|
2138
2645
|
var optionalChained = false;
|
|
2139
2646
|
|
|
2140
2647
|
while (true) {
|
|
2141
|
-
var element = this.parseSubscript(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained);
|
|
2648
|
+
var element = this.parseSubscript(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained, forInit);
|
|
2142
2649
|
|
|
2143
2650
|
if (element.optional) { optionalChained = true; }
|
|
2144
2651
|
if (element === base || element.type === "ArrowFunctionExpression") {
|
|
@@ -2154,29 +2661,35 @@ pp$3.parseSubscripts = function(base, startPos, startLoc, noCalls) {
|
|
|
2154
2661
|
}
|
|
2155
2662
|
};
|
|
2156
2663
|
|
|
2157
|
-
pp$
|
|
2664
|
+
pp$5.parseSubscript = function(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained, forInit) {
|
|
2158
2665
|
var optionalSupported = this.options.ecmaVersion >= 11;
|
|
2159
|
-
var optional = optionalSupported && this.eat(types.questionDot);
|
|
2666
|
+
var optional = optionalSupported && this.eat(types$1.questionDot);
|
|
2160
2667
|
if (noCalls && optional) { this.raise(this.lastTokStart, "Optional chaining cannot appear in the callee of new expressions"); }
|
|
2161
2668
|
|
|
2162
|
-
var computed = this.eat(types.bracketL);
|
|
2163
|
-
if (computed || (optional && this.type !== types.parenL && this.type !== types.backQuote) || this.eat(types.dot)) {
|
|
2669
|
+
var computed = this.eat(types$1.bracketL);
|
|
2670
|
+
if (computed || (optional && this.type !== types$1.parenL && this.type !== types$1.backQuote) || this.eat(types$1.dot)) {
|
|
2164
2671
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2165
2672
|
node.object = base;
|
|
2166
|
-
|
|
2673
|
+
if (computed) {
|
|
2674
|
+
node.property = this.parseExpression();
|
|
2675
|
+
this.expect(types$1.bracketR);
|
|
2676
|
+
} else if (this.type === types$1.privateId && base.type !== "Super") {
|
|
2677
|
+
node.property = this.parsePrivateIdent();
|
|
2678
|
+
} else {
|
|
2679
|
+
node.property = this.parseIdent(this.options.allowReserved !== "never");
|
|
2680
|
+
}
|
|
2167
2681
|
node.computed = !!computed;
|
|
2168
|
-
if (computed) { this.expect(types.bracketR); }
|
|
2169
2682
|
if (optionalSupported) {
|
|
2170
2683
|
node.optional = optional;
|
|
2171
2684
|
}
|
|
2172
2685
|
base = this.finishNode(node, "MemberExpression");
|
|
2173
|
-
} else if (!noCalls && this.eat(types.parenL)) {
|
|
2686
|
+
} else if (!noCalls && this.eat(types$1.parenL)) {
|
|
2174
2687
|
var refDestructuringErrors = new DestructuringErrors, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2175
2688
|
this.yieldPos = 0;
|
|
2176
2689
|
this.awaitPos = 0;
|
|
2177
2690
|
this.awaitIdentPos = 0;
|
|
2178
|
-
var exprList = this.parseExprList(types.parenR, this.options.ecmaVersion >= 8, false, refDestructuringErrors);
|
|
2179
|
-
if (maybeAsyncArrow && !optional && !this.canInsertSemicolon() && this.eat(types.arrow)) {
|
|
2691
|
+
var exprList = this.parseExprList(types$1.parenR, this.options.ecmaVersion >= 8, false, refDestructuringErrors);
|
|
2692
|
+
if (maybeAsyncArrow && !optional && !this.canInsertSemicolon() && this.eat(types$1.arrow)) {
|
|
2180
2693
|
this.checkPatternErrors(refDestructuringErrors, false);
|
|
2181
2694
|
this.checkYieldAwaitInDefaultParams();
|
|
2182
2695
|
if (this.awaitIdentPos > 0)
|
|
@@ -2184,7 +2697,7 @@ pp$3.parseSubscript = function(base, startPos, startLoc, noCalls, maybeAsyncArro
|
|
|
2184
2697
|
this.yieldPos = oldYieldPos;
|
|
2185
2698
|
this.awaitPos = oldAwaitPos;
|
|
2186
2699
|
this.awaitIdentPos = oldAwaitIdentPos;
|
|
2187
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, true)
|
|
2700
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, true, forInit)
|
|
2188
2701
|
}
|
|
2189
2702
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
2190
2703
|
this.yieldPos = oldYieldPos || this.yieldPos;
|
|
@@ -2197,7 +2710,7 @@ pp$3.parseSubscript = function(base, startPos, startLoc, noCalls, maybeAsyncArro
|
|
|
2197
2710
|
node$1.optional = optional;
|
|
2198
2711
|
}
|
|
2199
2712
|
base = this.finishNode(node$1, "CallExpression");
|
|
2200
|
-
} else if (this.type === types.backQuote) {
|
|
2713
|
+
} else if (this.type === types$1.backQuote) {
|
|
2201
2714
|
if (optional || optionalChained) {
|
|
2202
2715
|
this.raise(this.start, "Optional chaining cannot appear in the tag of tagged template expressions");
|
|
2203
2716
|
}
|
|
@@ -2214,19 +2727,19 @@ pp$3.parseSubscript = function(base, startPos, startLoc, noCalls, maybeAsyncArro
|
|
|
2214
2727
|
// `new`, or an expression wrapped in punctuation like `()`, `[]`,
|
|
2215
2728
|
// or `{}`.
|
|
2216
2729
|
|
|
2217
|
-
pp$
|
|
2730
|
+
pp$5.parseExprAtom = function(refDestructuringErrors, forInit) {
|
|
2218
2731
|
// If a division operator appears in an expression position, the
|
|
2219
2732
|
// tokenizer got confused, and we force it to read a regexp instead.
|
|
2220
|
-
if (this.type === types.slash) { this.readRegexp(); }
|
|
2733
|
+
if (this.type === types$1.slash) { this.readRegexp(); }
|
|
2221
2734
|
|
|
2222
2735
|
var node, canBeArrow = this.potentialArrowAt === this.start;
|
|
2223
2736
|
switch (this.type) {
|
|
2224
|
-
case types._super:
|
|
2737
|
+
case types$1._super:
|
|
2225
2738
|
if (!this.allowSuper)
|
|
2226
2739
|
{ this.raise(this.start, "'super' keyword outside a method"); }
|
|
2227
2740
|
node = this.startNode();
|
|
2228
2741
|
this.next();
|
|
2229
|
-
if (this.type === types.parenL && !this.allowDirectSuper)
|
|
2742
|
+
if (this.type === types$1.parenL && !this.allowDirectSuper)
|
|
2230
2743
|
{ this.raise(node.start, "super() call outside constructor of a subclass"); }
|
|
2231
2744
|
// The `super` keyword can appear at below:
|
|
2232
2745
|
// SuperProperty:
|
|
@@ -2234,50 +2747,53 @@ pp$3.parseExprAtom = function(refDestructuringErrors) {
|
|
|
2234
2747
|
// super . IdentifierName
|
|
2235
2748
|
// SuperCall:
|
|
2236
2749
|
// super ( Arguments )
|
|
2237
|
-
if (this.type !== types.dot && this.type !== types.bracketL && this.type !== types.parenL)
|
|
2750
|
+
if (this.type !== types$1.dot && this.type !== types$1.bracketL && this.type !== types$1.parenL)
|
|
2238
2751
|
{ this.unexpected(); }
|
|
2239
2752
|
return this.finishNode(node, "Super")
|
|
2240
2753
|
|
|
2241
|
-
case types._this:
|
|
2754
|
+
case types$1._this:
|
|
2242
2755
|
node = this.startNode();
|
|
2243
2756
|
this.next();
|
|
2244
2757
|
return this.finishNode(node, "ThisExpression")
|
|
2245
2758
|
|
|
2246
|
-
case types.name:
|
|
2759
|
+
case types$1.name:
|
|
2247
2760
|
var startPos = this.start, startLoc = this.startLoc, containsEsc = this.containsEsc;
|
|
2248
2761
|
var id = this.parseIdent(false);
|
|
2249
|
-
if (this.options.ecmaVersion >= 8 && !containsEsc && id.name === "async" && !this.canInsertSemicolon() && this.eat(types._function))
|
|
2250
|
-
|
|
2762
|
+
if (this.options.ecmaVersion >= 8 && !containsEsc && id.name === "async" && !this.canInsertSemicolon() && this.eat(types$1._function)) {
|
|
2763
|
+
this.overrideContext(types.f_expr);
|
|
2764
|
+
return this.parseFunction(this.startNodeAt(startPos, startLoc), 0, false, true, forInit)
|
|
2765
|
+
}
|
|
2251
2766
|
if (canBeArrow && !this.canInsertSemicolon()) {
|
|
2252
|
-
if (this.eat(types.arrow))
|
|
2253
|
-
{ return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], false) }
|
|
2254
|
-
if (this.options.ecmaVersion >= 8 && id.name === "async" && this.type === types.name && !containsEsc
|
|
2767
|
+
if (this.eat(types$1.arrow))
|
|
2768
|
+
{ return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], false, forInit) }
|
|
2769
|
+
if (this.options.ecmaVersion >= 8 && id.name === "async" && this.type === types$1.name && !containsEsc &&
|
|
2770
|
+
(!this.potentialArrowInForAwait || this.value !== "of" || this.containsEsc)) {
|
|
2255
2771
|
id = this.parseIdent(false);
|
|
2256
|
-
if (this.canInsertSemicolon() || !this.eat(types.arrow))
|
|
2772
|
+
if (this.canInsertSemicolon() || !this.eat(types$1.arrow))
|
|
2257
2773
|
{ this.unexpected(); }
|
|
2258
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], true)
|
|
2774
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], true, forInit)
|
|
2259
2775
|
}
|
|
2260
2776
|
}
|
|
2261
2777
|
return id
|
|
2262
2778
|
|
|
2263
|
-
case types.regexp:
|
|
2779
|
+
case types$1.regexp:
|
|
2264
2780
|
var value = this.value;
|
|
2265
2781
|
node = this.parseLiteral(value.value);
|
|
2266
2782
|
node.regex = {pattern: value.pattern, flags: value.flags};
|
|
2267
2783
|
return node
|
|
2268
2784
|
|
|
2269
|
-
case types.num: case types.string:
|
|
2785
|
+
case types$1.num: case types$1.string:
|
|
2270
2786
|
return this.parseLiteral(this.value)
|
|
2271
2787
|
|
|
2272
|
-
case types._null: case types._true: case types._false:
|
|
2788
|
+
case types$1._null: case types$1._true: case types$1._false:
|
|
2273
2789
|
node = this.startNode();
|
|
2274
|
-
node.value = this.type === types._null ? null : this.type === types._true;
|
|
2790
|
+
node.value = this.type === types$1._null ? null : this.type === types$1._true;
|
|
2275
2791
|
node.raw = this.type.keyword;
|
|
2276
2792
|
this.next();
|
|
2277
2793
|
return this.finishNode(node, "Literal")
|
|
2278
2794
|
|
|
2279
|
-
case types.parenL:
|
|
2280
|
-
var start = this.start, expr = this.parseParenAndDistinguishExpression(canBeArrow);
|
|
2795
|
+
case types$1.parenL:
|
|
2796
|
+
var start = this.start, expr = this.parseParenAndDistinguishExpression(canBeArrow, forInit);
|
|
2281
2797
|
if (refDestructuringErrors) {
|
|
2282
2798
|
if (refDestructuringErrors.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(expr))
|
|
2283
2799
|
{ refDestructuringErrors.parenthesizedAssign = start; }
|
|
@@ -2286,30 +2802,31 @@ pp$3.parseExprAtom = function(refDestructuringErrors) {
|
|
|
2286
2802
|
}
|
|
2287
2803
|
return expr
|
|
2288
2804
|
|
|
2289
|
-
case types.bracketL:
|
|
2805
|
+
case types$1.bracketL:
|
|
2290
2806
|
node = this.startNode();
|
|
2291
2807
|
this.next();
|
|
2292
|
-
node.elements = this.parseExprList(types.bracketR, true, true, refDestructuringErrors);
|
|
2808
|
+
node.elements = this.parseExprList(types$1.bracketR, true, true, refDestructuringErrors);
|
|
2293
2809
|
return this.finishNode(node, "ArrayExpression")
|
|
2294
2810
|
|
|
2295
|
-
case types.braceL:
|
|
2811
|
+
case types$1.braceL:
|
|
2812
|
+
this.overrideContext(types.b_expr);
|
|
2296
2813
|
return this.parseObj(false, refDestructuringErrors)
|
|
2297
2814
|
|
|
2298
|
-
case types._function:
|
|
2815
|
+
case types$1._function:
|
|
2299
2816
|
node = this.startNode();
|
|
2300
2817
|
this.next();
|
|
2301
2818
|
return this.parseFunction(node, 0)
|
|
2302
2819
|
|
|
2303
|
-
case types._class:
|
|
2820
|
+
case types$1._class:
|
|
2304
2821
|
return this.parseClass(this.startNode(), false)
|
|
2305
2822
|
|
|
2306
|
-
case types._new:
|
|
2823
|
+
case types$1._new:
|
|
2307
2824
|
return this.parseNew()
|
|
2308
2825
|
|
|
2309
|
-
case types.backQuote:
|
|
2826
|
+
case types$1.backQuote:
|
|
2310
2827
|
return this.parseTemplate()
|
|
2311
2828
|
|
|
2312
|
-
case types._import:
|
|
2829
|
+
case types$1._import:
|
|
2313
2830
|
if (this.options.ecmaVersion >= 11) {
|
|
2314
2831
|
return this.parseExprImport()
|
|
2315
2832
|
} else {
|
|
@@ -2321,7 +2838,7 @@ pp$3.parseExprAtom = function(refDestructuringErrors) {
|
|
|
2321
2838
|
}
|
|
2322
2839
|
};
|
|
2323
2840
|
|
|
2324
|
-
pp$
|
|
2841
|
+
pp$5.parseExprImport = function() {
|
|
2325
2842
|
var node = this.startNode();
|
|
2326
2843
|
|
|
2327
2844
|
// Consume `import` as an identifier for `import.meta`.
|
|
@@ -2330,9 +2847,9 @@ pp$3.parseExprImport = function() {
|
|
|
2330
2847
|
var meta = this.parseIdent(true);
|
|
2331
2848
|
|
|
2332
2849
|
switch (this.type) {
|
|
2333
|
-
case types.parenL:
|
|
2850
|
+
case types$1.parenL:
|
|
2334
2851
|
return this.parseDynamicImport(node)
|
|
2335
|
-
case types.dot:
|
|
2852
|
+
case types$1.dot:
|
|
2336
2853
|
node.meta = meta;
|
|
2337
2854
|
return this.parseImportMeta(node)
|
|
2338
2855
|
default:
|
|
@@ -2340,16 +2857,16 @@ pp$3.parseExprImport = function() {
|
|
|
2340
2857
|
}
|
|
2341
2858
|
};
|
|
2342
2859
|
|
|
2343
|
-
pp$
|
|
2860
|
+
pp$5.parseDynamicImport = function(node) {
|
|
2344
2861
|
this.next(); // skip `(`
|
|
2345
2862
|
|
|
2346
2863
|
// Parse node.source.
|
|
2347
2864
|
node.source = this.parseMaybeAssign();
|
|
2348
2865
|
|
|
2349
2866
|
// Verify ending.
|
|
2350
|
-
if (!this.eat(types.parenR)) {
|
|
2867
|
+
if (!this.eat(types$1.parenR)) {
|
|
2351
2868
|
var errorPos = this.start;
|
|
2352
|
-
if (this.eat(types.comma) && this.eat(types.parenR)) {
|
|
2869
|
+
if (this.eat(types$1.comma) && this.eat(types$1.parenR)) {
|
|
2353
2870
|
this.raiseRecoverable(errorPos, "Trailing comma is not allowed in import()");
|
|
2354
2871
|
} else {
|
|
2355
2872
|
this.unexpected(errorPos);
|
|
@@ -2359,7 +2876,7 @@ pp$3.parseDynamicImport = function(node) {
|
|
|
2359
2876
|
return this.finishNode(node, "ImportExpression")
|
|
2360
2877
|
};
|
|
2361
2878
|
|
|
2362
|
-
pp$
|
|
2879
|
+
pp$5.parseImportMeta = function(node) {
|
|
2363
2880
|
this.next(); // skip `.`
|
|
2364
2881
|
|
|
2365
2882
|
var containsEsc = this.containsEsc;
|
|
@@ -2369,13 +2886,13 @@ pp$3.parseImportMeta = function(node) {
|
|
|
2369
2886
|
{ this.raiseRecoverable(node.property.start, "The only valid meta property for import is 'import.meta'"); }
|
|
2370
2887
|
if (containsEsc)
|
|
2371
2888
|
{ this.raiseRecoverable(node.start, "'import.meta' must not contain escaped characters"); }
|
|
2372
|
-
if (this.options.sourceType !== "module")
|
|
2889
|
+
if (this.options.sourceType !== "module" && !this.options.allowImportExportEverywhere)
|
|
2373
2890
|
{ this.raiseRecoverable(node.start, "Cannot use 'import.meta' outside a module"); }
|
|
2374
2891
|
|
|
2375
2892
|
return this.finishNode(node, "MetaProperty")
|
|
2376
2893
|
};
|
|
2377
2894
|
|
|
2378
|
-
pp$
|
|
2895
|
+
pp$5.parseLiteral = function(value) {
|
|
2379
2896
|
var node = this.startNode();
|
|
2380
2897
|
node.value = value;
|
|
2381
2898
|
node.raw = this.input.slice(this.start, this.end);
|
|
@@ -2384,14 +2901,14 @@ pp$3.parseLiteral = function(value) {
|
|
|
2384
2901
|
return this.finishNode(node, "Literal")
|
|
2385
2902
|
};
|
|
2386
2903
|
|
|
2387
|
-
pp$
|
|
2388
|
-
this.expect(types.parenL);
|
|
2904
|
+
pp$5.parseParenExpression = function() {
|
|
2905
|
+
this.expect(types$1.parenL);
|
|
2389
2906
|
var val = this.parseExpression();
|
|
2390
|
-
this.expect(types.parenR);
|
|
2907
|
+
this.expect(types$1.parenR);
|
|
2391
2908
|
return val
|
|
2392
2909
|
};
|
|
2393
2910
|
|
|
2394
|
-
pp$
|
|
2911
|
+
pp$5.parseParenAndDistinguishExpression = function(canBeArrow, forInit) {
|
|
2395
2912
|
var startPos = this.start, startLoc = this.startLoc, val, allowTrailingComma = this.options.ecmaVersion >= 8;
|
|
2396
2913
|
if (this.options.ecmaVersion >= 6) {
|
|
2397
2914
|
this.next();
|
|
@@ -2402,29 +2919,29 @@ pp$3.parseParenAndDistinguishExpression = function(canBeArrow) {
|
|
|
2402
2919
|
this.yieldPos = 0;
|
|
2403
2920
|
this.awaitPos = 0;
|
|
2404
2921
|
// Do not save awaitIdentPos to allow checking awaits nested in parameters
|
|
2405
|
-
while (this.type !== types.parenR) {
|
|
2406
|
-
first ? first = false : this.expect(types.comma);
|
|
2407
|
-
if (allowTrailingComma && this.afterTrailingComma(types.parenR, true)) {
|
|
2922
|
+
while (this.type !== types$1.parenR) {
|
|
2923
|
+
first ? first = false : this.expect(types$1.comma);
|
|
2924
|
+
if (allowTrailingComma && this.afterTrailingComma(types$1.parenR, true)) {
|
|
2408
2925
|
lastIsComma = true;
|
|
2409
2926
|
break
|
|
2410
|
-
} else if (this.type === types.ellipsis) {
|
|
2927
|
+
} else if (this.type === types$1.ellipsis) {
|
|
2411
2928
|
spreadStart = this.start;
|
|
2412
2929
|
exprList.push(this.parseParenItem(this.parseRestBinding()));
|
|
2413
|
-
if (this.type === types.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2930
|
+
if (this.type === types$1.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2414
2931
|
break
|
|
2415
2932
|
} else {
|
|
2416
2933
|
exprList.push(this.parseMaybeAssign(false, refDestructuringErrors, this.parseParenItem));
|
|
2417
2934
|
}
|
|
2418
2935
|
}
|
|
2419
|
-
var innerEndPos = this.
|
|
2420
|
-
this.expect(types.parenR);
|
|
2936
|
+
var innerEndPos = this.lastTokEnd, innerEndLoc = this.lastTokEndLoc;
|
|
2937
|
+
this.expect(types$1.parenR);
|
|
2421
2938
|
|
|
2422
|
-
if (canBeArrow && !this.canInsertSemicolon() && this.eat(types.arrow)) {
|
|
2939
|
+
if (canBeArrow && !this.canInsertSemicolon() && this.eat(types$1.arrow)) {
|
|
2423
2940
|
this.checkPatternErrors(refDestructuringErrors, false);
|
|
2424
2941
|
this.checkYieldAwaitInDefaultParams();
|
|
2425
2942
|
this.yieldPos = oldYieldPos;
|
|
2426
2943
|
this.awaitPos = oldAwaitPos;
|
|
2427
|
-
return this.parseParenArrowList(startPos, startLoc, exprList)
|
|
2944
|
+
return this.parseParenArrowList(startPos, startLoc, exprList, forInit)
|
|
2428
2945
|
}
|
|
2429
2946
|
|
|
2430
2947
|
if (!exprList.length || lastIsComma) { this.unexpected(this.lastTokStart); }
|
|
@@ -2453,12 +2970,12 @@ pp$3.parseParenAndDistinguishExpression = function(canBeArrow) {
|
|
|
2453
2970
|
}
|
|
2454
2971
|
};
|
|
2455
2972
|
|
|
2456
|
-
pp$
|
|
2973
|
+
pp$5.parseParenItem = function(item) {
|
|
2457
2974
|
return item
|
|
2458
2975
|
};
|
|
2459
2976
|
|
|
2460
|
-
pp$
|
|
2461
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList)
|
|
2977
|
+
pp$5.parseParenArrowList = function(startPos, startLoc, exprList, forInit) {
|
|
2978
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, false, forInit)
|
|
2462
2979
|
};
|
|
2463
2980
|
|
|
2464
2981
|
// New's precedence is slightly tricky. It must allow its argument to
|
|
@@ -2467,13 +2984,13 @@ pp$3.parseParenArrowList = function(startPos, startLoc, exprList) {
|
|
|
2467
2984
|
// argument to parseSubscripts to prevent it from consuming the
|
|
2468
2985
|
// argument list.
|
|
2469
2986
|
|
|
2470
|
-
var empty
|
|
2987
|
+
var empty = [];
|
|
2471
2988
|
|
|
2472
|
-
pp$
|
|
2989
|
+
pp$5.parseNew = function() {
|
|
2473
2990
|
if (this.containsEsc) { this.raiseRecoverable(this.start, "Escape sequence in keyword new"); }
|
|
2474
2991
|
var node = this.startNode();
|
|
2475
2992
|
var meta = this.parseIdent(true);
|
|
2476
|
-
if (this.options.ecmaVersion >= 6 && this.eat(types.dot)) {
|
|
2993
|
+
if (this.options.ecmaVersion >= 6 && this.eat(types$1.dot)) {
|
|
2477
2994
|
node.meta = meta;
|
|
2478
2995
|
var containsEsc = this.containsEsc;
|
|
2479
2996
|
node.property = this.parseIdent(true);
|
|
@@ -2481,27 +2998,27 @@ pp$3.parseNew = function() {
|
|
|
2481
2998
|
{ this.raiseRecoverable(node.property.start, "The only valid meta property for new is 'new.target'"); }
|
|
2482
2999
|
if (containsEsc)
|
|
2483
3000
|
{ this.raiseRecoverable(node.start, "'new.target' must not contain escaped characters"); }
|
|
2484
|
-
if (!this.
|
|
2485
|
-
{ this.raiseRecoverable(node.start, "'new.target' can only be used in functions"); }
|
|
3001
|
+
if (!this.allowNewDotTarget)
|
|
3002
|
+
{ this.raiseRecoverable(node.start, "'new.target' can only be used in functions and class static block"); }
|
|
2486
3003
|
return this.finishNode(node, "MetaProperty")
|
|
2487
3004
|
}
|
|
2488
|
-
var startPos = this.start, startLoc = this.startLoc, isImport = this.type === types._import;
|
|
2489
|
-
node.callee = this.parseSubscripts(this.parseExprAtom(), startPos, startLoc, true);
|
|
3005
|
+
var startPos = this.start, startLoc = this.startLoc, isImport = this.type === types$1._import;
|
|
3006
|
+
node.callee = this.parseSubscripts(this.parseExprAtom(), startPos, startLoc, true, false);
|
|
2490
3007
|
if (isImport && node.callee.type === "ImportExpression") {
|
|
2491
3008
|
this.raise(startPos, "Cannot use new with import()");
|
|
2492
3009
|
}
|
|
2493
|
-
if (this.eat(types.parenL)) { node.arguments = this.parseExprList(types.parenR, this.options.ecmaVersion >= 8, false); }
|
|
2494
|
-
else { node.arguments = empty
|
|
3010
|
+
if (this.eat(types$1.parenL)) { node.arguments = this.parseExprList(types$1.parenR, this.options.ecmaVersion >= 8, false); }
|
|
3011
|
+
else { node.arguments = empty; }
|
|
2495
3012
|
return this.finishNode(node, "NewExpression")
|
|
2496
3013
|
};
|
|
2497
3014
|
|
|
2498
3015
|
// Parse template expression.
|
|
2499
3016
|
|
|
2500
|
-
pp$
|
|
3017
|
+
pp$5.parseTemplateElement = function(ref) {
|
|
2501
3018
|
var isTagged = ref.isTagged;
|
|
2502
3019
|
|
|
2503
3020
|
var elem = this.startNode();
|
|
2504
|
-
if (this.type === types.invalidTemplate) {
|
|
3021
|
+
if (this.type === types$1.invalidTemplate) {
|
|
2505
3022
|
if (!isTagged) {
|
|
2506
3023
|
this.raiseRecoverable(this.start, "Bad escape sequence in untagged template literal");
|
|
2507
3024
|
}
|
|
@@ -2516,11 +3033,11 @@ pp$3.parseTemplateElement = function(ref) {
|
|
|
2516
3033
|
};
|
|
2517
3034
|
}
|
|
2518
3035
|
this.next();
|
|
2519
|
-
elem.tail = this.type === types.backQuote;
|
|
3036
|
+
elem.tail = this.type === types$1.backQuote;
|
|
2520
3037
|
return this.finishNode(elem, "TemplateElement")
|
|
2521
3038
|
};
|
|
2522
3039
|
|
|
2523
|
-
pp$
|
|
3040
|
+
pp$5.parseTemplate = function(ref) {
|
|
2524
3041
|
if ( ref === void 0 ) ref = {};
|
|
2525
3042
|
var isTagged = ref.isTagged; if ( isTagged === void 0 ) isTagged = false;
|
|
2526
3043
|
|
|
@@ -2530,32 +3047,32 @@ pp$3.parseTemplate = function(ref) {
|
|
|
2530
3047
|
var curElt = this.parseTemplateElement({isTagged: isTagged});
|
|
2531
3048
|
node.quasis = [curElt];
|
|
2532
3049
|
while (!curElt.tail) {
|
|
2533
|
-
if (this.type === types.eof) { this.raise(this.pos, "Unterminated template literal"); }
|
|
2534
|
-
this.expect(types.dollarBraceL);
|
|
3050
|
+
if (this.type === types$1.eof) { this.raise(this.pos, "Unterminated template literal"); }
|
|
3051
|
+
this.expect(types$1.dollarBraceL);
|
|
2535
3052
|
node.expressions.push(this.parseExpression());
|
|
2536
|
-
this.expect(types.braceR);
|
|
3053
|
+
this.expect(types$1.braceR);
|
|
2537
3054
|
node.quasis.push(curElt = this.parseTemplateElement({isTagged: isTagged}));
|
|
2538
3055
|
}
|
|
2539
3056
|
this.next();
|
|
2540
3057
|
return this.finishNode(node, "TemplateLiteral")
|
|
2541
3058
|
};
|
|
2542
3059
|
|
|
2543
|
-
pp$
|
|
3060
|
+
pp$5.isAsyncProp = function(prop) {
|
|
2544
3061
|
return !prop.computed && prop.key.type === "Identifier" && prop.key.name === "async" &&
|
|
2545
|
-
(this.type === types.name || this.type === types.num || this.type === types.string || this.type === types.bracketL || this.type.keyword || (this.options.ecmaVersion >= 9 && this.type === types.star)) &&
|
|
3062
|
+
(this.type === types$1.name || this.type === types$1.num || this.type === types$1.string || this.type === types$1.bracketL || this.type.keyword || (this.options.ecmaVersion >= 9 && this.type === types$1.star)) &&
|
|
2546
3063
|
!lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
|
2547
3064
|
};
|
|
2548
3065
|
|
|
2549
3066
|
// Parse an object literal or binding pattern.
|
|
2550
3067
|
|
|
2551
|
-
pp$
|
|
3068
|
+
pp$5.parseObj = function(isPattern, refDestructuringErrors) {
|
|
2552
3069
|
var node = this.startNode(), first = true, propHash = {};
|
|
2553
3070
|
node.properties = [];
|
|
2554
3071
|
this.next();
|
|
2555
|
-
while (!this.eat(types.braceR)) {
|
|
3072
|
+
while (!this.eat(types$1.braceR)) {
|
|
2556
3073
|
if (!first) {
|
|
2557
|
-
this.expect(types.comma);
|
|
2558
|
-
if (this.options.ecmaVersion >= 5 && this.afterTrailingComma(types.braceR)) { break }
|
|
3074
|
+
this.expect(types$1.comma);
|
|
3075
|
+
if (this.options.ecmaVersion >= 5 && this.afterTrailingComma(types$1.braceR)) { break }
|
|
2559
3076
|
} else { first = false; }
|
|
2560
3077
|
|
|
2561
3078
|
var prop = this.parseProperty(isPattern, refDestructuringErrors);
|
|
@@ -2565,29 +3082,20 @@ pp$3.parseObj = function(isPattern, refDestructuringErrors) {
|
|
|
2565
3082
|
return this.finishNode(node, isPattern ? "ObjectPattern" : "ObjectExpression")
|
|
2566
3083
|
};
|
|
2567
3084
|
|
|
2568
|
-
pp$
|
|
3085
|
+
pp$5.parseProperty = function(isPattern, refDestructuringErrors) {
|
|
2569
3086
|
var prop = this.startNode(), isGenerator, isAsync, startPos, startLoc;
|
|
2570
|
-
if (this.options.ecmaVersion >= 9 && this.eat(types.ellipsis)) {
|
|
3087
|
+
if (this.options.ecmaVersion >= 9 && this.eat(types$1.ellipsis)) {
|
|
2571
3088
|
if (isPattern) {
|
|
2572
3089
|
prop.argument = this.parseIdent(false);
|
|
2573
|
-
if (this.type === types.comma) {
|
|
3090
|
+
if (this.type === types$1.comma) {
|
|
2574
3091
|
this.raise(this.start, "Comma is not permitted after the rest element");
|
|
2575
3092
|
}
|
|
2576
3093
|
return this.finishNode(prop, "RestElement")
|
|
2577
3094
|
}
|
|
2578
|
-
// To disallow parenthesized identifier via `this.toAssignable()`.
|
|
2579
|
-
if (this.type === types.parenL && refDestructuringErrors) {
|
|
2580
|
-
if (refDestructuringErrors.parenthesizedAssign < 0) {
|
|
2581
|
-
refDestructuringErrors.parenthesizedAssign = this.start;
|
|
2582
|
-
}
|
|
2583
|
-
if (refDestructuringErrors.parenthesizedBind < 0) {
|
|
2584
|
-
refDestructuringErrors.parenthesizedBind = this.start;
|
|
2585
|
-
}
|
|
2586
|
-
}
|
|
2587
3095
|
// Parse argument.
|
|
2588
3096
|
prop.argument = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
2589
3097
|
// To disallow trailing comma via `this.toAssignable()`.
|
|
2590
|
-
if (this.type === types.comma && refDestructuringErrors && refDestructuringErrors.trailingComma < 0) {
|
|
3098
|
+
if (this.type === types$1.comma && refDestructuringErrors && refDestructuringErrors.trailingComma < 0) {
|
|
2591
3099
|
refDestructuringErrors.trailingComma = this.start;
|
|
2592
3100
|
}
|
|
2593
3101
|
// Finish
|
|
@@ -2601,13 +3109,13 @@ pp$3.parseProperty = function(isPattern, refDestructuringErrors) {
|
|
|
2601
3109
|
startLoc = this.startLoc;
|
|
2602
3110
|
}
|
|
2603
3111
|
if (!isPattern)
|
|
2604
|
-
{ isGenerator = this.eat(types.star); }
|
|
3112
|
+
{ isGenerator = this.eat(types$1.star); }
|
|
2605
3113
|
}
|
|
2606
3114
|
var containsEsc = this.containsEsc;
|
|
2607
3115
|
this.parsePropertyName(prop);
|
|
2608
3116
|
if (!isPattern && !containsEsc && this.options.ecmaVersion >= 8 && !isGenerator && this.isAsyncProp(prop)) {
|
|
2609
3117
|
isAsync = true;
|
|
2610
|
-
isGenerator = this.options.ecmaVersion >= 9 && this.eat(types.star);
|
|
3118
|
+
isGenerator = this.options.ecmaVersion >= 9 && this.eat(types$1.star);
|
|
2611
3119
|
this.parsePropertyName(prop, refDestructuringErrors);
|
|
2612
3120
|
} else {
|
|
2613
3121
|
isAsync = false;
|
|
@@ -2616,14 +3124,14 @@ pp$3.parseProperty = function(isPattern, refDestructuringErrors) {
|
|
|
2616
3124
|
return this.finishNode(prop, "Property")
|
|
2617
3125
|
};
|
|
2618
3126
|
|
|
2619
|
-
pp$
|
|
2620
|
-
if ((isGenerator || isAsync) && this.type === types.colon)
|
|
3127
|
+
pp$5.parsePropertyValue = function(prop, isPattern, isGenerator, isAsync, startPos, startLoc, refDestructuringErrors, containsEsc) {
|
|
3128
|
+
if ((isGenerator || isAsync) && this.type === types$1.colon)
|
|
2621
3129
|
{ this.unexpected(); }
|
|
2622
3130
|
|
|
2623
|
-
if (this.eat(types.colon)) {
|
|
3131
|
+
if (this.eat(types$1.colon)) {
|
|
2624
3132
|
prop.value = isPattern ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(false, refDestructuringErrors);
|
|
2625
3133
|
prop.kind = "init";
|
|
2626
|
-
} else if (this.options.ecmaVersion >= 6 && this.type === types.parenL) {
|
|
3134
|
+
} else if (this.options.ecmaVersion >= 6 && this.type === types$1.parenL) {
|
|
2627
3135
|
if (isPattern) { this.unexpected(); }
|
|
2628
3136
|
prop.kind = "init";
|
|
2629
3137
|
prop.method = true;
|
|
@@ -2631,7 +3139,7 @@ pp$3.parsePropertyValue = function(prop, isPattern, isGenerator, isAsync, startP
|
|
|
2631
3139
|
} else if (!isPattern && !containsEsc &&
|
|
2632
3140
|
this.options.ecmaVersion >= 5 && !prop.computed && prop.key.type === "Identifier" &&
|
|
2633
3141
|
(prop.key.name === "get" || prop.key.name === "set") &&
|
|
2634
|
-
(this.type !== types.comma && this.type !== types.braceR && this.type !== types.eq)) {
|
|
3142
|
+
(this.type !== types$1.comma && this.type !== types$1.braceR && this.type !== types$1.eq)) {
|
|
2635
3143
|
if (isGenerator || isAsync) { this.unexpected(); }
|
|
2636
3144
|
prop.kind = prop.key.name;
|
|
2637
3145
|
this.parsePropertyName(prop);
|
|
@@ -2654,35 +3162,35 @@ pp$3.parsePropertyValue = function(prop, isPattern, isGenerator, isAsync, startP
|
|
|
2654
3162
|
{ this.awaitIdentPos = startPos; }
|
|
2655
3163
|
prop.kind = "init";
|
|
2656
3164
|
if (isPattern) {
|
|
2657
|
-
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key);
|
|
2658
|
-
} else if (this.type === types.eq && refDestructuringErrors) {
|
|
3165
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, this.copyNode(prop.key));
|
|
3166
|
+
} else if (this.type === types$1.eq && refDestructuringErrors) {
|
|
2659
3167
|
if (refDestructuringErrors.shorthandAssign < 0)
|
|
2660
3168
|
{ refDestructuringErrors.shorthandAssign = this.start; }
|
|
2661
|
-
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key);
|
|
3169
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, this.copyNode(prop.key));
|
|
2662
3170
|
} else {
|
|
2663
|
-
prop.value = prop.key;
|
|
3171
|
+
prop.value = this.copyNode(prop.key);
|
|
2664
3172
|
}
|
|
2665
3173
|
prop.shorthand = true;
|
|
2666
3174
|
} else { this.unexpected(); }
|
|
2667
3175
|
};
|
|
2668
3176
|
|
|
2669
|
-
pp$
|
|
3177
|
+
pp$5.parsePropertyName = function(prop) {
|
|
2670
3178
|
if (this.options.ecmaVersion >= 6) {
|
|
2671
|
-
if (this.eat(types.bracketL)) {
|
|
3179
|
+
if (this.eat(types$1.bracketL)) {
|
|
2672
3180
|
prop.computed = true;
|
|
2673
3181
|
prop.key = this.parseMaybeAssign();
|
|
2674
|
-
this.expect(types.bracketR);
|
|
3182
|
+
this.expect(types$1.bracketR);
|
|
2675
3183
|
return prop.key
|
|
2676
3184
|
} else {
|
|
2677
3185
|
prop.computed = false;
|
|
2678
3186
|
}
|
|
2679
3187
|
}
|
|
2680
|
-
return prop.key = this.type === types.num || this.type === types.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never")
|
|
3188
|
+
return prop.key = this.type === types$1.num || this.type === types$1.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never")
|
|
2681
3189
|
};
|
|
2682
3190
|
|
|
2683
3191
|
// Initialize empty function node.
|
|
2684
3192
|
|
|
2685
|
-
pp$
|
|
3193
|
+
pp$5.initFunction = function(node) {
|
|
2686
3194
|
node.id = null;
|
|
2687
3195
|
if (this.options.ecmaVersion >= 6) { node.generator = node.expression = false; }
|
|
2688
3196
|
if (this.options.ecmaVersion >= 8) { node.async = false; }
|
|
@@ -2690,7 +3198,7 @@ pp$3.initFunction = function(node) {
|
|
|
2690
3198
|
|
|
2691
3199
|
// Parse object or class method.
|
|
2692
3200
|
|
|
2693
|
-
pp$
|
|
3201
|
+
pp$5.parseMethod = function(isGenerator, isAsync, allowDirectSuper) {
|
|
2694
3202
|
var node = this.startNode(), oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2695
3203
|
|
|
2696
3204
|
this.initFunction(node);
|
|
@@ -2704,10 +3212,10 @@ pp$3.parseMethod = function(isGenerator, isAsync, allowDirectSuper) {
|
|
|
2704
3212
|
this.awaitIdentPos = 0;
|
|
2705
3213
|
this.enterScope(functionFlags(isAsync, node.generator) | SCOPE_SUPER | (allowDirectSuper ? SCOPE_DIRECT_SUPER : 0));
|
|
2706
3214
|
|
|
2707
|
-
this.expect(types.parenL);
|
|
2708
|
-
node.params = this.parseBindingList(types.parenR, false, this.options.ecmaVersion >= 8);
|
|
3215
|
+
this.expect(types$1.parenL);
|
|
3216
|
+
node.params = this.parseBindingList(types$1.parenR, false, this.options.ecmaVersion >= 8);
|
|
2709
3217
|
this.checkYieldAwaitInDefaultParams();
|
|
2710
|
-
this.parseFunctionBody(node, false, true);
|
|
3218
|
+
this.parseFunctionBody(node, false, true, false);
|
|
2711
3219
|
|
|
2712
3220
|
this.yieldPos = oldYieldPos;
|
|
2713
3221
|
this.awaitPos = oldAwaitPos;
|
|
@@ -2717,7 +3225,7 @@ pp$3.parseMethod = function(isGenerator, isAsync, allowDirectSuper) {
|
|
|
2717
3225
|
|
|
2718
3226
|
// Parse arrow function expression with given parameters.
|
|
2719
3227
|
|
|
2720
|
-
pp$
|
|
3228
|
+
pp$5.parseArrowExpression = function(node, params, isAsync, forInit) {
|
|
2721
3229
|
var oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2722
3230
|
|
|
2723
3231
|
this.enterScope(functionFlags(isAsync, false) | SCOPE_ARROW);
|
|
@@ -2729,7 +3237,7 @@ pp$3.parseArrowExpression = function(node, params, isAsync) {
|
|
|
2729
3237
|
this.awaitIdentPos = 0;
|
|
2730
3238
|
|
|
2731
3239
|
node.params = this.toAssignableList(params, true);
|
|
2732
|
-
this.parseFunctionBody(node, true, false);
|
|
3240
|
+
this.parseFunctionBody(node, true, false, forInit);
|
|
2733
3241
|
|
|
2734
3242
|
this.yieldPos = oldYieldPos;
|
|
2735
3243
|
this.awaitPos = oldAwaitPos;
|
|
@@ -2739,12 +3247,12 @@ pp$3.parseArrowExpression = function(node, params, isAsync) {
|
|
|
2739
3247
|
|
|
2740
3248
|
// Parse function body and check parameters.
|
|
2741
3249
|
|
|
2742
|
-
pp$
|
|
2743
|
-
var isExpression = isArrowFunction && this.type !== types.braceL;
|
|
3250
|
+
pp$5.parseFunctionBody = function(node, isArrowFunction, isMethod, forInit) {
|
|
3251
|
+
var isExpression = isArrowFunction && this.type !== types$1.braceL;
|
|
2744
3252
|
var oldStrict = this.strict, useStrict = false;
|
|
2745
3253
|
|
|
2746
3254
|
if (isExpression) {
|
|
2747
|
-
node.body = this.parseMaybeAssign();
|
|
3255
|
+
node.body = this.parseMaybeAssign(forInit);
|
|
2748
3256
|
node.expression = true;
|
|
2749
3257
|
this.checkParams(node, false);
|
|
2750
3258
|
} else {
|
|
@@ -2767,7 +3275,7 @@ pp$3.parseFunctionBody = function(node, isArrowFunction, isMethod) {
|
|
|
2767
3275
|
// if a let/const declaration in the function clashes with one of the params.
|
|
2768
3276
|
this.checkParams(node, !oldStrict && !useStrict && !isArrowFunction && !isMethod && this.isSimpleParamList(node.params));
|
|
2769
3277
|
// Ensure the function name isn't a forbidden identifier in strict mode, e.g. 'eval'
|
|
2770
|
-
if (this.strict && node.id) { this.
|
|
3278
|
+
if (this.strict && node.id) { this.checkLValSimple(node.id, BIND_OUTSIDE); }
|
|
2771
3279
|
node.body = this.parseBlock(false, undefined, useStrict && !oldStrict);
|
|
2772
3280
|
node.expression = false;
|
|
2773
3281
|
this.adaptDirectivePrologue(node.body.body);
|
|
@@ -2776,7 +3284,7 @@ pp$3.parseFunctionBody = function(node, isArrowFunction, isMethod) {
|
|
|
2776
3284
|
this.exitScope();
|
|
2777
3285
|
};
|
|
2778
3286
|
|
|
2779
|
-
pp$
|
|
3287
|
+
pp$5.isSimpleParamList = function(params) {
|
|
2780
3288
|
for (var i = 0, list = params; i < list.length; i += 1)
|
|
2781
3289
|
{
|
|
2782
3290
|
var param = list[i];
|
|
@@ -2789,13 +3297,13 @@ pp$3.isSimpleParamList = function(params) {
|
|
|
2789
3297
|
// Checks function params for various disallowed patterns such as using "eval"
|
|
2790
3298
|
// or "arguments" and duplicate parameters.
|
|
2791
3299
|
|
|
2792
|
-
pp$
|
|
2793
|
-
var nameHash =
|
|
3300
|
+
pp$5.checkParams = function(node, allowDuplicates) {
|
|
3301
|
+
var nameHash = Object.create(null);
|
|
2794
3302
|
for (var i = 0, list = node.params; i < list.length; i += 1)
|
|
2795
3303
|
{
|
|
2796
3304
|
var param = list[i];
|
|
2797
3305
|
|
|
2798
|
-
this.
|
|
3306
|
+
this.checkLValInnerPattern(param, BIND_VAR, allowDuplicates ? null : nameHash);
|
|
2799
3307
|
}
|
|
2800
3308
|
};
|
|
2801
3309
|
|
|
@@ -2805,20 +3313,20 @@ pp$3.checkParams = function(node, allowDuplicates) {
|
|
|
2805
3313
|
// nothing in between them to be parsed as `null` (which is needed
|
|
2806
3314
|
// for array literals).
|
|
2807
3315
|
|
|
2808
|
-
pp$
|
|
3316
|
+
pp$5.parseExprList = function(close, allowTrailingComma, allowEmpty, refDestructuringErrors) {
|
|
2809
3317
|
var elts = [], first = true;
|
|
2810
3318
|
while (!this.eat(close)) {
|
|
2811
3319
|
if (!first) {
|
|
2812
|
-
this.expect(types.comma);
|
|
3320
|
+
this.expect(types$1.comma);
|
|
2813
3321
|
if (allowTrailingComma && this.afterTrailingComma(close)) { break }
|
|
2814
3322
|
} else { first = false; }
|
|
2815
3323
|
|
|
2816
3324
|
var elt = (void 0);
|
|
2817
|
-
if (allowEmpty && this.type === types.comma)
|
|
3325
|
+
if (allowEmpty && this.type === types$1.comma)
|
|
2818
3326
|
{ elt = null; }
|
|
2819
|
-
else if (this.type === types.ellipsis) {
|
|
3327
|
+
else if (this.type === types$1.ellipsis) {
|
|
2820
3328
|
elt = this.parseSpread(refDestructuringErrors);
|
|
2821
|
-
if (refDestructuringErrors && this.type === types.comma && refDestructuringErrors.trailingComma < 0)
|
|
3329
|
+
if (refDestructuringErrors && this.type === types$1.comma && refDestructuringErrors.trailingComma < 0)
|
|
2822
3330
|
{ refDestructuringErrors.trailingComma = this.start; }
|
|
2823
3331
|
} else {
|
|
2824
3332
|
elt = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
@@ -2828,7 +3336,7 @@ pp$3.parseExprList = function(close, allowTrailingComma, allowEmpty, refDestruct
|
|
|
2828
3336
|
return elts
|
|
2829
3337
|
};
|
|
2830
3338
|
|
|
2831
|
-
pp$
|
|
3339
|
+
pp$5.checkUnreserved = function(ref) {
|
|
2832
3340
|
var start = ref.start;
|
|
2833
3341
|
var end = ref.end;
|
|
2834
3342
|
var name = ref.name;
|
|
@@ -2837,6 +3345,10 @@ pp$3.checkUnreserved = function(ref) {
|
|
|
2837
3345
|
{ this.raiseRecoverable(start, "Cannot use 'yield' as identifier inside a generator"); }
|
|
2838
3346
|
if (this.inAsync && name === "await")
|
|
2839
3347
|
{ this.raiseRecoverable(start, "Cannot use 'await' as identifier inside an async function"); }
|
|
3348
|
+
if (this.currentThisScope().inClassFieldInit && name === "arguments")
|
|
3349
|
+
{ this.raiseRecoverable(start, "Cannot use 'arguments' in class field initializer"); }
|
|
3350
|
+
if (this.inClassStaticBlock && (name === "arguments" || name === "await"))
|
|
3351
|
+
{ this.raise(start, ("Cannot use " + name + " in class static initialization block")); }
|
|
2840
3352
|
if (this.keywords.test(name))
|
|
2841
3353
|
{ this.raise(start, ("Unexpected keyword '" + name + "'")); }
|
|
2842
3354
|
if (this.options.ecmaVersion < 6 &&
|
|
@@ -2853,9 +3365,9 @@ pp$3.checkUnreserved = function(ref) {
|
|
|
2853
3365
|
// when parsing properties), it will also convert keywords into
|
|
2854
3366
|
// identifiers.
|
|
2855
3367
|
|
|
2856
|
-
pp$
|
|
3368
|
+
pp$5.parseIdent = function(liberal, isBinding) {
|
|
2857
3369
|
var node = this.startNode();
|
|
2858
|
-
if (this.type === types.name) {
|
|
3370
|
+
if (this.type === types$1.name) {
|
|
2859
3371
|
node.name = this.value;
|
|
2860
3372
|
} else if (this.type.keyword) {
|
|
2861
3373
|
node.name = this.type.keyword;
|
|
@@ -2881,29 +3393,49 @@ pp$3.parseIdent = function(liberal, isBinding) {
|
|
|
2881
3393
|
return node
|
|
2882
3394
|
};
|
|
2883
3395
|
|
|
3396
|
+
pp$5.parsePrivateIdent = function() {
|
|
3397
|
+
var node = this.startNode();
|
|
3398
|
+
if (this.type === types$1.privateId) {
|
|
3399
|
+
node.name = this.value;
|
|
3400
|
+
} else {
|
|
3401
|
+
this.unexpected();
|
|
3402
|
+
}
|
|
3403
|
+
this.next();
|
|
3404
|
+
this.finishNode(node, "PrivateIdentifier");
|
|
3405
|
+
|
|
3406
|
+
// For validating existence
|
|
3407
|
+
if (this.privateNameStack.length === 0) {
|
|
3408
|
+
this.raise(node.start, ("Private field '#" + (node.name) + "' must be declared in an enclosing class"));
|
|
3409
|
+
} else {
|
|
3410
|
+
this.privateNameStack[this.privateNameStack.length - 1].used.push(node);
|
|
3411
|
+
}
|
|
3412
|
+
|
|
3413
|
+
return node
|
|
3414
|
+
};
|
|
3415
|
+
|
|
2884
3416
|
// Parses yield expression inside generator.
|
|
2885
3417
|
|
|
2886
|
-
pp$
|
|
3418
|
+
pp$5.parseYield = function(forInit) {
|
|
2887
3419
|
if (!this.yieldPos) { this.yieldPos = this.start; }
|
|
2888
3420
|
|
|
2889
3421
|
var node = this.startNode();
|
|
2890
3422
|
this.next();
|
|
2891
|
-
if (this.type === types.semi || this.canInsertSemicolon() || (this.type !== types.star && !this.type.startsExpr)) {
|
|
3423
|
+
if (this.type === types$1.semi || this.canInsertSemicolon() || (this.type !== types$1.star && !this.type.startsExpr)) {
|
|
2892
3424
|
node.delegate = false;
|
|
2893
3425
|
node.argument = null;
|
|
2894
3426
|
} else {
|
|
2895
|
-
node.delegate = this.eat(types.star);
|
|
2896
|
-
node.argument = this.parseMaybeAssign(
|
|
3427
|
+
node.delegate = this.eat(types$1.star);
|
|
3428
|
+
node.argument = this.parseMaybeAssign(forInit);
|
|
2897
3429
|
}
|
|
2898
3430
|
return this.finishNode(node, "YieldExpression")
|
|
2899
3431
|
};
|
|
2900
3432
|
|
|
2901
|
-
pp$
|
|
3433
|
+
pp$5.parseAwait = function(forInit) {
|
|
2902
3434
|
if (!this.awaitPos) { this.awaitPos = this.start; }
|
|
2903
3435
|
|
|
2904
3436
|
var node = this.startNode();
|
|
2905
3437
|
this.next();
|
|
2906
|
-
node.argument = this.parseMaybeUnary(null, false);
|
|
3438
|
+
node.argument = this.parseMaybeUnary(null, true, false, forInit);
|
|
2907
3439
|
return this.finishNode(node, "AwaitExpression")
|
|
2908
3440
|
};
|
|
2909
3441
|
|
|
@@ -2931,7 +3463,7 @@ pp$4.curPosition = function() {
|
|
|
2931
3463
|
}
|
|
2932
3464
|
};
|
|
2933
3465
|
|
|
2934
|
-
var pp$
|
|
3466
|
+
var pp$3 = Parser.prototype;
|
|
2935
3467
|
|
|
2936
3468
|
var Scope = function Scope(flags) {
|
|
2937
3469
|
this.flags = flags;
|
|
@@ -2941,26 +3473,28 @@ var Scope = function Scope(flags) {
|
|
|
2941
3473
|
this.lexical = [];
|
|
2942
3474
|
// A list of lexically-declared FunctionDeclaration names in the current lexical scope
|
|
2943
3475
|
this.functions = [];
|
|
3476
|
+
// A switch to disallow the identifier reference 'arguments'
|
|
3477
|
+
this.inClassFieldInit = false;
|
|
2944
3478
|
};
|
|
2945
3479
|
|
|
2946
3480
|
// The functions in this module keep track of declared variables in the current scope in order to detect duplicate variable names.
|
|
2947
3481
|
|
|
2948
|
-
pp$
|
|
3482
|
+
pp$3.enterScope = function(flags) {
|
|
2949
3483
|
this.scopeStack.push(new Scope(flags));
|
|
2950
3484
|
};
|
|
2951
3485
|
|
|
2952
|
-
pp$
|
|
3486
|
+
pp$3.exitScope = function() {
|
|
2953
3487
|
this.scopeStack.pop();
|
|
2954
3488
|
};
|
|
2955
3489
|
|
|
2956
3490
|
// The spec says:
|
|
2957
3491
|
// > At the top level of a function, or script, function declarations are
|
|
2958
3492
|
// > treated like var declarations rather than like lexical declarations.
|
|
2959
|
-
pp$
|
|
3493
|
+
pp$3.treatFunctionsAsVarInScope = function(scope) {
|
|
2960
3494
|
return (scope.flags & SCOPE_FUNCTION) || !this.inModule && (scope.flags & SCOPE_TOP)
|
|
2961
3495
|
};
|
|
2962
3496
|
|
|
2963
|
-
pp$
|
|
3497
|
+
pp$3.declareName = function(name, bindingType, pos) {
|
|
2964
3498
|
var redeclared = false;
|
|
2965
3499
|
if (bindingType === BIND_LEXICAL) {
|
|
2966
3500
|
var scope = this.currentScope();
|
|
@@ -2995,7 +3529,7 @@ pp$5.declareName = function(name, bindingType, pos) {
|
|
|
2995
3529
|
if (redeclared) { this.raiseRecoverable(pos, ("Identifier '" + name + "' has already been declared")); }
|
|
2996
3530
|
};
|
|
2997
3531
|
|
|
2998
|
-
pp$
|
|
3532
|
+
pp$3.checkLocalExport = function(id) {
|
|
2999
3533
|
// scope.functions must be empty as Module code is always strict.
|
|
3000
3534
|
if (this.scopeStack[0].lexical.indexOf(id.name) === -1 &&
|
|
3001
3535
|
this.scopeStack[0].var.indexOf(id.name) === -1) {
|
|
@@ -3003,11 +3537,11 @@ pp$5.checkLocalExport = function(id) {
|
|
|
3003
3537
|
}
|
|
3004
3538
|
};
|
|
3005
3539
|
|
|
3006
|
-
pp$
|
|
3540
|
+
pp$3.currentScope = function() {
|
|
3007
3541
|
return this.scopeStack[this.scopeStack.length - 1]
|
|
3008
3542
|
};
|
|
3009
3543
|
|
|
3010
|
-
pp$
|
|
3544
|
+
pp$3.currentVarScope = function() {
|
|
3011
3545
|
for (var i = this.scopeStack.length - 1;; i--) {
|
|
3012
3546
|
var scope = this.scopeStack[i];
|
|
3013
3547
|
if (scope.flags & SCOPE_VAR) { return scope }
|
|
@@ -3015,7 +3549,7 @@ pp$5.currentVarScope = function() {
|
|
|
3015
3549
|
};
|
|
3016
3550
|
|
|
3017
3551
|
// Could be useful for `this`, `new.target`, `super()`, `super.property`, and `super[property]`.
|
|
3018
|
-
pp$
|
|
3552
|
+
pp$3.currentThisScope = function() {
|
|
3019
3553
|
for (var i = this.scopeStack.length - 1;; i--) {
|
|
3020
3554
|
var scope = this.scopeStack[i];
|
|
3021
3555
|
if (scope.flags & SCOPE_VAR && !(scope.flags & SCOPE_ARROW)) { return scope }
|
|
@@ -3036,13 +3570,13 @@ var Node = function Node(parser, pos, loc) {
|
|
|
3036
3570
|
|
|
3037
3571
|
// Start an AST node, attaching a start offset.
|
|
3038
3572
|
|
|
3039
|
-
var pp$
|
|
3573
|
+
var pp$2 = Parser.prototype;
|
|
3040
3574
|
|
|
3041
|
-
pp$
|
|
3575
|
+
pp$2.startNode = function() {
|
|
3042
3576
|
return new Node(this, this.start, this.startLoc)
|
|
3043
3577
|
};
|
|
3044
3578
|
|
|
3045
|
-
pp$
|
|
3579
|
+
pp$2.startNodeAt = function(pos, loc) {
|
|
3046
3580
|
return new Node(this, pos, loc)
|
|
3047
3581
|
};
|
|
3048
3582
|
|
|
@@ -3058,156 +3592,20 @@ function finishNodeAt(node, type, pos, loc) {
|
|
|
3058
3592
|
return node
|
|
3059
3593
|
}
|
|
3060
3594
|
|
|
3061
|
-
pp$
|
|
3595
|
+
pp$2.finishNode = function(node, type) {
|
|
3062
3596
|
return finishNodeAt.call(this, node, type, this.lastTokEnd, this.lastTokEndLoc)
|
|
3063
3597
|
};
|
|
3064
3598
|
|
|
3065
3599
|
// Finish node at given position
|
|
3066
3600
|
|
|
3067
|
-
pp$
|
|
3601
|
+
pp$2.finishNodeAt = function(node, type, pos, loc) {
|
|
3068
3602
|
return finishNodeAt.call(this, node, type, pos, loc)
|
|
3069
3603
|
};
|
|
3070
3604
|
|
|
3071
|
-
|
|
3072
|
-
|
|
3073
|
-
var
|
|
3074
|
-
|
|
3075
|
-
this.isExpr = !!isExpr;
|
|
3076
|
-
this.preserveSpace = !!preserveSpace;
|
|
3077
|
-
this.override = override;
|
|
3078
|
-
this.generator = !!generator;
|
|
3079
|
-
};
|
|
3080
|
-
|
|
3081
|
-
var types$1 = {
|
|
3082
|
-
b_stat: new TokContext("{", false),
|
|
3083
|
-
b_expr: new TokContext("{", true),
|
|
3084
|
-
b_tmpl: new TokContext("${", false),
|
|
3085
|
-
p_stat: new TokContext("(", false),
|
|
3086
|
-
p_expr: new TokContext("(", true),
|
|
3087
|
-
q_tmpl: new TokContext("`", true, true, function (p) { return p.tryReadTemplateToken(); }),
|
|
3088
|
-
f_stat: new TokContext("function", false),
|
|
3089
|
-
f_expr: new TokContext("function", true),
|
|
3090
|
-
f_expr_gen: new TokContext("function", true, false, null, true),
|
|
3091
|
-
f_gen: new TokContext("function", false, false, null, true)
|
|
3092
|
-
};
|
|
3093
|
-
|
|
3094
|
-
var pp$7 = Parser.prototype;
|
|
3095
|
-
|
|
3096
|
-
pp$7.initialContext = function() {
|
|
3097
|
-
return [types$1.b_stat]
|
|
3098
|
-
};
|
|
3099
|
-
|
|
3100
|
-
pp$7.braceIsBlock = function(prevType) {
|
|
3101
|
-
var parent = this.curContext();
|
|
3102
|
-
if (parent === types$1.f_expr || parent === types$1.f_stat)
|
|
3103
|
-
{ return true }
|
|
3104
|
-
if (prevType === types.colon && (parent === types$1.b_stat || parent === types$1.b_expr))
|
|
3105
|
-
{ return !parent.isExpr }
|
|
3106
|
-
|
|
3107
|
-
// The check for `tt.name && exprAllowed` detects whether we are
|
|
3108
|
-
// after a `yield` or `of` construct. See the `updateContext` for
|
|
3109
|
-
// `tt.name`.
|
|
3110
|
-
if (prevType === types._return || prevType === types.name && this.exprAllowed)
|
|
3111
|
-
{ return lineBreak.test(this.input.slice(this.lastTokEnd, this.start)) }
|
|
3112
|
-
if (prevType === types._else || prevType === types.semi || prevType === types.eof || prevType === types.parenR || prevType === types.arrow)
|
|
3113
|
-
{ return true }
|
|
3114
|
-
if (prevType === types.braceL)
|
|
3115
|
-
{ return parent === types$1.b_stat }
|
|
3116
|
-
if (prevType === types._var || prevType === types._const || prevType === types.name)
|
|
3117
|
-
{ return false }
|
|
3118
|
-
return !this.exprAllowed
|
|
3119
|
-
};
|
|
3120
|
-
|
|
3121
|
-
pp$7.inGeneratorContext = function() {
|
|
3122
|
-
for (var i = this.context.length - 1; i >= 1; i--) {
|
|
3123
|
-
var context = this.context[i];
|
|
3124
|
-
if (context.token === "function")
|
|
3125
|
-
{ return context.generator }
|
|
3126
|
-
}
|
|
3127
|
-
return false
|
|
3128
|
-
};
|
|
3129
|
-
|
|
3130
|
-
pp$7.updateContext = function(prevType) {
|
|
3131
|
-
var update, type = this.type;
|
|
3132
|
-
if (type.keyword && prevType === types.dot)
|
|
3133
|
-
{ this.exprAllowed = false; }
|
|
3134
|
-
else if (update = type.updateContext)
|
|
3135
|
-
{ update.call(this, prevType); }
|
|
3136
|
-
else
|
|
3137
|
-
{ this.exprAllowed = type.beforeExpr; }
|
|
3138
|
-
};
|
|
3139
|
-
|
|
3140
|
-
// Token-specific context update code
|
|
3141
|
-
|
|
3142
|
-
types.parenR.updateContext = types.braceR.updateContext = function() {
|
|
3143
|
-
if (this.context.length === 1) {
|
|
3144
|
-
this.exprAllowed = true;
|
|
3145
|
-
return
|
|
3146
|
-
}
|
|
3147
|
-
var out = this.context.pop();
|
|
3148
|
-
if (out === types$1.b_stat && this.curContext().token === "function") {
|
|
3149
|
-
out = this.context.pop();
|
|
3150
|
-
}
|
|
3151
|
-
this.exprAllowed = !out.isExpr;
|
|
3152
|
-
};
|
|
3153
|
-
|
|
3154
|
-
types.braceL.updateContext = function(prevType) {
|
|
3155
|
-
this.context.push(this.braceIsBlock(prevType) ? types$1.b_stat : types$1.b_expr);
|
|
3156
|
-
this.exprAllowed = true;
|
|
3157
|
-
};
|
|
3158
|
-
|
|
3159
|
-
types.dollarBraceL.updateContext = function() {
|
|
3160
|
-
this.context.push(types$1.b_tmpl);
|
|
3161
|
-
this.exprAllowed = true;
|
|
3162
|
-
};
|
|
3163
|
-
|
|
3164
|
-
types.parenL.updateContext = function(prevType) {
|
|
3165
|
-
var statementParens = prevType === types._if || prevType === types._for || prevType === types._with || prevType === types._while;
|
|
3166
|
-
this.context.push(statementParens ? types$1.p_stat : types$1.p_expr);
|
|
3167
|
-
this.exprAllowed = true;
|
|
3168
|
-
};
|
|
3169
|
-
|
|
3170
|
-
types.incDec.updateContext = function() {
|
|
3171
|
-
// tokExprAllowed stays unchanged
|
|
3172
|
-
};
|
|
3173
|
-
|
|
3174
|
-
types._function.updateContext = types._class.updateContext = function(prevType) {
|
|
3175
|
-
if (prevType.beforeExpr && prevType !== types.semi && prevType !== types._else &&
|
|
3176
|
-
!(prevType === types._return && lineBreak.test(this.input.slice(this.lastTokEnd, this.start))) &&
|
|
3177
|
-
!((prevType === types.colon || prevType === types.braceL) && this.curContext() === types$1.b_stat))
|
|
3178
|
-
{ this.context.push(types$1.f_expr); }
|
|
3179
|
-
else
|
|
3180
|
-
{ this.context.push(types$1.f_stat); }
|
|
3181
|
-
this.exprAllowed = false;
|
|
3182
|
-
};
|
|
3183
|
-
|
|
3184
|
-
types.backQuote.updateContext = function() {
|
|
3185
|
-
if (this.curContext() === types$1.q_tmpl)
|
|
3186
|
-
{ this.context.pop(); }
|
|
3187
|
-
else
|
|
3188
|
-
{ this.context.push(types$1.q_tmpl); }
|
|
3189
|
-
this.exprAllowed = false;
|
|
3190
|
-
};
|
|
3191
|
-
|
|
3192
|
-
types.star.updateContext = function(prevType) {
|
|
3193
|
-
if (prevType === types._function) {
|
|
3194
|
-
var index = this.context.length - 1;
|
|
3195
|
-
if (this.context[index] === types$1.f_expr)
|
|
3196
|
-
{ this.context[index] = types$1.f_expr_gen; }
|
|
3197
|
-
else
|
|
3198
|
-
{ this.context[index] = types$1.f_gen; }
|
|
3199
|
-
}
|
|
3200
|
-
this.exprAllowed = true;
|
|
3201
|
-
};
|
|
3202
|
-
|
|
3203
|
-
types.name.updateContext = function(prevType) {
|
|
3204
|
-
var allowed = false;
|
|
3205
|
-
if (this.options.ecmaVersion >= 6 && prevType !== types.dot) {
|
|
3206
|
-
if (this.value === "of" && !this.exprAllowed ||
|
|
3207
|
-
this.value === "yield" && this.inGeneratorContext())
|
|
3208
|
-
{ allowed = true; }
|
|
3209
|
-
}
|
|
3210
|
-
this.exprAllowed = allowed;
|
|
3605
|
+
pp$2.copyNode = function(node) {
|
|
3606
|
+
var newNode = new Node(this, node.start, this.startLoc);
|
|
3607
|
+
for (var prop in node) { newNode[prop] = node[prop]; }
|
|
3608
|
+
return newNode
|
|
3211
3609
|
};
|
|
3212
3610
|
|
|
3213
3611
|
// This file contains Unicode properties extracted from the ECMAScript
|
|
@@ -3218,23 +3616,31 @@ types.name.updateContext = function(prevType) {
|
|
|
3218
3616
|
var ecma9BinaryProperties = "ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS";
|
|
3219
3617
|
var ecma10BinaryProperties = ecma9BinaryProperties + " Extended_Pictographic";
|
|
3220
3618
|
var ecma11BinaryProperties = ecma10BinaryProperties;
|
|
3619
|
+
var ecma12BinaryProperties = ecma11BinaryProperties + " EBase EComp EMod EPres ExtPict";
|
|
3620
|
+
var ecma13BinaryProperties = ecma12BinaryProperties;
|
|
3221
3621
|
var unicodeBinaryProperties = {
|
|
3222
3622
|
9: ecma9BinaryProperties,
|
|
3223
3623
|
10: ecma10BinaryProperties,
|
|
3224
|
-
11: ecma11BinaryProperties
|
|
3624
|
+
11: ecma11BinaryProperties,
|
|
3625
|
+
12: ecma12BinaryProperties,
|
|
3626
|
+
13: ecma13BinaryProperties
|
|
3225
3627
|
};
|
|
3226
3628
|
|
|
3227
3629
|
// #table-unicode-general-category-values
|
|
3228
3630
|
var unicodeGeneralCategoryValues = "Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu";
|
|
3229
3631
|
|
|
3230
3632
|
// #table-unicode-script-values
|
|
3231
|
-
var ecma9ScriptValues = "Adlam Adlm Ahom
|
|
3633
|
+
var ecma9ScriptValues = "Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb";
|
|
3232
3634
|
var ecma10ScriptValues = ecma9ScriptValues + " Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd";
|
|
3233
3635
|
var ecma11ScriptValues = ecma10ScriptValues + " Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho";
|
|
3636
|
+
var ecma12ScriptValues = ecma11ScriptValues + " Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi";
|
|
3637
|
+
var ecma13ScriptValues = ecma12ScriptValues + " Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith";
|
|
3234
3638
|
var unicodeScriptValues = {
|
|
3235
3639
|
9: ecma9ScriptValues,
|
|
3236
3640
|
10: ecma10ScriptValues,
|
|
3237
|
-
11: ecma11ScriptValues
|
|
3641
|
+
11: ecma11ScriptValues,
|
|
3642
|
+
12: ecma12ScriptValues,
|
|
3643
|
+
13: ecma13ScriptValues
|
|
3238
3644
|
};
|
|
3239
3645
|
|
|
3240
3646
|
var data = {};
|
|
@@ -3252,16 +3658,19 @@ function buildUnicodeData(ecmaVersion) {
|
|
|
3252
3658
|
d.nonBinary.sc = d.nonBinary.Script;
|
|
3253
3659
|
d.nonBinary.scx = d.nonBinary.Script_Extensions;
|
|
3254
3660
|
}
|
|
3255
|
-
buildUnicodeData(9);
|
|
3256
|
-
buildUnicodeData(10);
|
|
3257
|
-
buildUnicodeData(11);
|
|
3258
3661
|
|
|
3259
|
-
var
|
|
3662
|
+
for (var i = 0, list = [9, 10, 11, 12, 13]; i < list.length; i += 1) {
|
|
3663
|
+
var ecmaVersion = list[i];
|
|
3664
|
+
|
|
3665
|
+
buildUnicodeData(ecmaVersion);
|
|
3666
|
+
}
|
|
3667
|
+
|
|
3668
|
+
var pp$1 = Parser.prototype;
|
|
3260
3669
|
|
|
3261
3670
|
var RegExpValidationState = function RegExpValidationState(parser) {
|
|
3262
3671
|
this.parser = parser;
|
|
3263
|
-
this.validFlags = "gim" + (parser.options.ecmaVersion >= 6 ? "uy" : "") + (parser.options.ecmaVersion >= 9 ? "s" : "");
|
|
3264
|
-
this.unicodeProperties = data[parser.options.ecmaVersion >=
|
|
3672
|
+
this.validFlags = "gim" + (parser.options.ecmaVersion >= 6 ? "uy" : "") + (parser.options.ecmaVersion >= 9 ? "s" : "") + (parser.options.ecmaVersion >= 13 ? "d" : "");
|
|
3673
|
+
this.unicodeProperties = data[parser.options.ecmaVersion >= 13 ? 13 : parser.options.ecmaVersion];
|
|
3265
3674
|
this.source = "";
|
|
3266
3675
|
this.flags = "";
|
|
3267
3676
|
this.start = 0;
|
|
@@ -3352,19 +3761,13 @@ RegExpValidationState.prototype.eat = function eat (ch, forceU) {
|
|
|
3352
3761
|
return false
|
|
3353
3762
|
};
|
|
3354
3763
|
|
|
3355
|
-
function codePointToString(ch) {
|
|
3356
|
-
if (ch <= 0xFFFF) { return String.fromCharCode(ch) }
|
|
3357
|
-
ch -= 0x10000;
|
|
3358
|
-
return String.fromCharCode((ch >> 10) + 0xD800, (ch & 0x03FF) + 0xDC00)
|
|
3359
|
-
}
|
|
3360
|
-
|
|
3361
3764
|
/**
|
|
3362
3765
|
* Validate the flags part of a given RegExpLiteral.
|
|
3363
3766
|
*
|
|
3364
3767
|
* @param {RegExpValidationState} state The state to validate RegExp.
|
|
3365
3768
|
* @returns {void}
|
|
3366
3769
|
*/
|
|
3367
|
-
pp$
|
|
3770
|
+
pp$1.validateRegExpFlags = function(state) {
|
|
3368
3771
|
var validFlags = state.validFlags;
|
|
3369
3772
|
var flags = state.flags;
|
|
3370
3773
|
|
|
@@ -3385,7 +3788,7 @@ pp$8.validateRegExpFlags = function(state) {
|
|
|
3385
3788
|
* @param {RegExpValidationState} state The state to validate RegExp.
|
|
3386
3789
|
* @returns {void}
|
|
3387
3790
|
*/
|
|
3388
|
-
pp$
|
|
3791
|
+
pp$1.validateRegExpPattern = function(state) {
|
|
3389
3792
|
this.regexp_pattern(state);
|
|
3390
3793
|
|
|
3391
3794
|
// The goal symbol for the parse is |Pattern[~U, ~N]|. If the result of
|
|
@@ -3400,7 +3803,7 @@ pp$8.validateRegExpPattern = function(state) {
|
|
|
3400
3803
|
};
|
|
3401
3804
|
|
|
3402
3805
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Pattern
|
|
3403
|
-
pp$
|
|
3806
|
+
pp$1.regexp_pattern = function(state) {
|
|
3404
3807
|
state.pos = 0;
|
|
3405
3808
|
state.lastIntValue = 0;
|
|
3406
3809
|
state.lastStringValue = "";
|
|
@@ -3434,7 +3837,7 @@ pp$8.regexp_pattern = function(state) {
|
|
|
3434
3837
|
};
|
|
3435
3838
|
|
|
3436
3839
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Disjunction
|
|
3437
|
-
pp$
|
|
3840
|
+
pp$1.regexp_disjunction = function(state) {
|
|
3438
3841
|
this.regexp_alternative(state);
|
|
3439
3842
|
while (state.eat(0x7C /* | */)) {
|
|
3440
3843
|
this.regexp_alternative(state);
|
|
@@ -3450,13 +3853,13 @@ pp$8.regexp_disjunction = function(state) {
|
|
|
3450
3853
|
};
|
|
3451
3854
|
|
|
3452
3855
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Alternative
|
|
3453
|
-
pp$
|
|
3856
|
+
pp$1.regexp_alternative = function(state) {
|
|
3454
3857
|
while (state.pos < state.source.length && this.regexp_eatTerm(state))
|
|
3455
3858
|
{ }
|
|
3456
3859
|
};
|
|
3457
3860
|
|
|
3458
3861
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-Term
|
|
3459
|
-
pp$
|
|
3862
|
+
pp$1.regexp_eatTerm = function(state) {
|
|
3460
3863
|
if (this.regexp_eatAssertion(state)) {
|
|
3461
3864
|
// Handle `QuantifiableAssertion Quantifier` alternative.
|
|
3462
3865
|
// `state.lastAssertionIsQuantifiable` is true if the last eaten Assertion
|
|
@@ -3479,7 +3882,7 @@ pp$8.regexp_eatTerm = function(state) {
|
|
|
3479
3882
|
};
|
|
3480
3883
|
|
|
3481
3884
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-Assertion
|
|
3482
|
-
pp$
|
|
3885
|
+
pp$1.regexp_eatAssertion = function(state) {
|
|
3483
3886
|
var start = state.pos;
|
|
3484
3887
|
state.lastAssertionIsQuantifiable = false;
|
|
3485
3888
|
|
|
@@ -3517,7 +3920,7 @@ pp$8.regexp_eatAssertion = function(state) {
|
|
|
3517
3920
|
};
|
|
3518
3921
|
|
|
3519
3922
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Quantifier
|
|
3520
|
-
pp$
|
|
3923
|
+
pp$1.regexp_eatQuantifier = function(state, noError) {
|
|
3521
3924
|
if ( noError === void 0 ) noError = false;
|
|
3522
3925
|
|
|
3523
3926
|
if (this.regexp_eatQuantifierPrefix(state, noError)) {
|
|
@@ -3528,7 +3931,7 @@ pp$8.regexp_eatQuantifier = function(state, noError) {
|
|
|
3528
3931
|
};
|
|
3529
3932
|
|
|
3530
3933
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-QuantifierPrefix
|
|
3531
|
-
pp$
|
|
3934
|
+
pp$1.regexp_eatQuantifierPrefix = function(state, noError) {
|
|
3532
3935
|
return (
|
|
3533
3936
|
state.eat(0x2A /* * */) ||
|
|
3534
3937
|
state.eat(0x2B /* + */) ||
|
|
@@ -3536,7 +3939,7 @@ pp$8.regexp_eatQuantifierPrefix = function(state, noError) {
|
|
|
3536
3939
|
this.regexp_eatBracedQuantifier(state, noError)
|
|
3537
3940
|
)
|
|
3538
3941
|
};
|
|
3539
|
-
pp$
|
|
3942
|
+
pp$1.regexp_eatBracedQuantifier = function(state, noError) {
|
|
3540
3943
|
var start = state.pos;
|
|
3541
3944
|
if (state.eat(0x7B /* { */)) {
|
|
3542
3945
|
var min = 0, max = -1;
|
|
@@ -3562,7 +3965,7 @@ pp$8.regexp_eatBracedQuantifier = function(state, noError) {
|
|
|
3562
3965
|
};
|
|
3563
3966
|
|
|
3564
3967
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Atom
|
|
3565
|
-
pp$
|
|
3968
|
+
pp$1.regexp_eatAtom = function(state) {
|
|
3566
3969
|
return (
|
|
3567
3970
|
this.regexp_eatPatternCharacters(state) ||
|
|
3568
3971
|
state.eat(0x2E /* . */) ||
|
|
@@ -3572,7 +3975,7 @@ pp$8.regexp_eatAtom = function(state) {
|
|
|
3572
3975
|
this.regexp_eatCapturingGroup(state)
|
|
3573
3976
|
)
|
|
3574
3977
|
};
|
|
3575
|
-
pp$
|
|
3978
|
+
pp$1.regexp_eatReverseSolidusAtomEscape = function(state) {
|
|
3576
3979
|
var start = state.pos;
|
|
3577
3980
|
if (state.eat(0x5C /* \ */)) {
|
|
3578
3981
|
if (this.regexp_eatAtomEscape(state)) {
|
|
@@ -3582,7 +3985,7 @@ pp$8.regexp_eatReverseSolidusAtomEscape = function(state) {
|
|
|
3582
3985
|
}
|
|
3583
3986
|
return false
|
|
3584
3987
|
};
|
|
3585
|
-
pp$
|
|
3988
|
+
pp$1.regexp_eatUncapturingGroup = function(state) {
|
|
3586
3989
|
var start = state.pos;
|
|
3587
3990
|
if (state.eat(0x28 /* ( */)) {
|
|
3588
3991
|
if (state.eat(0x3F /* ? */) && state.eat(0x3A /* : */)) {
|
|
@@ -3596,7 +3999,7 @@ pp$8.regexp_eatUncapturingGroup = function(state) {
|
|
|
3596
3999
|
}
|
|
3597
4000
|
return false
|
|
3598
4001
|
};
|
|
3599
|
-
pp$
|
|
4002
|
+
pp$1.regexp_eatCapturingGroup = function(state) {
|
|
3600
4003
|
if (state.eat(0x28 /* ( */)) {
|
|
3601
4004
|
if (this.options.ecmaVersion >= 9) {
|
|
3602
4005
|
this.regexp_groupSpecifier(state);
|
|
@@ -3614,7 +4017,7 @@ pp$8.regexp_eatCapturingGroup = function(state) {
|
|
|
3614
4017
|
};
|
|
3615
4018
|
|
|
3616
4019
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ExtendedAtom
|
|
3617
|
-
pp$
|
|
4020
|
+
pp$1.regexp_eatExtendedAtom = function(state) {
|
|
3618
4021
|
return (
|
|
3619
4022
|
state.eat(0x2E /* . */) ||
|
|
3620
4023
|
this.regexp_eatReverseSolidusAtomEscape(state) ||
|
|
@@ -3627,7 +4030,7 @@ pp$8.regexp_eatExtendedAtom = function(state) {
|
|
|
3627
4030
|
};
|
|
3628
4031
|
|
|
3629
4032
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-InvalidBracedQuantifier
|
|
3630
|
-
pp$
|
|
4033
|
+
pp$1.regexp_eatInvalidBracedQuantifier = function(state) {
|
|
3631
4034
|
if (this.regexp_eatBracedQuantifier(state, true)) {
|
|
3632
4035
|
state.raise("Nothing to repeat");
|
|
3633
4036
|
}
|
|
@@ -3635,7 +4038,7 @@ pp$8.regexp_eatInvalidBracedQuantifier = function(state) {
|
|
|
3635
4038
|
};
|
|
3636
4039
|
|
|
3637
4040
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-SyntaxCharacter
|
|
3638
|
-
pp$
|
|
4041
|
+
pp$1.regexp_eatSyntaxCharacter = function(state) {
|
|
3639
4042
|
var ch = state.current();
|
|
3640
4043
|
if (isSyntaxCharacter(ch)) {
|
|
3641
4044
|
state.lastIntValue = ch;
|
|
@@ -3657,7 +4060,7 @@ function isSyntaxCharacter(ch) {
|
|
|
3657
4060
|
|
|
3658
4061
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-PatternCharacter
|
|
3659
4062
|
// But eat eager.
|
|
3660
|
-
pp$
|
|
4063
|
+
pp$1.regexp_eatPatternCharacters = function(state) {
|
|
3661
4064
|
var start = state.pos;
|
|
3662
4065
|
var ch = 0;
|
|
3663
4066
|
while ((ch = state.current()) !== -1 && !isSyntaxCharacter(ch)) {
|
|
@@ -3667,7 +4070,7 @@ pp$8.regexp_eatPatternCharacters = function(state) {
|
|
|
3667
4070
|
};
|
|
3668
4071
|
|
|
3669
4072
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ExtendedPatternCharacter
|
|
3670
|
-
pp$
|
|
4073
|
+
pp$1.regexp_eatExtendedPatternCharacter = function(state) {
|
|
3671
4074
|
var ch = state.current();
|
|
3672
4075
|
if (
|
|
3673
4076
|
ch !== -1 &&
|
|
@@ -3688,7 +4091,7 @@ pp$8.regexp_eatExtendedPatternCharacter = function(state) {
|
|
|
3688
4091
|
// GroupSpecifier ::
|
|
3689
4092
|
// [empty]
|
|
3690
4093
|
// `?` GroupName
|
|
3691
|
-
pp$
|
|
4094
|
+
pp$1.regexp_groupSpecifier = function(state) {
|
|
3692
4095
|
if (state.eat(0x3F /* ? */)) {
|
|
3693
4096
|
if (this.regexp_eatGroupName(state)) {
|
|
3694
4097
|
if (state.groupNames.indexOf(state.lastStringValue) !== -1) {
|
|
@@ -3704,7 +4107,7 @@ pp$8.regexp_groupSpecifier = function(state) {
|
|
|
3704
4107
|
// GroupName ::
|
|
3705
4108
|
// `<` RegExpIdentifierName `>`
|
|
3706
4109
|
// Note: this updates `state.lastStringValue` property with the eaten name.
|
|
3707
|
-
pp$
|
|
4110
|
+
pp$1.regexp_eatGroupName = function(state) {
|
|
3708
4111
|
state.lastStringValue = "";
|
|
3709
4112
|
if (state.eat(0x3C /* < */)) {
|
|
3710
4113
|
if (this.regexp_eatRegExpIdentifierName(state) && state.eat(0x3E /* > */)) {
|
|
@@ -3719,7 +4122,7 @@ pp$8.regexp_eatGroupName = function(state) {
|
|
|
3719
4122
|
// RegExpIdentifierStart
|
|
3720
4123
|
// RegExpIdentifierName RegExpIdentifierPart
|
|
3721
4124
|
// Note: this updates `state.lastStringValue` property with the eaten name.
|
|
3722
|
-
pp$
|
|
4125
|
+
pp$1.regexp_eatRegExpIdentifierName = function(state) {
|
|
3723
4126
|
state.lastStringValue = "";
|
|
3724
4127
|
if (this.regexp_eatRegExpIdentifierStart(state)) {
|
|
3725
4128
|
state.lastStringValue += codePointToString(state.lastIntValue);
|
|
@@ -3736,7 +4139,7 @@ pp$8.regexp_eatRegExpIdentifierName = function(state) {
|
|
|
3736
4139
|
// `$`
|
|
3737
4140
|
// `_`
|
|
3738
4141
|
// `\` RegExpUnicodeEscapeSequence[+U]
|
|
3739
|
-
pp$
|
|
4142
|
+
pp$1.regexp_eatRegExpIdentifierStart = function(state) {
|
|
3740
4143
|
var start = state.pos;
|
|
3741
4144
|
var forceU = this.options.ecmaVersion >= 11;
|
|
3742
4145
|
var ch = state.current(forceU);
|
|
@@ -3764,7 +4167,7 @@ function isRegExpIdentifierStart(ch) {
|
|
|
3764
4167
|
// `\` RegExpUnicodeEscapeSequence[+U]
|
|
3765
4168
|
// <ZWNJ>
|
|
3766
4169
|
// <ZWJ>
|
|
3767
|
-
pp$
|
|
4170
|
+
pp$1.regexp_eatRegExpIdentifierPart = function(state) {
|
|
3768
4171
|
var start = state.pos;
|
|
3769
4172
|
var forceU = this.options.ecmaVersion >= 11;
|
|
3770
4173
|
var ch = state.current(forceU);
|
|
@@ -3786,7 +4189,7 @@ function isRegExpIdentifierPart(ch) {
|
|
|
3786
4189
|
}
|
|
3787
4190
|
|
|
3788
4191
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-AtomEscape
|
|
3789
|
-
pp$
|
|
4192
|
+
pp$1.regexp_eatAtomEscape = function(state) {
|
|
3790
4193
|
if (
|
|
3791
4194
|
this.regexp_eatBackReference(state) ||
|
|
3792
4195
|
this.regexp_eatCharacterClassEscape(state) ||
|
|
@@ -3804,7 +4207,7 @@ pp$8.regexp_eatAtomEscape = function(state) {
|
|
|
3804
4207
|
}
|
|
3805
4208
|
return false
|
|
3806
4209
|
};
|
|
3807
|
-
pp$
|
|
4210
|
+
pp$1.regexp_eatBackReference = function(state) {
|
|
3808
4211
|
var start = state.pos;
|
|
3809
4212
|
if (this.regexp_eatDecimalEscape(state)) {
|
|
3810
4213
|
var n = state.lastIntValue;
|
|
@@ -3822,7 +4225,7 @@ pp$8.regexp_eatBackReference = function(state) {
|
|
|
3822
4225
|
}
|
|
3823
4226
|
return false
|
|
3824
4227
|
};
|
|
3825
|
-
pp$
|
|
4228
|
+
pp$1.regexp_eatKGroupName = function(state) {
|
|
3826
4229
|
if (state.eat(0x6B /* k */)) {
|
|
3827
4230
|
if (this.regexp_eatGroupName(state)) {
|
|
3828
4231
|
state.backReferenceNames.push(state.lastStringValue);
|
|
@@ -3834,7 +4237,7 @@ pp$8.regexp_eatKGroupName = function(state) {
|
|
|
3834
4237
|
};
|
|
3835
4238
|
|
|
3836
4239
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-CharacterEscape
|
|
3837
|
-
pp$
|
|
4240
|
+
pp$1.regexp_eatCharacterEscape = function(state) {
|
|
3838
4241
|
return (
|
|
3839
4242
|
this.regexp_eatControlEscape(state) ||
|
|
3840
4243
|
this.regexp_eatCControlLetter(state) ||
|
|
@@ -3845,7 +4248,7 @@ pp$8.regexp_eatCharacterEscape = function(state) {
|
|
|
3845
4248
|
this.regexp_eatIdentityEscape(state)
|
|
3846
4249
|
)
|
|
3847
4250
|
};
|
|
3848
|
-
pp$
|
|
4251
|
+
pp$1.regexp_eatCControlLetter = function(state) {
|
|
3849
4252
|
var start = state.pos;
|
|
3850
4253
|
if (state.eat(0x63 /* c */)) {
|
|
3851
4254
|
if (this.regexp_eatControlLetter(state)) {
|
|
@@ -3855,7 +4258,7 @@ pp$8.regexp_eatCControlLetter = function(state) {
|
|
|
3855
4258
|
}
|
|
3856
4259
|
return false
|
|
3857
4260
|
};
|
|
3858
|
-
pp$
|
|
4261
|
+
pp$1.regexp_eatZero = function(state) {
|
|
3859
4262
|
if (state.current() === 0x30 /* 0 */ && !isDecimalDigit(state.lookahead())) {
|
|
3860
4263
|
state.lastIntValue = 0;
|
|
3861
4264
|
state.advance();
|
|
@@ -3865,7 +4268,7 @@ pp$8.regexp_eatZero = function(state) {
|
|
|
3865
4268
|
};
|
|
3866
4269
|
|
|
3867
4270
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ControlEscape
|
|
3868
|
-
pp$
|
|
4271
|
+
pp$1.regexp_eatControlEscape = function(state) {
|
|
3869
4272
|
var ch = state.current();
|
|
3870
4273
|
if (ch === 0x74 /* t */) {
|
|
3871
4274
|
state.lastIntValue = 0x09; /* \t */
|
|
@@ -3896,7 +4299,7 @@ pp$8.regexp_eatControlEscape = function(state) {
|
|
|
3896
4299
|
};
|
|
3897
4300
|
|
|
3898
4301
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ControlLetter
|
|
3899
|
-
pp$
|
|
4302
|
+
pp$1.regexp_eatControlLetter = function(state) {
|
|
3900
4303
|
var ch = state.current();
|
|
3901
4304
|
if (isControlLetter(ch)) {
|
|
3902
4305
|
state.lastIntValue = ch % 0x20;
|
|
@@ -3913,7 +4316,7 @@ function isControlLetter(ch) {
|
|
|
3913
4316
|
}
|
|
3914
4317
|
|
|
3915
4318
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-RegExpUnicodeEscapeSequence
|
|
3916
|
-
pp$
|
|
4319
|
+
pp$1.regexp_eatRegExpUnicodeEscapeSequence = function(state, forceU) {
|
|
3917
4320
|
if ( forceU === void 0 ) forceU = false;
|
|
3918
4321
|
|
|
3919
4322
|
var start = state.pos;
|
|
@@ -3958,7 +4361,7 @@ function isValidUnicode(ch) {
|
|
|
3958
4361
|
}
|
|
3959
4362
|
|
|
3960
4363
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-IdentityEscape
|
|
3961
|
-
pp$
|
|
4364
|
+
pp$1.regexp_eatIdentityEscape = function(state) {
|
|
3962
4365
|
if (state.switchU) {
|
|
3963
4366
|
if (this.regexp_eatSyntaxCharacter(state)) {
|
|
3964
4367
|
return true
|
|
@@ -3981,7 +4384,7 @@ pp$8.regexp_eatIdentityEscape = function(state) {
|
|
|
3981
4384
|
};
|
|
3982
4385
|
|
|
3983
4386
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-DecimalEscape
|
|
3984
|
-
pp$
|
|
4387
|
+
pp$1.regexp_eatDecimalEscape = function(state) {
|
|
3985
4388
|
state.lastIntValue = 0;
|
|
3986
4389
|
var ch = state.current();
|
|
3987
4390
|
if (ch >= 0x31 /* 1 */ && ch <= 0x39 /* 9 */) {
|
|
@@ -3995,7 +4398,7 @@ pp$8.regexp_eatDecimalEscape = function(state) {
|
|
|
3995
4398
|
};
|
|
3996
4399
|
|
|
3997
4400
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-CharacterClassEscape
|
|
3998
|
-
pp$
|
|
4401
|
+
pp$1.regexp_eatCharacterClassEscape = function(state) {
|
|
3999
4402
|
var ch = state.current();
|
|
4000
4403
|
|
|
4001
4404
|
if (isCharacterClassEscape(ch)) {
|
|
@@ -4037,7 +4440,7 @@ function isCharacterClassEscape(ch) {
|
|
|
4037
4440
|
// UnicodePropertyValueExpression ::
|
|
4038
4441
|
// UnicodePropertyName `=` UnicodePropertyValue
|
|
4039
4442
|
// LoneUnicodePropertyNameOrValue
|
|
4040
|
-
pp$
|
|
4443
|
+
pp$1.regexp_eatUnicodePropertyValueExpression = function(state) {
|
|
4041
4444
|
var start = state.pos;
|
|
4042
4445
|
|
|
4043
4446
|
// UnicodePropertyName `=` UnicodePropertyValue
|
|
@@ -4059,20 +4462,20 @@ pp$8.regexp_eatUnicodePropertyValueExpression = function(state) {
|
|
|
4059
4462
|
}
|
|
4060
4463
|
return false
|
|
4061
4464
|
};
|
|
4062
|
-
pp$
|
|
4063
|
-
if (!
|
|
4465
|
+
pp$1.regexp_validateUnicodePropertyNameAndValue = function(state, name, value) {
|
|
4466
|
+
if (!hasOwn(state.unicodeProperties.nonBinary, name))
|
|
4064
4467
|
{ state.raise("Invalid property name"); }
|
|
4065
4468
|
if (!state.unicodeProperties.nonBinary[name].test(value))
|
|
4066
4469
|
{ state.raise("Invalid property value"); }
|
|
4067
4470
|
};
|
|
4068
|
-
pp$
|
|
4471
|
+
pp$1.regexp_validateUnicodePropertyNameOrValue = function(state, nameOrValue) {
|
|
4069
4472
|
if (!state.unicodeProperties.binary.test(nameOrValue))
|
|
4070
4473
|
{ state.raise("Invalid property name"); }
|
|
4071
4474
|
};
|
|
4072
4475
|
|
|
4073
4476
|
// UnicodePropertyName ::
|
|
4074
4477
|
// UnicodePropertyNameCharacters
|
|
4075
|
-
pp$
|
|
4478
|
+
pp$1.regexp_eatUnicodePropertyName = function(state) {
|
|
4076
4479
|
var ch = 0;
|
|
4077
4480
|
state.lastStringValue = "";
|
|
4078
4481
|
while (isUnicodePropertyNameCharacter(ch = state.current())) {
|
|
@@ -4087,7 +4490,7 @@ function isUnicodePropertyNameCharacter(ch) {
|
|
|
4087
4490
|
|
|
4088
4491
|
// UnicodePropertyValue ::
|
|
4089
4492
|
// UnicodePropertyValueCharacters
|
|
4090
|
-
pp$
|
|
4493
|
+
pp$1.regexp_eatUnicodePropertyValue = function(state) {
|
|
4091
4494
|
var ch = 0;
|
|
4092
4495
|
state.lastStringValue = "";
|
|
4093
4496
|
while (isUnicodePropertyValueCharacter(ch = state.current())) {
|
|
@@ -4102,12 +4505,12 @@ function isUnicodePropertyValueCharacter(ch) {
|
|
|
4102
4505
|
|
|
4103
4506
|
// LoneUnicodePropertyNameOrValue ::
|
|
4104
4507
|
// UnicodePropertyValueCharacters
|
|
4105
|
-
pp$
|
|
4508
|
+
pp$1.regexp_eatLoneUnicodePropertyNameOrValue = function(state) {
|
|
4106
4509
|
return this.regexp_eatUnicodePropertyValue(state)
|
|
4107
4510
|
};
|
|
4108
4511
|
|
|
4109
4512
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-CharacterClass
|
|
4110
|
-
pp$
|
|
4513
|
+
pp$1.regexp_eatCharacterClass = function(state) {
|
|
4111
4514
|
if (state.eat(0x5B /* [ */)) {
|
|
4112
4515
|
state.eat(0x5E /* ^ */);
|
|
4113
4516
|
this.regexp_classRanges(state);
|
|
@@ -4123,7 +4526,7 @@ pp$8.regexp_eatCharacterClass = function(state) {
|
|
|
4123
4526
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassRanges
|
|
4124
4527
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-NonemptyClassRanges
|
|
4125
4528
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-NonemptyClassRangesNoDash
|
|
4126
|
-
pp$
|
|
4529
|
+
pp$1.regexp_classRanges = function(state) {
|
|
4127
4530
|
while (this.regexp_eatClassAtom(state)) {
|
|
4128
4531
|
var left = state.lastIntValue;
|
|
4129
4532
|
if (state.eat(0x2D /* - */) && this.regexp_eatClassAtom(state)) {
|
|
@@ -4140,7 +4543,7 @@ pp$8.regexp_classRanges = function(state) {
|
|
|
4140
4543
|
|
|
4141
4544
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassAtom
|
|
4142
4545
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassAtomNoDash
|
|
4143
|
-
pp$
|
|
4546
|
+
pp$1.regexp_eatClassAtom = function(state) {
|
|
4144
4547
|
var start = state.pos;
|
|
4145
4548
|
|
|
4146
4549
|
if (state.eat(0x5C /* \ */)) {
|
|
@@ -4169,7 +4572,7 @@ pp$8.regexp_eatClassAtom = function(state) {
|
|
|
4169
4572
|
};
|
|
4170
4573
|
|
|
4171
4574
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ClassEscape
|
|
4172
|
-
pp$
|
|
4575
|
+
pp$1.regexp_eatClassEscape = function(state) {
|
|
4173
4576
|
var start = state.pos;
|
|
4174
4577
|
|
|
4175
4578
|
if (state.eat(0x62 /* b */)) {
|
|
@@ -4196,7 +4599,7 @@ pp$8.regexp_eatClassEscape = function(state) {
|
|
|
4196
4599
|
};
|
|
4197
4600
|
|
|
4198
4601
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ClassControlLetter
|
|
4199
|
-
pp$
|
|
4602
|
+
pp$1.regexp_eatClassControlLetter = function(state) {
|
|
4200
4603
|
var ch = state.current();
|
|
4201
4604
|
if (isDecimalDigit(ch) || ch === 0x5F /* _ */) {
|
|
4202
4605
|
state.lastIntValue = ch % 0x20;
|
|
@@ -4207,7 +4610,7 @@ pp$8.regexp_eatClassControlLetter = function(state) {
|
|
|
4207
4610
|
};
|
|
4208
4611
|
|
|
4209
4612
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexEscapeSequence
|
|
4210
|
-
pp$
|
|
4613
|
+
pp$1.regexp_eatHexEscapeSequence = function(state) {
|
|
4211
4614
|
var start = state.pos;
|
|
4212
4615
|
if (state.eat(0x78 /* x */)) {
|
|
4213
4616
|
if (this.regexp_eatFixedHexDigits(state, 2)) {
|
|
@@ -4222,7 +4625,7 @@ pp$8.regexp_eatHexEscapeSequence = function(state) {
|
|
|
4222
4625
|
};
|
|
4223
4626
|
|
|
4224
4627
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-DecimalDigits
|
|
4225
|
-
pp$
|
|
4628
|
+
pp$1.regexp_eatDecimalDigits = function(state) {
|
|
4226
4629
|
var start = state.pos;
|
|
4227
4630
|
var ch = 0;
|
|
4228
4631
|
state.lastIntValue = 0;
|
|
@@ -4237,7 +4640,7 @@ function isDecimalDigit(ch) {
|
|
|
4237
4640
|
}
|
|
4238
4641
|
|
|
4239
4642
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexDigits
|
|
4240
|
-
pp$
|
|
4643
|
+
pp$1.regexp_eatHexDigits = function(state) {
|
|
4241
4644
|
var start = state.pos;
|
|
4242
4645
|
var ch = 0;
|
|
4243
4646
|
state.lastIntValue = 0;
|
|
@@ -4266,7 +4669,7 @@ function hexToInt(ch) {
|
|
|
4266
4669
|
|
|
4267
4670
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-LegacyOctalEscapeSequence
|
|
4268
4671
|
// Allows only 0-377(octal) i.e. 0-255(decimal).
|
|
4269
|
-
pp$
|
|
4672
|
+
pp$1.regexp_eatLegacyOctalEscapeSequence = function(state) {
|
|
4270
4673
|
if (this.regexp_eatOctalDigit(state)) {
|
|
4271
4674
|
var n1 = state.lastIntValue;
|
|
4272
4675
|
if (this.regexp_eatOctalDigit(state)) {
|
|
@@ -4285,7 +4688,7 @@ pp$8.regexp_eatLegacyOctalEscapeSequence = function(state) {
|
|
|
4285
4688
|
};
|
|
4286
4689
|
|
|
4287
4690
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-OctalDigit
|
|
4288
|
-
pp$
|
|
4691
|
+
pp$1.regexp_eatOctalDigit = function(state) {
|
|
4289
4692
|
var ch = state.current();
|
|
4290
4693
|
if (isOctalDigit(ch)) {
|
|
4291
4694
|
state.lastIntValue = ch - 0x30; /* 0 */
|
|
@@ -4302,7 +4705,7 @@ function isOctalDigit(ch) {
|
|
|
4302
4705
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Hex4Digits
|
|
4303
4706
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexDigit
|
|
4304
4707
|
// And HexDigit HexDigit in https://www.ecma-international.org/ecma-262/8.0/#prod-HexEscapeSequence
|
|
4305
|
-
pp$
|
|
4708
|
+
pp$1.regexp_eatFixedHexDigits = function(state, length) {
|
|
4306
4709
|
var start = state.pos;
|
|
4307
4710
|
state.lastIntValue = 0;
|
|
4308
4711
|
for (var i = 0; i < length; ++i) {
|
|
@@ -4334,11 +4737,11 @@ var Token = function Token(p) {
|
|
|
4334
4737
|
|
|
4335
4738
|
// ## Tokenizer
|
|
4336
4739
|
|
|
4337
|
-
var pp
|
|
4740
|
+
var pp = Parser.prototype;
|
|
4338
4741
|
|
|
4339
4742
|
// Move to the next token
|
|
4340
4743
|
|
|
4341
|
-
pp
|
|
4744
|
+
pp.next = function(ignoreEscapeSequenceInKeyword) {
|
|
4342
4745
|
if (!ignoreEscapeSequenceInKeyword && this.type.keyword && this.containsEsc)
|
|
4343
4746
|
{ this.raiseRecoverable(this.start, "Escape sequence in keyword " + this.type.keyword); }
|
|
4344
4747
|
if (this.options.onToken)
|
|
@@ -4351,21 +4754,21 @@ pp$9.next = function(ignoreEscapeSequenceInKeyword) {
|
|
|
4351
4754
|
this.nextToken();
|
|
4352
4755
|
};
|
|
4353
4756
|
|
|
4354
|
-
pp
|
|
4757
|
+
pp.getToken = function() {
|
|
4355
4758
|
this.next();
|
|
4356
4759
|
return new Token(this)
|
|
4357
4760
|
};
|
|
4358
4761
|
|
|
4359
4762
|
// If we're in an ES6 environment, make parsers iterable
|
|
4360
4763
|
if (typeof Symbol !== "undefined")
|
|
4361
|
-
{ pp
|
|
4362
|
-
var this$1 = this;
|
|
4764
|
+
{ pp[Symbol.iterator] = function() {
|
|
4765
|
+
var this$1$1 = this;
|
|
4363
4766
|
|
|
4364
4767
|
return {
|
|
4365
4768
|
next: function () {
|
|
4366
|
-
var token = this$1.getToken();
|
|
4769
|
+
var token = this$1$1.getToken();
|
|
4367
4770
|
return {
|
|
4368
|
-
done: token.type === types.eof,
|
|
4771
|
+
done: token.type === types$1.eof,
|
|
4369
4772
|
value: token
|
|
4370
4773
|
}
|
|
4371
4774
|
}
|
|
@@ -4375,26 +4778,22 @@ if (typeof Symbol !== "undefined")
|
|
|
4375
4778
|
// Toggle strict mode. Re-reads the next number or string to please
|
|
4376
4779
|
// pedantic tests (`"use strict"; 010;` should fail).
|
|
4377
4780
|
|
|
4378
|
-
pp$9.curContext = function() {
|
|
4379
|
-
return this.context[this.context.length - 1]
|
|
4380
|
-
};
|
|
4381
|
-
|
|
4382
4781
|
// Read a single token, updating the parser object's token-related
|
|
4383
4782
|
// properties.
|
|
4384
4783
|
|
|
4385
|
-
pp
|
|
4784
|
+
pp.nextToken = function() {
|
|
4386
4785
|
var curContext = this.curContext();
|
|
4387
4786
|
if (!curContext || !curContext.preserveSpace) { this.skipSpace(); }
|
|
4388
4787
|
|
|
4389
4788
|
this.start = this.pos;
|
|
4390
4789
|
if (this.options.locations) { this.startLoc = this.curPosition(); }
|
|
4391
|
-
if (this.pos >= this.input.length) { return this.finishToken(types.eof) }
|
|
4790
|
+
if (this.pos >= this.input.length) { return this.finishToken(types$1.eof) }
|
|
4392
4791
|
|
|
4393
4792
|
if (curContext.override) { return curContext.override(this) }
|
|
4394
4793
|
else { this.readToken(this.fullCharCodeAtPos()); }
|
|
4395
4794
|
};
|
|
4396
4795
|
|
|
4397
|
-
pp
|
|
4796
|
+
pp.readToken = function(code) {
|
|
4398
4797
|
// Identifier or keyword. '\uXXXX' sequences are allowed in
|
|
4399
4798
|
// identifiers, so '\' also dispatches to that.
|
|
4400
4799
|
if (isIdentifierStart(code, this.options.ecmaVersion >= 6) || code === 92 /* '\' */)
|
|
@@ -4403,24 +4802,22 @@ pp$9.readToken = function(code) {
|
|
|
4403
4802
|
return this.getTokenFromCode(code)
|
|
4404
4803
|
};
|
|
4405
4804
|
|
|
4406
|
-
pp
|
|
4805
|
+
pp.fullCharCodeAtPos = function() {
|
|
4407
4806
|
var code = this.input.charCodeAt(this.pos);
|
|
4408
|
-
if (code <= 0xd7ff || code >=
|
|
4807
|
+
if (code <= 0xd7ff || code >= 0xdc00) { return code }
|
|
4409
4808
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4410
|
-
return (code << 10) + next - 0x35fdc00
|
|
4809
|
+
return next <= 0xdbff || next >= 0xe000 ? code : (code << 10) + next - 0x35fdc00
|
|
4411
4810
|
};
|
|
4412
4811
|
|
|
4413
|
-
pp
|
|
4812
|
+
pp.skipBlockComment = function() {
|
|
4414
4813
|
var startLoc = this.options.onComment && this.curPosition();
|
|
4415
4814
|
var start = this.pos, end = this.input.indexOf("*/", this.pos += 2);
|
|
4416
4815
|
if (end === -1) { this.raise(this.pos - 2, "Unterminated comment"); }
|
|
4417
4816
|
this.pos = end + 2;
|
|
4418
4817
|
if (this.options.locations) {
|
|
4419
|
-
|
|
4420
|
-
var match;
|
|
4421
|
-
while ((match = lineBreakG.exec(this.input)) && match.index < this.pos) {
|
|
4818
|
+
for (var nextBreak = (void 0), pos = start; (nextBreak = nextLineBreak(this.input, pos, this.pos)) > -1;) {
|
|
4422
4819
|
++this.curLine;
|
|
4423
|
-
this.lineStart =
|
|
4820
|
+
pos = this.lineStart = nextBreak;
|
|
4424
4821
|
}
|
|
4425
4822
|
}
|
|
4426
4823
|
if (this.options.onComment)
|
|
@@ -4428,7 +4825,7 @@ pp$9.skipBlockComment = function() {
|
|
|
4428
4825
|
startLoc, this.curPosition()); }
|
|
4429
4826
|
};
|
|
4430
4827
|
|
|
4431
|
-
pp
|
|
4828
|
+
pp.skipLineComment = function(startSkip) {
|
|
4432
4829
|
var start = this.pos;
|
|
4433
4830
|
var startLoc = this.options.onComment && this.curPosition();
|
|
4434
4831
|
var ch = this.input.charCodeAt(this.pos += startSkip);
|
|
@@ -4443,7 +4840,7 @@ pp$9.skipLineComment = function(startSkip) {
|
|
|
4443
4840
|
// Called at the start of the parse and after every token. Skips
|
|
4444
4841
|
// whitespace and comments, and.
|
|
4445
4842
|
|
|
4446
|
-
pp
|
|
4843
|
+
pp.skipSpace = function() {
|
|
4447
4844
|
loop: while (this.pos < this.input.length) {
|
|
4448
4845
|
var ch = this.input.charCodeAt(this.pos);
|
|
4449
4846
|
switch (ch) {
|
|
@@ -4488,7 +4885,7 @@ pp$9.skipSpace = function() {
|
|
|
4488
4885
|
// the token, so that the next one's `start` will point at the
|
|
4489
4886
|
// right position.
|
|
4490
4887
|
|
|
4491
|
-
pp
|
|
4888
|
+
pp.finishToken = function(type, val) {
|
|
4492
4889
|
this.end = this.pos;
|
|
4493
4890
|
if (this.options.locations) { this.endLoc = this.curPosition(); }
|
|
4494
4891
|
var prevType = this.type;
|
|
@@ -4507,62 +4904,62 @@ pp$9.finishToken = function(type, val) {
|
|
|
4507
4904
|
//
|
|
4508
4905
|
// All in the name of speed.
|
|
4509
4906
|
//
|
|
4510
|
-
pp
|
|
4907
|
+
pp.readToken_dot = function() {
|
|
4511
4908
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4512
4909
|
if (next >= 48 && next <= 57) { return this.readNumber(true) }
|
|
4513
4910
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4514
4911
|
if (this.options.ecmaVersion >= 6 && next === 46 && next2 === 46) { // 46 = dot '.'
|
|
4515
4912
|
this.pos += 3;
|
|
4516
|
-
return this.finishToken(types.ellipsis)
|
|
4913
|
+
return this.finishToken(types$1.ellipsis)
|
|
4517
4914
|
} else {
|
|
4518
4915
|
++this.pos;
|
|
4519
|
-
return this.finishToken(types.dot)
|
|
4916
|
+
return this.finishToken(types$1.dot)
|
|
4520
4917
|
}
|
|
4521
4918
|
};
|
|
4522
4919
|
|
|
4523
|
-
pp
|
|
4920
|
+
pp.readToken_slash = function() { // '/'
|
|
4524
4921
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4525
4922
|
if (this.exprAllowed) { ++this.pos; return this.readRegexp() }
|
|
4526
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4527
|
-
return this.finishOp(types.slash, 1)
|
|
4923
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4924
|
+
return this.finishOp(types$1.slash, 1)
|
|
4528
4925
|
};
|
|
4529
4926
|
|
|
4530
|
-
pp
|
|
4927
|
+
pp.readToken_mult_modulo_exp = function(code) { // '%*'
|
|
4531
4928
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4532
4929
|
var size = 1;
|
|
4533
|
-
var tokentype = code === 42 ? types.star : types.modulo;
|
|
4930
|
+
var tokentype = code === 42 ? types$1.star : types$1.modulo;
|
|
4534
4931
|
|
|
4535
4932
|
// exponentiation operator ** and **=
|
|
4536
4933
|
if (this.options.ecmaVersion >= 7 && code === 42 && next === 42) {
|
|
4537
4934
|
++size;
|
|
4538
|
-
tokentype = types.starstar;
|
|
4935
|
+
tokentype = types$1.starstar;
|
|
4539
4936
|
next = this.input.charCodeAt(this.pos + 2);
|
|
4540
4937
|
}
|
|
4541
4938
|
|
|
4542
|
-
if (next === 61) { return this.finishOp(types.assign, size + 1) }
|
|
4939
|
+
if (next === 61) { return this.finishOp(types$1.assign, size + 1) }
|
|
4543
4940
|
return this.finishOp(tokentype, size)
|
|
4544
4941
|
};
|
|
4545
4942
|
|
|
4546
|
-
pp
|
|
4943
|
+
pp.readToken_pipe_amp = function(code) { // '|&'
|
|
4547
4944
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4548
4945
|
if (next === code) {
|
|
4549
4946
|
if (this.options.ecmaVersion >= 12) {
|
|
4550
4947
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4551
|
-
if (next2 === 61) { return this.finishOp(types.assign, 3) }
|
|
4948
|
+
if (next2 === 61) { return this.finishOp(types$1.assign, 3) }
|
|
4552
4949
|
}
|
|
4553
|
-
return this.finishOp(code === 124 ? types.logicalOR : types.logicalAND, 2)
|
|
4950
|
+
return this.finishOp(code === 124 ? types$1.logicalOR : types$1.logicalAND, 2)
|
|
4554
4951
|
}
|
|
4555
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4556
|
-
return this.finishOp(code === 124 ? types.bitwiseOR : types.bitwiseAND, 1)
|
|
4952
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4953
|
+
return this.finishOp(code === 124 ? types$1.bitwiseOR : types$1.bitwiseAND, 1)
|
|
4557
4954
|
};
|
|
4558
4955
|
|
|
4559
|
-
pp
|
|
4956
|
+
pp.readToken_caret = function() { // '^'
|
|
4560
4957
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4561
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4562
|
-
return this.finishOp(types.bitwiseXOR, 1)
|
|
4958
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4959
|
+
return this.finishOp(types$1.bitwiseXOR, 1)
|
|
4563
4960
|
};
|
|
4564
4961
|
|
|
4565
|
-
pp
|
|
4962
|
+
pp.readToken_plus_min = function(code) { // '+-'
|
|
4566
4963
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4567
4964
|
if (next === code) {
|
|
4568
4965
|
if (next === 45 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 62 &&
|
|
@@ -4572,19 +4969,19 @@ pp$9.readToken_plus_min = function(code) { // '+-'
|
|
|
4572
4969
|
this.skipSpace();
|
|
4573
4970
|
return this.nextToken()
|
|
4574
4971
|
}
|
|
4575
|
-
return this.finishOp(types.incDec, 2)
|
|
4972
|
+
return this.finishOp(types$1.incDec, 2)
|
|
4576
4973
|
}
|
|
4577
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4578
|
-
return this.finishOp(types.plusMin, 1)
|
|
4974
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4975
|
+
return this.finishOp(types$1.plusMin, 1)
|
|
4579
4976
|
};
|
|
4580
4977
|
|
|
4581
|
-
pp
|
|
4978
|
+
pp.readToken_lt_gt = function(code) { // '<>'
|
|
4582
4979
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4583
4980
|
var size = 1;
|
|
4584
4981
|
if (next === code) {
|
|
4585
4982
|
size = code === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2;
|
|
4586
|
-
if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types.assign, size + 1) }
|
|
4587
|
-
return this.finishOp(types.bitShift, size)
|
|
4983
|
+
if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types$1.assign, size + 1) }
|
|
4984
|
+
return this.finishOp(types$1.bitShift, size)
|
|
4588
4985
|
}
|
|
4589
4986
|
if (next === 33 && code === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 45 &&
|
|
4590
4987
|
this.input.charCodeAt(this.pos + 3) === 45) {
|
|
@@ -4594,39 +4991,53 @@ pp$9.readToken_lt_gt = function(code) { // '<>'
|
|
|
4594
4991
|
return this.nextToken()
|
|
4595
4992
|
}
|
|
4596
4993
|
if (next === 61) { size = 2; }
|
|
4597
|
-
return this.finishOp(types.relational, size)
|
|
4994
|
+
return this.finishOp(types$1.relational, size)
|
|
4598
4995
|
};
|
|
4599
4996
|
|
|
4600
|
-
pp
|
|
4997
|
+
pp.readToken_eq_excl = function(code) { // '=!'
|
|
4601
4998
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4602
|
-
if (next === 61) { return this.finishOp(types.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) }
|
|
4999
|
+
if (next === 61) { return this.finishOp(types$1.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) }
|
|
4603
5000
|
if (code === 61 && next === 62 && this.options.ecmaVersion >= 6) { // '=>'
|
|
4604
5001
|
this.pos += 2;
|
|
4605
|
-
return this.finishToken(types.arrow)
|
|
5002
|
+
return this.finishToken(types$1.arrow)
|
|
4606
5003
|
}
|
|
4607
|
-
return this.finishOp(code === 61 ? types.eq : types.prefix, 1)
|
|
5004
|
+
return this.finishOp(code === 61 ? types$1.eq : types$1.prefix, 1)
|
|
4608
5005
|
};
|
|
4609
5006
|
|
|
4610
|
-
pp
|
|
5007
|
+
pp.readToken_question = function() { // '?'
|
|
4611
5008
|
var ecmaVersion = this.options.ecmaVersion;
|
|
4612
5009
|
if (ecmaVersion >= 11) {
|
|
4613
5010
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4614
5011
|
if (next === 46) {
|
|
4615
5012
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4616
|
-
if (next2 < 48 || next2 > 57) { return this.finishOp(types.questionDot, 2) }
|
|
5013
|
+
if (next2 < 48 || next2 > 57) { return this.finishOp(types$1.questionDot, 2) }
|
|
4617
5014
|
}
|
|
4618
5015
|
if (next === 63) {
|
|
4619
5016
|
if (ecmaVersion >= 12) {
|
|
4620
5017
|
var next2$1 = this.input.charCodeAt(this.pos + 2);
|
|
4621
|
-
if (next2$1 === 61) { return this.finishOp(types.assign, 3) }
|
|
5018
|
+
if (next2$1 === 61) { return this.finishOp(types$1.assign, 3) }
|
|
4622
5019
|
}
|
|
4623
|
-
return this.finishOp(types.coalesce, 2)
|
|
5020
|
+
return this.finishOp(types$1.coalesce, 2)
|
|
4624
5021
|
}
|
|
4625
5022
|
}
|
|
4626
|
-
return this.finishOp(types.question, 1)
|
|
5023
|
+
return this.finishOp(types$1.question, 1)
|
|
4627
5024
|
};
|
|
4628
5025
|
|
|
4629
|
-
pp
|
|
5026
|
+
pp.readToken_numberSign = function() { // '#'
|
|
5027
|
+
var ecmaVersion = this.options.ecmaVersion;
|
|
5028
|
+
var code = 35; // '#'
|
|
5029
|
+
if (ecmaVersion >= 13) {
|
|
5030
|
+
++this.pos;
|
|
5031
|
+
code = this.fullCharCodeAtPos();
|
|
5032
|
+
if (isIdentifierStart(code, true) || code === 92 /* '\' */) {
|
|
5033
|
+
return this.finishToken(types$1.privateId, this.readWord1())
|
|
5034
|
+
}
|
|
5035
|
+
}
|
|
5036
|
+
|
|
5037
|
+
this.raise(this.pos, "Unexpected character '" + codePointToString(code) + "'");
|
|
5038
|
+
};
|
|
5039
|
+
|
|
5040
|
+
pp.getTokenFromCode = function(code) {
|
|
4630
5041
|
switch (code) {
|
|
4631
5042
|
// The interpretation of a dot depends on whether it is followed
|
|
4632
5043
|
// by a digit or another two dots.
|
|
@@ -4634,20 +5045,20 @@ pp$9.getTokenFromCode = function(code) {
|
|
|
4634
5045
|
return this.readToken_dot()
|
|
4635
5046
|
|
|
4636
5047
|
// Punctuation tokens.
|
|
4637
|
-
case 40: ++this.pos; return this.finishToken(types.parenL)
|
|
4638
|
-
case 41: ++this.pos; return this.finishToken(types.parenR)
|
|
4639
|
-
case 59: ++this.pos; return this.finishToken(types.semi)
|
|
4640
|
-
case 44: ++this.pos; return this.finishToken(types.comma)
|
|
4641
|
-
case 91: ++this.pos; return this.finishToken(types.bracketL)
|
|
4642
|
-
case 93: ++this.pos; return this.finishToken(types.bracketR)
|
|
4643
|
-
case 123: ++this.pos; return this.finishToken(types.braceL)
|
|
4644
|
-
case 125: ++this.pos; return this.finishToken(types.braceR)
|
|
4645
|
-
case 58: ++this.pos; return this.finishToken(types.colon)
|
|
5048
|
+
case 40: ++this.pos; return this.finishToken(types$1.parenL)
|
|
5049
|
+
case 41: ++this.pos; return this.finishToken(types$1.parenR)
|
|
5050
|
+
case 59: ++this.pos; return this.finishToken(types$1.semi)
|
|
5051
|
+
case 44: ++this.pos; return this.finishToken(types$1.comma)
|
|
5052
|
+
case 91: ++this.pos; return this.finishToken(types$1.bracketL)
|
|
5053
|
+
case 93: ++this.pos; return this.finishToken(types$1.bracketR)
|
|
5054
|
+
case 123: ++this.pos; return this.finishToken(types$1.braceL)
|
|
5055
|
+
case 125: ++this.pos; return this.finishToken(types$1.braceR)
|
|
5056
|
+
case 58: ++this.pos; return this.finishToken(types$1.colon)
|
|
4646
5057
|
|
|
4647
5058
|
case 96: // '`'
|
|
4648
5059
|
if (this.options.ecmaVersion < 6) { break }
|
|
4649
5060
|
++this.pos;
|
|
4650
|
-
return this.finishToken(types.backQuote)
|
|
5061
|
+
return this.finishToken(types$1.backQuote)
|
|
4651
5062
|
|
|
4652
5063
|
case 48: // '0'
|
|
4653
5064
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
@@ -4670,7 +5081,6 @@ pp$9.getTokenFromCode = function(code) {
|
|
|
4670
5081
|
// often referred to. `finishOp` simply skips the amount of
|
|
4671
5082
|
// characters it is given as second argument, and returns a token
|
|
4672
5083
|
// of the type given by its first argument.
|
|
4673
|
-
|
|
4674
5084
|
case 47: // '/'
|
|
4675
5085
|
return this.readToken_slash()
|
|
4676
5086
|
|
|
@@ -4696,19 +5106,22 @@ pp$9.getTokenFromCode = function(code) {
|
|
|
4696
5106
|
return this.readToken_question()
|
|
4697
5107
|
|
|
4698
5108
|
case 126: // '~'
|
|
4699
|
-
return this.finishOp(types.prefix, 1)
|
|
5109
|
+
return this.finishOp(types$1.prefix, 1)
|
|
5110
|
+
|
|
5111
|
+
case 35: // '#'
|
|
5112
|
+
return this.readToken_numberSign()
|
|
4700
5113
|
}
|
|
4701
5114
|
|
|
4702
|
-
this.raise(this.pos, "Unexpected character '" + codePointToString
|
|
5115
|
+
this.raise(this.pos, "Unexpected character '" + codePointToString(code) + "'");
|
|
4703
5116
|
};
|
|
4704
5117
|
|
|
4705
|
-
pp
|
|
5118
|
+
pp.finishOp = function(type, size) {
|
|
4706
5119
|
var str = this.input.slice(this.pos, this.pos + size);
|
|
4707
5120
|
this.pos += size;
|
|
4708
5121
|
return this.finishToken(type, str)
|
|
4709
5122
|
};
|
|
4710
5123
|
|
|
4711
|
-
pp
|
|
5124
|
+
pp.readRegexp = function() {
|
|
4712
5125
|
var escaped, inClass, start = this.pos;
|
|
4713
5126
|
for (;;) {
|
|
4714
5127
|
if (this.pos >= this.input.length) { this.raise(start, "Unterminated regular expression"); }
|
|
@@ -4743,14 +5156,14 @@ pp$9.readRegexp = function() {
|
|
|
4743
5156
|
// https://github.com/estree/estree/blob/a27003adf4fd7bfad44de9cef372a2eacd527b1c/es5.md#regexpliteral
|
|
4744
5157
|
}
|
|
4745
5158
|
|
|
4746
|
-
return this.finishToken(types.regexp, {pattern: pattern, flags: flags, value: value})
|
|
5159
|
+
return this.finishToken(types$1.regexp, {pattern: pattern, flags: flags, value: value})
|
|
4747
5160
|
};
|
|
4748
5161
|
|
|
4749
5162
|
// Read an integer in the given radix. Return null if zero digits
|
|
4750
5163
|
// were read, the integer value otherwise. When `len` is given, this
|
|
4751
5164
|
// will return `null` unless the integer has exactly `len` digits.
|
|
4752
5165
|
|
|
4753
|
-
pp
|
|
5166
|
+
pp.readInt = function(radix, len, maybeLegacyOctalNumericLiteral) {
|
|
4754
5167
|
// `len` is used for character escape sequences. In that case, disallow separators.
|
|
4755
5168
|
var allowSeparators = this.options.ecmaVersion >= 12 && len === undefined;
|
|
4756
5169
|
|
|
@@ -4804,7 +5217,7 @@ function stringToBigInt(str) {
|
|
|
4804
5217
|
return BigInt(str.replace(/_/g, ""))
|
|
4805
5218
|
}
|
|
4806
5219
|
|
|
4807
|
-
pp
|
|
5220
|
+
pp.readRadixNumber = function(radix) {
|
|
4808
5221
|
var start = this.pos;
|
|
4809
5222
|
this.pos += 2; // 0x
|
|
4810
5223
|
var val = this.readInt(radix);
|
|
@@ -4813,12 +5226,12 @@ pp$9.readRadixNumber = function(radix) {
|
|
|
4813
5226
|
val = stringToBigInt(this.input.slice(start, this.pos));
|
|
4814
5227
|
++this.pos;
|
|
4815
5228
|
} else if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4816
|
-
return this.finishToken(types.num, val)
|
|
5229
|
+
return this.finishToken(types$1.num, val)
|
|
4817
5230
|
};
|
|
4818
5231
|
|
|
4819
5232
|
// Read an integer, octal integer, or floating-point number.
|
|
4820
5233
|
|
|
4821
|
-
pp
|
|
5234
|
+
pp.readNumber = function(startsWithDot) {
|
|
4822
5235
|
var start = this.pos;
|
|
4823
5236
|
if (!startsWithDot && this.readInt(10, undefined, true) === null) { this.raise(start, "Invalid number"); }
|
|
4824
5237
|
var octal = this.pos - start >= 2 && this.input.charCodeAt(start) === 48;
|
|
@@ -4828,7 +5241,7 @@ pp$9.readNumber = function(startsWithDot) {
|
|
|
4828
5241
|
var val$1 = stringToBigInt(this.input.slice(start, this.pos));
|
|
4829
5242
|
++this.pos;
|
|
4830
5243
|
if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4831
|
-
return this.finishToken(types.num, val$1)
|
|
5244
|
+
return this.finishToken(types$1.num, val$1)
|
|
4832
5245
|
}
|
|
4833
5246
|
if (octal && /[89]/.test(this.input.slice(start, this.pos))) { octal = false; }
|
|
4834
5247
|
if (next === 46 && !octal) { // '.'
|
|
@@ -4844,12 +5257,12 @@ pp$9.readNumber = function(startsWithDot) {
|
|
|
4844
5257
|
if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4845
5258
|
|
|
4846
5259
|
var val = stringToNumber(this.input.slice(start, this.pos), octal);
|
|
4847
|
-
return this.finishToken(types.num, val)
|
|
5260
|
+
return this.finishToken(types$1.num, val)
|
|
4848
5261
|
};
|
|
4849
5262
|
|
|
4850
5263
|
// Read a string value, interpreting backslash-escapes.
|
|
4851
5264
|
|
|
4852
|
-
pp
|
|
5265
|
+
pp.readCodePoint = function() {
|
|
4853
5266
|
var ch = this.input.charCodeAt(this.pos), code;
|
|
4854
5267
|
|
|
4855
5268
|
if (ch === 123) { // '{'
|
|
@@ -4864,14 +5277,7 @@ pp$9.readCodePoint = function() {
|
|
|
4864
5277
|
return code
|
|
4865
5278
|
};
|
|
4866
5279
|
|
|
4867
|
-
function
|
|
4868
|
-
// UTF-16 Decoding
|
|
4869
|
-
if (code <= 0xFFFF) { return String.fromCharCode(code) }
|
|
4870
|
-
code -= 0x10000;
|
|
4871
|
-
return String.fromCharCode((code >> 10) + 0xD800, (code & 1023) + 0xDC00)
|
|
4872
|
-
}
|
|
4873
|
-
|
|
4874
|
-
pp$9.readString = function(quote) {
|
|
5280
|
+
pp.readString = function(quote) {
|
|
4875
5281
|
var out = "", chunkStart = ++this.pos;
|
|
4876
5282
|
for (;;) {
|
|
4877
5283
|
if (this.pos >= this.input.length) { this.raise(this.start, "Unterminated string constant"); }
|
|
@@ -4881,20 +5287,27 @@ pp$9.readString = function(quote) {
|
|
|
4881
5287
|
out += this.input.slice(chunkStart, this.pos);
|
|
4882
5288
|
out += this.readEscapedChar(false);
|
|
4883
5289
|
chunkStart = this.pos;
|
|
5290
|
+
} else if (ch === 0x2028 || ch === 0x2029) {
|
|
5291
|
+
if (this.options.ecmaVersion < 10) { this.raise(this.start, "Unterminated string constant"); }
|
|
5292
|
+
++this.pos;
|
|
5293
|
+
if (this.options.locations) {
|
|
5294
|
+
this.curLine++;
|
|
5295
|
+
this.lineStart = this.pos;
|
|
5296
|
+
}
|
|
4884
5297
|
} else {
|
|
4885
|
-
if (isNewLine(ch
|
|
5298
|
+
if (isNewLine(ch)) { this.raise(this.start, "Unterminated string constant"); }
|
|
4886
5299
|
++this.pos;
|
|
4887
5300
|
}
|
|
4888
5301
|
}
|
|
4889
5302
|
out += this.input.slice(chunkStart, this.pos++);
|
|
4890
|
-
return this.finishToken(types.string, out)
|
|
5303
|
+
return this.finishToken(types$1.string, out)
|
|
4891
5304
|
};
|
|
4892
5305
|
|
|
4893
5306
|
// Reads template string tokens.
|
|
4894
5307
|
|
|
4895
5308
|
var INVALID_TEMPLATE_ESCAPE_ERROR = {};
|
|
4896
5309
|
|
|
4897
|
-
pp
|
|
5310
|
+
pp.tryReadTemplateToken = function() {
|
|
4898
5311
|
this.inTemplateElement = true;
|
|
4899
5312
|
try {
|
|
4900
5313
|
this.readTmplToken();
|
|
@@ -4909,7 +5322,7 @@ pp$9.tryReadTemplateToken = function() {
|
|
|
4909
5322
|
this.inTemplateElement = false;
|
|
4910
5323
|
};
|
|
4911
5324
|
|
|
4912
|
-
pp
|
|
5325
|
+
pp.invalidStringToken = function(position, message) {
|
|
4913
5326
|
if (this.inTemplateElement && this.options.ecmaVersion >= 9) {
|
|
4914
5327
|
throw INVALID_TEMPLATE_ESCAPE_ERROR
|
|
4915
5328
|
} else {
|
|
@@ -4917,23 +5330,23 @@ pp$9.invalidStringToken = function(position, message) {
|
|
|
4917
5330
|
}
|
|
4918
5331
|
};
|
|
4919
5332
|
|
|
4920
|
-
pp
|
|
5333
|
+
pp.readTmplToken = function() {
|
|
4921
5334
|
var out = "", chunkStart = this.pos;
|
|
4922
5335
|
for (;;) {
|
|
4923
5336
|
if (this.pos >= this.input.length) { this.raise(this.start, "Unterminated template"); }
|
|
4924
5337
|
var ch = this.input.charCodeAt(this.pos);
|
|
4925
5338
|
if (ch === 96 || ch === 36 && this.input.charCodeAt(this.pos + 1) === 123) { // '`', '${'
|
|
4926
|
-
if (this.pos === this.start && (this.type === types.template || this.type === types.invalidTemplate)) {
|
|
5339
|
+
if (this.pos === this.start && (this.type === types$1.template || this.type === types$1.invalidTemplate)) {
|
|
4927
5340
|
if (ch === 36) {
|
|
4928
5341
|
this.pos += 2;
|
|
4929
|
-
return this.finishToken(types.dollarBraceL)
|
|
5342
|
+
return this.finishToken(types$1.dollarBraceL)
|
|
4930
5343
|
} else {
|
|
4931
5344
|
++this.pos;
|
|
4932
|
-
return this.finishToken(types.backQuote)
|
|
5345
|
+
return this.finishToken(types$1.backQuote)
|
|
4933
5346
|
}
|
|
4934
5347
|
}
|
|
4935
5348
|
out += this.input.slice(chunkStart, this.pos);
|
|
4936
|
-
return this.finishToken(types.template, out)
|
|
5349
|
+
return this.finishToken(types$1.template, out)
|
|
4937
5350
|
}
|
|
4938
5351
|
if (ch === 92) { // '\'
|
|
4939
5352
|
out += this.input.slice(chunkStart, this.pos);
|
|
@@ -4964,7 +5377,7 @@ pp$9.readTmplToken = function() {
|
|
|
4964
5377
|
};
|
|
4965
5378
|
|
|
4966
5379
|
// Reads a template token to search for the end, without validating any escape sequences
|
|
4967
|
-
pp
|
|
5380
|
+
pp.readInvalidTemplateToken = function() {
|
|
4968
5381
|
for (; this.pos < this.input.length; this.pos++) {
|
|
4969
5382
|
switch (this.input[this.pos]) {
|
|
4970
5383
|
case "\\":
|
|
@@ -4975,10 +5388,10 @@ pp$9.readInvalidTemplateToken = function() {
|
|
|
4975
5388
|
if (this.input[this.pos + 1] !== "{") {
|
|
4976
5389
|
break
|
|
4977
5390
|
}
|
|
4978
|
-
// falls through
|
|
4979
5391
|
|
|
5392
|
+
// falls through
|
|
4980
5393
|
case "`":
|
|
4981
|
-
return this.finishToken(types.invalidTemplate, this.input.slice(this.start, this.pos))
|
|
5394
|
+
return this.finishToken(types$1.invalidTemplate, this.input.slice(this.start, this.pos))
|
|
4982
5395
|
|
|
4983
5396
|
// no default
|
|
4984
5397
|
}
|
|
@@ -4988,14 +5401,14 @@ pp$9.readInvalidTemplateToken = function() {
|
|
|
4988
5401
|
|
|
4989
5402
|
// Used to read escaped characters
|
|
4990
5403
|
|
|
4991
|
-
pp
|
|
5404
|
+
pp.readEscapedChar = function(inTemplate) {
|
|
4992
5405
|
var ch = this.input.charCodeAt(++this.pos);
|
|
4993
5406
|
++this.pos;
|
|
4994
5407
|
switch (ch) {
|
|
4995
5408
|
case 110: return "\n" // 'n' -> '\n'
|
|
4996
5409
|
case 114: return "\r" // 'r' -> '\r'
|
|
4997
5410
|
case 120: return String.fromCharCode(this.readHexChar(2)) // 'x'
|
|
4998
|
-
case 117: return codePointToString
|
|
5411
|
+
case 117: return codePointToString(this.readCodePoint()) // 'u'
|
|
4999
5412
|
case 116: return "\t" // 't' -> '\t'
|
|
5000
5413
|
case 98: return "\b" // 'b' -> '\b'
|
|
5001
5414
|
case 118: return "\u000b" // 'v' -> '\u000b'
|
|
@@ -5006,6 +5419,12 @@ pp$9.readEscapedChar = function(inTemplate) {
|
|
|
5006
5419
|
return ""
|
|
5007
5420
|
case 56:
|
|
5008
5421
|
case 57:
|
|
5422
|
+
if (this.strict) {
|
|
5423
|
+
this.invalidStringToken(
|
|
5424
|
+
this.pos - 1,
|
|
5425
|
+
"Invalid escape sequence"
|
|
5426
|
+
);
|
|
5427
|
+
}
|
|
5009
5428
|
if (inTemplate) {
|
|
5010
5429
|
var codePos = this.pos - 1;
|
|
5011
5430
|
|
|
@@ -5047,7 +5466,7 @@ pp$9.readEscapedChar = function(inTemplate) {
|
|
|
5047
5466
|
|
|
5048
5467
|
// Used to read character escape sequences ('\x', '\u', '\U').
|
|
5049
5468
|
|
|
5050
|
-
pp
|
|
5469
|
+
pp.readHexChar = function(len) {
|
|
5051
5470
|
var codePos = this.pos;
|
|
5052
5471
|
var n = this.readInt(16, len);
|
|
5053
5472
|
if (n === null) { this.invalidStringToken(codePos, "Bad character escape sequence"); }
|
|
@@ -5060,7 +5479,7 @@ pp$9.readHexChar = function(len) {
|
|
|
5060
5479
|
// Incrementally adds only escaped chars, adding other chunks as-is
|
|
5061
5480
|
// as a micro-optimization.
|
|
5062
5481
|
|
|
5063
|
-
pp
|
|
5482
|
+
pp.readWord1 = function() {
|
|
5064
5483
|
this.containsEsc = false;
|
|
5065
5484
|
var word = "", first = true, chunkStart = this.pos;
|
|
5066
5485
|
var astral = this.options.ecmaVersion >= 6;
|
|
@@ -5078,7 +5497,7 @@ pp$9.readWord1 = function() {
|
|
|
5078
5497
|
var esc = this.readCodePoint();
|
|
5079
5498
|
if (!(first ? isIdentifierStart : isIdentifierChar)(esc, astral))
|
|
5080
5499
|
{ this.invalidStringToken(escStart, "Invalid Unicode escape"); }
|
|
5081
|
-
word += codePointToString
|
|
5500
|
+
word += codePointToString(esc);
|
|
5082
5501
|
chunkStart = this.pos;
|
|
5083
5502
|
} else {
|
|
5084
5503
|
break
|
|
@@ -5091,18 +5510,18 @@ pp$9.readWord1 = function() {
|
|
|
5091
5510
|
// Read an identifier or keyword token. Will check for reserved
|
|
5092
5511
|
// words when necessary.
|
|
5093
5512
|
|
|
5094
|
-
pp
|
|
5513
|
+
pp.readWord = function() {
|
|
5095
5514
|
var word = this.readWord1();
|
|
5096
|
-
var type = types.name;
|
|
5515
|
+
var type = types$1.name;
|
|
5097
5516
|
if (this.keywords.test(word)) {
|
|
5098
|
-
type = keywords
|
|
5517
|
+
type = keywords[word];
|
|
5099
5518
|
}
|
|
5100
5519
|
return this.finishToken(type, word)
|
|
5101
5520
|
};
|
|
5102
5521
|
|
|
5103
5522
|
// Acorn is a tiny, fast JavaScript parser written in JavaScript.
|
|
5104
5523
|
|
|
5105
|
-
var version = "
|
|
5524
|
+
var version = "8.8.0";
|
|
5106
5525
|
|
|
5107
5526
|
Parser.acorn = {
|
|
5108
5527
|
Parser: Parser,
|
|
@@ -5113,10 +5532,10 @@ Parser.acorn = {
|
|
|
5113
5532
|
getLineInfo: getLineInfo,
|
|
5114
5533
|
Node: Node,
|
|
5115
5534
|
TokenType: TokenType,
|
|
5116
|
-
tokTypes: types,
|
|
5117
|
-
keywordTypes: keywords
|
|
5535
|
+
tokTypes: types$1,
|
|
5536
|
+
keywordTypes: keywords,
|
|
5118
5537
|
TokContext: TokContext,
|
|
5119
|
-
tokContexts: types
|
|
5538
|
+
tokContexts: types,
|
|
5120
5539
|
isIdentifierChar: isIdentifierChar,
|
|
5121
5540
|
isIdentifierStart: isIdentifierStart,
|
|
5122
5541
|
Token: Token,
|
|
@@ -5152,4 +5571,4 @@ function tokenizer(input, options) {
|
|
|
5152
5571
|
return Parser.tokenizer(input, options)
|
|
5153
5572
|
}
|
|
5154
5573
|
|
|
5155
|
-
export { Node, Parser, Position, SourceLocation, TokContext, Token, TokenType, defaultOptions, getLineInfo, isIdentifierChar, isIdentifierStart, isNewLine, keywords
|
|
5574
|
+
export { Node, Parser, Position, SourceLocation, TokContext, Token, TokenType, defaultOptions, getLineInfo, isIdentifierChar, isIdentifierStart, isNewLine, keywords as keywordTypes, lineBreak, lineBreakG, nonASCIIwhitespace, parse, parseExpressionAt, types as tokContexts, types$1 as tokTypes, tokenizer, version };
|