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,8 +1,22 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
4
|
-
(global = global || self, factory(global.acorn = {}));
|
|
5
|
-
}(this, (function (exports) { 'use strict';
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.acorn = {}));
|
|
5
|
+
})(this, (function (exports) { 'use strict';
|
|
6
|
+
|
|
7
|
+
// This file was generated. Do not modify manually!
|
|
8
|
+
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];
|
|
9
|
+
|
|
10
|
+
// This file was generated. Do not modify manually!
|
|
11
|
+
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];
|
|
12
|
+
|
|
13
|
+
// This file was generated. Do not modify manually!
|
|
14
|
+
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";
|
|
15
|
+
|
|
16
|
+
// This file was generated. Do not modify manually!
|
|
17
|
+
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";
|
|
18
|
+
|
|
19
|
+
// These are a run-length and offset encoded representation of the
|
|
6
20
|
|
|
7
21
|
// Reserved word lists for various dialects of the language
|
|
8
22
|
|
|
@@ -18,7 +32,7 @@
|
|
|
18
32
|
|
|
19
33
|
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";
|
|
20
34
|
|
|
21
|
-
var keywords = {
|
|
35
|
+
var keywords$1 = {
|
|
22
36
|
5: ecma5AndLessKeywords,
|
|
23
37
|
"5module": ecma5AndLessKeywords + " export import",
|
|
24
38
|
6: ecma5AndLessKeywords + " const class extends export import super"
|
|
@@ -28,31 +42,9 @@
|
|
|
28
42
|
|
|
29
43
|
// ## Character categories
|
|
30
44
|
|
|
31
|
-
// Big ugly regular expressions that match characters in the
|
|
32
|
-
// whitespace, identifier, and identifier-start categories. These
|
|
33
|
-
// are only applied when a character is found to actually have a
|
|
34
|
-
// code point above 128.
|
|
35
|
-
// Generated by `bin/generate-identifier-regex.js`.
|
|
36
|
-
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";
|
|
37
|
-
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";
|
|
38
|
-
|
|
39
45
|
var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
|
|
40
46
|
var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
|
|
41
47
|
|
|
42
|
-
nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
|
|
43
|
-
|
|
44
|
-
// These are a run-length and offset encoded representation of the
|
|
45
|
-
// >0xffff code points that are a valid part of identifiers. The
|
|
46
|
-
// offset starts at 0x10000, and each pair of numbers represents an
|
|
47
|
-
// offset to the next range, and then a size of the range. They were
|
|
48
|
-
// generated by bin/generate-identifier-regex.js
|
|
49
|
-
|
|
50
|
-
// eslint-disable-next-line comma-spacing
|
|
51
|
-
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];
|
|
52
|
-
|
|
53
|
-
// eslint-disable-next-line comma-spacing
|
|
54
|
-
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];
|
|
55
|
-
|
|
56
48
|
// This has a complexity linear to the value of the code. The
|
|
57
49
|
// assumption is that looking up astral identifier characters is
|
|
58
50
|
// rare.
|
|
@@ -137,21 +129,22 @@
|
|
|
137
129
|
|
|
138
130
|
// Map keyword names to token types.
|
|
139
131
|
|
|
140
|
-
var keywords
|
|
132
|
+
var keywords = {};
|
|
141
133
|
|
|
142
134
|
// Succinct definitions of keyword token types
|
|
143
135
|
function kw(name, options) {
|
|
144
136
|
if ( options === void 0 ) options = {};
|
|
145
137
|
|
|
146
138
|
options.keyword = name;
|
|
147
|
-
return keywords
|
|
139
|
+
return keywords[name] = new TokenType(name, options)
|
|
148
140
|
}
|
|
149
141
|
|
|
150
|
-
var types = {
|
|
142
|
+
var types$1 = {
|
|
151
143
|
num: new TokenType("num", startsExpr),
|
|
152
144
|
regexp: new TokenType("regexp", startsExpr),
|
|
153
145
|
string: new TokenType("string", startsExpr),
|
|
154
146
|
name: new TokenType("name", startsExpr),
|
|
147
|
+
privateId: new TokenType("privateId", startsExpr),
|
|
155
148
|
eof: new TokenType("eof"),
|
|
156
149
|
|
|
157
150
|
// Punctuation token types.
|
|
@@ -251,8 +244,19 @@
|
|
|
251
244
|
var lineBreak = /\r\n?|\n|\u2028|\u2029/;
|
|
252
245
|
var lineBreakG = new RegExp(lineBreak.source, "g");
|
|
253
246
|
|
|
254
|
-
function isNewLine(code
|
|
255
|
-
return code === 10 || code === 13 ||
|
|
247
|
+
function isNewLine(code) {
|
|
248
|
+
return code === 10 || code === 13 || code === 0x2028 || code === 0x2029
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
function nextLineBreak(code, from, end) {
|
|
252
|
+
if ( end === void 0 ) end = code.length;
|
|
253
|
+
|
|
254
|
+
for (var i = from; i < end; i++) {
|
|
255
|
+
var next = code.charCodeAt(i);
|
|
256
|
+
if (isNewLine(next))
|
|
257
|
+
{ return i < end - 1 && next === 13 && code.charCodeAt(i + 1) === 10 ? i + 2 : i + 1 }
|
|
258
|
+
}
|
|
259
|
+
return -1
|
|
256
260
|
}
|
|
257
261
|
|
|
258
262
|
var nonASCIIwhitespace = /[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/;
|
|
@@ -263,11 +267,9 @@
|
|
|
263
267
|
var hasOwnProperty = ref.hasOwnProperty;
|
|
264
268
|
var toString = ref.toString;
|
|
265
269
|
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
return hasOwnProperty.call(obj, propName)
|
|
270
|
-
}
|
|
270
|
+
var hasOwn = Object.hasOwn || (function (obj, propName) { return (
|
|
271
|
+
hasOwnProperty.call(obj, propName)
|
|
272
|
+
); });
|
|
271
273
|
|
|
272
274
|
var isArray = Array.isArray || (function (obj) { return (
|
|
273
275
|
toString.call(obj) === "[object Array]"
|
|
@@ -277,6 +279,15 @@
|
|
|
277
279
|
return new RegExp("^(?:" + words.replace(/ /g, "|") + ")$")
|
|
278
280
|
}
|
|
279
281
|
|
|
282
|
+
function codePointToString(code) {
|
|
283
|
+
// UTF-16 Decoding
|
|
284
|
+
if (code <= 0xFFFF) { return String.fromCharCode(code) }
|
|
285
|
+
code -= 0x10000;
|
|
286
|
+
return String.fromCharCode((code >> 10) + 0xD800, (code & 1023) + 0xDC00)
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
var loneSurrogate = /(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/;
|
|
290
|
+
|
|
280
291
|
// These are used when `options.locations` is on, for the
|
|
281
292
|
// `startLoc` and `endLoc` properties.
|
|
282
293
|
|
|
@@ -303,27 +314,24 @@
|
|
|
303
314
|
|
|
304
315
|
function getLineInfo(input, offset) {
|
|
305
316
|
for (var line = 1, cur = 0;;) {
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
cur = match.index + match[0].length;
|
|
311
|
-
} else {
|
|
312
|
-
return new Position(line, offset - cur)
|
|
313
|
-
}
|
|
317
|
+
var nextBreak = nextLineBreak(input, cur, offset);
|
|
318
|
+
if (nextBreak < 0) { return new Position(line, offset - cur) }
|
|
319
|
+
++line;
|
|
320
|
+
cur = nextBreak;
|
|
314
321
|
}
|
|
315
322
|
}
|
|
316
323
|
|
|
317
|
-
// A second
|
|
318
|
-
//
|
|
324
|
+
// A second argument must be given to configure the parser process.
|
|
325
|
+
// These options are recognized (only `ecmaVersion` is required):
|
|
319
326
|
|
|
320
327
|
var defaultOptions = {
|
|
321
328
|
// `ecmaVersion` indicates the ECMAScript version to parse. Must be
|
|
322
|
-
// either 3, 5, 6 (2015), 7 (2016), 8 (2017), 9 (2018),
|
|
323
|
-
// (2019)
|
|
324
|
-
//
|
|
325
|
-
//
|
|
326
|
-
|
|
329
|
+
// either 3, 5, 6 (or 2015), 7 (2016), 8 (2017), 9 (2018), 10
|
|
330
|
+
// (2019), 11 (2020), 12 (2021), 13 (2022), 14 (2023), or `"latest"`
|
|
331
|
+
// (the latest version the library supports). This influences
|
|
332
|
+
// support for strict mode, the set of reserved words, and support
|
|
333
|
+
// for new syntax features.
|
|
334
|
+
ecmaVersion: null,
|
|
327
335
|
// `sourceType` indicates the mode the code should be parsed in.
|
|
328
336
|
// Can be either `"script"` or `"module"`. This influences global
|
|
329
337
|
// strict mode and parsing of `import` and `export` declarations.
|
|
@@ -346,13 +354,19 @@
|
|
|
346
354
|
// error.
|
|
347
355
|
allowReturnOutsideFunction: false,
|
|
348
356
|
// When enabled, import/export statements are not constrained to
|
|
349
|
-
// appearing at the top of the program.
|
|
357
|
+
// appearing at the top of the program, and an import.meta expression
|
|
358
|
+
// in a script isn't considered an error.
|
|
350
359
|
allowImportExportEverywhere: false,
|
|
360
|
+
// By default, await identifiers are allowed to appear at the top-level scope only if ecmaVersion >= 2022.
|
|
351
361
|
// When enabled, await identifiers are allowed to appear at the top-level scope,
|
|
352
362
|
// but they are still not allowed in non-async functions.
|
|
353
|
-
allowAwaitOutsideFunction:
|
|
354
|
-
// When enabled,
|
|
355
|
-
//
|
|
363
|
+
allowAwaitOutsideFunction: null,
|
|
364
|
+
// When enabled, super identifiers are not constrained to
|
|
365
|
+
// appearing in methods and do not raise an error when they appear elsewhere.
|
|
366
|
+
allowSuperOutsideMethod: null,
|
|
367
|
+
// When enabled, hashbang directive in the beginning of file is
|
|
368
|
+
// allowed and treated as a line comment. Enabled by default when
|
|
369
|
+
// `ecmaVersion` >= 2023.
|
|
356
370
|
allowHashBang: false,
|
|
357
371
|
// When `locations` is on, `loc` properties holding objects with
|
|
358
372
|
// `start` and `end` properties in `{line, column}` form (with
|
|
@@ -404,18 +418,32 @@
|
|
|
404
418
|
|
|
405
419
|
// Interpret and default an options object
|
|
406
420
|
|
|
421
|
+
var warnedAboutEcmaVersion = false;
|
|
422
|
+
|
|
407
423
|
function getOptions(opts) {
|
|
408
424
|
var options = {};
|
|
409
425
|
|
|
410
426
|
for (var opt in defaultOptions)
|
|
411
|
-
{ options[opt] = opts &&
|
|
412
|
-
|
|
413
|
-
if (options.ecmaVersion
|
|
414
|
-
|
|
427
|
+
{ options[opt] = opts && hasOwn(opts, opt) ? opts[opt] : defaultOptions[opt]; }
|
|
428
|
+
|
|
429
|
+
if (options.ecmaVersion === "latest") {
|
|
430
|
+
options.ecmaVersion = 1e8;
|
|
431
|
+
} else if (options.ecmaVersion == null) {
|
|
432
|
+
if (!warnedAboutEcmaVersion && typeof console === "object" && console.warn) {
|
|
433
|
+
warnedAboutEcmaVersion = true;
|
|
434
|
+
console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.");
|
|
435
|
+
}
|
|
436
|
+
options.ecmaVersion = 11;
|
|
437
|
+
} else if (options.ecmaVersion >= 2015) {
|
|
438
|
+
options.ecmaVersion -= 2009;
|
|
439
|
+
}
|
|
415
440
|
|
|
416
441
|
if (options.allowReserved == null)
|
|
417
442
|
{ options.allowReserved = options.ecmaVersion < 5; }
|
|
418
443
|
|
|
444
|
+
if (opts.allowHashBang == null)
|
|
445
|
+
{ options.allowHashBang = options.ecmaVersion >= 14; }
|
|
446
|
+
|
|
419
447
|
if (isArray(options.onToken)) {
|
|
420
448
|
var tokens = options.onToken;
|
|
421
449
|
options.onToken = function (token) { return tokens.push(token); };
|
|
@@ -446,19 +474,20 @@
|
|
|
446
474
|
var
|
|
447
475
|
SCOPE_TOP = 1,
|
|
448
476
|
SCOPE_FUNCTION = 2,
|
|
449
|
-
SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION,
|
|
450
477
|
SCOPE_ASYNC = 4,
|
|
451
478
|
SCOPE_GENERATOR = 8,
|
|
452
479
|
SCOPE_ARROW = 16,
|
|
453
480
|
SCOPE_SIMPLE_CATCH = 32,
|
|
454
481
|
SCOPE_SUPER = 64,
|
|
455
|
-
SCOPE_DIRECT_SUPER = 128
|
|
482
|
+
SCOPE_DIRECT_SUPER = 128,
|
|
483
|
+
SCOPE_CLASS_STATIC_BLOCK = 256,
|
|
484
|
+
SCOPE_VAR = SCOPE_TOP | SCOPE_FUNCTION | SCOPE_CLASS_STATIC_BLOCK;
|
|
456
485
|
|
|
457
486
|
function functionFlags(async, generator) {
|
|
458
487
|
return SCOPE_FUNCTION | (async ? SCOPE_ASYNC : 0) | (generator ? SCOPE_GENERATOR : 0)
|
|
459
488
|
}
|
|
460
489
|
|
|
461
|
-
// Used in checkLVal and declareName to determine the type of a binding
|
|
490
|
+
// Used in checkLVal* and declareName to determine the type of a binding
|
|
462
491
|
var
|
|
463
492
|
BIND_NONE = 0, // Not a binding
|
|
464
493
|
BIND_VAR = 1, // Var-style binding
|
|
@@ -470,11 +499,10 @@
|
|
|
470
499
|
var Parser = function Parser(options, input, startPos) {
|
|
471
500
|
this.options = options = getOptions(options);
|
|
472
501
|
this.sourceFile = options.sourceFile;
|
|
473
|
-
this.keywords = wordsRegexp(keywords[options.ecmaVersion >= 6 ? 6 : options.sourceType === "module" ? "5module" : 5]);
|
|
502
|
+
this.keywords = wordsRegexp(keywords$1[options.ecmaVersion >= 6 ? 6 : options.sourceType === "module" ? "5module" : 5]);
|
|
474
503
|
var reserved = "";
|
|
475
504
|
if (options.allowReserved !== true) {
|
|
476
|
-
|
|
477
|
-
{ if (reserved = reservedWords[v]) { break } }
|
|
505
|
+
reserved = reservedWords[options.ecmaVersion >= 6 ? 6 : options.ecmaVersion === 5 ? 5 : 3];
|
|
478
506
|
if (options.sourceType === "module") { reserved += " await"; }
|
|
479
507
|
}
|
|
480
508
|
this.reservedWords = wordsRegexp(reserved);
|
|
@@ -502,7 +530,7 @@
|
|
|
502
530
|
|
|
503
531
|
// Properties of the current token:
|
|
504
532
|
// Its type
|
|
505
|
-
this.type = types.eof;
|
|
533
|
+
this.type = types$1.eof;
|
|
506
534
|
// For tokens that include more information than their type, the value
|
|
507
535
|
this.value = null;
|
|
508
536
|
// Its start and end offset
|
|
@@ -527,13 +555,14 @@
|
|
|
527
555
|
|
|
528
556
|
// Used to signify the start of a potential arrow function
|
|
529
557
|
this.potentialArrowAt = -1;
|
|
558
|
+
this.potentialArrowInForAwait = false;
|
|
530
559
|
|
|
531
560
|
// Positions to delayed-check that yield/await does not exist in default parameters.
|
|
532
561
|
this.yieldPos = this.awaitPos = this.awaitIdentPos = 0;
|
|
533
562
|
// Labels in scope.
|
|
534
563
|
this.labels = [];
|
|
535
564
|
// Thus-far undefined exports.
|
|
536
|
-
this.undefinedExports =
|
|
565
|
+
this.undefinedExports = Object.create(null);
|
|
537
566
|
|
|
538
567
|
// If enabled, skip leading hashbang line.
|
|
539
568
|
if (this.pos === 0 && options.allowHashBang && this.input.slice(0, 2) === "#!")
|
|
@@ -545,9 +574,14 @@
|
|
|
545
574
|
|
|
546
575
|
// For RegExp validation
|
|
547
576
|
this.regexpState = null;
|
|
577
|
+
|
|
578
|
+
// The stack of private names.
|
|
579
|
+
// Each element has two properties: 'declared' and 'used'.
|
|
580
|
+
// When it exited from the outermost class definition, all used private names must be declared.
|
|
581
|
+
this.privateNameStack = [];
|
|
548
582
|
};
|
|
549
583
|
|
|
550
|
-
var prototypeAccessors = { inFunction: { configurable: true },inGenerator: { configurable: true },inAsync: { configurable: true },allowSuper: { configurable: true },allowDirectSuper: { configurable: true },treatFunctionsAsVar: { configurable: true } };
|
|
584
|
+
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 } };
|
|
551
585
|
|
|
552
586
|
Parser.prototype.parse = function parse () {
|
|
553
587
|
var node = this.options.program || this.startNode();
|
|
@@ -556,14 +590,41 @@
|
|
|
556
590
|
};
|
|
557
591
|
|
|
558
592
|
prototypeAccessors.inFunction.get = function () { return (this.currentVarScope().flags & SCOPE_FUNCTION) > 0 };
|
|
559
|
-
|
|
560
|
-
prototypeAccessors.
|
|
561
|
-
|
|
593
|
+
|
|
594
|
+
prototypeAccessors.inGenerator.get = function () { return (this.currentVarScope().flags & SCOPE_GENERATOR) > 0 && !this.currentVarScope().inClassFieldInit };
|
|
595
|
+
|
|
596
|
+
prototypeAccessors.inAsync.get = function () { return (this.currentVarScope().flags & SCOPE_ASYNC) > 0 && !this.currentVarScope().inClassFieldInit };
|
|
597
|
+
|
|
598
|
+
prototypeAccessors.canAwait.get = function () {
|
|
599
|
+
for (var i = this.scopeStack.length - 1; i >= 0; i--) {
|
|
600
|
+
var scope = this.scopeStack[i];
|
|
601
|
+
if (scope.inClassFieldInit || scope.flags & SCOPE_CLASS_STATIC_BLOCK) { return false }
|
|
602
|
+
if (scope.flags & SCOPE_FUNCTION) { return (scope.flags & SCOPE_ASYNC) > 0 }
|
|
603
|
+
}
|
|
604
|
+
return (this.inModule && this.options.ecmaVersion >= 13) || this.options.allowAwaitOutsideFunction
|
|
605
|
+
};
|
|
606
|
+
|
|
607
|
+
prototypeAccessors.allowSuper.get = function () {
|
|
608
|
+
var ref = this.currentThisScope();
|
|
609
|
+
var flags = ref.flags;
|
|
610
|
+
var inClassFieldInit = ref.inClassFieldInit;
|
|
611
|
+
return (flags & SCOPE_SUPER) > 0 || inClassFieldInit || this.options.allowSuperOutsideMethod
|
|
612
|
+
};
|
|
613
|
+
|
|
562
614
|
prototypeAccessors.allowDirectSuper.get = function () { return (this.currentThisScope().flags & SCOPE_DIRECT_SUPER) > 0 };
|
|
615
|
+
|
|
563
616
|
prototypeAccessors.treatFunctionsAsVar.get = function () { return this.treatFunctionsAsVarInScope(this.currentScope()) };
|
|
564
617
|
|
|
565
|
-
|
|
566
|
-
|
|
618
|
+
prototypeAccessors.allowNewDotTarget.get = function () {
|
|
619
|
+
var ref = this.currentThisScope();
|
|
620
|
+
var flags = ref.flags;
|
|
621
|
+
var inClassFieldInit = ref.inClassFieldInit;
|
|
622
|
+
return (flags & (SCOPE_FUNCTION | SCOPE_CLASS_STATIC_BLOCK)) > 0 || inClassFieldInit
|
|
623
|
+
};
|
|
624
|
+
|
|
625
|
+
prototypeAccessors.inClassStaticBlock.get = function () {
|
|
626
|
+
return (this.currentVarScope().flags & SCOPE_CLASS_STATIC_BLOCK) > 0
|
|
627
|
+
};
|
|
567
628
|
|
|
568
629
|
Parser.extend = function extend () {
|
|
569
630
|
var plugins = [], len = arguments.length;
|
|
@@ -590,12 +651,13 @@
|
|
|
590
651
|
|
|
591
652
|
Object.defineProperties( Parser.prototype, prototypeAccessors );
|
|
592
653
|
|
|
593
|
-
var pp = Parser.prototype;
|
|
654
|
+
var pp$9 = Parser.prototype;
|
|
594
655
|
|
|
595
656
|
// ## Parser utilities
|
|
596
657
|
|
|
597
658
|
var literal = /^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;
|
|
598
|
-
pp.strictDirective = function(start) {
|
|
659
|
+
pp$9.strictDirective = function(start) {
|
|
660
|
+
if (this.options.ecmaVersion < 5) { return false }
|
|
599
661
|
for (;;) {
|
|
600
662
|
// Try to find string literal.
|
|
601
663
|
skipWhiteSpace.lastIndex = start;
|
|
@@ -623,7 +685,7 @@
|
|
|
623
685
|
// Predicate that tests whether the next token is of the given
|
|
624
686
|
// type, and if yes, consumes it as a side effect.
|
|
625
687
|
|
|
626
|
-
pp.eat = function(type) {
|
|
688
|
+
pp$9.eat = function(type) {
|
|
627
689
|
if (this.type === type) {
|
|
628
690
|
this.next();
|
|
629
691
|
return true
|
|
@@ -634,13 +696,13 @@
|
|
|
634
696
|
|
|
635
697
|
// Tests whether parsed token is a contextual keyword.
|
|
636
698
|
|
|
637
|
-
pp.isContextual = function(name) {
|
|
638
|
-
return this.type === types.name && this.value === name && !this.containsEsc
|
|
699
|
+
pp$9.isContextual = function(name) {
|
|
700
|
+
return this.type === types$1.name && this.value === name && !this.containsEsc
|
|
639
701
|
};
|
|
640
702
|
|
|
641
703
|
// Consumes contextual keyword if possible.
|
|
642
704
|
|
|
643
|
-
pp.eatContextual = function(name) {
|
|
705
|
+
pp$9.eatContextual = function(name) {
|
|
644
706
|
if (!this.isContextual(name)) { return false }
|
|
645
707
|
this.next();
|
|
646
708
|
return true
|
|
@@ -648,19 +710,19 @@
|
|
|
648
710
|
|
|
649
711
|
// Asserts that following token is given contextual keyword.
|
|
650
712
|
|
|
651
|
-
pp.expectContextual = function(name) {
|
|
713
|
+
pp$9.expectContextual = function(name) {
|
|
652
714
|
if (!this.eatContextual(name)) { this.unexpected(); }
|
|
653
715
|
};
|
|
654
716
|
|
|
655
717
|
// Test whether a semicolon can be inserted at the current position.
|
|
656
718
|
|
|
657
|
-
pp.canInsertSemicolon = function() {
|
|
658
|
-
return this.type === types.eof ||
|
|
659
|
-
this.type === types.braceR ||
|
|
719
|
+
pp$9.canInsertSemicolon = function() {
|
|
720
|
+
return this.type === types$1.eof ||
|
|
721
|
+
this.type === types$1.braceR ||
|
|
660
722
|
lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
|
661
723
|
};
|
|
662
724
|
|
|
663
|
-
pp.insertSemicolon = function() {
|
|
725
|
+
pp$9.insertSemicolon = function() {
|
|
664
726
|
if (this.canInsertSemicolon()) {
|
|
665
727
|
if (this.options.onInsertedSemicolon)
|
|
666
728
|
{ this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc); }
|
|
@@ -671,11 +733,11 @@
|
|
|
671
733
|
// Consume a semicolon, or, failing that, see if we are allowed to
|
|
672
734
|
// pretend that there is a semicolon at this position.
|
|
673
735
|
|
|
674
|
-
pp.semicolon = function() {
|
|
675
|
-
if (!this.eat(types.semi) && !this.insertSemicolon()) { this.unexpected(); }
|
|
736
|
+
pp$9.semicolon = function() {
|
|
737
|
+
if (!this.eat(types$1.semi) && !this.insertSemicolon()) { this.unexpected(); }
|
|
676
738
|
};
|
|
677
739
|
|
|
678
|
-
pp.afterTrailingComma = function(tokType, notNext) {
|
|
740
|
+
pp$9.afterTrailingComma = function(tokType, notNext) {
|
|
679
741
|
if (this.type === tokType) {
|
|
680
742
|
if (this.options.onTrailingComma)
|
|
681
743
|
{ this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc); }
|
|
@@ -688,34 +750,34 @@
|
|
|
688
750
|
// Expect a token of a given type. If found, consume it, otherwise,
|
|
689
751
|
// raise an unexpected token error.
|
|
690
752
|
|
|
691
|
-
pp.expect = function(type) {
|
|
753
|
+
pp$9.expect = function(type) {
|
|
692
754
|
this.eat(type) || this.unexpected();
|
|
693
755
|
};
|
|
694
756
|
|
|
695
757
|
// Raise an unexpected token error.
|
|
696
758
|
|
|
697
|
-
pp.unexpected = function(pos) {
|
|
759
|
+
pp$9.unexpected = function(pos) {
|
|
698
760
|
this.raise(pos != null ? pos : this.start, "Unexpected token");
|
|
699
761
|
};
|
|
700
762
|
|
|
701
|
-
function DestructuringErrors() {
|
|
763
|
+
var DestructuringErrors = function DestructuringErrors() {
|
|
702
764
|
this.shorthandAssign =
|
|
703
765
|
this.trailingComma =
|
|
704
766
|
this.parenthesizedAssign =
|
|
705
767
|
this.parenthesizedBind =
|
|
706
768
|
this.doubleProto =
|
|
707
769
|
-1;
|
|
708
|
-
}
|
|
770
|
+
};
|
|
709
771
|
|
|
710
|
-
pp.checkPatternErrors = function(refDestructuringErrors, isAssign) {
|
|
772
|
+
pp$9.checkPatternErrors = function(refDestructuringErrors, isAssign) {
|
|
711
773
|
if (!refDestructuringErrors) { return }
|
|
712
774
|
if (refDestructuringErrors.trailingComma > -1)
|
|
713
775
|
{ this.raiseRecoverable(refDestructuringErrors.trailingComma, "Comma is not permitted after the rest element"); }
|
|
714
776
|
var parens = isAssign ? refDestructuringErrors.parenthesizedAssign : refDestructuringErrors.parenthesizedBind;
|
|
715
|
-
if (parens > -1) { this.raiseRecoverable(parens, "Parenthesized pattern"); }
|
|
777
|
+
if (parens > -1) { this.raiseRecoverable(parens, isAssign ? "Assigning to rvalue" : "Parenthesized pattern"); }
|
|
716
778
|
};
|
|
717
779
|
|
|
718
|
-
pp.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
|
780
|
+
pp$9.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
|
719
781
|
if (!refDestructuringErrors) { return false }
|
|
720
782
|
var shorthandAssign = refDestructuringErrors.shorthandAssign;
|
|
721
783
|
var doubleProto = refDestructuringErrors.doubleProto;
|
|
@@ -726,20 +788,20 @@
|
|
|
726
788
|
{ this.raiseRecoverable(doubleProto, "Redefinition of __proto__ property"); }
|
|
727
789
|
};
|
|
728
790
|
|
|
729
|
-
pp.checkYieldAwaitInDefaultParams = function() {
|
|
791
|
+
pp$9.checkYieldAwaitInDefaultParams = function() {
|
|
730
792
|
if (this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos))
|
|
731
793
|
{ this.raise(this.yieldPos, "Yield expression cannot be a default value"); }
|
|
732
794
|
if (this.awaitPos)
|
|
733
795
|
{ this.raise(this.awaitPos, "Await expression cannot be a default value"); }
|
|
734
796
|
};
|
|
735
797
|
|
|
736
|
-
pp.isSimpleAssignTarget = function(expr) {
|
|
798
|
+
pp$9.isSimpleAssignTarget = function(expr) {
|
|
737
799
|
if (expr.type === "ParenthesizedExpression")
|
|
738
800
|
{ return this.isSimpleAssignTarget(expr.expression) }
|
|
739
801
|
return expr.type === "Identifier" || expr.type === "MemberExpression"
|
|
740
802
|
};
|
|
741
803
|
|
|
742
|
-
var pp$
|
|
804
|
+
var pp$8 = Parser.prototype;
|
|
743
805
|
|
|
744
806
|
// ### Statement parsing
|
|
745
807
|
|
|
@@ -748,10 +810,10 @@
|
|
|
748
810
|
// `program` argument. If present, the statements will be appended
|
|
749
811
|
// to its body instead of creating a new node.
|
|
750
812
|
|
|
751
|
-
pp$
|
|
752
|
-
var exports =
|
|
813
|
+
pp$8.parseTopLevel = function(node) {
|
|
814
|
+
var exports = Object.create(null);
|
|
753
815
|
if (!node.body) { node.body = []; }
|
|
754
|
-
while (this.type !== types.eof) {
|
|
816
|
+
while (this.type !== types$1.eof) {
|
|
755
817
|
var stmt = this.parseStatement(null, true, exports);
|
|
756
818
|
node.body.push(stmt);
|
|
757
819
|
}
|
|
@@ -770,7 +832,7 @@
|
|
|
770
832
|
|
|
771
833
|
var loopLabel = {kind: "loop"}, switchLabel = {kind: "switch"};
|
|
772
834
|
|
|
773
|
-
pp$
|
|
835
|
+
pp$8.isLet = function(context) {
|
|
774
836
|
if (this.options.ecmaVersion < 6 || !this.isContextual("let")) { return false }
|
|
775
837
|
skipWhiteSpace.lastIndex = this.pos;
|
|
776
838
|
var skip = skipWhiteSpace.exec(this.input);
|
|
@@ -779,13 +841,14 @@
|
|
|
779
841
|
// Statement) is allowed here. If context is not empty then only a Statement
|
|
780
842
|
// is allowed. However, `let [` is an explicit negative lookahead for
|
|
781
843
|
// ExpressionStatement, so special-case it first.
|
|
782
|
-
if (nextCh === 91) { return true } // '['
|
|
844
|
+
if (nextCh === 91 || nextCh === 92 || nextCh > 0xd7ff && nextCh < 0xdc00) { return true } // '[', '/', astral
|
|
783
845
|
if (context) { return false }
|
|
784
846
|
|
|
785
847
|
if (nextCh === 123) { return true } // '{'
|
|
786
848
|
if (isIdentifierStart(nextCh, true)) {
|
|
787
849
|
var pos = next + 1;
|
|
788
|
-
while (isIdentifierChar(this.input.charCodeAt(pos), true)) { ++pos; }
|
|
850
|
+
while (isIdentifierChar(nextCh = this.input.charCodeAt(pos), true)) { ++pos; }
|
|
851
|
+
if (nextCh === 92 || nextCh > 0xd7ff && nextCh < 0xdc00) { return true }
|
|
789
852
|
var ident = this.input.slice(next, pos);
|
|
790
853
|
if (!keywordRelationalOperator.test(ident)) { return true }
|
|
791
854
|
}
|
|
@@ -795,16 +858,17 @@
|
|
|
795
858
|
// check 'async [no LineTerminator here] function'
|
|
796
859
|
// - 'async /*foo*/ function' is OK.
|
|
797
860
|
// - 'async /*\n*/ function' is invalid.
|
|
798
|
-
pp$
|
|
861
|
+
pp$8.isAsyncFunction = function() {
|
|
799
862
|
if (this.options.ecmaVersion < 8 || !this.isContextual("async"))
|
|
800
863
|
{ return false }
|
|
801
864
|
|
|
802
865
|
skipWhiteSpace.lastIndex = this.pos;
|
|
803
866
|
var skip = skipWhiteSpace.exec(this.input);
|
|
804
|
-
var next = this.pos + skip[0].length;
|
|
867
|
+
var next = this.pos + skip[0].length, after;
|
|
805
868
|
return !lineBreak.test(this.input.slice(this.pos, next)) &&
|
|
806
869
|
this.input.slice(next, next + 8) === "function" &&
|
|
807
|
-
(next + 8 === this.input.length ||
|
|
870
|
+
(next + 8 === this.input.length ||
|
|
871
|
+
!(isIdentifierChar(after = this.input.charCodeAt(next + 8)) || after > 0xd7ff && after < 0xdc00))
|
|
808
872
|
};
|
|
809
873
|
|
|
810
874
|
// Parse a single statement.
|
|
@@ -814,11 +878,11 @@
|
|
|
814
878
|
// `if (foo) /blah/.exec(foo)`, where looking at the previous token
|
|
815
879
|
// does not help.
|
|
816
880
|
|
|
817
|
-
pp$
|
|
881
|
+
pp$8.parseStatement = function(context, topLevel, exports) {
|
|
818
882
|
var starttype = this.type, node = this.startNode(), kind;
|
|
819
883
|
|
|
820
884
|
if (this.isLet(context)) {
|
|
821
|
-
starttype = types._var;
|
|
885
|
+
starttype = types$1._var;
|
|
822
886
|
kind = "let";
|
|
823
887
|
}
|
|
824
888
|
|
|
@@ -827,35 +891,35 @@
|
|
|
827
891
|
// complexity.
|
|
828
892
|
|
|
829
893
|
switch (starttype) {
|
|
830
|
-
case types._break: case types._continue: return this.parseBreakContinueStatement(node, starttype.keyword)
|
|
831
|
-
case types._debugger: return this.parseDebuggerStatement(node)
|
|
832
|
-
case types._do: return this.parseDoStatement(node)
|
|
833
|
-
case types._for: return this.parseForStatement(node)
|
|
834
|
-
case types._function:
|
|
894
|
+
case types$1._break: case types$1._continue: return this.parseBreakContinueStatement(node, starttype.keyword)
|
|
895
|
+
case types$1._debugger: return this.parseDebuggerStatement(node)
|
|
896
|
+
case types$1._do: return this.parseDoStatement(node)
|
|
897
|
+
case types$1._for: return this.parseForStatement(node)
|
|
898
|
+
case types$1._function:
|
|
835
899
|
// Function as sole body of either an if statement or a labeled statement
|
|
836
900
|
// works, but not when it is part of a labeled statement that is the sole
|
|
837
901
|
// body of an if statement.
|
|
838
902
|
if ((context && (this.strict || context !== "if" && context !== "label")) && this.options.ecmaVersion >= 6) { this.unexpected(); }
|
|
839
903
|
return this.parseFunctionStatement(node, false, !context)
|
|
840
|
-
case types._class:
|
|
904
|
+
case types$1._class:
|
|
841
905
|
if (context) { this.unexpected(); }
|
|
842
906
|
return this.parseClass(node, true)
|
|
843
|
-
case types._if: return this.parseIfStatement(node)
|
|
844
|
-
case types._return: return this.parseReturnStatement(node)
|
|
845
|
-
case types._switch: return this.parseSwitchStatement(node)
|
|
846
|
-
case types._throw: return this.parseThrowStatement(node)
|
|
847
|
-
case types._try: return this.parseTryStatement(node)
|
|
848
|
-
case types._const: case types._var:
|
|
907
|
+
case types$1._if: return this.parseIfStatement(node)
|
|
908
|
+
case types$1._return: return this.parseReturnStatement(node)
|
|
909
|
+
case types$1._switch: return this.parseSwitchStatement(node)
|
|
910
|
+
case types$1._throw: return this.parseThrowStatement(node)
|
|
911
|
+
case types$1._try: return this.parseTryStatement(node)
|
|
912
|
+
case types$1._const: case types$1._var:
|
|
849
913
|
kind = kind || this.value;
|
|
850
914
|
if (context && kind !== "var") { this.unexpected(); }
|
|
851
915
|
return this.parseVarStatement(node, kind)
|
|
852
|
-
case types._while: return this.parseWhileStatement(node)
|
|
853
|
-
case types._with: return this.parseWithStatement(node)
|
|
854
|
-
case types.braceL: return this.parseBlock(true, node)
|
|
855
|
-
case types.semi: return this.parseEmptyStatement(node)
|
|
856
|
-
case types._export:
|
|
857
|
-
case types._import:
|
|
858
|
-
if (this.options.ecmaVersion > 10 && starttype === types._import) {
|
|
916
|
+
case types$1._while: return this.parseWhileStatement(node)
|
|
917
|
+
case types$1._with: return this.parseWithStatement(node)
|
|
918
|
+
case types$1.braceL: return this.parseBlock(true, node)
|
|
919
|
+
case types$1.semi: return this.parseEmptyStatement(node)
|
|
920
|
+
case types$1._export:
|
|
921
|
+
case types$1._import:
|
|
922
|
+
if (this.options.ecmaVersion > 10 && starttype === types$1._import) {
|
|
859
923
|
skipWhiteSpace.lastIndex = this.pos;
|
|
860
924
|
var skip = skipWhiteSpace.exec(this.input);
|
|
861
925
|
var next = this.pos + skip[0].length, nextCh = this.input.charCodeAt(next);
|
|
@@ -869,7 +933,7 @@
|
|
|
869
933
|
if (!this.inModule)
|
|
870
934
|
{ this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'"); }
|
|
871
935
|
}
|
|
872
|
-
return starttype === types._import ? this.parseImport(node) : this.parseExport(node, exports)
|
|
936
|
+
return starttype === types$1._import ? this.parseImport(node) : this.parseExport(node, exports)
|
|
873
937
|
|
|
874
938
|
// If the statement does not start with a statement keyword or a
|
|
875
939
|
// brace, it's an ExpressionStatement or LabeledStatement. We
|
|
@@ -884,17 +948,17 @@
|
|
|
884
948
|
}
|
|
885
949
|
|
|
886
950
|
var maybeName = this.value, expr = this.parseExpression();
|
|
887
|
-
if (starttype === types.name && expr.type === "Identifier" && this.eat(types.colon))
|
|
951
|
+
if (starttype === types$1.name && expr.type === "Identifier" && this.eat(types$1.colon))
|
|
888
952
|
{ return this.parseLabeledStatement(node, maybeName, expr, context) }
|
|
889
953
|
else { return this.parseExpressionStatement(node, expr) }
|
|
890
954
|
}
|
|
891
955
|
};
|
|
892
956
|
|
|
893
|
-
pp$
|
|
957
|
+
pp$8.parseBreakContinueStatement = function(node, keyword) {
|
|
894
958
|
var isBreak = keyword === "break";
|
|
895
959
|
this.next();
|
|
896
|
-
if (this.eat(types.semi) || this.insertSemicolon()) { node.label = null; }
|
|
897
|
-
else if (this.type !== types.name) { this.unexpected(); }
|
|
960
|
+
if (this.eat(types$1.semi) || this.insertSemicolon()) { node.label = null; }
|
|
961
|
+
else if (this.type !== types$1.name) { this.unexpected(); }
|
|
898
962
|
else {
|
|
899
963
|
node.label = this.parseIdent();
|
|
900
964
|
this.semicolon();
|
|
@@ -914,21 +978,21 @@
|
|
|
914
978
|
return this.finishNode(node, isBreak ? "BreakStatement" : "ContinueStatement")
|
|
915
979
|
};
|
|
916
980
|
|
|
917
|
-
pp$
|
|
981
|
+
pp$8.parseDebuggerStatement = function(node) {
|
|
918
982
|
this.next();
|
|
919
983
|
this.semicolon();
|
|
920
984
|
return this.finishNode(node, "DebuggerStatement")
|
|
921
985
|
};
|
|
922
986
|
|
|
923
|
-
pp$
|
|
987
|
+
pp$8.parseDoStatement = function(node) {
|
|
924
988
|
this.next();
|
|
925
989
|
this.labels.push(loopLabel);
|
|
926
990
|
node.body = this.parseStatement("do");
|
|
927
991
|
this.labels.pop();
|
|
928
|
-
this.expect(types._while);
|
|
992
|
+
this.expect(types$1._while);
|
|
929
993
|
node.test = this.parseParenExpression();
|
|
930
994
|
if (this.options.ecmaVersion >= 6)
|
|
931
|
-
{ this.eat(types.semi); }
|
|
995
|
+
{ this.eat(types$1.semi); }
|
|
932
996
|
else
|
|
933
997
|
{ this.semicolon(); }
|
|
934
998
|
return this.finishNode(node, "DoWhileStatement")
|
|
@@ -942,25 +1006,25 @@
|
|
|
942
1006
|
// part (semicolon immediately after the opening parenthesis), it
|
|
943
1007
|
// is a regular `for` loop.
|
|
944
1008
|
|
|
945
|
-
pp$
|
|
1009
|
+
pp$8.parseForStatement = function(node) {
|
|
946
1010
|
this.next();
|
|
947
|
-
var awaitAt = (this.options.ecmaVersion >= 9 &&
|
|
1011
|
+
var awaitAt = (this.options.ecmaVersion >= 9 && this.canAwait && this.eatContextual("await")) ? this.lastTokStart : -1;
|
|
948
1012
|
this.labels.push(loopLabel);
|
|
949
1013
|
this.enterScope(0);
|
|
950
|
-
this.expect(types.parenL);
|
|
951
|
-
if (this.type === types.semi) {
|
|
1014
|
+
this.expect(types$1.parenL);
|
|
1015
|
+
if (this.type === types$1.semi) {
|
|
952
1016
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
953
1017
|
return this.parseFor(node, null)
|
|
954
1018
|
}
|
|
955
1019
|
var isLet = this.isLet();
|
|
956
|
-
if (this.type === types._var || this.type === types._const || isLet) {
|
|
1020
|
+
if (this.type === types$1._var || this.type === types$1._const || isLet) {
|
|
957
1021
|
var init$1 = this.startNode(), kind = isLet ? "let" : this.value;
|
|
958
1022
|
this.next();
|
|
959
1023
|
this.parseVar(init$1, true, kind);
|
|
960
1024
|
this.finishNode(init$1, "VariableDeclaration");
|
|
961
|
-
if ((this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) && init$1.declarations.length === 1) {
|
|
1025
|
+
if ((this.type === types$1._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) && init$1.declarations.length === 1) {
|
|
962
1026
|
if (this.options.ecmaVersion >= 9) {
|
|
963
|
-
if (this.type === types._in) {
|
|
1027
|
+
if (this.type === types$1._in) {
|
|
964
1028
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
965
1029
|
} else { node.await = awaitAt > -1; }
|
|
966
1030
|
}
|
|
@@ -969,16 +1033,18 @@
|
|
|
969
1033
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
970
1034
|
return this.parseFor(node, init$1)
|
|
971
1035
|
}
|
|
1036
|
+
var startsWithLet = this.isContextual("let"), isForOf = false;
|
|
972
1037
|
var refDestructuringErrors = new DestructuringErrors;
|
|
973
|
-
var init = this.parseExpression(true, refDestructuringErrors);
|
|
974
|
-
if (this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) {
|
|
1038
|
+
var init = this.parseExpression(awaitAt > -1 ? "await" : true, refDestructuringErrors);
|
|
1039
|
+
if (this.type === types$1._in || (isForOf = this.options.ecmaVersion >= 6 && this.isContextual("of"))) {
|
|
975
1040
|
if (this.options.ecmaVersion >= 9) {
|
|
976
|
-
if (this.type === types._in) {
|
|
1041
|
+
if (this.type === types$1._in) {
|
|
977
1042
|
if (awaitAt > -1) { this.unexpected(awaitAt); }
|
|
978
1043
|
} else { node.await = awaitAt > -1; }
|
|
979
1044
|
}
|
|
1045
|
+
if (startsWithLet && isForOf) { this.raise(init.start, "The left-hand side of a for-of loop may not start with 'let'."); }
|
|
980
1046
|
this.toAssignable(init, false, refDestructuringErrors);
|
|
981
|
-
this.
|
|
1047
|
+
this.checkLValPattern(init);
|
|
982
1048
|
return this.parseForIn(node, init)
|
|
983
1049
|
} else {
|
|
984
1050
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
@@ -987,21 +1053,21 @@
|
|
|
987
1053
|
return this.parseFor(node, init)
|
|
988
1054
|
};
|
|
989
1055
|
|
|
990
|
-
pp$
|
|
1056
|
+
pp$8.parseFunctionStatement = function(node, isAsync, declarationPosition) {
|
|
991
1057
|
this.next();
|
|
992
1058
|
return this.parseFunction(node, FUNC_STATEMENT | (declarationPosition ? 0 : FUNC_HANGING_STATEMENT), false, isAsync)
|
|
993
1059
|
};
|
|
994
1060
|
|
|
995
|
-
pp$
|
|
1061
|
+
pp$8.parseIfStatement = function(node) {
|
|
996
1062
|
this.next();
|
|
997
1063
|
node.test = this.parseParenExpression();
|
|
998
1064
|
// allow function declarations in branches, but only in non-strict mode
|
|
999
1065
|
node.consequent = this.parseStatement("if");
|
|
1000
|
-
node.alternate = this.eat(types._else) ? this.parseStatement("if") : null;
|
|
1066
|
+
node.alternate = this.eat(types$1._else) ? this.parseStatement("if") : null;
|
|
1001
1067
|
return this.finishNode(node, "IfStatement")
|
|
1002
1068
|
};
|
|
1003
1069
|
|
|
1004
|
-
pp$
|
|
1070
|
+
pp$8.parseReturnStatement = function(node) {
|
|
1005
1071
|
if (!this.inFunction && !this.options.allowReturnOutsideFunction)
|
|
1006
1072
|
{ this.raise(this.start, "'return' outside of function"); }
|
|
1007
1073
|
this.next();
|
|
@@ -1010,16 +1076,16 @@
|
|
|
1010
1076
|
// optional arguments, we eagerly look for a semicolon or the
|
|
1011
1077
|
// possibility to insert one.
|
|
1012
1078
|
|
|
1013
|
-
if (this.eat(types.semi) || this.insertSemicolon()) { node.argument = null; }
|
|
1079
|
+
if (this.eat(types$1.semi) || this.insertSemicolon()) { node.argument = null; }
|
|
1014
1080
|
else { node.argument = this.parseExpression(); this.semicolon(); }
|
|
1015
1081
|
return this.finishNode(node, "ReturnStatement")
|
|
1016
1082
|
};
|
|
1017
1083
|
|
|
1018
|
-
pp$
|
|
1084
|
+
pp$8.parseSwitchStatement = function(node) {
|
|
1019
1085
|
this.next();
|
|
1020
1086
|
node.discriminant = this.parseParenExpression();
|
|
1021
1087
|
node.cases = [];
|
|
1022
|
-
this.expect(types.braceL);
|
|
1088
|
+
this.expect(types$1.braceL);
|
|
1023
1089
|
this.labels.push(switchLabel);
|
|
1024
1090
|
this.enterScope(0);
|
|
1025
1091
|
|
|
@@ -1028,9 +1094,9 @@
|
|
|
1028
1094
|
// adding statements to.
|
|
1029
1095
|
|
|
1030
1096
|
var cur;
|
|
1031
|
-
for (var sawDefault = false; this.type !== types.braceR;) {
|
|
1032
|
-
if (this.type === types._case || this.type === types._default) {
|
|
1033
|
-
var isCase = this.type === types._case;
|
|
1097
|
+
for (var sawDefault = false; this.type !== types$1.braceR;) {
|
|
1098
|
+
if (this.type === types$1._case || this.type === types$1._default) {
|
|
1099
|
+
var isCase = this.type === types$1._case;
|
|
1034
1100
|
if (cur) { this.finishNode(cur, "SwitchCase"); }
|
|
1035
1101
|
node.cases.push(cur = this.startNode());
|
|
1036
1102
|
cur.consequent = [];
|
|
@@ -1042,7 +1108,7 @@
|
|
|
1042
1108
|
sawDefault = true;
|
|
1043
1109
|
cur.test = null;
|
|
1044
1110
|
}
|
|
1045
|
-
this.expect(types.colon);
|
|
1111
|
+
this.expect(types$1.colon);
|
|
1046
1112
|
} else {
|
|
1047
1113
|
if (!cur) { this.unexpected(); }
|
|
1048
1114
|
cur.consequent.push(this.parseStatement(null));
|
|
@@ -1055,7 +1121,7 @@
|
|
|
1055
1121
|
return this.finishNode(node, "SwitchStatement")
|
|
1056
1122
|
};
|
|
1057
1123
|
|
|
1058
|
-
pp$
|
|
1124
|
+
pp$8.parseThrowStatement = function(node) {
|
|
1059
1125
|
this.next();
|
|
1060
1126
|
if (lineBreak.test(this.input.slice(this.lastTokEnd, this.start)))
|
|
1061
1127
|
{ this.raise(this.lastTokEnd, "Illegal newline after throw"); }
|
|
@@ -1066,21 +1132,21 @@
|
|
|
1066
1132
|
|
|
1067
1133
|
// Reused empty array added for node fields that are always empty.
|
|
1068
1134
|
|
|
1069
|
-
var empty = [];
|
|
1135
|
+
var empty$1 = [];
|
|
1070
1136
|
|
|
1071
|
-
pp$
|
|
1137
|
+
pp$8.parseTryStatement = function(node) {
|
|
1072
1138
|
this.next();
|
|
1073
1139
|
node.block = this.parseBlock();
|
|
1074
1140
|
node.handler = null;
|
|
1075
|
-
if (this.type === types._catch) {
|
|
1141
|
+
if (this.type === types$1._catch) {
|
|
1076
1142
|
var clause = this.startNode();
|
|
1077
1143
|
this.next();
|
|
1078
|
-
if (this.eat(types.parenL)) {
|
|
1144
|
+
if (this.eat(types$1.parenL)) {
|
|
1079
1145
|
clause.param = this.parseBindingAtom();
|
|
1080
1146
|
var simple = clause.param.type === "Identifier";
|
|
1081
1147
|
this.enterScope(simple ? SCOPE_SIMPLE_CATCH : 0);
|
|
1082
|
-
this.
|
|
1083
|
-
this.expect(types.parenR);
|
|
1148
|
+
this.checkLValPattern(clause.param, simple ? BIND_SIMPLE_CATCH : BIND_LEXICAL);
|
|
1149
|
+
this.expect(types$1.parenR);
|
|
1084
1150
|
} else {
|
|
1085
1151
|
if (this.options.ecmaVersion < 10) { this.unexpected(); }
|
|
1086
1152
|
clause.param = null;
|
|
@@ -1090,20 +1156,20 @@
|
|
|
1090
1156
|
this.exitScope();
|
|
1091
1157
|
node.handler = this.finishNode(clause, "CatchClause");
|
|
1092
1158
|
}
|
|
1093
|
-
node.finalizer = this.eat(types._finally) ? this.parseBlock() : null;
|
|
1159
|
+
node.finalizer = this.eat(types$1._finally) ? this.parseBlock() : null;
|
|
1094
1160
|
if (!node.handler && !node.finalizer)
|
|
1095
1161
|
{ this.raise(node.start, "Missing catch or finally clause"); }
|
|
1096
1162
|
return this.finishNode(node, "TryStatement")
|
|
1097
1163
|
};
|
|
1098
1164
|
|
|
1099
|
-
pp$
|
|
1165
|
+
pp$8.parseVarStatement = function(node, kind) {
|
|
1100
1166
|
this.next();
|
|
1101
1167
|
this.parseVar(node, false, kind);
|
|
1102
1168
|
this.semicolon();
|
|
1103
1169
|
return this.finishNode(node, "VariableDeclaration")
|
|
1104
1170
|
};
|
|
1105
1171
|
|
|
1106
|
-
pp$
|
|
1172
|
+
pp$8.parseWhileStatement = function(node) {
|
|
1107
1173
|
this.next();
|
|
1108
1174
|
node.test = this.parseParenExpression();
|
|
1109
1175
|
this.labels.push(loopLabel);
|
|
@@ -1112,7 +1178,7 @@
|
|
|
1112
1178
|
return this.finishNode(node, "WhileStatement")
|
|
1113
1179
|
};
|
|
1114
1180
|
|
|
1115
|
-
pp$
|
|
1181
|
+
pp$8.parseWithStatement = function(node) {
|
|
1116
1182
|
if (this.strict) { this.raise(this.start, "'with' in strict mode"); }
|
|
1117
1183
|
this.next();
|
|
1118
1184
|
node.object = this.parseParenExpression();
|
|
@@ -1120,12 +1186,12 @@
|
|
|
1120
1186
|
return this.finishNode(node, "WithStatement")
|
|
1121
1187
|
};
|
|
1122
1188
|
|
|
1123
|
-
pp$
|
|
1189
|
+
pp$8.parseEmptyStatement = function(node) {
|
|
1124
1190
|
this.next();
|
|
1125
1191
|
return this.finishNode(node, "EmptyStatement")
|
|
1126
1192
|
};
|
|
1127
1193
|
|
|
1128
|
-
pp$
|
|
1194
|
+
pp$8.parseLabeledStatement = function(node, maybeName, expr, context) {
|
|
1129
1195
|
for (var i$1 = 0, list = this.labels; i$1 < list.length; i$1 += 1)
|
|
1130
1196
|
{
|
|
1131
1197
|
var label = list[i$1];
|
|
@@ -1133,7 +1199,7 @@
|
|
|
1133
1199
|
if (label.name === maybeName)
|
|
1134
1200
|
{ this.raise(expr.start, "Label '" + maybeName + "' is already declared");
|
|
1135
1201
|
} }
|
|
1136
|
-
var kind = this.type.isLoop ? "loop" : this.type === types._switch ? "switch" : null;
|
|
1202
|
+
var kind = this.type.isLoop ? "loop" : this.type === types$1._switch ? "switch" : null;
|
|
1137
1203
|
for (var i = this.labels.length - 1; i >= 0; i--) {
|
|
1138
1204
|
var label$1 = this.labels[i];
|
|
1139
1205
|
if (label$1.statementStart === node.start) {
|
|
@@ -1149,7 +1215,7 @@
|
|
|
1149
1215
|
return this.finishNode(node, "LabeledStatement")
|
|
1150
1216
|
};
|
|
1151
1217
|
|
|
1152
|
-
pp$
|
|
1218
|
+
pp$8.parseExpressionStatement = function(node, expr) {
|
|
1153
1219
|
node.expression = expr;
|
|
1154
1220
|
this.semicolon();
|
|
1155
1221
|
return this.finishNode(node, "ExpressionStatement")
|
|
@@ -1159,14 +1225,14 @@
|
|
|
1159
1225
|
// strict"` declarations when `allowStrict` is true (used for
|
|
1160
1226
|
// function bodies).
|
|
1161
1227
|
|
|
1162
|
-
pp$
|
|
1228
|
+
pp$8.parseBlock = function(createNewLexicalScope, node, exitStrict) {
|
|
1163
1229
|
if ( createNewLexicalScope === void 0 ) createNewLexicalScope = true;
|
|
1164
1230
|
if ( node === void 0 ) node = this.startNode();
|
|
1165
1231
|
|
|
1166
1232
|
node.body = [];
|
|
1167
|
-
this.expect(types.braceL);
|
|
1233
|
+
this.expect(types$1.braceL);
|
|
1168
1234
|
if (createNewLexicalScope) { this.enterScope(0); }
|
|
1169
|
-
while (this.type !== types.braceR) {
|
|
1235
|
+
while (this.type !== types$1.braceR) {
|
|
1170
1236
|
var stmt = this.parseStatement(null);
|
|
1171
1237
|
node.body.push(stmt);
|
|
1172
1238
|
}
|
|
@@ -1180,13 +1246,13 @@
|
|
|
1180
1246
|
// `parseStatement` will already have parsed the init statement or
|
|
1181
1247
|
// expression.
|
|
1182
1248
|
|
|
1183
|
-
pp$
|
|
1249
|
+
pp$8.parseFor = function(node, init) {
|
|
1184
1250
|
node.init = init;
|
|
1185
|
-
this.expect(types.semi);
|
|
1186
|
-
node.test = this.type === types.semi ? null : this.parseExpression();
|
|
1187
|
-
this.expect(types.semi);
|
|
1188
|
-
node.update = this.type === types.parenR ? null : this.parseExpression();
|
|
1189
|
-
this.expect(types.parenR);
|
|
1251
|
+
this.expect(types$1.semi);
|
|
1252
|
+
node.test = this.type === types$1.semi ? null : this.parseExpression();
|
|
1253
|
+
this.expect(types$1.semi);
|
|
1254
|
+
node.update = this.type === types$1.parenR ? null : this.parseExpression();
|
|
1255
|
+
this.expect(types$1.parenR);
|
|
1190
1256
|
node.body = this.parseStatement("for");
|
|
1191
1257
|
this.exitScope();
|
|
1192
1258
|
this.labels.pop();
|
|
@@ -1196,8 +1262,8 @@
|
|
|
1196
1262
|
// Parse a `for`/`in` and `for`/`of` loop, which are almost
|
|
1197
1263
|
// same from parser's perspective.
|
|
1198
1264
|
|
|
1199
|
-
pp$
|
|
1200
|
-
var isForIn = this.type === types._in;
|
|
1265
|
+
pp$8.parseForIn = function(node, init) {
|
|
1266
|
+
var isForIn = this.type === types$1._in;
|
|
1201
1267
|
this.next();
|
|
1202
1268
|
|
|
1203
1269
|
if (
|
|
@@ -1215,12 +1281,10 @@
|
|
|
1215
1281
|
init.start,
|
|
1216
1282
|
((isForIn ? "for-in" : "for-of") + " loop variable declaration may not have an initializer")
|
|
1217
1283
|
);
|
|
1218
|
-
} else if (init.type === "AssignmentPattern") {
|
|
1219
|
-
this.raise(init.start, "Invalid left-hand side in for-loop");
|
|
1220
1284
|
}
|
|
1221
1285
|
node.left = init;
|
|
1222
1286
|
node.right = isForIn ? this.parseExpression() : this.parseMaybeAssign();
|
|
1223
|
-
this.expect(types.parenR);
|
|
1287
|
+
this.expect(types$1.parenR);
|
|
1224
1288
|
node.body = this.parseStatement("for");
|
|
1225
1289
|
this.exitScope();
|
|
1226
1290
|
this.labels.pop();
|
|
@@ -1229,30 +1293,30 @@
|
|
|
1229
1293
|
|
|
1230
1294
|
// Parse a list of variable declarations.
|
|
1231
1295
|
|
|
1232
|
-
pp$
|
|
1296
|
+
pp$8.parseVar = function(node, isFor, kind) {
|
|
1233
1297
|
node.declarations = [];
|
|
1234
1298
|
node.kind = kind;
|
|
1235
1299
|
for (;;) {
|
|
1236
1300
|
var decl = this.startNode();
|
|
1237
1301
|
this.parseVarId(decl, kind);
|
|
1238
|
-
if (this.eat(types.eq)) {
|
|
1302
|
+
if (this.eat(types$1.eq)) {
|
|
1239
1303
|
decl.init = this.parseMaybeAssign(isFor);
|
|
1240
|
-
} else if (kind === "const" && !(this.type === types._in || (this.options.ecmaVersion >= 6 && this.isContextual("of")))) {
|
|
1304
|
+
} else if (kind === "const" && !(this.type === types$1._in || (this.options.ecmaVersion >= 6 && this.isContextual("of")))) {
|
|
1241
1305
|
this.unexpected();
|
|
1242
|
-
} else if (decl.id.type !== "Identifier" && !(isFor && (this.type === types._in || this.isContextual("of")))) {
|
|
1306
|
+
} else if (decl.id.type !== "Identifier" && !(isFor && (this.type === types$1._in || this.isContextual("of")))) {
|
|
1243
1307
|
this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value");
|
|
1244
1308
|
} else {
|
|
1245
1309
|
decl.init = null;
|
|
1246
1310
|
}
|
|
1247
1311
|
node.declarations.push(this.finishNode(decl, "VariableDeclarator"));
|
|
1248
|
-
if (!this.eat(types.comma)) { break }
|
|
1312
|
+
if (!this.eat(types$1.comma)) { break }
|
|
1249
1313
|
}
|
|
1250
1314
|
return node
|
|
1251
1315
|
};
|
|
1252
1316
|
|
|
1253
|
-
pp$
|
|
1317
|
+
pp$8.parseVarId = function(decl, kind) {
|
|
1254
1318
|
decl.id = this.parseBindingAtom();
|
|
1255
|
-
this.
|
|
1319
|
+
this.checkLValPattern(decl.id, kind === "var" ? BIND_VAR : BIND_LEXICAL, false);
|
|
1256
1320
|
};
|
|
1257
1321
|
|
|
1258
1322
|
var FUNC_STATEMENT = 1, FUNC_HANGING_STATEMENT = 2, FUNC_NULLABLE_ID = 4;
|
|
@@ -1261,24 +1325,24 @@
|
|
|
1261
1325
|
// `statement & FUNC_STATEMENT`).
|
|
1262
1326
|
|
|
1263
1327
|
// Remove `allowExpressionBody` for 7.0.0, as it is only called with false
|
|
1264
|
-
pp$
|
|
1328
|
+
pp$8.parseFunction = function(node, statement, allowExpressionBody, isAsync, forInit) {
|
|
1265
1329
|
this.initFunction(node);
|
|
1266
1330
|
if (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !isAsync) {
|
|
1267
|
-
if (this.type === types.star && (statement & FUNC_HANGING_STATEMENT))
|
|
1331
|
+
if (this.type === types$1.star && (statement & FUNC_HANGING_STATEMENT))
|
|
1268
1332
|
{ this.unexpected(); }
|
|
1269
|
-
node.generator = this.eat(types.star);
|
|
1333
|
+
node.generator = this.eat(types$1.star);
|
|
1270
1334
|
}
|
|
1271
1335
|
if (this.options.ecmaVersion >= 8)
|
|
1272
1336
|
{ node.async = !!isAsync; }
|
|
1273
1337
|
|
|
1274
1338
|
if (statement & FUNC_STATEMENT) {
|
|
1275
|
-
node.id = (statement & FUNC_NULLABLE_ID) && this.type !== types.name ? null : this.parseIdent();
|
|
1339
|
+
node.id = (statement & FUNC_NULLABLE_ID) && this.type !== types$1.name ? null : this.parseIdent();
|
|
1276
1340
|
if (node.id && !(statement & FUNC_HANGING_STATEMENT))
|
|
1277
1341
|
// If it is a regular function declaration in sloppy mode, then it is
|
|
1278
1342
|
// subject to Annex B semantics (BIND_FUNCTION). Otherwise, the binding
|
|
1279
1343
|
// mode depends on properties of the current scope (see
|
|
1280
1344
|
// treatFunctionsAsVar).
|
|
1281
|
-
{ this.
|
|
1345
|
+
{ this.checkLValSimple(node.id, (this.strict || node.generator || node.async) ? this.treatFunctionsAsVar ? BIND_VAR : BIND_LEXICAL : BIND_FUNCTION); }
|
|
1282
1346
|
}
|
|
1283
1347
|
|
|
1284
1348
|
var oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
@@ -1288,10 +1352,10 @@
|
|
|
1288
1352
|
this.enterScope(functionFlags(node.async, node.generator));
|
|
1289
1353
|
|
|
1290
1354
|
if (!(statement & FUNC_STATEMENT))
|
|
1291
|
-
{ node.id = this.type === types.name ? this.parseIdent() : null; }
|
|
1355
|
+
{ node.id = this.type === types$1.name ? this.parseIdent() : null; }
|
|
1292
1356
|
|
|
1293
1357
|
this.parseFunctionParams(node);
|
|
1294
|
-
this.parseFunctionBody(node, allowExpressionBody, false);
|
|
1358
|
+
this.parseFunctionBody(node, allowExpressionBody, false, forInit);
|
|
1295
1359
|
|
|
1296
1360
|
this.yieldPos = oldYieldPos;
|
|
1297
1361
|
this.awaitPos = oldAwaitPos;
|
|
@@ -1299,16 +1363,16 @@
|
|
|
1299
1363
|
return this.finishNode(node, (statement & FUNC_STATEMENT) ? "FunctionDeclaration" : "FunctionExpression")
|
|
1300
1364
|
};
|
|
1301
1365
|
|
|
1302
|
-
pp$
|
|
1303
|
-
this.expect(types.parenL);
|
|
1304
|
-
node.params = this.parseBindingList(types.parenR, false, this.options.ecmaVersion >= 8);
|
|
1366
|
+
pp$8.parseFunctionParams = function(node) {
|
|
1367
|
+
this.expect(types$1.parenL);
|
|
1368
|
+
node.params = this.parseBindingList(types$1.parenR, false, this.options.ecmaVersion >= 8);
|
|
1305
1369
|
this.checkYieldAwaitInDefaultParams();
|
|
1306
1370
|
};
|
|
1307
1371
|
|
|
1308
1372
|
// Parse a class declaration or literal (depending on the
|
|
1309
1373
|
// `isStatement` parameter).
|
|
1310
1374
|
|
|
1311
|
-
pp$
|
|
1375
|
+
pp$8.parseClass = function(node, isStatement) {
|
|
1312
1376
|
this.next();
|
|
1313
1377
|
|
|
1314
1378
|
// ecma-262 14.6 Class Definitions
|
|
@@ -1318,93 +1382,193 @@
|
|
|
1318
1382
|
|
|
1319
1383
|
this.parseClassId(node, isStatement);
|
|
1320
1384
|
this.parseClassSuper(node);
|
|
1385
|
+
var privateNameMap = this.enterClassBody();
|
|
1321
1386
|
var classBody = this.startNode();
|
|
1322
1387
|
var hadConstructor = false;
|
|
1323
1388
|
classBody.body = [];
|
|
1324
|
-
this.expect(types.braceL);
|
|
1325
|
-
while (this.type !== types.braceR) {
|
|
1389
|
+
this.expect(types$1.braceL);
|
|
1390
|
+
while (this.type !== types$1.braceR) {
|
|
1326
1391
|
var element = this.parseClassElement(node.superClass !== null);
|
|
1327
1392
|
if (element) {
|
|
1328
1393
|
classBody.body.push(element);
|
|
1329
1394
|
if (element.type === "MethodDefinition" && element.kind === "constructor") {
|
|
1330
1395
|
if (hadConstructor) { this.raise(element.start, "Duplicate constructor in the same class"); }
|
|
1331
1396
|
hadConstructor = true;
|
|
1397
|
+
} else if (element.key && element.key.type === "PrivateIdentifier" && isPrivateNameConflicted(privateNameMap, element)) {
|
|
1398
|
+
this.raiseRecoverable(element.key.start, ("Identifier '#" + (element.key.name) + "' has already been declared"));
|
|
1332
1399
|
}
|
|
1333
1400
|
}
|
|
1334
1401
|
}
|
|
1335
1402
|
this.strict = oldStrict;
|
|
1336
1403
|
this.next();
|
|
1337
1404
|
node.body = this.finishNode(classBody, "ClassBody");
|
|
1405
|
+
this.exitClassBody();
|
|
1338
1406
|
return this.finishNode(node, isStatement ? "ClassDeclaration" : "ClassExpression")
|
|
1339
1407
|
};
|
|
1340
1408
|
|
|
1341
|
-
pp$
|
|
1342
|
-
|
|
1409
|
+
pp$8.parseClassElement = function(constructorAllowsSuper) {
|
|
1410
|
+
if (this.eat(types$1.semi)) { return null }
|
|
1343
1411
|
|
|
1344
|
-
|
|
1412
|
+
var ecmaVersion = this.options.ecmaVersion;
|
|
1413
|
+
var node = this.startNode();
|
|
1414
|
+
var keyName = "";
|
|
1415
|
+
var isGenerator = false;
|
|
1416
|
+
var isAsync = false;
|
|
1417
|
+
var kind = "method";
|
|
1418
|
+
var isStatic = false;
|
|
1419
|
+
|
|
1420
|
+
if (this.eatContextual("static")) {
|
|
1421
|
+
// Parse static init block
|
|
1422
|
+
if (ecmaVersion >= 13 && this.eat(types$1.braceL)) {
|
|
1423
|
+
this.parseClassStaticBlock(node);
|
|
1424
|
+
return node
|
|
1425
|
+
}
|
|
1426
|
+
if (this.isClassElementNameStart() || this.type === types$1.star) {
|
|
1427
|
+
isStatic = true;
|
|
1428
|
+
} else {
|
|
1429
|
+
keyName = "static";
|
|
1430
|
+
}
|
|
1431
|
+
}
|
|
1432
|
+
node.static = isStatic;
|
|
1433
|
+
if (!keyName && ecmaVersion >= 8 && this.eatContextual("async")) {
|
|
1434
|
+
if ((this.isClassElementNameStart() || this.type === types$1.star) && !this.canInsertSemicolon()) {
|
|
1435
|
+
isAsync = true;
|
|
1436
|
+
} else {
|
|
1437
|
+
keyName = "async";
|
|
1438
|
+
}
|
|
1439
|
+
}
|
|
1440
|
+
if (!keyName && (ecmaVersion >= 9 || !isAsync) && this.eat(types$1.star)) {
|
|
1441
|
+
isGenerator = true;
|
|
1442
|
+
}
|
|
1443
|
+
if (!keyName && !isAsync && !isGenerator) {
|
|
1444
|
+
var lastValue = this.value;
|
|
1445
|
+
if (this.eatContextual("get") || this.eatContextual("set")) {
|
|
1446
|
+
if (this.isClassElementNameStart()) {
|
|
1447
|
+
kind = lastValue;
|
|
1448
|
+
} else {
|
|
1449
|
+
keyName = lastValue;
|
|
1450
|
+
}
|
|
1451
|
+
}
|
|
1452
|
+
}
|
|
1345
1453
|
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1454
|
+
// Parse element name
|
|
1455
|
+
if (keyName) {
|
|
1456
|
+
// 'async', 'get', 'set', or 'static' were not a keyword contextually.
|
|
1457
|
+
// The last token is any of those. Make it the element name.
|
|
1458
|
+
node.computed = false;
|
|
1459
|
+
node.key = this.startNodeAt(this.lastTokStart, this.lastTokStartLoc);
|
|
1460
|
+
node.key.name = keyName;
|
|
1461
|
+
this.finishNode(node.key, "Identifier");
|
|
1462
|
+
} else {
|
|
1463
|
+
this.parseClassElementName(node);
|
|
1464
|
+
}
|
|
1349
1465
|
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
method
|
|
1355
|
-
method
|
|
1356
|
-
|
|
1357
|
-
this
|
|
1358
|
-
|
|
1359
|
-
|
|
1466
|
+
// Parse element value
|
|
1467
|
+
if (ecmaVersion < 13 || this.type === types$1.parenL || kind !== "method" || isGenerator || isAsync) {
|
|
1468
|
+
var isConstructor = !node.static && checkKeyName(node, "constructor");
|
|
1469
|
+
var allowsDirectSuper = isConstructor && constructorAllowsSuper;
|
|
1470
|
+
// Couldn't move this check into the 'parseClassMethod' method for backward compatibility.
|
|
1471
|
+
if (isConstructor && kind !== "method") { this.raise(node.key.start, "Constructor can't have get/set modifier"); }
|
|
1472
|
+
node.kind = isConstructor ? "constructor" : kind;
|
|
1473
|
+
this.parseClassMethod(node, isGenerator, isAsync, allowsDirectSuper);
|
|
1474
|
+
} else {
|
|
1475
|
+
this.parseClassField(node);
|
|
1476
|
+
}
|
|
1360
1477
|
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1478
|
+
return node
|
|
1479
|
+
};
|
|
1480
|
+
|
|
1481
|
+
pp$8.isClassElementNameStart = function() {
|
|
1482
|
+
return (
|
|
1483
|
+
this.type === types$1.name ||
|
|
1484
|
+
this.type === types$1.privateId ||
|
|
1485
|
+
this.type === types$1.num ||
|
|
1486
|
+
this.type === types$1.string ||
|
|
1487
|
+
this.type === types$1.bracketL ||
|
|
1488
|
+
this.type.keyword
|
|
1489
|
+
)
|
|
1490
|
+
};
|
|
1491
|
+
|
|
1492
|
+
pp$8.parseClassElementName = function(element) {
|
|
1493
|
+
if (this.type === types$1.privateId) {
|
|
1494
|
+
if (this.value === "constructor") {
|
|
1495
|
+
this.raise(this.start, "Classes can't have an element named '#constructor'");
|
|
1373
1496
|
}
|
|
1497
|
+
element.computed = false;
|
|
1498
|
+
element.key = this.parsePrivateIdent();
|
|
1499
|
+
} else {
|
|
1500
|
+
this.parsePropertyName(element);
|
|
1374
1501
|
}
|
|
1375
|
-
|
|
1502
|
+
};
|
|
1503
|
+
|
|
1504
|
+
pp$8.parseClassMethod = function(method, isGenerator, isAsync, allowsDirectSuper) {
|
|
1505
|
+
// Check key and flags
|
|
1376
1506
|
var key = method.key;
|
|
1377
|
-
|
|
1378
|
-
if (!method.computed && !method.static && (key.type === "Identifier" && key.name === "constructor" ||
|
|
1379
|
-
key.type === "Literal" && key.value === "constructor")) {
|
|
1380
|
-
if (method.kind !== "method") { this.raise(key.start, "Constructor can't have get/set modifier"); }
|
|
1507
|
+
if (method.kind === "constructor") {
|
|
1381
1508
|
if (isGenerator) { this.raise(key.start, "Constructor can't be a generator"); }
|
|
1382
1509
|
if (isAsync) { this.raise(key.start, "Constructor can't be an async method"); }
|
|
1383
|
-
|
|
1384
|
-
allowsDirectSuper = constructorAllowsSuper;
|
|
1385
|
-
} else if (method.static && key.type === "Identifier" && key.name === "prototype") {
|
|
1510
|
+
} else if (method.static && checkKeyName(method, "prototype")) {
|
|
1386
1511
|
this.raise(key.start, "Classes may not have a static property named prototype");
|
|
1387
1512
|
}
|
|
1388
|
-
this.parseClassMethod(method, isGenerator, isAsync, allowsDirectSuper);
|
|
1389
|
-
if (method.kind === "get" && method.value.params.length !== 0)
|
|
1390
|
-
{ this.raiseRecoverable(method.value.start, "getter should have no params"); }
|
|
1391
|
-
if (method.kind === "set" && method.value.params.length !== 1)
|
|
1392
|
-
{ this.raiseRecoverable(method.value.start, "setter should have exactly one param"); }
|
|
1393
|
-
if (method.kind === "set" && method.value.params[0].type === "RestElement")
|
|
1394
|
-
{ this.raiseRecoverable(method.value.params[0].start, "Setter cannot use rest params"); }
|
|
1395
|
-
return method
|
|
1396
|
-
};
|
|
1397
1513
|
|
|
1398
|
-
|
|
1399
|
-
method.value = this.parseMethod(isGenerator, isAsync, allowsDirectSuper);
|
|
1514
|
+
// Parse value
|
|
1515
|
+
var value = method.value = this.parseMethod(isGenerator, isAsync, allowsDirectSuper);
|
|
1516
|
+
|
|
1517
|
+
// Check value
|
|
1518
|
+
if (method.kind === "get" && value.params.length !== 0)
|
|
1519
|
+
{ this.raiseRecoverable(value.start, "getter should have no params"); }
|
|
1520
|
+
if (method.kind === "set" && value.params.length !== 1)
|
|
1521
|
+
{ this.raiseRecoverable(value.start, "setter should have exactly one param"); }
|
|
1522
|
+
if (method.kind === "set" && value.params[0].type === "RestElement")
|
|
1523
|
+
{ this.raiseRecoverable(value.params[0].start, "Setter cannot use rest params"); }
|
|
1524
|
+
|
|
1400
1525
|
return this.finishNode(method, "MethodDefinition")
|
|
1401
1526
|
};
|
|
1402
1527
|
|
|
1403
|
-
pp$
|
|
1404
|
-
if (
|
|
1528
|
+
pp$8.parseClassField = function(field) {
|
|
1529
|
+
if (checkKeyName(field, "constructor")) {
|
|
1530
|
+
this.raise(field.key.start, "Classes can't have a field named 'constructor'");
|
|
1531
|
+
} else if (field.static && checkKeyName(field, "prototype")) {
|
|
1532
|
+
this.raise(field.key.start, "Classes can't have a static field named 'prototype'");
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
if (this.eat(types$1.eq)) {
|
|
1536
|
+
// To raise SyntaxError if 'arguments' exists in the initializer.
|
|
1537
|
+
var scope = this.currentThisScope();
|
|
1538
|
+
var inClassFieldInit = scope.inClassFieldInit;
|
|
1539
|
+
scope.inClassFieldInit = true;
|
|
1540
|
+
field.value = this.parseMaybeAssign();
|
|
1541
|
+
scope.inClassFieldInit = inClassFieldInit;
|
|
1542
|
+
} else {
|
|
1543
|
+
field.value = null;
|
|
1544
|
+
}
|
|
1545
|
+
this.semicolon();
|
|
1546
|
+
|
|
1547
|
+
return this.finishNode(field, "PropertyDefinition")
|
|
1548
|
+
};
|
|
1549
|
+
|
|
1550
|
+
pp$8.parseClassStaticBlock = function(node) {
|
|
1551
|
+
node.body = [];
|
|
1552
|
+
|
|
1553
|
+
var oldLabels = this.labels;
|
|
1554
|
+
this.labels = [];
|
|
1555
|
+
this.enterScope(SCOPE_CLASS_STATIC_BLOCK | SCOPE_SUPER);
|
|
1556
|
+
while (this.type !== types$1.braceR) {
|
|
1557
|
+
var stmt = this.parseStatement(null);
|
|
1558
|
+
node.body.push(stmt);
|
|
1559
|
+
}
|
|
1560
|
+
this.next();
|
|
1561
|
+
this.exitScope();
|
|
1562
|
+
this.labels = oldLabels;
|
|
1563
|
+
|
|
1564
|
+
return this.finishNode(node, "StaticBlock")
|
|
1565
|
+
};
|
|
1566
|
+
|
|
1567
|
+
pp$8.parseClassId = function(node, isStatement) {
|
|
1568
|
+
if (this.type === types$1.name) {
|
|
1405
1569
|
node.id = this.parseIdent();
|
|
1406
1570
|
if (isStatement)
|
|
1407
|
-
{ this.
|
|
1571
|
+
{ this.checkLValSimple(node.id, BIND_LEXICAL, false); }
|
|
1408
1572
|
} else {
|
|
1409
1573
|
if (isStatement === true)
|
|
1410
1574
|
{ this.unexpected(); }
|
|
@@ -1412,39 +1576,98 @@
|
|
|
1412
1576
|
}
|
|
1413
1577
|
};
|
|
1414
1578
|
|
|
1415
|
-
pp$
|
|
1416
|
-
node.superClass = this.eat(types._extends) ? this.parseExprSubscripts() : null;
|
|
1579
|
+
pp$8.parseClassSuper = function(node) {
|
|
1580
|
+
node.superClass = this.eat(types$1._extends) ? this.parseExprSubscripts(false) : null;
|
|
1581
|
+
};
|
|
1582
|
+
|
|
1583
|
+
pp$8.enterClassBody = function() {
|
|
1584
|
+
var element = {declared: Object.create(null), used: []};
|
|
1585
|
+
this.privateNameStack.push(element);
|
|
1586
|
+
return element.declared
|
|
1587
|
+
};
|
|
1588
|
+
|
|
1589
|
+
pp$8.exitClassBody = function() {
|
|
1590
|
+
var ref = this.privateNameStack.pop();
|
|
1591
|
+
var declared = ref.declared;
|
|
1592
|
+
var used = ref.used;
|
|
1593
|
+
var len = this.privateNameStack.length;
|
|
1594
|
+
var parent = len === 0 ? null : this.privateNameStack[len - 1];
|
|
1595
|
+
for (var i = 0; i < used.length; ++i) {
|
|
1596
|
+
var id = used[i];
|
|
1597
|
+
if (!hasOwn(declared, id.name)) {
|
|
1598
|
+
if (parent) {
|
|
1599
|
+
parent.used.push(id);
|
|
1600
|
+
} else {
|
|
1601
|
+
this.raiseRecoverable(id.start, ("Private field '#" + (id.name) + "' must be declared in an enclosing class"));
|
|
1602
|
+
}
|
|
1603
|
+
}
|
|
1604
|
+
}
|
|
1417
1605
|
};
|
|
1418
1606
|
|
|
1607
|
+
function isPrivateNameConflicted(privateNameMap, element) {
|
|
1608
|
+
var name = element.key.name;
|
|
1609
|
+
var curr = privateNameMap[name];
|
|
1610
|
+
|
|
1611
|
+
var next = "true";
|
|
1612
|
+
if (element.type === "MethodDefinition" && (element.kind === "get" || element.kind === "set")) {
|
|
1613
|
+
next = (element.static ? "s" : "i") + element.kind;
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
// `class { get #a(){}; static set #a(_){} }` is also conflict.
|
|
1617
|
+
if (
|
|
1618
|
+
curr === "iget" && next === "iset" ||
|
|
1619
|
+
curr === "iset" && next === "iget" ||
|
|
1620
|
+
curr === "sget" && next === "sset" ||
|
|
1621
|
+
curr === "sset" && next === "sget"
|
|
1622
|
+
) {
|
|
1623
|
+
privateNameMap[name] = "true";
|
|
1624
|
+
return false
|
|
1625
|
+
} else if (!curr) {
|
|
1626
|
+
privateNameMap[name] = next;
|
|
1627
|
+
return false
|
|
1628
|
+
} else {
|
|
1629
|
+
return true
|
|
1630
|
+
}
|
|
1631
|
+
}
|
|
1632
|
+
|
|
1633
|
+
function checkKeyName(node, name) {
|
|
1634
|
+
var computed = node.computed;
|
|
1635
|
+
var key = node.key;
|
|
1636
|
+
return !computed && (
|
|
1637
|
+
key.type === "Identifier" && key.name === name ||
|
|
1638
|
+
key.type === "Literal" && key.value === name
|
|
1639
|
+
)
|
|
1640
|
+
}
|
|
1641
|
+
|
|
1419
1642
|
// Parses module export declaration.
|
|
1420
1643
|
|
|
1421
|
-
pp$
|
|
1644
|
+
pp$8.parseExport = function(node, exports) {
|
|
1422
1645
|
this.next();
|
|
1423
1646
|
// export * from '...'
|
|
1424
|
-
if (this.eat(types.star)) {
|
|
1647
|
+
if (this.eat(types$1.star)) {
|
|
1425
1648
|
if (this.options.ecmaVersion >= 11) {
|
|
1426
1649
|
if (this.eatContextual("as")) {
|
|
1427
|
-
node.exported = this.
|
|
1428
|
-
this.checkExport(exports, node.exported
|
|
1650
|
+
node.exported = this.parseModuleExportName();
|
|
1651
|
+
this.checkExport(exports, node.exported, this.lastTokStart);
|
|
1429
1652
|
} else {
|
|
1430
1653
|
node.exported = null;
|
|
1431
1654
|
}
|
|
1432
1655
|
}
|
|
1433
1656
|
this.expectContextual("from");
|
|
1434
|
-
if (this.type !== types.string) { this.unexpected(); }
|
|
1657
|
+
if (this.type !== types$1.string) { this.unexpected(); }
|
|
1435
1658
|
node.source = this.parseExprAtom();
|
|
1436
1659
|
this.semicolon();
|
|
1437
1660
|
return this.finishNode(node, "ExportAllDeclaration")
|
|
1438
1661
|
}
|
|
1439
|
-
if (this.eat(types._default)) { // export default ...
|
|
1662
|
+
if (this.eat(types$1._default)) { // export default ...
|
|
1440
1663
|
this.checkExport(exports, "default", this.lastTokStart);
|
|
1441
1664
|
var isAsync;
|
|
1442
|
-
if (this.type === types._function || (isAsync = this.isAsyncFunction())) {
|
|
1665
|
+
if (this.type === types$1._function || (isAsync = this.isAsyncFunction())) {
|
|
1443
1666
|
var fNode = this.startNode();
|
|
1444
1667
|
this.next();
|
|
1445
1668
|
if (isAsync) { this.next(); }
|
|
1446
1669
|
node.declaration = this.parseFunction(fNode, FUNC_STATEMENT | FUNC_NULLABLE_ID, false, isAsync);
|
|
1447
|
-
} else if (this.type === types._class) {
|
|
1670
|
+
} else if (this.type === types$1._class) {
|
|
1448
1671
|
var cNode = this.startNode();
|
|
1449
1672
|
node.declaration = this.parseClass(cNode, "nullableID");
|
|
1450
1673
|
} else {
|
|
@@ -1459,14 +1682,14 @@
|
|
|
1459
1682
|
if (node.declaration.type === "VariableDeclaration")
|
|
1460
1683
|
{ this.checkVariableExport(exports, node.declaration.declarations); }
|
|
1461
1684
|
else
|
|
1462
|
-
{ this.checkExport(exports, node.declaration.id
|
|
1685
|
+
{ this.checkExport(exports, node.declaration.id, node.declaration.id.start); }
|
|
1463
1686
|
node.specifiers = [];
|
|
1464
1687
|
node.source = null;
|
|
1465
1688
|
} else { // export { x, y as z } [from '...']
|
|
1466
1689
|
node.declaration = null;
|
|
1467
1690
|
node.specifiers = this.parseExportSpecifiers(exports);
|
|
1468
1691
|
if (this.eatContextual("from")) {
|
|
1469
|
-
if (this.type !== types.string) { this.unexpected(); }
|
|
1692
|
+
if (this.type !== types$1.string) { this.unexpected(); }
|
|
1470
1693
|
node.source = this.parseExprAtom();
|
|
1471
1694
|
} else {
|
|
1472
1695
|
for (var i = 0, list = node.specifiers; i < list.length; i += 1) {
|
|
@@ -1476,6 +1699,10 @@
|
|
|
1476
1699
|
this.checkUnreserved(spec.local);
|
|
1477
1700
|
// check if export is defined
|
|
1478
1701
|
this.checkLocalExport(spec.local);
|
|
1702
|
+
|
|
1703
|
+
if (spec.local.type === "Literal") {
|
|
1704
|
+
this.raise(spec.local.start, "A string literal cannot be used as an exported binding without `from`.");
|
|
1705
|
+
}
|
|
1479
1706
|
}
|
|
1480
1707
|
|
|
1481
1708
|
node.source = null;
|
|
@@ -1485,17 +1712,19 @@
|
|
|
1485
1712
|
return this.finishNode(node, "ExportNamedDeclaration")
|
|
1486
1713
|
};
|
|
1487
1714
|
|
|
1488
|
-
pp$
|
|
1715
|
+
pp$8.checkExport = function(exports, name, pos) {
|
|
1489
1716
|
if (!exports) { return }
|
|
1490
|
-
if (
|
|
1717
|
+
if (typeof name !== "string")
|
|
1718
|
+
{ name = name.type === "Identifier" ? name.name : name.value; }
|
|
1719
|
+
if (hasOwn(exports, name))
|
|
1491
1720
|
{ this.raiseRecoverable(pos, "Duplicate export '" + name + "'"); }
|
|
1492
1721
|
exports[name] = true;
|
|
1493
1722
|
};
|
|
1494
1723
|
|
|
1495
|
-
pp$
|
|
1724
|
+
pp$8.checkPatternExport = function(exports, pat) {
|
|
1496
1725
|
var type = pat.type;
|
|
1497
1726
|
if (type === "Identifier")
|
|
1498
|
-
{ this.checkExport(exports, pat
|
|
1727
|
+
{ this.checkExport(exports, pat, pat.start); }
|
|
1499
1728
|
else if (type === "ObjectPattern")
|
|
1500
1729
|
{ for (var i = 0, list = pat.properties; i < list.length; i += 1)
|
|
1501
1730
|
{
|
|
@@ -1519,7 +1748,7 @@
|
|
|
1519
1748
|
{ this.checkPatternExport(exports, pat.expression); }
|
|
1520
1749
|
};
|
|
1521
1750
|
|
|
1522
|
-
pp$
|
|
1751
|
+
pp$8.checkVariableExport = function(exports, decls) {
|
|
1523
1752
|
if (!exports) { return }
|
|
1524
1753
|
for (var i = 0, list = decls; i < list.length; i += 1)
|
|
1525
1754
|
{
|
|
@@ -1529,7 +1758,7 @@
|
|
|
1529
1758
|
}
|
|
1530
1759
|
};
|
|
1531
1760
|
|
|
1532
|
-
pp$
|
|
1761
|
+
pp$8.shouldParseExportStatement = function() {
|
|
1533
1762
|
return this.type.keyword === "var" ||
|
|
1534
1763
|
this.type.keyword === "const" ||
|
|
1535
1764
|
this.type.keyword === "class" ||
|
|
@@ -1540,20 +1769,24 @@
|
|
|
1540
1769
|
|
|
1541
1770
|
// Parses a comma-separated list of module exports.
|
|
1542
1771
|
|
|
1543
|
-
pp$
|
|
1772
|
+
pp$8.parseExportSpecifiers = function(exports) {
|
|
1544
1773
|
var nodes = [], first = true;
|
|
1545
1774
|
// export { x, y as z } [from '...']
|
|
1546
|
-
this.expect(types.braceL);
|
|
1547
|
-
while (!this.eat(types.braceR)) {
|
|
1775
|
+
this.expect(types$1.braceL);
|
|
1776
|
+
while (!this.eat(types$1.braceR)) {
|
|
1548
1777
|
if (!first) {
|
|
1549
|
-
this.expect(types.comma);
|
|
1550
|
-
if (this.afterTrailingComma(types.braceR)) { break }
|
|
1778
|
+
this.expect(types$1.comma);
|
|
1779
|
+
if (this.afterTrailingComma(types$1.braceR)) { break }
|
|
1551
1780
|
} else { first = false; }
|
|
1552
1781
|
|
|
1553
1782
|
var node = this.startNode();
|
|
1554
|
-
node.local = this.
|
|
1555
|
-
node.exported = this.eatContextual("as") ? this.
|
|
1556
|
-
this.checkExport(
|
|
1783
|
+
node.local = this.parseModuleExportName();
|
|
1784
|
+
node.exported = this.eatContextual("as") ? this.parseModuleExportName() : node.local;
|
|
1785
|
+
this.checkExport(
|
|
1786
|
+
exports,
|
|
1787
|
+
node.exported,
|
|
1788
|
+
node.exported.start
|
|
1789
|
+
);
|
|
1557
1790
|
nodes.push(this.finishNode(node, "ExportSpecifier"));
|
|
1558
1791
|
}
|
|
1559
1792
|
return nodes
|
|
@@ -1561,16 +1794,16 @@
|
|
|
1561
1794
|
|
|
1562
1795
|
// Parses import declaration.
|
|
1563
1796
|
|
|
1564
|
-
pp$
|
|
1797
|
+
pp$8.parseImport = function(node) {
|
|
1565
1798
|
this.next();
|
|
1566
1799
|
// import '...'
|
|
1567
|
-
if (this.type === types.string) {
|
|
1568
|
-
node.specifiers = empty;
|
|
1800
|
+
if (this.type === types$1.string) {
|
|
1801
|
+
node.specifiers = empty$1;
|
|
1569
1802
|
node.source = this.parseExprAtom();
|
|
1570
1803
|
} else {
|
|
1571
1804
|
node.specifiers = this.parseImportSpecifiers();
|
|
1572
1805
|
this.expectContextual("from");
|
|
1573
|
-
node.source = this.type === types.string ? this.parseExprAtom() : this.unexpected();
|
|
1806
|
+
node.source = this.type === types$1.string ? this.parseExprAtom() : this.unexpected();
|
|
1574
1807
|
}
|
|
1575
1808
|
this.semicolon();
|
|
1576
1809
|
return this.finishNode(node, "ImportDeclaration")
|
|
@@ -1578,54 +1811,66 @@
|
|
|
1578
1811
|
|
|
1579
1812
|
// Parses a comma-separated list of module imports.
|
|
1580
1813
|
|
|
1581
|
-
pp$
|
|
1814
|
+
pp$8.parseImportSpecifiers = function() {
|
|
1582
1815
|
var nodes = [], first = true;
|
|
1583
|
-
if (this.type === types.name) {
|
|
1816
|
+
if (this.type === types$1.name) {
|
|
1584
1817
|
// import defaultObj, { x, y as z } from '...'
|
|
1585
1818
|
var node = this.startNode();
|
|
1586
1819
|
node.local = this.parseIdent();
|
|
1587
|
-
this.
|
|
1820
|
+
this.checkLValSimple(node.local, BIND_LEXICAL);
|
|
1588
1821
|
nodes.push(this.finishNode(node, "ImportDefaultSpecifier"));
|
|
1589
|
-
if (!this.eat(types.comma)) { return nodes }
|
|
1822
|
+
if (!this.eat(types$1.comma)) { return nodes }
|
|
1590
1823
|
}
|
|
1591
|
-
if (this.type === types.star) {
|
|
1824
|
+
if (this.type === types$1.star) {
|
|
1592
1825
|
var node$1 = this.startNode();
|
|
1593
1826
|
this.next();
|
|
1594
1827
|
this.expectContextual("as");
|
|
1595
1828
|
node$1.local = this.parseIdent();
|
|
1596
|
-
this.
|
|
1829
|
+
this.checkLValSimple(node$1.local, BIND_LEXICAL);
|
|
1597
1830
|
nodes.push(this.finishNode(node$1, "ImportNamespaceSpecifier"));
|
|
1598
1831
|
return nodes
|
|
1599
1832
|
}
|
|
1600
|
-
this.expect(types.braceL);
|
|
1601
|
-
while (!this.eat(types.braceR)) {
|
|
1833
|
+
this.expect(types$1.braceL);
|
|
1834
|
+
while (!this.eat(types$1.braceR)) {
|
|
1602
1835
|
if (!first) {
|
|
1603
|
-
this.expect(types.comma);
|
|
1604
|
-
if (this.afterTrailingComma(types.braceR)) { break }
|
|
1836
|
+
this.expect(types$1.comma);
|
|
1837
|
+
if (this.afterTrailingComma(types$1.braceR)) { break }
|
|
1605
1838
|
} else { first = false; }
|
|
1606
1839
|
|
|
1607
1840
|
var node$2 = this.startNode();
|
|
1608
|
-
node$2.imported = this.
|
|
1841
|
+
node$2.imported = this.parseModuleExportName();
|
|
1609
1842
|
if (this.eatContextual("as")) {
|
|
1610
1843
|
node$2.local = this.parseIdent();
|
|
1611
1844
|
} else {
|
|
1612
1845
|
this.checkUnreserved(node$2.imported);
|
|
1613
1846
|
node$2.local = node$2.imported;
|
|
1614
1847
|
}
|
|
1615
|
-
this.
|
|
1848
|
+
this.checkLValSimple(node$2.local, BIND_LEXICAL);
|
|
1616
1849
|
nodes.push(this.finishNode(node$2, "ImportSpecifier"));
|
|
1617
1850
|
}
|
|
1618
1851
|
return nodes
|
|
1619
1852
|
};
|
|
1620
1853
|
|
|
1854
|
+
pp$8.parseModuleExportName = function() {
|
|
1855
|
+
if (this.options.ecmaVersion >= 13 && this.type === types$1.string) {
|
|
1856
|
+
var stringLiteral = this.parseLiteral(this.value);
|
|
1857
|
+
if (loneSurrogate.test(stringLiteral.value)) {
|
|
1858
|
+
this.raise(stringLiteral.start, "An export name cannot include a lone surrogate.");
|
|
1859
|
+
}
|
|
1860
|
+
return stringLiteral
|
|
1861
|
+
}
|
|
1862
|
+
return this.parseIdent(true)
|
|
1863
|
+
};
|
|
1864
|
+
|
|
1621
1865
|
// Set `ExpressionStatement#directive` property for directive prologues.
|
|
1622
|
-
pp$
|
|
1866
|
+
pp$8.adaptDirectivePrologue = function(statements) {
|
|
1623
1867
|
for (var i = 0; i < statements.length && this.isDirectiveCandidate(statements[i]); ++i) {
|
|
1624
1868
|
statements[i].directive = statements[i].expression.raw.slice(1, -1);
|
|
1625
1869
|
}
|
|
1626
1870
|
};
|
|
1627
|
-
pp$
|
|
1871
|
+
pp$8.isDirectiveCandidate = function(statement) {
|
|
1628
1872
|
return (
|
|
1873
|
+
this.options.ecmaVersion >= 5 &&
|
|
1629
1874
|
statement.type === "ExpressionStatement" &&
|
|
1630
1875
|
statement.expression.type === "Literal" &&
|
|
1631
1876
|
typeof statement.expression.value === "string" &&
|
|
@@ -1634,12 +1879,12 @@
|
|
|
1634
1879
|
)
|
|
1635
1880
|
};
|
|
1636
1881
|
|
|
1637
|
-
var pp$
|
|
1882
|
+
var pp$7 = Parser.prototype;
|
|
1638
1883
|
|
|
1639
1884
|
// Convert existing expression atom to assignable pattern
|
|
1640
1885
|
// if possible.
|
|
1641
1886
|
|
|
1642
|
-
pp$
|
|
1887
|
+
pp$7.toAssignable = function(node, isBinding, refDestructuringErrors) {
|
|
1643
1888
|
if (this.options.ecmaVersion >= 6 && node) {
|
|
1644
1889
|
switch (node.type) {
|
|
1645
1890
|
case "Identifier":
|
|
@@ -1649,6 +1894,7 @@
|
|
|
1649
1894
|
|
|
1650
1895
|
case "ObjectPattern":
|
|
1651
1896
|
case "ArrayPattern":
|
|
1897
|
+
case "AssignmentPattern":
|
|
1652
1898
|
case "RestElement":
|
|
1653
1899
|
break
|
|
1654
1900
|
|
|
@@ -1697,9 +1943,6 @@
|
|
|
1697
1943
|
node.type = "AssignmentPattern";
|
|
1698
1944
|
delete node.operator;
|
|
1699
1945
|
this.toAssignable(node.left, isBinding);
|
|
1700
|
-
// falls through to AssignmentPattern
|
|
1701
|
-
|
|
1702
|
-
case "AssignmentPattern":
|
|
1703
1946
|
break
|
|
1704
1947
|
|
|
1705
1948
|
case "ParenthesizedExpression":
|
|
@@ -1722,7 +1965,7 @@
|
|
|
1722
1965
|
|
|
1723
1966
|
// Convert list of expression atoms to binding list.
|
|
1724
1967
|
|
|
1725
|
-
pp$
|
|
1968
|
+
pp$7.toAssignableList = function(exprList, isBinding) {
|
|
1726
1969
|
var end = exprList.length;
|
|
1727
1970
|
for (var i = 0; i < end; i++) {
|
|
1728
1971
|
var elt = exprList[i];
|
|
@@ -1738,19 +1981,19 @@
|
|
|
1738
1981
|
|
|
1739
1982
|
// Parses spread element.
|
|
1740
1983
|
|
|
1741
|
-
pp$
|
|
1984
|
+
pp$7.parseSpread = function(refDestructuringErrors) {
|
|
1742
1985
|
var node = this.startNode();
|
|
1743
1986
|
this.next();
|
|
1744
1987
|
node.argument = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
1745
1988
|
return this.finishNode(node, "SpreadElement")
|
|
1746
1989
|
};
|
|
1747
1990
|
|
|
1748
|
-
pp$
|
|
1991
|
+
pp$7.parseRestBinding = function() {
|
|
1749
1992
|
var node = this.startNode();
|
|
1750
1993
|
this.next();
|
|
1751
1994
|
|
|
1752
1995
|
// RestElement inside of a function parameter must be an identifier
|
|
1753
|
-
if (this.options.ecmaVersion === 6 && this.type !== types.name)
|
|
1996
|
+
if (this.options.ecmaVersion === 6 && this.type !== types$1.name)
|
|
1754
1997
|
{ this.unexpected(); }
|
|
1755
1998
|
|
|
1756
1999
|
node.argument = this.parseBindingAtom();
|
|
@@ -1760,36 +2003,36 @@
|
|
|
1760
2003
|
|
|
1761
2004
|
// Parses lvalue (assignable) atom.
|
|
1762
2005
|
|
|
1763
|
-
pp$
|
|
2006
|
+
pp$7.parseBindingAtom = function() {
|
|
1764
2007
|
if (this.options.ecmaVersion >= 6) {
|
|
1765
2008
|
switch (this.type) {
|
|
1766
|
-
case types.bracketL:
|
|
2009
|
+
case types$1.bracketL:
|
|
1767
2010
|
var node = this.startNode();
|
|
1768
2011
|
this.next();
|
|
1769
|
-
node.elements = this.parseBindingList(types.bracketR, true, true);
|
|
2012
|
+
node.elements = this.parseBindingList(types$1.bracketR, true, true);
|
|
1770
2013
|
return this.finishNode(node, "ArrayPattern")
|
|
1771
2014
|
|
|
1772
|
-
case types.braceL:
|
|
2015
|
+
case types$1.braceL:
|
|
1773
2016
|
return this.parseObj(true)
|
|
1774
2017
|
}
|
|
1775
2018
|
}
|
|
1776
2019
|
return this.parseIdent()
|
|
1777
2020
|
};
|
|
1778
2021
|
|
|
1779
|
-
pp$
|
|
2022
|
+
pp$7.parseBindingList = function(close, allowEmpty, allowTrailingComma) {
|
|
1780
2023
|
var elts = [], first = true;
|
|
1781
2024
|
while (!this.eat(close)) {
|
|
1782
2025
|
if (first) { first = false; }
|
|
1783
|
-
else { this.expect(types.comma); }
|
|
1784
|
-
if (allowEmpty && this.type === types.comma) {
|
|
2026
|
+
else { this.expect(types$1.comma); }
|
|
2027
|
+
if (allowEmpty && this.type === types$1.comma) {
|
|
1785
2028
|
elts.push(null);
|
|
1786
2029
|
} else if (allowTrailingComma && this.afterTrailingComma(close)) {
|
|
1787
2030
|
break
|
|
1788
|
-
} else if (this.type === types.ellipsis) {
|
|
2031
|
+
} else if (this.type === types$1.ellipsis) {
|
|
1789
2032
|
var rest = this.parseRestBinding();
|
|
1790
2033
|
this.parseBindingListItem(rest);
|
|
1791
2034
|
elts.push(rest);
|
|
1792
|
-
if (this.type === types.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2035
|
+
if (this.type === types$1.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
1793
2036
|
this.expect(close);
|
|
1794
2037
|
break
|
|
1795
2038
|
} else {
|
|
@@ -1801,43 +2044,104 @@
|
|
|
1801
2044
|
return elts
|
|
1802
2045
|
};
|
|
1803
2046
|
|
|
1804
|
-
pp$
|
|
2047
|
+
pp$7.parseBindingListItem = function(param) {
|
|
1805
2048
|
return param
|
|
1806
2049
|
};
|
|
1807
2050
|
|
|
1808
2051
|
// Parses assignment pattern around given atom if possible.
|
|
1809
2052
|
|
|
1810
|
-
pp$
|
|
2053
|
+
pp$7.parseMaybeDefault = function(startPos, startLoc, left) {
|
|
1811
2054
|
left = left || this.parseBindingAtom();
|
|
1812
|
-
if (this.options.ecmaVersion < 6 || !this.eat(types.eq)) { return left }
|
|
2055
|
+
if (this.options.ecmaVersion < 6 || !this.eat(types$1.eq)) { return left }
|
|
1813
2056
|
var node = this.startNodeAt(startPos, startLoc);
|
|
1814
2057
|
node.left = left;
|
|
1815
2058
|
node.right = this.parseMaybeAssign();
|
|
1816
2059
|
return this.finishNode(node, "AssignmentPattern")
|
|
1817
2060
|
};
|
|
1818
2061
|
|
|
1819
|
-
//
|
|
1820
|
-
// to.
|
|
1821
|
-
//
|
|
1822
|
-
//
|
|
1823
|
-
//
|
|
1824
|
-
//
|
|
2062
|
+
// The following three functions all verify that a node is an lvalue —
|
|
2063
|
+
// something that can be bound, or assigned to. In order to do so, they perform
|
|
2064
|
+
// a variety of checks:
|
|
2065
|
+
//
|
|
2066
|
+
// - Check that none of the bound/assigned-to identifiers are reserved words.
|
|
2067
|
+
// - Record name declarations for bindings in the appropriate scope.
|
|
2068
|
+
// - Check duplicate argument names, if checkClashes is set.
|
|
2069
|
+
//
|
|
2070
|
+
// If a complex binding pattern is encountered (e.g., object and array
|
|
2071
|
+
// destructuring), the entire pattern is recursively checked.
|
|
2072
|
+
//
|
|
2073
|
+
// There are three versions of checkLVal*() appropriate for different
|
|
2074
|
+
// circumstances:
|
|
2075
|
+
//
|
|
2076
|
+
// - checkLValSimple() shall be used if the syntactic construct supports
|
|
2077
|
+
// nothing other than identifiers and member expressions. Parenthesized
|
|
2078
|
+
// expressions are also correctly handled. This is generally appropriate for
|
|
2079
|
+
// constructs for which the spec says
|
|
2080
|
+
//
|
|
2081
|
+
// > It is a Syntax Error if AssignmentTargetType of [the production] is not
|
|
2082
|
+
// > simple.
|
|
2083
|
+
//
|
|
2084
|
+
// It is also appropriate for checking if an identifier is valid and not
|
|
2085
|
+
// defined elsewhere, like import declarations or function/class identifiers.
|
|
2086
|
+
//
|
|
2087
|
+
// Examples where this is used include:
|
|
2088
|
+
// a += …;
|
|
2089
|
+
// import a from '…';
|
|
2090
|
+
// where a is the node to be checked.
|
|
2091
|
+
//
|
|
2092
|
+
// - checkLValPattern() shall be used if the syntactic construct supports
|
|
2093
|
+
// anything checkLValSimple() supports, as well as object and array
|
|
2094
|
+
// destructuring patterns. This is generally appropriate for constructs for
|
|
2095
|
+
// which the spec says
|
|
2096
|
+
//
|
|
2097
|
+
// > It is a Syntax Error if [the production] is neither an ObjectLiteral nor
|
|
2098
|
+
// > an ArrayLiteral and AssignmentTargetType of [the production] is not
|
|
2099
|
+
// > simple.
|
|
2100
|
+
//
|
|
2101
|
+
// Examples where this is used include:
|
|
2102
|
+
// (a = …);
|
|
2103
|
+
// const a = …;
|
|
2104
|
+
// try { … } catch (a) { … }
|
|
2105
|
+
// where a is the node to be checked.
|
|
2106
|
+
//
|
|
2107
|
+
// - checkLValInnerPattern() shall be used if the syntactic construct supports
|
|
2108
|
+
// anything checkLValPattern() supports, as well as default assignment
|
|
2109
|
+
// patterns, rest elements, and other constructs that may appear within an
|
|
2110
|
+
// object or array destructuring pattern.
|
|
2111
|
+
//
|
|
2112
|
+
// As a special case, function parameters also use checkLValInnerPattern(),
|
|
2113
|
+
// as they also support defaults and rest constructs.
|
|
2114
|
+
//
|
|
2115
|
+
// These functions deliberately support both assignment and binding constructs,
|
|
2116
|
+
// as the logic for both is exceedingly similar. If the node is the target of
|
|
2117
|
+
// an assignment, then bindingType should be set to BIND_NONE. Otherwise, it
|
|
2118
|
+
// should be set to the appropriate BIND_* constant, like BIND_VAR or
|
|
2119
|
+
// BIND_LEXICAL.
|
|
2120
|
+
//
|
|
2121
|
+
// If the function is called with a non-BIND_NONE bindingType, then
|
|
2122
|
+
// additionally a checkClashes object may be specified to allow checking for
|
|
2123
|
+
// duplicate argument names. checkClashes is ignored if the provided construct
|
|
2124
|
+
// is an assignment (i.e., bindingType is BIND_NONE).
|
|
1825
2125
|
|
|
1826
|
-
pp$
|
|
2126
|
+
pp$7.checkLValSimple = function(expr, bindingType, checkClashes) {
|
|
1827
2127
|
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
1828
2128
|
|
|
2129
|
+
var isBind = bindingType !== BIND_NONE;
|
|
2130
|
+
|
|
1829
2131
|
switch (expr.type) {
|
|
1830
2132
|
case "Identifier":
|
|
1831
|
-
if (bindingType === BIND_LEXICAL && expr.name === "let")
|
|
1832
|
-
{ this.raiseRecoverable(expr.start, "let is disallowed as a lexically bound name"); }
|
|
1833
2133
|
if (this.strict && this.reservedWordsStrictBind.test(expr.name))
|
|
1834
|
-
{ this.raiseRecoverable(expr.start, (
|
|
1835
|
-
if (
|
|
1836
|
-
if (
|
|
1837
|
-
{ this.raiseRecoverable(expr.start, "
|
|
1838
|
-
checkClashes
|
|
2134
|
+
{ this.raiseRecoverable(expr.start, (isBind ? "Binding " : "Assigning to ") + expr.name + " in strict mode"); }
|
|
2135
|
+
if (isBind) {
|
|
2136
|
+
if (bindingType === BIND_LEXICAL && expr.name === "let")
|
|
2137
|
+
{ this.raiseRecoverable(expr.start, "let is disallowed as a lexically bound name"); }
|
|
2138
|
+
if (checkClashes) {
|
|
2139
|
+
if (hasOwn(checkClashes, expr.name))
|
|
2140
|
+
{ this.raiseRecoverable(expr.start, "Argument name clash"); }
|
|
2141
|
+
checkClashes[expr.name] = true;
|
|
2142
|
+
}
|
|
2143
|
+
if (bindingType !== BIND_OUTSIDE) { this.declareName(expr.name, bindingType, expr.start); }
|
|
1839
2144
|
}
|
|
1840
|
-
if (bindingType !== BIND_NONE && bindingType !== BIND_OUTSIDE) { this.declareName(expr.name, bindingType, expr.start); }
|
|
1841
2145
|
break
|
|
1842
2146
|
|
|
1843
2147
|
case "ChainExpression":
|
|
@@ -1845,58 +2149,230 @@
|
|
|
1845
2149
|
break
|
|
1846
2150
|
|
|
1847
2151
|
case "MemberExpression":
|
|
1848
|
-
if (
|
|
2152
|
+
if (isBind) { this.raiseRecoverable(expr.start, "Binding member expression"); }
|
|
1849
2153
|
break
|
|
1850
2154
|
|
|
1851
|
-
case "
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
var prop = list[i];
|
|
2155
|
+
case "ParenthesizedExpression":
|
|
2156
|
+
if (isBind) { this.raiseRecoverable(expr.start, "Binding parenthesized expression"); }
|
|
2157
|
+
return this.checkLValSimple(expr.expression, bindingType, checkClashes)
|
|
1855
2158
|
|
|
1856
|
-
|
|
2159
|
+
default:
|
|
2160
|
+
this.raise(expr.start, (isBind ? "Binding" : "Assigning to") + " rvalue");
|
|
1857
2161
|
}
|
|
1858
|
-
|
|
2162
|
+
};
|
|
1859
2163
|
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
2164
|
+
pp$7.checkLValPattern = function(expr, bindingType, checkClashes) {
|
|
2165
|
+
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
2166
|
+
|
|
2167
|
+
switch (expr.type) {
|
|
2168
|
+
case "ObjectPattern":
|
|
2169
|
+
for (var i = 0, list = expr.properties; i < list.length; i += 1) {
|
|
2170
|
+
var prop = list[i];
|
|
2171
|
+
|
|
2172
|
+
this.checkLValInnerPattern(prop, bindingType, checkClashes);
|
|
2173
|
+
}
|
|
1863
2174
|
break
|
|
1864
2175
|
|
|
1865
2176
|
case "ArrayPattern":
|
|
1866
2177
|
for (var i$1 = 0, list$1 = expr.elements; i$1 < list$1.length; i$1 += 1) {
|
|
1867
2178
|
var elem = list$1[i$1];
|
|
1868
2179
|
|
|
1869
|
-
if (elem) { this.
|
|
2180
|
+
if (elem) { this.checkLValInnerPattern(elem, bindingType, checkClashes); }
|
|
1870
2181
|
}
|
|
1871
2182
|
break
|
|
1872
2183
|
|
|
1873
|
-
|
|
1874
|
-
this.
|
|
2184
|
+
default:
|
|
2185
|
+
this.checkLValSimple(expr, bindingType, checkClashes);
|
|
2186
|
+
}
|
|
2187
|
+
};
|
|
2188
|
+
|
|
2189
|
+
pp$7.checkLValInnerPattern = function(expr, bindingType, checkClashes) {
|
|
2190
|
+
if ( bindingType === void 0 ) bindingType = BIND_NONE;
|
|
2191
|
+
|
|
2192
|
+
switch (expr.type) {
|
|
2193
|
+
case "Property":
|
|
2194
|
+
// AssignmentProperty has type === "Property"
|
|
2195
|
+
this.checkLValInnerPattern(expr.value, bindingType, checkClashes);
|
|
1875
2196
|
break
|
|
1876
2197
|
|
|
1877
|
-
case "
|
|
1878
|
-
this.
|
|
2198
|
+
case "AssignmentPattern":
|
|
2199
|
+
this.checkLValPattern(expr.left, bindingType, checkClashes);
|
|
1879
2200
|
break
|
|
1880
2201
|
|
|
1881
|
-
case "
|
|
1882
|
-
this.
|
|
2202
|
+
case "RestElement":
|
|
2203
|
+
this.checkLValPattern(expr.argument, bindingType, checkClashes);
|
|
1883
2204
|
break
|
|
1884
2205
|
|
|
1885
2206
|
default:
|
|
1886
|
-
this.
|
|
2207
|
+
this.checkLValPattern(expr, bindingType, checkClashes);
|
|
1887
2208
|
}
|
|
1888
2209
|
};
|
|
1889
2210
|
|
|
2211
|
+
// The algorithm used to determine whether a regexp can appear at a
|
|
2212
|
+
|
|
2213
|
+
var TokContext = function TokContext(token, isExpr, preserveSpace, override, generator) {
|
|
2214
|
+
this.token = token;
|
|
2215
|
+
this.isExpr = !!isExpr;
|
|
2216
|
+
this.preserveSpace = !!preserveSpace;
|
|
2217
|
+
this.override = override;
|
|
2218
|
+
this.generator = !!generator;
|
|
2219
|
+
};
|
|
2220
|
+
|
|
2221
|
+
var types = {
|
|
2222
|
+
b_stat: new TokContext("{", false),
|
|
2223
|
+
b_expr: new TokContext("{", true),
|
|
2224
|
+
b_tmpl: new TokContext("${", false),
|
|
2225
|
+
p_stat: new TokContext("(", false),
|
|
2226
|
+
p_expr: new TokContext("(", true),
|
|
2227
|
+
q_tmpl: new TokContext("`", true, true, function (p) { return p.tryReadTemplateToken(); }),
|
|
2228
|
+
f_stat: new TokContext("function", false),
|
|
2229
|
+
f_expr: new TokContext("function", true),
|
|
2230
|
+
f_expr_gen: new TokContext("function", true, false, null, true),
|
|
2231
|
+
f_gen: new TokContext("function", false, false, null, true)
|
|
2232
|
+
};
|
|
2233
|
+
|
|
2234
|
+
var pp$6 = Parser.prototype;
|
|
2235
|
+
|
|
2236
|
+
pp$6.initialContext = function() {
|
|
2237
|
+
return [types.b_stat]
|
|
2238
|
+
};
|
|
2239
|
+
|
|
2240
|
+
pp$6.curContext = function() {
|
|
2241
|
+
return this.context[this.context.length - 1]
|
|
2242
|
+
};
|
|
2243
|
+
|
|
2244
|
+
pp$6.braceIsBlock = function(prevType) {
|
|
2245
|
+
var parent = this.curContext();
|
|
2246
|
+
if (parent === types.f_expr || parent === types.f_stat)
|
|
2247
|
+
{ return true }
|
|
2248
|
+
if (prevType === types$1.colon && (parent === types.b_stat || parent === types.b_expr))
|
|
2249
|
+
{ return !parent.isExpr }
|
|
2250
|
+
|
|
2251
|
+
// The check for `tt.name && exprAllowed` detects whether we are
|
|
2252
|
+
// after a `yield` or `of` construct. See the `updateContext` for
|
|
2253
|
+
// `tt.name`.
|
|
2254
|
+
if (prevType === types$1._return || prevType === types$1.name && this.exprAllowed)
|
|
2255
|
+
{ return lineBreak.test(this.input.slice(this.lastTokEnd, this.start)) }
|
|
2256
|
+
if (prevType === types$1._else || prevType === types$1.semi || prevType === types$1.eof || prevType === types$1.parenR || prevType === types$1.arrow)
|
|
2257
|
+
{ return true }
|
|
2258
|
+
if (prevType === types$1.braceL)
|
|
2259
|
+
{ return parent === types.b_stat }
|
|
2260
|
+
if (prevType === types$1._var || prevType === types$1._const || prevType === types$1.name)
|
|
2261
|
+
{ return false }
|
|
2262
|
+
return !this.exprAllowed
|
|
2263
|
+
};
|
|
2264
|
+
|
|
2265
|
+
pp$6.inGeneratorContext = function() {
|
|
2266
|
+
for (var i = this.context.length - 1; i >= 1; i--) {
|
|
2267
|
+
var context = this.context[i];
|
|
2268
|
+
if (context.token === "function")
|
|
2269
|
+
{ return context.generator }
|
|
2270
|
+
}
|
|
2271
|
+
return false
|
|
2272
|
+
};
|
|
2273
|
+
|
|
2274
|
+
pp$6.updateContext = function(prevType) {
|
|
2275
|
+
var update, type = this.type;
|
|
2276
|
+
if (type.keyword && prevType === types$1.dot)
|
|
2277
|
+
{ this.exprAllowed = false; }
|
|
2278
|
+
else if (update = type.updateContext)
|
|
2279
|
+
{ update.call(this, prevType); }
|
|
2280
|
+
else
|
|
2281
|
+
{ this.exprAllowed = type.beforeExpr; }
|
|
2282
|
+
};
|
|
2283
|
+
|
|
2284
|
+
// Used to handle egde cases when token context could not be inferred correctly during tokenization phase
|
|
2285
|
+
|
|
2286
|
+
pp$6.overrideContext = function(tokenCtx) {
|
|
2287
|
+
if (this.curContext() !== tokenCtx) {
|
|
2288
|
+
this.context[this.context.length - 1] = tokenCtx;
|
|
2289
|
+
}
|
|
2290
|
+
};
|
|
2291
|
+
|
|
2292
|
+
// Token-specific context update code
|
|
2293
|
+
|
|
2294
|
+
types$1.parenR.updateContext = types$1.braceR.updateContext = function() {
|
|
2295
|
+
if (this.context.length === 1) {
|
|
2296
|
+
this.exprAllowed = true;
|
|
2297
|
+
return
|
|
2298
|
+
}
|
|
2299
|
+
var out = this.context.pop();
|
|
2300
|
+
if (out === types.b_stat && this.curContext().token === "function") {
|
|
2301
|
+
out = this.context.pop();
|
|
2302
|
+
}
|
|
2303
|
+
this.exprAllowed = !out.isExpr;
|
|
2304
|
+
};
|
|
2305
|
+
|
|
2306
|
+
types$1.braceL.updateContext = function(prevType) {
|
|
2307
|
+
this.context.push(this.braceIsBlock(prevType) ? types.b_stat : types.b_expr);
|
|
2308
|
+
this.exprAllowed = true;
|
|
2309
|
+
};
|
|
2310
|
+
|
|
2311
|
+
types$1.dollarBraceL.updateContext = function() {
|
|
2312
|
+
this.context.push(types.b_tmpl);
|
|
2313
|
+
this.exprAllowed = true;
|
|
2314
|
+
};
|
|
2315
|
+
|
|
2316
|
+
types$1.parenL.updateContext = function(prevType) {
|
|
2317
|
+
var statementParens = prevType === types$1._if || prevType === types$1._for || prevType === types$1._with || prevType === types$1._while;
|
|
2318
|
+
this.context.push(statementParens ? types.p_stat : types.p_expr);
|
|
2319
|
+
this.exprAllowed = true;
|
|
2320
|
+
};
|
|
2321
|
+
|
|
2322
|
+
types$1.incDec.updateContext = function() {
|
|
2323
|
+
// tokExprAllowed stays unchanged
|
|
2324
|
+
};
|
|
2325
|
+
|
|
2326
|
+
types$1._function.updateContext = types$1._class.updateContext = function(prevType) {
|
|
2327
|
+
if (prevType.beforeExpr && prevType !== types$1._else &&
|
|
2328
|
+
!(prevType === types$1.semi && this.curContext() !== types.p_stat) &&
|
|
2329
|
+
!(prevType === types$1._return && lineBreak.test(this.input.slice(this.lastTokEnd, this.start))) &&
|
|
2330
|
+
!((prevType === types$1.colon || prevType === types$1.braceL) && this.curContext() === types.b_stat))
|
|
2331
|
+
{ this.context.push(types.f_expr); }
|
|
2332
|
+
else
|
|
2333
|
+
{ this.context.push(types.f_stat); }
|
|
2334
|
+
this.exprAllowed = false;
|
|
2335
|
+
};
|
|
2336
|
+
|
|
2337
|
+
types$1.backQuote.updateContext = function() {
|
|
2338
|
+
if (this.curContext() === types.q_tmpl)
|
|
2339
|
+
{ this.context.pop(); }
|
|
2340
|
+
else
|
|
2341
|
+
{ this.context.push(types.q_tmpl); }
|
|
2342
|
+
this.exprAllowed = false;
|
|
2343
|
+
};
|
|
2344
|
+
|
|
2345
|
+
types$1.star.updateContext = function(prevType) {
|
|
2346
|
+
if (prevType === types$1._function) {
|
|
2347
|
+
var index = this.context.length - 1;
|
|
2348
|
+
if (this.context[index] === types.f_expr)
|
|
2349
|
+
{ this.context[index] = types.f_expr_gen; }
|
|
2350
|
+
else
|
|
2351
|
+
{ this.context[index] = types.f_gen; }
|
|
2352
|
+
}
|
|
2353
|
+
this.exprAllowed = true;
|
|
2354
|
+
};
|
|
2355
|
+
|
|
2356
|
+
types$1.name.updateContext = function(prevType) {
|
|
2357
|
+
var allowed = false;
|
|
2358
|
+
if (this.options.ecmaVersion >= 6 && prevType !== types$1.dot) {
|
|
2359
|
+
if (this.value === "of" && !this.exprAllowed ||
|
|
2360
|
+
this.value === "yield" && this.inGeneratorContext())
|
|
2361
|
+
{ allowed = true; }
|
|
2362
|
+
}
|
|
2363
|
+
this.exprAllowed = allowed;
|
|
2364
|
+
};
|
|
2365
|
+
|
|
1890
2366
|
// A recursive descent parser operates by defining functions for all
|
|
1891
2367
|
|
|
1892
|
-
var pp$
|
|
2368
|
+
var pp$5 = Parser.prototype;
|
|
1893
2369
|
|
|
1894
2370
|
// Check if property name clashes with already added.
|
|
1895
2371
|
// Object/class getters and setters are not allowed to clash —
|
|
1896
2372
|
// either with each other or with an init property — and in
|
|
1897
2373
|
// strict mode, init properties are also not allowed to be repeated.
|
|
1898
2374
|
|
|
1899
|
-
pp$
|
|
2375
|
+
pp$5.checkPropClash = function(prop, propHash, refDestructuringErrors) {
|
|
1900
2376
|
if (this.options.ecmaVersion >= 9 && prop.type === "SpreadElement")
|
|
1901
2377
|
{ return }
|
|
1902
2378
|
if (this.options.ecmaVersion >= 6 && (prop.computed || prop.method || prop.shorthand))
|
|
@@ -1913,10 +2389,12 @@
|
|
|
1913
2389
|
if (name === "__proto__" && kind === "init") {
|
|
1914
2390
|
if (propHash.proto) {
|
|
1915
2391
|
if (refDestructuringErrors) {
|
|
1916
|
-
if (refDestructuringErrors.doubleProto < 0)
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
} else {
|
|
2392
|
+
if (refDestructuringErrors.doubleProto < 0) {
|
|
2393
|
+
refDestructuringErrors.doubleProto = key.start;
|
|
2394
|
+
}
|
|
2395
|
+
} else {
|
|
2396
|
+
this.raiseRecoverable(key.start, "Redefinition of __proto__ property");
|
|
2397
|
+
}
|
|
1920
2398
|
}
|
|
1921
2399
|
propHash.proto = true;
|
|
1922
2400
|
}
|
|
@@ -1958,13 +2436,13 @@
|
|
|
1958
2436
|
// and object pattern might appear (so it's possible to raise
|
|
1959
2437
|
// delayed syntax error at correct position).
|
|
1960
2438
|
|
|
1961
|
-
pp$
|
|
2439
|
+
pp$5.parseExpression = function(forInit, refDestructuringErrors) {
|
|
1962
2440
|
var startPos = this.start, startLoc = this.startLoc;
|
|
1963
|
-
var expr = this.parseMaybeAssign(
|
|
1964
|
-
if (this.type === types.comma) {
|
|
2441
|
+
var expr = this.parseMaybeAssign(forInit, refDestructuringErrors);
|
|
2442
|
+
if (this.type === types$1.comma) {
|
|
1965
2443
|
var node = this.startNodeAt(startPos, startLoc);
|
|
1966
2444
|
node.expressions = [expr];
|
|
1967
|
-
while (this.eat(types.comma)) { node.expressions.push(this.parseMaybeAssign(
|
|
2445
|
+
while (this.eat(types$1.comma)) { node.expressions.push(this.parseMaybeAssign(forInit, refDestructuringErrors)); }
|
|
1968
2446
|
return this.finishNode(node, "SequenceExpression")
|
|
1969
2447
|
}
|
|
1970
2448
|
return expr
|
|
@@ -1973,18 +2451,19 @@
|
|
|
1973
2451
|
// Parse an assignment expression. This includes applications of
|
|
1974
2452
|
// operators like `+=`.
|
|
1975
2453
|
|
|
1976
|
-
pp$
|
|
2454
|
+
pp$5.parseMaybeAssign = function(forInit, refDestructuringErrors, afterLeftParse) {
|
|
1977
2455
|
if (this.isContextual("yield")) {
|
|
1978
|
-
if (this.inGenerator) { return this.parseYield(
|
|
2456
|
+
if (this.inGenerator) { return this.parseYield(forInit) }
|
|
1979
2457
|
// The tokenizer will assume an expression is allowed after
|
|
1980
2458
|
// `yield`, but this isn't that kind of yield
|
|
1981
2459
|
else { this.exprAllowed = false; }
|
|
1982
2460
|
}
|
|
1983
2461
|
|
|
1984
|
-
var ownDestructuringErrors = false, oldParenAssign = -1, oldTrailingComma = -1;
|
|
2462
|
+
var ownDestructuringErrors = false, oldParenAssign = -1, oldTrailingComma = -1, oldDoubleProto = -1;
|
|
1985
2463
|
if (refDestructuringErrors) {
|
|
1986
2464
|
oldParenAssign = refDestructuringErrors.parenthesizedAssign;
|
|
1987
2465
|
oldTrailingComma = refDestructuringErrors.trailingComma;
|
|
2466
|
+
oldDoubleProto = refDestructuringErrors.doubleProto;
|
|
1988
2467
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = -1;
|
|
1989
2468
|
} else {
|
|
1990
2469
|
refDestructuringErrors = new DestructuringErrors;
|
|
@@ -1992,22 +2471,30 @@
|
|
|
1992
2471
|
}
|
|
1993
2472
|
|
|
1994
2473
|
var startPos = this.start, startLoc = this.startLoc;
|
|
1995
|
-
if (this.type === types.parenL || this.type === types.name)
|
|
1996
|
-
|
|
1997
|
-
|
|
2474
|
+
if (this.type === types$1.parenL || this.type === types$1.name) {
|
|
2475
|
+
this.potentialArrowAt = this.start;
|
|
2476
|
+
this.potentialArrowInForAwait = forInit === "await";
|
|
2477
|
+
}
|
|
2478
|
+
var left = this.parseMaybeConditional(forInit, refDestructuringErrors);
|
|
1998
2479
|
if (afterLeftParse) { left = afterLeftParse.call(this, left, startPos, startLoc); }
|
|
1999
2480
|
if (this.type.isAssign) {
|
|
2000
2481
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2001
2482
|
node.operator = this.value;
|
|
2002
|
-
|
|
2483
|
+
if (this.type === types$1.eq)
|
|
2484
|
+
{ left = this.toAssignable(left, false, refDestructuringErrors); }
|
|
2003
2485
|
if (!ownDestructuringErrors) {
|
|
2004
2486
|
refDestructuringErrors.parenthesizedAssign = refDestructuringErrors.trailingComma = refDestructuringErrors.doubleProto = -1;
|
|
2005
2487
|
}
|
|
2006
|
-
if (refDestructuringErrors.shorthandAssign >=
|
|
2488
|
+
if (refDestructuringErrors.shorthandAssign >= left.start)
|
|
2007
2489
|
{ refDestructuringErrors.shorthandAssign = -1; } // reset because shorthand default was used correctly
|
|
2008
|
-
this.
|
|
2490
|
+
if (this.type === types$1.eq)
|
|
2491
|
+
{ this.checkLValPattern(left); }
|
|
2492
|
+
else
|
|
2493
|
+
{ this.checkLValSimple(left); }
|
|
2494
|
+
node.left = left;
|
|
2009
2495
|
this.next();
|
|
2010
|
-
node.right = this.parseMaybeAssign(
|
|
2496
|
+
node.right = this.parseMaybeAssign(forInit);
|
|
2497
|
+
if (oldDoubleProto > -1) { refDestructuringErrors.doubleProto = oldDoubleProto; }
|
|
2011
2498
|
return this.finishNode(node, "AssignmentExpression")
|
|
2012
2499
|
} else {
|
|
2013
2500
|
if (ownDestructuringErrors) { this.checkExpressionErrors(refDestructuringErrors, true); }
|
|
@@ -2019,16 +2506,16 @@
|
|
|
2019
2506
|
|
|
2020
2507
|
// Parse a ternary conditional (`?:`) operator.
|
|
2021
2508
|
|
|
2022
|
-
pp$
|
|
2509
|
+
pp$5.parseMaybeConditional = function(forInit, refDestructuringErrors) {
|
|
2023
2510
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2024
|
-
var expr = this.parseExprOps(
|
|
2511
|
+
var expr = this.parseExprOps(forInit, refDestructuringErrors);
|
|
2025
2512
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2026
|
-
if (this.eat(types.question)) {
|
|
2513
|
+
if (this.eat(types$1.question)) {
|
|
2027
2514
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2028
2515
|
node.test = expr;
|
|
2029
2516
|
node.consequent = this.parseMaybeAssign();
|
|
2030
|
-
this.expect(types.colon);
|
|
2031
|
-
node.alternate = this.parseMaybeAssign(
|
|
2517
|
+
this.expect(types$1.colon);
|
|
2518
|
+
node.alternate = this.parseMaybeAssign(forInit);
|
|
2032
2519
|
return this.finishNode(node, "ConditionalExpression")
|
|
2033
2520
|
}
|
|
2034
2521
|
return expr
|
|
@@ -2036,11 +2523,11 @@
|
|
|
2036
2523
|
|
|
2037
2524
|
// Start the precedence parser.
|
|
2038
2525
|
|
|
2039
|
-
pp$
|
|
2526
|
+
pp$5.parseExprOps = function(forInit, refDestructuringErrors) {
|
|
2040
2527
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2041
|
-
var expr = this.parseMaybeUnary(refDestructuringErrors, false);
|
|
2528
|
+
var expr = this.parseMaybeUnary(refDestructuringErrors, false, false, forInit);
|
|
2042
2529
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2043
|
-
return expr.start === startPos && expr.type === "ArrowFunctionExpression" ? expr : this.parseExprOp(expr, startPos, startLoc, -1,
|
|
2530
|
+
return expr.start === startPos && expr.type === "ArrowFunctionExpression" ? expr : this.parseExprOp(expr, startPos, startLoc, -1, forInit)
|
|
2044
2531
|
};
|
|
2045
2532
|
|
|
2046
2533
|
// Parse binary operators with the operator precedence parsing
|
|
@@ -2049,32 +2536,33 @@
|
|
|
2049
2536
|
// defer further parser to one of its callers when it encounters an
|
|
2050
2537
|
// operator that has a lower precedence than the set it is parsing.
|
|
2051
2538
|
|
|
2052
|
-
pp$
|
|
2539
|
+
pp$5.parseExprOp = function(left, leftStartPos, leftStartLoc, minPrec, forInit) {
|
|
2053
2540
|
var prec = this.type.binop;
|
|
2054
|
-
if (prec != null && (!
|
|
2541
|
+
if (prec != null && (!forInit || this.type !== types$1._in)) {
|
|
2055
2542
|
if (prec > minPrec) {
|
|
2056
|
-
var logical = this.type === types.logicalOR || this.type === types.logicalAND;
|
|
2057
|
-
var coalesce = this.type === types.coalesce;
|
|
2543
|
+
var logical = this.type === types$1.logicalOR || this.type === types$1.logicalAND;
|
|
2544
|
+
var coalesce = this.type === types$1.coalesce;
|
|
2058
2545
|
if (coalesce) {
|
|
2059
2546
|
// Handle the precedence of `tt.coalesce` as equal to the range of logical expressions.
|
|
2060
2547
|
// In other words, `node.right` shouldn't contain logical expressions in order to check the mixed error.
|
|
2061
|
-
prec = types.logicalAND.binop;
|
|
2548
|
+
prec = types$1.logicalAND.binop;
|
|
2062
2549
|
}
|
|
2063
2550
|
var op = this.value;
|
|
2064
2551
|
this.next();
|
|
2065
2552
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2066
|
-
var right = this.parseExprOp(this.parseMaybeUnary(null, false), startPos, startLoc, prec,
|
|
2553
|
+
var right = this.parseExprOp(this.parseMaybeUnary(null, false, false, forInit), startPos, startLoc, prec, forInit);
|
|
2067
2554
|
var node = this.buildBinary(leftStartPos, leftStartLoc, left, right, op, logical || coalesce);
|
|
2068
|
-
if ((logical && this.type === types.coalesce) || (coalesce && (this.type === types.logicalOR || this.type === types.logicalAND))) {
|
|
2555
|
+
if ((logical && this.type === types$1.coalesce) || (coalesce && (this.type === types$1.logicalOR || this.type === types$1.logicalAND))) {
|
|
2069
2556
|
this.raiseRecoverable(this.start, "Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses");
|
|
2070
2557
|
}
|
|
2071
|
-
return this.parseExprOp(node, leftStartPos, leftStartLoc, minPrec,
|
|
2558
|
+
return this.parseExprOp(node, leftStartPos, leftStartLoc, minPrec, forInit)
|
|
2072
2559
|
}
|
|
2073
2560
|
}
|
|
2074
2561
|
return left
|
|
2075
2562
|
};
|
|
2076
2563
|
|
|
2077
|
-
pp$
|
|
2564
|
+
pp$5.buildBinary = function(startPos, startLoc, left, right, op, logical) {
|
|
2565
|
+
if (right.type === "PrivateIdentifier") { this.raise(right.start, "Private identifier can only be left side of binary expression"); }
|
|
2078
2566
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2079
2567
|
node.left = left;
|
|
2080
2568
|
node.operator = op;
|
|
@@ -2084,67 +2572,86 @@
|
|
|
2084
2572
|
|
|
2085
2573
|
// Parse unary operators, both prefix and postfix.
|
|
2086
2574
|
|
|
2087
|
-
pp$
|
|
2575
|
+
pp$5.parseMaybeUnary = function(refDestructuringErrors, sawUnary, incDec, forInit) {
|
|
2088
2576
|
var startPos = this.start, startLoc = this.startLoc, expr;
|
|
2089
|
-
if (this.isContextual("await") &&
|
|
2090
|
-
expr = this.parseAwait();
|
|
2577
|
+
if (this.isContextual("await") && this.canAwait) {
|
|
2578
|
+
expr = this.parseAwait(forInit);
|
|
2091
2579
|
sawUnary = true;
|
|
2092
2580
|
} else if (this.type.prefix) {
|
|
2093
|
-
var node = this.startNode(), update = this.type === types.incDec;
|
|
2581
|
+
var node = this.startNode(), update = this.type === types$1.incDec;
|
|
2094
2582
|
node.operator = this.value;
|
|
2095
2583
|
node.prefix = true;
|
|
2096
2584
|
this.next();
|
|
2097
|
-
node.argument = this.parseMaybeUnary(null, true);
|
|
2585
|
+
node.argument = this.parseMaybeUnary(null, true, update, forInit);
|
|
2098
2586
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
2099
|
-
if (update) { this.
|
|
2587
|
+
if (update) { this.checkLValSimple(node.argument); }
|
|
2100
2588
|
else if (this.strict && node.operator === "delete" &&
|
|
2101
2589
|
node.argument.type === "Identifier")
|
|
2102
2590
|
{ this.raiseRecoverable(node.start, "Deleting local variable in strict mode"); }
|
|
2591
|
+
else if (node.operator === "delete" && isPrivateFieldAccess(node.argument))
|
|
2592
|
+
{ this.raiseRecoverable(node.start, "Private fields can not be deleted"); }
|
|
2103
2593
|
else { sawUnary = true; }
|
|
2104
2594
|
expr = this.finishNode(node, update ? "UpdateExpression" : "UnaryExpression");
|
|
2595
|
+
} else if (!sawUnary && this.type === types$1.privateId) {
|
|
2596
|
+
if (forInit || this.privateNameStack.length === 0) { this.unexpected(); }
|
|
2597
|
+
expr = this.parsePrivateIdent();
|
|
2598
|
+
// only could be private fields in 'in', such as #x in obj
|
|
2599
|
+
if (this.type !== types$1._in) { this.unexpected(); }
|
|
2105
2600
|
} else {
|
|
2106
|
-
expr = this.parseExprSubscripts(refDestructuringErrors);
|
|
2601
|
+
expr = this.parseExprSubscripts(refDestructuringErrors, forInit);
|
|
2107
2602
|
if (this.checkExpressionErrors(refDestructuringErrors)) { return expr }
|
|
2108
2603
|
while (this.type.postfix && !this.canInsertSemicolon()) {
|
|
2109
2604
|
var node$1 = this.startNodeAt(startPos, startLoc);
|
|
2110
2605
|
node$1.operator = this.value;
|
|
2111
2606
|
node$1.prefix = false;
|
|
2112
2607
|
node$1.argument = expr;
|
|
2113
|
-
this.
|
|
2608
|
+
this.checkLValSimple(expr);
|
|
2114
2609
|
this.next();
|
|
2115
2610
|
expr = this.finishNode(node$1, "UpdateExpression");
|
|
2116
2611
|
}
|
|
2117
2612
|
}
|
|
2118
2613
|
|
|
2119
|
-
if (!
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2614
|
+
if (!incDec && this.eat(types$1.starstar)) {
|
|
2615
|
+
if (sawUnary)
|
|
2616
|
+
{ this.unexpected(this.lastTokStart); }
|
|
2617
|
+
else
|
|
2618
|
+
{ return this.buildBinary(startPos, startLoc, expr, this.parseMaybeUnary(null, false, false, forInit), "**", false) }
|
|
2619
|
+
} else {
|
|
2620
|
+
return expr
|
|
2621
|
+
}
|
|
2123
2622
|
};
|
|
2124
2623
|
|
|
2624
|
+
function isPrivateFieldAccess(node) {
|
|
2625
|
+
return (
|
|
2626
|
+
node.type === "MemberExpression" && node.property.type === "PrivateIdentifier" ||
|
|
2627
|
+
node.type === "ChainExpression" && isPrivateFieldAccess(node.expression)
|
|
2628
|
+
)
|
|
2629
|
+
}
|
|
2630
|
+
|
|
2125
2631
|
// Parse call, dot, and `[]`-subscript expressions.
|
|
2126
2632
|
|
|
2127
|
-
pp$
|
|
2633
|
+
pp$5.parseExprSubscripts = function(refDestructuringErrors, forInit) {
|
|
2128
2634
|
var startPos = this.start, startLoc = this.startLoc;
|
|
2129
|
-
var expr = this.parseExprAtom(refDestructuringErrors);
|
|
2635
|
+
var expr = this.parseExprAtom(refDestructuringErrors, forInit);
|
|
2130
2636
|
if (expr.type === "ArrowFunctionExpression" && this.input.slice(this.lastTokStart, this.lastTokEnd) !== ")")
|
|
2131
2637
|
{ return expr }
|
|
2132
|
-
var result = this.parseSubscripts(expr, startPos, startLoc);
|
|
2638
|
+
var result = this.parseSubscripts(expr, startPos, startLoc, false, forInit);
|
|
2133
2639
|
if (refDestructuringErrors && result.type === "MemberExpression") {
|
|
2134
2640
|
if (refDestructuringErrors.parenthesizedAssign >= result.start) { refDestructuringErrors.parenthesizedAssign = -1; }
|
|
2135
2641
|
if (refDestructuringErrors.parenthesizedBind >= result.start) { refDestructuringErrors.parenthesizedBind = -1; }
|
|
2642
|
+
if (refDestructuringErrors.trailingComma >= result.start) { refDestructuringErrors.trailingComma = -1; }
|
|
2136
2643
|
}
|
|
2137
2644
|
return result
|
|
2138
2645
|
};
|
|
2139
2646
|
|
|
2140
|
-
pp$
|
|
2647
|
+
pp$5.parseSubscripts = function(base, startPos, startLoc, noCalls, forInit) {
|
|
2141
2648
|
var maybeAsyncArrow = this.options.ecmaVersion >= 8 && base.type === "Identifier" && base.name === "async" &&
|
|
2142
2649
|
this.lastTokEnd === base.end && !this.canInsertSemicolon() && base.end - base.start === 5 &&
|
|
2143
2650
|
this.potentialArrowAt === base.start;
|
|
2144
2651
|
var optionalChained = false;
|
|
2145
2652
|
|
|
2146
2653
|
while (true) {
|
|
2147
|
-
var element = this.parseSubscript(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained);
|
|
2654
|
+
var element = this.parseSubscript(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained, forInit);
|
|
2148
2655
|
|
|
2149
2656
|
if (element.optional) { optionalChained = true; }
|
|
2150
2657
|
if (element === base || element.type === "ArrowFunctionExpression") {
|
|
@@ -2160,29 +2667,35 @@
|
|
|
2160
2667
|
}
|
|
2161
2668
|
};
|
|
2162
2669
|
|
|
2163
|
-
pp$
|
|
2670
|
+
pp$5.parseSubscript = function(base, startPos, startLoc, noCalls, maybeAsyncArrow, optionalChained, forInit) {
|
|
2164
2671
|
var optionalSupported = this.options.ecmaVersion >= 11;
|
|
2165
|
-
var optional = optionalSupported && this.eat(types.questionDot);
|
|
2672
|
+
var optional = optionalSupported && this.eat(types$1.questionDot);
|
|
2166
2673
|
if (noCalls && optional) { this.raise(this.lastTokStart, "Optional chaining cannot appear in the callee of new expressions"); }
|
|
2167
2674
|
|
|
2168
|
-
var computed = this.eat(types.bracketL);
|
|
2169
|
-
if (computed || (optional && this.type !== types.parenL && this.type !== types.backQuote) || this.eat(types.dot)) {
|
|
2675
|
+
var computed = this.eat(types$1.bracketL);
|
|
2676
|
+
if (computed || (optional && this.type !== types$1.parenL && this.type !== types$1.backQuote) || this.eat(types$1.dot)) {
|
|
2170
2677
|
var node = this.startNodeAt(startPos, startLoc);
|
|
2171
2678
|
node.object = base;
|
|
2172
|
-
|
|
2679
|
+
if (computed) {
|
|
2680
|
+
node.property = this.parseExpression();
|
|
2681
|
+
this.expect(types$1.bracketR);
|
|
2682
|
+
} else if (this.type === types$1.privateId && base.type !== "Super") {
|
|
2683
|
+
node.property = this.parsePrivateIdent();
|
|
2684
|
+
} else {
|
|
2685
|
+
node.property = this.parseIdent(this.options.allowReserved !== "never");
|
|
2686
|
+
}
|
|
2173
2687
|
node.computed = !!computed;
|
|
2174
|
-
if (computed) { this.expect(types.bracketR); }
|
|
2175
2688
|
if (optionalSupported) {
|
|
2176
2689
|
node.optional = optional;
|
|
2177
2690
|
}
|
|
2178
2691
|
base = this.finishNode(node, "MemberExpression");
|
|
2179
|
-
} else if (!noCalls && this.eat(types.parenL)) {
|
|
2692
|
+
} else if (!noCalls && this.eat(types$1.parenL)) {
|
|
2180
2693
|
var refDestructuringErrors = new DestructuringErrors, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2181
2694
|
this.yieldPos = 0;
|
|
2182
2695
|
this.awaitPos = 0;
|
|
2183
2696
|
this.awaitIdentPos = 0;
|
|
2184
|
-
var exprList = this.parseExprList(types.parenR, this.options.ecmaVersion >= 8, false, refDestructuringErrors);
|
|
2185
|
-
if (maybeAsyncArrow && !optional && !this.canInsertSemicolon() && this.eat(types.arrow)) {
|
|
2697
|
+
var exprList = this.parseExprList(types$1.parenR, this.options.ecmaVersion >= 8, false, refDestructuringErrors);
|
|
2698
|
+
if (maybeAsyncArrow && !optional && !this.canInsertSemicolon() && this.eat(types$1.arrow)) {
|
|
2186
2699
|
this.checkPatternErrors(refDestructuringErrors, false);
|
|
2187
2700
|
this.checkYieldAwaitInDefaultParams();
|
|
2188
2701
|
if (this.awaitIdentPos > 0)
|
|
@@ -2190,7 +2703,7 @@
|
|
|
2190
2703
|
this.yieldPos = oldYieldPos;
|
|
2191
2704
|
this.awaitPos = oldAwaitPos;
|
|
2192
2705
|
this.awaitIdentPos = oldAwaitIdentPos;
|
|
2193
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, true)
|
|
2706
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, true, forInit)
|
|
2194
2707
|
}
|
|
2195
2708
|
this.checkExpressionErrors(refDestructuringErrors, true);
|
|
2196
2709
|
this.yieldPos = oldYieldPos || this.yieldPos;
|
|
@@ -2203,7 +2716,7 @@
|
|
|
2203
2716
|
node$1.optional = optional;
|
|
2204
2717
|
}
|
|
2205
2718
|
base = this.finishNode(node$1, "CallExpression");
|
|
2206
|
-
} else if (this.type === types.backQuote) {
|
|
2719
|
+
} else if (this.type === types$1.backQuote) {
|
|
2207
2720
|
if (optional || optionalChained) {
|
|
2208
2721
|
this.raise(this.start, "Optional chaining cannot appear in the tag of tagged template expressions");
|
|
2209
2722
|
}
|
|
@@ -2220,19 +2733,19 @@
|
|
|
2220
2733
|
// `new`, or an expression wrapped in punctuation like `()`, `[]`,
|
|
2221
2734
|
// or `{}`.
|
|
2222
2735
|
|
|
2223
|
-
pp$
|
|
2736
|
+
pp$5.parseExprAtom = function(refDestructuringErrors, forInit) {
|
|
2224
2737
|
// If a division operator appears in an expression position, the
|
|
2225
2738
|
// tokenizer got confused, and we force it to read a regexp instead.
|
|
2226
|
-
if (this.type === types.slash) { this.readRegexp(); }
|
|
2739
|
+
if (this.type === types$1.slash) { this.readRegexp(); }
|
|
2227
2740
|
|
|
2228
2741
|
var node, canBeArrow = this.potentialArrowAt === this.start;
|
|
2229
2742
|
switch (this.type) {
|
|
2230
|
-
case types._super:
|
|
2743
|
+
case types$1._super:
|
|
2231
2744
|
if (!this.allowSuper)
|
|
2232
2745
|
{ this.raise(this.start, "'super' keyword outside a method"); }
|
|
2233
2746
|
node = this.startNode();
|
|
2234
2747
|
this.next();
|
|
2235
|
-
if (this.type === types.parenL && !this.allowDirectSuper)
|
|
2748
|
+
if (this.type === types$1.parenL && !this.allowDirectSuper)
|
|
2236
2749
|
{ this.raise(node.start, "super() call outside constructor of a subclass"); }
|
|
2237
2750
|
// The `super` keyword can appear at below:
|
|
2238
2751
|
// SuperProperty:
|
|
@@ -2240,50 +2753,53 @@
|
|
|
2240
2753
|
// super . IdentifierName
|
|
2241
2754
|
// SuperCall:
|
|
2242
2755
|
// super ( Arguments )
|
|
2243
|
-
if (this.type !== types.dot && this.type !== types.bracketL && this.type !== types.parenL)
|
|
2756
|
+
if (this.type !== types$1.dot && this.type !== types$1.bracketL && this.type !== types$1.parenL)
|
|
2244
2757
|
{ this.unexpected(); }
|
|
2245
2758
|
return this.finishNode(node, "Super")
|
|
2246
2759
|
|
|
2247
|
-
case types._this:
|
|
2760
|
+
case types$1._this:
|
|
2248
2761
|
node = this.startNode();
|
|
2249
2762
|
this.next();
|
|
2250
2763
|
return this.finishNode(node, "ThisExpression")
|
|
2251
2764
|
|
|
2252
|
-
case types.name:
|
|
2765
|
+
case types$1.name:
|
|
2253
2766
|
var startPos = this.start, startLoc = this.startLoc, containsEsc = this.containsEsc;
|
|
2254
2767
|
var id = this.parseIdent(false);
|
|
2255
|
-
if (this.options.ecmaVersion >= 8 && !containsEsc && id.name === "async" && !this.canInsertSemicolon() && this.eat(types._function))
|
|
2256
|
-
|
|
2768
|
+
if (this.options.ecmaVersion >= 8 && !containsEsc && id.name === "async" && !this.canInsertSemicolon() && this.eat(types$1._function)) {
|
|
2769
|
+
this.overrideContext(types.f_expr);
|
|
2770
|
+
return this.parseFunction(this.startNodeAt(startPos, startLoc), 0, false, true, forInit)
|
|
2771
|
+
}
|
|
2257
2772
|
if (canBeArrow && !this.canInsertSemicolon()) {
|
|
2258
|
-
if (this.eat(types.arrow))
|
|
2259
|
-
{ return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], false) }
|
|
2260
|
-
if (this.options.ecmaVersion >= 8 && id.name === "async" && this.type === types.name && !containsEsc
|
|
2773
|
+
if (this.eat(types$1.arrow))
|
|
2774
|
+
{ return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], false, forInit) }
|
|
2775
|
+
if (this.options.ecmaVersion >= 8 && id.name === "async" && this.type === types$1.name && !containsEsc &&
|
|
2776
|
+
(!this.potentialArrowInForAwait || this.value !== "of" || this.containsEsc)) {
|
|
2261
2777
|
id = this.parseIdent(false);
|
|
2262
|
-
if (this.canInsertSemicolon() || !this.eat(types.arrow))
|
|
2778
|
+
if (this.canInsertSemicolon() || !this.eat(types$1.arrow))
|
|
2263
2779
|
{ this.unexpected(); }
|
|
2264
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], true)
|
|
2780
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], true, forInit)
|
|
2265
2781
|
}
|
|
2266
2782
|
}
|
|
2267
2783
|
return id
|
|
2268
2784
|
|
|
2269
|
-
case types.regexp:
|
|
2785
|
+
case types$1.regexp:
|
|
2270
2786
|
var value = this.value;
|
|
2271
2787
|
node = this.parseLiteral(value.value);
|
|
2272
2788
|
node.regex = {pattern: value.pattern, flags: value.flags};
|
|
2273
2789
|
return node
|
|
2274
2790
|
|
|
2275
|
-
case types.num: case types.string:
|
|
2791
|
+
case types$1.num: case types$1.string:
|
|
2276
2792
|
return this.parseLiteral(this.value)
|
|
2277
2793
|
|
|
2278
|
-
case types._null: case types._true: case types._false:
|
|
2794
|
+
case types$1._null: case types$1._true: case types$1._false:
|
|
2279
2795
|
node = this.startNode();
|
|
2280
|
-
node.value = this.type === types._null ? null : this.type === types._true;
|
|
2796
|
+
node.value = this.type === types$1._null ? null : this.type === types$1._true;
|
|
2281
2797
|
node.raw = this.type.keyword;
|
|
2282
2798
|
this.next();
|
|
2283
2799
|
return this.finishNode(node, "Literal")
|
|
2284
2800
|
|
|
2285
|
-
case types.parenL:
|
|
2286
|
-
var start = this.start, expr = this.parseParenAndDistinguishExpression(canBeArrow);
|
|
2801
|
+
case types$1.parenL:
|
|
2802
|
+
var start = this.start, expr = this.parseParenAndDistinguishExpression(canBeArrow, forInit);
|
|
2287
2803
|
if (refDestructuringErrors) {
|
|
2288
2804
|
if (refDestructuringErrors.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(expr))
|
|
2289
2805
|
{ refDestructuringErrors.parenthesizedAssign = start; }
|
|
@@ -2292,30 +2808,31 @@
|
|
|
2292
2808
|
}
|
|
2293
2809
|
return expr
|
|
2294
2810
|
|
|
2295
|
-
case types.bracketL:
|
|
2811
|
+
case types$1.bracketL:
|
|
2296
2812
|
node = this.startNode();
|
|
2297
2813
|
this.next();
|
|
2298
|
-
node.elements = this.parseExprList(types.bracketR, true, true, refDestructuringErrors);
|
|
2814
|
+
node.elements = this.parseExprList(types$1.bracketR, true, true, refDestructuringErrors);
|
|
2299
2815
|
return this.finishNode(node, "ArrayExpression")
|
|
2300
2816
|
|
|
2301
|
-
case types.braceL:
|
|
2817
|
+
case types$1.braceL:
|
|
2818
|
+
this.overrideContext(types.b_expr);
|
|
2302
2819
|
return this.parseObj(false, refDestructuringErrors)
|
|
2303
2820
|
|
|
2304
|
-
case types._function:
|
|
2821
|
+
case types$1._function:
|
|
2305
2822
|
node = this.startNode();
|
|
2306
2823
|
this.next();
|
|
2307
2824
|
return this.parseFunction(node, 0)
|
|
2308
2825
|
|
|
2309
|
-
case types._class:
|
|
2826
|
+
case types$1._class:
|
|
2310
2827
|
return this.parseClass(this.startNode(), false)
|
|
2311
2828
|
|
|
2312
|
-
case types._new:
|
|
2829
|
+
case types$1._new:
|
|
2313
2830
|
return this.parseNew()
|
|
2314
2831
|
|
|
2315
|
-
case types.backQuote:
|
|
2832
|
+
case types$1.backQuote:
|
|
2316
2833
|
return this.parseTemplate()
|
|
2317
2834
|
|
|
2318
|
-
case types._import:
|
|
2835
|
+
case types$1._import:
|
|
2319
2836
|
if (this.options.ecmaVersion >= 11) {
|
|
2320
2837
|
return this.parseExprImport()
|
|
2321
2838
|
} else {
|
|
@@ -2327,7 +2844,7 @@
|
|
|
2327
2844
|
}
|
|
2328
2845
|
};
|
|
2329
2846
|
|
|
2330
|
-
pp$
|
|
2847
|
+
pp$5.parseExprImport = function() {
|
|
2331
2848
|
var node = this.startNode();
|
|
2332
2849
|
|
|
2333
2850
|
// Consume `import` as an identifier for `import.meta`.
|
|
@@ -2336,9 +2853,9 @@
|
|
|
2336
2853
|
var meta = this.parseIdent(true);
|
|
2337
2854
|
|
|
2338
2855
|
switch (this.type) {
|
|
2339
|
-
case types.parenL:
|
|
2856
|
+
case types$1.parenL:
|
|
2340
2857
|
return this.parseDynamicImport(node)
|
|
2341
|
-
case types.dot:
|
|
2858
|
+
case types$1.dot:
|
|
2342
2859
|
node.meta = meta;
|
|
2343
2860
|
return this.parseImportMeta(node)
|
|
2344
2861
|
default:
|
|
@@ -2346,16 +2863,16 @@
|
|
|
2346
2863
|
}
|
|
2347
2864
|
};
|
|
2348
2865
|
|
|
2349
|
-
pp$
|
|
2866
|
+
pp$5.parseDynamicImport = function(node) {
|
|
2350
2867
|
this.next(); // skip `(`
|
|
2351
2868
|
|
|
2352
2869
|
// Parse node.source.
|
|
2353
2870
|
node.source = this.parseMaybeAssign();
|
|
2354
2871
|
|
|
2355
2872
|
// Verify ending.
|
|
2356
|
-
if (!this.eat(types.parenR)) {
|
|
2873
|
+
if (!this.eat(types$1.parenR)) {
|
|
2357
2874
|
var errorPos = this.start;
|
|
2358
|
-
if (this.eat(types.comma) && this.eat(types.parenR)) {
|
|
2875
|
+
if (this.eat(types$1.comma) && this.eat(types$1.parenR)) {
|
|
2359
2876
|
this.raiseRecoverable(errorPos, "Trailing comma is not allowed in import()");
|
|
2360
2877
|
} else {
|
|
2361
2878
|
this.unexpected(errorPos);
|
|
@@ -2365,7 +2882,7 @@
|
|
|
2365
2882
|
return this.finishNode(node, "ImportExpression")
|
|
2366
2883
|
};
|
|
2367
2884
|
|
|
2368
|
-
pp$
|
|
2885
|
+
pp$5.parseImportMeta = function(node) {
|
|
2369
2886
|
this.next(); // skip `.`
|
|
2370
2887
|
|
|
2371
2888
|
var containsEsc = this.containsEsc;
|
|
@@ -2375,13 +2892,13 @@
|
|
|
2375
2892
|
{ this.raiseRecoverable(node.property.start, "The only valid meta property for import is 'import.meta'"); }
|
|
2376
2893
|
if (containsEsc)
|
|
2377
2894
|
{ this.raiseRecoverable(node.start, "'import.meta' must not contain escaped characters"); }
|
|
2378
|
-
if (this.options.sourceType !== "module")
|
|
2895
|
+
if (this.options.sourceType !== "module" && !this.options.allowImportExportEverywhere)
|
|
2379
2896
|
{ this.raiseRecoverable(node.start, "Cannot use 'import.meta' outside a module"); }
|
|
2380
2897
|
|
|
2381
2898
|
return this.finishNode(node, "MetaProperty")
|
|
2382
2899
|
};
|
|
2383
2900
|
|
|
2384
|
-
pp$
|
|
2901
|
+
pp$5.parseLiteral = function(value) {
|
|
2385
2902
|
var node = this.startNode();
|
|
2386
2903
|
node.value = value;
|
|
2387
2904
|
node.raw = this.input.slice(this.start, this.end);
|
|
@@ -2390,14 +2907,14 @@
|
|
|
2390
2907
|
return this.finishNode(node, "Literal")
|
|
2391
2908
|
};
|
|
2392
2909
|
|
|
2393
|
-
pp$
|
|
2394
|
-
this.expect(types.parenL);
|
|
2910
|
+
pp$5.parseParenExpression = function() {
|
|
2911
|
+
this.expect(types$1.parenL);
|
|
2395
2912
|
var val = this.parseExpression();
|
|
2396
|
-
this.expect(types.parenR);
|
|
2913
|
+
this.expect(types$1.parenR);
|
|
2397
2914
|
return val
|
|
2398
2915
|
};
|
|
2399
2916
|
|
|
2400
|
-
pp$
|
|
2917
|
+
pp$5.parseParenAndDistinguishExpression = function(canBeArrow, forInit) {
|
|
2401
2918
|
var startPos = this.start, startLoc = this.startLoc, val, allowTrailingComma = this.options.ecmaVersion >= 8;
|
|
2402
2919
|
if (this.options.ecmaVersion >= 6) {
|
|
2403
2920
|
this.next();
|
|
@@ -2408,29 +2925,29 @@
|
|
|
2408
2925
|
this.yieldPos = 0;
|
|
2409
2926
|
this.awaitPos = 0;
|
|
2410
2927
|
// Do not save awaitIdentPos to allow checking awaits nested in parameters
|
|
2411
|
-
while (this.type !== types.parenR) {
|
|
2412
|
-
first ? first = false : this.expect(types.comma);
|
|
2413
|
-
if (allowTrailingComma && this.afterTrailingComma(types.parenR, true)) {
|
|
2928
|
+
while (this.type !== types$1.parenR) {
|
|
2929
|
+
first ? first = false : this.expect(types$1.comma);
|
|
2930
|
+
if (allowTrailingComma && this.afterTrailingComma(types$1.parenR, true)) {
|
|
2414
2931
|
lastIsComma = true;
|
|
2415
2932
|
break
|
|
2416
|
-
} else if (this.type === types.ellipsis) {
|
|
2933
|
+
} else if (this.type === types$1.ellipsis) {
|
|
2417
2934
|
spreadStart = this.start;
|
|
2418
2935
|
exprList.push(this.parseParenItem(this.parseRestBinding()));
|
|
2419
|
-
if (this.type === types.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2936
|
+
if (this.type === types$1.comma) { this.raise(this.start, "Comma is not permitted after the rest element"); }
|
|
2420
2937
|
break
|
|
2421
2938
|
} else {
|
|
2422
2939
|
exprList.push(this.parseMaybeAssign(false, refDestructuringErrors, this.parseParenItem));
|
|
2423
2940
|
}
|
|
2424
2941
|
}
|
|
2425
|
-
var innerEndPos = this.
|
|
2426
|
-
this.expect(types.parenR);
|
|
2942
|
+
var innerEndPos = this.lastTokEnd, innerEndLoc = this.lastTokEndLoc;
|
|
2943
|
+
this.expect(types$1.parenR);
|
|
2427
2944
|
|
|
2428
|
-
if (canBeArrow && !this.canInsertSemicolon() && this.eat(types.arrow)) {
|
|
2945
|
+
if (canBeArrow && !this.canInsertSemicolon() && this.eat(types$1.arrow)) {
|
|
2429
2946
|
this.checkPatternErrors(refDestructuringErrors, false);
|
|
2430
2947
|
this.checkYieldAwaitInDefaultParams();
|
|
2431
2948
|
this.yieldPos = oldYieldPos;
|
|
2432
2949
|
this.awaitPos = oldAwaitPos;
|
|
2433
|
-
return this.parseParenArrowList(startPos, startLoc, exprList)
|
|
2950
|
+
return this.parseParenArrowList(startPos, startLoc, exprList, forInit)
|
|
2434
2951
|
}
|
|
2435
2952
|
|
|
2436
2953
|
if (!exprList.length || lastIsComma) { this.unexpected(this.lastTokStart); }
|
|
@@ -2459,12 +2976,12 @@
|
|
|
2459
2976
|
}
|
|
2460
2977
|
};
|
|
2461
2978
|
|
|
2462
|
-
pp$
|
|
2979
|
+
pp$5.parseParenItem = function(item) {
|
|
2463
2980
|
return item
|
|
2464
2981
|
};
|
|
2465
2982
|
|
|
2466
|
-
pp$
|
|
2467
|
-
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList)
|
|
2983
|
+
pp$5.parseParenArrowList = function(startPos, startLoc, exprList, forInit) {
|
|
2984
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList, false, forInit)
|
|
2468
2985
|
};
|
|
2469
2986
|
|
|
2470
2987
|
// New's precedence is slightly tricky. It must allow its argument to
|
|
@@ -2473,13 +2990,13 @@
|
|
|
2473
2990
|
// argument to parseSubscripts to prevent it from consuming the
|
|
2474
2991
|
// argument list.
|
|
2475
2992
|
|
|
2476
|
-
var empty
|
|
2993
|
+
var empty = [];
|
|
2477
2994
|
|
|
2478
|
-
pp$
|
|
2995
|
+
pp$5.parseNew = function() {
|
|
2479
2996
|
if (this.containsEsc) { this.raiseRecoverable(this.start, "Escape sequence in keyword new"); }
|
|
2480
2997
|
var node = this.startNode();
|
|
2481
2998
|
var meta = this.parseIdent(true);
|
|
2482
|
-
if (this.options.ecmaVersion >= 6 && this.eat(types.dot)) {
|
|
2999
|
+
if (this.options.ecmaVersion >= 6 && this.eat(types$1.dot)) {
|
|
2483
3000
|
node.meta = meta;
|
|
2484
3001
|
var containsEsc = this.containsEsc;
|
|
2485
3002
|
node.property = this.parseIdent(true);
|
|
@@ -2487,27 +3004,27 @@
|
|
|
2487
3004
|
{ this.raiseRecoverable(node.property.start, "The only valid meta property for new is 'new.target'"); }
|
|
2488
3005
|
if (containsEsc)
|
|
2489
3006
|
{ this.raiseRecoverable(node.start, "'new.target' must not contain escaped characters"); }
|
|
2490
|
-
if (!this.
|
|
2491
|
-
{ this.raiseRecoverable(node.start, "'new.target' can only be used in functions"); }
|
|
3007
|
+
if (!this.allowNewDotTarget)
|
|
3008
|
+
{ this.raiseRecoverable(node.start, "'new.target' can only be used in functions and class static block"); }
|
|
2492
3009
|
return this.finishNode(node, "MetaProperty")
|
|
2493
3010
|
}
|
|
2494
|
-
var startPos = this.start, startLoc = this.startLoc, isImport = this.type === types._import;
|
|
2495
|
-
node.callee = this.parseSubscripts(this.parseExprAtom(), startPos, startLoc, true);
|
|
3011
|
+
var startPos = this.start, startLoc = this.startLoc, isImport = this.type === types$1._import;
|
|
3012
|
+
node.callee = this.parseSubscripts(this.parseExprAtom(), startPos, startLoc, true, false);
|
|
2496
3013
|
if (isImport && node.callee.type === "ImportExpression") {
|
|
2497
3014
|
this.raise(startPos, "Cannot use new with import()");
|
|
2498
3015
|
}
|
|
2499
|
-
if (this.eat(types.parenL)) { node.arguments = this.parseExprList(types.parenR, this.options.ecmaVersion >= 8, false); }
|
|
2500
|
-
else { node.arguments = empty
|
|
3016
|
+
if (this.eat(types$1.parenL)) { node.arguments = this.parseExprList(types$1.parenR, this.options.ecmaVersion >= 8, false); }
|
|
3017
|
+
else { node.arguments = empty; }
|
|
2501
3018
|
return this.finishNode(node, "NewExpression")
|
|
2502
3019
|
};
|
|
2503
3020
|
|
|
2504
3021
|
// Parse template expression.
|
|
2505
3022
|
|
|
2506
|
-
pp$
|
|
3023
|
+
pp$5.parseTemplateElement = function(ref) {
|
|
2507
3024
|
var isTagged = ref.isTagged;
|
|
2508
3025
|
|
|
2509
3026
|
var elem = this.startNode();
|
|
2510
|
-
if (this.type === types.invalidTemplate) {
|
|
3027
|
+
if (this.type === types$1.invalidTemplate) {
|
|
2511
3028
|
if (!isTagged) {
|
|
2512
3029
|
this.raiseRecoverable(this.start, "Bad escape sequence in untagged template literal");
|
|
2513
3030
|
}
|
|
@@ -2522,11 +3039,11 @@
|
|
|
2522
3039
|
};
|
|
2523
3040
|
}
|
|
2524
3041
|
this.next();
|
|
2525
|
-
elem.tail = this.type === types.backQuote;
|
|
3042
|
+
elem.tail = this.type === types$1.backQuote;
|
|
2526
3043
|
return this.finishNode(elem, "TemplateElement")
|
|
2527
3044
|
};
|
|
2528
3045
|
|
|
2529
|
-
pp$
|
|
3046
|
+
pp$5.parseTemplate = function(ref) {
|
|
2530
3047
|
if ( ref === void 0 ) ref = {};
|
|
2531
3048
|
var isTagged = ref.isTagged; if ( isTagged === void 0 ) isTagged = false;
|
|
2532
3049
|
|
|
@@ -2536,32 +3053,32 @@
|
|
|
2536
3053
|
var curElt = this.parseTemplateElement({isTagged: isTagged});
|
|
2537
3054
|
node.quasis = [curElt];
|
|
2538
3055
|
while (!curElt.tail) {
|
|
2539
|
-
if (this.type === types.eof) { this.raise(this.pos, "Unterminated template literal"); }
|
|
2540
|
-
this.expect(types.dollarBraceL);
|
|
3056
|
+
if (this.type === types$1.eof) { this.raise(this.pos, "Unterminated template literal"); }
|
|
3057
|
+
this.expect(types$1.dollarBraceL);
|
|
2541
3058
|
node.expressions.push(this.parseExpression());
|
|
2542
|
-
this.expect(types.braceR);
|
|
3059
|
+
this.expect(types$1.braceR);
|
|
2543
3060
|
node.quasis.push(curElt = this.parseTemplateElement({isTagged: isTagged}));
|
|
2544
3061
|
}
|
|
2545
3062
|
this.next();
|
|
2546
3063
|
return this.finishNode(node, "TemplateLiteral")
|
|
2547
3064
|
};
|
|
2548
3065
|
|
|
2549
|
-
pp$
|
|
3066
|
+
pp$5.isAsyncProp = function(prop) {
|
|
2550
3067
|
return !prop.computed && prop.key.type === "Identifier" && prop.key.name === "async" &&
|
|
2551
|
-
(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)) &&
|
|
3068
|
+
(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)) &&
|
|
2552
3069
|
!lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
|
2553
3070
|
};
|
|
2554
3071
|
|
|
2555
3072
|
// Parse an object literal or binding pattern.
|
|
2556
3073
|
|
|
2557
|
-
pp$
|
|
3074
|
+
pp$5.parseObj = function(isPattern, refDestructuringErrors) {
|
|
2558
3075
|
var node = this.startNode(), first = true, propHash = {};
|
|
2559
3076
|
node.properties = [];
|
|
2560
3077
|
this.next();
|
|
2561
|
-
while (!this.eat(types.braceR)) {
|
|
3078
|
+
while (!this.eat(types$1.braceR)) {
|
|
2562
3079
|
if (!first) {
|
|
2563
|
-
this.expect(types.comma);
|
|
2564
|
-
if (this.options.ecmaVersion >= 5 && this.afterTrailingComma(types.braceR)) { break }
|
|
3080
|
+
this.expect(types$1.comma);
|
|
3081
|
+
if (this.options.ecmaVersion >= 5 && this.afterTrailingComma(types$1.braceR)) { break }
|
|
2565
3082
|
} else { first = false; }
|
|
2566
3083
|
|
|
2567
3084
|
var prop = this.parseProperty(isPattern, refDestructuringErrors);
|
|
@@ -2571,29 +3088,20 @@
|
|
|
2571
3088
|
return this.finishNode(node, isPattern ? "ObjectPattern" : "ObjectExpression")
|
|
2572
3089
|
};
|
|
2573
3090
|
|
|
2574
|
-
pp$
|
|
3091
|
+
pp$5.parseProperty = function(isPattern, refDestructuringErrors) {
|
|
2575
3092
|
var prop = this.startNode(), isGenerator, isAsync, startPos, startLoc;
|
|
2576
|
-
if (this.options.ecmaVersion >= 9 && this.eat(types.ellipsis)) {
|
|
3093
|
+
if (this.options.ecmaVersion >= 9 && this.eat(types$1.ellipsis)) {
|
|
2577
3094
|
if (isPattern) {
|
|
2578
3095
|
prop.argument = this.parseIdent(false);
|
|
2579
|
-
if (this.type === types.comma) {
|
|
3096
|
+
if (this.type === types$1.comma) {
|
|
2580
3097
|
this.raise(this.start, "Comma is not permitted after the rest element");
|
|
2581
3098
|
}
|
|
2582
3099
|
return this.finishNode(prop, "RestElement")
|
|
2583
3100
|
}
|
|
2584
|
-
// To disallow parenthesized identifier via `this.toAssignable()`.
|
|
2585
|
-
if (this.type === types.parenL && refDestructuringErrors) {
|
|
2586
|
-
if (refDestructuringErrors.parenthesizedAssign < 0) {
|
|
2587
|
-
refDestructuringErrors.parenthesizedAssign = this.start;
|
|
2588
|
-
}
|
|
2589
|
-
if (refDestructuringErrors.parenthesizedBind < 0) {
|
|
2590
|
-
refDestructuringErrors.parenthesizedBind = this.start;
|
|
2591
|
-
}
|
|
2592
|
-
}
|
|
2593
3101
|
// Parse argument.
|
|
2594
3102
|
prop.argument = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
2595
3103
|
// To disallow trailing comma via `this.toAssignable()`.
|
|
2596
|
-
if (this.type === types.comma && refDestructuringErrors && refDestructuringErrors.trailingComma < 0) {
|
|
3104
|
+
if (this.type === types$1.comma && refDestructuringErrors && refDestructuringErrors.trailingComma < 0) {
|
|
2597
3105
|
refDestructuringErrors.trailingComma = this.start;
|
|
2598
3106
|
}
|
|
2599
3107
|
// Finish
|
|
@@ -2607,13 +3115,13 @@
|
|
|
2607
3115
|
startLoc = this.startLoc;
|
|
2608
3116
|
}
|
|
2609
3117
|
if (!isPattern)
|
|
2610
|
-
{ isGenerator = this.eat(types.star); }
|
|
3118
|
+
{ isGenerator = this.eat(types$1.star); }
|
|
2611
3119
|
}
|
|
2612
3120
|
var containsEsc = this.containsEsc;
|
|
2613
3121
|
this.parsePropertyName(prop);
|
|
2614
3122
|
if (!isPattern && !containsEsc && this.options.ecmaVersion >= 8 && !isGenerator && this.isAsyncProp(prop)) {
|
|
2615
3123
|
isAsync = true;
|
|
2616
|
-
isGenerator = this.options.ecmaVersion >= 9 && this.eat(types.star);
|
|
3124
|
+
isGenerator = this.options.ecmaVersion >= 9 && this.eat(types$1.star);
|
|
2617
3125
|
this.parsePropertyName(prop, refDestructuringErrors);
|
|
2618
3126
|
} else {
|
|
2619
3127
|
isAsync = false;
|
|
@@ -2622,14 +3130,14 @@
|
|
|
2622
3130
|
return this.finishNode(prop, "Property")
|
|
2623
3131
|
};
|
|
2624
3132
|
|
|
2625
|
-
pp$
|
|
2626
|
-
if ((isGenerator || isAsync) && this.type === types.colon)
|
|
3133
|
+
pp$5.parsePropertyValue = function(prop, isPattern, isGenerator, isAsync, startPos, startLoc, refDestructuringErrors, containsEsc) {
|
|
3134
|
+
if ((isGenerator || isAsync) && this.type === types$1.colon)
|
|
2627
3135
|
{ this.unexpected(); }
|
|
2628
3136
|
|
|
2629
|
-
if (this.eat(types.colon)) {
|
|
3137
|
+
if (this.eat(types$1.colon)) {
|
|
2630
3138
|
prop.value = isPattern ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(false, refDestructuringErrors);
|
|
2631
3139
|
prop.kind = "init";
|
|
2632
|
-
} else if (this.options.ecmaVersion >= 6 && this.type === types.parenL) {
|
|
3140
|
+
} else if (this.options.ecmaVersion >= 6 && this.type === types$1.parenL) {
|
|
2633
3141
|
if (isPattern) { this.unexpected(); }
|
|
2634
3142
|
prop.kind = "init";
|
|
2635
3143
|
prop.method = true;
|
|
@@ -2637,7 +3145,7 @@
|
|
|
2637
3145
|
} else if (!isPattern && !containsEsc &&
|
|
2638
3146
|
this.options.ecmaVersion >= 5 && !prop.computed && prop.key.type === "Identifier" &&
|
|
2639
3147
|
(prop.key.name === "get" || prop.key.name === "set") &&
|
|
2640
|
-
(this.type !== types.comma && this.type !== types.braceR && this.type !== types.eq)) {
|
|
3148
|
+
(this.type !== types$1.comma && this.type !== types$1.braceR && this.type !== types$1.eq)) {
|
|
2641
3149
|
if (isGenerator || isAsync) { this.unexpected(); }
|
|
2642
3150
|
prop.kind = prop.key.name;
|
|
2643
3151
|
this.parsePropertyName(prop);
|
|
@@ -2660,35 +3168,35 @@
|
|
|
2660
3168
|
{ this.awaitIdentPos = startPos; }
|
|
2661
3169
|
prop.kind = "init";
|
|
2662
3170
|
if (isPattern) {
|
|
2663
|
-
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key);
|
|
2664
|
-
} else if (this.type === types.eq && refDestructuringErrors) {
|
|
3171
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, this.copyNode(prop.key));
|
|
3172
|
+
} else if (this.type === types$1.eq && refDestructuringErrors) {
|
|
2665
3173
|
if (refDestructuringErrors.shorthandAssign < 0)
|
|
2666
3174
|
{ refDestructuringErrors.shorthandAssign = this.start; }
|
|
2667
|
-
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key);
|
|
3175
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, this.copyNode(prop.key));
|
|
2668
3176
|
} else {
|
|
2669
|
-
prop.value = prop.key;
|
|
3177
|
+
prop.value = this.copyNode(prop.key);
|
|
2670
3178
|
}
|
|
2671
3179
|
prop.shorthand = true;
|
|
2672
3180
|
} else { this.unexpected(); }
|
|
2673
3181
|
};
|
|
2674
3182
|
|
|
2675
|
-
pp$
|
|
3183
|
+
pp$5.parsePropertyName = function(prop) {
|
|
2676
3184
|
if (this.options.ecmaVersion >= 6) {
|
|
2677
|
-
if (this.eat(types.bracketL)) {
|
|
3185
|
+
if (this.eat(types$1.bracketL)) {
|
|
2678
3186
|
prop.computed = true;
|
|
2679
3187
|
prop.key = this.parseMaybeAssign();
|
|
2680
|
-
this.expect(types.bracketR);
|
|
3188
|
+
this.expect(types$1.bracketR);
|
|
2681
3189
|
return prop.key
|
|
2682
3190
|
} else {
|
|
2683
3191
|
prop.computed = false;
|
|
2684
3192
|
}
|
|
2685
3193
|
}
|
|
2686
|
-
return prop.key = this.type === types.num || this.type === types.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never")
|
|
3194
|
+
return prop.key = this.type === types$1.num || this.type === types$1.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never")
|
|
2687
3195
|
};
|
|
2688
3196
|
|
|
2689
3197
|
// Initialize empty function node.
|
|
2690
3198
|
|
|
2691
|
-
pp$
|
|
3199
|
+
pp$5.initFunction = function(node) {
|
|
2692
3200
|
node.id = null;
|
|
2693
3201
|
if (this.options.ecmaVersion >= 6) { node.generator = node.expression = false; }
|
|
2694
3202
|
if (this.options.ecmaVersion >= 8) { node.async = false; }
|
|
@@ -2696,7 +3204,7 @@
|
|
|
2696
3204
|
|
|
2697
3205
|
// Parse object or class method.
|
|
2698
3206
|
|
|
2699
|
-
pp$
|
|
3207
|
+
pp$5.parseMethod = function(isGenerator, isAsync, allowDirectSuper) {
|
|
2700
3208
|
var node = this.startNode(), oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2701
3209
|
|
|
2702
3210
|
this.initFunction(node);
|
|
@@ -2710,10 +3218,10 @@
|
|
|
2710
3218
|
this.awaitIdentPos = 0;
|
|
2711
3219
|
this.enterScope(functionFlags(isAsync, node.generator) | SCOPE_SUPER | (allowDirectSuper ? SCOPE_DIRECT_SUPER : 0));
|
|
2712
3220
|
|
|
2713
|
-
this.expect(types.parenL);
|
|
2714
|
-
node.params = this.parseBindingList(types.parenR, false, this.options.ecmaVersion >= 8);
|
|
3221
|
+
this.expect(types$1.parenL);
|
|
3222
|
+
node.params = this.parseBindingList(types$1.parenR, false, this.options.ecmaVersion >= 8);
|
|
2715
3223
|
this.checkYieldAwaitInDefaultParams();
|
|
2716
|
-
this.parseFunctionBody(node, false, true);
|
|
3224
|
+
this.parseFunctionBody(node, false, true, false);
|
|
2717
3225
|
|
|
2718
3226
|
this.yieldPos = oldYieldPos;
|
|
2719
3227
|
this.awaitPos = oldAwaitPos;
|
|
@@ -2723,7 +3231,7 @@
|
|
|
2723
3231
|
|
|
2724
3232
|
// Parse arrow function expression with given parameters.
|
|
2725
3233
|
|
|
2726
|
-
pp$
|
|
3234
|
+
pp$5.parseArrowExpression = function(node, params, isAsync, forInit) {
|
|
2727
3235
|
var oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, oldAwaitIdentPos = this.awaitIdentPos;
|
|
2728
3236
|
|
|
2729
3237
|
this.enterScope(functionFlags(isAsync, false) | SCOPE_ARROW);
|
|
@@ -2735,7 +3243,7 @@
|
|
|
2735
3243
|
this.awaitIdentPos = 0;
|
|
2736
3244
|
|
|
2737
3245
|
node.params = this.toAssignableList(params, true);
|
|
2738
|
-
this.parseFunctionBody(node, true, false);
|
|
3246
|
+
this.parseFunctionBody(node, true, false, forInit);
|
|
2739
3247
|
|
|
2740
3248
|
this.yieldPos = oldYieldPos;
|
|
2741
3249
|
this.awaitPos = oldAwaitPos;
|
|
@@ -2745,12 +3253,12 @@
|
|
|
2745
3253
|
|
|
2746
3254
|
// Parse function body and check parameters.
|
|
2747
3255
|
|
|
2748
|
-
pp$
|
|
2749
|
-
var isExpression = isArrowFunction && this.type !== types.braceL;
|
|
3256
|
+
pp$5.parseFunctionBody = function(node, isArrowFunction, isMethod, forInit) {
|
|
3257
|
+
var isExpression = isArrowFunction && this.type !== types$1.braceL;
|
|
2750
3258
|
var oldStrict = this.strict, useStrict = false;
|
|
2751
3259
|
|
|
2752
3260
|
if (isExpression) {
|
|
2753
|
-
node.body = this.parseMaybeAssign();
|
|
3261
|
+
node.body = this.parseMaybeAssign(forInit);
|
|
2754
3262
|
node.expression = true;
|
|
2755
3263
|
this.checkParams(node, false);
|
|
2756
3264
|
} else {
|
|
@@ -2773,7 +3281,7 @@
|
|
|
2773
3281
|
// if a let/const declaration in the function clashes with one of the params.
|
|
2774
3282
|
this.checkParams(node, !oldStrict && !useStrict && !isArrowFunction && !isMethod && this.isSimpleParamList(node.params));
|
|
2775
3283
|
// Ensure the function name isn't a forbidden identifier in strict mode, e.g. 'eval'
|
|
2776
|
-
if (this.strict && node.id) { this.
|
|
3284
|
+
if (this.strict && node.id) { this.checkLValSimple(node.id, BIND_OUTSIDE); }
|
|
2777
3285
|
node.body = this.parseBlock(false, undefined, useStrict && !oldStrict);
|
|
2778
3286
|
node.expression = false;
|
|
2779
3287
|
this.adaptDirectivePrologue(node.body.body);
|
|
@@ -2782,7 +3290,7 @@
|
|
|
2782
3290
|
this.exitScope();
|
|
2783
3291
|
};
|
|
2784
3292
|
|
|
2785
|
-
pp$
|
|
3293
|
+
pp$5.isSimpleParamList = function(params) {
|
|
2786
3294
|
for (var i = 0, list = params; i < list.length; i += 1)
|
|
2787
3295
|
{
|
|
2788
3296
|
var param = list[i];
|
|
@@ -2795,13 +3303,13 @@
|
|
|
2795
3303
|
// Checks function params for various disallowed patterns such as using "eval"
|
|
2796
3304
|
// or "arguments" and duplicate parameters.
|
|
2797
3305
|
|
|
2798
|
-
pp$
|
|
2799
|
-
var nameHash =
|
|
3306
|
+
pp$5.checkParams = function(node, allowDuplicates) {
|
|
3307
|
+
var nameHash = Object.create(null);
|
|
2800
3308
|
for (var i = 0, list = node.params; i < list.length; i += 1)
|
|
2801
3309
|
{
|
|
2802
3310
|
var param = list[i];
|
|
2803
3311
|
|
|
2804
|
-
this.
|
|
3312
|
+
this.checkLValInnerPattern(param, BIND_VAR, allowDuplicates ? null : nameHash);
|
|
2805
3313
|
}
|
|
2806
3314
|
};
|
|
2807
3315
|
|
|
@@ -2811,20 +3319,20 @@
|
|
|
2811
3319
|
// nothing in between them to be parsed as `null` (which is needed
|
|
2812
3320
|
// for array literals).
|
|
2813
3321
|
|
|
2814
|
-
pp$
|
|
3322
|
+
pp$5.parseExprList = function(close, allowTrailingComma, allowEmpty, refDestructuringErrors) {
|
|
2815
3323
|
var elts = [], first = true;
|
|
2816
3324
|
while (!this.eat(close)) {
|
|
2817
3325
|
if (!first) {
|
|
2818
|
-
this.expect(types.comma);
|
|
3326
|
+
this.expect(types$1.comma);
|
|
2819
3327
|
if (allowTrailingComma && this.afterTrailingComma(close)) { break }
|
|
2820
3328
|
} else { first = false; }
|
|
2821
3329
|
|
|
2822
3330
|
var elt = (void 0);
|
|
2823
|
-
if (allowEmpty && this.type === types.comma)
|
|
3331
|
+
if (allowEmpty && this.type === types$1.comma)
|
|
2824
3332
|
{ elt = null; }
|
|
2825
|
-
else if (this.type === types.ellipsis) {
|
|
3333
|
+
else if (this.type === types$1.ellipsis) {
|
|
2826
3334
|
elt = this.parseSpread(refDestructuringErrors);
|
|
2827
|
-
if (refDestructuringErrors && this.type === types.comma && refDestructuringErrors.trailingComma < 0)
|
|
3335
|
+
if (refDestructuringErrors && this.type === types$1.comma && refDestructuringErrors.trailingComma < 0)
|
|
2828
3336
|
{ refDestructuringErrors.trailingComma = this.start; }
|
|
2829
3337
|
} else {
|
|
2830
3338
|
elt = this.parseMaybeAssign(false, refDestructuringErrors);
|
|
@@ -2834,7 +3342,7 @@
|
|
|
2834
3342
|
return elts
|
|
2835
3343
|
};
|
|
2836
3344
|
|
|
2837
|
-
pp$
|
|
3345
|
+
pp$5.checkUnreserved = function(ref) {
|
|
2838
3346
|
var start = ref.start;
|
|
2839
3347
|
var end = ref.end;
|
|
2840
3348
|
var name = ref.name;
|
|
@@ -2843,6 +3351,10 @@
|
|
|
2843
3351
|
{ this.raiseRecoverable(start, "Cannot use 'yield' as identifier inside a generator"); }
|
|
2844
3352
|
if (this.inAsync && name === "await")
|
|
2845
3353
|
{ this.raiseRecoverable(start, "Cannot use 'await' as identifier inside an async function"); }
|
|
3354
|
+
if (this.currentThisScope().inClassFieldInit && name === "arguments")
|
|
3355
|
+
{ this.raiseRecoverable(start, "Cannot use 'arguments' in class field initializer"); }
|
|
3356
|
+
if (this.inClassStaticBlock && (name === "arguments" || name === "await"))
|
|
3357
|
+
{ this.raise(start, ("Cannot use " + name + " in class static initialization block")); }
|
|
2846
3358
|
if (this.keywords.test(name))
|
|
2847
3359
|
{ this.raise(start, ("Unexpected keyword '" + name + "'")); }
|
|
2848
3360
|
if (this.options.ecmaVersion < 6 &&
|
|
@@ -2859,9 +3371,9 @@
|
|
|
2859
3371
|
// when parsing properties), it will also convert keywords into
|
|
2860
3372
|
// identifiers.
|
|
2861
3373
|
|
|
2862
|
-
pp$
|
|
3374
|
+
pp$5.parseIdent = function(liberal, isBinding) {
|
|
2863
3375
|
var node = this.startNode();
|
|
2864
|
-
if (this.type === types.name) {
|
|
3376
|
+
if (this.type === types$1.name) {
|
|
2865
3377
|
node.name = this.value;
|
|
2866
3378
|
} else if (this.type.keyword) {
|
|
2867
3379
|
node.name = this.type.keyword;
|
|
@@ -2887,29 +3399,49 @@
|
|
|
2887
3399
|
return node
|
|
2888
3400
|
};
|
|
2889
3401
|
|
|
3402
|
+
pp$5.parsePrivateIdent = function() {
|
|
3403
|
+
var node = this.startNode();
|
|
3404
|
+
if (this.type === types$1.privateId) {
|
|
3405
|
+
node.name = this.value;
|
|
3406
|
+
} else {
|
|
3407
|
+
this.unexpected();
|
|
3408
|
+
}
|
|
3409
|
+
this.next();
|
|
3410
|
+
this.finishNode(node, "PrivateIdentifier");
|
|
3411
|
+
|
|
3412
|
+
// For validating existence
|
|
3413
|
+
if (this.privateNameStack.length === 0) {
|
|
3414
|
+
this.raise(node.start, ("Private field '#" + (node.name) + "' must be declared in an enclosing class"));
|
|
3415
|
+
} else {
|
|
3416
|
+
this.privateNameStack[this.privateNameStack.length - 1].used.push(node);
|
|
3417
|
+
}
|
|
3418
|
+
|
|
3419
|
+
return node
|
|
3420
|
+
};
|
|
3421
|
+
|
|
2890
3422
|
// Parses yield expression inside generator.
|
|
2891
3423
|
|
|
2892
|
-
pp$
|
|
3424
|
+
pp$5.parseYield = function(forInit) {
|
|
2893
3425
|
if (!this.yieldPos) { this.yieldPos = this.start; }
|
|
2894
3426
|
|
|
2895
3427
|
var node = this.startNode();
|
|
2896
3428
|
this.next();
|
|
2897
|
-
if (this.type === types.semi || this.canInsertSemicolon() || (this.type !== types.star && !this.type.startsExpr)) {
|
|
3429
|
+
if (this.type === types$1.semi || this.canInsertSemicolon() || (this.type !== types$1.star && !this.type.startsExpr)) {
|
|
2898
3430
|
node.delegate = false;
|
|
2899
3431
|
node.argument = null;
|
|
2900
3432
|
} else {
|
|
2901
|
-
node.delegate = this.eat(types.star);
|
|
2902
|
-
node.argument = this.parseMaybeAssign(
|
|
3433
|
+
node.delegate = this.eat(types$1.star);
|
|
3434
|
+
node.argument = this.parseMaybeAssign(forInit);
|
|
2903
3435
|
}
|
|
2904
3436
|
return this.finishNode(node, "YieldExpression")
|
|
2905
3437
|
};
|
|
2906
3438
|
|
|
2907
|
-
pp$
|
|
3439
|
+
pp$5.parseAwait = function(forInit) {
|
|
2908
3440
|
if (!this.awaitPos) { this.awaitPos = this.start; }
|
|
2909
3441
|
|
|
2910
3442
|
var node = this.startNode();
|
|
2911
3443
|
this.next();
|
|
2912
|
-
node.argument = this.parseMaybeUnary(null, false);
|
|
3444
|
+
node.argument = this.parseMaybeUnary(null, true, false, forInit);
|
|
2913
3445
|
return this.finishNode(node, "AwaitExpression")
|
|
2914
3446
|
};
|
|
2915
3447
|
|
|
@@ -2937,7 +3469,7 @@
|
|
|
2937
3469
|
}
|
|
2938
3470
|
};
|
|
2939
3471
|
|
|
2940
|
-
var pp$
|
|
3472
|
+
var pp$3 = Parser.prototype;
|
|
2941
3473
|
|
|
2942
3474
|
var Scope = function Scope(flags) {
|
|
2943
3475
|
this.flags = flags;
|
|
@@ -2947,26 +3479,28 @@
|
|
|
2947
3479
|
this.lexical = [];
|
|
2948
3480
|
// A list of lexically-declared FunctionDeclaration names in the current lexical scope
|
|
2949
3481
|
this.functions = [];
|
|
3482
|
+
// A switch to disallow the identifier reference 'arguments'
|
|
3483
|
+
this.inClassFieldInit = false;
|
|
2950
3484
|
};
|
|
2951
3485
|
|
|
2952
3486
|
// The functions in this module keep track of declared variables in the current scope in order to detect duplicate variable names.
|
|
2953
3487
|
|
|
2954
|
-
pp$
|
|
3488
|
+
pp$3.enterScope = function(flags) {
|
|
2955
3489
|
this.scopeStack.push(new Scope(flags));
|
|
2956
3490
|
};
|
|
2957
3491
|
|
|
2958
|
-
pp$
|
|
3492
|
+
pp$3.exitScope = function() {
|
|
2959
3493
|
this.scopeStack.pop();
|
|
2960
3494
|
};
|
|
2961
3495
|
|
|
2962
3496
|
// The spec says:
|
|
2963
3497
|
// > At the top level of a function, or script, function declarations are
|
|
2964
3498
|
// > treated like var declarations rather than like lexical declarations.
|
|
2965
|
-
pp$
|
|
3499
|
+
pp$3.treatFunctionsAsVarInScope = function(scope) {
|
|
2966
3500
|
return (scope.flags & SCOPE_FUNCTION) || !this.inModule && (scope.flags & SCOPE_TOP)
|
|
2967
3501
|
};
|
|
2968
3502
|
|
|
2969
|
-
pp$
|
|
3503
|
+
pp$3.declareName = function(name, bindingType, pos) {
|
|
2970
3504
|
var redeclared = false;
|
|
2971
3505
|
if (bindingType === BIND_LEXICAL) {
|
|
2972
3506
|
var scope = this.currentScope();
|
|
@@ -3001,7 +3535,7 @@
|
|
|
3001
3535
|
if (redeclared) { this.raiseRecoverable(pos, ("Identifier '" + name + "' has already been declared")); }
|
|
3002
3536
|
};
|
|
3003
3537
|
|
|
3004
|
-
pp$
|
|
3538
|
+
pp$3.checkLocalExport = function(id) {
|
|
3005
3539
|
// scope.functions must be empty as Module code is always strict.
|
|
3006
3540
|
if (this.scopeStack[0].lexical.indexOf(id.name) === -1 &&
|
|
3007
3541
|
this.scopeStack[0].var.indexOf(id.name) === -1) {
|
|
@@ -3009,11 +3543,11 @@
|
|
|
3009
3543
|
}
|
|
3010
3544
|
};
|
|
3011
3545
|
|
|
3012
|
-
pp$
|
|
3546
|
+
pp$3.currentScope = function() {
|
|
3013
3547
|
return this.scopeStack[this.scopeStack.length - 1]
|
|
3014
3548
|
};
|
|
3015
3549
|
|
|
3016
|
-
pp$
|
|
3550
|
+
pp$3.currentVarScope = function() {
|
|
3017
3551
|
for (var i = this.scopeStack.length - 1;; i--) {
|
|
3018
3552
|
var scope = this.scopeStack[i];
|
|
3019
3553
|
if (scope.flags & SCOPE_VAR) { return scope }
|
|
@@ -3021,7 +3555,7 @@
|
|
|
3021
3555
|
};
|
|
3022
3556
|
|
|
3023
3557
|
// Could be useful for `this`, `new.target`, `super()`, `super.property`, and `super[property]`.
|
|
3024
|
-
pp$
|
|
3558
|
+
pp$3.currentThisScope = function() {
|
|
3025
3559
|
for (var i = this.scopeStack.length - 1;; i--) {
|
|
3026
3560
|
var scope = this.scopeStack[i];
|
|
3027
3561
|
if (scope.flags & SCOPE_VAR && !(scope.flags & SCOPE_ARROW)) { return scope }
|
|
@@ -3042,13 +3576,13 @@
|
|
|
3042
3576
|
|
|
3043
3577
|
// Start an AST node, attaching a start offset.
|
|
3044
3578
|
|
|
3045
|
-
var pp$
|
|
3579
|
+
var pp$2 = Parser.prototype;
|
|
3046
3580
|
|
|
3047
|
-
pp$
|
|
3581
|
+
pp$2.startNode = function() {
|
|
3048
3582
|
return new Node(this, this.start, this.startLoc)
|
|
3049
3583
|
};
|
|
3050
3584
|
|
|
3051
|
-
pp$
|
|
3585
|
+
pp$2.startNodeAt = function(pos, loc) {
|
|
3052
3586
|
return new Node(this, pos, loc)
|
|
3053
3587
|
};
|
|
3054
3588
|
|
|
@@ -3064,156 +3598,20 @@
|
|
|
3064
3598
|
return node
|
|
3065
3599
|
}
|
|
3066
3600
|
|
|
3067
|
-
pp$
|
|
3601
|
+
pp$2.finishNode = function(node, type) {
|
|
3068
3602
|
return finishNodeAt.call(this, node, type, this.lastTokEnd, this.lastTokEndLoc)
|
|
3069
3603
|
};
|
|
3070
3604
|
|
|
3071
3605
|
// Finish node at given position
|
|
3072
3606
|
|
|
3073
|
-
pp$
|
|
3607
|
+
pp$2.finishNodeAt = function(node, type, pos, loc) {
|
|
3074
3608
|
return finishNodeAt.call(this, node, type, pos, loc)
|
|
3075
3609
|
};
|
|
3076
3610
|
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
this.isExpr = !!isExpr;
|
|
3082
|
-
this.preserveSpace = !!preserveSpace;
|
|
3083
|
-
this.override = override;
|
|
3084
|
-
this.generator = !!generator;
|
|
3085
|
-
};
|
|
3086
|
-
|
|
3087
|
-
var types$1 = {
|
|
3088
|
-
b_stat: new TokContext("{", false),
|
|
3089
|
-
b_expr: new TokContext("{", true),
|
|
3090
|
-
b_tmpl: new TokContext("${", false),
|
|
3091
|
-
p_stat: new TokContext("(", false),
|
|
3092
|
-
p_expr: new TokContext("(", true),
|
|
3093
|
-
q_tmpl: new TokContext("`", true, true, function (p) { return p.tryReadTemplateToken(); }),
|
|
3094
|
-
f_stat: new TokContext("function", false),
|
|
3095
|
-
f_expr: new TokContext("function", true),
|
|
3096
|
-
f_expr_gen: new TokContext("function", true, false, null, true),
|
|
3097
|
-
f_gen: new TokContext("function", false, false, null, true)
|
|
3098
|
-
};
|
|
3099
|
-
|
|
3100
|
-
var pp$7 = Parser.prototype;
|
|
3101
|
-
|
|
3102
|
-
pp$7.initialContext = function() {
|
|
3103
|
-
return [types$1.b_stat]
|
|
3104
|
-
};
|
|
3105
|
-
|
|
3106
|
-
pp$7.braceIsBlock = function(prevType) {
|
|
3107
|
-
var parent = this.curContext();
|
|
3108
|
-
if (parent === types$1.f_expr || parent === types$1.f_stat)
|
|
3109
|
-
{ return true }
|
|
3110
|
-
if (prevType === types.colon && (parent === types$1.b_stat || parent === types$1.b_expr))
|
|
3111
|
-
{ return !parent.isExpr }
|
|
3112
|
-
|
|
3113
|
-
// The check for `tt.name && exprAllowed` detects whether we are
|
|
3114
|
-
// after a `yield` or `of` construct. See the `updateContext` for
|
|
3115
|
-
// `tt.name`.
|
|
3116
|
-
if (prevType === types._return || prevType === types.name && this.exprAllowed)
|
|
3117
|
-
{ return lineBreak.test(this.input.slice(this.lastTokEnd, this.start)) }
|
|
3118
|
-
if (prevType === types._else || prevType === types.semi || prevType === types.eof || prevType === types.parenR || prevType === types.arrow)
|
|
3119
|
-
{ return true }
|
|
3120
|
-
if (prevType === types.braceL)
|
|
3121
|
-
{ return parent === types$1.b_stat }
|
|
3122
|
-
if (prevType === types._var || prevType === types._const || prevType === types.name)
|
|
3123
|
-
{ return false }
|
|
3124
|
-
return !this.exprAllowed
|
|
3125
|
-
};
|
|
3126
|
-
|
|
3127
|
-
pp$7.inGeneratorContext = function() {
|
|
3128
|
-
for (var i = this.context.length - 1; i >= 1; i--) {
|
|
3129
|
-
var context = this.context[i];
|
|
3130
|
-
if (context.token === "function")
|
|
3131
|
-
{ return context.generator }
|
|
3132
|
-
}
|
|
3133
|
-
return false
|
|
3134
|
-
};
|
|
3135
|
-
|
|
3136
|
-
pp$7.updateContext = function(prevType) {
|
|
3137
|
-
var update, type = this.type;
|
|
3138
|
-
if (type.keyword && prevType === types.dot)
|
|
3139
|
-
{ this.exprAllowed = false; }
|
|
3140
|
-
else if (update = type.updateContext)
|
|
3141
|
-
{ update.call(this, prevType); }
|
|
3142
|
-
else
|
|
3143
|
-
{ this.exprAllowed = type.beforeExpr; }
|
|
3144
|
-
};
|
|
3145
|
-
|
|
3146
|
-
// Token-specific context update code
|
|
3147
|
-
|
|
3148
|
-
types.parenR.updateContext = types.braceR.updateContext = function() {
|
|
3149
|
-
if (this.context.length === 1) {
|
|
3150
|
-
this.exprAllowed = true;
|
|
3151
|
-
return
|
|
3152
|
-
}
|
|
3153
|
-
var out = this.context.pop();
|
|
3154
|
-
if (out === types$1.b_stat && this.curContext().token === "function") {
|
|
3155
|
-
out = this.context.pop();
|
|
3156
|
-
}
|
|
3157
|
-
this.exprAllowed = !out.isExpr;
|
|
3158
|
-
};
|
|
3159
|
-
|
|
3160
|
-
types.braceL.updateContext = function(prevType) {
|
|
3161
|
-
this.context.push(this.braceIsBlock(prevType) ? types$1.b_stat : types$1.b_expr);
|
|
3162
|
-
this.exprAllowed = true;
|
|
3163
|
-
};
|
|
3164
|
-
|
|
3165
|
-
types.dollarBraceL.updateContext = function() {
|
|
3166
|
-
this.context.push(types$1.b_tmpl);
|
|
3167
|
-
this.exprAllowed = true;
|
|
3168
|
-
};
|
|
3169
|
-
|
|
3170
|
-
types.parenL.updateContext = function(prevType) {
|
|
3171
|
-
var statementParens = prevType === types._if || prevType === types._for || prevType === types._with || prevType === types._while;
|
|
3172
|
-
this.context.push(statementParens ? types$1.p_stat : types$1.p_expr);
|
|
3173
|
-
this.exprAllowed = true;
|
|
3174
|
-
};
|
|
3175
|
-
|
|
3176
|
-
types.incDec.updateContext = function() {
|
|
3177
|
-
// tokExprAllowed stays unchanged
|
|
3178
|
-
};
|
|
3179
|
-
|
|
3180
|
-
types._function.updateContext = types._class.updateContext = function(prevType) {
|
|
3181
|
-
if (prevType.beforeExpr && prevType !== types.semi && prevType !== types._else &&
|
|
3182
|
-
!(prevType === types._return && lineBreak.test(this.input.slice(this.lastTokEnd, this.start))) &&
|
|
3183
|
-
!((prevType === types.colon || prevType === types.braceL) && this.curContext() === types$1.b_stat))
|
|
3184
|
-
{ this.context.push(types$1.f_expr); }
|
|
3185
|
-
else
|
|
3186
|
-
{ this.context.push(types$1.f_stat); }
|
|
3187
|
-
this.exprAllowed = false;
|
|
3188
|
-
};
|
|
3189
|
-
|
|
3190
|
-
types.backQuote.updateContext = function() {
|
|
3191
|
-
if (this.curContext() === types$1.q_tmpl)
|
|
3192
|
-
{ this.context.pop(); }
|
|
3193
|
-
else
|
|
3194
|
-
{ this.context.push(types$1.q_tmpl); }
|
|
3195
|
-
this.exprAllowed = false;
|
|
3196
|
-
};
|
|
3197
|
-
|
|
3198
|
-
types.star.updateContext = function(prevType) {
|
|
3199
|
-
if (prevType === types._function) {
|
|
3200
|
-
var index = this.context.length - 1;
|
|
3201
|
-
if (this.context[index] === types$1.f_expr)
|
|
3202
|
-
{ this.context[index] = types$1.f_expr_gen; }
|
|
3203
|
-
else
|
|
3204
|
-
{ this.context[index] = types$1.f_gen; }
|
|
3205
|
-
}
|
|
3206
|
-
this.exprAllowed = true;
|
|
3207
|
-
};
|
|
3208
|
-
|
|
3209
|
-
types.name.updateContext = function(prevType) {
|
|
3210
|
-
var allowed = false;
|
|
3211
|
-
if (this.options.ecmaVersion >= 6 && prevType !== types.dot) {
|
|
3212
|
-
if (this.value === "of" && !this.exprAllowed ||
|
|
3213
|
-
this.value === "yield" && this.inGeneratorContext())
|
|
3214
|
-
{ allowed = true; }
|
|
3215
|
-
}
|
|
3216
|
-
this.exprAllowed = allowed;
|
|
3611
|
+
pp$2.copyNode = function(node) {
|
|
3612
|
+
var newNode = new Node(this, node.start, this.startLoc);
|
|
3613
|
+
for (var prop in node) { newNode[prop] = node[prop]; }
|
|
3614
|
+
return newNode
|
|
3217
3615
|
};
|
|
3218
3616
|
|
|
3219
3617
|
// This file contains Unicode properties extracted from the ECMAScript
|
|
@@ -3224,23 +3622,31 @@
|
|
|
3224
3622
|
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";
|
|
3225
3623
|
var ecma10BinaryProperties = ecma9BinaryProperties + " Extended_Pictographic";
|
|
3226
3624
|
var ecma11BinaryProperties = ecma10BinaryProperties;
|
|
3625
|
+
var ecma12BinaryProperties = ecma11BinaryProperties + " EBase EComp EMod EPres ExtPict";
|
|
3626
|
+
var ecma13BinaryProperties = ecma12BinaryProperties;
|
|
3227
3627
|
var unicodeBinaryProperties = {
|
|
3228
3628
|
9: ecma9BinaryProperties,
|
|
3229
3629
|
10: ecma10BinaryProperties,
|
|
3230
|
-
11: ecma11BinaryProperties
|
|
3630
|
+
11: ecma11BinaryProperties,
|
|
3631
|
+
12: ecma12BinaryProperties,
|
|
3632
|
+
13: ecma13BinaryProperties
|
|
3231
3633
|
};
|
|
3232
3634
|
|
|
3233
3635
|
// #table-unicode-general-category-values
|
|
3234
3636
|
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";
|
|
3235
3637
|
|
|
3236
3638
|
// #table-unicode-script-values
|
|
3237
|
-
var ecma9ScriptValues = "Adlam Adlm Ahom
|
|
3639
|
+
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";
|
|
3238
3640
|
var ecma10ScriptValues = ecma9ScriptValues + " Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd";
|
|
3239
3641
|
var ecma11ScriptValues = ecma10ScriptValues + " Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho";
|
|
3642
|
+
var ecma12ScriptValues = ecma11ScriptValues + " Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi";
|
|
3643
|
+
var ecma13ScriptValues = ecma12ScriptValues + " Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith";
|
|
3240
3644
|
var unicodeScriptValues = {
|
|
3241
3645
|
9: ecma9ScriptValues,
|
|
3242
3646
|
10: ecma10ScriptValues,
|
|
3243
|
-
11: ecma11ScriptValues
|
|
3647
|
+
11: ecma11ScriptValues,
|
|
3648
|
+
12: ecma12ScriptValues,
|
|
3649
|
+
13: ecma13ScriptValues
|
|
3244
3650
|
};
|
|
3245
3651
|
|
|
3246
3652
|
var data = {};
|
|
@@ -3258,16 +3664,19 @@
|
|
|
3258
3664
|
d.nonBinary.sc = d.nonBinary.Script;
|
|
3259
3665
|
d.nonBinary.scx = d.nonBinary.Script_Extensions;
|
|
3260
3666
|
}
|
|
3261
|
-
buildUnicodeData(9);
|
|
3262
|
-
buildUnicodeData(10);
|
|
3263
|
-
buildUnicodeData(11);
|
|
3264
3667
|
|
|
3265
|
-
var
|
|
3668
|
+
for (var i = 0, list = [9, 10, 11, 12, 13]; i < list.length; i += 1) {
|
|
3669
|
+
var ecmaVersion = list[i];
|
|
3670
|
+
|
|
3671
|
+
buildUnicodeData(ecmaVersion);
|
|
3672
|
+
}
|
|
3673
|
+
|
|
3674
|
+
var pp$1 = Parser.prototype;
|
|
3266
3675
|
|
|
3267
3676
|
var RegExpValidationState = function RegExpValidationState(parser) {
|
|
3268
3677
|
this.parser = parser;
|
|
3269
|
-
this.validFlags = "gim" + (parser.options.ecmaVersion >= 6 ? "uy" : "") + (parser.options.ecmaVersion >= 9 ? "s" : "");
|
|
3270
|
-
this.unicodeProperties = data[parser.options.ecmaVersion >=
|
|
3678
|
+
this.validFlags = "gim" + (parser.options.ecmaVersion >= 6 ? "uy" : "") + (parser.options.ecmaVersion >= 9 ? "s" : "") + (parser.options.ecmaVersion >= 13 ? "d" : "");
|
|
3679
|
+
this.unicodeProperties = data[parser.options.ecmaVersion >= 13 ? 13 : parser.options.ecmaVersion];
|
|
3271
3680
|
this.source = "";
|
|
3272
3681
|
this.flags = "";
|
|
3273
3682
|
this.start = 0;
|
|
@@ -3358,19 +3767,13 @@
|
|
|
3358
3767
|
return false
|
|
3359
3768
|
};
|
|
3360
3769
|
|
|
3361
|
-
function codePointToString(ch) {
|
|
3362
|
-
if (ch <= 0xFFFF) { return String.fromCharCode(ch) }
|
|
3363
|
-
ch -= 0x10000;
|
|
3364
|
-
return String.fromCharCode((ch >> 10) + 0xD800, (ch & 0x03FF) + 0xDC00)
|
|
3365
|
-
}
|
|
3366
|
-
|
|
3367
3770
|
/**
|
|
3368
3771
|
* Validate the flags part of a given RegExpLiteral.
|
|
3369
3772
|
*
|
|
3370
3773
|
* @param {RegExpValidationState} state The state to validate RegExp.
|
|
3371
3774
|
* @returns {void}
|
|
3372
3775
|
*/
|
|
3373
|
-
pp$
|
|
3776
|
+
pp$1.validateRegExpFlags = function(state) {
|
|
3374
3777
|
var validFlags = state.validFlags;
|
|
3375
3778
|
var flags = state.flags;
|
|
3376
3779
|
|
|
@@ -3391,7 +3794,7 @@
|
|
|
3391
3794
|
* @param {RegExpValidationState} state The state to validate RegExp.
|
|
3392
3795
|
* @returns {void}
|
|
3393
3796
|
*/
|
|
3394
|
-
pp$
|
|
3797
|
+
pp$1.validateRegExpPattern = function(state) {
|
|
3395
3798
|
this.regexp_pattern(state);
|
|
3396
3799
|
|
|
3397
3800
|
// The goal symbol for the parse is |Pattern[~U, ~N]|. If the result of
|
|
@@ -3406,7 +3809,7 @@
|
|
|
3406
3809
|
};
|
|
3407
3810
|
|
|
3408
3811
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Pattern
|
|
3409
|
-
pp$
|
|
3812
|
+
pp$1.regexp_pattern = function(state) {
|
|
3410
3813
|
state.pos = 0;
|
|
3411
3814
|
state.lastIntValue = 0;
|
|
3412
3815
|
state.lastStringValue = "";
|
|
@@ -3440,7 +3843,7 @@
|
|
|
3440
3843
|
};
|
|
3441
3844
|
|
|
3442
3845
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Disjunction
|
|
3443
|
-
pp$
|
|
3846
|
+
pp$1.regexp_disjunction = function(state) {
|
|
3444
3847
|
this.regexp_alternative(state);
|
|
3445
3848
|
while (state.eat(0x7C /* | */)) {
|
|
3446
3849
|
this.regexp_alternative(state);
|
|
@@ -3456,13 +3859,13 @@
|
|
|
3456
3859
|
};
|
|
3457
3860
|
|
|
3458
3861
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Alternative
|
|
3459
|
-
pp$
|
|
3862
|
+
pp$1.regexp_alternative = function(state) {
|
|
3460
3863
|
while (state.pos < state.source.length && this.regexp_eatTerm(state))
|
|
3461
3864
|
{ }
|
|
3462
3865
|
};
|
|
3463
3866
|
|
|
3464
3867
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-Term
|
|
3465
|
-
pp$
|
|
3868
|
+
pp$1.regexp_eatTerm = function(state) {
|
|
3466
3869
|
if (this.regexp_eatAssertion(state)) {
|
|
3467
3870
|
// Handle `QuantifiableAssertion Quantifier` alternative.
|
|
3468
3871
|
// `state.lastAssertionIsQuantifiable` is true if the last eaten Assertion
|
|
@@ -3485,7 +3888,7 @@
|
|
|
3485
3888
|
};
|
|
3486
3889
|
|
|
3487
3890
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-Assertion
|
|
3488
|
-
pp$
|
|
3891
|
+
pp$1.regexp_eatAssertion = function(state) {
|
|
3489
3892
|
var start = state.pos;
|
|
3490
3893
|
state.lastAssertionIsQuantifiable = false;
|
|
3491
3894
|
|
|
@@ -3523,7 +3926,7 @@
|
|
|
3523
3926
|
};
|
|
3524
3927
|
|
|
3525
3928
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Quantifier
|
|
3526
|
-
pp$
|
|
3929
|
+
pp$1.regexp_eatQuantifier = function(state, noError) {
|
|
3527
3930
|
if ( noError === void 0 ) noError = false;
|
|
3528
3931
|
|
|
3529
3932
|
if (this.regexp_eatQuantifierPrefix(state, noError)) {
|
|
@@ -3534,7 +3937,7 @@
|
|
|
3534
3937
|
};
|
|
3535
3938
|
|
|
3536
3939
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-QuantifierPrefix
|
|
3537
|
-
pp$
|
|
3940
|
+
pp$1.regexp_eatQuantifierPrefix = function(state, noError) {
|
|
3538
3941
|
return (
|
|
3539
3942
|
state.eat(0x2A /* * */) ||
|
|
3540
3943
|
state.eat(0x2B /* + */) ||
|
|
@@ -3542,7 +3945,7 @@
|
|
|
3542
3945
|
this.regexp_eatBracedQuantifier(state, noError)
|
|
3543
3946
|
)
|
|
3544
3947
|
};
|
|
3545
|
-
pp$
|
|
3948
|
+
pp$1.regexp_eatBracedQuantifier = function(state, noError) {
|
|
3546
3949
|
var start = state.pos;
|
|
3547
3950
|
if (state.eat(0x7B /* { */)) {
|
|
3548
3951
|
var min = 0, max = -1;
|
|
@@ -3568,7 +3971,7 @@
|
|
|
3568
3971
|
};
|
|
3569
3972
|
|
|
3570
3973
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Atom
|
|
3571
|
-
pp$
|
|
3974
|
+
pp$1.regexp_eatAtom = function(state) {
|
|
3572
3975
|
return (
|
|
3573
3976
|
this.regexp_eatPatternCharacters(state) ||
|
|
3574
3977
|
state.eat(0x2E /* . */) ||
|
|
@@ -3578,7 +3981,7 @@
|
|
|
3578
3981
|
this.regexp_eatCapturingGroup(state)
|
|
3579
3982
|
)
|
|
3580
3983
|
};
|
|
3581
|
-
pp$
|
|
3984
|
+
pp$1.regexp_eatReverseSolidusAtomEscape = function(state) {
|
|
3582
3985
|
var start = state.pos;
|
|
3583
3986
|
if (state.eat(0x5C /* \ */)) {
|
|
3584
3987
|
if (this.regexp_eatAtomEscape(state)) {
|
|
@@ -3588,7 +3991,7 @@
|
|
|
3588
3991
|
}
|
|
3589
3992
|
return false
|
|
3590
3993
|
};
|
|
3591
|
-
pp$
|
|
3994
|
+
pp$1.regexp_eatUncapturingGroup = function(state) {
|
|
3592
3995
|
var start = state.pos;
|
|
3593
3996
|
if (state.eat(0x28 /* ( */)) {
|
|
3594
3997
|
if (state.eat(0x3F /* ? */) && state.eat(0x3A /* : */)) {
|
|
@@ -3602,7 +4005,7 @@
|
|
|
3602
4005
|
}
|
|
3603
4006
|
return false
|
|
3604
4007
|
};
|
|
3605
|
-
pp$
|
|
4008
|
+
pp$1.regexp_eatCapturingGroup = function(state) {
|
|
3606
4009
|
if (state.eat(0x28 /* ( */)) {
|
|
3607
4010
|
if (this.options.ecmaVersion >= 9) {
|
|
3608
4011
|
this.regexp_groupSpecifier(state);
|
|
@@ -3620,7 +4023,7 @@
|
|
|
3620
4023
|
};
|
|
3621
4024
|
|
|
3622
4025
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ExtendedAtom
|
|
3623
|
-
pp$
|
|
4026
|
+
pp$1.regexp_eatExtendedAtom = function(state) {
|
|
3624
4027
|
return (
|
|
3625
4028
|
state.eat(0x2E /* . */) ||
|
|
3626
4029
|
this.regexp_eatReverseSolidusAtomEscape(state) ||
|
|
@@ -3633,7 +4036,7 @@
|
|
|
3633
4036
|
};
|
|
3634
4037
|
|
|
3635
4038
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-InvalidBracedQuantifier
|
|
3636
|
-
pp$
|
|
4039
|
+
pp$1.regexp_eatInvalidBracedQuantifier = function(state) {
|
|
3637
4040
|
if (this.regexp_eatBracedQuantifier(state, true)) {
|
|
3638
4041
|
state.raise("Nothing to repeat");
|
|
3639
4042
|
}
|
|
@@ -3641,7 +4044,7 @@
|
|
|
3641
4044
|
};
|
|
3642
4045
|
|
|
3643
4046
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-SyntaxCharacter
|
|
3644
|
-
pp$
|
|
4047
|
+
pp$1.regexp_eatSyntaxCharacter = function(state) {
|
|
3645
4048
|
var ch = state.current();
|
|
3646
4049
|
if (isSyntaxCharacter(ch)) {
|
|
3647
4050
|
state.lastIntValue = ch;
|
|
@@ -3663,7 +4066,7 @@
|
|
|
3663
4066
|
|
|
3664
4067
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-PatternCharacter
|
|
3665
4068
|
// But eat eager.
|
|
3666
|
-
pp$
|
|
4069
|
+
pp$1.regexp_eatPatternCharacters = function(state) {
|
|
3667
4070
|
var start = state.pos;
|
|
3668
4071
|
var ch = 0;
|
|
3669
4072
|
while ((ch = state.current()) !== -1 && !isSyntaxCharacter(ch)) {
|
|
@@ -3673,7 +4076,7 @@
|
|
|
3673
4076
|
};
|
|
3674
4077
|
|
|
3675
4078
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ExtendedPatternCharacter
|
|
3676
|
-
pp$
|
|
4079
|
+
pp$1.regexp_eatExtendedPatternCharacter = function(state) {
|
|
3677
4080
|
var ch = state.current();
|
|
3678
4081
|
if (
|
|
3679
4082
|
ch !== -1 &&
|
|
@@ -3694,7 +4097,7 @@
|
|
|
3694
4097
|
// GroupSpecifier ::
|
|
3695
4098
|
// [empty]
|
|
3696
4099
|
// `?` GroupName
|
|
3697
|
-
pp$
|
|
4100
|
+
pp$1.regexp_groupSpecifier = function(state) {
|
|
3698
4101
|
if (state.eat(0x3F /* ? */)) {
|
|
3699
4102
|
if (this.regexp_eatGroupName(state)) {
|
|
3700
4103
|
if (state.groupNames.indexOf(state.lastStringValue) !== -1) {
|
|
@@ -3710,7 +4113,7 @@
|
|
|
3710
4113
|
// GroupName ::
|
|
3711
4114
|
// `<` RegExpIdentifierName `>`
|
|
3712
4115
|
// Note: this updates `state.lastStringValue` property with the eaten name.
|
|
3713
|
-
pp$
|
|
4116
|
+
pp$1.regexp_eatGroupName = function(state) {
|
|
3714
4117
|
state.lastStringValue = "";
|
|
3715
4118
|
if (state.eat(0x3C /* < */)) {
|
|
3716
4119
|
if (this.regexp_eatRegExpIdentifierName(state) && state.eat(0x3E /* > */)) {
|
|
@@ -3725,7 +4128,7 @@
|
|
|
3725
4128
|
// RegExpIdentifierStart
|
|
3726
4129
|
// RegExpIdentifierName RegExpIdentifierPart
|
|
3727
4130
|
// Note: this updates `state.lastStringValue` property with the eaten name.
|
|
3728
|
-
pp$
|
|
4131
|
+
pp$1.regexp_eatRegExpIdentifierName = function(state) {
|
|
3729
4132
|
state.lastStringValue = "";
|
|
3730
4133
|
if (this.regexp_eatRegExpIdentifierStart(state)) {
|
|
3731
4134
|
state.lastStringValue += codePointToString(state.lastIntValue);
|
|
@@ -3742,7 +4145,7 @@
|
|
|
3742
4145
|
// `$`
|
|
3743
4146
|
// `_`
|
|
3744
4147
|
// `\` RegExpUnicodeEscapeSequence[+U]
|
|
3745
|
-
pp$
|
|
4148
|
+
pp$1.regexp_eatRegExpIdentifierStart = function(state) {
|
|
3746
4149
|
var start = state.pos;
|
|
3747
4150
|
var forceU = this.options.ecmaVersion >= 11;
|
|
3748
4151
|
var ch = state.current(forceU);
|
|
@@ -3770,7 +4173,7 @@
|
|
|
3770
4173
|
// `\` RegExpUnicodeEscapeSequence[+U]
|
|
3771
4174
|
// <ZWNJ>
|
|
3772
4175
|
// <ZWJ>
|
|
3773
|
-
pp$
|
|
4176
|
+
pp$1.regexp_eatRegExpIdentifierPart = function(state) {
|
|
3774
4177
|
var start = state.pos;
|
|
3775
4178
|
var forceU = this.options.ecmaVersion >= 11;
|
|
3776
4179
|
var ch = state.current(forceU);
|
|
@@ -3792,7 +4195,7 @@
|
|
|
3792
4195
|
}
|
|
3793
4196
|
|
|
3794
4197
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-AtomEscape
|
|
3795
|
-
pp$
|
|
4198
|
+
pp$1.regexp_eatAtomEscape = function(state) {
|
|
3796
4199
|
if (
|
|
3797
4200
|
this.regexp_eatBackReference(state) ||
|
|
3798
4201
|
this.regexp_eatCharacterClassEscape(state) ||
|
|
@@ -3810,7 +4213,7 @@
|
|
|
3810
4213
|
}
|
|
3811
4214
|
return false
|
|
3812
4215
|
};
|
|
3813
|
-
pp$
|
|
4216
|
+
pp$1.regexp_eatBackReference = function(state) {
|
|
3814
4217
|
var start = state.pos;
|
|
3815
4218
|
if (this.regexp_eatDecimalEscape(state)) {
|
|
3816
4219
|
var n = state.lastIntValue;
|
|
@@ -3828,7 +4231,7 @@
|
|
|
3828
4231
|
}
|
|
3829
4232
|
return false
|
|
3830
4233
|
};
|
|
3831
|
-
pp$
|
|
4234
|
+
pp$1.regexp_eatKGroupName = function(state) {
|
|
3832
4235
|
if (state.eat(0x6B /* k */)) {
|
|
3833
4236
|
if (this.regexp_eatGroupName(state)) {
|
|
3834
4237
|
state.backReferenceNames.push(state.lastStringValue);
|
|
@@ -3840,7 +4243,7 @@
|
|
|
3840
4243
|
};
|
|
3841
4244
|
|
|
3842
4245
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-CharacterEscape
|
|
3843
|
-
pp$
|
|
4246
|
+
pp$1.regexp_eatCharacterEscape = function(state) {
|
|
3844
4247
|
return (
|
|
3845
4248
|
this.regexp_eatControlEscape(state) ||
|
|
3846
4249
|
this.regexp_eatCControlLetter(state) ||
|
|
@@ -3851,7 +4254,7 @@
|
|
|
3851
4254
|
this.regexp_eatIdentityEscape(state)
|
|
3852
4255
|
)
|
|
3853
4256
|
};
|
|
3854
|
-
pp$
|
|
4257
|
+
pp$1.regexp_eatCControlLetter = function(state) {
|
|
3855
4258
|
var start = state.pos;
|
|
3856
4259
|
if (state.eat(0x63 /* c */)) {
|
|
3857
4260
|
if (this.regexp_eatControlLetter(state)) {
|
|
@@ -3861,7 +4264,7 @@
|
|
|
3861
4264
|
}
|
|
3862
4265
|
return false
|
|
3863
4266
|
};
|
|
3864
|
-
pp$
|
|
4267
|
+
pp$1.regexp_eatZero = function(state) {
|
|
3865
4268
|
if (state.current() === 0x30 /* 0 */ && !isDecimalDigit(state.lookahead())) {
|
|
3866
4269
|
state.lastIntValue = 0;
|
|
3867
4270
|
state.advance();
|
|
@@ -3871,7 +4274,7 @@
|
|
|
3871
4274
|
};
|
|
3872
4275
|
|
|
3873
4276
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ControlEscape
|
|
3874
|
-
pp$
|
|
4277
|
+
pp$1.regexp_eatControlEscape = function(state) {
|
|
3875
4278
|
var ch = state.current();
|
|
3876
4279
|
if (ch === 0x74 /* t */) {
|
|
3877
4280
|
state.lastIntValue = 0x09; /* \t */
|
|
@@ -3902,7 +4305,7 @@
|
|
|
3902
4305
|
};
|
|
3903
4306
|
|
|
3904
4307
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ControlLetter
|
|
3905
|
-
pp$
|
|
4308
|
+
pp$1.regexp_eatControlLetter = function(state) {
|
|
3906
4309
|
var ch = state.current();
|
|
3907
4310
|
if (isControlLetter(ch)) {
|
|
3908
4311
|
state.lastIntValue = ch % 0x20;
|
|
@@ -3919,7 +4322,7 @@
|
|
|
3919
4322
|
}
|
|
3920
4323
|
|
|
3921
4324
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-RegExpUnicodeEscapeSequence
|
|
3922
|
-
pp$
|
|
4325
|
+
pp$1.regexp_eatRegExpUnicodeEscapeSequence = function(state, forceU) {
|
|
3923
4326
|
if ( forceU === void 0 ) forceU = false;
|
|
3924
4327
|
|
|
3925
4328
|
var start = state.pos;
|
|
@@ -3964,7 +4367,7 @@
|
|
|
3964
4367
|
}
|
|
3965
4368
|
|
|
3966
4369
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-IdentityEscape
|
|
3967
|
-
pp$
|
|
4370
|
+
pp$1.regexp_eatIdentityEscape = function(state) {
|
|
3968
4371
|
if (state.switchU) {
|
|
3969
4372
|
if (this.regexp_eatSyntaxCharacter(state)) {
|
|
3970
4373
|
return true
|
|
@@ -3987,7 +4390,7 @@
|
|
|
3987
4390
|
};
|
|
3988
4391
|
|
|
3989
4392
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-DecimalEscape
|
|
3990
|
-
pp$
|
|
4393
|
+
pp$1.regexp_eatDecimalEscape = function(state) {
|
|
3991
4394
|
state.lastIntValue = 0;
|
|
3992
4395
|
var ch = state.current();
|
|
3993
4396
|
if (ch >= 0x31 /* 1 */ && ch <= 0x39 /* 9 */) {
|
|
@@ -4001,7 +4404,7 @@
|
|
|
4001
4404
|
};
|
|
4002
4405
|
|
|
4003
4406
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-CharacterClassEscape
|
|
4004
|
-
pp$
|
|
4407
|
+
pp$1.regexp_eatCharacterClassEscape = function(state) {
|
|
4005
4408
|
var ch = state.current();
|
|
4006
4409
|
|
|
4007
4410
|
if (isCharacterClassEscape(ch)) {
|
|
@@ -4043,7 +4446,7 @@
|
|
|
4043
4446
|
// UnicodePropertyValueExpression ::
|
|
4044
4447
|
// UnicodePropertyName `=` UnicodePropertyValue
|
|
4045
4448
|
// LoneUnicodePropertyNameOrValue
|
|
4046
|
-
pp$
|
|
4449
|
+
pp$1.regexp_eatUnicodePropertyValueExpression = function(state) {
|
|
4047
4450
|
var start = state.pos;
|
|
4048
4451
|
|
|
4049
4452
|
// UnicodePropertyName `=` UnicodePropertyValue
|
|
@@ -4065,20 +4468,20 @@
|
|
|
4065
4468
|
}
|
|
4066
4469
|
return false
|
|
4067
4470
|
};
|
|
4068
|
-
pp$
|
|
4069
|
-
if (!
|
|
4471
|
+
pp$1.regexp_validateUnicodePropertyNameAndValue = function(state, name, value) {
|
|
4472
|
+
if (!hasOwn(state.unicodeProperties.nonBinary, name))
|
|
4070
4473
|
{ state.raise("Invalid property name"); }
|
|
4071
4474
|
if (!state.unicodeProperties.nonBinary[name].test(value))
|
|
4072
4475
|
{ state.raise("Invalid property value"); }
|
|
4073
4476
|
};
|
|
4074
|
-
pp$
|
|
4477
|
+
pp$1.regexp_validateUnicodePropertyNameOrValue = function(state, nameOrValue) {
|
|
4075
4478
|
if (!state.unicodeProperties.binary.test(nameOrValue))
|
|
4076
4479
|
{ state.raise("Invalid property name"); }
|
|
4077
4480
|
};
|
|
4078
4481
|
|
|
4079
4482
|
// UnicodePropertyName ::
|
|
4080
4483
|
// UnicodePropertyNameCharacters
|
|
4081
|
-
pp$
|
|
4484
|
+
pp$1.regexp_eatUnicodePropertyName = function(state) {
|
|
4082
4485
|
var ch = 0;
|
|
4083
4486
|
state.lastStringValue = "";
|
|
4084
4487
|
while (isUnicodePropertyNameCharacter(ch = state.current())) {
|
|
@@ -4093,7 +4496,7 @@
|
|
|
4093
4496
|
|
|
4094
4497
|
// UnicodePropertyValue ::
|
|
4095
4498
|
// UnicodePropertyValueCharacters
|
|
4096
|
-
pp$
|
|
4499
|
+
pp$1.regexp_eatUnicodePropertyValue = function(state) {
|
|
4097
4500
|
var ch = 0;
|
|
4098
4501
|
state.lastStringValue = "";
|
|
4099
4502
|
while (isUnicodePropertyValueCharacter(ch = state.current())) {
|
|
@@ -4108,12 +4511,12 @@
|
|
|
4108
4511
|
|
|
4109
4512
|
// LoneUnicodePropertyNameOrValue ::
|
|
4110
4513
|
// UnicodePropertyValueCharacters
|
|
4111
|
-
pp$
|
|
4514
|
+
pp$1.regexp_eatLoneUnicodePropertyNameOrValue = function(state) {
|
|
4112
4515
|
return this.regexp_eatUnicodePropertyValue(state)
|
|
4113
4516
|
};
|
|
4114
4517
|
|
|
4115
4518
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-CharacterClass
|
|
4116
|
-
pp$
|
|
4519
|
+
pp$1.regexp_eatCharacterClass = function(state) {
|
|
4117
4520
|
if (state.eat(0x5B /* [ */)) {
|
|
4118
4521
|
state.eat(0x5E /* ^ */);
|
|
4119
4522
|
this.regexp_classRanges(state);
|
|
@@ -4129,7 +4532,7 @@
|
|
|
4129
4532
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassRanges
|
|
4130
4533
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-NonemptyClassRanges
|
|
4131
4534
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-NonemptyClassRangesNoDash
|
|
4132
|
-
pp$
|
|
4535
|
+
pp$1.regexp_classRanges = function(state) {
|
|
4133
4536
|
while (this.regexp_eatClassAtom(state)) {
|
|
4134
4537
|
var left = state.lastIntValue;
|
|
4135
4538
|
if (state.eat(0x2D /* - */) && this.regexp_eatClassAtom(state)) {
|
|
@@ -4146,7 +4549,7 @@
|
|
|
4146
4549
|
|
|
4147
4550
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassAtom
|
|
4148
4551
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-ClassAtomNoDash
|
|
4149
|
-
pp$
|
|
4552
|
+
pp$1.regexp_eatClassAtom = function(state) {
|
|
4150
4553
|
var start = state.pos;
|
|
4151
4554
|
|
|
4152
4555
|
if (state.eat(0x5C /* \ */)) {
|
|
@@ -4175,7 +4578,7 @@
|
|
|
4175
4578
|
};
|
|
4176
4579
|
|
|
4177
4580
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ClassEscape
|
|
4178
|
-
pp$
|
|
4581
|
+
pp$1.regexp_eatClassEscape = function(state) {
|
|
4179
4582
|
var start = state.pos;
|
|
4180
4583
|
|
|
4181
4584
|
if (state.eat(0x62 /* b */)) {
|
|
@@ -4202,7 +4605,7 @@
|
|
|
4202
4605
|
};
|
|
4203
4606
|
|
|
4204
4607
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-ClassControlLetter
|
|
4205
|
-
pp$
|
|
4608
|
+
pp$1.regexp_eatClassControlLetter = function(state) {
|
|
4206
4609
|
var ch = state.current();
|
|
4207
4610
|
if (isDecimalDigit(ch) || ch === 0x5F /* _ */) {
|
|
4208
4611
|
state.lastIntValue = ch % 0x20;
|
|
@@ -4213,7 +4616,7 @@
|
|
|
4213
4616
|
};
|
|
4214
4617
|
|
|
4215
4618
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexEscapeSequence
|
|
4216
|
-
pp$
|
|
4619
|
+
pp$1.regexp_eatHexEscapeSequence = function(state) {
|
|
4217
4620
|
var start = state.pos;
|
|
4218
4621
|
if (state.eat(0x78 /* x */)) {
|
|
4219
4622
|
if (this.regexp_eatFixedHexDigits(state, 2)) {
|
|
@@ -4228,7 +4631,7 @@
|
|
|
4228
4631
|
};
|
|
4229
4632
|
|
|
4230
4633
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-DecimalDigits
|
|
4231
|
-
pp$
|
|
4634
|
+
pp$1.regexp_eatDecimalDigits = function(state) {
|
|
4232
4635
|
var start = state.pos;
|
|
4233
4636
|
var ch = 0;
|
|
4234
4637
|
state.lastIntValue = 0;
|
|
@@ -4243,7 +4646,7 @@
|
|
|
4243
4646
|
}
|
|
4244
4647
|
|
|
4245
4648
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexDigits
|
|
4246
|
-
pp$
|
|
4649
|
+
pp$1.regexp_eatHexDigits = function(state) {
|
|
4247
4650
|
var start = state.pos;
|
|
4248
4651
|
var ch = 0;
|
|
4249
4652
|
state.lastIntValue = 0;
|
|
@@ -4272,7 +4675,7 @@
|
|
|
4272
4675
|
|
|
4273
4676
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-annexB-LegacyOctalEscapeSequence
|
|
4274
4677
|
// Allows only 0-377(octal) i.e. 0-255(decimal).
|
|
4275
|
-
pp$
|
|
4678
|
+
pp$1.regexp_eatLegacyOctalEscapeSequence = function(state) {
|
|
4276
4679
|
if (this.regexp_eatOctalDigit(state)) {
|
|
4277
4680
|
var n1 = state.lastIntValue;
|
|
4278
4681
|
if (this.regexp_eatOctalDigit(state)) {
|
|
@@ -4291,7 +4694,7 @@
|
|
|
4291
4694
|
};
|
|
4292
4695
|
|
|
4293
4696
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-OctalDigit
|
|
4294
|
-
pp$
|
|
4697
|
+
pp$1.regexp_eatOctalDigit = function(state) {
|
|
4295
4698
|
var ch = state.current();
|
|
4296
4699
|
if (isOctalDigit(ch)) {
|
|
4297
4700
|
state.lastIntValue = ch - 0x30; /* 0 */
|
|
@@ -4308,7 +4711,7 @@
|
|
|
4308
4711
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-Hex4Digits
|
|
4309
4712
|
// https://www.ecma-international.org/ecma-262/8.0/#prod-HexDigit
|
|
4310
4713
|
// And HexDigit HexDigit in https://www.ecma-international.org/ecma-262/8.0/#prod-HexEscapeSequence
|
|
4311
|
-
pp$
|
|
4714
|
+
pp$1.regexp_eatFixedHexDigits = function(state, length) {
|
|
4312
4715
|
var start = state.pos;
|
|
4313
4716
|
state.lastIntValue = 0;
|
|
4314
4717
|
for (var i = 0; i < length; ++i) {
|
|
@@ -4340,11 +4743,11 @@
|
|
|
4340
4743
|
|
|
4341
4744
|
// ## Tokenizer
|
|
4342
4745
|
|
|
4343
|
-
var pp
|
|
4746
|
+
var pp = Parser.prototype;
|
|
4344
4747
|
|
|
4345
4748
|
// Move to the next token
|
|
4346
4749
|
|
|
4347
|
-
pp
|
|
4750
|
+
pp.next = function(ignoreEscapeSequenceInKeyword) {
|
|
4348
4751
|
if (!ignoreEscapeSequenceInKeyword && this.type.keyword && this.containsEsc)
|
|
4349
4752
|
{ this.raiseRecoverable(this.start, "Escape sequence in keyword " + this.type.keyword); }
|
|
4350
4753
|
if (this.options.onToken)
|
|
@@ -4357,21 +4760,21 @@
|
|
|
4357
4760
|
this.nextToken();
|
|
4358
4761
|
};
|
|
4359
4762
|
|
|
4360
|
-
pp
|
|
4763
|
+
pp.getToken = function() {
|
|
4361
4764
|
this.next();
|
|
4362
4765
|
return new Token(this)
|
|
4363
4766
|
};
|
|
4364
4767
|
|
|
4365
4768
|
// If we're in an ES6 environment, make parsers iterable
|
|
4366
4769
|
if (typeof Symbol !== "undefined")
|
|
4367
|
-
{ pp
|
|
4368
|
-
var this$1 = this;
|
|
4770
|
+
{ pp[Symbol.iterator] = function() {
|
|
4771
|
+
var this$1$1 = this;
|
|
4369
4772
|
|
|
4370
4773
|
return {
|
|
4371
4774
|
next: function () {
|
|
4372
|
-
var token = this$1.getToken();
|
|
4775
|
+
var token = this$1$1.getToken();
|
|
4373
4776
|
return {
|
|
4374
|
-
done: token.type === types.eof,
|
|
4777
|
+
done: token.type === types$1.eof,
|
|
4375
4778
|
value: token
|
|
4376
4779
|
}
|
|
4377
4780
|
}
|
|
@@ -4381,26 +4784,22 @@
|
|
|
4381
4784
|
// Toggle strict mode. Re-reads the next number or string to please
|
|
4382
4785
|
// pedantic tests (`"use strict"; 010;` should fail).
|
|
4383
4786
|
|
|
4384
|
-
pp$9.curContext = function() {
|
|
4385
|
-
return this.context[this.context.length - 1]
|
|
4386
|
-
};
|
|
4387
|
-
|
|
4388
4787
|
// Read a single token, updating the parser object's token-related
|
|
4389
4788
|
// properties.
|
|
4390
4789
|
|
|
4391
|
-
pp
|
|
4790
|
+
pp.nextToken = function() {
|
|
4392
4791
|
var curContext = this.curContext();
|
|
4393
4792
|
if (!curContext || !curContext.preserveSpace) { this.skipSpace(); }
|
|
4394
4793
|
|
|
4395
4794
|
this.start = this.pos;
|
|
4396
4795
|
if (this.options.locations) { this.startLoc = this.curPosition(); }
|
|
4397
|
-
if (this.pos >= this.input.length) { return this.finishToken(types.eof) }
|
|
4796
|
+
if (this.pos >= this.input.length) { return this.finishToken(types$1.eof) }
|
|
4398
4797
|
|
|
4399
4798
|
if (curContext.override) { return curContext.override(this) }
|
|
4400
4799
|
else { this.readToken(this.fullCharCodeAtPos()); }
|
|
4401
4800
|
};
|
|
4402
4801
|
|
|
4403
|
-
pp
|
|
4802
|
+
pp.readToken = function(code) {
|
|
4404
4803
|
// Identifier or keyword. '\uXXXX' sequences are allowed in
|
|
4405
4804
|
// identifiers, so '\' also dispatches to that.
|
|
4406
4805
|
if (isIdentifierStart(code, this.options.ecmaVersion >= 6) || code === 92 /* '\' */)
|
|
@@ -4409,24 +4808,22 @@
|
|
|
4409
4808
|
return this.getTokenFromCode(code)
|
|
4410
4809
|
};
|
|
4411
4810
|
|
|
4412
|
-
pp
|
|
4811
|
+
pp.fullCharCodeAtPos = function() {
|
|
4413
4812
|
var code = this.input.charCodeAt(this.pos);
|
|
4414
|
-
if (code <= 0xd7ff || code >=
|
|
4813
|
+
if (code <= 0xd7ff || code >= 0xdc00) { return code }
|
|
4415
4814
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4416
|
-
return (code << 10) + next - 0x35fdc00
|
|
4815
|
+
return next <= 0xdbff || next >= 0xe000 ? code : (code << 10) + next - 0x35fdc00
|
|
4417
4816
|
};
|
|
4418
4817
|
|
|
4419
|
-
pp
|
|
4818
|
+
pp.skipBlockComment = function() {
|
|
4420
4819
|
var startLoc = this.options.onComment && this.curPosition();
|
|
4421
4820
|
var start = this.pos, end = this.input.indexOf("*/", this.pos += 2);
|
|
4422
4821
|
if (end === -1) { this.raise(this.pos - 2, "Unterminated comment"); }
|
|
4423
4822
|
this.pos = end + 2;
|
|
4424
4823
|
if (this.options.locations) {
|
|
4425
|
-
|
|
4426
|
-
var match;
|
|
4427
|
-
while ((match = lineBreakG.exec(this.input)) && match.index < this.pos) {
|
|
4824
|
+
for (var nextBreak = (void 0), pos = start; (nextBreak = nextLineBreak(this.input, pos, this.pos)) > -1;) {
|
|
4428
4825
|
++this.curLine;
|
|
4429
|
-
this.lineStart =
|
|
4826
|
+
pos = this.lineStart = nextBreak;
|
|
4430
4827
|
}
|
|
4431
4828
|
}
|
|
4432
4829
|
if (this.options.onComment)
|
|
@@ -4434,7 +4831,7 @@
|
|
|
4434
4831
|
startLoc, this.curPosition()); }
|
|
4435
4832
|
};
|
|
4436
4833
|
|
|
4437
|
-
pp
|
|
4834
|
+
pp.skipLineComment = function(startSkip) {
|
|
4438
4835
|
var start = this.pos;
|
|
4439
4836
|
var startLoc = this.options.onComment && this.curPosition();
|
|
4440
4837
|
var ch = this.input.charCodeAt(this.pos += startSkip);
|
|
@@ -4449,7 +4846,7 @@
|
|
|
4449
4846
|
// Called at the start of the parse and after every token. Skips
|
|
4450
4847
|
// whitespace and comments, and.
|
|
4451
4848
|
|
|
4452
|
-
pp
|
|
4849
|
+
pp.skipSpace = function() {
|
|
4453
4850
|
loop: while (this.pos < this.input.length) {
|
|
4454
4851
|
var ch = this.input.charCodeAt(this.pos);
|
|
4455
4852
|
switch (ch) {
|
|
@@ -4494,7 +4891,7 @@
|
|
|
4494
4891
|
// the token, so that the next one's `start` will point at the
|
|
4495
4892
|
// right position.
|
|
4496
4893
|
|
|
4497
|
-
pp
|
|
4894
|
+
pp.finishToken = function(type, val) {
|
|
4498
4895
|
this.end = this.pos;
|
|
4499
4896
|
if (this.options.locations) { this.endLoc = this.curPosition(); }
|
|
4500
4897
|
var prevType = this.type;
|
|
@@ -4513,62 +4910,62 @@
|
|
|
4513
4910
|
//
|
|
4514
4911
|
// All in the name of speed.
|
|
4515
4912
|
//
|
|
4516
|
-
pp
|
|
4913
|
+
pp.readToken_dot = function() {
|
|
4517
4914
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4518
4915
|
if (next >= 48 && next <= 57) { return this.readNumber(true) }
|
|
4519
4916
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4520
4917
|
if (this.options.ecmaVersion >= 6 && next === 46 && next2 === 46) { // 46 = dot '.'
|
|
4521
4918
|
this.pos += 3;
|
|
4522
|
-
return this.finishToken(types.ellipsis)
|
|
4919
|
+
return this.finishToken(types$1.ellipsis)
|
|
4523
4920
|
} else {
|
|
4524
4921
|
++this.pos;
|
|
4525
|
-
return this.finishToken(types.dot)
|
|
4922
|
+
return this.finishToken(types$1.dot)
|
|
4526
4923
|
}
|
|
4527
4924
|
};
|
|
4528
4925
|
|
|
4529
|
-
pp
|
|
4926
|
+
pp.readToken_slash = function() { // '/'
|
|
4530
4927
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4531
4928
|
if (this.exprAllowed) { ++this.pos; return this.readRegexp() }
|
|
4532
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4533
|
-
return this.finishOp(types.slash, 1)
|
|
4929
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4930
|
+
return this.finishOp(types$1.slash, 1)
|
|
4534
4931
|
};
|
|
4535
4932
|
|
|
4536
|
-
pp
|
|
4933
|
+
pp.readToken_mult_modulo_exp = function(code) { // '%*'
|
|
4537
4934
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4538
4935
|
var size = 1;
|
|
4539
|
-
var tokentype = code === 42 ? types.star : types.modulo;
|
|
4936
|
+
var tokentype = code === 42 ? types$1.star : types$1.modulo;
|
|
4540
4937
|
|
|
4541
4938
|
// exponentiation operator ** and **=
|
|
4542
4939
|
if (this.options.ecmaVersion >= 7 && code === 42 && next === 42) {
|
|
4543
4940
|
++size;
|
|
4544
|
-
tokentype = types.starstar;
|
|
4941
|
+
tokentype = types$1.starstar;
|
|
4545
4942
|
next = this.input.charCodeAt(this.pos + 2);
|
|
4546
4943
|
}
|
|
4547
4944
|
|
|
4548
|
-
if (next === 61) { return this.finishOp(types.assign, size + 1) }
|
|
4945
|
+
if (next === 61) { return this.finishOp(types$1.assign, size + 1) }
|
|
4549
4946
|
return this.finishOp(tokentype, size)
|
|
4550
4947
|
};
|
|
4551
4948
|
|
|
4552
|
-
pp
|
|
4949
|
+
pp.readToken_pipe_amp = function(code) { // '|&'
|
|
4553
4950
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4554
4951
|
if (next === code) {
|
|
4555
4952
|
if (this.options.ecmaVersion >= 12) {
|
|
4556
4953
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4557
|
-
if (next2 === 61) { return this.finishOp(types.assign, 3) }
|
|
4954
|
+
if (next2 === 61) { return this.finishOp(types$1.assign, 3) }
|
|
4558
4955
|
}
|
|
4559
|
-
return this.finishOp(code === 124 ? types.logicalOR : types.logicalAND, 2)
|
|
4956
|
+
return this.finishOp(code === 124 ? types$1.logicalOR : types$1.logicalAND, 2)
|
|
4560
4957
|
}
|
|
4561
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4562
|
-
return this.finishOp(code === 124 ? types.bitwiseOR : types.bitwiseAND, 1)
|
|
4958
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4959
|
+
return this.finishOp(code === 124 ? types$1.bitwiseOR : types$1.bitwiseAND, 1)
|
|
4563
4960
|
};
|
|
4564
4961
|
|
|
4565
|
-
pp
|
|
4962
|
+
pp.readToken_caret = function() { // '^'
|
|
4566
4963
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4567
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4568
|
-
return this.finishOp(types.bitwiseXOR, 1)
|
|
4964
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4965
|
+
return this.finishOp(types$1.bitwiseXOR, 1)
|
|
4569
4966
|
};
|
|
4570
4967
|
|
|
4571
|
-
pp
|
|
4968
|
+
pp.readToken_plus_min = function(code) { // '+-'
|
|
4572
4969
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4573
4970
|
if (next === code) {
|
|
4574
4971
|
if (next === 45 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 62 &&
|
|
@@ -4578,19 +4975,19 @@
|
|
|
4578
4975
|
this.skipSpace();
|
|
4579
4976
|
return this.nextToken()
|
|
4580
4977
|
}
|
|
4581
|
-
return this.finishOp(types.incDec, 2)
|
|
4978
|
+
return this.finishOp(types$1.incDec, 2)
|
|
4582
4979
|
}
|
|
4583
|
-
if (next === 61) { return this.finishOp(types.assign, 2) }
|
|
4584
|
-
return this.finishOp(types.plusMin, 1)
|
|
4980
|
+
if (next === 61) { return this.finishOp(types$1.assign, 2) }
|
|
4981
|
+
return this.finishOp(types$1.plusMin, 1)
|
|
4585
4982
|
};
|
|
4586
4983
|
|
|
4587
|
-
pp
|
|
4984
|
+
pp.readToken_lt_gt = function(code) { // '<>'
|
|
4588
4985
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4589
4986
|
var size = 1;
|
|
4590
4987
|
if (next === code) {
|
|
4591
4988
|
size = code === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2;
|
|
4592
|
-
if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types.assign, size + 1) }
|
|
4593
|
-
return this.finishOp(types.bitShift, size)
|
|
4989
|
+
if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types$1.assign, size + 1) }
|
|
4990
|
+
return this.finishOp(types$1.bitShift, size)
|
|
4594
4991
|
}
|
|
4595
4992
|
if (next === 33 && code === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 45 &&
|
|
4596
4993
|
this.input.charCodeAt(this.pos + 3) === 45) {
|
|
@@ -4600,39 +4997,53 @@
|
|
|
4600
4997
|
return this.nextToken()
|
|
4601
4998
|
}
|
|
4602
4999
|
if (next === 61) { size = 2; }
|
|
4603
|
-
return this.finishOp(types.relational, size)
|
|
5000
|
+
return this.finishOp(types$1.relational, size)
|
|
4604
5001
|
};
|
|
4605
5002
|
|
|
4606
|
-
pp
|
|
5003
|
+
pp.readToken_eq_excl = function(code) { // '=!'
|
|
4607
5004
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4608
|
-
if (next === 61) { return this.finishOp(types.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) }
|
|
5005
|
+
if (next === 61) { return this.finishOp(types$1.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) }
|
|
4609
5006
|
if (code === 61 && next === 62 && this.options.ecmaVersion >= 6) { // '=>'
|
|
4610
5007
|
this.pos += 2;
|
|
4611
|
-
return this.finishToken(types.arrow)
|
|
5008
|
+
return this.finishToken(types$1.arrow)
|
|
4612
5009
|
}
|
|
4613
|
-
return this.finishOp(code === 61 ? types.eq : types.prefix, 1)
|
|
5010
|
+
return this.finishOp(code === 61 ? types$1.eq : types$1.prefix, 1)
|
|
4614
5011
|
};
|
|
4615
5012
|
|
|
4616
|
-
pp
|
|
5013
|
+
pp.readToken_question = function() { // '?'
|
|
4617
5014
|
var ecmaVersion = this.options.ecmaVersion;
|
|
4618
5015
|
if (ecmaVersion >= 11) {
|
|
4619
5016
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
4620
5017
|
if (next === 46) {
|
|
4621
5018
|
var next2 = this.input.charCodeAt(this.pos + 2);
|
|
4622
|
-
if (next2 < 48 || next2 > 57) { return this.finishOp(types.questionDot, 2) }
|
|
5019
|
+
if (next2 < 48 || next2 > 57) { return this.finishOp(types$1.questionDot, 2) }
|
|
4623
5020
|
}
|
|
4624
5021
|
if (next === 63) {
|
|
4625
5022
|
if (ecmaVersion >= 12) {
|
|
4626
5023
|
var next2$1 = this.input.charCodeAt(this.pos + 2);
|
|
4627
|
-
if (next2$1 === 61) { return this.finishOp(types.assign, 3) }
|
|
5024
|
+
if (next2$1 === 61) { return this.finishOp(types$1.assign, 3) }
|
|
4628
5025
|
}
|
|
4629
|
-
return this.finishOp(types.coalesce, 2)
|
|
5026
|
+
return this.finishOp(types$1.coalesce, 2)
|
|
4630
5027
|
}
|
|
4631
5028
|
}
|
|
4632
|
-
return this.finishOp(types.question, 1)
|
|
5029
|
+
return this.finishOp(types$1.question, 1)
|
|
4633
5030
|
};
|
|
4634
5031
|
|
|
4635
|
-
pp
|
|
5032
|
+
pp.readToken_numberSign = function() { // '#'
|
|
5033
|
+
var ecmaVersion = this.options.ecmaVersion;
|
|
5034
|
+
var code = 35; // '#'
|
|
5035
|
+
if (ecmaVersion >= 13) {
|
|
5036
|
+
++this.pos;
|
|
5037
|
+
code = this.fullCharCodeAtPos();
|
|
5038
|
+
if (isIdentifierStart(code, true) || code === 92 /* '\' */) {
|
|
5039
|
+
return this.finishToken(types$1.privateId, this.readWord1())
|
|
5040
|
+
}
|
|
5041
|
+
}
|
|
5042
|
+
|
|
5043
|
+
this.raise(this.pos, "Unexpected character '" + codePointToString(code) + "'");
|
|
5044
|
+
};
|
|
5045
|
+
|
|
5046
|
+
pp.getTokenFromCode = function(code) {
|
|
4636
5047
|
switch (code) {
|
|
4637
5048
|
// The interpretation of a dot depends on whether it is followed
|
|
4638
5049
|
// by a digit or another two dots.
|
|
@@ -4640,20 +5051,20 @@
|
|
|
4640
5051
|
return this.readToken_dot()
|
|
4641
5052
|
|
|
4642
5053
|
// Punctuation tokens.
|
|
4643
|
-
case 40: ++this.pos; return this.finishToken(types.parenL)
|
|
4644
|
-
case 41: ++this.pos; return this.finishToken(types.parenR)
|
|
4645
|
-
case 59: ++this.pos; return this.finishToken(types.semi)
|
|
4646
|
-
case 44: ++this.pos; return this.finishToken(types.comma)
|
|
4647
|
-
case 91: ++this.pos; return this.finishToken(types.bracketL)
|
|
4648
|
-
case 93: ++this.pos; return this.finishToken(types.bracketR)
|
|
4649
|
-
case 123: ++this.pos; return this.finishToken(types.braceL)
|
|
4650
|
-
case 125: ++this.pos; return this.finishToken(types.braceR)
|
|
4651
|
-
case 58: ++this.pos; return this.finishToken(types.colon)
|
|
5054
|
+
case 40: ++this.pos; return this.finishToken(types$1.parenL)
|
|
5055
|
+
case 41: ++this.pos; return this.finishToken(types$1.parenR)
|
|
5056
|
+
case 59: ++this.pos; return this.finishToken(types$1.semi)
|
|
5057
|
+
case 44: ++this.pos; return this.finishToken(types$1.comma)
|
|
5058
|
+
case 91: ++this.pos; return this.finishToken(types$1.bracketL)
|
|
5059
|
+
case 93: ++this.pos; return this.finishToken(types$1.bracketR)
|
|
5060
|
+
case 123: ++this.pos; return this.finishToken(types$1.braceL)
|
|
5061
|
+
case 125: ++this.pos; return this.finishToken(types$1.braceR)
|
|
5062
|
+
case 58: ++this.pos; return this.finishToken(types$1.colon)
|
|
4652
5063
|
|
|
4653
5064
|
case 96: // '`'
|
|
4654
5065
|
if (this.options.ecmaVersion < 6) { break }
|
|
4655
5066
|
++this.pos;
|
|
4656
|
-
return this.finishToken(types.backQuote)
|
|
5067
|
+
return this.finishToken(types$1.backQuote)
|
|
4657
5068
|
|
|
4658
5069
|
case 48: // '0'
|
|
4659
5070
|
var next = this.input.charCodeAt(this.pos + 1);
|
|
@@ -4676,7 +5087,6 @@
|
|
|
4676
5087
|
// often referred to. `finishOp` simply skips the amount of
|
|
4677
5088
|
// characters it is given as second argument, and returns a token
|
|
4678
5089
|
// of the type given by its first argument.
|
|
4679
|
-
|
|
4680
5090
|
case 47: // '/'
|
|
4681
5091
|
return this.readToken_slash()
|
|
4682
5092
|
|
|
@@ -4702,19 +5112,22 @@
|
|
|
4702
5112
|
return this.readToken_question()
|
|
4703
5113
|
|
|
4704
5114
|
case 126: // '~'
|
|
4705
|
-
return this.finishOp(types.prefix, 1)
|
|
5115
|
+
return this.finishOp(types$1.prefix, 1)
|
|
5116
|
+
|
|
5117
|
+
case 35: // '#'
|
|
5118
|
+
return this.readToken_numberSign()
|
|
4706
5119
|
}
|
|
4707
5120
|
|
|
4708
|
-
this.raise(this.pos, "Unexpected character '" + codePointToString
|
|
5121
|
+
this.raise(this.pos, "Unexpected character '" + codePointToString(code) + "'");
|
|
4709
5122
|
};
|
|
4710
5123
|
|
|
4711
|
-
pp
|
|
5124
|
+
pp.finishOp = function(type, size) {
|
|
4712
5125
|
var str = this.input.slice(this.pos, this.pos + size);
|
|
4713
5126
|
this.pos += size;
|
|
4714
5127
|
return this.finishToken(type, str)
|
|
4715
5128
|
};
|
|
4716
5129
|
|
|
4717
|
-
pp
|
|
5130
|
+
pp.readRegexp = function() {
|
|
4718
5131
|
var escaped, inClass, start = this.pos;
|
|
4719
5132
|
for (;;) {
|
|
4720
5133
|
if (this.pos >= this.input.length) { this.raise(start, "Unterminated regular expression"); }
|
|
@@ -4749,14 +5162,14 @@
|
|
|
4749
5162
|
// https://github.com/estree/estree/blob/a27003adf4fd7bfad44de9cef372a2eacd527b1c/es5.md#regexpliteral
|
|
4750
5163
|
}
|
|
4751
5164
|
|
|
4752
|
-
return this.finishToken(types.regexp, {pattern: pattern, flags: flags, value: value})
|
|
5165
|
+
return this.finishToken(types$1.regexp, {pattern: pattern, flags: flags, value: value})
|
|
4753
5166
|
};
|
|
4754
5167
|
|
|
4755
5168
|
// Read an integer in the given radix. Return null if zero digits
|
|
4756
5169
|
// were read, the integer value otherwise. When `len` is given, this
|
|
4757
5170
|
// will return `null` unless the integer has exactly `len` digits.
|
|
4758
5171
|
|
|
4759
|
-
pp
|
|
5172
|
+
pp.readInt = function(radix, len, maybeLegacyOctalNumericLiteral) {
|
|
4760
5173
|
// `len` is used for character escape sequences. In that case, disallow separators.
|
|
4761
5174
|
var allowSeparators = this.options.ecmaVersion >= 12 && len === undefined;
|
|
4762
5175
|
|
|
@@ -4810,7 +5223,7 @@
|
|
|
4810
5223
|
return BigInt(str.replace(/_/g, ""))
|
|
4811
5224
|
}
|
|
4812
5225
|
|
|
4813
|
-
pp
|
|
5226
|
+
pp.readRadixNumber = function(radix) {
|
|
4814
5227
|
var start = this.pos;
|
|
4815
5228
|
this.pos += 2; // 0x
|
|
4816
5229
|
var val = this.readInt(radix);
|
|
@@ -4819,12 +5232,12 @@
|
|
|
4819
5232
|
val = stringToBigInt(this.input.slice(start, this.pos));
|
|
4820
5233
|
++this.pos;
|
|
4821
5234
|
} else if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4822
|
-
return this.finishToken(types.num, val)
|
|
5235
|
+
return this.finishToken(types$1.num, val)
|
|
4823
5236
|
};
|
|
4824
5237
|
|
|
4825
5238
|
// Read an integer, octal integer, or floating-point number.
|
|
4826
5239
|
|
|
4827
|
-
pp
|
|
5240
|
+
pp.readNumber = function(startsWithDot) {
|
|
4828
5241
|
var start = this.pos;
|
|
4829
5242
|
if (!startsWithDot && this.readInt(10, undefined, true) === null) { this.raise(start, "Invalid number"); }
|
|
4830
5243
|
var octal = this.pos - start >= 2 && this.input.charCodeAt(start) === 48;
|
|
@@ -4834,7 +5247,7 @@
|
|
|
4834
5247
|
var val$1 = stringToBigInt(this.input.slice(start, this.pos));
|
|
4835
5248
|
++this.pos;
|
|
4836
5249
|
if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4837
|
-
return this.finishToken(types.num, val$1)
|
|
5250
|
+
return this.finishToken(types$1.num, val$1)
|
|
4838
5251
|
}
|
|
4839
5252
|
if (octal && /[89]/.test(this.input.slice(start, this.pos))) { octal = false; }
|
|
4840
5253
|
if (next === 46 && !octal) { // '.'
|
|
@@ -4850,12 +5263,12 @@
|
|
|
4850
5263
|
if (isIdentifierStart(this.fullCharCodeAtPos())) { this.raise(this.pos, "Identifier directly after number"); }
|
|
4851
5264
|
|
|
4852
5265
|
var val = stringToNumber(this.input.slice(start, this.pos), octal);
|
|
4853
|
-
return this.finishToken(types.num, val)
|
|
5266
|
+
return this.finishToken(types$1.num, val)
|
|
4854
5267
|
};
|
|
4855
5268
|
|
|
4856
5269
|
// Read a string value, interpreting backslash-escapes.
|
|
4857
5270
|
|
|
4858
|
-
pp
|
|
5271
|
+
pp.readCodePoint = function() {
|
|
4859
5272
|
var ch = this.input.charCodeAt(this.pos), code;
|
|
4860
5273
|
|
|
4861
5274
|
if (ch === 123) { // '{'
|
|
@@ -4870,14 +5283,7 @@
|
|
|
4870
5283
|
return code
|
|
4871
5284
|
};
|
|
4872
5285
|
|
|
4873
|
-
function
|
|
4874
|
-
// UTF-16 Decoding
|
|
4875
|
-
if (code <= 0xFFFF) { return String.fromCharCode(code) }
|
|
4876
|
-
code -= 0x10000;
|
|
4877
|
-
return String.fromCharCode((code >> 10) + 0xD800, (code & 1023) + 0xDC00)
|
|
4878
|
-
}
|
|
4879
|
-
|
|
4880
|
-
pp$9.readString = function(quote) {
|
|
5286
|
+
pp.readString = function(quote) {
|
|
4881
5287
|
var out = "", chunkStart = ++this.pos;
|
|
4882
5288
|
for (;;) {
|
|
4883
5289
|
if (this.pos >= this.input.length) { this.raise(this.start, "Unterminated string constant"); }
|
|
@@ -4887,20 +5293,27 @@
|
|
|
4887
5293
|
out += this.input.slice(chunkStart, this.pos);
|
|
4888
5294
|
out += this.readEscapedChar(false);
|
|
4889
5295
|
chunkStart = this.pos;
|
|
5296
|
+
} else if (ch === 0x2028 || ch === 0x2029) {
|
|
5297
|
+
if (this.options.ecmaVersion < 10) { this.raise(this.start, "Unterminated string constant"); }
|
|
5298
|
+
++this.pos;
|
|
5299
|
+
if (this.options.locations) {
|
|
5300
|
+
this.curLine++;
|
|
5301
|
+
this.lineStart = this.pos;
|
|
5302
|
+
}
|
|
4890
5303
|
} else {
|
|
4891
|
-
if (isNewLine(ch
|
|
5304
|
+
if (isNewLine(ch)) { this.raise(this.start, "Unterminated string constant"); }
|
|
4892
5305
|
++this.pos;
|
|
4893
5306
|
}
|
|
4894
5307
|
}
|
|
4895
5308
|
out += this.input.slice(chunkStart, this.pos++);
|
|
4896
|
-
return this.finishToken(types.string, out)
|
|
5309
|
+
return this.finishToken(types$1.string, out)
|
|
4897
5310
|
};
|
|
4898
5311
|
|
|
4899
5312
|
// Reads template string tokens.
|
|
4900
5313
|
|
|
4901
5314
|
var INVALID_TEMPLATE_ESCAPE_ERROR = {};
|
|
4902
5315
|
|
|
4903
|
-
pp
|
|
5316
|
+
pp.tryReadTemplateToken = function() {
|
|
4904
5317
|
this.inTemplateElement = true;
|
|
4905
5318
|
try {
|
|
4906
5319
|
this.readTmplToken();
|
|
@@ -4915,7 +5328,7 @@
|
|
|
4915
5328
|
this.inTemplateElement = false;
|
|
4916
5329
|
};
|
|
4917
5330
|
|
|
4918
|
-
pp
|
|
5331
|
+
pp.invalidStringToken = function(position, message) {
|
|
4919
5332
|
if (this.inTemplateElement && this.options.ecmaVersion >= 9) {
|
|
4920
5333
|
throw INVALID_TEMPLATE_ESCAPE_ERROR
|
|
4921
5334
|
} else {
|
|
@@ -4923,23 +5336,23 @@
|
|
|
4923
5336
|
}
|
|
4924
5337
|
};
|
|
4925
5338
|
|
|
4926
|
-
pp
|
|
5339
|
+
pp.readTmplToken = function() {
|
|
4927
5340
|
var out = "", chunkStart = this.pos;
|
|
4928
5341
|
for (;;) {
|
|
4929
5342
|
if (this.pos >= this.input.length) { this.raise(this.start, "Unterminated template"); }
|
|
4930
5343
|
var ch = this.input.charCodeAt(this.pos);
|
|
4931
5344
|
if (ch === 96 || ch === 36 && this.input.charCodeAt(this.pos + 1) === 123) { // '`', '${'
|
|
4932
|
-
if (this.pos === this.start && (this.type === types.template || this.type === types.invalidTemplate)) {
|
|
5345
|
+
if (this.pos === this.start && (this.type === types$1.template || this.type === types$1.invalidTemplate)) {
|
|
4933
5346
|
if (ch === 36) {
|
|
4934
5347
|
this.pos += 2;
|
|
4935
|
-
return this.finishToken(types.dollarBraceL)
|
|
5348
|
+
return this.finishToken(types$1.dollarBraceL)
|
|
4936
5349
|
} else {
|
|
4937
5350
|
++this.pos;
|
|
4938
|
-
return this.finishToken(types.backQuote)
|
|
5351
|
+
return this.finishToken(types$1.backQuote)
|
|
4939
5352
|
}
|
|
4940
5353
|
}
|
|
4941
5354
|
out += this.input.slice(chunkStart, this.pos);
|
|
4942
|
-
return this.finishToken(types.template, out)
|
|
5355
|
+
return this.finishToken(types$1.template, out)
|
|
4943
5356
|
}
|
|
4944
5357
|
if (ch === 92) { // '\'
|
|
4945
5358
|
out += this.input.slice(chunkStart, this.pos);
|
|
@@ -4970,7 +5383,7 @@
|
|
|
4970
5383
|
};
|
|
4971
5384
|
|
|
4972
5385
|
// Reads a template token to search for the end, without validating any escape sequences
|
|
4973
|
-
pp
|
|
5386
|
+
pp.readInvalidTemplateToken = function() {
|
|
4974
5387
|
for (; this.pos < this.input.length; this.pos++) {
|
|
4975
5388
|
switch (this.input[this.pos]) {
|
|
4976
5389
|
case "\\":
|
|
@@ -4981,10 +5394,10 @@
|
|
|
4981
5394
|
if (this.input[this.pos + 1] !== "{") {
|
|
4982
5395
|
break
|
|
4983
5396
|
}
|
|
4984
|
-
// falls through
|
|
4985
5397
|
|
|
5398
|
+
// falls through
|
|
4986
5399
|
case "`":
|
|
4987
|
-
return this.finishToken(types.invalidTemplate, this.input.slice(this.start, this.pos))
|
|
5400
|
+
return this.finishToken(types$1.invalidTemplate, this.input.slice(this.start, this.pos))
|
|
4988
5401
|
|
|
4989
5402
|
// no default
|
|
4990
5403
|
}
|
|
@@ -4994,14 +5407,14 @@
|
|
|
4994
5407
|
|
|
4995
5408
|
// Used to read escaped characters
|
|
4996
5409
|
|
|
4997
|
-
pp
|
|
5410
|
+
pp.readEscapedChar = function(inTemplate) {
|
|
4998
5411
|
var ch = this.input.charCodeAt(++this.pos);
|
|
4999
5412
|
++this.pos;
|
|
5000
5413
|
switch (ch) {
|
|
5001
5414
|
case 110: return "\n" // 'n' -> '\n'
|
|
5002
5415
|
case 114: return "\r" // 'r' -> '\r'
|
|
5003
5416
|
case 120: return String.fromCharCode(this.readHexChar(2)) // 'x'
|
|
5004
|
-
case 117: return codePointToString
|
|
5417
|
+
case 117: return codePointToString(this.readCodePoint()) // 'u'
|
|
5005
5418
|
case 116: return "\t" // 't' -> '\t'
|
|
5006
5419
|
case 98: return "\b" // 'b' -> '\b'
|
|
5007
5420
|
case 118: return "\u000b" // 'v' -> '\u000b'
|
|
@@ -5012,6 +5425,12 @@
|
|
|
5012
5425
|
return ""
|
|
5013
5426
|
case 56:
|
|
5014
5427
|
case 57:
|
|
5428
|
+
if (this.strict) {
|
|
5429
|
+
this.invalidStringToken(
|
|
5430
|
+
this.pos - 1,
|
|
5431
|
+
"Invalid escape sequence"
|
|
5432
|
+
);
|
|
5433
|
+
}
|
|
5015
5434
|
if (inTemplate) {
|
|
5016
5435
|
var codePos = this.pos - 1;
|
|
5017
5436
|
|
|
@@ -5053,7 +5472,7 @@
|
|
|
5053
5472
|
|
|
5054
5473
|
// Used to read character escape sequences ('\x', '\u', '\U').
|
|
5055
5474
|
|
|
5056
|
-
pp
|
|
5475
|
+
pp.readHexChar = function(len) {
|
|
5057
5476
|
var codePos = this.pos;
|
|
5058
5477
|
var n = this.readInt(16, len);
|
|
5059
5478
|
if (n === null) { this.invalidStringToken(codePos, "Bad character escape sequence"); }
|
|
@@ -5066,7 +5485,7 @@
|
|
|
5066
5485
|
// Incrementally adds only escaped chars, adding other chunks as-is
|
|
5067
5486
|
// as a micro-optimization.
|
|
5068
5487
|
|
|
5069
|
-
pp
|
|
5488
|
+
pp.readWord1 = function() {
|
|
5070
5489
|
this.containsEsc = false;
|
|
5071
5490
|
var word = "", first = true, chunkStart = this.pos;
|
|
5072
5491
|
var astral = this.options.ecmaVersion >= 6;
|
|
@@ -5084,7 +5503,7 @@
|
|
|
5084
5503
|
var esc = this.readCodePoint();
|
|
5085
5504
|
if (!(first ? isIdentifierStart : isIdentifierChar)(esc, astral))
|
|
5086
5505
|
{ this.invalidStringToken(escStart, "Invalid Unicode escape"); }
|
|
5087
|
-
word += codePointToString
|
|
5506
|
+
word += codePointToString(esc);
|
|
5088
5507
|
chunkStart = this.pos;
|
|
5089
5508
|
} else {
|
|
5090
5509
|
break
|
|
@@ -5097,18 +5516,18 @@
|
|
|
5097
5516
|
// Read an identifier or keyword token. Will check for reserved
|
|
5098
5517
|
// words when necessary.
|
|
5099
5518
|
|
|
5100
|
-
pp
|
|
5519
|
+
pp.readWord = function() {
|
|
5101
5520
|
var word = this.readWord1();
|
|
5102
|
-
var type = types.name;
|
|
5521
|
+
var type = types$1.name;
|
|
5103
5522
|
if (this.keywords.test(word)) {
|
|
5104
|
-
type = keywords
|
|
5523
|
+
type = keywords[word];
|
|
5105
5524
|
}
|
|
5106
5525
|
return this.finishToken(type, word)
|
|
5107
5526
|
};
|
|
5108
5527
|
|
|
5109
5528
|
// Acorn is a tiny, fast JavaScript parser written in JavaScript.
|
|
5110
5529
|
|
|
5111
|
-
var version = "
|
|
5530
|
+
var version = "8.8.0";
|
|
5112
5531
|
|
|
5113
5532
|
Parser.acorn = {
|
|
5114
5533
|
Parser: Parser,
|
|
@@ -5119,10 +5538,10 @@
|
|
|
5119
5538
|
getLineInfo: getLineInfo,
|
|
5120
5539
|
Node: Node,
|
|
5121
5540
|
TokenType: TokenType,
|
|
5122
|
-
tokTypes: types,
|
|
5123
|
-
keywordTypes: keywords
|
|
5541
|
+
tokTypes: types$1,
|
|
5542
|
+
keywordTypes: keywords,
|
|
5124
5543
|
TokContext: TokContext,
|
|
5125
|
-
tokContexts: types
|
|
5544
|
+
tokContexts: types,
|
|
5126
5545
|
isIdentifierChar: isIdentifierChar,
|
|
5127
5546
|
isIdentifierStart: isIdentifierStart,
|
|
5128
5547
|
Token: Token,
|
|
@@ -5170,17 +5589,17 @@
|
|
|
5170
5589
|
exports.isIdentifierChar = isIdentifierChar;
|
|
5171
5590
|
exports.isIdentifierStart = isIdentifierStart;
|
|
5172
5591
|
exports.isNewLine = isNewLine;
|
|
5173
|
-
exports.keywordTypes = keywords
|
|
5592
|
+
exports.keywordTypes = keywords;
|
|
5174
5593
|
exports.lineBreak = lineBreak;
|
|
5175
5594
|
exports.lineBreakG = lineBreakG;
|
|
5176
5595
|
exports.nonASCIIwhitespace = nonASCIIwhitespace;
|
|
5177
5596
|
exports.parse = parse;
|
|
5178
5597
|
exports.parseExpressionAt = parseExpressionAt;
|
|
5179
|
-
exports.tokContexts = types
|
|
5180
|
-
exports.tokTypes = types;
|
|
5598
|
+
exports.tokContexts = types;
|
|
5599
|
+
exports.tokTypes = types$1;
|
|
5181
5600
|
exports.tokenizer = tokenizer;
|
|
5182
5601
|
exports.version = version;
|
|
5183
5602
|
|
|
5184
5603
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5185
5604
|
|
|
5186
|
-
}))
|
|
5605
|
+
}));
|