guard-sass-lint 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +0 -1
- data/Rakefile +1 -6
- data/guard-sass-lint.gemspec +2 -0
- data/lib/guard/sass/lint/version.rb +1 -1
- data/node_modules/.bin/sass-lint +1 -0
- data/node_modules/.yarn-integrity +1 -0
- data/node_modules/acorn-jsx/LICENSE +19 -0
- data/node_modules/acorn-jsx/README.md +64 -0
- data/node_modules/acorn-jsx/index.js +3 -0
- data/node_modules/acorn-jsx/inject.js +433 -0
- data/node_modules/acorn-jsx/node_modules/.bin/acorn +1 -0
- data/node_modules/acorn-jsx/node_modules/acorn/.editorconfig +7 -0
- data/node_modules/acorn-jsx/node_modules/acorn/.gitattributes +1 -0
- data/node_modules/acorn-jsx/node_modules/acorn/.npmignore +3 -0
- data/node_modules/acorn-jsx/node_modules/acorn/.tern-project +6 -0
- data/node_modules/acorn-jsx/node_modules/acorn/.travis.yml +7 -0
- data/node_modules/acorn-jsx/node_modules/acorn/AUTHORS +59 -0
- data/node_modules/acorn-jsx/node_modules/acorn/CHANGELOG.md +159 -0
- data/node_modules/acorn-jsx/node_modules/acorn/LICENSE +19 -0
- data/node_modules/acorn-jsx/node_modules/acorn/README.md +407 -0
- data/node_modules/acorn-jsx/node_modules/acorn/bin/acorn +65 -0
- data/node_modules/acorn-jsx/node_modules/acorn/bin/generate-identifier-regex.js +55 -0
- data/node_modules/acorn-jsx/node_modules/acorn/bin/update_authors.sh +6 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/.keep +0 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/acorn.es.js +3112 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/acorn.js +3142 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/acorn_loose.es.js +1261 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/acorn_loose.js +1273 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/walk.es.js +342 -0
- data/node_modules/acorn-jsx/node_modules/acorn/dist/walk.js +360 -0
- data/node_modules/acorn-jsx/node_modules/acorn/package.json +46 -0
- data/node_modules/acorn-jsx/node_modules/acorn/rollup/config.bin.js +15 -0
- data/node_modules/acorn-jsx/node_modules/acorn/rollup/config.loose.js +20 -0
- data/node_modules/acorn-jsx/node_modules/acorn/rollup/config.main.js +11 -0
- data/node_modules/acorn-jsx/node_modules/acorn/rollup/config.walk.js +11 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/bin/acorn.js +58 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/expression.js +701 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/identifier.js +82 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/index.js +67 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/location.js +26 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/locutil.js +42 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/expression.js +514 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/index.js +50 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/parseutil.js +1 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/state.js +160 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/statement.js +425 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/loose/tokenize.js +108 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/lval.js +216 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/node.js +50 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/options.js +121 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/parseutil.js +109 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/state.js +104 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/statement.js +654 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/tokencontext.js +110 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/tokenize.js +696 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/tokentype.js +147 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/util.js +9 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/walk/index.js +342 -0
- data/node_modules/acorn-jsx/node_modules/acorn/src/whitespace.js +13 -0
- data/node_modules/acorn-jsx/package.json +28 -0
- data/node_modules/acorn-jsx/xhtml.js +255 -0
- data/node_modules/acorn/.npmignore +10 -0
- data/node_modules/acorn/AUTHORS +60 -0
- data/node_modules/acorn/CHANGELOG.md +222 -0
- data/node_modules/acorn/LICENSE +19 -0
- data/node_modules/acorn/README.md +408 -0
- data/node_modules/acorn/bin/acorn +67 -0
- data/node_modules/acorn/dist/.keep +0 -0
- data/node_modules/acorn/dist/acorn.es.js +3380 -0
- data/node_modules/acorn/dist/acorn.js +3411 -0
- data/node_modules/acorn/dist/acorn_loose.es.js +1360 -0
- data/node_modules/acorn/dist/acorn_loose.js +1370 -0
- data/node_modules/acorn/dist/walk.es.js +342 -0
- data/node_modules/acorn/dist/walk.js +360 -0
- data/node_modules/acorn/package.json +46 -0
- data/node_modules/acorn/src/bin/acorn.js +60 -0
- data/node_modules/acorn/src/expression.js +798 -0
- data/node_modules/acorn/src/identifier.js +81 -0
- data/node_modules/acorn/src/index.js +77 -0
- data/node_modules/acorn/src/location.js +26 -0
- data/node_modules/acorn/src/locutil.js +42 -0
- data/node_modules/acorn/src/loose/expression.js +562 -0
- data/node_modules/acorn/src/loose/index.js +48 -0
- data/node_modules/acorn/src/loose/parseutil.js +1 -0
- data/node_modules/acorn/src/loose/state.js +161 -0
- data/node_modules/acorn/src/loose/statement.js +446 -0
- data/node_modules/acorn/src/loose/tokenize.js +108 -0
- data/node_modules/acorn/src/lval.js +219 -0
- data/node_modules/acorn/src/node.js +50 -0
- data/node_modules/acorn/src/options.js +128 -0
- data/node_modules/acorn/src/parseutil.js +117 -0
- data/node_modules/acorn/src/state.js +110 -0
- data/node_modules/acorn/src/statement.js +745 -0
- data/node_modules/acorn/src/tokencontext.js +110 -0
- data/node_modules/acorn/src/tokenize.js +697 -0
- data/node_modules/acorn/src/tokentype.js +147 -0
- data/node_modules/acorn/src/util.js +9 -0
- data/node_modules/acorn/src/walk/index.js +342 -0
- data/node_modules/acorn/src/whitespace.js +13 -0
- data/node_modules/ajv-keywords/LICENSE +21 -0
- data/node_modules/ajv-keywords/README.md +443 -0
- data/node_modules/ajv-keywords/index.js +35 -0
- data/node_modules/ajv-keywords/keywords/_formatLimit.js +92 -0
- data/node_modules/ajv-keywords/keywords/deepProperties.js +55 -0
- data/node_modules/ajv-keywords/keywords/deepRequired.js +57 -0
- data/node_modules/ajv-keywords/keywords/dot/_formatLimit.jst +116 -0
- data/node_modules/ajv-keywords/keywords/dot/patternRequired.jst +28 -0
- data/node_modules/ajv-keywords/keywords/dot/switch.jst +73 -0
- data/node_modules/ajv-keywords/keywords/dotjs/README.md +3 -0
- data/node_modules/ajv-keywords/keywords/dotjs/_formatLimit.js +176 -0
- data/node_modules/ajv-keywords/keywords/dotjs/patternRequired.js +52 -0
- data/node_modules/ajv-keywords/keywords/dotjs/switch.js +129 -0
- data/node_modules/ajv-keywords/keywords/dynamicDefaults.js +68 -0
- data/node_modules/ajv-keywords/keywords/formatMaximum.js +3 -0
- data/node_modules/ajv-keywords/keywords/formatMinimum.js +3 -0
- data/node_modules/ajv-keywords/keywords/if.js +21 -0
- data/node_modules/ajv-keywords/keywords/index.js +18 -0
- data/node_modules/ajv-keywords/keywords/instanceof.js +54 -0
- data/node_modules/ajv-keywords/keywords/patternRequired.js +24 -0
- data/node_modules/ajv-keywords/keywords/prohibited.js +25 -0
- data/node_modules/ajv-keywords/keywords/propertyNames.js +51 -0
- data/node_modules/ajv-keywords/keywords/range.js +39 -0
- data/node_modules/ajv-keywords/keywords/regexp.js +36 -0
- data/node_modules/ajv-keywords/keywords/switch.js +39 -0
- data/node_modules/ajv-keywords/keywords/typeof.js +32 -0
- data/node_modules/ajv-keywords/package.json +51 -0
- data/node_modules/ajv/.tonic_example.js +20 -0
- data/node_modules/ajv/LICENSE +22 -0
- data/node_modules/ajv/README.md +1211 -0
- data/node_modules/ajv/dist/ajv.bundle.js +8041 -0
- data/node_modules/ajv/dist/ajv.min.js +6 -0
- data/node_modules/ajv/dist/ajv.min.js.map +1 -0
- data/node_modules/ajv/dist/nodent.min.js +8 -0
- data/node_modules/ajv/dist/regenerator.min.js +36 -0
- data/node_modules/ajv/lib/ajv.d.ts +282 -0
- data/node_modules/ajv/lib/ajv.js +420 -0
- data/node_modules/ajv/lib/async.js +218 -0
- data/node_modules/ajv/lib/cache.js +26 -0
- data/node_modules/ajv/lib/compile/_rules.js +28 -0
- data/node_modules/ajv/lib/compile/equal.js +45 -0
- data/node_modules/ajv/lib/compile/formats.js +164 -0
- data/node_modules/ajv/lib/compile/index.js +390 -0
- data/node_modules/ajv/lib/compile/resolve.js +267 -0
- data/node_modules/ajv/lib/compile/rules.js +40 -0
- data/node_modules/ajv/lib/compile/schema_obj.js +9 -0
- data/node_modules/ajv/lib/compile/ucs2length.js +20 -0
- data/node_modules/ajv/lib/compile/util.js +257 -0
- data/node_modules/ajv/lib/compile/validation_error.js +14 -0
- data/node_modules/ajv/lib/dot/_limit.jst +49 -0
- data/node_modules/ajv/lib/dot/_limitItems.jst +10 -0
- data/node_modules/ajv/lib/dot/_limitLength.jst +10 -0
- data/node_modules/ajv/lib/dot/_limitProperties.jst +10 -0
- data/node_modules/ajv/lib/dot/allOf.jst +34 -0
- data/node_modules/ajv/lib/dot/anyOf.jst +48 -0
- data/node_modules/ajv/lib/dot/coerce.def +61 -0
- data/node_modules/ajv/lib/dot/custom.jst +188 -0
- data/node_modules/ajv/lib/dot/defaults.def +32 -0
- data/node_modules/ajv/lib/dot/definitions.def +182 -0
- data/node_modules/ajv/lib/dot/dependencies.jst +69 -0
- data/node_modules/ajv/lib/dot/enum.jst +30 -0
- data/node_modules/ajv/lib/dot/errors.def +185 -0
- data/node_modules/ajv/lib/dot/format.jst +100 -0
- data/node_modules/ajv/lib/dot/items.jst +101 -0
- data/node_modules/ajv/lib/dot/missing.def +34 -0
- data/node_modules/ajv/lib/dot/multipleOf.jst +20 -0
- data/node_modules/ajv/lib/dot/not.jst +43 -0
- data/node_modules/ajv/lib/dot/oneOf.jst +44 -0
- data/node_modules/ajv/lib/dot/pattern.jst +14 -0
- data/node_modules/ajv/lib/dot/properties.jst +319 -0
- data/node_modules/ajv/lib/dot/ref.jst +86 -0
- data/node_modules/ajv/lib/dot/required.jst +96 -0
- data/node_modules/ajv/lib/dot/uniqueItems.jst +38 -0
- data/node_modules/ajv/lib/dot/v5/_formatLimit.jst +116 -0
- data/node_modules/ajv/lib/dot/v5/constant.jst +10 -0
- data/node_modules/ajv/lib/dot/v5/patternRequired.jst +28 -0
- data/node_modules/ajv/lib/dot/v5/switch.jst +73 -0
- data/node_modules/ajv/lib/dot/validate.jst +210 -0
- data/node_modules/ajv/lib/dotjs/README.md +3 -0
- data/node_modules/ajv/lib/dotjs/_formatLimit.js +176 -0
- data/node_modules/ajv/lib/dotjs/_limit.js +124 -0
- data/node_modules/ajv/lib/dotjs/_limitItems.js +76 -0
- data/node_modules/ajv/lib/dotjs/_limitLength.js +81 -0
- data/node_modules/ajv/lib/dotjs/_limitProperties.js +76 -0
- data/node_modules/ajv/lib/dotjs/allOf.js +43 -0
- data/node_modules/ajv/lib/dotjs/anyOf.js +66 -0
- data/node_modules/ajv/lib/dotjs/constant.js +53 -0
- data/node_modules/ajv/lib/dotjs/custom.js +221 -0
- data/node_modules/ajv/lib/dotjs/dependencies.js +148 -0
- data/node_modules/ajv/lib/dotjs/enum.js +66 -0
- data/node_modules/ajv/lib/dotjs/format.js +139 -0
- data/node_modules/ajv/lib/dotjs/items.js +145 -0
- data/node_modules/ajv/lib/dotjs/multipleOf.js +77 -0
- data/node_modules/ajv/lib/dotjs/not.js +84 -0
- data/node_modules/ajv/lib/dotjs/oneOf.js +77 -0
- data/node_modules/ajv/lib/dotjs/pattern.js +75 -0
- data/node_modules/ajv/lib/dotjs/patternRequired.js +52 -0
- data/node_modules/ajv/lib/dotjs/properties.js +446 -0
- data/node_modules/ajv/lib/dotjs/ref.js +120 -0
- data/node_modules/ajv/lib/dotjs/required.js +250 -0
- data/node_modules/ajv/lib/dotjs/switch.js +129 -0
- data/node_modules/ajv/lib/dotjs/uniqueItems.js +72 -0
- data/node_modules/ajv/lib/dotjs/validate.js +376 -0
- data/node_modules/ajv/lib/keyword.js +129 -0
- data/node_modules/ajv/lib/refs/json-schema-draft-04.json +150 -0
- data/node_modules/ajv/lib/refs/json-schema-v5.json +328 -0
- data/node_modules/ajv/lib/v5.js +52 -0
- data/node_modules/ajv/package.json +101 -0
- data/node_modules/ajv/scripts/.eslintrc.yml +3 -0
- data/node_modules/ajv/scripts/bundle.js +54 -0
- data/node_modules/ajv/scripts/compile-dots.js +59 -0
- data/node_modules/ajv/scripts/info +10 -0
- data/node_modules/ajv/scripts/prepare-tests +9 -0
- data/node_modules/ajv/scripts/travis-gh-pages +21 -0
- data/node_modules/ansi-escapes/index.js +106 -0
- data/node_modules/ansi-escapes/license +21 -0
- data/node_modules/ansi-escapes/package.json +50 -0
- data/node_modules/ansi-escapes/readme.md +176 -0
- data/node_modules/ansi-regex/index.js +4 -0
- data/node_modules/ansi-regex/license +21 -0
- data/node_modules/ansi-regex/package.json +64 -0
- data/node_modules/ansi-regex/readme.md +39 -0
- data/node_modules/ansi-styles/index.js +65 -0
- data/node_modules/ansi-styles/license +21 -0
- data/node_modules/ansi-styles/package.json +50 -0
- data/node_modules/ansi-styles/readme.md +86 -0
- data/node_modules/argparse/CHANGELOG.md +179 -0
- data/node_modules/argparse/LICENSE +21 -0
- data/node_modules/argparse/README.md +253 -0
- data/node_modules/argparse/index.js +3 -0
- data/node_modules/argparse/lib/action.js +146 -0
- data/node_modules/argparse/lib/action/append.js +53 -0
- data/node_modules/argparse/lib/action/append/constant.js +47 -0
- data/node_modules/argparse/lib/action/count.js +40 -0
- data/node_modules/argparse/lib/action/help.js +47 -0
- data/node_modules/argparse/lib/action/store.js +50 -0
- data/node_modules/argparse/lib/action/store/constant.js +43 -0
- data/node_modules/argparse/lib/action/store/false.js +27 -0
- data/node_modules/argparse/lib/action/store/true.js +26 -0
- data/node_modules/argparse/lib/action/subparsers.js +149 -0
- data/node_modules/argparse/lib/action/version.js +47 -0
- data/node_modules/argparse/lib/action_container.js +482 -0
- data/node_modules/argparse/lib/argparse.js +14 -0
- data/node_modules/argparse/lib/argument/error.js +50 -0
- data/node_modules/argparse/lib/argument/exclusive.js +54 -0
- data/node_modules/argparse/lib/argument/group.js +75 -0
- data/node_modules/argparse/lib/argument_parser.js +1161 -0
- data/node_modules/argparse/lib/const.js +21 -0
- data/node_modules/argparse/lib/help/added_formatters.js +87 -0
- data/node_modules/argparse/lib/help/formatter.js +795 -0
- data/node_modules/argparse/lib/namespace.js +76 -0
- data/node_modules/argparse/lib/utils.js +57 -0
- data/node_modules/argparse/package.json +34 -0
- data/node_modules/array-union/index.js +6 -0
- data/node_modules/array-union/license +21 -0
- data/node_modules/array-union/package.json +40 -0
- data/node_modules/array-union/readme.md +28 -0
- data/node_modules/array-uniq/index.js +62 -0
- data/node_modules/array-uniq/license +21 -0
- data/node_modules/array-uniq/package.json +37 -0
- data/node_modules/array-uniq/readme.md +30 -0
- data/node_modules/arrify/index.js +8 -0
- data/node_modules/arrify/license +21 -0
- data/node_modules/arrify/package.json +33 -0
- data/node_modules/arrify/readme.md +36 -0
- data/node_modules/balanced-match/.npmignore +5 -0
- data/node_modules/balanced-match/LICENSE.md +21 -0
- data/node_modules/balanced-match/README.md +91 -0
- data/node_modules/balanced-match/index.js +58 -0
- data/node_modules/balanced-match/package.json +47 -0
- data/node_modules/brace-expansion/README.md +122 -0
- data/node_modules/brace-expansion/index.js +201 -0
- data/node_modules/brace-expansion/package.json +45 -0
- data/node_modules/buffer-shims/index.js +108 -0
- data/node_modules/buffer-shims/license.md +19 -0
- data/node_modules/buffer-shims/package.json +18 -0
- data/node_modules/buffer-shims/readme.md +21 -0
- data/node_modules/caller-path/index.js +6 -0
- data/node_modules/caller-path/package.json +41 -0
- data/node_modules/caller-path/readme.md +36 -0
- data/node_modules/callsites/index.js +8 -0
- data/node_modules/callsites/package.json +36 -0
- data/node_modules/callsites/readme.md +47 -0
- data/node_modules/chalk/index.js +116 -0
- data/node_modules/chalk/license +21 -0
- data/node_modules/chalk/package.json +70 -0
- data/node_modules/chalk/readme.md +213 -0
- data/node_modules/circular-json/.npmignore +7 -0
- data/node_modules/circular-json/.travis.yml +12 -0
- data/node_modules/circular-json/LICENSE.txt +19 -0
- data/node_modules/circular-json/README.md +135 -0
- data/node_modules/circular-json/build/circular-json.js +2 -0
- data/node_modules/circular-json/build/circular-json.max.js +189 -0
- data/node_modules/circular-json/build/circular-json.node.js +185 -0
- data/node_modules/circular-json/package.json +24 -0
- data/node_modules/circular-json/template/license.after +2 -0
- data/node_modules/circular-json/template/license.before +1 -0
- data/node_modules/cli-cursor/index.js +26 -0
- data/node_modules/cli-cursor/license +21 -0
- data/node_modules/cli-cursor/package.json +43 -0
- data/node_modules/cli-cursor/readme.md +40 -0
- data/node_modules/cli-width/.npmignore +1 -0
- data/node_modules/cli-width/.travis.yml +11 -0
- data/node_modules/cli-width/LICENSE +13 -0
- data/node_modules/cli-width/README.md +72 -0
- data/node_modules/cli-width/coverage/coverage.json +1 -0
- data/node_modules/cli-width/coverage/lcov-report/base.css +182 -0
- data/node_modules/cli-width/coverage/lcov-report/cli-width/index.html +73 -0
- data/node_modules/cli-width/coverage/lcov-report/cli-width/index.js.html +129 -0
- data/node_modules/cli-width/coverage/lcov-report/index.html +73 -0
- data/node_modules/cli-width/coverage/lcov-report/prettify.css +1 -0
- data/node_modules/cli-width/coverage/lcov-report/prettify.js +1 -0
- data/node_modules/cli-width/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- data/node_modules/cli-width/coverage/lcov-report/sorter.js +156 -0
- data/node_modules/cli-width/coverage/lcov.info +32 -0
- data/node_modules/cli-width/index.js +49 -0
- data/node_modules/cli-width/package.json +29 -0
- data/node_modules/co/History.md +172 -0
- data/node_modules/co/LICENSE +22 -0
- data/node_modules/co/Readme.md +212 -0
- data/node_modules/co/index.js +237 -0
- data/node_modules/co/package.json +34 -0
- data/node_modules/code-point-at/index.js +32 -0
- data/node_modules/code-point-at/license +21 -0
- data/node_modules/code-point-at/package.json +38 -0
- data/node_modules/code-point-at/readme.md +32 -0
- data/node_modules/commander/History.md +261 -0
- data/node_modules/commander/LICENSE +22 -0
- data/node_modules/commander/Readme.md +351 -0
- data/node_modules/commander/index.js +1110 -0
- data/node_modules/commander/package.json +33 -0
- data/node_modules/concat-map/.travis.yml +4 -0
- data/node_modules/concat-map/LICENSE +18 -0
- data/node_modules/concat-map/README.markdown +62 -0
- data/node_modules/concat-map/example/map.js +6 -0
- data/node_modules/concat-map/index.js +13 -0
- data/node_modules/concat-map/package.json +43 -0
- data/node_modules/concat-map/test/map.js +39 -0
- data/node_modules/concat-stream/LICENSE +24 -0
- data/node_modules/concat-stream/index.js +143 -0
- data/node_modules/concat-stream/node_modules/inherits/LICENSE +16 -0
- data/node_modules/concat-stream/node_modules/inherits/README.md +42 -0
- data/node_modules/concat-stream/node_modules/inherits/inherits.js +7 -0
- data/node_modules/concat-stream/node_modules/inherits/inherits_browser.js +23 -0
- data/node_modules/concat-stream/node_modules/inherits/package.json +29 -0
- data/node_modules/concat-stream/package.json +54 -0
- data/node_modules/concat-stream/readme.md +102 -0
- data/node_modules/core-util-is/LICENSE +19 -0
- data/node_modules/core-util-is/README.md +3 -0
- data/node_modules/core-util-is/float.patch +604 -0
- data/node_modules/core-util-is/lib/util.js +107 -0
- data/node_modules/core-util-is/package.json +32 -0
- data/node_modules/core-util-is/test.js +68 -0
- data/node_modules/d/.lint +11 -0
- data/node_modules/d/.npmignore +4 -0
- data/node_modules/d/.travis.yml +15 -0
- data/node_modules/d/CHANGES +13 -0
- data/node_modules/d/LICENSE +19 -0
- data/node_modules/d/README.md +104 -0
- data/node_modules/d/auto-bind.js +32 -0
- data/node_modules/d/index.js +63 -0
- data/node_modules/d/lazy.js +117 -0
- data/node_modules/d/package.json +34 -0
- data/node_modules/d/test/auto-bind.js +12 -0
- data/node_modules/d/test/index.js +182 -0
- data/node_modules/d/test/lazy.js +82 -0
- data/node_modules/debug/.coveralls.yml +1 -0
- data/node_modules/debug/.eslintrc +11 -0
- data/node_modules/debug/.npmignore +8 -0
- data/node_modules/debug/.travis.yml +14 -0
- data/node_modules/debug/CHANGELOG.md +330 -0
- data/node_modules/debug/LICENSE +19 -0
- data/node_modules/debug/Makefile +50 -0
- data/node_modules/debug/README.md +312 -0
- data/node_modules/debug/bower.json +29 -0
- data/node_modules/debug/component.json +19 -0
- data/node_modules/debug/karma.conf.js +70 -0
- data/node_modules/debug/node.js +1 -0
- data/node_modules/debug/package.json +49 -0
- data/node_modules/debug/src/browser.js +185 -0
- data/node_modules/debug/src/debug.js +202 -0
- data/node_modules/debug/src/index.js +10 -0
- data/node_modules/debug/src/node.js +241 -0
- data/node_modules/deep-is/.npmignore +1 -0
- data/node_modules/deep-is/.travis.yml +6 -0
- data/node_modules/deep-is/LICENSE +22 -0
- data/node_modules/deep-is/README.markdown +70 -0
- data/node_modules/deep-is/example/cmp.js +11 -0
- data/node_modules/deep-is/index.js +102 -0
- data/node_modules/deep-is/package.json +61 -0
- data/node_modules/deep-is/test/NaN.js +16 -0
- data/node_modules/deep-is/test/cmp.js +23 -0
- data/node_modules/deep-is/test/neg-vs-pos-0.js +15 -0
- data/node_modules/del/index.js +73 -0
- data/node_modules/del/license +21 -0
- data/node_modules/del/node_modules/.bin/rimraf +1 -0
- data/node_modules/del/package.json +61 -0
- data/node_modules/del/readme.md +106 -0
- data/node_modules/doctrine/CHANGELOG.md +70 -0
- data/node_modules/doctrine/LICENSE.BSD +22 -0
- data/node_modules/doctrine/LICENSE.closure-compiler +202 -0
- data/node_modules/doctrine/LICENSE.esprima +19 -0
- data/node_modules/doctrine/README.md +174 -0
- data/node_modules/doctrine/lib/doctrine.js +897 -0
- data/node_modules/doctrine/lib/typed.js +1283 -0
- data/node_modules/doctrine/lib/utility.js +35 -0
- data/node_modules/doctrine/package.json +65 -0
- data/node_modules/es5-ext/.lint +39 -0
- data/node_modules/es5-ext/.lintignore +9 -0
- data/node_modules/es5-ext/.npmignore +4 -0
- data/node_modules/es5-ext/.travis.yml +16 -0
- data/node_modules/es5-ext/CHANGES +646 -0
- data/node_modules/es5-ext/LICENSE +21 -0
- data/node_modules/es5-ext/README.md +993 -0
- data/node_modules/es5-ext/array/#/@@iterator/implement.js +6 -0
- data/node_modules/es5-ext/array/#/@@iterator/index.js +4 -0
- data/node_modules/es5-ext/array/#/@@iterator/is-implemented.js +16 -0
- data/node_modules/es5-ext/array/#/@@iterator/shim.js +3 -0
- data/node_modules/es5-ext/array/#/_compare-by-length.js +9 -0
- data/node_modules/es5-ext/array/#/binary-search.js +28 -0
- data/node_modules/es5-ext/array/#/clear.js +12 -0
- data/node_modules/es5-ext/array/#/compact.js +9 -0
- data/node_modules/es5-ext/array/#/concat/implement.js +6 -0
- data/node_modules/es5-ext/array/#/concat/index.js +4 -0
- data/node_modules/es5-ext/array/#/concat/is-implemented.js +7 -0
- data/node_modules/es5-ext/array/#/concat/shim.js +44 -0
- data/node_modules/es5-ext/array/#/contains.js +7 -0
- data/node_modules/es5-ext/array/#/copy-within/implement.js +7 -0
- data/node_modules/es5-ext/array/#/copy-within/index.js +4 -0
- data/node_modules/es5-ext/array/#/copy-within/is-implemented.js +7 -0
- data/node_modules/es5-ext/array/#/copy-within/shim.js +39 -0
- data/node_modules/es5-ext/array/#/diff.js +13 -0
- data/node_modules/es5-ext/array/#/e-index-of.js +29 -0
- data/node_modules/es5-ext/array/#/e-last-index-of.js +29 -0
- data/node_modules/es5-ext/array/#/entries/implement.js +6 -0
- data/node_modules/es5-ext/array/#/entries/index.js +4 -0
- data/node_modules/es5-ext/array/#/entries/is-implemented.js +15 -0
- data/node_modules/es5-ext/array/#/entries/shim.js +4 -0
- data/node_modules/es5-ext/array/#/exclusion.js +27 -0
- data/node_modules/es5-ext/array/#/fill/implement.js +6 -0
- data/node_modules/es5-ext/array/#/fill/index.js +4 -0
- data/node_modules/es5-ext/array/#/fill/is-implemented.js +7 -0
- data/node_modules/es5-ext/array/#/fill/shim.js +21 -0
- data/node_modules/es5-ext/array/#/filter/implement.js +6 -0
- data/node_modules/es5-ext/array/#/filter/index.js +4 -0
- data/node_modules/es5-ext/array/#/filter/is-implemented.js +9 -0
- data/node_modules/es5-ext/array/#/filter/shim.js +22 -0
- data/node_modules/es5-ext/array/#/find-index/implement.js +7 -0
- data/node_modules/es5-ext/array/#/find-index/index.js +4 -0
- data/node_modules/es5-ext/array/#/find-index/is-implemented.js +9 -0
- data/node_modules/es5-ext/array/#/find-index/shim.js +20 -0
- data/node_modules/es5-ext/array/#/find/implement.js +6 -0
- data/node_modules/es5-ext/array/#/find/index.js +4 -0
- data/node_modules/es5-ext/array/#/find/is-implemented.js +9 -0
- data/node_modules/es5-ext/array/#/find/shim.js +8 -0
- data/node_modules/es5-ext/array/#/first-index.js +16 -0
- data/node_modules/es5-ext/array/#/first.js +9 -0
- data/node_modules/es5-ext/array/#/flatten.js +39 -0
- data/node_modules/es5-ext/array/#/for-each-right.js +20 -0
- data/node_modules/es5-ext/array/#/group.js +23 -0
- data/node_modules/es5-ext/array/#/index.js +40 -0
- data/node_modules/es5-ext/array/#/indexes-of.js +12 -0
- data/node_modules/es5-ext/array/#/intersection.js +19 -0
- data/node_modules/es5-ext/array/#/is-copy.js +21 -0
- data/node_modules/es5-ext/array/#/is-uniq.js +12 -0
- data/node_modules/es5-ext/array/#/keys/implement.js +6 -0
- data/node_modules/es5-ext/array/#/keys/index.js +4 -0
- data/node_modules/es5-ext/array/#/keys/is-implemented.js +14 -0
- data/node_modules/es5-ext/array/#/keys/shim.js +4 -0
- data/node_modules/es5-ext/array/#/last-index.js +16 -0
- data/node_modules/es5-ext/array/#/last.js +9 -0
- data/node_modules/es5-ext/array/#/map/implement.js +6 -0
- data/node_modules/es5-ext/array/#/map/index.js +4 -0
- data/node_modules/es5-ext/array/#/map/is-implemented.js +8 -0
- data/node_modules/es5-ext/array/#/map/shim.js +21 -0
- data/node_modules/es5-ext/array/#/remove.js +12 -0
- data/node_modules/es5-ext/array/#/separate.js +10 -0
- data/node_modules/es5-ext/array/#/slice/implement.js +6 -0
- data/node_modules/es5-ext/array/#/slice/index.js +4 -0
- data/node_modules/es5-ext/array/#/slice/is-implemented.js +7 -0
- data/node_modules/es5-ext/array/#/slice/shim.js +35 -0
- data/node_modules/es5-ext/array/#/some-right.js +23 -0
- data/node_modules/es5-ext/array/#/splice/implement.js +6 -0
- data/node_modules/es5-ext/array/#/splice/index.js +4 -0
- data/node_modules/es5-ext/array/#/splice/is-implemented.js +7 -0
- data/node_modules/es5-ext/array/#/splice/shim.js +14 -0
- data/node_modules/es5-ext/array/#/uniq.js +13 -0
- data/node_modules/es5-ext/array/#/values/implement.js +6 -0
- data/node_modules/es5-ext/array/#/values/index.js +3 -0
- data/node_modules/es5-ext/array/#/values/is-implemented.js +14 -0
- data/node_modules/es5-ext/array/#/values/shim.js +4 -0
- data/node_modules/es5-ext/array/_is-extensible.js +13 -0
- data/node_modules/es5-ext/array/_sub-array-dummy-safe.js +23 -0
- data/node_modules/es5-ext/array/_sub-array-dummy.js +16 -0
- data/node_modules/es5-ext/array/from/implement.js +6 -0
- data/node_modules/es5-ext/array/from/index.js +5 -0
- data/node_modules/es5-ext/array/from/is-implemented.js +9 -0
- data/node_modules/es5-ext/array/from/shim.js +106 -0
- data/node_modules/es5-ext/array/generate.js +20 -0
- data/node_modules/es5-ext/array/index.js +11 -0
- data/node_modules/es5-ext/array/is-plain-array.js +11 -0
- data/node_modules/es5-ext/array/of/implement.js +6 -0
- data/node_modules/es5-ext/array/of/index.js +5 -0
- data/node_modules/es5-ext/array/of/is-implemented.js +8 -0
- data/node_modules/es5-ext/array/of/shim.js +19 -0
- data/node_modules/es5-ext/array/to-array.js +9 -0
- data/node_modules/es5-ext/array/valid-array.js +8 -0
- data/node_modules/es5-ext/boolean/index.js +5 -0
- data/node_modules/es5-ext/boolean/is-boolean.js +10 -0
- data/node_modules/es5-ext/date/#/copy.js +5 -0
- data/node_modules/es5-ext/date/#/days-in-month.js +17 -0
- data/node_modules/es5-ext/date/#/floor-day.js +8 -0
- data/node_modules/es5-ext/date/#/floor-month.js +8 -0
- data/node_modules/es5-ext/date/#/floor-year.js +8 -0
- data/node_modules/es5-ext/date/#/format.js +21 -0
- data/node_modules/es5-ext/date/#/index.js +10 -0
- data/node_modules/es5-ext/date/index.js +7 -0
- data/node_modules/es5-ext/date/is-date.js +9 -0
- data/node_modules/es5-ext/date/valid-date.js +8 -0
- data/node_modules/es5-ext/error/#/index.js +5 -0
- data/node_modules/es5-ext/error/#/throw.js +5 -0
- data/node_modules/es5-ext/error/custom.js +19 -0
- data/node_modules/es5-ext/error/index.js +8 -0
- data/node_modules/es5-ext/error/is-error.js +9 -0
- data/node_modules/es5-ext/error/valid-error.js +8 -0
- data/node_modules/es5-ext/function/#/compose.js +20 -0
- data/node_modules/es5-ext/function/#/copy.js +15 -0
- data/node_modules/es5-ext/function/#/curry.js +24 -0
- data/node_modules/es5-ext/function/#/index.js +12 -0
- data/node_modules/es5-ext/function/#/lock.js +12 -0
- data/node_modules/es5-ext/function/#/not.js +14 -0
- data/node_modules/es5-ext/function/#/partial.js +16 -0
- data/node_modules/es5-ext/function/#/spread.js +10 -0
- data/node_modules/es5-ext/function/#/to-string-tokens.js +11 -0
- data/node_modules/es5-ext/function/_define-length.js +44 -0
- data/node_modules/es5-ext/function/constant.js +5 -0
- data/node_modules/es5-ext/function/identity.js +3 -0
- data/node_modules/es5-ext/function/index.js +15 -0
- data/node_modules/es5-ext/function/invoke.js +15 -0
- data/node_modules/es5-ext/function/is-arguments.js +7 -0
- data/node_modules/es5-ext/function/is-function.js +9 -0
- data/node_modules/es5-ext/function/noop.js +3 -0
- data/node_modules/es5-ext/function/pluck.js +7 -0
- data/node_modules/es5-ext/function/valid-function.js +8 -0
- data/node_modules/es5-ext/global.js +3 -0
- data/node_modules/es5-ext/index.js +18 -0
- data/node_modules/es5-ext/iterable/for-each.js +12 -0
- data/node_modules/es5-ext/iterable/index.js +8 -0
- data/node_modules/es5-ext/iterable/is.js +10 -0
- data/node_modules/es5-ext/iterable/validate-object.js +9 -0
- data/node_modules/es5-ext/iterable/validate.js +8 -0
- data/node_modules/es5-ext/json/index.js +5 -0
- data/node_modules/es5-ext/json/safe-stringify.js +26 -0
- data/node_modules/es5-ext/math/_pack-ieee754.js +82 -0
- data/node_modules/es5-ext/math/_unpack-ieee754.js +33 -0
- data/node_modules/es5-ext/math/acosh/implement.js +6 -0
- data/node_modules/es5-ext/math/acosh/index.js +5 -0
- data/node_modules/es5-ext/math/acosh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/acosh/shim.js +12 -0
- data/node_modules/es5-ext/math/asinh/implement.js +6 -0
- data/node_modules/es5-ext/math/asinh/index.js +5 -0
- data/node_modules/es5-ext/math/asinh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/asinh/shim.js +15 -0
- data/node_modules/es5-ext/math/atanh/implement.js +6 -0
- data/node_modules/es5-ext/math/atanh/index.js +5 -0
- data/node_modules/es5-ext/math/atanh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/atanh/shim.js +14 -0
- data/node_modules/es5-ext/math/cbrt/implement.js +6 -0
- data/node_modules/es5-ext/math/cbrt/index.js +5 -0
- data/node_modules/es5-ext/math/cbrt/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/cbrt/shim.js +12 -0
- data/node_modules/es5-ext/math/clz32/implement.js +6 -0
- data/node_modules/es5-ext/math/clz32/index.js +5 -0
- data/node_modules/es5-ext/math/clz32/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/clz32/shim.js +6 -0
- data/node_modules/es5-ext/math/cosh/implement.js +6 -0
- data/node_modules/es5-ext/math/cosh/index.js +5 -0
- data/node_modules/es5-ext/math/cosh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/cosh/shim.js +11 -0
- data/node_modules/es5-ext/math/expm1/implement.js +6 -0
- data/node_modules/es5-ext/math/expm1/index.js +5 -0
- data/node_modules/es5-ext/math/expm1/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/expm1/shim.js +16 -0
- data/node_modules/es5-ext/math/fround/implement.js +6 -0
- data/node_modules/es5-ext/math/fround/index.js +5 -0
- data/node_modules/es5-ext/math/fround/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/fround/shim.js +33 -0
- data/node_modules/es5-ext/math/hypot/implement.js +6 -0
- data/node_modules/es5-ext/math/hypot/index.js +5 -0
- data/node_modules/es5-ext/math/hypot/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/hypot/shim.js +34 -0
- data/node_modules/es5-ext/math/imul/implement.js +6 -0
- data/node_modules/es5-ext/math/imul/index.js +5 -0
- data/node_modules/es5-ext/math/imul/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/imul/shim.js +13 -0
- data/node_modules/es5-ext/math/index.js +21 -0
- data/node_modules/es5-ext/math/log10/implement.js +6 -0
- data/node_modules/es5-ext/math/log10/index.js +5 -0
- data/node_modules/es5-ext/math/log10/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/log10/shim.js +14 -0
- data/node_modules/es5-ext/math/log1p/implement.js +6 -0
- data/node_modules/es5-ext/math/log1p/index.js +5 -0
- data/node_modules/es5-ext/math/log1p/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/log1p/shim.js +17 -0
- data/node_modules/es5-ext/math/log2/implement.js +6 -0
- data/node_modules/es5-ext/math/log2/index.js +5 -0
- data/node_modules/es5-ext/math/log2/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/log2/shim.js +14 -0
- data/node_modules/es5-ext/math/sign/implement.js +6 -0
- data/node_modules/es5-ext/math/sign/index.js +5 -0
- data/node_modules/es5-ext/math/sign/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/sign/shim.js +7 -0
- data/node_modules/es5-ext/math/sinh/implement.js +6 -0
- data/node_modules/es5-ext/math/sinh/index.js +5 -0
- data/node_modules/es5-ext/math/sinh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/sinh/shim.js +17 -0
- data/node_modules/es5-ext/math/tanh/implement.js +6 -0
- data/node_modules/es5-ext/math/tanh/index.js +5 -0
- data/node_modules/es5-ext/math/tanh/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/tanh/shim.js +17 -0
- data/node_modules/es5-ext/math/trunc/implement.js +6 -0
- data/node_modules/es5-ext/math/trunc/index.js +5 -0
- data/node_modules/es5-ext/math/trunc/is-implemented.js +7 -0
- data/node_modules/es5-ext/math/trunc/shim.js +13 -0
- data/node_modules/es5-ext/number/#/index.js +5 -0
- data/node_modules/es5-ext/number/#/pad.js +15 -0
- data/node_modules/es5-ext/number/epsilon/implement.js +6 -0
- data/node_modules/es5-ext/number/epsilon/index.js +3 -0
- data/node_modules/es5-ext/number/epsilon/is-implemented.js +5 -0
- data/node_modules/es5-ext/number/index.js +17 -0
- data/node_modules/es5-ext/number/is-finite/implement.js +6 -0
- data/node_modules/es5-ext/number/is-finite/index.js +5 -0
- data/node_modules/es5-ext/number/is-finite/is-implemented.js +7 -0
- data/node_modules/es5-ext/number/is-finite/shim.js +5 -0
- data/node_modules/es5-ext/number/is-integer/implement.js +6 -0
- data/node_modules/es5-ext/number/is-integer/index.js +5 -0
- data/node_modules/es5-ext/number/is-integer/is-implemented.js +7 -0
- data/node_modules/es5-ext/number/is-integer/shim.js +8 -0
- data/node_modules/es5-ext/number/is-nan/implement.js +6 -0
- data/node_modules/es5-ext/number/is-nan/index.js +5 -0
- data/node_modules/es5-ext/number/is-nan/is-implemented.js +7 -0
- data/node_modules/es5-ext/number/is-nan/shim.js +3 -0
- data/node_modules/es5-ext/number/is-natural.js +5 -0
- data/node_modules/es5-ext/number/is-number.js +11 -0
- data/node_modules/es5-ext/number/is-safe-integer/implement.js +6 -0
- data/node_modules/es5-ext/number/is-safe-integer/index.js +5 -0
- data/node_modules/es5-ext/number/is-safe-integer/is-implemented.js +8 -0
- data/node_modules/es5-ext/number/is-safe-integer/shim.js +11 -0
- data/node_modules/es5-ext/number/max-safe-integer/implement.js +6 -0
- data/node_modules/es5-ext/number/max-safe-integer/index.js +3 -0
- data/node_modules/es5-ext/number/max-safe-integer/is-implemented.js +5 -0
- data/node_modules/es5-ext/number/min-safe-integer/implement.js +6 -0
- data/node_modules/es5-ext/number/min-safe-integer/index.js +3 -0
- data/node_modules/es5-ext/number/min-safe-integer/is-implemented.js +5 -0
- data/node_modules/es5-ext/number/to-integer.js +12 -0
- data/node_modules/es5-ext/number/to-pos-integer.js +7 -0
- data/node_modules/es5-ext/number/to-uint32.js +3 -0
- data/node_modules/es5-ext/object/_iterate.js +29 -0
- data/node_modules/es5-ext/object/assign/implement.js +6 -0
- data/node_modules/es5-ext/object/assign/index.js +5 -0
- data/node_modules/es5-ext/object/assign/is-implemented.js +9 -0
- data/node_modules/es5-ext/object/assign/shim.js +22 -0
- data/node_modules/es5-ext/object/clear.js +16 -0
- data/node_modules/es5-ext/object/compact.js +7 -0
- data/node_modules/es5-ext/object/compare.js +42 -0
- data/node_modules/es5-ext/object/copy-deep.js +38 -0
- data/node_modules/es5-ext/object/copy.js +10 -0
- data/node_modules/es5-ext/object/count.js +5 -0
- data/node_modules/es5-ext/object/create.js +36 -0
- data/node_modules/es5-ext/object/ensure-natural-number-value.js +8 -0
- data/node_modules/es5-ext/object/ensure-natural-number.js +9 -0
- data/node_modules/es5-ext/object/eq.js +5 -0
- data/node_modules/es5-ext/object/every.js +3 -0
- data/node_modules/es5-ext/object/filter.js +15 -0
- data/node_modules/es5-ext/object/find-key.js +3 -0
- data/node_modules/es5-ext/object/find.js +8 -0
- data/node_modules/es5-ext/object/first-key.js +14 -0
- data/node_modules/es5-ext/object/flatten.js +17 -0
- data/node_modules/es5-ext/object/for-each.js +3 -0
- data/node_modules/es5-ext/object/get-property-names.js +18 -0
- data/node_modules/es5-ext/object/index.js +54 -0
- data/node_modules/es5-ext/object/is-array-like.js +14 -0
- data/node_modules/es5-ext/object/is-callable.js +5 -0
- data/node_modules/es5-ext/object/is-copy-deep.js +58 -0
- data/node_modules/es5-ext/object/is-copy.js +24 -0
- data/node_modules/es5-ext/object/is-empty.js +14 -0
- data/node_modules/es5-ext/object/is-number-value.js +3 -0
- data/node_modules/es5-ext/object/is-object.js +7 -0
- data/node_modules/es5-ext/object/is-plain-object.js +20 -0
- data/node_modules/es5-ext/object/is-value.js +5 -0
- data/node_modules/es5-ext/object/is.js +10 -0
- data/node_modules/es5-ext/object/key-of.js +15 -0
- data/node_modules/es5-ext/object/keys/implement.js +6 -0
- data/node_modules/es5-ext/object/keys/index.js +5 -0
- data/node_modules/es5-ext/object/keys/is-implemented.js +8 -0
- data/node_modules/es5-ext/object/keys/shim.js +7 -0
- data/node_modules/es5-ext/object/map-keys.js +15 -0
- data/node_modules/es5-ext/object/map.js +15 -0
- data/node_modules/es5-ext/object/mixin-prototypes.js +34 -0
- data/node_modules/es5-ext/object/mixin.js +27 -0
- data/node_modules/es5-ext/object/normalize-options.js +17 -0
- data/node_modules/es5-ext/object/primitive-set.js +9 -0
- data/node_modules/es5-ext/object/safe-traverse.js +15 -0
- data/node_modules/es5-ext/object/serialize.js +36 -0
- data/node_modules/es5-ext/object/set-prototype-of/implement.js +8 -0
- data/node_modules/es5-ext/object/set-prototype-of/index.js +5 -0
- data/node_modules/es5-ext/object/set-prototype-of/is-implemented.js +11 -0
- data/node_modules/es5-ext/object/set-prototype-of/shim.js +73 -0
- data/node_modules/es5-ext/object/some.js +3 -0
- data/node_modules/es5-ext/object/to-array.js +18 -0
- data/node_modules/es5-ext/object/unserialize.js +7 -0
- data/node_modules/es5-ext/object/valid-callable.js +6 -0
- data/node_modules/es5-ext/object/valid-object.js +8 -0
- data/node_modules/es5-ext/object/valid-value.js +6 -0
- data/node_modules/es5-ext/object/validate-array-like-object.js +9 -0
- data/node_modules/es5-ext/object/validate-array-like.js +8 -0
- data/node_modules/es5-ext/object/validate-stringifiable-value.js +6 -0
- data/node_modules/es5-ext/object/validate-stringifiable.js +9 -0
- data/node_modules/es5-ext/package.json +43 -0
- data/node_modules/es5-ext/reg-exp/#/index.js +10 -0
- data/node_modules/es5-ext/reg-exp/#/is-sticky.js +9 -0
- data/node_modules/es5-ext/reg-exp/#/is-unicode.js +9 -0
- data/node_modules/es5-ext/reg-exp/#/match/implement.js +6 -0
- data/node_modules/es5-ext/reg-exp/#/match/index.js +5 -0
- data/node_modules/es5-ext/reg-exp/#/match/is-implemented.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/match/shim.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/replace/implement.js +6 -0
- data/node_modules/es5-ext/reg-exp/#/replace/index.js +5 -0
- data/node_modules/es5-ext/reg-exp/#/replace/is-implemented.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/replace/shim.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/search/implement.js +6 -0
- data/node_modules/es5-ext/reg-exp/#/search/index.js +5 -0
- data/node_modules/es5-ext/reg-exp/#/search/is-implemented.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/search/shim.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/split/implement.js +6 -0
- data/node_modules/es5-ext/reg-exp/#/split/index.js +5 -0
- data/node_modules/es5-ext/reg-exp/#/split/is-implemented.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/split/shim.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/sticky/implement.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/sticky/is-implemented.js +10 -0
- data/node_modules/es5-ext/reg-exp/#/unicode/implement.js +8 -0
- data/node_modules/es5-ext/reg-exp/#/unicode/is-implemented.js +10 -0
- data/node_modules/es5-ext/reg-exp/escape.js +9 -0
- data/node_modules/es5-ext/reg-exp/index.js +8 -0
- data/node_modules/es5-ext/reg-exp/is-reg-exp.js +9 -0
- data/node_modules/es5-ext/reg-exp/valid-reg-exp.js +8 -0
- data/node_modules/es5-ext/string/#/@@iterator/implement.js +6 -0
- data/node_modules/es5-ext/string/#/@@iterator/index.js +4 -0
- data/node_modules/es5-ext/string/#/@@iterator/is-implemented.js +16 -0
- data/node_modules/es5-ext/string/#/@@iterator/shim.js +6 -0
- data/node_modules/es5-ext/string/#/at.js +33 -0
- data/node_modules/es5-ext/string/#/camel-to-hyphen.js +10 -0
- data/node_modules/es5-ext/string/#/capitalize.js +8 -0
- data/node_modules/es5-ext/string/#/case-insensitive-compare.js +7 -0
- data/node_modules/es5-ext/string/#/code-point-at/implement.js +7 -0
- data/node_modules/es5-ext/string/#/code-point-at/index.js +5 -0
- data/node_modules/es5-ext/string/#/code-point-at/is-implemented.js +8 -0
- data/node_modules/es5-ext/string/#/code-point-at/shim.js +26 -0
- data/node_modules/es5-ext/string/#/contains/implement.js +7 -0
- data/node_modules/es5-ext/string/#/contains/index.js +5 -0
- data/node_modules/es5-ext/string/#/contains/is-implemented.js +8 -0
- data/node_modules/es5-ext/string/#/contains/shim.js +7 -0
- data/node_modules/es5-ext/string/#/ends-with/implement.js +7 -0
- data/node_modules/es5-ext/string/#/ends-with/index.js +5 -0
- data/node_modules/es5-ext/string/#/ends-with/is-implemented.js +8 -0
- data/node_modules/es5-ext/string/#/ends-with/shim.js +16 -0
- data/node_modules/es5-ext/string/#/hyphen-to-camel.js +8 -0
- data/node_modules/es5-ext/string/#/indent.js +12 -0
- data/node_modules/es5-ext/string/#/index.js +22 -0
- data/node_modules/es5-ext/string/#/last.js +8 -0
- data/node_modules/es5-ext/string/#/normalize/_data.js +69 -0
- data/node_modules/es5-ext/string/#/normalize/implement.js +7 -0
- data/node_modules/es5-ext/string/#/normalize/index.js +5 -0
- data/node_modules/es5-ext/string/#/normalize/is-implemented.js +8 -0
- data/node_modules/es5-ext/string/#/normalize/shim.js +289 -0
- data/node_modules/es5-ext/string/#/pad.js +18 -0
- data/node_modules/es5-ext/string/#/plain-replace-all.js +16 -0
- data/node_modules/es5-ext/string/#/plain-replace.js +10 -0
- data/node_modules/es5-ext/string/#/repeat/implement.js +7 -0
- data/node_modules/es5-ext/string/#/repeat/index.js +5 -0
- data/node_modules/es5-ext/string/#/repeat/is-implemented.js +8 -0
- data/node_modules/es5-ext/string/#/repeat/shim.js +22 -0
- data/node_modules/es5-ext/string/#/starts-with/implement.js +7 -0
- data/node_modules/es5-ext/string/#/starts-with/index.js +5 -0
- data/node_modules/es5-ext/string/#/starts-with/is-implemented.js +9 -0
- data/node_modules/es5-ext/string/#/starts-with/shim.js +12 -0
- data/node_modules/es5-ext/string/#/uncapitalize.js +8 -0
- data/node_modules/es5-ext/string/format-method.js +24 -0
- data/node_modules/es5-ext/string/from-code-point/implement.js +6 -0
- data/node_modules/es5-ext/string/from-code-point/index.js +5 -0
- data/node_modules/es5-ext/string/from-code-point/is-implemented.js +7 -0
- data/node_modules/es5-ext/string/from-code-point/shim.js +30 -0
- data/node_modules/es5-ext/string/index.js +10 -0
- data/node_modules/es5-ext/string/is-string.js +10 -0
- data/node_modules/es5-ext/string/random-uniq.js +11 -0
- data/node_modules/es5-ext/string/raw/implement.js +6 -0
- data/node_modules/es5-ext/string/raw/index.js +5 -0
- data/node_modules/es5-ext/string/raw/is-implemented.js +9 -0
- data/node_modules/es5-ext/string/raw/shim.js +15 -0
- data/node_modules/es5-ext/test/__tad.js +3 -0
- data/node_modules/es5-ext/test/array/#/@@iterator/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/@@iterator/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/@@iterator/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/@@iterator/shim.js +9 -0
- data/node_modules/es5-ext/test/array/#/_compare-by-length.js +7 -0
- data/node_modules/es5-ext/test/array/#/binary-search.js +15 -0
- data/node_modules/es5-ext/test/array/#/clear.js +7 -0
- data/node_modules/es5-ext/test/array/#/compact.js +17 -0
- data/node_modules/es5-ext/test/array/#/concat/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/concat/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/concat/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/concat/shim.js +26 -0
- data/node_modules/es5-ext/test/array/#/contains.js +21 -0
- data/node_modules/es5-ext/test/array/#/copy-within/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/copy-within/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/copy-within/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/copy-within/shim.js +29 -0
- data/node_modules/es5-ext/test/array/#/diff.js +17 -0
- data/node_modules/es5-ext/test/array/#/e-index-of.js +13 -0
- data/node_modules/es5-ext/test/array/#/e-last-index-of.js +12 -0
- data/node_modules/es5-ext/test/array/#/entries/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/entries/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/entries/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/entries/shim.js +9 -0
- data/node_modules/es5-ext/test/array/#/exclusion.js +15 -0
- data/node_modules/es5-ext/test/array/#/fill/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/fill/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/fill/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/fill/shim.js +18 -0
- data/node_modules/es5-ext/test/array/#/filter/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/filter/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/filter/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/filter/shim.js +17 -0
- data/node_modules/es5-ext/test/array/#/find-index/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/find-index/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/find-index/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/find-index/shim.js +17 -0
- data/node_modules/es5-ext/test/array/#/find/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/find/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/find/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/find/shim.js +17 -0
- data/node_modules/es5-ext/test/array/#/first-index.js +17 -0
- data/node_modules/es5-ext/test/array/#/first.js +13 -0
- data/node_modules/es5-ext/test/array/#/flatten.js +14 -0
- data/node_modules/es5-ext/test/array/#/for-each-right.js +36 -0
- data/node_modules/es5-ext/test/array/#/group.js +24 -0
- data/node_modules/es5-ext/test/array/#/indexes-of.js +14 -0
- data/node_modules/es5-ext/test/array/#/intersection.js +24 -0
- data/node_modules/es5-ext/test/array/#/is-copy.js +13 -0
- data/node_modules/es5-ext/test/array/#/is-uniq.js +11 -0
- data/node_modules/es5-ext/test/array/#/keys/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/keys/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/keys/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/keys/shim.js +9 -0
- data/node_modules/es5-ext/test/array/#/last-index.js +17 -0
- data/node_modules/es5-ext/test/array/#/last.js +15 -0
- data/node_modules/es5-ext/test/array/#/map/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/map/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/map/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/map/shim.js +19 -0
- data/node_modules/es5-ext/test/array/#/remove.js +14 -0
- data/node_modules/es5-ext/test/array/#/separate.js +15 -0
- data/node_modules/es5-ext/test/array/#/slice/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/slice/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/slice/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/slice/shim.js +17 -0
- data/node_modules/es5-ext/test/array/#/some-right.js +43 -0
- data/node_modules/es5-ext/test/array/#/splice/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/splice/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/splice/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/splice/shim.js +19 -0
- data/node_modules/es5-ext/test/array/#/uniq.js +14 -0
- data/node_modules/es5-ext/test/array/#/values/implement.js +5 -0
- data/node_modules/es5-ext/test/array/#/values/index.js +3 -0
- data/node_modules/es5-ext/test/array/#/values/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/#/values/shim.js +9 -0
- data/node_modules/es5-ext/test/array/__scopes.js +11 -0
- data/node_modules/es5-ext/test/array/_is-extensible.js +5 -0
- data/node_modules/es5-ext/test/array/_sub-array-dummy-safe.js +7 -0
- data/node_modules/es5-ext/test/array/_sub-array-dummy.js +7 -0
- data/node_modules/es5-ext/test/array/from/implement.js +5 -0
- data/node_modules/es5-ext/test/array/from/index.js +3 -0
- data/node_modules/es5-ext/test/array/from/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/from/shim.js +60 -0
- data/node_modules/es5-ext/test/array/generate.js +10 -0
- data/node_modules/es5-ext/test/array/is-plain-array.js +18 -0
- data/node_modules/es5-ext/test/array/of/implement.js +5 -0
- data/node_modules/es5-ext/test/array/of/index.js +3 -0
- data/node_modules/es5-ext/test/array/of/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/array/of/shim.js +68 -0
- data/node_modules/es5-ext/test/array/to-array.js +13 -0
- data/node_modules/es5-ext/test/array/valid-array.js +14 -0
- data/node_modules/es5-ext/test/boolean/is-boolean.js +12 -0
- data/node_modules/es5-ext/test/date/#/copy.js +10 -0
- data/node_modules/es5-ext/test/date/#/days-in-month.js +17 -0
- data/node_modules/es5-ext/test/date/#/floor-day.js +6 -0
- data/node_modules/es5-ext/test/date/#/floor-month.js +6 -0
- data/node_modules/es5-ext/test/date/#/floor-year.js +6 -0
- data/node_modules/es5-ext/test/date/#/format.js +6 -0
- data/node_modules/es5-ext/test/date/is-date.js +10 -0
- data/node_modules/es5-ext/test/date/valid-date.js +12 -0
- data/node_modules/es5-ext/test/error/#/throw.js +10 -0
- data/node_modules/es5-ext/test/error/custom.js +12 -0
- data/node_modules/es5-ext/test/error/is-error.js +16 -0
- data/node_modules/es5-ext/test/error/valid-error.js +9 -0
- data/node_modules/es5-ext/test/function/#/compose.js +9 -0
- data/node_modules/es5-ext/test/function/#/copy.js +19 -0
- data/node_modules/es5-ext/test/function/#/curry.js +18 -0
- data/node_modules/es5-ext/test/function/#/lock.js +7 -0
- data/node_modules/es5-ext/test/function/#/not.js +11 -0
- data/node_modules/es5-ext/test/function/#/partial.js +9 -0
- data/node_modules/es5-ext/test/function/#/spread.js +8 -0
- data/node_modules/es5-ext/test/function/#/to-string-tokens.js +12 -0
- data/node_modules/es5-ext/test/function/_define-length.js +12 -0
- data/node_modules/es5-ext/test/function/constant.js +7 -0
- data/node_modules/es5-ext/test/function/identity.js +7 -0
- data/node_modules/es5-ext/test/function/invoke.js +9 -0
- data/node_modules/es5-ext/test/function/is-arguments.js +11 -0
- data/node_modules/es5-ext/test/function/is-function.js +8 -0
- data/node_modules/es5-ext/test/function/noop.js +5 -0
- data/node_modules/es5-ext/test/function/pluck.js +7 -0
- data/node_modules/es5-ext/test/function/valid-function.js +17 -0
- data/node_modules/es5-ext/test/global.js +5 -0
- data/node_modules/es5-ext/test/iterable/for-each.js +40 -0
- data/node_modules/es5-ext/test/iterable/is.js +20 -0
- data/node_modules/es5-ext/test/iterable/validate-object.js +20 -0
- data/node_modules/es5-ext/test/iterable/validate.js +20 -0
- data/node_modules/es5-ext/test/json/safe-stringify.js +15 -0
- data/node_modules/es5-ext/test/math/_pack-ieee754.js +5 -0
- data/node_modules/es5-ext/test/math/_unpack-ieee754.js +5 -0
- data/node_modules/es5-ext/test/math/acosh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/acosh/index.js +3 -0
- data/node_modules/es5-ext/test/math/acosh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/acosh/shim.js +11 -0
- data/node_modules/es5-ext/test/math/asinh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/asinh/index.js +3 -0
- data/node_modules/es5-ext/test/math/asinh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/asinh/shim.js +10 -0
- data/node_modules/es5-ext/test/math/atanh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/atanh/index.js +3 -0
- data/node_modules/es5-ext/test/math/atanh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/atanh/shim.js +11 -0
- data/node_modules/es5-ext/test/math/cbrt/implement.js +5 -0
- data/node_modules/es5-ext/test/math/cbrt/index.js +3 -0
- data/node_modules/es5-ext/test/math/cbrt/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/cbrt/shim.js +11 -0
- data/node_modules/es5-ext/test/math/clz32/implement.js +5 -0
- data/node_modules/es5-ext/test/math/clz32/index.js +3 -0
- data/node_modules/es5-ext/test/math/clz32/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/clz32/shim.js +12 -0
- data/node_modules/es5-ext/test/math/cosh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/cosh/index.js +3 -0
- data/node_modules/es5-ext/test/math/cosh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/cosh/shim.js +13 -0
- data/node_modules/es5-ext/test/math/expm1/implement.js +5 -0
- data/node_modules/es5-ext/test/math/expm1/index.js +3 -0
- data/node_modules/es5-ext/test/math/expm1/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/expm1/shim.js +9 -0
- data/node_modules/es5-ext/test/math/fround/implement.js +5 -0
- data/node_modules/es5-ext/test/math/fround/index.js +3 -0
- data/node_modules/es5-ext/test/math/fround/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/fround/shim.js +9 -0
- data/node_modules/es5-ext/test/math/hypot/implement.js +5 -0
- data/node_modules/es5-ext/test/math/hypot/index.js +3 -0
- data/node_modules/es5-ext/test/math/hypot/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/hypot/shim.js +11 -0
- data/node_modules/es5-ext/test/math/imul/implement.js +5 -0
- data/node_modules/es5-ext/test/math/imul/index.js +3 -0
- data/node_modules/es5-ext/test/math/imul/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/imul/shim.js +9 -0
- data/node_modules/es5-ext/test/math/log10/implement.js +5 -0
- data/node_modules/es5-ext/test/math/log10/index.js +3 -0
- data/node_modules/es5-ext/test/math/log10/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/log10/shim.js +10 -0
- data/node_modules/es5-ext/test/math/log1p/implement.js +5 -0
- data/node_modules/es5-ext/test/math/log1p/index.js +3 -0
- data/node_modules/es5-ext/test/math/log1p/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/log1p/shim.js +10 -0
- data/node_modules/es5-ext/test/math/log2/implement.js +5 -0
- data/node_modules/es5-ext/test/math/log2/index.js +3 -0
- data/node_modules/es5-ext/test/math/log2/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/log2/shim.js +10 -0
- data/node_modules/es5-ext/test/math/sign/implement.js +5 -0
- data/node_modules/es5-ext/test/math/sign/index.js +3 -0
- data/node_modules/es5-ext/test/math/sign/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/sign/shim.js +11 -0
- data/node_modules/es5-ext/test/math/sinh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/sinh/index.js +3 -0
- data/node_modules/es5-ext/test/math/sinh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/sinh/shim.js +13 -0
- data/node_modules/es5-ext/test/math/tanh/implement.js +5 -0
- data/node_modules/es5-ext/test/math/tanh/index.js +3 -0
- data/node_modules/es5-ext/test/math/tanh/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/tanh/shim.js +11 -0
- data/node_modules/es5-ext/test/math/trunc/implement.js +5 -0
- data/node_modules/es5-ext/test/math/trunc/index.js +3 -0
- data/node_modules/es5-ext/test/math/trunc/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/math/trunc/shim.js +16 -0
- data/node_modules/es5-ext/test/number/#/pad.js +7 -0
- data/node_modules/es5-ext/test/number/epsilon/implement.js +5 -0
- data/node_modules/es5-ext/test/number/epsilon/index.js +5 -0
- data/node_modules/es5-ext/test/number/epsilon/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/is-finite/implement.js +5 -0
- data/node_modules/es5-ext/test/number/is-finite/index.js +3 -0
- data/node_modules/es5-ext/test/number/is-finite/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/is-finite/shim.js +8 -0
- data/node_modules/es5-ext/test/number/is-integer/implement.js +5 -0
- data/node_modules/es5-ext/test/number/is-integer/index.js +3 -0
- data/node_modules/es5-ext/test/number/is-integer/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/is-integer/shim.js +9 -0
- data/node_modules/es5-ext/test/number/is-nan/implement.js +5 -0
- data/node_modules/es5-ext/test/number/is-nan/index.js +3 -0
- data/node_modules/es5-ext/test/number/is-nan/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/is-nan/shim.js +7 -0
- data/node_modules/es5-ext/test/number/is-natural.js +10 -0
- data/node_modules/es5-ext/test/number/is-number.js +13 -0
- data/node_modules/es5-ext/test/number/is-safe-integer/implement.js +5 -0
- data/node_modules/es5-ext/test/number/is-safe-integer/index.js +3 -0
- data/node_modules/es5-ext/test/number/is-safe-integer/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/is-safe-integer/shim.js +11 -0
- data/node_modules/es5-ext/test/number/max-safe-integer/implement.js +5 -0
- data/node_modules/es5-ext/test/number/max-safe-integer/index.js +5 -0
- data/node_modules/es5-ext/test/number/max-safe-integer/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/min-safe-integer/implement.js +5 -0
- data/node_modules/es5-ext/test/number/min-safe-integer/index.js +5 -0
- data/node_modules/es5-ext/test/number/min-safe-integer/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/number/to-integer.js +10 -0
- data/node_modules/es5-ext/test/number/to-pos-integer.js +10 -0
- data/node_modules/es5-ext/test/number/to-uint32.js +8 -0
- data/node_modules/es5-ext/test/object/_iterate.js +30 -0
- data/node_modules/es5-ext/test/object/assign/implement.js +5 -0
- data/node_modules/es5-ext/test/object/assign/index.js +3 -0
- data/node_modules/es5-ext/test/object/assign/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/object/assign/shim.js +11 -0
- data/node_modules/es5-ext/test/object/clear.js +13 -0
- data/node_modules/es5-ext/test/object/compact.js +14 -0
- data/node_modules/es5-ext/test/object/compare.js +13 -0
- data/node_modules/es5-ext/test/object/copy-deep.js +28 -0
- data/node_modules/es5-ext/test/object/copy.js +19 -0
- data/node_modules/es5-ext/test/object/count.js +11 -0
- data/node_modules/es5-ext/test/object/create.js +22 -0
- data/node_modules/es5-ext/test/object/ensure-natural-number-value.js +12 -0
- data/node_modules/es5-ext/test/object/ensure-natural-number.js +12 -0
- data/node_modules/es5-ext/test/object/eq.js +12 -0
- data/node_modules/es5-ext/test/object/every.js +21 -0
- data/node_modules/es5-ext/test/object/filter.js +6 -0
- data/node_modules/es5-ext/test/object/find-key.js +23 -0
- data/node_modules/es5-ext/test/object/find.js +23 -0
- data/node_modules/es5-ext/test/object/first-key.js +13 -0
- data/node_modules/es5-ext/test/object/flatten.js +6 -0
- data/node_modules/es5-ext/test/object/for-each.js +10 -0
- data/node_modules/es5-ext/test/object/get-property-names.js +18 -0
- data/node_modules/es5-ext/test/object/is-array-like.js +14 -0
- data/node_modules/es5-ext/test/object/is-callable.js +8 -0
- data/node_modules/es5-ext/test/object/is-copy-deep.js +46 -0
- data/node_modules/es5-ext/test/object/is-copy.js +18 -0
- data/node_modules/es5-ext/test/object/is-empty.js +6 -0
- data/node_modules/es5-ext/test/object/is-number-value.js +15 -0
- data/node_modules/es5-ext/test/object/is-object.js +13 -0
- data/node_modules/es5-ext/test/object/is-plain-object.js +18 -0
- data/node_modules/es5-ext/test/object/is-value.js +14 -0
- data/node_modules/es5-ext/test/object/is.js +12 -0
- data/node_modules/es5-ext/test/object/key-of.js +12 -0
- data/node_modules/es5-ext/test/object/keys/implement.js +5 -0
- data/node_modules/es5-ext/test/object/keys/index.js +3 -0
- data/node_modules/es5-ext/test/object/keys/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/object/keys/shim.js +8 -0
- data/node_modules/es5-ext/test/object/map-keys.js +7 -0
- data/node_modules/es5-ext/test/object/map.js +9 -0
- data/node_modules/es5-ext/test/object/mixin-prototypes.js +67 -0
- data/node_modules/es5-ext/test/object/mixin.js +69 -0
- data/node_modules/es5-ext/test/object/normalize-options.js +32 -0
- data/node_modules/es5-ext/test/object/primitive-set.js +15 -0
- data/node_modules/es5-ext/test/object/safe-traverse.js +15 -0
- data/node_modules/es5-ext/test/object/serialize.js +25 -0
- data/node_modules/es5-ext/test/object/set-prototype-of/implement.js +6 -0
- data/node_modules/es5-ext/test/object/set-prototype-of/index.js +23 -0
- data/node_modules/es5-ext/test/object/set-prototype-of/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/object/set-prototype-of/shim.js +23 -0
- data/node_modules/es5-ext/test/object/some.js +23 -0
- data/node_modules/es5-ext/test/object/to-array.js +15 -0
- data/node_modules/es5-ext/test/object/unserialize.js +24 -0
- data/node_modules/es5-ext/test/object/valid-callable.js +9 -0
- data/node_modules/es5-ext/test/object/valid-object.js +15 -0
- data/node_modules/es5-ext/test/object/valid-value.js +19 -0
- data/node_modules/es5-ext/test/object/validate-array-like-object.js +15 -0
- data/node_modules/es5-ext/test/object/validate-array-like.js +15 -0
- data/node_modules/es5-ext/test/object/validate-stringifiable-value.js +16 -0
- data/node_modules/es5-ext/test/object/validate-stringifiable.js +16 -0
- data/node_modules/es5-ext/test/reg-exp/#/index.js +12 -0
- data/node_modules/es5-ext/test/reg-exp/#/is-sticky.js +10 -0
- data/node_modules/es5-ext/test/reg-exp/#/is-unicode.js +10 -0
- data/node_modules/es5-ext/test/reg-exp/#/match/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/match/index.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/match/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/match/shim.js +8 -0
- data/node_modules/es5-ext/test/reg-exp/#/replace/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/replace/index.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/replace/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/replace/shim.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/search/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/search/index.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/search/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/search/shim.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/split/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/split/index.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/split/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/split/shim.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/sticky/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/sticky/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/#/unicode/implement.js +5 -0
- data/node_modules/es5-ext/test/reg-exp/#/unicode/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/reg-exp/escape.js +6 -0
- data/node_modules/es5-ext/test/reg-exp/is-reg-exp.js +12 -0
- data/node_modules/es5-ext/test/reg-exp/valid-reg-exp.js +17 -0
- data/node_modules/es5-ext/test/string/#/@@iterator/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/@@iterator/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/@@iterator/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/@@iterator/shim.js +9 -0
- data/node_modules/es5-ext/test/string/#/at.js +97 -0
- data/node_modules/es5-ext/test/string/#/camel-to-hyphen.js +7 -0
- data/node_modules/es5-ext/test/string/#/capitalize.js +9 -0
- data/node_modules/es5-ext/test/string/#/case-insensitive-compare.js +7 -0
- data/node_modules/es5-ext/test/string/#/code-point-at/implement.js +6 -0
- data/node_modules/es5-ext/test/string/#/code-point-at/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/code-point-at/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/code-point-at/shim.js +81 -0
- data/node_modules/es5-ext/test/string/#/contains/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/contains/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/contains/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/contains/shim.js +14 -0
- data/node_modules/es5-ext/test/string/#/ends-with/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/ends-with/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/ends-with/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/ends-with/shim.js +16 -0
- data/node_modules/es5-ext/test/string/#/hyphen-to-camel.js +7 -0
- data/node_modules/es5-ext/test/string/#/indent.js +9 -0
- data/node_modules/es5-ext/test/string/#/last.js +6 -0
- data/node_modules/es5-ext/test/string/#/normalize/_data.js +3 -0
- data/node_modules/es5-ext/test/string/#/normalize/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/normalize/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/normalize/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/normalize/shim.js +13 -0
- data/node_modules/es5-ext/test/string/#/pad.js +24 -0
- data/node_modules/es5-ext/test/string/#/plain-replace-all.js +11 -0
- data/node_modules/es5-ext/test/string/#/plain-replace.js +7 -0
- data/node_modules/es5-ext/test/string/#/repeat/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/repeat/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/repeat/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/repeat/shim.js +8 -0
- data/node_modules/es5-ext/test/string/#/starts-with/implement.js +5 -0
- data/node_modules/es5-ext/test/string/#/starts-with/index.js +3 -0
- data/node_modules/es5-ext/test/string/#/starts-with/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/#/starts-with/shim.js +14 -0
- data/node_modules/es5-ext/test/string/#/uncapitalize.js +10 -0
- data/node_modules/es5-ext/test/string/format-method.js +7 -0
- data/node_modules/es5-ext/test/string/from-code-point/implement.js +5 -0
- data/node_modules/es5-ext/test/string/from-code-point/index.js +3 -0
- data/node_modules/es5-ext/test/string/from-code-point/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/from-code-point/shim.js +47 -0
- data/node_modules/es5-ext/test/string/is-string.js +11 -0
- data/node_modules/es5-ext/test/string/random-uniq.js +14 -0
- data/node_modules/es5-ext/test/string/raw/implement.js +5 -0
- data/node_modules/es5-ext/test/string/raw/index.js +3 -0
- data/node_modules/es5-ext/test/string/raw/is-implemented.js +3 -0
- data/node_modules/es5-ext/test/string/raw/shim.js +15 -0
- data/node_modules/es6-iterator/#/chain.js +40 -0
- data/node_modules/es6-iterator/.lint +11 -0
- data/node_modules/es6-iterator/.npmignore +4 -0
- data/node_modules/es6-iterator/.travis.yml +13 -0
- data/node_modules/es6-iterator/CHANGES +38 -0
- data/node_modules/es6-iterator/LICENSE +21 -0
- data/node_modules/es6-iterator/README.md +148 -0
- data/node_modules/es6-iterator/array.js +30 -0
- data/node_modules/es6-iterator/for-of.js +46 -0
- data/node_modules/es6-iterator/get.js +15 -0
- data/node_modules/es6-iterator/index.js +90 -0
- data/node_modules/es6-iterator/is-iterable.js +15 -0
- data/node_modules/es6-iterator/package.json +35 -0
- data/node_modules/es6-iterator/string.js +37 -0
- data/node_modules/es6-iterator/test/#/chain.js +23 -0
- data/node_modules/es6-iterator/test/array.js +67 -0
- data/node_modules/es6-iterator/test/for-of.js +40 -0
- data/node_modules/es6-iterator/test/get.js +17 -0
- data/node_modules/es6-iterator/test/index.js +99 -0
- data/node_modules/es6-iterator/test/is-iterable.js +19 -0
- data/node_modules/es6-iterator/test/string.js +23 -0
- data/node_modules/es6-iterator/test/valid-iterable.js +18 -0
- data/node_modules/es6-iterator/valid-iterable.js +8 -0
- data/node_modules/es6-map/.lint +13 -0
- data/node_modules/es6-map/.npmignore +4 -0
- data/node_modules/es6-map/.travis.yml +13 -0
- data/node_modules/es6-map/CHANGES +33 -0
- data/node_modules/es6-map/LICENSE +19 -0
- data/node_modules/es6-map/README.md +79 -0
- data/node_modules/es6-map/implement.js +7 -0
- data/node_modules/es6-map/index.js +3 -0
- data/node_modules/es6-map/is-implemented.js +32 -0
- data/node_modules/es6-map/is-map.js +12 -0
- data/node_modules/es6-map/is-native-implemented.js +9 -0
- data/node_modules/es6-map/lib/iterator-kinds.js +4 -0
- data/node_modules/es6-map/lib/iterator.js +38 -0
- data/node_modules/es6-map/lib/primitive-iterator.js +57 -0
- data/node_modules/es6-map/package.json +41 -0
- data/node_modules/es6-map/polyfill.js +104 -0
- data/node_modules/es6-map/primitive/index.js +117 -0
- data/node_modules/es6-map/test/implement.js +3 -0
- data/node_modules/es6-map/test/index.js +5 -0
- data/node_modules/es6-map/test/is-implemented.js +14 -0
- data/node_modules/es6-map/test/is-map.js +16 -0
- data/node_modules/es6-map/test/is-native-implemented.js +3 -0
- data/node_modules/es6-map/test/lib/iterator-kinds.js +5 -0
- data/node_modules/es6-map/test/lib/iterator.js +13 -0
- data/node_modules/es6-map/test/lib/primitive-iterator.js +130 -0
- data/node_modules/es6-map/test/polyfill.js +60 -0
- data/node_modules/es6-map/test/primitive/index.js +59 -0
- data/node_modules/es6-map/test/valid-map.js +19 -0
- data/node_modules/es6-map/valid-map.js +8 -0
- data/node_modules/es6-set/.lint +13 -0
- data/node_modules/es6-set/.npmignore +4 -0
- data/node_modules/es6-set/.travis.yml +13 -0
- data/node_modules/es6-set/CHANGES +34 -0
- data/node_modules/es6-set/LICENSE +19 -0
- data/node_modules/es6-set/README.md +74 -0
- data/node_modules/es6-set/ext/copy.js +5 -0
- data/node_modules/es6-set/ext/every.js +18 -0
- data/node_modules/es6-set/ext/filter.js +18 -0
- data/node_modules/es6-set/ext/get-first.js +5 -0
- data/node_modules/es6-set/ext/get-last.js +11 -0
- data/node_modules/es6-set/ext/some.js +18 -0
- data/node_modules/es6-set/implement.js +7 -0
- data/node_modules/es6-set/index.js +3 -0
- data/node_modules/es6-set/is-implemented.js +24 -0
- data/node_modules/es6-set/is-native-implemented.js +9 -0
- data/node_modules/es6-set/is-set.js +12 -0
- data/node_modules/es6-set/lib/iterator.js +30 -0
- data/node_modules/es6-set/lib/primitive-iterator.js +53 -0
- data/node_modules/es6-set/package.json +36 -0
- data/node_modules/es6-set/polyfill.js +80 -0
- data/node_modules/es6-set/primitive/index.js +87 -0
- data/node_modules/es6-set/test/ext/copy.js +12 -0
- data/node_modules/es6-set/test/ext/every.js +9 -0
- data/node_modules/es6-set/test/ext/filter.js +12 -0
- data/node_modules/es6-set/test/ext/get-first.js +12 -0
- data/node_modules/es6-set/test/ext/get-last.js +12 -0
- data/node_modules/es6-set/test/ext/some.js +10 -0
- data/node_modules/es6-set/test/implement.js +3 -0
- data/node_modules/es6-set/test/index.js +3 -0
- data/node_modules/es6-set/test/is-implemented.js +14 -0
- data/node_modules/es6-set/test/is-native-implemented.js +3 -0
- data/node_modules/es6-set/test/is-set.js +16 -0
- data/node_modules/es6-set/test/lib/iterator.js +13 -0
- data/node_modules/es6-set/test/lib/primitive-iterator.js +113 -0
- data/node_modules/es6-set/test/polyfill.js +50 -0
- data/node_modules/es6-set/test/primitive/index.js +50 -0
- data/node_modules/es6-set/test/valid-set.js +19 -0
- data/node_modules/es6-set/valid-set.js +8 -0
- data/node_modules/es6-symbol/.lint +15 -0
- data/node_modules/es6-symbol/.npmignore +4 -0
- data/node_modules/es6-symbol/.travis.yml +11 -0
- data/node_modules/es6-symbol/CHANGES +57 -0
- data/node_modules/es6-symbol/LICENSE +19 -0
- data/node_modules/es6-symbol/README.md +71 -0
- data/node_modules/es6-symbol/implement.js +7 -0
- data/node_modules/es6-symbol/index.js +3 -0
- data/node_modules/es6-symbol/is-implemented.js +17 -0
- data/node_modules/es6-symbol/is-native-implemented.js +5 -0
- data/node_modules/es6-symbol/is-symbol.js +9 -0
- data/node_modules/es6-symbol/package.json +35 -0
- data/node_modules/es6-symbol/polyfill.js +118 -0
- data/node_modules/es6-symbol/test/implement.js +3 -0
- data/node_modules/es6-symbol/test/index.js +12 -0
- data/node_modules/es6-symbol/test/is-implemented.js +14 -0
- data/node_modules/es6-symbol/test/is-native-implemented.js +3 -0
- data/node_modules/es6-symbol/test/is-symbol.js +16 -0
- data/node_modules/es6-symbol/test/polyfill.js +29 -0
- data/node_modules/es6-symbol/test/validate-symbol.js +19 -0
- data/node_modules/es6-symbol/validate-symbol.js +8 -0
- data/node_modules/es6-weak-map/.lint +13 -0
- data/node_modules/es6-weak-map/.npmignore +4 -0
- data/node_modules/es6-weak-map/.travis.yml +13 -0
- data/node_modules/es6-weak-map/CHANGES +45 -0
- data/node_modules/es6-weak-map/LICENSE +19 -0
- data/node_modules/es6-weak-map/README.md +63 -0
- data/node_modules/es6-weak-map/implement.js +7 -0
- data/node_modules/es6-weak-map/index.js +3 -0
- data/node_modules/es6-weak-map/is-implemented.js +20 -0
- data/node_modules/es6-weak-map/is-native-implemented.js +8 -0
- data/node_modules/es6-weak-map/is-weak-map.js +13 -0
- data/node_modules/es6-weak-map/package.json +38 -0
- data/node_modules/es6-weak-map/polyfill.js +66 -0
- data/node_modules/es6-weak-map/test/implement.js +3 -0
- data/node_modules/es6-weak-map/test/index.js +6 -0
- data/node_modules/es6-weak-map/test/is-implemented.js +14 -0
- data/node_modules/es6-weak-map/test/is-native-implemented.js +3 -0
- data/node_modules/es6-weak-map/test/is-weak-map.js +16 -0
- data/node_modules/es6-weak-map/test/polyfill.js +23 -0
- data/node_modules/es6-weak-map/test/valid-weak-map.js +19 -0
- data/node_modules/es6-weak-map/valid-weak-map.js +8 -0
- data/node_modules/escape-string-regexp/index.js +11 -0
- data/node_modules/escape-string-regexp/license +21 -0
- data/node_modules/escape-string-regexp/package.json +41 -0
- data/node_modules/escape-string-regexp/readme.md +27 -0
- data/node_modules/escope/.babelrc +3 -0
- data/node_modules/escope/.jshintrc +20 -0
- data/node_modules/escope/CONTRIBUTING.md +5 -0
- data/node_modules/escope/LICENSE.BSD +19 -0
- data/node_modules/escope/README.md +79 -0
- data/node_modules/escope/bower.json +13 -0
- data/node_modules/escope/gulpfile.js +153 -0
- data/node_modules/escope/lib/definition.js +106 -0
- data/node_modules/escope/lib/index.js +177 -0
- data/node_modules/escope/lib/pattern-visitor.js +176 -0
- data/node_modules/escope/lib/reference.js +193 -0
- data/node_modules/escope/lib/referencer.js +639 -0
- data/node_modules/escope/lib/scope-manager.js +297 -0
- data/node_modules/escope/lib/scope.js +764 -0
- data/node_modules/escope/lib/variable.js +94 -0
- data/node_modules/escope/package.json +57 -0
- data/node_modules/escope/powered-test/arguments.js +34 -0
- data/node_modules/escope/powered-test/catch-scope.js +39 -0
- data/node_modules/escope/powered-test/es6-arrow-function-expression.js +57 -0
- data/node_modules/escope/powered-test/es6-block-scope.js +136 -0
- data/node_modules/escope/powered-test/es6-catch.js +39 -0
- data/node_modules/escope/powered-test/es6-class.js +155 -0
- data/node_modules/escope/powered-test/es6-destructuring-assignments.js +504 -0
- data/node_modules/escope/powered-test/es6-export.js +202 -0
- data/node_modules/escope/powered-test/es6-import.js +103 -0
- data/node_modules/escope/powered-test/es6-iteration-scope.js +167 -0
- data/node_modules/escope/powered-test/es6-object.js +57 -0
- data/node_modules/escope/powered-test/es6-rest-args.js +35 -0
- data/node_modules/escope/powered-test/es6-switch.js +43 -0
- data/node_modules/escope/powered-test/es6-template-literal.js +45 -0
- data/node_modules/escope/powered-test/function-expression-name.js +42 -0
- data/node_modules/escope/powered-test/global-increment.js +28 -0
- data/node_modules/escope/powered-test/implicit-global-reference.js +113 -0
- data/node_modules/escope/powered-test/label-children.js +34 -0
- data/node_modules/escope/powered-test/label.js +47 -0
- data/node_modules/escope/powered-test/nodejs-scope.js +65 -0
- data/node_modules/escope/powered-test/object-expression.js +56 -0
- data/node_modules/escope/powered-test/optimistic.js +40 -0
- data/node_modules/escope/powered-test/with-scope.js +40 -0
- data/node_modules/escope/src/definition.js +78 -0
- data/node_modules/escope/src/index.js +146 -0
- data/node_modules/escope/src/pattern-visitor.js +134 -0
- data/node_modules/escope/src/reference.js +154 -0
- data/node_modules/escope/src/referencer.js +584 -0
- data/node_modules/escope/src/scope-manager.js +245 -0
- data/node_modules/escope/src/scope.js +647 -0
- data/node_modules/escope/src/variable.js +81 -0
- data/node_modules/escope/third_party/espree.js +56 -0
- data/node_modules/eslint/CHANGELOG.md +3157 -0
- data/node_modules/eslint/LICENSE +20 -0
- data/node_modules/eslint/README.md +186 -0
- data/node_modules/eslint/bin/eslint.js +92 -0
- data/node_modules/eslint/conf/blank-script.json +21 -0
- data/node_modules/eslint/conf/cli-options.js +29 -0
- data/node_modules/eslint/conf/environments.js +107 -0
- data/node_modules/eslint/conf/eslint-all.js +29 -0
- data/node_modules/eslint/conf/eslint.json +225 -0
- data/node_modules/eslint/conf/json-schema-schema.json +150 -0
- data/node_modules/eslint/conf/replacements.json +22 -0
- data/node_modules/eslint/lib/api.js +13 -0
- data/node_modules/eslint/lib/ast-utils.js +555 -0
- data/node_modules/eslint/lib/cli-engine.js +803 -0
- data/node_modules/eslint/lib/cli.js +210 -0
- data/node_modules/eslint/lib/code-path-analysis/code-path-analyzer.js +656 -0
- data/node_modules/eslint/lib/code-path-analysis/code-path-segment.js +241 -0
- data/node_modules/eslint/lib/code-path-analysis/code-path-state.js +1428 -0
- data/node_modules/eslint/lib/code-path-analysis/code-path.js +234 -0
- data/node_modules/eslint/lib/code-path-analysis/debug-helpers.js +199 -0
- data/node_modules/eslint/lib/code-path-analysis/fork-context.js +262 -0
- data/node_modules/eslint/lib/code-path-analysis/id-generator.js +43 -0
- data/node_modules/eslint/lib/config.js +304 -0
- data/node_modules/eslint/lib/config/autoconfig.js +372 -0
- data/node_modules/eslint/lib/config/config-file.js +579 -0
- data/node_modules/eslint/lib/config/config-initializer.js +494 -0
- data/node_modules/eslint/lib/config/config-ops.js +278 -0
- data/node_modules/eslint/lib/config/config-rule.js +323 -0
- data/node_modules/eslint/lib/config/config-validator.js +178 -0
- data/node_modules/eslint/lib/config/environments.js +85 -0
- data/node_modules/eslint/lib/config/plugins.js +146 -0
- data/node_modules/eslint/lib/eslint.js +1191 -0
- data/node_modules/eslint/lib/file-finder.js +144 -0
- data/node_modules/eslint/lib/formatters/checkstyle.js +82 -0
- data/node_modules/eslint/lib/formatters/compact.js +60 -0
- data/node_modules/eslint/lib/formatters/html-template-message.html +8 -0
- data/node_modules/eslint/lib/formatters/html-template-page.html +113 -0
- data/node_modules/eslint/lib/formatters/html-template-result.html +6 -0
- data/node_modules/eslint/lib/formatters/html.js +131 -0
- data/node_modules/eslint/lib/formatters/jslint-xml.js +40 -0
- data/node_modules/eslint/lib/formatters/json.js +13 -0
- data/node_modules/eslint/lib/formatters/junit.js +70 -0
- data/node_modules/eslint/lib/formatters/stylish.js +90 -0
- data/node_modules/eslint/lib/formatters/table.js +158 -0
- data/node_modules/eslint/lib/formatters/tap.js +90 -0
- data/node_modules/eslint/lib/formatters/unix.js +59 -0
- data/node_modules/eslint/lib/formatters/visualstudio.js +63 -0
- data/node_modules/eslint/lib/ignored-paths.js +225 -0
- data/node_modules/eslint/lib/load-rules.js +41 -0
- data/node_modules/eslint/lib/logging.js +28 -0
- data/node_modules/eslint/lib/options.js +223 -0
- data/node_modules/eslint/lib/rule-context.js +160 -0
- data/node_modules/eslint/lib/rules.js +107 -0
- data/node_modules/eslint/lib/rules/accessor-pairs.js +156 -0
- data/node_modules/eslint/lib/rules/array-bracket-spacing.js +215 -0
- data/node_modules/eslint/lib/rules/array-callback-return.js +249 -0
- data/node_modules/eslint/lib/rules/arrow-body-style.js +109 -0
- data/node_modules/eslint/lib/rules/arrow-parens.js +63 -0
- data/node_modules/eslint/lib/rules/arrow-spacing.js +146 -0
- data/node_modules/eslint/lib/rules/block-scoped-var.js +118 -0
- data/node_modules/eslint/lib/rules/block-spacing.js +131 -0
- data/node_modules/eslint/lib/rules/brace-style.js +244 -0
- data/node_modules/eslint/lib/rules/callback-return.js +175 -0
- data/node_modules/eslint/lib/rules/camelcase.js +134 -0
- data/node_modules/eslint/lib/rules/comma-dangle.js +223 -0
- data/node_modules/eslint/lib/rules/comma-spacing.js +194 -0
- data/node_modules/eslint/lib/rules/comma-style.js +200 -0
- data/node_modules/eslint/lib/rules/complexity.js +162 -0
- data/node_modules/eslint/lib/rules/computed-property-spacing.js +164 -0
- data/node_modules/eslint/lib/rules/consistent-return.js +161 -0
- data/node_modules/eslint/lib/rules/consistent-this.js +148 -0
- data/node_modules/eslint/lib/rules/constructor-super.js +385 -0
- data/node_modules/eslint/lib/rules/curly.js +304 -0
- data/node_modules/eslint/lib/rules/default-case.js +94 -0
- data/node_modules/eslint/lib/rules/dot-location.js +72 -0
- data/node_modules/eslint/lib/rules/dot-notation.js +70 -0
- data/node_modules/eslint/lib/rules/eol-last.js +62 -0
- data/node_modules/eslint/lib/rules/eqeqeq.js +110 -0
- data/node_modules/eslint/lib/rules/func-names.js +64 -0
- data/node_modules/eslint/lib/rules/func-style.js +93 -0
- data/node_modules/eslint/lib/rules/generator-star-spacing.js +142 -0
- data/node_modules/eslint/lib/rules/global-require.js +79 -0
- data/node_modules/eslint/lib/rules/guard-for-in.js +42 -0
- data/node_modules/eslint/lib/rules/handle-callback-err.js +91 -0
- data/node_modules/eslint/lib/rules/id-blacklist.js +117 -0
- data/node_modules/eslint/lib/rules/id-length.js +114 -0
- data/node_modules/eslint/lib/rules/id-match.js +140 -0
- data/node_modules/eslint/lib/rules/indent.js +769 -0
- data/node_modules/eslint/lib/rules/init-declarations.js +125 -0
- data/node_modules/eslint/lib/rules/jsx-quotes.js +86 -0
- data/node_modules/eslint/lib/rules/key-spacing.js +492 -0
- data/node_modules/eslint/lib/rules/keyword-spacing.js +544 -0
- data/node_modules/eslint/lib/rules/linebreak-style.js +91 -0
- data/node_modules/eslint/lib/rules/lines-around-comment.js +367 -0
- data/node_modules/eslint/lib/rules/max-depth.js +149 -0
- data/node_modules/eslint/lib/rules/max-len.js +261 -0
- data/node_modules/eslint/lib/rules/max-lines.js +148 -0
- data/node_modules/eslint/lib/rules/max-nested-callbacks.js +112 -0
- data/node_modules/eslint/lib/rules/max-params.js +83 -0
- data/node_modules/eslint/lib/rules/max-statements-per-line.js +174 -0
- data/node_modules/eslint/lib/rules/max-statements.js +159 -0
- data/node_modules/eslint/lib/rules/new-cap.js +259 -0
- data/node_modules/eslint/lib/rules/new-parens.js +41 -0
- data/node_modules/eslint/lib/rules/newline-after-var.js +177 -0
- data/node_modules/eslint/lib/rules/newline-before-return.js +151 -0
- data/node_modules/eslint/lib/rules/newline-per-chained-call.js +81 -0
- data/node_modules/eslint/lib/rules/no-alert.js +144 -0
- data/node_modules/eslint/lib/rules/no-array-constructor.js +47 -0
- data/node_modules/eslint/lib/rules/no-bitwise.js +109 -0
- data/node_modules/eslint/lib/rules/no-caller.js +39 -0
- data/node_modules/eslint/lib/rules/no-case-declarations.js +57 -0
- data/node_modules/eslint/lib/rules/no-catch-shadow.js +68 -0
- data/node_modules/eslint/lib/rules/no-class-assign.js +57 -0
- data/node_modules/eslint/lib/rules/no-cond-assign.js +146 -0
- data/node_modules/eslint/lib/rules/no-confusing-arrow.js +66 -0
- data/node_modules/eslint/lib/rules/no-console.js +65 -0
- data/node_modules/eslint/lib/rules/no-const-assign.js +50 -0
- data/node_modules/eslint/lib/rules/no-constant-condition.js +143 -0
- data/node_modules/eslint/lib/rules/no-continue.js +32 -0
- data/node_modules/eslint/lib/rules/no-control-regex.js +95 -0
- data/node_modules/eslint/lib/rules/no-debugger.js +32 -0
- data/node_modules/eslint/lib/rules/no-delete-var.js +35 -0
- data/node_modules/eslint/lib/rules/no-div-regex.js +38 -0
- data/node_modules/eslint/lib/rules/no-dupe-args.js +73 -0
- data/node_modules/eslint/lib/rules/no-dupe-class-members.js +109 -0
- data/node_modules/eslint/lib/rules/no-dupe-keys.js +56 -0
- data/node_modules/eslint/lib/rules/no-duplicate-case.js +43 -0
- data/node_modules/eslint/lib/rules/no-duplicate-imports.js +134 -0
- data/node_modules/eslint/lib/rules/no-else-return.js +158 -0
- data/node_modules/eslint/lib/rules/no-empty-character-class.js +57 -0
- data/node_modules/eslint/lib/rules/no-empty-function.js +160 -0
- data/node_modules/eslint/lib/rules/no-empty-pattern.js +36 -0
- data/node_modules/eslint/lib/rules/no-empty.js +74 -0
- data/node_modules/eslint/lib/rules/no-eq-null.js +39 -0
- data/node_modules/eslint/lib/rules/no-eval.js +308 -0
- data/node_modules/eslint/lib/rules/no-ex-assign.js +47 -0
- data/node_modules/eslint/lib/rules/no-extend-native.js +111 -0
- data/node_modules/eslint/lib/rules/no-extra-bind.js +156 -0
- data/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +90 -0
- data/node_modules/eslint/lib/rules/no-extra-label.js +140 -0
- data/node_modules/eslint/lib/rules/no-extra-parens.js +580 -0
- data/node_modules/eslint/lib/rules/no-extra-semi.js +105 -0
- data/node_modules/eslint/lib/rules/no-fallthrough.js +135 -0
- data/node_modules/eslint/lib/rules/no-floating-decimal.js +40 -0
- data/node_modules/eslint/lib/rules/no-func-assign.js +66 -0
- data/node_modules/eslint/lib/rules/no-implicit-coercion.js +258 -0
- data/node_modules/eslint/lib/rules/no-implicit-globals.js +55 -0
- data/node_modules/eslint/lib/rules/no-implied-eval.js +160 -0
- data/node_modules/eslint/lib/rules/no-inline-comments.js +64 -0
- data/node_modules/eslint/lib/rules/no-inner-declarations.js +89 -0
- data/node_modules/eslint/lib/rules/no-invalid-regexp.js +96 -0
- data/node_modules/eslint/lib/rules/no-invalid-this.js +122 -0
- data/node_modules/eslint/lib/rules/no-irregular-whitespace.js +250 -0
- data/node_modules/eslint/lib/rules/no-iterator.js +38 -0
- data/node_modules/eslint/lib/rules/no-label-var.js +67 -0
- data/node_modules/eslint/lib/rules/no-labels.js +143 -0
- data/node_modules/eslint/lib/rules/no-lone-blocks.js +112 -0
- data/node_modules/eslint/lib/rules/no-lonely-if.js +40 -0
- data/node_modules/eslint/lib/rules/no-loop-func.js +198 -0
- data/node_modules/eslint/lib/rules/no-magic-numbers.js +144 -0
- data/node_modules/eslint/lib/rules/no-mixed-operators.js +212 -0
- data/node_modules/eslint/lib/rules/no-mixed-requires.js +222 -0
- data/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +144 -0
- data/node_modules/eslint/lib/rules/no-multi-spaces.js +150 -0
- data/node_modules/eslint/lib/rules/no-multi-str.js +51 -0
- data/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +204 -0
- data/node_modules/eslint/lib/rules/no-native-reassign.js +83 -0
- data/node_modules/eslint/lib/rules/no-negated-condition.js +82 -0
- data/node_modules/eslint/lib/rules/no-negated-in-lhs.js +35 -0
- data/node_modules/eslint/lib/rules/no-nested-ternary.js +34 -0
- data/node_modules/eslint/lib/rules/no-new-func.js +47 -0
- data/node_modules/eslint/lib/rules/no-new-object.js +35 -0
- data/node_modules/eslint/lib/rules/no-new-require.js +35 -0
- data/node_modules/eslint/lib/rules/no-new-symbol.js +43 -0
- data/node_modules/eslint/lib/rules/no-new-wrappers.js +37 -0
- data/node_modules/eslint/lib/rules/no-new.js +37 -0
- data/node_modules/eslint/lib/rules/no-obj-calls.js +39 -0
- data/node_modules/eslint/lib/rules/no-octal-escape.js +49 -0
- data/node_modules/eslint/lib/rules/no-octal.js +35 -0
- data/node_modules/eslint/lib/rules/no-param-reassign.js +147 -0
- data/node_modules/eslint/lib/rules/no-path-concat.js +49 -0
- data/node_modules/eslint/lib/rules/no-plusplus.js +55 -0
- data/node_modules/eslint/lib/rules/no-process-env.js +39 -0
- data/node_modules/eslint/lib/rules/no-process-exit.js +43 -0
- data/node_modules/eslint/lib/rules/no-proto.js +38 -0
- data/node_modules/eslint/lib/rules/no-prototype-builtins.js +52 -0
- data/node_modules/eslint/lib/rules/no-redeclare.js +106 -0
- data/node_modules/eslint/lib/rules/no-regex-spaces.js +46 -0
- data/node_modules/eslint/lib/rules/no-restricted-globals.js +80 -0
- data/node_modules/eslint/lib/rules/no-restricted-imports.js +51 -0
- data/node_modules/eslint/lib/rules/no-restricted-modules.js +91 -0
- data/node_modules/eslint/lib/rules/no-restricted-syntax.js +53 -0
- data/node_modules/eslint/lib/rules/no-return-assign.js +78 -0
- data/node_modules/eslint/lib/rules/no-script-url.js +44 -0
- data/node_modules/eslint/lib/rules/no-self-assign.js +133 -0
- data/node_modules/eslint/lib/rules/no-self-compare.js +40 -0
- data/node_modules/eslint/lib/rules/no-sequences.js +109 -0
- data/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +63 -0
- data/node_modules/eslint/lib/rules/no-shadow.js +188 -0
- data/node_modules/eslint/lib/rules/no-spaced-func.js +71 -0
- data/node_modules/eslint/lib/rules/no-sparse-arrays.js +43 -0
- data/node_modules/eslint/lib/rules/no-sync.js +40 -0
- data/node_modules/eslint/lib/rules/no-ternary.js +34 -0
- data/node_modules/eslint/lib/rules/no-this-before-super.js +299 -0
- data/node_modules/eslint/lib/rules/no-throw-literal.js +79 -0
- data/node_modules/eslint/lib/rules/no-trailing-spaces.js +135 -0
- data/node_modules/eslint/lib/rules/no-undef-init.js +38 -0
- data/node_modules/eslint/lib/rules/no-undef.js +71 -0
- data/node_modules/eslint/lib/rules/no-undefined.js +38 -0
- data/node_modules/eslint/lib/rules/no-underscore-dangle.js +154 -0
- data/node_modules/eslint/lib/rules/no-unexpected-multiline.js +81 -0
- data/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +367 -0
- data/node_modules/eslint/lib/rules/no-unneeded-ternary.js +70 -0
- data/node_modules/eslint/lib/rules/no-unreachable.js +102 -0
- data/node_modules/eslint/lib/rules/no-unsafe-finally.js +99 -0
- data/node_modules/eslint/lib/rules/no-unused-expressions.js +117 -0
- data/node_modules/eslint/lib/rules/no-unused-labels.js +90 -0
- data/node_modules/eslint/lib/rules/no-unused-vars.js +342 -0
- data/node_modules/eslint/lib/rules/no-use-before-define.js +246 -0
- data/node_modules/eslint/lib/rules/no-useless-call.js +107 -0
- data/node_modules/eslint/lib/rules/no-useless-computed-key.js +39 -0
- data/node_modules/eslint/lib/rules/no-useless-concat.js +104 -0
- data/node_modules/eslint/lib/rules/no-useless-constructor.js +182 -0
- data/node_modules/eslint/lib/rules/no-useless-escape.js +130 -0
- data/node_modules/eslint/lib/rules/no-useless-rename.js +150 -0
- data/node_modules/eslint/lib/rules/no-var.js +35 -0
- data/node_modules/eslint/lib/rules/no-void.js +37 -0
- data/node_modules/eslint/lib/rules/no-warning-comments.js +130 -0
- data/node_modules/eslint/lib/rules/no-whitespace-before-property.js +97 -0
- data/node_modules/eslint/lib/rules/no-with.js +32 -0
- data/node_modules/eslint/lib/rules/object-curly-newline.js +209 -0
- data/node_modules/eslint/lib/rules/object-curly-spacing.js +286 -0
- data/node_modules/eslint/lib/rules/object-property-newline.js +73 -0
- data/node_modules/eslint/lib/rules/object-shorthand.js +247 -0
- data/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +83 -0
- data/node_modules/eslint/lib/rules/one-var.js +332 -0
- data/node_modules/eslint/lib/rules/operator-assignment.js +133 -0
- data/node_modules/eslint/lib/rules/operator-linebreak.js +159 -0
- data/node_modules/eslint/lib/rules/padded-blocks.js +245 -0
- data/node_modules/eslint/lib/rules/prefer-arrow-callback.js +254 -0
- data/node_modules/eslint/lib/rules/prefer-const.js +307 -0
- data/node_modules/eslint/lib/rules/prefer-reflect.js +111 -0
- data/node_modules/eslint/lib/rules/prefer-rest-params.js +83 -0
- data/node_modules/eslint/lib/rules/prefer-spread.js +103 -0
- data/node_modules/eslint/lib/rules/prefer-template.js +106 -0
- data/node_modules/eslint/lib/rules/quote-props.js +231 -0
- data/node_modules/eslint/lib/rules/quotes.js +260 -0
- data/node_modules/eslint/lib/rules/radix.js +171 -0
- data/node_modules/eslint/lib/rules/require-jsdoc.js +106 -0
- data/node_modules/eslint/lib/rules/require-yield.js +73 -0
- data/node_modules/eslint/lib/rules/rest-spread-spacing.js +107 -0
- data/node_modules/eslint/lib/rules/semi-spacing.js +222 -0
- data/node_modules/eslint/lib/rules/semi.js +226 -0
- data/node_modules/eslint/lib/rules/sort-imports.js +175 -0
- data/node_modules/eslint/lib/rules/sort-vars.js +63 -0
- data/node_modules/eslint/lib/rules/space-before-blocks.js +151 -0
- data/node_modules/eslint/lib/rules/space-before-function-paren.js +142 -0
- data/node_modules/eslint/lib/rules/space-in-parens.js +281 -0
- data/node_modules/eslint/lib/rules/space-infix-ops.js +162 -0
- data/node_modules/eslint/lib/rules/space-unary-ops.js +280 -0
- data/node_modules/eslint/lib/rules/spaced-comment.js +314 -0
- data/node_modules/eslint/lib/rules/strict.js +221 -0
- data/node_modules/eslint/lib/rules/template-curly-spacing.js +115 -0
- data/node_modules/eslint/lib/rules/unicode-bom.js +66 -0
- data/node_modules/eslint/lib/rules/use-isnan.js +34 -0
- data/node_modules/eslint/lib/rules/valid-jsdoc.js +396 -0
- data/node_modules/eslint/lib/rules/valid-typeof.js +52 -0
- data/node_modules/eslint/lib/rules/vars-on-top.js +149 -0
- data/node_modules/eslint/lib/rules/wrap-iife.js +66 -0
- data/node_modules/eslint/lib/rules/wrap-regex.js +49 -0
- data/node_modules/eslint/lib/rules/yield-star-spacing.js +113 -0
- data/node_modules/eslint/lib/rules/yoda.js +257 -0
- data/node_modules/eslint/lib/testers/event-generator-tester.js +62 -0
- data/node_modules/eslint/lib/testers/rule-tester.js +466 -0
- data/node_modules/eslint/lib/timing.js +144 -0
- data/node_modules/eslint/lib/token-store.js +203 -0
- data/node_modules/eslint/lib/util/comment-event-generator.js +115 -0
- data/node_modules/eslint/lib/util/glob-util.js +180 -0
- data/node_modules/eslint/lib/util/hash.js +35 -0
- data/node_modules/eslint/lib/util/keywords.js +67 -0
- data/node_modules/eslint/lib/util/module-resolver.js +88 -0
- data/node_modules/eslint/lib/util/node-event-generator.js +53 -0
- data/node_modules/eslint/lib/util/npm-util.js +135 -0
- data/node_modules/eslint/lib/util/path-util.js +75 -0
- data/node_modules/eslint/lib/util/rule-fixer.js +145 -0
- data/node_modules/eslint/lib/util/source-code-fixer.js +137 -0
- data/node_modules/eslint/lib/util/source-code-util.js +112 -0
- data/node_modules/eslint/lib/util/source-code.js +304 -0
- data/node_modules/eslint/lib/util/traverser.js +56 -0
- data/node_modules/eslint/messages/plugin-missing.txt +9 -0
- data/node_modules/eslint/node_modules/.bin/js-yaml +1 -0
- data/node_modules/eslint/node_modules/.bin/mkdirp +1 -0
- data/node_modules/eslint/node_modules/.bin/shjs +1 -0
- data/node_modules/eslint/node_modules/.bin/strip-json-comments +1 -0
- data/node_modules/eslint/package.json +118 -0
- data/node_modules/espree/CHANGELOG.md +358 -0
- data/node_modules/espree/LICENSE +22 -0
- data/node_modules/espree/README.md +147 -0
- data/node_modules/espree/espree.js +822 -0
- data/node_modules/espree/lib/ast-node-types.js +97 -0
- data/node_modules/espree/lib/comment-attachment.js +175 -0
- data/node_modules/espree/lib/features.js +32 -0
- data/node_modules/espree/lib/token-translator.js +256 -0
- data/node_modules/espree/lib/visitor-keys.js +127 -0
- data/node_modules/espree/node_modules/.bin/acorn +1 -0
- data/node_modules/espree/package.json +60 -0
- data/node_modules/esprima/ChangeLog +209 -0
- data/node_modules/esprima/LICENSE.BSD +21 -0
- data/node_modules/esprima/README.md +44 -0
- data/node_modules/esprima/bin/esparse.js +139 -0
- data/node_modules/esprima/bin/esvalidate.js +236 -0
- data/node_modules/esprima/dist/esprima.js +6401 -0
- data/node_modules/esprima/package.json +109 -0
- data/node_modules/esrecurse/esrecurse.js +135 -0
- data/node_modules/esrecurse/gulpfile.coffee +79 -0
- data/node_modules/esrecurse/node_modules/estraverse/.jshintrc +16 -0
- data/node_modules/esrecurse/node_modules/estraverse/LICENSE.BSD +19 -0
- data/node_modules/esrecurse/node_modules/estraverse/README.md +124 -0
- data/node_modules/esrecurse/node_modules/estraverse/estraverse.js +843 -0
- data/node_modules/esrecurse/node_modules/estraverse/gulpfile.js +70 -0
- data/node_modules/esrecurse/node_modules/estraverse/package.json +39 -0
- data/node_modules/esrecurse/package.json +45 -0
- data/node_modules/estraverse/.babelrc +3 -0
- data/node_modules/estraverse/.jshintrc +16 -0
- data/node_modules/estraverse/LICENSE.BSD +19 -0
- data/node_modules/estraverse/estraverse.js +849 -0
- data/node_modules/estraverse/gulpfile.js +70 -0
- data/node_modules/estraverse/package.json +40 -0
- data/node_modules/esutils/LICENSE.BSD +19 -0
- data/node_modules/esutils/README.md +169 -0
- data/node_modules/esutils/lib/ast.js +144 -0
- data/node_modules/esutils/lib/code.js +135 -0
- data/node_modules/esutils/lib/keyword.js +165 -0
- data/node_modules/esutils/lib/utils.js +33 -0
- data/node_modules/esutils/package.json +49 -0
- data/node_modules/event-emitter/.lint +15 -0
- data/node_modules/event-emitter/.npmignore +3 -0
- data/node_modules/event-emitter/.testignore +1 -0
- data/node_modules/event-emitter/.travis.yml +16 -0
- data/node_modules/event-emitter/CHANGES +73 -0
- data/node_modules/event-emitter/LICENSE +19 -0
- data/node_modules/event-emitter/README.md +98 -0
- data/node_modules/event-emitter/all-off.js +19 -0
- data/node_modules/event-emitter/benchmark/many-on.js +83 -0
- data/node_modules/event-emitter/benchmark/single-on.js +73 -0
- data/node_modules/event-emitter/emit-error.js +13 -0
- data/node_modules/event-emitter/has-listeners.js +16 -0
- data/node_modules/event-emitter/index.js +132 -0
- data/node_modules/event-emitter/package.json +34 -0
- data/node_modules/event-emitter/pipe.js +42 -0
- data/node_modules/event-emitter/test/all-off.js +48 -0
- data/node_modules/event-emitter/test/emit-error.js +14 -0
- data/node_modules/event-emitter/test/has-listeners.js +42 -0
- data/node_modules/event-emitter/test/index.js +107 -0
- data/node_modules/event-emitter/test/pipe.js +53 -0
- data/node_modules/event-emitter/test/unify.js +123 -0
- data/node_modules/event-emitter/unify.js +50 -0
- data/node_modules/exit-hook/index.js +30 -0
- data/node_modules/exit-hook/package.json +39 -0
- data/node_modules/exit-hook/readme.md +40 -0
- data/node_modules/fast-levenshtein/LICENSE.md +25 -0
- data/node_modules/fast-levenshtein/README.md +104 -0
- data/node_modules/fast-levenshtein/levenshtein.js +136 -0
- data/node_modules/fast-levenshtein/package.json +39 -0
- data/node_modules/figures/index.js +147 -0
- data/node_modules/figures/license +21 -0
- data/node_modules/figures/package.json +45 -0
- data/node_modules/figures/readme.md +115 -0
- data/node_modules/file-entry-cache/LICENSE +22 -0
- data/node_modules/file-entry-cache/README.md +107 -0
- data/node_modules/file-entry-cache/cache.js +192 -0
- data/node_modules/file-entry-cache/changelog.md +69 -0
- data/node_modules/file-entry-cache/package.json +84 -0
- data/node_modules/flat-cache/LICENSE +22 -0
- data/node_modules/flat-cache/README.md +71 -0
- data/node_modules/flat-cache/cache.js +188 -0
- data/node_modules/flat-cache/changelog.md +136 -0
- data/node_modules/flat-cache/package.json +87 -0
- data/node_modules/flat-cache/utils.js +39 -0
- data/node_modules/front-matter/.npmignore +2 -0
- data/node_modules/front-matter/.travis.yml +32 -0
- data/node_modules/front-matter/.zuul.yml +18 -0
- data/node_modules/front-matter/LICENSE +9 -0
- data/node_modules/front-matter/Makefile +70 -0
- data/node_modules/front-matter/README.md +140 -0
- data/node_modules/front-matter/examples/bom.md +3 -0
- data/node_modules/front-matter/examples/complex-yaml.md +22 -0
- data/node_modules/front-matter/examples/dashes-seperator.md +14 -0
- data/node_modules/front-matter/examples/dots-ending.md +6 -0
- data/node_modules/front-matter/examples/missing-body.md +8 -0
- data/node_modules/front-matter/examples/no-front-matter.md +11 -0
- data/node_modules/front-matter/examples/wrapped-text.md +21 -0
- data/node_modules/front-matter/examples/yaml-seperator.md +6 -0
- data/node_modules/front-matter/index.js +50 -0
- data/node_modules/front-matter/node_modules/.bin/js-yaml +1 -0
- data/node_modules/front-matter/notes.md +53 -0
- data/node_modules/front-matter/package.json +42 -0
- data/node_modules/front-matter/test/index.js +227 -0
- data/node_modules/fs-extra/.npmignore +8 -0
- data/node_modules/fs-extra/CHANGELOG.md +656 -0
- data/node_modules/fs-extra/LICENSE +15 -0
- data/node_modules/fs-extra/README.md +603 -0
- data/node_modules/fs-extra/lib/copy-sync/copy-file-sync.js +42 -0
- data/node_modules/fs-extra/lib/copy-sync/copy-sync.js +56 -0
- data/node_modules/fs-extra/lib/copy-sync/index.js +3 -0
- data/node_modules/fs-extra/lib/copy/copy.js +50 -0
- data/node_modules/fs-extra/lib/copy/index.js +3 -0
- data/node_modules/fs-extra/lib/copy/ncp.js +232 -0
- data/node_modules/fs-extra/lib/empty/index.js +47 -0
- data/node_modules/fs-extra/lib/ensure/file.js +43 -0
- data/node_modules/fs-extra/lib/ensure/index.js +21 -0
- data/node_modules/fs-extra/lib/ensure/link.js +58 -0
- data/node_modules/fs-extra/lib/ensure/symlink-paths.js +96 -0
- data/node_modules/fs-extra/lib/ensure/symlink-type.js +27 -0
- data/node_modules/fs-extra/lib/ensure/symlink.js +62 -0
- data/node_modules/fs-extra/lib/index.js +38 -0
- data/node_modules/fs-extra/lib/json/index.js +9 -0
- data/node_modules/fs-extra/lib/json/jsonfile.js +14 -0
- data/node_modules/fs-extra/lib/json/output-json-sync.js +16 -0
- data/node_modules/fs-extra/lib/json/output-json.js +24 -0
- data/node_modules/fs-extra/lib/mkdirs/index.js +9 -0
- data/node_modules/fs-extra/lib/mkdirs/mkdirs-sync.js +57 -0
- data/node_modules/fs-extra/lib/mkdirs/mkdirs.js +61 -0
- data/node_modules/fs-extra/lib/mkdirs/win32.js +24 -0
- data/node_modules/fs-extra/lib/move/index.js +161 -0
- data/node_modules/fs-extra/lib/output/index.js +35 -0
- data/node_modules/fs-extra/lib/remove/index.js +15 -0
- data/node_modules/fs-extra/lib/remove/rimraf.js +301 -0
- data/node_modules/fs-extra/lib/util/assign.js +14 -0
- data/node_modules/fs-extra/lib/util/utimes.js +70 -0
- data/node_modules/fs-extra/lib/walk-sync/index.js +20 -0
- data/node_modules/fs-extra/lib/walk/index.js +5 -0
- data/node_modules/fs-extra/package.json +61 -0
- data/node_modules/fs.realpath/LICENSE +43 -0
- data/node_modules/fs.realpath/README.md +33 -0
- data/node_modules/fs.realpath/index.js +66 -0
- data/node_modules/fs.realpath/old.js +303 -0
- data/node_modules/fs.realpath/package.json +26 -0
- data/node_modules/generate-function/.npmignore +1 -0
- data/node_modules/generate-function/.travis.yml +3 -0
- data/node_modules/generate-function/README.md +72 -0
- data/node_modules/generate-function/example.js +27 -0
- data/node_modules/generate-function/index.js +61 -0
- data/node_modules/generate-function/package.json +29 -0
- data/node_modules/generate-function/test.js +33 -0
- data/node_modules/generate-object-property/.npmignore +1 -0
- data/node_modules/generate-object-property/.travis.yml +3 -0
- data/node_modules/generate-object-property/LICENSE +21 -0
- data/node_modules/generate-object-property/README.md +19 -0
- data/node_modules/generate-object-property/index.js +12 -0
- data/node_modules/generate-object-property/package.json +25 -0
- data/node_modules/generate-object-property/test.js +12 -0
- data/node_modules/glob/LICENSE +15 -0
- data/node_modules/glob/README.md +368 -0
- data/node_modules/glob/changelog.md +67 -0
- data/node_modules/glob/common.js +240 -0
- data/node_modules/glob/glob.js +792 -0
- data/node_modules/glob/package.json +43 -0
- data/node_modules/glob/sync.js +486 -0
- data/node_modules/globals/globals.json +1291 -0
- data/node_modules/globals/index.js +1 -0
- data/node_modules/globals/license +21 -0
- data/node_modules/globals/package.json +35 -0
- data/node_modules/globals/readme.md +41 -0
- data/node_modules/globby/index.js +65 -0
- data/node_modules/globby/license +21 -0
- data/node_modules/globby/package.json +70 -0
- data/node_modules/globby/readme.md +82 -0
- data/node_modules/globule/LICENSE +22 -0
- data/node_modules/globule/README.md +129 -0
- data/node_modules/globule/lib/globule.js +192 -0
- data/node_modules/globule/package.json +50 -0
- data/node_modules/gonzales-pe/.editorconfig +6 -0
- data/node_modules/gonzales-pe/.eslintrc.yaml +63 -0
- data/node_modules/gonzales-pe/.gitmessage.txt +23 -0
- data/node_modules/gonzales-pe/.jscs.json +64 -0
- data/node_modules/gonzales-pe/.jshintrc +10 -0
- data/node_modules/gonzales-pe/.npmignore +6 -0
- data/node_modules/gonzales-pe/.travis.yml +14 -0
- data/node_modules/gonzales-pe/CHANGELOG.md +381 -0
- data/node_modules/gonzales-pe/MIT-LICENSE.txt +19 -0
- data/node_modules/gonzales-pe/README.md +802 -0
- data/node_modules/gonzales-pe/appveyor.yml +21 -0
- data/node_modules/gonzales-pe/bin/gonzales.js +116 -0
- data/node_modules/gonzales-pe/lib/gonzales.js +11873 -0
- data/node_modules/gonzales-pe/package.json +49 -0
- data/node_modules/gonzales-pe/tags +19 -0
- data/node_modules/gonzales-pe/webpack.config.js +24 -0
- data/node_modules/graceful-fs/LICENSE +15 -0
- data/node_modules/graceful-fs/README.md +133 -0
- data/node_modules/graceful-fs/fs.js +21 -0
- data/node_modules/graceful-fs/graceful-fs.js +262 -0
- data/node_modules/graceful-fs/legacy-streams.js +118 -0
- data/node_modules/graceful-fs/package.json +47 -0
- data/node_modules/graceful-fs/polyfills.js +330 -0
- data/node_modules/graceful-readlink/.npmignore +3 -0
- data/node_modules/graceful-readlink/.travis.yml +5 -0
- data/node_modules/graceful-readlink/LICENSE +22 -0
- data/node_modules/graceful-readlink/README.md +17 -0
- data/node_modules/graceful-readlink/index.js +12 -0
- data/node_modules/graceful-readlink/package.json +18 -0
- data/node_modules/has-ansi/index.js +4 -0
- data/node_modules/has-ansi/license +21 -0
- data/node_modules/has-ansi/package.json +55 -0
- data/node_modules/has-ansi/readme.md +36 -0
- data/node_modules/ignore/LICENSE-MIT +21 -0
- data/node_modules/ignore/README.md +232 -0
- data/node_modules/ignore/ignore.js +424 -0
- data/node_modules/ignore/package.json +45 -0
- data/node_modules/imurmurhash/README.md +122 -0
- data/node_modules/imurmurhash/imurmurhash.js +138 -0
- data/node_modules/imurmurhash/imurmurhash.min.js +12 -0
- data/node_modules/imurmurhash/package.json +40 -0
- data/node_modules/inflight/LICENSE +15 -0
- data/node_modules/inflight/README.md +37 -0
- data/node_modules/inflight/inflight.js +54 -0
- data/node_modules/inflight/package.json +29 -0
- data/node_modules/inherits/LICENSE +16 -0
- data/node_modules/inherits/README.md +42 -0
- data/node_modules/inherits/inherits.js +1 -0
- data/node_modules/inherits/inherits_browser.js +23 -0
- data/node_modules/inherits/package.json +22 -0
- data/node_modules/inherits/test.js +25 -0
- data/node_modules/inquirer/README.md +301 -0
- data/node_modules/inquirer/lib/inquirer.js +79 -0
- data/node_modules/inquirer/lib/objects/choice.js +36 -0
- data/node_modules/inquirer/lib/objects/choices.js +113 -0
- data/node_modules/inquirer/lib/objects/separator.js +35 -0
- data/node_modules/inquirer/lib/prompts/base.js +175 -0
- data/node_modules/inquirer/lib/prompts/checkbox.js +213 -0
- data/node_modules/inquirer/lib/prompts/confirm.js +110 -0
- data/node_modules/inquirer/lib/prompts/expand.js +255 -0
- data/node_modules/inquirer/lib/prompts/input.js +111 -0
- data/node_modules/inquirer/lib/prompts/list.js +172 -0
- data/node_modules/inquirer/lib/prompts/password.js +118 -0
- data/node_modules/inquirer/lib/prompts/rawlist.js +183 -0
- data/node_modules/inquirer/lib/ui/baseUI.js +56 -0
- data/node_modules/inquirer/lib/ui/bottom-bar.js +98 -0
- data/node_modules/inquirer/lib/ui/prompt.js +126 -0
- data/node_modules/inquirer/lib/utils/events.js +37 -0
- data/node_modules/inquirer/lib/utils/paginator.js +38 -0
- data/node_modules/inquirer/lib/utils/readline.js +51 -0
- data/node_modules/inquirer/lib/utils/screen-manager.js +129 -0
- data/node_modules/inquirer/lib/utils/utils.js +47 -0
- data/node_modules/inquirer/package.json +49 -0
- data/node_modules/is-fullwidth-code-point/index.js +46 -0
- data/node_modules/is-fullwidth-code-point/license +21 -0
- data/node_modules/is-fullwidth-code-point/package.json +45 -0
- data/node_modules/is-fullwidth-code-point/readme.md +39 -0
- data/node_modules/is-my-json-valid/.npmignore +2 -0
- data/node_modules/is-my-json-valid/.travis.yml +3 -0
- data/node_modules/is-my-json-valid/LICENSE +21 -0
- data/node_modules/is-my-json-valid/README.md +200 -0
- data/node_modules/is-my-json-valid/example.js +18 -0
- data/node_modules/is-my-json-valid/formats.js +14 -0
- data/node_modules/is-my-json-valid/index.js +590 -0
- data/node_modules/is-my-json-valid/package.json +34 -0
- data/node_modules/is-my-json-valid/require.js +12 -0
- data/node_modules/is-my-json-valid/test/fixtures/cosmic.js +84 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/additionalItems.json +82 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/additionalProperties.json +88 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/allOf.json +112 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/anyOf.json +68 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/bignum.json +107 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/default.json +49 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/definitions.json +32 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/dependencies.json +113 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/enum.json +72 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/format.json +143 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/items.json +46 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/maxItems.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/maxLength.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/maxProperties.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/maximum.json +42 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/minItems.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/minLength.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/minProperties.json +28 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/minimum.json +42 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/multipleOf.json +96 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/not.json +96 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndFormat.json +18 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndObject.json +18 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/oneOf.json +68 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/pattern.json +23 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/patternProperties.json +110 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/properties.json +92 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/ref.json +128 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/refRemote.json +74 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/required.json +39 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/type.json +330 -0
- data/node_modules/is-my-json-valid/test/json-schema-draft4/uniqueItems.json +79 -0
- data/node_modules/is-my-json-valid/test/json-schema.js +23 -0
- data/node_modules/is-my-json-valid/test/misc.js +471 -0
- data/node_modules/is-path-cwd/index.js +6 -0
- data/node_modules/is-path-cwd/package.json +33 -0
- data/node_modules/is-path-cwd/readme.md +28 -0
- data/node_modules/is-path-in-cwd/index.js +6 -0
- data/node_modules/is-path-in-cwd/package.json +38 -0
- data/node_modules/is-path-in-cwd/readme.md +28 -0
- data/node_modules/is-path-inside/index.js +14 -0
- data/node_modules/is-path-inside/package.json +36 -0
- data/node_modules/is-path-inside/readme.md +31 -0
- data/node_modules/is-property/.npmignore +17 -0
- data/node_modules/is-property/LICENSE +22 -0
- data/node_modules/is-property/README.md +28 -0
- data/node_modules/is-property/is-property.js +5 -0
- data/node_modules/is-property/package.json +36 -0
- data/node_modules/is-resolvable/LICENSE +20 -0
- data/node_modules/is-resolvable/README.md +68 -0
- data/node_modules/is-resolvable/index.js +26 -0
- data/node_modules/is-resolvable/package.json +38 -0
- data/node_modules/isarray/.npmignore +1 -0
- data/node_modules/isarray/.travis.yml +4 -0
- data/node_modules/isarray/Makefile +6 -0
- data/node_modules/isarray/README.md +60 -0
- data/node_modules/isarray/component.json +19 -0
- data/node_modules/isarray/index.js +5 -0
- data/node_modules/isarray/package.json +45 -0
- data/node_modules/isarray/test.js +20 -0
- data/node_modules/js-yaml/CHANGELOG.md +431 -0
- data/node_modules/js-yaml/LICENSE +21 -0
- data/node_modules/js-yaml/README.md +312 -0
- data/node_modules/js-yaml/bin/js-yaml.js +132 -0
- data/node_modules/js-yaml/dist/js-yaml.js +3868 -0
- data/node_modules/js-yaml/dist/js-yaml.min.js +3 -0
- data/node_modules/js-yaml/index.js +7 -0
- data/node_modules/js-yaml/lib/js-yaml.js +39 -0
- data/node_modules/js-yaml/lib/js-yaml/common.js +59 -0
- data/node_modules/js-yaml/lib/js-yaml/dumper.js +801 -0
- data/node_modules/js-yaml/lib/js-yaml/exception.js +43 -0
- data/node_modules/js-yaml/lib/js-yaml/loader.js +1591 -0
- data/node_modules/js-yaml/lib/js-yaml/mark.js +76 -0
- data/node_modules/js-yaml/lib/js-yaml/schema.js +108 -0
- data/node_modules/js-yaml/lib/js-yaml/schema/core.js +18 -0
- data/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +25 -0
- data/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +28 -0
- data/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +17 -0
- data/node_modules/js-yaml/lib/js-yaml/schema/json.js +25 -0
- data/node_modules/js-yaml/lib/js-yaml/type.js +61 -0
- data/node_modules/js-yaml/lib/js-yaml/type/binary.js +138 -0
- data/node_modules/js-yaml/lib/js-yaml/type/bool.js +35 -0
- data/node_modules/js-yaml/lib/js-yaml/type/float.js +111 -0
- data/node_modules/js-yaml/lib/js-yaml/type/int.js +168 -0
- data/node_modules/js-yaml/lib/js-yaml/type/js/function.js +84 -0
- data/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +60 -0
- data/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +28 -0
- data/node_modules/js-yaml/lib/js-yaml/type/map.js +8 -0
- data/node_modules/js-yaml/lib/js-yaml/type/merge.js +12 -0
- data/node_modules/js-yaml/lib/js-yaml/type/null.js +34 -0
- data/node_modules/js-yaml/lib/js-yaml/type/omap.js +44 -0
- data/node_modules/js-yaml/lib/js-yaml/type/pairs.js +53 -0
- data/node_modules/js-yaml/lib/js-yaml/type/seq.js +8 -0
- data/node_modules/js-yaml/lib/js-yaml/type/set.js +29 -0
- data/node_modules/js-yaml/lib/js-yaml/type/str.js +8 -0
- data/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +88 -0
- data/node_modules/js-yaml/node_modules/.bin/esparse +1 -0
- data/node_modules/js-yaml/node_modules/.bin/esvalidate +1 -0
- data/node_modules/js-yaml/package.json +46 -0
- data/node_modules/json-stable-stringify/.npmignore +1 -0
- data/node_modules/json-stable-stringify/.travis.yml +4 -0
- data/node_modules/json-stable-stringify/LICENSE +18 -0
- data/node_modules/json-stable-stringify/example/key_cmp.js +7 -0
- data/node_modules/json-stable-stringify/example/nested.js +3 -0
- data/node_modules/json-stable-stringify/example/str.js +3 -0
- data/node_modules/json-stable-stringify/example/value_cmp.js +7 -0
- data/node_modules/json-stable-stringify/index.js +84 -0
- data/node_modules/json-stable-stringify/package.json +44 -0
- data/node_modules/json-stable-stringify/readme.markdown +130 -0
- data/node_modules/json-stable-stringify/test/cmp.js +11 -0
- data/node_modules/json-stable-stringify/test/nested.js +35 -0
- data/node_modules/json-stable-stringify/test/replacer.js +74 -0
- data/node_modules/json-stable-stringify/test/space.js +59 -0
- data/node_modules/json-stable-stringify/test/str.js +32 -0
- data/node_modules/json-stable-stringify/test/to-json.js +20 -0
- data/node_modules/jsonfile/.npmignore +2 -0
- data/node_modules/jsonfile/CHANGELOG.md +126 -0
- data/node_modules/jsonfile/LICENSE +15 -0
- data/node_modules/jsonfile/README.md +162 -0
- data/node_modules/jsonfile/appveyor.yml +28 -0
- data/node_modules/jsonfile/index.js +133 -0
- data/node_modules/jsonfile/package.json +35 -0
- data/node_modules/jsonify/README.markdown +34 -0
- data/node_modules/jsonify/index.js +2 -0
- data/node_modules/jsonify/lib/parse.js +273 -0
- data/node_modules/jsonify/lib/stringify.js +154 -0
- data/node_modules/jsonify/package.json +30 -0
- data/node_modules/jsonify/test/parse.js +16 -0
- data/node_modules/jsonify/test/stringify.js +15 -0
- data/node_modules/jsonpointer/LICENSE.md +21 -0
- data/node_modules/jsonpointer/README.md +39 -0
- data/node_modules/jsonpointer/jsonpointer.js +93 -0
- data/node_modules/jsonpointer/package.json +37 -0
- data/node_modules/klaw/.npmignore +3 -0
- data/node_modules/klaw/CHANGELOG.md +42 -0
- data/node_modules/klaw/LICENSE +15 -0
- data/node_modules/klaw/README.md +270 -0
- data/node_modules/klaw/package.json +40 -0
- data/node_modules/klaw/src/assign.js +16 -0
- data/node_modules/klaw/src/index.js +57 -0
- data/node_modules/levn/LICENSE +22 -0
- data/node_modules/levn/README.md +196 -0
- data/node_modules/levn/lib/cast.js +298 -0
- data/node_modules/levn/lib/coerce.js +285 -0
- data/node_modules/levn/lib/index.js +22 -0
- data/node_modules/levn/lib/parse-string.js +113 -0
- data/node_modules/levn/lib/parse.js +102 -0
- data/node_modules/levn/package.json +47 -0
- data/node_modules/lodash.capitalize/LICENSE +47 -0
- data/node_modules/lodash.capitalize/README.md +18 -0
- data/node_modules/lodash.capitalize/index.js +322 -0
- data/node_modules/lodash.capitalize/package.json +17 -0
- data/node_modules/lodash.kebabcase/LICENSE +47 -0
- data/node_modules/lodash.kebabcase/README.md +18 -0
- data/node_modules/lodash.kebabcase/index.js +435 -0
- data/node_modules/lodash.kebabcase/package.json +17 -0
- data/node_modules/lodash/LICENSE +47 -0
- data/node_modules/lodash/README.md +39 -0
- data/node_modules/lodash/_DataView.js +7 -0
- data/node_modules/lodash/_Hash.js +32 -0
- data/node_modules/lodash/_LazyWrapper.js +28 -0
- data/node_modules/lodash/_ListCache.js +32 -0
- data/node_modules/lodash/_LodashWrapper.js +22 -0
- data/node_modules/lodash/_Map.js +7 -0
- data/node_modules/lodash/_MapCache.js +32 -0
- data/node_modules/lodash/_Promise.js +7 -0
- data/node_modules/lodash/_Set.js +7 -0
- data/node_modules/lodash/_SetCache.js +27 -0
- data/node_modules/lodash/_Stack.js +27 -0
- data/node_modules/lodash/_Symbol.js +6 -0
- data/node_modules/lodash/_Uint8Array.js +6 -0
- data/node_modules/lodash/_WeakMap.js +7 -0
- data/node_modules/lodash/_addMapEntry.js +15 -0
- data/node_modules/lodash/_addSetEntry.js +15 -0
- data/node_modules/lodash/_apply.js +21 -0
- data/node_modules/lodash/_arrayAggregator.js +22 -0
- data/node_modules/lodash/_arrayEach.js +22 -0
- data/node_modules/lodash/_arrayEachRight.js +21 -0
- data/node_modules/lodash/_arrayEvery.js +23 -0
- data/node_modules/lodash/_arrayFilter.js +25 -0
- data/node_modules/lodash/_arrayIncludes.js +17 -0
- data/node_modules/lodash/_arrayIncludesWith.js +22 -0
- data/node_modules/lodash/_arrayLikeKeys.js +49 -0
- data/node_modules/lodash/_arrayMap.js +21 -0
- data/node_modules/lodash/_arrayPush.js +20 -0
- data/node_modules/lodash/_arrayReduce.js +26 -0
- data/node_modules/lodash/_arrayReduceRight.js +24 -0
- data/node_modules/lodash/_arraySample.js +15 -0
- data/node_modules/lodash/_arraySampleSize.js +17 -0
- data/node_modules/lodash/_arrayShuffle.js +15 -0
- data/node_modules/lodash/_arraySome.js +23 -0
- data/node_modules/lodash/_asciiSize.js +12 -0
- data/node_modules/lodash/_asciiToArray.js +12 -0
- data/node_modules/lodash/_asciiWords.js +15 -0
- data/node_modules/lodash/_assignInDefaults.js +27 -0
- data/node_modules/lodash/_assignMergeValue.js +20 -0
- data/node_modules/lodash/_assignValue.js +28 -0
- data/node_modules/lodash/_assocIndexOf.js +21 -0
- data/node_modules/lodash/_baseAggregator.js +21 -0
- data/node_modules/lodash/_baseAssign.js +17 -0
- data/node_modules/lodash/_baseAssignValue.js +25 -0
- data/node_modules/lodash/_baseAt.js +23 -0
- data/node_modules/lodash/_baseClamp.js +22 -0
- data/node_modules/lodash/_baseClone.js +133 -0
- data/node_modules/lodash/_baseConforms.js +18 -0
- data/node_modules/lodash/_baseConformsTo.js +27 -0
- data/node_modules/lodash/_baseCreate.js +30 -0
- data/node_modules/lodash/_baseDelay.js +21 -0
- data/node_modules/lodash/_baseDifference.js +67 -0
- data/node_modules/lodash/_baseEach.js +14 -0
- data/node_modules/lodash/_baseEachRight.js +14 -0
- data/node_modules/lodash/_baseEvery.js +21 -0
- data/node_modules/lodash/_baseExtremum.js +32 -0
- data/node_modules/lodash/_baseFill.js +32 -0
- data/node_modules/lodash/_baseFilter.js +21 -0
- data/node_modules/lodash/_baseFindIndex.js +24 -0
- data/node_modules/lodash/_baseFindKey.js +23 -0
- data/node_modules/lodash/_baseFlatten.js +38 -0
- data/node_modules/lodash/_baseFor.js +16 -0
- data/node_modules/lodash/_baseForOwn.js +16 -0
- data/node_modules/lodash/_baseForOwnRight.js +16 -0
- data/node_modules/lodash/_baseForRight.js +15 -0
- data/node_modules/lodash/_baseFunctions.js +19 -0
- data/node_modules/lodash/_baseGet.js +25 -0
- data/node_modules/lodash/_baseGetAllKeys.js +20 -0
- data/node_modules/lodash/_baseGetTag.js +29 -0
- data/node_modules/lodash/_baseGt.js +14 -0
- data/node_modules/lodash/_baseHas.js +19 -0
- data/node_modules/lodash/_baseHasIn.js +13 -0
- data/node_modules/lodash/_baseInRange.js +18 -0
- data/node_modules/lodash/_baseIndexOf.js +20 -0
- data/node_modules/lodash/_baseIndexOfWith.js +23 -0
- data/node_modules/lodash/_baseIntersection.js +74 -0
- data/node_modules/lodash/_baseInverter.js +21 -0
- data/node_modules/lodash/_baseInvoke.js +28 -0
- data/node_modules/lodash/_baseIsArguments.js +18 -0
- data/node_modules/lodash/_baseIsArrayBuffer.js +17 -0
- data/node_modules/lodash/_baseIsDate.js +18 -0
- data/node_modules/lodash/_baseIsEqual.js +30 -0
- data/node_modules/lodash/_baseIsEqualDeep.js +89 -0
- data/node_modules/lodash/_baseIsMap.js +18 -0
- data/node_modules/lodash/_baseIsMatch.js +62 -0
- data/node_modules/lodash/_baseIsNaN.js +12 -0
- data/node_modules/lodash/_baseIsNative.js +47 -0
- data/node_modules/lodash/_baseIsRegExp.js +18 -0
- data/node_modules/lodash/_baseIsSet.js +18 -0
- data/node_modules/lodash/_baseIsTypedArray.js +60 -0
- data/node_modules/lodash/_baseIteratee.js +31 -0
- data/node_modules/lodash/_baseKeys.js +30 -0
- data/node_modules/lodash/_baseKeysIn.js +33 -0
- data/node_modules/lodash/_baseLodash.js +10 -0
- data/node_modules/lodash/_baseLt.js +14 -0
- data/node_modules/lodash/_baseMap.js +22 -0
- data/node_modules/lodash/_baseMatches.js +22 -0
- data/node_modules/lodash/_baseMatchesProperty.js +33 -0
- data/node_modules/lodash/_baseMean.js +20 -0
- data/node_modules/lodash/_baseMerge.js +41 -0
- data/node_modules/lodash/_baseMergeDeep.js +93 -0
- data/node_modules/lodash/_baseNth.js +20 -0
- data/node_modules/lodash/_baseOrderBy.js +34 -0
- data/node_modules/lodash/_basePick.js +19 -0
- data/node_modules/lodash/_basePickBy.js +28 -0
- data/node_modules/lodash/_baseProperty.js +14 -0
- data/node_modules/lodash/_basePropertyDeep.js +16 -0
- data/node_modules/lodash/_basePropertyOf.js +14 -0
- data/node_modules/lodash/_basePullAll.js +51 -0
- data/node_modules/lodash/_basePullAt.js +50 -0
- data/node_modules/lodash/_baseRandom.js +18 -0
- data/node_modules/lodash/_baseRange.js +28 -0
- data/node_modules/lodash/_baseReduce.js +23 -0
- data/node_modules/lodash/_baseRepeat.js +35 -0
- data/node_modules/lodash/_baseRest.js +17 -0
- data/node_modules/lodash/_baseSample.js +15 -0
- data/node_modules/lodash/_baseSampleSize.js +18 -0
- data/node_modules/lodash/_baseSet.js +48 -0
- data/node_modules/lodash/_baseSetData.js +17 -0
- data/node_modules/lodash/_baseSetToString.js +22 -0
- data/node_modules/lodash/_baseShuffle.js +15 -0
- data/node_modules/lodash/_baseSlice.js +31 -0
- data/node_modules/lodash/_baseSome.js +22 -0
- data/node_modules/lodash/_baseSortBy.js +21 -0
- data/node_modules/lodash/_baseSortedIndex.js +42 -0
- data/node_modules/lodash/_baseSortedIndexBy.js +64 -0
- data/node_modules/lodash/_baseSortedUniq.js +30 -0
- data/node_modules/lodash/_baseSum.js +24 -0
- data/node_modules/lodash/_baseTimes.js +20 -0
- data/node_modules/lodash/_baseToNumber.js +24 -0
- data/node_modules/lodash/_baseToPairs.js +18 -0
- data/node_modules/lodash/_baseToString.js +37 -0
- data/node_modules/lodash/_baseUnary.js +14 -0
- data/node_modules/lodash/_baseUniq.js +72 -0
- data/node_modules/lodash/_baseUnset.js +29 -0
- data/node_modules/lodash/_baseUpdate.js +18 -0
- data/node_modules/lodash/_baseValues.js +19 -0
- data/node_modules/lodash/_baseWhile.js +26 -0
- data/node_modules/lodash/_baseWrapperValue.js +25 -0
- data/node_modules/lodash/_baseXor.js +36 -0
- data/node_modules/lodash/_baseZipObject.js +23 -0
- data/node_modules/lodash/_cacheHas.js +13 -0
- data/node_modules/lodash/_castArrayLikeObject.js +14 -0
- data/node_modules/lodash/_castFunction.js +14 -0
- data/node_modules/lodash/_castPath.js +15 -0
- data/node_modules/lodash/_castRest.js +14 -0
- data/node_modules/lodash/_castSlice.js +18 -0
- data/node_modules/lodash/_charsEndIndex.js +19 -0
- data/node_modules/lodash/_charsStartIndex.js +20 -0
- data/node_modules/lodash/_cloneArrayBuffer.js +16 -0
- data/node_modules/lodash/_cloneBuffer.js +35 -0
- data/node_modules/lodash/_cloneDataView.js +16 -0
- data/node_modules/lodash/_cloneMap.js +19 -0
- data/node_modules/lodash/_cloneRegExp.js +17 -0
- data/node_modules/lodash/_cloneSet.js +19 -0
- data/node_modules/lodash/_cloneSymbol.js +18 -0
- data/node_modules/lodash/_cloneTypedArray.js +16 -0
- data/node_modules/lodash/_compareAscending.js +41 -0
- data/node_modules/lodash/_compareMultiple.js +44 -0
- data/node_modules/lodash/_composeArgs.js +39 -0
- data/node_modules/lodash/_composeArgsRight.js +41 -0
- data/node_modules/lodash/_copyArray.js +20 -0
- data/node_modules/lodash/_copyObject.js +40 -0
- data/node_modules/lodash/_copySymbols.js +16 -0
- data/node_modules/lodash/_coreJsData.js +6 -0
- data/node_modules/lodash/_countHolders.js +21 -0
- data/node_modules/lodash/_createAggregator.js +23 -0
- data/node_modules/lodash/_createAssigner.js +37 -0
- data/node_modules/lodash/_createBaseEach.js +32 -0
- data/node_modules/lodash/_createBaseFor.js +25 -0
- data/node_modules/lodash/_createBind.js +28 -0
- data/node_modules/lodash/_createCaseFirst.js +33 -0
- data/node_modules/lodash/_createCompounder.js +24 -0
- data/node_modules/lodash/_createCtor.js +37 -0
- data/node_modules/lodash/_createCurry.js +46 -0
- data/node_modules/lodash/_createFind.js +25 -0
- data/node_modules/lodash/_createFlow.js +82 -0
- data/node_modules/lodash/_createHybrid.js +92 -0
- data/node_modules/lodash/_createInverter.js +17 -0
- data/node_modules/lodash/_createMathOperation.js +38 -0
- data/node_modules/lodash/_createOver.js +27 -0
- data/node_modules/lodash/_createPadding.js +33 -0
- data/node_modules/lodash/_createPartial.js +43 -0
- data/node_modules/lodash/_createRange.js +30 -0
- data/node_modules/lodash/_createRecurry.js +56 -0
- data/node_modules/lodash/_createRelationalOperation.js +20 -0
- data/node_modules/lodash/_createRound.js +33 -0
- data/node_modules/lodash/_createSet.js +19 -0
- data/node_modules/lodash/_createToPairs.js +30 -0
- data/node_modules/lodash/_createWrap.js +107 -0
- data/node_modules/lodash/_deburrLetter.js +71 -0
- data/node_modules/lodash/_defineProperty.js +11 -0
- data/node_modules/lodash/_equalArrays.js +84 -0
- data/node_modules/lodash/_equalByTag.js +113 -0
- data/node_modules/lodash/_equalObjects.js +90 -0
- data/node_modules/lodash/_escapeHtmlChar.js +21 -0
- data/node_modules/lodash/_escapeStringChar.js +22 -0
- data/node_modules/lodash/_flatRest.js +16 -0
- data/node_modules/lodash/_freeGlobal.js +4 -0
- data/node_modules/lodash/_getAllKeys.js +16 -0
- data/node_modules/lodash/_getAllKeysIn.js +17 -0
- data/node_modules/lodash/_getData.js +15 -0
- data/node_modules/lodash/_getFuncName.js +31 -0
- data/node_modules/lodash/_getHolder.js +13 -0
- data/node_modules/lodash/_getMapData.js +18 -0
- data/node_modules/lodash/_getMatchData.js +24 -0
- data/node_modules/lodash/_getNative.js +17 -0
- data/node_modules/lodash/_getPrototype.js +6 -0
- data/node_modules/lodash/_getRawTag.js +46 -0
- data/node_modules/lodash/_getSymbols.js +16 -0
- data/node_modules/lodash/_getSymbolsIn.js +26 -0
- data/node_modules/lodash/_getTag.js +58 -0
- data/node_modules/lodash/_getValue.js +13 -0
- data/node_modules/lodash/_getView.js +33 -0
- data/node_modules/lodash/_getWrapDetails.js +17 -0
- data/node_modules/lodash/_hasPath.js +40 -0
- data/node_modules/lodash/_hasUnicode.js +24 -0
- data/node_modules/lodash/_hasUnicodeWord.js +15 -0
- data/node_modules/lodash/_hashClear.js +15 -0
- data/node_modules/lodash/_hashDelete.js +17 -0
- data/node_modules/lodash/_hashGet.js +30 -0
- data/node_modules/lodash/_hashHas.js +23 -0
- data/node_modules/lodash/_hashSet.js +23 -0
- data/node_modules/lodash/_initCloneArray.js +26 -0
- data/node_modules/lodash/_initCloneByTag.js +80 -0
- data/node_modules/lodash/_initCloneObject.js +18 -0
- data/node_modules/lodash/_insertWrapDetails.js +23 -0
- data/node_modules/lodash/_isFlattenable.js +20 -0
- data/node_modules/lodash/_isIndex.js +22 -0
- data/node_modules/lodash/_isIterateeCall.js +30 -0
- data/node_modules/lodash/_isKey.js +29 -0
- data/node_modules/lodash/_isKeyable.js +15 -0
- data/node_modules/lodash/_isLaziable.js +28 -0
- data/node_modules/lodash/_isMaskable.js +14 -0
- data/node_modules/lodash/_isMasked.js +20 -0
- data/node_modules/lodash/_isPrototype.js +18 -0
- data/node_modules/lodash/_isStrictComparable.js +15 -0
- data/node_modules/lodash/_iteratorToArray.js +18 -0
- data/node_modules/lodash/_lazyClone.js +23 -0
- data/node_modules/lodash/_lazyReverse.js +23 -0
- data/node_modules/lodash/_lazyValue.js +73 -0
- data/node_modules/lodash/_listCacheClear.js +13 -0
- data/node_modules/lodash/_listCacheDelete.js +35 -0
- data/node_modules/lodash/_listCacheGet.js +19 -0
- data/node_modules/lodash/_listCacheHas.js +16 -0
- data/node_modules/lodash/_listCacheSet.js +26 -0
- data/node_modules/lodash/_mapCacheClear.js +21 -0
- data/node_modules/lodash/_mapCacheDelete.js +18 -0
- data/node_modules/lodash/_mapCacheGet.js +16 -0
- data/node_modules/lodash/_mapCacheHas.js +16 -0
- data/node_modules/lodash/_mapCacheSet.js +22 -0
- data/node_modules/lodash/_mapToArray.js +18 -0
- data/node_modules/lodash/_matchesStrictComparable.js +20 -0
- data/node_modules/lodash/_memoizeCapped.js +26 -0
- data/node_modules/lodash/_mergeData.js +90 -0
- data/node_modules/lodash/_mergeDefaults.js +27 -0
- data/node_modules/lodash/_metaMap.js +6 -0
- data/node_modules/lodash/_nativeCreate.js +6 -0
- data/node_modules/lodash/_nativeKeys.js +6 -0
- data/node_modules/lodash/_nativeKeysIn.js +20 -0
- data/node_modules/lodash/_nodeUtil.js +22 -0
- data/node_modules/lodash/_objectToString.js +22 -0
- data/node_modules/lodash/_overArg.js +15 -0
- data/node_modules/lodash/_overRest.js +36 -0
- data/node_modules/lodash/_parent.js +16 -0
- data/node_modules/lodash/_reEscape.js +4 -0
- data/node_modules/lodash/_reEvaluate.js +4 -0
- data/node_modules/lodash/_reInterpolate.js +4 -0
- data/node_modules/lodash/_realNames.js +4 -0
- data/node_modules/lodash/_reorder.js +29 -0
- data/node_modules/lodash/_replaceHolders.js +29 -0
- data/node_modules/lodash/_root.js +9 -0
- data/node_modules/lodash/_setCacheAdd.js +19 -0
- data/node_modules/lodash/_setCacheHas.js +14 -0
- data/node_modules/lodash/_setData.js +20 -0
- data/node_modules/lodash/_setToArray.js +18 -0
- data/node_modules/lodash/_setToPairs.js +18 -0
- data/node_modules/lodash/_setToString.js +14 -0
- data/node_modules/lodash/_setWrapToString.js +21 -0
- data/node_modules/lodash/_shortOut.js +37 -0
- data/node_modules/lodash/_shuffleSelf.js +28 -0
- data/node_modules/lodash/_stackClear.js +15 -0
- data/node_modules/lodash/_stackDelete.js +18 -0
- data/node_modules/lodash/_stackGet.js +14 -0
- data/node_modules/lodash/_stackHas.js +14 -0
- data/node_modules/lodash/_stackSet.js +34 -0
- data/node_modules/lodash/_strictIndexOf.js +23 -0
- data/node_modules/lodash/_strictLastIndexOf.js +21 -0
- data/node_modules/lodash/_stringSize.js +18 -0
- data/node_modules/lodash/_stringToArray.js +18 -0
- data/node_modules/lodash/_stringToPath.js +31 -0
- data/node_modules/lodash/_toKey.js +21 -0
- data/node_modules/lodash/_toSource.js +26 -0
- data/node_modules/lodash/_unescapeHtmlChar.js +21 -0
- data/node_modules/lodash/_unicodeSize.js +42 -0
- data/node_modules/lodash/_unicodeToArray.js +38 -0
- data/node_modules/lodash/_unicodeWords.js +67 -0
- data/node_modules/lodash/_updateWrapDetails.js +46 -0
- data/node_modules/lodash/_wrapperClone.js +23 -0
- data/node_modules/lodash/add.js +22 -0
- data/node_modules/lodash/after.js +42 -0
- data/node_modules/lodash/array.js +67 -0
- data/node_modules/lodash/ary.js +29 -0
- data/node_modules/lodash/assign.js +58 -0
- data/node_modules/lodash/assignIn.js +40 -0
- data/node_modules/lodash/assignInWith.js +38 -0
- data/node_modules/lodash/assignWith.js +37 -0
- data/node_modules/lodash/at.js +23 -0
- data/node_modules/lodash/attempt.js +35 -0
- data/node_modules/lodash/before.js +40 -0
- data/node_modules/lodash/bind.js +57 -0
- data/node_modules/lodash/bindAll.js +41 -0
- data/node_modules/lodash/bindKey.js +68 -0
- data/node_modules/lodash/camelCase.js +29 -0
- data/node_modules/lodash/capitalize.js +23 -0
- data/node_modules/lodash/castArray.js +44 -0
- data/node_modules/lodash/ceil.js +26 -0
- data/node_modules/lodash/chain.js +38 -0
- data/node_modules/lodash/chunk.js +50 -0
- data/node_modules/lodash/clamp.js +39 -0
- data/node_modules/lodash/clone.js +33 -0
- data/node_modules/lodash/cloneDeep.js +25 -0
- data/node_modules/lodash/cloneDeepWith.js +36 -0
- data/node_modules/lodash/cloneWith.js +39 -0
- data/node_modules/lodash/collection.js +30 -0
- data/node_modules/lodash/commit.js +33 -0
- data/node_modules/lodash/compact.js +31 -0
- data/node_modules/lodash/concat.js +43 -0
- data/node_modules/lodash/cond.js +60 -0
- data/node_modules/lodash/conforms.js +32 -0
- data/node_modules/lodash/conformsTo.js +32 -0
- data/node_modules/lodash/constant.js +26 -0
- data/node_modules/lodash/core.js +3853 -0
- data/node_modules/lodash/core.min.js +29 -0
- data/node_modules/lodash/countBy.js +40 -0
- data/node_modules/lodash/create.js +43 -0
- data/node_modules/lodash/curry.js +57 -0
- data/node_modules/lodash/curryRight.js +54 -0
- data/node_modules/lodash/date.js +3 -0
- data/node_modules/lodash/debounce.js +188 -0
- data/node_modules/lodash/deburr.js +43 -0
- data/node_modules/lodash/defaultTo.js +25 -0
- data/node_modules/lodash/defaults.js +32 -0
- data/node_modules/lodash/defaultsDeep.js +30 -0
- data/node_modules/lodash/defer.js +26 -0
- data/node_modules/lodash/delay.js +28 -0
- data/node_modules/lodash/difference.js +33 -0
- data/node_modules/lodash/differenceBy.js +44 -0
- data/node_modules/lodash/differenceWith.js +40 -0
- data/node_modules/lodash/divide.js +22 -0
- data/node_modules/lodash/drop.js +38 -0
- data/node_modules/lodash/dropRight.js +39 -0
- data/node_modules/lodash/dropRightWhile.js +45 -0
- data/node_modules/lodash/dropWhile.js +45 -0
- data/node_modules/lodash/each.js +1 -0
- data/node_modules/lodash/eachRight.js +1 -0
- data/node_modules/lodash/endsWith.js +43 -0
- data/node_modules/lodash/entries.js +1 -0
- data/node_modules/lodash/entriesIn.js +1 -0
- data/node_modules/lodash/eq.js +37 -0
- data/node_modules/lodash/escape.js +43 -0
- data/node_modules/lodash/escapeRegExp.js +32 -0
- data/node_modules/lodash/every.js +56 -0
- data/node_modules/lodash/extend.js +1 -0
- data/node_modules/lodash/extendWith.js +1 -0
- data/node_modules/lodash/fill.js +45 -0
- data/node_modules/lodash/filter.js +48 -0
- data/node_modules/lodash/find.js +42 -0
- data/node_modules/lodash/findIndex.js +55 -0
- data/node_modules/lodash/findKey.js +44 -0
- data/node_modules/lodash/findLast.js +25 -0
- data/node_modules/lodash/findLastIndex.js +59 -0
- data/node_modules/lodash/findLastKey.js +44 -0
- data/node_modules/lodash/first.js +1 -0
- data/node_modules/lodash/flatMap.js +29 -0
- data/node_modules/lodash/flatMapDeep.js +31 -0
- data/node_modules/lodash/flatMapDepth.js +31 -0
- data/node_modules/lodash/flatten.js +22 -0
- data/node_modules/lodash/flattenDeep.js +25 -0
- data/node_modules/lodash/flattenDepth.js +33 -0
- data/node_modules/lodash/flip.js +28 -0
- data/node_modules/lodash/floor.js +26 -0
- data/node_modules/lodash/flow.js +27 -0
- data/node_modules/lodash/flowRight.js +26 -0
- data/node_modules/lodash/forEach.js +41 -0
- data/node_modules/lodash/forEachRight.js +31 -0
- data/node_modules/lodash/forIn.js +39 -0
- data/node_modules/lodash/forInRight.js +37 -0
- data/node_modules/lodash/forOwn.js +36 -0
- data/node_modules/lodash/forOwnRight.js +34 -0
- data/node_modules/lodash/fp.js +2 -0
- data/node_modules/lodash/fp/F.js +1 -0
- data/node_modules/lodash/fp/T.js +1 -0
- data/node_modules/lodash/fp/__.js +1 -0
- data/node_modules/lodash/fp/_baseConvert.js +536 -0
- data/node_modules/lodash/fp/_convertBrowser.js +18 -0
- data/node_modules/lodash/fp/_falseOptions.js +7 -0
- data/node_modules/lodash/fp/_mapping.js +367 -0
- data/node_modules/lodash/fp/_util.js +15 -0
- data/node_modules/lodash/fp/add.js +5 -0
- data/node_modules/lodash/fp/after.js +5 -0
- data/node_modules/lodash/fp/all.js +1 -0
- data/node_modules/lodash/fp/allPass.js +1 -0
- data/node_modules/lodash/fp/always.js +1 -0
- data/node_modules/lodash/fp/any.js +1 -0
- data/node_modules/lodash/fp/anyPass.js +1 -0
- data/node_modules/lodash/fp/apply.js +1 -0
- data/node_modules/lodash/fp/array.js +2 -0
- data/node_modules/lodash/fp/ary.js +5 -0
- data/node_modules/lodash/fp/assign.js +5 -0
- data/node_modules/lodash/fp/assignAll.js +5 -0
- data/node_modules/lodash/fp/assignAllWith.js +5 -0
- data/node_modules/lodash/fp/assignIn.js +5 -0
- data/node_modules/lodash/fp/assignInAll.js +5 -0
- data/node_modules/lodash/fp/assignInAllWith.js +5 -0
- data/node_modules/lodash/fp/assignInWith.js +5 -0
- data/node_modules/lodash/fp/assignWith.js +5 -0
- data/node_modules/lodash/fp/assoc.js +1 -0
- data/node_modules/lodash/fp/assocPath.js +1 -0
- data/node_modules/lodash/fp/at.js +5 -0
- data/node_modules/lodash/fp/attempt.js +5 -0
- data/node_modules/lodash/fp/before.js +5 -0
- data/node_modules/lodash/fp/bind.js +5 -0
- data/node_modules/lodash/fp/bindAll.js +5 -0
- data/node_modules/lodash/fp/bindKey.js +5 -0
- data/node_modules/lodash/fp/camelCase.js +5 -0
- data/node_modules/lodash/fp/capitalize.js +5 -0
- data/node_modules/lodash/fp/castArray.js +5 -0
- data/node_modules/lodash/fp/ceil.js +5 -0
- data/node_modules/lodash/fp/chain.js +5 -0
- data/node_modules/lodash/fp/chunk.js +5 -0
- data/node_modules/lodash/fp/clamp.js +5 -0
- data/node_modules/lodash/fp/clone.js +5 -0
- data/node_modules/lodash/fp/cloneDeep.js +5 -0
- data/node_modules/lodash/fp/cloneDeepWith.js +5 -0
- data/node_modules/lodash/fp/cloneWith.js +5 -0
- data/node_modules/lodash/fp/collection.js +2 -0
- data/node_modules/lodash/fp/commit.js +5 -0
- data/node_modules/lodash/fp/compact.js +5 -0
- data/node_modules/lodash/fp/complement.js +1 -0
- data/node_modules/lodash/fp/compose.js +1 -0
- data/node_modules/lodash/fp/concat.js +5 -0
- data/node_modules/lodash/fp/cond.js +5 -0
- data/node_modules/lodash/fp/conforms.js +1 -0
- data/node_modules/lodash/fp/conformsTo.js +5 -0
- data/node_modules/lodash/fp/constant.js +5 -0
- data/node_modules/lodash/fp/contains.js +1 -0
- data/node_modules/lodash/fp/convert.js +18 -0
- data/node_modules/lodash/fp/countBy.js +5 -0
- data/node_modules/lodash/fp/create.js +5 -0
- data/node_modules/lodash/fp/curry.js +5 -0
- data/node_modules/lodash/fp/curryN.js +5 -0
- data/node_modules/lodash/fp/curryRight.js +5 -0
- data/node_modules/lodash/fp/curryRightN.js +5 -0
- data/node_modules/lodash/fp/date.js +2 -0
- data/node_modules/lodash/fp/debounce.js +5 -0
- data/node_modules/lodash/fp/deburr.js +5 -0
- data/node_modules/lodash/fp/defaultTo.js +5 -0
- data/node_modules/lodash/fp/defaults.js +5 -0
- data/node_modules/lodash/fp/defaultsAll.js +5 -0
- data/node_modules/lodash/fp/defaultsDeep.js +5 -0
- data/node_modules/lodash/fp/defaultsDeepAll.js +5 -0
- data/node_modules/lodash/fp/defer.js +5 -0
- data/node_modules/lodash/fp/delay.js +5 -0
- data/node_modules/lodash/fp/difference.js +5 -0
- data/node_modules/lodash/fp/differenceBy.js +5 -0
- data/node_modules/lodash/fp/differenceWith.js +5 -0
- data/node_modules/lodash/fp/dissoc.js +1 -0
- data/node_modules/lodash/fp/dissocPath.js +1 -0
- data/node_modules/lodash/fp/divide.js +5 -0
- data/node_modules/lodash/fp/drop.js +5 -0
- data/node_modules/lodash/fp/dropLast.js +1 -0
- data/node_modules/lodash/fp/dropLastWhile.js +1 -0
- data/node_modules/lodash/fp/dropRight.js +5 -0
- data/node_modules/lodash/fp/dropRightWhile.js +5 -0
- data/node_modules/lodash/fp/dropWhile.js +5 -0
- data/node_modules/lodash/fp/each.js +1 -0
- data/node_modules/lodash/fp/eachRight.js +1 -0
- data/node_modules/lodash/fp/endsWith.js +5 -0
- data/node_modules/lodash/fp/entries.js +1 -0
- data/node_modules/lodash/fp/entriesIn.js +1 -0
- data/node_modules/lodash/fp/eq.js +5 -0
- data/node_modules/lodash/fp/equals.js +1 -0
- data/node_modules/lodash/fp/escape.js +5 -0
- data/node_modules/lodash/fp/escapeRegExp.js +5 -0
- data/node_modules/lodash/fp/every.js +5 -0
- data/node_modules/lodash/fp/extend.js +1 -0
- data/node_modules/lodash/fp/extendAll.js +1 -0
- data/node_modules/lodash/fp/extendAllWith.js +1 -0
- data/node_modules/lodash/fp/extendWith.js +1 -0
- data/node_modules/lodash/fp/fill.js +5 -0
- data/node_modules/lodash/fp/filter.js +5 -0
- data/node_modules/lodash/fp/find.js +5 -0
- data/node_modules/lodash/fp/findFrom.js +5 -0
- data/node_modules/lodash/fp/findIndex.js +5 -0
- data/node_modules/lodash/fp/findIndexFrom.js +5 -0
- data/node_modules/lodash/fp/findKey.js +5 -0
- data/node_modules/lodash/fp/findLast.js +5 -0
- data/node_modules/lodash/fp/findLastFrom.js +5 -0
- data/node_modules/lodash/fp/findLastIndex.js +5 -0
- data/node_modules/lodash/fp/findLastIndexFrom.js +5 -0
- data/node_modules/lodash/fp/findLastKey.js +5 -0
- data/node_modules/lodash/fp/first.js +1 -0
- data/node_modules/lodash/fp/flatMap.js +5 -0
- data/node_modules/lodash/fp/flatMapDeep.js +5 -0
- data/node_modules/lodash/fp/flatMapDepth.js +5 -0
- data/node_modules/lodash/fp/flatten.js +5 -0
- data/node_modules/lodash/fp/flattenDeep.js +5 -0
- data/node_modules/lodash/fp/flattenDepth.js +5 -0
- data/node_modules/lodash/fp/flip.js +5 -0
- data/node_modules/lodash/fp/floor.js +5 -0
- data/node_modules/lodash/fp/flow.js +5 -0
- data/node_modules/lodash/fp/flowRight.js +5 -0
- data/node_modules/lodash/fp/forEach.js +5 -0
- data/node_modules/lodash/fp/forEachRight.js +5 -0
- data/node_modules/lodash/fp/forIn.js +5 -0
- data/node_modules/lodash/fp/forInRight.js +5 -0
- data/node_modules/lodash/fp/forOwn.js +5 -0
- data/node_modules/lodash/fp/forOwnRight.js +5 -0
- data/node_modules/lodash/fp/fromPairs.js +5 -0
- data/node_modules/lodash/fp/function.js +2 -0
- data/node_modules/lodash/fp/functions.js +5 -0
- data/node_modules/lodash/fp/functionsIn.js +5 -0
- data/node_modules/lodash/fp/get.js +5 -0
- data/node_modules/lodash/fp/getOr.js +5 -0
- data/node_modules/lodash/fp/groupBy.js +5 -0
- data/node_modules/lodash/fp/gt.js +5 -0
- data/node_modules/lodash/fp/gte.js +5 -0
- data/node_modules/lodash/fp/has.js +5 -0
- data/node_modules/lodash/fp/hasIn.js +5 -0
- data/node_modules/lodash/fp/head.js +5 -0
- data/node_modules/lodash/fp/identical.js +1 -0
- data/node_modules/lodash/fp/identity.js +5 -0
- data/node_modules/lodash/fp/inRange.js +5 -0
- data/node_modules/lodash/fp/includes.js +5 -0
- data/node_modules/lodash/fp/includesFrom.js +5 -0
- data/node_modules/lodash/fp/indexBy.js +1 -0
- data/node_modules/lodash/fp/indexOf.js +5 -0
- data/node_modules/lodash/fp/indexOfFrom.js +5 -0
- data/node_modules/lodash/fp/init.js +1 -0
- data/node_modules/lodash/fp/initial.js +5 -0
- data/node_modules/lodash/fp/intersection.js +5 -0
- data/node_modules/lodash/fp/intersectionBy.js +5 -0
- data/node_modules/lodash/fp/intersectionWith.js +5 -0
- data/node_modules/lodash/fp/invert.js +5 -0
- data/node_modules/lodash/fp/invertBy.js +5 -0
- data/node_modules/lodash/fp/invertObj.js +1 -0
- data/node_modules/lodash/fp/invoke.js +5 -0
- data/node_modules/lodash/fp/invokeArgs.js +5 -0
- data/node_modules/lodash/fp/invokeArgsMap.js +5 -0
- data/node_modules/lodash/fp/invokeMap.js +5 -0
- data/node_modules/lodash/fp/isArguments.js +5 -0
- data/node_modules/lodash/fp/isArray.js +5 -0
- data/node_modules/lodash/fp/isArrayBuffer.js +5 -0
- data/node_modules/lodash/fp/isArrayLike.js +5 -0
- data/node_modules/lodash/fp/isArrayLikeObject.js +5 -0
- data/node_modules/lodash/fp/isBoolean.js +5 -0
- data/node_modules/lodash/fp/isBuffer.js +5 -0
- data/node_modules/lodash/fp/isDate.js +5 -0
- data/node_modules/lodash/fp/isElement.js +5 -0
- data/node_modules/lodash/fp/isEmpty.js +5 -0
- data/node_modules/lodash/fp/isEqual.js +5 -0
- data/node_modules/lodash/fp/isEqualWith.js +5 -0
- data/node_modules/lodash/fp/isError.js +5 -0
- data/node_modules/lodash/fp/isFinite.js +5 -0
- data/node_modules/lodash/fp/isFunction.js +5 -0
- data/node_modules/lodash/fp/isInteger.js +5 -0
- data/node_modules/lodash/fp/isLength.js +5 -0
- data/node_modules/lodash/fp/isMap.js +5 -0
- data/node_modules/lodash/fp/isMatch.js +5 -0
- data/node_modules/lodash/fp/isMatchWith.js +5 -0
- data/node_modules/lodash/fp/isNaN.js +5 -0
- data/node_modules/lodash/fp/isNative.js +5 -0
- data/node_modules/lodash/fp/isNil.js +5 -0
- data/node_modules/lodash/fp/isNull.js +5 -0
- data/node_modules/lodash/fp/isNumber.js +5 -0
- data/node_modules/lodash/fp/isObject.js +5 -0
- data/node_modules/lodash/fp/isObjectLike.js +5 -0
- data/node_modules/lodash/fp/isPlainObject.js +5 -0
- data/node_modules/lodash/fp/isRegExp.js +5 -0
- data/node_modules/lodash/fp/isSafeInteger.js +5 -0
- data/node_modules/lodash/fp/isSet.js +5 -0
- data/node_modules/lodash/fp/isString.js +5 -0
- data/node_modules/lodash/fp/isSymbol.js +5 -0
- data/node_modules/lodash/fp/isTypedArray.js +5 -0
- data/node_modules/lodash/fp/isUndefined.js +5 -0
- data/node_modules/lodash/fp/isWeakMap.js +5 -0
- data/node_modules/lodash/fp/isWeakSet.js +5 -0
- data/node_modules/lodash/fp/iteratee.js +5 -0
- data/node_modules/lodash/fp/join.js +5 -0
- data/node_modules/lodash/fp/juxt.js +1 -0
- data/node_modules/lodash/fp/kebabCase.js +5 -0
- data/node_modules/lodash/fp/keyBy.js +5 -0
- data/node_modules/lodash/fp/keys.js +5 -0
- data/node_modules/lodash/fp/keysIn.js +5 -0
- data/node_modules/lodash/fp/lang.js +2 -0
- data/node_modules/lodash/fp/last.js +5 -0
- data/node_modules/lodash/fp/lastIndexOf.js +5 -0
- data/node_modules/lodash/fp/lastIndexOfFrom.js +5 -0
- data/node_modules/lodash/fp/lowerCase.js +5 -0
- data/node_modules/lodash/fp/lowerFirst.js +5 -0
- data/node_modules/lodash/fp/lt.js +5 -0
- data/node_modules/lodash/fp/lte.js +5 -0
- data/node_modules/lodash/fp/map.js +5 -0
- data/node_modules/lodash/fp/mapKeys.js +5 -0
- data/node_modules/lodash/fp/mapValues.js +5 -0
- data/node_modules/lodash/fp/matches.js +1 -0
- data/node_modules/lodash/fp/matchesProperty.js +5 -0
- data/node_modules/lodash/fp/math.js +2 -0
- data/node_modules/lodash/fp/max.js +5 -0
- data/node_modules/lodash/fp/maxBy.js +5 -0
- data/node_modules/lodash/fp/mean.js +5 -0
- data/node_modules/lodash/fp/meanBy.js +5 -0
- data/node_modules/lodash/fp/memoize.js +5 -0
- data/node_modules/lodash/fp/merge.js +5 -0
- data/node_modules/lodash/fp/mergeAll.js +5 -0
- data/node_modules/lodash/fp/mergeAllWith.js +5 -0
- data/node_modules/lodash/fp/mergeWith.js +5 -0
- data/node_modules/lodash/fp/method.js +5 -0
- data/node_modules/lodash/fp/methodOf.js +5 -0
- data/node_modules/lodash/fp/min.js +5 -0
- data/node_modules/lodash/fp/minBy.js +5 -0
- data/node_modules/lodash/fp/mixin.js +5 -0
- data/node_modules/lodash/fp/multiply.js +5 -0
- data/node_modules/lodash/fp/nAry.js +1 -0
- data/node_modules/lodash/fp/negate.js +5 -0
- data/node_modules/lodash/fp/next.js +5 -0
- data/node_modules/lodash/fp/noop.js +5 -0
- data/node_modules/lodash/fp/now.js +5 -0
- data/node_modules/lodash/fp/nth.js +5 -0
- data/node_modules/lodash/fp/nthArg.js +5 -0
- data/node_modules/lodash/fp/number.js +2 -0
- data/node_modules/lodash/fp/object.js +2 -0
- data/node_modules/lodash/fp/omit.js +5 -0
- data/node_modules/lodash/fp/omitAll.js +1 -0
- data/node_modules/lodash/fp/omitBy.js +5 -0
- data/node_modules/lodash/fp/once.js +5 -0
- data/node_modules/lodash/fp/orderBy.js +5 -0
- data/node_modules/lodash/fp/over.js +5 -0
- data/node_modules/lodash/fp/overArgs.js +5 -0
- data/node_modules/lodash/fp/overEvery.js +5 -0
- data/node_modules/lodash/fp/overSome.js +5 -0
- data/node_modules/lodash/fp/pad.js +5 -0
- data/node_modules/lodash/fp/padChars.js +5 -0
- data/node_modules/lodash/fp/padCharsEnd.js +5 -0
- data/node_modules/lodash/fp/padCharsStart.js +5 -0
- data/node_modules/lodash/fp/padEnd.js +5 -0
- data/node_modules/lodash/fp/padStart.js +5 -0
- data/node_modules/lodash/fp/parseInt.js +5 -0
- data/node_modules/lodash/fp/partial.js +5 -0
- data/node_modules/lodash/fp/partialRight.js +5 -0
- data/node_modules/lodash/fp/partition.js +5 -0
- data/node_modules/lodash/fp/path.js +1 -0
- data/node_modules/lodash/fp/pathEq.js +1 -0
- data/node_modules/lodash/fp/pathOr.js +1 -0
- data/node_modules/lodash/fp/paths.js +1 -0
- data/node_modules/lodash/fp/pick.js +5 -0
- data/node_modules/lodash/fp/pickAll.js +1 -0
- data/node_modules/lodash/fp/pickBy.js +5 -0
- data/node_modules/lodash/fp/pipe.js +1 -0
- data/node_modules/lodash/fp/placeholder.js +6 -0
- data/node_modules/lodash/fp/plant.js +5 -0
- data/node_modules/lodash/fp/pluck.js +1 -0
- data/node_modules/lodash/fp/prop.js +1 -0
- data/node_modules/lodash/fp/propEq.js +1 -0
- data/node_modules/lodash/fp/propOr.js +1 -0
- data/node_modules/lodash/fp/property.js +1 -0
- data/node_modules/lodash/fp/propertyOf.js +5 -0
- data/node_modules/lodash/fp/props.js +1 -0
- data/node_modules/lodash/fp/pull.js +5 -0
- data/node_modules/lodash/fp/pullAll.js +5 -0
- data/node_modules/lodash/fp/pullAllBy.js +5 -0
- data/node_modules/lodash/fp/pullAllWith.js +5 -0
- data/node_modules/lodash/fp/pullAt.js +5 -0
- data/node_modules/lodash/fp/random.js +5 -0
- data/node_modules/lodash/fp/range.js +5 -0
- data/node_modules/lodash/fp/rangeRight.js +5 -0
- data/node_modules/lodash/fp/rangeStep.js +5 -0
- data/node_modules/lodash/fp/rangeStepRight.js +5 -0
- data/node_modules/lodash/fp/rearg.js +5 -0
- data/node_modules/lodash/fp/reduce.js +5 -0
- data/node_modules/lodash/fp/reduceRight.js +5 -0
- data/node_modules/lodash/fp/reject.js +5 -0
- data/node_modules/lodash/fp/remove.js +5 -0
- data/node_modules/lodash/fp/repeat.js +5 -0
- data/node_modules/lodash/fp/replace.js +5 -0
- data/node_modules/lodash/fp/rest.js +5 -0
- data/node_modules/lodash/fp/restFrom.js +5 -0
- data/node_modules/lodash/fp/result.js +5 -0
- data/node_modules/lodash/fp/reverse.js +5 -0
- data/node_modules/lodash/fp/round.js +5 -0
- data/node_modules/lodash/fp/sample.js +5 -0
- data/node_modules/lodash/fp/sampleSize.js +5 -0
- data/node_modules/lodash/fp/seq.js +2 -0
- data/node_modules/lodash/fp/set.js +5 -0
- data/node_modules/lodash/fp/setWith.js +5 -0
- data/node_modules/lodash/fp/shuffle.js +5 -0
- data/node_modules/lodash/fp/size.js +5 -0
- data/node_modules/lodash/fp/slice.js +5 -0
- data/node_modules/lodash/fp/snakeCase.js +5 -0
- data/node_modules/lodash/fp/some.js +5 -0
- data/node_modules/lodash/fp/sortBy.js +5 -0
- data/node_modules/lodash/fp/sortedIndex.js +5 -0
- data/node_modules/lodash/fp/sortedIndexBy.js +5 -0
- data/node_modules/lodash/fp/sortedIndexOf.js +5 -0
- data/node_modules/lodash/fp/sortedLastIndex.js +5 -0
- data/node_modules/lodash/fp/sortedLastIndexBy.js +5 -0
- data/node_modules/lodash/fp/sortedLastIndexOf.js +5 -0
- data/node_modules/lodash/fp/sortedUniq.js +5 -0
- data/node_modules/lodash/fp/sortedUniqBy.js +5 -0
- data/node_modules/lodash/fp/split.js +5 -0
- data/node_modules/lodash/fp/spread.js +5 -0
- data/node_modules/lodash/fp/spreadFrom.js +5 -0
- data/node_modules/lodash/fp/startCase.js +5 -0
- data/node_modules/lodash/fp/startsWith.js +5 -0
- data/node_modules/lodash/fp/string.js +2 -0
- data/node_modules/lodash/fp/stubArray.js +5 -0
- data/node_modules/lodash/fp/stubFalse.js +5 -0
- data/node_modules/lodash/fp/stubObject.js +5 -0
- data/node_modules/lodash/fp/stubString.js +5 -0
- data/node_modules/lodash/fp/stubTrue.js +5 -0
- data/node_modules/lodash/fp/subtract.js +5 -0
- data/node_modules/lodash/fp/sum.js +5 -0
- data/node_modules/lodash/fp/sumBy.js +5 -0
- data/node_modules/lodash/fp/symmetricDifference.js +1 -0
- data/node_modules/lodash/fp/symmetricDifferenceBy.js +1 -0
- data/node_modules/lodash/fp/symmetricDifferenceWith.js +1 -0
- data/node_modules/lodash/fp/tail.js +5 -0
- data/node_modules/lodash/fp/take.js +5 -0
- data/node_modules/lodash/fp/takeLast.js +1 -0
- data/node_modules/lodash/fp/takeLastWhile.js +1 -0
- data/node_modules/lodash/fp/takeRight.js +5 -0
- data/node_modules/lodash/fp/takeRightWhile.js +5 -0
- data/node_modules/lodash/fp/takeWhile.js +5 -0
- data/node_modules/lodash/fp/tap.js +5 -0
- data/node_modules/lodash/fp/template.js +5 -0
- data/node_modules/lodash/fp/templateSettings.js +5 -0
- data/node_modules/lodash/fp/throttle.js +5 -0
- data/node_modules/lodash/fp/thru.js +5 -0
- data/node_modules/lodash/fp/times.js +5 -0
- data/node_modules/lodash/fp/toArray.js +5 -0
- data/node_modules/lodash/fp/toFinite.js +5 -0
- data/node_modules/lodash/fp/toInteger.js +5 -0
- data/node_modules/lodash/fp/toIterator.js +5 -0
- data/node_modules/lodash/fp/toJSON.js +5 -0
- data/node_modules/lodash/fp/toLength.js +5 -0
- data/node_modules/lodash/fp/toLower.js +5 -0
- data/node_modules/lodash/fp/toNumber.js +5 -0
- data/node_modules/lodash/fp/toPairs.js +5 -0
- data/node_modules/lodash/fp/toPairsIn.js +5 -0
- data/node_modules/lodash/fp/toPath.js +5 -0
- data/node_modules/lodash/fp/toPlainObject.js +5 -0
- data/node_modules/lodash/fp/toSafeInteger.js +5 -0
- data/node_modules/lodash/fp/toString.js +5 -0
- data/node_modules/lodash/fp/toUpper.js +5 -0
- data/node_modules/lodash/fp/transform.js +5 -0
- data/node_modules/lodash/fp/trim.js +5 -0
- data/node_modules/lodash/fp/trimChars.js +5 -0
- data/node_modules/lodash/fp/trimCharsEnd.js +5 -0
- data/node_modules/lodash/fp/trimCharsStart.js +5 -0
- data/node_modules/lodash/fp/trimEnd.js +5 -0
- data/node_modules/lodash/fp/trimStart.js +5 -0
- data/node_modules/lodash/fp/truncate.js +5 -0
- data/node_modules/lodash/fp/unapply.js +1 -0
- data/node_modules/lodash/fp/unary.js +5 -0
- data/node_modules/lodash/fp/unescape.js +5 -0
- data/node_modules/lodash/fp/union.js +5 -0
- data/node_modules/lodash/fp/unionBy.js +5 -0
- data/node_modules/lodash/fp/unionWith.js +5 -0
- data/node_modules/lodash/fp/uniq.js +5 -0
- data/node_modules/lodash/fp/uniqBy.js +5 -0
- data/node_modules/lodash/fp/uniqWith.js +5 -0
- data/node_modules/lodash/fp/uniqueId.js +5 -0
- data/node_modules/lodash/fp/unnest.js +1 -0
- data/node_modules/lodash/fp/unset.js +5 -0
- data/node_modules/lodash/fp/unzip.js +5 -0
- data/node_modules/lodash/fp/unzipWith.js +5 -0
- data/node_modules/lodash/fp/update.js +5 -0
- data/node_modules/lodash/fp/updateWith.js +5 -0
- data/node_modules/lodash/fp/upperCase.js +5 -0
- data/node_modules/lodash/fp/upperFirst.js +5 -0
- data/node_modules/lodash/fp/useWith.js +1 -0
- data/node_modules/lodash/fp/util.js +2 -0
- data/node_modules/lodash/fp/value.js +5 -0
- data/node_modules/lodash/fp/valueOf.js +5 -0
- data/node_modules/lodash/fp/values.js +5 -0
- data/node_modules/lodash/fp/valuesIn.js +5 -0
- data/node_modules/lodash/fp/where.js +1 -0
- data/node_modules/lodash/fp/whereEq.js +1 -0
- data/node_modules/lodash/fp/without.js +5 -0
- data/node_modules/lodash/fp/words.js +5 -0
- data/node_modules/lodash/fp/wrap.js +5 -0
- data/node_modules/lodash/fp/wrapperAt.js +5 -0
- data/node_modules/lodash/fp/wrapperChain.js +5 -0
- data/node_modules/lodash/fp/wrapperLodash.js +5 -0
- data/node_modules/lodash/fp/wrapperReverse.js +5 -0
- data/node_modules/lodash/fp/wrapperValue.js +5 -0
- data/node_modules/lodash/fp/xor.js +5 -0
- data/node_modules/lodash/fp/xorBy.js +5 -0
- data/node_modules/lodash/fp/xorWith.js +5 -0
- data/node_modules/lodash/fp/zip.js +5 -0
- data/node_modules/lodash/fp/zipAll.js +5 -0
- data/node_modules/lodash/fp/zipObj.js +1 -0
- data/node_modules/lodash/fp/zipObject.js +5 -0
- data/node_modules/lodash/fp/zipObjectDeep.js +5 -0
- data/node_modules/lodash/fp/zipWith.js +5 -0
- data/node_modules/lodash/fromPairs.js +28 -0
- data/node_modules/lodash/function.js +25 -0
- data/node_modules/lodash/functions.js +31 -0
- data/node_modules/lodash/functionsIn.js +31 -0
- data/node_modules/lodash/get.js +33 -0
- data/node_modules/lodash/groupBy.js +41 -0
- data/node_modules/lodash/gt.js +29 -0
- data/node_modules/lodash/gte.js +30 -0
- data/node_modules/lodash/has.js +35 -0
- data/node_modules/lodash/hasIn.js +34 -0
- data/node_modules/lodash/head.js +23 -0
- data/node_modules/lodash/identity.js +21 -0
- data/node_modules/lodash/inRange.js +55 -0
- data/node_modules/lodash/includes.js +53 -0
- data/node_modules/lodash/index.js +1 -0
- data/node_modules/lodash/indexOf.js +42 -0
- data/node_modules/lodash/initial.js +22 -0
- data/node_modules/lodash/intersection.js +30 -0
- data/node_modules/lodash/intersectionBy.js +45 -0
- data/node_modules/lodash/intersectionWith.js +41 -0
- data/node_modules/lodash/invert.js +27 -0
- data/node_modules/lodash/invertBy.js +44 -0
- data/node_modules/lodash/invoke.js +24 -0
- data/node_modules/lodash/invokeMap.js +44 -0
- data/node_modules/lodash/isArguments.js +36 -0
- data/node_modules/lodash/isArray.js +26 -0
- data/node_modules/lodash/isArrayBuffer.js +27 -0
- data/node_modules/lodash/isArrayLike.js +33 -0
- data/node_modules/lodash/isArrayLikeObject.js +33 -0
- data/node_modules/lodash/isBoolean.js +29 -0
- data/node_modules/lodash/isBuffer.js +38 -0
- data/node_modules/lodash/isDate.js +27 -0
- data/node_modules/lodash/isElement.js +25 -0
- data/node_modules/lodash/isEmpty.js +77 -0
- data/node_modules/lodash/isEqual.js +35 -0
- data/node_modules/lodash/isEqualWith.js +41 -0
- data/node_modules/lodash/isError.js +36 -0
- data/node_modules/lodash/isFinite.js +36 -0
- data/node_modules/lodash/isFunction.js +37 -0
- data/node_modules/lodash/isInteger.js +33 -0
- data/node_modules/lodash/isLength.js +35 -0
- data/node_modules/lodash/isMap.js +27 -0
- data/node_modules/lodash/isMatch.js +36 -0
- data/node_modules/lodash/isMatchWith.js +41 -0
- data/node_modules/lodash/isNaN.js +38 -0
- data/node_modules/lodash/isNative.js +40 -0
- data/node_modules/lodash/isNil.js +25 -0
- data/node_modules/lodash/isNull.js +22 -0
- data/node_modules/lodash/isNumber.js +38 -0
- data/node_modules/lodash/isObject.js +31 -0
- data/node_modules/lodash/isObjectLike.js +29 -0
- data/node_modules/lodash/isPlainObject.js +62 -0
- data/node_modules/lodash/isRegExp.js +27 -0
- data/node_modules/lodash/isSafeInteger.js +37 -0
- data/node_modules/lodash/isSet.js +27 -0
- data/node_modules/lodash/isString.js +30 -0
- data/node_modules/lodash/isSymbol.js +29 -0
- data/node_modules/lodash/isTypedArray.js +27 -0
- data/node_modules/lodash/isUndefined.js +22 -0
- data/node_modules/lodash/isWeakMap.js +28 -0
- data/node_modules/lodash/isWeakSet.js +28 -0
- data/node_modules/lodash/iteratee.js +50 -0
- data/node_modules/lodash/join.js +26 -0
- data/node_modules/lodash/kebabCase.js +28 -0
- data/node_modules/lodash/keyBy.js +36 -0
- data/node_modules/lodash/keys.js +37 -0
- data/node_modules/lodash/keysIn.js +32 -0
- data/node_modules/lodash/lang.js +58 -0
- data/node_modules/lodash/last.js +20 -0
- data/node_modules/lodash/lastIndexOf.js +46 -0
- data/node_modules/lodash/lodash.js +17018 -0
- data/node_modules/lodash/lodash.min.js +135 -0
- data/node_modules/lodash/lowerCase.js +27 -0
- data/node_modules/lodash/lowerFirst.js +22 -0
- data/node_modules/lodash/lt.js +29 -0
- data/node_modules/lodash/lte.js +30 -0
- data/node_modules/lodash/map.js +53 -0
- data/node_modules/lodash/mapKeys.js +36 -0
- data/node_modules/lodash/mapValues.js +43 -0
- data/node_modules/lodash/matches.js +36 -0
- data/node_modules/lodash/matchesProperty.js +34 -0
- data/node_modules/lodash/math.js +17 -0
- data/node_modules/lodash/max.js +29 -0
- data/node_modules/lodash/maxBy.js +34 -0
- data/node_modules/lodash/mean.js +22 -0
- data/node_modules/lodash/meanBy.js +31 -0
- data/node_modules/lodash/memoize.js +73 -0
- data/node_modules/lodash/merge.js +39 -0
- data/node_modules/lodash/mergeWith.js +39 -0
- data/node_modules/lodash/method.js +34 -0
- data/node_modules/lodash/methodOf.js +33 -0
- data/node_modules/lodash/min.js +29 -0
- data/node_modules/lodash/minBy.js +34 -0
- data/node_modules/lodash/mixin.js +74 -0
- data/node_modules/lodash/multiply.js +22 -0
- data/node_modules/lodash/negate.js +40 -0
- data/node_modules/lodash/next.js +35 -0
- data/node_modules/lodash/noop.js +17 -0
- data/node_modules/lodash/now.js +23 -0
- data/node_modules/lodash/nth.js +29 -0
- data/node_modules/lodash/nthArg.js +32 -0
- data/node_modules/lodash/number.js +5 -0
- data/node_modules/lodash/object.js +49 -0
- data/node_modules/lodash/omit.js +35 -0
- data/node_modules/lodash/omitBy.js +29 -0
- data/node_modules/lodash/once.js +25 -0
- data/node_modules/lodash/orderBy.js +47 -0
- data/node_modules/lodash/over.js +24 -0
- data/node_modules/lodash/overArgs.js +61 -0
- data/node_modules/lodash/overEvery.js +30 -0
- data/node_modules/lodash/overSome.js +30 -0
- data/node_modules/lodash/package.json +18 -0
- data/node_modules/lodash/pad.js +49 -0
- data/node_modules/lodash/padEnd.js +39 -0
- data/node_modules/lodash/padStart.js +39 -0
- data/node_modules/lodash/parseInt.js +43 -0
- data/node_modules/lodash/partial.js +50 -0
- data/node_modules/lodash/partialRight.js +49 -0
- data/node_modules/lodash/partition.js +43 -0
- data/node_modules/lodash/pick.js +27 -0
- data/node_modules/lodash/pickBy.js +27 -0
- data/node_modules/lodash/plant.js +48 -0
- data/node_modules/lodash/property.js +32 -0
- data/node_modules/lodash/propertyOf.js +30 -0
- data/node_modules/lodash/pull.js +29 -0
- data/node_modules/lodash/pullAll.js +29 -0
- data/node_modules/lodash/pullAllBy.js +33 -0
- data/node_modules/lodash/pullAllWith.js +32 -0
- data/node_modules/lodash/pullAt.js +43 -0
- data/node_modules/lodash/random.js +82 -0
- data/node_modules/lodash/range.js +46 -0
- data/node_modules/lodash/rangeRight.js +41 -0
- data/node_modules/lodash/rearg.js +33 -0
- data/node_modules/lodash/reduce.js +51 -0
- data/node_modules/lodash/reduceRight.js +36 -0
- data/node_modules/lodash/reject.js +46 -0
- data/node_modules/lodash/remove.js +53 -0
- data/node_modules/lodash/repeat.js +37 -0
- data/node_modules/lodash/replace.js +29 -0
- data/node_modules/lodash/rest.js +40 -0
- data/node_modules/lodash/result.js +57 -0
- data/node_modules/lodash/reverse.js +34 -0
- data/node_modules/lodash/round.js +26 -0
- data/node_modules/lodash/sample.js +24 -0
- data/node_modules/lodash/sampleSize.js +37 -0
- data/node_modules/lodash/seq.js +16 -0
- data/node_modules/lodash/set.js +35 -0
- data/node_modules/lodash/setWith.js +32 -0
- data/node_modules/lodash/shuffle.js +25 -0
- data/node_modules/lodash/size.js +46 -0
- data/node_modules/lodash/slice.js +37 -0
- data/node_modules/lodash/snakeCase.js +28 -0
- data/node_modules/lodash/some.js +51 -0
- data/node_modules/lodash/sortBy.js +48 -0
- data/node_modules/lodash/sortedIndex.js +24 -0
- data/node_modules/lodash/sortedIndexBy.js +33 -0
- data/node_modules/lodash/sortedIndexOf.js +31 -0
- data/node_modules/lodash/sortedLastIndex.js +25 -0
- data/node_modules/lodash/sortedLastIndexBy.js +33 -0
- data/node_modules/lodash/sortedLastIndexOf.js +31 -0
- data/node_modules/lodash/sortedUniq.js +24 -0
- data/node_modules/lodash/sortedUniqBy.js +26 -0
- data/node_modules/lodash/split.js +52 -0
- data/node_modules/lodash/spread.js +63 -0
- data/node_modules/lodash/startCase.js +29 -0
- data/node_modules/lodash/startsWith.js +36 -0
- data/node_modules/lodash/string.js +33 -0
- data/node_modules/lodash/stubArray.js +23 -0
- data/node_modules/lodash/stubFalse.js +18 -0
- data/node_modules/lodash/stubObject.js +23 -0
- data/node_modules/lodash/stubString.js +18 -0
- data/node_modules/lodash/stubTrue.js +18 -0
- data/node_modules/lodash/subtract.js +22 -0
- data/node_modules/lodash/sum.js +24 -0
- data/node_modules/lodash/sumBy.js +33 -0
- data/node_modules/lodash/tail.js +22 -0
- data/node_modules/lodash/take.js +37 -0
- data/node_modules/lodash/takeRight.js +39 -0
- data/node_modules/lodash/takeRightWhile.js +45 -0
- data/node_modules/lodash/takeWhile.js +45 -0
- data/node_modules/lodash/tap.js +29 -0
- data/node_modules/lodash/template.js +238 -0
- data/node_modules/lodash/templateSettings.js +67 -0
- data/node_modules/lodash/throttle.js +69 -0
- data/node_modules/lodash/thru.js +28 -0
- data/node_modules/lodash/times.js +51 -0
- data/node_modules/lodash/toArray.js +58 -0
- data/node_modules/lodash/toFinite.js +42 -0
- data/node_modules/lodash/toInteger.js +36 -0
- data/node_modules/lodash/toIterator.js +23 -0
- data/node_modules/lodash/toJSON.js +1 -0
- data/node_modules/lodash/toLength.js +38 -0
- data/node_modules/lodash/toLower.js +28 -0
- data/node_modules/lodash/toNumber.js +66 -0
- data/node_modules/lodash/toPairs.js +30 -0
- data/node_modules/lodash/toPairsIn.js +30 -0
- data/node_modules/lodash/toPath.js +32 -0
- data/node_modules/lodash/toPlainObject.js +32 -0
- data/node_modules/lodash/toSafeInteger.js +35 -0
- data/node_modules/lodash/toString.js +28 -0
- data/node_modules/lodash/toUpper.js +28 -0
- data/node_modules/lodash/transform.js +65 -0
- data/node_modules/lodash/trim.js +49 -0
- data/node_modules/lodash/trimEnd.js +43 -0
- data/node_modules/lodash/trimStart.js +43 -0
- data/node_modules/lodash/truncate.js +111 -0
- data/node_modules/lodash/unary.js +22 -0
- data/node_modules/lodash/unescape.js +34 -0
- data/node_modules/lodash/union.js +26 -0
- data/node_modules/lodash/unionBy.js +39 -0
- data/node_modules/lodash/unionWith.js +34 -0
- data/node_modules/lodash/uniq.js +25 -0
- data/node_modules/lodash/uniqBy.js +31 -0
- data/node_modules/lodash/uniqWith.js +28 -0
- data/node_modules/lodash/uniqueId.js +28 -0
- data/node_modules/lodash/unset.js +34 -0
- data/node_modules/lodash/unzip.js +45 -0
- data/node_modules/lodash/unzipWith.js +39 -0
- data/node_modules/lodash/update.js +35 -0
- data/node_modules/lodash/updateWith.js +33 -0
- data/node_modules/lodash/upperCase.js +27 -0
- data/node_modules/lodash/upperFirst.js +22 -0
- data/node_modules/lodash/util.js +34 -0
- data/node_modules/lodash/value.js +1 -0
- data/node_modules/lodash/valueOf.js +1 -0
- data/node_modules/lodash/values.js +34 -0
- data/node_modules/lodash/valuesIn.js +32 -0
- data/node_modules/lodash/without.js +31 -0
- data/node_modules/lodash/words.js +35 -0
- data/node_modules/lodash/wrap.js +30 -0
- data/node_modules/lodash/wrapperAt.js +48 -0
- data/node_modules/lodash/wrapperChain.js +34 -0
- data/node_modules/lodash/wrapperLodash.js +147 -0
- data/node_modules/lodash/wrapperReverse.js +44 -0
- data/node_modules/lodash/wrapperValue.js +21 -0
- data/node_modules/lodash/xor.js +28 -0
- data/node_modules/lodash/xorBy.js +39 -0
- data/node_modules/lodash/xorWith.js +34 -0
- data/node_modules/lodash/zip.js +22 -0
- data/node_modules/lodash/zipObject.js +24 -0
- data/node_modules/lodash/zipObjectDeep.js +23 -0
- data/node_modules/lodash/zipWith.js +32 -0
- data/node_modules/merge/.npmignore +1 -0
- data/node_modules/merge/LICENSE +21 -0
- data/node_modules/merge/README.md +58 -0
- data/node_modules/merge/bower.json +22 -0
- data/node_modules/merge/merge.js +175 -0
- data/node_modules/merge/merge.min.js +3 -0
- data/node_modules/merge/package.json +24 -0
- data/node_modules/minimatch/LICENSE +15 -0
- data/node_modules/minimatch/README.md +209 -0
- data/node_modules/minimatch/minimatch.js +923 -0
- data/node_modules/minimatch/package.json +29 -0
- data/node_modules/minimist/.travis.yml +8 -0
- data/node_modules/minimist/LICENSE +18 -0
- data/node_modules/minimist/example/parse.js +2 -0
- data/node_modules/minimist/index.js +230 -0
- data/node_modules/minimist/package.json +45 -0
- data/node_modules/minimist/readme.markdown +91 -0
- data/node_modules/minimist/test/all_bool.js +32 -0
- data/node_modules/minimist/test/bool.js +166 -0
- data/node_modules/minimist/test/dash.js +31 -0
- data/node_modules/minimist/test/default_bool.js +35 -0
- data/node_modules/minimist/test/dotted.js +22 -0
- data/node_modules/minimist/test/long.js +31 -0
- data/node_modules/minimist/test/num.js +36 -0
- data/node_modules/minimist/test/parse.js +197 -0
- data/node_modules/minimist/test/parse_modified.js +9 -0
- data/node_modules/minimist/test/short.js +67 -0
- data/node_modules/minimist/test/stop_early.js +15 -0
- data/node_modules/minimist/test/unknown.js +102 -0
- data/node_modules/minimist/test/whitespace.js +8 -0
- data/node_modules/mkdirp/.travis.yml +8 -0
- data/node_modules/mkdirp/LICENSE +21 -0
- data/node_modules/mkdirp/bin/cmd.js +33 -0
- data/node_modules/mkdirp/bin/usage.txt +12 -0
- data/node_modules/mkdirp/examples/pow.js +6 -0
- data/node_modules/mkdirp/index.js +98 -0
- data/node_modules/mkdirp/node_modules/minimist/.travis.yml +4 -0
- data/node_modules/mkdirp/node_modules/minimist/LICENSE +18 -0
- data/node_modules/mkdirp/node_modules/minimist/example/parse.js +2 -0
- data/node_modules/mkdirp/node_modules/minimist/index.js +187 -0
- data/node_modules/mkdirp/node_modules/minimist/package.json +40 -0
- data/node_modules/mkdirp/node_modules/minimist/readme.markdown +73 -0
- data/node_modules/mkdirp/node_modules/minimist/test/dash.js +24 -0
- data/node_modules/mkdirp/node_modules/minimist/test/default_bool.js +20 -0
- data/node_modules/mkdirp/node_modules/minimist/test/dotted.js +16 -0
- data/node_modules/mkdirp/node_modules/minimist/test/long.js +31 -0
- data/node_modules/mkdirp/node_modules/minimist/test/parse.js +318 -0
- data/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js +9 -0
- data/node_modules/mkdirp/node_modules/minimist/test/short.js +67 -0
- data/node_modules/mkdirp/node_modules/minimist/test/whitespace.js +8 -0
- data/node_modules/mkdirp/package.json +27 -0
- data/node_modules/mkdirp/readme.markdown +100 -0
- data/node_modules/mkdirp/test/chmod.js +41 -0
- data/node_modules/mkdirp/test/clobber.js +38 -0
- data/node_modules/mkdirp/test/mkdirp.js +28 -0
- data/node_modules/mkdirp/test/opts_fs.js +29 -0
- data/node_modules/mkdirp/test/opts_fs_sync.js +27 -0
- data/node_modules/mkdirp/test/perm.js +32 -0
- data/node_modules/mkdirp/test/perm_sync.js +36 -0
- data/node_modules/mkdirp/test/race.js +37 -0
- data/node_modules/mkdirp/test/rel.js +32 -0
- data/node_modules/mkdirp/test/return.js +25 -0
- data/node_modules/mkdirp/test/return_sync.js +24 -0
- data/node_modules/mkdirp/test/root.js +19 -0
- data/node_modules/mkdirp/test/sync.js +32 -0
- data/node_modules/mkdirp/test/umask.js +28 -0
- data/node_modules/mkdirp/test/umask_sync.js +32 -0
- data/node_modules/ms/LICENSE.md +21 -0
- data/node_modules/ms/README.md +52 -0
- data/node_modules/ms/index.js +149 -0
- data/node_modules/ms/package.json +36 -0
- data/node_modules/mute-stream/LICENSE +15 -0
- data/node_modules/mute-stream/README.md +68 -0
- data/node_modules/mute-stream/mute.js +140 -0
- data/node_modules/mute-stream/package.json +26 -0
- data/node_modules/mute-stream/test/basic.js +207 -0
- data/node_modules/number-is-nan/index.js +4 -0
- data/node_modules/number-is-nan/license +21 -0
- data/node_modules/number-is-nan/package.json +35 -0
- data/node_modules/number-is-nan/readme.md +28 -0
- data/node_modules/object-assign/index.js +90 -0
- data/node_modules/object-assign/license +21 -0
- data/node_modules/object-assign/package.json +42 -0
- data/node_modules/object-assign/readme.md +61 -0
- data/node_modules/once/LICENSE +15 -0
- data/node_modules/once/README.md +79 -0
- data/node_modules/once/once.js +42 -0
- data/node_modules/once/package.json +33 -0
- data/node_modules/onetime/index.js +31 -0
- data/node_modules/onetime/license +21 -0
- data/node_modules/onetime/package.json +33 -0
- data/node_modules/onetime/readme.md +52 -0
- data/node_modules/optionator/CHANGELOG.md +52 -0
- data/node_modules/optionator/LICENSE +22 -0
- data/node_modules/optionator/README.md +236 -0
- data/node_modules/optionator/lib/help.js +247 -0
- data/node_modules/optionator/lib/index.js +465 -0
- data/node_modules/optionator/lib/util.js +54 -0
- data/node_modules/optionator/package.json +44 -0
- data/node_modules/os-homedir/index.js +24 -0
- data/node_modules/os-homedir/license +21 -0
- data/node_modules/os-homedir/package.json +41 -0
- data/node_modules/os-homedir/readme.md +31 -0
- data/node_modules/path-is-absolute/index.js +20 -0
- data/node_modules/path-is-absolute/license +21 -0
- data/node_modules/path-is-absolute/package.json +43 -0
- data/node_modules/path-is-absolute/readme.md +59 -0
- data/node_modules/path-is-inside/LICENSE.txt +47 -0
- data/node_modules/path-is-inside/lib/path-is-inside.js +28 -0
- data/node_modules/path-is-inside/package.json +21 -0
- data/node_modules/pify/index.js +68 -0
- data/node_modules/pify/license +21 -0
- data/node_modules/pify/package.json +48 -0
- data/node_modules/pify/readme.md +119 -0
- data/node_modules/pinkie-promise/index.js +3 -0
- data/node_modules/pinkie-promise/license +21 -0
- data/node_modules/pinkie-promise/package.json +35 -0
- data/node_modules/pinkie-promise/readme.md +28 -0
- data/node_modules/pinkie/index.js +292 -0
- data/node_modules/pinkie/license +21 -0
- data/node_modules/pinkie/package.json +36 -0
- data/node_modules/pinkie/readme.md +83 -0
- data/node_modules/pluralize/LICENSE +21 -0
- data/node_modules/pluralize/Readme.md +78 -0
- data/node_modules/pluralize/package.json +38 -0
- data/node_modules/pluralize/pluralize.js +433 -0
- data/node_modules/prelude-ls/CHANGELOG.md +99 -0
- data/node_modules/prelude-ls/LICENSE +22 -0
- data/node_modules/prelude-ls/README.md +15 -0
- data/node_modules/prelude-ls/lib/Func.js +65 -0
- data/node_modules/prelude-ls/lib/List.js +686 -0
- data/node_modules/prelude-ls/lib/Num.js +130 -0
- data/node_modules/prelude-ls/lib/Obj.js +154 -0
- data/node_modules/prelude-ls/lib/Str.js +92 -0
- data/node_modules/prelude-ls/lib/index.js +178 -0
- data/node_modules/prelude-ls/package.json +52 -0
- data/node_modules/process-nextick-args/.travis.yml +12 -0
- data/node_modules/process-nextick-args/index.js +43 -0
- data/node_modules/process-nextick-args/license.md +19 -0
- data/node_modules/process-nextick-args/package.json +22 -0
- data/node_modules/process-nextick-args/readme.md +18 -0
- data/node_modules/process-nextick-args/test.js +24 -0
- data/node_modules/progress/.npmignore +4 -0
- data/node_modules/progress/History.md +77 -0
- data/node_modules/progress/LICENSE +22 -0
- data/node_modules/progress/Makefile +8 -0
- data/node_modules/progress/Readme.md +103 -0
- data/node_modules/progress/index.js +1 -0
- data/node_modules/progress/lib/node-progress.js +180 -0
- data/node_modules/progress/package.json +21 -0
- data/node_modules/readable-stream/.npmignore +9 -0
- data/node_modules/readable-stream/.travis.yml +49 -0
- data/node_modules/readable-stream/CONTRIBUTING.md +38 -0
- data/node_modules/readable-stream/GOVERNANCE.md +136 -0
- data/node_modules/readable-stream/LICENSE +47 -0
- data/node_modules/readable-stream/README.md +57 -0
- data/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
- data/node_modules/readable-stream/duplex.js +1 -0
- data/node_modules/readable-stream/lib/_stream_duplex.js +75 -0
- data/node_modules/readable-stream/lib/_stream_passthrough.js +26 -0
- data/node_modules/readable-stream/lib/_stream_readable.js +941 -0
- data/node_modules/readable-stream/lib/_stream_transform.js +182 -0
- data/node_modules/readable-stream/lib/_stream_writable.js +551 -0
- data/node_modules/readable-stream/lib/internal/streams/BufferList.js +64 -0
- data/node_modules/readable-stream/node_modules/inherits/LICENSE +16 -0
- data/node_modules/readable-stream/node_modules/inherits/README.md +42 -0
- data/node_modules/readable-stream/node_modules/inherits/inherits.js +7 -0
- data/node_modules/readable-stream/node_modules/inherits/inherits_browser.js +23 -0
- data/node_modules/readable-stream/node_modules/inherits/package.json +29 -0
- data/node_modules/readable-stream/package.json +53 -0
- data/node_modules/readable-stream/passthrough.js +1 -0
- data/node_modules/readable-stream/readable.js +16 -0
- data/node_modules/readable-stream/transform.js +1 -0
- data/node_modules/readable-stream/writable.js +1 -0
- data/node_modules/readline2/README.md +33 -0
- data/node_modules/readline2/index.js +126 -0
- data/node_modules/readline2/package.json +31 -0
- data/node_modules/require-uncached/index.js +29 -0
- data/node_modules/require-uncached/license +21 -0
- data/node_modules/require-uncached/package.json +45 -0
- data/node_modules/require-uncached/readme.md +47 -0
- data/node_modules/resolve-from/index.js +19 -0
- data/node_modules/resolve-from/license +21 -0
- data/node_modules/resolve-from/package.json +34 -0
- data/node_modules/resolve-from/readme.md +56 -0
- data/node_modules/restore-cursor/index.js +9 -0
- data/node_modules/restore-cursor/license +21 -0
- data/node_modules/restore-cursor/package.json +44 -0
- data/node_modules/restore-cursor/readme.md +25 -0
- data/node_modules/rimraf/LICENSE +15 -0
- data/node_modules/rimraf/README.md +101 -0
- data/node_modules/rimraf/bin.js +50 -0
- data/node_modules/rimraf/package.json +26 -0
- data/node_modules/rimraf/rimraf.js +363 -0
- data/node_modules/run-async/.editorconfig +12 -0
- data/node_modules/run-async/.gitattributes +1 -0
- data/node_modules/run-async/.jshintrc +20 -0
- data/node_modules/run-async/.npmignore +1 -0
- data/node_modules/run-async/.travis.yml +3 -0
- data/node_modules/run-async/LICENSE +21 -0
- data/node_modules/run-async/README.md +50 -0
- data/node_modules/run-async/index.js +25 -0
- data/node_modules/run-async/package.json +30 -0
- data/node_modules/run-async/test.js +51 -0
- data/node_modules/rx-lite/package.json +38 -0
- data/node_modules/rx-lite/readme.md +174 -0
- data/node_modules/rx-lite/rx.lite.js +6366 -0
- data/node_modules/rx-lite/rx.lite.map +1 -0
- data/node_modules/rx-lite/rx.lite.min.js +5 -0
- data/node_modules/sass-lint/.editorconfig +21 -0
- data/node_modules/sass-lint/.eslintrc +156 -0
- data/node_modules/sass-lint/.github/ISSUE_TEMPLATE.md +21 -0
- data/node_modules/sass-lint/.github/PULL_REQUEST_TEMPLATE.md +24 -0
- data/node_modules/sass-lint/.npmignore +32 -0
- data/node_modules/sass-lint/.nvmrc +1 -0
- data/node_modules/sass-lint/.travis.yml +9 -0
- data/node_modules/sass-lint/CHANGELOG.md +586 -0
- data/node_modules/sass-lint/CODE_OF_CONDUCT.md +10 -0
- data/node_modules/sass-lint/CONTRIBUTING.md +91 -0
- data/node_modules/sass-lint/LICENSE +22 -0
- data/node_modules/sass-lint/README.md +294 -0
- data/node_modules/sass-lint/appveyor.yml +29 -0
- data/node_modules/sass-lint/bin/sass-lint.js +89 -0
- data/node_modules/sass-lint/data/functions.yml +129 -0
- data/node_modules/sass-lint/data/literals.yml +296 -0
- data/node_modules/sass-lint/data/properties.yml +596 -0
- data/node_modules/sass-lint/data/pseudoClasses.yml +36 -0
- data/node_modules/sass-lint/data/pseudoElements.yml +6 -0
- data/node_modules/sass-lint/docs/cli/readme.md +26 -0
- data/node_modules/sass-lint/docs/options/cache-config.md +7 -0
- data/node_modules/sass-lint/docs/options/config-file.md +71 -0
- data/node_modules/sass-lint/docs/options/formatter.md +7 -0
- data/node_modules/sass-lint/docs/options/max-warnings.md +30 -0
- data/node_modules/sass-lint/docs/options/merge-default-rules.md +89 -0
- data/node_modules/sass-lint/docs/options/output-file.md +3 -0
- data/node_modules/sass-lint/docs/rules/attribute-quotes.md +61 -0
- data/node_modules/sass-lint/docs/rules/bem-depth.md +26 -0
- data/node_modules/sass-lint/docs/rules/border-zero.md +49 -0
- data/node_modules/sass-lint/docs/rules/brace-style.md +104 -0
- data/node_modules/sass-lint/docs/rules/class-name-format.md +281 -0
- data/node_modules/sass-lint/docs/rules/clean-import-paths.md +44 -0
- data/node_modules/sass-lint/docs/rules/declarations-before-nesting.md +29 -0
- data/node_modules/sass-lint/docs/rules/empty-args.md +33 -0
- data/node_modules/sass-lint/docs/rules/empty-line-between-blocks.md +54 -0
- data/node_modules/sass-lint/docs/rules/extends-before-declarations.md +23 -0
- data/node_modules/sass-lint/docs/rules/extends-before-mixins.md +23 -0
- data/node_modules/sass-lint/docs/rules/final-newline.md +28 -0
- data/node_modules/sass-lint/docs/rules/force-attribute-nesting.md +47 -0
- data/node_modules/sass-lint/docs/rules/force-element-nesting.md +47 -0
- data/node_modules/sass-lint/docs/rules/force-pseudo-nesting.md +59 -0
- data/node_modules/sass-lint/docs/rules/function-name-format.md +253 -0
- data/node_modules/sass-lint/docs/rules/hex-length.md +47 -0
- data/node_modules/sass-lint/docs/rules/hex-notation.md +45 -0
- data/node_modules/sass-lint/docs/rules/id-name-format.md +205 -0
- data/node_modules/sass-lint/docs/rules/indentation.md +43 -0
- data/node_modules/sass-lint/docs/rules/leading-zero.md +25 -0
- data/node_modules/sass-lint/docs/rules/max-file-line-count.md +27 -0
- data/node_modules/sass-lint/docs/rules/max-line-length.md +24 -0
- data/node_modules/sass-lint/docs/rules/mixin-name-format.md +255 -0
- data/node_modules/sass-lint/docs/rules/mixins-before-declarations.md +35 -0
- data/node_modules/sass-lint/docs/rules/nesting-depth.md +29 -0
- data/node_modules/sass-lint/docs/rules/no-attribute-selectors.md +37 -0
- data/node_modules/sass-lint/docs/rules/no-color-hex.md +33 -0
- data/node_modules/sass-lint/docs/rules/no-color-keywords.md +26 -0
- data/node_modules/sass-lint/docs/rules/no-color-literals.md +237 -0
- data/node_modules/sass-lint/docs/rules/no-combinators.md +25 -0
- data/node_modules/sass-lint/docs/rules/no-css-comments.md +37 -0
- data/node_modules/sass-lint/docs/rules/no-debug.md +11 -0
- data/node_modules/sass-lint/docs/rules/no-disallowed-properties.md +30 -0
- data/node_modules/sass-lint/docs/rules/no-duplicate-properties.md +51 -0
- data/node_modules/sass-lint/docs/rules/no-empty-rulesets.md +21 -0
- data/node_modules/sass-lint/docs/rules/no-extends.md +15 -0
- data/node_modules/sass-lint/docs/rules/no-ids.md +13 -0
- data/node_modules/sass-lint/docs/rules/no-important.md +13 -0
- data/node_modules/sass-lint/docs/rules/no-invalid-hex.md +34 -0
- data/node_modules/sass-lint/docs/rules/no-mergeable-selectors.md +72 -0
- data/node_modules/sass-lint/docs/rules/no-misspelled-properties.md +71 -0
- data/node_modules/sass-lint/docs/rules/no-qualifying-elements.md +69 -0
- data/node_modules/sass-lint/docs/rules/no-trailing-whitespace.md +21 -0
- data/node_modules/sass-lint/docs/rules/no-trailing-zero.md +25 -0
- data/node_modules/sass-lint/docs/rules/no-transition-all.md +21 -0
- data/node_modules/sass-lint/docs/rules/no-universal-selectors.md +30 -0
- data/node_modules/sass-lint/docs/rules/no-url-domains.md +37 -0
- data/node_modules/sass-lint/docs/rules/no-url-protocols.md +77 -0
- data/node_modules/sass-lint/docs/rules/no-vendor-prefixes.md +126 -0
- data/node_modules/sass-lint/docs/rules/no-warn.md +11 -0
- data/node_modules/sass-lint/docs/rules/one-declaration-per-line.md +24 -0
- data/node_modules/sass-lint/docs/rules/placeholder-in-extend.md +23 -0
- data/node_modules/sass-lint/docs/rules/placeholder-name-format.md +254 -0
- data/node_modules/sass-lint/docs/rules/property-sort-order.md +101 -0
- data/node_modules/sass-lint/docs/rules/property-units.md +49 -0
- data/node_modules/sass-lint/docs/rules/pseudo-element.md +32 -0
- data/node_modules/sass-lint/docs/rules/quotes.md +25 -0
- data/node_modules/sass-lint/docs/rules/shorthand-values.md +91 -0
- data/node_modules/sass-lint/docs/rules/single-line-per-selector.md +22 -0
- data/node_modules/sass-lint/docs/rules/space-after-bang.md +25 -0
- data/node_modules/sass-lint/docs/rules/space-after-colon.md +25 -0
- data/node_modules/sass-lint/docs/rules/space-after-comma.md +29 -0
- data/node_modules/sass-lint/docs/rules/space-around-operator.md +72 -0
- data/node_modules/sass-lint/docs/rules/space-before-bang.md +25 -0
- data/node_modules/sass-lint/docs/rules/space-before-brace.md +41 -0
- data/node_modules/sass-lint/docs/rules/space-before-colon.md +25 -0
- data/node_modules/sass-lint/docs/rules/space-between-parens.md +45 -0
- data/node_modules/sass-lint/docs/rules/trailing-semicolon.md +35 -0
- data/node_modules/sass-lint/docs/rules/url-quotes.md +31 -0
- data/node_modules/sass-lint/docs/rules/variable-for-property.md +84 -0
- data/node_modules/sass-lint/docs/rules/variable-name-format.md +204 -0
- data/node_modules/sass-lint/docs/rules/zero-unit.md +33 -0
- data/node_modules/sass-lint/docs/sass-lint.yml +55 -0
- data/node_modules/sass-lint/docs/toggle-rules-in-src.md +71 -0
- data/node_modules/sass-lint/index.js +325 -0
- data/node_modules/sass-lint/lib/config-helpers.js +107 -0
- data/node_modules/sass-lint/lib/config.js +109 -0
- data/node_modules/sass-lint/lib/config/property-sort-orders/concentric.yml +156 -0
- data/node_modules/sass-lint/lib/config/property-sort-orders/recess.yml +164 -0
- data/node_modules/sass-lint/lib/config/property-sort-orders/smacss.yml +164 -0
- data/node_modules/sass-lint/lib/config/sass-lint.yml +95 -0
- data/node_modules/sass-lint/lib/exceptions.js +19 -0
- data/node_modules/sass-lint/lib/groot.js +44 -0
- data/node_modules/sass-lint/lib/helpers.js +417 -0
- data/node_modules/sass-lint/lib/ruleToggler.js +249 -0
- data/node_modules/sass-lint/lib/rules.js +67 -0
- data/node_modules/sass-lint/lib/rules/attribute-quotes.js +36 -0
- data/node_modules/sass-lint/lib/rules/bem-depth.js +74 -0
- data/node_modules/sass-lint/lib/rules/border-zero.js +66 -0
- data/node_modules/sass-lint/lib/rules/brace-style.js +338 -0
- data/node_modules/sass-lint/lib/rules/class-name-format.js +90 -0
- data/node_modules/sass-lint/lib/rules/clean-import-paths.js +129 -0
- data/node_modules/sass-lint/lib/rules/declarations-before-nesting.js +55 -0
- data/node_modules/sass-lint/lib/rules/empty-args.js +46 -0
- data/node_modules/sass-lint/lib/rules/empty-line-between-blocks.js +200 -0
- data/node_modules/sass-lint/lib/rules/extends-before-declarations.js +48 -0
- data/node_modules/sass-lint/lib/rules/extends-before-mixins.js +47 -0
- data/node_modules/sass-lint/lib/rules/final-newline.js +65 -0
- data/node_modules/sass-lint/lib/rules/force-attribute-nesting.js +52 -0
- data/node_modules/sass-lint/lib/rules/force-element-nesting.js +54 -0
- data/node_modules/sass-lint/lib/rules/force-pseudo-nesting.js +59 -0
- data/node_modules/sass-lint/lib/rules/function-name-format.js +92 -0
- data/node_modules/sass-lint/lib/rules/hex-length.js +48 -0
- data/node_modules/sass-lint/lib/rules/hex-notation.js +42 -0
- data/node_modules/sass-lint/lib/rules/id-name-format.js +80 -0
- data/node_modules/sass-lint/lib/rules/indentation.js +211 -0
- data/node_modules/sass-lint/lib/rules/leading-zero.js +45 -0
- data/node_modules/sass-lint/lib/rules/max-file-line-count.js +25 -0
- data/node_modules/sass-lint/lib/rules/max-line-length.js +32 -0
- data/node_modules/sass-lint/lib/rules/mixin-name-format.js +104 -0
- data/node_modules/sass-lint/lib/rules/mixins-before-declarations.js +53 -0
- data/node_modules/sass-lint/lib/rules/nesting-depth.js +68 -0
- data/node_modules/sass-lint/lib/rules/no-attribute-selectors.js +23 -0
- data/node_modules/sass-lint/lib/rules/no-color-hex.js +22 -0
- data/node_modules/sass-lint/lib/rules/no-color-keywords.js +51 -0
- data/node_modules/sass-lint/lib/rules/no-color-literals.js +212 -0
- data/node_modules/sass-lint/lib/rules/no-combinators.js +57 -0
- data/node_modules/sass-lint/lib/rules/no-css-comments.js +24 -0
- data/node_modules/sass-lint/lib/rules/no-debug.js +27 -0
- data/node_modules/sass-lint/lib/rules/no-disallowed-properties.js +28 -0
- data/node_modules/sass-lint/lib/rules/no-duplicate-properties.js +68 -0
- data/node_modules/sass-lint/lib/rules/no-empty-rulesets.js +45 -0
- data/node_modules/sass-lint/lib/rules/no-extends.js +27 -0
- data/node_modules/sass-lint/lib/rules/no-ids.js +23 -0
- data/node_modules/sass-lint/lib/rules/no-important.js +23 -0
- data/node_modules/sass-lint/lib/rules/no-invalid-hex.js +24 -0
- data/node_modules/sass-lint/lib/rules/no-mergeable-selectors.js +190 -0
- data/node_modules/sass-lint/lib/rules/no-misspelled-properties.js +58 -0
- data/node_modules/sass-lint/lib/rules/no-qualifying-elements.js +53 -0
- data/node_modules/sass-lint/lib/rules/no-trailing-whitespace.js +38 -0
- data/node_modules/sass-lint/lib/rules/no-trailing-zero.js +30 -0
- data/node_modules/sass-lint/lib/rules/no-transition-all.js +41 -0
- data/node_modules/sass-lint/lib/rules/no-universal-selectors.js +27 -0
- data/node_modules/sass-lint/lib/rules/no-url-domains.js +33 -0
- data/node_modules/sass-lint/lib/rules/no-url-protocols.js +41 -0
- data/node_modules/sass-lint/lib/rules/no-vendor-prefixes.js +117 -0
- data/node_modules/sass-lint/lib/rules/no-warn.js +27 -0
- data/node_modules/sass-lint/lib/rules/one-declaration-per-line.js +32 -0
- data/node_modules/sass-lint/lib/rules/placeholder-in-extend.js +40 -0
- data/node_modules/sass-lint/lib/rules/placeholder-name-format.js +82 -0
- data/node_modules/sass-lint/lib/rules/property-sort-order.js +147 -0
- data/node_modules/sass-lint/lib/rules/property-units.js +56 -0
- data/node_modules/sass-lint/lib/rules/pseudo-element.js +77 -0
- data/node_modules/sass-lint/lib/rules/quotes.js +49 -0
- data/node_modules/sass-lint/lib/rules/shorthand-values.js +210 -0
- data/node_modules/sass-lint/lib/rules/single-line-per-selector.js +54 -0
- data/node_modules/sass-lint/lib/rules/space-after-bang.js +39 -0
- data/node_modules/sass-lint/lib/rules/space-after-colon.js +44 -0
- data/node_modules/sass-lint/lib/rules/space-after-comma.js +58 -0
- data/node_modules/sass-lint/lib/rules/space-around-operator.js +326 -0
- data/node_modules/sass-lint/lib/rules/space-before-bang.js +42 -0
- data/node_modules/sass-lint/lib/rules/space-before-brace.js +78 -0
- data/node_modules/sass-lint/lib/rules/space-before-colon.js +44 -0
- data/node_modules/sass-lint/lib/rules/space-between-parens.js +74 -0
- data/node_modules/sass-lint/lib/rules/trailing-semicolon.js +66 -0
- data/node_modules/sass-lint/lib/rules/url-quotes.js +31 -0
- data/node_modules/sass-lint/lib/rules/variable-for-property.js +73 -0
- data/node_modules/sass-lint/lib/rules/variable-name-format.js +83 -0
- data/node_modules/sass-lint/lib/rules/zero-unit.js +66 -0
- data/node_modules/sass-lint/lib/selector-helpers.js +142 -0
- data/node_modules/sass-lint/node_modules/.bin/eslint +1 -0
- data/node_modules/sass-lint/node_modules/.bin/gonzales +1 -0
- data/node_modules/sass-lint/node_modules/.bin/js-yaml +1 -0
- data/node_modules/sass-lint/package.json +52 -0
- data/node_modules/sass-lint/tests/bom-utf8/starts-with-mixin-utf8-bom.scss +5 -0
- data/node_modules/sass-lint/tests/bom-utf8/var-utf8-bom.scss +5 -0
- data/node_modules/sass-lint/tests/cli.js +514 -0
- data/node_modules/sass-lint/tests/cli/cli-clean.scss +5 -0
- data/node_modules/sass-lint/tests/cli/cli-error.sass +2 -0
- data/node_modules/sass-lint/tests/cli/cli-error.scss +3 -0
- data/node_modules/sass-lint/tests/cli/cli.scss +3 -0
- data/node_modules/sass-lint/tests/cli/cli.txt +3 -0
- data/node_modules/sass-lint/tests/config-helpers.js +121 -0
- data/node_modules/sass-lint/tests/config.js +196 -0
- data/node_modules/sass-lint/tests/dir-test/dir.scss/test.scss +3 -0
- data/node_modules/sass-lint/tests/failures.js +90 -0
- data/node_modules/sass-lint/tests/helpers/addUnique.js +75 -0
- data/node_modules/sass-lint/tests/helpers/attemptTraversal.js +78 -0
- data/node_modules/sass-lint/tests/helpers/collectSuffixExtensions.js +123 -0
- data/node_modules/sass-lint/tests/helpers/hasEOL.js +27 -0
- data/node_modules/sass-lint/tests/helpers/helpers.js +18 -0
- data/node_modules/sass-lint/tests/helpers/isCamelCase.js +51 -0
- data/node_modules/sass-lint/tests/helpers/isEmptyLine.js +43 -0
- data/node_modules/sass-lint/tests/helpers/isEqual.js +113 -0
- data/node_modules/sass-lint/tests/helpers/isHyphenatedBEM.js +91 -0
- data/node_modules/sass-lint/tests/helpers/isHyphenatedLowerCase.js +75 -0
- data/node_modules/sass-lint/tests/helpers/isLowerCase.js +43 -0
- data/node_modules/sass-lint/tests/helpers/isNestable.js +35 -0
- data/node_modules/sass-lint/tests/helpers/isNewLine.js +119 -0
- data/node_modules/sass-lint/tests/helpers/isNumber.js +44 -0
- data/node_modules/sass-lint/tests/helpers/isPartialStringMatch.js +59 -0
- data/node_modules/sass-lint/tests/helpers/isPascalCase.js +51 -0
- data/node_modules/sass-lint/tests/helpers/isSnakeCase.js +59 -0
- data/node_modules/sass-lint/tests/helpers/isSpace.js +87 -0
- data/node_modules/sass-lint/tests/helpers/isStrictBEM.js +115 -0
- data/node_modules/sass-lint/tests/helpers/isUnique.js +74 -0
- data/node_modules/sass-lint/tests/helpers/isUpperCase.js +44 -0
- data/node_modules/sass-lint/tests/helpers/isValidHex.js +115 -0
- data/node_modules/sass-lint/tests/helpers/loadConfigFile.js +20 -0
- data/node_modules/sass-lint/tests/helpers/propertySearch.js +51 -0
- data/node_modules/sass-lint/tests/helpers/sortDetects.js +66 -0
- data/node_modules/sass-lint/tests/helpers/stripBom.js +28 -0
- data/node_modules/sass-lint/tests/helpers/stripLastSpace.js +43 -0
- data/node_modules/sass-lint/tests/helpers/stripPrefix.js +51 -0
- data/node_modules/sass-lint/tests/helpers/stripQuotes.js +27 -0
- data/node_modules/sass-lint/tests/main.js +343 -0
- data/node_modules/sass-lint/tests/output.js +78 -0
- data/node_modules/sass-lint/tests/ruleToggler.js +326 -0
- data/node_modules/sass-lint/tests/rules/_lint.js +37 -0
- data/node_modules/sass-lint/tests/rules/attribute-quotes.js +63 -0
- data/node_modules/sass-lint/tests/rules/bem-depth.js +91 -0
- data/node_modules/sass-lint/tests/rules/border-zero.js +121 -0
- data/node_modules/sass-lint/tests/rules/brace-style.js +94 -0
- data/node_modules/sass-lint/tests/rules/class-name-format.js +265 -0
- data/node_modules/sass-lint/tests/rules/clean-import-paths.js +121 -0
- data/node_modules/sass-lint/tests/rules/declarations-before-nesting.js +35 -0
- data/node_modules/sass-lint/tests/rules/empty-args.js +63 -0
- data/node_modules/sass-lint/tests/rules/empty-line-between-blocks.js +266 -0
- data/node_modules/sass-lint/tests/rules/extends-before-declarations.js +35 -0
- data/node_modules/sass-lint/tests/rules/extends-before-mixins.js +35 -0
- data/node_modules/sass-lint/tests/rules/final-newline.js +287 -0
- data/node_modules/sass-lint/tests/rules/force-attribute-nesting.js +35 -0
- data/node_modules/sass-lint/tests/rules/force-element-nesting.js +35 -0
- data/node_modules/sass-lint/tests/rules/force-pseudo-nesting.js +36 -0
- data/node_modules/sass-lint/tests/rules/function-name-format.js +227 -0
- data/node_modules/sass-lint/tests/rules/hex-length.js +63 -0
- data/node_modules/sass-lint/tests/rules/hex-notation.js +63 -0
- data/node_modules/sass-lint/tests/rules/id-name-format.js +209 -0
- data/node_modules/sass-lint/tests/rules/indentation.js +67 -0
- data/node_modules/sass-lint/tests/rules/leading-zero.js +63 -0
- data/node_modules/sass-lint/tests/rules/max-file-line-count.js +63 -0
- data/node_modules/sass-lint/tests/rules/max-line-length.js +63 -0
- data/node_modules/sass-lint/tests/rules/mixin-name-format.js +227 -0
- data/node_modules/sass-lint/tests/rules/mixins-before-declarations.js +120 -0
- data/node_modules/sass-lint/tests/rules/nesting-depth.js +63 -0
- data/node_modules/sass-lint/tests/rules/no-attribute-selectors.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-color-hex.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-color-keywords.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-color-literals.js +151 -0
- data/node_modules/sass-lint/tests/rules/no-combinators.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-css-comments.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-debug.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-disallowed-properties.js +83 -0
- data/node_modules/sass-lint/tests/rules/no-duplicate-properties.js +101 -0
- data/node_modules/sass-lint/tests/rules/no-empty-rulesets.js +19 -0
- data/node_modules/sass-lint/tests/rules/no-extends.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-ids.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-important.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-invalid-hex.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-mergeable-selectors.js +64 -0
- data/node_modules/sass-lint/tests/rules/no-misspelled-properties.js +101 -0
- data/node_modules/sass-lint/tests/rules/no-qualifying-elements.js +181 -0
- data/node_modules/sass-lint/tests/rules/no-trailing-whitespace.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-trailing-zero.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-transition-all.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-universal-selectors.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-url-domains.js +35 -0
- data/node_modules/sass-lint/tests/rules/no-url-protocols.js +64 -0
- data/node_modules/sass-lint/tests/rules/no-vendor-prefixes.js +241 -0
- data/node_modules/sass-lint/tests/rules/no-warn.js +35 -0
- data/node_modules/sass-lint/tests/rules/one-declaration-per-line.js +19 -0
- data/node_modules/sass-lint/tests/rules/placeholder-in-extend.js +35 -0
- data/node_modules/sass-lint/tests/rules/placeholder-name-format.js +235 -0
- data/node_modules/sass-lint/tests/rules/property-sort-order.js +267 -0
- data/node_modules/sass-lint/tests/rules/property-units.js +205 -0
- data/node_modules/sass-lint/tests/rules/pseudo-element.js +73 -0
- data/node_modules/sass-lint/tests/rules/quotes.js +63 -0
- data/node_modules/sass-lint/tests/rules/shorthand-values.js +300 -0
- data/node_modules/sass-lint/tests/rules/single-line-per-selector.js +35 -0
- data/node_modules/sass-lint/tests/rules/space-after-bang.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-after-colon.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-after-comma.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-around-operator.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-before-bang.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-before-brace.js +33 -0
- data/node_modules/sass-lint/tests/rules/space-before-colon.js +63 -0
- data/node_modules/sass-lint/tests/rules/space-between-parens.js +63 -0
- data/node_modules/sass-lint/tests/rules/trailing-semicolon.js +33 -0
- data/node_modules/sass-lint/tests/rules/url-quotes.js +35 -0
- data/node_modules/sass-lint/tests/rules/variable-for-property.js +103 -0
- data/node_modules/sass-lint/tests/rules/variable-name-format.js +235 -0
- data/node_modules/sass-lint/tests/rules/zero-unit.js +63 -0
- data/node_modules/sass-lint/tests/sass/attribute-quotes.sass +62 -0
- data/node_modules/sass-lint/tests/sass/attribute-quotes.scss +75 -0
- data/node_modules/sass-lint/tests/sass/bem-depth.sass +35 -0
- data/node_modules/sass-lint/tests/sass/bem-depth.scss +55 -0
- data/node_modules/sass-lint/tests/sass/border-zero.sass +22 -0
- data/node_modules/sass-lint/tests/sass/border-zero.scss +29 -0
- data/node_modules/sass-lint/tests/sass/brace-style.scss +540 -0
- data/node_modules/sass-lint/tests/sass/class-name-format.sass +96 -0
- data/node_modules/sass-lint/tests/sass/class-name-format.scss +135 -0
- data/node_modules/sass-lint/tests/sass/clean-import-paths.sass +26 -0
- data/node_modules/sass-lint/tests/sass/clean-import-paths.scss +30 -0
- data/node_modules/sass-lint/tests/sass/declarations-before-nesting.sass +34 -0
- data/node_modules/sass-lint/tests/sass/declarations-before-nesting.scss +44 -0
- data/node_modules/sass-lint/tests/sass/empty-args.sass +42 -0
- data/node_modules/sass-lint/tests/sass/empty-args.scss +43 -0
- data/node_modules/sass-lint/tests/sass/empty-file.sass +0 -0
- data/node_modules/sass-lint/tests/sass/empty-file.scss +0 -0
- data/node_modules/sass-lint/tests/sass/empty-line-between-blocks.sass +90 -0
- data/node_modules/sass-lint/tests/sass/empty-line-between-blocks.scss +113 -0
- data/node_modules/sass-lint/tests/sass/empty-line-with-comments.sass +185 -0
- data/node_modules/sass-lint/tests/sass/empty-line-with-comments.scss +228 -0
- data/node_modules/sass-lint/tests/sass/extends-before-declarations.sass +34 -0
- data/node_modules/sass-lint/tests/sass/extends-before-declarations.scss +35 -0
- data/node_modules/sass-lint/tests/sass/extends-before-mixins.sass +15 -0
- data/node_modules/sass-lint/tests/sass/extends-before-mixins.scss +15 -0
- data/node_modules/sass-lint/tests/sass/final-newline--import.sass +1 -0
- data/node_modules/sass-lint/tests/sass/final-newline--import.scss +1 -0
- data/node_modules/sass-lint/tests/sass/final-newline--nested.sass +3 -0
- data/node_modules/sass-lint/tests/sass/final-newline--nested.scss +5 -0
- data/node_modules/sass-lint/tests/sass/final-newline--none.sass +2 -0
- data/node_modules/sass-lint/tests/sass/final-newline--none.scss +3 -0
- data/node_modules/sass-lint/tests/sass/final-newline--return.sass +2 -0
- data/node_modules/sass-lint/tests/sass/final-newline--return.scss +3 -0
- data/node_modules/sass-lint/tests/sass/final-newline--space.sass +2 -0
- data/node_modules/sass-lint/tests/sass/final-newline--space.scss +3 -0
- data/node_modules/sass-lint/tests/sass/force-attribute-nesting.sass +25 -0
- data/node_modules/sass-lint/tests/sass/force-attribute-nesting.scss +34 -0
- data/node_modules/sass-lint/tests/sass/force-element-nesting.sass +56 -0
- data/node_modules/sass-lint/tests/sass/force-element-nesting.scss +76 -0
- data/node_modules/sass-lint/tests/sass/force-pseudo-nesting.sass +41 -0
- data/node_modules/sass-lint/tests/sass/force-pseudo-nesting.scss +61 -0
- data/node_modules/sass-lint/tests/sass/front-matter/front-matter.scss +7 -0
- data/node_modules/sass-lint/tests/sass/function-name-format.sass +57 -0
- data/node_modules/sass-lint/tests/sass/function-name-format.scss +74 -0
- data/node_modules/sass-lint/tests/sass/hex-length.sass +28 -0
- data/node_modules/sass-lint/tests/sass/hex-length.scss +28 -0
- data/node_modules/sass-lint/tests/sass/hex-notation.sass +31 -0
- data/node_modules/sass-lint/tests/sass/hex-notation.scss +33 -0
- data/node_modules/sass-lint/tests/sass/id-name-format.sass +44 -0
- data/node_modules/sass-lint/tests/sass/id-name-format.scss +58 -0
- data/node_modules/sass-lint/tests/sass/indentation/indentation-spaces.sass +107 -0
- data/node_modules/sass-lint/tests/sass/indentation/indentation-spaces.scss +175 -0
- data/node_modules/sass-lint/tests/sass/indentation/indentation-tabs.sass +107 -0
- data/node_modules/sass-lint/tests/sass/indentation/indentation-tabs.scss +175 -0
- data/node_modules/sass-lint/tests/sass/leading-zero.sass +8 -0
- data/node_modules/sass-lint/tests/sass/leading-zero.scss +9 -0
- data/node_modules/sass-lint/tests/sass/max-file-line-count.sass +301 -0
- data/node_modules/sass-lint/tests/sass/max-file-line-count.scss +301 -0
- data/node_modules/sass-lint/tests/sass/max-line-length.sass +20 -0
- data/node_modules/sass-lint/tests/sass/max-line-length.scss +22 -0
- data/node_modules/sass-lint/tests/sass/mixin-name-format.sass +74 -0
- data/node_modules/sass-lint/tests/sass/mixin-name-format.scss +91 -0
- data/node_modules/sass-lint/tests/sass/mixins-before-declarations.sass +69 -0
- data/node_modules/sass-lint/tests/sass/mixins-before-declarations.scss +77 -0
- data/node_modules/sass-lint/tests/sass/nesting-depth.sass +29 -0
- data/node_modules/sass-lint/tests/sass/nesting-depth.scss +39 -0
- data/node_modules/sass-lint/tests/sass/no-attribute-selectors.sass +77 -0
- data/node_modules/sass-lint/tests/sass/no-attribute-selectors.scss +98 -0
- data/node_modules/sass-lint/tests/sass/no-color-hex.sass +25 -0
- data/node_modules/sass-lint/tests/sass/no-color-hex.scss +26 -0
- data/node_modules/sass-lint/tests/sass/no-color-keywords.sass +33 -0
- data/node_modules/sass-lint/tests/sass/no-color-keywords.scss +44 -0
- data/node_modules/sass-lint/tests/sass/no-color-literals.sass +115 -0
- data/node_modules/sass-lint/tests/sass/no-color-literals.scss +124 -0
- data/node_modules/sass-lint/tests/sass/no-combinators.sass +115 -0
- data/node_modules/sass-lint/tests/sass/no-combinators.scss +155 -0
- data/node_modules/sass-lint/tests/sass/no-css-comments.sass +58 -0
- data/node_modules/sass-lint/tests/sass/no-css-comments.scss +59 -0
- data/node_modules/sass-lint/tests/sass/no-debug.sass +8 -0
- data/node_modules/sass-lint/tests/sass/no-debug.scss +9 -0
- data/node_modules/sass-lint/tests/sass/no-disallowed-properties.sass +25 -0
- data/node_modules/sass-lint/tests/sass/no-disallowed-properties.scss +36 -0
- data/node_modules/sass-lint/tests/sass/no-duplicate-properties.sass +47 -0
- data/node_modules/sass-lint/tests/sass/no-duplicate-properties.scss +56 -0
- data/node_modules/sass-lint/tests/sass/no-empty-rulesets.scss +11 -0
- data/node_modules/sass-lint/tests/sass/no-extends.sass +7 -0
- data/node_modules/sass-lint/tests/sass/no-extends.scss +8 -0
- data/node_modules/sass-lint/tests/sass/no-ids.sass +6 -0
- data/node_modules/sass-lint/tests/sass/no-ids.scss +7 -0
- data/node_modules/sass-lint/tests/sass/no-important.sass +2 -0
- data/node_modules/sass-lint/tests/sass/no-important.scss +3 -0
- data/node_modules/sass-lint/tests/sass/no-invalid-hex.sass +45 -0
- data/node_modules/sass-lint/tests/sass/no-invalid-hex.scss +52 -0
- data/node_modules/sass-lint/tests/sass/no-mergeable-selectors.sass +253 -0
- data/node_modules/sass-lint/tests/sass/no-mergeable-selectors.scss +362 -0
- data/node_modules/sass-lint/tests/sass/no-misspelled-properties.sass +48 -0
- data/node_modules/sass-lint/tests/sass/no-misspelled-properties.scss +65 -0
- data/node_modules/sass-lint/tests/sass/no-qualifying-elements.sass +42 -0
- data/node_modules/sass-lint/tests/sass/no-qualifying-elements.scss +43 -0
- data/node_modules/sass-lint/tests/sass/no-trailing-whitespace.sass +24 -0
- data/node_modules/sass-lint/tests/sass/no-trailing-whitespace.scss +29 -0
- data/node_modules/sass-lint/tests/sass/no-trailing-zero.sass +41 -0
- data/node_modules/sass-lint/tests/sass/no-trailing-zero.scss +47 -0
- data/node_modules/sass-lint/tests/sass/no-transition-all.sass +25 -0
- data/node_modules/sass-lint/tests/sass/no-transition-all.scss +31 -0
- data/node_modules/sass-lint/tests/sass/no-universal-selectors.sass +15 -0
- data/node_modules/sass-lint/tests/sass/no-universal-selectors.scss +20 -0
- data/node_modules/sass-lint/tests/sass/no-url-domains.sass +25 -0
- data/node_modules/sass-lint/tests/sass/no-url-domains.scss +27 -0
- data/node_modules/sass-lint/tests/sass/no-url-protocols.sass +25 -0
- data/node_modules/sass-lint/tests/sass/no-url-protocols.scss +27 -0
- data/node_modules/sass-lint/tests/sass/no-vendor-prefixes.sass +38 -0
- data/node_modules/sass-lint/tests/sass/no-vendor-prefixes.scss +41 -0
- data/node_modules/sass-lint/tests/sass/no-warn.sass +8 -0
- data/node_modules/sass-lint/tests/sass/no-warn.scss +9 -0
- data/node_modules/sass-lint/tests/sass/one-declaration-per-line.scss +25 -0
- data/node_modules/sass-lint/tests/sass/parse.scss +7 -0
- data/node_modules/sass-lint/tests/sass/placeholder-in-extend.sass +3 -0
- data/node_modules/sass-lint/tests/sass/placeholder-in-extend.scss +5 -0
- data/node_modules/sass-lint/tests/sass/placeholder-name-format.sass +58 -0
- data/node_modules/sass-lint/tests/sass/placeholder-name-format.scss +77 -0
- data/node_modules/sass-lint/tests/sass/property-sort-order.sass +51 -0
- data/node_modules/sass-lint/tests/sass/property-sort-order.scss +55 -0
- data/node_modules/sass-lint/tests/sass/property-units.sass +24 -0
- data/node_modules/sass-lint/tests/sass/property-units.scss +37 -0
- data/node_modules/sass-lint/tests/sass/pseudo-element.sass +236 -0
- data/node_modules/sass-lint/tests/sass/pseudo-element.scss +238 -0
- data/node_modules/sass-lint/tests/sass/quotes.sass +14 -0
- data/node_modules/sass-lint/tests/sass/quotes.scss +15 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-block.sass +2 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-block.scss +3 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-line.sass +2 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-line.scss +3 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-rule.sass +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-a-rule.scss +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-all-then-reenable.sass +3 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-all-then-reenable.scss +3 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-all.sass +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-all.scss +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-multiple-rules.sass +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-multiple-rules.scss +1 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-then-enable.sass +5 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-disable-then-enable.scss +6 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-empty-comment.sass +2 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-empty-comment.scss +3 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-guarantee-order.sass +17 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-guarantee-order.scss +17 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-ignore-unknown.sass +2 -0
- data/node_modules/sass-lint/tests/sass/ruleToggler-ignore-unknown.scss +3 -0
- data/node_modules/sass-lint/tests/sass/selector-helpers/selector-helpers.scss +68 -0
- data/node_modules/sass-lint/tests/sass/shorthand-values.sass +314 -0
- data/node_modules/sass-lint/tests/sass/shorthand-values.scss +380 -0
- data/node_modules/sass-lint/tests/sass/single-line-per-selector.sass +59 -0
- data/node_modules/sass-lint/tests/sass/single-line-per-selector.scss +66 -0
- data/node_modules/sass-lint/tests/sass/space-after-bang.sass +52 -0
- data/node_modules/sass-lint/tests/sass/space-after-bang.scss +56 -0
- data/node_modules/sass-lint/tests/sass/space-after-colon.sass +16 -0
- data/node_modules/sass-lint/tests/sass/space-after-colon.scss +16 -0
- data/node_modules/sass-lint/tests/sass/space-after-comma.sass +49 -0
- data/node_modules/sass-lint/tests/sass/space-after-comma.scss +50 -0
- data/node_modules/sass-lint/tests/sass/space-around-operator.sass +512 -0
- data/node_modules/sass-lint/tests/sass/space-around-operator.scss +540 -0
- data/node_modules/sass-lint/tests/sass/space-before-bang.sass +27 -0
- data/node_modules/sass-lint/tests/sass/space-before-bang.scss +27 -0
- data/node_modules/sass-lint/tests/sass/space-before-brace.scss +56 -0
- data/node_modules/sass-lint/tests/sass/space-before-colon.sass +16 -0
- data/node_modules/sass-lint/tests/sass/space-before-colon.scss +16 -0
- data/node_modules/sass-lint/tests/sass/space-between-parens.sass +46 -0
- data/node_modules/sass-lint/tests/sass/space-between-parens.scss +47 -0
- data/node_modules/sass-lint/tests/sass/success.scss +3 -0
- data/node_modules/sass-lint/tests/sass/trailing-semicolon.scss +40 -0
- data/node_modules/sass-lint/tests/sass/url-quotes.sass +20 -0
- data/node_modules/sass-lint/tests/sass/url-quotes.scss +21 -0
- data/node_modules/sass-lint/tests/sass/variable-for-property.sass +37 -0
- data/node_modules/sass-lint/tests/sass/variable-for-property.scss +41 -0
- data/node_modules/sass-lint/tests/sass/variable-name-format.sass +25 -0
- data/node_modules/sass-lint/tests/sass/variable-name-format.scss +27 -0
- data/node_modules/sass-lint/tests/sass/zero-unit.sass +23 -0
- data/node_modules/sass-lint/tests/sass/zero-unit.scss +25 -0
- data/node_modules/sass-lint/tests/selector-helpers/selectorHelpers.js +137 -0
- data/node_modules/sass-lint/tests/testFile.txt +1 -0
- data/node_modules/sass-lint/tests/yml/.blank.yml +0 -0
- data/node_modules/sass-lint/tests/yml/.color-keyword-errors.yml +59 -0
- data/node_modules/sass-lint/tests/yml/.error-output.yml +9 -0
- data/node_modules/sass-lint/tests/yml/.extend-a1.yml +4 -0
- data/node_modules/sass-lint/tests/yml/.extend-a2.yml +4 -0
- data/node_modules/sass-lint/tests/yml/.ignore-file.yml +9 -0
- data/node_modules/sass-lint/tests/yml/.indentation-error.yml +2 -0
- data/node_modules/sass-lint/tests/yml/.indentation-warn.yml +2 -0
- data/node_modules/sass-lint/tests/yml/.json-lint.yml +59 -0
- data/node_modules/sass-lint/tests/yml/.max-0-warnings.yml +2 -0
- data/node_modules/sass-lint/tests/yml/.max-10-warnings.yml +2 -0
- data/node_modules/sass-lint/tests/yml/.max-100-warnings.yml +2 -0
- data/node_modules/sass-lint/tests/yml/.multiple-ignore-strings.yml +60 -0
- data/node_modules/sass-lint/tests/yml/.multiple-ignores.yml +64 -0
- data/node_modules/sass-lint/tests/yml/.multiple-inputs.yml +61 -0
- data/node_modules/sass-lint/tests/yml/.no-merge-default.yml +59 -0
- data/node_modules/sass-lint/tests/yml/.single-input-include-string.yml +59 -0
- data/node_modules/sass-lint/tests/yml/.stylish-errors.yml +59 -0
- data/node_modules/sass-lint/tests/yml/.stylish-output.yml +58 -0
- data/node_modules/sass-lint/tests/yml/extend/.extend-b.yml +5 -0
- data/node_modules/sass-lint/tests/yml/extend/.extend-c.yml +3 -0
- data/node_modules/sass-lint/tests/yml/extend/find-file-test/.npmignore +0 -0
- data/node_modules/shelljs/.npmignore +9 -0
- data/node_modules/shelljs/LICENSE +26 -0
- data/node_modules/shelljs/MAINTAINERS +3 -0
- data/node_modules/shelljs/README.md +658 -0
- data/node_modules/shelljs/bin/shjs +55 -0
- data/node_modules/shelljs/global.js +3 -0
- data/node_modules/shelljs/make.js +57 -0
- data/node_modules/shelljs/package.json +40 -0
- data/node_modules/shelljs/scripts/generate-docs.js +26 -0
- data/node_modules/shelljs/scripts/run-tests.js +55 -0
- data/node_modules/shelljs/shell.js +184 -0
- data/node_modules/shelljs/src/cat.js +40 -0
- data/node_modules/shelljs/src/cd.js +28 -0
- data/node_modules/shelljs/src/chmod.js +215 -0
- data/node_modules/shelljs/src/common.js +257 -0
- data/node_modules/shelljs/src/cp.js +210 -0
- data/node_modules/shelljs/src/dirs.js +191 -0
- data/node_modules/shelljs/src/echo.js +20 -0
- data/node_modules/shelljs/src/error.js +10 -0
- data/node_modules/shelljs/src/exec.js +249 -0
- data/node_modules/shelljs/src/find.js +51 -0
- data/node_modules/shelljs/src/grep.js +52 -0
- data/node_modules/shelljs/src/ln.js +69 -0
- data/node_modules/shelljs/src/ls.js +168 -0
- data/node_modules/shelljs/src/mkdir.js +68 -0
- data/node_modules/shelljs/src/mv.js +82 -0
- data/node_modules/shelljs/src/popd.js +1 -0
- data/node_modules/shelljs/src/pushd.js +1 -0
- data/node_modules/shelljs/src/pwd.js +11 -0
- data/node_modules/shelljs/src/rm.js +163 -0
- data/node_modules/shelljs/src/sed.js +64 -0
- data/node_modules/shelljs/src/set.js +49 -0
- data/node_modules/shelljs/src/tempdir.js +57 -0
- data/node_modules/shelljs/src/test.js +85 -0
- data/node_modules/shelljs/src/to.js +30 -0
- data/node_modules/shelljs/src/toEnd.js +30 -0
- data/node_modules/shelljs/src/touch.js +109 -0
- data/node_modules/shelljs/src/which.js +98 -0
- data/node_modules/slice-ansi/index.js +80 -0
- data/node_modules/slice-ansi/license +22 -0
- data/node_modules/slice-ansi/package.json +56 -0
- data/node_modules/slice-ansi/readme.md +56 -0
- data/node_modules/sprintf-js/.npmignore +1 -0
- data/node_modules/sprintf-js/LICENSE +24 -0
- data/node_modules/sprintf-js/README.md +88 -0
- data/node_modules/sprintf-js/bower.json +14 -0
- data/node_modules/sprintf-js/demo/angular.html +20 -0
- data/node_modules/sprintf-js/dist/angular-sprintf.min.js +4 -0
- data/node_modules/sprintf-js/dist/angular-sprintf.min.js.map +1 -0
- data/node_modules/sprintf-js/dist/angular-sprintf.min.map +1 -0
- data/node_modules/sprintf-js/dist/sprintf.min.js +4 -0
- data/node_modules/sprintf-js/dist/sprintf.min.js.map +1 -0
- data/node_modules/sprintf-js/dist/sprintf.min.map +1 -0
- data/node_modules/sprintf-js/gruntfile.js +36 -0
- data/node_modules/sprintf-js/package.json +22 -0
- data/node_modules/sprintf-js/src/angular-sprintf.js +18 -0
- data/node_modules/sprintf-js/src/sprintf.js +208 -0
- data/node_modules/sprintf-js/test/test.js +82 -0
- data/node_modules/string-width/index.js +37 -0
- data/node_modules/string-width/license +21 -0
- data/node_modules/string-width/package.json +56 -0
- data/node_modules/string-width/readme.md +42 -0
- data/node_modules/string_decoder/.npmignore +2 -0
- data/node_modules/string_decoder/LICENSE +20 -0
- data/node_modules/string_decoder/README.md +7 -0
- data/node_modules/string_decoder/index.js +221 -0
- data/node_modules/string_decoder/package.json +25 -0
- data/node_modules/strip-ansi/index.js +6 -0
- data/node_modules/strip-ansi/license +21 -0
- data/node_modules/strip-ansi/package.json +57 -0
- data/node_modules/strip-ansi/readme.md +33 -0
- data/node_modules/strip-json-comments/cli.js +41 -0
- data/node_modules/strip-json-comments/license +21 -0
- data/node_modules/strip-json-comments/package.json +46 -0
- data/node_modules/strip-json-comments/readme.md +80 -0
- data/node_modules/strip-json-comments/strip-json-comments.js +73 -0
- data/node_modules/supports-color/index.js +50 -0
- data/node_modules/supports-color/license +21 -0
- data/node_modules/supports-color/package.json +49 -0
- data/node_modules/supports-color/readme.md +36 -0
- data/node_modules/table/LICENSE +24 -0
- data/node_modules/table/README.md +652 -0
- data/node_modules/table/dist/alignString.js +108 -0
- data/node_modules/table/dist/alignTableData.js +40 -0
- data/node_modules/table/dist/calculateCellHeight.js +49 -0
- data/node_modules/table/dist/calculateCellWidthIndex.js +29 -0
- data/node_modules/table/dist/calculateMaximumColumnWidthIndex.js +43 -0
- data/node_modules/table/dist/calculateRowHeightIndex.js +50 -0
- data/node_modules/table/dist/createStream.js +159 -0
- data/node_modules/table/dist/drawBorder.js +104 -0
- data/node_modules/table/dist/drawRow.js +23 -0
- data/node_modules/table/dist/drawTable.js +63 -0
- data/node_modules/table/dist/getBorderCharacters.js +128 -0
- data/node_modules/table/dist/index.js +24 -0
- data/node_modules/table/dist/makeConfig.js +101 -0
- data/node_modules/table/dist/makeStreamConfig.js +109 -0
- data/node_modules/table/dist/mapDataUsingRowHeightIndex.js +59 -0
- data/node_modules/table/dist/padTableData.js +28 -0
- data/node_modules/table/dist/schemas/config.json +114 -0
- data/node_modules/table/dist/schemas/streamConfig.json +114 -0
- data/node_modules/table/dist/stringifyTableData.js +25 -0
- data/node_modules/table/dist/table.js +135 -0
- data/node_modules/table/dist/truncateTableData.js +29 -0
- data/node_modules/table/dist/validateConfig.js +756 -0
- data/node_modules/table/dist/validateStreamConfig.js +742 -0
- data/node_modules/table/dist/validateTableData.js +59 -0
- data/node_modules/table/dist/wrapString.js +48 -0
- data/node_modules/table/dist/wrapWord.js +58 -0
- data/node_modules/table/node_modules/is-fullwidth-code-point/index.js +46 -0
- data/node_modules/table/node_modules/is-fullwidth-code-point/license +21 -0
- data/node_modules/table/node_modules/is-fullwidth-code-point/package.json +45 -0
- data/node_modules/table/node_modules/is-fullwidth-code-point/readme.md +39 -0
- data/node_modules/table/node_modules/string-width/index.js +35 -0
- data/node_modules/table/node_modules/string-width/license +21 -0
- data/node_modules/table/node_modules/string-width/package.json +58 -0
- data/node_modules/table/node_modules/string-width/readme.md +42 -0
- data/node_modules/table/package.json +69 -0
- data/node_modules/table/test/README/usage/basic.js +25 -0
- data/node_modules/table/test/README/usage/cell_content_alignment.js +45 -0
- data/node_modules/table/test/README/usage/column_width.js +33 -0
- data/node_modules/table/test/README/usage/custom_border.js +50 -0
- data/node_modules/table/test/README/usage/draw_horizontal_line.js +41 -0
- data/node_modules/table/test/README/usage/expectTable.js +13 -0
- data/node_modules/table/test/README/usage/moon_mission.js +67 -0
- data/node_modules/table/test/README/usage/padding_cell_content.js +39 -0
- data/node_modules/table/test/README/usage/predefined_border_templates.js +91 -0
- data/node_modules/table/test/README/usage/streaming.js +56 -0
- data/node_modules/table/test/README/usage/text_truncating.js +32 -0
- data/node_modules/table/test/README/usage/text_wrapping.js +67 -0
- data/node_modules/table/test/alignString.js +102 -0
- data/node_modules/table/test/calculateCellHeight.js +44 -0
- data/node_modules/table/test/calculateCellWidthIndex.js +20 -0
- data/node_modules/table/test/calculateMaximumColumnWidthIndex.js +59 -0
- data/node_modules/table/test/calculateRowHeightIndex.js +78 -0
- data/node_modules/table/test/config.js +43 -0
- data/node_modules/table/test/configSamples.js +153 -0
- data/node_modules/table/test/createStream.js +41 -0
- data/node_modules/table/test/drawBorder.js +71 -0
- data/node_modules/table/test/makeConfig.js +75 -0
- data/node_modules/table/test/mapDataUsingRowHeightIndex.js +119 -0
- data/node_modules/table/test/streamConfig.js +43 -0
- data/node_modules/table/test/streamConfigSamples.js +151 -0
- data/node_modules/table/test/validateTableData.js +65 -0
- data/node_modules/table/test/wrapString.js +45 -0
- data/node_modules/table/test/wrapWord.js +32 -0
- data/node_modules/text-table/.travis.yml +4 -0
- data/node_modules/text-table/LICENSE +18 -0
- data/node_modules/text-table/example/align.js +8 -0
- data/node_modules/text-table/example/center.js +8 -0
- data/node_modules/text-table/example/dotalign.js +9 -0
- data/node_modules/text-table/example/doubledot.js +11 -0
- data/node_modules/text-table/example/table.js +6 -0
- data/node_modules/text-table/index.js +86 -0
- data/node_modules/text-table/package.json +44 -0
- data/node_modules/text-table/readme.markdown +134 -0
- data/node_modules/text-table/test/align.js +18 -0
- data/node_modules/text-table/test/ansi-colors.js +32 -0
- data/node_modules/text-table/test/center.js +18 -0
- data/node_modules/text-table/test/dotalign.js +20 -0
- data/node_modules/text-table/test/doubledot.js +24 -0
- data/node_modules/text-table/test/table.js +14 -0
- data/node_modules/through/.travis.yml +5 -0
- data/node_modules/through/LICENSE.APACHE2 +15 -0
- data/node_modules/through/LICENSE.MIT +24 -0
- data/node_modules/through/index.js +108 -0
- data/node_modules/through/package.json +36 -0
- data/node_modules/through/readme.markdown +64 -0
- data/node_modules/through/test/async.js +28 -0
- data/node_modules/through/test/auto-destroy.js +30 -0
- data/node_modules/through/test/buffering.js +71 -0
- data/node_modules/through/test/end.js +45 -0
- data/node_modules/through/test/index.js +133 -0
- data/node_modules/tryit/README.md +56 -0
- data/node_modules/tryit/package.json +27 -0
- data/node_modules/tryit/tryit.js +14 -0
- data/node_modules/type-check/LICENSE +22 -0
- data/node_modules/type-check/README.md +210 -0
- data/node_modules/type-check/lib/check.js +126 -0
- data/node_modules/type-check/lib/index.js +16 -0
- data/node_modules/type-check/lib/parse-type.js +196 -0
- data/node_modules/type-check/package.json +40 -0
- data/node_modules/typedarray/.travis.yml +4 -0
- data/node_modules/typedarray/LICENSE +35 -0
- data/node_modules/typedarray/example/tarray.js +4 -0
- data/node_modules/typedarray/index.js +630 -0
- data/node_modules/typedarray/package.json +55 -0
- data/node_modules/typedarray/readme.markdown +61 -0
- data/node_modules/typedarray/test/server/undef_globals.js +19 -0
- data/node_modules/typedarray/test/tarray.js +10 -0
- data/node_modules/user-home/index.js +2 -0
- data/node_modules/user-home/license +21 -0
- data/node_modules/user-home/package.json +43 -0
- data/node_modules/user-home/readme.md +33 -0
- data/node_modules/util-deprecate/History.md +16 -0
- data/node_modules/util-deprecate/LICENSE +24 -0
- data/node_modules/util-deprecate/README.md +53 -0
- data/node_modules/util-deprecate/browser.js +67 -0
- data/node_modules/util-deprecate/node.js +6 -0
- data/node_modules/util-deprecate/package.json +27 -0
- data/node_modules/util/.npmignore +1 -0
- data/node_modules/util/.travis.yml +8 -0
- data/node_modules/util/.zuul.yml +10 -0
- data/node_modules/util/LICENSE +18 -0
- data/node_modules/util/README.md +15 -0
- data/node_modules/util/package.json +31 -0
- data/node_modules/util/support/isBuffer.js +3 -0
- data/node_modules/util/support/isBufferBrowser.js +6 -0
- data/node_modules/util/test/browser/inspect.js +41 -0
- data/node_modules/util/test/browser/is.js +91 -0
- data/node_modules/util/test/node/debug.js +86 -0
- data/node_modules/util/test/node/format.js +77 -0
- data/node_modules/util/test/node/inspect.js +195 -0
- data/node_modules/util/test/node/log.js +58 -0
- data/node_modules/util/test/node/util.js +83 -0
- data/node_modules/util/util.js +586 -0
- data/node_modules/wordwrap/LICENSE +18 -0
- data/node_modules/wordwrap/README.markdown +70 -0
- data/node_modules/wordwrap/example/center.js +10 -0
- data/node_modules/wordwrap/example/meat.js +3 -0
- data/node_modules/wordwrap/index.js +76 -0
- data/node_modules/wordwrap/package.json +34 -0
- data/node_modules/wordwrap/test/break.js +32 -0
- data/node_modules/wordwrap/test/idleness.txt +63 -0
- data/node_modules/wordwrap/test/wrap.js +33 -0
- data/node_modules/wrappy/LICENSE +15 -0
- data/node_modules/wrappy/README.md +36 -0
- data/node_modules/wrappy/package.json +29 -0
- data/node_modules/wrappy/wrappy.js +33 -0
- data/node_modules/write/LICENSE +21 -0
- data/node_modules/write/README.md +101 -0
- data/node_modules/write/index.js +93 -0
- data/node_modules/write/node_modules/.bin/mkdirp +1 -0
- data/node_modules/write/package.json +43 -0
- data/node_modules/xtend/.jshintrc +30 -0
- data/node_modules/xtend/.npmignore +1 -0
- data/node_modules/xtend/LICENCE +19 -0
- data/node_modules/xtend/Makefile +4 -0
- data/node_modules/xtend/README.md +32 -0
- data/node_modules/xtend/immutable.js +19 -0
- data/node_modules/xtend/mutable.js +17 -0
- data/node_modules/xtend/package.json +55 -0
- data/node_modules/xtend/test.js +83 -0
- metadata +4077 -4
- data/lib/rubygems_plugin.rb +0 -3
@@ -0,0 +1,3411 @@
|
|
1
|
+
(function (global, factory) {
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
4
|
+
(factory((global.acorn = global.acorn || {})));
|
5
|
+
}(this, (function (exports) { 'use strict';
|
6
|
+
|
7
|
+
// Reserved word lists for various dialects of the language
|
8
|
+
|
9
|
+
var reservedWords = {
|
10
|
+
3: "abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",
|
11
|
+
5: "class enum extends super const export import",
|
12
|
+
6: "enum",
|
13
|
+
strict: "implements interface let package private protected public static yield",
|
14
|
+
strictBind: "eval arguments"
|
15
|
+
}
|
16
|
+
|
17
|
+
// And the keywords
|
18
|
+
|
19
|
+
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
|
+
|
21
|
+
var keywords = {
|
22
|
+
5: ecma5AndLessKeywords,
|
23
|
+
6: ecma5AndLessKeywords + " const class extends export import super"
|
24
|
+
}
|
25
|
+
|
26
|
+
// ## Character categories
|
27
|
+
|
28
|
+
// Big ugly regular expressions that match characters in the
|
29
|
+
// whitespace, identifier, and identifier-start categories. These
|
30
|
+
// are only applied when a character is found to actually have a
|
31
|
+
// code point above 128.
|
32
|
+
// Generated by `bin/generate-identifier-regex.js`.
|
33
|
+
|
34
|
+
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\u0561-\u0587\u05d0-\u05ea\u05f0-\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\u08a0-\u08b4\u08b6-\u08bd\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\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\u0d05-\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\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\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-\u1877\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\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\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-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fd5\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7ae\ua7b0-\ua7b7\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\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-\uab65\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"
|
35
|
+
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\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08d4-\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\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\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c03\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\u0d01-\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0eb9\u0ebb\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\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\u1cf2-\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\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\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua900-\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"
|
36
|
+
|
37
|
+
var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]")
|
38
|
+
var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]")
|
39
|
+
|
40
|
+
nonASCIIidentifierStartChars = nonASCIIidentifierChars = null
|
41
|
+
|
42
|
+
// These are a run-length and offset encoded representation of the
|
43
|
+
// >0xffff code points that are a valid part of identifiers. The
|
44
|
+
// offset starts at 0x10000, and each pair of numbers represents an
|
45
|
+
// offset to the next range, and then a size of the range. They were
|
46
|
+
// generated by bin/generate-identifier-regex.js
|
47
|
+
var astralIdentifierStartCodes = [0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,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,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,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,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,264,8,2,36,18,0,50,29,881,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,65,0,32,6124,20,754,9486,1,3071,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,4149,196,60,67,1213,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,42710,42,4148,12,221,3,5761,10591,541]
|
48
|
+
var astralIdentifierCodes = [509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,7,0,161,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,87,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,838,7,2,7,17,9,57,21,2,13,19882,9,135,4,60,6,26,9,1016,45,17,3,19723,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,2214,6,110,6,6,9,792487,239]
|
49
|
+
|
50
|
+
// This has a complexity linear to the value of the code. The
|
51
|
+
// assumption is that looking up astral identifier characters is
|
52
|
+
// rare.
|
53
|
+
function isInAstralSet(code, set) {
|
54
|
+
var pos = 0x10000
|
55
|
+
for (var i = 0; i < set.length; i += 2) {
|
56
|
+
pos += set[i]
|
57
|
+
if (pos > code) return false
|
58
|
+
pos += set[i + 1]
|
59
|
+
if (pos >= code) return true
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
// Test whether a given character code starts an identifier.
|
64
|
+
|
65
|
+
function isIdentifierStart(code, astral) {
|
66
|
+
if (code < 65) return code === 36
|
67
|
+
if (code < 91) return true
|
68
|
+
if (code < 97) return code === 95
|
69
|
+
if (code < 123) return true
|
70
|
+
if (code <= 0xffff) return code >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(code))
|
71
|
+
if (astral === false) return false
|
72
|
+
return isInAstralSet(code, astralIdentifierStartCodes)
|
73
|
+
}
|
74
|
+
|
75
|
+
// Test whether a given character is part of an identifier.
|
76
|
+
|
77
|
+
function isIdentifierChar(code, astral) {
|
78
|
+
if (code < 48) return code === 36
|
79
|
+
if (code < 58) return true
|
80
|
+
if (code < 65) return false
|
81
|
+
if (code < 91) return true
|
82
|
+
if (code < 97) return code === 95
|
83
|
+
if (code < 123) return true
|
84
|
+
if (code <= 0xffff) return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code))
|
85
|
+
if (astral === false) return false
|
86
|
+
return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes)
|
87
|
+
}
|
88
|
+
|
89
|
+
// ## Token types
|
90
|
+
|
91
|
+
// The assignment of fine-grained, information-carrying type objects
|
92
|
+
// allows the tokenizer to store the information it has about a
|
93
|
+
// token in a way that is very cheap for the parser to look up.
|
94
|
+
|
95
|
+
// All token type variables start with an underscore, to make them
|
96
|
+
// easy to recognize.
|
97
|
+
|
98
|
+
// The `beforeExpr` property is used to disambiguate between regular
|
99
|
+
// expressions and divisions. It is set on all token types that can
|
100
|
+
// be followed by an expression (thus, a slash after them would be a
|
101
|
+
// regular expression).
|
102
|
+
//
|
103
|
+
// The `startsExpr` property is used to check if the token ends a
|
104
|
+
// `yield` expression. It is set on all token types that either can
|
105
|
+
// directly start an expression (like a quotation mark) or can
|
106
|
+
// continue an expression (like the body of a string).
|
107
|
+
//
|
108
|
+
// `isLoop` marks a keyword as starting a loop, which is important
|
109
|
+
// to know when parsing a label, in order to allow or disallow
|
110
|
+
// continue jumps to that label.
|
111
|
+
|
112
|
+
var TokenType = function TokenType(label, conf) {
|
113
|
+
if ( conf === void 0 ) conf = {};
|
114
|
+
|
115
|
+
this.label = label
|
116
|
+
this.keyword = conf.keyword
|
117
|
+
this.beforeExpr = !!conf.beforeExpr
|
118
|
+
this.startsExpr = !!conf.startsExpr
|
119
|
+
this.isLoop = !!conf.isLoop
|
120
|
+
this.isAssign = !!conf.isAssign
|
121
|
+
this.prefix = !!conf.prefix
|
122
|
+
this.postfix = !!conf.postfix
|
123
|
+
this.binop = conf.binop || null
|
124
|
+
this.updateContext = null
|
125
|
+
};
|
126
|
+
|
127
|
+
function binop(name, prec) {
|
128
|
+
return new TokenType(name, {beforeExpr: true, binop: prec})
|
129
|
+
}
|
130
|
+
var beforeExpr = {beforeExpr: true};
|
131
|
+
var startsExpr = {startsExpr: true};
|
132
|
+
// Map keyword names to token types.
|
133
|
+
|
134
|
+
var keywordTypes = {}
|
135
|
+
|
136
|
+
// Succinct definitions of keyword token types
|
137
|
+
function kw(name, options) {
|
138
|
+
if ( options === void 0 ) options = {};
|
139
|
+
|
140
|
+
options.keyword = name
|
141
|
+
return keywordTypes[name] = new TokenType(name, options)
|
142
|
+
}
|
143
|
+
|
144
|
+
var tt = {
|
145
|
+
num: new TokenType("num", startsExpr),
|
146
|
+
regexp: new TokenType("regexp", startsExpr),
|
147
|
+
string: new TokenType("string", startsExpr),
|
148
|
+
name: new TokenType("name", startsExpr),
|
149
|
+
eof: new TokenType("eof"),
|
150
|
+
|
151
|
+
// Punctuation token types.
|
152
|
+
bracketL: new TokenType("[", {beforeExpr: true, startsExpr: true}),
|
153
|
+
bracketR: new TokenType("]"),
|
154
|
+
braceL: new TokenType("{", {beforeExpr: true, startsExpr: true}),
|
155
|
+
braceR: new TokenType("}"),
|
156
|
+
parenL: new TokenType("(", {beforeExpr: true, startsExpr: true}),
|
157
|
+
parenR: new TokenType(")"),
|
158
|
+
comma: new TokenType(",", beforeExpr),
|
159
|
+
semi: new TokenType(";", beforeExpr),
|
160
|
+
colon: new TokenType(":", beforeExpr),
|
161
|
+
dot: new TokenType("."),
|
162
|
+
question: new TokenType("?", beforeExpr),
|
163
|
+
arrow: new TokenType("=>", beforeExpr),
|
164
|
+
template: new TokenType("template"),
|
165
|
+
ellipsis: new TokenType("...", beforeExpr),
|
166
|
+
backQuote: new TokenType("`", startsExpr),
|
167
|
+
dollarBraceL: new TokenType("${", {beforeExpr: true, startsExpr: true}),
|
168
|
+
|
169
|
+
// Operators. These carry several kinds of properties to help the
|
170
|
+
// parser use them properly (the presence of these properties is
|
171
|
+
// what categorizes them as operators).
|
172
|
+
//
|
173
|
+
// `binop`, when present, specifies that this operator is a binary
|
174
|
+
// operator, and will refer to its precedence.
|
175
|
+
//
|
176
|
+
// `prefix` and `postfix` mark the operator as a prefix or postfix
|
177
|
+
// unary operator.
|
178
|
+
//
|
179
|
+
// `isAssign` marks all of `=`, `+=`, `-=` etcetera, which act as
|
180
|
+
// binary operators with a very low precedence, that should result
|
181
|
+
// in AssignmentExpression nodes.
|
182
|
+
|
183
|
+
eq: new TokenType("=", {beforeExpr: true, isAssign: true}),
|
184
|
+
assign: new TokenType("_=", {beforeExpr: true, isAssign: true}),
|
185
|
+
incDec: new TokenType("++/--", {prefix: true, postfix: true, startsExpr: true}),
|
186
|
+
prefix: new TokenType("prefix", {beforeExpr: true, prefix: true, startsExpr: true}),
|
187
|
+
logicalOR: binop("||", 1),
|
188
|
+
logicalAND: binop("&&", 2),
|
189
|
+
bitwiseOR: binop("|", 3),
|
190
|
+
bitwiseXOR: binop("^", 4),
|
191
|
+
bitwiseAND: binop("&", 5),
|
192
|
+
equality: binop("==/!=", 6),
|
193
|
+
relational: binop("</>", 7),
|
194
|
+
bitShift: binop("<</>>", 8),
|
195
|
+
plusMin: new TokenType("+/-", {beforeExpr: true, binop: 9, prefix: true, startsExpr: true}),
|
196
|
+
modulo: binop("%", 10),
|
197
|
+
star: binop("*", 10),
|
198
|
+
slash: binop("/", 10),
|
199
|
+
starstar: new TokenType("**", {beforeExpr: true}),
|
200
|
+
|
201
|
+
// Keyword token types.
|
202
|
+
_break: kw("break"),
|
203
|
+
_case: kw("case", beforeExpr),
|
204
|
+
_catch: kw("catch"),
|
205
|
+
_continue: kw("continue"),
|
206
|
+
_debugger: kw("debugger"),
|
207
|
+
_default: kw("default", beforeExpr),
|
208
|
+
_do: kw("do", {isLoop: true, beforeExpr: true}),
|
209
|
+
_else: kw("else", beforeExpr),
|
210
|
+
_finally: kw("finally"),
|
211
|
+
_for: kw("for", {isLoop: true}),
|
212
|
+
_function: kw("function", startsExpr),
|
213
|
+
_if: kw("if"),
|
214
|
+
_return: kw("return", beforeExpr),
|
215
|
+
_switch: kw("switch"),
|
216
|
+
_throw: kw("throw", beforeExpr),
|
217
|
+
_try: kw("try"),
|
218
|
+
_var: kw("var"),
|
219
|
+
_const: kw("const"),
|
220
|
+
_while: kw("while", {isLoop: true}),
|
221
|
+
_with: kw("with"),
|
222
|
+
_new: kw("new", {beforeExpr: true, startsExpr: true}),
|
223
|
+
_this: kw("this", startsExpr),
|
224
|
+
_super: kw("super", startsExpr),
|
225
|
+
_class: kw("class"),
|
226
|
+
_extends: kw("extends", beforeExpr),
|
227
|
+
_export: kw("export"),
|
228
|
+
_import: kw("import"),
|
229
|
+
_null: kw("null", startsExpr),
|
230
|
+
_true: kw("true", startsExpr),
|
231
|
+
_false: kw("false", startsExpr),
|
232
|
+
_in: kw("in", {beforeExpr: true, binop: 7}),
|
233
|
+
_instanceof: kw("instanceof", {beforeExpr: true, binop: 7}),
|
234
|
+
_typeof: kw("typeof", {beforeExpr: true, prefix: true, startsExpr: true}),
|
235
|
+
_void: kw("void", {beforeExpr: true, prefix: true, startsExpr: true}),
|
236
|
+
_delete: kw("delete", {beforeExpr: true, prefix: true, startsExpr: true})
|
237
|
+
}
|
238
|
+
|
239
|
+
// Matches a whole line break (where CRLF is considered a single
|
240
|
+
// line break). Used to count lines.
|
241
|
+
|
242
|
+
var lineBreak = /\r\n?|\n|\u2028|\u2029/
|
243
|
+
var lineBreakG = new RegExp(lineBreak.source, "g")
|
244
|
+
|
245
|
+
function isNewLine(code) {
|
246
|
+
return code === 10 || code === 13 || code === 0x2028 || code === 0x2029
|
247
|
+
}
|
248
|
+
|
249
|
+
var nonASCIIwhitespace = /[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/
|
250
|
+
|
251
|
+
var skipWhiteSpace = /(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g
|
252
|
+
|
253
|
+
function isArray(obj) {
|
254
|
+
return Object.prototype.toString.call(obj) === "[object Array]"
|
255
|
+
}
|
256
|
+
|
257
|
+
// Checks if an object has a property.
|
258
|
+
|
259
|
+
function has(obj, propName) {
|
260
|
+
return Object.prototype.hasOwnProperty.call(obj, propName)
|
261
|
+
}
|
262
|
+
|
263
|
+
// These are used when `options.locations` is on, for the
|
264
|
+
// `startLoc` and `endLoc` properties.
|
265
|
+
|
266
|
+
var Position = function Position(line, col) {
|
267
|
+
this.line = line
|
268
|
+
this.column = col
|
269
|
+
};
|
270
|
+
|
271
|
+
Position.prototype.offset = function offset (n) {
|
272
|
+
return new Position(this.line, this.column + n)
|
273
|
+
};
|
274
|
+
|
275
|
+
var SourceLocation = function SourceLocation(p, start, end) {
|
276
|
+
this.start = start
|
277
|
+
this.end = end
|
278
|
+
if (p.sourceFile !== null) this.source = p.sourceFile
|
279
|
+
};
|
280
|
+
|
281
|
+
// The `getLineInfo` function is mostly useful when the
|
282
|
+
// `locations` option is off (for performance reasons) and you
|
283
|
+
// want to find the line/column position for a given character
|
284
|
+
// offset. `input` should be the code string that the offset refers
|
285
|
+
// into.
|
286
|
+
|
287
|
+
function getLineInfo(input, offset) {
|
288
|
+
for (var line = 1, cur = 0;;) {
|
289
|
+
lineBreakG.lastIndex = cur
|
290
|
+
var match = lineBreakG.exec(input)
|
291
|
+
if (match && match.index < offset) {
|
292
|
+
++line
|
293
|
+
cur = match.index + match[0].length
|
294
|
+
} else {
|
295
|
+
return new Position(line, offset - cur)
|
296
|
+
}
|
297
|
+
}
|
298
|
+
}
|
299
|
+
|
300
|
+
// A second optional argument can be given to further configure
|
301
|
+
// the parser process. These options are recognized:
|
302
|
+
|
303
|
+
var defaultOptions = {
|
304
|
+
// `ecmaVersion` indicates the ECMAScript version to parse. Must
|
305
|
+
// be either 3, 5, 6 (2015), 7 (2016), or 8 (2017). This influences support
|
306
|
+
// for strict mode, the set of reserved words, and support for
|
307
|
+
// new syntax features. The default is 7.
|
308
|
+
ecmaVersion: 7,
|
309
|
+
// `sourceType` indicates the mode the code should be parsed in.
|
310
|
+
// Can be either `"script"` or `"module"`. This influences global
|
311
|
+
// strict mode and parsing of `import` and `export` declarations.
|
312
|
+
sourceType: "script",
|
313
|
+
// `onInsertedSemicolon` can be a callback that will be called
|
314
|
+
// when a semicolon is automatically inserted. It will be passed
|
315
|
+
// th position of the comma as an offset, and if `locations` is
|
316
|
+
// enabled, it is given the location as a `{line, column}` object
|
317
|
+
// as second argument.
|
318
|
+
onInsertedSemicolon: null,
|
319
|
+
// `onTrailingComma` is similar to `onInsertedSemicolon`, but for
|
320
|
+
// trailing commas.
|
321
|
+
onTrailingComma: null,
|
322
|
+
// By default, reserved words are only enforced if ecmaVersion >= 5.
|
323
|
+
// Set `allowReserved` to a boolean value to explicitly turn this on
|
324
|
+
// an off. When this option has the value "never", reserved words
|
325
|
+
// and keywords can also not be used as property names.
|
326
|
+
allowReserved: null,
|
327
|
+
// When enabled, a return at the top level is not considered an
|
328
|
+
// error.
|
329
|
+
allowReturnOutsideFunction: false,
|
330
|
+
// When enabled, import/export statements are not constrained to
|
331
|
+
// appearing at the top of the program.
|
332
|
+
allowImportExportEverywhere: false,
|
333
|
+
// When enabled, hashbang directive in the beginning of file
|
334
|
+
// is allowed and treated as a line comment.
|
335
|
+
allowHashBang: false,
|
336
|
+
// When `locations` is on, `loc` properties holding objects with
|
337
|
+
// `start` and `end` properties in `{line, column}` form (with
|
338
|
+
// line being 1-based and column 0-based) will be attached to the
|
339
|
+
// nodes.
|
340
|
+
locations: false,
|
341
|
+
// A function can be passed as `onToken` option, which will
|
342
|
+
// cause Acorn to call that function with object in the same
|
343
|
+
// format as tokens returned from `tokenizer().getToken()`. Note
|
344
|
+
// that you are not allowed to call the parser from the
|
345
|
+
// callback—that will corrupt its internal state.
|
346
|
+
onToken: null,
|
347
|
+
// A function can be passed as `onComment` option, which will
|
348
|
+
// cause Acorn to call that function with `(block, text, start,
|
349
|
+
// end)` parameters whenever a comment is skipped. `block` is a
|
350
|
+
// boolean indicating whether this is a block (`/* */`) comment,
|
351
|
+
// `text` is the content of the comment, and `start` and `end` are
|
352
|
+
// character offsets that denote the start and end of the comment.
|
353
|
+
// When the `locations` option is on, two more parameters are
|
354
|
+
// passed, the full `{line, column}` locations of the start and
|
355
|
+
// end of the comments. Note that you are not allowed to call the
|
356
|
+
// parser from the callback—that will corrupt its internal state.
|
357
|
+
onComment: null,
|
358
|
+
// Nodes have their start and end characters offsets recorded in
|
359
|
+
// `start` and `end` properties (directly on the node, rather than
|
360
|
+
// the `loc` object, which holds line/column data. To also add a
|
361
|
+
// [semi-standardized][range] `range` property holding a `[start,
|
362
|
+
// end]` array with the same numbers, set the `ranges` option to
|
363
|
+
// `true`.
|
364
|
+
//
|
365
|
+
// [range]: https://bugzilla.mozilla.org/show_bug.cgi?id=745678
|
366
|
+
ranges: false,
|
367
|
+
// It is possible to parse multiple files into a single AST by
|
368
|
+
// passing the tree produced by parsing the first file as
|
369
|
+
// `program` option in subsequent parses. This will add the
|
370
|
+
// toplevel forms of the parsed file to the `Program` (top) node
|
371
|
+
// of an existing parse tree.
|
372
|
+
program: null,
|
373
|
+
// When `locations` is on, you can pass this to record the source
|
374
|
+
// file in every node's `loc` object.
|
375
|
+
sourceFile: null,
|
376
|
+
// This value, if given, is stored in every node, whether
|
377
|
+
// `locations` is on or off.
|
378
|
+
directSourceFile: null,
|
379
|
+
// When enabled, parenthesized expressions are represented by
|
380
|
+
// (non-standard) ParenthesizedExpression nodes
|
381
|
+
preserveParens: false,
|
382
|
+
plugins: {}
|
383
|
+
}
|
384
|
+
|
385
|
+
// Interpret and default an options object
|
386
|
+
|
387
|
+
function getOptions(opts) {
|
388
|
+
var options = {}
|
389
|
+
|
390
|
+
for (var opt in defaultOptions)
|
391
|
+
options[opt] = opts && has(opts, opt) ? opts[opt] : defaultOptions[opt]
|
392
|
+
|
393
|
+
if (options.ecmaVersion >= 2015)
|
394
|
+
options.ecmaVersion -= 2009
|
395
|
+
|
396
|
+
if (options.allowReserved == null)
|
397
|
+
options.allowReserved = options.ecmaVersion < 5
|
398
|
+
|
399
|
+
if (isArray(options.onToken)) {
|
400
|
+
var tokens = options.onToken
|
401
|
+
options.onToken = function (token) { return tokens.push(token); }
|
402
|
+
}
|
403
|
+
if (isArray(options.onComment))
|
404
|
+
options.onComment = pushComment(options, options.onComment)
|
405
|
+
|
406
|
+
return options
|
407
|
+
}
|
408
|
+
|
409
|
+
function pushComment(options, array) {
|
410
|
+
return function (block, text, start, end, startLoc, endLoc) {
|
411
|
+
var comment = {
|
412
|
+
type: block ? 'Block' : 'Line',
|
413
|
+
value: text,
|
414
|
+
start: start,
|
415
|
+
end: end
|
416
|
+
}
|
417
|
+
if (options.locations)
|
418
|
+
comment.loc = new SourceLocation(this, startLoc, endLoc)
|
419
|
+
if (options.ranges)
|
420
|
+
comment.range = [start, end]
|
421
|
+
array.push(comment)
|
422
|
+
}
|
423
|
+
}
|
424
|
+
|
425
|
+
// Registered plugins
|
426
|
+
var plugins = {}
|
427
|
+
|
428
|
+
function keywordRegexp(words) {
|
429
|
+
return new RegExp("^(" + words.replace(/ /g, "|") + ")$")
|
430
|
+
}
|
431
|
+
|
432
|
+
var Parser = function Parser(options, input, startPos) {
|
433
|
+
this.options = options = getOptions(options)
|
434
|
+
this.sourceFile = options.sourceFile
|
435
|
+
this.keywords = keywordRegexp(keywords[options.ecmaVersion >= 6 ? 6 : 5])
|
436
|
+
var reserved = ""
|
437
|
+
if (!options.allowReserved) {
|
438
|
+
for (var v = options.ecmaVersion;; v--)
|
439
|
+
if (reserved = reservedWords[v]) break
|
440
|
+
if (options.sourceType == "module") reserved += " await"
|
441
|
+
}
|
442
|
+
this.reservedWords = keywordRegexp(reserved)
|
443
|
+
var reservedStrict = (reserved ? reserved + " " : "") + reservedWords.strict
|
444
|
+
this.reservedWordsStrict = keywordRegexp(reservedStrict)
|
445
|
+
this.reservedWordsStrictBind = keywordRegexp(reservedStrict + " " + reservedWords.strictBind)
|
446
|
+
this.input = String(input)
|
447
|
+
|
448
|
+
// Used to signal to callers of `readWord1` whether the word
|
449
|
+
// contained any escape sequences. This is needed because words with
|
450
|
+
// escape sequences must not be interpreted as keywords.
|
451
|
+
this.containsEsc = false
|
452
|
+
|
453
|
+
// Load plugins
|
454
|
+
this.loadPlugins(options.plugins)
|
455
|
+
|
456
|
+
// Set up token state
|
457
|
+
|
458
|
+
// The current position of the tokenizer in the input.
|
459
|
+
if (startPos) {
|
460
|
+
this.pos = startPos
|
461
|
+
this.lineStart = this.input.lastIndexOf("\n", startPos - 1) + 1
|
462
|
+
this.curLine = this.input.slice(0, this.lineStart).split(lineBreak).length
|
463
|
+
} else {
|
464
|
+
this.pos = this.lineStart = 0
|
465
|
+
this.curLine = 1
|
466
|
+
}
|
467
|
+
|
468
|
+
// Properties of the current token:
|
469
|
+
// Its type
|
470
|
+
this.type = tt.eof
|
471
|
+
// For tokens that include more information than their type, the value
|
472
|
+
this.value = null
|
473
|
+
// Its start and end offset
|
474
|
+
this.start = this.end = this.pos
|
475
|
+
// And, if locations are used, the {line, column} object
|
476
|
+
// corresponding to those offsets
|
477
|
+
this.startLoc = this.endLoc = this.curPosition()
|
478
|
+
|
479
|
+
// Position information for the previous token
|
480
|
+
this.lastTokEndLoc = this.lastTokStartLoc = null
|
481
|
+
this.lastTokStart = this.lastTokEnd = this.pos
|
482
|
+
|
483
|
+
// The context stack is used to superficially track syntactic
|
484
|
+
// context to predict whether a regular expression is allowed in a
|
485
|
+
// given position.
|
486
|
+
this.context = this.initialContext()
|
487
|
+
this.exprAllowed = true
|
488
|
+
|
489
|
+
// Figure out if it's a module code.
|
490
|
+
this.strict = this.inModule = options.sourceType === "module"
|
491
|
+
|
492
|
+
// Used to signify the start of a potential arrow function
|
493
|
+
this.potentialArrowAt = -1
|
494
|
+
|
495
|
+
// Flags to track whether we are in a function, a generator, an async function.
|
496
|
+
this.inFunction = this.inGenerator = this.inAsync = false
|
497
|
+
// Positions to delayed-check that yield/await does not exist in default parameters.
|
498
|
+
this.yieldPos = this.awaitPos = 0
|
499
|
+
// Labels in scope.
|
500
|
+
this.labels = []
|
501
|
+
|
502
|
+
// If enabled, skip leading hashbang line.
|
503
|
+
if (this.pos === 0 && options.allowHashBang && this.input.slice(0, 2) === '#!')
|
504
|
+
this.skipLineComment(2)
|
505
|
+
};
|
506
|
+
|
507
|
+
// DEPRECATED Kept for backwards compatibility until 3.0 in case a plugin uses them
|
508
|
+
Parser.prototype.isKeyword = function isKeyword (word) { return this.keywords.test(word) };
|
509
|
+
Parser.prototype.isReservedWord = function isReservedWord (word) { return this.reservedWords.test(word) };
|
510
|
+
|
511
|
+
Parser.prototype.extend = function extend (name, f) {
|
512
|
+
this[name] = f(this[name])
|
513
|
+
};
|
514
|
+
|
515
|
+
Parser.prototype.loadPlugins = function loadPlugins (pluginConfigs) {
|
516
|
+
var this$1 = this;
|
517
|
+
|
518
|
+
for (var name in pluginConfigs) {
|
519
|
+
var plugin = plugins[name]
|
520
|
+
if (!plugin) throw new Error("Plugin '" + name + "' not found")
|
521
|
+
plugin(this$1, pluginConfigs[name])
|
522
|
+
}
|
523
|
+
};
|
524
|
+
|
525
|
+
Parser.prototype.parse = function parse () {
|
526
|
+
var node = this.options.program || this.startNode()
|
527
|
+
this.nextToken()
|
528
|
+
return this.parseTopLevel(node)
|
529
|
+
};
|
530
|
+
|
531
|
+
var pp = Parser.prototype
|
532
|
+
|
533
|
+
// ## Parser utilities
|
534
|
+
|
535
|
+
// Test whether a statement node is the string literal `"use strict"`.
|
536
|
+
|
537
|
+
pp.isUseStrict = function(stmt) {
|
538
|
+
return this.options.ecmaVersion >= 5 && stmt.type === "ExpressionStatement" &&
|
539
|
+
stmt.expression.type === "Literal" &&
|
540
|
+
stmt.expression.raw.slice(1, -1) === "use strict"
|
541
|
+
}
|
542
|
+
|
543
|
+
// Predicate that tests whether the next token is of the given
|
544
|
+
// type, and if yes, consumes it as a side effect.
|
545
|
+
|
546
|
+
pp.eat = function(type) {
|
547
|
+
if (this.type === type) {
|
548
|
+
this.next()
|
549
|
+
return true
|
550
|
+
} else {
|
551
|
+
return false
|
552
|
+
}
|
553
|
+
}
|
554
|
+
|
555
|
+
// Tests whether parsed token is a contextual keyword.
|
556
|
+
|
557
|
+
pp.isContextual = function(name) {
|
558
|
+
return this.type === tt.name && this.value === name
|
559
|
+
}
|
560
|
+
|
561
|
+
// Consumes contextual keyword if possible.
|
562
|
+
|
563
|
+
pp.eatContextual = function(name) {
|
564
|
+
return this.value === name && this.eat(tt.name)
|
565
|
+
}
|
566
|
+
|
567
|
+
// Asserts that following token is given contextual keyword.
|
568
|
+
|
569
|
+
pp.expectContextual = function(name) {
|
570
|
+
if (!this.eatContextual(name)) this.unexpected()
|
571
|
+
}
|
572
|
+
|
573
|
+
// Test whether a semicolon can be inserted at the current position.
|
574
|
+
|
575
|
+
pp.canInsertSemicolon = function() {
|
576
|
+
return this.type === tt.eof ||
|
577
|
+
this.type === tt.braceR ||
|
578
|
+
lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
579
|
+
}
|
580
|
+
|
581
|
+
pp.insertSemicolon = function() {
|
582
|
+
if (this.canInsertSemicolon()) {
|
583
|
+
if (this.options.onInsertedSemicolon)
|
584
|
+
this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc)
|
585
|
+
return true
|
586
|
+
}
|
587
|
+
}
|
588
|
+
|
589
|
+
// Consume a semicolon, or, failing that, see if we are allowed to
|
590
|
+
// pretend that there is a semicolon at this position.
|
591
|
+
|
592
|
+
pp.semicolon = function() {
|
593
|
+
if (!this.eat(tt.semi) && !this.insertSemicolon()) this.unexpected()
|
594
|
+
}
|
595
|
+
|
596
|
+
pp.afterTrailingComma = function(tokType, notNext) {
|
597
|
+
if (this.type == tokType) {
|
598
|
+
if (this.options.onTrailingComma)
|
599
|
+
this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc)
|
600
|
+
if (!notNext)
|
601
|
+
this.next()
|
602
|
+
return true
|
603
|
+
}
|
604
|
+
}
|
605
|
+
|
606
|
+
// Expect a token of a given type. If found, consume it, otherwise,
|
607
|
+
// raise an unexpected token error.
|
608
|
+
|
609
|
+
pp.expect = function(type) {
|
610
|
+
this.eat(type) || this.unexpected()
|
611
|
+
}
|
612
|
+
|
613
|
+
// Raise an unexpected token error.
|
614
|
+
|
615
|
+
pp.unexpected = function(pos) {
|
616
|
+
this.raise(pos != null ? pos : this.start, "Unexpected token")
|
617
|
+
}
|
618
|
+
|
619
|
+
var DestructuringErrors = function DestructuringErrors() {
|
620
|
+
this.shorthandAssign = 0
|
621
|
+
this.trailingComma = 0
|
622
|
+
};
|
623
|
+
|
624
|
+
pp.checkPatternErrors = function(refDestructuringErrors, andThrow) {
|
625
|
+
var trailing = refDestructuringErrors && refDestructuringErrors.trailingComma
|
626
|
+
if (!andThrow) return !!trailing
|
627
|
+
if (trailing) this.raise(trailing, "Comma is not permitted after the rest element")
|
628
|
+
}
|
629
|
+
|
630
|
+
pp.checkExpressionErrors = function(refDestructuringErrors, andThrow) {
|
631
|
+
var pos = refDestructuringErrors && refDestructuringErrors.shorthandAssign
|
632
|
+
if (!andThrow) return !!pos
|
633
|
+
if (pos) this.raise(pos, "Shorthand property assignments are valid only in destructuring patterns")
|
634
|
+
}
|
635
|
+
|
636
|
+
pp.checkYieldAwaitInDefaultParams = function() {
|
637
|
+
if (this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos))
|
638
|
+
this.raise(this.yieldPos, "Yield expression cannot be a default value")
|
639
|
+
if (this.awaitPos)
|
640
|
+
this.raise(this.awaitPos, "Await expression cannot be a default value")
|
641
|
+
}
|
642
|
+
|
643
|
+
var pp$1 = Parser.prototype
|
644
|
+
|
645
|
+
// ### Statement parsing
|
646
|
+
|
647
|
+
// Parse a program. Initializes the parser, reads any number of
|
648
|
+
// statements, and wraps them in a Program node. Optionally takes a
|
649
|
+
// `program` argument. If present, the statements will be appended
|
650
|
+
// to its body instead of creating a new node.
|
651
|
+
|
652
|
+
pp$1.parseTopLevel = function(node) {
|
653
|
+
var this$1 = this;
|
654
|
+
|
655
|
+
var first = true, exports = {}
|
656
|
+
if (!node.body) node.body = []
|
657
|
+
while (this.type !== tt.eof) {
|
658
|
+
var stmt = this$1.parseStatement(true, true, exports)
|
659
|
+
node.body.push(stmt)
|
660
|
+
if (first) {
|
661
|
+
if (this$1.isUseStrict(stmt)) this$1.setStrict(true)
|
662
|
+
first = false
|
663
|
+
}
|
664
|
+
}
|
665
|
+
this.next()
|
666
|
+
if (this.options.ecmaVersion >= 6) {
|
667
|
+
node.sourceType = this.options.sourceType
|
668
|
+
}
|
669
|
+
return this.finishNode(node, "Program")
|
670
|
+
}
|
671
|
+
|
672
|
+
var loopLabel = {kind: "loop"};
|
673
|
+
var switchLabel = {kind: "switch"};
|
674
|
+
pp$1.isLet = function() {
|
675
|
+
if (this.type !== tt.name || this.options.ecmaVersion < 6 || this.value != "let") return false
|
676
|
+
skipWhiteSpace.lastIndex = this.pos
|
677
|
+
var skip = skipWhiteSpace.exec(this.input)
|
678
|
+
var next = this.pos + skip[0].length, nextCh = this.input.charCodeAt(next)
|
679
|
+
if (nextCh === 91 || nextCh == 123) return true // '{' and '['
|
680
|
+
if (isIdentifierStart(nextCh, true)) {
|
681
|
+
for (var pos = next + 1; isIdentifierChar(this.input.charCodeAt(pos), true); ++pos) {}
|
682
|
+
var ident = this.input.slice(next, pos)
|
683
|
+
if (!this.isKeyword(ident)) return true
|
684
|
+
}
|
685
|
+
return false
|
686
|
+
}
|
687
|
+
|
688
|
+
// check 'async [no LineTerminator here] function'
|
689
|
+
// - 'async /*foo*/ function' is OK.
|
690
|
+
// - 'async /*\n*/ function' is invalid.
|
691
|
+
pp$1.isAsyncFunction = function() {
|
692
|
+
if (this.type !== tt.name || this.options.ecmaVersion < 8 || this.value != "async")
|
693
|
+
return false
|
694
|
+
|
695
|
+
skipWhiteSpace.lastIndex = this.pos
|
696
|
+
var skip = skipWhiteSpace.exec(this.input)
|
697
|
+
var next = this.pos + skip[0].length
|
698
|
+
return !lineBreak.test(this.input.slice(this.pos, next)) &&
|
699
|
+
this.input.slice(next, next + 8) === "function" &&
|
700
|
+
(next + 8 == this.input.length || !isIdentifierChar(this.input.charAt(next + 8)))
|
701
|
+
}
|
702
|
+
|
703
|
+
// Parse a single statement.
|
704
|
+
//
|
705
|
+
// If expecting a statement and finding a slash operator, parse a
|
706
|
+
// regular expression literal. This is to handle cases like
|
707
|
+
// `if (foo) /blah/.exec(foo)`, where looking at the previous token
|
708
|
+
// does not help.
|
709
|
+
|
710
|
+
pp$1.parseStatement = function(declaration, topLevel, exports) {
|
711
|
+
var starttype = this.type, node = this.startNode(), kind
|
712
|
+
|
713
|
+
if (this.isLet()) {
|
714
|
+
starttype = tt._var
|
715
|
+
kind = "let"
|
716
|
+
}
|
717
|
+
|
718
|
+
// Most types of statements are recognized by the keyword they
|
719
|
+
// start with. Many are trivial to parse, some require a bit of
|
720
|
+
// complexity.
|
721
|
+
|
722
|
+
switch (starttype) {
|
723
|
+
case tt._break: case tt._continue: return this.parseBreakContinueStatement(node, starttype.keyword)
|
724
|
+
case tt._debugger: return this.parseDebuggerStatement(node)
|
725
|
+
case tt._do: return this.parseDoStatement(node)
|
726
|
+
case tt._for: return this.parseForStatement(node)
|
727
|
+
case tt._function:
|
728
|
+
if (!declaration && this.options.ecmaVersion >= 6) this.unexpected()
|
729
|
+
return this.parseFunctionStatement(node, false)
|
730
|
+
case tt._class:
|
731
|
+
if (!declaration) this.unexpected()
|
732
|
+
return this.parseClass(node, true)
|
733
|
+
case tt._if: return this.parseIfStatement(node)
|
734
|
+
case tt._return: return this.parseReturnStatement(node)
|
735
|
+
case tt._switch: return this.parseSwitchStatement(node)
|
736
|
+
case tt._throw: return this.parseThrowStatement(node)
|
737
|
+
case tt._try: return this.parseTryStatement(node)
|
738
|
+
case tt._const: case tt._var:
|
739
|
+
kind = kind || this.value
|
740
|
+
if (!declaration && kind != "var") this.unexpected()
|
741
|
+
return this.parseVarStatement(node, kind)
|
742
|
+
case tt._while: return this.parseWhileStatement(node)
|
743
|
+
case tt._with: return this.parseWithStatement(node)
|
744
|
+
case tt.braceL: return this.parseBlock()
|
745
|
+
case tt.semi: return this.parseEmptyStatement(node)
|
746
|
+
case tt._export:
|
747
|
+
case tt._import:
|
748
|
+
if (!this.options.allowImportExportEverywhere) {
|
749
|
+
if (!topLevel)
|
750
|
+
this.raise(this.start, "'import' and 'export' may only appear at the top level")
|
751
|
+
if (!this.inModule)
|
752
|
+
this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'")
|
753
|
+
}
|
754
|
+
return starttype === tt._import ? this.parseImport(node) : this.parseExport(node, exports)
|
755
|
+
|
756
|
+
// If the statement does not start with a statement keyword or a
|
757
|
+
// brace, it's an ExpressionStatement or LabeledStatement. We
|
758
|
+
// simply start parsing an expression, and afterwards, if the
|
759
|
+
// next token is a colon and the expression was a simple
|
760
|
+
// Identifier node, we switch to interpreting it as a label.
|
761
|
+
default:
|
762
|
+
if (this.isAsyncFunction() && declaration) {
|
763
|
+
this.next()
|
764
|
+
return this.parseFunctionStatement(node, true)
|
765
|
+
}
|
766
|
+
|
767
|
+
var maybeName = this.value, expr = this.parseExpression()
|
768
|
+
if (starttype === tt.name && expr.type === "Identifier" && this.eat(tt.colon))
|
769
|
+
return this.parseLabeledStatement(node, maybeName, expr)
|
770
|
+
else return this.parseExpressionStatement(node, expr)
|
771
|
+
}
|
772
|
+
}
|
773
|
+
|
774
|
+
pp$1.parseBreakContinueStatement = function(node, keyword) {
|
775
|
+
var this$1 = this;
|
776
|
+
|
777
|
+
var isBreak = keyword == "break"
|
778
|
+
this.next()
|
779
|
+
if (this.eat(tt.semi) || this.insertSemicolon()) node.label = null
|
780
|
+
else if (this.type !== tt.name) this.unexpected()
|
781
|
+
else {
|
782
|
+
node.label = this.parseIdent()
|
783
|
+
this.semicolon()
|
784
|
+
}
|
785
|
+
|
786
|
+
// Verify that there is an actual destination to break or
|
787
|
+
// continue to.
|
788
|
+
for (var i = 0; i < this.labels.length; ++i) {
|
789
|
+
var lab = this$1.labels[i]
|
790
|
+
if (node.label == null || lab.name === node.label.name) {
|
791
|
+
if (lab.kind != null && (isBreak || lab.kind === "loop")) break
|
792
|
+
if (node.label && isBreak) break
|
793
|
+
}
|
794
|
+
}
|
795
|
+
if (i === this.labels.length) this.raise(node.start, "Unsyntactic " + keyword)
|
796
|
+
return this.finishNode(node, isBreak ? "BreakStatement" : "ContinueStatement")
|
797
|
+
}
|
798
|
+
|
799
|
+
pp$1.parseDebuggerStatement = function(node) {
|
800
|
+
this.next()
|
801
|
+
this.semicolon()
|
802
|
+
return this.finishNode(node, "DebuggerStatement")
|
803
|
+
}
|
804
|
+
|
805
|
+
pp$1.parseDoStatement = function(node) {
|
806
|
+
this.next()
|
807
|
+
this.labels.push(loopLabel)
|
808
|
+
node.body = this.parseStatement(false)
|
809
|
+
this.labels.pop()
|
810
|
+
this.expect(tt._while)
|
811
|
+
node.test = this.parseParenExpression()
|
812
|
+
if (this.options.ecmaVersion >= 6)
|
813
|
+
this.eat(tt.semi)
|
814
|
+
else
|
815
|
+
this.semicolon()
|
816
|
+
return this.finishNode(node, "DoWhileStatement")
|
817
|
+
}
|
818
|
+
|
819
|
+
// Disambiguating between a `for` and a `for`/`in` or `for`/`of`
|
820
|
+
// loop is non-trivial. Basically, we have to parse the init `var`
|
821
|
+
// statement or expression, disallowing the `in` operator (see
|
822
|
+
// the second parameter to `parseExpression`), and then check
|
823
|
+
// whether the next token is `in` or `of`. When there is no init
|
824
|
+
// part (semicolon immediately after the opening parenthesis), it
|
825
|
+
// is a regular `for` loop.
|
826
|
+
|
827
|
+
pp$1.parseForStatement = function(node) {
|
828
|
+
this.next()
|
829
|
+
this.labels.push(loopLabel)
|
830
|
+
this.expect(tt.parenL)
|
831
|
+
if (this.type === tt.semi) return this.parseFor(node, null)
|
832
|
+
var isLet = this.isLet()
|
833
|
+
if (this.type === tt._var || this.type === tt._const || isLet) {
|
834
|
+
var init$1 = this.startNode(), kind = isLet ? "let" : this.value
|
835
|
+
this.next()
|
836
|
+
this.parseVar(init$1, true, kind)
|
837
|
+
this.finishNode(init$1, "VariableDeclaration")
|
838
|
+
if ((this.type === tt._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) && init$1.declarations.length === 1 &&
|
839
|
+
!(kind !== "var" && init$1.declarations[0].init))
|
840
|
+
return this.parseForIn(node, init$1)
|
841
|
+
return this.parseFor(node, init$1)
|
842
|
+
}
|
843
|
+
var refDestructuringErrors = new DestructuringErrors
|
844
|
+
var init = this.parseExpression(true, refDestructuringErrors)
|
845
|
+
if (this.type === tt._in || (this.options.ecmaVersion >= 6 && this.isContextual("of"))) {
|
846
|
+
this.checkPatternErrors(refDestructuringErrors, true)
|
847
|
+
this.toAssignable(init)
|
848
|
+
this.checkLVal(init)
|
849
|
+
return this.parseForIn(node, init)
|
850
|
+
} else {
|
851
|
+
this.checkExpressionErrors(refDestructuringErrors, true)
|
852
|
+
}
|
853
|
+
return this.parseFor(node, init)
|
854
|
+
}
|
855
|
+
|
856
|
+
pp$1.parseFunctionStatement = function(node, isAsync) {
|
857
|
+
this.next()
|
858
|
+
return this.parseFunction(node, true, false, isAsync)
|
859
|
+
}
|
860
|
+
|
861
|
+
pp$1.isFunction = function() {
|
862
|
+
return this.type === tt._function || this.isAsyncFunction()
|
863
|
+
}
|
864
|
+
|
865
|
+
pp$1.parseIfStatement = function(node) {
|
866
|
+
this.next()
|
867
|
+
node.test = this.parseParenExpression()
|
868
|
+
// allow function declarations in branches, but only in non-strict mode
|
869
|
+
node.consequent = this.parseStatement(!this.strict && this.isFunction())
|
870
|
+
node.alternate = this.eat(tt._else) ? this.parseStatement(!this.strict && this.isFunction()) : null
|
871
|
+
return this.finishNode(node, "IfStatement")
|
872
|
+
}
|
873
|
+
|
874
|
+
pp$1.parseReturnStatement = function(node) {
|
875
|
+
if (!this.inFunction && !this.options.allowReturnOutsideFunction)
|
876
|
+
this.raise(this.start, "'return' outside of function")
|
877
|
+
this.next()
|
878
|
+
|
879
|
+
// In `return` (and `break`/`continue`), the keywords with
|
880
|
+
// optional arguments, we eagerly look for a semicolon or the
|
881
|
+
// possibility to insert one.
|
882
|
+
|
883
|
+
if (this.eat(tt.semi) || this.insertSemicolon()) node.argument = null
|
884
|
+
else { node.argument = this.parseExpression(); this.semicolon() }
|
885
|
+
return this.finishNode(node, "ReturnStatement")
|
886
|
+
}
|
887
|
+
|
888
|
+
pp$1.parseSwitchStatement = function(node) {
|
889
|
+
var this$1 = this;
|
890
|
+
|
891
|
+
this.next()
|
892
|
+
node.discriminant = this.parseParenExpression()
|
893
|
+
node.cases = []
|
894
|
+
this.expect(tt.braceL)
|
895
|
+
this.labels.push(switchLabel)
|
896
|
+
|
897
|
+
// Statements under must be grouped (by label) in SwitchCase
|
898
|
+
// nodes. `cur` is used to keep the node that we are currently
|
899
|
+
// adding statements to.
|
900
|
+
|
901
|
+
for (var cur, sawDefault = false; this.type != tt.braceR;) {
|
902
|
+
if (this$1.type === tt._case || this$1.type === tt._default) {
|
903
|
+
var isCase = this$1.type === tt._case
|
904
|
+
if (cur) this$1.finishNode(cur, "SwitchCase")
|
905
|
+
node.cases.push(cur = this$1.startNode())
|
906
|
+
cur.consequent = []
|
907
|
+
this$1.next()
|
908
|
+
if (isCase) {
|
909
|
+
cur.test = this$1.parseExpression()
|
910
|
+
} else {
|
911
|
+
if (sawDefault) this$1.raiseRecoverable(this$1.lastTokStart, "Multiple default clauses")
|
912
|
+
sawDefault = true
|
913
|
+
cur.test = null
|
914
|
+
}
|
915
|
+
this$1.expect(tt.colon)
|
916
|
+
} else {
|
917
|
+
if (!cur) this$1.unexpected()
|
918
|
+
cur.consequent.push(this$1.parseStatement(true))
|
919
|
+
}
|
920
|
+
}
|
921
|
+
if (cur) this.finishNode(cur, "SwitchCase")
|
922
|
+
this.next() // Closing brace
|
923
|
+
this.labels.pop()
|
924
|
+
return this.finishNode(node, "SwitchStatement")
|
925
|
+
}
|
926
|
+
|
927
|
+
pp$1.parseThrowStatement = function(node) {
|
928
|
+
this.next()
|
929
|
+
if (lineBreak.test(this.input.slice(this.lastTokEnd, this.start)))
|
930
|
+
this.raise(this.lastTokEnd, "Illegal newline after throw")
|
931
|
+
node.argument = this.parseExpression()
|
932
|
+
this.semicolon()
|
933
|
+
return this.finishNode(node, "ThrowStatement")
|
934
|
+
}
|
935
|
+
|
936
|
+
// Reused empty array added for node fields that are always empty.
|
937
|
+
|
938
|
+
var empty = []
|
939
|
+
|
940
|
+
pp$1.parseTryStatement = function(node) {
|
941
|
+
this.next()
|
942
|
+
node.block = this.parseBlock()
|
943
|
+
node.handler = null
|
944
|
+
if (this.type === tt._catch) {
|
945
|
+
var clause = this.startNode()
|
946
|
+
this.next()
|
947
|
+
this.expect(tt.parenL)
|
948
|
+
clause.param = this.parseBindingAtom()
|
949
|
+
this.checkLVal(clause.param, true)
|
950
|
+
this.expect(tt.parenR)
|
951
|
+
clause.body = this.parseBlock()
|
952
|
+
node.handler = this.finishNode(clause, "CatchClause")
|
953
|
+
}
|
954
|
+
node.finalizer = this.eat(tt._finally) ? this.parseBlock() : null
|
955
|
+
if (!node.handler && !node.finalizer)
|
956
|
+
this.raise(node.start, "Missing catch or finally clause")
|
957
|
+
return this.finishNode(node, "TryStatement")
|
958
|
+
}
|
959
|
+
|
960
|
+
pp$1.parseVarStatement = function(node, kind) {
|
961
|
+
this.next()
|
962
|
+
this.parseVar(node, false, kind)
|
963
|
+
this.semicolon()
|
964
|
+
return this.finishNode(node, "VariableDeclaration")
|
965
|
+
}
|
966
|
+
|
967
|
+
pp$1.parseWhileStatement = function(node) {
|
968
|
+
this.next()
|
969
|
+
node.test = this.parseParenExpression()
|
970
|
+
this.labels.push(loopLabel)
|
971
|
+
node.body = this.parseStatement(false)
|
972
|
+
this.labels.pop()
|
973
|
+
return this.finishNode(node, "WhileStatement")
|
974
|
+
}
|
975
|
+
|
976
|
+
pp$1.parseWithStatement = function(node) {
|
977
|
+
if (this.strict) this.raise(this.start, "'with' in strict mode")
|
978
|
+
this.next()
|
979
|
+
node.object = this.parseParenExpression()
|
980
|
+
node.body = this.parseStatement(false)
|
981
|
+
return this.finishNode(node, "WithStatement")
|
982
|
+
}
|
983
|
+
|
984
|
+
pp$1.parseEmptyStatement = function(node) {
|
985
|
+
this.next()
|
986
|
+
return this.finishNode(node, "EmptyStatement")
|
987
|
+
}
|
988
|
+
|
989
|
+
pp$1.parseLabeledStatement = function(node, maybeName, expr) {
|
990
|
+
var this$1 = this;
|
991
|
+
|
992
|
+
for (var i = 0; i < this.labels.length; ++i)
|
993
|
+
if (this$1.labels[i].name === maybeName) this$1.raise(expr.start, "Label '" + maybeName + "' is already declared")
|
994
|
+
var kind = this.type.isLoop ? "loop" : this.type === tt._switch ? "switch" : null
|
995
|
+
for (var i$1 = this.labels.length - 1; i$1 >= 0; i$1--) {
|
996
|
+
var label = this$1.labels[i$1]
|
997
|
+
if (label.statementStart == node.start) {
|
998
|
+
label.statementStart = this$1.start
|
999
|
+
label.kind = kind
|
1000
|
+
} else break
|
1001
|
+
}
|
1002
|
+
this.labels.push({name: maybeName, kind: kind, statementStart: this.start})
|
1003
|
+
node.body = this.parseStatement(true)
|
1004
|
+
this.labels.pop()
|
1005
|
+
node.label = expr
|
1006
|
+
return this.finishNode(node, "LabeledStatement")
|
1007
|
+
}
|
1008
|
+
|
1009
|
+
pp$1.parseExpressionStatement = function(node, expr) {
|
1010
|
+
node.expression = expr
|
1011
|
+
this.semicolon()
|
1012
|
+
return this.finishNode(node, "ExpressionStatement")
|
1013
|
+
}
|
1014
|
+
|
1015
|
+
// Parse a semicolon-enclosed block of statements, handling `"use
|
1016
|
+
// strict"` declarations when `allowStrict` is true (used for
|
1017
|
+
// function bodies).
|
1018
|
+
|
1019
|
+
pp$1.parseBlock = function(allowStrict) {
|
1020
|
+
var this$1 = this;
|
1021
|
+
|
1022
|
+
var node = this.startNode(), first = true, oldStrict
|
1023
|
+
node.body = []
|
1024
|
+
this.expect(tt.braceL)
|
1025
|
+
while (!this.eat(tt.braceR)) {
|
1026
|
+
var stmt = this$1.parseStatement(true)
|
1027
|
+
node.body.push(stmt)
|
1028
|
+
if (first && allowStrict && this$1.isUseStrict(stmt)) {
|
1029
|
+
oldStrict = this$1.strict
|
1030
|
+
this$1.setStrict(this$1.strict = true)
|
1031
|
+
}
|
1032
|
+
first = false
|
1033
|
+
}
|
1034
|
+
if (oldStrict === false) this.setStrict(false)
|
1035
|
+
return this.finishNode(node, "BlockStatement")
|
1036
|
+
}
|
1037
|
+
|
1038
|
+
// Parse a regular `for` loop. The disambiguation code in
|
1039
|
+
// `parseStatement` will already have parsed the init statement or
|
1040
|
+
// expression.
|
1041
|
+
|
1042
|
+
pp$1.parseFor = function(node, init) {
|
1043
|
+
node.init = init
|
1044
|
+
this.expect(tt.semi)
|
1045
|
+
node.test = this.type === tt.semi ? null : this.parseExpression()
|
1046
|
+
this.expect(tt.semi)
|
1047
|
+
node.update = this.type === tt.parenR ? null : this.parseExpression()
|
1048
|
+
this.expect(tt.parenR)
|
1049
|
+
node.body = this.parseStatement(false)
|
1050
|
+
this.labels.pop()
|
1051
|
+
return this.finishNode(node, "ForStatement")
|
1052
|
+
}
|
1053
|
+
|
1054
|
+
// Parse a `for`/`in` and `for`/`of` loop, which are almost
|
1055
|
+
// same from parser's perspective.
|
1056
|
+
|
1057
|
+
pp$1.parseForIn = function(node, init) {
|
1058
|
+
var type = this.type === tt._in ? "ForInStatement" : "ForOfStatement"
|
1059
|
+
this.next()
|
1060
|
+
node.left = init
|
1061
|
+
node.right = this.parseExpression()
|
1062
|
+
this.expect(tt.parenR)
|
1063
|
+
node.body = this.parseStatement(false)
|
1064
|
+
this.labels.pop()
|
1065
|
+
return this.finishNode(node, type)
|
1066
|
+
}
|
1067
|
+
|
1068
|
+
// Parse a list of variable declarations.
|
1069
|
+
|
1070
|
+
pp$1.parseVar = function(node, isFor, kind) {
|
1071
|
+
var this$1 = this;
|
1072
|
+
|
1073
|
+
node.declarations = []
|
1074
|
+
node.kind = kind
|
1075
|
+
for (;;) {
|
1076
|
+
var decl = this$1.startNode()
|
1077
|
+
this$1.parseVarId(decl)
|
1078
|
+
if (this$1.eat(tt.eq)) {
|
1079
|
+
decl.init = this$1.parseMaybeAssign(isFor)
|
1080
|
+
} else if (kind === "const" && !(this$1.type === tt._in || (this$1.options.ecmaVersion >= 6 && this$1.isContextual("of")))) {
|
1081
|
+
this$1.unexpected()
|
1082
|
+
} else if (decl.id.type != "Identifier" && !(isFor && (this$1.type === tt._in || this$1.isContextual("of")))) {
|
1083
|
+
this$1.raise(this$1.lastTokEnd, "Complex binding patterns require an initialization value")
|
1084
|
+
} else {
|
1085
|
+
decl.init = null
|
1086
|
+
}
|
1087
|
+
node.declarations.push(this$1.finishNode(decl, "VariableDeclarator"))
|
1088
|
+
if (!this$1.eat(tt.comma)) break
|
1089
|
+
}
|
1090
|
+
return node
|
1091
|
+
}
|
1092
|
+
|
1093
|
+
pp$1.parseVarId = function(decl) {
|
1094
|
+
decl.id = this.parseBindingAtom()
|
1095
|
+
this.checkLVal(decl.id, true)
|
1096
|
+
}
|
1097
|
+
|
1098
|
+
// Parse a function declaration or literal (depending on the
|
1099
|
+
// `isStatement` parameter).
|
1100
|
+
|
1101
|
+
pp$1.parseFunction = function(node, isStatement, allowExpressionBody, isAsync) {
|
1102
|
+
this.initFunction(node)
|
1103
|
+
if (this.options.ecmaVersion >= 6 && !isAsync)
|
1104
|
+
node.generator = this.eat(tt.star)
|
1105
|
+
if (this.options.ecmaVersion >= 8)
|
1106
|
+
node.async = !!isAsync
|
1107
|
+
|
1108
|
+
if (isStatement)
|
1109
|
+
node.id = this.parseIdent()
|
1110
|
+
|
1111
|
+
var oldInGen = this.inGenerator, oldInAsync = this.inAsync, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos
|
1112
|
+
this.inGenerator = node.generator
|
1113
|
+
this.inAsync = node.async
|
1114
|
+
this.yieldPos = 0
|
1115
|
+
this.awaitPos = 0
|
1116
|
+
|
1117
|
+
if (!isStatement && this.type === tt.name)
|
1118
|
+
node.id = this.parseIdent()
|
1119
|
+
this.parseFunctionParams(node)
|
1120
|
+
this.parseFunctionBody(node, allowExpressionBody)
|
1121
|
+
|
1122
|
+
this.inGenerator = oldInGen
|
1123
|
+
this.inAsync = oldInAsync
|
1124
|
+
this.yieldPos = oldYieldPos
|
1125
|
+
this.awaitPos = oldAwaitPos
|
1126
|
+
return this.finishNode(node, isStatement ? "FunctionDeclaration" : "FunctionExpression")
|
1127
|
+
}
|
1128
|
+
|
1129
|
+
pp$1.parseFunctionParams = function(node) {
|
1130
|
+
this.expect(tt.parenL)
|
1131
|
+
node.params = this.parseBindingList(tt.parenR, false, this.options.ecmaVersion >= 8, true)
|
1132
|
+
this.checkYieldAwaitInDefaultParams()
|
1133
|
+
}
|
1134
|
+
|
1135
|
+
// Parse a class declaration or literal (depending on the
|
1136
|
+
// `isStatement` parameter).
|
1137
|
+
|
1138
|
+
pp$1.parseClass = function(node, isStatement) {
|
1139
|
+
var this$1 = this;
|
1140
|
+
|
1141
|
+
this.next()
|
1142
|
+
this.parseClassId(node, isStatement)
|
1143
|
+
this.parseClassSuper(node)
|
1144
|
+
var classBody = this.startNode()
|
1145
|
+
var hadConstructor = false
|
1146
|
+
classBody.body = []
|
1147
|
+
this.expect(tt.braceL)
|
1148
|
+
while (!this.eat(tt.braceR)) {
|
1149
|
+
if (this$1.eat(tt.semi)) continue
|
1150
|
+
var method = this$1.startNode()
|
1151
|
+
var isGenerator = this$1.eat(tt.star)
|
1152
|
+
var isAsync = false
|
1153
|
+
var isMaybeStatic = this$1.type === tt.name && this$1.value === "static"
|
1154
|
+
this$1.parsePropertyName(method)
|
1155
|
+
method.static = isMaybeStatic && this$1.type !== tt.parenL
|
1156
|
+
if (method.static) {
|
1157
|
+
if (isGenerator) this$1.unexpected()
|
1158
|
+
isGenerator = this$1.eat(tt.star)
|
1159
|
+
this$1.parsePropertyName(method)
|
1160
|
+
}
|
1161
|
+
if (this$1.options.ecmaVersion >= 8 && !isGenerator && !method.computed &&
|
1162
|
+
method.key.type === "Identifier" && method.key.name === "async" && this$1.type !== tt.parenL &&
|
1163
|
+
!this$1.canInsertSemicolon()) {
|
1164
|
+
isAsync = true
|
1165
|
+
this$1.parsePropertyName(method)
|
1166
|
+
}
|
1167
|
+
method.kind = "method"
|
1168
|
+
var isGetSet = false
|
1169
|
+
if (!method.computed) {
|
1170
|
+
var key = method.key;
|
1171
|
+
if (!isGenerator && !isAsync && key.type === "Identifier" && this$1.type !== tt.parenL && (key.name === "get" || key.name === "set")) {
|
1172
|
+
isGetSet = true
|
1173
|
+
method.kind = key.name
|
1174
|
+
key = this$1.parsePropertyName(method)
|
1175
|
+
}
|
1176
|
+
if (!method.static && (key.type === "Identifier" && key.name === "constructor" ||
|
1177
|
+
key.type === "Literal" && key.value === "constructor")) {
|
1178
|
+
if (hadConstructor) this$1.raise(key.start, "Duplicate constructor in the same class")
|
1179
|
+
if (isGetSet) this$1.raise(key.start, "Constructor can't have get/set modifier")
|
1180
|
+
if (isGenerator) this$1.raise(key.start, "Constructor can't be a generator")
|
1181
|
+
if (isAsync) this$1.raise(key.start, "Constructor can't be an async method")
|
1182
|
+
method.kind = "constructor"
|
1183
|
+
hadConstructor = true
|
1184
|
+
}
|
1185
|
+
}
|
1186
|
+
this$1.parseClassMethod(classBody, method, isGenerator, isAsync)
|
1187
|
+
if (isGetSet) {
|
1188
|
+
var paramCount = method.kind === "get" ? 0 : 1
|
1189
|
+
if (method.value.params.length !== paramCount) {
|
1190
|
+
var start = method.value.start
|
1191
|
+
if (method.kind === "get")
|
1192
|
+
this$1.raiseRecoverable(start, "getter should have no params")
|
1193
|
+
else
|
1194
|
+
this$1.raiseRecoverable(start, "setter should have exactly one param")
|
1195
|
+
} else {
|
1196
|
+
if (method.kind === "set" && method.value.params[0].type === "RestElement")
|
1197
|
+
this$1.raiseRecoverable(method.value.params[0].start, "Setter cannot use rest params")
|
1198
|
+
}
|
1199
|
+
}
|
1200
|
+
}
|
1201
|
+
node.body = this.finishNode(classBody, "ClassBody")
|
1202
|
+
return this.finishNode(node, isStatement ? "ClassDeclaration" : "ClassExpression")
|
1203
|
+
}
|
1204
|
+
|
1205
|
+
pp$1.parseClassMethod = function(classBody, method, isGenerator, isAsync) {
|
1206
|
+
method.value = this.parseMethod(isGenerator, isAsync)
|
1207
|
+
classBody.body.push(this.finishNode(method, "MethodDefinition"))
|
1208
|
+
}
|
1209
|
+
|
1210
|
+
pp$1.parseClassId = function(node, isStatement) {
|
1211
|
+
node.id = this.type === tt.name ? this.parseIdent() : isStatement ? this.unexpected() : null
|
1212
|
+
}
|
1213
|
+
|
1214
|
+
pp$1.parseClassSuper = function(node) {
|
1215
|
+
node.superClass = this.eat(tt._extends) ? this.parseExprSubscripts() : null
|
1216
|
+
}
|
1217
|
+
|
1218
|
+
// Parses module export declaration.
|
1219
|
+
|
1220
|
+
pp$1.parseExport = function(node, exports) {
|
1221
|
+
var this$1 = this;
|
1222
|
+
|
1223
|
+
this.next()
|
1224
|
+
// export * from '...'
|
1225
|
+
if (this.eat(tt.star)) {
|
1226
|
+
this.expectContextual("from")
|
1227
|
+
node.source = this.type === tt.string ? this.parseExprAtom() : this.unexpected()
|
1228
|
+
this.semicolon()
|
1229
|
+
return this.finishNode(node, "ExportAllDeclaration")
|
1230
|
+
}
|
1231
|
+
if (this.eat(tt._default)) { // export default ...
|
1232
|
+
this.checkExport(exports, "default", this.lastTokStart)
|
1233
|
+
var parens = this.type == tt.parenL
|
1234
|
+
var expr = this.parseMaybeAssign()
|
1235
|
+
var needsSemi = true
|
1236
|
+
if (!parens && (expr.type == "FunctionExpression" ||
|
1237
|
+
expr.type == "ClassExpression")) {
|
1238
|
+
needsSemi = false
|
1239
|
+
if (expr.id) {
|
1240
|
+
expr.type = expr.type == "FunctionExpression"
|
1241
|
+
? "FunctionDeclaration"
|
1242
|
+
: "ClassDeclaration"
|
1243
|
+
}
|
1244
|
+
}
|
1245
|
+
node.declaration = expr
|
1246
|
+
if (needsSemi) this.semicolon()
|
1247
|
+
return this.finishNode(node, "ExportDefaultDeclaration")
|
1248
|
+
}
|
1249
|
+
// export var|const|let|function|class ...
|
1250
|
+
if (this.shouldParseExportStatement()) {
|
1251
|
+
node.declaration = this.parseStatement(true)
|
1252
|
+
if (node.declaration.type === "VariableDeclaration")
|
1253
|
+
this.checkVariableExport(exports, node.declaration.declarations)
|
1254
|
+
else
|
1255
|
+
this.checkExport(exports, node.declaration.id.name, node.declaration.id.start)
|
1256
|
+
node.specifiers = []
|
1257
|
+
node.source = null
|
1258
|
+
} else { // export { x, y as z } [from '...']
|
1259
|
+
node.declaration = null
|
1260
|
+
node.specifiers = this.parseExportSpecifiers(exports)
|
1261
|
+
if (this.eatContextual("from")) {
|
1262
|
+
node.source = this.type === tt.string ? this.parseExprAtom() : this.unexpected()
|
1263
|
+
} else {
|
1264
|
+
// check for keywords used as local names
|
1265
|
+
for (var i = 0; i < node.specifiers.length; i++) {
|
1266
|
+
if (this$1.keywords.test(node.specifiers[i].local.name) || this$1.reservedWords.test(node.specifiers[i].local.name)) {
|
1267
|
+
this$1.unexpected(node.specifiers[i].local.start)
|
1268
|
+
}
|
1269
|
+
}
|
1270
|
+
|
1271
|
+
node.source = null
|
1272
|
+
}
|
1273
|
+
this.semicolon()
|
1274
|
+
}
|
1275
|
+
return this.finishNode(node, "ExportNamedDeclaration")
|
1276
|
+
}
|
1277
|
+
|
1278
|
+
pp$1.checkExport = function(exports, name, pos) {
|
1279
|
+
if (!exports) return
|
1280
|
+
if (Object.prototype.hasOwnProperty.call(exports, name))
|
1281
|
+
this.raiseRecoverable(pos, "Duplicate export '" + name + "'")
|
1282
|
+
exports[name] = true
|
1283
|
+
}
|
1284
|
+
|
1285
|
+
pp$1.checkPatternExport = function(exports, pat) {
|
1286
|
+
var this$1 = this;
|
1287
|
+
|
1288
|
+
var type = pat.type
|
1289
|
+
if (type == "Identifier")
|
1290
|
+
this.checkExport(exports, pat.name, pat.start)
|
1291
|
+
else if (type == "ObjectPattern")
|
1292
|
+
for (var i = 0; i < pat.properties.length; ++i)
|
1293
|
+
this$1.checkPatternExport(exports, pat.properties[i].value)
|
1294
|
+
else if (type == "ArrayPattern")
|
1295
|
+
for (var i$1 = 0; i$1 < pat.elements.length; ++i$1) {
|
1296
|
+
var elt = pat.elements[i$1]
|
1297
|
+
if (elt) this$1.checkPatternExport(exports, elt)
|
1298
|
+
}
|
1299
|
+
else if (type == "AssignmentPattern")
|
1300
|
+
this.checkPatternExport(exports, pat.left)
|
1301
|
+
else if (type == "ParenthesizedExpression")
|
1302
|
+
this.checkPatternExport(exports, pat.expression)
|
1303
|
+
}
|
1304
|
+
|
1305
|
+
pp$1.checkVariableExport = function(exports, decls) {
|
1306
|
+
var this$1 = this;
|
1307
|
+
|
1308
|
+
if (!exports) return
|
1309
|
+
for (var i = 0; i < decls.length; i++)
|
1310
|
+
this$1.checkPatternExport(exports, decls[i].id)
|
1311
|
+
}
|
1312
|
+
|
1313
|
+
pp$1.shouldParseExportStatement = function() {
|
1314
|
+
return this.type.keyword === "var"
|
1315
|
+
|| this.type.keyword === "const"
|
1316
|
+
|| this.type.keyword === "class"
|
1317
|
+
|| this.type.keyword === "function"
|
1318
|
+
|| this.isLet()
|
1319
|
+
|| this.isAsyncFunction()
|
1320
|
+
}
|
1321
|
+
|
1322
|
+
// Parses a comma-separated list of module exports.
|
1323
|
+
|
1324
|
+
pp$1.parseExportSpecifiers = function(exports) {
|
1325
|
+
var this$1 = this;
|
1326
|
+
|
1327
|
+
var nodes = [], first = true
|
1328
|
+
// export { x, y as z } [from '...']
|
1329
|
+
this.expect(tt.braceL)
|
1330
|
+
while (!this.eat(tt.braceR)) {
|
1331
|
+
if (!first) {
|
1332
|
+
this$1.expect(tt.comma)
|
1333
|
+
if (this$1.afterTrailingComma(tt.braceR)) break
|
1334
|
+
} else first = false
|
1335
|
+
|
1336
|
+
var node = this$1.startNode()
|
1337
|
+
node.local = this$1.parseIdent(this$1.type === tt._default)
|
1338
|
+
node.exported = this$1.eatContextual("as") ? this$1.parseIdent(true) : node.local
|
1339
|
+
this$1.checkExport(exports, node.exported.name, node.exported.start)
|
1340
|
+
nodes.push(this$1.finishNode(node, "ExportSpecifier"))
|
1341
|
+
}
|
1342
|
+
return nodes
|
1343
|
+
}
|
1344
|
+
|
1345
|
+
// Parses import declaration.
|
1346
|
+
|
1347
|
+
pp$1.parseImport = function(node) {
|
1348
|
+
this.next()
|
1349
|
+
// import '...'
|
1350
|
+
if (this.type === tt.string) {
|
1351
|
+
node.specifiers = empty
|
1352
|
+
node.source = this.parseExprAtom()
|
1353
|
+
} else {
|
1354
|
+
node.specifiers = this.parseImportSpecifiers()
|
1355
|
+
this.expectContextual("from")
|
1356
|
+
node.source = this.type === tt.string ? this.parseExprAtom() : this.unexpected()
|
1357
|
+
}
|
1358
|
+
this.semicolon()
|
1359
|
+
return this.finishNode(node, "ImportDeclaration")
|
1360
|
+
}
|
1361
|
+
|
1362
|
+
// Parses a comma-separated list of module imports.
|
1363
|
+
|
1364
|
+
pp$1.parseImportSpecifiers = function() {
|
1365
|
+
var this$1 = this;
|
1366
|
+
|
1367
|
+
var nodes = [], first = true
|
1368
|
+
if (this.type === tt.name) {
|
1369
|
+
// import defaultObj, { x, y as z } from '...'
|
1370
|
+
var node = this.startNode()
|
1371
|
+
node.local = this.parseIdent()
|
1372
|
+
this.checkLVal(node.local, true)
|
1373
|
+
nodes.push(this.finishNode(node, "ImportDefaultSpecifier"))
|
1374
|
+
if (!this.eat(tt.comma)) return nodes
|
1375
|
+
}
|
1376
|
+
if (this.type === tt.star) {
|
1377
|
+
var node$1 = this.startNode()
|
1378
|
+
this.next()
|
1379
|
+
this.expectContextual("as")
|
1380
|
+
node$1.local = this.parseIdent()
|
1381
|
+
this.checkLVal(node$1.local, true)
|
1382
|
+
nodes.push(this.finishNode(node$1, "ImportNamespaceSpecifier"))
|
1383
|
+
return nodes
|
1384
|
+
}
|
1385
|
+
this.expect(tt.braceL)
|
1386
|
+
while (!this.eat(tt.braceR)) {
|
1387
|
+
if (!first) {
|
1388
|
+
this$1.expect(tt.comma)
|
1389
|
+
if (this$1.afterTrailingComma(tt.braceR)) break
|
1390
|
+
} else first = false
|
1391
|
+
|
1392
|
+
var node$2 = this$1.startNode()
|
1393
|
+
node$2.imported = this$1.parseIdent(true)
|
1394
|
+
if (this$1.eatContextual("as")) {
|
1395
|
+
node$2.local = this$1.parseIdent()
|
1396
|
+
} else {
|
1397
|
+
node$2.local = node$2.imported
|
1398
|
+
if (this$1.isKeyword(node$2.local.name)) this$1.unexpected(node$2.local.start)
|
1399
|
+
if (this$1.reservedWordsStrict.test(node$2.local.name)) this$1.raiseRecoverable(node$2.local.start, "The keyword '" + node$2.local.name + "' is reserved")
|
1400
|
+
}
|
1401
|
+
this$1.checkLVal(node$2.local, true)
|
1402
|
+
nodes.push(this$1.finishNode(node$2, "ImportSpecifier"))
|
1403
|
+
}
|
1404
|
+
return nodes
|
1405
|
+
}
|
1406
|
+
|
1407
|
+
var pp$2 = Parser.prototype
|
1408
|
+
|
1409
|
+
// Convert existing expression atom to assignable pattern
|
1410
|
+
// if possible.
|
1411
|
+
|
1412
|
+
pp$2.toAssignable = function(node, isBinding) {
|
1413
|
+
var this$1 = this;
|
1414
|
+
|
1415
|
+
if (this.options.ecmaVersion >= 6 && node) {
|
1416
|
+
switch (node.type) {
|
1417
|
+
case "Identifier":
|
1418
|
+
if (this.inAsync && node.name === "await")
|
1419
|
+
this.raise(node.start, "Can not use 'await' as identifier inside an async function")
|
1420
|
+
break
|
1421
|
+
|
1422
|
+
case "ObjectPattern":
|
1423
|
+
case "ArrayPattern":
|
1424
|
+
break
|
1425
|
+
|
1426
|
+
case "ObjectExpression":
|
1427
|
+
node.type = "ObjectPattern"
|
1428
|
+
for (var i = 0; i < node.properties.length; i++) {
|
1429
|
+
var prop = node.properties[i]
|
1430
|
+
if (prop.kind !== "init") this$1.raise(prop.key.start, "Object pattern can't contain getter or setter")
|
1431
|
+
this$1.toAssignable(prop.value, isBinding)
|
1432
|
+
}
|
1433
|
+
break
|
1434
|
+
|
1435
|
+
case "ArrayExpression":
|
1436
|
+
node.type = "ArrayPattern"
|
1437
|
+
this.toAssignableList(node.elements, isBinding)
|
1438
|
+
break
|
1439
|
+
|
1440
|
+
case "AssignmentExpression":
|
1441
|
+
if (node.operator === "=") {
|
1442
|
+
node.type = "AssignmentPattern"
|
1443
|
+
delete node.operator
|
1444
|
+
this.toAssignable(node.left, isBinding)
|
1445
|
+
// falls through to AssignmentPattern
|
1446
|
+
} else {
|
1447
|
+
this.raise(node.left.end, "Only '=' operator can be used for specifying default value.")
|
1448
|
+
break
|
1449
|
+
}
|
1450
|
+
|
1451
|
+
case "AssignmentPattern":
|
1452
|
+
break
|
1453
|
+
|
1454
|
+
case "ParenthesizedExpression":
|
1455
|
+
node.expression = this.toAssignable(node.expression, isBinding)
|
1456
|
+
break
|
1457
|
+
|
1458
|
+
case "MemberExpression":
|
1459
|
+
if (!isBinding) break
|
1460
|
+
|
1461
|
+
default:
|
1462
|
+
this.raise(node.start, "Assigning to rvalue")
|
1463
|
+
}
|
1464
|
+
}
|
1465
|
+
return node
|
1466
|
+
}
|
1467
|
+
|
1468
|
+
// Convert list of expression atoms to binding list.
|
1469
|
+
|
1470
|
+
pp$2.toAssignableList = function(exprList, isBinding) {
|
1471
|
+
var this$1 = this;
|
1472
|
+
|
1473
|
+
var end = exprList.length
|
1474
|
+
if (end) {
|
1475
|
+
var last = exprList[end - 1]
|
1476
|
+
if (last && last.type == "RestElement") {
|
1477
|
+
--end
|
1478
|
+
} else if (last && last.type == "SpreadElement") {
|
1479
|
+
last.type = "RestElement"
|
1480
|
+
var arg = last.argument
|
1481
|
+
this.toAssignable(arg, isBinding)
|
1482
|
+
if (arg.type !== "Identifier" && arg.type !== "MemberExpression" && arg.type !== "ArrayPattern")
|
1483
|
+
this.unexpected(arg.start)
|
1484
|
+
--end
|
1485
|
+
}
|
1486
|
+
|
1487
|
+
if (isBinding && last && last.type === "RestElement" && last.argument.type !== "Identifier")
|
1488
|
+
this.unexpected(last.argument.start)
|
1489
|
+
}
|
1490
|
+
for (var i = 0; i < end; i++) {
|
1491
|
+
var elt = exprList[i]
|
1492
|
+
if (elt) this$1.toAssignable(elt, isBinding)
|
1493
|
+
}
|
1494
|
+
return exprList
|
1495
|
+
}
|
1496
|
+
|
1497
|
+
// Parses spread element.
|
1498
|
+
|
1499
|
+
pp$2.parseSpread = function(refDestructuringErrors) {
|
1500
|
+
var node = this.startNode()
|
1501
|
+
this.next()
|
1502
|
+
node.argument = this.parseMaybeAssign(false, refDestructuringErrors)
|
1503
|
+
return this.finishNode(node, "SpreadElement")
|
1504
|
+
}
|
1505
|
+
|
1506
|
+
pp$2.parseRest = function(allowNonIdent) {
|
1507
|
+
var node = this.startNode()
|
1508
|
+
this.next()
|
1509
|
+
|
1510
|
+
// RestElement inside of a function parameter must be an identifier
|
1511
|
+
if (allowNonIdent) node.argument = this.type === tt.name ? this.parseIdent() : this.unexpected()
|
1512
|
+
else node.argument = this.type === tt.name || this.type === tt.bracketL ? this.parseBindingAtom() : this.unexpected()
|
1513
|
+
|
1514
|
+
return this.finishNode(node, "RestElement")
|
1515
|
+
}
|
1516
|
+
|
1517
|
+
// Parses lvalue (assignable) atom.
|
1518
|
+
|
1519
|
+
pp$2.parseBindingAtom = function() {
|
1520
|
+
if (this.options.ecmaVersion < 6) return this.parseIdent()
|
1521
|
+
switch (this.type) {
|
1522
|
+
case tt.name:
|
1523
|
+
return this.parseIdent()
|
1524
|
+
|
1525
|
+
case tt.bracketL:
|
1526
|
+
var node = this.startNode()
|
1527
|
+
this.next()
|
1528
|
+
node.elements = this.parseBindingList(tt.bracketR, true, true)
|
1529
|
+
return this.finishNode(node, "ArrayPattern")
|
1530
|
+
|
1531
|
+
case tt.braceL:
|
1532
|
+
return this.parseObj(true)
|
1533
|
+
|
1534
|
+
default:
|
1535
|
+
this.unexpected()
|
1536
|
+
}
|
1537
|
+
}
|
1538
|
+
|
1539
|
+
pp$2.parseBindingList = function(close, allowEmpty, allowTrailingComma, allowNonIdent) {
|
1540
|
+
var this$1 = this;
|
1541
|
+
|
1542
|
+
var elts = [], first = true
|
1543
|
+
while (!this.eat(close)) {
|
1544
|
+
if (first) first = false
|
1545
|
+
else this$1.expect(tt.comma)
|
1546
|
+
if (allowEmpty && this$1.type === tt.comma) {
|
1547
|
+
elts.push(null)
|
1548
|
+
} else if (allowTrailingComma && this$1.afterTrailingComma(close)) {
|
1549
|
+
break
|
1550
|
+
} else if (this$1.type === tt.ellipsis) {
|
1551
|
+
var rest = this$1.parseRest(allowNonIdent)
|
1552
|
+
this$1.parseBindingListItem(rest)
|
1553
|
+
elts.push(rest)
|
1554
|
+
if (this$1.type === tt.comma) this$1.raise(this$1.start, "Comma is not permitted after the rest element")
|
1555
|
+
this$1.expect(close)
|
1556
|
+
break
|
1557
|
+
} else {
|
1558
|
+
var elem = this$1.parseMaybeDefault(this$1.start, this$1.startLoc)
|
1559
|
+
this$1.parseBindingListItem(elem)
|
1560
|
+
elts.push(elem)
|
1561
|
+
}
|
1562
|
+
}
|
1563
|
+
return elts
|
1564
|
+
}
|
1565
|
+
|
1566
|
+
pp$2.parseBindingListItem = function(param) {
|
1567
|
+
return param
|
1568
|
+
}
|
1569
|
+
|
1570
|
+
// Parses assignment pattern around given atom if possible.
|
1571
|
+
|
1572
|
+
pp$2.parseMaybeDefault = function(startPos, startLoc, left) {
|
1573
|
+
left = left || this.parseBindingAtom()
|
1574
|
+
if (this.options.ecmaVersion < 6 || !this.eat(tt.eq)) return left
|
1575
|
+
var node = this.startNodeAt(startPos, startLoc)
|
1576
|
+
node.left = left
|
1577
|
+
node.right = this.parseMaybeAssign()
|
1578
|
+
return this.finishNode(node, "AssignmentPattern")
|
1579
|
+
}
|
1580
|
+
|
1581
|
+
// Verify that a node is an lval — something that can be assigned
|
1582
|
+
// to.
|
1583
|
+
|
1584
|
+
pp$2.checkLVal = function(expr, isBinding, checkClashes) {
|
1585
|
+
var this$1 = this;
|
1586
|
+
|
1587
|
+
switch (expr.type) {
|
1588
|
+
case "Identifier":
|
1589
|
+
if (this.strict && this.reservedWordsStrictBind.test(expr.name))
|
1590
|
+
this.raiseRecoverable(expr.start, (isBinding ? "Binding " : "Assigning to ") + expr.name + " in strict mode")
|
1591
|
+
if (checkClashes) {
|
1592
|
+
if (has(checkClashes, expr.name))
|
1593
|
+
this.raiseRecoverable(expr.start, "Argument name clash")
|
1594
|
+
checkClashes[expr.name] = true
|
1595
|
+
}
|
1596
|
+
break
|
1597
|
+
|
1598
|
+
case "MemberExpression":
|
1599
|
+
if (isBinding) this.raiseRecoverable(expr.start, (isBinding ? "Binding" : "Assigning to") + " member expression")
|
1600
|
+
break
|
1601
|
+
|
1602
|
+
case "ObjectPattern":
|
1603
|
+
for (var i = 0; i < expr.properties.length; i++)
|
1604
|
+
this$1.checkLVal(expr.properties[i].value, isBinding, checkClashes)
|
1605
|
+
break
|
1606
|
+
|
1607
|
+
case "ArrayPattern":
|
1608
|
+
for (var i$1 = 0; i$1 < expr.elements.length; i$1++) {
|
1609
|
+
var elem = expr.elements[i$1]
|
1610
|
+
if (elem) this$1.checkLVal(elem, isBinding, checkClashes)
|
1611
|
+
}
|
1612
|
+
break
|
1613
|
+
|
1614
|
+
case "AssignmentPattern":
|
1615
|
+
this.checkLVal(expr.left, isBinding, checkClashes)
|
1616
|
+
break
|
1617
|
+
|
1618
|
+
case "RestElement":
|
1619
|
+
this.checkLVal(expr.argument, isBinding, checkClashes)
|
1620
|
+
break
|
1621
|
+
|
1622
|
+
case "ParenthesizedExpression":
|
1623
|
+
this.checkLVal(expr.expression, isBinding, checkClashes)
|
1624
|
+
break
|
1625
|
+
|
1626
|
+
default:
|
1627
|
+
this.raise(expr.start, (isBinding ? "Binding" : "Assigning to") + " rvalue")
|
1628
|
+
}
|
1629
|
+
}
|
1630
|
+
|
1631
|
+
// A recursive descent parser operates by defining functions for all
|
1632
|
+
// syntactic elements, and recursively calling those, each function
|
1633
|
+
// advancing the input stream and returning an AST node. Precedence
|
1634
|
+
// of constructs (for example, the fact that `!x[1]` means `!(x[1])`
|
1635
|
+
// instead of `(!x)[1]` is handled by the fact that the parser
|
1636
|
+
// function that parses unary prefix operators is called first, and
|
1637
|
+
// in turn calls the function that parses `[]` subscripts — that
|
1638
|
+
// way, it'll receive the node for `x[1]` already parsed, and wraps
|
1639
|
+
// *that* in the unary operator node.
|
1640
|
+
//
|
1641
|
+
// Acorn uses an [operator precedence parser][opp] to handle binary
|
1642
|
+
// operator precedence, because it is much more compact than using
|
1643
|
+
// the technique outlined above, which uses different, nesting
|
1644
|
+
// functions to specify precedence, for all of the ten binary
|
1645
|
+
// precedence levels that JavaScript defines.
|
1646
|
+
//
|
1647
|
+
// [opp]: http://en.wikipedia.org/wiki/Operator-precedence_parser
|
1648
|
+
|
1649
|
+
var pp$3 = Parser.prototype
|
1650
|
+
|
1651
|
+
// Check if property name clashes with already added.
|
1652
|
+
// Object/class getters and setters are not allowed to clash —
|
1653
|
+
// either with each other or with an init property — and in
|
1654
|
+
// strict mode, init properties are also not allowed to be repeated.
|
1655
|
+
|
1656
|
+
pp$3.checkPropClash = function(prop, propHash) {
|
1657
|
+
if (this.options.ecmaVersion >= 6 && (prop.computed || prop.method || prop.shorthand))
|
1658
|
+
return
|
1659
|
+
var key = prop.key;
|
1660
|
+
var name
|
1661
|
+
switch (key.type) {
|
1662
|
+
case "Identifier": name = key.name; break
|
1663
|
+
case "Literal": name = String(key.value); break
|
1664
|
+
default: return
|
1665
|
+
}
|
1666
|
+
var kind = prop.kind;
|
1667
|
+
if (this.options.ecmaVersion >= 6) {
|
1668
|
+
if (name === "__proto__" && kind === "init") {
|
1669
|
+
if (propHash.proto) this.raiseRecoverable(key.start, "Redefinition of __proto__ property")
|
1670
|
+
propHash.proto = true
|
1671
|
+
}
|
1672
|
+
return
|
1673
|
+
}
|
1674
|
+
name = "$" + name
|
1675
|
+
var other = propHash[name]
|
1676
|
+
if (other) {
|
1677
|
+
var isGetSet = kind !== "init"
|
1678
|
+
if ((this.strict || isGetSet) && other[kind] || !(isGetSet ^ other.init))
|
1679
|
+
this.raiseRecoverable(key.start, "Redefinition of property")
|
1680
|
+
} else {
|
1681
|
+
other = propHash[name] = {
|
1682
|
+
init: false,
|
1683
|
+
get: false,
|
1684
|
+
set: false
|
1685
|
+
}
|
1686
|
+
}
|
1687
|
+
other[kind] = true
|
1688
|
+
}
|
1689
|
+
|
1690
|
+
// ### Expression parsing
|
1691
|
+
|
1692
|
+
// These nest, from the most general expression type at the top to
|
1693
|
+
// 'atomic', nondivisible expression types at the bottom. Most of
|
1694
|
+
// the functions will simply let the function(s) below them parse,
|
1695
|
+
// and, *if* the syntactic construct they handle is present, wrap
|
1696
|
+
// the AST node that the inner parser gave them in another node.
|
1697
|
+
|
1698
|
+
// Parse a full expression. The optional arguments are used to
|
1699
|
+
// forbid the `in` operator (in for loops initalization expressions)
|
1700
|
+
// and provide reference for storing '=' operator inside shorthand
|
1701
|
+
// property assignment in contexts where both object expression
|
1702
|
+
// and object pattern might appear (so it's possible to raise
|
1703
|
+
// delayed syntax error at correct position).
|
1704
|
+
|
1705
|
+
pp$3.parseExpression = function(noIn, refDestructuringErrors) {
|
1706
|
+
var this$1 = this;
|
1707
|
+
|
1708
|
+
var startPos = this.start, startLoc = this.startLoc
|
1709
|
+
var expr = this.parseMaybeAssign(noIn, refDestructuringErrors)
|
1710
|
+
if (this.type === tt.comma) {
|
1711
|
+
var node = this.startNodeAt(startPos, startLoc)
|
1712
|
+
node.expressions = [expr]
|
1713
|
+
while (this.eat(tt.comma)) node.expressions.push(this$1.parseMaybeAssign(noIn, refDestructuringErrors))
|
1714
|
+
return this.finishNode(node, "SequenceExpression")
|
1715
|
+
}
|
1716
|
+
return expr
|
1717
|
+
}
|
1718
|
+
|
1719
|
+
// Parse an assignment expression. This includes applications of
|
1720
|
+
// operators like `+=`.
|
1721
|
+
|
1722
|
+
pp$3.parseMaybeAssign = function(noIn, refDestructuringErrors, afterLeftParse) {
|
1723
|
+
if (this.inGenerator && this.isContextual("yield")) return this.parseYield()
|
1724
|
+
|
1725
|
+
var ownDestructuringErrors = false
|
1726
|
+
if (!refDestructuringErrors) {
|
1727
|
+
refDestructuringErrors = new DestructuringErrors
|
1728
|
+
ownDestructuringErrors = true
|
1729
|
+
}
|
1730
|
+
var startPos = this.start, startLoc = this.startLoc
|
1731
|
+
if (this.type == tt.parenL || this.type == tt.name)
|
1732
|
+
this.potentialArrowAt = this.start
|
1733
|
+
var left = this.parseMaybeConditional(noIn, refDestructuringErrors)
|
1734
|
+
if (afterLeftParse) left = afterLeftParse.call(this, left, startPos, startLoc)
|
1735
|
+
if (this.type.isAssign) {
|
1736
|
+
this.checkPatternErrors(refDestructuringErrors, true)
|
1737
|
+
if (!ownDestructuringErrors) DestructuringErrors.call(refDestructuringErrors)
|
1738
|
+
var node = this.startNodeAt(startPos, startLoc)
|
1739
|
+
node.operator = this.value
|
1740
|
+
node.left = this.type === tt.eq ? this.toAssignable(left) : left
|
1741
|
+
refDestructuringErrors.shorthandAssign = 0 // reset because shorthand default was used correctly
|
1742
|
+
this.checkLVal(left)
|
1743
|
+
this.next()
|
1744
|
+
node.right = this.parseMaybeAssign(noIn)
|
1745
|
+
return this.finishNode(node, "AssignmentExpression")
|
1746
|
+
} else {
|
1747
|
+
if (ownDestructuringErrors) this.checkExpressionErrors(refDestructuringErrors, true)
|
1748
|
+
}
|
1749
|
+
return left
|
1750
|
+
}
|
1751
|
+
|
1752
|
+
// Parse a ternary conditional (`?:`) operator.
|
1753
|
+
|
1754
|
+
pp$3.parseMaybeConditional = function(noIn, refDestructuringErrors) {
|
1755
|
+
var startPos = this.start, startLoc = this.startLoc
|
1756
|
+
var expr = this.parseExprOps(noIn, refDestructuringErrors)
|
1757
|
+
if (this.checkExpressionErrors(refDestructuringErrors)) return expr
|
1758
|
+
if (this.eat(tt.question)) {
|
1759
|
+
var node = this.startNodeAt(startPos, startLoc)
|
1760
|
+
node.test = expr
|
1761
|
+
node.consequent = this.parseMaybeAssign()
|
1762
|
+
this.expect(tt.colon)
|
1763
|
+
node.alternate = this.parseMaybeAssign(noIn)
|
1764
|
+
return this.finishNode(node, "ConditionalExpression")
|
1765
|
+
}
|
1766
|
+
return expr
|
1767
|
+
}
|
1768
|
+
|
1769
|
+
// Start the precedence parser.
|
1770
|
+
|
1771
|
+
pp$3.parseExprOps = function(noIn, refDestructuringErrors) {
|
1772
|
+
var startPos = this.start, startLoc = this.startLoc
|
1773
|
+
var expr = this.parseMaybeUnary(refDestructuringErrors, false)
|
1774
|
+
if (this.checkExpressionErrors(refDestructuringErrors)) return expr
|
1775
|
+
return this.parseExprOp(expr, startPos, startLoc, -1, noIn)
|
1776
|
+
}
|
1777
|
+
|
1778
|
+
// Parse binary operators with the operator precedence parsing
|
1779
|
+
// algorithm. `left` is the left-hand side of the operator.
|
1780
|
+
// `minPrec` provides context that allows the function to stop and
|
1781
|
+
// defer further parser to one of its callers when it encounters an
|
1782
|
+
// operator that has a lower precedence than the set it is parsing.
|
1783
|
+
|
1784
|
+
pp$3.parseExprOp = function(left, leftStartPos, leftStartLoc, minPrec, noIn) {
|
1785
|
+
var prec = this.type.binop
|
1786
|
+
if (prec != null && (!noIn || this.type !== tt._in)) {
|
1787
|
+
if (prec > minPrec) {
|
1788
|
+
var logical = this.type === tt.logicalOR || this.type === tt.logicalAND
|
1789
|
+
var op = this.value
|
1790
|
+
this.next()
|
1791
|
+
var startPos = this.start, startLoc = this.startLoc
|
1792
|
+
var right = this.parseExprOp(this.parseMaybeUnary(null, false), startPos, startLoc, prec, noIn)
|
1793
|
+
var node = this.buildBinary(leftStartPos, leftStartLoc, left, right, op, logical)
|
1794
|
+
return this.parseExprOp(node, leftStartPos, leftStartLoc, minPrec, noIn)
|
1795
|
+
}
|
1796
|
+
}
|
1797
|
+
return left
|
1798
|
+
}
|
1799
|
+
|
1800
|
+
pp$3.buildBinary = function(startPos, startLoc, left, right, op, logical) {
|
1801
|
+
var node = this.startNodeAt(startPos, startLoc)
|
1802
|
+
node.left = left
|
1803
|
+
node.operator = op
|
1804
|
+
node.right = right
|
1805
|
+
return this.finishNode(node, logical ? "LogicalExpression" : "BinaryExpression")
|
1806
|
+
}
|
1807
|
+
|
1808
|
+
// Parse unary operators, both prefix and postfix.
|
1809
|
+
|
1810
|
+
pp$3.parseMaybeUnary = function(refDestructuringErrors, sawUnary) {
|
1811
|
+
var this$1 = this;
|
1812
|
+
|
1813
|
+
var startPos = this.start, startLoc = this.startLoc, expr
|
1814
|
+
if (this.inAsync && this.isContextual("await")) {
|
1815
|
+
expr = this.parseAwait(refDestructuringErrors)
|
1816
|
+
sawUnary = true
|
1817
|
+
} else if (this.type.prefix) {
|
1818
|
+
var node = this.startNode(), update = this.type === tt.incDec
|
1819
|
+
node.operator = this.value
|
1820
|
+
node.prefix = true
|
1821
|
+
this.next()
|
1822
|
+
node.argument = this.parseMaybeUnary(null, true)
|
1823
|
+
this.checkExpressionErrors(refDestructuringErrors, true)
|
1824
|
+
if (update) this.checkLVal(node.argument)
|
1825
|
+
else if (this.strict && node.operator === "delete" &&
|
1826
|
+
node.argument.type === "Identifier")
|
1827
|
+
this.raiseRecoverable(node.start, "Deleting local variable in strict mode")
|
1828
|
+
else sawUnary = true
|
1829
|
+
expr = this.finishNode(node, update ? "UpdateExpression" : "UnaryExpression")
|
1830
|
+
} else {
|
1831
|
+
expr = this.parseExprSubscripts(refDestructuringErrors)
|
1832
|
+
if (this.checkExpressionErrors(refDestructuringErrors)) return expr
|
1833
|
+
while (this.type.postfix && !this.canInsertSemicolon()) {
|
1834
|
+
var node$1 = this$1.startNodeAt(startPos, startLoc)
|
1835
|
+
node$1.operator = this$1.value
|
1836
|
+
node$1.prefix = false
|
1837
|
+
node$1.argument = expr
|
1838
|
+
this$1.checkLVal(expr)
|
1839
|
+
this$1.next()
|
1840
|
+
expr = this$1.finishNode(node$1, "UpdateExpression")
|
1841
|
+
}
|
1842
|
+
}
|
1843
|
+
|
1844
|
+
if (!sawUnary && this.eat(tt.starstar))
|
1845
|
+
return this.buildBinary(startPos, startLoc, expr, this.parseMaybeUnary(null, false), "**", false)
|
1846
|
+
else
|
1847
|
+
return expr
|
1848
|
+
}
|
1849
|
+
|
1850
|
+
// Parse call, dot, and `[]`-subscript expressions.
|
1851
|
+
|
1852
|
+
pp$3.parseExprSubscripts = function(refDestructuringErrors) {
|
1853
|
+
var startPos = this.start, startLoc = this.startLoc
|
1854
|
+
var expr = this.parseExprAtom(refDestructuringErrors)
|
1855
|
+
var skipArrowSubscripts = expr.type === "ArrowFunctionExpression" && this.input.slice(this.lastTokStart, this.lastTokEnd) !== ")"
|
1856
|
+
if (this.checkExpressionErrors(refDestructuringErrors) || skipArrowSubscripts) return expr
|
1857
|
+
return this.parseSubscripts(expr, startPos, startLoc)
|
1858
|
+
}
|
1859
|
+
|
1860
|
+
pp$3.parseSubscripts = function(base, startPos, startLoc, noCalls) {
|
1861
|
+
var this$1 = this;
|
1862
|
+
|
1863
|
+
for (;;) {
|
1864
|
+
var maybeAsyncArrow = this$1.options.ecmaVersion >= 8 && base.type === "Identifier" && base.name === "async" && !this$1.canInsertSemicolon()
|
1865
|
+
if (this$1.eat(tt.dot)) {
|
1866
|
+
var node = this$1.startNodeAt(startPos, startLoc)
|
1867
|
+
node.object = base
|
1868
|
+
node.property = this$1.parseIdent(true)
|
1869
|
+
node.computed = false
|
1870
|
+
base = this$1.finishNode(node, "MemberExpression")
|
1871
|
+
} else if (this$1.eat(tt.bracketL)) {
|
1872
|
+
var node$1 = this$1.startNodeAt(startPos, startLoc)
|
1873
|
+
node$1.object = base
|
1874
|
+
node$1.property = this$1.parseExpression()
|
1875
|
+
node$1.computed = true
|
1876
|
+
this$1.expect(tt.bracketR)
|
1877
|
+
base = this$1.finishNode(node$1, "MemberExpression")
|
1878
|
+
} else if (!noCalls && this$1.eat(tt.parenL)) {
|
1879
|
+
var refDestructuringErrors = new DestructuringErrors, oldYieldPos = this$1.yieldPos, oldAwaitPos = this$1.awaitPos
|
1880
|
+
this$1.yieldPos = 0
|
1881
|
+
this$1.awaitPos = 0
|
1882
|
+
var exprList = this$1.parseExprList(tt.parenR, this$1.options.ecmaVersion >= 8, false, refDestructuringErrors)
|
1883
|
+
if (maybeAsyncArrow && !this$1.canInsertSemicolon() && this$1.eat(tt.arrow)) {
|
1884
|
+
this$1.checkPatternErrors(refDestructuringErrors, true)
|
1885
|
+
this$1.checkYieldAwaitInDefaultParams()
|
1886
|
+
this$1.yieldPos = oldYieldPos
|
1887
|
+
this$1.awaitPos = oldAwaitPos
|
1888
|
+
return this$1.parseArrowExpression(this$1.startNodeAt(startPos, startLoc), exprList, true)
|
1889
|
+
}
|
1890
|
+
this$1.checkExpressionErrors(refDestructuringErrors, true)
|
1891
|
+
this$1.yieldPos = oldYieldPos || this$1.yieldPos
|
1892
|
+
this$1.awaitPos = oldAwaitPos || this$1.awaitPos
|
1893
|
+
var node$2 = this$1.startNodeAt(startPos, startLoc)
|
1894
|
+
node$2.callee = base
|
1895
|
+
node$2.arguments = exprList
|
1896
|
+
base = this$1.finishNode(node$2, "CallExpression")
|
1897
|
+
} else if (this$1.type === tt.backQuote) {
|
1898
|
+
var node$3 = this$1.startNodeAt(startPos, startLoc)
|
1899
|
+
node$3.tag = base
|
1900
|
+
node$3.quasi = this$1.parseTemplate()
|
1901
|
+
base = this$1.finishNode(node$3, "TaggedTemplateExpression")
|
1902
|
+
} else {
|
1903
|
+
return base
|
1904
|
+
}
|
1905
|
+
}
|
1906
|
+
}
|
1907
|
+
|
1908
|
+
// Parse an atomic expression — either a single token that is an
|
1909
|
+
// expression, an expression started by a keyword like `function` or
|
1910
|
+
// `new`, or an expression wrapped in punctuation like `()`, `[]`,
|
1911
|
+
// or `{}`.
|
1912
|
+
|
1913
|
+
pp$3.parseExprAtom = function(refDestructuringErrors) {
|
1914
|
+
var node, canBeArrow = this.potentialArrowAt == this.start
|
1915
|
+
switch (this.type) {
|
1916
|
+
case tt._super:
|
1917
|
+
if (!this.inFunction)
|
1918
|
+
this.raise(this.start, "'super' outside of function or class")
|
1919
|
+
|
1920
|
+
case tt._this:
|
1921
|
+
var type = this.type === tt._this ? "ThisExpression" : "Super"
|
1922
|
+
node = this.startNode()
|
1923
|
+
this.next()
|
1924
|
+
return this.finishNode(node, type)
|
1925
|
+
|
1926
|
+
case tt.name:
|
1927
|
+
var startPos = this.start, startLoc = this.startLoc
|
1928
|
+
var id = this.parseIdent(this.type !== tt.name)
|
1929
|
+
if (this.options.ecmaVersion >= 8 && id.name === "async" && !this.canInsertSemicolon() && this.eat(tt._function))
|
1930
|
+
return this.parseFunction(this.startNodeAt(startPos, startLoc), false, false, true)
|
1931
|
+
if (canBeArrow && !this.canInsertSemicolon()) {
|
1932
|
+
if (this.eat(tt.arrow))
|
1933
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], false)
|
1934
|
+
if (this.options.ecmaVersion >= 8 && id.name === "async" && this.type === tt.name) {
|
1935
|
+
id = this.parseIdent()
|
1936
|
+
if (this.canInsertSemicolon() || !this.eat(tt.arrow))
|
1937
|
+
this.unexpected()
|
1938
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), [id], true)
|
1939
|
+
}
|
1940
|
+
}
|
1941
|
+
return id
|
1942
|
+
|
1943
|
+
case tt.regexp:
|
1944
|
+
var value = this.value
|
1945
|
+
node = this.parseLiteral(value.value)
|
1946
|
+
node.regex = {pattern: value.pattern, flags: value.flags}
|
1947
|
+
return node
|
1948
|
+
|
1949
|
+
case tt.num: case tt.string:
|
1950
|
+
return this.parseLiteral(this.value)
|
1951
|
+
|
1952
|
+
case tt._null: case tt._true: case tt._false:
|
1953
|
+
node = this.startNode()
|
1954
|
+
node.value = this.type === tt._null ? null : this.type === tt._true
|
1955
|
+
node.raw = this.type.keyword
|
1956
|
+
this.next()
|
1957
|
+
return this.finishNode(node, "Literal")
|
1958
|
+
|
1959
|
+
case tt.parenL:
|
1960
|
+
return this.parseParenAndDistinguishExpression(canBeArrow)
|
1961
|
+
|
1962
|
+
case tt.bracketL:
|
1963
|
+
node = this.startNode()
|
1964
|
+
this.next()
|
1965
|
+
node.elements = this.parseExprList(tt.bracketR, true, true, refDestructuringErrors)
|
1966
|
+
return this.finishNode(node, "ArrayExpression")
|
1967
|
+
|
1968
|
+
case tt.braceL:
|
1969
|
+
return this.parseObj(false, refDestructuringErrors)
|
1970
|
+
|
1971
|
+
case tt._function:
|
1972
|
+
node = this.startNode()
|
1973
|
+
this.next()
|
1974
|
+
return this.parseFunction(node, false)
|
1975
|
+
|
1976
|
+
case tt._class:
|
1977
|
+
return this.parseClass(this.startNode(), false)
|
1978
|
+
|
1979
|
+
case tt._new:
|
1980
|
+
return this.parseNew()
|
1981
|
+
|
1982
|
+
case tt.backQuote:
|
1983
|
+
return this.parseTemplate()
|
1984
|
+
|
1985
|
+
default:
|
1986
|
+
this.unexpected()
|
1987
|
+
}
|
1988
|
+
}
|
1989
|
+
|
1990
|
+
pp$3.parseLiteral = function(value) {
|
1991
|
+
var node = this.startNode()
|
1992
|
+
node.value = value
|
1993
|
+
node.raw = this.input.slice(this.start, this.end)
|
1994
|
+
this.next()
|
1995
|
+
return this.finishNode(node, "Literal")
|
1996
|
+
}
|
1997
|
+
|
1998
|
+
pp$3.parseParenExpression = function() {
|
1999
|
+
this.expect(tt.parenL)
|
2000
|
+
var val = this.parseExpression()
|
2001
|
+
this.expect(tt.parenR)
|
2002
|
+
return val
|
2003
|
+
}
|
2004
|
+
|
2005
|
+
pp$3.parseParenAndDistinguishExpression = function(canBeArrow) {
|
2006
|
+
var this$1 = this;
|
2007
|
+
|
2008
|
+
var startPos = this.start, startLoc = this.startLoc, val, allowTrailingComma = this.options.ecmaVersion >= 8
|
2009
|
+
if (this.options.ecmaVersion >= 6) {
|
2010
|
+
this.next()
|
2011
|
+
|
2012
|
+
var innerStartPos = this.start, innerStartLoc = this.startLoc
|
2013
|
+
var exprList = [], first = true, lastIsComma = false
|
2014
|
+
var refDestructuringErrors = new DestructuringErrors, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, spreadStart, innerParenStart
|
2015
|
+
this.yieldPos = 0
|
2016
|
+
this.awaitPos = 0
|
2017
|
+
while (this.type !== tt.parenR) {
|
2018
|
+
first ? first = false : this$1.expect(tt.comma)
|
2019
|
+
if (allowTrailingComma && this$1.afterTrailingComma(tt.parenR, true)) {
|
2020
|
+
lastIsComma = true
|
2021
|
+
break
|
2022
|
+
} else if (this$1.type === tt.ellipsis) {
|
2023
|
+
spreadStart = this$1.start
|
2024
|
+
exprList.push(this$1.parseParenItem(this$1.parseRest()))
|
2025
|
+
if (this$1.type === tt.comma) this$1.raise(this$1.start, "Comma is not permitted after the rest element")
|
2026
|
+
break
|
2027
|
+
} else {
|
2028
|
+
if (this$1.type === tt.parenL && !innerParenStart) {
|
2029
|
+
innerParenStart = this$1.start
|
2030
|
+
}
|
2031
|
+
exprList.push(this$1.parseMaybeAssign(false, refDestructuringErrors, this$1.parseParenItem))
|
2032
|
+
}
|
2033
|
+
}
|
2034
|
+
var innerEndPos = this.start, innerEndLoc = this.startLoc
|
2035
|
+
this.expect(tt.parenR)
|
2036
|
+
|
2037
|
+
if (canBeArrow && !this.canInsertSemicolon() && this.eat(tt.arrow)) {
|
2038
|
+
this.checkPatternErrors(refDestructuringErrors, true)
|
2039
|
+
this.checkYieldAwaitInDefaultParams()
|
2040
|
+
if (innerParenStart) this.unexpected(innerParenStart)
|
2041
|
+
this.yieldPos = oldYieldPos
|
2042
|
+
this.awaitPos = oldAwaitPos
|
2043
|
+
return this.parseParenArrowList(startPos, startLoc, exprList)
|
2044
|
+
}
|
2045
|
+
|
2046
|
+
if (!exprList.length || lastIsComma) this.unexpected(this.lastTokStart)
|
2047
|
+
if (spreadStart) this.unexpected(spreadStart)
|
2048
|
+
this.checkExpressionErrors(refDestructuringErrors, true)
|
2049
|
+
this.yieldPos = oldYieldPos || this.yieldPos
|
2050
|
+
this.awaitPos = oldAwaitPos || this.awaitPos
|
2051
|
+
|
2052
|
+
if (exprList.length > 1) {
|
2053
|
+
val = this.startNodeAt(innerStartPos, innerStartLoc)
|
2054
|
+
val.expressions = exprList
|
2055
|
+
this.finishNodeAt(val, "SequenceExpression", innerEndPos, innerEndLoc)
|
2056
|
+
} else {
|
2057
|
+
val = exprList[0]
|
2058
|
+
}
|
2059
|
+
} else {
|
2060
|
+
val = this.parseParenExpression()
|
2061
|
+
}
|
2062
|
+
|
2063
|
+
if (this.options.preserveParens) {
|
2064
|
+
var par = this.startNodeAt(startPos, startLoc)
|
2065
|
+
par.expression = val
|
2066
|
+
return this.finishNode(par, "ParenthesizedExpression")
|
2067
|
+
} else {
|
2068
|
+
return val
|
2069
|
+
}
|
2070
|
+
}
|
2071
|
+
|
2072
|
+
pp$3.parseParenItem = function(item) {
|
2073
|
+
return item
|
2074
|
+
}
|
2075
|
+
|
2076
|
+
pp$3.parseParenArrowList = function(startPos, startLoc, exprList) {
|
2077
|
+
return this.parseArrowExpression(this.startNodeAt(startPos, startLoc), exprList)
|
2078
|
+
}
|
2079
|
+
|
2080
|
+
// New's precedence is slightly tricky. It must allow its argument to
|
2081
|
+
// be a `[]` or dot subscript expression, but not a call — at least,
|
2082
|
+
// not without wrapping it in parentheses. Thus, it uses the noCalls
|
2083
|
+
// argument to parseSubscripts to prevent it from consuming the
|
2084
|
+
// argument list.
|
2085
|
+
|
2086
|
+
var empty$1 = []
|
2087
|
+
|
2088
|
+
pp$3.parseNew = function() {
|
2089
|
+
var node = this.startNode()
|
2090
|
+
var meta = this.parseIdent(true)
|
2091
|
+
if (this.options.ecmaVersion >= 6 && this.eat(tt.dot)) {
|
2092
|
+
node.meta = meta
|
2093
|
+
node.property = this.parseIdent(true)
|
2094
|
+
if (node.property.name !== "target")
|
2095
|
+
this.raiseRecoverable(node.property.start, "The only valid meta property for new is new.target")
|
2096
|
+
if (!this.inFunction)
|
2097
|
+
this.raiseRecoverable(node.start, "new.target can only be used in functions")
|
2098
|
+
return this.finishNode(node, "MetaProperty")
|
2099
|
+
}
|
2100
|
+
var startPos = this.start, startLoc = this.startLoc
|
2101
|
+
node.callee = this.parseSubscripts(this.parseExprAtom(), startPos, startLoc, true)
|
2102
|
+
if (this.eat(tt.parenL)) node.arguments = this.parseExprList(tt.parenR, this.options.ecmaVersion >= 8, false)
|
2103
|
+
else node.arguments = empty$1
|
2104
|
+
return this.finishNode(node, "NewExpression")
|
2105
|
+
}
|
2106
|
+
|
2107
|
+
// Parse template expression.
|
2108
|
+
|
2109
|
+
pp$3.parseTemplateElement = function() {
|
2110
|
+
var elem = this.startNode()
|
2111
|
+
elem.value = {
|
2112
|
+
raw: this.input.slice(this.start, this.end).replace(/\r\n?/g, '\n'),
|
2113
|
+
cooked: this.value
|
2114
|
+
}
|
2115
|
+
this.next()
|
2116
|
+
elem.tail = this.type === tt.backQuote
|
2117
|
+
return this.finishNode(elem, "TemplateElement")
|
2118
|
+
}
|
2119
|
+
|
2120
|
+
pp$3.parseTemplate = function() {
|
2121
|
+
var this$1 = this;
|
2122
|
+
|
2123
|
+
var node = this.startNode()
|
2124
|
+
this.next()
|
2125
|
+
node.expressions = []
|
2126
|
+
var curElt = this.parseTemplateElement()
|
2127
|
+
node.quasis = [curElt]
|
2128
|
+
while (!curElt.tail) {
|
2129
|
+
this$1.expect(tt.dollarBraceL)
|
2130
|
+
node.expressions.push(this$1.parseExpression())
|
2131
|
+
this$1.expect(tt.braceR)
|
2132
|
+
node.quasis.push(curElt = this$1.parseTemplateElement())
|
2133
|
+
}
|
2134
|
+
this.next()
|
2135
|
+
return this.finishNode(node, "TemplateLiteral")
|
2136
|
+
}
|
2137
|
+
|
2138
|
+
// Parse an object literal or binding pattern.
|
2139
|
+
|
2140
|
+
pp$3.parseObj = function(isPattern, refDestructuringErrors) {
|
2141
|
+
var this$1 = this;
|
2142
|
+
|
2143
|
+
var node = this.startNode(), first = true, propHash = {}
|
2144
|
+
node.properties = []
|
2145
|
+
this.next()
|
2146
|
+
while (!this.eat(tt.braceR)) {
|
2147
|
+
if (!first) {
|
2148
|
+
this$1.expect(tt.comma)
|
2149
|
+
if (this$1.afterTrailingComma(tt.braceR)) break
|
2150
|
+
} else first = false
|
2151
|
+
|
2152
|
+
var prop = this$1.startNode(), isGenerator, isAsync, startPos, startLoc
|
2153
|
+
if (this$1.options.ecmaVersion >= 6) {
|
2154
|
+
prop.method = false
|
2155
|
+
prop.shorthand = false
|
2156
|
+
if (isPattern || refDestructuringErrors) {
|
2157
|
+
startPos = this$1.start
|
2158
|
+
startLoc = this$1.startLoc
|
2159
|
+
}
|
2160
|
+
if (!isPattern)
|
2161
|
+
isGenerator = this$1.eat(tt.star)
|
2162
|
+
}
|
2163
|
+
this$1.parsePropertyName(prop)
|
2164
|
+
if (!isPattern && this$1.options.ecmaVersion >= 8 && !isGenerator && !prop.computed &&
|
2165
|
+
prop.key.type === "Identifier" && prop.key.name === "async" && this$1.type !== tt.parenL &&
|
2166
|
+
this$1.type !== tt.colon && !this$1.canInsertSemicolon()) {
|
2167
|
+
isAsync = true
|
2168
|
+
this$1.parsePropertyName(prop, refDestructuringErrors)
|
2169
|
+
} else {
|
2170
|
+
isAsync = false
|
2171
|
+
}
|
2172
|
+
this$1.parsePropertyValue(prop, isPattern, isGenerator, isAsync, startPos, startLoc, refDestructuringErrors)
|
2173
|
+
this$1.checkPropClash(prop, propHash)
|
2174
|
+
node.properties.push(this$1.finishNode(prop, "Property"))
|
2175
|
+
}
|
2176
|
+
return this.finishNode(node, isPattern ? "ObjectPattern" : "ObjectExpression")
|
2177
|
+
}
|
2178
|
+
|
2179
|
+
pp$3.parsePropertyValue = function(prop, isPattern, isGenerator, isAsync, startPos, startLoc, refDestructuringErrors) {
|
2180
|
+
if ((isGenerator || isAsync) && this.type === tt.colon)
|
2181
|
+
this.unexpected()
|
2182
|
+
|
2183
|
+
if (this.eat(tt.colon)) {
|
2184
|
+
prop.value = isPattern ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(false, refDestructuringErrors)
|
2185
|
+
prop.kind = "init"
|
2186
|
+
} else if (this.options.ecmaVersion >= 6 && this.type === tt.parenL) {
|
2187
|
+
if (isPattern) this.unexpected()
|
2188
|
+
prop.kind = "init"
|
2189
|
+
prop.method = true
|
2190
|
+
prop.value = this.parseMethod(isGenerator, isAsync)
|
2191
|
+
} else if (this.options.ecmaVersion >= 5 && !prop.computed && prop.key.type === "Identifier" &&
|
2192
|
+
(prop.key.name === "get" || prop.key.name === "set") &&
|
2193
|
+
(this.type != tt.comma && this.type != tt.braceR)) {
|
2194
|
+
if (isGenerator || isAsync || isPattern) this.unexpected()
|
2195
|
+
prop.kind = prop.key.name
|
2196
|
+
this.parsePropertyName(prop)
|
2197
|
+
prop.value = this.parseMethod(false)
|
2198
|
+
var paramCount = prop.kind === "get" ? 0 : 1
|
2199
|
+
if (prop.value.params.length !== paramCount) {
|
2200
|
+
var start = prop.value.start
|
2201
|
+
if (prop.kind === "get")
|
2202
|
+
this.raiseRecoverable(start, "getter should have no params")
|
2203
|
+
else
|
2204
|
+
this.raiseRecoverable(start, "setter should have exactly one param")
|
2205
|
+
} else {
|
2206
|
+
if (prop.kind === "set" && prop.value.params[0].type === "RestElement")
|
2207
|
+
this.raiseRecoverable(prop.value.params[0].start, "Setter cannot use rest params")
|
2208
|
+
}
|
2209
|
+
} else if (this.options.ecmaVersion >= 6 && !prop.computed && prop.key.type === "Identifier") {
|
2210
|
+
if (this.keywords.test(prop.key.name) ||
|
2211
|
+
(this.strict ? this.reservedWordsStrict : this.reservedWords).test(prop.key.name) ||
|
2212
|
+
(this.inGenerator && prop.key.name == "yield") ||
|
2213
|
+
(this.inAsync && prop.key.name == "await"))
|
2214
|
+
this.raiseRecoverable(prop.key.start, "'" + prop.key.name + "' can not be used as shorthand property")
|
2215
|
+
prop.kind = "init"
|
2216
|
+
if (isPattern) {
|
2217
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key)
|
2218
|
+
} else if (this.type === tt.eq && refDestructuringErrors) {
|
2219
|
+
if (!refDestructuringErrors.shorthandAssign)
|
2220
|
+
refDestructuringErrors.shorthandAssign = this.start
|
2221
|
+
prop.value = this.parseMaybeDefault(startPos, startLoc, prop.key)
|
2222
|
+
} else {
|
2223
|
+
prop.value = prop.key
|
2224
|
+
}
|
2225
|
+
prop.shorthand = true
|
2226
|
+
} else this.unexpected()
|
2227
|
+
}
|
2228
|
+
|
2229
|
+
pp$3.parsePropertyName = function(prop) {
|
2230
|
+
if (this.options.ecmaVersion >= 6) {
|
2231
|
+
if (this.eat(tt.bracketL)) {
|
2232
|
+
prop.computed = true
|
2233
|
+
prop.key = this.parseMaybeAssign()
|
2234
|
+
this.expect(tt.bracketR)
|
2235
|
+
return prop.key
|
2236
|
+
} else {
|
2237
|
+
prop.computed = false
|
2238
|
+
}
|
2239
|
+
}
|
2240
|
+
return prop.key = this.type === tt.num || this.type === tt.string ? this.parseExprAtom() : this.parseIdent(true)
|
2241
|
+
}
|
2242
|
+
|
2243
|
+
// Initialize empty function node.
|
2244
|
+
|
2245
|
+
pp$3.initFunction = function(node) {
|
2246
|
+
node.id = null
|
2247
|
+
if (this.options.ecmaVersion >= 6) {
|
2248
|
+
node.generator = false
|
2249
|
+
node.expression = false
|
2250
|
+
}
|
2251
|
+
if (this.options.ecmaVersion >= 8)
|
2252
|
+
node.async = false
|
2253
|
+
}
|
2254
|
+
|
2255
|
+
// Parse object or class method.
|
2256
|
+
|
2257
|
+
pp$3.parseMethod = function(isGenerator, isAsync) {
|
2258
|
+
var node = this.startNode(), oldInGen = this.inGenerator, oldInAsync = this.inAsync, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos
|
2259
|
+
|
2260
|
+
this.initFunction(node)
|
2261
|
+
if (this.options.ecmaVersion >= 6)
|
2262
|
+
node.generator = isGenerator
|
2263
|
+
if (this.options.ecmaVersion >= 8)
|
2264
|
+
node.async = !!isAsync
|
2265
|
+
|
2266
|
+
this.inGenerator = node.generator
|
2267
|
+
this.inAsync = node.async
|
2268
|
+
this.yieldPos = 0
|
2269
|
+
this.awaitPos = 0
|
2270
|
+
|
2271
|
+
this.expect(tt.parenL)
|
2272
|
+
node.params = this.parseBindingList(tt.parenR, false, this.options.ecmaVersion >= 8)
|
2273
|
+
this.checkYieldAwaitInDefaultParams()
|
2274
|
+
this.parseFunctionBody(node, false)
|
2275
|
+
|
2276
|
+
this.inGenerator = oldInGen
|
2277
|
+
this.inAsync = oldInAsync
|
2278
|
+
this.yieldPos = oldYieldPos
|
2279
|
+
this.awaitPos = oldAwaitPos
|
2280
|
+
return this.finishNode(node, "FunctionExpression")
|
2281
|
+
}
|
2282
|
+
|
2283
|
+
// Parse arrow function expression with given parameters.
|
2284
|
+
|
2285
|
+
pp$3.parseArrowExpression = function(node, params, isAsync) {
|
2286
|
+
var oldInGen = this.inGenerator, oldInAsync = this.inAsync, oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos
|
2287
|
+
|
2288
|
+
this.initFunction(node)
|
2289
|
+
if (this.options.ecmaVersion >= 8)
|
2290
|
+
node.async = !!isAsync
|
2291
|
+
|
2292
|
+
this.inGenerator = false
|
2293
|
+
this.inAsync = node.async
|
2294
|
+
this.yieldPos = 0
|
2295
|
+
this.awaitPos = 0
|
2296
|
+
|
2297
|
+
node.params = this.toAssignableList(params, true)
|
2298
|
+
this.parseFunctionBody(node, true)
|
2299
|
+
|
2300
|
+
this.inGenerator = oldInGen
|
2301
|
+
this.inAsync = oldInAsync
|
2302
|
+
this.yieldPos = oldYieldPos
|
2303
|
+
this.awaitPos = oldAwaitPos
|
2304
|
+
return this.finishNode(node, "ArrowFunctionExpression")
|
2305
|
+
}
|
2306
|
+
|
2307
|
+
// Parse function body and check parameters.
|
2308
|
+
|
2309
|
+
pp$3.parseFunctionBody = function(node, isArrowFunction) {
|
2310
|
+
var isExpression = isArrowFunction && this.type !== tt.braceL
|
2311
|
+
|
2312
|
+
if (isExpression) {
|
2313
|
+
node.body = this.parseMaybeAssign()
|
2314
|
+
node.expression = true
|
2315
|
+
} else {
|
2316
|
+
// Start a new scope with regard to labels and the `inFunction`
|
2317
|
+
// flag (restore them to their old value afterwards).
|
2318
|
+
var oldInFunc = this.inFunction, oldLabels = this.labels
|
2319
|
+
this.inFunction = true; this.labels = []
|
2320
|
+
node.body = this.parseBlock(true)
|
2321
|
+
node.expression = false
|
2322
|
+
this.inFunction = oldInFunc; this.labels = oldLabels
|
2323
|
+
}
|
2324
|
+
|
2325
|
+
// If this is a strict mode function, verify that argument names
|
2326
|
+
// are not repeated, and it does not try to bind the words `eval`
|
2327
|
+
// or `arguments`.
|
2328
|
+
var useStrict = (!isExpression && node.body.body.length && this.isUseStrict(node.body.body[0])) ? node.body.body[0] : null
|
2329
|
+
if (useStrict && this.options.ecmaVersion >= 7 && !this.isSimpleParamList(node.params))
|
2330
|
+
this.raiseRecoverable(useStrict.start, "Illegal 'use strict' directive in function with non-simple parameter list")
|
2331
|
+
|
2332
|
+
if (this.strict || useStrict) {
|
2333
|
+
var oldStrict = this.strict
|
2334
|
+
this.strict = true
|
2335
|
+
if (node.id)
|
2336
|
+
this.checkLVal(node.id, true)
|
2337
|
+
this.checkParams(node)
|
2338
|
+
this.strict = oldStrict
|
2339
|
+
} else if (isArrowFunction || !this.isSimpleParamList(node.params)) {
|
2340
|
+
this.checkParams(node)
|
2341
|
+
}
|
2342
|
+
}
|
2343
|
+
|
2344
|
+
pp$3.isSimpleParamList = function(params) {
|
2345
|
+
for (var i = 0; i < params.length; i++)
|
2346
|
+
if (params[i].type !== "Identifier") return false
|
2347
|
+
return true
|
2348
|
+
}
|
2349
|
+
|
2350
|
+
// Checks function params for various disallowed patterns such as using "eval"
|
2351
|
+
// or "arguments" and duplicate parameters.
|
2352
|
+
|
2353
|
+
pp$3.checkParams = function(node) {
|
2354
|
+
var this$1 = this;
|
2355
|
+
|
2356
|
+
var nameHash = {}
|
2357
|
+
for (var i = 0; i < node.params.length; i++) this$1.checkLVal(node.params[i], true, nameHash)
|
2358
|
+
}
|
2359
|
+
|
2360
|
+
// Parses a comma-separated list of expressions, and returns them as
|
2361
|
+
// an array. `close` is the token type that ends the list, and
|
2362
|
+
// `allowEmpty` can be turned on to allow subsequent commas with
|
2363
|
+
// nothing in between them to be parsed as `null` (which is needed
|
2364
|
+
// for array literals).
|
2365
|
+
|
2366
|
+
pp$3.parseExprList = function(close, allowTrailingComma, allowEmpty, refDestructuringErrors) {
|
2367
|
+
var this$1 = this;
|
2368
|
+
|
2369
|
+
var elts = [], first = true
|
2370
|
+
while (!this.eat(close)) {
|
2371
|
+
if (!first) {
|
2372
|
+
this$1.expect(tt.comma)
|
2373
|
+
if (allowTrailingComma && this$1.afterTrailingComma(close)) break
|
2374
|
+
} else first = false
|
2375
|
+
|
2376
|
+
var elt
|
2377
|
+
if (allowEmpty && this$1.type === tt.comma)
|
2378
|
+
elt = null
|
2379
|
+
else if (this$1.type === tt.ellipsis) {
|
2380
|
+
elt = this$1.parseSpread(refDestructuringErrors)
|
2381
|
+
if (this$1.type === tt.comma && refDestructuringErrors && !refDestructuringErrors.trailingComma) {
|
2382
|
+
refDestructuringErrors.trailingComma = this$1.start
|
2383
|
+
}
|
2384
|
+
} else
|
2385
|
+
elt = this$1.parseMaybeAssign(false, refDestructuringErrors)
|
2386
|
+
elts.push(elt)
|
2387
|
+
}
|
2388
|
+
return elts
|
2389
|
+
}
|
2390
|
+
|
2391
|
+
// Parse the next token as an identifier. If `liberal` is true (used
|
2392
|
+
// when parsing properties), it will also convert keywords into
|
2393
|
+
// identifiers.
|
2394
|
+
|
2395
|
+
pp$3.parseIdent = function(liberal) {
|
2396
|
+
var node = this.startNode()
|
2397
|
+
if (liberal && this.options.allowReserved == "never") liberal = false
|
2398
|
+
if (this.type === tt.name) {
|
2399
|
+
if (!liberal && (this.strict ? this.reservedWordsStrict : this.reservedWords).test(this.value) &&
|
2400
|
+
(this.options.ecmaVersion >= 6 ||
|
2401
|
+
this.input.slice(this.start, this.end).indexOf("\\") == -1))
|
2402
|
+
this.raiseRecoverable(this.start, "The keyword '" + this.value + "' is reserved")
|
2403
|
+
if (this.inGenerator && this.value === "yield")
|
2404
|
+
this.raiseRecoverable(this.start, "Can not use 'yield' as identifier inside a generator")
|
2405
|
+
if (this.inAsync && this.value === "await")
|
2406
|
+
this.raiseRecoverable(this.start, "Can not use 'await' as identifier inside an async function")
|
2407
|
+
node.name = this.value
|
2408
|
+
} else if (liberal && this.type.keyword) {
|
2409
|
+
node.name = this.type.keyword
|
2410
|
+
} else {
|
2411
|
+
this.unexpected()
|
2412
|
+
}
|
2413
|
+
this.next()
|
2414
|
+
return this.finishNode(node, "Identifier")
|
2415
|
+
}
|
2416
|
+
|
2417
|
+
// Parses yield expression inside generator.
|
2418
|
+
|
2419
|
+
pp$3.parseYield = function() {
|
2420
|
+
if (!this.yieldPos) this.yieldPos = this.start
|
2421
|
+
|
2422
|
+
var node = this.startNode()
|
2423
|
+
this.next()
|
2424
|
+
if (this.type == tt.semi || this.canInsertSemicolon() || (this.type != tt.star && !this.type.startsExpr)) {
|
2425
|
+
node.delegate = false
|
2426
|
+
node.argument = null
|
2427
|
+
} else {
|
2428
|
+
node.delegate = this.eat(tt.star)
|
2429
|
+
node.argument = this.parseMaybeAssign()
|
2430
|
+
}
|
2431
|
+
return this.finishNode(node, "YieldExpression")
|
2432
|
+
}
|
2433
|
+
|
2434
|
+
pp$3.parseAwait = function() {
|
2435
|
+
if (!this.awaitPos) this.awaitPos = this.start
|
2436
|
+
|
2437
|
+
var node = this.startNode()
|
2438
|
+
this.next()
|
2439
|
+
node.argument = this.parseMaybeUnary(null, true)
|
2440
|
+
return this.finishNode(node, "AwaitExpression")
|
2441
|
+
}
|
2442
|
+
|
2443
|
+
var pp$4 = Parser.prototype
|
2444
|
+
|
2445
|
+
// This function is used to raise exceptions on parse errors. It
|
2446
|
+
// takes an offset integer (into the current `input`) to indicate
|
2447
|
+
// the location of the error, attaches the position to the end
|
2448
|
+
// of the error message, and then raises a `SyntaxError` with that
|
2449
|
+
// message.
|
2450
|
+
|
2451
|
+
pp$4.raise = function(pos, message) {
|
2452
|
+
var loc = getLineInfo(this.input, pos)
|
2453
|
+
message += " (" + loc.line + ":" + loc.column + ")"
|
2454
|
+
var err = new SyntaxError(message)
|
2455
|
+
err.pos = pos; err.loc = loc; err.raisedAt = this.pos
|
2456
|
+
throw err
|
2457
|
+
}
|
2458
|
+
|
2459
|
+
pp$4.raiseRecoverable = pp$4.raise
|
2460
|
+
|
2461
|
+
pp$4.curPosition = function() {
|
2462
|
+
if (this.options.locations) {
|
2463
|
+
return new Position(this.curLine, this.pos - this.lineStart)
|
2464
|
+
}
|
2465
|
+
}
|
2466
|
+
|
2467
|
+
var Node = function Node(parser, pos, loc) {
|
2468
|
+
this.type = ""
|
2469
|
+
this.start = pos
|
2470
|
+
this.end = 0
|
2471
|
+
if (parser.options.locations)
|
2472
|
+
this.loc = new SourceLocation(parser, loc)
|
2473
|
+
if (parser.options.directSourceFile)
|
2474
|
+
this.sourceFile = parser.options.directSourceFile
|
2475
|
+
if (parser.options.ranges)
|
2476
|
+
this.range = [pos, 0]
|
2477
|
+
};
|
2478
|
+
|
2479
|
+
// Start an AST node, attaching a start offset.
|
2480
|
+
|
2481
|
+
var pp$5 = Parser.prototype
|
2482
|
+
|
2483
|
+
pp$5.startNode = function() {
|
2484
|
+
return new Node(this, this.start, this.startLoc)
|
2485
|
+
}
|
2486
|
+
|
2487
|
+
pp$5.startNodeAt = function(pos, loc) {
|
2488
|
+
return new Node(this, pos, loc)
|
2489
|
+
}
|
2490
|
+
|
2491
|
+
// Finish an AST node, adding `type` and `end` properties.
|
2492
|
+
|
2493
|
+
function finishNodeAt(node, type, pos, loc) {
|
2494
|
+
node.type = type
|
2495
|
+
node.end = pos
|
2496
|
+
if (this.options.locations)
|
2497
|
+
node.loc.end = loc
|
2498
|
+
if (this.options.ranges)
|
2499
|
+
node.range[1] = pos
|
2500
|
+
return node
|
2501
|
+
}
|
2502
|
+
|
2503
|
+
pp$5.finishNode = function(node, type) {
|
2504
|
+
return finishNodeAt.call(this, node, type, this.lastTokEnd, this.lastTokEndLoc)
|
2505
|
+
}
|
2506
|
+
|
2507
|
+
// Finish node at given position
|
2508
|
+
|
2509
|
+
pp$5.finishNodeAt = function(node, type, pos, loc) {
|
2510
|
+
return finishNodeAt.call(this, node, type, pos, loc)
|
2511
|
+
}
|
2512
|
+
|
2513
|
+
// The algorithm used to determine whether a regexp can appear at a
|
2514
|
+
// given point in the program is loosely based on sweet.js' approach.
|
2515
|
+
// See https://github.com/mozilla/sweet.js/wiki/design
|
2516
|
+
|
2517
|
+
var TokContext = function TokContext(token, isExpr, preserveSpace, override) {
|
2518
|
+
this.token = token
|
2519
|
+
this.isExpr = !!isExpr
|
2520
|
+
this.preserveSpace = !!preserveSpace
|
2521
|
+
this.override = override
|
2522
|
+
};
|
2523
|
+
|
2524
|
+
var types = {
|
2525
|
+
b_stat: new TokContext("{", false),
|
2526
|
+
b_expr: new TokContext("{", true),
|
2527
|
+
b_tmpl: new TokContext("${", true),
|
2528
|
+
p_stat: new TokContext("(", false),
|
2529
|
+
p_expr: new TokContext("(", true),
|
2530
|
+
q_tmpl: new TokContext("`", true, true, function (p) { return p.readTmplToken(); }),
|
2531
|
+
f_expr: new TokContext("function", true)
|
2532
|
+
}
|
2533
|
+
|
2534
|
+
var pp$6 = Parser.prototype
|
2535
|
+
|
2536
|
+
pp$6.initialContext = function() {
|
2537
|
+
return [types.b_stat]
|
2538
|
+
}
|
2539
|
+
|
2540
|
+
pp$6.braceIsBlock = function(prevType) {
|
2541
|
+
if (prevType === tt.colon) {
|
2542
|
+
var parent = this.curContext()
|
2543
|
+
if (parent === types.b_stat || parent === types.b_expr)
|
2544
|
+
return !parent.isExpr
|
2545
|
+
}
|
2546
|
+
if (prevType === tt._return)
|
2547
|
+
return lineBreak.test(this.input.slice(this.lastTokEnd, this.start))
|
2548
|
+
if (prevType === tt._else || prevType === tt.semi || prevType === tt.eof || prevType === tt.parenR)
|
2549
|
+
return true
|
2550
|
+
if (prevType == tt.braceL)
|
2551
|
+
return this.curContext() === types.b_stat
|
2552
|
+
return !this.exprAllowed
|
2553
|
+
}
|
2554
|
+
|
2555
|
+
pp$6.updateContext = function(prevType) {
|
2556
|
+
var update, type = this.type
|
2557
|
+
if (type.keyword && prevType == tt.dot)
|
2558
|
+
this.exprAllowed = false
|
2559
|
+
else if (update = type.updateContext)
|
2560
|
+
update.call(this, prevType)
|
2561
|
+
else
|
2562
|
+
this.exprAllowed = type.beforeExpr
|
2563
|
+
}
|
2564
|
+
|
2565
|
+
// Token-specific context update code
|
2566
|
+
|
2567
|
+
tt.parenR.updateContext = tt.braceR.updateContext = function() {
|
2568
|
+
if (this.context.length == 1) {
|
2569
|
+
this.exprAllowed = true
|
2570
|
+
return
|
2571
|
+
}
|
2572
|
+
var out = this.context.pop()
|
2573
|
+
if (out === types.b_stat && this.curContext() === types.f_expr) {
|
2574
|
+
this.context.pop()
|
2575
|
+
this.exprAllowed = false
|
2576
|
+
} else if (out === types.b_tmpl) {
|
2577
|
+
this.exprAllowed = true
|
2578
|
+
} else {
|
2579
|
+
this.exprAllowed = !out.isExpr
|
2580
|
+
}
|
2581
|
+
}
|
2582
|
+
|
2583
|
+
tt.braceL.updateContext = function(prevType) {
|
2584
|
+
this.context.push(this.braceIsBlock(prevType) ? types.b_stat : types.b_expr)
|
2585
|
+
this.exprAllowed = true
|
2586
|
+
}
|
2587
|
+
|
2588
|
+
tt.dollarBraceL.updateContext = function() {
|
2589
|
+
this.context.push(types.b_tmpl)
|
2590
|
+
this.exprAllowed = true
|
2591
|
+
}
|
2592
|
+
|
2593
|
+
tt.parenL.updateContext = function(prevType) {
|
2594
|
+
var statementParens = prevType === tt._if || prevType === tt._for || prevType === tt._with || prevType === tt._while
|
2595
|
+
this.context.push(statementParens ? types.p_stat : types.p_expr)
|
2596
|
+
this.exprAllowed = true
|
2597
|
+
}
|
2598
|
+
|
2599
|
+
tt.incDec.updateContext = function() {
|
2600
|
+
// tokExprAllowed stays unchanged
|
2601
|
+
}
|
2602
|
+
|
2603
|
+
tt._function.updateContext = function(prevType) {
|
2604
|
+
if (prevType.beforeExpr && prevType !== tt.semi && prevType !== tt._else &&
|
2605
|
+
!((prevType === tt.colon || prevType === tt.braceL) && this.curContext() === types.b_stat))
|
2606
|
+
this.context.push(types.f_expr)
|
2607
|
+
this.exprAllowed = false
|
2608
|
+
}
|
2609
|
+
|
2610
|
+
tt.backQuote.updateContext = function() {
|
2611
|
+
if (this.curContext() === types.q_tmpl)
|
2612
|
+
this.context.pop()
|
2613
|
+
else
|
2614
|
+
this.context.push(types.q_tmpl)
|
2615
|
+
this.exprAllowed = false
|
2616
|
+
}
|
2617
|
+
|
2618
|
+
// Object type used to represent tokens. Note that normally, tokens
|
2619
|
+
// simply exist as properties on the parser object. This is only
|
2620
|
+
// used for the onToken callback and the external tokenizer.
|
2621
|
+
|
2622
|
+
var Token = function Token(p) {
|
2623
|
+
this.type = p.type
|
2624
|
+
this.value = p.value
|
2625
|
+
this.start = p.start
|
2626
|
+
this.end = p.end
|
2627
|
+
if (p.options.locations)
|
2628
|
+
this.loc = new SourceLocation(p, p.startLoc, p.endLoc)
|
2629
|
+
if (p.options.ranges)
|
2630
|
+
this.range = [p.start, p.end]
|
2631
|
+
};
|
2632
|
+
|
2633
|
+
// ## Tokenizer
|
2634
|
+
|
2635
|
+
var pp$7 = Parser.prototype
|
2636
|
+
|
2637
|
+
// Are we running under Rhino?
|
2638
|
+
var isRhino = typeof Packages == "object" && Object.prototype.toString.call(Packages) == "[object JavaPackage]"
|
2639
|
+
|
2640
|
+
// Move to the next token
|
2641
|
+
|
2642
|
+
pp$7.next = function() {
|
2643
|
+
if (this.options.onToken)
|
2644
|
+
this.options.onToken(new Token(this))
|
2645
|
+
|
2646
|
+
this.lastTokEnd = this.end
|
2647
|
+
this.lastTokStart = this.start
|
2648
|
+
this.lastTokEndLoc = this.endLoc
|
2649
|
+
this.lastTokStartLoc = this.startLoc
|
2650
|
+
this.nextToken()
|
2651
|
+
}
|
2652
|
+
|
2653
|
+
pp$7.getToken = function() {
|
2654
|
+
this.next()
|
2655
|
+
return new Token(this)
|
2656
|
+
}
|
2657
|
+
|
2658
|
+
// If we're in an ES6 environment, make parsers iterable
|
2659
|
+
if (typeof Symbol !== "undefined")
|
2660
|
+
pp$7[Symbol.iterator] = function () {
|
2661
|
+
var self = this
|
2662
|
+
return {next: function () {
|
2663
|
+
var token = self.getToken()
|
2664
|
+
return {
|
2665
|
+
done: token.type === tt.eof,
|
2666
|
+
value: token
|
2667
|
+
}
|
2668
|
+
}}
|
2669
|
+
}
|
2670
|
+
|
2671
|
+
// Toggle strict mode. Re-reads the next number or string to please
|
2672
|
+
// pedantic tests (`"use strict"; 010;` should fail).
|
2673
|
+
|
2674
|
+
pp$7.setStrict = function(strict) {
|
2675
|
+
var this$1 = this;
|
2676
|
+
|
2677
|
+
this.strict = strict
|
2678
|
+
if (this.type !== tt.num && this.type !== tt.string) return
|
2679
|
+
this.pos = this.start
|
2680
|
+
if (this.options.locations) {
|
2681
|
+
while (this.pos < this.lineStart) {
|
2682
|
+
this$1.lineStart = this$1.input.lastIndexOf("\n", this$1.lineStart - 2) + 1
|
2683
|
+
--this$1.curLine
|
2684
|
+
}
|
2685
|
+
}
|
2686
|
+
this.nextToken()
|
2687
|
+
}
|
2688
|
+
|
2689
|
+
pp$7.curContext = function() {
|
2690
|
+
return this.context[this.context.length - 1]
|
2691
|
+
}
|
2692
|
+
|
2693
|
+
// Read a single token, updating the parser object's token-related
|
2694
|
+
// properties.
|
2695
|
+
|
2696
|
+
pp$7.nextToken = function() {
|
2697
|
+
var curContext = this.curContext()
|
2698
|
+
if (!curContext || !curContext.preserveSpace) this.skipSpace()
|
2699
|
+
|
2700
|
+
this.start = this.pos
|
2701
|
+
if (this.options.locations) this.startLoc = this.curPosition()
|
2702
|
+
if (this.pos >= this.input.length) return this.finishToken(tt.eof)
|
2703
|
+
|
2704
|
+
if (curContext.override) return curContext.override(this)
|
2705
|
+
else this.readToken(this.fullCharCodeAtPos())
|
2706
|
+
}
|
2707
|
+
|
2708
|
+
pp$7.readToken = function(code) {
|
2709
|
+
// Identifier or keyword. '\uXXXX' sequences are allowed in
|
2710
|
+
// identifiers, so '\' also dispatches to that.
|
2711
|
+
if (isIdentifierStart(code, this.options.ecmaVersion >= 6) || code === 92 /* '\' */)
|
2712
|
+
return this.readWord()
|
2713
|
+
|
2714
|
+
return this.getTokenFromCode(code)
|
2715
|
+
}
|
2716
|
+
|
2717
|
+
pp$7.fullCharCodeAtPos = function() {
|
2718
|
+
var code = this.input.charCodeAt(this.pos)
|
2719
|
+
if (code <= 0xd7ff || code >= 0xe000) return code
|
2720
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2721
|
+
return (code << 10) + next - 0x35fdc00
|
2722
|
+
}
|
2723
|
+
|
2724
|
+
pp$7.skipBlockComment = function() {
|
2725
|
+
var this$1 = this;
|
2726
|
+
|
2727
|
+
var startLoc = this.options.onComment && this.curPosition()
|
2728
|
+
var start = this.pos, end = this.input.indexOf("*/", this.pos += 2)
|
2729
|
+
if (end === -1) this.raise(this.pos - 2, "Unterminated comment")
|
2730
|
+
this.pos = end + 2
|
2731
|
+
if (this.options.locations) {
|
2732
|
+
lineBreakG.lastIndex = start
|
2733
|
+
var match
|
2734
|
+
while ((match = lineBreakG.exec(this.input)) && match.index < this.pos) {
|
2735
|
+
++this$1.curLine
|
2736
|
+
this$1.lineStart = match.index + match[0].length
|
2737
|
+
}
|
2738
|
+
}
|
2739
|
+
if (this.options.onComment)
|
2740
|
+
this.options.onComment(true, this.input.slice(start + 2, end), start, this.pos,
|
2741
|
+
startLoc, this.curPosition())
|
2742
|
+
}
|
2743
|
+
|
2744
|
+
pp$7.skipLineComment = function(startSkip) {
|
2745
|
+
var this$1 = this;
|
2746
|
+
|
2747
|
+
var start = this.pos
|
2748
|
+
var startLoc = this.options.onComment && this.curPosition()
|
2749
|
+
var ch = this.input.charCodeAt(this.pos+=startSkip)
|
2750
|
+
while (this.pos < this.input.length && ch !== 10 && ch !== 13 && ch !== 8232 && ch !== 8233) {
|
2751
|
+
++this$1.pos
|
2752
|
+
ch = this$1.input.charCodeAt(this$1.pos)
|
2753
|
+
}
|
2754
|
+
if (this.options.onComment)
|
2755
|
+
this.options.onComment(false, this.input.slice(start + startSkip, this.pos), start, this.pos,
|
2756
|
+
startLoc, this.curPosition())
|
2757
|
+
}
|
2758
|
+
|
2759
|
+
// Called at the start of the parse and after every token. Skips
|
2760
|
+
// whitespace and comments, and.
|
2761
|
+
|
2762
|
+
pp$7.skipSpace = function() {
|
2763
|
+
var this$1 = this;
|
2764
|
+
|
2765
|
+
loop: while (this.pos < this.input.length) {
|
2766
|
+
var ch = this$1.input.charCodeAt(this$1.pos)
|
2767
|
+
switch (ch) {
|
2768
|
+
case 32: case 160: // ' '
|
2769
|
+
++this$1.pos
|
2770
|
+
break
|
2771
|
+
case 13:
|
2772
|
+
if (this$1.input.charCodeAt(this$1.pos + 1) === 10) {
|
2773
|
+
++this$1.pos
|
2774
|
+
}
|
2775
|
+
case 10: case 8232: case 8233:
|
2776
|
+
++this$1.pos
|
2777
|
+
if (this$1.options.locations) {
|
2778
|
+
++this$1.curLine
|
2779
|
+
this$1.lineStart = this$1.pos
|
2780
|
+
}
|
2781
|
+
break
|
2782
|
+
case 47: // '/'
|
2783
|
+
switch (this$1.input.charCodeAt(this$1.pos + 1)) {
|
2784
|
+
case 42: // '*'
|
2785
|
+
this$1.skipBlockComment()
|
2786
|
+
break
|
2787
|
+
case 47:
|
2788
|
+
this$1.skipLineComment(2)
|
2789
|
+
break
|
2790
|
+
default:
|
2791
|
+
break loop
|
2792
|
+
}
|
2793
|
+
break
|
2794
|
+
default:
|
2795
|
+
if (ch > 8 && ch < 14 || ch >= 5760 && nonASCIIwhitespace.test(String.fromCharCode(ch))) {
|
2796
|
+
++this$1.pos
|
2797
|
+
} else {
|
2798
|
+
break loop
|
2799
|
+
}
|
2800
|
+
}
|
2801
|
+
}
|
2802
|
+
}
|
2803
|
+
|
2804
|
+
// Called at the end of every token. Sets `end`, `val`, and
|
2805
|
+
// maintains `context` and `exprAllowed`, and skips the space after
|
2806
|
+
// the token, so that the next one's `start` will point at the
|
2807
|
+
// right position.
|
2808
|
+
|
2809
|
+
pp$7.finishToken = function(type, val) {
|
2810
|
+
this.end = this.pos
|
2811
|
+
if (this.options.locations) this.endLoc = this.curPosition()
|
2812
|
+
var prevType = this.type
|
2813
|
+
this.type = type
|
2814
|
+
this.value = val
|
2815
|
+
|
2816
|
+
this.updateContext(prevType)
|
2817
|
+
}
|
2818
|
+
|
2819
|
+
// ### Token reading
|
2820
|
+
|
2821
|
+
// This is the function that is called to fetch the next token. It
|
2822
|
+
// is somewhat obscure, because it works in character codes rather
|
2823
|
+
// than characters, and because operator parsing has been inlined
|
2824
|
+
// into it.
|
2825
|
+
//
|
2826
|
+
// All in the name of speed.
|
2827
|
+
//
|
2828
|
+
pp$7.readToken_dot = function() {
|
2829
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2830
|
+
if (next >= 48 && next <= 57) return this.readNumber(true)
|
2831
|
+
var next2 = this.input.charCodeAt(this.pos + 2)
|
2832
|
+
if (this.options.ecmaVersion >= 6 && next === 46 && next2 === 46) { // 46 = dot '.'
|
2833
|
+
this.pos += 3
|
2834
|
+
return this.finishToken(tt.ellipsis)
|
2835
|
+
} else {
|
2836
|
+
++this.pos
|
2837
|
+
return this.finishToken(tt.dot)
|
2838
|
+
}
|
2839
|
+
}
|
2840
|
+
|
2841
|
+
pp$7.readToken_slash = function() { // '/'
|
2842
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2843
|
+
if (this.exprAllowed) {++this.pos; return this.readRegexp()}
|
2844
|
+
if (next === 61) return this.finishOp(tt.assign, 2)
|
2845
|
+
return this.finishOp(tt.slash, 1)
|
2846
|
+
}
|
2847
|
+
|
2848
|
+
pp$7.readToken_mult_modulo_exp = function(code) { // '%*'
|
2849
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2850
|
+
var size = 1
|
2851
|
+
var tokentype = code === 42 ? tt.star : tt.modulo
|
2852
|
+
|
2853
|
+
// exponentiation operator ** and **=
|
2854
|
+
if (this.options.ecmaVersion >= 7 && next === 42) {
|
2855
|
+
++size
|
2856
|
+
tokentype = tt.starstar
|
2857
|
+
next = this.input.charCodeAt(this.pos + 2)
|
2858
|
+
}
|
2859
|
+
|
2860
|
+
if (next === 61) return this.finishOp(tt.assign, size + 1)
|
2861
|
+
return this.finishOp(tokentype, size)
|
2862
|
+
}
|
2863
|
+
|
2864
|
+
pp$7.readToken_pipe_amp = function(code) { // '|&'
|
2865
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2866
|
+
if (next === code) return this.finishOp(code === 124 ? tt.logicalOR : tt.logicalAND, 2)
|
2867
|
+
if (next === 61) return this.finishOp(tt.assign, 2)
|
2868
|
+
return this.finishOp(code === 124 ? tt.bitwiseOR : tt.bitwiseAND, 1)
|
2869
|
+
}
|
2870
|
+
|
2871
|
+
pp$7.readToken_caret = function() { // '^'
|
2872
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2873
|
+
if (next === 61) return this.finishOp(tt.assign, 2)
|
2874
|
+
return this.finishOp(tt.bitwiseXOR, 1)
|
2875
|
+
}
|
2876
|
+
|
2877
|
+
pp$7.readToken_plus_min = function(code) { // '+-'
|
2878
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2879
|
+
if (next === code) {
|
2880
|
+
if (next == 45 && this.input.charCodeAt(this.pos + 2) == 62 &&
|
2881
|
+
lineBreak.test(this.input.slice(this.lastTokEnd, this.pos))) {
|
2882
|
+
// A `-->` line comment
|
2883
|
+
this.skipLineComment(3)
|
2884
|
+
this.skipSpace()
|
2885
|
+
return this.nextToken()
|
2886
|
+
}
|
2887
|
+
return this.finishOp(tt.incDec, 2)
|
2888
|
+
}
|
2889
|
+
if (next === 61) return this.finishOp(tt.assign, 2)
|
2890
|
+
return this.finishOp(tt.plusMin, 1)
|
2891
|
+
}
|
2892
|
+
|
2893
|
+
pp$7.readToken_lt_gt = function(code) { // '<>'
|
2894
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2895
|
+
var size = 1
|
2896
|
+
if (next === code) {
|
2897
|
+
size = code === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2
|
2898
|
+
if (this.input.charCodeAt(this.pos + size) === 61) return this.finishOp(tt.assign, size + 1)
|
2899
|
+
return this.finishOp(tt.bitShift, size)
|
2900
|
+
}
|
2901
|
+
if (next == 33 && code == 60 && this.input.charCodeAt(this.pos + 2) == 45 &&
|
2902
|
+
this.input.charCodeAt(this.pos + 3) == 45) {
|
2903
|
+
if (this.inModule) this.unexpected()
|
2904
|
+
// `<!--`, an XML-style comment that should be interpreted as a line comment
|
2905
|
+
this.skipLineComment(4)
|
2906
|
+
this.skipSpace()
|
2907
|
+
return this.nextToken()
|
2908
|
+
}
|
2909
|
+
if (next === 61) size = 2
|
2910
|
+
return this.finishOp(tt.relational, size)
|
2911
|
+
}
|
2912
|
+
|
2913
|
+
pp$7.readToken_eq_excl = function(code) { // '=!'
|
2914
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2915
|
+
if (next === 61) return this.finishOp(tt.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2)
|
2916
|
+
if (code === 61 && next === 62 && this.options.ecmaVersion >= 6) { // '=>'
|
2917
|
+
this.pos += 2
|
2918
|
+
return this.finishToken(tt.arrow)
|
2919
|
+
}
|
2920
|
+
return this.finishOp(code === 61 ? tt.eq : tt.prefix, 1)
|
2921
|
+
}
|
2922
|
+
|
2923
|
+
pp$7.getTokenFromCode = function(code) {
|
2924
|
+
switch (code) {
|
2925
|
+
// The interpretation of a dot depends on whether it is followed
|
2926
|
+
// by a digit or another two dots.
|
2927
|
+
case 46: // '.'
|
2928
|
+
return this.readToken_dot()
|
2929
|
+
|
2930
|
+
// Punctuation tokens.
|
2931
|
+
case 40: ++this.pos; return this.finishToken(tt.parenL)
|
2932
|
+
case 41: ++this.pos; return this.finishToken(tt.parenR)
|
2933
|
+
case 59: ++this.pos; return this.finishToken(tt.semi)
|
2934
|
+
case 44: ++this.pos; return this.finishToken(tt.comma)
|
2935
|
+
case 91: ++this.pos; return this.finishToken(tt.bracketL)
|
2936
|
+
case 93: ++this.pos; return this.finishToken(tt.bracketR)
|
2937
|
+
case 123: ++this.pos; return this.finishToken(tt.braceL)
|
2938
|
+
case 125: ++this.pos; return this.finishToken(tt.braceR)
|
2939
|
+
case 58: ++this.pos; return this.finishToken(tt.colon)
|
2940
|
+
case 63: ++this.pos; return this.finishToken(tt.question)
|
2941
|
+
|
2942
|
+
case 96: // '`'
|
2943
|
+
if (this.options.ecmaVersion < 6) break
|
2944
|
+
++this.pos
|
2945
|
+
return this.finishToken(tt.backQuote)
|
2946
|
+
|
2947
|
+
case 48: // '0'
|
2948
|
+
var next = this.input.charCodeAt(this.pos + 1)
|
2949
|
+
if (next === 120 || next === 88) return this.readRadixNumber(16) // '0x', '0X' - hex number
|
2950
|
+
if (this.options.ecmaVersion >= 6) {
|
2951
|
+
if (next === 111 || next === 79) return this.readRadixNumber(8) // '0o', '0O' - octal number
|
2952
|
+
if (next === 98 || next === 66) return this.readRadixNumber(2) // '0b', '0B' - binary number
|
2953
|
+
}
|
2954
|
+
// Anything else beginning with a digit is an integer, octal
|
2955
|
+
// number, or float.
|
2956
|
+
case 49: case 50: case 51: case 52: case 53: case 54: case 55: case 56: case 57: // 1-9
|
2957
|
+
return this.readNumber(false)
|
2958
|
+
|
2959
|
+
// Quotes produce strings.
|
2960
|
+
case 34: case 39: // '"', "'"
|
2961
|
+
return this.readString(code)
|
2962
|
+
|
2963
|
+
// Operators are parsed inline in tiny state machines. '=' (61) is
|
2964
|
+
// often referred to. `finishOp` simply skips the amount of
|
2965
|
+
// characters it is given as second argument, and returns a token
|
2966
|
+
// of the type given by its first argument.
|
2967
|
+
|
2968
|
+
case 47: // '/'
|
2969
|
+
return this.readToken_slash()
|
2970
|
+
|
2971
|
+
case 37: case 42: // '%*'
|
2972
|
+
return this.readToken_mult_modulo_exp(code)
|
2973
|
+
|
2974
|
+
case 124: case 38: // '|&'
|
2975
|
+
return this.readToken_pipe_amp(code)
|
2976
|
+
|
2977
|
+
case 94: // '^'
|
2978
|
+
return this.readToken_caret()
|
2979
|
+
|
2980
|
+
case 43: case 45: // '+-'
|
2981
|
+
return this.readToken_plus_min(code)
|
2982
|
+
|
2983
|
+
case 60: case 62: // '<>'
|
2984
|
+
return this.readToken_lt_gt(code)
|
2985
|
+
|
2986
|
+
case 61: case 33: // '=!'
|
2987
|
+
return this.readToken_eq_excl(code)
|
2988
|
+
|
2989
|
+
case 126: // '~'
|
2990
|
+
return this.finishOp(tt.prefix, 1)
|
2991
|
+
}
|
2992
|
+
|
2993
|
+
this.raise(this.pos, "Unexpected character '" + codePointToString(code) + "'")
|
2994
|
+
}
|
2995
|
+
|
2996
|
+
pp$7.finishOp = function(type, size) {
|
2997
|
+
var str = this.input.slice(this.pos, this.pos + size)
|
2998
|
+
this.pos += size
|
2999
|
+
return this.finishToken(type, str)
|
3000
|
+
}
|
3001
|
+
|
3002
|
+
// Parse a regular expression. Some context-awareness is necessary,
|
3003
|
+
// since a '/' inside a '[]' set does not end the expression.
|
3004
|
+
|
3005
|
+
function tryCreateRegexp(src, flags, throwErrorAt, parser) {
|
3006
|
+
try {
|
3007
|
+
return new RegExp(src, flags)
|
3008
|
+
} catch (e) {
|
3009
|
+
if (throwErrorAt !== undefined) {
|
3010
|
+
if (e instanceof SyntaxError) parser.raise(throwErrorAt, "Error parsing regular expression: " + e.message)
|
3011
|
+
throw e
|
3012
|
+
}
|
3013
|
+
}
|
3014
|
+
}
|
3015
|
+
|
3016
|
+
var regexpUnicodeSupport = !!tryCreateRegexp("\uffff", "u")
|
3017
|
+
|
3018
|
+
pp$7.readRegexp = function() {
|
3019
|
+
var this$1 = this;
|
3020
|
+
|
3021
|
+
var escaped, inClass, start = this.pos
|
3022
|
+
for (;;) {
|
3023
|
+
if (this$1.pos >= this$1.input.length) this$1.raise(start, "Unterminated regular expression")
|
3024
|
+
var ch = this$1.input.charAt(this$1.pos)
|
3025
|
+
if (lineBreak.test(ch)) this$1.raise(start, "Unterminated regular expression")
|
3026
|
+
if (!escaped) {
|
3027
|
+
if (ch === "[") inClass = true
|
3028
|
+
else if (ch === "]" && inClass) inClass = false
|
3029
|
+
else if (ch === "/" && !inClass) break
|
3030
|
+
escaped = ch === "\\"
|
3031
|
+
} else escaped = false
|
3032
|
+
++this$1.pos
|
3033
|
+
}
|
3034
|
+
var content = this.input.slice(start, this.pos)
|
3035
|
+
++this.pos
|
3036
|
+
// Need to use `readWord1` because '\uXXXX' sequences are allowed
|
3037
|
+
// here (don't ask).
|
3038
|
+
var mods = this.readWord1()
|
3039
|
+
var tmp = content, tmpFlags = ""
|
3040
|
+
if (mods) {
|
3041
|
+
var validFlags = /^[gim]*$/
|
3042
|
+
if (this.options.ecmaVersion >= 6) validFlags = /^[gimuy]*$/
|
3043
|
+
if (!validFlags.test(mods)) this.raise(start, "Invalid regular expression flag")
|
3044
|
+
if (mods.indexOf("u") >= 0) {
|
3045
|
+
if (regexpUnicodeSupport) {
|
3046
|
+
tmpFlags = "u"
|
3047
|
+
} else {
|
3048
|
+
// Replace each astral symbol and every Unicode escape sequence that
|
3049
|
+
// possibly represents an astral symbol or a paired surrogate with a
|
3050
|
+
// single ASCII symbol to avoid throwing on regular expressions that
|
3051
|
+
// are only valid in combination with the `/u` flag.
|
3052
|
+
// Note: replacing with the ASCII symbol `x` might cause false
|
3053
|
+
// negatives in unlikely scenarios. For example, `[\u{61}-b]` is a
|
3054
|
+
// perfectly valid pattern that is equivalent to `[a-b]`, but it would
|
3055
|
+
// be replaced by `[x-b]` which throws an error.
|
3056
|
+
tmp = tmp.replace(/\\u\{([0-9a-fA-F]+)\}/g, function (_match, code, offset) {
|
3057
|
+
code = Number("0x" + code)
|
3058
|
+
if (code > 0x10FFFF) this$1.raise(start + offset + 3, "Code point out of bounds")
|
3059
|
+
return "x"
|
3060
|
+
})
|
3061
|
+
tmp = tmp.replace(/\\u([a-fA-F0-9]{4})|[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "x")
|
3062
|
+
tmpFlags = tmpFlags.replace("u", "")
|
3063
|
+
}
|
3064
|
+
}
|
3065
|
+
}
|
3066
|
+
// Detect invalid regular expressions.
|
3067
|
+
var value = null
|
3068
|
+
// Rhino's regular expression parser is flaky and throws uncatchable exceptions,
|
3069
|
+
// so don't do detection if we are running under Rhino
|
3070
|
+
if (!isRhino) {
|
3071
|
+
tryCreateRegexp(tmp, tmpFlags, start, this)
|
3072
|
+
// Get a regular expression object for this pattern-flag pair, or `null` in
|
3073
|
+
// case the current environment doesn't support the flags it uses.
|
3074
|
+
value = tryCreateRegexp(content, mods)
|
3075
|
+
}
|
3076
|
+
return this.finishToken(tt.regexp, {pattern: content, flags: mods, value: value})
|
3077
|
+
}
|
3078
|
+
|
3079
|
+
// Read an integer in the given radix. Return null if zero digits
|
3080
|
+
// were read, the integer value otherwise. When `len` is given, this
|
3081
|
+
// will return `null` unless the integer has exactly `len` digits.
|
3082
|
+
|
3083
|
+
pp$7.readInt = function(radix, len) {
|
3084
|
+
var this$1 = this;
|
3085
|
+
|
3086
|
+
var start = this.pos, total = 0
|
3087
|
+
for (var i = 0, e = len == null ? Infinity : len; i < e; ++i) {
|
3088
|
+
var code = this$1.input.charCodeAt(this$1.pos), val
|
3089
|
+
if (code >= 97) val = code - 97 + 10 // a
|
3090
|
+
else if (code >= 65) val = code - 65 + 10 // A
|
3091
|
+
else if (code >= 48 && code <= 57) val = code - 48 // 0-9
|
3092
|
+
else val = Infinity
|
3093
|
+
if (val >= radix) break
|
3094
|
+
++this$1.pos
|
3095
|
+
total = total * radix + val
|
3096
|
+
}
|
3097
|
+
if (this.pos === start || len != null && this.pos - start !== len) return null
|
3098
|
+
|
3099
|
+
return total
|
3100
|
+
}
|
3101
|
+
|
3102
|
+
pp$7.readRadixNumber = function(radix) {
|
3103
|
+
this.pos += 2 // 0x
|
3104
|
+
var val = this.readInt(radix)
|
3105
|
+
if (val == null) this.raise(this.start + 2, "Expected number in radix " + radix)
|
3106
|
+
if (isIdentifierStart(this.fullCharCodeAtPos())) this.raise(this.pos, "Identifier directly after number")
|
3107
|
+
return this.finishToken(tt.num, val)
|
3108
|
+
}
|
3109
|
+
|
3110
|
+
// Read an integer, octal integer, or floating-point number.
|
3111
|
+
|
3112
|
+
pp$7.readNumber = function(startsWithDot) {
|
3113
|
+
var start = this.pos, isFloat = false, octal = this.input.charCodeAt(this.pos) === 48
|
3114
|
+
if (!startsWithDot && this.readInt(10) === null) this.raise(start, "Invalid number")
|
3115
|
+
if (octal && this.pos == start + 1) octal = false
|
3116
|
+
var next = this.input.charCodeAt(this.pos)
|
3117
|
+
if (next === 46 && !octal) { // '.'
|
3118
|
+
++this.pos
|
3119
|
+
this.readInt(10)
|
3120
|
+
isFloat = true
|
3121
|
+
next = this.input.charCodeAt(this.pos)
|
3122
|
+
}
|
3123
|
+
if ((next === 69 || next === 101) && !octal) { // 'eE'
|
3124
|
+
next = this.input.charCodeAt(++this.pos)
|
3125
|
+
if (next === 43 || next === 45) ++this.pos // '+-'
|
3126
|
+
if (this.readInt(10) === null) this.raise(start, "Invalid number")
|
3127
|
+
isFloat = true
|
3128
|
+
}
|
3129
|
+
if (isIdentifierStart(this.fullCharCodeAtPos())) this.raise(this.pos, "Identifier directly after number")
|
3130
|
+
|
3131
|
+
var str = this.input.slice(start, this.pos), val
|
3132
|
+
if (isFloat) val = parseFloat(str)
|
3133
|
+
else if (!octal || str.length === 1) val = parseInt(str, 10)
|
3134
|
+
else if (/[89]/.test(str) || this.strict) this.raise(start, "Invalid number")
|
3135
|
+
else val = parseInt(str, 8)
|
3136
|
+
return this.finishToken(tt.num, val)
|
3137
|
+
}
|
3138
|
+
|
3139
|
+
// Read a string value, interpreting backslash-escapes.
|
3140
|
+
|
3141
|
+
pp$7.readCodePoint = function() {
|
3142
|
+
var ch = this.input.charCodeAt(this.pos), code
|
3143
|
+
|
3144
|
+
if (ch === 123) {
|
3145
|
+
if (this.options.ecmaVersion < 6) this.unexpected()
|
3146
|
+
var codePos = ++this.pos
|
3147
|
+
code = this.readHexChar(this.input.indexOf('}', this.pos) - this.pos)
|
3148
|
+
++this.pos
|
3149
|
+
if (code > 0x10FFFF) this.raise(codePos, "Code point out of bounds")
|
3150
|
+
} else {
|
3151
|
+
code = this.readHexChar(4)
|
3152
|
+
}
|
3153
|
+
return code
|
3154
|
+
}
|
3155
|
+
|
3156
|
+
function codePointToString(code) {
|
3157
|
+
// UTF-16 Decoding
|
3158
|
+
if (code <= 0xFFFF) return String.fromCharCode(code)
|
3159
|
+
code -= 0x10000
|
3160
|
+
return String.fromCharCode((code >> 10) + 0xD800, (code & 1023) + 0xDC00)
|
3161
|
+
}
|
3162
|
+
|
3163
|
+
pp$7.readString = function(quote) {
|
3164
|
+
var this$1 = this;
|
3165
|
+
|
3166
|
+
var out = "", chunkStart = ++this.pos
|
3167
|
+
for (;;) {
|
3168
|
+
if (this$1.pos >= this$1.input.length) this$1.raise(this$1.start, "Unterminated string constant")
|
3169
|
+
var ch = this$1.input.charCodeAt(this$1.pos)
|
3170
|
+
if (ch === quote) break
|
3171
|
+
if (ch === 92) { // '\'
|
3172
|
+
out += this$1.input.slice(chunkStart, this$1.pos)
|
3173
|
+
out += this$1.readEscapedChar(false)
|
3174
|
+
chunkStart = this$1.pos
|
3175
|
+
} else {
|
3176
|
+
if (isNewLine(ch)) this$1.raise(this$1.start, "Unterminated string constant")
|
3177
|
+
++this$1.pos
|
3178
|
+
}
|
3179
|
+
}
|
3180
|
+
out += this.input.slice(chunkStart, this.pos++)
|
3181
|
+
return this.finishToken(tt.string, out)
|
3182
|
+
}
|
3183
|
+
|
3184
|
+
// Reads template string tokens.
|
3185
|
+
|
3186
|
+
pp$7.readTmplToken = function() {
|
3187
|
+
var this$1 = this;
|
3188
|
+
|
3189
|
+
var out = "", chunkStart = this.pos
|
3190
|
+
for (;;) {
|
3191
|
+
if (this$1.pos >= this$1.input.length) this$1.raise(this$1.start, "Unterminated template")
|
3192
|
+
var ch = this$1.input.charCodeAt(this$1.pos)
|
3193
|
+
if (ch === 96 || ch === 36 && this$1.input.charCodeAt(this$1.pos + 1) === 123) { // '`', '${'
|
3194
|
+
if (this$1.pos === this$1.start && this$1.type === tt.template) {
|
3195
|
+
if (ch === 36) {
|
3196
|
+
this$1.pos += 2
|
3197
|
+
return this$1.finishToken(tt.dollarBraceL)
|
3198
|
+
} else {
|
3199
|
+
++this$1.pos
|
3200
|
+
return this$1.finishToken(tt.backQuote)
|
3201
|
+
}
|
3202
|
+
}
|
3203
|
+
out += this$1.input.slice(chunkStart, this$1.pos)
|
3204
|
+
return this$1.finishToken(tt.template, out)
|
3205
|
+
}
|
3206
|
+
if (ch === 92) { // '\'
|
3207
|
+
out += this$1.input.slice(chunkStart, this$1.pos)
|
3208
|
+
out += this$1.readEscapedChar(true)
|
3209
|
+
chunkStart = this$1.pos
|
3210
|
+
} else if (isNewLine(ch)) {
|
3211
|
+
out += this$1.input.slice(chunkStart, this$1.pos)
|
3212
|
+
++this$1.pos
|
3213
|
+
switch (ch) {
|
3214
|
+
case 13:
|
3215
|
+
if (this$1.input.charCodeAt(this$1.pos) === 10) ++this$1.pos
|
3216
|
+
case 10:
|
3217
|
+
out += "\n"
|
3218
|
+
break
|
3219
|
+
default:
|
3220
|
+
out += String.fromCharCode(ch)
|
3221
|
+
break
|
3222
|
+
}
|
3223
|
+
if (this$1.options.locations) {
|
3224
|
+
++this$1.curLine
|
3225
|
+
this$1.lineStart = this$1.pos
|
3226
|
+
}
|
3227
|
+
chunkStart = this$1.pos
|
3228
|
+
} else {
|
3229
|
+
++this$1.pos
|
3230
|
+
}
|
3231
|
+
}
|
3232
|
+
}
|
3233
|
+
|
3234
|
+
// Used to read escaped characters
|
3235
|
+
|
3236
|
+
pp$7.readEscapedChar = function(inTemplate) {
|
3237
|
+
var ch = this.input.charCodeAt(++this.pos)
|
3238
|
+
++this.pos
|
3239
|
+
switch (ch) {
|
3240
|
+
case 110: return "\n" // 'n' -> '\n'
|
3241
|
+
case 114: return "\r" // 'r' -> '\r'
|
3242
|
+
case 120: return String.fromCharCode(this.readHexChar(2)) // 'x'
|
3243
|
+
case 117: return codePointToString(this.readCodePoint()) // 'u'
|
3244
|
+
case 116: return "\t" // 't' -> '\t'
|
3245
|
+
case 98: return "\b" // 'b' -> '\b'
|
3246
|
+
case 118: return "\u000b" // 'v' -> '\u000b'
|
3247
|
+
case 102: return "\f" // 'f' -> '\f'
|
3248
|
+
case 13: if (this.input.charCodeAt(this.pos) === 10) ++this.pos // '\r\n'
|
3249
|
+
case 10: // ' \n'
|
3250
|
+
if (this.options.locations) { this.lineStart = this.pos; ++this.curLine }
|
3251
|
+
return ""
|
3252
|
+
default:
|
3253
|
+
if (ch >= 48 && ch <= 55) {
|
3254
|
+
var octalStr = this.input.substr(this.pos - 1, 3).match(/^[0-7]+/)[0]
|
3255
|
+
var octal = parseInt(octalStr, 8)
|
3256
|
+
if (octal > 255) {
|
3257
|
+
octalStr = octalStr.slice(0, -1)
|
3258
|
+
octal = parseInt(octalStr, 8)
|
3259
|
+
}
|
3260
|
+
if (octalStr !== "0" && (this.strict || inTemplate)) {
|
3261
|
+
this.raise(this.pos - 2, "Octal literal in strict mode")
|
3262
|
+
}
|
3263
|
+
this.pos += octalStr.length - 1
|
3264
|
+
return String.fromCharCode(octal)
|
3265
|
+
}
|
3266
|
+
return String.fromCharCode(ch)
|
3267
|
+
}
|
3268
|
+
}
|
3269
|
+
|
3270
|
+
// Used to read character escape sequences ('\x', '\u', '\U').
|
3271
|
+
|
3272
|
+
pp$7.readHexChar = function(len) {
|
3273
|
+
var codePos = this.pos
|
3274
|
+
var n = this.readInt(16, len)
|
3275
|
+
if (n === null) this.raise(codePos, "Bad character escape sequence")
|
3276
|
+
return n
|
3277
|
+
}
|
3278
|
+
|
3279
|
+
// Read an identifier, and return it as a string. Sets `this.containsEsc`
|
3280
|
+
// to whether the word contained a '\u' escape.
|
3281
|
+
//
|
3282
|
+
// Incrementally adds only escaped chars, adding other chunks as-is
|
3283
|
+
// as a micro-optimization.
|
3284
|
+
|
3285
|
+
pp$7.readWord1 = function() {
|
3286
|
+
var this$1 = this;
|
3287
|
+
|
3288
|
+
this.containsEsc = false
|
3289
|
+
var word = "", first = true, chunkStart = this.pos
|
3290
|
+
var astral = this.options.ecmaVersion >= 6
|
3291
|
+
while (this.pos < this.input.length) {
|
3292
|
+
var ch = this$1.fullCharCodeAtPos()
|
3293
|
+
if (isIdentifierChar(ch, astral)) {
|
3294
|
+
this$1.pos += ch <= 0xffff ? 1 : 2
|
3295
|
+
} else if (ch === 92) { // "\"
|
3296
|
+
this$1.containsEsc = true
|
3297
|
+
word += this$1.input.slice(chunkStart, this$1.pos)
|
3298
|
+
var escStart = this$1.pos
|
3299
|
+
if (this$1.input.charCodeAt(++this$1.pos) != 117) // "u"
|
3300
|
+
this$1.raise(this$1.pos, "Expecting Unicode escape sequence \\uXXXX")
|
3301
|
+
++this$1.pos
|
3302
|
+
var esc = this$1.readCodePoint()
|
3303
|
+
if (!(first ? isIdentifierStart : isIdentifierChar)(esc, astral))
|
3304
|
+
this$1.raise(escStart, "Invalid Unicode escape")
|
3305
|
+
word += codePointToString(esc)
|
3306
|
+
chunkStart = this$1.pos
|
3307
|
+
} else {
|
3308
|
+
break
|
3309
|
+
}
|
3310
|
+
first = false
|
3311
|
+
}
|
3312
|
+
return word + this.input.slice(chunkStart, this.pos)
|
3313
|
+
}
|
3314
|
+
|
3315
|
+
// Read an identifier or keyword token. Will check for reserved
|
3316
|
+
// words when necessary.
|
3317
|
+
|
3318
|
+
pp$7.readWord = function() {
|
3319
|
+
var word = this.readWord1()
|
3320
|
+
var type = tt.name
|
3321
|
+
if ((this.options.ecmaVersion >= 6 || !this.containsEsc) && this.keywords.test(word))
|
3322
|
+
type = keywordTypes[word]
|
3323
|
+
return this.finishToken(type, word)
|
3324
|
+
}
|
3325
|
+
|
3326
|
+
// Acorn is a tiny, fast JavaScript parser written in JavaScript.
|
3327
|
+
//
|
3328
|
+
// Acorn was written by Marijn Haverbeke, Ingvar Stepanyan, and
|
3329
|
+
// various contributors and released under an MIT license.
|
3330
|
+
//
|
3331
|
+
// Git repositories for Acorn are available at
|
3332
|
+
//
|
3333
|
+
// http://marijnhaverbeke.nl/git/acorn
|
3334
|
+
// https://github.com/ternjs/acorn.git
|
3335
|
+
//
|
3336
|
+
// Please use the [github bug tracker][ghbt] to report issues.
|
3337
|
+
//
|
3338
|
+
// [ghbt]: https://github.com/ternjs/acorn/issues
|
3339
|
+
//
|
3340
|
+
// This file defines the main parser interface. The library also comes
|
3341
|
+
// with a [error-tolerant parser][dammit] and an
|
3342
|
+
// [abstract syntax tree walker][walk], defined in other files.
|
3343
|
+
//
|
3344
|
+
// [dammit]: acorn_loose.js
|
3345
|
+
// [walk]: util/walk.js
|
3346
|
+
|
3347
|
+
var version = "4.0.4"
|
3348
|
+
|
3349
|
+
// The main exported interface (under `self.acorn` when in the
|
3350
|
+
// browser) is a `parse` function that takes a code string and
|
3351
|
+
// returns an abstract syntax tree as specified by [Mozilla parser
|
3352
|
+
// API][api].
|
3353
|
+
//
|
3354
|
+
// [api]: https://developer.mozilla.org/en-US/docs/SpiderMonkey/Parser_API
|
3355
|
+
|
3356
|
+
function parse(input, options) {
|
3357
|
+
return new Parser(options, input).parse()
|
3358
|
+
}
|
3359
|
+
|
3360
|
+
// This function tries to parse a single expression at a given
|
3361
|
+
// offset in a string. Useful for parsing mixed-language formats
|
3362
|
+
// that embed JavaScript expressions.
|
3363
|
+
|
3364
|
+
function parseExpressionAt(input, pos, options) {
|
3365
|
+
var p = new Parser(options, input, pos)
|
3366
|
+
p.nextToken()
|
3367
|
+
return p.parseExpression()
|
3368
|
+
}
|
3369
|
+
|
3370
|
+
// Acorn is organized as a tokenizer and a recursive-descent parser.
|
3371
|
+
// The `tokenizer` export provides an interface to the tokenizer.
|
3372
|
+
|
3373
|
+
function tokenizer(input, options) {
|
3374
|
+
return new Parser(options, input)
|
3375
|
+
}
|
3376
|
+
|
3377
|
+
// This is a terrible kludge to support the existing, pre-ES6
|
3378
|
+
// interface where the loose parser module retroactively adds exports
|
3379
|
+
// to this module.
|
3380
|
+
function addLooseExports(parse, Parser, plugins) {
|
3381
|
+
exports.parse_dammit = parse
|
3382
|
+
exports.LooseParser = Parser
|
3383
|
+
exports.pluginsLoose = plugins
|
3384
|
+
}
|
3385
|
+
|
3386
|
+
exports.version = version;
|
3387
|
+
exports.parse = parse;
|
3388
|
+
exports.parseExpressionAt = parseExpressionAt;
|
3389
|
+
exports.tokenizer = tokenizer;
|
3390
|
+
exports.addLooseExports = addLooseExports;
|
3391
|
+
exports.Parser = Parser;
|
3392
|
+
exports.plugins = plugins;
|
3393
|
+
exports.defaultOptions = defaultOptions;
|
3394
|
+
exports.Position = Position;
|
3395
|
+
exports.SourceLocation = SourceLocation;
|
3396
|
+
exports.getLineInfo = getLineInfo;
|
3397
|
+
exports.Node = Node;
|
3398
|
+
exports.TokenType = TokenType;
|
3399
|
+
exports.tokTypes = tt;
|
3400
|
+
exports.TokContext = TokContext;
|
3401
|
+
exports.tokContexts = types;
|
3402
|
+
exports.isIdentifierChar = isIdentifierChar;
|
3403
|
+
exports.isIdentifierStart = isIdentifierStart;
|
3404
|
+
exports.Token = Token;
|
3405
|
+
exports.isNewLine = isNewLine;
|
3406
|
+
exports.lineBreak = lineBreak;
|
3407
|
+
exports.lineBreakG = lineBreakG;
|
3408
|
+
|
3409
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
3410
|
+
|
3411
|
+
})));
|