fsevents 1.1.1 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of fsevents might be problematic. Click here for more details.
- package/.travis.yml +7 -9
- package/build/.target.mk +6 -2
- package/build/Makefile +6 -6
- package/build/Release/.deps/Release/.node.d +1 -0
- package/build/Release/.deps/Release/fse.node.d +1 -0
- package/build/Release/.deps/Release/obj.target/action_after_build.stamp.d +1 -0
- package/build/Release/.deps/Release/obj.target/fse/fsevents.o.d +65 -0
- package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node.d +1 -0
- package/build/Release/.node +0 -0
- package/build/Release/fse.node +0 -0
- package/build/Release/obj.target/action_after_build.stamp +0 -0
- package/build/Release/obj.target/fse/fsevents.o +0 -0
- package/build/action_after_build.target.mk +4 -4
- package/build/fse.target.mk +22 -12
- package/build/gyp-mac-tool +1 -2
- package/build/stage/v1.1.2/fse-v1.1.2-node-v48-darwin-x64.tar.gz +0 -0
- package/lib/binding/Release/node-v48-darwin-x64/fse.node +0 -0
- package/lib/binding/Release/node-v57-darwin-x64/fse.node +0 -0
- package/node_modules/abbrev/package.json +15 -51
- package/node_modules/ajv/.tonic_example.js +20 -0
- package/node_modules/{is-my-json-valid → ajv}/LICENSE +6 -5
- package/node_modules/ajv/README.md +1213 -0
- package/node_modules/ajv/dist/ajv.bundle.js +8023 -0
- package/node_modules/ajv/dist/ajv.min.js +6 -0
- package/node_modules/ajv/dist/ajv.min.js.map +1 -0
- package/node_modules/ajv/dist/nodent.min.js +8 -0
- package/node_modules/ajv/dist/regenerator.min.js +32 -0
- package/node_modules/ajv/lib/ajv.d.ts +284 -0
- package/node_modules/ajv/lib/ajv.js +420 -0
- package/node_modules/ajv/lib/async.js +218 -0
- package/node_modules/ajv/lib/cache.js +26 -0
- package/node_modules/ajv/lib/compile/_rules.js +28 -0
- package/node_modules/ajv/lib/compile/equal.js +45 -0
- package/node_modules/ajv/lib/compile/formats.js +164 -0
- package/node_modules/ajv/lib/compile/index.js +390 -0
- package/node_modules/ajv/lib/compile/resolve.js +267 -0
- package/node_modules/ajv/lib/compile/rules.js +40 -0
- package/node_modules/ajv/lib/compile/schema_obj.js +9 -0
- package/node_modules/ajv/lib/compile/ucs2length.js +20 -0
- package/node_modules/ajv/lib/compile/util.js +257 -0
- package/node_modules/ajv/lib/compile/validation_error.js +14 -0
- package/node_modules/ajv/lib/dot/_limit.jst +49 -0
- package/node_modules/ajv/lib/dot/_limitItems.jst +10 -0
- package/node_modules/ajv/lib/dot/_limitLength.jst +10 -0
- package/node_modules/ajv/lib/dot/_limitProperties.jst +10 -0
- package/node_modules/ajv/lib/dot/allOf.jst +34 -0
- package/node_modules/ajv/lib/dot/anyOf.jst +48 -0
- package/node_modules/ajv/lib/dot/coerce.def +61 -0
- package/node_modules/ajv/lib/dot/custom.jst +184 -0
- package/node_modules/ajv/lib/dot/defaults.def +32 -0
- package/node_modules/ajv/lib/dot/definitions.def +182 -0
- package/node_modules/ajv/lib/dot/dependencies.jst +69 -0
- package/node_modules/ajv/lib/dot/enum.jst +30 -0
- package/node_modules/ajv/lib/dot/errors.def +185 -0
- package/node_modules/ajv/lib/dot/format.jst +100 -0
- package/node_modules/ajv/lib/dot/items.jst +101 -0
- package/node_modules/ajv/lib/dot/missing.def +34 -0
- package/node_modules/ajv/lib/dot/multipleOf.jst +20 -0
- package/node_modules/ajv/lib/dot/not.jst +43 -0
- package/node_modules/ajv/lib/dot/oneOf.jst +44 -0
- package/node_modules/ajv/lib/dot/pattern.jst +14 -0
- package/node_modules/ajv/lib/dot/properties.jst +319 -0
- package/node_modules/ajv/lib/dot/ref.jst +86 -0
- package/node_modules/ajv/lib/dot/required.jst +96 -0
- package/node_modules/ajv/lib/dot/uniqueItems.jst +38 -0
- package/node_modules/ajv/lib/dot/v5/_formatLimit.jst +116 -0
- package/node_modules/ajv/lib/dot/v5/constant.jst +10 -0
- package/node_modules/ajv/lib/dot/v5/patternRequired.jst +28 -0
- package/node_modules/ajv/lib/dot/v5/switch.jst +73 -0
- package/node_modules/ajv/lib/dot/validate.jst +210 -0
- package/node_modules/ajv/lib/dotjs/README.md +3 -0
- package/node_modules/ajv/lib/dotjs/_formatLimit.js +176 -0
- package/node_modules/ajv/lib/dotjs/_limit.js +124 -0
- package/node_modules/ajv/lib/dotjs/_limitItems.js +76 -0
- package/node_modules/ajv/lib/dotjs/_limitLength.js +81 -0
- package/node_modules/ajv/lib/dotjs/_limitProperties.js +76 -0
- package/node_modules/ajv/lib/dotjs/allOf.js +43 -0
- package/node_modules/ajv/lib/dotjs/anyOf.js +65 -0
- package/node_modules/ajv/lib/dotjs/constant.js +52 -0
- package/node_modules/ajv/lib/dotjs/custom.js +220 -0
- package/node_modules/ajv/lib/dotjs/dependencies.js +147 -0
- package/node_modules/ajv/lib/dotjs/enum.js +65 -0
- package/node_modules/ajv/lib/dotjs/format.js +138 -0
- package/node_modules/ajv/lib/dotjs/items.js +144 -0
- package/node_modules/ajv/lib/dotjs/multipleOf.js +76 -0
- package/node_modules/ajv/lib/dotjs/not.js +83 -0
- package/node_modules/ajv/lib/dotjs/oneOf.js +76 -0
- package/node_modules/ajv/lib/dotjs/pattern.js +74 -0
- package/node_modules/ajv/lib/dotjs/patternRequired.js +51 -0
- package/node_modules/ajv/lib/dotjs/properties.js +445 -0
- package/node_modules/ajv/lib/dotjs/ref.js +119 -0
- package/node_modules/ajv/lib/dotjs/required.js +249 -0
- package/node_modules/ajv/lib/dotjs/switch.js +128 -0
- package/node_modules/ajv/lib/dotjs/uniqueItems.js +71 -0
- package/node_modules/ajv/lib/dotjs/validate.js +375 -0
- package/node_modules/ajv/lib/keyword.js +129 -0
- package/node_modules/ajv/lib/refs/json-schema-draft-04.json +150 -0
- package/node_modules/ajv/lib/refs/json-schema-v5.json +328 -0
- package/node_modules/ajv/lib/v5.js +52 -0
- package/node_modules/ajv/package.json +132 -0
- package/node_modules/ajv/scripts/.eslintrc.yml +3 -0
- package/node_modules/ajv/scripts/bundle.js +54 -0
- package/node_modules/ajv/scripts/compile-dots.js +73 -0
- package/node_modules/ajv/scripts/info +10 -0
- package/node_modules/ajv/scripts/prepare-tests +9 -0
- package/node_modules/ajv/scripts/travis-gh-pages +23 -0
- package/node_modules/ansi-regex/package.json +26 -49
- package/node_modules/aproba/package.json +15 -48
- package/node_modules/are-we-there-yet/CHANGES.md +12 -0
- package/node_modules/are-we-there-yet/CHANGES.md~ +27 -0
- package/node_modules/are-we-there-yet/README.md +4 -3
- package/node_modules/are-we-there-yet/package.json +28 -54
- package/node_modules/asn1/package.json +16 -48
- package/node_modules/assert-plus/package.json +15 -47
- package/node_modules/asynckit/package.json +15 -49
- package/node_modules/aws-sign2/package.json +15 -45
- package/node_modules/aws4/package.json +15 -50
- package/node_modules/balanced-match/package.json +15 -49
- package/node_modules/bcrypt-pbkdf/package.json +16 -62
- package/node_modules/block-stream/package.json +15 -49
- package/node_modules/boom/package.json +15 -54
- package/node_modules/brace-expansion/README.md +1 -0
- package/node_modules/brace-expansion/index.js +1 -1
- package/node_modules/brace-expansion/package.json +20 -56
- package/node_modules/buffer-shims/package.json +15 -51
- package/node_modules/caseless/index.js +1 -0
- package/node_modules/caseless/package.json +19 -58
- package/node_modules/caseless/test.js +27 -0
- package/node_modules/co/History.md +172 -0
- package/node_modules/{commander → co}/LICENSE +1 -1
- package/node_modules/co/Readme.md +212 -0
- package/node_modules/co/index.js +237 -0
- package/node_modules/co/package.json +67 -0
- package/node_modules/code-point-at/package.json +15 -50
- package/node_modules/combined-stream/package.json +15 -58
- package/node_modules/concat-map/package.json +13 -41
- package/node_modules/console-control-strings/package.json +15 -50
- package/node_modules/core-util-is/package.json +15 -47
- package/node_modules/cryptiles/package.json +15 -49
- package/node_modules/dashdash/node_modules/assert-plus/package.json +15 -47
- package/node_modules/dashdash/package.json +15 -72
- package/node_modules/debug/.coveralls.yml +1 -0
- package/node_modules/debug/.eslintrc +11 -0
- package/node_modules/debug/.npmignore +3 -0
- package/node_modules/debug/.travis.yml +14 -0
- package/node_modules/debug/CHANGELOG.md +357 -0
- package/node_modules/debug/LICENSE +19 -0
- package/node_modules/debug/Makefile +28 -14
- package/node_modules/debug/README.md +312 -0
- package/node_modules/debug/component.json +4 -4
- package/node_modules/debug/karma.conf.js +70 -0
- package/node_modules/debug/node.js +1 -209
- package/node_modules/debug/package.json +41 -58
- package/node_modules/debug/{browser.js → src/browser.js} +29 -12
- package/node_modules/debug/{debug.js → src/debug.js} +42 -37
- package/node_modules/debug/src/index.js +10 -0
- package/node_modules/debug/src/node.js +246 -0
- package/node_modules/deep-extend/README.md +1 -1
- package/node_modules/deep-extend/lib/deep-extend.js +2 -2
- package/node_modules/deep-extend/package.json +22 -48
- package/node_modules/delayed-stream/package.json +15 -49
- package/node_modules/delegates/package.json +15 -50
- package/node_modules/ecc-jsbn/package.json +21 -45
- package/node_modules/extend/.eslintrc +10 -185
- package/node_modules/extend/.jscs.json +75 -4
- package/node_modules/extend/.travis.yml +154 -19
- package/node_modules/extend/CHANGELOG.md +8 -0
- package/node_modules/extend/README.md +20 -1
- package/node_modules/extend/index.js +8 -8
- package/node_modules/extend/package.json +26 -56
- package/node_modules/extsprintf/package.json +12 -43
- package/node_modules/forever-agent/package.json +16 -53
- package/node_modules/form-data/README.md +4 -4
- package/node_modules/form-data/lib/form_data.js +4 -0
- package/node_modules/form-data/package.json +18 -64
- package/node_modules/fs.realpath/package.json +15 -49
- package/node_modules/fstream/lib/reader.js +4 -4
- package/node_modules/fstream/lib/writer.js +2 -2
- package/node_modules/fstream/package.json +19 -67
- package/node_modules/fstream-ignore/package.json +15 -57
- package/node_modules/gauge/CHANGELOG.md +5 -0
- package/node_modules/gauge/package.json +18 -52
- package/node_modules/gauge/plumbing.js +1 -0
- package/node_modules/getpass/node_modules/assert-plus/package.json +15 -47
- package/node_modules/getpass/package.json +19 -58
- package/node_modules/glob/glob.js +0 -2
- package/node_modules/glob/package.json +19 -53
- package/node_modules/graceful-fs/package.json +15 -49
- package/node_modules/har-schema/LICENSE +13 -0
- package/node_modules/har-schema/README.md +49 -0
- package/node_modules/har-schema/lib/afterRequest.json +29 -0
- package/node_modules/har-schema/lib/beforeRequest.json +29 -0
- package/node_modules/har-schema/lib/browser.json +19 -0
- package/node_modules/har-schema/lib/cache.json +20 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/content.json +1 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/cookie.json +1 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/creator.json +1 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/entry.json +5 -4
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/har.json +2 -1
- package/node_modules/har-schema/lib/header.json +19 -0
- package/node_modules/har-schema/lib/index.js +22 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/log.json +5 -4
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/page.json +2 -1
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/pageTimings.json +1 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/postData.json +1 -0
- package/node_modules/{har-validator/lib/schemas/record.json → har-schema/lib/query.json} +1 -0
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/request.json +5 -4
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/response.json +4 -3
- package/node_modules/{har-validator/lib/schemas → har-schema/lib}/timings.json +1 -0
- package/node_modules/har-schema/package.json +87 -0
- package/node_modules/har-validator/README.md +31 -265
- package/node_modules/har-validator/lib/browser/async.js +96 -0
- package/node_modules/har-validator/lib/browser/error.js +15 -0
- package/node_modules/har-validator/lib/browser/promise.js +93 -0
- package/node_modules/har-validator/lib/node4/async.js +136 -0
- package/node_modules/har-validator/lib/node4/error.js +22 -0
- package/node_modules/har-validator/lib/node4/promise.js +132 -0
- package/node_modules/har-validator/lib/node6/async.js +133 -0
- package/node_modules/har-validator/lib/node6/error.js +22 -0
- package/node_modules/har-validator/lib/node6/promise.js +130 -0
- package/node_modules/har-validator/lib/node7/async.js +133 -0
- package/node_modules/har-validator/lib/node7/error.js +22 -0
- package/node_modules/har-validator/lib/node7/promise.js +130 -0
- package/node_modules/har-validator/package.json +54 -72
- package/node_modules/har-validator/src/async.js +96 -0
- package/node_modules/har-validator/src/error.js +15 -0
- package/node_modules/har-validator/src/promise.js +93 -0
- package/node_modules/has-unicode/package.json +15 -50
- package/node_modules/hawk/package.json +15 -45
- package/node_modules/hoek/package.json +15 -55
- package/node_modules/http-signature/package.json +15 -53
- package/node_modules/inflight/package.json +15 -61
- package/node_modules/inherits/package.json +15 -58
- package/node_modules/ini/package.json +15 -45
- package/node_modules/is-fullwidth-code-point/package.json +16 -46
- package/node_modules/is-typedarray/package.json +15 -45
- package/node_modules/isarray/package.json +15 -46
- package/node_modules/isstream/package.json +15 -46
- package/node_modules/jodid25519/package.json +16 -44
- package/node_modules/jsbn/package.json +16 -53
- package/node_modules/json-schema/package.json +13 -41
- package/node_modules/{generate-function → json-stable-stringify}/.npmignore +0 -0
- package/node_modules/{generate-object-property → json-stable-stringify}/.travis.yml +1 -0
- package/node_modules/{ms → json-stable-stringify}/LICENSE +1 -3
- package/node_modules/json-stable-stringify/example/key_cmp.js +7 -0
- package/node_modules/json-stable-stringify/example/nested.js +3 -0
- package/node_modules/json-stable-stringify/example/str.js +3 -0
- package/node_modules/json-stable-stringify/example/value_cmp.js +7 -0
- package/node_modules/json-stable-stringify/index.js +84 -0
- package/node_modules/json-stable-stringify/package.json +75 -0
- package/node_modules/json-stable-stringify/readme.markdown +130 -0
- package/node_modules/json-stable-stringify/test/cmp.js +11 -0
- package/node_modules/json-stable-stringify/test/nested.js +35 -0
- package/node_modules/json-stable-stringify/test/replacer.js +74 -0
- package/node_modules/json-stable-stringify/test/space.js +59 -0
- package/node_modules/json-stable-stringify/test/str.js +32 -0
- package/node_modules/json-stable-stringify/test/to-json.js +20 -0
- package/node_modules/json-stringify-safe/package.json +15 -50
- package/node_modules/jsonify/README.markdown +34 -0
- package/node_modules/jsonify/index.js +2 -0
- package/node_modules/jsonify/lib/parse.js +273 -0
- package/node_modules/jsonify/lib/stringify.js +154 -0
- package/node_modules/jsonify/package.json +60 -0
- package/node_modules/jsonify/test/parse.js +16 -0
- package/node_modules/jsonify/test/stringify.js +15 -0
- package/node_modules/jsprim/CHANGES.md +4 -0
- package/node_modules/jsprim/README.md +55 -0
- package/node_modules/jsprim/lib/jsprim.js +248 -1
- package/node_modules/jsprim/node_modules/assert-plus/AUTHORS +6 -0
- package/node_modules/jsprim/node_modules/assert-plus/CHANGES.md +14 -0
- package/node_modules/jsprim/node_modules/assert-plus/README.md +162 -0
- package/node_modules/jsprim/node_modules/assert-plus/assert.js +211 -0
- package/node_modules/jsprim/node_modules/assert-plus/package.json +83 -0
- package/node_modules/jsprim/package.json +22 -57
- package/node_modules/mime-db/HISTORY.md +21 -0
- package/node_modules/mime-db/db.json +54 -0
- package/node_modules/mime-db/package.json +24 -63
- package/node_modules/mime-types/HISTORY.md +7 -0
- package/node_modules/mime-types/README.md +10 -5
- package/node_modules/mime-types/index.js +1 -1
- package/node_modules/mime-types/package.json +23 -66
- package/node_modules/minimatch/package.json +24 -58
- package/node_modules/minimist/package.json +12 -41
- package/node_modules/mkdirp/package.json +15 -47
- package/node_modules/ms/index.js +50 -23
- package/node_modules/{graceful-readlink/LICENSE → ms/license.md} +1 -2
- package/node_modules/ms/package.json +49 -61
- package/node_modules/ms/readme.md +51 -0
- package/node_modules/node-pre-gyp/CHANGELOG.md +15 -0
- package/node_modules/node-pre-gyp/README.md +12 -1
- package/node_modules/node-pre-gyp/appveyor.yml +1 -6
- package/node_modules/node-pre-gyp/cloudformation/travis.template +73 -0
- package/node_modules/node-pre-gyp/contributing.md +10 -0
- package/node_modules/node-pre-gyp/lib/install.js +5 -47
- package/node_modules/node-pre-gyp/lib/testbinary.js +8 -2
- package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +72 -0
- package/node_modules/node-pre-gyp/package.json +30 -76
- package/node_modules/node-pre-gyp/template-name.diff +12 -0
- package/node_modules/nopt/.travis.yml +3 -4
- package/node_modules/nopt/CHANGELOG.md +58 -0
- package/node_modules/nopt/README.md +28 -26
- package/node_modules/nopt/lib/nopt.js +50 -29
- package/node_modules/nopt/package.json +22 -59
- package/node_modules/nopt/test/basic.js +36 -6
- package/node_modules/npmlog/CHANGELOG.md +5 -1
- package/node_modules/npmlog/log.js +2 -0
- package/node_modules/npmlog/package.json +21 -67
- package/node_modules/number-is-nan/package.json +15 -50
- package/node_modules/oauth-sign/package.json +15 -56
- package/node_modules/object-assign/package.json +15 -58
- package/node_modules/once/package.json +15 -49
- package/node_modules/os-homedir/index.js +24 -0
- package/node_modules/{ansi-styles → os-homedir}/license +0 -0
- package/node_modules/os-homedir/package.json +74 -0
- package/node_modules/os-homedir/readme.md +31 -0
- package/node_modules/os-tmpdir/index.js +25 -0
- package/node_modules/{chalk → os-tmpdir}/license +0 -0
- package/node_modules/os-tmpdir/package.json +74 -0
- package/node_modules/os-tmpdir/readme.md +32 -0
- package/node_modules/osenv/.npmignore +13 -0
- package/node_modules/osenv/.travis.yml +9 -0
- package/node_modules/{tar-pack/node_modules/once → osenv}/LICENSE +0 -0
- package/node_modules/osenv/README.md +63 -0
- package/node_modules/osenv/osenv.js +72 -0
- package/node_modules/osenv/package.json +68 -0
- package/node_modules/osenv/test/unix.js +71 -0
- package/node_modules/osenv/test/windows.js +74 -0
- package/node_modules/osenv/x.tap +39 -0
- package/node_modules/path-is-absolute/package.json +15 -50
- package/node_modules/performance-now/.npmignore +1 -0
- package/node_modules/performance-now/.tm_properties +7 -0
- package/node_modules/{generate-function → performance-now}/.travis.yml +1 -0
- package/node_modules/performance-now/Makefile +25 -0
- package/node_modules/performance-now/README.md +30 -0
- package/node_modules/performance-now/lib/performance-now.js +32 -0
- package/node_modules/performance-now/license.txt +7 -0
- package/node_modules/performance-now/package.json +58 -0
- package/node_modules/performance-now/src/performance-now.coffee +15 -0
- package/node_modules/performance-now/test/mocha.opts +3 -0
- package/node_modules/performance-now/test/performance-now.coffee +38 -0
- package/node_modules/process-nextick-args/package.json +15 -51
- package/node_modules/punycode/package.json +14 -49
- package/node_modules/qs/.eslintrc +4 -5
- package/node_modules/qs/.jscs.json +176 -0
- package/node_modules/qs/CHANGELOG.md +19 -0
- package/node_modules/qs/README.md +10 -1
- package/node_modules/qs/dist/qs.js +24 -14
- package/node_modules/qs/lib/index.js +0 -0
- package/node_modules/qs/lib/parse.js +6 -5
- package/node_modules/qs/lib/stringify.js +15 -8
- package/node_modules/qs/lib/utils.js +3 -1
- package/node_modules/qs/package.json +19 -61
- package/node_modules/qs/test/.eslintrc +2 -1
- package/node_modules/qs/test/parse.js +37 -2
- package/node_modules/qs/test/stringify.js +29 -0
- package/node_modules/qs/test/utils.js +0 -0
- package/node_modules/rc/lib/utils.js +2 -1
- package/node_modules/rc/node_modules/minimist/package.json +15 -46
- package/node_modules/rc/package.json +18 -53
- package/node_modules/rc/test/nested-env-vars.js +31 -21
- package/node_modules/readable-stream/.travis.yml +2 -2
- package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
- package/node_modules/readable-stream/GOVERNANCE.md +136 -0
- package/node_modules/readable-stream/LICENSE +29 -0
- package/node_modules/readable-stream/README.md +20 -3
- package/node_modules/readable-stream/duplex-browser.js +1 -0
- package/node_modules/readable-stream/duplex.js +1 -1
- package/node_modules/readable-stream/lib/_stream_readable.js +7 -13
- package/node_modules/readable-stream/lib/_stream_writable.js +18 -28
- package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
- package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
- package/node_modules/readable-stream/package.json +25 -67
- package/node_modules/readable-stream/passthrough.js +1 -1
- package/node_modules/{tar-pack/node_modules/readable-stream/readable.js → readable-stream/readable-browser.js} +1 -10
- package/node_modules/readable-stream/readable.js +17 -14
- package/node_modules/readable-stream/transform.js +1 -1
- package/node_modules/readable-stream/writable-browser.js +1 -0
- package/node_modules/readable-stream/writable.js +8 -1
- package/node_modules/request/CHANGELOG.md +23 -11
- package/node_modules/request/README.md +36 -19
- package/node_modules/request/lib/helpers.js +2 -1
- package/node_modules/request/lib/multipart.js +2 -1
- package/node_modules/request/lib/oauth.js +2 -1
- package/node_modules/request/package.json +30 -74
- package/node_modules/request/request.js +106 -16
- package/node_modules/rimraf/bin.js +13 -3
- package/node_modules/rimraf/package.json +19 -55
- package/node_modules/rimraf/rimraf.js +22 -2
- package/node_modules/safe-buffer/.travis.yml +7 -0
- package/node_modules/{is-property → safe-buffer}/LICENSE +1 -2
- package/node_modules/safe-buffer/README.md +581 -0
- package/node_modules/safe-buffer/browser.js +1 -0
- package/node_modules/safe-buffer/index.js +58 -0
- package/node_modules/safe-buffer/package.json +64 -0
- package/node_modules/safe-buffer/test.js +99 -0
- package/node_modules/semver/package.json +15 -54
- package/node_modules/set-blocking/package.json +15 -50
- package/node_modules/signal-exit/package.json +15 -54
- package/node_modules/sntp/package.json +16 -45
- package/node_modules/sshpk/README.md +38 -6
- package/node_modules/sshpk/lib/certificate.js +88 -2
- package/node_modules/sshpk/lib/dhe.js +101 -2
- package/node_modules/sshpk/lib/formats/openssh-cert.js +34 -1
- package/node_modules/sshpk/lib/formats/x509.js +247 -5
- package/node_modules/sshpk/lib/identity.js +1 -1
- package/node_modules/sshpk/lib/index.js +1 -0
- package/node_modules/sshpk/lib/key.js +6 -2
- package/node_modules/sshpk/lib/private-key.js +25 -1
- package/node_modules/sshpk/lib/signature.js +76 -8
- package/node_modules/sshpk/node_modules/assert-plus/package.json +15 -47
- package/node_modules/sshpk/package.json +21 -53
- package/node_modules/string-width/package.json +15 -50
- package/node_modules/string_decoder/LICENSE +48 -20
- package/node_modules/string_decoder/README.md +25 -4
- package/node_modules/string_decoder/lib/string_decoder.js +272 -0
- package/node_modules/string_decoder/package.json +24 -55
- package/node_modules/stringstream/package.json +15 -48
- package/node_modules/strip-ansi/package.json +27 -50
- package/node_modules/strip-json-comments/package.json +15 -50
- package/node_modules/tar/package.json +15 -58
- package/node_modules/tar-pack/package.json +28 -79
- package/node_modules/tough-cookie/package.json +15 -57
- package/node_modules/tunnel-agent/index.js +5 -4
- package/node_modules/tunnel-agent/package.json +22 -66
- package/node_modules/tweetnacl/package.json +16 -50
- package/node_modules/uid-number/package.json +16 -46
- package/node_modules/util-deprecate/package.json +15 -48
- package/node_modules/uuid/package.json +15 -58
- package/node_modules/verror/package.json +12 -41
- package/node_modules/wide-align/package.json +25 -51
- package/node_modules/wrappy/package.json +15 -54
- package/package.json +4 -3
- package/node_modules/ansi-styles/index.js +0 -65
- package/node_modules/ansi-styles/package.json +0 -114
- package/node_modules/ansi-styles/readme.md +0 -86
- package/node_modules/are-we-there-yet/.npmignore +0 -5
- package/node_modules/are-we-there-yet/test/lib/test-event.js +0 -29
- package/node_modules/are-we-there-yet/test/tracker.js +0 -57
- package/node_modules/are-we-there-yet/test/trackergroup.js +0 -96
- package/node_modules/are-we-there-yet/test/trackerstream.js +0 -51
- package/node_modules/chalk/index.js +0 -116
- package/node_modules/chalk/package.json +0 -140
- package/node_modules/chalk/readme.md +0 -213
- package/node_modules/commander/History.md +0 -261
- package/node_modules/commander/Readme.md +0 -351
- package/node_modules/commander/index.js +0 -1110
- package/node_modules/commander/package.json +0 -104
- package/node_modules/debug/.jshintrc +0 -3
- package/node_modules/debug/History.md +0 -195
- package/node_modules/debug/Readme.md +0 -188
- package/node_modules/debug/bower.json +0 -28
- package/node_modules/escape-string-regexp/index.js +0 -11
- package/node_modules/escape-string-regexp/license +0 -21
- package/node_modules/escape-string-regexp/package.json +0 -109
- package/node_modules/escape-string-regexp/readme.md +0 -27
- package/node_modules/generate-function/README.md +0 -72
- package/node_modules/generate-function/example.js +0 -27
- package/node_modules/generate-function/index.js +0 -61
- package/node_modules/generate-function/package.json +0 -87
- package/node_modules/generate-function/test.js +0 -33
- package/node_modules/generate-object-property/.npmignore +0 -1
- package/node_modules/generate-object-property/LICENSE +0 -21
- package/node_modules/generate-object-property/README.md +0 -19
- package/node_modules/generate-object-property/index.js +0 -12
- package/node_modules/generate-object-property/package.json +0 -84
- package/node_modules/generate-object-property/test.js +0 -12
- package/node_modules/graceful-readlink/.npmignore +0 -3
- package/node_modules/graceful-readlink/.travis.yml +0 -5
- package/node_modules/graceful-readlink/README.md +0 -17
- package/node_modules/graceful-readlink/index.js +0 -12
- package/node_modules/graceful-readlink/package.json +0 -83
- package/node_modules/har-validator/bin/har-validator +0 -56
- package/node_modules/har-validator/lib/async.js +0 -14
- package/node_modules/har-validator/lib/error.js +0 -10
- package/node_modules/har-validator/lib/index.js +0 -22
- package/node_modules/har-validator/lib/runner.js +0 -29
- package/node_modules/har-validator/lib/schemas/cache.json +0 -13
- package/node_modules/har-validator/lib/schemas/cacheEntry.json +0 -31
- package/node_modules/har-validator/lib/schemas/index.js +0 -49
- package/node_modules/has-ansi/index.js +0 -4
- package/node_modules/has-ansi/license +0 -21
- package/node_modules/has-ansi/package.json +0 -118
- package/node_modules/has-ansi/readme.md +0 -36
- package/node_modules/is-my-json-valid/.npmignore +0 -2
- package/node_modules/is-my-json-valid/.travis.yml +0 -3
- package/node_modules/is-my-json-valid/README.md +0 -173
- package/node_modules/is-my-json-valid/example.js +0 -18
- package/node_modules/is-my-json-valid/formats.js +0 -14
- package/node_modules/is-my-json-valid/index.js +0 -594
- package/node_modules/is-my-json-valid/package.json +0 -116
- package/node_modules/is-my-json-valid/require.js +0 -12
- package/node_modules/is-my-json-valid/test/fixtures/cosmic.js +0 -84
- package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalItems.json +0 -82
- package/node_modules/is-my-json-valid/test/json-schema-draft4/additionalProperties.json +0 -88
- package/node_modules/is-my-json-valid/test/json-schema-draft4/allOf.json +0 -112
- package/node_modules/is-my-json-valid/test/json-schema-draft4/anyOf.json +0 -68
- package/node_modules/is-my-json-valid/test/json-schema-draft4/bignum.json +0 -107
- package/node_modules/is-my-json-valid/test/json-schema-draft4/default.json +0 -49
- package/node_modules/is-my-json-valid/test/json-schema-draft4/definitions.json +0 -32
- package/node_modules/is-my-json-valid/test/json-schema-draft4/dependencies.json +0 -113
- package/node_modules/is-my-json-valid/test/json-schema-draft4/enum.json +0 -72
- package/node_modules/is-my-json-valid/test/json-schema-draft4/format.json +0 -143
- package/node_modules/is-my-json-valid/test/json-schema-draft4/items.json +0 -46
- package/node_modules/is-my-json-valid/test/json-schema-draft4/maxItems.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/maxLength.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/maxProperties.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/maximum.json +0 -42
- package/node_modules/is-my-json-valid/test/json-schema-draft4/minItems.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/minLength.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/minProperties.json +0 -28
- package/node_modules/is-my-json-valid/test/json-schema-draft4/minimum.json +0 -42
- package/node_modules/is-my-json-valid/test/json-schema-draft4/multipleOf.json +0 -96
- package/node_modules/is-my-json-valid/test/json-schema-draft4/not.json +0 -96
- package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndFormat.json +0 -18
- package/node_modules/is-my-json-valid/test/json-schema-draft4/nullAndObject.json +0 -18
- package/node_modules/is-my-json-valid/test/json-schema-draft4/oneOf.json +0 -68
- package/node_modules/is-my-json-valid/test/json-schema-draft4/pattern.json +0 -23
- package/node_modules/is-my-json-valid/test/json-schema-draft4/patternProperties.json +0 -110
- package/node_modules/is-my-json-valid/test/json-schema-draft4/properties.json +0 -92
- package/node_modules/is-my-json-valid/test/json-schema-draft4/ref.json +0 -128
- package/node_modules/is-my-json-valid/test/json-schema-draft4/refRemote.json +0 -74
- package/node_modules/is-my-json-valid/test/json-schema-draft4/required.json +0 -39
- package/node_modules/is-my-json-valid/test/json-schema-draft4/type.json +0 -330
- package/node_modules/is-my-json-valid/test/json-schema-draft4/uniqueItems.json +0 -79
- package/node_modules/is-my-json-valid/test/json-schema.js +0 -23
- package/node_modules/is-my-json-valid/test/misc.js +0 -471
- package/node_modules/is-property/.npmignore +0 -17
- package/node_modules/is-property/README.md +0 -28
- package/node_modules/is-property/is-property.js +0 -5
- package/node_modules/is-property/package.json +0 -92
- package/node_modules/jsonpointer/LICENSE.md +0 -21
- package/node_modules/jsonpointer/README.md +0 -39
- package/node_modules/jsonpointer/jsonpointer.js +0 -93
- package/node_modules/jsonpointer/package.json +0 -112
- package/node_modules/ms/.npmignore +0 -5
- package/node_modules/ms/History.md +0 -66
- package/node_modules/ms/README.md +0 -35
- package/node_modules/pinkie/index.js +0 -292
- package/node_modules/pinkie/license +0 -21
- package/node_modules/pinkie/package.json +0 -100
- package/node_modules/pinkie/readme.md +0 -83
- package/node_modules/pinkie-promise/index.js +0 -3
- package/node_modules/pinkie-promise/license +0 -21
- package/node_modules/pinkie-promise/package.json +0 -102
- package/node_modules/pinkie-promise/readme.md +0 -28
- package/node_modules/string_decoder/index.js +0 -221
- package/node_modules/supports-color/index.js +0 -50
- package/node_modules/supports-color/license +0 -21
- package/node_modules/supports-color/package.json +0 -113
- package/node_modules/supports-color/readme.md +0 -36
- package/node_modules/tar-pack/node_modules/once/README.md +0 -51
- package/node_modules/tar-pack/node_modules/once/once.js +0 -21
- package/node_modules/tar-pack/node_modules/once/package.json +0 -96
- package/node_modules/tar-pack/node_modules/readable-stream/.npmignore +0 -8
- package/node_modules/tar-pack/node_modules/readable-stream/.travis.yml +0 -49
- package/node_modules/tar-pack/node_modules/readable-stream/LICENSE +0 -18
- package/node_modules/tar-pack/node_modules/readable-stream/README.md +0 -36
- package/node_modules/tar-pack/node_modules/readable-stream/doc/stream.md +0 -2015
- package/node_modules/tar-pack/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
- package/node_modules/tar-pack/node_modules/readable-stream/duplex.js +0 -1
- package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_duplex.js +0 -75
- package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_passthrough.js +0 -26
- package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_readable.js +0 -937
- package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_transform.js +0 -180
- package/node_modules/tar-pack/node_modules/readable-stream/lib/_stream_writable.js +0 -526
- package/node_modules/tar-pack/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -64
- package/node_modules/tar-pack/node_modules/readable-stream/package.json +0 -125
- package/node_modules/tar-pack/node_modules/readable-stream/passthrough.js +0 -1
- package/node_modules/tar-pack/node_modules/readable-stream/transform.js +0 -1
- package/node_modules/tar-pack/node_modules/readable-stream/writable.js +0 -1
- package/node_modules/wide-align/.npmignore +0 -5
- package/node_modules/wide-align/test/align.js +0 -37
- package/node_modules/xtend/.jshintrc +0 -30
- package/node_modules/xtend/.npmignore +0 -1
- package/node_modules/xtend/LICENCE +0 -19
- package/node_modules/xtend/Makefile +0 -4
- package/node_modules/xtend/README.md +0 -32
- package/node_modules/xtend/immutable.js +0 -19
- package/node_modules/xtend/mutable.js +0 -17
- package/node_modules/xtend/package.json +0 -117
- package/node_modules/xtend/test.js +0 -83
@@ -0,0 +1,390 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var resolve = require('./resolve')
|
4
|
+
, util = require('./util')
|
5
|
+
, stableStringify = require('json-stable-stringify')
|
6
|
+
, async = require('../async');
|
7
|
+
|
8
|
+
var beautify;
|
9
|
+
|
10
|
+
function loadBeautify(){
|
11
|
+
if (beautify === undefined) {
|
12
|
+
var name = 'js-beautify';
|
13
|
+
try { beautify = require(name).js_beautify; }
|
14
|
+
catch(e) { beautify = false; }
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
var validateGenerator = require('../dotjs/validate');
|
19
|
+
|
20
|
+
/**
|
21
|
+
* Functions below are used inside compiled validations function
|
22
|
+
*/
|
23
|
+
|
24
|
+
var co = require('co');
|
25
|
+
var ucs2length = util.ucs2length;
|
26
|
+
var equal = require('./equal');
|
27
|
+
|
28
|
+
// this error is thrown by async schemas to return validation errors via exception
|
29
|
+
var ValidationError = require('./validation_error');
|
30
|
+
|
31
|
+
module.exports = compile;
|
32
|
+
|
33
|
+
|
34
|
+
/**
|
35
|
+
* Compiles schema to validation function
|
36
|
+
* @this Ajv
|
37
|
+
* @param {Object} schema schema object
|
38
|
+
* @param {Object} root object with information about the root schema for this schema
|
39
|
+
* @param {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution
|
40
|
+
* @param {String} baseId base ID for IDs in the schema
|
41
|
+
* @return {Function} validation function
|
42
|
+
*/
|
43
|
+
function compile(schema, root, localRefs, baseId) {
|
44
|
+
/* jshint validthis: true, evil: true */
|
45
|
+
/* eslint no-shadow: 0 */
|
46
|
+
var self = this
|
47
|
+
, opts = this._opts
|
48
|
+
, refVal = [ undefined ]
|
49
|
+
, refs = {}
|
50
|
+
, patterns = []
|
51
|
+
, patternsHash = {}
|
52
|
+
, defaults = []
|
53
|
+
, defaultsHash = {}
|
54
|
+
, customRules = []
|
55
|
+
, keepSourceCode = opts.sourceCode !== false;
|
56
|
+
|
57
|
+
root = root || { schema: schema, refVal: refVal, refs: refs };
|
58
|
+
|
59
|
+
var c = checkCompiling.call(this, schema, root, baseId);
|
60
|
+
var compilation = this._compilations[c.index];
|
61
|
+
if (c.compiling) return (compilation.callValidate = callValidate);
|
62
|
+
|
63
|
+
var formats = this._formats;
|
64
|
+
var RULES = this.RULES;
|
65
|
+
|
66
|
+
try {
|
67
|
+
var v = localCompile(schema, root, localRefs, baseId);
|
68
|
+
compilation.validate = v;
|
69
|
+
var cv = compilation.callValidate;
|
70
|
+
if (cv) {
|
71
|
+
cv.schema = v.schema;
|
72
|
+
cv.errors = null;
|
73
|
+
cv.refs = v.refs;
|
74
|
+
cv.refVal = v.refVal;
|
75
|
+
cv.root = v.root;
|
76
|
+
cv.$async = v.$async;
|
77
|
+
if (keepSourceCode) cv.sourceCode = v.sourceCode;
|
78
|
+
}
|
79
|
+
return v;
|
80
|
+
} finally {
|
81
|
+
endCompiling.call(this, schema, root, baseId);
|
82
|
+
}
|
83
|
+
|
84
|
+
function callValidate() {
|
85
|
+
var validate = compilation.validate;
|
86
|
+
var result = validate.apply(null, arguments);
|
87
|
+
callValidate.errors = validate.errors;
|
88
|
+
return result;
|
89
|
+
}
|
90
|
+
|
91
|
+
function localCompile(_schema, _root, localRefs, baseId) {
|
92
|
+
var isRoot = !_root || (_root && _root.schema == _schema);
|
93
|
+
if (_root.schema != root.schema)
|
94
|
+
return compile.call(self, _schema, _root, localRefs, baseId);
|
95
|
+
|
96
|
+
var $async = _schema.$async === true;
|
97
|
+
if ($async && !opts.transpile) async.setup(opts);
|
98
|
+
|
99
|
+
var sourceCode = validateGenerator({
|
100
|
+
isTop: true,
|
101
|
+
schema: _schema,
|
102
|
+
isRoot: isRoot,
|
103
|
+
baseId: baseId,
|
104
|
+
root: _root,
|
105
|
+
schemaPath: '',
|
106
|
+
errSchemaPath: '#',
|
107
|
+
errorPath: '""',
|
108
|
+
RULES: RULES,
|
109
|
+
validate: validateGenerator,
|
110
|
+
util: util,
|
111
|
+
resolve: resolve,
|
112
|
+
resolveRef: resolveRef,
|
113
|
+
usePattern: usePattern,
|
114
|
+
useDefault: useDefault,
|
115
|
+
useCustomRule: useCustomRule,
|
116
|
+
opts: opts,
|
117
|
+
formats: formats,
|
118
|
+
self: self
|
119
|
+
});
|
120
|
+
|
121
|
+
sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode)
|
122
|
+
+ vars(defaults, defaultCode) + vars(customRules, customRuleCode)
|
123
|
+
+ sourceCode;
|
124
|
+
|
125
|
+
if (opts.beautify) {
|
126
|
+
loadBeautify();
|
127
|
+
/* istanbul ignore else */
|
128
|
+
if (beautify) sourceCode = beautify(sourceCode, opts.beautify);
|
129
|
+
else console.error('"npm install js-beautify" to use beautify option');
|
130
|
+
}
|
131
|
+
// console.log('\n\n\n *** \n', sourceCode);
|
132
|
+
var validate, validateCode
|
133
|
+
, transpile = opts._transpileFunc;
|
134
|
+
try {
|
135
|
+
validateCode = $async && transpile
|
136
|
+
? transpile(sourceCode)
|
137
|
+
: sourceCode;
|
138
|
+
|
139
|
+
var makeValidate = new Function(
|
140
|
+
'self',
|
141
|
+
'RULES',
|
142
|
+
'formats',
|
143
|
+
'root',
|
144
|
+
'refVal',
|
145
|
+
'defaults',
|
146
|
+
'customRules',
|
147
|
+
'co',
|
148
|
+
'equal',
|
149
|
+
'ucs2length',
|
150
|
+
'ValidationError',
|
151
|
+
validateCode
|
152
|
+
);
|
153
|
+
|
154
|
+
validate = makeValidate(
|
155
|
+
self,
|
156
|
+
RULES,
|
157
|
+
formats,
|
158
|
+
root,
|
159
|
+
refVal,
|
160
|
+
defaults,
|
161
|
+
customRules,
|
162
|
+
co,
|
163
|
+
equal,
|
164
|
+
ucs2length,
|
165
|
+
ValidationError
|
166
|
+
);
|
167
|
+
|
168
|
+
refVal[0] = validate;
|
169
|
+
} catch(e) {
|
170
|
+
console.error('Error compiling schema, function code:', validateCode);
|
171
|
+
throw e;
|
172
|
+
}
|
173
|
+
|
174
|
+
validate.schema = _schema;
|
175
|
+
validate.errors = null;
|
176
|
+
validate.refs = refs;
|
177
|
+
validate.refVal = refVal;
|
178
|
+
validate.root = isRoot ? validate : _root;
|
179
|
+
if ($async) validate.$async = true;
|
180
|
+
if (keepSourceCode) validate.sourceCode = sourceCode;
|
181
|
+
if (opts.sourceCode === true) {
|
182
|
+
validate.source = {
|
183
|
+
patterns: patterns,
|
184
|
+
defaults: defaults
|
185
|
+
};
|
186
|
+
}
|
187
|
+
|
188
|
+
return validate;
|
189
|
+
}
|
190
|
+
|
191
|
+
function resolveRef(baseId, ref, isRoot) {
|
192
|
+
ref = resolve.url(baseId, ref);
|
193
|
+
var refIndex = refs[ref];
|
194
|
+
var _refVal, refCode;
|
195
|
+
if (refIndex !== undefined) {
|
196
|
+
_refVal = refVal[refIndex];
|
197
|
+
refCode = 'refVal[' + refIndex + ']';
|
198
|
+
return resolvedRef(_refVal, refCode);
|
199
|
+
}
|
200
|
+
if (!isRoot && root.refs) {
|
201
|
+
var rootRefId = root.refs[ref];
|
202
|
+
if (rootRefId !== undefined) {
|
203
|
+
_refVal = root.refVal[rootRefId];
|
204
|
+
refCode = addLocalRef(ref, _refVal);
|
205
|
+
return resolvedRef(_refVal, refCode);
|
206
|
+
}
|
207
|
+
}
|
208
|
+
|
209
|
+
refCode = addLocalRef(ref);
|
210
|
+
var v = resolve.call(self, localCompile, root, ref);
|
211
|
+
if (!v) {
|
212
|
+
var localSchema = localRefs && localRefs[ref];
|
213
|
+
if (localSchema) {
|
214
|
+
v = resolve.inlineRef(localSchema, opts.inlineRefs)
|
215
|
+
? localSchema
|
216
|
+
: compile.call(self, localSchema, root, localRefs, baseId);
|
217
|
+
}
|
218
|
+
}
|
219
|
+
|
220
|
+
if (v) {
|
221
|
+
replaceLocalRef(ref, v);
|
222
|
+
return resolvedRef(v, refCode);
|
223
|
+
}
|
224
|
+
}
|
225
|
+
|
226
|
+
function addLocalRef(ref, v) {
|
227
|
+
var refId = refVal.length;
|
228
|
+
refVal[refId] = v;
|
229
|
+
refs[ref] = refId;
|
230
|
+
return 'refVal' + refId;
|
231
|
+
}
|
232
|
+
|
233
|
+
function replaceLocalRef(ref, v) {
|
234
|
+
var refId = refs[ref];
|
235
|
+
refVal[refId] = v;
|
236
|
+
}
|
237
|
+
|
238
|
+
function resolvedRef(refVal, code) {
|
239
|
+
return typeof refVal == 'object'
|
240
|
+
? { code: code, schema: refVal, inline: true }
|
241
|
+
: { code: code, $async: refVal && refVal.$async };
|
242
|
+
}
|
243
|
+
|
244
|
+
function usePattern(regexStr) {
|
245
|
+
var index = patternsHash[regexStr];
|
246
|
+
if (index === undefined) {
|
247
|
+
index = patternsHash[regexStr] = patterns.length;
|
248
|
+
patterns[index] = regexStr;
|
249
|
+
}
|
250
|
+
return 'pattern' + index;
|
251
|
+
}
|
252
|
+
|
253
|
+
function useDefault(value) {
|
254
|
+
switch (typeof value) {
|
255
|
+
case 'boolean':
|
256
|
+
case 'number':
|
257
|
+
return '' + value;
|
258
|
+
case 'string':
|
259
|
+
return util.toQuotedString(value);
|
260
|
+
case 'object':
|
261
|
+
if (value === null) return 'null';
|
262
|
+
var valueStr = stableStringify(value);
|
263
|
+
var index = defaultsHash[valueStr];
|
264
|
+
if (index === undefined) {
|
265
|
+
index = defaultsHash[valueStr] = defaults.length;
|
266
|
+
defaults[index] = value;
|
267
|
+
}
|
268
|
+
return 'default' + index;
|
269
|
+
}
|
270
|
+
}
|
271
|
+
|
272
|
+
function useCustomRule(rule, schema, parentSchema, it) {
|
273
|
+
var validateSchema = rule.definition.validateSchema;
|
274
|
+
if (validateSchema && self._opts.validateSchema !== false) {
|
275
|
+
var valid = validateSchema(schema);
|
276
|
+
if (!valid) {
|
277
|
+
var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors);
|
278
|
+
if (self._opts.validateSchema == 'log') console.error(message);
|
279
|
+
else throw new Error(message);
|
280
|
+
}
|
281
|
+
}
|
282
|
+
|
283
|
+
var compile = rule.definition.compile
|
284
|
+
, inline = rule.definition.inline
|
285
|
+
, macro = rule.definition.macro;
|
286
|
+
|
287
|
+
var validate;
|
288
|
+
if (compile) {
|
289
|
+
validate = compile.call(self, schema, parentSchema, it);
|
290
|
+
} else if (macro) {
|
291
|
+
validate = macro.call(self, schema, parentSchema, it);
|
292
|
+
if (opts.validateSchema !== false) self.validateSchema(validate, true);
|
293
|
+
} else if (inline) {
|
294
|
+
validate = inline.call(self, it, rule.keyword, schema, parentSchema);
|
295
|
+
} else {
|
296
|
+
validate = rule.definition.validate;
|
297
|
+
}
|
298
|
+
|
299
|
+
var index = customRules.length;
|
300
|
+
customRules[index] = validate;
|
301
|
+
|
302
|
+
return {
|
303
|
+
code: 'customRule' + index,
|
304
|
+
validate: validate
|
305
|
+
};
|
306
|
+
}
|
307
|
+
}
|
308
|
+
|
309
|
+
|
310
|
+
/**
|
311
|
+
* Checks if the schema is currently compiled
|
312
|
+
* @this Ajv
|
313
|
+
* @param {Object} schema schema to compile
|
314
|
+
* @param {Object} root root object
|
315
|
+
* @param {String} baseId base schema ID
|
316
|
+
* @return {Object} object with properties "index" (compilation index) and "compiling" (boolean)
|
317
|
+
*/
|
318
|
+
function checkCompiling(schema, root, baseId) {
|
319
|
+
/* jshint validthis: true */
|
320
|
+
var index = compIndex.call(this, schema, root, baseId);
|
321
|
+
if (index >= 0) return { index: index, compiling: true };
|
322
|
+
index = this._compilations.length;
|
323
|
+
this._compilations[index] = {
|
324
|
+
schema: schema,
|
325
|
+
root: root,
|
326
|
+
baseId: baseId
|
327
|
+
};
|
328
|
+
return { index: index, compiling: false };
|
329
|
+
}
|
330
|
+
|
331
|
+
|
332
|
+
/**
|
333
|
+
* Removes the schema from the currently compiled list
|
334
|
+
* @this Ajv
|
335
|
+
* @param {Object} schema schema to compile
|
336
|
+
* @param {Object} root root object
|
337
|
+
* @param {String} baseId base schema ID
|
338
|
+
*/
|
339
|
+
function endCompiling(schema, root, baseId) {
|
340
|
+
/* jshint validthis: true */
|
341
|
+
var i = compIndex.call(this, schema, root, baseId);
|
342
|
+
if (i >= 0) this._compilations.splice(i, 1);
|
343
|
+
}
|
344
|
+
|
345
|
+
|
346
|
+
/**
|
347
|
+
* Index of schema compilation in the currently compiled list
|
348
|
+
* @this Ajv
|
349
|
+
* @param {Object} schema schema to compile
|
350
|
+
* @param {Object} root root object
|
351
|
+
* @param {String} baseId base schema ID
|
352
|
+
* @return {Integer} compilation index
|
353
|
+
*/
|
354
|
+
function compIndex(schema, root, baseId) {
|
355
|
+
/* jshint validthis: true */
|
356
|
+
for (var i=0; i<this._compilations.length; i++) {
|
357
|
+
var c = this._compilations[i];
|
358
|
+
if (c.schema == schema && c.root == root && c.baseId == baseId) return i;
|
359
|
+
}
|
360
|
+
return -1;
|
361
|
+
}
|
362
|
+
|
363
|
+
|
364
|
+
function patternCode(i, patterns) {
|
365
|
+
return 'var pattern' + i + ' = new RegExp(' + util.toQuotedString(patterns[i]) + ');';
|
366
|
+
}
|
367
|
+
|
368
|
+
|
369
|
+
function defaultCode(i) {
|
370
|
+
return 'var default' + i + ' = defaults[' + i + '];';
|
371
|
+
}
|
372
|
+
|
373
|
+
|
374
|
+
function refValCode(i, refVal) {
|
375
|
+
return refVal[i] ? 'var refVal' + i + ' = refVal[' + i + '];' : '';
|
376
|
+
}
|
377
|
+
|
378
|
+
|
379
|
+
function customRuleCode(i) {
|
380
|
+
return 'var customRule' + i + ' = customRules[' + i + '];';
|
381
|
+
}
|
382
|
+
|
383
|
+
|
384
|
+
function vars(arr, statement) {
|
385
|
+
if (!arr.length) return '';
|
386
|
+
var code = '';
|
387
|
+
for (var i=0; i<arr.length; i++)
|
388
|
+
code += statement(i, arr);
|
389
|
+
return code;
|
390
|
+
}
|
@@ -0,0 +1,267 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var url = require('url')
|
4
|
+
, equal = require('./equal')
|
5
|
+
, util = require('./util')
|
6
|
+
, SchemaObject = require('./schema_obj');
|
7
|
+
|
8
|
+
module.exports = resolve;
|
9
|
+
|
10
|
+
resolve.normalizeId = normalizeId;
|
11
|
+
resolve.fullPath = getFullPath;
|
12
|
+
resolve.url = resolveUrl;
|
13
|
+
resolve.ids = resolveIds;
|
14
|
+
resolve.inlineRef = inlineRef;
|
15
|
+
resolve.schema = resolveSchema;
|
16
|
+
|
17
|
+
/**
|
18
|
+
* [resolve and compile the references ($ref)]
|
19
|
+
* @this Ajv
|
20
|
+
* @param {Function} compile reference to schema compilation funciton (localCompile)
|
21
|
+
* @param {Object} root object with information about the root schema for the current schema
|
22
|
+
* @param {String} ref reference to resolve
|
23
|
+
* @return {Object|Function} schema object (if the schema can be inlined) or validation function
|
24
|
+
*/
|
25
|
+
function resolve(compile, root, ref) {
|
26
|
+
/* jshint validthis: true */
|
27
|
+
var refVal = this._refs[ref];
|
28
|
+
if (typeof refVal == 'string') {
|
29
|
+
if (this._refs[refVal]) refVal = this._refs[refVal];
|
30
|
+
else return resolve.call(this, compile, root, refVal);
|
31
|
+
}
|
32
|
+
|
33
|
+
refVal = refVal || this._schemas[ref];
|
34
|
+
if (refVal instanceof SchemaObject) {
|
35
|
+
return inlineRef(refVal.schema, this._opts.inlineRefs)
|
36
|
+
? refVal.schema
|
37
|
+
: refVal.validate || this._compile(refVal);
|
38
|
+
}
|
39
|
+
|
40
|
+
var res = resolveSchema.call(this, root, ref);
|
41
|
+
var schema, v, baseId;
|
42
|
+
if (res) {
|
43
|
+
schema = res.schema;
|
44
|
+
root = res.root;
|
45
|
+
baseId = res.baseId;
|
46
|
+
}
|
47
|
+
|
48
|
+
if (schema instanceof SchemaObject) {
|
49
|
+
v = schema.validate || compile.call(this, schema.schema, root, undefined, baseId);
|
50
|
+
} else if (schema) {
|
51
|
+
v = inlineRef(schema, this._opts.inlineRefs)
|
52
|
+
? schema
|
53
|
+
: compile.call(this, schema, root, undefined, baseId);
|
54
|
+
}
|
55
|
+
|
56
|
+
return v;
|
57
|
+
}
|
58
|
+
|
59
|
+
|
60
|
+
/**
|
61
|
+
* Resolve schema, its root and baseId
|
62
|
+
* @this Ajv
|
63
|
+
* @param {Object} root root object with properties schema, refVal, refs
|
64
|
+
* @param {String} ref reference to resolve
|
65
|
+
* @return {Object} object with properties schema, root, baseId
|
66
|
+
*/
|
67
|
+
function resolveSchema(root, ref) {
|
68
|
+
/* jshint validthis: true */
|
69
|
+
var p = url.parse(ref, false, true)
|
70
|
+
, refPath = _getFullPath(p)
|
71
|
+
, baseId = getFullPath(root.schema.id);
|
72
|
+
if (refPath !== baseId) {
|
73
|
+
var id = normalizeId(refPath);
|
74
|
+
var refVal = this._refs[id];
|
75
|
+
if (typeof refVal == 'string') {
|
76
|
+
return resolveRecursive.call(this, root, refVal, p);
|
77
|
+
} else if (refVal instanceof SchemaObject) {
|
78
|
+
if (!refVal.validate) this._compile(refVal);
|
79
|
+
root = refVal;
|
80
|
+
} else {
|
81
|
+
refVal = this._schemas[id];
|
82
|
+
if (refVal instanceof SchemaObject) {
|
83
|
+
if (!refVal.validate) this._compile(refVal);
|
84
|
+
if (id == normalizeId(ref))
|
85
|
+
return { schema: refVal, root: root, baseId: baseId };
|
86
|
+
root = refVal;
|
87
|
+
} else {
|
88
|
+
return;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
if (!root.schema) return;
|
92
|
+
baseId = getFullPath(root.schema.id);
|
93
|
+
}
|
94
|
+
return getJsonPointer.call(this, p, baseId, root.schema, root);
|
95
|
+
}
|
96
|
+
|
97
|
+
|
98
|
+
/* @this Ajv */
|
99
|
+
function resolveRecursive(root, ref, parsedRef) {
|
100
|
+
/* jshint validthis: true */
|
101
|
+
var res = resolveSchema.call(this, root, ref);
|
102
|
+
if (res) {
|
103
|
+
var schema = res.schema;
|
104
|
+
var baseId = res.baseId;
|
105
|
+
root = res.root;
|
106
|
+
if (schema.id) baseId = resolveUrl(baseId, schema.id);
|
107
|
+
return getJsonPointer.call(this, parsedRef, baseId, schema, root);
|
108
|
+
}
|
109
|
+
}
|
110
|
+
|
111
|
+
|
112
|
+
var PREVENT_SCOPE_CHANGE = util.toHash(['properties', 'patternProperties', 'enum', 'dependencies', 'definitions']);
|
113
|
+
/* @this Ajv */
|
114
|
+
function getJsonPointer(parsedRef, baseId, schema, root) {
|
115
|
+
/* jshint validthis: true */
|
116
|
+
parsedRef.hash = parsedRef.hash || '';
|
117
|
+
if (parsedRef.hash.slice(0,2) != '#/') return;
|
118
|
+
var parts = parsedRef.hash.split('/');
|
119
|
+
|
120
|
+
for (var i = 1; i < parts.length; i++) {
|
121
|
+
var part = parts[i];
|
122
|
+
if (part) {
|
123
|
+
part = util.unescapeFragment(part);
|
124
|
+
schema = schema[part];
|
125
|
+
if (!schema) break;
|
126
|
+
if (schema.id && !PREVENT_SCOPE_CHANGE[part]) baseId = resolveUrl(baseId, schema.id);
|
127
|
+
if (schema.$ref) {
|
128
|
+
var $ref = resolveUrl(baseId, schema.$ref);
|
129
|
+
var res = resolveSchema.call(this, root, $ref);
|
130
|
+
if (res) {
|
131
|
+
schema = res.schema;
|
132
|
+
root = res.root;
|
133
|
+
baseId = res.baseId;
|
134
|
+
}
|
135
|
+
}
|
136
|
+
}
|
137
|
+
}
|
138
|
+
if (schema && schema != root.schema)
|
139
|
+
return { schema: schema, root: root, baseId: baseId };
|
140
|
+
}
|
141
|
+
|
142
|
+
|
143
|
+
var SIMPLE_INLINED = util.toHash([
|
144
|
+
'type', 'format', 'pattern',
|
145
|
+
'maxLength', 'minLength',
|
146
|
+
'maxProperties', 'minProperties',
|
147
|
+
'maxItems', 'minItems',
|
148
|
+
'maximum', 'minimum',
|
149
|
+
'uniqueItems', 'multipleOf',
|
150
|
+
'required', 'enum'
|
151
|
+
]);
|
152
|
+
function inlineRef(schema, limit) {
|
153
|
+
if (limit === false) return false;
|
154
|
+
if (limit === undefined || limit === true) return checkNoRef(schema);
|
155
|
+
else if (limit) return countKeys(schema) <= limit;
|
156
|
+
}
|
157
|
+
|
158
|
+
|
159
|
+
function checkNoRef(schema) {
|
160
|
+
var item;
|
161
|
+
if (Array.isArray(schema)) {
|
162
|
+
for (var i=0; i<schema.length; i++) {
|
163
|
+
item = schema[i];
|
164
|
+
if (typeof item == 'object' && !checkNoRef(item)) return false;
|
165
|
+
}
|
166
|
+
} else {
|
167
|
+
for (var key in schema) {
|
168
|
+
if (key == '$ref') return false;
|
169
|
+
item = schema[key];
|
170
|
+
if (typeof item == 'object' && !checkNoRef(item)) return false;
|
171
|
+
}
|
172
|
+
}
|
173
|
+
return true;
|
174
|
+
}
|
175
|
+
|
176
|
+
|
177
|
+
function countKeys(schema) {
|
178
|
+
var count = 0, item;
|
179
|
+
if (Array.isArray(schema)) {
|
180
|
+
for (var i=0; i<schema.length; i++) {
|
181
|
+
item = schema[i];
|
182
|
+
if (typeof item == 'object') count += countKeys(item);
|
183
|
+
if (count == Infinity) return Infinity;
|
184
|
+
}
|
185
|
+
} else {
|
186
|
+
for (var key in schema) {
|
187
|
+
if (key == '$ref') return Infinity;
|
188
|
+
if (SIMPLE_INLINED[key]) {
|
189
|
+
count++;
|
190
|
+
} else {
|
191
|
+
item = schema[key];
|
192
|
+
if (typeof item == 'object') count += countKeys(item) + 1;
|
193
|
+
if (count == Infinity) return Infinity;
|
194
|
+
}
|
195
|
+
}
|
196
|
+
}
|
197
|
+
return count;
|
198
|
+
}
|
199
|
+
|
200
|
+
|
201
|
+
function getFullPath(id, normalize) {
|
202
|
+
if (normalize !== false) id = normalizeId(id);
|
203
|
+
var p = url.parse(id, false, true);
|
204
|
+
return _getFullPath(p);
|
205
|
+
}
|
206
|
+
|
207
|
+
|
208
|
+
function _getFullPath(p) {
|
209
|
+
var protocolSeparator = p.protocol || p.href.slice(0,2) == '//' ? '//' : '';
|
210
|
+
return (p.protocol||'') + protocolSeparator + (p.host||'') + (p.path||'') + '#';
|
211
|
+
}
|
212
|
+
|
213
|
+
|
214
|
+
var TRAILING_SLASH_HASH = /#\/?$/;
|
215
|
+
function normalizeId(id) {
|
216
|
+
return id ? id.replace(TRAILING_SLASH_HASH, '') : '';
|
217
|
+
}
|
218
|
+
|
219
|
+
|
220
|
+
function resolveUrl(baseId, id) {
|
221
|
+
id = normalizeId(id);
|
222
|
+
return url.resolve(baseId, id);
|
223
|
+
}
|
224
|
+
|
225
|
+
|
226
|
+
/* @this Ajv */
|
227
|
+
function resolveIds(schema) {
|
228
|
+
/* eslint no-shadow: 0 */
|
229
|
+
/* jshint validthis: true */
|
230
|
+
var id = normalizeId(schema.id);
|
231
|
+
var localRefs = {};
|
232
|
+
_resolveIds.call(this, schema, getFullPath(id, false), id);
|
233
|
+
return localRefs;
|
234
|
+
|
235
|
+
/* @this Ajv */
|
236
|
+
function _resolveIds(schema, fullPath, baseId) {
|
237
|
+
/* jshint validthis: true */
|
238
|
+
if (Array.isArray(schema)) {
|
239
|
+
for (var i=0; i<schema.length; i++)
|
240
|
+
_resolveIds.call(this, schema[i], fullPath+'/'+i, baseId);
|
241
|
+
} else if (schema && typeof schema == 'object') {
|
242
|
+
if (typeof schema.id == 'string') {
|
243
|
+
var id = baseId = baseId
|
244
|
+
? url.resolve(baseId, schema.id)
|
245
|
+
: schema.id;
|
246
|
+
id = normalizeId(id);
|
247
|
+
|
248
|
+
var refVal = this._refs[id];
|
249
|
+
if (typeof refVal == 'string') refVal = this._refs[refVal];
|
250
|
+
if (refVal && refVal.schema) {
|
251
|
+
if (!equal(schema, refVal.schema))
|
252
|
+
throw new Error('id "' + id + '" resolves to more than one schema');
|
253
|
+
} else if (id != normalizeId(fullPath)) {
|
254
|
+
if (id[0] == '#') {
|
255
|
+
if (localRefs[id] && !equal(schema, localRefs[id]))
|
256
|
+
throw new Error('id "' + id + '" resolves to more than one schema');
|
257
|
+
localRefs[id] = schema;
|
258
|
+
} else {
|
259
|
+
this._refs[id] = fullPath;
|
260
|
+
}
|
261
|
+
}
|
262
|
+
}
|
263
|
+
for (var key in schema)
|
264
|
+
_resolveIds.call(this, schema[key], fullPath+'/'+util.escapeFragment(key), baseId);
|
265
|
+
}
|
266
|
+
}
|
267
|
+
}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var ruleModules = require('./_rules')
|
4
|
+
, toHash = require('./util').toHash;
|
5
|
+
|
6
|
+
module.exports = function rules() {
|
7
|
+
var RULES = [
|
8
|
+
{ type: 'number',
|
9
|
+
rules: [ 'maximum', 'minimum', 'multipleOf'] },
|
10
|
+
{ type: 'string',
|
11
|
+
rules: [ 'maxLength', 'minLength', 'pattern', 'format' ] },
|
12
|
+
{ type: 'array',
|
13
|
+
rules: [ 'maxItems', 'minItems', 'uniqueItems', 'items' ] },
|
14
|
+
{ type: 'object',
|
15
|
+
rules: [ 'maxProperties', 'minProperties', 'required', 'dependencies', 'properties' ] },
|
16
|
+
{ rules: [ '$ref', 'enum', 'not', 'anyOf', 'oneOf', 'allOf' ] }
|
17
|
+
];
|
18
|
+
|
19
|
+
var ALL = [ 'type', 'additionalProperties', 'patternProperties' ];
|
20
|
+
var KEYWORDS = [ 'additionalItems', '$schema', 'id', 'title', 'description', 'default' ];
|
21
|
+
var TYPES = [ 'number', 'integer', 'string', 'array', 'object', 'boolean', 'null' ];
|
22
|
+
RULES.all = toHash(ALL);
|
23
|
+
|
24
|
+
RULES.forEach(function (group) {
|
25
|
+
group.rules = group.rules.map(function (keyword) {
|
26
|
+
ALL.push(keyword);
|
27
|
+
var rule = RULES.all[keyword] = {
|
28
|
+
keyword: keyword,
|
29
|
+
code: ruleModules[keyword]
|
30
|
+
};
|
31
|
+
return rule;
|
32
|
+
});
|
33
|
+
});
|
34
|
+
|
35
|
+
RULES.keywords = toHash(ALL.concat(KEYWORDS));
|
36
|
+
RULES.types = toHash(TYPES);
|
37
|
+
RULES.custom = {};
|
38
|
+
|
39
|
+
return RULES;
|
40
|
+
};
|